diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dffa84a --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +# Build and Release Folders +bin-debug/ +bin-release/ +[Oo]bj/ +[Bb]in/ + +# Other files and folders +.settings/ + +# Executables +*.swf +*.air +*.ipa +*.apk + +# Project files, i.e. `.project`, `.actionScriptProperties` and `.flexProperties` +# should NOT be excluded as they contain compiler settings and other important +# information for Eclipse / Flash Builder. + +/.idea +/upgrade +niucloud/public/.htaccess +uni-app/* +web/* +IM/* diff --git a/niucloud/.env b/niucloud/.env new file mode 100644 index 0000000..3402a62 --- /dev/null +++ b/niucloud/.env @@ -0,0 +1 @@ +APP_DEBUG = true [APP] DEFAULT_TIMEZONE = Asia/Shanghai AUTH_KEY = nzpawfdodlftgvqgbjaeskihscuhxymr [DATABASE] TYPE = mysql HOSTNAME = 82.157.42.191 DATABASE = zhifuguanli_zeya USERNAME = zhifuguanli_zeya PASSWORD = XNfnWG2DGF6GQh27 HOSTPORT = 3306 PREFIX = hy_ CHARSET = utf8 DEBUG = false [REDIS] REDIS_HOSTNAME = 127.0.0.1 PORT = 6379 REDIS_PASSWORD = SELECT = 0 [LANG] default_lang = zh-cn [SYSTEM] ADMIN_TOKEN_NAME = token API_TOKEN_NAME = token ADMIN_SITE_ID_NAME = site-id API_SITE_ID_NAME = site-id ADMIN_TOKEN_EXPIRE_TIME = 604800 API_TOKEN_EXPIRE_TIME = 86400 LANG_NAME = lang CHANNEL_NAME = channel ADMIN_DOMAIN = WAP_DOMAIN = WEB_DOMAIN = [NIUCLOUD] code = secret = \ No newline at end of file diff --git a/niucloud/.example.env b/niucloud/.example.env new file mode 100644 index 0000000..4709442 --- /dev/null +++ b/niucloud/.example.env @@ -0,0 +1 @@ +APP_DEBUG = true [APP] DEFAULT_TIMEZONE = Asia/Shanghai AUTH_KEY = {auth_key} [DATABASE] TYPE = mysql HOSTNAME = {dbhost} DATABASE = {dbname} USERNAME = {dbuser} PASSWORD = {dbpwd} HOSTPORT = {dbport} PREFIX = {dbprefix} CHARSET = utf8 DEBUG = false [REDIS] REDIS_HOSTNAME = 127.0.0.1 PORT = 6379 REDIS_PASSWORD = SELECT = 0 [LANG] default_lang = zh-cn [SYSTEM] ADMIN_TOKEN_NAME = token API_TOKEN_NAME = token ADMIN_SITE_ID_NAME = site-id API_SITE_ID_NAME = site-id ADMIN_TOKEN_EXPIRE_TIME = 604800 API_TOKEN_EXPIRE_TIME = 86400 LANG_NAME = lang CHANNEL_NAME = channel ADMIN_DOMAIN = WAP_DOMAIN = WEB_DOMAIN = [NIUCLOUD] code = secret = \ No newline at end of file diff --git a/niucloud/.gitignore b/niucloud/.gitignore new file mode 100644 index 0000000..33a5a07 --- /dev/null +++ b/niucloud/.gitignore @@ -0,0 +1,7 @@ +/.idea +/.vscode +*.log +/runtime +install.lock +/vendor +composer.lock \ No newline at end of file diff --git a/niucloud/.htaccess b/niucloud/.htaccess new file mode 100644 index 0000000..e69de29 diff --git a/niucloud/.travis.yml b/niucloud/.travis.yml new file mode 100644 index 0000000..36f7b6f --- /dev/null +++ b/niucloud/.travis.yml @@ -0,0 +1,42 @@ +sudo: false + +language: php + +branches: + only: + - stable + +cache: + directories: + - $HOME/.composer/cache + +before_install: + - composer self-update + +install: + - composer install --no-dev --no-interaction --ignore-platform-reqs + - zip -r --exclude='*.git*' --exclude='*.zip' --exclude='*.travis.yml' ThinkPHP_Core.zip . + - composer require --update-no-dev --no-interaction "topthink/think-image:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-migration:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-captcha:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-mongo:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-worker:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-helper:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-queue:^1.0" + - composer require --update-no-dev --no-interaction "topthink/think-angular:^1.0" + - composer require --dev --update-no-dev --no-interaction "topthink/think-testing:^1.0" + - zip -r --exclude='*.git*' --exclude='*.zip' --exclude='*.travis.yml' ThinkPHP_Full.zip . + +script: + - php think unit + +deploy: + provider: releases + api_key: + secure: TSF6bnl2JYN72UQOORAJYL+CqIryP2gHVKt6grfveQ7d9rleAEoxlq6PWxbvTI4jZ5nrPpUcBUpWIJHNgVcs+bzLFtyh5THaLqm39uCgBbrW7M8rI26L8sBh/6nsdtGgdeQrO/cLu31QoTzbwuz1WfAVoCdCkOSZeXyT/CclH99qV6RYyQYqaD2wpRjrhA5O4fSsEkiPVuk0GaOogFlrQHx+C+lHnf6pa1KxEoN1A0UxxVfGX6K4y5g4WQDO5zT4bLeubkWOXK0G51XSvACDOZVIyLdjApaOFTwamPcD3S1tfvuxRWWvsCD5ljFvb2kSmx5BIBNwN80MzuBmrGIC27XLGOxyMerwKxB6DskNUO9PflKHDPI61DRq0FTy1fv70SFMSiAtUv9aJRT41NQh9iJJ0vC8dl+xcxrWIjU1GG6+l/ZcRqVx9V1VuGQsLKndGhja7SQ+X1slHl76fRq223sMOql7MFCd0vvvxVQ2V39CcFKao/LB1aPH3VhODDEyxwx6aXoTznvC/QPepgWsHOWQzKj9ftsgDbsNiyFlXL4cu8DWUty6rQy8zT2b4O8b1xjcwSUCsy+auEjBamzQkMJFNlZAIUrukL/NbUhQU37TAbwsFyz7X0E/u/VMle/nBCNAzgkMwAUjiHM6FqrKKBRWFbPrSIixjfjkCnrMEPw= + file: + - ThinkPHP_Core.zip + - ThinkPHP_Full.zip + skip_cleanup: true + on: + tags: true diff --git a/niucloud/LICENSE.txt b/niucloud/LICENSE.txt new file mode 100644 index 0000000..574a39c --- /dev/null +++ b/niucloud/LICENSE.txt @@ -0,0 +1,32 @@ + +ThinkPHP遵循Apache2开源协议发布,并提供免费使用。 +版权所有Copyright © 2006-2016 by ThinkPHP (http://thinkphp.cn) +All rights reserved。 +ThinkPHP® 商标和著作权所有者为上海顶想信息科技有限公司。 + +Apache Licence是著名的非盈利开源组织Apache采用的协议。 +该协议和BSD类似,鼓励代码共享和尊重原作者的著作权, +允许代码修改,再作为开源或商业软件发布。需要满足 +的条件: +1. 需要给代码的用户一份Apache Licence ; +2. 如果你修改了代码,需要在被修改的文件中说明; +3. 在延伸的代码中(修改和有源代码衍生的代码中)需要 +带有原来代码中的协议,商标,专利声明和其他原来作者规 +定需要包含的说明; +4. 如果再发布的产品中包含一个Notice文件,则在Notice文 +件中需要带有本协议内容。你可以在Notice中增加自己的 +许可,但不可以表现为对Apache Licence构成更改。 +具体的协议参考:http://www.apache.org/licenses/LICENSE-2.0 + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/niucloud/README.md b/niucloud/README.md new file mode 100644 index 0000000..a8c4d1c --- /dev/null +++ b/niucloud/README.md @@ -0,0 +1,56 @@ +ThinkPHP 6.0 +=============== + +> 运行环境要求PHP7.2+,兼容PHP8.1 + +[官方应用服务市场](https://market.topthink.com) | [`ThinkAPI`——官方统一API服务](https://docs.topthink.com/think-api) + +ThinkPHPV6.0版本由[亿速云](https://www.yisu.com/)独家赞助发布。 + +## 主要新特性 + +* 采用`PHP7`强类型(严格模式) +* 支持更多的`PSR`规范 +* 原生多应用支持 +* 更强大和易用的查询 +* 全新的事件系统 +* 模型事件和数据库事件统一纳入事件系统 +* 模板引擎分离出核心 +* 内部功能中间件化 +* SESSION/Cookie机制改进 +* 对Swoole以及协程支持改进 +* 对IDE更加友好 +* 统一和精简大量用法 + +## 安装 + +~~~ +composer create-project topthink/think tp 6.0.* +~~~ + +如果需要更新框架使用 +~~~ +composer update topthink/framework +~~~ + +## 文档 + +[完全开发手册](https://www.kancloud.cn/manual/thinkphp6_0/content) + +## 参与开发 + +请参阅 [ThinkPHP 核心框架包](https://github.com/top-think/framework)。 + +## 版权信息 + +ThinkPHP遵循Apache2开源协议发布,并提供免费使用。 + +本项目包含的第三方源码和二进制文件之版权信息另行标注。 + +版权所有Copyright © 2006-2021 by ThinkPHP (http://thinkphp.cn) + +All rights reserved。 + +ThinkPHP® 商标和著作权所有者为上海顶想信息科技有限公司。 + +更多细节参阅 [LICENSE.txt](LICENSE.txt) diff --git a/niucloud/addon/hello_world/Addon.php b/niucloud/addon/hello_world/Addon.php new file mode 100644 index 0000000..e4a8850 --- /dev/null +++ b/niucloud/addon/hello_world/Addon.php @@ -0,0 +1,36 @@ + + +
+
+

文本设置

+ + + + + +
+
+ + +
+ + +
+ + + + + + + \ No newline at end of file diff --git a/niucloud/addon/hello_world/admin/views/hello_world/index.vue b/niucloud/addon/hello_world/admin/views/hello_world/index.vue new file mode 100644 index 0000000..51963a9 --- /dev/null +++ b/niucloud/addon/hello_world/admin/views/hello_world/index.vue @@ -0,0 +1,12 @@ + + + + + diff --git a/niucloud/addon/hello_world/admin/views/hello_world/site.vue b/niucloud/addon/hello_world/admin/views/hello_world/site.vue new file mode 100644 index 0000000..405437b --- /dev/null +++ b/niucloud/addon/hello_world/admin/views/hello_world/site.vue @@ -0,0 +1,12 @@ + + + + + diff --git a/niucloud/addon/hello_world/app/adminapi/controller/Index.php b/niucloud/addon/hello_world/app/adminapi/controller/Index.php new file mode 100644 index 0000000..b1ef129 --- /dev/null +++ b/niucloud/addon/hello_world/app/adminapi/controller/Index.php @@ -0,0 +1,28 @@ + [ + 'title' => get_lang('dict_diy.component_type_basic'), + 'list' => [ + 'HelloText' => [ + 'title' => 'hello文本', + 'icon' => 'iconfont-iconhuiyuanzhongxin', + 'path' => 'edit-hello-text', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10007, + 'value' => [ + 'height' => 20 + ], + ], + ], + ], + +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/diy/links.php b/niucloud/addon/hello_world/app/dict/diy/links.php new file mode 100644 index 0000000..43a272e --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/diy/links.php @@ -0,0 +1,25 @@ + [ + 'key' => 'hello_world', + 'addon_title' => get_lang('dict_diy.hello_world_title'), + 'title' => get_lang('dict_diy.hello_world_link'), + 'child_list' => [ + [ + 'name' => 'HELLO_WORLD_INDEX', + 'title' => get_lang('dict_diy.hello_world_index'), + 'url' => '/addon/hello_world/pages/index', + 'is_share' => 1, + 'action' => '' + ], + [ + 'name' => 'HELLO_WORLD_INFO', + 'title' => get_lang('dict_diy.hello_world_info'), + 'url' => '/addon/hello_world/pages/info', + 'is_share' => 1, + 'action' => '' + ], + ] + ], +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/diy/pages.php b/niucloud/addon/hello_world/app/dict/diy/pages.php new file mode 100644 index 0000000..1d788bd --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/diy/pages.php @@ -0,0 +1,90 @@ + [ + 'hello_world_index' => [ // 页面标识 + "title" => "hello world 首页", // 页面名称 + 'cover' => '', // 页面封面图 + 'preview' => '', // 页面预览图 + 'desc' => '', // 页面描述 + 'mode' => 'diy', // 页面模式:diy:自定义,fixed:固定 + // 页面数据源 + "data" => [ + "global" => [ + "title" => "hello world首页页面", + "pageBgColor" => "#F8F8F8", + 'bgUrl' => '', + 'imgWidth' => '', + 'imgHeight' => '', + "bottomTabBarSwitch" => true, + "template" => [ + 'textColor' => "#303133", + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 0 + ] + ], + 'topStatusBar' => [ + 'bgColor' => "#ffffff", + 'isTransparent' => false, + 'isShow' => true, + 'style' => 'style-1', + 'textColor' => "#333333", + 'textAlign' => 'center', + ], + 'popWindow' => [ + 'imgUrl' => "", + 'imgWidth' => '', + 'imgHeight' => '', + 'count' => -1, + 'show' => 0, + 'link' => [ + 'name' => "" + ], + ] + ], + "value" => [ + [ + "path" => "edit-image-ads", + "id" => "4640ld4k1pu0", + "componentName" => "ImageAds", + "componentTitle" => "图片广告", + "uses" => 0, + "list" => [ + [ + "link" => [ + "name" => "" + ], + "imageUrl" => "static/resource/images/diy/banner.png", + "imgWidth" => 750, + "imgHeight" => 320, + "id" => "2xuytp7622w0" + ] + ], + "ignore" => [], + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 0 + ] + ] + ] + ] + ] + ] +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/diy/template.php b/niucloud/addon/hello_world/app/dict/diy/template.php new file mode 100644 index 0000000..116e550 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/diy/template.php @@ -0,0 +1,14 @@ + [ + 'title' => get_lang('dict_diy.page_hello_world_index'), + 'page' => '/hello_world/pages/index', + 'action' => '' + ], + 'DIY_HELLO_WORLD_INFO' => [ + 'title' => get_lang('dict_diy.page_hello_world_info'), + 'page' => '/hello_world/pages/info', + 'action' => '' + ], +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/member/account_change_type.php b/niucloud/addon/hello_world/app/dict/member/account_change_type.php new file mode 100644 index 0000000..6898597 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/member/account_change_type.php @@ -0,0 +1,18 @@ + [ + //调整 + 'hello_world_test' => [ + //名称 + 'name' => "hello_world账户变化", + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 1, + ], + + ], +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/menu/admin.php b/niucloud/addon/hello_world/app/dict/menu/admin.php new file mode 100644 index 0000000..0bd05e0 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/menu/admin.php @@ -0,0 +1,17 @@ + '插件菜单', + 'menu_key' => 'niucloud_hello', + 'menu_type' => 1, + 'icon' => 'iconfont-iconyingyongshichang', + 'api_url' => '', + 'router_path' => 'hello_world', + 'view_path' => 'hello_world/index', + 'methods' => '', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + ]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/menu/site.php b/niucloud/addon/hello_world/app/dict/menu/site.php new file mode 100644 index 0000000..743feea --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/menu/site.php @@ -0,0 +1,36 @@ + '插件站点菜单', + 'menu_key' => 'niucloud_site_hello', + 'menu_type' => 1, + 'icon' => 'iconfont-iconyingyongshichang', + 'api_url' => '', + 'router_path' => 'hello_world', + 'view_path' => 'hello_world/site', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], +/* [ + 'menu_name' => '会员列表', + 'menu_key' => 'member_list', + 'parent_key' => 'member', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuanliebiao', + 'api_url' => 'member/member', + 'router_path' => 'hello_world_member_list', + 'view_path' => 'hello_world/member', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + + ] + ], + "delete" => "member" //针对修改系统菜单处理方式,可以删除系统菜单,设置对应key值,也可删除不需要的菜单处理 +*/ + ]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/notice/notice.php b/niucloud/addon/hello_world/app/dict/notice/notice.php new file mode 100644 index 0000000..2cb6e4e --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/notice/notice.php @@ -0,0 +1,19 @@ + [ + 'addon' => 'hello_world', + 'key' => 'recharge_success', + 'receiver_type' => 1, + 'name' => '充值成功通知', + 'title' => '会员充值成功后发送', + 'async' => true, + 'variable' => [ + 'price' => '充值金额', + 'balance' => '充值后账户', + 'time' => '充值时间', + 'trade_no' => '交易单号' + ], + ] + +]; diff --git a/niucloud/addon/hello_world/app/dict/notice/sms.php b/niucloud/addon/hello_world/app/dict/notice/sms.php new file mode 100644 index 0000000..6047ba4 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/notice/sms.php @@ -0,0 +1,7 @@ + [ + 'content' => '您充值金额¥{price}, 充值后金额¥{balance}', + ] + +]; diff --git a/niucloud/addon/hello_world/app/dict/notice/weapp.php b/niucloud/addon/hello_world/app/dict/notice/weapp.php new file mode 100644 index 0000000..c07c422 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/notice/weapp.php @@ -0,0 +1,14 @@ + [ + 'tid' => '755', + 'content' => [ + ['交易单号', '{trade_no}', 'keyword1'], + ['充值金额', '{price}', 'keyword2'], + ['账户余额', '{balance}', 'keyword3'], + ['充值时间', '{time}', 'keyword4'], + ], + 'kid_list' => [1, 3, 4, 2], + 'scene_desc' => '' + ] +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/notice/wechat.php b/niucloud/addon/hello_world/app/dict/notice/wechat.php new file mode 100644 index 0000000..f3ad769 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/notice/wechat.php @@ -0,0 +1,11 @@ + [ + 'temp_key' => '52552', + 'keyword_name_list' => [ '充值时间', '充值金额' ], + 'content' => [ + [ '充值时间', '{time}', 'time1' ], + [ '充值金额', '{price}', 'amount3' ], + ] + ] +]; \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/dict/schedule/schedule.php b/niucloud/addon/hello_world/app/dict/schedule/schedule.php new file mode 100644 index 0000000..57867a9 --- /dev/null +++ b/niucloud/addon/hello_world/app/dict/schedule/schedule.php @@ -0,0 +1,15 @@ + 'addon_schedule', + 'name' => '插件计划任务', + 'desc' => '', + 'time' => [ + 'type' => 'min', + 'min' => 1 + ], + 'class' => 'addon\hello_world\app\job\AddonSchedule', + 'function' => '' + ], +]; diff --git a/niucloud/addon/hello_world/app/event.php b/niucloud/addon/hello_world/app/event.php new file mode 100644 index 0000000..ae85b7c --- /dev/null +++ b/niucloud/addon/hello_world/app/event.php @@ -0,0 +1,16 @@ + [ + ], + + 'listen' => [ + + //应用管理 + 'AppManage' => ['addon\hello_world\app\listener\AppManageListener'], + ], + + 'subscribe' => [ + ], +]; diff --git a/niucloud/addon/hello_world/app/job/AddonSchedule.php b/niucloud/addon/hello_world/app/job/AddonSchedule.php new file mode 100644 index 0000000..a3037da --- /dev/null +++ b/niucloud/addon/hello_world/app/job/AddonSchedule.php @@ -0,0 +1,27 @@ + 'hello world演示数据', +]; diff --git a/niucloud/addon/hello_world/app/lang/zh-cn/dict.php b/niucloud/addon/hello_world/app/lang/zh-cn/dict.php new file mode 100644 index 0000000..4d3a6f5 --- /dev/null +++ b/niucloud/addon/hello_world/app/lang/zh-cn/dict.php @@ -0,0 +1,27 @@ + [ + 'page_hello_world_index' => 'hello 首页', + 'page_hello_world_info' => 'hello 信息', + 'hello_world_title' => 'hello world', + 'hello_world_link' => 'hello world链接', + 'hello_world_index' => 'hello world index 插件', + 'hello_world_info' => 'hello world info 插件' + ], + 'dict_site_layout' => [ + 'hellow_world' => '你好' + ] +]; diff --git a/niucloud/addon/hello_world/app/lang/zh-cn/validate.php b/niucloud/addon/hello_world/app/lang/zh-cn/validate.php new file mode 100644 index 0000000..f970c29 --- /dev/null +++ b/niucloud/addon/hello_world/app/lang/zh-cn/validate.php @@ -0,0 +1,18 @@ + 100, + +]; diff --git a/niucloud/addon/hello_world/app/listener/AppManageListener.php b/niucloud/addon/hello_world/app/listener/AppManageListener.php new file mode 100644 index 0000000..3837966 --- /dev/null +++ b/niucloud/addon/hello_world/app/listener/AppManageListener.php @@ -0,0 +1,47 @@ + [ + //插件如果要单独分类展示,需要专门定义 + [ + "key" => "hello_world_category", + "name" => "第三方应用", + ], + ], + [ + "addon" => "hello_world", + "title" => "hello world", + "category" => "hello_world_category", //设置插件对应展示分类,默认basic + "desc" => "hello world 应用展示", + "icon" => addon_resource("hello_world", "icon.png"), //图标 + "cover" => "", //封面 + "url" => "/hello_world" + ], + ]; + } +} \ No newline at end of file diff --git a/niucloud/addon/hello_world/app/listener/SiteLayout.php b/niucloud/addon/hello_world/app/listener/SiteLayout.php new file mode 100644 index 0000000..dea2eb6 --- /dev/null +++ b/niucloud/addon/hello_world/app/listener/SiteLayout.php @@ -0,0 +1,29 @@ + get_lang("dict_site_layout.hellow_world"), + "key" => "hellow", + "image" => "static/resource/images/system/layout-hellow.jpg", + "sort" => 1 + ]; + } +} \ No newline at end of file diff --git a/niucloud/addon/hello_world/info.json b/niucloud/addon/hello_world/info.json new file mode 100644 index 0000000..79f13f6 --- /dev/null +++ b/niucloud/addon/hello_world/info.json @@ -0,0 +1,9 @@ +{ + "title": "hello world", + "desc": "Niucloud hello world演示插件", + "key": "hello_world", + "version": "1.0.1", + "author": "niucloud", + "type": "app", + "support_app": "" +} diff --git a/niucloud/addon/hello_world/package/admin-package.json b/niucloud/addon/hello_world/package/admin-package.json new file mode 100644 index 0000000..526aca6 --- /dev/null +++ b/niucloud/addon/hello_world/package/admin-package.json @@ -0,0 +1,4 @@ +{ + "dependencies": { + } +} diff --git a/niucloud/addon/hello_world/package/composer.json b/niucloud/addon/hello_world/package/composer.json new file mode 100644 index 0000000..8c8051f --- /dev/null +++ b/niucloud/addon/hello_world/package/composer.json @@ -0,0 +1,5 @@ +{ + "require": { + + } +} diff --git a/niucloud/addon/hello_world/package/uni-app-package.json b/niucloud/addon/hello_world/package/uni-app-package.json new file mode 100644 index 0000000..c91f0d2 --- /dev/null +++ b/niucloud/addon/hello_world/package/uni-app-package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "weixin-js-sdk": "^1.6.0" + } +} diff --git a/niucloud/addon/hello_world/package/uni-app-pages.php b/niucloud/addon/hello_world/package/uni-app-pages.php new file mode 100644 index 0000000..be1cf7d --- /dev/null +++ b/niucloud/addon/hello_world/package/uni-app-pages.php @@ -0,0 +1,16 @@ + << + + hello-world:演示插件文本——自定义组件 + + + + + + \ No newline at end of file diff --git a/niucloud/addon/hello_world/uni-app/components/fixed/hello-index/index.vue b/niucloud/addon/hello_world/uni-app/components/fixed/hello-index/index.vue new file mode 100644 index 0000000..d02fe27 --- /dev/null +++ b/niucloud/addon/hello_world/uni-app/components/fixed/hello-index/index.vue @@ -0,0 +1,14 @@ + + + + + \ No newline at end of file diff --git a/niucloud/addon/hello_world/uni-app/locale/en.json b/niucloud/addon/hello_world/uni-app/locale/en.json new file mode 100644 index 0000000..4efc14c --- /dev/null +++ b/niucloud/addon/hello_world/uni-app/locale/en.json @@ -0,0 +1,3 @@ +{ + "hello_world.pages.index": "hello_world index" +} \ No newline at end of file diff --git a/niucloud/addon/hello_world/uni-app/locale/zh-Hans.json b/niucloud/addon/hello_world/uni-app/locale/zh-Hans.json new file mode 100644 index 0000000..39f0943 --- /dev/null +++ b/niucloud/addon/hello_world/uni-app/locale/zh-Hans.json @@ -0,0 +1,3 @@ +{ + "hello_world.pages.index": "hello_world首页" +} \ No newline at end of file diff --git a/niucloud/addon/hello_world/uni-app/locale/zh-Hans/pages.index.json b/niucloud/addon/hello_world/uni-app/locale/zh-Hans/pages.index.json new file mode 100644 index 0000000..1770d8c --- /dev/null +++ b/niucloud/addon/hello_world/uni-app/locale/zh-Hans/pages.index.json @@ -0,0 +1,7 @@ +{ + "list": "文章列表", + "noData": "~ 暂无数据 ~", + "all": "全部", + "end": "-- 到底了 --", + "searchPlaceholder": "请输入搜索关键词" +} diff --git a/niucloud/addon/hello_world/uni-app/pages/index.vue b/niucloud/addon/hello_world/uni-app/pages/index.vue new file mode 100644 index 0000000..88943ac --- /dev/null +++ b/niucloud/addon/hello_world/uni-app/pages/index.vue @@ -0,0 +1,25 @@ + + + + + diff --git a/niucloud/addon/hygl/Addon.php b/niucloud/addon/hygl/Addon.php new file mode 100644 index 0000000..5b49695 --- /dev/null +++ b/niucloud/addon/hygl/Addon.php @@ -0,0 +1,36 @@ +) { + return request.get(`hygl/advertising`, {params}) +} + +/** + * 获取广告管理详情 + * @param id 广告管理id + * @returns + */ +export function getAdvertisingInfo(id: number) { + return request.get(`hygl/advertising/${id}`); +} + +/** + * 添加广告管理 + * @param params + * @returns + */ +export function addAdvertising(params: Record) { + return request.post('hygl/advertising', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑广告管理 + * @param id + * @param params + * @returns + */ +export function editAdvertising(params: Record) { + return request.put(`hygl/advertising/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除广告管理 + * @param id + * @returns + */ +export function deleteAdvertising(id: number) { + return request.delete(`hygl/advertising/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + + + +// USER_CODE_END -- hygl_advertising diff --git a/niucloud/addon/hygl/admin/api/common.ts b/niucloud/addon/hygl/admin/api/common.ts new file mode 100644 index 0000000..ee0e107 --- /dev/null +++ b/niucloud/addon/hygl/admin/api/common.ts @@ -0,0 +1,29 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_common +/** + * 上传文件到本地 + * @param params + * @returns + */ +export function uploadFile(params: FormData) { + let config = { + headers: { + "Content-Type": "multipart/form-data", + } + } + return request.post('hygl/uploadFile', params,config) +} + +/** + * 获取远程搜索优惠券下拉菜单 + * @param params + */ +export function getWithCouponsList(params: Record){ + return request.get('hygl/getCouponsList', {params}) +} + + + + +// USER_CODE_END -- hygl_common \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/api/config.ts b/niucloud/addon/hygl/admin/api/config.ts new file mode 100644 index 0000000..395fded --- /dev/null +++ b/niucloud/addon/hygl/admin/api/config.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_config +/** + * 获取配置项列表 + * @param params + * @returns + */ +export function getConfigList(params: Record) { + return request.get(`hygl/config`, {params}) +} + +/** + * 获取配置项详情 + * @param id 配置项id + * @returns + */ +export function getConfigInfo(id: number) { + return request.get(`hygl/config/${id}`); +} + +/** + * 添加配置项 + * @param params + * @returns + */ +export function addConfig(params: Record) { + return request.post('hygl/config', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑配置项 + * @param id + * @param params + * @returns + */ +export function editConfig(params: Record) { + return request.put(`hygl/config/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除配置项 + * @param id + * @returns + */ +export function deleteConfig(id: number) { + return request.delete(`hygl/config/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 重新生成H5站点二维码 + * @param id + */ +export function resetH5SiteQRCode(id: number) { + return request.get(`hygl/config/resetH5SiteQRCode/${id}`); +} + + + +// USER_CODE_END -- hygl_config diff --git a/niucloud/addon/hygl/admin/api/coupons.ts b/niucloud/addon/hygl/admin/api/coupons.ts new file mode 100644 index 0000000..106bfb1 --- /dev/null +++ b/niucloud/addon/hygl/admin/api/coupons.ts @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_coupons +/** + * 获取优惠券列表 + * @param params + * @returns + */ +export function getCouponsList(params: Record) { + return request.get(`hygl/coupons`, {params}) +} + +/** + * 获取优惠券详情 + * @param id 优惠券id + * @returns + */ +export function getCouponsInfo(id: number) { + return request.get(`hygl/coupons/${id}`); +} + +/** + * 添加优惠券 + * @param params + * @returns + */ +export function addCoupons(params: Record) { + return request.post('hygl/coupons', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑优惠券 + * @param id + * @param params + * @returns + */ +export function editCoupons(params: Record) { + return request.put(`hygl/coupons/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除优惠券 + * @param id + * @returns + */ +export function deleteCoupons(id: number) { + return request.delete(`hygl/coupons/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + + + +// USER_CODE_END -- hygl_coupons diff --git a/niucloud/addon/hygl/admin/api/hello_world.ts b/niucloud/addon/hygl/admin/api/hello_world.ts new file mode 100644 index 0000000..6a70487 --- /dev/null +++ b/niucloud/addon/hygl/admin/api/hello_world.ts @@ -0,0 +1,7 @@ + +import request from '@/utils/request' + +/***************************************************** hello world ****************************************************/ +export function getHelloWorld() { + return request.get(`hygl/hello_world`) +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/api/transaction_history.ts b/niucloud/addon/hygl/admin/api/transaction_history.ts new file mode 100644 index 0000000..0cbfd9b --- /dev/null +++ b/niucloud/addon/hygl/admin/api/transaction_history.ts @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_transaction_history +/** + * 获取会员交易记录列表 + * @param params + * @returns + */ +export function getTransactionHistoryList(params: Record) { + return request.get(`hygl/transaction_history`, {params}) +} + +/** + * 获取会员交易记录详情 + * @param id 会员交易记录id + * @returns + */ +export function getTransactionHistoryInfo(id: number) { + return request.get(`hygl/transaction_history/${id}`); +} + +/** + * 添加会员交易记录 + * @param params + * @returns + */ +export function addTransactionHistory(params: Record) { + return request.post('hygl/transaction_history', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑会员交易记录 + * @param id + * @param params + * @returns + */ +export function editTransactionHistory(params: Record) { + return request.put(`hygl/transaction_history/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除会员交易记录 + * @param id + * @returns + */ +export function deleteTransactionHistory(id: number) { + return request.delete(`hygl/transaction_history/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + + + +// USER_CODE_END -- hygl_transaction_history diff --git a/niucloud/addon/hygl/admin/api/user.ts b/niucloud/addon/hygl/admin/api/user.ts new file mode 100644 index 0000000..8300bc4 --- /dev/null +++ b/niucloud/addon/hygl/admin/api/user.ts @@ -0,0 +1,61 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_user +/** + * 获取会员管理列表 + * @param params + * @returns + */ +export function getUserList(params: Record) { + return request.get(`hygl/user`, {params}) +} + +/** + * 获取会员管理详情 + * @param id 会员管理id + * @returns + */ +export function getUserInfo(id: number) { + return request.get(`hygl/user/${id}`); +} + +/** + * 添加会员管理 + * @param params + * @returns + */ +export function addUser(params: Record) { + return request.post('hygl/user', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑会员管理 + * @param id + * @param params + * @returns + */ +export function editUser(params: Record) { + return request.put(`hygl/user/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除会员管理 + * @param id + * @returns + */ +export function deleteUser(id: number) { + return request.delete(`hygl/user/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + + +//获取全部站点 +export function getWithSiteList(params: Record) { + return request.get('hygl/site', {params}) +} + +//获取全部用户 +export function getWithUserList(params: Record) { + return request.get('hygl/user', {params}) +} + +// USER_CODE_END -- hygl_user \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/api/user_coupons.ts b/niucloud/addon/hygl/admin/api/user_coupons.ts new file mode 100644 index 0000000..7fe8cda --- /dev/null +++ b/niucloud/addon/hygl/admin/api/user_coupons.ts @@ -0,0 +1,54 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- hygl_user_coupons +/** + * 获取用户优惠券列表 + * @param params + * @returns + */ +export function getUserCouponsList(params: Record) { + return request.get(`hygl/user_coupons`, {params}) +} + +/** + * 获取用户优惠券详情 + * @param id 用户优惠券id + * @returns + */ +export function getUserCouponsInfo(id: number) { + return request.get(`hygl/user_coupons/${id}`); +} + +/** + * 添加用户优惠券 + * @param params + * @returns + */ +export function addUserCoupons(params: Record) { + return request.post('hygl/user_coupons', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑用户优惠券 + * @param id + * @param params + * @returns + */ +export function editUserCoupons(params: Record) { + return request.put(`hygl/user_coupons/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除用户优惠券 + * @param id + * @returns + */ +export function deleteUserCoupons(id: number) { + return request.delete(`hygl/user_coupons/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +export function getWithUserList(params: Record){ + return request.get('hygl/user', {params}) +} + +// USER_CODE_END -- hygl_user_coupons diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/advertising.advertising.json b/niucloud/addon/hygl/admin/lang/zh-cn/advertising.advertising.json new file mode 100644 index 0000000..340b261 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/advertising.advertising.json @@ -0,0 +1,17 @@ +{ + "id":"序号", + "siteId":"站点", + "siteIdPlaceholder":"请输入站点", + "imgUrl":"广告图", + "imgUrlPlaceholder":"请输入广告图", + "skipUrl":"跳转链接", + "skipUrlPlaceholder":"请输入跳转链接", + "sort":"排序", + "sortPlaceholder":"请输入排序", + "createTime":"创建时间", + "addAdvertising":"添加广告管理", + "updateAdvertising":"编辑广告管理", + "advertisingDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/config.config.json b/niucloud/addon/hygl/admin/lang/zh-cn/config.config.json new file mode 100644 index 0000000..3b95498 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/config.config.json @@ -0,0 +1,33 @@ +{ + "id":"id", + "siteId":"站点id", + "siteIdPlaceholder":"请输入站点id", + "weChatPayAppid":"微信支付-APP的id", + "weChatPayAppidPlaceholder":"请输入微信支付-APP的id", + "weChatPayAppId":"微信支付-公众号APPID", + "weChatPayAppIdPlaceholder":"请输入微信支付-公众号APPID", + "weChatPayMiniappId":"微信支付-小程序APPID", + "weChatPayMiniappIdPlaceholder":"请输入微信支付-小程序APPID", + "weChatPayMchId":"微信支付-商户号", + "weChatPayMchIdPlaceholder":"请输入微信支付-商户号", + "weChatPayKey":"微信支付-商户号秘钥", + "weChatPayKeyPlaceholder":"请输入微信支付-商户号秘钥", + "weChatPayMiniappSecret":"微信支付-小程序secret", + "weChatPayMiniappSecretPlaceholder":"请输入微信支付-小程序secret", + "weChatPayNotifyUrl":"微信支付-异步回调地址", + "weChatPayNotifyUrlPlaceholder":"请输入微信支付-异步回调地址", + "alipayAppId":"支付宝-appid", + "alipayAppIdPlaceholder":"请输入支付宝-appid", + "alipayRsaPrivateKey":"支付宝-开发者私钥", + "alipayRsaPrivateKeyPlaceholder":"请输入支付宝-开发者私钥", + "alipayPublicKey":"支付宝-支付宝公钥", + "alipayPublicKeyPlaceholder":"请输入支付宝-支付宝公钥", + "alipayNotifyUrl":"支付宝-异步回调地址", + "alipayNotifyUrlPlaceholder":"请输入支付宝-异步回调地址", + "createTime":"创建时间", + "addConfig":"添加配置项", + "updateConfig":"编辑配置项", + "configDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/coupons.coupons.json b/niucloud/addon/hygl/admin/lang/zh-cn/coupons.coupons.json new file mode 100644 index 0000000..5feaf0c --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/coupons.coupons.json @@ -0,0 +1,26 @@ +{ + "id": "id", + "siteId": "站点id", + "siteIdPlaceholder": "请输入站点id", + "name": "卡券名字", + "namePlaceholder": "请输入卡券名字", + "nominalValue": "卡券面值", + "nominalValuePlaceholder": "请输入卡券面值", + "stock": "卡券库存", + "stockPlaceholder": "请输入卡券库存", + "isShow": "是否展示", + "isShowPlaceholder": "请输入是否展示", + "isLongTermValid": "是否长期有效", + "isLongTermValidPlaceholder": "请输入是否长期有效", + "createTime": "创建时间", + "addCoupons": "添加优惠券", + "updateCoupons": "编辑优惠券", + "couponsDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间", + "validFrom": "有效期开始时间", + "validUntil": "有效期截止时间", + "validTime": "有效期", + "isObsolete": "是否作废", + "isObsoletePlaceholder": "请输入是否作废" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/hello_world.index.json b/niucloud/addon/hygl/admin/lang/zh-cn/hello_world.index.json new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/hello_world.index.json @@ -0,0 +1 @@ +{} diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/transaction_history.transaction_history.json b/niucloud/addon/hygl/admin/lang/zh-cn/transaction_history.transaction_history.json new file mode 100644 index 0000000..a2d96a2 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/transaction_history.transaction_history.json @@ -0,0 +1,33 @@ +{ + "id":"序号", + "siteId":"站点id", + "siteIdPlaceholder":"请输入站点id", + "userId":"用户", + "userIdPlaceholder":"请输入用户", + "remark":"用户备注", + "remarkPlaceholder":"请输入用户备注", + "orderNum":"我方订单号", + "orderNumPlaceholder":"请输入我方订单号", + "payNum":"支付平台订单号", + "payNumPlaceholder":"请输入支付平台订单号", + "payType":"支付方式", + "payTypePlaceholder":"请输入支付方式", + "price":"订单应付金额(元)", + "pricePlaceholder":"请输入订单应付金额(元)", + "cashFee":"用户实际支付金额(元)", + "cashFeePlaceholder":"请输入用户实际支付金额(元)", + "payStatus":"是否完成支付", + "payStatusPlaceholder":"请输入是否完成支付", + "payTime":"用户付款时间", + "payTimePlaceholder":"请输入用户付款时间", + "payDataJson":"支付回调json字符串|默认null,支付成功后异步回调的值", + "payDataJsonPlaceholder":"请输入支付回调json字符串|默认null,支付成功后异步回调的值", + "createTime":"创建时间", + "createTimePlaceholder":"请输入创建时间", + "addTransactionHistory":"添加会员交易记录", + "updateTransactionHistory":"编辑会员交易记录", + "transactionHistoryDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间", + "couponsInfo":"优惠券使用" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/user.user.json b/niucloud/addon/hygl/admin/lang/zh-cn/user.user.json new file mode 100644 index 0000000..f2b74e6 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/user.user.json @@ -0,0 +1,34 @@ +{ + "id":"id", + "idPlaceholder":"请输入", + "siteId":"站点id", + "siteIdPlaceholder":"请输入站点id", + "tel":"联系电话", + "telPlaceholder":"请输入联系电话", + "name":"姓名", + "namePlaceholder":"请输入姓名", + "pic":"用户头像|相对路径", + "picPlaceholder":"请输入用户头像", + "password":"密码", + "passwordPlaceholder":"请输入密码", + "pid":"用户上级", + "pidPlaceholder":"请输入用户上级", + "level":"会员层级", + "levelPlaceholder":"请输入会员层级", + "wxOpenid":"微信小程序openid", + "wxOpenidPlaceholder":"请输入微信小程序openid", + "wxUnionid":"微信unionid", + "wxUnionidPlaceholder":"请输入微信unionid", + "sex":"性别", + "sexPlaceholder":"请输入性别", + "birthday":"生日", + "birthdayPlaceholder":"请输入生日", + "isShow":"是否可用", + "isShowPlaceholder":"请输入是否可用", + "createTime":"创建时间", + "addUser":"添加会员管理", + "updateUser":"编辑会员管理", + "userDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/lang/zh-cn/user_coupons.user_coupons.json b/niucloud/addon/hygl/admin/lang/zh-cn/user_coupons.user_coupons.json new file mode 100644 index 0000000..8b67268 --- /dev/null +++ b/niucloud/addon/hygl/admin/lang/zh-cn/user_coupons.user_coupons.json @@ -0,0 +1,21 @@ +{ + "id":"id", + "userId":"用户id", + "userIdPlaceholder":"全部", + "siteId":"站点id", + "siteIdPlaceholder":"请输入站点id", + "couponsId":"卡券名字", + "couponsIdPlaceholder":"请输入卡券名字", + "nominalValue":"卡券面值", + "nominalValuePlaceholder":"请输入卡券面值", + "isShow":"是否可用", + "isShowPlaceholder":"请输入是否可用", + "createTime":"创建时间", + "createTimePlaceholder":"请输入创建时间", + "addUserCoupons":"添加用户优惠券", + "updateUserCoupons":"编辑用户优惠券", + "userCouponsDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间", + "validTime":"有效期" +} \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/views/advertising/advertising.vue b/niucloud/addon/hygl/admin/views/advertising/advertising.vue new file mode 100644 index 0000000..94b97aa --- /dev/null +++ b/niucloud/addon/hygl/admin/views/advertising/advertising.vue @@ -0,0 +1,171 @@ + + + + + diff --git a/niucloud/addon/hygl/admin/views/advertising/components/advertising-edit.vue b/niucloud/addon/hygl/admin/views/advertising/components/advertising-edit.vue new file mode 100644 index 0000000..8995443 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/advertising/components/advertising-edit.vue @@ -0,0 +1,174 @@ + + + + + + \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/views/config/components/config-edit.vue b/niucloud/addon/hygl/admin/views/config/components/config-edit.vue new file mode 100644 index 0000000..6c085df --- /dev/null +++ b/niucloud/addon/hygl/admin/views/config/components/config-edit.vue @@ -0,0 +1,245 @@ + + + + + + diff --git a/niucloud/addon/hygl/admin/views/config/config.vue b/niucloud/addon/hygl/admin/views/config/config.vue new file mode 100644 index 0000000..cc212d6 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/config/config.vue @@ -0,0 +1,354 @@ + + + + + \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/views/coupons/components/coupons-edit.vue b/niucloud/addon/hygl/admin/views/coupons/components/coupons-edit.vue new file mode 100644 index 0000000..989ed61 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/coupons/components/coupons-edit.vue @@ -0,0 +1,238 @@ + + + + + + diff --git a/niucloud/addon/hygl/admin/views/coupons/coupons.vue b/niucloud/addon/hygl/admin/views/coupons/coupons.vue new file mode 100644 index 0000000..0510102 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/coupons/coupons.vue @@ -0,0 +1,227 @@ + + + + + diff --git a/niucloud/addon/hygl/admin/views/hello_world/index.vue b/niucloud/addon/hygl/admin/views/hello_world/index.vue new file mode 100644 index 0000000..b06efa2 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/hello_world/index.vue @@ -0,0 +1,17 @@ + + + + + diff --git a/niucloud/addon/hygl/admin/views/transaction_history/components/transaction-history-edit.vue b/niucloud/addon/hygl/admin/views/transaction_history/components/transaction-history-edit.vue new file mode 100644 index 0000000..fa2ee25 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/transaction_history/components/transaction-history-edit.vue @@ -0,0 +1,295 @@ + + + + + + diff --git a/niucloud/addon/hygl/admin/views/transaction_history/transaction_history.vue b/niucloud/addon/hygl/admin/views/transaction_history/transaction_history.vue new file mode 100644 index 0000000..765f95d --- /dev/null +++ b/niucloud/addon/hygl/admin/views/transaction_history/transaction_history.vue @@ -0,0 +1,286 @@ + + + + + \ No newline at end of file diff --git a/niucloud/addon/hygl/admin/views/user/components/user-edit.vue b/niucloud/addon/hygl/admin/views/user/components/user-edit.vue new file mode 100644 index 0000000..f9e18d6 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/user/components/user-edit.vue @@ -0,0 +1,311 @@ + + + + + + diff --git a/niucloud/addon/hygl/admin/views/user/user.vue b/niucloud/addon/hygl/admin/views/user/user.vue new file mode 100644 index 0000000..d23ac7f --- /dev/null +++ b/niucloud/addon/hygl/admin/views/user/user.vue @@ -0,0 +1,283 @@ + + + + + diff --git a/niucloud/addon/hygl/admin/views/user_coupons/components/user-coupons-edit.vue b/niucloud/addon/hygl/admin/views/user_coupons/components/user-coupons-edit.vue new file mode 100644 index 0000000..f905b14 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/user_coupons/components/user-coupons-edit.vue @@ -0,0 +1,233 @@ + + + + + + diff --git a/niucloud/addon/hygl/admin/views/user_coupons/user_coupons.vue b/niucloud/addon/hygl/admin/views/user_coupons/user_coupons.vue new file mode 100644 index 0000000..da6c747 --- /dev/null +++ b/niucloud/addon/hygl/admin/views/user_coupons/user_coupons.vue @@ -0,0 +1,249 @@ + + + + + diff --git a/niucloud/addon/hygl/app/adminapi/controller/Common.php b/niucloud/addon/hygl/app/adminapi/controller/Common.php new file mode 100644 index 0000000..e4532f8 --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/Common.php @@ -0,0 +1,106 @@ +request->param('path', '');//表名_字段名的格式 如:user_pic=user表pic字段 + if (!$file || !$path) { + return fail('缺少参数'); + } + + // 判断是否上传文件 + if (empty($file)) { + return '未选择要上传的文件'; + } + + $site_id = (new CommonService())->getSiteId();//获取站点id + + // 文件上传目录 + $date = date('Y_m_d'); + + $save_path = "addon/hygl/upload/{$path}/{$site_id}/{$date}/";//文件保存的路径,如:addon/hygl/upload/upload_files/ 就表示在根目录的public/addon/hygl/upload/upload_files/下 + + // 文件名(不包含扩展名) + $filename = time() . rand(1111, 9999); + // 扩展名 + $ext = pathinfo($file['name'], PATHINFO_EXTENSION); + + // 创建保存目录 + if (!is_dir($save_path)) { + mkdir($save_path, 0755, true); + } + + // 文件保存相对路径 + $save_file = $save_path . $filename . '.' . $ext; + + // 将上传的文件移动到指定位置 + if (!move_uploaded_file($file['tmp_name'], $save_file)) { + return '文件上传失败'; + } + + // 返回文件保存的信息给客户端 + $res = [ + 'name' => $name,//上传文件的原名称 + 'file_name' => $filename . '.' . $ext,//新文件名称 + 'file_path' => $save_file,//相对路径 + 'url' => get_file_url($save_file),//绝对路径 + ]; + return success('操作成功', $res); + } + + //远程获取优惠券下拉菜单 + public function getCouponsList(){ + $site_id = (new CommonService())->getSiteId(); + $couponsModel = new Coupons(); + $res = $couponsModel->where([["site_id","=",$site_id]]) + ->where('is_show',1) + ->where('is_obsolete',0) + ->where('stock','>',0) + ->select()->toArray(); + + if ($res){ + foreach($res as &$v){ + if ($v['is_long_term_valid'] == 1){ + $v['name'] = "{$v['name']}(长期有效)"; + }else{ + $data_1 = date('Y-m-d',$v['valid_from']); + $data_2 = date('Y-m-d',$v['valid_until']); + $v['name'] = "{$v['name']}(有效期{$data_1}-{$data_2})"; + } + } + } + + return success($res); + } +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/advertising/Advertising.php b/niucloud/addon/hygl/app/adminapi/controller/advertising/Advertising.php new file mode 100644 index 0000000..fa04435 --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/advertising/Advertising.php @@ -0,0 +1,89 @@ +request->params([ + + ]); + return success((new AdvertisingService())->getPage($data)); + } + + /** + * 广告管理详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new AdvertisingService())->getInfo($id)); + } + + /** + * 添加广告管理 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["img_url",""], + ["skip_url",""], + ["sort",0], + + ]); + $this->validate($data, 'addon\hygl\app\validate\advertising\Advertising.add'); + $id = (new AdvertisingService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 广告管理编辑 + * @param $id 广告管理id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["img_url",""], + ["skip_url",""], + ["sort",0], + + ]); + $this->validate($data, 'addon\hygl\app\validate\advertising\Advertising.edit'); + (new AdvertisingService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 广告管理删除 + * @param $id 广告管理id + * @return \think\Response + */ + public function del(int $id){ + (new AdvertisingService())->del($id); + return success('DELETE_SUCCESS'); + } + + +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/config/Config.php b/niucloud/addon/hygl/app/adminapi/controller/config/Config.php new file mode 100644 index 0000000..9607b7c --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/config/Config.php @@ -0,0 +1,131 @@ +request->params([ + + ]); + return success((new ConfigService())->getPage($data)); + } + + /** + * 配置项详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new ConfigService())->getInfo($id)); + } + + /** + * 重新生成H5站点二维码 + * @param int $id + * @return \think\Response + */ + public function resetH5SiteQRCode(int $id){ + $qrcode = (new ConfigService())->resetH5SiteQRCode($id); + $res = [ + 'url'=>$qrcode['url'], + 'ol_url'=>$qrcode['ol_url'] + ]; + return success($res); + } + + /** + * 添加配置项 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["we_chat_pay_appid",""], + ["we_chat_pay_app_id",""], + ["we_chat_pay_miniapp_id",""], + ["we_chat_pay_mch_id",""], + ["we_chat_pay_key",""], + ["we_chat_pay_miniapp_secret",""], + ["we_chat_pay_notify_url",""], + ["alipay_appId",""], + ["alipay_rsa_private_key",""], + ["alipay_public_key",""], + ["alipay_notify_url",""], + + ["we_chat_pay_mch_secret_cert",""], + ["we_chat_pay_mch_public_cert_path",""], + + ]); + $this->validate($data, 'addon\hygl\app\validate\config\Config.add'); + $id = (new ConfigService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 配置项编辑 + * @param $id 配置项id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["we_chat_pay_appid",""], + ["we_chat_pay_app_id",""], + ["we_chat_pay_miniapp_id",""], + ["we_chat_pay_mch_id",""], + ["we_chat_pay_key",""], + ["we_chat_pay_miniapp_secret",""], + ["we_chat_pay_notify_url",""], +// ["alipay_appId",""], +// ["alipay_rsa_private_key",""], +// ["alipay_public_key",""], +// ["alipay_notify_url",""], + + ["h5_qrcode_url",""], + ["we_chat_pay_mch_secret_cert",""], + ["we_chat_pay_mch_public_cert_path",""], + + ]); + if (!$data['we_chat_pay_mch_secret_cert'] || !$data['we_chat_pay_mch_public_cert_path']){ + return fail('微信商户私钥或商户公钥不能为空'); + } + + + $this->validate($data, 'addon\hygl\app\validate\config\Config.edit'); + (new ConfigService())->edit($data); + return success('EDIT_SUCCESS'); + } + + /** + * 配置项删除 + * @param $id 配置项id + * @return \think\Response + */ + public function del(int $id){ + (new ConfigService())->del($id); + return success('DELETE_SUCCESS'); + } + + +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/coupons/Coupons.php b/niucloud/addon/hygl/app/adminapi/controller/coupons/Coupons.php new file mode 100644 index 0000000..7ac36fb --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/coupons/Coupons.php @@ -0,0 +1,127 @@ +request->params([ + ["name",""], + ["nominal_value",["",""]], + ["is_show",""] + ]); + return success((new CouponsService())->getPage($data)); + } + + /** + * 优惠券详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new CouponsService())->getInfo($id)); + } + + /** + * 添加优惠券 + * @return \think\Response + */ + public function add() + { + $data = $this->request->params([ + ["name", ""], + ["nominal_value", 0.00], + ["stock", 0], + ["is_show", ""], + ["is_obsolete", ""], + ["is_long_term_valid", ""], + ["valid_time", []], + + ]); + $this->validate($data, 'addon\hygl\app\validate\coupons\Coupons.add'); + + $data['valid_from'] = 0; + $data['valid_until'] = 0; + if (!$data['is_long_term_valid']){ + //不是长期有效 + if (empty($data['valid_time'][0]) || empty($data['valid_time'][1])){ + return fail('有效期不能为空'); + }else{ + $data['valid_from'] = strtotime($data['valid_time'][0]); + $data['valid_until'] = strtotime($data['valid_time'][1]); + } + } + + $id = (new CouponsService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 优惠券编辑 + * @param $id 优惠券id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["name", ""], + ["nominal_value", 0.00], + ["stock", 0], + ["is_show", ""], + ["is_obsolete", ""],//是否作废1=是 + ["is_long_term_valid", ""], + ["valid_time", []], + + ]); + $this->validate($data, 'addon\hygl\app\validate\coupons\Coupons.edit'); + + $data['valid_from'] = 0; + $data['valid_until'] = 0; + if (!$data['is_long_term_valid']){ + //不是长期有效 + if (empty($data['valid_time'][0]) || empty($data['valid_time'][1])){ + return fail('有效期不能为空'); + }else{ + $data['valid_from'] = strtotime($data['valid_time'][0]); + $data['valid_until'] = strtotime($data['valid_time'][1]); + } + } + unset($data['valid_time']); + + (new CouponsService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 优惠券删除 + * @param $id 优惠券id + * @return \think\Response + */ + public function del(int $id){ + (new CouponsService())->del($id); + return success('DELETE_SUCCESS'); + } + + +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/hello_world/Index.php b/niucloud/addon/hygl/app/adminapi/controller/hello_world/Index.php new file mode 100644 index 0000000..38a0c0a --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/hello_world/Index.php @@ -0,0 +1,29 @@ +request->params([ + ["user_id",""], + ["order_num",""], + ["pay_num",""], + ["pay_type",""], + ["price",["",""]], + ["cash_fee",["",""]], + ["pay_status",""], + ["pay_time",["",""]], + ["create_time",["",""]] + ]); + return success((new TransactionHistoryService())->getPage($data)); + } + + /** + * 会员交易记录详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new TransactionHistoryService())->getInfo($id)); + } + + /** + * 添加会员交易记录 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["user_id",0], + ["remark",""], + ["order_num",""], + ["pay_num",""], + ["pay_type",""], + ["price",0.00], + ["cash_fee",0.00], + ["pay_status",0], + ["pay_time",0], + ["pay_data_json",""], + + ]); + if ($data['pay_time']){ + $data['pay_time'] = strtotime($data['pay_time']); + } + + $this->validate($data, 'addon\hygl\app\validate\transaction_history\TransactionHistory.add'); + $id = (new TransactionHistoryService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 会员交易记录编辑 + * @param $id 会员交易记录id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["user_id",0], + ["remark",""], + ["order_num",""], + ["pay_num",""], + ["pay_type",""], + ["price",0.00], + ["cash_fee",0.00], + ["pay_status",0], + ["pay_time",0], + ["pay_data_json",""], + + ]); + + if ($data['pay_time']){ + $data['pay_time'] = strtotime($data['pay_time']); + } + + $this->validate($data, 'addon\hygl\app\validate\transaction_history\TransactionHistory.edit'); + (new TransactionHistoryService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 会员交易记录删除 + * @param $id 会员交易记录id + * @return \think\Response + */ + public function del(int $id){ + (new TransactionHistoryService())->del($id); + return success('DELETE_SUCCESS'); + } + + +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/user/User.php b/niucloud/addon/hygl/app/adminapi/controller/user/User.php new file mode 100644 index 0000000..beac5df --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/user/User.php @@ -0,0 +1,147 @@ +request->params([ + ["tel",""], + ["name",""], + ["password",""], + ["sex",""], + ["birthday",["",""]], + ["is_show",""] + ]); + return success((new UserService())->getPage($data)); + } + + /** + * 会员管理详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new UserService())->getInfo($id)); + } + + /** + * 添加会员管理 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["tel",""], + ["name",""], + ["pic",""], + ["password",""], + ["pid",0], + ["level",0], + ["wx_openid",""], + ["wx_unionid",""], + ["sex",""], + ["birthday","2024-02-20 11:15:10"], + ["is_show",""], + + ]); + + //验证手机号唯一 + $isTelExist = (new UserService())->isTelExist($data['tel']); + if ($isTelExist) { + return fail('手机号已存在'); + } + + $data['password'] = create_password($data['password']); + + //根据pid计算对应的用户层级 + $data['level'] = (new UserService())->createLevel($data['pid']); + $this->validate($data, 'addon\hygl\app\validate\user\User.add'); + $id = (new UserService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 会员管理编辑 + * @param $id 会员管理id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["tel",""], + ["name",""], + ["pic",""], + ["password",""], + ["pid",0], + ["level",0], + ["wx_openid",""], + ["wx_unionid",""], + ["sex",""], + ["birthday","2024-02-20 11:15:10"], + ["is_show",""], + + ]); + + //验证手机号唯一 + $isTelExist = (new UserService())->isTelExist($data['tel'],$id); + if ($isTelExist) { + return fail('手机号已存在'); + } + + if ($data['password']) { + $data['password'] = create_password($data['password']); + } else { + unset($data['password']); + } + + //根据pid计算对应的用户层级 + $data['level'] = (new UserService())->createLevel($data['pid']); + $this->validate($data, 'addon\hygl\app\validate\user\User.edit'); + (new UserService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 会员管理删除 + * @param $id 会员管理id + * @return \think\Response + */ + public function del(int $id){ + (new UserService())->del($id); + return success('DELETE_SUCCESS'); + } + + //获取全部用户 + public function getUserAll(){ + return success(( new UserService())->getUserAll()); + } + + //获取全部站点 + public function getSiteAll(){ + return success(( new UserService())->getSiteAll()); + } + + + +} diff --git a/niucloud/addon/hygl/app/adminapi/controller/user_coupons/UserCoupons.php b/niucloud/addon/hygl/app/adminapi/controller/user_coupons/UserCoupons.php new file mode 100644 index 0000000..73241e4 --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/controller/user_coupons/UserCoupons.php @@ -0,0 +1,97 @@ +request->params([ + ["user_id",""], + ["coupons_id",""], + ["nominal_value",["",""]], + ["is_show",""], + ["create_time",["",""]] + ]); + return success((new UserCouponsService())->getPage($data)); + } + + /** + * 用户优惠券详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new UserCouponsService())->getInfo($id)); + } + + /** + * 添加用户优惠券 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["user_id",0], + ["coupons_id",""], + ["is_show",""], + ]); + $this->validate($data, 'addon\hygl\app\validate\user_coupons\UserCoupons.add'); + + $id = (new UserCouponsService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 用户优惠券编辑 + * @param $id 用户优惠券id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params([ + ["user_id",0], + ["coupons_id",""], + ["is_show",""], + ]); + $this->validate($data, 'addon\hygl\app\validate\user_coupons\UserCoupons.edit'); + (new UserCouponsService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 用户优惠券删除 + * @param $id 用户优惠券id + * @return \think\Response + */ + public function del(int $id){ + (new UserCouponsService())->del($id); + return success('DELETE_SUCCESS'); + } + + + public function getUserAll(){ + return success(( new UserCouponsService())->getUserAll()); + } + +} diff --git a/niucloud/addon/hygl/app/adminapi/route/route.php b/niucloud/addon/hygl/app/adminapi/route/route.php new file mode 100644 index 0000000..22b4d6c --- /dev/null +++ b/niucloud/addon/hygl/app/adminapi/route/route.php @@ -0,0 +1,173 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_BEGIN -- hygl_user + +Route::group('hygl', function () { + + //会员管理列表 + Route::get('user', 'addon\hygl\app\adminapi\controller\user\User@lists'); + //会员管理详情 + Route::get('user/:id', 'addon\hygl\app\adminapi\controller\user\User@info'); + //添加会员管理 + Route::post('user', 'addon\hygl\app\adminapi\controller\user\User@add'); + //编辑会员管理 + Route::put('user/:id', 'addon\hygl\app\adminapi\controller\user\User@edit'); + //删除会员管理 + Route::delete('user/:id', 'addon\hygl\app\adminapi\controller\user\User@del'); + //获取全部会员 + Route::get('user','addon\hygl\app\adminapi\controller\user\User@getUserAll'); + //获取全部站点 + Route::get('site','addon\hygl\app\adminapi\controller\user\User@getSiteAll'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_user +// USER_CODE_BEGIN -- hygl_coupons + +Route::group('hygl', function () { + + //优惠券列表 + Route::get('coupons', 'addon\hygl\app\adminapi\controller\coupons\Coupons@lists'); + //优惠券详情 + Route::get('coupons/:id', 'addon\hygl\app\adminapi\controller\coupons\Coupons@info'); + //添加优惠券 + Route::post('coupons', 'addon\hygl\app\adminapi\controller\coupons\Coupons@add'); + //编辑优惠券 + Route::put('coupons/:id', 'addon\hygl\app\adminapi\controller\coupons\Coupons@edit'); + //删除优惠券 + Route::delete('coupons/:id', 'addon\hygl\app\adminapi\controller\coupons\Coupons@del'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_coupons + +// USER_CODE_BEGIN -- hygl_config + +Route::group('hygl', function () { + + //配置项列表 + Route::get('config', 'addon\hygl\app\adminapi\controller\config\Config@lists'); + //配置项详情 + Route::get('config/:id', 'addon\hygl\app\adminapi\controller\config\Config@info'); + //配置项-重新生成H5站点二维码 + Route::get('config/resetH5SiteQRCode/:id', 'addon\hygl\app\adminapi\controller\config\Config@resetH5SiteQRCode'); + //添加配置项 + Route::post('config', 'addon\hygl\app\adminapi\controller\config\Config@add'); + //编辑配置项 + Route::put('config/:id', 'addon\hygl\app\adminapi\controller\config\Config@edit'); + //删除配置项 + Route::delete('config/:id', 'addon\hygl\app\adminapi\controller\config\Config@del'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_config + +// USER_CODE_BEGIN -- hygl_transaction_history + +Route::group('hygl', function () { + + //会员交易记录列表 + Route::get('transaction_history', 'addon\hygl\app\adminapi\controller\transaction_history\TransactionHistory@lists'); + //会员交易记录详情 + Route::get('transaction_history/:id', 'addon\hygl\app\adminapi\controller\transaction_history\TransactionHistory@info'); + //添加会员交易记录 + Route::post('transaction_history', 'addon\hygl\app\adminapi\controller\transaction_history\TransactionHistory@add'); + //编辑会员交易记录 + Route::put('transaction_history/:id', 'addon\hygl\app\adminapi\controller\transaction_history\TransactionHistory@edit'); + //删除会员交易记录 + Route::delete('transaction_history/:id', 'addon\hygl\app\adminapi\controller\transaction_history\TransactionHistory@del'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_transaction_history + +// USER_CODE_BEGIN -- hygl_user_coupons + +Route::group('hygl', function () { + + //用户优惠券列表 + Route::get('user_coupons', 'addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@lists'); + //用户优惠券详情 + Route::get('user_coupons/:id', 'addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@info'); + //添加用户优惠券 + Route::post('user_coupons', 'addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@add'); + //编辑用户优惠券 + Route::put('user_coupons/:id', 'addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@edit'); + //删除用户优惠券 + Route::delete('user_coupons/:id', 'addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@del'); + + Route::get('user','addon\hygl\app\adminapi\controller\user_coupons\UserCoupons@getUserAll'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_user_coupons + +// USER_CODE_BEGIN -- hygl_advertising + +Route::group('hygl', function () { + + //广告管理列表 + Route::get('advertising', 'addon\hygl\app\adminapi\controller\advertising\Advertising@lists'); + //广告管理详情 + Route::get('advertising/:id', 'addon\hygl\app\adminapi\controller\advertising\Advertising@info'); + //添加广告管理 + Route::post('advertising', 'addon\hygl\app\adminapi\controller\advertising\Advertising@add'); + //编辑广告管理 + Route::put('advertising/:id', 'addon\hygl\app\adminapi\controller\advertising\Advertising@edit'); + //删除广告管理 + Route::delete('advertising/:id', 'addon\hygl\app\adminapi\controller\advertising\Advertising@del'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- hygl_advertising diff --git a/niucloud/addon/hygl/app/api/controller/Home.php b/niucloud/addon/hygl/app/api/controller/Home.php new file mode 100644 index 0000000..58addb2 --- /dev/null +++ b/niucloud/addon/hygl/app/api/controller/Home.php @@ -0,0 +1,271 @@ +request->param('site_id', ''); + $site_name = Site::where('site_id', $site_id)->value('site_name');//获取站点信息 + //获取微信公众号id + $we_chat_pay_app_id = Config::where('site_id', $site_id)->value('we_chat_pay_app_id'); + $res = [ + 'site_id' => $site_id, + 'site_name' => $site_name, + 'we_chat_pay_app_id' => $we_chat_pay_app_id, + ]; + return success($res); + } + + //获取用户信息 + public function getUser() + { + $site_id = $this->request->param('site_id', ''); + $role = $this->request->param('role', '');//身份//wx=微信 zfb=支付宝 + $openid = $this->request->param('openid', ''); + + + if (!$site_id || !in_array($role, ['wx', 'zfb']) || !$openid) { + return fail('确少参数'); + } + + $user = User::where('site_id', $site_id); + + if ($role == 'wx') { + $user = $user->where('wx_openid', $openid); + } else { + $user = $user->where('zfb_openid', $openid); + } + $user = $user->find(); + + //创建用户 + if (!$user) { + if ($role == 'wx') { + $wx_openid = $openid; + $name = "微信用户{$openid}"; + } else { + $zfb_openid = $openid; + $name = "微信用户{$openid}"; + } + $data = [ + 'name' => $name, + 'site_id' => $site_id, + 'wx_openid' => $wx_openid ?? null, + 'zfb_openid' => $zfb_openid ?? null, + 'is_show' => 1, + 'pid' => 0, + 'level' => 1, + ]; + $user_data = User::create($data); + $res = [ + 'user_id' => $user_data['id'] + ]; + } else { + $res = [ + 'user_id' => $user['id'] + ]; + } + + return success($res); + } + + //获取用户拥有的优惠券 + public function getUserCoupons() + { + $user_id = $this->request->param('user_id', ''); + $site_id = $this->request->param('site_id', ''); + $original_price = $this->request->param('original_price', '');//订单总金额 + if (!$user_id || !$site_id) { + return fail('确少参数'); + } + + $time = time(); + + $data = UserCoupons::where('site_id', $site_id) + ->where('user_id', $user_id) + ->where('is_show', 1)//是否可用1=是,0=否 + ->with([ + 'coupons' => function ($q) use ($original_price) { + $q->where('is_obsolete', 0); + } + ]) + ->select()->toArray(); + + $userCoupons = []; + foreach($data as $v){ + if (!empty($v['coupons'])){ + if ($v['coupons']['is_long_term_valid'] == 1){ + //长期有效 + $userCoupons[] = [ + 'id'=>$v['id'], + 'name'=>"{$v['coupons']['name']}(长期有效)", + 'nominal_value'=>$v['coupons']['nominal_value'] ?? 0, + 'coupons'=>$v['coupons'] ?? [], + ]; + }elseif($v['coupons']['valid_from'] <= $time && $v['coupons']['valid_until'] >= $time){ + //在有效期之内 + $data_1 = date('Y-m-d',$v['coupons']['valid_from']); + $data_2 = date('Y-m-d',$v['coupons']['valid_until']); + $userCoupons[] = [ + 'id'=>$v['id'], + 'name'=>"{$v['coupons']['name']}({$data_1}~{$data_2})", + 'nominal_value'=>$v['coupons']['nominal_value'] ?? 0, + 'coupons'=>$v['coupons'] ?? [], + ]; + } + } + } + if ($userCoupons){ + // 定义自定义排序函数 + // 使用匿名函数作为回调函数进行排序 + usort($userCoupons, function($a, $b) { + return $b['coupons']['nominal_value'] - $a['coupons']['nominal_value']; + }); + } + + return success($userCoupons); + } + + //获取可领取的优惠券 + public function getReceiveCouponsList() + { + $site_id = $this->request->param('site_id', ''); + + $data = Coupons::where('site_id', $site_id) + ->where('stock', '>', 0) + ->where('is_show', 1) + ->select(); + + $res = $data->toArray(); + + return success($res); + } + + //创建订单 + public function addOrder() + { + $site_id = $this->request->param('site_id', ''); + $user_id = $this->request->param('user_id', ''); + $pay_type = $this->request->param('pay_type', ''); + $original_price = $this->request->param('original_price', '');//订单总价格 + $user_coupons_id = $this->request->param('user_coupons_id', '');//用户优惠券中间表id + $original_price = bcmul($original_price,1,2); + + if (!$site_id || !$user_id || !in_array($pay_type, [1, 2, 3, 4, 5, 6, 7, 8]) || !$original_price) { + return fail('缺少参数'); + } + + $order_num = time() . rand(1111, 9999); + + $price = $original_price; + //计算优惠劵 + if ($user_coupons_id) { + $user_coupons = UserCoupons::where('id', $user_coupons_id) + ->where('is_show',1) + ->with(['coupons']) + ->find(); + if (empty($user_coupons['coupons']) || $user_coupons['coupons']['is_obsolete'] != 0){ + return fail('优惠券信息不存在'); + } + if ($user_coupons['coupons']['is_long_term_valid'] != 1){ + //不是长期有效 + $time = time(); + if ($user_coupons['coupons']['valid_from'] > $time || $user_coupons['coupons']['valid_until'] < $time){ + return fail('优惠券已过期'); + } + } + + //判断优惠券面值是否大于支付面值 + if ($user_coupons['coupons']['nominal_value'] >= $original_price){ + return fail("优惠券面值需要小于{$original_price}"); + } + + $price = $original_price - $user_coupons['coupons']['nominal_value']; + if ($price <= 0) { + return fail("满减后或支付金额不能为0元"); + } + } + + $create_data = [ + 'site_id' => $site_id,// + 'user_id' => $user_id,// + 'order_num' => $order_num,// + 'pay_type' => $pay_type,// + 'original_price' => $original_price,//订单原价(元)|优惠前的金额 + 'price' => $price,//订单应付金额(元)|(优惠后的金额)精确到`分` + 'user_coupons_id' => $user_coupons['id'],//用户优惠券中间表id + ]; + Db::startTrans(); + try { + $res = TransactionHistory::create($create_data); + Db::commit(); + } catch (\Exception $exception) { + Db::rollback(); + return fail('系统繁忙'); + } + + if ($res) { + return success($res->toArray()); + } else { + return fail('系统繁忙'); + } + } + + //获取广告列表 + public function getAdvertising() + { + $site_id = $this->request->param('site_id', '');//站点id + if (!$site_id) { + return fail('缺少参数'); + } + $field = 'id,img_url,skip_url,sort,site_id'; + $res = Advertising::order('sort', 'desc') + ->field($field) + ->where('site_id', $site_id) + ->select() + ->toArray(); + + if ($res) { + foreach ($res as &$v) { + if ($v['img_url']) { + $v['img_url'] = get_file_url($v['img_url']); + } + } + } + + return success($res); + } + + +} diff --git a/niucloud/addon/hygl/app/api/controller/TestController.php b/niucloud/addon/hygl/app/api/controller/TestController.php new file mode 100644 index 0000000..792054f --- /dev/null +++ b/niucloud/addon/hygl/app/api/controller/TestController.php @@ -0,0 +1,41 @@ +request->param('site_id',''); + $site_name = Site::where('site_id',$site_id)->value('site_name'); + $res = [ + 'site_id'=>$site_id, + 'site_name'=>$site_name + ]; + return success($res); + } + + +} diff --git a/niucloud/addon/hygl/app/api/controller/WeChatController.php b/niucloud/addon/hygl/app/api/controller/WeChatController.php new file mode 100644 index 0000000..22d6311 --- /dev/null +++ b/niucloud/addon/hygl/app/api/controller/WeChatController.php @@ -0,0 +1,306 @@ +request->param('code','');// + $site_id = $this->request->param('site_id',''); + + + $wx_config = Config::where('site_id',$site_id)->field('we_chat_pay_app_id,we_chat_pay_gzh_secret')->find(); + + $appid = $wx_config['we_chat_pay_app_id']; + $secret = $wx_config['we_chat_pay_gzh_secret']; + + $tokeninfo = $this->http_curl("https://api.weixin.qq.com/sns/oauth2/access_token?appid={$appid}&secret={$secret}&code={$code}&grant_type=authorization_code");//获取access_token + $tokeninfo = json_decode($tokeninfo, true); + + + if (empty($tokeninfo['openid'])){ + return fail('链接失效,请重新扫码'); + } + + $res = [ + 'openid'=>$tokeninfo['openid'],//微信openid + ]; + return success($res); + } + + //curl请求 + public function http_curl($url){ + $curl = curl_init(); + //设置抓取的url + curl_setopt($curl, CURLOPT_URL, $url); + //设置头文件的信息作为数据流输出 + curl_setopt($curl, CURLOPT_HEADER, 0); + //设置获取的信息以文件流的形式返回,而不是直接输出。 + curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); + //执行命令 + $data = curl_exec($curl); + //关闭URL请求 + curl_close($curl); + //显示获得的数据 + return $data; + } + + protected $config = [ + 'wechat' => [ + 'default' => [ + // 必填-商户号 + 'mch_id' => '1647413230', + // 必填-v3商户秘钥 + 'mch_secret_key' => 'jTwAPZXpylR7TCoinWn2srOQUb6ioZlL', + // 必填-商户私钥 字符串或路径 + 'mch_secret_cert' => 'addon/hygl/wx_mch_cert/100000/apiclient_key.pem', + // 必填-商户公钥证书路径 + 'mch_public_cert_path' => 'addon/hygl/wx_mch_cert/100000/apiclient_cert.pem', + // 必填 + 'notify_url' => 'http://hycrm.zeyan.wang/api/hygl/wechatPayNotify', + // 选填-公众号 的 app_id + 'mp_app_id' => 'wxd2d733a7163bff05', + // 选填-默认为正常模式。可选为: MODE_NORMAL, MODE_SERVICE + 'mode' => Pay::MODE_NORMAL, + ] + ], + 'logger' => [ // optional + 'enable' => false, + 'file' => './logs/wechat.log', + 'level' => 'debug', // 建议生产环境等级调整为 info,开发环境为 debug + 'type' => 'single', // optional, 可选 daily. + 'max_file' => 30, // optional, 当 type 为 daily 时有效,默认 30 天 + ], + 'http' => [ // optional + 'timeout' => 5.0, + 'connect_timeout' => 5.0, + // 更多配置项请参考 [Guzzle](https://guzzle-cn.readthedocs.io/zh_CN/latest/request-options.html) + ], + ]; + + public function wxMpPay_DEMO(){ + $order = [ + 'out_trade_no' => time().'', + 'description' => 'subject-测试', + 'amount' => [ + 'total' => 1, + ], + 'payer' => [ + 'openid' => 'oYuE665Oexv3miom7BbuRQgevkHo', + ], + ]; + + $pay = Pay::wechat($this->config)->mp($order); + dd($pay); + } + + //创建微信公众号支付(JSAPI) + public function wxMpPay(){ + $order_id = $this->request->param('order_id',''); + $user_id = $this->request->param('user_id',''); + $site_id = $this->request->param('site_id',''); + + if (!$order_id || !$user_id || !$site_id) { + return fail('缺少参数'); + } + + $order = TransactionHistory::where('id',$order_id) + ->where('user_id',$user_id) + ->where('pay_status',0) + ->find(); + + if (!$order){ + return fail('订单不正确,请重新扫码'); + } + + + $config = $this->initWxPayConfig($site_id); + + if(!$config['code']){ + return fail($config['msg']); + } + + $openid = User::where('id',$user_id)->value('wx_openid'); + + if (!$openid){ + return fail('请重新扫码'); + } + + $site_name = Site::where('site_id',$site_id)->value('site_name'); + $order_pay = [ + 'out_trade_no' => $order['order_num'],//我方订单号 + 'description' => $site_name, + 'amount' => [ + 'total' => $order['price'] * 100,//金额(分) + ], + 'payer' => [ + 'openid' => $openid,//支付用户的openid + ], + ]; + + //拉起微信公众号(JSAPI)支付 + $pay = Pay::wechat($config['data'])->mp($order_pay); + return success($pay->toArray()); + } + + //支付成功异步回调 + public function wechatPayNotify($site_id) + { + $filePath = 'login/test.txt'; +// $date = date('Y-m-d H:i:s') . '_$site_id=' .$site_id; +// $data = "回调成功了-{$date}"; // 要写入的数据 +// $a = file_put_contents($filePath, $data); + + + $site_id = $this->request->param('site_id',''); + $config = $this->initWxPayConfig($site_id);//初始化微信支付配置项 + + $pay = Pay::wechat($config['data']); + try { + // 是的,你没有看错,就是这么简单!返回值为微信回调的订单数据 + $data = $pay->callback(); +// $a = "{$data->summary} - {$data['resource']['ciphertext']['trade_state_desc']}"; +// file_put_contents($filePath,json_encode($data, JSON_UNESCAPED_UNICODE)); + Log::write($data->all(),'notice');//记录日志 + //判断是否支付成功 + if ($data['event_type'] == "TRANSACTION.SUCCESS" && $data['resource']['ciphertext']['trade_state'] == "SUCCESS") { + //支付成功 + //防止支付回调成功后重复给用户打款 + $order = TransactionHistory::where('order_num', $data['resource']['ciphertext']['out_trade_no']) + ->find();//查询我方订单号是否打款 + if ($order['pay_status'] == 1) { + //已经支付过了,通知微信停止异步回调 + return '';//付款成功 + } + + //修改订单状态 + $cash_fee = $data['resource']['ciphertext']['amount']['payer_total'] ?? 0; + if ($cash_fee > 0){ + $cash_fee = bcdiv($cash_fee, 100, 2); + } + + $update = TransactionHistory::where('id', $order['id']) + ->where('pay_status', 0) + ->update([ + 'pay_num' => $data['resource']['ciphertext']['transaction_id'],//支付平台订单号 + + 'cash_fee' => $cash_fee,//用户实际支付金额(元) 分 / 100=元 + 'pay_status' => 1,//订单支付状态|默认0:未支付,1:已支付 + 'pay_time' => time(),// + 'pay_data_json' => json_encode($data, JSON_UNESCAPED_UNICODE),//支付回调json字符串 + ]); + if ($order['user_coupons_id']){ + //核销优惠券 + UserCoupons::where('id',$order['user_coupons_id']) + ->where('is_show',1) + ->update([ + 'is_show'=>0, + ]); + } + + + if (!$update){ + Log::write("订单{$data['resource']['ciphertext']['out_trade_no']}支付回调失败", 'error');//记录日志 + } + + + } + } catch (\Exception $exception) { + Log::write($exception->getMessage(), 'error');//记录日志 + $data = "错误-{$exception->getMessage()},行={$exception->getFile()},{$exception->getLine()}"; + file_put_contents($filePath, $data); + } + $str = ''; + return $str; + } + + // + + /** + * 初始化微信支付配置项 + * @param $site_id 站点id + * @return array[] + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException + */ + private function initWxPayConfig($site_id){ + //微信支付配置项目 + $wx_config = Config::where('site_id',$site_id) + ->find(); + if (!$wx_config){ + $res = [ + 'code'=>false,//true=成功,false=失败 + 'msg'=>'支付配置项不正确', + 'data'=>[], + ]; + }else{ + $config = [ + 'wechat' => [ + 'default' => [ + // 必填-商户号 + 'mch_id' => $wx_config['we_chat_pay_mch_id'], + // 必填-v3商户秘钥 + 'mch_secret_key' => $wx_config['we_chat_pay_key'], + // 必填-商户私钥 字符串或路径 + 'mch_secret_cert' => $wx_config['we_chat_pay_mch_secret_cert'], + // 必填-商户公钥证书路径 + 'mch_public_cert_path' => $wx_config['we_chat_pay_mch_public_cert_path'], + // 必填 + 'notify_url' => $wx_config['we_chat_pay_notify_url'], + // 选填-公众号 的 app_id + 'mp_app_id' => $wx_config['we_chat_pay_app_id'], + // 选填-默认为正常模式。可选为: MODE_NORMAL, MODE_SERVICE + 'mode' => Pay::MODE_NORMAL, + ] + ], + 'logger' => [ // optional + 'enable' => false, + 'file' => './logs/wechat.log', + 'level' => 'debug', // 建议生产环境等级调整为 info,开发环境为 debug + 'type' => 'single', // optional, 可选 daily. + 'max_file' => 30, // optional, 当 type 为 daily 时有效,默认 30 天 + ], + 'http' => [ // optional + 'timeout' => 5.0, + 'connect_timeout' => 5.0, + // 更多配置项请参考 [Guzzle](https://guzzle-cn.readthedocs.io/zh_CN/latest/request-options.html) + ], + ]; + $res = [ + 'code'=>true,//true=成功,false=失败 + 'msg'=>'', + 'data'=>$config, + ]; + } + return $res; + } + + +} diff --git a/niucloud/addon/hygl/app/api/controller/hello_world/Index.php b/niucloud/addon/hygl/app/api/controller/hello_world/Index.php new file mode 100644 index 0000000..425f0ed --- /dev/null +++ b/niucloud/addon/hygl/app/api/controller/hello_world/Index.php @@ -0,0 +1,28 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, false) //false表示不验证登录 + ->middleware(ApiLog::class); + + + +Route::group('hygl', function() { + +})->middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) //表示验证登录 + ->middleware(ApiLog::class); + diff --git a/niucloud/addon/hygl/app/dict/menu/admin.php b/niucloud/addon/hygl/app/dict/menu/admin.php new file mode 100644 index 0000000..b625128 --- /dev/null +++ b/niucloud/addon/hygl/app/dict/menu/admin.php @@ -0,0 +1,4 @@ + '会员管理系统', + 'menu_key' => 'hygl', + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'hygl', + 'view_path' => '', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '会员管理系统', + 'menu_key' => 'hygl_hello_world', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'hygl/hello_world', + 'router_path' => 'hello_world', + 'view_path' => 'hello_world/index', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [] + ], + ] + ] +]; diff --git a/niucloud/addon/hygl/app/event.php b/niucloud/addon/hygl/app/event.php new file mode 100644 index 0000000..ab1f460 --- /dev/null +++ b/niucloud/addon/hygl/app/event.php @@ -0,0 +1,12 @@ + [ + + ], + 'listen' => [ + + ], + 'subscribe' => [ + ], +]; \ No newline at end of file diff --git a/niucloud/addon/hygl/app/lang/en/api.php b/niucloud/addon/hygl/app/lang/en/api.php new file mode 100644 index 0000000..6dd3552 --- /dev/null +++ b/niucloud/addon/hygl/app/lang/en/api.php @@ -0,0 +1,4 @@ +where("name", "like", "%".$value."%"); + } + } + + /** + * 搜索器:优惠券卡券面值 + * @param $value + * @param $data + */ + public function searchNominalValueAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : $value[0]; + $end = empty($value[1]) ? 0 : $value[1]; + if ($start > 0 && $end > 0) { + $query->where([["nominal_value", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["nominal_value", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["nominal_value", "<=", $end]]); + } + } + + /** + * 搜索器:优惠券是否展示 + * @param $value + * @param $data + */ + public function searchIsShowAttr($query, $value, $data) + { + if ($value) { + $query->where("is_show", $value); + } + } + + + + public function site() + { + return $this->hasOne(\app\model\site\Site::class, 'id', 'site_id'); + } + + + + +} diff --git a/niucloud/addon/hygl/app/model/transaction_history/TransactionHistory.php b/niucloud/addon/hygl/app/model/transaction_history/TransactionHistory.php new file mode 100644 index 0000000..ecab88c --- /dev/null +++ b/niucloud/addon/hygl/app/model/transaction_history/TransactionHistory.php @@ -0,0 +1,214 @@ +whereOr("tel", "like", "%" . $value . "%") + ->where('site_id',$data['site_id']) + ->distinct(true) + ->column('id'); + if ($user_id) { + $query->whereIn("user_id", $user_id); + } + } + } + + /** + * 搜索器:会员交易记录我方订单号 + * @param $value + * @param $data + */ + public function searchOrderNumAttr($query, $value, $data) + { + if ($value) { + $query->where("order_num", "like", "%".$value."%"); + } + } + + /** + * 搜索器:会员交易记录支付平台订单号 + * @param $value + * @param $data + */ + public function searchPayNumAttr($query, $value, $data) + { + if ($value) { + $query->where("pay_num", "like", "%".$value."%"); + } + } + + /** + * 搜索器:会员交易记录支付方式 + * @param $value + * @param $data + */ + public function searchPayTypeAttr($query, $value, $data) + { + if ($value) { + $query->where("pay_type", $value); + } + } + + /** + * 搜索器:会员交易记录订单应付金额(元) + * @param $value + * @param $data + */ + public function searchPriceAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : $value[0]; + $end = empty($value[1]) ? 0 : $value[1]; + if ($start > 0 && $end > 0) { + $query->where([["price", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["price", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["price", "<=", $end]]); + } + } + + /** + * 搜索器:会员交易记录用户实际支付金额(元) + * @param $value + * @param $data + */ + public function searchCashFeeAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : $value[0]; + $end = empty($value[1]) ? 0 : $value[1]; + if ($start > 0 && $end > 0) { + $query->where([["cash_fee", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["cash_fee", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["cash_fee", "<=", $end]]); + } + } + + /** + * 搜索器:会员交易记录是否完成支付 + * @param $value + * @param $data + */ + public function searchPayStatusAttr($query, $value, $data) + { + if (in_array($value,[0,1])) { + $query->where("pay_status", $value); + } + } + + /** + * 搜索器:会员交易记录用户付款时间 + * @param $value + * @param $data + */ + public function searchPayTimeAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : strtotime($value[0] . '00:00:00'); + $end = empty($value[1]) ? 0 : strtotime($value[1] . '23:59:59'); + if ($start > 0 && $end > 0) { + $query->where([["pay_time", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["pay_time", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["pay_time", "<=", $end]]); + } + } + + /** + * 搜索器:会员交易记录创建时间 + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : strtotime($value[0] . '00:00:00'); + $end = empty($value[1]) ? 0 : strtotime($value[1] . '23:59:59'); + if ($start > 0 && $end > 0) { + $query->where([["create_time", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["create_time", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["create_time", "<=", $end]]); + } + } + + + + public function site() + { + return $this->hasOne(\app\model\site\Site::class, 'id', 'site_id'); + } + +public function user() + { + return $this->hasOne(\addon\hygl\app\model\user\User::class, 'id', 'user_id'); + } + + public function userCoupons() + { + return $this->hasOne(UserCoupons::class, 'id', 'user_coupons_id'); + } + + + + +} diff --git a/niucloud/addon/hygl/app/model/user/User.php b/niucloud/addon/hygl/app/model/user/User.php new file mode 100644 index 0000000..709e07d --- /dev/null +++ b/niucloud/addon/hygl/app/model/user/User.php @@ -0,0 +1,152 @@ +where("id", $value); + } + } + + /** + * 搜索器:会员管理联系电话 + * @param $value + * @param $data + */ + public function searchTelAttr($query, $value, $data) + { + if ($value) { + $query->where("tel", "like", "%".$value."%"); + } + } + + /** + * 搜索器:会员管理姓名 + * @param $value + * @param $data + */ + public function searchNameAttr($query, $value, $data) + { + if ($value) { + $query->where("name", "like", "%".$value."%"); + } + } + + /** + * 搜索器:会员管理密码 + * @param $value + * @param $data + */ + public function searchPasswordAttr($query, $value, $data) + { + if ($value) { + $query->where("password", $value); + } + } + + /** + * 搜索器:会员管理性别 + * @param $value + * @param $data + */ + public function searchSexAttr($query, $value, $data) + { + if ($value) { + $query->where("sex", $value); + } + } + + /** + * 搜索器:会员管理生日 + * @param $value + * @param $data + */ + public function searchBirthdayAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : strtotime($value[0]); + $end = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start > 0 && $end > 0) { + $query->where([["birthday", "between", [date('Y-m-d',$start), date('Y-m-d',$end)]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["birthday", ">=", date('Y-m-d',$start)]]); + } else if ($start == 0 && $end > 0) { + $query->where([["birthday", "<=", date('Y-m-d',$end)]]); + } + } + + /** + * 搜索器:会员管理是否展示 + * @param $value + * @param $data + */ + public function searchIsShowAttr($query, $value, $data) + { + if ($value) { + $query->where("is_show", $value); + } + } + + public function site() + { + return $this->hasOne(Site::class, 'site_id', 'site_id'); + } + + public function user(){ + return $this->hasOne(User::class, 'id', 'pid'); + } +} diff --git a/niucloud/addon/hygl/app/model/user_coupons/UserCoupons.php b/niucloud/addon/hygl/app/model/user_coupons/UserCoupons.php new file mode 100644 index 0000000..f47037e --- /dev/null +++ b/niucloud/addon/hygl/app/model/user_coupons/UserCoupons.php @@ -0,0 +1,157 @@ +where("user_id", "like", "%" . $value . "%"); + } + } + + /** + * 搜索器:用户优惠券卡券名字 + * @param $value + * @param $data + */ + public function searchCouponsIdAttr($query, $value, $data) + { + if ($value) { + $id_arr = Coupons::where("name", "like", "%" . $value . "%")->column('id'); + if ($id_arr) { + $query->whereIn('coupons_id', $id_arr); + } + } + } + + /** + * 搜索器:用户优惠券卡券面值 + * @param $value + * @param $data + */ + public function searchNominalValueAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : $value[0]; + $end = empty($value[1]) ? 0 : $value[1]; + $id_arr = []; + if ($start > 0 && $end > 0) { + $id_arr = Coupons::where([["nominal_value", "between", [$start, $end]]])->column('id'); + } else if ($start > 0 && $end == 0) { + $id_arr = Coupons::where([["nominal_value", ">=", $start]])->column('id'); + } else if ($start == 0 && $end > 0) { + $id_arr = Coupons::where([["nominal_value", "<=", $end]])->column('id'); + } + if ($id_arr) { + $query->whereIn('coupons_id', $id_arr); + } + } + + /** + * 搜索器:用户优惠券是否可用 + * @param $value + * @param $data + */ + public function searchIsShowAttr($query, $value, $data) + { + if ($value) { + $query->where("is_show", $value); + } + } + + /** + * 搜索器:用户优惠券创建时间 + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start = empty($value[0]) ? 0 : strtotime($value[0]); + $end = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start > 0 && $end > 0) { + $query->where([["create_time", "between", [$start, $end]]]); + } else if ($start > 0 && $end == 0) { + $query->where([["create_time", ">=", $start]]); + } else if ($start == 0 && $end > 0) { + $query->where([["create_time", "<=", $end]]); + } + } + + + public function site() + { + return $this->hasOne(\app\model\site\Site::class, 'site_id', 'site_id'); + } + + public function user() + { + return $this->hasOne(\addon\hygl\app\model\user\User::class, 'id', 'user_id'); + } + + public function coupons() + { + return $this->hasOne(Coupons::class, 'id', 'coupons_id'); + } + + + +// public function user(){ +// return $this->hasOne(User::class, 'user_id', 'id')->joinType('left')->withField('name,id')->bind(['user_id_name'=>'name']); +// } + +} diff --git a/niucloud/addon/hygl/app/service/admin/CommonService.php b/niucloud/addon/hygl/app/service/admin/CommonService.php new file mode 100644 index 0000000..12c2e42 --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/CommonService.php @@ -0,0 +1,138 @@ +site_id; + } + + public function uploadFile() + { + $file = $_FILES['file']; // 获取上传的文件 + $name = $file['name'];//上传文件的原名称 + + $path = $this->request->param('path', '');//表名_字段名的格式 如user_pic=user表pic字段 + if (!$file || !$path) { + return fail('缺少参数'); + } + + // 判断是否上传文件 + if (empty($file)) { + return '未选择要上传的文件'; + } + + $site_id = (new CommonService())->getSiteId();//获取站点id + + // 文件上传目录 + $date = date('Y_m_d'); + + $save_path = "addon/hygl/upload/{$path}/{$site_id}/{$date}/";//文件保存的路径,如:addon/hygl/upload/upload_files/ 就表示在根目录的public/addon/hygl/upload/upload_files/下 + + // 文件名(不包含扩展名) + $filename = time() . rand(1111, 9999); + // 扩展名 + $ext = pathinfo($file['name'], PATHINFO_EXTENSION); + + // 创建保存目录 + if (!is_dir($save_path)) { + mkdir($save_path, 0755, true); + } + + // 文件保存相对路径 + $save_file = $save_path . $filename . '.' . $ext; + + // 将上传的文件移动到指定位置 + if (!move_uploaded_file($file['tmp_name'], $save_file)) { + return '文件上传失败'; + } + + // 返回文件保存的信息给客户端 + $res = [ + 'name' => $name,//上传文件的原名称 + 'file_name' => $filename . '.' . $ext,//新文件名称 + 'file_path' => $save_file,//相对路径 + 'url' => get_file_url($save_file),//绝对路径 + ]; + return success('操作成功', $res); + } + + /** + * 添加配置项 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 配置项编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(array $data) + { + //检测数据是否存在,存在就编辑,不存在就添加 + $id = $this->model->where([['site_id', '=', $this->site_id]])->value('id'); + if ($id){ + //编辑 + $this->model->where([['site_id', '=', $this->site_id]])->update($data); + }else{ + //添加 + $data['site_id'] = $this->site_id; + $this->add($data); + } + + return true; + } + + /** + * 删除配置项 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/addon/hygl/app/service/admin/advertising/AdvertisingService.php b/niucloud/addon/hygl/app/service/admin/advertising/AdvertisingService.php new file mode 100644 index 0000000..75a230b --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/advertising/AdvertisingService.php @@ -0,0 +1,98 @@ +model = new Advertising(); + } + + /** + * 获取广告管理列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,site_id,img_url,skip_url,sort,create_time,update_time,delete_time'; + $order = 'sort desc'; + + $search_model = $this->model->where([ [ 'site_id' ,"=", $this->site_id ] ])->withSearch([''], $where)->field($field)->order($order);; + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取广告管理信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,img_url,skip_url,sort,create_time,update_time,delete_time'; + + $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray();; + return $info; + } + + /** + * 添加广告管理 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 广告管理编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->update($data); + return true; + } + + /** + * 删除广告管理 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/addon/hygl/app/service/admin/config/ConfigService.php b/niucloud/addon/hygl/app/service/admin/config/ConfigService.php new file mode 100644 index 0000000..45d5f07 --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/config/ConfigService.php @@ -0,0 +1,185 @@ +model = new Config(); + } + + /** + * 获取配置项列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,site_id,we_chat_pay_appid,we_chat_pay_app_id,we_chat_pay_miniapp_id,we_chat_pay_mch_id,we_chat_pay_key,we_chat_pay_miniapp_secret,we_chat_pay_notify_url,alipay_appId,alipay_rsa_private_key,alipay_public_key,alipay_notify_url,create_time,update_time,delete_time,we_chat_pay_mch_secret_cert,we_chat_pay_mch_public_cert_path'; + $order = 'id desc'; + + $search_model = $this->model->where([ [ 'site_id' ,"=", $this->site_id ] ])->withSearch([''], $where)->field($field)->order($order);; + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取配置项信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,h5_qrcode_url,we_chat_pay_appid,we_chat_pay_app_id,we_chat_pay_miniapp_id,we_chat_pay_mch_id,we_chat_pay_key,we_chat_pay_miniapp_secret,we_chat_pay_notify_url,alipay_appId,alipay_rsa_private_key,alipay_public_key,alipay_notify_url,create_time,update_time,delete_time,we_chat_pay_mch_secret_cert,we_chat_pay_mch_public_cert_path,h5_site_url'; + + $info = $this->model->field($field)->where('site_id', '=', $this->site_id)->findOrEmpty()->toArray(); + + //查看基础信息是否完全 + + if (!$info){ + //创建基础信息 + //添加 + $data['site_id'] = $this->site_id; + $dictionary = Dict::where('key','h5_site_url') + ->value('dictionary'); + $h5_site_url = json_decode($dictionary, true)[0]['value']; + $data['h5_site_url'] = "{$h5_site_url}?site_id={$this->site_id}";//h5站点地址 + + $we_chat_pay_notify_url = Dict::where('key', 'we_chat_pay_notify_url') + ->value('dictionary');//微信支付异步回调根路径 + $we_chat_pay_notify_url = json_decode($we_chat_pay_notify_url, true)[0]['value']; + $data['we_chat_pay_notify_url'] = "{$we_chat_pay_notify_url}/{$this->site_id}";//微信异步回调地址 + + $qRCode = $this->createUrlQRCode($data['h5_site_url']);//生成二维码 + $data['h5_qrcode_url'] =$qRCode['url']; + $this->add($data); + $info = $data; + } + + $info['ol_h5_qrcode_url'] = ''; + if (!empty($info['h5_qrcode_url'])){ + $info['ol_h5_qrcode_url'] = get_file_url($info['h5_qrcode_url']); + } + + return $info; + } + + /** + * 重新生成H5站点二维码 + * @param int $id + * @return array + */ + public function resetH5SiteQRCode(int $id) + { + //查询h5站点首页域名 + $h5_site_url = $this->model->where('id',$id)->value('h5_site_url'); + $res = $this->createUrlQRCode($h5_site_url); + return $res; + } + + //根据url生成二维码 + private function createUrlQRCode($url){ + $site_id = $this->site_id; + $date = date('Y_m_d'); + $path = "config_h5_qrcode_url"; + $save_path = "addon/hygl/upload/{$path}/{$site_id}/{$date}";//文件保存的路径, + // 创建保存目录 + if (!is_dir($save_path)) { + mkdir($save_path, 0755, true); + } + + //将网址url转成二维码 + // 创建一个QR码实例 + $code = new QRcode(); + $source_file = $code->png($url)->getPath();//生成二维码,并返回路径 + $source_file =ltrim($source_file,'/'); + return [ + 'url' => $source_file, + 'ol_url' => get_file_url($source_file) + ]; + } + + /** + * 添加配置项 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 配置项编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(array $data) + { + //检测数据是否存在,存在就编辑,不存在就添加 + $id = $this->model->where([['site_id', '=', $this->site_id]])->value('id'); + if ($id){ + //编辑 + $this->model->where([['site_id', '=', $this->site_id]])->update($data); + }else{ + //添加 + $data['site_id'] = $this->site_id; + $dictionary = Dict::where('key','h5_site_url') + ->value('dictionary'); + $h5_site_url = json_decode($dictionary, true)[0]['value']; + $data['h5_site_url'] = "{$h5_site_url}?site_id={$this->site_id}";//h5站点地址 + + $we_chat_pay_notify_url = Dict::where('key', 'we_chat_pay_notify_url') + ->value('dictionary');//微信支付异步回调根路径 + $we_chat_pay_notify_url = json_decode($we_chat_pay_notify_url, true)[0]['value']; + $data['we_chat_pay_notify_url'] = "{$we_chat_pay_notify_url}/{$this->site_id}";//微信异步回调地址 + + $qRCode = $this->createUrlQRCode($data['h5_site_url']);//生成二维码 + $data['h5_qrcode_url'] =$qRCode['url']; + $this->add($data); + } + + return true; + } + + /** + * 删除配置项 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/addon/hygl/app/service/admin/coupons/CouponsService.php b/niucloud/addon/hygl/app/service/admin/coupons/CouponsService.php new file mode 100644 index 0000000..d11e802 --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/coupons/CouponsService.php @@ -0,0 +1,131 @@ +model = new Coupons(); + } + + /** + * 获取优惠券列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { +// $field = 'id,site_id,name,nominal_value,stock,is_show,create_time,update_time,delete_time'; + $field = '*'; + $order = 'id desc'; + + $search_model = $this->model->where([['site_id', "=", $this->site_id]])->withSearch(["name", "nominal_value", "is_show"], $where)->field($field)->order($order); + $list = $this->pageQuery($search_model); + + foreach ($list['data'] as &$v){ + $v['valid_time'] = ''; + if (!empty($v['valid_from']) && !empty($v['valid_until'])) { + $date_1 = date('Y-m-d', $v['valid_from']); + $date_2 = date('Y-m-d', $v['valid_until']); + $v['valid_time'] = "{$date_1} - {$date_2}"; + } + + } + + return $list; + } + + /** + * 获取优惠券信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,name,nominal_value,stock,is_show,is_long_term_valid,valid_from,valid_until,create_time,update_time,delete_time,is_obsolete'; + $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + if ($info){ + $info['is_show'] = strval($info['is_show']);//转字符串 + $info['valid_time'] = []; + if (!$info['is_long_term_valid']){ + $date_1 = date('Y-m-d',$info['valid_from']); + $date_2 = date('Y-m-d',$info['valid_until']); + $info['valid_time'] = [$date_1,$date_2]; + } + } + return $info; + } + + /** + * 添加优惠券 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 优惠券编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + Db::startTrans(); + try{ + if (!empty($data['is_obsolete'])){ + //把用户中间表中所有与这个优惠券有关联的数据都改为作废 + UserCoupons::where('coupons_id',$id)->update([ + 'is_show'=>0, + ]); + } + $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->update($data); + Db::commit(); + }catch (\Exception $exception){ + Db::rollback(); + } + return true; + } + + /** + * 删除优惠券 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/addon/hygl/app/service/admin/transaction_history/TransactionHistoryService.php b/niucloud/addon/hygl/app/service/admin/transaction_history/TransactionHistoryService.php new file mode 100644 index 0000000..78de166 --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/transaction_history/TransactionHistoryService.php @@ -0,0 +1,126 @@ +model = new TransactionHistory(); + } + + /** + * 获取会员交易记录列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,site_id,user_id,remark,user_coupons_id,order_num,pay_num,pay_type,price,cash_fee,pay_status,pay_time,pay_data_json,create_time,update_time,delete_time'; + $order = 'id desc'; + $search_model = $this->model->where([['site_id', "=", $this->site_id]])->withSearch([ + "user_id" => function ($query, $value, $data) { + // 获取自定义参数 + $data['site_id'] = $this->site_id; + // 调用 searchUserIdAttr 方法并传递自定义参数 + $this->model->searchUserIdAttr($query, $value, $data); + }, + "order_num", "pay_num", "pay_type", "price", "cash_fee", "pay_status", "pay_time", "create_time"], $where)->field($field) + ->with([ + 'user' => function ($q) { + $q->field('id,name,tel'); + }, + 'userCoupons' => function ($q) { + $q->field('id,coupons_id')->with([ + 'coupons' => function ($cq) { + $cq->field('id,name'); + } + ]); + } + ]) + ->order($order); + $list = $this->pageQuery($search_model); + foreach ($list['data'] as &$v) { + if ($v['pay_time']) { + $v['pay_time'] = date('Y-m-d H:i:s', $v['pay_time']); + } + } + return $list; + } + + /** + * 获取会员交易记录信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,user_id,remark,order_num,pay_num,pay_type,price,cash_fee,pay_status,pay_time,pay_data_json,create_time,update_time,delete_time'; + + $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info['pay_status'] = strval($info['pay_status']); + if ($info['pay_time']) { + $info['pay_time'] = date('Y-m-d H:i:s', $info['pay_time']); + } + return $info; + } + + /** + * 添加会员交易记录 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 会员交易记录编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->update($data); + return true; + } + + /** + * 删除会员交易记录 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/addon/hygl/app/service/admin/user/UserService.php b/niucloud/addon/hygl/app/service/admin/user/UserService.php new file mode 100644 index 0000000..97a18ca --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/user/UserService.php @@ -0,0 +1,153 @@ +model = new User(); + } + + /** + * 获取会员管理列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,site_id,tel,name,pic,password,pid,level,wx_openid,wx_unionid,sex,birthday,is_show,create_time,update_time,delete_time'; + $order = 'id desc'; + $search_model = $this->model->where([['site_id', "=", $this->site_id]]) + ->withSearch(["id", "tel", "name", "password", "sex", "birthday", "is_show"], $where) + ->with([ + 'user' => function ($query) { + $query->field('id,pid,name')->withTrashed(); // 包含已被软删除的数据 + }, + ]) + ->field($field)->order($order); + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取会员管理信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,tel,name,pic,pid,level,wx_openid,wx_unionid,sex,birthday,is_show,create_time,update_time,delete_time'; + + $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info['sex'] = strval($info['sex']); + $info['is_show'] = strval($info['is_show']); + return $info; + } + + /** + * 添加会员管理 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 会员管理编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->update($data); + return true; + } + + /** + * 删除会员管理 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + + /** + * 根据pid计算对应的用户层级 + * @param int $pid 父级用户的id 0=顶级用户 + */ + public function createLevel(int $pid = 0){ + $level = 1;//1=顶级 + if ($pid >= 1){ + //根据pid查询父级用户的level,然后父级的level+1就是新用户的层级 + $level = $this->model->where('id',$pid)->value('level') ?? 1; + $level = $level + 1; + } + return $level; + } + + /** + * 检测手机号是否存在 + * @param $tel 手机号 + * @param null $id 医生id,有值则排除当前用户 + * @return bool + */ + public function isTelExist($tel,$id=null){ + $data = $this->model->where('tel',$tel) + ->where('site_id',$this->site_id); + if ($id){ + $data =$data->where('id','<>',$id); + } + $data = $data->value('id'); + + if ($data){ + return true;//手机号存在 + } + return false;//手机号不存在 + } + + public function getSiteAll(){ + $siteModel = new Site(); + return $siteModel->where([["site_id","=",$this->site_id]])->select()->toArray(); + } + + public function getUserAll(){ + $userModel = new User(); + return $userModel->where([["site_id","=",$this->site_id]])->select()->toArray(); + } + + + +} diff --git a/niucloud/addon/hygl/app/service/admin/user_coupons/UserCouponsService.php b/niucloud/addon/hygl/app/service/admin/user_coupons/UserCouponsService.php new file mode 100644 index 0000000..1a5edeb --- /dev/null +++ b/niucloud/addon/hygl/app/service/admin/user_coupons/UserCouponsService.php @@ -0,0 +1,131 @@ +model = new UserCoupons(); + } + + /** + * 获取用户优惠券列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,user_id,site_id,coupons_id,is_show,create_time,update_time,delete_time'; + $order = 'id desc'; + + $search_model = $this->model->where([ [ 'site_id' ,"=", $this->site_id ] ]) + ->withSearch(['"user_id","coupons_id","nominal_value","is_show","create_time"'], $where) + ->with([ + 'user'=>function($q){ + $q->field('id,name')->withTrashed(); // 包含已被软删除的数据 + }, + 'coupons'=>function($q){ + $q->withTrashed(); // 包含已被软删除的数据 + }, + + ]) + ->field($field) + ->order($order);; + $list = $this->pageQuery($search_model); + + foreach ($list['data'] as &$v){ + $v['valid_time'] = ''; + if (!empty($v['coupons'])){ + if ($v['coupons']['is_long_term_valid'] == 1){ + $v['valid_time'] = '长期有效'; + }else{ + $data_1 = date('Y-m-d',$v['coupons']['valid_from']); + $data_2 = date('Y-m-d',$v['coupons']['valid_until']); + $v['valid_time'] = "{$data_1}-{$data_2}"; + } + } + } + + return $list; + } + + /** + * 获取用户优惠券信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,user_id,site_id,coupons_id,is_show,create_time,update_time,delete_time'; + + $info = $this->model->field($field)->where([['id', "=", $id]])->with('user')->findOrEmpty()->toArray(); + $info['is_show'] = strval($info['is_show']); + return $info; + } + + /** + * 添加用户优惠券 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 用户优惠券编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->update($data); + return true; + } + + /** + * 删除用户优惠券 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['id', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + + public function getUserAll(){ + $userModel = new User(); + return $userModel->where([["site_id","=",$this->site_id]])->select()->toArray(); + } + +} diff --git a/niucloud/addon/hygl/app/validate/advertising/Advertising.php b/niucloud/addon/hygl/app/validate/advertising/Advertising.php new file mode 100644 index 0000000..f765c3a --- /dev/null +++ b/niucloud/addon/hygl/app/validate/advertising/Advertising.php @@ -0,0 +1,38 @@ + 'require', + 'sort' => 'require|between:1,9999', + ]; + + protected $message = [ + 'img_url.require' => ['common_validate.require', ['img_url']], + 'sort.require' => ['common_validate.require', ['sort']], + 'sort.between' => ['common_validate.between', ['sort','1','9999']], + ]; + + protected $scene = [ + "add" => ['img_url', 'skip_url', 'sort'], + "edit" => ['img_url', 'skip_url', 'sort'] + ]; + +} diff --git a/niucloud/addon/hygl/app/validate/config/Config.php b/niucloud/addon/hygl/app/validate/config/Config.php new file mode 100644 index 0000000..e506868 --- /dev/null +++ b/niucloud/addon/hygl/app/validate/config/Config.php @@ -0,0 +1,42 @@ + 'require', +// 'alipay_notify_url' => 'require', + 'we_chat_pay_mch_secret_cert' => 'require', + 'we_chat_pay_mch_public_cert_path' => 'require', + ]; + + protected $message = [ + 'we_chat_pay_notify_url.require' => ['common_validate.require', ['we_chat_pay_notify_url']], +// 'alipay_notify_url.require' => ['common_validate.require', ['alipay_notify_url']], + + 'we_chat_pay_mch_secret_cert.require' => ['common_validate.require', ['we_chat_pay_mch_secret_cert']], + 'we_chat_pay_mch_public_cert_path.require' => ['common_validate.require', ['we_chat_pay_mch_public_cert_path']], + ]; + + protected $scene = [ + "add" => ['we_chat_pay_appid', 'we_chat_pay_app_id', 'we_chat_pay_miniapp_id', 'we_chat_pay_mch_id', 'we_chat_pay_key', 'we_chat_pay_miniapp_secret', 'we_chat_pay_notify_url', 'alipay_appId', 'alipay_rsa_private_key', 'alipay_public_key', + 'alipay_notify_url'], + "edit" => ['we_chat_pay_appid', 'we_chat_pay_app_id', 'we_chat_pay_miniapp_id', 'we_chat_pay_mch_id', 'we_chat_pay_key', 'we_chat_pay_miniapp_secret', 'we_chat_pay_notify_url', 'alipay_appId', 'alipay_rsa_private_key', 'alipay_public_key', 'alipay_notify_url'] + ]; + +} diff --git a/niucloud/addon/hygl/app/validate/coupons/Coupons.php b/niucloud/addon/hygl/app/validate/coupons/Coupons.php new file mode 100644 index 0000000..f783985 --- /dev/null +++ b/niucloud/addon/hygl/app/validate/coupons/Coupons.php @@ -0,0 +1,43 @@ + 'require', + 'nominal_value' => 'require|between:0,999999', + 'stock' => 'require|between:0,99999', + 'is_show' => 'require', + ]; + + protected $message = [ + 'name.require' => ['common_validate.require', ['name']], + 'nominal_value.require' => ['common_validate.require', ['nominal_value']], + 'nominal_value.between' => ['common_validate.between', ['nominal_value','0','999999']], + 'stock.require' => ['common_validate.require', ['stock']], + 'stock.between' => ['common_validate.between', ['stock','0','99999']], + 'is_show.require' => ['common_validate.require', ['is_show']], + ]; + + protected $scene = [ + "add" => ['name', 'nominal_value', 'stock', 'is_show'], + "edit" => ['name', 'nominal_value', 'stock', 'is_show'] + ]; + +} diff --git a/niucloud/addon/hygl/app/validate/transaction_history/TransactionHistory.php b/niucloud/addon/hygl/app/validate/transaction_history/TransactionHistory.php new file mode 100644 index 0000000..67c3468 --- /dev/null +++ b/niucloud/addon/hygl/app/validate/transaction_history/TransactionHistory.php @@ -0,0 +1,46 @@ + 'require', + 'order_num' => 'require', + 'pay_type' => 'require', + 'price' => 'require|between:0,99999', + 'cash_fee' => 'between:0,99999', + 'pay_status' => 'require', + ]; + + protected $message = [ + 'user_id.require' => ['common_validate.require', ['user_id']], + 'order_num.require' => ['common_validate.require', ['order_num']], + 'pay_type.require' => ['common_validate.require', ['pay_type']], + 'price.require' => ['common_validate.require', ['price']], + 'price.between' => ['common_validate.between', ['price','0','99999']], + 'cash_fee.between' => ['common_validate.between', ['cash_fee','0','99999']], + 'pay_status.require' => ['common_validate.require', ['pay_status']], + ]; + + protected $scene = [ + "add" => ['user_id', 'remark', 'order_num', 'pay_num', 'pay_type', 'price', 'cash_fee', 'pay_status', 'pay_time', 'pay_data_json'], + "edit" => ['user_id', 'remark', 'order_num', 'pay_num', 'pay_type', 'price', 'cash_fee', 'pay_status', 'pay_time', 'pay_data_json'] + ]; + +} diff --git a/niucloud/addon/hygl/app/validate/user/User.php b/niucloud/addon/hygl/app/validate/user/User.php new file mode 100644 index 0000000..e89c1cc --- /dev/null +++ b/niucloud/addon/hygl/app/validate/user/User.php @@ -0,0 +1,45 @@ + 'require', + 'name' => 'require', + 'pid' => 'require', + 'level' => 'require', + 'sex' => 'require', + 'is_show' => 'require', + ]; + + protected $message = [ + 'tel.require' => ['common_validate.require', ['tel']], + 'name.require' => ['common_validate.require', ['name']], + 'pid.require' => ['common_validate.require', ['pid']], + 'level.require' => ['common_validate.require', ['level']], + 'sex.require' => ['common_validate.require', ['sex']], + 'is_show.require' => ['common_validate.require', ['is_show']], + ]; + + protected $scene = [ + "add" => ['tel', 'name', 'pic', 'password', 'pid', 'level', 'wx_openid', 'wx_unionid', 'sex', 'birthday', 'is_show'], + "edit" => ['tel', 'name', 'pic', 'password', 'pid', 'level', 'wx_openid', 'wx_unionid', 'sex', 'birthday', 'is_show'] + ]; + +} diff --git a/niucloud/addon/hygl/app/validate/user_coupons/UserCoupons.php b/niucloud/addon/hygl/app/validate/user_coupons/UserCoupons.php new file mode 100644 index 0000000..beca338 --- /dev/null +++ b/niucloud/addon/hygl/app/validate/user_coupons/UserCoupons.php @@ -0,0 +1,41 @@ + 'require', + 'coupons_id' => 'require', + 'is_show' => 'require', + ]; + + protected $message = [ + 'user_id.require' => ['common_validate.require', ['user_id']], + 'coupons_id.require' => ['common_validate.require', ['coupons_id']], + 'is_show.require' => ['common_validate.require', ['is_show']], + ]; + + protected $scene = [ + "add" => ['user_id', 'coupons_id', 'is_show'], + "edit" => ['user_id', 'coupons_id', 'is_show'] + ]; + +} diff --git a/niucloud/addon/hygl/info.json b/niucloud/addon/hygl/info.json new file mode 100644 index 0000000..dfc1709 --- /dev/null +++ b/niucloud/addon/hygl/info.json @@ -0,0 +1,10 @@ +{ + "title": "会员管理系统", + "desc": "", + "key": "hygl", + "version": "1.0.0", + "author": "836164388@qq.com", + "type": "app", + "support_app": "", + "compile":[] +} diff --git a/niucloud/addon/hygl/package/uni-app-pages.php b/niucloud/addon/hygl/package/uni-app-pages.php new file mode 100644 index 0000000..084983d --- /dev/null +++ b/niucloud/addon/hygl/package/uni-app-pages.php @@ -0,0 +1,14 @@ + << + {{helloWorld}} + + + + diff --git a/niucloud/addon/hygl/web/api/hello_world.ts b/niucloud/addon/hygl/web/api/hello_world.ts new file mode 100644 index 0000000..f2bb07e --- /dev/null +++ b/niucloud/addon/hygl/web/api/hello_world.ts @@ -0,0 +1,8 @@ + +/** + * hello world + */ +export function getHelloWorld() { + return request.get('hygl/hello_world') +} + diff --git a/niucloud/addon/hygl/web/lang/zh-cn/hello_world.index.json b/niucloud/addon/hygl/web/lang/zh-cn/hello_world.index.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/niucloud/addon/hygl/web/lang/zh-cn/hello_world.index.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/niucloud/addon/hygl/web/lang/zh-cn/pages.json b/niucloud/addon/hygl/web/lang/zh-cn/pages.json new file mode 100644 index 0000000..31c7003 --- /dev/null +++ b/niucloud/addon/hygl/web/lang/zh-cn/pages.json @@ -0,0 +1,9 @@ +{ + "pages": { + "hygl": { + "hello_world": { + "index": "hello_world" + } + } + } +} \ No newline at end of file diff --git a/niucloud/addon/hygl/web/pages/hello_world/index.vue b/niucloud/addon/hygl/web/pages/hello_world/index.vue new file mode 100644 index 0000000..a727bf3 --- /dev/null +++ b/niucloud/addon/hygl/web/pages/hello_world/index.vue @@ -0,0 +1,15 @@ + + + + diff --git a/niucloud/addon/hygl/web/pages/routes.ts b/niucloud/addon/hygl/web/pages/routes.ts new file mode 100644 index 0000000..446c584 --- /dev/null +++ b/niucloud/addon/hygl/web/pages/routes.ts @@ -0,0 +1,6 @@ +export default [ + { + path: "/hygl/hello_world/index", + component: () => import('~/addon/hygl/pages/hello_world/index.vue') + } +] diff --git a/niucloud/app/.htaccess b/niucloud/app/.htaccess new file mode 100644 index 0000000..3418e55 --- /dev/null +++ b/niucloud/app/.htaccess @@ -0,0 +1 @@ +deny from all \ No newline at end of file diff --git a/niucloud/app/AppService.php b/niucloud/app/AppService.php new file mode 100644 index 0000000..96556e8 --- /dev/null +++ b/niucloud/app/AppService.php @@ -0,0 +1,22 @@ +isIgnoreReport($e)) { + $data = [ + 'file' => $e->getFile(), + 'line' => $e->getLine(), + 'message' => $e->getMessage(), + 'trace' => $e->getTrace(), + 'previous' => $e->getPrevious(), + ]; + //这个类可能会分开拆成两个 + $app_type = request()->appType() ; + $app_type = empty($app_type) ? str_replace('/', '', request()->rootUrl()) : $app_type; + //写入日志内容 + $log = [ + '服务主体:'.($app_type == AppTypeDict::ADMIN ? request()->uid() : request()->memberId()),//服务发起者 //用户ID + 'IP:'.request()->ip(),//ip + '耗时(毫秒):'.ceil((microtime(true) * 1000) - (request()->time(true) * 1000)),//耗时(毫秒) + '请求类型:'.request()->method(),//请求类型 + '应用:'.$app_type,//应用 + '路由:'.request()->baseUrl(),//路由 + '请求参数:'.json_encode(request()->param() ?? []),//请求参数 + '错误信息:'.json_encode($data),//错误信息 + ]; + Log::write('DEBUG:>>>>>>>>>'.PHP_EOL.implode(PHP_EOL, $log).PHP_EOL.'---------', 'error'); + } + } + + /** + * Render an exception into an HTTP response. + * @access public + * @param \think\Request $request + * @param Throwable $e + * @return Response + */ + public function render($request, Throwable $e): Response + { + // 添加自定义异常处理机制 + $massageData = env('app_debug', false) ? [ + 'file' => $e->getFile(), + 'line' => $e->getLine(), + 'message' => $e->getMessage(), + 'trace' => $e->getTrace(), + 'previous' => $e->getPrevious(), + ] : []; + // 添加自定义异常处理机制 + + if ($e instanceof DbException) { + return fail(get_lang('DATA_GET_FAIL').':'.$e->getMessage(), [ + 'file' => $e->getFile(), + 'line' => $e->getLine(), + 'message' => $e->getMessage(), + 'trace' => $e->getTrace(), + 'previous' => $e->getPrevious(), + ]); + } elseif ($e instanceof ValidateException) { + return fail($e->getMessage()); + } else if($e instanceof UnexpectedValueException){ + return fail($e->getMessage(), [], 401); + }else if($e instanceof AuthException){ + return fail($e->getMessage(), [], $e->getCode() ?: 400); + }else if($e instanceof ServerException){ + return fail($e->getMessage(), http_code:$e->getCode()); + }else { + return fail($e->getMessage(), $massageData); + } + } +} diff --git a/niucloud/app/Request.php b/niucloud/app/Request.php new file mode 100644 index 0000000..d4a356f --- /dev/null +++ b/niucloud/app/Request.php @@ -0,0 +1,221 @@ +paramFilter($this->param($key, $default, $filter_rule ?? ''), $item_filter); + //过滤后产生空字符串,按照默认值 + if($input[$name] === '') + { + $input[$name] = $default; + } + } + return $input; + } + + /** + * 参数过滤 + * @param $param + * @param bool $filter + * @return array|string|string[]|null + */ + public function paramFilter($param, bool $filter = true) + { + if (!$param || !$filter || !is_string($param)) return $param; + // 把数据过滤 + $filter_rule = [ + "/<(\\/?)(script|i?frame|style|html|body|title|link|meta|object|\\?|\\%)([^>]*?)>/isU", + "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU", + "/select|join|where|drop|like|modify|rename|insert|update|table|database|alter|truncate|\'|\/\*|\.\.\/|\.\/|union|into|load_file|outfile/is" + ]; + return preg_replace($filter_rule, '', $param); + } + + /** + * 获取登录用户的uid + * @param int $uid + * @return int|mixed|void + */ + public function uid(int $uid = 0) + { + if ($uid > 0) { + static::$auth_info['uid'] = $uid; + } else { + return static::$auth_info['uid'] ?? 0; + } + } + + + /** + * 获取登录会员的id + */ + public function memberId(int $member_id = 0) + { + if ($member_id > 0) { + static::$auth_info['member_id'] = $member_id; + } else { + return static::$auth_info['member_id'] ?? 0; + } + } + + /** + * 站点id + * @param int|string|null $site_id + * @return int + */ + public function siteId(int|string|null $site_id = 0) + { + if ($site_id > 0) { + static::$site_id = (int)$site_id; + return $site_id; + } else { + return static::$site_id ?? $this->defaultSiteId(); + } + } + + /** + * 用户账号 + * @param string $username + * @return int|mixed + */ + public function username(string $username = '') + { + if (!empty($username)) { + static::$auth_info['username'] = $username; + return $username; + } else { + return static::$auth_info['username'] ?? ''; + } + } + + + /** + * 定义站点类型 + * @param string $app_type + * @return mixed|string + */ + public function appType(string $app_type = ''){ + if (!empty($app_type)) { + static::$auth_info['app_type'] = $app_type; + return $app_type; + } else { + return static::$auth_info['app_type'] ?? ''; + } + } + + /** + * 获取管理端token + * @return array|string|null + */ + public function adminToken(){ + return $this->header(system_name('admin_token_name')); + } + + + /** + * 获取会员token + * @return array|string|null + */ + public function apiToken(){ + return $this->header(system_name('api_token_name')); + } + + /** + * 平台site_id + * @return array|string|null + */ + public function adminSiteId(){ + return $this->header(system_name('admin_site_id_name')); + } + + /** + * 客户端site_id + * @return array|string|null + */ + public function apiSiteId(){ + return $this->header(system_name('api_site_id_name')); + } + + /** + * 获取场景 + * @return array|string + */ + public function getChannel(){ + return $this->header(system_name('channel_name'), ChannelDict::H5); + } + + /** + * 获取默认站点 + * @return int + */ + public function defaultSiteId(){ + return 0; + } + + /** + * get传参追加值 + * @param $data + * @return void + */ + public function pushGet($data){ + $param = $this->get(); + $this->withGet(array_merge($param, $data)); + } + + /** + * header传参追加值 + * @param $data + * @return void + */ + public function pushHeader($data){ + $param = $this->header(); + $this->withHeader(array_merge($param, $data)); + } + + /** + * 授权信息 + * @param $key + * @param $value + * @return mixed|string|void + */ + public function auth($key, $value = ''){ + if (!empty($value)) { + static::$auth_info[$key] = $value; + } else { + return static::$auth_info[$key] ?? ''; + } + } +} diff --git a/niucloud/app/adminapi/config/config.php b/niucloud/app/adminapi/config/config.php new file mode 100644 index 0000000..9c7de88 --- /dev/null +++ b/niucloud/app/adminapi/config/config.php @@ -0,0 +1,15 @@ + 'json', +]; \ No newline at end of file diff --git a/niucloud/app/adminapi/config/route.php b/niucloud/app/adminapi/config/route.php new file mode 100644 index 0000000..28a8a0f --- /dev/null +++ b/niucloud/app/adminapi/config/route.php @@ -0,0 +1,21 @@ + true, + // 合并路由规则 + 'route_rule_merge' => true, + // 路由是否完全匹配 + 'route_complete_match' => true, + // 是否自动转换URL中的控制器和操作名 + 'url_convert' => false, +]; diff --git a/niucloud/app/adminapi/controller/addon/Addon.php b/niucloud/app/adminapi/controller/addon/Addon.php new file mode 100644 index 0000000..80a669b --- /dev/null +++ b/niucloud/app/adminapi/controller/addon/Addon.php @@ -0,0 +1,186 @@ +getLocalAddonList()); + } + + /** + * 安装插件 + * @param string $addon + */ + public function install($addon) + { + return success((new AddonService())->install($addon)); + } + + /** + * 云安装插件 + * @param $addon + * @return Response + */ + public function cloudInstall($addon) + { + return success(data:(new AddonService())->cloudInstall($addon)); + } + + /** + * 获取安装任务 + * @return Response + */ + public function getInstallTask() { + return success(data:(new AddonService())->getInstallTask()); + } + + /** + * 获取云安装日志 + * @param $addon + * @return mixed + */ + public function cloudInstallLog($addon) { + return success(data:(new AddonService())->cloudInstallLog($addon)); + } + + /** + * 插件安装环境检测 + * @param $addon + * @return Response + */ + public function installCheck($addon) + { + return success(data:(new AddonService())->installCheck($addon)); + } + + /** + * 取消安装 + * @param $addon + * @return mixed + */ + public function cancleInstall($addon) + { + return success(data:(new AddonService())->cancleInstall($addon)); + } + + /** + * 卸载插件 + * @param string $addon + */ + public function uninstall($addon) + { + (new AddonService())->uninstall($addon); + return success('ADDON_UNINSTALL_SUCCESS'); + } + + /** + * 插件安装环境检测 + * @param $addon + * @return Response + */ + public function uninstallCheck($addon) + { + return success(data:(new AddonService())->uninstallCheck($addon)); + } + + /** + * 插件列表 + * @return Response + */ + public function lists() + { + $data = $this->request->params([ + ['title', ''], + ]); + return success((new AddonService())->getPage($data)); + } + + /** + * 插件详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new AddonService())->getInfo($id)); + } + + /** + * 设置插件状态 + * @param int $id + * @param int $status + * @return Response + */ + public function setStatus(int $id, int $status) + { + (new AddonService())->setStatus($id, $status); + return success('SET_SUCCESS'); + } + + /** + * 下载插件 + * @param $app_key + * @return Response + */ + public function download($addon){ + $data = $this->request->params([ + ['version', ''] + ]); + (new AddonService())->download($addon, $data['version']); + return success('DOWNLOAD_SUCCESS'); + } + + /** + * 查询已安装插件 + * @return Response + */ + public function getInstallList(){ + return success(data:(new AddonService())->getInstallList()); + } + + /** + * 查询已安装有效应用 + */ + public function getAddonList() + { + return success((new CoreAddonService())->getInstallAddonList()); + } + + /** + * 插件类型 + * @return Response + */ + public function getType(){ + return success(AddonDict::getType()); + } + + /** + * 更新插件 + * @param $app_key + * @return Response + */ + public function upgrade($addon = ''){ + return success('DOWNLOAD_SUCCESS', (new AddonService())->upgrade($addon)); + } +} diff --git a/niucloud/app/adminapi/controller/addon/AddonDevelop.php b/niucloud/app/adminapi/controller/addon/AddonDevelop.php new file mode 100644 index 0000000..a79ad5b --- /dev/null +++ b/niucloud/app/adminapi/controller/addon/AddonDevelop.php @@ -0,0 +1,126 @@ +request->params([ + ['search', ''] + ]); + return success((new AddonDevelopService())->getList($data['search'])); + } + + + public function info($key) + { + return success((new AddonDevelopService())->getInfo($key)); + } + /** + * 开发插件新增 + * @return Response + */ + public function add(string $key) + { + $data = $this->request->params([ + ['title', ''], + ['desc', ''], + ['icon', ''], + ['cover', ''], + ['key', ''], + ['author', ''], + ['version', ''], + ['type', ''], + ['support_app', ''], + ], false); + $data['key'] = $key; + $this->validate($data, 'app\validate\addon\AddonDevelop.add'); + (new AddonDevelopService())->add($key, $data); + return success('ADD_SUCCESS'); + } + + /** + * 开发插件更新 + * @param string $id + * @return Response + */ + public function edit(string $key) + { + $data = $this->request->params([ + ['title', ''], + ['desc', ''], + ['icon', ''], + ['cover', ''], + ['key', ''], + ['author', ''], + ['version', ''], + ['type', ''], + ['support_app', ''], + ], false); + $data['key'] = $key; + $this->validate($data, 'app\validate\addon\AddonDevelop.edit'); + (new AddonDevelopService())->edit($key, $data); + return success('EDIT_SUCCESS'); + } + + + /** + * 删除开发插件 + * @param $key + * @return Response + */ + public function del(string $key) + { + (new AddonDevelopService())->del($key); + return success('DELETE_SUCCESS'); + } + + /** + *校验key是否被占用 + * @param $key + * @return void + */ + public function checkKey($key){ + return success(data:(new AddonDevelopService())->checkKey($key)); + } + + /** + * 打包 + * @param $key + * @return Response + */ + public function build($key){ + (new AddonDevelopService())->build($key); + return success(); + } + + /** + * 下载 + * @param $key + * @return Response + */ + public function download($key){ + + return success(data:(new AddonDevelopService())->download($key)); + } + +} diff --git a/niucloud/app/adminapi/controller/addon/App.php b/niucloud/app/adminapi/controller/addon/App.php new file mode 100644 index 0000000..f8e42c9 --- /dev/null +++ b/niucloud/app/adminapi/controller/addon/App.php @@ -0,0 +1,28 @@ +getAppList()); + } + +} diff --git a/niucloud/app/adminapi/controller/addon/Upgrade.php b/niucloud/app/adminapi/controller/addon/Upgrade.php new file mode 100644 index 0000000..26b17cf --- /dev/null +++ b/niucloud/app/adminapi/controller/addon/Upgrade.php @@ -0,0 +1,71 @@ +upgrade($addon)); + } + + /** + * 执行升级 + * @param $app_key + * @return Response + */ + public function execute($addon = ''){ + return success(data:(new UpgradeService())->execute()); + } + + /** + * 获取升级内容 + * @param $addon + * @return Response + */ + public function getUpgradeContent($addon = '') { + return success(data:(new UpgradeService())->getUpgradeContent($addon)); + } + + /** + * 获取正在进行的升级任务 + * @return Response + */ + public function getUpgradeTask() { + return success(data:(new UpgradeService())->getUpgradeTask()); + } + + /** + * 升级前环境检测 + * @param $addon + * @return Response + */ + public function upgradePreCheck($addon = '') { + return success(data:(new UpgradeService())->upgradePreCheck($addon)); + } + + /** + * 清除 + * @return Response + */ + public function clearUpgradeTask() { + return success(data:(new UpgradeService())->clearUpgradeTask()); + } +} diff --git a/niucloud/app/adminapi/controller/aliapp/Config.php b/niucloud/app/adminapi/controller/aliapp/Config.php new file mode 100644 index 0000000..561b386 --- /dev/null +++ b/niucloud/app/adminapi/controller/aliapp/Config.php @@ -0,0 +1,58 @@ +getAliappConfig()); + } + + /** + * 设置支付宝配置信息 + * @return Response + */ + public function set() + { + $data = $this->request->params([ + ['name', ''], + ['app_id', ''], + ['private_key', ''], + ['aes_key', ''], + ['public_key_crt', ''], + ['alipay_public_key_crt', ''], + ['alipay_with_crt', ''], + ['qrcode', ''] + ]); +// $this->validate($data, 'app\validate\channel\Aliapp.set'); + (new AliappConfigService())->setAliappConfig($data); + return success('SET_SUCCESS'); + } + + /** + * 静态资源 + * @return Response + */ + public function static() + { + return success((new AliappConfigService())->static()); + } +} diff --git a/niucloud/app/adminapi/controller/applet/SiteVersion.php b/niucloud/app/adminapi/controller/applet/SiteVersion.php new file mode 100644 index 0000000..01488e9 --- /dev/null +++ b/niucloud/app/adminapi/controller/applet/SiteVersion.php @@ -0,0 +1,65 @@ +request->params([ + + ]); + return success((new AppletVersionSiteService())->getPage($data)); + } + + /** + * 详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new AppletVersionSiteService())->getInfo($id)); + } + + /** + * 查询最后一个下载或升级的版本 + * @param string $type + * @return Response + */ + public function getLastVersion(string $type) + { + return success((new AppletVersionSiteService())->getLastVersion($type)); + } + + /** + * 查看可升级的最高版本 + * @param string $type + * @return Response + */ + public function getUpgradeVersion(string $type) + { + return success((new AppletVersionSiteService())->getUpgradeVersion($type)); + } + +} diff --git a/niucloud/app/adminapi/controller/applet/Version.php b/niucloud/app/adminapi/controller/applet/Version.php new file mode 100644 index 0000000..5fd69e4 --- /dev/null +++ b/niucloud/app/adminapi/controller/applet/Version.php @@ -0,0 +1,116 @@ +request->params([ + + ]); + return success((new AppletVersionService())->getPage($data)); + } + + /** + * 详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new AppletVersionService())->getInfo($id)); + } + + /** + * 添加 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['type', ''], + ['desc', ''], + ['status', ''], + ['path', ''], + ['version', ''], + ]); + $id = (new AppletVersionService())->add($data); + return success('ADD_SUCCESS'); + } + + /** + * 编辑 + * @param int $id + * @return Response + */ + public function edit(int $id) + { + $data = $this->request->params([ + ['desc', ''], + ['status', ''], + ['path', ''], + ['version', ''], + ]); + + (new AppletVersionService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new AppletVersionService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 设置状态 + * @param int $id + * @param $status + * @return Response + */ + public function setStatus(int $id, $status) + { + (new AppletVersionService())->setStatus($id, $status); + return success('EDIT_SUCCESS'); + } + + /** + * 小程序包上传 + * @return Response + * @throws Exception + */ + public function upload() + { + $data = $this->request->params([ + ['file', 'file'], + ]); + return success(data: (new AppletVersionService())->upload($data['file'])); + } +} diff --git a/niucloud/app/adminapi/controller/applet/VersionDownload.php b/niucloud/app/adminapi/controller/applet/VersionDownload.php new file mode 100644 index 0000000..ee1a522 --- /dev/null +++ b/niucloud/app/adminapi/controller/applet/VersionDownload.php @@ -0,0 +1,35 @@ +download($id); + } + + +} diff --git a/niucloud/app/adminapi/controller/auth/Auth.php b/niucloud/app/adminapi/controller/auth/Auth.php new file mode 100644 index 0000000..420af37 --- /dev/null +++ b/niucloud/app/adminapi/controller/auth/Auth.php @@ -0,0 +1,109 @@ +request->params([ + ['addon', 'all'], + ]); + return success((new AuthService())->getAuthMenuList(1, $data['addon'])); + } + + /** + * 获取当前站点支持的应用 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAuthAddonList(){ + return success((new AuthSiteService())->getAuthAddonList()); + } + /** + * 获取登录用户信息 + * @return Response + */ + public function get() + { + return success((new AuthService())->getAuthInfo()); + } + + + /** + * 修改登录用户信息 + * @param $field + * @return Response + */ + public function modify($field) + { + $data = $this->request->params([ + ['value', ''], + ['field', $field] + ]); +// $this->validate($data, 'app\validate\sys\User.modify'); + (new AuthService())->modifyAuth($field, $data['value']); + return success('MODIFY_SUCCESS'); + } + + + /** + * 更新用户 + */ + public function edit() + { + $data = $this->request->params([ + ['real_name', ''], + ['head_img', ''], + ['password', ''], + ['original_password', ''] + ]); + (new AuthService())->editAuth($data); + return success('MODIFY_SUCCESS'); + } + + /** + * 获取当前登录站点信息 + * @return Response + */ + public function site() + { + return success((new AuthSiteService())->getSiteInfo()); + } + + /** + * 选择可以选择的页面 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getShowMenuList() + { + return success((new AuthSiteService())->getShowMenuList()); + } +} diff --git a/niucloud/app/adminapi/controller/channel/H5.php b/niucloud/app/adminapi/controller/channel/H5.php new file mode 100644 index 0000000..95b8434 --- /dev/null +++ b/niucloud/app/adminapi/controller/channel/H5.php @@ -0,0 +1,42 @@ +getH5()); + } + + /** + * 设置H5配置信息 + * @return Response + */ + public function set() + { + $data = $this->request->params([ + ['is_open', 0], + ]); + + (new H5Service())->setH5($data); + return success('SET_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/dict/Dict.php b/niucloud/app/adminapi/controller/dict/Dict.php new file mode 100644 index 0000000..5a07fd3 --- /dev/null +++ b/niucloud/app/adminapi/controller/dict/Dict.php @@ -0,0 +1,119 @@ +request->params([ + ["name",""], + ["key",""] + ]); + return success((new DictService())->getPage($data)); + } + + /** + * 数据字典详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new DictService())->getInfo($id)); + } + + /** + * 添加数据字典 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["name",""], + ["key",""], + ["memo",""], + ["dictionary", ""] + ]); +// $this->validate($data, 'app\validate\dict\Dict.add'); + $id = (new DictService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 数据字典编辑 + * @param $id 数据字典id + * @return \think\Response + */ + public function edit($id){ + $data = $this->request->params([ + ["name",""], + ["key",""], + ["memo",""], + ]); +// $this->validate($data, 'app\validate\dict\Dict.edit'); + (new DictService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 数据字典删除 + * @param $id 数据字典id + * @return \think\Response + */ + public function del(int $id){ + (new DictService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 添加数据字典内容 + */ + public function addDictData($id) + { + $data = $this->request->params([ + ["dictionary",'[]'], + ]); +// $this->validate($data, 'app\validate\dict\Dict.add'); + $data['dictionary'] = json_encode($data['dictionary'], true); + (new DictService())->edit($id,$data); + return success('ADD_SUCCESS'); + } + + /** + * 获取全部数据字典 + * @return \think\Response + */ + public function getAll(){ + return success((new DictService())->getAll()); + } + + /** + * 数据字典详情 + * @param key 数据字典关键字 + * @return \think\Response + */ + public function getKeyInfo(string $type){ + $res = (new DictService())->getKeyInfo($type); + return success($res); + } +} diff --git a/niucloud/app/adminapi/controller/diy/Config.php b/niucloud/app/adminapi/controller/diy/Config.php new file mode 100644 index 0000000..83d231f --- /dev/null +++ b/niucloud/app/adminapi/controller/diy/Config.php @@ -0,0 +1,61 @@ +getBottomList()); + } + + /** + * 获取底部导航 + * @return Response + */ + public function getBottomConfig() + { + $params = $this->request->params([ + [ 'key', 'app' ], + ]); + return success((new DiyConfigService())->getBottomConfig($params[ 'key' ])); + } + + /** + * 设置底部导航 + * @return Response + */ + public function setBottomConfig() + { + $data = $this->request->params([ + [ 'value', [] ], + [ 'key', 'app' ] + ]); + (new DiyConfigService())->setBottomConfig($data[ 'value' ], $data[ 'key' ]); + return success(); + } + +} diff --git a/niucloud/app/adminapi/controller/diy/Diy.php b/niucloud/app/adminapi/controller/diy/Diy.php new file mode 100644 index 0000000..21cb048 --- /dev/null +++ b/niucloud/app/adminapi/controller/diy/Diy.php @@ -0,0 +1,243 @@ +request->params([ + [ "title", "" ], + [ "type", "" ], + [ 'mode', '' ], + [ 'addon_name', '' ] + ]); + return success((new DiyService())->getPage($data)); + } + + /** + * @notes 获取自定义页面列表 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getList() + { + $data = $this->request->params([ + [ "title", "" ], + [ "type", "" ], + [ 'mode', '' ] + ]); + return success((new DiyService())->getList($data)); + } + + /** + * 自定义页面详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new DiyService())->getInfo($id)); + } + + /** + * 添加自定义页面 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + [ "title", "" ], + [ "name", "" ], + [ "type", "" ], + [ 'template', '' ], + [ 'mode', 'diy' ], // 页面展示模式,diy:自定义,fixed:固定 + [ "value", "" ], + [ 'is_default', 0 ], + [ 'is_change', '' ] + ]); + + $this->validate($data, 'app\validate\diy\Diy.add'); + $id = (new DiyService())->add($data); + return success('ADD_SUCCESS', [ 'id' => $id ]); + } + + /** + * 自定义页面编辑 + * @param $id + * @return Response + */ + public function edit($id) + { + $data = $this->request->params([ + [ "title", "" ], + [ "name", "" ], + [ "value", "" ], + [ 'is_change', '' ] + ]); + $this->validate($data, 'app\validate\diy\Diy.edit'); + (new DiyService())->edit($id, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 自定义页面删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new DiyService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 设为使用 + * @param $id + * @return Response + * @throws Exception + */ + public function setUse($id) + { + (new DiyService())->setUse($id); + return success('MODIFY_SUCCESS'); + } + + /** + * 获取页面初始化数据 + * @return Response + */ + public function getPageInit() + { + $params = $this->request->params([ + [ 'id', "" ], + [ "name", "" ], + [ "type", "" ], + [ "title", "" ], + ]); + + $diy_service = new DiyService(); + return success($diy_service->getInit($params)); + } + + /** + * 获取自定义链接列表 + */ + public function getLink() + { + $diy_service = new DiyService(); + return success($diy_service->getLink()); + } + + /** + * 获取页面模板 + * @return Response + */ + public function getTemplate() + { + $params = $this->request->params([ + [ 'key', '' ], // 页面模板标识 + [ 'action', '' ], // 页面是否装修标识,为空标识不装修,decorate:装修 + [ 'mode', '' ], // 页面展示模式,diy:自定义,fixed:固定 + [ 'type', '' ], // 页面类型,index:首页、member_index:个人中心,空:普通页面 + [ 'addon', '' ], // 插件标识 + ]); + $diy_service = new DiyService(); + return success($diy_service->getTemplate($params)); + } + + /** + * 修改页面分享内容 + * @param int $id + * @return Response + */ + public function modifyShare(int $id) + { + $data = $this->request->params([ + [ "share", "" ], + ]); + (new DiyService())->modifyShare($id, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 获取装修页面列表 + */ + public function getDecoratePage() + { + $params = $this->request->params([ + [ 'type', '' ], + ]); + return success((new DiyService())->getDecoratePage($params)); + } + + /** + * 切换模板 + */ + public function changeTemplate() + { + $data = $this->request->params([ + [ 'type', '' ], // 页面类型 + [ 'name', '' ], // 链接名称标识 + [ 'parent', '' ], // 链接父级名称标识 + [ 'page', '' ], // 链接路由 + [ 'title', '' ], // 链接标题 + [ 'action', '' ] // 是否存在操作,decorate 表示支持装修 + ]); + (new DiyService())->changeTemplate($data); + return success('MODIFY_SUCCESS'); + } + + /** + * 获取模板页面列表 + * @return Response + */ + public function getTemplatePages() + { + $params = $this->request->params([ + [ 'type', '' ], // 页面类型 + [ 'mode', '' ] // 页面模式:diy:自定义,fixed:固定 + ]); + $pages = PagesDict::getPages($params); + return success($pages); + } + + /** + * 获取模板页面(存在的应用插件列表) + * @return Response + */ + public function getApps() + { + return success((new DiyService())->getApps()); + } +} diff --git a/niucloud/app/adminapi/controller/diy/DiyRoute.php b/niucloud/app/adminapi/controller/diy/DiyRoute.php new file mode 100644 index 0000000..6183bfd --- /dev/null +++ b/niucloud/app/adminapi/controller/diy/DiyRoute.php @@ -0,0 +1,135 @@ +request->params([ + [ 'title', '' ], // 页面名称 + [ 'url', '' ], // 路由地址,格式:/app/pages/index/index + [ 'addon_name', '' ] // 插件标识 + ]); + return success((new DiyRouteService())->getList($data)); + } + + /** + * 自定义路由表详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new DiyRouteService())->getInfo($id)); + } + + /** + * 自定义路由表详情 + * @param string $name + * @return Response + */ + public function getInfoByName(string $name) + { + return success((new DiyRouteService())->getInfoByName($name)); + } + + /** + * 添加自定义路由表 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + [ "title", "" ], + [ "name", "" ], + [ "page", "" ], + [ "share", "" ], + [ "is_share", "" ] + ]); + $this->validate($data, 'app\validate\diy\DiyRoute.add'); + $id = (new DiyRouteService())->add($data); + return success('ADD_SUCCESS', [ 'id' => $id ]); + } + + /** + * 自定义路由表编辑 + * @param $id + * @return Response + */ + public function edit($id) + { + $data = $this->request->params([ + [ "title", "" ], + [ "name", "" ], + [ "page", "" ], + [ "share", "" ], + [ "is_share", "" ] + ]); + $this->validate($data, 'app\validate\diy\DiyRoute.edit'); + (new DiyRouteService())->edit($id, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 自定义路由表删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new DiyRouteService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 修改页面分享内容 + */ + public function modifyShare() + { + $data = $this->request->params([ + [ 'share', '' ], + [ 'title', '' ], + [ 'name', '' ], + [ 'page', '' ], + [ 'is_share', 0 ], + [ 'sort', 0 ] + ]); + (new DiyRouteService())->modifyShare($data); + return success('MODIFY_SUCCESS'); + } + + + /** + * 获取模板页面(存在的应用插件列表) + * @return Response + */ + public function getApps() + { + return success((new DiyRouteService())->getApps()); + } + +} diff --git a/niucloud/app/adminapi/controller/generator/Generator.php b/niucloud/app/adminapi/controller/generator/Generator.php new file mode 100644 index 0000000..12fbebd --- /dev/null +++ b/niucloud/app/adminapi/controller/generator/Generator.php @@ -0,0 +1,198 @@ +request->params([ + ['table_name', ''], + ['table_content', ''], + ['addon_name',''] + ]); + return success((new GenerateService())->getPage($data)); + } + + /** + * 代码生成详情 + * @param int $id + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function info(int $id) + { + return success((new GenerateService())->getInfo($id)); + } + + /** + * 代码预览 + * @param int $id + * @return Response + */ + public function preview(int $id) + { + $data = (new GenerateService())->preview(['id' => $id]); +// dd($data); + return success('ADD_SUCCESS', $data); + } + + /** + * 添加代码生成 + * @return Response + * @throws Exception + */ + public function add() + { + $data = $this->request->params([ + ["table_name", ""], + ], false); + $this->validate($data, 'app\validate\generator\Generator.add'); + $id = (new GenerateService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 代码生成编辑 + * @param $id + * @return Response + */ + public function edit($id) + { + $data = $this->request->params([ + ["table_name", ""], + ["table_content", ""], + ["class_name", ""], + ["module_name", ""], + ['addon_name',''], + ["edit_type", "1"], + ["table_column", ""], + ["is_delete",""], + ['delete_column_name',''], + ['order_type',"0"], + ['order_column_name',''], + ['parent_menu',''], + ['relations',[]] + ], false); + + $this->validate($data, 'app\validate\generator\Generator.edit'); + (new GenerateService())->edit($id, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 代码生成删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new GenerateService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 生成代码 + * @return Response + */ + public function create() + { + $data = $this->request->params([ + ['id', ''], + ['generate_type', '2'] + ]); + + $data = (new GenerateService())->generate($data); + return success('ADD_SUCCESS', $data); + } + + /** + * 获取数据表列表 + * @return Response + */ + public function tableList() + { + $data = $this->request->params([ + ["name", ""], + ["comment", ""], + ]); + $list = (new GenerateService())->tableList($data); + return success('ADD_SUCCESS', $list); + } + + /** + * 代码生成检测 + */ + public function checkFile() + { + $data = $this->request->params([ + ["id",''] + ]); + return success((new GenerateService())->checkFile($data)); + + } + + /** + * 获取表字段 + */ + public function getTableColumn() + { + $data = $this->request->params([ + ["table_name", ""], + ]); + return success((new GenerateService())->getTableColumn($data)); + } + + + /** + * 获取全部模型 + */ + public function getModels() + { + $data = $this->request->params([ + ["addon","system"] + ]); + return success((new GenerateService())->getModels($data)); + } + + /** + * 根据模型获取表字段 + */ + public function getModelTableColumn() + { + $data = $this->request->params([ + ["model",""] + ]); + return success((new GenerateService())->getModelColumn($data)); + } + +} diff --git a/niucloud/app/adminapi/controller/home/Site.php b/niucloud/app/adminapi/controller/home/Site.php new file mode 100644 index 0000000..c6737ee --- /dev/null +++ b/niucloud/app/adminapi/controller/home/Site.php @@ -0,0 +1,76 @@ +request->params([ + ['keywords', ''], + ['status', ''], + ['app', ''], + ]); + return success((new AuthSiteService())->getSitePage($data)); + } + + /** + * 站点详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new AuthSiteService())->getSiteInfo($id)); + } + + /** + * 站点更新 + */ + public function edit($id) + { + $data = $this->request->params([ + ['site_name', ''], + ['logo', ''], + ['keywords', ''], + ['desc', ''], + //地址 +// ['latitude', ''], +// ['longitude', ''], +// ['province_id', 0], +// ['city_id', 0], +// ['district_id', 0], +// ['address', ''], +// ['full_address', ''], +// + ['phone', ''], +// +// ['business_hours', ''], +// ['front_end_name', ''], +// ['front_end_logo', ''], +// ['icon', ''] + ]); + $this->validate($data, 'app\validate\site\Site.edit'); + (new AuthSiteService())->editSite($id, $data); + + return success('MODIFY_SUCCESS'); + } + +} diff --git a/niucloud/app/adminapi/controller/login/Captcha.php b/niucloud/app/adminapi/controller/login/Captcha.php new file mode 100644 index 0000000..5deb56d --- /dev/null +++ b/niucloud/app/adminapi/controller/login/Captcha.php @@ -0,0 +1,49 @@ +create()); + } + + /** + * 一次校验验证码 + * @return Response + */ + public function check() + { + return success((new CaptchaService())->check()); + } + + /** + * 二次校验验证码 + * @return Response + */ + public function verification() + { + return success((new CaptchaService())->verification()); + } + +} diff --git a/niucloud/app/adminapi/controller/login/Config.php b/niucloud/app/adminapi/controller/login/Config.php new file mode 100644 index 0000000..308f0a6 --- /dev/null +++ b/niucloud/app/adminapi/controller/login/Config.php @@ -0,0 +1,47 @@ +getConfig()); + } + + /** + * 注册与登录设置 + * @return Response + */ + public function setConfig() + { + $data = $this->request->params([ + ['is_captcha', 0], + ['is_site_captcha', 0], + ['bg', ''], + ['site_bg', ''], + ]); + (new ConfigService())->setConfig($data); + return success('MODIFY_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/login/Login.php b/niucloud/app/adminapi/controller/login/Login.php new file mode 100644 index 0000000..00c8166 --- /dev/null +++ b/niucloud/app/adminapi/controller/login/Login.php @@ -0,0 +1,72 @@ +request->params([ + ['username', ''], + ['password', ''], + ]); + //参数验证 + //验证码验证 + $result = (new LoginService())->login($data['username'], $data['password'], $app_type); + if (!$result) { + //账号密码错误...., 重置验证码 + return fail('USER_ERROR'); + } + return success($result); + + } + + /** + * 登出 + * @return Response + */ + public function logout() + { + (new LoginService)->logout(); + return success('LOGOUT'); + } + + + /** + * 获取登录设置 + * @return Response + */ + public function getConfig() + { + return success((new ConfigService())->getConfig()); + } + + public function test(){ + dd(rtrim(dirname(root_path()) . DIRECTORY_SEPARATOR, DIRECTORY_SEPARATOR)); + } +} diff --git a/niucloud/app/adminapi/controller/member/Account.php b/niucloud/app/adminapi/controller/member/Account.php new file mode 100644 index 0000000..4d63fd6 --- /dev/null +++ b/niucloud/app/adminapi/controller/member/Account.php @@ -0,0 +1,228 @@ +request->params([ + ['member_id', ''], + ['from_type', ''], + ['create_time', []], + ['keywords', ''], + ]); + $data['account_type'] = 'point'; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 会员积分统计(用于会员积分统计窗口) + */ + public function sumPoint() + { + $data = $this->request->params([ + ['member_id', ''], + ]); + $member_account_service = new MemberAccountService(); + $member_service = new MemberService(); + + if (empty($data['member_id'])) { + $commission_data = [ + 'point_get' => $member_service->getSum('point_get'),//累计 + 'point_use' => abs($member_account_service->getExpensesSumAccount(MemberAccountTypeDict::POINT)), + ]; + return success($commission_data); + } else { + $info = $member_account_service->getMemberAccountInfo($data['member_id']); + $commission_data = [ + 'point_get' => $info['point_get'], + 'point_use' => abs($member_account_service->getExpensesSumAccount(MemberAccountTypeDict::POINT, $data['member_id'])), + ]; + return success($commission_data); + } + } + + /** + * 余额流水 + * @return Response + */ + public function balance() + { + $data = $this->request->params([ + ['member_id', ''], + ['from_type', ''], + ['create_time', []], + ['keywords', ''], + ]); + $data['account_type'] = 'balance'; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 可提现余额流水 + * @return Response + */ + public function money() + { + $data = $this->request->params([ + ['member_id', ''], + ['from_type', ''], + ['create_time', []], + ['keywords', ''], + ]); + $data['account_type'] = 'money'; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 积分账户调整 + */ + public function adjustPoint() + { + $data = $this->request->params([ + ['member_id', ''], + ['account_data', 0], + ['memo', ''], + ]); + $res = (new MemberAccountService())->adjustPoint($data); + return success('SUCCESS', ['id' => $res]); + } + + /** + * 余额账户调整 + */ + public function adjustBalance() + { + $data = $this->request->params([ + ['member_id', ''], + ['account_data', 0], + ['memo', ''], + ]); + $res = (new MemberAccountService())->adjustBalance($data); + return success('SUCCESS', ['id' => $res]); + } + + /** + * 零钱调整 + * @return Response + */ + public function adjustMoney() + { + $data = $this->request->params([ + ['member_id', ''], + ['account_data', 0], + ['memo', ''], + ]); + $res = (new MemberAccountService())->adjustMoney($data); + return success('SUCCESS', ['id' => $res]); + } + + /** + * 会员佣金 + * @return Response + */ + public function commission() + { + $data = $this->request->params([ + ['member_id', ''], + ['from_type', ''], + ['create_time', []], + ['keywords', ''], + ]); + $data['account_type'] = 'commission'; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 会员佣金统计(用于会员账户统计窗口) + */ + public function sumCommission() + { + $data = $this->request->params([ + ['member_id', ''], + ]); + $member_account_service = new MemberAccountService(); + $member_service = new MemberService(); + + if (empty($data['member_id'])) { + $commission_data = [ + 'total_commission' => $member_service->getSum('commission_get'),//累计 + 'commission' => $member_service->getSum('commission'),//未提现 + 'withdrawn_commission' => $member_account_service->getWithdrawnCommission(),//已提现 + 'commission_cash_outing' => $member_service->getSum('commission_cash_outing'),//提现中 + ]; + return success($commission_data); + } else { + $info = $member_account_service->getMemberAccountInfo($data['member_id']); + $commission_data = [ + 'commission' => $info['commission'], + 'commission_cash_outing' => $info['commission_cash_outing'], + 'withdrawn_commission' => $member_account_service->getWithdrawnCommission($data['member_id']),//已提现 + 'total_commission' => $info['commission_get'], + ]; + return success($commission_data); + } + } + + /** + * 会员余额统计(用于会员账户统计窗口) + */ + public function sumBalance() + { + $data = $this->request->params([ + ['member_id', ''], + ]); + $member_account_service = new MemberAccountService(); + if (empty($data['member_id'])) { + + $balance_data = [ + MemberAccountTypeDict::BALANCE => number_format($member_account_service->getSumAccount(MemberAccountTypeDict::BALANCE), 2), + MemberAccountTypeDict::MONEY => number_format($member_account_service->getSumAccount(MemberAccountTypeDict::MONEY), 2), + ]; + return success($balance_data); + } else { + return success($member_account_service->getMemberAccountInfo($data['member_id'])); + } + } + + /** + * 账户变化类型 + * @param string $account_type + * @return Response + */ + public function changeType(string $account_type) + { + $res = (new MemberAccountService())->getFromType($account_type); + return success($res); + } + + /** + * 账户类型 + */ + public function accountType() + { + return success(MemberAccountTypeDict::getType()); + } + + +} diff --git a/niucloud/app/adminapi/controller/member/CashOut.php b/niucloud/app/adminapi/controller/member/CashOut.php new file mode 100644 index 0000000..bc9f3cb --- /dev/null +++ b/niucloud/app/adminapi/controller/member/CashOut.php @@ -0,0 +1,101 @@ +request->params([ + ['member_id', ''], + ['status', ''], + ['transfer_type', ''], + ['create_time', []], + ['audit_time', []], + ['transfer_time', []], + ['cash_out_no', ''], + ['keywords', ''] + ]); + return success((new MemberCashOutService())->getPage($data)); + } + + /** + * 提现详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new MemberCashOutService())->getInfo($id)); + } + + public function audit($id, $action) + { + $data = $this->request->params([ + ['refuse_reason', ''], + ]); + (new MemberCashOutService())->audit($id, $action, $data); + return success(); + } + + /** + * 转账方式 + * @return Response + */ + public function getTransferType() + { + return success(TransferDict::getTransferType([], false)); + } + + /** + * 转账方式 + * @param $id + * @return Response + */ + public function transfer($id) + { + $data = $this->request->params([ + ['transfer_voucher', ''], + ['transfer_remark', ''], + ['transfer_type', ''] + ]); + (new MemberCashOutService())->transfer($id, $data); + return success(); + } + + /** + * 状态 + * @return Response + */ + public function getStatusList() + { + return success(MemberCashOutDict::getStatus()); + } + + /** + * 统计数据 + */ + public function stat() + { + return success((new MemberCashOutService())->stat()); + } +} diff --git a/niucloud/app/adminapi/controller/member/Config.php b/niucloud/app/adminapi/controller/member/Config.php new file mode 100644 index 0000000..648f27b --- /dev/null +++ b/niucloud/app/adminapi/controller/member/Config.php @@ -0,0 +1,98 @@ +getLoginConfig()); + } + + /** + * 注册与登录设置 + * @return Response + */ + public function setLoginConfig() + { + $data = $this->request->params([ + ['is_username', 1], + ['is_mobile', 0], + ['is_auth_register', 1], + ['is_bind_mobile', 0], + ['agreement_show', 0] + ]); + $this->validate($data, 'app\validate\member\LoginConfig.set'); + (new MemberConfigService())->setLoginConfig($data); + return success('MODIFY_SUCCESS'); + } + + /** + * 获取提现设置 + * @return Response + */ + public function getCashOutConfig() + { + return success((new MemberConfigService())->getCashOutConfig()); + } + + /** + * 提现设置 + * @return Response + */ + public function setCashOutConfig() + { + $data = $this->request->params([ + ['is_open', 0], //是否开启 + ['min', 0.01], //最低提现金额 + ['rate', 0], //提现手续费比率 + ['is_auto_verify', 0], //是否自动审核 + ['is_auto_transfer', 0], //是否自动转账 + ['transfer_type', []] //转账方式 + ]); + $this->validate($data, 'app\validate\member\CashOutConfig.set'); + (new MemberConfigService())->setCashOutConfig($data); + return success('SET_SUCCESS'); + } + + /** + * 获取会员配置 + * @return Response + */ + public function getMemberConfig() + { + return success((new MemberConfigService())->getMemberConfig()); + } + + /** + * 设置会员配置 + * @return Response + */ + public function setMemberConfig() + { + $data = $this->request->params([ + ['prefix', ''], + ['length', 10] + ]); + $this->validate($data, 'app\validate\member\MemberConfig.set'); + (new MemberConfigService())->setMemberConfig($data); + return success('MODIFY_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/member/Member.php b/niucloud/app/adminapi/controller/member/Member.php new file mode 100644 index 0000000..45d50c4 --- /dev/null +++ b/niucloud/app/adminapi/controller/member/Member.php @@ -0,0 +1,186 @@ +request->params([ + ['keyword', ''], + ['register_type', ''], + ['register_channel', ''], + ['create_time', []], + ['member_label', 0], + ]); + return success((new MemberService())->getPage($data)); + } + + /** + * 会员详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new MemberService())->getInfo($id)); + } + + /** + * 添加会员 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['nickname', ''], + ['mobile', ''], + ['member_no', ''], + ['init_member_no', ''], + ['password', ''], + ['headimg', ''], + ['member_label', []], + ['sex', 0], + ['birthday', ''], + ]); + $this->validate($data, 'app\validate\member\Member.add'); + $res = (new MemberService())->add($data); + return success('ADD_SUCCESS', ['member_id' => $res]); + } + + /** + * 修改会员 + * @param $member_id + * @param $field + * @return Response + */ + public function modify($member_id, $field) + { + $data = $this->request->params([ + ['value', ''], + ['field', $field], + ]); + $data[$field] = $data['value']; + $this->validate($data, 'app\validate\member\Member.modify'); + (new MemberService())->modify($member_id, $field, $data['value']); + return success('MODIFY_SUCCESS'); + } + + /** + * 更新 + * @return Response + */ + public function edit($member_id) + { + $data = $this->request->params([ + ['nickname', ''], + ['headimg', ''], + ['password', ''], + ['member_label', []], + ['sex', 0], + ['birthday', ''], + ]); + $this->validate($data, 'app\validate\member\Member.edit'); + $res = (new MemberService())->edit($member_id, $data); + return success('EDIT_SUCCESS'); + } + + public function del($member_id) + { + $res = (new MemberService())->deleteMember($member_id); + return success('DELETE_SUCCESS'); + } + + /** + * 会员使用场景 + * @return Response + */ + public function getMemberRegisterType() + { + return success(MemberRegisterTypeDict::getType()); + } + + /** + * 会员列表 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMemberList() + { + $data = $this->request->params([ + ['keyword', ''], + ]); + return success((new MemberService())->getList($data)); + } + + /** + * 获取会员注册渠道 + * @return Response + */ + public function getMemberRegisterChannelType() + { + return success(MemberRegisterChannelDict::getType()); + } + + /** + * 设置会员的状态 + * @param $status + * @return Response + */ + public function setStatus($status) + { + $data = $this->request->params([ + ['member_ids', []], + + ]); + $this->validate(['status' => $status], 'app\validate\member\Member.set_status'); + (new MemberService())->setStatus($data['member_ids'], $status); + return success('EDIT_SUCCESS'); + } + + /** + * 获取状态枚举 + * @return Response + */ + public function getStatusList() + { + return success(MemberDict::getStatus()); + } + + /** + * 获取会员编码 + * @return Response + */ + public function getMemberNo() + { + $member_no = (new MemberService())->getMemberNo(); + return success('SUCCESS', $member_no); + } + + +} diff --git a/niucloud/app/adminapi/controller/member/MemberLabel.php b/niucloud/app/adminapi/controller/member/MemberLabel.php new file mode 100644 index 0000000..55e24cb --- /dev/null +++ b/niucloud/app/adminapi/controller/member/MemberLabel.php @@ -0,0 +1,102 @@ +request->params([ + + ['label_name', ''], + ]); + return success((new MemberLabelService())->getPage($data)); + } + + /** + * 会员标签详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new MemberLabelService())->getInfo($id)); + } + + /** + * 添加会员标签 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + + ['label_name', ''], + ['memo', ''], + ['sort', 0], + ]); + $this->validate($data, 'app\validate\member\MemberLabel.add'); + $id = (new MemberLabelService())->add($data); + return success('ADD_SUCCESS', ['label_id' => $id]); + } + + /** + * 菜单或接口更新 + */ + public function edit($id) + { + $data = $this->request->params([ + ['label_name', ''], + ['memo', ''], + ['sort', 0], + ]); + $this->validate($data, 'app\validate\member\MemberLabel.edit'); + (new MemberLabelService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 会员标签删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + + (new MemberLabelService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 获取标签 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAll() + { + return success((new MemberLabelService())->getAll()); + } + +} diff --git a/niucloud/app/adminapi/controller/niucloud/Cloud.php b/niucloud/app/adminapi/controller/niucloud/Cloud.php new file mode 100644 index 0000000..b356b72 --- /dev/null +++ b/niucloud/app/adminapi/controller/niucloud/Cloud.php @@ -0,0 +1,58 @@ +cloudBuild()); + } + + /** + * 获取云编译日志 + * @return \think\Response + */ + public function getBuildLog() { + return success(data:(new CoreCloudBuildService())->getBuildLog()); + } + + /** + * 获取云编译任务 + * @return \think\Response + */ + public function getBuildTask() { + return success(data:(new CoreCloudBuildService())->getBuildTask()); + } + + /** + * 清除云编译任务 + * @return \think\Response + */ + public function clearBuildTask() { + return success(data:(new CoreCloudBuildService())->clearTask()); + } + + /** + * 编译前环境检测 + * @return \think\Response + */ + public function buildPreCheck() { + return success(data:(new CoreCloudBuildService())->buildPreCheck()); + } +} diff --git a/niucloud/app/adminapi/controller/niucloud/Module.php b/niucloud/app/adminapi/controller/niucloud/Module.php new file mode 100644 index 0000000..60dcb39 --- /dev/null +++ b/niucloud/app/adminapi/controller/niucloud/Module.php @@ -0,0 +1,64 @@ +getAuthInfo()); + } + + /** + * 设置 授权信息 + */ + public function setAuthorize() + { + $data = $this->request->params([ + ['auth_code', ''], + ['auth_secret', ''] + ]); + $this->validate($data, 'app\validate\niucloud\Module.set'); + return success("SUCCESS", (new NiucloudService())->setAuthorize($data)); + } + + /** + * 获取 授权信息 + */ + public function getAuthorize() + { + return success((new NiucloudService())->getAuthorize()); + } + + /** + * 获取框架最新版本 + * @return Response + * @throws \GuzzleHttp\Exception\GuzzleException + */ + public function getFrameworkLastVersion() { + return success(data:(new NiucloudService())->getFrameworkLastVersion()); + } + + /** + * 获取框架最新版本 + * @return Response + * @throws \GuzzleHttp\Exception\GuzzleException + */ + public function getFrameworkVersionList() { + return success(data:(new NiucloudService())->getFrameworkVersionList()); + } +} diff --git a/niucloud/app/adminapi/controller/notice/Notice.php b/niucloud/app/adminapi/controller/notice/Notice.php new file mode 100644 index 0000000..fc72e26 --- /dev/null +++ b/niucloud/app/adminapi/controller/notice/Notice.php @@ -0,0 +1,130 @@ +getList(); + return success($res); + } + + public function info($key) + { + $res = (new NoticeService())->getInfo($key); + return success($res); + } + + /** + * 消息启动与关闭 + * @return Response + */ + public function editStatus() + { + $data = $this->request->params([ + ['key', ''], + ['type', ''], + ['status', 0], + ]); + (new NoticeService())->editMessageStatus($data['key'], $data['type'], $data['status']); + return success(); + } + + /** + * 短信配置列表 + */ + public function smsList() + { + $res = (new SmsService())->getList(); + return success($res); + } + + /** + * 短信配置详情 + * @param $sms_type + * @return Response + */ + public function smsConfig($sms_type) + { + $res = (new SmsService())->getConfig($sms_type); + return success($res); + } + + /** + * 短信配置修改 + * @return Response + */ + public function editSms($sms_type) + { + //参数获取 + $sms_type_list = SmsDict::getType(); + if (!array_key_exists($sms_type, $sms_type_list)) throw new AdminException('SMS_TYPE_NOT_EXIST'); + //数据验证 + $data = [ + ['is_use', 0] + ]; + foreach ($sms_type_list[$sms_type]['params'] as $k_param => $v_param) { + $data[] = [$k_param, '']; + } + + $request_data = $this->request->params($data); + (new SmsService())->setConfig($sms_type, $request_data); + return success(); + } + + /** + * 消息列表 + * @return Response + */ + public function getLogList() + { + $data = $this->request->params([ + ['key', ''], + ['receiver', ''], + ]); + + $res = (new NoticeService())->getLogPage($data); + return success($res); + } + + /** + * 消息修改 + * @return Response + */ + public function edit() + { + $data = $this->request->params([ + ['key', ''], + ['type', ''], + ['status', ''], + ['sms_id', ''], + ['wechat_first', ''], + ['wechat_remark', ''], + ]); + (new NoticeService())->edit($data['key'], $data['type'], $data); + return success(); + } + +} diff --git a/niucloud/app/adminapi/controller/notice/NoticeLog.php b/niucloud/app/adminapi/controller/notice/NoticeLog.php new file mode 100644 index 0000000..49d834c --- /dev/null +++ b/niucloud/app/adminapi/controller/notice/NoticeLog.php @@ -0,0 +1,43 @@ +request->params([ + ['key', ''], + ['receiver', ''], + ['create_time', []] + ]); + + $res = (new NoticeLogService())->getPage($data); + return success($res); + } + + public function info($id) + { + $res = (new NoticeLogService())->getInfo($id); + return success($res); + } + +} diff --git a/niucloud/app/adminapi/controller/notice/SmsLog.php b/niucloud/app/adminapi/controller/notice/SmsLog.php new file mode 100644 index 0000000..33531e0 --- /dev/null +++ b/niucloud/app/adminapi/controller/notice/SmsLog.php @@ -0,0 +1,43 @@ +request->params([ + ['mobile', ''], + ['sms_type', ''], + ['key', ''], + ]); + + $res = (new NoticeSmsLogService())->getPage($data); + return success($res); + } + + public function info($id) + { + $res = (new NoticeSmsLogService())->getInfo($id); + return success($res); + } + +} diff --git a/niucloud/app/adminapi/controller/order/Recharge.php b/niucloud/app/adminapi/controller/order/Recharge.php new file mode 100644 index 0000000..5e768c1 --- /dev/null +++ b/niucloud/app/adminapi/controller/order/Recharge.php @@ -0,0 +1,119 @@ +request->params([ + ['order_no', ''], + ['order_status', ''], + ['order_from', ''], + ['create_time', []], + ['pay_time', []], + ['member_id', ''], + ['start_money', 0], + ['end_money', 0] + ]); + return success((new RechargeOrderService())->getPage($data)); + } + + /** + * 充值订单详情 + * @param int $order_id + * @return Response + */ + public function detail(int $order_id) + { + return success((new RechargeOrderService())->getDetail($order_id)); + } + + public function status() + { + return success((new RechargeOrderService())->getStatus()); + } + + public function refund($order_id) + { + $res = (new RechargeOrderRefundService())->create($order_id); + if ($res === true) return success(); + return fail($res); + } + + /** + * 退款列表 + * @return Response + */ + public function refundLists() + { + $data = $this->request->params([ + ['create_time', []], + ['member_id', ''], + ['refund_no', ''], + ['status', ''], + ['keywords', ''], + ['order_no', ''], + ]); + return success((new RechargeOrderRefundService())->getPage($data)); + } + + /** + * 退款详情 + * @param int $refund_id + * @return Response + */ + public function refundDetail(int $refund_id) + { + return success((new RechargeOrderRefundService())->getDetail($refund_id)); + } + + /** + * 查询退款状态 + * @return Response + */ + public function refundStatus() + { + return success((new RechargeOrderRefundService())->getStatus()); + } + + /** + * 退款统计 + */ + public function refundStat() + { + return success((new RechargeOrderRefundService())->stat()); + } + + /** + * 充值统计 + */ + public function stat() + { + $data = $this->request->params([ + ['member_id', ''], + ]); + $res = (new RechargeOrderService())->stat($data); + return success($res); + } + + +} diff --git a/niucloud/app/adminapi/controller/pay/Pay.php b/niucloud/app/adminapi/controller/pay/Pay.php new file mode 100644 index 0000000..63d7c0c --- /dev/null +++ b/niucloud/app/adminapi/controller/pay/Pay.php @@ -0,0 +1,60 @@ +request->params([ + ['create_time', []], + ['out_trade_no', ''], + ['status', ''] + ]); + return success(data: (new PayService())->getAuditPage($data)); + } + + /** + * 查询详情 + * @param string $out_trade_no + * @return \think\Response + */ + public function detail(int $id){ + return success(data: (new PayService())->getDetail($id)); + } + + /** + * 支付审核通过 + * @param string $out_trade_no + * @return \think\Response + */ + public function pass(string $out_trade_no){ + return success(data: (new PayService())->pass($out_trade_no)); + } + + /** + * 审核拒绝 + * @param string $out_trade_no + */ + public function refuse(string $out_trade_no){ + $reason = input('reason', ''); + return success(data: (new PayService())->refuse($out_trade_no, $reason)); + } +} \ No newline at end of file diff --git a/niucloud/app/adminapi/controller/pay/PayChannel.php b/niucloud/app/adminapi/controller/pay/PayChannel.php new file mode 100644 index 0000000..d9e3208 --- /dev/null +++ b/niucloud/app/adminapi/controller/pay/PayChannel.php @@ -0,0 +1,96 @@ +request->params([ + ['is_default', 0], + ['config', []], + ['status', 0] + ]); + $data['config']['type'] = $type; + $this->validate($data['config'], 'app\validate\pay\Pay.set'); + (new PayChannelService())->set($channel, $type, $data); + return success('SET_SUCCESS'); + } + + + /** + * 支付渠道列表 + * @return Response + */ + public function lists() + { + return success((new PayChannelService())->getChannelList()); + } + + /** + * 通过渠道获取支付配置 + * @param $channel + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getListByChannel($channel) + { + return success((new PayChannelService())->getListByChannel($channel)); + } + + + /** + * 支付设置 + * @return Response + */ + public function setTransfer() + { + $data = $this->request->params([ + ['wechatpay_config', []], + ['alipay_config', []], + ]); + $this->validate(array_merge($data['wechatpay_config'], ['type' => PayDict::WECHATPAY]), 'app\validate\pay\Pay.set'); + $this->validate(array_merge($data['alipay_config'], ['type' => PayDict::ALIPAY]), 'app\validate\pay\Pay.set'); + (new PayChannelService())->setTransfer($data); + return success('SET_SUCCESS'); + } + + /** + * 多渠道支付设置 + * @return Response + */ + public function setAll() + { + $data = $this->request->params([ + ['config', []], + ]); +// $this->validate(array_merge($data['wechatpay_config'], ['type' => PayDict::WECHATPAY]), 'app\validate\pay\Pay.set'); +// $this->validate(array_merge($data['alipay_config'], ['type' => PayDict::ALIPAY]), 'app\validate\pay\Pay.set'); + (new PayChannelService())->setAll($data['config']); + return success('SET_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/pay/PayRefund.php b/niucloud/app/adminapi/controller/pay/PayRefund.php new file mode 100644 index 0000000..2f96de5 --- /dev/null +++ b/niucloud/app/adminapi/controller/pay/PayRefund.php @@ -0,0 +1,65 @@ +request->params([ + ['refund_no', ''], + ['create_time', []], + ['status', ''] + ]); + return success(data: (new RefundService())->getPage($data)); + } + + /** + * 退款详情 + * @param $refund_no + * @return \think\Response + */ + public function detail($refund_no) + { + return success(data: (new RefundService())->getDetail($refund_no)); + } + + /** + * 获取退款方式 + */ + public function getRefundType() + { + return success(data:(new RefundDict())->getType()); + } + + /** + * 转账 + * @return \think\Response + */ + public function transfer() + { + $data = $this->request->params([ + ['refund_no', ''], + ['refund_type', []], + ['voucher', ''] + ]); + return success(data:(new RefundService())->refund($data)); + } +} \ No newline at end of file diff --git a/niucloud/app/adminapi/controller/site/Site.php b/niucloud/app/adminapi/controller/site/Site.php new file mode 100644 index 0000000..0ee3670 --- /dev/null +++ b/niucloud/app/adminapi/controller/site/Site.php @@ -0,0 +1,156 @@ +request->params([ + ['keywords', ''], + ['status', ""], + ['group_id', 0], + ['create_time', []], + ['expire_time', []], + ['app', ''], +// [''] + ]); + return success((new SiteService())->getPage($data)); + } + + /** + * 站点详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new SiteService())->getInfo($id)); + } + + /** + * 添加站点 + * ['site_name' => '', 'username' => '', 'head_img' => '', 'real_name' => '', 'password' => '', 'expire_time' => 0] + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['site_name', ''], + ['uid', 0], + ['username', ''], + ['real_name', ''], + ['password', ''], + ['group_id', 0], + ['expire_time', 0] + ]); + $this->validate($data, 'app\validate\site\Site.add'); + if (empty($data['uid'])) $this->validate($data, 'app\validate\sys\User.add'); + $site_id = (new SiteService())->add($data); + return success('ADD_SUCCESS', ['site_id' => $site_id]); + } + + /** + * 站点状态 + * @return Response + */ + public function getStatuList() + { + return success(SiteDict::getStatus()); + } + + /** + * 站点菜单 + * @return Response + */ + public function menu() + { + return success((new AuthSiteService())->getMenuList(1, 'all', 'all', 0)); + } + + /** + * 关闭站点 + */ + public function closeSite($id) + { + $data = $this->request->params([ + ['status', SiteDict::CLOSE], + ]); + (new SiteService())->edit($id, $data); + return success(); + } + + /** + * 菜单或接口更新 + */ + public function edit($id) + { + $data = $this->request->params([ + ['site_name', ''], + ['expire_time', 0], + ['group_id',0] + ]); + $this->validate($data, 'app\validate\site\Site.edit'); + (new SiteService())->edit($id, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 删除站点 + * @param $id + * @return Response + */ + public function del($id) { + (new SiteService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 开启站点 + */ + public function openSite($id) + { + $data = $this->request->params([ + ['status', SiteDict::ON], + ]); + (new SiteService())->edit($id, $data); + return success(); + } + + public function indexConfig() + { + + } + + /** + * 获取站点拥有的应用 + * @return Response + */ + public function addons() { + $data = $this->request->params([ + ['title', ''], + ]); + $data = (new SiteService())->getSiteAddons($data); + return success(data:$data); + } + +} diff --git a/niucloud/app/adminapi/controller/site/SiteAccount.php b/niucloud/app/adminapi/controller/site/SiteAccount.php new file mode 100644 index 0000000..e97b52a --- /dev/null +++ b/niucloud/app/adminapi/controller/site/SiteAccount.php @@ -0,0 +1,57 @@ +request->params([ + ['type', ''], + ['trade_no', ''], + ['create_time', []], + ]); + return success((new SiteAccountLogService())->getPage($data)); + } + + /** + * 账单详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new SiteAccountLogService())->getInfo($id)); + } + + /** + * 累计账单 + */ + public function stat() + { + return success((new SiteAccountLogService())->stat()); + } + + public function accountType() + { + return success(SiteAccountLogDict::getType()); + } +} diff --git a/niucloud/app/adminapi/controller/site/SiteGroup.php b/niucloud/app/adminapi/controller/site/SiteGroup.php new file mode 100644 index 0000000..110ea2a --- /dev/null +++ b/niucloud/app/adminapi/controller/site/SiteGroup.php @@ -0,0 +1,107 @@ +request->params([ + ['keywords', ''], + ]); + return success((new SiteGroupService())->getPage($data)); + } + + /** + * 分组详情 + * @param int $group_id + * @return Response + */ + public function info(int $group_id) + { + return success((new SiteGroupService())->getInfo($group_id)); + } + + /** + * 添加分组 + * @return Response + * @throws Exception + */ + public function add() + { + $data = $this->request->params([ + ['group_name', ''], + ['group_desc', ''], + ['app', []], + ['addon', []], + ]); + $this->validate($data, 'app\validate\site\SiteGroup.add'); + $group_id = (new SiteGroupService())->add($data); + return success('ADD_SUCCESS', ['group_id' => $group_id]); + } + + /** + * 编辑分组 + * @param $group_id + * @return Response + */ + public function edit($group_id) + { + $data = $this->request->params([ + ['group_name', ''], + ['group_desc', ''], + ['app', []], + ['addon', []], + ]); + (new SiteGroupService())->edit($group_id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 删除分组 + * @param $group_id + * @return Response + */ + public function del($group_id) + { + + (new SiteGroupService())->del($group_id); + return success('DELETE_SUCCESS'); + } + + /** + * 所有分组 + * @return Response + */ + public function all() + { + $data = $this->request->params([ + ['app', ''], + ]); + return success((new SiteGroupService())->getAll($data)); + } + +} diff --git a/niucloud/app/adminapi/controller/site/User.php b/niucloud/app/adminapi/controller/site/User.php new file mode 100644 index 0000000..6489d12 --- /dev/null +++ b/niucloud/app/adminapi/controller/site/User.php @@ -0,0 +1,140 @@ +request->params([ + ['username', ''], + ['realname', ''], + ['role', ''], + ['create_time', []], + ['last_time', []], + ]); + $list = (new SiteUserService())->getPage($data); + return success($list); + + } + + /** + * 用户详情 + * @param $uid + * @return Response + */ + public function info($uid) + { + return success((new SiteUserService())->getInfo($uid)); + } + + /** + * 新增用户 + * @return Response + * @throws Exception + */ + public function add() + { + $data = $this->request->params([ + ['uid', 0], + ['username', ''], + ['password', ''], + ['real_name', ''], + ['head_img', ''], + ['status', UserDict::ON], + ['role_ids', []] + ]); + if (!$data['uid']) $this->validate($data, 'app\validate\sys\User.add'); + $uid = (new SiteUserService())->add($data); + return success('ADD_SUCCESS', ['uid' => $uid]); + } + + + /** + * 更新用户 + */ + public function edit($uid) + { + $data = $this->request->params([ + ['real_name', ''], + ['head_img', ''], + ['status', UserDict::ON], + ['role_ids', []], + ['password', ''] + ]); + (new SiteUserService())->edit($uid, $data); + return success('MODIFY_SUCCESS'); + } + + /** + * 更新字段 + * @param $uid + * @param $field + * @return Response + */ + public function modify($uid, $field) + { + $data = $this->request->params([ + ['value', ''], + ['field', $field] + ]); + $data[$field] = $data['value']; +// $this->validate($data, 'app\validate\sys\User.modify'); + (new SiteUserService())->modify($uid, $field, $data['value']); + return success('MODIFY_SUCCESS'); + } + + /** + * 删除单个用户 + * @param $uid + * @return Response + */ + public function del($uid) + { + (new UserService())->del($uid); + return success('DELETE_SUCCESS'); + } + + /** + * 锁定用户 + */ + public function lock($uid) + { + + (new SiteUserService())->lock($uid); + return success('MODIFY_SUCCESS'); + } + + /** + * 解锁用户 + */ + public function unlock($uid) + { + + (new SiteUserService())->unlock($uid); + return success('MODIFY_SUCCESS'); + } + + +} diff --git a/niucloud/app/adminapi/controller/site/UserLog.php b/niucloud/app/adminapi/controller/site/UserLog.php new file mode 100644 index 0000000..5031844 --- /dev/null +++ b/niucloud/app/adminapi/controller/site/UserLog.php @@ -0,0 +1,51 @@ +request->params([ + ['uid', 0], + ['create_time', []], + ['ip', ''], + ['username', ''], + ['type', ''], + ['url', ''], + ]); + + $list = (new UserLogService())->getPage($data); + return success($list); + + } + + /** + * 操作日志详情 + * @param $id + * @return Response + */ + public function info($id) + { + return success((new UserLogService())->getInfo($id)); + } + + +} diff --git a/niucloud/app/adminapi/controller/stat/SiteStat.php b/niucloud/app/adminapi/controller/stat/SiteStat.php new file mode 100644 index 0000000..e4d6f09 --- /dev/null +++ b/niucloud/app/adminapi/controller/stat/SiteStat.php @@ -0,0 +1,35 @@ +getIndexData(); + return success($data); + + } +} diff --git a/niucloud/app/adminapi/controller/stat/Stat.php b/niucloud/app/adminapi/controller/stat/Stat.php new file mode 100644 index 0000000..381b616 --- /dev/null +++ b/niucloud/app/adminapi/controller/stat/Stat.php @@ -0,0 +1,35 @@ +getIndexData(); + return success($data); + + } +} diff --git a/niucloud/app/adminapi/controller/sys/Agreement.php b/niucloud/app/adminapi/controller/sys/Agreement.php new file mode 100644 index 0000000..43d7d64 --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Agreement.php @@ -0,0 +1,63 @@ +getList(); + return success($res); + } + + /** + * 协议内容 + * @param string $key + * @return Response + */ + public function info(string $key) + { + $res = (new AgreementService())->getAgreement($key); + return success($res); + } + + /** + * 协议更新 + * @param string $key + * @return Response + */ + public function edit(string $key) + { + $data = $this->request->params([ + ['title', ''], + ['content', ''], + ], false); + $this->validate($data, 'app\validate\sys\Agreement.edit'); + (new AgreementService())->setAgreement($key, $data['title'], $data['content']); + return success('EDIT_SUCCESS'); + } + + +} diff --git a/niucloud/app/adminapi/controller/sys/App.php b/niucloud/app/adminapi/controller/sys/App.php new file mode 100644 index 0000000..12018ca --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/App.php @@ -0,0 +1,33 @@ +getAppList()); + } + + +} diff --git a/niucloud/app/adminapi/controller/sys/Area.php b/niucloud/app/adminapi/controller/sys/Area.php new file mode 100644 index 0000000..dd3734f --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Area.php @@ -0,0 +1,69 @@ +getListByPid($pid)); + } + + /** + * 获取层级列表 + * @param int $level + * @return Response + */ + public function tree(int $level) + { + return success((new AreaService())->getAreaTree($level)); + } + + /** + * @return Response + */ + public function addressInfo() + { + $data = $this->request->params([ + ['address', ''], + ]); + return success((new AreaService())->getAddress($data['address'])); + } + + /** + * @return Response + */ + public function contraryAddress() + { + $data = $this->request->params([ + ['location', ''], + ]); + return success((new AreaService())->getAddressInfo($data['location'])); + } + + /** + * + * @return void + */ + public function areaByAreaCode(string $code) { + return success((new AreaService())->getAreaByAreaCode($code)); + } +} diff --git a/niucloud/app/adminapi/controller/sys/Attachment.php b/niucloud/app/adminapi/controller/sys/Attachment.php new file mode 100644 index 0000000..12c8bd4 --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Attachment.php @@ -0,0 +1,164 @@ +request->params([ + ['att_type', ''], + ['cate_id', 0], + ['real_name', ''], + ['page', 0], + ['limit', 0], + ]); + return success((new AttachmentService())->getPage($data)); + } + + /** + * 删除附件 + * @param $att_id + * @return Response + */ +// public function del($att_id) +// { +// return success((new AttachmentService())->del($att_id)); +// } + + /** + * 批量删除 + * @return Response + */ + public function batchDel() + { + $data = $this->request->params([ + ['att_ids', []], + ]); + (new AttachmentService())->delAll($data['att_ids']); + return success('DELETE_SUCCESS'); + } + + /** + * 新增附件分组 + * @return Response + */ + public function addCategory() + { + $data = $this->request->params([ + ['type', FileDict::IMAGE], + ['name', ''] + ]); + $this->validate($data, 'app\validate\sys\AttachmentCategory.add'); + (new AttachmentService())->addCategory($data); + return success('ADD_SUCCESS'); + } + + /** + * 附件分组列表 + */ + public function categoryLists() + { + $data = $this->request->params([ + ['type', ''], + ['name', ''], + ]); + return success((new AttachmentService())->getCategoryList($data)); + } + + /** + * 更新附件分组 + * @return Response + */ + public function editCategory($id) + { + $data = $this->request->params([ + ['name', ''] + ]); + $this->validate($data, 'app\validate\sys\AttachmentCategory.edit'); + (new AttachmentService())->editCategory($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 删除附件组 + * @param $id + * @return Response + */ + public function deleteCategory($id) + { + (new AttachmentService())->delCategory($id); + return success('DELETE_SUCCESS'); + } + + /** + * 移动图片分组 + * @return Response + */ + public function moveCategory($att_id) + { + $data = $this->request->params([ + ['cate_id', ''] + ]); + (new AttachmentService())->modifyCategory($att_id, $data['cate_id']); + return success(); + } + + /** + * 批量移动图片分组 + * @return Response + */ + public function batchMoveCategory() + { + $data = $this->request->params([ + ['cate_id', ''], + ['att_ids', []] + ]); + (new AttachmentService())->batchModifyCategory($data['att_ids'], $data['cate_id']); + return success(); + } + + /** + * 获取图标库分类列表 + */ + public function getIconCategoryList() + { + $data = $this->request->params([ + ['name', ''], + ]); + return success((new AttachmentService())->getIconCategoryList($data)); + } + + /** + * 获取图标库列表 + */ + public function getIconList() + { + $data = $this->request->params([ + ['page', 0], + ['limit', 0], + ['cate_id', 0], + ['real_name', ''], + ]); + return success((new AttachmentService())->getIconList($data)); + } + +} diff --git a/niucloud/app/adminapi/controller/sys/Channel.php b/niucloud/app/adminapi/controller/sys/Channel.php new file mode 100644 index 0000000..a532b95 --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Channel.php @@ -0,0 +1,29 @@ +getMonth()); + } + + /** + * 星期 + * @return Response + */ + public function getWeek() + { + return success((new DateDict())->getWeek()); + } + + +} diff --git a/niucloud/app/adminapi/controller/sys/Config.php b/niucloud/app/adminapi/controller/sys/Config.php new file mode 100644 index 0000000..c11b9ec --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Config.php @@ -0,0 +1,226 @@ +getWebSite()); + } + + /** + * 网站设置 + * @return Response + */ + public function setWebsite() + { + $data = $this->request->params([ + ["site_name", ""], + ["logo", ""], + ["keywords", ""], + ["desc", ""], + ["latitude", ""], + ["longitude", ""], + ["province_id", 0], + ["city_id", 0], + ["district_id", 0], + ["address", ""], + ["full_address", ""], + ["phone", ""], + ["business_hours", ""], + ["site_name", ""], + ["logo", ""], + ["front_end_name", ""], + ["front_end_logo", ""], + ["icon", ""] + ]); + $this->validate($data, 'app\validate\site\Site.edit'); + (new ConfigService())->setWebSite($data); + + $service_data = $this->request->params([ + ["wechat_code", ""], + ["enterprise_wechat", ""], + ["tel", ""], + ]); + (new ConfigService())->setService($service_data); + + return success(); + } + + /** + * 获取版权信息 + * @return Response + */ + public function getCopyright() + { + return success((new ConfigService())->getCopyright()); + } + + /**设置版权信息 + * @return Response + */ + public function setCopyright() + { + $data = $this->request->params([ + ['icp', ''], + ['gov_record', ''], + ['gov_url', ''], + ['market_supervision_url', ''], + ['logo', ''], + ['company_name', ''], + ['copyright_link', ''], + ['copyright_desc', ''], + ]); + (new ConfigService())->setCopyright($data); + return success(); + } + + /** + * 场景域名 + * @return Response + */ + public function getSceneDomain() + { + return success((new ConfigService())->getSceneDomain()); + } + + /** + * 获取服务信息 + * @return Response + */ + public function getServiceInfo() + { + return success((new ConfigService())->getService()); + } + + /**设置版权信息 + * @return Response + */ + public function setMap() + { + $data = $this->request->params([ + ['key', ''], + ]); + (new ConfigService())->setMap($data); + return success(); + } + + /** + * 获取地图设置 + * @return Response + */ + public function getMap() + { + return success((new ConfigService())->getMap()); + } + + /** + * 获取站点首页列表(如果正在使用is_use = 1) + */ + public function getSiteIndexList() + { + return success((new ConfigService())->getSiteIndexList()); + } + + /** + * 首页配置 + */ + public function setSiteIndex() + { + $data = $this->request->params([ + ['view_path', ''], + ]); + (new ConfigService())->setSiteIndexConfig($data); + return success(); + } + + /** + * 获取站点首页列表(如果正在使用is_use = 1) + */ + public function getAdminIndexList() + { + return success((new ConfigService())->getAdminIndexList()); + } + + /** + * 首页配置 + */ + public function setAdminIndex() + { + $data = $this->request->params([ + ['view_path', ''], + ]); + (new ConfigService())->setAdminIndexConfig($data); + return success(); + } + + /** + * 获取手机端首页列表 + */ + public function getWapIndexList() + { + $data = $this->request->params([ + [ 'title', '' ], + [ 'key', '' ] // 多个查询,逗号隔开 + ]); + return success(( new ConfigService() )->getWapIndexList($data)); + } + + /** + * 设置快捷菜单 + */ + public function setShortcutMenu() + { + $data = $this->request->params([ + ['menu', []], + ]); + (new ConfigService())->setShortcutMenu($data['menu']); + return success(); + } + + /** + * 获取站点快捷菜单 + */ + public function getShortcutMenu() + { + return success(data: (new ConfigService())->getShortcutMenu()); + } + + /** + * 获取开发者key + * @return Response + */ + public function getDeveloperToken() { + return success(data: (new ConfigService())->getDeveloperToken()); + } + + /** + * 设置开发者key + * @return Response + */ + public function setDeveloperToken() { + $data = $this->request->params([ + ['token', ''], + ]); + (new ConfigService())->setDeveloperToken($data); + return success(); + } +} diff --git a/niucloud/app/adminapi/controller/sys/Menu.php b/niucloud/app/adminapi/controller/sys/Menu.php new file mode 100644 index 0000000..e70a01e --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Menu.php @@ -0,0 +1,158 @@ +getAllMenuList($app_type, 'all', 1)); + } + + /** + * 菜单信息 + * @param $menu_key + * @return Response + */ + public function info($app_type, $menu_key) + { + return success((new MenuService())->get($app_type, $menu_key)); + } + + /** + * 新增菜单接口 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['app_type', ''], + ['menu_name', ''], + ['menu_type', 0], + ['menu_key', ''], + ['parent_key', ''], + ['icon', ''], + ['api_url', ''], + ['view_path', ''], + ['router_path', ''], + ['methods', ''], + ['sort', 0], + ['status', MenuDict::ON], + ['is_show', 0], + ['addon', ''], + ['menu_short_name',''] + ]); + $this->validate($data, 'app\validate\sys\Menu.add'); + (new MenuService())->add($data); + return success('ADD_SUCCESS'); + } + + /** + * 菜单或接口更新 + */ + public function edit($app_type, $menu_key) + { + $data = $this->request->params([ + ['menu_name', ''], + ['parent_key', ''], + ['menu_type', 0], + ['icon', ''], + ['api_url', ''], + ['router_path', ''], + ['view_path', ''], + ['methods', ''], + ['sort', 0], + ['status', MenuDict::ON], + ['is_show', 0], + ['addon', ''], + ['menu_short_name',''] + ]); + $this->validate($data, 'app\validate\sys\Menu.edit'); + (new MenuService())->edit($app_type, $menu_key, $data); + return success('EDIT_SUCCESS'); + } + + + /** + * 获取菜单类型静态资源 + * @return Response + */ + public function getMenuType() + { + return success(MenuTypeDict::getMenuType()); + } + + /** + * 获取请求方式 + * @return Response + */ + public function getMethodType() + { + return success(MethodDict::getMethodType()); + } + + /** + * 删除菜单 + * @param $menu_key + * @return Response + */ + public function del($app_type, $menu_key) + { + (new MenuService())->del($app_type, $menu_key); + return success('DELETE_SUCCESS'); + } + + public function refreshMenu() + { + (new InstallSystemService())->install(); + return success('REFRESH_SUCCESS'); + } + + /** + * 查询菜单信息 + */ + public function getSystem() + { + return success( (new MenuService())->getSystemMenu('all', 1)); + } + + /** + * 查询应用权限信息 + */ + public function getAddonMenu($app_key) + { + return success( (new MenuService())->getAddonMenu($app_key,'all', 1)); + } + + /** + * 查询菜单类型为目录的菜单 + * @param $addon + * @return Response + */ + public function getMenuByTypeDir($addon = 'system') { + return success( (new MenuService())->getMenuByTypeDir($addon)); + } +} diff --git a/niucloud/app/adminapi/controller/sys/Role.php b/niucloud/app/adminapi/controller/sys/Role.php new file mode 100644 index 0000000..9c1d2ed --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Role.php @@ -0,0 +1,96 @@ +request->params([ + ['role_name', ''], + ]); + $list = (new RoleService())->getPage($data); + return success($list); + + } + + /** + * 用户组详情 + * @param $role_id + * @return Response + */ + public function info($role_id) + { + return success((new RoleService())->getInfo($role_id)); + } + + /** + * 获取全部权限 + * @return Response + */ + public function all() + { + return success((new RoleService())->getAll()); + } + + /** + * 新增用户组 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['role_name', ''], + ['rules', []], + ['status', RoleStatusDict::ON], + ]); + $this->validate($data, 'app\validate\sys\Role.add'); + (new RoleService())->add($data); + return success('ADD_SUCCESS'); + } + + + /** + * 更新用户组 + */ + public function edit($role_id) + { + $data = $this->request->params([ + ['role_name', ''], + ['rules', []], + ['status', RoleStatusDict::ON], + ]); + $this->validate($data, 'app\validate\sys\Role.edit'); + (new RoleService())->edit($role_id, $data); + return success('EDIT_SUCCESS'); + } + + + /** + * 删除单个用户组 + * @param $role_id + * @return Response + * @throws DbException + */ + public function del($role_id) + { + (new RoleService())->del($role_id); + return success('DELETE_SUCCESS'); + } + +} diff --git a/niucloud/app/adminapi/controller/sys/Schedule.php b/niucloud/app/adminapi/controller/sys/Schedule.php new file mode 100644 index 0000000..1ffd6a4 --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/Schedule.php @@ -0,0 +1,131 @@ +request->params([ + ['key', ''], + ['status', ''], + ]); + return success(data: (new ScheduleService())->getPage($data)); + + } + + /** + * 计划任务模板 + * @return Response + */ + public function template() + { + return success(data: (new ScheduleService())->getTemplateList()); + } + + /** + * 获取任务模式 + * @return Response + */ + public function getType() + { + return success(data: ScheduleDict::getType()); + } + + /** + * 详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new ScheduleService())->getInfo($id)); + } + + /** + * 添加 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['key', '', false], + ['time', []], + ['status', ScheduleDict::OFF], + ]); + $this->validate($data, 'app\validate\sys\Schedule.add'); + (new ScheduleService())->add($data); + return success('ADD_SUCCESS'); + } + + /** + * 编辑 + * @param int $id + * @return Response + */ + public function edit(int $id) + { + $data = $this->request->params([ +// [ 'key', '' ], + ['time', []], + ['status', ScheduleDict::OFF], + ]); + (new ScheduleService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 启用或关闭 + * @param int $id + * @return Response + */ + public function modifyStatus(int $id) + { + $data = $this->request->params([ + ['status', ScheduleDict::OFF], + ]); + (new ScheduleService())->modifyStatus($id, $data['status']); + return success('EDIT_SUCCESS'); + } + + /** + * 删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new ScheduleService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 时间间隔类型 + * @return Response + */ + public function getDateType() + { + return success(data: ScheduleDict::getDateType()); + } +} diff --git a/niucloud/app/adminapi/controller/sys/System.php b/niucloud/app/adminapi/controller/sys/System.php new file mode 100644 index 0000000..7ee9ece --- /dev/null +++ b/niucloud/app/adminapi/controller/sys/System.php @@ -0,0 +1,109 @@ +getInfo()); + } + + /** + * 获取当前url配置 + * @return Response + */ + public function url() + { + return success((new SystemService())->getUrl()); + } + + /** + * 获取系统环境配置 + * @return Response + */ + public function getSystemInfo() + { + return success((new SystemService())->getSystemInfo()); + } + + /** + * 清理缓存,更新菜单 + */ + public function schemaCache() + { + + return success((new SystemService())->schemaCache()); + } + + /** + * 校验消息队列是否正常运行 + * @return Response + */ + public function checkJob() + { + return success(data: (new SystemService())->checkJob()); + } + + /** + * 校验计划任务是否正常运行 + * @return Response + */ + public function checkSchedule() + { + return success(data: (new SystemService())->checkSchedule()); + } + + /** + * 获取布局 + * @return Response + */ + public function layout() { + $layouts = event('SiteLayout'); + if (count($layouts) > 1) { + array_multisort(array_column($layouts, 'sort'), SORT_ASC, $layouts); + } + return success($layouts); + } + + /** + * + * 设置布局 + * @return Response + */ + public function setLayout(){ + $key = input('key', ''); + return success(data: (new SystemService())->setLayout($key)); + } + + /** + * 环境变量查询 + * @return Response + */ + public function getEnvInfo() + { + return success(['app_debug' => env('app_debug', false)]); + } +} diff --git a/niucloud/app/adminapi/controller/upload/Storage.php b/niucloud/app/adminapi/controller/upload/Storage.php new file mode 100644 index 0000000..6a486e3 --- /dev/null +++ b/niucloud/app/adminapi/controller/upload/Storage.php @@ -0,0 +1,65 @@ +getStorageList(); + return success($res); + } + + /** + * 存储配置详情 + * @param $storage_type 存储驱动类型 + * @return Response + */ + public function storageConfig($storage_type) + { + $res = (new StorageConfigService())->getStorageConfig($storage_type); + return success($res); + } + + /** + * 存储设置修改 + * @return Response + */ + public function editStorage($storage_type) + { + //参数获取 + $storage_type_list = StorageDict::getType(); + if (!array_key_exists($storage_type, $storage_type_list)) throw new AdminException('OSS_TYPE_NOT_EXIST'); + //数据验证 + $data = [ + ['is_use', 0] + ]; + foreach ($storage_type_list[$storage_type]['params'] as $k_param => $v_param) { + $data[] = [$k_param, '']; + } + + $request_data = $this->request->params($data); + (new StorageConfigService())->setStorageConfig($storage_type, $request_data); + return success('SET_SUCCESS'); + } + +} diff --git a/niucloud/app/adminapi/controller/upload/Upload.php b/niucloud/app/adminapi/controller/upload/Upload.php new file mode 100644 index 0000000..79efca2 --- /dev/null +++ b/niucloud/app/adminapi/controller/upload/Upload.php @@ -0,0 +1,91 @@ +request->params([ + ['file', 'file'], + ['cate_id', 0], + ['is_attachment', 1] + ]); + $upload_service = new UploadService(); + return success($upload_service->image($data['file'], $data['cate_id'], boolval($data['is_attachment']))); + } + + /** + * 视频上传 + * @return Response + */ + public function video() + { + $data = $this->request->params([ + ['file', 'file'], + ['cate_id', 0] + ]); + $upload_service = new UploadService(); + return success($upload_service->video($data['file'], $data['cate_id'])); + } + + /** + * 文件上传(默认不上云) + * @return Response + */ + public function document($type) + { + $data = $this->request->params([ + ['file', 'file'], + ]); + $upload_service = new UploadService(); + return success($upload_service->document($data['file'], $type)); + } + + /** + * 上传配置 + * @return Response + */ + public function setUploadConfig() + { + $data = $this->request->params( + [ + ['image_size', 0], + ['video_size', 0], + ['image_ext', ''], + ['video_ext', ''], + ] + ); + (new UploadConfigService())->setUploadConfig($data); + return success('SET_SUCCESS'); + } + + /** + * 获取上传配置 + * @return Response + */ + public function getUploadConfig() + { + return success((new UploadConfigService())->getUploadConfig()); + } + +} diff --git a/niucloud/app/adminapi/controller/user/User.php b/niucloud/app/adminapi/controller/user/User.php new file mode 100644 index 0000000..924b868 --- /dev/null +++ b/niucloud/app/adminapi/controller/user/User.php @@ -0,0 +1,60 @@ +request->params([ + ['username', ''], + ['real_name', ''] + ]); + + $list = (new UserService())->getUserAdminPage($data); + return success($list); + + } + + /** + * 用户详情 + * @param $uid + * @return Response + */ + public function info($uid) + { + return success((new UserService())->getUserAdminInfo($uid)); + } + + public function pages() + { + $data = $this->request->params([ + ['username', ''], + ['realname', ''], + ['create_time', []], + ]); + $list = (new UserService())->getUserAllPage($data); + return success($list); + } + + public function checkUserIsExist() { + $data = $this->request->params([ + ['username', ''], + ]); + $is_exist = (new UserService())->checkUsername($data['username']); + return success(data:$is_exist); + } +} diff --git a/niucloud/app/adminapi/controller/weapp/Config.php b/niucloud/app/adminapi/controller/weapp/Config.php new file mode 100644 index 0000000..31a229c --- /dev/null +++ b/niucloud/app/adminapi/controller/weapp/Config.php @@ -0,0 +1,52 @@ +getWeappConfig()); + } + + /** + * 设置微信小程序配置信息 + * @return Response + */ + public function set() + { + $data = $this->request->params([ + ['weapp_name', ''], + ['weapp_original', ''], + ['app_id', ''], + ['app_secret', ''], + ['token', ''], + ['encoding_aes_key', ''], + ['qr_code', ''], + ['encryption_type', ''], + ['upload_private_key', ''] + ]); + $this->validate($data, 'app\validate\channel\Weapp.set'); + (new WeappConfigService())->setWeappConfig($data); + return success('SET_SUCCESS'); + } + + +} diff --git a/niucloud/app/adminapi/controller/weapp/Package.php b/niucloud/app/adminapi/controller/weapp/Package.php new file mode 100644 index 0000000..c9a0831 --- /dev/null +++ b/niucloud/app/adminapi/controller/weapp/Package.php @@ -0,0 +1,35 @@ +request->params([ + ['version', ''], + ['path', ''], + ['desc', ''], + ['config', []], + ]); + + } + +} diff --git a/niucloud/app/adminapi/controller/weapp/Template.php b/niucloud/app/adminapi/controller/weapp/Template.php new file mode 100644 index 0000000..954b1c3 --- /dev/null +++ b/niucloud/app/adminapi/controller/weapp/Template.php @@ -0,0 +1,48 @@ +getList()); + } + + + /** + * 菜单信息 + * @return Response + */ + public function sync() + { + $data = $this->request->params([ + ['keys', []] + ]); + $weapp_template_service = new WeappTemplateService(); + return success($weapp_template_service->syncAll($data['keys'])); + } + +} diff --git a/niucloud/app/adminapi/controller/weapp/Version.php b/niucloud/app/adminapi/controller/weapp/Version.php new file mode 100644 index 0000000..86be2e6 --- /dev/null +++ b/niucloud/app/adminapi/controller/weapp/Version.php @@ -0,0 +1,87 @@ +request->params([ + + ]); + return success((new WeappVersionService())->getPage($data)); + } + + /** + * 详情 + * @param int $id + * @return Response + */ + public function info(int $id) + { + return success((new WeappVersionService())->getInfo($id)); + } + + /** + * 添加 + * @return Response + */ + public function add() + { + $data = $this->request->params([ + ['desc', ''] + ]); + return success(data:(new WeappVersionService())->add($data)); + } + + /** + * 获取预览码 + * @param int $id + * @return Response + */ + public function preview() + { + return success(data:(new WeappVersionService())->getPreviewImage()); + } + + /** + * 删除 + * @param int $id + * @return Response + */ + public function del(int $id) + { + (new WeappVersionService())->del($id); + return success('DELETE_SUCCESS'); + } + + /** + * 获取小程序上传日志 + * @param string $key + * @return Response + */ + public function uploadLog(string $key) { + return success(data: (new WeappVersionService())->getUploadLog($key)); + } +} diff --git a/niucloud/app/adminapi/controller/wechat/Config.php b/niucloud/app/adminapi/controller/wechat/Config.php new file mode 100644 index 0000000..4b98a56 --- /dev/null +++ b/niucloud/app/adminapi/controller/wechat/Config.php @@ -0,0 +1,59 @@ +getWechatConfig()); + } + + /** + * 设置微信配置信息 + * @return Response + */ + public function set() + { + $data = $this->request->params([ + ['wechat_name', ''], + ['wechat_original', ''], + ['app_id', ''], + ['app_secret', ''], + ['token', ''], + ['encoding_aes_key', ''], + ['qr_code', ''], + ['encryption_type', ''] + ]); + $this->validate($data, 'app\validate\channel\Wechat.set'); + (new WechatConfigService())->setWechatConfig($data); + return success('SET_SUCCESS'); + } + + /** + * 获取微信静态资源 + * @return Response + */ + public function static() + { + return success((new WechatConfigService())->getWechatStaticInfo()); + } + +} diff --git a/niucloud/app/adminapi/controller/wechat/Menu.php b/niucloud/app/adminapi/controller/wechat/Menu.php new file mode 100644 index 0000000..881ce5f --- /dev/null +++ b/niucloud/app/adminapi/controller/wechat/Menu.php @@ -0,0 +1,51 @@ +getInfo()); + } + + /** + * 设置菜单 + * @return Response + * @throws InvalidConfigException + * @throws GuzzleException + */ + public function edit() + { + $wechat_menu_service = new WechatMenuService(); + $data = $this->request->params([ + ['button', []] + ]); + $wechat_menu_service->edit($data['button']); + return success('EDIT_SUCCESS'); + } +} diff --git a/niucloud/app/adminapi/controller/wechat/Reply.php b/niucloud/app/adminapi/controller/wechat/Reply.php new file mode 100644 index 0000000..3c14b23 --- /dev/null +++ b/niucloud/app/adminapi/controller/wechat/Reply.php @@ -0,0 +1,143 @@ +getKeywordInfo($id)); + } + + public function getKeywordLists() + { + $data = $this->request->params([ + ['keyword', ''], + ['name', ''] + ]); + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->getKeywordPage($data)); + } + + /** + * 新增关键词回复 + * @return Response + */ + public function addKeyword() + { + $wechat_reply_service = new WechatReplyService(); + $data = $this->request->params([ + ['name', ''], + ['keyword', ''], + ['matching_type', ''], + ['content_type', ''], + ['content', ''], + ['status', 0], + ['sort', ''], + ]); + return success($wechat_reply_service->addKeyword($data)); + } + + /** + * 更新关键词回复 + * @return Response + */ + public function editKeyword($id) + { + $wechat_reply_service = new WechatReplyService(); + $data = $this->request->params([ + ['name', ''], + ['keyword', ''], + ['matching_type', ''], + ['content_type', ''], + ['content', ''], + ['status', 0], + ['sort', ''], + ]); + return success($wechat_reply_service->editKeyword($id, $data)); + } + + /** + * 删除关键字回复 + * @return Response + */ + public function delKeyword($id) + { + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->delKeyword($id)); + } + + /** + * 获取默认回复 + * @return Response + */ + public function default() + { + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->getDefault()); + } + + /** + * 更新默认回复 + * @return Response + */ + public function editDefault() + { + $data = $this->request->params([ + ['content_type', ''], + ['content', ''], + ['status', 0], + ]); + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->editDefault($data)); + } + + /** + * 获取关注回复 + * @return Response + */ + public function subscribe() + { + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->getSubscribe()); + } + + /** + * 更新关注回复 + * @return Response + */ + public function editSubscribe() + { + $data = $this->request->params([ + ['content_type', ''], + ['content', ''], + ['status', 0], + ]); + $wechat_reply_service = new WechatReplyService(); + return success($wechat_reply_service->editSubscribe($data)); + } + + +} diff --git a/niucloud/app/adminapi/controller/wechat/Template.php b/niucloud/app/adminapi/controller/wechat/Template.php new file mode 100644 index 0000000..838887a --- /dev/null +++ b/niucloud/app/adminapi/controller/wechat/Template.php @@ -0,0 +1,48 @@ +request->params([ + ['keys', []] + ]); + $wechat_template_service = new WechatTemplateService(); + return success($wechat_template_service->syncAll($data['keys'])); + } + + /** + * 模板消息 + * @return Response + */ + public function lists() + { + $wechat_template_service = new WechatTemplateService(); + return success($wechat_template_service->getList()); + } + + +} diff --git a/niucloud/app/adminapi/middleware.php b/niucloud/app/adminapi/middleware.php new file mode 100644 index 0000000..f1ed80e --- /dev/null +++ b/niucloud/app/adminapi/middleware.php @@ -0,0 +1,12 @@ +checkRole($request); + //处理用户的权限 + return $next($request); + } +} diff --git a/niucloud/app/adminapi/middleware/AdminCheckToken.php b/niucloud/app/adminapi/middleware/AdminCheckToken.php new file mode 100644 index 0000000..6eb9f58 --- /dev/null +++ b/niucloud/app/adminapi/middleware/AdminCheckToken.php @@ -0,0 +1,39 @@ +adminToken(); + $token_info = (new LoginService())->parseToken($token); + $request->uid($token_info['uid']); + $request->username($token_info['username']); + if(!$is_home){ + //校对当前登录的用户是否拥有这个站点的管理权限 + (new AuthService())->checkSiteAuth($request); + } + return $next($request); + } +} diff --git a/niucloud/app/adminapi/middleware/AdminLog.php b/niucloud/app/adminapi/middleware/AdminLog.php new file mode 100644 index 0000000..46ce90c --- /dev/null +++ b/niucloud/app/adminapi/middleware/AdminLog.php @@ -0,0 +1,44 @@ +method() != 'GET') { + $data = [ + 'uid' => $request->uid(), + 'username' => $request->username(), + 'url' => $request->url(), + 'params' => $request->param(), + 'ip' => $request->ip(), + 'type' => $request->method() + + ]; + (new UserLogService())->add($data); + } + + return $next($request); + } +} diff --git a/niucloud/app/adminapi/middleware/AllowCrossDomain.php b/niucloud/app/adminapi/middleware/AllowCrossDomain.php new file mode 100644 index 0000000..d6baf40 --- /dev/null +++ b/niucloud/app/adminapi/middleware/AllowCrossDomain.php @@ -0,0 +1,39 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); + +/** + * 应用插件相关路由 + */ +Route::group(function () { + //获取已安装插件列表 + Route::get('addon/list/install', 'addon.Addon/getInstallList'); +}); diff --git a/niucloud/app/adminapi/route/aliapp.php b/niucloud/app/adminapi/route/aliapp.php new file mode 100644 index 0000000..c5c25da --- /dev/null +++ b/niucloud/app/adminapi/route/aliapp.php @@ -0,0 +1,34 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/app.php b/niucloud/app/adminapi/route/app.php new file mode 100644 index 0000000..4aa83b7 --- /dev/null +++ b/niucloud/app/adminapi/route/app.php @@ -0,0 +1,19 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/auth.php b/niucloud/app/adminapi/route/auth.php new file mode 100644 index 0000000..d3a0890 --- /dev/null +++ b/niucloud/app/adminapi/route/auth.php @@ -0,0 +1,44 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/channel.php b/niucloud/app/adminapi/route/channel.php new file mode 100644 index 0000000..4b13f60 --- /dev/null +++ b/niucloud/app/adminapi/route/channel.php @@ -0,0 +1,32 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/dict.php b/niucloud/app/adminapi/route/dict.php new file mode 100644 index 0000000..40ce640 --- /dev/null +++ b/niucloud/app/adminapi/route/dict.php @@ -0,0 +1,43 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- sys_dict diff --git a/niucloud/app/adminapi/route/diy.php b/niucloud/app/adminapi/route/diy.php new file mode 100644 index 0000000..77f16ba --- /dev/null +++ b/niucloud/app/adminapi/route/diy.php @@ -0,0 +1,95 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/generator.php b/niucloud/app/adminapi/route/generator.php new file mode 100644 index 0000000..41673e6 --- /dev/null +++ b/niucloud/app/adminapi/route/generator.php @@ -0,0 +1,53 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/home.php b/niucloud/app/adminapi/route/home.php new file mode 100644 index 0000000..12a0963 --- /dev/null +++ b/niucloud/app/adminapi/route/home.php @@ -0,0 +1,33 @@ +middleware(AdminCheckToken::class, true) + ->middleware(AdminLog::class); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/member.php b/niucloud/app/adminapi/route/member.php new file mode 100644 index 0000000..6538683 --- /dev/null +++ b/niucloud/app/adminapi/route/member.php @@ -0,0 +1,117 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/niucloud.php b/niucloud/app/adminapi/route/niucloud.php new file mode 100644 index 0000000..d1a399e --- /dev/null +++ b/niucloud/app/adminapi/route/niucloud.php @@ -0,0 +1,59 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/notice.php b/niucloud/app/adminapi/route/notice.php new file mode 100644 index 0000000..5002c48 --- /dev/null +++ b/niucloud/app/adminapi/route/notice.php @@ -0,0 +1,54 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/order.php b/niucloud/app/adminapi/route/order.php new file mode 100644 index 0000000..a41a83c --- /dev/null +++ b/niucloud/app/adminapi/route/order.php @@ -0,0 +1,45 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/pay.php b/niucloud/app/adminapi/route/pay.php new file mode 100644 index 0000000..e140588 --- /dev/null +++ b/niucloud/app/adminapi/route/pay.php @@ -0,0 +1,55 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/route.php b/niucloud/app/adminapi/route/route.php new file mode 100644 index 0000000..46f2e0a --- /dev/null +++ b/niucloud/app/adminapi/route/route.php @@ -0,0 +1,34 @@ +load(['app_type' => 'adminapi']); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/site.php b/niucloud/app/adminapi/route/site.php new file mode 100644 index 0000000..ca13a60 --- /dev/null +++ b/niucloud/app/adminapi/route/site.php @@ -0,0 +1,90 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/stat.php b/niucloud/app/adminapi/route/stat.php new file mode 100644 index 0000000..60ee203 --- /dev/null +++ b/niucloud/app/adminapi/route/stat.php @@ -0,0 +1,34 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/adminapi/route/sys.php b/niucloud/app/adminapi/route/sys.php new file mode 100644 index 0000000..8addde4 --- /dev/null +++ b/niucloud/app/adminapi/route/sys.php @@ -0,0 +1,223 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); + +//系统环境(不效验登录状态) +Route::group('sys', function () { + Route::get('web/website', 'sys.Config/getWebsite'); + // 获取版权信息 + Route::get('web/copyright', 'sys.Config/getCopyright'); +}); diff --git a/niucloud/app/adminapi/route/upgrade.php b/niucloud/app/adminapi/route/upgrade.php new file mode 100644 index 0000000..b15077d --- /dev/null +++ b/niucloud/app/adminapi/route/upgrade.php @@ -0,0 +1,38 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/upload.php b/niucloud/app/adminapi/route/upload.php new file mode 100644 index 0000000..030f6ea --- /dev/null +++ b/niucloud/app/adminapi/route/upload.php @@ -0,0 +1,11 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/weapp.php b/niucloud/app/adminapi/route/weapp.php new file mode 100644 index 0000000..8d98310 --- /dev/null +++ b/niucloud/app/adminapi/route/weapp.php @@ -0,0 +1,46 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); diff --git a/niucloud/app/adminapi/route/wechat.php b/niucloud/app/adminapi/route/wechat.php new file mode 100644 index 0000000..1145ab7 --- /dev/null +++ b/niucloud/app/adminapi/route/wechat.php @@ -0,0 +1,75 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/api/config/config.php b/niucloud/app/api/config/config.php new file mode 100644 index 0000000..9e9d399 --- /dev/null +++ b/niucloud/app/api/config/config.php @@ -0,0 +1,15 @@ + 'json', +]; \ No newline at end of file diff --git a/niucloud/app/api/config/route.php b/niucloud/app/api/config/route.php new file mode 100644 index 0000000..0303669 --- /dev/null +++ b/niucloud/app/api/config/route.php @@ -0,0 +1,21 @@ + true, + // 合并路由规则 + 'route_rule_merge' => true, + // 路由是否完全匹配 + 'route_complete_match' => true, + // 是否自动转换URL中的控制器和操作名 + 'url_convert' => false, +]; diff --git a/niucloud/app/api/controller/agreement/Agreement.php b/niucloud/app/api/controller/agreement/Agreement.php new file mode 100644 index 0000000..3810a8f --- /dev/null +++ b/niucloud/app/api/controller/agreement/Agreement.php @@ -0,0 +1,28 @@ +getAgreement($key); + return success($res); + } +} \ No newline at end of file diff --git a/niucloud/app/api/controller/article/Article.php b/niucloud/app/api/controller/article/Article.php new file mode 100644 index 0000000..0744b6d --- /dev/null +++ b/niucloud/app/api/controller/article/Article.php @@ -0,0 +1,57 @@ +request->params([ + ['title', ''], + ['category_id', ''], + ]); + return success((new ArticleService())->getPage($data)); + } + + public function all(){ + $data = $this->request->params([ + ['title', ''], + ['category_id', ''], + ['ids', []], + ['limit', 0] + ]); + return success((new ArticleService())->getAll($data, $data['limit'])); + } + + /** + * 文章详情 + * @param int $id + * @return Response + */ + public function info(int $id){ + return success((new ArticleService())->getInfo($id)); + } + + +} diff --git a/niucloud/app/api/controller/article/ArticleCategory.php b/niucloud/app/api/controller/article/ArticleCategory.php new file mode 100644 index 0000000..bef5622 --- /dev/null +++ b/niucloud/app/api/controller/article/ArticleCategory.php @@ -0,0 +1,47 @@ +request->params([ + ['name', ''], + ]); + return success((new ArticleCategoryService())->getPage($data)); + } + + /** + * 文章分类详情 + * @param int $id + * @return Response + */ + public function info(int $id){ + return success((new ArticleCategoryService())->getInfo($id)); + } + + + +} diff --git a/niucloud/app/api/controller/diy/Diy.php b/niucloud/app/api/controller/diy/Diy.php new file mode 100644 index 0000000..78b8d02 --- /dev/null +++ b/niucloud/app/api/controller/diy/Diy.php @@ -0,0 +1,60 @@ +request->params([ + [ 'id', '' ], + [ 'name', '' ] + ]); + return success((new DiyService())->getInfo($params)); + } + + /** + * 底部菜单信息 + * @return Response + */ + public function tabbar() + { + $params = $this->request->params([ + [ 'key', 'app' ], + ]); + return success((new DiyConfigService())->getBottomConfig($params[ 'key' ])); + } + + /** + * 分享内容 + * @return Response + */ + public function share() + { + $data = $this->request->params([ + [ 'route', '' ], + [ 'params', '' ] + ]); + return success((new DiyRouteService())->getShare($data)); + } +} diff --git a/niucloud/app/api/controller/login/Config.php b/niucloud/app/api/controller/login/Config.php new file mode 100644 index 0000000..f917652 --- /dev/null +++ b/niucloud/app/api/controller/login/Config.php @@ -0,0 +1,31 @@ +getLoginConfig()); + } + + +} diff --git a/niucloud/app/api/controller/login/Login.php b/niucloud/app/api/controller/login/Login.php new file mode 100644 index 0000000..11d97d7 --- /dev/null +++ b/niucloud/app/api/controller/login/Login.php @@ -0,0 +1,104 @@ +request->params([ + ['username', ''], + ['password', ''], + ]); + //参数验证 + //验证码验证 + $result = (new LoginService())->account($data['username'], $data['password']); + if (!$result) { + //账号密码错误, 重置验证码 + return fail('ACCOUNT_OR_PASSWORD_ERROR'); + } + return success($result); + + } + + /** + * 登出 + * @return Response + */ + public function logout() + { + (new LoginService)->logout(); + return success('MEMBER_LOGOUT'); + } + + /** + * 创建验证码 + * @return Response + */ + public function captcha() + { + return success((new CaptchaService())->create()); + } + + /** + * 发送手机验证码 + * @param $type + * @return Response + * @throws Exception + */ + public function sendMobileCode($type) + { + $data = $this->request->params([ + ['mobile', ''], + ]); + return success((new LoginService())->sendMobileCode($data['mobile'], $type)); + } + + /** + * 手机号登录 + * @return Response + */ + public function mobile() + { + $data = $this->request->params([ + ['mobile', ''], + ]); + return success((new LoginService())->mobile($data['mobile'])); + } + + /** + * 重置密码 + * @return Response + */ + public function resetPassword() + { + $data = $this->request->params([ + ['mobile', ''], + ['password', ''] + ]); + //参数验证 + $this->validate($data, 'app\validate\member\Member.reset_password'); + (new LoginService())->resetPassword($data['mobile'], $data['password']); + return success('PASSWORD_RESET_SUCCESS'); + } +} diff --git a/niucloud/app/api/controller/login/Register.php b/niucloud/app/api/controller/login/Register.php new file mode 100644 index 0000000..d56fb8f --- /dev/null +++ b/niucloud/app/api/controller/login/Register.php @@ -0,0 +1,59 @@ +request->params([ + ['username', ''], + ['password', ''], + ['mobile', ''], + ]); + //参数验证 + $this->validate($data, 'app\validate\member\Member.account_register'); + //验证码验证 + $result = (new RegisterService())->account($data['username'], $data['password'], $data['mobile']); + return success($result); + } + + /** + * 手机号注册 + * @return Response + */ + public function mobile() + { + $data = $this->request->params([ + ['mobile', ''], + ]); + //参数验证 + $this->validate($data, [ + 'mobile' => 'require|mobile' + ]); + //验证码验证 + $result = (new RegisterService())->mobile($data['mobile']); + return success($result); + } + + +} diff --git a/niucloud/app/api/controller/member/Account.php b/niucloud/app/api/controller/member/Account.php new file mode 100644 index 0000000..db65679 --- /dev/null +++ b/niucloud/app/api/controller/member/Account.php @@ -0,0 +1,105 @@ +request->params([ + ['from_type', ''] + ]); + $data['account_type'] = MemberAccountTypeDict::POINT; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 余额流水 + * @return Response + */ + public function balance(): Response + { + $data = $this->request->params([ + ['from_type', ''] + ]); + $data['account_type'] = MemberAccountTypeDict::BALANCE; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 零钱流水 + * @return Response + */ + public function money(): Response + { + $data = $this->request->params([ + ['from_type', ''] + ]); + $data['account_type'] = MemberAccountTypeDict::MONEY; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 账户记录数量 + * @return Response + * @throws DbException + */ + public function count(): Response + { + $data = $this->request->params([ + ['from_type', ''], + ['account_type', ''] + ]); + return success(data:(new MemberAccountService())->getCount($data)); + } + + /** + * 佣金流水 + * @return Response + */ + public function commission(): Response + { + $data = $this->request->params([ + ['from_type', ''] + ]); + $data['account_type'] = MemberAccountTypeDict::COMMISSION; + return success((new MemberAccountService())->getPage($data)); + } + + /** + * 账户来源 + * @param $account_type + * @return Response + */ + public function getFromType($account_type): Response + { + + return success(MemberAccountChangeTypeDict::getType($account_type)); + } + +} diff --git a/niucloud/app/api/controller/member/Address.php b/niucloud/app/api/controller/member/Address.php new file mode 100644 index 0000000..03a0c6f --- /dev/null +++ b/niucloud/app/api/controller/member/Address.php @@ -0,0 +1,103 @@ +request->params([ + ["type",""] + ]); + return success((new AddressService())->getList($data)); + } + + /** + * 会员收货地址详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new AddressService())->getInfo($id)); + } + + /** + * 添加会员收货地址 + * @return \think\Response + */ + public function add(){ + $data = $this->request->params([ + ["name",""], + ["mobile",""], + ["province_id",0], + ["city_id",0], + ["district_id",0], + ["address",""], + ["address_name", ""], + ["full_address",""], + ["lng",""], + ["lat",""], + ["is_default",0], + ["type",''] + ]); + $this->validate($data, 'app\validate\member\Address.add'); + $id = (new AddressService())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * 会员收货地址编辑 + * @param $id 会员收货地址id + * @return \think\Response + */ + public function edit($id){ + $data = $this->request->params([ + ["name",""], + ["mobile",""], + ["province_id",0], + ["city_id",0], + ["district_id",0], + ["address",""], + ["address_name", ""], + ["full_address",""], + ["lng",""], + ["lat",""], + ["is_default",0], + ["type",''] + ]); + $this->validate($data, 'app\validate\member\Address.edit'); + (new AddressService())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 会员收货地址删除 + * @param $id 会员收货地址id + * @return \think\Response + */ + public function del(int $id){ + (new AddressService())->del($id); + return success('DELETE_SUCCESS'); + } +} diff --git a/niucloud/app/api/controller/member/CashOutAccount.php b/niucloud/app/api/controller/member/CashOutAccount.php new file mode 100644 index 0000000..f65b291 --- /dev/null +++ b/niucloud/app/api/controller/member/CashOutAccount.php @@ -0,0 +1,93 @@ +request->params([ + ['account_type', ''] + ]); + return success((new MemberCashOutAccountService())->getPage($data)); + } + + /** + * 提现账户信息 + * @param int $account_id + * @return Response + */ + public function info(int $account_id){ + return success((new MemberCashOutAccountService())->getInfo($account_id)); + } + + /** + * 查询首条提现账户按账户类型 + * @return Response + */ + public function firstInfo(){ + $data = $this->request->params([ + ['account_type', ''] + ]); + return success((new MemberCashOutAccountService())->getFirstInfo($data)); + } + + /** + * 添加提现账号 + * @return Response + */ + public function add(){ + $data = $this->request->params([ + ['account_type', ''], + ['bank_name', ''], + ['realname', ''], + ['account_no', ''] + ]); + $this->validate($data, 'app\validate\member\CashOutAccount.addOrEdit'); + $id = (new MemberCashOutAccountService())->add($data); + return success('ADD_SUCCESS', [ 'id' => $id ]); + } + + /** + * 编辑提现账号 + * @param int $account_id + * @return Response + */ + public function edit(int $account_id){ + $data = $this->request->params([ + ['account_type', ''], + ['bank_name', ''], + ['realname', ''], + ['account_no', ''] + ]); + $this->validate($data, 'app\validate\member\CashOutAccount.addOrEdit'); + (new MemberCashOutAccountService())->edit($account_id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * 删除提现账号 + * @param int $account_id + * @return Response + */ + public function del(int $account_id){ + (new MemberCashOutAccountService())->del($account_id); + return success('DELETE_SUCCESS'); + } +} \ No newline at end of file diff --git a/niucloud/app/api/controller/member/Member.php b/niucloud/app/api/controller/member/Member.php new file mode 100644 index 0000000..00ae9a3 --- /dev/null +++ b/niucloud/app/api/controller/member/Member.php @@ -0,0 +1,102 @@ +getInfo()); + } + + /** + * 会员中心 + * @return Response + */ + public function center(){ + return success((new MemberService())->center()); + } + + /** + * 修改会员 + * @param $field + * @return Response + */ + public function modify($field){ + $data = $this->request->params([ + ['value', ''], + ['field', $field], + ]); + $data[$field] = $data['value']; + $this->validate($data, 'app\validate\member\Member.modify'); + (new MemberService())->modify($field, $data['value']); + return success('MODIFY_SUCCESS'); + } + + /** + * 编辑会员 + * @return Response + */ + public function edit(){ + $data = $this->request->params([ + ['data', []], + ]); + (new MemberService())->edit($data['data']); + return success('MODIFY_SUCCESS'); + } + + /** + * 绑定手机号 + * @return Response + */ + public function mobile(){ + $data = $this->request->params([ + ['mobile', ''], + ['mobile_code', ''], + ]); + return success((new AuthService())->bindMobile($data['mobile'], $data['mobile_code'])); + } + + /** + * 会员日志 + * @return Response + */ + public function log(){ + $data = $this->request->params([ + ['route', ''], + ['params', ''], + ['pre_route', ''] + ]); + (new MemberLogService())->log($data); + return success(); + } + + /** + * 获取会员码 + */ + public function qrcode(){ + return success((new MemberService())->getQrcode()); + } +} diff --git a/niucloud/app/api/controller/member/MemberCashOut.php b/niucloud/app/api/controller/member/MemberCashOut.php new file mode 100644 index 0000000..545fdfb --- /dev/null +++ b/niucloud/app/api/controller/member/MemberCashOut.php @@ -0,0 +1,91 @@ +request->params([ + [ 'status', '' ], + [ 'account_type', '' ] + ]), function($value){ + return $value !== ''; + }); + return success(( new MemberCashOutService() )->getPage($data)); + } + + /** + * 提现详情 + * @return Response + */ + public function info($id) + { + return success(( new MemberCashOutService() )->getInfo($id)); + } + + /** + * 提现配置 + * @return Response + */ + public function config() + { + return success(( new MemberCashOutService() )->getCashOutConfig()); + } + + /** + * 转账方式 + * @return Response + */ + public function getTransferType() + { + return success(TransferDict::getTransferType([], false)); + } + + /** + * 申请提现 + * @return Response + */ + public function apply() + { + $data = $this->request->params([ + [ 'apply_money', 0 ], + [ 'account_type', MemberAccountTypeDict::MONEY ], + [ 'transfer_type', '' ], + [ 'account_id', 0 ] + ]); + $this->validate($data, 'app\validate\member\CashOut.apply'); + return success(( new MemberCashOutService() )->apply($data)); + } + + /** + * 撤销提现申请 + * @param $id + * @return Response + */ + public function cancel($id) + { + return success(( new MemberCashOutService() )->cancel($id)); + } + +} diff --git a/niucloud/app/api/controller/order/Recharge.php b/niucloud/app/api/controller/order/Recharge.php new file mode 100644 index 0000000..b1d76d8 --- /dev/null +++ b/niucloud/app/api/controller/order/Recharge.php @@ -0,0 +1,52 @@ + 'h5', 'ip' => '127.0.0.1', 'member_message' => '','recharge_money' => 12.00] + $data = $this->request->params([ + ['member_message', ''], + ['recharge_money', 0] + ]); + $res = (new RechargeOrderService())->recharge($data); + return success($res); + } + + public function lists(){ + $data = $this->request->params([ + ['order_status', ''] + ]); + $res = (new RechargeOrderService())->getPage($data); + return success($res); + } + + /** + * 查询充值订单详情 + * @param int $order_id + * @return Response + */ + public function detail(int $order_id){ + $res = (new RechargeOrderService())->getDetail($order_id); + return success($res); + } +} diff --git a/niucloud/app/api/controller/pay/Pay.php b/niucloud/app/api/controller/pay/Pay.php new file mode 100644 index 0000000..7cc3fa1 --- /dev/null +++ b/niucloud/app/api/controller/pay/Pay.php @@ -0,0 +1,72 @@ +notify($channel, $type, $action); + } + + /** + * 去支付 + * @return Response + */ + public function pay() + { + + $data = $this->request->params([ + ['type', ''], + ['trade_type', ''],//业务类型 + ['trade_id', ''],//业务id + ['quit_url', ''], + ['buyer_id', ''], + ['return_url', ''], + ['voucher', ''] + ]); + + return success('SUCCESS',(new PayService())->pay($data['type'], $data['trade_type'], $data['trade_id'], $data['return_url'], $data['quit_url'], $data['buyer_id'], $data['voucher'])); + } + + public function info($trade_type, $trade_id) + { + return success((new PayService())->getInfoByTrade($trade_type, $trade_id)); + } + + /** + * 获取可用的支付方法 + * @param $trade_type + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getPayType($trade_type){ + return success((new PayService())->getPayTypeByTrade($trade_type)); + } +} diff --git a/niucloud/app/api/controller/sys/Area.php b/niucloud/app/api/controller/sys/Area.php new file mode 100644 index 0000000..d5d76ee --- /dev/null +++ b/niucloud/app/api/controller/sys/Area.php @@ -0,0 +1,50 @@ +getListByPid($pid)); + } + + /** + * 获取层级列表 + * @param int $level + * @return Response + */ + public function tree(int $level) + { + return success((new AreaService())->getAreaTree($level)); + } + + /** + * + * @return void + */ + /** + * 通过编码查询地址信息 + */ + public function areaByAreaCode(string $code) { + return success((new AreaService())->getAreaByAreaCode($code)); + } +} diff --git a/niucloud/app/api/controller/sys/Config.php b/niucloud/app/api/controller/sys/Config.php new file mode 100644 index 0000000..e12bf6b --- /dev/null +++ b/niucloud/app/api/controller/sys/Config.php @@ -0,0 +1,60 @@ +getCopyright()); + } + + /** + * 场景域名 + * @return Response + */ + public function getSceneDomain() + { + return success(( new ConfigService() )->getSceneDomain()); + } + + /** + * 获取站点信息 + * @return Response + */ + public function site() + { + return success(( new SiteService() )->getSiteCache()); + } + + /** + * 获取手机端首页列表 + */ + public function getWapIndexList() + { + $data = $this->request->params([ + [ 'title', '' ], + [ 'key', '' ] // 多个查询,逗号隔开 + ]); + return success(( new ConfigService() )->getWapIndexList($data)); + } +} diff --git a/niucloud/app/api/controller/sys/Index.php b/niucloud/app/api/controller/sys/Index.php new file mode 100644 index 0000000..9080fd9 --- /dev/null +++ b/niucloud/app/api/controller/sys/Index.php @@ -0,0 +1,28 @@ +*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} a{color:#2E5CD5;cursor: pointer;text-decoration: none} a:hover{text-decoration:underline; } body{ background: #fff; font-family: "Century Gothic","Microsoft yahei"; color: #333;font-size:18px;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.6em; font-size: 42px }

:)

ThinkPHP V' . App::version() . '
16载初心不改 - 你值得信赖的PHP框架

[ V6.0 版本由 亿速云 独家赞助发布 ]
'; + } + + public function hello($name = 'ThinkPHP6') + { + return 'hello,' . $name; + } +} diff --git a/niucloud/app/api/controller/sys/Scan.php b/niucloud/app/api/controller/sys/Scan.php new file mode 100644 index 0000000..ef638d3 --- /dev/null +++ b/niucloud/app/api/controller/sys/Scan.php @@ -0,0 +1,32 @@ +request->params([ + ['key', ''], + ]); + return success((new ScanService())->checkScan($data['key'])); + } + +} diff --git a/niucloud/app/api/controller/upload/Upload.php b/niucloud/app/api/controller/upload/Upload.php new file mode 100644 index 0000000..9a3b331 --- /dev/null +++ b/niucloud/app/api/controller/upload/Upload.php @@ -0,0 +1,59 @@ +request->params([ + ['file', 'file'], + ]); + $upload_service = new UploadService(); + return success($upload_service->image($data['file'])); + } + + /** + * 远程图片拉取 + * @return Response + */ + public function imageFetch(){ + $data = $this->request->params([ + ['url', ''], + ]); + $fetch_service = new FetchService(); + return success($fetch_service->image($data['url'])); + } + + + /** + * base64图片上传 + * @return Response + */ + public function imageBase64(){ + $data = $this->request->params([ + ['content', ''], + ]); + $base64_service = new Base64Service(); + return success($base64_service->image($data['content'])); + } +} diff --git a/niucloud/app/api/controller/weapp/Weapp.php b/niucloud/app/api/controller/weapp/Weapp.php new file mode 100644 index 0000000..3ec070e --- /dev/null +++ b/niucloud/app/api/controller/weapp/Weapp.php @@ -0,0 +1,53 @@ +request->params([['code', '']]); + $weapp_auth_service = new WeappAuthService(); + return success($weapp_auth_service->login($data['code'])); + } + + /** + * 注册 + * @return Response + */ + public function register(){ + $data = $this->request->params([ + ['openid', ''], + ['mobile_code', ''], + ['mobile', ''], + ]); + + $weapp_auth_service = new WeappAuthService(); + return success($weapp_auth_service->register($data['openid'], $data['mobile'], $data['mobile_code'])); + } + + + public function subscribeMessage(){ + $data = $this->request->params([ ['keys', ''] ]); + return success((new NoticeService())->getWeappNoticeTemplateId($data['keys'])); + } +} diff --git a/niucloud/app/api/controller/wechat/Serve.php b/niucloud/app/api/controller/wechat/Serve.php new file mode 100644 index 0000000..525f9d2 --- /dev/null +++ b/niucloud/app/api/controller/wechat/Serve.php @@ -0,0 +1,45 @@ +serve(); + } + + +} diff --git a/niucloud/app/api/controller/wechat/Wechat.php b/niucloud/app/api/controller/wechat/Wechat.php new file mode 100644 index 0000000..914bcbf --- /dev/null +++ b/niucloud/app/api/controller/wechat/Wechat.php @@ -0,0 +1,104 @@ +request->params([ + ['url', ''], + ['scopes', ''] + ]); + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->authorization($data['url'], $data['scopes'])); + } + + /** + * 授权登录 + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function login(){ + $data = $this->request->params([ + ['code', ''], + ]); + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->loginByCode($data['code'])); + } + + /** + * 注册 + * @return Response + */ + public function register(){ + $data = $this->request->params([ + ['openid', ''], + ['mobile', ''], + ]); + //参数验证 + $this->validate($data, [ + 'mobile' => 'mobile' + ]); + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->register($data['openid'], $data['mobile'])); + } + + /** + * 同步 + * @return Response + */ + public function sync(){ + $data = $this->request->params([ + ['code', ''], + ]); + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->sync($data['code'])); + } + + /** + * 获取jssdk config + * @return Response + */ + public function jssdkConfig(){ + $data = $this->request->params([ + ['url', ''], + ]); + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->jssdkConfig($data['url'])); + } + + /** + * 扫码登录 + * @return Response + */ + public function scanLogin(){ + $wechat_auth_service = new WechatAuthService(); + return success($wechat_auth_service->scanLogin()); + + } +} diff --git a/niucloud/app/api/middleware.php b/niucloud/app/api/middleware.php new file mode 100644 index 0000000..7ee29d4 --- /dev/null +++ b/niucloud/app/api/middleware.php @@ -0,0 +1,10 @@ +', + 'pay/notify////' + ]; + if (in_array($request->rule()->getRule(), $channel_rules)) { + $site_id = $request->param('site_id', -1); + if ($site_id != -1) { + $request->pushHeader([system_name('api_site_id_name') => $site_id]); + } + } + return $next($request); + } +} diff --git a/niucloud/app/api/middleware/ApiCheckToken.php b/niucloud/app/api/middleware/ApiCheckToken.php new file mode 100644 index 0000000..0010a65 --- /dev/null +++ b/niucloud/app/api/middleware/ApiCheckToken.php @@ -0,0 +1,58 @@ +appType(AppTypeDict::API); + //检测站点 + ( new AuthService() )->checkSite($request); + //通过配置来设置系统header参数 + try { + $token = $request->apiToken(); + $token_info = ( new LoginService() )->parseToken($token); + } catch (AuthException $e) { + //是否将登录错误抛出 + if ($is_throw_exception) + return fail($e->getMessage(), [], $e->getCode()); + } + if (!empty($token_info)) { + $request->memberId($token_info[ 'member_id' ]); + } + //校验会员和站点 + ( new AuthService() )->checkSiteAuth($request); + return $next($request); + } +} diff --git a/niucloud/app/api/middleware/ApiLog.php b/niucloud/app/api/middleware/ApiLog.php new file mode 100644 index 0000000..1f0d31d --- /dev/null +++ b/niucloud/app/api/middleware/ApiLog.php @@ -0,0 +1,44 @@ +method() != 'GET') +// { +// $data = [ +// 'uid' => $request->adminid(), +// 'username' => $request->username(), +// 'url' => $request->url(), +// 'params' => $request->param(), +// 'ip' => $request->ip(), +// 'type' => $request->method() +// +// ]; +// (new UserLogService())->add($data); +// } +// + return $next($request); + } +} diff --git a/niucloud/app/api/route/article.php b/niucloud/app/api/route/article.php new file mode 100644 index 0000000..749eb85 --- /dev/null +++ b/niucloud/app/api/route/article.php @@ -0,0 +1,38 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, false) + ->middleware(ApiLog::class); \ No newline at end of file diff --git a/niucloud/app/api/route/auth.php b/niucloud/app/api/route/auth.php new file mode 100644 index 0000000..e52151c --- /dev/null +++ b/niucloud/app/api/route/auth.php @@ -0,0 +1,27 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) + ->middleware(ApiLog::class); \ No newline at end of file diff --git a/niucloud/app/api/route/dispatch/BindDispatch.php b/niucloud/app/api/route/dispatch/BindDispatch.php new file mode 100644 index 0000000..f3b8ba2 --- /dev/null +++ b/niucloud/app/api/route/dispatch/BindDispatch.php @@ -0,0 +1,45 @@ +app = $app; + $this->doRouteAfter(); + $channel = $this->request->getChannel(); + + if($this->request->param('channel', '')){ + $channel = $this->request->param('channel'); + } + + switch ($channel) { + case MemberLoginTypeDict::WECHAT: + $controller = 'wechat.Wechat'; + $action = 'register'; + break; + case MemberLoginTypeDict::WEAPP: + $controller = 'weapp.Weapp'; + $action = 'register'; + break; + } + + + $this->controller = $controller ?? ''; + $this->actionName = $action ?? ''; + $this->request + ->setController($this->controller ?? '') + ->setAction($this->actionName); + } + +} \ No newline at end of file diff --git a/niucloud/app/api/route/diy.php b/niucloud/app/api/route/diy.php new file mode 100644 index 0000000..f401b96 --- /dev/null +++ b/niucloud/app/api/route/diy.php @@ -0,0 +1,30 @@ +middleware(ApiLog::class) + ->middleware(ApiCheckToken::class, false); \ No newline at end of file diff --git a/niucloud/app/api/route/file.php b/niucloud/app/api/route/file.php new file mode 100644 index 0000000..622686c --- /dev/null +++ b/niucloud/app/api/route/file.php @@ -0,0 +1,33 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) + ->middleware(ApiLog::class); \ No newline at end of file diff --git a/niucloud/app/api/route/hygl.php b/niucloud/app/api/route/hygl.php new file mode 100644 index 0000000..56959c1 --- /dev/null +++ b/niucloud/app/api/route/hygl.php @@ -0,0 +1,56 @@ +middleware(ApiChannel::class) + ->middleware(ApiLog::class); diff --git a/niucloud/app/api/route/member.php b/niucloud/app/api/route/member.php new file mode 100644 index 0000000..03fd649 --- /dev/null +++ b/niucloud/app/api/route/member.php @@ -0,0 +1,101 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) + ->middleware(ApiLog::class); + + +Route::group('member', function () { + + /***************************************************** 会员管理 ****************************************************/ + //会员日志 + Route::post('log', 'member.Member/log'); +})->middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class) + ->middleware(ApiLog::class); diff --git a/niucloud/app/api/route/order.php b/niucloud/app/api/route/order.php new file mode 100644 index 0000000..d9d60aa --- /dev/null +++ b/niucloud/app/api/route/order.php @@ -0,0 +1,32 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) + ->middleware(ApiLog::class); \ No newline at end of file diff --git a/niucloud/app/api/route/pay.php b/niucloud/app/api/route/pay.php new file mode 100644 index 0000000..ccc6c55 --- /dev/null +++ b/niucloud/app/api/route/pay.php @@ -0,0 +1,35 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class) + ->middleware(ApiLog::class); +/** + * 路由 + */ +Route::group('pay',function () { + //去支付 + Route::post('', 'pay.Pay/pay'); + //支付信息 + Route::get('info/:trade_type/:trade_id', 'pay.Pay/info'); + // + Route::get('type/:trade_type', 'pay.Pay/getPayType'); + +})->middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class) + ->middleware(ApiLog::class); \ No newline at end of file diff --git a/niucloud/app/api/route/route.php b/niucloud/app/api/route/route.php new file mode 100644 index 0000000..5b2eed1 --- /dev/null +++ b/niucloud/app/api/route/route.php @@ -0,0 +1,100 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class) + ->middleware(ApiLog::class); + +Route::group(function() { + Route::post('niucloud/notify', function(){ + return (new CoreNotifyService())->notify(); + }); + +}); + +/** + * 路由 + */ +Route::group(function() { + //获取授权地址 + Route::get('wechat/codeurl', 'wechat.Wechat/getCodeUrl'); + + //公众号通过code登录 + Route::post('wechat/login', 'wechat.Wechat/login'); + //公众号通过code注册 + Route::post('wechat/register', 'wechat.Wechat/register'); + //公众号通过code同步授权 + Route::post('wechat/sync', 'wechat.Wechat/sync'); + //公众号扫码登录 + Route::post('wechat/scanlogin', 'wechat.Wechat/scanLogin'); + //小程序通过code登录 + Route::post('weapp/login', 'weapp.Weapp/login'); + //小程序通过code注册 + Route::post('weapp/register', 'weapp.Weapp/register'); + // 获取小程序订阅消息模板id + Route::get('weapp/subscribemsg', 'weapp.Weapp/subscribeMessage'); + //登录 + Route::get('login', 'login.Login/login'); + //第三方绑定 + Route::post('bind', BindDispatch::class); + //密码重置 + Route::post('password/reset', 'login.Login/resetPassword'); + //账号密码注册 + Route::post('register', 'login.Register/account'); + //手机号注册 + Route::post('register/mobile', 'login.Register/mobile'); + //账号密码注册 + Route::get('captcha', 'login.Login/captcha'); + //手机号发送验证码 + Route::post('send/mobile/:type', 'login.Login/sendMobileCode'); + //手机号登录 + Route::post('login/mobile', 'login.Login/mobile'); + + //校验扫码信息 + Route::get('checkscan', 'sys.scan/checkScan'); + /***************************************************** 会员相关设置**************************************************/ + //获取注册与登录设置 + Route::get('login/config', 'login.Config/getLoginConfig'); + // 协议 + Route::get('agreement/:key', 'agreement.Agreement/info'); + // 获取公众号jssdk config + Route::get('wechat/jssdkconfig', 'wechat.Wechat/jssdkConfig'); + /***************************************************** 版权相关设置**************************************************/ + Route::get('copyright', 'sys.Config/getCopyright'); + // 站点信息 + Route::get('site', 'sys.Config/site'); + //场景域名 + Route::get('scene_domain', 'sys.Config/getSceneDomain'); + // 获取手机端首页列表 + Route::get('wap_index', 'sys.Config/getWapIndexList'); + + /***************************************************** 地区管理 ****************************************************/ + //通过pid获取列表 + Route::get('area/list_by_pid/:pid', 'sys.Area/listByPid'); + //通过层级获取列表 + Route::get('area/tree/:level', 'sys.Area/tree'); + // 获取省市县数据根据地址id + Route::get('area/code/:code', 'sys.Area/areaByAreaCode'); +})->middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class) + ->middleware(ApiLog::class); +//加载插件路由 +( new DictLoader("Route") )->load([ 'app_type' => 'api' ]); diff --git a/niucloud/app/command/Addon/Install.php b/niucloud/app/command/Addon/Install.php new file mode 100644 index 0000000..675735b --- /dev/null +++ b/niucloud/app/command/Addon/Install.php @@ -0,0 +1,36 @@ +setName('addon:install') + ->addArgument('addon', Option::VALUE_REQUIRED) + ->addOption('step', 's', Option::VALUE_REQUIRED) + ->setDescription('the addon install command'); + } + + protected function execute(Input $input, Output $output) + { + $instance = CoreAddonInstallService::instance($input->getArgument('addon')); + $step = $input->getOption('step'); + + try { + $instance->$step(); + $output->writeln("Command executed successfully"); + } catch ( Exception $e ) { + $output->writeln("Command failed " . $e->getMessage()); + } + } +} diff --git a/niucloud/app/command/Addon/Uninstall.php b/niucloud/app/command/Addon/Uninstall.php new file mode 100644 index 0000000..756e406 --- /dev/null +++ b/niucloud/app/command/Addon/Uninstall.php @@ -0,0 +1,24 @@ +setName('addon') + ->setDescription('the addon uninstall command'); + } + + protected function execute(Input $input, Output $output) + { + // 指令输出 + $output->writeln('uninstall'); + } +} diff --git a/niucloud/app/command/Menu.php b/niucloud/app/command/Menu.php new file mode 100644 index 0000000..fa1eed5 --- /dev/null +++ b/niucloud/app/command/Menu.php @@ -0,0 +1,35 @@ +setName('menu') + ->addOption('addon', 'a', Option::VALUE_OPTIONAL) + ->setDescription('the menu command'); + } + + protected function execute(Input $input, Output $output) + { + $addon = $input->getOption('addon'); + if ($addon) { + (new CoreMenuService())->refreshAddonMenu($addon); + } else { + (new InstallSystemService())->installMenu(); + } + // 指令输出 + $output->writeln('menu refresh success'); + } +} diff --git a/niucloud/app/command/hygl/OrderClose.php b/niucloud/app/command/hygl/OrderClose.php new file mode 100644 index 0000000..09c0888 --- /dev/null +++ b/niucloud/app/command/hygl/OrderClose.php @@ -0,0 +1,57 @@ +setName('OrderClose') + ->setDescription('会员管理-30分钟自动关闭尚未支付的订单'); + } + + protected function execute(Input $input, Output $output) + { + // 指令输出 + $output->writeln('开始执行-会员管理-30分钟自动关闭尚未支付的订单'); + + $time = time(); + $end_create_time = $time - 30 * 60; + //查询超过30分钟未支付的订单,返回使用的优惠券,修改订单状态为关闭 + $order_list = TransactionHistory::where('pay_status', 0) + ->where('create_time', '<', $end_create_time) + ->select(); + + Db::startTrans(); + try { + foreach ($order_list as $v) { + //关闭订单 + TransactionHistory::where('id', $v['id'])->update([ + 'pay_status' => 3,//超时关闭 + ]); + } + Db::commit(); + return true; + } catch (\Exception $exception) { + Db::rollback(); + return false; + } + } +} diff --git a/niucloud/app/command/schedule/Schedule.php b/niucloud/app/command/schedule/Schedule.php new file mode 100644 index 0000000..d044615 --- /dev/null +++ b/niucloud/app/command/schedule/Schedule.php @@ -0,0 +1,52 @@ +expression($this->getCrontab($this->vars['time'])); + } + + protected function getCrontab($data): string + { + $min = $data['min'] ?? '*'; + $hour = $data['hour'] ?? '*'; + $day = $data['day'] ?? '*'; + $week = $data['week'] ?? '*'; + $type = $data['type'] ?? ''; + switch ($type) { + case 'min':// 每隔几分 + $crontab = '*/' . $min . ' * * * *'; + break; + case 'hour':// 每隔几时第几分钟执行 + $crontab = $min . ' */' . $hour . ' * * *'; + break; + case 'day':// 每隔几日几时几分几秒执行 + $crontab = $min . ' ' . $hour . ' */' . $day . ' * *'; + break; + case 'week':// 每周一次,周几具体时间执行 + $crontab = $min . ' ' . $hour . ' * * ' . $week; + break; + case 'month':// 每月一次,某日具体时间执行 + $crontab = $min . ' ' . $hour . ' ' . $day . ' * *'; + break; + } + return $crontab ?? '* * * * *'; + } + + /** + * 执行任务 + * @return void + */ + protected function execute() + { + //...具体的任务执行 + (new CoreScheduleService())->execute($this->vars); + } +} diff --git a/niucloud/app/common.php b/niucloud/app/common.php new file mode 100644 index 0000000..d12e211 --- /dev/null +++ b/niucloud/app/common.php @@ -0,0 +1,832 @@ + $data, 'msg' => get_lang($msg), 'code' => $code], 'json', $http_code); + +} + +/** + * 接口操作失败,返回信息 + * @param $msg + * @param array|null $data + * @param int $code + * @param int $http_code + * @return Response + */ +function fail($msg = 'FAIL', ?array $data = [], int $code = 0, int $http_code = 200): Response +{ + if (is_array($msg)) { + $data = $msg; + $msg = 'FAIL'; + } + return Response::create(['data' => $data, 'msg' => get_lang($msg), 'code' => $code], 'json', $http_code); +} + +/** + * 自动侦测语言并转化 + * @param string $str + * @return lang() + */ +function get_lang($str) +{ + return Lang::get($str); +} + + +/** + * 把返回的数据集转换成Tree + * @param $list 要转换的数据集 + * @param string $pk + * @param string $pid + * @param string $child + * @param int $root + * @return array + */ +function list_to_tree($list, $pk = 'id', $pid = 'pid', $child = 'child', $root = 0) +{ + // 创建Tree + $tree = array(); + if (is_array($list)) { + // 创建基于主键的数组引用 + $refer = array(); + foreach ($list as $key => $data) { + $refer[$data[$pk]] =& $list[$key]; + } + foreach ($list as $key => $data) { + // 判断是否存在parent + $parent_id = $data[$pid]; + if ($root == $parent_id) { + $tree[] =& $list[$key]; + } else { + if (isset($refer[$parent_id])) { + $parent =& $refer[$parent_id]; + $parent[$child][] =& $list[$key]; + } + } + } + } + return $tree; + +} + +/** + * 生成加密密码 + * @param $password + * @param $salt 手动提供散列密码的盐值(salt)。这将避免自动生成盐值(salt)。,默认不填写将自动生成 + * @return string + */ +function create_password($password, $salt = '') +{ + return password_hash($password, PASSWORD_DEFAULT); +} + +/** + * 校验比对密码和加密密码是否一致 + * @param $password + * @param $hash + * @return bool + */ +function check_password($password, $hash) +{ + if (!password_verify($password, $hash)) return false; + return true; +} + + +/** + * 获取键对应的值 + * @param array $array 源数组 + * @param array $keys 要提取的键数组 + * @param string $index 二维组中指定提取的字段(唯一) + * @return array + */ +function array_keys_search($array, $keys, $index = '', $is_sort = true) +{ + if (empty($array)) + return $array; + if (empty($keys)) + return []; + if (!empty($index) && count($array) != count($array, COUNT_RECURSIVE)) + $array = array_column($array, null, $index); + $list = array(); + + foreach ($keys as $key) { + if (isset($array[$key])) { + if ($is_sort) { + $list[] = $array[$key]; + } else { + $list[$key] = $array[$key]; + } + } + + } + return $list; +} + + +/** + * @notes 删除目标目录 + * @param $path + * @param $delDir + * @return bool|void + */ +function del_target_dir($path, $delDir) +{ + //没找到,不处理 + if (!file_exists($path)) { + return false; + } + + //打开目录句柄 + $handle = opendir($path); + if ($handle) { + while (false !== ($item = readdir($handle))) { + if ($item != "." && $item != "..") { + if (is_dir("$path/$item")) { + del_target_dir("$path/$item", $delDir); + } else { + unlink("$path/$item"); + } + } + } + closedir($handle); + if ($delDir) { + return rmdir($path); + } + } else { + if (file_exists($path)) { + return unlink($path); + } + return false; + } +} + +/** + * 获取一些公共的系统参数 + * @param string|null $key + * @return array|mixed + */ +function system_name(?string $key = '') +{ + $params = [ + 'admin_token_name' => env('system.admin_token_name', 'token'),///todo !!! 注意 header参数 不能包含_ , 会自动转成 - + 'api_token_name' => env('system.api_token_name', 'token'), + 'admin_site_id_name' => env('system.admin_site_id_name', 'site-id'), + 'api_site_id_name' => env('system.api_site_id_name', 'site-id'), + 'channel_name' => env('system.channel_name', 'channel'), + ]; + if (!empty($key)) { + return $params[$key]; + } else { + return $params; + } +} + + +/** + * 获取日期(默认不传参 获取当前日期) + * @param int|null $time + * @return string + */ +function get_date_by_time(?int $time = null) +{ + return date('Y-m-d h:i:s', $time); +} + +function get_start_and_end_time_by_day($day = '') +{ + $date = $day ?: date('Y-m-d'); + $day_start_time = strtotime($date); + //当天结束之间 + $day_end_time = $day_start_time + 86400; + return [$day_start_time, $day_end_time]; +} + +/** + * 路径转链接 + * @param $path + * @return string + */ +function path_to_url($path) +{ + return trim(str_replace(DIRECTORY_SEPARATOR, '/', $path), '.'); +} + +/** + * 链接转化路径 + * @param $url + * @return string + */ +function url_to_path($url) +{ + if (str_contains($url, 'http://') || str_contains($url, 'https://')) return $url;//网络图片不必 + return public_path() . trim(str_replace('/', DIRECTORY_SEPARATOR, $url)); +} + +/** + * 获取本地文件的对外网络路径 + * @param string $path + * @return string + */ +function get_file_url(string $path) +{ + if (!$path) return ''; + if (!str_contains($path, 'http://') && !str_contains($path, 'https://')) { + return request()->domain() .'/'. path_to_url($path); + } else { + return path_to_url($path); + } +} +/** + * 新增队列工作 + * @param $job + * @param $data + * @param $delay + * @param $queue + * @return bool + */ +function create_job($job, $data = '', $delay = 0, $queue = null) +{ + if ($delay > 0) { + $is_success = Queue::later($delay, $job, $data, $queue); + } else { + $is_success = Queue::push($job, $data, $queue); + } + if ($is_success !== false) { + return true; + } else { + return false; + } +} + +/** + * 获取插件对应资源文件(插件安装后获取) + * @param $addon //插件名称 + * @param $file_name //文件名称(包含resource文件路径) + */ +function addon_resource($addon, $file_name) +{ + return "addon/". $addon. "/". $file_name; +} +/** + * 判断 文件/目录 是否可写(取代系统自带的 is_writeable 函数) + * + * @param string $file 文件/目录 + * @return boolean + */ +function is_write($file) +{ + if (is_dir($file)) { + $dir = $file; + if ($fp = @fopen("$dir/test.txt", 'wb')) { + @fclose($fp); + @unlink("$dir/test.txt"); + $writeable = true; + } else { + $writeable = false; + } + } else { + if ($fp = @fopen($file, 'ab+')) { + @fclose($fp); + $writeable = true; + } else { + $writeable = false; + } + } + return $writeable; +} + +/** + * 主要用于金额格式化(用于显示) + * @param $number + * @return int|mixed|string + */ +function format_money($number) +{ + if ($number == intval($number)) { + return intval($number); + } elseif ($number == sprintf('%.2f', $number)) { + return sprintf('%.2f', $number); + } + return $number; +} + +/** + * 金额保留小数点后*位 + * @param $number + * @return float + */ +function format_round_money($number) +{ + return round($number, 2); +} + +/** + * 基础属性过滤(特殊字符..) + * @param $string + * @return void + */ +function filter($string) +{ + return $string; +} + +/** + * 生成编号 + * @param string $prefix + * @param string $tag 业务标识 例如member_id ... + * @return string + * @throws Exception + */ +function create_no(string $prefix = '', string $tag = '') +{ + $data_center_id = 1; + $machine_id = 2; + $snowflake = new Snowflake($data_center_id, $machine_id); + $id = $snowflake->generateId(); + return $prefix.date('Ymd').$tag.$id; +} + +/** + * 多级目录不存在则创建 + * @param $dir + * @param $mode + * @return bool + */ +function mkdirs($dir, $mode = 0777) +{ + if (str_contains($dir, '.')) $dir = dirname($dir); + if (is_dir($dir) || @mkdir($dir, $mode)) return true; + if (!mkdirs(dirname($dir), $mode)) return false; + return @mkdir($dir, $mode); +} + +/** + * 创建文件夹 + * @param $dir + * @param $mode + * @return true + */ +function mkdirs_or_notexist($dir, $mode = 0777) +{ + if (! is_dir($dir) && ! mkdir($dir, $mode, true) && ! is_dir($dir)) { + throw new \RuntimeException(sprintf('Directory "%s" was not created', $dir)); + } + return true; +} +/** + * 删除缓存文件使用 + * @param $dir + */ +function rmdirs($dir) +{ + $dh = opendir($dir); + while ($file = readdir($dh)) { + if ($file != "." && $file != "..") { + $fullpath = $dir . "/" . $file; + if (is_dir($fullpath)) { + rmdirs($fullpath); + } else { + unlink($fullpath); + } + } + } + closedir($dh); +} + +/** + * 获取唯一随机字符串 + * @param int $len + * @return string + */ +function unique_random($len = 10) +{ + $str = 'qwertyuiopasdfghjklzxcvbnmasdfgh'; + str_shuffle($str); + return substr(str_shuffle($str), 0, $len); +} + +/** + * 校验事件结果 + * @param $result + * @return bool + */ +function check_event_result($result) +{ + if (empty($result) || is_array($result)) { + return true; + } + foreach ($result as $v) { + if (!$v) return false; + } + return true; +} + +/** + * 二维数组合并 + * @param array $array1 + * @param array $array2 + * @return array + */ +function array_merge2(array $array1, array $array2) +{ + foreach ($array2 as $array2_k => $array2_v) { + if (array_key_exists($array2_k, $array1)) { + foreach ($array2_v as $array2_kk => $array2_vv) { + if (array_key_exists($array2_kk, $array1[$array2_k])) { + if (is_array($array2_vv)) { + $array1[$array2_k][$array2_kk] = array_merge($array1[$array2_k][$array2_kk], $array2_vv); + } + } else { + $array1[$array2_k][$array2_kk] = $array2_vv; + } + } + } else { + $array1[$array2_k] = $array2_v; + } + } + return $array1; +} + +/** + * 通过目录获取文件结构1 + * @param $dir + * @return array + */ +function get_files_by_dir($dir) +{ + $dh = @opendir($dir); //打开目录,返回一个目录流 + $return = array(); + while ($file = @readdir($dh)) { //循环读取目录下的文件 + if ($file != '.' and $file != '..') { + $path = $dir . DIRECTORY_SEPARATOR . $file; //设置目录,用于含有子目录的情况 + if (is_dir($path)) { + $return[] = $file; + } + } + } + @closedir($dh); //关闭目录流 + return $return; //返回文件 +} + + +/** + * 文件夹文件拷贝 + * @param string $src 来源文件夹 + * @param string $dst 目的地文件夹 + * @param array $files 文件夹集合 + * @param array $exclude_dirs 排除无需拷贝的文件夹 + * @param array $exclude_files 排除无需拷贝的文件 + * @return bool + */ +function dir_copy(string $src = '', string $dst = '', &$files = [], $exclude_dirs = [], $exclude_files = []) +{ + if (empty($src) || empty($dst)) { + return false; + } + if (!file_exists($src)) { + return false; + } + $dir = opendir($src); + dir_mkdir($dst); + while (false !== ( $file = readdir($dir) )) { + if (( $file != '.' ) && ( $file != '..' )) { + if (is_dir($src . '/' . $file)) { + // 排除目录 + if (count($exclude_dirs) && in_array($file, $exclude_dirs)) continue; + dir_copy($src . '/' . $file, $dst . '/' . $file, $files); + } else { + // 排除文件 + if (count($exclude_files) && in_array($file, $exclude_files)) continue; + copy($src . '/' . $file, $dst . '/' . $file); + $files[] = $dst . '/' . $file; + } + } + } + closedir($dir); + return true; +} + +/** + * 删除文件 + * @param string $dst + * @param array $dirs + * @return bool + */ +function dir_remove(string $dst = '', array $dirs = []) +{ + if (empty($dirs) || empty($dst)) { + return false; + } + foreach ($dirs as $v) { + @unlink($dst . $v); + } + return true; +} + +/** + * 创建文件夹 + * + * @param string $path 文件夹路径 + * @param int $mode 访问权限 + * @param bool $recursive 是否递归创建 + * @return bool + */ +function dir_mkdir($path = '', $mode = 0777, $recursive = true) +{ + clearstatcache(); + if (!is_dir($path)) { + @mkdir($path, $mode, $recursive); + return chmod($path, $mode); + } + return true; +} + + +/** + * 分割sql语句 + * @param string $content sql内容 + * @param bool $string 如果为真,则只返回一条sql语句,默认以数组形式返回 + * @param array $replace 替换前缀,如:['my_' => 'me_'],表示将表前缀my_替换成me_ + * @return array|string 除去注释之后的sql语句数组或一条语句 + */ +function parse_sql($content = '', $string = false, $replace = []) +{ + // 纯sql内容 + $pure_sql = []; + // 被替换的前缀 + $from = ''; + // 要替换的前缀 + $to = ''; + // 替换表前缀 + if (!empty($replace)) { + $to = current($replace); + $from = current(array_flip($replace)); + } + if ($content != '') { + // 多行注释标记 + $comment = false; + // 按行分割,兼容多个平台 + $content = str_replace(["\r\n", "\r"], "\n", $content); + $content = explode("\n", trim($content)); + // 循环处理每一行 + foreach ($content as $line) { + // 跳过空行 + if ($line == '') { + continue; + } + // 跳过以#或者--开头的单行注释 + if (preg_match("/^(#|--)/", $line)) { + continue; + } + // 跳过以/**/包裹起来的单行注释 + if (preg_match("/^\/\*(.*?)\*\//", $line)) { + continue; + } + // 多行注释开始 + if (str_starts_with($line, '/*')) { + $comment = true; + continue; + } + // 多行注释结束 + if (str_ends_with($line, '*/')) { + $comment = false; + continue; + } + // 多行注释没有结束,继续跳过 + if ($comment) { + continue; + } + // 替换表前缀 + if ($from != '') { + $line = str_replace('`' . $from, '`' . $to, $line); + } + // sql语句 + $pure_sql[] = $line; + } + // 只返回一条语句 + if ($string) { + return implode("", $pure_sql); + } + // 以数组形式返回sql语句 + $pure_sql = implode("\n", $pure_sql); + $pure_sql = explode(";\n", $pure_sql); + } + return $pure_sql; +} + +/** + * 递归查询目录下所有文件 + * @param $path + * @param $data + * @param $search + * @return void + */ +function search_dir($path, &$data, $search = '') +{ + if (is_dir($path)) { + $path .= DIRECTORY_SEPARATOR; + $fp = dir($path); + while ($file = $fp->read()) { + if ($file != '.' && $file != '..') { + search_dir($path . $file, $data, $search); + } + } + $fp->close(); + } + if (is_file($path)) { + if ($search) $path = str_replace($search, '', $path); + $data[] = $path; + } +} + +function remove_empty_dir($dirs) +{ + +} + +/** + * 获取文件地图 + * @param $path + * @param array $arr + * @return array + */ +function getFileMap($path, $arr = []) +{ + if (is_dir($path)) { + $dir = scandir($path); + foreach ($dir as $file_path) { + if ($file_path != '.' && $file_path != '..') { + $temp_path = $path . '/' . $file_path; + if (is_dir($temp_path)) { + $arr[$temp_path] = $file_path; + $arr = getFileMap($temp_path, $arr); + } else { + $arr[$temp_path] = $file_path; + } + } + } + return $arr; + } +} + +/** + * 如果不存在则写入缓存 + * @param string|null $name + * @param $value + * @param $tag + * @param $options + * @return mixed|string + */ +function cache_remember(string $name = null, $value = '', $tag = null, $options = null){ + if(!empty($hit = Cache::get($name)))//可以用has + return $hit; + if ($value instanceof Closure) { + // 获取缓存数据 + $value = Container::getInstance()->invokeFunction($value); + } + if (is_null($tag)) { + Cache::set($name, $value, $options['expire'] ?? null); + } else { + Cache::tag($tag)->set($name, $value, $options['expire'] ?? null); + } + return $value; + +} + +/** + * 项目目录 + * @return string + */ +function project_path() { + return dirname(root_path()) . DIRECTORY_SEPARATOR; +} + +/** + * 图片转base64 + * @param string $path + * @param $is_delete 转换后是否删除原图 + * @return string + */ +function image_to_base64(string $path, $is_delete = false) { + if (!file_exists($path)) return 'image not exist'; + + $mime = getimagesize($path)['mime']; + $image_data = file_get_contents($path); + // 将图片转换为 base64 + $base64_data = base64_encode($image_data); + + if ($is_delete) @unlink($path); + + return "data:$mime;base64,$base64_data"; +} + +/** + * 获取缩略图 + * @param $site_id + * @param $image + * @param string $thumb_type + * @param bool $is_throw_exception + * @return mixed + * @throws Exception + */ +function get_thumb_images($site_id, $image, $thumb_type = 'all', bool $is_throw_exception = false){ + + return (new CoreImageService())->thumb($site_id, $image, $thumb_type, $is_throw_exception); +} + +/** + * 版本号转整数 例如1.0.0=001.000.000=001000000=1000000 + * @param $version + * @return int + */ +function version_to_int($version) { + $version_array = explode(".", $version); + + $v1 = sprintf('%03s', (int) $version_array[0] ?? 0); + $v2 = sprintf('%03s', (int) $version_array[1] ?? 0); + $v3 = sprintf('%03s', (int) $version_array[2] ?? 0); + return (int) "{$v1}{$v2}{$v3}"; +} + +/** + * 整数版本号转字符串例如 1000000=001000000=001.000.000=1.0.0 + * @param int $ver + * @return string + */ +function version_to_string($ver) { + if($ver > 999) { + if($ver > 999999) { + $ver .= ""; + $v3 = (int) substr($ver, -3); + $v2 = (int) substr($ver, -6, 3); + $v1 = (int) substr($ver, 0, -6); + } else { + $ver .= ""; + $v3 = (int) substr($ver, -3); + $v2 = (int) substr($ver, 0, -3); + $v1 = 0; + } + } else { + $v3 = $ver; + $v2 = 0; + $v1 = 0; + } + return "{$v1}.{$v2}.{$v3}"; +} + +/** + * 检测文件是否是本地图片 + * @param string $file_path + * @return void + */ +function check_file_is_remote(string $file_path){ + return str_contains($file_path, 'https://') || str_contains($file_path, 'http://') || str_contains($file_path, '.com'); +} + +/** + * 文件拷贝 + * @param string $source_file + * @param string $to_file + * @return void + */ +function file_copy(string $source_file, string $to_file) { + if (!file_exists($source_file)) return false; + + // 检查目标文件是否存在 + if (!file_exists($to_file)) { + // 创建目录 + $directory = dirname($to_file); + if (!file_exists($directory)) { + mkdir($directory, 0777, true); + } + } + + if (copy($source_file, $to_file)) { + return true; + } else { + return false; + } +} diff --git a/niucloud/app/dict/addon/AddonDict.php b/niucloud/app/dict/addon/AddonDict.php new file mode 100644 index 0000000..f6e566d --- /dev/null +++ b/niucloud/app/dict/addon/AddonDict.php @@ -0,0 +1,78 @@ + get_lang('dict_addon.install'), + self::UNINSTALL => get_lang('dict_addon.uninstall'), + self::UPDATE => get_lang('dict_addon.update'), + ]; + } + + /** + * 状态 + * @return array + */ + public static function getStatus() + { + return [ + self::ON => get_lang('dict_addon.status_on'),//展示 + self::OFF => get_lang('dict_addon.status_off'),//隐藏 + ]; + } + + const FRAMEWORK_KEY = 'niucloud-admin'; + + const APP = 'app'; + const ADDON = 'addon'; + + /** + * 插件类型 + * @return array + */ + public static function getType() + { + return [ + self::APP => get_lang('dict_addon.type_app'),//应用 + self::ADDON => get_lang('dict_addon.type_addon'),//插件 + ]; + } +} diff --git a/niucloud/app/dict/applet/AppletlDict.php b/niucloud/app/dict/applet/AppletlDict.php new file mode 100644 index 0000000..bd00235 --- /dev/null +++ b/niucloud/app/dict/applet/AppletlDict.php @@ -0,0 +1,42 @@ + get_lang('dict_applet.channel_weapp'),//启用 + self::OFF => get_lang('dict_applet.channel_wechat'),//下架 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/cash_out/CashOutTypeDict.php b/niucloud/app/dict/cash_out/CashOutTypeDict.php new file mode 100644 index 0000000..fb0ff8b --- /dev/null +++ b/niucloud/app/dict/cash_out/CashOutTypeDict.php @@ -0,0 +1,24 @@ + get_lang('dict_wechat_reply.status_on'),//启用 + self::STATUS_OFF => get_lang('dict_wechat_reply.status_off'),//关闭 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/channel/WechatDict.php b/niucloud/app/dict/channel/WechatDict.php new file mode 100644 index 0000000..994532f --- /dev/null +++ b/niucloud/app/dict/channel/WechatDict.php @@ -0,0 +1,64 @@ + get_lang('dict_wechat_config.not_encrypt'),//明文 + self::COMPATIBLE => get_lang('dict_wechat_config.compatible'),//兼容 + self::SAFE => get_lang('dict_wechat_config.safe'),//安全 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/common/ChannelDict.php b/niucloud/app/dict/common/ChannelDict.php new file mode 100644 index 0000000..b96ffcb --- /dev/null +++ b/niucloud/app/dict/common/ChannelDict.php @@ -0,0 +1,48 @@ + get_lang('dict_channel.channel_weapp'),//微信小程序 + self::WECHAT => get_lang('dict_channel.channel_wechat'),//'微信公众号', + self::H5 => get_lang('dict_channel.channel_h5'),//'手机H5', + self::PC => get_lang('dict_channel.channel_pc'),//'电脑PC', + self::APP => get_lang('dict_channel.channel_app'),//'手机app', + ]; + if (empty($type)) { + return $data; + } + return $data[$type] ?? ''; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/common/CommonDict.php b/niucloud/app/dict/common/CommonDict.php new file mode 100644 index 0000000..6e7fe8d --- /dev/null +++ b/niucloud/app/dict/common/CommonDict.php @@ -0,0 +1,29 @@ + get_lang('dict_sex.unknown'),//未知 + self::MAN => get_lang('dict_sex.man'),//男 + self::WOMAN => get_lang('dict_sex.woman'),//女 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/diy/ComponentDict.php b/niucloud/app/dict/diy/ComponentDict.php new file mode 100644 index 0000000..4053c27 --- /dev/null +++ b/niucloud/app/dict/diy/ComponentDict.php @@ -0,0 +1,301 @@ + [ + 'title' => get_lang('dict_diy.component_type_basic'), + 'list' => [ + 'Text' => [ + 'title' => '标题', + 'icon' => 'iconfont-iconbiaoti', + 'path' => 'edit-text', // 编辑组件属性名称 + 'support_page' => [], // 支持页面 + 'uses' => 0, // 最大添加数量 + 'sort' => 10001, + // 组件属性 + 'template' => [ + "textColor" => "#303133", // 文字颜色 + "pageBgColor" => "", // 底部背景颜色 + "componentBgColor" => '', // 组件背景颜色 + "topRounded" => 0, // 组件上圆角 + "bottomRounded" => 0, // 组件下圆角 + "elementBgColor" => '', // 元素背景颜色 + "topElementRounded" => 0,// 元素上圆角 + "bottomElementRounded" => 0, // 元素下圆角 + "margin" => [ + "top" => 0, // 上边距 + "bottom" => 0, // 下边距 + "both" => 0 // 左右边距 + ], + ], + 'value' => [ + "style" => "style-1", + "styleName" => "风格1", + "text" => "标题栏", + "link" => [ + "name" => "" + ], + "textColor" => "#303133", + "fontSize" => 16, + "fontWeight" => "normal", + "textAlign" => "center", + "subTitle" => [ + "text" => "副标题", + "color" => "#999999", + "fontSize" => 14, + "control" => false, + "fontWeight" => "normal" + ], + "more" => [ + "text" => "查看更多", + "control" => false, + "isShow" => true, + "link" => [ + "name" => "" + ], + "color" => "#999999" + ], + ] + ], + 'ImageAds' => [ + 'title' => '图片广告', + 'icon' => 'iconfont-icontupianguanggao1', + 'path' => 'edit-image-ads', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10002, + 'value' => [ + "imageHeight" => 180, + "list" => [ + [ + "link" => [ + "name" => "" + ], + "imageUrl" => "", + "imgWidth" => 0, + "imgHeight" => 0 + ] + ] + ] + ], + 'GraphicNav' => [ + 'title' => '图文导航', + 'icon' => 'iconfont-icontuwendaohang2', + 'path' => 'edit-graphic-nav', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10003, + 'value' => [ + "layout" => "horizontal", + "navTitle" => "", + "subNavTitle" => "", + "subNavTitleLink" => [ + "name" => "" + ], + "subNavColor" => "#999999", + "mode" => "graphic", + "type" => "img", + "showStyle" => "fixed", + "rowCount" => 4, + "pageCount" => 2, + "carousel" => [ + "type" => "circle", + "color" => "#FFFFFF" + ], + "imageSize" => 40, + "aroundRadius" => 25, + "font" => [ + "size" => 14, + "weight" => "normal", + "color" => "#303133" + ], + "list" => [ + [ + "title" => "", + "link" => [ + "name" => "" + ], + "imageUrl" => "", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ], + [ + "title" => "", + "link" => [ + "name" => "" + ], + "imageUrl" => "", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ], + [ + "title" => "", + "link" => [ + "name" => "" + ], + "imageUrl" => "", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ], + [ + "title" => "", + "link" => [ + "name" => "" + ], + "imageUrl" => "", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ] + ], + ] + ], + 'RubikCube' => [ + 'title' => '魔方', + 'icon' => 'iconfont-iconmofang1', + 'path' => 'edit-rubik-cube', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10004, + 'value' => [ + "mode" => "row1-of2", + "imageGap" => 0, + "list" => [ + [ + "imageUrl" => "", + "imgWidth" => 0, + "imgHeight" => 0, + "link" => [ + "name" => "" + ] + ], + [ + "imageUrl" => "", + "imgWidth" => 0, + "imgHeight" => 0, + "link" => [ + "name" => "" + ] + ] + ] + ], + ], + 'HorzBlank' => [ + 'title' => '辅助空白', + 'icon' => 'iconfont-iconfuzhukongbai1', + 'path' => 'edit-horz-blank', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10005, + 'value' => [ + 'height' => 20 + ], + ], + 'HotArea' => [ + 'title' => '热区', + 'icon' => 'iconfont-iconrequ', + 'path' => 'edit-hot-area', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10006, + 'value' => [ + "imageUrl" => "", + "imgWidth" => 0, + "imgHeight" => 0, + "heatMapData" => [] + ], + ], + 'MemberInfo' => [ + 'title' => '会员信息', + 'icon' => 'iconfont-iconhuiyuanzhongxin', + 'path' => 'edit-member-info', + 'support_page' => [ 'DIY_MEMBER_INDEX' ], + 'uses' => 1, + 'sort' => 10008, + 'value' => [ + "style" => "style-1", + "styleName" => "风格1", + 'bgUrl' => '', + 'bgColorStart' => '', + 'bgColorEnd' => '' + ], + ], + 'AddonList' => [ + 'title' => '应用', + 'icon' => 'iconfont-iconyingyong1', + 'path' => 'edit-addon-list', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10009, + 'value' => [ + 'list' => [] + ], + ], + 'Notice' => [ + 'title' => '公告', + 'icon' => 'iconfont-icongonggao', + 'path' => 'edit-notice', + 'support_page' => [], + 'uses' => 0, + 'sort' => 10010, + 'value' => [ + "list" => [ + "link" => [ + "name" => "" + ], + "text" => "" + ], + "iconType" => "system", + "systemIcon" => "style_01", + "showType" => "popup", + "imageUrl" => "" + ], + ] + ], + ], + ]; + return (new DictLoader("UniappComponent"))->load($system_components); + } + +} diff --git a/niucloud/app/dict/diy/LinkDict.php b/niucloud/app/dict/diy/LinkDict.php new file mode 100644 index 0000000..e1fed08 --- /dev/null +++ b/niucloud/app/dict/diy/LinkDict.php @@ -0,0 +1,127 @@ + [ + 'title' => get_lang('dict_diy.system_link'), + 'addon_info' => [ + 'title' => '系统', + 'key' => 'app' + ], + 'child_list' => [ + [ + 'name' => 'INDEX', + 'title' => get_lang('dict_diy.system_link_index'), + 'url' => '/app/pages/index/index', + 'is_share' => 1, + 'action' => 'decorate' // 默认空,decorate 表示支持装修 + ], + ] + ], + 'MEMBER_LINK' => [ + 'title' => get_lang('dict_diy.member_link'), + 'addon_info' => [ + 'title' => '系统', + 'key' => 'app' + ], + 'child_list' => [ + [ + 'name' => 'MEMBER_CENTER', + 'title' => get_lang('dict_diy.member_index'), + 'url' => '/app/pages/member/index', + 'is_share' => 1, + 'action' => 'decorate' + ], + [ + 'name' => 'MEMBER_PERSONAL', + 'title' => get_lang('dict_diy.member_my_personal'), + 'url' => '/app/pages/member/personal', + 'is_share' => 1, + 'action' => '' + ], + [ + 'name' => 'MEMBER_BALANCE', + 'title' => get_lang('dict_diy.member_my_balance'), + 'url' => '/app/pages/member/balance', + 'is_share' => 1, + 'action' => '' + ], + [ + 'name' => 'MEMBER_POINT', + 'title' => get_lang('dict_diy.member_my_point'), + 'url' => '/app/pages/member/point', + 'is_share' => 1, + 'action' => '' + ], + [ + 'name' => 'MEMBER_COMMISSION', + 'title' => get_lang('dict_diy.member_my_commission'), + 'url' => '/app/pages/member/commission', + 'is_share' => 1, + 'action' => '' + ], + [ + 'name' => 'MEMBER_ADDRESS', + 'title' => get_lang('dict_diy.member_my_address'), + 'url' => '/app/pages/member/address', + 'is_share' => 1, + 'action' => '' + ] + ] + ], + 'DIY_PAGE' => [ + 'title' => get_lang('dict_diy.diy_page'), + 'addon_info' => [ + 'title' => '系统', + 'key' => 'app' + ], + 'child_list' => [] + ], + 'DIY_LINK' => [ + 'title' => get_lang('dict_diy.diy_link'), + 'addon_info' => [ + 'title' => '系统', + 'key' => 'app' + ], + 'child_list' => [] + ] + ]; + + // 查询存在页面路由的应用插件列表 + if (!empty($params[ 'query' ]) && $params[ 'query' ] == 'addon') { + $system = [ + 'app' => [ + 'title' => '系统', + 'key' => 'app' + ] + ]; + $addons = (new DictLoader("UniappLink"))->load([], $params); + $app = array_merge($system, $addons); + return $app; + } else { + return (new DictLoader("UniappLink"))->load($system_links, $params); + } + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/diy/PagesDict.php b/niucloud/app/dict/diy/PagesDict.php new file mode 100644 index 0000000..e54510d --- /dev/null +++ b/niucloud/app/dict/diy/PagesDict.php @@ -0,0 +1,810 @@ + [ + 'default_index' => [ // 页面标识 + "title" => "首页", // 页面名称 + 'cover' => '', // 页面封面图 + 'preview' => '', // 页面预览图 + 'desc' => '官方推出的系统首页', // 页面描述 + 'mode' => 'diy', // 页面模式:diy:自定义,fixed:固定 + // 页面数据源 + "data" => [ + "global" => [ + "title" => "首页", + "pageBgColor" => "#F8F8F8", + 'bgUrl' => '', + 'imgWidth' => '', + 'imgHeight' => '', + "bottomTabBarSwitch" => true, + "template" => [ + 'textColor' => "#303133", + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 0 + ] + ], + 'topStatusBar' => [ + 'bgColor' => "#ffffff", + 'isTransparent' => false, + 'isShow' => true, + 'style' => 'style-1', + 'textColor' => "#333333", + 'textAlign' => 'center', + ], + 'popWindow' => [ + 'imgUrl' => "", + 'imgWidth' => '', + 'imgHeight' => '', + 'count' => -1, + 'show' => 0, + 'link' => [ + 'name' => "" + ], + ] + ], + "value" => [ + [ + "path" => "edit-addon-list", + "uses" => 0, + "id" => "2zcflqtzwn80", + "componentName" => "AddonList", + "componentTitle" => "应用", + "ignore" => [], + "list" => [], + "textColor" => "#303133", + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 0 + ], + ] + ] + ] + ], + ], + 'DIY_MEMBER_INDEX' => [ + 'default_member_index_one' => [ + "title" => "个人中心(风格一)", // 页面名称 + 'cover' => 'static/resource/images/diy/template/default_member_index_one_cover.png', // 页面封面图 + 'preview' => '', // 页面预览图 + 'desc' => '官方推出个人中心(风格一)', // 页面描述 + 'mode' => 'diy', + // 页面数据源 + "data" => [ + "global" => [ + "title" => "个人中心(风格一)", + "pageBgColor" => "#F8F8F8", + 'bgUrl' => '', + 'imgWidth' => '', + 'imgHeight' => '', + "bottomTabBarSwitch" => true, + "template" => [ + 'textColor' => "#303133", + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 12 + ] + ], + 'topStatusBar' => [ + 'bgColor' => "#ffffff", + 'isTransparent' => false, + 'isShow' => true, + 'style' => 'style-1', + 'textColor' => "#333333", + 'textAlign' => 'center', + ], + 'popWindow' => [ + 'imgUrl' => "", + 'imgWidth' => '', + 'imgHeight' => '', + 'count' => -1, + 'show' => 0, + 'link' => [ + 'name' => "" + ], + ] + ], + "value" => [ + [ + "path" => "edit-member-info", + "id" => "67qv49qgxp00", + "componentName" => "MemberInfo", + "componentTitle" => "会员信息", + "uses" => 0, + "ignore" => [], + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 9, + "bottomRounded" => 9, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 12, + "bottom" => 6, + "both" => 16 + ], + "style" => "style-1", + "styleName" => "风格1", + "textColor" => "#FFFFFF", + "bgUrl" => "static/resource/images/diy/member_style1_bg.png", + "bgColorStart" => "", + "bgColorEnd" => "" + ], + [ + "path" => "edit-graphic-nav", + "id" => "62b7d7hl4ok", + "componentName" => "GraphicNav", + "componentTitle" => "图文导航", + "uses" => 0, + "layout" => "horizontal", + "navTitle" => "我的服务", + "subNavTitle" => "", + "subNavTitleLink" => [ + "name" => "" + ], + "subNavColor" => "#999999", + "mode" => "graphic", + "showStyle" => "fixed", + "rowCount" => 4, + "pageCount" => 2, + "carousel" => [ + "type" => "circle", + "color" => "#FFFFFF" + ], + "imageSize" => 25, + "aroundRadius" => 25, + "font" => [ + "size" => 12, + "weight" => "bold", + "color" => "#303133" + ], + "pageBgColor" => "", + "componentBgColor" => "rgba(255, 255, 255, 1)", + "topRounded" => 9, + "bottomRounded" => 9, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 6, + "bottom" => 6, + "both" => 16 + ], + "ignore" => [], + "list" => [ + [ + "title" => "个人资料", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_PERSONAL", + "title" => "个人资料", + "url" => "/app/pages/member/personal" + ], + "imageUrl" => "static/resource/images/diy/horz_m_personal.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "xvlauaflc6o", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "我的余额", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_BALANCE", + "title" => "我的余额", + "url" => "/app/pages/member/balance" + ], + "imageUrl" => "static/resource/images/diy/horz_m_balance.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "63bjscck5n40", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "我的积分", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_POINT", + "title" => "我的积分", + "url" => "/app/pages/member/point" + ], + "imageUrl" => "static/resource/images/diy/horz_m_point.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4qiczw54t8g0", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "联系客服", + "link" => [ + "name" => "" + ], + "imageUrl" => "static/resource/images/diy/horz_m_service.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "2eqwfkdphpgk", + "imgWidth" => 100, + "imgHeight" => 100 + ] + ] + ], + [ + "path" => "edit-graphic-nav", + "uses" => 0, + "id" => "33yn28534fs0", + "componentName" => "GraphicNav", + "componentTitle" => "图文导航", + "ignore" => [], + "layout" => "vertical", + "navTitle" => "", + "subNavTitle" => "", + "subNavTitleLink" => [ + "name" => "" + ], + "subNavColor" => "#999999", + "mode" => "graphic", + "showStyle" => "fixed", + "rowCount" => 4, + "pageCount" => 2, + "carousel" => [ + "type" => "circle", + "color" => "#FFFFFF" + ], + "imageSize" => 25, + "aroundRadius" => 25, + "font" => [ + "size" => 13, + "weight" => "normal", + "color" => "rgba(0, 0, 0, 1)" + ], + "list" => [ + [ + "title" => "个人资料", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_PERSONAL", + "title" => "个人资料", + "url" => "/app/pages/member/personal" + ], + "imageUrl" => "static/resource/images/diy/vert_m_personal.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4xc4kw9xlqu0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "我的余额", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_BALANCE", + "title" => "我的余额", + "url" => "/app/pages/member/balance" + ], + "imageUrl" => "static/resource/images/diy/vert_m_balance.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4555rq0cc1q0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "我的积分", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_POINT", + "title" => "我的积分", + "url" => "/app/pages/member/point" + ], + "imageUrl" => "static/resource/images/diy/vert_m_point.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "1gq3uxox0fk0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "联系客服", + "link" => [ + "name" => "" + ], + "imageUrl" => "static/resource/images/diy/vert_m_service.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "6gqbh1tvyr00", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "id" => "6xhwid2el5c0", + "title" => "开发者联盟", + "imageUrl" => "static/resource/images/diy/vert_m_develop.png", + "imgWidth" => 88, + "imgHeight" => 88, + "link" => [ + "name" => "" + ], + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ] + ], + "pageBgColor" => "", + "componentBgColor" => "rgba(255, 255, 255, 1)", + "topRounded" => 9, + "bottomRounded" => 9, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 6, + "bottom" => 12, + "both" => 16 + ] + ] + ] + ] + ], + 'default_member_index_two' => [ + "title" => "个人中心(风格二)", // 页面名称 + 'cover' => 'static/resource/images/diy/template/default_member_index_two_cover.png', // 页面封面图 + 'preview' => '', // 页面预览图 + 'desc' => '官方推出个人中心(风格二)', // 页面描述 + 'mode' => 'diy', + // 页面数据源 + "data" => [ + "global" => [ + "title" => "个人中心(风格二)", + "pageBgColor" => "#F8F8F8", + "bgUrl" => "static/resource/images/diy/member_style2_bg.png", + 'imgWidth' => 750, + 'imgHeight' => 403, + "bottomTabBarSwitch" => true, + "template" => [ + 'textColor' => "#303133", + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 12 + ] + ], + 'topStatusBar' => [ + 'bgColor' => "#ffffff", + 'isTransparent' => false, + 'isShow' => true, + 'style' => 'style-1', + 'textColor' => "#333333", + 'textAlign' => 'center', + ], + 'popWindow' => [ + 'imgUrl' => "", + 'imgWidth' => '', + 'imgHeight' => '', + 'count' => -1, + 'show' => 0, + 'link' => [ + 'name' => "" + ], + ] + ], + "value" => [ + [ + "path" => "edit-member-info", + "id" => "67qv49qgxp00", + "componentName" => "MemberInfo", + "componentTitle" => "会员信息", + "uses" => 0, + "ignore" => [], + "pageBgColor" => "", + "componentBgColor" => "", + "topRounded" => 0, + "bottomRounded" => 0, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 0, + "both" => 0 + ], + "textColor" => "#FFFFFF", + "bgUrl" => "", + "style" => "style-1", + "styleName" => "风格1", + "bgColorStart" => "", + "bgColorEnd" => "" + ], + [ + "path" => "edit-graphic-nav", + "id" => "62b7d7hl4ok", + "componentName" => "GraphicNav", + "componentTitle" => "图文导航", + "uses" => 0, + "layout" => "horizontal", + "navTitle" => "我的服务", + "subNavTitle" => "", + "subNavTitleLink" => [ + "name" => "" + ], + "subNavColor" => "#999999", + "mode" => "graphic", + "showStyle" => "fixed", + "rowCount" => 4, + "pageCount" => 2, + "carousel" => [ + "type" => "circle", + "color" => "#FFFFFF" + ], + "imageSize" => 25, + "aroundRadius" => 25, + "font" => [ + "size" => 12, + "weight" => "bold", + "color" => "#303133" + ], + "pageBgColor" => "", + "componentBgColor" => "rgba(255, 255, 255, 1)", + "topRounded" => 9, + "bottomRounded" => 9, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 0, + "bottom" => 6, + "both" => 16 + ], + "ignore" => [], + "list" => [ + [ + "title" => "个人资料", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_PERSONAL", + "title" => "个人资料", + "url" => "/app/pages/member/personal" + ], + "imageUrl" => "static/resource/images/diy/horz_m_personal.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "xvlauaflc6o", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "我的余额", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_BALANCE", + "title" => "我的余额", + "url" => "/app/pages/member/balance" + ], + "imageUrl" => "static/resource/images/diy/horz_m_balance.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "63bjscck5n40", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "我的积分", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_POINT", + "title" => "我的积分", + "url" => "/app/pages/member/point" + ], + "imageUrl" => "static/resource/images/diy/horz_m_point.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4qiczw54t8g0", + "imgWidth" => 100, + "imgHeight" => 100 + ], + [ + "title" => "联系客服", + "link" => [ + "name" => "" + ], + "imageUrl" => "static/resource/images/diy/horz_m_service.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "2eqwfkdphpgk", + "imgWidth" => 100, + "imgHeight" => 100 + ] + ] + ], + [ + "path" => "edit-graphic-nav", + "uses" => 0, + "id" => "33yn28534fs0", + "componentName" => "GraphicNav", + "componentTitle" => "图文导航", + "ignore" => [], + "layout" => "vertical", + "navTitle" => "", + "subNavTitle" => "", + "subNavTitleLink" => [ + "name" => "" + ], + "subNavColor" => "#999999", + "mode" => "graphic", + "showStyle" => "fixed", + "rowCount" => 4, + "pageCount" => 2, + "carousel" => [ + "type" => "circle", + "color" => "#FFFFFF" + ], + "imageSize" => 25, + "aroundRadius" => 25, + "font" => [ + "size" => 13, + "weight" => "normal", + "color" => "rgba(0, 0, 0, 1)" + ], + "list" => [ + [ + "title" => "个人资料", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_PERSONAL", + "title" => "个人资料", + "url" => "/app/pages/member/personal" + ], + "imageUrl" => "static/resource/images/diy/vert_m_personal.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4xc4kw9xlqu0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "我的余额", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_BALANCE", + "title" => "我的余额", + "url" => "/app/pages/member/balance" + ], + "imageUrl" => "static/resource/images/diy/vert_m_balance.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "4555rq0cc1q0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "我的积分", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_POINT", + "title" => "我的积分", + "url" => "/app/pages/member/point" + ], + "imageUrl" => "static/resource/images/diy/vert_m_point.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "1gq3uxox0fk0", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "title" => "联系客服", + "link" => [ + "name" => "" + ], + "imageUrl" => "static/resource/images/diy/vert_m_service.png", + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ], + "id" => "6gqbh1tvyr00", + "imgWidth" => 88, + "imgHeight" => 88 + ], + [ + "id" => "777g7jxbtfc0", + "title" => "开发者联盟", + "imageUrl" => "static/resource/images/diy/vert_m_develop.png", + "imgWidth" => 96, + "imgHeight" => 96, + "link" => [ + "name" => "" + ], + "label" => [ + "control" => false, + "text" => "热门", + "textColor" => "#FFFFFF", + "bgColorStart" => "#F83287", + "bgColorEnd" => "#FE3423" + ] + ] + ], + "pageBgColor" => "", + "componentBgColor" => "rgba(255, 255, 255, 1)", + "topRounded" => 9, + "bottomRounded" => 9, + "elementBgColor" => "", + "topElementRounded" => 0, + "bottomElementRounded" => 0, + "margin" => [ + "top" => 6, + "bottom" => 12, + "both" => 16 + ] + ] + + ] + ] + ] + ] + ]; + + if (!empty($params[ 'addon' ])) { + $pages = (new DictLoader("UniappPages"))->load($params); + } else { + $pages = (new DictLoader("UniappPages"))->load($system_pages); + } + + if (!empty($params[ 'type' ])) { + if (!empty($pages[ $params[ 'type' ] ])) { + $temp = $pages[ $params[ 'type' ] ]; + if (isset($params[ 'mode' ]) && !empty($params[ 'mode' ])) { + foreach ($temp as $k => $v) { + if ($params[ 'mode' ] != $v[ 'mode' ]) { + unset($temp[ $k ]); + } + } + } + return $temp; + } else { + return []; + } + } + + return $pages; + } + +} diff --git a/niucloud/app/dict/diy/TemplateDict.php b/niucloud/app/dict/diy/TemplateDict.php new file mode 100644 index 0000000..4fa83e9 --- /dev/null +++ b/niucloud/app/dict/diy/TemplateDict.php @@ -0,0 +1,100 @@ + [ + 'title' => get_lang('dict_diy.page_index'), + 'page' => '/app/pages/index/index', + 'action' => 'decorate', // 页面是否装修标识,为空标识不装修,decorate:装修 + 'type' => 'index' // 页面类型,index:首页、member_index:个人中心,空:普通页面 + ], + 'DIY_MEMBER_INDEX' => [ + 'title' => get_lang('dict_diy.page_member_index'), + 'page' => '/app/pages/member/index', + 'action' => 'decorate', + 'type' => 'member_index' + ], + 'DIY_PAGE' => [ + 'title' => get_lang('dict_diy.page_diy'), + 'page' => '/app/pages/index/diy', + 'action' => '', + 'type' => '' + ] + ]; + + // 查询存在模板页面的应用插件列表 + if (!empty($params[ 'query' ]) && $params[ 'query' ] == 'addon') { + $system = [ + 'app' => [ + 'title' => '系统', + 'key' => 'app', + 'list' => $system_pages + ] + ]; + $addon = (new DictLoader("UniappTemplate"))->load([], $params); + $app = array_merge($system, $addon); + return $app; + } else { + // 查询应用插件下的模板页面数据 + + $pages = (new DictLoader("UniappTemplate"))->load($system_pages, $params); + + // 根据关键字查询 + if (!empty($params[ 'key' ])) { + $temp = []; + foreach ($params[ 'key' ] as $k => $v) { + if (!empty($pages[ $v ])) { + $temp[ $v ] = $pages[ $v ]; + } + } + return $temp; + } + + // 查询指定类型的页面 + if (!empty($params[ 'type' ])) { + $temp = []; + foreach ($pages as $k => $v) { + if (isset($v[ 'type' ]) && $params[ 'type' ] == $v[ 'type' ]) { + $temp[ $k ] = $v; + } + } + return $temp; + } + + // 查询可装修的页面类型 + if (!empty($params[ 'action' ])) { + $temp = []; + foreach ($pages as $k => $v) { + if (isset($v[ 'action' ]) && $params[ 'action' ] == $v[ 'action' ]) { + $temp[ $k ] = $v; + } + } + return $temp; + } + + return $pages; + + } + } + +} diff --git a/niucloud/app/dict/member/MemberAccountChangeTypeDict.php b/niucloud/app/dict/member/MemberAccountChangeTypeDict.php new file mode 100644 index 0000000..439ecc4 --- /dev/null +++ b/niucloud/app/dict/member/MemberAccountChangeTypeDict.php @@ -0,0 +1,38 @@ +load(); + if (empty($type)) { + return $account_change_type; + } + return $account_change_type[$type] ?? ''; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/member/MemberAccountTypeDict.php b/niucloud/app/dict/member/MemberAccountTypeDict.php new file mode 100644 index 0000000..1f59a66 --- /dev/null +++ b/niucloud/app/dict/member/MemberAccountTypeDict.php @@ -0,0 +1,48 @@ + get_lang('dict_member.account_point'), + self::BALANCE => get_lang('dict_member.account_balance'), + self::MONEY => get_lang('dict_member.account_money'), + self::COMMISSION => get_lang('dict_member.account_commission'), + ]; + if (empty($type)) { + return $data; + } + return $data[$type] ?? ''; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/member/MemberCashOutDict.php b/niucloud/app/dict/member/MemberCashOutDict.php new file mode 100644 index 0000000..570ae45 --- /dev/null +++ b/niucloud/app/dict/member/MemberCashOutDict.php @@ -0,0 +1,42 @@ + get_lang('dict_member_cash_out.status_wait_audit'),//待审核 + self::WAIT_TRANSFER => get_lang('dict_member_cash_out.status_wait_transfer'),//待转账 + self::TRANSFERED => get_lang('dict_member_cash_out.status_transfered'),//已转账 + self::REFUSE => get_lang('dict_member_cash_out.status_refuse'),//已拒绝 + self::CANCEL => get_lang('dict_member_cash_out.status_cancel'),//已取消 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/member/MemberDict.php b/niucloud/app/dict/member/MemberDict.php new file mode 100644 index 0000000..bcca0a5 --- /dev/null +++ b/niucloud/app/dict/member/MemberDict.php @@ -0,0 +1,37 @@ + get_lang('dict_member.status_on'),//正常 + self::OFF => get_lang('dict_member.status_off'),//无效 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/member/MemberLoginTypeDict.php b/niucloud/app/dict/member/MemberLoginTypeDict.php new file mode 100644 index 0000000..251b8c4 --- /dev/null +++ b/niucloud/app/dict/member/MemberLoginTypeDict.php @@ -0,0 +1,44 @@ + get_lang('dict_member.login_username'),//用户名密码登录 + self::MOBILE => get_lang('dict_member.login_mobile'),//手机号验证码登录, + self::WECHAT => get_lang('dict_member.login_wechat'),//'微信公众号授权登录', + self::WEAPP => get_lang('dict_member.login_weapp'),//'微信小程序授权登录', + ]; + if (empty($type)) { + return $data; + } + return $data[$type] ?? ''; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/member/MemberRegisterChannelDict.php b/niucloud/app/dict/member/MemberRegisterChannelDict.php new file mode 100644 index 0000000..734ba6c --- /dev/null +++ b/niucloud/app/dict/member/MemberRegisterChannelDict.php @@ -0,0 +1,36 @@ + get_lang('dict_member.register_weapp'),//微信小程序 + self::WECHAT => get_lang('dict_member.register_wechat'),//'微信公众号', + self::MANUAL => get_lang('dict_member.register_manual'),//'手动添加', + self::USERNAME => get_lang('dict_member.register_username'),//用户名密码登录 + self::MOBILE => get_lang('dict_member.register_mobile'),//手机号验证码登录, + ]; + if (empty($type)) { + return $data; + } + return $data[$type] ?? ''; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/member/account_change_type.php b/niucloud/app/dict/member/account_change_type.php new file mode 100644 index 0000000..1b56aa6 --- /dev/null +++ b/niucloud/app/dict/member/account_change_type.php @@ -0,0 +1,116 @@ + [ + //调整 + 'adjust' => [ + //名称 + 'name' => get_lang('dict_member.account_point_adjust'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 1, + ], + //充值赠送 + 'recharge_give' => [ + //名称 + 'name' => get_lang('dict_member.account_point_recharge_give'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 0, + ], + + ], + MemberAccountTypeDict::BALANCE => [ + //调整 + 'adjust' => [ + //名称 + 'name' => get_lang('dict_member.account_balance_adjust'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 1, + ], + //充值 + 'recharge' => [ + //名称 + 'name' => get_lang('dict_member.account_balance_recharge'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 0, + ], + 'recharge_refund' => [ + //名称 + 'name' => get_lang('dict_member.account_balance_recharge_refund'), + //是否增加 + 'inc' => 0, + //是否减少 + 'dec' => 1, + ], + //订单消费扣除余额 + 'order' => [ + //名称 + 'name' => get_lang('dict_member.account_balance_order'), + //是否增加 + 'inc' => 0, + //是否减少 + 'dec' => 1, + ], + //订单退款返还余额 + 'order_refund' => [ + //名称 + 'name' => get_lang('dict_member.account_balance_order_refund'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 0, + ], + ], + MemberAccountTypeDict::MONEY => [ + + //活动奖励 + 'award' => [ + //名称 + 'name' => get_lang('dict_member.account_money_award'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 0, + ], + //提现 + 'cash_out' => [ + //名称 + 'name' => get_lang('dict_member.account_money_cash_out'), + //是否增加 + 'inc' => 0, + //是否减少 + 'dec' => 1, + ], + ], + //会员佣金 + MemberAccountTypeDict::COMMISSION => [ + + //活动奖励 + 'award' => [ + //名称 + 'name' => get_lang('dict_member.account_commission_award'), + //是否增加 + 'inc' => 1, + //是否减少 + 'dec' => 0, + ], + //提现 + 'cash_out' => [ + //名称 + 'name' => get_lang('dict_member.account_commission_cash_out'), + //是否增加 + 'inc' => 0, + //是否减少 + 'dec' => 1, + ], + ] +]; \ No newline at end of file diff --git a/niucloud/app/dict/menu/admin.php b/niucloud/app/dict/menu/admin.php new file mode 100644 index 0000000..77c235a --- /dev/null +++ b/niucloud/app/dict/menu/admin.php @@ -0,0 +1,808 @@ + '首页', + 'menu_key' => 'overview', + 'menu_type' => 1, + 'icon' => 'element-Monitor', + 'api_url' => '', + 'router_path' => 'index', + 'view_path' => 'index/index', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 0 + ], + [ + 'menu_name' => '应用管理', + 'menu_key' => 'app_manage', + 'menu_type' => 0, + 'icon' => 'element-Monitor', + 'api_url' => '', + 'router_path' => 'app_manage', + 'view_path' => '', + 'methods' => '', + 'sort' => 99, + 'status' => 1, + 'is_show' => 0, + 'children' => [ + [ + 'menu_name' => '工具管理', + 'menu_key' => 'app_manage_tool', + 'menu_type' => 1, + 'icon' => 'iconfont-iconchajian1', + 'api_url' => '', + 'router_path' => 'tools', + 'view_path' => 'index/tools', + 'methods' => 'get', + 'sort' => 30, + 'status' => 1, + 'is_show' => 1 + ], + [ + 'menu_name' => '应用管理', + 'menu_key' => 'app_manage_index', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'index', + 'view_path' => 'index/app_manage', + 'methods' => 'get', + 'sort' => 10, + 'status' => 1, + 'is_show' => 1 + ], + [ + 'menu_name' => '插件管理', + 'menu_key' => 'app_manage_store', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'app_store', + 'view_path' => 'index/store', + 'methods' => 'get', + 'sort' => 10, + 'status' => 1, + 'is_show' => 1 + ] + ] + ], + [ + 'menu_name' => '站点管理', + 'menu_key' => 'site_manage', + 'menu_type' => 0, + 'icon' => 'element-Memo', + 'api_url' => '', + 'router_path' => 'site', + 'view_path' => '', + 'methods' => '', + 'sort' => 50, + 'status' => 1, + 'is_show' => 0, + 'children' => [ + [ + 'menu_name' => '站点列表', + 'menu_key' => 'site_list', + 'menu_type' => 1, + 'icon' => 'element-OfficeBuilding', + 'api_url' => 'site/site', + 'router_path' => 'list', + 'view_path' => 'site/list', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '添加站点', + 'menu_key' => 'add_site', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/site', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑站点', + 'menu_key' => 'edit_site', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/site/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除站点', + 'menu_key' => 'delete_site', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/site/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '站点用户', + 'menu_key' => 'site_user_list', + 'menu_type' => 1, + 'icon' => 'element-OfficeBuilding', + 'api_url' => 'site/user', + 'router_path' => 'user', + 'view_path' => 'site/user', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '用户详情', + 'menu_key' => 'site_user_info', + 'menu_type' => 1, + 'icon' => 'element-OfficeBuilding', + 'api_url' => '', + 'router_path' => 'user_info', + 'view_path' => 'site/user_info', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '站点详情', + 'menu_key' => 'site_info', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'site/site/', + 'router_path' => 'info', + 'view_path' => 'site/info', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '站点套餐', + 'menu_key' => 'site_group', + 'menu_type' => 1, + 'icon' => 'element-PriceTag', + 'api_url' => 'site/group', + 'router_path' => 'group', + 'view_path' => 'site/group', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '站点套餐编辑', + 'menu_key' => 'site_group_edit', + 'menu_type' => 1, + 'icon' => 'element-PriceTag', + 'api_url' => 'site/group_edit', + 'router_path' => 'group_edit', + 'view_path' => 'site/group_edit', + 'methods' => 'get', + 'sort' => 70, + 'status' => 1, + 'is_show' => 0, + ] + ] + ], + [ + 'menu_name' => '系统设置', + 'menu_key' => 'setting_manage', + 'menu_type' => 0, + 'icon' => 'element-Setting', + 'api_url' => '', + 'router_path' => 'setting', + 'view_path' => '', + 'methods' => '', + 'sort' => 20, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '权限设置', + 'menu_key' => 'auth', + 'menu_type' => 0, + 'icon' => 'iconfont-iconquanxianguanli', + 'api_url' => '', + 'router_path' => 'auth', + 'view_path' => '', + 'methods' => '', + 'sort' => 40, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '管理员', + 'menu_key' => 'auth_list', + 'menu_type' => 1, + 'icon' => 'element-Lock', + 'api_url' => '', + 'router_path' => 'user', + 'view_path' => 'auth/user', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '管理员角色', + 'menu_key' => 'auth_role', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuanliebiao', + 'api_url' => 'sys/role', + 'router_path' => 'role', + 'view_path' => 'auth/role', + 'methods' => 'get', + 'sort' => 70, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'auth_role_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'auth_role_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'auth_role_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '操作日志', + 'menu_key' => 'auth_log', + 'menu_type' => 1, + 'icon' => 'element-Document', + 'api_url' => 'sys/log', + 'router_path' => 'log', + 'view_path' => 'auth/log', + 'methods' => 'get', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + ] + ] + ], + [ + 'menu_name' => '网站设置', + 'menu_key' => 'website_setting', + 'menu_type' => 0, + 'icon' => 'iconfont-iconwangzhan1', + 'api_url' => '', + 'router_path' => 'website', + 'view_path' => '', + 'methods' => '', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '基础设置', + 'menu_key' => 'base_setting', + 'menu_type' => 1, + 'icon' => 'element-Basketball', + 'api_url' => 'sys/config/website', + 'router_path' => 'system', + 'view_path' => 'setting/system', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '版权设置', + 'menu_key' => 'setting_copyright', + 'menu_type' => 1, + 'icon' => 'iconfont-iconbanquan1', + 'api_url' => 'sys/config/copyright', + 'router_path' => 'copyright', + 'view_path' => 'setting/copyright', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '登录设置', + 'menu_key' => 'setting_login', + 'menu_type' => 1, + 'icon' => 'iconfont-iconzhuceshezhi', + 'api_url' => 'sys/config/login', + 'router_path' => 'adminlogin', + 'view_path' => 'setting/adminlogin', + 'methods' => 'get', + 'sort' => 20, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '存储设置', + 'menu_key' => 'setting_storage', + 'menu_type' => 1, + 'icon' => 'element-FolderChecked', + 'api_url' => 'sys/storage', + 'router_path' => 'storage', + 'view_path' => 'setting/storage', + 'methods' => 'get', + 'sort' => 30, + 'status' => 1, + 'is_show' => 1 + ], + [ + 'menu_name' => '微信开放平台', + 'menu_key' => 'setting_oplatform', + 'menu_type' => 1, + 'icon' => 'iconfont-iconweixin', + 'api_url' => 'sys/wxoplatform', + 'router_path' => 'oplatform', + 'view_path' => 'setting/wxoplatform', + 'methods' => 'get', + 'sort' => 20, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '小程序平台', + 'menu_key' => 'setting_weapp_oplatform', + 'menu_type' => 1, + 'icon' => 'iconfont-iconxiaochengxushezhi', + 'api_url' => 'sys/weapp', + 'router_path' => 'weapp', + 'view_path' => 'setting/weapp', + 'methods' => 'get', + 'sort' => 20, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '素材管理', + 'menu_key' => 'attachment', + 'menu_type' => 1, + 'icon' => 'element-Files', + 'api_url' => 'sys/attachment', + 'router_path' => 'attachment', + 'view_path' => 'tools/attachment', + 'methods' => 'get', + 'sort' => 10, + 'status' => 1, + 'is_show' => 1, + ] + ] + ], + [ + 'menu_name' => '开发工具', + 'menu_key' => 'tool', + 'menu_type' => 0, + 'icon' => 'element-Edit', + 'api_url' => '', + 'router_path' => 'tools', + 'view_path' => '', + 'methods' => '', + 'sort' => 10, + 'status' => 1, + 'is_show' => 0, + 'children' => [ + [ + 'menu_name' => '插件开发', + 'menu_key' => 'addon_develop', + 'menu_type' => 1, + 'icon' => 'iconfont-iconchajiankaifa', + 'api_url' => '', + 'router_path' => 'addon', + 'view_path' => 'tools/addon/index', + 'methods' => '', + 'sort' => 110, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '插件添加/编辑', + 'menu_key' => 'addon_edit', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'addon_edit', + 'view_path' => 'tools/addon/edit', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '数据字典', + 'menu_key' => 'sys_dict_dict_dict_list', + 'menu_type' => 1, + 'icon' => 'iconfont-iconwenzhangguanli1', + 'api_url' => 'dict/post/post', + 'router_path' => 'list', + 'view_path' => 'dict/list', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '数据字典添加', + 'menu_key' => 'sys_dict_dict_dict_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'dict', + 'router_path' => 'edit', + 'view_path' => 'dict/edit', + 'methods' => 'post', + 'sort' => 4, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'sys_dict_dict_dict_edit', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'dict/', + 'router_path' => 'edit', + 'view_path' => 'dict/edit', + 'methods' => 'put', + 'sort' => 3, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'sys_dict_dict_dict_delete', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'dict/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 2, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '代码生成', + 'menu_key' => 'code', + 'menu_type' => 1, + 'icon' => 'iconfont-icondaimashengcheng', + 'api_url' => 'generator/generator', + 'router_path' => 'code', + 'view_path' => 'tools/code/index', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '数据表编辑', + 'menu_key' => 'code_edit', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'code/edit', + 'view_path' => 'tools/code/edit', + 'methods' => '', + 'sort' => 80, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '更新缓存', + 'menu_key' => 'tools_Update_cache', + 'menu_type' => 1, + 'icon' => 'iconfont-icongengxinhuancun', + 'api_url' => '', + 'router_path' => 'update', + 'view_path' => 'tools/updatecache', + 'methods' => '', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '环境检测', + 'menu_key' => 'tools_check_environment', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuanjingjiance', + 'api_url' => '', + 'router_path' => 'detection', + 'view_path' => 'tools/detection', + 'methods' => '', + 'sort' => 50, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '平台菜单', + 'menu_key' => 'platform_menu', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => 'admin_menu', + 'view_path' => 'auth/menu', + 'methods' => 'get', + 'sort' => 49, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'auth_menu_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'auth_menu_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'auth_menu_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '详情', + 'menu_key' => 'auth_menu_info', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + ], + ], + [ + 'menu_name' => '站点菜单', + 'menu_key' => 'site_menu', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => 'site_menu', + 'view_path' => 'auth/site_menu', + 'methods' => 'get', + 'sort' => 48, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'auth_site_menu_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'auth_site_menu_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'auth_site_menu_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '详情', + 'menu_key' => 'auth_site_menu_info', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/menu/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + ], + ], + [ + 'menu_name' => '计划任务', + 'menu_key' => 'tools_schedule', + 'menu_type' => 1, + 'icon' => 'iconfont-iconjihuarenwu', + 'api_url' => 'sys/schedule/list', + 'router_path' => 'schedule', + 'view_path' => 'tools/schedule', + 'methods' => '', + 'sort' => 40, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'schedule_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/schedule', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 4, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'schedule_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/schedule/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 3, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '设置状态', + 'menu_key' => 'schedule_set_status', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'schedule/modify/status/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 2, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'schedule_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/schedule/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '授权信息', + 'menu_key' => 'app_auth', + 'menu_type' => 1, + 'icon' => 'iconfont-iconshouquanxinxi2', + 'api_url' => 'niucloud/authinfo', + 'router_path' => 'authorize', + 'view_path' => 'app/authorize', + 'methods' => 'get', + 'sort' => 30, + 'status' => 1, + 'is_show' => 1 + ], + [ + 'menu_name' => '开发者key', + 'menu_key' => 'developer_token', + 'menu_type' => 1, + 'icon' => 'iconfont-iconshouquanxinxi2', + 'api_url' => 'sys/config/developer_token', + 'router_path' => 'developer_token', + 'view_path' => 'setting/developer_token', + 'methods' => 'get', + 'sort' => 20, + 'status' => 1, + 'is_show' => 1 + ] + ] + ], + [ + 'menu_name' => '应用市场', + 'menu_key' => 'app_store', + 'menu_type' => 1, + 'icon' => 'element-ShoppingBag', + 'api_url' => 'addon/local', + 'router_path' => 'app_store', + 'view_path' => 'app/store', + 'methods' => 'get', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1 + ] + ]; diff --git a/niucloud/app/dict/menu/site.php b/niucloud/app/dict/menu/site.php new file mode 100644 index 0000000..f1ab9ff --- /dev/null +++ b/niucloud/app/dict/menu/site.php @@ -0,0 +1,1203 @@ + '装修管理', + 'menu_short_name' => '装修', + 'menu_key' => 'diy', + 'menu_type' => 0, + 'icon' => 'element-Brush', + 'api_url' => '', + 'router_path' => 'diy', + 'view_path' => '', + 'methods' => '', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '启动页', + 'menu_key' => 'diy_page_decorate_index', + 'menu_type' => 1, + 'icon' => 'element-House', + 'api_url' => '', + 'router_path' => 'index', + 'view_path' => 'diy/index', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '个人中心', + 'menu_key' => 'diy_page_decorate_member_index', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuanliebiao', // element-House + 'api_url' => '', + 'router_path' => 'member', + 'view_path' => 'diy/member', + 'methods' => '', + 'sort' => 99, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '保存', + 'menu_key' => 'diy_page_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'diy/diy', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 95, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '微页面', + 'menu_key' => 'diy_page_list', + 'menu_type' => 1, + 'icon' => 'iconfont-icondianpuzhuangxiu', + 'api_url' => 'diy/diy', + 'router_path' => 'list', + 'view_path' => 'diy/list', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '页面路径', + 'menu_key' => 'diy_page_route', + 'menu_type' => 1, + 'icon' => 'iconfont-icondianpuzhuangxiu', + 'api_url' => 'diy/diy', + 'router_path' => 'route', + 'view_path' => 'diy/route', + 'methods' => 'get', + 'sort' => 85, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '底部导航', + 'menu_key' => 'diy_bottom', + 'menu_type' => 1, + 'icon' => 'iconfont-icondibudaohang', + 'api_url' => 'diy/bottom', + 'router_path' => 'tabbar', + 'view_path' => 'diy/tabbar', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '保存', + 'menu_key' => 'diy_tabbar_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'diy/bottom', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + ], + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'diy_tabbar_edit', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'diy/bottom/edit', + 'router_path' => 'tabbar_edit', + 'view_path' => 'diy/tabbar_edit', + 'methods' => 'post', + 'sort' => 100, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '素材管理', + 'menu_key' => 'attachment', + 'menu_type' => 1, + 'icon' => 'element-Files', + 'api_url' => 'sys/attachment', + 'router_path' => 'attachment', + 'view_path' => 'tools/attachment', + 'methods' => 'get', + 'sort' => 75, + 'status' => 1, + 'is_show' => 1, + ] + ] + ], + [ + 'menu_name' => '页面装修', + 'menu_key' => 'decorate', + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'decorate', + 'view_path' => '', + 'methods' => '', + 'sort' => 21, + 'status' => 1, + 'is_show' => 0, + 'children' => [ + [ + 'menu_name' => '装修', + 'menu_key' => 'page_decorate', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'diy/diy/', + 'router_path' => 'edit', + 'view_path' => 'diy/edit', + 'methods' => 'put', + 'sort' => 0, + 'status' => 1, + 'is_show' => 0, + ] + ] + ], + [ + 'menu_name' => '页面预览', + 'menu_key' => 'preview', + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'preview', + 'view_path' => '', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + 'children' => [ + [ + 'menu_name' => '页面预览', + 'menu_key' => 'page_wap_preview', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '', + 'router_path' => 'wap', + 'view_path' => 'index/preview', + 'methods' => 'get', + 'sort' => 0, + 'status' => 1, + 'is_show' => 0, + ], + ] + ], + [ + 'menu_name' => '会员管理', + 'menu_short_name' => '会员', + 'menu_key' => 'member', + 'menu_type' => 0, + 'icon' => 'iconfont-iconjiaoseyonghu', + 'api_url' => '', + 'router_path' => 'member', + 'view_path' => '', + 'methods' => '', + 'sort' => 70, + 'status' => 1, + 'is_show' => 1, + 'children' => + [ + [ + 'menu_name' => '会员列表', + 'menu_key' => 'member_list', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuanliebiao', + 'api_url' => 'member/member', + 'router_path' => 'member', + 'view_path' => 'member/member', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + + 'menu_name' => '编辑', + 'menu_key' => 'member_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'member/modify//', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '会员详情', + 'menu_key' => 'member_info', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'member/member/', + 'router_path' => 'detail', + 'view_path' => 'member/member_detail', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '会员标签', + 'menu_key' => 'member_label', + 'menu_type' => 1, + 'icon' => 'element-CollectionTag', + 'api_url' => 'member/label', + 'router_path' => 'label', + 'view_path' => 'member/label', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + + 'menu_name' => '编辑标签', + 'menu_key' => 'member_label_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'member/label/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + [ + + 'menu_name' => '添加标签', + 'menu_key' => 'member_label_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'member/label', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + [ + + 'menu_name' => '删除标签', + 'menu_key' => 'member_label_delete', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'member/label/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '会员积分', + 'menu_key' => 'member_point', + 'menu_type' => 1, + 'icon' => 'iconfont-iconjifen-xianxing', + 'api_url' => 'member/account/point', + 'router_path' => 'point', + 'view_path' => 'member/point', + 'methods' => 'get', + 'sort' => 70, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '会员余额', + 'menu_key' => 'member_balance', + 'menu_type' => 1, + 'icon' => 'element-Money', + 'api_url' => 'member/account/balance', + 'router_path' => 'balance', + 'view_path' => 'member/balance', + 'methods' => 'get', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '会员佣金', + 'menu_key' => 'member_commission', + 'menu_type' => 1, + 'icon' => 'element-Money', + 'api_url' => 'member/account/commission', + 'router_path' => 'commission', + 'view_path' => 'member/commission', + 'methods' => 'get', + 'sort' => 59, + 'status' => 1, + 'is_show' => 1, + ], + ], + ], + [ + 'menu_name' => '财务管理', + 'menu_short_name' => '财务', + 'menu_key' => 'finance', + 'menu_type' => 0, + 'icon' => 'element-Box', + 'api_url' => '', + 'router_path' => 'finance', + 'view_path' => '', + 'methods' => '', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '财务流水', + 'menu_key' => 'site_account_list', + 'menu_type' => 1, + 'icon' => 'element-Postcard', + 'api_url' => 'finance/account', + 'router_path' => 'account', + 'view_path' => 'finance/account', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], +// [ +// 'menu_name' => '线下支付', +// 'menu_key' => 'site_pay_offlinepay', +// 'menu_type' => 1, +// 'icon' => 'element-Postcard', +// 'api_url' => 'pay/offlinepay', +// 'router_path' => 'pay/offlinepay', +// 'view_path' => 'finance/offlinepay', +// 'methods' => 'get', +// 'sort' => 99, +// 'status' => 1, +// 'is_show' => 1, +// 'children' => [ +// [ +// 'menu_name' => '通过', +// 'menu_key' => 'site_pay_audit_pass', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => 'pay/pass/:out_trade_no', +// 'router_path' => '', +// 'view_path' => '', +// 'methods' => 'put', +// 'sort' => 99, +// 'status' => 1, +// 'is_show' => 1, +// ], +// [ +// 'menu_name' => '拒绝', +// 'menu_key' => 'site_pay_audit_refuse', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => 'pay/refuse/:out_trade_no', +// 'router_path' => '', +// 'view_path' => '', +// 'methods' => 'put', +// 'sort' => 99, +// 'status' => 1, +// 'is_show' => 1, +// ], +// ] +// ], + [ + 'menu_name' => '支付单据详情', + 'menu_key' => 'site_pay_detail', + 'menu_type' => 1, + 'icon' => 'element-Postcard', + 'api_url' => 'pay/detail', + 'router_path' => 'pay/detail', + 'view_path' => 'finance/pay_detail', + 'methods' => 'get', + 'sort' => 98, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '会员提现', + 'menu_key' => 'cash_out_list', + 'menu_type' => 1, + 'icon' => 'element-Postcard', + 'api_url' => 'member/cash_out', + 'router_path' => 'cash_out', + 'view_path' => 'finance/cash_out', + 'methods' => 'get', + 'sort' => 97, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '会员退款', + 'menu_key' => 'member_refund_list', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuantixian', + 'api_url' => 'pay/pay_refund', + 'router_path' => 'refund', + 'view_path' => 'finance/pay_refund', + 'methods' => 'get', + 'sort' => 9, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '退款详情', + 'menu_key' => 'member_refund_detail', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuantixian', + 'api_url' => 'pay/refund', + 'router_path' => 'refund/detail', + 'view_path' => 'finance/refund_detail', + 'methods' => 'get', + 'sort' => 9, + 'status' => 1, + 'is_show' => 0, + ], + ] + ], + [ + + 'menu_name' => '应用管理', + 'menu_short_name' => '应用', + 'menu_key' => 'addon', + 'menu_type' => 0, + 'icon' => 'iconfont-iconmanage-apply', + 'api_url' => '', + 'router_path' => 'app', + 'view_path' => '', + 'methods' => '', + 'sort' => 55, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '应用管理', + 'menu_key' => 'addon_list', + 'menu_type' => 1, + 'icon' => 'iconfont-iconmanage-apply', + 'api_url' => 'addon/list', + 'router_path' => 'index', + 'view_path' => 'app/index', + 'methods' => 'get', + 'sort' => 50, + 'status' => 1, + 'is_show' => 1, + ] + ] + ], + [ + + 'menu_name' => '渠道管理', + 'menu_short_name' => '渠道', + 'menu_key' => 'channel', + 'menu_type' => 0, + 'icon' => 'element-DataBoard', + 'api_url' => '', + 'router_path' => 'channel', + 'view_path' => '', + 'methods' => '', + 'sort' => 50, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '电脑端', + 'menu_key' => 'pc_config', + 'menu_type' => 1, + 'icon' => 'iconfont-icondesktop', + 'api_url' => '', + 'router_path' => 'pc/config', + 'view_path' => 'channel/pc/config', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => 'H5端', + 'menu_key' => 'h5_config', + 'menu_type' => 1, + 'icon' => 'iconfont-iconh5e', + 'api_url' => 'channel/h5/config', + 'router_path' => 'h5/config', + 'view_path' => 'channel/h5/config', + 'methods' => 'put', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '微信公众号', + 'menu_key' => 'channel_wechat', + 'menu_type' => 1, + 'icon' => 'iconfont-iconweixingongzhonghao1', + 'api_url' => 'wechat/access', + 'router_path' => 'wechat', + 'view_path' => 'channel/wechat/access', + 'methods' => '', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '发布教程', + 'menu_key' => 'wechat_course', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'wechat/course', + 'router_path' => 'wechat/course', + 'view_path' => 'channel/wechat/course', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '公众号配置', + 'menu_key' => 'wechat_config', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'wechat/config', + 'router_path' => 'wechat/config', + 'view_path' => 'channel/wechat/config', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '自定义菜单', + 'menu_key' => 'wechat_menu', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'wechat/menu', + 'router_path' => 'wechat/menu', + 'view_path' => 'channel/wechat/menu', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '模板消息', + 'menu_key' => 'wechat_template_message', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'wechat/template', + 'router_path' => 'wechat/message', + 'view_path' => 'channel/wechat/template', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '微信小程序', + 'menu_key' => 'weapp_access', + 'menu_type' => 1, + 'icon' => 'iconfont-iconxiaochengxushezhi', + 'api_url' => 'weapp/access', + 'router_path' => 'weapp', + 'view_path' => 'channel/weapp/access', + 'methods' => 'get', + 'sort' => 70, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '配置教程', + 'menu_key' => 'weapp_course', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'weapp/course', + 'router_path' => 'weapp/course', + 'view_path' => 'channel/weapp/course', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '小程序配置', + 'menu_key' => 'weapp_config', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'weapp/config', + 'router_path' => 'weapp/config', + 'view_path' => 'channel/weapp/config', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '订阅消息', + 'menu_key' => 'weapp_template_message', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'weapp/template', + 'router_path' => 'weapp/message', + 'view_path' => 'channel/weapp/template', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '小程序发布', + 'menu_key' => 'weapp_code', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'weapp/code', + 'router_path' => 'weapp/code', + 'view_path' => 'channel/weapp/code', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '支付宝小程序', + 'menu_key' => 'aliapp_weapp_access', + 'menu_type' => 1, + 'icon' => 'iconfont-iconzhifubao', + 'api_url' => 'aliapp/access', + 'router_path' => 'aliapp', + 'view_path' => 'channel/aliapp/access', + 'methods' => 'get', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '支付宝配置', + 'menu_key' => 'aliapp_config', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'aliapp/config', + 'router_path' => 'aliapp/config', + 'view_path' => 'channel/aliapp/config', + 'methods' => 'put', + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '配置教程', + 'menu_key' => 'aliapp_course', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'aliapp/course', + 'router_path' => 'aliapp/course', + 'view_path' => 'channel/aliapp/course', + 'methods' => 'get', + 'status' => 1, + 'is_show' => 0, + ], + ] + ], + [ + 'menu_name' => '权限管理', + 'menu_short_name' => '权限', + 'menu_key' => 'auth', + 'menu_type' => 0, + 'icon' => 'element-Lock', + 'api_url' => '', + 'router_path' => 'auth', + 'view_path' => '', + 'methods' => '', + 'sort' => 40, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + + 'menu_name' => '管理员', + 'menu_key' => 'auth_user', + 'menu_type' => 1, + 'icon' => 'iconfont-iconyonghu', + 'api_url' => 'site/user', + 'router_path' => 'user', + 'view_path' => 'auth/user', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'auth_user_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/user', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'auth_user_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/user/', + 'router_path' => '', + 'view_path' => 'put', + 'methods' => '', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'auth_user_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'site/user/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '详情', + 'menu_key' => 'auth_user_info', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/user/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 0, + 'status' => 1, + 'is_show' => 1, + ], + ], + ], + [ + 'menu_name' => '角色管理', + 'menu_key' => 'auth_role', + 'menu_type' => 1, + 'icon' => 'iconfont-iconhuiyuanliebiao', + 'api_url' => 'sys/role', + 'router_path' => 'role', + 'view_path' => 'auth/role', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '新增', + 'menu_key' => 'auth_role_add', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '编辑', + 'menu_key' => 'auth_role_update', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'put', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '删除', + 'menu_key' => 'auth_role_del', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'sys/role/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 1, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '操作日志', + 'menu_key' => 'auth_log', + 'menu_type' => 1, + 'icon' => 'element-Document', + 'api_url' => 'sys/log', + 'router_path' => 'log', + 'view_path' => 'auth/log', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + + [ + 'menu_name' => '系统设置', + 'menu_short_name' => '设置', + 'menu_key' => 'setting', + 'menu_type' => 0, + 'icon' => 'element-Setting', + 'api_url' => '', + 'router_path' => 'setting', + 'view_path' => '', + 'methods' => '', + 'sort' => 30, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '网站设置', + 'menu_key' => 'setting_system', + 'menu_type' => 1, + 'icon' => 'element-Basketball', + 'api_url' => 'sys/config/website', + 'router_path' => 'system', + 'view_path' => 'setting/system', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '版权设置', + 'menu_key' => 'setting_copyright', + 'menu_type' => 1, + 'icon' => 'iconfont-iconbanquan1', + 'api_url' => 'sys/config/copyright', + 'router_path' => 'copyright', + 'view_path' => 'setting/copyright', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '协议管理', + 'menu_key' => 'system_agreement', + 'menu_type' => 1, + 'icon' => 'element-Notebook', + 'api_url' => 'sys/agreement', + 'router_path' => 'agreement', + 'view_path' => 'setting/agreement', + 'methods' => 'get', + 'sort' => 80, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + + ] + ], + [ + 'menu_name' => '协议编辑', + 'menu_key' => 'system_agreement_edit', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'sys/agreement/', + 'router_path' => 'agreement/edit', + 'view_path' => 'setting/agreement_edit', + 'methods' => 'put', + 'sort' => 100, + 'status' => 1, + 'is_show' => 0, + ], + [ + 'menu_name' => '注册登录', + 'menu_key' => 'setting_login_register', + 'menu_type' => 1, + 'icon' => 'iconfont-iconzhuceshezhi', + 'api_url' => 'member/config/login', + 'router_path' => 'login', + 'view_path' => 'setting/login', + 'methods' => 'get', + 'sort' => 70, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '会员设置', + 'menu_key' => 'setting_member', + 'menu_type' => 1, + 'icon' => 'iconfont-iconjiaoseyonghu', + 'api_url' => 'member/config/member', + 'router_path' => 'member', + 'view_path' => 'setting/member', + 'methods' => 'get', + 'sort' => 71, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '支付管理', + 'menu_key' => 'setting_pay', + 'menu_type' => 1, + 'icon' => 'element-Wallet', + 'api_url' => '', + 'router_path' => 'pay', + 'view_path' => '', + 'methods' => 'get', + 'sort' => 60, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '支付设置', + 'menu_key' => 'setting_pay_channel', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'pay/channel/lists', + 'router_path' => 'channel', + 'view_path' => 'setting/pay', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '设置', + 'menu_key' => 'setting_pay_channel_set', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'pay/channel/set//', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + ], + ] + ], + [ + 'menu_name' => '打款设置', + 'menu_key' => 'setting_pay_transfer', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'pay/transfer', + 'router_path' => 'transfer', + 'view_path' => 'setting/transfer', + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '设置', + 'menu_key' => 'setting_pay_transfer_set', + 'menu_type' => 2, + 'icon' => '', + 'api_url' => 'pay/transfer', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'post', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + + ], + ] + ], +// [ +// 'menu_name' => '微信支付', +// 'menu_key' => 'setting_wechatpay', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => '', +// 'router_path' => 'wechatpay', +// 'view_path' => '', +// 'methods' => '', +// 'sort' => 0, +// 'status' => 1, +// 'is_show' => 0, +// +// ], +// [ +// 'menu_name' => '支付宝支付', +// 'menu_key' => 'setting_alipay', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => '', +// 'router_path' => 'alipay', +// 'view_path' => '', +// 'methods' => '', +// 'sort' => 0, +// 'status' => 1, +// 'is_show' => 0, +// +// ], +// [ +// 'menu_name' => '获取支付配置', +// 'menu_key' => 'set_pay_config', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => 'pay/config/', +// 'router_path' => '', +// 'view_path' => '', +// 'methods' => 'get', +// 'sort' => 0, +// 'status' => 1, +// 'is_show' => 0, +// +// ], +// [ +// 'menu_name' => '配置支付', +// 'menu_key' => 'set_pay_config', +// 'menu_type' => 2, +// 'icon' => '', +// 'api_url' => 'pay/config/', +// 'router_path' => '', +// 'view_path' => '', +// 'methods' => 'put', +// 'sort' => 0, +// 'status' => 1, +// 'is_show' => 0, +// +// ], + ] + ], + [ + 'menu_name' => '提现设置', + 'menu_key' => 'cash_out_config', + 'menu_type' => 1, + 'icon' => 'element-Postcard', + 'api_url' => 'member/config/cash_out', + 'router_path' => 'cash_out', + 'view_path' => 'setting/cash_out', + 'methods' => 'post', + 'sort' => 59, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '消息管理', + 'menu_key' => 'setting_notice', + 'menu_type' => 1, + 'icon' => 'element-ChatLineSquare', + 'api_url' => '', + 'router_path' => 'notice', + 'view_path' => '', + 'methods' => '', + 'sort' => 50, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '消息模板', + 'menu_key' => 'setting_notice_template', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'notice/notice', + 'router_path' => 'template', + 'view_path' => 'setting/notice', + 'methods' => 'get', + 'sort' => 10, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '发送记录', + 'menu_key' => 'setting_notice_records', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'notice/notice/log', + 'router_path' => 'records', + 'view_path' => 'setting/notice_records', + 'methods' => 'get', + 'sort' => 9, + 'status' => 1, + 'is_show' => 1, + ] + ] + ], + [ + 'menu_name' => '短信管理', + 'menu_key' => 'sms_notice', + 'menu_type' => 0, + 'icon' => 'element-Message', + 'api_url' => '', + 'router_path' => 'sms', + 'view_path' => '', + 'methods' => '', + 'sort' => 40, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '短信设置', + 'menu_key' => 'sms_setting', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'notice/sms', + 'router_path' => 'setting', + 'view_path' => 'setting/sms', + 'methods' => 'get', + 'sort' => 12, + 'status' => 1, + 'is_show' => 1, + + ], + [ + 'menu_name' => '发送记录', + 'menu_key' => 'sms_notice_records', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => 'notice/sms/log', + 'router_path' => 'records', + 'view_path' => 'setting/sms_records', + 'methods' => 'get', + 'sort' => 11, + 'status' => 1, + 'is_show' => 1, + + ] + ] + ], + [ + 'menu_name' => '地图设置', + 'menu_key' => 'map_setting', + 'menu_type' => 1, + 'icon' => 'element-Message', + 'api_url' => 'sys/config/map', + 'router_path' => 'map', + 'view_path' => 'setting/map', + 'methods' => 'get', + 'sort' => 99, + 'status' => 1, + 'is_show' => 1, + ], + [ + 'menu_name' => '存储设置', + 'menu_key' => 'setting_storage', + 'menu_type' => 1, + 'icon' => 'element-FolderChecked', + 'api_url' => 'sys/storage', + 'router_path' => 'storage', + 'view_path' => 'setting/storage', + 'methods' => 'get', + 'sort' => 30, + 'status' => 1, + 'is_show' => 1 + ], + ] + ] + ]; diff --git a/niucloud/app/dict/notice/NoticeDict.php b/niucloud/app/dict/notice/NoticeDict.php new file mode 100644 index 0000000..8883272 --- /dev/null +++ b/niucloud/app/dict/notice/NoticeDict.php @@ -0,0 +1,54 @@ +load(['type' => 'notice']); + $notice_type = NoticeTypeDict::getType(); + foreach ($notice_type as $k => $v) { + $var_name = $k . '_notice'; + $$var_name = $addon_load->load(['type' => $k]); + } + + foreach ($notice as $k => $v) { + $support_type = []; + foreach ($notice_type as $notice_type_k => $notice_type_v) { + $var_name = $notice_type_k . '_notice'; + if (array_key_exists($k, $$var_name)) { + $notice[$k][$notice_type_k] = $$var_name[$k]; + $support_type[] = $notice_type_k; + } + } + $notice[$k]['support_type'] = $support_type; + } + if (!empty($key)) { + return $notice[$key] ?? []; + } + return $notice; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/notice/NoticeTypeDict.php b/niucloud/app/dict/notice/NoticeTypeDict.php new file mode 100644 index 0000000..27ad9f9 --- /dev/null +++ b/niucloud/app/dict/notice/NoticeTypeDict.php @@ -0,0 +1,37 @@ + get_lang('dict_notice.type_sms'),//短信 + self::WECHAT => get_lang('dict_notice.type_wechat'),//微信公众号 + self::WEAPP => get_lang('dict_notice.type_weapp'),//微信小程序 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/notice/notice.php b/niucloud/app/dict/notice/notice.php new file mode 100644 index 0000000..df6aaca --- /dev/null +++ b/niucloud/app/dict/notice/notice.php @@ -0,0 +1,40 @@ + [ + 'key' => 'verify_code', + 'receiver_type' => 0, + 'name' => '手机验证码', + 'title' => '管理端验证码登录', + 'async' => false, + 'variable' => [ + 'code' => '验证码' + ], + ], + //手机验证码,站点应用发送 + 'member_verify_code' => [ + 'key' => 'member_verify_code', + 'receiver_type' => 1, + 'name' => '手机验证码', + 'title' => '前端验证码登录,注册,手机验证', + 'async' => false, + 'variable' => [ + 'code' => '验证码' + ], + ], + //充值成功通知,站点端发送 + + 'recharge_success' => [ + 'key' => 'recharge_success', + 'receiver_type' => 1, + 'name' => '充值成功通知', + 'title' => '会员充值成功后发送', + 'async' => true, + 'variable' => [ + 'price' => '充值金额', + 'balance' => '充值后账户', + 'time' => '充值时间', + 'trade_no' => '交易单号' + ], + ] + +]; \ No newline at end of file diff --git a/niucloud/app/dict/notice/sms.php b/niucloud/app/dict/notice/sms.php new file mode 100644 index 0000000..53c6513 --- /dev/null +++ b/niucloud/app/dict/notice/sms.php @@ -0,0 +1,14 @@ + [ + 'content' => '您的手机验证码{code},请不要轻易告诉其他人' + ], + 'member_verify_code' => [ + 'content' => '您的手机验证码{code},请不要轻易告诉其他人', + ], + 'recharge_success' => [ + 'content' => '您充值金额¥{price}, 充值后金额¥{balance}', + ] + +]; \ No newline at end of file diff --git a/niucloud/app/dict/notice/weapp.php b/niucloud/app/dict/notice/weapp.php new file mode 100644 index 0000000..c07c422 --- /dev/null +++ b/niucloud/app/dict/notice/weapp.php @@ -0,0 +1,14 @@ + [ + 'tid' => '755', + 'content' => [ + ['交易单号', '{trade_no}', 'keyword1'], + ['充值金额', '{price}', 'keyword2'], + ['账户余额', '{balance}', 'keyword3'], + ['充值时间', '{time}', 'keyword4'], + ], + 'kid_list' => [1, 3, 4, 2], + 'scene_desc' => '' + ] +]; \ No newline at end of file diff --git a/niucloud/app/dict/notice/wechat.php b/niucloud/app/dict/notice/wechat.php new file mode 100644 index 0000000..41627a7 --- /dev/null +++ b/niucloud/app/dict/notice/wechat.php @@ -0,0 +1,14 @@ + [ + 'temp_key' => '52552', + 'keyword_name_list' => [ '充值时间', '充值金额' ], +// 'first' => '', + 'content' => [ + [ '充值时间', '{time}', 'time1' ], + [ '充值金额', '{price}', 'amount3' ], +// [ '充值状态', '充值成功', 'keyword3' ] + ], +// 'remark' => '' + ] +]; \ No newline at end of file diff --git a/niucloud/app/dict/order/RechargeOrderDict.php b/niucloud/app/dict/order/RechargeOrderDict.php new file mode 100644 index 0000000..71f3abf --- /dev/null +++ b/niucloud/app/dict/order/RechargeOrderDict.php @@ -0,0 +1,132 @@ + 'recharge', + 'name' => get_lang('dict_order.order_type_recharge') + ]; + } + + public static function getStatus($status = '') + { + $data = [ + + self::WAIT_PAY => [ + 'name' => '待支付', + 'status' => self::WAIT_PAY, + 'is_refund' => 0, + 'action' => [], + 'member_action' => [ + [ + 'name' => '支付', + 'class' => '', + 'params' => '' + ], + ], + ], + self::FINISH => [ + 'name' => '已完成', + 'status' => self::FINISH, + 'is_refund' => 0, + 'action' => [], + 'member_action' => [ + ], + ], + self::CLOSE => [ + 'name' => '已关闭', + 'status' => self::CLOSE, + 'is_refund' => 0, + 'action' => [], + 'member_action' => [ + ], + ] + + + ]; + if ($status == '') { + return $data; + } + return $data[$status] ?? ''; + } + + /** + * 获取退款状态 + * @param string $status + * @return array|array[]|string + */ + public static function getRefundStatus(string $status = '') + { + $data = [ + self::REFUNDING => [ + 'name' => get_lang('dict_order_refund.refunding'), + 'status' => self::REFUNDING + ], + self::REFUND_COMPLETED => [ + 'name' => get_lang('dict_order_refund.refund_complete'), + 'status' => self::REFUND_COMPLETED + ], + self::REFUND_FAIL => [ + 'name' => get_lang('dict_order_refund.refund_fail'), + 'status' => self::REFUND_FAIL + ] + ]; + + if ($status == '') { + return $data; + } + return $data[$status] ?? ''; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/pay/OnlinePayDict.php b/niucloud/app/dict/pay/OnlinePayDict.php new file mode 100644 index 0000000..6617871 --- /dev/null +++ b/niucloud/app/dict/pay/OnlinePayDict.php @@ -0,0 +1,59 @@ + self::NOTPAY,//交易创建,等待买家付款 + 'TRADE_CLOSED' => self::CLOSED,//未付款交易超时关闭,或支付完成后全额退款 + 'TRADE_SUCCESS' => self::SUCCESS,//交易支付成功 + 'TRADE_FINISHED' => self::TRADE_FINISHED,//交易结束,不可退款 + ]; + if (!empty($status)) + return $list[$status]; + + return $list; + } + + public static function getWechatPayStatus(string $status = '') + { + $list = [ + 'NOTPAY' => self::NOTPAY,//交易创建,等待买家付款 + 'CLOSED' => self::CLOSED,//已关闭 + 'SUCCESS' => self::SUCCESS,//交易支付成功 + 'REFUND' => self::REFUND,//转入退款 + 'REVOKED' => self::REVOKED,//已撤销(仅付款码支付会返回) + 'USERPAYING' => self::USERPAYING,//用户支付中(仅付款码支付会返回) + 'PAYERROR' => self::PAYERROR,//支付失败(仅付款码支付会返回) + ]; + if (!empty($status)) + return $list[$status]; + + return $list; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/pay/OnlineRefundDict.php b/niucloud/app/dict/pay/OnlineRefundDict.php new file mode 100644 index 0000000..8bd4354 --- /dev/null +++ b/niucloud/app/dict/pay/OnlineRefundDict.php @@ -0,0 +1,61 @@ + self::SUCCESS,//退款处理成功 + 'REFUND_FAIL ' => self::ABNORMAL,//表示退款请求未收到或者退款失败 + ]; + if (!empty($status)) + return $list[$status]; + + return $list; + } + + public static function getWechatRefundStatus(string $status = '') + { + $list = [ + 'SUCCESS' => self::SUCCESS,//退款成功 + 'CLOSED' => self::CLOSED,//退款关闭 + 'PROCESSING' => self::PROCESSING,//退款处理中 + 'ABNORMAL' => self::ABNORMAL,//退款异常 + + ]; + if (!empty($status)) + return $list[$status]; + + return $list; + } + + +} \ No newline at end of file diff --git a/niucloud/app/dict/pay/PayChannelDict.php b/niucloud/app/dict/pay/PayChannelDict.php new file mode 100644 index 0000000..9650f1b --- /dev/null +++ b/niucloud/app/dict/pay/PayChannelDict.php @@ -0,0 +1,47 @@ + $v){ +// if($k == PayDict::BALANCEPAY){ +// $pay_type[$k]['is_template'] = false; +// }else{ +// $pay_type[$k]['is_template'] = true; +// } +// } + foreach ($channel as $k => $v) { + $list[$k] = [ + 'name' => $v, + 'key' => $k, + 'pay_type' => $pay_type + ]; + } + return $list; + } + + +} \ No newline at end of file diff --git a/niucloud/app/dict/pay/PayDict.php b/niucloud/app/dict/pay/PayDict.php new file mode 100644 index 0000000..2c4e206 --- /dev/null +++ b/niucloud/app/dict/pay/PayDict.php @@ -0,0 +1,111 @@ + [ + 'name' => get_lang('dict_pay.type_wechatpay'), + 'key' => self::WECHATPAY, + 'icon' => self::WECHATPAY_ICON, + ],//微信支付 + self::ALIPAY => [ + 'name' => get_lang('dict_pay.type_alipay'), + 'key' => self::ALIPAY, + 'icon' => self::ALIPAY_ICON, + ],//支付宝支付 +// self::UNIPAY => [ +// 'name' => get_lang('dict_pay.type_unipay'), +// 'key' => self::UNIPAY, +// 'icon' => self::UNIPAY_ICON +// ],//银联支付 +// self::OFFLINEPAY => [ +// 'name' => get_lang('dict_pay.type_offline'), +// 'key' => self::OFFLINEPAY, +// 'icon' => self::OFFLINEPAY_ICON +// ],//线下支付 + self::BALANCEPAY => [ + 'name' => get_lang('dict_pay.type_balancepay'), + 'key' => self::BALANCEPAY, + 'icon' => self::BALANCEPAY_ICON, + ],//微信支付 +// self::ALIPAY => get_lang('dict_pay.type_alipay'),//支付宝支付 +// self::UNIPAY => get_lang('dict_pay.type_unipay'),//银联 +// self::OFFLINEPAY => get_lang('dict_pay.type_offline'),//线下支付 +// self::BALANCEPAY => get_lang('dict_pay.type_balancepay'),//余额支付 + ]; + if (!empty($types)) { + foreach ($list as $k => $v) { + if (!in_array($k, $types)) { + unset($list[$k]); + } + } + } + return $list; + } + + /** + * 获取状态 + * @return array + */ + public static function getStatus() + { + return [ + self::STATUS_WAIT => get_lang('dict_pay.status_wait'), + self::STATUS_ING => get_lang('dict_pay.status_ing'), + self::STATUS_FINISH => get_lang('dict_pay.status_finish'), + self::STATUS_CANCLE => get_lang('dict_pay.status_cancle'), + self::STATUS_AUDIT => get_lang('dict_pay.status_audit') + ]; + } + +} diff --git a/niucloud/app/dict/pay/RefundDict.php b/niucloud/app/dict/pay/RefundDict.php new file mode 100644 index 0000000..ac7e21f --- /dev/null +++ b/niucloud/app/dict/pay/RefundDict.php @@ -0,0 +1,58 @@ + get_lang('dict_pay_refund.status_wait'), + self::DEALING => get_lang('dict_pay_refund.status_dealing'), + self::SUCCESS => get_lang('dict_pay_refund.status_success'), + self::FAIL => get_lang('dict_pay_refund.status_fail'), + ]; + } + + /** + * 获取退款方式 + * @return array + */ + public static function getType() + { + return [ + self::WECHATPAY => get_lang('dict_pay_refund.wechatpay'), + self::ALIPAY => get_lang('dict_pay_refund.alipay'), + self::OFFLINE => get_lang('dict_pay_refund.offline'), + self::BALANCE => get_lang('dict_pay_refund.balance'), + self::BACK => get_lang('dict_pay_refund.back'), + ]; + } +} diff --git a/niucloud/app/dict/pay/TransferDict.php b/niucloud/app/dict/pay/TransferDict.php new file mode 100644 index 0000000..ae39eba --- /dev/null +++ b/niucloud/app/dict/pay/TransferDict.php @@ -0,0 +1,99 @@ + PayDict::WECHATPAY, + self::ALIPAY => PayDict::ALIPAY, + ); + if (empty($type)) + return $list; + return $list[$type]; + + } + + /** + * 支付类型 + * @return array + */ + public static function getTransferType(array $types = [], $is_all = true) + { + $list = [ + self::WECHAT => [ + 'name' => get_lang('dict_transfer.type_wechat'), + 'key' => self::WECHAT, + 'is_online' => true + ],//微信 + self::ALIPAY => [ + 'name' => get_lang('dict_transfer.type_ali'), + 'key' => self::ALIPAY, + 'is_online' => false + ],//支付宝 + self::BANK => [ + 'name' => get_lang('dict_transfer.type_bank'), + 'key' => self::BANK, + 'is_online' => false + ],//银行卡 + ]; + if ($is_all) { + $list[self::OFFLINE] = [ + 'name' => get_lang('dict_transfer.type_offline'), + 'key' => self::OFFLINE, + 'is_online' => false + ]; + } + if (!empty($types)) { + foreach ($list as $k => $v) { + if (!in_array($k, $types)) { + unset($list[$k]); + } + } + } + return $list; + } + + /** + * 获取状态 + * @return array + */ + public static function getStatus() + { + return [ + self::WAIT => get_lang('dict_transfer.status_wait'), + self::DEALING => get_lang('dict_transfer.status_dealing'), + self::SUCCESS => get_lang('dict_transfer.status_success'), + self::FAIL => get_lang('dict_transfer.status_fail'), + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/scan/ScanDict.php b/niucloud/app/dict/scan/ScanDict.php new file mode 100644 index 0000000..bab930d --- /dev/null +++ b/niucloud/app/dict/scan/ScanDict.php @@ -0,0 +1,27 @@ + get_lang('dict_schedule.type_cron'),//定时任务 + self::CROND => get_lang('dict_schedule.type_crond'),//周期任务 + ]; + }//每周 + + /** + * 任务启用状态 + * @return array + */ + public static function getStatus() + { + return [ + self::ON => get_lang('dict_schedule.on'),//启用 + self::OFF => get_lang('dict_schedule.off'),//关闭 + ]; + }//每月 + + public static function getDateType() + { + return [ + self::MIN => get_lang('dict_schedule.min'), + self::HOUR => get_lang('dict_schedule.hour'), + self::DAY => get_lang('dict_schedule.day'), + self::WEEK => get_lang('dict_schedule.week'), + self::MONTH => get_lang('dict_schedule.month'), + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/schedule/schedule.php b/niucloud/app/dict/schedule/schedule.php new file mode 100644 index 0000000..9f71cd3 --- /dev/null +++ b/niucloud/app/dict/schedule/schedule.php @@ -0,0 +1,28 @@ + 'order_close', + 'name' => '未支付订单自动关闭', + 'desc' => '', + 'time' => [ + 'type' => 'min', + 'min' => 1 + ], + 'class' => '', + 'function' => '' + ], + [ + 'key' => 'site_expire_close', + 'name' => '站点到期自动关闭', + 'desc' => '', + 'time' => [ + 'type' => 'day', + 'day' => 1, + 'hour' => 1, + 'min' => 1 + ], + 'class' => 'app\job\schedule\SiteExpireClose', + 'function' => '' + ] +]; diff --git a/niucloud/app/dict/site/SiteAccountLogDict.php b/niucloud/app/dict/site/SiteAccountLogDict.php new file mode 100644 index 0000000..44f2108 --- /dev/null +++ b/niucloud/app/dict/site/SiteAccountLogDict.php @@ -0,0 +1,33 @@ + get_lang('dict_site.pay'),//支付 + self::REFUND => get_lang('dict_site.refund'),//退款 + self::TRANSFER => get_lang('dict_site.transfer'),//转账 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/site/SiteDict.php b/niucloud/app/dict/site/SiteDict.php new file mode 100644 index 0000000..1f23e30 --- /dev/null +++ b/niucloud/app/dict/site/SiteDict.php @@ -0,0 +1,35 @@ + get_lang('dict_site.status_on'),//正常 + self::EXPIRE => get_lang('dict_site.status_expire'),//过期 + self::CLOSE => get_lang('dict_site.status_close'),//停止 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/AgreementDict.php b/niucloud/app/dict/sys/AgreementDict.php new file mode 100644 index 0000000..4193a61 --- /dev/null +++ b/niucloud/app/dict/sys/AgreementDict.php @@ -0,0 +1,44 @@ + get_lang('dict_agreement.service'),//服务协议, + 'privacy' => get_lang('dict_agreement.privacy'),//隐私协议 + ]; + $addon_data = event("AgreementType"); + Log::write("检测数据"); + Log::write($addon_data); + foreach ($addon_data as $k => $v) + { + $data = array_merge($data, $v); + } + return $data; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/AppTypeDict.php b/niucloud/app/dict/sys/AppTypeDict.php new file mode 100644 index 0000000..e55e241 --- /dev/null +++ b/niucloud/app/dict/sys/AppTypeDict.php @@ -0,0 +1,36 @@ + get_lang('dict_app.type_admin'),//平台管理端 + self::SITE => get_lang('dict_app.type_site'),//站点管理端 + self::API => get_lang('dict_app.type_api'),//客户端 + ]; + } + + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/CloudDict.php b/niucloud/app/dict/sys/CloudDict.php new file mode 100644 index 0000000..ed58d08 --- /dev/null +++ b/niucloud/app/dict/sys/CloudDict.php @@ -0,0 +1,34 @@ + get_lang('dict_cloud_applet.uploading'), + self::APPLET_UPLOAD_SUCCESS => get_lang('dict_cloud_applet.upload_success'), + self::APPLET_UPLOAD_FAIL => get_lang('dict_cloud_applet.upload_fail') + ]; + return $status_list[$status] ?? ''; + } +} diff --git a/niucloud/app/dict/sys/ConfigKeyDict.php b/niucloud/app/dict/sys/ConfigKeyDict.php new file mode 100644 index 0000000..3344dde --- /dev/null +++ b/niucloud/app/dict/sys/ConfigKeyDict.php @@ -0,0 +1,33 @@ + get_lang('dict_date.mon'),//周一 + self::TUE => get_lang('dict_date.tue'),//周二 + self::WED => get_lang('dict_date.wed'),//周三 + self::THUR => get_lang('dict_date.thur'),//周四 + self::FRI => get_lang('dict_date.fri'),//周五 + self::SAT => get_lang('dict_date.sat'),//周六 + self::SUN => get_lang('dict_date.sun'),//周日 + ]; + } + + /** + * 月份 + * @return array + */ + public function getMonth() + { + return [ + self::JAN => get_lang('dict_date.jan'),//1月 + self::FEB => get_lang('dict_date.feb'),//2月 + self::MAR => get_lang('dict_date.mar'),//3月 + self::APR => get_lang('dict_date.apr'),//4月 + self::MAY => get_lang('dict_date.may'),//5月 + self::JUN => get_lang('dict_date.jun'),//6月 + self::JUL => get_lang('dict_date.jul'),//7月 + self::AUG => get_lang('dict_date.aug'),//8月 + self::SEPT => get_lang('dict_date.sept'),//9月 + self::OCT => get_lang('dict_date.oct'),//10月 + self::NOV => get_lang('dict_date.nov'),//11月 + self::DEC => get_lang('dict_date.dec'),//12月 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/FileDict.php b/niucloud/app/dict/sys/FileDict.php new file mode 100644 index 0000000..9f08f48 --- /dev/null +++ b/niucloud/app/dict/sys/FileDict.php @@ -0,0 +1,86 @@ + get_lang('dict_file.type_image'),//图片 + self::VIDEO => get_lang('dict_file.type_video'),//视频 + ]; + } + + /** + * 存储方式 + * @return array + */ + public static function getStorageType() + { + return [ + self::LOCAL => get_lang('dict_file.storage_type_local'),//本地存储 + self::QINIU => get_lang('dict_file.storage_type_qiniu'),//七牛云 + self::ALIYUN => get_lang('dict_file.storage_type_image'),//阿里云 + self::QCLOUD => get_lang('dict_file.storage_type_qcloud'),//腾讯云 + ]; + } + + /** + * 获取上传的场景 + * @return array + */ + public static function getSceneType() + { + return [ + self::WECHAT,//微信相关上传 + self::ALIYUN,//阿里云相关上传 + self::IMAGE,//图片上传 + self::VIDEO,//视频上传 + self::APPLET,//小程序包上传 + ]; + } + + /** + * 缩略图规格 + * @return string[] + */ + public static function getThumbType() + { + return [ + self::BIG,//微信相关上传 + self::MID,//阿里云相关上传 + self::SMALL,//图片上传 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/IconDict.php b/niucloud/app/dict/sys/IconDict.php new file mode 100644 index 0000000..69d0963 --- /dev/null +++ b/niucloud/app/dict/sys/IconDict.php @@ -0,0 +1,30 @@ +load($system_pages); + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/MenuDict.php b/niucloud/app/dict/sys/MenuDict.php new file mode 100644 index 0000000..80b6c63 --- /dev/null +++ b/niucloud/app/dict/sys/MenuDict.php @@ -0,0 +1,43 @@ + get_lang('dict_menu.status_on'),//展示 + self::OFF => get_lang('dict_menu.status_off'),//隐藏 + ]; + } + + public const SYSTEM = 'system'; + public const CREATE = 'create'; + public const GENERATOR = 'generator'; + public static function getSource(){ + return [ + self::SYSTEM => get_lang('dict_menu.source_system'),//系统文件 + self::CREATE => get_lang('dict_menu.source_create'),//新建菜单 + self::GENERATOR => get_lang('dict_menu.source_generator'),//代码生成器 + ]; + } +} diff --git a/niucloud/app/dict/sys/MenuTypeDict.php b/niucloud/app/dict/sys/MenuTypeDict.php new file mode 100644 index 0000000..983298c --- /dev/null +++ b/niucloud/app/dict/sys/MenuTypeDict.php @@ -0,0 +1,30 @@ + get_lang('dict_menu.type_list'),//目录 + self::MENU => get_lang('dict_menu.type_menu'),//菜单 + self::BUTTON => get_lang('dict_menu.type_button'),//接口 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/MethodDict.php b/niucloud/app/dict/sys/MethodDict.php new file mode 100644 index 0000000..d9ac7a6 --- /dev/null +++ b/niucloud/app/dict/sys/MethodDict.php @@ -0,0 +1,32 @@ + 'GET', + self::POST => 'POST', + self::PUT => 'PUT', + self::DELETE => 'DELETE', + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/RoleStatusDict.php b/niucloud/app/dict/sys/RoleStatusDict.php new file mode 100644 index 0000000..651a78d --- /dev/null +++ b/niucloud/app/dict/sys/RoleStatusDict.php @@ -0,0 +1,33 @@ + get_lang('dict_role.status_on'),//启用 + self::OFF => get_lang('dict_role.status_off'),//关闭 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/SmsDict.php b/niucloud/app/dict/sys/SmsDict.php new file mode 100644 index 0000000..5574b02 --- /dev/null +++ b/niucloud/app/dict/sys/SmsDict.php @@ -0,0 +1,76 @@ + [ + 'name' => '阿里云短信', + //配置参数 + 'params' => [ + 'sign' => '短信签名', + 'app_key' => 'APP_KEY', + 'secret_key' => 'SECRET_KEY' + ] + ], + self::TENCENTSMS => [ + 'name' => '腾讯云短信', + //配置参数 + 'params' => [ + 'sign' => '短信签名', + 'app_id' => 'APP_ID', + 'secret_id' => 'SECRET_ID', + 'secret_key' => 'SECRET_KEY' + ] + ], + + ]; + } + + //支持的短信场景 + + public static function getStatusType() + { + return [ + self::SENDING => 'dict_sms.status_sending', + self::SUCCESS => 'dict_sms.status_success', + self::FAIL => 'dict_sms.status_fail', + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/StorageDict.php b/niucloud/app/dict/sys/StorageDict.php new file mode 100644 index 0000000..f2e99c9 --- /dev/null +++ b/niucloud/app/dict/sys/StorageDict.php @@ -0,0 +1,85 @@ + [ + 'name' => '本地存储', + //配置参数 + 'params' => [ + ] + ], + self::QINIU => [ + 'name' => '七牛云存储', + //配置参数 + + 'params' => [ + 'bucket' => '存储空间', + 'access_key' => 'ACCESS_KEY', + 'secret_key' => 'SECRET_KEY', + 'domain' => '空间域名' + ] + ], + + self::ALI => [ + 'name' => '阿里云存储', + //配置参数 + 'params' => [ + 'bucket' => '存储空间', + 'access_key' => 'ACCESS_KEY_ID', + 'secret_key' => 'ACCESS_KEY_SECRET', + 'endpoint' => 'Endpoint', + 'domain' => '空间域名' + ] + ], + + self::TENCENT => [ + 'name' => '腾讯云存储', + //配置参数 + 'params' => [ + 'bucket' => '存储空间', + 'region' => 'REGION', + 'access_key' => 'SECRET_ID', + 'secret_key' => 'SECRET_KEY', + 'domain' => '空间域名' + ] + ], + + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/dict/sys/UserDict.php b/niucloud/app/dict/sys/UserDict.php new file mode 100644 index 0000000..2c9dc38 --- /dev/null +++ b/niucloud/app/dict/sys/UserDict.php @@ -0,0 +1,32 @@ + get_lang('dict_user.status_on'),//正常 + self::OFF => get_lang('dict_user.status_off'),//无效 + ]; + } + +} \ No newline at end of file diff --git a/niucloud/app/event.php b/niucloud/app/event.php new file mode 100644 index 0000000..d0439e2 --- /dev/null +++ b/niucloud/app/event.php @@ -0,0 +1,86 @@ + 1, + 'bind' => [ + ], + 'listen' => [ + /** + * 系统事件 + */ + 'AppInit' => ['app\listener\system\AppInitListener'], + 'HttpRun' => [], + 'HttpEnd' => [], + 'LogLevel' => [], + 'LogWrite' => [], + /** + * 会员相关事件 + */ + //会员注册事件 + 'MemberRegister' => ['app\listener\member\MemberRegisterListener'], + //会员登录事件 + 'MemberLogin' => ['app\listener\member\MemberLoginListener'], + //会员账户变化事件 + 'MemberAccount' => ['app\listener\member\MemberAccountListener'], + //扫码事件 + 'Scan' => ['app\listener\scan\ScanListener'], + 'AddSiteAfter' => ['app\listener\site\AddSiteAfterListener'], + /** + * 支付相关事件 + */ + 'PayCreate' => ['app\listener\pay\PayCreateListener'], + //支付成功 + 'PaySuccess' => ['app\listener\pay\PaySuccessListener'], + //退款成功 + 'RefundSuccess' => ['app\listener\pay\RefundSuccessListener'], + //转账成功 + 'TransferSuccess' => ['app\listener\pay\TransferSuccessListener'], + // 任务失败统一回调,有四种定义方式 + 'queue_failed' => [ + ['app\listener\job\QueueFailedLoggerListener', 'report'], + ], + //系统应用管理加载 + 'AppManage' => [ + 'app\listener\system\AppManageListener' + ], + //协议类型加载 + 'AgreementType' => [], + //站点首页加载 + 'SiteIndex' => [ + 'app\listener\system\SiteIndexListener' + ], + // 站点端布局 + 'SiteLayout' => [ + 'app\listener\system\SiteLayout' + ], + //平台首页加载 + 'AdminIndex' => [ + 'app\listener\system\AdminIndexListener' + ], + 'BottomNavigation' => [ + 'app\listener\system\BottomNavigationListener' + ], + //消息模板数据内容 + 'NoticeData' => [ + 'app\listener\notice_template\VerifyCode',//手机验证码 + 'app\listener\notice_template\MemberVerifySuccess', + 'app\listener\notice_template\RechargeSuccess', + ], + //全场景消息发送 + 'Notice' => [ + 'app\listener\notice\Sms',//短信 + 'app\listener\notice\Wechat',//公众号模板消息 + 'app\listener\notice\Weapp',//小程序订阅消息 + ], + //小程序包替换 + 'AppletReplace' => [ + 'app\listener\applet\WeappListener',//微信小程序 + ] + ], + 'subscribe' => [ + ], +]; +return (new DictLoader("Event"))->load($system_event); diff --git a/niucloud/app/install/controller/BaseInstall.php b/niucloud/app/install/controller/BaseInstall.php new file mode 100644 index 0000000..dbaf0c9 --- /dev/null +++ b/niucloud/app/install/controller/BaseInstall.php @@ -0,0 +1,68 @@ +lock_file = '../install.lock';//锁定文件 + + $root_url = request()->domain(); + View::assign("root_url", $root_url); + $this->setInstallRoot(); + + } + /** + * 加载模板输出 + * @access protected + * @param string $template 模板文件名 + * @param array $vars 模板输出变量 + * @return string + */ + protected function fetch($template = '', $vars = []) + { + return View::fetch($template, $vars); + } + /** + * 模板变量赋值 + * @access protected + * @param mixed $name 要显示的模板变量 + * @param mixed $value 变量的值 + * @return void + */ + protected function assign($name, $value = '') + { + View::assign($name, $value); + } + + public function setInstallRoot() + { + $this->install_root = dirname(__DIR__) . '/'; + } + + public function str_replace_first($search, $replace, $subject) + { + return implode($replace, explode($search, $subject, 2)); + } + + public function checkLock() + { + if (file_exists($this->lock_file)) { + header("location:/index.php"); + exit; + } + } +} \ No newline at end of file diff --git a/niucloud/app/install/controller/Index.php b/niucloud/app/install/controller/Index.php new file mode 100644 index 0000000..ee7935f --- /dev/null +++ b/niucloud/app/install/controller/Index.php @@ -0,0 +1,516 @@ +checkLock(); + $step = input("step", 1); + + if ($step == 1) { + return View::fetch('index/step-1'); + } elseif ($step == 2) { + //系统变量 + $system_variables = []; + $phpv = PHP_VERSION; + $os = PHP_OS; + $server = $_SERVER[ 'SERVER_SOFTWARE' ]; + + $host = ( empty($_SERVER[ 'REMOTE_ADDR' ]) ? $_SERVER[ 'REMOTE_HOST' ] : $_SERVER[ 'REMOTE_ADDR' ] ); + $name = $_SERVER[ 'SERVER_NAME' ]; + + $verison = !(version_compare(PHP_VERSION, '8.0.0') == -1); + //pdo + $pdo = extension_loaded('pdo') && extension_loaded('pdo_mysql'); + $system_variables[] = [ "name" => "pdo", "need" => "开启", "status" => $pdo ]; + //curl + $curl = extension_loaded('curl') && function_exists('curl_init'); + $system_variables[] = [ "name" => "curl", "need" => "开启", "status" => $curl ]; + //openssl + $openssl = extension_loaded('openssl'); + $system_variables[] = [ "name" => "openssl", "need" => "开启", "status" => $openssl ]; + //gd + $gd = extension_loaded('gd'); + $system_variables[] = [ "name" => "GD库", "need" => "开启", "status" => $gd ]; + //fileinfo + $fileinfo = extension_loaded('fileinfo'); + $system_variables[] = [ "name" => "fileinfo", "need" => "开启", "status" => $fileinfo ]; + + $root_path = str_replace("\\", DIRECTORY_SEPARATOR, dirname(__FILE__, 4)); + $root_path = str_replace("../", DIRECTORY_SEPARATOR, $root_path); + $dirs_list = [ + [ "path" => $root_path . DIRECTORY_SEPARATOR, "path_name" => "niucloud/", "name" => "网站目录" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . ".env", "path_name" => "niucloud/.env", "name" => "env" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . ".example.env", "path_name" => "niucloud/.example_env", "name" => "env" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . 'runtime'.DIRECTORY_SEPARATOR, "path_name" => "niucloud/runtime", "name" => "runtime" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . 'public'.DIRECTORY_SEPARATOR.'upload'.DIRECTORY_SEPARATOR, "path_name" => "niucloud/public/upload", "name" => "upload" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . 'app'.DIRECTORY_SEPARATOR.'install'.DIRECTORY_SEPARATOR, "path_name" => "niucloud/app/install", "name" => "安装目录" ] + ]; + //目录 可读 可写检测 + $is_dir = true; + foreach ($dirs_list as $k => $v) { + @mkdir($v[ "path" ], 0755, true); + $is_readable = is_readable($v[ "path" ]); + $is_write = is_write($v[ "path" ]); + $dirs_list[ $k ][ "is_readable" ] = $is_readable; + $dirs_list[ $k ][ "is_write" ] = $is_write; + if (!$is_readable || !$is_write) { + $is_dir = false; + } + } + $this->assign("root_path", $root_path); + $this->assign("system_variables", $system_variables); + $this->assign("phpv", $phpv); + $this->assign("server", $server); + $this->assign("host", $host); + $this->assign("os", $os); + $this->assign("name", $name); + $this->assign("verison", $verison); + $this->assign("dirs_list", $dirs_list); + if ($verison && $pdo && $curl && $openssl && $gd && $fileinfo && $is_dir) { + $continue = true; + } else { + $continue = false; + } + $this->assign("continue", $continue); + return $this->fetch('index/step-2'); + } elseif ($step == 3) { + return $this->fetch('index/step-3'); + + } + } + + + public function installSuccess() + { + Cache::delete('install_data'); + Cache::delete('install_status'); + return $this->fetch('index/step-4'); + } + + /** + * 测试数据库 + */ + public function testDb() + { + $this->checkLock(); + $dbport = input("dbport", ""); + $dbhost = input("dbhost", ""); + $dbuser = input("dbuser", ""); + $dbpwd = input("dbpwd", ""); + $dbname = input("dbname", ""); + + try { + + if ($dbport != "" && $dbhost != "") { + $dbhost = $dbport != '3306' ? $dbhost . ':' . $dbport : $dbhost; + } + + if ($dbhost == '' || $dbuser == '') { + return fail([ + "status" => -1, + "message" => "数据库账号或密码不能为空" + ]); + } + + if (!function_exists("mysqli_connect")) { + return fail([ + "status" => -1, + "message" => "mysqli扩展类必须开启" + ]); + } + + $conn = @mysqli_connect($dbhost, $dbuser, $dbpwd); + if ($conn) { + if (empty($dbname)) { + $result = [ + "status" => 1, + "message" => "数据库连接成功" + ]; + + } else { + if (@mysqli_select_db($conn, $dbname)) { + $result = [ + "status" => 2, + "message" => "数据库存在,系统将覆盖数据库" + ]; + } else { + $result = [ + "status" => 1, + "message" => "数据库不存在,系统将自动创建" + ]; + } + } + @mysqli_close($conn); + } else { + $result = [ + "status" => -1, + "message" => "数据库连接失败!" + ]; + return fail($result); + } + + return success($result); + } catch ( Exception $e) { + $result = [ + "status" => -1, + "message" => $e->getMessage() + ]; + return fail($result); + } + } + + /** + * @param $sql_data sql文件 + * @return array + */ + public function getSqlQuery($sql_data) + { + $this->checkLock(); + $sql_data = preg_replace("/TYPE=(InnoDB|MyISAM|MEMORY)( DEFAULT CHARSET=[^; ]+)?/", "ENGINE=\\1 DEFAULT CHARSET=utf8", $sql_data); + + $sql_data = str_replace("\r", "\n", $sql_data); + $sql_query = []; + $num = 0; + $sql_arr = explode(";\n", trim($sql_data)); + unset($sql); + foreach ($sql_arr as $sql) { + $sql_query[ $num ] = ''; + $sqls = explode("\n", trim($sql)); + $sqls = array_filter($sqls); + foreach ($sqls as $query) { + $str1 = $query[0] ?? ''; + if ($str1 != '#' && $str1 != '-') + $sql_query[ $num ] .= $query; + } + $num++; + } + return $sql_query; + } + + public function install() + { + + + set_time_limit(300); + Cache::delete('install_data'); + Cache::set('install_status', 0);//进行中 + + $check = $this->testDb()->getData(); + if ($check[ 'code' ] != 1) { + $this->setSuccessLog([ $check[ 'data' ][ 'message' ], 'error' ]); + return fail($check[ 'data' ][ 'message' ]); + } + + $admin_name = input('admin_name', ""); + $username = input('username', ""); + $password = input('password', ""); + $password2 = input('password2', ""); + + $site_name = input('site_name', ""); + $site_username = input('site_username', ""); + $site_password = input('site_password', ""); + $site_password2 = input('site_password2', ""); + + if ($admin_name == '' || $username == '' || $password == '') { + $this->setSuccessLog([ '平台信息不能为空', 'error' ]); + return fail('平台信息不能为空!'); + } + + if ($site_username == $username) { + $this->setSuccessLog([ '站点管理员和平台管理员不能相同,请重新输入', 'error' ]); + return fail('站点管理员和平台管理员不能相同,请重新输入'); + } + + if ($password != $password2) { + $this->setSuccessLog([ '平台两次密码输入不一样,请重新输入', 'error' ]); + return fail('平台两次密码输入不一样,请重新输入'); + } + +// if ($site_name == '' || $site_username == '' || $site_password == '') { +// $this->setSuccessLog([ '平台信息不能为空', 'error' ]); +// return fail('平台信息不能为空!'); +// } + + if($site_username == $username) { + $this->setSuccessLog([ '站点账号不能跟平台账号一致', 'error' ]); + return fail('站点账号不能跟平台账号一致!'); + } + + if ($site_password != $site_password2) { + $this->setSuccessLog([ '站点两次密码输入不一样,请重新输入', 'error' ]); + return fail('站点两次密码输入不一样,请重新输入'); + } + + try { + //配置写入 + $res = $this->installConfig(input())->getData(); + if ($res[ 'code' ] != 1) { + $this->setSuccessLog([ $res[ 'msg' ], 'error' ]); + return fail($res[ 'msg' ]); + } + //数据库 + $res = $this->installSql(input())->getData(); + if ($res[ 'code' ] != 1) { + $this->setSuccessLog([ $res[ 'msg' ], 'error' ]); + return fail($res[ 'msg' ]); + } + + Cache::set('install_status', 1);//成功 + return success(); + } catch ( Exception $e) { + $this->setSuccessLog([ '安装失败' . $e->getMessage(), 'error' ]); + return fail('安装失败' . $e->getMessage()); + } + } + + public function initData() + { + $this->checkLock(); + $admin_name = input('admin_name', ""); + $username = input('username', ""); + $password = input('password', ""); + $password2 = input('password2', ""); + + $site_name = input('site_name', ""); + $site_username = input('site_username', ""); + $site_password = input('site_password', ""); + $site_password2 = input('site_password2', ""); + if ($admin_name == '' || $username == '' || $password == '') { + return fail('平台信息不能为空!'); + } + + if ($password != $password2) { + return fail('平台两次密码输入不一样,请重新输入'); + } + + if($site_username == $username) { + return fail('站点账号不能跟平台账号一致'); + } + + if ($site_password != $site_password2) { + return fail('站点两次密码输入不一样,请重新输入'); + } + + try { + //初始化数据 + $res = ( new InstallSystemService() )->install(); + if (!$res) { + $this->setSuccessLog([ '菜单初始化失败', 'error' ]); + return fail('菜单初始化失败'); + } + //初始化计划任务 + $res = ( new CoreScheduleInstallService())->installSystemSchedule(); + if (!$res) { + $this->setSuccessLog([ '计划任务初始化失败', 'error' ]); + return fail('计划任务初始化失败'); + } + + + $user = ( new SysUser() )->where([ [ 'uid', '=', 1 ] ])->findOrEmpty(); + if (!$user->isEmpty()) { + $user->save([ + 'username' => $username, + 'password' => create_password($password), + ]); + } + ( new Site() )->where([ [ 'site_id', '=', 1 ] ])->update(['site_id' => 0]); + $site = ( new Site() )->where([ [ 'site_id', '=', 0 ] ])->findOrEmpty(); + if (!$site->isEmpty()) { + $site->save([ + 'site_name' => $admin_name, + ]); + } + //修改自增主键默认值 + Db::execute("alter table ".env('database.prefix', '')."site auto_increment = 100000"); + //获取默认套餐 + + $fp = fopen($this->lock_file, 'wb'); + if (!$fp) { + $this->setSuccessLog([ "写入失败,请检查目录" . dirname(__FILE__, 2) . "是否可写入!'", 'error' ]); + return fail("写入失败,请检查目录" . dirname(__FILE__, 2) . "是否可写入!'"); + } + $this->setSuccessLog([ '初始化成功', 'success' ]); + fwrite($fp, '已安装'); + fclose($fp); + Cache::set('install_status', 2);//成功 +// Cache::tag(MenuService::$cache_tag_name)->clear(); + return success(); + } catch ( Exception $e) { + $this->setSuccessLog([ '安装失败' . $e->getMessage(), 'error' ]); + return fail('安装失败' . $e->getMessage()); + } + } + + /** + * 安装sql + * @param array $data + * @return Response + */ + public function installSql(array $data) + { + $this->checkLock(); + $dbport = $data[ 'dbport' ] ?? ''; + $dbhost = $data[ 'dbhost' ] ?? ''; + $dbuser = $data[ 'dbuser' ] ?? ''; + $dbpwd = $data[ 'dbpwd' ] ?? ''; + $dbname = $data[ 'dbname' ] ?? ''; + $dbprefix = $data[ 'dbprefix' ] ?? ''; + if ($dbhost == '' || $dbuser == '') { + return fail('数据库链接配置信息丢失!'); + } + + $file_name = $this->install_root . "/source/database.sql";//数据文件 + //数据库连接测试 + $conn = @mysqli_connect($dbhost, $dbuser, $dbpwd, "", $dbport); + if (!$conn) { + return fail('连接数据库失败!请检查连接参数!'); + } + + //数据库可写和是否存在测试 + $empty_db = mysqli_select_db($conn, $dbname); + if ($empty_db) { + $sql = "DROP DATABASE `$dbname`"; + $retval = mysqli_query($conn, $sql); + if (!$retval) { + return fail('删除数据库失败: ' . mysqli_error($conn)); + } + } + + //如果数据库不存在,我们就进行创建。 + $dbsql = "CREATE DATABASE `$dbname`"; + $db_create = mysqli_query($conn, $dbsql); + if (!$db_create) { + return fail('创建数据库失败,请确认是否有足够的权限!'); + } + + //链接数据库 + @mysqli_select_db($conn, $dbname); + + //导入SQL并执行。 + $get_sql_data = file_get_contents($file_name); + $sql_query = $this->getSqlQuery($get_sql_data); + @mysqli_query($conn, "SET NAMES utf8mb4"); + $query_count = count($sql_query); + + for ($i = 0; $i < $query_count; $i++) { + $sql = trim($sql_query[ $i ]); + $is_write = false; + if (str_contains($sql, 'CREATE TABLE')) { + $match_item = preg_match('/CREATE TABLE [`]?(\\w+)[`]?/is', $sql, $match_data); + $is_write = true; + } elseif (str_contains($sql, 'ALTER TABLE')) { + $match_item = preg_match('/ALTER TABLE [`]?(\\w+)[`]?/is', $sql, $match_data); + + } elseif (str_contains($sql, 'INSERT INTO')) { + $match_item = preg_match('/INSERT INTO [`]?(\\w+)[`]?/is', $sql, $match_data); + } else { + $match_item = 0; + } + if ($match_item > 0) { + try { + $table_name = $match_data[ 1 ]; + $new_table_name = $dbprefix . $table_name; + $sql_item = $this->str_replace_first($table_name, $new_table_name, $sql); + @mysqli_query($conn, $sql_item); + if ($is_write) $this->setSuccessLog([ '创建表' . $table_name, 'success' ]); + } catch ( Exception $e) { + $this->setSuccessLog([ $e->getMessage(), 'error' ]); + return fail('数据库解析失败' . $e->getMessage()); + } + } + } + @mysqli_close($conn); + + return success(); + } + + /** + * 配置设置 + * @param array $data + * @return Response + */ + public function installConfig(array $data) + { + $this->checkLock(); + $root_path = str_replace("\\", DIRECTORY_SEPARATOR, dirname(__FILE__, 4)); + $root_path = str_replace("../", DIRECTORY_SEPARATOR, $root_path); + $env_dir = $root_path . DIRECTORY_SEPARATOR . ".env"; + $example_env = $root_path . DIRECTORY_SEPARATOR . ".example.env"; + $dbport = $data[ 'dbport' ] ?? ''; + $dbhost = $data[ 'dbhost' ] ?? ''; + $dbuser = $data[ 'dbuser' ] ?? ''; + $dbpwd = $data[ 'dbpwd' ] ?? ''; + $dbname = $data[ 'dbname' ] ?? ''; + $dbprefix = $data[ 'dbprefix' ] ?? ''; + + $replace_key = [ + '{dbhost}', + '{dbport}', + '{dbuser}', + '{dbpwd}', + '{dbprefix}', + '{dbname}', + '{auth_key}' + ]; + + $replace_val = [ + $dbhost, + $dbport, + $dbuser, + $dbpwd, + $dbprefix, + $dbname, + unique_random(32) + ]; + $content = str_replace($replace_key, $replace_val, file_get_contents($example_env)); + file_put_contents($env_dir, $content); + + $this->setSuccessLog([ '写入配置', 'success' ]); + + return success(); + } + + public function getInstallInfo() + { + $install_data = Cache::get('install_data') ?? []; + $install_status = Cache::get('install_status') ?? 0; + return success('', [ + 'log' => $install_data, + 'status' => $install_status + ]); + } + + public function setSuccessLog($data) + { + if ($data[ 1 ] == 'error') { + Cache::set('install_status', -1); + } + $time = @(int)microtime(true); + $data[] = date('Y-m-d H:i:s', $time); + $install_data = Cache::get('install_data') ?? []; + $install_data[] = $data; + Cache::set('install_data', $install_data); + } + +} diff --git a/niucloud/app/install/source/database.php b/niucloud/app/install/source/database.php new file mode 100644 index 0000000..e0e8178 --- /dev/null +++ b/niucloud/app/install/source/database.php @@ -0,0 +1,62 @@ + 'mysql', + + // 自定义时间查询规则 + 'time_query_rule' => [], + + // 自动写入时间戳字段 + // true为自动识别类型 false关闭 + // 字符串则明确指定时间字段类型 支持 int timestamp datetime date + 'auto_timestamp' => true, + + // 时间字段取出后的默认时间格式 + 'datetime_format' => 'Y-m-d H:i:s', + + // 数据库连接配置信息 + 'connections' => [ + 'mysql' => [ + // 数据库类型 + 'type' => 'mysql', + // 服务器地址 + 'hostname' => 'model_hostname', + // 数据库名 + 'database' => 'model_database', + // 用户名 + 'username' => 'model_username', + // 密码 + 'password' => 'model_password', + // 端口 + 'hostport' => 'model_port', + // 数据库连接参数 + 'params' => [], + // 数据库编码默认采用utf8 + 'charset' => 'utf8', + // 数据库表前缀 + 'prefix' => 'model_prefix', + + // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) + 'deploy' => 0, + // 数据库读写是否分离 主从式有效 + 'rw_separate' => false, + // 读写分离后 主服务器数量 + 'master_num' => 1, + // 指定从服务器序号 + 'slave_no' => '', + // 是否严格检查字段是否存在 + 'fields_strict' => false, + // 是否需要断线重连 + 'break_reconnect' => false, + // 监听SQL + 'trigger_sql' => false, + // 开启字段缓存 + 'fields_cache' => true, + // 字段缓存路径 + 'schema_cache_path' => app()->getRuntimePath() . 'schema' . DIRECTORY_SEPARATOR, + ], + // 更多的数据库配置信息 + ], +]; + diff --git a/niucloud/app/install/source/database.sql b/niucloud/app/install/source/database.sql new file mode 100644 index 0000000..ac3be93 --- /dev/null +++ b/niucloud/app/install/source/database.sql @@ -0,0 +1,4545 @@ + +SET NAMES utf8mb4; + +DROP TABLE IF EXISTS `addon`; +CREATE TABLE `addon` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `title` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件名称', + `icon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件图标', + `key` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件标识', + `desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '插件描述', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '状态', + `author` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '作者', + `version` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '版本号', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `install_time` int(11) NOT NULL DEFAULT 0 COMMENT '安装时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `cover` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '封面', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'app' COMMENT '插件类型app,addon', + `support_app` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件支持的应用空表示通用插件', + `is_star` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否加星', + `compile` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '编译端口', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '插件表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `addon_log`; +CREATE TABLE `addon_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `action` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '操作类型 install 安装 uninstall 卸载 update 更新', + `key` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件标识', + `from_version` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '升级前的版本号', + `to_version` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '升级后的版本号', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '插件日志表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `applet_site_version`; +CREATE TABLE `applet_site_version` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `version_id` int(11) NOT NULL DEFAULT 0 COMMENT '版本id', + `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '小程序类型', + `action` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '操作方式 download 下载 upgrade 更新', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '站点小程序版本表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `applet_version`; +CREATE TABLE `applet_version` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `config` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '配置信息', + `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '小程序类型', + `desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '插件描述', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '状态 下架 上架', + `uid` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '发布者', + `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '小程序包地址', + `version` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '版本号', + `version_num` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '版本号数字(用于排序)', + `release_version` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '发布线上版本号', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `site_id` int(11) NOT NULL DEFAULT 0, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '小程序版本表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `diy_page`; +CREATE TABLE `diy_page` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面名称', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面标识', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面模板', + `template` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '模板名称', + `mode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'diy' COMMENT '页面展示模式,diy:自定义,fixed:固定', + `value` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '页面数据,json格式', + `is_default` int(11) NOT NULL DEFAULT 0 COMMENT '是否默认页面,1:是,0:否', + `is_change` int(11) NOT NULL DEFAULT 0 COMMENT '数据是否发生过变化,1:变化了,2:没有', + `share` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '分享内容', + `visit_count` int(11) NOT NULL DEFAULT 0 COMMENT '访问量', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '自定义页面' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `diy_route`; +CREATE TABLE `diy_route` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面名称', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面标识', + `page` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '页面路径', + `share` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '分享内容', + `is_share` int(11) NOT NULL DEFAULT 0 COMMENT '是否支持分享', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '自定义路由' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `generate_column`; +CREATE TABLE `generate_column` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `table_id` int(11) NOT NULL DEFAULT 0 COMMENT '表id', + `column_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字段名称', + `column_comment` varchar(300) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字段描述', + `column_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字段类型', + `is_required` tinyint(4) NULL DEFAULT 0 COMMENT '是否必填 0-非必填 1-必填', + `is_pk` tinyint(4) NULL DEFAULT 0 COMMENT '是否为主键 0-不是 1-是', + `is_insert` tinyint(4) NULL DEFAULT 0 COMMENT '是否为插入字段 0-不是 1-是', + `is_update` tinyint(4) NULL DEFAULT 0 COMMENT '是否为更新字段 0-不是 1-是', + `is_lists` tinyint(4) NULL DEFAULT 1 COMMENT '是否为列表字段 0-不是 1-是', + `is_query` tinyint(4) NULL DEFAULT 1 COMMENT '是否为查询字段 0-不是 1-是', + `is_search` tinyint(4) NULL DEFAULT 1 COMMENT '是否搜索字段', + `query_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '=' COMMENT '查询类型', + `view_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'input' COMMENT '显示类型', + `dict_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '字典类型', + `addon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉关联应用', + `model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉关联model', + `label_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉标题字段', + `value_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉value字段', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + `is_delete` tinyint(4) NULL DEFAULT 0 COMMENT '是否为软删除字段 0-不是 1-是', + `is_order` tinyint(4) NULL DEFAULT 0 COMMENT '是否为排序字段 0-不是 1-是', + `validate_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '验证类型', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '代码生成表字段信息表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `generate_table`; +CREATE TABLE `generate_table` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `table_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '表名', + `table_content` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '描述前缀', + `module_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '模块名', + `class_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '类名前缀', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `edit_type` int(11) NOT NULL DEFAULT 1 COMMENT '编辑方式 1-弹框 2-新页面', + `addon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '插件名', + `order_type` int(11) NOT NULL DEFAULT 0 COMMENT '排序方式 0-无排序 1-正序 2-倒序', + `parent_menu` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '上级菜单', + `relations` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '关联配置', + `synchronous_number` int(11) NOT NULL DEFAULT 0 COMMENT '同步次数', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '代码生成表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `jobs`; +CREATE TABLE `jobs` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `queue` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `payload` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `attempts` tinyint(3) UNSIGNED NOT NULL DEFAULT 0, + `reserve_time` int(10) UNSIGNED NULL DEFAULT 0, + `available_time` int(10) UNSIGNED NULL DEFAULT 0, + `create_time` int(10) UNSIGNED NULL DEFAULT 0, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '消息队列任务表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `jobs_failed`; +CREATE TABLE `jobs_failed` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `connection` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `queue` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `payload` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `exception` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `fail_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '消息队列任务失败记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member`; +CREATE TABLE `member` ( + `member_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `member_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员编码', + `pid` int(11) NOT NULL DEFAULT 0 COMMENT '推广会员id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员用户名', + `mobile` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '手机号', + `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员密码', + `nickname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员昵称', + `headimg` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员头像', + `member_level` int(11) NOT NULL DEFAULT 0 COMMENT '会员等级', + `member_label` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员标签', + `wx_openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信用户openid', + `weapp_openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信小程序openid', + `wx_unionid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信unionid', + `ali_openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付宝账户id', + `douyin_openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '抖音小程序openid', + `register_channel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'H5' COMMENT '注册来源', + `register_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '注册方式', + `login_ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '当前登录ip', + `login_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'h5' COMMENT '当前登录的操作终端类型', + `login_channel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `login_count` int(11) NOT NULL DEFAULT 0 COMMENT '登录次数', + `login_time` int(11) NOT NULL DEFAULT 0 COMMENT '当前登录时间', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '注册时间', + `last_visit_time` int(11) NOT NULL DEFAULT 0 COMMENT '最后访问时间', + `last_consum_time` int(11) NOT NULL DEFAULT 0 COMMENT '最后消费时间', + `sex` tinyint(4) NOT NULL DEFAULT 0 COMMENT '性别 0保密 1男 2女', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '用户状态 用户状态默认为1', + `birthday` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '出生日期', + `point` int(11) NOT NULL DEFAULT 0 COMMENT '可用积分', + `point_get` int(11) NOT NULL DEFAULT 0 COMMENT '累计获取积分', + `balance` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '可用余额', + `balance_get` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '累计获取余额', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '可用余额(可提现)', + `money_get` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '累计获取余额(可提现)', + `money_cash_outing` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现中余额(可提现)', + `growth` int(11) NOT NULL DEFAULT 0 COMMENT '成长值', + `growth_get` int(11) NOT NULL DEFAULT 0 COMMENT '累计获得成长值', + `commission` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '当前佣金', + `commission_get` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '佣金获取', + `commission_cash_outing` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现中佣金', + `is_member` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否是会员', + `member_time` int(11) NOT NULL DEFAULT 0 COMMENT '成为会员时间', + `is_del` tinyint(4) NOT NULL DEFAULT 0 COMMENT '0正常 1已删除', + `province_id` int(11) NOT NULL DEFAULT 0 COMMENT '省id', + `city_id` int(11) NOT NULL DEFAULT 0 COMMENT '市id', + `district_id` int(11) NOT NULL DEFAULT 0 COMMENT '区县id', + `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '详细地址', + `location` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '定位地址', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + PRIMARY KEY (`member_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member_account_log`; +CREATE TABLE `member_account_log` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '用户id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `account_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'point' COMMENT '账户类型', + `account_data` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '账户数据', + `account_sum` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '变动后的账户余额', + `from_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '来源类型', + `related_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '关联Id', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注信息', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员账单表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member_address`; +CREATE TABLE `member_address` ( + id int UNSIGNED NOT NULL AUTO_INCREMENT, + member_id int NOT NULL DEFAULT 0 COMMENT '会员id', + site_id int NOT NULL DEFAULT 0 COMMENT '站点id', + name varchar(255) NOT NULL DEFAULT '' COMMENT '用户姓名', + mobile varchar(255) NOT NULL DEFAULT '' COMMENT '手机', + province_id int NOT NULL DEFAULT 0 COMMENT '省id', + city_id int NOT NULL DEFAULT 0 COMMENT '市id', + district_id int NOT NULL DEFAULT 0 COMMENT '区县id', + address varchar(255) NOT NULL DEFAULT '' COMMENT '地址信息', + address_name varchar(255) NOT NULL DEFAULT '', + full_address varchar(255) NOT NULL DEFAULT '' COMMENT '详细地址信息', + lng varchar(255) NOT NULL DEFAULT '' COMMENT '经度', + lat varchar(255) NOT NULL DEFAULT '' COMMENT '纬度', + is_default tinyint NOT NULL DEFAULT 0 COMMENT '是否是默认地址', + type varchar(30) NOT NULL DEFAULT '' COMMENT '地址类型 address 普通地址 location_address 定位地址', + PRIMARY KEY (id) +) +ENGINE = INNODB, +CHARACTER SET utf8mb4, +COLLATE utf8mb4_general_ci, +COMMENT = '会员收货地址'; + +ALTER TABLE `member_address` + ADD INDEX IDX_member_address (member_id); + +DROP TABLE IF EXISTS `member_cash_out`; +CREATE TABLE `member_cash_out` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `cash_out_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '提现交易号', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + `account_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'money' COMMENT '提现账户类型', + `transfer_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '转账提现类型', + `transfer_realname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '联系人名称', + `transfer_mobile` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '手机号', + `transfer_bank` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '银行名称', + `transfer_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '收款账号', + `transfer_fail_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '失败原因', + `transfer_status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账状态', + `transfer_time` int(11) NOT NULL DEFAULT 0 COMMENT '转账时间', + `apply_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现申请金额', + `rate` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现手续费比率', + `service_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现手续费', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '提现到账金额', + `audit_time` int(11) NOT NULL DEFAULT 0 COMMENT '审核时间', + `status` int(11) NOT NULL DEFAULT 0 COMMENT '状态1待审核2.待转账3已转账 -1拒绝 -2 已取消', + `remark` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '申请时间', + `refuse_reason` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '拒绝理由', + `update_time` int(11) NOT NULL DEFAULT 0, + `transfer_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账单号', + `cancel_time` int(11) NOT NULL DEFAULT 0 COMMENT '取消时间', + `final_transfer_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账方式', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员提现表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member_cash_out_account`; +CREATE TABLE `member_cash_out_account` ( + `account_id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + `account_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '账户类型', + `bank_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '银行名称', + `realname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '真实名称', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + `account_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '提现账户', + PRIMARY KEY (`account_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员提现账户' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member_label`; +CREATE TABLE `member_label` ( + `label_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '标签id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `label_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '标签名称', + `memo` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`label_id`) USING BTREE, + INDEX `label_id`(`label_id` ASC) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员标签' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `member_level`; +CREATE TABLE `member_level` ( + `level_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '会员等级', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `level_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '等级名称', + `growth` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '所需成长值', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注', + `status` int(11) NOT NULL DEFAULT 1 COMMENT '状态 0已禁用1已启用', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`level_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '会员等级' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `pay`; +CREATE TABLE `pay` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `main_id` int(11) NOT NULL DEFAULT 0 COMMENT '支付会员id', + `out_trade_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付流水号', + `trade_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '业务类型', + `trade_id` int(11) NOT NULL DEFAULT 0 COMMENT '业务id', + `trade_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '交易单号', + `body` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付主体', + `money` decimal(10, 2) NOT NULL COMMENT '支付金额', + `voucher` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付票据', + `status` int(11) NOT NULL DEFAULT 0 COMMENT '支付状态(0.待支付 1. 支付中 2. 已支付 -1已取消)', + `json` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付扩展用支付信息', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `pay_time` int(11) NOT NULL DEFAULT 0 COMMENT '支付时间', + `cancel_time` int(11) NOT NULL DEFAULT 0 COMMENT '关闭时间', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付方式', + `mch_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '商户收款账号', + `main_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `channel` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付渠道', + `fail_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '失败原因', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `pay_channel`; +CREATE TABLE `pay_channel` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 1 COMMENT '站点id', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付类型', + `channel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付渠道', + `config` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '支付配置', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + `status` int(11) NOT NULL DEFAULT 0 COMMENT '是否启用', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付渠道配置表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `pay_refund`; +CREATE TABLE `pay_refund` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `refund_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '退款单号', + `out_trade_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付流水号', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付方式', + `channel` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付渠道', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '支付金额', + `reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '退款原因', + `status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '支付状态(0.待退款 1. 退款中 2. 已退款 -1已关闭)', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `refund_time` int(11) NOT NULL DEFAULT 0 COMMENT '支付时间', + `close_time` int(11) NOT NULL DEFAULT 0 COMMENT '关闭时间', + `fail_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '失败原因', + `voucher` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付凭证', + `trade_type` varchar(255) NOT NULL DEFAULT '' COMMENT '业务类型', + `trade_id` varchar(50) NOT NULL DEFAULT '' COMMENT '业务关联id', + `refund_type` varchar(255) NOT NULL DEFAULT '' COMMENT '退款方式', + `main_type` varchar(255) NOT NULL DEFAULT '' COMMENT '操作人类型', + `main_id` int NOT NULL DEFAULT 0 COMMENT '操作人', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `pay_transfer`; +CREATE TABLE `pay_transfer` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `trade_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '业务类型', + `transfer_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账单号', + `main_id` int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + `main_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '主体类型', + `transfer_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账类型', + `transfer_realname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '联系人名称', + `transfer_mobile` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '手机号', + `transfer_bank` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '银行名称', + `transfer_account` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '收款账号', + `transfer_voucher` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '凭证', + `transfer_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '凭证说明', + `transfer_fail_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '失败原因', + `transfer_status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账状态', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '转账金额', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '申请时间', + `transfer_time` int(11) NOT NULL DEFAULT 0 COMMENT '转账时间', + `update_time` int(11) NOT NULL DEFAULT 0, + `openid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `batch_id` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '转账批次id', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '转账表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `recharge_order`; +CREATE TABLE `recharge_order` ( + `order_id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `order_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单编号', + `order_from` varchar(55) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单来源', + `order_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单类型', + `out_trade_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '支付流水号', + `order_status` int(11) NOT NULL DEFAULT 0 COMMENT '订单状态', + `refund_status` int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + `ip` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员ip', + `member_message` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '会员留言信息', + `order_item_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单项目金额', + `order_discount_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单优惠金额', + `order_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '订单金额', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `pay_time` int(11) NOT NULL DEFAULT 0 COMMENT '订单支付时间', + `close_time` int(11) NOT NULL DEFAULT 0 COMMENT '订单关闭时间', + `is_delete` int(11) NOT NULL DEFAULT 0 COMMENT '是否删除(针对后台)', + `is_enable_refund` int(11) NOT NULL DEFAULT 0 COMMENT '是否允许退款', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '商家留言', + `invoice_id` int(11) NOT NULL DEFAULT 0 COMMENT '发票id,0表示不开发票', + `close_reason` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '关闭原因', + PRIMARY KEY (`order_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `recharge_order_item`; +CREATE TABLE `recharge_order_item` ( + `order_item_id` int(11) NOT NULL AUTO_INCREMENT, + `order_id` int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '购买会员id', + `item_id` int(11) NOT NULL DEFAULT 0 COMMENT '项目id', + `item_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '项目类型', + `item_name` varchar(400) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '项目名称', + `item_image` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '项目图片', + `price` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目单价', + `num` decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '购买数量', + `item_money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '项目总价', + `is_refund` int(11) NOT NULL DEFAULT 0 COMMENT '是否退款', + `refund_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '退款编号', + `refund_status` int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + PRIMARY KEY (`order_item_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单商品表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `recharge_order_item_refund`; +CREATE TABLE `recharge_order_item_refund` ( + `refund_id` int(11) NOT NULL AUTO_INCREMENT, + `order_item_id` int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + `order_id` int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + `order_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单编号', + `refund_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '退款单号', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '会员id', + `num` decimal(10, 3) NOT NULL DEFAULT 0.000 COMMENT '退货数量', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '总退款', + `status` int(11) NOT NULL DEFAULT 0 COMMENT '退款状态', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `audit_time` int(11) NOT NULL DEFAULT 0 COMMENT '审核时间', + `transfer_time` int(11) NOT NULL DEFAULT 0 COMMENT '转账时间', + `item_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '项目类型', + PRIMARY KEY (`refund_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单退款表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `recharge_order_log`; +CREATE TABLE `recharge_order_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `order_id` int(11) NOT NULL DEFAULT 0 COMMENT '订单id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `action` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '操作内容', + `uid` int(11) NOT NULL DEFAULT 0 COMMENT '操作人id', + `nick_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '操作人名称', + `order_status` int(11) NOT NULL DEFAULT 0 COMMENT '订单状态,操作后', + `action_way` bigint(20) NOT NULL DEFAULT 2 COMMENT '操作类型1买家2卖家 3 系统任务', + `order_status_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '订单状态名称,操作后', + `action_time` int(11) NOT NULL DEFAULT 0 COMMENT '操作时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单操作记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `site`; +CREATE TABLE `site` ( + `site_id` int(11) NOT NULL AUTO_INCREMENT, + `site_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '站点名称', + `group_id` int(11) NOT NULL DEFAULT 0 COMMENT '分组ID(0:不限制)', + `keywords` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '关键字', + `app_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'admin' COMMENT '站点类型', + `logo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '站点logo', + `desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '简介', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '状态 1-正常 0-体验期 2-已到期', + `latitude` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '纬度', + `longitude` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '经度', + `province_id` int(11) NOT NULL DEFAULT 0 COMMENT '省', + `city_id` int(11) NOT NULL DEFAULT 0 COMMENT '市', + `district_id` int(11) NOT NULL DEFAULT 0 COMMENT '区', + `address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '详细地址', + `full_address` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '完整地址', + `phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '客服电话', + `business_hours` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '营业时间', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `expire_time` bigint(20) NOT NULL DEFAULT 0 COMMENT '到期时间(如果是0 无限期)', + `front_end_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '前台名称', + `front_end_logo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '前台logo', + `icon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '网站图标', + `member_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '最大会员码值', + `app` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '站点主应用', + `addons` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '站点包含的插件', + PRIMARY KEY (`site_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 10000 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '站点表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `site_account_log`; +CREATE TABLE `site_account_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'pay' COMMENT '账单类型pay,refund,transfer', + `money` decimal(10, 2) NOT NULL DEFAULT 0.00 COMMENT '交易金额', + `trade_no` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '对应类型交易单号', + `create_time` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '添加时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '站点账单记录' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `site_group`; +CREATE TABLE `site_group` ( + `group_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '分组ID', + `group_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '分组名称', + `group_desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '分组介绍', + `app` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '应用', + `addon` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '插件', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`group_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '店铺分组(分组权限)' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_agreement`; +CREATE TABLE `sys_agreement` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `agreement_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '协议关键字', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '协议标题', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '协议内容', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '协议表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_area`; +CREATE TABLE `sys_area` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, + `pid` int(11) NOT NULL DEFAULT 0 COMMENT '父级', + `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '名称', + `shortname` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '简称', + `longitude` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '经度', + `latitude` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '纬度', + `level` smallint(6) NOT NULL DEFAULT 0 COMMENT '级别', + `sort` mediumint(9) NOT NULL DEFAULT 0 COMMENT '排序', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '状态1有效', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '地址表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_attachment`; +CREATE TABLE `sys_attachment` ( + `att_id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '附件名称', + `real_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '原始文件名', + `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '完整地址', + `dir` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '附件路径', + `att_size` char(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '附件大小', + `att_type` char(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '附件类型image,video', + `storage_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '图片上传类型 local本地 aliyun 阿里云oss qiniu 七牛 ....', + `cate_id` int(11) NOT NULL DEFAULT 0 COMMENT '相关分类', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '上传时间', + `update_time` int(11) NOT NULL DEFAULT 0, + `url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '网络地址', + PRIMARY KEY (`att_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '附件管理表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_attachment_category`; +CREATE TABLE `sys_attachment_category` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `pid` int(11) NOT NULL DEFAULT 0 COMMENT '父级ID', + `type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '文件管理类型(image,video)', + `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '分类名称', + `enname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '分类目录', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `id`(`id` ASC) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '附件分类表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_config`; +CREATE TABLE `sys_config` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `config_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '配置项关键字', + `value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '配置值json', + `status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否启用 1启用 0不启用', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + `addon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '所属插件', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统配置表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_cron_task`; +CREATE TABLE `sys_cron_task` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0, + `status` int(11) NOT NULL DEFAULT 1 COMMENT '任务状态', + `count` int(11) NOT NULL DEFAULT 0 COMMENT '执行次数', + `title` char(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务名称', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务模式 cron 定时任务 crond 周期任务', + `crond_type` char(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务周期', + `crond_length` int(11) NOT NULL DEFAULT 0 COMMENT '任务周期', + `task` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务命令', + `data` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '附加参数', + `status_desc` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '上次执行结果', + `last_time` int(11) NOT NULL DEFAULT 0 COMMENT '最后执行时间', + `next_time` int(11) NOT NULL DEFAULT 0 COMMENT '下次执行时间', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = ' 系统任务' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_dict`; +CREATE TABLE `sys_dict` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'id', + `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字典名称', + `key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字典关键词', + `dictionary` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '字典数据', + `memo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '数据字典表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_menu`; +CREATE TABLE `sys_menu` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '菜单ID', + `app_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'admin' COMMENT '应用类型', + `menu_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单名称', + `menu_short_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单短标题', + `menu_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单标识(菜单输入,接口自动生成)', + `parent_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '父级key', + `menu_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '菜单类型 0目录 1菜单 2按钮', + `icon` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '图标 菜单有效', + `api_url` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT 'api接口地址', + `router_path` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单路由地址 前端使用', + `view_path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单文件地址', + `methods` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '提交方式POST GET PUT DELETE', + `sort` int NOT NULL DEFAULT 1 COMMENT '排序', + `status` tinyint(3) UNSIGNED NOT NULL DEFAULT 1 COMMENT '正常,禁用(禁用后不允许访问)', + `is_show` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否显示', + `create_time` int(11) NOT NULL DEFAULT 0, + `delete_time` int(11) NOT NULL DEFAULT 0, + `addon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '所属插件', + `source` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'system' COMMENT '菜单来源 system 系统文件 create 新建菜单 generator 代码生成器', + `menu_attr` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '菜单属性 common 公共 system 系统', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '菜单表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_notice`; +CREATE TABLE `sys_notice` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点ID', + `key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '标识', + `sms_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '短信配置参数', + `is_wechat` tinyint(4) NOT NULL DEFAULT 0 COMMENT '公众号模板消息(0:关闭,1:开启)', + `is_weapp` tinyint(4) NOT NULL DEFAULT 0 COMMENT '小程序订阅消息(0:关闭,1:开启)', + `is_sms` tinyint(4) NOT NULL DEFAULT 0 COMMENT '发送短信(0:关闭,1:开启)', + `wechat_template_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信模版消息id', + `weapp_template_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信小程序订阅消息id', + `sms_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '短信id(对应短信配置)', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `wechat_first` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信头部', + `wechat_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '微信说明', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '通知模型' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_notice_log`; +CREATE TABLE `sys_notice_log` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '通知记录ID', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '消息key', + `notice_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'sms' COMMENT '消息类型(sms,wechat.weapp)', + `uid` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '通知的用户id', + `member_id` int(11) NOT NULL DEFAULT 0 COMMENT '消息的会员id', + `nickname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '接收人用户昵称或姓名', + `receiver` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '接收人(对应手机号,openid)', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '消息数据', + `is_click` tinyint(3) UNSIGNED NOT NULL DEFAULT 0 COMMENT '点击次数', + `is_visit` tinyint(3) UNSIGNED NOT NULL DEFAULT 0 COMMENT '访问次数', + `visit_time` int(11) NOT NULL DEFAULT 0 COMMENT '访问时间', + `create_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '消息时间', + `result` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '结果', + `params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '通知记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_notice_sms_log`; +CREATE TABLE `sys_notice_sms_log` ( + `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', + `site_id` int(11) NOT NULL DEFAULT 0, + `mobile` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '手机号码', + `sms_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '发送关键字(注册、找回密码)', + `key` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '发送关键字(注册、找回密码)', + `template_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `content` text NOT NULL COMMENT '发送内容', + `params` text NOT NULL COMMENT '数据参数', + `status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'sending' COMMENT '发送状态:sending-发送中;success-发送成功;fail-发送失败', + `result` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '短信结果', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `send_time` int(11) NOT NULL DEFAULT 0 COMMENT '发送时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '短信发送表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_role`; +CREATE TABLE `sys_role` ( + `role_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '角色id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `role_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '角色名称', + `rules` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '角色权限(menus_id)', + `status` tinyint(3) UNSIGNED NOT NULL DEFAULT 1 COMMENT '状态', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '最后修改时间', + PRIMARY KEY (`role_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '角色表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_schedule`; +CREATE TABLE `sys_schedule` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0, + `addon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '所属插件', + `key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '计划任务模板key', + `status` int(11) NOT NULL DEFAULT 1 COMMENT '任务状态 是否启用', + `time` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '任务周期 json结构', + `count` int(11) NOT NULL DEFAULT 0 COMMENT '执行次数', + `last_time` int(11) NOT NULL DEFAULT 0 COMMENT '最后执行时间', + `next_time` int(11) NOT NULL DEFAULT 0 COMMENT '下次执行时间', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `sort` int(11) NOT NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统任务' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_user`; +CREATE TABLE `sys_user` ( + `uid` smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '系统用户ID', + `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '用户账号', + `head_img` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '用户密码', + `real_name` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '实际姓名', + `last_ip` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '最后一次登录ip', + `last_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '最后一次登录时间', + `create_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '添加时间', + `login_count` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '登录次数', + `status` tinyint(3) UNSIGNED NOT NULL DEFAULT 1 COMMENT '后台管理员状态 1有效0无效', + `is_del` tinyint(3) UNSIGNED NOT NULL DEFAULT 0, + `delete_time` tinyint(4) NOT NULL DEFAULT 0 COMMENT '删除时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + PRIMARY KEY (`uid`) USING BTREE, + INDEX `uid`(`uid` ASC) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '后台管理员表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_user_log`; +CREATE TABLE `sys_user_log` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '管理员操作记录ID', + `ip` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '登录IP', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `uid` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '管理员id', + `username` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '管理员姓名', + `url` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '链接', + `params` longtext DEFAULT NULL COMMENT '参数', + `type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '请求方式', + `create_time` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '操作时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '管理员操作记录表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `sys_user_role`; +CREATE TABLE `sys_user_role` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `uid` int(11) NOT NULL DEFAULT 0 COMMENT '用户id', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `role_ids` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '角色id', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间', + `is_admin` int(11) NOT NULL DEFAULT 0 COMMENT '是否是超级管理员', + `status` int(11) NOT NULL DEFAULT 1 COMMENT '状态', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户权限表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `weapp_version`; +CREATE TABLE `weapp_version` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0, + `version` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `version_no` int(11) NOT NULL DEFAULT 1, + `desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '说明', + `create_time` int(11) NOT NULL DEFAULT 0, + `status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '状态', + `update_time` int(11) NOT NULL DEFAULT 0, + `fail_reason` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '', + `task_key` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '上传任务key', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `wechat_fans`; +CREATE TABLE `wechat_fans` ( + `fans_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '粉丝ID', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `nickname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '昵称', + `avatar` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '头像', + `sex` smallint(6) NOT NULL DEFAULT 1 COMMENT '性别', + `language` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '用户语言', + `country` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '国家', + `province` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '省', + `city` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '城市', + `district` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '行政区/县', + `openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '用户的标识,对当前公众号唯一 用户的唯一身份ID', + `unionid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '粉丝unionid', + `groupid` int(11) NOT NULL DEFAULT 0 COMMENT '粉丝所在组id', + `is_subscribe` tinyint(4) NOT NULL DEFAULT 1 COMMENT '是否订阅', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '备注', + `subscribe_time` int(11) NOT NULL DEFAULT 0 COMMENT '关注时间', + `subscribe_scene` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '返回用户关注的渠道来源', + `unsubscribe_time` int(11) NOT NULL DEFAULT 0 COMMENT '取消关注时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '粉丝信息最后更新时间', + `app_id` int(11) NOT NULL DEFAULT 0 COMMENT '应用appid', + PRIMARY KEY (`fans_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '微信粉丝列表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `wechat_media`; +CREATE TABLE `wechat_media` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '类型', + `value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '值', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '修改时间', + `media_id` varchar(70) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '微信端返回的素材id', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '微信素材表' ROW_FORMAT = Dynamic; + +DROP TABLE IF EXISTS `wechat_reply`; +CREATE TABLE `wechat_reply` ( + `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, + `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '规则名称', + `site_id` int(11) NOT NULL DEFAULT 0 COMMENT '站点id', + `keyword` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '关键词', + `reply_type` tinyint(4) NOT NULL COMMENT '回复类型 subscribe-关注回复 keyword-关键字回复 default-默认回复', + `matching_type` tinyint(3) UNSIGNED NOT NULL DEFAULT 1 COMMENT '匹配方式:1-全匹配;2-模糊匹配', + `content_type` tinyint(3) UNSIGNED NOT NULL DEFAULT 1 COMMENT '内容类型:1-文本', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '回复内容', + `status` tinyint(3) UNSIGNED NOT NULL DEFAULT 0 COMMENT '启动状态:1-启动;0-关闭', + `sort` int(10) UNSIGNED NOT NULL DEFAULT 50 COMMENT '排序', + `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '创建时间', + `update_time` int(11) NOT NULL DEFAULT 0 COMMENT '更新时间', + `delete_time` int(11) NOT NULL DEFAULT 0 COMMENT '删除时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '公众号消息回调表' ROW_FORMAT = Dynamic; + +INSERT INTO `site` VALUES (1, 'niucloud-admin', '0', '', 'admin', '', '', '1', '', '', '0', '0', '0', '', '', '', '', '0', '0', '', '', '', '0', '', ''); + +UPDATE `site` SET site_id = 0 WHERE site_id = 1; + + +INSERT INTO `sys_user` VALUES ('1', '', '', '', '', '', '0', '0', '0', '1', '0', '0', '0'); + +INSERT INTO `sys_user_role` VALUES ('1', '1', '0', '', '0', '1', '1'); + +INSERT INTO `sys_area` VALUES +(110000, 0, '北京市', '北京', '116.40529', '39.904987', 1, 0, 1), +(110100, 110000, '北京市', '北京', '116.40529', '39.904987', 2, 0, 1), +(110101, 110100, '东城区', '东城', '116.418755', '39.917545', 3, 0, 1), +(110102, 110100, '西城区', '西城', '116.36679', '39.91531', 3, 0, 1), +(110105, 110100, '朝阳区', '朝阳', '116.48641', '39.92149', 3, 0, 1), +(110106, 110100, '丰台区', '丰台', '116.286964', '39.863644', 3, 0, 1), +(110107, 110100, '石景山区', '石景山', '116.19544', '39.9146', 3, 0, 1), +(110108, 110100, '海淀区', '海淀', '116.31032', '39.956074', 3, 0, 1), +(110109, 110100, '门头沟区', '门头沟', '116.10538', '39.937183', 3, 0, 1), +(110111, 110100, '房山区', '房山', '116.13916', '39.735535', 3, 0, 1), +(110112, 110100, '通州区', '通州', '116.6586', '39.902485', 3, 0, 1), +(110113, 110100, '顺义区', '顺义', '116.65353', '40.128937', 3, 0, 1), +(110114, 110100, '昌平区', '昌平', '116.23591', '40.218086', 3, 0, 1), +(110115, 110100, '大兴区', '大兴', '116.338036', '39.72891', 3, 0, 1), +(110116, 110100, '怀柔区', '怀柔', '116.63712', '40.324272', 3, 0, 1), +(110117, 110100, '平谷区', '平谷', '117.112335', '40.144783', 3, 0, 1), +(110118, 110100, '密云区', '密云', '116.84317', '40.37625', 3, 0, 1), +(110119, 110100, '延庆区', '延庆', '115.97503', '40.45678', 3, 0, 1), +(120000, 0, '天津市', '天津', '117.190186', '39.125595', 1, 0, 1), +(120100, 120000, '天津市', '天津', '117.190186', '39.125595', 2, 0, 1), +(120101, 120100, '和平区', '和平', '117.19591', '39.11833', 3, 0, 1), +(120102, 120100, '河东区', '河东', '117.22657', '39.122124', 3, 0, 1), +(120103, 120100, '河西区', '河西', '117.21754', '39.1019', 3, 0, 1), +(120104, 120100, '南开区', '南开', '117.16415', '39.120476', 3, 0, 1), +(120105, 120100, '河北区', '河北', '117.20157', '39.15663', 3, 0, 1), +(120106, 120100, '红桥区', '红桥', '117.1633', '39.175068', 3, 0, 1), +(120110, 120100, '东丽区', '东丽', '117.313965', '39.087765', 3, 0, 1), +(120111, 120100, '西青区', '西青', '117.012245', '39.139446', 3, 0, 1), +(120112, 120100, '津南区', '津南', '117.382545', '38.98958', 3, 0, 1), +(120113, 120100, '北辰区', '北辰', '117.13482', '39.225555', 3, 0, 1), +(120114, 120100, '武清区', '武清', '117.05796', '39.376926', 3, 0, 1), +(120115, 120100, '宝坻区', '宝坻', '117.30809', '39.716965', 3, 0, 1), +(120116, 120100, '滨海新区', '滨海', '117.654175', '39.032845', 3, 0, 1), +(120117, 120100, '宁河区', '宁河', '117.82478', '39.33091', 3, 0, 1), +(120118, 120100, '静海区', '静海', '116.97428', '38.94737', 3, 0, 1), +(120119, 120100, '蓟州区', '蓟州', '117.40829', '40.04577', 3, 0, 1), +(130000, 0, '河北省', '河北', '114.502464', '38.045475', 1, 0, 1), +(130100, 130000, '石家庄市', '石家庄', '114.502464', '38.045475', 2, 0, 1), +(130102, 130100, '长安区', '长安', '114.54815', '38.0475', 3, 0, 1), +(130104, 130100, '桥西区', '桥西', '114.46293', '38.02838', 3, 0, 1), +(130105, 130100, '新华区', '新华', '114.46597', '38.067142', 3, 0, 1), +(130107, 130100, '井陉矿区', '井陉矿', '114.05818', '38.069748', 3, 0, 1), +(130108, 130100, '裕华区', '裕华', '114.53326', '38.027695', 3, 0, 1), +(130109, 130100, '藁城区', '藁城', '114.84676', '38.02166', 3, 0, 1), +(130110, 130100, '鹿泉区', '鹿泉', '114.31344', '38.08587', 3, 0, 1), +(130111, 130100, '栾城区', '栾城', '114.64839', '37.90025', 3, 0, 1), +(130121, 130100, '井陉县', '井陉', '114.144485', '38.033615', 3, 0, 1), +(130123, 130100, '正定县', '正定', '114.569885', '38.147835', 3, 0, 1), +(130125, 130100, '行唐县', '行唐', '114.552734', '38.437424', 3, 0, 1), +(130126, 130100, '灵寿县', '灵寿', '114.37946', '38.306545', 3, 0, 1), +(130127, 130100, '高邑县', '高邑', '114.6107', '37.605713', 3, 0, 1), +(130128, 130100, '深泽县', '深泽', '115.20021', '38.18454', 3, 0, 1), +(130129, 130100, '赞皇县', '赞皇', '114.38776', '37.6602', 3, 0, 1), +(130130, 130100, '无极县', '无极', '114.977844', '38.176376', 3, 0, 1), +(130131, 130100, '平山县', '平山', '114.18414', '38.25931', 3, 0, 1), +(130132, 130100, '元氏县', '元氏', '114.52618', '37.762512', 3, 0, 1), +(130133, 130100, '赵县', '赵县', '114.77536', '37.75434', 3, 0, 1), +(130181, 130100, '辛集市', '辛集', '115.21745', '37.92904', 3, 0, 1), +(130183, 130100, '晋州市', '晋州', '115.04488', '38.027477', 3, 0, 1), +(130184, 130100, '新乐市', '新乐', '114.68578', '38.34477', 3, 0, 1), +(130200, 130000, '唐山市', '唐山', '118.17539', '39.635113', 2, 0, 1), +(130202, 130200, '路南区', '路南', '118.21082', '39.61516', 3, 0, 1), +(130203, 130200, '路北区', '路北', '118.174736', '39.628536', 3, 0, 1), +(130204, 130200, '古冶区', '古冶', '118.45429', '39.715736', 3, 0, 1), +(130205, 130200, '开平区', '开平', '118.26443', '39.67617', 3, 0, 1), +(130207, 130200, '丰南区', '丰南', '118.110794', '39.56303', 3, 0, 1), +(130208, 130200, '丰润区', '丰润', '118.15578', '39.831364', 3, 0, 1), +(130209, 130200, '曹妃甸区', '曹妃甸', '118.46023', '39.27313', 3, 0, 1), +(130224, 130200, '滦南县', '滦南', '118.68155', '39.506203', 3, 0, 1), +(130225, 130200, '乐亭县', '乐亭', '118.90534', '39.42813', 3, 0, 1), +(130227, 130200, '迁西县', '迁西', '118.30514', '40.146236', 3, 0, 1), +(130229, 130200, '玉田县', '玉田', '117.75366', '39.88732', 3, 0, 1), +(130281, 130200, '遵化市', '遵化', '117.96587', '40.188618', 3, 0, 1), +(130283, 130200, '迁安市', '迁安', '118.701935', '40.012108', 3, 0, 1), +(130284, 130200, '滦州市', '滦州', '118.70351', '39.74058', 3, 0, 1), +(130300, 130000, '秦皇岛市', '秦皇岛', '119.58658', '39.94253', 2, 0, 1), +(130302, 130300, '海港区', '海港', '119.59622', '39.94346', 3, 0, 1), +(130303, 130300, '山海关区', '山海关', '119.75359', '39.998024', 3, 0, 1), +(130304, 130300, '北戴河区', '北戴河', '119.48628', '39.825123', 3, 0, 1), +(130306, 130300, '抚宁区', '抚宁', '119.24444', '39.87634', 3, 0, 1), +(130321, 130300, '青龙满族自治县', '青龙', '118.95455', '40.40602', 3, 0, 1), +(130322, 130300, '昌黎县', '昌黎', '119.16454', '39.70973', 3, 0, 1), +(130324, 130300, '卢龙县', '卢龙', '118.881805', '39.89164', 3, 0, 1), +(130400, 130000, '邯郸市', '邯郸', '114.490685', '36.612274', 2, 0, 1), +(130402, 130400, '邯山区', '邯山', '114.484985', '36.603195', 3, 0, 1), +(130403, 130400, '丛台区', '丛台', '114.494705', '36.61108', 3, 0, 1), +(130404, 130400, '复兴区', '复兴', '114.458244', '36.615482', 3, 0, 1), +(130406, 130400, '峰峰矿区', '峰峰矿', '114.20994', '36.420486', 3, 0, 1), +(130407, 130400, '肥乡区', '肥乡', '114.80002', '36.54811', 3, 0, 1), +(130408, 130400, '永年区', '永年', '114.49095', '36.77771', 3, 0, 1), +(130423, 130400, '临漳县', '临漳', '114.6107', '36.337605', 3, 0, 1), +(130424, 130400, '成安县', '成安', '114.68036', '36.443832', 3, 0, 1), +(130425, 130400, '大名县', '大名', '115.15259', '36.283318', 3, 0, 1), +(130426, 130400, '涉县', '涉县', '113.673294', '36.563145', 3, 0, 1), +(130427, 130400, '磁县', '磁县', '114.38208', '36.367672', 3, 0, 1), +(130430, 130400, '邱县', '邱县', '115.16859', '36.81325', 3, 0, 1), +(130431, 130400, '鸡泽县', '鸡泽', '114.87852', '36.91491', 3, 0, 1), +(130432, 130400, '广平县', '广平', '114.95086', '36.483604', 3, 0, 1), +(130433, 130400, '馆陶县', '馆陶', '115.289055', '36.53946', 3, 0, 1), +(130434, 130400, '魏县', '魏县', '114.93411', '36.354248', 3, 0, 1), +(130435, 130400, '曲周县', '曲周', '114.95759', '36.7734', 3, 0, 1), +(130481, 130400, '武安市', '武安', '114.19458', '36.696114', 3, 0, 1), +(130500, 130000, '邢台市', '邢台', '114.50885', '37.0682', 2, 0, 1), +(130502, 130500, '襄都区', '桥东', '114.50713', '37.064125', 3, 0, 1), +(130503, 130500, '信都区', '桥西', '114.47369', '37.06801', 3, 0, 1), +(130505, 130500, '任泽区', '任泽', '', '', 3, 0, 1), +(130506, 130500, '南和区', '南和', '', '', 3, 0, 1), +(130522, 130500, '临城县', '临城', '114.506874', '37.444008', 3, 0, 1), +(130523, 130500, '内丘县', '内丘', '114.51152', '37.287663', 3, 0, 1), +(130524, 130500, '柏乡县', '柏乡', '114.69338', '37.483597', 3, 0, 1), +(130525, 130500, '隆尧县', '隆尧', '114.776344', '37.350925', 3, 0, 1), +(130528, 130500, '宁晋县', '宁晋', '114.92103', '37.618958', 3, 0, 1), +(130529, 130500, '巨鹿县', '巨鹿', '115.03878', '37.21768', 3, 0, 1), +(130530, 130500, '新河县', '新河', '115.247536', '37.526215', 3, 0, 1), +(130531, 130500, '广宗县', '广宗', '115.1428', '37.075546', 3, 0, 1), +(130532, 130500, '平乡县', '平乡', '115.02922', '37.069405', 3, 0, 1), +(130533, 130500, '威县', '威县', '115.27275', '36.983273', 3, 0, 1), +(130534, 130500, '清河县', '清河', '115.669', '37.05999', 3, 0, 1), +(130535, 130500, '临西县', '临西', '115.49869', '36.8642', 3, 0, 1), +(130581, 130500, '南宫市', '南宫', '115.3981', '37.35967', 3, 0, 1), +(130582, 130500, '沙河市', '沙河', '114.504906', '36.861904', 3, 0, 1), +(130600, 130000, '保定市', '保定', '115.48233', '38.867657', 2, 0, 1), +(130602, 130600, '竞秀区', '新市', '115.47066', '38.88662', 3, 0, 1), +(130606, 130600, '莲池区', '莲池', '115.49715', '38.88353', 3, 0, 1), +(130607, 130600, '满城区', '满城', '115.32217', '38.94892', 3, 0, 1), +(130608, 130600, '清苑区', '清苑', '115.48989', '38.76526', 3, 0, 1), +(130609, 130600, '徐水区', '徐水', '115.65586', '39.01865', 3, 0, 1), +(130623, 130600, '涞水县', '涞水', '115.71198', '39.393147', 3, 0, 1), +(130624, 130600, '阜平县', '阜平', '114.1988', '38.847275', 3, 0, 1), +(130626, 130600, '定兴县', '定兴', '115.7969', '39.266193', 3, 0, 1), +(130627, 130600, '唐县', '唐县', '114.98124', '38.748543', 3, 0, 1), +(130628, 130600, '高阳县', '高阳', '115.77888', '38.69009', 3, 0, 1), +(130629, 130600, '容城县', '容城', '115.86625', '39.05282', 3, 0, 1), +(130630, 130600, '涞源县', '涞源', '114.692566', '39.35755', 3, 0, 1), +(130631, 130600, '望都县', '望都', '115.15401', '38.707447', 3, 0, 1), +(130632, 130600, '安新县', '安新', '115.93198', '38.929913', 3, 0, 1), +(130633, 130600, '易县', '易县', '115.501144', '39.35297', 3, 0, 1), +(130634, 130600, '曲阳县', '曲阳', '114.704056', '38.61999', 3, 0, 1), +(130635, 130600, '蠡县', '蠡县', '115.58363', '38.49643', 3, 0, 1), +(130636, 130600, '顺平县', '顺平', '115.13275', '38.845127', 3, 0, 1), +(130637, 130600, '博野县', '博野', '115.4618', '38.45827', 3, 0, 1), +(130638, 130600, '雄县', '雄县', '116.107475', '38.990818', 3, 0, 1), +(130681, 130600, '涿州市', '涿州', '115.97341', '39.485764', 3, 0, 1), +(130682, 130600, '定州市', '定州', '114.99139', '38.5176', 3, 0, 1), +(130683, 130600, '安国市', '安国', '115.33141', '38.421368', 3, 0, 1), +(130684, 130600, '高碑店市', '高碑店', '115.882706', '39.32769', 3, 0, 1), +(130700, 130000, '张家口市', '张家口', '114.884094', '40.8119', 2, 0, 1), +(130702, 130700, '桥东区', '桥东', '114.88566', '40.813873', 3, 0, 1), +(130703, 130700, '桥西区', '桥西', '114.882126', '40.824387', 3, 0, 1), +(130705, 130700, '宣化区', '宣化区', '115.0632', '40.609367', 3, 0, 1), +(130706, 130700, '下花园区', '下花园', '115.281', '40.488644', 3, 0, 1), +(130708, 130700, '万全区', '万全', '114.74055', '40.76699', 3, 0, 1), +(130709, 130700, '崇礼区', '崇礼', '115.282349', '40.974758', 3, 0, 1), +(130722, 130700, '张北县', '张北', '114.71595', '41.151714', 3, 0, 1), +(130723, 130700, '康保县', '康保', '114.61581', '41.850044', 3, 0, 1), +(130724, 130700, '沽源县', '沽源', '115.68484', '41.66742', 3, 0, 1), +(130725, 130700, '尚义县', '尚义', '113.977715', '41.08009', 3, 0, 1), +(130726, 130700, '蔚县', '蔚县', '114.582695', '39.83718', 3, 0, 1), +(130727, 130700, '阳原县', '阳原', '114.16734', '40.11342', 3, 0, 1), +(130728, 130700, '怀安县', '怀安', '114.42236', '40.671272', 3, 0, 1), +(130730, 130700, '怀来县', '怀来', '115.52084', '40.405403', 3, 0, 1), +(130731, 130700, '涿鹿县', '涿鹿', '115.219246', '40.3787', 3, 0, 1), +(130732, 130700, '赤城县', '赤城', '115.83271', '40.912083', 3, 0, 1), +(130800, 130000, '承德市', '承德', '117.939156', '40.976204', 2, 0, 1), +(130802, 130800, '双桥区', '双桥', '117.939156', '40.976204', 3, 0, 1), +(130803, 130800, '双滦区', '双滦', '117.797485', '40.959755', 3, 0, 1), +(130804, 130800, '鹰手营子矿区', '鹰手营子矿', '117.661156', '40.546955', 3, 0, 1), +(130821, 130800, '承德县', '承德', '118.17249', '40.76864', 3, 0, 1), +(130822, 130800, '兴隆县', '兴隆', '117.507095', '40.418526', 3, 0, 1), +(130824, 130800, '滦平县', '滦平', '117.33713', '40.936646', 3, 0, 1), +(130825, 130800, '隆化县', '隆化', '117.73634', '41.316666', 3, 0, 1), +(130826, 130800, '丰宁满族自治县', '丰宁', '116.65121', '41.209904', 3, 0, 1), +(130827, 130800, '宽城满族自治县', '宽城', '118.48864', '40.607983', 3, 0, 1), +(130828, 130800, '围场满族蒙古族自治县', '围场', '117.764084', '41.949406', 3, 0, 1), +(130881, 130800, '平泉市', '平泉', '118.70065', '41.01797', 3, 0, 1), +(130900, 130000, '沧州市', '沧州', '116.85746', '38.31058', 2, 0, 1), +(130902, 130900, '新华区', '新华', '116.87305', '38.308273', 3, 0, 1), +(130903, 130900, '运河区', '运河', '116.840065', '38.307404', 3, 0, 1), +(130921, 130900, '沧县', '沧县', '117.00748', '38.219856', 3, 0, 1), +(130922, 130900, '青县', '青县', '116.83839', '38.569645', 3, 0, 1), +(130923, 130900, '东光县', '东光', '116.54206', '37.88655', 3, 0, 1), +(130924, 130900, '海兴县', '海兴', '117.496605', '38.141582', 3, 0, 1), +(130925, 130900, '盐山县', '盐山', '117.22981', '38.05614', 3, 0, 1), +(130926, 130900, '肃宁县', '肃宁', '115.83585', '38.4271', 3, 0, 1), +(130927, 130900, '南皮县', '南皮', '116.70917', '38.04244', 3, 0, 1), +(130928, 130900, '吴桥县', '吴桥', '116.39151', '37.62818', 3, 0, 1), +(130929, 130900, '献县', '献县', '116.12384', '38.18966', 3, 0, 1), +(130930, 130900, '孟村回族自治县', '孟村', '117.1051', '38.057953', 3, 0, 1), +(130981, 130900, '泊头市', '泊头', '116.57016', '38.07348', 3, 0, 1), +(130982, 130900, '任丘市', '任丘', '116.106766', '38.706512', 3, 0, 1), +(130983, 130900, '黄骅市', '黄骅', '117.3438', '38.36924', 3, 0, 1), +(130984, 130900, '河间市', '河间', '116.089455', '38.44149', 3, 0, 1), +(131000, 130000, '廊坊市', '廊坊', '116.70444', '39.523926', 2, 0, 1), +(131002, 131000, '安次区', '安次', '116.69454', '39.502567', 3, 0, 1), +(131003, 131000, '广阳区', '广阳', '116.71371', '39.52193', 3, 0, 1), +(131022, 131000, '固安县', '固安', '116.2999', '39.436466', 3, 0, 1), +(131023, 131000, '永清县', '永清', '116.49809', '39.319717', 3, 0, 1), +(131024, 131000, '香河县', '香河', '117.007164', '39.757214', 3, 0, 1), +(131025, 131000, '大城县', '大城', '116.64073', '38.699215', 3, 0, 1), +(131026, 131000, '文安县', '文安', '116.460106', '38.866802', 3, 0, 1), +(131028, 131000, '大厂回族自治县', '大厂', '116.9865', '39.889267', 3, 0, 1), +(131081, 131000, '霸州市', '霸州', '116.39202', '39.117332', 3, 0, 1), +(131082, 131000, '三河市', '三河', '117.07702', '39.982777', 3, 0, 1), +(131100, 130000, '衡水市', '衡水', '115.66599', '37.735096', 2, 0, 1), +(131102, 131100, '桃城区', '桃城', '115.69495', '37.73224', 3, 0, 1), +(131103, 131100, '冀州区', '冀州', '115.57938', '37.55085', 3, 0, 1), +(131121, 131100, '枣强县', '枣强', '115.7265', '37.511513', 3, 0, 1), +(131122, 131100, '武邑县', '武邑', '115.89242', '37.803776', 3, 0, 1), +(131123, 131100, '武强县', '武强', '115.97024', '38.03698', 3, 0, 1), +(131124, 131100, '饶阳县', '饶阳', '115.72658', '38.23267', 3, 0, 1), +(131125, 131100, '安平县', '安平', '115.51963', '38.233513', 3, 0, 1), +(131126, 131100, '故城县', '故城', '115.96674', '37.350983', 3, 0, 1), +(131127, 131100, '景县', '景县', '116.258446', '37.686623', 3, 0, 1), +(131128, 131100, '阜城县', '阜城', '116.16473', '37.869946', 3, 0, 1), +(131182, 131100, '深州市', '深州', '115.554596', '38.00347', 3, 0, 1), +(140000, 0, '山西省', '山西', '112.54925', '37.857014', 1, 0, 1), +(140100, 140000, '太原市', '太原', '112.54925', '37.857014', 2, 0, 1), +(140105, 140100, '小店区', '小店', '112.56427', '37.817974', 3, 0, 1), +(140106, 140100, '迎泽区', '迎泽', '112.55885', '37.855804', 3, 0, 1), +(140107, 140100, '杏花岭区', '杏花岭', '112.560745', '37.87929', 3, 0, 1), +(140108, 140100, '尖草坪区', '尖草坪', '112.48712', '37.93989', 3, 0, 1), +(140109, 140100, '万柏林区', '万柏林', '112.522255', '37.86265', 3, 0, 1), +(140110, 140100, '晋源区', '晋源', '112.47785', '37.71562', 3, 0, 1), +(140121, 140100, '清徐县', '清徐', '112.35796', '37.60729', 3, 0, 1), +(140122, 140100, '阳曲县', '阳曲', '112.67382', '38.058796', 3, 0, 1), +(140123, 140100, '娄烦县', '娄烦', '111.7938', '38.066036', 3, 0, 1), +(140181, 140100, '古交市', '古交', '112.174355', '37.908535', 3, 0, 1), +(140200, 140000, '大同市', '大同', '113.29526', '40.09031', 2, 0, 1), +(140212, 140200, '新荣区', '新荣', '113.141045', '40.25827', 3, 0, 1), +(140213, 140200, '平城区', '平城', '113.29798', '40.07583', 3, 0, 1), +(140214, 140200, '云冈区', '云冈', '113.14952', '40.00543', 3, 0, 1), +(140215, 140200, '云州区', '云州', '113.61217', '40.04016', 3, 0, 1), +(140221, 140200, '阳高县', '阳高', '113.74987', '40.364925', 3, 0, 1), +(140222, 140200, '天镇县', '天镇', '114.09112', '40.421337', 3, 0, 1), +(140223, 140200, '广灵县', '广灵', '114.27925', '39.76305', 3, 0, 1), +(140224, 140200, '灵丘县', '灵丘', '114.23576', '39.438866', 3, 0, 1), +(140225, 140200, '浑源县', '浑源', '113.69809', '39.6991', 3, 0, 1), +(140226, 140200, '左云县', '左云', '112.70641', '40.012875', 3, 0, 1), +(140300, 140000, '阳泉市', '阳泉', '113.58328', '37.861187', 2, 0, 1), +(140302, 140300, '城区', '城区', '113.58651', '37.86094', 3, 0, 1), +(140303, 140300, '矿区', '矿区', '113.55907', '37.870087', 3, 0, 1), +(140311, 140300, '郊区', '郊区', '113.58328', '37.861187', 3, 0, 1), +(140321, 140300, '平定县', '平定', '113.63105', '37.80029', 3, 0, 1), +(140322, 140300, '盂县', '盂县', '113.41223', '38.086132', 3, 0, 1), +(140400, 140000, '长治市', '长治', '113.113556', '36.191113', 2, 0, 1), +(140403, 140400, '潞州区', '潞州', '113.12303', '36.20346', 3, 0, 1), +(140404, 140400, '上党区', '上党', '113.05135', '36.05312', 3, 0, 1), +(140405, 140400, '屯留区', '屯留', '112.89221', '36.31553', 3, 0, 1), +(140406, 140400, '潞城区', '潞城', '113.22893', '36.33418', 3, 0, 1), +(140423, 140400, '襄垣县', '襄垣', '113.050095', '36.532852', 3, 0, 1), +(140425, 140400, '平顺县', '平顺', '113.43879', '36.200203', 3, 0, 1), +(140426, 140400, '黎城县', '黎城', '113.38737', '36.50297', 3, 0, 1), +(140427, 140400, '壶关县', '壶关', '113.20614', '36.11094', 3, 0, 1), +(140428, 140400, '长子县', '长子', '112.88466', '36.119484', 3, 0, 1), +(140429, 140400, '武乡县', '武乡', '112.8653', '36.834316', 3, 0, 1), +(140430, 140400, '沁县', '沁县', '112.70138', '36.757122', 3, 0, 1), +(140431, 140400, '沁源县', '沁源', '112.34088', '36.50078', 3, 0, 1), +(140500, 140000, '晋城市', '晋城', '112.85127', '35.497555', 2, 0, 1), +(140502, 140500, '城区', '城区', '112.8531', '35.49664', 3, 0, 1), +(140521, 140500, '沁水县', '沁水', '112.18721', '35.689472', 3, 0, 1), +(140522, 140500, '阳城县', '阳城', '112.42201', '35.482178', 3, 0, 1), +(140524, 140500, '陵川县', '陵川', '113.27888', '35.775616', 3, 0, 1), +(140525, 140500, '泽州县', '泽州', '112.89914', '35.61722', 3, 0, 1), +(140581, 140500, '高平市', '高平', '112.930695', '35.791355', 3, 0, 1), +(140600, 140000, '朔州市', '朔州', '112.43339', '39.33126', 2, 0, 1), +(140602, 140600, '朔城区', '朔城', '112.42867', '39.324524', 3, 0, 1), +(140603, 140600, '平鲁区', '平鲁', '112.29523', '39.515602', 3, 0, 1), +(140621, 140600, '山阴县', '山阴', '112.8164', '39.52677', 3, 0, 1), +(140622, 140600, '应县', '应县', '113.18751', '39.55919', 3, 0, 1), +(140623, 140600, '右玉县', '右玉', '112.46559', '39.98881', 3, 0, 1), +(140681, 140600, '怀仁市', '怀仁', '113.10012', '39.82788', 3, 0, 1), +(140700, 140000, '晋中市', '晋中', '112.736465', '37.696495', 2, 0, 1), +(140702, 140700, '榆次区', '榆次', '112.74006', '37.6976', 3, 0, 1), +(140703, 140700, '太谷区', '太谷', '112.55126', '37.42119', 3, 0, 1), +(140721, 140700, '榆社县', '榆社', '112.97352', '37.06902', 3, 0, 1), +(140722, 140700, '左权县', '左权', '113.37783', '37.079674', 3, 0, 1), +(140723, 140700, '和顺县', '和顺', '113.57292', '37.327026', 3, 0, 1), +(140724, 140700, '昔阳县', '昔阳', '113.70617', '37.60437', 3, 0, 1), +(140725, 140700, '寿阳县', '寿阳', '113.17771', '37.891136', 3, 0, 1), +(140727, 140700, '祁县', '祁县', '112.33053', '37.358738', 3, 0, 1), +(140728, 140700, '平遥县', '平遥', '112.17406', '37.195473', 3, 0, 1), +(140729, 140700, '灵石县', '灵石', '111.77276', '36.84747', 3, 0, 1), +(140781, 140700, '介休市', '介休', '111.91386', '37.027615', 3, 0, 1), +(140800, 140000, '运城市', '运城', '111.00396', '35.022778', 2, 0, 1), +(140802, 140800, '盐湖区', '盐湖', '111.000626', '35.025642', 3, 0, 1), +(140821, 140800, '临猗县', '临猗', '110.77493', '35.141884', 3, 0, 1), +(140822, 140800, '万荣县', '万荣', '110.84356', '35.41704', 3, 0, 1), +(140823, 140800, '闻喜县', '闻喜', '111.22031', '35.35384', 3, 0, 1), +(140824, 140800, '稷山县', '稷山', '110.979', '35.60041', 3, 0, 1), +(140825, 140800, '新绛县', '新绛', '111.225204', '35.613697', 3, 0, 1), +(140826, 140800, '绛县', '绛县', '111.57618', '35.49045', 3, 0, 1), +(140827, 140800, '垣曲县', '垣曲', '111.67099', '35.298294', 3, 0, 1), +(140828, 140800, '夏县', '夏县', '111.223175', '35.14044', 3, 0, 1), +(140829, 140800, '平陆县', '平陆', '111.21238', '34.837257', 3, 0, 1), +(140830, 140800, '芮城县', '芮城', '110.69114', '34.69477', 3, 0, 1), +(140881, 140800, '永济市', '永济', '110.44798', '34.865124', 3, 0, 1), +(140882, 140800, '河津市', '河津', '110.710266', '35.59715', 3, 0, 1), +(140900, 140000, '忻州市', '忻州', '112.733536', '38.41769', 2, 0, 1), +(140902, 140900, '忻府区', '忻府', '112.734116', '38.417744', 3, 0, 1), +(140921, 140900, '定襄县', '定襄', '112.963234', '38.484947', 3, 0, 1), +(140922, 140900, '五台县', '五台', '113.25901', '38.72571', 3, 0, 1), +(140923, 140900, '代县', '代县', '112.96252', '39.06514', 3, 0, 1), +(140924, 140900, '繁峙县', '繁峙', '113.26771', '39.188103', 3, 0, 1), +(140925, 140900, '宁武县', '宁武', '112.30794', '39.001717', 3, 0, 1), +(140926, 140900, '静乐县', '静乐', '111.94023', '38.355946', 3, 0, 1), +(140927, 140900, '神池县', '神池', '112.20044', '39.088467', 3, 0, 1), +(140928, 140900, '五寨县', '五寨', '111.84102', '38.91276', 3, 0, 1), +(140929, 140900, '岢岚县', '岢岚', '111.56981', '38.705624', 3, 0, 1), +(140930, 140900, '河曲县', '河曲', '111.14661', '39.381893', 3, 0, 1), +(140931, 140900, '保德县', '保德', '111.085686', '39.022575', 3, 0, 1), +(140932, 140900, '偏关县', '偏关', '111.50048', '39.442154', 3, 0, 1), +(140981, 140900, '原平市', '原平', '112.713135', '38.729187', 3, 0, 1), +(141000, 140000, '临汾市', '临汾', '111.517975', '36.08415', 2, 0, 1), +(141002, 141000, '尧都区', '尧都', '111.52294', '36.080364', 3, 0, 1), +(141021, 141000, '曲沃县', '曲沃', '111.47553', '35.641388', 3, 0, 1), +(141022, 141000, '翼城县', '翼城', '111.71351', '35.73862', 3, 0, 1), +(141023, 141000, '襄汾县', '襄汾', '111.44293', '35.87614', 3, 0, 1), +(141024, 141000, '洪洞县', '洪洞', '111.67369', '36.25574', 3, 0, 1), +(141025, 141000, '古县', '古县', '111.920204', '36.26855', 3, 0, 1), +(141026, 141000, '安泽县', '安泽', '112.25137', '36.14603', 3, 0, 1), +(141027, 141000, '浮山县', '浮山', '111.85004', '35.97136', 3, 0, 1), +(141028, 141000, '吉县', '吉县', '110.68285', '36.099354', 3, 0, 1), +(141029, 141000, '乡宁县', '乡宁', '110.85737', '35.975403', 3, 0, 1), +(141030, 141000, '大宁县', '大宁', '110.75128', '36.46383', 3, 0, 1), +(141031, 141000, '隰县', '隰县', '110.93581', '36.692677', 3, 0, 1), +(141032, 141000, '永和县', '永和', '110.63128', '36.760612', 3, 0, 1), +(141033, 141000, '蒲县', '蒲县', '111.09733', '36.411682', 3, 0, 1), +(141034, 141000, '汾西县', '汾西', '111.56302', '36.65337', 3, 0, 1), +(141081, 141000, '侯马市', '侯马', '111.37127', '35.6203', 3, 0, 1), +(141082, 141000, '霍州市', '霍州', '111.72311', '36.57202', 3, 0, 1), +(141100, 140000, '吕梁市', '吕梁', '111.13434', '37.524364', 2, 0, 1), +(141102, 141100, '离石区', '离石', '111.13446', '37.524036', 3, 0, 1), +(141121, 141100, '文水县', '文水', '112.03259', '37.436314', 3, 0, 1), +(141122, 141100, '交城县', '交城', '112.15916', '37.555157', 3, 0, 1), +(141123, 141100, '兴县', '兴县', '111.12482', '38.464134', 3, 0, 1), +(141124, 141100, '临县', '临县', '110.995964', '37.960808', 3, 0, 1), +(141125, 141100, '柳林县', '柳林', '110.89613', '37.431664', 3, 0, 1), +(141126, 141100, '石楼县', '石楼', '110.83712', '36.999428', 3, 0, 1), +(141127, 141100, '岚县', '岚县', '111.671555', '38.278652', 3, 0, 1), +(141128, 141100, '方山县', '方山', '111.238884', '37.89263', 3, 0, 1), +(141129, 141100, '中阳县', '中阳', '111.19332', '37.342052', 3, 0, 1), +(141130, 141100, '交口县', '交口', '111.18319', '36.983067', 3, 0, 1), +(141181, 141100, '孝义市', '孝义', '111.78157', '37.144474', 3, 0, 1), +(141182, 141100, '汾阳市', '汾阳', '111.78527', '37.267742', 3, 0, 1), +(150000, 0, '内蒙古自治区', '内蒙古', '111.6708', '40.81831', 1, 0, 1), +(150100, 150000, '呼和浩特市', '呼和浩特', '111.6708', '40.81831', 2, 0, 1), +(150102, 150100, '新城区', '新城', '111.68597', '40.826225', 3, 0, 1), +(150103, 150100, '回民区', '回民', '111.66216', '40.815147', 3, 0, 1), +(150104, 150100, '玉泉区', '玉泉', '111.66543', '40.79942', 3, 0, 1), +(150105, 150100, '赛罕区', '赛罕', '111.69846', '40.807835', 3, 0, 1), +(150121, 150100, '土默特左旗', '土默特左', '111.13361', '40.720417', 3, 0, 1), +(150122, 150100, '托克托县', '托克托', '111.19732', '40.27673', 3, 0, 1), +(150123, 150100, '和林格尔县', '和林格尔', '111.82414', '40.380287', 3, 0, 1), +(150124, 150100, '清水河县', '清水河', '111.67222', '39.91248', 3, 0, 1), +(150125, 150100, '武川县', '武川', '111.456566', '41.094482', 3, 0, 1), +(150200, 150000, '包头市', '包头', '109.84041', '40.65817', 2, 0, 1), +(150202, 150200, '东河区', '东河', '110.02689', '40.587055', 3, 0, 1), +(150203, 150200, '昆都仑区', '昆都仑', '109.82293', '40.661346', 3, 0, 1), +(150204, 150200, '青山区', '青山', '109.88005', '40.668556', 3, 0, 1), +(150205, 150200, '石拐区', '石拐', '110.27257', '40.672092', 3, 0, 1), +(150206, 150200, '白云鄂博矿区', '白云矿区', '109.97016', '41.769245', 3, 0, 1), +(150207, 150200, '九原区', '九原', '109.968124', '40.600582', 3, 0, 1), +(150221, 150200, '土默特右旗', '土默特右', '110.526764', '40.566433', 3, 0, 1), +(150222, 150200, '固阳县', '固阳', '110.06342', '41.030003', 3, 0, 1), +(150223, 150200, '达尔罕茂明安联合旗', '达尔罕茂明安联合', '109.84041', '40.65817', 3, 0, 1), +(150300, 150000, '乌海市', '乌海', '106.82556', '39.673733', 2, 0, 1), +(150302, 150300, '海勃湾区', '海勃湾', '106.817764', '39.673527', 3, 0, 1), +(150303, 150300, '海南区', '海南', '106.88479', '39.44153', 3, 0, 1), +(150304, 150300, '乌达区', '乌达', '106.72271', '39.50229', 3, 0, 1), +(150400, 150000, '赤峰市', '赤峰', '118.9568', '42.27532', 2, 0, 1), +(150402, 150400, '红山区', '红山', '118.96109', '42.269733', 3, 0, 1), +(150403, 150400, '元宝山区', '元宝山', '119.28988', '42.04117', 3, 0, 1), +(150404, 150400, '松山区', '松山', '118.93896', '42.281048', 3, 0, 1), +(150421, 150400, '阿鲁科尔沁旗', '阿鲁科尔沁', '120.09497', '43.87877', 3, 0, 1), +(150422, 150400, '巴林左旗', '巴林左', '119.39174', '43.980717', 3, 0, 1), +(150423, 150400, '巴林右旗', '巴林右', '118.678345', '43.52896', 3, 0, 1), +(150424, 150400, '林西县', '林西', '118.05775', '43.605328', 3, 0, 1), +(150425, 150400, '克什克腾旗', '克什克腾', '117.542465', '43.256233', 3, 0, 1), +(150426, 150400, '翁牛特旗', '翁牛特', '119.02262', '42.937126', 3, 0, 1), +(150428, 150400, '喀喇沁旗', '喀喇沁', '118.70857', '41.92778', 3, 0, 1), +(150429, 150400, '宁城县', '宁城', '119.33924', '41.598694', 3, 0, 1), +(150430, 150400, '敖汉旗', '敖汉', '119.90649', '42.28701', 3, 0, 1), +(150500, 150000, '通辽市', '通辽', '122.26312', '43.617428', 2, 0, 1), +(150502, 150500, '科尔沁区', '科尔沁', '122.264046', '43.61742', 3, 0, 1), +(150521, 150500, '科尔沁左翼中旗', '科尔沁左翼中', '123.31387', '44.127167', 3, 0, 1), +(150522, 150500, '科尔沁左翼后旗', '科尔沁左翼后', '122.355156', '42.954563', 3, 0, 1), +(150523, 150500, '开鲁县', '开鲁', '121.3088', '43.602432', 3, 0, 1), +(150524, 150500, '库伦旗', '库伦', '121.77489', '42.73469', 3, 0, 1), +(150525, 150500, '奈曼旗', '奈曼', '120.662544', '42.84685', 3, 0, 1), +(150526, 150500, '扎鲁特旗', '扎鲁特', '120.90527', '44.555294', 3, 0, 1), +(150581, 150500, '霍林郭勒市', '霍林郭勒', '119.65786', '45.53236', 3, 0, 1), +(150600, 150000, '鄂尔多斯市', '鄂尔多斯', '109.99029', '39.81718', 2, 0, 1), +(150602, 150600, '东胜区', '东胜', '109.98945', '39.81788', 3, 0, 1), +(150603, 150600, '康巴什区', '康巴什', '109.85851', '39.60837', 3, 0, 1), +(150621, 150600, '达拉特旗', '达拉特', '110.04028', '40.404076', 3, 0, 1), +(150622, 150600, '准格尔旗', '准格尔', '111.238335', '39.86522', 3, 0, 1), +(150623, 150600, '鄂托克前旗', '鄂托克前', '107.48172', '38.183258', 3, 0, 1), +(150624, 150600, '鄂托克旗', '鄂托克', '107.982605', '39.095753', 3, 0, 1), +(150625, 150600, '杭锦旗', '杭锦', '108.73632', '39.831787', 3, 0, 1), +(150626, 150600, '乌审旗', '乌审', '108.84245', '38.59661', 3, 0, 1), +(150627, 150600, '伊金霍洛旗', '伊金霍洛', '109.7874', '39.604313', 3, 0, 1), +(150700, 150000, '呼伦贝尔市', '呼伦贝尔', '119.75817', '49.215332', 2, 0, 1), +(150702, 150700, '海拉尔区', '海拉尔', '119.76492', '49.21389', 3, 0, 1), +(150703, 150700, '扎赉诺尔区', '扎赉诺尔', '117.7927', '49.486942', 3, 0, 1), +(150721, 150700, '阿荣旗', '阿荣', '123.464615', '48.130505', 3, 0, 1), +(150722, 150700, '莫力达瓦达斡尔族自治旗', '莫力达瓦', '124.5074', '48.478386', 3, 0, 1), +(150723, 150700, '鄂伦春自治旗', '鄂伦春', '123.725685', '50.590176', 3, 0, 1), +(150724, 150700, '鄂温克族自治旗', '鄂温克', '119.75404', '49.14329', 3, 0, 1), +(150725, 150700, '陈巴尔虎旗', '陈巴尔虎', '119.43761', '49.328423', 3, 0, 1), +(150726, 150700, '新巴尔虎左旗', '新巴尔虎左', '118.267456', '48.21657', 3, 0, 1), +(150727, 150700, '新巴尔虎右旗', '新巴尔虎右', '116.82599', '48.669132', 3, 0, 1), +(150781, 150700, '满洲里市', '满洲里', '117.45556', '49.59079', 3, 0, 1), +(150782, 150700, '牙克石市', '牙克石', '120.729004', '49.287025', 3, 0, 1), +(150783, 150700, '扎兰屯市', '扎兰屯', '122.7444', '48.007412', 3, 0, 1), +(150784, 150700, '额尔古纳市', '额尔古纳', '120.178635', '50.2439', 3, 0, 1), +(150785, 150700, '根河市', '根河', '121.53272', '50.780453', 3, 0, 1), +(150800, 150000, '巴彦淖尔市', '巴彦淖尔', '107.41696', '40.7574', 2, 0, 1), +(150802, 150800, '临河区', '临河', '107.417015', '40.75709', 3, 0, 1), +(150821, 150800, '五原县', '五原', '108.27066', '41.097637', 3, 0, 1), +(150822, 150800, '磴口县', '磴口', '107.00606', '40.33048', 3, 0, 1), +(150823, 150800, '乌拉特前旗', '乌拉特前', '108.656815', '40.72521', 3, 0, 1), +(150824, 150800, '乌拉特中旗', '乌拉特中', '108.51526', '41.57254', 3, 0, 1), +(150825, 150800, '乌拉特后旗', '乌拉特后', '107.07494', '41.08431', 3, 0, 1), +(150826, 150800, '杭锦后旗', '杭锦后', '107.14768', '40.888798', 3, 0, 1), +(150900, 150000, '乌兰察布市', '乌兰察布', '113.11454', '41.034126', 2, 0, 1), +(150902, 150900, '集宁区', '集宁', '113.116455', '41.034134', 3, 0, 1), +(150921, 150900, '卓资县', '卓资', '112.577705', '40.89576', 3, 0, 1), +(150922, 150900, '化德县', '化德', '114.01008', '41.899334', 3, 0, 1), +(150923, 150900, '商都县', '商都', '113.560646', '41.56016', 3, 0, 1), +(150924, 150900, '兴和县', '兴和', '113.83401', '40.872437', 3, 0, 1), +(150925, 150900, '凉城县', '凉城', '112.50091', '40.531628', 3, 0, 1), +(150926, 150900, '察哈尔右翼前旗', '察哈尔右翼前', '113.21196', '40.786858', 3, 0, 1), +(150927, 150900, '察哈尔右翼中旗', '察哈尔右翼中', '112.63356', '41.27421', 3, 0, 1), +(150928, 150900, '察哈尔右翼后旗', '察哈尔右翼后', '113.1906', '41.447212', 3, 0, 1), +(150929, 150900, '四子王旗', '四子王', '111.70123', '41.528114', 3, 0, 1), +(150981, 150900, '丰镇市', '丰镇', '113.16346', '40.437534', 3, 0, 1), +(152200, 150000, '兴安盟', '兴安', '122.07032', '46.076267', 2, 0, 1), +(152201, 152200, '乌兰浩特市', '乌兰浩特', '122.06898', '46.077236', 3, 0, 1), +(152202, 152200, '阿尔山市', '阿尔山', '119.94366', '47.177', 3, 0, 1), +(152221, 152200, '科尔沁右翼前旗', '科尔沁右翼前', '121.95754', '46.076496', 3, 0, 1), +(152222, 152200, '科尔沁右翼中旗', '科尔沁右翼中', '121.47282', '45.059647', 3, 0, 1), +(152223, 152200, '扎赉特旗', '扎赉特', '122.90933', '46.725136', 3, 0, 1), +(152224, 152200, '突泉县', '突泉', '121.56486', '45.380985', 3, 0, 1), +(152500, 150000, '锡林郭勒盟', '锡林郭勒', '116.090996', '43.94402', 2, 0, 1), +(152501, 152500, '二连浩特市', '二连浩特', '111.97981', '43.652897', 3, 0, 1), +(152502, 152500, '锡林浩特市', '锡林浩特', '116.0919', '43.9443', 3, 0, 1), +(152522, 152500, '阿巴嘎旗', '阿巴嘎', '114.97062', '44.022728', 3, 0, 1), +(152523, 152500, '苏尼特左旗', '苏尼特左', '113.65341', '43.854107', 3, 0, 1), +(152524, 152500, '苏尼特右旗', '苏尼特右', '112.65539', '42.746662', 3, 0, 1), +(152525, 152500, '东乌珠穆沁旗', '东乌珠穆沁', '116.98002', '45.510307', 3, 0, 1), +(152526, 152500, '西乌珠穆沁旗', '西乌珠穆沁', '117.61525', '44.586147', 3, 0, 1), +(152527, 152500, '太仆寺旗', '太仆寺', '115.28728', '41.8952', 3, 0, 1), +(152528, 152500, '镶黄旗', '镶黄', '113.84387', '42.239227', 3, 0, 1), +(152529, 152500, '正镶白旗', '正镶白', '115.031425', '42.286808', 3, 0, 1), +(152530, 152500, '正蓝旗', '正蓝', '116.00331', '42.245895', 3, 0, 1), +(152531, 152500, '多伦县', '多伦', '116.47729', '42.197964', 3, 0, 1), +(152900, 150000, '阿拉善盟', '阿拉善', '105.70642', '38.844814', 2, 0, 1), +(152921, 152900, '阿拉善左旗', '阿拉善左', '105.70192', '38.84724', 3, 0, 1), +(152922, 152900, '阿拉善右旗', '阿拉善右', '101.67198', '39.21159', 3, 0, 1), +(152923, 152900, '额济纳旗', '额济纳', '101.06944', '41.958813', 3, 0, 1), +(210000, 0, '辽宁省', '辽宁', '123.42909', '41.79677', 1, 0, 1), +(210100, 210000, '沈阳市', '沈阳', '123.42909', '41.79677', 2, 0, 1), +(210102, 210100, '和平区', '和平', '123.40666', '41.788074', 3, 0, 1), +(210103, 210100, '沈河区', '沈河', '123.445694', '41.79559', 3, 0, 1), +(210104, 210100, '大东区', '大东', '123.469955', '41.808502', 3, 0, 1), +(210105, 210100, '皇姑区', '皇姑', '123.40568', '41.822334', 3, 0, 1), +(210106, 210100, '铁西区', '铁西', '123.35066', '41.787807', 3, 0, 1), +(210111, 210100, '苏家屯区', '苏家屯', '123.341606', '41.665905', 3, 0, 1), +(210112, 210100, '浑南区', '东陵', '123.458984', '41.741947', 3, 0, 1), +(210113, 210100, '沈北新区', '沈北新', '123.58424', '41.91303', 3, 0, 1), +(210114, 210100, '于洪区', '于洪', '123.31083', '41.795834', 3, 0, 1), +(210115, 210100, '辽中区', '辽中', '122.76549', '41.51685', 3, 0, 1), +(210123, 210100, '康平县', '康平', '123.3527', '42.74153', 3, 0, 1), +(210124, 210100, '法库县', '法库', '123.416725', '42.507046', 3, 0, 1), +(210181, 210100, '新民市', '新民', '122.828865', '41.99651', 3, 0, 1), +(210200, 210000, '大连市', '大连', '121.61862', '38.91459', 2, 0, 1), +(210202, 210200, '中山区', '中山', '121.64376', '38.921555', 3, 0, 1), +(210203, 210200, '西岗区', '西岗', '121.61611', '38.914265', 3, 0, 1), +(210204, 210200, '沙河口区', '沙河口', '121.593704', '38.91286', 3, 0, 1), +(210211, 210200, '甘井子区', '甘井子', '121.58261', '38.975147', 3, 0, 1), +(210212, 210200, '旅顺口区', '旅顺口', '121.26713', '38.812042', 3, 0, 1), +(210213, 210200, '金州区', '金州', '121.78941', '39.052746', 3, 0, 1), +(210214, 210200, '普兰店区', '普兰店', '121.96323', '39.39443', 3, 0, 1), +(210224, 210200, '长海县', '长海', '122.58782', '39.2724', 3, 0, 1), +(210281, 210200, '瓦房店市', '瓦房店', '122.002655', '39.63065', 3, 0, 1), +(210283, 210200, '庄河市', '庄河', '122.97061', '39.69829', 3, 0, 1), +(210300, 210000, '鞍山市', '鞍山', '122.99563', '41.110626', 2, 0, 1), +(210302, 210300, '铁东区', '铁东', '122.99448', '41.110344', 3, 0, 1), +(210303, 210300, '铁西区', '铁西', '122.97183', '41.11069', 3, 0, 1), +(210304, 210300, '立山区', '立山', '123.0248', '41.150623', 3, 0, 1), +(210311, 210300, '千山区', '千山', '122.95788', '41.07072', 3, 0, 1), +(210321, 210300, '台安县', '台安', '122.42973', '41.38686', 3, 0, 1), +(210323, 210300, '岫岩满族自治县', '岫岩', '123.28833', '40.28151', 3, 0, 1), +(210381, 210300, '海城市', '海城', '122.7522', '40.85253', 3, 0, 1), +(210400, 210000, '抚顺市', '抚顺', '123.92111', '41.875957', 2, 0, 1), +(210402, 210400, '新抚区', '新抚', '123.902855', '41.86082', 3, 0, 1), +(210403, 210400, '东洲区', '东洲', '124.04722', '41.86683', 3, 0, 1), +(210404, 210400, '望花区', '望花', '123.801506', '41.851803', 3, 0, 1), +(210411, 210400, '顺城区', '顺城', '123.91717', '41.88113', 3, 0, 1), +(210421, 210400, '抚顺县', '抚顺', '124.09798', '41.922646', 3, 0, 1), +(210422, 210400, '新宾满族自治县', '新宾', '125.037544', '41.732456', 3, 0, 1), +(210423, 210400, '清原满族自治县', '清原', '124.92719', '42.10135', 3, 0, 1), +(210500, 210000, '本溪市', '本溪', '123.770515', '41.29791', 2, 0, 1), +(210502, 210500, '平山区', '平山', '123.76123', '41.29158', 3, 0, 1), +(210503, 210500, '溪湖区', '溪湖', '123.76523', '41.330055', 3, 0, 1), +(210504, 210500, '明山区', '明山', '123.76329', '41.30243', 3, 0, 1), +(210505, 210500, '南芬区', '南芬', '123.74838', '41.10409', 3, 0, 1), +(210521, 210500, '本溪满族自治县', '本溪', '124.12616', '41.300343', 3, 0, 1), +(210522, 210500, '桓仁满族自治县', '桓仁', '125.35919', '41.268997', 3, 0, 1), +(210600, 210000, '丹东市', '丹东', '124.38304', '40.124294', 2, 0, 1), +(210602, 210600, '元宝区', '元宝', '124.39781', '40.136482', 3, 0, 1), +(210603, 210600, '振兴区', '振兴', '124.36115', '40.102802', 3, 0, 1), +(210604, 210600, '振安区', '振安', '124.42771', '40.158558', 3, 0, 1), +(210624, 210600, '宽甸满族自治县', '宽甸', '124.78487', '40.73041', 3, 0, 1), +(210681, 210600, '东港市', '东港', '124.14944', '39.88347', 3, 0, 1), +(210682, 210600, '凤城市', '凤城', '124.07107', '40.457565', 3, 0, 1), +(210700, 210000, '锦州市', '锦州', '121.13574', '41.11927', 2, 0, 1), +(210702, 210700, '古塔区', '古塔', '121.13009', '41.11572', 3, 0, 1), +(210703, 210700, '凌河区', '凌河', '121.151306', '41.114662', 3, 0, 1), +(210711, 210700, '太和区', '太和', '121.1073', '41.105377', 3, 0, 1), +(210726, 210700, '黑山县', '黑山', '122.11791', '41.691803', 3, 0, 1), +(210727, 210700, '义县', '义县', '121.24283', '41.537224', 3, 0, 1), +(210781, 210700, '凌海市', '凌海', '121.364235', '41.171738', 3, 0, 1), +(210782, 210700, '北镇市', '北镇', '121.79596', '41.598763', 3, 0, 1), +(210800, 210000, '营口市', '营口', '122.23515', '40.66743', 2, 0, 1), +(210802, 210800, '站前区', '站前', '122.253235', '40.66995', 3, 0, 1), +(210803, 210800, '西市区', '西市', '122.21007', '40.663086', 3, 0, 1), +(210804, 210800, '鲅鱼圈区', '鲅鱼圈', '122.12724', '40.263645', 3, 0, 1), +(210811, 210800, '老边区', '老边', '122.38258', '40.682724', 3, 0, 1), +(210881, 210800, '盖州市', '盖州', '122.35554', '40.405235', 3, 0, 1), +(210882, 210800, '大石桥市', '大石桥', '122.5059', '40.633972', 3, 0, 1), +(210900, 210000, '阜新市', '阜新', '121.648964', '42.011795', 2, 0, 1), +(210902, 210900, '海州区', '海州', '121.65764', '42.01116', 3, 0, 1), +(210903, 210900, '新邱区', '新邱', '121.79054', '42.0866', 3, 0, 1), +(210904, 210900, '太平区', '太平', '121.677574', '42.011147', 3, 0, 1), +(210905, 210900, '清河门区', '清河门', '121.42018', '41.780476', 3, 0, 1), +(210911, 210900, '细河区', '细河', '121.65479', '42.01922', 3, 0, 1), +(210921, 210900, '阜新蒙古族自治县', '阜新', '121.743126', '42.058605', 3, 0, 1), +(210922, 210900, '彰武县', '彰武', '122.537445', '42.384823', 3, 0, 1), +(211000, 210000, '辽阳市', '辽阳', '123.18152', '41.2694', 2, 0, 1), +(211002, 211000, '白塔区', '白塔', '123.17261', '41.26745', 3, 0, 1), +(211003, 211000, '文圣区', '文圣', '123.188225', '41.266766', 3, 0, 1), +(211004, 211000, '宏伟区', '宏伟', '123.20046', '41.205746', 3, 0, 1), +(211005, 211000, '弓长岭区', '弓长岭', '123.43163', '41.15783', 3, 0, 1), +(211011, 211000, '太子河区', '太子河', '123.18533', '41.251682', 3, 0, 1), +(211021, 211000, '辽阳县', '辽阳', '123.07967', '41.21648', 3, 0, 1), +(211081, 211000, '灯塔市', '灯塔', '123.32587', '41.427837', 3, 0, 1), +(211100, 210000, '盘锦市', '盘锦', '122.06957', '41.124485', 2, 0, 1), +(211102, 211100, '双台子区', '双台子', '122.05573', '41.190365', 3, 0, 1), +(211103, 211100, '兴隆台区', '兴隆台', '122.071625', '41.12242', 3, 0, 1), +(211104, 211100, '大洼区', '大洼', '122.08245', '41.00247', 3, 0, 1), +(211122, 211100, '盘山县', '盘山', '121.98528', '41.2407', 3, 0, 1), +(211200, 210000, '铁岭市', '铁岭', '123.84428', '42.290585', 2, 0, 1), +(211202, 211200, '银州区', '银州', '123.84488', '42.29228', 3, 0, 1), +(211204, 211200, '清河区', '清河', '124.14896', '42.542976', 3, 0, 1), +(211221, 211200, '铁岭县', '铁岭', '123.72567', '42.223316', 3, 0, 1), +(211223, 211200, '西丰县', '西丰', '124.72332', '42.73809', 3, 0, 1), +(211224, 211200, '昌图县', '昌图', '124.11017', '42.784443', 3, 0, 1), +(211281, 211200, '调兵山市', '调兵山', '123.545364', '42.450733', 3, 0, 1), +(211282, 211200, '开原市', '开原', '124.04555', '42.54214', 3, 0, 1), +(211300, 210000, '朝阳市', '朝阳', '120.45118', '41.57676', 2, 0, 1), +(211302, 211300, '双塔区', '双塔', '120.44877', '41.579388', 3, 0, 1), +(211303, 211300, '龙城区', '龙城', '120.413376', '41.576748', 3, 0, 1), +(211321, 211300, '朝阳县', '朝阳', '120.40422', '41.52634', 3, 0, 1), +(211322, 211300, '建平县', '建平', '119.642365', '41.402576', 3, 0, 1), +(211324, 211300, '喀喇沁左翼蒙古族自治县', '喀左', '119.74488', '41.125427', 3, 0, 1), +(211381, 211300, '北票市', '北票', '120.76695', '41.803288', 3, 0, 1), +(211382, 211300, '凌源市', '凌源', '119.40479', '41.243088', 3, 0, 1), +(211400, 210000, '葫芦岛市', '葫芦岛', '120.85639', '40.755573', 2, 0, 1), +(211402, 211400, '连山区', '连山', '120.85937', '40.755142', 3, 0, 1), +(211403, 211400, '龙港区', '龙港', '120.83857', '40.70999', 3, 0, 1), +(211404, 211400, '南票区', '南票', '120.75231', '41.098812', 3, 0, 1), +(211421, 211400, '绥中县', '绥中', '120.34211', '40.328407', 3, 0, 1), +(211422, 211400, '建昌县', '建昌', '119.80778', '40.81287', 3, 0, 1), +(211481, 211400, '兴城市', '兴城', '120.72936', '40.61941', 3, 0, 1), +(220000, 0, '吉林省', '吉林', '125.3245', '43.88684', 1, 0, 1), +(220100, 220000, '长春市', '长春', '125.3245', '43.88684', 2, 0, 1), +(220102, 220100, '南关区', '南关', '125.337234', '43.890236', 3, 0, 1), +(220103, 220100, '宽城区', '宽城', '125.34283', '43.903824', 3, 0, 1), +(220104, 220100, '朝阳区', '朝阳', '125.31804', '43.86491', 3, 0, 1), +(220105, 220100, '二道区', '二道', '125.38473', '43.870823', 3, 0, 1), +(220106, 220100, '绿园区', '绿园', '125.27247', '43.892178', 3, 0, 1), +(220112, 220100, '双阳区', '双阳', '125.65902', '43.52517', 3, 0, 1), +(220113, 220100, '九台区', '九台', '125.83949', '44.15174', 3, 0, 1), +(220122, 220100, '农安县', '农安', '125.175285', '44.43126', 3, 0, 1), +(220182, 220100, '榆树市', '榆树', '126.55011', '44.82764', 3, 0, 1), +(220183, 220100, '德惠市', '德惠', '125.70332', '44.53391', 3, 0, 1), +(220184, 220100, '公主岭市', '公主岭', '', '', 3, 0, 1), +(220200, 220000, '吉林市', '吉林', '126.55302', '43.84358', 2, 0, 1), +(220202, 220200, '昌邑区', '昌邑', '126.57076', '43.851116', 3, 0, 1), +(220203, 220200, '龙潭区', '龙潭', '126.56143', '43.909756', 3, 0, 1), +(220204, 220200, '船营区', '船营', '126.55239', '43.843803', 3, 0, 1), +(220211, 220200, '丰满区', '丰满', '126.56076', '43.816593', 3, 0, 1), +(220221, 220200, '永吉县', '永吉', '126.501625', '43.667416', 3, 0, 1), +(220281, 220200, '蛟河市', '蛟河', '127.342735', '43.720577', 3, 0, 1), +(220282, 220200, '桦甸市', '桦甸', '126.745445', '42.97209', 3, 0, 1), +(220283, 220200, '舒兰市', '舒兰', '126.947815', '44.410908', 3, 0, 1), +(220284, 220200, '磐石市', '磐石', '126.05993', '42.942474', 3, 0, 1), +(220300, 220000, '四平市', '四平', '124.37079', '43.170345', 2, 0, 1), +(220302, 220300, '铁西区', '铁西', '124.36089', '43.17626', 3, 0, 1), +(220303, 220300, '铁东区', '铁东', '124.388466', '43.16726', 3, 0, 1), +(220322, 220300, '梨树县', '梨树', '124.3358', '43.30831', 3, 0, 1), +(220323, 220300, '伊通满族自治县', '伊通', '125.30312', '43.345463', 3, 0, 1), +(220382, 220300, '双辽市', '双辽', '123.50528', '43.518276', 3, 0, 1), +(220400, 220000, '辽源市', '辽源', '125.14535', '42.90269', 2, 0, 1), +(220402, 220400, '龙山区', '龙山', '125.145164', '42.902702', 3, 0, 1), +(220403, 220400, '西安区', '西安', '125.15142', '42.920414', 3, 0, 1), +(220421, 220400, '东丰县', '东丰', '125.529625', '42.67523', 3, 0, 1), +(220422, 220400, '东辽县', '东辽', '124.992', '42.927723', 3, 0, 1), +(220500, 220000, '通化市', '通化', '125.9365', '41.721176', 2, 0, 1), +(220502, 220500, '东昌区', '东昌', '125.936714', '41.721233', 3, 0, 1), +(220503, 220500, '二道江区', '二道江', '126.04599', '41.777565', 3, 0, 1), +(220521, 220500, '通化县', '通化', '125.75312', '41.677917', 3, 0, 1), +(220523, 220500, '辉南县', '辉南', '126.04282', '42.68346', 3, 0, 1), +(220524, 220500, '柳河县', '柳河', '125.74054', '42.281483', 3, 0, 1), +(220581, 220500, '梅河口市', '梅河口', '125.68734', '42.530003', 3, 0, 1), +(220582, 220500, '集安市', '集安', '126.1862', '41.126274', 3, 0, 1), +(220600, 220000, '白山市', '白山', '126.42784', '41.942505', 2, 0, 1), +(220602, 220600, '浑江区', '浑江', '126.42803', '41.943066', 3, 0, 1), +(220605, 220600, '江源区', '江源', '126.59088', '42.05665', 3, 0, 1), +(220621, 220600, '抚松县', '抚松', '127.273796', '42.33264', 3, 0, 1), +(220622, 220600, '靖宇县', '靖宇', '126.80839', '42.38969', 3, 0, 1), +(220623, 220600, '长白朝鲜族自治县', '长白', '128.20338', '41.41936', 3, 0, 1), +(220681, 220600, '临江市', '临江', '126.9193', '41.810688', 3, 0, 1), +(220700, 220000, '松原市', '松原', '124.82361', '45.118244', 2, 0, 1), +(220702, 220700, '宁江区', '宁江', '124.82785', '45.1765', 3, 0, 1), +(220721, 220700, '前郭尔罗斯蒙古族自治县', '前郭', '124.826805', '45.116287', 3, 0, 1), +(220722, 220700, '长岭县', '长岭', '123.98518', '44.27658', 3, 0, 1), +(220723, 220700, '乾安县', '乾安', '124.02436', '45.006847', 3, 0, 1), +(220781, 220700, '扶余市', '扶余', '126.04972', '44.99014', 3, 0, 1), +(220800, 220000, '白城市', '白城', '122.84111', '45.619026', 2, 0, 1), +(220802, 220800, '洮北区', '洮北', '122.8425', '45.61925', 3, 0, 1), +(220821, 220800, '镇赉县', '镇赉', '123.20225', '45.84609', 3, 0, 1), +(220822, 220800, '通榆县', '通榆', '123.08855', '44.80915', 3, 0, 1), +(220881, 220800, '洮南市', '洮南', '122.783775', '45.33911', 3, 0, 1), +(220882, 220800, '大安市', '大安', '124.29151', '45.50765', 3, 0, 1), +(222400, 220000, '延边朝鲜族自治州', '延边朝鲜族', '129.51323', '42.904823', 2, 0, 1), +(222401, 222400, '延吉市', '延吉', '129.5158', '42.906963', 3, 0, 1), +(222402, 222400, '图们市', '图们', '129.8467', '42.96662', 3, 0, 1), +(222403, 222400, '敦化市', '敦化', '128.22986', '43.36692', 3, 0, 1), +(222404, 222400, '珲春市', '珲春', '130.36578', '42.871056', 3, 0, 1), +(222405, 222400, '龙井市', '龙井', '129.42575', '42.77103', 3, 0, 1), +(222406, 222400, '和龙市', '和龙', '129.00874', '42.547005', 3, 0, 1), +(222424, 222400, '汪清县', '汪清', '129.76616', '43.315426', 3, 0, 1), +(222426, 222400, '安图县', '安图', '128.90187', '43.110992', 3, 0, 1), +(230000, 0, '黑龙江省', '黑龙江', '126.64246', '45.756966', 1, 0, 1), +(230100, 230000, '哈尔滨市', '哈尔滨', '126.64246', '45.756966', 2, 0, 1), +(230102, 230100, '道里区', '道里', '126.61253', '45.762035', 3, 0, 1), +(230103, 230100, '南岗区', '南岗', '126.6521', '45.75597', 3, 0, 1), +(230104, 230100, '道外区', '道外', '126.648834', '45.78454', 3, 0, 1), +(230108, 230100, '平房区', '平房', '126.62926', '45.605568', 3, 0, 1), +(230109, 230100, '松北区', '松北', '126.563065', '45.814655', 3, 0, 1), +(230110, 230100, '香坊区', '香坊', '126.66287', '45.70847', 3, 0, 1), +(230111, 230100, '呼兰区', '呼兰', '126.6033', '45.98423', 3, 0, 1), +(230112, 230100, '阿城区', '阿城', '126.95717', '45.54774', 3, 0, 1), +(230113, 230100, '双城区', '双城', '126.31227', '45.38355', 3, 0, 1), +(230123, 230100, '依兰县', '依兰', '129.5656', '46.315105', 3, 0, 1), +(230124, 230100, '方正县', '方正', '128.83614', '45.839535', 3, 0, 1), +(230125, 230100, '宾县', '宾县', '127.48594', '45.75937', 3, 0, 1), +(230126, 230100, '巴彦县', '巴彦', '127.4036', '46.08189', 3, 0, 1), +(230127, 230100, '木兰县', '木兰', '128.04268', '45.949825', 3, 0, 1), +(230128, 230100, '通河县', '通河', '128.74779', '45.97762', 3, 0, 1), +(230129, 230100, '延寿县', '延寿', '128.33188', '45.455647', 3, 0, 1), +(230183, 230100, '尚志市', '尚志', '127.96854', '45.214954', 3, 0, 1), +(230184, 230100, '五常市', '五常', '127.15759', '44.91942', 3, 0, 1), +(230200, 230000, '齐齐哈尔市', '齐齐哈尔', '123.95792', '47.34208', 2, 0, 1), +(230202, 230200, '龙沙区', '龙沙', '123.95734', '47.341736', 3, 0, 1), +(230203, 230200, '建华区', '建华', '123.95589', '47.354492', 3, 0, 1), +(230204, 230200, '铁锋区', '铁锋', '123.97356', '47.3395', 3, 0, 1), +(230205, 230200, '昂昂溪区', '昂昂溪', '123.81318', '47.156868', 3, 0, 1), +(230206, 230200, '富拉尔基区', '富拉尔基', '123.63887', '47.20697', 3, 0, 1), +(230207, 230200, '碾子山区', '碾子山', '122.88797', '47.51401', 3, 0, 1), +(230208, 230200, '梅里斯达斡尔族区', '梅里斯达斡尔族', '123.7546', '47.31111', 3, 0, 1), +(230221, 230200, '龙江县', '龙江', '123.187225', '47.336388', 3, 0, 1), +(230223, 230200, '依安县', '依安', '125.30756', '47.8901', 3, 0, 1), +(230224, 230200, '泰来县', '泰来', '123.41953', '46.39233', 3, 0, 1), +(230225, 230200, '甘南县', '甘南', '123.506035', '47.91784', 3, 0, 1), +(230227, 230200, '富裕县', '富裕', '124.46911', '47.797173', 3, 0, 1), +(230229, 230200, '克山县', '克山', '125.87435', '48.034344', 3, 0, 1), +(230230, 230200, '克东县', '克东', '126.24909', '48.03732', 3, 0, 1), +(230231, 230200, '拜泉县', '拜泉', '126.09191', '47.607365', 3, 0, 1), +(230281, 230200, '讷河市', '讷河', '124.88217', '48.481133', 3, 0, 1), +(230300, 230000, '鸡西市', '鸡西', '130.97597', '45.300045', 2, 0, 1), +(230302, 230300, '鸡冠区', '鸡冠', '130.97438', '45.30034', 3, 0, 1), +(230303, 230300, '恒山区', '恒山', '130.91063', '45.21324', 3, 0, 1), +(230304, 230300, '滴道区', '滴道', '130.84682', '45.348812', 3, 0, 1), +(230305, 230300, '梨树区', '梨树', '130.69778', '45.092194', 3, 0, 1), +(230306, 230300, '城子河区', '城子河', '131.0105', '45.33825', 3, 0, 1), +(230307, 230300, '麻山区', '麻山', '130.48112', '45.209606', 3, 0, 1), +(230321, 230300, '鸡东县', '鸡东', '131.14891', '45.250893', 3, 0, 1), +(230381, 230300, '虎林市', '虎林', '132.97388', '45.767986', 3, 0, 1), +(230382, 230300, '密山市', '密山', '131.87413', '45.54725', 3, 0, 1), +(230400, 230000, '鹤岗市', '鹤岗', '130.27748', '47.332085', 2, 0, 1), +(230402, 230400, '向阳区', '向阳', '130.29248', '47.34537', 3, 0, 1), +(230403, 230400, '工农区', '工农', '130.27666', '47.331676', 3, 0, 1), +(230404, 230400, '南山区', '南山', '130.27553', '47.31324', 3, 0, 1), +(230405, 230400, '兴安区', '兴安', '130.23618', '47.25291', 3, 0, 1), +(230406, 230400, '东山区', '东山', '130.31714', '47.337383', 3, 0, 1), +(230407, 230400, '兴山区', '兴山', '130.30534', '47.35997', 3, 0, 1), +(230421, 230400, '萝北县', '萝北', '130.82909', '47.577576', 3, 0, 1), +(230422, 230400, '绥滨县', '绥滨', '131.86052', '47.28989', 3, 0, 1), +(230500, 230000, '双鸭山市', '双鸭山', '131.1573', '46.64344', 2, 0, 1), +(230502, 230500, '尖山区', '尖山', '131.15897', '46.64296', 3, 0, 1), +(230503, 230500, '岭东区', '岭东', '131.16368', '46.591076', 3, 0, 1), +(230505, 230500, '四方台区', '四方台', '131.33318', '46.594345', 3, 0, 1), +(230506, 230500, '宝山区', '宝山', '131.4043', '46.573364', 3, 0, 1), +(230521, 230500, '集贤县', '集贤', '131.13933', '46.72898', 3, 0, 1), +(230522, 230500, '友谊县', '友谊', '131.81062', '46.775158', 3, 0, 1), +(230523, 230500, '宝清县', '宝清', '132.20642', '46.32878', 3, 0, 1), +(230524, 230500, '饶河县', '饶河', '134.02116', '46.80129', 3, 0, 1), +(230600, 230000, '大庆市', '大庆', '125.11272', '46.590733', 2, 0, 1), +(230602, 230600, '萨尔图区', '萨尔图', '125.11464', '46.596355', 3, 0, 1), +(230603, 230600, '龙凤区', '龙凤', '125.1458', '46.573948', 3, 0, 1), +(230604, 230600, '让胡路区', '让胡路', '124.86834', '46.653255', 3, 0, 1), +(230605, 230600, '红岗区', '红岗', '124.88953', '46.40305', 3, 0, 1), +(230606, 230600, '大同区', '大同', '124.81851', '46.034306', 3, 0, 1), +(230621, 230600, '肇州县', '肇州', '125.273254', '45.708687', 3, 0, 1), +(230622, 230600, '肇源县', '肇源', '125.08197', '45.518833', 3, 0, 1), +(230623, 230600, '林甸县', '林甸', '124.87774', '47.186413', 3, 0, 1), +(230624, 230600, '杜尔伯特蒙古族自治县', '杜尔伯特', '124.44626', '46.865974', 3, 0, 1), +(230700, 230000, '伊春市', '伊春', '128.8994', '47.724773', 2, 0, 1), +(230717, 230700, '伊美区', '伊美', '128.907302', '47.728208', 3, 0, 1), +(230718, 230700, '乌翠区', '乌翠', '128.66945', '47.726495', 3, 0, 1), +(230719, 230700, '友好区', '友好', '128.84071', '47.8538', 3, 0, 1), +(230722, 230700, '嘉荫县', '嘉荫', '130.39769', '48.891376', 3, 0, 1), +(230723, 230700, '汤旺县', '汤旺', '129.570968', '48.454691', 3, 0, 1), +(230724, 230700, '丰林县', '丰林', '129.53362', '48.29045', 3, 0, 1), +(230725, 230700, '大箐山县', '大箐山', '129.02057', '47.02834', 3, 0, 1), +(230726, 230700, '南岔县', '南岔', '129.28365', '47.13799', 3, 0, 1), +(230751, 230700, '金林区', '金林', '129.42899', '47.41303', 3, 0, 1), +(230781, 230700, '铁力市', '铁力', '128.03056', '46.98577', 3, 0, 1), +(230800, 230000, '佳木斯市', '佳木斯', '130.36163', '46.809605', 2, 0, 1), +(230803, 230800, '向阳区', '向阳', '130.36179', '46.809647', 3, 0, 1), +(230804, 230800, '前进区', '前进', '130.37769', '46.812344', 3, 0, 1), +(230805, 230800, '东风区', '东风', '130.40329', '46.822475', 3, 0, 1), +(230811, 230800, '郊区', '郊区', '130.36163', '46.809605', 3, 0, 1), +(230822, 230800, '桦南县', '桦南', '130.57011', '46.240116', 3, 0, 1), +(230826, 230800, '桦川县', '桦川', '130.72371', '47.02304', 3, 0, 1), +(230828, 230800, '汤原县', '汤原', '129.90446', '46.73005', 3, 0, 1), +(230881, 230800, '同江市', '同江', '132.51012', '47.65113', 3, 0, 1), +(230882, 230800, '富锦市', '富锦', '132.03795', '47.250748', 3, 0, 1), +(230883, 230800, '抚远市', '抚远', '134.30795', '48.36485', 3, 0, 1), +(230900, 230000, '七台河市', '七台河', '131.01558', '45.771267', 2, 0, 1), +(230902, 230900, '新兴区', '新兴', '130.88948', '45.79426', 3, 0, 1), +(230903, 230900, '桃山区', '桃山', '131.01585', '45.771217', 3, 0, 1), +(230904, 230900, '茄子河区', '茄子河', '131.07156', '45.77659', 3, 0, 1), +(230921, 230900, '勃利县', '勃利', '130.57503', '45.75157', 3, 0, 1), +(231000, 230000, '牡丹江市', '牡丹江', '129.6186', '44.582962', 2, 0, 1), +(231002, 231000, '东安区', '东安', '129.62329', '44.582397', 3, 0, 1), +(231003, 231000, '阳明区', '阳明', '129.63464', '44.59633', 3, 0, 1), +(231004, 231000, '爱民区', '爱民', '129.60123', '44.595444', 3, 0, 1), +(231005, 231000, '西安区', '西安', '129.61311', '44.58103', 3, 0, 1), +(231025, 231000, '林口县', '林口', '130.2684', '45.286644', 3, 0, 1), +(231081, 231000, '绥芬河市', '绥芬河', '131.16486', '44.396866', 3, 0, 1), +(231083, 231000, '海林市', '海林', '129.38791', '44.57415', 3, 0, 1), +(231084, 231000, '宁安市', '宁安', '129.47002', '44.346836', 3, 0, 1), +(231085, 231000, '穆棱市', '穆棱', '130.52708', '44.91967', 3, 0, 1), +(231086, 231000, '东宁市', '东宁', '131.12463', '44.08694', 3, 0, 1), +(231100, 230000, '黑河市', '黑河', '127.49902', '50.249584', 2, 0, 1), +(231102, 231100, '爱辉区', '爱辉', '127.49764', '50.249027', 3, 0, 1), +(231123, 231100, '逊克县', '逊克', '128.47615', '49.582973', 3, 0, 1), +(231124, 231100, '孙吴县', '孙吴', '127.32732', '49.423943', 3, 0, 1), +(231181, 231100, '北安市', '北安', '126.508736', '48.245438', 3, 0, 1), +(231182, 231100, '五大连池市', '五大连池', '126.19769', '48.512688', 3, 0, 1), +(231183, 231100, '嫩江市', '嫩江', '125.22094', '49.18572', 3, 0, 1), +(231200, 230000, '绥化市', '绥化', '126.99293', '46.637394', 2, 0, 1), +(231202, 231200, '北林区', '北林', '126.99066', '46.63491', 3, 0, 1), +(231221, 231200, '望奎县', '望奎', '126.48419', '46.83352', 3, 0, 1), +(231222, 231200, '兰西县', '兰西', '126.289314', '46.259037', 3, 0, 1), +(231223, 231200, '青冈县', '青冈', '126.11227', '46.686596', 3, 0, 1), +(231224, 231200, '庆安县', '庆安', '127.510025', '46.879204', 3, 0, 1), +(231225, 231200, '明水县', '明水', '125.90755', '47.18353', 3, 0, 1), +(231226, 231200, '绥棱县', '绥棱', '127.11112', '47.247196', 3, 0, 1), +(231281, 231200, '安达市', '安达', '125.329926', '46.410614', 3, 0, 1), +(231282, 231200, '肇东市', '肇东', '125.9914', '46.06947', 3, 0, 1), +(231283, 231200, '海伦市', '海伦', '126.96938', '47.460426', 3, 0, 1), +(232700, 230000, '大兴安岭地区', '大兴安岭', '124.711525', '52.335262', 2, 0, 1), +(232701, 232700, '漠河市', '漠河', '122.53864', '52.97209', 3, 0, 1), +(232721, 232700, '呼玛县', '呼玛', '126.6621', '51.726997', 3, 0, 1), +(232722, 232700, '塔河县', '塔河', '124.71052', '52.335228', 3, 0, 1), +(310000, 0, '上海市', '上海', '121.47264', '31.231707', 1, 0, 1), +(310100, 310000, '上海市', '上海', '121.47264', '31.231707', 2, 0, 1), +(310101, 310100, '黄浦区', '黄浦', '121.49032', '31.22277', 3, 0, 1), +(310104, 310100, '徐汇区', '徐汇', '121.43752', '31.179974', 3, 0, 1), +(310105, 310100, '长宁区', '长宁', '121.4222', '31.218122', 3, 0, 1), +(310106, 310100, '静安区', '静安', '121.44823', '31.229004', 3, 0, 1), +(310107, 310100, '普陀区', '普陀', '121.3925', '31.241701', 3, 0, 1), +(310109, 310100, '虹口区', '虹口', '121.49183', '31.26097', 3, 0, 1), +(310110, 310100, '杨浦区', '杨浦', '121.5228', '31.270756', 3, 0, 1), +(310112, 310100, '闵行区', '闵行', '121.37597', '31.111658', 3, 0, 1), +(310113, 310100, '宝山区', '宝山', '121.48994', '31.398895', 3, 0, 1), +(310114, 310100, '嘉定区', '嘉定', '121.250336', '31.383524', 3, 0, 1), +(310115, 310100, '浦东新区', '浦东', '121.5677', '31.245943', 3, 0, 1), +(310116, 310100, '金山区', '金山', '121.330734', '30.724697', 3, 0, 1), +(310117, 310100, '松江区', '松江', '121.22354', '31.03047', 3, 0, 1), +(310118, 310100, '青浦区', '青浦', '121.11302', '31.151209', 3, 0, 1), +(310120, 310100, '奉贤区', '奉贤', '121.45847', '30.912346', 3, 0, 1), +(310151, 310100, '崇明区', '崇明', '121.3973', '31.6229', 3, 0, 1), +(320000, 0, '江苏省', '江苏', '118.76741', '32.041546', 1, 0, 1), +(320100, 320000, '南京市', '南京', '118.76741', '32.041546', 2, 0, 1), +(320102, 320100, '玄武区', '玄武', '118.7922', '32.05068', 3, 0, 1), +(320104, 320100, '秦淮区', '秦淮', '118.78609', '32.033817', 3, 0, 1), +(320105, 320100, '建邺区', '建邺', '118.73269', '32.00454', 3, 0, 1), +(320106, 320100, '鼓楼区', '鼓楼', '118.76974', '32.066967', 3, 0, 1), +(320111, 320100, '浦口区', '浦口', '118.625305', '32.05839', 3, 0, 1), +(320113, 320100, '栖霞区', '栖霞', '118.8087', '32.102146', 3, 0, 1), +(320114, 320100, '雨花台区', '雨花台', '118.77207', '31.995947', 3, 0, 1), +(320115, 320100, '江宁区', '江宁', '118.850624', '31.953419', 3, 0, 1), +(320116, 320100, '六合区', '六合', '118.85065', '32.340656', 3, 0, 1), +(320117, 320100, '溧水区', '溧水', '119.0284', '31.651', 3, 0, 1), +(320118, 320100, '高淳区', '高淳', '118.8921', '31.32751', 3, 0, 1), +(320200, 320000, '无锡市', '无锡', '120.30167', '31.57473', 2, 0, 1), +(320205, 320200, '锡山区', '锡山', '120.3573', '31.58556', 3, 0, 1), +(320206, 320200, '惠山区', '惠山', '120.30354', '31.681019', 3, 0, 1), +(320211, 320200, '滨湖区', '滨湖', '120.26605', '31.550228', 3, 0, 1), +(320213, 320200, '梁溪区', '梁溪', '120.30297', '31.56597', 3, 0, 1), +(320214, 320200, '新吴区', '新吴', '120.36434', '31.49055', 3, 0, 1), +(320281, 320200, '江阴市', '江阴', '120.275894', '31.910984', 3, 0, 1), +(320282, 320200, '宜兴市', '宜兴', '119.82054', '31.364384', 3, 0, 1), +(320300, 320000, '徐州市', '徐州', '117.184814', '34.26179', 2, 0, 1), +(320302, 320300, '鼓楼区', '鼓楼', '117.19294', '34.269398', 3, 0, 1), +(320303, 320300, '云龙区', '云龙', '117.19459', '34.254807', 3, 0, 1), +(320305, 320300, '贾汪区', '贾汪', '117.45021', '34.441643', 3, 0, 1), +(320311, 320300, '泉山区', '泉山', '117.18223', '34.26225', 3, 0, 1), +(320312, 320300, '铜山区', '铜山', '117.16898', '34.18044', 3, 0, 1), +(320321, 320300, '丰县', '丰县', '116.59289', '34.696945', 3, 0, 1), +(320322, 320300, '沛县', '沛县', '116.93718', '34.729046', 3, 0, 1), +(320324, 320300, '睢宁县', '睢宁', '117.95066', '33.899223', 3, 0, 1), +(320381, 320300, '新沂市', '新沂', '118.345825', '34.36878', 3, 0, 1), +(320382, 320300, '邳州市', '邳州', '117.96392', '34.31471', 3, 0, 1), +(320400, 320000, '常州市', '常州', '119.946976', '31.772753', 2, 0, 1), +(320402, 320400, '天宁区', '天宁', '119.96378', '31.779633', 3, 0, 1), +(320404, 320400, '钟楼区', '钟楼', '119.94839', '31.78096', 3, 0, 1), +(320411, 320400, '新北区', '新北', '119.974655', '31.824663', 3, 0, 1), +(320412, 320400, '武进区', '武进', '119.95877', '31.718567', 3, 0, 1), +(320413, 320400, '金坛区', '金坛', '119.59794', '31.72322', 3, 0, 1), +(320481, 320400, '溧阳市', '溧阳', '119.487816', '31.42708', 3, 0, 1), +(320500, 320000, '苏州市', '苏州', '120.61958', '31.29938', 2, 0, 1), +(320505, 320500, '虎丘区', '虎丘', '120.56683', '31.294846', 3, 0, 1), +(320506, 320500, '吴中区', '吴中', '120.62462', '31.27084', 3, 0, 1), +(320507, 320500, '相城区', '相城', '120.61896', '31.396685', 3, 0, 1), +(320508, 320500, '姑苏区', '姑苏', '120.622246', '31.311415', 3, 0, 1), +(320509, 320500, '吴江区', '吴江', '120.64517', '31.13914', 3, 0, 1), +(320581, 320500, '常熟市', '常熟', '120.74852', '31.658155', 3, 0, 1), +(320582, 320500, '张家港市', '张家港', '120.54344', '31.865553', 3, 0, 1), +(320583, 320500, '昆山市', '昆山', '120.95814', '31.381926', 3, 0, 1), +(320585, 320500, '太仓市', '太仓', '121.112274', '31.452568', 3, 0, 1), +(320600, 320000, '南通市', '南通', '120.86461', '32.016212', 2, 0, 1), +(320602, 320600, '崇川区', '崇川', '120.86635', '32.015278', 3, 0, 1), +(320611, 320600, '港闸区', '港闸', '120.8339', '32.0403', 3, 0, 1), +(320612, 320600, '通州区', '通州', '121.07317', '32.084286', 3, 0, 1), +(320623, 320600, '如东县', '如东', '121.18609', '32.311832', 3, 0, 1), +(320681, 320600, '启东市', '启东', '121.65972', '31.810158', 3, 0, 1), +(320682, 320600, '如皋市', '如皋', '120.56632', '32.39159', 3, 0, 1), +(320684, 320600, '海门市', '海门', '121.176605', '31.893528', 3, 0, 1), +(320685, 320600, '海安市', '海安', '120.46759', '32.53308', 3, 0, 1), +(320700, 320000, '连云港市', '连云港', '119.17882', '34.600018', 2, 0, 1), +(320703, 320700, '连云区', '连云', '119.366486', '34.73953', 3, 0, 1), +(320706, 320700, '海州区', '海州', '119.137146', '34.57129', 3, 0, 1), +(320707, 320700, '赣榆区', '赣榆', '119.1773', '34.84065', 3, 0, 1), +(320722, 320700, '东海县', '东海', '118.76649', '34.522858', 3, 0, 1), +(320723, 320700, '灌云县', '灌云', '119.25574', '34.298435', 3, 0, 1), +(320724, 320700, '灌南县', '灌南', '119.35233', '34.092552', 3, 0, 1), +(320800, 320000, '淮安市', '淮安', '119.02126', '33.597507', 2, 0, 1), +(320803, 320800, '淮安区', '淮安', '119.14634', '33.5075', 3, 0, 1), +(320804, 320800, '淮阴区', '淮阴', '119.02082', '33.62245', 3, 0, 1), +(320812, 320800, '清江浦区', '清江浦', '119.02662', '33.55308', 3, 0, 1), +(320813, 320800, '洪泽区', '洪泽', '118.8735', '33.29433', 3, 0, 1), +(320826, 320800, '涟水县', '涟水', '119.266075', '33.77131', 3, 0, 1), +(320830, 320800, '盱眙县', '盱眙', '118.49382', '33.00439', 3, 0, 1), +(320831, 320800, '金湖县', '金湖', '119.01694', '33.01816', 3, 0, 1), +(320900, 320000, '盐城市', '盐城', '120.14', '33.377632', 2, 0, 1), +(320902, 320900, '亭湖区', '亭湖', '120.13608', '33.38391', 3, 0, 1), +(320903, 320900, '盐都区', '盐都', '120.139755', '33.34129', 3, 0, 1), +(320904, 320900, '大丰区', '大丰', '120.50102', '33.20107', 3, 0, 1), +(320921, 320900, '响水县', '响水', '119.579575', '34.19996', 3, 0, 1), +(320922, 320900, '滨海县', '滨海', '119.82844', '33.989887', 3, 0, 1), +(320923, 320900, '阜宁县', '阜宁', '119.805336', '33.78573', 3, 0, 1), +(320924, 320900, '射阳县', '射阳', '120.25745', '33.77378', 3, 0, 1), +(320925, 320900, '建湖县', '建湖', '119.793106', '33.472622', 3, 0, 1), +(320981, 320900, '东台市', '东台', '120.3141', '32.853172', 3, 0, 1), +(321000, 320000, '扬州市', '扬州', '119.421005', '32.393158', 2, 0, 1), +(321002, 321000, '广陵区', '广陵', '119.44227', '32.392155', 3, 0, 1), +(321003, 321000, '邗江区', '邗江', '119.39777', '32.3779', 3, 0, 1), +(321012, 321000, '江都区', '江都', '119.57006', '32.43458', 3, 0, 1), +(321023, 321000, '宝应县', '宝应', '119.32128', '33.23694', 3, 0, 1), +(321081, 321000, '仪征市', '仪征', '119.18244', '32.271965', 3, 0, 1), +(321084, 321000, '高邮市', '高邮', '119.44384', '32.785164', 3, 0, 1), +(321100, 320000, '镇江市', '镇江', '119.45275', '32.204403', 2, 0, 1), +(321102, 321100, '京口区', '京口', '119.454575', '32.206192', 3, 0, 1), +(321111, 321100, '润州区', '润州', '119.41488', '32.2135', 3, 0, 1), +(321112, 321100, '丹徒区', '丹徒', '119.43388', '32.12897', 3, 0, 1), +(321181, 321100, '丹阳市', '丹阳', '119.58191', '31.991459', 3, 0, 1), +(321182, 321100, '扬中市', '扬中', '119.82806', '32.237267', 3, 0, 1), +(321183, 321100, '句容市', '句容', '119.16714', '31.947355', 3, 0, 1), +(321200, 320000, '泰州市', '泰州', '119.91518', '32.484882', 2, 0, 1), +(321202, 321200, '海陵区', '海陵', '119.92019', '32.488407', 3, 0, 1), +(321203, 321200, '高港区', '高港', '119.88166', '32.3157', 3, 0, 1), +(321204, 321200, '姜堰区', '姜堰', '120.12673', '32.50879', 3, 0, 1), +(321281, 321200, '兴化市', '兴化', '119.840164', '32.938065', 3, 0, 1), +(321282, 321200, '靖江市', '靖江', '120.26825', '32.01817', 3, 0, 1), +(321283, 321200, '泰兴市', '泰兴', '120.020226', '32.168785', 3, 0, 1), +(321300, 320000, '宿迁市', '宿迁', '118.27516', '33.96301', 2, 0, 1), +(321302, 321300, '宿城区', '宿城', '118.278984', '33.937725', 3, 0, 1), +(321311, 321300, '宿豫区', '宿豫', '118.33001', '33.94107', 3, 0, 1), +(321322, 321300, '沭阳县', '沭阳', '118.77589', '34.129097', 3, 0, 1), +(321323, 321300, '泗阳县', '泗阳', '118.68128', '33.711433', 3, 0, 1), +(321324, 321300, '泗洪县', '泗洪', '118.21182', '33.45654', 3, 0, 1), +(330000, 0, '浙江省', '浙江', '120.15358', '30.287458', 1, 0, 1), +(330100, 330000, '杭州市', '杭州', '120.15358', '30.287458', 2, 0, 1), +(330102, 330100, '上城区', '上城', '120.17146', '30.250237', 3, 0, 1), +(330103, 330100, '下城区', '下城', '120.17276', '30.276272', 3, 0, 1), +(330104, 330100, '江干区', '江干', '120.20264', '30.266603', 3, 0, 1), +(330105, 330100, '拱墅区', '拱墅', '120.150055', '30.314697', 3, 0, 1), +(330106, 330100, '西湖区', '西湖', '120.14738', '30.272934', 3, 0, 1), +(330108, 330100, '滨江区', '滨江', '120.21062', '30.206615', 3, 0, 1), +(330109, 330100, '萧山区', '萧山', '120.27069', '30.162931', 3, 0, 1), +(330110, 330100, '余杭区', '余杭', '120.301735', '30.421186', 3, 0, 1), +(330111, 330100, '富阳区', '富阳', '119.96043', '30.04885', 3, 0, 1), +(330112, 330100, '临安区', '临安', '119.7248', '30.23383', 3, 0, 1), +(330122, 330100, '桐庐县', '桐庐', '119.68504', '29.797438', 3, 0, 1), +(330127, 330100, '淳安县', '淳安', '119.04427', '29.604177', 3, 0, 1), +(330182, 330100, '建德市', '建德', '119.27909', '29.472284', 3, 0, 1), +(330200, 330000, '宁波市', '宁波', '121.54979', '29.868387', 2, 0, 1), +(330203, 330200, '海曙区', '海曙', '121.539696', '29.874453', 3, 0, 1), +(330205, 330200, '江北区', '江北', '121.55928', '29.888361', 3, 0, 1), +(330206, 330200, '北仑区', '北仑', '121.83131', '29.90944', 3, 0, 1), +(330211, 330200, '镇海区', '镇海', '121.713165', '29.952106', 3, 0, 1), +(330212, 330200, '鄞州区', '鄞州', '121.55843', '29.831661', 3, 0, 1), +(330213, 330200, '奉化区', '奉化', '121.40686', '29.65503', 3, 0, 1), +(330225, 330200, '象山县', '象山', '121.87709', '29.470205', 3, 0, 1), +(330226, 330200, '宁海县', '宁海', '121.43261', '29.299835', 3, 0, 1), +(330281, 330200, '余姚市', '余姚', '121.156296', '30.045404', 3, 0, 1), +(330282, 330200, '慈溪市', '慈溪', '121.248055', '30.177141', 3, 0, 1), +(330300, 330000, '温州市', '温州', '120.67211', '28.000574', 2, 0, 1), +(330302, 330300, '鹿城区', '鹿城', '120.67423', '28.003351', 3, 0, 1), +(330303, 330300, '龙湾区', '龙湾', '120.763466', '27.970255', 3, 0, 1), +(330304, 330300, '瓯海区', '瓯海', '120.637146', '28.006445', 3, 0, 1), +(330305, 330300, '洞头区', '洞头', '121.1572', '27.83616', 3, 0, 1), +(330324, 330300, '永嘉县', '永嘉', '120.69097', '28.153887', 3, 0, 1), +(330326, 330300, '平阳县', '平阳', '120.564384', '27.6693', 3, 0, 1), +(330327, 330300, '苍南县', '苍南', '120.40626', '27.507744', 3, 0, 1), +(330328, 330300, '文成县', '文成', '120.09245', '27.789133', 3, 0, 1), +(330329, 330300, '泰顺县', '泰顺', '119.71624', '27.557308', 3, 0, 1), +(330381, 330300, '瑞安市', '瑞安', '120.64617', '27.779322', 3, 0, 1), +(330382, 330300, '乐清市', '乐清', '120.96715', '28.116083', 3, 0, 1), +(330383, 330300, '龙港市', '龙港', '120.553102', '27.578205', 3, 0, 1), +(330400, 330000, '嘉兴市', '嘉兴', '120.75086', '30.762653', 2, 0, 1), +(330402, 330400, '南湖区', '南湖', '120.749954', '30.764652', 3, 0, 1), +(330411, 330400, '秀洲区', '秀洲', '120.72043', '30.763323', 3, 0, 1), +(330421, 330400, '嘉善县', '嘉善', '120.92187', '30.841352', 3, 0, 1), +(330424, 330400, '海盐县', '海盐', '120.94202', '30.522223', 3, 0, 1), +(330481, 330400, '海宁市', '海宁', '120.68882', '30.525543', 3, 0, 1), +(330482, 330400, '平湖市', '平湖', '121.01466', '30.698921', 3, 0, 1), +(330483, 330400, '桐乡市', '桐乡', '120.55109', '30.629065', 3, 0, 1), +(330500, 330000, '湖州市', '湖州', '120.1024', '30.867199', 2, 0, 1), +(330502, 330500, '吴兴区', '吴兴', '120.10142', '30.867252', 3, 0, 1), +(330503, 330500, '南浔区', '南浔', '120.4172', '30.872742', 3, 0, 1), +(330521, 330500, '德清县', '德清', '119.96766', '30.534927', 3, 0, 1), +(330522, 330500, '长兴县', '长兴', '119.910126', '31.00475', 3, 0, 1), +(330523, 330500, '安吉县', '安吉', '119.68789', '30.631973', 3, 0, 1), +(330600, 330000, '绍兴市', '绍兴', '120.582115', '29.997116', 2, 0, 1), +(330602, 330600, '越城区', '越城', '120.58531', '29.996992', 3, 0, 1), +(330603, 330600, '柯桥区', '柯桥', '120.49476', '30.08189', 3, 0, 1), +(330604, 330600, '上虞区', '上虞', '120.86858', '30.03227', 3, 0, 1), +(330624, 330600, '新昌县', '新昌', '120.90566', '29.501205', 3, 0, 1), +(330681, 330600, '诸暨市', '诸暨', '120.24432', '29.713661', 3, 0, 1), +(330683, 330600, '嵊州市', '嵊州', '120.82888', '29.586605', 3, 0, 1), +(330700, 330000, '金华市', '金华', '119.649506', '29.089523', 2, 0, 1), +(330702, 330700, '婺城区', '婺城', '119.65258', '29.082607', 3, 0, 1), +(330703, 330700, '金东区', '金东', '119.68127', '29.095835', 3, 0, 1), +(330723, 330700, '武义县', '武义', '119.81916', '28.896563', 3, 0, 1), +(330726, 330700, '浦江县', '浦江', '119.893364', '29.451254', 3, 0, 1), +(330727, 330700, '磐安县', '磐安', '120.44513', '29.052628', 3, 0, 1), +(330781, 330700, '兰溪市', '兰溪', '119.46052', '29.210066', 3, 0, 1), +(330782, 330700, '义乌市', '义乌', '120.07491', '29.306864', 3, 0, 1), +(330783, 330700, '东阳市', '东阳', '120.23334', '29.262547', 3, 0, 1), +(330784, 330700, '永康市', '永康', '120.03633', '28.895292', 3, 0, 1), +(330800, 330000, '衢州市', '衢州', '118.87263', '28.941708', 2, 0, 1), +(330802, 330800, '柯城区', '柯城', '118.87304', '28.944538', 3, 0, 1), +(330803, 330800, '衢江区', '衢江', '118.95768', '28.973194', 3, 0, 1), +(330822, 330800, '常山县', '常山', '118.52165', '28.90004', 3, 0, 1), +(330824, 330800, '开化县', '开化', '118.41444', '29.136503', 3, 0, 1), +(330825, 330800, '龙游县', '龙游', '119.17252', '29.031364', 3, 0, 1), +(330881, 330800, '江山市', '江山', '118.62788', '28.734674', 3, 0, 1), +(330900, 330000, '舟山市', '舟山', '122.106865', '30.016027', 2, 0, 1), +(330902, 330900, '定海区', '定海', '122.1085', '30.016422', 3, 0, 1), +(330903, 330900, '普陀区', '普陀', '122.301956', '29.945614', 3, 0, 1), +(330921, 330900, '岱山县', '岱山', '122.20113', '30.242865', 3, 0, 1), +(330922, 330900, '嵊泗县', '嵊泗', '122.45781', '30.727165', 3, 0, 1), +(331000, 330000, '台州市', '台州', '121.4286', '28.661379', 2, 0, 1), +(331002, 331000, '椒江区', '椒江', '121.431046', '28.67615', 3, 0, 1), +(331003, 331000, '黄岩区', '黄岩', '121.26214', '28.64488', 3, 0, 1), +(331004, 331000, '路桥区', '路桥', '121.37292', '28.581799', 3, 0, 1), +(331022, 331000, '三门县', '三门', '121.37643', '29.118956', 3, 0, 1), +(331023, 331000, '天台县', '天台', '121.03123', '29.141127', 3, 0, 1), +(331024, 331000, '仙居县', '仙居', '120.73508', '28.849213', 3, 0, 1), +(331081, 331000, '温岭市', '温岭', '121.37361', '28.36878', 3, 0, 1), +(331082, 331000, '临海市', '临海', '121.131226', '28.845442', 3, 0, 1), +(331083, 331000, '玉环市', '玉环', '121.23164', '28.13589', 3, 0, 1), +(331100, 330000, '丽水市', '丽水', '119.92178', '28.451994', 2, 0, 1), +(331102, 331100, '莲都区', '莲都', '119.922295', '28.451103', 3, 0, 1), +(331121, 331100, '青田县', '青田', '120.29194', '28.135246', 3, 0, 1), +(331122, 331100, '缙云县', '缙云', '120.078964', '28.654207', 3, 0, 1), +(331123, 331100, '遂昌县', '遂昌', '119.27589', '28.5924', 3, 0, 1), +(331124, 331100, '松阳县', '松阳', '119.48529', '28.449938', 3, 0, 1), +(331125, 331100, '云和县', '云和', '119.56946', '28.111076', 3, 0, 1), +(331126, 331100, '庆元县', '庆元', '119.06723', '27.61823', 3, 0, 1), +(331127, 331100, '景宁畲族自治县', '景宁', '119.63467', '27.977247', 3, 0, 1), +(331181, 331100, '龙泉市', '龙泉', '119.13232', '28.069178', 3, 0, 1), +(340000, 0, '安徽省', '安徽', '117.28304', '31.86119', 1, 0, 1), +(340100, 340000, '合肥市', '合肥', '117.28304', '31.86119', 2, 0, 1), +(340102, 340100, '瑶海区', '瑶海', '117.31536', '31.86961', 3, 0, 1), +(340103, 340100, '庐阳区', '庐阳', '117.283775', '31.86901', 3, 0, 1), +(340104, 340100, '蜀山区', '蜀山', '117.26207', '31.855867', 3, 0, 1), +(340111, 340100, '包河区', '包河', '117.28575', '31.82956', 3, 0, 1), +(340121, 340100, '长丰县', '长丰', '117.164696', '32.478546', 3, 0, 1), +(340122, 340100, '肥东县', '肥东', '117.46322', '31.883991', 3, 0, 1), +(340123, 340100, '肥西县', '肥西', '117.166115', '31.719646', 3, 0, 1), +(340124, 340100, '庐江县', '庐江', '117.28736', '31.25567', 3, 0, 1), +(340181, 340100, '巢湖市', '巢湖', '117.88937', '31.62329', 3, 0, 1), +(340200, 340000, '芜湖市', '芜湖', '118.37645', '31.326319', 2, 0, 1), +(340202, 340200, '镜湖区', '镜湖', '118.37634', '31.32559', 3, 0, 1), +(340207, 340200, '鸠江区', '鸠江', '118.40018', '31.362717', 3, 0, 1), +(340209, 340200, '弋江区', '弋江', '', '', 3, 0, 1), +(340210, 340200, '湾沚区', '湾沚', '', '', 3, 0, 1), +(340211, 340200, '繁昌区', '繁昌', '', '', 3, 0, 1), +(340223, 340200, '南陵县', '南陵', '118.337105', '30.919638', 3, 0, 1), +(340281, 340200, '无为市', '无为', '117.90224', '31.30317', 3, 0, 1), +(340300, 340000, '蚌埠市', '蚌埠', '117.36323', '32.939667', 2, 0, 1), +(340302, 340300, '龙子湖区', '龙子湖', '117.38231', '32.95045', 3, 0, 1), +(340303, 340300, '蚌山区', '蚌山', '117.35579', '32.938065', 3, 0, 1), +(340304, 340300, '禹会区', '禹会', '117.35259', '32.931934', 3, 0, 1), +(340311, 340300, '淮上区', '淮上', '117.34709', '32.963146', 3, 0, 1), +(340321, 340300, '怀远县', '怀远', '117.20017', '32.956936', 3, 0, 1), +(340322, 340300, '五河县', '五河', '117.88881', '33.146202', 3, 0, 1), +(340323, 340300, '固镇县', '固镇', '117.31596', '33.31868', 3, 0, 1), +(340400, 340000, '淮南市', '淮南', '117.018326', '32.647575', 2, 0, 1), +(340402, 340400, '大通区', '大通', '117.052925', '32.632065', 3, 0, 1), +(340403, 340400, '田家庵区', '田家庵', '117.01832', '32.64434', 3, 0, 1), +(340404, 340400, '谢家集区', '谢家集', '116.86536', '32.59829', 3, 0, 1), +(340405, 340400, '八公山区', '八公山', '116.84111', '32.628227', 3, 0, 1), +(340406, 340400, '潘集区', '潘集', '116.81688', '32.782116', 3, 0, 1), +(340421, 340400, '凤台县', '凤台', '116.72277', '32.705383', 3, 0, 1), +(340422, 340400, '寿县', '寿县', '116.78708', '32.57332', 3, 0, 1), +(340500, 340000, '马鞍山市', '马鞍山', '118.507904', '31.689362', 2, 0, 1), +(340503, 340500, '花山区', '花山', '118.51131', '31.69902', 3, 0, 1), +(340504, 340500, '雨山区', '雨山', '118.4931', '31.685911', 3, 0, 1), +(340506, 340500, '博望区', '博望', '118.84374', '31.56232', 3, 0, 1), +(340521, 340500, '当涂县', '当涂', '118.489876', '31.556168', 3, 0, 1), +(340522, 340500, '含山县', '含山', '118.10241', '31.73358', 3, 0, 1), +(340523, 340500, '和县', '和县', '118.35145', '31.74423', 3, 0, 1), +(340600, 340000, '淮北市', '淮北', '116.79466', '33.971706', 2, 0, 1), +(340602, 340600, '杜集区', '杜集', '116.83392', '33.99122', 3, 0, 1), +(340603, 340600, '相山区', '相山', '116.79077', '33.970917', 3, 0, 1), +(340604, 340600, '烈山区', '烈山', '116.80946', '33.88953', 3, 0, 1), +(340621, 340600, '濉溪县', '濉溪', '116.76743', '33.91641', 3, 0, 1), +(340700, 340000, '铜陵市', '铜陵', '117.816574', '30.929935', 2, 0, 1), +(340705, 340700, '铜官区', '铜官', '117.87431', '30.95614', 3, 0, 1), +(340706, 340700, '义安区', '义安', '117.79147', '30.95271', 3, 0, 1), +(340711, 340700, '郊区', '郊区', '117.816574', '30.929935', 3, 0, 1), +(340722, 340700, '枞阳县', '枞阳', '117.22019', '30.69961', 3, 0, 1), +(340800, 340000, '安庆市', '安庆', '117.04355', '30.50883', 2, 0, 1), +(340802, 340800, '迎江区', '迎江', '117.04497', '30.506374', 3, 0, 1), +(340803, 340800, '大观区', '大观', '117.034515', '30.505632', 3, 0, 1), +(340811, 340800, '宜秀区', '宜秀', '117.07', '30.541323', 3, 0, 1), +(340822, 340800, '怀宁县', '怀宁', '116.82867', '30.734995', 3, 0, 1), +(340825, 340800, '太湖县', '太湖', '116.30522', '30.451868', 3, 0, 1), +(340826, 340800, '宿松县', '宿松', '116.1202', '30.158327', 3, 0, 1), +(340827, 340800, '望江县', '望江', '116.690926', '30.12491', 3, 0, 1), +(340828, 340800, '岳西县', '岳西', '116.36048', '30.848501', 3, 0, 1), +(340881, 340800, '桐城市', '桐城', '116.959656', '31.050575', 3, 0, 1), +(340882, 340800, '潜山市', '潜山', '116.58133', '30.63107', 3, 0, 1), +(341000, 340000, '黄山市', '黄山', '118.31732', '29.709238', 2, 0, 1), +(341002, 341000, '屯溪区', '屯溪', '118.31735', '29.709187', 3, 0, 1), +(341003, 341000, '黄山区', '黄山', '118.13664', '30.294518', 3, 0, 1), +(341004, 341000, '徽州区', '徽州', '118.339745', '29.825201', 3, 0, 1), +(341021, 341000, '歙县', '歙县', '118.428024', '29.867748', 3, 0, 1), +(341022, 341000, '休宁县', '休宁', '118.18853', '29.788877', 3, 0, 1), +(341023, 341000, '黟县', '黟县', '117.94291', '29.923813', 3, 0, 1), +(341024, 341000, '祁门县', '祁门', '117.71724', '29.853472', 3, 0, 1), +(341100, 340000, '滁州市', '滁州', '118.31626', '32.303627', 2, 0, 1), +(341102, 341100, '琅琊区', '琅琊', '118.316475', '32.3038', 3, 0, 1), +(341103, 341100, '南谯区', '南谯', '118.29695', '32.32984', 3, 0, 1), +(341122, 341100, '来安县', '来安', '118.4333', '32.45023', 3, 0, 1), +(341124, 341100, '全椒县', '全椒', '118.26858', '32.09385', 3, 0, 1), +(341125, 341100, '定远县', '定远', '117.683716', '32.527103', 3, 0, 1), +(341126, 341100, '凤阳县', '凤阳', '117.56246', '32.867146', 3, 0, 1), +(341181, 341100, '天长市', '天长', '119.011215', '32.6815', 3, 0, 1), +(341182, 341100, '明光市', '明光', '117.99805', '32.781204', 3, 0, 1), +(341200, 340000, '阜阳市', '阜阳', '115.81973', '32.89697', 2, 0, 1), +(341202, 341200, '颍州区', '颍州', '115.81391', '32.89124', 3, 0, 1), +(341203, 341200, '颍东区', '颍东', '115.85875', '32.90886', 3, 0, 1), +(341204, 341200, '颍泉区', '颍泉', '115.80453', '32.924797', 3, 0, 1), +(341221, 341200, '临泉县', '临泉', '115.26169', '33.0627', 3, 0, 1), +(341222, 341200, '太和县', '太和', '115.62724', '33.16229', 3, 0, 1), +(341225, 341200, '阜南县', '阜南', '115.59053', '32.638103', 3, 0, 1), +(341226, 341200, '颍上县', '颍上', '116.259125', '32.637066', 3, 0, 1), +(341282, 341200, '界首市', '界首', '115.362114', '33.26153', 3, 0, 1), +(341300, 340000, '宿州市', '宿州', '116.984085', '33.633892', 2, 0, 1), +(341302, 341300, '埇桥区', '埇桥', '116.98331', '33.633854', 3, 0, 1), +(341321, 341300, '砀山县', '砀山', '116.35111', '34.426247', 3, 0, 1), +(341322, 341300, '萧县', '萧县', '116.9454', '34.183266', 3, 0, 1), +(341323, 341300, '灵璧县', '灵璧', '117.55149', '33.54063', 3, 0, 1), +(341324, 341300, '泗县', '泗县', '117.885445', '33.47758', 3, 0, 1), +(341500, 340000, '六安市', '六安', '116.507675', '31.75289', 2, 0, 1), +(341502, 341500, '金安区', '金安', '116.50329', '31.754492', 3, 0, 1), +(341503, 341500, '裕安区', '裕安', '116.494545', '31.750692', 3, 0, 1), +(341504, 341500, '叶集区', '叶集', '115.9133', '31.85122', 3, 0, 1), +(341522, 341500, '霍邱县', '霍邱', '116.27888', '32.341305', 3, 0, 1), +(341523, 341500, '舒城县', '舒城', '116.94409', '31.462849', 3, 0, 1), +(341524, 341500, '金寨县', '金寨', '115.87852', '31.681623', 3, 0, 1), +(341525, 341500, '霍山县', '霍山', '116.33308', '31.402456', 3, 0, 1), +(341600, 340000, '亳州市', '亳州', '115.782936', '33.86934', 2, 0, 1), +(341602, 341600, '谯城区', '谯城', '115.78121', '33.869286', 3, 0, 1), +(341621, 341600, '涡阳县', '涡阳', '116.21155', '33.50283', 3, 0, 1), +(341622, 341600, '蒙城县', '蒙城', '116.56033', '33.260815', 3, 0, 1), +(341623, 341600, '利辛县', '利辛', '116.20778', '33.1435', 3, 0, 1), +(341700, 340000, '池州市', '池州', '117.48916', '30.656036', 2, 0, 1), +(341702, 341700, '贵池区', '贵池', '117.48834', '30.657377', 3, 0, 1), +(341721, 341700, '东至县', '东至', '117.02148', '30.096567', 3, 0, 1), +(341722, 341700, '石台县', '石台', '117.48291', '30.210323', 3, 0, 1), +(341723, 341700, '青阳县', '青阳', '117.85739', '30.63818', 3, 0, 1), +(341800, 340000, '宣城市', '宣城', '118.757996', '30.945667', 2, 0, 1), +(341802, 341800, '宣州区', '宣州', '118.758415', '30.946003', 3, 0, 1), +(341821, 341800, '郎溪县', '郎溪', '119.18502', '31.127834', 3, 0, 1), +(341823, 341800, '泾县', '泾县', '118.4124', '30.685974', 3, 0, 1), +(341824, 341800, '绩溪县', '绩溪', '118.5947', '30.065268', 3, 0, 1), +(341825, 341800, '旌德县', '旌德', '118.54308', '30.288057', 3, 0, 1), +(341881, 341800, '宁国市', '宁国', '118.983406', '30.62653', 3, 0, 1), +(341882, 341800, '广德市', '广德', '119.41705', '30.8938', 3, 0, 1), +(350000, 0, '福建省', '福建', '119.30624', '26.075302', 1, 0, 1), +(350100, 350000, '福州市', '福州', '119.30624', '26.075302', 2, 0, 1), +(350102, 350100, '鼓楼区', '鼓楼', '119.29929', '26.082285', 3, 0, 1), +(350103, 350100, '台江区', '台江', '119.31016', '26.058617', 3, 0, 1), +(350104, 350100, '仓山区', '仓山', '119.32099', '26.038912', 3, 0, 1), +(350105, 350100, '马尾区', '马尾', '119.458725', '25.991976', 3, 0, 1), +(350111, 350100, '晋安区', '晋安', '119.3286', '26.078836', 3, 0, 1), +(350112, 350100, '长乐区', '长乐', '119.52324', '25.96283', 3, 0, 1), +(350121, 350100, '闽侯县', '闽侯', '119.14512', '26.148567', 3, 0, 1), +(350122, 350100, '连江县', '连江', '119.53837', '26.202108', 3, 0, 1), +(350123, 350100, '罗源县', '罗源', '119.55264', '26.487234', 3, 0, 1), +(350124, 350100, '闽清县', '闽清', '118.868416', '26.223793', 3, 0, 1), +(350125, 350100, '永泰县', '永泰', '118.93909', '25.864824', 3, 0, 1), +(350128, 350100, '平潭县', '平潭', '119.7912', '25.503672', 3, 0, 1), +(350181, 350100, '福清市', '福清', '119.37699', '25.720402', 3, 0, 1), +(350200, 350000, '厦门市', '厦门', '118.11022', '24.490475', 2, 0, 1), +(350203, 350200, '思明区', '思明', '118.08783', '24.462059', 3, 0, 1), +(350205, 350200, '海沧区', '海沧', '118.03636', '24.492512', 3, 0, 1), +(350206, 350200, '湖里区', '湖里', '118.10943', '24.512764', 3, 0, 1), +(350211, 350200, '集美区', '集美', '118.10087', '24.572874', 3, 0, 1), +(350212, 350200, '同安区', '同安', '118.15045', '24.729334', 3, 0, 1), +(350213, 350200, '翔安区', '翔安', '118.24281', '24.63748', 3, 0, 1), +(350300, 350000, '莆田市', '莆田', '119.00756', '25.431011', 2, 0, 1), +(350302, 350300, '城厢区', '城厢', '119.00103', '25.433737', 3, 0, 1), +(350303, 350300, '涵江区', '涵江', '119.1191', '25.459272', 3, 0, 1), +(350304, 350300, '荔城区', '荔城', '119.02005', '25.430046', 3, 0, 1), +(350305, 350300, '秀屿区', '秀屿', '119.092606', '25.316141', 3, 0, 1), +(350322, 350300, '仙游县', '仙游', '118.69433', '25.35653', 3, 0, 1), +(350400, 350000, '三明市', '三明', '117.635', '26.265444', 2, 0, 1), +(350402, 350400, '梅列区', '梅列', '117.63687', '26.269209', 3, 0, 1), +(350403, 350400, '三元区', '三元', '117.607414', '26.234192', 3, 0, 1), +(350421, 350400, '明溪县', '明溪', '117.20184', '26.357374', 3, 0, 1), +(350423, 350400, '清流县', '清流', '116.81582', '26.17761', 3, 0, 1), +(350424, 350400, '宁化县', '宁化', '116.65972', '26.259932', 3, 0, 1), +(350425, 350400, '大田县', '大田', '117.84936', '25.690804', 3, 0, 1), +(350426, 350400, '尤溪县', '尤溪', '118.188576', '26.169262', 3, 0, 1), +(350427, 350400, '沙县', '沙县', '117.78909', '26.397362', 3, 0, 1), +(350428, 350400, '将乐县', '将乐', '117.47356', '26.728666', 3, 0, 1), +(350429, 350400, '泰宁县', '泰宁', '117.17752', '26.897995', 3, 0, 1), +(350430, 350400, '建宁县', '建宁', '116.84583', '26.831398', 3, 0, 1), +(350481, 350400, '永安市', '永安', '117.36445', '25.974075', 3, 0, 1), +(350500, 350000, '泉州市', '泉州', '118.589424', '24.908854', 2, 0, 1), +(350502, 350500, '鲤城区', '鲤城', '118.58893', '24.907644', 3, 0, 1), +(350503, 350500, '丰泽区', '丰泽', '118.60515', '24.896042', 3, 0, 1), +(350504, 350500, '洛江区', '洛江', '118.67031', '24.941153', 3, 0, 1), +(350505, 350500, '泉港区', '泉港', '118.912285', '25.12686', 3, 0, 1), +(350521, 350500, '惠安县', '惠安', '118.79895', '25.028719', 3, 0, 1), +(350524, 350500, '安溪县', '安溪', '118.18601', '25.056824', 3, 0, 1), +(350525, 350500, '永春县', '永春', '118.29503', '25.32072', 3, 0, 1), +(350526, 350500, '德化县', '德化', '118.24299', '25.489004', 3, 0, 1), +(350527, 350500, '金门县', '金门', '118.32322', '24.436417', 3, 0, 1), +(350581, 350500, '石狮市', '石狮', '118.6284', '24.731977', 3, 0, 1), +(350582, 350500, '晋江市', '晋江', '118.57734', '24.807322', 3, 0, 1), +(350583, 350500, '南安市', '南安', '118.38703', '24.959494', 3, 0, 1), +(350600, 350000, '漳州市', '漳州', '117.661804', '24.510897', 2, 0, 1), +(350602, 350600, '芗城区', '芗城', '117.65646', '24.509954', 3, 0, 1), +(350603, 350600, '龙文区', '龙文', '117.67139', '24.515656', 3, 0, 1), +(350622, 350600, '云霄县', '云霄', '117.34094', '23.950485', 3, 0, 1), +(350623, 350600, '漳浦县', '漳浦', '117.61402', '24.117907', 3, 0, 1), +(350624, 350600, '诏安县', '诏安', '117.17609', '23.710835', 3, 0, 1), +(350625, 350600, '长泰县', '长泰', '117.75591', '24.621475', 3, 0, 1), +(350626, 350600, '东山县', '东山', '117.42768', '23.702845', 3, 0, 1), +(350627, 350600, '南靖县', '南靖', '117.36546', '24.516424', 3, 0, 1), +(350628, 350600, '平和县', '平和', '117.313545', '24.366158', 3, 0, 1), +(350629, 350600, '华安县', '华安', '117.53631', '25.001415', 3, 0, 1), +(350681, 350600, '龙海市', '龙海', '117.81729', '24.445341', 3, 0, 1), +(350700, 350000, '南平市', '南平', '118.17846', '26.635628', 2, 0, 1), +(350702, 350700, '延平区', '延平', '118.17892', '26.63608', 3, 0, 1), +(350703, 350700, '建阳区', '建阳', '118.120427', '27.331749', 3, 0, 1), +(350721, 350700, '顺昌县', '顺昌', '117.80771', '26.79285', 3, 0, 1), +(350722, 350700, '浦城县', '浦城', '118.53682', '27.920412', 3, 0, 1), +(350723, 350700, '光泽县', '光泽', '117.3379', '27.542803', 3, 0, 1), +(350724, 350700, '松溪县', '松溪', '118.78349', '27.525785', 3, 0, 1), +(350725, 350700, '政和县', '政和', '118.85866', '27.365398', 3, 0, 1), +(350781, 350700, '邵武市', '邵武', '117.49155', '27.337952', 3, 0, 1), +(350782, 350700, '武夷山市', '武夷山', '118.0328', '27.751734', 3, 0, 1), +(350783, 350700, '建瓯市', '建瓯', '118.32176', '27.03502', 3, 0, 1), +(350800, 350000, '龙岩市', '龙岩', '117.02978', '25.091602', 2, 0, 1), +(350802, 350800, '新罗区', '新罗', '117.03072', '25.0918', 3, 0, 1), +(350803, 350800, '永定区', '永定', '116.73202', '24.72303', 3, 0, 1), +(350821, 350800, '长汀县', '长汀', '116.36101', '25.842278', 3, 0, 1), +(350823, 350800, '上杭县', '上杭', '116.424774', '25.050018', 3, 0, 1), +(350824, 350800, '武平县', '武平', '116.10093', '25.08865', 3, 0, 1), +(350825, 350800, '连城县', '连城', '116.75668', '25.708506', 3, 0, 1), +(350881, 350800, '漳平市', '漳平', '117.42073', '25.291597', 3, 0, 1), +(350900, 350000, '宁德市', '宁德', '119.527084', '26.65924', 2, 0, 1), +(350902, 350900, '蕉城区', '蕉城', '119.52722', '26.659252', 3, 0, 1), +(350921, 350900, '霞浦县', '霞浦', '120.00521', '26.882069', 3, 0, 1), +(350922, 350900, '古田县', '古田', '118.74316', '26.577492', 3, 0, 1), +(350923, 350900, '屏南县', '屏南', '118.98754', '26.910826', 3, 0, 1), +(350924, 350900, '寿宁县', '寿宁', '119.50674', '27.457798', 3, 0, 1), +(350925, 350900, '周宁县', '周宁', '119.33824', '27.103106', 3, 0, 1), +(350926, 350900, '柘荣县', '柘荣', '119.898224', '27.236162', 3, 0, 1), +(350981, 350900, '福安市', '福安', '119.650795', '27.084246', 3, 0, 1), +(350982, 350900, '福鼎市', '福鼎', '120.219765', '27.318884', 3, 0, 1), +(360000, 0, '江西省', '江西', '115.89215', '28.676493', 1, 0, 1), +(360100, 360000, '南昌市', '南昌', '115.89215', '28.676493', 2, 0, 1), +(360102, 360100, '东湖区', '东湖', '115.88967', '28.682987', 3, 0, 1), +(360103, 360100, '西湖区', '西湖', '115.91065', '28.6629', 3, 0, 1), +(360104, 360100, '青云谱区', '青云谱', '115.907295', '28.635723', 3, 0, 1), +(360111, 360100, '青山湖区', '青山湖', '115.94904', '28.689293', 3, 0, 1), +(360112, 360100, '新建区', '新建', '115.81529', '28.6925', 3, 0, 1), +(360113, 360100, '红谷滩区', '红谷滩', '115.858393', '28.698314', 3, 0, 1), +(360121, 360100, '南昌县', '南昌', '115.94247', '28.543781', 3, 0, 1), +(360123, 360100, '安义县', '安义', '115.55311', '28.841333', 3, 0, 1), +(360124, 360100, '进贤县', '进贤', '116.26767', '28.36568', 3, 0, 1), +(360200, 360000, '景德镇市', '景德镇', '117.21466', '29.29256', 2, 0, 1), +(360202, 360200, '昌江区', '昌江', '117.19502', '29.288465', 3, 0, 1), +(360203, 360200, '珠山区', '珠山', '117.21481', '29.292812', 3, 0, 1), +(360222, 360200, '浮梁县', '浮梁', '117.21761', '29.352251', 3, 0, 1), +(360281, 360200, '乐平市', '乐平', '117.12938', '28.967361', 3, 0, 1), +(360300, 360000, '萍乡市', '萍乡', '113.85219', '27.622946', 2, 0, 1), +(360302, 360300, '安源区', '安源', '113.85504', '27.625826', 3, 0, 1), +(360313, 360300, '湘东区', '湘东', '113.7456', '27.639318', 3, 0, 1), +(360321, 360300, '莲花县', '莲花', '113.95558', '27.127808', 3, 0, 1), +(360322, 360300, '上栗县', '上栗', '113.80052', '27.87704', 3, 0, 1), +(360323, 360300, '芦溪县', '芦溪', '114.04121', '27.633633', 3, 0, 1), +(360400, 360000, '九江市', '九江', '115.99281', '29.712034', 2, 0, 1), +(360402, 360400, '濂溪区', '庐山', '115.99012', '29.676174', 3, 0, 1), +(360403, 360400, '浔阳区', '浔阳', '115.99595', '29.72465', 3, 0, 1), +(360404, 360400, '柴桑区', '柴桑', '115.91135', '29.60855', 3, 0, 1), +(360423, 360400, '武宁县', '武宁', '115.105644', '29.260181', 3, 0, 1), +(360424, 360400, '修水县', '修水', '114.573425', '29.032728', 3, 0, 1), +(360425, 360400, '永修县', '永修', '115.80905', '29.018211', 3, 0, 1), +(360426, 360400, '德安县', '德安', '115.76261', '29.327475', 3, 0, 1), +(360428, 360400, '都昌县', '都昌', '116.20512', '29.275105', 3, 0, 1), +(360429, 360400, '湖口县', '湖口', '116.244316', '29.7263', 3, 0, 1), +(360430, 360400, '彭泽县', '彭泽', '116.55584', '29.898865', 3, 0, 1), +(360481, 360400, '瑞昌市', '瑞昌', '115.66908', '29.6766', 3, 0, 1), +(360482, 360400, '共青城市', '共青城', '115.81477', '29.24955', 3, 0, 1), +(360483, 360400, '庐山市', '共青城', '115.80571', '29.247885', 3, 0, 1), +(360500, 360000, '新余市', '新余', '114.93083', '27.810835', 2, 0, 1), +(360502, 360500, '渝水区', '渝水', '114.92392', '27.819172', 3, 0, 1), +(360521, 360500, '分宜县', '分宜', '114.67526', '27.8113', 3, 0, 1), +(360600, 360000, '鹰潭市', '鹰潭', '117.03384', '28.238638', 2, 0, 1), +(360602, 360600, '月湖区', '月湖', '117.03411', '28.239077', 3, 0, 1), +(360603, 360600, '余江区', '余江', '116.81834', '28.20991', 3, 0, 1), +(360681, 360600, '贵溪市', '贵溪', '117.212105', '28.283693', 3, 0, 1), +(360700, 360000, '赣州市', '赣州', '114.94028', '25.85097', 2, 0, 1), +(360702, 360700, '章贡区', '章贡', '114.93872', '25.851368', 3, 0, 1), +(360703, 360700, '南康区', '南康', '114.76535', '25.66144', 3, 0, 1), +(360704, 360700, '赣县区', '赣县', '115.01161', '25.86076', 3, 0, 1), +(360722, 360700, '信丰县', '信丰', '114.93089', '25.38023', 3, 0, 1), +(360723, 360700, '大余县', '大余', '114.36224', '25.395937', 3, 0, 1), +(360724, 360700, '上犹县', '上犹', '114.540535', '25.794285', 3, 0, 1), +(360725, 360700, '崇义县', '崇义', '114.30735', '25.68791', 3, 0, 1), +(360726, 360700, '安远县', '安远', '115.39233', '25.13459', 3, 0, 1), +(360728, 360700, '定南县', '定南', '115.03267', '24.774277', 3, 0, 1), +(360729, 360700, '全南县', '全南', '114.531586', '24.742651', 3, 0, 1), +(360730, 360700, '宁都县', '宁都', '116.01878', '26.472054', 3, 0, 1), +(360731, 360700, '于都县', '于都', '115.4112', '25.955032', 3, 0, 1), +(360732, 360700, '兴国县', '兴国', '115.3519', '26.330488', 3, 0, 1), +(360733, 360700, '会昌县', '会昌', '115.79116', '25.599125', 3, 0, 1), +(360734, 360700, '寻乌县', '寻乌', '115.6514', '24.954136', 3, 0, 1), +(360735, 360700, '石城县', '石城', '116.34225', '26.326582', 3, 0, 1), +(360781, 360700, '瑞金市', '瑞金', '116.03485', '25.875278', 3, 0, 1), +(360783, 360700, '龙南市', '龙南', '', '', 3, 0, 1), +(360800, 360000, '吉安市', '吉安', '114.986374', '27.111698', 2, 0, 1), +(360802, 360800, '吉州区', '吉州', '114.98733', '27.112368', 3, 0, 1), +(360803, 360800, '青原区', '青原', '115.016304', '27.105879', 3, 0, 1), +(360821, 360800, '吉安县', '吉安', '114.90511', '27.040043', 3, 0, 1), +(360822, 360800, '吉水县', '吉水', '115.13457', '27.213446', 3, 0, 1), +(360823, 360800, '峡江县', '峡江', '115.31933', '27.580862', 3, 0, 1), +(360824, 360800, '新干县', '新干', '115.39929', '27.755758', 3, 0, 1), +(360825, 360800, '永丰县', '永丰', '115.43556', '27.321087', 3, 0, 1), +(360826, 360800, '泰和县', '泰和', '114.90139', '26.790165', 3, 0, 1), +(360827, 360800, '遂川县', '遂川', '114.51689', '26.323706', 3, 0, 1), +(360828, 360800, '万安县', '万安', '114.78469', '26.462086', 3, 0, 1), +(360829, 360800, '安福县', '安福', '114.61384', '27.382746', 3, 0, 1), +(360830, 360800, '永新县', '永新', '114.24253', '26.944721', 3, 0, 1), +(360881, 360800, '井冈山市', '井冈山', '114.284424', '26.745918', 3, 0, 1), +(360900, 360000, '宜春市', '宜春', '114.391136', '27.8043', 2, 0, 1), +(360902, 360900, '袁州区', '袁州', '114.38738', '27.800117', 3, 0, 1), +(360921, 360900, '奉新县', '奉新', '115.3899', '28.700672', 3, 0, 1), +(360922, 360900, '万载县', '万载', '114.44901', '28.104528', 3, 0, 1), +(360923, 360900, '上高县', '上高', '114.932655', '28.234789', 3, 0, 1), +(360924, 360900, '宜丰县', '宜丰', '114.787384', '28.388288', 3, 0, 1), +(360925, 360900, '靖安县', '靖安', '115.36175', '28.86054', 3, 0, 1), +(360926, 360900, '铜鼓县', '铜鼓', '114.37014', '28.520956', 3, 0, 1), +(360981, 360900, '丰城市', '丰城', '115.786', '28.191584', 3, 0, 1), +(360982, 360900, '樟树市', '樟树', '115.54339', '28.055899', 3, 0, 1), +(360983, 360900, '高安市', '高安', '115.38153', '28.420952', 3, 0, 1), +(361000, 360000, '抚州市', '抚州', '116.35835', '27.98385', 2, 0, 1), +(361002, 361000, '临川区', '临川', '116.361404', '27.981918', 3, 0, 1), +(361003, 361000, '东乡区', '东乡', '116.60334', '28.24771', 3, 0, 1), +(361021, 361000, '南城县', '南城', '116.63945', '27.55531', 3, 0, 1), +(361022, 361000, '黎川县', '黎川', '116.91457', '27.29256', 3, 0, 1), +(361023, 361000, '南丰县', '南丰', '116.533', '27.210133', 3, 0, 1), +(361024, 361000, '崇仁县', '崇仁', '116.05911', '27.760906', 3, 0, 1), +(361025, 361000, '乐安县', '乐安', '115.83843', '27.420101', 3, 0, 1), +(361026, 361000, '宜黄县', '宜黄', '116.22302', '27.546513', 3, 0, 1), +(361027, 361000, '金溪县', '金溪', '116.77875', '27.907387', 3, 0, 1), +(361028, 361000, '资溪县', '资溪', '117.06609', '27.70653', 3, 0, 1), +(361030, 361000, '广昌县', '广昌', '116.32729', '26.838427', 3, 0, 1), +(361100, 360000, '上饶市', '上饶', '117.97118', '28.44442', 2, 0, 1), +(361102, 361100, '信州区', '信州', '117.97052', '28.445377', 3, 0, 1), +(361103, 361100, '广丰区', '广丰', '118.19133', '28.43631', 3, 0, 1), +(361104, 361100, '广信区', '广信', '117.9096', '28.44923', 3, 0, 1), +(361123, 361100, '玉山县', '玉山', '118.24441', '28.67348', 3, 0, 1), +(361124, 361100, '铅山县', '铅山', '117.71191', '28.310892', 3, 0, 1), +(361125, 361100, '横峰县', '横峰', '117.608246', '28.415104', 3, 0, 1), +(361126, 361100, '弋阳县', '弋阳', '117.435005', '28.402391', 3, 0, 1), +(361127, 361100, '余干县', '余干', '116.69107', '28.69173', 3, 0, 1), +(361128, 361100, '鄱阳县', '鄱阳', '116.673744', '28.993374', 3, 0, 1), +(361129, 361100, '万年县', '万年', '117.07015', '28.692589', 3, 0, 1), +(361130, 361100, '婺源县', '婺源', '117.86219', '29.254015', 3, 0, 1), +(361181, 361100, '德兴市', '德兴', '117.578735', '28.945034', 3, 0, 1), +(370000, 0, '山东省', '山东', '117.00092', '36.675808', 1, 0, 1), +(370100, 370000, '济南市', '济南', '117.00092', '36.675808', 2, 0, 1), +(370102, 370100, '历下区', '历下', '117.03862', '36.66417', 3, 0, 1), +(370103, 370100, '市中区', '市中', '116.99898', '36.657352', 3, 0, 1), +(370104, 370100, '槐荫区', '槐荫', '116.94792', '36.668205', 3, 0, 1), +(370105, 370100, '天桥区', '天桥', '116.996086', '36.693375', 3, 0, 1), +(370112, 370100, '历城区', '历城', '117.06374', '36.681744', 3, 0, 1), +(370113, 370100, '长清区', '长清', '116.74588', '36.56105', 3, 0, 1), +(370114, 370100, '章丘区', '章丘', '117.52627', '36.68124', 3, 0, 1), +(370115, 370100, '济阳区', '济阳', '117.17333', '36.97847', 3, 0, 1), +(370116, 370100, '莱芜区', '莱芜', '117.65992', '36.20317', 3, 0, 1), +(370117, 370100, '钢城区', '钢城', '117.81107', '36.05866', 3, 0, 1), +(370124, 370100, '平阴县', '平阴', '116.455055', '36.286922', 3, 0, 1), +(370126, 370100, '商河县', '商河', '117.15637', '37.310543', 3, 0, 1), +(370200, 370000, '青岛市', '青岛', '120.35517', '36.08298', 2, 0, 1), +(370202, 370200, '市南区', '市南', '120.395966', '36.070892', 3, 0, 1), +(370203, 370200, '市北区', '市北', '120.35503', '36.08382', 3, 0, 1), +(370211, 370200, '黄岛区', '黄岛', '119.99552', '35.875137', 3, 0, 1), +(370212, 370200, '崂山区', '崂山', '120.46739', '36.10257', 3, 0, 1), +(370213, 370200, '李沧区', '李沧', '120.421234', '36.160023', 3, 0, 1), +(370214, 370200, '城阳区', '城阳', '120.38914', '36.30683', 3, 0, 1), +(370215, 370200, '即墨区', '即墨', '120.44715', '36.38932', 3, 0, 1), +(370281, 370200, '胶州市', '胶州', '120.0062', '36.285877', 3, 0, 1), +(370283, 370200, '平度市', '平度', '119.959015', '36.78883', 3, 0, 1), +(370285, 370200, '莱西市', '莱西', '120.52622', '36.86509', 3, 0, 1), +(370300, 370000, '淄博市', '淄博', '118.047646', '36.814938', 2, 0, 1), +(370302, 370300, '淄川区', '淄川', '117.9677', '36.64727', 3, 0, 1), +(370303, 370300, '张店区', '张店', '118.05352', '36.80705', 3, 0, 1), +(370304, 370300, '博山区', '博山', '117.85823', '36.497566', 3, 0, 1), +(370305, 370300, '临淄区', '临淄', '118.306015', '36.816658', 3, 0, 1), +(370306, 370300, '周村区', '周村', '117.851036', '36.8037', 3, 0, 1), +(370321, 370300, '桓台县', '桓台', '118.101555', '36.959774', 3, 0, 1), +(370322, 370300, '高青县', '高青', '117.82984', '37.169582', 3, 0, 1), +(370323, 370300, '沂源县', '沂源', '118.16616', '36.186283', 3, 0, 1), +(370400, 370000, '枣庄市', '枣庄', '117.55796', '34.856422', 2, 0, 1), +(370402, 370400, '市中区', '市中', '117.55728', '34.85665', 3, 0, 1), +(370403, 370400, '薛城区', '薛城', '117.26529', '34.79789', 3, 0, 1), +(370404, 370400, '峄城区', '峄城', '117.58632', '34.76771', 3, 0, 1), +(370405, 370400, '台儿庄区', '台儿庄', '117.73475', '34.564816', 3, 0, 1), +(370406, 370400, '山亭区', '山亭', '117.45897', '35.096077', 3, 0, 1), +(370481, 370400, '滕州市', '滕州', '117.1621', '35.088497', 3, 0, 1), +(370500, 370000, '东营市', '东营', '118.66471', '37.434563', 2, 0, 1), +(370502, 370500, '东营区', '东营', '118.507545', '37.461567', 3, 0, 1), +(370503, 370500, '河口区', '河口', '118.52961', '37.886017', 3, 0, 1), +(370505, 370500, '垦利区', '垦利', '118.54768', '37.58748', 3, 0, 1), +(370522, 370500, '利津县', '利津', '118.248856', '37.493366', 3, 0, 1), +(370523, 370500, '广饶县', '广饶', '118.407524', '37.05161', 3, 0, 1), +(370600, 370000, '烟台市', '烟台', '121.39138', '37.539295', 2, 0, 1), +(370602, 370600, '芝罘区', '芝罘', '121.38588', '37.540924', 3, 0, 1), +(370611, 370600, '福山区', '福山', '121.26474', '37.496876', 3, 0, 1), +(370612, 370600, '牟平区', '牟平', '121.60151', '37.388355', 3, 0, 1), +(370613, 370600, '莱山区', '莱山', '121.44887', '37.47355', 3, 0, 1), +(370614, 370600, '蓬莱区', '蓬莱', '', '', 3, 0, 1), +(370681, 370600, '龙口市', '龙口', '120.52833', '37.648445', 3, 0, 1), +(370682, 370600, '莱阳市', '莱阳', '120.71115', '36.977036', 3, 0, 1), +(370683, 370600, '莱州市', '莱州', '119.94214', '37.182724', 3, 0, 1), +(370685, 370600, '招远市', '招远', '120.403145', '37.364918', 3, 0, 1), +(370686, 370600, '栖霞市', '栖霞', '120.8341', '37.305855', 3, 0, 1), +(370687, 370600, '海阳市', '海阳', '121.16839', '36.78066', 3, 0, 1), +(370700, 370000, '潍坊市', '潍坊', '119.10708', '36.70925', 2, 0, 1), +(370702, 370700, '潍城区', '潍城', '119.10378', '36.71006', 3, 0, 1), +(370703, 370700, '寒亭区', '寒亭', '119.20786', '36.772102', 3, 0, 1), +(370704, 370700, '坊子区', '坊子', '119.16633', '36.654617', 3, 0, 1), +(370705, 370700, '奎文区', '奎文', '119.13736', '36.709496', 3, 0, 1), +(370724, 370700, '临朐县', '临朐', '118.53988', '36.516373', 3, 0, 1), +(370725, 370700, '昌乐县', '昌乐', '118.84', '36.703255', 3, 0, 1), +(370781, 370700, '青州市', '青州', '118.484695', '36.697857', 3, 0, 1), +(370782, 370700, '诸城市', '诸城', '119.40318', '35.997093', 3, 0, 1), +(370783, 370700, '寿光市', '寿光', '118.73645', '36.874413', 3, 0, 1), +(370784, 370700, '安丘市', '安丘', '119.20689', '36.427418', 3, 0, 1), +(370785, 370700, '高密市', '高密', '119.757034', '36.37754', 3, 0, 1), +(370786, 370700, '昌邑市', '昌邑', '119.3945', '36.85494', 3, 0, 1), +(370800, 370000, '济宁市', '济宁', '116.58724', '35.415394', 2, 0, 1), +(370811, 370800, '任城区', '任城', '116.63102', '35.431835', 3, 0, 1), +(370812, 370800, '兖州区', '兖州', '116.7857', '35.5526', 3, 0, 1), +(370826, 370800, '微山县', '微山', '117.12861', '34.809525', 3, 0, 1), +(370827, 370800, '鱼台县', '鱼台', '116.650024', '34.997707', 3, 0, 1), +(370828, 370800, '金乡县', '金乡', '116.31036', '35.06977', 3, 0, 1), +(370829, 370800, '嘉祥县', '嘉祥', '116.34289', '35.398098', 3, 0, 1), +(370830, 370800, '汶上县', '汶上', '116.487144', '35.721745', 3, 0, 1), +(370831, 370800, '泗水县', '泗水', '117.273605', '35.653217', 3, 0, 1), +(370832, 370800, '梁山县', '梁山', '116.08963', '35.80184', 3, 0, 1), +(370881, 370800, '曲阜市', '曲阜', '116.99188', '35.59279', 3, 0, 1), +(370883, 370800, '邹城市', '邹城', '116.96673', '35.40526', 3, 0, 1), +(370900, 370000, '泰安市', '泰安', '117.12907', '36.19497', 2, 0, 1), +(370902, 370900, '泰山区', '泰山', '117.12998', '36.189312', 3, 0, 1), +(370911, 370900, '岱岳区', '岱岳', '117.0418', '36.18752', 3, 0, 1), +(370921, 370900, '宁阳县', '宁阳', '116.79929', '35.76754', 3, 0, 1), +(370923, 370900, '东平县', '东平', '116.46105', '35.930466', 3, 0, 1), +(370982, 370900, '新泰市', '新泰', '117.76609', '35.910385', 3, 0, 1), +(370983, 370900, '肥城市', '肥城', '116.7637', '36.1856', 3, 0, 1), +(371000, 370000, '威海市', '威海', '122.116394', '37.50969', 2, 0, 1), +(371002, 371000, '环翠区', '环翠', '122.11619', '37.510754', 3, 0, 1), +(371003, 371000, '文登区', '文登', '122.0581', '37.19397', 3, 0, 1), +(371082, 371000, '荣成市', '荣成', '122.4229', '37.160133', 3, 0, 1), +(371083, 371000, '乳山市', '乳山', '121.53635', '36.91962', 3, 0, 1), +(371100, 370000, '日照市', '日照', '119.461205', '35.42859', 2, 0, 1), +(371102, 371100, '东港区', '东港', '119.4577', '35.42615', 3, 0, 1), +(371103, 371100, '岚山区', '岚山', '119.31584', '35.119793', 3, 0, 1), +(371121, 371100, '五莲县', '五莲', '119.20674', '35.751938', 3, 0, 1), +(371122, 371100, '莒县', '莒县', '118.832855', '35.588116', 3, 0, 1), +(371300, 370000, '临沂市', '临沂', '118.32645', '35.06528', 2, 0, 1), +(371302, 371300, '兰山区', '兰山', '118.32767', '35.06163', 3, 0, 1), +(371311, 371300, '罗庄区', '罗庄', '118.2848', '34.997204', 3, 0, 1), +(371312, 371300, '河东区', '河东', '118.39829', '35.085003', 3, 0, 1), +(371321, 371300, '沂南县', '沂南', '118.4554', '35.547', 3, 0, 1), +(371322, 371300, '郯城县', '郯城', '118.342964', '34.614742', 3, 0, 1), +(371323, 371300, '沂水县', '沂水', '118.634544', '35.78703', 3, 0, 1), +(371324, 371300, '兰陵县', '苍山', '118.32645', '35.06528', 3, 0, 1), +(371325, 371300, '费县', '费县', '117.96887', '35.269173', 3, 0, 1), +(371326, 371300, '平邑县', '平邑', '117.63188', '35.51152', 3, 0, 1), +(371327, 371300, '莒南县', '莒南', '118.838326', '35.17591', 3, 0, 1), +(371328, 371300, '蒙阴县', '蒙阴', '117.94327', '35.712437', 3, 0, 1), +(371329, 371300, '临沭县', '临沭', '118.64838', '34.91706', 3, 0, 1), +(371400, 370000, '德州市', '德州', '116.30743', '37.453968', 2, 0, 1), +(371402, 371400, '德城区', '德城', '116.307076', '37.453922', 3, 0, 1), +(371403, 371400, '陵城区', '陵城', '116.57634', '37.33566', 3, 0, 1), +(371422, 371400, '宁津县', '宁津', '116.79372', '37.64962', 3, 0, 1), +(371423, 371400, '庆云县', '庆云', '117.39051', '37.777725', 3, 0, 1), +(371424, 371400, '临邑县', '临邑', '116.86703', '37.192043', 3, 0, 1), +(371425, 371400, '齐河县', '齐河', '116.75839', '36.795498', 3, 0, 1), +(371426, 371400, '平原县', '平原', '116.43391', '37.164467', 3, 0, 1), +(371427, 371400, '夏津县', '夏津', '116.003815', '36.9505', 3, 0, 1), +(371428, 371400, '武城县', '武城', '116.07863', '37.209526', 3, 0, 1), +(371481, 371400, '乐陵市', '乐陵', '117.21666', '37.729115', 3, 0, 1), +(371482, 371400, '禹城市', '禹城', '116.642555', '36.934486', 3, 0, 1), +(371500, 370000, '聊城市', '聊城', '115.98037', '36.456013', 2, 0, 1), +(371502, 371500, '东昌府区', '东昌府', '115.98003', '36.45606', 3, 0, 1), +(371503, 371500, '茌平区', '茌平', '116.25522', '36.58068', 3, 0, 1), +(371521, 371500, '阳谷县', '阳谷', '115.78429', '36.11371', 3, 0, 1), +(371522, 371500, '莘县', '莘县', '115.66729', '36.2376', 3, 0, 1), +(371524, 371500, '东阿县', '东阿', '116.248856', '36.336002', 3, 0, 1), +(371525, 371500, '冠县', '冠县', '115.44481', '36.483753', 3, 0, 1), +(371526, 371500, '高唐县', '高唐', '116.22966', '36.859756', 3, 0, 1), +(371581, 371500, '临清市', '临清', '115.71346', '36.842598', 3, 0, 1), +(371600, 370000, '滨州市', '滨州', '118.016975', '37.38354', 2, 0, 1), +(371602, 371600, '滨城区', '滨城', '118.02015', '37.384842', 3, 0, 1), +(371603, 371600, '沾化区', '沾化', '118.09882', '37.70058', 3, 0, 1), +(371621, 371600, '惠民县', '惠民', '117.50894', '37.483875', 3, 0, 1), +(371622, 371600, '阳信县', '阳信', '117.58133', '37.64049', 3, 0, 1), +(371623, 371600, '无棣县', '无棣', '117.616325', '37.74085', 3, 0, 1), +(371625, 371600, '博兴县', '博兴', '118.12309', '37.147003', 3, 0, 1), +(371681, 371600, '邹平市', '邹平', '117.74309', '36.86299', 3, 0, 1), +(371700, 370000, '菏泽市', '菏泽', '115.46938', '35.246532', 2, 0, 1), +(371702, 371700, '牡丹区', '牡丹', '115.47095', '35.24311', 3, 0, 1), +(371703, 371700, '定陶区', '定陶', '115.57298', '35.07095', 3, 0, 1), +(371721, 371700, '曹县', '曹县', '115.549484', '34.823254', 3, 0, 1), +(371722, 371700, '单县', '单县', '116.08262', '34.79085', 3, 0, 1), +(371723, 371700, '成武县', '成武', '115.89735', '34.947365', 3, 0, 1), +(371724, 371700, '巨野县', '巨野', '116.08934', '35.391', 3, 0, 1), +(371725, 371700, '郓城县', '郓城', '115.93885', '35.594772', 3, 0, 1), +(371726, 371700, '鄄城县', '鄄城', '115.51434', '35.560257', 3, 0, 1), +(371728, 371700, '东明县', '东明', '115.09841', '35.28964', 3, 0, 1), +(410000, 0, '河南省', '河南', '113.66541', '34.757977', 1, 0, 1), +(410100, 410000, '郑州市', '郑州', '113.66541', '34.757977', 2, 0, 1), +(410102, 410100, '中原区', '中原', '113.61157', '34.748287', 3, 0, 1), +(410103, 410100, '二七区', '二七', '113.645424', '34.730934', 3, 0, 1), +(410104, 410100, '管城回族区', '管城回族', '113.68531', '34.746452', 3, 0, 1), +(410105, 410100, '金水区', '金水', '113.686035', '34.775837', 3, 0, 1), +(410106, 410100, '上街区', '上街', '113.29828', '34.80869', 3, 0, 1), +(410108, 410100, '惠济区', '惠济', '113.61836', '34.82859', 3, 0, 1), +(410122, 410100, '中牟县', '中牟', '114.02252', '34.721977', 3, 0, 1), +(410181, 410100, '巩义市', '巩义', '112.98283', '34.75218', 3, 0, 1), +(410182, 410100, '荥阳市', '荥阳', '113.391525', '34.789078', 3, 0, 1), +(410183, 410100, '新密市', '新密', '113.380615', '34.537846', 3, 0, 1), +(410184, 410100, '新郑市', '新郑', '113.73967', '34.39422', 3, 0, 1), +(410185, 410100, '登封市', '登封', '113.037766', '34.459938', 3, 0, 1), +(410200, 410000, '开封市', '开封', '114.341446', '34.79705', 2, 0, 1), +(410202, 410200, '龙亭区', '龙亭', '114.35335', '34.79983', 3, 0, 1), +(410203, 410200, '顺河回族区', '顺河回族', '114.364876', '34.80046', 3, 0, 1), +(410204, 410200, '鼓楼区', '鼓楼', '114.3485', '34.79238', 3, 0, 1), +(410205, 410200, '禹王台区', '禹王台', '114.35024', '34.779728', 3, 0, 1), +(410212, 410200, '祥符区', '祥符', '114.44136', '34.757', 3, 0, 1), +(410221, 410200, '杞县', '杞县', '114.77047', '34.554585', 3, 0, 1), +(410222, 410200, '通许县', '通许', '114.467735', '34.477303', 3, 0, 1), +(410223, 410200, '尉氏县', '尉氏', '114.193924', '34.412254', 3, 0, 1), +(410225, 410200, '兰考县', '兰考', '114.82057', '34.8299', 3, 0, 1), +(410300, 410000, '洛阳市', '洛阳', '112.43447', '34.66304', 2, 0, 1), +(410302, 410300, '老城区', '老城', '112.477295', '34.682945', 3, 0, 1), +(410303, 410300, '西工区', '西工', '112.44323', '34.667847', 3, 0, 1), +(410304, 410300, '瀍河回族区', '瀍河回族', '112.49162', '34.68474', 3, 0, 1), +(410305, 410300, '涧西区', '涧西', '112.39925', '34.65425', 3, 0, 1), +(410306, 410300, '吉利区', '吉利', '112.58479', '34.899094', 3, 0, 1), +(410311, 410300, '洛龙区', '洛龙', '112.4647', '34.6196', 3, 0, 1), +(410322, 410300, '孟津县', '孟津', '112.44389', '34.826485', 3, 0, 1), +(410323, 410300, '新安县', '新安', '112.1414', '34.72868', 3, 0, 1), +(410324, 410300, '栾川县', '栾川', '111.618385', '33.783195', 3, 0, 1), +(410325, 410300, '嵩县', '嵩县', '112.08777', '34.13156', 3, 0, 1), +(410326, 410300, '汝阳县', '汝阳', '112.473785', '34.15323', 3, 0, 1), +(410327, 410300, '宜阳县', '宜阳', '112.17999', '34.51648', 3, 0, 1), +(410328, 410300, '洛宁县', '洛宁', '111.655396', '34.38718', 3, 0, 1), +(410329, 410300, '伊川县', '伊川', '112.42938', '34.423416', 3, 0, 1), +(410381, 410300, '偃师市', '偃师', '112.78774', '34.72304', 3, 0, 1), +(410400, 410000, '平顶山市', '平顶山', '113.30772', '33.73524', 2, 0, 1), +(410402, 410400, '新华区', '新华', '113.299065', '33.73758', 3, 0, 1), +(410403, 410400, '卫东区', '卫东', '113.310326', '33.739285', 3, 0, 1), +(410404, 410400, '石龙区', '石龙', '112.889885', '33.90154', 3, 0, 1), +(410411, 410400, '湛河区', '湛河', '113.32087', '33.72568', 3, 0, 1), +(410421, 410400, '宝丰县', '宝丰', '113.06681', '33.86636', 3, 0, 1), +(410422, 410400, '叶县', '叶县', '113.3583', '33.62125', 3, 0, 1), +(410423, 410400, '鲁山县', '鲁山', '112.9067', '33.740326', 3, 0, 1), +(410425, 410400, '郏县', '郏县', '113.22045', '33.971992', 3, 0, 1), +(410481, 410400, '舞钢市', '舞钢', '113.52625', '33.302082', 3, 0, 1), +(410482, 410400, '汝州市', '汝州', '112.84534', '34.167408', 3, 0, 1), +(410500, 410000, '安阳市', '安阳', '114.352486', '36.103443', 2, 0, 1), +(410502, 410500, '文峰区', '文峰', '114.35256', '36.098103', 3, 0, 1), +(410503, 410500, '北关区', '北关', '114.352646', '36.10978', 3, 0, 1), +(410505, 410500, '殷都区', '殷都', '114.300095', '36.108974', 3, 0, 1), +(410506, 410500, '龙安区', '龙安', '114.323524', '36.09557', 3, 0, 1), +(410522, 410500, '安阳县', '安阳', '114.1302', '36.130585', 3, 0, 1), +(410523, 410500, '汤阴县', '汤阴', '114.36236', '35.922348', 3, 0, 1), +(410526, 410500, '滑县', '滑县', '114.524', '35.574627', 3, 0, 1), +(410527, 410500, '内黄县', '内黄', '114.90458', '35.9537', 3, 0, 1), +(410581, 410500, '林州市', '林州', '113.82377', '36.063404', 3, 0, 1), +(410600, 410000, '鹤壁市', '鹤壁', '114.29544', '35.748238', 2, 0, 1), +(410602, 410600, '鹤山区', '鹤山', '114.16655', '35.936127', 3, 0, 1), +(410603, 410600, '山城区', '山城', '114.184204', '35.896057', 3, 0, 1), +(410611, 410600, '淇滨区', '淇滨', '114.293915', '35.748383', 3, 0, 1), +(410621, 410600, '浚县', '浚县', '114.55016', '35.671284', 3, 0, 1), +(410622, 410600, '淇县', '淇县', '114.20038', '35.609478', 3, 0, 1), +(410700, 410000, '新乡市', '新乡', '113.88399', '35.302616', 2, 0, 1), +(410702, 410700, '红旗区', '红旗', '113.87816', '35.302685', 3, 0, 1), +(410703, 410700, '卫滨区', '卫滨', '113.866066', '35.304905', 3, 0, 1), +(410704, 410700, '凤泉区', '凤泉', '113.906715', '35.379856', 3, 0, 1), +(410711, 410700, '牧野区', '牧野', '113.89716', '35.312973', 3, 0, 1), +(410721, 410700, '新乡县', '新乡', '113.80618', '35.19002', 3, 0, 1), +(410724, 410700, '获嘉县', '获嘉', '113.65725', '35.261684', 3, 0, 1), +(410725, 410700, '原阳县', '原阳', '113.965965', '35.054', 3, 0, 1), +(410726, 410700, '延津县', '延津', '114.20098', '35.149513', 3, 0, 1), +(410727, 410700, '封丘县', '封丘', '114.42341', '35.04057', 3, 0, 1), +(410781, 410700, '卫辉市', '卫辉', '114.06586', '35.404297', 3, 0, 1), +(410782, 410700, '辉县市', '辉县', '113.80252', '35.46132', 3, 0, 1), +(410783, 410700, '长垣市', '长垣', '114.66886', '35.20049', 3, 0, 1), +(410800, 410000, '焦作市', '焦作', '113.238266', '35.23904', 2, 0, 1), +(410802, 410800, '解放区', '解放', '113.22613', '35.241352', 3, 0, 1), +(410803, 410800, '中站区', '中站', '113.17548', '35.236145', 3, 0, 1), +(410804, 410800, '马村区', '马村', '113.3217', '35.265453', 3, 0, 1), +(410811, 410800, '山阳区', '山阳', '113.26766', '35.21476', 3, 0, 1), +(410821, 410800, '修武县', '修武', '113.447464', '35.229923', 3, 0, 1), +(410822, 410800, '博爱县', '博爱', '113.06931', '35.17035', 3, 0, 1), +(410823, 410800, '武陟县', '武陟', '113.40833', '35.09885', 3, 0, 1), +(410825, 410800, '温县', '温县', '113.07912', '34.941235', 3, 0, 1), +(410882, 410800, '沁阳市', '沁阳', '112.93454', '35.08901', 3, 0, 1), +(410883, 410800, '孟州市', '孟州', '112.78708', '34.90963', 3, 0, 1), +(410900, 410000, '濮阳市', '濮阳', '115.0413', '35.768234', 2, 0, 1), +(410902, 410900, '华龙区', '华龙', '115.03184', '35.76047', 3, 0, 1), +(410922, 410900, '清丰县', '清丰', '115.107285', '35.902412', 3, 0, 1), +(410923, 410900, '南乐县', '南乐', '115.20434', '36.075203', 3, 0, 1), +(410926, 410900, '范县', '范县', '115.50421', '35.85198', 3, 0, 1), +(410927, 410900, '台前县', '台前', '115.85568', '35.996475', 3, 0, 1), +(410928, 410900, '濮阳县', '濮阳', '115.02384', '35.71035', 3, 0, 1), +(411000, 410000, '许昌市', '许昌', '113.826065', '34.022957', 2, 0, 1), +(411002, 411000, '魏都区', '魏都', '113.82831', '34.02711', 3, 0, 1), +(411003, 411000, '建安区', '建安', '', '', 3, 0, 1), +(411024, 411000, '鄢陵县', '鄢陵', '114.18851', '34.100502', 3, 0, 1), +(411025, 411000, '襄城县', '襄城', '113.493164', '33.85594', 3, 0, 1), +(411081, 411000, '禹州市', '禹州', '113.47131', '34.154404', 3, 0, 1), +(411082, 411000, '长葛市', '长葛', '113.76891', '34.219257', 3, 0, 1), +(411100, 410000, '漯河市', '漯河', '114.026405', '33.575855', 2, 0, 1), +(411102, 411100, '源汇区', '源汇', '114.017944', '33.56544', 3, 0, 1), +(411103, 411100, '郾城区', '郾城', '114.016815', '33.588898', 3, 0, 1), +(411104, 411100, '召陵区', '召陵', '114.05169', '33.567554', 3, 0, 1), +(411121, 411100, '舞阳县', '舞阳', '113.610565', '33.43628', 3, 0, 1), +(411122, 411100, '临颍县', '临颍', '113.93889', '33.80609', 3, 0, 1), +(411200, 410000, '三门峡市', '三门峡', '111.1941', '34.777336', 2, 0, 1), +(411202, 411200, '湖滨区', '湖滨', '111.19487', '34.77812', 3, 0, 1), +(411203, 411200, '陕州区', '陕州', '111.10338', '34.72054', 3, 0, 1), +(411221, 411200, '渑池县', '渑池', '111.76299', '34.76349', 3, 0, 1), +(411224, 411200, '卢氏县', '卢氏', '111.05265', '34.053993', 3, 0, 1), +(411281, 411200, '义马市', '义马', '111.869415', '34.74687', 3, 0, 1), +(411282, 411200, '灵宝市', '灵宝', '110.88577', '34.521263', 3, 0, 1), +(411300, 410000, '南阳市', '南阳', '112.54092', '32.99908', 2, 0, 1), +(411302, 411300, '宛城区', '宛城', '112.54459', '32.994858', 3, 0, 1), +(411303, 411300, '卧龙区', '卧龙', '112.528786', '32.989876', 3, 0, 1), +(411321, 411300, '南召县', '南召', '112.435585', '33.488617', 3, 0, 1), +(411322, 411300, '方城县', '方城', '113.01093', '33.25514', 3, 0, 1), +(411323, 411300, '西峡县', '西峡', '111.48577', '33.302982', 3, 0, 1), +(411324, 411300, '镇平县', '镇平', '112.23272', '33.03665', 3, 0, 1), +(411325, 411300, '内乡县', '内乡', '111.8438', '33.046356', 3, 0, 1), +(411326, 411300, '淅川县', '淅川', '111.48903', '33.136105', 3, 0, 1), +(411327, 411300, '社旗县', '社旗县', '112.93828', '33.056126', 3, 0, 1), +(411328, 411300, '唐河县', '唐河', '112.83849', '32.687893', 3, 0, 1), +(411329, 411300, '新野县', '新野', '112.36562', '32.524006', 3, 0, 1), +(411330, 411300, '桐柏县', '桐柏', '113.40606', '32.367153', 3, 0, 1), +(411381, 411300, '邓州市', '邓州', '112.09271', '32.68164', 3, 0, 1), +(411400, 410000, '商丘市', '商丘', '115.6505', '34.437054', 2, 0, 1), +(411402, 411400, '梁园区', '梁园', '115.65459', '34.436554', 3, 0, 1), +(411403, 411400, '睢阳区', '睢阳', '115.65382', '34.390537', 3, 0, 1), +(411421, 411400, '民权县', '民权', '115.14815', '34.648457', 3, 0, 1), +(411422, 411400, '睢县', '睢县', '115.07011', '34.428432', 3, 0, 1), +(411423, 411400, '宁陵县', '宁陵', '115.32005', '34.4493', 3, 0, 1), +(411424, 411400, '柘城县', '柘城', '115.307434', '34.075275', 3, 0, 1), +(411425, 411400, '虞城县', '虞城', '115.86381', '34.399635', 3, 0, 1), +(411426, 411400, '夏邑县', '夏邑', '116.13989', '34.240894', 3, 0, 1), +(411481, 411400, '永城市', '永城', '116.44967', '33.931316', 3, 0, 1), +(411500, 410000, '信阳市', '信阳', '114.07503', '32.123276', 2, 0, 1), +(411502, 411500, '浉河区', '浉河', '114.07503', '32.123276', 3, 0, 1), +(411503, 411500, '平桥区', '平桥', '114.12603', '32.098396', 3, 0, 1), +(411521, 411500, '罗山县', '罗山', '114.53342', '32.203205', 3, 0, 1), +(411522, 411500, '光山县', '光山', '114.90358', '32.0104', 3, 0, 1), +(411523, 411500, '新县', '新县', '114.87705', '31.63515', 3, 0, 1), +(411524, 411500, '商城县', '商城', '115.406296', '31.799982', 3, 0, 1), +(411525, 411500, '固始县', '固始', '115.66733', '32.183075', 3, 0, 1), +(411526, 411500, '潢川县', '潢川', '115.050125', '32.134026', 3, 0, 1), +(411527, 411500, '淮滨县', '淮滨', '115.41545', '32.45264', 3, 0, 1), +(411528, 411500, '息县', '息县', '114.740715', '32.344746', 3, 0, 1), +(411600, 410000, '周口市', '周口', '114.64965', '33.620358', 2, 0, 1), +(411602, 411600, '川汇区', '川汇', '114.65214', '33.614838', 3, 0, 1), +(411603, 411600, '淮阳区', '淮阳', '114.88614', '33.7315', 3, 0, 1), +(411621, 411600, '扶沟县', '扶沟', '114.392006', '34.05406', 3, 0, 1), +(411622, 411600, '西华县', '西华', '114.53007', '33.784378', 3, 0, 1), +(411623, 411600, '商水县', '商水', '114.60927', '33.543846', 3, 0, 1), +(411624, 411600, '沈丘县', '沈丘', '115.07838', '33.395515', 3, 0, 1), +(411625, 411600, '郸城县', '郸城', '115.189', '33.643852', 3, 0, 1), +(411627, 411600, '太康县', '太康', '114.853836', '34.06531', 3, 0, 1), +(411628, 411600, '鹿邑县', '鹿邑', '115.48639', '33.86107', 3, 0, 1), +(411681, 411600, '项城市', '项城', '114.89952', '33.443085', 3, 0, 1), +(411700, 410000, '驻马店市', '驻马店', '114.024734', '32.980167', 2, 0, 1), +(411702, 411700, '驿城区', '驿城', '114.02915', '32.97756', 3, 0, 1), +(411721, 411700, '西平县', '西平', '114.02686', '33.382317', 3, 0, 1), +(411722, 411700, '上蔡县', '上蔡', '114.26689', '33.264717', 3, 0, 1), +(411723, 411700, '平舆县', '平舆', '114.63711', '32.955627', 3, 0, 1), +(411724, 411700, '正阳县', '正阳', '114.38948', '32.601826', 3, 0, 1), +(411725, 411700, '确山县', '确山', '114.02668', '32.801537', 3, 0, 1), +(411726, 411700, '泌阳县', '泌阳', '113.32605', '32.72513', 3, 0, 1), +(411727, 411700, '汝南县', '汝南', '114.3595', '33.004536', 3, 0, 1), +(411728, 411700, '遂平县', '遂平', '114.00371', '33.14698', 3, 0, 1), +(411729, 411700, '新蔡县', '新蔡', '114.97524', '32.749947', 3, 0, 1), +(419001, 419000, '济源市', '济源', '112.60273', '35.06707', 3, 0, 1), +(420000, 0, '湖北省', '湖北', '114.29857', '30.584354', 1, 0, 1), +(420100, 420000, '武汉市', '武汉', '114.29857', '30.584354', 2, 0, 1), +(420102, 420100, '江岸区', '江岸', '114.30304', '30.594912', 3, 0, 1), +(420103, 420100, '江汉区', '江汉', '114.28311', '30.578772', 3, 0, 1), +(420104, 420100, '硚口区', '硚口', '114.264565', '30.57061', 3, 0, 1), +(420105, 420100, '汉阳区', '汉阳', '114.26581', '30.549326', 3, 0, 1), +(420106, 420100, '武昌区', '武昌', '114.30734', '30.546535', 3, 0, 1), +(420107, 420100, '青山区', '青山', '114.39707', '30.634214', 3, 0, 1), +(420111, 420100, '洪山区', '洪山', '114.40072', '30.50426', 3, 0, 1), +(420112, 420100, '东西湖区', '东西湖', '114.14249', '30.622467', 3, 0, 1), +(420113, 420100, '汉南区', '汉南', '114.08124', '30.309637', 3, 0, 1), +(420114, 420100, '蔡甸区', '蔡甸', '114.02934', '30.582186', 3, 0, 1), +(420115, 420100, '江夏区', '江夏', '114.31396', '30.349045', 3, 0, 1), +(420116, 420100, '黄陂区', '黄陂', '114.37402', '30.874155', 3, 0, 1), +(420117, 420100, '新洲区', '新洲', '114.80211', '30.84215', 3, 0, 1), +(420200, 420000, '黄石市', '黄石', '115.07705', '30.220074', 2, 0, 1), +(420202, 420200, '黄石港区', '黄石港', '115.090164', '30.212086', 3, 0, 1), +(420203, 420200, '西塞山区', '西塞山', '115.09335', '30.205364', 3, 0, 1), +(420204, 420200, '下陆区', '下陆', '114.97575', '30.177845', 3, 0, 1), +(420205, 420200, '铁山区', '铁山', '114.90137', '30.20601', 3, 0, 1), +(420222, 420200, '阳新县', '阳新', '115.21288', '29.841572', 3, 0, 1), +(420281, 420200, '大冶市', '大冶', '114.97484', '30.098804', 3, 0, 1), +(420300, 420000, '十堰市', '十堰', '110.78792', '32.646908', 2, 0, 1), +(420302, 420300, '茅箭区', '茅箭', '110.78621', '32.644463', 3, 0, 1), +(420303, 420300, '张湾区', '张湾', '110.77236', '32.652515', 3, 0, 1), +(420304, 420300, '郧阳区', '郧阳', '110.81197', '32.83488', 3, 0, 1), +(420322, 420300, '郧西县', '郧西', '110.426476', '32.99146', 3, 0, 1), +(420323, 420300, '竹山县', '竹山', '110.2296', '32.22586', 3, 0, 1), +(420324, 420300, '竹溪县', '竹溪', '109.71719', '32.315342', 3, 0, 1), +(420325, 420300, '房县', '房县', '110.74197', '32.055', 3, 0, 1), +(420381, 420300, '丹江口市', '丹江口', '111.513794', '32.538837', 3, 0, 1), +(420500, 420000, '宜昌市', '宜昌', '111.29084', '30.702637', 2, 0, 1), +(420502, 420500, '西陵区', '西陵', '111.29547', '30.702477', 3, 0, 1), +(420503, 420500, '伍家岗区', '伍家岗', '111.30721', '30.679052', 3, 0, 1), +(420504, 420500, '点军区', '点军', '111.268166', '30.692322', 3, 0, 1), +(420505, 420500, '猇亭区', '猇亭', '111.29084', '30.702637', 3, 0, 1), +(420506, 420500, '夷陵区', '夷陵', '111.326744', '30.770199', 3, 0, 1), +(420525, 420500, '远安县', '远安', '111.64331', '31.059626', 3, 0, 1), +(420526, 420500, '兴山县', '兴山', '110.7545', '31.34795', 3, 0, 1), +(420527, 420500, '秭归县', '秭归', '110.97678', '30.823908', 3, 0, 1), +(420528, 420500, '长阳土家族自治县', '长阳', '111.19848', '30.466534', 3, 0, 1), +(420529, 420500, '五峰土家族自治县', '五峰', '110.674934', '30.199251', 3, 0, 1), +(420581, 420500, '宜都市', '宜都', '111.45437', '30.387234', 3, 0, 1), +(420582, 420500, '当阳市', '当阳', '111.79342', '30.824492', 3, 0, 1), +(420583, 420500, '枝江市', '枝江', '111.7518', '30.425364', 3, 0, 1), +(420600, 420000, '襄阳市', '襄阳', '112.14415', '32.042427', 2, 0, 1), +(420602, 420600, '襄城区', '襄城', '112.15033', '32.015087', 3, 0, 1), +(420606, 420600, '樊城区', '樊城', '112.13957', '32.05859', 3, 0, 1), +(420607, 420600, '襄州区', '襄州', '112.19738', '32.085518', 3, 0, 1), +(420624, 420600, '南漳县', '南漳', '111.84442', '31.77692', 3, 0, 1), +(420625, 420600, '谷城县', '谷城', '111.640144', '32.262676', 3, 0, 1), +(420626, 420600, '保康县', '保康', '111.26224', '31.873507', 3, 0, 1), +(420682, 420600, '老河口市', '老河口', '111.675735', '32.385437', 3, 0, 1), +(420683, 420600, '枣阳市', '枣阳', '112.76527', '32.12308', 3, 0, 1), +(420684, 420600, '宜城市', '宜城', '112.261444', '31.709204', 3, 0, 1), +(420700, 420000, '鄂州市', '鄂州', '114.890594', '30.396536', 2, 0, 1), +(420702, 420700, '梁子湖区', '梁子湖', '114.68197', '30.09819', 3, 0, 1), +(420703, 420700, '华容区', '华容', '114.74148', '30.534468', 3, 0, 1), +(420704, 420700, '鄂城区', '鄂城', '114.890015', '30.39669', 3, 0, 1), +(420800, 420000, '荆门市', '荆门', '112.204254', '31.03542', 2, 0, 1), +(420802, 420800, '东宝区', '东宝', '112.2048', '31.03346', 3, 0, 1), +(420804, 420800, '掇刀区', '掇刀', '112.19841', '30.980799', 3, 0, 1), +(420822, 420800, '沙洋县', '沙洋', '112.595215', '30.70359', 3, 0, 1), +(420881, 420800, '钟祥市', '钟祥', '112.587265', '31.165573', 3, 0, 1), +(420882, 420800, '京山市', '京山', '113.11953', '31.01848', 3, 0, 1), +(420900, 420000, '孝感市', '孝感', '113.92666', '30.926422', 2, 0, 1), +(420902, 420900, '孝南区', '孝南', '113.92585', '30.925966', 3, 0, 1), +(420921, 420900, '孝昌县', '孝昌', '113.98896', '31.251617', 3, 0, 1), +(420922, 420900, '大悟县', '大悟', '114.12625', '31.565483', 3, 0, 1), +(420923, 420900, '云梦县', '云梦', '113.75062', '31.02169', 3, 0, 1), +(420981, 420900, '应城市', '应城', '113.573845', '30.939037', 3, 0, 1), +(420982, 420900, '安陆市', '安陆', '113.6904', '31.26174', 3, 0, 1), +(420984, 420900, '汉川市', '汉川', '113.835304', '30.652164', 3, 0, 1), +(421000, 420000, '荆州市', '荆州', '112.23813', '30.326857', 2, 0, 1), +(421002, 421000, '沙市区', '沙市', '112.25743', '30.315895', 3, 0, 1), +(421003, 421000, '荆州区', '荆州', '112.19535', '30.350674', 3, 0, 1), +(421022, 421000, '公安县', '公安', '112.23018', '30.059065', 3, 0, 1), +(421023, 421000, '监利县', '监利', '112.90434', '29.82008', 3, 0, 1), +(421024, 421000, '江陵县', '江陵', '112.41735', '30.033918', 3, 0, 1), +(421081, 421000, '石首市', '石首', '112.40887', '29.716436', 3, 0, 1), +(421083, 421000, '洪湖市', '洪湖', '113.47031', '29.81297', 3, 0, 1), +(421087, 421000, '松滋市', '松滋', '111.77818', '30.176037', 3, 0, 1), +(421100, 420000, '黄冈市', '黄冈', '114.879364', '30.447712', 2, 0, 1), +(421102, 421100, '黄州区', '黄州', '114.87894', '30.447435', 3, 0, 1), +(421121, 421100, '团风县', '团风', '114.87203', '30.63569', 3, 0, 1), +(421122, 421100, '红安县', '红安', '114.6151', '31.284777', 3, 0, 1), +(421123, 421100, '罗田县', '罗田', '115.39899', '30.78168', 3, 0, 1), +(421124, 421100, '英山县', '英山', '115.67753', '30.735794', 3, 0, 1), +(421125, 421100, '浠水县', '浠水', '115.26344', '30.454838', 3, 0, 1), +(421126, 421100, '蕲春县', '蕲春', '115.43397', '30.234926', 3, 0, 1), +(421127, 421100, '黄梅县', '黄梅', '115.94255', '30.075113', 3, 0, 1), +(421181, 421100, '麻城市', '麻城', '115.02541', '31.177906', 3, 0, 1), +(421182, 421100, '武穴市', '武穴', '115.56242', '29.849342', 3, 0, 1), +(421200, 420000, '咸宁市', '咸宁', '114.328964', '29.832798', 2, 0, 1), +(421202, 421200, '咸安区', '咸安', '114.33389', '29.824717', 3, 0, 1), +(421221, 421200, '嘉鱼县', '嘉鱼', '113.92155', '29.973364', 3, 0, 1), +(421222, 421200, '通城县', '通城', '113.81413', '29.246077', 3, 0, 1), +(421223, 421200, '崇阳县', '崇阳', '114.04996', '29.54101', 3, 0, 1), +(421224, 421200, '通山县', '通山', '114.493164', '29.604456', 3, 0, 1), +(421281, 421200, '赤壁市', '赤壁', '113.88366', '29.716879', 3, 0, 1), +(421300, 420000, '随州市', '随州', '113.37377', '31.717497', 2, 0, 1), +(421303, 421300, '曾都区', '曾都', '113.3712', '31.71615', 3, 0, 1), +(421321, 421300, '随县', '随县', '113.301384', '31.854246', 3, 0, 1), +(421381, 421300, '广水市', '广水', '113.8266', '31.617731', 3, 0, 1), +(422800, 420000, '恩施土家族苗族自治州', '恩施', '109.48699', '30.283113', 2, 0, 1), +(422801, 422800, '恩施市', '恩施', '109.48676', '30.282406', 3, 0, 1), +(422802, 422800, '利川市', '利川', '108.94349', '30.294247', 3, 0, 1), +(422822, 422800, '建始县', '建始', '109.72382', '30.601631', 3, 0, 1), +(422823, 422800, '巴东县', '巴东', '110.33666', '31.041403', 3, 0, 1), +(422825, 422800, '宣恩县', '宣恩', '109.48282', '29.98867', 3, 0, 1), +(422826, 422800, '咸丰县', '咸丰', '109.15041', '29.678967', 3, 0, 1), +(422827, 422800, '来凤县', '来凤', '109.408325', '29.506945', 3, 0, 1), +(422828, 422800, '鹤峰县', '鹤峰', '110.0337', '29.887299', 3, 0, 1), +(429004, 429000, '仙桃市', '仙桃', '113.45397', '30.364952', 3, 0, 1), +(429005, 420000, '潜江市', '潜江', '112.896866', '30.421215', 3, 0, 1), +(429006, 429000, '天门市', '天门', '113.16586', '30.65306', 3, 0, 1), +(429021, 429000, '神农架林区', '神农架', '114.29857', '30.584354', 3, 0, 1), +(430000, 0, '湖南省', '湖南', '112.98228', '28.19409', 1, 0, 1), +(430100, 430000, '长沙市', '长沙', '112.98228', '28.19409', 2, 0, 1), +(430102, 430100, '芙蓉区', '芙蓉', '112.98809', '28.193106', 3, 0, 1), +(430103, 430100, '天心区', '天心', '112.97307', '28.192375', 3, 0, 1), +(430104, 430100, '岳麓区', '岳麓', '112.91159', '28.213043', 3, 0, 1), +(430105, 430100, '开福区', '开福', '112.98553', '28.201336', 3, 0, 1), +(430111, 430100, '雨花区', '雨花', '113.016335', '28.109938', 3, 0, 1), +(430112, 430100, '望城区', '望城', '112.8179', '28.36121', 3, 0, 1), +(430121, 430100, '长沙县', '长沙', '113.0801', '28.237888', 3, 0, 1), +(430181, 430100, '浏阳市', '浏阳', '113.6333', '28.141111', 3, 0, 1), +(430182, 430100, '宁乡市', '宁乡', '112.55183', '28.27741', 3, 0, 1), +(430200, 430000, '株洲市', '株洲', '113.15173', '27.835806', 2, 0, 1), +(430202, 430200, '荷塘区', '荷塘', '113.162544', '27.833036', 3, 0, 1), +(430203, 430200, '芦淞区', '芦淞', '113.15517', '27.827246', 3, 0, 1), +(430204, 430200, '石峰区', '石峰', '113.11295', '27.871944', 3, 0, 1), +(430211, 430200, '天元区', '天元', '113.13625', '27.826908', 3, 0, 1), +(430212, 430200, '渌口区', '渌口', '113.14398', '27.69938', 3, 0, 1), +(430223, 430200, '攸县', '攸县', '113.34577', '27.00007', 3, 0, 1), +(430224, 430200, '茶陵县', '茶陵', '113.54651', '26.789534', 3, 0, 1), +(430225, 430200, '炎陵县', '炎陵', '113.776886', '26.489458', 3, 0, 1), +(430281, 430200, '醴陵市', '醴陵', '113.50716', '27.657873', 3, 0, 1), +(430300, 430000, '湘潭市', '湘潭', '112.94405', '27.82973', 2, 0, 1), +(430302, 430300, '雨湖区', '雨湖', '112.907425', '27.86077', 3, 0, 1), +(430304, 430300, '岳塘区', '岳塘', '112.927704', '27.828854', 3, 0, 1), +(430321, 430300, '湘潭县', '湘潭', '112.95283', '27.7786', 3, 0, 1), +(430381, 430300, '湘乡市', '湘乡', '112.525215', '27.734919', 3, 0, 1), +(430382, 430300, '韶山市', '韶山', '112.52848', '27.922682', 3, 0, 1), +(430400, 430000, '衡阳市', '衡阳', '112.6077', '26.900358', 2, 0, 1), +(430405, 430400, '珠晖区', '珠晖', '112.62633', '26.891064', 3, 0, 1), +(430406, 430400, '雁峰区', '雁峰', '112.61224', '26.893694', 3, 0, 1), +(430407, 430400, '石鼓区', '石鼓', '112.607635', '26.903908', 3, 0, 1), +(430408, 430400, '蒸湘区', '蒸湘', '112.57061', '26.89087', 3, 0, 1), +(430412, 430400, '南岳区', '南岳', '112.734146', '27.240536', 3, 0, 1), +(430421, 430400, '衡阳县', '衡阳', '112.37965', '26.962387', 3, 0, 1), +(430422, 430400, '衡南县', '衡南', '112.67746', '26.739973', 3, 0, 1), +(430423, 430400, '衡山县', '衡山', '112.86971', '27.234808', 3, 0, 1), +(430424, 430400, '衡东县', '衡东', '112.95041', '27.08353', 3, 0, 1), +(430426, 430400, '祁东县', '祁东', '112.11119', '26.78711', 3, 0, 1), +(430481, 430400, '耒阳市', '耒阳', '112.84721', '26.414162', 3, 0, 1), +(430482, 430400, '常宁市', '常宁', '112.39682', '26.406773', 3, 0, 1), +(430500, 430000, '邵阳市', '邵阳', '111.46923', '27.237843', 2, 0, 1), +(430502, 430500, '双清区', '双清', '111.47976', '27.240002', 3, 0, 1), +(430503, 430500, '大祥区', '大祥', '111.46297', '27.233593', 3, 0, 1), +(430511, 430500, '北塔区', '北塔', '111.45232', '27.245687', 3, 0, 1), +(430522, 430500, '新邵县', '新邵', '111.45976', '27.311428', 3, 0, 1), +(430523, 430500, '邵阳县', '邵阳', '111.2757', '26.989714', 3, 0, 1), +(430524, 430500, '隆回县', '隆回', '111.03879', '27.116001', 3, 0, 1), +(430525, 430500, '洞口县', '洞口', '110.57921', '27.062286', 3, 0, 1), +(430527, 430500, '绥宁县', '绥宁', '110.155075', '26.580622', 3, 0, 1), +(430528, 430500, '新宁县', '新宁', '110.859116', '26.438911', 3, 0, 1), +(430529, 430500, '城步苗族自治县', '城步', '110.313225', '26.363575', 3, 0, 1), +(430581, 430500, '武冈市', '武冈', '110.6368', '26.732086', 3, 0, 1), +(430582, 430500, '邵东市', '邵东', '111.74446', '27.25844', 3, 0, 1), +(430600, 430000, '岳阳市', '岳阳', '113.13286', '29.37029', 2, 0, 1), +(430602, 430600, '岳阳楼区', '岳阳楼', '113.12075', '29.366783', 3, 0, 1), +(430603, 430600, '云溪区', '云溪', '113.27387', '29.473394', 3, 0, 1), +(430611, 430600, '君山区', '君山', '113.00408', '29.438063', 3, 0, 1), +(430621, 430600, '岳阳县', '岳阳', '113.11607', '29.144842', 3, 0, 1), +(430623, 430600, '华容县', '华容', '112.55937', '29.524107', 3, 0, 1), +(430624, 430600, '湘阴县', '湘阴', '112.88975', '28.677498', 3, 0, 1), +(430626, 430600, '平江县', '平江', '113.59375', '28.701523', 3, 0, 1), +(430681, 430600, '汨罗市', '汨罗', '113.07942', '28.803148', 3, 0, 1), +(430682, 430600, '临湘市', '临湘', '113.450806', '29.471594', 3, 0, 1), +(430700, 430000, '常德市', '常德', '111.691345', '29.040224', 2, 0, 1), +(430702, 430700, '武陵区', '武陵', '111.69072', '29.040478', 3, 0, 1), +(430703, 430700, '鼎城区', '鼎城', '111.685326', '29.014425', 3, 0, 1), +(430721, 430700, '安乡县', '安乡', '112.17229', '29.414482', 3, 0, 1), +(430722, 430700, '汉寿县', '汉寿', '111.968506', '28.907318', 3, 0, 1), +(430723, 430700, '澧县', '澧县', '111.76168', '29.64264', 3, 0, 1), +(430724, 430700, '临澧县', '临澧', '111.6456', '29.443216', 3, 0, 1), +(430725, 430700, '桃源县', '桃源', '111.484505', '28.902735', 3, 0, 1), +(430726, 430700, '石门县', '石门', '111.37909', '29.584703', 3, 0, 1), +(430781, 430700, '津市市', '津市', '111.87961', '29.630867', 3, 0, 1), +(430800, 430000, '张家界市', '张家界', '110.47992', '29.127401', 2, 0, 1), +(430802, 430800, '永定区', '永定', '110.48456', '29.125961', 3, 0, 1), +(430811, 430800, '武陵源区', '武陵源', '110.54758', '29.347828', 3, 0, 1), +(430821, 430800, '慈利县', '慈利', '111.132706', '29.423876', 3, 0, 1), +(430822, 430800, '桑植县', '桑植', '110.16404', '29.399939', 3, 0, 1), +(430900, 430000, '益阳市', '益阳', '112.35504', '28.570066', 2, 0, 1), +(430902, 430900, '资阳区', '资阳', '112.33084', '28.592772', 3, 0, 1), +(430903, 430900, '赫山区', '赫山', '112.36095', '28.568327', 3, 0, 1), +(430921, 430900, '南县', '南县', '112.4104', '29.37218', 3, 0, 1), +(430922, 430900, '桃江县', '桃江', '112.13973', '28.520992', 3, 0, 1), +(430923, 430900, '安化县', '安化', '111.221825', '28.37742', 3, 0, 1), +(430981, 430900, '沅江市', '沅江', '112.36109', '28.839712', 3, 0, 1), +(431000, 430000, '郴州市', '郴州', '113.03207', '25.793589', 2, 0, 1), +(431002, 431000, '北湖区', '北湖', '113.03221', '25.792627', 3, 0, 1), +(431003, 431000, '苏仙区', '苏仙', '113.0387', '25.793158', 3, 0, 1), +(431021, 431000, '桂阳县', '桂阳', '112.73447', '25.737448', 3, 0, 1), +(431022, 431000, '宜章县', '宜章', '112.94788', '25.394344', 3, 0, 1), +(431023, 431000, '永兴县', '永兴', '113.11482', '26.129393', 3, 0, 1), +(431024, 431000, '嘉禾县', '嘉禾', '112.37062', '25.587309', 3, 0, 1), +(431025, 431000, '临武县', '临武', '112.56459', '25.27912', 3, 0, 1), +(431026, 431000, '汝城县', '汝城', '113.685684', '25.553759', 3, 0, 1), +(431027, 431000, '桂东县', '桂东', '113.94588', '26.073917', 3, 0, 1), +(431028, 431000, '安仁县', '安仁', '113.27217', '26.708626', 3, 0, 1), +(431081, 431000, '资兴市', '资兴', '113.23682', '25.974152', 3, 0, 1), +(431100, 430000, '永州市', '永州', '111.60802', '26.434517', 2, 0, 1), +(431102, 431100, '零陵区', '零陵', '111.62635', '26.223347', 3, 0, 1), +(431103, 431100, '冷水滩区', '冷水滩', '111.607155', '26.434364', 3, 0, 1), +(431121, 431100, '祁阳县', '祁阳', '111.85734', '26.58593', 3, 0, 1), +(431122, 431100, '东安县', '东安', '111.313034', '26.397278', 3, 0, 1), +(431123, 431100, '双牌县', '双牌', '111.66215', '25.959396', 3, 0, 1), +(431124, 431100, '道县', '道县', '111.59161', '25.518444', 3, 0, 1), +(431125, 431100, '江永县', '江永', '111.3468', '25.268154', 3, 0, 1), +(431126, 431100, '宁远县', '宁远', '111.94453', '25.584112', 3, 0, 1), +(431127, 431100, '蓝山县', '蓝山', '112.1942', '25.375256', 3, 0, 1), +(431128, 431100, '新田县', '新田', '112.220345', '25.906927', 3, 0, 1), +(431129, 431100, '江华瑶族自治县', '江华', '111.57728', '25.182596', 3, 0, 1), +(431200, 430000, '怀化市', '怀化', '109.97824', '27.550081', 2, 0, 1), +(431202, 431200, '鹤城区', '鹤城', '109.98224', '27.548473', 3, 0, 1), +(431221, 431200, '中方县', '中方', '109.94806', '27.43736', 3, 0, 1), +(431222, 431200, '沅陵县', '沅陵', '110.39916', '28.455553', 3, 0, 1), +(431223, 431200, '辰溪县', '辰溪', '110.19695', '28.005474', 3, 0, 1), +(431224, 431200, '溆浦县', '溆浦', '110.593376', '27.903803', 3, 0, 1), +(431225, 431200, '会同县', '会同', '109.72079', '26.870789', 3, 0, 1), +(431226, 431200, '麻阳苗族自治县', '麻阳', '109.80281', '27.865992', 3, 0, 1), +(431227, 431200, '新晃侗族自治县', '新晃', '109.174446', '27.359898', 3, 0, 1), +(431228, 431200, '芷江侗族自治县', '芷江', '109.687775', '27.437996', 3, 0, 1), +(431229, 431200, '靖州苗族侗族自治县', '靖州', '109.69116', '26.573511', 3, 0, 1), +(431230, 431200, '通道侗族自治县', '通道', '109.783356', '26.158348', 3, 0, 1), +(431281, 431200, '洪江市', '洪江', '109.831764', '27.201876', 3, 0, 1), +(431300, 430000, '娄底市', '娄底', '112.0085', '27.728136', 2, 0, 1), +(431302, 431300, '娄星区', '娄星', '112.008484', '27.726643', 3, 0, 1), +(431321, 431300, '双峰县', '双峰', '112.19824', '27.459126', 3, 0, 1), +(431322, 431300, '新化县', '新化', '111.30675', '27.737455', 3, 0, 1), +(431381, 431300, '冷水江市', '冷水江', '111.43468', '27.685759', 3, 0, 1), +(431382, 431300, '涟源市', '涟源', '111.670845', '27.6923', 3, 0, 1), +(433100, 430000, '湘西土家族苗族自治州', '湘西', '109.73974', '28.314297', 2, 0, 1), +(433101, 433100, '吉首市', '吉首', '109.73827', '28.314827', 3, 0, 1), +(433122, 433100, '泸溪县', '泸溪', '110.21443', '28.214516', 3, 0, 1), +(433123, 433100, '凤凰县', '凤凰', '109.59919', '27.948309', 3, 0, 1), +(433124, 433100, '花垣县', '花垣', '109.479065', '28.581352', 3, 0, 1), +(433125, 433100, '保靖县', '保靖', '109.65144', '28.709604', 3, 0, 1), +(433126, 433100, '古丈县', '古丈', '109.94959', '28.616974', 3, 0, 1), +(433127, 433100, '永顺县', '永顺', '109.853294', '28.998068', 3, 0, 1), +(433130, 433100, '龙山县', '龙山', '109.44119', '29.453438', 3, 0, 1), +(440000, 0, '广东省', '广东', '113.28064', '23.125177', 1, 0, 1), +(440100, 440000, '广州市', '广州', '113.28064', '23.125177', 2, 0, 1), +(440103, 440100, '荔湾区', '荔湾', '113.243034', '23.124943', 3, 0, 1), +(440104, 440100, '越秀区', '越秀', '113.280716', '23.125624', 3, 0, 1), +(440105, 440100, '海珠区', '海珠', '113.26201', '23.10313', 3, 0, 1), +(440106, 440100, '天河区', '天河', '113.335365', '23.13559', 3, 0, 1), +(440111, 440100, '白云区', '白云', '113.26283', '23.162281', 3, 0, 1), +(440112, 440100, '黄埔区', '黄埔', '113.45076', '23.10324', 3, 0, 1), +(440113, 440100, '番禺区', '番禺', '113.36462', '22.938581', 3, 0, 1), +(440114, 440100, '花都区', '花都', '113.21118', '23.39205', 3, 0, 1), +(440115, 440100, '南沙区', '南沙', '113.53738', '22.79453', 3, 0, 1), +(440117, 440100, '从化区', '从化', '113.58646', '23.54835', 3, 0, 1), +(440118, 440100, '增城区', '增城', '113.8109', '23.26093', 3, 0, 1), +(440200, 440000, '韶关市', '韶关', '113.591545', '24.801323', 2, 0, 1), +(440203, 440200, '武江区', '武江', '113.58829', '24.80016', 3, 0, 1), +(440204, 440200, '浈江区', '浈江', '113.59922', '24.803976', 3, 0, 1), +(440205, 440200, '曲江区', '曲江', '113.60558', '24.680195', 3, 0, 1), +(440222, 440200, '始兴县', '始兴', '114.06721', '24.948364', 3, 0, 1), +(440224, 440200, '仁化县', '仁化', '113.74863', '25.088226', 3, 0, 1), +(440229, 440200, '翁源县', '翁源', '114.13129', '24.353888', 3, 0, 1), +(440232, 440200, '乳源瑶族自治县', '乳源', '113.27842', '24.77611', 3, 0, 1), +(440233, 440200, '新丰县', '新丰', '114.20703', '24.055412', 3, 0, 1), +(440281, 440200, '乐昌市', '乐昌', '113.35241', '25.128445', 3, 0, 1), +(440282, 440200, '南雄市', '南雄', '114.31123', '25.115328', 3, 0, 1), +(440300, 440000, '深圳市', '深圳', '114.085945', '22.547', 2, 0, 1), +(440303, 440300, '罗湖区', '罗湖', '114.123886', '22.555342', 3, 0, 1), +(440304, 440300, '福田区', '福田', '114.05096', '22.54101', 3, 0, 1), +(440305, 440300, '南山区', '南山', '113.92943', '22.531221', 3, 0, 1), +(440306, 440300, '宝安区', '宝安', '113.828674', '22.754742', 3, 0, 1), +(440307, 440300, '龙岗区', '龙岗', '114.25137', '22.721512', 3, 0, 1), +(440308, 440300, '盐田区', '盐田', '114.23537', '22.555069', 3, 0, 1), +(440309, 440300, '龙华区', '龙华', '114.06031', '22.72174', 3, 0, 1), +(440310, 440300, '坪山区', '坪山', '114.34632', '22.69084', 3, 0, 1), +(440311, 440300, '光明区', '光明', '113.93588', '22.74894', 3, 0, 1), +(440400, 440000, '珠海市', '珠海', '113.553986', '22.22498', 2, 0, 1), +(440402, 440400, '香洲区', '香洲', '113.55027', '22.27125', 3, 0, 1), +(440403, 440400, '斗门区', '斗门', '113.29774', '22.209118', 3, 0, 1), +(440404, 440400, '金湾区', '金湾', '113.34507', '22.139122', 3, 0, 1), +(440500, 440000, '汕头市', '汕头', '116.708466', '23.37102', 2, 0, 1), +(440507, 440500, '龙湖区', '龙湖', '116.73202', '23.373755', 3, 0, 1), +(440511, 440500, '金平区', '金平', '116.70358', '23.367071', 3, 0, 1), +(440512, 440500, '濠江区', '濠江', '116.72953', '23.279345', 3, 0, 1), +(440513, 440500, '潮阳区', '潮阳', '116.6026', '23.262337', 3, 0, 1), +(440514, 440500, '潮南区', '潮南', '116.42361', '23.249798', 3, 0, 1), +(440515, 440500, '澄海区', '澄海', '116.76336', '23.46844', 3, 0, 1), +(440523, 440500, '南澳县', '南澳', '117.02711', '23.419561', 3, 0, 1), +(440600, 440000, '佛山市', '佛山', '113.12272', '23.028763', 2, 0, 1), +(440604, 440600, '禅城区', '禅城', '113.11241', '23.019644', 3, 0, 1), +(440605, 440600, '南海区', '南海', '113.14558', '23.031563', 3, 0, 1), +(440606, 440600, '顺德区', '顺德', '113.28182', '22.75851', 3, 0, 1), +(440607, 440600, '三水区', '三水', '112.899414', '23.16504', 3, 0, 1), +(440608, 440600, '高明区', '高明', '112.882126', '22.893854', 3, 0, 1), +(440700, 440000, '江门市', '江门', '113.09494', '22.590431', 2, 0, 1), +(440703, 440700, '蓬江区', '蓬江', '113.07859', '22.59677', 3, 0, 1), +(440704, 440700, '江海区', '江海', '113.1206', '22.57221', 3, 0, 1), +(440705, 440700, '新会区', '新会', '113.03858', '22.520247', 3, 0, 1), +(440781, 440700, '台山市', '台山', '112.79341', '22.250713', 3, 0, 1), +(440783, 440700, '开平市', '开平', '112.69226', '22.366285', 3, 0, 1), +(440784, 440700, '鹤山市', '鹤山', '112.96179', '22.768105', 3, 0, 1), +(440785, 440700, '恩平市', '恩平', '112.31405', '22.182957', 3, 0, 1), +(440800, 440000, '湛江市', '湛江', '110.364975', '21.274899', 2, 0, 1), +(440802, 440800, '赤坎区', '赤坎', '110.36163', '21.273365', 3, 0, 1), +(440803, 440800, '霞山区', '霞山', '110.40638', '21.19423', 3, 0, 1), +(440804, 440800, '坡头区', '坡头', '110.455635', '21.24441', 3, 0, 1), +(440811, 440800, '麻章区', '麻章', '110.32917', '21.265997', 3, 0, 1), +(440823, 440800, '遂溪县', '遂溪', '110.25532', '21.376915', 3, 0, 1), +(440825, 440800, '徐闻县', '徐闻', '110.17572', '20.326082', 3, 0, 1), +(440881, 440800, '廉江市', '廉江', '110.28496', '21.61128', 3, 0, 1), +(440882, 440800, '雷州市', '雷州', '110.08827', '20.908524', 3, 0, 1), +(440883, 440800, '吴川市', '吴川', '110.78051', '21.428453', 3, 0, 1), +(440900, 440000, '茂名市', '茂名', '110.91923', '21.659752', 2, 0, 1), +(440902, 440900, '茂南区', '茂南', '110.92054', '21.660425', 3, 0, 1), +(440904, 440900, '电白区', '电白', '111.01636', '21.51428', 3, 0, 1), +(440981, 440900, '高州市', '高州', '110.85325', '21.915154', 3, 0, 1), +(440982, 440900, '化州市', '化州', '110.63839', '21.654953', 3, 0, 1), +(440983, 440900, '信宜市', '信宜', '110.94166', '22.35268', 3, 0, 1), +(441200, 440000, '肇庆市', '肇庆', '112.47253', '23.051546', 2, 0, 1), +(441202, 441200, '端州区', '端州', '112.47233', '23.052662', 3, 0, 1), +(441203, 441200, '鼎湖区', '鼎湖', '112.56525', '23.155823', 3, 0, 1), +(441204, 441200, '高要区', '高要', '112.45839', '23.02581', 3, 0, 1), +(441223, 441200, '广宁县', '广宁', '112.44042', '23.631487', 3, 0, 1), +(441224, 441200, '怀集县', '怀集', '112.182465', '23.913073', 3, 0, 1), +(441225, 441200, '封开县', '封开', '111.502975', '23.43473', 3, 0, 1), +(441226, 441200, '德庆县', '德庆', '111.78156', '23.14171', 3, 0, 1), +(441284, 441200, '四会市', '四会', '112.69503', '23.340324', 3, 0, 1), +(441300, 440000, '惠州市', '惠州', '114.4126', '23.079405', 2, 0, 1), +(441302, 441300, '惠城区', '惠城', '114.41398', '23.079884', 3, 0, 1), +(441303, 441300, '惠阳区', '惠阳', '114.469444', '22.78851', 3, 0, 1), +(441322, 441300, '博罗县', '博罗', '114.284256', '23.167576', 3, 0, 1), +(441323, 441300, '惠东县', '惠东', '114.72309', '22.983036', 3, 0, 1), +(441324, 441300, '龙门县', '龙门', '114.25999', '23.723894', 3, 0, 1), +(441400, 440000, '梅州市', '梅州', '116.117584', '24.299112', 2, 0, 1), +(441402, 441400, '梅江区', '梅江', '116.12116', '24.302593', 3, 0, 1), +(441403, 441400, '梅县区', '梅县', '116.08245', '24.26539', 3, 0, 1), +(441422, 441400, '大埔县', '大埔', '116.69552', '24.351587', 3, 0, 1), +(441423, 441400, '丰顺县', '丰顺', '116.18442', '23.752771', 3, 0, 1), +(441424, 441400, '五华县', '五华', '115.775', '23.925425', 3, 0, 1), +(441426, 441400, '平远县', '平远', '115.89173', '24.56965', 3, 0, 1), +(441427, 441400, '蕉岭县', '蕉岭', '116.17053', '24.653313', 3, 0, 1), +(441481, 441400, '兴宁市', '兴宁', '115.73165', '24.138077', 3, 0, 1), +(441500, 440000, '汕尾市', '汕尾', '115.364235', '22.774485', 2, 0, 1), +(441502, 441500, '城区', '城区', '115.36367', '22.776228', 3, 0, 1), +(441521, 441500, '海丰县', '海丰', '115.337326', '22.971043', 3, 0, 1), +(441523, 441500, '陆河县', '陆河', '115.65756', '23.302683', 3, 0, 1), +(441581, 441500, '陆丰市', '陆丰', '115.6442', '22.946104', 3, 0, 1), +(441600, 440000, '河源市', '河源', '114.6978', '23.746265', 2, 0, 1), +(441602, 441600, '源城区', '源城', '114.69683', '23.746256', 3, 0, 1), +(441621, 441600, '紫金县', '紫金', '115.18438', '23.633743', 3, 0, 1), +(441622, 441600, '龙川县', '龙川', '115.25642', '24.101173', 3, 0, 1), +(441623, 441600, '连平县', '连平', '114.49595', '24.364227', 3, 0, 1), +(441624, 441600, '和平县', '和平', '114.941475', '24.44318', 3, 0, 1), +(441625, 441600, '东源县', '东源', '114.742714', '23.789093', 3, 0, 1), +(441700, 440000, '阳江市', '阳江', '111.975105', '21.859222', 2, 0, 1), +(441702, 441700, '江城区', '江城', '111.96891', '21.859182', 3, 0, 1), +(441704, 441700, '阳东区', '阳东', '112.0067', '21.86829', 3, 0, 1), +(441721, 441700, '阳西县', '阳西', '111.61755', '21.75367', 3, 0, 1), +(441781, 441700, '阳春市', '阳春', '111.7905', '22.169598', 3, 0, 1), +(441800, 440000, '清远市', '清远', '113.05122', '23.685022', 2, 0, 1), +(441802, 441800, '清城区', '清城', '113.0487', '23.688976', 3, 0, 1), +(441803, 441800, '清新区', '清新', '113.01658', '23.73474', 3, 0, 1), +(441821, 441800, '佛冈县', '佛冈', '113.534096', '23.86674', 3, 0, 1), +(441823, 441800, '阳山县', '阳山', '112.63402', '24.470285', 3, 0, 1), +(441825, 441800, '连山壮族瑶族自治县', '连山', '112.086555', '24.56727', 3, 0, 1), +(441826, 441800, '连南瑶族自治县', '连南', '112.29081', '24.719097', 3, 0, 1), +(441881, 441800, '英德市', '英德', '113.4054', '24.18612', 3, 0, 1), +(441882, 441800, '连州市', '连州', '112.37927', '24.783966', 3, 0, 1), +(441900, 440000, '东莞市', '东莞', '113.74626', '23.046238', 2, 0, 1), +(442000, 440000, '中山市', '中山', '113.38239', '22.521112', 2, 0, 1), +(445100, 440000, '潮州市', '潮州', '116.6323', '23.661701', 2, 0, 1), +(445102, 445100, '湘桥区', '湘桥', '116.63365', '23.664675', 3, 0, 1), +(445103, 445100, '潮安区', '潮安', '116.67809', '23.46244', 3, 0, 1), +(445122, 445100, '饶平县', '饶平', '117.00205', '23.66817', 3, 0, 1), +(445200, 440000, '揭阳市', '揭阳', '116.355736', '23.543777', 2, 0, 1), +(445202, 445200, '榕城区', '榕城', '116.35705', '23.535524', 3, 0, 1), +(445203, 445200, '揭东区', '揭东', '116.41211', '23.56606', 3, 0, 1), +(445222, 445200, '揭西县', '揭西', '115.83871', '23.4273', 3, 0, 1), +(445224, 445200, '惠来县', '惠来', '116.29583', '23.029835', 3, 0, 1), +(445281, 445200, '普宁市', '普宁', '116.165085', '23.29788', 3, 0, 1), +(445300, 440000, '云浮市', '云浮', '112.04444', '22.929802', 2, 0, 1), +(445302, 445300, '云城区', '云城', '112.04471', '22.930826', 3, 0, 1), +(445303, 445300, '云安区', '云安', '112.00324', '23.07101', 3, 0, 1), +(445321, 445300, '新兴县', '新兴', '112.23083', '22.703203', 3, 0, 1), +(445322, 445300, '郁南县', '郁南', '111.53592', '23.237709', 3, 0, 1), +(445381, 445300, '罗定市', '罗定', '111.5782', '22.765415', 3, 0, 1), +(450000, 0, '广西壮族自治区', '广西', '108.32001', '22.82402', 1, 0, 1), +(450100, 450000, '南宁市', '南宁', '108.32001', '22.82402', 2, 0, 1), +(450102, 450100, '兴宁区', '兴宁', '108.32019', '22.819511', 3, 0, 1), +(450103, 450100, '青秀区', '青秀', '108.346115', '22.816614', 3, 0, 1), +(450105, 450100, '江南区', '江南', '108.31048', '22.799593', 3, 0, 1), +(450107, 450100, '西乡塘区', '西乡塘', '108.3069', '22.832779', 3, 0, 1), +(450108, 450100, '良庆区', '良庆', '108.322105', '22.75909', 3, 0, 1), +(450109, 450100, '邕宁区', '邕宁', '108.48425', '22.756598', 3, 0, 1), +(450110, 450100, '武鸣区', '武鸣', '108.27461', '23.15866', 3, 0, 1), +(450123, 450100, '隆安县', '隆安', '107.68866', '23.174763', 3, 0, 1), +(450124, 450100, '马山县', '马山', '108.172905', '23.711758', 3, 0, 1), +(450125, 450100, '上林县', '上林', '108.603935', '23.431768', 3, 0, 1), +(450126, 450100, '宾阳县', '宾阳', '108.816734', '23.216885', 3, 0, 1), +(450127, 450100, '横县', '横县', '109.27099', '22.68743', 3, 0, 1), +(450200, 450000, '柳州市', '柳州', '109.411705', '24.314617', 2, 0, 1), +(450202, 450200, '城中区', '城中', '109.41175', '24.312325', 3, 0, 1), +(450203, 450200, '鱼峰区', '鱼峰', '109.41537', '24.303848', 3, 0, 1), +(450204, 450200, '柳南区', '柳南', '109.395935', '24.287012', 3, 0, 1), +(450205, 450200, '柳北区', '柳北', '109.40658', '24.359144', 3, 0, 1), +(450206, 450200, '柳江区', '柳江', '109.32672', '24.25465', 3, 0, 1), +(450222, 450200, '柳城县', '柳城', '109.24581', '24.65512', 3, 0, 1), +(450223, 450200, '鹿寨县', '鹿寨', '109.74081', '24.483404', 3, 0, 1), +(450224, 450200, '融安县', '融安', '109.40362', '25.214703', 3, 0, 1), +(450225, 450200, '融水苗族自治县', '融水', '109.25275', '25.068811', 3, 0, 1), +(450226, 450200, '三江侗族自治县', '三江', '109.614845', '25.78553', 3, 0, 1), +(450300, 450000, '桂林市', '桂林', '110.29912', '25.274216', 2, 0, 1), +(450302, 450300, '秀峰区', '秀峰', '110.29244', '25.278543', 3, 0, 1), +(450303, 450300, '叠彩区', '叠彩', '110.30078', '25.301334', 3, 0, 1), +(450304, 450300, '象山区', '象山', '110.28488', '25.261986', 3, 0, 1), +(450305, 450300, '七星区', '七星', '110.31757', '25.25434', 3, 0, 1), +(450311, 450300, '雁山区', '雁山', '110.305664', '25.077646', 3, 0, 1), +(450312, 450300, '临桂区', '临桂', '110.2124', '25.23868', 3, 0, 1), +(450321, 450300, '阳朔县', '阳朔', '110.4947', '24.77534', 3, 0, 1), +(450323, 450300, '灵川县', '灵川', '110.325714', '25.40854', 3, 0, 1), +(450324, 450300, '全州县', '全州', '111.07299', '25.929897', 3, 0, 1), +(450325, 450300, '兴安县', '兴安', '110.670784', '25.609554', 3, 0, 1), +(450326, 450300, '永福县', '永福', '109.989204', '24.986692', 3, 0, 1), +(450327, 450300, '灌阳县', '灌阳', '111.16025', '25.489098', 3, 0, 1), +(450328, 450300, '龙胜各族自治县', '龙胜', '110.00942', '25.796429', 3, 0, 1), +(450329, 450300, '资源县', '资源', '110.642586', '26.0342', 3, 0, 1), +(450330, 450300, '平乐县', '平乐', '110.64282', '24.632215', 3, 0, 1), +(450332, 450300, '恭城瑶族自治县', '恭城', '110.82952', '24.833612', 3, 0, 1), +(450381, 450300, '荔浦市', '荔浦', '110.39517', '24.48887', 3, 0, 1), +(450400, 450000, '梧州市', '梧州', '111.29761', '23.474804', 2, 0, 1), +(450403, 450400, '万秀区', '万秀', '111.31582', '23.471317', 3, 0, 1), +(450405, 450400, '长洲区', '长洲', '111.27568', '23.4777', 3, 0, 1), +(450406, 450400, '龙圩区', '龙圩', '111.24603', '23.40996', 3, 0, 1), +(450421, 450400, '苍梧县', '苍梧', '111.54401', '23.845097', 3, 0, 1), +(450422, 450400, '藤县', '藤县', '110.93182', '23.373962', 3, 0, 1), +(450423, 450400, '蒙山县', '蒙山', '110.5226', '24.19983', 3, 0, 1), +(450481, 450400, '岑溪市', '岑溪', '110.998116', '22.918406', 3, 0, 1), +(450500, 450000, '北海市', '北海', '109.119255', '21.473343', 2, 0, 1), +(450502, 450500, '海城区', '海城', '109.10753', '21.468443', 3, 0, 1), +(450503, 450500, '银海区', '银海', '109.118706', '21.444908', 3, 0, 1), +(450512, 450500, '铁山港区', '铁山港', '109.45058', '21.5928', 3, 0, 1), +(450521, 450500, '合浦县', '合浦', '109.20069', '21.663553', 3, 0, 1), +(450600, 450000, '防城港市', '防城港', '108.345474', '21.614632', 2, 0, 1), +(450602, 450600, '港口区', '港口', '108.34628', '21.614407', 3, 0, 1), +(450603, 450600, '防城区', '防城', '108.35843', '21.764757', 3, 0, 1), +(450621, 450600, '上思县', '上思', '107.98214', '22.151423', 3, 0, 1), +(450681, 450600, '东兴市', '东兴', '107.97017', '21.541172', 3, 0, 1), +(450700, 450000, '钦州市', '钦州', '108.624176', '21.967127', 2, 0, 1), +(450702, 450700, '钦南区', '钦南', '108.62663', '21.966808', 3, 0, 1), +(450703, 450700, '钦北区', '钦北', '108.44911', '22.132761', 3, 0, 1), +(450721, 450700, '灵山县', '灵山', '109.293465', '22.418041', 3, 0, 1), +(450722, 450700, '浦北县', '浦北', '109.55634', '22.268335', 3, 0, 1), +(450800, 450000, '贵港市', '贵港', '109.60214', '23.0936', 2, 0, 1), +(450802, 450800, '港北区', '港北', '109.59481', '23.107677', 3, 0, 1), +(450803, 450800, '港南区', '港南', '109.60467', '23.067516', 3, 0, 1), +(450804, 450800, '覃塘区', '覃塘', '109.415695', '23.132814', 3, 0, 1), +(450821, 450800, '平南县', '平南', '110.397484', '23.544546', 3, 0, 1), +(450881, 450800, '桂平市', '桂平', '110.07467', '23.382473', 3, 0, 1), +(450900, 450000, '玉林市', '玉林', '110.154396', '22.63136', 2, 0, 1), +(450902, 450900, '玉州区', '玉州', '110.154915', '22.632132', 3, 0, 1), +(450903, 450900, '福绵区', '福绵', '110.05143', '22.579947', 3, 0, 1), +(450921, 450900, '容县', '容县', '110.55247', '22.856436', 3, 0, 1), +(450922, 450900, '陆川县', '陆川', '110.26484', '22.321054', 3, 0, 1), +(450923, 450900, '博白县', '博白', '109.98', '22.271284', 3, 0, 1), +(450924, 450900, '兴业县', '兴业', '109.87777', '22.74187', 3, 0, 1), +(450981, 450900, '北流市', '北流', '110.34805', '22.701649', 3, 0, 1), +(451000, 450000, '百色市', '百色', '106.61629', '23.897741', 2, 0, 1), +(451002, 451000, '右江区', '右江', '106.61573', '23.897675', 3, 0, 1), +(451003, 451000, '田阳区', '田阳', '106.91567', '23.73567', 3, 0, 1), +(451022, 451000, '田东县', '田东', '107.12426', '23.600445', 3, 0, 1), +(451024, 451000, '德保县', '德保', '106.618164', '23.321465', 3, 0, 1), +(451026, 451000, '那坡县', '那坡', '105.83355', '23.400785', 3, 0, 1), +(451027, 451000, '凌云县', '凌云', '106.56487', '24.345642', 3, 0, 1), +(451028, 451000, '乐业县', '乐业', '106.55964', '24.782204', 3, 0, 1), +(451029, 451000, '田林县', '田林', '106.23505', '24.290262', 3, 0, 1), +(451030, 451000, '西林县', '西林', '105.095024', '24.49204', 3, 0, 1), +(451031, 451000, '隆林各族自治县', '隆林', '105.34236', '24.774319', 3, 0, 1), +(451081, 451000, '靖西市', '靖西', '106.41769', '23.13402', 3, 0, 1), +(451082, 451000, '平果市', '平果', '107.58988', '23.32934', 3, 0, 1), +(451100, 450000, '贺州市', '贺州', '111.552055', '24.41414', 2, 0, 1), +(451102, 451100, '八步区', '八步', '111.551994', '24.412445', 3, 0, 1), +(451103, 451100, '平桂区', '平桂', '111.47971', '24.45296', 3, 0, 1), +(451121, 451100, '昭平县', '昭平', '110.81087', '24.172958', 3, 0, 1), +(451122, 451100, '钟山县', '钟山', '111.30363', '24.528566', 3, 0, 1), +(451123, 451100, '富川瑶族自治县', '富川', '111.27723', '24.81896', 3, 0, 1), +(451200, 450000, '河池市', '河池', '108.0621', '24.695898', 2, 0, 1), +(451202, 451200, '金城江区', '金城江', '108.06213', '24.695625', 3, 0, 1), +(451203, 451200, '宜州区', '宜州', '108.63656', '24.48513', 3, 0, 1), +(451221, 451200, '南丹县', '南丹', '107.54661', '24.983192', 3, 0, 1), +(451222, 451200, '天峨县', '天峨', '107.17494', '24.985964', 3, 0, 1), +(451223, 451200, '凤山县', '凤山', '107.04459', '24.544561', 3, 0, 1), +(451224, 451200, '东兰县', '东兰', '107.373695', '24.509367', 3, 0, 1), +(451225, 451200, '罗城仫佬族自治县', '罗城', '108.90245', '24.779327', 3, 0, 1), +(451226, 451200, '环江毛南族自治县', '环江', '108.25867', '24.827627', 3, 0, 1), +(451227, 451200, '巴马瑶族自治县', '巴马', '107.25313', '24.139538', 3, 0, 1), +(451228, 451200, '都安瑶族自治县', '都安', '108.10276', '23.934963', 3, 0, 1), +(451229, 451200, '大化瑶族自治县', '大化', '107.9945', '23.739595', 3, 0, 1), +(451300, 450000, '来宾市', '来宾', '109.229774', '23.733767', 2, 0, 1), +(451302, 451300, '兴宾区', '兴宾', '109.23054', '23.732925', 3, 0, 1), +(451321, 451300, '忻城县', '忻城', '108.66736', '24.06478', 3, 0, 1), +(451322, 451300, '象州县', '象州', '109.684555', '23.959824', 3, 0, 1), +(451323, 451300, '武宣县', '武宣', '109.66287', '23.604162', 3, 0, 1), +(451324, 451300, '金秀瑶族自治县', '金秀', '110.18855', '24.134941', 3, 0, 1), +(451381, 451300, '合山市', '合山', '108.88858', '23.81311', 3, 0, 1), +(451400, 450000, '崇左市', '崇左', '107.35393', '22.404108', 2, 0, 1), +(451402, 451400, '江州区', '江州', '107.35445', '22.40469', 3, 0, 1), +(451421, 451400, '扶绥县', '扶绥', '107.91153', '22.63582', 3, 0, 1), +(451422, 451400, '宁明县', '宁明', '107.06762', '22.131353', 3, 0, 1), +(451423, 451400, '龙州县', '龙州', '106.857506', '22.343716', 3, 0, 1), +(451424, 451400, '大新县', '大新', '107.200806', '22.833368', 3, 0, 1), +(451425, 451400, '天等县', '天等', '107.14244', '23.082483', 3, 0, 1), +(451481, 451400, '凭祥市', '凭祥', '106.75904', '22.108883', 3, 0, 1), +(460000, 0, '海南省', '海南', '110.33119', '20.031971', 1, 0, 1), +(460100, 460000, '海口市', '海口', '110.33119', '20.031971', 2, 0, 1), +(460105, 460100, '秀英区', '秀英', '110.282394', '20.008144', 3, 0, 1), +(460106, 460100, '龙华区', '龙华', '110.330376', '20.031027', 3, 0, 1), +(460107, 460100, '琼山区', '琼山', '110.35472', '20.00105', 3, 0, 1), +(460108, 460100, '美兰区', '美兰', '110.35657', '20.03074', 3, 0, 1), +(460200, 460000, '三亚市', '三亚', '109.50827', '18.247871', 2, 0, 1), +(460202, 460200, '海棠区', '海棠', '109.7525', '18.40005', 3, 0, 1), +(460203, 460200, '吉阳区', '吉阳', '109.57841', '18.28225', 3, 0, 1), +(460204, 460200, '天涯区', '天涯', '109.45263', '18.29921', 3, 0, 1), +(460205, 460200, '崖州区', '崖州', '109.17186', '18.35753', 3, 0, 1), +(460300, 460000, '三沙市', '三沙', '112.34882', '16.83104', 2, 0, 1), +(460321, 460300, '西沙群岛', '西沙群岛', '112.338695', '16.831839', 3, 0, 1), +(460322, 460300, '南沙群岛', '南沙群岛', '112.338695', '16.831839', 3, 0, 1), +(460323, 460300, '中沙群岛的岛礁及其海域', '中沙群岛的岛礁及其海域', '112.338695', '16.831839', 3, 0, 1), +(460400, 460000, '儋州市', '儋州', '109.58069', '19.52093', 2, 0, 1), +(469001, 469000, '五指山市', '五指山', '109.51666', '18.77692', 3, 0, 1), +(469002, 469000, '琼海市', '琼海', '110.46678', '19.246012', 3, 0, 1), +(469005, 469000, '文昌市', '文昌', '110.753975', '19.612986', 3, 0, 1), +(469006, 469000, '万宁市', '万宁', '110.388794', '18.796215', 3, 0, 1), +(469007, 469000, '东方市', '东方', '108.653786', '19.10198', 3, 0, 1), +(469021, 469000, '定安县', '定安', '110.3593', '19.68121', 3, 0, 1), +(469022, 469000, '屯昌县', '屯昌', '110.10347', '19.35182', 3, 0, 1), +(469023, 469000, '澄迈县', '澄迈', '110.00487', '19.73849', 3, 0, 1), +(469024, 469000, '临高县', '临高', '109.69077', '19.91243', 3, 0, 1), +(469025, 469000, '白沙黎族自治县', '定安', '110.349236', '19.684965', 3, 0, 1), +(469026, 469000, '昌江黎族自治县', '屯昌', '110.102776', '19.362917', 3, 0, 1), +(469027, 469000, '乐东黎族自治县', '澄迈', '110.00715', '19.737095', 3, 0, 1), +(469028, 469000, '陵水黎族自治县', '临高', '109.6877', '19.908293', 3, 0, 1), +(469029, 469000, '保亭黎族苗族自治县', '保亭黎族苗族自治县', '109.70259', '18.63905', 3, 0, 1), +(469030, 469000, '琼中黎族苗族自治县', '白沙', '109.45261', '19.224585', 3, 0, 1), +(500000, 0, '重庆市', '重庆', '106.50496', '29.533155', 1, 0, 1), +(500100, 500000, '重庆市', '重庆', '106.50496', '29.533155', 2, 0, 1), +(500101, 500100, '万州区', '万州', '108.38025', '30.807808', 3, 0, 1), +(500102, 500100, '涪陵区', '涪陵', '107.394905', '29.703651', 3, 0, 1), +(500103, 500100, '渝中区', '渝中', '106.56288', '29.556742', 3, 0, 1), +(500104, 500100, '大渡口区', '大渡口', '106.48613', '29.481003', 3, 0, 1), +(500105, 500100, '江北区', '江北', '106.532845', '29.575352', 3, 0, 1), +(500106, 500100, '沙坪坝区', '沙坪坝', '106.4542', '29.541224', 3, 0, 1), +(500107, 500100, '九龙坡区', '九龙坡', '106.48099', '29.523493', 3, 0, 1), +(500108, 500100, '南岸区', '南岸', '106.560814', '29.523993', 3, 0, 1), +(500109, 500100, '北碚区', '北碚', '106.43787', '29.82543', 3, 0, 1), +(500110, 500100, '綦江区', '綦江', '106.92852', '28.96463', 3, 0, 1), +(500111, 500100, '大足区', '大足', '105.78017', '29.48604', 3, 0, 1), +(500112, 500100, '渝北区', '渝北', '106.51285', '29.601452', 3, 0, 1), +(500113, 500100, '巴南区', '巴南', '106.519424', '29.38192', 3, 0, 1), +(500114, 500100, '黔江区', '黔江', '108.78258', '29.527548', 3, 0, 1), +(500115, 500100, '长寿区', '长寿', '107.07485', '29.833672', 3, 0, 1), +(500116, 500100, '江津区', '江津', '106.25936', '29.29014', 3, 0, 1), +(500117, 500100, '合川区', '合川', '106.27679', '29.97288', 3, 0, 1), +(500118, 500100, '永川区', '永川', '105.92709', '29.356', 3, 0, 1), +(500119, 500100, '南川区', '南川', '107.09896', '29.15788', 3, 0, 1), +(500120, 500100, '璧山区', '璧山', '106.22742', '29.59202', 3, 0, 1), +(500151, 500100, '铜梁区', '铜梁', '106.05638', '29.84475', 3, 0, 1), +(500152, 500100, '潼南区', '潼南', '105.83952', '30.19054', 3, 0, 1), +(500153, 500100, '荣昌区', '荣昌', '105.61188', '29.41671', 3, 0, 1), +(500154, 500100, '开州区', '开州', '108.39311', '31.16098', 3, 0, 1), +(500155, 500100, '梁平区', '梁平', '107.80235', '30.67373', 3, 0, 1), +(500156, 500100, '武隆区', '武隆', '107.75993', '29.32543', 3, 0, 1), +(500229, 500100, '城口县', '城口', '108.6649', '31.946293', 3, 0, 1), +(500230, 500100, '丰都县', '丰都', '107.73248', '29.866425', 3, 0, 1), +(500231, 500100, '垫江县', '垫江', '107.348694', '30.330011', 3, 0, 1), +(500233, 500100, '忠县', '忠县', '108.03752', '30.291536', 3, 0, 1), +(500235, 500100, '云阳县', '云阳', '108.6977', '30.930529', 3, 0, 1), +(500236, 500100, '奉节县', '奉节', '109.465775', '31.019966', 3, 0, 1), +(500237, 500100, '巫山县', '巫山', '109.87893', '31.074842', 3, 0, 1), +(500238, 500100, '巫溪县', '巫溪', '109.628914', '31.3966', 3, 0, 1), +(500240, 500100, '石柱土家族自治县', '石柱', '108.11245', '29.99853', 3, 0, 1), +(500241, 500100, '秀山土家族苗族自治县', '秀山', '108.99604', '28.444773', 3, 0, 1), +(500242, 500100, '酉阳土家族苗族自治县', '酉阳', '108.767204', '28.839828', 3, 0, 1), +(500243, 500100, '彭水苗族土家族自治县', '彭水', '108.16655', '29.293856', 3, 0, 1), +(510000, 0, '四川省', '四川', '104.065735', '30.659462', 1, 0, 1), +(510100, 510000, '成都市', '成都', '104.065735', '30.659462', 2, 0, 1), +(510104, 510100, '锦江区', '锦江', '104.080986', '30.657688', 3, 0, 1), +(510105, 510100, '青羊区', '青羊', '104.05573', '30.667648', 3, 0, 1), +(510106, 510100, '金牛区', '金牛', '104.04349', '30.692059', 3, 0, 1), +(510107, 510100, '武侯区', '武侯', '104.05167', '30.630861', 3, 0, 1), +(510108, 510100, '成华区', '成华', '104.10308', '30.660275', 3, 0, 1), +(510112, 510100, '龙泉驿区', '龙泉驿', '104.26918', '30.56065', 3, 0, 1), +(510113, 510100, '青白江区', '青白江', '104.25494', '30.883438', 3, 0, 1), +(510114, 510100, '新都区', '新都', '104.16022', '30.824223', 3, 0, 1), +(510115, 510100, '温江区', '温江', '103.83678', '30.697996', 3, 0, 1), +(510116, 510100, '双流区', '双流', '103.92377', '30.57447', 3, 0, 1), +(510117, 510100, '郫都区', '郫都', '103.90256', '30.79589', 3, 0, 1), +(510118, 510100, '新津区', '新津', '', '', 3, 0, 1), +(510121, 510100, '金堂县', '金堂', '104.4156', '30.858418', 3, 0, 1), +(510129, 510100, '大邑县', '大邑', '103.5224', '30.586601', 3, 0, 1), +(510131, 510100, '蒲江县', '蒲江', '103.51154', '30.194359', 3, 0, 1), +(510181, 510100, '都江堰市', '都江堰', '103.6279', '30.99114', 3, 0, 1), +(510182, 510100, '彭州市', '彭州', '103.94117', '30.98516', 3, 0, 1), +(510183, 510100, '邛崃市', '邛崃', '103.46143', '30.41327', 3, 0, 1), +(510184, 510100, '崇州市', '崇州', '103.67105', '30.631477', 3, 0, 1), +(510185, 510100, '简阳市', '简阳', '104.54733', '30.41133', 3, 0, 1), +(510300, 510000, '自贡市', '自贡', '104.773445', '29.352764', 2, 0, 1), +(510302, 510300, '自流井区', '自流井', '104.77819', '29.343231', 3, 0, 1), +(510303, 510300, '贡井区', '贡井', '104.71437', '29.345675', 3, 0, 1), +(510304, 510300, '大安区', '大安', '104.783226', '29.367136', 3, 0, 1), +(510311, 510300, '沿滩区', '沿滩', '104.87642', '29.27252', 3, 0, 1), +(510321, 510300, '荣县', '荣县', '104.423935', '29.454851', 3, 0, 1), +(510322, 510300, '富顺县', '富顺', '104.98425', '29.181282', 3, 0, 1), +(510400, 510000, '攀枝花市', '攀枝花', '101.716', '26.580446', 2, 0, 1), +(510402, 510400, '东区', '东区', '101.71513', '26.580887', 3, 0, 1), +(510403, 510400, '西区', '西区', '101.63797', '26.596775', 3, 0, 1), +(510411, 510400, '仁和区', '仁和', '101.737915', '26.497185', 3, 0, 1), +(510421, 510400, '米易县', '米易', '102.10988', '26.887474', 3, 0, 1), +(510422, 510400, '盐边县', '盐边', '101.851845', '26.67762', 3, 0, 1), +(510500, 510000, '泸州市', '泸州', '105.44335', '28.889137', 2, 0, 1), +(510502, 510500, '江阳区', '江阳', '105.44513', '28.882889', 3, 0, 1), +(510503, 510500, '纳溪区', '纳溪', '105.37721', '28.77631', 3, 0, 1), +(510504, 510500, '龙马潭区', '龙马潭', '105.43523', '28.897572', 3, 0, 1), +(510521, 510500, '泸县', '泸县', '105.376335', '29.151287', 3, 0, 1), +(510522, 510500, '合江县', '合江', '105.8341', '28.810326', 3, 0, 1), +(510524, 510500, '叙永县', '叙永', '105.437775', '28.16792', 3, 0, 1), +(510525, 510500, '古蔺县', '古蔺', '105.81336', '28.03948', 3, 0, 1), +(510600, 510000, '德阳市', '德阳', '104.39865', '31.12799', 2, 0, 1), +(510603, 510600, '旌阳区', '旌阳', '104.38965', '31.130428', 3, 0, 1), +(510604, 510600, '罗江区', '罗江', '104.51021', '31.31681', 3, 0, 1), +(510623, 510600, '中江县', '中江', '104.67783', '31.03681', 3, 0, 1), +(510681, 510600, '广汉市', '广汉', '104.281906', '30.97715', 3, 0, 1), +(510682, 510600, '什邡市', '什邡', '104.17365', '31.12688', 3, 0, 1), +(510683, 510600, '绵竹市', '绵竹', '104.200165', '31.343084', 3, 0, 1), +(510700, 510000, '绵阳市', '绵阳', '104.74172', '31.46402', 2, 0, 1), +(510703, 510700, '涪城区', '涪城', '104.740974', '31.463556', 3, 0, 1), +(510704, 510700, '游仙区', '游仙', '104.770004', '31.484772', 3, 0, 1), +(510705, 510700, '安州区', '安州', '104.56735', '31.53465', 3, 0, 1), +(510722, 510700, '三台县', '三台', '105.09032', '31.090908', 3, 0, 1), +(510723, 510700, '盐亭县', '盐亭', '105.39199', '31.22318', 3, 0, 1), +(510725, 510700, '梓潼县', '梓潼', '105.16353', '31.635225', 3, 0, 1), +(510726, 510700, '北川羌族自治县', '北川', '104.46807', '31.615864', 3, 0, 1), +(510727, 510700, '平武县', '平武', '104.530556', '32.40759', 3, 0, 1), +(510781, 510700, '江油市', '江油', '104.74443', '31.776386', 3, 0, 1), +(510800, 510000, '广元市', '广元', '105.82976', '32.433666', 2, 0, 1), +(510802, 510800, '利州区', '利州', '105.826195', '32.432278', 3, 0, 1), +(510811, 510800, '昭化区', '昭化', '105.96412', '32.32279', 3, 0, 1), +(510812, 510800, '朝天区', '朝天', '105.88917', '32.64263', 3, 0, 1), +(510821, 510800, '旺苍县', '旺苍', '106.29043', '32.22833', 3, 0, 1), +(510822, 510800, '青川县', '青川', '105.238846', '32.585655', 3, 0, 1), +(510823, 510800, '剑阁县', '剑阁', '105.52704', '32.28652', 3, 0, 1), +(510824, 510800, '苍溪县', '苍溪', '105.939705', '31.73225', 3, 0, 1), +(510900, 510000, '遂宁市', '遂宁', '105.57133', '30.513311', 2, 0, 1), +(510903, 510900, '船山区', '船山', '105.582214', '30.502647', 3, 0, 1), +(510904, 510900, '安居区', '安居', '105.45938', '30.34612', 3, 0, 1), +(510921, 510900, '蓬溪县', '蓬溪', '105.7137', '30.774883', 3, 0, 1), +(510923, 510900, '大英县', '大英', '105.25219', '30.581572', 3, 0, 1), +(510981, 510900, '射洪市', '射洪', '105.38836', '30.87113', 3, 0, 1), +(511000, 510000, '内江市', '内江', '105.06614', '29.58708', 2, 0, 1), +(511002, 511000, '市中区', '市中', '105.06547', '29.585264', 3, 0, 1), +(511011, 511000, '东兴区', '东兴', '105.0672', '29.600107', 3, 0, 1), +(511024, 511000, '威远县', '威远', '104.66833', '29.52686', 3, 0, 1), +(511025, 511000, '资中县', '资中', '104.85246', '29.775295', 3, 0, 1), +(511083, 511000, '隆昌市', '隆昌', '105.28773', '29.33948', 3, 0, 1), +(511100, 510000, '乐山市', '乐山', '103.76126', '29.582024', 2, 0, 1), +(511102, 511100, '市中区', '市中', '103.75539', '29.588327', 3, 0, 1), +(511111, 511100, '沙湾区', '沙湾', '103.54996', '29.416536', 3, 0, 1), +(511112, 511100, '五通桥区', '五通桥', '103.81683', '29.406185', 3, 0, 1), +(511113, 511100, '金口河区', '金口河', '103.07783', '29.24602', 3, 0, 1), +(511123, 511100, '犍为县', '犍为', '103.94427', '29.209782', 3, 0, 1), +(511124, 511100, '井研县', '井研', '104.06885', '29.651646', 3, 0, 1), +(511126, 511100, '夹江县', '夹江', '103.578865', '29.741018', 3, 0, 1), +(511129, 511100, '沐川县', '沐川', '103.90211', '28.956339', 3, 0, 1), +(511132, 511100, '峨边彝族自治县', '峨边', '103.262146', '29.23027', 3, 0, 1), +(511133, 511100, '马边彝族自治县', '马边', '103.54685', '28.838934', 3, 0, 1), +(511181, 511100, '峨眉山市', '峨眉山', '103.492485', '29.597479', 3, 0, 1), +(511300, 510000, '南充市', '南充', '106.08298', '30.79528', 2, 0, 1), +(511302, 511300, '顺庆区', '顺庆', '106.08409', '30.795572', 3, 0, 1), +(511303, 511300, '高坪区', '高坪', '106.10899', '30.781809', 3, 0, 1), +(511304, 511300, '嘉陵区', '嘉陵', '106.067024', '30.762976', 3, 0, 1), +(511321, 511300, '南部县', '南部', '106.061134', '31.349407', 3, 0, 1), +(511322, 511300, '营山县', '营山', '106.564896', '31.075907', 3, 0, 1), +(511323, 511300, '蓬安县', '蓬安', '106.41349', '31.027979', 3, 0, 1), +(511324, 511300, '仪陇县', '仪陇', '106.29708', '31.271261', 3, 0, 1), +(511325, 511300, '西充县', '西充', '105.89302', '30.994616', 3, 0, 1), +(511381, 511300, '阆中市', '阆中', '105.975266', '31.580465', 3, 0, 1), +(511400, 510000, '眉山市', '眉山', '103.83179', '30.048319', 2, 0, 1), +(511402, 511400, '东坡区', '东坡', '103.83155', '30.048128', 3, 0, 1), +(511403, 511400, '彭山区', '彭山', '103.87283', '30.19299', 3, 0, 1), +(511421, 511400, '仁寿县', '仁寿', '104.147644', '29.996721', 3, 0, 1), +(511423, 511400, '洪雅县', '洪雅', '103.37501', '29.904867', 3, 0, 1), +(511424, 511400, '丹棱县', '丹棱', '103.51833', '30.01275', 3, 0, 1), +(511425, 511400, '青神县', '青神', '103.84613', '29.831469', 3, 0, 1), +(511500, 510000, '宜宾市', '宜宾', '104.63082', '28.76019', 2, 0, 1), +(511502, 511500, '翠屏区', '翠屏', '104.63023', '28.76018', 3, 0, 1), +(511503, 511500, '南溪区', '南溪', '104.96953', '28.84548', 3, 0, 1), +(511504, 511500, '叙州区', '叙州', '104.53316', '28.68998', 3, 0, 1), +(511523, 511500, '江安县', '江安', '105.068695', '28.728102', 3, 0, 1), +(511524, 511500, '长宁县', '长宁', '104.92112', '28.57727', 3, 0, 1), +(511525, 511500, '高县', '高县', '104.51919', '28.435677', 3, 0, 1), +(511526, 511500, '珙县', '珙县', '104.712265', '28.449041', 3, 0, 1), +(511527, 511500, '筠连县', '筠连', '104.50785', '28.162018', 3, 0, 1), +(511528, 511500, '兴文县', '兴文', '105.23655', '28.302988', 3, 0, 1), +(511529, 511500, '屏山县', '屏山', '104.16262', '28.64237', 3, 0, 1), +(511600, 510000, '广安市', '广安', '106.63337', '30.456398', 2, 0, 1), +(511602, 511600, '广安区', '广安', '106.632904', '30.456463', 3, 0, 1), +(511603, 511600, '前锋区', '前锋', '106.89328', '30.4963', 3, 0, 1), +(511621, 511600, '岳池县', '岳池', '106.44445', '30.533539', 3, 0, 1), +(511622, 511600, '武胜县', '武胜', '106.29247', '30.344292', 3, 0, 1), +(511623, 511600, '邻水县', '邻水', '106.93497', '30.334324', 3, 0, 1), +(511681, 511600, '华蓥市', '华蓥', '106.777885', '30.380573', 3, 0, 1), +(511700, 510000, '达州市', '达州', '107.50226', '31.209484', 2, 0, 1), +(511702, 511700, '通川区', '通川', '107.50106', '31.213522', 3, 0, 1), +(511703, 511700, '达川区', '达川', '107.51177', '31.19603', 3, 0, 1), +(511722, 511700, '宣汉县', '宣汉', '107.72225', '31.355024', 3, 0, 1), +(511723, 511700, '开江县', '开江', '107.864136', '31.085537', 3, 0, 1), +(511724, 511700, '大竹县', '大竹', '107.20742', '30.736288', 3, 0, 1), +(511725, 511700, '渠县', '渠县', '106.97075', '30.836348', 3, 0, 1), +(511781, 511700, '万源市', '万源', '108.037544', '32.06777', 3, 0, 1), +(511800, 510000, '雅安市', '雅安', '103.00103', '29.987722', 2, 0, 1), +(511802, 511800, '雨城区', '雨城', '103.003395', '29.98183', 3, 0, 1), +(511803, 511800, '名山区', '名山', '103.10954', '30.06982', 3, 0, 1), +(511822, 511800, '荥经县', '荥经', '102.84467', '29.795528', 3, 0, 1), +(511823, 511800, '汉源县', '汉源', '102.67715', '29.349915', 3, 0, 1), +(511824, 511800, '石棉县', '石棉', '102.35962', '29.234062', 3, 0, 1), +(511825, 511800, '天全县', '天全', '102.76346', '30.059956', 3, 0, 1), +(511826, 511800, '芦山县', '芦山', '102.92402', '30.152906', 3, 0, 1), +(511827, 511800, '宝兴县', '宝兴', '102.81338', '30.369026', 3, 0, 1), +(511900, 510000, '巴中市', '巴中', '106.75367', '31.858809', 2, 0, 1), +(511902, 511900, '巴州区', '巴州', '106.75367', '31.858366', 3, 0, 1), +(511903, 511900, '恩阳区', '恩阳', '106.63608', '31.789442', 3, 0, 1), +(511921, 511900, '通江县', '通江', '107.24762', '31.91212', 3, 0, 1), +(511922, 511900, '南江县', '南江', '106.843414', '32.353165', 3, 0, 1), +(511923, 511900, '平昌县', '平昌', '107.10194', '31.562815', 3, 0, 1), +(512000, 510000, '资阳市', '资阳', '104.641914', '30.122211', 2, 0, 1), +(512002, 512000, '雁江区', '雁江', '104.64234', '30.121687', 3, 0, 1), +(512021, 512000, '安岳县', '安岳', '105.33676', '30.099207', 3, 0, 1), +(512022, 512000, '乐至县', '乐至', '105.03114', '30.27562', 3, 0, 1), +(513200, 510000, '阿坝藏族羌族自治州', '阿坝', '102.221375', '31.899792', 2, 0, 1), +(513201, 513200, '马尔康市', '马尔康', '102.20644', '31.90585', 3, 0, 1), +(513221, 513200, '汶川县', '汶川', '103.58067', '31.47463', 3, 0, 1), +(513222, 513200, '理县', '理县', '103.16549', '31.436764', 3, 0, 1), +(513223, 513200, '茂县', '茂县', '103.850685', '31.680407', 3, 0, 1), +(513224, 513200, '松潘县', '松潘', '103.599174', '32.63838', 3, 0, 1), +(513225, 513200, '九寨沟县', '九寨沟', '104.23634', '33.262096', 3, 0, 1), +(513226, 513200, '金川县', '金川', '102.064644', '31.476357', 3, 0, 1), +(513227, 513200, '小金县', '小金', '102.36319', '30.999016', 3, 0, 1), +(513228, 513200, '黑水县', '黑水', '102.99081', '32.06172', 3, 0, 1), +(513230, 513200, '壤塘县', '壤塘', '100.97913', '32.26489', 3, 0, 1), +(513231, 513200, '阿坝县', '阿坝', '101.70099', '32.904224', 3, 0, 1), +(513232, 513200, '若尔盖县', '若尔盖', '102.96372', '33.575935', 3, 0, 1), +(513233, 513200, '红原县', '红原', '102.54491', '32.793903', 3, 0, 1), +(513300, 510000, '甘孜藏族自治州', '甘孜', '101.96381', '30.050663', 2, 0, 1), +(513301, 513300, '康定市', '康定', '101.96308', '30.05441', 3, 0, 1), +(513322, 513300, '泸定县', '泸定', '102.23322', '29.912481', 3, 0, 1), +(513323, 513300, '丹巴县', '丹巴', '101.88612', '30.877083', 3, 0, 1), +(513324, 513300, '九龙县', '九龙', '101.50694', '29.001974', 3, 0, 1), +(513325, 513300, '雅江县', '雅江', '101.01573', '30.03225', 3, 0, 1), +(513326, 513300, '道孚县', '道孚', '101.12333', '30.978767', 3, 0, 1), +(513327, 513300, '炉霍县', '炉霍', '100.6795', '31.392673', 3, 0, 1), +(513328, 513300, '甘孜县', '甘孜', '99.99175', '31.61975', 3, 0, 1), +(513329, 513300, '新龙县', '新龙', '100.312096', '30.93896', 3, 0, 1), +(513330, 513300, '德格县', '德格', '98.57999', '31.806728', 3, 0, 1), +(513331, 513300, '白玉县', '白玉', '98.82434', '31.208805', 3, 0, 1), +(513332, 513300, '石渠县', '石渠', '98.10088', '32.975304', 3, 0, 1), +(513333, 513300, '色达县', '色达', '100.33166', '32.268776', 3, 0, 1), +(513334, 513300, '理塘县', '理塘', '100.26986', '29.991808', 3, 0, 1), +(513335, 513300, '巴塘县', '巴塘', '99.10904', '30.005724', 3, 0, 1), +(513336, 513300, '乡城县', '乡城', '99.79994', '28.930855', 3, 0, 1), +(513337, 513300, '稻城县', '稻城', '100.29669', '29.037544', 3, 0, 1), +(513338, 513300, '得荣县', '得荣', '99.28803', '28.71134', 3, 0, 1), +(513400, 510000, '凉山彝族自治州', '凉山', '102.25874', '27.886763', 2, 0, 1), +(513401, 513400, '西昌市', '西昌', '102.25876', '27.885786', 3, 0, 1), +(513422, 513400, '木里藏族自治县', '木里', '101.28018', '27.926859', 3, 0, 1), +(513423, 513400, '盐源县', '盐源', '101.50891', '27.423414', 3, 0, 1), +(513424, 513400, '德昌县', '德昌', '102.17885', '27.403828', 3, 0, 1), +(513425, 513400, '会理县', '会理', '102.24955', '26.658703', 3, 0, 1), +(513426, 513400, '会东县', '会东', '102.57899', '26.630713', 3, 0, 1), +(513427, 513400, '宁南县', '宁南', '102.75738', '27.065205', 3, 0, 1), +(513428, 513400, '普格县', '普格', '102.541084', '27.376827', 3, 0, 1), +(513429, 513400, '布拖县', '布拖', '102.8088', '27.709063', 3, 0, 1), +(513430, 513400, '金阳县', '金阳', '103.2487', '27.695915', 3, 0, 1), +(513431, 513400, '昭觉县', '昭觉', '102.843994', '28.010553', 3, 0, 1), +(513432, 513400, '喜德县', '喜德', '102.41234', '28.305487', 3, 0, 1), +(513433, 513400, '冕宁县', '冕宁', '102.170044', '28.550844', 3, 0, 1), +(513434, 513400, '越西县', '越西', '102.50887', '28.639631', 3, 0, 1), +(513435, 513400, '甘洛县', '甘洛', '102.775925', '28.977095', 3, 0, 1), +(513436, 513400, '美姑县', '美姑', '103.132', '28.327946', 3, 0, 1), +(513437, 513400, '雷波县', '雷波', '103.57159', '28.262945', 3, 0, 1), +(520000, 0, '贵州省', '贵州', '106.71348', '26.578342', 1, 0, 1), +(520100, 520000, '贵阳市', '贵阳', '106.71348', '26.578342', 2, 0, 1), +(520102, 520100, '南明区', '南明', '106.715965', '26.573744', 3, 0, 1), +(520103, 520100, '云岩区', '云岩', '106.713394', '26.58301', 3, 0, 1), +(520111, 520100, '花溪区', '花溪', '106.67079', '26.410463', 3, 0, 1), +(520112, 520100, '乌当区', '乌当', '106.76212', '26.630928', 3, 0, 1), +(520113, 520100, '白云区', '白云', '106.63303', '26.67685', 3, 0, 1), +(520115, 520100, '观山湖区', '观山湖', '106.62254', '26.6015', 3, 0, 1), +(520121, 520100, '开阳县', '开阳', '106.96944', '27.056793', 3, 0, 1), +(520122, 520100, '息烽县', '息烽', '106.73769', '27.092665', 3, 0, 1), +(520123, 520100, '修文县', '修文', '106.59922', '26.840672', 3, 0, 1), +(520181, 520100, '清镇市', '清镇', '106.470276', '26.551289', 3, 0, 1), +(520200, 520000, '六盘水市', '六盘水', '104.84674', '26.584642', 2, 0, 1), +(520201, 520200, '钟山区', '钟山', '104.846245', '26.584805', 3, 0, 1), +(520203, 520200, '六枝特区', '六枝特', '105.474236', '26.210663', 3, 0, 1), +(520221, 520200, '水城县', '水城', '104.95685', '26.540478', 3, 0, 1), +(520281, 520200, '盘州市', '盘州', '104.47158', '25.70993', 3, 0, 1), +(520300, 520000, '遵义市', '遵义', '106.93726', '27.706627', 2, 0, 1), +(520302, 520300, '红花岗区', '红花岗', '106.94379', '27.694395', 3, 0, 1), +(520303, 520300, '汇川区', '汇川', '106.93726', '27.706627', 3, 0, 1), +(520304, 520300, '播州区', '播州', '106.82922', '27.53625', 3, 0, 1), +(520322, 520300, '桐梓县', '桐梓', '106.82659', '28.13156', 3, 0, 1), +(520323, 520300, '绥阳县', '绥阳', '107.191025', '27.951342', 3, 0, 1), +(520324, 520300, '正安县', '正安', '107.44187', '28.550337', 3, 0, 1), +(520325, 520300, '道真仡佬族苗族自治县', '道真', '107.60534', '28.880089', 3, 0, 1), +(520326, 520300, '务川仡佬族苗族自治县', '务川', '107.887856', '28.521566', 3, 0, 1), +(520327, 520300, '凤冈县', '凤冈', '107.72202', '27.960857', 3, 0, 1), +(520328, 520300, '湄潭县', '湄潭', '107.485725', '27.765839', 3, 0, 1), +(520329, 520300, '余庆县', '余庆', '107.89256', '27.221552', 3, 0, 1), +(520330, 520300, '习水县', '习水', '106.20095', '28.327826', 3, 0, 1), +(520381, 520300, '赤水市', '赤水', '105.69811', '28.587057', 3, 0, 1), +(520382, 520300, '仁怀市', '仁怀', '106.412476', '27.803377', 3, 0, 1), +(520400, 520000, '安顺市', '安顺', '105.93219', '26.245544', 2, 0, 1), +(520402, 520400, '西秀区', '西秀', '105.94617', '26.248323', 3, 0, 1), +(520403, 520400, '平坝区', '平坝', '106.2553', '26.40574', 3, 0, 1), +(520422, 520400, '普定县', '普定', '105.745605', '26.305794', 3, 0, 1), +(520423, 520400, '镇宁布依族苗族自治县', '镇宁', '105.768654', '26.056095', 3, 0, 1), +(520424, 520400, '关岭布依族苗族自治县', '关岭', '105.618454', '25.944248', 3, 0, 1), +(520425, 520400, '紫云苗族布依族自治县', '紫云', '106.08452', '25.751568', 3, 0, 1), +(520500, 520000, '毕节市', '毕节', '', '', 2, 0, 1), +(520502, 520500, '七星关区', '七星关', '105.30504', '27.29847', 3, 0, 1), +(520521, 520500, '大方县', '大方', '105.613', '27.14161', 3, 0, 1), +(520522, 520500, '黔西县', '黔西', '106.0323', '27.00866', 3, 0, 1), +(520523, 520500, '金沙县', '金沙', '106.22014', '27.45922', 3, 0, 1), +(520524, 520500, '织金县', '织金', '105.77488', '26.66301', 3, 0, 1), +(520525, 520500, '纳雍县', '纳雍', '105.38269', '26.7777', 3, 0, 1), +(520526, 520500, '威宁彝族回族苗族自治县', '威宁彝族回族苗族自治县', '104.27872', '26.85641', 3, 0, 1), +(520527, 520500, '赫章县', '赫章', '104.7274', '27.12328', 3, 0, 1), +(520600, 520000, '铜仁市', '铜仁', '', '', 2, 0, 1), +(520602, 520600, '碧江区', '碧江', '109.26433', '27.81621', 3, 0, 1), +(520603, 520600, '万山区', '万山', '109.21369', '27.51796', 3, 0, 1), +(520621, 520600, '江口县', '江口', '108.83967', '27.69956', 3, 0, 1), +(520622, 520600, '玉屏侗族自治县', '玉屏侗族自治县', '108.91212', '27.23637', 3, 0, 1), +(520623, 520600, '石阡县', '石阡', '108.2233', '27.51382', 3, 0, 1), +(520624, 520600, '思南县', '思南', '108.2528', '27.93886', 3, 0, 1), +(520625, 520600, '印江土家族苗族自治县', '印江土家族苗族自治县', '108.40958', '27.9941', 3, 0, 1), +(520626, 520600, '德江县', '德江', '108.11987', '28.26408', 3, 0, 1), +(520627, 520600, '沿河土家族自治县', '沿河土家族自治县', '108.50301', '28.56397', 3, 0, 1), +(520628, 520600, '松桃苗族自治县', '松桃苗族自治县', '109.20316', '28.15414', 3, 0, 1), +(522300, 520000, '黔西南布依族苗族自治州', '黔西南', '104.89797', '25.08812', 2, 0, 1), +(522301, 522300, '兴义市', '兴义', '104.89798', '25.088598', 3, 0, 1), +(522302, 522300, '兴仁市', '兴仁', '105.18639', '25.43511', 3, 0, 1), +(522323, 522300, '普安县', '普安', '104.955345', '25.786404', 3, 0, 1), +(522324, 522300, '晴隆县', '晴隆', '105.21877', '25.832882', 3, 0, 1), +(522325, 522300, '贞丰县', '贞丰', '105.65013', '25.385752', 3, 0, 1), +(522326, 522300, '望谟县', '望谟', '106.09156', '25.166668', 3, 0, 1), +(522327, 522300, '册亨县', '册亨', '105.81241', '24.983337', 3, 0, 1), +(522328, 522300, '安龙县', '安龙', '105.4715', '25.10896', 3, 0, 1), +(522600, 520000, '黔东南苗族侗族自治州', '黔东南', '107.977486', '26.583351', 2, 0, 1), +(522601, 522600, '凯里市', '凯里', '107.97754', '26.582964', 3, 0, 1), +(522622, 522600, '黄平县', '黄平', '107.90134', '26.896973', 3, 0, 1), +(522623, 522600, '施秉县', '施秉', '108.12678', '27.034657', 3, 0, 1), +(522624, 522600, '三穗县', '三穗', '108.68112', '26.959885', 3, 0, 1), +(522625, 522600, '镇远县', '镇远', '108.42365', '27.050234', 3, 0, 1), +(522626, 522600, '岑巩县', '岑巩', '108.81646', '27.173244', 3, 0, 1), +(522627, 522600, '天柱县', '天柱', '109.2128', '26.909683', 3, 0, 1), +(522628, 522600, '锦屏县', '锦屏', '109.20252', '26.680626', 3, 0, 1), +(522629, 522600, '剑河县', '剑河', '108.4405', '26.727348', 3, 0, 1), +(522630, 522600, '台江县', '台江', '108.31464', '26.669138', 3, 0, 1), +(522631, 522600, '黎平县', '黎平', '109.136505', '26.230637', 3, 0, 1), +(522632, 522600, '榕江县', '榕江', '108.52103', '25.931086', 3, 0, 1), +(522633, 522600, '从江县', '从江', '108.91265', '25.747059', 3, 0, 1), +(522634, 522600, '雷山县', '雷山', '108.07961', '26.381027', 3, 0, 1), +(522635, 522600, '麻江县', '麻江', '107.59317', '26.494802', 3, 0, 1), +(522636, 522600, '丹寨县', '丹寨', '107.79481', '26.199497', 3, 0, 1), +(522700, 520000, '黔南布依族苗族自治州', '黔南', '107.51716', '26.258219', 2, 0, 1), +(522701, 522700, '都匀市', '都匀', '107.51702', '26.258205', 3, 0, 1), +(522702, 522700, '福泉市', '福泉', '107.51351', '26.702509', 3, 0, 1), +(522722, 522700, '荔波县', '荔波', '107.8838', '25.41224', 3, 0, 1), +(522723, 522700, '贵定县', '贵定', '107.23359', '26.580807', 3, 0, 1), +(522725, 522700, '瓮安县', '瓮安', '107.47842', '27.06634', 3, 0, 1), +(522726, 522700, '独山县', '独山', '107.542755', '25.826283', 3, 0, 1), +(522727, 522700, '平塘县', '平塘', '107.32405', '25.831802', 3, 0, 1), +(522728, 522700, '罗甸县', '罗甸', '106.75001', '25.429893', 3, 0, 1), +(522729, 522700, '长顺县', '长顺', '106.44737', '26.022116', 3, 0, 1), +(522730, 522700, '龙里县', '龙里', '106.97773', '26.448809', 3, 0, 1), +(522731, 522700, '惠水县', '惠水', '106.657845', '26.128637', 3, 0, 1), +(522732, 522700, '三都水族自治县', '三都', '107.87747', '25.985184', 3, 0, 1), +(530000, 0, '云南省', '云南', '102.71225', '25.04061', 1, 0, 1), +(530100, 530000, '昆明市', '昆明', '102.71225', '25.04061', 2, 0, 1), +(530102, 530100, '五华区', '五华', '102.704414', '25.042166', 3, 0, 1), +(530103, 530100, '盘龙区', '盘龙', '102.72904', '25.070238', 3, 0, 1), +(530111, 530100, '官渡区', '官渡', '102.723434', '25.021212', 3, 0, 1), +(530112, 530100, '西山区', '西山', '102.7059', '25.02436', 3, 0, 1), +(530113, 530100, '东川区', '东川', '103.182', '26.08349', 3, 0, 1), +(530114, 530100, '呈贡区', '呈贡', '102.82147', '24.88554', 3, 0, 1), +(530115, 530100, '晋宁区', '晋宁', '102.59559', '24.66982', 3, 0, 1), +(530124, 530100, '富民县', '富民', '102.49789', '25.219667', 3, 0, 1), +(530125, 530100, '宜良县', '宜良', '103.14599', '24.918215', 3, 0, 1), +(530126, 530100, '石林彝族自治县', '石林', '103.271965', '24.754545', 3, 0, 1), +(530127, 530100, '嵩明县', '嵩明', '103.03878', '25.335087', 3, 0, 1), +(530128, 530100, '禄劝彝族苗族自治县', '禄劝', '102.46905', '25.556534', 3, 0, 1), +(530129, 530100, '寻甸回族彝族自治县', '寻甸', '103.25759', '25.559475', 3, 0, 1), +(530181, 530100, '安宁市', '安宁', '102.48554', '24.921785', 3, 0, 1), +(530300, 530000, '曲靖市', '曲靖', '103.79785', '25.501556', 2, 0, 1), +(530302, 530300, '麒麟区', '麒麟', '103.79806', '25.501268', 3, 0, 1), +(530303, 530300, '沾益区', '沾益', '103.82183', '25.60167', 3, 0, 1), +(530304, 530300, '马龙区', '马龙', '103.57834', '25.42807', 3, 0, 1), +(530322, 530300, '陆良县', '陆良', '103.655235', '25.022879', 3, 0, 1), +(530323, 530300, '师宗县', '师宗', '103.993805', '24.825682', 3, 0, 1), +(530324, 530300, '罗平县', '罗平', '104.309265', '24.885708', 3, 0, 1), +(530325, 530300, '富源县', '富源', '104.25692', '25.67064', 3, 0, 1), +(530326, 530300, '会泽县', '会泽', '103.30004', '26.41286', 3, 0, 1), +(530381, 530300, '宣威市', '宣威', '104.09554', '26.227777', 3, 0, 1), +(530400, 530000, '玉溪市', '玉溪', '102.54391', '24.35046', 2, 0, 1), +(530402, 530400, '红塔区', '红塔', '102.543465', '24.350754', 3, 0, 1), +(530403, 530400, '江川区', '江川', '102.75376', '24.28744', 3, 0, 1), +(530423, 530400, '通海县', '通海', '102.76004', '24.112206', 3, 0, 1), +(530424, 530400, '华宁县', '华宁', '102.928986', '24.189808', 3, 0, 1), +(530425, 530400, '易门县', '易门', '102.16211', '24.669598', 3, 0, 1), +(530426, 530400, '峨山彝族自治县', '峨山', '102.40436', '24.173256', 3, 0, 1), +(530427, 530400, '新平彝族傣族自治县', '新平', '101.990906', '24.0664', 3, 0, 1), +(530428, 530400, '元江哈尼族彝族傣族自治县', '元江', '101.99966', '23.597618', 3, 0, 1), +(530481, 530400, '澄江市', '澄江', '102.90819', '24.67379', 3, 0, 1), +(530500, 530000, '保山市', '保山', '99.16713', '25.111801', 2, 0, 1), +(530502, 530500, '隆阳区', '隆阳', '99.165825', '25.112144', 3, 0, 1), +(530521, 530500, '施甸县', '施甸', '99.18376', '24.730846', 3, 0, 1), +(530523, 530500, '龙陵县', '龙陵', '98.693565', '24.591911', 3, 0, 1), +(530524, 530500, '昌宁县', '昌宁', '99.61234', '24.823662', 3, 0, 1), +(530581, 530500, '腾冲市', '腾冲', '98.49097', '25.02053', 3, 0, 1), +(530600, 530000, '昭通市', '昭通', '103.71722', '27.337', 2, 0, 1), +(530602, 530600, '昭阳区', '昭阳', '103.71727', '27.336636', 3, 0, 1), +(530621, 530600, '鲁甸县', '鲁甸', '103.54933', '27.191637', 3, 0, 1), +(530622, 530600, '巧家县', '巧家', '102.92928', '26.9117', 3, 0, 1), +(530623, 530600, '盐津县', '盐津', '104.23506', '28.106922', 3, 0, 1), +(530624, 530600, '大关县', '大关', '103.89161', '27.747114', 3, 0, 1), +(530625, 530600, '永善县', '永善', '103.63732', '28.231525', 3, 0, 1), +(530626, 530600, '绥江县', '绥江', '103.9611', '28.599953', 3, 0, 1), +(530627, 530600, '镇雄县', '镇雄', '104.873055', '27.436268', 3, 0, 1), +(530628, 530600, '彝良县', '彝良', '104.04849', '27.627424', 3, 0, 1), +(530629, 530600, '威信县', '威信', '105.04869', '27.843382', 3, 0, 1), +(530681, 530600, '水富市', '水富', '104.41562', '28.63002', 3, 0, 1), +(530700, 530000, '丽江市', '丽江', '100.233025', '26.872108', 2, 0, 1), +(530702, 530700, '古城区', '古城', '100.23441', '26.872229', 3, 0, 1), +(530721, 530700, '玉龙纳西族自治县', '玉龙', '100.23831', '26.830593', 3, 0, 1), +(530722, 530700, '永胜县', '永胜', '100.7509', '26.685623', 3, 0, 1), +(530723, 530700, '华坪县', '华坪', '101.2678', '26.628834', 3, 0, 1), +(530724, 530700, '宁蒗彝族自治县', '宁蒗', '100.852425', '27.281109', 3, 0, 1), +(530800, 530000, '普洱市', '普洱', '100.97234', '22.77732', 2, 0, 1), +(530802, 530800, '思茅区', '思茅', '100.97323', '22.776594', 3, 0, 1), +(530821, 530800, '宁洱哈尼族彝族自治县', '宁洱', '101.04524', '23.062508', 3, 0, 1), +(530822, 530800, '墨江哈尼族自治县', '墨江', '101.68761', '23.428165', 3, 0, 1), +(530823, 530800, '景东彝族自治县', '景东', '100.84001', '24.448523', 3, 0, 1), +(530824, 530800, '景谷傣族彝族自治县', '景谷', '100.70142', '23.500278', 3, 0, 1), +(530825, 530800, '镇沅彝族哈尼族拉祜族自治县', '镇沅', '101.10851', '24.005713', 3, 0, 1), +(530826, 530800, '江城哈尼族彝族自治县', '江城', '101.859146', '22.58336', 3, 0, 1), +(530827, 530800, '孟连傣族拉祜族佤族自治县', '孟连', '99.5854', '22.325924', 3, 0, 1), +(530828, 530800, '澜沧拉祜族自治县', '澜沧', '99.9312', '22.553083', 3, 0, 1), +(530829, 530800, '西盟佤族自治县', '西盟', '99.594376', '22.644423', 3, 0, 1), +(530900, 530000, '临沧市', '临沧', '100.08697', '23.886566', 2, 0, 1), +(530902, 530900, '临翔区', '临翔', '100.08649', '23.886562', 3, 0, 1), +(530921, 530900, '凤庆县', '凤庆', '99.91871', '24.592737', 3, 0, 1), +(530922, 530900, '云县', '云县', '100.12563', '24.439026', 3, 0, 1), +(530923, 530900, '永德县', '永德', '99.25368', '24.028158', 3, 0, 1), +(530924, 530900, '镇康县', '镇康', '98.82743', '23.761415', 3, 0, 1), +(530925, 530900, '双江拉祜族佤族布朗族傣族自治县', '双江', '99.82442', '23.477476', 3, 0, 1), +(530926, 530900, '耿马傣族佤族自治县', '耿马', '99.4025', '23.534578', 3, 0, 1), +(530927, 530900, '沧源佤族自治县', '沧源', '99.2474', '23.146887', 3, 0, 1), +(532300, 530000, '楚雄彝族自治州', '楚雄', '101.54604', '25.041988', 2, 0, 1), +(532301, 532300, '楚雄市', '楚雄', '101.54614', '25.040913', 3, 0, 1), +(532322, 532300, '双柏县', '双柏', '101.63824', '24.685095', 3, 0, 1), +(532323, 532300, '牟定县', '牟定', '101.543045', '25.31211', 3, 0, 1), +(532324, 532300, '南华县', '南华', '101.274994', '25.192408', 3, 0, 1), +(532325, 532300, '姚安县', '姚安', '101.238396', '25.505404', 3, 0, 1), +(532326, 532300, '大姚县', '大姚', '101.3236', '25.722347', 3, 0, 1), +(532327, 532300, '永仁县', '永仁', '101.67117', '26.056316', 3, 0, 1), +(532328, 532300, '元谋县', '元谋', '101.870834', '25.703314', 3, 0, 1), +(532329, 532300, '武定县', '武定', '102.406784', '25.5301', 3, 0, 1), +(532331, 532300, '禄丰县', '禄丰', '102.07569', '25.14327', 3, 0, 1), +(532500, 530000, '红河哈尼族彝族自治州', '红河', '103.384186', '23.366776', 2, 0, 1), +(532501, 532500, '个旧市', '个旧', '103.154755', '23.360382', 3, 0, 1), +(532502, 532500, '开远市', '开远', '103.25868', '23.713833', 3, 0, 1), +(532503, 532500, '蒙自市', '蒙自', '103.36481', '23.39622', 3, 0, 1), +(532504, 532500, '弥勒市', '弥勒', '103.41499', '24.41059', 3, 0, 1), +(532523, 532500, '屏边苗族自治县', '屏边', '103.687225', '22.987013', 3, 0, 1), +(532524, 532500, '建水县', '建水', '102.820496', '23.618387', 3, 0, 1), +(532525, 532500, '石屏县', '石屏', '102.48447', '23.712568', 3, 0, 1), +(532527, 532500, '泸西县', '泸西', '103.75962', '24.532368', 3, 0, 1), +(532528, 532500, '元阳县', '元阳', '102.83706', '23.219772', 3, 0, 1), +(532529, 532500, '红河县', '红河', '102.42121', '23.36919', 3, 0, 1), +(532530, 532500, '金平苗族瑶族傣族自治县', '金平', '103.228355', '22.779982', 3, 0, 1), +(532531, 532500, '绿春县', '绿春', '102.39286', '22.99352', 3, 0, 1), +(532532, 532500, '河口瑶族自治县', '河口', '103.96159', '22.507563', 3, 0, 1), +(532600, 530000, '文山壮族苗族自治州', '文山', '104.24401', '23.36951', 2, 0, 1), +(532601, 532600, '文山市', '文山', '104.233', '23.38678', 3, 0, 1), +(532622, 532600, '砚山县', '砚山', '104.34399', '23.6123', 3, 0, 1), +(532623, 532600, '西畴县', '西畴', '104.67571', '23.437439', 3, 0, 1), +(532624, 532600, '麻栗坡县', '麻栗坡', '104.7019', '23.124203', 3, 0, 1), +(532625, 532600, '马关县', '马关', '104.39862', '23.011723', 3, 0, 1), +(532626, 532600, '丘北县', '丘北', '104.19437', '24.040981', 3, 0, 1), +(532627, 532600, '广南县', '广南', '105.05669', '24.050272', 3, 0, 1), +(532628, 532600, '富宁县', '富宁', '105.62856', '23.626493', 3, 0, 1), +(532800, 530000, '西双版纳傣族自治州', '西双版纳', '100.79794', '22.001724', 2, 0, 1), +(532801, 532800, '景洪市', '景洪', '100.79795', '22.002087', 3, 0, 1), +(532822, 532800, '勐海县', '勐海', '100.44829', '21.955866', 3, 0, 1), +(532823, 532800, '勐腊县', '勐腊', '101.567055', '21.479448', 3, 0, 1), +(532900, 530000, '大理白族自治州', '大理', '100.22567', '25.589449', 2, 0, 1), +(532901, 532900, '大理市', '大理', '100.24137', '25.593067', 3, 0, 1), +(532922, 532900, '漾濞彝族自治县', '漾濞', '99.95797', '25.669542', 3, 0, 1), +(532923, 532900, '祥云县', '祥云', '100.55402', '25.477072', 3, 0, 1), +(532924, 532900, '宾川县', '宾川', '100.57896', '25.825905', 3, 0, 1), +(532925, 532900, '弥渡县', '弥渡', '100.49067', '25.342594', 3, 0, 1), +(532926, 532900, '南涧彝族自治县', '南涧', '100.518684', '25.041279', 3, 0, 1), +(532927, 532900, '巍山彝族回族自治县', '巍山', '100.30793', '25.23091', 3, 0, 1), +(532928, 532900, '永平县', '永平', '99.53354', '25.46128', 3, 0, 1), +(532929, 532900, '云龙县', '云龙', '99.3694', '25.884954', 3, 0, 1), +(532930, 532900, '洱源县', '洱源', '99.951706', '26.111183', 3, 0, 1), +(532931, 532900, '剑川县', '剑川', '99.90588', '26.530066', 3, 0, 1), +(532932, 532900, '鹤庆县', '鹤庆', '100.17338', '26.55839', 3, 0, 1), +(533100, 530000, '德宏傣族景颇族自治州', '德宏', '98.57836', '24.436693', 2, 0, 1), +(533102, 533100, '瑞丽市', '瑞丽', '97.85588', '24.010735', 3, 0, 1), +(533103, 533100, '芒市', '芒市', '98.57761', '24.436699', 3, 0, 1), +(533122, 533100, '梁河县', '梁河', '98.298195', '24.80742', 3, 0, 1), +(533123, 533100, '盈江县', '盈江', '97.93393', '24.709541', 3, 0, 1), +(533124, 533100, '陇川县', '陇川', '97.79444', '24.184065', 3, 0, 1), +(533300, 530000, '怒江傈僳族自治州', '怒江', '98.8543', '25.850948', 2, 0, 1), +(533301, 533300, '泸水市', '泸水', '98.85804', '25.82306', 3, 0, 1), +(533323, 533300, '福贡县', '福贡', '98.86742', '26.902739', 3, 0, 1), +(533324, 533300, '贡山独龙族怒族自治县', '贡山', '98.66614', '27.738054', 3, 0, 1), +(533325, 533300, '兰坪白族普米族自治县', '兰坪', '99.42138', '26.453838', 3, 0, 1), +(533400, 530000, '迪庆藏族自治州', '迪庆', '99.70647', '27.826853', 2, 0, 1), +(533401, 533400, '香格里拉市', '香格里拉', '99.74317', '27.84254', 3, 0, 1), +(533422, 533400, '德钦县', '德钦', '98.91506', '28.483273', 3, 0, 1), +(533423, 533400, '维西傈僳族自治县', '维西', '99.286354', '27.180948', 3, 0, 1), +(540000, 0, '西藏自治区', '西藏', '91.13221', '29.66036', 1, 0, 1), +(540100, 540000, '拉萨市', '拉萨', '91.13221', '29.66036', 2, 0, 1), +(540102, 540100, '城关区', '城关', '91.13291', '29.659472', 3, 0, 1), +(540103, 540100, '堆龙德庆区', '堆龙德庆', '91.00338', '29.64602', 3, 0, 1), +(540104, 540100, '达孜区', '达孜', '91.34979', '29.66933', 3, 0, 1), +(540121, 540100, '林周县', '林周', '91.26184', '29.895754', 3, 0, 1), +(540122, 540100, '当雄县', '当雄', '91.10355', '30.47482', 3, 0, 1), +(540123, 540100, '尼木县', '尼木', '90.16554', '29.431347', 3, 0, 1), +(540124, 540100, '曲水县', '曲水', '90.73805', '29.349895', 3, 0, 1), +(540127, 540100, '墨竹工卡县', '墨竹工卡', '91.731155', '29.834658', 3, 0, 1), +(540200, 540000, '日喀则市', '日喀则', '', '', 2, 0, 1), +(540202, 540200, '桑珠孜区', '桑珠孜', '88.88697', '29.26969', 3, 0, 1), +(540221, 540200, '南木林县', '南木林', '89.09936', '29.68224', 3, 0, 1), +(540222, 540200, '江孜县', '江孜', '89.60558', '28.91152', 3, 0, 1), +(540223, 540200, '定日县', '定日', '87.12607', '28.65874', 3, 0, 1), +(540224, 540200, '萨迦县', '萨迦', '88.02172', '28.89919', 3, 0, 1), +(540225, 540200, '拉孜县', '拉孜', '87.63718', '29.08164', 3, 0, 1), +(540226, 540200, '昂仁县', '昂仁', '87.23617', '29.29482', 3, 0, 1), +(540227, 540200, '谢通门县', '谢通门', '88.26166', '29.43234', 3, 0, 1), +(540228, 540200, '白朗县', '白朗', '89.26156', '29.10919', 3, 0, 1), +(540229, 540200, '仁布县', '仁布', '89.842', '29.23089', 3, 0, 1), +(540230, 540200, '康马县', '康马', '89.68169', '28.55567', 3, 0, 1), +(540231, 540200, '定结县', '定结', '87.76606', '28.36408', 3, 0, 1), +(540232, 540200, '仲巴县', '仲巴', '84.02454', '29.72419', 3, 0, 1), +(540233, 540200, '亚东县', '亚东', '88.90708', '27.48592', 3, 0, 1), +(540234, 540200, '吉隆县', '吉隆', '85.29737', '28.85254', 3, 0, 1), +(540235, 540200, '聂拉木县', '聂拉木', '85.98232', '28.15499', 3, 0, 1), +(540236, 540200, '萨嘎县', '萨嘎', '85.23421', '29.32943', 3, 0, 1), +(540237, 540200, '岗巴县', '岗巴', '88.52015', '28.2746', 3, 0, 1), +(540300, 540000, '昌都市', '昌都', '', '', 2, 0, 1), +(540302, 540300, '卡若区', '卡若', '97.18039', '31.13831', 3, 0, 1), +(540321, 540300, '江达县', '江达', '98.21822', '31.49968', 3, 0, 1), +(540322, 540300, '贡觉县', '贡觉', '98.2708', '30.86016', 3, 0, 1), +(540323, 540300, '类乌齐县', '类乌齐', '96.6002', '31.21155', 3, 0, 1), +(540324, 540300, '丁青县', '丁青', '95.59572', '31.4125', 3, 0, 1), +(540325, 540300, '察雅县', '察雅', '97.56877', '30.65363', 3, 0, 1), +(540326, 540300, '八宿县', '八宿', '96.91785', '30.0532', 3, 0, 1), +(540327, 540300, '左贡县', '左贡', '97.84085', '29.67091', 3, 0, 1), +(540328, 540300, '芒康县', '芒康', '98.59312', '29.68008', 3, 0, 1), +(540329, 540300, '洛隆县', '洛隆', '95.82482', '30.74181', 3, 0, 1), +(540330, 540300, '边坝县', '边坝', '94.7079', '30.93345', 3, 0, 1), +(540400, 540000, '林芝市', '林芝', '', '', 2, 0, 1), +(540402, 540400, '巴宜区', '巴宜', '94.36119', '29.63654', 3, 0, 1), +(540421, 540400, '工布江达县', '工布江达', '93.24611', '29.88531', 3, 0, 1), +(540422, 540400, '米林县', '米林', '94.21315', '29.21607', 3, 0, 1), +(540423, 540400, '墨脱县', '墨脱', '95.33304', '29.32521', 3, 0, 1), +(540424, 540400, '波密县', '波密', '95.76761', '29.85903', 3, 0, 1), +(540425, 540400, '察隅县', '察隅', '97.46687', '28.66154', 3, 0, 1), +(540426, 540400, '朗县', '朗县', '93.07482', '29.04607', 3, 0, 1), +(540500, 540000, '山南市', '山南', '', '', 2, 0, 1), +(540502, 540500, '乃东区', '乃东', '91.76141', '29.22484', 3, 0, 1), +(540521, 540500, '扎囊县', '扎囊', '91.33735', '29.245', 3, 0, 1), +(540522, 540500, '贡嘎县', '贡嘎', '90.98421', '29.28947', 3, 0, 1), +(540523, 540500, '桑日县', '桑日', '92.01579', '29.25906', 3, 0, 1), +(540524, 540500, '琼结县', '琼结', '91.68385', '29.02464', 3, 0, 1), +(540525, 540500, '曲松县', '曲松', '92.20222', '29.06277', 3, 0, 1), +(540526, 540500, '措美县', '措美', '91.43361', '28.43793', 3, 0, 1), +(540527, 540500, '洛扎县', '洛扎', '90.85998', '28.38569', 3, 0, 1), +(540528, 540500, '加查县', '加查', '92.59387', '29.14023', 3, 0, 1), +(540529, 540500, '隆子县', '隆子', '92.46177', '28.40681', 3, 0, 1), +(540530, 540500, '错那县', '错那', '91.9571', '27.99099', 3, 0, 1), +(540531, 540500, '浪卡子县', '浪卡子', '90.40011', '28.96768', 3, 0, 1), +(540600, 540000, '那曲市', '那曲', '', '', 2, 0, 1), +(540602, 540600, '色尼区', '色尼', '92.05355', '31.46988', 3, 0, 1), +(540621, 540600, '嘉黎县', '嘉黎', '93.23236', '30.64087', 3, 0, 1), +(540622, 540600, '比如县', '比如', '93.6813', '31.47785', 3, 0, 1), +(540623, 540600, '聂荣县', '聂荣', '92.30327', '32.10784', 3, 0, 1), +(540624, 540600, '安多县', '安多', '91.68258', '32.265', 3, 0, 1), +(540625, 540600, '申扎县', '申扎', '88.70982', '30.93043', 3, 0, 1), +(540626, 540600, '索县', '索县', '93.78556', '31.88673', 3, 0, 1), +(540627, 540600, '班戈县', '班戈', '90.00987', '31.39199', 3, 0, 1), +(540628, 540600, '巴青县', '巴青', '94.05345', '31.9184', 3, 0, 1), +(540629, 540600, '尼玛县', '尼玛', '87.23691', '31.78448', 3, 0, 1), +(540630, 540600, '双湖县', '双湖', '88.83691', '33.18763', 3, 0, 1), +(542500, 540000, '阿里地区', '阿里', '80.1055', '32.503185', 2, 0, 1), +(542521, 542500, '普兰县', '普兰', '81.17759', '30.291897', 3, 0, 1), +(542522, 542500, '札达县', '札达', '79.80319', '31.478586', 3, 0, 1), +(542523, 542500, '噶尔县', '噶尔', '80.105', '32.503372', 3, 0, 1), +(542524, 542500, '日土县', '日土', '79.73193', '33.382454', 3, 0, 1), +(542525, 542500, '革吉县', '革吉', '81.1429', '32.38919', 3, 0, 1), +(542526, 542500, '改则县', '改则', '84.062386', '32.302074', 3, 0, 1), +(542527, 542500, '措勤县', '措勤', '85.159256', '31.016773', 3, 0, 1), +(610000, 0, '陕西省', '陕西', '108.94802', '34.26316', 1, 0, 1), +(610100, 610000, '西安市', '西安', '108.94802', '34.26316', 2, 0, 1), +(610102, 610100, '新城区', '新城', '108.9599', '34.26927', 3, 0, 1), +(610103, 610100, '碑林区', '碑林', '108.94699', '34.25106', 3, 0, 1), +(610104, 610100, '莲湖区', '莲湖', '108.9332', '34.2656', 3, 0, 1), +(610111, 610100, '灞桥区', '灞桥', '109.06726', '34.267452', 3, 0, 1), +(610112, 610100, '未央区', '未央', '108.94602', '34.30823', 3, 0, 1), +(610113, 610100, '雁塔区', '雁塔', '108.92659', '34.21339', 3, 0, 1), +(610114, 610100, '阎良区', '阎良', '109.22802', '34.66214', 3, 0, 1), +(610115, 610100, '临潼区', '临潼', '109.21399', '34.372066', 3, 0, 1), +(610116, 610100, '长安区', '长安', '108.94158', '34.157097', 3, 0, 1), +(610117, 610100, '高陵区', '高陵', '109.08822', '34.53487', 3, 0, 1), +(610118, 610100, '鄠邑区', '鄠邑', '108.60494', '34.10847', 3, 0, 1), +(610122, 610100, '蓝田县', '蓝田', '109.317635', '34.15619', 3, 0, 1), +(610124, 610100, '周至县', '周至', '108.21647', '34.161533', 3, 0, 1), +(610200, 610000, '铜川市', '铜川', '108.97961', '34.91658', 2, 0, 1), +(610202, 610200, '王益区', '王益', '109.07586', '35.0691', 3, 0, 1), +(610203, 610200, '印台区', '印台', '109.100815', '35.111927', 3, 0, 1), +(610204, 610200, '耀州区', '耀州', '108.96254', '34.910206', 3, 0, 1), +(610222, 610200, '宜君县', '宜君', '109.11828', '35.398766', 3, 0, 1), +(610300, 610000, '宝鸡市', '宝鸡', '107.14487', '34.369316', 2, 0, 1), +(610302, 610300, '渭滨区', '渭滨', '107.14447', '34.37101', 3, 0, 1), +(610303, 610300, '金台区', '金台', '107.14994', '34.37519', 3, 0, 1), +(610304, 610300, '陈仓区', '陈仓', '107.383644', '34.35275', 3, 0, 1), +(610322, 610300, '凤翔县', '凤翔', '107.40057', '34.521667', 3, 0, 1), +(610323, 610300, '岐山县', '岐山', '107.624466', '34.44296', 3, 0, 1), +(610324, 610300, '扶风县', '扶风', '107.89142', '34.375496', 3, 0, 1), +(610326, 610300, '眉县', '眉县', '107.75237', '34.272137', 3, 0, 1), +(610327, 610300, '陇县', '陇县', '106.85706', '34.89326', 3, 0, 1), +(610328, 610300, '千阳县', '千阳', '107.13299', '34.642586', 3, 0, 1), +(610329, 610300, '麟游县', '麟游', '107.79661', '34.677715', 3, 0, 1), +(610330, 610300, '凤县', '凤县', '106.525215', '33.912464', 3, 0, 1), +(610331, 610300, '太白县', '太白', '107.316536', '34.059216', 3, 0, 1), +(610400, 610000, '咸阳市', '咸阳', '108.70512', '34.33344', 2, 0, 1), +(610402, 610400, '秦都区', '秦都', '108.69864', '34.3298', 3, 0, 1), +(610403, 610400, '杨陵区', '杨陵', '108.08635', '34.27135', 3, 0, 1), +(610404, 610400, '渭城区', '渭城', '108.73096', '34.336845', 3, 0, 1), +(610422, 610400, '三原县', '三原', '108.94348', '34.613995', 3, 0, 1), +(610423, 610400, '泾阳县', '泾阳', '108.83784', '34.528492', 3, 0, 1), +(610424, 610400, '乾县', '乾县', '108.247406', '34.52726', 3, 0, 1), +(610425, 610400, '礼泉县', '礼泉', '108.428314', '34.482582', 3, 0, 1), +(610426, 610400, '永寿县', '永寿', '108.14313', '34.69262', 3, 0, 1), +(610428, 610400, '长武县', '长武', '107.79584', '35.206123', 3, 0, 1), +(610429, 610400, '旬邑县', '旬邑', '108.337234', '35.112232', 3, 0, 1), +(610430, 610400, '淳化县', '淳化', '108.58118', '34.79797', 3, 0, 1), +(610431, 610400, '武功县', '武功', '108.21286', '34.25973', 3, 0, 1), +(610481, 610400, '兴平市', '兴平', '108.488495', '34.297134', 3, 0, 1), +(610482, 610400, '彬州市', '彬州', '108.08108', '35.03565', 3, 0, 1), +(610500, 610000, '渭南市', '渭南', '109.502884', '34.499382', 2, 0, 1), +(610502, 610500, '临渭区', '临渭', '109.503296', '34.50127', 3, 0, 1), +(610503, 610500, '华州区', '华州', '109.7719', '34.51259', 3, 0, 1), +(610522, 610500, '潼关县', '潼关', '110.24726', '34.544514', 3, 0, 1), +(610523, 610500, '大荔县', '大荔', '109.94312', '34.79501', 3, 0, 1), +(610524, 610500, '合阳县', '合阳', '110.14798', '35.2371', 3, 0, 1), +(610525, 610500, '澄城县', '澄城', '109.93761', '35.184', 3, 0, 1), +(610526, 610500, '蒲城县', '蒲城', '109.58965', '34.956036', 3, 0, 1), +(610527, 610500, '白水县', '白水', '109.59431', '35.17729', 3, 0, 1), +(610528, 610500, '富平县', '富平', '109.18717', '34.746677', 3, 0, 1), +(610581, 610500, '韩城市', '韩城', '110.45239', '35.47524', 3, 0, 1), +(610582, 610500, '华阴市', '华阴', '110.08952', '34.565357', 3, 0, 1), +(610600, 610000, '延安市', '延安', '109.49081', '36.59654', 2, 0, 1), +(610602, 610600, '宝塔区', '宝塔', '109.49069', '36.59629', 3, 0, 1), +(610603, 610600, '安塞区', '安塞', '109.32897', '36.86373', 3, 0, 1), +(610621, 610600, '延长县', '延长', '110.01296', '36.578304', 3, 0, 1), +(610622, 610600, '延川县', '延川', '110.190315', '36.882065', 3, 0, 1), +(610625, 610600, '志丹县', '志丹', '108.7689', '36.823032', 3, 0, 1), +(610626, 610600, '吴起县', '吴起', '108.17698', '36.92485', 3, 0, 1), +(610627, 610600, '甘泉县', '甘泉', '109.34961', '36.27773', 3, 0, 1), +(610628, 610600, '富县', '富县', '109.38413', '35.996494', 3, 0, 1), +(610629, 610600, '洛川县', '洛川', '109.435715', '35.762135', 3, 0, 1), +(610630, 610600, '宜川县', '宜川', '110.17554', '36.050392', 3, 0, 1), +(610631, 610600, '黄龙县', '黄龙', '109.83502', '35.583275', 3, 0, 1), +(610632, 610600, '黄陵县', '黄陵', '109.26247', '35.580166', 3, 0, 1), +(610681, 610600, '子长市', '子长', '109.67538', '37.14258', 3, 0, 1), +(610700, 610000, '汉中市', '汉中', '107.02862', '33.077667', 2, 0, 1), +(610702, 610700, '汉台区', '汉台', '107.02824', '33.077675', 3, 0, 1), +(610703, 610700, '南郑区', '南郑', '106.93624', '32.99932', 3, 0, 1), +(610722, 610700, '城固县', '城固', '107.32989', '33.1531', 3, 0, 1), +(610723, 610700, '洋县', '洋县', '107.549965', '33.22328', 3, 0, 1), +(610724, 610700, '西乡县', '西乡', '107.76586', '32.98796', 3, 0, 1), +(610725, 610700, '勉县', '勉县', '106.680176', '33.155617', 3, 0, 1), +(610726, 610700, '宁强县', '宁强', '106.25739', '32.830807', 3, 0, 1), +(610727, 610700, '略阳县', '略阳', '106.1539', '33.32964', 3, 0, 1), +(610728, 610700, '镇巴县', '镇巴', '107.89531', '32.535854', 3, 0, 1), +(610729, 610700, '留坝县', '留坝', '106.92438', '33.61334', 3, 0, 1), +(610730, 610700, '佛坪县', '佛坪', '107.98858', '33.520744', 3, 0, 1), +(610800, 610000, '榆林市', '榆林', '109.741196', '38.29016', 2, 0, 1), +(610802, 610800, '榆阳区', '榆阳', '109.74791', '38.299267', 3, 0, 1), +(610803, 610800, '横山区', '横山', '109.29315', '37.95871', 3, 0, 1), +(610822, 610800, '府谷县', '府谷', '111.06965', '39.029243', 3, 0, 1), +(610824, 610800, '靖边县', '靖边', '108.80567', '37.596085', 3, 0, 1), +(610825, 610800, '定边县', '定边', '107.60128', '37.59523', 3, 0, 1), +(610826, 610800, '绥德县', '绥德', '110.26537', '37.5077', 3, 0, 1), +(610827, 610800, '米脂县', '米脂', '110.17868', '37.759083', 3, 0, 1), +(610828, 610800, '佳县', '佳县', '110.49337', '38.0216', 3, 0, 1), +(610829, 610800, '吴堡县', '吴堡', '110.73931', '37.451923', 3, 0, 1), +(610830, 610800, '清涧县', '清涧', '110.12146', '37.087704', 3, 0, 1), +(610831, 610800, '子洲县', '子洲', '110.03457', '37.611572', 3, 0, 1), +(610881, 610800, '神木市', '神木', '110.49896', '38.84239', 3, 0, 1), +(610900, 610000, '安康市', '安康', '109.029274', '32.6903', 2, 0, 1), +(610902, 610900, '汉滨区', '汉滨', '109.0291', '32.69082', 3, 0, 1), +(610921, 610900, '汉阴县', '汉阴', '108.51095', '32.89112', 3, 0, 1), +(610922, 610900, '石泉县', '石泉', '108.25051', '33.038513', 3, 0, 1), +(610923, 610900, '宁陕县', '宁陕', '108.31371', '33.312183', 3, 0, 1), +(610924, 610900, '紫阳县', '紫阳', '108.53779', '32.520176', 3, 0, 1), +(610925, 610900, '岚皋县', '岚皋', '108.900665', '32.31069', 3, 0, 1), +(610926, 610900, '平利县', '平利', '109.36186', '32.38793', 3, 0, 1), +(610927, 610900, '镇坪县', '镇坪', '109.526436', '31.883394', 3, 0, 1), +(610928, 610900, '旬阳县', '旬阳', '109.36815', '32.83357', 3, 0, 1), +(610929, 610900, '白河县', '白河', '110.11419', '32.809483', 3, 0, 1), +(611000, 610000, '商洛市', '商洛', '109.93977', '33.86832', 2, 0, 1), +(611002, 611000, '商州区', '商州', '109.93768', '33.86921', 3, 0, 1), +(611021, 611000, '洛南县', '洛南', '110.14571', '34.0885', 3, 0, 1), +(611022, 611000, '丹凤县', '丹凤', '110.33191', '33.69471', 3, 0, 1), +(611023, 611000, '商南县', '商南', '110.88544', '33.526367', 3, 0, 1), +(611024, 611000, '山阳县', '山阳', '109.88043', '33.53041', 3, 0, 1), +(611025, 611000, '镇安县', '镇安', '109.15108', '33.42398', 3, 0, 1), +(611026, 611000, '柞水县', '柞水', '109.11125', '33.682774', 3, 0, 1), +(620000, 0, '甘肃省', '甘肃', '103.823555', '36.05804', 1, 0, 1), +(620100, 620000, '兰州市', '兰州', '103.823555', '36.05804', 2, 0, 1), +(620102, 620100, '城关区', '城关', '103.841034', '36.049114', 3, 0, 1), +(620103, 620100, '七里河区', '七里河', '103.784325', '36.06673', 3, 0, 1), +(620104, 620100, '西固区', '西固', '103.62233', '36.10037', 3, 0, 1), +(620105, 620100, '安宁区', '安宁', '103.72404', '36.10329', 3, 0, 1), +(620111, 620100, '红古区', '红古', '102.86182', '36.344177', 3, 0, 1), +(620121, 620100, '永登县', '永登', '103.2622', '36.73443', 3, 0, 1), +(620122, 620100, '皋兰县', '皋兰', '103.94933', '36.331253', 3, 0, 1), +(620123, 620100, '榆中县', '榆中', '104.114975', '35.84443', 3, 0, 1), +(620200, 620000, '嘉峪关市', '嘉峪关', '98.277306', '39.78653', 2, 0, 1), +(620300, 620000, '金昌市', '金昌', '102.18789', '38.514236', 2, 0, 1), +(620302, 620300, '金川区', '金川', '102.18768', '38.513794', 3, 0, 1), +(620321, 620300, '永昌县', '永昌', '101.971954', '38.247353', 3, 0, 1), +(620400, 620000, '白银市', '白银', '104.17361', '36.54568', 2, 0, 1), +(620402, 620400, '白银区', '白银', '104.17425', '36.54565', 3, 0, 1), +(620403, 620400, '平川区', '平川', '104.81921', '36.72921', 3, 0, 1), +(620421, 620400, '靖远县', '靖远', '104.68697', '36.561424', 3, 0, 1), +(620422, 620400, '会宁县', '会宁', '105.05434', '35.692486', 3, 0, 1), +(620423, 620400, '景泰县', '景泰', '104.06639', '37.19352', 3, 0, 1), +(620500, 620000, '天水市', '天水', '105.725', '34.57853', 2, 0, 1), +(620502, 620500, '秦州区', '秦州', '105.72448', '34.578644', 3, 0, 1), +(620503, 620500, '麦积区', '麦积', '105.89763', '34.563503', 3, 0, 1), +(620521, 620500, '清水县', '清水', '106.13988', '34.75287', 3, 0, 1), +(620522, 620500, '秦安县', '秦安', '105.6733', '34.862354', 3, 0, 1), +(620523, 620500, '甘谷县', '甘谷', '105.332344', '34.747326', 3, 0, 1), +(620524, 620500, '武山县', '武山', '104.89169', '34.721954', 3, 0, 1), +(620525, 620500, '张家川回族自治县', '张家川', '106.21242', '34.993237', 3, 0, 1), +(620600, 620000, '武威市', '武威', '102.6347', '37.929996', 2, 0, 1), +(620602, 620600, '凉州区', '凉州', '102.63449', '37.93025', 3, 0, 1), +(620621, 620600, '民勤县', '民勤', '103.09065', '38.624622', 3, 0, 1), +(620622, 620600, '古浪县', '古浪', '102.89805', '37.47057', 3, 0, 1), +(620623, 620600, '天祝藏族自治县', '天祝', '103.14204', '36.97168', 3, 0, 1), +(620700, 620000, '张掖市', '张掖', '100.455475', '38.932896', 2, 0, 1), +(620702, 620700, '甘州区', '甘州', '100.454865', '38.931774', 3, 0, 1), +(620721, 620700, '肃南裕固族自治县', '肃南', '99.61709', '38.83727', 3, 0, 1), +(620722, 620700, '民乐县', '民乐', '100.81662', '38.434456', 3, 0, 1), +(620723, 620700, '临泽县', '临泽', '100.166336', '39.15215', 3, 0, 1), +(620724, 620700, '高台县', '高台', '99.81665', '39.37631', 3, 0, 1), +(620725, 620700, '山丹县', '山丹', '101.08844', '38.78484', 3, 0, 1), +(620800, 620000, '平凉市', '平凉', '106.68469', '35.54279', 2, 0, 1), +(620802, 620800, '崆峒区', '崆峒', '106.68422', '35.54173', 3, 0, 1), +(620821, 620800, '泾川县', '泾川', '107.36522', '35.33528', 3, 0, 1), +(620822, 620800, '灵台县', '灵台', '107.62059', '35.06401', 3, 0, 1), +(620823, 620800, '崇信县', '崇信', '107.03125', '35.30453', 3, 0, 1), +(620825, 620800, '庄浪县', '庄浪', '106.04198', '35.203426', 3, 0, 1), +(620826, 620800, '静宁县', '静宁', '105.73349', '35.52524', 3, 0, 1), +(620881, 620800, '华亭市', '华亭', '106.65352', '35.21756', 3, 0, 1), +(620900, 620000, '酒泉市', '酒泉', '98.510796', '39.744022', 2, 0, 1), +(620902, 620900, '肃州区', '肃州', '98.511154', '39.74386', 3, 0, 1), +(620921, 620900, '金塔县', '金塔', '98.90296', '39.983036', 3, 0, 1), +(620922, 620900, '瓜州县', '瓜州', '95.780594', '40.516525', 3, 0, 1), +(620923, 620900, '肃北蒙古族自治县', '肃北', '94.87728', '39.51224', 3, 0, 1), +(620924, 620900, '阿克塞哈萨克族自治县', '阿克塞', '94.33764', '39.63164', 3, 0, 1), +(620981, 620900, '玉门市', '玉门', '97.03721', '40.28682', 3, 0, 1), +(620982, 620900, '敦煌市', '敦煌', '94.664276', '40.141117', 3, 0, 1), +(621000, 620000, '庆阳市', '庆阳', '107.638374', '35.73422', 2, 0, 1), +(621002, 621000, '西峰区', '西峰', '107.638824', '35.73371', 3, 0, 1), +(621021, 621000, '庆城县', '庆城', '107.885666', '36.013504', 3, 0, 1), +(621022, 621000, '环县', '环县', '107.308754', '36.56932', 3, 0, 1), +(621023, 621000, '华池县', '华池', '107.98629', '36.457302', 3, 0, 1), +(621024, 621000, '合水县', '合水', '108.01987', '35.819004', 3, 0, 1), +(621025, 621000, '正宁县', '正宁', '108.36107', '35.490643', 3, 0, 1), +(621026, 621000, '宁县', '宁县', '107.92118', '35.50201', 3, 0, 1), +(621027, 621000, '镇原县', '镇原', '107.19571', '35.677807', 3, 0, 1), +(621100, 620000, '定西市', '定西', '104.6263', '35.57958', 2, 0, 1), +(621102, 621100, '安定区', '安定', '104.62577', '35.579765', 3, 0, 1), +(621121, 621100, '通渭县', '通渭', '105.2501', '35.208923', 3, 0, 1), +(621122, 621100, '陇西县', '陇西', '104.63755', '35.00341', 3, 0, 1), +(621123, 621100, '渭源县', '渭源', '104.21174', '35.133022', 3, 0, 1), +(621124, 621100, '临洮县', '临洮', '103.86218', '35.376232', 3, 0, 1), +(621125, 621100, '漳县', '漳县', '104.46676', '34.84864', 3, 0, 1), +(621126, 621100, '岷县', '岷县', '104.03988', '34.439106', 3, 0, 1), +(621200, 620000, '陇南市', '陇南', '104.92938', '33.3886', 2, 0, 1), +(621202, 621200, '武都区', '武都', '104.92986', '33.388157', 3, 0, 1), +(621221, 621200, '成县', '成县', '105.734436', '33.739864', 3, 0, 1), +(621222, 621200, '文县', '文县', '104.68245', '32.94217', 3, 0, 1), +(621223, 621200, '宕昌县', '宕昌', '104.39448', '34.042656', 3, 0, 1), +(621224, 621200, '康县', '康县', '105.609535', '33.328266', 3, 0, 1), +(621225, 621200, '西和县', '西和', '105.299736', '34.013718', 3, 0, 1), +(621226, 621200, '礼县', '礼县', '105.18162', '34.18939', 3, 0, 1), +(621227, 621200, '徽县', '徽县', '106.08563', '33.767784', 3, 0, 1), +(621228, 621200, '两当县', '两当', '106.30696', '33.91073', 3, 0, 1), +(622900, 620000, '临夏回族自治州', '临夏', '103.212006', '35.599445', 2, 0, 1), +(622901, 622900, '临夏市', '临夏市', '103.21163', '35.59941', 3, 0, 1), +(622921, 622900, '临夏县', '临夏县', '102.99387', '35.49236', 3, 0, 1), +(622922, 622900, '康乐县', '康乐', '103.709854', '35.371906', 3, 0, 1), +(622923, 622900, '永靖县', '永靖', '103.31987', '35.938934', 3, 0, 1), +(622924, 622900, '广河县', '广河', '103.57619', '35.48169', 3, 0, 1), +(622925, 622900, '和政县', '和政', '103.35036', '35.425972', 3, 0, 1), +(622926, 622900, '东乡族自治县', '东乡', '103.389565', '35.66383', 3, 0, 1), +(622927, 622900, '积石山保安族东乡族撒拉族自治县', '积石山', '102.87747', '35.712906', 3, 0, 1), +(623000, 620000, '甘南藏族自治州', '甘南', '102.91101', '34.986355', 2, 0, 1), +(623001, 623000, '合作市', '合作', '102.91149', '34.985973', 3, 0, 1), +(623021, 623000, '临潭县', '临潭', '103.35305', '34.69164', 3, 0, 1), +(623022, 623000, '卓尼县', '卓尼', '103.50851', '34.588165', 3, 0, 1), +(623023, 623000, '舟曲县', '舟曲', '104.37027', '33.782963', 3, 0, 1), +(623024, 623000, '迭部县', '迭部', '103.22101', '34.055347', 3, 0, 1), +(623025, 623000, '玛曲县', '玛曲', '102.07577', '33.99807', 3, 0, 1), +(623026, 623000, '碌曲县', '碌曲', '102.488495', '34.589592', 3, 0, 1), +(623027, 623000, '夏河县', '夏河', '102.520744', '35.20085', 3, 0, 1), +(630000, 0, '青海省', '青海', '101.778915', '36.623177', 1, 0, 1), +(630100, 630000, '西宁市', '西宁', '101.778915', '36.623177', 2, 0, 1), +(630102, 630100, '城东区', '城东', '101.7961', '36.616043', 3, 0, 1), +(630103, 630100, '城中区', '城中', '101.78455', '36.62118', 3, 0, 1), +(630104, 630100, '城西区', '城西', '101.76365', '36.628323', 3, 0, 1), +(630105, 630100, '城北区', '城北', '101.7613', '36.64845', 3, 0, 1), +(630106, 630100, '湟中区', '湟中', '101.57164', '36.50087', 3, 0, 1), +(630121, 630100, '大通回族土族自治县', '大通', '101.68418', '36.931343', 3, 0, 1), +(630123, 630100, '湟源县', '湟源', '101.263435', '36.68482', 3, 0, 1), +(630200, 630000, '海东市', '海东', '', '', 2, 0, 1), +(630202, 630200, '乐都区', '乐都', '102.40173', '36.48209', 3, 0, 1), +(630203, 630200, '平安区', '平安', '102.10848', '36.50029', 3, 0, 1), +(630222, 630200, '民和回族土族自治县', '民和回族土族自治县', '102.83087', '36.32026', 3, 0, 1), +(630223, 630200, '互助土族自治县', '互助土族自治县', '101.95842', '36.84412', 3, 0, 1), +(630224, 630200, '化隆回族自治县', '化隆回族自治县', '102.26404', '36.09493', 3, 0, 1), +(630225, 630200, '循化撒拉族自治县', '循化撒拉族自治县', '102.4891', '35.8508', 3, 0, 1), +(632200, 630000, '海北藏族自治州', '海北', '100.90106', '36.959435', 2, 0, 1), +(632221, 632200, '门源回族自治县', '门源', '101.61846', '37.37663', 3, 0, 1), +(632222, 632200, '祁连县', '祁连', '100.24978', '38.175407', 3, 0, 1), +(632223, 632200, '海晏县', '海晏', '100.90049', '36.95954', 3, 0, 1), +(632224, 632200, '刚察县', '刚察', '100.13842', '37.326263', 3, 0, 1), +(632300, 630000, '黄南藏族自治州', '黄南', '102.01999', '35.517742', 2, 0, 1), +(632301, 632300, '同仁市', '同仁', '', '', 3, 0, 1), +(632322, 632300, '尖扎县', '尖扎', '102.03195', '35.938206', 3, 0, 1), +(632323, 632300, '泽库县', '泽库', '101.469345', '35.036842', 3, 0, 1), +(632324, 632300, '河南蒙古族自治县', '河南', '101.61188', '34.734524', 3, 0, 1), +(632500, 630000, '海南藏族自治州', '海南藏族', '100.619545', '36.280354', 2, 0, 1), +(632521, 632500, '共和县', '共和', '100.6196', '36.280285', 3, 0, 1), +(632522, 632500, '同德县', '同德', '100.57947', '35.254494', 3, 0, 1), +(632523, 632500, '贵德县', '贵德', '101.431854', '36.040455', 3, 0, 1), +(632524, 632500, '兴海县', '兴海', '99.98696', '35.58909', 3, 0, 1), +(632525, 632500, '贵南县', '贵南', '100.74792', '35.587086', 3, 0, 1), +(632600, 630000, '果洛藏族自治州', '果洛', '100.24214', '34.4736', 2, 0, 1), +(632621, 632600, '玛沁县', '玛沁', '100.24353', '34.473385', 3, 0, 1), +(632622, 632600, '班玛县', '班玛', '100.73795', '32.931587', 3, 0, 1), +(632623, 632600, '甘德县', '甘德', '99.90259', '33.966988', 3, 0, 1), +(632624, 632600, '达日县', '达日', '99.65172', '33.753258', 3, 0, 1), +(632625, 632600, '久治县', '久治', '101.484886', '33.430218', 3, 0, 1), +(632626, 632600, '玛多县', '玛多', '98.21134', '34.91528', 3, 0, 1), +(632700, 630000, '玉树藏族自治州', '玉树', '97.00852', '33.004047', 2, 0, 1), +(632701, 632700, '玉树市', '玉树', '97.00862', '32.99336', 3, 0, 1), +(632722, 632700, '杂多县', '杂多', '95.29343', '32.891888', 3, 0, 1), +(632723, 632700, '称多县', '称多', '97.11089', '33.367886', 3, 0, 1), +(632724, 632700, '治多县', '治多', '95.616844', '33.85232', 3, 0, 1), +(632725, 632700, '囊谦县', '囊谦', '96.4798', '32.203205', 3, 0, 1), +(632726, 632700, '曲麻莱县', '曲麻莱', '95.800674', '34.12654', 3, 0, 1), +(632800, 630000, '海西蒙古族藏族自治州', '海西', '97.37079', '37.374664', 2, 0, 1), +(632801, 632800, '格尔木市', '格尔木', '94.90578', '36.401543', 3, 0, 1), +(632802, 632800, '德令哈市', '德令哈', '97.37014', '37.374554', 3, 0, 1), +(632803, 632800, '茫崖市', '茫崖', '90.85616', '38.24763', 3, 0, 1), +(632821, 632800, '乌兰县', '乌兰', '98.47985', '36.93039', 3, 0, 1), +(632822, 632800, '都兰县', '都兰', '98.089165', '36.298553', 3, 0, 1), +(632823, 632800, '天峻县', '天峻', '99.02078', '37.29906', 3, 0, 1), +(640000, 0, '宁夏回族自治区', '宁夏', '106.278175', '38.46637', 1, 0, 1), +(640100, 640000, '银川市', '银川', '106.278175', '38.46637', 2, 0, 1), +(640104, 640100, '兴庆区', '兴庆', '106.2784', '38.46747', 3, 0, 1), +(640105, 640100, '西夏区', '西夏', '106.13212', '38.492424', 3, 0, 1), +(640106, 640100, '金凤区', '金凤', '106.228485', '38.477352', 3, 0, 1), +(640121, 640100, '永宁县', '永宁', '106.253784', '38.28043', 3, 0, 1), +(640122, 640100, '贺兰县', '贺兰', '106.3459', '38.55456', 3, 0, 1), +(640181, 640100, '灵武市', '灵武', '106.3347', '38.09406', 3, 0, 1), +(640200, 640000, '石嘴山市', '石嘴山', '106.376175', '39.01333', 2, 0, 1), +(640202, 640200, '大武口区', '大武口', '106.37665', '39.014156', 3, 0, 1), +(640205, 640200, '惠农区', '惠农', '106.77551', '39.230095', 3, 0, 1), +(640221, 640200, '平罗县', '平罗', '106.54489', '38.90674', 3, 0, 1), +(640300, 640000, '吴忠市', '吴忠', '106.19941', '37.986164', 2, 0, 1), +(640302, 640300, '利通区', '利通', '106.19942', '37.985966', 3, 0, 1), +(640303, 640300, '红寺堡区', '红寺堡', '106.067314', '37.421616', 3, 0, 1), +(640323, 640300, '盐池县', '盐池', '107.40541', '37.78422', 3, 0, 1), +(640324, 640300, '同心县', '同心', '105.914764', '36.9829', 3, 0, 1), +(640381, 640300, '青铜峡市', '青铜峡', '106.07539', '38.021507', 3, 0, 1), +(640400, 640000, '固原市', '固原', '106.28524', '36.004562', 2, 0, 1), +(640402, 640400, '原州区', '原州', '106.28477', '36.005337', 3, 0, 1), +(640422, 640400, '西吉县', '西吉', '105.731804', '35.965385', 3, 0, 1), +(640423, 640400, '隆德县', '隆德', '106.12344', '35.618233', 3, 0, 1), +(640424, 640400, '泾源县', '泾源', '106.33868', '35.49344', 3, 0, 1), +(640425, 640400, '彭阳县', '彭阳', '106.64151', '35.849976', 3, 0, 1), +(640500, 640000, '中卫市', '中卫', '105.18957', '37.51495', 2, 0, 1), +(640502, 640500, '沙坡头区', '沙坡头', '105.19054', '37.514565', 3, 0, 1), +(640521, 640500, '中宁县', '中宁', '105.67578', '37.489735', 3, 0, 1), +(640522, 640500, '海原县', '海原', '105.64732', '36.562008', 3, 0, 1), +(650000, 0, '新疆维吾尔自治区', '新疆', '87.61773', '43.792816', 1, 0, 1), +(650100, 650000, '乌鲁木齐市', '乌鲁木齐', '87.61773', '43.792816', 2, 0, 1), +(650102, 650100, '天山区', '天山', '87.62012', '43.79643', 3, 0, 1), +(650103, 650100, '沙依巴克区', '沙依巴克', '87.59664', '43.78887', 3, 0, 1), +(650104, 650100, '新市区', '新市', '87.56065', '43.87088', 3, 0, 1), +(650105, 650100, '水磨沟区', '水磨沟', '87.61309', '43.816746', 3, 0, 1), +(650106, 650100, '头屯河区', '头屯河', '87.42582', '43.876053', 3, 0, 1), +(650107, 650100, '达坂城区', '达坂城', '88.30994', '43.36181', 3, 0, 1), +(650109, 650100, '米东区', '米东', '87.6918', '43.960983', 3, 0, 1), +(650121, 650100, '乌鲁木齐县', '乌鲁木齐', '1.0', '0.0', 3, 0, 1), +(650200, 650000, '克拉玛依市', '克拉玛依', '84.87395', '45.595886', 2, 0, 1), +(650202, 650200, '独山子区', '独山子', '84.88227', '44.327206', 3, 0, 1), +(650203, 650200, '克拉玛依区', '克拉玛依', '84.86892', '45.600475', 3, 0, 1), +(650204, 650200, '白碱滩区', '白碱滩', '85.12988', '45.689022', 3, 0, 1), +(650205, 650200, '乌尔禾区', '乌尔禾', '85.69777', '46.08776', 3, 0, 1), +(650400, 650000, '吐鲁番市', '吐鲁番', '', '', 2, 0, 1), +(650402, 650400, '高昌区', '高昌', '89.18596', '42.94244', 3, 0, 1), +(650421, 650400, '鄯善县', '鄯善', '90.21341', '42.86887', 3, 0, 1), +(650422, 650400, '托克逊县', '托克逊', '88.65384', '42.79181', 3, 0, 1), +(650500, 650000, '哈密市', '哈密', '', '', 2, 0, 1), +(650502, 650500, '伊州区', '伊州', '93.51465', '42.82699', 3, 0, 1), +(650521, 650500, '巴里坤哈萨克自治县', '巴里坤哈萨克自治县', '93.01654', '43.59873', 3, 0, 1), +(650522, 650500, '伊吾县', '伊吾', '94.69741', '43.25451', 3, 0, 1), +(652300, 650000, '昌吉回族自治州', '昌吉', '87.30401', '44.014576', 2, 0, 1), +(652301, 652300, '昌吉市', '昌吉', '87.304115', '44.013184', 3, 0, 1), +(652302, 652300, '阜康市', '阜康', '87.98384', '44.152153', 3, 0, 1), +(652323, 652300, '呼图壁县', '呼图壁', '86.88861', '44.189342', 3, 0, 1), +(652324, 652300, '玛纳斯县', '玛纳斯', '86.21769', '44.305626', 3, 0, 1), +(652325, 652300, '奇台县', '奇台', '89.59144', '44.021996', 3, 0, 1), +(652327, 652300, '吉木萨尔县', '吉木萨尔', '89.18129', '43.99716', 3, 0, 1), +(652328, 652300, '木垒哈萨克自治县', '木垒', '90.28283', '43.832443', 3, 0, 1), +(652700, 650000, '博尔塔拉蒙古自治州', '博尔塔拉', '82.074776', '44.90326', 2, 0, 1), +(652701, 652700, '博乐市', '博乐', '82.072235', '44.903088', 3, 0, 1), +(652702, 652700, '阿拉山口市', '阿拉山口', '82.074776', '44.90326', 3, 0, 1), +(652722, 652700, '精河县', '精河', '82.89294', '44.605644', 3, 0, 1), +(652723, 652700, '温泉县', '温泉', '81.03099', '44.97375', 3, 0, 1), +(652800, 650000, '巴音郭楞蒙古自治州', '巴音郭楞', '86.15097', '41.76855', 2, 0, 1), +(652801, 652800, '库尔勒市', '库尔勒', '86.14595', '41.763123', 3, 0, 1), +(652822, 652800, '轮台县', '轮台', '84.24854', '41.781265', 3, 0, 1), +(652823, 652800, '尉犁县', '尉犁', '86.26341', '41.33743', 3, 0, 1), +(652824, 652800, '若羌县', '若羌', '88.16881', '39.023808', 3, 0, 1), +(652825, 652800, '且末县', '且末', '85.53263', '38.13856', 3, 0, 1), +(652826, 652800, '焉耆回族自治县', '焉耆', '86.5698', '42.06435', 3, 0, 1), +(652827, 652800, '和静县', '和静', '86.39107', '42.31716', 3, 0, 1), +(652828, 652800, '和硕县', '和硕', '86.864944', '42.268864', 3, 0, 1), +(652829, 652800, '博湖县', '博湖', '86.63158', '41.980167', 3, 0, 1), +(652900, 650000, '阿克苏地区', '阿克苏', '80.26507', '41.17071', 2, 0, 1), +(652901, 652900, '阿克苏市', '阿克苏', '80.2629', '41.171272', 3, 0, 1), +(652902, 652900, '库车市', '库车', '82.96212', '41.71741', 3, 0, 1), +(652922, 652900, '温宿县', '温宿', '80.24327', '41.272995', 3, 0, 1), +(652924, 652900, '沙雅县', '沙雅', '82.78077', '41.22627', 3, 0, 1), +(652925, 652900, '新和县', '新和', '82.610825', '41.551174', 3, 0, 1), +(652926, 652900, '拜城县', '拜城', '81.86988', '41.7961', 3, 0, 1), +(652927, 652900, '乌什县', '乌什', '79.230804', '41.21587', 3, 0, 1), +(652928, 652900, '阿瓦提县', '阿瓦提', '80.378426', '40.63842', 3, 0, 1), +(652929, 652900, '柯坪县', '柯坪', '79.04785', '40.50624', 3, 0, 1), +(653000, 650000, '克孜勒苏柯尔克孜自治州', '克孜勒苏柯尔克孜', '76.17283', '39.713432', 2, 0, 1), +(653001, 653000, '阿图什市', '阿图什', '76.17394', '39.7129', 3, 0, 1), +(653022, 653000, '阿克陶县', '阿克陶', '75.94516', '39.14708', 3, 0, 1), +(653023, 653000, '阿合奇县', '阿合奇', '78.450165', '40.93757', 3, 0, 1), +(653024, 653000, '乌恰县', '乌恰', '75.25969', '39.716633', 3, 0, 1), +(653100, 650000, '喀什地区', '喀什', '75.989136', '39.467663', 2, 0, 1), +(653101, 653100, '喀什市', '喀什', '75.98838', '39.46786', 3, 0, 1), +(653121, 653100, '疏附县', '疏附', '75.863075', '39.378307', 3, 0, 1), +(653122, 653100, '疏勒县', '疏勒', '76.05365', '39.39946', 3, 0, 1), +(653123, 653100, '英吉沙县', '英吉沙', '76.17429', '38.92984', 3, 0, 1), +(653124, 653100, '泽普县', '泽普', '77.27359', '38.191216', 3, 0, 1), +(653125, 653100, '莎车县', '莎车', '77.248886', '38.414497', 3, 0, 1), +(653126, 653100, '叶城县', '叶城', '77.42036', '37.884678', 3, 0, 1), +(653127, 653100, '麦盖提县', '麦盖提', '77.651535', '38.903385', 3, 0, 1), +(653128, 653100, '岳普湖县', '岳普湖', '76.7724', '39.23525', 3, 0, 1), +(653129, 653100, '伽师县', '伽师', '76.74198', '39.494324', 3, 0, 1), +(653130, 653100, '巴楚县', '巴楚', '78.55041', '39.783478', 3, 0, 1), +(653131, 653100, '塔什库尔干塔吉克自治县', '塔什库尔干', '75.228065', '37.775436', 3, 0, 1), +(653200, 650000, '和田地区', '和田', '79.92533', '37.110687', 2, 0, 1), +(653201, 653200, '和田市', '和田市', '79.92754', '37.108944', 3, 0, 1), +(653221, 653200, '和田县', '和田县', '79.81907', '37.12003', 3, 0, 1), +(653222, 653200, '墨玉县', '墨玉', '79.736626', '37.27151', 3, 0, 1), +(653223, 653200, '皮山县', '皮山', '78.2823', '37.616333', 3, 0, 1), +(653224, 653200, '洛浦县', '洛浦', '80.18404', '37.074375', 3, 0, 1), +(653225, 653200, '策勒县', '策勒', '80.80357', '37.00167', 3, 0, 1), +(653226, 653200, '于田县', '于田', '81.66785', '36.85463', 3, 0, 1), +(653227, 653200, '民丰县', '民丰', '82.69235', '37.06491', 3, 0, 1), +(654000, 650000, '伊犁哈萨克自治州', '伊犁', '81.31795', '43.92186', 2, 0, 1), +(654002, 654000, '伊宁市', '伊宁市', '81.316345', '43.92221', 3, 0, 1), +(654003, 654000, '奎屯市', '奎屯', '84.9016', '44.423447', 3, 0, 1), +(654004, 654000, '霍尔果斯市', '霍尔果斯', '80.41317', '44.19865', 3, 0, 1), +(654021, 654000, '伊宁县', '伊宁县', '81.52467', '43.977875', 3, 0, 1), +(654022, 654000, '察布查尔锡伯自治县', '察布查尔', '81.15087', '43.838882', 3, 0, 1), +(654023, 654000, '霍城县', '霍城', '80.872505', '44.04991', 3, 0, 1), +(654024, 654000, '巩留县', '巩留', '82.22704', '43.481617', 3, 0, 1), +(654025, 654000, '新源县', '新源', '83.25849', '43.43425', 3, 0, 1), +(654026, 654000, '昭苏县', '昭苏', '81.12603', '43.157764', 3, 0, 1), +(654027, 654000, '特克斯县', '特克斯', '81.84006', '43.214863', 3, 0, 1), +(654028, 654000, '尼勒克县', '尼勒克', '82.50412', '43.789738', 3, 0, 1), +(654200, 650000, '塔城地区', '塔城', '82.98573', '46.7463', 2, 0, 1), +(654201, 654200, '塔城市', '塔城', '82.983986', '46.74628', 3, 0, 1), +(654202, 654200, '乌苏市', '乌苏', '84.67763', '44.430115', 3, 0, 1), +(654221, 654200, '额敏县', '额敏', '83.622116', '46.522556', 3, 0, 1), +(654223, 654200, '沙湾县', '沙湾', '85.622505', '44.329544', 3, 0, 1), +(654224, 654200, '托里县', '托里', '83.60469', '45.935863', 3, 0, 1), +(654225, 654200, '裕民县', '裕民', '82.982155', '46.20278', 3, 0, 1), +(654226, 654200, '和布克赛尔蒙古自治县', '和布克赛尔', '85.73355', '46.793', 3, 0, 1), +(654300, 650000, '阿勒泰地区', '阿勒泰', '88.13963', '47.848392', 2, 0, 1), +(654301, 654300, '阿勒泰市', '阿勒泰', '88.13874', '47.84891', 3, 0, 1), +(654321, 654300, '布尔津县', '布尔津', '86.86186', '47.70453', 3, 0, 1), +(654322, 654300, '富蕴县', '富蕴', '89.524994', '46.993107', 3, 0, 1), +(654323, 654300, '福海县', '福海', '87.49457', '47.11313', 3, 0, 1), +(654324, 654300, '哈巴河县', '哈巴河', '86.41896', '48.059284', 3, 0, 1), +(654325, 654300, '青河县', '青河', '90.38156', '46.672447', 3, 0, 1), +(654326, 654300, '吉木乃县', '吉木乃', '85.87606', '47.43463', 3, 0, 1), +(659001, 659000, '石河子市', '石河子', '86.04108', '44.305885', 3, 0, 1), +(659002, 659000, '阿拉尔市', '阿拉尔', '81.28588', '40.541916', 3, 0, 1), +(659003, 659000, '图木舒克市', '图木舒克', '79.07798', '39.867317', 3, 0, 1), +(659004, 659000, '五家渠市', '五家渠', '87.526886', '44.1674', 3, 0, 1), +(659005, 659000, '北屯市', '北屯', '87.80014', '47.36327', 3, 0, 1), +(659006, 659000, '铁门关市', '铁门关', '85.67583', '41.86868', 3, 0, 1), +(659007, 659000, '双河市', '双河', '82.35501', '44.84418', 3, 0, 1), +(659008, 659000, '可克达拉市', '可克达拉', '81.04476', '43.94799', 3, 0, 1), +(659009, 659000, '昆玉市', '昆玉', '79.29133', '37.20948', 3, 0, 1), +(659010, 659000, '胡杨河市', '胡杨河', '84.827387', '44.69295', 3, 0, 1), +(714368, 0, '香港特别行政区', '香港特别行政区', '114.173355', '22.320048', 1, 0, 1), +(714390, 0, '澳门特别行政区', '澳门特别行政区', '113.549090', '22.198951', 1, 0, 1), +(714401, 0, '台湾', '台湾', '121.509062', '25.044332', 1, 0, 1), +(714402, 714401, '彰化县', '彰化县', '120.416000', '24.000000', 2, 0, 1), +(714403, 714402, '芳苑乡', '芳苑乡', '120.416000', '24.000000', 3, 0, 1), +(714632, 714402, '芬园乡', '芬园乡', '120.416000', '24.000000', 3, 0, 1), +(714701, 714402, '福兴乡', '福兴乡', '120.416000', '24.000000', 3, 0, 1), +(714777, 714402, '和美镇', '和美镇', '120.416000', '24.000000', 3, 0, 1), +(715055, 714402, '花坛乡', '花坛乡', '120.416000', '24.000000', 3, 0, 1), +(715172, 714402, '鹿港镇', '鹿港镇', '120.416000', '24.000000', 3, 0, 1), +(715490, 714402, '埤头乡', '埤头乡', '120.464542', '23.890392', 3, 0, 1), +(715602, 714402, '埔心乡', '埔心乡', '120.416000', '24.000000', 3, 0, 1), +(715745, 714402, '埔盐乡', '埔盐乡', '120.416000', '24.000000', 3, 0, 1), +(715795, 714402, '伸港乡', '伸港乡', '120.416000', '24.000000', 3, 0, 1), +(715960, 714402, '社头乡', '社头乡', '120.416000', '24.000000', 3, 0, 1), +(716105, 714402, '田尾乡', '田尾乡', '120.416000', '24.000000', 3, 0, 1), +(716202, 714402, '田中镇', '田中镇', '120.416000', '24.000000', 3, 0, 1), +(716341, 714402, '线西乡', '线西乡', '120.416000', '24.000000', 3, 0, 1), +(716421, 714402, '溪湖镇', '溪湖镇', '120.416000', '24.000000', 3, 0, 1), +(716750, 714402, '秀水乡', '秀水乡', '120.416000', '24.000000', 3, 0, 1), +(716874, 714402, '溪州乡', '溪州乡', '120.492906', '23.853578', 3, 0, 1), +(717107, 714402, '永靖乡', '永靖乡', '120.416000', '24.000000', 3, 0, 1), +(717238, 714402, '员林市', '员林市', '120.416000', '24.000000', 3, 0, 1), +(717447, 714402, '竹塘乡', '竹塘乡', '120.416000', '24.000000', 3, 0, 1), +(717531, 714401, '新北市', '新北市', '121.465746', '25.012366', 2, 0, 1), +(717532, 717531, '八里区', '八里区', '121.465746', '25.012366', 3, 0, 1), +(717645, 717531, '板桥区', '板桥区', '121.465746', '25.012366', 3, 0, 1), +(717902, 717531, '贡寮区', '贡寮区', '121.465746', '25.012366', 3, 0, 1), +(717955, 717531, '金山区', '金山区', '121.465746', '25.012366', 3, 0, 1), +(718036, 717531, '林口区', '林口区', '121.465746', '25.012366', 3, 0, 1), +(718195, 717531, '芦洲区', '芦洲区', '121.465746', '25.012366', 3, 0, 1), +(718266, 717531, '坪林区', '坪林区', '121.465746', '25.012366', 3, 0, 1), +(718327, 717531, '平溪区', '平溪区', '121.465746', '25.012366', 3, 0, 1), +(718375, 717531, '瑞芳区', '瑞芳区', '121.465746', '25.012366', 3, 0, 1), +(718490, 717531, '三重区', '三重区', '121.465746', '25.012366', 3, 0, 1), +(718786, 717531, '三峡区', '三峡区', '121.465746', '25.012366', 3, 0, 1), +(718879, 717531, '三芝区', '三芝区', '121.465746', '25.012366', 3, 0, 1), +(718980, 717531, '深坑区', '深坑区', '121.465746', '25.012366', 3, 0, 1), +(719023, 717531, '石碇区', '石碇区', '121.465746', '25.012366', 3, 0, 1), +(719115, 717531, '石门区', '石门区', '121.465746', '25.012366', 3, 0, 1), +(719155, 717531, '双溪区', '双溪区', '121.465746', '25.012366', 3, 0, 1), +(719243, 717531, '树林区', '树林区', '121.465746', '25.012366', 3, 0, 1), +(719382, 717531, '泰山区', '泰山区', '121.465746', '25.012366', 3, 0, 1), +(719498, 717531, '淡水区', '淡水区', '121.465746', '25.012366', 3, 0, 1), +(719731, 717531, '土城区', '土城区', '121.465746', '25.012366', 3, 0, 1), +(719868, 714401, '澎湖县', '澎湖县', '119.566417', '23.569733', 2, 0, 1), +(719869, 719868, '白沙乡', '白沙乡', '119.566417', '23.569733', 3, 0, 1), +(719890, 719868, '湖西乡', '湖西乡', '119.566417', '23.569733', 3, 0, 1), +(719916, 719868, '马公市', '马公市', '119.566417', '23.569733', 3, 0, 1), +(720065, 719868, '七美乡', '七美乡', '119.566417', '23.569733', 3, 0, 1), +(720090, 719868, '望安乡', '望安乡', '119.566417', '23.569733', 3, 0, 1), +(720102, 719868, '西屿乡', '西屿乡', '119.566417', '23.569733', 3, 0, 1), +(720118, 714401, '屏东县', '屏东县', '120.487928', '22.682802', 2, 0, 1), +(720119, 720118, '三地门乡', '三地门乡', '120.487928', '22.682802', 3, 0, 1), +(720142, 720118, '狮子乡', '狮子乡', '120.487928', '22.682802', 3, 0, 1), +(720163, 720118, '泰武乡', '泰武乡', '120.626012', '22.591307', 3, 0, 1), +(720186, 720118, '万丹乡', '万丹乡', '120.486423', '22.588123', 3, 0, 1), +(720415, 720118, '万峦乡', '万峦乡', '120.566478', '22.571966', 3, 0, 1), +(720480, 720118, '雾臺乡', '雾臺乡', '120.727653', '22.743675', 3, 0, 1), +(720502, 720118, '新埤乡', '新埤乡', '120.545190', '22.465998', 3, 0, 1), +(720553, 720118, '新园乡', '新园乡', '120.459758', '22.544147', 3, 0, 1), +(720649, 720118, '盐埔乡', '盐埔乡', '120.487928', '22.682802', 3, 0, 1), +(720748, 720118, '竹田乡', '竹田乡', '120.487928', '22.682802', 3, 0, 1), +(720835, 720118, '长治乡', '长治乡', '120.487928', '22.682802', 3, 0, 1), +(720975, 720118, '潮州镇', '潮州镇', '120.487928', '22.682802', 3, 0, 1), +(721293, 720118, '车城乡', '车城乡', '120.707694', '22.072115', 3, 0, 1), +(721335, 720118, '春日乡', '春日乡', '120.622000', '22.368284', 3, 0, 1), +(721344, 720118, '东港镇', '东港镇', '120.487928', '22.682802', 3, 0, 1), +(721490, 720118, '枋寮乡', '枋寮乡', '120.487928', '22.682802', 3, 0, 1), +(721617, 720118, '枋山乡', '枋山乡', '120.647762', '22.262550', 3, 0, 1), +(721638, 720118, '高树乡', '高树乡', '120.595945', '22.825131', 3, 0, 1), +(721805, 720118, '恆春镇', '恆春镇', '120.487928', '22.682802', 3, 0, 1), +(721930, 720118, '佳冬乡', '佳冬乡', '120.545370', '22.417786', 3, 0, 1), +(722024, 714401, '臺中市', '臺中市', '0.000000', '0.000000', 2, 0, 1), +(722025, 722024, '梧栖区', '梧栖区', '0.000000', '0.000000', 3, 0, 1), +(722212, 722024, '乌日区', '乌日区', '0.000000', '0.000000', 3, 0, 1), +(722402, 722024, '新社区', '新社区', '0.000000', '0.000000', 3, 0, 1), +(722474, 722024, '西屯区', '西屯区', '0.000000', '0.000000', 3, 0, 1), +(722699, 722024, '北屯区', '北屯区', '0.000000', '0.000000', 3, 0, 1), +(722879, 722024, '中区', '中区', '0.000000', '0.000000', 3, 0, 1), +(722923, 722024, '大肚区', '大肚区', '0.000000', '0.000000', 3, 0, 1), +(723021, 722024, '大甲区', '大甲区', '0.000000', '0.000000', 3, 0, 1), +(723211, 722024, '大里区', '大里区', '0.000000', '0.000000', 3, 0, 1), +(723592, 722024, '大雅区', '大雅区', '0.000000', '0.000000', 3, 0, 1), +(723756, 722024, '大安区', '大安区', '0.000000', '0.000000', 3, 0, 1), +(723802, 722024, '东势区', '东势区', '0.000000', '0.000000', 3, 0, 1), +(723966, 722024, '东区', '东区', '0.000000', '0.000000', 3, 0, 1), +(724148, 722024, '丰原区', '丰原区', '0.000000', '0.000000', 3, 0, 1), +(724424, 722024, '和平区', '和平区', '0.000000', '0.000000', 3, 0, 1), +(724504, 722024, '后里区', '后里区', '0.000000', '0.000000', 3, 0, 1), +(724656, 722024, '龙井区', '龙井区', '0.000000', '0.000000', 3, 0, 1), +(724797, 722024, '南屯区', '南屯区', '0.000000', '0.000000', 3, 0, 1), +(724872, 722024, '北区', '北区', '0.000000', '0.000000', 3, 0, 1), +(725199, 722024, '清水区', '清水区', '0.000000', '0.000000', 3, 0, 1), +(725488, 714401, '臺南市', '臺南市', '0.000000', '0.000000', 2, 0, 1), +(725489, 725488, '佳里区', '佳里区', '0.000000', '0.000000', 3, 0, 1), +(725588, 725488, '将军区', '将军区', '0.000000', '0.000000', 3, 0, 1), +(725620, 725488, '六甲区', '六甲区', '0.000000', '0.000000', 3, 0, 1), +(725679, 725488, '柳营区', '柳营区', '0.000000', '0.000000', 3, 0, 1), +(725795, 725488, '龙崎区', '龙崎区', '0.000000', '0.000000', 3, 0, 1), +(725841, 725488, '麻豆区', '麻豆区', '0.000000', '0.000000', 3, 0, 1), +(725927, 725488, '南化区', '南化区', '0.000000', '0.000000', 3, 0, 1), +(725938, 725488, '楠西区', '楠西区', '0.000000', '0.000000', 3, 0, 1), +(725973, 725488, '北区', '北区', '0.000000', '0.000000', 3, 0, 1), +(726300, 725488, '七股区', '七股区', '0.000000', '0.000000', 3, 0, 1), +(726338, 725488, '仁德区', '仁德区', '0.000000', '0.000000', 3, 0, 1), +(726539, 725488, '善化区', '善化区', '0.000000', '0.000000', 3, 0, 1), +(726675, 725488, '山上区', '山上区', '0.000000', '0.000000', 3, 0, 1), +(726691, 725488, '南区', '南区', '120.679305', '24.133453', 3, 0, 1), +(727041, 725488, '中西区', '中西区', '0.000000', '0.000000', 3, 0, 1), +(727251, 725488, '下营区', '下营区', '0.000000', '0.000000', 3, 0, 1), +(727339, 725488, '西港区', '西港区', '0.000000', '0.000000', 3, 0, 1), +(727375, 725488, '新化区', '新化区', '0.000000', '0.000000', 3, 0, 1), +(727425, 725488, '新市区', '新市区', '0.000000', '0.000000', 3, 0, 1), +(727529, 725488, '新营区', '新营区', '0.000000', '0.000000', 3, 0, 1), +(727730, 714401, '臺北市', '臺北市', '121.517057', '25.048074', 2, 0, 1), +(727731, 727730, '北投区', '北投区', '121.517057', '25.048074', 3, 0, 1), +(727897, 727730, '大同区', '大同区', '121.517057', '25.048074', 3, 0, 1), +(728070, 727730, '大安区', '大安区', '121.517057', '25.048074', 3, 0, 1), +(728116, 727730, '南港区', '南港区', '121.517057', '25.048074', 3, 0, 1), +(728220, 727730, '内湖区', '内湖区', '121.517057', '25.048074', 3, 0, 1), +(728340, 727730, '士林区', '士林区', '121.517057', '25.048074', 3, 0, 1), +(728550, 727730, '松山区', '松山区', '121.517057', '25.048074', 3, 0, 1), +(728713, 727730, '万华区', '万华区', '121.517057', '25.048074', 3, 0, 1), +(728920, 727730, '文山区', '文山区', '121.517057', '25.048074', 3, 0, 1), +(729073, 727730, '信义区', '信义区', '121.517057', '25.048074', 3, 0, 1), +(729277, 727730, '中山区', '中山区', '121.517057', '25.048074', 3, 0, 1), +(729583, 727730, '中正区', '中正区', '121.517057', '25.048074', 3, 0, 1), +(729928, 714401, '臺东县', '臺东县', '0.000000', '0.000000', 2, 0, 1), +(729929, 729928, '卑南乡', '卑南乡', '121.117213', '22.781744', 3, 0, 1), +(729994, 729928, '长滨乡', '长滨乡', '0.000000', '0.000000', 3, 0, 1), +(730033, 729928, '成功镇', '成功镇', '0.000000', '0.000000', 3, 0, 1), +(730107, 729928, '池上乡', '池上乡', '121.212999', '23.123275', 3, 0, 1), +(730196, 729928, '达仁乡', '达仁乡', '120.878316', '22.296142', 3, 0, 1), +(730219, 729928, '大武乡', '大武乡', '0.000000', '0.000000', 3, 0, 1), +(730268, 729928, '东河乡', '东河乡', '0.000000', '0.000000', 3, 0, 1), +(730308, 729928, '关山镇', '关山镇', '121.158084', '23.047483', 3, 0, 1), +(730384, 729928, '海端乡', '海端乡', '121.172009', '23.101079', 3, 0, 1), +(730409, 729928, '金峰乡', '金峰乡', '0.000000', '0.000000', 3, 0, 1), +(730416, 729928, '兰屿乡', '兰屿乡', '0.000000', '0.000000', 3, 0, 1), +(730423, 729928, '绿岛乡', '绿岛乡', '0.000000', '0.000000', 3, 0, 1), +(730438, 729928, '鹿野乡', '鹿野乡', '0.000000', '0.000000', 3, 0, 1), +(730510, 729928, '太麻里乡', '太麻里乡', '120.999365', '22.610919', 3, 0, 1), +(730565, 729928, '臺东市', '臺东市', '0.000000', '0.000000', 3, 0, 1), +(730832, 729928, '延平乡', '延平乡', '0.000000', '0.000000', 3, 0, 1), +(730843, 714401, '桃园市', '桃园市', '121.083000', '25.000000', 2, 0, 1), +(730844, 730843, '八德区', '八德区', '121.083000', '25.000000', 3, 0, 1), +(731212, 730843, '大溪区', '大溪区', '121.083000', '25.000000', 3, 0, 1), +(731471, 730843, '大园区', '大园区', '121.083000', '25.000000', 3, 0, 1), +(731767, 730843, '復兴区', '復兴区', '121.083000', '25.000000', 3, 0, 1), +(731835, 730843, '观音区', '观音区', '121.083000', '25.000000', 3, 0, 1), +(732079, 730843, '龟山区', '龟山区', '121.083000', '25.000000', 3, 0, 1), +(732469, 730843, '龙潭区', '龙潭区', '121.083000', '25.000000', 3, 0, 1), +(732800, 730843, '芦竹区', '芦竹区', '121.083000', '25.000000', 3, 0, 1), +(733144, 730843, '平镇区', '平镇区', '121.083000', '25.000000', 3, 0, 1), +(733179, 730843, '桃园区', '桃园区', '121.083000', '25.000000', 3, 0, 1), +(733390, 730843, '新屋区', '新屋区', '121.083000', '25.000000', 3, 0, 1), +(733537, 730843, '杨梅区', '杨梅区', '121.083000', '25.000000', 3, 0, 1), +(733876, 730843, '中坜区', '中坜区', '121.083000', '25.000000', 3, 0, 1), +(734179, 714401, '宜兰县', '宜兰县', '121.500000', '24.600000', 2, 0, 1), +(734180, 734179, '大同乡', '大同乡', '121.500000', '24.600000', 3, 0, 1), +(734246, 734179, '钓鱼臺', '钓鱼臺', '121.500000', '24.600000', 3, 0, 1), +(734248, 734179, '冬山乡', '冬山乡', '121.500000', '24.600000', 3, 0, 1), +(734579, 734179, '礁溪乡', '礁溪乡', '121.500000', '24.600000', 3, 0, 1), +(734681, 734179, '罗东镇', '罗东镇', '121.500000', '24.600000', 3, 0, 1), +(734842, 734179, '南澳乡', '南澳乡', '121.500000', '24.600000', 3, 0, 1), +(734865, 734179, '三星乡', '三星乡', '121.500000', '24.600000', 3, 0, 1), +(735104, 734179, '苏澳镇', '苏澳镇', '121.500000', '24.600000', 3, 0, 1), +(735319, 734179, '头城镇', '头城镇', '121.500000', '24.600000', 3, 0, 1), +(735419, 734179, '五结乡', '五结乡', '121.796468', '24.685615', 3, 0, 1), +(735620, 734179, '宜兰市', '宜兰市', '121.500000', '24.600000', 3, 0, 1), +(735851, 734179, '员山乡', '员山乡', '121.500000', '24.600000', 3, 0, 1), +(735970, 734179, '壮围乡', '壮围乡', '121.500000', '24.600000', 3, 0, 1), +(736051, 714401, '南投县', '南投县', '120.830000', '23.830000', 2, 0, 1), +(736052, 736051, '草屯镇', '草屯镇', '120.830000', '23.830000', 3, 0, 1), +(736305, 736051, '国姓乡', '国姓乡', '120.830000', '23.830000', 3, 0, 1), +(736356, 736051, '集集镇', '集集镇', '120.830000', '23.830000', 3, 0, 1), +(736449, 736051, '鹿谷乡', '鹿谷乡', '120.830000', '23.830000', 3, 0, 1), +(736522, 736051, '名间乡', '名间乡', '120.830000', '23.830000', 3, 0, 1), +(736622, 736051, '南投市', '南投市', '120.830000', '23.830000', 3, 0, 1), +(736887, 736051, '埔里镇', '埔里镇', '120.830000', '23.830000', 3, 0, 1), +(737266, 736051, '仁爱乡', '仁爱乡', '120.830000', '23.830000', 3, 0, 1), +(737337, 736051, '水里乡', '水里乡', '120.830000', '23.830000', 3, 0, 1), +(737496, 736051, '信义乡', '信义乡', '120.830000', '23.830000', 3, 0, 1), +(737533, 736051, '鱼池乡', '鱼池乡', '120.830000', '23.830000', 3, 0, 1), +(737591, 736051, '中寮乡', '中寮乡', '120.830000', '23.830000', 3, 0, 1), +(737625, 736051, '竹山镇', '竹山镇', '120.830000', '23.830000', 3, 0, 1), +(737856, 714401, '南海岛', '南海岛', '0.000000', '0.000000', 2, 0, 1), +(737857, 737856, '东沙群岛', '东沙群岛', '0.000000', '0.000000', 3, 0, 1), +(737859, 737856, '南沙群岛', '南沙群岛', '0.000000', '0.000000', 3, 0, 1), +(737861, 714401, '苗栗县', '苗栗县', '120.818985', '24.561601', 2, 0, 1), +(737862, 737861, '头屋乡', '头屋乡', '120.818985', '24.561601', 3, 0, 1), +(737894, 737861, '西湖乡', '西湖乡', '120.743700', '24.556610', 3, 0, 1), +(737948, 737861, '苑里镇', '苑里镇', '120.818985', '24.561601', 3, 0, 1), +(738050, 737861, '造桥乡', '造桥乡', '120.818985', '24.561601', 3, 0, 1), +(738158, 737861, '竹南镇', '竹南镇', '120.872636', '24.685510', 3, 0, 1), +(738454, 737861, '卓兰镇', '卓兰镇', '120.823440', '24.309510', 3, 0, 1), +(738528, 737861, '大湖乡', '大湖乡', '120.863640', '24.422548', 3, 0, 1), +(738619, 737861, '公馆乡', '公馆乡', '120.818985', '24.561601', 3, 0, 1), +(738695, 737861, '后龙镇', '后龙镇', '120.786474', '24.612613', 3, 0, 1), +(738882, 737861, '苗栗市', '苗栗市', '120.819288', '24.561582', 3, 0, 1), +(739250, 737861, '南庄乡', '南庄乡', '120.818985', '24.561601', 3, 0, 1), +(739302, 737861, '三湾乡', '三湾乡', '120.818985', '24.561601', 3, 0, 1), +(739369, 737861, '三义乡', '三义乡', '120.765515', '24.413037', 3, 0, 1), +(739419, 737861, '狮潭乡', '狮潭乡', '120.918024', '24.540004', 3, 0, 1), +(739465, 737861, '泰安乡', '泰安乡', '120.818985', '24.561601', 3, 0, 1), +(739487, 737861, '铜锣乡', '铜锣乡', '120.786475', '24.489502', 3, 0, 1), +(739564, 737861, '通霄镇', '通霄镇', '120.676696', '24.489084', 3, 0, 1), +(739642, 737861, '头份市', '头份市', '120.818985', '24.561601', 3, 0, 1), +(739957, 714401, '嘉义市', '嘉义市', '120.452538', '23.481568', 2, 0, 1), +(739958, 739957, '东区', '东区', '120.452538', '23.481568', 3, 0, 1), +(740140, 739957, '西区', '西区', '120.452538', '23.481568', 3, 0, 1), +(740510, 714401, '嘉义县', '嘉义县', '120.452538', '23.481568', 2, 0, 1), +(740511, 740510, '阿里山乡', '阿里山乡', '120.452538', '23.481568', 3, 0, 1), +(740536, 740510, '布袋镇', '布袋镇', '120.452538', '23.481568', 3, 0, 1), +(740625, 740510, '大林镇', '大林镇', '120.452538', '23.481568', 3, 0, 1), +(740746, 740510, '大埔乡', '大埔乡', '120.452538', '23.481568', 3, 0, 1), +(740792, 740510, '东石乡', '东石乡', '120.452538', '23.481568', 3, 0, 1), +(740845, 740510, '番路乡', '番路乡', '120.452538', '23.481568', 3, 0, 1), +(740943, 740510, '六脚乡', '六脚乡', '120.452538', '23.481568', 3, 0, 1), +(740975, 740510, '鹿草乡', '鹿草乡', '120.452538', '23.481568', 3, 0, 1), +(741010, 740510, '梅山乡', '梅山乡', '120.452538', '23.481568', 3, 0, 1), +(741137, 740510, '民雄乡', '民雄乡', '120.452538', '23.481568', 3, 0, 1), +(741312, 740510, '朴子市', '朴子市', '120.452538', '23.481568', 3, 0, 1), +(741451, 740510, '水上乡', '水上乡', '120.452538', '23.481568', 3, 0, 1), +(741550, 740510, '太保市', '太保市', '120.332737', '23.459115', 3, 0, 1), +(741646, 740510, '溪口乡', '溪口乡', '120.452538', '23.481568', 3, 0, 1), +(741688, 740510, '新港乡', '新港乡', '120.452538', '23.481568', 3, 0, 1), +(741750, 740510, '义竹乡', '义竹乡', '120.452538', '23.481568', 3, 0, 1), +(741785, 740510, '中埔乡', '中埔乡', '120.452538', '23.481568', 3, 0, 1), +(741936, 740510, '竹崎乡', '竹崎乡', '120.452538', '23.481568', 3, 0, 1), +(742126, 714401, '新竹市', '新竹市', '120.968798', '24.806738', 2, 0, 1), +(742127, 742126, '东区', '东区', '120.973544', '24.805226', 3, 0, 1), +(742309, 742126, '北区', '北区', '120.968798', '24.806738', 3, 0, 1), +(742636, 714401, '新竹县', '新竹县', '120.968798', '24.806738', 2, 0, 1), +(742637, 742636, '峨眉乡', '峨眉乡', '120.968798', '24.806738', 3, 0, 1), +(742674, 742636, '关西镇', '关西镇', '120.968798', '24.806738', 3, 0, 1), +(742797, 742636, '横山乡', '横山乡', '120.968798', '24.806738', 3, 0, 1), +(742852, 742636, '湖口乡', '湖口乡', '120.968798', '24.806738', 3, 0, 1), +(743201, 742636, '尖石乡', '尖石乡', '120.968798', '24.806738', 3, 0, 1), +(743246, 742636, '芎林乡', '芎林乡', '120.968798', '24.806738', 3, 0, 1), +(743298, 742636, '五峰乡', '五峰乡', '120.968798', '24.806738', 3, 0, 1), +(743319, 742636, '新丰乡', '新丰乡', '120.968798', '24.806738', 3, 0, 1), +(743414, 742636, '新埔镇', '新埔镇', '120.968798', '24.806738', 3, 0, 1), +(743527, 742636, '竹北市', '竹北市', '120.968798', '24.806738', 3, 0, 1), +(743565, 742636, '竹东镇', '竹东镇', '120.968798', '24.806738', 3, 0, 1), +(743725, 742636, '宝山乡', '宝山乡', '120.968798', '24.806738', 3, 0, 1), +(743888, 742636, '北埔乡', '北埔乡', '120.968798', '24.806738', 3, 0, 1), +(743938, 714401, '花莲县', '花莲县', '121.300000', '23.830000', 2, 0, 1), +(743939, 743938, '卓溪乡', '卓溪乡', '121.301890', '23.344908', 3, 0, 1), +(743956, 743938, '丰滨乡', '丰滨乡', '121.300000', '23.830000', 3, 0, 1), +(743993, 743938, '凤林镇', '凤林镇', '121.300000', '23.830000', 3, 0, 1), +(744128, 743938, '富里乡', '富里乡', '121.244694', '23.175468', 3, 0, 1), +(744185, 743938, '光復乡', '光復乡', '121.300000', '23.830000', 3, 0, 1), +(744246, 743938, '花莲市', '花莲市', '121.606927', '23.981993', 3, 0, 1), +(744625, 743938, '吉安乡', '吉安乡', '121.300000', '23.830000', 3, 0, 1), +(745050, 743938, '瑞穗乡', '瑞穗乡', '121.373373', '23.496080', 3, 0, 1), +(745196, 743938, '寿丰乡', '寿丰乡', '121.506030', '23.869774', 3, 0, 1), +(745354, 743938, '万荣乡', '万荣乡', '121.300000', '23.830000', 3, 0, 1), +(745363, 743938, '新城乡', '新城乡', '121.604120', '24.039243', 3, 0, 1), +(745486, 743938, '秀林乡', '秀林乡', '121.300000', '23.830000', 3, 0, 1), +(745532, 743938, '玉里镇', '玉里镇', '121.312109', '23.334236', 3, 0, 1), +(745674, 714401, '高雄市', '高雄市', '120.311922', '22.620856', 2, 0, 1), +(745675, 745674, '阿莲区', '阿莲区', '120.311922', '22.620856', 3, 0, 1), +(745715, 745674, '大寮区', '大寮区', '120.311922', '22.620856', 3, 0, 1), +(746083, 745674, '大社区', '大社区', '120.311922', '22.620856', 3, 0, 1), +(746199, 745674, '大树区', '大树区', '120.311922', '22.620856', 3, 0, 1), +(746294, 745674, '凤山区', '凤山区', '120.311922', '22.620856', 3, 0, 1), +(746624, 745674, '冈山区', '冈山区', '120.311922', '22.620856', 3, 0, 1), +(746906, 745674, '鼓山区', '鼓山区', '120.311922', '22.620856', 3, 0, 1), +(747053, 745674, '湖内区', '湖内区', '120.311922', '22.620856', 3, 0, 1), +(747108, 745674, '甲仙区', '甲仙区', '120.587980', '23.083957', 3, 0, 1), +(747150, 745674, '苓雅区', '苓雅区', '120.311922', '22.620856', 3, 0, 1), +(747342, 745674, '林园区', '林园区', '120.311922', '22.620856', 3, 0, 1), +(747481, 745674, '六龟区', '六龟区', '120.311922', '22.620856', 3, 0, 1), +(747536, 745674, '路竹区', '路竹区', '120.311922', '22.620856', 3, 0, 1), +(747643, 745674, '茂林区', '茂林区', '120.311922', '22.620856', 3, 0, 1), +(747647, 745674, '美浓区', '美浓区', '120.542419', '22.894882', 3, 0, 1), +(747764, 745674, '弥陀区', '弥陀区', '120.250672', '22.781561', 3, 0, 1), +(747894, 745674, '那玛夏区', '那玛夏区', '120.311922', '22.620856', 3, 0, 1), +(747902, 745674, '楠梓区', '楠梓区', '120.311922', '22.620856', 3, 0, 1), +(748258, 745674, '内门区', '内门区', '120.311922', '22.620856', 3, 0, 1), +(748344, 745674, '鸟松区', '鸟松区', '120.311922', '22.620856', 3, 0, 1), +(748553, 714401, '基隆市', '基隆市', '121.746248', '25.130741', 2, 0, 1), +(748554, 748553, '安乐区', '安乐区', '121.746248', '25.130741', 3, 0, 1), +(748581, 748553, '暖暖区', '暖暖区', '121.746248', '25.130741', 3, 0, 1), +(748599, 748553, '七堵区', '七堵区', '121.746248', '25.130741', 3, 0, 1), +(748670, 748553, '仁爱区', '仁爱区', '121.746248', '25.130741', 3, 0, 1), +(748716, 748553, '信义区', '信义区', '121.746248', '25.130741', 3, 0, 1), +(748920, 748553, '中山区', '中山区', '121.746248', '25.130741', 3, 0, 1), +(749226, 748553, '中正区', '中正区', '121.768000', '25.151647', 3, 0, 1), +(749571, 714401, '金门县', '金门县', '118.317089', '24.432706', 2, 0, 1), +(749572, 749571, '金城镇', '金城镇', '118.317089', '24.432706', 3, 0, 1), +(749647, 749571, '金湖镇', '金湖镇', '118.317089', '24.432706', 3, 0, 1), +(749752, 749571, '金宁乡', '金宁乡', '118.317089', '24.432706', 3, 0, 1), +(749810, 749571, '金沙镇', '金沙镇', '118.317089', '24.432706', 3, 0, 1), +(749894, 749571, '烈屿乡', '烈屿乡', '118.317089', '24.432706', 3, 0, 1), +(749928, 749571, '乌坵乡', '乌坵乡', '118.317089', '24.432706', 3, 0, 1), +(749930, 714401, '连江县', '连江县', '119.539704', '26.197364', 2, 0, 1), +(749931, 749930, '北竿乡', '北竿乡', '119.539704', '26.197364', 3, 0, 1), +(749938, 749930, '东引乡', '东引乡', '119.539704', '26.197364', 3, 0, 1), +(749941, 749930, '莒光乡', '莒光乡', '119.539704', '26.197364', 3, 0, 1), +(749947, 749930, '南竿乡', '南竿乡', '119.539704', '26.197364', 3, 0, 1), +(749957, 714401, '云林县', '云林县', '120.527173', '23.696887', 2, 0, 1), +(749958, 749957, '褒忠乡', '褒忠乡', '120.309069', '23.695652', 3, 0, 1), +(749991, 749957, '北港镇', '北港镇', '120.296759', '23.572428', 3, 0, 1), +(750170, 749957, '莿桐乡', '莿桐乡', '120.497033', '23.757251', 3, 0, 1), +(750218, 749957, '大埤乡', '大埤乡', '120.527173', '23.696887', 3, 0, 1), +(750291, 749957, '东势乡', '东势乡', '120.527173', '23.696887', 3, 0, 1), +(750363, 749957, '斗六市', '斗六市', '120.527173', '23.696887', 3, 0, 1), +(750795, 749957, '斗南镇', '斗南镇', '120.527173', '23.696887', 3, 0, 1), +(751009, 749957, '二崙乡', '二崙乡', '120.527173', '23.696887', 3, 0, 1), +(751071, 749957, '古坑乡', '古坑乡', '120.558553', '23.644734', 3, 0, 1), +(751147, 749957, '虎尾镇', '虎尾镇', '120.429231', '23.707796', 3, 0, 1), +(751400, 749957, '口湖乡', '口湖乡', '120.178640', '23.585506', 3, 0, 1), +(751493, 749957, '林内乡', '林内乡', '120.527173', '23.696887', 3, 0, 1), +(751555, 749957, '崙背乡', '崙背乡', '120.527173', '23.696887', 3, 0, 1), +(751674, 749957, '麦寮乡', '麦寮乡', '120.527173', '23.696887', 3, 0, 1), +(751764, 749957, '水林乡', '水林乡', '120.241228', '23.571067', 3, 0, 1), +(751832, 749957, '四湖乡', '四湖乡', '120.220781', '23.635426', 3, 0, 1), +(751907, 749957, '臺西乡', '臺西乡', '120.196139', '23.702821', 3, 0, 1), +(751956, 749957, '土库镇', '土库镇', '120.527173', '23.696887', 3, 0, 1), +(752034, 749957, '西螺镇', '西螺镇', '120.457123', '23.797412', 3, 0, 1), +(752149, 749957, '元长乡', '元长乡', '120.311052', '23.649577', 3, 0, 1), +(752150, 714368, '香港特别行政区', '香港特别行政区', '', '', 2, 0, 1), +(752151, 752150, '中西区', '中西区', '', '', 3, 0, 1), +(752152, 752150, '东区', '东区', '', '', 3, 0, 1), +(752153, 752150, '九龙城区', '九龙城区', '', '', 3, 0, 1), +(752154, 752150, '观塘区', '观塘区', '114.231268', '22.309430', 3, 0, 1), +(752155, 752150, '南区', '南区', '114.174134', '22.246760', 3, 0, 1), +(752156, 752150, '深水埗区', '深水埗区', '', '', 3, 0, 1), +(752157, 752150, '湾仔区', '湾仔区', '', '', 3, 0, 1), +(752158, 752150, '黄大仙区', '黄大仙区', '', '', 3, 0, 1), +(752159, 752150, '油尖旺区', '油尖旺区', '', '', 3, 0, 1), +(752160, 752150, '离岛区', '离岛区', '', '', 3, 0, 1), +(752161, 752150, '葵青区', '葵青区', '', '', 3, 0, 1), +(752162, 752150, '北区', '北区', '', '', 3, 0, 1), +(752163, 752150, '西贡区', '西贡区', '', '', 3, 0, 1), +(752164, 752150, '沙田区', '沙田区', '', '', 3, 0, 1), +(752165, 752150, '屯门区', '屯门区', '', '', 3, 0, 1), +(752166, 752150, '大埔区', '大埔区', '', '', 3, 0, 1), +(752167, 752150, '荃湾区', '荃湾区', '', '', 3, 0, 1), +(752168, 752150, '元朗区', '元朗区', '', '', 3, 0, 1), +(752169, 714390, '澳门特别行政区', '澳门特别行政区', '', '', 2, 0, 1), +(752170, 752169, '澳门半岛', '澳门半岛', '', '', 3, 0, 1), +(752171, 752169, '凼仔', '凼仔', '', '', 3, 0, 1), +(752172, 752169, '路凼城', '路凼城', '', '', 3, 0, 1), +(752173, 752169, '路环', '路环', '', '', 3, 0, 1), +(752177, 440300, '龙华区', '龙华区', '', '', 3, 0, 1), +(441900003, 441900, '东城街道办事处', '东城街道办事处', '113.754635', '23.002896', 3, 0, 1), +(441900004, 441900, '南城街道办事处', '南城街道办事处', '113.753133', '22.987560', 3, 0, 1), +(441900005, 441900, '万江街道办事处', '万江街道办事处', '113.740409', '23.052146', 3, 0, 1), +(441900006, 441900, '莞城街道办事处', '莞城街道办事处', '113.751050', '23.053413', 3, 0, 1), +(441900101, 441900, '石碣镇', '石碣镇', '113.802109', '23.094111', 3, 0, 1), +(441900102, 441900, '石龙镇', '石龙镇', '113.751765', '23.020536', 3, 0, 1), +(441900103, 441900, '茶山镇', '茶山镇', '113.751765', '23.020536', 3, 0, 1), +(441900104, 441900, '石排镇', '石排镇', '113.751765', '23.020536', 3, 0, 1), +(441900105, 441900, '企石镇', '企石镇', '113.751765', '23.020536', 3, 0, 1), +(441900106, 441900, '横沥镇', '横沥镇', '113.751765', '23.020536', 3, 0, 1), +(441900107, 441900, '桥头镇', '桥头镇', '113.751765', '23.020536', 3, 0, 1), +(441900108, 441900, '谢岗镇', '谢岗镇', '114.141456', '22.972083', 3, 0, 1), +(441900109, 441900, '东坑镇', '东坑镇', '113.948089', '22.989033', 3, 0, 1), +(441900110, 441900, '常平镇', '常平镇', '113.992186', '22.975601', 3, 0, 1), +(441900111, 441900, '寮步镇', '寮步镇', '113.818996', '23.025373', 3, 0, 1), +(441900112, 441900, '樟木头镇', '樟木头镇', '114.083278', '22.914909', 3, 0, 1), +(441900113, 441900, '大朗镇', '大朗镇', '113.915820', '22.915996', 3, 0, 1), +(441900114, 441900, '黄江镇', '黄江镇', '113.996039', '22.877840', 3, 0, 1), +(441900115, 441900, '清溪镇', '清溪镇', '114.164330', '22.844557', 3, 0, 1), +(441900116, 441900, '塘厦镇', '塘厦镇', '113.774481', '22.791051', 3, 0, 1), +(441900117, 441900, '凤岗镇', '凤岗镇', '113.751765', '23.020536', 3, 0, 1), +(441900118, 441900, '大岭山镇', '大岭山镇', '113.842223', '22.899965', 3, 0, 1), +(441900119, 441900, '长安镇', '长安镇', '113.794060', '22.803590', 3, 0, 1), +(441900121, 441900, '虎门镇', '虎门镇', '113.672560', '22.814835', 3, 0, 1), +(441900122, 441900, '厚街镇', '厚街镇', '113.751765', '23.020536', 3, 0, 1), +(441900123, 441900, '沙田镇', '沙田镇', '113.751765', '23.020536', 3, 0, 1), +(441900124, 441900, '道滘镇', '道滘镇', '113.751765', '23.020536', 3, 0, 1), +(441900125, 441900, '洪梅镇', '洪梅镇', '113.608903', '22.994717', 3, 0, 1), +(441900126, 441900, '麻涌镇', '麻涌镇', '113.751765', '23.020536', 3, 0, 1), +(441900127, 441900, '望牛墩镇', '望牛墩镇', '113.656243', '23.055331', 3, 0, 1), +(441900128, 441900, '中堂镇', '中堂镇', '113.751765', '23.020536', 3, 0, 1), +(441900129, 441900, '高埗镇', '高埗镇', '113.722126', '23.078713', 3, 0, 1), +(441900401, 441900, '松山湖管委会', '松山湖管委会', '113.909208', '22.960541', 3, 0, 1), +(441900402, 441900, '虎门港管委会', '虎门港管委会', '113.583070', '22.864175', 3, 0, 1), +(441900403, 441900, '东莞生态园', '东莞生态园', '113.927452', '23.063210', 3, 0, 1), +(442000001, 442000, '石岐区街道办事处', '石岐区街道办事处', '113.384930', '22.532046', 3, 0, 1), +(442000002, 442000, '东区街道办事处', '东区街道办事处', '113.392782', '22.517645', 3, 0, 1), +(442000003, 442000, '火炬开发区街道办事处', '火炬开发区街道办事处', '113.480528', '22.566086', 3, 0, 1), +(442000004, 442000, '西区街道办事处', '西区街道办事处', '113.392782', '22.517645', 3, 0, 1), +(442000005, 442000, '南区街道办事处', '南区街道办事处', '113.358509', '22.472530', 3, 0, 1), +(442000006, 442000, '五桂山街道办事处', '五桂山街道办事处', '113.463397', '22.421549', 3, 0, 1), +(442000100, 442000, '小榄镇', '小榄镇', '113.250897', '22.672099', 3, 0, 1), +(442000101, 442000, '黄圃镇', '黄圃镇', '113.335242', '22.709897', 3, 0, 1), +(442000102, 442000, '民众镇', '民众镇', '113.392782', '22.517645', 3, 0, 1), +(442000103, 442000, '东凤镇', '东凤镇', '113.392782', '22.517645', 3, 0, 1), +(442000104, 442000, '东升镇', '东升镇', '113.294393', '22.616908', 3, 0, 1), +(442000105, 442000, '古镇镇', '古镇镇', '113.190869', '22.613406', 3, 0, 1), +(442000106, 442000, '沙溪镇', '沙溪镇', '113.392782', '22.517645', 3, 0, 1), +(442000107, 442000, '坦洲镇', '坦洲镇', '113.460373', '22.265182', 3, 0, 1), +(442000108, 442000, '港口镇', '港口镇', '113.247148', '22.683616', 3, 0, 1), +(442000109, 442000, '三角镇', '三角镇', '113.422371', '22.684688', 3, 0, 1), +(442000110, 442000, '横栏镇', '横栏镇', '113.265845', '22.523201', 3, 0, 1), +(442000111, 442000, '南头镇', '南头镇', '113.392782', '22.517645', 3, 0, 1), +(442000112, 442000, '阜沙镇', '阜沙镇', '113.392782', '22.517645', 3, 0, 1), +(442000113, 442000, '南朗镇', '南朗镇', '113.392782', '22.517645', 3, 0, 1), +(442000114, 442000, '三乡镇', '三乡镇', '113.441614', '22.357754', 3, 0, 1), +(442000115, 442000, '板芙镇', '板芙镇', '113.392782', '22.517645', 3, 0, 1), +(442000116, 442000, '大涌镇', '大涌镇', '113.392782', '22.517645', 3, 0, 1), +(442000117, 442000, '神湾镇', '神湾镇', '113.392782', '22.517645', 3, 0, 1), +(460400100, 460400, '那大镇', '那大镇', '110.349228', '20.017377', 3, 0, 1), +(460400101, 460400, '和庆镇', '和庆镇', '109.640856', '19.525399', 3, 0, 1), +(460400102, 460400, '南丰镇', '南丰镇', '110.349228', '20.017377', 3, 0, 1), +(460400103, 460400, '大成镇', '大成镇', '110.349228', '20.017377', 3, 0, 1), +(460400104, 460400, '雅星镇', '雅星镇', '110.349228', '20.017377', 3, 0, 1), +(460400105, 460400, '兰洋镇', '兰洋镇', '110.349228', '20.017377', 3, 0, 1), +(460400106, 460400, '光村镇', '光村镇', '110.349228', '20.017377', 3, 0, 1), +(460400107, 460400, '木棠镇', '木棠镇', '110.349228', '20.017377', 3, 0, 1), +(460400108, 460400, '海头镇', '海头镇', '110.349228', '20.017377', 3, 0, 1), +(460400109, 460400, '峨蔓镇', '峨蔓镇', '110.349228', '20.017377', 3, 0, 1), +(460400110, 460400, '三都镇', '三都镇', '110.349228', '20.017377', 3, 0, 1), +(460400111, 460400, '王五镇', '王五镇', '110.349228', '20.017377', 3, 0, 1), +(460400112, 460400, '白马井镇', '白马井镇', '109.218734', '19.696407', 3, 0, 1), +(460400113, 460400, '中和镇', '中和镇', '110.349228', '20.017377', 3, 0, 1), +(460400114, 460400, '排浦镇', '排浦镇', '110.349228', '20.017377', 3, 0, 1), +(460400115, 460400, '东成镇', '东成镇', '110.349228', '20.017377', 3, 0, 1), +(460400116, 460400, '新州镇', '新州镇', '110.349228', '20.017377', 3, 0, 1), +(460400400, 460400, '国营西培农场', '国营西培农场', '109.455554', '19.476422', 3, 0, 1), +(460400404, 460400, '国营西联农场', '国营西联农场', '109.539074', '19.673015', 3, 0, 1), +(460400405, 460400, '国营蓝洋农场', '国营蓝洋农场', '109.670723', '19.458984', 3, 0, 1), +(460400407, 460400, '国营八一农场', '国营八一农场', '109.364519', '19.413460', 3, 0, 1), +(460400499, 460400, '洋浦经济开发区', '洋浦经济开发区', '109.202064', '19.736941', 3, 0, 1), +(460400500, 460400, '华南热作学院', '华南热作学院', '109.494073', '19.505382', 3, 0, 1); diff --git a/niucloud/app/install/view/base.html b/niucloud/app/install/view/base.html new file mode 100644 index 0000000..65dd94e --- /dev/null +++ b/niucloud/app/install/view/base.html @@ -0,0 +1,148 @@ + + + + + + 安装程序 - NiuCloud-Admin + + + + + + + + + + {block name="resources"}{/block} + + + +
+
+ +
+ +
+
+
+
+ + +
+
+
1.许可协议
+
+
+
+ +
+
+
2.环境检测
+
+
+
+
+
+
3.参数配置
+
+
+
+
+
+
4.安装完成
+
+
+
+
+
+ +
+
+
+
+ {block name='main'}{/block} +
+ + +{block name="script"}{/block} + + \ No newline at end of file diff --git a/niucloud/app/install/view/index/step-1.html b/niucloud/app/install/view/index/step-1.html new file mode 100644 index 0000000..cd344e6 --- /dev/null +++ b/niucloud/app/install/view/index/step-1.html @@ -0,0 +1,84 @@ +{extend name="base"/} +{block name="main"} + +
+

阅读许可协议

+
+ + 版权所有 (c)2023,niucloud-admin保留所有权利。 +

+ 感谢您选择niucloud-admin【以下简称niucloud】,niucloud-admin后台采用thinkphp6+php8+mysql,前端采用uniapp前后端分离的技术开发,全部源码开放。
+ 为了使您正确并合法的使用本软件,请您在使用前务必阅读清楚下面的协议条款: +

+

+ 一、本协议适用于niucloud-admin框架以及框架内所有应用,使用前请您务必仔细阅读本协议须知并勾选接受或者不接受,如不接受此协议,那么您无权利继续注册并使用本协议涉及的所有服务,如果您继续注册,登录,订阅等行为,则视为默认接受本协议。niucloud官方对本授权协议拥有最终解释权。 +

+

+ 二、协议许可权利 +

    +
  1. 1、用户接受并承诺遵守本协议才可登录niucloud-admin官网订购应用,如果用户不同意,那么不允许在niucloud-admin官网注册账号并登录体验。
  2. +
  3. 2、用户必须是具有独立民事责任行为能力的自然人、法人或其他组织个人。若用户不具备前述资格,那么该用户及其监护人应承担导致的一切后果。并且官方有权利对其账号进行冻结,对官方造成的利益损害有权进行申诉索赔。
  4. +
  5. 3、用户可登录niucloud-admin官网下载并安装免费版应用。
  6. +
  7. 4、若需要安装付费版应用,用户需要登录niucloud-admin官网付费并订购付费版应用后才可下载安装。
  8. +
  9. 5、在更新niucloud-admin框架到最新版时,请务必对原整站内容进行备份,否则niucloud官方对升级过程中造成的数据丢失等问题不承担任何责任。
  10. +
  11. 6、niucloud官方下架应用造成的无法更新,官方不承担任何责任。
  12. +
  13. 7、niucloud官方因商业需求,暂停应用的更新,官方不承担任何责任。
  14. +
  15. 8、niucloud官网有权根据需要不时地制订、修改本协议或各类规则,并以公示的方式进行公告,不再单独通知用户。变更后的协议和规则一经公布后,立即自动生效。如用户不同意相关变更,应当立即停止使用niucloud-admin付费应用。如果用户继续订阅、使用niucloud-admin付费应用,即表示用户接受经修订的协议。
  16. +
+

+

+ 三、协议规定的约束和限制 +

    +
  1. 1、请尊重开发人员劳动成果,严禁对本框架进行转卖、销售或二次开发后转卖、销售等商业行为。
  2. +
  3. 2、任何企业和个人不允许对程序代码以任何形式任何目的再发布。
  4. +
  5. 3、基于niucloud-admin应用从事的任何商业行为,都与niucloud官方无关。
  6. +
  7. 4、授权niucloud-admin付费应用时,必须要确保授权信息主体录入的准确性,否则出现的法律纠纷与niucloud官方无关,需要自行解决。
  8. +
  9. 5、应用金额以最终结算价格为准,已售出的应用不做任何差价补偿。
  10. +
  11. 6、如果用户利用特殊手段以低价或者免费获得付费应用,niucloud官方有权对应用进行回收。
  12. +
  13. 7、niucloud-admin付费应用一旦完成交易下载源码,不得以任何形式和理由进行退款,请在购买前仔细阅读本协议。
  14. +
  15. 8、基于niucloud-admin框架进行应用的开发,必须保留框架版权信息。
  16. +
+

+

+ 四、知识产权声明 +

    +
  1. 1、niucloud-admin框架应用源代码所有权和著作权归niucloud官方所有,基于niucloud-admin框架开发的应用,所有权和著作权归应用开发商所有。
  2. +
  3. 2、niucloud-admin框架所依托的代码、文字、图片等著作权、专利权及其他知识产权均归niucloud官方所有,除另外有特别声明。
  4. +
+

+ +

五、有限担保和免责声明

+

+ 本软件及所附带的文件是作为不提供任何明确的或隐含的赔偿或担保的形式提供的。
+ 用户出于自愿而使用本软件,您必须了解使用本软件的风险,在尚未购买产品技术服务之前,我们不承诺对免费用户提供任何形式的技术支持、使用担保,也不承担任何因使用本软件而产生问题的相关责任。 + 电子文本形式的授权协议如同双方书面签署的协议一样,具有完全的和等同的法律效力。您一旦开始确认本协议并安装niucloud-admin框架,即被视为完全理解并接受本协议的各项条款,在享有上述条款授予的权力的同时,受到相关的约束和限制。协议许可范围以外的行为,将直接违反本授权协议并构成侵权,我们有权随时终止授权,责令停止损害,并保留追究相关责任的权力。 +

+
+
+
+
+ +
+
+ +
+
+ +{/block} +{block name="script"} + +{/block} \ No newline at end of file diff --git a/niucloud/app/install/view/index/step-2.html b/niucloud/app/install/view/index/step-2.html new file mode 100644 index 0000000..471098a --- /dev/null +++ b/niucloud/app/install/view/index/step-2.html @@ -0,0 +1,68 @@ +{extend name="base"/} +{block name="resources"} + +{/block} +{block name="main"} +
+
+

系统环境检测系统环境要求必须满足下列所有条件,否则系统或系统部份功能将无法使用。

+
+ + + + + + + + + + + + {foreach $system_variables as $variables_key => $variables_item} + + + + + + {/foreach} +
需开启的变量或函数要求实际状态及建议
php版本php8.0.0及以上 {$phpv}
{$variables_item.name}{$variables_item.need}
+
+

目录权限检测系统要求必须满足下列所有的目录权限全部可读写的需求才能使用,其它应用目录可安装后在管理后台检测。

+
+ + + + + + + {foreach $dirs_list as $dirs_key => $dirs_item} + + + + + + {/foreach} + +
目录名读取权限写入权限
{$dirs_item.path_name} + + + +
+
+
+
+ + +
+
+ +
+ +
+ +{/block} +{block name="script"} + +{/block} \ No newline at end of file diff --git a/niucloud/app/install/view/index/step-3.html b/niucloud/app/install/view/index/step-3.html new file mode 100644 index 0000000..40456b1 --- /dev/null +++ b/niucloud/app/install/view/index/step-3.html @@ -0,0 +1,342 @@ +{extend name="base"/} +{block name="resources"} + +{/block} + +{block name="main"} +
+
+
+
+
+
+
+

数据库设置

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
*数据库主机: + + 一般为localhost +
*Mysql端口: + + 一般为3306 +
*数据库用户: + + 默认root +
*数据库密码: +
+ +
+
+
*数据库名称: +
+
+
数据表前缀: +
+
数据库编码: + +
+
+
+

网站设置

+ + + + + + + + + + + + + + + + + +
*网站标题: + + 网站标题 必填 +
*管理员用户名: + + 管理员用户名 必填 +
*管理员密码: + + 密码 必填 +
*确认密码: + + 确认密码 必填 +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +{/block} +{block name='script'} + +{/block} diff --git a/niucloud/app/install/view/index/step-4.html b/niucloud/app/install/view/index/step-4.html new file mode 100644 index 0000000..094f05a --- /dev/null +++ b/niucloud/app/install/view/index/step-4.html @@ -0,0 +1,94 @@ +{extend name="base"/} +{block name="resources"} + +{/block} +{block name="main"} +
+
+
+ +
+
+

恭喜您!已成功安装niucloud-admin。

+

建议删除安装目录install后使用

+
+
+
+ +{/block} + +{block name="script"} + +{/block} \ No newline at end of file diff --git a/niucloud/app/job/notice/Notice.php b/niucloud/app/job/notice/Notice.php new file mode 100644 index 0000000..87a30c0 --- /dev/null +++ b/niucloud/app/job/notice/Notice.php @@ -0,0 +1,41 @@ + $site_id, 'key' => $key, 'data' => $data, 'template' => $template ]); + $notice_data = array_values(array_filter($result))[ 0 ] ?? []; + if (empty($notice_data)) throw new NoticeException('NOTICE_TEMPLATE_IS_NOT_EXIST'); + event('Notice', [ 'site_id' => $site_id, 'key' => $key, 'to' => $notice_data[ 'to' ], 'vars' => $notice_data[ 'vars' ], 'template' => $template ]); + return true; + } +} diff --git a/niucloud/app/job/pay/PayReturnTo.php b/niucloud/app/job/pay/PayReturnTo.php new file mode 100644 index 0000000..3d1ca0f --- /dev/null +++ b/niucloud/app/job/pay/PayReturnTo.php @@ -0,0 +1,37 @@ +returnTo($data['site_id'], $data['out_trade_no']); + return true; + } + +} diff --git a/niucloud/app/job/schedule/OrderClose.php b/niucloud/app/job/schedule/OrderClose.php new file mode 100644 index 0000000..281d027 --- /dev/null +++ b/niucloud/app/job/schedule/OrderClose.php @@ -0,0 +1,27 @@ +getExpireSiteList(); + if (!empty($list)) { + foreach ($list as $k => $v) { + $core_site_service->expire($v['site_id']); + } + } + Log::write('站点到期自动关闭' . date('Y-m-d h:i:s')); + return true; + } +} diff --git a/niucloud/app/job/sys/AddonInstall.php b/niucloud/app/job/sys/AddonInstall.php new file mode 100644 index 0000000..234ae4d --- /dev/null +++ b/niucloud/app/job/sys/AddonInstall.php @@ -0,0 +1,31 @@ +executeTask($task); + } + + public function failed($data) + { + + } +} diff --git a/niucloud/app/job/sys/CheckDeleteJob.php b/niucloud/app/job/sys/CheckDeleteJob.php new file mode 100644 index 0000000..b9595de --- /dev/null +++ b/niucloud/app/job/sys/CheckDeleteJob.php @@ -0,0 +1,26 @@ + $file], secs: 8); + return true; + } +} diff --git a/niucloud/app/lang/en.php b/niucloud/app/lang/en.php new file mode 100644 index 0000000..c95e49f --- /dev/null +++ b/niucloud/app/lang/en.php @@ -0,0 +1,22 @@ +load(["lang_type" =>"en"]); diff --git a/niucloud/app/lang/en/api.php b/niucloud/app/lang/en/api.php new file mode 100644 index 0000000..14b2ace --- /dev/null +++ b/niucloud/app/lang/en/api.php @@ -0,0 +1,126 @@ + 'success', + 'EDIT_SUCCESS' => 'update success', + 'DELETE_SUCCESS' => 'delete success', + 'MODIFY_SUCCESS' => 'modify success', + 'FAIL' => 'fail', + 'SAVE_FAIL' => 'save fail', + 'EDIT_FAIL' => 'update fail', + 'DELETE_FAIL' => 'delete fail', + 'MODIFY_FAIL' => 'refresh fail', + 'ADD_FAIL' => 'add fail', + 'ADD_SUCCESS' => 'add success', + 'UPLOAD_FAIL' => 'upload fail', + 'ATTACHMENT_DELETE_FAIL' => 'file delete fail', + 'DATA_NOT_EXIST' => 'data is not exit', + 'DOWNLOAD_FAIL' => 'download fail', + 'SET_SUCCESS' => 'set success', + 'AGREEMENT_TYPE_NOT_EXIST' => 'agreement type is not exit', + 'FIELD_NOT_FOUND' => 'cloumn is not exit', + 'REFRESH_SUCCESS' => 'refresh success', + 'CAPTCHA_ERROR' => 'captcha fail', + + + //登录注册重置账号.... + + 'LOGIN_SUCCESS' => 'login success', + 'MUST_LOGIN' => 'place login', + 'LOGIN_EXPIRE' => 'login expire', + 'LOGIN_STATE_ERROR' => 'login expire', + 'USER_LOCK' => 'account is not auth', + 'USER_ERROR' => 'account or password error', + 'NO_SITE_PERMISSION' => 'you do not have auth', + 'SITE_NOT_EXIST' => 'site is not exit', + 'LOGOUT' => 'logout', + 'OLD_PASSWORD_ERROR' => 'password error', + 'MOBILE_LOGIN_UNOPENED' => 'mobile login is not open', + + //用户组权限 + + 'NO_PERMISSION' => 'you do not have auth', + + + + //菜单管理 + 'MENU_NOT_EXIST' => '菜单不存在', + 'MENU_NOT_ALLOW_DELETE' => '存在子级菜单的目录或菜单不允许删除', + + //用户管理 + 'USER_NOT_EXIST' => '用户不存在', + 'NO_SITE_USER_ROLE' => '用户不存在关联权限', + 'ADMIN_NOT_ALLOW_EDIT_ROLE' => '超级管理员不允许改动权限', + 'USERNAME_REPEAT' => '用户名重复', + + + //角色管理 + 'USER_ROLE_NOT_EXIST' => '角色不存在', + 'USER_ROLE_NOT_ALLOW_DELETE' => '存在管理员使用当前角色,不允许删除', + + //素材管理 + 'ATTACHMENT_GROUP_NOT_EXIST' => '附件组不存在', + 'ATTACHMENT_GROUP_NOT_ALLOW_DELETE' => '当前分组,不允许删除', + 'ATTACHMENT_NOE_EXIST' => '附件不存在', + 'ATTACHMENT_GROUP_HAS_IMAGE' => '附件组中存在图片不允许删除', + 'OSS_TYPE_NOT_EXIST' => '云存储类型不存在', + 'URL_FILE_NOT_EXIST' => '获取不到网址指向的文件', + 'PLEACE_SELECT_IMAGE' => '请选择要删除的图片', + 'UPLOAD_TYPE_ERROR' => '不是有效的上传类型', + + + //消息管理 + 'NOTICE_TYPE_NOT_EXIST' => '消息类型不存在', + 'SMS_TYPE_NOT_EXIST' => '短信类型不存在', + 'SMS_DRIVER_NOT_EXIST' => '短信驱动不存在', + 'NO_SMS_DRIVER_OPEN' => '没有启用的短信', + 'SMS_DRIVER_NOT_OPEN' => '短信没有启用', + 'WECHAT_TEMPLATE_NOTICE_NOT_OPEN' => '微信模板消息没有启用', + 'WEAPP_TEMPLATE_NOTICE_NOT_OPEN' => '微信小程序订阅没有启用', + 'SMS_TYPE_NOT_OPEN' => '没有启用的短信方式', + 'NOTICE_TEMPLATE_NOT_EXIST' => '消息模板不存在', + 'WECHAT_TEMPLATE_NEED_NO' => '微信消息模板缺少模板编号', + + //会员相关 + 'MOBILE_IS_EXIST' => '手机号已存在', + 'ACCOUNT_INSUFFICIENT' => '账户余额不足', + 'ACCOUNT_OR_PASSWORD_ERROR' => '账号或密码错误', + 'MEMBER_LOCK' => '账号被锁定', + 'MEMBER_NOT_EXIST' => '账号不存在', + 'MEMBER_LOGOUT' => '账号退出', + 'MEMBER_TYPE_NOT_EXIST' => '账户类型不存在', + 'MEMBER_IS_EXIST' => '账号已存在', + 'REG_CHANNEL_NOT_EXIST' => '无效的注册渠道', + 'MEMBER_USERNAME_LOGIN_NOT_OPEN' => '未开始账号登录注册', + 'AUTH_LOGIN_NOT_OPEN' => '未开启第三方登录注册', + 'MOBILE_NEEDED' => '手机号必须填写', + 'MOBILE_CAPTCHA_ERROR' => '手机验证码有误', + + + + + //渠道相关 占用 4****** + //微信 + 'WECHAT_NOT_EXIST' => '微信公众号未配置完善', + 'KEYWORDS_NOT_EXIST' => '关键词回复不存在', + 'WECHAT_EMPOWER_NOT_EXIST' => '微信授信信息不存在', + //小程序 + 'WEAPP_NOT_EXIST' => '微信小程序未配置完善', + + //支付相关 + 500000 => '你选择的支付方式未启用', + //站点相关 + 'SITE_GROUP_IS_EXIST' => '站点分组已存在站点,请调整站点后重试', + //小程序版本 + 'APPLET_VERSION_NOT_EXISTS' => 'applet version not exists', +]; diff --git a/niucloud/app/lang/en/dict.php b/niucloud/app/lang/en/dict.php new file mode 100644 index 0000000..c9fbbf5 --- /dev/null +++ b/niucloud/app/lang/en/dict.php @@ -0,0 +1,299 @@ + [ + 'type_admin' => 'admin', + 'type_site' => 'site', + 'type_api' => 'api', + ], + 'dict_menu' => [ + //菜单类型 + 'type_list' => 'list', + 'type_menu' => 'menu', + 'type_button' => 'button', + //菜单状态 + 'status_on' => 'on', + 'status_off' => 'off' + ], + 'dict_user' => [ + //用户状态 + 'status_on' => 'on', + 'status_off' => 'off' + ], + 'dict_role' => [ + //角色状态 + 'status_on' => 'on', + 'status_off' => 'off' + ], + // 站点 + 'dict_site' => [ + //站点类型 + 'type_cms' => 'cms', + 'status_on' => 'on', + 'status_experience' => 'experience', + 'status_expire' => 'expire' + ], + 'dict_notice' => [ + 'type_sms' => 'sms', + 'type_wechat' => 'wechat', + 'type_weapp' => 'weapp', + 'var_username' => 'username', + 'var_nickname' => 'nickname', + 'var_code' => 'code', + 'var_mobile' => 'mobile', + 'var_balance' => 'balance', + 'var_point' => 'point', + ], + //上传附件相关 + 'dict_file' => [ + //上传附件类型 + 'type_image' => 'image', + 'type_video' => 'video', + //存储方式 + 'storage_type_local' => 'local', + 'storage_type_qiniu' => 'qiniu', + 'storage_type_ali' => 'aliyun', + 'storage_type_qcloud' => 'tencent', + + ], + 'dict_member' => [ + //会员端口 + 'terminal_wechat' => 'wechat', + 'terminal_weapp' => 'weapp', + 'terminal_h5' => 'H5', + 'terminal_pc' => 'PC', + 'terminal_app' => 'APP', + 'terminal_manual' => 'add', + 'account_point' => 'point', + 'account_balance' => 'balance', + 'login_username' => 'username login', + 'login_mobile' => 'mobile login', + 'login_wechat' => 'wechat login', + 'login_weapp' => 'weapp login', + 'account_point_adjust' => 'adjust point', + 'account_point_recharge_give' => 'recharge give', + 'account_balance_adjust' => 'adjust balance', + 'account_balance_recharge' => 'recharge', + + ], + 'dict_order' => [ + //订单类型 + 'order_type_recharge' => 'recharge order', + + ], + //微信回复 + 'dict_wechat_reply' => [ + //微信回复状态 + 'status_on' => 'on', + 'status_off' => 'off' + ], + //自动任务时间间隔 + 'dict_schedule' => [ + 'type_cron' => 'time work', + 'type_crond' => 'period work', + 'on' => 'on', + 'off' => 'off', + //时间间隔 + 'min' => 'every few minutes', + 'hour' => 'every few hours', + 'day' => 'every few day', + 'week' => 'weekly', + 'month' => 'monthly', + ], + //支付相关 + 'dict_pay' => [ + 'type_wechatpay' => 'wechatpay', + 'type_alipay' => 'alipay', + 'type_unipay' => 'unipay', + 'type_offline' => 'offlinepay', + ], + 'dict_agreement' => [ + //菜单类型 + 'service' => 'service agreement', + 'privacy' => 'privacy agreement', + ], + //微信配置 + 'dict_wechat_config' => [ + 'not_encrypt' => 'not encrypt', + 'compatible' => 'compatible', + 'safe' => 'safe' + ], + //性别 + 'dict_sex' => [ + 'unknown' => 'unknown', + 'man' => 'man', + 'woman' => 'woman' + ], + // 自定义页面 + 'dict_diy' => [ + 'page_index' => 'index', + 'page_member_index' => 'member index', + 'page_diy' => 'diy page', + 'component_type_basic' => 'base component' + ], + //短信相关 + 'dict_sms' => [ + 'status_sending' => 'sending', + 'status_success' => 'success', + 'status_fail' => 'fail', + ], + 'dict_menu_admin' => [ + 'overview' => 'overview', + 'site' => 'site', + 'site_list' => 'site list', + 'site_info' => 'site info', + 'site_group' => 'site package', + 'site_user' => 'site user', + 'auth' => 'auth', + 'menu_list' => 'menu manage', + 'auth_menu' => 'admin menu', + 'auth_menu_add' => 'add', + 'auth_menu_update' => 'edit', + 'auth_menu_del' => 'delete', + 'auth_menu_info' => 'info', + 'auth_site_menu' => 'site menu', + 'auth_site_menu_add' => 'add', + 'auth_site_menu_update' => 'edit', + 'auth_site_menu_del' => 'delete', + 'auth_site_menu_info' => 'info', + 'auth_user' => 'manager', + 'auth_user_add' => 'add', + 'auth_user_update' => 'edit', + 'auth_user_del' => 'delete', + 'auth_user_info' => 'info', + 'auth_role' => 'role manage', + 'auth_role_add' => 'add', + 'auth_role_update' => 'edit', + 'auth_role_del' => 'delete', + 'auth_log' => 'log', + 'setting' => 'system config', + 'setting_system' => 'web config', + 'setting_copyright' => 'copyright config', + 'setting_login' => 'login config', + 'setting_storage' => 'storage config', + 'setting_oplatform' => 'wechat platform', + 'tool' => 'develop tools', + 'code' => 'generator', + 'code_edit' => 'table edit', + 'tools_Update_cache' => 'update cache', + 'tools_check_environment' => 'check environment', + 'app_store' => 'app market' + + ], + 'dict_menu_site' => [ + 'overview' => 'overview', + 'diy' => 'diy manage', + 'diy_page_index' => 'diy index', + 'diy_page_member' => 'diy member', + 'diy_page_update' => 'save', + 'diy_page_list' => 'page manage', + 'diy_bottom' => 'bottom config', + 'diy_tabbar_update' => 'save', + 'attachment' => 'attachment', + 'decorate' => 'decorate', + 'page_decorate' => 'page decorate', + 'article' => 'article', + 'article_list' => 'article list', + 'article_edit' => 'article edit', + 'article_category' => 'article category', + 'member' => 'member', + 'member_list' => 'member list', + 'member_update' => 'edit', + 'member_info' => 'member detail', + 'member_label' => 'member label', + 'member_label_update' => 'edit label', + 'member_label_add' => 'add label', + 'member_label_delete' => 'delete label', + 'member_point' => 'member point', + 'member_balance' => 'member balance', + 'member_commission' => 'member commission', + 'order' => 'order', + 'recharge_order' => 'recharge order', + 'recharge_order_list' => 'order list', + 'recharge_refund' => 'refund', + 'recharge_order_detail' => 'order detail', + 'recharge_refund_list' => 'refund list', + 'recharge_refund_detail' => 'refund detail', + 'finance' => 'finance manage', + 'cash_out_list' => 'member cashout', + 'addon' => 'app manage', + 'addon_list' => 'addon list', + 'channel' => 'channel manage', + 'channel_pc' => 'pc manage', + 'pc_config' => 'pc config', + 'channel_h5' => 'h5 manage', + 'h5_config' => 'h5 config', + 'channel_wechat' => 'wechat manage', + 'wechat_config' => 'wechat config', + 'wechat_menu' => 'wechat menu', + 'wechat_template_message' => 'template manage', + 'channel_weapp' => 'weapp manage', + 'weapp_config' => 'weapp config', + 'weapp_template_message' => 'weapp message', + 'channel_aliapp' => 'aliapp manage', + 'aliapp_config' => 'aliapp config', + 'auth' => 'auth manage', + 'auth_user' => 'manager', + 'auth_user_add' => 'add', + 'auth_user_update' => 'edit', + 'auth_user_del' => 'delete', + 'auth_user_info' => 'detail', + 'auth_role' => 'role manage', + 'auth_role_add' => 'add', + 'auth_role_update' => 'edit', + 'auth_role_del' => 'delete', + 'auth_log' => 'log', + 'setting' => 'system config', + 'setting_system' => 'web config', + 'system_agreement' => 'agreement manage', + 'system_agreement_edit' => 'edit agreement', + 'setting_login_register' => 'login config', + 'setting_member' => 'member config', + 'setting_pay' => 'pay manage', + 'setting_pay_channel' => 'pay config', + 'setting_pay_channel_set' => 'config', + 'setting_pay_transfer' => 'transfer config', + 'setting_pay_transfer_set' => 'config', + 'cash_out_config' => 'cashout config', + 'setting_notice' => 'notice manage', + 'setting_notice_template' => 'notice template', + 'setting_notice_records' => 'send log', + 'sms_notice' => 'sms manage', + 'sms_setting' => 'sms config', + 'sms_notice_records' => 'send log', + 'map_setting' => 'map config', + ], + 'dict_date' => [ + //week + 'mon' => 'monday', + 'tue' => 'tuesday', + 'wed' => 'wednesday', + 'thur' => 'thursday', + 'fri' => 'friday', + 'sat' => 'saturday', + 'sun' => 'sunday', + //month + 'jan' => 'january', + 'feb' => 'february', + 'mar' => 'march', + 'apr' => 'april', + 'may' => 'may', + 'jun' => 'june', + 'jul' => 'july', + 'aug' => 'august', + 'sept' => 'sept', + 'oct' => 'october', + 'nov' => 'november', + 'dec' => 'december', + ], +]; diff --git a/niucloud/app/lang/en/validate.php b/niucloud/app/lang/en/validate.php new file mode 100644 index 0000000..8112e5b --- /dev/null +++ b/niucloud/app/lang/en/validate.php @@ -0,0 +1,141 @@ + [ + 'menu_name_require' => 'menu_name is require', + 'router_path_requireif' => 'router path is require', + 'view_path_requireif' => 'view path is require', + 'methods_requirewith' => 'methods is require', + 'not_exist_menu_type' => 'menu_type is not exist', + 'not_exist_request_type' => 'request_type is not exist', + 'exist_menu_key' => 'key must be unique' + ], + //角色 + 'validate_role' => [ + 'role_name_require' => 'role_name is require', + ], + 'validate_page' => [ + 'page_error' => 'page must be number', + 'limit_number' => 'limit must be positive number', + 'limit_between' => 'limit must be positive number and not be exceed 120 ', + ], + 'validate_user' => [ + 'username_require' => 'username is require', + 'username_unique' => 'username must be unique', + 'username_max' => 'username is not exceed 15 points', + 'real_name_require' => 'real_name is require', + 'password_require' => 'password is require', + ], + //站点 + 'validate_site' => [ + 'site_name_require' => 'site_name is require', + 'site_name_max' => 'site_name is not exceed 120 points', + 'keywords_require' => 'keywords is require', + 'keywords_max' => 'site_name is not exceed 30 points', + 'group_id_require' => 'group_id is require', + 'group_id_number' => 'group_id must be a number', + 'expire_time_number' => 'expire_time must be a number', + 'group_name_require' => 'group_name is require', + 'group_name_max' => 'group_name is not exceed 120 points', + 'group_roles_require' => 'group_roles is require' + ], + //附件 + 'validate_attachment' => [ + 'name_require' => 'name is require', + 'not_exist_type' => 'attachment_type is not exist', + ], + 'validate_member' => [ + 'username_is_exist' => 'username is exist', + 'password_require' => 'password is require', + 'nickname_require' => 'nickname is require', + 'nickname_max' => 'nickname must not be exceed 120 points', + 'username_require' => 'username is require', + 'username_max' => 'suername must not be exceed 120 points', + 'mobile_require' => 'mobile is require', + 'mobile_mobile' => 'mobile format error', + 'sex_bot_exist' => 'sex is not exist', + 'label_name_require' =>'label_name is require', + 'birthday_format' => 'birthday format error', + 'label_name_max' => 'label_name must not be exceed 120 points', + 'memo_max' => 'memo must not be exceed 200 points', + 'sort_number' => 'sort must not be a number', + 'is_username_number' => 'is_username must be a number', + 'is_username_between' => 'is_username must be 0 or 1', + 'is_mobile_number' => 'is_mobile must be a number', + 'is_mobile_between' => 'is_mobile must be 0 or 1', + 'is_auth_register_number' => 'is_auth_register must be a number', + 'is_auth_register_between' => 'is_auth_register must be 0 or 1', + 'is_bind_mobile_number' => 'is_bind_mobile must be a number', + 'is_bind_mobile_between' => 'is_bind_mobile must be 0 or 1', + 'username_cannot_pure_number' => 'The account cannot be a pure number' + ], + 'validate_article' => [ + 'title_require' => 'title is require', + 'title_max' => 'title must not be exceed 20 points', + 'intro_max' => 'intro must not be exceed 50 points', + 'summary_max' => 'summary must not be exceed 50 points', + 'image_max' => 'image is exceed max', + 'author_max' => 'author must not be exceed 20 points', + 'is_show_number' => 'is_show must be a number', + 'is_show_between' => 'is_show must be 0 or 1', + 'sort_number' => 'sort must be a number', + 'sort_between' => 'sort must not be exceed 10000', + 'cate_name_require' => 'cate_name is require', + 'cate_name_max' => 'cate_name must not be exceed 120 points', + ], + 'validate_generate' => [ + 'id_require' => 'id is require' + ], + //支付验证相关 + 'validate_pay' => [ + //支付宝 + 'app_id_requireif' => 'app_id is require', + 'app_secret_cert_requireif' => 'app_secret_cert is require', + 'app_public_cert_path_requireif' => 'app_public_cert_path is require', + 'alipay_public_cert_path_requireif' => 'alipay_public_cert_path is require', + 'alipay_root_cert_path_requireif' => 'alipay_root_cert_path is require', + //微信 + 'mch_id_requireif' => 'mch_id is require', + 'mch_secret_key_requireif' => 'mch_secret_key is require', + 'mch_secret_cert_requiremch_secret_cert_requireif' => 'mch_secret_cert_requiremch_secret_cert is require', + 'mch_public_cert_path_requireif' => 'mch_public_cert_path is require', + 'not_exist_pay_type' => 'not exist pay type', + ], + 'validate_agreement' => [ + 'title_require' => 'title is require', + 'content_require' => 'content is require', + 'title_max' => 'title must not be exceed 20 points', + ], + 'validate_generator' => [ + 'table_name_require' => 'table_name is require', + 'table_name_max' => 'table_name must not be exceed 30 points', + 'table_content_require' => 'table_content is require', + 'table_content_max' => 'table_content must not be exceed 30 points' + ], + //微信公众号 + 'validate_wechat' => [ + 'appid_require' => 'appid is require', + 'appsecret_require' => 'appsecret is require', + ], + //微信小程序 + 'validate_weapp' => [ + 'appid_require' => 'appid is require', + 'appsecret_require' => 'appsecret is require', + ], + //计划任务 + 'validate_schedule' => [ + 'schedule_require' => 'schedule is require', + 'schedule_unique' => 'schedule is exist', + 'not_exit_schedule_type' => 'not exit schedule type', + ], +]; diff --git a/niucloud/app/lang/zh-cn.php b/niucloud/app/lang/zh-cn.php new file mode 100644 index 0000000..6097fed --- /dev/null +++ b/niucloud/app/lang/zh-cn.php @@ -0,0 +1,22 @@ +load(["lang_type" =>"zh-cn"]); \ No newline at end of file diff --git a/niucloud/app/lang/zh-cn/api.php b/niucloud/app/lang/zh-cn/api.php new file mode 100644 index 0000000..a259f20 --- /dev/null +++ b/niucloud/app/lang/zh-cn/api.php @@ -0,0 +1,259 @@ + '操作成功', + 'EDIT_SUCCESS' => '编辑成功', + 'DELETE_SUCCESS' => '删除成功', + 'MODIFY_SUCCESS' => '更新成功', + 'FAIL' => '操作失败', + 'SAVE_FAIL' => '保存失败', + 'EDIT_FAIL' => '修改失败', + 'DELETE_FAIL' => '删除失败', + 'MODIFY_FAIL' => '更新失败', + 'ADD_FAIL' => '添加失败', + 'ADD_SUCCESS' => '添加成功', + 'UPLOAD_FAIL' => '上传失败', + 'ATTACHMENT_DELETE_FAIL' => '附件删除失败', + 'DATA_NOT_EXIST' => '数据不存在', + 'DOWNLOAD_FAIL' => '下载失败', + 'SET_SUCCESS' => '设置成功', + 'AGREEMENT_TYPE_NOT_EXIST' => '协议类型不存在', + 'FIELD_NOT_FOUND' => '找不到要修改的字段', + 'REFRESH_SUCCESS' => '刷新成功', + 'CAPTCHA_ERROR' => '验证码有误', + 'ADDON_INSTALL_SUCCESS' => '插件安装成功', + 'ADDON_UNINSTALL_SUCCESS' => '插件卸载成功', + 'DATA_GET_FAIL' => '数据获取失败', + 'SERVER_CROSS_REQUEST_FAIL' => '服务器跨域请求异常', + 'ADDON_INSTALL_NOT_EXIST' => '未找到插件安装任务', + 'ADDON_INSTALL_EXECUTED' => '插件安装任务已执行', + 'INSTALL_CHECK_NOT_PASS' => '安装校验未通过', + 'SITE_INDEX_VIEW_PATH_NOT_EXIST' => '当前首页路径不存在', + 'ADMIN_INDEX_VIEW_PATH_NOT_EXIST' => '当前首页路径不存在', + 'ADDON_SQL_FAIL' => '插件sql执行失败', + 'ADDON_DIR_FAIL' => '插件文件操作失败', + 'LAYOUT_NOT_EXIST' => '该布局不存在', + 'ZIP_FILE_NOT_FOUND' => '找不到可用的压缩文件', + 'DOWNLOAD_SUCCESS' => '下载成功', + 'APP_NOT_ALLOW_UNINSTALL' => '该应用下存在站点卸载前请先删除相关站点', + 'ADDON_INSTALL_FAIL' => '插件安装失败', + 'ADMIN_DIR_NOT_EXIST' => '未找到admin源码所在目录, 点击查看相关手册', + 'WEB_DIR_NOT_EXIST' => '未找到web源码所在目录, 点击查看相关手册', + 'UNIAPP_DIR_NOT_EXIST' => '未找到uni-app源码所在目录, 点击查看相关手册', + 'OPEN_BASEDIR_ERROR' => '请关闭防跨站攻击, 具体操作方法点击查看相关手册', + 'ADDON_DOWNLOAD_VERSION_EMPTY' => '该插件还没有发布过版本', + 'ADDON_IS_NOT_EXIST' => '插件不存在', + 'ADDON_KEY_IS_EXIST' => '已存在相同插件标识的应用', + 'ADDON_IS_INSTALLED_NOT_ALLOW_DEL' => '已安装的插件不允许删除', + 'ADDON_ZIP_ERROR' => '插件压缩失败', + //登录注册重置账号.... + + 'LOGIN_SUCCESS' => '登录成功', + 'MUST_LOGIN' => '请登录', + 'LOGIN_EXPIRE' => '登录过期,请重新登录', + 'LOGIN_STATE_ERROR' => '登录状态有误,请重新登录', + 'USER_LOCK' => '账号被锁定', + 'USER_ERROR' => '账号或密码错误', + 'USER_NOT_EXIST' => '账号不存在', + 'NO_SITE_PERMISSION' => '您没有当前站点的访问权限', + 'SITE_NOT_EXIST' => '站点不存在', + 'LOGOUT' => '登陆退出', + 'OLD_PASSWORD_ERROR' => '原始密码不正确', + 'MOBILE_LOGIN_UNOPENED' => '手机号登录注册未开启', + 'SITE_USER_CAN_NOT_LOGIN_IN_ADMIN' => '站点用户无法在平台端进行登录', + 'ADMIN_USER_CAN_NOT_LOGIN_IN_SITE' => '平台用户无法在站点端进行登录', + 'APP_TYPE_NOT_EXIST' => '无效的登录端口', + + //用户组权限 + + 'NO_PERMISSION' => '您没有访问权限', + + //插件安装相关 + 'REPEAT_INSTALL' => '当前插件已安装,不能重复安装', + 'NOT_UNINSTALL' => '当前插件未安装,不能进行卸载操作', + + //菜单管理 + 'MENU_NOT_EXIST' => '菜单不存在', + 'MENU_NOT_ALLOW_DELETE' => '存在子级菜单的目录或菜单不允许删除', + + //用户管理 + 'USER_NOT_EXIST' => '用户不存在', + 'NO_SITE_USER_ROLE' => '用户不存在关联权限', + 'ADMIN_NOT_ALLOW_EDIT_ROLE' => '超级管理员不允许改动权限', + 'USERNAME_REPEAT' => '用户名重复', + 'SITE_USER_EXIST' => '该用户已存在', + + //角色管理 + 'USER_ROLE_NOT_EXIST' => '角色不存在', + 'USER_ROLE_NOT_ALLOW_DELETE' => '存在管理员使用当前角色,不允许删除', + + //素材管理 + 'ATTACHMENT_GROUP_NOT_EXIST' => '附件组不存在', + 'ATTACHMENT_GROUP_NOT_ALLOW_DELETE' => '当前分组,不允许删除', + 'ATTACHMENT_NOE_EXIST' => '附件不存在', + 'ATTACHMENT_GROUP_HAS_IMAGE' => '附件组中存在图片不允许删除', + 'OSS_TYPE_NOT_EXIST' => '云存储类型不存在', + 'URL_FILE_NOT_EXIST' => '获取不到网址指向的文件', + 'PLEACE_SELECT_IMAGE' => '请选择要删除的图片', + 'UPLOAD_TYPE_ERROR' => '不是有效的上传类型', + 'OSS_FILE_URL_NOT_EXIST' => '远程资源文件地址不能为空', + 'BASE_IMAGE_FILE_NOT_EXIST' => 'base图片资源不能为空', + 'UPLOAD_TYPE_NOT_SUPPORT' => '不支持的上传类型', + 'FILE_ERROE' => '无效的资源', + 'UPLOAD_STORAGE_TYPE_ALL_CLOSE' => '至少要有一个启用的存储方式', + 'STORAGE_NOT_HAS_HTTP_OR_HTTPS' => '空间域名请补全http://或https://', + + + //消息管理 + 'NOTICE_TYPE_NOT_EXIST' => '消息类型不存在', + 'SMS_TYPE_NOT_EXIST' => '短信类型不存在', + 'SMS_DRIVER_NOT_EXIST' => '短信驱动不存在', + 'NO_SMS_DRIVER_OPEN' => '没有启用的短信', + 'SMS_DRIVER_NOT_OPEN' => '短信没有启用', + 'WECHAT_TEMPLATE_NOTICE_NOT_OPEN' => '微信模板消息没有启用', + 'WEAPP_TEMPLATE_NOTICE_NOT_OPEN' => '微信小程序订阅没有启用', + 'SMS_TYPE_NOT_OPEN' => '没有启用的短信方式', + 'NOTICE_TEMPLATE_NOT_EXIST' => '消息模板不存在', + 'WECHAT_TEMPLATE_NEED_NO' => '微信消息模板缺少模板编号', + 'NOTICE_NOT_OPEN_SMS' => '当前消息未开启短信发送', + 'NOTICE_SMS_EMPTY' => '手机号为空', + 'NOTICE_SMS_NOT_OPEN' => '短信未启用', + 'NOTICE_TEMPLATE_IS_NOT_EXIST' => '消息不存在', + + //会员相关 + 'MOBILE_IS_EXIST' => '当前手机号已绑定账号', + 'ACCOUNT_INSUFFICIENT' => '账户余额不足', + 'ACCOUNT_OR_PASSWORD_ERROR' => '账号或密码错误', + 'MEMBER_LOCK' => '账号被锁定', + 'MEMBER_NOT_EXIST' => '账号不存在', + 'MEMBER_LOGOUT' => '账号退出', + 'MEMBER_TYPE_NOT_EXIST' => '账户类型不存在', + 'MEMBER_IS_EXIST' => '账号已存在', + 'MEMBER_NO_IS_EXIST' => '会员编号已存在', + 'REG_CHANNEL_NOT_EXIST' => '无效的注册渠道', + 'MEMBER_USERNAME_LOGIN_NOT_OPEN' => '未开始账号登录注册', + 'AUTH_LOGIN_NOT_OPEN' => '未开启第三方登录注册', + 'MOBILE_NEEDED' => '手机号必须填写', + 'MOBILE_CAPTCHA_ERROR' => '手机验证码有误', + 'MEMBER_IS_BIND_AUTH' => '当前账号已绑定授权', + 'MEMBER_MOBILE_CAPTCHA_ERROR' => '无效的短信验证码', + 'AUTH_LOGIN_TAG_NOT_EXIST' => '第三方授权标识不能为空', + 'PASSWORD_RESET_SUCCESS' => '密码重置成功', + 'MOBILE_NOT_BIND_MEMBER' => '当前填写的手机号没有绑定此账号', + 'MOBILE_NOT_EXIST_MEMBER' => '当前填写的手机号不存在账号', + 'MOBILE_IS_BIND_MEMBER' => '当前账号已绑定手机号', + 'QRCODE_EXPIRE' => '登录二维码失效', + 'PASSWORD_REQUIRE' => '密码不能为空', + + //会员提现 + 'CASHOUT_NOT_OPEN' => '会员提现业务未开启', + 'CASHOUT_TYPE_NOT_OPEN' => '当前会员提现方式未启用', + 'CASHOUT_LOG_NOT_EXIST' => '提现记录不存在', + 'CASHOUT_AUDITED' => '当前提现记录已被审核', + 'TRANSFER_TYPE_NOT_EXIST' => '存在未定义的转账方式', + 'CASHOUT_IS_REFUSE' => '提现被拒绝,返还零钱', + 'MEMBER_APPLY_CASHOUT' => '会员申请提现,扣除零钱', + 'CASHOUT_MONEY_TOO_LITTLE' => '会员提现金额不能小于最低提现金额', + 'CASHOUT_STATUS_NOT_IN_WAIT_TRANSFER' => '当前提现申请未处于待转账状态', + 'CASHOUT_STATUS_NOT_IN_WAIT_AUDIT' => '当前提现申请未处于待审核状态', + 'MEMBER_CASHOUT_TRANSFER' => '会员提现转账', + 'CASH_OUT_ACCOUNT_NOT_EXIST' => '提现账户不存在', + + + //渠道相关 占用 4****** + //微信 + 'WECHAT_NOT_EXIST' => '微信公众号未配置完善', + 'KEYWORDS_NOT_EXIST' => '关键词回复不存在', + 'WECHAT_EMPOWER_NOT_EXIST' => '微信授权信息不存在', + 'SCAN_SUCCESS' => '扫码成功', + //小程序 + 'WEAPP_NOT_EXIST' => '微信小程序未配置完善', + 'WEAPP_EMPOWER_NOT_EXIST' => '微信小程序授信信息不存在', + 'WEAPP_EMPOWER_TEL_NOT_EXIST' => '微信小程序授信手机号不存在', + 'CURR_SITE_IS_NOT_OPEN_SSL' => '微信小程序请求域名只支持https请先配置ssl', + + //站点相关 + 'SITE_GROUP_IS_EXIST' => '当前套餐存在站点,请调整站点对应套餐后重试', + 'SITE_EXPIRE' => '站点已过期', + 'SITE_EXPIRE_NOT_ALLOW' => '站点已打烊,续费后可继续使用此项功能', + 'SITE_CLOSE_NOT_ALLOW' => '站点已停止', + 'SITE_GROUP_APP_NOT_EXIST' => '存在无效的应用', + + //支付相关(todo 注意:7段不共享) + 'ALIPAY_TRANSACTION_NO_NOT_EXIST' => '无效的支付交易号', + 'PAYMENT_METHOD_NOT_SUPPORT' => '您选择到支付方式不受业务支持', + 'PAYMENT_LOCK' => '支付中,请稍后再试', + 'PAY_SUCCESS' => '当前支付已完成', + 'PAY_IS_REMOVE' => '当前支付已取消', + 'PAYMENT_METHOD_NOT_EXIST' => '你选择的支付方式未启用', + 'PAYMENT_METHOD_NOT_SCENE'=> '你选择的支付方式不适用于当前场景', + 'TREAT_PAYMENT_IS_OPEN' => '只有待支付时可以关闭', + 'TRANFER_STATUS_NOT_IN_WAIT_TANSFER' => '当前转账未处于待转账状态', + 'TRANSFER_ORDER_INVALID' => '无效的转账单据', + 'TRANFER_CONFIG_ERROR' => '参数有误或未开通转账业务', + 'IS_PAY_REMOVE_NOT_RESETTING' => '已支付和已取消的单据不可以重置', + 'DOCUMENT_IS_PAY_REMOVE' => '当前单据已支付或已取消', + 'PATMENT_METHOD_INVALID' => '无效的支付方式', + 'CHANNEL_MARK_INVALID' => '无效的渠道标识', + 'TEMPLATE_NOT_EXIST' => '模板不存在', + 'IS_EXIST_TEMPLATE_NOT_MODIFY' => '已存在的支付模板不支持修改支付类型', + 'ONLY_PAYING_CAN_PAY' => '只有待支付的订单可以支付', + 'VOUCHER_NOT_EMPTY' => '支付单据不能为空', + 'ONLY_PAYING_CAN_AUDIT' => '只有待支付的订单才可以操作', + 'ONLY_OFFLINEPAY_CAN_AUDIT' => '只有线下支付的单据才可以审核', + //退款相关 + 'REFUND_NOT_EXIST' => '退款单据不存在', + //订单相关 8*** + 'ORDER_NOT_EXIST' => '订单不存在', + 'ORDER_CLOSED' => '订单已关闭', + 'DOCUMENT_IS_PAID' => '单据已支付', + 'REFUND_IS_CHANGE' => '退款状态已发生变化', + 'TRANFER_IS_CHANGE' => '转账状态已发生变化', + + // 退款相关 + 'NOT_ALLOW_APPLY_REFUND' => '该订单不允许退款', + 'ITEM_REFUND_NOT_EXIST' => '退款单不存在', + 'REFUND_STATUS_ABNORMAL' => '退款单状态异常', + 'NO_REFUNDABLE_AMOUNT' => '会员账户金额为0不允许进行退款', + 'REFUND_HAD_APPLIED' => '订单已申请退款', + 'ORDER_UNPAID_NOT_ALLOW_APPLY_REFUND' => '订单尚未支付不能进行退款', + + + // 缓存相关 + 'CLEAR_MYSQL_CACHE_SUCCESS' => '数据表缓存清除成功', + + //任务队列相关 + 'JOB_NOT_EXISTS' => '任务类不存在', + 'JOB_CREATE_FAIL' => '任务创建失败', + 'SCHEDULE_NOT_EXISTS' => '人物不存在', + //小程序版本 + 'APPLET_VERSION_NOT_EXISTS' => '小程序版本不存在', + 'APPLET_VERSION_PACKAGE_NOT_EXIST' => '小程序版本包不存在', + //验证码 + 'CAPTCHA_INVALID' => '无效的验证码', + + // 授权相关 + 'AUTH_NOT_EXISTS' => '未获取到授权信息', + + /********************************************************* home端专用 **************************************/ + 'USER_ROLE_NOT_HAS_SITE' => '当前登录用户下没有此项站点', + + // 云服务 + 'CLOUD_WEAPP_COMPILE_NOT_EXIST' => '未找到微信小程序编译包', + 'WEAPP_APPID_EMPTY' => '还没有配置微信小程序', + 'UPLOAD_KEY_EMPTY' => '还没有配置微信小程序代码上传秘钥', + 'UPLOAD_KEY_NOT_EXIST' => '未找到微信小程序代码上传秘钥', + 'NEED_TO_AUTHORIZE_FIRST' => '使用云服务需先进行授权', + 'WEAPP_UPLOADING' => '小程序有正在上传的版本,请等待上一版本上传完毕后再进行操作', + 'CLOUD_BUILD_TASK_EXIST' => '已有正在执行中的编译任务' +]; diff --git a/niucloud/app/lang/zh-cn/dict.php b/niucloud/app/lang/zh-cn/dict.php new file mode 100644 index 0000000..5db91b1 --- /dev/null +++ b/niucloud/app/lang/zh-cn/dict.php @@ -0,0 +1,337 @@ + [ + 'type_admin' => '平台管理端', + 'type_api' => '客户端', + ], + 'dict_menu' => [ + //菜单类型 + 'type_list' => '目录', + 'type_menu' => '菜单', + 'type_button' => '按钮', + //菜单状态 + 'status_on' => '正常', + 'status_off' => '停用', + 'source_system' => '系统文件', + 'source_create' => '新建菜单', + 'source_generator' => '代码生成器' + ], + 'dict_user' => [ + //用户状态 + 'status_on' => '正常', + 'status_off' => '锁定' + ], + 'dict_role' => [ + //角色状态 + 'status_on' => '启用', + 'status_off' => '停用' + ], + // 站点 + 'dict_site' => [ + //站点类型 + 'type_cms' => 'cms', + 'status_on' => '正常', + 'status_experience' => '体验期', + 'status_expire' => '已到期', + 'status_close' => '已停止', + 'pay' => '支付', + 'refund' => '退款', + 'transfer' => '转账', + ], + // 站点 + 'dict_site_index' => [ + //站点类型 + 'system' => '框架首页', + ], + // 平台首页 + 'dict_admin_index' => [ + //站点类型 + 'system' => '框架首页', + ], + // 手机端首页 + 'dict_wap_index' => [ + //站点类型 + 'system' => '框架首页', + 'system_desc' => '系统默认首页', + ], + 'dict_notice' => [ + 'type_sms' => '短信', + 'type_wechat' => '微信公众号', + 'type_weapp' => '微信小程序', + 'var_username' => '用户名', + 'var_nickname' => '用户昵称', + 'var_code' => '验证码', + 'var_mobile' => '手机号', + 'var_balance' => '会员余额', + 'var_point' => '会员积分', + ], + //上传附件相关 + 'dict_file' => [ + //上传附件类型 + 'type_image' => '图片', + 'type_video' => '视频', + //存储方式 + 'storage_type_local' => '本地存储', + 'storage_type_qiniu' => '七牛云', + 'storage_type_image' => '阿里云', + 'storage_type_qcloud' => '腾讯云', + + ], + 'dict_member' => [ + //会员端口 + 'register_wechat' => '公众号', + 'register_weapp' => '微信小程序', + 'register_h5' => 'H5', + 'register_pc' => '电脑端', + 'register_app' => 'APP', + 'register_manual' => '商家添加', + 'register_username' => '用户名密码注册', + 'register_mobile' => '手机验证码注册', + 'account_point' => '积分', + 'account_balance' => '余额', + 'account_money' => '可提现余额', + 'account_commission' => '佣金', + 'login_username' => '用户名密码登录', + 'login_mobile' => '手机验证码登录', + 'login_wechat' => '微信公众号授权登录', + 'login_weapp' => '微信小程序授权登录', + 'account_point_adjust' => '账户调整', + 'account_balance_adjust' => '账户调整', + 'account_money_award' => '活动奖励', + 'account_money_cash_out' => '账户提现', + 'account_money_adjust' => '账户调整', + 'account_commission_award' => '活动奖励', + 'account_commission_cash_out' => '账户提现', + 'status_on' => '正常', + 'status_off' => '锁定', + + 'account_balance_order' => '订单消费', + 'account_balance_order_refund' => '订单退款', + ], + 'dict_order' => [ + + + ], + 'dict_refund' => [ + //订单类型 + 'wait' => '待审核', + 'wait_transfer' => "待转账", + "success" => "退款成功", + "fail" => "退款失败", + 'all' => '累计退款', + 'have' => '退款中金额', + + ], + //微信回复 + 'dict_wechat_reply' => [ + //微信回复状态 + 'status_on' => '启用', + 'status_off' => '停用' + ], + //自动任务时间间隔 + 'dict_schedule' => [ + 'type_cron' => '定时任务', + 'type_crond' => '周期任务', + 'on' => '启用', + 'off' => '关闭', + + 'min' => '每隔几分钟', + 'hour' => '每隔几小时', + 'day' => '每隔几天', + 'week' => '每周', + 'month' => '每月', + + ], + //支付相关 + 'dict_pay' => [ + 'type_wechatpay' => '微信支付', + 'type_alipay' => '支付宝支付', + 'type_unipay' => '银联支付', + 'type_offline' => '线下支付', + 'type_balancepay' => '余额支付', + + 'status_wait' => '待支付', + 'status_ing' => '支付中', + 'status_finish' => '已支付', + 'status_cancle' => '已取消', + 'status_audit' => '待审核', + 'pay' => '收款', + 'refund' => '退款', + 'transfer' => '转账', + ], + //转账相关 + 'dict_transfer' => [ + 'type_wechat' => '微信', + 'type_ali' => '支付宝', + 'type_bank' => '银行卡', + 'type_offline' => '线下转账', + + 'status_wait' => '待转账', + 'status_dealing' => '处理中', + 'status_success' => '转账成功', + 'status_fail' => '转账失败', + ], + 'dict_agreement' => [ + //菜单类型 + 'service' => '服务协议', + 'privacy' => '隐私协议', + ], + //微信配置 + 'dict_wechat_config' => [ + 'not_encrypt' => '明文', + 'compatible' => '兼容', + 'safe' => '安全' + ], + //性别 + 'dict_sex' => [ + 'unknown' => '未知', + 'man' => '男', + 'woman' => '女' + ], + // 自定义页面 + 'dict_diy' => [ + 'page_index' => '首页', + 'page_member_index' => '个人中心', + 'page_diy' => '微页面', + 'component_type_basic' => '基础组件', + + 'system_title' => '系统', + 'system_link' => '启动页', + 'system_link_index' => '首页', + + 'member_link' => '会员页面', + 'member_index' => '个人中心', + 'member_my_balance' => '我的余额', + 'member_my_point' => '我的积分', + 'member_my_commission' => '我的佣金', + 'member_my_personal' => '个人资料', + 'member_my_address' => '收货地址', + + 'diy_page' => '自定义页面', + 'diy_link' => '自定义链接' + ], + //短信相关 + 'dict_sms' => [ + 'status_sending' => '发送中', + 'status_success' => '成功', + 'status_fail' => '失败', + ], + //渠道 + 'dict_channel' => [ + //渠道端口 + 'channel_wechat' => '公众号', + 'channel_weapp' => '微信小程序', + 'channel_h5' => 'H5', + 'channel_pc' => '电脑端', + 'channel_app' => 'APP', + + ], + //会员提现 + 'dict_member_cash_out' => [ + //状态 + 'status_wait_audit' => '待审核', + 'status_wait_transfer' => '待转账', + 'status_transfered' => '已转账', + 'status_refuse' => '已拒绝', + 'status_cancel' => '已取消' + + ], + //插件操作 + 'dict_addon' => [ + //状态 + 'install' => '安装', + 'uninstall' => '卸载', + 'update' => '更新', + 'status_on' => '启用', + 'status_off' => '关闭', + + 'type_app' => '应用', + 'type_addon' => '插件', + + 'install_after_admin_update' => '该插件admin端引用了新的依赖需在项目根目录下admin目录执行 npm install 更新依赖', + 'install_after_composer_update' => '该插件引用了新的composer依赖需在项目根目录下niucloud目录执行 composer update 更新依赖', + 'install_after_wap_update' => '该插件wap端引用了新的依赖需在项目根目录下uni-app目录执行 npm install 更新依赖', + 'install_after_web_update' => '该插件web端引用了新的依赖需在项目根目录下web目录执行 npm install 更新依赖', + 'install_after_update' => '本地安装成功后会将admin,web,wap端的插件代码进行安装,但是不会进行编译,请手动编译对应admin,web,wap端的代码', + ], + // 退款支付状态 + 'dict_pay_refund' => [ + 'success' => '退款成功', + 'dealing' => '退款中', + 'wait' => '待退款', + 'fail' => '退款失败', + 'wechatpay' => '微信原路退款', + 'alipay' => '支付宝原路退款', + 'unipay' => '银联原路退款', + 'offline' => '线下退款', + 'balance' => '退款到余额', + 'back' => '原路退款', + 'status_success' => '退款成功', + 'status_dealing' => '退款中', + 'status_wait' => '待退款', + 'status_fail' => '退款失败', + ], + 'dict_order_refund' => [ + 'refunding' => '退款中', + 'refund_complete' => '退款完成', + 'refund_fail' => '退款失败' + ], + 'dict_app_manage' => [ + 'system_app' => '基础应用', + 'message_manage' => '消息管理', + ], + 'dict_setting' => [ + 'server_system' => '服务器系统', + 'server_setting' => '服务器web环境', + 'php_version' => 'PHP版本', + 'mysql_version' => 'mysql版本', + 'php_ask' => '大于等于8.0.0', + 'mysql_ask' => '大于等于5.7', + 'php_authority_ask' => '开启', + 'file_authority_ask' => '可读可写' + ], + //日期 + 'dict_date' => [ + //星期 + 'mon' => '周一', + 'tue' => '周二', + 'wed' => '周三', + 'thur' => '周四', + 'fri' => '周五', + 'sat' => '周六', + 'sun' => '周日', + //月份 + 'jan' => '1月', + 'feb' => '2月', + 'mar' => '3月', + 'apr' => '4月', + 'may' => '5月', + 'jun' => '6月', + 'jul' => '7月', + 'aug' => '8月', + 'sept' => '9月', + 'oct' => '10月', + 'nov' => '11月', + 'dec' => '12月', + + ], + 'dict_site_layout' => [ + 'default' => '默认' + ], + 'dict_cloud_applet' => [ + 'uploading' => '上传中', + 'upload_success' => '上传成功', + 'upload_fail' => '上传失败', + ] +]; diff --git a/niucloud/app/lang/zh-cn/validate.php b/niucloud/app/lang/zh-cn/validate.php new file mode 100644 index 0000000..073407e --- /dev/null +++ b/niucloud/app/lang/zh-cn/validate.php @@ -0,0 +1,190 @@ + [ + 'menu_name_require' => '菜单名称必须填写', + 'router_path_requireif' => '路由地址必须填写', + 'view_path_requireif' => '菜单路径必须填写', + 'methods_requirewith' => '请求类型必须填写', + 'not_exit_menu_type' => '不存在的菜单类型', + 'not_exit_request_type' => '不存在的菜单类型', + 'exit_menu_key' => '菜单key不可重复' + ], + //角色 + 'validate_role' => [ + 'role_name_require' => '角色名称必须填写', + ], + 'validate_page' => [ + 'page_error' => 'page必须是正整数', + 'limit_number' => 'limit必须是正整数', + 'limit_between' => 'limit必须是正整数并且不能超过120', + ], + 'validate_user' => [ + 'username_require' => '用户名必须填写', + 'username_unique' => '用户名必须是惟一的', + 'username_max' => '用户名最多不能超过15个字符', + 'real_name_require' => '实际姓名必须填写', + 'password_require' => '用户密码必须填写', + ], + //站点 + 'validate_site' => [ + 'site_name_require' => '网站名称必须填写', + 'site_name_max' => '网站名称最多不能超过20个字符', + 'keywords_require' => '关键字必须填写', + 'keywords_max' => '关键字最多不能超过30个字符', + 'group_id_require' => '站点分组必须填写', + 'group_id_number' => '站点分组必须是整数', + 'expire_time_number' => '到期时间必须是时间戳', + 'group_name_require' => '站点分组名称必须填写', + 'group_name_max' => '站点分组名称不能超过20字符', + 'app_require' => '套餐主应用必须选择', + 'front_end_name_require' => '前台名称必须填写', + 'front_end_name_max' => '前台名称最多不能超过20个字符', + ], + //附件 + 'validate_attachment' => [ + 'name_require' => '附件组名称必须填写', + 'not_exit_type' => '请选择有效的附件分组类型', + ], + 'validate_member' => [ + 'username_require' => '账号必须填写', + 'username_is_exist' => '账号已存在', + 'password_require' => '密码必须填写', + 'nickname_require' => '会员昵称必须填写', + 'nickname_max' => '昵称不能超过30个字符', + 'username_max' => '用户名不能超过30个字符', + 'mobile_require' => '手机号必须填写', + 'mobile_mobile' => '手机号格式错误', + 'sex_bot_exist' => '不存在的性别', + 'label_name_require' => '会员标签必须填写', + 'birthday_format' => '生日日期格式有误', + 'label_name_max' => '会员标签不能超过30个字符', + 'memo_max' => '备注不能超过200个字符', + 'sort_number' => '排序号必须是数字', + 'is_username_number' => '用户名密码登录参数必须是整数', + 'is_username_between' => '用户名密码登录参数必须是0或1', + 'is_mobile_number' => '手机验证码登录参数必须是整数', + 'is_mobile_between' => '手机验证码登录参数必须是0或1', + 'is_auth_register_number' => '第三方自动注册参数必须是整数', + 'is_auth_register_between' => '第三方自动注册参数必须是0或1', + 'is_bind_mobile_number' => '强制绑定手机参数必须是整数', + 'is_bind_mobile_between' => '强制绑定手机参数必须是0或1', + 'cash_out_is_open_in' => '是否启用必须是0或者1', + 'cash_out_min_min' => '最小提现金额必须是正数', + 'cash_out_rate_between' => '提现手续费必须是0到100之间', + 'cash_out_is_auto_verify_in' => '是否启用审核必须是0或1', + 'cash_out_is_auto_transfer_in' => '是否启用转账必须是0或1', + 'status_require' => '会员状态必须填写', + 'not_exit_status' => '不存在的会员状态', + 'username_cannot_pure_number' => '账号不能是纯数字' + ], + 'validate_member_config' => [ + 'length_number' => '会员编码必须是整数', + 'length_min' => '会员编码长度不能小于10', + 'length_max' => '会员编码长度不能大于于20', + 'length_between' => '会员编码长度去除前缀后最少不能低于4位,最多不能超过30位', + ], + 'validate_article' => [ + 'title_require' => '文章标题必须填写', + 'title_max' => '文章标题不能超过20个字符', + 'intro_max' => '文章简介不能超过50个字符', + 'summary_max' => '文章摘要不能超过50个字符', + 'image_max' => '图片路径太长', + 'author_max' => '文章作者不能超过20个字符', + 'is_show_number' => '是否显示必须是数字', + 'is_show_between' => '是否显示只能是0或者1', + 'sort_number' => '排序号必须是数字', + 'sort_between' => '排序号不能超过10000', + 'cate_name_require' => '栏目名称必须填写', + 'cate_name_max' => '栏目不能超过20个字符', + 'category_id_require' => '文章栏目必须填写', + 'category_id_num' => '文章栏目必须是整数', + 'content_require' => '文章内容必须填写', + ], + 'validate_generate' => [ + 'id_require' => '请传入正确的数据' + ], + //支付验证相关 + 'validate_pay' => [ + //支付宝 + 'app_id_requireif' => '请填写支付宝分配的app_id', + 'app_secret_cert_requireif' => '请填写应用私钥', + 'app_public_cert_path_requireif' => '请填写应用公钥证书', + 'alipay_public_cert_path_requireif' => '请填写支付宝公钥证书', + 'alipay_root_cert_path_requireif' => '请填写支付宝根证书', + //微信 + 'mch_id_requireif' => '请填写商户号', + 'mch_secret_key_requireif' => '请填写商户秘钥', + 'mch_secret_cert_requiremch_secret_cert_requireif' => '请填写商户私钥', + 'mch_public_cert_path_requireif' => '请填写商户公钥证书路径', + + 'not_exit_pay_type' => '不存在的支付类型', + 'name_require' => '模板名称不能为空', + ], + 'validate_agreement' => [ + 'title_require' => '协议标题必须填写', + 'content_require' => '协议内容必须填写', + 'title_max' => '协议标题不能超过20个字符', + ], + 'validate_generator' => [ + 'table_name_require' => '表名称必须填写', + 'table_name_max' => '表名称不能超过64个字符', + 'table_content_require' => '描述必须填写', + 'table_content_max' => '描述不能超过64个字符' + ], + //微信公众号 + 'validate_wechat' => [ + 'appid_require' => 'appid必须填写', + 'appsecret_require' => 'appsecret必须填写', + ], + //微信小程序 + 'validate_weapp' => [ + 'appid_require' => 'appid必须填写', + 'appsecret_require' => 'appsecret必须填写', + ], + //会员提现配置 + 'validate_member_cash_out_config' => [ + 'transfer_type_require' => '至少需选择一种转账方式', + ], + // 自定义 + 'validate_diy' => [ + 'type_not_exist' => '不存在的页面模板', + ], + // 会员提现账号 + 'validate_member_cash_out_account' => [ + 'not_support_transfer_type' => '不支持的提现方式', + 'bank_name_require' => '银行名称必须填写', + 'account_no_require' => '账号必须填写', + 'realname_require' => '真实姓名必须填写', + ], + // 会员提现 + 'validate_member_cash_out' => [ + 'apply_money_min' => '提现金额需大于0元', + 'not_support_account_type' => '该账户不支持提现', + 'not_support_transfer_type' => '不支持该提现方式', + 'account_id_require' => '请选择提现账户' + ], + //计划任务 + 'validate_schedule' => [ + 'schedule_require' => '计划任务必须选择', + 'schedule_unique' => '当前计划任务已存在', + 'not_exit_schedule_type' => '不是有效的任务类型', + ], + //插件 + 'validate_addon' => [ + 'key_require' => '插件标识不能为空', + 'type_require' => '请选择插件类型', + 'not_exit_type' => '无效的插件类型', + 'key_regex' => '插件标识格式有误', + ] +]; diff --git a/niucloud/app/listener/applet/WeappListener.php b/niucloud/app/listener/applet/WeappListener.php new file mode 100644 index 0000000..4925111 --- /dev/null +++ b/niucloud/app/listener/applet/WeappListener.php @@ -0,0 +1,45 @@ + 'utils/request.js', + 'variable' => [ + '{{$baseUrl}}' => (string)url('/api/', [], '', true), + '{{$siteId}}' => $site_id + ], + ], + [ + 'path' => 'utils/common.js', + 'variable' => [ + '{{$imgUrl}}' => (string)url('/', [], '', true), + ], + ] + ]; + } + } +} \ No newline at end of file diff --git a/niucloud/app/listener/job/QueueFailedLoggerListener.php b/niucloud/app/listener/job/QueueFailedLoggerListener.php new file mode 100644 index 0000000..c25c163 --- /dev/null +++ b/niucloud/app/listener/job/QueueFailedLoggerListener.php @@ -0,0 +1,29 @@ + $job->getName(), + 'queueName' => $job->getQueue(), + 'jobData' => $job->getRawBody()['data'], + 'attempts' => $job->attempts(), + ]; + var_export(json_encode($failedJobLog, true)); + // $job->release(); //重发任务 + $job->delete(); //删除任务 + //$job->failed(); //通知消费者类任务执行失败 + return self::SHOULD_RUN_HOOK_CALLBACK; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/member/MemberAccountListener.php b/niucloud/app/listener/member/MemberAccountListener.php new file mode 100644 index 0000000..179980d --- /dev/null +++ b/niucloud/app/listener/member/MemberAccountListener.php @@ -0,0 +1,30 @@ + 0) {//查询openid + $info = (new CoreMemberService())->getInfoByMemberId($site_id, $member_id); + $mobile = $info['mobile'] ?? ''; + $nickname = $info['nickname'] ?? ''; + } + } + + try { + if (empty($mobile)) throw new NoticeException('NOTICE_SMS_EMPTY');//没有手机号不能发送短信 + $core_sms_service = new CoreSmsService(); + //消息日志 + $log_data = array( + 'key' => $key, + 'notice_type' => NoticeTypeDict::SMS, + 'uid' => $uid ?? 0, + 'member_id' => $member_id ?? 0, + 'nickname' => $nickname ?? '', + 'receiver' => $mobile, + 'params' => $data, + 'content' => $content, + 'result' => '' + ); + $core_sms_service->send($site_id, $mobile, $vars, $key, $sms_id, $content); + (new CoreNoticeLogService())->add($site_id, $log_data); + } catch ( NoticeException $e ) { + $log_data['result'] = $e->getMessage(); + (new CoreNoticeLogService())->add($site_id, $log_data); + //这儿决定要不要抛出 + if (!$template['async']) { + throw new NoticeException($e->getMessage()); + } + } + } else { + if (!$template['async']) { + throw new NoticeException('NOTICE_NOT_OPEN_SMS'); + } + } + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/notice/Weapp.php b/niucloud/app/listener/notice/Weapp.php new file mode 100644 index 0000000..13ae7d3 --- /dev/null +++ b/niucloud/app/listener/notice/Weapp.php @@ -0,0 +1,75 @@ + 0) {//查询openid + $info = (new CoreMemberService())->getInfoByMemberId($site_id, $member_id); + $openid = $info['weapp_openid'] ?? ''; + $nickname = $info['nickname'] ?? ''; + } + if (!empty($openid)) { + $weapp_template_id = $template['weapp_template_id']; + $weapp = $template['weapp']; + $weapp_content = $weapp['content']; + $weapp_data = []; + foreach ($weapp_content as $k => $v) { + $search_content = $v[1]; + foreach ($vars as $item_k => $item_v) { + $search_content = str_replace('{' . $item_k . '}', $item_v, $search_content); + } + $weapp_data[$v[2]]['value'] = $search_content; + } + $url = $vars['__weapp_page'] ?? ''; + $log_data = array( + 'key' => $key, + 'notice_type' => NoticeTypeDict::WEAPP, + 'uid' => $data['uid'] ?? 0, + 'member_id' => $member_id, + 'nickname' => $nickname ?? '', + 'receiver' => $openid, + 'params' => $data, + 'content' => $weapp + ); + try { + (new TemplateLoader(NoticeTypeDict::WEAPP, ['site_id' => $site_id]))->send( + [ + 'template_id' => $weapp_template_id, + 'data' => $weapp_data, + 'openid' => $openid, + 'page' => $url, + ]); + (new CoreNoticeLogService())->add($site_id, $log_data); + } catch ( NoticeException $e ) { + $log_data['result'] = $e->getMessage(); + (new CoreNoticeLogService())->add($site_id, $log_data); + //这儿决定要不要抛出 + if (!$template['async']) { + throw new NoticeException($e->getMessage()); + } + } + } + } + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/notice/Wechat.php b/niucloud/app/listener/notice/Wechat.php new file mode 100644 index 0000000..658938b --- /dev/null +++ b/niucloud/app/listener/notice/Wechat.php @@ -0,0 +1,100 @@ + 0) {//查询openid + $info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id); + $openid = $info[ 'wx_openid' ] ?? ''; + $nickname = $info[ 'nickname' ] ?? ''; + } + //或者还有用户的 + if (!empty($openid)) { + $wechat_template_id = $template[ 'wechat_template_id' ]; + $wechat = $template[ 'wechat' ]; + $wechat_content = $wechat[ 'content' ]; + $wechat_data = []; + foreach ($wechat_content as $k => $v) { + $search_content = $v[ 1 ]; + foreach ($vars as $item_k => $item_v) { + $search_content = str_replace('{' . $item_k . '}', $item_v, $search_content); + } + $wechat_data[ $v[ 2 ] ] = $search_content; + } + $first = $wechat[ 'wechat_first' ] ?? ''; + $remark = $wechat[ 'wechat_remark' ] ?? ''; + if (!empty($first)) $vars[ 'first' ] = $first; + if (!empty($remark)) $vars[ 'remark' ] = $remark; + //todo 拼装h5端的链接 + $url = $vars[ '__wechat_page' ] ?? ''; + //消息日志 + $log_data = array ( + 'key' => $key, + 'notice_type' => NoticeTypeDict::WECHAT, + 'uid' => $data[ 'uid' ] ?? 0, + 'member_id' => $member_id, + 'nickname' => $nickname ?? '', + 'receiver' => $openid, + 'params' => $vars, + 'content' => $wechat + ); + + $weapp_page = $vars[ '__weapp_page' ] ?? ''; + if (!empty($weapp_page)) { + $appid = ( new CoreWeappConfigService() )->getWeappConfig($site_id)[ 'app_id' ] ?? ''; + if (!empty($appid)) { + $miniprogram = array ( + 'appid' => $appid, + 'pagepath' => $weapp_page + ); + } + } + try { + $send_data = [ + 'template_id' => $wechat_template_id, + 'first' => $remark, + 'remark' => $remark, + 'data' => $wechat_data, + 'openid' => $openid, + 'url' => $url, + ]; + if (!empty($miniprogram)) { + $send_data[ 'miniprogram' ] = $miniprogram; + } + ( new TemplateLoader(NoticeTypeDict::WECHAT, [ 'site_id' => $site_id ]) )->send($send_data); + ( new CoreNoticeLogService() )->add($site_id, $log_data); + } catch (NoticeException $e) { + $log_data[ 'result' ] = $e->getMessage(); + ( new CoreNoticeLogService() )->add($site_id, $log_data); + //这儿决定要不要抛出 + if (!$template[ 'async' ]) { + throw new NoticeException($e->getMessage()); + } + } + } + } + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/notice_template/BaseNoticeTemplate.php b/niucloud/app/listener/notice_template/BaseNoticeTemplate.php new file mode 100644 index 0000000..f3b4f0c --- /dev/null +++ b/niucloud/app/listener/notice_template/BaseNoticeTemplate.php @@ -0,0 +1,19 @@ + $vars, + 'to' => $to, + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/notice_template/MemberVerifySuccess.php b/niucloud/app/listener/notice_template/MemberVerifySuccess.php new file mode 100644 index 0000000..beae9c8 --- /dev/null +++ b/niucloud/app/listener/notice_template/MemberVerifySuccess.php @@ -0,0 +1,30 @@ +key == $params['key']) { + $data = $params['data']; + return $this->toReturn( + [ + 'code' => $data['code'], + ], + [ + 'mobile' => $data['mobile'], + ] + ); + } + + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/notice_template/RechargeSuccess.php b/niucloud/app/listener/notice_template/RechargeSuccess.php new file mode 100644 index 0000000..41d9d20 --- /dev/null +++ b/niucloud/app/listener/notice_template/RechargeSuccess.php @@ -0,0 +1,45 @@ +key == $params[ 'key' ]) { + $data = $params[ 'data' ]; + $site_id = $params[ 'site_id' ]; + $order_id = $data[ 'order_id' ]; + + $core_order_service = new CoreRechargeOrderService(); + $order = $core_order_service->orderInfo($site_id, $order_id); + if (!empty($order)) { + $member = ( new CoreMemberService() )->getInfoByMemberId($site_id, $order[ 'member_id' ]); + //通过订单id查询订单信息 + return $this->toReturn( + [ + '__wechat_page' => '',//模板消息链接 + '__miniprogram' => '',//模板消息小程序 + '__weapp_page' => '',//小程序链接 + 'balance' => $member[ 'balance' ],//充值后的余额 + 'price' => $order[ 'order_item_money' ],//订单项总价 + 'time' => $order[ 'create_time' ],//创建时间 + 'trade_no' => $order[ 'out_trade_no' ],//交易流水号 + ], + [ + 'member_id' => $order[ 'member_id' ], + ] + ); + } + + } + + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/notice_template/VerifyCode.php b/niucloud/app/listener/notice_template/VerifyCode.php new file mode 100644 index 0000000..d50dbc2 --- /dev/null +++ b/niucloud/app/listener/notice_template/VerifyCode.php @@ -0,0 +1,31 @@ + '验证码' +// ); + private $key = 'verify_code'; +// private $title = ''; +// public $name = ''; + public function handle(array $params) + { + if ($this->key == $params['key']) { + $data = $params['data']; + return $this->toReturn( + [ + 'code' => $data['code'], + ], + [ + 'mobile' => $data['mobile'], + ] + ); + } + } + +} \ No newline at end of file diff --git a/niucloud/app/listener/pay/PayCreateListener.php b/niucloud/app/listener/pay/PayCreateListener.php new file mode 100644 index 0000000..2b9a9d5 --- /dev/null +++ b/niucloud/app/listener/pay/PayCreateListener.php @@ -0,0 +1,45 @@ +orderInfo($site_id, $trade_id); + if ($order_info['order_status'] != RechargeOrderDict::WAIT_PAY) throw new CommonException('ONLY_PAYING_CAN_PAY'); + //添加订单支付表 + return [ + 'site_id' => $order_info['site_id'], + 'main_type' => PayDict::MEMBER, + 'main_id' => $order_info['member_id'],//买家id + 'money' => $order_info['order_money'],//订单金额 + 'trade_type' => 'recharge',//业务类型 + 'trade_id' => $trade_id, + 'body' => get_lang("dict_order.trade_type_recharge") + ]; + } + + + } +} \ No newline at end of file diff --git a/niucloud/app/listener/pay/PayNotifyListener.php b/niucloud/app/listener/pay/PayNotifyListener.php new file mode 100644 index 0000000..aa82fbe --- /dev/null +++ b/niucloud/app/listener/pay/PayNotifyListener.php @@ -0,0 +1,25 @@ +pay($pay_info); + } + //账单记录添加 + (new CoreSiteAccountService())->addPayLog($pay_info); + + } +} \ No newline at end of file diff --git a/niucloud/app/listener/pay/RefundSuccessListener.php b/niucloud/app/listener/pay/RefundSuccessListener.php new file mode 100644 index 0000000..0a64867 --- /dev/null +++ b/niucloud/app/listener/pay/RefundSuccessListener.php @@ -0,0 +1,33 @@ +addRefundLog($refund_info['site_id'], $refund_info['refund_no']); + //交易单据处理 + $trade_type = $refund_info['trade_type'] ?? ''; + if ($trade_type == 'recharge') { + (new CoreRechargeRefundService())->refundComplete($refund_info['refund_no']); + } + + } +} \ No newline at end of file diff --git a/niucloud/app/listener/pay/TransferSuccessListener.php b/niucloud/app/listener/pay/TransferSuccessListener.php new file mode 100644 index 0000000..077253a --- /dev/null +++ b/niucloud/app/listener/pay/TransferSuccessListener.php @@ -0,0 +1,32 @@ +addTransferLog($info['site_id'], $info['transfer_no']); + //会员零钱提现 + if ($info['trade_type'] == CashOutTypeDict::MEMBER_CASH_OUT) { + return (new CoreMemberCashOutService())->transferFinish($info['site_id'], $info['transfer_no']); + } + } +} \ No newline at end of file diff --git a/niucloud/app/listener/scan/ScanListener.php b/niucloud/app/listener/scan/ScanListener.php new file mode 100644 index 0000000..f746ee7 --- /dev/null +++ b/niucloud/app/listener/scan/ScanListener.php @@ -0,0 +1,44 @@ +login($data['openid']); + $data['status'] = ScanDict::SUCCESS; + } catch ( Throwable $e ) { + $data['status'] = ScanDict::FAIL; + $data['fail_reason'] = get_lang($e->getMessage()); + } + unset($data['openid']); + break; + } + + return $data; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/site/AddSiteAfterListener.php b/niucloud/app/listener/site/AddSiteAfterListener.php new file mode 100644 index 0000000..c8901a0 --- /dev/null +++ b/niucloud/app/listener/site/AddSiteAfterListener.php @@ -0,0 +1,150 @@ +siteId($site_id); + + $count = count($params[ 'main_app' ]); + $addon = array_merge([ '' ], $params[ 'main_app' ]); + + foreach ($addon as $k => $v) { + if ($count > 1) { + // 站点多应用,使用系统的页面 + if ($k == 0) { + $is_start = 1; + } else { + $is_start = 0; + } + } else { + // 站点单应用,将应用的设为使用中 + if ($k == 0) { + $is_start = 0; + } else { + $is_start = 1; + } + } + + // 设置 首页 默认模板 + $this->setDiyData([ + 'key' => 'DIY_INDEX', + 'type' => 'index', + 'addon' => $v, + 'is_start' => $is_start, + 'site_id' => $site_id + ]); + + // 设置 个人中心 默认模板 + $this->setDiyData([ + 'key' => 'DIY_MEMBER_INDEX', + 'type' => 'member_index', + 'addon' => $v, + 'is_start' => $is_start, + 'site_id' => $site_id + ]); + } + + } + + /** + * 设置 首页/个人中心 的第一个模板 设置为启动页 + * @param $params + */ + private function setDiyData($params) + { + $addon = $params[ 'addon' ] ?? ''; + $addon_flag = $params[ 'key' ]; + + // 默认 + $default_template = TemplateDict::getTemplate([ + 'key' => [ $params[ 'key' ] ] + ]); + + $addon_template_info = array_shift($default_template); + + // 查询插件定义的页面类型 + $addon_template = TemplateDict::getTemplate([ + 'type' => $params[ 'type' ], + 'addon' => $addon + ]); + + if (!empty($addon_template)) { + $addon_flag = array_keys($addon_template)[ 0 ]; + $addon_template_info = array_shift($addon_template); + } + + $diy_service = new DiyService(); + $addon_index_template = $diy_service->getFirstPageData($addon_flag, $addon); + + if (!empty($addon_index_template)) { + + $diy_service->add([ + "title" => $addon_index_template[ 'title' ], + "name" => $addon_flag, + "type" => $addon_flag, + "template" => $addon_index_template[ 'template' ], + "mode" => $addon_index_template[ 'mode' ], + "value" => json_encode($addon_index_template[ 'data' ]), + "is_default" => 1, + "is_change" => 0 + ]); + + $diy_page_list = $diy_service->getList([ + [ 'site_id', '=', $params[ 'site_id' ] ], + [ 'type', '=', $params[ 'key' ] ] + ], 'id,name,type'); + + // 多应用时,将首页和个人中心设为系统的 + foreach ($diy_page_list as $k => $v) { + if ($v[ 'name' ] == $params[ 'key' ]) { + $diy_service->setUse($v[ 'id' ]); + break; + } + } + + if ($params[ 'is_start' ] == 1) { + // 查询链接,设置启动页 + $other_page = (new DiyRouteService())->getList([ 'url' => $addon_template_info[ 'page' ], 'addon' => $addon ]); + if (!empty($other_page)) { + + $diy_service->changeTemplate([ + 'type' => $params[ 'key' ], // 页面类型 + 'name' => $other_page[ 0 ][ 'name' ], // 链接名称标识 + 'parent' => $other_page[ 0 ][ 'parent' ], // 链接父级名称标识 + 'page' => $other_page[ 0 ][ 'page' ], // 链接路由 + 'title' => $other_page[ 0 ][ 'title' ], // 链接标题 + 'action' => $other_page[ 0 ][ 'action' ] // 是否存在操作,decorate 表示支持装修 + ]); + + } + + } + + } + } +} diff --git a/niucloud/app/listener/system/AdminIndexListener.php b/niucloud/app/listener/system/AdminIndexListener.php new file mode 100644 index 0000000..bd84e1b --- /dev/null +++ b/niucloud/app/listener/system/AdminIndexListener.php @@ -0,0 +1,30 @@ + get_lang("dict_admin_index.system"), + "view_path" => "index/index" + ] + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/system/AppInitListener.php b/niucloud/app/listener/system/AppInitListener.php new file mode 100644 index 0000000..a35482d --- /dev/null +++ b/niucloud/app/listener/system/AppInitListener.php @@ -0,0 +1,26 @@ + [ + + [ + "key" => "basic", + "name" => get_lang('dict_app_manage.system_app'), + "sort" => 10 + ] + ], + [ + "addon" => "", + "title" => get_lang('dict_app_manage.message_manage'), + "category" => "basic", + "desc" => get_lang('dict_app_manage.message_manage'), + "icon" => "static/resource/images/app/message_icon.png", + "cover" => "static/resource/images/app/message_cover.png", + "url" => "/setting/notice/template" + ], + [ + "addon" => "", + "title" => get_lang('dict_app_manage.member_recharge'), + "category" => "basic", + "desc" => get_lang('dict_app_manage.member_recharge'), + "icon" => "static/resource/images/app/recharge_icon.png", + "cover" => "static/resource/images/app/recharge_cover.png", + "url" => "/order/recharge/order" + ], + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/system/BottomNavigationListener.php b/niucloud/app/listener/system/BottomNavigationListener.php new file mode 100644 index 0000000..8f365c9 --- /dev/null +++ b/niucloud/app/listener/system/BottomNavigationListener.php @@ -0,0 +1,68 @@ + '系统', + ]; + return [ + 'key' => $key, + 'info' => $addon_info, + 'value' => [ + 'backgroundColor' => '#ffffff', + 'textColor' => '#606266', + 'textHoverColor' => '#007aff', + 'type' => '1', + 'list' => [ + [ + "text" => "首页", + "link" => [ + "parent" => "SYSTEM_LINK", + "name" => "INDEX", + "title" => "首页", + "url" => "/app/pages/index/index" + ], + "iconPath" => "static/resource/images/tabbar/index.png", + "iconSelectPath" => "static/resource/images/tabbar/index-selected.png" + ], + [ + "text" => "我的", + "link" => [ + "parent" => "MEMBER_LINK", + "name" => "MEMBER_CENTER", + "title" => "个人中心", + "url" => "/app/pages/member/index" + ], + "iconPath" => "static/resource/images/tabbar/my.png", + "iconSelectPath" => "static/resource/images/tabbar/my-selected.png" + ] + ] + ] + ]; + } +} diff --git a/niucloud/app/listener/system/SiteIndexListener.php b/niucloud/app/listener/system/SiteIndexListener.php new file mode 100644 index 0000000..114276e --- /dev/null +++ b/niucloud/app/listener/system/SiteIndexListener.php @@ -0,0 +1,30 @@ + get_lang("dict_site_index.system"), + "view_path" => "index/site_index" + ] + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/listener/system/SiteLayout.php b/niucloud/app/listener/system/SiteLayout.php new file mode 100644 index 0000000..8761e3f --- /dev/null +++ b/niucloud/app/listener/system/SiteLayout.php @@ -0,0 +1,30 @@ + get_lang("dict_site_layout.default"), + "key" => "default", + "image" => "static/resource/images/system/layout-default.png", + "sort" => 0 + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/middleware.php b/niucloud/app/middleware.php new file mode 100644 index 0000000..6a45733 --- /dev/null +++ b/niucloud/app/middleware.php @@ -0,0 +1,14 @@ + 'timestamp', + ]; + /** + * 数据表主键 + * @var string + */ + protected $pk = 'id'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'addon'; + + + /** + * 状态名称 + * @param $value + * @param $data + * @return mixed|string + */ + public function getStatusNameAttr($value, $data) + { + return AddonDict::getStatus()[$data['status']] ?? ''; + } + /** + * logo图 + * @param $value + * @param $data + * @return string + */ + public function getIconAttr($value, $data) + { + return addon_resource($data['key'], 'icon.png'); + } + /** + * 封面图 + * @param $value + * @param $data + * @return string + */ + public function getCoverAttr($value, $data) + { + return addon_resource($data['key'], 'cover.png'); + } + + /** + * 插件名称搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchTitleAttr($query, $value, $data) + { + if ($value) { + $query->whereLike('title', '%' . $value . '%'); + } + } + +} diff --git a/niucloud/app/model/addon/AddonLog.php b/niucloud/app/model/addon/AddonLog.php new file mode 100644 index 0000000..a7f4d6a --- /dev/null +++ b/niucloud/app/model/addon/AddonLog.php @@ -0,0 +1,31 @@ +hasOne(AppletVersion::class, 'id', 'version_id')->joinType('left') + ->withField('desc, status, version, version_num, release_version') + ->bind(['desc', 'status', 'version', 'version_num', 'release_version']); + } +} diff --git a/niucloud/app/model/applet/AppletVersion.php b/niucloud/app/model/applet/AppletVersion.php new file mode 100644 index 0000000..408109e --- /dev/null +++ b/niucloud/app/model/applet/AppletVersion.php @@ -0,0 +1,35 @@ + 'json' + ]; + + // 设置json类型字段 + protected $json = ['dictionary']; + // 设置JSON数据返回数组 + protected $jsonAssoc = true; + + /** + * 搜索器:数据字典字典名称 + * @param $value + * @param $data + */ + public function searchNameAttr($query, $value, $data) + { + if ($value) { + $query->where("name", $value); + } + } + + /** + * 搜索器:数据字典字典关键词 + * @param $value + * @param $data + */ + public function searchKeyAttr($query, $value, $data) + { + if ($value) { + $query->where("key", $value); + } + } + + + + +} diff --git a/niucloud/app/model/diy/Diy.php b/niucloud/app/model/diy/Diy.php new file mode 100644 index 0000000..e1fe462 --- /dev/null +++ b/niucloud/app/model/diy/Diy.php @@ -0,0 +1,299 @@ + 'timestamp', + 'update_time' => 'timestamp', + ]; + + /** + * 数据表主键 + * @var string + */ + protected $pk = 'id'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'diy_page'; + + /** + * 状态字段转化:所属插件名称 + * @param $value + * @param $data + * @return string + */ + public function getAddonNameAttr($value, $data) + { + $addon_name = ''; + $template = TemplateDict::getTemplate([ + 'query' => 'addon' + ]); + foreach ($template as $k => $v) { + foreach ($v[ 'list' ] as $ck => $cv) { + if ($ck == $data[ 'type' ]) { + $addon_name = $v[ 'title' ]; + break; + } + } + } + return $addon_name; + } + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTypePageAttr($value, $data) + { + if (!empty($data[ 'type' ])) { + return TemplateDict::getTemplate([ 'key' => [ $data[ 'type' ] ] ])[ $data[ 'type' ] ][ 'page' ] ?? ''; + } + return ''; + } + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTypeNameAttr($value, $data) + { + if (!empty($data[ 'type' ])) { + return TemplateDict::getTemplate([ 'key' => [ $data[ 'type' ] ] ])[ $data[ 'type' ] ][ 'title' ] ?? ''; + } + return ''; + } + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTemplateNameAttr($value, $data) + { + if (!empty($data[ 'template' ])) { + $page = PagesDict::getPages([ 'type' => $data[ 'type' ] ])[ $data[ 'template' ] ][ 'title' ]; + return $page ?? ''; + } + return ''; + } + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getShareAttr($value, $data) + { + if (empty($data[ 'share' ])) { + $data[ 'share' ] = json_encode([ + 'wechat' => [ + 'title' => $data[ 'title' ], + 'desc' => '', + 'url' => '' + ], + 'weapp' => [ + 'title' => $data[ 'title' ], + 'url' => '' + ] + ]); + } + return $data[ 'share' ] ?? ''; + } + + /** + * 搜索器:自定义页面标识 + * @param $query + * @param $value + * @param $data + */ + public function searchAddonNameAttr($query, $value, $data) + { + if ($value) { + $list = []; + $template = TemplateDict::getTemplate([ + 'query' => 'addon' + ]); + foreach ($template as $k => $v) { + if ($k == $value) { + $list = array_keys($v[ 'list' ]); + } + } + $query->where("type", 'in', $list); + } + } + + /** + * 搜索器:自定义页面 + * @param $query + * @param $value + * @param $data + */ + public function searchIdAttr($query, $value, $data) + { + if ($value) { + $query->where("id", $value); + } + } + + /** + * 搜索器:自定义页面名称 + * @param $query + * @param $value + * @param $data + */ + public function searchTitleAttr($query, $value, $data) + { + if ($value) { + $query->where("title", 'like', '%' . $value . '%'); + } + } + + /** + * 搜索器:自定义页面标识 + * @param $query + * @param $value + * @param $data + */ + public function searchNameAttr($query, $value, $data) + { + if ($value) { + $query->where("name", $value); + } + } + + /** + * 搜索器:自定义页面模板 + * @param $query + * @param $value + * @param $data + */ + public function searchTypeAttr($query, $value, $data) + { + if ($value) { + $query->where("type", $value); + } + } + + /** + * 搜索器:页面展示模式,diy:自定义,fixed:固定 + * @param $query + * @param $value + * @param $data + */ + public function searchModeAttr($query, $value, $data) + { + if ($value) { + $query->where("mode", $value); + } + } + + /** + * 搜索器:自定义页面数据,json格式 + * @param $query + * @param $value + * @param $data + */ + public function searchValueAttr($query, $value, $data) + { + if ($value) { + $query->where("value", $value); + } + } + + /** + * 搜索器:自定义页面是否默认页面,1:是,0:否 + * @param $query + * @param $value + * @param $data + */ + public function searchIsDefaultAttr($query, $value, $data) + { + if ($value) { + $query->where("is_default", $value); + } + } + + /** + * 搜索器:自定义页面访问量 + * @param $query + * @param $value + * @param $data + */ + public function searchShareAttr($query, $value, $data) + { + if ($value) { + $query->where("share", $value); + } + } + + /** + * 搜索器:自定义页面访问量 + * @param $query + * @param $value + * @param $data + */ + public function searchVisitCountAttr($query, $value, $data) + { + if ($value) { + $query->where("visit_count", $value); + } + } + + /** + * 搜索器:自定义页面创建时间 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + if ($value) { + $query->where("create_time", $value); + } + } + + /** + * 搜索器:自定义页面更新时间 + * @param $query + * @param $value + * @param $data + */ + public function searchUpdateTimeAttr($query, $value, $data) + { + if ($value) { + $query->where("update_time", $value); + } + } + +} diff --git a/niucloud/app/model/diy/DiyRoute.php b/niucloud/app/model/diy/DiyRoute.php new file mode 100644 index 0000000..f0358f0 --- /dev/null +++ b/niucloud/app/model/diy/DiyRoute.php @@ -0,0 +1,115 @@ +where("id", $value); + } + } + + /** + * 搜索器:自定义路由表页面名称 + * @param $query + * @param $value + * @param $data + */ + public function searchTitleAttr($query, $value, $data) + { + if ($value) { + $query->where("title", $value); + } + } + + /** + * 搜索器:自定义路由表页面标识 + * @param $query + * @param $value + * @param $data + */ + public function searchNameAttr($query, $value, $data) + { + if ($value) { + $query->where("name", $value); + } + } + + /** + * 搜索器:自定义路由表页面路径 + * @param $query + * @param $value + * @param $data + */ + public function searchPageAttr($query, $value, $data) + { + if ($value) { + $query->where("page", $value); + } + } + + /** + * 搜索器:自定义路由表分享内容 + * @param $query + * @param $value + * @param $data + */ + public function searchShareAttr($query, $value, $data) + { + if ($value) { + $query->where("share", $value); + } + } + + /** + * 搜索器:自定义路由表是否支持分享 + * @param $query + * @param $value + * @param $data + */ + public function searchIsShareAttr($query, $value, $data) + { + if ($value) { + $query->where("is_share", $value); + } + } + +} diff --git a/niucloud/app/model/generator/GenerateColumn.php b/niucloud/app/model/generator/GenerateColumn.php new file mode 100644 index 0000000..6a66837 --- /dev/null +++ b/niucloud/app/model/generator/GenerateColumn.php @@ -0,0 +1,38 @@ +where('table_name', 'like', '%' . $value . '%'); + } + } + + /** + * 描述搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchTableContentAttr($query, $value, $data) + { + if ($value) { + $query->where('table_content', 'like', '%' . $value . '%'); + } + } + + /** + * 插件搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchAddonNameAttr($query, $value, $data) + { + if ($value) { + if($value == 2) + { + $query->where('addon_name','=',''); + }else{ + $query->where('addon_name', 'like', '%' . $value . '%'); + } + + } + } + + public function addon() + { + return $this->hasOne(Addon::class, 'key', 'addon_name')->joinType('left')->withField('key, title')->bind(['title' => 'title']); + } +} diff --git a/niucloud/app/model/member/Member.php b/niucloud/app/model/member/Member.php new file mode 100644 index 0000000..862f123 --- /dev/null +++ b/niucloud/app/model/member/Member.php @@ -0,0 +1,250 @@ + 'timestamp', + 'login_time' => 'timestamp', + 'last_consum_time' => 'timestamp', + ]; + /** + * 数据表主键 + * @var string + */ + protected $pk = 'member_id'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'member'; + + /** + * 定义软删除标记字段 + * @var string + */ + protected $deleteTime = 'delete_time'; + + /** + * 定义软删除字段的默认值 + * @var int + */ + protected $defaultSoftDelete = 0; + + // 设置json类型字段 + protected $json = ['member_label']; + // 设置JSON数据返回数组 + protected $jsonAssoc = true; + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) + return ''; + return MemberDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 注册来源字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getRegisterChannelNameAttr($value, $data) + { + if (empty($data['register_channel'])) + return ''; + return MemberRegisterChannelDict::getType()[$data['register_channel']] ?? ''; + } + + /** + * 注册方式字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getRegisterTypeNameAttr($value, $data) + { + if (empty($data['register_type'])) + return ''; + return MemberRegisterTypeDict::getType()[$data['register_type']] ?? ''; + } + + /** + * 登录渠道字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getLoginChannelNameAttr($value, $data) + { + if (empty($data['login_channel'])) + return ''; + return ChannelDict::getType()[$data['login_channel']] ?? ''; + } + + /** + * 登录方式字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getLoginTypeNameAttr($value, $data) + { + if (empty($data['login_type'])) + return ''; + return MemberLoginTypeDict::getType()[$data['login_type']] ?? ''; + } + + /** + * 性别名称 + * @param $value + * @param $data + * @return mixed|string + */ + public function getSexNameAttr($value, $data) + { + if (empty($data['sex'])) + return ''; + return CommonDict::getSexType()[$data['sex']] ?? ''; + } + + /** + * 是否删除搜索器 + * @param $query + */ + public function searchIsDelAttr($query) + { + $query->where('is_del', 0); + } + + /** + * 关键字搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchKeywordAttr($query, $value, $data) + { + if ($value) { + $query->where('member_no|username|nickname|mobile', 'like', '%' . $value . '%'); + } + } + + + /** + * 注册方式搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchRegisterTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('register_type', '=', $value); + } + } + + /** + * 注册渠道搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchRegisterChannelAttr($query, $value, $data) + { + if ($value) { + $query->where('register_channel', '=', $value); + } + } + + /** + * 标签筛选 + * @param Query $query + * @param $value + * @param $data + * @return void + */ + public function searchMemberLabelAttr(Query $query, $value, $data) + { + if ($value) { + $query->whereLike('member_label', '%"' . $value . '"%'); + } + } + + + /** + * 创建时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 创建时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchJoinCreateTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('member.create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['member.create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['member.create_time', '<=', $end_time]]); + } + } + + +} diff --git a/niucloud/app/model/member/MemberAccountLog.php b/niucloud/app/model/member/MemberAccountLog.php new file mode 100644 index 0000000..14d9bd4 --- /dev/null +++ b/niucloud/app/model/member/MemberAccountLog.php @@ -0,0 +1,206 @@ +hasOne(Member::class, 'member_id', 'member_id')->joinType('left') + ->withField('member_id,member_no, username, mobile, nickname, headimg') + ->bind(['username', 'mobile', 'nickname', 'headimg']); + } + + /** + * 会员关联 + * @return HasOne + */ + public function member() + { + return $this->hasOne(Member::class, 'member_id', 'member_id')->withField('member_id, member_no, username, mobile, nickname, headimg')->joinType('inner'); + } + + /** + * 获取account_data + * @param $value + * @param $data + * @return int + */ + public function getAccountDataAttr($value, $data) + { + if ($data['account_type'] == 'point' || $data['account_type'] == 'growth') + return (int)$data['account_data']; + else + return $data['account_data']; + } + + /** + * 获取account_sum + * @param $value + * @param $data + * @return int + */ + public function getAccountSumAttr($value, $data) + { + if ($data['account_type'] == 'point' || $data['account_type'] == 'growth') + return (int)$data['account_sum']; + else + return $data['account_sum']; + } + + /** + * 获取账户变动类型名称 + * @param $value + * @param $data + * @return array|mixed|string + */ + public function getFromTypeNameAttr($value, $data) + { + if (isset($data['from_type'], $data['account_type'])) + return MemberAccountChangeTypeDict::getType($data['account_type'])[$data['from_type']]['name']; + else + return ''; + } + + /** + * 会员搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('member_id', $value); + } + } + + /** + * 会员搜索(用于关联表查询) + * @param $query + * @param $value + * @param $data + */ + public function searchJoinMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('member_account_log.member_id', $value); + } + } + + /** + * 类型搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchFromTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('from_type', $value); + } + } + + /** + * 账户类型搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchAccountTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('account_type', $value); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 创建关联表时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchJoinCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('member_account_log.create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['member_account_log.create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['member_account_log.create_time', '<=', $end_time]]); + } + } + + +} diff --git a/niucloud/app/model/member/MemberAddress.php b/niucloud/app/model/member/MemberAddress.php new file mode 100644 index 0000000..b02e7f5 --- /dev/null +++ b/niucloud/app/model/member/MemberAddress.php @@ -0,0 +1,47 @@ +where("type", $value); + } + } +} diff --git a/niucloud/app/model/member/MemberCashOut.php b/niucloud/app/model/member/MemberCashOut.php new file mode 100644 index 0000000..1848ea4 --- /dev/null +++ b/niucloud/app/model/member/MemberCashOut.php @@ -0,0 +1,254 @@ + 'timestamp', + 'transfer_time' => 'timestamp', + ]; + + /** + * 会员信息 + * @return HasOne + */ + public function memberInfo() + { + return $this->hasOne(Member::class, 'member_id', 'member_id')->joinType('left') + ->withField('member_id, member_no, username, mobile, nickname, headimg') + ->bind(['username', 'mobile', 'nickname', 'headimg', 'member_no']); + } + + /** + * 会员信息关联列表查询 + * @return HasOne + */ + public function member() + { + return $this->hasOne(Member::class, 'member_id', 'member_id')->joinType('left'); + } + + /** + * 转账信息 + * @return HasOne + */ + public function transfer() + { + return $this->hasOne(Transfer::class, 'transfer_no', 'transfer_no')->joinType('left') + ->withField('transfer_no, transfer_type, transfer_realname, transfer_mobile, transfer_bank, transfer_account, transfer_voucher, transfer_remark, transfer_fail_reason, transfer_status')->append(['transfer_status_name', 'transfer_type_name']); + } + + /** + * 账户类型名称 + * @param $value + * @param $data + * @return mixed|string + */ + public function getAccountTypeNameAttr($value, $data) + { + if (empty($data['account_type'])) + return ''; + return MemberAccountTypeDict::getType()[$data['account_type']] ?? ''; + } + + /** + * 提现状态名称 + * @param $value + * @param $data + * @return mixed|string + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) + return ''; + return MemberCashOutDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 转账方式名称 + * @param $value + * @param $data + * @return array|mixed|string + */ + public function getTransferTypeNameAttr($value, $data) + { + if (empty($data['transfer_type'])) + return ''; + $temp = TransferDict::getTransferType()[$data['transfer_type']] ?? []; + return $temp['name'] ?? ''; + } + + /** + * 转账状态名称 + * @param $value + * @param $data + * @return mixed|string + */ + public function getTransferStatusNameAttr($value, $data) + { + if (empty($data['transfer_status'])) + return ''; + return TransferDict::getStatus()[$data['transfer_status']] ?? ''; + } + + /** + * 会员搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('member_id', $value); + } + } + + /** + * 状态搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchStatusAttr($query, $value, $data) + { + if ($value) { + $query->where('status', $value); + } + } + + /** + * + * @param $query + * @param $value + * @param $data + */ + public function searchCashOutNoAttr($query, $value, $data) + { + if ($value) { + $query->where('cash_out_no', $value); + } + } + + /** + * + * @param $query + * @param $value + * @param $data + */ + public function searchTransferTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('transfer_type', $value); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchJoinCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('member_cash_out.create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['member_cash_out.create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['member_cash_out.create_time', '<=', $end_time]]); + } + } + + /** + * 审核时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchAuditTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('audit_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['audit_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['audit_time', '<=', $end_time]]); + } + } + + /** + * 审核时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchTransferTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('transfer_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['transfer_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['transfer_time', '<=', $end_time]]); + } + } + +} diff --git a/niucloud/app/model/member/MemberCashOutAccount.php b/niucloud/app/model/member/MemberCashOutAccount.php new file mode 100644 index 0000000..1d070e7 --- /dev/null +++ b/niucloud/app/model/member/MemberCashOutAccount.php @@ -0,0 +1,68 @@ + 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + +} diff --git a/niucloud/app/model/member/MemberLabel.php b/niucloud/app/model/member/MemberLabel.php new file mode 100644 index 0000000..e6a18fe --- /dev/null +++ b/niucloud/app/model/member/MemberLabel.php @@ -0,0 +1,65 @@ +where([['member_label', 'like', '%"' . $data['label_id'] . '"%']])->count(); + } else + return 0; + } + + /** + * 会员标签 + * @param $query + * @param $value + * @param $data + */ + public function searchLabelNameAttr($query, $value, $data) + { + if ($value) { + $query->where('label_name', 'like', '%' . $value . '%'); + } + } + +} diff --git a/niucloud/app/model/member/MemberLevel.php b/niucloud/app/model/member/MemberLevel.php new file mode 100644 index 0000000..847c8fa --- /dev/null +++ b/niucloud/app/model/member/MemberLevel.php @@ -0,0 +1,36 @@ + 'timestamp', + 'close_time' => 'timestamp', + ]; + + + /** + * 登录渠道字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getOrderFromNameAttr($value, $data) + { + if (isset($data['order_from'])) { + return ChannelDict::getType()[$data['order_from']] ?? ''; + } + + } + + /** + * 会员id搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('member_id', '=', $value); + } + } + + /** + * 订单来源 + * @param $query + * @param $value + * @param $data + */ + public function searchOrderFromAttr($query, $value, $data) + { + if ($value) { + $query->where('order_from', '=', $value); + } + } + + /** + * 订单类型 + * @param $query + * @param $value + * @param $data + */ + public function searchOrderTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('order_type', '=', $value); + } + } + + /** + * 支付流水号 + * @param $query + * @param $value + * @param $data + */ + public function searchOutTradeNoAttr($query, $value, $data) + { + if ($value) { + $query->where('out_trade_no', '=', $value); + } + } + + /** + * 订单号 + * @param $query + * @param $value + * @param $data + */ + public function searchOrderNoAttr($query, $value, $data) + { + if ($value) { + $query->where('order_no', '=', $value); + } + } + + /** + * 订单金额 + * @param $query + * @param $value + * @param $data + * @return void + */ + public function searchOrderMoneyAttr($query, $value, $data) + { + if (!empty($data['start_money']) && !empty($data['end_money'])) { + $money = [$data['start_money'], $data['end_money']]; + sort($money); + $query->where('order_money', 'between', $money); + } else if (!empty($data['start_money'])) { + $query->where('order_money', '>=', $data['start_money']); + } else if (!empty($data['end_money'])) { + $query->where('order_money', '<=', $data['end_money']); + } + } + + /** + * 订单状态 + * @param $query + * @param $value + * @param $data + */ + public function searchOrderStatusAttr($query, $value, $data) + { + if ($value != '') { + $query->where('order_status', '=', $value); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 支付时间筛选 + * @param $query + * @param $value + * @param $data + * @return void + */ + public function searchPayTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('pay_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['pay_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['pay_time', '<=', $end_time]]); + } + } + + /** + * 订单项目 + * @return HasMany + */ + public function item() + { + return $this->hasMany(RechargeOrderItem::class, 'order_id', 'order_id'); + } + + /** + * 订单会员 + * @return HasOne + */ + public function member() + { + return $this->hasOne(Member::class, 'member_id', 'member_id'); + } + + /** + * 支付记录 + * @return HasOne + */ + public function pay() + { + return $this->hasOne(Pay::class, 'out_trade_no', 'out_trade_no')->bind(['pay_type_name' => 'type_name']); + } +} diff --git a/niucloud/app/model/order/RechargeOrderItem.php b/niucloud/app/model/order/RechargeOrderItem.php new file mode 100644 index 0000000..2b8b242 --- /dev/null +++ b/niucloud/app/model/order/RechargeOrderItem.php @@ -0,0 +1,66 @@ +hasOne(RechargeOrder::class, 'order_id', 'order_id')->joinType('left')->withField('order_id, order_no')->bind(['order_no' => 'order_no']); + } + + /** + * 数量字段处理 + * @param $value + * @param $data + * @return string|void + */ + public function getNumAttr($value, $data) + { + if (isset($data['num'])) { + return number_format($data['num']); + } + } + + /** + * 关联订单主表 + * @return HasOne + */ + public function ordermain() + { + return $this->hasOne(RechargeOrder::class, 'order_id')->joinType('inner'); + } +} diff --git a/niucloud/app/model/order/RechargeOrderItemRefund.php b/niucloud/app/model/order/RechargeOrderItemRefund.php new file mode 100644 index 0000000..76ae179 --- /dev/null +++ b/niucloud/app/model/order/RechargeOrderItemRefund.php @@ -0,0 +1,216 @@ + 'timestamp', + 'audit_time' => 'timestamp', + 'transfer_time' => 'timestamp', + ]; + + /** + * 数据表主键 + * @var string + */ + protected $pk = 'refund_id'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'recharge_order_item_refund'; + + /** + * 退款状态字段处理 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) + return ''; + $temp = RechargeOrderDict::getRefundStatus()[$data['status']] ?? []; + return $temp['name'] ?? ''; + } + + /** + * + * @return HasOne + */ + public function item() + { + return $this->hasOne(RechargeOrderItem::class, 'order_item_id', 'order_item_id')->joinType('inner'); + } + + /** + * 订单会员 + * @return HasOne + */ + public function member() + { + return $this->hasOne(Member::class, 'member_id', 'member_id')->withField('member_id, username, mobile, nickname, headimg')->joinType('left'); + } + + /** + * 关联退款支付记录表 + * @return HasOne + */ + public function payrefund() + { + return $this->hasOne(Refund::class, 'refund_no', 'refund_no'); + } + + /** + * 会员id搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchRefundNoAttr($query, $value, $data) + { + if ($value) { + $query->where('refund_no', '=', $value); + } + } + + + /** + * 订单号搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchOrderNoAttr($query, $value, $data) + { + if ($value) { + $query->where('order_no', '=', $value); + } + } + + /** + * 订单号搜索(用于关联) + * @param $query + * @param $value + * @param $data + */ + public function searchJoinOrderNoAttr($query, $value, $data) + { + if ($value) { + $query->where('recharge_order_item_refund.order_no', '=', $value); + } + } + + /** + * 会员id搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('member_id', '=', $value); + } + } + + /** + * 会员id搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchJoinMemberIdAttr($query, $value, $data) + { + if ($value) { + $query->where('recharge_order_item_refund.member_id', '=', $value); + } + } + + /** + * 退款状态 + * @param $query + * @param $value + * @param $data + */ + public function searchStatusAttr($query, $value, $data) + { + if ($value != '') { + $query->where('status', '=', $value); + } + } + + /** + * 退款状态 + * @param $query + * @param $value + * @param $data + */ + public function searchJoinStatusAttr($query, $value, $data) + { + if ($value != '') { + $query->where('recharge_order_item_refund.status', '=', $value); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchJoinCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('recharge_order_item_refund.create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['recharge_order_item_refund.create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['recharge_order_item_refund.create_time', '<=', $end_time]]); + } + } +} diff --git a/niucloud/app/model/order/RechargeOrderLog.php b/niucloud/app/model/order/RechargeOrderLog.php new file mode 100644 index 0000000..dc0b3b7 --- /dev/null +++ b/niucloud/app/model/order/RechargeOrderLog.php @@ -0,0 +1,37 @@ + 'timestamp', + 'close_time' => 'timestamp', + ]; + + protected $json = ['allow_type']; + + protected $jsonAssoc = true; + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) + return ''; + return PayDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 支付方式字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTypeNameAttr($value, $data) + { + if (empty($data['type'])) + return ''; + $temp = PayDict::getPayType()[$data['type']] ?? []; + return $temp['name'] ?? ''; + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 查询交易流水号 + * @param $query + * @param $value + * @return void + */ + public function searchOutTradeNoAttr($query, $value) { + if (!empty($value)) { + $query->where([['out_trade_no', '=', $value]]); + } + } + + /** + * 查询交易状态 + * @param $query + * @param $value + * @return void + */ + public function searchStatusAttr($query, $value) { + if ($value != '') { + $query->where([['status', '=', $value]]); + } + } + + /** + * 支付渠道 + * @param $value + * @param $data + * @return array|mixed|string|void + */ + public function getChannelNameAttr($value, $data){ + if (isset($data['channel'])) { + return ChannelDict::getType($data['channel']); + } + } +} diff --git a/niucloud/app/model/pay/PayChannel.php b/niucloud/app/model/pay/PayChannel.php new file mode 100644 index 0000000..583d968 --- /dev/null +++ b/niucloud/app/model/pay/PayChannel.php @@ -0,0 +1,68 @@ + 'timestamp', + 'close_time' => 'timestamp', + ]; + + /** + * 支付状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) return ''; + return RefundDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 支付方式字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTypeNameAttr($value, $data) + { + if (empty($data['type'])) return ''; + return PayDict::getPayType()[$data['type']]['name'] ?? ''; + } + + /** + * 退款方式 + * @param $value + * @param $data + * @return mixed|string + * + */ + public function getRefundTypeNameAttr($value, $data) + { + if (empty($data['refund_type'])) return ''; + return RefundDict::getType()[$data['refund_type']] ?? ''; + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 状态 + * @param $query + * @param $value + * @param $data + */ + public function searchStatusAttr($query, $value, $data) + { + if ($value != '') { + $query->where('status', '=', $value); + } + } + + /** + * 状态 + * @param $query + * @param $value + * @param $data + */ + public function searchOutTradeNoAttr($query, $value, $data) + { + if ($value != '') { + $query->where('out_trade_no', 'like', "%$value%"); + } + } + + /** + * 状态 + * @param $query + * @param $value + * @param $data + */ + public function searchRefundNoAttr($query, $value, $data) + { + if ($value != '') { + $query->where('refund_no', 'like', "%$value%"); + } + } +} diff --git a/niucloud/app/model/pay/Transfer.php b/niucloud/app/model/pay/Transfer.php new file mode 100644 index 0000000..1e859b8 --- /dev/null +++ b/niucloud/app/model/pay/Transfer.php @@ -0,0 +1,70 @@ + 'timestamp', + 'finish_time' => 'timestamp', + ]; + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTransferStatusNameAttr($value, $data) + { + if (empty($data['transfer_status'])) return ''; + return TransferDict::getStatus()[$data['transfer_status']] ?? ''; + } + + + /** + * 转账方式字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getTransferTypeNameAttr($value, $data) + { + if (empty($data['transfer_type'])) return ''; + $temp = TransferDict::getTransferType()[$data['transfer_type']] ?? []; + return $temp['name'] ?? ''; + } + +} diff --git a/niucloud/app/model/site/Site.php b/niucloud/app/model/site/Site.php new file mode 100644 index 0000000..c3ef161 --- /dev/null +++ b/niucloud/app/model/site/Site.php @@ -0,0 +1,158 @@ + 'timestamp', + ]; + /** + * 数据表主键 + * @var string + */ + protected $pk = 'site_id'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'site'; + + protected $json = ['addons', 'app']; + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) + return ''; + return SiteDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 关键字搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchKeywordsAttr($query, $value, $data) + { + if ($value) { + $query->where('site_name|keywords', 'like', '%' . $value . '%'); + } + } + + /** + * 关键字搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchAppAttr($query, $value, $data) + { + if ($value) { + $query->where('app', 'like', '%"' . $value . '"%'); + } + } + + /** + * 站点状态搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchStatusAttr($query, $value, $data) + { + if ($value) { + $query->where('status', '=', $value); + } + } + + /** + * 站点分组搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchGroupIdAttr($query, $value, $data) + { + if ($value) { + $query->where('group_id', '=', $value); + } + } + + /** + * 分组名称 + * @return HasOne + */ + public function groupName() + { + return $this->hasOne(SiteGroup::class, 'group_id', 'group_id')->joinType('left')->withField('group_id, group_name')->bind(['group_name' => 'group_name']); + } + + /** + * 创建时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + /** + * 到期时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchExpireTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('expire_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['expire_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['expire_time', '<=', $end_time]]); + } + } + + +} diff --git a/niucloud/app/model/site/SiteAccountLog.php b/niucloud/app/model/site/SiteAccountLog.php new file mode 100644 index 0000000..56d42b5 --- /dev/null +++ b/niucloud/app/model/site/SiteAccountLog.php @@ -0,0 +1,125 @@ + (new Pay())->where([['out_trade_no', '=', $data['trade_no']]])->append(['type_name'])->findOrEmpty()->toArray(), + 'refund' => (new Refund())->where([['refund_no', '=', $data['trade_no']]])->findOrEmpty()->toArray(), + 'transfer' => (new Transfer())->where([['transfer_no', '=', $data['trade_no']]])->findOrEmpty()->toArray(), + default => [], + }; + } + + /** + * 状态字段转化 + * @param $query + * @param $value + * @param $data + * @return void + */ + public function searchTypeAttr($query, $value, $data) + { + if ($value) { + $query->where('type', '=', $value); + } + } + + /** + * 金额转化 + * @param $value + * @param $data + * @return mixed + */ + public function getMoneyAttr($value, $data) + { + if (str_contains($data['money'], "-")) { + return $data['money']; + } else { + return "+" . $data['money']; + } + } + + public function searchTradeNoAttr($query, $value, $data) + { + if ($value) { + $query->where('trade_no', 'like', "%$value%"); + } + } + + /** + * 创建时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + + +} diff --git a/niucloud/app/model/site/SiteGroup.php b/niucloud/app/model/site/SiteGroup.php new file mode 100644 index 0000000..610b9e7 --- /dev/null +++ b/niucloud/app/model/site/SiteGroup.php @@ -0,0 +1,85 @@ +where([['key', 'in', $data['app']]])->column('title'); + } + + /** + * 关联插件 + * @param $value + * @param $data + * @return array + */ + public function getAddonNameAttr($value, $data) + { + if (empty($data['app'])) + return []; + return (new Addon())->where([['key', 'in', $data['addon']]])->column('title'); + } + + /** + * 关键字搜索 + * @param $query + * @param $value + * @param $data + */ + public function searchKeywordsAttr($query, $value, $data) + { + if ($value) { + $query->where('group_name', 'like', '%' . $value . '%'); + } + } + +} diff --git a/niucloud/app/model/sys/SysAgreement.php b/niucloud/app/model/sys/SysAgreement.php new file mode 100644 index 0000000..f227a10 --- /dev/null +++ b/niucloud/app/model/sys/SysAgreement.php @@ -0,0 +1,52 @@ + 'timestamp', + ]; + + // 设置json类型字段 + protected $json = ['params', 'content']; + // 设置JSON数据返回数组 + protected $jsonAssoc = true; + + /** + * 名称 + * @param $value + * @param $data + * @return string + */ + public function getContentAttr($value, $data) + { + if ($value) { + $temp = json_decode($value, true); + } + return $temp ?? $value; + } + + /** + * 名称 + * @param $value + * @param $data + * @return string + */ + public function getNameAttr($value, $data) + { + $name = ''; + if (!empty($data['key'])) { + $temp = NoticeDict::getNotice()[$data['key']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; + } + + /** + * 名称 + * @param $value + * @param $data + * @return string + */ + public function getNoticeTypeNameAttr($value, $data) + { + $name = ''; + if (!empty($data['notice_type'])) { + $temp = NoticeTypeDict::getType()[$data['notice_type']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; + } + + /** + * 消息类型 + * @param $query + * @param $value + * @return void + */ + public function searchKeyAttr($query, $value) + { + if ($value) { + $query->where('key', $value); + } + } + + /** + * 接收人 + * @param $query + * @param $value + * @return void + */ + public function searchReceiverAttr($query, $value) + { + if ($value) { + $query->where('receiver', $value); + } + } + + /** + * 创建时间搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr(Query $query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + +} diff --git a/niucloud/app/model/sys/SysNoticeSmsLog.php b/niucloud/app/model/sys/SysNoticeSmsLog.php new file mode 100644 index 0000000..27414d8 --- /dev/null +++ b/niucloud/app/model/sys/SysNoticeSmsLog.php @@ -0,0 +1,148 @@ + 'timestamp', + ]; + + // 设置json类型字段 + protected $json = ['params', 'result']; + // 设置JSON数据返回数组 + protected $jsonAssoc = true; + + /** + * 结果 + * @param $value + * @param $data + * @return string + */ + public function getResultAttr($value, $data) + { + if ($value) { + $temp = json_decode($value, true); + } + if (empty($temp)) { + $temp = $value; + } + return $temp ?? ''; + } + + /** + * 名称 + * @param $value + * @param $data + * @return string + */ + public function getNameAttr($value, $data) + { + $name = ''; + if (!empty($data['key'])) { + $temp = NoticeDict::getNotice()[$data['key']] ?? []; + $name = $temp['name'] ?? ''; + } + return $name; + } + + /** + * 状态名称 + * @param $value + * @param $data + * @return string + */ + public function getStatusNameAttr($value, $data) + { + $name = ''; + if (!empty($data['status'])) { + $name = SmsDict::getStatusType()[$data['status']] ?? ''; + } + return $name; + } + + /** + * 短信方式名称 + * @param $value + * @param $data + * @return string + */ + public function getSmsTypesNameAttr($value, $data) + { + if (empty($data['sms_type'])) return ''; + $temp = SmsDict::getType()[$data['sms_type']] ?? []; + return $temp['name'] ?? ''; + } + + /** + * 消息标识 + * @param $query + * @param $value + * @return void + */ + public function searchKeyAttr($query, $value) + { + if ($value) { + $query->where('key', $value); + } + } + + /** + * 短信方式 + * @param $query + * @param $value + * @return void + */ + public function searchSmsTypeAttr($query, $value) + { + if ($value) { + $query->where('sms_type', $value); + } + } + + /** + * 手机号 + * @param $query + * @param $value + * @return void + */ + public function searchMobileAttr($query, $value) + { + if ($value) { + $query->where('mobile', $value); + } + } + + +} diff --git a/niucloud/app/model/sys/SysRole.php b/niucloud/app/model/sys/SysRole.php new file mode 100644 index 0000000..aa2d1a7 --- /dev/null +++ b/niucloud/app/model/sys/SysRole.php @@ -0,0 +1,47 @@ + 'timestamp', + 'next_time' => 'timestamp', + 'update_time' => 'timestamp', + ]; + + // 设置json类型字段 + protected $json = ['time']; + // 设置JSON数据返回数组 + protected $jsonAssoc = true; + + + /** + * 启用状态 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) return ''; + return ScheduleDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 任务类型搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchKeyAttr(Query $query, $value, $data) + { + if ($value) { + $query->where('key', $value); + } + } + + /** + * 状态搜索 + * @param Query $query + * @param $value + * @param $data + * @return void + */ + public function searchStatusAttr(Query $query, $value, $data) + { + if ($value) { + $query->where('status', $value); + } + } + + + /** + * 执行时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchLastTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('last_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['last_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['last_time', '<=', $end_time]]); + } + } + +} diff --git a/niucloud/app/model/sys/SysUser.php b/niucloud/app/model/sys/SysUser.php new file mode 100644 index 0000000..cb9549f --- /dev/null +++ b/niucloud/app/model/sys/SysUser.php @@ -0,0 +1,143 @@ + 'timestamp', + ]; + /** + * 数据表主键 + * @var string + */ + protected $pk = 'uid'; + + /** + * 模型名称 + * @var string + */ + protected $name = 'sys_user'; + /** + * 定义软删除标记字段 + * @var string + */ + protected $deleteTime = 'delete_time'; + + /** + * 定义软删除字段的默认值 + * @var int + */ + protected $defaultSoftDelete = 0; + + public function userrole() + { + return $this->hasOne(SysUserRole::class, 'uid', 'uid')->joinType('inner'); + } + + /** + * 权限组 + * @return HasMany + */ + public function roles() + { + return $this->hasMany(SysUserRole::class, 'uid', 'uid'); + } + + + public function getCreateTimeAttr($value, $data) + { + return $data['create_time'] ? get_date_by_time($data['create_time']) : ''; + } + + /** + * 账号搜索器 + * @param $query + * @param $value + */ + public function searchUsernameAttr($query, $value) + { + if ($value) { + $query->whereLike('username', '%' . $value . '%'); + } + + } + + /** + * 用户实际姓名搜索器 + * @param $query + * @param $value + */ + public function searchRealnameAttr($query, $value) + { + if ($value) { + $query->whereLike('real_name', '%' . $value . '%'); + } + + } + + /** + * 角色状态 + * @param $value + * @param $data + * @return string + */ + public function getStatusNameAttr($value, $data) + { + if (empty($data['status'])) return ''; + return RoleStatusDict::getStatus()[$data['status']] ?? ''; + } + + /** + * 是否删除搜索器 + * @param $query + */ + public function searchIsDelAttr($query) + { + $query->where('is_del', 0); + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('sys_user.create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['sys_user.create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['sys_user.create_time', '<=', $end_time]]); + } + } + + +} diff --git a/niucloud/app/model/sys/SysUserLog.php b/niucloud/app/model/sys/SysUserLog.php new file mode 100644 index 0000000..3d44605 --- /dev/null +++ b/niucloud/app/model/sys/SysUserLog.php @@ -0,0 +1,127 @@ +where('uid', $value); + } + } + + /** + * 用户名搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchUsernameAttr(Query $query, $value, $data) + { + if ($value) { + $query->whereLike('username', '%' . $value . '%'); + } + } + + /** + * 请求方式搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchTypeAttr(Query $query, $value, $data) + { + if ($value) { + $query->where('type', $value); + } + } + + /** + * 链接搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchUrlAttr(Query $query, $value, $data) + { + if ($value) { + $query->whereLike('url', '%' . $value . '%'); + } + } + + /** + * ip搜索器 + * @param Query $query + * @param $value + * @param $data + */ + public function searchIpAttr(Query $query, $value, $data) + { + if ($value) { + $query->whereLike('ip', '%' . $value . '%'); + } + } + + /** + * 创建时间搜索器 + * @param $query + * @param $value + * @param $data + */ + public function searchCreateTimeAttr($query, $value, $data) + { + $start_time = empty($value[0]) ? 0 : strtotime($value[0]); + $end_time = empty($value[1]) ? 0 : strtotime($value[1]); + if ($start_time > 0 && $end_time > 0) { + $query->whereBetweenTime('create_time', $start_time, $end_time); + } else if ($start_time > 0 && $end_time == 0) { + $query->where([['create_time', '>=', $start_time]]); + } else if ($start_time == 0 && $end_time > 0) { + $query->where([['create_time', '<=', $end_time]]); + } + } + +} diff --git a/niucloud/app/model/sys/SysUserRole.php b/niucloud/app/model/sys/SysUserRole.php new file mode 100644 index 0000000..3de89e5 --- /dev/null +++ b/niucloud/app/model/sys/SysUserRole.php @@ -0,0 +1,77 @@ +hasOne(SysUser::class, 'uid', 'uid')->joinType('inner') + ->withField('uid,username,head_img,real_name,last_ip,last_time,login_count,create_time') + ->bind(['username', 'head_img', 'real_name', 'last_ip', 'last_time', 'login_count']); + } + + /** + * 关联查询站点信息 + * @return HasOne + */ + public function siteInfo() + { + return $this->hasOne(Site::class, 'site_id', 'site_id')->joinType('inner') + ->withField('site_id, site_name, app_type, status, expire_time') + ->bind(['site_name', 'app_type', 'status', 'expire_time', 'status_name'])->append(['status_name']); + } + + /** + * 状态字段转化 + * @param $value + * @param $data + * @return mixed + */ + public function getStatusNameAttr($value, $data) + { + if (!isset($data['status']) || empty($data['status'])) return ''; + return UserDict::getStatus()[$data['status']] ?? ''; + } +} diff --git a/niucloud/app/model/weapp/WeappVersion.php b/niucloud/app/model/weapp/WeappVersion.php new file mode 100644 index 0000000..73d169d --- /dev/null +++ b/niucloud/app/model/weapp/WeappVersion.php @@ -0,0 +1,40 @@ + Request::class, + 'think\exception\Handle' => ExceptionHandle::class, +]; diff --git a/niucloud/app/service.php b/niucloud/app/service.php new file mode 100644 index 0000000..db1ee6a --- /dev/null +++ b/niucloud/app/service.php @@ -0,0 +1,9 @@ +add($data); + } + + /** + * 编辑插件开发 + * @param int $id + * @param array $data + * @return SysAttachment + */ + public function edit(string $key, array $data) + { + return (new CoreAddonDevelopService($key))->edit($data); + } + + + /** + * 删除插件开发 + * @param int $id + * @return mixed + */ + public function del(string $key) + { + return (new CoreAddonDevelopService($key))->del(); + } + + + /** + * 开发中插件 + * @return array + */ + public function getList(string $search = '') + { + return (new CoreAddonService())->getAddonDevelopList($search); + } + + /** + * 查询 + * @param $key + * @return void + */ + public function getInfo($key){ + return (new CoreAddonService())->getAddonDevelopInfo($key); + } + + /** + * 打包 + * @param string $key + * @return array + */ + public function build(string $key){ + return (new CoreAddonDevelopBuildService())->build($key); + } + + + /** + * 下载 + * @param string $key + * @return true + */ + public function download(string $key){ + return (new CoreAddonDevelopBuildService())->download($key); + } + + /** + * 校验key是否被占用 + * @param $key + * @return array|\core\util\niucloud\http\Response|false|object|\Psr\Http\Message\ResponseInterface + * @throws \GuzzleHttp\Exception\GuzzleException + */ + public function checkKey($key) + { + return ( new CoreModuleService() )->checkKey($key); + } +} diff --git a/niucloud/app/service/admin/addon/AddonService.php b/niucloud/app/service/admin/addon/AddonService.php new file mode 100644 index 0000000..f357256 --- /dev/null +++ b/niucloud/app/service/admin/addon/AddonService.php @@ -0,0 +1,237 @@ +model = new Addon(); + + } + public function getList(){ + return (new CoreAddonService())->getLocalAddonList(); + } + + /** + * 获取当前站点消息 + * @return array + */ + public function getLocalAddonList() + { + return (new CoreAddonService())->getLocalAddonList(); + } + + /** + * 安装插件 + * @param string $addon + */ + public function install(string $addon) + { + return ( new CoreAddonInstallService($addon) )->install(); + } + + /** + * 云安装插件 + * @param string $addon + */ + public function cloudInstall(string $addon) + { + return ( new CoreAddonInstallService($addon) )->install('cloud'); + } + + /** + * 云安装日志 + * @param string $addon + * @return null + */ + public function cloudInstallLog(string $addon) + { + return ( new CoreAddonCloudService() )->getBuildLog($addon); + } + + /** + * 获取安装任务 + * @return mixed + */ + public function getInstallTask() + { + return ( new CoreAddonInstallService('') )->getInstallTask(); + } + + /** + * 安装插件检测安装环境 + * @param string $addon + */ + public function installCheck(string $addon) + { + return ( new CoreAddonInstallService($addon) )->installCheck(); + } + + /** + * 取消安装任务 + * @param string $addon + */ + public function cancleInstall(string $addon) + { + return ( new CoreAddonInstallService($addon) )->cancleInstall(); + } + + /** + * @param string $addon + * @return void + */ + public function uninstallCheck(string $addon) { + return ( new CoreAddonInstallService($addon) )->uninstallCheck(); + } + + /** + * 卸载插件 + * @param string $addon + * @return true + */ + public function uninstall(string $addon) + { + return CoreAddonInstallService::instance($addon)->uninstall(); + } + + /** + * 获取插件列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + return (new CoreAddonService())->getPage($where); + } + + /** + * 获取插件信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + return (new CoreAddonService())->getInfo($id); + } + + /** + * 设置插件状态 + * @param int $id + * @param int $status + */ + public function setStatus(int $id, int $status){ + return (new CoreAddonService())->setStatus($id, $status); + } + + /** + * 下载应用 + * @param string $app_key + * @return true + */ + public function download(string $app_key, string $version){ + if (empty($version)) throw new CommonException('ADDON_DOWNLOAD_VERSION_EMPTY'); + return (new CoreAddonDownloadService())->download($app_key, $version); + } + + + /** + * 查询已安装应用 + * @return array + */ + public function getInstallList(){ + return (new CoreAddonService())->getInstallAddonList(); + } + + + /** + * 获取站点拥有的应用列表 + * @param int $site_id + * @return array|mixed|string|void + * @throws DbException + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\ModelNotFoundException + */ + public function getAddonListBySiteId(int $site_id){ + $addon_keys = $this->getAddonKeysBySiteId($site_id); + return $this->getAddonListByKeys($addon_keys); + + + } + /** + * 应用key缓存 + * @param $keys + * @return mixed|string + * @throws DbException + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\ModelNotFoundException + */ + public function getAddonListByKeys($keys){ + sort($keys); + $cache_name = 'addon_list'.implode('_', $keys); + return cache_remember( + $cache_name, + function () use ($keys) { + $where = [ + ['key', 'in', $keys], + ['status', '=', AddonDict::ON] + ]; + return $this->model->where($where)->field('title, icon, key, desc, status, cover')->select()->toArray(); + + }, + self::$cache_tag_name + ); + } + + /** + * 获取站点支持的应用插件 + * @param int $site_id + * @return array + */ + public function getAddonKeysBySiteId(int $site_id){ + return (new CoreSiteService())->getAddonKeysBySiteId($site_id); + } + + /** + * 获取插件信息 + * @param int $id + * @return array + */ + public function getInfoByKey(string $key) + { + return $this->model->where([ [ 'key', '=', $key ] ])->field('title, icon, key, desc, status, cover')->findOrEmpty()->toArray(); + } +} diff --git a/niucloud/app/service/admin/aliapp/AliappConfigService.php b/niucloud/app/service/admin/aliapp/AliappConfigService.php new file mode 100644 index 0000000..6ef814f --- /dev/null +++ b/niucloud/app/service/admin/aliapp/AliappConfigService.php @@ -0,0 +1,56 @@ +getAliappConfig($this->site_id); + } + + /** + * 设置配置 + * @param array $data + * @return SysConfig|bool|Model + */ + public function setAliappConfig(array $data){ + return (new CoreAliappConfigService())->setAliappConfig($this->site_id, $data); + } + + /** + * 服务器域名 + * @return array + */ + public function static(){ + $domain = request()->domain(); + return [ + 'domain' => $domain, + ]; + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/applet/AppletDownloadService.php b/niucloud/app/service/admin/applet/AppletDownloadService.php new file mode 100644 index 0000000..0a2ec50 --- /dev/null +++ b/niucloud/app/service/admin/applet/AppletDownloadService.php @@ -0,0 +1,43 @@ +download($this->site_id); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/applet/AppletVersionService.php b/niucloud/app/service/admin/applet/AppletVersionService.php new file mode 100644 index 0000000..e7f56a3 --- /dev/null +++ b/niucloud/app/service/admin/applet/AppletVersionService.php @@ -0,0 +1,127 @@ +model = new AppletVersion(); + $this->core_applet_version_service = new CoreAppletVersionService; + } + + /** + * 获取列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + return $this->core_applet_version_service->getPage($where); + } + + /** + * 获取信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + return $this->core_applet_version_service->getInfo($id); + } + + /** + * 添加 + * @param array $data + * @return true + */ + public function add(array $data) + { + $data['version_num'] = version_to_int($data['version']);//版本号数字 + $data['uid'] = $this->uid;//发布者 + $data['status'] = AppletlDict::OFF; + $this->model->create($data); + return true; + } + /** + * 上传小程序包 + * @param $file + * @return array + * @throws Exception + */ + public function upload($file){ + $core_upload_service = new CoreUploadService(); + $type = FileDict::APPLET; + $dir = '/applet/'.$type.'/version/'; + return $core_upload_service->document($file, $this->site_id, $type, $dir, FileDict::LOCAL); + } + + /** + * 设置版本状态 + * @param int $id + * @param $status + * @return true + */ + public function setStatus(int $id, $status){ + $data = array( + 'status' => $status + ); + $where = array( + ['id', '=', $id] + ); + $this->model->where($where)->update($data); + return true; + } + + /** + * 编辑 + * @param int $id + * @param array $data + * @return true + */ + public function edit(int $id, array $data) + { + $data['version_num'] = version_to_int($data['version']);//版本号数字 + $data['status'] = AppletlDict::OFF; + $data['update_time'] = time(); + $this->model->where([['id', '=', $id]])->create($data); + return true; + } + + /** + * 删除 + * @param int $id + * @return true + */ + public function del(int $id){ + $this->model->where([['id', '=', $id]])->delete(); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/applet/AppletVersionSiteService.php b/niucloud/app/service/admin/applet/AppletVersionSiteService.php new file mode 100644 index 0000000..9ffbb10 --- /dev/null +++ b/niucloud/app/service/admin/applet/AppletVersionSiteService.php @@ -0,0 +1,74 @@ +core_applet_site_version_service = new CoreAppletSiteVersionService(); + } + + /** + * 获取列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + return $this->core_applet_site_version_service->getPage($this->site_id, $where); + } + + /** + * 获取信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + return $this->core_applet_site_version_service->getInfo($this->site_id, $id); + } + + /** + * 查询最后一个下载或升级的版本 + * @param string $type + * @return mixed|string + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getLastVersion(string $type){ + return $this->core_applet_site_version_service->getLastVersion($this->site_id, $type); + } + + /** + * 查询可升级的版本 + * @param string $type + * @return null + */ + public function getUpgradeVersion(string $type){ + return $this->core_applet_site_version_service->getUpgradeVersion($this->site_id, $type); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/auth/AuthService.php b/niucloud/app/service/admin/auth/AuthService.php new file mode 100644 index 0000000..535275a --- /dev/null +++ b/niucloud/app/service/admin/auth/AuthService.php @@ -0,0 +1,173 @@ +adminSiteId(); + //todo 将站点编号转化为站点id + $site_info = (new CoreSiteService())->getSiteCache($site_id); + //站点不存在 + if(empty($site_info)) throw new AuthException('SITE_NOT_EXIST'); + //没有当前站点的信息 + if(!$this->getAuthRole($site_id)) throw new AuthException('NO_SITE_PERMISSION'); + + $request->siteId($site_id); + $request->appType($site_info['app_type']); + return true; + } + + + + /** + * 校验权限 + * @param Request $request + * @return bool + * @throws Exception + */ + public function checkRole(Request $request){ + + $rule = strtolower(trim($request->rule()->getRule())); + $method = strtolower(trim($request->method())); + $site_info = (new AuthSiteService())->getSiteInfo(); + if($method != 'get'){ + if($site_info['status'] == SiteDict::EXPIRE) throw new AuthException('SITE_EXPIRE_NOT_ALLOW'); + if($site_info['status'] == SiteDict::CLOSE) throw new AuthException('SITE_CLOSE_NOT_ALLOW'); + } + + $menu_service = new MenuService(); + $all_menu_list = $menu_service->getAllApiList($this->app_type); + //先判断当前访问的接口是否收到权限的限制 + $method_menu_list = $all_menu_list[$method] ?? []; + if(!in_array($rule, $method_menu_list)) + return true; + + $auth_role_list = $this->getAuthApiList(); + if(!empty($auth_role_list[$method]) && in_array($rule, $auth_role_list[$method])) + return true; + + throw new AuthException('NO_PERMISSION'); + + } + + /** + * 获取授权用户的权限信息 + * @return mixed + */ + public function getAuthRole(int $site_id){ + $user_role_service = new UserRoleService(); + return $user_role_service->getUserRole($site_id, $this->uid); + } + + /** + * 当前授权用户接口权限 + * @return array + */ + public function getAuthApiList(){ + $user_role_info = $this->getAuthRole($this->site_id); + if(empty($user_role_info)) + return []; + + $is_admin = $user_role_info['is_admin'];//是否是超级管理员组 + $menu_service = new MenuService(); + if($is_admin){//查询全部启用的权限 + //获取站点信息 + return (new AuthSiteService())->getApiList(1); + }else{ + $user_role_ids = $user_role_info['role_ids']; + $role_service = new RoleService(); + $menu_keys = $role_service->getMenuIdsByRoleIds($this->site_id, $user_role_ids); + + return $menu_service->getApiListByMenuKeys($menu_keys, $this->app_type); + } + + } + + /** + * 当前授权用户菜单权限 + * @return array + */ + public function getAuthMenuList(int $is_tree = 0, $addon = 'all'){ + $user_role_info = $this->getAuthRole($this->site_id); + if(empty($user_role_info)) + return []; + $is_admin = $user_role_info['is_admin'];//是否是超级管理员组 + $menu_service = new MenuService(); + if($is_admin){//查询全部启用的权限 + return (new AuthSiteService())->getMenuList($is_tree, 1, $addon); + }else{ + $user_role_ids = $user_role_info['role_ids']; + $role_service = new RoleService(); + $menu_keys = $role_service->getMenuIdsByRoleIds($this->site_id, $user_role_ids); + return $menu_service->getMenuListByMenuKeys($this->site_id, $menu_keys, $this->app_type, $is_tree, $addon); + } + } + + /** + * 获取授权用户信息 + */ + public function getAuthInfo(){ + return (new SiteUserService())->getInfo($this->uid); + } + + /** + * 修改用户权限 + * @param string $field + * @param $data + * @return bool + */ + public function modifyAuth(string $field, $data){ + return (new SiteUserService())->modify($this->uid, $field, $data); + } + + /** + * 修改用户 + * @param array $data + * @return true + */ + public function editAuth(array $data){ + if(!empty($data['password'])){ + //检测原始密码是否正确 + $user = (new UserService())->find($this->uid); + if(!check_password($data['original_password'], $user->password)) + throw new AuthException('OLD_PASSWORD_ERROR'); + + } + return (new UserService())->edit($this->uid, $data); + } + + + +} diff --git a/niucloud/app/service/admin/auth/AuthSiteService.php b/niucloud/app/service/admin/auth/AuthSiteService.php new file mode 100644 index 0000000..646bfdb --- /dev/null +++ b/niucloud/app/service/admin/auth/AuthSiteService.php @@ -0,0 +1,91 @@ +model = new Site(); + } + + /** + * 获取授权当前的站点信息 + */ + public function getSiteInfo(){ + //通过用户id获取 + return (new SiteService())->getSiteCache($this->site_id); + } + + + /** + * 通过站点id获取菜单列表 + * @param int $is_tree + * @param int|string $status + * @return mixed + */ + public function getMenuList(int $is_tree, int|string $status, $addon = 'all', int $is_button = 1){ + return (new SiteService())->getMenuList($this->site_id, $is_tree, $status, $addon, $is_button); + } + + /** + * 通过站点id获取菜单列表 + * @param int|string $status + * @return mixed + */ + public function getApiList(int|string $status){ + return (new SiteService())->getApiList($this->site_id, $status); + } + + /** + * 查询当前站点可以单独显示的菜单(仅支持站点端调用) + * @return array|SysMenu[] + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getShowMenuList(){ + $menu_keys = (new SiteService())->getMenuIdsBySiteId($this->site_id, 1); + return (new SysMenu())->where([['menu_key', 'in', $menu_keys], ['menu_type', '=', MenuTypeDict::MENU], ['app_type', '=', AppTypeDict::SITE],['is_show', '=', 1]])->select()->toArray(); + } + + /** + * 获取站点支持 + * @return array|mixed|string|null + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAuthAddonList(){ + return (new AddonService())->getAddonListBySiteId($this->site_id); + } +} diff --git a/niucloud/app/service/admin/auth/ConfigService.php b/niucloud/app/service/admin/auth/ConfigService.php new file mode 100644 index 0000000..e91caec --- /dev/null +++ b/niucloud/app/service/admin/auth/ConfigService.php @@ -0,0 +1,65 @@ +getConfig($this->request->defaultSiteId(), ConfigKeyDict::ADMIN_LOGIN)['value'] ?? []; + return [ + 'is_captcha' => $info['is_captcha'] ?? 0,//是否启用验证码 + 'is_site_captcha' => $info['is_site_captcha'] ?? 0,//是否启用站点验证码 + 'bg' => $info['bg'] ?? '',//平台登录端 背景 + 'site_bg' => $info['site_bg'] ?? '',//站点登录端 背景 + ]; + } + + /** + * 注册与登录设置 + * @param array $data + * @return true + */ + public function setConfig(array $data) + { + $config = [ + 'is_captcha' => $data['is_captcha'] ?? 0,//是否启用验证码 + 'is_site_captcha' => $data['is_site_captcha'] ?? 0,//是否启用站点验证码 + 'bg' => $data['bg'] ?? '',//平台登录端 背景 + 'site_bg' => $data['site_bg'] ?? '',//站点登录端 背景 + ]; + (new CoreConfigService())->setConfig($this->site_id, ConfigKeyDict::ADMIN_LOGIN, $config); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/auth/LoginService.php b/niucloud/app/service/admin/auth/LoginService.php new file mode 100644 index 0000000..839a844 --- /dev/null +++ b/niucloud/app/service/admin/auth/LoginService.php @@ -0,0 +1,178 @@ +model = new SysUser(); + } + + /** + * 用户登录 + * @param string $username + * @param string $password + * @param string $app_type + * @return array|bool + */ + public function login(string $username, string $password, string $app_type) + { + if(!array_key_exists($app_type, AppTypeDict::getAppType())) throw new AuthException('APP_TYPE_NOT_EXIST'); + + $config = (new ConfigService())->getConfig(); + switch($app_type){ + case AppTypeDict::SITE: + $is_captcha = $config['is_site_captcha']; + break; + case AppTypeDict::ADMIN: + $is_captcha = $config['is_captcha']; + break; + } + if($is_captcha == 1){ + (new CaptchaService())->verification(); + } + + $user_service = new UserService(); + $userinfo = $user_service->getUserInfoByUsername($username); + if ($userinfo->isEmpty()) return false; + + if (!check_password($password, $userinfo->password)) return false; + + if($app_type == AppTypeDict::ADMIN){ + $default_site_id = $this->request->defaultSiteId(); + $userrole = (new UserRoleService())->getUserRole($default_site_id, $userinfo->uid); + if (empty($userrole)) throw new AuthException('SITE_USER_CAN_NOT_LOGIN_IN_ADMIN'); + if (!$userrole['status']) throw new AuthException('USER_LOCK'); + } else if($app_type == AppTypeDict::SITE){ + $default_site_id = $this->site_id; + } else { + throw new AuthException('APP_TYPE_NOT_EXIST'); + } + //修改用户登录信息 + $userinfo->last_time = time(); + $userinfo->last_ip = app('request')->ip(); + $userinfo->login_count++; + $userinfo->save(); + //创建token + $token_info = $this->createToken($userinfo, $app_type); + + //查询权限以及菜单 + $data = [ + 'token' => $token_info['token'], + 'expires_time' => $token_info['params']['exp'], + 'userinfo' => [ + 'uid' => $userinfo->uid, + 'username' => $userinfo->username, + ], + 'site_id' => $default_site_id, + 'site_info' => null + ]; + if ($app_type == AppTypeDict::ADMIN || ($app_type == AppTypeDict::SITE && $data['site_id']) ) { + $data['site_info'] = (new SiteService())->getInfo($data['site_id']); + } + + // 获取站点布局 + $layout_config = (new CoreConfigService())->getConfig($data['site_id'], 'SITE_LAYOUT'); + $data['layout'] = empty($layout_config) ? 'default' : $layout_config['value']['key']; + return $data; + } + + /** + * 登陆退出(当前账户) (todo 这儿应该登出当前token, (登出一个账号还是全端口登出)) + * @return true + */ + public function logout() + { + self::clearToken($this->uid, $this->app_type, $this->request->adminToken()); + return true; + } + + /** + * 创建token + * @param SysUser $userinfo + * @param string $app_type + * @return array + */ + public function createToken(SysUser $userinfo, string $app_type) + { + $expire_time = env('system.admin_token_expire_time') ?? 3600; + return TokenAuth::createToken($userinfo->uid, AppTypeDict::ADMIN, ['uid' => $userinfo->uid, 'username' => $userinfo->username], $expire_time); + } + + /** + * 清理token + * @param int $uid + * @param string|null $type + * @param string|null $token + */ + public static function clearToken(int $uid, ?string $type = '', ?string $token = '') + { + if (empty($type)) { + TokenAuth::clearToken($uid, AppTypeDict::ADMIN, $token);//清除平台管理端的token +// TokenAuth::clearToken($uid, AppTypeDict::SITE, $token);//清除站点管理端的token + } else { + TokenAuth::clearToken($uid, $type, $token); + } + + } + + /** + * 解析token + * @param string|null $token + * @return array + */ + public function parseToken(?string $token) + { + if (empty($token)) { + //定义专属于授权认证机制的错误响应, 定义专属语言包 + throw new AuthException('MUST_LOGIN', 401); + } + //暴力操作,截停所有异常覆盖为token失效 + try { + $token_info = TokenAuth::parseToken($token, AppTypeDict::ADMIN); + } catch ( Throwable $e ) { +// if(env('app_debug', false)){ +// throw new AuthException($e->getMessage(), 401); +// }else{ + throw new AuthException('LOGIN_EXPIRE', 401); +// } + + } + if (!$token_info) { + throw new AuthException('MUST_LOGIN', 401); + } + //验证有效次数或过期时间 + return $token_info; + } + +} diff --git a/niucloud/app/service/admin/captcha/CaptchaService.php b/niucloud/app/service/admin/captcha/CaptchaService.php new file mode 100644 index 0000000..700d53a --- /dev/null +++ b/niucloud/app/service/admin/captcha/CaptchaService.php @@ -0,0 +1,50 @@ +create(); + } + + /** + * 核验验证码 + * @return true + */ + public function check(){ + return (new CoreCaptchaImgService())->check(); + } + + public function verification(){ + return (new CoreCaptchaImgService())->verification(); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/channel/H5Service.php b/niucloud/app/service/admin/channel/H5Service.php new file mode 100644 index 0000000..88138af --- /dev/null +++ b/niucloud/app/service/admin/channel/H5Service.php @@ -0,0 +1,55 @@ +core_config_service = new CoreConfigService(); + } + + /** + * 设置H5信息 + * @param array $value + * @return bool + */ + public function setH5(array $value) + { + $data = [ + 'is_open' => $value['is_open'] + ]; + return $this->core_config_service->setConfig($this->site_id,ConfigKeyDict::H5, $data); + } + + /** + * 获取h5配置 + * @return mixed + */ + public function getH5(){ + return (new CoreH5Service())->getH5($this->site_id); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/dict/DictService.php b/niucloud/app/service/admin/dict/DictService.php new file mode 100644 index 0000000..9660c3f --- /dev/null +++ b/niucloud/app/service/admin/dict/DictService.php @@ -0,0 +1,125 @@ +model = new Dict(); + } + + /** + * 获取数据字典列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id,name,key,memo,create_time,update_time'; + $order = 'id desc'; + + $search_model = $this->model->withSearch(["name","key"], $where)->field($field)->order($order); + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取数据字典信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,name,key,dictionary,memo,create_time,update_time'; + + $info = $this->model->field($field)->where([['id', '=', $id]])->findOrEmpty()->toArray(); + if($info['dictionary'] == null) + { + $info['dictionary'] = []; + } + return $info; + } + + /** + * 添加数据字典 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + + $res = $this->model->create($data); + return $res->id; + + } + + /** + * 数据字典编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + $data['update_time'] = time(); + $this->model->where([['id', '=', $id]])->update($data); + return true; + } + + /** + * 删除数据字典 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $res = $this->model->where([['id', '=', $id]])->delete(); + return $res; + } + + /** + * 获取全部数据字典 + * @param array $where + * @return array + */ + public function getAll() + { + $field = 'id,name,key,dictionary,memo,create_time,update_time'; + $list = $this->model->field($field)->select()->toArray(); + return $list; + } + + public function getKeyInfo($key) + { + $field = 'id,name,key,dictionary,memo,create_time,update_time'; + + $info = $this->model->field($field)->where([['key', '=', $key]])->findOrEmpty()->toArray(); + if($info['dictionary'] == null) + { + $info['dictionary'] = []; + } + return $info; + } + + +} diff --git a/niucloud/app/service/admin/diy/DiyConfigService.php b/niucloud/app/service/admin/diy/DiyConfigService.php new file mode 100644 index 0000000..6520be5 --- /dev/null +++ b/niucloud/app/service/admin/diy/DiyConfigService.php @@ -0,0 +1,93 @@ +getBottomList($params); + + $site_addon = (new CoreSiteService())->getSiteCache($this->site_id); + + // 单应用,排除 系统 底部导航设置 + if (count($site_addon[ 'apps' ]) == 1) { + foreach ($list as $k=>$v){ + if($v['key'] = 'app'){ + unset($list[$k]); + break; + } + } + $list = array_values($list); + } + return $list; + } + + /** + * 获取底部导航配置 + * @param $key + * @return array + */ + public function getBottomConfig($key) + { + return (new CoreDiyConfigService())->getBottomConfig($this->site_id, $key); + } + + /** + * 底部导航配置 + * @param $data + * @param $key + * @return SysConfig|bool|Model + */ + public function setBottomConfig($data, $key) + { + return (new CoreDiyConfigService())->setBottomConfig($this->site_id, $data, $key); + } + + /** + * 设置启动页 + * @param $data + * @return SysConfig|bool|Model + */ + public function setStartUpPageConfig($data) + { + return (new CoreDiyConfigService())->setStartUpPageConfig($this->site_id, $data); + } + + /** + * 获取启动页配置 + * @param $name + * @return array + */ + public function getStartUpPageConfig($name) + { + return (new CoreDiyConfigService())->getStartUpPageConfig($this->site_id, $name); + } + +} diff --git a/niucloud/app/service/admin/diy/DiyRouteService.php b/niucloud/app/service/admin/diy/DiyRouteService.php new file mode 100644 index 0000000..7765c20 --- /dev/null +++ b/niucloud/app/service/admin/diy/DiyRouteService.php @@ -0,0 +1,187 @@ +model = new DiyRoute(); + } + + /** + * 获取自定义路由列表 + * @param array $where + * @return array + */ + public function getList(array $where = []) + { + $condition = []; + if (!empty($where[ 'addon' ])) { + $condition[ 'addon' ] = $where[ 'addon' ]; + } + $link = LinkDict::getLink($condition); + + $diy_route_list = []; + $sort = 0; + foreach ($link as $k => $v) { + if (!empty($v[ 'child_list' ])) { + foreach ($v[ 'child_list' ] as $ck => $cv) { + if (!empty($cv[ 'url' ])) { + $is_add = true; + + if (!empty($where[ 'title' ]) && !str_contains($cv[ 'title' ], $where[ 'title' ])) { + $is_add = false; + } + + if (!empty($where[ 'url' ]) && $where[ 'url' ] != $cv[ 'url' ]) { + $is_add = false; + } + + if (!empty($where[ 'addon_name' ]) && $where[ 'addon_name' ] != $v[ 'addon_info' ][ 'key' ]) { + $is_add = false; + } + + $item = [ + 'addon_info' => $v[ 'addon_info' ] ?? '', + 'title' => $cv[ 'title' ], + 'name' => $cv[ 'name' ], + 'parent' => $k, + 'page' => $cv[ 'url' ], + 'is_share' => $cv[ 'is_share' ], + 'action' => $cv[ 'action' ] ?? '', + 'sort' => ++$sort + ]; + + if ($is_add) { + $diy_route_list[] = $item; + } + } + } + } + } + return $diy_route_list; + } + + /** + * 获取自定义路由表列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $where[] = [ 'site_id', '=', $this->site_id ]; + $field = 'id,title,name,page,share,is_share,sort'; + $order = ''; + + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ "title" ], $where)->field($field)->order($order); + return $this->pageQuery($search_model); + } + + /** + * 获取自定义路由表信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'title,name,page,share,is_share,sort'; + return $this->model->field($field)->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); + } + + /** + * 获取自定义路由表信息 + * @param string $name + * @return array + */ + public function getInfoByName(string $name) + { + $field = 'id,title,name,page,share,is_share,sort'; + return $this->model->field($field)->where([ [ 'name', '=', $name ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); + } + + /** + * 添加自定义路由表 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data[ 'site_id' ] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + } + + /** + * 自定义路由表编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update($data); + return true; + } + + /** + * 删除自定义路由表 + * @param int $id + * @return bool + */ + public function del(int $id) + { + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->delete(); + } + + /** + * 修改分享内容 + * @param $data + * @return bool + */ + public function modifyShare($data) + { + $field = 'id'; + $data[ 'site_id' ] = $this->site_id; + $info = $this->model->field($field)->where([ [ 'name', '=', $data[ 'name' ] ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); + if (!empty($info)) { + $this->model->where([ [ 'id', '=', $info[ 'id' ] ], [ 'site_id', '=', $this->site_id ] ])->update([ 'share' => $data[ 'share' ] ]); + } else { + $this->model->create($data); + } + return true; + } + + /** + * 获取路由列表(存在的应用插件列表) + * @return array|null + */ + public function getApps() + { + $link = LinkDict::getLink([ + 'query' => 'addon' + ]); + return $link; + } + +} diff --git a/niucloud/app/service/admin/diy/DiyService.php b/niucloud/app/service/admin/diy/DiyService.php new file mode 100644 index 0000000..318b0c6 --- /dev/null +++ b/niucloud/app/service/admin/diy/DiyService.php @@ -0,0 +1,530 @@ +model = new Diy(); + } + + /** + * 获取自定义页面分页列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $where[] = [ 'site_id', '=', $this->site_id ]; + $field = 'id,site_id,title,name,template,type,mode,is_default,share,visit_count,create_time,update_time'; + $order = "update_time desc"; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ "title", "type", 'mode', 'addon_name' ], $where)->field($field)->order($order)->append([ 'type_name', 'type_page', 'addon_name' ]); + return $this->pageQuery($search_model); + } + + /** + * 获取自定义页面列表 + * @param array $where + * @param string $field + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getList(array $where = [], $field = 'id,title,name,template,type,mode,is_default,share,visit_count,create_time,update_time') + { + $order = "update_time desc"; + return $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ "title", "type", 'mode' ], $where)->field($field)->select()->order($order)->toArray(); + } + + /** + * 获取自定义页面信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,title,name,template,type,mode,value,is_default,is_change,share,visit_count'; + return $this->model->field($field)->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); + } + + public function getInfoByName(string $name) + { + $field = 'id,site_id,title,name,template,type,mode,value,is_default,is_change,share,visit_count'; + return $this->model->field($field)->where([ [ 'name', '=', $name ], [ 'site_id', '=', $this->site_id ], [ 'is_default', '=', 1 ] ])->findOrEmpty()->toArray(); + } + + /** + * 查询数量 + * @param array $where + * @return int + * @throws DbException + */ + public function getCount(array $where = []) + { + return $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'type' ], $where)->count(); + } + + /** + * 添加自定义页面 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data[ 'site_id' ] = $this->site_id; + $data[ 'create_time' ] = time(); + $data[ 'update_time' ] = time(); + + // 添加新页面,默认为1 + if (!empty($data[ 'type' ]) && $data[ 'type' ] == 'DIY_PAGE') { + $data[ 'is_default' ] = 1; + } + + // 将同类型页面的默认值改为0,默认页面只有一个 + if (!empty($data[ 'is_default' ])) { + $this->model->where([ [ 'name', '=', $data[ 'name' ] ], [ 'site_id', '=', $data[ 'site_id' ] ] ])->update([ 'is_default' => 0 ]); + } + $res = $this->model->create($data); + return $res->id; + } + + /** + * 自定义页面编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + $data[ 'update_time' ] = time(); + $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update($data); + return true; + } + + /** + * 删除自定义页面 + * @param int $id + * @return bool + */ + public function del(int $id) + { + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->delete(); + } + + /** + * 设为使用 + * @param int $id + * @return bool + * @throws Exception + */ + public function setUse(int $id) + { + try { + $info = $this->getInfo($id); + if (empty($info)) { + return false; + } + Db::startTrans(); + $this->model->where([ [ 'name', '=', $info[ 'name' ] ], [ 'site_id', '=', $this->site_id ] ])->update([ 'is_default' => 0 ]); + $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update([ 'is_default' => 1, 'update_time' => time() ]); + Db::commit(); + return true; + } catch (Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + } + + /** + * 页面加载初始化 + * @param array $params + * @return array + * @throws DbException + */ + public function getInit(array $params = []) + { + $template = $this->getTemplate(); + + $time = time(); + $data = []; + if (!empty($params[ 'id' ])) { + $data = $this->getInfo($params[ 'id' ]); + } elseif (!empty($params[ 'name' ])) { + $data = $this->getInfoByName($params[ 'name' ]); + } + + if (!empty($params[ 'name' ])) { + + // 查询启动页配置 + $diy_config_service = new DiyConfigService(); + $start_up_page = $diy_config_service->getStartUpPageConfig($params[ 'name' ]); + if (!empty($start_up_page)) { + if (!empty($start_up_page[ 'parent' ]) && $start_up_page[ 'parent' ] == 'DIY_PAGE') { + $id = str_replace('/app/pages/index/diy?id=', '', $start_up_page[ 'page' ]); + $data = $this->getInfo($id); + if (!empty($data)) { + $params[ 'name' ] = $data[ 'name' ]; + $params[ 'type' ] = $data[ 'type' ]; + } + } else { + foreach ($template as $k => $v) { + if ($start_up_page[ 'page' ] == $v[ 'page' ]) { + $data = $this->getInfoByName($k); + $params[ 'name' ] = $k; + $params[ 'type' ] = $k; + break; + } + } + } + } + } + + if (!empty($data)) { + // 编辑赋值 + + if (isset($template[ $data[ 'type' ] ])) { + $page = $template[ $data[ 'type' ] ]; + $data[ 'type_name' ] = $page[ 'title' ]; + $data[ 'page' ] = $page[ 'page' ]; + } + } else { + + // 新页面赋值 + $title = $params[ 'title' ] ? : '页面' . $time; + $type = $params[ 'type' ] ? : 'DIY_PAGE'; + $name = $type == 'DIY_PAGE' ? 'DIY_PAGE_RANDOM_' . $time : $type; + $type_name = ''; + $template_name = ''; // 页面模板名称 + $page_route = ''; // 页面路径 + $mode = 'diy'; // 页面模式,diy:自定义,fixed:固定 + $value = ''; + $is_default = 0; + + // 查询默认第一个页面模板数据 + if (isset($template[ $params[ 'name' ] ])) { + $page = $template[ $params[ 'name' ] ]; + $name = $params[ 'name' ]; + $type = $params[ 'name' ]; + $title = $page[ 'title' ]; + $type_name = $page[ 'title' ]; + $page_route = $page[ 'page' ]; + + $page_data = $this->getFirstPageData($type); + if (!empty($page_data)) { + $value = json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE); + $is_default = 1; + $template_name = $page_data[ 'template' ]; + $mode = $page_data[ 'mode' ]; + } + } else if (isset($template[ $type ])) { + // 查询指定页面数据 + $page = $template[ $type ]; + $type_name = $page[ 'title' ]; + $page_route = $page[ 'page' ]; + + // 如果页面类型一条数据也没有,那么要默认 使用中 + $count = $this->getCount([ 'type' => $type ]); + if ($count == 0) { + $is_default = 1; + } + + } + + $data = [ + 'name' => $name, + 'title' => $title, + 'type' => $type, + 'type_name' => $type_name, + 'template' => $template_name, + 'page' => $page_route, + 'mode' => $mode, + 'value' => $value, + 'is_default' => $is_default + ]; + + } + + $data[ 'component' ] = $this->getComponentList($data[ 'type' ]); + $data[ 'domain_url' ] = (new SystemService())->getUrl(); + + // 查询已安装的有效的应用 + $data[ 'addon_list' ] = (new CoreAddonService())->getInstallAddonList(); + return $data; + } + + /** + * 获取组件列表 + * @param string $name 支持页面标识 + * @return array + */ + public function getComponentList(string $name = '') + { + $data = ComponentDict::getComponent(); + foreach ($data as $k => $v) { + // 查询组件支持的页面 + $sort_arr = []; + foreach ($v[ 'list' ] as $ck => $cv) { + $support_page = $cv[ 'support_page' ]; + if (!(count($support_page) == 0 || in_array($name, $support_page))) { + unset($data[ $k ][ 'list' ][ $ck ]); + continue; + } + + $sort_arr [] = $cv[ 'sort' ]; + unset($data[ $k ][ 'list' ][ $ck ][ 'sort' ], $data[ $k ][ 'list' ][ $ck ][ 'support_page' ]); + } + array_multisort($sort_arr, SORT_ASC, $data[ $k ][ 'list' ]); //排序,根据 sort 排序 + } + + return $data; + } + + /** + * 获取自定义链接 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getLink() + { + $link = LinkDict::getLink(); + foreach ($link as $k => $v) { + $link[ $k ][ 'name' ] = $k; + if (!empty($v[ 'child_list' ])) { + foreach ($v[ 'child_list' ] as $ck => $cv) { + $link[ $k ][ 'child_list' ][ $ck ][ 'parent' ] = $k; + } + } + + // 查询自定义页面 + if ($k == 'DIY_PAGE') { + $diy_service = new DiyService(); + $list = $diy_service->getList([ 'type' => 'DIY_PAGE' ]); + foreach ($list as $ck => $cv) { + $link[ $k ][ 'child_list' ][] = [ + 'name' => $cv[ 'name' ], + 'title' => $cv[ 'title' ], + 'url' => '/app/pages/index/diy?id=' . $cv[ 'id' ] + ]; + } + + } + + if ($k == 'DIY_LINK') { + $link[ $k ][ 'parent' ] = 'DIY_LINK'; + } + + } + return $link; + } + + /** + * 修改分享内容 + * @param int $id + * @param $data + * @return bool + */ + public function modifyShare(int $id, $data) + { + $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->update([ 'share' => $data[ 'share' ] ]); + return true; + } + + /** + * 获取页面模板 + * @param array $params + * @return array + */ + public function getTemplate($params = []) + { + $page_template = TemplateDict::getTemplate($params); + foreach ($page_template as $k => $v) { + // 查询页面数据 + $page_params = [ + 'type' => $k, // 页面类型 + 'mode' => $params[ 'mode' ] ?? '' // 页面模式:diy:自定义,fixed:固定 + ]; + $page_template[ $k ][ 'template' ] = PagesDict::getPages($page_params); + } + return $page_template; + } + + /** + * 获取页面数据 + * @param $type + * @param $name + * @return array + */ + public function getPageData($type, $name) + { + $pages = PagesDict::getPages([ 'type' => $type ]); + return $pages[ $name ] ?? []; + } + + /** + * 获取默认页面数据 + * @param $type + * @param string $addon + * @return array|mixed + */ + public function getFirstPageData($type, $addon = '') + { + $pages = PagesDict::getPages([ 'type' => $type, 'addon' => $addon ]); + if (!empty($pages)) { + $template = array_key_first($pages); + $page = array_shift($pages); + $page[ 'template' ] = $template; + $page[ 'type' ] = $type; + return $page; + } + return []; + } + + /** + * 获取页面装修列表 + * @param $params + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getDecoratePage($params) + { + + // 查询当前装修的页面信息 + $template = $this->getTemplate([ 'action' => 'decorate', 'key' => [ $params[ 'type' ] ] ])[ $params[ 'type' ] ]; + + $template[ 'domain_url' ] = (new SystemService())->getUrl(); + + // 查询默认页面数据 + $default_page_data = $this->getFirstPageData($params[ 'type' ]); + + $use_template = [ + 'type' => $params[ 'type' ], // 页面类型标识 + 'name' => '', // 链接标识 + 'parent' => '', // 链接标识 + 'title' => $default_page_data[ 'title' ], // 模板名称 + 'cover' => $default_page_data[ 'cover' ], // 封面图 + 'url' => '', // 自定义页面链接,实时预览效果 + 'page' => $template[ 'page' ], // 页面地址 + 'action' => $template[ 'action' ] // 是否存在操作,decorate 表示支持装修 + ]; + + // 查询启动页配置 + $diy_config_service = new DiyConfigService(); + $start_up_page = $diy_config_service->getStartUpPageConfig($params[ 'type' ]); + + // 查询页面数据 + $info = $this->getInfoByName($params[ 'type' ]); + + if (!empty($start_up_page)) { + $use_template[ 'title' ] = $start_up_page[ 'title' ] ?? ''; + $use_template[ 'name' ] = $start_up_page[ 'name' ] ?? ''; + $use_template[ 'page' ] = $start_up_page[ 'page' ] ?? ''; + $use_template[ 'action' ] = $start_up_page[ 'action' ] ?? ''; + $use_template[ 'url' ] = $use_template[ 'page' ]; + $use_template[ 'parent' ] = $start_up_page[ 'parent' ] ?? ''; + + } elseif (!empty($info)) { + $use_template[ 'id' ] = $info[ 'id' ]; + $use_template[ 'title' ] = $info[ 'title' ]; + + // 查询模板页面数据 + $page_data = $this->getPageData($params[ 'type' ], $info[ 'template' ]); + if (!empty($page_data)) { + $use_template[ 'url' ] = $template[ 'page' ] . '?id=' . $info[ 'id' ]; + // $use_template[ 'cover' ] = $page_data[ 'cover' ]; // 默认图 + } else { + // 自定义页面,实时预览效果 + $use_template[ 'url' ] = '/app/pages/index/diy?id=' . $info[ 'id' ]; + // 清空模板信息 + $use_template[ 'cover' ] = ''; // 默认图 + } + } + + // 查询链接的名称标识,保证数据准确性 + $other_page = (new DiyRouteService())->getList([ 'url' => $use_template[ 'page' ] ]); + if (!empty($other_page)) { + $use_template[ 'title' ] = $other_page[ 0 ][ 'title' ] ?? ''; + $use_template[ 'name' ] = $other_page[ 0 ][ 'name' ]; + $use_template[ 'parent' ] = $other_page[ 0 ][ 'parent' ]; + $use_template[ 'action' ] = $other_page[ 0 ][ 'action' ]; + } + + // 如果没有预览图,并且没有地址,则赋值默认页面地址 + if (empty($use_template[ 'cover' ]) && empty($use_template[ 'url' ])) { + $use_template[ 'url' ] = $template[ 'page' ]; + } + + $template[ 'use_template' ] = $use_template; + + return $template; + } + + /** + * 设置启动页 + * @param array $params + * @return \app\model\sys\SysConfig|bool|\think\Model + */ + public function changeTemplate(array $params = []) + { + $start_up_page_data = [ + 'type' => $params[ 'type' ], // 页面类型 + 'name' => $params[ 'name' ], // 链接名称标识 + 'parent' => $params[ 'parent' ], // 链接父级名称标识 + 'page' => $params[ 'page' ], // 链接路由 + 'title' => $params[ 'title' ], // 链接标题 + 'action' => $params[ 'action' ] // 是否存在操作,decorate 表示支持装修 + ]; + $diy_config_service = new DiyConfigService(); + $res = $diy_config_service->setStartUpPageConfig($start_up_page_data); + return $res; + } + + /** + * 获取模板页面(存在的应用插件列表) + * @return array + */ + public function getApps() + { + $page_template = TemplateDict::getTemplate([ + 'query' => 'addon' + ]); + return $page_template; + } + +} diff --git a/niucloud/app/service/admin/generator/Generate.php b/niucloud/app/service/admin/generator/Generate.php new file mode 100644 index 0000000..3a17938 --- /dev/null +++ b/niucloud/app/service/admin/generator/Generate.php @@ -0,0 +1,230 @@ +outPath = root_path() . 'public/upload/generator/'; + $this->runtimePath = root_path() . 'public/upload/'; + } + + + /** + * 删除生成文件 + */ + public function delOutFiles() + { + // 删除runtime目录制定文件夹 + !is_dir($this->outPath) && mkdirs($this->outPath); + del_target_dir($this->outPath, false); + } + + + /** + * 设置生成状态 + * @param $name + * @param false $status + */ + public function setFlag($name, $status = false) + { + $this->flag = $name; + cache($name, (int)$status, 3600); + } + + + /** + * 获取生成状态标记 + * @return mixed|object|App + */ + public function getFlag() + { + return cache($this->flag); + } + + + /** + * 删除标记时间 + */ + public function delFlag() + { + cache($this->flag, null); + } + + + /** + * 生成器相关类 + * @return string[] + */ + public function getClassGenerator() + { + return [ + ControllerGenerator::class, + ServiceGenerator::class, + ModelGenerator::class, + ValidateGenerator::class, + MenuSqlGenerator::class, + AdminApiRouteGenerator::class, + WebIndexGenerator::class, + WebEditGenerator::class, + WebEditPageGenerator::class, + WebApiGenerator::class, + WebLangGenerator::class, + WebEditLangGenerator::class + ]; + } + + + /** + * 压缩文件 + */ + public function zipFile() + { + $fileName = 'niucloud-' . date('YmdHis') . '.zip'; + $this->zipName = $fileName; + $this->zipPath = $this->outPath . $fileName; + $zip = new ZipArchive(); + $zip->open($this->zipPath, ZipArchive::CREATE); + $this->addFileZip($this->runtimePath, 'generator', $zip); + $zip->close(); + } + + + /** + * 往压缩包写入文件 + * @param $basePath + * @param $dirName + * @param $zip + */ + public function addFileZip($basePath, $dirName, $zip) + { + $handler = opendir($basePath . $dirName); + while (($filename = readdir($handler)) !== false) { + if ($filename != '.' && $filename != '..') { + if (is_dir($basePath . $dirName . '/' . $filename)) { + // 当前路径是文件夹 + $this->addFileZip($basePath, $dirName . '/' . $filename, $zip); + } else { + // 写入文件到压缩包 + $zip->addFile($basePath . $dirName . '/' . $filename, $dirName . '/' . $filename); + } + } + } + closedir($handler); + } + + /** + * 返回压缩包临时路径 + * @return string + */ + public function getDownloadUrl() + { + return 'upload/generator/' .$this->zipName; + } + + + /** + * 生成文件 + * @param array $table + */ + public function generate(array $table) + { + foreach ($this->getClassGenerator() as $item) { + $generator = app()->make($item); + $generator->init($table); + $generator->generate(); + $this->setFlag($this->flag, true); + } + } + + + /** + * 预览文件 + * @param array $table + * @return array + */ + public function preview(array $table) + { + $data = []; + foreach ($this->getGenerator() as $item) { + $generator = app()->make($item); + $generator->init($table); + + $file_info = $generator->fileInfo(); + if(!empty($file_info)) + { + $data[] = $file_info; + } + + } + return $data; + } + + + + public function getGenerator() + { + return [ + ControllerGenerator::class, + ModelGenerator::class, + ServiceGenerator::class, + ValidateGenerator::class, + MenuSqlGenerator::class, + AdminApiRouteGenerator::class, + WebApiGenerator::class, + WebLangGenerator::class, + WebEditGenerator::class, + WebIndexGenerator::class, + WebEditPageGenerator::class, + WebEditLangGenerator::class + ]; + } + + +} diff --git a/niucloud/app/service/admin/generator/GenerateService.php b/niucloud/app/service/admin/generator/GenerateService.php new file mode 100644 index 0000000..c0b2159 --- /dev/null +++ b/niucloud/app/service/admin/generator/GenerateService.php @@ -0,0 +1,656 @@ +withSearch(['table_name', 'table_content','addon_name'], $where)->with('addon')->field($field)->order($order); + return $this->pageQuery($search_model); + } + + /** + * 获取代码生成信息 + * @param int $id + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getInfo(int $id) + { + $field = 'id,table_name,table_content,class_name,module_name,edit_type,addon_name,order_type,parent_menu,relations,synchronous_number'; + + $info = (new GenerateTable())->field($field)->where([['id', '=', $id]])->findOrEmpty()->toArray(); + + $info['table_column'] = (new GenerateColumn())->where([['table_id', '=', $id]])->select()->toArray(); + + $column = (new GenerateColumn())->where([['table_id', '=', $id],['is_delete','=',1]])->find(); + if($info && $info['order_type'] != 0) + { + $order_column = (new GenerateColumn())->where([['table_id', '=', $id],['is_order','=',1]])->find(); + if($order_column) + { + $info['order_column_name'] = $order_column['column_name']; + }else{ + $info['order_column_name'] = ''; + } + }else{ + $info['order_column_name'] = ''; + } + + if($column) + { + $info['is_delete'] = 1; + $info['delete_column_name'] = $column['column_name']; + }else{ + $info['is_delete'] = 0; + $info['delete_column_name'] = ''; + } + if($info['relations'] == '[]') + { + $info['relations'] = []; + }else{ + if(!empty($info['relations'])) + { + $info['relations'] = json_decode($info['relations'],true); + }else{ + $info['relations'] = []; + } + + } + if($info && !empty($info['table_column'])) + { + foreach ($info['table_column'] as &$value) + { + if($value['view_type'] === 'number') + { + + if(!empty($value['validate_type'])) + { + + $num_validate = json_decode($value['validate_type'],true); + if($num_validate[0] == 'between') + { + $value['view_max'] = $num_validate[1][1]; + $value['view_min'] = $num_validate[1][0]; + } else if($num_validate[0] == 'max') + { + $value['view_max'] = $num_validate[1][0]; + + } else if($num_validate[0] == 'min') + { + $value['view_min'] = $num_validate[1][0]; + }else{ + $value['view_max'] = 100; + $value['view_min'] = 0; + } + }else{ + $value['view_min'] = 0; + $value['view_max'] = 100; + } + + }else{ + $value['view_min'] = 0; + $value['view_max'] = 100; + } + + if(!empty($value['validate_type'])) + { + $validate = json_decode($value['validate_type'],true); + + if($validate[0] == 'between') + { + $value['max_number'] = $validate[1][1]; + $value['min_number'] = $validate[1][0]; + } else if($validate[0] == 'max') + { + $value['max_number'] = $validate[1][0]; + + } else if($validate[0] == 'min') + { + $value['min_number'] = $validate[1][0]; + }else{ + $value['max_number'] = 120; + $value['min_number'] = 1; + } + $value['validate_type'] = $validate[0]; + }else{ + $value['max_number'] = 120; + $value['min_number'] = 1; + } + if(!empty($value['model'])) + { + $value['select_type'] = 2; + }else{ + $value['select_type'] = 1; + } + + } + } + return $info; + } + + /** + * 添加代码生成 + * @param array $data + * @return GenerateTable|Model + * @throws Exception + */ + public function add(array $data) + { + Db::startTrans(); + try { + $sql = 'SHOW TABLE STATUS WHERE 1=1 '; + $tablePrefix = config('database.connections.mysql.prefix'); + if (!empty($data['table_name'])) { + $sql .= "AND name='" . $data['table_name']."'"; + } + + $tables = Db::query($sql); + $table_info = $tables[0] ?? []; + if(empty($table_info)) throw new AdminException('DATA_NOT_EXIST'); + + $table_name = str_replace($tablePrefix, '', $table_info['Name']); + $fields = Db::name($table_name)->getFields(); + + $add_table_data = [ + 'table_name' => $table_name, + 'table_content' => $table_info['Comment'], + 'class_name' => $table_name, + 'create_time' => time(), + 'module_name' => $table_name + ]; + + $res = (new GenerateTable())->create($add_table_data); + + $table_id = $res->id; + $add_column_data = []; + $default_column = ['id', 'create_time', 'update_time']; + foreach ($fields as $k => $v){ + $required = 0; + if ($v['notnull'] && !$v['primary'] && !in_array($v['name'], $default_column)) { + $required = 1; + } + + $add_column_data[] = [ + 'table_id' => $table_id, + 'column_name' => $v['name'], + 'column_comment' => $v['comment'], + 'column_type' => self::getDbFieldType($v['type']), + 'is_required' => $required, + 'is_pk' => $v['primary'] ? 1 : 0, + 'is_insert' => !in_array($v['name'], $default_column) ? 1 : 0, + 'is_update' => !in_array($v['name'], $default_column) ? 1 : 0, + 'is_lists' => !in_array($v['name'], $default_column) ? 1 : 0, + 'is_delete' => 0, +// 'is_query' => !in_array($v['name'], $default_column) ? 1 : 0, + 'query_type' => '=', + 'view_type' => 'input', + 'dict_type' => $v['dict_type'] ?? '', + 'addon' => $v['addon'] ?? '', + 'model' => $v['model'] ?? '', + 'label_key' => $v['label_key'] ?? '', + 'value_key' => $v['value_key'] ?? '', + 'create_time' => time(), + 'update_time' => time() + ]; + } + + (new GenerateColumn())->saveAll($add_column_data); + + Db::commit(); + return $table_id; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + + } + + /** + * 代码生成编辑 + * @param int $id + * @param array $params + * @return bool + */ + public function edit(int $id, array $params) + { + Db::startTrans(); + try { + // 更新主表信息 + (new GenerateTable())->where([ ['id', '=', $id] ])->save([ + 'id' => $id, + 'table_name' => $params['table_name'], + 'table_content' => $params['table_content'], + 'module_name' => $params['module_name'] ?? '', + 'class_name' => $params['class_name'] ?? '', + 'edit_type' => $params['edit_type'] ?? 1, + 'addon_name' => $params['addon_name'] ?? '', + 'order_type' => $params['order_type'] ?? 0, + 'parent_menu' => $params['parent_menu'] ?? '', + 'relations' => $params['relations'] ?? [] + ]); + (new GenerateColumn())->where([['table_id', '=', $id]])->delete(); + + $params['table_column'] = json_decode($params['table_column'], true); + + // 更新从表字段信息 + $add_column_data = []; + foreach ($params['table_column'] as $item) { + if($params['is_delete'] == 1) + { + if($item['column_name'] == $params['delete_column_name']) + { + $item['is_delete'] = 1; + }else{ + $item['is_delete'] = 0; + } + }else{ + $item['is_delete'] = 0; + } + if($params['order_type'] != 0) + { + if($item['column_name'] == $params['order_column_name']) + { + $item['is_order'] = 1; + }else{ + $item['is_order'] = 0; + } + }else{ + $item['is_order'] = 0; + } + if(!empty($item['validate_type']) && $item['view_type'] != 'number') + { + if($item['validate_type'] == 'between') + { + $validate_type = [$item['validate_type'],[$item['min_number'],$item['max_number']]]; + }else if($item['validate_type'] == 'max'){ + $validate_type = [$item['validate_type'],[$item['max_number']]]; + }else if($item['validate_type'] == 'min'){ + $validate_type = [$item['validate_type'],[$item['min_number']]]; + }else{ + $validate_type = [$item['validate_type'],[]]; + } + $item['validate_type'] = json_encode($validate_type,JSON_UNESCAPED_UNICODE); + } + if($item['view_type'] === 'number') + { + $validate_type = ['between',[$item['view_min'],$item['view_max']]]; + $item['validate_type'] = $validate_type; + $item['validate_type'] = json_encode($validate_type,JSON_UNESCAPED_UNICODE); + } + if(!empty($item['model'])) + { + + $item['dict_type'] = ''; + } + + $add_column_data[] = [ + 'table_id' => $id, + 'column_name' => $item['column_name'] ?? '', + 'column_comment' => $item['column_comment'] ?? '', + 'is_pk' => $item['is_pk'], + 'is_required' => $item['is_required'] ?? 0, + 'is_insert' => $item['is_insert'] ?? 0, + 'is_update' => $item['is_update'] ?? 0, + 'is_lists' => $item['is_lists'] ?? 0, +// 'is_query' => $item['is_query'] ?? 0, + 'is_search' => $item['is_search'] ?? 0, + 'is_delete' => $item['is_delete'] ?? 0, + 'is_order' => $item['is_order'] ?? 0, + 'query_type' => $item['query_type'], + 'view_type' => $item['view_type'] ?? 'input', + 'dict_type' => $item['dict_type'] ?? '', + 'addon' => $item['addon'] ?? '', + 'model' => $item['model'] ?? '', + 'label_key' => $item['label_key'] ?? '', + 'value_key' => $item['value_key'] ?? '', + 'update_time' => time(), + 'create_time' => time(), + 'column_type' => $item['column_type'] ?? 'string', + 'validate_type' => $item['validate_type'] ?? '', + 'validate_rule' => $params['rule'] ?? [] + ]; + } + (new GenerateColumn())->saveAll($add_column_data); + Db::commit(); + return true; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + } + + /** + * 删除代码生成 + * @param int $id + * @return bool + */ + public function del(int $id) + { + Db::startTrans(); + try { + (new GenerateTable())->where([['id', '=', $id]])->delete(); + (new GenerateColumn())->where([['table_id', '=', $id]])->delete(); + Db::commit(); + return true; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + } + + /** + * 生成代码 + * @param array $params + * @return string[] + */ + public function generate(array $params) + { + if($params['generate_type'] == 2) + { + try { + $id = $params['id']; + $table_info = (new GenerateTable())->where([ ['id', '=', $id] ])->field('*')->find()->toArray(); + $table_info['fields'] = (new GenerateColumn())->where([ ['table_id', '=', $id] ])->field('*')->select()->toArray(); + + $generator = new Generate(); + $generator->delOutFiles(); + + $flag = array_unique(array_column($table_info, 'table_name')); + $flag = implode(',', $flag); + $generator->setFlag(md5($flag . time())); + $table_info['generate_type'] = 2; + $generator->generate($table_info); + + $zipFile = ''; + // 生成压缩文件包 + if ($generator->getFlag()) { + $generator->zipFile(); + $generator->delFlag(); + $zipFile = $generator->getDownloadUrl(); + } + + return ['file' => $zipFile]; + + } catch ( Exception $e) { + throw new AdminException($e->getMessage()); + } + }else if($params['generate_type'] == 3){ + try { + $id = $params['id']; + $table_info = (new GenerateTable())->where([ ['id', '=', $id] ])->field('*')->find()->toArray(); + $table_info['fields'] = (new GenerateColumn())->where([ ['table_id', '=', $id] ])->field('*')->select()->toArray(); + $synchronous_number = $table_info['synchronous_number'] +1; + (new GenerateTable())->where([ ['id', '=', $id] ])->save(['synchronous_number' => $synchronous_number]); + $generator = new Generate(); + $generator->delOutFiles(); + $flag = array_unique(array_column($table_info, 'table_name')); + $flag = implode(',', $flag); + $generator->setFlag(md5($flag . time())); + $table_info['generate_type'] = 3; + $generator->generate($table_info); + + return []; + + } catch ( Exception $e) { + throw new AdminException($e->getMessage()); + } + }else{ + return []; + } + + } + + /** + * 预览 + * @param array $params + * @return array + */ + public static function preview(array $params) + { + try { + $id = $params['id']; + $table_info = (new GenerateTable())->where([ ['id', '=', $id] ])->field('*')->find()->toArray(); + $table_info['fields'] = (new GenerateColumn())->where([ ['table_id', '=', $id] ])->field('*')->select()->toArray(); + + $generateService = app()->make(Generate::class); + $table_info['generate_type'] = 1; + return $generateService->preview($table_info); + + } catch ( Exception $e) { + throw new AdminException($e->getMessage()); + } + } + + /** + * 获取数据表字段类型 + * @param string $type + * @return string + */ + public static function getDbFieldType(string $type): string + { + if (str_starts_with($type, 'set') || str_starts_with($type, 'dict')) { + $result = 'string'; + } elseif (preg_match('/(double|float|decimal|real|numeric)/is', $type)) { + $result = 'float'; + } elseif (preg_match('/(int|serial|bit)/is', $type)) { + $result = 'int'; + } elseif (preg_match('/bool/is', $type)) { + $result = 'bool'; + } elseif (str_starts_with($type, 'timestamp')) { + $result = 'timestamp'; + } elseif (str_starts_with($type, 'datetime')) { + $result = 'datetime'; + } elseif (str_starts_with($type, 'date')) { + $result = 'date'; + } else { + $result = 'string'; + } + return $result; + } + + /** + * 查询表 + * @param array $params + * @return mixed + */ + public function tableList(array $params = []) + { + $sql = 'SHOW TABLE STATUS WHERE 1=1 '; + if (!empty($params['name'])) { + $sql .= "AND name LIKE '%" . $params['name'] . "%'"; + } + if (!empty($params['comment'])) { + $sql .= "AND comment LIKE '%" . $params['comment'] . "%'"; + } + return Db::query($sql); + } + + /** + * 检测文件是否存在 + */ + public function checkFile($checkFile) + { + + $info = (new GenerateTable())->where([['id', '=', $checkFile['id']]])->findOrEmpty()->toArray(); + $dir = dirname(root_path()); + if(empty($info['class_name'])) + { + $info['class_name'] = Str::studly($info['table_name']); + } + if(empty($info['module_name'])) + { + $info['module_name'] = Str::camel($info['table_name']); + } + if(!empty($info['addon_name'])) + { + $controllerFile = $dir.'\\niucloud\\addon\\'.$info['addon_name'].'\\app\\adminapi\\controller\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $modelFile = $dir.'\\niucloud\\addon\\'.$info['addon_name'].'\\app\\model\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $validateFile = $dir.'\\niucloud\\addon\\'.$info['addon_name'].'\\app\\validate\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $webViewFile = $dir.'\\admin\\src\\'.$info['addon_name'].'\\views\\'.$info['module_name']; + }else{ + $controllerFile = $dir.'\\niucloud\\app\\adminapi\\controller\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $modelFile = $dir.'\\niucloud\\app\model\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $validateFile = $dir.'\\niucloud\\app\validate\\'.$info['module_name'].'\\'.$info['class_name'].'.php'; + $webViewFile = $dir.'\\admin\\src\\views'.'\\'.$info['module_name']; + } + + if(file_exists($controllerFile) && file_exists($modelFile) && file_exists($validateFile) && file_exists($webViewFile)) + { + $is_check = 1; + }else{ + $is_check = 2; + } + + return $is_check; + } + + /** + * 获取表字段 + */ + public function getTableColumn($data) + { + $sql = 'SHOW TABLE STATUS WHERE 1=1 '; + $tablePrefix = config('database.connections.mysql.prefix'); + if (!empty($data['table_name'])) { + $sql .= "AND name='" .$tablePrefix.$data['table_name']."'"; + } + $tables = Db::query($sql); + $table_info = $tables[0] ?? []; + if(empty($table_info)) throw new AdminException('DATA_NOT_EXIST'); + $table_name = str_replace($tablePrefix, '', $table_info['Name']); + return Db::name($table_name)->getFields(); + + } + + /** + * @notes 获取所有模型 + */ + public static function getModels($data) + { + if($data['addon'] == 'system') + { + //获取系统模型 + $modulePath = dirname(root_path()) . '/niucloud/app/model/'; + if(!is_dir($modulePath)) { + return []; + } + $modulefiles = glob($modulePath . '*'); + $targetFiles = []; + foreach ($modulefiles as $file) { + $fileBaseName = basename($file, '.php'); + + if (is_dir($file)) { + $file = glob($file . '/*'); + foreach ($file as $item) { + if (is_dir($item)) { + continue; + } + $targetFiles[] = sprintf( + "app\\model\\%s\\%s", + $fileBaseName, + basename($item, '.php') + ); + } + } else { + if ($fileBaseName == 'BaseModel') { + continue; + } + $targetFiles[] = sprintf( + "app\\model\\%s", + basename($file, '.php') + ); + } + } + }else{ + //获取插件模型 + $path = dirname(root_path())."/niucloud/addon/".$data['addon']."/app/model"; + + if(!is_dir($path)) { + return []; + } + + $modulefiles = glob($path . '/*'); + + $targetFiles = []; + foreach ($modulefiles as $file) { + $fileBaseName = basename($file, '.php'); + + if (is_dir($file)) { + + $file = glob($file . '/*'); + + foreach ($file as $item) { + + if (is_dir($item)) { + continue; + } + $targetFiles[] = sprintf( + 'addon\\'.$data['addon']."\\app\\model\\%s\\%s", + $fileBaseName, + basename($item, '.php') + ); + } + } else { + + if ($fileBaseName == 'BaseModel') { + continue; + } + $targetFiles[] = sprintf( + 'addon\\'.$data['addon']."\\app\\model\\%s", + basename($file, '.php') + ); + } + } + } + return $targetFiles; + } + + public function getModelColumn($data) + { + $model = new $data['model']; + $table = $model->getModelColumn(); + return $table; + } + +} diff --git a/niucloud/app/service/admin/generator/core/AdminApiRouteGenerator.php b/niucloud/app/service/admin/generator/core/AdminApiRouteGenerator.php new file mode 100644 index 0000000..7545444 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/AdminApiRouteGenerator.php @@ -0,0 +1,334 @@ +getRouteGroupName(), + $this->getClassComment(), + $this->getUCaseClassName(), + $this->getNotes(), + $this->getPk(), + $this->moduleName, + $this->getRouteName(), + $this->getRoutePath(), + $this->getWithRoute(), + $this->getRoute(), + $this->getBegin(), + $this->getEnd(), + ]; + + $vmPath = $this->getvmPath('admin_api_route'); + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + + /** + * 获取注释名称 + * @return string + */ + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + public function getRoute() + { + $dir = dirname(root_path()); + if(!empty($this->addonName)) + { + $file = $dir.DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR.'route.php'; + }else{ + $file = $dir.DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR."$this->moduleName".'php'; + } + + if(file_exists($file)) + { + $content = file_get_contents($file); + $code_begin = 'USER_CODE_BEGIN -- '.$this->getTableName() . PHP_EOL; + $code_end = 'USER_CODE_END -- '.$this->getTableName() . PHP_EOL; + if(strpos($content,$code_begin) !== false && strpos($content,$code_end) !== false) + { + // 清除相应对应代码块 + $pattern = "/\/\/\s+{$code_begin}[\S\s]+{$code_end}?/"; + $route = preg_replace($pattern, '', $content); + }else{ + $route = $content; + } + }else{ + $route = "getTableName(); + return $begin; + } + + public function getEnd() + { + $end = '// USER_CODE_END -- '.$this->getTableName(); + return $end; + } + + + /** + * 获取表主键 + * @return mixed|string + */ + public function getPk() + { + $pk = 'id'; + if (empty($this->tableColumn)) { + return $pk; + } + + foreach ($this->tableColumn as $item) { + if ($item['is_pk']) { + $pk = $item['column_name']; + } + } + return $pk; + } + + + /** + * 获取类注释 + * @return string + */ + + public function getClassComment() + { + if(!empty($this->addonName)) + { + $tpl = $this->addonName . '路由'; + }else{ + if (!empty($this->table['table_content'])) { + $tpl = $this->table['table_content'] . '路由'; + } else { + $tpl = $this->getUCaseName() . '路由'; + } + } + + return $tpl; + } + + /** + * 路由名称 + * @return string + */ + public function getRouteName() + { + //如果是某个模块下的功能,公用一个路由 + if($this->moduleName && ($this->getLCaseTableName() != $this->moduleName) && $this->className){ + return Str::lower($this->className); + }else{ + return $this->getLCaseTableName(); + } + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath . DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径(download) + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.'.$this->addonName.'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'route'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/app/adminapi/route/'; + }else{ + $dir = 'niucloud/app/adminapi/route/'; + } + return $dir; + } + + /** + * 生成文件名 + * @return string + */ + public function getFileName() + { + if(!empty($this->addonName)) + { + return 'route.php'; + }else{ + return Str::lower($this->moduleName) . '.php'; +// //如果是某个模块下的功能,公用一个路由 +// if($this->moduleName && ($this->getLCaseTableName() != $this->moduleName)){ +// return Str::lower($this->moduleName) . '.php'; +// }else{ +// return 'route.php'; +// } + } + + } + + /** + * 获取路由分组 + * @return string + */ + public function getRouteGroupName() + { + if(!empty($this->addonName)) + { + return $this->addonName; + }else{ + return $this->moduleName; + } + } + + /** + * 获取路由地址 + * @return string + */ + public function getRoutePath() + { + if(!empty($this->addonName)) + { + return 'addon\\'.$this->addonName.'\\app\adminapi\\controller\\'.$this->moduleName.'\\'.$this->getUCaseClassName().'@'; + }else{ + return $this->moduleName.'.'.$this->getUCaseClassName().'/'; + } + } + + /** + * 远程下拉Route + * @return string + */ + public function getWithRoute() + { + if(!empty($this->addonName)) + { + $route_path = 'addon\\'.$this->addonName.'\\app\adminapi\\controller\\'.$this->moduleName.'\\'.$this->getUCaseClassName().'@'; + }else{ + $route_path = $this->moduleName.'.'.$this->getUCaseClassName().'/'; + } + + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= PHP_EOL.' Route::get('."'".$with."'".','."'".$route_path.'get'.Str::studly($with).'All'."'".');'.PHP_EOL; + } + } + return $content; + } + + + /** + * use + * @return string + */ + +} diff --git a/niucloud/app/service/admin/generator/core/BaseGenerator.php b/niucloud/app/service/admin/generator/core/BaseGenerator.php new file mode 100644 index 0000000..d56bb3a --- /dev/null +++ b/niucloud/app/service/admin/generator/core/BaseGenerator.php @@ -0,0 +1,435 @@ +basePath = base_path(); + $this->rootPath = root_path(); + $this->vmDir = $this->basePath . 'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'generator'.DIRECTORY_SEPARATOR.'vm'.DIRECTORY_SEPARATOR; + $this->outDir = $this->rootPath . 'public'.DIRECTORY_SEPARATOR.'upload'.DIRECTORY_SEPARATOR.'generator'.DIRECTORY_SEPARATOR; + $this->checkDir($this->outDir); + $this->rootDir = dirname(root_path()); + } + + + /** + * 初始化表数据 + * @param array $table + */ + public function init(array $table) + { + // 设置当前表信息 + $this->setTable($table); + // 设置模块名 + $this->setModuleName($table['module_name'] ?? ''); + // 设置类名 + $this->setClassName($table['class_name'] ?? $table['table_name']); + // 设置插件名 + $this->setAddonName($table['addon_name'] ?? ''); + // 替换模板中的文本 + $this->replaceText(); + } + + + /** + * 生成文件到模块或runtime目录 + */ + public function generate() + { + $paths = []; + if($this->table['generate_type'] == 2) + { + // 生成到runtime目录(下载) + $paths[] = $this->getRuntimeOutDir() . $this->getFileName(); + }else if($this->table['generate_type'] == 3){ + // 生成到代码中 + $paths[] = $this->getObjectOutDir() . $this->getFileName(); + // 生成到插件中 + if ($this->addonName && method_exists($this, 'getAddonObjectOutDir')) $paths[] = $this->getAddonObjectOutDir() . $this->getFileName(); + } + + // 写入内容 + if(!empty($this->getFileName())) + { + foreach ($paths as $path) { + file_put_contents($path, $this->text); + } + } + + } + + + /** + * 文件信息 + * @return array + */ + public function fileInfo(): array + { + if(!empty($this->getFileName())) + { + return + [ + 'name' => $this->getFileName(), + 'type' => 'php', + 'content' => $this->text, + 'file_dir' => $this->getFilePath(), + ]; + }else{ + return []; + } + + } + + /** + * 文件夹不存在则创建 + * @param string $path + */ + public function checkDir(string $path) + { + !is_dir($path) && mkdir($path, 0777, true); + } + + /** + * 设置模块名 + * @param string $moduleName + */ + public function setModuleName(string $moduleName): void + { + $this->moduleName = strtolower($moduleName); + if(empty($this->moduleName)){ + $this->moduleName = strtolower($this->getLCaseName()); + } + } + + + /** + * 设置表信息 + * @param $table + */ + public function setTable($table) + { + $this->table = !empty($table) ? $table : []; + $this->tableColumn = $table['fields'] ?? []; + } + + + /** + * 设置类名 + * @param string $className + */ + public function setClassName(string $className): void + { + $this->className = $className; + } + + /** + * 设置插件 + * @param string $addonName + */ + public function setAddonName(string $addonName): void + { + $this->addonName = $addonName; + } + /** + * 设置生成文件的文本内容 + * @param string $text + */ + public function setText(string $text): void + { + $this->text = $text; + } + + + /** + * 获取模板路径 + * @param string $templateName + * @return string + */ + public function getvmPath(string $templateName): string + { + return $this->vmDir . $templateName . '.vm'; + } + + + /** + * 首字母小写命名 + * @return string + */ + public function getLCaseName() + { + return Str::camel($this->getTableName()); + } + + + /** + * 首字母大写命名 + * @return string + */ + public function getUCaseName() + { + return Str::studly($this->getTableName()); + } + + + /** + * 小写表名 + * @return string + */ + public function getLCaseTableName() + { + return Str::lower($this->getTableName()); + } + + + /** + * 类名称大写 + * @return string + */ + public function getUCaseClassName() + { + if($this->className) return Str::studly($this->className); + return $this->getUCaseName(); + } + /** + * 类名称小写 + * @return string + */ + public function getLCaseClassName() + { + if($this->className) return Str::camel($this->className); + return $this->getLCaseName(); + } + + + /** + * 获取表名 + * @return array|string|string[] + */ + public function getTableName() + { + $tablePrefix = config('database.connections.mysql.prefix'); + return str_replace($tablePrefix, '', $this->table['table_name']); + } + + + /** + * 获取表主键 + * @return mixed|string + */ + public function getPk() + { + $pk = 'id'; + if (empty($this->tableColumn)) { + return $pk; + } + + foreach ($this->tableColumn as $item) { + if ($item['is_pk']) { + $pk = $item['column_name']; + } + } + return $pk; + } + + + /** + * 获取缺省值 + * @param string $type + * @return int|string + */ + public function getDefault(string $type) + { + if (str_starts_with($type, 'set') || str_starts_with($type, 'dict')) { + $result = '""'; + } elseif (preg_match('/(int|serial|bit)/is', $type)) { + $result = '0'; + } elseif (preg_match('/(double|float|decimal|real|numeric)/is', $type)) { + $result = '0.00'; + } elseif (preg_match('/bool/is', $type)) { + $result = 'false'; + } elseif (str_starts_with($type, 'timestamp')) { + $result = time(); + } elseif (str_starts_with($type, 'datetime')) { + $result = '"'.date('Y-m-d H:i:s').'"'; + } elseif (str_starts_with($type, 'date')) { + $result = '"'.date('Y-m-d H:i:s').'"'; + } else { + $result = '""'; + } + return $result; + } + + /** + * 获取作者信息 + * @return mixed|string + */ + public function getAuthor() + { + return empty($this->table['author']) ? 'Niucloud team' : $this->table['author']; + } + + + /** + * 代码生成备注时间 + * @return string + */ + public function getNoteDate() + { + return date('Y/m/d H:i'); + } + + + /** + * 设置空额占位符 + * @param $content + * @param $blankpace + * @return string + */ + public function setBlankSpace($content, $blankpace) + { + $content = explode(PHP_EOL, $content); + foreach ($content as $line => $text) { + $content[$line] = $blankpace . $text; + } + return (implode(PHP_EOL, $content)); + } + + + /** + * 替换文件的内容 + * @param $old + * @param $new + * @param $template + * @return array|false|string|string[] + */ + + public function replaceFileText($old, $new, $template) + { + return str_replace($old, $new, file_get_contents($template)); + } + + +} diff --git a/niucloud/app/service/admin/generator/core/ControllerGenerator.php b/niucloud/app/service/admin/generator/core/ControllerGenerator.php new file mode 100644 index 0000000..787eb09 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/ControllerGenerator.php @@ -0,0 +1,368 @@ +getNameSpace(), + $this->getUse(), + $this->getUCaseClassName(), + $this->getClassComment(), + $this->getUCaseClassName(), + $this->getPackageName(), + $this->getNotes(), + $this->getAuthor(), + $this->getNoteDate(), + $this->getValidate(), + $this->getAddField(), + $this->getEditField(), + $this->getSearchParams(), + $this->getWithController() + ]; + + $vmPath = $this->getvmPath('controller'); + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + + /** + * 获取命名空间 + * @return string + */ + public function getNameSpace() + { + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + return "namespace addon\\".$this->addonName."\\app\\adminapi\\controller\\" . $this->moduleName . ';'; + } + + }else{ + if (!empty($this->moduleName)) { + return "namespace app\\adminapi\\controller\\" . $this->moduleName . ';'; + } + } + + return "namespace app\\adminapi\\controller;"; + } + + /** + * 代码验证 + * @return string + */ + public function getValidate() + { + if(!empty($this->addonName)) + { + return 'addon\\'.$this->addonName.'\\app\validate\\'.$this->moduleName.'\\' . $this->getUCaseClassName(); + }else{ + return 'app\validate\\'.$this->moduleName.'\\' . $this->getUCaseClassName(); + } + + } + + /** + * 添加字段 + * @return string + */ + public function getAddField() + { + $str = ''; + $last_field = end($this->table['fields'])['column_name']; + foreach ($this->table['fields'] as $v){ + if(!$v['is_pk'] && $v['is_insert'] && $v['column_name'] != 'site_id'){ + $str .= ' ["'.$v['column_name'].'",'.$this->getDefault($v['column_type']).']'; + if($last_field != $v['column_name']) $str .= ','.PHP_EOL; + } + } + return '['.PHP_EOL.$str.PHP_EOL.' ]'; + } + + /** + * 编辑字段 + * @return string + */ + public function getEditField() + { + $str = ''; + $last_field = end($this->table['fields'])['column_name']; + foreach ($this->table['fields'] as $v){ + if(!$v['is_pk'] && $v['is_update'] && $v['column_name'] != 'site_id'){ + $str .= ' ["'.$v['column_name'].'",'.$this->getDefault($v['column_type']).']'; + if($last_field != $v['column_name']) $str .= ','.PHP_EOL; + } + } + return '['.PHP_EOL.$str.PHP_EOL.' ]'; + } + + /** + * 搜索参数 + * @return string + */ + public function getSearchParams() + { + $str = ''; + $last_field = end($this->table['fields'])['column_name']; + foreach ($this->table['fields'] as $v){ + if(!$v['is_pk'] && $v['is_search'] && $v['column_name'] != 'site_id'){ + if($v['query_type'] == 'BETWEEN'){ + $str .= ' ["'.$v['column_name'].'",'.'["",""]'.']'; + }else{ + $str .= ' ["'.$v['column_name'].'",'.'""'.']'; + } + + if($last_field != $v['column_name']) $str .= ','.PHP_EOL; + } + } + if (!empty($str)) { + $str = rtrim(rtrim($str), ','); + } + return $str; + + } + + + /** + * 获取use内容 + * @return string + */ + public function getUse() + { + + $tpl = "use core\\base\\BaseAdminController;" . PHP_EOL; + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + $tpl .= "use addon\\" . $this->addonName."\\"."app\\service\\admin\\" . $this->moduleName . "\\" . $this->getUCaseClassName() . "Service;" . PHP_EOL ; + } else { + $tpl .= "use addon\\". $this->addonName."\\service\\admin\\".$this->getLCaseTableName().'\\' . $this->getUCaseClassName() . "Service;" . PHP_EOL ; + } + }else{ + if (!empty($this->moduleName)) { + $tpl .= "use app\\service\\admin\\" . $this->moduleName . "\\" . $this->getUCaseClassName() . "Service;" . PHP_EOL ; + } else { + $tpl .= "use app\\service\\admin\\".$this->getLCaseTableName().'\\' . $this->getUCaseClassName() . "Service;" . PHP_EOL ; + } + } + + + return $tpl; + } + + + /** + * 获取类注释 + * @return string + */ + public function getClassComment() + { + if (!empty($this->table['table_content'])) { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + + $tpl = $table_content . '控制器'; + } else { + $tpl = $this->getUCaseName() . '控制器'; + } + return $tpl; + } + + + /** + * 获取包名 + * @return string + */ + public function getPackageName() + { + if(!empty($this->addonName)) + { + if(!empty($this->moduleName)) + { + return 'addon\\'.$this->addonName.'\\app\adminapi\controller\\'.$this->moduleName; + }else{ + return 'addon\\'.$this->addonName.'\\app\adminapi\\controller\\'; + } + }else{ + if(!empty($this->moduleName)) + { + return 'app\adminapi\\controller\\'.$this->moduleName; + }else{ + return 'app\adminapi\\controller\\'; + } + } + } + + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath .DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir .DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + + return $dir; + } + + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/app/adminapi/controller/'; + }else{ + $dir = 'niucloud/app/adminapi/controller/'; + } + $dir .= $this->moduleName . '/'; + return $dir; + } + + /** + * 生成文件名 + * @return string + */ + public function getFileName() + { + if($this->className) return Str::studly($this->className) . '.php'; + return $this->getUCaseName() . '.php'; + } + + /** + * 获取注释名称 + * @return string + */ + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + /** + * 增加关联控制器方法 + * @return string + */ + public function getWithController() + { + $with = []; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with[] = Str::camel(substr($column['model'],$str+1)); + } + + } + $uCaseClassName = $this->getUCaseClassName(); + $content = ''; + if(!empty($with)) + { + $with = array_unique($with); + foreach ($with as $value) + { + $content .= PHP_EOL.' public function get'.Str::studly($value).'All(){'.PHP_EOL.' return success(( new '.$uCaseClassName.'Service())->get'.Str::studly($value).'All());'.PHP_EOL.' }'.PHP_EOL; + } + } + return $content; + } + +} diff --git a/niucloud/app/service/admin/generator/core/MenuSqlGenerator.php b/niucloud/app/service/admin/generator/core/MenuSqlGenerator.php new file mode 100644 index 0000000..10bbded --- /dev/null +++ b/niucloud/app/service/admin/generator/core/MenuSqlGenerator.php @@ -0,0 +1,456 @@ +getMenuSql(); + $new = [$res['sql'],]; + + if($this->table['generate_type'] == 3) + { + $this->addMenuList(); + $this->addInstallSql(); + } + + $vmPath = $this->getvmPath('menu_sql'); + + $text = $this->replaceFileText($old, $new, $vmPath); + $this->setText($text); + } + + /** + * 增加SQL语句 + */ + public function addInstallSql() + { + if(!empty($this->addonName)) + { + $dir = dirname(root_path()); + $file = $dir.DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'sql'.DIRECTORY_SEPARATOR.'install.sql'; + $res = $this->getMenuSql(); + $addSql = $res['sql']; + +// $sql = PHP_EOL . $this->getBegin() . PHP_EOL; +// $sql .= $addSql . PHP_EOL; +// $sql .= $this->getEnd() . PHP_EOL; +// +// if (file_exists($file)) { +// $content = file_get_contents($file); +// $code_begin = '-- USER_CODE_BEGIN -- '.$this->getTableName() . PHP_EOL; +// $code_end = '-- USER_CODE_END -- '.$this->getTableName() . PHP_EOL; +// if(strpos($content,$code_begin) !== false && strpos($content,$code_end) !== false) +// { +// $pattern = "/\s+{$code_begin}[\S\s]+{$code_end}?/"; +// $replace_sql = preg_replace($pattern, $sql, $content); +// file_put_contents($file, $replace_sql); +// return; +// } +// } +// file_put_contents($file, $sql, FILE_APPEND); + } + } + + public function getBegin() + { + $begin = '-- USER_CODE_BEGIN -- '.$this->getTableName(); + return $begin; + } + + public function getEnd() + { + $end = '-- USER_CODE_END -- '.$this->getTableName(); + return $end; + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath .DIRECTORY_SEPARATOR.'adminapi'.DIRECTORY_SEPARATOR.'controller'.DIRECTORY_SEPARATOR; + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'sql'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'sql'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + if (!empty($this->moduleName)) { +// $dir .= $this->moduleName . '/'; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'sql'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + }else{ + return ''; + } + } + + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/sql/'; + }else{ + $dir = 'niucloud/app/sql/'; + } + return $dir; + } + + /** + * 生成文件名 + * @return string + */ + public function getFileName() + { + return ''; + return 'menu.sql'; + } + + public function getMenuSql() + { + if (!empty($this->table['table_content'])) { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + + } else { + $table_content = ''; + } + + if(!empty($this->className)) + { + $name = $this->className; + }else{ + $name = $this->table['table_name']; + } + if(!empty($this->addonName)) + { + $key = $this->addonName.'_'.$this->moduleName.'_'.$name; + }else{ + $key = $this->moduleName.'_'.$name; + } + $data = [ + [ + 'app_type' => 'site', + 'menu_name' => $table_content, + 'menu_key' => $key, + 'parent_key' => $this->table['parent_menu'], + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => $this->moduleName, + 'view_path' => '', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'列表', + 'menu_key' => $key.'_list', + 'parent_key' => $key, + 'menu_type' => 1, + 'icon' => '', + 'api_url' => $this->getRouteName(), + 'router_path' => $this->className ? Str::lower($this->className) : 'list', + 'view_path' => $this->moduleName.'/'.($this->className ? Str::lower($this->className) : 'list'), + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'添加', + 'menu_key' => $key.'_add', + 'parent_key' => $key, + 'menu_type' => $this->table['edit_type'] == 1 ? 2 : 1, + 'icon' => '', + 'api_url' => $this->getRouteName(), + 'router_path' => $this->table['edit_type'] == 2 ? ($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'view_path' => $this->table['edit_type'] == 2 ? $this->moduleName.'/'.($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'methods' => 'post', + 'sort' => 70, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'编辑', + 'menu_key' => $key.'_edit', + 'parent_key' => $key, + 'menu_type' => $this->table['edit_type'] == 1 ? 2 : 1, + 'icon' => '', + 'api_url' => $this->getRouteName().'/', + 'router_path' => $this->table['edit_type'] == 2 ? ($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'view_path' => $this->table['edit_type'] == 2 ? $this->moduleName.'/'.($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'methods' => 'put', + 'sort' => 60, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'删除', + 'menu_key' => $key.'_delete', + 'parent_key' => $key, + 'menu_type' => 2, + 'icon' => '', + 'api_url' => $this->getRouteName().'/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 50, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + ]; + + $sql = Db::name('sys_menu')->fetchSql(true)->insertAll($data); + $sql = str_replace(' (', PHP_EOL.'(', $sql); + $res = [ + 'data' => $data, + 'sql' => $sql . ';' + ]; + return $res; + } + + /** + * 路由名称 + * @return string + */ + public function getRouteName() + { + $group_name = !empty($this->addonName) ? $this->addonName : $this->moduleName; + + if($this->moduleName && ($this->getLCaseTableName() != $this->moduleName) && $this->className){ + $route_name = Str::lower($this->className); + }else{ + $route_name = $this->getLCaseTableName(); + } + return $group_name .'/' . $route_name; + } + + /** + * 增加菜单 + * @return true + * @throws \Exception + */ + public function addMenuList() + { + if (!empty($this->table['table_content'])) { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + + } else { + $table_content = ''; + } + if(!empty($this->className)) + { + $name = $this->className; + }else{ + $name = $this->table['table_name']; + } + if(!empty($this->addonName)) + { + $key = $this->addonName.'_'.$this->table['table_name'].'_'.$this->moduleName.'_'.$name; + }else{ + $key = $this->table['table_name'].'_'.$this->moduleName.'_'.$name; + } + $data = [ + [ + 'app_type' => 'site', + 'menu_name' => $table_content, + 'menu_key' => $key, + 'parent_key' => $this->table['parent_menu'], + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => $this->moduleName, + 'view_path' => '', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'列表', + 'menu_key' => $key.'_list', + 'parent_key' => $key, + 'menu_type' => 1, + 'icon' => '', + 'api_url' => $this->getRouteName(), + 'router_path' => $this->className ? Str::lower($this->className) : 'list', + 'view_path' => $this->moduleName.'/'.($this->className ? Str::lower($this->className) : 'list'), + 'methods' => 'get', + 'sort' => 90, + 'status' => 1, + 'is_show' => 1, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'添加', + 'menu_key' => $key.'_add', + 'parent_key' => $key, + 'menu_type' => $this->table['edit_type'] == 1 ? 2 : 1, + 'icon' => '', + 'api_url' => $this->getRouteName(), + 'router_path' => $this->table['edit_type'] == 2 ? ($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'view_path' => $this->table['edit_type'] == 2 ? $this->moduleName.'/'.($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'methods' => 'post', + 'sort' => 70, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'编辑', + 'menu_key' => $key.'_edit', + 'parent_key' => $key, + 'menu_type' => $this->table['edit_type'] == 1 ? 2 : 1, + 'icon' => '', + 'api_url' => $this->getRouteName().'/', + 'router_path' => $this->table['edit_type'] == 2 ? ($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'view_path' => $this->table['edit_type'] == 2 ? $this->moduleName.'/'.($this->className ? Str::lower($this->className) . '_edit' : 'edit') : '', + 'methods' => 'put', + 'sort' => 60, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + [ + 'app_type' => 'site', + 'menu_name' => $table_content.'删除', + 'menu_key' => $key.'_delete', + 'parent_key' => $key, + 'menu_type' => 2, + 'icon' => '', + 'api_url' => $this->getRouteName().'/', + 'router_path' => '', + 'view_path' => '', + 'methods' => 'delete', + 'sort' => 50, + 'status' => 1, + 'is_show' => 0, + 'create_time' => time(), + 'delete_time' => 0, + 'addon' => $this->addonName, + 'source' => MenuDict::GENERATOR + ], + ]; + $menu_model = new SysMenu(); + + (new SysMenu())->where([['app_type', '=', 'site'],['menu_key','in', array_column($data, 'menu_key') ]])->select()->delete(); + + (new $menu_model())->saveAll($data); + $cache_tag_name = 'menu_cache'; + Cache::tag($cache_tag_name)->clear(); + + return true; + } +} diff --git a/niucloud/app/service/admin/generator/core/ModelGenerator.php b/niucloud/app/service/admin/generator/core/ModelGenerator.php new file mode 100644 index 0000000..13c9be7 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/ModelGenerator.php @@ -0,0 +1,402 @@ +getSoftDeleteFunction(); + $new = [ + $this->getNameSpace(), + $this->getClassComment(), + $this->getUCaseClassName(), + $this->getPackageName(), + $this->getTableName(), + $this->getPk(), + $this->getSearchFunction(), + $delete_data['softDelete'], + $delete_data['deleteColumn'], + $delete_data['deleteColumnValue'], + $this->getRelationModel(), + $this->getSelectModel(), + $this->getWithModel() + ]; + + $vmPath = $this->getvmPath('model'); + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + + /** + * 获取命名空间模板内容 + * @return string + */ + public function getNameSpace() + { + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + return "namespace addon\\".$this->addonName."\\app\\model\\" . $this->moduleName . ';'; + } + }else{ + if (!empty($this->moduleName)) { + return "namespace app\\model\\" . $this->moduleName . ';'; + } + } + + + return "namespace app\\model;"; + } + + + /** + * 获取表主键 + * @return mixed|string + */ + public function getPk() + { + $pk = 'id'; + if (empty($this->tableColumn)) { + return $pk; + } + + foreach ($this->tableColumn as $item) { + if ($item['is_pk']) { + $pk = $item['column_name']; + } + } + return $pk; + } + + /** + * 获取类描述 + * @return string + */ + public function getClassComment() + { + if (!empty($this->table['table_content'])) { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + $tpl = $table_content . '模型'; + } else { + $tpl = $this->getUCaseName() . '模型'; + } + return $tpl; + } + + /** + * 获取搜索方法 + * @return string + */ + public function getSearchFunction() + { + $function_str = ''; + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + + foreach ($this->tableColumn as $column) { + if (!$column['is_search'] || $column['column_name'] == 'site_id') { + continue; + } + $function_str .= '/**'.PHP_EOL.' * 搜索器:'.$table_content.$column['column_comment'].PHP_EOL.' * @param $value'.PHP_EOL.' * @param $data'.PHP_EOL.' */'.PHP_EOL; + $function_str .= 'public function search'.Str::studly($column['column_name']).'Attr($query, $value, $data)'.PHP_EOL; + $function_str .= '{'.PHP_EOL; + $function_str .= $this->getSearchContent($column); + $function_str .= '}'.PHP_EOL.PHP_EOL; + } + $function_str = $this->setBlankSpace($function_str, " "); + + return ltrim($function_str); + + } + + public function getSearchContent(array $column_info){ + $type = $column_info['query_type']; + if ($type == 'BETWEEN') { + if ($column_info['view_type'] == 'datetime') { + $function_str = ' $start = empty($value[0]) ? 0 : strtotime($value[0]);'.PHP_EOL; + $function_str .= ' $end = empty($value[1]) ? 0 : strtotime($value[1]);'.PHP_EOL; + } else { + $function_str = ' $start = empty($value[0]) ? 0 : $value[0];'.PHP_EOL; + $function_str .= ' $end = empty($value[1]) ? 0 : $value[1];'.PHP_EOL; + } + $function_str .= ' if ($start > 0 && $end > 0) {'.PHP_EOL; + $function_str .= ' $query->where([["' . $column_info['column_name'] . '", "between", [$start, $end]]]);'.PHP_EOL; + $function_str .= ' } else if ($start > 0 && $end == 0) {'.PHP_EOL; + $function_str .= ' $query->where([["' . $column_info['column_name'] . '", ">=", $start]]);'.PHP_EOL; + $function_str .= ' } else if ($start == 0 && $end > 0) {'.PHP_EOL; + $function_str .= ' $query->where([["' . $column_info['column_name'] . '", "<=", $end]]);'.PHP_EOL; + $function_str .= ' }'.PHP_EOL; + return $function_str; + } else { + $function_str = ' if ($value) {'.PHP_EOL; + $function_str .= ' $query->where('; + $function_str .= match ($type) { + '<>' => '"' . $column_info['column_name'] . '", "<>", $value', + '!=' => '"' . $column_info['column_name'] . '", "<>", $value', + '>' => '"' . $column_info['column_name'] . '", ">", $value', + '>=' => '"' . $column_info['column_name'] . '", ">=", $value', + '<' => '"' . $column_info['column_name'] . '", "<", $value', + '<=' => '"' . $column_info['column_name'] . '", "<=", $value', + 'LIKE' => '"' . $column_info['column_name'] . '", "like", "%".$value."%"', + default => '"' . $column_info['column_name'] . '", $value', + }; + $function_str .= ');'.PHP_EOL; + $function_str .= ' }'.PHP_EOL; + return $function_str; + } + } + + /** + * 获取包名 + * @return string + */ + public function getPackageName() + { + if(!empty($this->addonName)) + { + if(!empty($this->moduleName)) + { + return 'addon\\'.$this->addonName.'\\app\model\\'.$this->moduleName; + }else{ + return 'addon\app\model\\'; + } + }else{ + if(!empty($this->moduleName)) + { + return 'app\model\\'.$this->moduleName; + }else{ + return 'app\\model\\'." "; + } + } + } + + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath . 'model'.DIRECTORY_SEPARATOR; + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'model'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'model'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'model'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'model'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/app/model/'; + }else{ + $dir = 'niucloud/app/model/'; + } + $dir .= $this->moduleName . '/'; + return $dir; + } + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + return $this->getUCaseClassName() . '.php'; + } + + /** + * 软删除 + * @return array + */ + public function getSoftDeleteFunction() + { + $data = []; + foreach ($this->tableColumn as $column) { + if ($column['is_delete'] == 0) { + $data['softDelete'] = ''; + $data['deleteColumn'] = ''; + $data['deleteColumnValue'] = ''; + }else{ + $data['softDelete'] = ' use SoftDelete;'; + $data['deleteColumn'] = '/**'.PHP_EOL.' * 定义软删除标记字段.'.PHP_EOL.' * @var string'.PHP_EOL.' */'.PHP_EOL.' protected $deleteTime = '."'".$column['column_name']."';"; + $data['deleteColumnValue'] = '/**'.PHP_EOL.' * 定义软删除字段的默认值.'.PHP_EOL.' * @var int'.PHP_EOL.' */'.PHP_EOL.' protected $defaultSoftDelete = 0;'; + } + } + return $data; + } + + /** + * 关联信息 + */ + public function getRelationModel() + { + $tpl = ''; + + if ($this->table['relations'] == '[]') { + return $tpl; + } + + // 遍历关联配置 + if(!empty($this->table['relations'])) + { + $relations = json_decode($this->table['relations'],true); + + foreach ($relations as $config) { + if (empty($config) || empty($config['name']) || empty($config['model'])) { + continue; + } + + $needReplace = [ + '{RELATION_NAME}', + '{RELATION_MODEL}', + '{FOREIGN_KEY}', + '{LOCAL_KEY}', + ]; + + $waitReplace = [ + $config['name'], + '\\'. $config['model'], + $config['foreign_key'], + $config['local_key'], + ]; + + $vmPath = $this->getvmPath('php/model/'.$config['type']); + $tpl .= $this->replaceFileText($needReplace, $waitReplace, $vmPath). PHP_EOL; + } + return $tpl; + }else{ + return ''; + } + + } + + /** + * 远程关联方法 + */ + public function getSelectModel() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $model = substr($column['model'],$str+1); + $content .= PHP_EOL.' public function '.Str::camel($model).'(){'.PHP_EOL.' return $this->hasOne('.$model.'::class, '."'".$column['column_name']."', '".$column['value_key']."')->joinType('left')->withField('".$column['label_key'].','.$column['value_key']."'".")->bind(['".$column['column_name'].'_name'."'".'=>'."'".$column['label_key']."'"."]);".PHP_EOL.' }'.PHP_EOL; + } + } + return $content; + + } + + /** + * 远程关联方法引用 + */ + public function getWithModel() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $content .= PHP_EOL.'use '.$column['model'].';'.PHP_EOL; + } + } + return $content; + } + +} diff --git a/niucloud/app/service/admin/generator/core/ServiceGenerator.php b/niucloud/app/service/admin/generator/core/ServiceGenerator.php new file mode 100644 index 0000000..3b6b6f9 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/ServiceGenerator.php @@ -0,0 +1,409 @@ +getNameSpace(), + $this->getUse(), + $this->getUCaseClassName(), + $this->getPackageName(), + $this->getPk(), + $this->getNotes(), + $this->getAuthor(), + $this->getNoteDate(), + $this->getField(), + $this->getSearchField(), + $this->getOrderString(), + $this->getSearchModel(), + $this->getInfoSearchModel(), + $this->getWithAllFunction() + ]; + $fileds = array_column($this->tableColumn, 'column_name'); + if (in_array('site_id', $fileds)) { + $vmPath = $this->getvmPath('site_service'); + } else { + $vmPath = $this->getvmPath('service'); + } + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + /** + * 获取注释名称 + * @return string + */ + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + /** + * 字段内容 + * @return string + */ + public function getField() + { + $field = []; + foreach ($this->tableColumn as $column) { + $field[] = $column['column_name']; + } + + return implode(',', $field); + } + + /** + * 搜索字段内容 + * @return string + */ + public function getSearchField() + { + $field = []; + foreach ($this->tableColumn as $column) { + if (!$column['is_search'] || $column['column_name'] == 'site_id') { + continue; + } + $field[] = '"'.$column['column_name'].'"'; + } + + return implode(',', $field); + } + + /** + * 获取命名空间内容 + * @return string + */ + public function getNameSpace() + { + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + return "namespace addon\\".$this->addonName."\\app\\service\\admin\\" . $this->moduleName . ';'; + } + }else{ + if (!empty($this->moduleName)) { + return "namespace app\\service\\admin\\" . $this->moduleName . ';'; + } + } + + return "namespace app\\service\\admin;"; + } + + + /** + * 获取use内容 + * @return string + */ + public function getUse() + { + $tpl = "use app\\model\\" . $this->getUCaseName() . ';'; + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + $tpl = "use addon\\".$this->addonName."\\app\\model\\" . $this->moduleName . "\\" . $this->getUCaseClassName() . ';'.PHP_EOL; + } + + }else{ + if (!empty($this->moduleName)) { + $tpl = "use app\\model\\" . $this->moduleName . "\\" . $this->getUCaseClassName() . ';'.PHP_EOL; + } + } + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $tpl.= 'use '.$column['model'].';'.PHP_EOL; + } + } + return $tpl; + } + + + + /** + * 获取包名 + * @return string + */ + public function getPackageName() + { + if(!empty($this->addonName)) + { + if(!empty($this->moduleName)) + { + return 'addon\\'.$this->addonName.'\\app\service\\admin\\'.$this->moduleName; + }else{ + return 'addon\\'.$this->addonName.'\\app\service\\admin\\'; + } + }else{ + if(!empty($this->moduleName)) + { + return 'app\service\\admin\\'.$this->moduleName; + }else{ + return 'app\\service\\admin'; + } + } + } + + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath . DIRECTORY_SEPARATOR.'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR; + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR; + } + + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'service'.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR; + } + + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/app/service/admin/'; + }else{ + $dir = 'niucloud/app/service/admin/'; + } + $dir .= $this->moduleName . '/'; + return $dir; + } + + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + return $this->getUCaseClassName() . 'Service.php'; + } + + /** + * 排序 + * return string + */ + public function getOrderString() + { + if(!empty($this->table['order_type'])) + { + if($this->table['order_type'] == 1) + { + $type = 'asc'; + }else if($this->table['order_type'] == 2) + { + $type = 'desc'; + } + foreach ($this->tableColumn as $column) { + if (!$column['is_order']) { + continue; + } + $order[] = ''.$column['column_name'].' '.$type.''; + } + + }else{ + $order = []; + } + return implode(',', $order); + } + + /** + * 远程下拉(list) + * @return string + */ + public function getSearchModel() + { + $content = ''; + $with = []; + $search_field = []; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with[] = Str::camel(substr($column['model'],$str+1)); + } + if (!$column['is_search'] || $column['column_name'] == 'site_id') { + continue; + } + $search_field[] = '"'.$column['column_name'].'"'; + + } + $search_field = implode(',', $search_field); + if(empty($with)) + { + $content.= '$this->model->where([ [' ." 'site_id' ". ',"=", $this->site_id ] ])->withSearch(['."'$search_field'".'], $where)->field('.'$field'.')->order('.'$order'.');'; + + }else{ + $with = implode(',', $with); + $content.= '$this->model->where([ [' ." 'site_id' ". ',"=", $this->site_id ] ])->withSearch(['."'$search_field'".'], $where)->with('."'$with'".')->field('.'$field'.')->order('.'$order'.');'; + } + + return $content; + } + + /** + * 远程下拉(info) + */ + public function getInfoSearchModel() + { + $content = ''; + $with = []; + $col = []; + $pk = 'id'; + if (empty($this->tableColumn)) { + $pk = 'id'; + }else{ + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with[] = Str::camel(substr($column['model'],$str+1)); + } + if ($column['is_pk']) { + $pk = $column['column_name'];} + if(!empty($column['dict_type'])) + { + if($column['view_type'] == 'radio') + { + $col[] = $column['column_name']; + } + } + } + } + if(empty($with)) + { + $content.= '$this->model->field($field)->where([['."'$pk'".', "=", $id]])->findOrEmpty()->toArray();'; + }else{ + $with = implode(',', $with); + $content.= '$this->model->field($field)->where([['."'$pk'".', "=", $id]])->with('."'$with'".')->findOrEmpty()->toArray();'; + } + if(!empty($col)) + { + foreach ($col as $v) + { + $content.= PHP_EOL.' $info['."'".$v."'".'] = strval($info['."'".$v."'])"; + } + + } + return $content; + } + + /** + * 关联表方法 + * @return void + */ + public function getWithAllFunction() + { + $with = []; + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with[] = Str::camel(substr($column['model'],$str+1)); + } + } + if(!empty($with)) + { + foreach ($with as $value) + { + $content.= PHP_EOL.' public function get'.Str::studly($value).'All(){'.PHP_EOL.' $'.$value.'Model = new '.Str::studly($value).'();'.PHP_EOL.' return $'.$value.'Model->where([["site_id","=",$this->site_id]])->select()->toArray();'.PHP_EOL.' }'.PHP_EOL; + } + } + return $content; + } + +} diff --git a/niucloud/app/service/admin/generator/core/ValidateGenerator.php b/niucloud/app/service/admin/generator/core/ValidateGenerator.php new file mode 100644 index 0000000..27988fe --- /dev/null +++ b/niucloud/app/service/admin/generator/core/ValidateGenerator.php @@ -0,0 +1,323 @@ +getNameSpace(), + $this->getClassComment(), + $this->getUCaseClassName(), + $this->getPackageName(), + $this->getRule(), + $this->getMessage(), + $this->getScene(), + ]; + + $vmPath = $this->getvmPath('validate'); + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + + /** + * 验证规则 + * @return string + */ + public function getRule() + { + $content = ""; + foreach ($this->tableColumn as $column) { + if ($column['column_name'] == 'site_id') continue; + + if($column['is_required'] == 1){ + if(!empty($column['validate_type'])) + { + $column['validate_type'] = json_decode($column['validate_type'],true); + if($column['validate_type'][0] == 'max') + { + $content .= "'".$column['column_name']."' => 'require|".$column['validate_type'][0].":".$column['validate_type'][1][0]."',". PHP_EOL; + }else if($column['validate_type'][0] == 'min') + { + $content .= "'".$column['column_name']."' => 'require|".$column['validate_type'][0].":".$column['validate_type'][1][0]."',". PHP_EOL; + }else if($column['validate_type'][0] == 'between'){ + $content .= "'".$column['column_name']."' => 'require|".$column['validate_type'][0].":".$column['validate_type'][1][0].','.$column['validate_type'][1][1]."',". PHP_EOL; + }else{ + $content .= "'".$column['column_name']."' => 'require|".$column['validate_type'][0]."',". PHP_EOL; + } + }else{ + $content .= "'".$column['column_name'] . "' => 'require'," . PHP_EOL; + } + }else{ + if(!empty($column['validate_type'])) + { + $column['validate_type'] = json_decode($column['validate_type'],true); + if($column['validate_type'][0] == 'max') + { + $content .= "'".$column['column_name']."' => '".$column['validate_type'][0].":".$column['validate_type'][1][0]."',". PHP_EOL; + }else if($column['validate_type'][0] == 'min') + { + $content .= "'".$column['column_name']."' => '".$column['validate_type'][0].":".$column['validate_type'][1][0]."',". PHP_EOL; + }else if($column['validate_type'][0] == 'between'){ + $content .= "'".$column['column_name']."' => '".$column['validate_type'][0].":".$column['validate_type'][1][0].','.$column['validate_type'][1][1]."',". PHP_EOL; + }else{ + $content .= "'".$column['column_name']."' => '".$column['validate_type'][0]."',". PHP_EOL; + } + } + } + + } + $content = substr($content, 0, -2); + $content = $this->setBlankSpace($content, " "); + return '['.PHP_EOL.$content.PHP_EOL.' ]'; + } + + /** + * 验证提示 + * @return string + */ + public function getMessage() + { + $content = ""; + foreach ($this->tableColumn as $column) { + if ($column['column_name'] == 'site_id') continue; + + if($column['is_required'] == 1) + { + $content .= "'".$column['column_name'].".require"."' => "."['".'common_validate.require'."', ['".$column['column_name']."']]".','. PHP_EOL; + } + if(!empty($column['validate_type'])) + { + $column['validate_type'] = json_decode($column['validate_type'],true); + if($column['validate_type'][0] == 'max') + { + $content .= "'".$column['column_name'].".".$column['validate_type'][0]."' => "."['".'common_validate.'.$column['validate_type'][0]."', ['".$column['column_name']."','".$column['validate_type'][1][0]."']]".','. PHP_EOL; + + }else if($column['validate_type'][0] == 'min') + { + $content .= "'".$column['column_name'].".".$column['validate_type'][0]."' => "."['".'common_validate.'.$column['validate_type'][0]."', ['".$column['column_name']."','".$column['validate_type'][1][0]."']]".','. PHP_EOL; + + }else if($column['validate_type'][0] == 'between'){ + $content .= "'".$column['column_name'].".".$column['validate_type'][0]."' => "."['".'common_validate.'.$column['validate_type'][0]."', ['".$column['column_name']."','".$column['validate_type'][1][0]."','".$column['validate_type'][1][1]."']]".','. PHP_EOL; + + }else{ + $content .= "'".$column['column_name'].".".$column['validate_type'][0]."' => "."['".'common_validate.'.$column['validate_type'][0]."', ['".$column['column_name']."']]".','. PHP_EOL; + + } + } + } + $content = substr($content, 0, -2); + $content = $this->setBlankSpace($content, " "); + return '['.PHP_EOL.$content.PHP_EOL.' ]'; + } + + /** + * 验证字段 + * @return string + */ + public function getScene() + { + $content = ""; + $add_arr = []; + $update_arr = []; + foreach ($this->tableColumn as $column) { + if ($column['column_name'] == 'site_id') continue; + if ($column['is_insert'] == 1 && !$column['is_pk']) $add_arr[] = "'".$column['column_name']."'"; + if ($column['is_update'] == 1 && !$column['is_pk']) $update_arr[] = "'".$column['column_name']."'"; + } + + $content .= '"add" => ['.implode(', ', $add_arr).'],'.PHP_EOL; + $content .= '"edit" => ['.implode(', ', $update_arr).']'; + $content = $this->setBlankSpace($content, " "); + return '['.PHP_EOL.$content.PHP_EOL.' ]'; + } + + + /** + * 获取命名空间模板内容 + * @return string + */ + public function getNameSpace() + { + if(!empty($this->addonName)) + { + if (!empty($this->moduleName)) { + return "namespace addon\\".$this->addonName."\\app\\validate\\" . $this->moduleName . ';'; + } + + }else{ + if (!empty($this->moduleName)) { + return "namespace app\\validate\\" . $this->moduleName . ';'; + } + } + + return "namespace app\\validate;"; + } + + + /** + * 获取类描述 + * @return string + */ + public function getClassComment() + { + $tpl = $this->getNotes() . '验证器'; + return $tpl; + } + + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + + /** + * 获取包名 + * @return string + */ + public function getPackageName() + { + if(!empty($this->addonName)) + { + if(!empty($this->moduleName)) + { + return 'addon\\'.$this->addonName.'\\app\validate\\'.$this->moduleName; + }else{ + return 'addon\\'.$this->addonName.'\\app\validate\\'; + } + }else{ + if(!empty($this->moduleName)) + { + return 'addon\\app\validate\\'.$this->moduleName; + }else{ + return 'addon\\app\\validate'; + } + } + } + + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + $dir = $this->basePath . DIRECTORY_SEPARATOR.'validate'.DIRECTORY_SEPARATOR; + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'validate'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'validate'.DIRECTORY_SEPARATOR; + } + + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'validate'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'validate'.DIRECTORY_SEPARATOR; + } + + + $this->checkDir($dir); + if (!empty($this->moduleName)) { + $dir .= $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + } + return $dir; + } + + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/app/validate/'; + }else{ + $dir = 'niucloud/app/validate/'; + } + $dir .= $this->moduleName . '/'; + return $dir; + } + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + return $this->getUCaseClassName() . '.php'; + } + + +} diff --git a/niucloud/app/service/admin/generator/core/WebApiGenerator.php b/niucloud/app/service/admin/generator/core/WebApiGenerator.php new file mode 100644 index 0000000..bb69485 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebApiGenerator.php @@ -0,0 +1,276 @@ +getNotes(), + $this->getUCaseClassName(), + strtolower($this->getLCaseClassName()), + $this->getRouteName(), + $this->getPk(), + $this->getUCaseClassName(), + $this->moduleName, + $this->getRouteGroupName(), + $this->getImport(), + $this->getBegin(), + $this->getWithRouteApi(), + $this->getEnd(), + ]; + $vmPath = $this->getvmPath('web_api'); + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + /** + * 路由名称 + * @return string + */ + public function getRouteName() + { + //如果是某个模块下的功能,公用一个路由 + if($this->moduleName && ($this->getLCaseTableName() != $this->moduleName) && $this->className){ + return Str::lower($this->className); + }else{ + return $this->getLCaseTableName(); + } + } + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if(!empty($this->addonName)) + { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'. $this->addonName .'/api/'; + }else{ + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + /** + * 文件内容处理 + * @return string + */ + public function getImport() + { + + $dir = dirname(root_path()); + if(!empty($this->addonName)) + { + $file = $dir.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR.$this->moduleName.'.ts'; + }else{ + $file = $dir.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR.$this->moduleName.'.ts'; + } + + if(file_exists($file)) + { + + $content = file_get_contents($file); + $code_begin = 'USER_CODE_BEGIN -- '.$this->getTableName() . PHP_EOL; + $code_end = 'USER_CODE_END -- '.$this->getTableName(). PHP_EOL; + + if(strpos($content,$code_begin) !== false && strpos($content,$code_end) !== false) + { + // 清除相应对应代码块 + $pattern = "/\/\/\s+{$code_begin}[\S\s]+{$code_end}?/"; + $import = preg_replace($pattern, '', $content); + + }else{ + $import = $content; + } + }else{ + $import = "import request from '@/utils/request'"; + } + return $import; + + } + + public function getBegin() + { + $begin = '// USER_CODE_BEGIN -- '.$this->getTableName(); + return $begin; + } + + public function getEnd() + { + $end = '// USER_CODE_END -- '.$this->getTableName(); + return $end; + } + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . 'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'api'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/api/'; + }else{ + $dir = 'admin/app/api/'; + } + + return $dir; + } + + + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->moduleName && ($this->getLCaseTableName() != $this->moduleName)){ + return Str::lower($this->moduleName) . '.ts'; + }else{ + return $this->getLCaseTableName() . '.ts'; + } + } + + /** + * 获取路由分组 + * @return string + */ + public function getRouteGroupName() + { + if(!empty($this->addonName)) + { + return $this->addonName; + }else{ + return $this->moduleName; + } + } + + /** + * 获取注释名称 + * @return string + */ + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + public function getWithRouteApi() + { + if(!empty($this->addonName)) + { + $moduleName = $this->addonName; + }else{ + $moduleName = $this->moduleName; + } + $with = []; + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with[] = Str::camel(substr($column['model'],$str+1)); + } + } + if(!empty($with)) + { +// $str = strripos($column['model'],'\\'); +// $with = Str::camel(substr($column['model'],$str+1)); +// $content.= ' get'.Str::studly($with).'List,'; +// export function getCompanyList(params: Record) { +// return request.get(`shop/delivery/company`, {params}) +// } $with = Str::camel(substr($column['model'],$str+1)); + foreach ($with as $value) + { + $content.= 'export function getWith'.Str::studly($value).'List(params: Record){'.PHP_EOL." return request.get('".$moduleName.'/'.$value."', {params})".PHP_EOL.'}'; + } + } + return $content; + } +} diff --git a/niucloud/app/service/admin/generator/core/WebEditGenerator.php b/niucloud/app/service/admin/generator/core/WebEditGenerator.php new file mode 100644 index 0000000..cd62c9e --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebEditGenerator.php @@ -0,0 +1,602 @@ +table['edit_type'] != 1) { + $this->setText(''); + return false; + } + + $old = [ + '{FORM_VIEW}', + '{UCASE_NAME}', + '{UCASE_CLASS_NAME}', + '{FORM_DATA}', + '{FORM_VALIDATE}', + '{PK}', + '{MODULE_NAME}', + '{API_PATH}', + '{DICT_DATA}', + '{DICT_LIST}', + '{MODEL_DATA}', + '{EDIT_WITH_API_PATH}', + '{WITH_API_PATH}' + ]; + $new = [ + $this->getFormView(), + $this->getUCaseClassName(), + $this->getUCaseClassName(), + $this->getFormData(), + $this->getFormValidate(), + $this->getPk(), + $this->moduleName, + $this->getApiPath(), + $this->getDictDataContent(), + $this->getDictList(), + $this->getModelData(), + $this->getEditWithApiPath(), + $this->getWithApiPath() + ]; + $vmPath = $this->getvmPath('web_edit'); + + // 替换内容 + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + /** + * 表单日期处理 + * @return string + */ + public function getFormDate() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (empty($column['view_type']) || $column['is_pk']) { + continue; + } + if ($column['view_type'] != 'datetime' || $column['column_type'] != 'int') { + continue; + } + $content .= '//@ts-ignore' . PHP_EOL; + $content .= 'formData.' . $column['column_name'] . ' = timeFormat(formData.' . $column['column_name'] . ','."'yyyy-mm-dd hh:MM:ss'".') ' . PHP_EOL; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + + /** + * 获取表单内容 + * @return string + */ + public function getFormView() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!$column['is_insert'] || !$column['is_update'] || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + $old = [ + '{COLUMN_COMMENT}', + '{COLUMN_NAME}', + '{LCASE_COLUMN_NAME}', + '{PROP}', + '{DICT_TYPE}', + '{ITEM_LABEL}', + '{ITEM_VALUE}' + + ]; + if(empty($column['dict_type'])) + { + if($column['view_type'] == 'select' || $column['view_type'] == 'radio' || $column['view_type'] == 'checkbox') { + if (empty($column['model'])) + { + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + '' + ]; + + $vmName = $column['view_type'].'3'; + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + Str::camel($column['column_name']).'List', + $column['label_key'], + $column['value_key'] + ]; + $vmName = $column['view_type']; + } + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + + ]; + $vmName = $column['view_type']; + } + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + $column['column_name'].'List', + ]; + if(empty($column['model'])) + { + $vmName = $column['view_type'].'3'; + }else{ + $vmName = $column['view_type']; + } + + + } + + $vmPath = $this->getvmPath('form/' . $vmName); + if (!file_exists($vmPath)) { + continue; + } + + // 单选框值处理 + if ($column['view_type'] == 'radio' || $column['view_type'] == 'select') { + $vmItemValue = 'item.value'; + $intFieldValue = ['tinyint', 'smallint', 'mediumint', 'int', 'integer', 'bigint']; + if (in_array($column['column_type'], $intFieldValue)) { + $vmItemValue = 'parseInt(item.value)'; + } + $old[] = '{ITEM_VALUE}'; + $new[] = $vmItemValue; + $old[] = '{ITEM_VALUE}'; + $new[] = 'item.name'; + } + // 数字框处理 + if ($column['view_type'] == 'number') { + if(!empty($column['validate_type'])) + { + $validate = json_decode($column['validate_type'],true); + if($validate[0] == 'min') + { + $rule = ':min = "'.$validate[1][0].'"'; + } + if($validate[0] == 'max') + { + $rule = ':max = "'.$validate[1][0].'"'; + } + if($validate[0] == 'between') + { + $rule = ':min = "'.$validate[1][0].'"'.' max = "'.$validate[1][1].'"'; + } + }else{ + $rule = ''; + } + $old[] = '{RULE}'; + $new[] = $rule; + } + $content .= $this->replaceFileText($old, $new, $vmPath) . PHP_EOL; + + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + /** + * 获取数据字典内容 + * @return string + */ + public function getDictDataContent() + { + $content = ''; + $isExist = []; + foreach ($this->tableColumn as $column) { + if (empty($column['dict_type']) || $column['is_pk']) { + continue; + } + if (in_array($column['dict_type'], $isExist)) { + continue; + } + $content .= $column['dict_type'] . ': ' . "[]," . PHP_EOL; + $isExist[] = $column['dict_type']; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 获取API数据字典内容 + * @return string + */ + public function getDictDataApiContent() + { + $content = ''; + $isExist = []; + foreach ($this->tableColumn as $column) { + if (empty($column['dict_type']) || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + if (in_array($column['dict_type'], $isExist)) { + continue; + } + $needReplace = [ + '{DICT_TYPE}', + ]; + $waitReplace = [ + $column['column_name'].'List', + ]; + $templatePath = $this->getTemplatePath('/other/dictDataApi'); + if (!file_exists($templatePath)) { + continue; + } + $content .= $this->replaceFileData($needReplace, $waitReplace, $templatePath) . '' . PHP_EOL; + + $isExist[] = $column['dict_type']; + } + $content = substr($content, 0, -1); + return $content; + } + + /** + * 获取表单默认字段内容 + * @return string + */ + public function getFormData() + { + $content = ''; + $isExist = []; + foreach ($this->tableColumn as $column) { + if ((!$column['is_insert'] || !$column['is_update'] || $column['column_name'] == 'site_id') && !$column['is_pk']) { + continue; + } + if (in_array($column['column_name'], $isExist)) { + continue; + } + + if ($column['view_type'] == 'checkbox') { + $content .= $column['column_name'] . ': ' . "[]," . PHP_EOL; + } else { + $content .= $column['column_name'] . ': ' . "''," . PHP_EOL; + } + + $isExist[] = $column['column_name']; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 表单验证内容 + * @return string + */ + public function getFormValidate() + { + $content = ''; + $isExist = []; + $specDictType = ['input', 'textarea', 'editor']; + + foreach ($this->tableColumn as $column) { + if (!$column['is_insert'] || !$column['is_update'] || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + if (in_array($column['column_name'], $isExist)) { + continue; + } + + $validateMsg = Str::camel($column['column_name']).'Placeholder'; + + $old = [ + '{COLUMN_NAME}', + '{VALIDATE_MSG}', + '{VERIFY}' + ]; + if(!empty($column['validate_type'])) + { + $validate = json_decode($column['validate_type'],true); + }else{ + $validate = []; + } + $new = [ + $column['column_name'], + $validateMsg, + $this->getVerify($validate) + ]; + $vmPath = $this->getvmPath('other/formValidate'); + if (!file_exists($vmPath)) { + continue; + } + + $content .= $this->replaceFileText($old, $new, $vmPath) . ',' . PHP_EOL; + + $isExist[] = $column['column_name']; + } + return substr($content, 0, -2); + } + + public function getVerify($validateType) + { + if(!empty($validateType)) + { + if(!empty($validateType[1])) + { + if($validateType[0] == 'min') + { + $min = '0,'.$validateType[1][0]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{0,'.$min.'}$/.test(value)) {'. + "callback(new Error(t('".'generateMin'."')))".'} else { callback() }}},'; + } + if($validateType[0] == 'max') + { + $max = '0,'.$validateType[1][0]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{0,'.$max.'}$/.test(value)) {'. + " callback(new Error(t('".'generateMax'."')))".' } else { callback() }}},'; + } + if($validateType[0] == 'between') + { + $between = $validateType[1][0].','.$validateType[1][1]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{'.$between.'}$/.test(value)) {'. " callback(new Error(t('".'generateBetween'."')))".'} else { callback() }}},'; + } + }else{ + $content = ''; + } + }else{ + $content = ''; + } + + return $content; + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if($this->table['edit_type'] != 1) { + return ''; + } + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if($this->table['edit_type'] != 1) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } + + $dir .= 'components'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + } + + $dir .= 'components'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + * @return void + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if($this->table['edit_type'] != 1) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/views/' . $this->moduleName . '/'; + }else{ + $dir = 'admin/app/views/' . $this->moduleName . '/'; + } + + $dir .= 'components/'; + return $dir; + } + + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->table['edit_type'] != 1) { + return ''; + } + if($this->className){ + return str_replace('_', '-', Str::lower($this->className)).'-edit.vue'; + } + return 'edit.vue'; + + } + + /** + * 生成的API路径 + * @return string + */ + public function getApiPath() + { + if(!empty($this->addonName)) + { + return 'addon/'.$this->addonName.'/api/'.$this->moduleName; + }else{ + return 'app/api/'.$this->moduleName; + } + } + + + /** + * 调用字典方法 + * @return void + */ + public function getDictList() + { + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['dict_type'])) + { + continue; + } + $content.= 'let '.$column['column_name'].'List = ref([])'.PHP_EOL.'const '.$column['column_name'].'DictList = async () => {'.PHP_EOL.$column['column_name'].'List.value = await (await useDictionary(' ."'".$column['dict_type']."'".')).data.dictionary'.PHP_EOL.'}'.PHP_EOL. $column['column_name'].'DictList();'.PHP_EOL; + if ($column['view_type'] == 'radio' || $column['view_type'] == 'select') { + $content .= 'watch(() => '.$column['column_name'].'List.value, () => { formData.'.$column['column_name'].' = '.$column['column_name'].'List.value[0].value })'.PHP_EOL; + } + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + /** + * 调用远程下拉方法 + * @return void + */ + public function getModelData() + { + + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['model'])) + { + continue; + } + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= PHP_EOL.'const '. Str::camel($column['column_name']).'List = ref([] as any[])'.PHP_EOL; + $content.= 'const set'.Str::studly($column['column_name']).'List = async () => {'.PHP_EOL.Str::camel($column['column_name']).'List.value = await (await getWith'.Str::studly($with).'List({})).data' .PHP_EOL.'}' + .PHP_EOL.'set'.Str::studly($column['column_name']).'List())'; + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + + } + + /** + * 编辑远程下拉方法 + * @return void + */ + public function getEditWithApiPath() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= ' get'.Str::studly($with).'List,'; + } + } + return $content; + } + + /** + * 增加关联方法 + * @return void + */ + public function getWithApiPath() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= ' getWith'.Str::studly($with).'List,'; + } + } + return $content; + } +} diff --git a/niucloud/app/service/admin/generator/core/WebEditLangGenerator.php b/niucloud/app/service/admin/generator/core/WebEditLangGenerator.php new file mode 100644 index 0000000..dccb1b1 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebEditLangGenerator.php @@ -0,0 +1,182 @@ +getLang(); + $this->setText($text); + } + + + /** + * 语言包 + * @return string + */ + public function getLang() + { + if($this->table['edit_type'] != 2) return ''; + + $lang = ''; + foreach ($this->tableColumn as $column) { + if(($column['is_insert'] || $column['is_update']) && !$column['is_pk']){ + $lang .= '"'.Str::camel($column['column_name']) .'":"'.$column['column_comment'].'",'.PHP_EOL; + } + } + foreach ($this->tableColumn as $column) { + + if(($column['is_insert'] || $column['is_update']) && !$column['is_pk']){ + $placeholder_text = '请输入'; + + if($column['view_type'] == 'select' || $column['view_type'] == 'checkbox' || $column['view_type'] == 'datetime') $placeholder_text = '请选择'; + if($column['view_type'] == 'imageSelect') $placeholder_text = '请上传'; + + $lang .= '"'.Str::camel($column['column_name']) .'Placeholder":"'.$placeholder_text.$column['column_comment'].'",'.PHP_EOL; + } + + } + if(!empty($this->table['table_content'])) + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + }else{ + $table_content = ''; + } + + $lang .= '"add'.$this->getUCaseClassName() .'":"添加'.$table_content.'",'.PHP_EOL; + $lang .= '"update'.$this->getUCaseClassName() .'":"编辑'.$table_content.'",'.PHP_EOL; + $lang .= '"'.$this->getLCaseClassName() .'DeleteTips":"确定要删除该'.$table_content.'吗?",'.PHP_EOL; + $lang = trim(trim($lang), ','); + return '{'.PHP_EOL.$this->setBlankSpace($lang, " ").PHP_EOL.'}'; + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/lang/zh-cn/'; + + }else{ + $dir = 'admin/app/lang/zh-cn/'; + } + return $dir; + } + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if($this->className){ + return $this->moduleName.'.'.Str::lower($this->className).'_edit.json'; + } + return $this->moduleName.'.'.'edit.json'; + } + +} diff --git a/niucloud/app/service/admin/generator/core/WebEditPageGenerator.php b/niucloud/app/service/admin/generator/core/WebEditPageGenerator.php new file mode 100644 index 0000000..5e1504c --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebEditPageGenerator.php @@ -0,0 +1,578 @@ +table['edit_type'] != 2) { + $this->setText(''); + return false; + } + + $old = [ + '{FORM_VIEW}', + '{UCASE_NAME}', + '{FORM_DATA}', + '{FORM_VALIDATE}', + '{PK}', + '{API_DIR}', + '{UCASE_CLASS_NAME}', + '{LCASE_CLASS_NAME}', + '{MODULE_NAME}', + '{API_PATH}', + '{DICT_DATA}', + '{DICT_LIST}', + '{MODEL_DATA}', + '{WITH_API_PATH}' + ]; + $new = [ + $this->getFormView(), + $this->getUCaseClassName(), + $this->getFormData(), + $this->getFormValidate(), + $this->getPk(), + $this->getTableName(), + $this->getUCaseClassName(), + $this->getLCaseClassName(), + $this->moduleName, + $this->getApiPath(), + $this->getDictDataContent(), + $this->getDictList(), + $this->getModelData(), + $this->getEditWithApiPath() + ]; + $vmPath = $this->getvmPath('web_edit_page'); + + // 替换内容 + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + /** + * 获取数据字典内容 + * @return string + */ + public function getDictDataContent() + { + $content = ''; + $isExist = []; + foreach ($this->tableColumn as $column) { + if (empty($column['dict_type']) || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + if (in_array($column['dict_type'], $isExist)) { + continue; + } + $content .= $column['dict_type'] . ': ' . "[]," . PHP_EOL; + $isExist[] = $column['dict_type']; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + /** + * 调用字典方法 + */ + public function getDictList() + { + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['dict_type'])) + { + continue; + } + $content.= 'let '.$column['column_name'].'List = ref([])'.PHP_EOL.'const '.$column['column_name'].'DictList = async () => {'.PHP_EOL.$column['column_name'].'List.value = await (await useDictionary(' ."'".$column['dict_type']."'".')).data.dictionary'.PHP_EOL.'}'.PHP_EOL. $column['column_name'].'DictList();'.PHP_EOL; + if ($column['view_type'] == 'radio' || $column['view_type'] == 'select') { + $content .= 'watch(() => '.$column['column_name'].'List.value, () => { formData.'.$column['column_name'].' = '.$column['column_name'].'List.value[0].value })'.PHP_EOL; + } + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 表单日期处理 + * @return string + */ + public function getFormDateContent() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (empty($column['view_type']) || $column['is_pk']) { + continue; + } + if ($column['view_type'] != 'datetime' || $column['column_type'] != 'int') { + continue; + } + $content .= '//@ts-ignore' . PHP_EOL; + $content .= 'formData.' . $column['column_name'] . ' = timeFormat(formData.' . $column['column_name'] . ','."'yyyy-mm-dd hh:MM:ss'".') ' . PHP_EOL; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 获取表单内容 + * @return string + */ + public function getFormView() + { + $content = ''; + + foreach ($this->tableColumn as $column) { + if (!$column['is_insert'] || !$column['is_update'] || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + + $old = [ + '{COLUMN_COMMENT}', + '{COLUMN_NAME}', + '{LCASE_COLUMN_NAME}', + '{PROP}', + '{DICT_TYPE}', + '{ITEM_LABEL}', + '{ITEM_VALUE}' + ]; + if(empty($column['dict_type'])) + { + + if($column['view_type'] == 'select' || $column['view_type'] == 'radio' || $column['view_type'] == 'checkbox') + { + if(empty($column['model'])) + { + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + '' + ]; + + $vmName = $column['view_type'].'3'; + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + Str::camel($column['column_name']).'List', + $column['label_key'], + $column['value_key'] + ]; + $vmName = $column['view_type']; + } + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + $column['column_name'].'List', + ]; + $vmName = $column['view_type']; + + + + } + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['is_required'] ? 'prop="'.$column['column_name'].'"' : '', + $column['column_name'].'List', + '' + ]; + if(empty($column['model'])) + { + $vmName = $column['view_type'].'3'; + }else{ + $vmName = $column['view_type']; + } + } + + $vmPath = $this->getvmPath('form/' . $vmName); + if (!file_exists($vmPath)) { + continue; + } + + // 单选框值处理 + if ($column['view_type'] == 'radio' || $column['view_type'] == 'select') { + $vmItemValue = 'item.value'; + $intFieldValue = ['tinyint', 'smallint', 'mediumint', 'int', 'integer', 'bigint']; + if (in_array($column['column_type'], $intFieldValue)) { + $vmItemValue = 'item.value'; + } + $old[] = '{ITEM_VALUE}'; + $new[] = $vmItemValue; +// $old[] = '{ITEM_VALUE}'; +// $new[] = 'item.name'; + } + // 数字框处理 + if ($column['view_type'] == 'number') { + if(!empty($column['validate_type'])) + { + $validate = json_decode($column['validate_type'],true); + if($validate[0] == 'min') + { + $rule = ':min = '."'".$validate[1][0]."'"; + } + if($validate[0] == 'max') + { + $rule = ':max = '."'".$validate[1][0]."'"; + } + if($validate[0] == 'between') + { + $rule = ':min = "'.$validate[1][0].'"'.' :max = "'.$validate[1][1].'"'; + } + $old[] = '{RULE}'; + $new[] = $rule; + }else{ + $old[] = '{RULE}'; + $new[] = ''; + } + + } + $content .= $this->replaceFileText($old, $new, $vmPath) . PHP_EOL; + + } + + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 获取表单默认字段内容 + * @return string + */ + public function getFormData() + { + $content = ''; + $isExist = []; + + foreach ($this->tableColumn as $column) { + if ((!$column['is_insert'] || !$column['is_update'] || $column['column_name'] == 'site_id') && !$column['is_pk']) { + continue; + } + if (in_array($column['column_name'], $isExist)) { + continue; + } + + if ($column['column_type'] == 'int') { + if(empty($column['model'])) + { + $content .= $column['column_name'] . ': ' . "0," . PHP_EOL; + }else{ + $content .= $column['column_name'] . ': ' . "''," . PHP_EOL; + } + + } else if($column['view_type'] == 'checkbox'){ + $content .= $column['column_name'] . ': ' . "''," . PHP_EOL; + }else { + $content .= $column['column_name'] . ': ' . "''," . PHP_EOL; + } + + $isExist[] = $column['column_name']; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 表单验证内容 + * + * @return string + */ + public function getFormValidate() + { + $content = ''; + $isExist = []; + $specDictType = ['input', 'textarea', 'editor']; + + foreach ($this->tableColumn as $column) { + if (!$column['is_insert'] || !$column['is_update'] || $column['is_pk'] || $column['column_name'] == 'site_id') { + continue; + } + + if (in_array($column['column_name'], $isExist)) { + continue; + } + + $validateMsg = Str::camel($column['column_name']).'Placeholder'; + + $old = [ + '{COLUMN_NAME}', + '{VALIDATE_MSG}', + '{VERIFY}' + ]; + if(!empty($column['validate_type'])) + { + $validate = json_decode($column['validate_type'],true); + }else{ + $validate = []; + } + $new = [ + $column['column_name'], + $validateMsg, + $this->getVerify($validate) + ]; + $vmPath = $this->getvmPath('other/formValidate'); + if (!file_exists($vmPath)) { + continue; + } + + $content.= $this->replaceFileText($old, $new, $vmPath) . ',' . PHP_EOL; + $isExist[] = $column['column_name']; + } + return substr($content, 0, -2); + } + + /** + * 输入信息验证 + * @param $validateType + * @return string + */ + public function getVerify($validateType) + { + if(!empty($validateType)) + { + if(!empty($validateType[1])) + { + if($validateType[0] == 'min') + { + $min = '0,'.$validateType[1][0]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{0,'.$min.'}$/.test(value)) {'. + "callback(new Error(t('".'generateMin'."')))".'} else { callback() }}},'; + } + if($validateType[0] == 'max') + { + $max = '0,'.$validateType[1][0]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{0,'.$max.'}$/.test(value)) {'. + " callback(new Error(t('".'generateMax'."')))".' } else { callback() }}},'; + } + if($validateType[0] == 'between') + { + $between = $validateType[1][0].','.$validateType[1][1]; + $content = '{ validator: (rule: any, value: string, callback: any) => { '. + ' if (value && !/^\d{'.$between.'}$/.test(value)) {'. " callback(new Error(t('".'generateBetween'."')))".'} else { callback() }}},'; + } + }else{ + $content = ''; + } + }else{ + $content = ''; + } + + return $content; + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR. $this->moduleName .DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } else { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if(!empty($this->addonName)) + { + $dir = $this->outDir . DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if($this->table['edit_type'] != 2) { + return ''; + } + + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if($this->table['edit_type'] != 2) { + return ''; + } + + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/views/' . $this->moduleName . '/'; + }else{ + $dir = 'admin/app/views/' . $this->moduleName . '/'; + } + + return $dir; + } + + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->table['edit_type'] != 2) { + return ''; + } + if($this->className){ + return Str::lower($this->className).'_edit.vue'; + } + return 'edit.vue'; + } + + /** + * 生成的API路径 + * @return string + */ + public function getApiPath() + { + + if(!empty($this->addonName)) + { + return 'addon/'.$this->addonName.'/api/'.$this->moduleName; + }else{ + return 'app/api/'.$this->moduleName; + } + + } + + /** + * 调用远程下拉方法 + * @return void + */ + public function getModelData() + { + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['model'])) + { + continue; + } + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= PHP_EOL.'const '. Str::camel($column['column_name']).'List = ref([] as any[])'.PHP_EOL; + $content.= 'const set'.Str::studly($column['column_name']).'List = async () => {'.PHP_EOL.Str::camel($column['column_name']).'List.value = await (await getWith'.Str::studly($with).'List({})).data' .PHP_EOL.'}' + .PHP_EOL.'set'.Str::studly($column['column_name']).'List())'; + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + + } + + /** + * 编辑远程下拉方法 + * @return void + */ + public function getEditWithApiPath() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= ' getWith'.Str::studly($with).'List,'; + } + } + return $content; + } +} diff --git a/niucloud/app/service/admin/generator/core/WebIndexGenerator.php b/niucloud/app/service/admin/generator/core/WebIndexGenerator.php new file mode 100644 index 0000000..7dd85d8 --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebIndexGenerator.php @@ -0,0 +1,613 @@ +getSearch(), + $this->getSearchParams(), + $this->getTable(), + $this->getNotes(), + $this->getUCaseClassName(), + $this->getLCaseName(), + $this->getUCaseClassName(), + $this->getLCaseClassName(), + $this->moduleName, + $this->getEditPath(), + $this->getPk(), + $this->getEditView(), + $this->getEditDialog(), + $this->getAddEvent(), + $this->getEditEvent(), + $this->getApiPath(), +// $this->getDictDataContent(), + $this->getDictList(), + $this->getWithApiPath(), + $this->getModelData(), + $this->getEditWithApiPath(), + + ]; + + $vmPath = $this->getvmPath('web_index'); + + $text = $this->replaceFileText($old, $new, $vmPath); + + $this->setText($text); + } + + /** + * 获取注释名称 + * @return string + */ + public function getNotes() + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + return substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + return $this->table['table_content']; + } + } + + + /** + * 编辑框路径 + * @return string + */ + public function getEditPath() + { + if($this->table['edit_type'] == 2) return "import { useRouter } from 'vue-router'"; + $path = 'components/'; +// $file_name = str_replace('_', '-', Str::lower($this->getTableName())).'-edit.vue'; + $file_name = 'edit.vue'; + if($this->className){ + $file_name = str_replace('_', '-', Str::lower($this->className)) . '-edit.vue'; + } + if(!empty($this->addonName)) + { + return "import "."Edit from '@/addon/".$this->addonName."/views/".$this->moduleName."/".$path.$file_name."'"; + }else{ + return "import "."Edit from '@/app/views/".$this->moduleName."/".$path.$file_name."'"; + } + } + + /** + * 编辑框 + * @return string + */ + public function getEditView() + { + if($this->table['edit_type'] == 2) return ''; + $file_name = 'edit'; + return '<'.$file_name.' ref="edit'.$this->getUCaseClassName().'Dialog" @complete="load'.$this->getUCaseClassName().'List" />'; + } + + /** + * 编辑框Dialog + * @return string + */ + public function getEditDialog() + { + if($this->table['edit_type'] == 2) return 'const router = useRouter()'; + return 'const edit'.$this->getUCaseClassName().'Dialog: Record | null = ref(null)'; + } + + /** + * 添加操作 + * @return string + */ + public function getAddEvent() + { + $class_name = $this->className ? '/'.Str::lower($this->className) : ''; + if($this->table['edit_type'] == 2){ + $route = ''; + if (!empty($this->table['parent_menu'])) { + $route = '/' . (new CoreMenuService())->getRoutePathByMenuKey($this->table['parent_menu']); + } + //打开新页面 + $content = "router.push('".$route."/".$this->moduleName."/". Str::lower($this->className) ."_edit')"; + }else{ + $content = 'edit'.$this->getUCaseClassName().'Dialog.value.setFormData()'.PHP_EOL.'edit'.$this->getUCaseClassName().'Dialog.value.showDialog = true'; + } + + return $this->setBlankSpace($content, ' '); + + } + + /** + * 编辑 + * @return string + */ + public function getEditEvent() + { + $class_name = $this->className ? '/'.Str::lower($this->className) : ''; + if($this->table['edit_type'] == 2){ + $route = ''; + if (!empty($this->table['parent_menu'])) { + $route = '/' . (new CoreMenuService())->getRoutePathByMenuKey($this->table['parent_menu']); + } + $content = "router.push('".$route."/".$this->moduleName."/". Str::lower($this->className) ."_edit?id='+data.".$this->getPk().")"; + }else{ + $content = 'edit'.$this->getUCaseClassName().'Dialog.value.setFormData(data)'.PHP_EOL.'edit'.$this->getUCaseClassName().'Dialog.value.showDialog = true'; + } + return $this->setBlankSpace($content, ' '); + } + + /** + * 获取搜索内容 + * @return string + */ + public function getSearch() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!$column['is_search'] || $column['is_pk']) { + continue; + } + + $old = [ + '{COLUMN_COMMENT}', + '{COLUMN_NAME}', + '{DICT_TYPE}', + '{LCASE_CLASS_NAME}', + '{LCASE_COLUMN_NAME}', + '{ITEM_LABEL}', + '{ITEM_VALUE}' + ]; + if(empty($column['dict_type'])) + { + if(empty($column['model'])) + { + $new = [ + $column['column_comment'], + $column['column_name'], + $column['dict_type'], + $this->getLCaseClassName(), + Str::camel($column['column_name']), + '', + '' + ]; + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']).'List', + $this->getLCaseClassName(), + Str::camel($column['column_name']), + $column['label_key'], + $column['value_key'] + ]; + + } + + + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + $column['column_name'].'List', + $this->getLCaseClassName(), + Str::camel($column['column_name']), + '', + '' + ]; + } + + + $searchVmType = $column['view_type']; + if ($column['view_type'] == 'radio') { + $searchVmType = 'select'; + } + if(empty($column['dict_type'])) + { + if ($column['view_type'] == 'radio' || $column['view_type'] == 'select' || $column['view_type'] == 'checkbox' ) { + if(empty($column['model'])) + { + $searchVmType = 'select2'; + }else{ + $searchVmType = 'select3'; + } + + } + }else{ + if ($column['view_type'] == 'radio') { + $searchVmType = 'select'; + } + } + if ($column['query_type'] == 'BETWEEN') { + $searchVmType = $column['view_type'] == 'datetime' ? 'datetime' : 'rangeInput'; + } + + $vmPath = $this->getvmPath('search/' . $searchVmType); + if (!file_exists($vmPath)) { + continue; + } + + $content .= $this->replaceFileText($old, $new, $vmPath) . PHP_EOL; + + } + + if (!empty($content)) { + $content = substr($content, 0, -1); + } + + return $this->setBlankSpace($content, ' '); + } + + /** + * 搜索参数 + * @return string + */ + public function getSearchParams() + { + + $content = ''; + foreach ($this->tableColumn as $column) { + if (!$column['is_search'] || $column['is_pk']) { + continue; + } + + if ($column['query_type'] == 'BETWEEN') { + $content .= '"'.$column['column_name'].'":[],' . PHP_EOL; + } else { + $content .= '"'.$column['column_name'].'":"",' . PHP_EOL; + } + } + + if (!empty($content)) { + $content = trim(trim($content), ','); + } + return $this->setBlankSpace($content, ' '); + + } + + + /** + * 获取列表内容 + * @return string + */ + public function getTable() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!$column['is_lists'] || $column['column_name'] == 'site_id') { + continue; + } + + $old = [ + '{COLUMN_COMMENT}', + '{COLUMN_NAME}', + '{LANG}', + '{DICT_TYPE}' + ]; + if(!empty($column['model'])) + { + $new = [ + $column['column_comment'], + $column['column_name'].'_name', + Str::camel($column['column_name']), + $column['column_name'].'List' + ]; + }else{ + $new = [ + $column['column_comment'], + $column['column_name'], + Str::camel($column['column_name']), + $column['column_name'].'List' + ]; + } + + + $vmPath = $this->getvmPath('table/default'); + if ($column['view_type'] == 'imageSelect') { + $vmPath = $this->getvmPath('table/image'); + } + + if ($column['column_type'] == 'int' && $column['view_type'] == 'datetime') { + $vmPath = $this->getvmPath('table/datetime'); + } + + if ($column['dict_type']) { + $vmPath = $this->getvmPath('table/dictcolumn'); + } + + if (!file_exists($vmPath)) { + continue; + } + + $content .= $this->replaceFileText($old, $new, $vmPath) . PHP_EOL; + } + + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 获取查询条件 + * @return string + */ + public function getQueryParams() + { + $content = ''; + $queryDate = false; + foreach ($this->tableColumn as $column) { + if (!$column['is_pk']) { + continue; + } + $content .= $column['column_name'] . ": ''," . PHP_EOL; + if ($column['query_type'] == 'between' && $column['view_type'] == 'datetime') { + $queryDate = true; + } + } + if ($queryDate) { + $content .= "start_time: ''," . PHP_EOL; + $content .= "end_time: ''," . PHP_EOL; + } + $content = substr($content, 0, -2); + return $this->setBlankSpace($content, ' '); + } + + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if(!empty($this->addonName)) + { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR. $this->addonName .DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR; + }else{ + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . 'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } + + + $this->checkDir($dir); + + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR . $this->moduleName . DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'views'.DIRECTORY_SEPARATOR. $this->moduleName . DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/views/' . $this->moduleName . '/'; + + }else{ + $dir = 'admin/app/views/' . $this->moduleName . '/'; + } + return $dir; + } + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->className) return Str::lower($this->className).'.vue'; + return 'list.vue'; + } + + /** + * 生成的API路径 + * @return string + */ + public function getApiPath() + { + if(!empty($this->addonName)) + { + return 'addon/'.$this->addonName.'/api/'.$this->moduleName; + }else{ + return 'app/api/'.$this->moduleName; + } + } + + public function getDictDataContent() + { + $content = ''; + $isExist = []; + foreach ($this->tableColumn as $column) { + if (empty($column['dict_type']) || $column['is_pk']) { + continue; + } + if (in_array($column['dict_type'], $isExist)) { + continue; + } + $content .= $column['dict_type'] . ': ' . "[]," . PHP_EOL; + $isExist[] = $column['dict_type']; + } + if (!empty($content)) { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + + /** + * 调用字典方法 + */ + public function getDictList() + { + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['dict_type'])) + { + continue; + } + $content.= 'const '.$column['column_name'].'List = ref([] as any[])'.PHP_EOL.'const '.$column['column_name'].'DictList = async () => {'.PHP_EOL.$column['column_name'].'List.value = await (await useDictionary(' ."'".$column['dict_type']."'".')).data.dictionary'.PHP_EOL.'}'.PHP_EOL. $column['column_name'].'DictList();'.PHP_EOL; + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + } + + /** + * 增加关联方法 + * @return void + */ + public function getWithApiPath() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= ' getWith'.Str::studly($with).'List,'; + } + } + return $content; + } + + /** + * 调用远程下拉方法 + * @return void + */ + public function getModelData() + { + $content = ''; + foreach ($this->tableColumn as $column) + { + if(empty($column['model'])) + { + continue; + } + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= PHP_EOL.'const '. Str::camel($column['column_name']).'List = ref([])'.PHP_EOL; + $content.= 'const set'.Str::studly($column['column_name']).'List = async () => {'.PHP_EOL.Str::camel($column['column_name']).'List.value = await (await getWith'.Str::studly($with).'List({})).data' .PHP_EOL.'}' + .PHP_EOL.'set'.Str::studly($column['column_name']).'List())'; + } + + if(!empty($content)) + { + $content = substr($content, 0, -1); + } + return $this->setBlankSpace($content, ' '); + + } + + /** + * 编辑远程下拉方法 + * @return void + */ + public function getEditWithApiPath() + { + $content = ''; + foreach ($this->tableColumn as $column) { + if (!empty($column['model'])) { + $str = strripos($column['model'],'\\'); + $with = Str::camel(substr($column['model'],$str+1)); + $content.= ' getWith'.Str::studly($with).'List,'; + } + } + return $content; + } +} diff --git a/niucloud/app/service/admin/generator/core/WebLangGenerator.php b/niucloud/app/service/admin/generator/core/WebLangGenerator.php new file mode 100644 index 0000000..5394fad --- /dev/null +++ b/niucloud/app/service/admin/generator/core/WebLangGenerator.php @@ -0,0 +1,178 @@ +getLang(); + $this->setText($text); + } + + /** + * 语言包 + * @return string + */ + public function getLang() + { + $lang = ''; + foreach ($this->tableColumn as $column) { + if($column['is_lists'] || $column['is_search']) { + $lang .= '"' . Str::camel($column['column_name']) . '":"' . $column['column_comment'] . '",' . PHP_EOL; + } + if($column['is_search']){ + if(!empty($column['model'])) + { + $placeholder_text = '全部'; + $lang .= '"'.Str::camel($column['column_name']) .'Placeholder":"'.$placeholder_text.'",'.PHP_EOL; + }else{ + $placeholder_text = '请输入'; + $lang .= '"'.Str::camel($column['column_name']) .'Placeholder":"'.$placeholder_text.$column['column_comment'].'",'.PHP_EOL; + } + + } + + if($this->table['edit_type'] == 1 && ($column['is_insert'] || $column['is_update'])){ + if(!str_contains($lang, '"' . Str::camel($column['column_name']) . '"')){ + $lang .= '"' . Str::camel($column['column_name']) . '":"' . $column['column_comment'] . '",' . PHP_EOL; + } + $placeholder_text = '请输入'; + if(!str_contains($lang, '"' . Str::camel($column['column_name']) . 'Placeholder"')){ + $lang .= '"'.Str::camel($column['column_name']) .'Placeholder":"'.$placeholder_text.$column['column_comment'].'",'.PHP_EOL; + } + + } + } + if(!empty($this->table['table_content'])) + { + $end_str = substr($this->table['table_content'],-3); + if($end_str == '表') + { + $table_content = substr($this->table['table_content'],0,strlen($this->table['table_content'])-3); + }else{ + $table_content = $this->table['table_content']; + } + }else{ + $table_content = ''; + } + $lang .= '"add'.$this->getUCaseClassName() .'":"添加'.$table_content.'",'.PHP_EOL; + $lang .= '"update'.$this->getUCaseClassName() .'":"编辑'.$table_content.'",'.PHP_EOL; + $lang .= '"'.$this->getLCaseClassName() .'DeleteTips":"确定要删除该数据吗?",'.PHP_EOL; + $lang .= '"startDate":"请选择开始时间",'.PHP_EOL; + $lang .= '"endDate":"请选择结束时间",'.PHP_EOL; + $lang = trim(trim($lang), ','); + return '{'.PHP_EOL.$this->setBlankSpace($lang, " ").PHP_EOL.'}'; + } + + /** + * 获取文件生成到模块的文件夹路径 + * @return string + */ + public function getModuleOutDir() + { + if(!empty($this->addonName)) + { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR. $this->addonName .DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } else { + $dir = dirname(app()->getRootPath()) . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + $this->checkDir($dir); + return $dir; + } + + + /** + * 获取文件生成到runtime的文件夹路径 + * @return string + */ + public function getRuntimeOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->outDir . 'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + + }else{ + $dir = $this->outDir . 'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到项目中 + * @return string + */ + public function getObjectOutDir() + { + if(!empty($this->addonName)) + { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + }else{ + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'src'.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + } + + $this->checkDir($dir); + return $dir; + } + + /** + * 获取文件生成到插件中 + */ + public function getAddonObjectOutDir() { + $dir = $this->rootDir . DIRECTORY_SEPARATOR.'niucloud'.DIRECTORY_SEPARATOR.'addon'.DIRECTORY_SEPARATOR.$this->addonName.DIRECTORY_SEPARATOR.'admin'.DIRECTORY_SEPARATOR.'lang'.DIRECTORY_SEPARATOR.'zh-cn'.DIRECTORY_SEPARATOR; + $this->checkDir($dir); + return $dir; + } + + public function getFilePath() + { + if(!empty($this->addonName)) + { + $dir = 'addon/'.$this->addonName.'/admin/lang/zh-cn/'; + + }else{ + $dir = 'admin/app/lang/zh-cn/'; + } + + return $dir; + } + /** + * 生成的文件名 + * @return string + */ + public function getFileName() + { + if($this->className){ + return $this->moduleName.'.'. Str::lower($this->className) .'.json'; + } + return $this->moduleName.'.list.json'; + } + + +} diff --git a/niucloud/app/service/admin/generator/vm/admin_api_route.vm b/niucloud/app/service/admin/generator/vm/admin_api_route.vm new file mode 100644 index 0000000..e4bcaa1 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/admin_api_route.vm @@ -0,0 +1,22 @@ +{ROUTE} +{BEGIN} + +Route::group('{ROUTE_GROUP_NAME}', function () { + + //{NOTES}列表 + Route::get('{ROUTE_NAME}', '{ROUTE_PATH}lists'); + //{NOTES}详情 + Route::get('{ROUTE_NAME}/:id', '{ROUTE_PATH}info'); + //添加{NOTES} + Route::post('{ROUTE_NAME}', '{ROUTE_PATH}add'); + //编辑{NOTES} + Route::put('{ROUTE_NAME}/:id', '{ROUTE_PATH}edit'); + //删除{NOTES} + Route::delete('{ROUTE_NAME}/:id', '{ROUTE_PATH}del'); + {WITH_ROUTE} +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +{END} diff --git a/niucloud/app/service/admin/generator/vm/controller.vm b/niucloud/app/service/admin/generator/vm/controller.vm new file mode 100644 index 0000000..740964c --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/controller.vm @@ -0,0 +1,77 @@ +request->params([ +{SEARCH_PARAMS} + ]); + return success((new {UCASE_NAME}Service())->getPage($data)); + } + + /** + * {NOTES}详情 + * @param int $id + * @return \think\Response + */ + public function info(int $id){ + return success((new {UCASE_NAME}Service())->getInfo($id)); + } + + /** + * 添加{NOTES} + * @return \think\Response + */ + public function add(){ + $data = $this->request->params({ADD_FILED_NOTE}); + $this->validate($data, '{VALIDATE}.add'); + $id = (new {UCASE_NAME}Service())->add($data); + return success('ADD_SUCCESS', ['id' => $id]); + } + + /** + * {NOTES}编辑 + * @param $id {NOTES}id + * @return \think\Response + */ + public function edit(int $id){ + $data = $this->request->params({EDIT_FILED_NOTE}); + $this->validate($data, '{VALIDATE}.edit'); + (new {UCASE_NAME}Service())->edit($id, $data); + return success('EDIT_SUCCESS'); + } + + /** + * {NOTES}删除 + * @param $id {NOTES}id + * @return \think\Response + */ + public function del(int $id){ + (new {UCASE_NAME}Service())->del($id); + return success('DELETE_SUCCESS'); + } + + {WITH_CONTROLLER} +} diff --git a/niucloud/app/service/admin/generator/vm/form/checkbox.vm b/niucloud/app/service/admin/generator/vm/form/checkbox.vm new file mode 100644 index 0000000..4ac3d8a --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/checkbox.vm @@ -0,0 +1,10 @@ + + + + {{ item.{ITEM_LABEL} }} + + + diff --git a/niucloud/app/service/admin/generator/vm/form/checkbox2.vm b/niucloud/app/service/admin/generator/vm/form/checkbox2.vm new file mode 100644 index 0000000..b8f7077 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/checkbox2.vm @@ -0,0 +1,6 @@ + + + 选项1 + 选项2 + + diff --git a/niucloud/app/service/admin/generator/vm/form/checkbox3.vm b/niucloud/app/service/admin/generator/vm/form/checkbox3.vm new file mode 100644 index 0000000..401a653 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/checkbox3.vm @@ -0,0 +1,10 @@ + + + + {{ item.name }} + + + diff --git a/niucloud/app/service/admin/generator/vm/form/datetime.vm b/niucloud/app/service/admin/generator/vm/form/datetime.vm new file mode 100644 index 0000000..a51d653 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/datetime.vm @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/form/datetime2.vm b/niucloud/app/service/admin/generator/vm/form/datetime2.vm new file mode 100644 index 0000000..81c3586 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/datetime2.vm @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/form/editor.vm b/niucloud/app/service/admin/generator/vm/form/editor.vm new file mode 100644 index 0000000..ea173a7 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/editor.vm @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/form/imageSelect.vm b/niucloud/app/service/admin/generator/vm/form/imageSelect.vm new file mode 100644 index 0000000..f096f34 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/imageSelect.vm @@ -0,0 +1,3 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/form/input.vm b/niucloud/app/service/admin/generator/vm/form/input.vm new file mode 100644 index 0000000..75e784d --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/input.vm @@ -0,0 +1,3 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/form/number.vm b/niucloud/app/service/admin/generator/vm/form/number.vm new file mode 100644 index 0000000..1dab147 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/number.vm @@ -0,0 +1,3 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/form/radio.vm b/niucloud/app/service/admin/generator/vm/form/radio.vm new file mode 100644 index 0000000..1747544 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/radio.vm @@ -0,0 +1,10 @@ + + + + + {{ item.{ITEM_LABEL} }} + + + diff --git a/niucloud/app/service/admin/generator/vm/form/radio2.vm b/niucloud/app/service/admin/generator/vm/form/radio2.vm new file mode 100644 index 0000000..4ed61e9 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/radio2.vm @@ -0,0 +1,10 @@ + + + + 选项1 + + + 选项2 + + + diff --git a/niucloud/app/service/admin/generator/vm/form/radio3.vm b/niucloud/app/service/admin/generator/vm/form/radio3.vm new file mode 100644 index 0000000..d6825d8 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/radio3.vm @@ -0,0 +1,11 @@ + + + + + {{ item.name }} + + + diff --git a/niucloud/app/service/admin/generator/vm/form/select.vm b/niucloud/app/service/admin/generator/vm/form/select.vm new file mode 100644 index 0000000..88930cb --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/select.vm @@ -0,0 +1,11 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/form/select2.vm b/niucloud/app/service/admin/generator/vm/form/select2.vm new file mode 100644 index 0000000..eed3db3 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/select2.vm @@ -0,0 +1,12 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/form/select3.vm b/niucloud/app/service/admin/generator/vm/form/select3.vm new file mode 100644 index 0000000..f21ab35 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/select3.vm @@ -0,0 +1,11 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/form/textarea.vm b/niucloud/app/service/admin/generator/vm/form/textarea.vm new file mode 100644 index 0000000..4a7b25b --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/form/textarea.vm @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/menu_sql.vm b/niucloud/app/service/admin/generator/vm/menu_sql.vm new file mode 100644 index 0000000..306febd --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/menu_sql.vm @@ -0,0 +1 @@ +{SQL} diff --git a/niucloud/app/service/admin/generator/vm/model.vm b/niucloud/app/service/admin/generator/vm/model.vm new file mode 100644 index 0000000..58d01f7 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/model.vm @@ -0,0 +1,50 @@ + { + dictData.{DICT_TYPE} = res.lists + }) diff --git a/niucloud/app/service/admin/generator/vm/other/formValidate.vm b/niucloud/app/service/admin/generator/vm/other/formValidate.vm new file mode 100644 index 0000000..73d50a1 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/other/formValidate.vm @@ -0,0 +1,4 @@ + {COLUMN_NAME}: [ + { required: true, message: t('{VALIDATE_MSG}'), trigger: 'blur' }, + {VERIFY} + ] diff --git a/niucloud/app/service/admin/generator/vm/php/model/has_many.vm b/niucloud/app/service/admin/generator/vm/php/model/has_many.vm new file mode 100644 index 0000000..eeffd5f --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/php/model/has_many.vm @@ -0,0 +1,4 @@ +public function {RELATION_NAME}() + { + return $this->hasMany({RELATION_MODEL}::class, '{FOREIGN_KEY}', '{LOCAL_KEY}'); + } diff --git a/niucloud/app/service/admin/generator/vm/php/model/has_one.vm b/niucloud/app/service/admin/generator/vm/php/model/has_one.vm new file mode 100644 index 0000000..cded8db --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/php/model/has_one.vm @@ -0,0 +1,4 @@ +public function {RELATION_NAME}() + { + return $this->hasOne({RELATION_MODEL}::class, '{FOREIGN_KEY}', '{LOCAL_KEY}'); + } diff --git a/niucloud/app/service/admin/generator/vm/search/datetime.vm b/niucloud/app/service/admin/generator/vm/search/datetime.vm new file mode 100644 index 0000000..1098853 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/datetime.vm @@ -0,0 +1,4 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/search/input.vm b/niucloud/app/service/admin/generator/vm/search/input.vm new file mode 100644 index 0000000..b5b2f79 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/input.vm @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/search/rangeInput.vm b/niucloud/app/service/admin/generator/vm/search/rangeInput.vm new file mode 100644 index 0000000..ce9a1a1 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/rangeInput.vm @@ -0,0 +1,3 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/search/select.vm b/niucloud/app/service/admin/generator/vm/search/select.vm new file mode 100644 index 0000000..48a59f8 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/select.vm @@ -0,0 +1,12 @@ + + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/search/select2.vm b/niucloud/app/service/admin/generator/vm/search/select2.vm new file mode 100644 index 0000000..cdaff9f --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/select2.vm @@ -0,0 +1,6 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/search/select3.vm b/niucloud/app/service/admin/generator/vm/search/select3.vm new file mode 100644 index 0000000..611f5a1 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/search/select3.vm @@ -0,0 +1,11 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/service.vm b/niucloud/app/service/admin/generator/vm/service.vm new file mode 100644 index 0000000..eebc9df --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/service.vm @@ -0,0 +1,98 @@ +model = new {UCASE_NAME}(); + } + + /** + * 获取{NOTES}列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = '{FIELDS}'; + $order = '{ORDER}'; + + $search_model = {SEARCH_MODEL} + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取{NOTES}信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = '{FIELDS}'; + + $info = {INFO_SEARCH_MODEL} + return $info; + } + + /** + * 添加{NOTES} + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $res = $this->model->create($data); + return $res->{PK}; + + } + + /** + * {NOTES}编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['{PK}', '=', $id]])->update($data); + return true; + } + + /** + * 删除{NOTES} + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['{PK}', '=', $id]])->find(); + $res = $model->delete(); + return $res; + } + + {WITH_ALL_FUNCTION} + +} diff --git a/niucloud/app/service/admin/generator/vm/site_service.vm b/niucloud/app/service/admin/generator/vm/site_service.vm new file mode 100644 index 0000000..b2ceef6 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/site_service.vm @@ -0,0 +1,97 @@ +model = new {UCASE_NAME}(); + } + + /** + * 获取{NOTES}列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = '{FIELDS}'; + $order = '{ORDER}'; + + $search_model = {SEARCH_MODEL}; + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取{NOTES}信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = '{FIELDS}'; + + $info = {INFO_SEARCH_MODEL}; + return $info; + } + + /** + * 添加{NOTES} + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->{PK}; + + } + + /** + * {NOTES}编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + + $this->model->where([['{PK}', '=', $id],['site_id', '=', $this->site_id]])->update($data); + return true; + } + + /** + * 删除{NOTES} + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([['{PK}', '=', $id],['site_id', '=', $this->site_id]])->find(); + $res = $model->delete(); + return $res; + } + {WITH_ALL_FUNCTION} +} diff --git a/niucloud/app/service/admin/generator/vm/table/datetime.vm b/niucloud/app/service/admin/generator/vm/table/datetime.vm new file mode 100644 index 0000000..808e5b7 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/table/datetime.vm @@ -0,0 +1,5 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/table/default.vm b/niucloud/app/service/admin/generator/vm/table/default.vm new file mode 100644 index 0000000..fdc3090 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/table/default.vm @@ -0,0 +1 @@ + diff --git a/niucloud/app/service/admin/generator/vm/table/dictcolumn.vm b/niucloud/app/service/admin/generator/vm/table/dictcolumn.vm new file mode 100644 index 0000000..0be6b61 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/table/dictcolumn.vm @@ -0,0 +1,7 @@ + + + diff --git a/niucloud/app/service/admin/generator/vm/table/image.vm b/niucloud/app/service/admin/generator/vm/table/image.vm new file mode 100644 index 0000000..310e911 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/table/image.vm @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/niucloud/app/service/admin/generator/vm/validate.vm b/niucloud/app/service/admin/generator/vm/validate.vm new file mode 100644 index 0000000..c34f839 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/validate.vm @@ -0,0 +1,28 @@ +) { + return request.get(`{ROUTE_GROUP_NAME}/{ROUTE_NAME}`, {params}) +} + +/** + * 获取{NOTES}详情 + * @param {PK} {NOTES}{PK} + * @returns + */ +export function get{UCASE_NAME}Info({PK}: number) { + return request.get(`{ROUTE_GROUP_NAME}/{ROUTE_NAME}/${{PK}}`); +} + +/** + * 添加{NOTES} + * @param params + * @returns + */ +export function add{UCASE_NAME}(params: Record) { + return request.post('{ROUTE_GROUP_NAME}/{ROUTE_NAME}', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑{NOTES} + * @param {PK} + * @param params + * @returns + */ +export function edit{UCASE_NAME}(params: Record) { + return request.put(`{ROUTE_GROUP_NAME}/{ROUTE_NAME}/${params.{PK}}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除{NOTES} + * @param {PK} + * @returns + */ +export function delete{UCASE_NAME}({PK}: number) { + return request.delete(`{ROUTE_GROUP_NAME}/{ROUTE_NAME}/${{PK}}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +{WITH_ROUTE_API} + +{END} diff --git a/niucloud/app/service/admin/generator/vm/web_edit.vm b/niucloud/app/service/admin/generator/vm/web_edit.vm new file mode 100644 index 0000000..37127b8 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/web_edit.vm @@ -0,0 +1,137 @@ + + + + + + diff --git a/niucloud/app/service/admin/generator/vm/web_edit_page.vm b/niucloud/app/service/admin/generator/vm/web_edit_page.vm new file mode 100644 index 0000000..313707d --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/web_edit_page.vm @@ -0,0 +1,132 @@ + + + + + diff --git a/niucloud/app/service/admin/generator/vm/web_index.vm b/niucloud/app/service/admin/generator/vm/web_index.vm new file mode 100644 index 0000000..6ba3862 --- /dev/null +++ b/niucloud/app/service/admin/generator/vm/web_index.vm @@ -0,0 +1,154 @@ + + + + + diff --git a/niucloud/app/service/admin/generator/vm/web_lang.vm b/niucloud/app/service/admin/generator/vm/web_lang.vm new file mode 100644 index 0000000..e69de29 diff --git a/niucloud/app/service/admin/home/AuthSiteService.php b/niucloud/app/service/admin/home/AuthSiteService.php new file mode 100644 index 0000000..8ce2108 --- /dev/null +++ b/niucloud/app/service/admin/home/AuthSiteService.php @@ -0,0 +1,132 @@ +model = new Site(); + } + + /** + * 获取授权当前的站点信息 + */ + public function getSiteInfo($site_id){ + $this->checkSite($site_id); + //通过用户id获取 + $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, app'; + return $this->model->where([ [ 'site_id', '=', $site_id ] ])->with(['groupName', 'addon'])->field($field)->append([ 'status_name' ])->findOrEmpty()->toArray(); + } + + /** + * 获取授权用户旗下的站点列表 + */ +// public function getSiteList(){ +// //通过用户id获取 +// $cache_name = 'site_list'.'_'.$this->uid; +// return cache_remember( +// $cache_name, +// function (){ +// $auth_service = new AuthService(); +// $user_role_list = $auth_service->getAuthSiteRoleList(); +// $site_ids = array_column($user_role_list, 'site_id'); +// return $this->model->where([['site_id', 'in', $site_ids]])->field('app_type,site_name,logo')->column('site_id, site_name, logo, app_type'); +// }, +// SiteService::$cache_tag_name +// ); +// +// } + + /** + * 获取授权账号下的站点列表 + * @param array $where + * @return array + * @throws DbException + */ + public function getSitePage(array $where = []) + { + $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, app'; + $search_model = $this->model->where([['site_id', 'in', $this->getSiteIds()]])->withSearch([ 'create_time', 'expire_time', 'keywords', 'status', 'group_id', 'app' ], $where)->with(['groupName'])->field($field)->append([ 'status_name' ])->order('create_time desc'); + return $this->pageQuery($search_model); + } + + + /** + * 查询用户角色类表 + * @param int $uid + * @return mixed|string + */ + public function getSiteIds(){ + $cache_name = 'user_role_list_'.$this->uid; + return cache_remember( + $cache_name, + function(){ + $user_role_model = new SysUserRole(); + $where = array( + ['uid', '=', $this->uid], + ['site_id', '<>', request()->defaultSiteId()], + ['status', '=', 1] + ); + $list = $user_role_model->where($where)->select()->toArray(); + return array_column($list, 'site_id'); + }, + [self::$role_cache_name] + ); + } + + /** + * 编辑站点信息 + * @param int $site_id + * @param array $data + * @return true + */ + public function editSite(int $site_id, array $data){ + $this->checkSite($site_id); + $this->model->where([['site_id', '=', $site_id]])->update($data); + return true; + } + + /** + * 校验是否合法 + * @param $site_id + * @return void + */ + public function checkSite($site_id){ + $site_ids = $this->getSiteIds(); + if(!in_array($site_id, $site_ids)) throw new HomeException('USER_ROLE_NOT_HAS_SITE');//无效的站点 + } +} diff --git a/niucloud/app/service/admin/install/InstallArticleService.php b/niucloud/app/service/admin/install/InstallArticleService.php new file mode 100644 index 0000000..6f2ec41 --- /dev/null +++ b/niucloud/app/service/admin/install/InstallArticleService.php @@ -0,0 +1,81 @@ +installArticle($params); + return true; + } + + /** + * 安装数据 + */ + public function installArticle(array $params = []) + { + $article_category = new ArticleCategory(); + $category = [ + 'site_id' => $params[ 'site_id' ], + 'name' => '资讯', + 'is_show' => 1, + 'create_time' => time() + ]; + $category_id = $article_category->insert($category); + + $article = new Article(); + $article_list = [ + [ + 'category_id' => $category_id, + 'site_id' => $params[ 'site_id' ], + 'title' => 'NiuCloud-admin介绍', + 'intro' => '', + 'summary' => '', + 'image' => 'static/resource/images/article/niucloud_admin_frame.png', + 'author' => 'NiuCloud', + 'content' => '

Niucloud-admin特点介绍


1.采用的技术栈

1.1 后台php采用thinkphp6+php8+mysql,支持composer快速安装扩展,支持redis缓存以及消息队列,支持多语言设计开发,同时开发采用严格的restful的api设计开发。

1.2 后台前后端分离采用element-plus、vue3.0、typescript、vite、pina等前端技术,同时使用i18n支持国际化多语言开发。

1.3 手机端采用uniapp前后端分离,同时使用uview、vue3.0、typescript、vite、pina等前端技术,同时使用i18n支持国际化多语言开发,可以灵活编译成h5,微信小程序,支付宝小程序,抖音小程序等使用场景。


2.技术特点

2.1niucloud-admin采用多租户的saas系统设计,能够提供企业级软件服务运营 ,同时满足用户多站点,多商户,多门店等系统开发需求。

2.2niucloud-admin结合当前市面上很多框架结构不规范,导致基础结构不稳定等情况,严格定义了分层设计的开发规范,同时api接口严格采用restful的开发规范,能够满足大型业务系统或者微服务的开发需求。

2.3 niucloud-admin前端以及后端采用严格的多语言开发规范,包括前端展示,api接口返回,数据验证,错误返回等全部使用多语言设计规范,使开发者能够真生意义上实现多语言的开发需求。

2.4 Niucloud-admin已经搭建好常规系统的开发底层,具体的底层功能包括:管理员管理,权限管理,网站设置,计划任务管理,素材管理,会员管理,会员账户管理,微信公众号以及小程序管理,支付管理,第三方登录管理,消息管理,短信管理,文章管理,前端装修等全面的基础功能,这样开发者不需要开发基础的结构而专心开发业务。

2.5 niucloud-admin系统内置支持微信/支付宝支付,微信公众号/小程序/短信消息管理,阿里云/腾讯云短信,七牛云/阿里云存储等基础的功能扩展,后续会根据实际业务不断扩展基础组件。

2.6 niucloud-admin结合系统结构特点专门开发了代码生成器,这样开发者根据数据表就可以一键生成基础的业务代码,包括:后台php业务代码以及对应的前端vue代码。

2.7 前端采用标准的element-plus,开发者不需要详细了解前端,只需要用标准的element组件就可以。

2.8  手机端设计开发了自定义装修,同时提供了基础的开发组件,方便开发者设计开发手机自定义页面装修的开发需求。

2.9  手机端使用uniapp ,同时使用uview页面展示,可以开发出丰富的手机样式,同时不需要专门学习小程序,app等开发语言,只需要通过uniapp编译就可以。

', + 'is_show' => 1, + 'create_time' => time() + ], + [ + 'category_id' => $category_id, + 'site_id' => $params[ 'site_id' ], + 'title' => 'NiuCloud-admin 开发者联盟', + 'intro' => 'Niucloud-admin 开发者联盟招募', + 'summary' => '', + 'image' => 'static/resource/images/article/niucloud_admin_developer.png', + 'author' => 'NiuCloud', + 'content' => '

Niucloud-admin 开发者联盟招募

近几年,我们看到很多企业都在做自己的研发,有的是企业和内部使用,有的是帮助别人定制开发,也有的已经成功走向商业化,对软件开发的学习和钻研成为了行业圈内发展很有前景的方向。同时我们也看到,大家的开发之路都多多少少遇到了各自的瓶颈。或者是接触不到真实项目需求、只能闭门造车;或者是产品研发出来,没有变现的销路;或者技术遇到了瓶颈,没办法走的更深入;或者几个人自己钻研,水平提升很慢。无论属于哪种,亲爱的开发者,如果你也正在为自己怀才不遇无处施展,或者感觉优质的技术内容没有让更多的人知道而苦恼,那么现在,机会来啦~~niucloud-admin框架为你提供优质平台,公开招募开发爱好者。今天,大牛哥把一大波福利搬来,希望可以在学习、交流和市场拓展等方面帮助大家。在针对那些想提高技术水平的个人或团队,想要基于niucloud-admin框架开发自己的产品的伙伴 ,联盟会免费提供一些列的培训或辅导答疑。针对那些渴望交流、认识同路人的小伙伴,会有线上交流会让大家互通想法、互相引荐高人。

说了这么多,那么niucloud-admin到底是什么呢?且听小编来介绍~

Niucloud-admin是一款快速开发通用管理后台框架,前端采用最新的技术栈Vite+TypeScript+Vue3+ElementPlus最流行技术架构,后台结合PHP8、Java SDK、Python等主流后端语言搭建,内置集成用户权限、代码生成器、表单设计、云存储、短信发送、素材中心、微信及公众号、Api模块一系列开箱即用功能,是一款快速可以开发企业级应用的软件系统。

听完介绍是不是都有点马上可以从小白变成大牛的感觉了,“开箱即用”,那不是小白都可以开发出属于自己的插件了吗?对,你没听错~ 具体怎么生成,那就赶快加入niucloud-admin开发者联盟来亲身体验下吧~~

有态度,有深度,niucloud-admin咱们下次见~

', + 'is_show' => 1, + 'create_time' => time() + ] + ]; + $article->insertAll($article_list); + + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/install/InstallSystemService.php b/niucloud/app/service/admin/install/InstallSystemService.php new file mode 100644 index 0000000..20f0339 --- /dev/null +++ b/niucloud/app/service/admin/install/InstallSystemService.php @@ -0,0 +1,115 @@ +installMenu(); + return true; + } + + /** + * 菜单安装 + */ + public function installMenu() + { + $sys_menu = new SysMenu(); + + //系统菜单 + $admin_menus = $this->loadMenu(AppTypeDict::ADMIN); + $site_menus = $this->loadMenu(AppTypeDict::SITE); + $menus = array_merge($admin_menus, $site_menus); + Db::name("sys_menu")->where([ [ 'addon', '=', '' ], ['source', '=', MenuDict::SYSTEM] ])->delete(); + $sys_menu->replace()->insertAll($menus); + //插件菜单 + (new CoreMenuService())->refreshAllAddonMenu(); + // 清除缓存 + Cache::tag(MenuService::$cache_tag_name)->clear(); + return true; + } + + /** + * 加载菜单 + * @return array + */ + public function loadMenu($app_type) + { + //加载系统 + $system_tree = include root_path() . str_replace('/', DIRECTORY_SEPARATOR, "app/dict/menu/" . $app_type . ".php"); + $this->menuTreeToList($system_tree, '', $app_type); + $menu_list = $this->menu_list; + $this->menu_list = []; + return $menu_list; + } + + /** + * 菜单数转为列表 + * @param array $tree + * @param string $parent_key + * @param string $app_type + */ + private function menuTreeToList(array $tree, string $parent_key = '', string $app_type = AppTypeDict::ADMIN) + { + if (is_array($tree)) { + foreach ($tree as $key => $value) { + $item = [ + 'menu_name' => $value[ 'menu_name' ], + 'menu_short_name' => $value[ 'menu_short_name' ] ?? '', + 'menu_key' => $value[ 'menu_key' ], + 'app_type' => $app_type, + 'parent_key' => $value[ 'parent_key' ] ?? $parent_key, + 'menu_type' => $value[ 'menu_type' ], + 'icon' => $value[ 'icon' ] ?? '', + 'api_url' => $value[ 'api_url' ] ?? '', + 'router_path' => $value[ 'router_path' ] ?? '', + 'view_path' => $value[ 'view_path' ] ?? '', + 'methods' => $value[ 'methods' ] ?? '', + 'sort' => $value[ 'sort' ] ?? '', + 'status' => 1, + 'is_show' => $value[ 'is_show' ] ?? 1 + ]; + $refer = $value; + if (isset($refer[ 'children' ])) { + unset($refer[ 'children' ]); + $this->menu_list[] = $item; + $p_key = $refer[ 'menu_key' ]; + $this->menuTreeToList($value[ 'children' ], $p_key, $app_type); + } else { + $this->menu_list[] = $item; + } + } + } + } + +} diff --git a/niucloud/app/service/admin/member/MemberAccountService.php b/niucloud/app/service/admin/member/MemberAccountService.php new file mode 100644 index 0000000..c09df64 --- /dev/null +++ b/niucloud/app/service/admin/member/MemberAccountService.php @@ -0,0 +1,154 @@ +model = new MemberAccountLog(); + } + + /** + * 会员账户流水列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + + $field = 'member_account_log.id, member_account_log.member_id, member_account_log.site_id, member_account_log.account_type, member_account_log.account_data,member_account_log.account_sum, member_account_log.from_type, member_account_log.related_id, member_account_log.create_time, member_account_log.memo'; + $member_where = []; + if (!empty($where[ 'keywords' ])) { + $member_where[] = [ "member.member_no|member.nickname|member.mobile", 'like', '%' . $where[ 'keywords' ] . '%' ]; + } + $search_model = $this->model->where([ [ 'member_account_log.site_id', '=', $this->site_id ] ])->withSearch([ 'join_member_id' => 'member_id', 'account_type', 'from_type', 'join_create_time' => 'create_time' ], $where)->withJoin([ 'member' => function($query) { + $query->field("member.nickname, member.headimg, member.mobile, member.member_id, member.member_no"); + } + ])->where($member_where)->field($field)->order('create_time desc')->append([ 'from_type_name', 'account_type_name' ]); + return $this->pageQuery($search_model); + } + + /** + * 账户流水详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, member_id, site_id, account_type, account_data, from_type, related_id, create_time, memo'; + return $this->model->where([ [ 'id', '=', $id ], [ 'site_id', '=', $this->site_id ] ])->with('memberInfo')->field($field)->append([ 'from_type_name', 'account_type_name' ])->findOrEmpty()->toArray(); + } + + /** + * 添加调整积分数据 + * @param array $data + * @return mixed + */ + public function adjustPoint(array $data) + { + return ( new CoreMemberAccountService() )->addLog($this->site_id, $data[ 'member_id' ], 'point', $data[ 'account_data' ], 'adjust', $data[ 'memo' ]); + } + + /** + * 添加调整余额账户 + * @param array $data + * @return bool + */ + public function adjustBalance(array $data) + { + return ( new CoreMemberAccountService() )->addLog($this->site_id, $data[ 'member_id' ], 'balance', $data[ 'account_data' ], 'adjust', $data[ 'memo' ]); + } + + public function adjustMoney(array $data) + { + return ( new CoreMemberAccountService() )->addLog($this->site_id, $data[ 'member_id' ], MemberAccountTypeDict::MONEY, $data[ 'account_data' ], 'adjust', $data[ 'memo' ]); + } + + /** + * 获取账户类型的变动方式 + * @param $account_type + * @return array|mixed|string + */ + public function getFromType($account_type) + { + if (!array_key_exists($account_type, MemberAccountTypeDict::getType())) throw new AdminException('MEMBER_TYPE_NOT_EXIST'); + return MemberAccountChangeTypeDict::getType($account_type); + } + + /** + * 获取账户数据和 + * @param string $account_type (注意查询对应账户) + */ + public function getSumAccount(string $account_type) + { + return $this->model->where([ [ 'site_id', '=', $this->site_id ], [ 'account_type', '=', $account_type ] ])->sum('account_data'); + } + + /** + * 会员账户详情 + * @param int $member_id + * @return array + */ + public function getMemberAccountInfo(int $member_id) + { + $field = 'point, point_get, balance, balance_get, growth, growth_get, money, money_get, commission, commission_get'; + return ( new Member() )->where([ [ 'member_id', '=', $member_id ], [ 'site_id', '=', $this->site_id ] ])->field($field)->findOrEmpty()->toArray(); + } + + /** + * 已提现佣金 + * @return float + */ + public function getWithdrawnCommission(int $member_id = 0) + { + $condition = [ + [ 'site_id', '=', $this->site_id ], + [ 'account_type', '=', MemberAccountTypeDict::COMMISSION ], + [ 'from_type', '=', 'cash_out' ] + ]; + if (!empty($member_id)) $condition[] = [ 'member_id', '=', $member_id ]; + + return $this->model->where($condition)->sum('account_data'); + } + + /** + * 账户支出总额 + * @return float + */ + public function getExpensesSumAccount(string $account_type, int $member_id = 0) + { + $condition = [ + [ 'site_id', '=', $this->site_id ], + [ 'account_type', '=', $account_type ], + [ 'account_data', '<', '0' ] + ]; + if (!empty($member_id)) $condition[] = [ 'member_id', '=', $member_id ]; + + return $this->model->where($condition)->sum('account_data'); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/member/MemberCashOutConfigService.php b/niucloud/app/service/admin/member/MemberCashOutConfigService.php new file mode 100644 index 0000000..064758b --- /dev/null +++ b/niucloud/app/service/admin/member/MemberCashOutConfigService.php @@ -0,0 +1,38 @@ +model = new MemberCashOut(); + } + + + public function getConfig(){ + return (new CoreMemberCashOutConfigService())->getMemberCashOutConfig($this->site_id); + } + + public function setConfig(array $data){ + (new CoreMemberCashOutConfigService())->setMemberCashOutConfig($this->site_id, $data); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/member/MemberCashOutService.php b/niucloud/app/service/admin/member/MemberCashOutService.php new file mode 100644 index 0000000..765cc1b --- /dev/null +++ b/niucloud/app/service/admin/member/MemberCashOutService.php @@ -0,0 +1,100 @@ +model = new MemberCashOut(); + } + + /** + * 会员提现列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + + $field = 'id,member_cash_out.site_id,cash_out_no,member_cash_out.member_id,account_type,transfer_type,transfer_realname,transfer_mobile,transfer_bank,transfer_account,transfer_fail_reason,transfer_status,transfer_time,apply_money,rate,service_money,member_cash_out.money,audit_time,member_cash_out.status,remark,member_cash_out.create_time,refuse_reason,transfer_no'; + $member_where = []; + if(!empty($where['keywords'])) + { + $member_where = [['member.member_no|member.nickname|member.mobile', '=', $where['keywords']]]; + } + $search_model = $this->model->where([['member_cash_out.site_id', '=', $this->site_id]])->withSearch(['member_id','status', 'join_create_time' => 'create_time', 'audit_time', 'transfer_time', 'transfer_type', 'cash_out_no'],$where)->with(['transfer'])->withJoin(["member" => function($query){ + $query->field("member.nickname, member.headimg, member.mobile, member.member_id, member.member_no"); + }])->where($member_where)->field($field)->order('create_time desc')->append(['status_name', 'transfer_status_name', 'transfer_type_name', 'account_type_name']); + return $this->pageQuery($search_model); + } + + /** + * 提现详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,cash_out_no,member_id,account_type,transfer_type,transfer_realname,transfer_mobile,transfer_bank,transfer_account,transfer_fail_reason,transfer_status,transfer_time,apply_money,rate,service_money,money,audit_time,status,remark,create_time,refuse_reason,transfer_no'; + return $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->with(['memberInfo', 'transfer'])->field($field)->append(['status_name', 'transfer_status_name', 'transfer_type_name', 'account_type_name'])->findOrEmpty()->toArray(); + } + + /** + * @param int $id + * @param string $action + * @param $data + * @return true|null + */ + public function audit(int $id, string $action, $data){ + $core_member_cash_out_service = new CoreMemberCashOutService(); + return $core_member_cash_out_service->audit($this->site_id, $id, $action, $data); + } + + + /** + * 转账 + * @param int $id + * @param array $data + * @return true + */ + public function transfer(int $id, array $data){ + $core_member_cash_out_service = new CoreMemberCashOutService(); + return $core_member_cash_out_service->transfer($this->site_id, $id, $data); + } + + /** + * 统计数据 + * @return array + */ + public function stat() + { + $stat = []; + //已提现 + $stat['transfered'] = $this->model->where([['status', '=', MemberCashOutDict::TRANSFERED], ['site_id', '=', $this->site_id]])->sum("apply_money"); + //所有金额(包括提现中,已提现) + $all_money = $this->model->where([['status', '>=', 0], ['site_id', '=', $this->site_id]])->sum("apply_money"); + + $stat['cash_outing'] = $all_money - $stat['transfered']; + return $stat; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/member/MemberConfigService.php b/niucloud/app/service/admin/member/MemberConfigService.php new file mode 100644 index 0000000..9b6efbf --- /dev/null +++ b/niucloud/app/service/admin/member/MemberConfigService.php @@ -0,0 +1,74 @@ +getLoginConfig($this->site_id); + } + + /** + * 注册登录设置 + * @param array $data + * @return true + */ + public function setLoginConfig(array $data){ + return (new CoreMemberConfigService())->setLoginConfig($this->site_id, $data); + } + /** + * 获取提现设置 + */ + public function getCashOutConfig(){ + + return (new CoreMemberConfigService())->getCashOutConfig($this->site_id); + } + + /** + * 提现设置 + * @param array $data + * @return true + */ + public function setCashOutConfig(array $data){ + return (new CoreMemberConfigService())->setCashOutConfig($this->site_id, $data); + } + + /** + * 获取会员设置 + */ + public function getMemberConfig(){ + return (new CoreMemberConfigService())->getMemberConfig($this->site_id); + } + + /** + * 会员设置 + * @param array $data + * @return true + */ + public function setMemberConfig(array $data){ + return (new CoreMemberConfigService())->setMemberConfig($this->site_id, $data); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/member/MemberLabelService.php b/niucloud/app/service/admin/member/MemberLabelService.php new file mode 100644 index 0000000..7fe1b56 --- /dev/null +++ b/niucloud/app/service/admin/member/MemberLabelService.php @@ -0,0 +1,123 @@ +model = new MemberLabel(); + } + + /** + * 获取会员标签列表 + * @param array $where + * @param string $order + * @return array + */ + public function getPage(array $where = [], string $order = 'create_time desc') + { + $field = 'label_id, site_id, label_name, memo, sort, create_time, update_time'; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'label_name'], $where)->field($field)->append(["member_num"])->order($order); + return $this->pageQuery($search_model); + } + + /** + * 获取会员标签信息 + * @param int $label_id + * @return array + */ + public function getInfo(int $label_id) + { + $field = 'label_id, site_id, label_name, memo, sort, create_time, update_time'; + + return $this->model->field($field)->where([['label_id', '=', $label_id], ['site_id', '=', $this->site_id]])->findOrEmpty()->toArray(); + } + + /** + * 获取标签 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAll(){ + return (new CoreMemberLabelService())->getAll($this->site_id); + } + + /** + * 添加会员标签 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + (new CoreMemberLabelService())->clearCache($this->site_id); + return $res->label_id; + + } + + /** + * 会员标签编辑 + * @param int $label_id + * @param array $data + * @return true + */ + public function edit(int $label_id, array $data) + { + $data['update_time'] = time(); + $this->model->where([['label_id', '=', $label_id], ['site_id', '=', $this->site_id]])->save($data); + (new CoreMemberLabelService())->clearCache($this->site_id); + return true; + } + + /** + * 删除会员标签 + * @param int $label_id + * @return bool + */ + public function del(int $label_id) + { + $res = $this->model->where([['label_id', '=', $label_id], ['site_id', '=', $this->site_id]])->delete(); + (new CoreMemberLabelService())->clearCache($this->site_id); + return $res; + } + + /** + * 通过标签id获取标签列表 + * @param array $label_ids + * @return Response + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMemberLabelListByLabelIds(array $label_ids){ + return (new CoreMemberLabelService())->getMemberLabelListByLabelIds($this->site_id, $label_ids); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/member/MemberService.php b/niucloud/app/service/admin/member/MemberService.php new file mode 100644 index 0000000..534f068 --- /dev/null +++ b/niucloud/app/service/admin/member/MemberService.php @@ -0,0 +1,218 @@ +model = new Member(); + } + + /** + * 会员列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + + $field = 'member_id, member_no, site_id, username, mobile, password, register_channel, register_type, nickname, headimg, member_level, member_label, wx_openid, weapp_openid, wx_unionid, ali_openid, douyin_openid, login_ip, login_type, login_channel, login_count, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, point_get, balance, balance_get, growth, growth_get, is_member, member_time, is_del, province_id, city_id, district_id, address, location, delete_time, money, money_get, commission, commission_get, commission_cash_outing'; + $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['keyword','register_type', 'create_time', 'is_del', 'member_label', 'register_channel'],$where)->field($field)->order('member_id desc')->append(['register_channel_name', 'register_type_name', 'sex_name', 'login_channel_name', 'login_type_name', 'status_name']); + return $this->pageQuery($search_model, function ($item, $key) { + $item = $this->makeUp($item); + }); + } + + /** + * 查询会员列表 + * @param array $where + * @return array + * @throws DbException + * @throws DataNotFoundException + * @throws ModelNotFoundException + */ + public function getList(array $where = []) + { + $field = 'member_id, nickname, headimg'; + return $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['keyword'],$where)->field($field)->order('member_id desc')->limit($this->getPageParam()['limit'] ?? 0)->select()->toArray(); + } + /** + * 会员详情 + * @param int $member_id + * @return array|null + */ + public function getInfo(int $member_id) + { + $field = 'member_id,member_no, site_id, username, mobile, password, register_channel, register_type, nickname, headimg, member_level, member_label, wx_openid, weapp_openid, wx_unionid, ali_openid, douyin_openid, login_ip, login_type, login_channel, login_count, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, point_get, balance, balance_get, growth, growth_get, is_member, member_time, is_del, province_id, city_id, district_id, address, location, delete_time, money, money_get, commission, commission_get, commission_cash_outing'; + return $this->makeUp($this->model->where([['member_id', '=', $member_id], ['site_id', '=', $this->site_id]])->field($field)->append(['register_channel_name', 'register_type_name', 'sex_name', 'login_channel_name', 'login_type_name', 'status_name'])->findOrEmpty()->toArray()); + } + + /** + * 添加会员 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + + //检测手机是否重复 + if(!empty($data['mobile'])){ + if(!$this->model->where([['site_id', '=', $this->site_id], ['mobile', '=', $data['mobile']]])->findOrEmpty()->isEmpty()) + throw new AdminException('MOBILE_IS_EXIST'); + } + if($data['init_member_no'] != $data['member_no']){ + if(!$this->model->where([['site_id', '=', $this->site_id], ['member_no', '=', $data['member_no']]])->findOrEmpty()->isEmpty()) + throw new AdminException('MEMBER_NO_IS_EXIST'); + }else{ + if(!$this->model->where([['site_id', '=', $this->site_id], ['member_no', '=', $data['member_no']]])->findOrEmpty()->isEmpty()){ + $data['member_no'] = $this->getMemberNo(); + } + } + + $data['username'] = $data['member_no']; + if(!empty($data['username'])){ + if(!$this->model->where([['site_id', '=', $this->site_id], ['username', '=', $data['username']]])->findOrEmpty()->isEmpty()) + throw new AdminException('MEMBER_IS_EXIST'); + } + $data['site_id'] = $this->site_id; + $password_hash = create_password($data['password']); + $data['password'] = $password_hash; + $data['register_type'] = MemberRegisterTypeDict::MANUAL; + $data['register_channel'] = MemberRegisterChannelDict::MANUAL;//todo 公共化渠道 + + $member = $this->model->create($data); + $data['member_id'] = $member->member_id; + event("MemberRegister", $data); + return $member->member_id; + } + + /** + * 更新会员 + * @param int $member_id + * @param array $data + * @return true + */ + public function edit(int $member_id, array $data) + { + $where = array( + ['site_id', '=', $this->site_id], + ['member_id', '=', $member_id], + ); + if(!empty($data['password'])){ + $data['password'] = create_password($data['password']); + } + $this->model->where($where)->update($data); + return true; + } + + /** + * 修改字段 + * @param int $member_id + * @param string $field + * @param $data + */ + public function modify(int $member_id, string $field, $data) + { + return (new CoreMemberService())->modify($this->site_id, $member_id, $field, $data); + } + + /** + * 组合整理数据 + * @param $data + */ + public function makeUp($data){ + //会员标签 + if(!empty($data['member_label'])){ + $data['member_label_array'] = (new MemberLabelService())->getMemberLabelListByLabelIds($data['member_label']); + } + return $data; + } + + /** + * 会员数量 + * @return int + * @throws DbException + */ + public function getCount(array $where = []){ + $where[] = ['site_id', '=', $this->site_id]; + $where[] = ['is_del', '=', 0]; + return $this->model->where($where)->count(); + } + + /** + * 设置状态 + * @param array $member_ids + * @param int $status + * @return true + */ + public function setStatus(array $member_ids, int $status){ + $where = array( + ['site_id', '=', $this->site_id], + ['member_id', 'in', $member_ids], + ); + $data = array( + 'status' => $status + ); + $this->model->where($where)->update($data); + return true; + } + + /** + * 会员数据 + * @param $field + * @return float + */ + public function getSum($field) + { + return $this->model->where([['site_id', '=', $this->site_id] ])->sum($field); + } + + /** + * 创建会员编码 + * @return string|null + */ + public function getMemberNo() + { + return (new CoreMemberService())->createMemberNo($this->site_id); + } + + /** + * 删除会员 + * @param int $member_id + * @return true + */ + public function deleteMember(int $member_id) + { + $this->model->destroy(function($query) use($member_id){ + $query->where([['member_id', '=', $member_id], ['site_id', '=', $this->site_id]]); + }); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/niucloud/NiucloudService.php b/niucloud/app/service/admin/niucloud/NiucloudService.php new file mode 100644 index 0000000..befe10b --- /dev/null +++ b/niucloud/app/service/admin/niucloud/NiucloudService.php @@ -0,0 +1,83 @@ +core_config_service = new CoreConfigService(); + + } + + /** + * 设置 授权信息 + * @param $data + * @return \app\model\sys\SysConfig|bool|\think\Model + */ + public function setAuthorize($data){ + + $data = [ + 'auth_code' => $data['auth_code'], + 'auth_secret' => $data['auth_secret'] + ]; + $service = (new CoreAuthService($data['auth_code'], $data['auth_secret'])); + $auth_info = $service->getAuthInfo()['data'] ?? []; + if (empty($auth_info)) throw new CommonException('AUTH_NOT_EXISTS'); + $service->clearAccessToken(); + return $this->core_config_service->setConfig(0,ConfigKeyDict::NIUCLOUD_CONFIG, $data); + } + + /** + * 获取授权信息 + * @return mixed|string[] + */ + public function getAuthorize(){ + $info = $this->core_config_service->getConfig(0, ConfigKeyDict::NIUCLOUD_CONFIG); + if(empty($info)) + { + $info = []; + $info['value'] = [ + 'auth_code' => '', + 'auth_secret' => '' + ]; + } + return $info['value']; + } + + /** + * 获取框架最新版本 + */ + public function getFrameworkLastVersion() { + return (new CoreModuleService())->getFrameworkLastVersion(); + } + + /** + * 获取框架版本更新记录 + */ + public function getFrameworkVersionList() { + return (new CoreModuleService())->getFrameworkVersionList(); + } +} diff --git a/niucloud/app/service/admin/notice/NoticeLogService.php b/niucloud/app/service/admin/notice/NoticeLogService.php new file mode 100644 index 0000000..75cde20 --- /dev/null +++ b/niucloud/app/service/admin/notice/NoticeLogService.php @@ -0,0 +1,48 @@ +model = new SysNoticeLog(); + } + + /** + * 消息发送记录 + * @param $where + * @return array + */ + public function getPage($where) + { + return (new CoreNoticeLogService())->getPage($this->site_id, $where); + } + + /** + * 获取消息发送记录详情 + * @param string $id + * @return array + */ + public function getInfo(string $id) + { + return (new CoreNoticeLogService())->getInfo($this->site_id, $id); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/notice/NoticeService.php b/niucloud/app/service/admin/notice/NoticeService.php new file mode 100644 index 0000000..aed05bf --- /dev/null +++ b/niucloud/app/service/admin/notice/NoticeService.php @@ -0,0 +1,107 @@ +model = new SysNotice(); + } + + /** + * 获取当前站点消息 + * @return array + */ + public function getList() + { + return (new CoreNoticeService())->getList($this->site_id); + } + + /** + * 获取消息内容 + * @param string $key + * @return array + */ + public function getInfo(string $key) + { + return (new CoreNoticeService())->getInfo($this->site_id, $key); + } + + /** + * 修改消息模板字段(todo 注意 仅限程序内部调用,故不做验证) + * @param string $key + * @param string $field_type + * @param $value + * @return bool + */ + public function modify(string $key, string $field_type, $value){ + $data = array( + $field_type => $value + ); + return (new CoreNoticeService())->edit($this->site_id, $key, $data); + } + + /** + * 修改消息状态 + * @param string $key + * @param string $type + * @param int $status + */ + public function editMessageStatus(string $key, string $type, int $status) + { + if(!array_key_exists($type, NoticeTypeDict::getType())) throw new AdminException('NOTICE_TYPE_NOT_EXIST'); + if(!array_key_exists($key, NoticeDict::getNotice())) return fail('NOTICE_TYPE_NOT_EXIST'); + return (new CoreNoticeService())->edit($this->site_id, $key, ['is_'.$type => $status]); + } + + /** + * 消息编辑 + * @param string $key + * @param string $type + * @param array $data + */ + public function edit(string $key, string $type, array $data) + { + if(!array_key_exists($type, NoticeTypeDict::getType())) throw new AdminException('NOTICE_TYPE_NOT_EXIST'); + if(!array_key_exists($key, NoticeDict::getNotice())) return fail('NOTICE_TYPE_NOT_EXIST'); + $save_data = ['is_'.$type => $data['status']]; + switch ($type) + { + case NoticeTypeDict::SMS: + $save_data['sms_id'] = $data['sms_id'] ?? ''; + break; + case NoticeTypeDict::WECHAT: + $save_data['wechat_first'] = $data['wechat_first'] ?? ''; + $save_data['wechat_remark'] = $data['wechat_remark'] ?? ''; + break; + case NoticeTypeDict::WEAPP: + break; + } + return (new CoreNoticeService())->edit($this->site_id, $key, $save_data); + } + + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/notice/NoticeSmsLogService.php b/niucloud/app/service/admin/notice/NoticeSmsLogService.php new file mode 100644 index 0000000..ca0abac --- /dev/null +++ b/niucloud/app/service/admin/notice/NoticeSmsLogService.php @@ -0,0 +1,47 @@ +model = new SysNoticeLog(); + } + + /** + * 获取当前站点消息 + * @return array + */ + public function getPage($where) + { + return (new CoreNoticeSmsLogService())->getPage($this->site_id, $where); + } + + /** + * 获取消息内容 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + return (new CoreNoticeSmsLogService())->getInfo($this->site_id, $id); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/notice/SmsService.php b/niucloud/app/service/admin/notice/SmsService.php new file mode 100644 index 0000000..ea43b3e --- /dev/null +++ b/niucloud/app/service/admin/notice/SmsService.php @@ -0,0 +1,128 @@ +getConfig($this->site_id, 'SMS'); + if(empty($info)) + { + $config_type = ['default' => ''];//初始化 + }else + $config_type = $info['value']; + + $list = []; + foreach($sms_type_list as $k => $v) + { + $data = []; + $data['sms_type'] = $k; + $data['is_use'] = $k == $config_type['default'] ? 1 : 0; + $data['name'] = $v['name']; + foreach ($v['params'] as $k_param => $v_param) + { + $data['params'][$k_param] = [ + 'name' => $v_param, + 'value' => $config_type[$k][$k_param] ?? '' + ]; + } + $list[] = $data; + } + return $list; + } + + /** + * 获取短信配置 + * @param string $sms_type + * @return array + */ + public function getConfig(string $sms_type) + { + $sms_type_list = SmsDict::getType(); + if(!array_key_exists($sms_type, $sms_type_list)) throw new AdminException('SMS_TYPE_NOT_EXIST'); + $info = (new CoreConfigService())->getConfig($this->site_id, 'SMS'); + if(empty($info)) + { + $config_type = ['default' => ''];//初始化 + }else + $config_type = $info['value']; + + $data = [ + 'sms_type' => $sms_type, + 'is_use' => $sms_type == $config_type['default'] ? 1 : 0, + 'name' => $sms_type_list[$sms_type]['name'], + ]; + foreach ($sms_type_list[$sms_type]['params'] as $k_param => $v_param) + { + $data['params'][$k_param] = [ + 'name' => $v_param, + 'value' => $config_type[$sms_type][$k_param] ?? '' + ]; + } + return $data; + + } + + /** + * 短信配置 + * @param string $sms_type + * @param array $data + * @return bool + */ + public function setConfig(string $sms_type, array $data) + { + $sms_type_list = SmsDict::getType(); + if(!array_key_exists($sms_type, $sms_type_list)) throw new AdminException('SMS_TYPE_NOT_EXIST'); + $info = (new CoreConfigService())->getConfig($this->site_id, 'SMS'); + if(empty($info)) + { + $config['default'] = ''; + + }else{ + $config = $info['value']; + } + //初始化数据 + if($data['is_use']) + { + $config['default'] = $sms_type; + }else{ + $config['default'] = ''; + } + foreach ($sms_type_list[$sms_type]['params'] as $k_param => $v_param) + { + $config[$sms_type][$k_param] = $data[$k_param] ?? ''; + } + + return (new CoreConfigService())->setConfig($this->site_id, 'SMS', $config); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/order/RechargeOrderRefundService.php b/niucloud/app/service/admin/order/RechargeOrderRefundService.php new file mode 100644 index 0000000..54de197 --- /dev/null +++ b/niucloud/app/service/admin/order/RechargeOrderRefundService.php @@ -0,0 +1,123 @@ +model = new RechargeOrderItemRefund(); + } + + public function create($order_id) { + try { + (new CoreRechargeRefundService())->create($this->site_id, $order_id); + return true; + } catch ( Exception $e) { + return $e->getMessage(); + } + } + + /** + * 查询退款列表 + * @param array $where + * @return array + */ + public function getPage(array $where) { + + $field = 'recharge_order_item_refund.refund_id,recharge_order_item_refund.num,recharge_order_item_refund.money,recharge_order_item_refund.refund_no,recharge_order_item_refund.status,recharge_order_item_refund.create_time,recharge_order_item_refund.audit_time,recharge_order_item_refund.transfer_time,recharge_order_item_refund.item_type,recharge_order_item_refund.order_item_id, recharge_order_item_refund.order_id,recharge_order_item_refund.member_id,recharge_order_item_refund.order_no'; + $member_where = []; + if(!empty($where['keywords'])) + { + $member_where[] = ["member.member_id|member.nickname|member.mobile", '=', $where['keywords']]; + } + $search_model = $this->model->where([['recharge_order_item_refund.site_id', '=', $this->site_id]])->with(['item' => function($query) { + $query->with('orderNo')->field('order_id, order_item_id, item_name, item_image'); + }])->withSearch(['join_order_no' => 'order_no', 'join_status' => 'status', 'join_member_id' => 'member_id', 'refund_no' => 'refund_no', 'join_create_time' => 'create_time'],$where)->withJoin(['member' => function($query){ + $query->field("member.nickname, member.headimg, member.mobile, member.member_id"); + } + ])->where($member_where)->field($field)->order('create_time desc')->append(['status_name', 'payrefund.type_name']); + + return $this->pageQuery($search_model); + } + + /** + * 查询退款详情 + * @param int $refund_id + * @return array + */ + public function getDetail(int $refund_id) { + $field = 'refund_id,num,money,refund_no,status,create_time,audit_time,transfer_time,item_type,order_item_id, order_id,member_id'; + return $this->model->where([ ['site_id', '=', $this->site_id], ['refund_id', '=', $refund_id]])->field($field)->with(['item' => function($query) { + $query->field('order_item_id, item_name, item_image'); + }, 'member' => function($query) { + $query->field('member_id, nickname, mobile, headimg'); + }, 'payrefund' => function($query) { + $query->field('refund_no'); + }])->append(['status_name', 'payrefund.type_name'])->findOrEmpty()->toArray(); + } + + /** + * 获取退款状态 + * @return array|array[]|string + */ + public function getStatus(){ + return RechargeOrderDict::getRefundStatus(); + } + + /** + * 退款统计数据(根据状态查询) + */ + public function stat() + { + $status = RechargeOrderDict::getRefundStatus(); + $all = 0; + $have = 0; + foreach ($status as $k => &$v) + { + $money = $this->model->where([['status', '=', $v['status']], ['site_id', '=', $this->site_id]])->sum("money"); + if($money == null) + { + $money = 0; + } + if($k == 1 || $k == 2){ + $have += $money; + } + $v['money'] = number_format($money, 2); + $all += $money; + } + $status['all'] = [ + 'name' => get_lang('dict_refund.all'), + 'key' => 'all', + 'money' => number_format($all, 2) + ]; + $status['have'] = [ + 'name' => get_lang('dict_refund.have'), + 'key' => 'all', + 'money' => number_format($have, 2) + ]; + return $status; + + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/order/RechargeOrderService.php b/niucloud/app/service/admin/order/RechargeOrderService.php new file mode 100644 index 0000000..500afa5 --- /dev/null +++ b/niucloud/app/service/admin/order/RechargeOrderService.php @@ -0,0 +1,124 @@ +model = new RechargeOrder(); + } + + /** + * 充值订单分页列表 + * @param array $where + * @return array + */ + public function getPage(array $where) + { + $field = 'order_id, site_id, order_no, order_from, order_type, out_trade_no, order_status, refund_status, member_id, ip, member_message, order_item_money, order_discount_money, order_money, create_time, pay_time, close_time, is_delete, is_enable_refund, remark, invoice_id, close_reason'; + $order = 'create_time desc'; + $where['order_type'] = 'recharge'; + $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['order_no', 'order_money', 'order_from', 'order_status', 'order_type', 'member_id', 'out_trade_no', 'create_time', 'pay_time'], $where)->field($field)->with(['item' => function($query) { + $query->field('order_item_id, order_id, member_id, item_id, item_type, item_name, item_image, price, num, item_money, is_refund, refund_no, refund_status, create_time'); + }, 'member' => function($query) { + $query->field('member_id, nickname, mobile, headimg'); + }, 'pay' => function($query) { + $query->field(''); + } ])->order($order)->append(['order_from_name' ]); + $list = $this->pageQuery($search_model); + $order_status = RechargeOrderDict::getStatus(); + $refund_status = RechargeOrderDict::getRefundStatus(); + foreach ($list['data'] as $k => $v) + { + $list['data'][$k]['order_status_info'] = $order_status[$v['order_status']] ?? []; + $list['data'][$k]['refund_status_name'] = $refund_status[$v['refund_status']]['name'] ?? ''; + } + return $list; + } + + /** + * 充值订单详情 + * @param int $order_id + * @return array + */ + public function getDetail(int $order_id) + { + $field = 'order_id, site_id, order_no, order_from, order_type, out_trade_no, order_status, refund_status, member_id, ip, member_message, order_item_money, order_discount_money, order_money, create_time, pay_time, close_time, is_delete, is_enable_refund, remark, invoice_id, close_reason'; + $detail = $this->model->where([['order_type', '=', 'recharge'], ['site_id', '=', $this->site_id], ['order_id', '=', $order_id]])->field($field)->with(['item' => function($query) { + $query->field('order_item_id, order_id, member_id, item_id, item_type, item_name, item_image, price, num, item_money, is_refund, refund_no, refund_status, create_time'); + }, 'member' => function($query) { + $query->field('member_id, nickname, mobile, headimg'); + }, 'pay' => function($query) { + $query->field(''); + } ])->append(['order_from_name'])->findOrEmpty()->toArray(); + if(!empty($detail)) + { + $detail['order_status_info'] = RechargeOrderDict::getStatus($detail['order_status']) ?? []; + } + return $detail; + } + + /** + * 充值订单状态 + * @return array|array[]|string + */ + public function getStatus() + { + return RechargeOrderDict::getStatus(); + } + + + /** + * 充值订单 + * @param array $data + * @return int[] + */ + public function stat(array $data = []) + { + $res = [ + 'recharge_money' => 0, + 'recharge_refund_money' => 0 + ]; + $where = [ + ['site_id', '=', $this->site_id], + ['order_type', '=', 'recharge'], + ['order_status', '=', RechargeOrderDict::FINISH], + ]; + if(!empty($data['member_id'])) $where[] = ['member_id', '=', $data['member_id']]; + + $res['recharge_money'] = $this->model->where($where)->sum('order_money'); + + $where = [ + ['site_id', '=', $this->site_id], + ['order_type', '=', 'recharge'], + ['refund_status', '=', RechargeOrderDict::REFUND_COMPLETED], + ]; + if(!empty($data['member_id'])) $where[] = ['member_id', '=', $data['member_id']]; + $res['recharge_refund_money'] = $this->model->where($where)->sum('order_money'); + return $res; + } + + + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/pay/PayChannelService.php b/niucloud/app/service/admin/pay/PayChannelService.php new file mode 100644 index 0000000..1fdff43 --- /dev/null +++ b/niucloud/app/service/admin/pay/PayChannelService.php @@ -0,0 +1,197 @@ +model = new PayChannel(); + $this->core_pay_channel_service = new CorePayChannelService(); + } + + /** + * 添加模板 + * @param string $channel + * @param string $type + * @param array $data + * @return true + */ + public function set(string $channel, string $type, array $data) + { + $where = array( + 'type' => $type, + 'channel' => $channel + ); + if (!array_key_exists($type, PayDict::getPayType())) throw new PayException('PATMENT_METHOD_INVALID'); + if ($channel != 'transfer') { + if (!array_key_exists($channel, ChannelDict::getType())) throw new PayException('CHANNEL_MARK_INVALID'); + } + $pay_channel = $this->core_pay_channel_service->find($this->site_id, $where); + if ($pay_channel->isEmpty()) { + $data['channel'] = $channel; + $data['type'] = $type; + $data['site_id'] = $this->site_id; + $data['config'] = $this->getConfigByPayType($data['config'], $type); + $res = $this->model->create($data); + } else { + $data['config'] = $this->getConfigByPayType($data['config'], $type); + $pay_channel->save($data); + } + return true; + } + + /** + * 用于后端支付渠道 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getChannelList() + { + $channel_list = PayChannelDict::getPayChannel(); + $where = array( + 'site_id' => $this->site_id, + ); + $pay_channel_list_temp = $this->model->where($where)->field('type, channel, config, sort, status')->select()->toArray(); + + $pay_channel_list = []; + foreach ($pay_channel_list_temp as $v) { + $pay_channel_list[$v['channel']][$v['type']] = $v; + } + foreach ($channel_list as $k => $v) { + $temp_item = $pay_channel_list[$k] ?? []; + foreach ($v['pay_type'] as $item_k => $item_v) { + $temp_v_item = $temp_item[$item_k] ?? ['status' => 0, 'config' => [], 'sort' => 0]; + $item_v['config'] = $temp_v_item['config']; + $item_v['status'] = $temp_v_item['status']; + $item_v['sort'] = $temp_v_item['sort']; + $channel_list[$k]['pay_type'][$item_k] = $item_v; + } + $temp_pay_type = array_values($channel_list[$k]['pay_type']); + $sort = array_column($temp_pay_type, 'sort'); + array_multisort($sort, SORT_ASC, $temp_pay_type); + $channel_list[$k]['pay_type'] = $temp_pay_type; + } + return $channel_list; + } + + /** + * 通过渠道获取配置 + * @param string $channel + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getListByChannel(string $channel) + { + $where = array( + 'site_id' => $this->site_id, + 'channel' => $channel + ); + return $this->model->where($where)->field('type, channel, config, sort, status')->select()->toArray(); + } + + /** + * 通过支付方式获取配置格式 + * @param $data + * @param $type + * @return array + */ + public function getConfigByPayType($data, $type) + { + $config = []; + switch ($type) { + case PayDict::WECHATPAY: + $config = [ + 'mch_id' => $data['mch_id'] ?? '',//商户号 + 'mch_secret_key' => $data['mch_secret_key'] ?? '',//商户秘钥 现在默认认为是v3版 + 'mch_secret_cert' => $data['mch_secret_cert'] ?? '',//商户私钥 字符串或路径 + 'mch_public_cert_path' => $data['mch_public_cert_path'] ?? '',//商户公钥证书路径 + ]; + break; + case PayDict::ALIPAY: + $config = [ + 'app_id' => $data['app_id'] ?? '',// 必填-支付宝分配的 app_id + 'app_secret_cert' => $data['app_secret_cert'] ?? '',// 必填-应用私钥 字符串或路径 + 'app_public_cert_path' => $data['app_public_cert_path'] ?? '',//必填-应用公钥证书 路径 + 'alipay_public_cert_path' => $data['alipay_public_cert_path'] ?? '',//必填-支付宝公钥证书 路径 + 'alipay_root_cert_path' => $data['alipay_root_cert_path'] ?? '',// 必填-支付宝根证书 路径 + ]; + break; + case PayDict::OFFLINEPAY: + $config = [ + 'collection_name' => $data['collection_name'] ?? '',// 必填-收款账户名称 + 'collection_bank' => $data['collection_bank'] ?? '',//必填-收款银行 + 'collection_account' => $data['collection_account'] ?? '',//必填-收款账号 + 'collection_desc' => $data['collection_desc'] ?? '',// 必填-转账说明 + ]; + break; + } + return $config; + } + + /** + * 设置打款设置 + * @param $data + * @return true + */ + public function setTransfer($data) + { + $wechatpay_config = $data['wechatpay_config']; + $alipay_config = $data['alipay_config']; + $this->set('transfer', PayDict::WECHATPAY, [ + 'config' => $wechatpay_config, + 'status' => 1, + ]); + $this->set('transfer', PayDict::ALIPAY, [ + 'config' => $alipay_config, + 'status' => 1, + ]); + return true; + } + + public function setAll($data){ + foreach($data as $k => $v){ + $temp_v = $v['pay_type']; + foreach($temp_v as $item_k => $item){ + $this->set($k, $item['key'], [ + 'config' => $item['config'] ?? [], + 'status' => $item['status'] ?? 0, + 'sort' => $item['sort'] ?? 0, + ]); + } + } + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/pay/PayService.php b/niucloud/app/service/admin/pay/PayService.php new file mode 100644 index 0000000..4cdde91 --- /dev/null +++ b/niucloud/app/service/admin/pay/PayService.php @@ -0,0 +1,84 @@ +model = new Pay(); + } + + /** + * 待审核支付记录 + * @param array $where + * @return mixed + */ + public function getAuditPage(array $where){ + $field = 'id, out_trade_no, type, money, body, voucher, create_time, trade_id, trade_type, status'; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ], ['type', '=', PayDict::OFFLINEPAY] ])->withSearch([ 'create_time', 'out_trade_no', 'status' ], $where)->field($field)->append([ 'type_name' ])->order('create_time desc'); + return $this->pageQuery($search_model); + } + + /** + * 获取交易详情 + * @param int $id + * @return void + */ + public function getDetail(int $id){ + $field = 'id,out_trade_no,trade_type,trade_id,trade_no,body,money,voucher,status,create_time,pay_time,cancel_time,type,channel,fail_reason'; + return $this->model->where([ [ 'site_id', '=', $this->site_id ], ['id', '=', $id ] ]) + ->field($field) + ->append([ 'type_name', 'channel_name', 'status_name' ]) + ->findOrEmpty() + ->toArray(); + } + + /** + * 支付审核通过 + * @param string $out_trade_no + * @return null + */ + public function pass(string $out_trade_no) { + return (new CoreOfflineService())->pass($this->site_id, $out_trade_no); + } + + /** + * 支付审核未通过 + * @param string $out_trade_no + * @param string $reason + */ + public function refuse(string $out_trade_no, string $reason) { + return (new CoreOfflineService())->refuse($this->site_id, $out_trade_no, $reason); + } + + /** + * 统计支付数据 + * @param $where + * @return int + * @throws \think\db\exception\DbException + */ + public function payCount($where) + { + return $this->model->where($where)->count(); + } +} diff --git a/niucloud/app/service/admin/pay/RefundService.php b/niucloud/app/service/admin/pay/RefundService.php new file mode 100644 index 0000000..27dc52f --- /dev/null +++ b/niucloud/app/service/admin/pay/RefundService.php @@ -0,0 +1,67 @@ +model = new Refund(); + } + + /** + * 退款账户记录 + * @param array $where + * @return mixed + */ + public function getPage(array $where){ + $field = 'id,refund_no,out_trade_no,type,channel,money,reason,status,create_time,refund_time,close_time,fail_reason,voucher,trade_type,trade_id,refund_type,main_type,main_id'; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'create_time', 'out_trade_no', 'refund_no', 'status' ], $where)->field($field)->append([ 'type_name', 'status_name' ])->order('create_time desc'); + return $this->pageQuery($search_model); + } + + /** + * 获取退款详情 + * @param string $refund_no + * @return array + */ + public function getDetail(string $refund_no){ + $field = 'id,refund_no,out_trade_no,type,channel,money,reason,status,create_time,refund_time,close_time,fail_reason,voucher,trade_type,trade_id,refund_type,main_type,main_id'; + return $this->model->where([ ['refund_no', '=', $refund_no ], [ 'site_id', '=', $this->site_id ] ]) + ->field($field) + ->append([ 'type_name', 'status_name', 'refund_type_name' ]) + ->findOrEmpty() + ->toArray(); + } + + /** + * 支付审核通过 + * @param array $data + * @return bool + */ + public function refund(array $data) { + return (new CoreRefundService())->refund($this->site_id, $data['refund_no'], $data['voucher'], $data['refund_type'], PayDict::USER, $this->uid); + } + +} diff --git a/niucloud/app/service/admin/schedule/ScheduleService.php b/niucloud/app/service/admin/schedule/ScheduleService.php new file mode 100644 index 0000000..de3734f --- /dev/null +++ b/niucloud/app/service/admin/schedule/ScheduleService.php @@ -0,0 +1,105 @@ +getPage($data); + } + + /** + * 获取信息 + * @param int $id + * @return array + */ + public function getInfo(int $id){ + return (new CoreScheduleService())->getInfo($id); + } + /** + * 启用或关闭 + * @param int $id + * @param $status + * @return true + */ + public function modifyStatus(int $id, $status) + { + return (new CoreScheduleService())->modifyStatus($id, $status); + } + + /** + * 添加 + * @param array $data + * @return true + */ + public function add(array $data) + { + $res = (new CoreScheduleService())->add($data); + return true; + + } + + /** + * 编辑 + * @param int $id + * @param array $data + * @return true + */ + public function edit(int $id, array $data) + { + (new CoreScheduleService())->edit($id, $data); + return true; + } + + /** + * 删除 + * @param int $id + * @return true + */ + public function del(int $id) + { + (new CoreScheduleService())->del($id); + return true; + } + + /** + * 计划任务模板 + * @return array|null + */ + public function getTemplateList(){ + return (new CoreScheduleService())->getTemplateList(); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/site/SiteAccountLogService.php b/niucloud/app/service/admin/site/SiteAccountLogService.php new file mode 100644 index 0000000..56c1d38 --- /dev/null +++ b/niucloud/app/service/admin/site/SiteAccountLogService.php @@ -0,0 +1,71 @@ +model = new SiteAccountLog(); + } + + /** + * 获取账单列表 + * @param array $where + * @return array + * @throws DbException + */ + public function getPage(array $where = []) + { + + $field = 'id, site_id, type, money, trade_no, create_time'; + $search_model = $this->model->where([ [ 'site_id', '=', $this->site_id ] ])->withSearch([ 'create_time', 'type', 'trade_no' ], $where)->field($field)->append([ 'type_name', 'pay_info', 'money' ])->order('create_time desc'); + return $this->pageQuery($search_model); + } + + /** + * 获取账单详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, site_id, type, money, trade_no, create_time'; + return $this->model->where([ [ 'site_id', '=', $this->site_id ], ['id', '=', $id]])->field($field)->append([ 'type_name', 'pay_info' ])->findOrEmpty()->toArray(); + + } + + /** + * 统计数据 + * @return array + */ + public function stat() + { + return [ + 'pay' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'pay']])->sum("money")*1, + 'refund' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'refund']])->sum("money")*-1, + 'transfer' => $this->model->where([[ 'site_id', '=', $this->site_id ], ['type', '=', 'transfer']])->sum("money")*-1, + ]; + } + +} diff --git a/niucloud/app/service/admin/site/SiteGroupService.php b/niucloud/app/service/admin/site/SiteGroupService.php new file mode 100644 index 0000000..dc5ab13 --- /dev/null +++ b/niucloud/app/service/admin/site/SiteGroupService.php @@ -0,0 +1,179 @@ +model = new SiteGroup(); + } + + /** + * 站点分组列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'group_id, group_name, group_desc, app, addon, create_time, update_time'; + $search_model = $this->model->withSearch(['keywords'],$where)->field($field)->append(['app_name', 'addon_name'])->order('create_time desc'); + $list = $this->pageQuery($search_model); + return $list; + } + + /** + * 获取所有分组 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAll() + { + $field = 'group_id, group_name, group_desc, create_time, update_time, app'; + return $this->model->field($field)->select()->toArray(); + } + + /** + * 分组详情 + * @param int $group_id + * @return array + */ + public function getInfo(int $group_id) + { + $field = 'group_id, group_name, group_desc, app, addon, create_time, update_time'; + return $this->model->where([['group_id', '=', $group_id]])->field($field)->findOrEmpty()->toArray(); + + } + + /** + * 添加站点分组 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + //判断应用是否全部是有效的已安装应用 + $this->checkAddon(array_merge($data['app'], $data['addon'])); + $res = $this->model->create($data); + return $res->group_id; + } + + /** + * 修改站点分组 + * @param int $group_id + * @param array $data + * @return true + */ + public function edit(int $group_id, array $data){ + //判断应用是否全部是有效的已安装应用 + $this->checkAddon(array_merge($data['app'], $data['addon'])); + $this->model->update($data, [['group_id', '=', $group_id]]); + //删除缓存 + $cache_name = self::$cache_name . $group_id; + Cache::delete($cache_name); + + $site_list = (new Site())->field('site_id')->where([ ['group_id', '=', $group_id] ])->select()->toArray(); + if (!empty($site_list)) { + foreach ($site_list as $site) { + Cache::tag(CoreSiteService::$cache_tag_name . $site['site_id'])->clear(); + } + } + return true; + } + + public function checkAddon($group_roles){ + $install_addon_list = (new CoreAddonService())->getInstallAddonList(); + $install_addon_keys = array_column($install_addon_list, 'key'); + if(count(array_intersect($install_addon_keys, $group_roles)) != count($group_roles)) throw new AdminException('SITE_GROUP_APP_NOT_EXIST'); + return true; + } + /** + * 删除分组 + * @param int $group_id + * @return bool + * @throws DbException + */ + public function del(int $group_id) + { + $count = (new Site())->where([['group_id', '=', $group_id]])->count(); + if($count > 0) + { + throw new CommonException('SITE_GROUP_IS_EXIST'); + } + $res = $this->model->where([['group_id', '=', $group_id]])->delete(); + + $cache_name = self::$cache_name . $group_id; + Cache::delete($cache_name); + return $res; + } + + /** + * 通过站点分组获取站点包含的权限和应用 + * @param $group_id + * @return void + */ + public function getGroupAddon($group_id){ + $cache_name = self::$cache_name . $group_id; + return cache_remember( + $cache_name, + function () use ($group_id) { + $group = $this->model->findOrEmpty($group_id); + $addon = []; + if (!$group->isEmpty()) { + $addon = array_merge([ $group['app'] ], $group['addon']); + } + return $addon; + }, + [MenuService::$cache_tag_name,self::$cache_tag_name] + ); + } + + /** + * 创建所有权限的菜单 + */ + public function addAllMenuGroup() + { +// $menus = (new SysMenu())->where([['app_type', '=', 'site']])->column("menu_key"); + $data = [ + 'group_name' => "默认套餐", + 'group_desc' => '', + 'app' => '', + 'addon' => [] + ]; + return $this->add($data); + } +} diff --git a/niucloud/app/service/admin/site/SiteService.php b/niucloud/app/service/admin/site/SiteService.php new file mode 100644 index 0000000..e38a41b --- /dev/null +++ b/niucloud/app/service/admin/site/SiteService.php @@ -0,0 +1,318 @@ +model = new Site(); + } + + /** + * 获取站点列表 + * @param array $where + * @return array + * @throws DbException + */ + public function getPage(array $where = []) + { + + $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, app, addons'; + $condition = [ + [ 'app_type', '<>', 'admin' ] + ]; + $search_model = $this->model->where($condition)->withSearch([ 'create_time', 'expire_time', 'keywords', 'status', 'group_id', 'app' ], $where)->with(['groupName'])->field($field)->append([ 'status_name' ])->order('create_time desc'); + return $this->pageQuery($search_model, function ($item){ + $item['admin'] = (new SysUserRole())->where([ ['site_id', '=', $item['site_id'] ], ['is_admin', '=', 1] ]) + ->field('uid') + ->with(['userinfo']) + ->find()->toArray(); + }); + } + + /** + * 站点信息 + * @param int $site_id + * @return array + */ + public function getInfo(int $site_id) + { + $field = 'site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, + district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, app, addons'; + $info = $this->model->where([ [ 'site_id', '=', $site_id ] ])->with([ 'groupName' ])->field($field)->append([ 'status_name' ])->findOrEmpty()->toArray(); + if (!empty($info)) { + $site_addons = (new CoreSiteService())->getAddonKeysBySiteId($site_id); + $info['site_addons'] = (new Addon())->where([ ['key', 'in', $site_addons]])->field('key,title,desc,icon,type')->select()->toArray(); + } + return $info; + } + + /** + * 添加站点(平台端添加站点,同时添加用户以及密码) + * @param array $data + * ['site_name' => '', 'username' => '', 'head_img' => '', 'real_name' => '', 'password' => ''] + * @return mixed + * @throws DbException + */ + public function add(array $data) + { + $user_service = new UserService(); + if ($user_service->checkUsername($data[ 'username' ])) throw new AdminException('USERNAME_REPEAT'); + + $site_group = (new SiteGroup())->where([ ['group_id', '=', $data[ 'group_id' ] ] ])->field('app,addon')->findOrEmpty(); + + $data[ 'app_type' ] = 'site'; + //添加站点 + $data_site = [ + 'site_name' => $data[ 'site_name' ], + 'app_type' => $data[ 'app_type' ], + 'group_id' => $data[ 'group_id' ], + 'create_time' => time(), + 'expire_time' => $data[ 'expire_time' ], + 'app' => $site_group['app'], + 'addons' => '' + ]; + Db::startTrans(); + try { + $site = $this->model->create($data_site); + $site_id = $site->site_id; + + if ($data['uid']) { + (new UserRoleService())->add($data['uid'], ['role_ids' => '', 'is_admin' => 1], $site_id); + } else { + //添加用户 + $data_user = [ + 'username' => $data[ 'username' ], + 'head_img' => $data[ 'head_img' ] ?? '', + 'status' => $data[ 'status' ] ?? 1, + 'real_name' => $data[ 'real_name' ] ?? '', + 'password' => $data[ 'password' ], + 'role_ids' => '', + 'is_admin' => 1 + ]; + $data['uid'] = ( new UserService() )->addSiteUser($data_user, $site_id); + } + + //添加站点成功事件 + event("AddSiteAfter", [ 'site_id' => $site_id, 'main_app' => $site_group['app'], 'site_addons' => $site_group['addon'] ]); + + Cache::delete('user_role_list_' . $data['uid']); + + Db::commit(); + return $site_id; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage().$e->getFile().$e->getLine()); + } + } + + /** + * 修改站点 + * @param int $site_id + * @param array $data + * @return bool + */ + public function edit(int $site_id, array $data) + { + //获取套餐类型 + if (isset($data[ 'group_id' ])) { + $site_group = (new SiteGroup())->where([ ['group_id', '=', $data[ 'group_id' ] ] ])->field('app,addon')->findOrEmpty(); + $data['app'] = $site_group['app']; + } + $this->model->update($data, [ [ 'site_id', '=', $site_id ] ]); + Cache::tag(self::$cache_tag_name . $site_id)->clear(); + return true; + } + + /** + * 删除站点 + * @param int $site_id + */ + public function del(int $site_id) { + Db::startTrans(); + try { + $site = $this->model->where([ [ 'site_id', '=', $site_id ] ])->findOrEmpty()->toArray(); + + // 删除站点相关数据 + $sys_models = (new GenerateService())->getModels(['addon' => 'system']); + $addon_models = []; + $addons = (new CoreSiteService())->getAddonKeysBySiteId($site_id); + foreach($addons as $addon) { + $addon_models[] = (new GenerateService())->getModels(['addon' => $addon ]); + } + $models = array_merge($sys_models, ...$addon_models); + + foreach ($models as $model) { + $name = "\\$model"; + $class = new $name(); + + if (in_array('site_id', $class->getTableFields())) { + $class->where([ ['site_id', '=', $site['site_id'] ] ])->delete(); + } + } + + Cache::tag(self::$cache_tag_name . $site_id)->clear(); + Db::commit(); + return true; + } catch (\Exception $e) { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + } + + /** + * 站点数量 + * @return int + * @throws DbException + */ + public function getCount(array $where = []) + { + return $this->model->where($where)->withSearch([ 'create_time', 'group_id' ], $where)->count(); + } + + + /** + * 获取授权当前站点信息(用做缓存) + * @return mixed + */ + public function getSiteCache(int $site_id) + { + return (new CoreSiteService())->getSiteCache($site_id); + } + + + /** + * 通过站点id获取菜单列表 + * @param int $site_id + * @param $is_tree + * @param $status + * @param $addon 所以应用名一般不建议叫all + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMenuList(int $site_id, $is_tree, $status, $addon = 'all', int $is_button = 1) + { + $site_info = $this->getSiteCache($site_id); + if (empty($site_info)) + return []; + $app_type = $site_info[ 'app_type' ]; + if ($app_type == AppTypeDict::ADMIN) { + return ( new MenuService() )->getAllMenuList($app_type, $status, $is_tree, $is_button); + } else { + $addons = ( new AddonService() )->getAddonKeysBySiteId($site_id); + $addons[] = ''; + if($addon != 'all'){ + $addons = [$addon]; + } + return ( new MenuService() )->getMenuListBySystem($this->app_type, $addons, $is_tree, $is_button); + } + + + } + + /** + * 通过站点id获取站点菜单极限 + * @param int $site_id + * @param $status + * @return array|mixed|string|null + */ + public function getMenuIdsBySiteId(int $site_id, $status) + { + $site_info = $this->getSiteCache($site_id); + if (empty($site_info)) + return []; + $app_type = $site_info[ 'app_type' ]; + if ($app_type == AppTypeDict::ADMIN) { + return ( new MenuService() )->getAllMenuIdsByAppType($app_type, $status); + } else { + + $addons = ( new AddonService() )->getAddonKeysBySiteId($site_id); + return ( new MenuService() )->getMenuKeysBySystem($app_type, $addons); + + } + } + + /** + * 通过站点id获取菜单列表 + * @param int $site_id + * @param $status + * @return mixed + */ + public function getApiList(int $site_id, $status) + { + $site_info = $this->getSiteCache($site_id); + if (empty($site_info)) + return []; + $app_type = $site_info[ 'app_type' ]; + if ($app_type == AppTypeDict::ADMIN) { + return ( new MenuService() )->getAllApiList($app_type, $status); + } else { + $addons = ( new AddonService() )->getAddonKeysBySiteId($site_id); + return ( new MenuService() )->getApiListBySystem($app_type, $addons); + } + } + + /** + * 站点过期时间 + * @param int $site_id + * @return array + */ + public function getExpireTime(int $site_id) + { + $field = 'expire_time'; + return $this->model->where([ [ 'site_id', '=', $site_id ] ])->field($field)->findOrEmpty()->toArray(); + + } + + /** + * 获取站点的插件 + * @return array + */ + public function getSiteAddons(array $where) { + $site_addon = (new CoreSiteService())->getAddonKeysBySiteId($this->site_id); + return (new Addon())->where([['type', '=', AddonDict::ADDON], ['status', '=', AddonDict::ON], ['key', 'in', $site_addon ]])->withSearch(['title'], $where)->append(['status_name'])->field('title, icon, key, desc, status, type, support_app')->select()->toArray(); + } +} diff --git a/niucloud/app/service/admin/site/SiteUserService.php b/niucloud/app/service/admin/site/SiteUserService.php new file mode 100644 index 0000000..c84a502 --- /dev/null +++ b/niucloud/app/service/admin/site/SiteUserService.php @@ -0,0 +1,166 @@ +model = new SysUser(); + } + + /** + * 管理端获取用户列表(对应站点用户列表) + * @param array $where + * @return array + */ + public function getPage(array $where) + { + $site_id = $this->site_id; + $field = 'id,SysUserRole.uid,site_id,role_ids,SysUserRole.create_time,is_admin,SysUserRole.status,count(site_id) as site_num'; + $order = 'SysUserRole.create_time desc'; + $search_model = (new SysUserRole()) + ->field($field) + ->order($order) + ->with('userinfo') + ->hasWhere('userinfo', function ($query) use ($where, $site_id) { + $condition = [ + ['SysUserRole.site_id', '>', 0 ] + ]; + if (!empty($where['username'])) $condition[] = ['username', 'like', "%{$where['username']}%"]; + if (!empty($where['realname'])) $condition[] = ['realname', 'like', "%{$where['realname']}%"]; + + //最后登录时间 + if (!empty($where['last_time'])) { + $start_time = empty($where['last_time'][0]) ? 0 : strtotime($where['last_time'][0]); + $end_time = empty($where['last_time'][1]) ? 0 : strtotime($where['last_time'][1]); + if ($start_time > 0 && $end_time > 0) { + $condition[] = ['last_time', 'between', [$start_time, $end_time]]; + } else if ($start_time > 0 && $end_time == 0) { + $condition[] = ['last_time', '>=', $start_time]; + } else if ($start_time == 0 && $end_time > 0) { + $condition[] = ['last_time', '<=', $end_time]; + } + } + $query->where($condition); + }) + ->group('SysUserRole.uid') + ->append(['status_name']); + + return $this->pageQuery($search_model); + } + + /** + * 用户详情(站点用户详情) + * @param int $uid + * @return array + */ + public function getInfo(int $uid) + { + $field = 'uid, username, head_img, real_name, last_ip, last_time, create_time, login_count, delete_time, update_time'; + $info = $this->model->where([ ['uid', '=', $uid] ])->field($field)->with(['roles' => function($query) { + $query->field('uid, site_id, is_admin')->with('siteInfo'); + }])->findOrEmpty()->toArray(); + if (!empty($info)) { + $info['roles'] = array_values(array_filter(array_map(function ($item) { + if ($item['site_id']) return $item; + }, $info['roles']))); + } + return $info; + } + + /** + * 添加当前站点用户 + * @param array $data + * @return bool + */ + public function add(array $data) + { + return (new UserService())->addSiteUser($data, $this->site_id); + } + + /** + * 编辑站点用户 + * @param int $uid + * @param array $data + * @return true + */ + public function edit(int $uid, array $data) + { + return (new UserService())->editSiteUser($uid, $data, $this->site_id); + } + + /** + * 修改字段 + * @param int $uid + * @param string $field + * @param $data + * @return bool|true + */ + public function modify(int $uid, string $field, $data) + { + $field_name = match ($field) { + 'password' => 'password', + 'real_name' => 'real_name', + 'head_img' => 'head_img', + }; + return (new UserService())->edit($uid, [$field_name => $data]); + } + + /** + * 删除 + * @param int $uid + * @return true + */ + public function del(int $uid) + { + $where = [ + ['uid', '=', $uid], + ['site_id', '=', $this->site_id] + ]; + SysUserRole::where($where)->delete(); + return true; + } + + /** + * 锁定 + * @param int $uid + * @return bool|true + */ + public function lock(int $uid){ + return (new UserService())->statusChange($uid, UserDict::OFF); + } + + /** + * 解锁 + * @param int $uid + * @return bool|true + */ + public function unlock(int $uid){ + return (new UserService())->statusChange($uid, UserDict::ON); + } +} diff --git a/niucloud/app/service/admin/site/UserLogService.php b/niucloud/app/service/admin/site/UserLogService.php new file mode 100644 index 0000000..2163c95 --- /dev/null +++ b/niucloud/app/service/admin/site/UserLogService.php @@ -0,0 +1,71 @@ +model = new SysUserLog(); + } + + /** + * 获取用户日志 + * @param array $where + * @return array + */ + public function getPage(array $where) + { + $field = 'id, ip, site_id, uid, username, url, params, type, create_time'; + $order = 'create_time desc'; + $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['username', 'create_time', 'uid', 'ip', 'type', 'url'], $where)->field($field)->order($order); + return $this->pageQuery($search_model); + } + + /** + * 日志详情 + * @param int $id + * @return array + */ + public function getInfo(int $id){ + $where = array( + ['id', '=', $id], + ['site_id', '=', $this->site_id] + ); + $field = 'id, ip, site_id, uid, username, url, params, type, create_time'; + return $this->model->where($where)->field($field)->findOrEmpty()->toArray(); + } + + /** + * 添加用户(添加用户,不添加站点) + * @param array $data + * @return bool + * @throws Exception + */ + public function add(array $data){ + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/stat/SiteStatService.php b/niucloud/app/service/admin/stat/SiteStatService.php new file mode 100644 index 0000000..2cd7225 --- /dev/null +++ b/niucloud/app/service/admin/stat/SiteStatService.php @@ -0,0 +1,89 @@ + '', + + ]; + $data['site_info'] = (new SiteService())->getInfo($this->site_id); + $site_create_time = strtotime($data['site_info']['create_time']); + $site_expire_time = strtotime($data['site_info']['expire_time']); + $data['site_info']['mix'] = (number_format((time() - $site_create_time) / ($site_expire_time - $site_create_time), 2) * 100).'%'; + $data['site_info']['over_date'] = $site_expire_time - time() > 0 ? number_format(($site_expire_time - time())/ 86400, 2) : 0; + + return $data; + } + + /** + * 订单金额 + * @param $start_time + * @param $end_time + * @return float + */ + public function orderMoney($start_time, $end_time) + { + $where[] = [ + ['site_id', '=', $this->site_id], + ['order_status', '>', 0], + ['create_time', 'between', [$start_time, $end_time]] + ]; + return (new RechargeOrder())->where($where)->sum('order_money'); + } + + /** + * 订单数量 + * @param $start_time + * @param $end_time + * @return int + * @throws DbException + */ + public function orderCount($start_time, $end_time) + { + $where[] = [ + ['site_id', '=', $this->site_id], + ['order_status', '>', 0], + ['create_time', 'between', [$start_time, $end_time]] + ]; + return (new RechargeOrder())->where($where)->count('order_id'); + } + + + + + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/stat/StatService.php b/niucloud/app/service/admin/stat/StatService.php new file mode 100644 index 0000000..2316b59 --- /dev/null +++ b/niucloud/app/service/admin/stat/StatService.php @@ -0,0 +1,131 @@ + [ + 'member_count' => 1, + 'site_count' => 2, + 'visit_count' => 675, + 'total_member_count' => 0, + 'total_site_count' => 0, + 'total_visit_count' => 6840, + ], + 'system' => [], + 'version' => [], +// 'visit_stat' => [ +// 'date' => [], +// 'value' => [980, 1323, 882, 762, 865, 923, 1105] +// ], + 'site_stat' => [ + 'date' => [], + 'value' => [] + ], + 'member_stat' => [ + 'type' => ['男', '女', '未知'], + 'value' => [] + ], + 'site_group_stat' => [ + 'type' => [], + 'value' => [] + ], + 'about' => [ + [ + 'name' => 'Niucloud官方公众号', + 'image' => 'static/resource/icon/index_icon/wx_qrcode.jpg', + 'desc' => '微信扫码关注' + ], + [ + 'name' => '添加企业微信群', + 'image' => 'static/resource/icon/index_icon/wework_qrcode.png', + 'desc' => '更多内容请扫码加入' + ] + ] + ]; + + $day_start_time = strtotime(date('Y-m-d')); + //当天结束之间 + $day_end_time = $day_start_time + 86400; + $data['today_data']['total_member_count'] = (new CoreMemberService())->getCount(); + $data['today_data']['today_member_count'] = (new CoreMemberService())->getCount(['create_time' => get_start_and_end_time_by_day()]); + $data['today_data']['total_site_count'] = (new SiteService())->getCount(); + $data['today_data']['today_site_count'] = (new SiteService())->getCount(['create_time' => [$day_start_time, $day_end_time]]); + $data['today_data']['norma_site_count'] = (new SiteService())->getCount(['status' => [1],'app_type' => ['site']]); + $data['today_data']['expire_site_count'] = (new SiteService())->getCount(['status' => [2]]); + + $data['system'] = (new SystemService())->getInfo(); + $data['version'] = $data['system']['version'] ?? []; + $time = time(); + for ($i = 1; $i <= 7; $i++){ + $item_day = date('Y-m-d', strtotime('+' . $i - 7 . ' days', $time)); + $data['site_stat']['date'][] = $item_day; + $data['site_stat']['value'][] = (new Site())->where([['create_time','between',get_start_and_end_time_by_day($item_day)]])->count(); + } + $man_count = (new CoreMemberService())->getCount(['sex' => '1']); + $woman_count = (new CoreMemberService())->getCount(['sex' => '2']); + $data['member_stat']['value'] = [$man_count, $woman_count, (int)($data['today_data']['total_member_count'] - $man_count - $woman_count)]; + + $site_group_list = (new SiteGroupService())->getAll([]); + + if(!empty($site_group_list)){ + foreach($site_group_list as $v){ + $data['site_group_stat']['type'][] = $v['group_name']; + $data['site_group_stat']['value'][] = (new SiteService())->getCount(['group_id' => $v['group_id']]); + } + } + $app_count = (new CoreAddonService())->getLocalAddonCount(); + $app_installed_count = (new CoreAddonService())->getCount(); + $app = [ + 'app_count' => $app_count, + 'app_no_installed_count' => $app_count-$app_installed_count, + 'app_installed_count' => $app_installed_count, + ]; + $data['app'] = $app; + return $data; + } + + +} diff --git a/niucloud/app/service/admin/sys/AgreementService.php b/niucloud/app/service/admin/sys/AgreementService.php new file mode 100644 index 0000000..8442a5e --- /dev/null +++ b/niucloud/app/service/admin/sys/AgreementService.php @@ -0,0 +1,63 @@ + $v) + { + $list[$k] = $this->getAgreement($k); + $list[$k]['type_name'] = $v; + } + return $list; + } + /** + * 获取协议内容 + * @param string $key + * @return array + */ + public function getAgreement(string $key) + { + return (new CoreAgreementService())->getAgreement($this->site_id, $key); + } + + /** + * 设置协议 + * @param string $key + * @param string $title + * @param string $content + * @return bool + */ + public function setAgreement(string $key, string $title, string $content) + { + return (new CoreAgreementService())->setAgreement($this->site_id, $key, $title, $content); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/AppService.php b/niucloud/app/service/admin/sys/AppService.php new file mode 100644 index 0000000..81b89b2 --- /dev/null +++ b/niucloud/app/service/admin/sys/AppService.php @@ -0,0 +1,73 @@ + $category) + { + $category_list[$k_category]['sort'] = $category['sort'] ?? 100; + $category_list[$k_category]['app_list'] = []; + foreach ($list as $app) + { + $app_category = $app['category'] ?? "basic"; + + if($app_category == $category['key']) + { + $category_list[$k_category]['app_list'][] = $app; + } + + } + } + + $sort = array_column($category_list, 'sort'); + array_multisort($category_list, $sort); + + return $category_list; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/AreaService.php b/niucloud/app/service/admin/sys/AreaService.php new file mode 100644 index 0000000..6ea60b5 --- /dev/null +++ b/niucloud/app/service/admin/sys/AreaService.php @@ -0,0 +1,169 @@ +model = new SysArea(); + } + + /** + * 获取地区信息 + * @param int $pid //上级pid + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getListByPid(int $pid = 0) + { + + $cache_name = self::$cache_tag_name.'_pid_'.$pid; + return cache_remember( + $cache_name, + function() use($pid) { + return $this->model->where([['pid', '=', $pid]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); + }, + [self::$cache_tag_name] + ); + } + + /** + * 查询地区树列表 + * @param int $level //层级1,2,3 + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAreaTree(int $level = 3) + { + $cache_name = self::$cache_tag_name.'_tree_'.$level; + return cache_remember( + $cache_name, + function() use($level) { + $list = $this->model->where([['level', '<=', $level]])->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); + return list_to_tree($list); + }, + [self::$cache_tag_name] + ); + } + + public function getAreaByAreaCode($id) { + $cache_name = self::$cache_tag_name.'_area_'. $id; + return cache_remember( + $cache_name, + function() use($id) { + $level = [1 => 'province', 2 => 'city', 3 => 'district']; + $tree = []; + $area = $this->model->where([ ['id', '=', $id] ])->field('id,level,pid,name')->findOrEmpty(); + + if (!$area->isEmpty()) { + $tree[ $level[ $area['level'] ] ] = $area->toArray(); + + while ($area['level'] > 1) { + $area = $this->model->where([ ['id', '=', $area['pid'] ] ])->field('id,level,pid,name')->findOrEmpty(); + $tree[ $level[ $area['level'] ] ] = $area->toArray(); + } + } + return $tree; + }, + [self::$cache_tag_name] + ); + } + + /** + * @param string $address + * @return int|mixed + * 地址解析 + */ + public function getAddress(string $address){ + $map = (new ConfigService())->getMap(); + $url = "https://apis.map.qq.com/ws/geocoder/v1/?address=".$address."&key=".$map['key']; + $curl = curl_init(); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_URL, $url); + curl_setopt($curl, CURLOPT_TIMEOUT, 1); + curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); + + $res = curl_exec($curl); + $res = json_decode($res, true); + if($res){ + curl_close($curl); + return $res; + }else { + $error = curl_errno($curl); + curl_close($curl); + return $error; + } + } + + /** + * @param string $location + * @return int|mixed + * 逆地址解析 + */ + public function getAddressInfo(string $location){ + $map = (new ConfigService())->getMap(); + $url = "https://apis.map.qq.com/ws/geocoder/v1/?location=".$location."&key=".$map['key']; + $curl = curl_init(); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); + curl_setopt($curl, CURLOPT_HEADER, 0); + curl_setopt($curl, CURLOPT_URL, $url); + curl_setopt($curl, CURLOPT_TIMEOUT, 1); + curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); + + $res = curl_exec($curl); + $res = json_decode($res, true); + if($res){ + curl_close($curl); + return $res; + }else { + $error = curl_errno($curl); + curl_close($curl); + return $error; + } + } + + public function getAreaId($name, $level){ + $field = 'id'; + $info = $this->model->field($field)->where([['name', 'like', '%' . $name . '%' ], ['level', '=', $level]])->findOrEmpty()->toArray(); + return $info['id']; + } + + /** + * 获取地址名称 + */ + public function getAreaName($id){ + $info = $this->model->field("name")->where([['id', '=', $id ]])->findOrEmpty()->toArray(); + return $info['name']; + } + +} diff --git a/niucloud/app/service/admin/sys/AttachmentService.php b/niucloud/app/service/admin/sys/AttachmentService.php new file mode 100644 index 0000000..ac71b7b --- /dev/null +++ b/niucloud/app/service/admin/sys/AttachmentService.php @@ -0,0 +1,325 @@ +model = new SysAttachment(); + $this->core_attachment_service = new CoreAttachmentService(); + } + + /** + * 新增素材 + * @param array $data + */ + public function add(array $data) + { + $data[ 'site_id' ] = $this->site_id; + return $this->core_attachment_service->add($data); + } + + /** + * + * /** + * 编辑素材 + * @param int $att_id + * @param array $data + * @return SysAttachment + */ + public function edit(int $att_id, array $data) + { + return $this->core_attachment_service->edit($this->site_id, $att_id, $data); + } + + /** + * 修改附件分组 + * @param $att_id + * @param $cate_id + * @return bool + */ + public function modifyCategory($att_id, $cate_id) + { + $where = array ( + [ 'att_id', '=', $att_id ], + [ 'site_id', '=', $this->site_id ], + ); + $this->model->where($where)->update([ 'cate_id' => $cate_id, 'update_time' => time() ]); + return true; + } + + /** + * 批量更新附件分组 + * @param $att_ids + * @param $cate_id + * @return bool + */ + public function batchModifyCategory($att_ids, $cate_id) + { + + $where = array ( + [ 'att_id', 'in', is_string($att_ids) ? explode($att_ids) : $att_ids ], + [ 'site_id', '=', $this->site_id ], + ); + $this->model->where($where)->update([ 'cate_id' => $cate_id, 'update_time' => time() ]); + return true; + } + + /** + * 删除素材 + * @param int $att_id + * @return mixed + */ + public function del(int $att_id) + { + return $this->core_attachment_service->del($this->site_id, $att_id); + } + + /** + * 批量删除 + * @param $data + * @return true|null + */ + public function delAll($data) + { + return $this->core_attachment_service->delAll($this->site_id, $data); + } + + /** + * 管理端获取附件列表 + * @param array $data + * @return array + */ + public function getPage(array $data) + { + $where = array ( + [ 'site_id', '=', $this->site_id ] + ); + if (!empty($data[ 'att_type' ])) { + $where[] = [ 'att_type', '=', $data[ 'att_type' ] ]; + } + if (!empty($data[ 'cate_id' ])) { + $where[] = [ 'cate_id', '=', $data[ 'cate_id' ] ]; + } + if (!empty($data[ 'real_name' ])) { + $where[] = [ 'real_name', 'like', '%' . $data[ 'real_name' ] . '%' ]; + } + return $this->getPageList($this->model, $where, 'att_id,path,real_name,att_type,url', 'att_id desc', each:function($item, $key) + { + $item[ 'thumb' ] = get_thumb_images($this->site_id, $item[ 'url' ], FileDict::SMALL); + }); + } + + /** + * 新增素材组 + * @param array $data + * @return mixed + */ + public function addCategory(array $data) + { + $data[ 'site_id' ] = $this->site_id; + $category_model = new SysAttachmentCategory(); + $attachment = $category_model->create($data); + if (!$attachment->id) + throw new AdminException('ADD_FAIL');//创建失败 + return $attachment->att_id; + } + + /** + * 素材组模型对象 + * @param int $site_id + * @param int $id + * @return mixed + */ + public function findCategory(int $site_id, int $id) + { + $where = array ( + [ 'site_id', '=', $site_id ], + [ 'id', '=', $id ] + ); + $category_model = new SysAttachmentCategory(); + $category = $category_model->where($where)->findOrEmpty(); + if ($category->isEmpty()) + throw new AdminException('ATTACHMENT_GROUP_NOT_EXIST'); + return $category; + } + + /** + * 编辑素材组 + * @param int $id + * @param array $data + * @return SysAttachmentCategory + */ + public function editCategory(int $id, array $data) + { + $where = array ( + [ 'site_id', '=', $this->site_id ], + [ 'id', '=', $id ] + ); + $category_model = new SysAttachmentCategory(); + return $category_model->where($where)->update($data); + } + + /** + * 删除素材组 + * @param int $id + * @return mixed + * @throws DbException + */ + public function delCategory(int $id) + { + //查询是否有下级菜单或按钮 + $category = $this->findCategory($this->site_id, $id); + if ($this->model->where([ [ 'cate_id', '=', $id ] ])->count() > 0) + throw new AdminException('ATTACHMENT_GROUP_HAS_IMAGE'); + + //下级存在图片不能删除 + return $category->delete(); + + } + + /** + * 管理端获取附件组列表 + * @param array $data + * @return array + * @throws DbException + */ + public function getCategoryPage(array $data) + { + $where = array ( + [ 'site_id', '=', $this->site_id ] + ); + if (!empty($data[ 'type' ])) { + $where[] = [ 'type', '=', $data[ 'type' ] ]; + } + if (!empty($data[ 'name' ])) { + $where[] = [ 'name', 'like', '%' . $data[ 'name' ] . '%' ]; + } + return $this->getPageList(( new SysAttachmentCategory() ), $where, 'id,name', 'id desc'); + } + + /** + * 获取分组列表 + * @param array $data + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getCategoryList(array $data) + { + $where = array ( + [ 'site_id', '=', $this->site_id ] + ); + if (!empty($data[ 'type' ])) { + $where[] = [ 'type', '=', $data[ 'type' ] ]; + } + if (!empty($data[ 'name' ])) { + $where[] = [ 'name', 'like', '%' . $data[ 'name' ] . '%' ]; + } + return SysAttachmentCategory::where($where)->field('id,name,type')->order('id desc')->select()->toArray(); + } + + /** + * 获取图标库分类列表 + * @param array $data + * @return array|null + */ + public function getIconCategoryList(array $data) + { + $icon_list = IconDict::getIcon(); + foreach ($icon_list as $k => $v) { + unset($icon_list[ $k ][ 'glyphs' ]); + if (!empty($data[ 'name' ]) && !str_contains($v['name'], $data['name'])) { + unset($icon_list[ $k ]); + } + } + return array_values($icon_list); + } + + /** + * 获取图标库列表 + * @param array $data + * @return array|null + */ + public function getIconList(array $data) + { + $icon_list = IconDict::getIcon(); + + $res = [ + 'current_page' => intval($data[ 'page' ]), + 'per_page' => intval($data[ 'limit' ]), + 'data' => [], + 'total' => 0 + ]; + + $temp_data = []; + + foreach ($icon_list as $v) { + + $icon = $v[ 'glyphs' ]; // 图标列表 + + foreach ($icon as $ck => $cv) { + // 素材表中数据保持要一致 + $icon[ $ck ][ 'att_id' ] = $cv[ 'icon_id' ]; + $icon[ $ck ][ 'url' ] = $v[ 'font_family' ] . '-' . $v[ 'css_prefix_text' ] . $cv[ 'font_class' ]; + $icon[ $ck ][ 'real_name' ] = $cv[ 'name' ]; + + // 查询名称 + if (!empty($data[ 'real_name' ]) && !str_contains($cv['name'], $data['real_name'])) { + unset($icon[ $ck ]); + } + } + + $icon = array_values($icon); + + if (!empty($data[ 'cate_id' ]) && $data[ 'cate_id' ] == $v[ 'id' ]) { + // 查询指定分类下的图标 + $temp_data = $icon; + break; + } else { + // 查询全部图标 + $temp_data = array_merge($temp_data, $icon); + } + } + + // 手动分页 + $res[ 'total' ] = count($temp_data); // 总数量 + $start = ( $res[ 'current_page' ] - 1 ) * $res[ 'per_page' ]; // 数组下标从0 开始 + $icon_list = array_slice($temp_data, $start, $res[ 'per_page' ]); + + $res[ 'data' ] = $icon_list; + + return $res; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/ConfigService.php b/niucloud/app/service/admin/sys/ConfigService.php new file mode 100644 index 0000000..662ca26 --- /dev/null +++ b/niucloud/app/service/admin/sys/ConfigService.php @@ -0,0 +1,390 @@ +core_config_service = new CoreConfigService(); + } + + /** + * 获取版权信息(网站整体,不按照站点设置) + * @return array|mixed + */ + public function getCopyright() + { + return (new CoreSysConfigService())->getCopyright($this->site_id); + } + + /** + * 设置版权信息(整体设置,不按照站点) + * @param array $value + * @return bool + */ + public function setCopyright(array $value) + { + $data = [ + 'icp' => $value['icp'], + 'gov_record' => $value['gov_record'], + 'gov_url' => $value['gov_url'], + 'market_supervision_url' => $value['market_supervision_url'], + 'logo' => $value['logo'], + 'company_name' => $value['company_name'], + 'copyright_link' => $value['copyright_link'], + 'copyright_desc' => $value['copyright_desc'] + ]; + return $this->core_config_service->setConfig($this->site_id,'COPYRIGHT', $data); + } + + /** + * 获取网站信息 + * @return array + */ + public function getWebSite() + { + return (new SiteService())->getInfo($this->site_id); + + } + /** + * 设置网站信息 + * @return bool + */ + public function setWebSite($data) + { + + return (new SiteService())->edit($this->site_id, $data); + + } + /** + * 获取前端域名 + * @return array|string[] + */ + public function getSceneDomain(){ + return (new CoreSysConfigService())->getSceneDomain($this->site_id); + } + + /** + * 获取服务信息 + * @return array|mixed + */ + public function getService() + { + $info = (new CoreConfigService())->getConfig(0, 'SERVICE_INFO'); + if(empty($info)) + { + $info = []; + $info['value'] = [ + 'wechat_code' => '', + 'enterprise_wechat' => '', + 'tel' => '', + ]; + } + return $info['value']; + } + + /** + * 设置服务信息 + * @param array $value + * @return bool + */ + public function setService (array $value) + { + $data = [ + "wechat_code" => $value['wechat_code'], + "enterprise_wechat" => $value['enterprise_wechat'], + "tel" => $value['tel'] + ]; + return $this->core_config_service->setConfig(0,'SERVICE_INFO', $data); + } + + /** + * 设置地图key + * @param array $value + * @return bool + */ + public function setMap(array $value) + { + $data = [ + 'key' => $value['key'], + ]; + return $this->core_config_service->setConfig($this->site_id,'MAPKEY', $data); + } + + /** + * 获取地图key + */ + public function getMap() + { + $info = (new CoreConfigService())->getConfig($this->site_id, 'MAPKEY'); + if(empty($info)) + { + $info = []; + $info['value'] = [ + 'key' => 'IZQBZ-3UHEU-WTCVD-2464U-I5N4V-ZFFU3', + ]; + } + return $info['value']; + } + + /** + * 获取站点主页配置 + * @return mixed|string[] + */ + public function getSiteIndexConfig() + { + $config = (new CoreConfigService())->getConfig($this->site_id, "site_index"); + if(empty($config)) + { + $config['value'] = [ + 'view_path' => 'index/site_index' + ]; + }else{ + $result = event("SiteIndex"); + $index_list = []; + foreach ($result as $v) + { + $index_list = empty($index_list) ? $v: array_merge($index_list, $v); + } + $tag = 0; + $view_path = $config['value']['view_path']; + foreach ($index_list as $v) + { + $v_view_path = $v['view_path'] ?? ''; + if($view_path == $v_view_path) + { + $tag = 1; + break; + } + } + if($tag == 0) + { + $config['value'] = [ + 'view_path' => 'index/site_index' + ]; + } + + } + return $config['value']['view_path']; + } + + /** + * 站点主页配置 + * @param $data + * @return true + */ + public function setSiteIndexConfig($data) + { + $config = [ + 'view_path' => $data['view_path'] , + ]; + //检测是否路劲一个异常 + $index_list = $this->getSiteIndexList(); + $check_tag = 0; + foreach($index_list as $v) + { + if($v['view_path'] == $data['view_path']) + { + $check_tag = 1; + } + } + if($check_tag == 0) throw new AdminException('SITE_INDEX_VIEW_PATH_NOT_EXIST'); + (new CoreConfigService())->setConfig($this->site_id, "site_index", $config); + return true; + } + + /** + * 获取站点配置的首页列表 + * @return array + */ + public function getSiteIndexList() + { + $result = event("SiteIndex"); + $index_list = []; + foreach ($result as $v) + { + $index_list = empty($index_list) ? $v: array_merge($index_list, $v); + } + $view_path = $this->getSiteIndexConfig(); + foreach ($index_list as $k => $v) + { + $v_view_path = $v['view_path'] ?? ''; + $index_list[$k]['is_use'] = ($v_view_path == $view_path) ? 1: 0; + } + return $index_list; + } + + /** + * 设置站点快捷菜单 + * @param $data + * @return bool + */ + public function setShortcutMenu($data) + { + (new CoreConfigService())->setConfig($this->site_id, 'shortcut_menu', $data); + return true; + } + + /** + * 获取站点快捷菜单 + * @return array|mixed + */ + public function getShortcutMenu() + { + $config = (new CoreConfigService())->getConfig($this->site_id, 'shortcut_menu'); + $menu = $config['value'] ?? []; + if(!empty($menu)){ + $menu_service = new MenuService(); + foreach($menu as $k => &$v){ + $menu_key = $v['menu_key'] ?? ''; + if($menu_key != ''){ + $item_router_path = $menu_service->getFullRouterPath($menu_key); + if(empty($item_router_path)){ + unset($v[$k]); + }else{ + $v['router_path'] = $item_router_path; + } + } + } + } + return $menu; + } + /** + * 获取平台主页配置 + * @return mixed|string[] + */ + public function getAdminIndexConfig() + { + $config = (new CoreConfigService())->getConfig($this->site_id, "admin_index"); + if(empty($config)) + { + $config['value'] = [ + 'view_path' => 'index/index' + ]; + }else{ + $result = event("AdminIndex"); + $index_list = []; + foreach ($result as $v) + { + $index_list = empty($index_list) ? $v: array_merge($index_list, $v); + } + $tag = 0; + $view_path = $config['value']['view_path']; + foreach ($index_list as $v) + { + $v_view_path = $v['view_path'] ?? ''; + if($view_path == $v_view_path) + { + $tag = 1; + break; + } + } + if($tag == 0) + { + $config['value'] = [ + 'view_path' => 'index/index' + ]; + } + + } + return $config['value']['view_path']; + } + + /** + * 站点主页配置 + * @param $data + * @return true + */ + public function setAdminIndexConfig($data) + { + $config = [ + 'view_path' => $data['view_path'] , + ]; + //检测是否路劲一个异常 + $index_list = $this->getAdminIndexList(); + $check_tag = 0; + foreach($index_list as $v) + { + if($v['view_path'] == $data['view_path']) + { + $check_tag = 1; + } + } + if($check_tag == 0) throw new AdminException('ADMIN_INDEX_VIEW_PATH_NOT_EXIST'); + (new CoreConfigService())->setConfig($this->site_id, "admin_index", $config); + return true; + } + + /** + * 获取站点配置的首页列表 + * @return array + */ + public function getAdminIndexList() + { + $result = event("AdminIndex"); + $index_list = []; + foreach ($result as $v) + { + $index_list = empty($index_list) ? $v: array_merge($index_list, $v); + } + $view_path = $this->getAdminIndexConfig(); + foreach ($index_list as $k => $v) + { + $v_view_path = $v['view_path'] ?? ''; + $index_list[$k]['is_use'] = ($v_view_path == $view_path) ? 1: 0; + } + return $index_list; + } + + /** + * 获取手机端首页列表 + * @param $data + * @return array + */ + public function getWapIndexList($data) + { + return ( new CoreSysConfigService() )->getWapIndexList($data); + } + + /** + * 获取开发者key + * @return array + */ + public function getDeveloperToken() { + return (new CoreConfigService())->getConfigValue(0, "DEVELOPER_TOKEN"); + } + + /** + * 设置开发者key + * @param array $data + * @return array + */ + public function setDeveloperToken(array $data) { + return (new CoreConfigService())->setConfig(0, "DEVELOPER_TOKEN", $data); + } +} diff --git a/niucloud/app/service/admin/sys/MenuService.php b/niucloud/app/service/admin/sys/MenuService.php new file mode 100644 index 0000000..3bc19ff --- /dev/null +++ b/niucloud/app/service/admin/sys/MenuService.php @@ -0,0 +1,665 @@ +model = new SysMenu(); + } + + /** + * 新增菜单接口 + * @param array $data + * @return SysMenu|Model + */ + public function add(array $data) + { + $menu = $this->find($data['menu_key'], $data['app_type']); + if(!$menu->isEmpty()) throw new AdminException('validate_menu.exit_menu_key');//创建失败 + + $data['source'] = MenuDict::CREATE; + $res = $this->model->create($data); + if(!$res) throw new AdminException('ADD_FAIL');//创建失败 + + Cache::tag(self::$cache_tag_name)->clear(); + return $res; + } + + + /** + * 更新菜单 + * @param string $menu_key + * @param array $data + * @return SysMenu + */ + public function edit(string $app_type, string $menu_key, array $data) + { + $where = array( + ['app_type', '=', $app_type], + ['menu_key', '=', $menu_key] + ); + $res = $this->model->update($data, $where); + Cache::tag(self::$cache_tag_name)->clear(); + return $res; + } + + /** + * 获取信息 + * @param string $menu_key + * @return array + */ + public function get(string $app_type, string $menu_key){ + return $this->model->where([['app_type', '=', $app_type],['menu_key', '=', $menu_key]])->findOrEmpty()->toArray(); + } + + /** + * @param string $menu_key + * @param string $app_type + * @return SysMenu|array|mixed|Model + */ + public function find(string $menu_key, string $app_type = ''){ + $where = array( + ['menu_key', '=', $menu_key] + ); + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + $menu = $this->model->where($where)->findOrEmpty(); + return $menu; + } + + /** + * 菜单删除 + * @param string $menu_key + * @return bool + * @throws DbException + */ + public function del(string $app_type, string $menu_key){ + //查询是否有下级菜单或按钮 + $menu = $this->find($menu_key, $app_type); + if($this->model->where([['parent_key', '=', $menu_key], ['app_type', '=', $app_type]])->count() > 0) + throw new AdminException('MENU_NOT_ALLOW_DELETE'); + + $res = $menu->delete(); + Cache::tag(self::$cache_tag_name)->clear(); + return $res; + } + + /** + * 通过菜单menu_key获取 + * @param int $site_id + * @param array $menu_keys + * @param string $app_type + * @param int $is_tree + * @param $addon 用于检测插件筛选 + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMenuListByMenuKeys(int $site_id, array $menu_keys, string $app_type, int $is_tree = 0, $addon = 'all') + { + sort($menu_keys); + $cache_name = 'menu' . md5(implode("_", $menu_keys)) . $is_tree.$addon.$site_id; + $menu_list = cache_remember( + $cache_name, + function () use ($site_id, $menu_keys, $app_type, $is_tree, $addon) { + $where = [ + ['menu_key', 'in', $menu_keys], + ]; + $addons = ( new AddonService() )->getAddonKeysBySiteId($site_id); + $addons[] = ''; + + $delete_menu_addon = []; + $addon_loader = new DictLoader("Menu"); + + if($addon != 'all'){ + $where[] = ['addon', '=', $addon]; + + $delete_menu = $addon_loader->load(["addon" => $addon, "app_type" => $app_type])['delete'] ?? []; + if (!empty($delete_menu) && is_array($delete_menu)) $delete_menu_addon[] = $delete_menu; + } else { + $where[] = ['addon', 'in', $addons]; + + foreach ($addons as $addon) { + $delete_menu = $addon_loader->load(["addon" => $addon, "app_type" => $app_type])['delete'] ?? []; + if (!empty($delete_menu) && is_array($delete_menu)) $delete_menu_addon[] = $delete_menu; + } + } + + // 排除插件中delete的菜单 + if (!empty($delete_menu_addon)) { + $delete_intersect = array_intersect(...$delete_menu_addon); + if (!empty($delete_intersect)) { + $where[] = ['menu_key', 'not in', $delete_intersect]; + } + } + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + return $this->model->where($where)->order('sort', 'desc')->select()->toArray(); + }, + self::$cache_tag_name + ); + foreach ($menu_list as &$v) + { + $lang_menu_key = "dict_menu_". $v['app_type']. '.'. $v['menu_key']; + $lang_menu_name = get_lang("dict_menu_". $v['app_type']. '.'. $v['menu_key']); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $v['menu_name'] = $lang_menu_name; + } + //首页加载 + if($v['menu_key'] == 'overview' && $v['app_type'] == 'site') + { + $view_path = (new ConfigService())->getSiteIndexConfig(); + $v['view_path'] = $view_path; + } + + if($v['menu_key'] == 'overview' && $v['app_type'] == 'admin') + { + $view_path = (new ConfigService())->getAdminIndexConfig(); + $v['view_path'] = $view_path; + } + + } + + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', 1) : $menu_list; + + } + + /** + * 获取所有接口菜单 + */ + public function getAllMenuList($app_type = '', $status = 'all', $is_tree = 0, $is_button = 0) + { + $cache_name = 'menu_api_' .$app_type.'_'. $status . '_' . $is_tree . '_' . $is_button; + $menu_list = cache_remember( + $cache_name, + function () use ($status, $is_tree, $is_button, $app_type) { + $where = [ +// ['menu_type', 'in', [0,1]] + ['app_type', '=', $app_type], + ]; + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + return $this->model->where($where)->order('sort desc')->select()->toArray(); + }, + self::$cache_tag_name + ); + foreach ($menu_list as &$v) + { + $lang_menu_key = "dict_menu_". $v['app_type']. '.'. $v['menu_key']; + $lang_menu_name = get_lang("dict_menu_". $v['app_type']. '.'. $v['menu_key']); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $v['menu_name'] = $lang_menu_name; + } + //首页加载 + if($v['menu_key'] == 'overview' && $v['app_type'] == 'site') + { + $view_path = (new ConfigService())->getSiteIndexConfig(); + $v['view_path'] = $view_path; + } + + if($v['menu_key'] == 'overview' && $v['app_type'] == 'admin') + { + $view_path = (new ConfigService())->getAdminIndexConfig(); + $v['view_path'] = $view_path; + } + + } + + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list; + + } + + + /** + * 通过菜单menu_key组获取接口数组 + * @param array $menu_keys + * @param string $app_type + * @return mixed|string + */ + public function getApiListByMenuKeys(array $menu_keys, string $app_type = '') + { + sort($menu_keys); + $cache_name = 'api' . md5(implode("_", $menu_keys)); + return cache_remember( + $cache_name, + function () use ($menu_keys, $app_type) { + $where = [ + ['menu_key', 'in', $menu_keys] + ]; + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + $menu_list = (new SysMenu())->where($where)->order('sort', 'desc')->column('api_url,methods'); + foreach ($menu_list as $v) { + $auth_menu_list[$v['methods']][] = $v['api_url']; + } + return $auth_menu_list ?? []; + }, + self::$cache_tag_name + ); + } + + + /** + * 通过菜单menu_key组获取按钮数组 + * @param array $menu_keys + * @param string $app_type + * @return mixed + */ + public function getButtonListBuMenuKeys(array $menu_keys, string $app_type = '') + { + sort($menu_keys); + $cache_name = 'button' . md5(implode("_", $menu_keys)); + return cache_remember( + $cache_name, + function () use ($menu_keys, $app_type) { + $where = [ + ['menu_key', 'in', $menu_keys], + ['menu_type', '=', MenuTypeDict::BUTTON] + ]; + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + return $this->model->where($where)->order('sort', 'desc')->column('menu_key'); + }, + self::$cache_tag_name + ); + } + + /** + * 获取所有接口菜单权限 + * @param $app_type + * @param $status + * @return mixed + */ + public function getAllApiList($app_type = '', $status = 'all') + { + $cache_name = 'all_api' .$app_type.'_'. $status; + return cache_remember( + $cache_name, + function () use ($status, $app_type) { + $where = [ + ['api_url', '<>', ''], + ['app_type', '=', $app_type], + ]; + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + $menu_list = $this->model->where($where)->order('sort', 'desc')->column('methods, api_url'); + $auth_menu_list = []; + foreach ($menu_list as $v) { + $auth_menu_list[$v['methods']][] = $v['api_url']; + } + return $auth_menu_list; + }, + self::$cache_tag_name + ); + } + + /** + * 通过站点端口获取菜单id + * @param string $app_type + * @param $status + * @return mixed|string + */ + public function getAllMenuIdsByAppType(string $app_type, $status = 'all'){ + $cache_name = 'menu_id_by_app_type_' .$app_type; + return cache_remember( + $cache_name, + function () use ($app_type, $status) { + $where = [ +// + ['app_type', '=', $app_type], + ]; + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + return $this->model->where($where)->order('sort desc')->column('menu_key'); + }, + self::$cache_tag_name + ); + } + + + + /** + * 获取所有按钮菜单 + */ + public function getAllButtonList($app_type = '', $status = 'all', $is_tree = 0) + { + $cache_name = 'menu_api_' .$app_type.'_' . $status . '_' . $is_tree; + return cache_remember( + $cache_name, + function () use ($status, $is_tree, $app_type) { + $where = [ + ['menu_type', '=', MenuTypeDict::BUTTON], + ['app_type', '=', $app_type], + ]; + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + return $this->model->where($where)->order('sort', 'desc')->column('menu_key'); + }, + self::$cache_tag_name + ); + } + + /** + * 把返回的数据集转换成Tree(专属于) + * @param $list 要转换的数据集 + * @param string $pk + * @param string $pid + * @param string $child + * @param int $root + * @return array + */ + public function menuToTree($list, $pk = 'id', $pid = 'pid', $child = 'child', $button_name = 'auth', $root = '', $is_button = 0) + { + // 创建Tree + $tree = array(); + if (is_array($list)) { + // 创建基于主键的数组引用 + $refer = array(); + foreach ($list as $key => $data) { + $refer[$data[$pk]] =& $list[$key]; + } + foreach ($list as $key => $data) { + // 判断是否存在parent + $parent_id = $data[$pid]; + if ($root == $parent_id) { + $tree[] =& $list[$key]; + } else { + if (isset($refer[$parent_id])) { + $parent =& $refer[$parent_id]; + if ($list[$key]['menu_type'] == 2 && $is_button == 1) { + $parent[$button_name][] =& $list[$key]['menu_key']; + } else { + $parent[$child][] =& $list[$key]; + } + + } + } + } + } + return $tree; + + } + + /** + * 获取完整的路由地址 + * @param $menu_key + * @return string + */ + public function getFullRouterPath($menu_key){ + $menu = $this->model->where([['menu_key', '=', $menu_key]])->findOrEmpty($menu_key); + if($menu->isEmpty()) return ''; + $parents = []; + $this->getParentDirectory($menu, $parents); + $parents = array_reverse($parents); + $router_path = implode('/', $parents); + if(!empty($router_path)){ + $router_path .= '/'.$menu['router_path']; + }else{ + $router_path = $menu['router_path']; + } + return $router_path; + } + + /** + * 递归查询模板集合 + * @param SysMenu $menu + * @param $parents + * @return void + */ + public function getParentDirectory(SysMenu $menu, &$parents){ + if(!$menu->isEmpty() && !empty($menu['parent_key'])){ + $parent_menu = $this->model->where([['menu_key', '=', $menu['parent_key']]])->findOrEmpty(); + if(!empty($parent_menu)){ + if(!empty($parent_menu['router_path'])) $parents[] = $parent_menu['router_path']; + $this->getParentDirectory($parent_menu, $parents); + } + } + + } + + /** + * 获取系统菜单(站点权限api极限) + * @param string $app_type + * @param string $addons + * @return mixed|string + */ + public function getApiListBySystem(string $app_type = '', array $addons = []) + { + sort($addons); + $cache_name = 'system_menu_api_' . $app_type.implode("_", $addons); + return cache_remember( + $cache_name, + function () use ($app_type, $addons) { + $addons[] = ''; + $where = [ + ['addon', 'in', $addons] + ]; + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + $menu_list = (new SysMenu())->where($where)->order('sort', 'desc')->column('api_url,methods'); + foreach ($menu_list as $v) { + $auth_menu_list[$v['methods']][] = $v['api_url']; + } + return $auth_menu_list ?? []; + }, + self::$cache_tag_name + ); + } + + /** + * 站点所拥有的菜单极限 + * @param string $app_type + * @param array $addons + * @param int $is_tree + * @return array|mixed|string + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMenuListBySystem(string $app_type, array $addons, int $is_tree = 0, int $is_button = 1) + { + sort($addons); + $cache_name = 'menu' . md5(implode("_", $addons)) . $is_tree; + $menu_list = cache_remember( + $cache_name, + function () use ($addons, $app_type, $is_tree) { + $where = [ + ['addon', 'in', $addons] + ]; + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + // 排除插件中delete的菜单 + $delete_menu_addon = []; + $addon_loader = new DictLoader("Menu"); + foreach ($addons as $addon) { + $delete_menu = $addon_loader->load(["addon" => $addon, "app_type" => $app_type])['delete'] ?? []; + if (!empty($delete_menu) && is_array($delete_menu)) $delete_menu_addon[] = $delete_menu; + } + if (!empty($delete_menu_addon)) { + $delete_intersect = array_intersect(...$delete_menu_addon); + if (!empty($delete_intersect)) { + $where[] = ['menu_key', 'not in', $delete_intersect]; + } + } + return $this->model->where($where)->order('sort', 'desc')->select()->toArray(); + }, + self::$cache_tag_name + ); + + foreach ($menu_list as &$v) + { + $lang_menu_key = "dict_menu_". $v['app_type']. '.'. $v['menu_key']; + $lang_menu_name = get_lang("dict_menu_". $v['app_type']. '.'. $v['menu_key']); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $v['menu_name'] = $lang_menu_name; + } + //首页加载 + if($v['menu_key'] == 'overview' && $v['app_type'] == 'site') + { + $view_path = (new ConfigService())->getSiteIndexConfig(); + $v['view_path'] = $view_path; + } + + if($v['menu_key'] == 'overview' && $v['app_type'] == 'admin') + { + $view_path = (new ConfigService())->getAdminIndexConfig(); + $v['view_path'] = $view_path; + } + } + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list; + + } + + /** + * 通过站点的应用配置获取所有的keys + * @param string $app_type + * @param array $addons + * @return mixed|string + */ + public function getMenuKeysBySystem(string $app_type, array $addons){ + sort($addons); + $cache_name = 'menu_keys_' . $app_type.implode("_", $addons); + return cache_remember( + $cache_name, + function () use ($app_type, $addons) { + $addons[] = ''; + $where = [ + ['addon', 'in', $addons] + ]; + if(!empty($app_type)){ + $where[] = ['app_type', '=', $app_type]; + } + return (new SysMenu())->where($where)->order('sort', 'desc')->column('menu_key'); + }, + self::$cache_tag_name + ); + } + + public function getSystemMenu($status = 'all', $is_tree = 0, $is_button = 0) + { + + if($is_button == 0) + { + $where = [ + ['menu_type', 'in', [0,1]] + ]; + } + + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + $where[] = [ 'addon', '=','']; + $menu_list = (new SysMenu())->where($where)->order('sort desc')->select()->toArray(); + foreach ($menu_list as &$v) + { + $lang_menu_key = 'dict_menu_admin' . '.'. $v['menu_key']; + $lang_menu_name = get_lang($lang_menu_key); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $v['menu_name'] = $lang_menu_name; + } + } + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list; + } + + public function getAddonMenu($app_key,$status = 'all', $is_tree = 0, $is_button = 0) + { + + if($is_button == 0) + { + $where = [ + ['menu_type', 'in', [0,1]] + ]; + } + + if ($status != 'all') { + $where[] = ['status', '=', $status]; + } + $where[] = [ 'addon', '=',$app_key]; + $menu_list = (new SysMenu())->where($where)->select()->toArray(); + return $is_tree ? $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', $is_button) : $menu_list; + } + + /** + * 查询菜单类型为目录的菜单 + * @param string $addon + */ + public function getMenuByTypeDir(string $addon = 'system') { + $cache_name = 'menu_api_by_type_dir' . $addon; + $menu_list = cache_remember( + $cache_name, + function () use ($addon) { + $where = [ + ['menu_type', '=', 0 ], + ['app_type', '=', 'site'] + ]; + //查询应用 + $where[] = ['addon', '=', $addon == 'system' ? '' : $addon ]; + return (new SysMenu())->where($where)->order('sort desc')->select()->toArray(); + }, + self::$cache_tag_name + ); + foreach ($menu_list as &$v) + { + $lang_menu_key = 'dict_menu_admin' . '.'. $v['menu_key']; + $lang_menu_name = get_lang($lang_menu_key); + //语言已定义 + if($lang_menu_key != $lang_menu_name) + { + $v['menu_name'] = $lang_menu_name; + } + } + + return $this->menuToTree($menu_list, 'menu_key', 'parent_key', 'children', 'auth', '', 0); + } +} diff --git a/niucloud/app/service/admin/sys/RoleService.php b/niucloud/app/service/admin/sys/RoleService.php new file mode 100644 index 0000000..5be42cc --- /dev/null +++ b/niucloud/app/service/admin/sys/RoleService.php @@ -0,0 +1,197 @@ +model = new SysRole(); + } + + /** + * 管理端获取角色列表 + * @param array $data + * @return array + */ + public function getPage(array $data) + { + $where = [['site_id', '=', $this->site_id]]; + if(!empty($data['role_name'])) { + $where[] = ['role_name', 'like', "%".$data['role_name']."%"]; + } + $field = 'role_id,role_name,status,create_time'; + $search_model = $this->model->where($where)->field($field)->order('create_time desc')->append(['status_name']); + return $this->pageQuery($search_model); + } + /** + * 获取权限信息 + * @param int $role_id + * @return array + */ + public function getInfo(int $role_id){ + return $this->model->append(['status_name'])->findOrEmpty($role_id)->toArray(); + } + + /** + * 获取站点下的所有权限 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAll() + { + $where = array( + ['site_id', '=', $this->site_id], + ['status', '=', 1] + ); + return $this->model->where($where)->field('role_id,role_name,status,create_time')->select()->toArray(); + } + + /** + * 新增权限 + * @param array $data + * @return true + */ + public function add(array $data){ + $data['create_time'] = time(); + $data['app_type'] = $this->app_type; + $data['site_id'] = $this->site_id; + $this->model->save($data); + Cache::tag(self::$cache_tag_name.$this->site_id)->clear(); + return true; + } + + /** + * 更新权限 + * @param int $role_id + * @param array $data + * @return true + */ + public function edit(int $role_id, array $data){ + $where = array( + ['role_id', '=', $role_id], + ['site_id', '=', $this->site_id], + ); + $data['update_time'] = time(); + $this->model->update($data, $where); + Cache::tag(self::$cache_tag_name.$this->site_id)->clear(); + return true; + + } + + /** + * 获取模型对象 + * @param int $site_id + * @param int $role_id + * @return mixed + */ + public function find(int $site_id, int $role_id){ + $where = array( + ['role_id', '=', $role_id], + ['site_id', '=', $site_id], + ); + $role = $this->model->where($where)->findOrEmpty(); + if ($role->isEmpty()) + throw new AdminException('USER_ROLE_NOT_EXIST'); + return $role; + } + + /** + * 删除权限(saas应该不允许删除) + * @param int $role_id + * @return mixed + * @throws DbException + */ + public function del(int $role_id){ + $role = $this->find($this->site_id, $role_id); + if(SysUserRole::where([['role_ids', 'like',['%"'.$role_id.'"%']]])->count() > 0) + throw new AdminException('USER_ROLE_NOT_ALLOW_DELETE'); + $res = $role->delete(); + Cache::tag(self::$cache_tag_name.$this->site_id)->clear(); + return $res; + + } + + /** + * 获取角色id为健名,角色名为键值的数据 + * @param int $site_id + * @return mixed|string + */ + public function getColumn(int $site_id){ + $cache_name = 'role_column_'.$site_id; + return cache_remember( + $cache_name, + function() use($site_id) { + $where = [ + ['site_id', '=', $site_id] + ]; + return $this->model->where($where)->column('role_name', 'role_id'); + }, + [MenuService::$cache_tag_name, self::$cache_tag_name.$this->site_id] + ); + } + + /** + * 通过权限组id获取菜单id + * @param int $site_id + * @param array $role_ids + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMenuIdsByRoleIds(int $site_id, array $role_ids){ + $menu_keys = (new SiteService())->getMenuIdsBySiteId($site_id, 1); + $allow_role_ids = array_merge($role_ids, $menu_keys); + sort($allow_role_ids); + $cache_name = 'user_role_'.$site_id.'_'.md5(implode('_', $allow_role_ids)); + return cache_remember( + $cache_name, + function() use($role_ids, $menu_keys) { + $rules = $this->model->where([['role_id', 'IN', $role_ids], ['status', '=', RoleStatusDict::ON]])->field('rules')->select()->toArray(); + if(!empty($rules)){ + $temp = []; + foreach($rules as $k => $v){ + $temp = array_merge($temp, $v['rules']); + } + $temp = array_unique($temp); + if(empty($menu_keys)) return []; + if(empty($temp)) return []; + return array_intersect($temp, $menu_keys); + } + return []; + }, + [MenuService::$cache_tag_name, self::$cache_tag_name.$site_id] + ); + + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/sys/SystemService.php b/niucloud/app/service/admin/sys/SystemService.php new file mode 100644 index 0000000..8446bf6 --- /dev/null +++ b/niucloud/app/service/admin/sys/SystemService.php @@ -0,0 +1,191 @@ + PHP_OS, + 'environment' => $_SERVER[ 'SERVER_SOFTWARE' ], + 'php_v' => PHP_VERSION, + 'version' => config('version') + ]; + } + + /** + * 获取域名配置 + */ + public function getUrl() + { + $wap_domain = !empty(env("system.wap_domain")) ? preg_replace('#/$#', '', env("system.wap_domain")) : request()->domain(); + $web_domain = !empty(env("system.web_domain")) ? preg_replace('#/$#', '', env("system.web_domain")) : request()->domain(); + + return [ + 'wap_domain' => env("system.wap_domain"), + 'wap_url' => $wap_domain . "/wap/" . $this->site_id, + 'web_url' => $web_domain . "/web/" . $this->site_id, + ]; + } + + /** + * 获取系统信息 + * @return array + */ + public function getSystemInfo() + { + $server = []; + $server[] = [ "name" => get_lang('dict_setting.server_system'), "server" => PHP_OS ]; + $server[] = [ "name" => get_lang('dict_setting.server_setting'), "server" => PHP_SAPI ]; + $server[] = [ "name" => get_lang('dict_setting.php_version'), "server" => PHP_VERSION]; + + //环境权限 + $system_variables = []; + //pdo + $pdo = extension_loaded('pdo') && extension_loaded('pdo_mysql'); + $system_variables[] = [ "name" => "pdo", "need" => get_lang('dict_setting.php_authority_ask'), "status" => $pdo ]; + //curl + $curl = extension_loaded('curl') && function_exists('curl_init'); + $system_variables[] = [ "name" => "curl", "need" => get_lang('dict_setting.php_authority_ask'), "status" => $curl ]; + //openssl + $openssl = extension_loaded('openssl'); + $system_variables[] = [ "name" => "openssl", "need" => get_lang('dict_setting.php_authority_ask'), "status" => $openssl ]; + //gd + $gd = extension_loaded('gd'); + $system_variables[] = [ "name" => "GD库", "need" => get_lang('dict_setting.php_authority_ask'), "status" => $gd ]; + //fileinfo + $fileinfo = extension_loaded('fileinfo'); + $system_variables[] = [ "name" => "fileinfo", "need" => get_lang('dict_setting.php_authority_ask'), "status" => $fileinfo ]; + //目录权限 + $root_path = str_replace("\\", DIRECTORY_SEPARATOR, dirname(__FILE__, 5)); + $root_path = str_replace("../", DIRECTORY_SEPARATOR, $root_path); + + + $dirs_list = [ + [ "path" => $root_path . DIRECTORY_SEPARATOR . 'runtime' . DIRECTORY_SEPARATOR, "need" => get_lang('dict_setting.file_authority_ask'), "path_name" => "/runtime", "name" => "runtime" ], + [ "path" => $root_path . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'upload' . DIRECTORY_SEPARATOR, "need" => get_lang('dict_setting.file_authority_ask'), "path_name" => "/public/upload", "name" => "upload" ], + ]; + //目录 可读 可写检测 + foreach ($dirs_list as $k => $v) { + $is_readable = is_readable($v[ "path" ]); + $is_write = is_write($v[ "path" ]); + if ($is_readable && $is_write) { + $dirs_list[ $k ][ "status" ] = true; + } else { + $dirs_list[ $k ][ "status" ] = false; + } + } + $system_variables = array_merge($system_variables, $dirs_list); + + //获取环境版本 + $server_version = []; + $row = (array) Db::query("select VERSION() as verson"); + $server_version[] = [ "name" => get_lang('dict_setting.php_version'), "demand" => get_lang('dict_setting.php_ask'), "server" => PHP_VERSION]; + $server_version[] = [ "name" => get_lang('dict_setting.mysql_version'), "demand" => get_lang('dict_setting.mysql_ask'), "server" => $row[ 0 ][ 'verson' ] ]; + + // 进程 + $process[] = [ "name" => "php think queue:listen", "need" => get_lang('dict_setting.php_authority_ask'), "status" => ( new SystemService() )->checkJob() ]; + + return [ "server" => $server, "dirs_list" => $dirs_list, 'system_variables' => $system_variables, 'server_version' => $server_version, 'process' => $process ]; + } + + /** + * 清理缓存 + */ + public function schemaCache() + { + + if (is_dir(dirname($_SERVER[ 'DOCUMENT_ROOT' ]) . '/runtime/schema')) { + rmdirs(dirname($_SERVER[ 'DOCUMENT_ROOT' ]) . '/runtime/schema'); + } + return 'CLEAR_MYSQL_CACHE_SUCCESS'; + } + + /** + *校验消息队列是否正常运行 + * @return bool + */ + public function checkJob() + { + $secret = uniqid('', true); + $file = root_path('runtime') . $secret . '.job'; + try { + CheckJob::dispatch([ 'file' => $file ]); + } catch ( Throwable $e) { + return false; + } +// $timeout = 0; +// while($timeout < 5){ +// if (file_exists($file)) { +// @unlink($file); +// return true; +// } +// $timeout++; +// sleep(1); +// } + sleep(3); + if (file_exists($file)) { + @unlink($file); + return true; + } + return false; + } + + /** + * 校验计划任务是否正常运行 + * @return bool + */ + public function checkSchedule() + { + $file = root_path('runtime') . '.schedule'; + if (file_exists($file)) { + $time = file_get_contents($file); + if (!empty($time) && abs($time - time()) < 90) { + return true; + } + } + return false; + } + + /** + * 设置布局 + * @param string $key + */ + public function setLayout(string $key) { + $layouts = array_column(event('SiteLayout'), 'key'); + if (!in_array($key, $layouts)) throw new CommonException('LAYOUT_NOT_EXIST'); + (new CoreConfigService())->setConfig($this->site_id, 'SITE_LAYOUT', [ 'key' => $key ]); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/upgrade/BackupService.php b/niucloud/app/service/admin/upgrade/BackupService.php new file mode 100644 index 0000000..cd1f2fe --- /dev/null +++ b/niucloud/app/service/admin/upgrade/BackupService.php @@ -0,0 +1,103 @@ +upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'backup' . DIRECTORY_SEPARATOR . 'code' . DIRECTORY_SEPARATOR; + + // 创建目录 + dir_mkdir($backup_dir); + // 备份admin + dir_copy($this->root_path . 'admin', $backup_dir . 'admin', exclude_dirs:[ '.vscode', 'node_modules', 'dist']); + // 备份uni-app + dir_copy($this->root_path . 'uni-app', $backup_dir . 'uni-app', exclude_dirs:['node_modules', 'dist']); + // 备份web + dir_copy($this->root_path . 'web', $backup_dir . 'web', exclude_dirs:['node_modules', '.nuxt', '.output']); + + // 备份niucloud + $niucloud_dir = $backup_dir . 'niucloud' . DIRECTORY_SEPARATOR; + if ($this->upgrade_task['upgrade']['app_key'] == AddonDict::FRAMEWORK_KEY) { + dir_copy($this->root_path . 'niucloud', $niucloud_dir, exclude_dirs:['addon', 'config', 'public', 'vendor', 'runtime']); + // 备份版本文件 + $version_file = $this->root_path . 'niucloud' .DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'version.php'; + $to_version_file = $niucloud_dir . 'config' . DIRECTORY_SEPARATOR . 'version.php'; + file_copy($version_file, $to_version_file); + } else { + $addon = $this->upgrade_task['upgrade']['app_key']; + $addon_dir = $this->root_path . 'niucloud' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $addon; + $to_addon_dir = $niucloud_dir . 'addon' . DIRECTORY_SEPARATOR . $addon; + dir_copy($addon_dir, $to_addon_dir); + } + // 备份前端文件 + if (is_dir(public_path() . 'admin')) { + dir_copy(public_path() . 'admin', $niucloud_dir . 'public' . DIRECTORY_SEPARATOR . 'admin'); + } + if (is_dir(public_path() . 'wap')) { + dir_copy(public_path() . 'wap', $niucloud_dir . 'public' . DIRECTORY_SEPARATOR . 'wap'); + } + if (is_dir(public_path() . 'web')) { + dir_copy(public_path() . 'web', $niucloud_dir . 'public' . DIRECTORY_SEPARATOR . 'web'); + } + + return true; + } + + /** + * 备份数据库 + * @return void + */ + public function backupSql() { + $backup_dir = $this->upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'backup' . DIRECTORY_SEPARATOR . 'sql' . DIRECTORY_SEPARATOR; + // 创建目录 + dir_mkdir($backup_dir); + + $db = new DbBackup([ + 'path' => $backup_dir,//数据库备份路径 + 'part' => 1048576,//数据库备份卷大小 + 'compress' => 0,//数据库备份文件是否启用压缩 0不压缩 1 压缩 + 'level' => 9 //数据库备份文件压缩级别 1普通 4 一般 9最高 + ]); + + $prefix = config('database.connections.'.config('database.default'))['prefix']; + if ($this->upgrade_task['upgrade']['app_key'] == AddonDict::FRAMEWORK_KEY) { + // 不需要备份的表 + $noot_need_backup = ["{$prefix}sys_user_log", "{$prefix}jobs", "{$prefix}jobs_failed"]; + $tables = array_diff(array_column($db->dataList(), 'name'), $noot_need_backup); + } else { + $tables = []; + $table_prefix = "{$prefix}{$this->upgrade_task['upgrade']['app_key']}"; + foreach ($db->dataList() as $table) { + if (strpos($table['name'], $table_prefix) === 0) { + $tables[] = $table['name']; + } + } + } + + foreach ($tables as $table) { + $db->setFile()->backup($table); + } + return true; + } +} diff --git a/niucloud/app/service/admin/upgrade/ExecuteSqlTrait.php b/niucloud/app/service/admin/upgrade/ExecuteSqlTrait.php new file mode 100644 index 0000000..4301c6b --- /dev/null +++ b/niucloud/app/service/admin/upgrade/ExecuteSqlTrait.php @@ -0,0 +1,68 @@ + 0) { + $table_name = $match_data[ 1 ]; + $new_table_name = $prefix . $table_name; + $sql = implode($new_table_name, explode($table_name, $sql, 2)); + } + return $sql; + } +} diff --git a/niucloud/app/service/admin/upgrade/RestoreService.php b/niucloud/app/service/admin/upgrade/RestoreService.php new file mode 100644 index 0000000..1900ef4 --- /dev/null +++ b/niucloud/app/service/admin/upgrade/RestoreService.php @@ -0,0 +1,59 @@ +upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'backup' . DIRECTORY_SEPARATOR . 'code' . DIRECTORY_SEPARATOR; + if (is_dir($backup_dir)) { + // 删除前端文件 + if (is_dir(public_path() . 'admin')) del_target_dir(public_path() . 'admin', true); + if (is_dir(public_path() . 'wap')) del_target_dir(public_path() . 'wap', true); + if (is_dir(public_path() . 'web')) del_target_dir(public_path() . 'web', true); + + dir_copy($backup_dir, rtrim($this->root_path, DIRECTORY_SEPARATOR)); + } + return true; + } + + /** + * 恢复数据库备份 + * @return true + */ + public function restoreSql() { + $backup_dir = $this->upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'backup' . DIRECTORY_SEPARATOR . 'sql' . DIRECTORY_SEPARATOR; + if (is_dir($backup_dir)) { + $db = new DbBackup([ + 'path' => $backup_dir //数据库备份路径 + ]); + $file_list = $db->fileList(); + if (!empty($file_list)) { + foreach ($file_list as $file) { + $db->setFile($file)->import(0, $file['time']); + } + } + } + return true; + } +} diff --git a/niucloud/app/service/admin/upgrade/UpgradeService.php b/niucloud/app/service/admin/upgrade/UpgradeService.php new file mode 100644 index 0000000..1b14d19 --- /dev/null +++ b/niucloud/app/service/admin/upgrade/UpgradeService.php @@ -0,0 +1,532 @@ + ['step' => 'requestUpgrade', 'title' => '请求升级'], + 'downloadFile' => ['step' => 'downloadFile', 'title' => '下载更新文件'], + 'backupCode' => ['step' => 'backupCode', 'title' => '备份源码'], + 'backupSql' => ['step' => 'backupSql', 'title' => '备份数据库'], + 'coverCode' => ['step' => 'coverCode', 'title' => '合并更新文件'], + 'handleUniapp' => ['step' => 'handleUniapp', 'title' => '处理uniapp'], + 'refreshMenu' => ['step' => 'refreshMenu', 'title' => '刷新菜单'], + 'installSchedule' => ['step' => 'installSchedule', 'title' => '安装计划任务'], + 'upgradeComplete' => ['step' => 'upgradeComplete', 'title' => '升级完成'] + ]; + + public function __construct() + { + parent::__construct(); + + $this->root_path = dirname(root_path()) . DIRECTORY_SEPARATOR; + $this->upgrade_dir = $this->root_path . 'upgrade' . DIRECTORY_SEPARATOR; + $this->upgrade_task = Cache::get($this->cache_key); + } + + /** + * 升级前环境检测 + * @param string $addon + * @return void + */ + public function upgradePreCheck(string $addon = '') { + $niucloud_dir = $this->root_path . 'niucloud' . DIRECTORY_SEPARATOR; + $admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR; + $web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR; + $wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR; + + try { + if (!is_dir($admin_dir)) throw new CommonException('ADMIN_DIR_NOT_EXIST'); + if (!is_dir($web_dir)) throw new CommonException('WEB_DIR_NOT_EXIST'); + if (!is_dir($wap_dir)) throw new CommonException('UNIAPP_DIR_NOT_EXIST'); + } catch (\Exception $e) { + if (strpos($e->getMessage(), 'open basedir') !== false) { + throw new CommonException('OPEN_BASEDIR_ERROR'); + } + throw new CommonException($e->getMessage()); + } + + $data = [ + // 目录检测 + 'dir' => [ + // 要求可读权限 + 'is_readable' => [], + // 要求可写权限 + 'is_write' => [] + ] + ]; + + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $niucloud_dir), 'status' => is_readable($niucloud_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $admin_dir), 'status' => is_readable($admin_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $web_dir), 'status' => is_readable($web_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $wap_dir), 'status' => is_readable($wap_dir)]; + + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $niucloud_dir), 'status' => is_write($niucloud_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $admin_dir), 'status' => is_write($admin_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $web_dir), 'status' => is_write($web_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $wap_dir), 'status' => is_write($wap_dir) ]; + + $check_res = array_merge( + array_column($data['dir']['is_readable'], 'status'), + array_column($data['dir']['is_write'], 'status') + ); + + // 是否通过校验 + $data['is_pass'] = !in_array(false, $check_res); + return $data; + } + + /** + * 升级 + * @param $addon + * @return array + */ + public function upgrade(string $addon = '') { + if ($this->upgrade_task) throw new CommonException('UPGRADE_TASK_EXIST'); + + $upgrade = [ + 'product_key' => BaseNiucloudClient::PRODUCT, + 'framework_version' => config('version.version') + ]; + if (!$addon) { + $upgrade['app_key'] = AddonDict::FRAMEWORK_KEY; + $upgrade['version'] = config('version.version'); + } else { + $upgrade['app_key'] = $addon; + $upgrade['version'] = (new Addon())->where([ ['key', '=', $addon] ])->value('version'); + } + + $response = (new CoreAddonCloudService())->upgradeAddon($upgrade); + if (isset($response['code']) && $response['code'] == 0) throw new CommonException($response['msg']); + + try { + $key = uniqid(); + $upgrade_dir = $this->upgrade_dir . $key . DIRECTORY_SEPARATOR; + + if (!is_dir($upgrade_dir)) { + dir_mkdir($upgrade_dir); + } + + $upgrade_tsak = [ + 'key' => $key, + 'upgrade' => $upgrade, + 'step' => 'requestUpgrade', + 'executed' => ['requestUpgrade'], + 'log' => [ $this->steps['requestUpgrade']['title'] ], + 'params' => ['token' => $response['token'] ], + 'upgrade_content' => $this->getUpgradeContent($addon) + ]; + + Cache::set($this->cache_key, $upgrade_tsak); + return $upgrade_tsak; + } catch (\Exception $e) { + if (strpos($e->getMessage(), 'open_basedir') !== false) { + throw new CommonException('OPEN_BASEDIR_ERROR'); + } + throw new CommonException($e->getMessage()); + } + } + + /** + * 执行升级 + * @return true + */ + public function execute() { + if (!$this->upgrade_task) return true; + + $steps = array_keys($this->steps); + $index = array_search($this->upgrade_task['step'], $steps); + $step = $steps[ $index + 1 ] ?? ''; + $params = $this->upgrade_task['params'] ?? []; + + if ($step) { + try { + $res = $this->$step(...$params); + + if (is_array($res)) { + $this->upgrade_task['params'] = $res; + } else { + $this->upgrade_task['step'] = $step; + $this->upgrade_task['params'] = []; + $this->upgrade_task['executed'][] = $step; + $this->upgrade_task['log'][] = $this->steps[$step]['title']; + } + Cache::set($this->cache_key, $this->upgrade_task); + } catch (\Exception $e) { + $this->upgrade_task['step'] = $step; + $this->upgrade_task['error'] = $e->getMessage(); + $this->upgradeErrorHandle(); + } + return true; + } else { + return true; + } + } + + /** + * 下载升级文件 + * @param string $token + * @param string $dir + * @param int $index + * @param $step + * @return true|null + */ + public function downloadFile(string $token, string $dir = '', int $index = -1, $step = 0, $length = 0) { + if (!$dir) { + $dir = $this->upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'download' . DIRECTORY_SEPARATOR; + dir_mkdir($dir); + } + $res = (new CoreAddonCloudService())->downloadUpgradeFile($token, $dir, $index, $step, $length); + return $res; + } + + /** + * 备份源码 + * @return true + */ + public function backupCode() { + (new BackupService())->backupCode(); + return true; + } + + /** + * 备份数据库 + * @return true + */ + public function backupSql() { + (new BackupService())->backupSql(); + return true; + } + + /** + * 覆盖更新升级的代码 + * @return void + */ + public function coverCode($index = 0) { + $this->upgrade_task['is_cover'] = 1; + $addon = $this->upgrade_task['upgrade']['app_key']; + + $version_list = array_reverse($this->upgrade_task['upgrade_content']['version_list']); + $code_dir = $this->upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'download' . DIRECTORY_SEPARATOR . 'code' . DIRECTORY_SEPARATOR; + + $version_item = $version_list[$index]; + $version_no = $version_item['version_no']; + + $to_dir = $addon == AddonDict::FRAMEWORK_KEY ? $this->root_path : $this->root_path . 'niucloud' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $addon; + + // 获取文件变更记录 + if (file_exists($code_dir . $version_no . '.txt')) { + $change = array_filter(explode("\n", file_get_contents($code_dir . $version_no . '.txt'))); + foreach ($change as &$item) { + list($operation, $md5, $file) = $item = explode(' ', $item); + if ($operation == '-') { + @unlink($to_dir . $file); + } + } + // 合并依赖 + $this->installDepend($code_dir . $version_no, array_column($change, 2)); + } + + // 覆盖文件 + if (is_dir($code_dir . $version_no)) { + dir_copy($code_dir . $version_no, $to_dir); + if ($addon != AddonDict::FRAMEWORK_KEY) { + (new CoreAddonInstallService($addon))->installDir(); + } + } + + $upgrade_file_dir = 'v' . str_replace('.', '', $version_no); + if ($addon == AddonDict::FRAMEWORK_KEY) { + $class_path = "\\app\\upgrade\\{$upgrade_file_dir}\\Upgrade"; + $sql_file = root_path() . 'app' . DIRECTORY_SEPARATOR . 'upgrade' . DIRECTORY_SEPARATOR . $upgrade_file_dir . DIRECTORY_SEPARATOR . 'upgrade.sql'; + } else { + $class_path = "\\addon\\{$addon}\\app\\upgrade\\{$upgrade_file_dir}\\Upgrade"; + $sql_file = root_path() . 'addon' . DIRECTORY_SEPARATOR . $addon . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'upgrade' . DIRECTORY_SEPARATOR . $upgrade_file_dir . DIRECTORY_SEPARATOR . 'upgrade.sql'; + } + + // 执行升级sql + if (file_exists($sql_file)) { + $this->executeSql($sql_file); + } + + // 执行升级方法 + if (class_exists($class_path)) { + (new $class_path())->handle(); + } + + $index ++; + if ($index < count($version_list)) { + return compact('index'); + } else { + return true; + } + } + + /** + * 合并依赖 + * @param string $version_no + * @return void + */ + public function installDepend(string $dir, array $change_files) { + $addon = $this->upgrade_task['upgrade']['app_key']; + $depend_service = new CoreDependService(); + + if ($addon == AddonDict::FRAMEWORK_KEY) { + $composer = '/niucloud/composer.json'; + $admin_package = '/admin/package.json'; + $web_package = '/web/package.json'; + $uniapp_package = '/uni-app/package.json'; + } else { + $composer = "/niucloud/addon/{$addon}/package/composer.json"; + $admin_package = "/niucloud/addon/{$addon}/package/admin-package.json"; + $web_package = "/niucloud/addon/{$addon}/package/web-package.json"; + $uniapp_package = "/niucloud/addon/{$addon}/package/uni-app-package.json"; + } + + if (in_array($composer, $change_files)) { + $original = $depend_service->getComposerContent(); + $new = $depend_service->jsonFileToArray($dir . $composer); + foreach ($new as $name => $value) { + $original[$name] = isset($original[$name]) && is_array($original[$name]) ? array_merge($original[$name], $new[$name]) : $new[$name]; + } + $depend_service->writeArrayToJsonFile($original, $dir . $composer); + } + if (in_array($admin_package, $change_files)) { + $original = $depend_service->getNpmContent('admin'); + $new = $depend_service->jsonFileToArray($dir . $admin_package); + + foreach ($new as $name => $value) { + $original[$name] = isset($original[$name]) && is_array($original[$name]) ? array_merge($original[$name], $new[$name]) : $new[$name]; + } + $depend_service->writeArrayToJsonFile($original, $dir . $admin_package); + } + if (in_array($web_package, $change_files)) { + $original = $depend_service->getNpmContent('web'); + $new = $depend_service->jsonFileToArray($dir . $web_package); + + foreach ($new as $name => $value) { + $original[$name] = isset($original[$name]) && is_array($original[$name]) ? array_merge($original[$name], $new[$name]) : $new[$name]; + } + $depend_service->writeArrayToJsonFile($original, $dir . $web_package); + } + if (in_array($uniapp_package, $change_files)) { + $original = $depend_service->getNpmContent('uni-app'); + $new = $depend_service->jsonFileToArray($dir . $uniapp_package); + + foreach ($new as $name => $value) { + $original[$name] = isset($original[$name]) && is_array($original[$name]) ? array_merge($original[$name], $new[$name]) : $new[$name]; + } + $depend_service->writeArrayToJsonFile($original, $dir . $uniapp_package); + } + } + + /** + * 处理手机端 + * @param string $verson_no + * @return true + */ + public function handleUniapp() { + $code_dir = $this->upgrade_dir .$this->upgrade_task['key'] . DIRECTORY_SEPARATOR . 'download' . DIRECTORY_SEPARATOR . 'code' . DIRECTORY_SEPARATOR; + dir_copy($code_dir . 'uni-app', $this->root_path . 'uni-app'); + + $addon_list = (new CoreAddonService())->getInstallAddonList(); + if (!empty($addon_list)) { + + foreach ($addon_list as $addon => $item) { + $this->addon = $addon; + + // 编译 diy-group 自定义组件代码文件 + $this->compileDiyComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + + // 编译 pages.json 页面路由代码文件 + $this->installPageCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR); + + // 编译 加载插件标题语言包 + $this->compileLocale($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + } + } + return true; + } + + /** + * 执行升级sql + * @param string $sql_file + * @return true + */ + private function executeSql(string $sql_file) { + $sql_content = file_get_contents($sql_file); + + if (!empty($sql_content)) { + $prefix = config('database.connections.mysql.prefix'); + $sql_data = array_filter($this->getSqlQuery($sql_content)); + + if (!empty($sql_data)) { + foreach ($sql_data as $sql) { + $sql = $prefix ? $this->handleSqlPrefix($sql, $prefix) : $sql; + Db::query($sql); + } + } + } + return true; + } + + /** + * 刷新菜单 + * @return void + */ + public function refreshMenu() { + if ($this->upgrade_task['upgrade']['app_key'] == AddonDict::FRAMEWORK_KEY) { + (new InstallSystemService())->installMenu(); + } else { + (new CoreMenuService())->refreshAddonMenu($this->upgrade_task['upgrade']['app_key']); + } + return true; + } + + /** + * 安装计划任务 + * @return true + */ + public function installSchedule() { + if ($this->upgrade_task['upgrade']['app_key'] == AddonDict::FRAMEWORK_KEY) { + (new CoreScheduleInstallService())->installSystemSchedule(); + } else { + (new CoreScheduleInstallService())->installAddonSchedule($this->upgrade_task['upgrade']['app_key']); + } + return true; + } + + /** + * 更新完成 + * @return void + */ + public function upgradeComplete() { + $addon = $this->upgrade_task['upgrade']['app_key']; + if ($addon != AddonDict::FRAMEWORK_KEY) { + $core_addon_service = new CoreAddonService(); + $install_data = $core_addon_service->getAddonConfig($addon); + $install_data['icon'] = 'addon/' . $addon . '/icon.png'; + $core_addon_service->set($install_data); + } + $this->clearUpgradeTask(5); + return true; + } + + /** + * 升级出错之后的处理 + * @return true|void + */ + public function upgradeErrorHandle() { + try { + if (isset($this->upgrade_task['is_cover'])) { + $restore_service = (new RestoreService()); + $restore_service->restoreCode(); + $restore_service->restoreSql(); + } + $this->clearUpgradeTask(5); + return true; + } catch (\Exception $e) { + $this->clearUpgradeTask(5); + return true; + } + } + + /** + * 获取升级内容 + * @param string $addon + * @return array|\core\util\niucloud\Response|object|\Psr\Http\Message\ResponseInterface + * @throws \GuzzleHttp\Exception\GuzzleException + */ + public function getUpgradeContent(string $addon = '') { + $upgrade = [ + 'product_key' => BaseNiucloudClient::PRODUCT + ]; + if (!$addon) { + $upgrade['app_key'] = AddonDict::FRAMEWORK_KEY; + $upgrade['version'] = config('version.version'); + } else { + $upgrade['app_key'] = $addon; + $upgrade['version'] = (new Addon())->where([ ['key', '=', $addon] ])->value('version'); + } + + return (new CoreModuleService())->getUpgradeContent($upgrade)['data'] ?? []; + } + + /** + * 获取正在进行的升级任务 + * @return mixed|null + */ + public function getUpgradeTask() { + return $this->upgrade_task; + } + + /** + * 清除升级任务 + * @return true + */ + public function clearUpgradeTask(int $delayed = 0) { + if ($delayed) { + Cache::set($this->cache_key, $this->upgrade_task, $delayed); + } else { + Cache::set($this->cache_key, null); + } + return true; + } + + /** + * 获取插件定义的package目录 + * @param string $addon + * @return string + */ + public function geAddonPackagePath(string $addon) + { + return root_path() . 'addon' .DIRECTORY_SEPARATOR . $addon . DIRECTORY_SEPARATOR . 'package' . DIRECTORY_SEPARATOR; + } +} diff --git a/niucloud/app/service/admin/upload/StorageConfigService.php b/niucloud/app/service/admin/upload/StorageConfigService.php new file mode 100644 index 0000000..9117f3b --- /dev/null +++ b/niucloud/app/service/admin/upload/StorageConfigService.php @@ -0,0 +1,116 @@ +getStorageList($this->site_id); + } + + /** + * 获取存储配置 + * @param string $storage_type + * @return array + */ + public function getStorageConfig(string $storage_type) + { + $storage_type_list = StorageDict::getType(); + if(!array_key_exists($storage_type, $storage_type_list)) throw new AdminException('OSS_TYPE_NOT_EXIST'); + $info = (new CoreConfigService())->getConfig($this->site_id, 'STORAGE'); + if(empty($info)) + { + $config_type = ['default' => StorageDict::LOCAL];//初始化 + }else + $config_type = $info['value']; + + $data = [ + 'storage_type' => $storage_type, + 'is_use' => $storage_type == $config_type['default'] ? StorageDict::ON : StorageDict::OFF, + 'name' => $storage_type_list[$storage_type]['name'], + ]; + foreach ($storage_type_list[$storage_type]['params'] as $k_param => $v_param) + { + $data['params'][$k_param] = [ + 'name' => $v_param, + 'value' => $config_type[$storage_type][$k_param] ?? '' + ]; + } + return $data; + + } + + /** + * 云存储配置 + * @param string $storage_type + * @param array $data + * @return bool + */ + public function setStorageConfig(string $storage_type, array $data) + { + $storage_type_list = StorageDict::getType(); + if(!array_key_exists($storage_type, $storage_type_list)) throw new AdminException('OSS_TYPE_NOT_EXIST'); + if($storage_type != FileDict::LOCAL){ + $domain = $data['domain']; + if (!str_contains($domain, 'http://') && !str_contains($domain, 'https://')){ + throw new AdminException('STORAGE_NOT_HAS_HTTP_OR_HTTPS'); + } + } + $info = (new CoreConfigService())->getConfig($this->site_id, 'STORAGE'); + if(empty($info)) + { + $config['default'] = ''; + + }else{ + $config = $info['value']; + } + //初始化数据 + if($data['is_use']) + { + $config['default'] = $storage_type; + }else{ + $config['default'] = ''; + } + foreach ($storage_type_list[$storage_type]['params'] as $k_param => $v_param) + { + $config[$storage_type][$k_param] = $data[$k_param] ?? ''; + } + + return (new CoreConfigService())->setConfig($this->site_id, 'STORAGE', $config); + } + + + +} diff --git a/niucloud/app/service/admin/upload/UploadConfigService.php b/niucloud/app/service/admin/upload/UploadConfigService.php new file mode 100644 index 0000000..5af2842 --- /dev/null +++ b/niucloud/app/service/admin/upload/UploadConfigService.php @@ -0,0 +1,57 @@ +core_upload_config_service = new CoreUploadConfigService(); + } + + /** + * 获取上传配置 + * @return array|Response + */ + public function getUploadConfig() + { + return $this->core_upload_config_service->getUploadConfig($this->site_id); + + } + + /** + * 上传设置 + * @param array $data + * @return SysConfig|bool|Model + */ + public function setUploadConfig(array $data) + { + return $this->core_upload_config_service->setUploadConfig($this->site_id, $data); + } + + + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/upload/UploadService.php b/niucloud/app/service/admin/upload/UploadService.php new file mode 100644 index 0000000..2eddf29 --- /dev/null +++ b/niucloud/app/service/admin/upload/UploadService.php @@ -0,0 +1,70 @@ +root_path.'/'.'image'.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_upload_service = new CoreUploadService($is_attachment); + //如果没有选择相册分组的话,就选择第一个相册分组 + return $core_upload_service->image($file, $this->site_id, $dir, $cate_id); + } + + /** + * 附件库上传视频 + * @param $file + * @param int $cate_id + * @return array + */ + public function video($file, int $cate_id = 0){ + $dir = $this->root_path.'/'.'video'.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_upload_service = new CoreUploadService(true); + return $core_upload_service->video($file, $this->site_id, $dir, $cate_id); + } + + /** + * 文件上传 + * @param $file + * @param string $type + * @return array + * @throws Exception + */ + public function document($file, string $type){ + if(!in_array($type, FileDict::getSceneType())) + throw new UploadFileException('UPLOAD_TYPE_ERROR'); + $dir = $this->root_path.'/document/'.$type.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_upload_service = new CoreUploadService(); + return $core_upload_service->document($file, $this->site_id, $type, $dir, StorageDict::LOCAL); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/user/UserRoleService.php b/niucloud/app/service/admin/user/UserRoleService.php new file mode 100644 index 0000000..9360596 --- /dev/null +++ b/niucloud/app/service/admin/user/UserRoleService.php @@ -0,0 +1,146 @@ +model = new SysUserRole(); + } + + /** + * 添加用户权限(添加站点用户) + * @param int $uid + * @param array $data + * @param int $site_id + * @return true + */ + public function add(int $uid, array $data, int $site_id = 0){ + $user_role_model = new SysUserRole(); + $is_exist = $user_role_model->where([ ['uid', '=', $uid], ['site_id', '=', $site_id] ])->count(); + if ($is_exist) throw new CommonException('SITE_USER_EXIST'); + + $is_admin = $data['is_admin'] ?? 0; + $role_data = array( + 'uid' => $uid, + 'is_admin' => $is_admin, + 'site_id' => $site_id == 0 ? $this->site_id : $site_id + ); + if(!$is_admin){ + //校验权限越界 + $role_data['role_ids'] = $data['role_ids'] ?? []; + } + $user_role_model->save($role_data); + return true; + } + + /** + * 更新用户权限(编辑站点用户) + * @param int $site_id + * @param int $uid + * @param array $role_ids + * @return bool + */ + public function edit(int $site_id, int $uid, array $role_ids){ + $user_role = $this->model->where([['uid', '=', $uid], ['site_id', '=', $site_id]])->findOrEmpty(); + if ($user_role->isEmpty()) + throw new AdminException('NO_SITE_USER_ROLE'); + + $is_admin = $user_role->is_admin; + if($is_admin)//超级管理员不允许改动权限 + throw new AdminException('ADMIN_NOT_ALLOW_EDIT_ROLE'); + if (!empty(array_diff_assoc($role_ids, $user_role->role_ids))) { + //校验权限越界 + $user_role->save(['role_ids' => $role_ids]); + $cache_name = 'user_role_'.$uid.'_'.$site_id; + Cache::delete($cache_name); + return true; + } + return false; + } + + /** + * 用户权限信息(获取用户对应站点权限) + * @param int $site_id + * @param int $uid + * @return mixed + */ + public function getUserRole(int $site_id, int $uid){ + $cache_name = 'user_role_'.$uid.'_'.$site_id; + return cache_remember( + $cache_name, + function() use($uid, $site_id) { + $user_role_model = new SysUserRole(); + $where = array( + ['uid', '=', $uid], + ['site_id', '=', $site_id] + ); + return $user_role_model->where($where)->findOrEmpty()->toArray(); + }, + [self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id] + ); + } + + /** + * 获取用户默认站点(切勿用于平台管理端) + * @param int $uid + * @return SysUserRole|array|mixed|Model + */ + public function getUserDefaultSiteId(int $uid){ + $user_role_model = new SysUserRole(); + $default_site_id = $this->request->defaultSiteId(); + return $user_role_model->where([['uid', '=', $uid], ['site_id', '<>', $default_site_id]])->findOrEmpty()?->site_id; + } + + /** + * 通过角色id组获取角色 + * @param array $role_ids + * @param int $site_id + * @return mixed + */ + public function getRoleByUserRoleIds(array $role_ids, int $site_id){ + sort($role_ids); + $cache_name = 'role_by_ids_'.md5(implode(',', $role_ids)).'_'.$site_id; + return cache_remember( + $cache_name, + function() use($role_ids, $site_id) { + $where = array( + ['role_id', 'in', $role_ids], + ['site_id', '=', $site_id] + ); + return SysRole::where($where)->column('role_name'); + }, + [self::$role_cache_name, RoleService::$cache_tag_name.$this->site_id] + ); + } + + +} diff --git a/niucloud/app/service/admin/user/UserService.php b/niucloud/app/service/admin/user/UserService.php new file mode 100644 index 0000000..cb169c6 --- /dev/null +++ b/niucloud/app/service/admin/user/UserService.php @@ -0,0 +1,318 @@ +model = new SysUser(); + } + + /** + * 用户列表 + * @param array $where + * @return array + */ + public function getPage(array $where) + { + return $this->getPageList($this->model, $where, 'uid,username,head_img,real_name,last_ip,last_time,login_count,status', 'uid desc',['status_name']); + } + + + /** + * 用户详情 + * @param int $uid + * @return array + */ + public function getInfo(int $uid){ + $where = array( + ['uid', '=', $uid], + ); + $field = 'uid, username, head_img, real_name, last_ip, last_time, create_time, login_count, status, delete_time, update_time'; + $user = $this->model->where($where)->field($field)->append(['status_name'])->findOrEmpty(); + return $user->toArray(); + } + + /** + * 获取用户列表 + * @param array $where + * @return array + */ + public function getUserAdminPage(array $where) + { + $site_id = $this->site_id; + $field = 'id,SysUserRole.uid,site_id,role_ids,SysUserRole.create_time,is_admin,SysUserRole.status'; + $order = 'SysUserRole.create_time desc'; + $search_model = (new SysUserRole()) + ->field($field) + ->order($order) + ->with('userinfo') + ->hasWhere('userinfo', function ($query) use ($where, $site_id) { + $condition = [ + ['SysUserRole.site_id', '=', $site_id ] + ]; + if (!empty($where['username'])) $condition[] = ['username', 'like', "%{$where['username']}%"]; + if (!empty($where['realname'])) $condition[] = ['realname', 'like', "%{$where['realname']}%"]; + $query->where($condition); + }) + ->append(['status_name']); + + return $this->pageQuery($search_model, function ($item, $key) { + if (!empty($item->role_ids)) { + $item->role_array = (new UserRoleService())->getRoleByUserRoleIds($item->role_ids, $this->site_id); + } else { + $item->role_array = []; + } + }); + } + + /** + * 获取用户信息 + * @param int $uid + * @return array + */ + public function getUserAdminInfo(int $uid) + { + $field = 'id,uid,site_id,role_ids,create_time,is_admin,status'; + $info = (new SysUserRole())->where([ ['uid', '=', $uid], ['site_id', '=', $this->site_id ] ]) + ->field($field) + ->with('userinfo') + ->findOrEmpty() + ->toArray(); + + if (!empty($info)) { + if (!empty($info['role_ids'])) { + $info['role_array'] = (new UserRoleService())->getRoleByUserRoleIds($info['role_ids'], $this->site_id); + } else { + $info['role_array'] = []; + } + } + return $info; + } + + /** + * 添加用户(添加用户,不添加站点) + * @param array $data + * @return bool + * @throws Exception + */ + public function add(array $data){ + $user_data = [ + 'username' => $data['username'], + 'head_img' => $data['head_img'], + 'status' => $data['status'], + 'real_name' => $data['real_name'], + 'password' => create_password($data['password']) + ]; + $user = $this->model->create($user_data); + return $user?->uid; + } + + /** + * 添加对应站点用户(添加站点,同时添加站点用户,用于添加站点以及站点添加站点用户) + * @param $data + * @param $site_id + * @return bool + */ + public function addSiteUser($data, $site_id) + { + Db::startTrans(); + try { + if (isset($data['uid']) && !empty($data['uid'])) { + $uid = $data['uid']; + $user = $this->model->where([ ['uid', '=', $uid] ])->field('uid')->findOrEmpty(); + if ($user->isEmpty()) { + Db::commit(); + throw new AdminException('USER_NOT_EXIST'); + } + } else { + //添加用户 + $uid = $this->add($data); + } + $role_ids = $data['role_ids'] ?? []; + $is_admin = $data['is_admin'] ?? 0; + //创建用户站点管理权限 + (new UserRoleService())->add($uid, ['role_ids' => $role_ids, 'is_admin' => $is_admin], $site_id); + Db::commit(); + return $uid; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + } + + /** + * 更新对应站点用户 + * @param $uid + * @param $data + * @param $site_id + * @return true + */ + public function editSiteUser($uid, $data, $site_id) + { + Db::startTrans(); + try { + //添加用户 + $this->edit($uid, $data); + $role_ids = $data['role_ids'] ?? []; + $is_admin = $data['is_admin'] ?? 0; + //创建用户站点管理权限 + (new UserRoleService())->edit($site_id, $uid, $role_ids); + Db::commit(); + return true; + } catch ( Exception $e) { + Db::rollback(); + throw new AdminException($e->getMessage()); + } + } + + /** + * 检测用户名是否重复 + * @param $username + * @return bool + * @throws DbException + */ + public function checkUsername($username) + { + $count = $this->model->where([['username', '=', $username]])->count(); + if($count > 0) + { + return true; + } + else return false; + } + + /** + * 用户模型对象 + * @param int $uid + * @return SysUser|array|mixed|Model + */ + public function find(int $uid){ + + $user = $this->model->findOrEmpty($uid); + if ($user->isEmpty()) + throw new AdminException('USER_NOT_EXIST'); + return $user; + } + + /** + * 编辑用户 + * @param int $uid + * @param array $data + * @return true + */ + public function edit(int $uid, array $data){ + $user = $this->find($uid); + $user_data = [ + ]; + $is_off_status = false; + if(isset($data['status'])){ + $this->statusChange($uid, $data['status']); + if($data['status'] == UserDict::OFF) + $is_off_status = true; + } + if(isset($data['head_img'])){ + $user_data['head_img'] = $data['head_img']; + } + if(isset($data['real_name'])){ + $user_data['real_name'] = $data['real_name']; + } + + $password = $data['password'] ?? ''; + $is_change_password = false; + if(!empty($password) && !check_password($password, $user->password)){ + $user_data['password'] = create_password($password); + $is_change_password = true; + } + if(empty($user_data)) + return true; + //更新用户信息 + $user->save($user_data); + //更新权限 禁用用户 修改密码 都会清理token + if($is_off_status || $is_change_password){ + LoginService::clearToken($uid); + } + return true; + } + + /** + * 改变用户状态 + * @param $uid + * @param $status + * @return true + */ + public function statusChange($uid, $status) { + (new SysUserRole())->where([ ['uid', '=', $uid], ['site_id', '=', $this->uid] ])->update(['status' => $status]); + LoginService::clearToken($uid); + return true; + } + + /** + * 删除 + * @param int $uid + * @return true + */ + public function del(int $uid){ + $where = [ + ['uid', '=', $uid], + ['site_id', '=', $this->site_id] + ]; + (new SysUserRole())->where($where)->delete(); + return true; + + } + + /** + * 通过账号获取管理员信息 + * @param string $username + * @return SysUser|array|mixed|Model + */ + public function getUserInfoByUsername(string $username){ + return $this->model->where([['username', '=',$username]])->findOrEmpty(); + } + + /** + * 获取全部用户列表(用于平台整体用户管理) + * @param array $where + * @return array + */ + public function getUserAllPage(array $where) + { + $field = 'uid, username, head_img'; + return $this->model->withSearch(['username', 'realname', 'create_time'], $where) + ->field($field) + ->order('uid desc') + ->select() + ->toArray(); + } +} diff --git a/niucloud/app/service/admin/weapp/WeappConfigService.php b/niucloud/app/service/admin/weapp/WeappConfigService.php new file mode 100644 index 0000000..f4b2552 --- /dev/null +++ b/niucloud/app/service/admin/weapp/WeappConfigService.php @@ -0,0 +1,61 @@ +getWeappConfig($this->site_id); + return array_merge($config_info, $this->getWeappStaticInfo()); + + } + + /** + * 设置配置 + * @param array $data + * @return SysConfig|bool|Model + */ + public function setWeappConfig(array $data){ + return (new CoreWeappConfigService())->setWeappConfig($this->site_id, $data); + } + + /** + *查询微信小程序需要的静态信息 + * @return array + */ + public function getWeappStaticInfo(){ + $domain = request()->domain(); + return [ + 'serve_url' => (string)url('/api/weapp/serve/'.$this->site_id, [],'',true), + 'request_url' => $domain, + 'socket_url' => "wss://".request()->host(), + 'upload_url' => $domain, + 'download_url' => $domain, + 'upload_ip' => '8.140.96.55' + ]; + } +} diff --git a/niucloud/app/service/admin/weapp/WeappPackageService.php b/niucloud/app/service/admin/weapp/WeappPackageService.php new file mode 100644 index 0000000..fb12c5e --- /dev/null +++ b/niucloud/app/service/admin/weapp/WeappPackageService.php @@ -0,0 +1,33 @@ +model = new Applet(); + } + + public function add(array $data) + { + $data['version_num'] = version_to_int($data['version']);//版本号数字 + $data['u'] = $this->uid;//发布者 + $data['status'] = ''; + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/weapp/WeappTemplateService.php b/niucloud/app/service/admin/weapp/WeappTemplateService.php new file mode 100644 index 0000000..67c09b0 --- /dev/null +++ b/niucloud/app/service/admin/weapp/WeappTemplateService.php @@ -0,0 +1,99 @@ +site_id; + $core_notice_service = new CoreNoticeService(); + $list = $core_notice_service->getList($site_id); + $template = []; + foreach ($list as $k => $v){ + if(in_array(NoticeTypeDict::WEAPP, $v['support_type'])) $template[] = $v; + } + return $template; + } + + /** + * 同步微信公众号消息模板 + * @param array $keys + * @return true + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function syncAll(array $keys = []){ + $site_id = $this->site_id; + $core_notice_service = new CoreNoticeService(); + $list = $core_notice_service->getList($site_id, $keys); + if(empty($list)) throw new NoticeException('NOTICE_TEMPLATE_NOT_EXIST'); + + foreach($list as $v){ + $this->syncItem($v); + } + return true; + } + + /** + * @param $item + * @return true + */ + public function syncItem($item){ + $key = $item['key'] ?? ''; + $weapp = $item['weapp'] ?? []; + $tid = $weapp['tid'] ?? ''; + if(empty($tid)) $error = 'WECHAT_TEMPLATE_NEED_NO'; + $weapp_template_id = $item['weapp_template_id']; + //删除原来的消息模板 + $template_loader = (new TemplateLoader(NoticeTypeDict::WEAPP, ['site_id' => $this->site_id])); + $template_loader->delete(['template_id' => $weapp_template_id ]); +// (new CoreWeappTemplateService())->deleteTemplate($this->site_id, $weapp_template_id); + //新的消息模板 + + $kid_list = $weapp['kid_list'] ?? []; + $scene_desc = $weapp['scene_desc'] ?? ''; +// $res = (new CoreWeappTemplateService())->addTemplate($this->site_id, $tid, $kid_list, $scene_desc); + $res = $template_loader->addTemplate(['tid' => $tid, 'kid_list' => $kid_list, 'scene_desc' => $scene_desc ]); + $notice_service = new NoticeService(); + if (isset($res[ 'errcode' ]) && $res[ 'errcode' ] == 0) { + //修改 + $notice_service->modify($key, 'weapp_template_id', $res[ 'priTmplId' ]); + } else { + throw new NoticeException($res[ 'errmsg' ]); + } + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/admin/weapp/WeappVersionService.php b/niucloud/app/service/admin/weapp/WeappVersionService.php new file mode 100644 index 0000000..9ec9351 --- /dev/null +++ b/niucloud/app/service/admin/weapp/WeappVersionService.php @@ -0,0 +1,117 @@ +model = new WeappVersion(); + } + + /** + * 添加小程序版本 + * @param array $data + */ + public function add(array $data) + { + $uploading = $this->model->where([ ['site_id', '=', $this->site_id], ['status', '=', 0] ])->field('id')->findOrEmpty(); + if (!$uploading->isEmpty()) throw new CommonException('WEAPP_UPLOADING'); + + $version_no = $this->model->where([ ['site_id', '=', $this->site_id] ])->order('version_no desc')->field('version_no')->findOrEmpty()->toArray()['version_no'] ?? 0; + $version_no += 1; + $version = "1.0.{$version_no}"; + + $upload_res = (new CoreWeappCloudService())->uploadWeapp([ + 'site_id' => $this->site_id, + 'version' => $version, + 'desc' => $data['desc'] ?? '' + ]); + + $res = $this->model->create([ + 'site_id' => $this->site_id, + 'version' => $version, + 'version_no' => $version_no, + 'desc' => $data['desc'] ?? '', + 'create_time' => time(), + 'task_key' => $upload_res['key'] + ]); + return $res->id; + } + + public function getPreviewImage() { + try { + return (new CoreWeappCloudService())->getWeappPreviewImage(); + } catch (\Exception $e) { + return ''; + } + } + + /** + * 获取小程序版本列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id, version, version_no, desc, create_time, status, fail_reason, task_key'; + $order = 'version_no desc'; + $where[] = ['site_id', '=', $this->site_id]; + $search_model = $this->model->where($where)->field($field)->order($order)->append(['status_name']); + return $this->pageQuery($search_model); + } + + /** + * 编辑 + * @param int $id + * @param array $data + * @return true + */ + public function edit(int $id, array $data) + { + $data['status'] = 0; + $data['update_time'] = time(); + $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id] ])->create($data); + return true; + } + + /** + * 删除 + * @param int $id + * @return true + */ + public function del(int $id){ + $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id]])->delete(); + return true; + } + + /** + * 获取小程序上传日志 + * @param string $key + * @return null + */ + public function getUploadLog(string $key) { + return (new CoreWeappCloudService())->getWeappCompileLog($key); + } +} diff --git a/niucloud/app/service/admin/wechat/WechatConfigService.php b/niucloud/app/service/admin/wechat/WechatConfigService.php new file mode 100644 index 0000000..5cdf30d --- /dev/null +++ b/niucloud/app/service/admin/wechat/WechatConfigService.php @@ -0,0 +1,51 @@ +getWechatConfig($this->site_id); + } + + /** + * 设置配置 + * @param array $data + * @return SysConfig|bool|Model + */ + public function setWechatConfig(array $data){ + return (new CoreWechatConfigService())->setWechatConfig($this->site_id, $data); + } + + /** + *查询微信需要的静态信息 + * @return array + */ + public function getWechatStaticInfo(){ + return (new CoreWechatConfigService())->getWechatStaticInfo($this->site_id); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/wechat/WechatEventService.php b/niucloud/app/service/admin/wechat/WechatEventService.php new file mode 100644 index 0000000..2e495eb --- /dev/null +++ b/niucloud/app/service/admin/wechat/WechatEventService.php @@ -0,0 +1,36 @@ +MsgType){ + case WechatDict::EVENT_SUBSCRIBE : + $message->FromUserName; + break; + } + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/wechat/WechatFansService.php b/niucloud/app/service/admin/wechat/WechatFansService.php new file mode 100644 index 0000000..ef735f8 --- /dev/null +++ b/niucloud/app/service/admin/wechat/WechatFansService.php @@ -0,0 +1,42 @@ +getConfig($this->site_id, 'WECHAT_MENU')['value'] ?? []; + } + + + /** + * 更新微信菜单 + * @param array $data + * @return SysConfig|bool|Model + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function edit(array $data){ + $core_wechat_api_service = new CoreWechatApiService(); + $menu_result = $core_wechat_api_service->menuCreate($this->site_id, $data); + if(!empty($menu_result['errcode']) && $menu_result['errcode'] != 0) + throw new WechatException($menu_result['errmsg']); + + //先尝试改变微信接口菜单 + $core_config_service = new CoreConfigService(); + return $core_config_service->setConfig($this->site_id, 'WECHAT_MENU', $data); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/wechat/WechatReplyService.php b/niucloud/app/service/admin/wechat/WechatReplyService.php new file mode 100644 index 0000000..af89257 --- /dev/null +++ b/niucloud/app/service/admin/wechat/WechatReplyService.php @@ -0,0 +1,113 @@ +core_wechat_reply_service = new CoreWechatReplyService(); + } + + /** + *关键字回复列表 + * @return array + */ + public function getKeywordPage(array $data = []){ + + return $this->core_wechat_reply_service->getKeywordPage($this->site_id, $data); + } + + /** + * 获取关键词回复信息 + * @param int $id + * @return array + */ + public function getKeywordInfo(int $id){ + return $this->core_wechat_reply_service->getKeywordInfo($this->site_id, $id); + } + + /** + * 新增关键词回复 + * @param array $data + * @return true + */ + public function addKeyword(array $data){ + return $this->core_wechat_reply_service->addKeyword($this->site_id, $data); + } + + /** + * 更新关键词回复 + * @param int $id + * @param array $data + * @return WechatReply + */ + public function editKeyword(int $id, array $data){ + return $this->core_wechat_reply_service->editKeyword($this->site_id, $id, $data); + } + + /** + * 删除关键词回复 + * @return void|null + */ + public function delKeyword(int $id){ + return $this->core_wechat_reply_service->delKeyword($this->site_id, $id); + } + + /** + * 获取默认回复 + * @return void|null + */ + public function getDefault(){ + return $this->core_wechat_reply_service->delKeyword($this->site_id); + } + + /** + * 更新默认回复 + * @param array $data + * @return void|null + */ + public function editDefault(array $data){ + return $this->core_wechat_reply_service->editDefault($this->site_id, $data); + } + + + /** + * 获取关注回复 + * @return array + */ + public function getSubscribe(){ + return $this->core_wechat_reply_service->getSubscribe($this->site_id); + + } + + /** + * 更新关注回复 + * @param array $data + * @return void|null + */ + public function editSubscribe(array $data){ + return $this->core_wechat_reply_service->editSubscribe($this->site_id, $data); + } +} \ No newline at end of file diff --git a/niucloud/app/service/admin/wechat/WechatTemplateService.php b/niucloud/app/service/admin/wechat/WechatTemplateService.php new file mode 100644 index 0000000..1a4bfee --- /dev/null +++ b/niucloud/app/service/admin/wechat/WechatTemplateService.php @@ -0,0 +1,99 @@ +site_id; + $core_notice_service = new CoreNoticeService(); + $list = $core_notice_service->getList($site_id, $keys); + if (empty($list)) throw new NoticeException('NOTICE_TEMPLATE_NOT_EXIST'); + foreach ($list as $v) { + $this->syncItem($v); + } + return true; + } + + /** + * @param $item + * @return true + */ + public function syncItem($item) + { + $key = $item[ 'key' ] ?? ''; + $wechat = $item[ 'wechat' ] ?? ''; + $temp_key = $wechat[ 'temp_key' ] ?? ''; + $keyword_name_list = $wechat[ 'keyword_name_list' ] ?? ''; + + if (empty($temp_key)) $error = 'WECHAT_TEMPLATE_NEED_NO'; + $wechat_template_id = $item[ 'wechat_template_id' ]; + //删除原来的消息模板 +// (new CoreWechatTemplateService())->deletePrivateTemplate($this->site_id, $wechat_template_id); + $template_loader = new TemplateLoader('wechat', [ 'site_id' => $this->site_id ]); + $template_loader->delete([ 'templateId' => $wechat_template_id ]); + //新的消息模板 +// $res = (new CoreWechatTemplateService())->addTemplate($this->site_id, $temp_key, $keyword_name_list); + $res = $template_loader->addTemplate([ 'shortId' => $temp_key, 'keyword_name_list' => $keyword_name_list ]); + $notice_service = new NoticeService(); + if (isset($res[ 'errcode' ]) && $res[ 'errcode' ] == 0) { + //修改 + $notice_service->modify($key, 'wechat_template_id', $res[ 'template_id' ]); + } else { + throw new NoticeException($res[ 'errmsg' ]); + } + return true; + } + + /** + * 获取模板消息 + * @return array + */ + public function getList() + { + $site_id = $this->site_id; + $core_notice_service = new CoreNoticeService(); + $list = $core_notice_service->getList($site_id); + $template = []; + foreach ($list as $k => $v) { + if (in_array(NoticeTypeDict::WECHAT, $v[ 'support_type' ])) $template[] = $v; + } + return $template; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/agreement/AgreementService.php b/niucloud/app/service/api/agreement/AgreementService.php new file mode 100644 index 0000000..c04c121 --- /dev/null +++ b/niucloud/app/service/api/agreement/AgreementService.php @@ -0,0 +1,35 @@ +getAgreement($this->site_id, $key); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/captcha/CaptchaService.php b/niucloud/app/service/api/captcha/CaptchaService.php new file mode 100644 index 0000000..8c21184 --- /dev/null +++ b/niucloud/app/service/api/captcha/CaptchaService.php @@ -0,0 +1,46 @@ +create(); + } + + /** + * 核验验证码 + * @return true + */ + public function check(){ + return (new CoreCaptchaService())->check(); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/diy/DiyConfigService.php b/niucloud/app/service/api/diy/DiyConfigService.php new file mode 100644 index 0000000..a9013c5 --- /dev/null +++ b/niucloud/app/service/api/diy/DiyConfigService.php @@ -0,0 +1,52 @@ +getSiteCache($this->site_id); + if (count($site_addon[ 'apps' ]) == 1) { + $key = $site_addon[ 'apps' ][ 0 ][ 'key' ]; + } + } + return (new CoreDiyConfigService())->getBottomConfig($this->site_id, $key); + } + + /** + * 获取启动页配置 + * @return array + */ + public function getStartUpPageConfig($type) + { + return (new CoreDiyConfigService())->getStartUpPageConfig($this->site_id, $type); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/diy/DiyRouteService.php b/niucloud/app/service/api/diy/DiyRouteService.php new file mode 100644 index 0000000..e60a7ed --- /dev/null +++ b/niucloud/app/service/api/diy/DiyRouteService.php @@ -0,0 +1,68 @@ +model = new DiyRoute(); + } + + /** + * 获取页面分享信息 + * @param array $data + * @return array|void + */ + public function getShare(array $data = []) + { + $field = 'id,title,name,page,share,is_share'; + $info = $this->model->field($field)->where([ [ 'page', '=', $data[ 'route' ] ], [ 'site_id', '=', $this->site_id ] ])->findOrEmpty()->toArray(); + $share = []; + if (!empty($info[ 'share' ])) { + $share = json_decode($info[ 'share' ], true); + $share[ 'route' ] = $info[ 'page' ]; + $share[ 'query' ] = ''; + $query = []; + + if (!empty($data[ 'params' ])) { + $query = json_decode($data[ 'params' ], true); + } + + if ($this->member_id > 0) { + $query[ 'mid' ] = $this->member_id; + } + + if (!empty($query)) { + $str = []; + foreach ($query as $k => $v) { + $str[] = $k . '=' . $v; + } + $share[ 'query' ] = implode('&', $str); + } + + $share[ 'url' ] = $share[ 'route' ] . ( $share[ 'query' ] ? '?' . $share[ 'query' ] : '' ); + } + return $share; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/diy/DiyService.php b/niucloud/app/service/api/diy/DiyService.php new file mode 100644 index 0000000..d5f9635 --- /dev/null +++ b/niucloud/app/service/api/diy/DiyService.php @@ -0,0 +1,114 @@ +model = new Diy(); + } + + /** + * 获取自定义页面信息 + * @param array $params + * @return array + */ + public function getInfo(array $params = []) + { + $start_up_page = []; + $page_template = []; + + if (!empty($params[ 'name' ])) { + + // 查询启动页 + $diy_config_service = new DiyConfigService(); + $start_up_page = $diy_config_service->getStartUpPageConfig($params[ 'name' ]); + + $page_template = TemplateDict::getTemplate([ 'key' => [ $params[ 'name' ] ] ]); + if (!empty($page_template)) { + $page_template = $page_template [ $params[ 'name' ] ]; + } + } + + if (!empty($start_up_page) && !empty($page_template) && !empty($start_up_page[ 'page' ]) && $start_up_page[ 'page' ] != $page_template[ 'page' ]) { + $info = $start_up_page; + return $info; + } else { + $condition = [ + [ 'site_id', '=', $this->site_id ] + ]; + if (!empty($params[ 'id' ])) { + $condition[] = [ 'id', '=', $params[ 'id' ] ]; + } elseif (!empty($params[ 'name' ])) { + $condition[] = [ 'name', '=', $params[ 'name' ] ]; + $condition[] = [ 'is_default', '=', 1 ]; + } + + $field = 'id,site_id,title,name,type,template, mode,value,is_default,share,visit_count'; + + $info = $this->model->field($field)->where($condition)->findOrEmpty()->toArray(); + if (empty($info)) { + // 查询默认页面数据 + if (!empty($params[ 'name' ])) { + $page_data = $this->getFirstPageData($params[ 'name' ]); + if (!empty($page_data)) { + $info = [ + 'site_id' => $this->site_id, + 'title' => $page_data[ 'title' ], + 'name' => $page_data[ 'type' ], + 'type' => $page_data[ 'type' ], + 'template' => $page_data[ 'template' ], + 'mode' => $page_data[ 'mode' ], + 'value' => json_encode($page_data[ 'data' ], JSON_UNESCAPED_UNICODE), + 'is_default' => 1, + 'share' => '', + 'visit_count' => 0 + ]; + } + } + } + return $info; + } + } + + /** + * 获取默认页面数据 + * @param $type + * @return array|mixed + */ + public function getFirstPageData($type) + { + $pages = PagesDict::getPages([ 'type' => $type ]); + if (!empty($pages)) { + $template = array_key_first($pages); + $page = array_shift($pages); + $page[ 'template' ] = $template; + $page[ 'type' ] = $type; + return $page; + } + return []; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/login/AuthService.php b/niucloud/app/service/api/login/AuthService.php new file mode 100644 index 0000000..2cac888 --- /dev/null +++ b/niucloud/app/service/api/login/AuthService.php @@ -0,0 +1,102 @@ +model = new Member(); + } + + public function checkSiteAuth(Request $request){ + //如果登录信息非法就报错 + if($this->member_id > 0){ + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['member_id' => $this->member_id, 'site_id' => $this->site_id]); + if($member_info->isEmpty()) + throw new AuthException('MEMBER_NOT_EXIST'); + } + return true; + } + + /** + * 检测站点的合法性 + * @param Request $request + * @return true + */ + public function checkSite(Request $request){ + $site_id = $request->apiSiteId();//todo 可以是依赖传值,也可以通过domain域名来获取site_id + $site_info = (new CoreSiteService())->getSiteCache($site_id); + if(empty($site_info)) throw new AuthException('SITE_NOT_EXIST'); + $rule = strtolower(trim($request->rule()->getRule())); + if($rule != 'site'){ + if ($site_info['status'] == SiteDict::CLOSE || $site_info['expire_time'] < time()) throw new AuthException('SITE_CLOSE_NOT_ALLOW'); + } + $request->siteId($site_id); + return true; + } + + /** + * 绑定手机号 + * @param string $mobile + * @param string $mobile_code + * @return true + */ + public function bindMobile(string $mobile, string $mobile_code){ + + if(empty($mobile)){ + $result = (new CoreWeappAuthService())->getUserPhoneNumber($this->site_id, $mobile_code); + if(empty($result)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + $phone_info = $result['phone_info']; + $mobile = $phone_info['purePhoneNumber']; + if(empty($mobile)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + }else{ + //todo 校验手机号验证码 + (new LoginService())->checkMobileCode($mobile); + } + $member_service = new MemberService(); + $member = $member_service->findMemberInfo(['member_id' => $this->member_id, 'site_id' => $this->site_id]); + if($member->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST'); + + $o_mobile = $member['mobile'];//原始手机号 + if(!empty($o_mobile)) throw new AuthException('MOBILE_IS_BIND_MEMBER'); + + $mobile_member = $member_service->findMemberInfo(['mobile' => $mobile, 'site_id' => $this->site_id]); + if(!$mobile_member->isEmpty()) throw new AuthException('MOBILE_IS_EXIST'); + +// if(empty($mobile)) throw new AuthException('MOBILE_NEEDED');//必须填写 + $member->save([ + 'mobile' => $mobile + ]); + return true; + } + + +} diff --git a/niucloud/app/service/api/login/LoginService.php b/niucloud/app/service/api/login/LoginService.php new file mode 100644 index 0000000..dc9d44c --- /dev/null +++ b/niucloud/app/service/api/login/LoginService.php @@ -0,0 +1,303 @@ +model = new Member(); + } + + /** + * 会员注册 + * @param $data + */ + public function register($data) + { + //检测设置是否自动注册 + //自动注册检测授权信息 + //注册登录 + } + + /** + * 登录操作 + * @param Member $member_info + * @param string $login_type + * @return array + */ + public function login(Member $member_info, string $login_type) + { + //绑定第三方授权 + $this->bingOpenid($member_info); + if (!$member_info->status) throw new ApiException('MEMBER_LOCK'); + $member_info->login_time = time(); + $member_info->login_ip = $this->request->ip(); + $member_info->login_channel = $this->channel; + $member_info->login_type = $login_type; + $member_info->login_count++; + $member_info->last_visit_time = time(); + $member_info->save(); + $token_info = $this->createToken($member_info); + event("MemberLogin", $member_info); + return [ + 'token' => $token_info['token'], + 'expires_time' => $token_info['params']['exp'], + ]; + } + + + /** + * 账号登录 + * @param string $username + * @param string $password + * @return array|false + */ + public function account(string $username, string $password) + { + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['username|mobile' => $username, 'site_id' => $this->site_id]); + if ($member_info->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST');//账号不存在 + if (!check_password($password, $member_info->password)) return false;//密码与账号不匹配 + return $this->login($member_info, MemberLoginTypeDict::USERNAME); + } + + + /** + * 手机号登录 + * @param string $mobile + * @return array + */ + public function mobile(string $mobile){ + //校验手机验证码 + $this->checkMobileCode($mobile); + //登录注册配置 + $config = (new MemberConfigService())->getLoginConfig(); + $is_mobile = $config['is_mobile']; + if($is_mobile != 1) throw new AuthException('MOBILE_LOGIN_UNOPENED'); + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['mobile' => $mobile, 'site_id' => $this->site_id]); + if ($member_info->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST');//账号不存在 + + return $this->login($member_info, MemberLoginTypeDict::MOBILE); + } + + /** + * 生成token + * @param $member_info + * @return array|null + */ + public function createToken($member_info): ?array + { + $expire_time = env('system.api_token_expire_time') ?? 3600;//todo 不一定和管理端合用这个token时限 + return TokenAuth::createToken($member_info->member_id, AppTypeDict::API, ['member_id' => $member_info->member_id, 'username' => $member_info->username, 'site_id' => $member_info->site_id], $expire_time); + } + + /** + * 登陆退出(当前账户) + */ + public function logout(): ?bool + { + self::clearToken($this->member_id, $this->request->apiToken()); + return true; + } + + /** + * 清理token + * @param int $member_id + * @param string|null $token + * @return bool|null + */ + public static function clearToken(int $member_id, ?string $token = ''): ?bool + { + TokenAuth::clearToken($member_id, AppTypeDict::API, $token); + return true; + } + + + /** + * 解析token + * @param string|null $token + * @return array + */ + public function parseToken(?string $token){ + if(empty($token)) + { + //定义专属于授权认证机制的错误响应, 定义专属语言包 + throw new AuthException('MUST_LOGIN', 401); + } + + try { + $token_info = TokenAuth::parseToken($token, AppTypeDict::API); + } catch ( Throwable $e ) { +// if(env('app_debug', false)){ +// throw new AuthException($e->getMessage(), 401); +// }else{ + throw new AuthException('LOGIN_EXPIRE', 401); +// } + } + if(!$token_info) + { + throw new AuthException('MUST_LOGIN', 401); + } + //验证有效次数或过期时间 + return $token_info; + } + + /** + * 手机发送验证码 + * @param $mobile + * @param string $type 发送短信的业务场景 + * @return array + * @throws Exception + */ + public function sendMobileCode($mobile, string $type = ''){ + (new CaptchaService())->check(); + if(empty($mobile)) throw new AuthException('MOBILE_NEEDED'); + //发送 + if(!in_array($type, SmsDict::SCENE_TYPE)) throw new AuthException('MEMBER_MOBILE_CAPTCHA_ERROR'); + $code = str_pad(random_int(1, 9999), 4, 0, STR_PAD_LEFT);// 生成4位随机数,左侧补0 + (new NoticeService())->send('member_verify_code', ['code' => $code, 'mobile' => $mobile]); + //将验证码存入缓存 + $key = md5(uniqid(null, true)); + $cache_tag_name = "mobile_key".$mobile.$type; + $this->clearMobileCode($mobile, $type); + Cache::tag($cache_tag_name)->set($key, [ 'mobile' => $mobile, 'code' => $code, 'type' => $type], 600); + return ['key' => $key]; + } + + public function getMobileCodeCacheName(){ + + } + + public function clearMobileCode($mobile, $type){ + $cache_tag_name = "mobile_key".$mobile.$type; + Cache::tag($cache_tag_name)->clear(); + } + + /** + * 校验手机验证码 + * @param string $mobile + * @return true + */ + public function checkMobileCode(string $mobile){ + if(empty($mobile)) throw new AuthException('MOBILE_NEEDED'); + $mobile_key = request()->param('mobile_key', ''); + $mobile_code = request()->param('mobile_code', ''); + if(empty($mobile_key) || empty($mobile_code)) throw new AuthException('MOBILE_CAPTCHA_ERROR'); + $cache = Cache::get($mobile_key); + if(empty($cache)) throw new AuthException('MOBILE_CAPTCHA_ERROR'); + $temp_mobile = $cache['mobile']; + $temp_code = $cache['code']; + $temp_type = $cache['type']; + if($temp_mobile != $mobile || $temp_code != $mobile_code) throw new AuthException('MOBILE_CAPTCHA_ERROR'); + $this->clearMobileCode($temp_mobile, $temp_type); + return true; + + } + + /** + * 绑定openid + * @param $member + * @return true + */ + public function bingOpenid($member){ + $config = (new MemberConfigService())->getLoginConfig(); + $is_auth_register = $config['is_auth_register']; + $open_id = $this->request->param('openid'); + if(!empty($open_id)){ + Log::write('channel_1'.$this->channel); + if(!empty($this->channel)){ + $openid_field = match($this->channel){ + 'wechat' => 'wx_openid', + 'weapp' => 'weapp_openid', + default => '' + }; + if(!empty($openid_field)){ + if(!$member->isEmpty()){ + if(empty($member->$openid_field)){ + //todo 定义当前第三方授权方没有退出登录功能,故这儿不做openid是否存在账号验证 +// $member_service = new MemberService(); +// $open_member = $member_service->findMemberInfo([$openid_field => $open_id, 'site_id' => $this->site_id]); + + $member->$openid_field = $open_id; + $member->save(); + }else{ + if( $member->$openid_field != $open_id){ + throw new AuthException('MEMBER_IS_BIND_AUTH'); + } + } + } + } + } + } + return true; + } + + /** + * 重置密码 + * @param string $mobile + * @param string $password + */ + public function resetPassword(string $mobile, string $password){ + $member_service = new MemberService(); + //校验手机验证码 + $this->checkMobileCode($mobile); + $member_info = $member_service->findMemberInfo(['mobile' => $mobile, 'site_id' => $this->site_id]); + if ($member_info->isEmpty()) throw new AuthException('MOBILE_NOT_EXIST_MEMBER');//账号不存在 + //todo 需要考虑一下,新的密码和原密码一样能否通过验证 + $password_hash = create_password($password); + $data = array( + 'password' => $password_hash, + ); + $member_service->editByFind($member_info, $data); + self::clearToken($member_info['member_id'], $this->request->apiToken()); + return true; + } + + public function loginScanCode(){ + + } + + public function loginByScanCode(){ + + } + + public function checkScanCode(){ + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/login/RegisterService.php b/niucloud/app/service/api/login/RegisterService.php new file mode 100644 index 0000000..9a2a73d --- /dev/null +++ b/niucloud/app/service/api/login/RegisterService.php @@ -0,0 +1,216 @@ +model = new Member(); + } + + /** + * 会员公共注册 + * @param string $mobile + * @param $data + * @param string $type + * @param bool $is_verify_mobile + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function register(string $mobile, $data, string $type, bool $is_verify_mobile = true) + { + //校验注册方式 + if (empty(MemberRegisterTypeDict::getType()[ $type ])) + throw new AuthException('REG_CHANNEL_NOT_EXIST'); + $data = $this->bindByMobile($mobile, $data, $type, $is_verify_mobile); + $member_service = new MemberService(); + if (!is_array($data)) { + $member_id = $data; + } else { + if (empty($data[ 'nickname' ])) { + if (!empty($data[ 'username' ])) { + $data[ 'nickname' ] = $data[ 'username' ]; + } elseif (!empty($mobile)) { + $data[ 'nickname' ] = substr_replace($mobile, '****', 3, 4); + } else { + $data[ 'nickname' ] = $this->createName(); + } + } + $data[ 'register_channel' ] = $this->channel; + $data[ 'register_type' ] = $type; + $data[ 'site_id' ] = $this->site_id; + $pid = $this->request->get('pid'); + if ($pid > 0) { + $p_member_info = $member_service->findMemberInfo([ 'member_id' => $pid, 'site_id' => $this->site_id ]); + if (!$p_member_info->isEmpty()) $data[ 'pid' ] = $pid;//设置上级推荐人 + } + $member_id = ( new MemberService() )->add($data); + $data[ 'member_id' ] = $member_id; + event('MemberRegister', $data); + CoreMemberService::setMemberNo($this->site_id, $member_id); + } + $member_info = $member_service->findMemberInfo([ 'member_id' => $member_id, 'site_id' => $this->site_id ]); + if ($member_info->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST');//账号已存在 + return ( new LoginService() )->login($member_info, $type); + } + + /** + * 随机创建一个昵称 + * @return string + */ + public function createName() + { + $microtime = substr(microtime(true), strpos(microtime(true), '.') + 1); + $chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + $username = ''; + for ($i = 0; $i < 6; $i++) { + $username .= $chars[ random_int(0, (strlen($chars) - 1)) ]; + } + + return $microtime . strtoupper(base_convert(time() - 1420070400, 10, 36)) . $username; + + } + + /** + * 账号注册 + * @param string $username + * @param string $password + * @param $mobile + * @return array + */ + public function account(string $username, string $password, $mobile) + { + //todo 校验验证码 可以加try catch 后续 + ( new CaptchaService() )->check(); + + //登录注册配置 + $config = ( new MemberConfigService() )->getLoginConfig(); + $is_username = $config[ 'is_username' ]; + //未开启账号密码登录注册 + if ($is_username != 1) throw new AuthException('MEMBER_USERNAME_LOGIN_NOT_OPEN'); + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo([ 'username' => $username, 'site_id' => $this->site_id ]); + if (!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在 + + $password_hash = create_password($password); + $data = array ( + 'username' => $username, + 'password' => $password_hash, + ); + return $this->register($mobile, $data, MemberRegisterTypeDict::USERNAME); + } + + /** + * 手机号注册 + * @param $mobile + * @return array + */ + public function mobile($mobile) + { + //登录注册配置 + $config = ( new MemberConfigService() )->getLoginConfig(); + $is_mobile = $config[ 'is_mobile' ]; + //未开启账号密码登录注册 + if ($is_mobile != 1) throw new AuthException('MEMBER_USERNAME_LOGIN_NOT_OPEN'); + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo([ 'mobile' => $mobile, 'site_id' => $this->site_id ]); + if (!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在 + + $data = array ( + 'mobile' => $mobile, + ); + return $this->register($mobile, $data, MemberRegisterTypeDict::MOBILE); + } + + /** + * 校验是否启用第三方登录注册 + * @return true + */ + public function checkAuth() + { + $config = ( new MemberConfigService() )->getLoginConfig(); + $is_auth_register = $config[ 'is_auth_register' ]; + if ($is_auth_register != 1) throw new AuthException('AUTH_LOGIN_NOT_OPEN');//手机号已存在 + return true; + } + + /** + * 通过手机号尝试绑定已存在会员,没有就绑定数据(todo 仅限注册使用) + * @param string $mobile + * @param array $data + * @param string $type + * @param bool $is_verify + * @return array|mixed + */ + public function bindByMobile($mobile, array $data, string $type, bool $is_verify = true) + { + $config = ( new MemberConfigService() )->getLoginConfig(); + $is_bind_mobile = $config[ 'is_bind_mobile' ]; + + $with_field = match($type){ + MemberLoginTypeDict::USERNAME => 'username', + MemberLoginTypeDict::MOBILE => 'mobile', + MemberLoginTypeDict::WECHAT => 'wx_openid', + MemberLoginTypeDict::WEAPP => 'weapp_openid', + }; + if ($type == MemberLoginTypeDict::MOBILE || $is_bind_mobile == 1) { + if (empty($mobile)) throw new AuthException('MOBILE_NEEDED');//必须填写 + //todo 校验手机号验证码 + if ($is_verify) { + ( new LoginService() )->checkMobileCode($mobile); + } + if ($is_bind_mobile == 1) { + $member_service = new MemberService(); + $member = $member_service->findMemberInfo([ 'mobile' => $mobile, 'site_id' => $this->site_id ]); + if (!$member->isEmpty()) { + if ($type == MemberLoginTypeDict::MOBILE) { + throw new AuthException('MOBILE_IS_EXIST');//手机号注册时发现手机号已存在账号 + } else { + if ($member->$with_field != '') throw new AuthException('MOBILE_IS_EXIST');//手机号已存在 + foreach ($data as $k => $v) { + $member->$k = $v; + } + $member->save(); + return $member->member_id; + } + } + } + $data[ 'mobile' ] = $mobile; + } + return $data; + } + + +} diff --git a/niucloud/app/service/api/member/AddressService.php b/niucloud/app/service/api/member/AddressService.php new file mode 100644 index 0000000..8bbc132 --- /dev/null +++ b/niucloud/app/service/api/member/AddressService.php @@ -0,0 +1,101 @@ +model = new MemberAddress(); + } + + /** + * 获取会员收货地址列表 + * @param array $where + * @return array + */ + public function getList(array $where = []) + { + $field = 'id,member_id,name,mobile,address,address_name,full_address,is_default,type'; + $order = 'is_default desc, id desc'; + + $list = $this->model->where([ ['site_id', '=', $this->site_id],['member_id', '=', $this->member_id ] ])->withSearch(["type"], $where)->field($field)->order($order)->select()->toArray(); + return $list; + } + + /** + * 获取会员收货地址信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,member_id,name,mobile,province_id,city_id,district_id,address,address_name,full_address,lng,lat,is_default,type'; + + $info = $this->model->field($field)->where([ ['id', '=', $id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id ] ])->findOrEmpty()->toArray(); + return $info; + } + + /** + * 添加会员收货地址 + * @param array $data + * @return mixed + */ + public function add(array $data) + { + if ($data['is_default']) { + $this->model->where([ ['member_id', '=', $this->member_id ], ['type', '=', $data['type']] ])->update(['is_default' => 0]); + } + $data['member_id'] = $this->member_id; + $data['site_id'] = $this->site_id; + $res = $this->model->create($data); + return $res->id; + } + + /** + * 会员收货地址编辑 + * @param int $id + * @param array $data + * @return bool + */ + public function edit(int $id, array $data) + { + if ($data['is_default']) { + $this->model->where([ ['member_id', '=', $this->member_id ], ['type', '=', $data['type']] ])->update(['is_default' => 0]); + } + $this->model->where([ ['id', '=', $id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id ] ])->update($data); + return true; + } + + /** + * 删除会员收货地址 + * @param int $id + * @return bool + */ + public function del(int $id) + { + $model = $this->model->where([ ['id', '=', $id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id ] ])->find(); + $res = $model->delete(); + return $res; + } + +} diff --git a/niucloud/app/service/api/member/MemberAccountService.php b/niucloud/app/service/api/member/MemberAccountService.php new file mode 100644 index 0000000..9c01ad3 --- /dev/null +++ b/niucloud/app/service/api/member/MemberAccountService.php @@ -0,0 +1,67 @@ +model = new MemberAccountLog(); + } + + /** + * 会员账户流水列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $where['member_id'] = $this->member_id; + $field = 'id, member_id, site_id, account_type, account_data, from_type, related_id, create_time, memo'; + $search_model = $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['member_id','account_type', 'from_type', 'create_time'],$where)->field($field)->order('create_time desc')->append(['from_type_name', 'account_type_name']); + return $this->pageQuery($search_model); + } + /** + * 账户流水详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, member_id, site_id, account_type, account_data, from_type, related_id, create_time, memo'; + return $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id]])->field($field)->append(['from_type_name', 'account_type_name'])->findOrEmpty()->toArray(); + } + + /** + * 会员账户统计数量 + * @param array $where + * @return int + * @throws DbException + */ + public function getCount(array $where = []){ + $where['member_id'] = $this->member_id; + + return $this->model->where([['site_id', '=', $this->site_id]])->withSearch(['member_id','account_type', 'from_type', 'create_time'],$where)->count(); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/member/MemberCashOutAccountService.php b/niucloud/app/service/api/member/MemberCashOutAccountService.php new file mode 100644 index 0000000..36ec0f2 --- /dev/null +++ b/niucloud/app/service/api/member/MemberCashOutAccountService.php @@ -0,0 +1,110 @@ +model = new MemberCashOutAccount(); + } + + /** + * 会员提现账户列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $where['member_id'] = $this->member_id; + $where['site_id'] = $this->site_id; + $field = 'account_id,site_id,member_id,account_type,bank_name,realname,account_no'; + $search_model = $this->model->where($where)->field($field)->order('create_time desc'); + + return $this->pageQuery($search_model); + } + + /** + * 提现账户详情 + * @param int $account_id + * @return array + */ + public function getInfo(int $account_id) + { + $field = 'account_id,site_id,member_id,account_type,bank_name,realname,account_no'; + return $this->model->where([['account_id', '=', $account_id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id]])->field($field)->findOrEmpty()->toArray(); + } + + /** + * 获取首条信息 + * @param array $where + * @param string $order_field + * @param string $order + * @return array + */ + public function getFirstInfo(array $where, $order_field = 'create_time', string $order = 'desc'){ + $where[] = ['site_id', '=', $this->site_id]; + $where[] = ['member_id', '=', $this->member_id]; + $field = 'account_id,site_id,member_id,account_type,bank_name,realname,account_no'; + return $this->model->where($where)->order($order_field, $order)->field($field)->findOrEmpty()->toArray(); + } + + /** + * 添加提现账号 + * @param array $data + * @return int + */ + public function add(array $data) + { + $data['site_id'] = $this->site_id; + $data['member_id'] = $this->member_id; + $data['create_time'] = time(); + $res = $this->model->create($data); + return $res->account_id; + } + + /** + * 修改提现账户 + * @param int $account_id + * @param array $data + * @return true + */ + public function edit(int $account_id, array $data) + { + $data['update_time'] = time(); + $this->model->update($data, [ [ 'site_id', '=', $this->site_id ], [ 'member_id', '=', $this->member_id ], ['account_id', '=', $account_id] ]); + return true; + } + + /** + * 删除 + * @param int $account_id + * @return true + */ + public function del(int $account_id) + { + $where = [ + ['member_id', '=', $this->member_id], + ['site_id', '=', $this->site_id], + ['account_id', '=', $account_id] + ]; + $this->model->where($where)->delete(); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/member/MemberCashOutService.php b/niucloud/app/service/api/member/MemberCashOutService.php new file mode 100644 index 0000000..f7cf0ee --- /dev/null +++ b/niucloud/app/service/api/member/MemberCashOutService.php @@ -0,0 +1,104 @@ +model = new MemberCashOut(); + } + + /** + * 会员提现列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $where['member_id'] = $this->member_id; + $where['site_id'] = $this->site_id; + $field = 'id,site_id,cash_out_no,member_id,account_type,transfer_type,transfer_realname,transfer_mobile,transfer_bank,transfer_account,transfer_status,transfer_time,apply_money,rate,service_money,money,audit_time,status,remark,create_time,refuse_reason'; + $search_model = $this->model->where($where)->withSearch(['member_id','status', 'create_time'],$where)->with(['memberInfo', 'transfer'])->field($field)->append(['account_type_name', 'transfer_type_name', 'status_name', 'transfer_status_name'])->order('create_time desc'); + + return $this->pageQuery($search_model); + } + + /** + * 提现详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id,site_id,cash_out_no,member_id,transfer_type,transfer_realname,transfer_mobile,transfer_bank,transfer_account,transfer_fail_reason,transfer_time,apply_money,rate,service_money,money,audit_time,status,remark,create_time,refuse_reason'; + return $this->model->where([['id', '=', $id], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id]])->with(['memberInfo', 'transfer'])->field($field)->append(['account_type_name', 'transfer_type_name', 'status_name', 'transfer_status_name'])->findOrEmpty()->toArray(); + } + + + /** + * 申请提现 + * @param array $data + * @return true + */ + public function apply(array $data){ + + return (new CoreMemberCashOutService())->apply($this->site_id, $this->member_id, $data); + } + + + /** + * 撤销提现申请 + * @param int $id + * @return true + */ + public function cancel(int $id){ + $cash_out = $this->model->where([ + ['site_id', '=', $this->site_id], + ['id', '=', $id], + ['member_id', '=', $this->member_id], + ])->findOrEmpty(); + + if($cash_out->isEmpty()) throw new ApiException('RECHARGE_LOG_NOT_EXIST'); + if($cash_out['status'] != MemberCashOutDict::WAIT_AUDIT) throw new CommonException('CASHOUT_STATUS_NOT_IN_WAIT_AUDIT'); + $cash_out->save( + + [ + 'cancel_time' => time(), + 'status' => MemberCashOutDict::CANCEL + ] + ); + (new CoreMemberCashOutService())->giveback($this->site_id, $cash_out); + return true; + } + + /** + * 获取提现配置 + * @return array + */ + public function getCashOutConfig(){ + return (new CoreMemberConfigService())->getCashOutConfig($this->site_id); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/member/MemberConfigService.php b/niucloud/app/service/api/member/MemberConfigService.php new file mode 100644 index 0000000..24026a0 --- /dev/null +++ b/niucloud/app/service/api/member/MemberConfigService.php @@ -0,0 +1,32 @@ +getLoginConfig($this->site_id); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/member/MemberLogService.php b/niucloud/app/service/api/member/MemberLogService.php new file mode 100644 index 0000000..87b3fed --- /dev/null +++ b/niucloud/app/service/api/member/MemberLogService.php @@ -0,0 +1,40 @@ +edit(['last_visit_time' => time()]); + return true; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/api/member/MemberService.php b/niucloud/app/service/api/member/MemberService.php new file mode 100644 index 0000000..f45dfea --- /dev/null +++ b/niucloud/app/service/api/member/MemberService.php @@ -0,0 +1,146 @@ +model = new Member(); + } + + /** + * 新增会员 + */ + public function add(array $data){ + $data['site_id'] = $this->site_id; + return $this->model->create($data)?->member_id ?? 0; + } + + /** + * 更新会员 + * @param array $data + * @return true + */ + public function edit(array $data) + { + $member = $this->findMemberInfo(['member_id' => $this->member_id, 'site_id' => $this->site_id]); + + if($member->isEmpty()) throw new ApiException('MEMBER_NOT_EXIST'); + $member->allowField(['nickname', 'headimg', 'birthday', 'sex', 'last_visit_time'])->save($data); + return true; + } + + /** + * 获取会员信息 + * @return array + */ + public function getInfo() + { + $field = 'member_id, site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, balance, growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, wx_openid, weapp_openid, commission, commission_get, commission_cash_outing'; + return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->append(['sex_name'])->findOrEmpty()->toArray(); + } + + /** + * 会员中心信息 + */ + public function center() + { + $field = 'member_id, site_id, username, member_no, mobile, register_channel, nickname, headimg, member_level, member_label, login_ip, login_type, login_time, create_time, last_visit_time, last_consum_time, sex, status, birthday, point, balance, growth, is_member, member_time, is_del, province_id, city_id, district_id, address, location, money, money_get, commission, commission_get, commission_cash_outing'; + return $this->model->where([['member_id', '=', $this->member_id]])->field($field)->append(['sex_name'])->findOrEmpty()->toArray(); + } + + /** + * 获取会员的模型对象(todo 慎用!!! 现主要用于登录) + * @param array $data + * @return Member|array|mixed|Model !!! 仔细看,返回值是模型对象 如果想要判断是否为空 请用 $member->isEmpty() + */ + public function findMemberInfo(array $data){ + //会员账号 + if(!empty($data['username'])) + $where[] = ['username', '=', $data['username']]; + //会员手机号 + if(!empty($data['mobile'])) + $where[] = ['mobile', '=', $data['mobile']]; + //会员id + if(!empty($data['member_id'])) + $where[] = ['member_id', '=', $data['member_id']]; + //微信公众号openid + if(!empty($data['wx_openid'])) + $where[] = ['wx_openid', '=', $data['wx_openid']]; + //微信小程序openid + if(!empty($data['weapp_openid'])) + $where[] = ['weapp_openid', '=', $data['weapp_openid']]; + + if(!empty($data['username|mobile'])) + $where[] = ['username|mobile', '=', $data['username|mobile']]; + if(empty($where)){ + $where[] = ['member_id', '=', -1]; + } + if(isset($data['site_id']) ) + $where[] = ['site_id', '=', $data['site_id']]; + return $this->model->where($where)->findOrEmpty(); + } + + /** + * 通过对象修改会员信息 + * @param $member + * @param $data + * @return void + */ + public function editByFind($member, $data){ + return $member->save($data); + } + + /** + * 修改字段 + * @param string $field + * @param $data + * @return null + */ + public function modify(string $field, $data) + { + return (new CoreMemberService())->modify($this->site_id, $this->member_id, $field, $data); + } + + public function getQrcode(){ + // 生成会员二维码 + $qrcode_dir = 'upload/member/temp'; + if (!is_dir($qrcode_dir)) mkdir($qrcode_dir, intval('0755', 8), true); + $id = "member-".$this->member_id; + $qrcode_path = "{$qrcode_dir}/order_qrcode_{$this->member_id}.png"; + \core\util\QRcode::png($id, $qrcode_path, 'L', 16, 1); + + // 生成会员条形码 + $barcode_path = (new Barcode(14, $id))->generateBarcode($qrcode_dir, 2); + $detail = []; + $detail['verify_code_qrcode'] = image_to_base64($qrcode_path, true); + $detail['verify_code_barcode'] = image_to_base64($barcode_path); + return $detail; + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/notice/NoticeService.php b/niucloud/app/service/api/notice/NoticeService.php new file mode 100644 index 0000000..153d38a --- /dev/null +++ b/niucloud/app/service/api/notice/NoticeService.php @@ -0,0 +1,49 @@ +send($this->site_id, $key, $data); + } + + /** + * 获取微信小程序订阅消息模板id + * @param string $keys + * @return array + */ + public function getWeappNoticeTemplateId(string $keys) { + return (new SysNotice())->where([ ['site_id', '=', $this->site_id], ['key', 'in', explode(',', $keys) ], ['weapp_template_id', '<>', ''], ['is_weapp', '=', 1] ])->column('weapp_template_id'); + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/order/RechargeOrderService.php b/niucloud/app/service/api/order/RechargeOrderService.php new file mode 100644 index 0000000..d8126af --- /dev/null +++ b/niucloud/app/service/api/order/RechargeOrderService.php @@ -0,0 +1,95 @@ +model = new RechargeOrder(); + } + + /** + * 会员充值 + * @param $data //['order_from' => 'h5', 'ip' => '127.0.0.1', 'member_message' => '','recharge_money' => 12.00] + */ + public function recharge(array $data) + { + $data['order_from'] = $this->channel; + $data['site_id'] = $this->site_id; + $data['member_id'] = $this->member_id; + return (new CoreRechargeOrderService())->create($data); + } + + + /** + * 充值订单分页列表 + * @param array $where + * @return array + */ + public function getPage(array $where) + { + $field = 'order_id, site_id, order_no, order_from, order_type, out_trade_no, order_status, refund_status, member_id, ip, member_message, order_item_money, order_discount_money, order_money, create_time, pay_time, close_time, is_delete, is_enable_refund, remark, invoice_id, close_reason'; + $order = 'create_time desc'; + $where['order_type'] = 'recharge'; + $search_model = $this->model->where([ ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id] ])->withSearch(['order_status'], $where)->field($field)->with(['item' => function($query) { + $query->field('order_item_id, order_id, member_id, item_id, item_type, item_name, item_image, price, num, item_money, is_refund, refund_no, refund_status, create_time'); + }])->order($order)->append(['order_from_name']); + $list = $this->pageQuery($search_model); + $order_status = RechargeOrderDict::getStatus(); + //$refund_status = RechargeOrderDict::getRefundStatus(); + foreach ($list['data'] as $k => $v) + { + $list['data'][$k]['order_status_info'] = $order_status[$v['order_status']] ?? []; + // $list['data'][$k]['refund_status_name'] = $refund_status[$v['refund_status']]['name'] ?? ''; + } + return $list; + } + + /** + * 充值订单详情 + * @param int $order_id + * @return array + */ + public function getDetail(int $order_id) + { + $field = 'order_id, site_id, order_no, order_from, order_type, out_trade_no, order_status, refund_status, member_id, ip, member_message, order_item_money, order_discount_money, order_money, create_time, pay_time, close_time, is_delete, is_enable_refund, remark, invoice_id, close_reason'; + $detail = $this->model->where([['order_type', '=', 'recharge'], ['site_id', '=', $this->site_id], ['member_id', '=', $this->member_id], ['order_id', '=', $order_id]])->field($field)->with(['item' => function($query) { + $query->field('order_item_id, order_id, member_id, item_id, item_type, item_name, item_image, price, num, item_money, is_refund, refund_no, refund_status, create_time'); + }])->append(['order_from_name'])->findOrEmpty()->toArray(); + if(!empty($detail)) + { + $detail['order_status_info'] = RechargeOrderDict::getStatus($detail['order_status']) ?? []; + } + return $detail; + } + + /** + * 充值订单状态 + * @return array|array[]|string + */ + public function getStatus() + { + return RechargeOrderDict::getStatus(); + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/pay/PayService.php b/niucloud/app/service/api/pay/PayService.php new file mode 100644 index 0000000..1a1bee3 --- /dev/null +++ b/niucloud/app/service/api/pay/PayService.php @@ -0,0 +1,108 @@ +core_pay_service = new CorePayService(); + } + + /** + * 去支付 + * @param string $type + * @param string $trade_type + * @param int $trade_id + * @param string $return_url + * @param string $quit_url + * @param string $buyer_id + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function pay(string $type, string $trade_type, int $trade_id, string $return_url = '', string $quit_url = '', string $buyer_id = '', string $voucher = ''){ + + $member = (new CoreMemberService())->getInfoByMemberId($this->site_id, $this->member_id); + switch ($this->channel) { + case ChannelDict::WECHAT://公众号 + $openid = $member['wx_openid'] ?? ''; + break; + case ChannelDict::WEAPP://微信小程序 + $openid = $member['weapp_openid'] ?? ''; + break; + } + + return $this->core_pay_service->pay($this->site_id, $trade_type, $trade_id, $type, $this->channel, $openid ?? '', $return_url, $quit_url, $buyer_id, $voucher); + } + + /** + * 关闭支付 + * @param string $type + * @param string $out_trade_no + * @return null + */ + public function close(string $type, string $out_trade_no){ + return $this->core_pay_service->close($this->site_id, $type); + } + + /** + * 支付异步通知 + * @param string $channel + * @param string $type + * @param string $action + * @return void|null + */ + public function notify(string $channel, string $type, string $action){ + return $this->core_pay_service->notify($this->site_id, $channel, $type, $action); + } + + /** + * 通过交易流水号查询支付信息以及支付方式 + * @param $out_trade_no + * @return array + */ + public function getInfoByOutTradeNo($out_trade_no){ + return $this->core_pay_service->getInfoByOutTradeNo($this->site_id, $out_trade_no, $this->channel); + } + + public function getInfoByTrade(string $trade_type, int $trade_id){ + return $this->core_pay_service->getInfoByTrade($this->site_id, $trade_type, $trade_id, $this->channel); + } + + /** + * 获取支付方法 + * @param string $trade_type + * @return array|array[] + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getPayTypeByTrade(string $trade_type){ + return $this->core_pay_service->getPayTypeByTrade($this->site_id, $trade_type, $this->channel); + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/scan/ScanService.php b/niucloud/app/service/api/scan/ScanService.php new file mode 100644 index 0000000..93dfdbc --- /dev/null +++ b/niucloud/app/service/api/scan/ScanService.php @@ -0,0 +1,44 @@ +core_scan_service = new CoreScanService(); + } + + + /** + * 校验扫码信息 + * @param string $key + * @return mixed + */ + public function checkScan(string $key) + { + return $this->core_scan_service->checkScan($this->site_id, $key); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/site/SiteService.php b/niucloud/app/service/api/site/SiteService.php new file mode 100644 index 0000000..c1af9c8 --- /dev/null +++ b/niucloud/app/service/api/site/SiteService.php @@ -0,0 +1,43 @@ +model = new Site(); + } + + + + /** + * 获取授权当前站点信息(用做缓存) + * @return mixed + */ + public function getSiteCache(){ + + return (new CoreSiteService())->getSiteCache($this->site_id); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/sys/AreaService.php b/niucloud/app/service/api/sys/AreaService.php new file mode 100644 index 0000000..70444e4 --- /dev/null +++ b/niucloud/app/service/api/sys/AreaService.php @@ -0,0 +1,100 @@ +model = new SysArea(); + } + + /** + * 获取地区信息 + * @param int $pid //上级pid + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getListByPid(int $pid = 0) + { + + $cache_name = self::$cache_tag_name.'_api_pid_'.$pid; + return cache_remember( + $cache_name, + function() use($pid) { + return $this->model->where([['pid', '=', $pid]])->field('id, name')->select()->toArray(); + }, + [self::$cache_tag_name] + ); + } + + /** + * 查询地区树列表 + * @param int $level //层级1,2,3 + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAreaTree(int $level = 3) + { + $cache_name = self::$cache_tag_name.'_api_tree_'.$level; + return cache_remember( + $cache_name, + function() use($level) { + $list = $this->model->where([['level', '<=', $level]])->field('id, pid, name')->select()->toArray(); + return list_to_tree($list); + }, + [self::$cache_tag_name] + ); + } + + public function getAreaByAreaCode($id) { + $cache_name = self::$cache_tag_name.'_api_area_'. $id; + return cache_remember( + $cache_name, + function() use($id) { + $level = [1 => 'province', 2 => 'city', 3 => 'district']; + $tree = []; + $area = $this->model->where([ ['id', '=', $id] ])->field('id,level,pid,name')->findOrEmpty(); + + if (!$area->isEmpty()) { + $tree[ $level[ $area['level'] ] ] = $area->toArray(); + + while ($area['level'] > 1) { + $area = $this->model->where([ ['id', '=', $area['pid'] ] ])->field('id,level,pid,name')->findOrEmpty(); + $tree[ $level[ $area['level'] ] ] = $area->toArray(); + } + } + return $tree; + }, + [self::$cache_tag_name] + ); + } + +} diff --git a/niucloud/app/service/api/sys/ConfigService.php b/niucloud/app/service/api/sys/ConfigService.php new file mode 100644 index 0000000..2cf716e --- /dev/null +++ b/niucloud/app/service/api/sys/ConfigService.php @@ -0,0 +1,59 @@ +getCopyright($this->site_id); + } + + /** + * 获取前端域名 + * @return array|string[] + */ + public function getSceneDomain(){ + return (new CoreSysConfigService())->getSceneDomain($this->site_id); + } + + /** + * 获取手机端首页列表 + * @param $data + * @return array + */ + public function getWapIndexList($data) + { + return ( new CoreSysConfigService() )->getWapIndexList($data); + } +} diff --git a/niucloud/app/service/api/upload/Base64Service.php b/niucloud/app/service/api/upload/Base64Service.php new file mode 100644 index 0000000..6f9582f --- /dev/null +++ b/niucloud/app/service/api/upload/Base64Service.php @@ -0,0 +1,42 @@ +root_path.'/'.'image'.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_base64_service = new CoreBase64Service(); + return $core_base64_service->image($content, $this->site_id, $dir); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/api/upload/FetchService.php b/niucloud/app/service/api/upload/FetchService.php new file mode 100644 index 0000000..96dab57 --- /dev/null +++ b/niucloud/app/service/api/upload/FetchService.php @@ -0,0 +1,42 @@ +root_path.'/'.'image'.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_upload_service = new CoreFetchService(); + return $core_upload_service->image($url, $this->site_id, $dir); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/api/upload/UploadService.php b/niucloud/app/service/api/upload/UploadService.php new file mode 100644 index 0000000..6c1e23b --- /dev/null +++ b/niucloud/app/service/api/upload/UploadService.php @@ -0,0 +1,72 @@ +root_path . '/' . 'image' . '/' . $this->site_id . '/' . date('Ym') . '/' . date('d'); + $core_upload_service = new CoreUploadService(); + return $core_upload_service->image($file, $this->site_id, $dir, $this->cate_id); + } + + /** + * 附件库上传视频 + * @param $file + * @return array + * @throws Exception + */ + public function video($file) + { + $dir = $this->root_path . '/' . 'video' . '/' . $this->site_id . '/' . date('Ym') . '/' . date('d'); + $core_upload_service = new CoreUploadService(); + return $core_upload_service->video($file, $this->site_id, $dir, $this->cate_id); + } + + /** + * 文件上传 + * @param $file + * @param string $type + * @return array + * @throws Exception + */ + public function document($file, string $type = '') + { + if(!in_array($type, FileDict::getSceneType())) + throw new UploadFileException('UPLOAD_TYPE_ERROR'); + $dir = $this->root_path.'/document/'.$type.'/'.$this->site_id.'/'.date('Ym').'/'.date('d'); + $core_upload_service = new CoreUploadService(); + return $core_upload_service->document($file, $this->site_id, $type, $dir, StorageDict::LOCAL); + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/weapp/WeappAuthService.php b/niucloud/app/service/api/weapp/WeappAuthService.php new file mode 100644 index 0000000..134357d --- /dev/null +++ b/niucloud/app/service/api/weapp/WeappAuthService.php @@ -0,0 +1,158 @@ +core_weapp_serve_service = new CoreWeappAuthService(); + } + + /** + * 通过code获取微信小程序用户信息 + * @param string $code + * @return array + * @throws InvalidConfigException + */ + public function getUserInfoByCode(string $code){ +// $iv = $this->request->param('iv', ''); +// $encrypted_data = $this->request->param('encrypted_data', ''); + $result = $this->core_weapp_serve_service->session($this->site_id, $code); +// if(empty($result)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); +// $userinfo = $this->core_weapp_serve_service->decryptData($result['session_key'], $iv, $encrypted_data); + $openid = $result['openid'] ?? '';//对应微信的 openid + $unionid = $result['unionid'] ?? '' ;//对应微信的 unionid + if(empty($openid)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + //todo 这儿还可能会获取用户昵称 头像 性别 ....用以更新会员信息 +// $nickname = $userinfo['nickName'] ?? '';//对应微信的 nickname +// $avatar = $userinfo['avatarUrl'] ?? '';//对应微信的 头像地址 +// $sex = $userinfo['gender'];//性别 + return [ + $openid, + $unionid, +// $avatar, +// $nickname, +// $sex + ]; + } + + /** + * 登录 + * @param string $code + * @return array + */ + public function login(string $code) + { + + [ + $openid, + $unionid, +// $avatar, +// $nickname, +// $sex + ] = $this->getUserInfoByCode($code); + + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['weapp_openid' => $openid, 'site_id' => $this->site_id]); + if($member_info->isEmpty()){ + $config = (new MemberConfigService())->getLoginConfig(); + $is_bind_mobile = $config['is_bind_mobile']; + $is_auth_register = $config['is_auth_register']; + if($is_bind_mobile == 0 && $is_auth_register == 1){ + return $this->register($openid); + }else{ + return ['openid' => $openid]; + } + }else{ + //可能会更新用户和粉丝表 + $login_service = new LoginService(); + return $login_service->login($member_info, MemberLoginTypeDict::WEAPP); + } + //todo 业务落地 + + } + + /** + * 注册 + * @param string $openid + * @param string $mobile + * @param string $mobile_code + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws GuzzleException + * @throws InvalidConfigException + * @throws ModelNotFoundException + */ + public function register(string $openid, string $mobile = '', string $mobile_code = ''){ + + if(empty($openid)) throw new AuthException('AUTH_LOGIN_TAG_NOT_EXIST'); + //todo openid可能还需要合法性验证 + $config = (new MemberConfigService())->getLoginConfig(); + $is_bind_mobile = $config['is_bind_mobile']; + if($is_bind_mobile == 1){ + if(empty($mobile)){ + $result = $this->core_weapp_serve_service->getUserPhoneNumber($this->site_id, $mobile_code); + if(empty($result)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + $phone_info = $result['phone_info']; + $mobile = $phone_info['purePhoneNumber']; + if(empty($mobile)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + $is_verify_mobile = false; + }else{ + $is_verify_mobile = true; + } + } + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['weapp_openid' => $openid, 'site_id' => $this->site_id]); + + if(!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在, 不能在注册 + $register_service = new RegisterService(); + return $register_service->register($mobile ?? '', + [ + 'weapp_openid' => $openid + ], + MemberRegisterTypeDict::WEAPP, + $is_verify_mobile ?? false + ); + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/api/wechat/WechatAuthService.php b/niucloud/app/service/api/wechat/WechatAuthService.php new file mode 100644 index 0000000..fc6d92f --- /dev/null +++ b/niucloud/app/service/api/wechat/WechatAuthService.php @@ -0,0 +1,206 @@ +core_wechat_serve_service = new CoreWechatServeService(); + } + + /** + * 网页授权 + * @param string $url + * @param string $scopes + * @return array + */ + public function authorization(string $url = '', string $scopes = 'snsapi_base') + { + //todo 业务落地 + return ['url' => $this->core_wechat_serve_service->authorization($this->site_id, $url, $scopes)]; + } + + /** + * 处理授权回调 + * @param string $code + * @return array + */ + public function userFromCode(string $code) + { + $userinfo = $this->core_wechat_serve_service->userFromCode($this->site_id, $code); + if (empty($userinfo)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + $token_response = $userinfo->getTokenResponse(); + if (empty($token_response)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + $scope = $token_response['scope']; + if ($scope == 'snsapi_base') {//静默授权 + $openid = $token_response['openid'] ?? ''; + } else { + $openid = $userinfo->getId();//对应微信的 openid + $nickname = $userinfo->getNickname();//对应微信的 nickname + $avatar = $userinfo->getAvatar();//对应微信的 头像地址 + } + if (empty($openid)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST'); + //todo 这儿还可能会获取用户昵称 头像 性别 ....用以更新会员信息 + return [$avatar ?? '', $nickname ?? '', $openid]; + //todo 业务落地 + } + + /** + * 登录通过code + * @param string $code + * @return array|string[]|null + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function loginByCode(string $code){ + [$avatar, $nickname, $openid] = $this->userFromCode($code); + return $this->login($openid, $nickname, $avatar); + } + + /** + * 公众号登录 + * @param string $openid + * @param string $nickname + * @param string $avatar + * @return array|null + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function login(string $openid, string $nickname = '', string $avatar = '') + { + + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['wx_openid' => $openid, 'site_id' => $this->site_id]); + if ($member_info->isEmpty()) { + $config = (new MemberConfigService())->getLoginConfig(); + $is_bind_mobile = $config['is_bind_mobile']; + $is_auth_register = $config['is_auth_register']; + if ($is_bind_mobile == 0 && $is_auth_register == 1) { + return $this->register($openid, '', $nickname, $avatar); + } else { + return ['avatar' => $avatar, 'nickname' => $nickname, 'openid' => $openid]; + } + } else { + //可能会更新用户和粉丝表 + $login_service = new LoginService(); + return $login_service->login($member_info, MemberLoginTypeDict::WECHAT); + } + } + + /** + * 同步数据 + * @param string $code + * @return true + */ + public function sync(string $code) + { + [$avatar, $nickname, $openid] = $this->userFromCode($code); + //更新粉丝 + $core_wechat_fans_service = new CoreWechatFansService(); + //这儿或许可以异步 + $core_wechat_fans_service->edit($this->site_id, $openid, ['avatar' => $avatar, 'nickname' => $nickname]); + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['wx_openid' => $openid, 'site_id' => $this->site_id]); + if ($member_info->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST');//账号不存在 + $member_service->editByFind($member_info, ['headimg' => $avatar, 'nickname' => $nickname]); + return true; + } + + /** + * 注册 + * @param string $openid + * @param string $mobile + * @param string $nickname + * @param string $avatar + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function register(string $openid, string $mobile = '', string $nickname = '', string $avatar = '') + { + $member_service = new MemberService(); + $member_info = $member_service->findMemberInfo(['wx_openid' => $openid, 'site_id' => $this->site_id]); + if (!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在, 不能在注册 + $register_service = new RegisterService(); + return $register_service->register($mobile, + [ + 'wx_openid' => $openid, + 'nickname' => $nickname, + 'headimg' => $avatar + ], + MemberRegisterTypeDict::WECHAT + ); + + } + + /** + * 获取jssdkconfig + * @param string $url + * @return array|string + */ + public function jssdkConfig(string $url = '') + { + return $this->core_wechat_serve_service->jssdkConfig($this->site_id, $url); + } + + + /** + * 扫码登录 + * @return array + */ + public function scanLogin() + { + $data = array( + 'channel' => $this->channel, + ); + + $key = (new CoreScanService())->scan($this->site_id, ScanDict::WECHAT_LOGIN, $data, 300); + $url = $this->core_wechat_serve_service->scan($this->site_id, $key, 300); + return [ + 'url' => $url, + 'key' => $key + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/service/api/wechat/WechatServeService.php b/niucloud/app/service/api/wechat/WechatServeService.php new file mode 100644 index 0000000..b953794 --- /dev/null +++ b/niucloud/app/service/api/wechat/WechatServeService.php @@ -0,0 +1,51 @@ +core_wechat_serve_service = new CoreWechatServeService(); + } + + /** + * 消息与时间推送 + * @return Response + * @throws BadRequestException + * @throws InvalidArgumentException + * @throws ReflectionException + * @throws Throwable + */ + public function serve(){ + return $this->core_wechat_serve_service->serve($this->site_id); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/CoreAddonBaseService.php b/niucloud/app/service/core/addon/CoreAddonBaseService.php new file mode 100644 index 0000000..41bcbe4 --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonBaseService.php @@ -0,0 +1,107 @@ +root_path = dirname(root_path()) . DIRECTORY_SEPARATOR; + $this->addon_path = root_path() . 'addon' . DIRECTORY_SEPARATOR; + } + + /** + * 获取插件基础配置信息 + * @param string $addon + * @return array|mixed + */ + public function getAddonConfig(string $addon) + { + $path = $this->addon_path . $addon . DIRECTORY_SEPARATOR . 'info.json'; + $resource_path = $this->addon_path . $addon . DIRECTORY_SEPARATOR . 'resource' . DIRECTORY_SEPARATOR; + if (is_file($path)) { + $json_string = file_get_contents($path); + // 用参数true把JSON字符串强制转成PHP数组 + $info = json_decode($json_string, true); + $info['icon'] = $resource_path . 'icon.png'; + $info['cover'] = $resource_path . 'cover.png'; + } + return $info ?? []; + } + + /** + * 获取插件配置文件目录 + * @param string $addon + * @return string + */ + public function getAddonConfigPath(string $addon) + { + return $this->addon_path . $addon . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR; + } + + /** + * 获取插件定义的package目录 + * @param string $addon + * @return string + */ + public function geAddonPackagePath(string $addon) + { + return $this->addon_path . $addon . DIRECTORY_SEPARATOR . 'package' . DIRECTORY_SEPARATOR; + } + + /** + * 读取json文件转化成数组返回 + * @param $json_file_path //json文件目录 + */ + public function jsonFileToArray(string $json_file_path) + { + if (file_exists($json_file_path)) { + $content_json = @file_get_contents($json_file_path); + return json_decode($content_json, true); + } else + return []; + } + + /** + * 读取json文件转化成数组返回 + * @param array $content + * @param string $file_path + * @return true + */ + public function writeArrayToJsonFile(array $content, string $file_path) + { + $content_json = json_encode($content, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); + $content_json = preg_replace('/\[\]/', '{}', $content_json); + $result = @file_put_contents($file_path, $content_json); + if (!$result) { + throw new CommonException($file_path . '文件不存在或者权限不足'); + } + return true; + } + +} diff --git a/niucloud/app/service/core/addon/CoreAddonCloudService.php b/niucloud/app/service/core/addon/CoreAddonCloudService.php new file mode 100644 index 0000000..81036dd --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonCloudService.php @@ -0,0 +1,336 @@ +getAddonConfig($addon)['compile'] ?? []; + + $need_build = false; + // 拷贝composer文件 + $composer_file = $this->addonPath($addon) . 'package' . DIRECTORY_SEPARATOR . 'composer.json'; + if (file_exists($composer_file)) { + file_put_contents($package_dir . 'composer.json', file_get_contents(root_path() . 'composer.json')); + $need_build = true; + } + // 拷贝手机端文件 + if (!in_array('wap', $compile)) { + dir_copy($this->root_path . 'uni-app', $package_dir . 'uni-app', exclude_dirs:['node_modules', 'unpackage', 'dist']); + $need_build = true; + } + // 拷贝admin端文件 + if (!in_array('admin', $compile)) { + dir_copy($this->root_path . 'admin', $package_dir . 'admin', exclude_dirs:['node_modules', 'dist', '.vscode', '.idea']); + $need_build = true; + } + // 拷贝web端文件 + if (!in_array('web', $compile)) { + dir_copy($this->root_path . 'web', $package_dir . 'web', exclude_dirs:['node_modules', '.output', '.nuxt']); + $need_build = true; + } + + if ($need_build) { + // 将临时目录下文件生成压缩包 + $zip_file = $temp_dir . DIRECTORY_SEPARATOR . 'build.zip'; + (new CoreAddonDevelopDownloadService(''))->compressToZip($package_dir, $zip_file); + + $install_task = Cache::get('install_task'); + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $install_task['timestamp'] + ]; + $response = (new CloudService())->httpPost('cloud/build?' . http_build_query($query), [ + 'multipart' => [ + [ + 'name' => 'file', + 'contents' => fopen($zip_file, 'r'), + 'filename' => 'build.zip' + ] + ], + 'timeout' => 50.0 + ]); + if (isset($response['code']) && $response['code'] == 0) throw new CommonException($response['msg']); + + // 删除临时文件 + del_target_dir($temp_dir, true); + + Cache::set('build_success_' . $addon, null); + } else { + (new CoreAddonInstallService($addon))->handleAddonInstall(); + } + return true; + } + + /** + * 获取编译结果 + * @param string $addon + * @return void + */ + public function getBuildLog(string $addon) { + try { + $install_task = Cache::get('install_task'); + if (empty($install_task) || !isset($install_task['timestamp'])) return true; + + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $install_task['timestamp'] + ]; + $build_log = (new CloudService())->httpGet('cloud/get_build_logs?' . http_build_query($query)); + + if (isset($build_log['data']) && isset($build_log['data'][0]) && is_array($build_log['data'][0])) { + $last = end($build_log['data'][0]); + if ($last['percent'] == 100 && $last['code'] == 0) { + (new CoreAddonInstallService($addon))->installExceptionHandle(); + $install_task['error'] = 'ADDON_INSTALL_FAIL'; + Cache::set('install_task', $install_task, 10); + return $build_log; + } + if ($last['percent'] == 100) { + $build_log['data'][0] = $this->buildSuccess($addon, $build_log['data'][0], $install_task['timestamp']); + } + } + return $build_log; + } catch (\Exception $e) { + $install_task = Cache::get('install_task'); + $install_task['error'] = $e->getMessage(); + Cache::set('install_task', $install_task, 10); + throw new CommonException($e->getMessage()); + } + } + + /** + * 云编译成功 + * @param string $addon + * @return void + */ + public function buildSuccess(string $addon, array $log, $timestamp) { + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $timestamp + ]; + $chunk_size = 1 * 1024 * 1024; + + $cache = Cache::get('build_success_' . $addon); + + if (is_null($cache)) { + $response = (new CloudService())->request('HEAD','cloud/build_download?' . http_build_query($query), [ + 'headers' => ['Range' => 'bytes=0-'] + ]); + $length = $response->getHeader('Content-range'); + $length = (int)explode("/", $length[0])[1]; + $step = (int)ceil($length / $chunk_size); + + // 下载任务key + $task_key = uniqid(); + // 此次下载任务临时目录 + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'cloud_build' . DIRECTORY_SEPARATOR . $task_key . DIRECTORY_SEPARATOR; + dir_mkdir($temp_dir); + + Cache::set('build_success_' . $addon, ['step' => $step, 'index' => 0, 'length' => $length, 'task_key' => $task_key]); + } else { + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'cloud_build' . DIRECTORY_SEPARATOR . $cache['task_key'] . DIRECTORY_SEPARATOR; + $zip_file = $temp_dir . 'build.zip'; + $zip_resource = fopen($zip_file, 'a'); + + if (($cache['index'] + 1) <= $cache['step']) { + $start = $cache['index'] * $chunk_size; + $end = ($cache['index'] + 1) * $chunk_size; + $end = min($end, $cache['length']); + + $response = (new CloudService())->request('GET','cloud/build_download?' . http_build_query($query), [ + 'headers' => ['Range' => "bytes={$start}-{$end}"] + ]); + fwrite($zip_resource, $response->getBody()); + fclose($zip_resource); + + $cache['index'] += 1; + Cache::set('build_success_' . $addon, $cache); + + $log[] = ['action' => '编译包下载中,已下载' . round($cache['index'] / $cache['step'] * 100) . '%', 'percent' => '100' ]; + } else { + // 解压文件 + $zip = new \ZipArchive(); + if ($zip->open($zip_file) === true) { + dir_mkdir($temp_dir . 'build'); + $zip->extractTo($temp_dir . 'build'); + $zip->close(); + + if (is_dir($temp_dir . 'build' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'admin')) { + del_target_dir(public_path() .'admin', true); + } + if (is_dir($temp_dir . 'build' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'web')) { + del_target_dir(public_path() .'web', true); + } + if (is_dir($temp_dir . 'build' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'wap')) { + del_target_dir(public_path() .'wap', true); + } + + dir_copy($temp_dir . 'build', root_path()); + + // 安装插件 + (new CoreAddonInstallService($addon))->handleAddonInstall(); + + // 删除临时文件 + @del_target_dir($temp_dir, true); + + Cache::set('build_success_' . $addon, null); + } else { + Cache::set('build_success_' . $addon, null); + // 调用插件安装异常处理 + (new CoreAddonInstallService($addon))->installExceptionHandle(); + throw new CommonException('Zip decompression failed'); + } + } + } + return $log; + } + + /** + * 下载插件 + * @param string $addon + * @param string $version + * @return void + */ + public function downloadAddon(string $addon, string $version) { + $action_token = (new CoreModuleService())->getActionToken('download', ['data' => ['app_key' => $addon, 'version' => $version]]); + if (isset($action_token['code']) && $action_token['code'] != 1) { + if ($action_token['code'] == 401) $action_token = (new CoreModuleService())->getActionToken('download', ['data' => ['app_key' => $addon, 'version' => $version]]); + if ($action_token['code'] != 1) throw new CommonException($action_token['msg']); + } + + $query = [ + 'authorize_code' => $this->auth_code, + 'addon_name' => $addon, + 'addon_version' => $version, + 'token' => $action_token['data']['token'] ?? '' + ]; + // 获取文件大小 + $response = (new CloudService())->request('HEAD','cloud/download?' . http_build_query($query), [ + 'headers' => ['Range' => 'bytes=0-'] + ]); + $length = $response->getHeader('Content-range'); + $length = (int)explode("/", $length[0])[1]; + + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'addon_download' . DIRECTORY_SEPARATOR . uniqid() . DIRECTORY_SEPARATOR; + dir_mkdir($temp_dir); + + $zip_file = $temp_dir . $addon . '.zip'; + $zip_resource = fopen($zip_file, 'w'); + + $response = (new CloudService())->request('GET','cloud/download?' . http_build_query($query), [ + 'headers' => ['Range' => "bytes=0-{$length}"] + ]); + fwrite($zip_resource, $response->getBody()); + fclose($zip_resource); + + return $zip_file; + } + + /** + * 插件升级 + * @param $data + * @return void + * @throws \GuzzleHttp\Exception\GuzzleException + */ + public function upgradeAddon(array $data = []) { + $action_token = (new CoreModuleService())->getActionToken('upgrade', ['data' => $data ]); + if (isset($action_token['code']) && $action_token['code'] != 1) { + if ($action_token['code'] == 401) $action_token = (new CoreModuleService())->getActionToken('upgrade', ['data' => $data ]); + if ($action_token['code'] != 1) throw new CommonException($action_token['msg']); + } + + $query = [ + 'authorize_code' => $this->auth_code, + 'token' => $action_token['data']['token'] ?? '' + ]; + // 获取文件大小 + $response = (new CloudService())->httpGet('cloud/upgrade?' . http_build_query($query)); + $response['token'] = $query['token']; + return $response; + } + + /** + * 下载升级文件 + * @param string $dir + * @param string $token + * @return void + */ + public function downloadUpgradeFile(string $token, string $dir = '', int $index = -1, $step = 0, $length = 0) { + $query = [ + 'authorize_code' => $this->auth_code, + 'token' => $token + ]; + $chunk_size = 1 * 1024 * 1024; + + if ($index == -1) { + $response = (new CloudService())->request('HEAD','cloud/upgrade/download?' . http_build_query($query), [ + 'headers' => ['Range' => 'bytes=0-'] + ]); + $length = $response->getHeader('Content-range'); + $length = (int)explode("/", $length[0])[1]; + $step = (int)ceil($length / $chunk_size); + + $index++; + return compact('token', 'dir', 'index', 'step', 'length'); + } else { + $zip_file = $dir . 'upgrade.zip'; + $zip_resource = fopen($zip_file, 'a'); + + if ($index < $step) { + $start = $index * $chunk_size; + $end = ($index + 1) * $chunk_size; + $end = min($end, $length); + + $response = (new CloudService())->request('GET','cloud/upgrade/download?' . http_build_query($query), [ + 'headers' => ['Range' => "bytes={$start}-{$end}"] + ]); + fwrite($zip_resource, $response->getBody()); + fclose($zip_resource); + + $index++; + return compact('token', 'dir', 'index', 'step', 'length'); + } else { + $zip = new \ZipArchive(); + if ($zip->open($zip_file) === true) { + dir_mkdir($dir . 'code'); + $zip->extractTo($dir . 'code'); + $zip->close(); + } + return true; + } + } + } +} diff --git a/niucloud/app/service/core/addon/CoreAddonDevelopBuildService.php b/niucloud/app/service/core/addon/CoreAddonDevelopBuildService.php new file mode 100644 index 0000000..3569ac9 --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonDevelopBuildService.php @@ -0,0 +1,228 @@ +root_path = project_path(); + } + + /** + * 插件打包 + * @param string $addon + * @return void + */ + public function build(string $addon) + { + $this->addon = $addon; + $this->addon_path = root_path() . 'addon' . DIRECTORY_SEPARATOR . $addon . DIRECTORY_SEPARATOR; + + if (!is_dir($this->addon_path)) throw new AddonException('ADDON_IS_NOT_EXIST');//当前目录中不存在此项插件 + + $this->admin(); + $this->uniapp(); + $this->buildUniappPagesJson(); + $this->web(); + $this->resource(); + $this->menu('admin'); + $this->menu('site'); + + $zip_file = runtime_path() . $addon . '.zip'; + if (file_exists($zip_file)) unlink($zip_file); + (new CoreAddonDevelopDownloadService(''))->compressToZip($this->addon_path, $zip_file); + + return true; + } + + /** + * 下载 + * @param string $addon + * @return \think\response\File + */ + public function download(string $addon) { + $zip_file = runtime_path() . $addon . '.zip'; + if (!file_exists($zip_file)) throw new AddonException('ADDON_ZIP_ERROR');//下载失败 + return str_replace(project_path(), '', $zip_file); + } + + /** + * 同步菜单 + * @param string $app_type + * @return true + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException + */ + public function menu(string $app_type) { + $where = [ ['app_type', '=', $app_type], ['addon', '=', $this->addon] ]; + $field = 'menu_name,menu_key,menu_short_name,parent_key,menu_type,icon,api_url,router_path,view_path,methods,sort,status,is_show'; + $menu = (new SysMenu())->where($where)->field($field)->order('sort', 'desc')->select()->toArray(); + if (!empty($menu)) { + $menu = (new MenuService())->menuToTree($menu, 'menu_key', 'parent_key', 'children'); + (new SysMenu())->where($where)->update(['source' => MenuDict::SYSTEM]); + } + + $addon_dict = $this->addon_path . 'app' . DIRECTORY_SEPARATOR . 'dict' . DIRECTORY_SEPARATOR . 'menu' . DIRECTORY_SEPARATOR . $app_type . '.php'; + + $content = 'arrayFormat($menu); + $content .= '];'; + file_put_contents($addon_dict, $content); + + return true; + } + + private function arrayFormat($array, $level = 1) { + $tab = ''; + for ($i = 0; $i < $level; $i++) { + $tab .= ' '; + } + $content = ''; + foreach ($array as $k => $v) { + if (in_array($k, ['status_name', 'menu_type_name']) || ($level > 2 && $k == 'parent_key')) continue; + if (is_array($v)) { + $content .= $tab; + if (is_string($k)) { + $content .= "'{$k}' => "; + } + $content .= '[' . PHP_EOL . $this->arrayFormat($v, $level + 1); + $content .= $tab . '],' . PHP_EOL; + } else { + $content .= $tab ."'{$k}' => '{$v}'," . PHP_EOL; + } + } + return $content; + } + + /** + * admin打包 + * @return void + */ + public function admin() + { + $admin_path = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + if (!is_dir($admin_path)) return true; + + $addon_admin_path = $this->addon_path . 'admin' . DIRECTORY_SEPARATOR; + if (is_dir($addon_admin_path)) del_target_dir($addon_admin_path, true); + dir_copy($admin_path, $addon_admin_path); + + // 打包admin icon文件 + $icon_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'styles' . DIRECTORY_SEPARATOR . 'icon' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon; + if (is_dir($icon_dir)) dir_copy($icon_dir, $addon_admin_path . 'icon'); + + return true; + } + + /** + * wap打包 + * @return void + */ + public function uniapp() + { + $uniapp_path = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + if (!is_dir($uniapp_path)) return true; + + $addon_uniapp_path = $this->addon_path . 'uni-app' . DIRECTORY_SEPARATOR; + if (is_dir($addon_uniapp_path)) del_target_dir($addon_uniapp_path, true); + dir_copy($uniapp_path, $addon_uniapp_path); + + return true; + } + + public function buildUniappPagesJson() { + $pages_json = file_get_contents($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'pages.json'); + $code_begin = strtoupper($this->addon) . '_PAGE_BEGIN' . PHP_EOL; + $code_end = strtoupper($this->addon) . '_PAGE_END' . PHP_EOL; + + if(strpos($pages_json, $code_begin) !== false && strpos($pages_json, $code_end) !== false) + { + $pattern = "/\/\/\s+{$code_begin}([\S\s]+)\/\/\s+{$code_end}?/"; + preg_match($pattern, $pages_json, $match); + + if (!empty($match)) { + $addon_pages = $match[1]; + + $content = ' <<addon_path . 'package')) dir_mkdir($this->addon_path . 'package'); + file_put_contents($this->addon_path . 'package' . DIRECTORY_SEPARATOR . 'uni-app-pages.php', $content); + } + } + return true; + } + + /** + * web打包 + * @return void + */ + public function web() + { + $web_path = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + if (!is_dir($web_path)) return true; + + $addon_web_path = $this->addon_path . 'web' . DIRECTORY_SEPARATOR; + if (is_dir($addon_web_path)) del_target_dir($addon_web_path, true); + dir_copy($web_path, $addon_web_path); + + $layout = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'layouts' . DIRECTORY_SEPARATOR . $this->addon; + if (is_dir($layout)) { + $layout_dir = $addon_web_path . 'layouts' . DIRECTORY_SEPARATOR . $this->addon; + if (is_dir($layout_dir)) del_target_dir($layout_dir, true); + else dir_mkdir($layout_dir); + dir_copy($layout, $layout_dir); + } + + return true; + } + + /** + * 打包资源文件 + * @return true + */ + public function resource() { + $resource_path = public_path() . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + if (!is_dir($resource_path)) return true; + + $addon_resource_path = $this->addon_path . 'resource' . DIRECTORY_SEPARATOR; + if (is_dir($addon_resource_path)) del_target_dir($addon_resource_path, true); + dir_copy($resource_path, $addon_resource_path); + + return true; + } +} diff --git a/niucloud/app/service/core/addon/CoreAddonDevelopDownloadService.php b/niucloud/app/service/core/addon/CoreAddonDevelopDownloadService.php new file mode 100644 index 0000000..0f5fd5d --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonDevelopDownloadService.php @@ -0,0 +1,93 @@ +model = new Addon(); + $this->key = $key; + $this->base_addon_dir = $this->addon_path . DIRECTORY_SEPARATOR . $this->key; + + } + + + /** + * 下载插件 + * @return true + */ + public function download() + { + if (!is_dir($this->base_addon_dir)) throw new AddonException('ADDON_IS_NOT_EXIST');//当前目录中不存在此项插件 + $form_dir = $this->base_addon_dir; + $to_dir = root_path() . 'runtime' . DIRECTORY_SEPARATOR . 'addon_download' . DIRECTORY_SEPARATOR; + $file_name = $this->key . '.zip'; + $file_path = $to_dir . $file_name; + if (!$this->compressToZip($form_dir, $file_path)) throw new AddonException('ADDON_ZIP_ERROR');//下载失败 + $content = file_get_contents($file_path); + @unlink($file_path); + return download($content, $file_name, true); + } + + + /** + * @param $source_dir 是待压缩的文件夹路径 + * @param $zip_file 是目标压缩文件的路径和名称 + * @return bool + */ + public function compressToZip($source_dir, $zip_file) + { + $zip = new ZipArchive(); + $zip_dir = dirname($zip_file); + if (!is_dir($zip_dir) && !mkdir($zip_dir, 0777, true) && !is_dir($zip_dir)) { + throw new AddonException(sprintf('Directory "%s" was not created', $zip_dir)); + } + if ($zip->open($zip_file, ZipArchive::CREATE) !== true) { + return false; + } + $source_dir = str_replace('\\', '/', realpath($source_dir)); + if (is_dir($source_dir) === true) { + $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($source_dir), RecursiveIteratorIterator::LEAVES_ONLY); + foreach ($files as $file) { + if (!$file->isDir()) { + $file_path = str_replace('\\', '/', $file->getRealPath()); + $relative_path = substr($file_path, strlen($source_dir) + 1); + $zip->addFile($file_path, $relative_path); + } + } + } else if (file_exists($source_dir) === true) { + $zip->addFile($source_dir, basename($source_dir)); + } + $zip->close(); + return file_exists($zip_file); + } + +} diff --git a/niucloud/app/service/core/addon/CoreAddonDevelopService.php b/niucloud/app/service/core/addon/CoreAddonDevelopService.php new file mode 100644 index 0000000..1e55bd5 --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonDevelopService.php @@ -0,0 +1,468 @@ + [ + 'api' => [ + [ + 'name' => 'hello_world.ts', + 'vm' => 'admin' . DIRECTORY_SEPARATOR . 'api.vm', + ] + ], + 'assets' => [], + 'lang' => [ + 'zh-cn' => [ + [ + 'name' => 'hello_world.index.json', + 'vm' => 'admin' . DIRECTORY_SEPARATOR . 'lang.vm', + ] + ] + ], + 'views' => [ + 'hello_world' => [ + [ + 'name' => 'index.vue', + 'vm' => 'admin' . DIRECTORY_SEPARATOR . 'views.vm', + ] + ] + + ] + ], + 'app' => [ + 'adminapi' => [ + 'controller' => [ + 'hello_world' => [ + [ + 'name' => 'Index.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'admin_controller.vm', + ] + ] + ], + 'route' => [ + [ + 'name' => 'route.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'admin_route.vm', + ] + ] + ], + 'api' => [ + 'controller' => [ + 'hello_world' => [ + [ + 'name' => 'Index.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'api_controller.vm', + ] + ], + ], + 'route' => [ + [ + 'name' => 'route.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'api_route.vm' + ] + + ] + ], + 'dict' => [ + 'menu' => [ + [ + 'name' => 'admin.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'admin_menu.vm' + ], + [ + 'name' => 'site.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'menu.vm' + ] + ] + + ], + 'job' => [ + + ], + 'lang' => [ + 'zh-cn' => [ + [ + 'name' => 'api.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ], + [ + 'name' => 'dict.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ], + [ + 'name' => 'validate.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ] + ], + + 'en' => [ + [ + 'name' => 'api.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ], + [ + 'name' => 'dict.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ], + [ + 'name' => 'validate.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'common.vm' + ] + ] + + ], + 'listener' => [ + + ], + 'model' => [ + + ], + 'service' => [ + + ], + 'validate' => [ + + ], + [ + 'name' => 'event.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'event.vm' + ] + ], + 'sql' => [ + [ + 'name' => 'install.sql', + ], + [ + 'name' => 'uninstall.sql', + ] + ], + 'package' => [ + [ + 'name' => 'uni-app-pages.php', + 'vm' => 'package' . DIRECTORY_SEPARATOR . 'uni-app-pages.vm' + ], + ], + 'resource' => [ + [ + 'name' => 'cover.png', + 'is_cover' => true + ], + [ + 'name' => 'icon.png', + 'is_cover' => true + ], + ], + 'uni-app' => [ + 'api' => [ + [ + 'name' => 'hello_world.ts', + 'vm' => 'uni-app' . DIRECTORY_SEPARATOR . 'api.vm', + ], + ], + 'components' => [], + 'locale' => [ + 'zh-Hans' => [ + [ + 'name' => 'pages.hello_world.index.json', + 'vm' => 'uni-app' . DIRECTORY_SEPARATOR . 'lang.vm', + ], + ], + [ + 'name' => 'en.json', + 'vm' => 'uni-app' . DIRECTORY_SEPARATOR . 'lang.vm', + ], + [ + 'name' => 'zh-Hans.json', + 'vm' => 'uni-app' . DIRECTORY_SEPARATOR . 'lang.vm', + ], + ], + 'pages' => [ + 'hello_world' => [ + [ + 'name' => 'index.vue', + 'vm' => 'uni-app' . DIRECTORY_SEPARATOR . 'views.vm', + ], + ] + ], + 'utils' => [] + ], + + 'web' => [ + 'api' => [ + [ + 'name' => 'hello_world.ts', + 'vm' => 'web' . DIRECTORY_SEPARATOR . 'api.vm', + ], + ], + 'lang' => [ + 'zh-cn' => [ + [ + 'name' => 'pages.json', + 'vm' => 'web' . DIRECTORY_SEPARATOR . 'lang_pages.vm', + ], + [ + 'name' => 'hello_world.index.json', + 'vm' => 'web' . DIRECTORY_SEPARATOR . 'lang.vm', + ], + ], + ], + 'pages' => [ + 'hello_world' => [ + [ + 'name' => 'index.vue', + 'vm' => 'web' . DIRECTORY_SEPARATOR . 'view.vm', + ], + ], + [ + 'name' => 'routes.ts', + 'vm' => 'web' . DIRECTORY_SEPARATOR . 'routes.vm', + ], + ], + ], + 'compile' => [ + 'admin' => [ + + ], + 'wap' => [ + + ], + 'weapp' => [ + + ], + 'web' => [ + + ], + 'aliapp' => [ + + ], + ], + [ + 'name' => 'info.json', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'info.vm', + 'is_cover' => true + ], + [ + 'name' => 'Addon.php', + 'vm' => 'system' . DIRECTORY_SEPARATOR . 'addon.vm' + ] + + ); + private $addon_info; + + private $key; + + private $action; + + public function __construct(string $key) + { + parent::__construct(); + $this->model = new Addon(); + $this->key = $key; + $this->base_addon_dir = $this->addon_path . DIRECTORY_SEPARATOR . $this->key; + } + //生成 + + + /** + * 生成新建插件 + * @param array $title + * @param $desc + * @param $key + * @param $version + * @param $author + * @param $type + * @param $support_app + * @return true + */ + public function add(array $data) + { + if (is_dir($this->base_addon_dir)) throw new AddonException('ADDON_KEY_IS_EXIST');//当前目录中已存在key值一致的插件 + $this->setAddonInfo($data); + + $this->filePut($this->map, $this->base_addon_dir); + + + return true; + } + + public function setAddonInfo($data) + { + $data['key'] = $this->key; + $this->addon_info = $data; + } + + /** + * 文件创建 + * @param $item + * @param $root_k + * @param $key + * @return true + */ + public function filePut($item, $root_k = '', $key = '') + { + //key为int为文件,否者是文件夹 + if (is_int($key)) { + $this->fileAdd($item, $root_k); + } else { + $item_dir = $root_k . DIRECTORY_SEPARATOR . $key . DIRECTORY_SEPARATOR; + if ($key) { + if (!is_dir($item_dir) && !mkdir($item_dir, 0777, true) && !is_dir($item_dir)) { + throw new AddonException(sprintf('Directory "%s" was not created', $item_dir)); + } + } + if (!empty($item)) { + foreach ($item as $k => $v) { + $this->filePut($v, $item_dir, $k); + } + } + } + return true; + } + + /** + * 文本替换 + * @param $item + * @param $dir + * @return true + */ + public function fileAdd($item, $dir = '') + { + $is_cover = $item['is_cover'] ?? false; + if ($this->action == 'edit' && !$is_cover) { + return true; + } + $name = $item['name'] ?? ''; + if (!$name) { + return true; + } + $file = $dir . $name; + + if (!is_dir($dir) && !mkdir($dir, 0777, true) && !is_dir($dir)) { + throw new AddonException(sprintf('Directory "%s" was not created', $dir)); + } + if (strpos($name, 'png') || strpos($name, 'jpg')) { + $file_name = explode('.', $name)[0] ?? ''; + if (empty($file_name)) return true; + $image = $this->addon_info[$file_name] ?? ''; + if (empty($image)) return true; + if (check_file_is_remote($image)) { + try { + (new CoreFetchService())->setRootPath($dir)->setRename($name)->image($image, 0, FileDict::LOCAL); + } catch ( UploadFileException $e ) { + return true; + } + } else { + @copy($image, $file); + } + } else { + //创建路由文件 + $vm_root_dir = root_path('app') . 'service' . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . 'vm' . DIRECTORY_SEPARATOR; + $vm = $item['vm'] ?? ''; + if (is_file($vm_root_dir . $vm)) { + $content = file_get_contents($vm_root_dir . $vm); + $content = $this->contentReplace($content, $this->addon_info); + } else { + $content = ''; + } + //如果已存在就不要创建了 +// if(!is_file($file)){ + file_put_contents($file, $content); +// } + } + + return true; + } + + /** + * 文本根据变量组来替换字符 + * @param $content + * @param $vars + * @return array|mixed|string|string[] + */ + public function contentReplace($content, $vars) + { + foreach ($vars as $k => $v) { + $content = str_replace('{' . $k . '}', $v, $content); + } + return $content; + } + + /** + * 编辑 + * @param array $data + * @return true + */ + public function edit(array $data) + { + if (!is_dir($this->base_addon_dir)) throw new AddonException('ADDON_IS_NOT_EXIST');//当前目录中不存在此项插件 + $this->action = 'edit'; + $this->setAddonInfo($data); + + $this->filePut($this->map, $this->base_addon_dir); + //如果已安装的插件,需要同步修改表记录 + $where = [ + [ + 'key', '=', $this->key + ] + ]; + $info = $this->model->where($where)->findOrEmpty(); + if (!$info->isEmpty()) { + $info->save( + [ + 'title' => $data['title'], + 'desc' => $data['desc'], + 'author' => $data['author'], + 'version' => $data['version'], + 'type' => $data['type'], + 'support_app' => $data['support_app'], + 'update_time' => time(), + ] + ); + } + return true; + } + + /** + * 删除 + * @return true + */ + public function del() + { + if (!is_dir($this->base_addon_dir)) throw new AddonException('ADDON_IS_NOT_EXIST');//当前目录中不存在此项插件 + $where = [ + [ + 'key', '=', $this->key + ] + ]; + $info = $this->model->where($where)->findOrEmpty(); + if (!$info->isEmpty()) { + throw new AddonException('ADDON_IS_INSTALLED_NOT_ALLOW_DEL'); + } + //删除目录文件 + del_target_dir($this->base_addon_dir, true); + return true; + } + +} diff --git a/niucloud/app/service/core/addon/CoreAddonDownloadService.php b/niucloud/app/service/core/addon/CoreAddonDownloadService.php new file mode 100644 index 0000000..d29bfa6 --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonDownloadService.php @@ -0,0 +1,85 @@ +model = new Addon(); + $this->addon_download_path = 'upload/download/'; + } + + /** + * 下载文件 + * @param $app_key + * @return true + * @throws GuzzleException + * @throws GuzzleException + */ + public function download($app_key, $version) + { + $app_path = $this->addon_path . $app_key . DIRECTORY_SEPARATOR; + //先判断当前的应用在本地是否存在 +// if(is_dir($app_path)) throw new NiucloudException(); + //下载文件到本地 + $zip_file = (new CoreAddonCloudService())->downloadAddon($app_key, $version); + //解压到应用addon下 + //删除旧版本文件 + del_target_dir($app_path, true); + //解压文件 + $this->unzip($zip_file, $this->addon_path); + //删除压缩包 + @del_target_dir(dirname($zip_file), true); + return true; + } + + /** + * 解压压缩包 + * @param $file + * @param $dir + * @return mixed|string + */ + public function unzip($file, $dir) + { + if (!file_exists($file)) throw new AddonException('ZIP_FILE_NOT_FOUND'); + $zip = new ZipArchive(); + if ($zip->open($file) === TRUE) { + // 对Zip文件进行解压缩操作 + $zip->extractTo($dir); + $zip->close(); + } else { + throw new AddonException('ZIP_FILE_NOT_FOUND'); + } + return $dir; + } + + public function update() + { + + } +} diff --git a/niucloud/app/service/core/addon/CoreAddonInstallService.php b/niucloud/app/service/core/addon/CoreAddonInstallService.php new file mode 100644 index 0000000..d91770f --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonInstallService.php @@ -0,0 +1,780 @@ + [], + 'web' => [], + 'wap' => [], + ]; + private $files = [ + 'niucloud' => [], + 'admin' => [], + 'web' => [], + 'wap' => [], + 'resource' => [] + ]; + private $flow_path = [ + 'file', + 'sql', + 'menu', + 'diy' + ]; + private $addon; + private $install_addon_path; + + private $cache_key = ''; + + private $install_task = null; + + public function __construct($addon) + { + parent::__construct(); + $this->addon = $addon; + $this->install_addon_path = $this->addon_path . $addon . DIRECTORY_SEPARATOR; + + $this->cache_key = "install_{$addon}"; + + $this->install_task = Cache::get('install_task'); + } + + /** + * 初始化实例 + * @param string $addon + * @return static + */ + public static function instance(string $addon) + { + if (is_null(self::$instance)) { + self::$instance = new static($addon); + } + return self::$instance; + } + + /** + * 安装前检测 + * @return array + */ + public function installCheck() + { + $from_admin_dir = $this->install_addon_path . 'admin' . DIRECTORY_SEPARATOR; + $from_web_dir = $this->install_addon_path . 'web' . DIRECTORY_SEPARATOR; + $from_wap_dir = $this->install_addon_path . 'uni-app' . DIRECTORY_SEPARATOR; + $from_resource_dir = $this->install_addon_path . 'resource' . DIRECTORY_SEPARATOR; + + // 放入的文件 + $to_admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon'. DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR; + $to_wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon'. DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + + $to_resource_dir = public_path() . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + + try { + if (!is_dir($this->root_path . 'admin' . DIRECTORY_SEPARATOR)) throw new CommonException('ADMIN_DIR_NOT_EXIST'); + if (!is_dir($this->root_path . 'web' . DIRECTORY_SEPARATOR)) throw new CommonException('WEB_DIR_NOT_EXIST'); + if (!is_dir($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR)) throw new CommonException('UNIAPP_DIR_NOT_EXIST'); + } catch (\Exception $e) { + if (strpos($e->getMessage(), 'open basedir') !== false) { + throw new CommonException('OPEN_BASEDIR_ERROR'); + } + throw new CommonException($e->getMessage()); + } + + // 配置文件 + $package_path = $this->install_addon_path . 'package' . DIRECTORY_SEPARATOR; + $package_file = []; + search_dir($package_path, $package_file); + $package_file = array_map(function ($file) use ($package_path) { + return str_replace($package_path . DIRECTORY_SEPARATOR, '', $file); + }, $package_file); + + $data = [ + // 目录检测 + 'dir' => [ + // 要求可读权限 + 'is_readable' => [], + // 要求可写权限 + 'is_write' => [] + ] + ]; + + if (is_dir($from_admin_dir)) $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $from_admin_dir), 'status' => is_readable($from_admin_dir)]; + if (is_dir($from_web_dir)) $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $from_web_dir), 'status' => is_readable($from_web_dir)]; + if (is_dir($from_wap_dir)) $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $from_wap_dir), 'status' => is_readable($from_wap_dir)]; + if (is_dir($from_resource_dir)) $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $from_resource_dir), 'status' => is_readable($from_resource_dir)]; + + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_admin_dir), 'status' => is_dir($to_admin_dir) ? is_write($to_admin_dir) : mkdir($to_admin_dir, 0777, true)]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_web_dir), 'status' => is_dir($to_web_dir) ? is_write($to_web_dir) : mkdir($to_web_dir, 0777, true)]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_wap_dir), 'status' => is_dir($to_wap_dir) ? is_write($to_wap_dir) : mkdir($to_wap_dir, 0777, true)]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_resource_dir), 'status' => is_dir($to_resource_dir) ? is_write($to_resource_dir) : mkdir($to_resource_dir, 0777, true)]; + + $check_res = array_merge( + array_column($data['dir']['is_readable'], 'status'), + array_column($data['dir']['is_write'], 'status') + ); + + // 是否通过校验 + $data['is_pass'] = !in_array(false, $check_res); + Cache::set($this->cache_key . '_install_check', $data['is_pass']); + return $data; + } + + /** + * 插件安装 + * @return true + */ + public function install(string $mode = 'local') + { + $core_addon_service = new CoreAddonService(); + if (!empty($core_addon_service->getInfoByKey($this->addon))) throw new AddonException('REPEAT_INSTALL'); + + $install_data = $this->getAddonConfig($this->addon); + if (empty($install_data)) throw new AddonException('ADDON_INFO_FILE_NOT_EXIST'); + + $check_res = Cache::get($this->cache_key . '_install_check'); + if (!$check_res) throw new CommonException('INSTALL_CHECK_NOT_PASS'); + + if ($this->install_task) throw new CommonException('ADDON_INSTALLING'); + $this->install_task = [ 'mode' => $mode, 'addon' => $this->addon, 'step' => [], 'timestamp' => time() ]; + Cache::set('install_task', $this->install_task); + + set_time_limit(0); + + $install_step = ['installDir','installWap','installDepend']; + + if (!empty($install_data['compile']) || $mode == 'cloud') { + // 备份前端目录 + $install_step[] = 'backupFrontend'; + } + + // 检测插件是否存在编译内容 + if (!empty($install_data['compile'])) { + $install_step[] = 'coverCompile'; + } + + if ($mode == 'cloud') { + $install_step[] = 'cloudInstall'; + } else { + $install_step[] = 'handleAddonInstall'; + } + + try { + foreach ($install_step as $step) { + $this->install_task['step'][] = $step; + $this->$step(); + if ($step != 'handleAddonInstall') Cache::set('install_task', $this->install_task); + } + + if ($mode != 'cloud') { + // 配置文件 + $package_path = $this->install_addon_path . 'package' . DIRECTORY_SEPARATOR; + $package_file = []; + search_dir($package_path, $package_file); + $package_file = array_map(function ($file) use ($package_path) { + return str_replace($package_path . DIRECTORY_SEPARATOR, '', $file); + }, $package_file); + + $tips = [get_lang('dict_addon.install_after_update')]; + if (in_array('admin-package.json', $package_file)) $tips[] = get_lang('dict_addon.install_after_admin_update'); + if (in_array('composer.json', $package_file)) $tips[] = get_lang('dict_addon.install_after_composer_update'); + if (in_array('uni-app-package.json', $package_file)) $tips[] = get_lang('dict_addon.install_after_wap_update'); + if (in_array('web-package.json', $package_file)) $tips[] = get_lang('dict_addon.install_after_web_update'); + return $tips; + } + return true; + } catch (\Exception $e) { + Cache::set('install_task', $this->install_task); + $this->installExceptionHandle(); + if (strpos($e->getMessage(), 'open basedir') !== false) { + throw new CommonException('OPEN_BASEDIR_ERROR'); + } + throw new CommonException($e->getMessage()); + } + } + + /** + * 安装异常处理 + * @return void + */ + public function installExceptionHandle() { + $install_task = Cache::get('install_task'); + + if (in_array('installDir', $install_task['step'])) { + @$this->uninstallDir(); + } + + if (in_array('installWap', $install_task['step'])) { + @$this->uninstallWap(); + } + + if (in_array('backupFrontend', $install_task['step'])) { + @$this->revertFrontendBackup(); + } + + Cache::set('install_task', null); + } + + /** + * 取消安装任务 + * @return void + */ + public function cancleInstall() { + if (Cache::get('install_task')) $this->installExceptionHandle(); + } + + /** + * 获取安装任务 + * @return mixed + */ + public function getInstallTask() { + return $this->install_task; + } + + /** + * 安装迁移复制文件 + * @return bool + */ + public function installDir() + { + $from_admin_dir = $this->install_addon_path . 'admin' . DIRECTORY_SEPARATOR; + $from_web_dir = $this->install_addon_path . 'web' . DIRECTORY_SEPARATOR; + $from_wap_dir = $this->install_addon_path . 'uni-app' . DIRECTORY_SEPARATOR; + $from_resource_dir = $this->install_addon_path . 'resource' . DIRECTORY_SEPARATOR; + + // 放入的文件 + $to_admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_resource_dir = public_path() . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + + // 安装admin管理端 + if (file_exists($from_admin_dir)) { + dir_copy($from_admin_dir, $to_admin_dir, $this->files['admin'], exclude_dirs:['icon']); + // 判断图标目录是否存在 + if (is_dir($from_admin_dir . 'icon')) { + $addon_icon_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'styles' . DIRECTORY_SEPARATOR . 'icon' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon; + dir_copy($from_admin_dir . 'icon', $addon_icon_dir); + } + // 编译后台图标库文件 + $this->compileAdminIcon(); + } + + // 安装电脑端 + if (file_exists($from_web_dir)) { + // 安装布局文件 + $layout = $from_web_dir . 'layouts'; + if (is_dir($layout)) { + dir_copy($layout, $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'layouts'); + del_target_dir($layout, true); + } + dir_copy($from_web_dir, $to_web_dir, $this->files['web']); + } + + // 安装手机端 + if (file_exists($from_wap_dir)) { + dir_copy($from_wap_dir, $to_wap_dir, $this->files['wap']); + } + + //安装资源文件 + if (file_exists($from_resource_dir)) { + dir_copy($from_resource_dir, $to_resource_dir, $this->files['resource']); + } + + return true; + } + + /** + * 编译后台图标库文件 + * 图标开发注意事项,不能占用 iconfont、icon 关键词(会跟系统图标冲突),建议增加业务前缀,比如 旅游业:recharge + * @return bool + */ + public function compileAdminIcon() + { + $compile_path = $this->root_path . str_replace('/', DIRECTORY_SEPARATOR, 'admin/src/styles/icon/'); + + $content = ""; + $root_path = $compile_path . 'addon'; // 插件图标根目录 + $file_arr = getFileMap($root_path); + if (!empty($file_arr)) { + foreach ($file_arr as $ck => $cv) { + if (str_contains($cv, '.css')) { + $path = str_replace($root_path . '/', '', $ck); + $path = str_replace('/.css', '', $path); + $content .= "@import \"addon/{$path}\";\n"; + } + } + } + file_put_contents($compile_path . 'addon-iconfont.css', $content); + return true; + } + + public function installSql() + { + $sql = $this->install_addon_path . 'sql' . DIRECTORY_SEPARATOR . 'install.sql'; + $this->executeSql($sql); + return true; + } + + /** + * 执行sql + * @param string $sql_file + * @return bool + */ + public static function executeSql(string $sql_file): bool + { + if (is_file($sql_file)) { + $sql = file_get_contents($sql_file); + // 执行sql + $sql_arr = parse_sql($sql); + if (!empty($sql_arr)) { + $prefix = config('database.connections.mysql.prefix'); + Db::startTrans(); + try { + foreach ($sql_arr as $sql_line) { + $sql_line = trim($sql_line); + if (!empty($sql_line)) { + $sql_line = str_ireplace('{{prefix}}', $prefix, $sql_line); + $sql_line = str_ireplace('INSERT INTO ', 'INSERT IGNORE INTO ', $sql_line); + Db::execute($sql_line); + } + } + Db::commit(); + return true; + } catch ( PDOException $e ) { + Db::rollback(); + throw new AddonException($e->getMessage()); + } + } + } + return true; + } + + /** + * 执行插件install方法 + * @return true + */ + public function handleAddonInstall() + { + // 执行安装sql + $this->installSql(); + // 安装菜单 + $this->installMenu(); + // 安装计划任务 + $this->installSchedule(); + + $core_addon_service = new CoreAddonService(); + $install_data = $this->getAddonConfig($this->addon); + $install_data['icon'] = 'addon/' . $this->addon . '/icon.png'; + $core_addon_service->set($install_data); + //清理缓存 + Cache::tag(self::$cache_tag_name)->clear(); + Cache::set("local_install_addons", []); + //执行命令 + //执行插件安装方法 + $class = "addon\\" . $this->addon . "\\" . 'Addon'; + if (class_exists($class)) { + (new $class())->install(); + } + // 清除插件安装中标识 + Cache::delete('install_task'); + Cache::delete($this->cache_key . '_install_check'); + return true; + } + + /** + * 合并依赖 + * @return void + */ + public function installDepend() + { + (new CoreDependService())->installDepend($this->addon); + } + + /** + * 备份前端页面 + * @return void + */ + public function backupFrontend() { + $backup_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'frontend' . DIRECTORY_SEPARATOR; + if (is_dir($backup_dir)) del_target_dir($backup_dir, true); + + foreach (['admin', 'wap', 'web'] as $port) { + $to_dir = public_path() . $port; + if (is_dir($to_dir)) { + if (is_dir($backup_dir . $port)) del_target_dir($backup_dir . $port, true); + // 备份原目录 + dir_copy($to_dir, $backup_dir . $port); + } + } + } + + /** + * 还原被覆盖前的文件 + * @return void + */ + public function revertFrontendBackup() { + $backup_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'frontend' . DIRECTORY_SEPARATOR; + $backup_file = []; + + search_dir($backup_dir, $backup_file); + + if (!empty($backup_file)) { + dir_copy(public_path(), $backup_dir); + @del_target_dir($backup_dir, true); + } + } + + /** + * 插件编译文件覆盖 + * @return void + */ + public function coverCompile() { + $compile = $this->getAddonConfig($this->addon)['compile']; + foreach ($compile as $port) { + $to_dir = public_path() . $port; + $from_dir = $this->addon_path . 'compile' . DIRECTORY_SEPARATOR . $port; + + if (is_dir($from_dir) && is_dir($to_dir)) { + // 删除后覆盖目录 + del_target_dir($to_dir, true); + dir_copy($from_dir, $to_dir . $port); + } + } + } + + /** + * 云安装 + * @return void + */ + public function cloudInstall() { + (new CoreAddonCloudService())->cloudBuild($this->addon); + } + + /** + * 插件卸载环境检测 + * @param string $addon + * @return void + */ + public function uninstallCheck() { + $data = [ + // 目录检测 + 'dir' => [ + // 要求可读权限 + 'is_readable' => [], + // 要求可写权限 + 'is_write' => [] + ] + ]; + + // 将要删除的根目录 + $to_admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_resource_dir = public_path() . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + + if (is_dir($to_admin_dir)) $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_admin_dir), 'status' => is_write($to_admin_dir)]; + if (is_dir($to_web_dir)) $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_web_dir), 'status' => is_write($to_web_dir)]; + if (is_dir($to_wap_dir)) $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_wap_dir), 'status' => is_write($to_wap_dir)]; + if (is_dir($to_resource_dir)) $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $to_resource_dir), 'status' => is_write($to_resource_dir)]; + + $check_res = array_merge( + array_column($data['dir']['is_readable'], 'status'), + array_column($data['dir']['is_write'], 'status') + ); + + // 是否通过校验 + $data['is_pass'] = !in_array(false, $check_res); + return $data; + } + + /** + * 卸载插件 + * @return true + */ + public function uninstall() + { + $site_num = (new Site())->where([ ['app', '=', $this->addon] ])->count('site_id'); + if ($site_num) throw new CommonException('APP_NOT_ALLOW_UNINSTALL'); + + //执行插件卸载方法 + $class = "addon\\" . $this->addon . "\\" . 'Addon'; + if (class_exists($class)) { + (new $class())->uninstall(); + } + $core_addon_service = new CoreAddonService(); + $addon_info = $core_addon_service->getInfoByKey($this->addon); + if (empty($addon_info)) throw new AddonException('NOT_UNINSTALL'); + if (!$this->uninstallSql()) throw new AddonException('ADDON_SQL_FAIL'); + if (!$this->uninstallDir()) throw new AddonException('ADDON_DIR_FAIL'); + + // 卸载菜单 + $this->uninstallMenu(); + + // 卸载计划任务 + $this->uninstallSchedule(); + + // 卸载wap + $this->uninstallWap(); + + // 还原备份 + if (!empty($addon_info['compile'])) (new CoreAddonCompileHandleService())->revertBackup(); + + $core_addon_service = new CoreAddonService(); + $core_addon_service->delByKey($this->addon); + Cache::set("local_install_addons", []); + + //清理缓存 + Cache::tag(self::$cache_tag_name)->clear(); + return true; + } + + /** + * 卸载数据库 + * @return true + */ + public function uninstallSql() + { + $sql = $this->install_addon_path . 'sql' . DIRECTORY_SEPARATOR . 'uninstall.sql'; + $this->executeSql($sql); + return true; + } + + /** + * 卸载插件 + * @return true + */ + public function uninstallDir() + { + // 将要删除的根目录 + $to_admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_web_layouts = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'layouts' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + $to_resource_dir = public_path() . 'addon' . DIRECTORY_SEPARATOR . $this->addon . DIRECTORY_SEPARATOR; + + // 卸载admin管理端 + if (is_dir($to_admin_dir)) del_target_dir($to_admin_dir, true); + // 移除admin图标 + $addon_icon_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'styles' . DIRECTORY_SEPARATOR . 'icon' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $this->addon; + if (is_dir($addon_icon_dir)) del_target_dir($addon_icon_dir, true); + + // 编译后台图标库文件 + $this->compileAdminIcon(); + + // 卸载pc端 + if (is_dir($to_web_dir)) del_target_dir($to_web_dir, true); + if (is_dir($to_web_layouts)) del_target_dir($to_web_layouts, true); + + // 卸载手机端 + if (is_dir($to_wap_dir)) del_target_dir($to_wap_dir, true); + + //删除资源文件 + if (is_dir($to_resource_dir)) del_target_dir($to_resource_dir, true); + + //todo 卸载插件目录涉及到的空文件 + return true; + } + + /** + * 卸载菜单 + * @return true + * @throws DbException + */ + public function uninstallMenu() + { + $core_menu_service = new CoreMenuService(); + $core_menu_service->deleteByAddon($this->addon); + Cache::tag(MenuService::$cache_tag_name)->clear(); + return true; + } + + /** + * 卸载计划任务 + * @return true + */ + public function uninstallSchedule() + { + (new CoreScheduleInstallService())->uninstallAddonSchedule($this->addon); + return true; + } + + /** + * 卸载手机端 + * @return void + */ + public function uninstallWap() + { + // 编译 diy-group 自定义组件代码文件 + $this->compileDiyComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + // 编译 pages.json 页面路由代码文件 + $this->uninstallPageCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR); + + // 编译 加载插件标题语言包 + $this->compileLocale($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + } + + /** + * 安装插件菜单 + * @return true + */ + public function installMenu() + { + (new CoreMenuService)->refreshAddonMenu($this->addon); + Cache::tag(MenuService::$cache_tag_name)->clear(); + return true; + } + + /** + * 安装手机端 + * @return void + */ + public function installWap() + { + + // 编译 diy-group 自定义组件代码文件 + $this->compileDiyComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + // 编译 pages.json 页面路由代码文件 + $this->installPageCode($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR); + + // 编译 加载插件标题语言包 + $this->compileLocale($this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $this->addon); + + } + + public function download() + { + + } + + public function edit() + { + + } + + /** + * 更新composer依赖 + * @return true + */ + public function updateComposer() + { + $result = Terminal::execute(root_path(), 'composer update'); + if ($result !== true) { + throw new CommonException($result); + } + return $result; + } + + /** + * 更新admin端依赖 + * @return true + */ + public function updateAdminDependencies() + { + $result = Terminal::execute(root_path() . '../admin/', 'npm install'); + if ($result !== true) { + throw new CommonException($result); + } + return $result; + } + + /** + * 更新手机端依赖 + * @return true + */ + public function updateWapDependencies() + { + $result = Terminal::execute(root_path() . '../uni-app/', 'npm install'); + if ($result !== true) { + throw new CommonException($result); + } + return $result; + } + + /** + * 更新web端依赖 + * @return true + */ + public function updateWebDependencies() + { + $result = Terminal::execute(root_path() . '../web/', 'npm install'); + if ($result !== true) { + throw new CommonException($result); + } + return $result; + } + + /** + * 安装完成 销毁插件实例 + * @return true + */ + public function installComplete() + { + return true; + } + + /** + * 安装计划任务 + * @return true + */ + public function installSchedule() + { + (new CoreScheduleInstallService())->installAddonSchedule($this->addon); + return true; + } + + /** + * 处理编译之后的文件 + * @return void + */ + public function handleBuildFile() { + return true; + } +} diff --git a/niucloud/app/service/core/addon/CoreAddonLogService.php b/niucloud/app/service/core/addon/CoreAddonLogService.php new file mode 100644 index 0000000..c28ecac --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonLogService.php @@ -0,0 +1,47 @@ +model = new AddonLog(); + } + + /** + * 新增插件日志 + * @param array $params + * @return true + */ + public function add(array $params) + { + $data = array( + 'type' => $params['type'], + 'key' => $params['key'], + 'from_version' => $params['from_version'], + 'to_version' => $params['to_version'], + ); + $this->model->create($data); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/CoreAddonService.php b/niucloud/app/service/core/addon/CoreAddonService.php new file mode 100644 index 0000000..286166b --- /dev/null +++ b/niucloud/app/service/core/addon/CoreAddonService.php @@ -0,0 +1,275 @@ +model = new Addon(); + } + + /** + * 获取已下载的插件 + * @return array + */ + public function getLocalAddonList() + { + $list = []; + $online_app_list = []; + $install_addon_list = $this->model->append(['status_name'])->column('title, icon, key, desc, status, author, version, install_time, update_time, cover', 'key'); + try { + $niucloud_module_list = (new CoreModuleService())->getModuleList()['data'] ?? []; + foreach ($niucloud_module_list as $v) { + $data = array( + 'title' => $v['app']['app_name'], + 'desc' => $v['app']['app_desc'], + 'key' => $v['app']['app_key'] ?? '', + 'version' => $v['version'] ?? '', + 'author' => $v['app']['app_name'], + 'type' => $v['app']['app_type'], + 'support_app' => $v['app']['support_channel'] ?? [], + 'is_download' => false, + 'is_local' => false, + 'icon' => $v['app']['app_logo'], + 'cover' => $v['app']['window_logo'][0], + ); + $data['install_info'] = $install_addon_list[$v['app']['app_key']] ?? []; + $list[$v['app']['app_key']] = $data; + } + $online_app_list = array_column($list, 'key'); + } catch ( Throwable $e ) { + $error = $e->getMessage(); + } + $files = get_files_by_dir($this->addon_path); + if (!empty($files)) { + foreach ($files as $path) { + $data = $this->getAddonConfig($path); + if (isset($data['key'])) { + $data['icon'] = is_file($data['icon']) ? image_to_base64($data['icon']) : ''; + $data['cover'] = is_file($data['cover']) ? image_to_base64($data['cover']) : ''; + $key = $data['key']; + $data['install_info'] = $install_addon_list[$key] ?? []; + $data['is_download'] = true; + $data['is_local'] = in_array($data['key'], $online_app_list) ? false : true; + $data['version'] = isset($list[ $data['key'] ]) ? $list[ $data['key'] ]['version'] : $data['version']; + $list[$key] = $data; + } + } + } + return ['list' => $list, 'error' => $error ?? '']; + } + + /** + * 已下载的插件数量 + * @return int + */ + public function getLocalAddonCount() + { + $files = get_files_by_dir($this->addon_path); + return count($files); + } + + /** + * 获取已安装插件数量 + * @param array $where + * @return int + * @throws DbException + */ + public function getCount(array $where = []) + { + + return $this->model->where($where)->count(); + } + + /** + * 安装的插件分页 + * @param array $where + * @return array + * @throws DbException + * @throws DbException + */ + public function getPage(array $where) + { + $field = 'id, title, key, desc, version, status, icon, create_time, install_time'; + $search_model = $this->model->where([])->withSearch(['title'], $where)->field($field)->order('id desc'); + return $this->pageQuery($search_model); + } + + /** + * 插件详情 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + return $this->model->where([['id', '=', $id]])->findOrEmpty()->toArray(); + } + + /** + * 设置插件(安装或更新) + * @param array $params + * @return true + */ + public function set(array $params) + { + $title = $params['title']; + $key = $params['key']; + $addon = $this->model->where([ + ['key', '=', $key], + ])->findOrEmpty(); + $version = $params['version'];//版本号 + $desc = $params['desc']; + $icon = $params['icon']; + $data = array( + 'title' => $title, + 'version' => $version, + 'status' => 1, + 'desc' => $desc, + 'icon' => $icon, + 'key' => $key, + 'compile' => $params['compile'] ?? [], + 'type' => $params['type'], + 'support_app' => $params['support_app'] ?? '' + ); + if ($addon->isEmpty()) { + $data['install_time'] = time(); + $this->model->create($data); + } else { + $data['update_time'] = time(); + $addon->save($data); + } + return true; + } + + /** + * 通过key查询插件 + * @param string $key + * @return array + */ + public function getInfoByKey(string $key) + { + return $this->model->where([['key', '=', $key]])->findOrEmpty()->toArray(); + } + + /** + * 通过插件名删除插件 + * @param string $key + * @return true + */ + public function delByKey(string $key) + { + $this->model->where([['key', '=', $key]])->delete(); + return true; + } + + /** + * 修改插件状态 + * @param int $id + * @param int $status + * @return true + */ + public function setStatus(int $id, int $status) + { + $this->model->where([['id', '=', $id]])->update(['status' => $status]); + return true; + } + + public function getAppList() + { + return event('addon', []); + } + + /** + * 查询已安装的有效的应用 + * @return array + */ + public function getInstallAddonList(){ + return $this->model->where([['status', '=', AddonDict::ON]])->append(['status_name'])->column('title, icon, key, desc, status, type, support_app', 'key'); + } + + /** + * 开发者插件 + * @return array + */ + public function getAddonDevelopList(string $search = '') + { + $list = []; + + $install_addon_list = (new Addon())->append(['status_name', 'type_name'])->column('title, icon, key, desc, status, author, version, install_time, update_time, cover, type', 'key'); + $files = get_files_by_dir($this->addon_path); + if (!empty($files)) { + $core_addon_service = new CoreAddonService(); + foreach ($files as $path) { + $data = $core_addon_service->getAddonConfig($path); + if (isset($data['key'])) { + $key = $data['key']; + $data['install_info'] = $install_addon_list[$key] ?? []; + $data['icon'] = is_file($data['icon']) ? image_to_base64($data['icon']) : ''; + $data['cover'] = is_file($data['cover']) ? image_to_base64($data['cover']) : ''; + $data['is_download'] = true; + $data['type_name'] = empty($data['type']) ? '' : AddonDict::getType()[$data['type']] ?? ''; + $list[$key] = $data; + } + } + } + + if ($search) { + foreach ($list as $k => $v) { + if (!str_contains($v['title'], $search)) unset($list[$k]); + } + } + return array_values($list); + } + + /** + * 应用详情 + * @param string $key + * @return array + */ + public function getAddonDevelopInfo(string $key) + { + $dir = $this->addon_path . $key . DIRECTORY_SEPARATOR; + if (!is_dir($dir)) return []; + $core_addon_service = new CoreAddonService(); + + $data = $core_addon_service->getAddonConfig($key); + if (isset($data['key'])) { + $data['icon'] = is_file($data['icon']) ? image_to_base64($data['icon']) : ''; + $data['cover'] = is_file($data['icon']) ? image_to_base64($data['cover']) : ''; + $data['type_name'] = empty($data['type']) ? '' : AddonDict::getType()[$data['type']] ?? ''; + } + if(isset($data['support_app']) && !empty($data['support_app'])) + { + $data['support_type'] = 2; + }else{ + $data['support_type'] = 1; + } + return $data; + } + +} diff --git a/niucloud/app/service/core/addon/CoreDependService.php b/niucloud/app/service/core/addon/CoreDependService.php new file mode 100644 index 0000000..f0ab13d --- /dev/null +++ b/niucloud/app/service/core/addon/CoreDependService.php @@ -0,0 +1,171 @@ +server_composer_file = $this->root_path . 'niucloud' . DIRECTORY_SEPARATOR . 'composer.json'; + $this->admin_npm_file = $this->root_path . 'admin' . DIRECTORY_SEPARATOR . 'package.json'; + $this->web_npm_file = $this->root_path . 'web' . DIRECTORY_SEPARATOR . 'package.json'; + $this->wap_npm_file = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR . 'package.json'; + } + + /** + * 获取插件更新后的composer以及package + * @param $addon + * @return bool + */ + public function installDepend($addon) + { + //composer文件扩展 + $composer_content = $this->getComposerContent(); + $addon_composer_content = $this->getAddonComposerContent($addon); + if (isset($addon_composer_content['require'])) { + $composer_content['require'] = array_merge($composer_content['require'], $addon_composer_content['require']); + } + + if (isset($addon_composer_content['require_dev'])) { + $composer_content['require_dev'] = array_merge($composer_content['require_dev'], $addon_composer_content['require_dev']); + } + $this->setComposerContent($composer_content); + //admin-package文件扩展 + $admin_package_array = $this->getNpmContent('admin'); + $addon_admin_package_array = $this->getAddonNpmContent($addon, 'admin'); + if (isset($addon_admin_package_array['dependencies'])) { + $admin_package_array['dependencies'] = array_merge($admin_package_array['dependencies'], $addon_admin_package_array['dependencies']); + } + + if (isset($addon_admin_package_array['devDependencies'])) { + $admin_package_array['devDependencies'] = array_merge($admin_package_array['devDependencies'], $addon_admin_package_array['devDependencies']); + } + $this->setNpmContent($admin_package_array, 'admin'); + + //web-package文件扩展 + $web_package_array = $this->getNpmContent('web'); + $addon_web_package_array = $this->getAddonNpmContent($addon, 'web'); + if (isset($addon_web_package_array['dependencies'])) { + $web_package_array['dependencies'] = array_merge($web_package_array['dependencies'], $addon_web_package_array['dependencies']); + } + + if (isset($addon_web_package_array['devDependencies'])) { + $web_package_array['devDependencies'] = array_merge($web_package_array['devDependencies'], $addon_web_package_array['devDependencies']); + } + $this->setNpmContent($web_package_array, 'web'); + + //uni-app-package文件扩展 + $wap_package_array = $this->getNpmContent('uni-app'); + $addon_wap_package_array = $this->getAddonNpmContent($addon, 'wap'); + if (isset($addon_wap_package_array['dependencies'])) { + $wap_package_array['dependencies'] = array_merge($wap_package_array['dependencies'], $addon_wap_package_array['dependencies']); + } + + if (isset($addon_wap_package_array['devDependencies'])) { + $wap_package_array['devDependencies'] = array_merge($wap_package_array['devDependencies'], $addon_wap_package_array['devDependencies']); + } + $this->setNpmContent($wap_package_array, 'wap'); + return true; + } + + /** + * 获取composer的内容 + * @return mixed + */ + public function getComposerContent() + { + return $this->jsonFileToArray($this->server_composer_file); + } + + /** + * 获取插件的composer内容 + * @param string $addon + * @return array|mixed + */ + public function getAddonComposerContent(string $addon) + { + $composer_path = $this->geAddonPackagePath($addon) . 'composer.json'; + return $this->jsonFileToArray($composer_path); + } + + /** + * 更新composer内容 + * @param array $content + * @return bool + */ + public function setComposerContent(array $content) + { + return $this->writeArrayToJsonFile($content, $this->server_composer_file); + } + + /** + * 获取npm文件内容 + * @param $type //端口类型:admin wap web + */ + public function getNpmContent(string $type) + { + if ($type == 'admin') { + $file_path = $this->admin_npm_file; + } elseif ($type == 'web') { + $file_path = $this->web_npm_file; + } else { + $file_path = $this->wap_npm_file; + } + return $this->jsonFileToArray($file_path); + } + + /** + * 获取插件npm内容 + * @param string $addon + * @param string $type 'admin wep uni-app' + * @return array|mixed + */ + public function getAddonNpmContent(string $addon, string $type) + { + if ($type == 'admin') { + $file_path = $this->geAddonPackagePath($addon) . 'admin-package.json'; + } elseif ($type == 'web') { + $file_path = $this->geAddonPackagePath($addon) . 'web-package.json'; + } else { + $file_path = $this->geAddonPackagePath($addon) . 'uni-app-package.json'; + } + return $this->jsonFileToArray($file_path); + } + + /** + * 更新npm内容 + * @param array $content + * @param string $type + * @return bool + */ + public function setNpmContent(array $content, string $type) + { + if ($type == 'admin') { + $file_path = $this->admin_npm_file; + } elseif ($type == 'web') { + $file_path = $this->web_npm_file; + } else { + $file_path = $this->wap_npm_file; + } + return $this->writeArrayToJsonFile($content, $file_path); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/WapTrait.php b/niucloud/app/service/core/addon/WapTrait.php new file mode 100644 index 0000000..bd2379f --- /dev/null +++ b/niucloud/app/service/core/addon/WapTrait.php @@ -0,0 +1,430 @@ +\n"; + $content .= " \n"; + $content .= " \n"; + + $root_path = $compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'app/components/diy'); // 系统自定义组件根目录 + $file_arr = getFileMap($root_path); + + if (!empty($file_arr)) { + foreach ($file_arr as $ck => $cv) { + if (str_contains($cv, 'index.vue')) { + + $path = str_replace($root_path . '/', '', $ck); + $path = str_replace('/index.vue', '', $path); + if ($path == 'group') { + continue; + } + + // 获取自定义组件 key 关键词 + $name_arr = explode('-', $path); + foreach ($name_arr as $k => $v) { + // 首字母大写 + $name_arr[ $k ] = strtoupper($v[ 0 ] ?? '') . substr($v, 1); + } + $name = implode('', $name_arr); + $file_name = 'diy-' . $path; + + $content .= " \n"; + } + } + } + + // 查询已安装的插件 + $addon_import_content = ""; + $addon_service = new CoreAddonService(); + $addon_list = $addon_service->getInstallAddonList(); + $addon_arr = []; + if (!empty($addon_list)) { + foreach ($addon_list as $k => $v) { + $addon_arr[] = $v[ 'key' ]; + } + } + $addon_arr[] = $addon; // 追加新装插件 + $addon_arr = array_unique($addon_arr); + foreach ($addon_arr as $k => $v) { + $addon_path = $compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'addon/' . $v . '/components/diy'); // 插件自定义组件根目录 + $addon_file_arr = getFileMap($addon_path); + if (!empty($addon_file_arr)) { + foreach ($addon_file_arr as $ck => $cv) { + if (str_contains($cv, 'index.vue')) { + + $path = str_replace($addon_path . '/', '', $ck); + $path = str_replace('/index.vue', '', $path); + + // 获取自定义组件 key 关键词 + $name_arr = explode('-', $path); + foreach ($name_arr as $nk => $nv) { + // 首字母大写 + $name_arr[ $nk ] = strtoupper($nv[ 0 ] ?? '') . substr($nv, 1); + } + $name = implode('', $name_arr); + $file_name = 'diy-' . $path; + + $content .= " \n"; + + $addon_import_content .= " import diy{$name} from '@/addon/" . $v . "/components/diy/{$path}/index.vue';\n"; + } + } + } + } + + $content .= " \n"; + $content .= " \n"; + $content .= " \n"; + $content .= "\n"; + + $content .= "\n"; + + $content .= "\n"; + + return file_put_contents($compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'app/components/diy/group/index.vue'), $content); + } + + /** + * 编译 fixed-group 固定模板组件代码文件 + * @param $compile_path + * @param $addon + * @return false|int + */ + public function compileFixedComponentsCode($compile_path, $addon) + { + $content = "\n"; + + $content .= "\n"; + + $content .= "\n"; + + return file_put_contents($compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'app/components/fixed/group/index.vue'), $content); + } + + /** + * 编译 pages.json 页面路由代码文件,// {{PAGE}} + * @param $compile_path + * @return bool|int|void + */ + public function installPageCode($compile_path) + { + if (!file_exists($this->geAddonPackagePath($this->addon) . 'uni-app-pages.php')) return; + + $uniapp_pages = require $this->geAddonPackagePath($this->addon) . 'uni-app-pages.php'; + + if (empty($uniapp_pages[ 'pages' ])) { + return; + } + + $addon = strtoupper($this->addon); + + $content = @file_get_contents($compile_path . "pages.json"); + + $page_begin = $addon . '_PAGE_BEGIN'; + $page_end = $addon . '_PAGE_END'; + + // 清除插件页面路由代码块 + $pattern = "/\s+\/\/ {$page_begin}[\S\s]+\/\/ {$page_end}(\n,)?/"; + $content = preg_replace($pattern, '', $content); + + $uniapp_pages[ 'pages' ] = str_replace('PAGE_BEGIN', $page_begin, $uniapp_pages[ 'pages' ]); + $uniapp_pages[ 'pages' ] = str_replace('PAGE_END', $page_end, $uniapp_pages[ 'pages' ]); + $uniapp_pages[ 'pages' ] = str_replace('{{addon_name}}', $this->addon, $uniapp_pages[ 'pages' ]); // 将变量替换为当前安装的插件名称 + + $replacement = ",// {{PAGE}}\n"; + $replacement .= $uniapp_pages[ 'pages' ] . "\n,"; + + $page_begin_matches_count = preg_match_all('/PAGE_BEGIN/', $content . $replacement, $page_begin_matches); + + // 如果存在多个插件,要在插件前面加上逗号分割 + if ($page_begin_matches_count > 0) { + $content = str_replace(',// {{PAGE}}', '// {{PAGE}}', $content); + } + + $content = str_replace('// {{PAGE}}', $replacement, $content); + + // 清除最后一个逗号 + $content = preg_replace('/PAGE_END\n,\s+\],/', "PAGE_END\n],", $content); + + // 找到页面路由文件 pages.json,写入内容 + return file_put_contents($compile_path . "pages.json", $content); + } + + /** + * 编译 pages.json 页面路由代码文件 + * @param $compile_path + * @return bool|int|void + */ + public function uninstallPageCode($compile_path) + { + if (!file_exists($this->geAddonPackagePath($this->addon) . 'uni-app-pages.php')) return; + + $uniapp_pages = require $this->geAddonPackagePath($this->addon) . 'uni-app-pages.php'; + + if (empty($uniapp_pages[ 'pages' ])) { + return; + } + + $addon = strtoupper($this->addon); + + $content = @file_get_contents($compile_path . "pages.json"); + + $page_begin = $addon . '_PAGE_BEGIN'; + $page_end = $addon . '_PAGE_END'; + + $uniapp_pages[ 'pages' ] = str_replace('PAGE_BEGIN', $page_begin, $uniapp_pages[ 'pages' ]); + $uniapp_pages[ 'pages' ] = str_replace('PAGE_END', $page_end, $uniapp_pages[ 'pages' ]); + + // 清除插件页面路由代码块 + $pattern = "/\s+\/\/ {$page_begin}[\S\s]+\/\/ {$page_end}(\n,)?/"; + $content = preg_replace($pattern, '', $content); + + $page_begin_matches_count = preg_match_all('/PAGE_BEGIN/', $content, $page_begin_matches); + + // 如果没有页面,清除最后一个逗号 + if ($page_begin_matches_count == 0) { + $content = str_replace(',// {{PAGE}}', '// {{PAGE}}', $content); + } + + // 清除最后一个逗号 + $content = preg_replace('/PAGE_END\n,\s+\],/', "PAGE_END\n],", $content); + + return file_put_contents($compile_path . "pages.json", $content); + + } + + /** + * 编译 加载插件标题语言包 + * @param $compile_path + * @param $addon + * @param $addon + */ + public function compileLocale($compile_path, $addon) + { + $locale_data = []; + + $root_path = $compile_path . str_replace('/', DIRECTORY_SEPARATOR, 'locale'); // 系统语言包根目录 + $file_arr = getFileMap($root_path, [], false); + if (!empty($file_arr)) { + foreach ($file_arr as $ck => $cv) { + if (str_contains($cv, '.json')) { + $app_json = @file_get_contents($ck); + $json = json_decode($app_json, true); + // 清空当前安装/卸载的插件语言包 + foreach ($json as $jk => $jc) { + if (strpos($jk, $addon) !== false) { + unset($json[ $jk ]); + } + } + $locale_data[ $cv ] = [ + 'path' => $ck, + 'json' => $json + ]; + } + } + } + + // 查询已安装的插件 + $addon_service = new CoreAddonService(); + $addon_list = $addon_service->getInstallAddonList(); + $addon_arr = []; + if (!empty($addon_list)) { + foreach ($addon_list as $k => $v) { + $addon_arr[] = $v[ 'key' ]; + } + } + $addon_arr[] = $addon; // 追加新装插件 + $addon_arr = array_unique($addon_arr); + foreach ($addon_arr as $k => $v) { + $addon_path = $compile_path . str_replace('/', DIRECTORY_SEPARATOR, $v . '/locale'); // 插件语言包根目录 + $addon_file_arr = getFileMap($addon_path, [], false); + if (!empty($addon_file_arr)) { + foreach ($addon_file_arr as $ck => $cv) { + if (str_contains($cv, '.json')) { + $json = @file_get_contents($ck); + $json = json_decode($json, true); + $addon_json = []; + foreach ($json as $jk => $jv) { + $addon_json[ $v . '.' . $jk ] = $jv; + } + if (isset($locale_data[ $cv ])) $locale_data[ $cv ][ 'json' ] = array_merge($locale_data[ $cv ][ 'json' ], $addon_json); + } + } + } + } + + foreach ($locale_data as $k => $v) { + file_put_contents($v[ 'path' ], json_encode($v[ 'json' ], JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)); + } + } + +} diff --git a/niucloud/app/service/core/addon/vm/admin/api.vm b/niucloud/app/service/core/addon/vm/admin/api.vm new file mode 100644 index 0000000..1c1b40b --- /dev/null +++ b/niucloud/app/service/core/addon/vm/admin/api.vm @@ -0,0 +1,7 @@ + +import request from '@/utils/request' + +/***************************************************** hello world ****************************************************/ +export function getHelloWorld() { + return request.get(`{key}/hello_world`) +} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/vm/admin/lang.vm b/niucloud/app/service/core/addon/vm/admin/lang.vm new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/admin/lang.vm @@ -0,0 +1 @@ +{} diff --git a/niucloud/app/service/core/addon/vm/admin/views.vm b/niucloud/app/service/core/addon/vm/admin/views.vm new file mode 100644 index 0000000..2a193a4 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/admin/views.vm @@ -0,0 +1,17 @@ + + + + + diff --git a/niucloud/app/service/core/addon/vm/package/uni-app-pages.vm b/niucloud/app/service/core/addon/vm/package/uni-app-pages.vm new file mode 100644 index 0000000..084983d --- /dev/null +++ b/niucloud/app/service/core/addon/vm/package/uni-app-pages.vm @@ -0,0 +1,14 @@ + <<middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); \ No newline at end of file diff --git a/niucloud/app/service/core/addon/vm/system/api_controller.vm b/niucloud/app/service/core/addon/vm/system/api_controller.vm new file mode 100644 index 0000000..d499c09 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/system/api_controller.vm @@ -0,0 +1,27 @@ +middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, false) //false表示不验证登录 + ->middleware(ApiLog::class); + + + +Route::group('{key}', function() { + +})->middleware(ApiChannel::class) + ->middleware(ApiCheckToken::class, true) //表示验证登录 + ->middleware(ApiLog::class); + diff --git a/niucloud/app/service/core/addon/vm/system/common.vm b/niucloud/app/service/core/addon/vm/system/common.vm new file mode 100644 index 0000000..6dd3552 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/system/common.vm @@ -0,0 +1,4 @@ + [ + + ], + 'listen' => [ + + ], + 'subscribe' => [ + ], +]; \ No newline at end of file diff --git a/niucloud/app/service/core/addon/vm/system/info.vm b/niucloud/app/service/core/addon/vm/system/info.vm new file mode 100644 index 0000000..984a308 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/system/info.vm @@ -0,0 +1,10 @@ +{ + "title": "{title}", + "desc": "{desc}", + "key": "{key}", + "version": "{version}", + "author": "{author}", + "type": "{type}", + "support_app": "{support_app}", + "compile":[] +} diff --git a/niucloud/app/service/core/addon/vm/system/menu.vm b/niucloud/app/service/core/addon/vm/system/menu.vm new file mode 100644 index 0000000..7f3540a --- /dev/null +++ b/niucloud/app/service/core/addon/vm/system/menu.vm @@ -0,0 +1,33 @@ + '{title}', + 'menu_key' => '{key}', + 'menu_type' => 0, + 'icon' => '', + 'api_url' => '', + 'router_path' => '{key}', + 'view_path' => '', + 'methods' => '', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [ + [ + 'menu_name' => '{title}', + 'menu_key' => '{key}_hello_world', + 'menu_type' => 1, + 'icon' => '', + 'api_url' => '{key}/hello_world', + 'router_path' => 'hello_world', + 'view_path' => 'hello_world/index', + 'methods' => 'get', + 'sort' => 100, + 'status' => 1, + 'is_show' => 1, + 'children' => [] + ], + ] + ] +]; diff --git a/niucloud/app/service/core/addon/vm/uni-app/api.vm b/niucloud/app/service/core/addon/vm/uni-app/api.vm new file mode 100644 index 0000000..d6def9d --- /dev/null +++ b/niucloud/app/service/core/addon/vm/uni-app/api.vm @@ -0,0 +1,8 @@ + +import request from '@/utils/request' + +/***************************************************** hello world ****************************************************/ +export function getHelloWorld() { + return request.get(`{key}/hello_world`) +} + diff --git a/niucloud/app/service/core/addon/vm/uni-app/lang.vm b/niucloud/app/service/core/addon/vm/uni-app/lang.vm new file mode 100644 index 0000000..311847d --- /dev/null +++ b/niucloud/app/service/core/addon/vm/uni-app/lang.vm @@ -0,0 +1,2 @@ +{} + diff --git a/niucloud/app/service/core/addon/vm/uni-app/views.vm b/niucloud/app/service/core/addon/vm/uni-app/views.vm new file mode 100644 index 0000000..777b1a6 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/uni-app/views.vm @@ -0,0 +1,18 @@ + + + + diff --git a/niucloud/app/service/core/addon/vm/web/api.vm b/niucloud/app/service/core/addon/vm/web/api.vm new file mode 100644 index 0000000..d2241df --- /dev/null +++ b/niucloud/app/service/core/addon/vm/web/api.vm @@ -0,0 +1,8 @@ + +/** + * hello world + */ +export function getHelloWorld() { + return request.get('{key}/hello_world') +} + diff --git a/niucloud/app/service/core/addon/vm/web/lang.vm b/niucloud/app/service/core/addon/vm/web/lang.vm new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/niucloud/app/service/core/addon/vm/web/lang.vm @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/vm/web/lang_pages.vm b/niucloud/app/service/core/addon/vm/web/lang_pages.vm new file mode 100644 index 0000000..93efa1d --- /dev/null +++ b/niucloud/app/service/core/addon/vm/web/lang_pages.vm @@ -0,0 +1,9 @@ +{ + "pages": { + "{key}": { + "hello_world": { + "index": "hello_world" + } + } + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/addon/vm/web/routes.vm b/niucloud/app/service/core/addon/vm/web/routes.vm new file mode 100644 index 0000000..46674b0 --- /dev/null +++ b/niucloud/app/service/core/addon/vm/web/routes.vm @@ -0,0 +1,6 @@ +export default [ + { + path: "/{key}/hello_world/index", + component: () => import('~/addon/{key}/pages/hello_world/index.vue') + } +] diff --git a/niucloud/app/service/core/addon/vm/web/view.vm b/niucloud/app/service/core/addon/vm/web/view.vm new file mode 100644 index 0000000..af84acd --- /dev/null +++ b/niucloud/app/service/core/addon/vm/web/view.vm @@ -0,0 +1,15 @@ + + + + diff --git a/niucloud/app/service/core/aliapp/CoreAliappConfigService.php b/niucloud/app/service/core/aliapp/CoreAliappConfigService.php new file mode 100644 index 0000000..ff4b5c6 --- /dev/null +++ b/niucloud/app/service/core/aliapp/CoreAliappConfigService.php @@ -0,0 +1,67 @@ +getConfig($site_id, ConfigKeyDict::ALIAPP)['value'] ?? []; + return [ + 'name' => $info['name'] ?? '', + 'app_id' => $info['app_id'] ?? '', + 'private_key' => $info['private_key'] ?? '', + 'aes_key' => $info['aes_key'] ?? '', + 'public_key_crt' => $info['public_key_crt'] ?? '', + 'alipay_public_key_crt' => $info['alipay_public_key_crt'] ?? '', + 'alipay_with_crt' => $info['alipay_with_crt'] ?? '', + 'qrcode' => $info['qrcode'] ?? '' + ]; + } + + /** + * 支付宝小程序配置 + * @param int $site_id + * @param array $data + * @return SysConfig|bool|Model + */ + public function setAliappConfig(int $site_id, array $data){ + $config = [ + 'name' => $data['name'] ?? '', + 'app_id' => $data['app_id'] ?? '', + 'private_key' => $data['private_key'] ?? '', + 'aes_key' => $data['aes_key'] ?? '', + 'public_key_crt' => $data['public_key_crt'] ?? '', + 'alipay_public_key_crt' => $data['alipay_public_key_crt'] ?? '', + 'alipay_with_crt' => $data['alipay_with_crt'] ?? '', + 'qrcode' => $data['qrcode'] ?? '' + ]; + return (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::ALIAPP, $config); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/applet/CoreAppletDownloadService.php b/niucloud/app/service/core/applet/CoreAppletDownloadService.php new file mode 100644 index 0000000..dff6a7a --- /dev/null +++ b/niucloud/app/service/core/applet/CoreAppletDownloadService.php @@ -0,0 +1,105 @@ +getInfo($version_id); + if(empty($version_info)) throw new CommonException('APPLET_VERSION_NOT_EXISTS');//不存在的版本 + $this->version_id = $version_id; + $this->version = $version_info['version']; + $this->type = $version_info['type']; + $this->path = $version_info['path']; + } + + public function setReplace($replace) + { + $this->replace = $replace; + return $this; + } + + /** + * 下载小程序包 + * @param int $site_id + * @return File + */ + public function download(int $site_id) + { + $zip = new ZipArchive; + $this->replace = event('AppletReplace', ['site_id' => $site_id, 'type' => $this->type])[0] ?? []; + $file_name = $site_id.'.zip'; + $dir = $this->root_path .'/applet/'. $this->type.'/'.$this->version.'/'; + //新生成一个当前站点这个版本的压缩包,如果已存在就直接下载 + $file = $dir.$file_name; + if(!file_exists($file)){ + if (! is_dir($dir) && ! mkdir($dir, 0777, true) && ! is_dir($dir)) { + throw new RuntimeException(sprintf('Directory "%s" was not created', $dir)); + } + if(!copy($this->path, $file)) throw new CommonException('APPLET_VERSION_PACKAGE_NOT_EXIST');//文件拷贝失败 + if ($zip->open($file) === true) { + //编译 + $this->compile($zip); + //关闭 + $zip->close(); + } else { + throw new CommonException('APPLET_VERSION_PACKAGE_NOT_EXIST'); + } + } + //新增下载记录 + (new CoreAppletSiteVersionService())->add($site_id, $this->version_id, AppletlDict::DOWNLOAD); + return download($file, $this->version); + } + + /** + * 编译替换 + * @param $zip + * @return void + */ + public function compile($zip) + { + foreach ($this->replace as $v) { + $item_path = $v['path']; + $item_variable = $v['variable']; + //Read contents into memory + $old_contents = $zip->getFromName($item_path); + //Modify contents: + $temp_content = $old_contents; + foreach($item_variable as $variable_k => $variable_v){ + $temp_content = str_replace($variable_k, $variable_v, $temp_content); + } + //Delete the old... + $zip->deleteName($item_path); + //Write the new... + $zip->addFromString($item_path, $temp_content); + } + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/applet/CoreAppletSiteVersionService.php b/niucloud/app/service/core/applet/CoreAppletSiteVersionService.php new file mode 100644 index 0000000..05b2115 --- /dev/null +++ b/niucloud/app/service/core/applet/CoreAppletSiteVersionService.php @@ -0,0 +1,123 @@ +model = new AppletSiteVersion(); + } + + + /** + * 版本升级列表 + * @param int $site_id + * @param array $where + * @return array + */ + public function getPage(int $site_id, array $where = []) + { + if ($site_id > 0) { + $where[] = ['site_id', '=', $site_id]; + } + $field = 'id, site_id, version_id, type, action, version, version_num, create_time'; + $search_model = $this->model->where($where)->field($field)->order('version_num desc')->with(['appletVersion']); + return $this->pageQuery($search_model); + } + + /** + * 获取版本升级信息 + * @param int $site_id + * @param int $id + * @return array + */ + public function getInfo(int $site_id, int $id) + { + $field = 'id, site_id, version_id, type, action, version, version_num, create_time'; + return $this->model->where([['id', '=', $id], ['site_id', '=', $site_id]])->field($field)->with(['appletVersion'])->findOrEmpty()->toArray(); + } + + /** + * 添加版本升级记录 + * @param int $site_id + * @param int $version_id + * @param string $action + * @return true + */ + public function add(int $site_id, int $version_id, string $action) + { + $version_info = (new CoreAppletVersionService())->getInfo($version_id); + if (empty($version_info)) throw new CommonException('APPLET_VERSION_NOT_EXISTS'); + $data['site_id'] = $site_id; + $data['type'] = $version_info['type']; + $data['create_time'] = time(); + $data['version_id'] = $version_info['id']; + $data['action'] = $action;//操作方式 + $this->model->create($data); + return true; + + } + + + /** + * 获取最后一个下载或升级的版本 + * @param int $site_id + * @param string $type + * @param string $action + * @return mixed|string + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getLastVersion(int $site_id, string $type, string $action = '') + { + $where = [['site_id', '=', $site_id], ['type', '=', $type]]; + $list = $this->model->where($where)->with(['appletVersion'])->select()->toArray(); + $list = array_column($list, null, 'version_num'); + ksort($list); + $site_version = reset($list); + return $site_version['version'] ?? ''; + } + + /** + * 获取当前站点最新可升级的小程序版本 + * @param int $site_id + * @param string $type + * @return void + */ + public function getUpgradeVersion(int $site_id, string $type) + { + //查询下一次升级或下载的版本 + $version = $this->getLastVersion($site_id, $type); + $where = [['type', '=', $type]]; + if (!$version) { + $version_num = version_to_int($version); + $where[] = ['version_num', '>', $version_num]; + } + //查询比这个版本号大的版本号 + return (new AppletVersion())->where($where)->order('version_num desc')->findOrEmpty(); + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/applet/CoreAppletVersionService.php b/niucloud/app/service/core/applet/CoreAppletVersionService.php new file mode 100644 index 0000000..9946a63 --- /dev/null +++ b/niucloud/app/service/core/applet/CoreAppletVersionService.php @@ -0,0 +1,65 @@ +model = new AppletVersion(); + } + + /** + * 获取版本列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id, site_id, type, uid, version, version_num, path, create_time, update_time,desc, config'; + $search_model = $this->model->where($where)->field($field)->order('create_time desc'); + return $this->pageQuery($search_model); + } + + /** + * 获取版本信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, site_id, type, uid, version, version_num, path, create_time, update_time,desc, config'; + return $this->model->where([[ 'id', '=', $id ]])->field($field)->findOrEmpty()->toArray(); + } + + + /** + * 通过版本号查询版本内容 + * @param string $version + * @param string $type + * @return array + */ + public function getInfoByVersion(string $version, string $type){ + return $this->model->where([['version', '=', $version], ['type', '=', $type]])->findOrEmpty()->toArray(); + } + + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/captcha/CoreCaptchaImgService.php b/niucloud/app/service/core/captcha/CoreCaptchaImgService.php new file mode 100644 index 0000000..43da006 --- /dev/null +++ b/niucloud/app/service/core/captcha/CoreCaptchaImgService.php @@ -0,0 +1,95 @@ +getCaptchaService($captcha_type); + return $service->get(); + } + + /** + * 一次验证验证码 + * @return true + */ + public function check(){ + try { + [$captcha_key, $captcha_code] = $this->validate(); + $service = $this->getCaptchaService(); + $service->check($captcha_key, $captcha_code); + return true; + } catch ( Exception $e) { + throw new CaptchaException('CAPTCHA_ERROR'); + } + } + + /** + * 一次验证验证码 + * @return true + */ + public function verification(){ + try { + [$captcha_key, $captcha_code] = $this->validate(); + $service = $this->getCaptchaService(); + $service->verificationByEncryptCode($captcha_code); + return true; + } catch (ParamException $e) { + throw new CaptchaException('CAPTCHA_ERROR'); + } + } + + /** + * 验证验证码参数 + * @return array + */ + protected function validate(){ + $captcha_key = request()->param('captcha_key', ''); + $captcha_code = request()->param('captcha_code', ''); + if(empty($captcha_code)) throw new CaptchaException('CAPTCHA_ERROR'); + return [$captcha_key, $captcha_code]; + } + protected function getCaptchaService($captcha_type = 'blockPuzzle') + { + $config = config('imgcaptcha'); + return match ($captcha_type) { + 'clickWord' => new ClickWordCaptchaService($config), + 'blockPuzzle' => new BlockPuzzleCaptchaService($config), + default => throw new AuthException('CAPTCHA_INVALID'), + }; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/captcha/CoreCaptchaService.php b/niucloud/app/service/core/captcha/CoreCaptchaService.php new file mode 100644 index 0000000..8ca2811 --- /dev/null +++ b/niucloud/app/service/core/captcha/CoreCaptchaService.php @@ -0,0 +1,66 @@ + $captcha_key, + 'img' => $captcha_data['img'], + ]; + } + + /** + * 核验验证码 + * @return true + */ + public function check(){ + $captcha_key = request()->param('captcha_key', ''); + $captcha_code = request()->param('captcha_code', ''); + if(empty($captcha_key) || empty($captcha_code)) throw new CaptchaException('CAPTCHA_ERROR'); + $captcha = Cache::pull($captcha_key); + if (empty($captcha)) throw new CaptchaException('CAPTCHA_ERROR'); + + if ($captcha_code != $captcha) throw new CaptchaException('CAPTCHA_ERROR'); + + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/channel/CoreH5Service.php b/niucloud/app/service/core/channel/CoreH5Service.php new file mode 100644 index 0000000..5ab6f5d --- /dev/null +++ b/niucloud/app/service/core/channel/CoreH5Service.php @@ -0,0 +1,49 @@ +model = new SysAttachment(); + } + + + + /** + * 获取h5配置 + * @return array|mixed + */ + public function getH5(int $site_id) + { + $info = (new CoreConfigService())->getConfig($site_id, ConfigKeyDict::H5)['value'] ?? []; + if(empty($info)) + { + $info = [ + 'is_open' => 0 + ]; + } + return $info; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/diy/CoreDiyConfigService.php b/niucloud/app/service/core/diy/CoreDiyConfigService.php new file mode 100644 index 0000000..945fa7b --- /dev/null +++ b/niucloud/app/service/core/diy/CoreDiyConfigService.php @@ -0,0 +1,110 @@ + &$v) { + + // 将系统底部导航放到第一个位置 + if ($v[ 'key' ] == 'app') { + $app_bottom_nav_config = $v; + unset($list[ $k ]); + } + } + $list = array_values($list); + if (!empty($app_bottom_nav_config)) { + array_unshift($list, $app_bottom_nav_config); + } + return $list; + } + + /** + * 获取底部导航配置 + * @param int $site_id + * @param string $key + * @return array + */ + public function getBottomConfig(int $site_id, string $key = 'app') + { + $default_config = $this->getBottomList([ 'key' => $key ])[ 0 ] ?? []; + + $config_key = ConfigKeyDict::DIY_BOTTOM . '_' . $key; + $info = (new CoreConfigService())->getConfig($site_id, $config_key)[ 'value' ] ?? []; + + if (!empty($default_config)) { + if (!empty($info)) { + $value = $info; + $res[ 'key' ] = $default_config[ 'key' ]; + $res[ 'info' ] = $default_config[ 'info' ]; + $res[ 'value' ] = $value; + $info = $res; + } else { + $info = $default_config; + } + } + return $info; + } + + /** + * 设置底部导航 + * @param int $site_id + * @param array $data + * @param string $key + * @return SysConfig|bool|Model + */ + public function setBottomConfig(int $site_id, array $data, string $key = 'app') + { + return (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::DIY_BOTTOM . '_' . $key, $data); + } + + /** + * 设置启动页 + * @param int $site_id + * @param array $data + * @return SysConfig|bool|Model + */ + public function setStartUpPageConfig(int $site_id, array $data) + { + return (new CoreConfigService())->setConfig($site_id, 'START_UP_PAGE_' . strtoupper($data[ 'type' ]), $data); + } + + /** + * 获取启动页配置 + * @param int $site_id + * @param string $type + * @return array + */ + public function getStartUpPageConfig(int $site_id, string $type) + { + $info = (new CoreConfigService())->getConfig($site_id, 'START_UP_PAGE_' . strtoupper($type))[ 'value' ] ?? []; + if (!empty($info)) { + $info[ 'name' ] = isset($info[ 'name' ]) ? $info[ 'name' ] : ''; + } + return $info; + } +} diff --git a/niucloud/app/service/core/member/CoreMemberAccountService.php b/niucloud/app/service/core/member/CoreMemberAccountService.php new file mode 100644 index 0000000..c3ed602 --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberAccountService.php @@ -0,0 +1,90 @@ +where([ + [ 'member_id', '=', $member_id ], + [ 'site_id', '=', $site_id ] + ])->field($account_type .','.$account_type."_get" .', username, mobile, nickname')->lock(true)->find(); + if(empty($member_info)) throw new CommonException('MEMBER_NOT_EXIST'); + $account_new_data = round((float) $member_info[ $account_type ] + (float) $account_data, 2); + + if ($account_new_data < 0) { + throw new CommonException('ACCOUNT_INSUFFICIENT'); + } + + $data = array ( + 'site_id' => $site_id, + 'member_id' => $member_id, + 'account_type' => $account_type, + 'account_data' => $account_data, + "account_sum" => $account_new_data, + 'from_type' => $from_type, + 'create_time' => time(), + 'nickname' => $member_info[ 'nickname' ], + 'mobile' => $member_info[ 'mobile' ], + 'memo' => $memo, + 'related_id'=>$related_id, + ); + + Db::startTrans(); + try { + + $res = $member_account_log_model->create($data); + //账户更新 + if($account_data > 0) + { + $account_type_get = $member_info[ $account_type."_get" ] + $account_data; + }else{ + $account_type_get = $member_info[ $account_type."_get" ]; + } + $member_model->update([ + $account_type => $account_new_data, + $account_type."_get" => $account_type_get + ], [ + 'member_id' => $member_id + ]); + //账户变化事件 + $data[] = [ + $account_type => $account_new_data, + $account_type."_get" => $account_type_get + ]; + event("memberAccount", $data); + Db::commit(); + return $res->id; + } catch ( Exception $e) { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/member/CoreMemberAddressService.php b/niucloud/app/service/core/member/CoreMemberAddressService.php new file mode 100644 index 0000000..0b8b25d --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberAddressService.php @@ -0,0 +1,56 @@ +model = new MemberAddress(); + } + + + /** + * 获取会员默认地址 + * @param int $member_id + * @return array + */ + public function getDefaultAddressByMemberId(int $member_id, $type = 'address'){ + $field = 'id,member_id,name,mobile,province_id,city_id,district_id,address,full_address,lng,lat,is_default,type'; + return $this->model->where([['member_id', '=', $member_id], ['type', '=', $type] ])->field($field)->order('is_default desc')->findOrEmpty()->toArray(); + } + + /** + * 获取收货地址 + * @param int $id + * @return array + */ + public function getMemberAddressById(int $id, int $member_id){ + $field = 'id,member_id,name,mobile,province_id,city_id,district_id,address,full_address,lng,lat,is_default,type'; + return $this->model->where([['id', '=', $id], ['member_id', '=', $member_id]])->field($field)->findOrEmpty()->toArray(); + } +} diff --git a/niucloud/app/service/core/member/CoreMemberCashOutAccountService.php b/niucloud/app/service/core/member/CoreMemberCashOutAccountService.php new file mode 100644 index 0000000..897bd4d --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberCashOutAccountService.php @@ -0,0 +1,35 @@ +model = new MemberCashOutAccount(); + } + + public function getInfo(int $account_id, int $site_id, int $member_id){ + $field = 'account_id,site_id,member_id,account_type,bank_name,realname,account_no'; + return $this->model->where([['account_id', '=', $account_id], ['site_id', '=', $site_id], ['member_id', '=', $member_id]])->field($field)->findOrEmpty()->toArray(); + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/member/CoreMemberCashOutService.php b/niucloud/app/service/core/member/CoreMemberCashOutService.php new file mode 100644 index 0000000..3d4ed36 --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberCashOutService.php @@ -0,0 +1,330 @@ +model = new MemberCashOut(); + } + + /** + * 获取对象 + * @param int $site_id + * @param int $id + * @return MemberCashOut|array|mixed|Model + */ + public function find(int $site_id, int $id){ + return $this->model->where([ + ['site_id', '=', $site_id], + ['id', '=', $id], + ])->findOrEmpty(); + } + + /** + * @param int $site_id + * @param int $id + * @param string $action + * @param array $data + * @return true + */ + public function audit(int $site_id, int $id, string $action, $data = []){ + + $cash_out = $this->find($site_id, $id); + if($cash_out->isEmpty()) throw new CommonException('CASHOUT_LOG_NOT_EXIST'); + if($cash_out['status'] != MemberCashOutDict::WAIT_AUDIT) throw new CommonException('CASHOUT_STATUS_NOT_IN_WAIT_AUDIT'); + switch($action){ + case 'agree'://同意 + $this->agree($site_id, $cash_out, $data); + break; + case 'refuse'://拒绝 + $this->refuse($site_id, $cash_out, $data); + break; + } + return true; + } + + /** + * 审核通过 + * @param int $site_id + * @param MemberCashOut $cash_out + * @param array $data + * @return true + */ + public function agree(int $site_id, MemberCashOut $cash_out, array $data = []){ + $cash_out->save([ + 'audit_time' => time(), + 'status' => MemberCashOutDict::WAIT_TRANSFER + ]); + $config = (new CoreMemberConfigService())->getCashOutConfig($site_id); + if($config['is_auto_transfer']){ + try { + $this->transfer($site_id, $cash_out['id']); + } catch ( Throwable $e) { + + } + } + return true; + } + + /** + * 拒绝 + * @param int $site_id + * @param MemberCashOut $cash_out + * @param array $data + * @return true + */ + public function refuse(int $site_id, MemberCashOut $cash_out, array $data){ + $cash_out->save([ + 'audit_time' => time(), + 'status' => MemberCashOutDict::REFUSE, + 'refuse_reason' => $data['refuse_reason'] + ]); + $this->giveback($site_id, $cash_out); + return true; + } + + /** + * 转账 + * @param int $site_id + * @param int $id + * @param array $data + * @return true + */ + public function transfer(int $site_id, int $id, array $data = []){ + $transfer_type = $data['transfer_type'] ?? ''; + + $cash_out = $this->find($site_id, $id); + if($cash_out->isEmpty()) throw new CommonException('RECHARGE_LOG_NOT_EXIST'); + if($cash_out['status'] != MemberCashOutDict::WAIT_TRANSFER) throw new CommonException('CASHOUT_STATUS_NOT_IN_WAIT_TRANSFER'); + $transfer_no = $cash_out['transfer_no']; + if(!$transfer_no){ + $transfer_no = (new CoreTransferService())->create($site_id, PayDict::MEMBER, $cash_out['member_id'], $cash_out['money'], CashOutTypeDict::MEMBER_CASH_OUT, get_lang('MEMBER_CASHOUT_TRANSFER')); + $cash_out->save( + [ + 'transfer_no' => $transfer_no + ] + ); + } + + if($transfer_type != TransferDict::OFFLINE){ + $data['transfer_type'] = $cash_out['transfer_type']; + $data['transfer_realname'] = $cash_out['transfer_realname']; + $data['transfer_mobile'] = $cash_out['transfer_mobile']; + $data['transfer_bank'] = $cash_out['transfer_bank']; + $data['transfer_account'] = $cash_out['transfer_account']; + $transfer_type = $cash_out['transfer_type']; + if($transfer_type == TransferDict::WECHAT){ + $member = (new CoreMemberService())->find($site_id, $cash_out['member_id']); + $data['openid'] = $member['wx_openid']; + } + }else{ + $transfer_type = $cash_out['transfer_type']; + } + + $result = (new CoreTransferService())->transfer($site_id, $transfer_no, $transfer_type, $data); + return true; + + } + + + /** + * 提现转账完成 + * @param $site_id + * @param $transfer_no + * @return true + */ + public function transferFinish($site_id, $transfer_no){ + $cash_out = $this->model->where( + [ + ['site_id', '=', $site_id], + ['transfer_no', '=', $transfer_no] + ] + )->findOrEmpty(); + + if($cash_out->isEmpty()) throw new CommonException('RECHARGE_LOG_NOT_EXIST'); + if($cash_out['status'] != MemberCashOutDict::WAIT_TRANSFER) throw new CommonException('CASHOUT_STATUS_NOT_IN_WAIT_TRANSFER'); + //减去提现中金额 + $this->give($site_id, $cash_out); + $cash_out->save([ + 'status' => MemberCashOutDict::TRANSFERED, + 'transfer_time' => time() + ]); + + return true; + } + + /** + * 申请提现 + * @param int $site_id + * @param int $member_id + * @param array $data + * @return true + */ + public function apply(int $site_id, int $member_id, array $data){ + $core_member_service = new CoreMemberService(); + $member = $core_member_service->find($site_id, $member_id); + + if($member->isEmpty()) throw new CommonException('MEMBER_NOT_EXIST'); + $config = (new CoreMemberConfigService())->getCashOutConfig($site_id); + $is_open = $config['is_open']; + if($is_open == 0) throw new CommonException('CASHOUT_NOT_OPEN'); + $apply_money = $data['apply_money']; + if($apply_money < $config['min']) throw new CommonException('CASHOUT_MONEY_TOO_LITTLE'); + $transfer_type = $data['transfer_type']; + if(!in_array($transfer_type, $config['transfer_type'])) throw new CommonException('CASHOUT_TYPE_NOT_OPEN'); + $service_money = format_round_money($apply_money * $config['rate']/100); + $min = $config['min']; + if($apply_money < $min) throw new CommonException('CASHOUT_MONEY_TOO_LITTLE'); +// $apply_money, $transfer_type, $transfer_realname, $transfer_mobile, $transfer_bank, $transfer_account + $money = $apply_money - $service_money; + $account_type = $data['account_type'] ?? MemberAccountTypeDict::MONEY; + + $cash_out_account = []; + if ($transfer_type != TransferDict::WECHAT) { + $cash_out_account = (new CoreMemberCashOutAccountService())->getInfo($data['account_id'], $site_id, $member_id); + if (empty($cash_out_account)) throw new CommonException('CASH_OUT_ACCOUNT_NOT_EXIST'); + } + + Db::startTrans(); + try { + $data = array( + 'member_id' => $member_id, + 'site_id' => $site_id, + 'cash_out_no' => $this->createCashOutNo($site_id), + 'status' => MemberCashOutDict::WAIT_AUDIT, + 'account_type' => $account_type, + 'apply_money' => $apply_money, + 'service_money' => $service_money, + 'money' => $money, + 'transfer_type' => $transfer_type, + 'transfer_realname' => $cash_out_account['realname'] ?? '', + 'transfer_mobile' => $member['mobile'] ?? '', + 'transfer_bank' => $cash_out_account['bank_name'] ?? '', + 'transfer_account' => $cash_out_account['account_no'] ?? '', + 'rate' => $config['rate'], + ); + $cash_out = $this->model->create($data); + //扣除对应账户金额 + $member_account_service = new CoreMemberAccountService(); + + $member_account_service->addLog($site_id, $member_id, $account_type, -$apply_money, 'cash_out', get_lang('MEMBER_APPLY_CASHOUT'), $cash_out->id); + $member->save( + [ + $account_type.'_cash_outing' => $member[$account_type.'_cash_outing'] + $apply_money + ] + ); + if ($config['is_auto_verify']) { + $core_member_cash_out_service = new CoreMemberCashOutService(); + $core_member_cash_out_service->audit($site_id, $cash_out->id, 'agree'); + } + Db::commit(); + }catch ( Exception $e) { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + return true; + } + + /** + * 当前可用的转账方式 + * @param $site_id + * @return array|array[] + */ + public function getTransferType($site_id){ + $config = (new CoreMemberConfigService())->getCashOutConfig($site_id); + return TransferDict::getTransferType($config['transfer_type'], false); + } + + + + /** + * 返还用户的对应账户 + * @param int $site_id + * @param MemberCashOut $cash_out + * @return true + */ + public function giveback(int $site_id, MemberCashOut $cash_out){ + $core_member_account_service = new CoreMemberAccountService(); + + $core_member_account_service->addLog($site_id, $cash_out->member_id, $cash_out->account_type, $cash_out->apply_money, 'cash_out', get_lang('CASHOUT_IS_REFUSE'), $cash_out->id); + $core_member_service = new CoreMemberService(); + $member = $core_member_service->find($site_id, $cash_out->member_id); + if($member->isEmpty()) throw new CommonException('MEMBER_NOT_EXIST'); + $member->save( + [ + $cash_out->account_type.'_cash_outing' => $member[$cash_out->account_type.'_cash_outing'] - $cash_out->apply_money + ] + ); + return true; + } + + /** + * 累加提现金额,累减提现中金额 + * @param int $site_id + * @param MemberCashOut $cash_out + * @return true + */ + public function give(int $site_id, MemberCashOut $cash_out){ + $core_member_service = new CoreMemberService(); + $member = $core_member_service->find($site_id, $cash_out->member_id); + if($member->isEmpty()) throw new CommonException('MEMBER_NOT_EXIST'); + $member->save( + [ + $cash_out->account_type.'_cash_outing' => $member[$cash_out->account_type.'_cash_outing'] - $cash_out->apply_money + ] + ); + return true; + } + /** + * 创建订单编号 + * @param int $site_id + * @return string + */ + public function createCashOutNo(int $site_id) + { + $time_str = date('YmdHi'); + $max_no = Cache::get("cash_out_no_" . $site_id . "_" . $time_str); + + if (!isset($max_no) || empty($max_no)) { + $max_no = 1; + } else { + ++$max_no; + } + $cash_out_no = $time_str . $site_id . sprintf('%03d', $max_no); + Cache::set("cash_out_no_" . $site_id . "_" . $time_str, $max_no); + return $cash_out_no; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/member/CoreMemberConfigService.php b/niucloud/app/service/core/member/CoreMemberConfigService.php new file mode 100644 index 0000000..7327f96 --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberConfigService.php @@ -0,0 +1,134 @@ +getConfig($site_id, 'LOGIN')['value'] ?? []; + return [ + 'is_username' => $info['is_username'] ?? 1,//是否用户名密码登录 + 'is_mobile' => $info['is_mobile'] ?? 0,//是否手机验证码登录 + 'is_auth_register' => $info['is_auth_register'] ?? 1,//是否第三方自动注册 + 'is_bind_mobile' => $info['is_bind_mobile'] ?? 0,//是否强制绑定手机 + 'agreement_show' => $info['agreement_show'] ?? 0 // 政策协议是否展示 + ]; + } + + /** + * 注册与登录设置 + * @param int $site_id + * @param array $data + * @return true + */ + public function setLoginConfig(int $site_id, array $data){ + $config = [ + 'is_username' => $data['is_username'] ?? 1,//是否用户名密码登录 + 'is_mobile' => $data['is_mobile'] ?? 0,//是否手机验证码登录 + 'is_auth_register' => $data['is_auth_register'] ?? 1,//是否第三方自动注册 + 'is_bind_mobile' => $data['is_bind_mobile'] ?? 0,//是否强制绑定手机 + 'agreement_show' => $data['agreement_show'] ?? 0 // 政策协议是否展示 + ]; + (new CoreConfigService())->setConfig($site_id, 'LOGIN', $config); + return true; + } + + /** + * 获取会员设置 + * @param int $site_id + * @return array + */ + public function getMemberConfig(int $site_id){ + $info = (new CoreConfigService())->getConfig($site_id, 'MEMBER')['value'] ?? []; + return [ + 'prefix' => $info['prefix'] ?? '',// 会员编码前缀 + 'length' => $info['length'] ?? 4, // 会员编码长度 + ]; + } + + /** + * 会员设置 + * @param int $site_id + * @param array $data + * @return true + */ + public function setMemberConfig(int $site_id, array $data){ + $config = [ + 'prefix' => $data['prefix'] ?? '',// 会员编码前缀 + 'length' => $data['length'] ?? 4,// 会员编码长度 + ]; + (new CoreConfigService())->setConfig($site_id, 'MEMBER', $config); + return true; + } + + + /** + * 获取会员提现设置 + * @param int $site_id + * @return array + */ + public function getCashOutConfig(int $site_id){ + $config = (new CoreConfigService())->getConfig($site_id, ConfigKeyDict::MEMBER_CASH_OUT)['value'] ?? []; + return [ + 'is_open' => $config['is_open'] ?? '0',//是否启用提现 + 'transfer_type' => $config['transfer_type'] ?? [],//提现方式 + 'min' => $config['min'] ?? '0',//最低提现金额 +// 'max' => '0',//最高提现金额 + 'rate' => $config['rate'] ?? '0',//手续费比率 + 'is_auto_verify' => $config['is_auto_verify'] ?? '0', //是否自动审核 + 'is_auto_transfer' => $config['is_auto_transfer'] ?? '0', //是否自动转账 + ]; + } + + /** + * 会员提现配置 + * @param int $site_id + * @param array $data + * @return true + */ + public function setCashOutConfig(int $site_id, array $data){ + //校验转账方式是否合法 + $transfer_type_list = array_keys(TransferDict::getTransferType()); + if(array_diff(array_diff($data['transfer_type'], $transfer_type_list), $transfer_type_list)) throw new CommonException('TRANSFER_TYPE_NOT_EXIST'); + $config = [ + 'is_open' => $data['is_open'],//是否启用提现 + 'transfer_type' => $data['transfer_type'] ?? [],//提现方式 + 'min' => $data['min'] ?? '',//最低提现金额 + 'is_auto_verify' => $data['is_auto_verify'] ?? 0, //是否自动审核 + 'is_auto_transfer' => $data['is_auto_transfer'] ?? 0, //是否自动转账 +// 'max' => $data['max'] ?? '',//最高提现金额 + 'rate' => $data['rate'] ?? '',//手续费比率 + ]; + (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::MEMBER_CASH_OUT, $config); + return true; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/member/CoreMemberLabelService.php b/niucloud/app/service/core/member/CoreMemberLabelService.php new file mode 100644 index 0000000..a73325a --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberLabelService.php @@ -0,0 +1,86 @@ +model = new MemberLabel(); + } + + /** + * 通过标签id获取标签列表 + * @param int $site_id + * @param array $label_ids + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getMemberLabelListByLabelIds(int $site_id, array $label_ids){ + sort($label_ids); + $cache_name = __METHOD__ . md5(implode("_", $label_ids)); + return cache_remember( + $cache_name, + function () use ($site_id, $label_ids) { + return array_keys_search($this->getAll($site_id), $label_ids, 'label_id'); + }, + self::$cache_tag_name.$site_id + ); + } + + /** + * 获取全部会员标签 + * @param int $site_id + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAll(int $site_id){ + $cache_name = __METHOD__ . $site_id; + return cache_remember( + $cache_name, + function () use ($site_id) { + $field = 'label_id, label_name'; + return $this->model->where([['site_id', '=', $site_id]])->field($field)->select()->toArray(); + + }, + self::$cache_tag_name.$site_id + ); + } + + /** + * 清理站点会员标签缓存 + * @param int $site_id + * @return true + */ + public function clearCache(int $site_id){ + Cache::tag(self::$cache_tag_name.$site_id)->clear(); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/member/CoreMemberService.php b/niucloud/app/service/core/member/CoreMemberService.php new file mode 100644 index 0000000..71fcdc3 --- /dev/null +++ b/niucloud/app/service/core/member/CoreMemberService.php @@ -0,0 +1,162 @@ +model = new Member(); + } + /** + * 修改 + * @param int $site_id + * @param int $member_id + * @param string $field + * @param $data + * @return Member + */ + public function modify(int $site_id, int $member_id, string $field, $data) + { + $field_name = match ($field) { + 'nickname' => 'nickname', + 'headimg' => 'headimg', + 'member_label' => 'member_label', + 'birthday' => 'birthday', + 'sex' => 'sex', + }; + $where = array( + ['site_id', '=', $site_id], + ['member_id', '=', $member_id], + ); + return $this->model->where($where)->update([$field_name => $data]); + } + + /** + * 通过会员查询openid + * @param int $site_id + * @param int $member_id + * @return array + */ + public function getInfoByMemberId(int $site_id, int $member_id, string $field = '*'){ + $where = array( + ['site_id', '=', $site_id], + ['member_id', '=', $member_id] + ); + return $this->model->where($where)->field($field)->findOrEmpty()->toArray(); + } + + /** + * 查询会员实例 + * @param int $site_id + * @param int $member_id + * @return Member|array|mixed|Model + */ + public function find(int $site_id, int $member_id){ + $where = array( + ['site_id', '=', $site_id], + ['member_id', '=', $member_id] + ); + return $this->model->where($where)->findOrEmpty(); + } + + /** + * 会员数量 + * @return int + * @throws DbException + */ + public function getCount(array $where = []){ + $condition = array(); + if(!empty($where['site_id'])){ + $condition[] = ['site_id', '=', $where['site_id']]; + } + if(!empty($where['create_time'])){ + $condition[] = ['create_time', 'between', $where['create_time']]; + } + if(!empty($where['sex'])){ + $condition[] = ['sex', '=', $where['sex']]; + } + if(!empty($where['last_visit_time'])){ + $condition[] = ['last_visit_time', 'between', $where['last_visit_time']]; + } + return $this->model->where($condition)->count(); + } + + /** + * 生成会员编码 + * @param int $site_id + * @return string + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public static function createMemberNo(int $site_id) { + $site = (new Site())->where([ ['site_id', '=', $site_id] ])->find(); + $config = (new CoreMemberConfigService())->getMemberConfig($site_id); + + $no = $site->member_no + 1; + $member_no = $config['prefix'] . ( strlen($config['prefix']) > $config['length'] ? $no : str_pad($no, ($config['length'] - strlen($config['prefix'])), "0", STR_PAD_LEFT) ); + + $member = (new Member())->where([ ['site_id', '=', $site_id], ['member_no', '=', $member_no] ])->findOrEmpty(); + + if ($member->isEmpty()) { + return $member_no; + } else { + // 变更站点最大会员码值 + $site->save(['member_no' => $no ]); + return self::createMemberNo($site_id); + } + } + + /** + * 设置会员会员码 + * @param int $site_id + * @param int $member_id + * @return void + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public static function setMemberNo(int $site_id, int $member_id) { + $site = (new Site())->where([ ['site_id', '=', $site_id] ])->find(); + $config = (new CoreMemberConfigService())->getMemberConfig($site_id); + + $no = $site->member_no + 1; + $member_no = $config['prefix'] . ( strlen($config['prefix']) > $config['length'] ? $no : str_pad($no, ($config['length'] - strlen($config['prefix'])), "0", STR_PAD_LEFT) ); + + $member = (new Member())->where([ ['site_id', '=', $site_id], ['member_no', '=', $member_no] ])->findOrEmpty(); + + // 变更站点最大会员码值 + $site->save(['member_no' => $no ]); + + if ($member->isEmpty()) { + (new Member())->update([ 'member_no' => $member_no ], [ ['site_id', '=', $site_id], ['member_id', '=', $member_id] ]); + } else { + self::setMemberNo($site_id, $member_id); + } + } +} diff --git a/niucloud/app/service/core/menu/CoreMenuService.php b/niucloud/app/service/core/menu/CoreMenuService.php new file mode 100644 index 0000000..921ae3e --- /dev/null +++ b/niucloud/app/service/core/menu/CoreMenuService.php @@ -0,0 +1,195 @@ +model = new SysMenu(); + } + + /** + * 插件卸载 + * @param $addon + * @return bool + */ + public function uninstallAddonMenu($addon) + { + $addon_loader = new DictLoader("Menu"); + + $this->deleteByAddon($addon); + // 清除缓存 + Cache::tag(MenuService::$cache_tag_name)->clear(); + return true; + } + + /** + * 删除插件菜单(强删除) + * @param string $addon + * @return true + * @throws DbException + */ + public function deleteByAddon(string $addon, bool $is_all = true) + { + $where = [['addon', '=', $addon]]; + if(!$is_all){ + $where[] = ['source', '=', MenuDict::SYSTEM]; + } + Db::name("sys_menu")->where($where)->delete(); + return true; + } + + /** + * 刷新所有插件菜单 + */ + public function refreshAllAddonMenu() + { + + $addons = (new Addon())->field("key")->select()->toArray(); + foreach ($addons as $k => $v) { + $this->refreshAddonMenu($v["key"]); + } + return true; + } + + /** + * 安装或者刷新插件菜单 + * @param $addon + * @return bool + */ + public function refreshAddonMenu($addon) + { + $addon_loader = new DictLoader("Menu"); + + $addon_admin_tree = $addon_loader->load(["addon" => $addon, "app_type" => "admin"]); + $addon_site_tree = $addon_loader->load(["addon" => $addon, "app_type" => "site"]); + + if (isset($addon_admin_tree['delete'])) unset($addon_admin_tree['delete']); + if (isset($addon_site_tree['delete'])) unset($addon_site_tree['delete']); + + if (!empty($addon_site_tree)) { + $admin_menu = $this->loadMenu($addon_admin_tree, "admin", $addon); + $site_menu = $this->loadMenu($addon_site_tree, "site", $addon); + $this->deleteByAddon($addon, false); + if(!empty($site_menu)) + { + $this->install(array_merge($admin_menu, $site_menu)); + } + } + + return true; + + } + + /** + * 加载菜单 + * @return array + */ + public function loadMenu(array $menu_tree, string $app_type, string $addon = '') + { + //加载系统 + $menu_list = []; + $this->menuTreeToList($menu_tree, '', $app_type, $addon, $menu_list); + return $menu_list; + } + + /** + * 菜单数转为列表 + * @param array $tree + * @param string $parent_key + * @param string $app_type + * @param string $addon + * @param array $menu_list + */ + private function menuTreeToList(array $tree, string $parent_key = '', string $app_type = AppTypeDict::ADMIN, string $addon = '', array &$menu_list = []) + { + if (is_array($tree)) { + foreach ($tree as $key => $value) { + $item = [ + 'menu_name' => $value['menu_name'], + 'menu_short_name' => $value['menu_short_name'] ?? '', + 'menu_key' => $value['menu_key'], + 'app_type' => $app_type, + 'addon' => $addon, + 'parent_key' => $value['parent_key'] ?? $parent_key, + 'menu_type' => $value['menu_type'], + 'icon' => $value['icon'] ?? '', + 'api_url' => $value['api_url'] ?? '', + 'router_path' => $value['router_path'] ?? '', + 'view_path' => $value['view_path'] ?? '', + 'methods' => $value['methods'] ?? '', + 'sort' => $value['sort'] ?? '', + 'status' => 1, + 'is_show' => $value['is_show'] ?? 1 + ]; + $refer = $value; + if (isset($refer['children'])) { + unset($refer['children']); + $menu_list[] = $item; + $p_key = $refer['menu_key']; + $this->menuTreeToList($value['children'], $p_key, $app_type, $addon, $menu_list); + } else { + $menu_list[] = $item; + } + } + } + } + + /** + * 安装菜单 + * @param array $menu_list + * @return true + */ + public function install(array $menu_list) + { + $this->model->replace()->insertAll($menu_list); + // 清除缓存 + Cache::tag(MenuService::$cache_tag_name)->clear(); + return true; + } + + /** + * 获取path + * @param $menu_key + * @param $paths + * @return string + * @throws DbException + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\ModelNotFoundException + */ + public function getRoutePathByMenuKey($menu_key, $paths = []) { + $menu = $this->model->where([ ['menu_key', '=', $menu_key], ['app_type', '=', 'site'] ])->field('parent_key,router_path')->find(); + array_unshift($paths, $menu['router_path']); + if (!empty($menu['parent_key'])) { + return $this->getRoutePathByMenuKey($menu['parent_key'], $paths); + } else { + return implode('/', $paths); + } + } +} diff --git a/niucloud/app/service/core/niucloud/CoreAuthService.php b/niucloud/app/service/core/niucloud/CoreAuthService.php new file mode 100644 index 0000000..1a6d2bf --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreAuthService.php @@ -0,0 +1,42 @@ +httpGet('authinfo', ['code' => $this->code, 'secret' => $this->secret, 'product_key' => self::PRODUCT ]); + if(!empty($auth_info['data'])){ + $auth_info['data']['address_type'] = true; + if($auth_info['data']['site_address'] != $_SERVER['HTTP_HOST']) $auth_info['data']['address_type'] = false; + } + return $auth_info; + } + + +} diff --git a/niucloud/app/service/core/niucloud/CoreCloudBaseService.php b/niucloud/app/service/core/niucloud/CoreCloudBaseService.php new file mode 100644 index 0000000..958da81 --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreCloudBaseService.php @@ -0,0 +1,40 @@ +getNiucloudConfig(); + $this->auth_code = $config['auth_code']; + if (empty($this->auth_code)) throw new CommonException('NEED_TO_AUTHORIZE_FIRST'); + + $this->root_path = dirname(root_path()) . DIRECTORY_SEPARATOR; + } + + public function addonPath(string $addon) { + return root_path() . 'addon' . DIRECTORY_SEPARATOR . $addon . DIRECTORY_SEPARATOR; + } +} diff --git a/niucloud/app/service/core/niucloud/CoreCloudBuildService.php b/niucloud/app/service/core/niucloud/CoreCloudBuildService.php new file mode 100644 index 0000000..d13283c --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreCloudBuildService.php @@ -0,0 +1,272 @@ +root_path = project_path(); + $this->build_task = Cache::get($this->cache_key); + $this->auth_code = (new CoreNiucloudConfigService())->getNiucloudConfig()['auth_code'] ?? ''; + } + + /** + * 编译前环境检测 + * @return array|array[] + */ + public function buildPreCheck() { + $niucloud_dir = $this->root_path . 'niucloud' . DIRECTORY_SEPARATOR; + $admin_dir = $this->root_path . 'admin' . DIRECTORY_SEPARATOR; + $web_dir = $this->root_path . 'web' . DIRECTORY_SEPARATOR; + $wap_dir = $this->root_path . 'uni-app' . DIRECTORY_SEPARATOR; + + try { + if (!is_dir($admin_dir)) throw new CommonException('ADMIN_DIR_NOT_EXIST'); + if (!is_dir($web_dir)) throw new CommonException('WEB_DIR_NOT_EXIST'); + if (!is_dir($wap_dir)) throw new CommonException('UNIAPP_DIR_NOT_EXIST'); + } catch (\Exception $e) { + if (strpos($e->getMessage(), 'open basedir') !== false) { + throw new CommonException('OPEN_BASEDIR_ERROR'); + } + throw new CommonException($e->getMessage()); + } + + $data = [ + // 目录检测 + 'dir' => [ + // 要求可读权限 + 'is_readable' => [], + // 要求可写权限 + 'is_write' => [] + ] + ]; + + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $niucloud_dir), 'status' => is_readable($niucloud_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $admin_dir), 'status' => is_readable($admin_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $web_dir), 'status' => is_readable($web_dir)]; + $data['dir']['is_readable'][] = ['dir' => str_replace(project_path(), '', $wap_dir), 'status' => is_readable($wap_dir)]; + + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $niucloud_dir), 'status' => is_write($niucloud_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $admin_dir), 'status' => is_write($admin_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $web_dir), 'status' => is_write($web_dir) ]; + $data['dir']['is_write'][] = ['dir' => str_replace(project_path(), '', $wap_dir), 'status' => is_write($wap_dir) ]; + + $check_res = array_merge( + array_column($data['dir']['is_readable'], 'status'), + array_column($data['dir']['is_write'], 'status') + ); + + // 是否通过校验 + $data['is_pass'] = !in_array(false, $check_res); + return $data; + } + + /** + * 云编译 + * @param $addon + * @return void + */ + public function cloudBuild() { + if ($this->build_task) throw new CommonException('CLOUD_BUILD_TASK_EXIST'); + + // 上传任务key + $task_key = uniqid(); + // 此次上传任务临时目录 + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'cloud_build' . DIRECTORY_SEPARATOR . $task_key . DIRECTORY_SEPARATOR; + $package_dir = $temp_dir . 'package' . DIRECTORY_SEPARATOR; + dir_mkdir($package_dir); + + // 拷贝composer文件 + file_put_contents($package_dir . 'composer.json', file_get_contents(root_path() . 'composer.json')); + // 拷贝手机端文件 + $wap_is_compile = (new Addon())->where([ ['compile', 'like', '%wap%'] ])->field('id')->findOrEmpty(); + if ($wap_is_compile->isEmpty()) { + dir_copy($this->root_path . 'uni-app', $package_dir . 'uni-app', exclude_dirs:['node_modules', 'unpackage', 'dist']); + } + // 拷贝admin端文件 + $admin_is_compile = (new Addon())->where([ ['compile', 'like', '%admin%'] ])->field('id')->findOrEmpty(); + if ($admin_is_compile->isEmpty()) { + dir_copy($this->root_path . 'admin', $package_dir . 'admin', exclude_dirs:['node_modules', 'dist', '.vscode', '.idea']); + } + // 拷贝web端文件 + $web_is_compile = (new Addon())->where([ ['compile', 'like', '%web%'] ])->field('id')->findOrEmpty(); + if ($web_is_compile->isEmpty()) { + dir_copy($this->root_path . 'web', $package_dir . 'web', exclude_dirs:['node_modules', '.output', '.nuxt']); + } + + $zip_file = $temp_dir . DIRECTORY_SEPARATOR . 'build.zip'; + (new CoreAddonDevelopDownloadService(''))->compressToZip($package_dir, $zip_file); + + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => time() + ]; + $response = (new CloudService())->httpPost('cloud/build?' . http_build_query($query), [ + 'multipart' => [ + [ + 'name' => 'file', + 'contents' => fopen($zip_file, 'r'), + 'filename' => 'build.zip' + ] + ], + 'timeout' => 50.0 + ]); + if (isset($response['code']) && $response['code'] == 0) throw new CommonException($response['msg']); + + $this->build_task = [ + 'task_key' => $task_key, + 'timestamp' => $query['timestamp'] + ]; + Cache::set($this->cache_key, $this->build_task); + + return $this->build_task; + } + + /** + * 获取编译任务 + * @return mixed + */ + public function getBuildTask() { + return $this->build_task; + } + + /** + * 获取编译执行日志 + * @return void + */ + public function getBuildLog() { + if (!$this->build_task) return; + + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $this->build_task['timestamp'] + ]; + $build_log = (new CloudService())->httpGet('cloud/get_build_logs?' . http_build_query($query)); + + if (isset($build_log['data']) && isset($build_log['data'][0]) && is_array($build_log['data'][0])) { + $last = end($build_log['data'][0]); + if ($last['percent'] == 100 && $last['code'] == 1) { + $build_log['data'][0] = $this->buildSuccess($build_log['data'][0]); + } + } + return $build_log; + } + + /** + * 编译完成 + * @param array $log + * @return array + */ + public function buildSuccess(array $log) { + try { + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $this->build_task['timestamp'] + ]; + $chunk_size = 1 * 1024 * 1024; + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'cloud_build' . DIRECTORY_SEPARATOR . $this->build_task['task_key'] . DIRECTORY_SEPARATOR; + + if (!isset($this->build_task['index'])) { + $response = (new CloudService())->request('HEAD','cloud/build_download?' . http_build_query($query), [ + 'headers' => ['Range' => 'bytes=0-'] + ]); + $length = $response->getHeader('Content-range'); + $length = (int)explode("/", $length[0])[1]; + $step = (int)ceil($length / $chunk_size); + + $this->build_task = array_merge($this->build_task, ['step' => $step, 'index' => 0, 'length' => $length]); + Cache::set($this->cache_key, $this->build_task); + } else { + $zip_file = $temp_dir . 'download.zip'; + $zip_resource = fopen($zip_file, 'a'); + + if (($this->build_task['index'] + 1) <= $this->build_task['step']) { + $start = $this->build_task['index'] * $chunk_size; + $end = ($this->build_task['index'] + 1) * $chunk_size; + $end = min($end, $this->build_task['length']); + + $response = (new CloudService())->request('GET','cloud/build_download?' . http_build_query($query), [ + 'headers' => ['Range' => "bytes={$start}-{$end}"] + ]); + fwrite($zip_resource, $response->getBody()); + fclose($zip_resource); + + $this->build_task['index'] += 1; + Cache::set($this->cache_key, $this->build_task); + + $log[] = [ 'code' => 1, 'action' => '编译包下载中,已下载' . round($this->build_task['index'] / $this->build_task['step'] * 100) . '%', 'percent' => '100' ]; + } else { + // 解压文件 + $zip = new \ZipArchive(); + + if ($zip->open($zip_file) === true) { + dir_mkdir($temp_dir . 'download'); + $zip->extractTo($temp_dir . 'download'); + $zip->close(); + + if (is_dir($temp_dir . 'download' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'admin')) { + del_target_dir(public_path() .'admin', true); + } + if (is_dir($temp_dir . 'download' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'web')) { + del_target_dir(public_path() .'web', true); + } + if (is_dir($temp_dir . 'download' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'wap')) { + del_target_dir(public_path() .'wap', true); + } + + dir_copy($temp_dir . 'download', root_path()); + + $this->clearTask(); + } else { + $log[] = [ 'code' => 0, 'msg' => '编译包解压失败', 'action' => '编译包解压', 'percent' => '100' ]; + } + } + } + } catch (\Exception $e) { + $log[] = [ 'code' => 0, 'msg' => $e->getMessage(), 'action' => '', 'percent' => '100' ]; + $this->clearTask(); + } + return $log; + } + + /** + * 清除任务 + * @return void + */ + public function clearTask() { + if (!$this->build_task) return; + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'cloud_build' . DIRECTORY_SEPARATOR . $this->build_task['task_key'] . DIRECTORY_SEPARATOR;; + @del_target_dir($temp_dir, true); + Cache::set($this->cache_key, null); + } +} diff --git a/niucloud/app/service/core/niucloud/CoreModuleService.php b/niucloud/app/service/core/niucloud/CoreModuleService.php new file mode 100644 index 0000000..46ad215 --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreModuleService.php @@ -0,0 +1,126 @@ + $this->code, + 'secret' => $this->secret, + 'product_key' => self::PRODUCT + ]; + return $this->httpGet('member_app_all', $params); + } + + /** + * 授权信息 + * @param $module_id + * @return array|Collection|Response|object|ResponseInterface|string + * @throws GuzzleException + */ + public function getAuthInfo() + { + $params = [ + 'app_type' => '', + 'code' => $this->code, + 'secret' => $this->secret + ]; + return $this->httpGet('member_app', $params); + } + + /** + * 版本下载 + * @param $app_key + * @param $dir + * @return string|void + * @throws GuzzleException + */ + public function downloadModule($app_key, $dir) + { + if (!is_dir($dir) && !mkdir($dir, 0777, true) && !is_dir($dir)) { + throw new RuntimeException(sprintf('Directory "%s" was not created', $dir)); + } + + $path = $dir . $app_key . time() . '.zip'; + return $this->download('member_app_download/' . $app_key, [], $path); + } + + public function upgrade($app_key, $version_id) + { + + } + + + /** + * 操作token + * @param $action + * @param $data + * @return array|\core\util\niucloud\Response|object|ResponseInterface + * @throws GuzzleException + */ + public function getActionToken($action, $data) + { + return $this->httpGet('member_app_action/'.$action, $data); + } + + /** + * 获取升级内容 + * @param $data + * @return array|\core\util\niucloud\Response|object|ResponseInterface + * @throws GuzzleException + */ + public function getUpgradeContent($data) { + return $this->httpGet('member_app_upgrade/content', $data); + } + + /** + * 校验key是否被占用 + * @param $key + * @return array|Response|object|ResponseInterface + * @throws GuzzleException + */ + public function checkKey($key) + { + return $this->httpGet('store/app_check/'.$key, ['product_key' => self::PRODUCT])['data'] ?? false; + } + + /** + * 获取框架最新版本 + * @return array|\core\util\niucloud\Response|object|ResponseInterface + * @throws GuzzleException + */ + public function getFrameworkLastVersion() { + return $this->httpGet('store/framework/lastversion', ['product_key' => self::PRODUCT])['data'] ?? false; + } + + /** + * 获取框架版本更新记录 + * @return false|mixed + * @throws GuzzleException + */ + public function getFrameworkVersionList() { + return $this->httpGet('store/framework/version', ['product_key' => self::PRODUCT])['data'] ?? false; + } +} diff --git a/niucloud/app/service/core/niucloud/CoreNiucloudConfigService.php b/niucloud/app/service/core/niucloud/CoreNiucloudConfigService.php new file mode 100644 index 0000000..7da5f87 --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreNiucloudConfigService.php @@ -0,0 +1,41 @@ +getConfig(0, ConfigKeyDict::NIUCLOUD_CONFIG)['value'] ?? []; + if(empty($info)) + { + $info = [ + 'auth_code' => '', + 'auth_secret' => '' + ]; + } + return $info; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/niucloud/CoreNotifyService.php b/niucloud/app/service/core/niucloud/CoreNotifyService.php new file mode 100644 index 0000000..8237079 --- /dev/null +++ b/niucloud/app/service/core/niucloud/CoreNotifyService.php @@ -0,0 +1,45 @@ +validateSignature(); + $message = request()->param('Message'); + $message_type = request()->param('MsgType'); + switch($message_type){ + case 'auth': + $this->setAccessToken($message['AccessToken']['token']); + break; + } + return success(); + } + + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/notice/CoreNoticeLogService.php b/niucloud/app/service/core/notice/CoreNoticeLogService.php new file mode 100644 index 0000000..27f03bc --- /dev/null +++ b/niucloud/app/service/core/notice/CoreNoticeLogService.php @@ -0,0 +1,54 @@ +model = new SysNoticeLog(); + } + + /** + * 新增消息记录 + * @param int $site_id + * @param array $data + * @return void + */ + public function add(int $site_id, array $data){ + $data['site_id'] = $site_id; + $notice_log = $this->model->create($data); + return $notice_log?->id; + } + + + public function getPage(int $site_id, array $where){ + $field = 'id, site_id, key, notice_type, uid, member_id, nickname, receiver, is_click, is_visit, visit_time, create_time, params, content'; + $search_model = $this->model->where([['site_id', '=', $site_id]])->withSearch(['key','receiver', 'create_time'], $where)->field($field)->order('create_time desc')->append(['name', 'notice_type_name']); + return $this->pageQuery($search_model); + } + + public function getInfo(int $site_id, int $id){ + $field = 'id, site_id, key, notice_type, uid, member_id, nickname, receiver, is_click, is_visit, visit_time, create_time, params, content'; + return $this->model->where([['site_id', '=', $site_id], ['id', '=', $id]])->field($field)->append(['name', 'notice_type_name'])->findOrEmpty()->toArray(); + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/notice/CoreNoticeService.php b/niucloud/app/service/core/notice/CoreNoticeService.php new file mode 100644 index 0000000..967259a --- /dev/null +++ b/niucloud/app/service/core/notice/CoreNoticeService.php @@ -0,0 +1,145 @@ +model = new SysNotice(); + } + + + /** + * 获取当前站点消息 + * @param int $site_id + * @param array $keys + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getList(int $site_id, array $keys = []) + { + $list = $this->model->where([ [ 'site_id', '=', $site_id ] ])->select()->toArray(); + if (!empty($list)) { + $list_key = array_column($list, 'key'); + $list = array_combine($list_key, $list); + } + $notice = NoticeDict::getNotice(); + foreach ($notice as $k => $v) { + if (!empty($keys) && !in_array($v[ 'key' ], $keys)) { + unset($notice[ $k ]); + continue; + } + if (array_key_exists($k, $list)) { + $notice[ $k ] = array_merge($v, $list[ $k ]); + } else { + $data = [ + 'site_id' => $site_id, + 'sms_content' => '', + 'is_wechat' => 0, + 'is_weapp' => 0, + 'is_sms' => 0, + 'wechat_template_id' => '', + 'weapp_template_id' => '', + 'sms_id' => '', + 'wechat_first' => '', + 'wechat_remark' => '' + ]; + $notice[ $k ] = array_merge($v, $data); + } + } + return $notice; + } + + /** + * 获取消息内容(可以做缓存) + * @param int $site_id + * @param string $key + * @return array + */ + public function getInfo(int $site_id, string $key) + { + if (!array_key_exists($key, NoticeDict::getNotice())) throw new NoticeException('NOTICE_TYPE_NOT_EXIST'); + $info = $this->model->where([ [ 'site_id', '=', $site_id ], [ 'key', '=', $key ] ])->findOrEmpty()->toArray(); + if (!empty($info)) { + $notice = array_merge(NoticeDict::getNotice($key), $info); + } else { + $data = [ + 'site_id' => $site_id, + 'sms_content' => '', + 'is_wechat' => 0, + 'is_weapp' => 0, + 'is_sms' => 0, + 'wechat_template_id' => '', + 'weapp_template_id' => '', + 'sms_id' => '', + 'wechat_first' => '', + 'wechat_remark' => '' + ]; + $notice = array_merge(NoticeDict::getNotice($key), $data); + + } + return $notice; + } + + public function find(int $site_id, string $key) + { + return $this->model->where([ [ 'site_id', '=', $site_id ], [ 'key', '=', $key ] ])->findOrEmpty(); + } + + /** + * 消息公共编辑 + * @param int $site_id + * @param string $key + * @param array $data + * @return bool + */ + public function edit(int $site_id, string $key, array $data) + { + $notice = $this->find($site_id, $key); + if ($notice->isEmpty()) { + $notice_template = NoticeDict::getNotice($key); + $wechat = $notice_template[ 'wechat' ] ?? []; + $this->model->create(array_merge([ + 'site_id' => $site_id, + 'key' => $key, + 'sms_content' => $notice_template[ 'sms_default_content' ] ?? '', + 'wechat_first' => $data[ 'wechat_first' ] ?? ( $wechat[ 'first' ] ?? '' ), + 'wechat_remark' => $data[ 'wechat_remark' ] ?? ( $wechat[ 'remark' ] ?? '' ), + ], $data)); + } else { + $notice->save($data); + } + return true; + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php b/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php new file mode 100644 index 0000000..f4c190b --- /dev/null +++ b/niucloud/app/service/core/notice/CoreNoticeSmsLogService.php @@ -0,0 +1,97 @@ +model = new SysNoticeSmsLog(); + } + + /** + * 获取短信发送记录列表 + * @param int $site_id + * @param array $where + * @return array + */ + public function getPage(int $site_id, array $where = []) + { + $field = 'id,mobile,sms_type,key,template_id,content,params,status,result,create_time,send_time,update_time'; + $order = 'create_time desc'; + $search_model = $this->model->where([['site_id', '=', $site_id]])->withSearch(['name', 'key', 'mobile', 'sms_type'], $where)->field($field)->order($order)->append(['name', 'sms_type_name', 'status_name']); + return $this->pageQuery($search_model); + } + + + /** + * 获取短信发送记录信息 + * @param int $site_id + * @param int $id + * @return array + */ + public function getInfo(int $site_id, int $id) + { + $field = 'id, mobile,sms_type,key,template_id,content,params,status,result,create_time,send_time,update_time'; + return $this->model->field($field)->where([['id', '=', $id], ['site_id', '=', $site_id]])->append(['name', 'sms_type_name', 'status_name'])->findOrEmpty()->toArray(); + } + + /** + * 添加短信发送记录 + * @param int $site_id + * @param array $data + * @return mixed|null + */ + public function add(int $site_id, array $data) + { + $data['site_id'] = $site_id; + $log = $this->model->create($data); + return $log?->id; + + } + + /** + * 短信发送记录编辑 + * @param int $site_id + * @param int $id + * @param array $data + * @return true + */ + public function edit(int $site_id, int $id, array $data) + { + $data['update_time'] = time(); + $this->model->where([['id', '=', $id], ['site_id', '=', $site_id]])->update($data); + return true; + } + + /** + * 删除短信发送记录 + * @param int $site_id + * @param int $id + * @return bool + */ + public function del(int $site_id, int $id) + { + return $this->model->where([['id', '=', $id], ['site_id', '=', $site_id]])->delete(); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/notice/CoreSmsService.php b/niucloud/app/service/core/notice/CoreSmsService.php new file mode 100644 index 0000000..8cd378b --- /dev/null +++ b/niucloud/app/service/core/notice/CoreSmsService.php @@ -0,0 +1,105 @@ +getDefaultSmsConfig($site_id); + $sms_type = $config['sms_type']; + if(empty($sms_type)) throw new NoticeException('SMS_TYPE_NOT_OPEN'); + //创建 + $core_notice_sms_log_service = new CoreNoticeSmsLogService(); + $log_id = $core_notice_sms_log_service->add($site_id, [ + 'mobile' => $mobile, + 'sms_type' => $sms_type, + 'key' => $key, + 'content' => $content, + 'template_id' => $template_id, + 'params' => $params, + 'status' => SmsDict::SENDING + ]); + + $sms_driver = new SmsLoader($sms_type, $config); + $params = $this->makeUp($params, $content, $sms_type); + $result = $sms_driver->send($mobile, $template_id, $params); + + if (!$result) { + //失败修改短信记录 + $error = $sms_driver->getError(); + $core_notice_sms_log_service->edit($site_id, $log_id, [ + 'status' => SmsDict::FAIL, + 'result' => $sms_driver->getError() + ]); + throw new NoticeException($error); + } + //成功修改短信记录 + $core_notice_sms_log_service->edit($site_id, $log_id, [ + 'status' => SmsDict::SUCCESS, + 'result' => $result + ]); + return true; + } + + + public function makeUp($params, $content, $sms_type){ + if($sms_type != SmsDict::TENCENTSMS) return $params; + if(empty($params)) return []; + $temp_array = []; + foreach($params as $k => $v){ + $index = strpos($content, '${' . $k . '}'); + if($index !== false){ + $temp_array[$index] = $v; + } + } + if(!empty($temp_array)){ + return array_values($temp_array); + } + return []; + } + /** + * 主要用于短信发送(todo 慎用!!!!!) + * @param int $site_id + * @return array + */ + public function getDefaultSmsConfig(int $site_id) + { + $info = (new CoreConfigService())->getConfig($site_id, 'SMS')['value'] ?? []; + if (empty($info)) + throw new NoticeException('NOTICE_SMS_NOT_OPEN'); + + $sms_type = $info['default'] ?? ''; + $config = array( + 'sms_type' => $sms_type, + ); + return array_merge($config, $info[$sms_type] ?? []); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/notice/NoticeService.php b/niucloud/app/service/core/notice/NoticeService.php new file mode 100644 index 0000000..7458086 --- /dev/null +++ b/niucloud/app/service/core/notice/NoticeService.php @@ -0,0 +1,46 @@ +model = new SysNotice(); + + } + + /** + * 消息发送 + * @param $site_id + * @param $key + * @param $data + * @return false|mixed + */ + public static function send($site_id, $key, $data){ + + $template = (new CoreNoticeService())->getInfo($site_id, $key); + if(empty($template)) return false; + + return Notice::dispatch(['site_id' => $site_id, 'key' => $key, 'data' => $data, 'template' => $template], is_async:$template['async']); + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/order/recharge/CoreRechargeOrderService.php b/niucloud/app/service/core/order/recharge/CoreRechargeOrderService.php new file mode 100644 index 0000000..dfe1ac3 --- /dev/null +++ b/niucloud/app/service/core/order/recharge/CoreRechargeOrderService.php @@ -0,0 +1,163 @@ + 1, ‘member_id’ => 1, 'order_from' => 'h5', 'member_message' => '','recharge_money' => 12.00] + * @return array + */ + public function create(array $data) + { + $order_data = [ + 'site_id' => $data['site_id'], + 'order_from' => $data['order_from'] ?? 'h5', + 'order_type' => 'recharge', + 'order_status' => RechargeOrderDict::WAIT_PAY, + 'member_id' => $data['member_id'], + 'ip' => request()->ip() ?? '', + 'member_message' => $data['member_message'] ?? '', + 'order_item_money' => $data['recharge_money'], + 'order_discount_money' => 0, + 'order_money' => $data['recharge_money'], + ]; + $order_items = [ + [ + 'site_id' => $data['site_id'], + 'member_id' => $data['member_id'], + 'item_id' => 0, + 'item_type' => 'recharge', //项目类型 recharge, goods + 'item_name' => '会员充值', + 'item_image' => '/static/image/recharge.png', + 'price' => $data['recharge_money'], + 'num' => 1, + 'item_money' => $data['recharge_money'], + 'is_refund' => 0 + ] + ]; + Db::startTrans(); + try{ + //添加订单表 + $order_data['order_no'] = create_no(); + $create_order = (new RechargeOrder())->create($order_data); + $order_id = $create_order->order_id; + //添加订单支付表 + (new CorePayService())->create($data['site_id'], PayDict::MEMBER, $order_data['member_id'], $order_data['order_money'], $order_data['order_type'], $order_id, get_lang("dict_order.trade_type_recharge")); + //添加订单项目表 + $order_item_model = new RechargeOrderItem(); + foreach ($order_items as $k => $order_item) + { + $order_item['order_id'] = $order_id; + $order_item_model->create($order_item); + } + Db::commit(); + //返回订单信息 + return [ + 'trade_type' => $order_data['order_type'], + 'trade_id' => $order_id + ]; + }catch ( Exception $e) + { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + } + + /** + * 订单支付 + * @param array $pay_info + * @return true + */ + public function pay(array $pay_info) + { + try { + $trade_id = $pay_info['trade_id'] ?? 0; + $order_model = new RechargeOrder(); + $order_info = $order_model->where([['site_id', '=', $pay_info['site_id']], ['order_id', '=', $trade_id]])->findOrEmpty()->toArray(); + if (empty($order_info)) + throw new CommonException('ORDER_NOT_EXIST'); + $order_data = [ + 'pay_time' => time(), + 'order_status' => RechargeOrderDict::FINISH, + 'is_enable_refund' => 1, // 是否允许退款 + 'out_trade_no' => $pay_info['out_trade_no']//支付后的交易流水号 + ]; + $order_model->where([['site_id', '=', $pay_info['site_id']], ['order_id', '=', $trade_id]])->update($order_data); + //会员余额 + (new CoreMemberAccountService())->addLog($order_info['site_id'], $order_info['member_id'], MemberAccountTypeDict::BALANCE, $order_info['order_item_money'], 'recharge', '会员充值', $order_info['order_id']); + return true; + }catch ( Exception $e) + { + throw new CommonException($e->getMessage()); + } + } + + /** + * 关闭订单 + * @param int $site_id + * @param int $order_id + * @return true + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function close(int $site_id, int $order_id){ + $order = (new RechargeOrder())->where([ ['site_id', '=', $site_id ],['order_id', '=', $order_id ], ])->find(); + if ($order->isEmpty()) throw new CommonException('ORDER_NOT_EXIST'); + //如果是支付中的话 + //if ($order->order_status == RechargeOrderDict::CLOSE) throw new CommonException('ORDER_CLOSED'); + //关闭支付单据 + if ($order->order_status == RechargeOrderDict::WAIT_PAY) + (new CorePayService())->closeByTrade($site_id,'recharge', $order_id); + $order->save(['order_status' => RechargeOrderDict::CLOSE]); + + return true; + } + + /** + * 获取订单信息 + * @param int $site_id + * @param int $order_id + * @return array + */ + public function orderInfo(int $site_id, int $order_id) + { + return (new RechargeOrder())->where([ + ['site_id', '=', $site_id], + ['order_id', '=', $order_id] + ])->field('*')->findOrEmpty()->toArray(); + } + +} + diff --git a/niucloud/app/service/core/order/recharge/CoreRechargeRefundService.php b/niucloud/app/service/core/order/recharge/CoreRechargeRefundService.php new file mode 100644 index 0000000..8a984e6 --- /dev/null +++ b/niucloud/app/service/core/order/recharge/CoreRechargeRefundService.php @@ -0,0 +1,142 @@ +where([ ['site_id', '=', $site_id], ['order_id', '=', $order_id], ['item_type', '=', $this->order_type ] ])->with('ordermain')->find(); + $order = $order_model->toArray(); + $order_info = (new RechargeOrder())->where([ ['site_id', '=', $site_id], ['order_id', '=', $order_id] ])->field("order_no")->find(); + if (empty($order)) throw new CommonException('ORDER_NOT_EXIST'); + if (!$order['ordermain']['is_enable_refund']) throw new CommonException('NOT_ALLOW_APPLY_REFUND'); + if ($order['ordermain']['order_status'] != RechargeOrderDict::FINISH) throw new CommonException('ORDER_UNPAID_NOT_ALLOW_APPLY_REFUND'); + if ($order['refund_status'] != RechargeOrderDict::NOT_APPLAY) throw new CommonException('REFUND_HAD_APPLIED'); + + Db::startTrans(); + try { + // 查询会员账户余额 + $member_info = (new Member())->where([ + [ 'member_id', '=', $order['member_id'] ], + [ 'site_id', '=', $order['site_id'] ] + ])->field('balance')->find(); + + if ($member_info['balance'] == 0) throw new CommonException('NO_REFUNDABLE_AMOUNT'); + + $order['out_trade_no'] = $order['ordermain']['out_trade_no']; + $order['money'] = $order['item_money'] > $member_info['balance'] ? $member_info['balance'] : $order['item_money']; + $order['order_no'] = $order_info['order_no']; + $refund_no = (new CoreRefundService())->create($order['site_id'], $order['out_trade_no'], $order['money'], $order['reason'] ?? ''); + (new RechargeOrderItemRefund())->create([ + 'order_item_id' => $order['order_item_id'], + 'order_id' => $order['order_id'], + 'site_id' => $order['site_id'], + 'member_id' => $order['member_id'], + 'num' => $order['num'], + 'money' => $order['money'], + 'refund_no' => $refund_no, + 'item_type' => $order['item_type'], + 'create_time' => time() + ]); + $order_model->save([ + 'refund_no' => $refund_no, + 'refund_status' => RechargeOrderDict::REFUNDING + ]); + $order_model->ordermain->save([ + 'refund_status' => RechargeOrderDict::REFUNDING + ]); + + (new RechargeOrderItemRefund())->update(['status' => RechargeOrderDict::REFUNDING], [ ['refund_no', '=', $refund_no ] ]); + + // 执行退款 + $this->refund($order, $refund_no); + + Db::commit(); + + return true; + } catch ( Exception $e) { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + } + + /** + * 退款 + * @param array $order + * @param string $refund_no + * @return void + */ + public function refund(array $order, string $refund_no){ + (new CoreMemberAccountService())->addLog($order['site_id'], $order['member_id'], 'balance', -$order['money'], 'recharge_refund', '充值订单退款', $order['order_id']); + // 调用支付退款 + (new CoreRefundService())->refund($order['site_id'], $refund_no); + } + + /** + * 退款完成 + * @param $refund_no + * @return true + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function refundComplete($refund_no){ + $model = (new RechargeOrderItemRefund())->where([ ['refund_no', '=', $refund_no ] ])->find(); + if ($model->isEmpty()) throw new CommonException('ORDER_NOT_EXIST'); + if ($model->status != RechargeOrderDict::REFUNDING) throw new CommonException('REFUND_STATUS_ABNORMAL'); + + Db::startTrans(); + try { + $model->save(['status' => RechargeOrderDict::REFUND_COMPLETED]); + $model->item()->save([ 'refund_status' => RechargeOrderDict::REFUND_COMPLETED ]); + (new RechargeOrder())->update(['refund_status' => RechargeOrderDict::REFUND_COMPLETED], [ ['order_id', '=', $model->order_id ] ]); + (new CoreRechargeOrderService())->close($model->site_id, $model->order_id); + Db::commit(); + return true; + } catch ( Exception $e) { + Db::rollback(); + throw new CommonException($e->getMessage()); + } + } +} + diff --git a/niucloud/app/service/core/pay/CorePayChannelService.php b/niucloud/app/service/core/pay/CorePayChannelService.php new file mode 100644 index 0000000..701e842 --- /dev/null +++ b/niucloud/app/service/core/pay/CorePayChannelService.php @@ -0,0 +1,118 @@ +model = new PayChannel(); + + } + + /** + * 查询实例 + * @param int $site_id + * @param array $where + * @return PayChannel|array|mixed|Model + */ + public function find(int $site_id, array $where){ + $where['site_id'] = $site_id; + return $this->model->where($where)->findOrEmpty(); + } + + /** + * 通过渠道获取支持的支付方式(专属用于支付业务) + * @param int $site_id + * @param string $channel + * @param string $trade_type + * @return array|array[] + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getAllowPayTypeByChannel(int $site_id, string $channel, string $trade_type = ''){ + $channel_pay_list = $this->model->where([['site_id', '=', $site_id], ['channel', '=', $channel], ['status', '=', 1]])->field('type,config')->order('sort asc')->select()->toArray(); + + if(!empty($channel_pay_list)){ + $temp_channel_pay_list = array_column($channel_pay_list, 'type'); + $pay_type_list = PayDict::getPayType($temp_channel_pay_list); + } + //充值订单不支持余额支付 + if(!empty($pay_type_list) && $trade_type == 'recharge'){ + unset($pay_type_list[PayDict::BALANCEPAY]); + } + // 线下支付做处理 + if (!empty($pay_type_list) && isset($pay_type_list[PayDict::OFFLINEPAY])) { + $temp_channel_pay_list = array_column($channel_pay_list, null, 'type'); + $pay_type_list[PayDict::OFFLINEPAY]['config'] = $temp_channel_pay_list[PayDict::OFFLINEPAY]['config']; + } + return $pay_type_list ?? []; + + } + + /** + * 通过渠道和支付方式获取支付配置 + * @param int $site_id + * @param string $channel + * @param string $type + * @return array|mixed + */ + public function getConfigByChannelAndType(int $site_id, string $channel, string $type){ + $pay_channel = $this->model->where([['site_id', '=', $site_id], ['channel', '=', $channel], ['type', '=', $type]])->field('config')->findOrEmpty(); + if(!$pay_channel->isEmpty()){ + if($type == PayDict::WECHATPAY){ + $pay_channel->config = array_merge($pay_channel->config, $this->getWechatPayFullConfig($site_id)); + } + return $pay_channel->config; + } + return []; + } + + + /** + * 获取完整的微信支付配置(根据场景) + * @param int $site_id + * @return array + */ + public function getWechatPayFullConfig(int $site_id){ + //TODO 先判断是否是开放平台授权,然后再决定使用什么appid + //查询公众号配置 + $core_wechat_config_service = new CoreWechatConfigService(); + $mp_app_id = $core_wechat_config_service->getWechatConfig($site_id)['app_id'];//公众号appid + //查询公众号配置 + $core_weapp_config_service = new CoreWeappConfigService(); + $mini_app_id = $core_weapp_config_service->getWeappConfig($site_id)['app_id'];//小程序appid + //todo 查询微信小程序 appid . 应用appid..... + return [ + 'mp_app_id' => $mp_app_id, + 'mini_app_id' => $mini_app_id + //............ + ]; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/pay/CorePayEventService.php b/niucloud/app/service/core/pay/CorePayEventService.php new file mode 100644 index 0000000..631f70f --- /dev/null +++ b/niucloud/app/service/core/pay/CorePayEventService.php @@ -0,0 +1,293 @@ +site_id = $site_id; + $this->channel = $channel; + $this->type = $type; + $this->config = (new CorePayChannelService())->getConfigByChannelAndType($this->site_id, $this->channel, $this->type); + return $this; + } + + /** + * 获取实例化应用 + * @param string $action + * @return PayLoader + * @throws Exception + */ + public function app(string $action = 'query') + { + $notify_url = (string)url("/api/pay/notify/$this->site_id/$this->channel/$this->type/$action", [], '', true);//异步回调通知地址 + $this->config['notify_url'] = $notify_url; + $this->config['site_id'] = $this->site_id; + return new PayLoader($this->type, $this->config); + } + + + /** + * 去支付 + * @param string $out_trade_no + * @param float $money + * @param string $boby + * @param string $refund_url + * @param string $quit_url + * @param string $buyer_id + * @param string $openid + * @return mixed + * @throws Exception + */ + public function pay(string $out_trade_no, float $money, string $boby, string $refund_url = '', string $quit_url = '', string $buyer_id = '', string $openid = '', string $voucher = '') + { + $pay_fun = ''; + + $params = array( + 'out_trade_no' => $out_trade_no, + 'money' => $money, + 'boby' => $boby, + 'channel' => $this->channel, + 'refund_url' => $refund_url, + 'quit_url' => $quit_url, + 'buyer_id' => $buyer_id, + 'openid' => $openid, + 'site_id' => $this->site_id, + 'voucher' => $voucher + ); + switch ($this->type) { + case PayDict::WECHATPAY: + $params['money'] *= 100; + + switch ($this->channel) { + case ChannelDict::H5://h5 + $pay_fun = 'wap'; + break; + case ChannelDict::WECHAT://公众号 + $pay_fun = 'mp'; + + break; + case ChannelDict::WEAPP://微信小程序 + $pay_fun = 'mini'; + break; + + case ChannelDict::PC://pc + $pay_fun = 'scan';//扫码支付 + break; + case ChannelDict::APP://app + $pay_fun = 'app'; + break; + } + if (empty($pay_fun)) throw new PayException('PAYMENT_METHOD_NOT_SCENE'); + break; + case PayDict::ALIPAY: + switch ($this->channel) { + case ChannelDict::H5://h5 + $pay_fun = 'wap'; + break; + case ChannelDict::PC://pc + $pay_fun = 'scan'; + break; + case ChannelDict::APP://app + $pay_fun = 'app'; + break; + case ChannelDict::WECHAT://wap + $pay_fun = 'wap'; + break; + } + if (empty($pay_fun)) throw new PayException('PAYMENT_METHOD_NOT_SCENE'); + break; + } + + if (empty($pay_fun)) $pay_fun = 'pay'; + + return $this->app('pay')->$pay_fun($params); + } + + + /** + * 转账 + * @param float $money + * @param string $transfer_no + * @param string $to_no + * @param string $to_name + * @param string $remark + * @param array $transfer_list + * @param string $to_type 支付宝用 + * @param string $product_code 支付宝用 + * @param string $scene + * @return array + * @throws Exception + */ + public function transfer(float $money, string $transfer_no, string $to_no, string $to_name, string $remark, array $transfer_list = [], string $to_type = '', string $product_code = '', string $scene = '') + { + $transfer_type = TransferDict::getPayTypeByTransfer($this->type); + switch ($transfer_type) { + case PayDict::WECHATPAY: + $money *= 100; + break; + case PayDict::ALIPAY: + break; + } + return $this->app('transfer')->transfer([ + 'transfer_no' => $transfer_no, + 'money' => $money, + 'product_code' => $product_code, + 'scene' => $scene, + 'to_no' => $to_no, + 'to_type' => $to_type, + 'to_name' => $to_name, + 'remark' => $remark, + 'transfer_list' => $transfer_list + ]); + } + + /** + * 关闭支付 + * @param string $out_trade_no + * @return null + * @throws Exception + */ + public function close(string $out_trade_no) + { + return $this->app('close')->close($out_trade_no); + } + + /** + * 退款 + * @param string $out_trade_no + * @param float $money + * @param float $total + * @param string $refund_no + * @param string $voucher + * @return array + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function refund(string $out_trade_no, float $money, float $total, string $refund_no, $voucher = '') + { + if ($this->type == PayDict::WECHATPAY) { + $money *= 100; + $total *= 100; + } + return $this->app('refund')->refund([ + 'site_id' => $this->site_id, + 'out_trade_no' => $out_trade_no, + 'money' => $money, + 'total' => $total, + 'refund_no' => $refund_no, + 'voucher' => $voucher + ]); + } + + /** + * 支付异步通知 + * @param string $action + * @param callable $callback + * @return ResponseInterface|Response + * @throws Exception + */ + public function notify(string $action, callable $callback) + { + return $this->app()->notify($action, $callback); + } + + /** + * 查询普通支付订单 + * @param string $out_trade_no + * @return null + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getOrder(string $out_trade_no) + { + return $this->app()->getOrder(['out_trade_no' => $out_trade_no]); + } + + /** + * 查询退款订单 + * @param string $out_trade_no + * @param string $refund_no + * @return null + * @throws Exception + */ + public function getRefund(string $out_trade_no, string $refund_no) + { + return $this->app()->getRefund($out_trade_no, $refund_no); + } + + /** + * 查询转账订单 + * @param string $transfer_no + * @return null + * @throws Exception + */ + public function getTransfer(string $transfer_no) + { + return $this->app()->getTransfer($transfer_no); + } + + + /** + * 取消订单 + * 支付宝接口 权限极高 支付交易返回失败或支付系统超时,调用该接口撤销交易。如果此订单用户支付失败,支付宝系统会将此订单关闭;如果用户支付成功,支付宝系统会将此订单资金退还给用户。 + * 注意:只有发生支付系统超时或者支付结果未知时可调用撤销,其他正常支付的单如需实现相同功能请调用申请退款API。提交支付交易后调用【查询订单API】,没有明确的支付结果再调用【撤销订单API】。 + * @return void + */ + public function cancel() + { + + } + + +} diff --git a/niucloud/app/service/core/pay/CorePayService.php b/niucloud/app/service/core/pay/CorePayService.php new file mode 100644 index 0000000..01a9d66 --- /dev/null +++ b/niucloud/app/service/core/pay/CorePayService.php @@ -0,0 +1,567 @@ +model = new Pay(); + $this->pay_event = new CorePayEventService(); + } + + /** + * 创建支付单据 + * @param $site_id + * @param string $main_type + * @param int $main_id + * @param float $money + * @param string $trade_type 业务类型 + * @param int $trade_id 业务id + * @param string $body + * @return string|null + */ + public function create($site_id, string $main_type, int $main_id, float $money, string $trade_type, int $trade_id, string $body) + { + $out_trade_no = create_no(); + $data = array( + 'site_id' => $site_id, + 'money' => $money, + 'trade_type' => $trade_type, + 'trade_id' => $trade_id, + 'body' => $body, + 'out_trade_no' => $out_trade_no, + 'main_id' => $main_id, + 'main_type' => $main_type + ); + $this->model->create($data); + return $out_trade_no; + } + + + /** + * 通过业务类型和id查询有效的支付单据 + * @param int $site_id + * @param string $trade_type + * @param int $trade_id + * @return Pay|array|mixed|Model + */ + public function findPayInfoByTrade(int $site_id, string $trade_type, int $trade_id) + { + $where = array( + ['site_id', '=', $site_id], + ['trade_type', '=', $trade_type], + ['trade_id', '=', $trade_id], + ['status', '<>', PayDict::STATUS_CANCLE],///不查询已取消的单据 + ); + return $this->model->where($where)->append(['type_name', 'status_name'])->findOrEmpty(); + } + + /** + * 通过交易流水号查询支付 + * @param int $site_id + * @param string $out_trade_no + * @return Pay|array|mixed|Model + */ + public function findPayInfoByOutTradeNo(int $site_id, string $out_trade_no) + { + $where = array( + ['site_id', '=', $site_id], + ['out_trade_no', '=', $out_trade_no] + ); + return $this->model->where($where)->append(['type_name', 'status_name'])->findOrEmpty(); + } + + /** + * 通过交易流水号查询支付信息以及支付方式() + * @param int $site_id + * @param string $out_trade_no + * @param string $channel + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getInfoByOutTradeNo(int $site_id, string $out_trade_no, string $channel) + { + $where = array( + ['site_id', '=', $site_id], + ['out_trade_no', '=', $out_trade_no] + ); + $pay = $this->model->where($where)->append(['type_name', 'status_name'])->findOrEmpty()->toArray(); + if (!empty($pay)) { + //todo 校验场景控制支付方式 + $pay['pay_type_list'] = array_values((new CorePayChannelService())->getAllowPayTypeByChannel($site_id, $channel, $pay['trade_type'])); + } + return $pay; + } + + /** + * 通过交易信息获取支付单据 + * @param int $site_id + * @param string $trade_type + * @param string $trade_id + * @param string $channel + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getInfoByTrade(int $site_id, string $trade_type, string $trade_id, string $channel) + { + $pay = $this->findPayInfoByTrade($site_id, $trade_type, $trade_id); + if ($pay->isEmpty()) { + //创建新的支付单据 + $pay = $this->createByTrade($site_id, $trade_type, $trade_id); + } + if(!is_array($pay)){ + $pay = $pay->toArray(); + } + if (!empty($pay)) { + //todo 校验场景控制支付方式 + $pay['pay_type_list'] = array_values((new CorePayChannelService())->getAllowPayTypeByChannel($site_id, $channel, $pay['trade_type'])); + } + return $pay; + } + + /** + * 获取支付方法 + * @param int $site_id + * @param string $trade_type + * @param string $channel + * @return array|array[] + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getPayTypeByTrade(int $site_id, string $trade_type, string $channel) + { + //todo 校验场景控制支付方式 + return array_values((new CorePayChannelService())->getAllowPayTypeByChannel($site_id, $channel, $trade_type)); + } + + /** + * 去支付 + * @param $site_id + * @param $trade_type + * @param $trade_id + * @param $type + * @param $channel + * @param string $openid + * @param string $return_url + * @param string $quit_url + * @param string $buyer_id + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function pay($site_id, $trade_type, $trade_id, $type, $channel, string $openid, string $return_url = '', string $quit_url = '', string $buyer_id = '', string $voucher = '') + { + //检测并创建支付单据 + $pay = $this->checkOrCreate($site_id, $trade_type, $trade_id); + $out_trade_no = $pay['out_trade_no']; + $money = $pay['money']; + $body = $pay['body']; + $trade_type = $pay['trade_type']; + if (!in_array($type, array_column((new CorePayChannelService())->getAllowPayTypeByChannel($site_id, $channel, $trade_type), 'key'))) throw new PayException('PAYMENT_METHOD_NOT_SCENE');//场景不支持 + $pay_result = $this->pay_event->init($site_id, $channel, $type)->pay($out_trade_no, $money, $body, $return_url, $quit_url, $buyer_id, $openid ?? '', $voucher); + //todo 特殊支付方式会直接返回支付状态,状态如果为已支付会直接支付 + if (!empty($pay_result['status']) && $pay_result['status'] == PayDict::STATUS_FINISH) { + $pay->save([ 'channel' => $channel ]); + $this->paySuccess($site_id, [ + 'status' => PayDict::STATUS_FINISH, + 'type' => $type, + 'out_trade_no' => $out_trade_no + ]); + return true; + } + + // 如果是线下支付 + if ($type == PayDict::OFFLINEPAY) { + //将支付设置为支付中 + $pay->save( + [ + 'type' => $type, + 'status' => PayDict::STATUS_AUDIT, + 'channel' => $channel + ] + ); + event('OfflinePayAfter', [ + 'trade_type' => $trade_type, + 'trade_id' => $trade_id, + 'out_trade_no' => $out_trade_no, + 'site_id' => $site_id + ]); + } else { + //将支付设置为支付中 + $pay->save( + [ + 'type' => $type, + 'status' => PayDict::STATUS_ING, + 'channel' => $channel + ] + ); + PayReturnTo::dispatch(['site_id' => $site_id, 'out_trade_no' => $out_trade_no], secs: 15); + } + return $pay_result; + } + + /** + * 检测支付单据 (如果不存在就创建,如果存在但支付中就尝试关闭) + * @param $site_id + * @param $trade_type + * @param $trade_id + * @return Pay|array|mixed|string|Model|null + */ + public function checkOrCreate($site_id, $trade_type, $trade_id) + { + $pay = $this->findPayInfoByTrade($site_id, $trade_type, $trade_id); + if ($pay->isEmpty()) { + //创建新的支付单据 + $pay = $this->createByTrade($site_id, $trade_type, $trade_id); + } + if ($pay['status'] == PayDict::STATUS_FINISH) throw new PayException('PAY_SUCCESS'); + if ($pay['status'] == PayDict::STATUS_CANCLE) throw new PayException('PAY_IS_REMOVE'); + if ($pay['status'] == PayDict::STATUS_ING) { + //尝试关闭原有的支付单据 + $this->close($site_id, $pay->out_trade_no); + //创建新的支付单据 + $pay = $this->createByTrade($site_id, $trade_type, $trade_id); + } + return $pay; + } + + /** + * 通过业务信息创建支付单据 + * @param $site_id + * @param $trade_type + * @param $trade_id + * @return Pay|array|mixed|Model + */ + public function createByTrade($site_id, $trade_type, $trade_id){ + //创建新的支付单据 + $data = array_values(array_filter(event('PayCreate', ['site_id' => $site_id,'trade_type' => $trade_type, 'trade_id' => $trade_id])))[0] ?? []; + if(empty($data)) throw new PayException('PAY_NOT_FOUND_TRADE');//找不到可支付的交易 + + if(isset($data['status']) && $data['money'] == 0){ + $data['status'] = PayDict::STATUS_FINISH; + $data['status_name'] = PayDict::getStatus()[$data['status']] ?? ''; + $data['type'] = PayDict::BALANCEPAY; + $data['type_name'] = PayDict::getPayType()[$data['type']]['name'] ?? ''; + return $data; + }else{ + $out_trade_no = $this->create($site_id, $data['main_type'], $data['main_id'], $data['money'], $data['trade_type'], $data['trade_id'], $data['body']); + return $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + } + } + + /** + * 支付单据恢复到待支付 + * @param int $site_id + * @param $pay_item + * @return bool + */ + public function returnTo(int $site_id, $pay_item) + { + if (is_object($pay_item)) { + $pay = $pay_item; + $out_trade_no = $pay->out_trade_no; + } else { + $out_trade_no = $pay_item; + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + } + if ($pay->isEmpty()) return true; + if ($pay['status'] != PayDict::STATUS_ING) return true; + if (empty($pay->type)) return true; + //尝试取消或关闭第三方支付 + try { + $close = $this->close($site_id, $out_trade_no); + } catch ( Throwable $e ) { + $close = false; + } + return $close; + } + + /** + * 关闭支付 + * @param int $site_id + * @param string $out_trade_no + * @return true + */ + public function close(int $site_id, string $out_trade_no) + { + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + if ($pay->isEmpty()) throw new PayException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if($pay['status'] == PayDict::STATUS_CANCLE) return true; + + if (!in_array($pay['status'], [ + PayDict::STATUS_WAIT, + PayDict::STATUS_ING + ])) throw new PayException('TREAT_PAYMENT_IS_OPEN'); + if ($pay['status'] == PayDict::STATUS_ING) { + if (!empty($pay->type)) { + //尝试取消或关闭第三方支付 + $close = $this->pay_event->init($site_id, $pay->channel, $pay->type)->close($out_trade_no); + if (!$close) {//有问题查询第三方订单详情 + $order = $this->pay_event->init($site_id, $pay->channel, $pay->type)->getOrder($out_trade_no); + if (!empty($order)) { + if ($order['status'] == OnlinePayDict::SUCCESS) {//如果已支付,就将支付调整为已支付 + $this->paySuccess($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $pay->type + ]); + return false; + } + } + } + } + } + //支付关闭 + $this->payClose($site_id, [ + 'out_trade_no' => $out_trade_no + ]); + return true; + } + + /** + * 通过业务信息关闭订单 + * @param int $site_id + * @param string $trade_type + * @param int $trade_id + * @return true + */ + public function closeByTrade(int $site_id, string $trade_type, int $trade_id) + { + $pay = $this->findPayInfoByTrade($site_id, $trade_type, $trade_id); + if ($pay->isEmpty()) throw new PayException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if ($pay['status'] == PayDict::STATUS_FINISH) throw new PayException('DOCUMENT_IS_PAID');//当前单据已支付 + if (!in_array($pay['status'], [ + PayDict::STATUS_WAIT, + PayDict::STATUS_ING + ])) throw new PayException('IS_PAY_REMOVE_NOT_RESETTING');//只有待支付可以关闭支付 + if (!$this->close($site_id, $pay['out_trade_no'])) { + throw new PayException('DOCUMENT_IS_PAY_REMOVE'); + } + return true; + } + + /** + * 支付完成 + * @param int $site_id + * @param string $out_trade_no + * @param string $type + * @param array $params + * @return true + */ + public function payNotify(int $site_id, string $out_trade_no, string $type, array $params = []) + { + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + + if ($pay->isEmpty()) throw new PayException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if ($pay['status'] == PayDict::STATUS_FINISH) throw new PayException('DOCUMENT_IS_PAID'); + if ($pay['status'] == PayDict::STATUS_CANCLE) throw new PayException('PAY_IS_REMOVE'); + $status = $params['status']; + switch ($status) { + case OnlinePayDict::SUCCESS://支付成功 + $this->paySuccess($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + case OnlinePayDict::CLOSED://支付关闭 + $this->payClose($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + case OnlinePayDict::NOTPAY://未支付 + //todo 主动去校验支付状态 + $this->check($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + } + return true; + } + + + /** + * 异步通知 + * @param int $site_id + * @param string $channel + * @param string $type + * @param string $action + * @return null + */ + public function notify(int $site_id, string $channel, string $type, string $action) + { + $callback = function ($out_trade_no, $params) use ($site_id, $type, $action) { + try { + switch ($action) { + case 'pay'://支付结果通知 + return $this->payNotify($site_id, $out_trade_no, $type, $params); + break; + case 'refund': + return (new CoreRefundService())->refundNotify($site_id, $out_trade_no, $type, $params); + break; + } + //找不到对应的业务 + return true; + } catch ( PayException $e ) { + return false; + } + }; + return $this->pay_event->init($site_id, $channel, $type)->notify($action, $callback); + } + + /** + * 校验支付订单的状态 + * @param int $site_id + * @param array $data + * @return bool + */ + public function check(int $site_id, array $data) + { + $out_trade_no = $data['out_trade_no']; + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + if ($pay->isEmpty()) throw new PayException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if ($pay['status'] == PayDict::STATUS_FINISH) throw new PayException('PAY_SUCCESS');//单据已支付 + if ($pay['status'] == PayDict::STATUS_CANCLE) throw new PayException('PAY_IS_REMOVE');//单据已取消 + //查询第三方支付单据 + $pay_info = $this->pay_event->init($site_id, $pay->channel, $pay->type)->getOrder($out_trade_no); + $type = $pay['type']; + if (empty($pay_info)) + return false; + $status = $pay_info['status']; + switch ($status) { + case OnlinePayDict::SUCCESS://支付成功 + $this->paySuccess($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + case OnlinePayDict::CLOSED://支付关闭 + $this->payClose($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + case OnlinePayDict::NOTPAY://未支付 + //todo 主动去校验支付状态 + $this->check($site_id, [ + 'out_trade_no' => $out_trade_no, + 'type' => $type + ]); + break; + } + return true; + } + + /** + * 支付成功 + * @param $site_id + * @param $params + * @return bool + */ + public function paySuccess($site_id, $params) + { + $out_trade_no = $params['out_trade_no']; + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + $type = $params['type']; + $trade_type = $pay->trade_type; + $trade_id = $pay->trade_id; + $data = array( + 'pay_time' => time(), + 'status' => PayDict::STATUS_FINISH, + 'type' => $type, + 'trade_no' => $params['trade_no'] ?? '', + 'voucher' => $params['voucher'] ?? '', + 'mch_id' => $params['mch_id'] ?? '', + ); + //允许修改的值 + $allow_field = array('trade_no', 'voucher', 'status', 'pay_time', 'type', 'mch_id'); + // 启动事务 + Db::startTrans(); + try { + $pay->allowField($allow_field)->save($data); + $result = event('PaySuccess', ['out_trade_no' => $out_trade_no, 'trade_type' => $trade_type, 'site_id' => $site_id, 'trade_id' => $trade_id]); + if (!check_event_result($result)) { + return false; + } + // 提交事务 + Db::commit(); + return true; + } catch ( Throwable $e ) { + // 回滚事务 + Db::rollback(); + throw new PayException($e->getMessage().$e->getFile().$e->getLine()); + } + return true; + } + + /** + * 单据关闭 + * @param $site_id + * @param $data + * @return true + */ + public function payClose($site_id, $data) + { + $out_trade_no = $data['out_trade_no']; + + Db::startTrans(); + try { + $pay = $this->findPayInfoByOutTradeNo($site_id, $out_trade_no); + $pay->save([ + 'status' => PayDict::STATUS_CANCLE, + 'fail_reason' => $data['reason'] ?? '' + ]); + + $result = event('PayClose', ['out_trade_no' => $out_trade_no, 'site_id' => $site_id, 'trade_type' => $pay->trade_type, 'trade_id' => $pay->trade_id ]); + if (!check_event_result($result)) { + Db::rollback(); + return false; + } + // 提交事务 + Db::commit(); + return true; + } catch ( Throwable $e ) { + // 回滚事务 + Db::rollback(); + throw new PayException($e->getMessage().$e->getFile().$e->getLine()); + } + + } +} diff --git a/niucloud/app/service/core/pay/CoreRefundService.php b/niucloud/app/service/core/pay/CoreRefundService.php new file mode 100644 index 0000000..7ad5ac2 --- /dev/null +++ b/niucloud/app/service/core/pay/CoreRefundService.php @@ -0,0 +1,261 @@ +model = new Refund(); + $this->pay_event = new CorePayEventService(); + } + + /** + * 创建支付单据 + * @param int $site_id + * @param string $out_trade_no + * @param float $money + * @param string $reason + * @return string|null + */ + public function create(int $site_id, string $out_trade_no, float $money, string $reason = '', $trade_type = '', $trade_id = ''){ + //通过交易流水号获取支付单据 + $pay = (new CorePayService())->findPayInfoByOutTradeNo($site_id, $out_trade_no); + if($pay->isEmpty()) throw new PayException('ALIPAY_TRANSACTION_NO_NOT_EXIST');//单据不存在 + //校验当前数据是否存在 + //存在就修改,不存在就创建 + $refund_no = create_no(); + $data = array( + 'site_id' => $site_id, + 'money' => $money, + 'type' => $pay->type,//支付方式 + 'channel' => $pay->channel,//渠道 + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + 'status' => RefundDict::WAIT, + 'reason' => $reason, + 'trade_type' => $trade_type, + 'trade_id' => $trade_id + ); + $this->model->create($data); + return $refund_no; + } + + /** + * 退款 + * @param int $site_id + * @param string $refund_no + * @param string $voucher + * @return true + */ + public function refund(int $site_id, string $refund_no, $voucher = '', $refund_type = RefundDict::BACK, $main_type = '', $main_id = 0){ + $refund = $this->findByRefundNo($site_id, $refund_no); + if($refund->isEmpty()) throw new PayException('REFUND_NOT_EXIST'); + $out_trade_no = $refund->out_trade_no; + $money = $refund->money; + try{ + //存入退款方式 + $refund->save(['refund_type' => $refund_type]); + if($refund_type == RefundDict::BACK){ + //判断成功的话,可以直接调用退款成功 + $pay_result = $this->pay_event->init($site_id, $refund->channel, $refund->type)->refund($out_trade_no, $money, $money, $refund_no, $voucher); + $this->refundNotify($site_id, $out_trade_no, $refund->type, $pay_result); + }else if($refund_type == RefundDict::OFFLINE){ + $pay_result = $this->pay_event->init($site_id, $refund->channel, PayDict::OFFLINEPAY)->refund($out_trade_no, $money, $money, $refund_no, $voucher); + $this->refundNotify($site_id, $out_trade_no, $refund->type, $pay_result, $main_type, $main_id); + } + + }catch ( Throwable $e) { + throw new PayException($e->getMessage()); + } + return true; + } + + /** + * 获取退款单据 + * @param int $site_id + * @param string $refund_no + * @return void + */ + public function findByRefundNo(int $site_id, string $refund_no){ + return $this->model->where([ + ['site_id', '=', $site_id], + ['refund_no', '=', $refund_no], + ])->findOrEmpty(); + } + + + + public function refundNotify(int $site_id, $out_trade_no, string $type, array $params = [], $main_type = '', $main_id = 0){ + $refund_no = $params['refund_no']; + + $refund = $this->findByRefundNo($site_id, $refund_no); + + if($refund->isEmpty()) throw new PayException('REFUND_NOT_EXIST'); + if(!in_array($refund['status'], [RefundDict::WAIT, RefundDict::DEALING])) throw new PayException('REFUND_IS_CHANGE');//只有待退款和退款中的退款单据可以 + + $status = $params['status'];//第三方支付的状态,根据状态进行下一步业务 + // 启动事务 + Db::startTrans(); + try { + switch($status){ + case RefundDict::SUCCESS://退款成功 + $this->refundSuccess($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + 'trade_type' => $refund['trade_type'], + 'trade_id' => $refund['trade_id'], + 'main_type' => $main_type, + 'main_id' => $main_id + ]); + break; + case RefundDict::DEALING://退款处理中 + //检测一下当前退款订单完成情况 + $this->check($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + ]); + break; + case RefundDict::FAIL://退款失败 + $this->refundFail($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + 'fail_reason' => $params['fail_reason'] ?? '' + ]); + break; + } + // 提交事务 + Db::commit(); + return true; + } catch ( Throwable $e) { + // 回滚事务 + Db::rollback(); + throw new PayException($e->getMessage()); + } + } + + /** + * 主动校验退款 + * @param $site_id + * @param $data + * @return true + */ + public function check($site_id, $data){ + $out_trade_no = $data['out_trade_no']; + $refund_no = $data['refund_no']; + $refund = $this->findByRefundNo($site_id, $refund_no); + if($refund->isEmpty()) throw new PayException('REFUND_NOT_EXIST'); + if(!in_array($refund['status'], [RefundDict::WAIT, RefundDict::DEALING])) throw new PayException('REFUND_IS_CHANGE');//只有待退款和退款中的退款单据可以 + //查询第三方退款单据 + $refund_info = $this->pay_event->init($site_id, $refund->channel, $refund->type)->getRefund($out_trade_no, $refund_no); + //这儿的refund_info 已经统一整理成公共的数据格式 + $status = $refund_info['status']; + switch($status){ + case RefundDict::SUCCESS://退款成功 + $this->refundSuccess($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + ]); + break; + case RefundDict::DEALING://退款处理中 + $this->refundDealing($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + ]); + break; + case RefundDict::FAIL://退款失败 + $this->refundFail($site_id, [ + 'out_trade_no' => $out_trade_no, + 'refund_no' => $refund_no, + 'fail_reason' => $refund_info['fail_reason'] + ]); + break; + } + return true; + } + + /** + * 退款完成 + * @param int $site_id + * @param array $data + * @return bool + */ + public function refundSuccess(int $site_id, array $data){ + + $out_trade_no = $data['out_trade_no']; + $refund_no = $data['refund_no']; + $this->model->where([ + ['site_id', '=', $site_id], + ['refund_no', '=', $refund_no] + ])->update([ + 'status' => RefundDict::SUCCESS + ]); + $pay = (new CorePayService())->findPayInfoByOutTradeNo($site_id, $out_trade_no); + $result = event('RefundSuccess', ['refund_no' => $refund_no, 'trade_type' => $pay->trade_type, 'site_id' => $site_id, 'trade_id' => $data['trade_id']]); + if(!check_event_result($result)){ + return false; + } + return true; + } + + /** + * 退款失败 + * @param int $site_id + * @param array $data + * @return true + */ + public function refundFail(int $site_id, array $data){ + $refund_no = $data['refund_no']; + $this->model->where([ + ['site_id', '=', $site_id], + ['refund_no', '=', $refund_no] + ])->update([ + 'status' => RefundDict::FAIL, + 'fail_reason' => $data['fail_reason'] + ]); + return true; + } + + /** + * 退款处理中 + * @param int $site_id + * @param array $data + * @return true + */ + public function refundDealing(int $site_id, array $data){ + $out_trade_no = $data['out_trade_no']; + $refund_no = $data['refund_no']; + $this->model->where([ + ['site_id', '=', $site_id], + ['refund_no', '=', $refund_no] + ])->update([ + 'status' => RefundDict::DEALING + ]); + return true; + } + +} diff --git a/niucloud/app/service/core/pay/CoreTransferService.php b/niucloud/app/service/core/pay/CoreTransferService.php new file mode 100644 index 0000000..fb9e226 --- /dev/null +++ b/niucloud/app/service/core/pay/CoreTransferService.php @@ -0,0 +1,259 @@ +model = new Transfer(); + $this->pay_event = new CorePayEventService(); + } + + /** + * 创建转账单据 + * @param int $site_id + * @param string $main_type + * @param int $main_id + * @param float $money + * @param string $trade_type + * @param string $remark + * @return string|null + * @throws Exception + */ + public function create(int $site_id, string $main_type, int $main_id, float $money, string $trade_type, string $remark){ + $transfer_no = create_no(); + $transfer_data = array( + 'site_id' => $site_id, + 'money' => $money, + 'trade_type' => $trade_type, + 'transfer_no' => $transfer_no, + 'main_id' => $main_id, + 'main_type' => $main_type, + 'transfer_status' => TransferDict::WAIT, + 'remark' => $remark, + ); + $this->model->create($transfer_data); + return $transfer_no; + } + + + /** + * 转账 + * @param int $site_id + * @param string $transfer_no + * @param string $transfer_type + * @param array $data + * @return true + */ + public function transfer(int $site_id, string $transfer_no, string $transfer_type, array $data){ + $transfer = $this->findTransferByTransferNo($site_id, $transfer_no); + + if($transfer->isEmpty()) throw new PayException('TRANSFER_ORDER_INVALID'); + if(!in_array($transfer['transfer_status'], [TransferDict::WAIT, TransferDict::FAIL])) throw new PayException('TRANFER_STATUS_NOT_IN_WAIT_TANSFER'); + + $transfer_account = $data['transfer_account'] ?? ''; + $transfer_realname = $data['transfer_realname'] ?? ''; + $transfer_data = array( + 'transfer_type' => $transfer_type,//转账方式 + 'transfer_realname' => $transfer_realname,//名称 + 'transfer_mobile' => $data['transfer_mobile'] ?? '',//手机号 + 'transfer_bank' => $data['transfer_bank'] ?? '',//转账银行 + 'transfer_account' => $transfer_account,//转账账号 + 'openid' => $data['openid'] ?? '', + 'transfer_voucher' => $data['transfer_voucher'] ?? '', + 'transfer_remark' => $data['transfer_remark'] ?? '', + ); + $transfer->save($transfer_data); + switch($transfer_type){ + case TransferDict::WECHAT: + $transfer_account = $data['openid']; + break; + } + $params = []; + if(TransferDict::getTransferType()[$transfer_type]['is_online']){ + try { + $result = $this->pay_event->init($site_id, 'transfer', $transfer_type)->transfer($transfer['money'], $transfer_no, $transfer_account, $transfer_realname, $transfer['remark']); +// $params['batch_id'] = $result['batch_id']; +// $params['out_batch_no'] = $result['out_batch_no']; + //将返回的数据交给转账通知 + $this->transferNotify($site_id, $transfer_no, $result); + return true; + }catch( Throwable $e){ + $this->fail($site_id, $transfer_no, $transfer_type, ['reason' => get_lang($e->getMessage())]); + throw new PayException($e->getMessage()); + } + } + $this->success($site_id, $transfer_no, $transfer_type, $params); + return true; + } + /** + * 通过转账单号查询转账 + * @param int $site_id + * @param string $transfer_no + * @return Pay|array|mixed|Model + */ + public function findTransferByTransferNo(int $site_id, string $transfer_no){ + $where = array( + ['site_id', '=', $site_id], + ['transfer_no', '=', $transfer_no] + ); + return $this->model->where($where)->findOrEmpty(); + } + + public function transferNotify(int $site_id, string $transfer_no, $params){ + $transfer = $this->findTransferByTransferNo($site_id, $transfer_no); + + if($transfer->isEmpty()) throw new PayException('TRANSFER_ORDER_INVALID'); + if(!in_array($transfer['transfer_status'], [TransferDict::WAIT, TransferDict::DEALING])) throw new PayException('TRANFER_STATUS_NOT_IN_WAIT_TANSFER'); + $status = $params['status'] ?? TransferDict::DEALING; + switch($status){ + case TransferDict::SUCCESS: + $this->success($site_id, $transfer_no, $transfer->type); + break; + case TransferDict::DEALING: + $this->dealing($site_id, $transfer_no, $transfer->type); + break; + case TransferDict::FAIL: + $this->fail($site_id, $transfer_no, $transfer->type); + break; + } + return true; + } + /** + * 转账完成 + * @param int $site_id + * @param string $transfer_no + * @param string $transfer_type + * @param array $params + * @return bool + */ + public function success(int $site_id, string $transfer_no, string $transfer_type, array $params = []){ + $transfer = $this->findTransferByTransferNo($site_id, $transfer_no); + + if($transfer->isEmpty()) throw new PayException('TRANSFER_ORDER_INVALID'); + if(!in_array($transfer['transfer_status'], [TransferDict::WAIT, TransferDict::DEALING])) throw new PayException('TRANFER_STATUS_NOT_IN_WAIT_TANSFER'); + + $trade_type = $transfer->trade_type; + $data = array( + 'transfer_time' => time(), + 'transfer_status' => TransferDict::SUCCESS, + 'batch_id' => $params['batch_id'] ?? '', + 'out_batch_no' => $params['out_batch_no'] ?? '', +// 'transfer_type' => $transfer_type, + ); + // 启动事务 + Db::startTrans(); + try { + $transfer->save($data); + $result = event('TransferSuccess', ['transfer_no' => $transfer_no, 'trade_type' => $trade_type, 'site_id' => $site_id]); + if(!check_event_result($result)){ + return false; + } + // 提交事务 + Db::commit(); + return true; + } catch ( Throwable $e) { + // 回滚事务 + Db::rollback(); + throw new PayException($e->getMessage()); + } + + } + + /** + * 转账失败 + * @param int $site_id + * @param string $transfer_no + * @param string $transfer_type + * @param array $params + * @return true + */ + public function fail(int $site_id, string $transfer_no, string $transfer_type, array $params = []){ + $transfer = $this->findTransferByTransferNo($site_id, $transfer_no); + + if($transfer->isEmpty()) throw new PayException('TRANSFER_ORDER_INVALID'); + if(!in_array($transfer['transfer_status'], [TransferDict::WAIT, TransferDict::DEALING])) throw new PayException('TRANFER_STATUS_NOT_IN_WAIT_TANSFER'); + $data = array( + 'transfer_time' => time(), + 'transfer_status' => TransferDict::FAIL, + 'transfer_fail_reason' => $params['reason'] +// 'transfer_type' => $transfer_type, + ); + //允许修改的值 + + $transfer->save($data); + return true; + } + + + public function check(int $site_id, array $data){ + $transfer_no = $data['transfer_no']; + $transfer = $this->findTransferByTransferNo($site_id, $transfer_no); + if($transfer->isEmpty()) throw new PayException('TRANSFER_ORDER_INVALID'); + if(!in_array($transfer['status'], [TransferDict::DEALING, TransferDict::WAIT]) ) throw new PayException('TRANFER_IS_CHANGE');//只有待转账和转账中的订单可以校验 + + //查询第三方支付单据 + $transfer_info = $this->pay_event->init($site_id, $transfer->channel, $transfer->type)->getTransfer($transfer_no); + if(empty($transfer_info)) throw new PayException('TRANSFER_ORDER_INVALID');//查询不到转账信息 + $status = $transfer_info['status']; + switch($status){ + case TransferDict::SUCCESS: + $this->success($site_id, $transfer_no, $transfer->type); + break; + case TransferDict::DEALING: + $this->dealing($site_id, $transfer_no, $transfer->type); + break; + case TransferDict::FAIL: + $this->fail($site_id, $transfer_no, $transfer->type); + break; + } + return true; + } + + /** + * 处理中 + * @param int $site_id + * @param $transfer_no + * @param $type + * @return true + */ + public function dealing(int $site_id, $transfer_no, $type){ + $this->model->where([ + ['site_id', '=', $site_id], + ['transfer_no', '=', $transfer_no] + ])->update( + [ + 'status' => TransferDict::DEALING, + 'type' => $type + ] + ); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/paytype/CoreBalanceService.php b/niucloud/app/service/core/paytype/CoreBalanceService.php new file mode 100644 index 0000000..cfe5dbb --- /dev/null +++ b/niucloud/app/service/core/paytype/CoreBalanceService.php @@ -0,0 +1,132 @@ +findPayInfoByOutTradeNo($site_id, $out_trade_no); + + $main_id = $pay['main_id']; + $main_type = $pay['main_type']; + $money = $params['money']; + + switch($main_type){ + case 'member': + + //余额不足会抛出异常 + (new CoreMemberAccountService())->addLog($site_id, $main_id, MemberAccountTypeDict::BALANCE, + -$money, 'order', MemberAccountChangeTypeDict::getType('order')['name'] ?? '', $out_trade_no); + + break; + case 'user': + + + break; + } + return [ + 'status' => PayDict::STATUS_FINISH, + 'out_trade_no' => $out_trade_no, + ]; + //业务主体id + //查询一下余额是否足够 + //生成账户变动记录, +// if($member_id > 0){ +// +// } + //可能会锁定一部分余额 + + } + + /** + * 订单退款 + * @param array $params + * @return array + */ + public function refund(array $params){ + $out_trade_no = $params['out_trade_no']; + $money = $params['money']; + $site_id = $params['site_id']; + $refund_no = $params['refund_no']; + $core_pay_service = new CorePayService(); + $pay = $core_pay_service->findPayInfoByOutTradeNo($site_id, $out_trade_no); + + $main_id = $pay['main_id']; + $main_type = $pay['main_type']; + + switch($main_type){ + case 'member': + //余额不足会抛出异常 + (new CoreMemberAccountService())->addLog($site_id, $main_id, MemberAccountTypeDict::BALANCE, + $money, 'order_refund', MemberAccountChangeTypeDict::getType('order_refund')['name'] ?? '', $refund_no); + + break; + case 'user': + + + break; + } + return [ + 'status' => RefundDict::SUCCESS, + 'refund_no' => $refund_no, + 'out_trade_no' => $out_trade_no + ]; + + } + + /** + * 获取退款信息 + * @param string|null $out_trade_no + * @param string|null $refund_no + * @return Refund|array|mixed|Model + */ + public function getRefund(?string $out_trade_no, ?string $refund_no = '') { + return (new Refund())->where([ + ['refund_no', '=', $refund_no], + ])->findOrEmpty(); + } + +} diff --git a/niucloud/app/service/core/paytype/CoreOfflineService.php b/niucloud/app/service/core/paytype/CoreOfflineService.php new file mode 100644 index 0000000..6c98875 --- /dev/null +++ b/niucloud/app/service/core/paytype/CoreOfflineService.php @@ -0,0 +1,132 @@ +findPayInfoByOutTradeNo($site_id, $out_trade_no); + if ($pay->isEmpty()) throw new CommonException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + + $pay->voucher = $voucher; + $pay->save(); + + return [ + 'status' => PayDict::STATUS_ING, + 'out_trade_no' => $out_trade_no, + ]; + } + + /** + * 退款 + * @param array $params + * @return void + */ + public function refund(array $params){ + $refund_no = $params['refund_no'];//交易流水号 + $site_id = $params['site_id']; + $voucher = $params['voucher'] ?? ''; + + if (empty($voucher)) throw new CommonException('VOUCHER_NOT_EMPTY'); + + $pay = (new CoreRefundService())->findByRefundNo($site_id, $refund_no); + if ($pay->isEmpty()) throw new CommonException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + + $pay->voucher = $voucher; + $pay->save(); + + return [ + 'status' => RefundDict::SUCCESS, + 'refund_no' => $refund_no + ]; + } + + public function close(string $out_trade_no) { + return true; + } + + /** + * 获取退款信息 + * @param string|null $out_trade_no + * @param string|null $refund_no + * @return Refund|array|mixed|Model + */ + public function getRefund(?string $out_trade_no, ?string $refund_no = '') { + return (new Refund())->where([ + ['refund_no', '=', $refund_no], + ])->findOrEmpty(); + } + + /** + * 通过审核 + * @param int $site_id + * @param string $out_trade_no + * @return void + */ + public function pass(int $site_id, string $out_trade_no) { + $pay = (new CorePayService())->findPayInfoByOutTradeNo($site_id, $out_trade_no); + if ($pay->isEmpty()) throw new CommonException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if ($pay->status != PayDict::STATUS_AUDIT) throw new CommonException('ONLY_PAYING_CAN_AUDIT'); + if ($pay->type != PayDict::OFFLINEPAY) throw new CommonException('ONLY_OFFLINEPAY_CAN_AUDIT'); + + return (new CorePayService())->paySuccess($site_id, [ + 'status' => PayDict::STATUS_FINISH, + 'type' => $pay->type, + 'out_trade_no' => $out_trade_no, + 'voucher' => $pay->voucher + ]); + } + + /** + * 未通过审核 + * @param int $site_id + * @param string $out_trade_no + * @param string $reason + */ + public function refuse(int $site_id, string $out_trade_no, string $reason = '') { + $pay = (new CorePayService())->findPayInfoByOutTradeNo($site_id, $out_trade_no); + if ($pay->isEmpty()) throw new CommonException('ALIPAY_TRANSACTION_NO_NOT_EXIST'); + if ($pay->status != PayDict::STATUS_AUDIT) throw new CommonException('ONLY_PAYING_CAN_AUDIT'); + if ($pay->type != PayDict::OFFLINEPAY) throw new CommonException('ONLY_OFFLINEPAY_CAN_AUDIT'); + + return (new CorePayService())->payClose($site_id, [ + 'out_trade_no' => $out_trade_no, + 'reason' => $reason + ]); + } +} diff --git a/niucloud/app/service/core/scan/CoreScanService.php b/niucloud/app/service/core/scan/CoreScanService.php new file mode 100644 index 0000000..a52990c --- /dev/null +++ b/niucloud/app/service/core/scan/CoreScanService.php @@ -0,0 +1,85 @@ +model = new SysSchedule(); + + } + + /** + * 安装系统内置计划任务 + * @return true + */ + public function installSystemSchedule(){ + //安装系统计划任务 + $list = (new CoreScheduleService())->getTemplateList('system'); + $this->install($list); + return true; + } + + /** + * 安装插件计划任务 + * @param string $addon + * @return true + */ + public function installAddonSchedule(string $addon){ + //安装系统计划任务 + $list = (new CoreScheduleService())->getTemplateList($addon); + $this->install($list, $addon); + return true; + } + + /** + * 卸载插件的计划任务 + * @param string $addon + * @return true + */ + public function uninstallAddonSchedule(string $addon){ + //安装系统计划任务 + $this->model->where([['addon', '=', $addon]])->delete(); + return true; + } + /** + * 安装计划任务 + * @param array $data + * @param string $addon + * @return true + */ + public function install(array $data, string $addon = ''){ + $schedule_list = []; + foreach($data as $v){ + $schedule_list[] = array( + 'key' => $v['key'], + 'status' => ScheduleDict::ON, + 'time' => $v['time'], + 'addon' => $addon + ); + } + $this->model->replace()->insertAll($schedule_list); + return true; + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/schedule/CoreScheduleService.php b/niucloud/app/service/core/schedule/CoreScheduleService.php new file mode 100644 index 0000000..2ddabd0 --- /dev/null +++ b/niucloud/app/service/core/schedule/CoreScheduleService.php @@ -0,0 +1,219 @@ +model = new SysSchedule(); + } + + + /** + * 获取自动任务列表 + * @param array $where + * @return mixed + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getList(array $where = []) + { + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $list = $this->model->withSearch(['key','status'],$where)->field($field)->order('id desc')->append(['status_name'])->select()->toArray(); + $template_list = array_column($this->getTemplateList(), null, 'key'); + foreach($list as &$item){ + $item = array_merge($template_list[$item['key']] ?? [], $item); + } + return $list; + } + + /** + * 任务分页列表 + * @param array $where + * @return array + */ + public function getPage(array $where = []) + { + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $search_model = $this->model->withSearch(['key','status'],$where)->field($field)->order('id desc')->append(['status_name']); + $template_list = array_column($this->getTemplateList(), null, 'key'); + return $this->pageQuery($search_model, function ($item, $key) use($template_list){ + $item['crontab_content'] = $this->getCrontabContent($item['time']); + foreach($template_list[$item['key']] as $k => $v){ + if($k != 'time'){ + $item->$k = $v; + } + } + }); + } + + /** + * 获取信息 + * @param int $id + * @return array + */ + public function getInfo(int $id) + { + $field = 'id, addon, key, status, time, count, last_time, next_time, create_time, delete_time, update_time'; + $info = $this->model->where([['id', '=', $id]])->field($field)->append(['status_name'])->findOrEmpty()->toArray(); + if(!empty($info)){ + $template_list = array_column($this->getTemplateList(), null, 'key'); + $info = array_merge($template_list[$info['key']], $info); + } + return $info; + } + + /** + * 计划任务模板 + * @return array|null + */ + public function getTemplateList(string $addon = ''){ + $addon_load = new DictLoader('Schedule'); + return $addon_load->load([ + 'addon' => $addon + ]); + } + /** + * 计划任务的时间间隔 + * @param $data + * @return string + */ + protected function getCrontabContent($data): string + { + $content = ''; + $type = $data['type'] ?? ''; + switch ($type) { + case 'min':// 每隔几分 + $content = '每隔'.$data['min'].'分钟执行一次'; + break; + case 'hour':// 每隔几时第几分钟执行 + $content = '每隔'.$data['hour'].'小时的'.$data['min'].'分执行一次'; + break; + case 'day':// 每隔几日几时几分几秒执行 + $content = '每隔'.$data['day'].'天的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + case 'week':// 每周一次,周几具体时间执行 + $week_day = DateDict::getWeek()[$data['week']] ?? ''; + $content = '每周的'.$week_day.'的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + case 'month':// 每月一次,某日具体时间执行 + $content = '每月的'.$data['day'].'号的'.$data['hour'].'时'.$data['min'].'分执行一次'; + break; + } + return $content; + } + + /** + * 查询对象实例 + * @param int $id + * @return SysSchedule|array|mixed|Model + */ + public function find(int $id){ + return $this->model->findOrEmpty($id); + } + + /** + * 设置状态(启用和关闭) + * @param int $id + * @param $status + * @return true + */ + public function modifyStatus(int $id, $status){ + $schedule = $this->find($id); + if($schedule->isEmpty()) throw new CommonException('SCHEDULE_NOT_EXISTS'); + $schedule->save([ + 'status' => $status + ]); + return true; + } + + + /** + * 添加任务 + * @param array $data + * @return true + */ + public function add(array $data) + { + $data[ 'create_time' ] = time(); + $this->model->create($data); + return true; + + } + + /** + * 任务编辑 + * @param int $id + * @param array $data + * @return true + */ + public function edit(int $id, array $data) + { + $data[ 'update_time' ] = time(); + $this->model->where([ [ 'id', '=', $id ]])->update($data); + return true; + } + + /** + * 删除任务 + * @param int $id + * @return bool + */ + public function del(int $id) + { + return $this->model->where([ [ 'id', '=', $id ]])->delete(); + } + + /** + * 执行任务 + * @param array $schedule + * @return true + */ + public function execute(array $schedule){ + $class = $schedule['class'] ?: 'app\\job\\schedule\\'.Str::studly($schedule['key']); + $function = $schedule['function'] ?: 'doJob'; + try { + $result = Container::getInstance()->invoke([$class, $function ?? 'doJob']); + }catch( Throwable $e){ + Log::write('计划任务:'.$schedule['name'].'发生错误, 错误原因:'.$e->getMessage()); + } + $schedule = $this->find($schedule['id']); + if(!$schedule->isEmpty()){ + $schedule->save([ + 'last_time' => time(), + 'count' => $schedule['count'] + 1, + ]); + } + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/site/CoreSiteAccountService.php b/niucloud/app/service/core/site/CoreSiteAccountService.php new file mode 100644 index 0000000..9c12492 --- /dev/null +++ b/niucloud/app/service/core/site/CoreSiteAccountService.php @@ -0,0 +1,84 @@ +where([['out_trade_no', '=', $pay_info['out_trade_no']], ['site_id', '=', $pay_info['site_id']]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $pay_info['site_id'], + 'type' => 'pay', + 'money' => $pay_info['money'], + 'trade_no' => $pay_info['out_trade_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + + /** + * 添加退款账单记录 + * @param int $site_id + * @param string $refund_no + * @return mixed + */ + public function addRefundLog(int $site_id, string $refund_no) + { + $refund_info = (new Refund())->where([['refund_no', '=', $refund_no], ['site_id', '=', $site_id]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $refund_info['site_id'], + 'type' => 'refund', + 'money' => $refund_info['money'] *(-1), + 'trade_no' => $refund_info['refund_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + + /** + * 添加转账账单记录 + * @param int $site_id + * @param string $transfer_no + * @return mixed + */ + public function addTransferLog(int $site_id, string $transfer_no) + { + $transfer_info = (new Transfer())->where([['transfer_no', '=', $transfer_no], ['site_id', '=', $site_id]])->findOrEmpty()->toArray(); + $data = [ + 'site_id' => $transfer_info['site_id'], + 'type' => 'transfer', + 'money' => $transfer_info['money'] *(-1), + 'trade_no' => $transfer_info['transfer_no'], + ]; + $res = (new SiteAccountLog())->create($data); + return $res->id; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/site/CoreSiteService.php b/niucloud/app/service/core/site/CoreSiteService.php new file mode 100644 index 0000000..1651a1b --- /dev/null +++ b/niucloud/app/service/core/site/CoreSiteService.php @@ -0,0 +1,147 @@ +model = new Site(); + } + + /** + * 获取授权当前站点信息(用做缓存) + * @param $site_id + * @return mixed|string + */ + public function getSiteCache($site_id) + { + $cache_name = 'site_info_cache'; + return cache_remember( + $cache_name . $site_id, + function() use ($site_id) { + $where = [ + [ 'site_id', '=', $site_id ], + ]; + $info = $this->model->where($where)->field('site_id, site_name, front_end_name, front_end_logo, app_type, keywords, logo, icon, `desc`, status, latitude, longitude, province_id, city_id, district_id, address, full_address, phone, business_hours, create_time, expire_time, group_id, app, addons')->append([ 'status_name' ])->findOrEmpty()->toArray(); + if (!empty($info)) { + $site_addons = (new CoreSiteService())->getAddonKeysBySiteId((int)$site_id); + $info['apps'] = (new Addon())->where([ ['key', 'in', $site_addons], ['type', '=', AddonDict::APP]])->field('key,title,desc,icon,type')->select()->toArray(); + $info['site_addons'] = (new Addon())->where([ ['key', 'in', $site_addons], ['type', '=', AddonDict::ADDON]])->field('key,title,desc,icon,type')->select()->toArray(); + } + return $info; + }, + self::$cache_tag_name . $site_id + ); + } + + /** + * 模型实例 + * @param $site_id + * @return Site|array|mixed|Model + */ + public function find($site_id) + { + return $this->model->findOrEmpty($site_id); + } + + /** + * 获取过期的站点 + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getExpireSiteList() + { + return $this->model->where([ + [ 'status', '<>', SiteDict::EXPIRE ], + [ 'expire_time', 'between', [ 1, time() ] ], + ])->field('site_id,status,site_name')->select()->toArray(); + } + + /** + * 站点到期(计划任务专用,切勿调用) + * @param int $site_id + * @return bool + */ + public function expire(int $site_id) + { + $site = $this->find($site_id); + if ($site->isEmpty()) throw new CommonException('SITE_NOT_EXIST'); + if ($site->status == SiteDict::EXPIRE) throw new CommonException('SITE_EXPIRE'); + $this->model->where([ [ + 'site_id', '=', $site_id + ] ])->update( + [ + 'status' => SiteDict::EXPIRE, + ] + ); + return true; + } + + /** + * 获取站点支持的应用插件 + * @param int $site_id + * @return array + */ + public function getAddonKeysBySiteId(int $site_id){ + $cache_name = 'site_addon_key_cache'; + return cache_remember( + $cache_name . $site_id, + function() use ($site_id) { + $site_info = (new Site())->where([ ['site_id', '=', $site_id] ])->field('group_id,app_type,addons')->findOrEmpty(); + if ($site_info->isEmpty()) return []; + + $app_type = $site_info[ 'app_type' ]; + $group_addon_keys = []; + + if ($app_type == AppTypeDict::SITE) { + $group_id = $site_info[ 'group_id' ] ?? 0; + if ($group_id > 0) { + $group = (new SiteGroup())->field('app,addon')->findOrEmpty($group_id); + if (!$group->isEmpty()) { + $group_addon_keys = array_merge($group['app'], $group['addon']); + } + } + } + //在查询站点所拥有的应用插件,两者结合 + $site_addon_keys = is_array($site_info['addons']) ? $site_info['addons'] : []; + return array_merge($group_addon_keys ?? [], $site_addon_keys); + }, + self::$cache_tag_name . $site_id + ); + } +} diff --git a/niucloud/app/service/core/sys/CoreAgreementService.php b/niucloud/app/service/core/sys/CoreAgreementService.php new file mode 100644 index 0000000..64ed16c --- /dev/null +++ b/niucloud/app/service/core/sys/CoreAgreementService.php @@ -0,0 +1,102 @@ +model = new SysAgreement(); + } + + /** + * 获取协议内容 + * @param int $site_id + * @param string $key + * @return array + */ + public function getAgreement(int $site_id, string $key) + { + if(!array_key_exists($key, AgreementDict::getType())) throw new CommonException('AGREEMENT_TYPE_NOT_EXIST'); + $where = array( + ['agreement_key', '=', $key], + ['site_id', '=', $site_id] + ); + $info = $this->model->where($where)->field('site_id, agreement_key, title, content, create_time, update_time')->append(['agreement_key_name'])->findOrEmpty()->toArray(); + if(empty($info)) + { + $info = [ + 'site_id' => $site_id, + 'agreement_key' => $key, + 'agreement_key_name' => AgreementDict::getType()[$key] ?? '', + 'title' => '', + 'content' => '', + 'create_time' => '', + 'update_time' => '' + ]; + } + return $info; + } + + public function find(int $site_id, string $key) + { + if(!array_key_exists($key, AgreementDict::getType())) throw new CommonException('AGREEMENT_TYPE_NOT_EXIST'); + $where = array( + ['agreement_key', '=', $key], + ['site_id', '=', $site_id] + ); + return $this->model->where($where)->findOrEmpty(); + } + /** + * 设置协议 + * @param int $site_id + * @param string $key + * @param string $title + * @param string $content + * @return bool + */ + public function setAgreement(int $site_id, string $key, string $title, string $content) + { + if(!array_key_exists($key, AgreementDict::getType())) throw new CommonException('AGREEMENT_TYPE_NOT_EXIST'); + $where = array( + ['agreement_key', '=', $key], + ['site_id', '=', $site_id] + ); + $data = array( + 'site_id' => $site_id, + 'agreement_key' => $key, + 'title' => $title, + 'content' => $content + ); + $agreement = $this->find($site_id, $key); + if($agreement->isEmpty()){ + $data['create_time'] = time(); + $res = $this->model->create($data); + }else{ + $data['update_time'] = time(); + $res = $this->model->where($where)->save($data); + } + + return $res; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreAreaService.php b/niucloud/app/service/core/sys/CoreAreaService.php new file mode 100644 index 0000000..c6156bb --- /dev/null +++ b/niucloud/app/service/core/sys/CoreAreaService.php @@ -0,0 +1,90 @@ +model = new SysArea(); + } + + /** + * 获取地址信息 + * @param $id + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getInfo($id) + { + return $this->model->where('id', $id)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->find()->toArray(); + } + + /** + * 获取地址列表 + * @param int $pid + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getListByPid(int $pid) + { + return $this->model->where('pid', $pid)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); + } + + /** + * 获取地址的树形结构 + * @param int $level + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getTree(int $level = 3) + { + $list = $this->model->where('level', '<=', $level)->field('id, pid, name, shortname, longitude, latitude, level, sort, status')->select()->toArray(); + return list_to_tree($list); + } + + /** + * 通过对应省市区县,地址,返回完整地址 + * @param $province_id + * @param $city_id + * @param $district_id + * @param $address + * @param string $tag 分隔符 + * @return string + */ + public function getFullAddress($province_id, $city_id, $district_id, $address, $tag = ' ') + { + $province_name = ($this->model->where([['id', '=', $province_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + $city_name = ($this->model->where([['id', '=', $city_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + $district_name = ($this->model->where([['id', '=', $district_id]])->field("name")->findOrEmpty()->toArray())['name'] ?? ''; + return $province_name.$tag.$city_name.$tag. $district_name. $tag. $address; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreAttachmentService.php b/niucloud/app/service/core/sys/CoreAttachmentService.php new file mode 100644 index 0000000..6b11d58 --- /dev/null +++ b/niucloud/app/service/core/sys/CoreAttachmentService.php @@ -0,0 +1,140 @@ +model = new SysAttachment(); + } + + /** + * 新增素材 + * @param int $site_id + * @param array $data + * @return mixed + */ + public function add(int $site_id, array $data){ + $data['site_id'] = $site_id; + $attachment = $this->model->create($data); + if(!$attachment->att_id) + throw new AdminException('ADD_FAIL');//创建失败 + return $attachment->att_id; + } + + /** + * 素材库模型对象 + * @param int $site_id + * @param int $att_id + * @return mixed + */ + public function find(int $site_id, int $att_id){ + $where = array( + ['site_id', '=', $site_id], + ['att_id', '=', $att_id] + ); + $user = $this->model->where($where)->findOrEmpty(); + if ($user->isEmpty()) + throw new AdminException('USER_NOT_EXIST'); + return $user; + } + + /** + * 图片列表 + * @param int $site_id + * @param array|null $data + * @return array + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getList(int $site_id, ?array $data = []){ + $where = array( + ['site_id', '=', $site_id] + ); + $att_ids = $data['att_ids'] ?? []; + if(!empty($att_ids)){ + $where[] = ['att_id', 'in', $att_ids]; + } + return $this->model->where($where)->select()->toArray(); + } + + /** + * 编辑素材 + * @param int $site_id + * @param int $att_id + * @param array $data + * @return SysAttachment + */ + public function edit(int $site_id, int $att_id, array $data){ + $where = array( + ['site_id', '=', $site_id], + ['att_id', '=', $att_id] + ); + return $this->model->update($data, $where); + } + + /** + * 删除素材 + * @param int $site_id + * @param int $att_id + * @return mixed + */ + public function del(int $site_id, int $att_id){ + //查询是否有下级菜单或按钮 + $menu = $this->find($site_id, $att_id); + return $menu->delete(); + + } + + + /** + * 删除附件库中的文件 + * @param int $site_id + * @param array $att_ids + * @return true + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function delAll(int $site_id, array $att_ids){ + $core_attachment_service = new CoreAttachmentService(); + $list = $core_attachment_service->getList($site_id, compact('att_ids')); + if(empty($list)) + throw new UploadFileException('PLEACE_SELECT_IMAGE'); + + $ids = array_column($list, 'att_id'); + foreach($list as $v){ + $file_driver = (new CoreFileService())->driver($site_id, $v['storage_type']); + //读取上传附件的信息用于后续得校验和数据写入,删除失败直接通过 + $file_driver->delete($v['path']); + } + $this->model->destroy($ids); + return true; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/sys/CoreConfigService.php b/niucloud/app/service/core/sys/CoreConfigService.php new file mode 100644 index 0000000..9e27924 --- /dev/null +++ b/niucloud/app/service/core/sys/CoreConfigService.php @@ -0,0 +1,108 @@ +model = new SysConfig(); + } + /** + * 获取配置信息 + * @param int $site_id + * @param string $key + * @return array + */ + public function getConfig(int $site_id, string $key) + { + $where = array( + ['config_key', '=', $key], + ['site_id', '=', $site_id] + ); + return $this->model->where($where)->field('id,site_id,config_key,value,status,create_time,update_time')->findOrEmpty()->toArray(); + } + + /** + * 设置配置 + * @param int $site_id + * @param string $key + * @param array $value + * @return SysConfig|bool|Model + */ + public function setConfig(int $site_id, string $key, array $value) + { + $where = array( + ['config_key', '=', $key], + ['site_id', '=', $site_id] + ); + $data = array( + 'site_id' => $site_id, + 'config_key' => $key, + 'value' => $value, + ); + $info = $this->getConfig($site_id, $key); + if(empty($info)){ + $data['create_time'] = time(); + $res = $this->model->create($data); + }else{ + $data['update_time'] = time(); + $res = $this->model->where($where)->save($data); + } + + return $res; + } + + /** + * 修改设置状态 + * @param int $site_id + * @param int $status + * @param string $key + * @return bool + */ + public function modifyStatus(int $site_id, int $status, string $key) + { + $where = array( + ['config_key', '=', $key], + ['site_id', '=', $site_id] + ); + $data = array( + 'status' => $status, + ); + return $this->model->where($where)->save($data); + } + + /** + * 返回config信息 + * @param string $key + * @return array|mixed + */ + public function getConfigValue(int $site_id, string $key) + { + $config_info = $this->getConfig($site_id, $key); + if(empty($config_info)) + { + return []; + } + return $config_info['value']; + } +} diff --git a/niucloud/app/service/core/sys/CoreSysConfigService.php b/niucloud/app/service/core/sys/CoreSysConfigService.php new file mode 100644 index 0000000..791a983 --- /dev/null +++ b/niucloud/app/service/core/sys/CoreSysConfigService.php @@ -0,0 +1,93 @@ +domain(); + $web_domain = !empty(env("system.web_domain")) ? preg_replace('#/$#', '', env("system.web_domain")) : request()->domain(); + + return [ + 'wap_url' => $wap_domain . "/wap/" . $site_id . "/", + 'web_url' => $web_domain . "/web/" . $site_id . "/" + ]; + } + + /** + * 获取版权信息(网站整体,不按照站点设置) + * @return array|mixed + */ + public function getCopyright($site_id) + { + $info = (new CoreConfigService())->getConfig($site_id, 'COPYRIGHT'); + if(empty($info)) + { + $info = []; + $info['value'] = [ + 'icp' => '', + 'gov_record' => '', + 'gov_url' => '', + 'market_supervision_url' => '', + 'logo' => '', + 'company_name' => '', + 'copyright_link' => '', + 'copyright_desc' => '' + ]; + } + return $info['value']; + } + + /** + * 获取手机端首页列表 + * @param array $data + * @return array + */ + public function getWapIndexList($data = []) + { + $result = array_filter(event("WapIndex")); + if (empty($result)) return []; + + $index_list = []; + foreach ($result as $v) { + $index_list = empty($index_list) ? $v : array_merge($index_list, $v); + } + + foreach ($index_list as $k => $v) { + if (!empty($data[ 'key' ]) && !in_array($v[ 'key' ], explode(',', $data[ 'key' ]))) { + unset($index_list[ $k ]); + continue; + } + } + + $index_list = array_values($index_list); + return $index_list; + } +} diff --git a/niucloud/app/service/core/upload/CoreBase64Service.php b/niucloud/app/service/core/upload/CoreBase64Service.php new file mode 100644 index 0000000..311aab7 --- /dev/null +++ b/niucloud/app/service/core/upload/CoreBase64Service.php @@ -0,0 +1,53 @@ +upload_driver = $this->driver($site_id); + $file_path = $this->upload_driver->createFileName(time(), 'jpg'); + + $dir = $this->root_path . '/' . $file_dir . '/' . $file_path; + $result = $this->upload_driver->base64($content, $dir); + //读取上传附件的信息用于后续得校验和数据写入 + return [ + 'url' => $this->upload_driver->getUrl($dir) + ]; + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/upload/CoreFetchService.php b/niucloud/app/service/core/upload/CoreFetchService.php new file mode 100644 index 0000000..da80637 --- /dev/null +++ b/niucloud/app/service/core/upload/CoreFetchService.php @@ -0,0 +1,63 @@ +upload_driver = $this->driver($site_id); + [$link, $ext] = explode('.', $url); + $ext = empty($ext) ? $ext : 'jpg'; + $file_path = $this->upload_driver->createFileName($link, $ext); + + $dir = $this->root_path .'/'. $file_dir.'/'.$file_path; + $result = $this->upload_driver->fetch($url, $dir); + + //读取上传附件的信息用于后续得校验和数据写入 + if($result){ + return [ + 'url' => $this->upload_driver->getUrl($dir) + ]; + } + else{ + throw new UploadFileException($result); + } + + } + + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/upload/CoreFileService.php b/niucloud/app/service/core/upload/CoreFileService.php new file mode 100644 index 0000000..0d5d202 --- /dev/null +++ b/niucloud/app/service/core/upload/CoreFileService.php @@ -0,0 +1,96 @@ +root_path = $root_path; + return $this; + } + + /** + * 设置上传规则 + * @param array $validate ['ext' => [], 'mime' => [], 'size' => 0] + * @return void + */ + public function setValidate(array $validate){ + $this->validate = $validate; + return $this; + } + + /** + * 设置重命名 + * @param $rename + * @return $this + */ + public function setRename($rename = ''){ + $this->rename = $rename; + return $this; + } + + /** + * @var FileDriver + */ + protected $upload_driver; + protected static $storage_type; + + /** + * 实例化上传引擎 + * @param int $site_id + * @param string $storage_type + * @return UploadLoader + * @throws Exception + */ + public function driver(int $site_id, string $storage_type = ''){ + if(!empty($storage_type)){ + self::$storage_type = $storage_type; + $core_storage_service = new CoreStorageService(); + $storage_config = $core_storage_service->getStorageByType($site_id, $storage_type); + }else{ + $core_storage_service = new CoreStorageService(); + $storage_config = $core_storage_service->getDefaultStorage($site_id); + if(empty($storage_config)) throw new UploadFileException('UPLOAD_STORAGE_TYPE_ALL_CLOSE'); + self::$storage_type = $storage_config['storage_type']; + } + $storage_config = $storage_config ?? []; + $storage_config['storage_type'] = self::$storage_type; + //查询启用的上传方式 + return new UploadLoader(self::$storage_type, $storage_config ?? []); + } +} diff --git a/niucloud/app/service/core/upload/CoreImageService.php b/niucloud/app/service/core/upload/CoreImageService.php new file mode 100644 index 0000000..099b31e --- /dev/null +++ b/niucloud/app/service/core/upload/CoreImageService.php @@ -0,0 +1,76 @@ +getStorageConfigList(); + foreach($storage_type_list as $k => $v){ + $item_params = $v['params'] ?? []; + $item_domain = $item_params['domain'] ?? ''; + $item_storage_type = $v['storage_type']; + if(str_contains($file_path, '_'.$item_storage_type)){ + $this->upload_driver = $this->driver($site_id, $item_storage_type); + }else{ + if($item_domain == $file_domain){ + $this->upload_driver = $this->driver($site_id, $item_storage_type); + } + } + + } + //没有云上传就用本地上传 + if(empty($this->upload_driver)){ + $this->upload_driver = $this->driver($site_id, StorageDict::LOCAL); + } + //todo 如果是网络图片,可以将网络图片拉取到本地 + try { + $thumb_list = $this->upload_driver->thumb($file_path, $thumb_type); + return count($thumb_list) > 1 ? $thumb_list : $thumb_list[$thumb_type] ?? ''; + } catch ( Throwable $e) { + if($is_throw_exception){ + throw new UploadFileException($e->getMessage()); + }else{ + return ''; + } + + } + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/upload/CoreStorageService.php b/niucloud/app/service/core/upload/CoreStorageService.php new file mode 100644 index 0000000..45f0e10 --- /dev/null +++ b/niucloud/app/service/core/upload/CoreStorageService.php @@ -0,0 +1,122 @@ +getStorageConfigList($site_id); + foreach($storage_list as $k => $v){ + if($v['is_use'] == StorageDict::ON){ + $item_storage = $v['params'] ?? []; + $item_storage['storage_type'] = $v['storage_type']; + return $item_storage; + } + } + } + + /** + * 通过存储方式获取配置 + * @param int $site_id + * @param string $type + * @return array|mixed|void + */ + public function getStorageByType(int $site_id, string $type){ + $storage_list = $this->getStorageConfigList($site_id); + foreach($storage_list as $k => $v){ + if($v['storage_type'] == $type){ + $item_storage = $v['params'] ?? []; + $item_storage['storage_type'] = $v['storage_type']; + return $item_storage; + } + } + + } + /** + * 获取存储配置 + * @param int $site_id + * @return void + */ + public function getStorageConfig(int $site_id){ + $info = (new CoreConfigService())->getConfig($site_id, 'STORAGE')['value'] ?? []; + if(empty($info)) + $info = ['default' => StorageDict::LOCAL]; + + return $info; + + + } + + /** + * 获取云存储列表 + * @param int $site_id + * @return array + */ + public function getStorageList(int $site_id = 0) + { + $config_type = $this->getStorageConfig($site_id); + $storage_type_list = StorageDict::getType(); + $list = []; + foreach ($storage_type_list as $k => $v) { + $data = []; + $data['storage_type'] = $k; + $data['is_use'] = $k == $config_type['default'] ? StorageDict::ON : StorageDict::OFF; + $data['name'] = $v['name']; + foreach ($v['params'] as $k_param => $v_param) { + $data['params'][$k_param] = [ + 'name' => $v_param, + 'value' => $config_type[$k][$k_param] ?? '' + ]; + } + $list[] = $data; + } + return $list; + } + + + /** + * 获取配置列表 + * @param int $site_id + * @return array + */ + public function getStorageConfigList(int $site_id = 0) + { + $config_type = $this->getStorageConfig($site_id); + $storage_type_list = StorageDict::getType(); + $list = []; + foreach ($storage_type_list as $k => $v) { + $data = []; + $data['storage_type'] = $k; + $data['is_use'] = $k == $config_type['default'] ? StorageDict::ON : StorageDict::OFF; + $data['name'] = $v['name']; + foreach ($v['params'] as $k_param => $v_param) { + $data['params'][$k_param] = $config_type[$k][$k_param] ?? ''; + } + $list[] = $data; + } + return $list; + } +} diff --git a/niucloud/app/service/core/upload/CoreUploadConfigService.php b/niucloud/app/service/core/upload/CoreUploadConfigService.php new file mode 100644 index 0000000..0b42d6f --- /dev/null +++ b/niucloud/app/service/core/upload/CoreUploadConfigService.php @@ -0,0 +1,67 @@ +getConfig($site_id, ConfigKeyDict::UPLOAD)['value'] ?? []; + if (empty($info)) { + $info = [ + 'image_ext' => [ + 'jpg', 'png', 'gif', 'jpeg', 'webp' + ],//图片上传文件后缀 + 'video_ext' => [ + 'wmv', 'avi', 'mpg', 'mpeg', '3gp', 'mov', 'mp4', 'flv', 'f4v', 'rmvb', 'mkv' + ],//视频上传文件后缀 + 'document_ext' => [ + 'crt', 'pem' + ], + 'image_size' => 0,//图片上传大小限制 + 'video_size' => 0,//视频上传大小限制 + 'document_size' => 0,//文件上传大小限制 + ]; + } + return $info; + } + + /** + * 文件上传设置 + * @param int $site_id + * @param array $data + * @return SysConfig|bool|Model + */ + public function setUploadConfig(int $site_id, array $data) + { + return (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::UPLOAD, $data); + + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/upload/CoreUploadService.php b/niucloud/app/service/core/upload/CoreUploadService.php new file mode 100644 index 0000000..c4f3f58 --- /dev/null +++ b/niucloud/app/service/core/upload/CoreUploadService.php @@ -0,0 +1,127 @@ +upload_driver = $this->driver($site_id); + //读取上传附件的信息用于后续得校验和数据写入 + $this->upload_driver->read($file); + //生成缩略图.... + return $this->after($site_id, $file_dir, FileDict::IMAGE, $cate_id); + } + + /** + * 上传 + * @param int $site_id + * @param string $file_dir + * @param string $type + * @param int $cate_id + * @return array + */ + public function after(int $site_id, string $file_dir, string $type, int $cate_id = 0) + { + $file_info = $this->upload_driver->getFileInfo(); + $dir = $this->root_path . '/' . $file_dir; + //执行上传 + $this->upload_driver->setType($type)->setValidate($this->validate)->upload($dir); + $file_name = $this->upload_driver->getFileName(); + $full_path = $this->upload_driver->getFullPath($dir); + $core_attachment_service = new CoreAttachmentService(); + $url = $this->upload_driver->getUrl($full_path); + if ($this->is_attachment) { + //将数据写入附件表中 + $data = array( + 'name' => $file_name, + 'dir' => $dir, + 'att_type' => $type, + 'real_name' => $file_info['name'],//附件原名可能过长 + 'att_size' => $file_info['size'], + 'storage_type' => self::$storage_type, + 'path' => $full_path, + 'url' => $url, + 'cate_id' => $cate_id, + ); + $att_id = $core_attachment_service->add($site_id, $data); + } + $return_array = [ + 'url' => $url + ]; + if (!empty($att_id)) { + $return_array['att_id'] = $att_id; + } + return $return_array; + } + + /** + * 视频上传 + * @param string $file + * @param int $site_id + * @param string $file_dir + * @param int $cate_id + * @return array + * @throws Exception + */ + public function video(string $file, int $site_id, string $file_dir, int $cate_id) + { + //实例化上传引擎 + $this->upload_driver = $this->driver($site_id); + //读取上传附件的信息用于后续得校验和数据写入 + $this->upload_driver->read($file); + return $this->after($site_id, $file_dir, FileDict::VIDEO, $cate_id); + } + + /** + * 上传文件 + * @param string $file + * @param int $site_id + * @param string $type + * @param string $file_dir + * @param string $storage_type + * @return array + * @throws Exception + */ + public function document(string $file, int $site_id, string $type, string $file_dir, string $storage_type) + { + //实例化上传引擎 + $this->upload_driver = $this->driver($site_id, $storage_type); + //读取上传附件的信息用于后续得校验和数据写入 + $this->upload_driver->read($file); + return $this->after($site_id, $file_dir, $type); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/weapp/CoreWeappAuthService.php b/niucloud/app/service/core/weapp/CoreWeappAuthService.php new file mode 100644 index 0000000..61609b0 --- /dev/null +++ b/niucloud/app/service/core/weapp/CoreWeappAuthService.php @@ -0,0 +1,67 @@ +auth->session($code); + } + + /** + * 开发者后台校验与解密开放数据 + * @param int $site_id + * @param string $session + * @param string $iv + * @param string $encrypted_data + * @return array + * @throws DecryptException + */ + public function decryptData(int $site_id, string $session, string $iv, string $encrypted_data){ + return CoreWeappService::app($site_id)->encryptor->decryptData($session, $iv, $encrypted_data); + } + + /** + * 获取小程序手机号 + * @param int $site_id + * @param string $code + * @return array|Collection|object|ResponseInterface|string + * @throws InvalidConfigException + * @throws GuzzleException + */ + public function getUserPhoneNumber(int $site_id,string $code){ + return CoreWeappService::app($site_id)->phone_number->getUserPhoneNumber($code); + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/weapp/CoreWeappCloudService.php b/niucloud/app/service/core/weapp/CoreWeappCloudService.php new file mode 100644 index 0000000..d2687fe --- /dev/null +++ b/niucloud/app/service/core/weapp/CoreWeappCloudService.php @@ -0,0 +1,234 @@ +root_path = dirname(root_path()) . DIRECTORY_SEPARATOR; + $this->addon_path = root_path() . 'addon' . DIRECTORY_SEPARATOR; + } + + /** + * 上传小程序 + * @param $addon + */ + public function uploadWeapp(array $data) { + if (!request()->isSsl()) throw new CommonException('CURR_SITE_IS_NOT_OPEN_SSL'); + + $this->site_id = $data['site_id']; + $config = (new CoreWeappConfigService())->getWeappConfig($data['site_id']); + if (empty($config['app_id'])) throw new CommonException('WEAPP_APPID_EMPTY'); + if (empty($config['upload_private_key'])) throw new CommonException('UPLOAD_KEY_EMPTY'); + if (!file_exists($config['upload_private_key'])) throw new CommonException('UPLOAD_KEY_NOT_EXIST'); + + $compile_addon = (new Addon())->where([ ['compile', 'like', "%weapp%"] ])->field('key')->findOrEmpty(); + // 上传任务key + $task_key = uniqid(); + // 此次上传任务临时目录 + $temp_dir = runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'weapp' . DIRECTORY_SEPARATOR . $task_key; + // 小程序源码存放路径 + $package_dir = $temp_dir . DIRECTORY_SEPARATOR . 'package' . DIRECTORY_SEPARATOR; + // uni + $uni_dir = $package_dir . 'uni-app'; + + // 如果不存在编译版小程序 + if ($compile_addon->isEmpty()) { + dir_copy($this->root_path . 'uni-app', $uni_dir, exclude_dirs:['node_modules', 'unpackage', 'dist']); + $this->handleUniapp($uni_dir); + // 替换env文件 + $this->weappEnvReplace($uni_dir . DIRECTORY_SEPARATOR . '.env.production'); + } else { + $compile_dir = $this->addonPath($compile_addon->key) . 'compile' . DIRECTORY_SEPARATOR . 'weapp'; + if (!is_dir($compile_dir)) throw new CommonException('CLOUD_WEAPP_COMPILE_NOT_EXIST'); + dir_copy($compile_dir, $uni_dir); + $this->weappCompileReplace($uni_dir); + } + file_put_contents($package_dir . 'private.key', file_get_contents($config['upload_private_key'])); + + // 将临时目录下文件生成压缩包 + $zip_file = $temp_dir . DIRECTORY_SEPARATOR . 'weapp.zip'; + (new CoreAddonDevelopDownloadService(''))->compressToZip($package_dir, $zip_file); + + $query = [ + 'compile' => $compile_addon->isEmpty() ? 0 : 1, + 'authorize_code' => $this->auth_code, + 'appid' => $config['app_id'], + 'version' => $data['version'] ?? '', + 'desc' => $data['desc'] ?? '', + 'do' => 1, + 'timestamp' => time() + ]; + $response = (new CloudService())->httpPost('cloud/weapp?' . http_build_query($query), [ + 'multipart' => [ + [ + 'name' => 'file', + 'contents' => fopen($zip_file, 'r'), + 'filename' => 'weapp.zip' + ] + ], + ]); + + // 删除临时文件 + del_target_dir(runtime_path() . 'backup' . DIRECTORY_SEPARATOR . 'weapp', true); + + if (isset($response['code']) && $response['code'] == 0) throw new CommonException($response['msg']); + + return ['key' => $query['timestamp'] ]; + } + + /** + * 处理uniapp 查询出站点没有的插件进行移除 + * @param string $dir + * @return void + */ + private function handleUniapp(string $dir) { + $site_addon = (new CoreSiteService())->getAddonKeysBySiteId($this->site_id); + $local_addon = (new Addon())->where([['status', '=', AddonDict::ON]])->column('key'); + + // 移除uniapp中该站点没有的插件 + $diff_addon = array_filter(array_map(function ($key) use ($site_addon) { + if (!in_array($key, $site_addon)) return $key; + }, $local_addon)); + + if (!empty($diff_addon) ) { + foreach ($diff_addon as $addon) { + $this->addon = $addon; + + $addon_dir = $dir . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR . 'addon' . DIRECTORY_SEPARATOR . $addon; + if (is_dir($addon_dir)) del_target_dir($addon_dir, true); + + // 编译 diy-group 自定义组件代码文件 + $this->compileDiyComponentsCode($dir . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + // 编译 fixed-group 固定模板组件代码文件 + $this->compileFixedComponentsCode($dir . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + // 编译 pages.json 页面路由代码文件 + $this->uninstallPageCode($dir . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR); + // 编译 加载插件标题语言包 + $this->compileLocale($dir . DIRECTORY_SEPARATOR . 'src' . DIRECTORY_SEPARATOR, $addon); + } + } + } + + /** + * 小程序上传env文件处理 + * @param string $env_file + * @return void + */ + private function weappEnvReplace(string $env_file) { + $env = file_get_contents($env_file); + $env = str_replace("VITE_APP_BASE_URL=''", "VITE_APP_BASE_URL='" . (string)url('/api/', [], '', true) . "'", $env); + $env = str_replace("VITE_IMG_DOMAIN=''", "VITE_IMG_DOMAIN='" . (string)url('/', [], '', true) . "'", $env); + $env = str_replace("VITE_SITE_ID = ''", "VITE_SITE_ID='" . $this->site_id . "'", $env); + file_put_contents($env_file, $env); + } + + /** + * 小程序上传vendor文件处理 + * @param string $vendor_file + * @return void + */ + private function weappCompileReplace(string $path) { + // 替换request.js + $request_file = $path . DIRECTORY_SEPARATOR . 'utils' . DIRECTORY_SEPARATOR . 'request.js'; + $content = file_get_contents($request_file); + $content = str_replace('{{$baseUrl}}', (string)url('/api/', [], '', true), $content); + $content = str_replace('{{$siteId}}', $this->site_id, $content); + file_put_contents($request_file, $content); + + // 替换common.js + $common_file = $path . DIRECTORY_SEPARATOR . 'utils' . DIRECTORY_SEPARATOR . 'common.js'; + $content = file_get_contents($common_file); + $content = str_replace('{{$imgUrl}}', (string)url('/', [], '', true), $content); + file_put_contents($common_file, $content); + } + + /** + * 获取微信小程序预览码 + * @return void + */ + public function getWeappPreviewImage() { + $query = [ + 'authorize_code' => $this->auth_code, + ]; + $preview_url = (new CloudService())->getUrl('cloud/get_weapp_preview?' . http_build_query($query)); + + try { + $path = runtime_path() . uniqid() . '.jpg'; + file_put_contents($path, file_get_contents($preview_url)); + return image_to_base64($path, true); + } catch (\Exception $e) { + return ''; + } + } + + /** + * 获取小程序编译日志 + * @param string $timestamp + * @return void + */ + public function getWeappCompileLog(string $timestamp) { + $query = [ + 'authorize_code' => $this->auth_code, + 'timestamp' => $timestamp + ]; + $build_log = (new CloudService())->httpGet('cloud/get_weapp_logs?' . http_build_query($query)); + + if (isset($build_log['data']) && isset($build_log['data'][0]) && is_array($build_log['data'][0])) { + $last = end($build_log['data'][0]); + if ($last['code'] == 0) { + (new WeappVersion())->update(['status' => CloudDict::APPLET_UPLOAD_FAIL, 'fail_reason' => $last['msg'] ?? '', 'update_time' => time() ], ['task_key' => $timestamp]); + return $build_log; + } + if ($last['percent'] == 100) { + (new WeappVersion())->update(['status' => CloudDict::APPLET_UPLOAD_SUCCESS, 'update_time' => time() ], ['task_key' => $timestamp]); + } + } + return $build_log; + } + + /** + * 获取插件定义的package目录 + * @param string $addon + * @return string + */ + public function geAddonPackagePath(string $addon) + { + return $this->addon_path . $addon . DIRECTORY_SEPARATOR . 'package' . DIRECTORY_SEPARATOR; + } +} diff --git a/niucloud/app/service/core/weapp/CoreWeappConfigService.php b/niucloud/app/service/core/weapp/CoreWeappConfigService.php new file mode 100644 index 0000000..3fcfce3 --- /dev/null +++ b/niucloud/app/service/core/weapp/CoreWeappConfigService.php @@ -0,0 +1,69 @@ +getConfig($site_id, ConfigKeyDict::WEAPP)['value'] ?? []; + return [ + 'weapp_name' => $info['weapp_name'] ?? '',//小程序名称 + 'weapp_original' => $info['weapp_original'] ?? '',//原始ID + 'app_id' => $info['app_id'] ?? '',//AppID + 'app_secret' => $info['app_secret'] ?? '',//AppSecret + 'qr_code' => $info['qr_code'] ?? '',//小程序二维码 + 'token' => $info['token'] ?? '', + 'encoding_aes_key' => $info['encoding_aes_key'] ?? '', + 'encryption_type' => $info['encryption_type'] ?? 'not_encrypt',//加解密模式 not_encrypt 明文 compatible 兼容 safe 安全 + 'upload_private_key'=> $info['upload_private_key'] ?? '' + ]; + } + + /** + * 微信小程序配置 + * @param int $site_id + * @param array $data + * @return SysConfig|bool|Model + */ + public function setWeappConfig(int $site_id, array $data){ + $config = [ + 'weapp_name' => $data['weapp_name'] ?? '',//小程序名称 + 'weapp_original' => $data['weapp_original'] ?? '',//原始ID + 'app_id' => $data['app_id'] ?? '',//AppID + 'app_secret' => $data['app_secret'] ?? '',//AppSecret + 'qr_code' => $data['qr_code'] ?? '',//小程序二维码 + 'token' => $data['token'] ?? '', + 'encoding_aes_key' => $data['encoding_aes_key'] ?? '', + 'encryption_type' => $data['encryption_type'] ?? 'not_encrypt',//加解密模式 not_encrypt 明文 compatible 兼容 safe 安全 + 'upload_private_key'=> $data['upload_private_key'] ?? '' + ]; + return (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::WEAPP, $config); + } + + +} diff --git a/niucloud/app/service/core/weapp/CoreWeappService.php b/niucloud/app/service/core/weapp/CoreWeappService.php new file mode 100644 index 0000000..da2e782 --- /dev/null +++ b/niucloud/app/service/core/weapp/CoreWeappService.php @@ -0,0 +1,84 @@ +getWeappConfig($site_id); + if(empty($weapp_config['app_id']) || empty($weapp_config['app_secret'])) + throw new WechatException('WEAPP_NOT_EXIST');//公众号未配置 + $config = array( + 'app_id' => $weapp_config['app_id'], + 'secret' => $weapp_config['app_secret'], + // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名 + 'response_type' => 'array', + /** + * 日志配置 + * level: 日志级别, 可选为:debug/info/notice/warning/error/critical/alert/emergency + * path:日志文件位置(绝对路径!!!),要求可写权限 + */ + 'log' => [ + 'default' => env('app_debug', false) ? 'dev' : 'prod', // 默认使用的 channel,生产环境可以改为下面的 prod + 'channels' => [ + // 测试环境 + 'dev' => [ + 'driver' => 'single', + 'path' => app()->getRootPath() . 'runtime'.DIRECTORY_SEPARATOR.'weapp'.DIRECTORY_SEPARATOR.'dev'.DIRECTORY_SEPARATOR . date('Ym') . DIRECTORY_SEPARATOR . date('d') . '.log', + 'level' => 'debug', + ], + // 生产环境 + 'prod' => [ + 'driver' => 'daily', + 'path' => app()->getRootPath() . 'runtime'.DIRECTORY_SEPARATOR.'weapp'.DIRECTORY_SEPARATOR.'dev'.DIRECTORY_SEPARATOR . date('Ym') . DIRECTORY_SEPARATOR . date('d') . '.log', + 'level' => 'info', + ], + ], + ], + + /** + * 接口请求相关配置,超时时间等,具体可用参数请参考: + * http://docs.guzzlephp.org/en/stable/request-config.html + * - retries: 重试次数,默认 1,指定当 http 请求失败时重试的次数。 + * - retry_delay: 重试延迟间隔(单位:ms),默认 500 + * - log_template: 指定 HTTP 日志模板,请参考:https://github.com/guzzle/guzzle/blob/master/src/MessageFormatter.php + */ + 'http' => [ + 'throw' => true,//默认不抛出,还是有系统业务决定是否抛出 + 'max_retries' => 1, + 'retry_delay' => 500, + 'timeout' => 5.0, + // 'base_uri' => 'https://api.weixin.qq.com/', // 如果你在国外想要覆盖默认的 url 的时候才使用,根据不同的模块配置不同的 uri + ], + ); + return Factory::miniProgram($config); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/weapp/CoreWeappTemplateService.php b/niucloud/app/service/core/weapp/CoreWeappTemplateService.php new file mode 100644 index 0000000..c1e8d92 --- /dev/null +++ b/niucloud/app/service/core/weapp/CoreWeappTemplateService.php @@ -0,0 +1,86 @@ +subscribe_message; + } + + + /** + * 订阅消息发送 + * @param int $site_id + * @param string $template_id + * @param string $touser + * @param array $data + * @param string $page + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidArgumentException + * @throws InvalidConfigException + */ + public function send(int $site_id, string $template_id, string $touser, array $data, string $page = ''){ + + return $this->template($site_id)->send([ + 'template_id' => $template_id, // 所需下发的订阅模板id + 'touser' => $touser, // 接收者(用户)的 openid + 'page' => $page, // 点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。 + 'data' => $data, + ]); + } + + /** + * 组合模板并添加至帐号下的个人模板库 + * @param int $site_id + * @param $tid + * @param $kidList + * @param $sceneDesc + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function addTemplate(int $site_id, $tid, $kidList, $sceneDesc){ +// $tid = 563; // 模板标题 id,可通过接口获取,也可登录小程序后台查看获取 +// $kidList = [1, 2]; // 开发者自行组合好的模板关键词列表,可以通过 `getTemplateKeywords` 方法获取 +// $sceneDesc = '提示用户图书到期'; // 服务场景描述,非必填 + + return $this->template($site_id)->addTemplate($tid, $kidList, $sceneDesc); + } + + /** + * 删除帐号下的个人模板 + * @param int $site_id + * @param $template_id + * @return array|Collection|object|ResponseInterface|string + * @throws InvalidConfigException + * @throws GuzzleException + */ + public function deleteTemplate(int $site_id, $template_id){ + return $this->template($site_id)->deleteTemplate($template_id); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatApiService.php b/niucloud/app/service/core/wechat/CoreWechatApiService.php new file mode 100644 index 0000000..529139e --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatApiService.php @@ -0,0 +1,73 @@ +user->get($openid); + } + + /** + * 批量获取用户基本信息 + * @param int $site_id + * @param array $openids + * @param string $lang + * @return mixed + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function userInfoBatchget(int $site_id, array $openids, string $lang = 'zh_CN') + { + return CoreWechatService::app($site_id)->user->select($openids); + } + + /** + * 用户列表(可以再外部设计一个递归查询全部的函数) 返回的是 openid + */ + public function userGet(int $site_id, ?string $next_openid = '') + { + return CoreWechatService::app($site_id)->user->list($next_openid); + } + + + /** + * 创建菜单按钮接口 + * @param int $site_id + * @param array $buttons + * @param array $match_rule + * @return mixed + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function menuCreate(int $site_id, array $buttons, array $match_rule = []) + { +// CoreWechatService::app($site_id)->menu->current(); + return CoreWechatService::app($site_id)->menu->create($buttons, $match_rule); + } + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatConfigService.php b/niucloud/app/service/core/wechat/CoreWechatConfigService.php new file mode 100644 index 0000000..8793a06 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatConfigService.php @@ -0,0 +1,88 @@ +getConfig($site_id, ConfigKeyDict::WECHAT)['value'] ?? []; + return [ + 'wechat_name' => $info['wechat_name'] ?? '',//公众号名称 + 'wechat_original' => $info['wechat_original'] ?? '',//原始ID + 'app_id' => $info['app_id'] ?? '',//AppID + 'app_secret' => $info['app_secret'] ?? '',//AppSecret + 'qr_code' => $info['qr_code'] ?? '',//公众号二维码 + 'token' => $info['token'] ?? '', + 'encoding_aes_key' => $info['encoding_aes_key'] ?? '', + 'encryption_type' => $info['encryption_type'] ?? 'not_encrypt',//加解密模式 not_encrypt 明文 compatible 兼容 safe 安全 + ]; + } + + /** + * 设置微信公众号配置 + * @param int $site_id + * @param array $data + * @return SysConfig|bool|Model + */ + public function setWechatConfig(int $site_id, array $data){ + $config = [ + 'wechat_name' => $data['wechat_name'] ?? '',//公众号名称 + 'wechat_original' => $data['wechat_original'] ?? '',//原始ID + 'app_id' => $data['app_id'] ?? '',//AppID + 'app_secret' => $data['app_secret'] ?? '',//AppSecret + 'qr_code' => $data['qr_code'] ?? '',//公众号二维码 + 'token' => $data['token'] ?? '', + 'encoding_aes_key' => $data['encoding_aes_key'] ?? '', + 'encryption_type' => $data['encryption_type'] ?? '', + ]; + return (new CoreConfigService())->setConfig($site_id, ConfigKeyDict::WECHAT, $config); + } + + + /** + *查询微信需要的静态信息 + * @return array + */ + public function getWechatStaticInfo($site_id){ +// $domain = request()->domain(); + $wap_domain = (new CoreSysConfigService())->getSceneDomain($site_id)['wap_url'] ?? ''; + $wap_domain_array = explode('/', $wap_domain); + if(count($wap_domain_array) > 2){ + $wap_domain = $wap_domain_array[0].'/'.$wap_domain_array[1].'/'.$wap_domain_array[2]; + } + return [ + 'serve_url' => (string)url('/api/wechat/serve/'.$site_id, [],'',true), + 'business_domain' => $wap_domain, + 'js_secure_domain' => $wap_domain, + 'web_auth_domain' => $wap_domain, + 'encryption_type' => WechatDict::getEncryptionType() + ]; + } +} diff --git a/niucloud/app/service/core/wechat/CoreWechatFansService.php b/niucloud/app/service/core/wechat/CoreWechatFansService.php new file mode 100644 index 0000000..59cd756 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatFansService.php @@ -0,0 +1,154 @@ +model = new WechatFans(); + } + + /** + * 新增微信粉丝 + * @param int $site_id + * @param array $data + * @return void + */ + public function add(int $site_id, array $data) + { + + $fans = $this->model->create($data); + return $fans->fans_id; + } + + + public function find(array|string $where) + { + return $this->model->where($where)->findOrEmpty(); + } + + /** + * 修改微信粉丝 + * @param int $site_id + * @param string $open_id //可以是UnionID 也可以是openid + * @param array $data + * @return true + */ + public function edit(int $site_id, string $open_id, array $data) + { + $condition = [ + ['site_id', '=', $site_id], + ['openid', '=', $open_id] + ]; + $fans = $this->find($condition); + $core_wechat_api_service = new CoreWechatApiService(); + $userinfo = $core_wechat_api_service->userInfo($site_id, $open_id); + if (empty($userinfo)) + throw new CommonException('WECHAT_EMPOWER_NOT_EXIST'); + + $save_data = array( + 'site_id' => $site_id, + 'subscribe' => $userinfo['subscribe'],//用户是否订阅该公众号标识,值为0时,代表此用户没有关注该公众号,拉取不到其余信息。 + ); + //用户是否订阅该公众号标识,值为0时,代表此用户没有关注该公众号,拉取不到其余信息 + if ($userinfo['subscribe'] == 1) { + $save_data = array_merge($save_data, + [ + 'language' => $userinfo['language'] ?? '',//用户的语言,简体中文为zh_CN + 'subscribe_time' => $userinfo['subscribe_time'] ?? '',//用户关注时间,为时间戳。如果用户曾多次关注,则取最后关注时间 + 'unionid' => $userinfo['unionid'] ?? '',//只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。 + 'remark' => $userinfo['remark'] ?? '',//公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注 + 'groupid' => $userinfo['groupid'] ?? '',//用户所在的分组ID(兼容旧的用户分组接口) + 'subscribe_scene' => $userinfo['subscribe_scene'] ?? '',//返回用户关注的渠道来源,ADD_SCENE_SEARCH 公众号搜索,ADD_SCENE_ACCOUNT_MIGRATION 公众号迁移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 扫描二维码,ADD_SCENE_PROFILE_LINK 图文页内名称点击,ADD_SCENE_PROFILE_ITEM 图文页右上角菜单,ADD_SCENE_PAID 支付后关注,ADD_SCENE_WECHAT_ADVERTISEMENT 微信广告,ADD_SCENE_REPRINT 他人转载 ,ADD_SCENE_LIVESTREAM 视频号直播, ADD_SCENE_CHANNELS 视频号, ADD_SCENE_OTHERS 其他 + 'update_time' => time(), +// 'tagid_list' => $userinfo['tagid_list'],//用户被打上的标签ID列表 , 数据库字段为json + ] + ); + } + //头像 + if (!empty($data['avatar'])) { + $save_data['avatar'] = $data['avatar']; + } + //昵称 + if (!empty($data['nickname'])) { + $save_data['nickname'] = $data['nickname']; + } + //取消关注时间 + if (!empty($data['unsubscribe_time'])) { + $save_data['unsubscribe_time'] = $data['unsubscribe_time']; + } + // todo qr_scene qr_scene_str 这两个二维码自定义开发功能 + if (!$fans->isEmpty()) { + $fans->edit($save_data); + } else { + $this->model->create($save_data); + } + return true; + + } + + /** + * 粉丝关注事件 + * @param int $site_id + * @param string $app_id + * @param string $from_user_name + * @return true + */ + public function subscribe(int $site_id, string $app_id, string $from_user_name) + { + $core_wechat_api_service = new CoreWechatApiService(); + $user_info = $core_wechat_api_service->userInfo($site_id, $from_user_name); + + $data = array( + 'app_id' => $app_id, + 'openid' => $from_user_name, + 'subscribe' => 1, + 'nickname' => $user_info['remark'], + 'subscribe_time' => $user_info['subscribe_time'], + 'subscribe_scene' => $user_info['subscribe_scene'], + 'language' => $user_info['language'], + ); + $this->edit($site_id, $from_user_name, $data); + return true; + } + + /** + * 粉丝取消关注事件 + * @param int $site_id + * @param string $from_user_name + * @return true + */ + public function unsubscribe(int $site_id, string $from_user_name) + { + $data = array( + 'subscribe' => 0, + 'unsubscribe_time' => time(), + ); + $this->edit($site_id, $from_user_name, $data); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatMessageService.php b/niucloud/app/service/core/wechat/CoreWechatMessageService.php new file mode 100644 index 0000000..3135862 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatMessageService.php @@ -0,0 +1,154 @@ +event($site_id, $message); + return '收到事件消息'; + break; + case WechatDict::MESSAGE_TYPE_TEXT: + //调用文本回复 + return $this->text($site_id, $message); + return '收到文字消息'; + break; + case WechatDict::MESSAGE_TYPE_IMAGE: + return '收到图片消息'; + break; + case WechatDict::MESSAGE_TYPE_VOICE: + return '收到语音消息'; + break; + case WechatDict::MESSAGE_TYPE_VIDEO: + return '收到视频消息'; + break; + case WechatDict::MESSAGE_TYPE_LOCATION: + return '收到坐标消息'; + break; + case WechatDict::MESSAGE_TYPE_LINK: + return '收到链接消息'; + break; + case WechatDict::MESSAGE_TYPE_FILE: + return '收到文件消息'; + // ... 其它消息 + default: + return '收到其它消息'; + break; + } + } + + /** + * 事件分流 + * @return void + */ + public function event(int $site_id, $message) + { + switch ($message['Event'] ) { + case WechatDict::EVENT_SUBSCRIBE: + return $this->subscribe($site_id, $message); + break; + case WechatDict::EVENT_SCAN: + return $this->scan($site_id, $message); + break; + } + + } + + /** + * 扫码事件 + * @param int $site_id + * @param $message + * @return Lang + */ + public function scan(int $site_id, $message){ + $key = str_replace('qrscene_', '', $message['EventKey']); + $core_scan_service = new CoreScanService(); + $core_scan_service->actionByScan($site_id, $key, ['openid' => $message['FromUserName']]); + return get_lang('SCAN_SUCCESS'); + } + + /** + * 关注事件 + * @param int $site_id + * @param $message + * @return News|Text|false + */ + public function subscribe(int $site_id, $message){ + //todo 新增粉丝或将原有的粉丝改为关注状态 + // 因为时间的原因,这里可能需要将实践放在消息队列里面 + $core_wechat_fans_service = new CoreWechatFansService(); + $core_wechat_fans_service->subscribe($site_id, $message['ToUserName'], $message['FromUserName']); + //扫码事件 + if(!empty($message['EventKey'])){ + $this->scan($site_id, $message); + } + //如果配置了关注回复,返回关注消息 + $core_wechat_reply_service = new CoreWechatReplyService(); + return $core_wechat_reply_service->reply($site_id, WechatDict::REPLY_SUBSCRIBE) ?? false; + } + + + /** + * 取消关注事件 + * @param $site_id + * @param $message + * @return true + */ + public function unsubscribe($site_id, $message){ + $core_wechat_fans_service = new CoreWechatFansService(); + $core_wechat_fans_service->unsubscribe($site_id, $$message['FromUserName']); + return true; + } + + /** + * 文本回复事件 + * @param int $site_id + * @param $message + * @return News|Text|false + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + function text(int $site_id, $message) + { + $core_wechat_reply_service = new CoreWechatReplyService(); + return $core_wechat_reply_service->reply($site_id, WechatDict::REPLY_KEYWORD, $message['Content']) ?? false; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatReplyService.php b/niucloud/app/service/core/wechat/CoreWechatReplyService.php new file mode 100644 index 0000000..789b4aa --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatReplyService.php @@ -0,0 +1,292 @@ +model = new WechatReply(); + } + + /** + *关键字回复列表 + * @return array + */ + public function getKeywordPage(int $site_id, array $data = []) + { + $where = [ + ['site_id', '=', $site_id], + ['reply_type', '=', WechatDict::REPLY_KEYWORD] + ]; + if (!empty($data['keyword'])) { + $where[] = ['keyword', 'like', '%' . $data['keyword'] . '%']; + } + if (!empty($data['name'])) { + $where[] = ['name', 'like', '%' . $data['name'] . '%']; + } + return $this->getPageList($this->model, $where, 'name,keyword,matching_type,content_type,status,sort,create_time', 'uid desc'); + } + + /** + * 获取关键词回复信息 + * @param int $site_id + * @param int $id + * @return array + */ + public function getKeywordInfo(int $site_id, int $id) + { + return $this->model->where([ + ['site_id', '=', $site_id], + ['id', '=', $id], + ['reply_type', '=', WechatDict::REPLY_KEYWORD]] + )->findOrEmpty()->toArray(); + } + + /** + * 通过关键词查询回复 + * @param int $site_id + * @param string $keyword + * @return void + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function getKeywordInfoByKeyword(int $site_id, string $keyword) + { + $list = $this->model->where([ + ['site_id', '=', $site_id], + ['keyword', 'like', '%' . $keyword . '%'], + ['reply_type', '=', WechatDict::REPLY_KEYWORD]], + ['status', '=', ReplyDict::STATUS_ON] + )->order('sort asc')->select()->toArray(); + if (!empty($list)) { + foreach ($list as $v) { + $item_keyword = $v['keyword']; + switch ($v['matching_type']) { + case ReplyDict::MATCHING_TYPE_FULL://全匹配 + $item_keyword === $keyword && $reply_content = $item_keyword; + break; + case ReplyDict::MATCHING_TYPE_LIKE://模糊匹配 + stripos($keyword, $item_keyword) !== false && $reply_content = $item_keyword; + break; + } + if (!empty($reply_content)) { + return $v; + } + } + } + return []; + + + } + + /** + * 新增关键词回复 + * @param int $site_id + * @param string $data + * @return true + */ + public function addKeyword(int $site_id,string $data) + { + $data['site_id'] = $site_id; + $data['reply_type'] = WechatDict::REPLY_KEYWORD; + $this->model->create($data); + return true; + } + + /** + * 更新关键词回复 + * @param int $site_id + * @param int $id + * @param array $data + * @return WechatReply + */ + public function editKeyword(int $site_id, int $id, array $data) + { + $where = [ + ['site_id', '=', $site_id], + ['id', '=', $id], + ['reply_type', '=', WechatDict::REPLY_KEYWORD] + ]; + return $this->model->where($where)->update($data); + } + + /** + * 删除关键词回复 + * @return void + */ + public function delKeyword(int $site_id, int $id) + { + $where = array( + ['site_id', '=', $site_id], + ['id', '=', $id], + ['reply_type', '=', WechatDict::REPLY_KEYWORD] + ); + $reply = $this->find($where); + if ($reply->isEmpty()) + throw new AdminException('KEYWORDS_NOT_EXIST'); + return $reply->delete(); + } + + /** + * + * @param array|string $where + * @return WechatReply|array|mixed|Model + */ + public function find(array|string $where) + { + return $this->model->where($where)->findOrEmpty(); + } + + + /** + * 获取默认回复 + * @param int $site_id + * @return array + */ + public function getDefault(int $site_id) + { + return $this->model->where([ + ['site_id', '=', $site_id], + ['reply_type', '=', WechatDict::REPLY_DEFAULT] + ] + )->findOrEmpty()->toArray(); + } + + /** + * 更新默认回复 + * @param int $site_id + * @param array $data + * @return void + */ + public function editDefault(int $site_id, array $data) + { + $where = [ + ['site_id', '=', $site_id], + ['reply_type', '=', WechatDict::REPLY_DEFAULT] + ]; + $reply = $this->find($where); + //如果不存在,则创建一条默认回复记录 + if ($reply->isEmpty()) { + $data['reply_type'] = WechatDict::REPLY_DEFAULT; + $data['site_id'] = $site_id; + return $this->model->create($data); + } else { + return $reply->edit($data); + } + } + + + /** + * 获取关注回复 + * @param int $site_id + * @return array + */ + public function getSubscribe(int $site_id) + { + return $this->model->where([ + ['site_id', '=', $site_id], + ['reply_type', '=', WechatDict::REPLY_DEFAULT] + ] + )->findOrEmpty()->toArray(); + } + + /** + * 更新关注回复 + * @param int $site_id + * @param array $data + * @return void + */ + public function editSubscribe(int $site_id, array $data) + { + $where = [ + ['site_id', '=', $site_id], + ['reply_type', '=', WechatDict::REPLY_SUBSCRIBE] + ]; + $reply = $this->find($where); + //如果不存在,则创建一条关注回复记录 + if ($reply->isEmpty()) { + $data['reply_type'] = WechatDict::REPLY_SUBSCRIBE; + $data['site_id'] = $site_id; + return $this->model->create($data); + } else { + return $reply->edit($data); + } + + + } + + /** + * 回复 + * @param int $site_id + * @param string $event + * @param string $content + * @return void + * @throws DataNotFoundException + * @throws DbException + * @throws ModelNotFoundException + */ + public function reply(int $site_id, string $event = '', string $content = '') + { + switch ($event) { + case WechatDict::REPLY_SUBSCRIBE://关注回复 + $info = $this->getSubscribe($site_id); + break; + case WechatDict::REPLY_KEYWORD://关键词回复 + $info = $this->getKeywordInfoByKeyword($site_id, $content); + break; + } + //没有配置相关回复的话默认启用默认回复 + if(empty($info)){ + $info = $this->getDefault($site_id); + } + if(!empty($info)){ + //查询状态 + if ($info['status'] == ReplyDict::STATUS_ON) { + switch($info['content_type']) { + case ReplyDict::CONTENT_TYPE_TEXT://文本 + return new Text($info['content']); + case ReplyDict::CONTENT_TYPE_NEW://图文 + //todo 转化为临时素材或永久素材 + $items = [ + new NewsItem($info['content']), + ]; + return new News($items); + } + } + } + } + + + + +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatServeService.php b/niucloud/app/service/core/wechat/CoreWechatServeService.php new file mode 100644 index 0000000..fe686f9 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatServeService.php @@ -0,0 +1,105 @@ +oauth; + return $oauth->scopes([$scopes])->redirect($url); + } + + /** + * 处理授权回调 + * @param int $site_id + * @param string $code + * @return UserInterface + */ + public function userFromCode(int $site_id, string $code) + { + $oauth = CoreWechatService::app($site_id)->oauth; + return $oauth->userFromCode($code); + } + + public function getUser($user) + { + $user->getId(); //对应微信的 openid + $user->getNickname(); //对应微信的 nickname + $user->getName(); //对应微信的 nickname + $user->getAvatar(); //头像地址 + $user->getRaw(); //原始 API 返回的结果 + $user->getAccessToken(); //access_token + $user->getRefreshToken(); //refresh_token + $user->getExpiresIn(); //expires_in,Access Token 过期时间 + $user->getTokenResponse(); //返回 access_token 时的响应值 + //user中没有openid, 可以用id取 + return $user; + } + + /** + * 事件推送 + * @param int $site_id + * @return Response + * @throws BadRequestException + * @throws InvalidArgumentException + * @throws ReflectionException + * @throws InvalidConfigException + */ + public function serve(int $site_id) + { + + $app = CoreWechatService::app($site_id); + $app->server->push(function ($message) use ($site_id){ + return (new CoreWechatMessageService)->message($site_id, $message); + // ... + }); + $response = $app->server->serve(); + return $response->send(); + } + + public function jssdkConfig(int $site_id, string $url = '') + { + $jssdk = CoreWechatService::app($site_id)->jssdk; + return $jssdk->setUrl($url)->buildConfig([], false, false, false); + } + + public function scan(int $site_id, string $key, int $expire_seconds = 6 * 24 * 3600){ + $result = CoreWechatService::app($site_id)->qrcode->temporary($key, $expire_seconds); + return $result['url']; + } +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatService.php b/niucloud/app/service/core/wechat/CoreWechatService.php new file mode 100644 index 0000000..7507031 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatService.php @@ -0,0 +1,87 @@ +getWechatConfig($site_id); + if(empty($wechat_config['app_id']) || empty($wechat_config['app_secret'])) + throw new WechatException('WECHAT_NOT_EXIST');//公众号未配置 + $config = array( + 'app_id' => $wechat_config['app_id'], + 'secret' => $wechat_config['app_secret'], + 'token' => $wechat_config['token'], + 'aes_key' => $wechat_config['encoding_aes_key'],// 明文模式请勿填写 EncodingAESKey + 'encryption_type' => $wechat_config['encryption_type'],//消息加解密方式 + // 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名 + 'response_type' => 'array', + /** + * 日志配置 + * level: 日志级别, 可选为:debug/info/notice/warning/error/critical/alert/emergency + * path:日志文件位置(绝对路径!!!),要求可写权限 + */ + 'log' => [ + 'default' => env('app_debug', false) ? 'dev' : 'prod', // 默认使用的 channel,生产环境可以改为下面的 prod + 'channels' => [ + // 测试环境 + 'dev' => [ + 'driver' => 'single', + 'path' => app()->getRootPath() . 'runtime'.DIRECTORY_SEPARATOR.'wechat'.DIRECTORY_SEPARATOR.'dev'.DIRECTORY_SEPARATOR . date('Ym') . DIRECTORY_SEPARATOR . date('d') . '.log', + 'level' => 'debug', + ], + // 生产环境 + 'prod' => [ + 'driver' => 'daily', + 'path' => app()->getRootPath() . 'runtime'.DIRECTORY_SEPARATOR.'wechat'.DIRECTORY_SEPARATOR.'dev'.DIRECTORY_SEPARATOR . date('Ym') . DIRECTORY_SEPARATOR . date('d') . '.log', + 'level' => 'info', + ], + ], + ], + + /** + * 接口请求相关配置,超时时间等,具体可用参数请参考: + * http://docs.guzzlephp.org/en/stable/request-config.html + * - retries: 重试次数,默认 1,指定当 http 请求失败时重试的次数。 + * - retry_delay: 重试延迟间隔(单位:ms),默认 500 + * - log_template: 指定 HTTP 日志模板,请参考:https://github.com/guzzle/guzzle/blob/master/src/MessageFormatter.php + */ + 'http' => [ + 'max_retries' => 1, + 'retry_delay' => 500, + 'timeout' => 5.0, + 'throw' => true,//默认不抛出,还是有系统业务决定是否抛出 + // 'base_uri' => 'https://api.weixin.qq.com/', // 如果你在国外想要覆盖默认的 url 的时候才使用,根据不同的模块配置不同的 uri + ], + ); + return Factory::officialAccount($config); + } + +} \ No newline at end of file diff --git a/niucloud/app/service/core/wechat/CoreWechatTemplateService.php b/niucloud/app/service/core/wechat/CoreWechatTemplateService.php new file mode 100644 index 0000000..a7e3fb8 --- /dev/null +++ b/niucloud/app/service/core/wechat/CoreWechatTemplateService.php @@ -0,0 +1,96 @@ +template_message; + } + + /** + * 发送模板消息 + * @param int $site_id + * @param string $open_id + * @param string $wechat_template_id + * @param array $data + * @param string $first + * @param string $remark + * @param string $url + * @param string $miniprogram + * @return array|Collection|object|ResponseInterface|string + * @throws InvalidArgumentException + * @throws InvalidConfigException + * @throws GuzzleException + */ + public function send(int $site_id, string $open_id, string $wechat_template_id, array $data, string $first, string $remark, string $url = '', $miniprogram = '') + { + if (!empty($first)) $data[ 'first' ] = $first; + if (!empty($remark)) $data[ 'remark' ] = $remark; + + return $this->template($site_id)->send([ + 'touser' => $open_id, + 'template_id' => $wechat_template_id, + 'url' => $url, + 'miniprogram' => $miniprogram, + 'data' => $data, + ]); + + } + + /** + * 删除 + * @param int $site_id + * @param string $templateId + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function deletePrivateTemplate(int $site_id, string $templateId) + { + return $this->template($site_id)->deletePrivateTemplate($templateId); + } + + /** + * 添加 + * @param int $site_id + * @param string $shortId + * @param string $keyword_name_list + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function addTemplate(int $site_id, string $shortId, string $keyword_name_list) + { + return $this->template($site_id)->addTemplate($shortId, $keyword_name_list); + } + +} \ No newline at end of file diff --git a/niucloud/app/upgrade/v008/upgrade.sql b/niucloud/app/upgrade/v008/upgrade.sql new file mode 100644 index 0000000..5a7ea3e --- /dev/null +++ b/niucloud/app/upgrade/v008/upgrade.sql @@ -0,0 +1,13 @@ + +ALTER TABLE `site_group` MODIFY COLUMN app text NOT NULL COMMENT '应用'; + +UPDATE `site_group` nsg SET nsg.app = CONCAT('["', nsg.app, '"]') where nsg.app != ''; + +ALTER TABLE `site` MODIFY COLUMN app text NOT NULL COMMENT '站点应用'; + +UPDATE `site` SET app = CONCAT('["', app, '"]') where app != ''; + +ALTER TABLE `generate_column` ADD COLUMN `addon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉关联应用' AFTER `dict_type`, +ADD COLUMN `model` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉关联model' AFTER `addon`, +ADD COLUMN `label_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉标题字段' AFTER `model`, +ADD COLUMN `value_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '远程下拉value字段' AFTER `label_key`; diff --git a/niucloud/app/upgrade/v009/upgrade.sql b/niucloud/app/upgrade/v009/upgrade.sql new file mode 100644 index 0000000..559e840 --- /dev/null +++ b/niucloud/app/upgrade/v009/upgrade.sql @@ -0,0 +1,7 @@ + +ALTER TABLE `sys_user_log` MODIFY COLUMN `params` longtext DEFAULT NULL COMMENT '参数'; + +ALTER TABLE `sys_menu` MODIFY COLUMN `sort` int NOT NULL DEFAULT 1 COMMENT '排序'; + +ALTER TABLE `sys_notice_sms_log` MODIFY COLUMN `content` text NOT NULL COMMENT '发送内容'; +ALTER TABLE `sys_notice_sms_log` MODIFY COLUMN `params` text NOT NULL COMMENT '数据参数'; diff --git a/niucloud/app/validate/addon/AddonDevelop.php b/niucloud/app/validate/addon/AddonDevelop.php new file mode 100644 index 0000000..b7e40aa --- /dev/null +++ b/niucloud/app/validate/addon/AddonDevelop.php @@ -0,0 +1,44 @@ + 'require|regex:/^[a-zA-Z][a-zA-Z0-9_]{0,19}$/', + 'type' => 'require|checkType', + ]; + + protected $message = [ + 'key.require' => 'validate_addon.key_require', + 'key.regex' => 'validate_addon.key_regex', + 'type.require' => 'validate_addon.type_require', + ]; + + protected $scene = [ + "add" => ['key', 'type'], + "edit" => ['type'] + ]; + + protected function checkType($value, $rule, $data = []) + { + return (!empty($value) && isset(AddonDict::getType()[$value])) ? true : get_lang("validate_addon.not_exit_type"); + } +} diff --git a/niucloud/app/validate/article/Article.php b/niucloud/app/validate/article/Article.php new file mode 100644 index 0000000..a404e5f --- /dev/null +++ b/niucloud/app/validate/article/Article.php @@ -0,0 +1,57 @@ + 'require|max:20', + 'intro' => 'max:50', + 'summary' => 'max:50', + 'image' => 'max:100', + 'author' => 'max:20', + 'is_show' => 'number|between:0,1', + 'sort' => 'number|between:0,10000', + 'category_id' => 'number|require', + 'content' => 'require', + ]; + + protected $message = [ + 'title.require' => 'validate_article.title_require', + 'title.max' => 'validate_article.title_max', + 'intro.max' => 'validate_article.intro_max', + 'summary.max' => 'validate_article.summary_max', + 'image.max' => 'validate_article.image_max', + 'author.max' => 'validate_article.author_max', + 'is_show.number' => 'validate_article.is_show_number', + 'is_show.between' => 'validate_article.is_show_between', + 'sort.number' => 'validate_article.sort_number', + 'sort.between' => 'validate_article.sort_between', + 'category_id.require' => 'validate_article.category_id_require', + 'category_id.number' => 'validate_article.category_id_number', + 'content.require' => 'validate_article.content_require', + ]; + + protected $scene = [ + 'add' => ['title', 'intro', 'summary', 'image', 'author', 'is_show', 'sort', 'content', 'category_id'], + 'edit' => ['title', 'intro', 'summary', 'image', 'author', 'is_show', 'sort', 'content', 'category_id'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/article/ArticleCategory.php b/niucloud/app/validate/article/ArticleCategory.php new file mode 100644 index 0000000..0e8a937 --- /dev/null +++ b/niucloud/app/validate/article/ArticleCategory.php @@ -0,0 +1,45 @@ + 'require|max:20', + 'is_show' => 'number|between:0,1', + 'sort' => 'number|between:0,10000' + ]; + + protected $message = [ + 'name.require' => 'validate_article.cate_name_require', + 'name.max' => 'validate_article.cate_name_max', + 'is_show.number' => 'validate_article.is_show_number', + 'is_show.between' => 'validate_article.is_show_between', + 'sort.number' => 'validate_article.sort_number', + 'sort.between' => 'validate_article.sort_between', + ]; + + protected $scene = [ + 'add' => ['name', 'is_show', 'sort'], + 'edit' => ['name', 'is_show', 'sort'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/channel/Aliapp.php b/niucloud/app/validate/channel/Aliapp.php new file mode 100644 index 0000000..e62ae72 --- /dev/null +++ b/niucloud/app/validate/channel/Aliapp.php @@ -0,0 +1,39 @@ + 'require', + 'private_key' => 'require', + 'aes_key' => 'require', + + + ]; + + protected $message = [ + ]; + + protected $scene = [ + 'set' => ['app_id', 'private_key', 'aes_key'], + ]; + + +} \ No newline at end of file diff --git a/niucloud/app/validate/channel/Weapp.php b/niucloud/app/validate/channel/Weapp.php new file mode 100644 index 0000000..f25dc1b --- /dev/null +++ b/niucloud/app/validate/channel/Weapp.php @@ -0,0 +1,41 @@ + 'require', + 'app_secret' => 'require',//防止key值重复 + + + ]; + + protected $message = [ + 'app_id.require' => 'validate_weapp.appid_require', + 'app_secret.require' => 'validate_weapp.appsecret_require', + + ]; + + protected $scene = [ + 'set' => ['app_id', 'app_secret'], + ]; + + +} \ No newline at end of file diff --git a/niucloud/app/validate/channel/Wechat.php b/niucloud/app/validate/channel/Wechat.php new file mode 100644 index 0000000..4079b56 --- /dev/null +++ b/niucloud/app/validate/channel/Wechat.php @@ -0,0 +1,41 @@ + 'require', + 'app_secret' => 'require',//防止key值重复 + + + ]; + + protected $message = [ + 'app_id.require' => 'validate_wechat.appid_require', + 'app_secret.require' => 'validate_wechat.appsecret_require', + + ]; + + protected $scene = [ + 'set' => ['app_id', 'app_secret'], + ]; + + +} \ No newline at end of file diff --git a/niucloud/app/validate/diy/Diy.php b/niucloud/app/validate/diy/Diy.php new file mode 100644 index 0000000..554bc78 --- /dev/null +++ b/niucloud/app/validate/diy/Diy.php @@ -0,0 +1,39 @@ + 'require', + 'name' => 'require', + 'type' => 'require', + 'value' => 'require', + 'is_default' => 'number|between:0,1', + ]; + + protected $message = []; + + protected $scene = [ + "add" => ['title', 'name', 'type', 'value', 'is_default'], + "edit" => ['title', 'name', 'value', 'is_default'], + ]; + +} \ No newline at end of file diff --git a/niucloud/app/validate/diy/DiyRoute.php b/niucloud/app/validate/diy/DiyRoute.php new file mode 100644 index 0000000..cdda13a --- /dev/null +++ b/niucloud/app/validate/diy/DiyRoute.php @@ -0,0 +1,38 @@ + 'require', + 'name' => 'require', + 'page' => 'require', + 'sort' => 'number', + ]; + + protected $message = []; + + protected $scene = [ + "add" => ['title', 'name', 'page'], + "edit" => ['title', 'name', 'page'] + ]; + +} \ No newline at end of file diff --git a/niucloud/app/validate/generator/Generator.php b/niucloud/app/validate/generator/Generator.php new file mode 100644 index 0000000..6cf8346 --- /dev/null +++ b/niucloud/app/validate/generator/Generator.php @@ -0,0 +1,42 @@ + 'require|max:64', + 'table_content' => 'require|max:64', + ]; + + protected $message = [ + 'table_name.require' => 'validate_generator.table_name_require', + 'table_name.max' => 'validate_generator.table_name_max', + 'table_content.require' => 'validate_generator.table_content_require', + 'table_content.max' => 'validate_generator.table_content_max', + ]; + + protected $scene = [ + 'add' => ['table_name'], + "edit" => ['table_name', 'table_content', 'class_name', 'module_name', 'table_column'], + "create" => ['id'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/member/Address.php b/niucloud/app/validate/member/Address.php new file mode 100644 index 0000000..302f808 --- /dev/null +++ b/niucloud/app/validate/member/Address.php @@ -0,0 +1,47 @@ + 'require', + 'mobile' => 'require', + 'province_id' => 'require', + 'city_id' => 'require', + 'district_id' => 'require', + 'address' => 'require', + 'full_address' => 'require', + 'type' => 'require', + ]; + + protected $message = [ + 'name.require' => ['common_validate.require', ['name']], + 'mobile.require' => ['common_validate.require', ['mobile']], + 'address.require' => ['common_validate.require', ['address']], + 'full_address.require' => ['common_validate.require', ['full_address']], + 'type.require' => ['common_validate.require', ['type']], + ]; + + protected $scene = [ + "add" => ['name', 'mobile', 'address', 'full_address', 'lng', 'lat', 'type'], + "edit" => ['name', 'mobile', 'address', 'full_address', 'lng', 'lat', 'type'] + ]; + +} diff --git a/niucloud/app/validate/member/CashOut.php b/niucloud/app/validate/member/CashOut.php new file mode 100644 index 0000000..954b027 --- /dev/null +++ b/niucloud/app/validate/member/CashOut.php @@ -0,0 +1,57 @@ + 'min:0.01', // 提现金额 + 'account_type' => "checkAccountType", + 'transfer_type' => 'checkTransferType', + 'account_id' => 'checkAccountId' + ]; + + protected $message = [ + 'apply_money.min' => 'validate_member_cash_out.apply_money_min', + ]; + + protected $scene = [ + 'apply' => ['apply_money', 'account_type', 'transfer_type', 'account_id'], + ]; + + protected function checkAccountId($value, $rule, $data = []) + { + if ($data['transfer_type'] == TransferDict::WECHAT) { + return true; + } else { + return !empty($value) ? true : 'validate_member_cash_out.account_id_require'; + } + } + + protected function checkTransferType($value) + { + return array_key_exists($value, TransferDict::getTransferType()) ? true : 'validate_member_cash_out.not_support_transfer_type'; + } + + protected function checkAccountType($value) + { + $account_type = [MemberAccountTypeDict::MONEY, MemberAccountTypeDict::COMMISSION]; + return in_array($value, $account_type) ? true : 'validate_member_cash_out.not_support_account_type'; + } +} \ No newline at end of file diff --git a/niucloud/app/validate/member/CashOutAccount.php b/niucloud/app/validate/member/CashOutAccount.php new file mode 100644 index 0000000..193569f --- /dev/null +++ b/niucloud/app/validate/member/CashOutAccount.php @@ -0,0 +1,48 @@ + 'checkAccountType', + 'bank_name' => 'checkBankName', + 'account_no' => 'require', + 'realname' => 'require' + ]; + + protected $message = [ + 'account_type.require' => 'validate_member_cash_out_account.account_type_require', + 'account_no.require' => 'validate_member_cash_out_account.account_no_require', + 'realname.require' => 'validate_member_cash_out_account.realname_require', + ]; + + protected $scene = [ + 'addOrEdit' => ['account_type', 'bank_name', 'account_no', 'realname'], + ]; + + protected function checkBankName($value, $rule, $data = []) + { + return $data['account_type'] != 'bank' || !empty($value) ? true : 'validate_member_cash_out_account.bank_name_require'; + } + + protected function checkAccountType($value) + { + return array_key_exists($value, TransferDict::getTransferType()) ? true : 'validate_member_cash_out_account.not_support_transfer_type'; + } +} \ No newline at end of file diff --git a/niucloud/app/validate/member/CashOutConfig.php b/niucloud/app/validate/member/CashOutConfig.php new file mode 100644 index 0000000..db288fb --- /dev/null +++ b/niucloud/app/validate/member/CashOutConfig.php @@ -0,0 +1,44 @@ + 'in:0,1', //是否开启 + 'min' => 'min:0', //最低提现金额 + 'rate' => 'between:0,100', //提现手续费比率 + 'is_auto_verify' => 'in:0,1', //是否自动审核 + 'is_auto_transfer' => 'in:0,1', //是否自动转账 + 'transfer_type' => 'require', + ]; + + protected $message = [ + 'is_open.in' => 'validate_member.cash_out_is_open_in', + 'min.min' => 'validate_member.cash_out_min_min', + 'rate.between' => 'validate_member.cash_out_rate_between', + 'is_auto_verify.in' => 'validate_member.cash_out_is_auto_verify_in', + 'is_auto_transfer.in' => 'validate_member.cash_out_is_auto_transfer_in', + 'transfer_type.require' => 'validate_member_cash_out_config.transfer_type_require', + ]; + + protected $scene = [ + 'set' => ['is_open', 'min', 'rate', 'is_auto_verify', 'is_auto_transfer', 'transfer_type'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/member/LoginConfig.php b/niucloud/app/validate/member/LoginConfig.php new file mode 100644 index 0000000..9fe6e3f --- /dev/null +++ b/niucloud/app/validate/member/LoginConfig.php @@ -0,0 +1,47 @@ + 'number|between:0,1', + 'is_mobile' => 'number|between:0,1', + 'is_auth_register' => 'number|between:0,1', + 'is_bind_mobile' => 'number|between:0,1', + + ]; + + protected $message = [ + 'is_username.number' => 'validate_member.is_username_number', + 'is_username.between' => 'validate_member.is_username_between', + 'is_mobile.number' => 'validate_member.is_mobile_number', + 'is_mobile.between' => 'validate_member.is_mobile_between', + 'is_auth_register.number' => 'validate_member.is_auth_register_number', + 'is_auth_register.between' => 'validate_member.is_auth_register_between', + 'is_bind_mobile.number' => 'validate_member.is_bind_mobile_number', + 'is_bind_mobile.between' => 'validate_member.is_bind_mobile_between', + ]; + + protected $scene = [ + 'set' => ['is_username', 'is_mobile', 'is_auth_register', 'is_bind_mobile'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/member/Member.php b/niucloud/app/validate/member/Member.php new file mode 100644 index 0000000..ca53d79 --- /dev/null +++ b/niucloud/app/validate/member/Member.php @@ -0,0 +1,89 @@ + 'requireWithout:field|max:30|requireIf:field,nickname', + 'mobile' => 'mobile', + 'sex' => 'checkSex', + 'birthday' => 'date', + 'username' => 'require|checkUsername', + 'password' => 'require', + 'status' => 'require|checkStatus', + ]; + + protected $message = [ + 'nickname.requireWithout' => 'validate_member.nickname_require', + 'nickname.requireIf' => 'validate_member.nickname_require', + 'nickname.max' => 'validate_member.nickname_max', + 'mobile.require' => 'validate_member.mobile_require', + 'mobile.mobile' => 'validate_member.mobile_mobile', + 'birthday' => 'validate_member.birthday_format', + 'username.require' => 'validate_member.username_require', + 'username.unique' => 'validate_member.username_is_exist', + 'password.require' => 'validate_member.password_require', + + 'status.require' => 'validate_member.status_require', + + ]; + + protected $scene = [ + 'add' => ['birthday', 'mobile', 'password'], + 'edit' => ['sex', 'birthday'], + 'modify' => ['sex', 'birthday'], + 'account_register' => ['username', 'password', 'mobile'], + 'reset_password' => ['password', 'mobile'], + 'set_status' => ['status'] + ]; + + /** + * 账号不能是纯数字 + * @param $value + * @param $rule + * @param $data + * @return Lang|true + */ + public function checkUsername($value, $rule, $data = []){ + return preg_match('/^\d+$/', $value) ? get_lang("validate_member.username_cannot_pure_number") : true; + } + + /** + * 自定义验证 性别 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkSex($value, $rule, $data = []) + { + return isset(CommonDict::getSexType()[$value]) ? true : get_lang("validate_member.sex_bot_exist"); + } + + protected function checkStatus($value, $rule, $data = []) + { + return isset(MemberDict::getStatus()[$value]) ? true : get_lang("validate_member.not_exit_status"); + } +} \ No newline at end of file diff --git a/niucloud/app/validate/member/MemberConfig.php b/niucloud/app/validate/member/MemberConfig.php new file mode 100644 index 0000000..e6b3134 --- /dev/null +++ b/niucloud/app/validate/member/MemberConfig.php @@ -0,0 +1,52 @@ + 'number|checkLength' + ]; + + protected $message = [ + 'length.number' => 'validate_member_config.length_number', + ]; + + protected $scene = [ + 'set' => ['length'], + ]; + + /** + * 自定义验证 长度 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkLength($value, $rule, $data = []) + { + $length = (int)$value; + $prefix_len = strlen($data['prefix'] ?? ''); + if (empty($length)) return get_lang("validate_member_config.length_number"); + if (($length - $prefix_len < 4) || $length > 30) return get_lang("validate_member_config.length_between"); + return true; + } + +} \ No newline at end of file diff --git a/niucloud/app/validate/member/MemberLabel.php b/niucloud/app/validate/member/MemberLabel.php new file mode 100644 index 0000000..297971f --- /dev/null +++ b/niucloud/app/validate/member/MemberLabel.php @@ -0,0 +1,43 @@ + 'require|max:30', + 'memo' => 'max:200', + 'sort' => 'number', + + ]; + + protected $message = [ + 'label_name.require' => 'validate_member.label_name_require', + 'label_name.max' => 'validate_member.label_name_max', + 'memo.max' => 'validate_member.memo_max', + 'sort.number' => 'validate_member.sort_number', + ]; + + protected $scene = [ + 'add' => ['label_name', 'memo', 'sort'], + 'edit' => ['label_name', 'memo', 'sort'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/niucloud/Module.php b/niucloud/app/validate/niucloud/Module.php new file mode 100644 index 0000000..a4bea60 --- /dev/null +++ b/niucloud/app/validate/niucloud/Module.php @@ -0,0 +1,32 @@ + 'require', + 'auth_secret' => 'require' + ]; + + protected $message = [ + ]; + + protected $scene = [ + 'set' => ['auth_code', 'auth_secret'], + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/pay/Pay.php b/niucloud/app/validate/pay/Pay.php new file mode 100644 index 0000000..8f213ed --- /dev/null +++ b/niucloud/app/validate/pay/Pay.php @@ -0,0 +1,78 @@ + 'requireIf:type,' . PayDict::ALIPAY, + 'app_secret_cert' => 'requireIf:type,' . PayDict::ALIPAY, + 'app_public_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + 'alipay_public_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + 'alipay_root_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + + //微信 + 'mch_id' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_secret_key' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_secret_cert' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_public_cert_path' => 'requireIf:type,' . PayDict::WECHATPAY, + + //支付方式 + 'type' => 'require|checkPayType', + ]; + + protected $message = [ + 'app_id.requireIf' => 'validate_pay.app_id_requireif', + 'app_secret_cert.requireIf' => 'validate_pay.app_secret_cert_requireif', + 'app_public_cert_path.requireIf' => 'validate_pay.app_public_cert_path_requireif', + 'alipay_public_cert_path.requireIf' => 'validate_pay.alipay_public_cert_path_requireif', + 'alipay_root_cert_path.requireIf' => 'validate_pay.alipay_root_cert_path_requireif', + + 'mch_id.requireIf' => 'validate_pay.mch_id_requireif', + 'mch_secret_key.requireIf' => 'validate_pay.mch_secret_key_requireif', + 'mch_secret_cert.requireIf' => 'validate_pay.mch_secret_cert_requireif', + 'mch_public_cert_path.requireIf' => 'validate_pay.mch_public_cert_path_requireif', + + ]; + + protected $scene = [ + 'set' => [ + 'app_id', 'app_secret_cert', 'app_public_cert_path', 'alipay_public_cert_path', 'alipay_root_cert_path', + 'mch_id', 'mch_secret_key', 'mch_secret_cert', 'mch_public_cert_path', + 'type', + ], + ]; + + /** + * 自定义验证 支付类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkPayType($value, $rule, $data = []) + { + return isset(PayDict::getPayType()[$value]) ? true : get_lang("validate_pay.not_exit_pay_type"); + } + +} \ No newline at end of file diff --git a/niucloud/app/validate/pay/PayTemplate.php b/niucloud/app/validate/pay/PayTemplate.php new file mode 100644 index 0000000..4288d83 --- /dev/null +++ b/niucloud/app/validate/pay/PayTemplate.php @@ -0,0 +1,85 @@ + 'require', + //支付宝 + 'app_id' => 'requireIf:type,' . PayDict::ALIPAY, + 'app_secret_cert' => 'requireIf:type,' . PayDict::ALIPAY, + 'app_public_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + 'alipay_public_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + 'alipay_root_cert_path' => 'requireIf:type,' . PayDict::ALIPAY, + + //微信 + 'mch_id' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_secret_key' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_secret_cert' => 'requireIf:type,' . PayDict::WECHATPAY, + 'mch_public_cert_path' => 'requireIf:type,' . PayDict::WECHATPAY, + + //支付方式 + 'type' => 'require|checkPayType', + ]; + + protected $message = [ + 'app_id.requireIf' => 'validate_pay.app_id_requireif', + 'app_secret_cert.requireIf' => 'validate_pay.app_secret_cert_requireif', + 'app_public_cert_path.requireIf' => 'validate_pay.app_public_cert_path_requireif', + 'alipay_public_cert_path.requireIf' => 'validate_pay.alipay_public_cert_path_requireif', + 'alipay_root_cert_path.requireIf' => 'validate_pay.alipay_root_cert_path_requireif', + + 'mch_id.requireIf' => 'validate_pay.mch_id_requireif', + 'mch_secret_key.requireIf' => 'validate_pay.mch_secret_key_requireif', + 'mch_secret_cert.requireIf' => 'validate_pay.mch_secret_cert_requireif', + 'mch_public_cert_path.requireIf' => 'validate_pay.mch_public_cert_path_requireif', + + 'name.require' => 'validate_pay.name_require' + ]; + + protected $scene = [ + 'add' => [ + 'app_id', 'app_secret_cert', 'app_public_cert_path', 'alipay_public_cert_path', 'alipay_root_cert_path', + 'mch_id', 'mch_secret_key', 'mch_secret_cert', 'mch_public_cert_path', + 'type', 'name' + ], + 'edit' => [ + 'app_id', 'app_secret_cert', 'app_public_cert_path', 'alipay_public_cert_path', 'alipay_root_cert_path', + 'mch_id', 'mch_secret_key', 'mch_secret_cert', 'mch_public_cert_path', + 'name' + ], + ]; + + /** + * 自定义验证 支付类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkPayType($value, $rule, $data = []) + { + return isset(PayDict::getPayType()[$value]) ? true : get_lang('validate_pay.not_exit_pay_type'); + } + +} \ No newline at end of file diff --git a/niucloud/app/validate/site/Site.php b/niucloud/app/validate/site/Site.php new file mode 100644 index 0000000..a4ebc32 --- /dev/null +++ b/niucloud/app/validate/site/Site.php @@ -0,0 +1,43 @@ + 'require|max:20', + 'group_id' => 'require|number', + 'expire_time' => 'date' + ]; + + protected $message = [ + 'site_name.require' => 'validate_site.site_name_require', + 'site_name.max' => 'validate_site.site_name_max', + 'group_id.require' => 'validate_site.group_id_require', + 'group_id.number' => 'validate_site.group_id_number', + 'expire_time.number' => 'validate_site.expire_time_number', + ]; + + protected $scene = [ + 'add' => ['site_name', 'group_id', 'expire_time'], + "edit" => ['site_name'] + ]; +} diff --git a/niucloud/app/validate/site/SiteGroup.php b/niucloud/app/validate/site/SiteGroup.php new file mode 100644 index 0000000..03ac8de --- /dev/null +++ b/niucloud/app/validate/site/SiteGroup.php @@ -0,0 +1,41 @@ + 'require|max:20', + 'app' => 'require', + ]; + + protected $message = [ + 'group_name.require' => 'validate_site.group_name_require', + 'group_name.max' => 'validate_site.group_name_max', + 'app.require' => 'validate_site.app_require', + + ]; + + protected $scene = [ + 'add' => ['group_name', 'app'], + 'edit' => ['group_name'], + ]; +} diff --git a/niucloud/app/validate/sys/Agreement.php b/niucloud/app/validate/sys/Agreement.php new file mode 100644 index 0000000..119b750 --- /dev/null +++ b/niucloud/app/validate/sys/Agreement.php @@ -0,0 +1,41 @@ + 'require|max:20', + 'content' => 'require', + + ]; + + protected $message = [ + 'title.require' => 'validate_agreement.title_require', + 'title.max' => 'validate_agreement.title_max', + 'content.require' => 'validate_agreement.content_require', + ]; + + protected $scene = [ + 'edit' => ['title', 'content'], + ]; + +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/AttachmentCategory.php b/niucloud/app/validate/sys/AttachmentCategory.php new file mode 100644 index 0000000..57f228b --- /dev/null +++ b/niucloud/app/validate/sys/AttachmentCategory.php @@ -0,0 +1,54 @@ + 'require', + 'type' => 'require|checkMenuType' + ]; + + protected $message = [ + 'name.require' => 'validate_attachment.name_require', + + ]; + + protected $scene = [ + 'add' => ['name', 'type'], + 'edit' => ['name'], + ]; + + /** + * 自定义验证 菜单类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkMenuType($value, $rule, $data = []) + { + return isset(FileDict::getType()[$value]) ? true : get_lang("validate_attachment.not_exit_type"); + } + + +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/Menu.php b/niucloud/app/validate/sys/Menu.php new file mode 100644 index 0000000..484501a --- /dev/null +++ b/niucloud/app/validate/sys/Menu.php @@ -0,0 +1,74 @@ + 'require', +// 'menu_key' => 'unique:sys_menu',//防止key值重复 + 'menu_type' => 'require|checkMenuType', + 'methods' => 'requireWith:api_url|checkMethodType', + 'router_path' => 'requireIf:menu_type,0|requireIf:menu_type,1', + 'view_path' => 'requireIf:menu_type,1' + + ]; + + protected $message = [ + 'menu_name.require' => 'validate_menu.menu_name_require', + 'router_path.requireIf' => 'validate_menu.router_path_requireif', + 'view_path.requireIf' => 'validate_menu.view_path_requireif', + + 'methods.requireWith' => 'validate_menu.methods_requirewith', + ]; + + protected $scene = [ + 'add' => ['menu_name', 'menu_type', 'menu_key', 'router_path', 'view_path', 'methods'], + 'edit' => ['menu_name', 'menu_type', 'router_path', 'view_path', 'methods'],//更新得时候因为key中有上下级关系,所以menu_key字段是不能更新得 + ]; + + /** + * 自定义验证 菜单类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkMenuType($value, $rule, $data = []) + { + return isset(MenuTypeDict::getMenuType()[$value]) ? true : get_lang("validate_menu.not_exit_menu_type"); + } + + /** + * 自定义验证 请求类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkMethodType($value, $rule, $data = []) + { + return isset(MethodDict::getMethodType()[$value]) ? true : get_lang("validate_menu.not_exit_request_type"); + } + +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/Page.php b/niucloud/app/validate/sys/Page.php new file mode 100644 index 0000000..bb4ea6d --- /dev/null +++ b/niucloud/app/validate/sys/Page.php @@ -0,0 +1,35 @@ + 'number|min:1', + 'limit' => 'number|between:1,120', + ]; + + protected $message = [ + 'page.number' => 'validate_page.page_error', + 'page.min' => 'validate_page.page_error', + 'limit.number' => 'validate_page.limit_number', + 'limit.between' => 'validate_page.limit_between', + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/Role.php b/niucloud/app/validate/sys/Role.php new file mode 100644 index 0000000..883890b --- /dev/null +++ b/niucloud/app/validate/sys/Role.php @@ -0,0 +1,36 @@ + 'require', + ]; + + protected $message = [ + 'role_name.require' => 'validate_role.role_name_require', + ]; + + protected $scene = [ + 'add' => ['role_name'], + 'edit' => ['role_name'] + ]; +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/Schedule.php b/niucloud/app/validate/sys/Schedule.php new file mode 100644 index 0000000..5387b12 --- /dev/null +++ b/niucloud/app/validate/sys/Schedule.php @@ -0,0 +1,51 @@ + 'require|unique:sys_schedule|checkKeyType', + ]; + + protected $message = [ + 'key.require' => 'validate_schedule.schedule_require', + 'key.unique' => 'validate_schedule.schedule_unique', + ]; + + protected $scene = [ + 'add' => ['key'], + 'edit' => [], + ]; + + /** + * 自定义验证 任务类型 + * @param $value + * @param $rule + * @param array $data + * @return Lang|true + */ + protected function checkKeyType($value, $rule, $data = []) + { + $temp = array_column((new CoreScheduleService())->getTemplateList(), null, 'key'); + return isset($temp[$value]) ? true : get_lang("validate_schedule.not_exit_schedule_type"); + } +} \ No newline at end of file diff --git a/niucloud/app/validate/sys/User.php b/niucloud/app/validate/sys/User.php new file mode 100644 index 0000000..99a34b9 --- /dev/null +++ b/niucloud/app/validate/sys/User.php @@ -0,0 +1,44 @@ + 'require|unique:sys_user', + 'real_name' => 'requireWithout:field|requireIf:field,real_name', + 'password' => 'require', + ]; + + protected $message = [ + 'username.require' => 'validate_user.username_require', + 'username.unique' => 'validate_user.username_unique', + 'username.max' => 'validate_user.username_max', + 'real_name.requireWithout' => 'validate_user.real_name_require', + 'real_name.requireIf' => 'validate_user.real_name_require', + 'password.require' => 'validate_user.password_require', + ]; + + protected $scene = [ + 'add' => ['username', 'password'], + 'edit' => [], + 'modify' => [] + ]; +} diff --git a/niucloud/composer.json b/niucloud/composer.json new file mode 100644 index 0000000..a03cc3b --- /dev/null +++ b/niucloud/composer.json @@ -0,0 +1,88 @@ +{ + "name": "topthink/think", + "description": "the new thinkphp framework", + "type": "project", + "keywords": [ + "framework", + "thinkphp", + "ORM" + ], + "homepage": "https://www.thinkphp.cn/", + "license": "Apache-2.0", + "authors": [ + { + "name": "liu21st", + "email": "liu21st@gmail.com" + }, + { + "name": "yunwuxin", + "email": "448901948@qq.com" + } + ], + "require": { + "php": ">=7.2.5", + "topthink/framework": "v6.1.2", + "topthink/think-orm": "v2.0.61", + "topthink/think-multi-app": "v1.0.16", + "topthink/think-view": "v1.0.14", + "topthink/think-captcha": "v3.0.9", + "topthink/think-image": "v1.0.7", + "topthink/think-queue": "v3.0.7", + "firebase/php-jwt": "v5.5.1", + "w7corp/easywechat": "v5.30.0", + "spatie/macroable": "v1.0.1", + "dh2y/think-qrcode": "v2.0", + "dragonmantank/cron-expression": "v3.3.1", + "phpoffice/phpspreadsheet": "v1.28.0", + "qiniu/php-sdk": "v7.4.0", + "qcloud/cos-sdk-v5": "v2.6.2", + "aliyuncs/oss-sdk-php": "v2.6.0", + "alibabacloud/client": "v1.5.32", + "rmccue/requests": "v2.0.5", + "ext-json": "*", + "ext-curl": "*", + "ext-bcmath": "*", + "ext-mbstring": "*", + "php-di/php-di": "v7.0.1", + "guzzlehttp/guzzle": "7.5", + "yansongda/pay": "v3.2.14", + "symfony/psr-http-message-bridge": "v2.2.0", + "fastknife/ajcaptcha": "v1.2.1", + "kosinix/grafika": "dev-master", + "yunwuxin/think-cron": "v3.0.5", + "nesbot/carbon": "2.66.0", + "ext-zip": "*", + "mjaschen/phpgeo": "4.2.0", + "tencentcloud/sms": "^3.0" + }, + "require-dev": { + "symfony/var-dumper": "v4.4.47", + "topthink/think-trace": "v1.6" + }, + "autoload": { + "psr-4": { + "addon\\": "addon", + "app\\": "app", + "core\\": "core" + }, + "psr-0": {} + }, + "config": { + "preferred-install": "dist", + "allow-plugins": { + "easywechat-composer/easywechat-composer": true + } + }, + "scripts": { + "post-autoload-dump": [ + "@php think service:discover", + "@php think vendor:publish" + ] + }, + "repositories": { + "packagist": { + "type": "composer", + "url": "https://mirrors.aliyun.com/composer" + } + } +} \ No newline at end of file diff --git a/niucloud/config/app.php b/niucloud/config/app.php new file mode 100644 index 0000000..3dada4b --- /dev/null +++ b/niucloud/config/app.php @@ -0,0 +1,32 @@ + env('app.host', ''), + // 应用的命名空间 + 'app_namespace' => '', + // 是否启用路由 + 'with_route' => true, + // 默认应用 + 'default_app' => 'index', + // 默认时区 + 'default_timezone' => 'Asia/Shanghai', + + // 应用映射(自动多应用模式有效) + 'app_map' => [], + // 域名绑定(自动多应用模式有效) + 'domain_bind' => [], + // 禁止URL访问的应用列表(自动多应用模式有效) + 'deny_app_list' => [], + + // 异常页面的模板文件 + 'exception_tmpl' => app()->getThinkPath() . 'tpl/think_exception.tpl', + + // 错误显示信息,非调试模式有效 + 'error_message' => '页面错误!请稍后再试~', + // 显示错误信息 + 'show_error_msg' => false, +]; diff --git a/niucloud/config/cache.php b/niucloud/config/cache.php new file mode 100644 index 0000000..34f9e1a --- /dev/null +++ b/niucloud/config/cache.php @@ -0,0 +1,51 @@ + env('cache.driver', 'file'), + + // 缓存连接方式配置 + 'stores' => [ + 'file' => [ + // 驱动方式 + 'type' => 'File', + // 缓存保存目录 + 'path' => app()->getRuntimePath() . 'cache' . DIRECTORY_SEPARATOR, + // 缓存前缀 + 'prefix' => '', + // 缓存有效期 0表示永久缓存 + 'expire' => 0, + // 缓存标签前缀 + 'tag_prefix' => 'tag:', + // 序列化机制 例如 ['serialize', 'unserialize'] + 'serialize' => [], + ], + // 更多的缓存连接 + // redis + 'redis' => [ + // 驱动方式 + 'type' => 'redis', + // 服务器地址 + 'host' => env('redis.redis_hostname', '127.0.0.1'), + // 端口 + 'port' => env('redis.port', '6379'), + // 密码 + 'password' => env('redis.redis_password', ''), + // 缓存有效期 0表示永久缓存 + 'expire' => 0 , + // 缓存前缀 + 'prefix' => '', + // 缓存标签前缀 + 'tag_prefix' => 'tag:', + // 数据库 0号数据库 + 'select' => env('redis.select', 0), + 'serialize' => [], + // 服务端主动关闭 + 'timeout' => 0 + ], + ], +]; diff --git a/niucloud/config/captcha.php b/niucloud/config/captcha.php new file mode 100644 index 0000000..39d7fbc --- /dev/null +++ b/niucloud/config/captcha.php @@ -0,0 +1,39 @@ + 4, + // 验证码字符集合 + 'codeSet' => '1234567890', + // 验证码过期时间 + 'expire' => 1800, + // 是否使用中文验证码 + 'useZh' => false, + // 是否使用算术验证码 + 'math' => false, + // 是否使用背景图 + 'useImgBg' => false, + //验证码字符大小 + 'fontSize' => 14, + // 是否使用混淆曲线 + 'useCurve' => true, + //是否添加杂点 + 'useNoise' => true, + // 验证码字体 不设置则随机 + 'fontttf' => '', + //背景颜色 + 'bg' => [243, 251, 254], + // 验证码图片高度 + 'imageH' => 36, + // 验证码图片宽度 + 'imageW' => 100, + + // 添加额外的验证码设置 + // verify => [ + // 'length'=>4, + // ... + //], +]; diff --git a/niucloud/config/console.php b/niucloud/config/console.php new file mode 100644 index 0000000..5ca5d63 --- /dev/null +++ b/niucloud/config/console.php @@ -0,0 +1,18 @@ + [ + //消息队列 自定义命令 + 'queue:work' => 'think\queue\command\Work', + 'queue:restart' => 'think\queue\command\Restart', + 'queue:listen' => 'think\queue\command\Listen', + 'addon:install' => 'app\command\Addon\Install', + 'addon:uninstall' => 'app\command\Addon\Uninstall', + 'menu:refresh' => 'app\command\Menu', + #自定义定时任务 + 'OrderClose' => 'app\command\hygl\OrderClose',//会员管理-30分钟自动关闭尚未支付的订单 + ], +]; diff --git a/niucloud/config/cookie.php b/niucloud/config/cookie.php new file mode 100644 index 0000000..d3b3aab --- /dev/null +++ b/niucloud/config/cookie.php @@ -0,0 +1,20 @@ + 0, + // cookie 保存路径 + 'path' => '/', + // cookie 有效域名 + 'domain' => '', + // cookie 启用安全传输 + 'secure' => false, + // httponly设置 + 'httponly' => false, + // 是否使用 setcookie + 'setcookie' => true, + // samesite 设置,支持 'strict' 'lax' + 'samesite' => '', +]; diff --git a/niucloud/config/cron.php b/niucloud/config/cron.php new file mode 100644 index 0000000..e5a2429 --- /dev/null +++ b/niucloud/config/cron.php @@ -0,0 +1,5 @@ + [] +]; \ No newline at end of file diff --git a/niucloud/config/database.php b/niucloud/config/database.php new file mode 100644 index 0000000..d15ca88 --- /dev/null +++ b/niucloud/config/database.php @@ -0,0 +1,63 @@ + env('database.driver', 'mysql'), + + // 自定义时间查询规则 + 'time_query_rule' => [], + + // 自动写入时间戳字段 + // true为自动识别类型 false关闭 + // 字符串则明确指定时间字段类型 支持 int timestamp datetime date + 'auto_timestamp' => true, + + // 时间字段取出后的默认时间格式 + 'datetime_format' => 'Y-m-d H:i:s', + + // 时间字段配置 配置格式:create_time,update_time + 'datetime_field' => '', + + // 数据库连接配置信息 + 'connections' => [ + 'mysql' => [ + // 数据库类型 + 'type' => env('database.type', 'mysql'), + // 服务器地址 + 'hostname' => env('database.hostname', '127.0.0.1'), + // 数据库名 + 'database' => env('database.database', ''), + // 用户名 + 'username' => env('database.username', 'root'), + // 密码 + 'password' => env('database.password', ''), + // 端口 + 'hostport' => env('database.hostport', '3306'), + // 数据库连接参数 + 'params' => [], + // 数据库编码默认采用utf8 + 'charset' => env('database.charset', 'utf8mb4'), + // 数据库表前缀 + 'prefix' => env('database.prefix', 'ns_'), + + // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) + 'deploy' => 0, + // 数据库读写是否分离 主从式有效 + 'rw_separate' => false, + // 读写分离后 主服务器数量 + 'master_num' => 1, + // 指定从服务器序号 + 'slave_no' => '', + // 是否严格检查字段是否存在 + 'fields_strict' => true, + // 是否需要断线重连 + 'break_reconnect' => false, + // 监听SQL + 'trigger_sql' => env('app_debug', true), + // 开启字段缓存 + 'fields_cache' => false, + ], + + // 更多的数据库配置信息 + ], +]; diff --git a/niucloud/config/filesystem.php b/niucloud/config/filesystem.php new file mode 100644 index 0000000..965297e --- /dev/null +++ b/niucloud/config/filesystem.php @@ -0,0 +1,24 @@ + env('filesystem.driver', 'local'), + // 磁盘列表 + 'disks' => [ + 'local' => [ + 'type' => 'local', + 'root' => app()->getRuntimePath() . 'storage', + ], + 'public' => [ + // 磁盘类型 + 'type' => 'local', + // 磁盘路径 + 'root' => app()->getRootPath() . 'public/storage', + // 磁盘路径对应的外部URL路径 + 'url' => '/storage', + // 可见性 + 'visibility' => 'public', + ], + // 更多的磁盘配置信息 + ], +]; diff --git a/niucloud/config/imgcaptcha.php b/niucloud/config/imgcaptcha.php new file mode 100644 index 0000000..4374d0c --- /dev/null +++ b/niucloud/config/imgcaptcha.php @@ -0,0 +1,30 @@ + '', //自定义字体包路径, 不填使用默认值 + //文字验证码 + 'click_world' => [ + 'backgrounds' => [] + ], + //滑动验证码 + 'block_puzzle' => [ + 'backgrounds' => [], //背景图片路径, 不填使用默认值 + 'templates' => [], //模板图 + 'offset' => 10, //容错偏移量 + ], + //水印 + 'watermark' => [ + 'fontsize' => 12, + 'color' => '#ffffff', + 'text' => '' + ], + 'cache' => [ + 'constructor' => [Cache::class, 'instance'] + ] +]; diff --git a/niucloud/config/lang.php b/niucloud/config/lang.php new file mode 100644 index 0000000..24fb387 --- /dev/null +++ b/niucloud/config/lang.php @@ -0,0 +1,27 @@ + env('lang.default_lang', 'zh-cn'), + // 允许的语言列表 + 'allow_lang_list' => ['zh-cn', 'en'], + // 多语言自动侦测变量名 + 'detect_var' => 'lang', + // 是否使用Cookie记录 + 'use_cookie' => false, + // 多语言cookie变量 + 'cookie_var' => 'lang', + // 多语言header变量 + 'header_var' => 'lang', + 'extend_list' => [ + ], + // Accept-Language转义为对应语言包名称 + 'accept_language' => [ + 'zh-hans-cn' => 'zh-cn', + ], + // 是否支持语言分组 + 'allow_group' => true, +]; diff --git a/niucloud/config/log.php b/niucloud/config/log.php new file mode 100644 index 0000000..ea24ff9 --- /dev/null +++ b/niucloud/config/log.php @@ -0,0 +1,45 @@ + env('log.channel', 'file'), + // 日志记录级别 + 'level' => [], + // 日志类型记录的通道 ['error'=>'email',...] + 'type_channel' => [], + // 关闭全局日志写入 + 'close' => false, + // 全局日志处理 支持闭包 + 'processor' => null, + + // 日志通道列表 + 'channels' => [ + 'file' => [ + // 日志记录方式 + 'type' => 'File', + // 日志保存目录 + 'path' => '', + // 单文件日志写入 + 'single' => false, + // 独立日志级别 + 'apart_level' => [], + // 最大日志文件数量 + 'max_files' => 0, + // 使用JSON格式记录 + 'json' => false, + // 日志处理 + 'processor' => null, + // 关闭通道日志写入 + 'close' => false, + // 日志输出格式化 + 'format' => '[%s][%s] %s', + // 是否实时写入 + 'realtime_write' => false, + ], + // 其它日志通道配置 + ], + +]; diff --git a/niucloud/config/middleware.php b/niucloud/config/middleware.php new file mode 100644 index 0000000..7e1972f --- /dev/null +++ b/niucloud/config/middleware.php @@ -0,0 +1,8 @@ + [], + // 优先级设置,此数组中的中间件会按照数组中的顺序优先执行 + 'priority' => [], +]; diff --git a/niucloud/config/niucloud.php b/niucloud/config/niucloud.php new file mode 100644 index 0000000..b811532 --- /dev/null +++ b/niucloud/config/niucloud.php @@ -0,0 +1,16 @@ + [ + 'code' => env('niucloud.code', ''),//授权码 + 'secret' => env('niucloud.secret', ''),//授权秘钥 + ], + 'http' => [ + 'max_retries' => 1,// 重试次数,默认 1,指定当 http 请求失败时重试的次数。 + 'retry_delay' => 500,//重试延迟间隔(单位:ms),默认 500 + 'timeout' => 5.0,//最大运行时间(超时) + 'verify' => false,//请求时验证SSL证书行为。设置成 true 启用SSL证书验证,默认使用操作系统提供的CA包。设置成 false 禁用证书验证(这是不安全的!)。设置成字符串启用验证,并使用该字符串作为自定义证书CA包的路径。 + ], + 'response_type' => 'array', + +]; diff --git a/niucloud/config/oauth.php b/niucloud/config/oauth.php new file mode 100644 index 0000000..3b268d4 --- /dev/null +++ b/niucloud/config/oauth.php @@ -0,0 +1,26 @@ + 'wechat', + //驱动厂商列表及参数-第三方授权 + 'drivers' => [ + //微信公众号 + 'wechat' => [ + + ], + //微信小程序 + 'weapp' => [ + + ] + ] +]; diff --git a/niucloud/config/pay.php b/niucloud/config/pay.php new file mode 100644 index 0000000..0a26463 --- /dev/null +++ b/niucloud/config/pay.php @@ -0,0 +1,29 @@ + 'wechatpay', + //驱动 + 'drivers' => [ + //微信 + 'wechatpay' => [], + //支付宝 + 'alipay' => [], + //余额 + 'balancepay' => [ + 'driver' => 'app\service\core\paytype\CoreBalanceService', //反射类的名字 + ], + 'offlinepay' => [ + 'driver' => 'app\service\core\paytype\CoreOfflineService' + ] + ] +]; diff --git a/niucloud/config/queue.php b/niucloud/config/queue.php new file mode 100644 index 0000000..0e82f31 --- /dev/null +++ b/niucloud/config/queue.php @@ -0,0 +1,53 @@ + +// +---------------------------------------------------------------------- + +return [ + 'default' => 'database', + 'connections' => [ + 'sync' => [ + 'type' => 'sync', + ], + 'database' => [ + 'type' => 'database', + 'queue' => 'default', + 'table' => 'jobs', + 'connection' => null, + ], + 'redis' => [ + // 驱动方式 + 'type' => 'redis', + + 'queue' => 'default', + // 服务器地址 + 'host' => env('redis.redis_hostname', '127.0.0.1'), + // 端口 + 'port' => env('redis.port', '6379'), + // 密码 + 'password' => env('redis.redis_password', ''), + // 缓存有效期 0表示永久缓存 + 'expire' => 0 , + // 缓存前缀 + 'prefix' => 'QUERY', + // 缓存标签前缀 + 'tag_prefix' => 'QUERY:', + // 数据库 0号数据库 + 'select' => env('redis.select', 0), + // 服务端主动关闭 + 'timeout' => 0, + + 'persistent' => false, + ], + ], + 'failed' => [ + 'type' => 'none',// none 不记录失败任务 database 将失败任务迁移到失败任务表 + 'table' => 'jobs_failed', + ], +]; diff --git a/niucloud/config/route.php b/niucloud/config/route.php new file mode 100644 index 0000000..2f4cd12 --- /dev/null +++ b/niucloud/config/route.php @@ -0,0 +1,45 @@ + '/', + // URL伪静态后缀 + 'url_html_suffix' => 'html', + // URL普通方式参数 用于自动生成 + 'url_common_param' => true, + // 是否开启路由延迟解析 + 'url_lazy_route' => false, + // 是否强制使用路由 + 'url_route_must' => false, + // 合并路由规则 + 'route_rule_merge' => false, + // 路由是否完全匹配 + 'route_complete_match' => false, + // 访问控制器层名称 + 'controller_layer' => 'controller', + // 空控制器名 + 'empty_controller' => 'Error', + // 是否使用控制器后缀 + 'controller_suffix' => false, + // 默认的路由变量规则 + 'default_route_pattern' => '[\w\.]+', + // 是否开启请求缓存 true自动缓存 支持设置请求缓存规则 + 'request_cache_key' => false, + // 请求缓存有效期 + 'request_cache_expire' => null, + // 全局请求缓存排除规则 + 'request_cache_except' => [], + // 默认控制器名 + 'default_controller' => 'Index', + // 默认操作名 + 'default_action' => 'index', + // 操作方法后缀 + 'action_suffix' => '', + // 默认JSONP格式返回的处理方法 + 'default_jsonp_handler' => 'jsonpReturn', + // 默认JSONP处理方法 + 'var_jsonp_handler' => 'callback', +]; diff --git a/niucloud/config/session.php b/niucloud/config/session.php new file mode 100644 index 0000000..c1ef6e1 --- /dev/null +++ b/niucloud/config/session.php @@ -0,0 +1,19 @@ + 'PHPSESSID', + // SESSION_ID的提交变量,解决flash上传跨域 + 'var_session_id' => '', + // 驱动方式 支持file cache + 'type' => 'file', + // 存储连接标识 当type使用cache的时候有效 + 'store' => null, + // 过期时间 + 'expire' => 1440, + // 前缀 + 'prefix' => '', +]; diff --git a/niucloud/config/sms.php b/niucloud/config/sms.php new file mode 100644 index 0000000..68c4efd --- /dev/null +++ b/niucloud/config/sms.php @@ -0,0 +1,32 @@ + 'aliyun', + //驱动厂商列表及参数-短信 + 'drivers' => [ + //阿里云 + 'aliyun' => [ + 'driver' => 'core\sms\Aliyun', //反射类的名字 + 'app_key' => '', + 'secret_key' => '', + 'sign' => '', + ], + //腾讯云 + 'tencent' => [ + 'secret_id' => '', + 'secret_key' => '', + 'sign' => '', + 'app_id' => '', + ] + ] +]; diff --git a/niucloud/config/terminal.php b/niucloud/config/terminal.php new file mode 100644 index 0000000..77b6fdb --- /dev/null +++ b/niucloud/config/terminal.php @@ -0,0 +1,44 @@ + [ + + // 查看版本的命令 + 'version' => [ + 'npm' => 'npm -v', + 'node' => 'node -v', + ], + 'npm-admin' => [ + 'cwd' => 'admin', + 'command' => 'npm install', + ], + + 'npm-web' => [ + 'cwd' => 'web', + 'command' => 'npm install', + ], + + 'npm-uni-app' => [ + 'cwd' => 'uni-app', + 'command' => 'npm install', + ], + + 'composer-install' => [ + 'cwd' => 'niucloud', + 'command' => 'composer update', + ], + // 切换到国内镜像 + 'set-mirror' => [ + //切换到淘宝镜像 + 'npm' => 'npm config set registry https://registry.npmjs.org', + //切换到阿里云镜像 + 'composer' => 'composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/', + ], + ], +]; + diff --git a/niucloud/config/trace.php b/niucloud/config/trace.php new file mode 100644 index 0000000..0b2ee6d --- /dev/null +++ b/niucloud/config/trace.php @@ -0,0 +1,10 @@ + env('app_trace_type', 'Html'), + // 读取的日志通道名 + 'channel' => '', +]; diff --git a/niucloud/config/upload.php b/niucloud/config/upload.php new file mode 100644 index 0000000..a23827a --- /dev/null +++ b/niucloud/config/upload.php @@ -0,0 +1,86 @@ + 'local',//默认驱动 + 'drivers' => [ + //本地上传 + 'local' => [], + //七牛云 + 'qiniu' => [ + 'access_key' => '', + 'secret_key' => '', + 'bucket' => '' + ], + //阿里云 + 'aliyun' => [ + 'access_key' => '', + 'secret_key' => '', + 'endpoint' => '', + 'bucket' => '' + ], + //腾讯云 + 'tencent' => [ + 'access_key' => '', + 'secret_key' => '', + 'region' => '', + 'bucket' => '' + ], + ], + // 默认规则 + 'rules' => [ + 'image' => [ + 'ext' => ['jpg', 'jpeg', 'webp', 'png', 'gif'], + 'mime' => ['image/jpeg', 'image/gif', 'image/png', 'image/webp'], + 'size' => 2097152 + ], + 'video' => [ + 'ext' => ['mp4'], + 'mime' => ['video/mp4'], + 'size' => 2097152 + ], + 'wechat' => [ + 'ext' => ['pem', 'key'], + 'mime' => [ + 'application/x-x509-ca-cert', + 'application/octet-stream', + 'application/x-iwork-keynote-sffkey' + ], + 'size' => 2097152 + ], + 'aliyun' => [ + 'ext' => ['crt'], + 'mime' => [ + 'application/x-x509-ca-cert', + 'application/octet-stream' + ], + 'size' => 2097152 + ], + 'applet' => [ + 'ext' => ['zip', 'rar'], + 'mime' => [ + 'application/zip', + 'application/vnd.rar', + 'application/x-zip-compressed' + ], + 'size' => 2097152 + ] + ], + 'thumb' => [ + 'thumb_type' => [ + 'big' => [ + 'width' => 800, + 'height' => 800, + ], + 'mid' => [ + 'width' => 400, + 'height' => 400, + ], + 'small' => [ + 'width' => 200, + 'height' => 200, + ], + ] + + + ] +]; diff --git a/niucloud/config/version.php b/niucloud/config/version.php new file mode 100644 index 0000000..76fedd2 --- /dev/null +++ b/niucloud/config/version.php @@ -0,0 +1,6 @@ + '0.1.0', + 'code' => '202401310001' +]; diff --git a/niucloud/config/view.php b/niucloud/config/view.php new file mode 100644 index 0000000..5f39a1d --- /dev/null +++ b/niucloud/config/view.php @@ -0,0 +1,31 @@ + 'Think', + // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 3 保持操作方法 + 'auto_rule' => 1, + // 模板目录名 + 'view_dir_name' => 'view', + // 模板后缀 + 'view_suffix' => 'html', + // 模板文件名分隔符 + 'view_depr' => DIRECTORY_SEPARATOR, + // 模板引擎普通标签开始标记 + 'tpl_begin' => '{', + // 模板引擎普通标签结束标记 + 'tpl_end' => '}', + // 标签库标签开始标记 + 'taglib_begin' => '{', + // 标签库标签结束标记 + 'taglib_end' => '}', + 'tpl_cache' => false, //模板缓存,部署模式后改为true + 'tpl_replace_string' => [ + 'INSTALL_IMG' => '/install/img', + 'INSTALL_CSS' => '/install/css', + 'INSTALL_JS' => '/install/js', + ] +]; diff --git a/niucloud/core/base/BaseAdminController.php b/niucloud/core/base/BaseAdminController.php new file mode 100644 index 0000000..575f96a --- /dev/null +++ b/niucloud/core/base/BaseAdminController.php @@ -0,0 +1,29 @@ +app_type = $this->request->appType(); + $this->site_id = $this->request->siteId(); + $this->username = $this->request->username(); + $this->uid = $this->request->uid(); + } +} \ No newline at end of file diff --git a/niucloud/core/base/BaseApiController.php b/niucloud/core/base/BaseApiController.php new file mode 100644 index 0000000..882ae94 --- /dev/null +++ b/niucloud/core/base/BaseApiController.php @@ -0,0 +1,29 @@ +site_id = $this->request->siteId(); + $this->member_id = $this->request->memberId(); + $this->channel = $this->request->getChannel(); + } +} \ No newline at end of file diff --git a/niucloud/core/base/BaseController.php b/niucloud/core/base/BaseController.php new file mode 100644 index 0000000..793b992 --- /dev/null +++ b/niucloud/core/base/BaseController.php @@ -0,0 +1,96 @@ +app = $app; + $this->request = $this->app->request; + // 控制器初始化 + $this->initialize(); + } + + // 初始化 + protected function initialize() + { + } + + /** + * 验证数据 + * @access protected + * @param array $data 数据 + * @param string|array $validate 验证器名或者验证规则数组 + * @param array $message 提示信息 + * @param bool $batch 是否批量验证 + * @return array|string|true + * @throws ValidateException + */ + protected function validate(array $data, $validate, array $message = [], bool $batch = false) + { + if (is_array($validate)) { + $v = new Validate(); + $v->rule($validate); + } else { + if (strpos($validate, '.')) { + // 支持场景 + [$validate, $scene] = explode('.', $validate); + } + $class = str_contains($validate, '\\') ? $validate : $this->app->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); + } + + +} diff --git a/niucloud/core/base/BaseCoreService.php b/niucloud/core/base/BaseCoreService.php new file mode 100644 index 0000000..eeac173 --- /dev/null +++ b/niucloud/core/base/BaseCoreService.php @@ -0,0 +1,27 @@ +fire(...$arguments); + } + + + /** + * 消费任务 + * @param Job $job + * @param $params + */ + public function fire(Job $job, $params): void + { + try { + $action = $params['do'] ?? 'doJob';//任务名 + $data = $params['data'] ?? [];//数据 + $error_count = $params['error_count'] ?? 0;//执行任务错误的最大重试次数 + $this->runJob($action, $job, $data, $error_count); + } catch ( Throwable $e ) { + $job->delete(); + } + } + + + /** + * 执行任务 + * @param string $action + * @param Job $job + * @param array $data + * @param int $error_count + */ + protected function runJob(string $action, Job $job, array $data, int $error_count = 3) + { + $action = method_exists($this, $action) ? $action : 'handle'; + if (!method_exists($this, $action)) { + $job->delete(); + } + if ($this->{$action}(...$data)) { + //删除任务 + $job->delete(); + } else { + if ($job->attempts() >= $error_count && $error_count) { + //删除任务 + $job->delete(); + } else { + //重发任务 + $job->release(); + } + } + } + +} diff --git a/niucloud/core/base/BaseModel.php b/niucloud/core/base/BaseModel.php new file mode 100644 index 0000000..03e25f0 --- /dev/null +++ b/niucloud/core/base/BaseModel.php @@ -0,0 +1,38 @@ +getTable(); + $sql = 'SHOW TABLE STATUS WHERE 1=1 '; + $tablePrefix = config('database.connections.mysql.prefix'); + if (!empty($table_name)) { + $sql .= "AND name='" .$table_name."'"; + } + $tables = Db::query($sql); + $table_info = $tables[0] ?? []; + $table_name = str_replace($tablePrefix, '', $table_info['Name']); + return Db::name($table_name)->getFields(); + } +} diff --git a/niucloud/core/base/BaseService.php b/niucloud/core/base/BaseService.php new file mode 100644 index 0000000..5f08cce --- /dev/null +++ b/niucloud/core/base/BaseService.php @@ -0,0 +1,135 @@ +request = request(); + } + + /** + * 分页列表参数(页码和每页多少条) + * @return mixed + */ + public function getPageParam() + { + + $page = request()->params([ + ['page', 1], + ['limit', 15] + ]); + validate(Page::class) + ->check($page); + return $page; + } + + /** + * 分页列表 + * @param Model $model + * @param array $where + * @param string $field + * @param string $order + * @param array $append + * @return array + * @throws DbException + */ + public function getPageList(Model $model, array $where, string $field = '*', string $order = '', array $append = [], $with = null, $each = null) + { + $page_params = $this->getPageParam(); + $page = $page_params['page']; + $limit = $page_params['limit']; + + $list = $model->where($where)->when($append, function ($query) use ($append) { + $query->append($append); + })->when($with, function ($query) use ($with) { + $query->with($with); + })->field($field)->order($order)->paginate([ + 'list_rows' => $limit, + 'page' => $page, + ]); + if (!empty($each)) { + $list = $list->each($each); + } + return $list->toArray(); + } + + /** + * 分页数据查询,传入model(查询后结果) + * @param $model BaseModel + * @return array + * @throws DbException + */ + public function pageQuery($model, $each = null) + { + $page_params = $this->getPageParam(); + $page = $page_params['page']; + $limit = $page_params['limit']; + $list = $model->paginate([ + 'list_rows' => $limit, + 'page' => $page, + ]); + if (!empty($each)) { + $list = $list->each($each); + } + return $list->toArray(); + } + + /** + * 分页视图列表查询 + * @param Model $model + * @param array $where + * @param string $field + * @param string $order + * @param array $append + * @return array + * @throws DbException + */ + public function getPageViewList(Model $model, array $where, string $field = '*', string $order = '', array $append = [], $with = null, $each = null) + { + $page_params = $this->getPageParam(); + $page = $page_params['page']; + $limit = $page_params['limit']; + + $list = $model->where($where)->when($append, function ($query) use ($append) { + $query->append($append); + })->when($with, function ($query) use ($with) { + $query->withJoin($with); + })->field($field)->order($order)->paginate([ + 'list_rows' => $limit, + 'page' => $page, + ]); + if (!empty($each)) { + $list = $list->each($each); + } + return $list->toArray(); + } + +} \ No newline at end of file diff --git a/niucloud/core/base/BaseValidate.php b/niucloud/core/base/BaseValidate.php new file mode 100644 index 0000000..34a2b0a --- /dev/null +++ b/niucloud/core/base/BaseValidate.php @@ -0,0 +1,46 @@ +parseMsg(); + } + + public function parseMsg(){ + if(!empty($this->message)) + { + foreach ($this->message as $key => $value) + { + if(is_array($value)) + { + $this->message[$key] = get_lang($value[0], $value[1]); + } + } + } + + } + +} diff --git a/niucloud/core/dict/BaseDict.php b/niucloud/core/dict/BaseDict.php new file mode 100644 index 0000000..4b6b65a --- /dev/null +++ b/niucloud/core/dict/BaseDict.php @@ -0,0 +1,176 @@ +header(); + $admin_site_id_name = system_name('admin_site_id_name'); + $api_site_id_name = system_name('admin_site_id_name'); + $site_id = $headers[$admin_site_id_name] ?? $headers[$api_site_id_name] ?? 0; + + if ($site_id) { + $addons = Cache::get("local_install_addons_{$site_id}"); + if (!is_null($addons)) return $addons; + + $prefix = config('database.connections.mysql.prefix'); + $site = Db::name('site')->alias('s')->join(["{$prefix}site_group" => 'sg'], 's.group_id = sg.group_id') + ->where([['s.site_id', '=', $site_id]]) + ->field('s.app,s.addons,sg.app as site_group_app,sg.addon as site_group_addon')->find(); + + $addons = array_unique(array_merge( + (empty($site['app']) ? [] : json_decode($site['app'], true)), + (empty($site['addons']) ? [] : json_decode($site['addons'], true)), + (empty($site['site_group_app']) ? [] : json_decode($site['site_group_app'], true)), + (empty($site['site_group_addon']) ? [] : json_decode($site['site_group_addon'], true)) + )); + + Cache::tag(CoreSiteService::$cache_tag_name . $site_id)->set("local_install_addons_{$site_id}", $addons); + } else { + $addons = Cache::get("local_install_addons"); + if (!is_null($addons)) return $addons; + + $addons = Db::name("addon")->column("key"); + Cache::tag(CoreAddonBaseService::$cache_tag_name)->set("local_install_addons", $addons); + } + + return $addons; + } + + /** + * 获取插件目录 + * @param string $addon + * @return string + */ + protected function getAddonPath(string $addon) + { + return root_path() . 'addon' . DIRECTORY_SEPARATOR . $addon . DIRECTORY_SEPARATOR; + + } + + /** + * 获取系统整体app目录 + * @return string + */ + protected function getAppPath() + { + return root_path() . "app" . DIRECTORY_SEPARATOR; + } + + /** + * 获取插件对应app目录 + * @param string $addon + * @return string + */ + protected function getAddonAppPath(string $addon) + { + return $this->getAddonPath($addon) . "app" . DIRECTORY_SEPARATOR; + } + + /** + *获取系统dict path + */ + protected function getDictPath() + { + return root_path() . 'app' . DIRECTORY_SEPARATOR . 'dict' . DIRECTORY_SEPARATOR; + } + + /** + *获取插件对应的dict目录 + * @param string $addon + * @return string + */ + protected function getAddonDictPath(string $addon) + { + return $this->getAddonPath($addon) . 'app' . DIRECTORY_SEPARATOR . 'dict' . DIRECTORY_SEPARATOR; + } + + /** + *获取插件对应的config目录 + * @param string $addon + * @return string + */ + protected function getAddonConfigPath(string $addon) + { + return $this->getAddonPath($addon) . 'config' . DIRECTORY_SEPARATOR; + } + + /** + * 加载文件数据 + * @param $files + * @return array + */ + protected function loadFiles($files) + { + $default_sort = 100000; + $files_data = []; + if (!empty($files)) { + foreach ($files as $file) { + $config = include $file; + if (!empty($config)) { + if (isset($config['file_sort'])) { + $sort = $config['file_sort']; + unset($config['file_sort']); + $sort = $sort * 10; + while (array_key_exists($sort, $files_data)) { + $sort++; + } + $files_data[$sort] = $config; + } else { + $files_data[$default_sort] = $config; + $default_sort++; + } + } + } + } + ksort($files_data); + return $files_data; + } + + /** + * 加载 + * @return mixed + */ + abstract public function load(array $data); +} diff --git a/niucloud/core/dict/DictLoader.php b/niucloud/core/dict/DictLoader.php new file mode 100644 index 0000000..229bd11 --- /dev/null +++ b/niucloud/core/dict/DictLoader.php @@ -0,0 +1,41 @@ +getLocalAddons(); + $event_files = []; + + foreach ($addons as $v) { + $event_path = $this->getAddonAppPath($v) . "event.php"; + if (is_file($event_path)) { + $event_files[] = $event_path; + } + } + $files_data = $this->loadFiles($event_files); + + $files_data[1] = $data; + + $events = []; + foreach ($files_data as $file_data) { + $events = empty($events) ? $file_data : array_merge2($events, $file_data); + } + return $events; + } +} diff --git a/niucloud/core/dict/Icon.php b/niucloud/core/dict/Icon.php new file mode 100644 index 0000000..704facb --- /dev/null +++ b/niucloud/core/dict/Icon.php @@ -0,0 +1,50 @@ +getRootPath()) . str_replace('/', DIRECTORY_SEPARATOR, '/admin/src/styles/icon'); + $file_arr = getFileMap($sys_path); + $icon_arr = []; + if (!empty($file_arr)) { + foreach ($file_arr as $ck => $cv) { + if (str_contains($cv, '.json')) { + $json_string = file_get_contents($ck); + $icon = json_decode($json_string, true, 512, JSON_THROW_ON_ERROR); + $icon_arr[] = $icon; + } + } + } + + if (count($icon_arr) > 1) { + $last_icon = array_pop($icon_arr); // 最后一个 + $first_icon = array_shift($icon_arr); // 第一个 + + array_unshift($icon_arr, $last_icon); // 将系统图标放到第一位置 + $icon_arr[] = $first_icon; // 交换位置 + } + + return $icon_arr; + } +} \ No newline at end of file diff --git a/niucloud/core/dict/Lang.php b/niucloud/core/dict/Lang.php new file mode 100644 index 0000000..ba91d4b --- /dev/null +++ b/niucloud/core/dict/Lang.php @@ -0,0 +1,56 @@ +getLocalAddons(); + $system_lang_path = $this->getAppPath() . "lang" . DIRECTORY_SEPARATOR . $data['lang_type'] . DIRECTORY_SEPARATOR; + $lang_files = [ + $system_lang_path . "api.php", + $system_lang_path . "dict.php", + $system_lang_path . "validate.php", + ]; + + + foreach ($addons as $v) { + $lang_path = $this->getAddonAppPath($v) . "lang" . DIRECTORY_SEPARATOR . $data['lang_type'] . DIRECTORY_SEPARATOR; + + $api_path = $lang_path . "api.php"; + $dict_path = $lang_path . "dict.php"; + $validate_path = $lang_path . "validate.php"; + if (is_file($api_path)) { + $lang_files[] = $api_path; + + } + if (is_file($dict_path)) { + $lang_files[] = $dict_path; + } + if (is_file($validate_path)) { + $lang_files[] = $validate_path; + } + } + $files_data = $this->loadFiles($lang_files); + $lang = []; + foreach ($files_data as $file_data) { + $lang = empty($lang) ? $file_data : array_merge2($lang, $file_data); + } + return $lang; + } +} \ No newline at end of file diff --git a/niucloud/core/dict/MemberAccountChangeType.php b/niucloud/core/dict/MemberAccountChangeType.php new file mode 100644 index 0000000..b95d1e8 --- /dev/null +++ b/niucloud/core/dict/MemberAccountChangeType.php @@ -0,0 +1,46 @@ +getLocalAddons(); + $account_change_type_files = []; + $system_change_type_file = $this->getDictPath() . "member" . DIRECTORY_SEPARATOR . "account_change_type.php"; + + + if (is_file($system_change_type_file)) { + $account_change_type_files[] = $system_change_type_file; + } + foreach ($addons as $v) { + $addon_change_type_file = $this->getAddonDictPath($v) . "member" . DIRECTORY_SEPARATOR . "account_change_type.php"; + if (is_file($addon_change_type_file)) { + $account_change_type_files[] = $addon_change_type_file; + } + } + + $account_change_type_datas = $this->loadFiles($account_change_type_files); + + $account_change_type_array = []; + foreach ($account_change_type_datas as $account_change_type_data) { + $account_change_type_array = empty($account_change_type_array) ? $account_change_type_data : array_merge2($account_change_type_array, $account_change_type_data); + } + return $account_change_type_array; + } +} \ No newline at end of file diff --git a/niucloud/core/dict/Menu.php b/niucloud/core/dict/Menu.php new file mode 100644 index 0000000..ef44d51 --- /dev/null +++ b/niucloud/core/dict/Menu.php @@ -0,0 +1,29 @@ +getAddonDictPath($data['addon']) . "menu" . DIRECTORY_SEPARATOR . $data['app_type'] . ".php"; + if (is_file($menu_path)) { + return include $menu_path; + } + return []; + } +} \ No newline at end of file diff --git a/niucloud/core/dict/Notice.php b/niucloud/core/dict/Notice.php new file mode 100644 index 0000000..2b47f67 --- /dev/null +++ b/niucloud/core/dict/Notice.php @@ -0,0 +1,43 @@ +getDictPath() . "notice" . DIRECTORY_SEPARATOR . $data[ 'type' ] . ".php"; + if (is_file($system_path)) { + $template_files[] = $system_path; + } + $addons = $this->getLocalAddons(); + foreach ($addons as $v) { + $template_path = $this->getAddonDictPath($v) . "notice" . DIRECTORY_SEPARATOR . $data[ 'type' ] . ".php"; + if (is_file($template_path)) { + $template_files[] = $template_path; + } + } + $template_files_data = $this->loadFiles($template_files); + + $template_data_array = []; + foreach ($template_files_data as $file_data) { + $template_data_array = empty($template_data_array) ? $file_data : array_merge($template_data_array, $file_data); + } + return $template_data_array; + } +} diff --git a/niucloud/core/dict/Route.php b/niucloud/core/dict/Route.php new file mode 100644 index 0000000..d120dea --- /dev/null +++ b/niucloud/core/dict/Route.php @@ -0,0 +1,33 @@ +getLocalAddons(); + + foreach ($addons as $k => $v) { + $route_path = $this->getAddonAppPath($v) . DIRECTORY_SEPARATOR . $data['app_type'] . DIRECTORY_SEPARATOR . "route" . DIRECTORY_SEPARATOR . "route.php"; + if (is_file($route_path)) { + include $route_path; + } + } + return true; + } +} \ No newline at end of file diff --git a/niucloud/core/dict/Schedule.php b/niucloud/core/dict/Schedule.php new file mode 100644 index 0000000..23bae14 --- /dev/null +++ b/niucloud/core/dict/Schedule.php @@ -0,0 +1,60 @@ +getDictPath() . 'schedule' . DIRECTORY_SEPARATOR . 'schedule.php'; + if (is_file($system_path)) { + $schedule_files[] = $system_path; + } + $addons = $this->getLocalAddons(); + foreach ($addons as $v) { + $addon_path = $this->getAddonDictPath($v) . 'schedule' . DIRECTORY_SEPARATOR . 'schedule.php'; + if (is_file($addon_path)) { + $schedule_files[] = $addon_path; + } + } + } else { + $schedule_files = []; + if ($addon == 'system') { + $system_path = $this->getDictPath() . 'schedule' . DIRECTORY_SEPARATOR . 'schedule.php'; + if (is_file($system_path)) { + $schedule_files[] = $system_path; + } + } else { + $addon_path = $this->getAddonDictPath($addon) . 'schedule' . DIRECTORY_SEPARATOR . 'schedule.php'; + if (is_file($addon_path)) { + $schedule_files[] = $addon_path; + } + } + + } + $schedule_files_data = $this->loadFiles($schedule_files); + $schedule_data_array = []; + foreach ($schedule_files_data as $file_data) { + $schedule_data_array = empty($schedule_data_array) ? $file_data : array_merge($schedule_data_array, $file_data); + } + return $schedule_data_array; + + } +} \ No newline at end of file diff --git a/niucloud/core/dict/UniappComponent.php b/niucloud/core/dict/UniappComponent.php new file mode 100644 index 0000000..2ad9233 --- /dev/null +++ b/niucloud/core/dict/UniappComponent.php @@ -0,0 +1,38 @@ +getLocalAddons(); + $components_files = []; + foreach ($addons as $v) { + $components_path = $this->getAddonDictPath($v) . "diy" . DIRECTORY_SEPARATOR . "components.php"; + if (is_file($components_path)) { + $components_files[] = $components_path; + } + } + $components_files_data = $this->loadFiles($components_files); + $components = $data; + foreach ($components_files_data as $file_data) { + $components = empty($components) ? $file_data : array_merge2($components, $file_data); + } + return $components; + } +} diff --git a/niucloud/core/dict/UniappLink.php b/niucloud/core/dict/UniappLink.php new file mode 100644 index 0000000..6b6dc12 --- /dev/null +++ b/niucloud/core/dict/UniappLink.php @@ -0,0 +1,76 @@ +getLocalAddons(); + } + + $link_files = []; + + foreach ($addons as $v) { + $link_path = $this->getAddonDictPath($v) . "diy" . DIRECTORY_SEPARATOR . "links.php"; + if (is_file($link_path)) { + $link_files[ $v ] = $link_path; + } + } + + $addon_service = new AddonService(); + $addon_info_list = $addon_service->getAddonListByKeys(array_keys($link_files)); + + if (!empty($params[ 'query' ]) && $params[ 'query' ] == 'addon') { + $list_key = array_column($addon_info_list, 'key'); + $addon_info_list = array_combine($list_key, $addon_info_list); + return $addon_info_list; + } else { + + $links = $data; + + foreach ($link_files as $k => $v) { + $addon_link = include $v; + if (!empty($addon_link)) { + $addon_info = []; + foreach ($addon_info_list as $ck => $cv) { + if ($cv[ 'key' ] == $k) { + $addon_info = $cv; + break; + } + } + + foreach ($addon_link as $ck => $cv) { + $addon_link[ $ck ][ 'addon_info' ] = $addon_info; + } + $links = array_merge($links, $addon_link); + } + } + + return $links; + } + } +} diff --git a/niucloud/core/dict/UniappPages.php b/niucloud/core/dict/UniappPages.php new file mode 100644 index 0000000..8f2843e --- /dev/null +++ b/niucloud/core/dict/UniappPages.php @@ -0,0 +1,52 @@ +getLocalAddons(); + } + + $page_files = []; + foreach ($addons as $v) { + $page_path = $this->getAddonDictPath($v) . "diy" . DIRECTORY_SEPARATOR . "pages.php"; + if (is_file($page_path)) { + $page_files[] = $page_path; + } + } + $page_files_data = $this->loadFiles($page_files); + if (!empty($data[ 'addon' ])) { + $pages = []; + } else { + $pages = $data; + } + foreach ($page_files_data as $file_data) { + if (empty($pages)) { + $pages = $file_data; + } else { + $pages = array_merge2($pages, $file_data); + } + } + return $pages; + } +} diff --git a/niucloud/core/dict/UniappTemplate.php b/niucloud/core/dict/UniappTemplate.php new file mode 100644 index 0000000..1a2fd3c --- /dev/null +++ b/niucloud/core/dict/UniappTemplate.php @@ -0,0 +1,96 @@ +getLocalAddons(); + } + + $app_keys = []; // 应用插件key集合 + $apps = []; // 应用插件集合 + $page_files = []; // 模板页面文件集合 + + // 筛选插件 + if (!empty($params) && !empty($params[ 'addon' ])) { + $is_pass = true; + foreach ($addons as $k => $v) { + if ($params[ 'addon' ] == $v) { + $addons = [ $v ]; + $is_pass = false; + break; + } + } + + // 如果没有匹配到,则返回系统的 + if ($is_pass) { + return $data; + } + } + + foreach ($addons as $v) { + $page_path = $this->getAddonDictPath($v) . "diy" . DIRECTORY_SEPARATOR . "template.php"; + if (is_file($page_path)) { + if (!empty($params[ 'query' ]) && $params[ 'query' ] == 'addon') { + $file = include $page_path; + if (!empty($file)) { + $app_keys[] = $v; + $apps[ $v ] = $file; + } + } else { + $page_files[] = $page_path; + } + } + } + + // 查询存在模板页面的应用插件列表 + if (!empty($params[ 'query' ]) && $params[ 'query' ] == 'addon') { + $addon_service = new AddonService(); + $list = $addon_service->getAddonListByKeys($app_keys); + $list_key = array_column($list, 'key'); + $list = array_combine($list_key, $list); + foreach ($list as $k => $v) { + $list[ $k ][ 'list' ] = $apps[ $k ]; + } + return $list; + } else { + // 查询应用插件下的模板页面数据 + $page_files_data = $this->loadFiles($page_files); + if (!empty($params) && !empty($params[ 'addon' ])) { + $pages = []; + } else { + $pages = $data; + } + foreach ($page_files_data as $file_data) { + if (empty($pages)) { + $pages = $file_data; + } else { + $pages = array_merge($pages, $file_data); + } + } + return $pages; + } + } +} diff --git a/niucloud/core/exception/AddonException.php b/niucloud/core/exception/AddonException.php new file mode 100644 index 0000000..f10b154 --- /dev/null +++ b/niucloud/core/exception/AddonException.php @@ -0,0 +1,18 @@ +job($class)->secs($secs); + if (is_array($action)) { + $queue->data(...$action); + } else if (is_string($action)) { + $queue->method($action)->data(...$data); + } + if ($queue_name) { + $queue->setQueueName($queue_name); + } + return $queue->push(); + } else { + $class_name = '\\' . $class; + $res = new $class_name(); + if (is_array($action)) { + return $res->doJob(...$action); + } else { + return $res->$action(...$data); + } + + } + } +} diff --git a/niucloud/core/loader/Loader.php b/niucloud/core/loader/Loader.php new file mode 100644 index 0000000..e3403f6 --- /dev/null +++ b/niucloud/core/loader/Loader.php @@ -0,0 +1,118 @@ +name = $name; + } + $this->config = $config; + } + + /** + * 获取默认驱动 + * @return mixed + */ + abstract protected function getDefault(); + + /** + * 创建实例对象 + * @param string $type + * @return object|DbManager + * @throws Exception + */ + public function create(string $type) + { + $class = $this->getClass($type); + return self::createFacade($class, [ + $this->name, + $this->config, + $this->config_file + ], true); + } + + /** + * 获取类 + * @param string $type + * @return mixed|string + * @throws Exception + */ + public function getClass(string $type) + { + $class = config($this->config_name . '.drivers.' . $type . '.driver'); + if (!empty($class) && class_exists($class)) { + return $class; + } else { + if ($this->namespace || str_contains($type, '\\')) { + $class = str_contains($type, '\\') ? $type : $this->namespace . $type; + if (class_exists($class)) { + return $class; + } else { + $class = str_contains($type, '\\') ? $type : $this->namespace . Str::studly($type); + if (class_exists($class)) { + return $class; + } + } + } + } + throw new Exception("Driver [$type] not supported."); + } + + /** + * 通过装载器获取实例 + * @return object|DbManager + * @throws Exception + */ + public function getLoader() + { + + if (empty($this->class)) { + $this->name = $this->name ?: $this->getDefault(); + if (!$this->name) { + throw new Exception(sprintf( + 'could not find driver [%s].', static::class + )); + } + $this->class = $this->create($this->name); + } + return $this->class; + } + + /** + * 动态调用 + * @param $method + * @param $arguments + * @return mixed + * @throws Exception + */ + public function __call($method, $arguments) + { + return $this->getLoader()->{$method}(...$arguments); + } + +} \ No newline at end of file diff --git a/niucloud/core/loader/Storage.php b/niucloud/core/loader/Storage.php new file mode 100644 index 0000000..50aea02 --- /dev/null +++ b/niucloud/core/loader/Storage.php @@ -0,0 +1,69 @@ +name = $name; + $this->config_file = $config_file; + $this->initialize($config); + } + + /** + * 设置错误信息 + * @param string|null $error + * @return bool + */ + protected function setError(?string $error = null) + { + $this->error = $error; + return false; + } + + /** + * 获取错误信息 + * @return string + */ + public function getError() + { + $error = $this->error; + $this->error = null; + return $error; + } + + /** + * 初始化 + * @param array $config + * @return mixed + */ + abstract protected function initialize(array $config); + +} diff --git a/niucloud/core/oauth/BaseOauth.php b/niucloud/core/oauth/BaseOauth.php new file mode 100644 index 0000000..cea4bc6 --- /dev/null +++ b/niucloud/core/oauth/BaseOauth.php @@ -0,0 +1,43 @@ +site_id)->oauth; + } + + public function oauth(string $code = null, array $options = []) + { +// $this->instance()-> + // TODO: Implement oauth() method. + } +} \ No newline at end of file diff --git a/niucloud/core/pay/Alipay.php b/niucloud/core/pay/Alipay.php new file mode 100644 index 0000000..59229a2 --- /dev/null +++ b/niucloud/core/pay/Alipay.php @@ -0,0 +1,384 @@ +config = $this->payConfig($config, 'alipay'); + Pay::config($this->config); + } + + public function mp(array $params) + { + + } + + /** + * 网页支付 + * @param array $params + * @return array + */ + public function web(array $params) + { + return $this->returnUrl(Pay::alipay()->web([ + 'out_trade_no' => $params['out_trade_no'], + 'total_amount' => $params['money'], + 'subject' => $params['boby'], + '_method' => 'get', + ])); + } + + /** + * 手机网页支付 + * @param array $params + * @return array + */ + public function wap(array $params) + { + return $this->returnUrl(Pay::alipay()->wap([ + 'out_trade_no' => $params['out_trade_no'], + 'total_amount' => $params['money'], + 'subject' => $params['boby'], + 'quit_url' => $params['quit_url'] ?? '',//用户付款中途退出返回商户网站的地址, 一般是商品详情页或购物车页 + '_method' => 'get', + ])); + } + + /** + * app支付 + * @param array $params + * @return array + */ + public function app(array $params) + { + return $this->returnUrl(Pay::alipay()->app([ + 'out_trade_no' => $params['out_trade_no'], + 'total_amount' => $params['money'], + 'subject' => $params['boby'],//用户付款中途退出返回商户网站的地址, 一般是商品详情页或购物车页 + ])); + } + + /** + * 小程序支付 + * @param array $params + * @return Collection + */ + public function mini(array $params) + { + return Pay::alipay()->mini([ + 'out_trade_no' => $params['out_trade_no'], + 'total_amount' => $params['money'], + 'subject' => $params['boby'], + 'buyer_id' => $params['buyer_id'],//买家支付宝用户ID 注:交易的买家与卖家不能相同。 + ]); + } + + /** + * 付款码支付 + * @param array $params + * @return Collection + */ + public function pos(array $params) + { + return Pay::alipay()->pos([ + 'out_trade_no' => $params['out_trade_no'], + 'auth_code' => $params['auth_code'],//付授权码。 当面付场景传买家的付款码(25~30开头的长度为16~24位的数字,实际字符串长度以开发者获取的付款码长度为准)或者刷脸标识串(fp开头的35位字符串)。 + 'total_amount' => $params['money'], + 'subject' => $params['boby'], + ]); + } + + /** + * 扫码支付 + * @param array $params + * @return Collection + */ + public function scan(array $params) + { + return Pay::alipay()->scan([ + 'out_trade_no' => $params['out_trade_no'], + 'total_amount' => $params['money'], + 'subject' => $params['boby'], + ]); + } + + /** + * 转账 + * @param array $params + * @return array + */ + public function transfer(array $params) + { + + $result = $this->returnFormat(Pay::alipay()->transfer([ + 'out_biz_no' => $params['transfer_no'], + 'trans_amount' => $params['money'], + 'product_code' => $params['product_code'] ?: 'TRANS_ACCOUNT_NO_PWD',//业务产品码,单笔无密转账到支付宝账户固定为 : TRANS_ACCOUNT_NO_PWD; 收发现金红包固定为 : STD_RED_PACKET; + 'biz_scene' => $params['scene'] ?: 'DIRECT_TRANSFER',//描述特定的业务场景,可传的参数如下:DIRECT_TRANSFER:单笔无密转账到支付宝,B2C现金红包;PERSONAL_COLLECTION:C2C现金红包-领红包 + 'payee_info' => [//收款方信息 + 'identity' => $params['to_no'],//参与方的唯一标识 + 'identity_type' => $params['to_type'] ?: 'ALIPAY_LOGON_ID',//参与方的标识类型,目前支持如下类型:1、ALIPAY_USER_ID 支付宝的会员ID2、ALIPAY_LOGON_ID:支付宝登录号,支持邮箱和手机号格式3、ALIPAY_OPEN_ID:支付宝openid + 'name' => $params['to_name'],//参与方真实姓名,如果非空,将校验收款支付宝账号姓名一致性。当identity_type=ALIPAY_LOGON_ID时,本字段必填。 + ], + ])); + if (!empty($result['msg']) && $result['msg'] != 'Success') { + throw new PayException($result['sub_msg']); + } else { + $status = $result['status']; + $status_array = array( + 'SUCCESS' => TransferDict::SUCCESS, + 'WAIT_PAY' => TransferDict::WAIT, + 'CLOSED' => TransferDict::FAIL, + 'FAIL' => TransferDict::FAIL + ); + $res = array( + 'status' => $status_array[$status], + ); + if ($status == 'FAIL') { + $res['fail_reason'] = $result['fail_reason']; + } + } + return $res; + } + + /** + * 支付关闭 + * @param string $out_trade_no + * @return bool + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function close(string $out_trade_no) + { + $result = $this->returnFormat(Pay::alipay()->close([ + 'out_trade_no' => $out_trade_no, + ])); + //todo 支付宝关闭异步回调 + if (isset($result['sub_code']) && in_array($result['sub_code'], ['ACQ.REASON_ILLEGAL_STATUS', 'ACQ.REASON_TRADE_STATUS_INVALID', 'ACQ.TRADE_NOT_EXIST', 'ACQ.TRADE_STATUS_ERROR'])) { + return true; + } + if (!empty($result['msg']) && $result['msg'] == 'Success') { + return true; + } else { + return false; + } + } + + /** + * 退款 + * @param array $params + * @return array|false + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function refund(array $params) + { + $out_trade_no = $params['out_trade_no']; + $money = $params['money']; +// $total = $params['total']; + $refund_no = $params['refund_no']; + $result = $this->returnFormat(Pay::alipay()->refund([ + 'out_trade_no' => $out_trade_no, + 'refund_amount' => $money, + 'out_request_no' => $refund_no + ])); + if (!empty($result['msg']) && $result['msg'] == 'Success') { + $fund_change = $result['fund_change'];//退款是否成功可以根据同步响应的 fund_change 参数来判断,fund_change 表示本次退款是否发生了资金变化,返回 Y 表示退款成功,返回 N 则表示本次退款未发生资金变动 。 + if ($fund_change == 'Y') { + $status = RefundDict::SUCCESS; + } else { + $status = RefundDict::DEALING; + } + return [ + 'status' => $status, + 'refund_no' => $refund_no, + 'out_trade_no' => $out_trade_no + ]; + } else { + //todo 这儿可以抛出错误 + return false; + } + } + + + /** + * 支部异步回调 + * @param string $action + * @param callable $callback + * @return ResponseInterface|string + */ + public function notify(string $action, callable $callback) + { + try { + $result = Pay::alipay()->callback(); + //通过返回的值 + if (!empty($result)) {//成功 + if ($action == 'pay') { + //todo 这儿需要具体设计 + $temp_data = array( + 'mchid' => $result['seller_id'], + 'trade_no' => $result['trade_no'], + 'result' => $result, + 'status' => OnlinePayDict::getAliPayStatus($result['trade_status']) + ); + $callback_result = $callback($result['out_trade_no'], $temp_data); + if (is_bool($callback_result) && $callback_result) { + return Pay::alipay()->success(); + } + } + + } + return $this->fail(); + } catch ( Throwable $e ) { + return $this->fail(); + } + + + } + + /** + * 查询普通支付订单 + * @param array $params + * @return array + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getOrder(array $params = []) + { + $out_trade_no = $params['out_trade_no']; + $order = [ + 'out_trade_no' => $out_trade_no, + ]; + $result = $this->returnFormat(Pay::alipay()->find($order)); + if (!empty($result['msg']) && $result['msg'] == 'Success') { + return [ + 'status' => OnlinePayDict::getAliPayStatus($result['trade_status']) + ]; + } else { + if (!empty($result['sub_code']) && $result['sub_code'] == 'ACQ.ACQ.SYSTEM_ERROR') { + throw new PayException($result['msg']); + } else { + return []; + } + } + } + + /** + * 查询退款单据 + * @param string $out_trade_no + * @param string|null $refund_no + * @return array + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getRefund(string $out_trade_no, ?string $refund_no) + { + $order = [ + 'out_trade_no' => $out_trade_no, + 'out_request_no' => $refund_no, + '_type' => 'refund', + ]; + + $result = $this->returnFormat(Pay::alipay()->find($order)); + if (!empty($result['msg']) && $result['msg'] == 'Success') { + $refund_status = $result['refund_status'] ?? ''; + if ($refund_status == 'REFUND_SUCCESS') { + $status = RefundDict::SUCCESS; + } else { + $status = RefundDict::DEALING; + } + return [ + 'status' => $status, + 'refund_no' => $refund_no, + 'out_trade_no' => $out_trade_no + ]; + } else { + if (!empty($result['sub_code']) && $result['sub_code'] == 'ACQ.ACQ.SYSTEM_ERROR') { + throw new PayException($result['msg']); + } else { + return []; + } + } + } + + /** + * 获取转账订单 + * @param string $transfer_no + * @return array + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getTransfer(string $transfer_no) + { + $order = [ + 'out_biz_no' => $transfer_no, + '_type' => 'transfer' + ]; + $result = $this->returnFormat(Pay::alipay()->find($order)); + if (!empty($result['msg']) && $result['msg'] == 'Success') { + $status = $result['SUCCESS'] ?? ''; + $status_array = array( + 'SUCCESS' => TransferDict::SUCCESS, + 'WAIT_PAY' => TransferDict::WAIT, + 'CLOSED' => TransferDict::FAIL, + 'FAIL' => TransferDict::FAIL + ); + return [ + 'status' => $status_array[$status], + 'transfer_no' => $transfer_no + ]; + } else { + if (!empty($result['sub_code']) && $result['sub_code'] == 'ACQ.ACQ.SYSTEM_ERROR') { + throw new PayException($result['msg']); + } else { + return []; + } + } + } + + public function fail() + { + return 'fail'; + } + + public function returnUrl($params) + { + return ['url' => $params->getHeader('Location')[0]]; + } +} diff --git a/niucloud/core/pay/BasePay.php b/niucloud/core/pay/BasePay.php new file mode 100644 index 0000000..1f3c0a6 --- /dev/null +++ b/niucloud/core/pay/BasePay.php @@ -0,0 +1,203 @@ + [ + 'enable' => true, + 'file' => root_path('runtime') . 'paylog' . DIRECTORY_SEPARATOR . date('Ym') . DIRECTORY_SEPARATOR . date('d') . '.log', + 'level' => env('app_debug') ? 'debug' : 'info', // 建议生产环境等级调整为 info,开发环境为 debug + 'type' => 'single', // optional, 可选 daily. + 'max_file' => 30, // optional, 当 type 为 daily 时有效,默认 30 天 + ], + 'http' => [ // optional + 'timeout' => 5.0, + ] + ], + [ + $type => [ + 'default' => $config + ] + ], + ['_force' => true] + ); + } + + public function returnFormat($param) + { + if ($param instanceof MessageInterface) { + $return_value = $param->getBody()->getContents(); + } else if ($param instanceof Collection) { + $return_value = $param->all(); + } else { + $return_value = $param; + } + return $return_value; + } + + /** + * 解析退款返回数据并解析 + * @param $our_trade_no + * @param $refund_no + * @param $status + * @param int $success_time + * @param string $reason + * @return array + */ + public function getRefundData($our_trade_no, $refund_no, $status, $success_time = 0, $reason = '') + { + return [ + 'our_trade_no' => $our_trade_no, + 'refund_no' => $refund_no, + 'status' => $status, + 'success_time' => $success_time, + 'reason' => $reason + ]; + } + + /** + * 获取转账数据并解析 + * @param $transfer_no + * @param $status + * @param $reason + * @return void + */ + public function getTransferData($transfer_no, $status, $reason) + { + + } + + +} diff --git a/niucloud/core/pay/PayLoader.php b/niucloud/core/pay/PayLoader.php new file mode 100644 index 0000000..b0a771c --- /dev/null +++ b/niucloud/core/pay/PayLoader.php @@ -0,0 +1,42 @@ +config = $config; + $config['mch_secret_cert'] = url_to_path($config['mch_secret_cert'] ?? ''); + $config['mch_public_cert_path'] = url_to_path($config['mch_public_cert_path'] ?? ''); + Pay::config($this->payConfig($config, 'wechat')); + } + + + /** + * 公众号支付 + * @param array $params + * @return mixed|Collection + */ + public function mp(array $params) + { + $result = $this->returnFormat(Pay::wechat()->mp([ + 'out_trade_no' => $params['out_trade_no'], + 'description' => $params['boby'], + 'amount' => [ + 'total' => $params['money'], + ], + 'payer' => [ + 'openid' => $params['openid'], + ], + ])); + $code = $result['code'] ?? 0; + if ($code == 0) return $result; + //支付错误抛出 + throw new PayException($result['message']); + } + + + /** + * 手机网页支付 + * @param array $params + * @return mixed + */ + public function wap(array $params) + { + $order = [ + 'out_trade_no' => $params['out_trade_no'], + 'description' => $params['boby'], + 'amount' => [ + 'total' => $params['money'], + ], + 'scene_info' => [ + 'payer_client_ip' => request()->ip(), + 'h5_info' => [ + 'type' => 'Wap', + ] + ], + ]; + //这儿有些特殊, 默认情况下,H5 支付所使用的 appid 是微信公众号的 appid,即配置文件中的 mp_app_id 参数,如果想使用关联的小程序的 appid,则只需要在调用参数中增加 ['_type' => 'mini'] 即可 + if (!empty($order['type'])) { + $order['_type'] = 'mini'; // 注意这一行 + } + return $this->returnFormat(Pay::wechat()->wap($order)); + } + + public function web(array $params) + { + + } + + /** + * app支付 + * @param array $params + * @return mixed|ResponseInterface + */ + public function app(array $params) + { + return $this->returnFormat(Pay::wechat()->app([ + 'out_trade_no' => $params['out_trade_no'], + 'description' => $params['boby'], + 'amount' => [ + 'total' => $params['money'], + ], + ])); + } + + /** + * 小程序支付 + * @param array $params + * @return mixed|ResponseInterface + */ + public function mini(array $params) + { + return $this->returnFormat(Pay::wechat()->mini([ + 'out_trade_no' => $params['out_trade_no'], + 'description' => $params['boby'], + 'amount' => [ + 'total' => $params['money'], + 'currency' => 'CNY',//一般是人民币 + ], + 'payer' => [ + 'openid' => $params['openid'], + ] + ])); + } + + /** + * 付款码支付 + * @param array $params + * @return mixed|Collection + */ + public function pos(array $params) + { + //todo 需要自定义通过plugin来侧载开发 + $app = Factory::payment([ + 'app_id' => $this->config['appid'], //应用id + 'mch_id' => $this->config["mch_id"] ?? '', //商户号 + 'key' => $this->config["pay_v2_signkey"] ?? '', // API 密钥 todo 注意: 是v2密钥 是v2密钥 是v2密钥 + 'response_type' => 'array', + 'log' => [ + 'level' => 'debug', + 'permission' => 0777, + 'file' => 'runtime/log/wechat/easywechat.logs', + ], + 'sandbox' => false, // 设置为 false 或注释则关闭沙箱模式 + ]); + $data = [ + 'body' => $params['boby'], + 'out_trade_no' => $params['out_trade_no'], + 'total_fee' => $params['money'], + 'auth_code' => $params["auth_code"],//传入的付款码 + ]; + $result = $app->base->pay($data);//没有注释路由,调用没有问题 + return $this->returnFormat($result); + } + + /** + * 扫码支付 + * @param array $params + * @return mixed|Collection + */ + public function scan(array $params) + { + return $this->returnFormat(Pay::wechat()->scan([ + 'out_trade_no' => $params['out_trade_no'], + 'description' => $params['boby'], + 'amount' => [ + 'total' => $params['money'], + ], + ])); + } + + /** + * 转账(微信的转账是很多笔的) + * @param array $params + * @return array + */ + public function transfer(array $params) + { + //这儿的批次信息可能是这儿生成的,但依然需要记录 + $order = [ + 'out_batch_no' => time() . '',// + 'batch_name' => $params['remark'], + 'batch_remark' => $params['remark'], + ]; + $transfer_list = $params['transfer_list']; + //单笔转账 + if (empty($transfer_list)) { + $transfer_list = array( + [ + 'transfer_no' => $params['transfer_no'] . '1', + 'money' => (int)$params['money'], + 'remark' => $params['remark'], + 'openid' => $params['to_no'] + ] + ); + } + $total_amount = 0; + $total_num = 0; + + foreach ($transfer_list as $v) { + $item_transfer = [ + 'out_detail_no' => time() . '1', + 'transfer_amount' => (int)$v['money'], + 'transfer_remark' => $v['remark'], + 'openid' => $v['openid'], + ]; + $total_amount += (int)$v['money']; + $total_num++; + if (!empty($v['user_name'])) { + $item_transfer['user_name'] = $v['user_name'];// 明文传参即可,sdk 会自动加密 + } + $order['transfer_detail_list'][] = $item_transfer; + } + $order['total_amount'] = $total_amount; + $order['total_num'] = $total_num; + $result = $this->returnFormat(Pay::wechat()->transfer($order)); + + if (!empty($result['code'])) { +// if($result['code'] == 'PARAM_ERROR'){ +// throw new PayException(); +// }else if($result['code'] == 'INVALID_REQUEST'){ +// throw new PayException(); +// } + if ($result['code'] == 'INVALID_REQUEST') { + throw new PayException(700010); + } + throw new PayException($result['message']); + } + return ['batch_id' => $result['batch_id'], 'out_batch_no' => $result['out_batch_no']]; + } + + /** + * 支付关闭 + * @param string $out_trade_no + * @return void + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function close(string $out_trade_no) + { + $result = Pay::wechat()->close([ + 'out_trade_no' => $out_trade_no, + ]); + return $this->returnFormat($result); + } + + /** + * 退款 + * @param array $params + * @return array + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function refund(array $params) + { + $out_trade_no = $params['out_trade_no']; + $money = $params['money']; + $total = $params['total']; + $refund_no = $params['refund_no']; + $result = Pay::wechat()->refund([ + 'out_trade_no' => $out_trade_no, + 'out_refund_no' => $refund_no, + 'amount' => [ + 'refund' => $money, + 'total' => $total, + 'currency' => 'CNY', + ], + ]); + $result = $this->returnFormat($result); + + $refund_status_array = [ + 'SUCCESS' => RefundDict::SUCCESS, + 'CLOSED' => RefundDict::FAIL, + 'PROCESSING' => RefundDict::DEALING, + 'ABNORMAL' => RefundDict::FAIL, + ]; + return [ + 'status' => $refund_status_array[$result['status']], + 'refund_no' => $refund_no, + 'out_trade_no' => $out_trade_no + ]; + } + + + /** + * 异步回调 + * @param string $action + * @param callable $callback + * @return ResponseInterface|Response + */ + public function notify(string $action, callable $callback) + { + try { + $result = $this->returnFormat(Pay::wechat()->callback()); + if ($action == 'pay') {//支付 + if ($result['event_type'] == 'TRANSACTION.SUCCESS') { + $pay_trade_data = $result['resource']['ciphertext']; + + $temp_params = [ + 'trade_no' => $pay_trade_data['transaction_id'], + 'mch_id' => $pay_trade_data['mchid'], + 'status' => OnlinePayDict::getWechatPayStatus($pay_trade_data['trade_state']) + ]; + + $callback_result = $callback($pay_trade_data['out_trade_no'], $temp_params); + if (is_bool($callback_result) && $callback_result) { + return Pay::wechat()->success(); + } + } + } else if ($action == 'refund') {//退款 + if ($result['event_type'] == 'REFUND.SUCCESS') { + $refund_trade_data = $result['resource']['ciphertext']; + $refund_status_array = [ + 'SUCCESS' => RefundDict::SUCCESS, + 'CLOSED' => RefundDict::FAIL, + 'PROCESSING' => RefundDict::DEALING, + 'ABNORMAL' => RefundDict::FAIL, + ]; + $temp_params = [ + 'trade_no' => $refund_trade_data['transaction_id'], + 'mch_id' => $refund_trade_data['mchid'], + 'refund_no' => $refund_trade_data['out_refund_no'], + 'status' => $refund_status_array[$refund_trade_data['refund_status']], + ]; + + $callback_result = $callback($refund_trade_data['out_trade_no'], $temp_params); + if (is_bool($callback_result) && $callback_result) { + return Pay::wechat()->success(); + } + } + } + return $this->fail(); + + } catch ( Throwable $e ) { +// throw new PayException($e->getMessage()); + return $this->fail($e->getMessage()); + } + } + + /** + * 查询普通支付订单 + * @param array $params + * @return array|MessageInterface|Collection|null + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getOrder(array $params = []) + { + + $out_trade_no = $params['out_trade_no']; + $transaction_id = $params['transaction_id'] ?? ''; + $order = [ + + ]; + if (!empty($out_trade_no)) { + $order['out_trade_no'] = $out_trade_no; + } + if (!empty($transaction_id)) { + $order['transaction_id'] = $transaction_id; + } + $result = Pay::wechat()->find($order); + if (empty($result)) + return $result; + $result = $this->returnFormat($result); + return [ + 'status' => OnlinePayDict::getWechatPayStatus($result['trade_state']), + ]; + } + + /** + * 查询退款单据 + * @param string|null $out_trade_no + * @param string|null $refund_no + * @return array|Collection|MessageInterface|null + * @throws ContainerException + * @throws InvalidParamsException + * @throws ServiceNotFoundException + */ + public function getRefund(?string $out_trade_no, ?string $refund_no = '') + { + $order = [ + '_type' => 'refund', + 'out_refund_no' => $refund_no + ]; + $result = Pay::wechat()->find($order); + if (empty($result)) + return $result; + $result = $this->returnFormat($result); + $refund_status_array = [ + 'SUCCESS' => RefundDict::SUCCESS, + 'CLOSED' => RefundDict::FAIL, + 'PROCESSING' => RefundDict::DEALING, + 'ABNORMAL' => RefundDict::FAIL, + ]; + return [ + 'status' => $refund_status_array[$result['status']], + 'refund_no' => $refund_no, + 'out_trade_no' => $out_trade_no + ]; + } + + /** + * 获取转账订单(todo 切勿调用) + * @param string $transfer_no + * @return array + * @throws ContainerException + * @throws InvalidParamsException + */ + public function getTransfer(string $transfer_no) + { + $params = [ + 'out_batch_no' => $transfer_no, + ]; + $allPlugins = Pay::wechat()->mergeCommonPlugins([QueryOutBatchNoPlugin::class]); + $result = Pay::wechat()->pay($allPlugins, $params); + $result = $this->returnFormat($result); + //微信转账状态 + $transfer_status_array = [ + 'INIT' => TransferDict::DEALING,//初始态。 系统转账校验中 + 'WAIT_PAY' => TransferDict::DEALING, + 'PROCESSING' => TransferDict::DEALING, + 'FAIL' => TransferDict::FAIL, + 'SUCCESS' => TransferDict::SUCCESS, + ]; + return [ + 'status' => $transfer_status_array[$result['status']], + 'transfer_no' => $transfer_no + ]; + } + + + public function fail($message = '') + { + $response = [ + 'code' => 'FAIL', + 'message' => $message ?: '失败', + ]; + return response($response, 400, [], 'json'); + } +} diff --git a/niucloud/core/sms/Aliyun.php b/niucloud/core/sms/Aliyun.php new file mode 100644 index 0000000..7993c44 --- /dev/null +++ b/niucloud/core/sms/Aliyun.php @@ -0,0 +1,98 @@ +app_key = $config['app_key'] ?? ''; + $this->secret_key = $config['secret_key'] ?? ''; + $this->sign = $config['sign'] ?? ''; + } + + + /** + * 发送短信 + * @param string $mobile + * @param string $template_id + * @param array $data + * @return array + */ + public function send(string $mobile, string $template_id, array $data = []) + { + try { + AlibabaCloud::accessKeyClient($this->app_key, $this->secret_key) + ->regionId('cn-hangzhou') + ->asDefaultClient(); + $result = AlibabaCloud::rpcRequest() + ->product('Dysmsapi') + ->host('dysmsapi.aliyuncs.com') + ->version('2017-05-25') + ->action('SendSms') + ->method('POST') + ->debug(false) + ->options([ + 'query' => [ + 'PhoneNumbers' => $mobile, + 'SignName' => $this->sign, + 'TemplateCode' => $template_id, + 'TemplateParam' => json_encode($data, JSON_THROW_ON_ERROR | JSON_UNESCAPED_UNICODE), + ], + ]) + ->request(); + + $res = $result->toArray(); + if (isset($res['Code']) && $res['Code'] == 'OK') { + return $res; + } + $message = $res['Message'] ?? $res; + throw new NoticeException($message); + } catch ( Exception $e ) { + throw new NoticeException($e->getMessage()); + } + } + + public function modify(string $sign = null, string $mobile, string $code) + { + } + + public function template(int $page = 0, int $limit = 10, int $type = 1) + { + } + + public function apply(string $title, string $content, int $type) + { + } + + public function localTemplate(int $type, int $page, int $limit) + { + } + + public function record($id) + { + } +} \ No newline at end of file diff --git a/niucloud/core/sms/BaseSms.php b/niucloud/core/sms/BaseSms.php new file mode 100644 index 0000000..6a4c44f --- /dev/null +++ b/niucloud/core/sms/BaseSms.php @@ -0,0 +1,83 @@ +secret_id = $config['secret_id'] ?? ''; + $this->secret_key = $config['secret_key'] ?? ''; + $this->sign = $config['sign'] ?? ''; + $this->app_id = $config['app_id'] ?? ''; + } + + + /** + * 发送短信 + * @return bool|mixed + */ + public function send(string $mobile, string $template_id, array $data = []) + { + try { + $cred = new Credential($this->secret_id, $this->secret_key); + $httpProfile = new HttpProfile(); + $httpProfile->setEndpoint("sms.tencentcloudapi.com"); + + $clientProfile = new ClientProfile(); + $clientProfile->setHttpProfile($httpProfile); + + $client = new SmsClient($cred, 'ap-guangzhou', $clientProfile); + $params = [ + 'PhoneNumberSet' => ['+86' . $mobile], + 'TemplateID' => $template_id, + 'Sign' => $this->sign, + 'TemplateParamSet' => $data, + 'SmsSdkAppid' => $this->app_id, + ]; + $req = new SendSmsRequest(); + $req->fromJsonString(json_encode($params, JSON_THROW_ON_ERROR)); + $resp = json_decode($client->SendSms($req)->toJsonString(), true, 512, JSON_THROW_ON_ERROR); + if (isset($resp['SendStatusSet']) && $resp['SendStatusSet'][0]['Code'] == 'Ok') { + return $resp; + } else { + $message = $res['SendStatusSet'][0]['Message'] ?? json_encode($resp, JSON_THROW_ON_ERROR); + throw new CommonException($message); + } + } catch ( Exception $e ) { + throw new NoticeException($e->getMessage()); + } + } + + + public function modify(string $sign = null, string $mobile, string $code) + { + } + + public function template(int $page = 0, int $limit = 15, int $type = 1) + { + } + + public function apply(string $title, string $content, int $type) + { + } + + public function localTemplate(int $type, int $page, int $limit) + { + } + + public function record($id) + { + } +} \ No newline at end of file diff --git a/niucloud/core/template/BaseTemplate.php b/niucloud/core/template/BaseTemplate.php new file mode 100644 index 0000000..ac3162c --- /dev/null +++ b/niucloud/core/template/BaseTemplate.php @@ -0,0 +1,60 @@ +site_id = $config['site_id'] ?? ''; + + } + + /** + * 实例化订阅消息业务 + * @return Client + */ + public function template() + { + return CoreWeappService::app($this->site_id)->subscribe_message; + } + + /** + * 消息发送 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidArgumentException + * @throws InvalidConfigException + */ + public function send(array $data) + { + return $this->template()->send([ + 'template_id' => $data['template_id'], + 'touser' => $data['openid'], + 'page' => $data['page'], + 'data' => $data['data'], + ]); + } + + /** + * 添加模板消息 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function addTemplate(array $data) + { + return $this->template()->addTemplate($data['tid'], $data['kid_list'], $data['scene_desc']); + } + + /** + * 删除 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function delete(array $data) + { + return $this->template()->deleteTemplate($data['template_id']); + } + + /** + * 获取 + * @return void + */ + public function get() + { + + } +} \ No newline at end of file diff --git a/niucloud/core/template/Wechat.php b/niucloud/core/template/Wechat.php new file mode 100644 index 0000000..c30af94 --- /dev/null +++ b/niucloud/core/template/Wechat.php @@ -0,0 +1,109 @@ +site_id = $config[ 'site_id' ] ?? ''; + + } + + /** + * 实例化模板消息业务 + * @return Client + */ + public function template() + { + return CoreWechatService::app($this->site_id)->template_message; + } + + /** + * 消息发送 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidArgumentException + * @throws InvalidConfigException + */ + public function send(array $data) + { + $openid = $data[ 'openid' ]; + $template_id = $data[ 'template_id' ]; + $template_data = $data[ 'data' ]; + $first = $data[ 'first' ]; + $remark = $data[ 'remark' ]; + $url = $data[ 'url' ]; + $miniprogram = $data[ 'miniprogram' ]; + + if (!empty($first)) $template_data[ 'first' ] = $first; + if (!empty($remark)) $template_data[ 'remark' ] = $remark; + return $this->template()->send([ + 'touser' => $openid, + 'template_id' => $template_id, + 'url' => $url, + 'miniprogram' => $miniprogram, + 'data' => $template_data, + ]); + } + + /** + * 添加模板消息 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function addTemplate(array $data) + { + return $this->template()->addTemplate($data[ 'shortId' ], $data[ 'keyword_name_list' ]); + } + + /** + * 删除 + * @param array $data + * @return array|Collection|object|ResponseInterface|string + * @throws GuzzleException + * @throws InvalidConfigException + */ + public function delete(array $data) + { + return $this->template()->deletePrivateTemplate($data[ 'templateId' ]); + } + + /** + * 获取 + * @return void + */ + public function get() + { + + } +} \ No newline at end of file diff --git a/niucloud/core/upload/Aliyun.php b/niucloud/core/upload/Aliyun.php new file mode 100644 index 0000000..b4f61a1 --- /dev/null +++ b/niucloud/core/upload/Aliyun.php @@ -0,0 +1,133 @@ +config['access_key']; + $access_key_secret = $this->config['secret_key']; + + $endpoint = $this->config['endpoint'];// yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。 + return new OssClient($access_key_id, $access_key_secret, $endpoint); + } + + /** + * 执行上传 + * @param string $dir + * @return true + */ + public function upload(string $dir) + { + $this->validate(); + $bucket = $this->config['bucket']; + try { + $this->client()->uploadFile( + $bucket, + $this->getFullPath(), + $this->getRealPath() + ); + return true; + } catch ( OssException $e ) { + throw new UploadFileException($e->getMessage()); + } + + } + + /** + * base64上云 + * @param string $base64_data + * @param string|null $key + * @return true + */ + public function base64(string $base64_data, ?string $key = null) + { + $bucket = $this->config['bucket']; + try { + $base64_file = base64_decode($base64_data); + if (!$base64_file) throw new UploadFileException('FILE_ERROE'); + $this->client()->putObject( + $bucket, + $key, + $base64_file + ); + return true; + } catch ( OssException $e ) { + throw new UploadFileException($e->getMessage()); + } + } + /** + * Notes: 抓取远程资源 + * @param string $url + * @param string|null $key + * @return true + */ + public function fetch(string $url, ?string $key = null) + { + $bucket = $this->config['bucket']; + try { + $content = file_get_contents($url); + $this->client()->putObject( + $bucket, + $key, + $content + ); + return true; + } catch ( OssException $e ) { + throw new UploadFileException($e->getMessage()); + } + + } + + /** + * 删除文件 + * @param string $file_name + * @return true + */ + public function delete(string $file_name) + { + $bucket = $this->config['bucket']; + try { + $this->client()->deleteObject($bucket, $file_name); + return true; + } catch ( OssException $e ) { + throw new UploadFileException($e->getMessage()); + } + + } + + public function thumb($file_path, $thumb_type) + { + $thumb_config = config('upload.thumb.thumb_type'); + $thumb_data = []; + foreach ($thumb_config as $k => $v) { + if ($thumb_type == 'all' || $thumb_type == $k || (is_array($thumb_type) && in_array($k, $thumb_type))) { + $width = $v['width']; + $height = $v['height']; + //拼装缩略路径 + $item_thumb = $file_path . '?x-oss-process=image/resize,h_' . $height . ',w_' . $width; + $thumb_data[$k] = $item_thumb; + } + } + + return $thumb_data; + } + +} diff --git a/niucloud/core/upload/BaseUpload.php b/niucloud/core/upload/BaseUpload.php new file mode 100644 index 0000000..9c57b49 --- /dev/null +++ b/niucloud/core/upload/BaseUpload.php @@ -0,0 +1,240 @@ +config = $config; + $this->storage_type = $config['storage_type']; + } + + /** + * 附件上传 + * @param string $dir + * @return mixed + */ + abstract protected function upload(string $dir); + + /** + * 抓取远程附件 + * @param string $url + * @param string|null $key + * @return mixed + */ + abstract protected function fetch(string $url, ?string $key); + + /** + * base64文件上云 + * @param string $base64_data + * @param string|null $key + * @return mixed + */ + abstract protected function base64(string $base64_data, ?string $key = null); + /** + * 附件删除 + * @param string $file_name + * @return mixed + */ + abstract protected function delete(string $file_name); + + /** + * 缩略图 + * @param string $file_path + * @param $thumb_type + * @return mixed + */ + abstract protected function thumb(string $file_path, $thumb_type); + + /** + * 读取文件 + * @param string $name + * @param bool $is_rename + */ + public function read(string $name, bool $is_rename = true) + { + $this->name = $name; + $this->file = request()->file($name); + if (empty($this->file)) + throw new UploadFileException(100012); + $this->file_info = [ + 'name' => $this->file->getOriginalName(),//文件原始名称 + 'mime' => $this->file->getOriginalMime(),//上传文件类型信息 + 'real_path' => $this->file->getRealPath(),//上传文件真实路径 + 'ext' => $this->file->getOriginalExtension(),//上传文件后缀 + 'size' => $this->file->getSize(),//上传文件大小 + ]; + if ($is_rename) { + $this->file_name = $this->createFileName(); + } else { + $this->file_name = $this->file_info['name']; + } + + } + + /** + * 设置文件类型 + * @param string $type + * @return $this + */ + public function setType(string $type) + { + $this->type = $type; + return $this; + } + + /** + * 校验文件是否合法 + */ + public function check() + { + + } + + /** + * 生成新的文件名 + * @return string + */ + public function createFileName(string $key = '', string $ext = '') + { + //DIRECTORY_SEPARATOR 常量 + $storage_tag = '_' . $this->storage_type; + if (empty($key)) { + return time() . md5($this->file_info['real_path']) . $storage_tag . '.' . $this->file_info['ext']; + } else { + return time() . md5($key) . $storage_tag . '.' . $ext; + } + + } + + /** + * 获取原始附件信息 + * @return mixed + */ + public function getFileInfo() + { + return $this->file_info; + } + + /** + * 获取上传文件的真实完整路径 + * @return mixed + */ + public function getRealPath() + { + return $this->file_info['real_path']; + } + + /** + * 获取生成的文件完整地址 + * @return string + */ + public function getFullPath(string $dir = '') + { + return $this->full_path ?: $this->concatFullPath($dir); + } + + /** + * 合并路径和文件名 + * @param string $dir + * @return string + */ + public function concatFullPath(string $dir = '') + { + $this->full_path = implode('/', array_filter([$dir, $this->getFileName()])); + return $this->full_path; + } + + /** + * 获取文件名 + * @return mixed + */ + public function getFileName() + { + return $this->file_name; + } + + public function getUrl(string $path = '') + { + $path = !empty($path) ? $path : $this->getFullPath(); + $domain = $this->config['domain'] ?? ''; + $domain = empty($domain) ? '' : $domain . '/'; + return $domain . $path; + } + + /** + * 验证 + * @param array $validate + * @return $this + */ + public function setValidate(array $validate = []) + { + $this->validate = $validate ?: config('upload.rules')[$this->type] ?? []; + return $this; + } + + /** + * 根据上传文件的类型来校验文件是否符合配置 + * @return void + */ + public function validate() + { + if (empty($this->file)) + throw new UploadFileException('UPLOAD_FAIL'); + $config['file_ext'] = $this->validate['ext'] ?? []; + $config['file_mime'] = $this->validate['mime'] ?? []; + $config['file_size'] = $this->validate['size'] ?? 0; + $rule = []; + $file_size = $config['file_size'] ?? 0; + if ($file_size > 0) { + $rule[] = 'fileSize:' . $file_size; + } + //验证上传文件类型 + $file_mime = $config['file_mime'] ?? []; + $file_ext = $config['file_ext'] ?? []; + if (!empty($file_ext)) { + $rule[] = 'fileExt:' . implode(',', $file_ext); + } + if (!empty($rule)) { + if (!in_array($this->file->getOriginalMime(), $file_mime)) { + throw new UploadFileException('UPLOAD_TYPE_NOT_SUPPORT'); + } + validate([$this->name => implode('|', $rule)])->check([$this->name => $this->file]); + } + + } +} diff --git a/niucloud/core/upload/Local.php b/niucloud/core/upload/Local.php new file mode 100644 index 0000000..4fd2cc1 --- /dev/null +++ b/niucloud/core/upload/Local.php @@ -0,0 +1,217 @@ + 'top-left', + 'top-center' => 'top-center', + 'top-right' => 'top-right', + 'center-left' => 'center-left', + 'center' => 'center', + 'center-right' => 'center-right', + 'bottom-left' => 'bottom-left', + 'bottom-center' => 'bottom-center', + 'bottom-right' => 'bottom-right', + ); + + protected function initialize(array $config = []) + { + parent::initialize($config); + + } + + public function upload(string $dir) + { + $this->validate(); + + mkdirs_or_notexist($dir, 0777); + $this->file->move($dir, $this->file_name); + //错误一般是已经被抛出了 + return true; + } + + + /** + * 远程获取图片 + * @param string $url + * @param string|null $key + * @return true + */ + public function fetch(string $url, ?string $key) + { + try { + mkdirs_or_notexist($key, 0777); + $content = @file_get_contents($url); + if (!empty($content)) { + file_put_contents($key, $content); +// $fp = fopen($key, "w"); +// fwrite($fp, $content); +// fclose($fp); + } else { + throw new UploadFileException(203006); + } + return true; + } catch ( Exception $e ) { + throw new UploadFileException($e->getMessage()); + } + } + + /** + * base64转图片 + * @param string $content + * @param string|null $key + * @return true + */ + public function base64(string $content, ?string $key = null) + { + + mkdirs_or_notexist($key); + file_put_contents(url_to_path($key), base64_decode($content)); + return true; + } + + /** + * 删除本地附件 + * @param string $file_name + * @return bool + */ + public function delete(string $file_name) + { + $file_path = url_to_path($file_name); + if (file_exists($file_path)) { + $result = unlink($file_path); +// throw new UploadFileException(100013); + }else{ + $result = true; + } + //顺便删除相关的缩略图 + $dirname = dirname($file_name); + $file_list = []; + search_dir($dirname, $file_list); + if(!empty($file_list)){ + $file_arr = explode('/', $file_name); + $only_file_name = end($file_arr); + foreach($file_list as $v){ + if(str_contains($v, $only_file_name) && file_exists($v)){ + unlink($v); + } + } + } + return $result; + } + + /** + * 缩略图 + * @param $file_path + * @param $thumb_type + * @return array + * @throws Exception + */ + public function thumb($file_path, $thumb_type) + { + //todo 判断缩略图是否存在 + $thumb_config = config('upload.thumb.thumb_type'); + // …… + //获取文件原名 获取 + $file_arr = explode('/', $file_path); + $file_name = end($file_arr); + $thumb_list = []; + //获取文件后缀 + foreach ($thumb_config as $k => $v) { + if ($thumb_type == 'all' || $thumb_type == $k || (is_array($thumb_type) && in_array($k, $thumb_type))) { + $new_width = $v['width']; + $new_height = $v['height']; + $new_thumb_path = str_replace($file_name, $new_width . 'x' . $new_height . '_' . $file_name, $file_path); + + if (!file_exists($new_thumb_path)) { + $editor = Grafika::createEditor(); + $editor->open($image, $file_path); + $editor->resizeFit($image, $new_width, $new_height); + //新缩略图文件名称 + $editor->save($image, $new_thumb_path, null, null, false, 0777); + } + $thumb_list[$k] = $new_thumb_path; + } + + } + return $thumb_list; + } + + /** + * 图片水印 + * @param $file_path + * @return mixed + * @throws Exception + */ + public function water($file_path) + { + $water_config = []; + if (!empty($water_config)) { + $status = $water_config['status'];//是否启用 + if ($status) { + $editor = Grafika::createEditor(); + $editor->open($image, $file_path); + if ($water_config['type'] == 'image') { + $water_image = $water_config['image']; + if (!empty($water_image)) { + //判断水印图片是否是本地图片 + if (check_file_is_remote($water_image)) { + $file_arr = explode('.', $water_image); + $ext_name = end($file_arr); + $name = $this->createFileName($water_image, $ext_name); + $watermark_image = 'upload/water/' . $name; + $this->fetch($water_image, $watermark_image); + } + if (file_exists($water_image)) { + + } + $editor->open($image1, $water_config['image']); + $editor->blend($image, $image1, 'normal', $water_config['opacity'], $this->position[$water_config['position']], $water_config['offset_x'], $water_config['offset_y']); + } + } else { + if ($water_config['text']) { + $position = $this->position[$water_config['position']]; + $offset_x = $water_config['offset_x'];//水平偏移值 + $offset_y = $water_config['offset_y'];//垂直偏移值 + $width = $image->getWidth(); + $height = $image->getHeight(); + + //获取文字信息 + $info = imagettfbbox($water_config['size'], $water_config['angle'], $water_config['font'], $water_config['text']); + $minx = min($info[0], $info[2], $info[4], $info[6]); + $maxx = max($info[0], $info[2], $info[4], $info[6]); + $miny = min($info[1], $info[3], $info[5], $info[7]); + $maxy = max($info[1], $info[3], $info[5], $info[7]); + /* 计算文字初始坐标和尺寸 */ + $x = $minx; + $y = abs($miny); + $w = $maxx - $minx; + $h = $maxy - $miny; + //转化坐标 + $position = new Position($position, $offset_x, $offset_y); + // Position is for $image2. $image1 is canvas. + list($offset_x, $offset_y) = $position->getXY($width, $height, $w, $h); + + $editor->text($image, $water_config['text'], $water_config['size'], $offset_x, $offset_y, new Color($water_config['color']), $water_config['font'], $water_config['angle']); + } + $editor->save($image, $file_path); + + + } + } + return $file_path; + } + } +} \ No newline at end of file diff --git a/niucloud/core/upload/Qiniu.php b/niucloud/core/upload/Qiniu.php new file mode 100644 index 0000000..2bc4208 --- /dev/null +++ b/niucloud/core/upload/Qiniu.php @@ -0,0 +1,180 @@ + 'NorthWest', + 'top-center' => 'North', + 'top-right' => 'NorthEast', + 'center-left' => 'West', + 'center' => 'Center', + 'center-right' => 'East', + 'bottom-left' => 'SouthWest', + 'bottom-center' => 'South', + 'bottom-right' => 'SouthEast', + ); + + protected function initialize(array $config = []) + { + parent::initialize($config); + } + + /** + * 获取一个鉴权对象 + * @return Auth + */ + public function auth() + { + $access_key = $this->config['access_key']; + $secret_key = $this->config['secret_key']; + return new Auth($access_key, $secret_key); + } + + /** + * @throws Exception + */ + public function upload(string $dir) + { + $this->validate(); + $bucket = $this->config['bucket']; + //todo 这儿可以定义凭证的过期时间 + $up_token = $this->auth()->uploadToken($bucket); + // 初始化 UploadManager 对象并进行文件的上传。 + $upload_mgr = new UploadManager(); + [$ret, $err] = $upload_mgr->putFile($up_token, $this->getFullPath(), $this->getRealPath()); + if ($err !== null) + throw new UploadFileException($err->message()); + return true; + } + + /** + * 抓取网络资源到空间 + * @param string $url + * @param string|null $key + * @return true + * @throws Exception + */ + public function fetch(string $url, ?string $key = null) + { + $bucket = $this->config['bucket']; + $auth = $this->auth(); + if (!str_contains($url, 'http://') && !str_contains($url, 'https://')) { + $token = $auth->uploadToken($bucket); + $upload_mgr = new UploadManager(); + [$ret, $err] = $upload_mgr->putFile($token, $key, $url); + } else { + //抓取网络资源到空间 + $bucket_manager = new BucketManager($auth); + [$ret, $err] = $bucket_manager->fetch($url, $bucket, $key);//不指定key时,以文件内容的hash作为文件名 + } + + if ($err !== null) + throw new UploadFileException($err->message()); + return true; + } + + /** + * base64资源上传 + * @param string $base64_data + * @param string|null $key + * @return true + */ + public function base64(string $base64_data, ?string $key = null) + { + $bucket = $this->config['bucket']; + $auth = $this->auth(); + $up_token = $this->auth()->uploadToken($bucket); + // 初始化 UploadManager 对象并进行文件的上传。 + $upload_mgr = new UploadManager(); + //将 base64 编码的图片数据解码 + $base64_file = base64_decode($base64_data); + if (!$base64_file) throw new UploadFileException('FILE_ERROE'); + // 初始化 UpLoadManager 对象并进行文件的上传 + list($ret, $err) = $upload_mgr->put($up_token, $key, $base64_file); + if ($err !== null) throw new UploadFileException($err->message); + return true; + } + + /** + * 删除空间中的文件 + * @param string $file_name + * @return true + */ + public function delete(string $file_name) + { + $bucket = $this->config['bucket']; + $auth = $this->auth(); + $config = new Config(); + $bucket_manager = new BucketManager($auth, $config); + [$ret, $err] = $bucket_manager->delete($bucket, $file_name); + if ($err !== null) + throw new UploadFileException($err->message()); + return true; + } + + public function thumb($file_path, $thumb_type) + { +// mageView2/1/w/400/h/600/q/85 + $thumb_config = config('upload.thumb.thumb_type'); + $thumb_data = []; + foreach ($thumb_config as $k => $v) { + if ($thumb_type == 'all' || $thumb_type == $k || (is_array($thumb_type) && in_array($k, $thumb_type))) { +// ?x-oss-process=image/resize,m_fill,w_200,h_600,quality,q_60 + $width = $v['width']; + $height = $v['height']; + //拼装缩略路径 + $item_thumb = $file_path . '?imageView2/2/w/' . $width . '/h/' . $height; + $thumb_data[$k] = $item_thumb; + } + } + + return $thumb_data; + } + + + /** + * 图片水印 + * @param $file_path + * @return mixed + * @throws Exception + */ + public function water($file_path) + { + $water_config = []; + $water_path = $file_path; + if (!empty($water_config)) { + $status = $water_config['status'];//是否启用 + if ($status) { + //判断当前的云图片是否存在?,存在符号的话需要用|连接 + if (str_contains($file_path, '?')) { + $water_path .= '|watermark'; + } else { + $water_path .= '?watermark'; + } + if ($water_config['type'] == 'image') { + $water_image = $water_config['image']; + if (!empty($water_image)) { + $water_path .= '/1/image/' . base64_encode($water_image) . '/gravity/' . $this->position[$water_config['position']] . '/dissolve/' . $water_config['opacity'] . '/dx/' . $water_config['offset_x'] . '/dy/' . $water_config['offset_y']; + } + } else { + $water_path .= '/2/text/' . base64_encode($water_config['text']) . '/font/' . base64_encode($water_config['font']) . '/fill/' . base64_encode($water_config['color']) . '/fontsize/' . $water_config['size'] . '/gravity/' . $this->position[$water_config['position']] . '/dx/' . $water_config['offset_x'] . '/dy/' . $water_config['offset_y']; + } + } + } + return $water_path; + } + +} \ No newline at end of file diff --git a/niucloud/core/upload/Tencent.php b/niucloud/core/upload/Tencent.php new file mode 100644 index 0000000..7475b78 --- /dev/null +++ b/niucloud/core/upload/Tencent.php @@ -0,0 +1,195 @@ + 'northwest', + 'top-center' => 'north', + 'top-right' => 'northeast', + 'center-left' => 'west', + 'center' => 'center', + 'center-right' => 'east', + 'bottom-left' => 'southwest', + 'bottom-center' => 'south', + 'bottom-right' => 'southeast', + ); + + protected function initialize(array $config = []) + { + parent::initialize($config); + } + + /** + * 获取服务主体 + * @return Client + */ + public function client() + { + $secret_id = $this->config['access_key']; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi + $secret_key = $this->config['secret_key']; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi + $region = $this->config['region']; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.tencentcloud.com/cos5/bucket + + return new Client( + array( + 'region' => $region, +// 'schema' => 'https', //协议头部,默认为http + 'credentials' => array( + 'secretId' => $secret_id, + 'secretKey' => $secret_key) + ) + ); + } + + + /** + * 执行上传 + * @param string $dir + * @return true + */ + public function upload(string $dir) + { + $this->validate(); + $bucket = $this->config['bucket']; + try { + $result = $this->client()->putObject(array( + 'Bucket' => $bucket, //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.tencentcloud.com/cos5/bucket + 'Key' => $this->getFullPath(), + 'Body' => fopen($this->getRealPath(), 'rb'), + )); + // 请求成功 + return true; + } catch ( Exception $e ) { + throw new UploadFileException($e->getMessage()); + } + } + + /** + * base文件上云 + * @param string $base64_data + * @param string|null $key + * @return true + */ + public function base64(string $base64_data, ?string $key = null) + { + $bucket = $this->config['bucket']; + try { + $base64_file = base64_decode($base64_data); + if (!$base64_file) throw new UploadFileException('FILE_ERROE'); + $result = $this->client()->putObject(array( + 'Bucket' => $bucket, //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.tencentcloud.com/cos5/bucket + 'Key' => $key, + 'Body' => $base64_file, + )); + // 请求成功 + return true; + } catch ( Exception $e ) { + throw new UploadFileException($e->getMessage()); + } + } + /** + * notes: 抓取远程资源(最大支持上传5G文件) + * @param string $url + * @param string|null $key + * @return true + */ + public function fetch(string $url, ?string $key = null) + { + + $bucket = $this->config['bucket']; + try { + $result = $this->client()->putObject(array( + 'Bucket' => $bucket, //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.tencentcloud.com/cos5/bucket + 'Key' => $key, + 'Body' => fopen($url, 'rb'), + )); + // 请求成功 + return true; + } catch ( Exception $e ) { + throw new UploadFileException($e->getMessage()); + } + } + + /** + * 删除一个简单对象 + * @param string $file_name + * @return true + */ + public function delete(string $file_name) + { + $bucket = $this->config['bucket']; + try { + $this->client()->deleteObject(array( + 'Bucket' => $bucket, + 'Key' => $file_name + )); + return true; + } catch ( Exception $e ) { + throw new UploadFileException($e->getMessage()); + } + } + + public function thumb($file_path, $thumb_type) + { + //腾讯云缩略图地址 + + $thumb_config = config('upload.thumb.thumb_type'); + $thumb_data = []; + foreach ($thumb_config as $k => $v) { + if ($thumb_type == 'all' || $thumb_type == $k || (is_array($thumb_type) && in_array($k, $thumb_type))) { +// ?x-oss-process=image/resize,m_fill,w_200,h_600,quality,q_60 + $width = $v['width']; + $height = $v['height']; + //拼装缩略路径 + $item_thumb = $file_path . '?imageMogr2/thumbnail/' . $width . 'x' . $height; + $thumb_data[$k] = $item_thumb; + } + } + + return $thumb_data; + } + + + /** + * 图片水印 + * @param $file_path + * @return mixed + * @throws Exception + */ + public function water($file_path) + { + $water_config = []; + $water_path = $file_path; + if (!empty($water_config)) { + $status = $water_config['status'];//是否启用 + if($status){ + //判断当前的云图片是否存在?,存在符号的话需要用|连接 + if(str_contains($file_path, '?')){ + $water_path .= '&watermark'; + }else{ + $water_path .= '?watermark'; + } + if ($water_config['type'] == 'image') { + $water_image = $water_config['image']; + if(!empty($water_image)){ + //http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?watermark/1/image/aHR0cDovL2V4YW1wbGVzLTEyNTEwMDAwMDQucGljc2gubXlxY2xvdWQuY29tL3NodWl5aW4uanBn/gravity/southeast + $water_path .= '/1/image/' . base64_encode($water_image) . '/gravity/' . $this->position[$water_config['position']] . '/blogo/1/dx/' . $water_config['offset_x'] . '/dy/' . $water_config['offset_y'].'/dissolve/'.$water_config['opacity']; + } + } else { + //http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?q-sign-algorithm=&watermark/2/text/6IW-6K6v5LqRwrfkuIfosaHkvJjlm74/fill/IzNEM0QzRA/fontsize/20/dissolve/50/gravity/northeast/dx/20/dy/20/batch/1/degree/45 + $water_path .= '/2/text/' . base64_encode($water_config['text']) . '/font/' . base64_encode($water_config['font']) . '/fill/' . base64_encode($water_config['color']) . '/fontsize/' . $water_config['size'] . '/gravity/' . $this->position[$water_config['position']] . '/dx/' . $water_config['offset_x'] . '/dy/' . $water_config['offset_y']; + } + } + } + return $water_path; + } +} diff --git a/niucloud/core/upload/UploadLoader.php b/niucloud/core/upload/UploadLoader.php new file mode 100644 index 0000000..ff6afac --- /dev/null +++ b/niucloud/core/upload/UploadLoader.php @@ -0,0 +1,44 @@ +color_black = new \BCGColor(0, 0, 0); + $this->color_white = new \BCGColor(255, 255, 255); + $this->size = $size; + $this->fontPath = str_replace("\\", "/", root_path() . "core/util/barcode/font/Arial.ttf"); + $this->font = new \BCGFontFile($this->fontPath, $this->size); + $this->content = $content; + } + + //生成条形码 + public function generateBarcode($path='', $scale = 2){ + try { + $code = new \BCGcode128(); + $code->setScale($scale); + $code->setThickness(30); // 条形码的厚度 + $code->setForegroundColor($this->color_black); // 条形码颜色 + $code->setBackgroundColor($this->color_white); // 空白间隙颜色 + $code->setFont($this->font); // + $code->parse($this->content); // 条形码需要的数据内容 + } catch(Exception $exception) { + $this->drawException = $exception; + } + + if($path == ''){ + $path = 'upload/barcode';//条形码存放路径 + } + + if (! is_dir($path)) { + $mode = intval('0777', 8); + mkdir($path, $mode, true); + chmod($path, $mode); + } + $path = $path . '/' . $this->content . '.png'; + if (file_exists($path)) { + unlink($path); + } + + //根据以上条件绘制条形码 + $drawing = new \BCGDrawing('', $this->color_white); + if($this->drawException) { + $drawing->drawException($this->drawException); + } else { + $drawing->setBarcode($code); + $drawing->setFilename($path); + $drawing->draw(); + } + // 生成PNG格式的图片 + $drawing->finish(\BCGDrawing::IMG_FORMAT_PNG); + return $path; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/DbBackup.php b/niucloud/core/util/DbBackup.php new file mode 100644 index 0000000..e18c07e --- /dev/null +++ b/niucloud/core/util/DbBackup.php @@ -0,0 +1,527 @@ + './backup/', + // 数据库备份卷大小 + 'part' => 20971520, + // 数据库备份文件是否启用压缩 0不压缩 1 压缩 + 'compress' => 0, + // 数据库备份文件压缩级别 1普通 4 一般 9最高 + 'level' => 9, + ); + + /** + * 数据库备份构造方法 + * @param array $file 备份或还原的文件信息 + * @param array $config 备份配置信息 + */ + public function __construct($config = []) + { + $this->config = is_array($config) && !empty($config) ? array_merge($this->config, $config) : $this->config; + //初始化文件名 + $this->setFile(); + //初始化数据库连接参数 + $this->setDbConn(); + //检查文件是否可写 + if (!$this->checkPath($this->config['path'])) { + throw new \Exception("The current directory is not writable"); + } + } + + /** + * 设置脚本运行超时时间 + * 0表示不限制,支持连贯操作 + */ + public function setTimeout($time = null) + { + if (!is_null($time)) { + set_time_limit($time) || ini_set("max_execution_time", $time); + } + return $this; + } + + /** + * 设置数据库连接必备参数 + * @param array $dbconfig 数据库连接配置信息 + * @return object + */ + public function setDbConn($dbconfig = []) + { + if (empty($dbconfig)) { + $this->dbconfig = config('database.connections.'.config('database.default')); + } else { + $this->dbconfig = $dbconfig; + } + return $this; + } + + /** + * 设置备份文件名 + * + * @param Array $file 文件名字 + * @return object + */ + public function setFile($file = null) + { + if (is_null($file)) { + $this->file = ['name' => date('Ymd-His'), 'part' => 1]; + } else { + if (!array_key_exists("name", $file) && !array_key_exists("part", $file)) { + $this->file = $file['1']; + } else { + $this->file = $file; + } + } + return $this; + } + + /** + * 数据库表列表 + * + * @param null $table + * @param int $type + * @return array + */ + public function dataList($table = null, $type = 1) + { + if (is_null($table)) { + $list = Db::query("SHOW TABLE STATUS"); + } else { + if ($type) { + $list = Db::query("SHOW FULL COLUMNS FROM {$table}"); + } else { + $list = Db::query("show columns from {$table}"); + } + } + + return array_map('array_change_key_case', $list); + } + + /** + * 数据库备份文件列表 + * + * @return array + */ + public function fileList() + { + if (!is_dir($this->config['path'])) { + mkdir($this->config['path'], 0755, true); + } + $path = realpath($this->config['path']); + $flag = \FilesystemIterator::KEY_AS_FILENAME; + $glob = new \FilesystemIterator($path, $flag); + $list = array(); + foreach ($glob as $name => $file) { + if (preg_match('/^\\d{8,8}-\\d{6,6}-\\d+\\.sql(?:\\.gz)?$/', $name)) { + $name1 = $name; + $name = sscanf($name, '%4s%2s%2s-%2s%2s%2s-%d'); + $date = "{$name[0]}-{$name[1]}-{$name[2]}"; + $time = "{$name[3]}:{$name[4]}:{$name[5]}"; + $part = $name[6]; + if (isset($list["{$date} {$time}"])) { + $info = $list["{$date} {$time}"]; + $info['part'] = max($info['part'], $part); + $info['size'] = $info['size'] + $file->getSize(); + } else { + $info['part'] = $part; + $info['size'] = $file->getSize(); + } + $extension = strtoupper(pathinfo($file->getFilename(), PATHINFO_EXTENSION)); + $info['name'] = $name1; + $info['compress'] = $extension === 'SQL' ? '-' : $extension; + $info['time'] = strtotime("{$date} {$time}"); + $list["{$date} {$time}"] = $info; + } + } + return $list; + } + + /** + * 获取文件名称 + * + * @param string $type + * @param int $time + * @return array|false|mixed|string + * @throws \Exception + */ + public function getFile($type = '', $time = 0) + { + // + if (!is_numeric($time)) { + throw new \Exception("{$time} Illegal data type"); + } + switch ($type) { + case 'time': + $name = date('Ymd-His', $time).'-*.sql*'; + $path = realpath($this->config['path']).DIRECTORY_SEPARATOR.$name; + return glob($path); + break; + case 'timeverif': + $name = date('Ymd-His', $time).'-*.sql*'; + $path = realpath($this->config['path']).DIRECTORY_SEPARATOR.$name; + $files = glob($path); + $list = array(); + foreach ($files as $name) { + $basename = basename($name); + $match = sscanf($basename, '%4s%2s%2s-%2s%2s%2s-%d'); + $gz = preg_match('/^\\d{8,8}-\\d{6,6}-\\d+\\.sql.gz$/', $basename); + $list[$match[6]] = array($match[6], $name, $gz); + } + $last = end($list); + if (count($list) === $last[0]) { + return $list; + } else { + throw new \Exception("File {$files['0']} may be damaged, please check again"); + } + break; + case 'pathname': + return "{$this->config['path']}{$this->file['name']}-{$this->file['part']}.sql"; + break; + case 'filename': + return "{$this->file['name']}-{$this->file['part']}.sql"; + break; + case 'filepath': + return $this->config['path']; + break; + default: + $arr = array( + 'pathname' => "{$this->config['path']}{$this->file['name']}-{$this->file['part']}.sql", + 'filename' => "{$this->file['name']}-{$this->file['part']}.sql", + 'filepath' => $this->config['path'], 'file' => $this->file + ); + return $arr; + } + } + + /** + * 删除备份文件 + * + * @param $time + * @return mixed + * @throws \Exception + */ + public function delFile($time) + { + if ($time) { + $file = $this->getFile('time', $time); + array_map("unlink", $file); + $file = $this->getFile('time', $time); + if (count($file)) { + throw new \Exception("File ".implode('##', $file)." deleted failed"); + } else { + return $time; + } + } else { + throw new \Exception("{$time} Time parameter is incorrect"); + } + } + + /** + * 下载备份 + * + * @param string $time + * @param integer $part + * @return array|mixed|string + */ + public function downloadFile($time, $part = 0) + { + $file = $this->getFile('time', $time); + $fileName = $file[$part]; + if (file_exists($fileName)) { + ob_end_clean(); + header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); + header('Content-Description: File Transfer'); + header('Content-Type: application/octet-stream'); + header('Content-Length: '.filesize($fileName)); + header('Content-Disposition: attachment; filename='.basename($fileName)); + readfile($fileName); + } else { + throw new \Exception("{$time} File is abnormal"); + } + } + + /** + * 导入表 + * + * @param $start + * @param $time + * @return array|false|int + * @throws Exception + */ + public function import($start, $time) + { + //还原数据 + $this->file = $this->getFile('time', $time); + if ($this->config['compress']) { + $gz = gzopen($this->file[0], 'r'); + $size = 0; + } else { + $size = filesize($this->file[0]); + $gz = fopen($this->file[0], 'r'); + } + $sql = ''; + if ($start) { + $this->config['compress'] ? gzseek($gz, $start) : fseek($gz, $start); + } + for ($i = 0; $i < 1000; $i++) { + $sql .= $this->config['compress'] ? gzgets($gz) : fgets($gz); + if (preg_match('/.*;$/', trim($sql))) { + if (false !== Db::query($sql)) { + $start += strlen($sql); + } else { + return false; + } + $sql = ''; + } elseif ($this->config['compress'] ? gzeof($gz) : feof($gz)) { + return 0; + } + } + return array($start, $size); + } + + /** + * 写入初始数据 + * + * @return boolean true - 写入成功,false - 写入失败 + */ + public function backupInit() + { + $sql = "-- -----------------------------\n"; + $sql .= "-- Think MySQL Data Transfer \n"; + $sql .= "-- \n"; + $sql .= "-- Host : ".$this->dbconfig['hostname']."\n"; + $sql .= "-- Port : ".$this->dbconfig['hostport']."\n"; + $sql .= "-- Database : ".$this->dbconfig['database']."\n"; + $sql .= "-- \n"; + $sql .= "-- Part : #{$this->file['part']}\n"; + $sql .= "-- Date : ".date("Y-m-d H:i:s")."\n"; + $sql .= "-- -----------------------------\n\n"; + $sql .= "SET FOREIGN_KEY_CHECKS = 0;\n\n"; + return $this->write($sql); + } + + /** + * 查询单条 + * @param $sql + * @return array|mixed + */ + public function selectOne($sql) { + $result = Db::query($sql); + return $result[0] ?? []; + } + + /** + * 备份表结构 + * + * @param string $table 表名 + * @param integer $start 起始行数 + * @return boolean false - 备份失败 + */ + public function backup($table, $start = 0) + { + // 备份表结构 + if (0 == $start) { + $result = $this->selectOne("SHOW CREATE TABLE `{$table}`"); + $sql = "\n"; + $sql .= "-- -----------------------------\n"; + $sql .= "-- Table structure for `{$table}`\n"; + $sql .= "-- -----------------------------\n"; + $sql .= "DROP TABLE IF EXISTS `{$table}`;\n"; + $sql .= trim($result['Create Table']).";\n\n"; + if (false === $this->write($sql)) { + return false; + } + } + //数据总数 + $result = $this->selectOne("SELECT COUNT(*) AS count FROM `{$table}`"); + $count = $result['count']; + //备份表数据 + if ($count) { + //写入数据注释 + if (0 == $start) { + $sql = "-- -----------------------------\n"; + $sql .= "-- Records of `{$table}`\n"; + $sql .= "-- -----------------------------\n"; + $this->write($sql); + } + //备份数据记录 + $result = Db::query("SELECT * FROM `{$table}` LIMIT {$start}, 1000"); + $sql = "INSERT INTO `{$table}` VALUES\n"; + foreach ($result as $index => $row) { + $row = array_map(function ($item){ + return is_string($item) ? addslashes($item) : $item; + }, $row); + $sql .= "('".str_replace(array("\r", "\n"), array('\\r', '\\n'), + implode("', '", $row))."')"; + $sql .= $index < (count($result) - 1) ? ",\n" : ";\n"; + } + + if (false === $this->write($sql)) { + return false; + } + //还有更多数据 + if ($count > $start + 1000) { + return $this->backup($table, $start + 1000); + } + } + //备份下一表 + return true; + } + + /** + * 优化表 + * + * @param String $tables 表名 + * @return String $tables + */ + public function optimize($tables = null) + { + if ($tables) { + if (is_array($tables)) { + $tables = implode('`,`', $tables); + $list = db ::select("OPTIMIZE TABLE `{$tables}`"); + } else { + $list = Db::query("OPTIMIZE TABLE `{$tables}`"); + } + if ($list) { + return $tables; + } else { + throw new \Exception("data sheet'{$tables}'Repair mistakes please try again!"); + } + } else { + throw new \Exception("Please specify the table to be repaired!"); + } + } + + /** + * 修复表 + * + * @param String $tables 表名 + * @return String $tables + */ + public function repair($tables = null) + { + if ($tables) { + if (is_array($tables)) { + $tables = implode('`,`', $tables); + $list = Db::query("REPAIR TABLE `{$tables}`"); + } else { + $list = Db::query("REPAIR TABLE `{$tables}`"); + } + if ($list) { + + return $list; + } else { + throw new \Exception("data sheet'{$tables}'Repair mistakes please try again!"); + } + } else { + throw new \Exception("Please specify the table to be repaired!"); + } + } + + /** + * 写入SQL语句 + * + * @param string $sql 要写入的SQL语句 + * @return boolean true - 写入成功,false - 写入失败! + */ + private function write($sql) + { + $size = strlen($sql); + //由于压缩原因,无法计算出压缩后的长度,这里假设压缩率为50%, + //一般情况压缩率都会高于50%; + $size = $this->config['compress'] ? $size / 2 : $size; + $this->open($size); + return $this->config['compress'] ? @gzwrite($this->fp, $sql) : @fwrite($this->fp, $sql); + } + + /** + * 打开一个卷,用于写入数据 + * + * @param integer $size 写入数据的大小 + */ + private function open($size) + { + if ($this->fp) { + $this->size += $size; + if ($this->size > $this->config['part']) { + $this->config['compress'] ? @gzclose($this->fp) : @fclose($this->fp); + $this->fp = null; + $this->file['part']++; + session('backup_file', $this->file); + $this->backupInit(); + } + } else { + $backuppath = $this->config['path']; + $filename = "{$backuppath}{$this->file['name']}-{$this->file['part']}.sql"; + if ($this->config['compress']) { + $filename = "{$filename}.gz"; + $this->fp = @gzopen($filename, "a{$this->config['level']}"); + } else { + $this->fp = @fopen($filename, 'a'); + } + $this->size = filesize($filename) + $size; + } + } + + /** + * 检查目录是否可写 + * + * @param string $path 目录 + * @return boolean + */ + protected function checkPath($path) + { + if (is_dir($path)) { + return true; + } + if (mkdir($path, 0755, true)) { + return true; + } else { + return false; + } + } + + /** + * 析构方法,用于关闭文件资源 + */ + public function __destruct() + { + if ($this->fp) { + $this->config['compress'] ? @gzclose($this->fp) : @fclose($this->fp); + } + } + +} diff --git a/niucloud/core/util/QRcode.php b/niucloud/core/util/QRcode.php new file mode 100644 index 0000000..52c92ce --- /dev/null +++ b/niucloud/core/util/QRcode.php @@ -0,0 +1,3312 @@ + + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + + +/* + * Version: 1.1.4 + * Build: 2010100721 + */ + + + +//---- qrconst.php ----------------------------- + + + + + +/* + * PHP QR Code encoder + * + * Common constants + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + // Encoding modes + + define('QR_MODE_NUL', -1); + define('QR_MODE_NUM', 0); + define('QR_MODE_AN', 1); + define('QR_MODE_8', 2); + define('QR_MODE_KANJI', 3); + define('QR_MODE_STRUCTURE', 4); + + // Levels of error correction. + + define('QR_ECLEVEL_L', 0); + define('QR_ECLEVEL_M', 1); + define('QR_ECLEVEL_Q', 2); + define('QR_ECLEVEL_H', 3); + + // Supported output formats + + define('QR_FORMAT_TEXT', 0); + define('QR_FORMAT_PNG', 1); + + class qrstr { + public static function set(&$srctab, $x, $y, $repl, $replLen = false) { + $srctab[$y] = substr_replace($srctab[$y], ($replLen !== false)?substr($repl,0,$replLen):$repl, $x, ($replLen !== false)?$replLen:strlen($repl)); + } + } + + + +//---- merged_config.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Config file, tuned-up for merged verion + */ + + define('QR_CACHEABLE', false); // use cache - more disk reads but less CPU power, masks and format templates are stored there + define('QR_CACHE_DIR', false); // used when QR_CACHEABLE === true + define('QR_LOG_DIR', false); // default error logs dir + + define('QR_FIND_BEST_MASK', true); // if true, estimates best mask (spec. default, but extremally slow; set to false to significant performance boost but (propably) worst quality code + define('QR_FIND_FROM_RANDOM', 2); // if false, checks all masks available, otherwise value tells count of masks need to be checked, mask id are got randomly + define('QR_DEFAULT_MASK', 2); // when QR_FIND_BEST_MASK === false + + define('QR_PNG_MAXIMUM_SIZE', 1024); // maximum allowed png image width (in pixels), tune to make sure GD and PHP can handle such big images + + + + +//---- qrtools.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Toolset, handy and debug utilites. + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + class QRtools { + + //---------------------------------------------------------------------- + public static function binarize($frame) + { + $len = count($frame); + foreach ($frame as &$frameLine) { + + for($i=0; $i<$len; $i++) { + $frameLine[$i] = (ord($frameLine[$i])&1)?'1':'0'; + } + } + + return $frame; + } + + //---------------------------------------------------------------------- + public static function tcpdfBarcodeArray($code, $mode = 'QR,L', $tcPdfVersion = '4.5.037') + { + $barcode_array = array(); + + if (!is_array($mode)) + $mode = explode(',', $mode); + + $eccLevel = 'L'; + + if (count($mode) > 1) { + $eccLevel = $mode[1]; + } + + $qrTab = QRcode::text($code, false, $eccLevel); + $size = count($qrTab); + + $barcode_array['num_rows'] = $size; + $barcode_array['num_cols'] = $size; + $barcode_array['bcode'] = array(); + + foreach ($qrTab as $line) { + $arrAdd = array(); + foreach(str_split($line) as $char) + $arrAdd[] = ($char=='1')?1:0; + $barcode_array['bcode'][] = $arrAdd; + } + + return $barcode_array; + } + + //---------------------------------------------------------------------- + public static function clearCache() + { + self::$frames = array(); + } + + //---------------------------------------------------------------------- + public static function buildCache() + { + QRtools::markTime('before_build_cache'); + + $mask = new QRmask(); + for ($a=1; $a <= QRSPEC_VERSION_MAX; $a++) { + $frame = QRspec::newFrame($a); + if (QR_IMAGE) { + $fileName = QR_CACHE_DIR.'frame_'.$a.'.png'; + QRimage::png(self::binarize($frame), $fileName, 1, 0); + } + + $width = count($frame); + $bitMask = array_fill(0, $width, array_fill(0, $width, 0)); + for ($maskNo=0; $maskNo<8; $maskNo++) + $mask->makeMaskNo($maskNo, $width, $frame, $bitMask, true); + } + + QRtools::markTime('after_build_cache'); + } + + //---------------------------------------------------------------------- + public static function log($outfile, $err) + { + if (QR_LOG_DIR !== false) { + if ($err != '') { + if ($outfile !== false) { + file_put_contents(QR_LOG_DIR.basename($outfile).'-errors.txt', date('Y-m-d H:i:s').': '.$err, FILE_APPEND); + } else { + file_put_contents(QR_LOG_DIR.'errors.txt', date('Y-m-d H:i:s').': '.$err, FILE_APPEND); + } + } + } + } + + //---------------------------------------------------------------------- + public static function dumpMask($frame) + { + $width = count($frame); + for($y=0;$y<$width;$y++) { + for($x=0;$x<$width;$x++) { + echo ord($frame[$y][$x]).','; + } + } + } + + //---------------------------------------------------------------------- + public static function markTime($markerId) + { + list($usec, $sec) = explode(" ", microtime()); + $time = ((float)$usec + (float)$sec); + + if (!isset($GLOBALS['qr_time_bench'])) + $GLOBALS['qr_time_bench'] = array(); + + $GLOBALS['qr_time_bench'][$markerId] = $time; + } + + //---------------------------------------------------------------------- + public static function timeBenchmark() + { + self::markTime('finish'); + + $lastTime = 0; + $startTime = 0; + $p = 0; + + echo ' + + '; + + foreach($GLOBALS['qr_time_bench'] as $markerId=>$thisTime) { + if ($p > 0) { + echo ''; + } else { + $startTime = $thisTime; + } + + $p++; + $lastTime = $thisTime; + } + + echo ' + + +
BENCHMARK
till '.$markerId.': '.number_format($thisTime-$lastTime, 6).'s
TOTAL: '.number_format($lastTime-$startTime, 6).'s
'; + } + + } + + //########################################################################## + + QRtools::markTime('start'); + + + + +//---- qrspec.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * QR Code specifications + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * The following data / specifications are taken from + * "Two dimensional symbol -- QR-code -- Basic Specification" (JIS X0510:2004) + * or + * "Automatic identification and data capture techniques -- + * QR Code 2005 bar code symbology specification" (ISO/IEC 18004:2006) + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + define('QRSPEC_VERSION_MAX', 40); + define('QRSPEC_WIDTH_MAX', 177); + + define('QRCAP_WIDTH', 0); + define('QRCAP_WORDS', 1); + define('QRCAP_REMINDER', 2); + define('QRCAP_EC', 3); + + class QRspec { + + public static $capacity = array( + array( 0, 0, 0, array( 0, 0, 0, 0)), + array( 21, 26, 0, array( 7, 10, 13, 17)), // 1 + array( 25, 44, 7, array( 10, 16, 22, 28)), + array( 29, 70, 7, array( 15, 26, 36, 44)), + array( 33, 100, 7, array( 20, 36, 52, 64)), + array( 37, 134, 7, array( 26, 48, 72, 88)), // 5 + array( 41, 172, 7, array( 36, 64, 96, 112)), + array( 45, 196, 0, array( 40, 72, 108, 130)), + array( 49, 242, 0, array( 48, 88, 132, 156)), + array( 53, 292, 0, array( 60, 110, 160, 192)), + array( 57, 346, 0, array( 72, 130, 192, 224)), //10 + array( 61, 404, 0, array( 80, 150, 224, 264)), + array( 65, 466, 0, array( 96, 176, 260, 308)), + array( 69, 532, 0, array( 104, 198, 288, 352)), + array( 73, 581, 3, array( 120, 216, 320, 384)), + array( 77, 655, 3, array( 132, 240, 360, 432)), //15 + array( 81, 733, 3, array( 144, 280, 408, 480)), + array( 85, 815, 3, array( 168, 308, 448, 532)), + array( 89, 901, 3, array( 180, 338, 504, 588)), + array( 93, 991, 3, array( 196, 364, 546, 650)), + array( 97, 1085, 3, array( 224, 416, 600, 700)), //20 + array(101, 1156, 4, array( 224, 442, 644, 750)), + array(105, 1258, 4, array( 252, 476, 690, 816)), + array(109, 1364, 4, array( 270, 504, 750, 900)), + array(113, 1474, 4, array( 300, 560, 810, 960)), + array(117, 1588, 4, array( 312, 588, 870, 1050)), //25 + array(121, 1706, 4, array( 336, 644, 952, 1110)), + array(125, 1828, 4, array( 360, 700, 1020, 1200)), + array(129, 1921, 3, array( 390, 728, 1050, 1260)), + array(133, 2051, 3, array( 420, 784, 1140, 1350)), + array(137, 2185, 3, array( 450, 812, 1200, 1440)), //30 + array(141, 2323, 3, array( 480, 868, 1290, 1530)), + array(145, 2465, 3, array( 510, 924, 1350, 1620)), + array(149, 2611, 3, array( 540, 980, 1440, 1710)), + array(153, 2761, 3, array( 570, 1036, 1530, 1800)), + array(157, 2876, 0, array( 570, 1064, 1590, 1890)), //35 + array(161, 3034, 0, array( 600, 1120, 1680, 1980)), + array(165, 3196, 0, array( 630, 1204, 1770, 2100)), + array(169, 3362, 0, array( 660, 1260, 1860, 2220)), + array(173, 3532, 0, array( 720, 1316, 1950, 2310)), + array(177, 3706, 0, array( 750, 1372, 2040, 2430)) //40 + ); + + //---------------------------------------------------------------------- + public static function getDataLength($version, $level) + { + return self::$capacity[$version][QRCAP_WORDS] - self::$capacity[$version][QRCAP_EC][$level]; + } + + //---------------------------------------------------------------------- + public static function getECCLength($version, $level) + { + return self::$capacity[$version][QRCAP_EC][$level]; + } + + //---------------------------------------------------------------------- + public static function getWidth($version) + { + return self::$capacity[$version][QRCAP_WIDTH]; + } + + //---------------------------------------------------------------------- + public static function getRemainder($version) + { + return self::$capacity[$version][QRCAP_REMINDER]; + } + + //---------------------------------------------------------------------- + public static function getMinimumVersion($size, $level) + { + + for($i=1; $i<= QRSPEC_VERSION_MAX; $i++) { + $words = self::$capacity[$i][QRCAP_WORDS] - self::$capacity[$i][QRCAP_EC][$level]; + if($words >= $size) + return $i; + } + + return -1; + } + + //###################################################################### + + public static $lengthTableBits = array( + array(10, 12, 14), + array( 9, 11, 13), + array( 8, 16, 16), + array( 8, 10, 12) + ); + + //---------------------------------------------------------------------- + public static function lengthIndicator($mode, $version) + { + if ($mode == QR_MODE_STRUCTURE) + return 0; + + if ($version <= 9) { + $l = 0; + } else if ($version <= 26) { + $l = 1; + } else { + $l = 2; + } + + return self::$lengthTableBits[$mode][$l]; + } + + //---------------------------------------------------------------------- + public static function maximumWords($mode, $version) + { + if($mode == QR_MODE_STRUCTURE) + return 3; + + if($version <= 9) { + $l = 0; + } else if($version <= 26) { + $l = 1; + } else { + $l = 2; + } + + $bits = self::$lengthTableBits[$mode][$l]; + $words = (1 << $bits) - 1; + + if($mode == QR_MODE_KANJI) { + $words *= 2; // the number of bytes is required + } + + return $words; + } + + // Error correction code ----------------------------------------------- + // Table of the error correction code (Reed-Solomon block) + // See Table 12-16 (pp.30-36), JIS X0510:2004. + + public static $eccTable = array( + array(array( 0, 0), array( 0, 0), array( 0, 0), array( 0, 0)), + array(array( 1, 0), array( 1, 0), array( 1, 0), array( 1, 0)), // 1 + array(array( 1, 0), array( 1, 0), array( 1, 0), array( 1, 0)), + array(array( 1, 0), array( 1, 0), array( 2, 0), array( 2, 0)), + array(array( 1, 0), array( 2, 0), array( 2, 0), array( 4, 0)), + array(array( 1, 0), array( 2, 0), array( 2, 2), array( 2, 2)), // 5 + array(array( 2, 0), array( 4, 0), array( 4, 0), array( 4, 0)), + array(array( 2, 0), array( 4, 0), array( 2, 4), array( 4, 1)), + array(array( 2, 0), array( 2, 2), array( 4, 2), array( 4, 2)), + array(array( 2, 0), array( 3, 2), array( 4, 4), array( 4, 4)), + array(array( 2, 2), array( 4, 1), array( 6, 2), array( 6, 2)), //10 + array(array( 4, 0), array( 1, 4), array( 4, 4), array( 3, 8)), + array(array( 2, 2), array( 6, 2), array( 4, 6), array( 7, 4)), + array(array( 4, 0), array( 8, 1), array( 8, 4), array(12, 4)), + array(array( 3, 1), array( 4, 5), array(11, 5), array(11, 5)), + array(array( 5, 1), array( 5, 5), array( 5, 7), array(11, 7)), //15 + array(array( 5, 1), array( 7, 3), array(15, 2), array( 3, 13)), + array(array( 1, 5), array(10, 1), array( 1, 15), array( 2, 17)), + array(array( 5, 1), array( 9, 4), array(17, 1), array( 2, 19)), + array(array( 3, 4), array( 3, 11), array(17, 4), array( 9, 16)), + array(array( 3, 5), array( 3, 13), array(15, 5), array(15, 10)), //20 + array(array( 4, 4), array(17, 0), array(17, 6), array(19, 6)), + array(array( 2, 7), array(17, 0), array( 7, 16), array(34, 0)), + array(array( 4, 5), array( 4, 14), array(11, 14), array(16, 14)), + array(array( 6, 4), array( 6, 14), array(11, 16), array(30, 2)), + array(array( 8, 4), array( 8, 13), array( 7, 22), array(22, 13)), //25 + array(array(10, 2), array(19, 4), array(28, 6), array(33, 4)), + array(array( 8, 4), array(22, 3), array( 8, 26), array(12, 28)), + array(array( 3, 10), array( 3, 23), array( 4, 31), array(11, 31)), + array(array( 7, 7), array(21, 7), array( 1, 37), array(19, 26)), + array(array( 5, 10), array(19, 10), array(15, 25), array(23, 25)), //30 + array(array(13, 3), array( 2, 29), array(42, 1), array(23, 28)), + array(array(17, 0), array(10, 23), array(10, 35), array(19, 35)), + array(array(17, 1), array(14, 21), array(29, 19), array(11, 46)), + array(array(13, 6), array(14, 23), array(44, 7), array(59, 1)), + array(array(12, 7), array(12, 26), array(39, 14), array(22, 41)), //35 + array(array( 6, 14), array( 6, 34), array(46, 10), array( 2, 64)), + array(array(17, 4), array(29, 14), array(49, 10), array(24, 46)), + array(array( 4, 18), array(13, 32), array(48, 14), array(42, 32)), + array(array(20, 4), array(40, 7), array(43, 22), array(10, 67)), + array(array(19, 6), array(18, 31), array(34, 34), array(20, 61)),//40 + ); + + //---------------------------------------------------------------------- + // CACHEABLE!!! + + public static function getEccSpec($version, $level, array &$spec) + { + if (count($spec) < 5) { + $spec = array(0,0,0,0,0); + } + + $b1 = self::$eccTable[$version][$level][0]; + $b2 = self::$eccTable[$version][$level][1]; + $data = self::getDataLength($version, $level); + $ecc = self::getECCLength($version, $level); + + if($b2 == 0) { + $spec[0] = $b1; + $spec[1] = (int)($data / $b1); + $spec[2] = (int)($ecc / $b1); + $spec[3] = 0; + $spec[4] = 0; + } else { + $spec[0] = $b1; + $spec[1] = (int)($data / ($b1 + $b2)); + $spec[2] = (int)($ecc / ($b1 + $b2)); + $spec[3] = $b2; + $spec[4] = $spec[1] + 1; + } + } + + // Alignment pattern --------------------------------------------------- + + // Positions of alignment patterns. + // This array includes only the second and the third position of the + // alignment patterns. Rest of them can be calculated from the distance + // between them. + + // See Table 1 in Appendix E (pp.71) of JIS X0510:2004. + + public static $alignmentPattern = array( + array( 0, 0), + array( 0, 0), array(18, 0), array(22, 0), array(26, 0), array(30, 0), // 1- 5 + array(34, 0), array(22, 38), array(24, 42), array(26, 46), array(28, 50), // 6-10 + array(30, 54), array(32, 58), array(34, 62), array(26, 46), array(26, 48), //11-15 + array(26, 50), array(30, 54), array(30, 56), array(30, 58), array(34, 62), //16-20 + array(28, 50), array(26, 50), array(30, 54), array(28, 54), array(32, 58), //21-25 + array(30, 58), array(34, 62), array(26, 50), array(30, 54), array(26, 52), //26-30 + array(30, 56), array(34, 60), array(30, 58), array(34, 62), array(30, 54), //31-35 + array(24, 50), array(28, 54), array(32, 58), array(26, 54), array(30, 58), //35-40 + ); + + + /** -------------------------------------------------------------------- + * Put an alignment marker. + * @param frame + * @param width + * @param ox,oy center coordinate of the pattern + */ + public static function putAlignmentMarker(array &$frame, $ox, $oy) + { + $finder = array( + "\xa1\xa1\xa1\xa1\xa1", + "\xa1\xa0\xa0\xa0\xa1", + "\xa1\xa0\xa1\xa0\xa1", + "\xa1\xa0\xa0\xa0\xa1", + "\xa1\xa1\xa1\xa1\xa1" + ); + + $yStart = $oy-2; + $xStart = $ox-2; + + for($y=0; $y<5; $y++) { + QRstr::set($frame, $xStart, $yStart+$y, $finder[$y]); + } + } + + //---------------------------------------------------------------------- + public static function putAlignmentPattern($version, &$frame, $width) + { + if($version < 2) + return; + + $d = self::$alignmentPattern[$version][1] - self::$alignmentPattern[$version][0]; + if($d < 0) { + $w = 2; + } else { + $w = (int)(($width - self::$alignmentPattern[$version][0]) / $d + 2); + } + + if($w * $w - 3 == 1) { + $x = self::$alignmentPattern[$version][0]; + $y = self::$alignmentPattern[$version][0]; + self::putAlignmentMarker($frame, $x, $y); + return; + } + + $cx = self::$alignmentPattern[$version][0]; + for($x=1; $x<$w - 1; $x++) { + self::putAlignmentMarker($frame, 6, $cx); + self::putAlignmentMarker($frame, $cx, 6); + $cx += $d; + } + + $cy = self::$alignmentPattern[$version][0]; + for($y=0; $y<$w-1; $y++) { + $cx = self::$alignmentPattern[$version][0]; + for($x=0; $x<$w-1; $x++) { + self::putAlignmentMarker($frame, $cx, $cy); + $cx += $d; + } + $cy += $d; + } + } + + // Version information pattern ----------------------------------------- + + // Version information pattern (BCH coded). + // See Table 1 in Appendix D (pp.68) of JIS X0510:2004. + + // size: [QRSPEC_VERSION_MAX - 6] + + public static $versionPattern = array( + 0x07c94, 0x085bc, 0x09a99, 0x0a4d3, 0x0bbf6, 0x0c762, 0x0d847, 0x0e60d, + 0x0f928, 0x10b78, 0x1145d, 0x12a17, 0x13532, 0x149a6, 0x15683, 0x168c9, + 0x177ec, 0x18ec4, 0x191e1, 0x1afab, 0x1b08e, 0x1cc1a, 0x1d33f, 0x1ed75, + 0x1f250, 0x209d5, 0x216f0, 0x228ba, 0x2379f, 0x24b0b, 0x2542e, 0x26a64, + 0x27541, 0x28c69 + ); + + //---------------------------------------------------------------------- + public static function getVersionPattern($version) + { + if($version < 7 || $version > QRSPEC_VERSION_MAX) + return 0; + + return self::$versionPattern[$version -7]; + } + + // Format information -------------------------------------------------- + // See calcFormatInfo in tests/test_qrspec.c (orginal qrencode c lib) + + public static $formatInfo = array( + array(0x77c4, 0x72f3, 0x7daa, 0x789d, 0x662f, 0x6318, 0x6c41, 0x6976), + array(0x5412, 0x5125, 0x5e7c, 0x5b4b, 0x45f9, 0x40ce, 0x4f97, 0x4aa0), + array(0x355f, 0x3068, 0x3f31, 0x3a06, 0x24b4, 0x2183, 0x2eda, 0x2bed), + array(0x1689, 0x13be, 0x1ce7, 0x19d0, 0x0762, 0x0255, 0x0d0c, 0x083b) + ); + + public static function getFormatInfo($mask, $level) + { + if($mask < 0 || $mask > 7) + return 0; + + if($level < 0 || $level > 3) + return 0; + + return self::$formatInfo[$level][$mask]; + } + + // Frame --------------------------------------------------------------- + // Cache of initial frames. + + public static $frames = array(); + + /** -------------------------------------------------------------------- + * Put a finder pattern. + * @param frame + * @param width + * @param ox,oy upper-left coordinate of the pattern + */ + public static function putFinderPattern(&$frame, $ox, $oy) + { + $finder = array( + "\xc1\xc1\xc1\xc1\xc1\xc1\xc1", + "\xc1\xc0\xc0\xc0\xc0\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc1\xc1\xc1\xc0\xc1", + "\xc1\xc0\xc0\xc0\xc0\xc0\xc1", + "\xc1\xc1\xc1\xc1\xc1\xc1\xc1" + ); + + for($y=0; $y<7; $y++) { + QRstr::set($frame, $ox, $oy+$y, $finder[$y]); + } + } + + //---------------------------------------------------------------------- + public static function createFrame($version) + { + $width = self::$capacity[$version][QRCAP_WIDTH]; + $frameLine = str_repeat ("\0", $width); + $frame = array_fill(0, $width, $frameLine); + + // Finder pattern + self::putFinderPattern($frame, 0, 0); + self::putFinderPattern($frame, $width - 7, 0); + self::putFinderPattern($frame, 0, $width - 7); + + // Separator + $yOffset = $width - 7; + + for($y=0; $y<7; $y++) { + $frame[$y][7] = "\xc0"; + $frame[$y][$width - 8] = "\xc0"; + $frame[$yOffset][7] = "\xc0"; + $yOffset++; + } + + $setPattern = str_repeat("\xc0", 8); + + QRstr::set($frame, 0, 7, $setPattern); + QRstr::set($frame, $width-8, 7, $setPattern); + QRstr::set($frame, 0, $width - 8, $setPattern); + + // Format info + $setPattern = str_repeat("\x84", 9); + QRstr::set($frame, 0, 8, $setPattern); + QRstr::set($frame, $width - 8, 8, $setPattern, 8); + + $yOffset = $width - 8; + + for($y=0; $y<8; $y++,$yOffset++) { + $frame[$y][8] = "\x84"; + $frame[$yOffset][8] = "\x84"; + } + + // Timing pattern + + for($i=1; $i<$width-15; $i++) { + $frame[6][7+$i] = chr(0x90 | ($i & 1)); + $frame[7+$i][6] = chr(0x90 | ($i & 1)); + } + + // Alignment pattern + self::putAlignmentPattern($version, $frame, $width); + + // Version information + if($version >= 7) { + $vinf = self::getVersionPattern($version); + + $v = $vinf; + + for($x=0; $x<6; $x++) { + for($y=0; $y<3; $y++) { + $frame[($width - 11)+$y][$x] = chr(0x88 | ($v & 1)); + $v = $v >> 1; + } + } + + $v = $vinf; + for($y=0; $y<6; $y++) { + for($x=0; $x<3; $x++) { + $frame[$y][$x+($width - 11)] = chr(0x88 | ($v & 1)); + $v = $v >> 1; + } + } + } + + // and a little bit... + $frame[$width - 8][8] = "\x81"; + + return $frame; + } + + //---------------------------------------------------------------------- + public static function debug($frame, $binary_mode = false) + { + if ($binary_mode) { + + foreach ($frame as &$frameLine) { + $frameLine = join('  ', explode('0', $frameLine)); + $frameLine = join('██', explode('1', $frameLine)); + } + + ?> + +


        '; + echo join("
        ", $frame); + echo '






'; + + } else { + + foreach ($frame as &$frameLine) { + $frameLine = join(' ', explode("\xc0", $frameLine)); + $frameLine = join('', explode("\xc1", $frameLine)); + $frameLine = join(' ', explode("\xa0", $frameLine)); + $frameLine = join('', explode("\xa1", $frameLine)); + $frameLine = join('', explode("\x84", $frameLine)); //format 0 + $frameLine = join('', explode("\x85", $frameLine)); //format 1 + $frameLine = join('', explode("\x81", $frameLine)); //special bit + $frameLine = join(' ', explode("\x90", $frameLine)); //clock 0 + $frameLine = join('', explode("\x91", $frameLine)); //clock 1 + $frameLine = join(' ', explode("\x88", $frameLine)); //version + $frameLine = join('', explode("\x89", $frameLine)); //version + $frameLine = join('♦', explode("\x01", $frameLine)); + $frameLine = join('⋅', explode("\0", $frameLine)); + } + + ?> + + "; + echo join("
", $frame); + echo "
"; + + } + } + + //---------------------------------------------------------------------- + public static function serial($frame) + { + return gzcompress(join("\n", $frame), 9); + } + + //---------------------------------------------------------------------- + public static function unserial($code) + { + return explode("\n", gzuncompress($code)); + } + + //---------------------------------------------------------------------- + public static function newFrame($version) + { + if($version < 1 || $version > QRSPEC_VERSION_MAX) + return null; + + if(!isset(self::$frames[$version])) { + + $fileName = QR_CACHE_DIR.'frame_'.$version.'.dat'; + + if (QR_CACHEABLE) { + if (file_exists($fileName)) { + self::$frames[$version] = self::unserial(file_get_contents($fileName)); + } else { + self::$frames[$version] = self::createFrame($version); + file_put_contents($fileName, self::serial(self::$frames[$version])); + } + } else { + self::$frames[$version] = self::createFrame($version); + } + } + + if(is_null(self::$frames[$version])) + return null; + + return self::$frames[$version]; + } + + //---------------------------------------------------------------------- + public static function rsBlockNum($spec) { return $spec[0] + $spec[3]; } + public static function rsBlockNum1($spec) { return $spec[0]; } + public static function rsDataCodes1($spec) { return $spec[1]; } + public static function rsEccCodes1($spec) { return $spec[2]; } + public static function rsBlockNum2($spec) { return $spec[3]; } + public static function rsDataCodes2($spec) { return $spec[4]; } + public static function rsEccCodes2($spec) { return $spec[2]; } + public static function rsDataLength($spec) { return ($spec[0] * $spec[1]) + ($spec[3] * $spec[4]); } + public static function rsEccLength($spec) { return ($spec[0] + $spec[3]) * $spec[2]; } + + } + + + +//---- qrimage.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Image output of code using GD2 + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + define('QR_IMAGE', true); + + class QRimage { + + //---------------------------------------------------------------------- + public static function png($frame, $filename = false, $pixelPerPoint = 4, $outerFrame = 4,$saveandprint=FALSE) + { + $image = self::image($frame, $pixelPerPoint, $outerFrame); + + if ($filename === false) { + Header("Content-type: image/png"); + ImagePng($image); + } else { + if($saveandprint===TRUE){ + ImagePng($image, $filename); + header("Content-type: image/png"); + ImagePng($image); + }else{ + ImagePng($image, $filename); + } + } + + ImageDestroy($image); + } + + //---------------------------------------------------------------------- + public static function jpg($frame, $filename = false, $pixelPerPoint = 8, $outerFrame = 4, $q = 85) + { + $image = self::image($frame, $pixelPerPoint, $outerFrame); + + if ($filename === false) { + Header("Content-type: image/jpeg"); + ImageJpeg($image, null, $q); + } else { + ImageJpeg($image, $filename, $q); + } + + ImageDestroy($image); + } + + //---------------------------------------------------------------------- + private static function image($frame, $pixelPerPoint = 4, $outerFrame = 4) + { + $h = count($frame); + $w = strlen($frame[0]); + + $imgW = $w + 2*$outerFrame; + $imgH = $h + 2*$outerFrame; + + $base_image =ImageCreate($imgW, $imgH); + + $col[0] = ImageColorAllocate($base_image,255,255,255); + $col[1] = ImageColorAllocate($base_image,0,0,0); + + imagefill($base_image, 0, 0, $col[0]); + + for($y=0; $y<$h; $y++) { + for($x=0; $x<$w; $x++) { + if ($frame[$y][$x] == '1') { + ImageSetPixel($base_image,$x+$outerFrame,$y+$outerFrame,$col[1]); + } + } + } + + $target_image =ImageCreate($imgW * $pixelPerPoint, $imgH * $pixelPerPoint); + ImageCopyResized($target_image, $base_image, 0, 0, 0, 0, $imgW * $pixelPerPoint, $imgH * $pixelPerPoint, $imgW, $imgH); + ImageDestroy($base_image); + + return $target_image; + } + } + + + +//---- qrinput.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Input encoding class + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + define('STRUCTURE_HEADER_BITS', 20); + define('MAX_STRUCTURED_SYMBOLS', 16); + + class QRinputItem { + + public $mode; + public $size; + public $data; + public $bstream; + + public function __construct($mode, $size, $data, $bstream = null) + { + $setData = array_slice($data, 0, $size); + + if (count($setData) < $size) { + $setData = array_merge($setData, array_fill(0,$size-count($setData),0)); + } + + if(!QRinput::check($mode, $size, $setData)) { + throw new \Exception('Error m:'.$mode.',s:'.$size.',d:'.join(',',$setData)); + return null; + } + + $this->mode = $mode; + $this->size = $size; + $this->data = $setData; + $this->bstream = $bstream; + } + + //---------------------------------------------------------------------- + public function encodeModeNum($version) + { + try { + + $words = (int)($this->size / 3); + $bs = new QRbitstream(); + + $val = 0x1; + $bs->appendNum(4, $val); + $bs->appendNum(QRspec::lengthIndicator(QR_MODE_NUM, $version), $this->size); + + for($i=0; $i<$words; $i++) { + $val = (ord($this->data[$i*3 ]) - ord('0')) * 100; + $val += (ord($this->data[$i*3+1]) - ord('0')) * 10; + $val += (ord($this->data[$i*3+2]) - ord('0')); + $bs->appendNum(10, $val); + } + + if($this->size - $words * 3 == 1) { + $val = ord($this->data[$words*3]) - ord('0'); + $bs->appendNum(4, $val); + } else if($this->size - $words * 3 == 2) { + $val = (ord($this->data[$words*3 ]) - ord('0')) * 10; + $val += (ord($this->data[$words*3+1]) - ord('0')); + $bs->appendNum(7, $val); + } + + $this->bstream = $bs; + return 0; + + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function encodeModeAn($version) + { + try { + $words = (int)($this->size / 2); + $bs = new QRbitstream(); + + $bs->appendNum(4, 0x02); + $bs->appendNum(QRspec::lengthIndicator(QR_MODE_AN, $version), $this->size); + + for($i=0; $i<$words; $i++) { + $val = (int)QRinput::lookAnTable(ord($this->data[$i*2 ])) * 45; + $val += (int)QRinput::lookAnTable(ord($this->data[$i*2+1])); + + $bs->appendNum(11, $val); + } + + if($this->size & 1) { + $val = QRinput::lookAnTable(ord($this->data[$words * 2])); + $bs->appendNum(6, $val); + } + + $this->bstream = $bs; + return 0; + + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function encodeMode8($version) + { + try { + $bs = new QRbitstream(); + + $bs->appendNum(4, 0x4); + $bs->appendNum(QRspec::lengthIndicator(QR_MODE_8, $version), $this->size); + + for($i=0; $i<$this->size; $i++) { + $bs->appendNum(8, ord($this->data[$i])); + } + + $this->bstream = $bs; + return 0; + + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function encodeModeKanji($version) + { + try { + + $bs = new QRbitrtream(); + + $bs->appendNum(4, 0x8); + $bs->appendNum(QRspec::lengthIndicator(QR_MODE_KANJI, $version), (int)($this->size / 2)); + + for($i=0; $i<$this->size; $i+=2) { + $val = (ord($this->data[$i]) << 8) | ord($this->data[$i+1]); + if($val <= 0x9ffc) { + $val -= 0x8140; + } else { + $val -= 0xc140; + } + + $h = ($val >> 8) * 0xc0; + $val = ($val & 0xff) + $h; + + $bs->appendNum(13, $val); + } + + $this->bstream = $bs; + return 0; + + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function encodeModeStructure() + { + try { + $bs = new QRbitstream(); + + $bs->appendNum(4, 0x03); + $bs->appendNum(4, ord($this->data[1]) - 1); + $bs->appendNum(4, ord($this->data[0]) - 1); + $bs->appendNum(8, ord($this->data[2])); + + $this->bstream = $bs; + return 0; + + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function estimateBitStreamSizeOfEntry($version) + { + $bits = 0; + + if($version == 0) + $version = 1; + + switch($this->mode) { + case QR_MODE_NUM: $bits = QRinput::estimateBitsModeNum($this->size); break; + case QR_MODE_AN: $bits = QRinput::estimateBitsModeAn($this->size); break; + case QR_MODE_8: $bits = QRinput::estimateBitsMode8($this->size); break; + case QR_MODE_KANJI: $bits = QRinput::estimateBitsModeKanji($this->size);break; + case QR_MODE_STRUCTURE: return STRUCTURE_HEADER_BITS; + default: + return 0; + } + + $l = QRspec::lengthIndicator($this->mode, $version); + $m = 1 << $l; + $num = (int)(($this->size + $m - 1) / $m); + + $bits += $num * (4 + $l); + + return $bits; + } + + //---------------------------------------------------------------------- + public function encodeBitStream($version) + { + try { + + unset($this->bstream); + $words = QRspec::maximumWords($this->mode, $version); + + if($this->size > $words) { + + $st1 = new QRinputItem($this->mode, $words, $this->data); + $st2 = new QRinputItem($this->mode, $this->size - $words, array_slice($this->data, $words)); + + $st1->encodeBitStream($version); + $st2->encodeBitStream($version); + + $this->bstream = new QRbitstream(); + $this->bstream->append($st1->bstream); + $this->bstream->append($st2->bstream); + + unset($st1); + unset($st2); + + } else { + + $ret = 0; + + switch($this->mode) { + case QR_MODE_NUM: $ret = $this->encodeModeNum($version); break; + case QR_MODE_AN: $ret = $this->encodeModeAn($version); break; + case QR_MODE_8: $ret = $this->encodeMode8($version); break; + case QR_MODE_KANJI: $ret = $this->encodeModeKanji($version);break; + case QR_MODE_STRUCTURE: $ret = $this->encodeModeStructure(); break; + + default: + break; + } + + if($ret < 0) + return -1; + } + + return $this->bstream->size(); + + } catch (Exception $e) { + return -1; + } + } + }; + + //########################################################################## + + class QRinput { + + public $items; + + private $version; + private $level; + + //---------------------------------------------------------------------- + public function __construct($version = 0, $level = QR_ECLEVEL_L) + { + if ($version < 0 || $version > QRSPEC_VERSION_MAX || $level > QR_ECLEVEL_H) { + throw new \Exception('Invalid version no'); + return NULL; + } + + $this->version = $version; + $this->level = $level; + } + + //---------------------------------------------------------------------- + public function getVersion() + { + return $this->version; + } + + //---------------------------------------------------------------------- + public function setVersion($version) + { + if($version < 0 || $version > QRSPEC_VERSION_MAX) { + throw new \Exception('Invalid version no'); + return -1; + } + + $this->version = $version; + + return 0; + } + + //---------------------------------------------------------------------- + public function getErrorCorrectionLevel() + { + return $this->level; + } + + //---------------------------------------------------------------------- + public function setErrorCorrectionLevel($level) + { + if($level > QR_ECLEVEL_H) { + throw new \Exception('Invalid ECLEVEL'); + return -1; + } + + $this->level = $level; + + return 0; + } + + //---------------------------------------------------------------------- + public function appendEntry(QRinputItem $entry) + { + $this->items[] = $entry; + } + + //---------------------------------------------------------------------- + public function append($mode, $size, $data) + { + try { + $entry = new QRinputItem($mode, $size, $data); + $this->items[] = $entry; + return 0; + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + + public function insertStructuredAppendHeader($size, $index, $parity) + { + if( $size > MAX_STRUCTURED_SYMBOLS ) { + throw new \Exception('insertStructuredAppendHeader wrong size'); + } + + if( $index <= 0 || $index > MAX_STRUCTURED_SYMBOLS ) { + throw new \Exception('insertStructuredAppendHeader wrong index'); + } + + $buf = array($size, $index, $parity); + + try { + $entry = new QRinputItem(QR_MODE_STRUCTURE, 3, buf); + array_unshift($this->items, $entry); + return 0; + } catch (Exception $e) { + return -1; + } + } + + //---------------------------------------------------------------------- + public function calcParity() + { + $parity = 0; + + foreach($this->items as $item) { + if($item->mode != QR_MODE_STRUCTURE) { + for($i=$item->size-1; $i>=0; $i--) { + $parity ^= $item->data[$i]; + } + } + } + + return $parity; + } + + //---------------------------------------------------------------------- + public static function checkModeNum($size, $data) + { + for($i=0; $i<$size; $i++) { + if((ord($data[$i]) < ord('0')) || (ord($data[$i]) > ord('9'))){ + return false; + } + } + + return true; + } + + //---------------------------------------------------------------------- + public static function estimateBitsModeNum($size) + { + $w = (int)$size / 3; + $bits = $w * 10; + + switch($size - $w * 3) { + case 1: + $bits += 4; + break; + case 2: + $bits += 7; + break; + default: + break; + } + + return $bits; + } + + //---------------------------------------------------------------------- + public static $anTable = array( + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 36, -1, -1, -1, 37, 38, -1, -1, -1, -1, 39, 40, -1, 41, 42, 43, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 44, -1, -1, -1, -1, -1, + -1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 + ); + + //---------------------------------------------------------------------- + public static function lookAnTable($c) + { + return (($c > 127)?-1:self::$anTable[$c]); + } + + //---------------------------------------------------------------------- + public static function checkModeAn($size, $data) + { + for($i=0; $i<$size; $i++) { + if (self::lookAnTable(ord($data[$i])) == -1) { + return false; + } + } + + return true; + } + + //---------------------------------------------------------------------- + public static function estimateBitsModeAn($size) + { + $w = (int)($size / 2); + $bits = $w * 11; + + if($size & 1) { + $bits += 6; + } + + return $bits; + } + + //---------------------------------------------------------------------- + public static function estimateBitsMode8($size) + { + return $size * 8; + } + + //---------------------------------------------------------------------- + public function estimateBitsModeKanji($size) + { + return (int)(($size / 2) * 13); + } + + //---------------------------------------------------------------------- + public static function checkModeKanji($size, $data) + { + if($size & 1) + return false; + + for($i=0; $i<$size; $i+=2) { + $val = (ord($data[$i]) << 8) | ord($data[$i+1]); + if( $val < 0x8140 + || ($val > 0x9ffc && $val < 0xe040) + || $val > 0xebbf) { + return false; + } + } + + return true; + } + + /*********************************************************************** + * Validation + **********************************************************************/ + + public static function check($mode, $size, $data) + { + if($size <= 0) + return false; + + switch($mode) { + case QR_MODE_NUM: return self::checkModeNum($size, $data); break; + case QR_MODE_AN: return self::checkModeAn($size, $data); break; + case QR_MODE_KANJI: return self::checkModeKanji($size, $data); break; + case QR_MODE_8: return true; break; + case QR_MODE_STRUCTURE: return true; break; + + default: + break; + } + + return false; + } + + + //---------------------------------------------------------------------- + public function estimateBitStreamSize($version) + { + $bits = 0; + + foreach($this->items as $item) { + $bits += $item->estimateBitStreamSizeOfEntry($version); + } + + return $bits; + } + + //---------------------------------------------------------------------- + public function estimateVersion() + { + $version = 0; + $prev = 0; + do { + $prev = $version; + $bits = $this->estimateBitStreamSize($prev); + $version = QRspec::getMinimumVersion((int)(($bits + 7) / 8), $this->level); + if ($version < 0) { + return -1; + } + } while ($version > $prev); + + return $version; + } + + //---------------------------------------------------------------------- + public static function lengthOfCode($mode, $version, $bits) + { + $payload = $bits - 4 - QRspec::lengthIndicator($mode, $version); + switch($mode) { + case QR_MODE_NUM: + $chunks = (int)($payload / 10); + $remain = $payload - $chunks * 10; + $size = $chunks * 3; + if($remain >= 7) { + $size += 2; + } else if($remain >= 4) { + $size += 1; + } + break; + case QR_MODE_AN: + $chunks = (int)($payload / 11); + $remain = $payload - $chunks * 11; + $size = $chunks * 2; + if($remain >= 6) + $size++; + break; + case QR_MODE_8: + $size = (int)($payload / 8); + break; + case QR_MODE_KANJI: + $size = (int)(($payload / 13) * 2); + break; + case QR_MODE_STRUCTURE: + $size = (int)($payload / 8); + break; + default: + $size = 0; + break; + } + + $maxsize = QRspec::maximumWords($mode, $version); + if($size < 0) $size = 0; + if($size > $maxsize) $size = $maxsize; + + return $size; + } + + //---------------------------------------------------------------------- + public function createBitStream() + { + $total = 0; + + foreach($this->items as $item) { + $bits = $item->encodeBitStream($this->version); + + if($bits < 0) + return -1; + + $total += $bits; + } + + return $total; + } + + //---------------------------------------------------------------------- + public function convertData() + { + $ver = $this->estimateVersion(); + if($ver > $this->getVersion()) { + $this->setVersion($ver); + } + + for(;;) { + $bits = $this->createBitStream(); + + if($bits < 0) + return -1; + + $ver = QRspec::getMinimumVersion((int)(($bits + 7) / 8), $this->level); + if($ver < 0) { + throw new \Exception('WRONG VERSION'); + return -1; + } else if($ver > $this->getVersion()) { + $this->setVersion($ver); + } else { + break; + } + } + + return 0; + } + + //---------------------------------------------------------------------- + public function appendPaddingBit(&$bstream) + { + $bits = $bstream->size(); + $maxwords = QRspec::getDataLength($this->version, $this->level); + $maxbits = $maxwords * 8; + + if ($maxbits == $bits) { + return 0; + } + + if ($maxbits - $bits < 5) { + return $bstream->appendNum($maxbits - $bits, 0); + } + + $bits += 4; + $words = (int)(($bits + 7) / 8); + + $padding = new QRbitstream(); + $ret = $padding->appendNum($words * 8 - $bits + 4, 0); + + if($ret < 0) + return $ret; + + $padlen = $maxwords - $words; + + if($padlen > 0) { + + $padbuf = array(); + for($i=0; $i<$padlen; $i++) { + $padbuf[$i] = ($i&1)?0x11:0xec; + } + + $ret = $padding->appendBytes($padlen, $padbuf); + + if($ret < 0) + return $ret; + + } + + $ret = $bstream->append($padding); + + return $ret; + } + + //---------------------------------------------------------------------- + public function mergeBitStream() + { + if($this->convertData() < 0) { + return null; + } + + $bstream = new QRbitstream(); + + foreach($this->items as $item) { + $ret = $bstream->append($item->bstream); + if($ret < 0) { + return null; + } + } + + return $bstream; + } + + //---------------------------------------------------------------------- + public function getBitStream() + { + + $bstream = $this->mergeBitStream(); + + if($bstream == null) { + return null; + } + + $ret = $this->appendPaddingBit($bstream); + if($ret < 0) { + return null; + } + + return $bstream; + } + + //---------------------------------------------------------------------- + public function getByteStream() + { + $bstream = $this->getBitStream(); + if($bstream == null) { + return null; + } + + return $bstream->toByte(); + } + } + + + + + + +//---- qrbitstream.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Bitstream class + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + class QRbitstream { + + public $data = array(); + + //---------------------------------------------------------------------- + public function size() + { + return count($this->data); + } + + //---------------------------------------------------------------------- + public function allocate($setLength) + { + $this->data = array_fill(0, $setLength, 0); + return 0; + } + + //---------------------------------------------------------------------- + public static function newFromNum($bits, $num) + { + $bstream = new QRbitstream(); + $bstream->allocate($bits); + + $mask = 1 << ($bits - 1); + for($i=0; $i<$bits; $i++) { + if($num & $mask) { + $bstream->data[$i] = 1; + } else { + $bstream->data[$i] = 0; + } + $mask = $mask >> 1; + } + + return $bstream; + } + + //---------------------------------------------------------------------- + public static function newFromBytes($size, $data) + { + $bstream = new QRbitstream(); + $bstream->allocate($size * 8); + $p=0; + + for($i=0; $i<$size; $i++) { + $mask = 0x80; + for($j=0; $j<8; $j++) { + if($data[$i] & $mask) { + $bstream->data[$p] = 1; + } else { + $bstream->data[$p] = 0; + } + $p++; + $mask = $mask >> 1; + } + } + + return $bstream; + } + + //---------------------------------------------------------------------- + public function append(QRbitstream $arg) + { + if (is_null($arg)) { + return -1; + } + + if($arg->size() == 0) { + return 0; + } + + if($this->size() == 0) { + $this->data = $arg->data; + return 0; + } + + $this->data = array_values(array_merge($this->data, $arg->data)); + + return 0; + } + + //---------------------------------------------------------------------- + public function appendNum($bits, $num) + { + if ($bits == 0) + return 0; + + $b = QRbitstream::newFromNum($bits, $num); + + if(is_null($b)) + return -1; + + $ret = $this->append($b); + unset($b); + + return $ret; + } + + //---------------------------------------------------------------------- + public function appendBytes($size, $data) + { + if ($size == 0) + return 0; + + $b = QRbitstream::newFromBytes($size, $data); + + if(is_null($b)) + return -1; + + $ret = $this->append($b); + unset($b); + + return $ret; + } + + //---------------------------------------------------------------------- + public function toByte() + { + + $size = $this->size(); + + if($size == 0) { + return array(); + } + + $data = array_fill(0, (int)(($size + 7) / 8), 0); + $bytes = (int)($size / 8); + + $p = 0; + + for($i=0; $i<$bytes; $i++) { + $v = 0; + for($j=0; $j<8; $j++) { + $v = $v << 1; + $v |= $this->data[$p]; + $p++; + } + $data[$i] = $v; + } + + if($size & 7) { + $v = 0; + for($j=0; $j<($size & 7); $j++) { + $v = $v << 1; + $v |= $this->data[$p]; + $p++; + } + $data[$bytes] = $v; + } + + return $data; + } + + } + + + + +//---- qrsplit.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Input splitting classes + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * The following data / specifications are taken from + * "Two dimensional symbol -- QR-code -- Basic Specification" (JIS X0510:2004) + * or + * "Automatic identification and data capture techniques -- + * QR Code 2005 bar code symbology specification" (ISO/IEC 18004:2006) + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + class QRsplit { + + public $dataStr = ''; + public $input; + public $modeHint; + + //---------------------------------------------------------------------- + public function __construct($dataStr, $input, $modeHint) + { + $this->dataStr = $dataStr; + $this->input = $input; + $this->modeHint = $modeHint; + } + + //---------------------------------------------------------------------- + public static function isdigitat($str, $pos) + { + if ($pos >= strlen($str)) + return false; + + return ((ord($str[$pos]) >= ord('0'))&&(ord($str[$pos]) <= ord('9'))); + } + + //---------------------------------------------------------------------- + public static function isalnumat($str, $pos) + { + if ($pos >= strlen($str)) + return false; + + return (QRinput::lookAnTable(ord($str[$pos])) >= 0); + } + + //---------------------------------------------------------------------- + public function identifyMode($pos) + { + if ($pos >= strlen($this->dataStr)) + return QR_MODE_NUL; + + $c = $this->dataStr[$pos]; + + if(self::isdigitat($this->dataStr, $pos)) { + return QR_MODE_NUM; + } else if(self::isalnumat($this->dataStr, $pos)) { + return QR_MODE_AN; + } else if($this->modeHint == QR_MODE_KANJI) { + + if ($pos+1 < strlen($this->dataStr)) + { + $d = $this->dataStr[$pos+1]; + $word = (ord($c) << 8) | ord($d); + if(($word >= 0x8140 && $word <= 0x9ffc) || ($word >= 0xe040 && $word <= 0xebbf)) { + return QR_MODE_KANJI; + } + } + } + + return QR_MODE_8; + } + + //---------------------------------------------------------------------- + public function eatNum() + { + $ln = QRspec::lengthIndicator(QR_MODE_NUM, $this->input->getVersion()); + + $p = 0; + while(self::isdigitat($this->dataStr, $p)) { + $p++; + } + + $run = $p; + $mode = $this->identifyMode($p); + + if($mode == QR_MODE_8) { + $dif = QRinput::estimateBitsModeNum($run) + 4 + $ln + + QRinput::estimateBitsMode8(1) // + 4 + l8 + - QRinput::estimateBitsMode8($run + 1); // - 4 - l8 + if($dif > 0) { + return $this->eat8(); + } + } + if($mode == QR_MODE_AN) { + $dif = QRinput::estimateBitsModeNum($run) + 4 + $ln + + QRinput::estimateBitsModeAn(1) // + 4 + la + - QRinput::estimateBitsModeAn($run + 1);// - 4 - la + if($dif > 0) { + return $this->eatAn(); + } + } + + $ret = $this->input->append(QR_MODE_NUM, $run, str_split($this->dataStr)); + if($ret < 0) + return -1; + + return $run; + } + + //---------------------------------------------------------------------- + public function eatAn() + { + $la = QRspec::lengthIndicator(QR_MODE_AN, $this->input->getVersion()); + $ln = QRspec::lengthIndicator(QR_MODE_NUM, $this->input->getVersion()); + + $p = 0; + + while(self::isalnumat($this->dataStr, $p)) { + if(self::isdigitat($this->dataStr, $p)) { + $q = $p; + while(self::isdigitat($this->dataStr, $q)) { + $q++; + } + + $dif = QRinput::estimateBitsModeAn($p) // + 4 + la + + QRinput::estimateBitsModeNum($q - $p) + 4 + $ln + - QRinput::estimateBitsModeAn($q); // - 4 - la + + if($dif < 0) { + break; + } else { + $p = $q; + } + } else { + $p++; + } + } + + $run = $p; + + if(!self::isalnumat($this->dataStr, $p)) { + $dif = QRinput::estimateBitsModeAn($run) + 4 + $la + + QRinput::estimateBitsMode8(1) // + 4 + l8 + - QRinput::estimateBitsMode8($run + 1); // - 4 - l8 + if($dif > 0) { + return $this->eat8(); + } + } + + $ret = $this->input->append(QR_MODE_AN, $run, str_split($this->dataStr)); + if($ret < 0) + return -1; + + return $run; + } + + //---------------------------------------------------------------------- + public function eatKanji() + { + $p = 0; + + while($this->identifyMode($p) == QR_MODE_KANJI) { + $p += 2; + } + + $ret = $this->input->append(QR_MODE_KANJI, $p, str_split($this->dataStr)); + if($ret < 0) + return -1; + + return $run; + } + + //---------------------------------------------------------------------- + public function eat8() + { + $la = QRspec::lengthIndicator(QR_MODE_AN, $this->input->getVersion()); + $ln = QRspec::lengthIndicator(QR_MODE_NUM, $this->input->getVersion()); + + $p = 1; + $dataStrLen = strlen($this->dataStr); + + while($p < $dataStrLen) { + + $mode = $this->identifyMode($p); + if($mode == QR_MODE_KANJI) { + break; + } + if($mode == QR_MODE_NUM) { + $q = $p; + while(self::isdigitat($this->dataStr, $q)) { + $q++; + } + $dif = QRinput::estimateBitsMode8($p) // + 4 + l8 + + QRinput::estimateBitsModeNum($q - $p) + 4 + $ln + - QRinput::estimateBitsMode8($q); // - 4 - l8 + if($dif < 0) { + break; + } else { + $p = $q; + } + } else if($mode == QR_MODE_AN) { + $q = $p; + while(self::isalnumat($this->dataStr, $q)) { + $q++; + } + $dif = QRinput::estimateBitsMode8($p) // + 4 + l8 + + QRinput::estimateBitsModeAn($q - $p) + 4 + $la + - QRinput::estimateBitsMode8($q); // - 4 - l8 + if($dif < 0) { + break; + } else { + $p = $q; + } + } else { + $p++; + } + } + + $run = $p; + $ret = $this->input->append(QR_MODE_8, $run, str_split($this->dataStr)); + + if($ret < 0) + return -1; + + return $run; + } + + //---------------------------------------------------------------------- + public function splitString() + { + while (strlen($this->dataStr) > 0) + { + if($this->dataStr == '') + return 0; + + $mode = $this->identifyMode(0); + + switch ($mode) { + case QR_MODE_NUM: $length = $this->eatNum(); break; + case QR_MODE_AN: $length = $this->eatAn(); break; + case QR_MODE_KANJI: + if ($hint == QR_MODE_KANJI) + $length = $this->eatKanji(); + else $length = $this->eat8(); + break; + default: $length = $this->eat8(); break; + + } + + if($length == 0) return 0; + if($length < 0) return -1; + + $this->dataStr = substr($this->dataStr, $length); + } + } + + //---------------------------------------------------------------------- + public function toUpper() + { + $stringLen = strlen($this->dataStr); + $p = 0; + + while ($p<$stringLen) { + $mode = self::identifyMode(substr($this->dataStr, $p), $this->modeHint); + if($mode == QR_MODE_KANJI) { + $p += 2; + } else { + if (ord($this->dataStr[$p]) >= ord('a') && ord($this->dataStr[$p]) <= ord('z')) { + $this->dataStr[$p] = chr(ord($this->dataStr[$p]) - 32); + } + $p++; + } + } + + return $this->dataStr; + } + + //---------------------------------------------------------------------- + public static function splitStringToQRinput($string, QRinput $input, $modeHint, $casesensitive = true) + { + if(is_null($string) || $string == '\0' || $string == '') { + throw new \Exception('empty string!!!'); + } + + $split = new QRsplit($string, $input, $modeHint); + + if(!$casesensitive) + $split->toUpper(); + + return $split->splitString(); + } + } + + + +//---- qrrscode.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Reed-Solomon error correction support + * + * Copyright (C) 2002, 2003, 2004, 2006 Phil Karn, KA9Q + * (libfec is released under the GNU Lesser General Public License.) + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + class QRrsItem { + + public $mm; // Bits per symbol + public $nn; // Symbols per block (= (1<= $this->nn) { + $x -= $this->nn; + $x = ($x >> $this->mm) + ($x & $this->nn); + } + + return $x; + } + + //---------------------------------------------------------------------- + public static function init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) + { + // Common code for intializing a Reed-Solomon control block (char or int symbols) + // Copyright 2004 Phil Karn, KA9Q + // May be used under the terms of the GNU Lesser General Public License (LGPL) + + $rs = null; + + // Check parameter ranges + if($symsize < 0 || $symsize > 8) return $rs; + if($fcr < 0 || $fcr >= (1<<$symsize)) return $rs; + if($prim <= 0 || $prim >= (1<<$symsize)) return $rs; + if($nroots < 0 || $nroots >= (1<<$symsize)) return $rs; // Can't have more roots than symbol values! + if($pad < 0 || $pad >= ((1<<$symsize) -1 - $nroots)) return $rs; // Too much padding + + $rs = new QRrsItem(); + $rs->mm = $symsize; + $rs->nn = (1<<$symsize)-1; + $rs->pad = $pad; + + $rs->alpha_to = array_fill(0, $rs->nn+1, 0); + $rs->index_of = array_fill(0, $rs->nn+1, 0); + + // PHP style macro replacement ;) + $NN =& $rs->nn; + $A0 =& $NN; + + // Generate Galois field lookup tables + $rs->index_of[0] = $A0; // log(zero) = -inf + $rs->alpha_to[$A0] = 0; // alpha**-inf = 0 + $sr = 1; + + for($i=0; $i<$rs->nn; $i++) { + $rs->index_of[$sr] = $i; + $rs->alpha_to[$i] = $sr; + $sr <<= 1; + if($sr & (1<<$symsize)) { + $sr ^= $gfpoly; + } + $sr &= $rs->nn; + } + + if($sr != 1){ + // field generator polynomial is not primitive! + $rs = NULL; + return $rs; + } + + /* Form RS code generator polynomial from its roots */ + $rs->genpoly = array_fill(0, $nroots+1, 0); + + $rs->fcr = $fcr; + $rs->prim = $prim; + $rs->nroots = $nroots; + $rs->gfpoly = $gfpoly; + + /* Find prim-th root of 1, used in decoding */ + for($iprim=1;($iprim % $prim) != 0;$iprim += $rs->nn) + ; // intentional empty-body loop! + + $rs->iprim = (int)($iprim / $prim); + $rs->genpoly[0] = 1; + + for ($i = 0,$root=$fcr*$prim; $i < $nroots; $i++, $root += $prim) { + $rs->genpoly[$i+1] = 1; + + // Multiply rs->genpoly[] by @**(root + x) + for ($j = $i; $j > 0; $j--) { + if ($rs->genpoly[$j] != 0) { + $rs->genpoly[$j] = $rs->genpoly[$j-1] ^ $rs->alpha_to[$rs->modnn($rs->index_of[$rs->genpoly[$j]] + $root)]; + } else { + $rs->genpoly[$j] = $rs->genpoly[$j-1]; + } + } + // rs->genpoly[0] can never be zero + $rs->genpoly[0] = $rs->alpha_to[$rs->modnn($rs->index_of[$rs->genpoly[0]] + $root)]; + } + + // convert rs->genpoly[] to index form for quicker encoding + for ($i = 0; $i <= $nroots; $i++) + $rs->genpoly[$i] = $rs->index_of[$rs->genpoly[$i]]; + + return $rs; + } + + //---------------------------------------------------------------------- + public function encode_rs_char($data, &$parity) + { + $MM =& $this->mm; + $NN =& $this->nn; + $ALPHA_TO =& $this->alpha_to; + $INDEX_OF =& $this->index_of; + $GENPOLY =& $this->genpoly; + $NROOTS =& $this->nroots; + $FCR =& $this->fcr; + $PRIM =& $this->prim; + $IPRIM =& $this->iprim; + $PAD =& $this->pad; + $A0 =& $NN; + + $parity = array_fill(0, $NROOTS, 0); + + for($i=0; $i< ($NN-$NROOTS-$PAD); $i++) { + + $feedback = $INDEX_OF[$data[$i] ^ $parity[0]]; + if($feedback != $A0) { + // feedback term is non-zero + + // This line is unnecessary when GENPOLY[NROOTS] is unity, as it must + // always be for the polynomials constructed by init_rs() + $feedback = $this->modnn($NN - $GENPOLY[$NROOTS] + $feedback); + + for($j=1;$j<$NROOTS;$j++) { + $parity[$j] ^= $ALPHA_TO[$this->modnn($feedback + $GENPOLY[$NROOTS-$j])]; + } + } + + // Shift + array_shift($parity); + if($feedback != $A0) { + array_push($parity, $ALPHA_TO[$this->modnn($feedback + $GENPOLY[0])]); + } else { + array_push($parity, 0); + } + } + } + } + + //########################################################################## + + class QRrs { + + public static $items = array(); + + //---------------------------------------------------------------------- + public static function init_rs($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) + { + foreach(self::$items as $rs) { + if($rs->pad != $pad) continue; + if($rs->nroots != $nroots) continue; + if($rs->mm != $symsize) continue; + if($rs->gfpoly != $gfpoly) continue; + if($rs->fcr != $fcr) continue; + if($rs->prim != $prim) continue; + + return $rs; + } + + $rs = QRrsItem::init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad); + array_unshift(self::$items, $rs); + + return $rs; + } + } + + + +//---- qrmask.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Masking + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + define('N1', 3); + define('N2', 3); + define('N3', 40); + define('N4', 10); + + class QRmask { + + public $runLength = array(); + + //---------------------------------------------------------------------- + public function __construct() + { + $this->runLength = array_fill(0, QRSPEC_WIDTH_MAX + 1, 0); + } + + //---------------------------------------------------------------------- + public function writeFormatInformation($width, &$frame, $mask, $level) + { + $blacks = 0; + $format = QRspec::getFormatInfo($mask, $level); + + for($i=0; $i<8; $i++) { + if($format & 1) { + $blacks += 2; + $v = 0x85; + } else { + $v = 0x84; + } + + $frame[8][$width - 1 - $i] = chr($v); + if($i < 6) { + $frame[$i][8] = chr($v); + } else { + $frame[$i + 1][8] = chr($v); + } + $format = $format >> 1; + } + + for($i=0; $i<7; $i++) { + if($format & 1) { + $blacks += 2; + $v = 0x85; + } else { + $v = 0x84; + } + + $frame[$width - 7 + $i][8] = chr($v); + if($i == 0) { + $frame[8][7] = chr($v); + } else { + $frame[8][6 - $i] = chr($v); + } + + $format = $format >> 1; + } + + return $blacks; + } + + //---------------------------------------------------------------------- + public function mask0($x, $y) { return ($x+$y)&1; } + public function mask1($x, $y) { return ($y&1); } + public function mask2($x, $y) { return ($x%3); } + public function mask3($x, $y) { return ($x+$y)%3; } + public function mask4($x, $y) { return (((int)($y/2))+((int)($x/3)))&1; } + public function mask5($x, $y) { return (($x*$y)&1)+($x*$y)%3; } + public function mask6($x, $y) { return ((($x*$y)&1)+($x*$y)%3)&1; } + public function mask7($x, $y) { return ((($x*$y)%3)+(($x+$y)&1))&1; } + + //---------------------------------------------------------------------- + private function generateMaskNo($maskNo, $width, $frame) + { + $bitMask = array_fill(0, $width, array_fill(0, $width, 0)); + + for($y=0; $y<$width; $y++) { + for($x=0; $x<$width; $x++) { + if(ord($frame[$y][$x]) & 0x80) { + $bitMask[$y][$x] = 0; + } else { + $maskFunc = call_user_func(array($this, 'mask'.$maskNo), $x, $y); + $bitMask[$y][$x] = ($maskFunc == 0)?1:0; + } + + } + } + + return $bitMask; + } + + //---------------------------------------------------------------------- + public static function serial($bitFrame) + { + $codeArr = array(); + + foreach ($bitFrame as $line) + $codeArr[] = join('', $line); + + return gzcompress(join("\n", $codeArr), 9); + } + + //---------------------------------------------------------------------- + public static function unserial($code) + { + $codeArr = array(); + + $codeLines = explode("\n", gzuncompress($code)); + foreach ($codeLines as $line) + $codeArr[] = str_split($line); + + return $codeArr; + } + + //---------------------------------------------------------------------- + public function makeMaskNo($maskNo, $width, $s, &$d, $maskGenOnly = false) + { + $b = 0; + $bitMask = array(); + + $fileName = QR_CACHE_DIR.'mask_'.$maskNo.DIRECTORY_SEPARATOR.'mask_'.$width.'_'.$maskNo.'.dat'; + + if (QR_CACHEABLE) { + if (file_exists($fileName)) { + $bitMask = self::unserial(file_get_contents($fileName)); + } else { + $bitMask = $this->generateMaskNo($maskNo, $width, $s, $d); + if (!file_exists(QR_CACHE_DIR.'mask_'.$maskNo)) + mkdir(QR_CACHE_DIR.'mask_'.$maskNo); + file_put_contents($fileName, self::serial($bitMask)); + } + } else { + $bitMask = $this->generateMaskNo($maskNo, $width, $s, $d); + } + + if ($maskGenOnly) + return; + + $d = $s; + + for($y=0; $y<$width; $y++) { + for($x=0; $x<$width; $x++) { + if($bitMask[$y][$x] == 1) { + $d[$y][$x] = chr(ord($s[$y][$x]) ^ (int)$bitMask[$y][$x]); + } + $b += (int)(ord($d[$y][$x]) & 1); + } + } + + return $b; + } + + //---------------------------------------------------------------------- + public function makeMask($width, $frame, $maskNo, $level) + { + $masked = array_fill(0, $width, str_repeat("\0", $width)); + $this->makeMaskNo($maskNo, $width, $frame, $masked); + $this->writeFormatInformation($width, $masked, $maskNo, $level); + + return $masked; + } + + //---------------------------------------------------------------------- + public function calcN1N3($length) + { + $demerit = 0; + + for($i=0; $i<$length; $i++) { + + if($this->runLength[$i] >= 5) { + $demerit += (N1 + ($this->runLength[$i] - 5)); + } + if($i & 1) { + if(($i >= 3) && ($i < ($length-2)) && ($this->runLength[$i] % 3 == 0)) { + $fact = (int)($this->runLength[$i] / 3); + if(($this->runLength[$i-2] == $fact) && + ($this->runLength[$i-1] == $fact) && + ($this->runLength[$i+1] == $fact) && + ($this->runLength[$i+2] == $fact)) { + if(($this->runLength[$i-3] < 0) || ($this->runLength[$i-3] >= (4 * $fact))) { + $demerit += N3; + } else if((($i+3) >= $length) || ($this->runLength[$i+3] >= (4 * $fact))) { + $demerit += N3; + } + } + } + } + } + return $demerit; + } + + //---------------------------------------------------------------------- + public function evaluateSymbol($width, $frame) + { + $head = 0; + $demerit = 0; + + for($y=0; $y<$width; $y++) { + $head = 0; + $this->runLength[0] = 1; + + $frameY = $frame[$y]; + + if ($y>0) + $frameYM = $frame[$y-1]; + + for($x=0; $x<$width; $x++) { + if(($x > 0) && ($y > 0)) { + $b22 = ord($frameY[$x]) & ord($frameY[$x-1]) & ord($frameYM[$x]) & ord($frameYM[$x-1]); + $w22 = ord($frameY[$x]) | ord($frameY[$x-1]) | ord($frameYM[$x]) | ord($frameYM[$x-1]); + + if(($b22 | ($w22 ^ 1))&1) { + $demerit += N2; + } + } + if(($x == 0) && (ord($frameY[$x]) & 1)) { + $this->runLength[0] = -1; + $head = 1; + $this->runLength[$head] = 1; + } else if($x > 0) { + if((ord($frameY[$x]) ^ ord($frameY[$x-1])) & 1) { + $head++; + $this->runLength[$head] = 1; + } else { + $this->runLength[$head]++; + } + } + } + + $demerit += $this->calcN1N3($head+1); + } + + for($x=0; $x<$width; $x++) { + $head = 0; + $this->runLength[0] = 1; + + for($y=0; $y<$width; $y++) { + if($y == 0 && (ord($frame[$y][$x]) & 1)) { + $this->runLength[0] = -1; + $head = 1; + $this->runLength[$head] = 1; + } else if($y > 0) { + if((ord($frame[$y][$x]) ^ ord($frame[$y-1][$x])) & 1) { + $head++; + $this->runLength[$head] = 1; + } else { + $this->runLength[$head]++; + } + } + } + + $demerit += $this->calcN1N3($head+1); + } + + return $demerit; + } + + + //---------------------------------------------------------------------- + public function mask($width, $frame, $level) + { + $minDemerit = PHP_INT_MAX; + $bestMaskNum = 0; + $bestMask = array(); + + $checked_masks = array(0,1,2,3,4,5,6,7); + + if (QR_FIND_FROM_RANDOM !== false) { + + $howManuOut = 8-(QR_FIND_FROM_RANDOM % 9); + for ($i = 0; $i < $howManuOut; $i++) { + $remPos = rand (0, count($checked_masks)-1); + unset($checked_masks[$remPos]); + $checked_masks = array_values($checked_masks); + } + + } + + $bestMask = $frame; + + foreach($checked_masks as $i) { + $mask = array_fill(0, $width, str_repeat("\0", $width)); + + $demerit = 0; + $blacks = 0; + $blacks = $this->makeMaskNo($i, $width, $frame, $mask); + $blacks += $this->writeFormatInformation($width, $mask, $i, $level); + $blacks = (int)(100 * $blacks / ($width * $width)); + $demerit = (int)((int)(abs($blacks - 50) / 5) * N4); + $demerit += $this->evaluateSymbol($width, $mask); + + if($demerit < $minDemerit) { + $minDemerit = $demerit; + $bestMask = $mask; + $bestMaskNum = $i; + } + } + + return $bestMask; + } + + //---------------------------------------------------------------------- + } + + + + +//---- qrencode.php ----------------------------- + + + + +/* + * PHP QR Code encoder + * + * Main encoder classes. + * + * Based on libqrencode C library distributed under LGPL 2.1 + * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi + * + * PHP QR Code is distributed under LGPL 3 + * Copyright (C) 2010 Dominik Dzienia + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + class QRrsblock { + public $dataLength; + public $data = array(); + public $eccLength; + public $ecc = array(); + + public function __construct($dl, $data, $el, &$ecc, QRrsItem $rs) + { + $rs->encode_rs_char($data, $ecc); + + $this->dataLength = $dl; + $this->data = $data; + $this->eccLength = $el; + $this->ecc = $ecc; + } + }; + + //########################################################################## + + class QRrawcode { + public $version; + public $datacode = array(); + public $ecccode = array(); + public $blocks; + public $rsblocks = array(); //of RSblock + public $count; + public $dataLength; + public $eccLength; + public $b1; + + //---------------------------------------------------------------------- + public function __construct(QRinput $input) + { + $spec = array(0,0,0,0,0); + + $this->datacode = $input->getByteStream(); + if(is_null($this->datacode)) { + throw new \Exception('null imput string'); + } + + QRspec::getEccSpec($input->getVersion(), $input->getErrorCorrectionLevel(), $spec); + + $this->version = $input->getVersion(); + $this->b1 = QRspec::rsBlockNum1($spec); + $this->dataLength = QRspec::rsDataLength($spec); + $this->eccLength = QRspec::rsEccLength($spec); + $this->ecccode = array_fill(0, $this->eccLength, 0); + $this->blocks = QRspec::rsBlockNum($spec); + + $ret = $this->init($spec); + if($ret < 0) { + throw new \Exception('block alloc error'); + return null; + } + + $this->count = 0; + } + + //---------------------------------------------------------------------- + public function init(array $spec) + { + $dl = QRspec::rsDataCodes1($spec); + $el = QRspec::rsEccCodes1($spec); + $rs = QRrs::init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el); + + + $blockNo = 0; + $dataPos = 0; + $eccPos = 0; + for($i=0; $iecccode,$eccPos); + $this->rsblocks[$blockNo] = new QRrsblock($dl, array_slice($this->datacode, $dataPos), $el, $ecc, $rs); + $this->ecccode = array_merge(array_slice($this->ecccode,0, $eccPos), $ecc); + + $dataPos += $dl; + $eccPos += $el; + $blockNo++; + } + + if(QRspec::rsBlockNum2($spec) == 0) + return 0; + + $dl = QRspec::rsDataCodes2($spec); + $el = QRspec::rsEccCodes2($spec); + $rs = QRrs::init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el); + + if($rs == NULL) return -1; + + for($i=0; $iecccode,$eccPos); + $this->rsblocks[$blockNo] = new QRrsblock($dl, array_slice($this->datacode, $dataPos), $el, $ecc, $rs); + $this->ecccode = array_merge(array_slice($this->ecccode,0, $eccPos), $ecc); + + $dataPos += $dl; + $eccPos += $el; + $blockNo++; + } + + return 0; + } + + //---------------------------------------------------------------------- + public function getCode() + { + $ret; + + if($this->count < $this->dataLength) { + $row = $this->count % $this->blocks; + $col = $this->count / $this->blocks; + if($col >= $this->rsblocks[0]->dataLength) { + $row += $this->b1; + } + $ret = $this->rsblocks[$row]->data[$col]; + } else if($this->count < $this->dataLength + $this->eccLength) { + $row = ($this->count - $this->dataLength) % $this->blocks; + $col = ($this->count - $this->dataLength) / $this->blocks; + $ret = $this->rsblocks[$row]->ecc[$col]; + } else { + return 0; + } + $this->count++; + + return $ret; + } + } + + //########################################################################## + + class QRcode { + + public $version; + public $width; + public $data; + + //---------------------------------------------------------------------- + public function encodeMask(QRinput $input, $mask) + { + if($input->getVersion() < 0 || $input->getVersion() > QRSPEC_VERSION_MAX) { + throw new \Exception('wrong version'); + } + if($input->getErrorCorrectionLevel() > QR_ECLEVEL_H) { + throw new \Exception('wrong level'); + } + + $raw = new QRrawcode($input); + + QRtools::markTime('after_raw'); + + $version = $raw->version; + $width = QRspec::getWidth($version); + $frame = QRspec::newFrame($version); + + $filler = new FrameFiller($width, $frame); + if(is_null($filler)) { + return NULL; + } + + // inteleaved data and ecc codes + for($i=0; $i<$raw->dataLength + $raw->eccLength; $i++) { + $code = $raw->getCode(); + $bit = 0x80; + for($j=0; $j<8; $j++) { + $addr = $filler->next(); + $filler->setFrameAt($addr, 0x02 | (($bit & $code) != 0)); + $bit = $bit >> 1; + } + } + + QRtools::markTime('after_filler'); + + unset($raw); + + // remainder bits + $j = QRspec::getRemainder($version); + for($i=0; $i<$j; $i++) { + $addr = $filler->next(); + $filler->setFrameAt($addr, 0x02); + } + + $frame = $filler->frame; + unset($filler); + + + // masking + $maskObj = new QRmask(); + if($mask < 0) { + + if (QR_FIND_BEST_MASK) { + $masked = $maskObj->mask($width, $frame, $input->getErrorCorrectionLevel()); + } else { + $masked = $maskObj->makeMask($width, $frame, (intval(QR_DEFAULT_MASK) % 8), $input->getErrorCorrectionLevel()); + } + } else { + $masked = $maskObj->makeMask($width, $frame, $mask, $input->getErrorCorrectionLevel()); + } + + if($masked == NULL) { + return NULL; + } + + QRtools::markTime('after_mask'); + + $this->version = $version; + $this->width = $width; + $this->data = $masked; + + return $this; + } + + //---------------------------------------------------------------------- + public function encodeInput(QRinput $input) + { + return $this->encodeMask($input, -1); + } + + //---------------------------------------------------------------------- + public function encodeString8bit($string, $version, $level) + { + if(string == NULL) { + throw new \Exception('empty string!'); + return NULL; + } + + $input = new QRinput($version, $level); + if($input == NULL) return NULL; + + $ret = $input->append($input, QR_MODE_8, strlen($string), str_split($string)); + if($ret < 0) { + unset($input); + return NULL; + } + return $this->encodeInput($input); + } + + //---------------------------------------------------------------------- + public function encodeString($string, $version, $level, $hint, $casesensitive) + { + + if($hint != QR_MODE_8 && $hint != QR_MODE_KANJI) { + throw new \Exception('bad hint'); + return NULL; + } + + $input = new QRinput($version, $level); + if($input == NULL) return NULL; + + $ret = QRsplit::splitStringToQRinput($string, $input, $hint, $casesensitive); + if($ret < 0) { + return NULL; + } + + return $this->encodeInput($input); + } + + //---------------------------------------------------------------------- + public static function png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false) + { + $enc = QRencode::factory($level, $size, $margin); + return $enc->encodePNG($text, $outfile, $saveandprint=false); + } + + //---------------------------------------------------------------------- + public static function text($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4) + { + $enc = QRencode::factory($level, $size, $margin); + return $enc->encode($text, $outfile); + } + + //---------------------------------------------------------------------- + public static function raw($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4) + { + $enc = QRencode::factory($level, $size, $margin); + return $enc->encodeRAW($text, $outfile); + } + } + + //########################################################################## + + class FrameFiller { + + public $width; + public $frame; + public $x; + public $y; + public $dir; + public $bit; + + //---------------------------------------------------------------------- + public function __construct($width, &$frame) + { + $this->width = $width; + $this->frame = $frame; + $this->x = $width - 1; + $this->y = $width - 1; + $this->dir = -1; + $this->bit = -1; + } + + //---------------------------------------------------------------------- + public function setFrameAt($at, $val) + { + $this->frame[$at['y']][$at['x']] = chr($val); + } + + //---------------------------------------------------------------------- + public function getFrameAt($at) + { + return ord($this->frame[$at['y']][$at['x']]); + } + + //---------------------------------------------------------------------- + public function next() + { + do { + + if($this->bit == -1) { + $this->bit = 0; + return array('x'=>$this->x, 'y'=>$this->y); + } + + $x = $this->x; + $y = $this->y; + $w = $this->width; + + if($this->bit == 0) { + $x--; + $this->bit++; + } else { + $x++; + $y += $this->dir; + $this->bit--; + } + + if($this->dir < 0) { + if($y < 0) { + $y = 0; + $x -= 2; + $this->dir = 1; + if($x == 6) { + $x--; + $y = 9; + } + } + } else { + if($y == $w) { + $y = $w - 1; + $x -= 2; + $this->dir = -1; + if($x == 6) { + $x--; + $y -= 8; + } + } + } + if($x < 0 || $y < 0) return null; + + $this->x = $x; + $this->y = $y; + + } while(ord($this->frame[$y][$x]) & 0x80); + + return array('x'=>$x, 'y'=>$y); + } + + } ; + + //########################################################################## + + class QRencode { + + public $casesensitive = true; + public $eightbit = false; + + public $version = 0; + public $size = 3; + public $margin = 4; + + public $structured = 0; // not supported yet + + public $level = QR_ECLEVEL_L; + public $hint = QR_MODE_8; + + //---------------------------------------------------------------------- + public static function factory($level = QR_ECLEVEL_L, $size = 3, $margin = 4) + { + $enc = new QRencode(); + $enc->size = $size; + $enc->margin = $margin; + + switch ($level.'') { + case '0': + case '1': + case '2': + case '3': + $enc->level = $level; + break; + case 'l': + case 'L': + $enc->level = QR_ECLEVEL_L; + break; + case 'm': + case 'M': + $enc->level = QR_ECLEVEL_M; + break; + case 'q': + case 'Q': + $enc->level = QR_ECLEVEL_Q; + break; + case 'h': + case 'H': + $enc->level = QR_ECLEVEL_H; + break; + } + + return $enc; + } + + //---------------------------------------------------------------------- + public function encodeRAW($intext, $outfile = false) + { + $code = new QRcode(); + + if($this->eightbit) { + $code->encodeString8bit($intext, $this->version, $this->level); + } else { + $code->encodeString($intext, $this->version, $this->level, $this->hint, $this->casesensitive); + } + + return $code->data; + } + + //---------------------------------------------------------------------- + public function encode($intext, $outfile = false) + { + $code = new QRcode(); + + if($this->eightbit) { + $code->encodeString8bit($intext, $this->version, $this->level); + } else { + $code->encodeString($intext, $this->version, $this->level, $this->hint, $this->casesensitive); + } + + QRtools::markTime('after_encode'); + + if ($outfile!== false) { + file_put_contents($outfile, join("\n", QRtools::binarize($code->data))); + } else { + return QRtools::binarize($code->data); + } + } + + //---------------------------------------------------------------------- + public function encodePNG($intext, $outfile = false,$saveandprint=false) + { + try { + + ob_start(); + $tab = $this->encode($intext); + $err = ob_get_contents(); + ob_end_clean(); + + if ($err != '') + QRtools::log($outfile, $err); + + $maxSize = (int)(QR_PNG_MAXIMUM_SIZE / (count($tab)+2*$this->margin)); + + QRimage::png($tab, $outfile, min(max(1, $this->size), $maxSize), $this->margin,$saveandprint); + + } catch (Exception $e) { + + QRtools::log($outfile, $e->getMessage()); + + } + } + } + + diff --git a/niucloud/core/util/Queue.php b/niucloud/core/util/Queue.php new file mode 100644 index 0000000..9c68c98 --- /dev/null +++ b/niucloud/core/util/Queue.php @@ -0,0 +1,219 @@ +default_method = $this->method; + } + + /** + * 实例化当前队列 + * @return static + */ + public static function instance() + { + if (is_null(self::$instance)) { + self::$instance = new static(); + } + return self::$instance; + } + + /** + * 设置队列名称 + * @param string $queue_name + * @return $this + */ + public function setQueueName(string $queue_name) + { + $this->queue_name = $queue_name; + return $this; + } + + /** + * 加入队列 + * @param array|null $data + * @return bool + */ + public function push(?array $data = null) + { + if (!$this->job) { + return $this->setError('JOB_NOT_EXISTS'); + } + $jodValue = $this->getValues($data); + //todo 队列扩展策略调度, + $res = ThinkQueue::{$this->action()}(...$jodValue); + if (!$res) { + $res = ThinkQueue::{$this->action()}(...$jodValue); + if (!$res) { + Log::error('队列推送失败,参数:' . json_encode($jodValue, JSON_THROW_ON_ERROR)); + } + } + $this->clean(); + return $res; + } + + /** + * 清除数据 + */ + public function clean() + { + $this->secs = 0; + $this->data = []; + $this->queue_name = null; + $this->error_count = 3; + $this->method = $this->default_method; + } + + /** + * 获取任务方式 + * @return string + */ + protected function action() + { + return $this->secs ? 'later' : 'push'; + } + + /** + * 获取参数 + * @param $data + * @return array + */ + protected function getValues($data) + { + $jobData['data'] = $data ?: $this->data; + $jobData['method'] = $this->method; + $jobData['error_count'] = $this->error_count; + if ($this->method != $this->default_method) { + $this->job .= '@' . $this->method; + } + if ($this->secs) { + return [$this->secs, $this->job, $jobData, $this->queue_name]; + } else { + return [$this->job, $jobData, $this->queue_name]; + } + } + + /** + * 不可访问时调用 + * @param $method + * @param $arguments + * @return $this + * @throws Exception + * @throws Exception + * @throws Exception + */ + public function __call($method, $arguments) + { + if (in_array($method, $this->allow_function)) { + if ($method === 'data') { + $this->{$method} = $arguments; + } else { + $this->{$method} = $arguments[0] ?? null; + } + return $this; + } else { + throw new Exception('Method does not exist' . __CLASS__ . '->' . $method . '()'); + } + } + + /** + * 设置错误信息 + * @param string|null $error + * @return bool + */ + protected function setError(?string $error = null) + { + $this->error = $error; + return false; + } + + /** + * 获取错误信息 + * @return string + */ + public function getError() + { + $error = $this->error; + $this->error = null; + return $error; + } +} diff --git a/niucloud/core/util/Snowflake.php b/niucloud/core/util/Snowflake.php new file mode 100644 index 0000000..84f2322 --- /dev/null +++ b/niucloud/core/util/Snowflake.php @@ -0,0 +1,91 @@ + self::MAX_DATA_CENTER_ID || $data_center_id < 0) { +// throw new Exception('Data center ID can not be greater than ' . self::MAX_DATA_CENTER_ID . ' or less than 0'); +// } +// +// if ($machine_id > self::MAX_MACHINE_ID || $machine_id < 0) { +// throw new Exception('Machine ID can not be greater than ' . self::MAX_MACHINE_ID . ' or less than 0'); +// } + +// $this->data_center_id = $data_center_id; +// $this->machine_id = $machine_id; + $this->last_timestamp = 0; + $this->sequence = 0; + } + + /** + * @throws Exception + */ + public function generateId() + { + $timestamp = $this->getTimestamp(); + + // 当前时间小于上一次生成时间,发生时钟回拨 + if ($timestamp < $this->last_timestamp) { + throw new Exception('Clock moved backwards.'); + } + + // 当前时间与上一次生成时间相同 + if ($timestamp == $this->last_timestamp) { + $this->sequence = ($this->sequence + 1) & self::MAX_SEQUENCE; + + // 当前毫秒的序列已经达到最大值,等待下一毫秒 + if ($this->sequence == 0) { + $timestamp = $this->nextMillis($this->last_timestamp); + } + } else { + // 新的一毫秒,序列从0开始 + $this->sequence = 0; + } + + $this->last_timestamp = $timestamp; + + return (($timestamp - self::START_EPOCH) << (self::SEQUENCE_BITS)) +// | ($this->data_center_id << (self::SEQUENCE_BITS + self::MACHINE_ID_BITS)) +// | ($this->machine_id << self::SEQUENCE_BITS) + | $this->sequence; + } + + private function getTimestamp() + { + return floor(microtime(true) * 1000); + } + + private function nextMillis($last_timestamp) + { + $timestamp = $this->getTimestamp(); + + while ($timestamp <= $last_timestamp) { + $timestamp = $this->getTimestamp(); + } + + return $timestamp; + } +} \ No newline at end of file diff --git a/niucloud/core/util/Terminal.php b/niucloud/core/util/Terminal.php new file mode 100644 index 0000000..964097e --- /dev/null +++ b/niucloud/core/util/Terminal.php @@ -0,0 +1,56 @@ + array("pipe", "r"), // 标准输入,我们不需要 + 1 => array("pipe", "w"), // 标准输出,我们需要将其捕获 + 2 => array("pipe", "w") // 标准错误,我们也需要将其捕获 + ); + $process = proc_open($command, $descriptorspec, $pipes, $cwd); + + // 检查进程是否成功创建 + if (!is_resource($process)) { + return "Could not execute command: $command"; + } + + // 从管道中获取命令的输出 + $output = ''; + while (!feof($pipes[1])) { + $output .= fgets($pipes[1]); + } + while (!feof($pipes[2])) { + $output .= fgets($pipes[2]); + } + + // 关闭管道和进程 + fclose($pipes[0]); + fclose($pipes[1]); + fclose($pipes[2]); + $status = proc_close($process); + + // 判断命令的执行结果 + if ($status === 0) { + return str_contains($output, 'Command failed') ? $output : true; + } else { + return $output; + } + } +} \ No newline at end of file diff --git a/niucloud/core/util/TokenAuth.php b/niucloud/core/util/TokenAuth.php new file mode 100644 index 0000000..f01be51 --- /dev/null +++ b/niucloud/core/util/TokenAuth.php @@ -0,0 +1,109 @@ +request->host(); + $time = time(); + $params += [ + 'iss' => $host, + 'aud' => $host, + 'iat' => $time, + 'nbf' => $time, + 'exp' => $time + $expire_time, + ]; + + $params['jti'] = $id . "_" . $type; + $token = JWT::encode($params, Env::get('app.app_key', 'niucloud456$%^')); + $cache_token = Cache::get("token_" . $params['jti']); + $cache_token_arr = $cache_token ?: []; +// if(!empty($cache_token)) +// { +// +// $cache_token_arr[] = $token; +// } + $cache_token_arr[] = $token; + Cache::tag("token")->set("token_" . $params['jti'], $cache_token_arr); + return compact('token', 'params'); + } + + /** + * 解析token + * @param string $token + * @param string $type + * @return array + */ + public static function parseToken(string $token, string $type): array + { + $payload = JWT::decode($token, Env::get('app.app_key', 'niucloud456$%^'), ['HS256']); + if (!empty($payload)) { + $token_info = json_decode(json_encode($payload), true, 512, JSON_THROW_ON_ERROR); + + if (explode("_", $token_info['jti'])[1] != $type) { + return []; + } + if (!empty($token_info) && !in_array($token, Cache::get('token_' . $token_info['jti'], []))) { + return []; + } + return $token_info; + } else { + return []; + } + } + + /** + * 清理token + * @param int $id + * @param string $type + * @param string|null $token + * @return Response + */ + public static function clearToken(int $id, string $type, ?string $token = '') + { + if (!empty($token)) { + $token_cache = Cache::get("token_" . $id . "_" . $type, []); + //todo 也可以通过修改过期时间来实现 + if (!empty($token_cache)) { + if (($key = array_search($token, $token_cache)) !== false) { + array_splice($token_cache, $key, 1); + } + Cache::set("token_" . $id . "_" . $type, $token_cache); + } + } else { + Cache::set("token_" . $id . "_" . $type, []); + } + return success(); + } +} diff --git a/niucloud/core/util/barcode/class/BCGArgumentException.php b/niucloud/core/util/barcode/class/BCGArgumentException.php new file mode 100644 index 0000000..030f3e4 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGArgumentException.php @@ -0,0 +1,25 @@ +param = $param; + parent::__construct($message, 20000); + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGBarcode.php b/niucloud/core/util/barcode/class/BCGBarcode.php new file mode 100644 index 0000000..317e773 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGBarcode.php @@ -0,0 +1,436 @@ +setOffsetX(0); + $this->setOffsetY(0); + $this->setForegroundColor(0x000000); + $this->setBackgroundColor(0xffffff); + $this->setScale(1); + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + } + + /** + * Gets the foreground color of the barcode. + * + * @return BCGColor + */ + public function getForegroundColor() { + return $this->colorFg; + } + + /** + * Sets the foreground color of the barcode. It could be a BCGColor + * value or simply a language code (white, black, yellow...) or hex value. + * + * @param mixed $code + */ + public function setForegroundColor($code) { + if ($code instanceof BCGColor) { + $this->colorFg = $code; + } else { + $this->colorFg = new BCGColor($code); + } + } + + /** + * Gets the background color of the barcode. + * + * @return BCGColor + */ + public function getBackgroundColor() { + return $this->colorBg; + } + + /** + * Sets the background color of the barcode. It could be a BCGColor + * value or simply a language code (white, black, yellow...) or hex value. + * + * @param mixed $code + */ + public function setBackgroundColor($code) { + if ($code instanceof BCGColor) { + $this->colorBg = $code; + } else { + $this->colorBg = new BCGColor($code); + } + + foreach ($this->labels as $label) { + $label->setBackgroundColor($this->colorBg); + } + } + + /** + * Sets the color. + * + * @param mixed $fg + * @param mixed $bg + */ + public function setColor($fg, $bg) { + $this->setForegroundColor($fg); + $this->setBackgroundColor($bg); + } + + /** + * Gets the scale of the barcode. + * + * @return int + */ + public function getScale() { + return $this->scale; + } + + /** + * Sets the scale of the barcode in pixel. + * If the scale is lower than 1, an exception is raised. + * + * @param int $scale + */ + public function setScale($scale) { + $scale = intval($scale); + if ($scale <= 0) { + throw new BCGArgumentException('The scale must be larger than 0.', 'scale'); + } + + $this->scale = $scale; + } + + /** + * Abstract method that draws the barcode on the resource. + * + * @param resource $im + */ + public abstract function draw($im); + + /** + * Returns the maximal size of a barcode. + * [0]->width + * [1]->height + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $labels = $this->getBiggestLabels(false); + $pixelsAround = array(0, 0, 0, 0); // TRBL + if (isset($labels[BCGLabel::POSITION_TOP])) { + $dimension = $labels[BCGLabel::POSITION_TOP]->getDimension(); + $pixelsAround[0] += $dimension[1]; + } + + if (isset($labels[BCGLabel::POSITION_RIGHT])) { + $dimension = $labels[BCGLabel::POSITION_RIGHT]->getDimension(); + $pixelsAround[1] += $dimension[0]; + } + + if (isset($labels[BCGLabel::POSITION_BOTTOM])) { + $dimension = $labels[BCGLabel::POSITION_BOTTOM]->getDimension(); + $pixelsAround[2] += $dimension[1]; + } + + if (isset($labels[BCGLabel::POSITION_LEFT])) { + $dimension = $labels[BCGLabel::POSITION_LEFT]->getDimension(); + $pixelsAround[3] += $dimension[0]; + } + + $finalW = ($w + $this->offsetX) * $this->scale; + $finalH = ($h + $this->offsetY) * $this->scale; + + // This section will check if a top/bottom label is too big for its width and left/right too big for its height + $reversedLabels = $this->getBiggestLabels(true); + foreach ($reversedLabels as $label) { + $dimension = $label->getDimension(); + $alignment = $label->getAlignment(); + if ($label->getPosition() === BCGLabel::POSITION_LEFT || $label->getPosition() === BCGLabel::POSITION_RIGHT) { + if ($alignment === BCGLabel::ALIGN_TOP) { + $pixelsAround[2] = max($pixelsAround[2], $dimension[1] - $finalH); + } elseif ($alignment === BCGLabel::ALIGN_CENTER) { + $temp = ceil(($dimension[1] - $finalH) / 2); + $pixelsAround[0] = max($pixelsAround[0], $temp); + $pixelsAround[2] = max($pixelsAround[2], $temp); + } elseif ($alignment === BCGLabel::ALIGN_BOTTOM) { + $pixelsAround[0] = max($pixelsAround[0], $dimension[1] - $finalH); + } + } else { + if ($alignment === BCGLabel::ALIGN_LEFT) { + $pixelsAround[1] = max($pixelsAround[1], $dimension[0] - $finalW); + } elseif ($alignment === BCGLabel::ALIGN_CENTER) { + $temp = ceil(($dimension[0] - $finalW) / 2); + $pixelsAround[1] = max($pixelsAround[1], $temp); + $pixelsAround[3] = max($pixelsAround[3], $temp); + } elseif ($alignment === BCGLabel::ALIGN_RIGHT) { + $pixelsAround[3] = max($pixelsAround[3], $dimension[0] - $finalW); + } + } + } + + $this->pushLabel[0] = $pixelsAround[3]; + $this->pushLabel[1] = $pixelsAround[0]; + + $finalW = ($w + $this->offsetX) * $this->scale + $pixelsAround[1] + $pixelsAround[3]; + $finalH = ($h + $this->offsetY) * $this->scale + $pixelsAround[0] + $pixelsAround[2]; + + return array($finalW, $finalH); + } + + /** + * Gets the X offset. + * + * @return int + */ + public function getOffsetX() { + return $this->offsetX; + } + + /** + * Sets the X offset. + * + * @param int $offsetX + */ + public function setOffsetX($offsetX) { + $offsetX = intval($offsetX); + if ($offsetX < 0) { + throw new BCGArgumentException('The offset X must be 0 or larger.', 'offsetX'); + } + + $this->offsetX = $offsetX; + } + + /** + * Gets the Y offset. + * + * @return int + */ + public function getOffsetY() { + return $this->offsetY; + } + + /** + * Sets the Y offset. + * + * @param int $offsetY + */ + public function setOffsetY($offsetY) { + $offsetY = intval($offsetY); + if ($offsetY < 0) { + throw new BCGArgumentException('The offset Y must be 0 or larger.', 'offsetY'); + } + + $this->offsetY = $offsetY; + } + + /** + * Adds the label to the drawing. + * + * @param BCGLabel $label + */ + public function addLabel(BCGLabel $label) { + $label->setBackgroundColor($this->colorBg); + $this->labels[] = $label; + } + + /** + * Removes the label from the drawing. + * + * @param BCGLabel $label + */ + public function removeLabel(BCGLabel $label) { + $remove = -1; + $c = count($this->labels); + for ($i = 0; $i < $c; $i++) { + if ($this->labels[$i] === $label) { + $remove = $i; + break; + } + } + + if ($remove > -1) { + array_splice($this->labels, $remove, 1); + } + } + + /** + * Clears the labels. + */ + public function clearLabels() { + $this->labels = array(); + } + + /** + * Draws the text. + * The coordinate passed are the positions of the barcode. + * $x1 and $y1 represent the top left corner. + * $x2 and $y2 represent the bottom right corner. + * + * @param resource $im + * @param int $x1 + * @param int $y1 + * @param int $x2 + * @param int $y2 + */ + protected function drawText($im, $x1, $y1, $x2, $y2) { + foreach ($this->labels as $label) { + $label->draw($im, + ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], + ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], + ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0], + ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1]); + } + } + + /** + * Draws 1 pixel on the resource at a specific position with a determined color. + * + * @param resource $im + * @param int $x + * @param int $y + * @param int $color + */ + protected function drawPixel($im, $x, $y, $color = self::COLOR_FG) { + $xR = ($x + $this->offsetX) * $this->scale + $this->pushLabel[0]; + $yR = ($y + $this->offsetY) * $this->scale + $this->pushLabel[1]; + + // We always draw a rectangle + imagefilledrectangle($im, + $xR, + $yR, + $xR + $this->scale - 1, + $yR + $this->scale - 1, + $this->getColor($im, $color)); + } + + /** + * Draws an empty rectangle on the resource at a specific position with a determined color. + * + * @param resource $im + * @param int $x1 + * @param int $y1 + * @param int $x2 + * @param int $y2 + * @param int $color + */ + protected function drawRectangle($im, $x1, $y1, $x2, $y2, $color = self::COLOR_FG) { + if ($this->scale === 1) { + imagefilledrectangle($im, + ($x1 + $this->offsetX) + $this->pushLabel[0], + ($y1 + $this->offsetY) + $this->pushLabel[1], + ($x2 + $this->offsetX) + $this->pushLabel[0], + ($y2 + $this->offsetY) + $this->pushLabel[1], + $this->getColor($im, $color)); + } else { + imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); + imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); + imagefilledrectangle($im, ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); + imagefilledrectangle($im, ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1], ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, $this->getColor($im, $color)); + } + } + + /** + * Draws a filled rectangle on the resource at a specific position with a determined color. + * + * @param resource $im + * @param int $x1 + * @param int $y1 + * @param int $x2 + * @param int $y2 + * @param int $color + */ + protected function drawFilledRectangle($im, $x1, $y1, $x2, $y2, $color = self::COLOR_FG) { + if ($x1 > $x2) { // Swap + $x1 ^= $x2 ^= $x1 ^= $x2; + } + + if ($y1 > $y2) { // Swap + $y1 ^= $y2 ^= $y1 ^= $y2; + } + + imagefilledrectangle($im, + ($x1 + $this->offsetX) * $this->scale + $this->pushLabel[0], + ($y1 + $this->offsetY) * $this->scale + $this->pushLabel[1], + ($x2 + $this->offsetX) * $this->scale + $this->pushLabel[0] + $this->scale - 1, + ($y2 + $this->offsetY) * $this->scale + $this->pushLabel[1] + $this->scale - 1, + $this->getColor($im, $color)); + } + + /** + * Allocates the color based on the integer. + * + * @param resource $im + * @param int $color + * @return resource + */ + protected function getColor($im, $color) { + if ($color === self::COLOR_BG) { + return $this->colorBg->allocate($im); + } else { + return $this->colorFg->allocate($im); + } + } + + /** + * Returning the biggest label widths for LEFT/RIGHT and heights for TOP/BOTTOM. + * + * @param bool $reversed + * @return BCGLabel[] + */ + private function getBiggestLabels($reversed = false) { + $searchLR = $reversed ? 1 : 0; + $searchTB = $reversed ? 0 : 1; + + $labels = array(); + foreach ($this->labels as $label) { + $position = $label->getPosition(); + if (isset($labels[$position])) { + $savedDimension = $labels[$position]->getDimension(); + $dimension = $label->getDimension(); + if ($position === BCGLabel::POSITION_LEFT || $position === BCGLabel::POSITION_RIGHT) { + if ($dimension[$searchLR] > $savedDimension[$searchLR]) { + $labels[$position] = $label; + } + } else { + if ($dimension[$searchTB] > $savedDimension[$searchTB]) { + $labels[$position] = $label; + } + } + } else { + $labels[$position] = $label; + } + } + + return $labels; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGBarcode1D.php b/niucloud/core/util/barcode/class/BCGBarcode1D.php new file mode 100644 index 0000000..7202a8c --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGBarcode1D.php @@ -0,0 +1,259 @@ +setThickness(30); + + $this->defaultLabel = new BCGLabel(); + $this->defaultLabel->setPosition(BCGLabel::POSITION_BOTTOM); + $this->setLabel(self::AUTO_LABEL); + $this->setFont(new BCGFontPhp(5)); + + $this->text = ''; + $this->checksumValue = false; + $this->positionX = 0; + } + + /** + * Gets the thickness. + * + * @return int + */ + public function getThickness() { + return $this->thickness; + } + + /** + * Sets the thickness. + * + * @param int $thickness + */ + public function setThickness($thickness) { + $thickness = intval($thickness); + if ($thickness <= 0) { + throw new BCGArgumentException('The thickness must be larger than 0.', 'thickness'); + } + + $this->thickness = $thickness; + } + + /** + * Gets the label. + * If the label was set to BCGBarcode1D::AUTO_LABEL, the label will display the value from the text parsed. + * + * @return string + */ + public function getLabel() { + $label = $this->label; + if ($this->label === self::AUTO_LABEL) { + $label = $this->text; + if ($this->displayChecksum === true && ($checksum = $this->processChecksum()) !== false) { + $label .= $checksum; + } + } + + return $label; + } + + /** + * Sets the label. + * You can use BCGBarcode::AUTO_LABEL to have the label automatically written based on the parsed text. + * + * @param string $label + */ + public function setLabel($label) { + $this->label = $label; + } + + /** + * Gets the font. + * + * @return BCGFont + */ + public function getFont() { + return $this->font; + } + + /** + * Sets the font. + * + * @param mixed $font BCGFont or int + */ + public function setFont($font) { + if (is_int($font)) { + if ($font === 0) { + $font = null; + } else { + $font = new BCGFontPhp($font); + } + } + + $this->font = $font; + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + $this->text = $text; + $this->checksumValue = false; // Reset checksumValue + $this->validate(); + + parent::parse($text); + + $this->addDefaultLabel(); + } + + /** + * Gets the checksum of a Barcode. + * If no checksum is available, return FALSE. + * + * @return string + */ + public function getChecksum() { + return $this->processChecksum(); + } + + /** + * Sets if the checksum is displayed with the label or not. + * The checksum must be activated in some case to make this variable effective. + * + * @param boolean $displayChecksum + */ + public function setDisplayChecksum($displayChecksum) { + $this->displayChecksum = (bool)$displayChecksum; + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + $label = $this->getLabel(); + $font = $this->font; + if ($label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null) { + $this->defaultLabel->setText($label); + $this->defaultLabel->setFont($font); + $this->addLabel($this->defaultLabel); + } + } + + /** + * Validates the input + */ + protected function validate() { + // No validation in the abstract class. + } + + /** + * Returns the index in $keys (useful for checksum). + * + * @param mixed $var + * @return mixed + */ + protected function findIndex($var) { + return array_search($var, $this->keys); + } + + /** + * Returns the code of the char (useful for drawing bars). + * + * @param mixed $var + * @return string + */ + protected function findCode($var) { + return $this->code[$this->findIndex($var)]; + } + + /** + * Draws all chars thanks to $code. If $startBar is true, the line begins by a space. + * If $startBar is false, the line begins by a bar. + * + * @param resource $im + * @param string $code + * @param boolean $startBar + */ + protected function drawChar($im, $code, $startBar = true) { + $colors = array(BCGBarcode::COLOR_FG, BCGBarcode::COLOR_BG); + $currentColor = $startBar ? 0 : 1; + $c = strlen($code); + for ($i = 0; $i < $c; $i++) { + for ($j = 0; $j < intval($code[$i]) + 1; $j++) { + $this->drawSingleBar($im, $colors[$currentColor]); + $this->nextX(); + } + + $currentColor = ($currentColor + 1) % 2; + } + } + + /** + * Draws a Bar of $color depending of the resolution. + * + * @param resource $img + * @param int $color + */ + protected function drawSingleBar($im, $color) { + $this->drawFilledRectangle($im, $this->positionX, 0, $this->positionX, $this->thickness - 1, $color); + } + + /** + * Moving the pointer right to write a bar. + */ + protected function nextX() { + $this->positionX++; + } + + /** + * Method that saves FALSE into the checksumValue. This means no checksum + * but this method should be overriden when needed. + */ + protected function calculateChecksum() { + $this->checksumValue = false; + } + + /** + * Returns FALSE because there is no checksum. This method should be + * overriden to return correctly the checksum in string with checksumValue. + * + * @return string + */ + protected function processChecksum() { + return false; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGColor.php b/niucloud/core/util/barcode/class/BCGColor.php new file mode 100644 index 0000000..7bd0650 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGColor.php @@ -0,0 +1,154 @@ +r = intval($args[0]); + $this->g = intval($args[1]); + $this->b = intval($args[2]); + } elseif ($c === 1) { + if (is_string($args[0]) && strlen($args[0]) === 7 && $args[0][0] === '#') { // Hex Value in String + $this->r = intval(substr($args[0], 1, 2), 16); + $this->g = intval(substr($args[0], 3, 2), 16); + $this->b = intval(substr($args[0], 5, 2), 16); + } else { + if (is_string($args[0])) { + $args[0] = self::getColor($args[0]); + } + + $args[0] = intval($args[0]); + $this->r = ($args[0] & 0xff0000) >> 16; + $this->g = ($args[0] & 0x00ff00) >> 8; + $this->b = ($args[0] & 0x0000ff); + } + } else { + $this->r = $this->g = $this->b = 0; + } + } + + /** + * Sets the color transparent. + * + * @param bool $transparent + */ + public function setTransparent($transparent) { + $this->transparent = $transparent; + } + + /** + * Returns Red Color. + * + * @return int + */ + public function r() { + return $this->r; + } + + /** + * Returns Green Color. + * + * @return int + */ + public function g() { + return $this->g; + } + + /** + * Returns Blue Color. + * + * @return int + */ + public function b() { + return $this->b; + } + + /** + * Returns the int value for PHP color. + * + * @param resource $im + * @return int + */ + public function allocate(&$im) { + $allocated = imagecolorallocate($im, $this->r, $this->g, $this->b); + if ($this->transparent) { + return imagecolortransparent($im, $allocated); + } else { + return $allocated; + } + } + + /** + * Returns class of BCGColor depending of the string color. + * + * If the color doens't exist, it takes the default one. + * + * @param string $code + * @param string $default + */ + public static function getColor($code, $default = 'white') { + switch(strtolower($code)) { + case '': + case 'white': + return 0xffffff; + case 'black': + return 0x000000; + case 'maroon': + return 0x800000; + case 'red': + return 0xff0000; + case 'orange': + return 0xffa500; + case 'yellow': + return 0xffff00; + case 'olive': + return 0x808000; + case 'purple': + return 0x800080; + case 'fuchsia': + return 0xff00ff; + case 'lime': + return 0x00ff00; + case 'green': + return 0x008000; + case 'navy': + return 0x000080; + case 'blue': + return 0x0000ff; + case 'aqua': + return 0x00ffff; + case 'teal': + return 0x008080; + case 'silver': + return 0xc0c0c0; + case 'gray': + return 0x808080; + default: + return self::getColor($default, 'white'); + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGDrawException.php b/niucloud/core/util/barcode/class/BCGDrawException.php new file mode 100644 index 0000000..792732d --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGDrawException.php @@ -0,0 +1,21 @@ + \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGDrawing.php b/niucloud/core/util/barcode/class/BCGDrawing.php new file mode 100644 index 0000000..612522c --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGDrawing.php @@ -0,0 +1,248 @@ +im = null; + $this->setFilename($filename); + $this->color = $color; + $this->dpi = null; + $this->rotateDegree = 0.0; + } + + /** + * Destructor. + */ + public function __destruct() { + $this->destroy(); + } + + /** + * Gets the filename. + * + * @return string + */ + public function getFilename() { + return $this->filename; + } + + /** + * Sets the filename. + * + * @param string $filaneme + */ + public function setFilename($filename) { + $this->filename = $filename; + } + + /** + * @return resource. + */ + public function get_im() { + return $this->im; + } + + /** + * Sets the image. + * + * @param resource $im + */ + public function set_im($im) { + $this->im = $im; + } + + /** + * Gets Barcode for drawing. + * + * @return BCGBarcode + */ + public function getBarcode() { + return $this->barcode; + } + + /** + * Sets Barcode for drawing. + * + * @param BCGBarcode $Barcode + */ + public function setBarcode(BCGBarcode $barcode) { + $this->barcode = $barcode; + } + + /** + * Gets the DPI for supported filetype. + * + * @return float + */ + public function getDPI() { + return $this->dpi; + } + + /** + * Sets the DPI for supported filetype. + * + * @param float $dpi + */ + public function setDPI($dpi) { + $this->dpi = $dpi; + } + + /** + * Gets the rotation angle in degree clockwise. + * + * @return float + */ + public function getRotationAngle() { + return $this->rotateDegree; + } + + /** + * Sets the rotation angle in degree clockwise. + * + * @param float $degree + */ + public function setRotationAngle($degree) { + $this->rotateDegree = (float)$degree; + } + + /** + * Draws the Barcode on the image $im. + */ + public function draw() { + $size = $this->barcode->getDimension(0, 0); + $this->w = max(1, $size[0]); + $this->h = max(1, $size[1]); + $this->init(); + $this->barcode->draw($this->im); + } + + /** + * Saves $im into the file (many format available). + * + * @param int $image_style + * @param int $quality + */ + public function finish($image_style = self::IMG_FORMAT_PNG, $quality = 100) { + $drawer = null; + + $im = $this->im; + if ($this->rotateDegree > 0.0) { + if (function_exists('imagerotate')) { + $im = imagerotate($this->im, 360 - $this->rotateDegree, $this->color->allocate($this->im)); + } else { + throw new BCGDrawException('The method imagerotate doesn\'t exist on your server. Do not use any rotation.'); + } + } + + if ($image_style === self::IMG_FORMAT_PNG) { + $drawer = new BCGDrawPNG($im); + $drawer->setFilename($this->filename); + $drawer->setDPI($this->dpi); + } elseif ($image_style === self::IMG_FORMAT_JPEG) { + $drawer = new BCGDrawJPG($im); + $drawer->setFilename($this->filename); + $drawer->setDPI($this->dpi); + $drawer->setQuality($quality); + } elseif ($image_style === self::IMG_FORMAT_GIF) { + // Some PHP versions have a bug if passing 2nd argument as null. + if ($this->filename === null || $this->filename === '') { + imagegif($im); + } else { + imagegif($im, $this->filename); + } + } elseif ($image_style === self::IMG_FORMAT_WBMP) { + imagewbmp($im, $this->filename); + } + + if ($drawer !== null) { + $drawer->draw(); + } + } + + /** + * Writes the Error on the picture. + * + * @param Exception $exception + */ + public function drawException($exception) { + $this->w = 1; + $this->h = 1; + $this->init(); + + // Is the image big enough? + $w = imagesx($this->im); + $h = imagesy($this->im); + + $text = 'Error: ' . $exception->getMessage(); + + $width = imagefontwidth(2) * strlen($text); + $height = imagefontheight(2); + if ($width > $w || $height > $h) { + $width = max($w, $width); + $height = max($h, $height); + + // We change the size of the image + $newimg = imagecreatetruecolor($width, $height); + imagefill($newimg, 0, 0, imagecolorat($this->im, 0, 0)); + imagecopy($newimg, $this->im, 0, 0, 0, 0, $w, $h); + $this->im = $newimg; + } + + $black = new BCGColor('black'); + imagestring($this->im, 2, 0, 0, $text, $black->allocate($this->im)); + } + + /** + * Free the memory of PHP (called also by destructor). + */ + public function destroy() { + @imagedestroy($this->im); + } + + /** + * Init Image and color background. + */ + private function init() { + if ($this->im === null) { + $this->im = imagecreatetruecolor($this->w, $this->h) + or die('Can\'t Initialize the GD Libraty'); + imagefilledrectangle($this->im, 0, 0, $this->w - 1, $this->h - 1, $this->color->allocate($this->im)); + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGFont.php b/niucloud/core/util/barcode/class/BCGFont.php new file mode 100644 index 0000000..c58c0de --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGFont.php @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGFontFile.php b/niucloud/core/util/barcode/class/BCGFontFile.php new file mode 100644 index 0000000..4c304eb --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGFontFile.php @@ -0,0 +1,209 @@ +path = $fontPath; + $this->size = $size; + $this->foregroundColor = new BCGColor('black'); + $this->setRotationAngle(0); + $this->setBoxFix(self::PHP_BOX_FIX); + } + + /** + * Gets the text associated to the font. + * + * @return string + */ + public function getText() { + return $this->text; + } + + /** + * Sets the text associated to the font. + * + * @param string text + */ + public function setText($text) { + $this->text = $text; + $this->box = null; + } + + /** + * Gets the rotation in degree. + * + * @return int + */ + public function getRotationAngle() { + return (360 - $this->rotationAngle) % 360; + } + + /** + * Sets the rotation in degree. + * + * @param int + */ + public function setRotationAngle($rotationAngle) { + $this->rotationAngle = (int)$rotationAngle; + if ($this->rotationAngle !== 90 && $this->rotationAngle !== 180 && $this->rotationAngle !== 270) { + $this->rotationAngle = 0; + } + + $this->rotationAngle = (360 - $this->rotationAngle) % 360; + + $this->box = null; + } + + /** + * Gets the background color. + * + * @return BCGColor + */ + public function getBackgroundColor() { + } + + /** + * Sets the background color. + * + * @param BCGColor $backgroundColor + */ + public function setBackgroundColor($backgroundColor) { + } + + /** + * Gets the foreground color. + * + * @return BCGColor + */ + public function getForegroundColor() { + return $this->foregroundColor; + } + + /** + * Sets the foreground color. + * + * @param BCGColor $foregroundColor + */ + public function setForegroundColor($foregroundColor) { + $this->foregroundColor = $foregroundColor; + } + + /** + * Gets the box fix information. + * + * @return int + */ + public function getBoxFix() { + return $this->boxFix; + } + + /** + * Sets the box fix information. + * + * @param int $value + */ + public function setBoxFix($value) { + $this->boxFix = intval($value); + } + + /** + * Returns the width and height that the text takes to be written. + * + * @return int[] + */ + public function getDimension() { + $w = 0.0; + $h = 0.0; + $box = $this->getBox(); + + if ($box !== null) { + $minX = min(array($box[0], $box[2], $box[4], $box[6])); + $maxX = max(array($box[0], $box[2], $box[4], $box[6])); + $minY = min(array($box[1], $box[3], $box[5], $box[7])); + $maxY = max(array($box[1], $box[3], $box[5], $box[7])); + + $w = $maxX - $minX; + $h = $maxY - $minY; + } + + $rotationAngle = $this->getRotationAngle(); + if ($rotationAngle === 90 || $rotationAngle === 270) { + return array($h + self::PHP_BOX_FIX, $w); + } else { + return array($w + self::PHP_BOX_FIX, $h); + } + } + + /** + * Draws the text on the image at a specific position. + * $x and $y represent the left bottom corner. + * + * @param resource $im + * @param int $x + * @param int $y + */ + public function draw($im, $x, $y) { + $drawingPosition = $this->getDrawingPosition($x, $y); + imagettftext($im, $this->size, $this->rotationAngle, $drawingPosition[0], $drawingPosition[1], $this->foregroundColor->allocate($im), $this->path, $this->text); + } + + private function getDrawingPosition($x, $y) { + $dimension = $this->getDimension(); + $box = $this->getBox(); + $rotationAngle = $this->getRotationAngle(); + if ($rotationAngle === 0) { + $y += abs(min($box[5], $box[7])); + } elseif ($rotationAngle === 90) { + $x += abs(min($box[5], $box[7])); + $y += $dimension[1]; + } elseif ($rotationAngle === 180) { + $x += $dimension[0]; + $y += abs(max($box[1], $box[3])); + } elseif ($rotationAngle === 270) { + $x += abs(max($box[1], $box[3])); + } + + return array($x, $y); + } + + private function getBox() { + if ($this->box === null) { + $gd = imagecreate(1, 1); + $this->box = imagettftext($gd, $this->size, 0, 0, 0, 0, $this->path, $this->text); + } + + return $this->box; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGFontPhp.php b/niucloud/core/util/barcode/class/BCGFontPhp.php new file mode 100644 index 0000000..a2f8ba8 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGFontPhp.php @@ -0,0 +1,153 @@ +font = max(0, intval($font)); + $this->backgroundColor = new BCGColor('white'); + $this->foregroundColor = new BCGColor('black'); + $this->setRotationAngle(0); + } + + /** + * Gets the text associated to the font. + * + * @return string + */ + public function getText() { + return $this->text; + } + + /** + * Sets the text associated to the font. + * + * @param string text + */ + public function setText($text) { + $this->text = $text; + } + + /** + * Gets the rotation in degree. + * + * @return int + */ + public function getRotationAngle() { + return (360 - $this->rotationAngle) % 360; + } + + /** + * Sets the rotation in degree. + * + * @param int + */ + public function setRotationAngle($rotationAngle) { + $this->rotationAngle = (int)$rotationAngle; + if ($this->rotationAngle !== 90 && $this->rotationAngle !== 180 && $this->rotationAngle !== 270) { + $this->rotationAngle = 0; + } + + $this->rotationAngle = (360 - $this->rotationAngle) % 360; + } + + /** + * Gets the background color. + * + * @return BCGColor + */ + public function getBackgroundColor() { + return $this->backgroundColor; + } + + /** + * Sets the background color. + * + * @param BCGColor $backgroundColor + */ + public function setBackgroundColor($backgroundColor) { + $this->backgroundColor = $backgroundColor; + } + + /** + * Gets the foreground color. + * + * @return BCGColor + */ + public function getForegroundColor() { + return $this->foregroundColor; + } + + /** + * Sets the foreground color. + * + * @param BCGColor $foregroundColor + */ + public function setForegroundColor($foregroundColor) { + $this->foregroundColor = $foregroundColor; + } + + /** + * Returns the width and height that the text takes to be written. + * + * @return int[] + */ + public function getDimension() { + $w = imagefontwidth($this->font) * strlen($this->text); + $h = imagefontheight($this->font); + + $rotationAngle = $this->getRotationAngle(); + if ($rotationAngle === 90 || $rotationAngle === 270) { + return array($h, $w); + } else { + return array($w, $h); + } + } + + /** + * Draws the text on the image at a specific position. + * $x and $y represent the left bottom corner. + * + * @param resource $im + * @param int $x + * @param int $y + */ + public function draw($im, $x, $y) { + if ($this->getRotationAngle() !== 0) { + if (!function_exists('imagerotate')) { + throw new BCGDrawException('The method imagerotate doesn\'t exist on your server. Do not use any rotation.'); + } + + $w = imagefontwidth($this->font) * strlen($this->text); + $h = imagefontheight($this->font); + $gd = imagecreatetruecolor($w, $h); + imagefilledrectangle($gd, 0, 0, $w - 1, $h - 1, $this->backgroundColor->allocate($gd)); + imagestring($gd, $this->font, 0, 0, $this->text, $this->foregroundColor->allocate($gd)); + $gd = imagerotate($gd, $this->rotationAngle, 0); + imagecopy($im, $gd, $x, $y, 0, 0, imagesx($gd), imagesy($gd)); + } else { + imagestring($im, $this->font, $x, $y, $this->text, $this->foregroundColor->allocate($im)); + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGLabel.php b/niucloud/core/util/barcode/class/BCGLabel.php new file mode 100644 index 0000000..7c933c7 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGLabel.php @@ -0,0 +1,320 @@ +setFont($font); + $this->setText($text); + $this->setPosition($position); + $this->setAlignment($alignment); + $this->setSpacing(4); + $this->setOffset(0); + $this->setRotationAngle(0); + $this->setBackgroundColor(new BCGColor('white')); + $this->setForegroundColor(new BCGColor('black')); + } + + /** + * Gets the text. + * + * @return string + */ + public function getText() { + return $this->font->getText(); + } + + /** + * Sets the text. + * + * @param string $text + */ + public function setText($text) { + $this->text = $text; + $this->font->setText($this->text); + } + + /** + * Gets the font. + * + * @return BCGFont + */ + public function getFont() { + return $this->font; + } + + /** + * Sets the font. + * + * @param BCGFont $font + */ + public function setFont($font) { + if ($font === null) { + throw new BCGArgumentException('Font cannot be null.', 'font'); + } + + $this->font = clone $font; + $this->font->setText($this->text); + $this->font->setRotationAngle($this->rotationAngle); + $this->font->setBackgroundColor($this->backgroundColor); + $this->font->setForegroundColor($this->foregroundColor); + } + + /** + * Gets the text position for drawing. + * + * @return int + */ + public function getPosition() { + return $this->position; + } + + /** + * Sets the text position for drawing. + * + * @param int $position + */ + public function setPosition($position) { + $position = intval($position); + if ($position !== self::POSITION_TOP && $position !== self::POSITION_RIGHT && $position !== self::POSITION_BOTTOM && $position !== self::POSITION_LEFT) { + throw new BCGArgumentException('The text position must be one of a valid constant.', 'position'); + } + + $this->position = $position; + } + + /** + * Gets the text alignment for drawing. + * + * @return int + */ + public function getAlignment() { + return $this->alignment; + } + + /** + * Sets the text alignment for drawing. + * + * @param int $alignment + */ + public function setAlignment($alignment) { + $alignment = intval($alignment); + if ($alignment !== self::ALIGN_LEFT && $alignment !== self::ALIGN_TOP && $alignment !== self::ALIGN_CENTER && $alignment !== self::ALIGN_RIGHT && $alignment !== self::ALIGN_BOTTOM) { + throw new BCGArgumentException('The text alignment must be one of a valid constant.', 'alignment'); + } + + $this->alignment = $alignment; + } + + /** + * Gets the offset. + * + * @return int + */ + public function getOffset() { + return $this->offset; + } + + /** + * Sets the offset. + * + * @param int $offset + */ + public function setOffset($offset) { + $this->offset = intval($offset); + } + + /** + * Gets the spacing. + * + * @return int + */ + public function getSpacing() { + return $this->spacing; + } + + /** + * Sets the spacing. + * + * @param int $spacing + */ + public function setSpacing($spacing) { + $this->spacing = max(0, intval($spacing)); + } + + /** + * Gets the rotation angle in degree. + * + * @return int + */ + public function getRotationAngle() { + return $this->font->getRotationAngle(); + } + + /** + * Sets the rotation angle in degree. + * + * @param int $rotationAngle + */ + public function setRotationAngle($rotationAngle) { + $this->rotationAngle = intval($rotationAngle); + $this->font->setRotationAngle($this->rotationAngle); + } + + /** + * Gets the background color in case of rotation. + * + * @return BCGColor + */ + public function getBackgroundColor() { + return $this->backgroundColor; + } + + /** + * Sets the background color in case of rotation. + * + * @param BCGColor $backgroundColor + */ + public /*internal*/ function setBackgroundColor($backgroundColor) { + $this->backgroundColor = $backgroundColor; + $this->font->setBackgroundColor($this->backgroundColor); + } + + /** + * Gets the foreground color. + * + * @return BCGColor + */ + public function getForegroundColor() { + return $this->font->getForegroundColor(); + } + + /** + * Sets the foreground color. + * + * @param BCGColor $foregroundColor + */ + public function setForegroundColor($foregroundColor) { + $this->foregroundColor = $foregroundColor; + $this->font->setForegroundColor($this->foregroundColor); + } + + /** + * Gets the dimension taken by the label, including the spacing and offset. + * [0]: width + * [1]: height + * + * @return int[] + */ + public function getDimension() { + $w = 0; + $h = 0; + + $dimension = $this->font->getDimension(); + $w = $dimension[0]; + $h = $dimension[1]; + + if ($this->position === self::POSITION_TOP || $this->position === self::POSITION_BOTTOM) { + $h += $this->spacing; + $w += max(0, $this->offset); + } else { + $w += $this->spacing; + $h += max(0, $this->offset); + } + + return array($w, $h); + } + + /** + * Draws the text. + * The coordinate passed are the positions of the barcode. + * $x1 and $y1 represent the top left corner. + * $x2 and $y2 represent the bottom right corner. + * + * @param resource $im + * @param int $x1 + * @param int $y1 + * @param int $x2 + * @param int $y2 + */ + public /*internal*/ function draw($im, $x1, $y1, $x2, $y2) { + $x = 0; + $y = 0; + + $fontDimension = $this->font->getDimension(); + + if ($this->position === self::POSITION_TOP || $this->position === self::POSITION_BOTTOM) { + if ($this->position === self::POSITION_TOP) { + $y = $y1 - $this->spacing - $fontDimension[1]; + } elseif ($this->position === self::POSITION_BOTTOM) { + $y = $y2 + $this->spacing; + } + + if ($this->alignment === self::ALIGN_CENTER) { + $x = ($x2 - $x1) / 2 + $x1 - $fontDimension[0] / 2 + $this->offset; + } elseif ($this->alignment === self::ALIGN_LEFT) { + $x = $x1 + $this->offset; + } else { + $x = $x2 + $this->offset - $fontDimension[0]; + } + } else { + if ($this->position === self::POSITION_LEFT) { + $x = $x1 - $this->spacing - $fontDimension[0]; + } elseif ($this->position === self::POSITION_RIGHT) { + $x = $x2 + $this->spacing; + } + + if ($this->alignment === self::ALIGN_CENTER) { + $y = ($y2 - $y1) / 2 + $y1 - $fontDimension[1] / 2 + $this->offset; + } elseif ($this->alignment === self::ALIGN_TOP) { + $y = $y1 + $this->offset; + } else { + $y = $y2 + $this->offset - $fontDimension[1]; + } + } + + $this->font->setText($this->text); + $this->font->draw($im, $x, $y); + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGParseException.php b/niucloud/core/util/barcode/class/BCGParseException.php new file mode 100644 index 0000000..ce4eeb9 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGParseException.php @@ -0,0 +1,25 @@ +barcode = $barcode; + parent::__construct($message, 10000); + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcodabar.barcode.php b/niucloud/core/util/barcode/class/BCGcodabar.barcode.php new file mode 100644 index 0000000..91189fe --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcodabar.barcode.php @@ -0,0 +1,122 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', '$', ':', '/', '.', '+', 'A', 'B', 'C', 'D'); + $this->code = array( // 0 added to add an extra space + '00000110', /* 0 */ + '00001100', /* 1 */ + '00010010', /* 2 */ + '11000000', /* 3 */ + '00100100', /* 4 */ + '10000100', /* 5 */ + '01000010', /* 6 */ + '01001000', /* 7 */ + '01100000', /* 8 */ + '10010000', /* 9 */ + '00011000', /* - */ + '00110000', /* $ */ + '10001010', /* : */ + '10100010', /* / */ + '10101000', /* . */ + '00111110', /* + */ + '00110100', /* A */ + '01010010', /* B */ + '00010110', /* C */ + '00011100' /* D */ + ); + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + parent::parse(strtoupper($text)); // Only Capital Letters are Allowed + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->text[$i]), true); + } + + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $textLength = 0; + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $index = $this->findIndex($this->text[$i]); + if ($index !== false) { + $textLength += 8; + $textLength += substr_count($this->code[$index], '1'); + } + } + + $w += $textLength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('codabar', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('codabar', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must start by A, B, C or D + if ($c == 0 || ($this->text[0] !== 'A' && $this->text[0] !== 'B' && $this->text[0] !== 'C' && $this->text[0] !== 'D')) { + throw new BCGParseException('codabar', 'The text must start by the character A, B, C, or D.'); + } + + // Must end by A, B, C or D + $c2 = $c - 1; + if ($c2 === 0 || ($this->text[$c2] !== 'A' && $this->text[$c2] !== 'B' && $this->text[$c2] !== 'C' && $this->text[$c2] !== 'D')) { + throw new BCGParseException('codabar', 'The text must end by the character A, B, C, or D.'); + } + + parent::validate(); + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcode11.barcode.php b/niucloud/core/util/barcode/class/BCGcode11.barcode.php new file mode 100644 index 0000000..7c11a22 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcode11.barcode.php @@ -0,0 +1,185 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-'); + $this->code = array( // 0 added to add an extra space + '000010', /* 0 */ + '100010', /* 1 */ + '010010', /* 2 */ + '110000', /* 3 */ + '001010', /* 4 */ + '101000', /* 5 */ + '011000', /* 6 */ + '000110', /* 7 */ + '100100', /* 8 */ + '100000', /* 9 */ + '001000' /* - */ + ); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Starting Code + $this->drawChar($im, '001100', true); + + // Chars + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->text[$i]), true); + } + + // Checksum + $this->calculateChecksum(); + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->code[$this->checksumValue[$i]], true); + } + + // Ending Code + $this->drawChar($im, '00110', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 8; + + $textlength = 0; + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $textlength += $this->getIndexLength($this->findIndex($this->text[$i])); + } + + $checksumlength = 0; + $this->calculateChecksum(); + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $checksumlength += $this->getIndexLength($this->checksumValue[$i]); + } + + $endlength = 7; + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('code11', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('code11', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Checksum + // First CheckSUM "C" + // The "C" checksum character is the modulo 11 remainder of the sum of the weighted + // value of the data characters. The weighting value starts at "1" for the right-most + // data character, 2 for the second to last, 3 for the third-to-last, and so on up to 20. + // After 10, the sequence wraps around back to 1. + + // Second CheckSUM "K" + // Same as CheckSUM "C" but we count the CheckSum "C" at the end + // After 9, the sequence wraps around back to 1. + $sequence_multiplier = array(10, 9); + $temp_text = $this->text; + $this->checksumValue = array(); + for ($z = 0; $z < 2; $z++) { + $c = strlen($temp_text); + + // We don't display the K CheckSum if the original text had a length less than 10 + if ($c <= 10 && $z === 1) { + break; + } + + $checksum = 0; + for ($i = $c, $j = 0; $i > 0; $i--, $j++) { + $multiplier = $i % $sequence_multiplier[$z]; + if ($multiplier === 0) { + $multiplier = $sequence_multiplier[$z]; + } + + $checksum += $this->findIndex($temp_text[$j]) * $multiplier; + } + + $this->checksumValue[$z] = $checksum % 11; + $temp_text .= $this->keys[$this->checksumValue[$z]]; + } + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + $ret = ''; + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $ret .= $this->keys[$this->checksumValue[$i]]; + } + + return $ret; + } + + return false; + } + + private function getIndexLength($index) { + $length = 0; + if ($index !== false) { + $length += 6; + $length += substr_count($this->code[$index], '1'); + } + + return $length; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcode128.barcode.php b/niucloud/core/util/barcode/class/BCGcode128.barcode.php new file mode 100644 index 0000000..0cfeed6 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcode128.barcode.php @@ -0,0 +1,885 @@ +keysA = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_'; + for ($i = 0; $i < 32; $i++) { + $this->keysA .= chr($i); + } + + /* CODE 128 B */ + $this->keysB = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~' . chr(127); + + /* CODE 128 C */ + $this->keysC = '0123456789'; + + $this->code = array( + '101111', /* 00 */ + '111011', /* 01 */ + '111110', /* 02 */ + '010112', /* 03 */ + '010211', /* 04 */ + '020111', /* 05 */ + '011102', /* 06 */ + '011201', /* 07 */ + '021101', /* 08 */ + '110102', /* 09 */ + '110201', /* 10 */ + '120101', /* 11 */ + '001121', /* 12 */ + '011021', /* 13 */ + '011120', /* 14 */ + '002111', /* 15 */ + '012011', /* 16 */ + '012110', /* 17 */ + '112100', /* 18 */ + '110021', /* 19 */ + '110120', /* 20 */ + '102101', /* 21 */ + '112001', /* 22 */ + '201020', /* 23 */ + '200111', /* 24 */ + '210011', /* 25 */ + '210110', /* 26 */ + '201101', /* 27 */ + '211001', /* 28 */ + '211100', /* 29 */ + '101012', /* 30 */ + '101210', /* 31 */ + '121010', /* 32 */ + '000212', /* 33 */ + '020012', /* 34 */ + '020210', /* 35 */ + '001202', /* 36 */ + '021002', /* 37 */ + '021200', /* 38 */ + '100202', /* 39 */ + '120002', /* 40 */ + '120200', /* 41 */ + '001022', /* 42 */ + '001220', /* 43 */ + '021020', /* 44 */ + '002012', /* 45 */ + '002210', /* 46 */ + '022010', /* 47 */ + '202010', /* 48 */ + '100220', /* 49 */ + '120020', /* 50 */ + '102002', /* 51 */ + '102200', /* 52 */ + '102020', /* 53 */ + '200012', /* 54 */ + '200210', /* 55 */ + '220010', /* 56 */ + '201002', /* 57 */ + '201200', /* 58 */ + '221000', /* 59 */ + '203000', /* 60 */ + '110300', /* 61 */ + '320000', /* 62 */ + '000113', /* 63 */ + '000311', /* 64 */ + '010013', /* 65 */ + '010310', /* 66 */ + '030011', /* 67 */ + '030110', /* 68 */ + '001103', /* 69 */ + '001301', /* 70 */ + '011003', /* 71 */ + '011300', /* 72 */ + '031001', /* 73 */ + '031100', /* 74 */ + '130100', /* 75 */ + '110003', /* 76 */ + '302000', /* 77 */ + '130001', /* 78 */ + '023000', /* 79 */ + '000131', /* 80 */ + '010031', /* 81 */ + '010130', /* 82 */ + '003101', /* 83 */ + '013001', /* 84 */ + '013100', /* 85 */ + '300101', /* 86 */ + '310001', /* 87 */ + '310100', /* 88 */ + '101030', /* 89 */ + '103010', /* 90 */ + '301010', /* 91 */ + '000032', /* 92 */ + '000230', /* 93 */ + '020030', /* 94 */ + '003002', /* 95 */ + '003200', /* 96 */ + '300002', /* 97 */ + '300200', /* 98 */ + '002030', /* 99 */ + '003020', /* 100*/ + '200030', /* 101*/ + '300020', /* 102*/ + '100301', /* 103*/ + '100103', /* 104*/ + '100121', /* 105*/ + '122000' /*STOP*/ + ); + $this->setStart($start); + $this->setTilde(true); + + // Latches and Shifts + $this->latch = array( + array(null, self::KEYA_CODEB, self::KEYA_CODEC), + array(self::KEYB_CODEA, null, self::KEYB_CODEC), + array(self::KEYC_CODEA, self::KEYC_CODEB, null) + ); + $this->shift = array( + array(null, self::KEYA_SHIFT), + array(self::KEYB_SHIFT, null) + ); + $this->fnc = array( + array(self::KEYA_FNC1, self::KEYA_FNC2, self::KEYA_FNC3, self::KEYA_FNC4), + array(self::KEYB_FNC1, self::KEYB_FNC2, self::KEYB_FNC3, self::KEYB_FNC4), + array(self::KEYC_FNC1, null, null, null) + ); + + // Method available + $this->METHOD = array(CODE128_A => 'A', CODE128_B => 'B', CODE128_C => 'C'); + } + + /** + * Specifies the start code. Can be 'A', 'B', 'C', or null + * - Table A: Capitals + ASCII 0-31 + punct + * - Table B: Capitals + LowerCase + punct + * - Table C: Numbers + * + * If null is specified, the table selection is automatically made. + * The default is null. + * + * @param string $table + */ + public function setStart($table) { + if ($table !== 'A' && $table !== 'B' && $table !== 'C' && $table !== null) { + throw new BCGArgumentException('The starting table must be A, B, C or null.', 'table'); + } + + $this->starting_text = $table; + } + + /** + * Gets the tilde. + * + * @return bool + */ + public function getTilde() { + return $this->tilde; + } + + /** + * Accepts tilde to be process as a special character. + * If true, you can do this: + * - ~~ : to make ONE tilde + * - ~Fx : to insert FCNx. x is equal from 1 to 4. + * + * @param boolean $accept + */ + public function setTilde($accept) { + $this->tilde = (bool)$accept; + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + $this->setStartFromText($text); + + $this->text = ''; + $seq = ''; + + $currentMode = $this->starting_text; + + // Here, we format correctly what the user gives. + if (!is_array($text)) { + $seq = $this->getSequence($text, $currentMode); + $this->text = $text; + } else { + // This loop checks for UnknownText AND raises an exception if a character is not allowed in a table + reset($text); + while (list($key1, $val1) = each($text)) { // We take each value + if (!is_array($val1)) { // This is not a table + if (is_string($val1)) { // If it's a string, parse as unknown + $seq .= $this->getSequence($val1, $currentMode); + $this->text .= $val1; + } else { + // it's the case of "array(ENCODING, 'text')" + // We got ENCODING in $val1, calling 'each' again will get 'text' in $val2 + list($key2, $val2) = each($text); + $seq .= $this->{'setParse' . $this->METHOD[$val1]}($val2, $currentMode); + $this->text .= $val2; + } + } else { // The method is specified + // $val1[0] = ENCODING + // $val1[1] = 'text' + $value = isset($val1[1]) ? $val1[1] : ''; // If data available + $seq .= $this->{'setParse' . $this->METHOD[$val1[0]]}($value, $currentMode); + $this->text .= $value; + } + } + } + + if ($seq !== '') { + $bitstream = $this->createBinaryStream($this->text, $seq); + $this->setData($bitstream); + } + + $this->addDefaultLabel(); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $c = count($this->data); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->data[$i], true); + } + + $this->drawChar($im, '1', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + // Contains start + text + checksum + stop + $textlength = count($this->data) * 11; + $endlength = 2; // + final bar + + $w += $textlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = count($this->data); + if ($c === 0) { + throw new BCGParseException('code128', 'No data has been entered.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Checksum + // First Char (START) + // + Starting with the first data character following the start character, + // take the value of the character (between 0 and 102, inclusive) multiply + // it by its character position (1) and add that to the running checksum. + // Modulated 103 + $this->checksumValue = $this->indcheck[0]; + $c = count($this->indcheck); + for ($i = 1; $i < $c; $i++) { + $this->checksumValue += $this->indcheck[$i] * $i; + } + + $this->checksumValue = $this->checksumValue % 103; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + if ($this->lastTable === 'C') { + return (string)$this->checksumValue; + } + + return $this->{'keys' . $this->lastTable}[$this->checksumValue]; + } + + return false; + } + + /** + * Specifies the starting_text table if none has been specified earlier. + * + * @param string $text + */ + private function setStartFromText($text) { + if ($this->starting_text === null) { + // If we have a forced table at the start, we get that one... + if (is_array($text)) { + if (is_array($text[0])) { + // Code like array(array(ENCODING, '')) + $this->starting_text = $this->METHOD[$text[0][0]]; + return; + } else { + if (is_string($text[0])) { + // Code like array('test') (Automatic text) + $text = $text[0]; + } else { + // Code like array(ENCODING, '') + $this->starting_text = $this->METHOD[$text[0]]; + return; + } + } + } + + // At this point, we had an "automatic" table selection... + // If we can get at least 4 numbers, go in C; otherwise go in B. + $tmp = preg_quote($this->keysC, '/'); + $length = strlen($text); + if ($length >= 4 && preg_match('/[' . $tmp . ']/', substr($text, 0, 4))) { + $this->starting_text = 'C'; + } else { + if ($length > 0 && strpos($this->keysB, $text[0]) !== false) { + $this->starting_text = 'B'; + } else { + $this->starting_text = 'A'; + } + } + } + } + + /** + * Extracts the ~ value from the $text at the $pos. + * If the tilde is not ~~, ~F1, ~F2, ~F3, ~F4; an error is raised. + * + * @param string $text + * @param int $pos + * @return string + */ + private static function extractTilde($text, $pos) { + if ($text[$pos] === '~') { + if (isset($text[$pos + 1])) { + // Do we have a tilde? + if ($text[$pos + 1] === '~') { + return '~~'; + } elseif ($text[$pos + 1] === 'F') { + // Do we have a number after? + if (isset($text[$pos + 2])) { + $v = intval($text[$pos + 2]); + if ($v >= 1 && $v <= 4) { + return '~F' . $v; + } else { + throw new BCGParseException('code128', 'Bad ~F. You must provide a number from 1 to 4.'); + } + } else { + throw new BCGParseException('code128', 'Bad ~F. You must provide a number from 1 to 4.'); + } + } else { + throw new BCGParseException('code128', 'Wrong code after the ~.'); + } + } else { + throw new BCGParseException('code128', 'Wrong code after the ~.'); + } + } else { + throw new BCGParseException('code128', 'There is no ~ at this location.'); + } + } + + /** + * Gets the "dotted" sequence for the $text based on the $currentMode. + * There is also a check if we use the special tilde ~ + * + * @param string $text + * @param string $currentMode + * @return string + */ + private function getSequenceParsed($text, $currentMode) { + if ($this->tilde) { + $sequence = ''; + $previousPos = 0; + while (($pos = strpos($text, '~', $previousPos)) !== false) { + $tildeData = self::extractTilde($text, $pos); + + $simpleTilde = ($tildeData === '~~'); + if ($simpleTilde && $currentMode !== 'B') { + throw new BCGParseException('code128', 'The Table ' . $currentMode . ' doesn\'t contain the character ~.'); + } + + // At this point, we know we have ~Fx + if ($tildeData !== '~F1' && $currentMode === 'C') { + // The mode C doesn't support ~F2, ~F3, ~F4 + throw new BCGParseException('code128', 'The Table C doesn\'t contain the function ' . $tildeData . '.'); + } + + $length = $pos - $previousPos; + if ($currentMode === 'C') { + if ($length % 2 === 1) { + throw new BCGParseException('code128', 'The text "' . $text . '" must have an even number of character to be encoded in Table C.'); + } + } + + $sequence .= str_repeat('.', $length); + $sequence .= '.'; + $sequence .= (!$simpleTilde) ? 'F' : ''; + $previousPos = $pos + strlen($tildeData); + } + + // Flushing + $length = strlen($text) - $previousPos; + if ($currentMode === 'C') { + if ($length % 2 === 1) { + throw new BCGParseException('code128', 'The text "' . $text . '" must have an even number of character to be encoded in Table C.'); + } + } + + $sequence .= str_repeat('.', $length); + + return $sequence; + } else { + return str_repeat('.', strlen($text)); + } + } + + /** + * Parses the text and returns the appropriate sequence for the Table A. + * + * @param string $text + * @param string $currentMode + * @return string + */ + private function setParseA($text, &$currentMode) { + $tmp = preg_quote($this->keysA, '/'); + + // If we accept the ~ for special character, we must allow it. + if ($this->tilde) { + $tmp .= '~'; + } + + $match = array(); + if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { + // We found something not allowed + throw new BCGParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table A. The character "' . $match[0] . '" is not allowed.'); + } else { + $latch = ($currentMode === 'A') ? '' : '0'; + $currentMode = 'A'; + + return $latch . $this->getSequenceParsed($text, $currentMode); + } + } + + /** + * Parses the text and returns the appropriate sequence for the Table B. + * + * @param string $text + * @param string $currentMode + * @return string + */ + private function setParseB($text, &$currentMode) { + $tmp = preg_quote($this->keysB, '/'); + + $match = array(); + if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { + // We found something not allowed + throw new BCGParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table B. The character "' . $match[0] . '" is not allowed.'); + } else { + $latch = ($currentMode === 'B') ? '' : '1'; + $currentMode = 'B'; + + return $latch . $this->getSequenceParsed($text, $currentMode); + } + } + + /** + * Parses the text and returns the appropriate sequence for the Table C. + * + * @param string $text + * @param string $currentMode + * @return string + */ + private function setParseC($text, &$currentMode) { + $tmp = preg_quote($this->keysC, '/'); + + // If we accept the ~ for special character, we must allow it. + if ($this->tilde) { + $tmp .= '~F'; + } + + $match = array(); + if (preg_match('/[^' . $tmp . ']/', $text, $match) === 1) { + // We found something not allowed + throw new BCGParseException('code128', 'The text "' . $text . '" can\'t be parsed with the Table C. The character "' . $match[0] . '" is not allowed.'); + } else { + $latch = ($currentMode === 'C') ? '' : '2'; + $currentMode = 'C'; + + return $latch . $this->getSequenceParsed($text, $currentMode); + } + } + + /** + * Depending on the $text, it will return the correct + * sequence to encode the text. + * + * @param string $text + * @param string $starting_text + * @return string + */ + private function getSequence($text, &$starting_text) { + $e = 10000; + $latLen = array( + array(0, 1, 1), + array(1, 0, 1), + array(1, 1, 0) + ); + $shftLen = array( + array($e, 1, $e), + array(1, $e, $e), + array($e, $e, $e) + ); + $charSiz = array(2, 2, 1); + + $startA = $e; + $startB = $e; + $startC = $e; + if ($starting_text === 'A') { $startA = 0; } + if ($starting_text === 'B') { $startB = 0; } + if ($starting_text === 'C') { $startC = 0; } + + $curLen = array($startA, $startB, $startC); + $curSeq = array(null, null, null); + + $nextNumber = false; + + $x = 0; + $xLen = strlen($text); + for ($x = 0; $x < $xLen; $x++) { + $input = $text[$x]; + + // 1. + for ($i = 0; $i < 3; $i++) { + for ($j = 0; $j < 3; $j++) { + if (($curLen[$i] + $latLen[$i][$j]) < $curLen[$j]) { + $curLen[$j] = $curLen[$i] + $latLen[$i][$j]; + $curSeq[$j] = $curSeq[$i] . $j; + } + } + } + + // 2. + $nxtLen = array($e, $e, $e); + $nxtSeq = array(); + + // 3. + $flag = false; + $posArray = array(); + + // Special case, we do have a tilde and we process them + if ($this->tilde && $input === '~') { + $tildeData = self::extractTilde($text, $x); + + if ($tildeData === '~~') { + // We simply skip a tilde + $posArray[] = 1; + $x++; + } elseif (substr($tildeData, 0, 2) === '~F') { + $v = intval($tildeData[2]); + $posArray[] = 0; + $posArray[] = 1; + if ($v === 1) { + $posArray[] = 2; + } + + $x += 2; + $flag = true; + } + } else { + $pos = strpos($this->keysA, $input); + if ($pos !== false) { + $posArray[] = 0; + } + + $pos = strpos($this->keysB, $input); + if ($pos !== false) { + $posArray[] = 1; + } + + // Do we have the next char a number?? OR a ~F1 + $pos = strpos($this->keysC, $input); + if ($nextNumber || ($pos !== false && isset($text[$x + 1]) && strpos($this->keysC, $text[$x + 1]) !== false)) { + $nextNumber = !$nextNumber; + $posArray[] = 2; + } + } + + $c = count($posArray); + for ($i = 0; $i < $c; $i++) { + if (($curLen[$posArray[$i]] + $charSiz[$posArray[$i]]) < $nxtLen[$posArray[$i]]) { + $nxtLen[$posArray[$i]] = $curLen[$posArray[$i]] + $charSiz[$posArray[$i]]; + $nxtSeq[$posArray[$i]] = $curSeq[$posArray[$i]] . '.'; + } + + for ($j = 0; $j < 2; $j++) { + if ($j === $posArray[$i]) { continue; } + if (($curLen[$j] + $shftLen[$j][$posArray[$i]] + $charSiz[$posArray[$i]]) < $nxtLen[$j]) { + $nxtLen[$j] = $curLen[$j] + $shftLen[$j][$posArray[$i]] + $charSiz[$posArray[$i]]; + $nxtSeq[$j] = $curSeq[$j] . chr($posArray[$i] + 65) . '.'; + } + } + } + + if ($c === 0) { + // We found an unsuported character + throw new BCGParseException('code128', 'Character ' . $input . ' not supported.'); + } + + if ($flag) { + for ($i = 0; $i < 5; $i++) { + if (isset($nxtSeq[$i])) { + $nxtSeq[$i] .= 'F'; + } + } + } + + // 4. + for ($i = 0; $i < 3; $i++) { + $curLen[$i] = $nxtLen[$i]; + if (isset($nxtSeq[$i])) { + $curSeq[$i] = $nxtSeq[$i]; + } + } + } + + // Every curLen under $e is possible but we take the smallest + $m = $e; + $k = -1; + for ($i = 0; $i < 3; $i++) { + if ($curLen[$i] < $m) { + $k = $i; + $m = $curLen[$i]; + } + } + + if ($k === -1) { + return ''; + } + + return $curSeq[$k]; + } + + /** + * Depending on the sequence $seq given (returned from getSequence()), + * this method will return the code stream in an array. Each char will be a + * string of bit based on the Code 128. + * + * Each letter from the sequence represents bits. + * + * 0 to 2 are latches + * A to B are Shift + Letter + * . is a char in the current encoding + * + * @param string $text + * @param string $seq + * @return string[][] + */ + private function createBinaryStream($text, $seq) { + $c = strlen($seq); + + $data = array(); // code stream + $indcheck = array(); // index for checksum + + $currentEncoding = 0; + if ($this->starting_text === 'A') { + $currentEncoding = 0; + $indcheck[] = self::KEY_STARTA; + $this->lastTable = 'A'; + } elseif ($this->starting_text === 'B') { + $currentEncoding = 1; + $indcheck[] = self::KEY_STARTB; + $this->lastTable = 'B'; + } elseif ($this->starting_text === 'C') { + $currentEncoding = 2; + $indcheck[] = self::KEY_STARTC; + $this->lastTable = 'C'; + } + + $data[] = $this->code[103 + $currentEncoding]; + + $temporaryEncoding = -1; + for ($i = 0, $counter = 0; $i < $c; $i++) { + $input = $seq[$i]; + $inputI = intval($input); + if ($input === '.') { + $this->encodeChar($data, $currentEncoding, $seq, $text, $i, $counter, $indcheck); + if ($temporaryEncoding !== -1) { + $currentEncoding = $temporaryEncoding; + $temporaryEncoding = -1; + } + } elseif ($input >= 'A' && $input <= 'B') { + // We shift + $encoding = ord($input) - 65; + $shift = $this->shift[$currentEncoding][$encoding]; + $indcheck[] = $shift; + $data[] = $this->code[$shift]; + if ($temporaryEncoding === -1) { + $temporaryEncoding = $currentEncoding; + } + + $currentEncoding = $encoding; + } elseif ($inputI >= 0 && $inputI < 3) { + $temporaryEncoding = -1; + + // We latch + $latch = $this->latch[$currentEncoding][$inputI]; + if ($latch !== null) { + $indcheck[] = $latch; + $this->lastTable = chr(65 + $inputI); + $data[] = $this->code[$latch]; + $currentEncoding = $inputI; + } + } + } + + return array($indcheck, $data); + } + + /** + * Encodes characters, base on its encoding and sequence + * + * @param int[] $data + * @param int $encoding + * @param string $seq + * @param string $text + * @param int $i + * @param int $counter + * @param int[] $indcheck + */ + private function encodeChar(&$data, $encoding, $seq, $text, &$i, &$counter, &$indcheck) { + if (isset($seq[$i + 1]) && $seq[$i + 1] === 'F') { + // We have a flag !! + if ($text[$counter + 1] === 'F') { + $number = $text[$counter + 2]; + $fnc = $this->fnc[$encoding][$number - 1]; + $indcheck[] = $fnc; + $data[] = $this->code[$fnc]; + + // Skip F + number + $counter += 2; + } else { + // Not supposed + } + + $i++; + } else { + if ($encoding === 2) { + // We take 2 numbers in the same time + $code = (int)substr($text, $counter, 2); + $indcheck[] = $code; + $data[] = $this->code[$code]; + $counter++; + $i++; + } else { + $keys = ($encoding === 0) ? $this->keysA : $this->keysB; + $pos = strpos($keys, $text[$counter]); + $indcheck[] = $pos; + $data[] = $this->code[$pos]; + } + } + + $counter++; + } + + /** + * Saves data into the classes. + * + * This method will save data, calculate real column number + * (if -1 was selected), the real error level (if -1 was + * selected)... It will add Padding to the end and generate + * the error codes. + * + * @param array $data + */ + private function setData($data) { + $this->indcheck = $data[0]; + $this->data = $data[1]; + $this->calculateChecksum(); + $this->data[] = $this->code[$this->checksumValue]; + $this->data[] = $this->code[self::KEY_STOP]; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcode39.barcode.php b/niucloud/core/util/barcode/class/BCGcode39.barcode.php new file mode 100644 index 0000000..11e3712 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcode39.barcode.php @@ -0,0 +1,193 @@ +starting = $this->ending = 43; + $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%', '*'); + $this->code = array( // 0 added to add an extra space + '0001101000', /* 0 */ + '1001000010', /* 1 */ + '0011000010', /* 2 */ + '1011000000', /* 3 */ + '0001100010', /* 4 */ + '1001100000', /* 5 */ + '0011100000', /* 6 */ + '0001001010', /* 7 */ + '1001001000', /* 8 */ + '0011001000', /* 9 */ + '1000010010', /* A */ + '0010010010', /* B */ + '1010010000', /* C */ + '0000110010', /* D */ + '1000110000', /* E */ + '0010110000', /* F */ + '0000011010', /* G */ + '1000011000', /* H */ + '0010011000', /* I */ + '0000111000', /* J */ + '1000000110', /* K */ + '0010000110', /* L */ + '1010000100', /* M */ + '0000100110', /* N */ + '1000100100', /* O */ + '0010100100', /* P */ + '0000001110', /* Q */ + '1000001100', /* R */ + '0010001100', /* S */ + '0000101100', /* T */ + '1100000010', /* U */ + '0110000010', /* V */ + '1110000000', /* W */ + '0100100010', /* X */ + '1100100000', /* Y */ + '0110100000', /* Z */ + '0100001010', /* - */ + '1100001000', /* . */ + '0110001000', /* */ + '0101010000', /* $ */ + '0101000100', /* / */ + '0100010100', /* + */ + '0001010100', /* % */ + '0100101000' /* * */ + ); + + $this->setChecksum(false); + } + + /** + * Sets if we display the checksum. + * + * @param bool $checksum + */ + public function setChecksum($checksum) { + $this->checksum = (bool)$checksum; + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + parent::parse(strtoupper($text)); // Only Capital Letters are Allowed + } + + /** + * Draws the Barcode. + * + * @param resource $im + */ + public function draw($im) { + // Starting * + $this->drawChar($im, $this->code[$this->starting], true); + + // Chars + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->text[$i]), true); + } + + // Checksum (rarely used) + if ($this->checksum === true) { + $this->calculateChecksum(); + $this->drawChar($im, $this->code[$this->checksumValue % 43], true); + } + + // Ending * + $this->drawChar($im, $this->code[$this->ending], true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a Barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $textlength = 13 * strlen($this->text); + $startlength = 13; + $checksumlength = 0; + if ($this->checksum === true) { + $checksumlength = 13; + } + + $endlength = 13; + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('code39', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('code39', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + if (strpos($this->text, '*') !== false) { + throw new BCGParseException('code39', 'The character \'*\' is not allowed.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $this->checksumValue += $this->findIndex($this->text[$i]); + } + + $this->checksumValue = $this->checksumValue % 43; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcode39extended.barcode.php b/niucloud/core/util/barcode/class/BCGcode39extended.barcode.php new file mode 100644 index 0000000..fca6f1a --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcode39extended.barcode.php @@ -0,0 +1,208 @@ +keys[self::EXTENDED_1] = '($)'; + $this->keys[self::EXTENDED_2] = '(/)'; + $this->keys[self::EXTENDED_3] = '(+)'; + $this->keys[self::EXTENDED_4] = '(%)'; + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + $this->text = $text; + + $data = array(); + $indcheck = array(); + + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $pos = array_search($this->text[$i], $this->keys); + if ($pos === false) { + // Search in extended? + $extended = self::getExtendedVersion($this->text[$i]); + if ($extended === false) { + throw new BCGParseException('code39extended', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } else { + $extc = strlen($extended); + for ($j = 0; $j < $extc; $j++) { + $v = $extended[$j]; + if ($v === '$') { + $indcheck[] = self::EXTENDED_1; + $data[] = $this->code[self::EXTENDED_1]; + } elseif ($v === '%') { + $indcheck[] = self::EXTENDED_2; + $data[] = $this->code[self::EXTENDED_2]; + } elseif ($v === '/') { + $indcheck[] = self::EXTENDED_3; + $data[] = $this->code[self::EXTENDED_3]; + } elseif ($v === '+') { + $indcheck[] = self::EXTENDED_4; + $data[] = $this->code[self::EXTENDED_4]; + } else { + $pos2 = array_search($v, $this->keys); + $indcheck[] = $pos2; + $data[] = $this->code[$pos2]; + } + } + } + } else { + $indcheck[] = $pos; + $data[] = $this->code[$pos]; + } + } + + $this->setData(array($indcheck, $data)); + $this->addDefaultLabel(); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Starting * + $this->drawChar($im, $this->code[$this->starting], true); + $c = count($this->data); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->data[$i], true); + } + + // Checksum (rarely used) + if ($this->checksum === true) { + $this->drawChar($im, $this->code[$this->checksumValue % 43], true); + } + + // Ending * + $this->drawChar($im, $this->code[$this->ending], true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $textlength = 13 * count($this->data); + $startlength = 13; + $checksumlength = 0; + if ($this->checksum === true) { + $checksumlength = 13; + } + + $endlength = 13; + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return BCGBarcode1D::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = count($this->data); + if ($c === 0) { + throw new BCGParseException('code39extended', 'No data has been entered.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + $this->checksumValue = 0; + $c = count($this->indcheck); + for ($i = 0; $i < $c; $i++) { + $this->checksumValue += $this->indcheck[$i]; + } + + $this->checksumValue = $this->checksumValue % 43; + } + + /** + * Saves data into the classes. + * + * This method will save data, calculate real column number + * (if -1 was selected), the real error level (if -1 was + * selected)... It will add Padding to the end and generate + * the error codes. + * + * @param array $data + */ + private function setData($data) { + $this->indcheck = $data[0]; + $this->data = $data[1]; + $this->calculateChecksum(); + } + + /** + * Returns the extended reprensentation of the character. + * + * @param string $char + * @return string + */ + private static function getExtendedVersion($char) { + $o = ord($char); + if ($o === 0) { + return '%U'; + } elseif ($o >= 1 && $o <= 26) { + return '$' . chr($o + 64); + } elseif (($o >= 33 && $o <= 44) || $o === 47 || $o === 48) { + return '/' . chr($o + 32); + } elseif ($o >= 97 && $o <= 122) { + return '+' . chr($o - 32); + } elseif ($o >= 27 && $o <= 31) { + return '%' . chr($o + 38); + } elseif ($o >= 59 && $o <= 63) { + return '%' . chr($o + 11); + } elseif ($o >= 91 && $o <= 95) { + return '%' . chr($o - 16); + } elseif ($o >= 123 && $o <= 127) { + return '%' . chr($o - 43); + } elseif ($o === 64) { + return '%V'; + } elseif ($o === 96) { + return '%W'; + } elseif ($o > 127) { + return false; + } else { + return $char; + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGcode93.barcode.php b/niucloud/core/util/barcode/class/BCGcode93.barcode.php new file mode 100644 index 0000000..480e2c8 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGcode93.barcode.php @@ -0,0 +1,301 @@ +starting = $this->ending = 47; /* * */ + $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%', '($)', '(%)', '(/)', '(+)', '(*)'); + $this->code = array( + '020001', /* 0 */ + '000102', /* 1 */ + '000201', /* 2 */ + '000300', /* 3 */ + '010002', /* 4 */ + '010101', /* 5 */ + '010200', /* 6 */ + '000003', /* 7 */ + '020100', /* 8 */ + '030000', /* 9 */ + '100002', /* A */ + '100101', /* B */ + '100200', /* C */ + '110001', /* D */ + '110100', /* E */ + '120000', /* F */ + '001002', /* G */ + '001101', /* H */ + '001200', /* I */ + '011001', /* J */ + '021000', /* K */ + '000012', /* L */ + '000111', /* M */ + '000210', /* N */ + '010011', /* O */ + '020010', /* P */ + '101001', /* Q */ + '101100', /* R */ + '100011', /* S */ + '100110', /* T */ + '110010', /* U */ + '111000', /* V */ + '001011', /* W */ + '001110', /* X */ + '011010', /* Y */ + '012000', /* Z */ + '010020', /* - */ + '200001', /* . */ + '200100', /* */ + '210000', /* $ */ + '001020', /* / */ + '002010', /* + */ + '100020', /* % */ + '010110', /*($)*/ + '201000', /*(%)*/ + '200010', /*(/)*/ + '011100', /*(+)*/ + '000030' /*(*)*/ + ); + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + $this->text = $text; + + $data = array(); + $indcheck = array(); + + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $pos = array_search($this->text[$i], $this->keys); + if ($pos === false) { + // Search in extended? + $extended = self::getExtendedVersion($this->text[$i]); + if ($extended === false) { + throw new BCGParseException('code93', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } else { + $extc = strlen($extended); + for ($j = 0; $j < $extc; $j++) { + $v = $extended[$j]; + if ($v === '$') { + $indcheck[] = self::EXTENDED_1; + $data[] = $this->code[self::EXTENDED_1]; + } elseif ($v === '%') { + $indcheck[] = self::EXTENDED_2; + $data[] = $this->code[self::EXTENDED_2]; + } elseif ($v === '/') { + $indcheck[] = self::EXTENDED_3; + $data[] = $this->code[self::EXTENDED_3]; + } elseif ($v === '+') { + $indcheck[] = self::EXTENDED_4; + $data[] = $this->code[self::EXTENDED_4]; + } else { + $pos2 = array_search($v, $this->keys); + $indcheck[] = $pos2; + $data[] = $this->code[$pos2]; + } + } + } + } else { + $indcheck[] = $pos; + $data[] = $this->code[$pos]; + } + } + + $this->setData(array($indcheck, $data)); + $this->addDefaultLabel(); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Starting * + $this->drawChar($im, $this->code[$this->starting], true); + $c = count($this->data); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->data[$i], true); + } + + // Checksum + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->code[$this->checksumValue[$i]], true); + } + + // Ending * + $this->drawChar($im, $this->code[$this->ending], true); + + // Draw a Final Bar + $this->drawChar($im, '0', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 9; + $textlength = 9 * count($this->data); + $checksumlength = 2 * 9; + $endlength = 9 + 1; // + final bar + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = count($this->data); + if ($c === 0) { + throw new BCGParseException('code93', 'No data has been entered.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Checksum + // First CheckSUM "C" + // The "C" checksum character is the modulo 47 remainder of the sum of the weighted + // value of the data characters. The weighting value starts at "1" for the right-most + // data character, 2 for the second to last, 3 for the third-to-last, and so on up to 20. + // After 20, the sequence wraps around back to 1. + + // Second CheckSUM "K" + // Same as CheckSUM "C" but we count the CheckSum "C" at the end + // After 15, the sequence wraps around back to 1. + $sequence_multiplier = array(20, 15); + $this->checksumValue = array(); + $indcheck = $this->indcheck; + for ($z = 0; $z < 2; $z++) { + $checksum = 0; + for ($i = count($indcheck), $j = 0; $i > 0; $i--, $j++) { + $multiplier = $i % $sequence_multiplier[$z]; + if ($multiplier === 0) { + $multiplier = $sequence_multiplier[$z]; + } + + $checksum += $indcheck[$j] * $multiplier; + } + + $this->checksumValue[$z] = $checksum % 47; + $indcheck[] = $this->checksumValue[$z]; + } + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + $ret = ''; + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $ret .= $this->keys[$this->checksumValue[$i]]; + } + + return $ret; + } + + return false; + } + + /** + * Saves data into the classes. + * + * This method will save data, calculate real column number + * (if -1 was selected), the real error level (if -1 was + * selected)... It will add Padding to the end and generate + * the error codes. + * + * @param array $data + */ + private function setData($data) { + $this->indcheck = $data[0]; + $this->data = $data[1]; + $this->calculateChecksum(); + } + + /** + * Returns the extended reprensentation of the character. + * + * @param string $char + * @return string + */ + private static function getExtendedVersion($char) { + $o = ord($char); + if ($o === 0) { + return '%U'; + } elseif ($o >= 1 && $o <= 26) { + return '$' . chr($o + 64); + } elseif (($o >= 33 && $o <= 44) || $o === 47 || $o === 48) { + return '/' . chr($o + 32); + } elseif ($o >= 97 && $o <= 122) { + return '+' . chr($o - 32); + } elseif ($o >= 27 && $o <= 31) { + return '%' . chr($o + 38); + } elseif ($o >= 59 && $o <= 63) { + return '%' . chr($o + 11); + } elseif ($o >= 91 && $o <= 95) { + return '%' . chr($o - 16); + } elseif ($o >= 123 && $o <= 127) { + return '%' . chr($o - 43); + } elseif ($o === 64) { + return '%V'; + } elseif ($o === 96) { + return '%W'; + } elseif ($o > 127) { + return false; + } else { + return $char; + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGean13.barcode.php b/niucloud/core/util/barcode/class/BCGean13.barcode.php new file mode 100644 index 0000000..5289183 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGean13.barcode.php @@ -0,0 +1,322 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + + // Left-Hand Odd Parity starting with a space + // Left-Hand Even Parity is the inverse (0=0012) starting with a space + // Right-Hand is the same of Left-Hand starting with a bar + $this->code = array( + '2100', /* 0 */ + '1110', /* 1 */ + '1011', /* 2 */ + '0300', /* 3 */ + '0021', /* 4 */ + '0120', /* 5 */ + '0003', /* 6 */ + '0201', /* 7 */ + '0102', /* 8 */ + '2001' /* 9 */ + ); + + // Parity, 0=Odd, 1=Even for manufacturer code. Depending on 1st System Digit + $this->codeParity = array( + array(0, 0, 0, 0, 0), /* 0 */ + array(0, 1, 0, 1, 1), /* 1 */ + array(0, 1, 1, 0, 1), /* 2 */ + array(0, 1, 1, 1, 0), /* 3 */ + array(1, 0, 0, 1, 1), /* 4 */ + array(1, 1, 0, 0, 1), /* 5 */ + array(1, 1, 1, 0, 0), /* 6 */ + array(1, 0, 1, 0, 1), /* 7 */ + array(1, 0, 1, 1, 0), /* 8 */ + array(1, 1, 0, 1, 0) /* 9 */ + ); + + $this->alignDefaultLabel(true); + } + + public function alignDefaultLabel($align) { + $this->alignLabel = (bool)$align; + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $this->drawBars($im); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + + if ($this->isDefaultEanLabelEnabled()) { + $dimension = $this->labelCenter1->getDimension(); + $this->drawExtendedBars($im, $dimension[1] - 2); + } + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 3; + $centerlength = 5; + $textlength = 12 * 7; + $endlength = 3; + + $w += $startlength + $centerlength + $textlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + if ($this->isDefaultEanLabelEnabled()) { + $this->processChecksum(); + $label = $this->getLabel(); + $font = $this->font; + + $this->labelLeft = new BCGLabel(substr($label, 0, 1), $font, BCGLabel::POSITION_LEFT, BCGLabel::ALIGN_BOTTOM); + $this->labelLeft->setSpacing(4 * $this->scale); + + $this->labelCenter1 = new BCGLabel(substr($label, 1, 6), $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $labelCenter1Dimension = $this->labelCenter1->getDimension(); + $this->labelCenter1->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 2); + + $this->labelCenter2 = new BCGLabel(substr($label, 7, 5) . $this->keys[$this->checksumValue], $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $this->labelCenter2->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 48); + + if ($this->alignLabel) { + $labelDimension = $this->labelCenter1->getDimension(); + $this->labelLeft->setOffset($labelDimension[1]); + } else { + $labelDimension = $this->labelLeft->getDimension(); + $this->labelLeft->setOffset($labelDimension[1] / 2); + } + + $this->addLabel($this->labelLeft); + $this->addLabel($this->labelCenter1); + $this->addLabel($this->labelCenter2); + } + } + + /** + * Checks if the default ean label is enabled. + * + * @return bool + */ + protected function isDefaultEanLabelEnabled() { + $label = $this->getLabel(); + $font = $this->font; + return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('ean13', 'No data has been entered.'); + } + + $this->checkCharsAllowed(); + $this->checkCorrectLength(); + + parent::validate(); + } + + /** + * Check chars allowed. + */ + protected function checkCharsAllowed() { + // Checking if all chars are allowed + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('ean13', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + } + + /** + * Check correct length. + */ + protected function checkCorrectLength() { + // If we have 13 chars, just flush the last one without throwing anything + $c = strlen($this->text); + if ($c === 13) { + $this->text = substr($this->text, 0, 12); + } elseif ($c !== 12) { + throw new BCGParseException('ean13', 'Must contain 12 digits, the 13th digit is automatically added.'); + } + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "odd" position, + // and assign odd/even to each character moving from right to left + // Odd Position = 3, Even Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $odd = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($odd === true) { + $multiplier = 3; + $odd = false; + } else { + $multiplier = 1; + $odd = true; + } + + if (!isset($this->keys[$this->text[$i - 1]])) { + return; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + + $this->checksumValue = (10 - $this->checksumValue % 10) % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } + + /** + * Draws the bars + * + * @param resource $im + */ + protected function drawBars($im) { + // Checksum + $this->calculateChecksum(); + $temp_text = $this->text . $this->keys[$this->checksumValue]; + + // Starting Code + $this->drawChar($im, '000', true); + + // Draw Second Code + $this->drawChar($im, $this->findCode($temp_text[1]), false); + + // Draw Manufacturer Code + for ($i = 0; $i < 5; $i++) { + $this->drawChar($im, self::inverse($this->findCode($temp_text[$i + 2]), $this->codeParity[(int)$temp_text[0]][$i]), false); + } + + // Draw Center Guard Bar + $this->drawChar($im, '00000', false); + + // Draw Product Code + for ($i = 7; $i < 13; $i++) { + $this->drawChar($im, $this->findCode($temp_text[$i]), true); + } + + // Draw Right Guard Bar + $this->drawChar($im, '000', true); + } + + /** + * Draws the extended bars on the image. + * + * @param resource $im + * @param int $plus + */ + protected function drawExtendedBars($im, $plus) { + $rememberX = $this->positionX; + $rememberH = $this->thickness; + + // We increase the bars + $this->thickness = $this->thickness + intval($plus / $this->scale); + $this->positionX = 0; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Center Guard Bar + $this->positionX += 44; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Last Bars + $this->positionX += 44; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + $this->positionX = $rememberX; + $this->thickness = $rememberH; + } + + /** + * Inverses the string when the $inverse parameter is equal to 1. + * + * @param string $text + * @param int $inverse + * @return string + */ + private static function inverse($text, $inverse = 1) { + if ($inverse === 1) { + $text = strrev($text); + } + + return $text; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGean8.barcode.php b/niucloud/core/util/barcode/class/BCGean8.barcode.php new file mode 100644 index 0000000..b89eb77 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGean8.barcode.php @@ -0,0 +1,244 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + + // Left-Hand Odd Parity starting with a space + // Right-Hand is the same of Left-Hand starting with a bar + $this->code = array( + '2100', /* 0 */ + '1110', /* 1 */ + '1011', /* 2 */ + '0300', /* 3 */ + '0021', /* 4 */ + '0120', /* 5 */ + '0003', /* 6 */ + '0201', /* 7 */ + '0102', /* 8 */ + '2001' /* 9 */ + ); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Checksum + $this->calculateChecksum(); + $temp_text = $this->text . $this->keys[$this->checksumValue]; + + // Starting Code + $this->drawChar($im, '000', true); + + // Draw First 4 Chars (Left-Hand) + for ($i = 0; $i < 4; $i++) { + $this->drawChar($im, $this->findCode($temp_text[$i]), false); + } + + // Draw Center Guard Bar + $this->drawChar($im, '00000', false); + + // Draw Last 4 Chars (Right-Hand) + for ($i = 4; $i < 8; $i++) { + $this->drawChar($im, $this->findCode($temp_text[$i]), true); + } + + // Draw Right Guard Bar + $this->drawChar($im, '000', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + + if ($this->isDefaultEanLabelEnabled()) { + $dimension = $this->labelRight->getDimension(); + $this->drawExtendedBars($im, $dimension[1] - 2); + } + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 3; + $centerlength = 5; + $textlength = 8 * 7; + $endlength = 3; + + $w += $startlength + $centerlength + $textlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + if ($this->isDefaultEanLabelEnabled()) { + $this->processChecksum(); + $label = $this->getLabel(); + $font = $this->font; + + $this->labelLeft = new BCGLabel(substr($label, 0, 4), $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $labelLeftDimension = $this->labelLeft->getDimension(); + $this->labelLeft->setOffset(($this->scale * 30 - $labelLeftDimension[0]) / 2 + $this->scale * 2); + + $this->labelRight = new BCGLabel(substr($label, 4, 3) . $this->keys[$this->checksumValue], $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $labelRightDimension = $this->labelRight->getDimension(); + $this->labelRight->setOffset(($this->scale * 30 - $labelRightDimension[0]) / 2 + $this->scale * 34); + + $this->addLabel($this->labelLeft); + $this->addLabel($this->labelRight); + } + } + + /** + * Checks if the default ean label is enabled. + * + * @return bool + */ + protected function isDefaultEanLabelEnabled() { + $label = $this->getLabel(); + $font = $this->font; + return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('ean8', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('ean8', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // If we have 8 chars just flush the last one + if ($c === 8) { + $this->text = substr($this->text, 0, 7); + } elseif ($c !== 7) { + throw new BCGParseException('ean8', 'Must contain 7 digits, the 8th digit is automatically added.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "odd" position, + // and assign odd/even to each character moving from right to left + // Odd Position = 3, Even Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $odd = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($odd === true) { + $multiplier = 3; + $odd = false; + } else { + $multiplier = 1; + $odd = true; + } + + if (!isset($this->keys[$this->text[$i - 1]])) { + return; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + + $this->checksumValue = (10 - $this->checksumValue % 10) % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } + + /** + * Draws the extended bars on the image. + * + * @param resource $im + * @param int $plus + */ + private function drawExtendedBars($im, $plus) { + $rememberX = $this->positionX; + $rememberH = $this->thickness; + + // We increase the bars + $this->thickness = $this->thickness + intval($plus / $this->scale); + $this->positionX = 0; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Center Guard Bar + $this->positionX += 30; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Last Bars + $this->positionX += 30; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + $this->positionX = $rememberX; + $this->thickness = $rememberH; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGgs1128.barcode.php b/niucloud/core/util/barcode/class/BCGgs1128.barcode.php new file mode 100644 index 0000000..0393f24 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGgs1128.barcode.php @@ -0,0 +1,679 @@ +identifiersAi = array( + '00' => array(self::NUMERIC, 18, 18, true), + '01' => array(self::NUMERIC, 14, 14, true), + '02' => array(self::NUMERIC, 14, 14, true), + '10' => array(self::ALPHA_NUMERIC, 1, 20, false), + '11' => array(self::DATE_YYMMDD, 6, 6, false), + '12' => array(self::DATE_YYMMDD, 6, 6, false), + '13' => array(self::DATE_YYMMDD, 6, 6, false), + '15' => array(self::DATE_YYMMDD, 6, 6, false), + '17' => array(self::DATE_YYMMDD, 6, 6, false), + '20' => array(self::NUMERIC, 2, 2, false), + '21' => array(self::ALPHA_NUMERIC, 1, 20, false), + '240' => array(self::ALPHA_NUMERIC, 1, 30, false), + '241' => array(self::ALPHA_NUMERIC, 1, 30, false), + '250' => array(self::ALPHA_NUMERIC, 1, 30, false), + '251' => array(self::ALPHA_NUMERIC, 1, 30, false), + '253' => array(self::NUMERIC, 14, 30, false), + '30' => array(self::NUMERIC, 1, 8, false), + '310y' => array(self::NUMERIC, 6, 6, false), + '311y' => array(self::NUMERIC, 6, 6, false), + '312y' => array(self::NUMERIC, 6, 6, false), + '313y' => array(self::NUMERIC, 6, 6, false), + '314y' => array(self::NUMERIC, 6, 6, false), + '315y' => array(self::NUMERIC, 6, 6, false), + '316y' => array(self::NUMERIC, 6, 6, false), + '320y' => array(self::NUMERIC, 6, 6, false), + '321y' => array(self::NUMERIC, 6, 6, false), + '322y' => array(self::NUMERIC, 6, 6, false), + '323y' => array(self::NUMERIC, 6, 6, false), + '324y' => array(self::NUMERIC, 6, 6, false), + '325y' => array(self::NUMERIC, 6, 6, false), + '326y' => array(self::NUMERIC, 6, 6, false), + '327y' => array(self::NUMERIC, 6, 6, false), + '328y' => array(self::NUMERIC, 6, 6, false), + '329y' => array(self::NUMERIC, 6, 6, false), + '330y' => array(self::NUMERIC, 6, 6, false), + '331y' => array(self::NUMERIC, 6, 6, false), + '332y' => array(self::NUMERIC, 6, 6, false), + '333y' => array(self::NUMERIC, 6, 6, false), + '334y' => array(self::NUMERIC, 6, 6, false), + '335y' => array(self::NUMERIC, 6, 6, false), + '336y' => array(self::NUMERIC, 6, 6, false), + '337y' => array(self::NUMERIC, 6, 6, false), + '340y' => array(self::NUMERIC, 6, 6, false), + '341y' => array(self::NUMERIC, 6, 6, false), + '342y' => array(self::NUMERIC, 6, 6, false), + '343y' => array(self::NUMERIC, 6, 6, false), + '344y' => array(self::NUMERIC, 6, 6, false), + '345y' => array(self::NUMERIC, 6, 6, false), + '346y' => array(self::NUMERIC, 6, 6, false), + '347y' => array(self::NUMERIC, 6, 6, false), + '348y' => array(self::NUMERIC, 6, 6, false), + '349y' => array(self::NUMERIC, 6, 6, false), + '350y' => array(self::NUMERIC, 6, 6, false), + '351y' => array(self::NUMERIC, 6, 6, false), + '352y' => array(self::NUMERIC, 6, 6, false), + '353y' => array(self::NUMERIC, 6, 6, false), + '354y' => array(self::NUMERIC, 6, 6, false), + '355y' => array(self::NUMERIC, 6, 6, false), + '356y' => array(self::NUMERIC, 6, 6, false), + '357y' => array(self::NUMERIC, 6, 6, false), + '360y' => array(self::NUMERIC, 6, 6, false), + '361y' => array(self::NUMERIC, 6, 6, false), + '362y' => array(self::NUMERIC, 6, 6, false), + '363y' => array(self::NUMERIC, 6, 6, false), + '364y' => array(self::NUMERIC, 6, 6, false), + '365y' => array(self::NUMERIC, 6, 6, false), + '366y' => array(self::NUMERIC, 6, 6, false), + '367y' => array(self::NUMERIC, 6, 6, false), + '368y' => array(self::NUMERIC, 6, 6, false), + '369y' => array(self::NUMERIC, 6, 6, false), + '37' => array(self::NUMERIC, 1, 8, false), + '390y' => array(self::NUMERIC, 1, 15, false), + '391y' => array(self::NUMERIC, 4, 18, false), + '392y' => array(self::NUMERIC, 1, 15, false), + '393y' => array(self::NUMERIC, 4, 18, false), + '400' => array(self::ALPHA_NUMERIC, 1, 30, false), + '401' => array(self::ALPHA_NUMERIC, 1, 30, false), + '402' => array(self::NUMERIC, 17, 17, false), + '403' => array(self::ALPHA_NUMERIC, 1, 30, false), + '410' => array(self::NUMERIC, 13, 13, true), + '411' => array(self::NUMERIC, 13, 13, true), + '412' => array(self::NUMERIC, 13, 13, true), + '413' => array(self::NUMERIC, 13, 13, true), + '414' => array(self::NUMERIC, 13, 13, true), + '415' => array(self::NUMERIC, 13, 13, true), + '420' => array(self::ALPHA_NUMERIC, 1, 20, false), + '421' => array(self::ALPHA_NUMERIC, 4, 12, false), + '422' => array(self::NUMERIC, 3, 3, false), + '8001' => array(self::NUMERIC, 14, 14, false), + '8002' => array(self::ALPHA_NUMERIC, 1, 20, false), + '8003' => array(self::ALPHA_NUMERIC, 15, 30, false), + '8004' => array(self::ALPHA_NUMERIC, 1, 30, false), + '8005' => array(self::NUMERIC, 6, 6, false), + '8006' => array(self::NUMERIC, 18, 18, false), + '8007' => array(self::ALPHA_NUMERIC, 1, 30, false), + '8018' => array(self::NUMERIC, 18, 18, false), + '8020' => array(self::ALPHA_NUMERIC, 1, 25, false), + '8100' => array(self::NUMERIC, 6, 6, false), + '8101' => array(self::NUMERIC, 10, 10, false), + '8102' => array(self::NUMERIC, 2, 2, false), + '90' => array(self::ALPHA_NUMERIC, 1, 30, false), + '91' => array(self::ALPHA_NUMERIC, 1, 30, false), + '92' => array(self::ALPHA_NUMERIC, 1, 30, false), + '93' => array(self::ALPHA_NUMERIC, 1, 30, false), + '94' => array(self::ALPHA_NUMERIC, 1, 30, false), + '95' => array(self::ALPHA_NUMERIC, 1, 30, false), + '96' => array(self::ALPHA_NUMERIC, 1, 30, false), + '97' => array(self::ALPHA_NUMERIC, 1, 30, false), + '98' => array(self::ALPHA_NUMERIC, 1, 30, false), + '99' => array(self::ALPHA_NUMERIC, 1, 30, false) + ); + + $this->setStrictMode(true); + $this->setTilde(true); + $this->setAllowsUnknownIdentifier(false); + $this->setNoLengthLimit(false); + } + + /** + * Gets the content checksum for an identifier. + * Do not pass the identifier code. + * + * @param string $content + * @return int + */ + public static function getAiContentChecksum($content) { + return self::calculateChecksumMod10($content); + } + + /** + * Enables or disables the strict mode. + * + * @param bool $strictMode + */ + public function setStrictMode($strictMode) { + $this->strictMode = $strictMode; + } + + /** + * Gets if the strict mode is activated. + * + * @return bool + */ + public function getStrictMode() { + return $this->strictMode; + } + + /** + * Allows unknown identifiers. + * + * @param bool $allow + */ + public function setAllowsUnknownIdentifier($allow) { + $this->allowsUnknownIdentifier = (bool)$allow; + } + + /** + * Gets if unkmown identifiers are allowed. + * + * @return bool + */ + public function getAllowsUnknownIdentifier() { + return $this->allowsUnknownIdentifier; + } + + /** + * Removes the limit of 48 characters. + * + * @param bool $noLengthLimit + */ + public function setNoLengthLimit($noLengthLimit) { + $this->noLengthLimit = (bool)$noLengthLimit; + } + + /** + * Gets if the limit of 48 characters is removed. + * + * @return bool + */ + public function getNoLengthLimit() { + return $this->noLengthLimit; + } + + /** + * Parses Text. + * + * @param string $text + */ + public function parse($text) { + parent::parse($this->parseGs1128($text)); + } + + /** + * Formats data for gs1-128. + * + * @return string + */ + private function formatGs1128() { + $formatedText = '~F1'; + $formatedLabel = ''; + $c = count($this->identifiersId); + + for ($i = 0; $i < $c; $i++) { + if ($i > 0) { + $formatedLabel .= ' '; + } + + if ($this->identifiersId[$i] !== null) { + $formatedLabel .= '(' . $this->identifiersId[$i] . ')'; + } + + $formatedText .= $this->identifiersId[$i]; + + $formatedLabel .= $this->identifiersContent[$i]; + $formatedText .= $this->identifiersContent[$i]; + + if (isset($this->identifiersAi[$this->identifiersId[$i]])) { + $ai_data = $this->identifiersAi[$this->identifiersId[$i]]; + } elseif (isset($this->identifiersId[$i][3])) { + $identifierWithVar = substr($this->identifiersId[$i], 0, -1) . 'y'; + $ai_data = isset($this->identifiersAi[$identifierWithVar]) ? $this->identifiersAi[$identifierWithVar] : null; + } else { + $ai_data = null; + } + + /* We'll check if we need to add a ~F1 () char */ + /* If we use the legacy mode, we always add a ~F1 () char between AIs */ + if ($ai_data !== null) { + if ((strlen($this->identifiersContent[$i]) < $ai_data[self::MAXLENGTH] && ($i + 1) !== $c) || (!$this->strictMode && ($i + 1) !== $c)) { + $formatedText .= '~F1'; + } + } elseif ($this->allowsUnknownIdentifier && $this->identifiersId[$i] === null && ($i + 1) !== $c) { + /* If this id is unknown, we add a ~F1 () char */ + $formatedText .= '~F1'; + } + } + + if ($this->noLengthLimit === false && (strlen(str_replace('~F1', chr(29), $formatedText)) - 1) > self::MAX_GS1128_CHARS) { + throw new BCGParseException('gs1128', 'The barcode can\'t contain more than ' . self::MAX_GS1128_CHARS . ' characters.'); + } + + $this->label = $formatedLabel; + return $formatedText; + } + + /** + * Parses the text to gs1-128. + * + * @param mixed $text + * @return mixed + */ + private function parseGs1128($text) { + /* We format correctly what the user gives */ + if (is_array($text)) { + $formatArray = array(); + foreach ($text as $content) { + if (is_array($content)) { /* double array */ + if (count($content) === 2) { + if (is_array($content[self::ID]) || is_array($content[self::CONTENT])) { + throw new BCGParseException('gs1128', 'Double arrays can\'t contain arrays.'); + } else { + $formatArray[] = '(' . $content[self::ID] . ')' . $content[self::CONTENT]; + } + } else { + throw new BCGParseException('gs1128', 'Double arrays must contain 2 values.'); + } + } else { /* simple array */ + $formatArray[] = $content; + } + } + + unset($text); + $text = $formatArray; + } else { /* string */ + $text = array($text); + } + + $textCount = count($text); + for ($cmpt = 0; $cmpt < $textCount; $cmpt++) { + /* We parse the content of the array */ + if (!$this->parseContent($text[$cmpt])) { + return; + } + } + + return $this->formatGs1128(); + } + + /** + * Splits the id and the content for each application identifiers (AIs). + * + * @param string $text + * @param int $cmpt + * @return bool + */ + private function parseContent($text) { + /* $yAlreadySet has 3 states: */ + /* null: There is no variable in the ID; true: the variable is already set; false: the variable is not set yet; */ + $content = null; + $yAlreadySet = null; + $realNameId = null; + $separatorsFound = 0; + $checksumAdded = 0; + $decimalPointRemoved = 0; + $toParse = str_replace('~F1', chr(29), $text); + $nbCharToParse = strlen($toParse); + $nbCharId = 0; + $isFormated = $toParse[0] === '(' ? true : false; + $maxCharId = $isFormated ? self::MAX_ID_FORMATED : self::MAX_ID_NOT_FORMATED; + $id = strtolower(substr($toParse, 0, min($maxCharId, $nbCharToParse))); + $id = $isFormated ? $this->findIdFormated($id, $yAlreadySet, $realNameId) : $this->findIdNotFormated($id, $yAlreadySet, $realNameId); + + if ($id === false) { + if ($this->allowsUnknownIdentifier === false) { + return false; + } + + $id = null; + $nbCharId = 0; + $content = $toParse; + } else { + $nbCharId = strlen($id) + ($isFormated ? 2 : 0); + $n = min($this->identifiersAi[$realNameId][self::MAXLENGTH], $nbCharToParse); + $content = substr($toParse, $nbCharId, $n); + } + + if ($id !== null) { + /* If we have an AI with an "y" var, we check if there is a decimal point in the next *MAXLENGTH* characters */ + /* if there is one, we take an extra character */ + if ($yAlreadySet !== null) { + if (strpos($content, '.') !== false || strpos($content, ',') !== false) { + $n++; + if ($n <= $nbCharToParse) { + /* We take an extra char */ + $content = substr($toParse, $nbCharId, $n); + } + } + } + } + + /* We check for separator */ + $separator = strpos($content, chr(29)); + if ($separator !== false) { + $content = substr($content, 0, $separator); + $separatorsFound++; + } + + if ($id !== null) { + /* We check the conformity */ + if (!$this->checkConformity($content, $id, $realNameId)) { + return false; + } + + /* We check the checksum */ + if (!$this->checkChecksum($content, $id, $realNameId, $checksumAdded)) { + return false; + } + + /* We check the vars */ + if (!$this->checkVars($content, $id, $yAlreadySet, $decimalPointRemoved)) { + return false; + } + } + + $this->identifiersId[] = $id; + $this->identifiersContent[] = $content; + + $nbCharLastContent = (((strlen($content) + $nbCharId) - $checksumAdded) + $decimalPointRemoved) + $separatorsFound; + if ($nbCharToParse - $nbCharLastContent > 0) { + /* If there is more than one content in this array, we parse again */ + $otherContent = substr($toParse, $nbCharLastContent, $nbCharToParse); + $nbCharOtherContent = strlen($otherContent); + + if ($otherContent[0] === chr(29)) { + $otherContent = substr($otherContent, 1); + $nbCharOtherContent--; + } + + if ($nbCharOtherContent > 0) { + $text = $otherContent; + return $this->parseContent($text); + } + } + + return true; + } + + /** + * Checks if an id exists. + * + * @param string $id + * @param bool $yAlreadySet + * @param string $realNameId + * @return bool + */ + private function idExists($id, &$yAlreadySet, &$realNameId) { + $yFound = isset($id[3]) && $id[3] === 'y'; + $idVarAdded = substr($id, 0, -1) . 'y'; + + if (isset($this->identifiersAi[$id])) { + if ($yFound) { + $yAlreadySet = false; + } + + $realNameId = $id; + return true; + } elseif (!$yFound && isset($this->identifiersAi[$idVarAdded])) { + /* if the id don't exist, we try to find this id with "y" at the last char */ + $yAlreadySet = true; + $realNameId = $idVarAdded; + return true; + } + + return false; + } + + /** + * Finds ID with formated content. + * + * @param string $id + * @param bool $yAlreadySet + * @param string $realNameId + * @return mixed + */ + private function findIdFormated($id, &$yAlreadySet, &$realNameId) { + $pos = strpos($id, ')'); + if ($pos === false) { + throw new BCGParseException('gs1128', 'Identifiers must have no more than 4 characters.'); + } else { + if ($pos < 3) { + throw new BCGParseException('gs1128', 'Identifiers must have at least 2 characters.'); + } + + $id = substr($id, 1, $pos - 1); + if ($this->idExists($id, $yAlreadySet, $realNameId)) { + return $id; + } + + if ($this->allowsUnknownIdentifier === false) { + throw new BCGParseException('gs1128', 'The identifier ' . $id . ' doesn\'t exist.'); + } + + return false; + } + } + + /** + * Finds ID with non-formated content. + * + * @param string $id + * @param bool $yAlreadySet + * @param string $realNameId + * @return mixed + */ + private function findIdNotFormated($id, &$yAlreadySet, &$realNameId) { + $tofind = $id; + + while (strlen($tofind) >= 2) { + if ($this->idExists($tofind, $yAlreadySet, $realNameId)) { + return $tofind; + } else { + $tofind = substr($tofind, 0, -1); + } + } + + if ($this->allowsUnknownIdentifier === false) { + throw new BCGParseException('gs1128', 'Error in formatting, can\'t find an identifier.'); + } + + return false; + } + + /** + * Checks confirmity of the content. + * + * @param string $content + * @param string $id + * @param string $realNameId + * @return bool + */ + private function checkConformity(&$content, $id, $realNameId) { + switch ($this->identifiersAi[$realNameId][self::KIND_OF_DATA]) { + case self::NUMERIC: + $content = str_replace(',', '.', $content); + if (!preg_match("/^[0-9.]+$/", $content)) { + throw new BCGParseException('gs1128', 'The value of "' . $id . '" must be numerical.'); + } + + break; + case self::DATE_YYMMDD: + $valid_date = true; + if (preg_match("/^[0-9]{6}$/", $content)) { + $year = substr($content, 0, 2); + $month = substr($content, 2, 2); + $day = substr($content, 4, 2); + + /* day can be 00 if we only need month and year */ + if (intval($month) < 1 || intval($month) > 12 || intval($day) < 0 || intval($day) > 31) { + $valid_date = false; + } + } else { + $valid_date = false; + } + + if (!$valid_date) { + throw new BCGParseException('gs1128', 'The value of "' . $id . '" must be in YYMMDD format.'); + } + + break; + } + + // We check the length of the content + $nbCharContent = strlen($content); + $checksumChar = 0; + $minlengthContent = $this->identifiersAi[$realNameId][self::MINLENGTH]; + $maxlengthContent = $this->identifiersAi[$realNameId][self::MAXLENGTH]; + + if ($this->identifiersAi[$realNameId][self::CHECKSUM]) { + $checksumChar++; + } + + if ($nbCharContent < ($minlengthContent - $checksumChar)) { + if ($minlengthContent === $maxlengthContent) { + throw new BCGParseException('gs1128', 'The value of "' . $id . '" must contain ' . $minlengthContent . ' character(s).'); + } else { + throw new BCGParseException('gs1128', 'The value of "' . $id . '" must contain between ' . $minlengthContent . ' and ' . $maxlengthContent . ' character(s).'); + } + } + + return true; + } + + /** + * Verifies the checksum. + * + * @param string $content + * @param string $id + * @param int $realNameId + * @param int $checksumAdded + * @return bool + */ + private function checkChecksum(&$content, $id, $realNameId, &$checksumAdded) { + if ($this->identifiersAi[$realNameId][self::CHECKSUM]) { + $nbCharContent = strlen($content); + $minlengthContent = $this->identifiersAi[$realNameId][self::MINLENGTH]; + if ($nbCharContent === ($minlengthContent - 1)) { + /* we need to calculate the checksum */ + $content .= self::getAiContentChecksum($content); + $checksumAdded++; + } elseif ($nbCharContent === $minlengthContent) { + /* we need to check the checksum */ + $checksum = self::getAiContentChecksum(substr($content, 0, -1)); + if (intval($content[$nbCharContent - 1]) !== $checksum) { + throw new BCGParseException('gs1128', 'The checksum of "(' . $id . ') ' . $content . '" must be: ' . $checksum); + } + } + } + + return true; + } + + /** + * Checks vars "y". + * + * @param string $content + * @param string $id + * @param bool $yAlreadySet + * @param int $decimalPointRemoved + * @return bool + */ + private function checkVars(&$content, &$id, $yAlreadySet, &$decimalPointRemoved) { + $nbCharContent = strlen($content); + /* We check for "y" var in AI */ + if ($yAlreadySet) { + /* We'll check if we have a decimal point */ + if (strpos($content, '.') !== false) { + throw new BCGParseException('gs1128', 'If you do not use any "y" variable, you have to insert a whole number.'); + } + } elseif ($yAlreadySet !== null) { + /* We need to replace the "y" var with the position of the decimal point */ + $pos = strpos($content, '.'); + if ($pos === false) { + $pos = $nbCharContent - 1; + } + + $id = str_replace('y', $nbCharContent - ($pos + 1), strtolower($id)); + $content = str_replace('.', '', $content); + $decimalPointRemoved++; + } + + return true; + } + + /** + * Checksum Mod10. + * + * @param int $content + * @return int + */ + private static function calculateChecksumMod10($content) { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "odd" position, + // and assign odd/even to each character moving from right to left + // Odd Position = 3, Even Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $odd = true; + $checksumValue = 0; + $c = strlen($content); + + for ($i = $c; $i > 0; $i--) { + if ($odd === true) { + $multiplier = 3; + $odd = false; + } else { + $multiplier = 1; + $odd = true; + } + + $checksumValue += ($content[$i - 1] * $multiplier); + } + + return (10 - $checksumValue % 10) % 10; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGi25.barcode.php b/niucloud/core/util/barcode/class/BCGi25.barcode.php new file mode 100644 index 0000000..d4ee00c --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGi25.barcode.php @@ -0,0 +1,203 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '00110', /* 0 */ + '10001', /* 1 */ + '01001', /* 2 */ + '11000', /* 3 */ + '00101', /* 4 */ + '10100', /* 5 */ + '01100', /* 6 */ + '00011', /* 7 */ + '10010', /* 8 */ + '01010' /* 9 */ + ); + + $this->setChecksum(false); + $this->setRatio(2); + } + + /** + * Sets the checksum. + * + * @param bool $checksum + */ + public function setChecksum($checksum) { + $this->checksum = (bool)$checksum; + } + + /** + * Sets the ratio of the black bar compared to the white bars. + * + * @param int $ratio + */ + public function setRatio($ratio) { + $this->ratio = $ratio; + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $temp_text = $this->text; + + // Checksum + if ($this->checksum === true) { + $this->calculateChecksum(); + $temp_text .= $this->keys[$this->checksumValue]; + } + + // Starting Code + $this->drawChar($im, '0000', true); + + // Chars + $c = strlen($temp_text); + for ($i = 0; $i < $c; $i += 2) { + $temp_bar = ''; + $c2 = strlen($this->findCode($temp_text[$i])); + for ($j = 0; $j < $c2; $j++) { + $temp_bar .= substr($this->findCode($temp_text[$i]), $j, 1); + $temp_bar .= substr($this->findCode($temp_text[$i + 1]), $j, 1); + } + + $this->drawChar($im, $this->changeBars($temp_bar), true); + } + + // Ending Code + $this->drawChar($im, $this->changeBars('100'), true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $textlength = (3 + ($this->ratio + 1) * 2) * strlen($this->text); + $startlength = 4; + $checksumlength = 0; + if ($this->checksum === true) { + $checksumlength = (3 + ($this->ratio + 1) * 2); + } + + $endlength = 2 + ($this->ratio + 1); + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('i25', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('i25', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must be even + if ($c % 2 !== 0 && $this->checksum === false) { + throw new BCGParseException('i25', 'i25 must contain an even amount of digits if checksum is false.'); + } elseif ($c % 2 === 0 && $this->checksum === true) { + throw new BCGParseException('i25', 'i25 must contain an odd amount of digits if checksum is true.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "even" position, + // and assign odd/even to each character moving from right to left + // Even Position = 3, Odd Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $even = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($even === true) { + $multiplier = 3; + $even = false; + } else { + $multiplier = 1; + $even = true; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + + $this->checksumValue = (10 - $this->checksumValue % 10) % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } + + /** + * Changes the size of the bars based on the ratio + * + * @param string $in + * @return string + */ + private function changeBars($in) { + if ($this->ratio > 1) { + $c = strlen($in); + for ($i = 0; $i < $c; $i++) { + $in[$i] = $in[$i] === '1' ? $this->ratio : $in[$i]; + } + } + + return $in; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGintelligentmail.barcode.php b/niucloud/core/util/barcode/class/BCGintelligentmail.barcode.php new file mode 100644 index 0000000..cb2a5f3 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGintelligentmail.barcode.php @@ -0,0 +1,649 @@ +setQuietZone(true); + $this->setThickness(9); + } + + /** + * Gets the Quiet zone. + * + * @return bool + */ + public function getQuietZone() { + return $this->quietZone; + } + + /** + * Sets the Quiet zone. + * + * @param bool $quietZone + */ + public function setQuietZone($quietZone) { + $this->quietZone = (bool)$quietZone; + } + + /** + * Sets the tracking code. + * + * @param int $barcodeIdentifier 2-digit number. 2nd digit must be 0-4 + * @param int $serviceTypeIdentifier 3 digits + * @param int $mailerIdentifier 6 or 9 digits + * @param int $serialNumber 9 (if mailerId is 6) or 6 digits (if mailerId is 9) + */ + public function setTrackingCode($barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { + $barcodeIdentifier = (string)(int)$barcodeIdentifier; + $serviceTypeIdentifier = (int)$serviceTypeIdentifier; + $mailerIdentifier = (int)$mailerIdentifier; + $serialNumber = (string)(int)$serialNumber; + + $barcodeIdentifier = str_pad($barcodeIdentifier, 2, '0', STR_PAD_LEFT); + + if (strlen($barcodeIdentifier) !== 2) { + throw new BCGArgumentException('Barcode Identifier must contain 2 digits.', 'barcodeIdentifier'); + } + + $barcodeIdentifierSecondNumber = $barcodeIdentifier[1]; + if ($barcodeIdentifierSecondNumber !== '0' && $barcodeIdentifierSecondNumber !== '1' && $barcodeIdentifierSecondNumber !== '2' && $barcodeIdentifierSecondNumber !== '3' && $barcodeIdentifierSecondNumber !== '4') { + throw new BCGArgumentException('Barcode Identifier second digit must be a number between 0 and 4.', 'barcodeIdentifier'); + } + + if ($serviceTypeIdentifier < 0 || $serviceTypeIdentifier > 999) { + throw new BCGArgumentException('Service Type Identifier must be between 0 and 999.', 'serviceTypeIdentifier'); + } + + $mailerIdentifierLength = 6; + if ($mailerIdentifier > 899999) { + $mailerIdentifierLength = 9; + } + + if ($mailerIdentifierLength === 9 && strlen($serialNumber) > 6) { + throw new BCGArgumentException('If the Serial Number has more than 6 digits, the Mailer Identifier must be lower than 900000.', 'mailerIdentifier'); + } + + if ($mailerIdentifierLength === 9) { + if ($mailerIdentifierLength < 0 || $mailerIdentifier > 999999999) { + throw new BCGArgumentException('Mailer Identifier must be between 0 and 999999999.', 'mailerIdentifier'); + } + } + + $this->barcodeIdentifier = $barcodeIdentifier; + $this->serviceTypeIdentifier = str_pad($serviceTypeIdentifier, 3, '0', STR_PAD_LEFT); + $this->mailerIdentifier = str_pad($mailerIdentifier, $mailerIdentifierLength, '0', STR_PAD_LEFT); + $this->serialNumber = str_pad((int)$serialNumber, $mailerIdentifierLength === 6 ? 9 : 6, '0', STR_PAD_LEFT); + } + + /** + * Parses the text before displaying it. + * + * @param mixed $text + */ + public function parse($text) { + parent::parse($text); + + $number = self::executeStep1($this->text, $this->barcodeIdentifier, $this->serviceTypeIdentifier, $this->mailerIdentifier, $this->serialNumber); + $crc = self::executeStep2($number); + $codewords = self::executeStep3($number); + $codewords = self::executeStep4($codewords, $crc); + $characters = self::executeStep5($codewords, $crc); + $this->data = self::executeStep6($characters); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + if ($this->quietZone) { + $this->positionX += 9; + } + + $c = strlen($this->data); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->data[$i]); + } + + $this->drawText($im, 0, 0, $this->positionX, $this->thickness + ($this->quietZone ? 4 : 0)); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $w += 65 * 3; + $h += $this->thickness; + + // We remove the white on the right + $w -= 1.56; + + if ($this->quietZone) { + $w += 18; + $h += 4; + } + + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + // Tracking must have been entered + if ($this->barcodeIdentifier === null || $this->serviceTypeIdentifier === null || $this->mailerIdentifier === null || $this->serialNumber === null) { + throw new BCGParseException('intelligentmail', 'The tracking code must be set before calling the parse method.'); + } + + // Checking if all chars are allowed + $match = array(); + if (preg_match('/[^0-9]/', $this->text, $match)) { + throw new BCGParseException('intelligentmail', 'The character \'' . $match[0] . '\' is not allowed.'); + } + + // Must contain 0, 5, 9 or 11 chars + $c = strlen($this->text); + if ($c !== 0 && $c !== 5 && $c !== 9 && $c !== 11) { + throw new BCGParseException('intelligentmail', 'Must contain 0, 5, 9, or 11 characters.'); + } + + parent::validate(); + } + + /** + * Overloaded method for drawing special barcode. + * + * @param resource $im + * @param string $code + * @param boolean $startBar + */ + protected function drawChar($im, $code, $startBar = true) { + $y1 = 0; + $y2 = 0; + switch ($code) { + case 'A': + $y1 = 0; + $y2 = $this->thickness - ($this->thickness / 2.5); + break; + case 'D': + $y1 = 3.096; + $y2 = $this->thickness - 1; + break; + case 'F': + $y1 = 0; + $y2 = $this->thickness - 1; + break; + case 'T': + $y1 = 3.096; + $y2 = $this->thickness - ($this->thickness / 2.5); + break; + } + + if ($this->quietZone) { + $y1 += 2; + $y2 += 2; + } + + $this->drawFilledRectangle($im, $this->positionX, $y1, $this->positionX + 0.44, $y2, BCGBarcode::COLOR_FG); + $this->positionX += 3; + } + + /** + * Executes Step 1: Conversion of Data Fields into Binary Data + * + * @param string $text + * @param string $barcodeIdentifier + * @param string $serviceTypeIdentifier + * @param string $mailerIdentifier + * @param string $serialNumber + * @return string BCNumber + */ + private static function executeStep1($text, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { + $number = self::conversionRoutingCode($text); + $number = self::conversionTrackingCode($number, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber); + + return $number; + } + + /** + * Executes Step 2: Generation of 11-Bit CRC on Binary Data + * + * @param $number BCNumber + * @return int + */ + private static function executeStep2($number) { + $byteArray = str_pad(self::bcdecuc($number), 13, chr(0), STR_PAD_LEFT); + + $generatorPolynomial = 0x0f35; + $frameCheckSequence = 0x07ff; + $data = 0; + $byteIndex = 0; + $bit = 0; + + $data = (ord($byteArray[$byteIndex]) << 5) & 0xffff; + for ($bit = 2; $bit < 8; $bit++) { + if (($frameCheckSequence ^ $data) & 0x400) { + $frameCheckSequence = ($frameCheckSequence << 1) ^ $generatorPolynomial; + } else { + $frameCheckSequence = ($frameCheckSequence << 1); + } + + $frameCheckSequence &= 0x7ff; + $data <<= 1; + $data &= 0xffff; + } + + for ($byteIndex = 1; $byteIndex < 13; $byteIndex++) { + $data = (ord($byteArray[$byteIndex]) << 3) & 0xffff; + for ($bit = 0; $bit < 8; $bit++) { + if (($frameCheckSequence ^ $data) & 0x0400) { + $frameCheckSequence = ($frameCheckSequence << 1) ^ $generatorPolynomial; + } else { + $frameCheckSequence = ($frameCheckSequence << 1); + } + + $frameCheckSequence &= 0x7ff; + $data <<= 1; + $data &= 0xffff; + } + } + + return $frameCheckSequence; + } + + /** + * Executes Step 3: Conversion from Binary Data to Codewords + * + * @param string $number BCNumber + * @return int[] + */ + private static function executeStep3($number) { + $codewords = array(); + $codewords[9] = (int)bcmod($number, '636'); + $number = bcdiv($number, '636', 0); + + for ($i = 8; $i >= 0; $i--) { + $codewords[$i] = (int)bcmod($number, '1365'); + $number = bcdiv($number, '1365', 0); + } + + return $codewords; + } + + /** + * Executes Step 4: Inserting Additional Information into Codewords + * + * @param int[] $codewords + * @param int $crc + * @return int[] + */ + private static function executeStep4($codewords, $crc) { + $codewords[9] *= 2; + if ($crc & 0x400) { + $codewords[0] += 659; + } + + return $codewords; + } + + /** + * Executes Step 5: Conversion from Codewords to Characters + * + * @param int[] $codewords + * @param int $crc + * @return int[] + */ + private static function executeStep5($codewords, $crc) { + $characters = array(); + for ($i = 0; $i < 10; $i++) { + if ($codewords[$i] <= 1286) { + $characters[$i] = self::$characterTable1[$codewords[$i]]; + } else { + $characters[$i] = self::$characterTable2[$codewords[$i] - 1287]; + } + } + + for ($i = 0; $i < 10; $i++) { + $mask = 1 << $i; + if ($crc & $mask) { + $characters[$i] ^= 0x1fff; + } + } + + return $characters; + } + + /** + * Executes Step 6: Conversion from Characters to the Intelligent Mail Barcode + * + * @param int[] $characters + * @return string + */ + private static function executeStep6($characters) { + $bars = ''; + for ($i = 0; $i < 65; $i++) { + $barPosition = self::$barPositions[$i]; + $descender = $barPosition[0]; + $ascender = $barPosition[1]; + $extenderDescender = !!($characters[$descender[0]] & (1 << $descender[1])); + $extenderAscender = !!($characters[$ascender[0]] & (1 << $ascender[1])); + + if ($extenderDescender && $extenderAscender) { + $bars .= 'F'; + } elseif ($extenderDescender) { + $bars .= 'D'; + } elseif ($extenderAscender) { + $bars .= 'A'; + } else { + $bars .= 'T'; + } + } + + return $bars; + } + + /** + * Converts the routing code zipcode. + * + * @param string $zipcode + * @return string BCNumber + */ + private static function conversionRoutingCode($zipcode) { + $number = $zipcode; + switch (strlen($zipcode)) { + case 11: + $number = bcadd($number, '1000000000', 0); + case 9: + $number = bcadd($number, '100000', 0); + case 5: + $number = bcadd($number, '1', 0); + default: + return $number; + } + } + + /** + * Converts the tracking code number. + * + * @param string $number BCNumber + * @param string $barcodeIdentifier + * @param string $serviceTypeIdentifier + * @param string $mailerIdentifier + * @param string $serialNumber + * @return string BCNumber + */ + private static function conversionTrackingCode($number, $barcodeIdentifier, $serviceTypeIdentifier, $mailerIdentifier, $serialNumber) { + $number = bcmul($number, 10, 0); + $number = bcadd($number, $barcodeIdentifier[0], 0); + $number = bcmul($number, 5, 0); + $number = bcadd($number, $barcodeIdentifier[1], 0); + + $temp = $serviceTypeIdentifier . $mailerIdentifier . $serialNumber; + for ($i = 0; $i < 18; $i++) { + $number = bcmul($number, 10, 0); + $number = bcadd($number, $temp[$i], 0); + } + + return $number; + } + + /** + * Transforms a BCNumber into unsigned char*. + * + * @param string $dec BCNumber + * @param string + */ + private static function bcdecuc($dec) { + $last = bcmod($dec, 256); + $remain = bcdiv(bcsub($dec, $last), 256, 0); + + if ($remain == 0) { + return pack('C', $last); + } else { + return self::bcdecuc($remain) . pack('C', $last); + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGisbn.barcode.php b/niucloud/core/util/barcode/class/BCGisbn.barcode.php new file mode 100644 index 0000000..867cb0f --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGisbn.barcode.php @@ -0,0 +1,164 @@ +setGS1($gs1); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + if ($this->isDefaultEanLabelEnabled()) { + $isbn = $this->createISBNText(); + $font = $this->font; + + $topLabel = new BCGLabel($isbn, $font, BCGLabel::POSITION_TOP, BCGLabel::ALIGN_CENTER); + + $this->addLabel($topLabel); + } + + parent::addDefaultLabel(); + } + + /** + * Sets the first numbers of the barcode. + * - GS1_AUTO: Adds 978 before the code + * - GS1_PREFIX978: Adds 978 before the code + * - GS1_PREFIX979: Adds 979 before the code + * + * @param int $gs1 + */ + public function setGS1($gs1) { + $gs1 = (int)$gs1; + if ($gs1 !== self::GS1_AUTO && $gs1 !== self::GS1_PREFIX978 && $gs1 !== self::GS1_PREFIX979) { + throw new BCGArgumentException('The GS1 argument must be BCGisbn::GS1_AUTO, BCGisbn::GS1_PREFIX978, or BCGisbn::GS1_PREFIX979', 'gs1'); + } + + $this->gs1 = $gs1; + } + + /** + * Check chars allowed. + */ + protected function checkCharsAllowed() { + $c = strlen($this->text); + + // Special case, if we have 10 digits, the last one can be X + if ($c === 10) { + if (array_search($this->text[9], $this->keys) === false && $this->text[9] !== 'X') { + throw new BCGParseException('isbn', 'The character \'' . $this->text[9] . '\' is not allowed.'); + } + + // Drop the last char + $this->text = substr($this->text, 0, 9); + } + + return parent::checkCharsAllowed(); + } + + /** + * Check correct length. + */ + protected function checkCorrectLength() { + $c = strlen($this->text); + + // If we have 13 chars just flush the last one + if ($c === 13) { + $this->text = substr($this->text, 0, 12); + } elseif ($c === 9 || $c === 10) { + if ($c === 10) { + // Before dropping it, we check if it's legal + if (array_search($this->text[9], $this->keys) === false && $this->text[9] !== 'X') { + throw new BCGParseException('isbn', 'The character \'' . $this->text[9] . '\' is not allowed.'); + } + + $this->text = substr($this->text, 0, 9); + } + + if ($this->gs1 === self::GS1_AUTO || $this->gs1 === self::GS1_PREFIX978) { + $this->text = '978' . $this->text; + } elseif ($this->gs1 === self::GS1_PREFIX979) { + $this->text = '979' . $this->text; + } + } elseif ($c !== 12) { + throw new BCGParseException('isbn', 'The code parsed must be 9, 10, 12, or 13 digits long.'); + } + } + + /** + * Creates the ISBN text. + * + * @return string + */ + private function createISBNText() { + $isbn = ''; + if (!empty($this->text)) { + // We try to create the ISBN Text... the hyphen really depends the ISBN agency. + // We just put one before the checksum and one after the GS1 if present. + $c = strlen($this->text); + if ($c === 12 || $c === 13) { + // If we have 13 characters now, just transform it temporarily to find the checksum... + // Further in the code we take care of that anyway. + $lastCharacter = ''; + if ($c === 13) { + $lastCharacter = $this->text[12]; + $this->text = substr($this->text, 0, 12); + } + + $checksum = $this->processChecksum(); + $isbn = 'ISBN ' . substr($this->text, 0, 3) . '-' . substr($this->text, 3, 9) . '-' . $checksum; + + // Put the last character back + if ($c === 13) { + $this->text .= $lastCharacter; + } + } elseif ($c === 9 || $c === 10) { + $checksum = 0; + for ($i = 10; $i >= 2; $i--) { + $checksum += $this->text[10 - $i] * $i; + } + + $checksum = 11 - $checksum % 11; + if ($checksum === 10) { + $checksum = 'X'; // Changing type + } + + $isbn = 'ISBN ' . substr($this->text, 0, 9) . '-' . $checksum; + } + } + + return $isbn; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGmsi.barcode.php b/niucloud/core/util/barcode/class/BCGmsi.barcode.php new file mode 100644 index 0000000..a322d82 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGmsi.barcode.php @@ -0,0 +1,184 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '01010101', /* 0 */ + '01010110', /* 1 */ + '01011001', /* 2 */ + '01011010', /* 3 */ + '01100101', /* 4 */ + '01100110', /* 5 */ + '01101001', /* 6 */ + '01101010', /* 7 */ + '10010101', /* 8 */ + '10010110' /* 9 */ + ); + + $this->setChecksum(0); + } + + /** + * Sets how many checksums we display. 0 to 2. + * + * @param int $checksum + */ + public function setChecksum($checksum) { + $checksum = intval($checksum); + if ($checksum < 0 && $checksum > 2) { + throw new BCGArgumentException('The checksum must be between 0 and 2 included.', 'checksum'); + } + + $this->checksum = $checksum; + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Checksum + $this->calculateChecksum(); + + // Starting Code + $this->drawChar($im, '10', true); + + // Chars + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->text[$i]), true); + } + + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->checksumValue[$i]), true); + } + + // Ending Code + $this->drawChar($im, '010', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $textlength = 12 * strlen($this->text); + $startlength = 3; + $checksumlength = $this->checksum * 12; + $endlength = 4; + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('msi', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('msi', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Forming a new number + // If the original number is even, we take all even position + // If the original number is odd, we take all odd position + // 123456 = 246 + // 12345 = 135 + // Multiply by 2 + // Add up all the digit in the result (270 : 2+7+0) + // Add up other digit not used. + // 10 - (? Modulo 10). If result = 10, change to 0 + $last_text = $this->text; + $this->checksumValue = array(); + for ($i = 0; $i < $this->checksum; $i++) { + $new_text = ''; + $new_number = 0; + $c = strlen($last_text); + if ($c % 2 === 0) { // Even + $starting = 1; + } else { + $starting = 0; + } + + for ($j = $starting; $j < $c; $j += 2) { + $new_text .= $last_text[$j]; + } + + $new_text = strval(intval($new_text) * 2); + $c2 = strlen($new_text); + for ($j = 0; $j < $c2; $j++) { + $new_number += intval($new_text[$j]); + } + + for ($j = ($starting === 0) ? 1 : 0; $j < $c; $j += 2) { + $new_number += intval($last_text[$j]); + } + + $new_number = (10 - $new_number % 10) % 10; + $this->checksumValue[] = $new_number; + $last_text .= $new_number; + } + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + $ret = ''; + $c = count($this->checksumValue); + for ($i = 0; $i < $c; $i++) { + $ret .= $this->keys[$this->checksumValue[$i]]; + } + + return $ret; + } + + return false; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGothercode.barcode.php b/niucloud/core/util/barcode/class/BCGothercode.barcode.php new file mode 100644 index 0000000..a9ae2ed --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGothercode.barcode.php @@ -0,0 +1,88 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $this->drawChar($im, $this->text, true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Gets the label. + * If the label was set to BCGBarcode1D::AUTO_LABEL, the label will display the value from the text parsed. + * + * @return string + */ + public function getLabel() { + $label = $this->label; + if ($this->label === BCGBarcode1D::AUTO_LABEL) { + $label = ''; + } + + return $label; + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $array = str_split($this->text, 1); + $textlength = array_sum($array) + count($array); + + $w += $textlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('othercode', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('othercode', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + parent::validate(); + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGpostnet.barcode.php b/niucloud/core/util/barcode/class/BCGpostnet.barcode.php new file mode 100644 index 0000000..1988b08 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGpostnet.barcode.php @@ -0,0 +1,138 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '11000', /* 0 */ + '00011', /* 1 */ + '00101', /* 2 */ + '00110', /* 3 */ + '01001', /* 4 */ + '01010', /* 5 */ + '01100', /* 6 */ + '10001', /* 7 */ + '10010', /* 8 */ + '10100' /* 9 */ + ); + + $this->setThickness(9); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Checksum + $checksum = 0; + $c = strlen($this->text); + for ($i = 0; $i < $c; $i++) { + $checksum += intval($this->text[$i]); + } + + $checksum = 10 - ($checksum % 10); + + // Starting Code + $this->drawChar($im, '1'); + + // Code + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($this->text[$i])); + } + + // Checksum + $this->drawChar($im, $this->findCode($checksum)); + + // Ending Code + $this->drawChar($im, '1'); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $c = strlen($this->text); + $startlength = 3; + $textlength = $c * 5 * 3; + $checksumlength = 5 * 3; + $endlength = 3; + + // We remove the white on the right + $removelength = -1.56; + + $w += $startlength + $textlength + $checksumlength + $endlength + $removelength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('postnet', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('postnet', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must contain 5, 9 or 11 chars + if ($c !== 5 && $c !== 9 && $c !== 11) { + throw new BCGParseException('postnet', 'Must contain 5, 9, or 11 characters.'); + } + + parent::validate(); + } + + /** + * Overloaded method for drawing special barcode. + * + * @param resource $im + * @param string $code + * @param boolean $startBar + */ + protected function drawChar($im, $code, $startBar = true) { + $c = strlen($code); + for ($i = 0; $i < $c; $i++) { + if ($code[$i] === '0') { + $posY = $this->thickness - ($this->thickness / 2.5); + } else { + $posY = 0; + } + + $this->drawFilledRectangle($im, $this->positionX, $posY, $this->positionX + 0.44, $this->thickness - 1, BCGBarcode::COLOR_FG); + $this->positionX += 3; + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGs25.barcode.php b/niucloud/core/util/barcode/class/BCGs25.barcode.php new file mode 100644 index 0000000..3312b2c --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGs25.barcode.php @@ -0,0 +1,170 @@ + 1/3 or 1/2 for the big bar + * + *-------------------------------------------------------------------- + * Copyright (C) Jean-Sebastien Goupil + * http://www.barcodephp.com + */ +include_once('BCGParseException.php'); +include_once('BCGBarcode1D.php'); + +class BCGs25 extends BCGBarcode1D { + private $checksum; + + /** + * Constructor. + */ + public function __construct() { + parent::__construct(); + + $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '0000202000', /* 0 */ + '2000000020', /* 1 */ + '0020000020', /* 2 */ + '2020000000', /* 3 */ + '0000200020', /* 4 */ + '2000200000', /* 5 */ + '0020200000', /* 6 */ + '0000002020', /* 7 */ + '2000002000', /* 8 */ + '0020002000' /* 9 */ + ); + + $this->setChecksum(false); + } + + /** + * Sets if we display the checksum. + * + * @param bool $checksum + */ + public function setChecksum($checksum) { + $this->checksum = (bool)$checksum; + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $temp_text = $this->text; + + // Checksum + if ($this->checksum === true) { + $this->calculateChecksum(); + $temp_text .= $this->keys[$this->checksumValue]; + } + + // Starting Code + $this->drawChar($im, '101000', true); + + // Chars + $c = strlen($temp_text); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, $this->findCode($temp_text[$i]), true); + } + + // Ending Code + $this->drawChar($im, '10001', true); + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $c = strlen($this->text); + $startlength = 8; + $textlength = $c * 14; + $checksumlength = 0; + if ($c % 2 !== 0) { + $checksumlength = 14; + } + + $endlength = 7; + + $w += $startlength + $textlength + $checksumlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('s25', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('s25', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must be even + if ($c % 2 !== 0 && $this->checksum === false) { + throw new BCGParseException('s25', 's25 must contain an even amount of digits if checksum is false.'); + } elseif ($c % 2 === 0 && $this->checksum === true) { + throw new BCGParseException('s25', 's25 must contain an odd amount of digits if checksum is true.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "even" position, + // and assign odd/even to each character moving from right to left + // Even Position = 3, Odd Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $even = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($even === true) { + $multiplier = 3; + $even = false; + } else { + $multiplier = 1; + $even = true; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + $this->checksumValue = (10 - $this->checksumValue % 10) % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGupca.barcode.php b/niucloud/core/util/barcode/class/BCGupca.barcode.php new file mode 100644 index 0000000..3779433 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGupca.barcode.php @@ -0,0 +1,146 @@ +text = '0' . $this->text; // We will remove it at the end... don't worry + + parent::draw($im); + + // We remove the 0 in front, as we said :) + $this->text = substr($this->text, 1); + } + + /** + * Draws the extended bars on the image. + * + * @param resource $im + * @param int $plus + */ + protected function drawExtendedBars($im, $plus) { + $temp_text = $this->text . $this->keys[$this->checksumValue]; + $rememberX = $this->positionX; + $rememberH = $this->thickness; + + // We increase the bars + // First 2 Bars + $this->thickness = $this->thickness + intval($plus / $this->scale); + $this->positionX = 0; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Attemping to increase the 2 following bars + $this->positionX += 1; + $temp_value = $this->findCode($temp_text[1]); + $this->drawChar($im, $temp_value, false); + + // Center Guard Bar + $this->positionX += 36; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Attemping to increase the 2 last bars + $this->positionX += 37; + $temp_value = $this->findCode($temp_text[12]); + $this->drawChar($im, $temp_value, true); + + // Completly last bars + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + $this->positionX = $rememberX; + $this->thickness = $rememberH; + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + if ($this->isDefaultEanLabelEnabled()) { + $this->processChecksum(); + $label = $this->getLabel(); + $font = $this->font; + + $this->labelLeft = new BCGLabel(substr($label, 0, 1), $font, BCGLabel::POSITION_LEFT, BCGLabel::ALIGN_BOTTOM); + $this->labelLeft->setSpacing(4 * $this->scale); + + $this->labelCenter1 = new BCGLabel(substr($label, 1, 5), $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $labelCenter1Dimension = $this->labelCenter1->getDimension(); + $this->labelCenter1->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 6); + + $this->labelCenter2 = new BCGLabel(substr($label, 6, 5), $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $this->labelCenter2->setOffset(($this->scale * 44 - $labelCenter1Dimension[0]) / 2 + $this->scale * 45); + + $this->labelRight = new BCGLabel($this->keys[$this->checksumValue], $font, BCGLabel::POSITION_RIGHT, BCGLabel::ALIGN_BOTTOM); + $this->labelRight->setSpacing(4 * $this->scale); + + if ($this->alignLabel) { + $labelDimension = $this->labelCenter1->getDimension(); + $this->labelLeft->setOffset($labelDimension[1]); + $this->labelRight->setOffset($labelDimension[1]); + } else { + $labelDimension = $this->labelLeft->getDimension(); + $this->labelLeft->setOffset($labelDimension[1] / 2); + $labelDimension = $this->labelLeft->getDimension(); + $this->labelRight->setOffset($labelDimension[1] / 2); + } + + $this->addLabel($this->labelLeft); + $this->addLabel($this->labelCenter1); + $this->addLabel($this->labelCenter2); + $this->addLabel($this->labelRight); + } + } + + /** + * Check correct length. + */ + protected function checkCorrectLength() { + // If we have 12 chars, just flush the last one without throwing anything + $c = strlen($this->text); + if ($c === 12) { + $this->text = substr($this->text, 0, 11); + } elseif ($c !== 11) { + throw new BCGParseException('upca', 'Must contain 11 digits, the 12th digit is automatically added.'); + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGupce.barcode.php b/niucloud/core/util/barcode/class/BCGupce.barcode.php new file mode 100644 index 0000000..5b34928 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGupce.barcode.php @@ -0,0 +1,336 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + + // Odd Parity starting with a space + // Even Parity is the inverse (0=0012) starting with a space + $this->code = array( + '2100', /* 0 */ + '1110', /* 1 */ + '1011', /* 2 */ + '0300', /* 3 */ + '0021', /* 4 */ + '0120', /* 5 */ + '0003', /* 6 */ + '0201', /* 7 */ + '0102', /* 8 */ + '2001' /* 9 */ + ); + + // Parity, 0=Odd, 1=Even for manufacturer code. Depending on 1st System Digit and Checksum + $this->codeParity = array( + array( + array(1, 1, 1, 0, 0, 0), /* 0,0 */ + array(1, 1, 0, 1, 0, 0), /* 0,1 */ + array(1, 1, 0, 0, 1, 0), /* 0,2 */ + array(1, 1, 0, 0, 0, 1), /* 0,3 */ + array(1, 0, 1, 1, 0, 0), /* 0,4 */ + array(1, 0, 0, 1, 1, 0), /* 0,5 */ + array(1, 0, 0, 0, 1, 1), /* 0,6 */ + array(1, 0, 1, 0, 1, 0), /* 0,7 */ + array(1, 0, 1, 0, 0, 1), /* 0,8 */ + array(1, 0, 0, 1, 0, 1) /* 0,9 */ + ), + array( + array(0, 0, 0, 1, 1, 1), /* 0,0 */ + array(0, 0, 1, 0, 1, 1), /* 0,1 */ + array(0, 0, 1, 1, 0, 1), /* 0,2 */ + array(0, 0, 1, 1, 1, 0), /* 0,3 */ + array(0, 1, 0, 0, 1, 1), /* 0,4 */ + array(0, 1, 1, 0, 0, 1), /* 0,5 */ + array(0, 1, 1, 1, 0, 0), /* 0,6 */ + array(0, 1, 0, 1, 0, 1), /* 0,7 */ + array(0, 1, 0, 1, 1, 0), /* 0,8 */ + array(0, 1, 1, 0, 1, 0) /* 0,9 */ + ) + ); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + $this->calculateChecksum(); + + // Starting Code + $this->drawChar($im, '000', true); + $c = strlen($this->upce); + for ($i = 0; $i < $c; $i++) { + $this->drawChar($im, self::inverse($this->findCode($this->upce[$i]), $this->codeParity[intval($this->text[0])][$this->checksumValue][$i]), false); + } + + // Draw Center Guard Bar + $this->drawChar($im, '00000', false); + + // Draw Right Bar + $this->drawChar($im, '0', true); + $this->text = $this->text[0] . $this->upce; + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + + if ($this->isDefaultEanLabelEnabled()) { + $dimension = $this->labelCenter->getDimension(); + $this->drawExtendedBars($im, $dimension[1] - 2); + } + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 3; + $centerlength = 5; + $textlength = 6 * 7; + $endlength = 1; + + $w += $startlength + $centerlength + $textlength + $endlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + if ($this->isDefaultEanLabelEnabled()) { + $this->processChecksum(); + $font = $this->font; + + $this->labelLeft = new BCGLabel(substr($this->text, 0, 1), $font, BCGLabel::POSITION_LEFT, BCGLabel::ALIGN_BOTTOM); + $labelLeftDimension = $this->labelLeft->getDimension(); + $this->labelLeft->setSpacing(8); + $this->labelLeft->setOffset($labelLeftDimension[1] / 2); + + $this->labelCenter = new BCGLabel($this->upce, $font, BCGLabel::POSITION_BOTTOM, BCGLabel::ALIGN_LEFT); + $labelCenterDimension = $this->labelCenter->getDimension(); + $this->labelCenter->setOffset(($this->scale * 46 - $labelCenterDimension[0]) / 2 + $this->scale * 2); + + $this->labelRight = new BCGLabel($this->keys[$this->checksumValue], $font, BCGLabel::POSITION_RIGHT, BCGLabel::ALIGN_BOTTOM); + $labelRightDimension = $this->labelRight->getDimension(); + $this->labelRight->setSpacing(8); + $this->labelRight->setOffset($labelRightDimension[1] / 2); + + $this->addLabel($this->labelLeft); + $this->addLabel($this->labelCenter); + $this->addLabel($this->labelRight); + } + } + + /** + * Checks if the default ean label is enabled. + * + * @return bool + */ + protected function isDefaultEanLabelEnabled() { + $label = $this->getLabel(); + $font = $this->font; + return $label !== null && $label !== '' && $font !== null && $this->defaultLabel !== null; + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('upce', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('upce', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must contain 11 chars + // Must contain 6 chars (if starting with upce directly) + // First Chars must be 0 or 1 + if ($c !== 11 && $c !== 6) { + throw new BCGParseException('upce', 'You must provide a UPC-A (11 characters) or a UPC-E (6 characters).'); + } elseif ($this->text[0] !== '0' && $this->text[0] !== '1' && $c !== 6) { + throw new BCGParseException('upce', 'UPC-A must start with 0 or 1 to be converted to UPC-E.'); + } + + // Convert part + $this->upce = ''; + if ($c !== 6) { + // Checking if UPC-A is convertible + $temp1 = substr($this->text, 3, 3); + if ($temp1 === '000' || $temp1 === '100' || $temp1 === '200') { // manufacturer code ends with 100, 200 or 300 + if (substr($this->text, 6, 2) === '00') { // Product must start with 00 + $this->upce = substr($this->text, 1, 2) . substr($this->text, 8, 3) . substr($this->text, 3, 1); + } + } elseif (substr($this->text, 4, 2) === '00') { // manufacturer code ends with 00 + if (substr($this->text, 6, 3) === '000') { // Product must start with 000 + $this->upce = substr($this->text, 1, 3) . substr($this->text, 9, 2) . '3'; + } + } elseif (substr($this->text, 5, 1) === '0') { // manufacturer code ends with 0 + if (substr($this->text, 6, 4) === '0000') { // Product must start with 0000 + $this->upce = substr($this->text, 1, 4) . substr($this->text, 10, 1) . '4'; + } + } else { // No zero leading at manufacturer code + $temp2 = intval(substr($this->text, 10, 1)); + if (substr($this->text, 6, 4) === '0000' && $temp2 >= 5 && $temp2 <= 9) { // Product must start with 0000 and must end by 5, 6, 7, 8 or 9 + $this->upce = substr($this->text, 1, 5) . substr($this->text, 10, 1); + } + } + } else { + $this->upce = $this->text; + } + + if ($this->upce === '') { + throw new BCGParseException('upce', 'Your UPC-A can\'t be converted to UPC-E.'); + } + + if ($c === 6) { + $upca = ''; + + // We convert UPC-E to UPC-A to find the checksum + if ($this->text[5] === '0' || $this->text[5] === '1' || $this->text[5] === '2') { + $upca = substr($this->text, 0, 2) . $this->text[5] . '0000' . substr($this->text, 2, 3); + } elseif ($this->text[5] === '3') { + $upca = substr($this->text, 0, 3) . '00000' . substr($this->text, 3, 2); + } elseif ($this->text[5] === '4') { + $upca = substr($this->text, 0, 4) . '00000' . $this->text[4]; + } else { + $upca = substr($this->text, 0, 5) . '0000' . $this->text[5]; + } + + $this->text = '0' . $upca; + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "odd" position, + // and assign odd/even to each character moving from right to left + // Odd Position = 3, Even Position = 1 + // Multiply it by the number + // Add all of that and do 10-(?mod10) + $odd = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($odd === true) { + $multiplier = 3; + $odd = false; + } else { + $multiplier = 1; + $odd = true; + } + + if (!isset($this->keys[$this->text[$i - 1]])) { + return; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + + $this->checksumValue = (10 - $this->checksumValue % 10) % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } + + /** + * Draws the extended bars on the image. + * + * @param resource $im + * @param int $plus + */ + protected function drawExtendedBars($im, $plus) { + $rememberX = $this->positionX; + $rememberH = $this->thickness; + + // We increase the bars + $this->thickness = $this->thickness + intval($plus / $this->scale); + $this->positionX = 0; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + // Last Bars + $this->positionX += 46; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + $this->positionX += 2; + $this->drawSingleBar($im, BCGBarcode::COLOR_FG); + + $this->positionX = $rememberX; + $this->thickness = $rememberH; + } + + /** + * Inverses the string when the $inverse parameter is equal to 1. + * + * @param string $text + * @param int $inverse + * @return string + */ + private static function inverse($text, $inverse = 1) { + if ($inverse === 1) { + $text = strrev($text); + } + + return $text; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGupcext2.barcode.php b/niucloud/core/util/barcode/class/BCGupcext2.barcode.php new file mode 100644 index 0000000..4399e0e --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGupcext2.barcode.php @@ -0,0 +1,138 @@ +keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '2100', /* 0 */ + '1110', /* 1 */ + '1011', /* 2 */ + '0300', /* 3 */ + '0021', /* 4 */ + '0120', /* 5 */ + '0003', /* 6 */ + '0201', /* 7 */ + '0102', /* 8 */ + '2001' /* 9 */ + ); + + // Parity, 0=Odd, 1=Even. Depending on ?%4 + $this->codeParity = array( + array(0, 0), /* 0 */ + array(0, 1), /* 1 */ + array(1, 0), /* 2 */ + array(1, 1) /* 3 */ + ); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Starting Code + $this->drawChar($im, '001', true); + + // Code + for ($i = 0; $i < 2; $i++) { + $this->drawChar($im, self::inverse($this->findCode($this->text[$i]), $this->codeParity[intval($this->text) % 4][$i]), false); + if ($i === 0) { + $this->drawChar($im, '00', false); // Inter-char + } + } + + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 4; + $textlength = 2 * 7; + $intercharlength = 2; + + $w += $startlength + $textlength + $intercharlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + parent::addDefaultLabel(); + + if ($this->defaultLabel !== null) { + $this->defaultLabel->setPosition(BCGLabel::POSITION_TOP); + } + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('upcext2', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('upcext2', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must contain 2 digits + if ($c !== 2) { + throw new BCGParseException('upcext2', 'Must contain 2 digits.'); + } + + parent::validate(); + } + + /** + * Inverses the string when the $inverse parameter is equal to 1. + * + * @param string $text + * @param int $inverse + * @return string + */ + private static function inverse($text, $inverse = 1) { + if ($inverse === 1) { + $text = strrev($text); + } + + return $text; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/BCGupcext5.barcode.php b/niucloud/core/util/barcode/class/BCGupcext5.barcode.php new file mode 100644 index 0000000..cea9660 --- /dev/null +++ b/niucloud/core/util/barcode/class/BCGupcext5.barcode.php @@ -0,0 +1,200 @@ + No suggested Retail Price + * If 99991 -> Book Complimentary (normally free) + * If 90001 to 98999 -> Internal Purpose of Publisher + * If 99990 -> Used by the National Association of College Stores to mark used books + * If 0xxxx -> Price Expressed in British Pounds (xx.xx) + * If 5xxxx -> Price Expressed in U.S. dollars (US$xx.xx) + * + *-------------------------------------------------------------------- + * Copyright (C) Jean-Sebastien Goupil + * http://www.barcodephp.com + */ +include_once('BCGParseException.php'); +include_once('BCGBarcode1D.php'); +include_once('BCGLabel.php'); + +class BCGupcext5 extends BCGBarcode1D { + protected $codeParity = array(); + + /** + * Constructor. + */ + public function __construct() { + parent::__construct(); + + $this->keys = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); + $this->code = array( + '2100', /* 0 */ + '1110', /* 1 */ + '1011', /* 2 */ + '0300', /* 3 */ + '0021', /* 4 */ + '0120', /* 5 */ + '0003', /* 6 */ + '0201', /* 7 */ + '0102', /* 8 */ + '2001' /* 9 */ + ); + + // Parity, 0=Odd, 1=Even. Depending Checksum + $this->codeParity = array( + array(1, 1, 0, 0, 0), /* 0 */ + array(1, 0, 1, 0, 0), /* 1 */ + array(1, 0, 0, 1, 0), /* 2 */ + array(1, 0, 0, 0, 1), /* 3 */ + array(0, 1, 1, 0, 0), /* 4 */ + array(0, 0, 1, 1, 0), /* 5 */ + array(0, 0, 0, 1, 1), /* 6 */ + array(0, 1, 0, 1, 0), /* 7 */ + array(0, 1, 0, 0, 1), /* 8 */ + array(0, 0, 1, 0, 1) /* 9 */ + ); + } + + /** + * Draws the barcode. + * + * @param resource $im + */ + public function draw($im) { + // Checksum + $this->calculateChecksum(); + + // Starting Code + $this->drawChar($im, '001', true); + + // Code + for ($i = 0; $i < 5; $i++) { + $this->drawChar($im, self::inverse($this->findCode($this->text[$i]), $this->codeParity[$this->checksumValue][$i]), false); + if ($i < 4) { + $this->drawChar($im, '00', false); // Inter-char + } + } + + $this->drawText($im, 0, 0, $this->positionX, $this->thickness); + } + + /** + * Returns the maximal size of a barcode. + * + * @param int $w + * @param int $h + * @return int[] + */ + public function getDimension($w, $h) { + $startlength = 4; + $textlength = 5 * 7; + $intercharlength = 2 * 4; + + $w += $startlength + $textlength + $intercharlength; + $h += $this->thickness; + return parent::getDimension($w, $h); + } + + /** + * Adds the default label. + */ + protected function addDefaultLabel() { + parent::addDefaultLabel(); + + if ($this->defaultLabel !== null) { + $this->defaultLabel->setPosition(BCGLabel::POSITION_TOP); + } + } + + /** + * Validates the input. + */ + protected function validate() { + $c = strlen($this->text); + if ($c === 0) { + throw new BCGParseException('upcext5', 'No data has been entered.'); + } + + // Checking if all chars are allowed + for ($i = 0; $i < $c; $i++) { + if (array_search($this->text[$i], $this->keys) === false) { + throw new BCGParseException('upcext5', 'The character \'' . $this->text[$i] . '\' is not allowed.'); + } + } + + // Must contain 5 digits + if ($c !== 5) { + throw new BCGParseException('upcext5', 'Must contain 5 digits.'); + } + + parent::validate(); + } + + /** + * Overloaded method to calculate checksum. + */ + protected function calculateChecksum() { + // Calculating Checksum + // Consider the right-most digit of the message to be in an "odd" position, + // and assign odd/even to each character moving from right to left + // Odd Position = 3, Even Position = 9 + // Multiply it by the number + // Add all of that and do ?mod10 + $odd = true; + $this->checksumValue = 0; + $c = strlen($this->text); + for ($i = $c; $i > 0; $i--) { + if ($odd === true) { + $multiplier = 3; + $odd = false; + } else { + $multiplier = 9; + $odd = true; + } + + if (!isset($this->keys[$this->text[$i - 1]])) { + return; + } + + $this->checksumValue += $this->keys[$this->text[$i - 1]] * $multiplier; + } + + $this->checksumValue = $this->checksumValue % 10; + } + + /** + * Overloaded method to display the checksum. + */ + protected function processChecksum() { + if ($this->checksumValue === false) { // Calculate the checksum only once + $this->calculateChecksum(); + } + + if ($this->checksumValue !== false) { + return $this->keys[$this->checksumValue]; + } + + return false; + } + + /** + * Inverses the string when the $inverse parameter is equal to 1. + * + * @param string $text + * @param int $inverse + * @return string + */ + private static function inverse($text, $inverse = 1) { + if ($inverse === 1) { + $text = strrev($text); + } + + return $text; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/JoinDraw.php b/niucloud/core/util/barcode/class/JoinDraw.php new file mode 100644 index 0000000..2d3c35f --- /dev/null +++ b/niucloud/core/util/barcode/class/JoinDraw.php @@ -0,0 +1,194 @@ +image1 = $image1->get_im(); + } else { + $this->image1 = $image1; + } + if ($image2 instanceof BCGDrawing) { + $this->image2 = $image2->get_im(); + } else { + $this->image2 = $image2; + } + + $this->background = $background; + $this->space = (int)$space; + $this->position = (int)$position; + $this->alignment = (int)$alignment; + + $this->createIm(); + } + + /** + * Destroys the image. + */ + public function __destruct() { + imagedestroy($this->im); + } + + /** + * Finds the position where the barcode should be aligned. + * + * @param int $size1 + * @param int $size2 + * @param int $ailgnment + * @return int + */ + private function findPosition($size1, $size2, $alignment) { + $rsize1 = max($size1, $size2); + $rsize2 = min($size1, $size2); + + if ($alignment === self::ALIGN_LEFT) { // Or TOP + return 0; + } elseif ($alignment === self::ALIGN_CENTER) { + return $rsize1 / 2 - $rsize2 / 2; + } else { // RIGHT or TOP + return $rsize1 - $rsize2; + } + } + + /** + * Change the alignments. + * + * @param int $alignment + * @return int + */ + private function changeAlignment($alignment) { + if ($alignment === 0) { + return 1; + } elseif ($alignment === 1) { + return 0; + } else { + return 2; + } + } + + /** + * Creates the image. + */ + private function createIm() { + $w1 = imagesx($this->image1); + $w2 = imagesx($this->image2); + $h1 = imagesy($this->image1); + $h2 = imagesy($this->image2); + + if ($this->position === self::POSITION_LEFT || $this->position === self::POSITION_RIGHT) { + $w = $w1 + $w2 + $this->space; + $h = max($h1, $h2); + } else { + $w = max($w1, $w2); + $h = $h1 + $h2 + $this->space; + } + + $this->im = imagecreatetruecolor($w, $h); + imagefill($this->im, 0, 0, $this->background->allocate($this->im)); + + // We start defining position of images + if ($this->position === self::POSITION_TOP) { + if ($w1 > $w2) { + $posX1 = 0; + $posX2 = $this->findPosition($w1, $w2, $this->alignment); + } else { + $a = $this->changeAlignment($this->alignment); + $posX1 = $this->findPosition($w1, $w2, $a); + $posX2 = 0; + } + + $posY2 = 0; + $posY1 = $h2 + $this->space; + } elseif ($this->position === self::POSITION_LEFT) { + if ($w1 > $w2) { + $posY1 = 0; + $posY2 = $this->findPosition($h1, $h2, $this->alignment); + } else { + $a = $this->changeAlignment($this->alignment); + $posY2 = 0; + $posY1 = $this->findPosition($h1, $h2, $a); + } + + $posX2 = 0; + $posX1 = $w2 + $this->space; + } elseif ($this->position === self::POSITION_BOTTOM) { + if ($w1 > $w2) { + $posX2 = $this->findPosition($w1, $w2, $this->alignment); + $posX1 = 0; + } else { + $a = $this->changeAlignment($this->alignment); + $posX2 = 0; + $posX1 = $this->findPosition($w1, $w2, $a); + } + + $posY1 = 0; + $posY2 = $h1 + $this->space; + } else { // defaults to RIGHT + if ($w1 > $w2) { + $posY2 = $this->findPosition($h1, $h2, $this->alignment); + $posY1 = 0; + } else { + $a = $this->changeAlignment($this->alignment); + $posY2 = 0; + $posY1 = $this->findPosition($h1, $h2, $a); + } + + $posX1 = 0; + $posX2 = $w1 + $this->space; + } + + imagecopy($this->im, $this->image1, $posX1, $posY1, 0, 0, $w1, $h1); + imagecopy($this->im, $this->image2, $posX2, $posY2, 0, 0, $w2, $h2); + } + + /** + * Returns the new $im created. + * + * @return resource + */ + public function get_im() { + return $this->im; + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/drawer/BCGDraw.php b/niucloud/core/util/barcode/class/drawer/BCGDraw.php new file mode 100644 index 0000000..2082b5d --- /dev/null +++ b/niucloud/core/util/barcode/class/drawer/BCGDraw.php @@ -0,0 +1,38 @@ +im = $im; + } + + /** + * Sets the filename. + * + * @param string $filename + */ + public function setFilename($filename) { + $this->filename = $filename; + } + + /** + * Method needed to draw the image based on its specification (JPG, GIF, etc.). + */ + abstract public function draw(); +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/drawer/BCGDrawJPG.php b/niucloud/core/util/barcode/class/drawer/BCGDrawJPG.php new file mode 100644 index 0000000..2e2c939 --- /dev/null +++ b/niucloud/core/util/barcode/class/drawer/BCGDrawJPG.php @@ -0,0 +1,102 @@ +dpi = max(1, $dpi); + } else { + $this->dpi = null; + } + } + + /** + * Sets the quality of the JPG. + * + * @param int $quality + */ + public function setQuality($quality) { + $this->quality = $quality; + } + + /** + * Draws the JPG on the screen or in a file. + */ + public function draw() { + ob_start(); + imagejpeg($this->im, null, $this->quality); + $bin = ob_get_contents(); + ob_end_clean(); + + $this->setInternalProperties($bin); + + if (empty($this->filename)) { + echo $bin; + } else { + file_put_contents($this->filename, $bin); + } + } + + private function setInternalProperties(&$bin) { + $this->internalSetDPI($bin); + $this->internalSetC($bin); + } + + private function internalSetDPI(&$bin) { + if ($this->dpi !== null) { + $bin = substr_replace($bin, pack("Cnn", 0x01, $this->dpi, $this->dpi), 13, 5); + } + } + + private function internalSetC(&$bin) { + if(strcmp(substr($bin, 0, 4), pack('H*', 'FFD8FFE0')) === 0) { + $offset = 4 + (ord($bin[4]) << 8 | ord($bin[5])); + $firstPart = substr($bin, 0, $offset); + $secondPart = substr($bin, $offset); + $cr = pack('H*', 'FFFE004447656E657261746564207769746820426172636F64652047656E657261746F7220666F722050485020687474703A2F2F7777772E626172636F64657068702E636F6D'); + $bin = $firstPart; + $bin .= $cr; + $bin .= $secondPart; + } + } +} +?> \ No newline at end of file diff --git a/niucloud/core/util/barcode/class/drawer/BCGDrawPNG.php b/niucloud/core/util/barcode/class/drawer/BCGDrawPNG.php new file mode 100644 index 0000000..5b65a3a --- /dev/null +++ b/niucloud/core/util/barcode/class/drawer/BCGDrawPNG.php @@ -0,0 +1,202 @@ +dpi = max(1, $dpi); + } else { + $this->dpi = null; + } + } + + /** + * Draws the PNG on the screen or in a file. + */ + public function draw() { + ob_start(); + imagepng($this->im); + $bin = ob_get_contents(); + ob_end_clean(); + + $this->setInternalProperties($bin); + + if (empty($this->filename)) { + echo $bin; + } else { + file_put_contents($this->filename, $bin); + } + } + + private function setInternalProperties(&$bin) { + // Scan all the ChunkType + if (strcmp(substr($bin, 0, 8), pack('H*', '89504E470D0A1A0A')) === 0) { + $chunks = $this->detectChunks($bin); + + $this->internalSetDPI($bin, $chunks); + $this->internalSetC($bin, $chunks); + } + } + + private function detectChunks($bin) { + $data = substr($bin, 8); + $chunks = array(); + $c = strlen($data); + + $offset = 0; + while ($offset < $c) { + $packed = unpack('Nsize/a4chunk', $data); + $size = $packed['size']; + $chunk = $packed['chunk']; + + $chunks[] = array('offset' => $offset + 8, 'size' => $size, 'chunk' => $chunk); + $jump = $size + 12; + $offset += $jump; + $data = substr($data, $jump); + } + + return $chunks; + } + + private function internalSetDPI(&$bin, &$chunks) { + if ($this->dpi !== null) { + $meters = (int)($this->dpi * 39.37007874); + + $found = -1; + $c = count($chunks); + for($i = 0; $i < $c; $i++) { + // We already have a pHYs + if($chunks[$i]['chunk'] === 'pHYs') { + $found = $i; + break; + } + } + + $data = 'pHYs' . pack('NNC', $meters, $meters, 0x01); + $crc = self::crc($data, 13); + $cr = pack('Na13N', 9, $data, $crc); + + // We didn't have a pHYs + if($found == -1) { + // Don't do anything if we have a bad PNG + if($c >= 2 && $chunks[0]['chunk'] === 'IHDR') { + array_splice($chunks, 1, 0, array(array('offset' => 33, 'size' => 9, 'chunk' => 'pHYs'))); + + // Push the data + for($i = 2; $i < $c; $i++) { + $chunks[$i]['offset'] += 21; + } + + $firstPart = substr($bin, 0, 33); + $secondPart = substr($bin, 33); + $bin = $firstPart; + $bin .= $cr; + $bin .= $secondPart; + } + } else { + $bin = substr_replace($bin, $cr, $chunks[$i]['offset'], 21); + } + } + } + + private function internalSetC(&$bin, &$chunks) { + if (count($chunks) >= 2 && $chunks[0]['chunk'] === 'IHDR') { + $firstPart = substr($bin, 0, 33); + $secondPart = substr($bin, 33); + $cr = pack('H*', '0000004C74455874436F707972696768740047656E657261746564207769746820426172636F64652047656E657261746F7220666F722050485020687474703A2F2F7777772E626172636F64657068702E636F6D597F70B8'); + $bin = $firstPart; + $bin .= $cr; + $bin .= $secondPart; + } + + // Chunks is dirty!! But we are done. + } + + private static $crc_table = array(); + private static $crc_table_computed = false; + + private static function make_crc_table() { + for ($n = 0; $n < 256; $n++) { + $c = $n; + for ($k = 0; $k < 8; $k++) { + if (($c & 1) == 1) { + $c = 0xedb88320 ^ (self::SHR($c, 1)); + } else { + $c = self::SHR($c, 1); + } + } + self::$crc_table[$n] = $c; + } + + self::$crc_table_computed = true; + } + + private static function SHR($x, $n) { + $mask = 0x40000000; + + if ($x < 0) { + $x &= 0x7FFFFFFF; + $mask = $mask >> ($n - 1); + return ($x >> $n) | $mask; + } + + return (int)$x >> (int)$n; + } + + private static function update_crc($crc, $buf, $len) { + $c = $crc; + + if (!self::$crc_table_computed) { + self::make_crc_table(); + } + + for ($n = 0; $n < $len; $n++) { + $c = self::$crc_table[($c ^ ord($buf[$n])) & 0xff] ^ (self::SHR($c, 8)); + } + + return $c; + } + + private static function crc($data, $len) { + return self::update_crc(-1, $data, $len) ^ -1; + } +} +?> diff --git a/niucloud/core/util/barcode/font/Arial.ttf b/niucloud/core/util/barcode/font/Arial.ttf new file mode 100644 index 0000000..886789b Binary files /dev/null and b/niucloud/core/util/barcode/font/Arial.ttf differ diff --git a/niucloud/core/util/niucloud/BaseNiucloudClient.php b/niucloud/core/util/niucloud/BaseNiucloudClient.php new file mode 100644 index 0000000..899e6c6 --- /dev/null +++ b/niucloud/core/util/niucloud/BaseNiucloudClient.php @@ -0,0 +1,309 @@ +code = $code; + $this->secret = $secret; + }else{ + $auth_config = (new CoreNiucloudConfigService())->getNiucloudConfig(); + if($auth_config['auth_code'] || $auth_config['auth_secret']){ + $this->code = $auth_config['auth_code']; + $this->secret = $auth_config['auth_secret']; + }else{ + $this->code = config('niucloud.auth.code'); + $this->secret = config('niucloud.auth.secret'); + } + } + $this->access_token = $this->getAccessToken(); + $this->request = request(); + $this->developer_token = (new ConfigService())->getDeveloperToken()['token'] ?? ''; + } + + /** + * @param string $url + * @param array $data + * @return array|Response|object|ResponseInterface + * @throws GuzzleException + */ + public function httpPost(string $url, array $data = []) + { + return $this->request($url, 'POST', [ + 'form_params' => $data, + ]); + } + + /** + * @param string $url + * @param string $method + * @param array $options + * @param bool $returnRaw + * + * @return ResponseInterface + * @throws GuzzleException + */ + public function request(string $url, string $method = 'GET', array $options = [], bool $returnRaw = false) + { + if (empty($this->middlewares)) { + $this->registerHttpMiddlewares(); + } + $response = $this->toRequest($url, $method, $options); + return $response; + } + + /** + * Register Guzzle middlewares. + */ + protected function registerHttpMiddlewares() + { + // retry + $this->pushMiddleware($this->retryMiddleware(), 'retry'); + //header + $this->pushMiddleware($this->headerMiddleware(), 'header'); + // access token + $this->pushMiddleware($this->accessTokenMiddleware(), 'access_token'); + } + + /** + * @return callable + */ + protected function retryMiddleware() + { + return Middleware::retry( + function ( + $retries, + RequestInterface $request, + ResponseInterface $response = null + ) { + // Limit the number of retries to 2 重试次数,默认 1,指定当 http 请求失败时重试的次数。 + if ($retries < config('niucloud.http.max_retries', 1) && $response && $body = $response->getBody()) { + // Retry on server errors + $response = json_decode($body, true); + if (isset($response['code'])) { + if ($response['code'] != 1) { + if (in_array(abs($response['code']), [401], true)) { + $this->clearAccessToken(); + $this->refreshAccessToken(); + } else { + throw new NiucloudException($response['msg']); + } + } + return true; + } + } + return false; + }, + function () { + //重试延迟间隔(单位:ms),默认 500 + return abs(config('niucloud.http.retry_delay', 500)); + } + ); + } + + /** + * 表头属性 + * @return Closure + */ + public function headerMiddleware(){ + $developer_token = $this->developer_token; + + return function (callable $handler) use ($developer_token) { + return function (RequestInterface $request, array $options) use ($handler, $developer_token) { + $domain = request()->domain(true); + $domain = str_replace('http://', '', $domain); + $domain = str_replace('https://', '', $domain); + $request = $request->withHeader('Referer', $domain); + $request = $request->withHeader('developer-token', $developer_token); + $options['verify'] = config('niucloud.http.verify', true); + return $handler($request, $options); + }; + }; + } + + + /** + * @param string $url + * @param array $query + * @return array|object|Response|ResponseInterface + * @throws GuzzleException + */ + public function httpGet(string $url, array $query = []) + { + return $this->request($url, 'GET', [ + 'query' => $query, + ]); + } + + /** + * @return Closure + */ + protected function accessTokenMiddleware() + { + return function (callable $handler) { + return function (RequestInterface $request, array $options) use ($handler) { + if ($this->access_token) { + $request = $this->applyToRequest($request, $options); + } + return $handler($request, $options); + }; + }; + } + + /** + * @param RequestInterface $request + * @param array $requestOptions + * @return RequestInterface + */ + public function applyToRequest(RequestInterface $request, array $requestOptions = []): RequestInterface + { + return $request->withHeader($this->access_token_key, $this->access_token); + } + + /** + * @param string $url + * @param array $data + * @param array $query + * @return array|Response|object|ResponseInterface + * @throws GuzzleException + */ + public function httpPostJson(string $url, array $data = [], array $query = []) + { + return $this->request($url, 'POST', ['query' => $query, 'json' => $data]); + } + + /** + * @param string $url + * @param array $files + * @param array $form + * @param array $query + * @return array|Response|object|ResponseInterface + * @throws GuzzleException + */ + public function httpUpload(string $url, array $files = [], array $form = [], array $query = []) + { + $multipart = []; + $headers = []; + + if (isset($form['filename'])) { + $headers = [ + 'Content-Disposition' => 'form-data; name="media"; filename="' . $form['filename'] . '"' + ]; + } + + foreach ($files as $name => $path) { + $multipart[] = [ + 'name' => $name, + 'contents' => fopen($path, 'r'), + 'headers' => $headers + ]; + } + + foreach ($form as $name => $contents) { + $multipart[] = compact('name', 'contents'); + } + + return $this->request( + $url, + 'POST', + ['query' => $query, 'multipart' => $multipart, 'connect_timeout' => 30, 'timeout' => 30, 'read_timeout' => 30] + ); + } + + /** + * @param string $url + * @param string $method + * @param array $options + * @throws GuzzleException + */ + public function requestRaw(string $url, string $method = 'GET', array $options = []) + { + return Response::buildFromPsrResponse($this->request($url, $method, $options, true)); + } + + /** + * 下载文件 + * @param string $url + * @param array $query + * @param string $absolute_path + * @return string + * @throws GuzzleException + */ + public function download(string $url, array $query = [], string $absolute_path = '') + { + // 打开即将下载的本地文件,在该文件上打开一个流 + $resource = fopen($absolute_path, 'w'); + $res = $this->request($url, 'GET', ['sink' => $absolute_path, 'query' => $query]); + // 关闭一个已打开的文件指针 + fclose($resource); + return $absolute_path; + } + + public function getDomain($is_filter = true){ + $domain = request()->domain(true); + if($is_filter){ + $domain = str_replace('http://', '', $domain); + $domain = str_replace('https://', '', $domain); + } + return $domain; + } +} diff --git a/niucloud/core/util/niucloud/CloudService.php b/niucloud/core/util/niucloud/CloudService.php new file mode 100644 index 0000000..0c4708c --- /dev/null +++ b/niucloud/core/util/niucloud/CloudService.php @@ -0,0 +1,33 @@ +toRequest($url, 'POST', $options); + } + + public function httpGet(string $url, array $options = []) { + return $this->toRequest($url, 'GET', $options); + } + + public function request(string $method, string $url, array $options = []) { + return (new Client(['base_uri' => $this->baseUri ]))->request($method, $url, $options); + } + + public function getUrl(string $url) { + return $this->baseUri . $url; + } +} diff --git a/niucloud/core/util/niucloud/http/AccessToken.php b/niucloud/core/util/niucloud/http/AccessToken.php new file mode 100644 index 0000000..c0315b3 --- /dev/null +++ b/niucloud/core/util/niucloud/http/AccessToken.php @@ -0,0 +1,73 @@ +access_token = ''; + Cache::delete($this->access_token_cache); + return $this; + } + /** + * 设置access_token + * @param $access_token + * @return $this + */ + public function setAccessToken($access_token) + { + $this->access_token = $access_token; + Cache::set($this->access_token_cache, $access_token, 7200); + return $this; + } + /** + * @return mixed + */ + public function getAccessToken() + { + if (empty($this->access_token)) { + $this->access_token = Cache::get($this->access_token_cache, ''); + } + return $this->access_token; + } + + /** + * 刷新access_token + * @return void + * @throws GuzzleException + */ + public function refreshAccessToken() + { + $access_token_info = $this->httpGet('auth', ['code' => $this->code, 'secret' => $this->secret, 'token' => $this->createToken(), 'product_key' => self::PRODUCT, 'redirect_uri' => $this->getDomain(false)]); + if (isset($access_token_info['code']) && $access_token_info['code'] != 1) throw new NiucloudException($access_token_info['msg']); + $this->setAccessToken($access_token_info['data']['token']); + } + +} diff --git a/niucloud/core/util/niucloud/http/HasHttpRequests.php b/niucloud/core/util/niucloud/http/HasHttpRequests.php new file mode 100644 index 0000000..e10925e --- /dev/null +++ b/niucloud/core/util/niucloud/http/HasHttpRequests.php @@ -0,0 +1,183 @@ + [ + CURLOPT_IPRESOLVE => CURL_IPRESOLVE_V4, + ], + ]; + /** + * @var ClientInterface + */ + protected $httpClient; + /** + * @var array + */ + protected array $middlewares = []; + /** + * @var HandlerStack + */ + protected $handlerStack; + + /** + * @param array $defaults + * @return void + */ + public static function setDefaultOptions(array $defaults = []) + { + self::$defaults = $defaults; + } + + /** + * @return array + */ + public static function getDefaultOptions(): array + { + return self::$defaults; + } + + /** + * @param callable $middleware + * @param string|null $name + * @return $this + */ + public function pushMiddleware(callable $middleware, string $name = null) + { + if (!is_null($name)) { + $this->middlewares[$name] = $middleware; + } else { + $this->middlewares[] = $middleware; + } + + return $this; + } + + /** + * @return array + */ + public function getMiddlewares(): array + { + return $this->middlewares; + } + + /** + * @param $url + * @param string $method + * @param array $options + * @return ResponseInterface + * @throws GuzzleException + */ + public function toRequest($url, string $method = 'GET', array $options = []) + { + $method = strtoupper($method); + + $options = array_merge(self::$defaults, $options, ['handler' => $this->getHandlerStack()]); + + $options = $this->fixJsonIssue($options); + + if (property_exists($this, 'baseUri') && !is_null($this->baseUri)) { + $options['base_uri'] = $this->baseUri; + } + $options['connect_timeout'] = config('niucloud.http.connect_timeout', 3); + $response = $this->getHttpClient()->request($method, $url, $options); + $response->getBody()->rewind(); + return json_decode($response->getBody()->getContents(), true); + } + + /** + * @return HandlerStack + */ + public function getHandlerStack(): HandlerStack + { + if ($this->handlerStack) { + return $this->handlerStack; + } + + $this->handlerStack = HandlerStack::create($this->getGuzzleHandler()); + + foreach ($this->middlewares as $name => $middleware) { + $this->handlerStack->push($middleware, $name); + } + + return $this->handlerStack; + } + + /** + * @param HandlerStack $handlerStack + * + * @return $this + */ + public function setHandlerStack(HandlerStack $handlerStack) + { + $this->handlerStack = $handlerStack; + + return $this; + } + + /** + * @return callable + */ + protected function getGuzzleHandler() + { + return choose_handler(); + } + + /** + * @param array $options + * @return array + */ + protected function fixJsonIssue(array $options): array + { + if (isset($options['json']) && is_array($options['json'])) { + $options['headers'] = array_merge($options['headers'] ?? [], ['Content-Type' => 'application/json']); + + if (empty($options['json'])) { + $options['body'] = \GuzzleHttp\json_encode($options['json'], JSON_FORCE_OBJECT); + } else { + $options['body'] = \GuzzleHttp\json_encode($options['json'], JSON_UNESCAPED_UNICODE); + } + + unset($options['json']); + } + + return $options; + } + + /** + * @return ClientInterface + */ + public function getHttpClient(): ClientInterface + { + if (!($this->httpClient instanceof ClientInterface)) { + $this->httpClient = new Client(['handler' => HandlerStack::create($this->getGuzzleHandler())]); + } + + return $this->httpClient; + } + + /** + * @param ClientInterface $httpClient + * @return $this + */ + public function setHttpClient(ClientInterface $httpClient) + { + $this->httpClient = $httpClient; + + return $this; + } +} diff --git a/niucloud/core/util/niucloud/http/Response.php b/niucloud/core/util/niucloud/http/Response.php new file mode 100644 index 0000000..81e1182 --- /dev/null +++ b/niucloud/core/util/niucloud/http/Response.php @@ -0,0 +1,95 @@ +getStatusCode(), + $response->getHeaders(), + $response->getBody(), + $response->getProtocolVersion(), + $response->getReasonPhrase() + ); + } + + /** + * @return object + */ + public function toObject() + { + return json_decode($this->toJson()); + } + + /** + * Build to json. + * + * @return string + */ + public function toJson() + { + return json_encode($this->toArray()); + } + + /** + * Build to array. + * + * @return array + */ + public function toArray() + { + $content = $this->removeControlCharacters($this->getBodyContents()); + + if (false !== stripos($this->getHeaderLine('Content-Type'), 'xml') || 0 === stripos($content, 'getBody()->rewind(); + $contents = $this->getBody()->getContents(); + $this->getBody()->rewind(); + + return $contents; + } + + /** + * @return string + */ + public function __toString() + { + return $this->getBodyContents(); + } +} diff --git a/niucloud/core/util/niucloud/http/Token.php b/niucloud/core/util/niucloud/http/Token.php new file mode 100644 index 0000000..bb06d51 --- /dev/null +++ b/niucloud/core/util/niucloud/http/Token.php @@ -0,0 +1,81 @@ +request->get('signature') !== $this->signature([ + $this->getToken(), + $this->request->get('timestamp'), + $this->request->get('nonce'), + ])) { + throw new NiucloudException('Invalid request signature.'); + } + return true; + } + + /** + * 生成临时证书 + * @param array $params + * @return string + */ + protected function signature(array $params) + { + sort($params, SORT_STRING); + + return sha1(implode($params)); + } + + /** + * 获取TOKEN + * @return void + */ + public function getToken(){ + return Cache::get($this->token_cache, ''); + } + + /** + * 新创建一个token(todo 临时) + * @return void + */ + public function createToken(){ + //根据code和secret生成token + $token = md5(serialize( + [ + 'timestamp' => time(), + 'code' => $this->code, + 'secret' => $this->secret, + 'nonce' => mt_rand(0, 100) + ] + )); + $this->clearToken(); + Cache::set($this->token_cache, $token, 3600); + return $token; + } + + /** + * @return $this + */ + public function clearToken() + { + $this->access_token = ''; + Cache::delete($this->token_cache); + return $this; + } +} diff --git a/niucloud/core/util/niucloud/support/XML.php b/niucloud/core/util/niucloud/support/XML.php new file mode 100644 index 0000000..d0485be --- /dev/null +++ b/niucloud/core/util/niucloud/support/XML.php @@ -0,0 +1,155 @@ + $value) { + $res = self::normalize($value); + if (('@attributes' === $key) && ($key)) { + $result = $res; + } else { + $result[$key] = $res; + } + } + } else { + $result = $obj; + } + + return $result; + } + + /** + * Delete invalid characters in XML. + * + * @see https://www.w3.org/TR/2008/REC-xml-20081126/#charsets - XML charset range + * @see http://php.net/manual/en/regexp.reference.escape.php - escape in UTF-8 mode + * + * @param string $xml + * + * @return string + */ + public static function sanitize($xml) + { + return preg_replace('/[^\x{9}\x{A}\x{D}\x{20}-\x{D7FF}\x{E000}-\x{FFFD}\x{10000}-\x{10FFFF}]+/u', '', $xml); + } + + /** + * XML encode. + * + * @param mixed $data + * @param string $root + * @param string $item + * @param string $attr + * @param string $id + * + * @return string + */ + public static function build( + $data, + $root = 'xml', + $item = 'item', + $attr = '', + $id = 'id' + ) + { + if (is_array($attr)) { + $_attr = []; + + foreach ($attr as $key => $value) { + $_attr[] = "{$key}=\"{$value}\""; + } + + $attr = implode(' ', $_attr); + } + + $attr = trim($attr); + $attr = empty($attr) ? '' : " {$attr}"; + $xml = "<{$root}{$attr}>"; + $xml .= self::data2Xml($data, $item, $id); + $xml .= ""; + + return $xml; + } + + /** + * Array to XML. + * + * @param array $data + * @param string $item + * @param string $id + * + * @return string + */ + protected static function data2Xml($data, $item = 'item', $id = 'id') + { + $xml = $attr = ''; + + foreach ($data as $key => $val) { + if (is_numeric($key)) { + $id && $attr = " {$id}=\"{$key}\""; + $key = $item; + } + + $xml .= "<{$key}{$attr}>"; + + if ((is_array($val) || is_object($val))) { + $xml .= self::data2Xml((array)$val, $item, $id); + } else { + $xml .= is_numeric($val) ? $val : self::cdata($val); + } + + $xml .= ""; + } + + return $xml; + } + + /** + * Build CDATA. + * + * @param string $string + * + * @return string + */ + public static function cdata($string) + { + return sprintf('', $string); + } +} diff --git a/niucloud/public/.gitignore b/niucloud/public/.gitignore new file mode 100644 index 0000000..37c51d5 --- /dev/null +++ b/niucloud/public/.gitignore @@ -0,0 +1,6 @@ +/.htaccess +upload +nginx.htaccess +.htaccess +addon/hygl/wx_mch_cert +uploads/qrcode diff --git a/niucloud/public/addon/README.md b/niucloud/public/addon/README.md new file mode 100644 index 0000000..9a801f4 --- /dev/null +++ b/niucloud/public/addon/README.md @@ -0,0 +1 @@ +插件资源文件目录 diff --git a/niucloud/public/addon/hygl/cover.png b/niucloud/public/addon/hygl/cover.png new file mode 100644 index 0000000..41d5b1b Binary files /dev/null and b/niucloud/public/addon/hygl/cover.png differ diff --git a/niucloud/public/addon/hygl/icon.png b/niucloud/public/addon/hygl/icon.png new file mode 100644 index 0000000..41d5b1b Binary files /dev/null and b/niucloud/public/addon/hygl/icon.png differ diff --git a/niucloud/public/admin/assets/403-938aef7b.js b/niucloud/public/admin/assets/403-938aef7b.js new file mode 100644 index 0000000..e941b51 --- /dev/null +++ b/niucloud/public/admin/assets/403-938aef7b.js @@ -0,0 +1 @@ +const s="Your account permissions are insufficient. Please contact the administrator to add permissions!",t={tips:s};export{t as default,s as tips}; diff --git a/niucloud/public/admin/assets/403-b03cc05d.js b/niucloud/public/admin/assets/403-b03cc05d.js new file mode 100644 index 0000000..2892a9c --- /dev/null +++ b/niucloud/public/admin/assets/403-b03cc05d.js @@ -0,0 +1 @@ +const t="您的账号权限不足,请联系管理员添加权限!",s={tips:t};export{s as default,t as tips}; diff --git a/niucloud/public/admin/assets/404-6b18d68c.css b/niucloud/public/admin/assets/404-6b18d68c.css new file mode 100644 index 0000000..e0a2ffd --- /dev/null +++ b/niucloud/public/admin/assets/404-6b18d68c.css @@ -0,0 +1 @@ +.error[data-v-944eb5ed]{text-align:center;height:100vh;display:flex;justify-content:center;align-items:center}.error .error-code[data-v-944eb5ed]{color:var(--el-color-primary);font-size:150px}.error .error-text[data-v-944eb5ed]{color:#0e77fd}.error .el-button[data-v-944eb5ed]{width:176px;background-color:#0e77fd;color:#fff} diff --git a/niucloud/public/admin/assets/404-c52b1f82.js b/niucloud/public/admin/assets/404-c52b1f82.js new file mode 100644 index 0000000..43ffbb8 --- /dev/null +++ b/niucloud/public/admin/assets/404-c52b1f82.js @@ -0,0 +1 @@ +import{d as l,r as d,o as i,c as p,a as e,b as u,e as m,w as x,u as v,f,E as h,p as b,g,h as I,i as w,t as S}from"./index-6010b07e.js";/* empty css */import{_ as B}from"./_plugin-vue_export-helper-c27b6911.js";const k=""+new URL("error-da01d378.png",import.meta.url).href,o=t=>(b("data-v-944eb5ed"),t=t(),g(),t),y={class:"error"},C={class:"flex items-center"},E=o(()=>e("div",null,[e("img",{class:"w-[300px]",src:k})],-1)),N={class:"text-left ml-[100px]"},R=o(()=>e("div",{class:"error-text text-[28px] font-bold"},"404错误!",-1)),U=o(()=>e("div",{class:"text-[#222] text-[20px] mt-[15px]"},"哎呀,出错了!您访问的页面不存在...",-1)),V=o(()=>e("div",{class:"text-[#c4c2c2] text-[12px] mt-[5px]"},"尝试检查URL的错误,然后点击浏览器刷新按钮。",-1)),L={class:"mt-[40px]"},$=l({__name:"404",setup(t){let s=null;const a=d(5),n=f();return s=setInterval(()=>{a.value===0?(clearInterval(s),n.go(-1)):a.value--},1e3),i(()=>{s&&clearInterval(s)}),(r,c)=>{const _=h;return I(),p("div",y,[e("div",C,[u(r.$slots,"content",{},()=>[E],!0),e("div",N,[R,U,V,e("div",L,[m(_,{class:"bottom",onClick:c[0]||(c[0]=D=>v(n).go(-1))},{default:x(()=>[w(S(a.value)+" 秒后返回上一页",1)]),_:1})])])])])}}});const z=B($,[["__scopeId","data-v-944eb5ed"]]);export{z as default}; diff --git a/niucloud/public/admin/assets/_plugin-vue_export-helper-c27b6911.js b/niucloud/public/admin/assets/_plugin-vue_export-helper-c27b6911.js new file mode 100644 index 0000000..718edd3 --- /dev/null +++ b/niucloud/public/admin/assets/_plugin-vue_export-helper-c27b6911.js @@ -0,0 +1 @@ +const s=(t,r)=>{const o=t.__vccOpts||t;for(const[c,e]of r)o[c]=e;return o};export{s as _}; diff --git a/niucloud/public/admin/assets/access-0177522b.css b/niucloud/public/admin/assets/access-0177522b.css new file mode 100644 index 0000000..c8b55e2 --- /dev/null +++ b/niucloud/public/admin/assets/access-0177522b.css @@ -0,0 +1 @@ +.progress-point[data-v-7d9a3fa3]{flex-grow:1;list-style:none}.border-color[data-v-7d9a3fa3]{border-color:var(--el-color-primary)}.bg-color[data-v-7d9a3fa3]{background-color:var(--el-color-primary)}.text-color[data-v-7d9a3fa3]{color:var(--el-color-primary)}.bg-color1[data-v-7d9a3fa3]{background-color:var(--el-color-info-light-8)}[data-v-7d9a3fa3] .el-tabs__item:hover{border-bottom:2px solid var(--el-color-primary)}[data-v-7d9a3fa3] .el-tabs__item{padding:0}[data-v-7d9a3fa3] .el-tabs__item+.el-tabs__item{margin-right:20px;margin-left:20px}[data-v-7d9a3fa3] .el-tabs--top .el-tabs__item.is-top:nth-child(2){margin-right:20px}[data-v-7d9a3fa3] .el-step.is-vertical .el-step__icon.is-icon{padding:8px 0;height:40px;background-color:#fff}[data-v-7d9a3fa3] .el-step__title{height:40px;line-height:40px!important} diff --git a/niucloud/public/admin/assets/access-024cdb64.js b/niucloud/public/admin/assets/access-024cdb64.js new file mode 100644 index 0000000..b6c1af1 --- /dev/null +++ b/niucloud/public/admin/assets/access-024cdb64.js @@ -0,0 +1 @@ +import{d as A,f as I,r as w,v as B,a0 as N,h as R,c as q,a as t,t as l,u as n,N as a,e as s,w as e,aH as f,i as g,R as z,aA as T,aB as F,a1 as $,E as M,aj as D,ak as H,al as P,V as Q,am as U,p as W,g as G}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as J}from"./weapp-7423630d.js";import{_ as K}from"./_plugin-vue_export-helper-c27b6911.js";const L=i=>(W("data-v-b86a443b"),i=i(),G(),i),O={class:"w-full p-5 bg-white"},X={class:"flex justify-between items-center mb-[20px]"},Y={class:"text-[20px]"},Z={class:"p-[20px]"},ee={class:"text-[16px] mb-[20px]"},te={class:"text-[14px] text-[#303133] font-[700]"},se={class:"text-[#999]"},ne={class:"mt-[20px] mb-[40px] h-[32px]"},ae={class:"text-[14px] text-[#303133] font-[700]"},le={class:"text-[#999]"},oe={class:"mt-[20px] mb-[40px] h-[32px]"},ce={class:"text-[14px] text-[#303133] font-[700]"},pe={class:"text-[#999]"},ie={class:"mt-[20px] mb-[40px] h-[32px]"},de={class:"text-[14px] text-[#303133] font-[700]"},re={class:"text-[#999]"},_e=L(()=>t("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),xe={class:"flex justify-center"},ue={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},fe={class:"mt-[22px] text-center"},me={class:"text-[14px] text-[#303133] font-[700]"},he=A({__name:"access",setup(i){const m=I(),h=w("/channel/weapp"),o=w(2),d=w("");B(async()=>{const p=await J();d.value=p.data.qr_code});const k=p=>{window.open(p,"_blank")},C=p=>{m.push({path:h.value})};return(p,c)=>{const b=T,E=F,r=N("CircleCheckFilled"),_=$,v=M,x=D,S=H,y=P,j=Q,V=U;return R(),q("div",O,[t("div",X,[t("span",Y,l(n(a)("title")),1)]),s(E,{modelValue:h.value,"onUpdate:modelValue":c[0]||(c[0]=u=>h.value=u),class:"demo-tabs",onTabChange:C},{default:e(()=>[s(b,{label:n(a)("weappAccessFlow"),name:"/channel/weapp"},null,8,["label"]),s(b,{label:n(a)("subscribeMessage"),name:"/channel/weapp/message"},null,8,["label"]),s(b,{label:n(a)("weappRelease"),name:"/channel/weapp/code"},null,8,["label"])]),_:1},8,["modelValue"]),t("div",Z,[t("p",ee,l(n(a)("weappInlet")),1),s(V,null,{default:e(()=>[s(y,{span:20},{default:e(()=>[s(S,{direction:"vertical"},{default:e(()=>[s(x,null,f({title:e(()=>[t("p",te,l(n(a)("weappAttestation")),1)]),description:e(()=>[t("span",se,l(n(a)("weappAttest")),1),t("div",ne,[s(v,{type:"primary",onClick:c[1]||(c[1]=u=>k("https://mp.weixin.qq.com/"))},{default:e(()=>[g(l(n(a)("clickAccess")),1)]),_:1})])]),_:2},[o.value>1?{name:"icon",fn:e(()=>[s(_,{size:"25px",class:"text-color"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:o.value==1?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 1")]),key:"2"}]),1024),s(x,null,f({title:e(()=>[t("p",ae,l(n(a)("weappSetting")),1)]),description:e(()=>[t("span",le,l(n(a)("emplace")),1),t("div",oe,[s(v,{type:"primary",plain:"",onClick:c[2]||(c[2]=u=>n(m).push("/channel/weapp/config"))},{default:e(()=>[g(l(n(a)("weappSettingBtn")),1)]),_:1})])]),_:2},[o.value>2?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:o.value==2?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 2")]),key:"2"}]),1024),s(x,null,f({title:e(()=>[t("p",ce,l(n(a)("uploadVersion")),1)]),description:e(()=>[t("span",pe,l(n(a)("releaseCourse")),1),t("div",ie,[s(v,{type:"primary",plain:"",onClick:c[3]||(c[3]=u=>n(m).push("/channel/weapp/code"))},{default:e(()=>[g(l(n(a)("weappRelease")),1)]),_:1})])]),_:2},[o.value>3?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:o.value==3?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 3")]),key:"2"}]),1024),s(x,null,f({title:e(()=>[t("p",de,l(n(a)("completeAccess")),1)]),description:e(()=>[t("span",re,l(n(a)("releaseCourse")),1),_e]),_:2},[o.value>4?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:o.value==4?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 4")]),key:"2"}]),1024)]),_:1})]),_:1}),s(y,{span:4},{default:e(()=>[t("div",xe,[s(j,{class:"w-[180px] h-[180px]",src:d.value?n(z)(d.value):""},{error:e(()=>[t("div",ue,[t("span",null,l(d.value?n(a)("fileErr"):n(a)("emptyQrCode")),1)])]),_:1},8,["src"])]),t("div",fe,[t("p",me,l(n(a)("clickAccess2")),1)])]),_:1})]),_:1})])])}}});const Ve=K(he,[["__scopeId","data-v-b86a443b"]]);export{Ve as default}; diff --git a/niucloud/public/admin/assets/access-43abb09a.js b/niucloud/public/admin/assets/access-43abb09a.js new file mode 100644 index 0000000..67329b5 --- /dev/null +++ b/niucloud/public/admin/assets/access-43abb09a.js @@ -0,0 +1 @@ +import{d as V,f as I,r as v,v as B,a0 as N,h as z,c as T,a as t,t as n,u as o,N as a,e as s,w as e,aH as u,i as w,R as F,aA as R,aB as q,a1 as $,E as D,aj as H,ak as M,al as P,V as Q,am as U,p as G,g as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as K}from"./aliapp-2e18109a.js";import{_ as L}from"./_plugin-vue_export-helper-c27b6911.js";const O=i=>(G("data-v-7d9a3fa3"),i=i(),J(),i),W={class:"w-full p-5 bg-white"},X={class:"flex justify-between items-center mb-[20px]"},Y={class:"text-[20px]"},Z={class:"p-[20px]"},ee={class:"text-[16px] mb-[20px]"},te={class:"text-[14px] text-[#303133] font-[700]"},se={class:"text-[#999]"},oe={class:"mt-[20px] mb-[40px] h-[32px]"},ae={class:"text-[14px] text-[#303133] font-[700]"},ne={class:"text-[#999]"},le={class:"mt-[20px] mb-[40px] h-[32px]"},ce={class:"text-[14px] text-[#303133] font-[700]"},pe={class:"text-[#999]"},ie=O(()=>t("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),de={class:"text-[14px] text-[#303133] font-[700]"},re={class:"text-[#999]"},_e={class:"flex justify-center"},xe={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},ue={class:"mt-[22px] text-center"},fe={class:"text-[14px] text-[#303133] font-[700]"},me=V({__name:"access",setup(i){const h=I(),f=v("/channel/aliapp"),l=v(2),d=v("");B(async()=>{const p=await K();d.value=p.data.qr_code});const y=p=>{window.open(p,"_blank")},k=p=>{h.push({path:f.value})};return(p,c)=>{const C=R,E=q,r=N("CircleCheckFilled"),_=$,b=D,x=H,S=M,g=P,j=Q,A=U;return z(),T("div",W,[t("div",X,[t("span",Y,n(o(a)("title")),1)]),s(E,{modelValue:f.value,"onUpdate:modelValue":c[0]||(c[0]=m=>f.value=m),class:"demo-tabs",onTabChange:k},{default:e(()=>[s(C,{label:o(a)("weappAccessFlow"),name:"/channel/aliapp"},null,8,["label"])]),_:1},8,["modelValue"]),t("div",Z,[t("p",ee,n(o(a)("weappInlet")),1),s(A,null,{default:e(()=>[s(g,{span:20},{default:e(()=>[s(S,{direction:"vertical"},{default:e(()=>[s(x,null,u({title:e(()=>[t("p",te,n(o(a)("weappAttestation")),1)]),description:e(()=>[t("span",se,n(o(a)("weappAttest")),1),t("div",oe,[s(b,{type:"primary",onClick:c[1]||(c[1]=m=>y("https://open.alipay.com/develop/manage"))},{default:e(()=>[w(n(o(a)("clickAccess")),1)]),_:1})])]),_:2},[l.value>1?{name:"icon",fn:e(()=>[s(_,{size:"25px",class:"text-color"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:l.value==1?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 1")]),key:"2"}]),1024),s(x,null,u({title:e(()=>[t("p",ae,n(o(a)("weappSetting")),1)]),description:e(()=>[t("span",ne,n(o(a)("emplace")),1),t("div",le,[s(b,{type:"primary",plain:"",onClick:c[2]||(c[2]=m=>o(h).push("/channel/aliapp/config"))},{default:e(()=>[w(n(o(a)("weappSettingBtn")),1)]),_:1})])]),_:2},[l.value>2?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:l.value==2?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 2")]),key:"2"}]),1024),s(x,null,u({title:e(()=>[t("p",ce,n(o(a)("uploadVersion")),1)]),description:e(()=>[t("span",pe,n(o(a)("releaseCourse")),1),ie]),_:2},[l.value>3?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:l.value==3?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 3")]),key:"2"}]),1024),s(x,null,u({title:e(()=>[t("p",de,n(o(a)("completeAccess")),1)]),description:e(()=>[t("span",re,n(o(a)("releaseCourse")),1)]),_:2},[l.value>4?{name:"icon",fn:e(()=>[s(_,{size:"25px"},{default:e(()=>[s(r)]),_:1})]),key:"0"}:l.value==4?{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[t("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[t("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 4")]),key:"2"}]),1024)]),_:1})]),_:1}),s(g,{span:4},{default:e(()=>[t("div",_e,[s(j,{class:"w-[180px] h-[180px]",src:d.value?o(F)(d.value):""},{error:e(()=>[t("div",xe,[t("span",null,n(d.value?o(a)("fileErr"):o(a)("emptyQrCode")),1)])]),_:1},8,["src"])]),t("div",ue,[t("p",fe,n(o(a)("clickAccess2")),1)])]),_:1})]),_:1})])])}}});const je=L(me,[["__scopeId","data-v-7d9a3fa3"]]);export{je as default}; diff --git a/niucloud/public/admin/assets/access-9dd0f5e5.js b/niucloud/public/admin/assets/access-9dd0f5e5.js new file mode 100644 index 0000000..8920b1d --- /dev/null +++ b/niucloud/public/admin/assets/access-9dd0f5e5.js @@ -0,0 +1 @@ +import{d as V,f as S,r as v,v as B,a0 as I,h as N,c as T,a as e,t as o,u as n,N as a,e as s,w as t,aH as b,i as w,R as q,aA as z,aB as F,a1 as R,E as $,aj as M,ak as D,al as H,V as P,am as Q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as U}from"./wechat-688fa021.js";import{_ as W}from"./_plugin-vue_export-helper-c27b6911.js";const G={class:"w-full p-5 bg-white"},J={class:"flex justify-between items-center mb-[20px]"},K={class:"text-[20px]"},L={class:"p-[20px]"},O={class:"text-[16px] mb-[20px]"},X={class:"text-[14px] text-[#303133] font-[700]"},Y={class:"text-[#999]"},Z={class:"mt-[20px] mb-[40px] h-[32px]"},ee={class:"text-[14px] text-[#303133] font-[700]"},te={class:"text-[#999]"},se={class:"mt-[20px] mb-[40px] h-[32px]"},ne={class:"text-[14px] text-[#303133] font-[700]"},ae={class:"text-[#999]"},oe={class:"mt-[20px] mb-[40px] h-[32px]"},le={class:"flex justify-center"},ce={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},ie={class:"mt-[22px] text-center"},pe={class:"text-[14px] text-[#303133] font-[700]"},de=V({__name:"access",setup(re){const r=S(),_=v("/channel/wechat"),c=v(2),p=v("");B(async()=>{const i=await U();p.value=i.data.qr_code});const y=i=>{window.open(i,"_blank")},k=i=>{r.push({path:_.value})};return(i,l)=>{const u=z,C=F,x=I("CircleCheckFilled"),m=R,f=$,h=M,E=D,g=H,A=P,j=Q;return N(),T("div",G,[e("div",J,[e("span",K,o(n(a)("title")),1)]),s(C,{modelValue:_.value,"onUpdate:modelValue":l[0]||(l[0]=d=>_.value=d),class:"demo-tabs",onTabChange:k},{default:t(()=>[s(u,{label:n(a)("wechatAccessFlow"),name:"/channel/wechat"},null,8,["label"]),s(u,{label:n(a)("customMenu"),name:"/channel/wechat/menu"},null,8,["label"]),s(u,{label:n(a)("wechatTemplate"),name:"/channel/wechat/message"},null,8,["label"])]),_:1},8,["modelValue"]),e("div",L,[e("p",O,o(n(a)("wechatInlet")),1),s(j,null,{default:t(()=>[s(g,{span:20},{default:t(()=>[s(E,{direction:"vertical"},{default:t(()=>[s(h,null,b({title:t(()=>[e("p",X,o(n(a)("wechatAttestation")),1)]),description:t(()=>[e("span",Y,o(n(a)("wechatAttestation1")),1),e("div",Z,[s(f,{type:"primary",onClick:l[1]||(l[1]=d=>y("https://mp.weixin.qq.com/"))},{default:t(()=>[w(o(n(a)("clickAccess")),1)]),_:1})])]),_:2},[c.value>1?{name:"icon",fn:t(()=>[s(m,{size:"25px",class:"text-color"},{default:t(()=>[s(x)]),_:1})]),key:"0"}:c.value==1?{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[e("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 1")]),key:"2"}]),1024),s(h,null,b({title:t(()=>[e("p",ee,o(n(a)("wechatSetting")),1)]),description:t(()=>[e("span",te,o(n(a)("wechatSetting1")),1),e("div",se,[s(f,{type:"primary",plain:"",onClick:l[2]||(l[2]=d=>n(r).push("/channel/wechat/config"))},{default:t(()=>[w(o(n(a)("settingInfo")),1)]),_:1})])]),_:2},[c.value>2?{name:"icon",fn:t(()=>[s(m,{size:"25px"},{default:t(()=>[s(x)]),_:1})]),key:"0"}:c.value==2?{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[e("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 2")]),key:"2"}]),1024),s(h,null,b({title:t(()=>[e("p",ne,o(n(a)("wechatAccess")),1)]),description:t(()=>[e("span",ae,o(n(a)("wechatAccess")),1),e("div",oe,[s(f,{type:"primary",plain:"",onClick:l[3]||(l[3]=d=>n(r).push("/channel/wechat/course"))},{default:t(()=>[w(o(n(a)("releaseCourse")),1)]),_:1})])]),_:2},[c.value>3?{name:"icon",fn:t(()=>[s(m,{size:"25px"},{default:t(()=>[s(x)]),_:1})]),key:"0"}:c.value==3?{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[e("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:t(()=>[e("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 3")]),key:"2"}]),1024)]),_:1})]),_:1}),s(g,{span:4},{default:t(()=>[e("div",le,[s(A,{class:"w-[180px] h-[180px]",src:p.value?n(q)(p.value):""},{error:t(()=>[e("div",ce,[e("span",null,o(p.value?n(a)("fileErr"):n(a)("emptyQrCode")),1)])]),_:1},8,["src"])]),e("div",ie,[e("p",pe,o(n(a)("clickAccess2")),1)])]),_:1})]),_:1})])])}}});const ye=W(de,[["__scopeId","data-v-c7bd979c"]]);export{ye as default}; diff --git a/niucloud/public/admin/assets/access-e89dd1bf.css b/niucloud/public/admin/assets/access-e89dd1bf.css new file mode 100644 index 0000000..7704ff5 --- /dev/null +++ b/niucloud/public/admin/assets/access-e89dd1bf.css @@ -0,0 +1 @@ +.progress-point[data-v-b86a443b]{flex-grow:1;list-style:none}.border-color[data-v-b86a443b]{border-color:var(--el-color-primary)}.bg-color[data-v-b86a443b]{background-color:var(--el-color-primary)}.text-color[data-v-b86a443b]{color:var(--el-color-primary)}.bg-color1[data-v-b86a443b]{background-color:var(--el-color-info-light-8)}[data-v-b86a443b] .el-tabs__item:hover{border-bottom:2px solid var(--el-color-primary)}[data-v-b86a443b] .el-tabs__item{padding:0}[data-v-b86a443b] .el-tabs__item+.el-tabs__item{margin-right:20px;margin-left:20px}[data-v-b86a443b] .el-tabs--top .el-tabs__active-bar{display:none}[data-v-b86a443b] .el-tabs--top .el-tabs__item.is-active{border-bottom:2px solid var(--el-color-primary)}[data-v-b86a443b] .el-tabs--top .el-tabs__item.is-top:nth-child(2){margin-right:20px}[data-v-b86a443b] .el-step.is-vertical .el-step__icon.is-icon{padding:8px 0;height:40px;background-color:#fff}[data-v-b86a443b] .el-step__title{height:40px;line-height:40px!important} diff --git a/niucloud/public/admin/assets/access-f5210fd9.css b/niucloud/public/admin/assets/access-f5210fd9.css new file mode 100644 index 0000000..90edcbb --- /dev/null +++ b/niucloud/public/admin/assets/access-f5210fd9.css @@ -0,0 +1 @@ +.progress-point[data-v-c7bd979c]{flex-grow:1;list-style:none}.border-color[data-v-c7bd979c]{border-color:var(--el-color-primary)}.bg-color[data-v-c7bd979c]{background-color:var(--el-color-primary)}.text-color[data-v-c7bd979c]{color:var(--el-color-primary)}.bg-color1[data-v-c7bd979c]{background-color:var(--el-color-info-light-8)}[data-v-c7bd979c] .el-tabs__item:hover{border-bottom:2px solid var(--el-color-primary)}[data-v-c7bd979c] .el-tabs__item{padding:0}[data-v-c7bd979c] .el-tabs__item+.el-tabs__item{margin-right:20px;margin-left:20px}[data-v-c7bd979c] .el-tabs--top .el-tabs__active-bar{display:none}[data-v-c7bd979c] .el-tabs--top .el-tabs__item.is-active{border-bottom:2px solid var(--el-color-primary)}[data-v-c7bd979c] .el-tabs--top .el-tabs__item.is-top:nth-child(2){margin-right:20px}[data-v-c7bd979c] .el-step.is-vertical .el-step__icon.is-icon{padding:8px 0;height:40px;background-color:#fff}[data-v-c7bd979c] .el-step__title{height:40px;line-height:40px!important} diff --git a/niucloud/public/admin/assets/account-d5bd2c1c.js b/niucloud/public/admin/assets/account-d5bd2c1c.js new file mode 100644 index 0000000..6690ed3 --- /dev/null +++ b/niucloud/public/admin/assets/account-d5bd2c1c.js @@ -0,0 +1 @@ +import{d as M,O as j,n as H,r as v,h as p,c as h,e,w as t,a as o,t as n,u as a,N as l,F as O,G as q,I as D,i as y,y as G,B as E,cH as W,al as X,am as J,_ as K,aq as Q,aC as Z,X as ee,W as te,cI as ae,E as le,Y as oe,af as ne,ah as se,a3 as ie,a7 as re,$ as de}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{d as ce,f as _e,h as ue}from"./site-3951be3a.js";const pe={class:"main-container"},me={class:"flex justify-between items-center"},fe={class:"text-[20px]"},ve={class:"statistic-card"},he={class:"statistic-footer"},ye={class:"footer-item text-[14px] text-[#666]"},be={class:"statistic-card"},ge={class:"statistic-footer"},we={class:"footer-item text-[14px] text-[#666]"},xe={class:"statistic-card"},ke={class:"statistic-footer"},Te={class:"footer-item text-[14px] text-[#666]"},Ee={class:"mt-[10px]"},Ve={class:"mt-[16px] flex justify-end"},Ce={class:"input-width"},Ne={class:"input-width"},Pe={class:"input-width"},De={class:"input-width"},Fe={key:0},Ae={class:"input-width"},Se={class:"input-width"},Re={class:"input-width"},ze={class:"input-width"},Be={class:"input-width"},Le={key:1},Ue={class:"input-width"},$e={class:"input-width"},Ye={class:"input-width"},Ie={class:"input-width"},Me={key:2},je={class:"input-width"},He={class:"input-width"},Oe={class:"input-width"},qe={class:"input-width"},Ge={class:"dialog-footer"},bt=M({__name:"account",setup(We){const F=j().meta.title,s=H({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{site_id:"",type:"",money:"",trade_no:"",create_time:""}}),V=v(),m=(_=1)=>{s.loading=!0,s.page=_,ce({page:s.page,limit:s.limit,...s.searchParam}).then(i=>{s.loading=!1,s.data=i.data.data,s.total=i.data.total}).catch(()=>{s.loading=!1})};m();const A=_=>{_&&(_.resetFields(),m())},C=v([]);(()=>{_e().then(_=>{C.value=_.data})})();const b=v(!1),r=v({trade_no:"",type_name:"",money:0,create_time:"",type:"",pay_info:{transfer_no:"",transfer_time:"",transfer_type:"",money:0,remark:"",out_trade_no:"",create_time:"",fail_reason:"",body:""}}),S=_=>{b.value=!0,r.value=_},u=v({pay:0,refund:0,transfer:0});return(async()=>{u.value=await(await ue()).data})(),(_,i)=>{const w=W,x=X,R=J,k=K,N=Q,z=Z,d=ee,B=te,L=ae,g=le,P=oe,f=ne,U=se,$=ie,Y=re,I=de;return p(),h("div",pe,[e(k,{class:"box-card !border-none",shadow:"never"},{default:t(()=>[o("div",me,[o("span",fe,n(a(F)),1)]),e(k,{class:"box-card !border-none base-bg !px-[35px]",shadow:"never"},{default:t(()=>[e(R,{class:"flex"},{default:t(()=>[e(x,{span:8,class:"min-w-[100px]"},{default:t(()=>[o("div",ve,[e(w,{value:u.value.pay?u.value.pay.toFixed(2):"0.00"},null,8,["value"]),o("div",he,[o("div",ye,[o("span",null,n(a(l)("totalPay")),1)])])])]),_:1}),e(x,{span:8,class:"min-w-[100px]"},{default:t(()=>[o("div",be,[e(w,{value:u.value.refund?u.value.refund.toFixed(2):"0.00"},null,8,["value"]),o("div",ge,[o("div",we,[o("span",null,n(a(l)("totalRefund")),1)])])])]),_:1}),e(x,{span:8,class:"min-w-[100px]"},{default:t(()=>[o("div",xe,[e(w,{value:u.value.transfer?u.value.transfer.toFixed(2):"0.00"},null,8,["value"]),o("div",ke,[o("div",Te,[o("span",null,n(a(l)("totalTransfer")),1)])])])]),_:1})]),_:1})]),_:1}),e(k,{class:"box-card !border-none my-[10px] table-search-wrap",shadow:"never"},{default:t(()=>[e(P,{inline:!0,model:s.searchParam,ref_key:"searchFormRef",ref:V},{default:t(()=>[e(d,{label:a(l)("type"),class:"items-center",prop:"type"},{default:t(()=>[e(z,{modelValue:s.searchParam.type,"onUpdate:modelValue":i[0]||(i[0]=c=>s.searchParam.type=c),class:"m-2",placeholder:a(l)("accountType")},{default:t(()=>[e(N,{label:a(l)("all"),value:""},null,8,["label"]),(p(!0),h(O,null,q(C.value,(c,T)=>(p(),D(N,{key:T,label:c,value:T},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),e(d,{label:a(l)("tradeNo"),prop:"trade_no"},{default:t(()=>[e(B,{modelValue:s.searchParam.trade_no,"onUpdate:modelValue":i[1]||(i[1]=c=>s.searchParam.trade_no=c),placeholder:a(l)("tradeNoPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),e(d,{label:a(l)("createTime"),prop:"create_time"},{default:t(()=>[e(L,{modelValue:s.searchParam.create_time,"onUpdate:modelValue":i[2]||(i[2]=c=>s.searchParam.create_time=c),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":a(l)("startDate"),"end-placeholder":a(l)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),e(d,null,{default:t(()=>[e(g,{type:"primary",onClick:i[3]||(i[3]=c=>m())},{default:t(()=>[y(n(a(l)("search")),1)]),_:1}),e(g,{onClick:i[4]||(i[4]=c=>A(V.value))},{default:t(()=>[y(n(a(l)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),o("div",Ee,[G((p(),D(U,{data:s.data,size:"large"},{empty:t(()=>[o("span",null,n(s.loading?"":a(l)("emptyData")),1)]),default:t(()=>[e(f,{prop:"trade_no",label:a(l)("tradeNo"),"min-width":"120"},null,8,["label"]),e(f,{prop:"type_name",label:a(l)("type"),"min-width":"120"},null,8,["label"]),e(f,{prop:"money",label:a(l)("money"),"min-width":"120",align:"right"},null,8,["label"]),e(f,{label:a(l)("createTime"),"min-width":"150",align:"center"},{default:t(({row:c})=>[y(n(c.create_time||""),1)]),_:1},8,["label"]),e(f,{label:a(l)("operation"),align:"right",fixed:"right","min-width":"120"},{default:t(({row:c})=>[e(g,{type:"primary",link:"",onClick:T=>S(c)},{default:t(()=>[y(n(a(l)("detail")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[I,s.loading]]),o("div",Ve,[e($,{"current-page":s.page,"onUpdate:current-page":i[5]||(i[5]=c=>s.page=c),"page-size":s.limit,"onUpdate:page-size":i[6]||(i[6]=c=>s.limit=c),layout:"total, sizes, prev, pager, next, jumper",total:s.total,onSizeChange:i[7]||(i[7]=c=>m()),onCurrentChange:m},null,8,["current-page","page-size","total"])])])]),_:1}),e(Y,{modelValue:b.value,"onUpdate:modelValue":i[9]||(i[9]=c=>b.value=c),title:a(l)("accountDetail"),width:"550px","destroy-on-close":!0},{footer:t(()=>[o("span",Ge,[e(g,{type:"primary",onClick:i[8]||(i[8]=c=>b.value=!1)},{default:t(()=>[y(n(a(l)("confirm")),1)]),_:1})])]),default:t(()=>[e(P,{model:r.value,"label-width":"110px",ref:"formRef",class:"page-form"},{default:t(()=>[e(d,{label:a(l)("tradeNo")},{default:t(()=>[o("div",Ce,n(r.value.trade_no),1)]),_:1},8,["label"]),e(d,{label:a(l)("type")},{default:t(()=>[o("div",Ne,n(r.value.type_name),1)]),_:1},8,["label"]),e(d,{label:a(l)("money")},{default:t(()=>[o("div",Pe,n(r.value.money),1)]),_:1},8,["label"]),e(d,{label:a(l)("createTime")},{default:t(()=>[o("div",De,n(r.value.create_time),1)]),_:1},8,["label"]),r.value.type=="transfer"?(p(),h("div",Fe,[e(d,{label:a(l)("transferNo")},{default:t(()=>[o("div",Ae,n(r.value.pay_info.transfer_no),1)]),_:1},8,["label"]),e(d,{label:a(l)("transferTime")},{default:t(()=>[o("div",Se,n(r.value.pay_info.transfer_time),1)]),_:1},8,["label"]),e(d,{label:a(l)("transferType")},{default:t(()=>[o("div",Re,n(r.value.pay_info.transfer_type),1)]),_:1},8,["label"]),e(d,{label:a(l)("transferMoney")},{default:t(()=>[o("div",ze,n(r.value.pay_info.money),1)]),_:1},8,["label"]),e(d,{label:a(l)("transferRemark")},{default:t(()=>[o("div",Be,n(r.value.pay_info.remark),1)]),_:1},8,["label"])])):E("",!0),r.value.type=="refund"?(p(),h("div",Le,[e(d,{label:a(l)("outTradeNo")},{default:t(()=>[o("div",Ue,n(r.value.pay_info.out_trade_no),1)]),_:1},8,["label"]),e(d,{label:a(l)("createTime")},{default:t(()=>[o("div",$e,n(r.value.pay_info.create_time),1)]),_:1},8,["label"]),e(d,{label:a(l)("refundMoney")},{default:t(()=>[o("div",Ye,n(r.value.pay_info.money),1)]),_:1},8,["label"]),e(d,{label:a(l)("failReason")},{default:t(()=>[o("div",Ie,n(r.value.pay_info.fail_reason),1)]),_:1},8,["label"])])):E("",!0),r.value.type=="pay"?(p(),h("div",Me,[e(d,{label:a(l)("outTradeNo")},{default:t(()=>[o("div",je,n(r.value.pay_info.out_trade_no),1)]),_:1},8,["label"]),e(d,{label:a(l)("createTime")},{default:t(()=>[o("div",He,n(r.value.pay_info.create_time),1)]),_:1},8,["label"]),e(d,{label:a(l)("money")},{default:t(()=>[o("div",Oe,n(r.value.pay_info.money),1)]),_:1},8,["label"]),e(d,{label:a(l)("body")},{default:t(()=>[o("div",qe,n(r.value.pay_info.body),1)]),_:1},8,["label"])])):E("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{bt as default}; diff --git a/niucloud/public/admin/assets/add-member-c8060e4a.js b/niucloud/public/admin/assets/add-member-c8060e4a.js new file mode 100644 index 0000000..ec20e9b --- /dev/null +++ b/niucloud/public/admin/assets/add-member-c8060e4a.js @@ -0,0 +1 @@ +import{_ as o}from"./add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./member-ff972216.js";export{o as default}; diff --git a/niucloud/public/admin/assets/add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js b/niucloud/public/admin/assets/add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js new file mode 100644 index 0000000..72e98d8 --- /dev/null +++ b/niucloud/public/admin/assets/add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js @@ -0,0 +1 @@ +import{d as M,r as b,n as $,q as B,N as l,h,I as v,w as m,a as I,e as s,i as V,t as y,u as r,y as H,W as R,X as j,Y as L,E as O,a7 as T,$ as z}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{p as A,q as S,r as W}from"./member-ff972216.js";const X={class:"dialog-footer"},re=M({__name:"add-member",emits:["complete"],setup(Y,{expose:N,emit:P}){const p=b(!1),i=b(!1);let u="",c="";const f={member_id:"",nickname:"",member_no:"",init_member_no:"",mobile:"",password:"",password_copy:""},o=$({...f}),_=b(),D=B(()=>({member_no:[{required:!0,message:l("memberNoPlaceholder"),trigger:"blur"},{validator:C,trigger:"blur"}],mobile:[{required:!0,message:l("mobilePlaceholder"),trigger:"blur"},{validator:E,trigger:"blur"}],password:[{required:!0,message:l("passwordPlaceholder"),trigger:"blur"}],password_copy:[{required:!0,message:l("passwordPlaceholder"),trigger:"blur"},{validator:x,trigger:"blur"}]})),E=(d,e,a)=>{e&&!/^1[3-9]\d{9}$/.test(e)?a(new Error(l("mobileHint"))):a()},x=(d,e,a)=>{e!=o.password?a(l("doubleCipherHint")):a()},C=(d,e,a)=>{e&&!/^[0-9a-zA-Z]*$/g.test(e)?a(new Error(l("memberNoHint"))):a()},k=async()=>{await S().then(d=>{c=d.data}).catch(()=>{})},q=async d=>{if(i.value||!d)return;const e=W;await d.validate(async a=>{a&&(i.value=!0,e(o).then(w=>{i.value=!1,p.value=!1,P("complete")}).catch(()=>{i.value=!1}))})};return N({showDialog:p,setFormData:async(d=null)=>{if(i.value=!0,Object.assign(o,f),u=l("addMember"),d){u=l("updateMember");const e=await(await A(d.member_id)).data;e&&Object.keys(o).forEach(a=>{e[a]!=null&&(o[a]=e[a])})}else await k(),o.member_no=c,o.init_member_no=c;i.value=!1}}),(d,e)=>{const a=R,n=j,w=L,g=O,U=T,F=z;return h(),v(U,{modelValue:p.value,"onUpdate:modelValue":e[7]||(e[7]=t=>p.value=t),title:r(u),width:"500px","destroy-on-close":!0},{footer:m(()=>[I("span",X,[s(g,{onClick:e[5]||(e[5]=t=>p.value=!1)},{default:m(()=>[V(y(r(l)("cancel")),1)]),_:1}),s(g,{type:"primary",loading:i.value,onClick:e[6]||(e[6]=t=>q(_.value))},{default:m(()=>[V(y(r(l)("confirm")),1)]),_:1},8,["loading"])])]),default:m(()=>[H((h(),v(w,{model:o,"label-width":"90px",ref_key:"formRef",ref:_,rules:r(D),class:"page-form"},{default:m(()=>[s(n,{label:r(l)("memberNo"),prop:"member_no"},{default:m(()=>[s(a,{modelValue:o.member_no,"onUpdate:modelValue":e[0]||(e[0]=t=>o.member_no=t),clearable:"",maxlength:"20",placeholder:r(l)("memberNoPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(n,{label:r(l)("mobile"),prop:"mobile"},{default:m(()=>[s(a,{modelValue:o.mobile,"onUpdate:modelValue":e[1]||(e[1]=t=>o.mobile=t),clearable:"",placeholder:r(l)("mobilePlaceholder"),type:"number",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(n,{label:r(l)("nickname")},{default:m(()=>[s(a,{modelValue:o.nickname,"onUpdate:modelValue":e[2]||(e[2]=t=>o.nickname=t),clearable:"",placeholder:r(l)("nickNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(n,{label:r(l)("password"),prop:"password"},{default:m(()=>[s(a,{modelValue:o.password,"onUpdate:modelValue":e[3]||(e[3]=t=>o.password=t),type:"password",placeholder:r(l)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(n,{label:r(l)("passwordCopy"),prop:"password_copy"},{default:m(()=>[s(a,{modelValue:o.password_copy,"onUpdate:modelValue":e[4]||(e[4]=t=>o.password_copy=t),type:"password",placeholder:r(l)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[F,i.value]])]),_:1},8,["modelValue","title"])}}});export{re as _}; diff --git a/niucloud/public/admin/assets/add-table-97ae6d7f.js b/niucloud/public/admin/assets/add-table-97ae6d7f.js new file mode 100644 index 0000000..cfe8086 --- /dev/null +++ b/niucloud/public/admin/assets/add-table-97ae6d7f.js @@ -0,0 +1 @@ +import{_ as o}from"./add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./tools-8d764897.js";export{o as default}; diff --git a/niucloud/public/admin/assets/add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js b/niucloud/public/admin/assets/add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js new file mode 100644 index 0000000..33a0867 --- /dev/null +++ b/niucloud/public/admin/assets/add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js @@ -0,0 +1 @@ +import{d as T,f as E,r as u,n as L,q as k,h as p,I as _,w as o,a as h,y as x,u as t,t as b,N as n,e as d,i as B,af as z,W as q,E as F,ah as I,a7 as P,$ as U}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{j as $,k as j}from"./tools-8d764897.js";const G={class:""},te=T({__name:"add-table",setup(R,{expose:f}){const g=E(),m=u(!1),s=u(""),e=L({loading:!0,data:[],searchParam:{table_name:"",table_content:""}}),v=k(()=>e.data.filter(a=>!s.value||a.Name.toLowerCase().includes(s.value.toLowerCase())||a.Comment.toLowerCase().includes(s.value.toLowerCase()))),c=()=>{e.loading=!0,$().then(a=>{e.loading=!1,e.data=a.data}).catch(()=>{e.loading=!1})};c();const w=a=>{const l=a.Name;e.loading=!0,j({table_name:l}).then(i=>{e.loading=!1,m.value=!1,g.push({path:"/tools/code/edit",query:{id:i.data.id}})}).catch(()=>{e.loading=!1})};return f({showDialog:m,setFormData:async(a=null)=>{c()}}),(a,l)=>{const i=z,C=q,y=F,D=I,V=P,N=U;return p(),_(V,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=r=>m.value=r),title:t(n)("addCode"),width:"800px","destroy-on-close":!0},{default:o(()=>[h("div",G,[x((p(),_(D,{data:t(v),size:"large",height:"400"},{empty:o(()=>[h("span",null,b(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[d(i,{prop:"Name",label:t(n)("tableName"),"min-width":"150"},null,8,["label"]),d(i,{prop:"Comment",label:t(n)("tableComment"),"min-width":"120"},null,8,["label"]),d(i,{align:"right","min-width":"150"},{header:o(()=>[d(C,{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=r=>s.value=r),size:"small",placeholder:t(n)("searchPlaceholder")},null,8,["modelValue","placeholder"])]),default:o(r=>[d(y,{size:"small",type:"primary",onClick:W=>w(r.row)},{default:o(()=>[B(b(t(n)("addBtn")),1)]),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"])),[[N,e.loading]])])]),_:1},8,["modelValue","title"])}}});export{te as _}; diff --git a/niucloud/public/admin/assets/addon-b90f5c24.js b/niucloud/public/admin/assets/addon-b90f5c24.js new file mode 100644 index 0000000..3743171 --- /dev/null +++ b/niucloud/public/admin/assets/addon-b90f5c24.js @@ -0,0 +1 @@ +import{aJ as t}from"./index-6010b07e.js";function o(n){return t.get("addon/local",n,{showSuccessMessage:!0})}function a(n){return t.post(`addon/install/${n.addon}`,n)}function s(n){return t.post(`addon/cloudinstall/${n.addon}`,n,{timeout:60*1e3})}function l(n){return t.post(`addon/uninstall/${n.addon}`,n,{showSuccessMessage:!0})}function d(n){return t.get(`addon/install/check/${n}`,{timeout:30*1e3})}function u(){return t.get("addon/installtask")}function c(n){return t.get(`addon/cloudinstall/${n}`)}function i(n){return t.get(`addon/uninstall/check/${n}`,{timeout:30*1e3})}function r(n){return t.put(`addon/install/cancel/${n}`,{},{showErrorMessage:!1})}function g(){return t.get("addon/list/install")}export{o as a,u as b,s as c,c as d,i as e,r as f,g,a as i,d as p,l as u}; diff --git a/niucloud/public/admin/assets/addon_develop-a78473b3.png b/niucloud/public/admin/assets/addon_develop-a78473b3.png new file mode 100644 index 0000000..88511a0 Binary files /dev/null and b/niucloud/public/admin/assets/addon_develop-a78473b3.png differ diff --git a/niucloud/public/admin/assets/adminlogin-114f8d07.js b/niucloud/public/admin/assets/adminlogin-114f8d07.js new file mode 100644 index 0000000..7b93873 --- /dev/null +++ b/niucloud/public/admin/assets/adminlogin-114f8d07.js @@ -0,0 +1 @@ +import{d as N,O as B,r as g,n as C,h,c as E,a as r,t as p,u as s,y,I as D,w as m,e as o,N as i,i as I,aK as F,X as O,_ as S,Y as U,E as j,$ as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as L}from"./index-4718d422.js";import"./el-form-item-4ed993c7.js";/* empty css */import{J as R,K as T}from"./sys-0f76aff3.js";import{_ as K}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */const $={class:"main-container"},k={class:"flex ml-[18px] justify-between items-center mt-[20px]"},X={class:"text-[20px]"},Y={class:"panel-title !text-sm"},q={class:"form-tip"},z={class:"panel-title !text-sm"},A={class:"form-tip"},G={class:"fixed-footer-wrap"},H={class:"fixed-footer"},M=N({__name:"adminlogin",setup(P){const b=B().meta.title,_=g(!0),d=g(),e=C({is_captcha:0,is_site_captcha:0,bg:"",site_bg:""});(async(c=0)=>{const t=await(await R()).data;Object.keys(e).forEach(a=>{["is_captcha","is_site_captcha"].includes(a)?e[a]=Boolean(Number(t[a])):e[a]=t[a]}),_.value=!1})();const v=async c=>{_.value||!c||await c.validate(t=>{if(t){const a=JSON.parse(JSON.stringify(e));Object.keys(a).forEach(l=>{["is_captcha","is_site_captcha"].includes(l)&&(a[l]=Number(a[l]))}),T(a).then(()=>{_.value=!1}).catch(()=>{_.value=!1})}})};return(c,t)=>{const a=F,l=O,u=L,f=S,x=U,V=j,w=J;return h(),E("div",$,[r("div",k,[r("span",X,p(s(b)),1)]),y((h(),D(x,{model:e,"label-width":"150px",ref_key:"ruleFormRef",ref:d,class:"page-form"},{default:m(()=>[o(f,{class:"box-card !border-none",shadow:"never"},{default:m(()=>[r("h3",Y,p(s(i)("admin")),1),o(l,{label:s(i)("isCaptcha"),prop:"formData.is_auth_register"},{default:m(()=>[o(a,{modelValue:e.is_captcha,"onUpdate:modelValue":t[0]||(t[0]=n=>e.is_captcha=n)},null,8,["modelValue"])]),_:1},8,["label"]),o(l,{label:s(i)("bgImg")},{default:m(()=>[o(u,{modelValue:e.bg,"onUpdate:modelValue":t[1]||(t[1]=n=>e.bg=n)},null,8,["modelValue"]),r("div",q,p(s(i)("adminBgImgTip")),1)]),_:1},8,["label"])]),_:1}),o(f,{class:"box-card !border-none mt-4",shadow:"never"},{default:m(()=>[r("h3",z,p(s(i)("site")),1),o(l,{label:s(i)("isCaptcha"),prop:"formData.is_auth_register"},{default:m(()=>[o(a,{modelValue:e.is_site_captcha,"onUpdate:modelValue":t[2]||(t[2]=n=>e.is_site_captcha=n)},null,8,["modelValue"])]),_:1},8,["label"]),o(l,{label:s(i)("bgImg")},{default:m(()=>[o(u,{modelValue:e.site_bg,"onUpdate:modelValue":t[3]||(t[3]=n=>e.site_bg=n)},null,8,["modelValue"]),r("div",A,p(s(i)("siteBgImgTip")),1)]),_:1},8,["label"])]),_:1})]),_:1},8,["model"])),[[w,_.value]]),r("div",G,[r("div",H,[o(V,{type:"primary",onClick:t[4]||(t[4]=n=>v(d.value))},{default:m(()=>[I(p(s(i)("save")),1)]),_:1})])])])}}});const Ft=K(M,[["__scopeId","data-v-d96a1745"]]);export{Ft as default}; diff --git a/niucloud/public/admin/assets/adminlogin-b9e9f486.css b/niucloud/public/admin/assets/adminlogin-b9e9f486.css new file mode 100644 index 0000000..3460fd5 --- /dev/null +++ b/niucloud/public/admin/assets/adminlogin-b9e9f486.css @@ -0,0 +1 @@ +.el-form .form-tip[data-v-d96a1745]{line-height:1.5;margin-top:5px} diff --git a/niucloud/public/admin/assets/advertising-0adcc0db.js b/niucloud/public/admin/assets/advertising-0adcc0db.js new file mode 100644 index 0000000..4ad3a0a --- /dev/null +++ b/niucloud/public/admin/assets/advertising-0adcc0db.js @@ -0,0 +1 @@ +import{d as z,O as N,n as U,r as f,h as g,c as P,e as a,w as l,a as u,t as s,u as e,i as d,N as o,y as R,I as v,R as j,a5 as I,E as L,X as V,Y as S,_ as G,af as M,aG as O,ah as X,a3 as Y,$ as q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{_ as H,g as J,d as K}from"./advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js";import{_ as Q}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css */import"./index-4718d422.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";const W={class:"main-container"},Z={class:"flex justify-between items-center"},ee={class:"text-lg"},te={class:"mt-[10px]"},ae={class:"mt-[16px] flex justify-end"},oe=z({__name:"advertising",setup(ie){const y=N().meta.title;let t=U({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{}});const h=f();f([]);const p=(n=1)=>{t.loading=!0,t.page=n,J({page:t.page,limit:t.limit,...t.searchParam}).then(r=>{t.loading=!1,t.data=r.data.data,t.total=r.data.total}).catch(()=>{t.loading=!1})};p();const c=f(null),x=()=>{c.value.setFormData(),c.value.showDialog=!0},k=n=>{c.value.setFormData(n),c.value.showDialog=!0},C=n=>{I.confirm(o("advertisingDeleteTips"),o("warning"),{confirmButtonText:o("confirm"),cancelButtonText:o("cancel"),type:"warning"}).then(()=>{K(n).then(()=>{p()}).catch(()=>{})})},E=n=>{n&&(n.resetFields(),p())};return(n,r)=>{const _=L,D=V,F=S,b=G,m=M,w=O,B=X,T=Y,A=q;return g(),P("div",W,[a(b,{class:"box-card !border-none",shadow:"never"},{default:l(()=>[u("div",Z,[u("span",ee,s(e(y)),1),a(_,{type:"primary",onClick:x},{default:l(()=>[d(s(e(o)("addAdvertising")),1)]),_:1})]),a(b,{class:"box-card !border-none my-[10px] table-search-wrap",shadow:"never"},{default:l(()=>[a(F,{inline:!0,model:e(t).searchParam,ref_key:"searchFormRef",ref:h},{default:l(()=>[a(D,null,{default:l(()=>[a(_,{type:"primary",onClick:r[0]||(r[0]=i=>p())},{default:l(()=>[d(s(e(o)("search")),1)]),_:1}),a(_,{onClick:r[1]||(r[1]=i=>E(h.value))},{default:l(()=>[d(s(e(o)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),u("div",te,[R((g(),v(B,{data:e(t).data,size:"large"},{empty:l(()=>[u("span",null,s(e(t).loading?"":e(o)("emptyData")),1)]),default:l(()=>[a(m,{prop:"id",label:e(o)("id"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{label:e(o)("imgUrl"),width:"100",align:"left"},{default:l(({row:i})=>[i.img_url?(g(),v(w,{key:0,src:e(j)(i.img_url)},null,8,["src"])):(g(),v(w,{key:1,icon:"UserFilled"}))]),_:1},8,["label"]),a(m,{prop:"skip_url",label:e(o)("skipUrl"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{prop:"sort",label:e(o)("sort"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{label:e(o)("createTime"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:l(({row:i})=>[d(s(i.create_time||""),1)]),_:1},8,["label"]),a(m,{label:e(o)("operation"),fixed:"right","min-width":"120"},{default:l(({row:i})=>[a(_,{type:"primary",link:"",onClick:$=>k(i)},{default:l(()=>[d(s(e(o)("edit")),1)]),_:2},1032,["onClick"]),a(_,{type:"primary",link:"",onClick:$=>C(i.id)},{default:l(()=>[d(s(e(o)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[A,e(t).loading]]),u("div",ae,[a(T,{"current-page":e(t).page,"onUpdate:current-page":r[2]||(r[2]=i=>e(t).page=i),"page-size":e(t).limit,"onUpdate:page-size":r[3]||(r[3]=i=>e(t).limit=i),layout:"total, sizes, prev, pager, next, jumper",total:e(t).total,onSizeChange:r[4]||(r[4]=i=>p()),onCurrentChange:p},null,8,["current-page","page-size","total"])])]),a(H,{ref_key:"editAdvertisingDialog",ref:c,onComplete:p},null,512)]),_:1})])}}});const Ve=Q(oe,[["__scopeId","data-v-9c6394dc"]]);export{Ve as default}; diff --git a/niucloud/public/admin/assets/advertising-5a72d9ea.css b/niucloud/public/admin/assets/advertising-5a72d9ea.css new file mode 100644 index 0000000..4c3320c --- /dev/null +++ b/niucloud/public/admin/assets/advertising-5a72d9ea.css @@ -0,0 +1 @@ +@charset "UTF-8";.multi-hidden[data-v-9c6394dc]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical} diff --git a/niucloud/public/admin/assets/advertising-edit-0906e988.js b/niucloud/public/admin/assets/advertising-edit-0906e988.js new file mode 100644 index 0000000..20efebe --- /dev/null +++ b/niucloud/public/admin/assets/advertising-edit-0906e988.js @@ -0,0 +1 @@ +import{_ as o}from"./advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./index-4718d422.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";export{o as default}; diff --git a/niucloud/public/admin/assets/advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js b/niucloud/public/admin/assets/advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js new file mode 100644 index 0000000..1ba4832 --- /dev/null +++ b/niucloud/public/admin/assets/advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js @@ -0,0 +1 @@ +import{aJ as g,d as B,r as _,n as F,q as I,N as l,h as w,I as b,w as u,a as N,e as d,aQ as y,i as V,t as E,u as r,y as P,X as C,W as R,aE as S,Y as j,E as L,a7 as O,$ as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as Q}from"./index-4718d422.js";function se(a){return g.get("hygl/advertising",{params:a})}function T(a){return g.get(`hygl/advertising/${a}`)}function W(a){return g.post("hygl/advertising",a,{showErrorMessage:!0,showSuccessMessage:!0})}function X(a){return g.put(`hygl/advertising/${a.id}`,a,{showErrorMessage:!0,showSuccessMessage:!0})}function oe(a){return g.delete(`hygl/advertising/${a}`,{showErrorMessage:!0,showSuccessMessage:!0})}const Y={class:"dialog-footer"},ie=B({__name:"advertising-edit",emits:["complete"],setup(a,{expose:k,emit:U}){let i=_(!1);const n=_(!1),f={id:"",img_url:"",skip_url:"",sort:"1"},t=F({...f}),v=_(),D=I(()=>({img_url:[{required:!0,message:l("imgUrlPlaceholder"),trigger:"blur"}],skip_url:[{required:!0,message:l("skipUrlPlaceholder"),trigger:"blur"}],sort:[{required:!0,message:l("sortPlaceholder"),trigger:"blur"},{validator:(m,e,s)=>{e&&!/^\d{1,9999}$/.test(e)?s(new Error(l("generateBetween"))):s()}}]})),A=async m=>{if(n.value||!m)return;let e=t.id?X:W;await m.validate(async s=>{s&&(n.value=!0,e(t).then(c=>{n.value=!1,i.value=!1,U("complete")}).catch(c=>{n.value=!1}))})};return k({showDialog:i,setFormData:async(m=null)=>{if(Object.assign(t,f),n.value=!0,m){const e=await(await T(m.id)).data;e&&Object.keys(t).forEach(s=>{e[s]!=null&&(t[s]=e[s])})}n.value=!1}}),(m,e)=>{const s=Q,p=C,c=R,x=S,M=j,h=L,$=O,q=J;return w(),b($,{modelValue:r(i),"onUpdate:modelValue":e[5]||(e[5]=o=>y(i)?i.value=o:i=o),title:t.id?r(l)("updateAdvertising"):r(l)("addAdvertising"),width:"50%",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:u(()=>[N("span",Y,[d(h,{onClick:e[3]||(e[3]=o=>y(i)?i.value=!1:i=!1)},{default:u(()=>[V(E(r(l)("cancel")),1)]),_:1}),d(h,{type:"primary",loading:n.value,onClick:e[4]||(e[4]=o=>A(v.value))},{default:u(()=>[V(E(r(l)("confirm")),1)]),_:1},8,["loading"])])]),default:u(()=>[P((w(),b(M,{model:t,"label-width":"120px",ref_key:"formRef",ref:v,rules:r(D),class:"page-form"},{default:u(()=>[d(p,{label:r(l)("imgUrl")},{default:u(()=>[d(s,{modelValue:t.img_url,"onUpdate:modelValue":e[0]||(e[0]=o=>t.img_url=o)},null,8,["modelValue"])]),_:1},8,["label"]),d(p,{label:r(l)("skipUrl")},{default:u(()=>[d(c,{modelValue:t.skip_url,"onUpdate:modelValue":e[1]||(e[1]=o=>t.skip_url=o),clearable:"",placeholder:r(l)("skipUrlPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d(p,{label:r(l)("sort"),prop:"sort"},{default:u(()=>[d(x,{modelValue:t.sort,"onUpdate:modelValue":e[2]||(e[2]=o=>t.sort=o),clearable:"",placeholder:r(l)("sortPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[q,n.value]])]),_:1},8,["modelValue","title"])}}});export{ie as _,oe as d,se as g}; diff --git a/niucloud/public/admin/assets/advertising.advertising-5d50448a.js b/niucloud/public/admin/assets/advertising.advertising-5d50448a.js new file mode 100644 index 0000000..0eae45e --- /dev/null +++ b/niucloud/public/admin/assets/advertising.advertising-5d50448a.js @@ -0,0 +1 @@ +const e="序号",t="站点",s="请输入站点",i="广告图",r="请输入广告图",d="跳转链接",o="请输入跳转链接",l="排序",a="请输入排序",c="创建时间",n="添加广告管理",g="编辑广告管理",p="确定要删除该数据吗?",h="请选择开始时间",v="请选择结束时间",P={id:e,siteId:t,siteIdPlaceholder:s,imgUrl:i,imgUrlPlaceholder:r,skipUrl:d,skipUrlPlaceholder:o,sort:l,sortPlaceholder:a,createTime:c,addAdvertising:n,updateAdvertising:g,advertisingDeleteTips:p,startDate:h,endDate:v};export{n as addAdvertising,p as advertisingDeleteTips,c as createTime,P as default,v as endDate,e as id,i as imgUrl,r as imgUrlPlaceholder,t as siteId,s as siteIdPlaceholder,d as skipUrl,o as skipUrlPlaceholder,l as sort,a as sortPlaceholder,h as startDate,g as updateAdvertising}; diff --git a/niucloud/public/admin/assets/agreement-ea493a94.js b/niucloud/public/admin/assets/agreement-ea493a94.js new file mode 100644 index 0000000..cdfd712 --- /dev/null +++ b/niucloud/public/admin/assets/agreement-ea493a94.js @@ -0,0 +1 @@ +import{d as v,O as y,n as x,f as k,h as m,c as E,e as a,w as o,a as i,t as r,u as t,y as C,I as N,N as n,i as p,af as B,E as L,ah as T,_ as D,$ as A}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{L as V}from"./sys-0f76aff3.js";const $={class:"main-container"},j={class:"flex justify-between items-center"},O={class:"text-[20px]"},R={class:"mt-[20px]"},Y=v({__name:"agreement",setup(z){const _=y().meta.title,e=x({loading:!0,data:[]});(()=>{e.loading=!0,e.data=[],V().then(l=>{Object.keys(l.data).forEach(d=>e.data.push(l.data[d])),e.loading=!1}).catch(()=>{e.loading=!1})})();const u=k(),g=l=>{u.push(`/setting/agreement/edit?key=${l.agreement_key}`)};return(l,d)=>{const s=B,h=L,f=T,b=D,w=A;return m(),E("div",$,[a(b,{class:"box-card !border-none",shadow:"never"},{default:o(()=>[i("div",j,[i("span",O,r(t(_)),1)]),i("div",R,[C((m(),N(f,{data:e.data,size:"large"},{empty:o(()=>[i("span",null,r(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[a(s,{prop:"type_name",label:t(n)("typeName"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{prop:"title",label:t(n)("title"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{label:t(n)("updateTime"),"min-width":"180",align:"center"},{default:o(({row:c})=>[p(r(c.update_time||""),1)]),_:1},8,["label"]),a(s,{label:t(n)("operation"),align:"right",fixed:"right",width:"100"},{default:o(({row:c})=>[a(h,{type:"primary",link:"",onClick:q=>g(c)},{default:o(()=>[p(r(t(n)("config")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[w,e.loading]])])]),_:1})])}}});export{Y as default}; diff --git a/niucloud/public/admin/assets/agreement_edit-e46000a5.js b/niucloud/public/admin/assets/agreement_edit-e46000a5.js new file mode 100644 index 0000000..64acfb0 --- /dev/null +++ b/niucloud/public/admin/assets/agreement_edit-e46000a5.js @@ -0,0 +1 @@ +import{d as R,O as $,f as I,r as y,cM as P,n as S,q as T,N as r,h as k,c as j,a as l,u as o,t as p,y as q,I as O,w as m,e as s,i as x,W as U,X as A,Y as M,_ as z,E as L,$ as W}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as X}from"./index.vue_vue_type_script_setup_true_lang-114a4ac2.js";import"./el-form-item-4ed993c7.js";/* empty css */import{M as Y,N as G}from"./sys-0f76aff3.js";import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./_plugin-vue_export-helper-c27b6911.js";const H={class:"main-container"},J={class:"detail-head"},K=l("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),Q={class:"ml-[1px]"},Z=l("span",{class:"adorn"},"|",-1),ee={class:"right"},te={class:"fixed-footer-wrap"},oe={class:"fixed-footer"},Se=R({__name:"agreement_edit",setup(ae){const u=$(),_=I(),f=u.query.key||"",i=y(!1),V=P(),w=u.meta.title,g={agreement_key:"",content:"",title:"",agreement_key_name:""},t=S({...g});i.value=!0,f&&(async(c="")=>{Object.assign(t,g);const e=await(await Y(c)).data;Object.keys(t).forEach(a=>{e[a]!=null&&(t[a]=e[a])}),i.value=!1})(f);const v=y(),E=T(()=>({title:[{required:!0,message:r("titlePlaceholder"),trigger:"blur"}]})),C=async c=>{i.value||!c||await c.validate(async e=>{if(e){i.value=!0;const a=t;a.key=t.agreement_key,G(a).then(d=>{i.value=!1,b()}).catch(()=>{i.value=!1})}})},b=()=>{V.removeTab(u.path),_.push({path:"/setting/agreement"})};return(c,e)=>{const a=U,d=A,D=X,N=M,B=z,h=L,F=W;return k(),j("div",H,[l("div",J,[l("div",{class:"left",onClick:e[0]||(e[0]=n=>o(_).push({path:"/setting/agreement"}))},[K,l("span",Q,p(o(r)("returnToPreviousPage")),1)]),Z,l("span",ee,p(o(w)),1)]),q((k(),O(B,{class:"box-card !border-none",shadow:"never"},{default:m(()=>[s(N,{model:t,"label-width":"90px",ref_key:"formRef",ref:v,rules:o(E),class:"page-form"},{default:m(()=>[s(d,{label:o(r)("type")},{default:m(()=>[s(a,{modelValue:t.agreement_key_name,"onUpdate:modelValue":e[1]||(e[1]=n=>t.agreement_key_name=n),readonly:"",class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),s(d,{label:o(r)("title"),prop:"title"},{default:m(()=>[s(a,{modelValue:t.title,"onUpdate:modelValue":e[2]||(e[2]=n=>t.title=n),clearable:"",placeholder:o(r)("titlePlaceholder"),class:"input-width",maxlength:"20"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(d,{label:o(r)("content")},{default:m(()=>[s(D,{modelValue:t.content,"onUpdate:modelValue":e[3]||(e[3]=n=>t.content=n)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1})),[[F,i.value]]),l("div",te,[l("div",oe,[s(h,{type:"primary",onClick:e[4]||(e[4]=n=>C(v.value))},{default:m(()=>[x(p(o(r)("save")),1)]),_:1}),s(h,{onClick:e[5]||(e[5]=n=>b())},{default:m(()=>[x(p(o(r)("cancel")),1)]),_:1})])])])}}});export{Se as default}; diff --git a/niucloud/public/admin/assets/aliapp-2e18109a.js b/niucloud/public/admin/assets/aliapp-2e18109a.js new file mode 100644 index 0000000..1555813 --- /dev/null +++ b/niucloud/public/admin/assets/aliapp-2e18109a.js @@ -0,0 +1 @@ +import{aJ as t}from"./index-6010b07e.js";function e(){return t.get("aliapp/config")}function p(a){return t.put("aliapp/config",a,{showSuccessMessage:!0})}function n(){return t.get("aliapp/static")}export{n as a,e as g,p as s}; diff --git a/niucloud/public/admin/assets/alipay1-029c00a2.png b/niucloud/public/admin/assets/alipay1-029c00a2.png new file mode 100644 index 0000000..df5e7da Binary files /dev/null and b/niucloud/public/admin/assets/alipay1-029c00a2.png differ diff --git a/niucloud/public/admin/assets/alipay2-f74219b9.png b/niucloud/public/admin/assets/alipay2-f74219b9.png new file mode 100644 index 0000000..107a67f Binary files /dev/null and b/niucloud/public/admin/assets/alipay2-f74219b9.png differ diff --git a/niucloud/public/admin/assets/alipay3-0895ce6e.png b/niucloud/public/admin/assets/alipay3-0895ce6e.png new file mode 100644 index 0000000..3675532 Binary files /dev/null and b/niucloud/public/admin/assets/alipay3-0895ce6e.png differ diff --git a/niucloud/public/admin/assets/alipay4-92fef352.png b/niucloud/public/admin/assets/alipay4-92fef352.png new file mode 100644 index 0000000..b546fc4 Binary files /dev/null and b/niucloud/public/admin/assets/alipay4-92fef352.png differ diff --git a/niucloud/public/admin/assets/alipay4_1-ad9b08e3.jpg b/niucloud/public/admin/assets/alipay4_1-ad9b08e3.jpg new file mode 100644 index 0000000..66e4d2c Binary files /dev/null and b/niucloud/public/admin/assets/alipay4_1-ad9b08e3.jpg differ diff --git a/niucloud/public/admin/assets/alipay4_2-cbaa820b.jpg b/niucloud/public/admin/assets/alipay4_2-cbaa820b.jpg new file mode 100644 index 0000000..30e1728 Binary files /dev/null and b/niucloud/public/admin/assets/alipay4_2-cbaa820b.jpg differ diff --git a/niucloud/public/admin/assets/alipay4_3-4a213289.jpg b/niucloud/public/admin/assets/alipay4_3-4a213289.jpg new file mode 100644 index 0000000..bf161fb Binary files /dev/null and b/niucloud/public/admin/assets/alipay4_3-4a213289.jpg differ diff --git a/niucloud/public/admin/assets/alipay4_4-7924cbdd.jpg b/niucloud/public/admin/assets/alipay4_4-7924cbdd.jpg new file mode 100644 index 0000000..448afc5 Binary files /dev/null and b/niucloud/public/admin/assets/alipay4_4-7924cbdd.jpg differ diff --git a/niucloud/public/admin/assets/alipay5-6dba1989.png b/niucloud/public/admin/assets/alipay5-6dba1989.png new file mode 100644 index 0000000..6eb3043 Binary files /dev/null and b/niucloud/public/admin/assets/alipay5-6dba1989.png differ diff --git a/niucloud/public/admin/assets/alipay6-f1e18995.png b/niucloud/public/admin/assets/alipay6-f1e18995.png new file mode 100644 index 0000000..6526b2c Binary files /dev/null and b/niucloud/public/admin/assets/alipay6-f1e18995.png differ diff --git a/niucloud/public/admin/assets/alipay7-c805d7c0.png b/niucloud/public/admin/assets/alipay7-c805d7c0.png new file mode 100644 index 0000000..8ae1d9f Binary files /dev/null and b/niucloud/public/admin/assets/alipay7-c805d7c0.png differ diff --git a/niucloud/public/admin/assets/alipay8-3097d150.png b/niucloud/public/admin/assets/alipay8-3097d150.png new file mode 100644 index 0000000..caba3e3 Binary files /dev/null and b/niucloud/public/admin/assets/alipay8-3097d150.png differ diff --git a/niucloud/public/admin/assets/app.authorize-dfacda68.js b/niucloud/public/admin/assets/app.authorize-dfacda68.js new file mode 100644 index 0000000..2dd3a8e --- /dev/null +++ b/niucloud/public/admin/assets/app.authorize-dfacda68.js @@ -0,0 +1 @@ +const e="授权主体",t="授权域名",o="授权联系人",a="授权码",c="授权秘钥",s="授权时间",d="到期时间",u="授权应用",n="应用标识",p="授权域名不匹配",h="请输入授权码",i="请输入授权秘钥",r="重新绑定",l="还没有授权?去购买",m="授权码和授权秘钥可在Niucloud官网我的授权 授权详情中查看",A="是否要进行云编译该操作可能会影响到正在访问的客户是否要继续操作?",T={companyName:e,siteAddress:t,contactName:o,authCode:a,authSecret:c,createTime:s,expireTime:d,authApp:u,authAppKey:n,siteAddressTips:p,authCodePlaceholder:h,authSecretPlaceholder:i,updateCode:r,notHaveAuth:l,authInfoTips:m,cloudBuildTips:A};export{u as authApp,n as authAppKey,a as authCode,h as authCodePlaceholder,m as authInfoTips,c as authSecret,i as authSecretPlaceholder,A as cloudBuildTips,e as companyName,o as contactName,s as createTime,T as default,d as expireTime,l as notHaveAuth,t as siteAddress,p as siteAddressTips,r as updateCode}; diff --git a/niucloud/public/admin/assets/app.index-6de21f8a.js b/niucloud/public/admin/assets/app.index-6de21f8a.js new file mode 100644 index 0000000..f9cbd7a --- /dev/null +++ b/niucloud/public/admin/assets/app.index-6de21f8a.js @@ -0,0 +1 @@ +const a="应用名称",p="请输入应用名称",e="暂无应用",t={appName:a,appNamePlaceholder:p,emptyAppData:e};export{a as appName,p as appNamePlaceholder,t as default,e as emptyAppData}; diff --git a/niucloud/public/admin/assets/app.store-318dd53b.js b/niucloud/public/admin/assets/app.store-318dd53b.js new file mode 100644 index 0000000..69072f5 --- /dev/null +++ b/niucloud/public/admin/assets/app.store-318dd53b.js @@ -0,0 +1 @@ +const t="搜索应用名称",n="应用名/版本信息",o="简介",s="类型",e="应用",l="插件",a="暂无应用",c="安装",i="卸载",d="已安装",p="未安装",r="版本",u="名称",h="简介",T="插件信息",g="作者",m="详情",I="插件安装",b="目录读写权限",C="路径",P="要求",k="可读",v="可写",f="包管理工具",w="名称",A="插件安装成功",L="环境检查",x="安装进度",D="安装完成",S="插件管理",y="官方市场",N="安装任务尚未完成,关闭将取消安装任务,是否要继续关闭?",M="官方市场正在开发中!",j="任务队列未启动 请在服务端源码部署目录打开终端执行 php think queue:listen",B="冲突文件",E="启动进程",F="开启",H="下载",R="插件版本",U="版本号",V="发布时间",q="已购买",_="安装后需手动更新插件引用的依赖和编译各个端口的前端源码",z="本地安装",G="一键云安装",J="云安装可实现一键安装,安装后无需手动更新依赖和编译前端源码",K="有插件正在安装中请等待安装完成之后再进行其他操作,点击查看",O="安装进度",Q="下载中",W="云安装需先绑定授权码,如果已有授权请先进行绑定,没有授权可到niucloud官网购买云服务之后再进行操作",X="绑定授权",Y="去niucloud官网",Z="暂无任何应用,马上去",$="官方应用市场",tt="逛逛",nt="授权域名不匹配",ot="请输入授权码",st="请输入授权秘钥",et="重新绑定",lt="还没有授权?去购买",at="授权码和授权秘钥可在Niucloud官网我的授权 授权详情中查看",ct="插件卸载",it="应用标识",dt="标识指开发应用或插件的文件夹名称",pt={search:t,appName:n,introduction:o,type:s,app:e,addon:l,noPlug:a,install:c,unload:i,installLabel:d,uninstalledLabel:p,version:r,title:u,desc:h,plugDetail:T,author:g,detail:m,addonInstall:I,dirPermission:b,path:C,demand:P,readable:k,write:v,packageManageTool:f,name:w,addonInstallSuccess:A,envCheck:L,installProgress:x,installComplete:D,localAppText:S,marketAppText:y,installShowDialogCloseTips:N,marketDevelopMessage:M,jobError:j,conflictFiles:B,process:E,open:F,down:H,addonVersion:R,versionCode:U,createTime:V,buyLabel:q,installTips:_,localInstall:z,cloudInstall:G,cloudInstallTips:J,installingTips:K,installPercent:O,downloading:Q,authTips:W,toBind:X,toNiucloud:Y,descriptionLeft:Z,link:$,descriptionRight:tt,"installed-empty":"暂未安装任何应用,请先安装",siteAddressTips:nt,authCodePlaceholder:ot,authSecretPlaceholder:st,updateCode:et,notHaveAuth:lt,authInfoTips:at,addonUninstall:ct,appIdentification:it,tipText:dt};export{l as addon,I as addonInstall,A as addonInstallSuccess,ct as addonUninstall,R as addonVersion,e as app,it as appIdentification,n as appName,ot as authCodePlaceholder,at as authInfoTips,st as authSecretPlaceholder,W as authTips,g as author,q as buyLabel,G as cloudInstall,J as cloudInstallTips,B as conflictFiles,V as createTime,pt as default,P as demand,h as desc,Z as descriptionLeft,tt as descriptionRight,m as detail,b as dirPermission,H as down,Q as downloading,L as envCheck,c as install,D as installComplete,d as installLabel,O as installPercent,x as installProgress,N as installShowDialogCloseTips,_ as installTips,K as installingTips,o as introduction,j as jobError,$ as link,S as localAppText,z as localInstall,y as marketAppText,M as marketDevelopMessage,w as name,a as noPlug,lt as notHaveAuth,F as open,f as packageManageTool,C as path,T as plugDetail,E as process,k as readable,t as search,nt as siteAddressTips,dt as tipText,u as title,X as toBind,Y as toNiucloud,s as type,p as uninstalledLabel,i as unload,et as updateCode,r as version,U as versionCode,v as write}; diff --git a/niucloud/public/admin/assets/app_auth-d99146b6.png b/niucloud/public/admin/assets/app_auth-d99146b6.png new file mode 100644 index 0000000..1de3c21 Binary files /dev/null and b/niucloud/public/admin/assets/app_auth-d99146b6.png differ diff --git a/niucloud/public/admin/assets/app_manage-033810a7.js b/niucloud/public/admin/assets/app_manage-033810a7.js new file mode 100644 index 0000000..6de91fe --- /dev/null +++ b/niucloud/public/admin/assets/app_manage-033810a7.js @@ -0,0 +1 @@ +import{d as C,f as V,K as N,r as y,n as R,y as M,h as l,c as x,a as e,t as s,u as a,N as o,e as u,w as i,F as D,G as T,R as U,I as j,i as $,B as k,ac as w,U as L,E as z,V as G,ag as K,ai as O,aa as P,$ as q,p as H,g as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as Q}from"./apply_empty-cdca3e85.js";import{g as W}from"./addon-b90f5c24.js";import{_ as X}from"./_plugin-vue_export-helper-c27b6911.js";const Y=""+new URL("app_store_default-c0531792.png",import.meta.url).href,f=d=>(H("data-v-1052d0e0"),d=d(),J(),d),Z={class:"box-border pt-[68px] px-[76px] overview-top"},ee={key:0},te={class:"flex justify-between items-center"},se={class:"font-[600] text-[26px] text-[#222] leading-[37px]"},ae={class:"font-[500] text-[14px] text-[#222] leading-[20px] mt-[12px]"},oe=f(()=>e("div",{class:"mr-[9px] text-[#3F3F3F] iconfont iconxiazai01"},null,-1)),ne={class:"font-[600] text-[14px] text-[#222] leading-[20px]"},pe={class:"flex flex-wrap mt-[40px]"},ie=["onClick"],ce={class:"bg-[#F7FAFB] py-[18px] px-[24px] flex items-center app-item-head"},re=f(()=>e("div",{class:"image-slot"},[e("img",{class:"w-[40px] h-[40px] rounded-[8px]",src:Y})],-1)),le={class:"py-[18px] px-[24px]"},de={class:"font-[600] leading-[1] text-[14px] text-[#222]"},_e={class:"text-[13px] text-[#6D7278] leading-[18px] mt-[6px] truncate"},xe=f(()=>e("div",{class:"w-[230px] mx-auto"},[e("img",{src:Q,class:"max-w-full",alt:""})],-1)),ue={class:"flex items-center"},me=C({__name:"app_manage",setup(d){const v=V(),m=N(),n=y(!0),_=R({appList:[]}),h=y({});(()=>{n.value=!0,W().then(p=>{Object.values(p.data).forEach((t,c)=>{t.type=="app"&&_.appList.push(t)}),m.routers.forEach((t,c)=>{t.children&&t.children.length?(t.name=w(t.children),h.value[t.meta.app]=w(t.children)):h.value[t.meta.app]=t.name}),n.value=!1}).catch(()=>{n.value=!1})})();const b=p=>{L.set({key:"menuAppStorage",data:p.key}),L.set({key:"plugMenuTypeStorage",data:""});const t=m.appMenuList;t.push(p.key),m.setAppMenuList(t);const c=h.value[p.key];v.push({name:c})},g=()=>{v.push("/app_manage/app_store")};return(p,t)=>{const c=z,F=G,E=K,S=O,I=P,A=q;return M((l(),x("div",Z,[_.appList&&!n.value?(l(),x("div",ee,[e("div",te,[e("div",null,[e("div",se,s(a(o)("app")),1),e("div",ae,s(a(o)("versionInfo"))+" "+s(a(o)("currentVersion")),1)]),u(c,{onClick:g,class:"px-[15px]"},{default:i(()=>[oe,e("span",ne,s(a(o)("appStore")),1)]),_:1})]),e("div",pe,[(l(!0),x(D,null,T(_.appList,(r,B)=>(l(),x("div",{key:B,class:"app-item w-[280px] box-border !bg-[#fff] rounded-[6px] cursor-pointer mr-[20px] mb-[20px] overflow-hidden",onClick:fe=>b(r)},[e("div",ce,[u(F,{class:"w-[44px] h-[44px] rounded-[8px]",src:a(U)(r.icon),fit:"contain"},{error:i(()=>[re]),_:2},1032,["src"])]),e("div",le,[e("div",de,s(r.title),1),u(E,{class:"box-item",effect:"light",content:r.desc,placement:"bottom-start"},{default:i(()=>[e("div",_e,s(r.desc),1)]),_:2},1032,["content"])])],8,ie))),128)),!_.appList.length&&!n.value?(l(),j(I,{key:0,class:"mx-auto overview-empty"},{image:i(()=>[xe]),description:i(()=>[e("p",ue,[e("span",null,s(a(o)("descriptionLeft")),1),u(S,{type:"primary",onClick:g,class:"mx-[5px]"},{default:i(()=>[$(s(a(o)("link")),1)]),_:1}),e("span",null,s(a(o)("descriptionRight")),1)])]),_:1})):k("",!0)])])):k("",!0)])),[[A,n.value]])}}});const Be=X(me,[["__scopeId","data-v-1052d0e0"]]);export{Be as default}; diff --git a/niucloud/public/admin/assets/app_manage-a40665b3.css b/niucloud/public/admin/assets/app_manage-a40665b3.css new file mode 100644 index 0000000..1dd6113 --- /dev/null +++ b/niucloud/public/admin/assets/app_manage-a40665b3.css @@ -0,0 +1 @@ +.main-container[data-v-1052d0e0]{background:linear-gradient(180deg,rgba(253,253,253,.24) 0%,#FAFAFA 100%);min-height:calc(100vh - 64px)}.overview-top[data-v-1052d0e0]{background-image:url(./overview-85d8713c.png);background-repeat:no-repeat;background-size:cover;height:calc(100vh - 120px)}.app-item[data-v-1052d0e0]{box-shadow:0 2px 4px #0000002e}.app-item:hover .app-item-head[data-v-1052d0e0]{background-color:#fdf4ef}.overview-empty .el-empty__image{width:auto!important} diff --git a/niucloud/public/admin/assets/app_store_default-c0531792.png b/niucloud/public/admin/assets/app_store_default-c0531792.png new file mode 100644 index 0000000..766eced Binary files /dev/null and b/niucloud/public/admin/assets/app_store_default-c0531792.png differ diff --git a/niucloud/public/admin/assets/apply_empty-3450716b.png b/niucloud/public/admin/assets/apply_empty-3450716b.png new file mode 100644 index 0000000..030b443 Binary files /dev/null and b/niucloud/public/admin/assets/apply_empty-3450716b.png differ diff --git a/niucloud/public/admin/assets/apply_empty-cdca3e85.js b/niucloud/public/admin/assets/apply_empty-cdca3e85.js new file mode 100644 index 0000000..d983e40 --- /dev/null +++ b/niucloud/public/admin/assets/apply_empty-cdca3e85.js @@ -0,0 +1 @@ +const p=""+new URL("apply_empty-3450716b.png",import.meta.url).href;export{p as _}; diff --git a/niucloud/public/admin/assets/attachment-6dd25a64.css b/niucloud/public/admin/assets/attachment-6dd25a64.css new file mode 100644 index 0000000..cd31c50 --- /dev/null +++ b/niucloud/public/admin/assets/attachment-6dd25a64.css @@ -0,0 +1 @@ +.iconfont[data-v-0c690e66]{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-replay[data-v-0c690e66]:before{content:"\e631"}.icon-pip[data-v-0c690e66]:before{content:"\e820"}.icon-loading[data-v-0c690e66]:before{content:"\e62e"}.icon-play[data-v-0c690e66]:before{content:"\e851"}.icon-pause[data-v-0c690e66]:before{content:"\e863"}.icon-screen[data-v-0c690e66]:before{content:"\e88f"}.icon-web-screen[data-v-0c690e66]:before{content:"\e609"}.icon-settings[data-v-0c690e66]:before{content:"\e60c"}.icon-volume-down[data-v-0c690e66]:before{content:"\e60d"}.icon-volume-up[data-v-0c690e66]:before{content:"\e60e"}.icon-volume-mute[data-v-0c690e66]:before{content:"\e60f"}.d-icon[data-v-0c690e66]{display:inline-block;cursor:pointer;overflow:hidden}.d-player-top[data-v-4cb76d59]{position:absolute;font-size:16px;left:0px;top:0;right:0px;color:#fff;display:flex;padding:0 20px;height:60px;background-image:linear-gradient(rgba(0,0,0,.6),transparent);justify-content:space-between}.iconfont[data-v-ac2469ec]{display:inline-block}.d-flex-x[data-v-ac2469ec],.d-flex-y[data-v-ac2469ec],.d-flex-center[data-v-ac2469ec]{display:flex}.d-flex-x[data-v-ac2469ec]{align-items:center}.d-flex-y[data-v-ac2469ec]{justify-content:center}.d-flex-center[data-v-ac2469ec]{justify-content:center;align-items:center}.mr5[data-v-ac2469ec]{margin-right:5px}.mr10[data-v-ac2469ec]{margin-right:10px}.ml5[data-v-ac2469ec]{margin-left:5px}.ml10[data-v-ac2469ec]{margin-left:10px}.d-pointer[data-v-ac2469ec]{cursor:pointer}.d-status[data-v-ac2469ec]{text-align:center;font-size:14px;vertical-align:middle;background:rgba(0,0,0,.8);padding:0 8px;height:30px;border-radius:5px;display:flex;align-items:center;color:#fffffff2}.d-status .d-status-icon[data-v-ac2469ec]{width:24px!important;display:inline-block;margin-right:5px}.d-switch[data-v-385f7870]{position:relative;height:18px;transition:background .2s;width:var(--014e5dc0);background:#757575;border-radius:10px;display:inline-flex;align-items:center;vertical-align:middle}.d-switch .d-switch__input[data-v-385f7870]{position:relative;z-index:1;margin:0;width:100%;height:100%;opacity:0}.d-switch .d-switch_action[data-v-385f7870]{position:absolute;transition:.2s;left:2px;top:2px;z-index:0;height:14px;width:14px;background:#fff;border-radius:50%}.d-switch.is-checked[data-v-385f7870]{background:var(--e4e32852)}.d-switch.is-checked .d-switch_action[data-v-385f7870]{left:100%;background:#fff;margin-left:-18px}@font-face{font-family:iconfont;src:url(data:font/woff2;base64,d09GMgABAAAAAAf8AAsAAAAAD4AAAAesAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHFQGYACENAqQFI0gATYCJAMwCxoABCAFhGcHgRgbMA2jopRwhpH9xYEN7tEpwmIWXYlFbb0abbZI79LiOw8i759JE179cG04wTl4/lv73fdGdx1R7dBpePptO1IS0ROpEcucKY175977I5ZAEaYoB0Q+Sa9AyUuuH/ScmnFzExLIzqhN/27WA9pOSYBUSFMxoWIeqfuqJXeerBhQVrSma0bPHPxEe3/ryvP/O+8/vROmlEQSRRMb+GBOkyUgmdUv+7V8hmli/aG/EQqjplPxhHhyzZqoot6oROqNaqXSKgZrk2NVhFlY/ZvcBwGlU5v65uH5PUwdTjXMG8CGCvxoOVnCYeQmYnMKReR61X3j5QMHvfVHAO926uUnuiIo12AXut4HEbykIr8L6H/aqH1DN1cH6ytwwIDDgUnkzVf9Mi7j0GaVaYnWE2DczO1k+hWpS8cpyCzf5CG/v3tHvNa6IaYQ47zm7FpAEBVKVWcVleX4f16HsmrgftwVUiERBKQaQURqmOSxWwgowe5AqsY+hgAD9hkQCPIqAkW+QWCRBwQO+b0zfkj7zAJ2gT5gJrCcEZcy6q0k3pSWkWHj8nBmZvSUUTb8osN2s7NDvrdXy9Nj4OEpqIEIvRY3HgSKcZQwjtJS3DAytmYBP1FU9L3/95QyIMBkIg04lxMG42lHgjNnKzFOrpIelGoMuImUo5gYJWZmUln8gHHvebdwWjfAxMiUA08YhQPUsgelIOQoXHGTqgkpVLI6d55j9PHwK3FoAKBNZegLJupaYE4OgIPZDEU4VcoVnJw+yCoYJen8nooeZg8xh1dw1+lr7A1GPcBNDk+wU8z0R01PQJedZwEdOML6T/GY+RYOlQNVsVO4MJiynUNHad+DrMMYE6DECxPPp6YsmfmLfp2jszO+HSMX5vo5LbCgYXV9bicOrFDPI+TcNONAwuZOU5CInQB8k9z0KgEz9ZSDFCihUQLabhIWc9NrYIEIVIt5EDeskrA3qt9YDSPcdWDh2noLxHILj1c9ftyZVExBrBQf8ycPXZmJm19yxEd8SYWUnZDiw0f9KkHFyBEnQj4Jcxg16keoLs9e4FUXajyAkA/hOBh1+Jg/Tl5LwCHyShpOUqd85NsS6mQKJi6nUgR+0pNoYU0mxmzmjEZAGzSGurFL12bo2euXuavqeWbuxpUtKbNGQ2iq2mxKa2AdyOXblidgpmGYUnKTwMpEF0wUhCW+Sl/MlhKt0VCRaqbMpInEKxD6pEgh8IGMIZ3sKPbsO/4vhZPlndlsfQomL4051Z+cnFZpte02mX84Q8W1f5S7vYclBFYebq0HtaA4rCgkWDBKvPeaGbmxvnFjdCbI3Zqgv6QTvUUL7L0a5TmVoBTsSRkYStwLSjNLLKTOxQPr9mdUgALwUWxvm3tmT8FIqQ+I/vy5X6tMeE7iu1gRZnVOOLPKskb4PWbpek46J8lysdRZnctd0dXPIVtIdd8P3BB4TlLsQCz/PvQXdA4U+IFAO6tPRJy+kcbtFQmnbWZsp/HBt5RDf6N/299F71a8L1l2XHZ56PjwpMl5c/zm2L74vuE4iUzk6ypzk+373pWIJ+O74jvzg5EPfTfYIJQ3ZXfEednV2RMJQTydXZdZZ5sf/kT5rD/LR//8IYRA7yIxyJ3gO4hMcpcWSq+GXQu8FnYVaAqGXFcy2/8J325tba7MrARhjwNI/0h/srSLqLq+97+wSqPbAeMXczfUk+457lOffTaLYMcchIfgiDVCuOeqGCGCv/VzN25M3YXuk5nY3BWAekcGABlLarWx7FJG+g7amXCWcpWaZn8xiOP1ODp96TF4tnjHdo0tvL/UKaXIpjyuBFNgKXlIeV1KsfP+E7aa7cU7Tg+4X4w657FNCafER/j7IWTtLjju2vlB35b76OphdNX9lsqnaAdZwjBkmd14UtyqdBkVE0P1CLzF7HEvIPN3zSPyXP3S9y7nhMvCc5Zl9s1AdHTIS719PVb38Nacx0bnzXtO9YhVj54Yxd7iDEk3etkq57gf05ckk19/MyKOOSlZAnFV26xDvZQBytrbGblYPVZrz+eiIbVgcUszxV+IP038VPwFSOM9+nE1q2/0OVTdhzPtuA8A8O6xMQtEAACCXfwXYdxOlYz/1C6O4D8pXsl/IKQFVVxL5oIgA7hu3A+of8ma1Hq23rt8sxlJeWINH7gm/VW87WtqfLfUIqiHESmuJC3JjV0Ax6AOMHUdckh2cyWpsqb29qd0KCh5J9CJdON+u+BMKJP1P86EDypYACNaR1ncPjiVc/CiCygdODi4MkHrJymAbU8ERO8ZVOsPjN4ryuLewJn2B17vH0qPNXm8ynYNewY5YcREj2VS1bHgkr3UW0yakpsk+yMam8HKAtePeo+wRlPHDradhEQxi42q2OHlYliWimmjcpTkpkR61fPitB1cqSrYYyCOzIoRRuhVz0hKLe6Ywp/vFko0SpxRRD0qDHsi0qUzAZevgDpi1UoNDiTRakuEiCpiTDIMZVQu5/CjQCV3KYxOXyuHJOJKKzi0VR7tKFZlud1zqt09CyixV65LxYgVJ16CRCmklEpqafAX6pL3+nWmh0vFo6xOBiLnGNS8sThkpUGsxzooHM8xYpGowAF2vK3KpkInUp169CVtdEpQ1RACAAAAAA==) format("woff2")}.iconfont[data-v-b2384226]{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-replay[data-v-b2384226]:before{content:"\e631"}.icon-pip[data-v-b2384226]:before{content:"\e820"}.icon-loading[data-v-b2384226]:before{content:"\e62e"}.icon-play[data-v-b2384226]:before{content:"\e851"}.icon-pause[data-v-b2384226]:before{content:"\e863"}.icon-screen[data-v-b2384226]:before{content:"\e88f"}.icon-web-screen[data-v-b2384226]:before{content:"\e609"}.icon-settings[data-v-b2384226]:before{content:"\e60c"}.icon-volume-down[data-v-b2384226]:before{content:"\e60d"}.icon-volume-up[data-v-b2384226]:before{content:"\e60e"}.icon-volume-mute[data-v-b2384226]:before{content:"\e60f"}html[data-v-b2384226],body[data-v-b2384226],div[data-v-b2384226],span[data-v-b2384226],applet[data-v-b2384226],object[data-v-b2384226],iframe[data-v-b2384226],h1[data-v-b2384226],h2[data-v-b2384226],h3[data-v-b2384226],h4[data-v-b2384226],h5[data-v-b2384226],h6[data-v-b2384226],p[data-v-b2384226],blockquote[data-v-b2384226],pre[data-v-b2384226],a[data-v-b2384226],abbr[data-v-b2384226],acronym[data-v-b2384226],address[data-v-b2384226],big[data-v-b2384226],cite[data-v-b2384226],code[data-v-b2384226],del[data-v-b2384226],dfn[data-v-b2384226],em[data-v-b2384226],img[data-v-b2384226],ins[data-v-b2384226],kbd[data-v-b2384226],q[data-v-b2384226],s[data-v-b2384226],samp[data-v-b2384226],small[data-v-b2384226],strike[data-v-b2384226],strong[data-v-b2384226],sub[data-v-b2384226],sup[data-v-b2384226],tt[data-v-b2384226],var[data-v-b2384226],b[data-v-b2384226],u[data-v-b2384226],i[data-v-b2384226],center[data-v-b2384226],dl[data-v-b2384226],dt[data-v-b2384226],dd[data-v-b2384226],ol[data-v-b2384226],ul[data-v-b2384226],li[data-v-b2384226],fieldset[data-v-b2384226],form[data-v-b2384226],label[data-v-b2384226],legend[data-v-b2384226],table[data-v-b2384226],caption[data-v-b2384226],tbody[data-v-b2384226],tfoot[data-v-b2384226],thead[data-v-b2384226],tr[data-v-b2384226],th[data-v-b2384226],td[data-v-b2384226],article[data-v-b2384226],aside[data-v-b2384226],canvas[data-v-b2384226],details[data-v-b2384226],embed[data-v-b2384226],figure[data-v-b2384226],figcaption[data-v-b2384226],footer[data-v-b2384226],header[data-v-b2384226],hgroup[data-v-b2384226],menu[data-v-b2384226],nav[data-v-b2384226],output[data-v-b2384226],ruby[data-v-b2384226],section[data-v-b2384226],summary[data-v-b2384226],time[data-v-b2384226],mark[data-v-b2384226],audio[data-v-b2384226],video[data-v-b2384226]{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article[data-v-b2384226],aside[data-v-b2384226],details[data-v-b2384226],figcaption[data-v-b2384226],figure[data-v-b2384226],footer[data-v-b2384226],header[data-v-b2384226],hgroup[data-v-b2384226],menu[data-v-b2384226],nav[data-v-b2384226],section[data-v-b2384226]{display:block}body[data-v-b2384226]{line-height:1}ol[data-v-b2384226],ul[data-v-b2384226]{list-style:none}blockquote[data-v-b2384226],q[data-v-b2384226]{quotes:none}blockquote[data-v-b2384226]:before,blockquote[data-v-b2384226]:after,q[data-v-b2384226]:before,q[data-v-b2384226]:after{content:"";content:none}table[data-v-b2384226]{border-collapse:collapse;border-spacing:0}textarea[data-v-b2384226]{font-family:inherit}.iconfont[data-v-b2384226]{display:inline-block}.d-flex-x[data-v-b2384226],.d-flex-y[data-v-b2384226],.d-flex-center[data-v-b2384226]{display:flex}.d-flex-x[data-v-b2384226]{align-items:center}.d-flex-y[data-v-b2384226]{justify-content:center}.d-flex-center[data-v-b2384226]{justify-content:center;align-items:center}.mr5[data-v-b2384226]{margin-right:5px}.mr10[data-v-b2384226]{margin-right:10px}.ml5[data-v-b2384226]{margin-left:5px}.ml10[data-v-b2384226]{margin-left:10px}.d-pointer[data-v-b2384226]{cursor:pointer}.rotating[data-v-b2384226]{animation:rotating-b2384226 2s linear infinite}@keyframes rotating-b2384226{to{-webkit-transform:rotate(360deg)}}.d-fade-in-enter-active[data-v-b2384226],.d-fade-in-leave-active[data-v-b2384226]{transition:.5s}.d-fade-in-enter-from[data-v-b2384226],.d-fade-in-leave-to[data-v-b2384226]{opacity:0}.d-scale-out-enter-active[data-v-b2384226],.d-scale-out-leave-active[data-v-b2384226]{transition:.3s}.d-scale-out-leave-to[data-v-b2384226]{transform:scale(1.3);opacity:0}.rotateHover[data-v-b2384226]{transition:.2s}.rotateHover[data-v-b2384226]:hover{transform:rotate(90deg)}.f50[data-v-b2384226]{font-size:50px}.f24[data-v-b2384226]{font-size:24px}.d-loading[data-v-b2384226]{position:absolute;left:0;right:0;bottom:0px;top:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);z-index:2;color:#efefef;text-align:center;font-size:13px}.d-slider[data-v-5a794390]{position:relative}.d-slider .d-slider__runway[data-v-5a794390]{width:100%;height:var(--5242b67b);background-color:#333;position:relative;cursor:pointer;vertical-align:middle}.d-slider .d-slider__runway .d-slider__cursor[data-v-5a794390],.d-slider .d-slider__runway .d-slider__preload[data-v-5a794390],.d-slider .d-slider__runway .d-slider__bar[data-v-5a794390]{position:absolute;top:0;left:0;height:100%}.d-slider .d-slider__runway .d-slider__cursor[data-v-5a794390]{display:none;z-index:1;width:1px;background:#fff;pointer-events:none}.d-slider .d-slider__runway .d-slider__cursor .d-slider__tips[data-v-5a794390]{pointer-events:none;color:#fff;position:absolute;white-space:nowrap;z-index:2;bottom:14px;left:50%;padding:4px;box-sizing:border-box;display:block;font-size:12px;background:rgba(0,0,0,.6);border-radius:3px;transform:translate(-50%)}.d-slider .d-slider__runway:hover .d-slider__cursor[data-v-5a794390]{display:block}.d-slider .d-slider__runway .d-slider__preload[data-v-5a794390]{background:#717171}.d-slider .d-slider__runway .d-slider__bar[data-v-5a794390]{background:linear-gradient(to right,#52a0fd 0%,#00e2fa 80%,#00e2fa 100%)}.d-slider .d-slider__runway .d-slider__bar[data-v-5a794390]:before{display:block;content:"";position:absolute;right:-6px;top:50%;width:12px;height:12px;transition:.2s;transform:translateY(-50%) scale(1);border-radius:50%;background:#fff;box-shadow:0 0 0 5px #409eff}.d-slider.is-vertical[data-v-5a794390]{height:100%;display:inline-block}.d-slider.is-vertical .d-slider__runway[data-v-5a794390]{position:relative;height:100%;width:var(--5242b67b);margin:0 6px}.d-slider.is-vertical .d-slider__runway .d-slider__preload[data-v-5a794390],.d-slider.is-vertical .d-slider__runway .d-slider__bar[data-v-5a794390],.d-slider.is-vertical .d-slider__runway .d-slider__cursor[data-v-5a794390]{bottom:0;top:auto;width:100%}.d-slider.is-vertical .d-slider__runway .d-slider__cursor[data-v-5a794390]{height:1px}.d-slider.is-vertical .d-slider__runway .d-slider__bar[data-v-5a794390]:before{top:-6px;left:50%;width:12px;height:12px;transform:translate(-50%) scale(1)}html[data-v-570fa0d1],body[data-v-570fa0d1],div[data-v-570fa0d1],span[data-v-570fa0d1],applet[data-v-570fa0d1],object[data-v-570fa0d1],iframe[data-v-570fa0d1],h1[data-v-570fa0d1],h2[data-v-570fa0d1],h3[data-v-570fa0d1],h4[data-v-570fa0d1],h5[data-v-570fa0d1],h6[data-v-570fa0d1],p[data-v-570fa0d1],blockquote[data-v-570fa0d1],pre[data-v-570fa0d1],a[data-v-570fa0d1],abbr[data-v-570fa0d1],acronym[data-v-570fa0d1],address[data-v-570fa0d1],big[data-v-570fa0d1],cite[data-v-570fa0d1],code[data-v-570fa0d1],del[data-v-570fa0d1],dfn[data-v-570fa0d1],em[data-v-570fa0d1],img[data-v-570fa0d1],ins[data-v-570fa0d1],kbd[data-v-570fa0d1],q[data-v-570fa0d1],s[data-v-570fa0d1],samp[data-v-570fa0d1],small[data-v-570fa0d1],strike[data-v-570fa0d1],strong[data-v-570fa0d1],sub[data-v-570fa0d1],sup[data-v-570fa0d1],tt[data-v-570fa0d1],var[data-v-570fa0d1],b[data-v-570fa0d1],u[data-v-570fa0d1],i[data-v-570fa0d1],center[data-v-570fa0d1],dl[data-v-570fa0d1],dt[data-v-570fa0d1],dd[data-v-570fa0d1],ol[data-v-570fa0d1],ul[data-v-570fa0d1],li[data-v-570fa0d1],fieldset[data-v-570fa0d1],form[data-v-570fa0d1],label[data-v-570fa0d1],legend[data-v-570fa0d1],table[data-v-570fa0d1],caption[data-v-570fa0d1],tbody[data-v-570fa0d1],tfoot[data-v-570fa0d1],thead[data-v-570fa0d1],tr[data-v-570fa0d1],th[data-v-570fa0d1],td[data-v-570fa0d1],article[data-v-570fa0d1],aside[data-v-570fa0d1],canvas[data-v-570fa0d1],details[data-v-570fa0d1],embed[data-v-570fa0d1],figure[data-v-570fa0d1],figcaption[data-v-570fa0d1],footer[data-v-570fa0d1],header[data-v-570fa0d1],hgroup[data-v-570fa0d1],menu[data-v-570fa0d1],nav[data-v-570fa0d1],output[data-v-570fa0d1],ruby[data-v-570fa0d1],section[data-v-570fa0d1],summary[data-v-570fa0d1],time[data-v-570fa0d1],mark[data-v-570fa0d1],audio[data-v-570fa0d1],video[data-v-570fa0d1]{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article[data-v-570fa0d1],aside[data-v-570fa0d1],details[data-v-570fa0d1],figcaption[data-v-570fa0d1],figure[data-v-570fa0d1],footer[data-v-570fa0d1],header[data-v-570fa0d1],hgroup[data-v-570fa0d1],menu[data-v-570fa0d1],nav[data-v-570fa0d1],section[data-v-570fa0d1]{display:block}body[data-v-570fa0d1]{line-height:1}ol[data-v-570fa0d1],ul[data-v-570fa0d1]{list-style:none}blockquote[data-v-570fa0d1],q[data-v-570fa0d1]{quotes:none}blockquote[data-v-570fa0d1]:before,blockquote[data-v-570fa0d1]:after,q[data-v-570fa0d1]:before,q[data-v-570fa0d1]:after{content:"";content:none}table[data-v-570fa0d1]{border-collapse:collapse;border-spacing:0}textarea[data-v-570fa0d1]{font-family:inherit}.iconfont[data-v-570fa0d1]{display:inline-block}.d-flex-x[data-v-570fa0d1],.d-flex-y[data-v-570fa0d1],.d-flex-center[data-v-570fa0d1]{display:flex}.d-flex-x[data-v-570fa0d1]{align-items:center}.d-flex-y[data-v-570fa0d1]{justify-content:center}.d-flex-center[data-v-570fa0d1]{justify-content:center;align-items:center}.mr5[data-v-570fa0d1]{margin-right:5px}.mr10[data-v-570fa0d1]{margin-right:10px}.ml5[data-v-570fa0d1]{margin-left:5px}.ml10[data-v-570fa0d1]{margin-left:10px}.d-pointer[data-v-570fa0d1]{cursor:pointer}.rotating[data-v-570fa0d1]{animation:rotating-570fa0d1 2s linear infinite}@keyframes rotating-570fa0d1{to{-webkit-transform:rotate(360deg)}}.d-fade-in-enter-active[data-v-570fa0d1],.d-fade-in-leave-active[data-v-570fa0d1]{transition:.5s}.d-fade-in-enter-from[data-v-570fa0d1],.d-fade-in-leave-to[data-v-570fa0d1]{opacity:0}.d-scale-out-enter-active[data-v-570fa0d1],.d-scale-out-leave-active[data-v-570fa0d1]{transition:.3s}.d-scale-out-leave-to[data-v-570fa0d1]{transform:scale(1.3);opacity:0}.rotateHover[data-v-570fa0d1]{transition:.2s}.rotateHover[data-v-570fa0d1]:hover{transform:rotate(90deg)}.d-player-contextmenu[data-v-570fa0d1],.d-player-dialog[data-v-570fa0d1]{position:absolute;left:0;top:0;bottom:50px;width:100%;z-index:5}.d-player-contextmenu .d-player-copyText[data-v-570fa0d1]{opacity:0}.d-player-contextmenu .d-player-contextmenu-body[data-v-570fa0d1]{position:absolute;border-radius:5px;font-size:12px;background:rgba(0,0,0,.8);color:#efefef;text-align:left;width:130px;box-sizing:border-box;padding:5px 0}.d-player-contextmenu .d-player-contextmenu-body li[data-v-570fa0d1]{padding:8px 20px;margin:0;cursor:pointer;transition:.2s}.d-player-contextmenu .d-player-contextmenu-body li[data-v-570fa0d1]:hover{background-color:#ffffff1a}.d-player-dialog[data-v-570fa0d1]{display:flex;justify-content:center;align-items:center}.d-player-dialog .d-player-dialog-body[data-v-570fa0d1]{background-color:#212121e6;border-radius:5px;color:#fff;min-width:200px;padding:0 0 10px}.d-player-dialog .d-player-dialog-body .d-player-dialog-title[data-v-570fa0d1]{position:relative;font-size:14px;font-weight:400;margin:0 0 10px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.15)}.d-player-dialog .d-player-dialog-body .d-player-dialog-title .icon-close[data-v-570fa0d1]{position:absolute;right:0px;top:0px;width:40px;height:40px;line-height:40px;text-align:center;cursor:pointer}.d-player-dialog .d-player-dialog-body .d-player-hotkey-panel[data-v-570fa0d1]{font-size:12px;color:#eee;padding-right:40px}.d-player-dialog .d-player-dialog-body .d-player-hotkey-panel .d-player-hotkey-panel-item[data-v-570fa0d1]{line-height:26px}.d-player-dialog .d-player-dialog-body .d-player-hotkey-panel .d-player-hotkey-panel-item span[data-v-570fa0d1]{text-align:center;display:inline-block;width:120px}.d-player-dialog .d-player-dialog-body .d-player-hotkey-panel .d-player-hotkey-panel-item span[data-v-570fa0d1]:nth-child(2){color:#999;width:160px}.d-player-dialog .d-player-dialog-body .d-player-filter-panel[data-v-570fa0d1]{width:320px;padding:0 20px}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-reset[data-v-570fa0d1]{cursor:pointer;margin-top:10px;padding:3px 20px;display:inline-block;border-radius:2px;font-size:12px;background:rgba(133,133,133,.5)}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-reset[data-v-570fa0d1]:hover{background:rgba(255,255,255,.3)}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-panel-item[data-v-570fa0d1]{height:32px;display:flex;align-items:center}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-panel-item .filter-panel-slider[data-v-570fa0d1]{width:100%}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-panel-item .filter-panel-slider[data-v-570fa0d1] .d-slider__runway{background-color:#999}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-panel-item .filter-panel-slider[data-v-570fa0d1] .d-slider__runway .d-slider__bar:before{width:8px;height:8px;box-shadow:0 0 0 5px #ffffff80}.d-player-dialog .d-player-dialog-body .d-player-filter-panel .d-player-filter-panel-item span[data-v-570fa0d1]{font-size:12px;display:block;width:80px;text-align:center}html[data-v-01791e9e],body[data-v-01791e9e],div[data-v-01791e9e],span[data-v-01791e9e],applet[data-v-01791e9e],object[data-v-01791e9e],iframe[data-v-01791e9e],h1[data-v-01791e9e],h2[data-v-01791e9e],h3[data-v-01791e9e],h4[data-v-01791e9e],h5[data-v-01791e9e],h6[data-v-01791e9e],p[data-v-01791e9e],blockquote[data-v-01791e9e],pre[data-v-01791e9e],a[data-v-01791e9e],abbr[data-v-01791e9e],acronym[data-v-01791e9e],address[data-v-01791e9e],big[data-v-01791e9e],cite[data-v-01791e9e],code[data-v-01791e9e],del[data-v-01791e9e],dfn[data-v-01791e9e],em[data-v-01791e9e],img[data-v-01791e9e],ins[data-v-01791e9e],kbd[data-v-01791e9e],q[data-v-01791e9e],s[data-v-01791e9e],samp[data-v-01791e9e],small[data-v-01791e9e],strike[data-v-01791e9e],strong[data-v-01791e9e],sub[data-v-01791e9e],sup[data-v-01791e9e],tt[data-v-01791e9e],var[data-v-01791e9e],b[data-v-01791e9e],u[data-v-01791e9e],i[data-v-01791e9e],center[data-v-01791e9e],dl[data-v-01791e9e],dt[data-v-01791e9e],dd[data-v-01791e9e],ol[data-v-01791e9e],ul[data-v-01791e9e],li[data-v-01791e9e],fieldset[data-v-01791e9e],form[data-v-01791e9e],label[data-v-01791e9e],legend[data-v-01791e9e],table[data-v-01791e9e],caption[data-v-01791e9e],tbody[data-v-01791e9e],tfoot[data-v-01791e9e],thead[data-v-01791e9e],tr[data-v-01791e9e],th[data-v-01791e9e],td[data-v-01791e9e],article[data-v-01791e9e],aside[data-v-01791e9e],canvas[data-v-01791e9e],details[data-v-01791e9e],embed[data-v-01791e9e],figure[data-v-01791e9e],figcaption[data-v-01791e9e],footer[data-v-01791e9e],header[data-v-01791e9e],hgroup[data-v-01791e9e],menu[data-v-01791e9e],nav[data-v-01791e9e],output[data-v-01791e9e],ruby[data-v-01791e9e],section[data-v-01791e9e],summary[data-v-01791e9e],time[data-v-01791e9e],mark[data-v-01791e9e],audio[data-v-01791e9e],video[data-v-01791e9e]{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article[data-v-01791e9e],aside[data-v-01791e9e],details[data-v-01791e9e],figcaption[data-v-01791e9e],figure[data-v-01791e9e],footer[data-v-01791e9e],header[data-v-01791e9e],hgroup[data-v-01791e9e],menu[data-v-01791e9e],nav[data-v-01791e9e],section[data-v-01791e9e]{display:block}body[data-v-01791e9e]{line-height:1}ol[data-v-01791e9e],ul[data-v-01791e9e]{list-style:none}blockquote[data-v-01791e9e],q[data-v-01791e9e]{quotes:none}blockquote[data-v-01791e9e]:before,blockquote[data-v-01791e9e]:after,q[data-v-01791e9e]:before,q[data-v-01791e9e]:after{content:"";content:none}table[data-v-01791e9e]{border-collapse:collapse;border-spacing:0}textarea[data-v-01791e9e]{font-family:inherit}.d-fade-in-enter-active[data-v-01791e9e],.d-fade-in-leave-active[data-v-01791e9e]{transition:.5s}.d-fade-in-enter-from[data-v-01791e9e],.d-fade-in-leave-to[data-v-01791e9e]{opacity:0}.d-scale-out-enter-active[data-v-01791e9e],.d-scale-out-leave-active[data-v-01791e9e]{transition:.3s}.d-scale-out-leave-to[data-v-01791e9e]{transform:scale(1.3);opacity:0}.rotateHover[data-v-01791e9e]{transition:.2s}.rotateHover[data-v-01791e9e]:hover{transform:rotate(90deg)}.rotating[data-v-01791e9e]{animation:rotating-01791e9e 2s linear infinite}@keyframes rotating-01791e9e{to{-webkit-transform:rotate(360deg)}}.iconfont[data-v-01791e9e]{display:inline-block}.d-flex-x[data-v-01791e9e],.d-flex-y[data-v-01791e9e],.d-flex-center[data-v-01791e9e]{display:flex}.d-flex-x[data-v-01791e9e]{align-items:center}.d-flex-y[data-v-01791e9e]{justify-content:center}.d-flex-center[data-v-01791e9e]{justify-content:center;align-items:center}.mr5[data-v-01791e9e]{margin-right:5px}.mr10[data-v-01791e9e]{margin-right:10px}.ml5[data-v-01791e9e]{margin-left:5px}.ml10[data-v-01791e9e]{margin-left:10px}.d-pointer[data-v-01791e9e]{cursor:pointer}.d-player-wrap[data-v-01791e9e]{--primary-color: var(--51d4439c);width:var(--77e758a6);height:var(--b8a1afc0);position:relative;overflow:hidden;background-color:#000}.d-player-wrap.web-full-screen[data-v-01791e9e]{z-index:9999999;position:fixed;left:0;top:0;width:100vw!important;height:100vh!important}.d-player-wrap .d-player-video[data-v-01791e9e]{position:relative;z-index:1;width:100%;height:100%}.d-player-wrap .d-player-video .d-player-video-poster[data-v-01791e9e]{position:absolute;height:100%;width:100%;top:0;left:0}.d-player-wrap .d-player-video .d-player-video-poster img[data-v-01791e9e]{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.d-player-wrap .d-player-video .d-player-video-main[data-v-01791e9e]{width:100%;height:100%;transition:.2s}.d-player-wrap .d-player-video .d-player-video-main.video-mirror[data-v-01791e9e]{transform:rotateY(180deg)}.d-player-wrap .d-player-control[data-v-01791e9e]{transition:.1s;transform:translateY(40px);position:absolute;z-index:2;left:0;bottom:0;height:50px;width:100%;color:#fff}.d-player-wrap .d-player-control .d-control-progress[data-v-01791e9e]{width:100%;position:relative;height:10px;cursor:pointer}.d-player-wrap .d-player-control .d-control-progress .d-progress-bar[data-v-01791e9e]{position:absolute;left:0;right:0;bottom:0;width:100%;transition:height .1s;height:3px;z-index:1}.d-player-wrap .d-player-control .d-control-progress .d-progress-bar[data-v-01791e9e] .d-slider__runway{transition:height .1s;height:100%}.d-player-wrap .d-player-control .d-control-progress .d-progress-bar[data-v-01791e9e] .d-slider__runway .d-slider__bar:before{transform:translateY(-50%) scale(0)}.d-player-wrap .d-player-control .d-control-progress:hover .d-progress-bar[data-v-01791e9e]{height:100%}.d-player-wrap .d-player-control .d-control-progress:hover .d-progress-bar[data-v-01791e9e] .d-slider__bar:before{transform:translateY(-50%) scale(1)!important}.d-player-wrap .d-player-control .d-control-tool[data-v-01791e9e]{position:absolute;padding:0 10px;background:rgba(0,0,0,.8);display:flex;justify-content:space-between;align-items:center;top:10px;left:0;bottom:0;width:100%;box-sizing:border-box}.d-player-wrap .d-player-control .d-control-tool .d-tool-bar[data-v-01791e9e]{display:flex;height:100%}.d-player-wrap .d-player-control .d-control-tool .d-tool-bar .d-tool-item[data-v-01791e9e]{position:relative;height:100%;cursor:pointer;text-align:center;padding:0 8px;display:flex;align-items:center;font-size:13px}.d-player-wrap .d-player-control .d-control-tool .d-tool-bar .d-tool-item .d-tool-item-main[data-v-01791e9e]{position:absolute;white-space:nowrap;z-index:2;bottom:98%;left:50%;padding:6px 16px;box-sizing:border-box;display:none;background:rgba(0,0,0,.95);border-radius:5px;transform:translate(-50%)}.d-player-wrap .d-player-control .d-control-tool .d-tool-bar .d-tool-item:hover .d-tool-item-main[data-v-01791e9e]{display:flex}.d-player-wrap .d-player-control .d-control-tool .d-tool-time[data-v-01791e9e]{font-size:12px;color:#fff;font-weight:300}.d-player-wrap .d-player-control .d-control-tool .d-tool-time .total-time[data-v-01791e9e]{color:#fffc}.d-player-wrap .d-player-control .d-control-tool .volume-box[data-v-01791e9e]{height:160px;width:50px;display:flex;align-items:center;justify-content:center}.d-player-wrap .d-player-control .d-control-tool .volume-box .volume-main[data-v-01791e9e]{height:90%;display:flex;width:60px;flex-direction:column;align-items:center}.d-player-wrap .d-player-control .d-control-tool .volume-box .volume-main .volume-text-size[data-v-01791e9e]{margin-bottom:10px;font-size:12px;font-weight:400}.d-player-wrap .d-player-control .d-control-tool .volume-box .volume-main.is-muted[data-v-01791e9e] .d-slider__bar{height:0!important}.d-player-wrap .d-player-control .d-control-tool .speed-main[data-v-01791e9e]{padding:0 10px}.d-player-wrap .d-player-control .d-control-tool .speed-main li[data-v-01791e9e]{cursor:pointer;line-height:34px;font-size:12px;color:#fff}.d-player-wrap .d-player-control .d-control-tool .speed-main li[data-v-01791e9e]:hover{opacity:.8}.d-player-wrap .d-player-control .d-control-tool .speed-main li.speed-active[data-v-01791e9e]{color:rgba(var(--primary-color),1);font-weight:700}.d-player-wrap.d-player-wrap-hover .d-player-control[data-v-01791e9e]{transform:translateY(0)}.d-player-state[data-v-01791e9e],.d-player-input[data-v-01791e9e]{position:absolute;left:0;top:0;right:0;bottom:40px;display:flex;justify-content:center;align-items:center;overflow:hidden;z-index:1}.d-player-input[data-v-01791e9e]{width:100%;border:none;opacity:0;cursor:default}.d-play-btn[data-v-01791e9e]{width:90px;height:90px;color:#fff;display:flex;align-items:center;justify-content:center;background-color:#000000b3;border-radius:50%}.d-player-lightoff[data-v-01791e9e]{position:fixed;left:0;top:0;width:100vw;height:100vh;background-color:#000000e6}.is-lightoff[data-v-01791e9e]{z-index:999998}.group-list .group-item[data-v-7f16ad91]{height:32px;margin-top:3px}.group-list .group-item .operate[data-v-7f16ad91]{display:none}.group-list .group-item.active[data-v-7f16ad91]{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.group-list .group-item[data-v-7f16ad91]:hover{background-color:var(--el-color-primary-light-9)}.group-list .group-item:hover .operate[data-v-7f16ad91],.attachment-item:hover .attachment-action[data-v-7f16ad91]{display:block}.attachment-list-wrap .attachment-wrap[data-v-7f16ad91]{background:var(--el-border-color-extra-light)}.video-preview{background:none!important;box-shadow:none!important}.video-preview .el-dialog__headerbtn .el-dialog__close{border-radius:50%;width:34px;height:34px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-upload-list{position:absolute!important;z-index:10}.el-upload-list .el-upload-list__item{background:#fff!important;box-shadow:var(--el-box-shadow-light)} diff --git a/niucloud/public/admin/assets/attachment-ac078107.js b/niucloud/public/admin/assets/attachment-ac078107.js new file mode 100644 index 0000000..9709b92 --- /dev/null +++ b/niucloud/public/admin/assets/attachment-ac078107.js @@ -0,0 +1 @@ +import{d as _,r as d,h as m,c as p,e,w as o,F as u,G as f,u as h,N as v,aA as y,aB as b,_ as x}from"./index-6010b07e.js";/* empty css *//* empty css */import{a as E}from"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";const V={class:"main-container attachment-container"},tt=_({__name:"attachment",setup(g){const a=["image","video","icon"],r=d(a[0]);return(k,n)=>{const i=y,s=b,l=x;return m(),p("div",V,[e(l,{class:"box-card !border-none full-container",shadow:"never"},{default:o(()=>[e(s,{modelValue:r.value,"onUpdate:modelValue":n[0]||(n[0]=t=>r.value=t),class:""},{default:o(()=>[(m(),p(u,null,f(a,(t,c)=>e(i,{label:h(v)(t),name:t,key:c},{default:o(()=>[e(E,{scene:"attachment",type:t},null,8,["type"])]),_:2},1032,["label","name"])),64))]),_:1},8,["modelValue"])]),_:1})])}}});export{tt as default}; diff --git a/niucloud/public/admin/assets/attachment-bc20fd95.js b/niucloud/public/admin/assets/attachment-bc20fd95.js new file mode 100644 index 0000000..b2dda70 --- /dev/null +++ b/niucloud/public/admin/assets/attachment-bc20fd95.js @@ -0,0 +1,22 @@ +import{q as Re,c as Z,A as be,x as je,u as G,i as ce,d as xe,y as me,z as Ee,a as K,e as z,t as J,r as ye,B as ae,n as Se,s as et,v as mt,o as yt,w as Q,T as at,F as we,G as Fe,h as Y,p as Ve,g as He,D as Et,ab as It,aN as Ct,aO as Tt,I as ge,S as Ze,aP as ut,C as wt,b as xt,aQ as Ot,N as ee,a2 as st,W as St,E as bt,a6 as Pt,aR as Ft,U as Mt,au as De,R as Ge,av as dt,a5 as ct,aS as Nt,aT as Bt,aU as Ut,an as Gt,aV as jt,al as Kt,am as Vt,V as Ht,ag as Wt,aa as Yt,ay as qt,a3 as zt,aq as Xt,aC as $t,X as Qt,Y as Zt,a7 as Jt,aM as er,$ as tr}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as rr}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{r as ir,s as nr,t as ar,u as sr,v as or,w as lr,x as ur,y as dr,z as cr}from"./sys-0f76aff3.js";import{_ as hr}from"./_plugin-vue_export-helper-c27b6911.js";var fr=Object.defineProperty,gr=Object.defineProperties,vr=Object.getOwnPropertyDescriptors,ht=Object.getOwnPropertySymbols,pr=Object.prototype.hasOwnProperty,mr=Object.prototype.propertyIsEnumerable,ft=(N,w,h)=>w in N?fr(N,w,{enumerable:!0,configurable:!0,writable:!0,value:h}):N[w]=h,ot=(N,w)=>{for(var h in w||(w={}))pr.call(w,h)&&ft(N,h,w[h]);if(ht)for(var h of ht(w))mr.call(w,h)&&ft(N,h,w[h]);return N},lt=(N,w)=>gr(N,vr(w));function gt(N,w,h,R){var b,A=!1,D=0;function I(){b&&clearTimeout(b)}function _(){for(var s=arguments.length,L=new Array(s),m=0;mN?T():w!==!0&&(b=setTimeout(R?d:T,R===void 0?N-S:N)))}return typeof w!="boolean"&&(R=h,h=w,w=void 0),_.cancel=function(){I(),A=!0},_}function vt(N,w,h){return h===void 0?gt(N,w,!1):gt(N,h,w!==!1)}function yr(N){return N&&N.__esModule&&Object.prototype.hasOwnProperty.call(N,"default")?N.default:N}var Lt={exports:{}};typeof window<"u"&&(Lt.exports=function(N){var w={};function h(R){if(w[R])return w[R].exports;var b=w[R]={i:R,l:!1,exports:{}};return N[R].call(b.exports,b,b.exports,h),b.l=!0,b.exports}return h.m=N,h.c=w,h.d=function(R,b,A){h.o(R,b)||Object.defineProperty(R,b,{enumerable:!0,get:A})},h.r=function(R){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(R,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(R,"__esModule",{value:!0})},h.t=function(R,b){if(1&b&&(R=h(R)),8&b||4&b&&typeof R=="object"&&R&&R.__esModule)return R;var A=Object.create(null);if(h.r(A),Object.defineProperty(A,"default",{enumerable:!0,value:R}),2&b&&typeof R!="string")for(var D in R)h.d(A,D,function(I){return R[I]}.bind(null,D));return A},h.n=function(R){var b=R&&R.__esModule?function(){return R.default}:function(){return R};return h.d(b,"a",b),b},h.o=function(R,b){return Object.prototype.hasOwnProperty.call(R,b)},h.p="/dist/",h(h.s="./src/hls.ts")}({"./node_modules/eventemitter3/index.js":function(N,w,h){var R=Object.prototype.hasOwnProperty,b="~";function A(){}function D(L,m,f){this.fn=L,this.context=m,this.once=f||!1}function I(L,m,f,S,T){if(typeof f!="function")throw new TypeError("The listener must be a function");var d=new D(f,S||L,T),e=b?b+m:m;return L._events[e]?L._events[e].fn?L._events[e]=[L._events[e],d]:L._events[e].push(d):(L._events[e]=d,L._eventsCount++),L}function _(L,m){--L._eventsCount==0?L._events=new A:delete L._events[m]}function s(){this._events=new A,this._eventsCount=0}Object.create&&(A.prototype=Object.create(null),new A().__proto__||(b=!1)),s.prototype.eventNames=function(){var L,m,f=[];if(this._eventsCount===0)return f;for(m in L=this._events)R.call(L,m)&&f.push(b?m.slice(1):m);return Object.getOwnPropertySymbols?f.concat(Object.getOwnPropertySymbols(L)):f},s.prototype.listeners=function(L){var m=b?b+L:L,f=this._events[m];if(!f)return[];if(f.fn)return[f.fn];for(var S=0,T=f.length,d=new Array(T);S0},!1)}N.exports=function(s,L){L=L||{};var m={main:h.m},f=L.all?{main:Object.keys(m.main)}:function(a,t){for(var o={main:[t]},u={main:[]},i={main:{}};_(o);)for(var l=Object.keys(o),p=0;p=2*p/v||k<=C)){var O,P=Number.POSITIVE_INFINITY;for(O=e.level-1;O>n&&!((P=p*r[O].maxBitrate/(6.4*y))=k)){var F=this.bwEstimator.getEstimate();s.logger.warn("Fragment "+e.sn+(a?" part "+a.index:"")+" of level "+e.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+O+` + Current BW estimate: `+(Object(R.isFiniteNumber)(F)?(F/1024).toFixed(3):"Unknown")+` Kb/s + Estimated load time for current fragment: `+k.toFixed(3)+` s + Estimated load time for the next fragment: `+P.toFixed(3)+` s + Time to underbuffer: `+C.toFixed(3)+" s"),t.nextLoadLevel=O,this.bwEstimator.sample(g,l.loaded),this.clearTimer(),e.loader&&(this.fragCurrent=this.partCurrent=null,e.loader.abort()),t.trigger(A.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:e,part:a,stats:l})}}}}}},d.onFragLoaded=function(e,a){var t=a.frag,o=a.part;if(t.type===_.PlaylistLevelType.MAIN&&Object(R.isFiniteNumber)(t.sn)){var u=o?o.stats:t.stats,i=o?o.duration:t.duration;if(this.clearTimer(),this.lastLoadedFragLevel=t.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var l=this.hls.levels[t.level],p=(l.loaded?l.loaded.bytes:0)+u.loaded,g=(l.loaded?l.loaded.duration:0)+i;l.loaded={bytes:p,duration:g},l.realBitrate=Math.round(8*p/g)}if(t.bitrateTest){var v={stats:u,frag:t,part:o,id:t.type};this.onFragBuffered(A.Events.FRAG_BUFFERED,v),t.bitrateTest=!1}}},d.onFragBuffered=function(e,a){var t=a.frag,o=a.part,u=o?o.stats:t.stats;if(!u.aborted&&t.type===_.PlaylistLevelType.MAIN&&t.sn!=="initSegment"){var i=u.parsing.end-u.loading.start;this.bwEstimator.sample(i,u.loaded),u.bwEstimate=this.bwEstimator.getEstimate(),t.bitrateTest?this.bitrateTestDelay=i/1e3:this.bitrateTestDelay=0}},d.onError=function(e,a){switch(a.details){case I.ErrorDetails.FRAG_LOAD_ERROR:case I.ErrorDetails.FRAG_LOAD_TIMEOUT:this.clearTimer()}},d.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},d.getNextABRAutoLevel=function(){var e=this.fragCurrent,a=this.partCurrent,t=this.hls,o=t.maxAutoLevel,u=t.config,i=t.minAutoLevel,l=t.media,p=a?a.duration:e?e.duration:0,g=l?l.currentTime:0,v=l&&l.playbackRate!==0?Math.abs(l.playbackRate):1,r=this.bwEstimator?this.bwEstimator.getEstimate():u.abrEwmaDefaultEstimate,n=(D.BufferHelper.bufferInfo(l,g,u.maxBufferHole).end-g)/v,c=this.findBestLevel(r,i,o,n,u.abrBandWidthFactor,u.abrBandWidthUpFactor);if(c>=0)return c;s.logger.trace((n?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var E=p?Math.min(p,u.maxStarvationDelay):u.maxStarvationDelay,y=u.abrBandWidthFactor,k=u.abrBandWidthUpFactor;if(!n){var x=this.bitrateTestDelay;x&&(E=(p?Math.min(p,u.maxLoadingDelay):u.maxLoadingDelay)-x,s.logger.trace("bitrate test took "+Math.round(1e3*x)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*E)+" ms"),y=k=1)}return c=this.findBestLevel(r,i,o,n+E,y,k),Math.max(c,0)},d.findBestLevel=function(e,a,t,o,u,i){for(var l,p=this.fragCurrent,g=this.partCurrent,v=this.lastLoadedFragLevel,r=this.hls.levels,n=r[v],c=!(n==null||(l=n.details)===null||l===void 0||!l.live),E=n==null?void 0:n.codecSet,y=g?g.duration:p?p.duration:0,k=t;k>=a;k--){var x=r[k];if(x&&(!E||x.codecSet===E)){var C=x.details,O=(g?C==null?void 0:C.partTarget:C==null?void 0:C.averagetargetduration)||y,P=void 0;P=k<=v?u*e:i*e;var F=r[k].maxBitrate,M=F*O/P;if(s.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+k+"/"+Math.round(P)+"/"+F+"/"+O+"/"+o+"/"+M),P>F&&(!M||c&&!this.bitrateTestDelay||M0&&r===-1?(this.log("Override startPosition with lastCurrentTime @"+n.toFixed(3)),this.state=b.State.IDLE):(this.loadedmetadata=!1,this.state=b.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=r,this.tick()},v.doTick=function(){switch(this.state){case b.State.IDLE:this.doTickIdle();break;case b.State.WAITING_TRACK:var r,n=this.levels,c=this.trackId,E=n==null||(r=n[c])===null||r===void 0?void 0:r.details;if(E){if(this.waitForCdnTuneIn(E))break;this.state=b.State.WAITING_INIT_PTS}break;case b.State.FRAG_LOADING_WAITING_RETRY:var y,k=performance.now(),x=this.retryDate;(!x||k>=x||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.state=b.State.IDLE);break;case b.State.WAITING_INIT_PTS:var C=this.waitingData;if(C){var O=C.frag,P=C.part,F=C.cache,M=C.complete;if(this.initPTS[O.cc]!==void 0){this.waitingData=null,this.waitingVideoCC=-1,this.state=b.State.FRAG_LOADING;var B={frag:O,part:P,payload:F.flush(),networkDetails:null};this._handleFragmentLoadProgress(B),M&&i.prototype._handleFragmentLoadComplete.call(this,B)}else if(this.videoTrackCC!==this.waitingVideoCC)a.logger.log("Waiting fragment cc ("+O.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var U=this.getLoadPosition(),j=D.BufferHelper.bufferInfo(this.mediaBuffer,U,this.config.maxBufferHole);Object(T.fragmentWithinToleranceTest)(j.end,this.config.maxFragLookUpTolerance,O)<0&&(a.logger.log("Waiting fragment cc ("+O.cc+") @ "+O.start+" cancelled because another fragment at "+j.end+" is needed"),this.clearWaitingFragment())}}else this.state=b.State.IDLE}this.onTickEnd()},v.clearWaitingFragment=function(){var r=this.waitingData;r&&(this.fragmentTracker.removeFragment(r.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=b.State.IDLE)},v.onTickEnd=function(){var r=this.media;if(r&&r.readyState){var n=(this.mediaBuffer?this.mediaBuffer:r).buffered;!this.loadedmetadata&&n.length&&(this.loadedmetadata=!0),this.lastCurrentTime=r.currentTime}},v.doTickIdle=function(){var r,n,c=this.hls,E=this.levels,y=this.media,k=this.trackId,x=c.config;if(E&&E[k]&&(y||!this.startFragRequested&&x.startFragPrefetch)){var C=E[k].details;if(!C||C.live&&this.levelLastLoaded!==k||this.waitForCdnTuneIn(C))this.state=b.State.WAITING_TRACK;else{this.bufferFlushed&&(this.bufferFlushed=!1,this.afterBufferFlushed(this.mediaBuffer?this.mediaBuffer:this.media,L.ElementaryStreamTypes.AUDIO,s.PlaylistLevelType.AUDIO));var O=this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:this.media,s.PlaylistLevelType.AUDIO);if(O!==null){var P=O.len,F=this.getMaxBufferLength(),M=this.audioSwitch;if(!(P>=F)||M){if(!M&&this._streamEnded(O,C))return c.trigger(A.Events.BUFFER_EOS,{type:"audio"}),void(this.state=b.State.ENDED);var B=C.fragments[0].start,U=O.end;if(M){var j=this.getLoadPosition();U=j,C.PTSKnown&&jB||O.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),y.currentTime=B+.05)}var V=this.getNextFragment(U,C);V?((r=V.decryptdata)===null||r===void 0?void 0:r.keyFormat)!=="identity"||(n=V.decryptdata)!==null&&n!==void 0&&n.key?this.loadFragment(V,C,U):this.loadKey(V,C):this.bufferFlushed=!0}}}}},v.getMaxBufferLength=function(){var r=i.prototype.getMaxBufferLength.call(this),n=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,s.PlaylistLevelType.MAIN);return n===null?r:Math.max(r,n.len)},v.onMediaDetaching=function(){this.videoBuffer=null,i.prototype.onMediaDetaching.call(this)},v.onAudioTracksUpdated=function(r,n){var c=n.audioTracks;this.resetTransmuxer(),this.levels=c.map(function(E){return new _.Level(E)})},v.onAudioTrackSwitching=function(r,n){var c=!!n.url;this.trackId=n.id;var E=this.fragCurrent;E!=null&&E.loader&&E.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),c?this.setInterval(100):this.resetTransmuxer(),c?(this.audioSwitch=!0,this.state=b.State.IDLE):this.state=b.State.STOPPED,this.tick()},v.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},v.onLevelLoaded=function(r,n){this.mainDetails=n.details},v.onAudioTrackLoaded=function(r,n){var c,E=this.levels,y=n.details,k=n.id;if(E){this.log("Track "+k+" loaded ["+y.startSN+","+y.endSN+"],duration:"+y.totalduration);var x=E[k],C=0;if(y.live||(c=x.details)!==null&&c!==void 0&&c.live){var O=this.mainDetails;if(y.fragments[0]||(y.deltaUpdateFailed=!0),y.deltaUpdateFailed||!O)return;!x.details&&y.hasProgramDateTime&&O.hasProgramDateTime?(Object(d.alignPDT)(y,O),C=y.fragments[0].start):C=this.alignPlaylists(y,x.details)}x.details=y,this.levelLastLoaded=k,this.startFragRequested||!this.mainDetails&&y.live||this.setStartPosition(x.details,C),this.state!==b.State.WAITING_TRACK||this.waitForCdnTuneIn(y)||(this.state=b.State.IDLE),this.tick()}else this.warn("Audio tracks were reset while loading level "+k)},v._handleFragmentLoadProgress=function(r){var n,c=r.frag,E=r.part,y=r.payload,k=this.config,x=this.trackId,C=this.levels;if(C){var O=C[x];console.assert(O,"Audio track is defined on fragment load progress");var P=O.details;console.assert(P,"Audio track details are defined on fragment load progress");var F=k.defaultAudioCodec||O.audioCodec||"mp4a.40.2",M=this.transmuxer;M||(M=this.transmuxer=new f.default(this.hls,s.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var B=this.initPTS[c.cc],U=(n=c.initSegment)===null||n===void 0?void 0:n.data;if(B!==void 0){var j=E?E.index:-1,V=j!==-1,H=new S.ChunkMetadata(c.level,c.sn,c.stats.chunkCount,y.byteLength,j,V);M.push(y,U,F,"",c,E,P.totalduration,!1,H,B)}else a.logger.log("Unknown video PTS for cc "+c.cc+", waiting for video PTS before demuxing audio frag "+c.sn+" of ["+P.startSN+" ,"+P.endSN+"],track "+x),(this.waitingData=this.waitingData||{frag:c,part:E,cache:new m.default,complete:!1}).cache.push(new Uint8Array(y)),this.waitingVideoCC=this.videoTrackCC,this.state=b.State.WAITING_INIT_PTS}else this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+c.sn+" of level "+c.level+" will not be buffered")},v._handleFragmentLoadComplete=function(r){this.waitingData?this.waitingData.complete=!0:i.prototype._handleFragmentLoadComplete.call(this,r)},v.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},v.onBufferCreated=function(r,n){var c=n.tracks.audio;c&&(this.mediaBuffer=c.buffer),n.tracks.video&&(this.videoBuffer=n.tracks.video.buffer)},v.onFragBuffered=function(r,n){var c=n.frag,E=n.part;c.type===s.PlaylistLevelType.AUDIO&&(this.fragContextChanged(c)?this.warn("Fragment "+c.sn+(E?" p: "+E.index:"")+" of level "+c.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch):(c.sn!=="initSegment"&&(this.fragPrevious=c,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(c,E)))},v.onError=function(r,n){switch(n.details){case e.ErrorDetails.FRAG_LOAD_ERROR:case e.ErrorDetails.FRAG_LOAD_TIMEOUT:case e.ErrorDetails.KEY_LOAD_ERROR:case e.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(s.PlaylistLevelType.AUDIO,n);break;case e.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case e.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==b.State.ERROR&&this.state!==b.State.STOPPED&&(this.state=n.fatal?b.State.ERROR:b.State.IDLE,this.warn(n.details+" while loading frag, switching to "+this.state+" state"));break;case e.ErrorDetails.BUFFER_FULL_ERROR:if(n.parent==="audio"&&(this.state===b.State.PARSING||this.state===b.State.PARSED)){var c=!0,E=this.getFwdBufferInfo(this.mediaBuffer,s.PlaylistLevelType.AUDIO);E&&E.len>.5&&(c=!this.reduceMaxBufferLength(E.len)),c&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,i.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}}},v.onBufferFlushed=function(r,n){n.type===L.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0)},v._handleTransmuxComplete=function(r){var n,c="audio",E=this.hls,y=r.remuxResult,k=r.chunkMeta,x=this.getCurrentContext(k);if(!x)return this.warn("The loading context changed while buffering fragment "+k.sn+" of level "+k.level+". This chunk will not be buffered."),void this.resetLiveStartWhenNotLoaded(k.level);var C=x.frag,O=x.part,P=y.audio,F=y.text,M=y.id3,B=y.initSegment;if(!this.fragContextChanged(C)){if(this.state=b.State.PARSING,this.audioSwitch&&P&&this.completeAudioSwitch(),B!=null&&B.tracks&&(this._bufferInitSegment(B.tracks,C,k),E.trigger(A.Events.FRAG_PARSING_INIT_SEGMENT,{frag:C,id:c,tracks:B.tracks})),P){var U=P.startPTS,j=P.endPTS,V=P.startDTS,H=P.endDTS;O&&(O.elementaryStreams[L.ElementaryStreamTypes.AUDIO]={startPTS:U,endPTS:j,startDTS:V,endDTS:H}),C.setElementaryStreamInfo(L.ElementaryStreamTypes.AUDIO,U,j,V,H),this.bufferFragmentData(P,C,O,k)}if(M!=null&&(n=M.samples)!==null&&n!==void 0&&n.length){var X=t({frag:C,id:c},M);E.trigger(A.Events.FRAG_PARSING_METADATA,X)}if(F){var q=t({frag:C,id:c},F);E.trigger(A.Events.FRAG_PARSING_USERDATA,q)}}},v._bufferInitSegment=function(r,n,c){if(this.state===b.State.PARSING){r.video&&delete r.video;var E=r.audio;if(E){E.levelCodec=E.codec,E.id="audio",this.log("Init audio buffer, container:"+E.container+", codecs[parsed]=["+E.codec+"]"),this.hls.trigger(A.Events.BUFFER_CODECS,r);var y=E.initSegment;if(y!=null&&y.byteLength){var k={type:"audio",frag:n,part:null,chunkMeta:c,parent:n.type,data:y};this.hls.trigger(A.Events.BUFFER_APPENDING,k)}this.tick()}}},v.loadFragment=function(r,n,c){var E=this.fragmentTracker.getState(r);this.fragCurrent=r,(this.audioSwitch||E===I.FragmentState.NOT_LOADED||E===I.FragmentState.PARTIAL)&&(r.sn==="initSegment"?this._loadInitSegment(r):n.live&&!Object(R.isFiniteNumber)(this.initPTS[r.cc])?(this.log("Waiting for video PTS in continuity counter "+r.cc+" of live stream before loading audio fragment "+r.sn+" of level "+this.trackId),this.state=b.State.WAITING_INIT_PTS):(this.startFragRequested=!0,i.prototype.loadFragment.call(this,r,n,c)))},v.completeAudioSwitch=function(){var r=this.hls,n=this.media,c=this.trackId;n&&(this.log("Switching audio track : flushing all audio"),i.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,r.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:c})},g}(b.default);w.default=u},"./src/controller/audio-track-controller.ts":function(N,w,h){h.r(w);var R=h("./src/events.ts"),b=h("./src/errors.ts"),A=h("./src/controller/base-playlist-controller.ts"),D=h("./src/types/loader.ts");function I(L,m){for(var f=0;f=t.length)this.warn("Invalid id passed to audio-track controller");else{this.clearTimer();var o=t[this.trackId];this.log("Now switching to audio-track index "+a);var u=t[a],i=u.id,l=u.groupId,p=l===void 0?"":l,g=u.name,v=u.type,r=u.url;if(this.trackId=a,this.trackName=g,this.selectDefaultTrack=!1,this.hls.trigger(R.Events.AUDIO_TRACK_SWITCHING,{id:i,groupId:p,name:g,type:v,url:r}),!u.details||u.details.live){var n=this.switchParams(u.url,o==null?void 0:o.details);this.loadPlaylist(n)}}},e.selectInitialTrack=function(){var a=this.tracksInGroup;console.assert(a.length,"Initial audio track should be selected when tracks are known");var t=this.trackName,o=this.findTrackId(t)||this.findTrackId();o!==-1?this.setAudioTrack(o):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.MEDIA_ERROR,details:b.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},e.findTrackId=function(a){for(var t=this.tracksInGroup,o=0;of.partTarget&&(t+=1)}if(Object(R.isFiniteNumber)(a))return new b.HlsUrlParameters(a,Object(R.isFiniteNumber)(t)?t:void 0,b.HlsSkip.No)}}},L.loadPlaylist=function(m){},L.shouldLoadTrack=function(m){return this.canLoad&&m&&!!m.url&&(!m.details||m.details.live)},L.playlistLoaded=function(m,f,S){var T=this,d=f.details,e=f.stats,a=e.loading.end?Math.max(0,self.performance.now()-e.loading.end):0;if(d.advancedDateTime=Date.now()-a,d.live||S!=null&&S.live){if(d.reloaded(S),S&&this.log("live playlist "+m+" "+(d.advanced?"REFRESHED "+d.lastPartSn+"-"+d.lastPartIndex:"MISSED")),S&&d.fragments.length>0&&Object(A.mergeDetails)(S,d),!this.canLoad||!d.live)return;var t,o=void 0,u=void 0;if(d.canBlockReload&&d.endSN&&d.advanced){var i=this.hls.config.lowLatencyMode,l=d.lastPartSn,p=d.endSN,g=d.lastPartIndex,v=l===p;g!==-1?(o=v?p+1:l,u=v?i?0:g:g+1):o=p+1;var r=d.age,n=r+d.ageHeader,c=Math.min(n-d.partTarget,1.5*d.targetduration);if(c>0){if(S&&c>S.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+S.tuneInGoal+" to: "+c+" with playlist age: "+d.age),c=0;else{var E=Math.floor(c/d.targetduration);o+=E,u!==void 0&&(u+=Math.round(c%d.targetduration/d.partTarget)),this.log("CDN Tune-in age: "+d.ageHeader+"s last advanced "+r.toFixed(2)+"s goal: "+c+" skip sn "+E+" to part "+u)}d.tuneInGoal=c}if(t=this.getDeliveryDirectives(d,f.deliveryDirectives,o,u),i||!v)return void this.loadPlaylist(t)}else t=this.getDeliveryDirectives(d,f.deliveryDirectives,o,u);var y=Object(A.computeReloadInterval)(d,e);o!==void 0&&d.canBlockReload&&(y-=d.partTarget||1),this.log("reload live playlist "+m+" in "+Math.round(y)+" ms"),this.timer=self.setTimeout(function(){return T.loadPlaylist(t)},y)}else this.clearTimer()},L.getDeliveryDirectives=function(m,f,S,T){var d=Object(b.getSkipValue)(m,S);return f!=null&&f.skip&&m.deltaUpdateFailed&&(S=f.msn,T=f.part,d=b.HlsSkip.No),new b.HlsUrlParameters(S,T,d)},L.retryLoadingOrFail=function(m){var f,S=this,T=this.hls.config,d=this.retryCount-1&&(f=m.context)!==null&&f!==void 0&&f.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+m.details+'"'),this.loadPlaylist();else{var e=Math.min(Math.pow(2,this.retryCount)*T.levelLoadingRetryDelay,T.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return S.loadPlaylist()},e),this.warn("retry playlist loading #"+this.retryCount+" in "+e+' ms after "'+m.details+'"')}else this.warn('cannot recover from error "'+m.details+'"'),this.clearTimer(),m.fatal=!0;return d},s}()},"./src/controller/base-stream-controller.ts":function(N,w,h){h.r(w),h.d(w,"State",function(){return i}),h.d(w,"default",function(){return l});var R=h("./src/polyfills/number.ts"),b=h("./src/task-loop.ts"),A=h("./src/controller/fragment-tracker.ts"),D=h("./src/utils/buffer-helper.ts"),I=h("./src/utils/logger.ts"),_=h("./src/events.ts"),s=h("./src/errors.ts"),L=h("./src/types/transmuxer.ts"),m=h("./src/utils/mp4-tools.ts"),f=h("./src/utils/discontinuities.ts"),S=h("./src/controller/fragment-finders.ts"),T=h("./src/controller/level-helper.ts"),d=h("./src/loader/fragment-loader.ts"),e=h("./src/crypt/decrypter.ts"),a=h("./src/utils/time-ranges.ts"),t=h("./src/types/loader.ts");function o(p,g){for(var v=0;vk.start+k.duration+M;(P0&&P&&P.key&&P.iv&&P.method==="AES-128"){var F=self.performance.now();return k.decrypter.webCryptoDecrypt(new Uint8Array(O),P.key.buffer,P.iv.buffer).then(function(M){var B=self.performance.now();return C.trigger(_.Events.FRAG_DECRYPTED,{frag:y,payload:M,stats:{tstart:F,tdecrypt:B}}),x.payload=M,x})}return x}).then(function(x){var C=k.fragCurrent,O=k.hls,P=k.levels;if(!P)throw new Error("init load aborted, missing levels");var F=P[y.level].details;console.assert(F,"Level details are defined when init segment is loaded");var M=y.stats;k.state=i.IDLE,k.fragLoadError=0,y.data=new Uint8Array(x.payload),M.parsing.start=M.buffering.start=self.performance.now(),M.parsing.end=M.buffering.end=self.performance.now(),x.frag===C&&O.trigger(_.Events.FRAG_BUFFERED,{stats:M,frag:C,part:null,id:y.type}),k.tick()}).catch(function(x){k.warn(x),k.resetFragmentLoading(y)})},E.fragContextChanged=function(y){var k=this.fragCurrent;return!y||!k||y.level!==k.level||y.sn!==k.sn||y.urlId!==k.urlId},E.fragBufferedComplete=function(y,k){var x=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+y.type+" sn: "+y.sn+(k?" part: "+k.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+y.level+" "+a.default.toString(D.BufferHelper.getBuffered(x))),this.state=i.IDLE,this.tick()},E._handleFragmentLoadComplete=function(y){var k=this.transmuxer;if(k){var x=y.frag,C=y.part,O=y.partsLoaded,P=!O||O.length===0||O.some(function(M){return!M}),F=new L.ChunkMetadata(x.level,x.sn,x.stats.chunkCount+1,0,C?C.index:-1,!P);k.flush(F)}},E._handleFragmentLoadProgress=function(y){},E._doFragLoad=function(y,k,x,C){var O=this;if(x===void 0&&(x=null),!this.levels)throw new Error("frag load aborted, missing levels");if(x=Math.max(y.start,x||0),this.config.lowLatencyMode&&k){var P=k.partList;if(P&&C){x>y.end&&k.fragmentHint&&(y=k.fragmentHint);var F=this.getNextPart(P,y,x);if(F>-1){var M=P[F];return this.log("Loading part sn: "+y.sn+" p: "+M.index+" cc: "+y.cc+" of playlist ["+k.startSN+"-"+k.endSN+"] parts [0-"+F+"-"+(P.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+y.level+", target: "+parseFloat(x.toFixed(3))),this.nextLoadPosition=M.start+M.duration,this.state=i.FRAG_LOADING,this.hls.trigger(_.Events.FRAG_LOADING,{frag:y,part:P[F],targetBufferTime:x}),this.doFragPartsLoad(y,P,F,C).catch(function(B){return O.handleFragLoadError(B)})}if(!y.url||this.loadedEndOfParts(P,x))return Promise.resolve(null)}}return this.log("Loading fragment "+y.sn+" cc: "+y.cc+" "+(k?"of ["+k.startSN+"-"+k.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+y.level+", target: "+parseFloat(x.toFixed(3))),Object(R.isFiniteNumber)(y.sn)&&!this.bitrateTest&&(this.nextLoadPosition=y.start+y.duration),this.state=i.FRAG_LOADING,this.hls.trigger(_.Events.FRAG_LOADING,{frag:y,targetBufferTime:x}),this.fragmentLoader.load(y,C).catch(function(B){return O.handleFragLoadError(B)})},E.doFragPartsLoad=function(y,k,x,C){var O=this;return new Promise(function(P,F){var M=[];(function B(U){var j=k[U];O.fragmentLoader.loadPart(y,j,C).then(function(V){M[j.index]=V;var H=V.part;O.hls.trigger(_.Events.FRAG_LOADED,V);var X=k[U+1];if(!X||X.fragment!==y)return P({frag:y,part:H,partsLoaded:M});B(U+1)}).catch(F)})(x)})},E.handleFragLoadError=function(y){var k=y.data;return k&&k.details===s.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(k.frag,k.part):this.hls.trigger(_.Events.ERROR,k),null},E._handleTransmuxerFlush=function(y){var k=this.getCurrentContext(y);if(k&&this.state===i.PARSING){var x=k.frag,C=k.part,O=k.level,P=self.performance.now();x.stats.parsing.end=P,C&&(C.stats.parsing.end=P),this.updateLevelTiming(x,C,O,y.partial)}else this.fragCurrent||(this.state=i.IDLE)},E.getCurrentContext=function(y){var k=this.levels,x=y.level,C=y.sn,O=y.part;if(!k||!k[x])return this.warn("Levels object was unset while buffering fragment "+C+" of level "+x+". The current chunk will not be buffered."),null;var P=k[x],F=O>-1?Object(T.getPartWith)(P,C,O):null,M=F?F.fragment:Object(T.getFragmentWithSN)(P,C,this.fragCurrent);return M?{frag:M,part:F,level:P}:null},E.bufferFragmentData=function(y,k,x,C){if(y&&this.state===i.PARSING){var O=y.data1,P=y.data2,F=O;if(O&&P&&(F=Object(m.appendUint8Array)(O,P)),F&&F.length){var M={type:y.type,frag:k,part:x,chunkMeta:C,parent:k.type,data:F};this.hls.trigger(_.Events.BUFFER_APPENDING,M),y.dropped&&y.independent&&!x&&this.flushBufferGap(k)}}},E.flushBufferGap=function(y){var k=this.media;if(k)if(D.BufferHelper.isBuffered(k,k.currentTime)){var x=k.currentTime,C=D.BufferHelper.bufferInfo(k,x,0),O=y.duration,P=Math.min(2*this.config.maxFragLookUpTolerance,.25*O),F=Math.max(Math.min(y.start-P,C.end-P),x+P);y.start-F>P&&this.flushMainBuffer(F,y.start)}else this.flushMainBuffer(0,y.start)},E.getFwdBufferInfo=function(y,k){var x=this.config,C=this.getLoadPosition();if(!Object(R.isFiniteNumber)(C))return null;var O=D.BufferHelper.bufferInfo(y,C,x.maxBufferHole);if(O.len===0&&O.nextStart!==void 0){var P=this.fragmentTracker.getBufferedFrag(C,k);if(P&&O.nextStart=x&&(k.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+k.maxMaxBufferLength+"s"),!0)},E.getNextFragment=function(y,k){var x,C,O=k.fragments,P=O.length;if(!P)return null;var F,M=this.config,B=O[0].start;if(k.live){var U=M.initialLiveManifestSize;if(P-1&&xx.start&&x.loaded},E.getInitialLiveFragment=function(y,k){var x=this.fragPrevious,C=null;if(x){if(y.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+x.programDateTime),C=Object(S.findFragmentByPDT)(k,x.endProgramDateTime,this.config.maxFragLookUpTolerance)),!C){var O=x.sn+1;if(O>=y.startSN&&O<=y.endSN){var P=k[O-y.startSN];x.cc===P.cc&&(C=P,this.log("Live playlist, switching playlist, load frag with next SN: "+C.sn))}C||(C=Object(S.findFragWithCC)(k,x.cc))&&this.log("Live playlist, switching playlist, load frag with same CC: "+C.sn)}}else{var F=this.hls.liveSyncPosition;F!==null&&(C=this.getFragmentAtPosition(F,this.bitrateTest?y.fragmentEnd:y.edge,y))}return C},E.getFragmentAtPosition=function(y,k,x){var C,O=this.config,P=this.fragPrevious,F=x.fragments,M=x.endSN,B=x.fragmentHint,U=O.maxFragLookUpTolerance,j=!!(O.lowLatencyMode&&x.partList&&B);if(j&&B&&!this.bitrateTest&&(F=F.concat(B),M=B.sn),yk-U?0:U;C=Object(S.findFragmentByPTS)(P,F,y,V)}else C=F[F.length-1];if(C){var H=C.sn-x.startSN,X=P&&C.level===P.level,q=F[H+1];if(this.fragmentTracker.getState(C)===A.FragmentState.BACKTRACKED){C=null;for(var $=H;F[$]&&this.fragmentTracker.getState(F[$])===A.FragmentState.BACKTRACKED;)C=P?F[$--]:F[--$];C||(C=q)}else P&&C.sn===P.sn&&!j&&X&&(C.sn=P-k.maxFragLookUpTolerance&&O<=F;if(C!==null&&x.duration>C&&(O"+y.startSN+" prev-sn: "+(O?O.sn:"na")+" fragments: "+F),j}return M},E.waitForCdnTuneIn=function(y){return y.live&&y.canBlockReload&&y.tuneInGoal>Math.max(y.partHoldBack,3*y.partTarget)},E.setStartPosition=function(y,k){var x=this.startPosition;if(x"+y))}}])&&o(n.prototype,c),r}(b.default)},"./src/controller/buffer-controller.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return S});var R=h("./src/polyfills/number.ts"),b=h("./src/events.ts"),A=h("./src/utils/logger.ts"),D=h("./src/errors.ts"),I=h("./src/utils/buffer-helper.ts"),_=h("./src/utils/mediasource-helper.ts"),s=h("./src/loader/fragment.ts"),L=h("./src/controller/buffer-operation-queue.ts"),m=Object(_.getMediaSource)(),f=/([ha]vc.)(?:\.[^.,]+)+/,S=function(){function T(e){var a=this;this.details=null,this._objectUrl=null,this.operationQueue=void 0,this.listeners=void 0,this.hls=void 0,this.bufferCodecEventsExpected=0,this._bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var t=a.hls,o=a.media,u=a.mediaSource;A.logger.log("[buffer-controller]: Media source opened"),o&&(a.updateMediaElementDuration(),t.trigger(b.Events.MEDIA_ATTACHED,{media:o})),u&&u.removeEventListener("sourceopen",a._onMediaSourceOpen),a.checkPendingTracks()},this._onMediaSourceClose=function(){A.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){A.logger.log("[buffer-controller]: Media source ended")},this.hls=e,this._initSourceBuffer(),this.registerListeners()}var d=T.prototype;return d.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},d.destroy=function(){this.unregisterListeners(),this.details=null},d.registerListeners=function(){var e=this.hls;e.on(b.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(b.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(b.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(b.Events.BUFFER_RESET,this.onBufferReset,this),e.on(b.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.on(b.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.on(b.Events.BUFFER_EOS,this.onBufferEos,this),e.on(b.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(b.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(b.Events.FRAG_PARSED,this.onFragParsed,this),e.on(b.Events.FRAG_CHANGED,this.onFragChanged,this)},d.unregisterListeners=function(){var e=this.hls;e.off(b.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(b.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(b.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(b.Events.BUFFER_RESET,this.onBufferReset,this),e.off(b.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.off(b.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.off(b.Events.BUFFER_EOS,this.onBufferEos,this),e.off(b.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(b.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(b.Events.FRAG_PARSED,this.onFragParsed,this),e.off(b.Events.FRAG_CHANGED,this.onFragChanged,this)},d._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new L.default(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]}},d.onManifestParsed=function(e,a){var t=2;(a.audio&&!a.video||!a.altAudio)&&(t=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=t,this.details=null,A.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},d.onMediaAttaching=function(e,a){var t=this.media=a.media;if(t&&m){var o=this.mediaSource=new m;o.addEventListener("sourceopen",this._onMediaSourceOpen),o.addEventListener("sourceended",this._onMediaSourceEnded),o.addEventListener("sourceclose",this._onMediaSourceClose),t.src=self.URL.createObjectURL(o),this._objectUrl=t.src}},d.onMediaDetaching=function(){var e=this.media,a=this.mediaSource,t=this._objectUrl;if(a){if(A.logger.log("[buffer-controller]: media source detaching"),a.readyState==="open")try{a.endOfStream()}catch(o){A.logger.warn("[buffer-controller]: onMediaDetaching: "+o.message+" while calling endOfStream")}this.onBufferReset(),a.removeEventListener("sourceopen",this._onMediaSourceOpen),a.removeEventListener("sourceended",this._onMediaSourceEnded),a.removeEventListener("sourceclose",this._onMediaSourceClose),e&&(t&&self.URL.revokeObjectURL(t),e.src===t?(e.removeAttribute("src"),e.load()):A.logger.warn("[buffer-controller]: media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={}}this.hls.trigger(b.Events.MEDIA_DETACHED,void 0)},d.onBufferReset=function(){var e=this;this.getSourceBufferTypes().forEach(function(a){var t=e.sourceBuffer[a];try{t&&(e.removeBufferListeners(a),e.mediaSource&&e.mediaSource.removeSourceBuffer(t),e.sourceBuffer[a]=void 0)}catch(o){A.logger.warn("[buffer-controller]: Failed to reset the "+a+" buffer",o)}}),this._initSourceBuffer()},d.onBufferCodecs=function(e,a){var t=this,o=this.getSourceBufferTypes().length;Object.keys(a).forEach(function(u){if(o){var i=t.tracks[u];if(i&&typeof i.buffer.changeType=="function"){var l=a[u],p=l.codec,g=l.levelCodec,v=l.container;if((i.levelCodec||i.codec).replace(f,"$1")!==(g||p).replace(f,"$1")){var r=v+";codecs="+(g||p);t.appendChangeType(u,r)}}}else t.pendingTracks[u]=a[u]}),o||(this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&this.mediaSource.readyState==="open"&&this.checkPendingTracks())},d.appendChangeType=function(e,a){var t=this,o=this.operationQueue,u={execute:function(){var i=t.sourceBuffer[e];i&&(A.logger.log("[buffer-controller]: changing "+e+" sourceBuffer type to "+a),i.changeType(a)),o.shiftAndExecuteNext(e)},onStart:function(){},onComplete:function(){},onError:function(i){A.logger.warn("[buffer-controller]: Failed to change "+e+" SourceBuffer type",i)}};o.append(u,e)},d.onBufferAppending=function(e,a){var t=this,o=this.hls,u=this.operationQueue,i=this.tracks,l=a.data,p=a.type,g=a.frag,v=a.part,r=a.chunkMeta,n=r.buffering[p],c=self.performance.now();n.start=c;var E=g.stats.buffering,y=v?v.stats.buffering:null;E.start===0&&(E.start=c),y&&y.start===0&&(y.start=c);var k=i.audio,x=p==="audio"&&r.id===1&&(k==null?void 0:k.container)==="audio/mpeg",C={execute:function(){if(n.executeStart=self.performance.now(),x){var O=t.sourceBuffer[p];if(O){var P=g.start-O.timestampOffset;Math.abs(P)>=.1&&(A.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+g.start+" (delta: "+P+") sn: "+g.sn+")"),O.timestampOffset=g.start)}}t.appendExecutor(l,p)},onStart:function(){},onComplete:function(){var O=self.performance.now();n.executeEnd=n.end=O,E.first===0&&(E.first=O),y&&y.first===0&&(y.first=O);var P=t.sourceBuffer,F={};for(var M in P)F[M]=I.BufferHelper.getBuffered(P[M]);t.appendError=0,t.hls.trigger(b.Events.BUFFER_APPENDED,{type:p,frag:g,part:v,chunkMeta:r,parent:g.type,timeRanges:F})},onError:function(O){A.logger.error("[buffer-controller]: Error encountered while trying to append to the "+p+" SourceBuffer",O);var P={type:D.ErrorTypes.MEDIA_ERROR,parent:g.type,details:D.ErrorDetails.BUFFER_APPEND_ERROR,err:O,fatal:!1};O.code===DOMException.QUOTA_EXCEEDED_ERR?P.details=D.ErrorDetails.BUFFER_FULL_ERROR:(t.appendError++,P.details=D.ErrorDetails.BUFFER_APPEND_ERROR,t.appendError>o.config.appendErrorMaxRetry&&(A.logger.error("[buffer-controller]: Failed "+o.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),P.fatal=!0)),o.trigger(b.Events.ERROR,P)}};u.append(C,p)},d.onBufferFlushing=function(e,a){var t=this,o=this.operationQueue,u=function(i){return{execute:t.removeExecutor.bind(t,i,a.startOffset,a.endOffset),onStart:function(){},onComplete:function(){t.hls.trigger(b.Events.BUFFER_FLUSHED,{type:i})},onError:function(l){A.logger.warn("[buffer-controller]: Failed to remove from "+i+" SourceBuffer",l)}}};a.type?o.append(u(a.type),a.type):this.getSourceBufferTypes().forEach(function(i){o.append(u(i),i)})},d.onFragParsed=function(e,a){var t=this,o=a.frag,u=a.part,i=[],l=u?u.elementaryStreams:o.elementaryStreams;l[s.ElementaryStreamTypes.AUDIOVIDEO]?i.push("audiovideo"):(l[s.ElementaryStreamTypes.AUDIO]&&i.push("audio"),l[s.ElementaryStreamTypes.VIDEO]&&i.push("video")),i.length===0&&A.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+o.type+" level: "+o.level+" sn: "+o.sn),this.blockBuffers(function(){var p=self.performance.now();o.stats.buffering.end=p,u&&(u.stats.buffering.end=p);var g=u?u.stats:o.stats;t.hls.trigger(b.Events.FRAG_BUFFERED,{frag:o,part:u,stats:g,id:o.type})},i)},d.onFragChanged=function(e,a){this.flushBackBuffer()},d.onBufferEos=function(e,a){var t=this;this.getSourceBufferTypes().reduce(function(o,u){var i=t.sourceBuffer[u];return a.type&&a.type!==u||i&&!i.ended&&(i.ended=!0,A.logger.log("[buffer-controller]: "+u+" sourceBuffer now EOS")),o&&!(i&&!i.ended)},!0)&&this.blockBuffers(function(){var o=t.mediaSource;o&&o.readyState==="open"&&o.endOfStream()})},d.onLevelUpdated=function(e,a){var t=a.details;t.fragments.length&&(this.details=t,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},d.flushBackBuffer=function(){var e=this.hls,a=this.details,t=this.media,o=this.sourceBuffer;if(t&&a!==null){var u=this.getSourceBufferTypes();if(u.length){var i=a.live&&e.config.liveBackBufferLength!==null?e.config.liveBackBufferLength:e.config.backBufferLength;if(Object(R.isFiniteNumber)(i)&&!(i<0)){var l=t.currentTime,p=a.levelTargetDuration,g=Math.max(i,p),v=Math.floor(l/p)*p-g;u.forEach(function(r){var n=o[r];if(n){var c=I.BufferHelper.getBuffered(n);c.length>0&&v>c.start(0)&&(e.trigger(b.Events.BACK_BUFFER_REACHED,{bufferEnd:v}),a.live&&e.trigger(b.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:v}),e.trigger(b.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:v,type:r}))}})}}}},d.updateMediaElementDuration=function(){if(this.details&&this.media&&this.mediaSource&&this.mediaSource.readyState==="open"){var e=this.details,a=this.hls,t=this.media,o=this.mediaSource,u=e.fragments[0].start+e.totalduration,i=t.duration,l=Object(R.isFiniteNumber)(o.duration)?o.duration:0;e.live&&a.config.liveDurationInfinity?(A.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),o.duration=1/0,this.updateSeekableRange(e)):(u>l&&u>i||!Object(R.isFiniteNumber)(i))&&(A.logger.log("[buffer-controller]: Updating Media Source duration to "+u.toFixed(3)),o.duration=u)}},d.updateSeekableRange=function(e){var a=this.mediaSource,t=e.fragments;if(t.length&&e.live&&a!=null&&a.setLiveSeekableRange){var o=Math.max(0,t[0].start),u=Math.max(o,o+e.totalduration);a.setLiveSeekableRange(o,u)}},d.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,a=this.operationQueue,t=this.pendingTracks,o=Object.keys(t).length;if(o&&!e||o===2){this.createSourceBuffers(t),this.pendingTracks={};var u=this.getSourceBufferTypes();if(u.length===0)return void this.hls.trigger(b.Events.ERROR,{type:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,reason:"could not create source buffer for media codec(s)"});u.forEach(function(i){a.executeNext(i)})}},d.createSourceBuffers=function(e){var a=this.sourceBuffer,t=this.mediaSource;if(!t)throw Error("createSourceBuffers called when mediaSource was null");var o=0;for(var u in e)if(!a[u]){var i=e[u];if(!i)throw Error("source buffer exists for track "+u+", however track does not");var l=i.levelCodec||i.codec,p=i.container+";codecs="+l;A.logger.log("[buffer-controller]: creating sourceBuffer("+p+")");try{var g=a[u]=t.addSourceBuffer(p),v=u;this.addBufferListener(v,"updatestart",this._onSBUpdateStart),this.addBufferListener(v,"updateend",this._onSBUpdateEnd),this.addBufferListener(v,"error",this._onSBUpdateError),this.tracks[u]={buffer:g,codec:l,container:i.container,levelCodec:i.levelCodec,id:i.id},o++}catch(r){A.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+r.message),this.hls.trigger(b.Events.ERROR,{type:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:r,mimeType:p})}}o&&this.hls.trigger(b.Events.BUFFER_CREATED,{tracks:this.tracks})},d._onSBUpdateStart=function(e){this.operationQueue.current(e).onStart()},d._onSBUpdateEnd=function(e){var a=this.operationQueue;a.current(e).onComplete(),a.shiftAndExecuteNext(e)},d._onSBUpdateError=function(e,a){A.logger.error("[buffer-controller]: "+e+" SourceBuffer error",a),this.hls.trigger(b.Events.ERROR,{type:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var t=this.operationQueue.current(e);t&&t.onError(a)},d.removeExecutor=function(e,a,t){var o=this.media,u=this.mediaSource,i=this.operationQueue,l=this.sourceBuffer[e];if(!o||!u||!l)return A.logger.warn("[buffer-controller]: Attempting to remove from the "+e+" SourceBuffer, but it does not exist"),void i.shiftAndExecuteNext(e);var p=Object(R.isFiniteNumber)(o.duration)?o.duration:1/0,g=Object(R.isFiniteNumber)(u.duration)?u.duration:1/0,v=Math.max(0,a),r=Math.min(t,p,g);r>v?(A.logger.log("[buffer-controller]: Removing ["+v+","+r+"] from the "+e+" SourceBuffer"),console.assert(!l.updating,e+" sourceBuffer must not be updating"),l.remove(v,r)):i.shiftAndExecuteNext(e)},d.appendExecutor=function(e,a){var t=this.operationQueue,o=this.sourceBuffer[a];if(!o)return A.logger.warn("[buffer-controller]: Attempting to append to the "+a+" SourceBuffer, but it does not exist"),void t.shiftAndExecuteNext(a);o.ended=!1,console.assert(!o.updating,a+" sourceBuffer must not be updating"),o.appendBuffer(e)},d.blockBuffers=function(e,a){var t=this;if(a===void 0&&(a=this.getSourceBufferTypes()),!a.length)return A.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),void Promise.resolve(e);var o=this.operationQueue,u=a.map(function(i){return o.appendBlocker(i)});Promise.all(u).then(function(){e(),a.forEach(function(i){var l=t.sourceBuffer[i];l&&l.updating||o.shiftAndExecuteNext(i)})})},d.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},d.addBufferListener=function(e,a,t){var o=this.sourceBuffer[e];if(o){var u=t.bind(this,e);this.listeners[e].push({event:a,listener:u}),o.addEventListener(a,u)}},d.removeBufferListeners=function(e){var a=this.sourceBuffer[e];a&&this.listeners[e].forEach(function(t){a.removeEventListener(t.event,t.listener)})},T}()},"./src/controller/buffer-operation-queue.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return b});var R=h("./src/utils/logger.ts"),b=function(){function A(I){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=I}var D=A.prototype;return D.append=function(I,_){var s=this.queues[_];s.push(I),s.length===1&&this.buffers[_]&&this.executeNext(_)},D.insertAbort=function(I,_){this.queues[_].unshift(I),this.executeNext(_)},D.appendBlocker=function(I){var _,s=new Promise(function(m){_=m}),L={execute:_,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(L,I),s},D.executeNext=function(I){var _=this.buffers,s=this.queues,L=_[I],m=s[I];if(m.length){var f=m[0];try{f.execute()}catch(S){R.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),f.onError(S),L&&L.updating||(m.shift(),this.executeNext(I))}}},D.shiftAndExecuteNext=function(I){this.queues[I].shift(),this.executeNext(I)},D.current=function(I){return this.queues[I][0]},A}()},"./src/controller/cap-level-controller.ts":function(N,w,h){h.r(w);var R=h("./src/events.ts");function b(D,I){for(var _=0;_0&&this.mediaWidth>0){var m=this.hls.levels;if(m.length){var f=this.hls;f.autoLevelCapping=this.getMaxLevel(m.length-1),f.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=f.autoLevelCapping}}},L.getMaxLevel=function(m){var f=this,S=this.hls.levels;if(!S.length)return-1;var T=S.filter(function(d,e){return D.isLevelAllowed(e,f.restrictedLevels)&&e<=m});return this.clientRect=null,D.getMaxLevelByMediaSize(T,this.mediaWidth,this.mediaHeight)},L.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},L.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},L.getDimensions=function(){if(this.clientRect)return this.clientRect;var m=this.media,f={width:0,height:0};if(m){var S=m.getBoundingClientRect();f.width=S.width,f.height=S.height,f.width||f.height||(f.width=S.right-S.left||m.width||0,f.height=S.bottom-S.top||m.height||0)}return this.clientRect=f,f},D.isLevelAllowed=function(m,f){return f===void 0&&(f=[]),f.indexOf(m)===-1},D.getMaxLevelByMediaSize=function(m,f,S){if(!m||!m.length)return-1;for(var T,d,e=m.length-1,a=0;a=f||t.height>=S)&&(T=t,!(d=m[a+1])||T.width!==d.width||T.height!==d.height)){e=a;break}}return e},I=D,s=[{key:"contentScaleFactor",get:function(){var m=1;try{m=self.devicePixelRatio}catch{}return m}}],(_=[{key:"mediaWidth",get:function(){return this.getDimensions().width*D.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*D.contentScaleFactor}}])&&b(I.prototype,_),s&&b(I,s),D}();w.default=A},"./src/controller/eme-controller.ts":function(N,w,h){h.r(w);var R=h("./src/events.ts"),b=h("./src/errors.ts"),A=h("./src/utils/logger.ts"),D=h("./src/utils/mediakeys-helper.ts");function I(s,L){for(var m=0;m3)return void this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.KEY_SYSTEM_ERROR,details:b.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0});var o=3-this._requestLicenseFailureCount+1;A.logger.warn("Retrying license request, "+o+" attempts left"),this._requestLicense(d,e)}}},f._generateLicenseRequestChallenge=function(S,T){switch(S.mediaKeySystemDomain){case D.KeySystems.WIDEVINE:return T}throw new Error("unsupported key-system: "+S.mediaKeySystemDomain)},f._requestLicense=function(S,T){A.logger.log("Requesting content license for key-system");var d=this._mediaKeysList[0];if(!d)return A.logger.error("Fatal error: Media is encrypted but no key-system access has been obtained yet"),void this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.KEY_SYSTEM_ERROR,details:b.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});try{var e=this.getLicenseServerUrl(d.mediaKeySystemDomain),a=this._createLicenseXhr(e,S,T);A.logger.log("Sending license request to URL: "+e);var t=this._generateLicenseRequestChallenge(d,S);a.send(t)}catch(o){A.logger.error("Failure requesting DRM license: "+o),this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.KEY_SYSTEM_ERROR,details:b.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0})}},f.onMediaAttached=function(S,T){if(this._emeEnabled){var d=T.media;this._media=d,d.addEventListener("encrypted",this._onMediaEncrypted)}},f.onMediaDetached=function(){var S=this._media,T=this._mediaKeysList;S&&(S.removeEventListener("encrypted",this._onMediaEncrypted),this._media=null,this._mediaKeysList=[],Promise.all(T.map(function(d){if(d.mediaKeysSession)return d.mediaKeysSession.close().catch(function(){})})).then(function(){return S.setMediaKeys(null)}).catch(function(){}))},f.onManifestParsed=function(S,T){if(this._emeEnabled){var d=T.levels.map(function(a){return a.audioCodec}).filter(function(a){return!!a}),e=T.levels.map(function(a){return a.videoCodec}).filter(function(a){return!!a});this._attemptKeySystemAccess(D.KeySystems.WIDEVINE,d,e)}},L=s,(m=[{key:"requestMediaKeySystemAccess",get:function(){if(!this._requestMediaKeySystemAccess)throw new Error("No requestMediaKeySystemAccess function configured");return this._requestMediaKeySystemAccess}}])&&I(L.prototype,m),s}();w.default=_},"./src/controller/fps-controller.ts":function(N,w,h){h.r(w);var R=h("./src/events.ts"),b=h("./src/utils/logger.ts"),A=function(){function D(_){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=_,this.registerListeners()}var I=D.prototype;return I.setStreamController=function(_){this.streamController=_},I.registerListeners=function(){this.hls.on(R.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},I.unregisterListeners=function(){this.hls.off(R.Events.MEDIA_ATTACHING,this.onMediaAttaching)},I.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},I.onMediaAttaching=function(_,s){var L=this.hls.config;if(L.capLevelOnFPSDrop){var m=s.media instanceof self.HTMLVideoElement?s.media:null;this.media=m,m&&typeof m.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),L.fpsDroppedMonitoringPeriod)}},I.checkFPS=function(_,s,L){var m=performance.now();if(s){if(this.lastTime){var f=m-this.lastTime,S=L-this.lastDroppedFrames,T=s-this.lastDecodedFrames,d=1e3*S/f,e=this.hls;if(e.trigger(R.Events.FPS_DROP,{currentDropped:S,currentDecoded:T,totalDroppedFrames:L}),d>0&&S>e.config.fpsDroppedMonitoringThreshold*T){var a=e.currentLevel;b.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+a),a>0&&(e.autoLevelCapping===-1||e.autoLevelCapping>=a)&&(a-=1,e.trigger(R.Events.FPS_DROP_LEVEL_CAPPING,{level:a,droppedLevel:e.currentLevel}),e.autoLevelCapping=a,this.streamController.nextLevelSwitch())}}this.lastTime=m,this.lastDroppedFrames=L,this.lastDecodedFrames=s}},I.checkFPSInterval=function(){var _=this.media;if(_)if(this.isVideoPlaybackQualityAvailable){var s=_.getVideoPlaybackQuality();this.checkFPS(_,s.totalVideoFrames,s.droppedVideoFrames)}else this.checkFPS(_,_.webkitDecodedFrameCount,_.webkitDroppedFrameCount)},D}();w.default=A},"./src/controller/fragment-finders.ts":function(N,w,h){h.r(w),h.d(w,"findFragmentByPDT",function(){return A}),h.d(w,"findFragmentByPTS",function(){return D}),h.d(w,"fragmentWithinToleranceTest",function(){return I}),h.d(w,"pdtWithinToleranceTest",function(){return _}),h.d(w,"findFragWithCC",function(){return s});var R=h("./src/polyfills/number.ts"),b=h("./src/utils/binary-search.ts");function A(L,m,f){if(m===null||!Array.isArray(L)||!L.length||!Object(R.isFiniteNumber)(m)||m<(L[0].programDateTime||0)||m>=(L[L.length-1].endProgramDateTime||0))return null;f=f||0;for(var S=0;SL&&f.start?-1:0}function _(L,m,f){var S=1e3*Math.min(m,f.duration+(f.deltaPTS?f.deltaPTS:0));return(f.endProgramDateTime||0)-S>L}function s(L,m){return b.default.search(L,function(f){return f.ccm?-1:0})}},"./src/controller/fragment-tracker.ts":function(N,w,h){h.r(w),h.d(w,"FragmentState",function(){return R}),h.d(w,"FragmentTracker",function(){return I});var R,b,A=h("./src/events.ts"),D=h("./src/types/loader.ts");(b=R||(R={})).NOT_LOADED="NOT_LOADED",b.BACKTRACKED="BACKTRACKED",b.APPENDING="APPENDING",b.PARTIAL="PARTIAL",b.OK="OK";var I=function(){function L(f){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=f,this._registerListeners()}var m=L.prototype;return m._registerListeners=function(){var f=this.hls;f.on(A.Events.BUFFER_APPENDED,this.onBufferAppended,this),f.on(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),f.on(A.Events.FRAG_LOADED,this.onFragLoaded,this)},m._unregisterListeners=function(){var f=this.hls;f.off(A.Events.BUFFER_APPENDED,this.onBufferAppended,this),f.off(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),f.off(A.Events.FRAG_LOADED,this.onFragLoaded,this)},m.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},m.getAppendedFrag=function(f,S){if(S===D.PlaylistLevelType.MAIN){var T=this.activeFragment,d=this.activeParts;if(!T)return null;if(d)for(var e=d.length;e--;){var a=d[e],t=a?a.end:T.appendedPTS;if(a.start<=f&&t!==void 0&&f<=t)return e>9&&(this.activeParts=d.slice(e-9)),a}else if(T.start<=f&&T.appendedPTS!==void 0&&f<=T.appendedPTS)return T}return this.getBufferedFrag(f,S)},m.getBufferedFrag=function(f,S){for(var T=this.fragments,d=Object.keys(T),e=d.length;e--;){var a=T[d[e]];if((a==null?void 0:a.body.type)===S&&a.buffered){var t=a.body;if(t.start<=f&&f<=t.end)return t}}return null},m.detectEvictedFragments=function(f,S,T){var d=this;Object.keys(this.fragments).forEach(function(e){var a=d.fragments[e];if(a)if(a.buffered){var t=a.range[f];t&&t.time.some(function(o){var u=!d.isTimeBuffered(o.startPTS,o.endPTS,S);return u&&d.removeFragment(a.body),u})}else a.body.type===T&&d.removeFragment(a.body)})},m.detectPartialFragments=function(f){var S=this,T=this.timeRanges,d=f.frag,e=f.part;if(T&&d.sn!=="initSegment"){var a=s(d),t=this.fragments[a];t&&(Object.keys(T).forEach(function(o){var u=d.elementaryStreams[o];if(u){var i=T[o],l=e!==null||u.partial===!0;t.range[o]=S.getBufferedTimes(d,e,l,i)}}),t.backtrack=t.loaded=null,Object.keys(t.range).length?t.buffered=!0:this.removeFragment(t.body))}},m.fragBuffered=function(f){var S=s(f),T=this.fragments[S];T&&(T.backtrack=T.loaded=null,T.buffered=!0)},m.getBufferedTimes=function(f,S,T,d){for(var e={time:[],partial:T},a=S?S.start:f.start,t=S?S.end:f.end,o=f.minEndPTS||t,u=f.maxStartPTS||a,i=0;i=l&&o<=p){e.time.push({startPTS:Math.max(a,d.start(i)),endPTS:Math.min(t,d.end(i))});break}if(al)e.partial=!0,e.time.push({startPTS:Math.max(a,d.start(i)),endPTS:Math.min(t,d.end(i))});else if(t<=l)break}return e},m.getPartialFragment=function(f){var S,T,d,e=null,a=0,t=this.bufferPadding,o=this.fragments;return Object.keys(o).forEach(function(u){var i=o[u];i&&_(i)&&(T=i.body.start-t,d=i.body.end+t,f>=T&&f<=d&&(S=Math.min(f-T,d-f),a<=S&&(e=i.body,a=S)))}),e},m.getState=function(f){var S=s(f),T=this.fragments[S];return T?T.buffered?_(T)?R.PARTIAL:R.OK:T.backtrack?R.BACKTRACKED:R.APPENDING:R.NOT_LOADED},m.backtrack=function(f,S){var T=s(f),d=this.fragments[T];if(!d||d.backtrack)return null;var e=d.backtrack=S||d.loaded;return d.loaded=null,e},m.getBacktrackData=function(f){var S=s(f),T=this.fragments[S];if(T){var d,e=T.backtrack;if(e!=null&&(d=e.payload)!==null&&d!==void 0&&d.byteLength)return e;this.removeFragment(f)}return null},m.isTimeBuffered=function(f,S,T){for(var d,e,a=0;a=d&&S<=e)return!0;if(S<=d)return!1}return!1},m.onFragLoaded=function(f,S){var T=S.frag,d=S.part;if(T.sn!=="initSegment"&&!T.bitrateTest&&!d){var e=s(T);this.fragments[e]={body:T,loaded:S,backtrack:null,buffered:!1,range:Object.create(null)}}},m.onBufferAppended=function(f,S){var T=this,d=S.frag,e=S.part,a=S.timeRanges;if(d.type===D.PlaylistLevelType.MAIN)if(this.activeFragment=d,e){var t=this.activeParts;t||(this.activeParts=t=[]),t.push(e)}else this.activeParts=null;this.timeRanges=a,Object.keys(a).forEach(function(o){var u=a[o];if(T.detectEvictedFragments(o,u),!e)for(var i=0;if&&d.removeFragment(t)}})},m.removeFragment=function(f){var S=s(f);f.stats.loaded=0,f.clearElementaryStreamInfo(),delete this.fragments[S]},m.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},L}();function _(L){var m,f;return L.buffered&&(((m=L.range.video)===null||m===void 0?void 0:m.partial)||((f=L.range.audio)===null||f===void 0?void 0:f.partial))}function s(L){return L.type+"_"+L.level+"_"+L.urlId+"_"+L.sn}},"./src/controller/gap-controller.ts":function(N,w,h){h.r(w),h.d(w,"STALL_MINIMUM_DURATION_MS",function(){return I}),h.d(w,"MAX_START_GAP_JUMP",function(){return _}),h.d(w,"SKIP_BUFFER_HOLE_STEP_SECONDS",function(){return s}),h.d(w,"SKIP_BUFFER_RANGE_START",function(){return L}),h.d(w,"default",function(){return m});var R=h("./src/utils/buffer-helper.ts"),b=h("./src/errors.ts"),A=h("./src/events.ts"),D=h("./src/utils/logger.ts"),I=250,_=2,s=.1,L=.05,m=function(){function f(T,d,e,a){this.config=void 0,this.media=void 0,this.fragmentTracker=void 0,this.hls=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.config=T,this.media=d,this.fragmentTracker=e,this.hls=a}var S=f.prototype;return S.destroy=function(){this.hls=this.fragmentTracker=this.media=null},S.poll=function(T){var d=this.config,e=this.media,a=this.stalled,t=e.currentTime,o=e.seeking,u=this.seeking&&!o,i=!this.seeking&&o;if(this.seeking=o,t===T){if((i||u)&&(this.stalled=null),!e.paused&&!e.ended&&e.playbackRate!==0&&R.BufferHelper.getBuffered(e).length){var l=R.BufferHelper.bufferInfo(e,t,0),p=l.len>0,g=l.nextStart||0;if(p||g){if(o){var v=l.len>_,r=!g||g-t>_&&!this.fragmentTracker.getPartialFragment(t);if(v||r)return;this.moved=!1}if(!this.moved&&this.stalled!==null){var n,c=Math.max(g,l.start||0)-t,E=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,y=!(E==null||(n=E.details)===null||n===void 0)&&n.live?2*E.details.targetduration:_;if(c>0&&c<=y)return void this._trySkipBufferHole(null)}var k=self.performance.now();if(a!==null){var x=k-a;!o&&x>=I&&this._reportStall(l.len);var C=R.BufferHelper.bufferInfo(e,t,d.maxBufferHole);this._tryFixBufferStall(C,x)}else this.stalled=k}}}else if(this.moved=!0,a!==null){if(this.stallReported){var O=self.performance.now()-a;D.logger.warn("playback not stuck anymore @"+t+", after "+Math.round(O)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}},S._tryFixBufferStall=function(T,d){var e=this.config,a=this.fragmentTracker,t=this.media.currentTime,o=a.getPartialFragment(t);o&&this._trySkipBufferHole(o)||T.len>e.maxBufferHole&&d>1e3*e.highBufferWatchdogPeriod&&(D.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())},S._reportStall=function(T){var d=this.hls,e=this.media;this.stallReported||(this.stallReported=!0,D.logger.warn("Playback stalling at @"+e.currentTime+" due to low buffer (buffer="+T+")"),d.trigger(A.Events.ERROR,{type:b.ErrorTypes.MEDIA_ERROR,details:b.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:T}))},S._trySkipBufferHole=function(T){for(var d=this.config,e=this.hls,a=this.media,t=a.currentTime,o=0,u=R.BufferHelper.getBuffered(a),i=0;i=o&&t.05&&this.forwardBufferLength>1){var i=Math.min(2,Math.max(1,a)),l=Math.round(2/(1+Math.exp(-.75*o-this.edgeStalled))*20)/20;f.playbackRate=Math.min(i,Math.max(1,l))}else f.playbackRate!==1&&f.playbackRate!==0&&(f.playbackRate=1)}}}}},m.estimateLiveEdge=function(){var f=this.levelDetails;return f===null?null:f.edge+f.age},m.computeLatency=function(){var f=this.estimateLiveEdge();return f===null?null:f-this.currentTime},s=_,(L=[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var f=this.config,S=this.levelDetails;return f.liveMaxLatencyDuration!==void 0?f.liveMaxLatencyDuration:S?f.liveMaxLatencyDurationCount*S.targetduration:0}},{key:"targetLatency",get:function(){var f=this.levelDetails;if(f===null)return null;var S=f.holdBack,T=f.partHoldBack,d=f.targetduration,e=this.config,a=e.liveSyncDuration,t=e.liveSyncDurationCount,o=e.lowLatencyMode,u=this.hls.userConfig,i=o&&T||S;(u.liveSyncDuration||u.liveSyncDurationCount||i===0)&&(i=a!==void 0?a:t*d);var l=d;return i+Math.min(1*this.stallCount,l)}},{key:"liveSyncPosition",get:function(){var f=this.estimateLiveEdge(),S=this.targetLatency,T=this.levelDetails;if(f===null||S===null||T===null)return null;var d=T.edge,e=f-S-this.edgeStalled,a=d-T.totalduration,t=d-(this.config.lowLatencyMode&&T.partTarget||T.targetduration);return Math.min(Math.max(a,e),t)}},{key:"drift",get:function(){var f=this.levelDetails;return f===null?1:f.drift}},{key:"edgeStalled",get:function(){var f=this.levelDetails;if(f===null)return 0;var S=3*(this.config.lowLatencyMode&&f.partTarget||f.targetduration);return Math.max(f.age-S,0)}},{key:"forwardBufferLength",get:function(){var f=this.media,S=this.levelDetails;if(!f||!S)return 0;var T=f.buffered.length;return T?f.buffered.end(T-1):S.edge-this.currentTime}}])&&D(s.prototype,L),_}()},"./src/controller/level-controller.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return T});var R=h("./src/types/level.ts"),b=h("./src/events.ts"),A=h("./src/errors.ts"),D=h("./src/utils/codecs.ts"),I=h("./src/controller/level-helper.ts"),_=h("./src/controller/base-playlist-controller.ts"),s=h("./src/types/loader.ts");function L(){return(L=Object.assign||function(d){for(var e=1;e0){g=r[0].bitrate,r.sort(function(F,M){return F.bitrate-M.bitrate}),this._levels=r;for(var C=0;Cthis.hls.config.fragLoadingMaxRetry&&(r=p.frag.level)):r=p.frag.level}break;case A.ErrorDetails.LEVEL_LOAD_ERROR:case A.ErrorDetails.LEVEL_LOAD_TIMEOUT:g&&(g.deliveryDirectives&&(c=!1),r=g.level),n=!0;break;case A.ErrorDetails.REMUX_ALLOC_ERROR:r=p.level,n=!0}r!==void 0&&this.recoverLevel(p,r,n,c)}}},i.recoverLevel=function(l,p,g,v){var r=l.details,n=this._levels[p];if(n.loadError++,g){if(!this.retryLoadingOrFail(l))return void(this.currentLevelIndex=-1);l.levelRetry=!0}if(v){var c=n.url.length;if(c>1&&n.loadError1){var v=(p.urlId+1)%g;this.warn("Switching to redundant URL-id "+v),this._levels.forEach(function(r){r.urlId=v}),this.level=l}},i.onFragLoaded=function(l,p){var g=p.frag;if(g!==void 0&&g.type===s.PlaylistLevelType.MAIN){var v=this._levels[g.level];v!==void 0&&(v.fragmentError=0,v.loadError=0)}},i.onLevelLoaded=function(l,p){var g,v,r=p.level,n=p.details,c=this._levels[r];if(!c)return this.warn("Invalid level index "+r),void((v=p.deliveryDirectives)!==null&&v!==void 0&&v.skip&&(n.deltaUpdateFailed=!0));r===this.currentLevelIndex?(c.fragmentError===0&&(c.loadError=0,this.retryCount=0),this.playlistLoaded(r,p,c.details)):(g=p.deliveryDirectives)!==null&&g!==void 0&&g.skip&&(n.deltaUpdateFailed=!0)},i.onAudioTrackSwitched=function(l,p){var g=this.hls.levels[this.currentLevelIndex];if(g&&g.audioGroupIds){for(var v=-1,r=this.hls.audioTracks[p.id].groupId,n=0;n0){var v=g.urlId,r=g.url[v];if(l)try{r=l.addDirectives(r)}catch(n){this.warn("Could not construct new URL with HLS Delivery Directives: "+n)}this.log("Attempt loading level index "+p+(l?" at sn "+l.msn+" part "+l.part:"")+" with URL-id "+v+" "+r),this.clearTimer(),this.hls.trigger(b.Events.LEVEL_LOADING,{url:r,level:p,id:v,deliveryDirectives:l||null})}},i.removeLevel=function(l,p){var g=function(r,n){return n!==p},v=this._levels.filter(function(r,n){return n!==l||r.url.length>1&&p!==void 0&&(r.url=r.url.filter(g),r.audioGroupIds&&(r.audioGroupIds=r.audioGroupIds.filter(g)),r.textGroupIds&&(r.textGroupIds=r.textGroupIds.filter(g)),r.urlId=0,!0)}).map(function(r,n){var c=r.details;return c!=null&&c.fragments&&c.fragments.forEach(function(E){E.level=n}),r});this._levels=v,this.hls.trigger(b.Events.LEVELS_UPDATED,{levels:v})},o=t,(u=[{key:"levels",get:function(){return this._levels.length===0?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(l){var p,g=this._levels;if(g.length!==0&&(this.currentLevelIndex!==l||(p=g[l])===null||p===void 0||!p.details)){if(l<0||l>=g.length){var v=l<0;if(this.hls.trigger(b.Events.ERROR,{type:A.ErrorTypes.OTHER_ERROR,details:A.ErrorDetails.LEVEL_SWITCH_ERROR,level:l,fatal:v,reason:"invalid level idx"}),v)return;l=Math.min(l,g.length-1)}this.clearTimer();var r=this.currentLevelIndex,n=g[r],c=g[l];this.log("switching to level "+l+" from "+r),this.currentLevelIndex=l;var E=L({},c,{level:l,maxBitrate:c.maxBitrate,uri:c.uri,urlId:c.urlId});delete E._urlId,this.hls.trigger(b.Events.LEVEL_SWITCHING,E);var y=c.details;if(!y||y.live){var k=this.switchParams(c.uri,n==null?void 0:n.details);this.loadPlaylist(k)}}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(l){this.manualLevelIndex=l,this._startLevel===void 0&&(this._startLevel=l),l!==-1&&(this.level=l)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(l){this._firstLevel=l}},{key:"startLevel",get:function(){if(this._startLevel===void 0){var l=this.hls.config.startLevel;return l!==void 0?l:this._firstLevel}return this._startLevel},set:function(l){this._startLevel=l}},{key:"nextLoadLevel",get:function(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(l){this.level=l,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=l)}}])&&m(o.prototype,u),t}(_.default)},"./src/controller/level-helper.ts":function(N,w,h){h.r(w),h.d(w,"addGroupId",function(){return A}),h.d(w,"assignTrackIdsByGroup",function(){return D}),h.d(w,"updatePTS",function(){return I}),h.d(w,"updateFragPTSDTS",function(){return s}),h.d(w,"mergeDetails",function(){return L}),h.d(w,"mapPartIntersection",function(){return m}),h.d(w,"mapFragmentIntersection",function(){return f}),h.d(w,"adjustSliding",function(){return S}),h.d(w,"addSliding",function(){return T}),h.d(w,"computeReloadInterval",function(){return d}),h.d(w,"getFragmentWithSN",function(){return e}),h.d(w,"getPartWith",function(){return a});var R=h("./src/polyfills/number.ts"),b=h("./src/utils/logger.ts");function A(t,o,u){switch(o){case"audio":t.audioGroupIds||(t.audioGroupIds=[]),t.audioGroupIds.push(u);break;case"text":t.textGroupIds||(t.textGroupIds=[]),t.textGroupIds.push(u)}}function D(t){var o={};t.forEach(function(u){var i=u.groupId||"";u.id=o[i]=o[i]||0,o[i]++})}function I(t,o,u){_(t[o],t[u])}function _(t,o){var u=o.startPTS;if(Object(R.isFiniteNumber)(u)){var i,l=0;o.sn>t.sn?(l=u-t.start,i=t):(l=t.start-u,i=o),i.duration!==l&&(i.duration=l)}else o.sn>t.sn?t.cc===o.cc&&t.minEndPTS?o.start=t.start+(t.minEndPTS-t.start):o.start=t.start+t.duration:o.start=Math.max(t.start-o.duration,0)}function s(t,o,u,i,l,p){i-u<=0&&(b.logger.warn("Fragment should have a positive duration",o),i=u+o.duration,p=l+o.duration);var g=u,v=i,r=o.startPTS,n=o.endPTS;if(Object(R.isFiniteNumber)(r)){var c=Math.abs(r-u);Object(R.isFiniteNumber)(o.deltaPTS)?o.deltaPTS=Math.max(c,o.deltaPTS):o.deltaPTS=c,g=Math.max(u,r),u=Math.min(u,r),l=Math.min(l,o.startDTS),v=Math.min(i,n),i=Math.max(i,n),p=Math.max(p,o.endDTS)}o.duration=i-u;var E=u-o.start;o.appendedPTS=i,o.start=o.startPTS=u,o.maxStartPTS=g,o.startDTS=l,o.endPTS=i,o.minEndPTS=v,o.endDTS=p;var y,k=o.sn;if(!t||kt.endSN)return 0;var x=k-t.startSN,C=t.fragments;for(C[x]=o,y=x;y>0;y--)_(C[y],C[y-1]);for(y=x;y=0;l--){var p=i[l].initSegment;if(p){u=p;break}}t.fragmentHint&&delete t.fragmentHint.endPTS;var g,v=0;if(f(t,o,function(k,x){var C;k.relurl&&(v=k.cc-x.cc),Object(R.isFiniteNumber)(k.startPTS)&&Object(R.isFiniteNumber)(k.endPTS)&&(x.start=x.startPTS=k.startPTS,x.startDTS=k.startDTS,x.appendedPTS=k.appendedPTS,x.maxStartPTS=k.maxStartPTS,x.endPTS=k.endPTS,x.endDTS=k.endDTS,x.minEndPTS=k.minEndPTS,x.duration=k.endPTS-k.startPTS,x.duration&&(g=x),o.PTSKnown=o.alignedSliding=!0),x.elementaryStreams=k.elementaryStreams,x.loader=k.loader,x.stats=k.stats,x.urlId=k.urlId,k.initSegment?(x.initSegment=k.initSegment,u=k.initSegment):x.initSegment&&x.initSegment.relurl!=((C=u)===null||C===void 0?void 0:C.relurl)||(x.initSegment=u)}),o.skippedSegments&&(o.deltaUpdateFailed=o.fragments.some(function(k){return!k}),o.deltaUpdateFailed)){b.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var r=o.skippedSegments;r--;)o.fragments.shift();o.startSN=o.fragments[0].sn,o.startCC=o.fragments[0].cc}var n=o.fragments;if(v){b.logger.warn("discontinuity sliding from playlist, take drift into account");for(var c=0;c=i.length||T(o,i[u].start)}function T(t,o){if(o){for(var u=t.fragments,i=t.skippedSegments;i0&&p<3*i,v=o.loading.end-o.loading.start,r=t.availabilityDelay;if(t.updated===!1)if(g){var n=333*t.misses;u=Math.max(Math.min(l,2*v),n),t.availabilityDelay=(t.availabilityDelay||0)+u}else u=l;else g?(r=Math.min(r||i/2,p),t.availabilityDelay=r,u=r+i-p):u=i-v;return Math.round(u)}function e(t,o,u){if(!t||!t.details)return null;var i=t.details,l=i.fragments[o-i.startSN];return l||((l=i.fragmentHint)&&l.sn===o?l:o0&&r===-1&&(this.log("Override startPosition with lastCurrentTime @"+n.toFixed(3)),r=n),this.state=b.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=r,this.tick()}else this._forceStartLoad=!0,this.state=b.State.STOPPED},v.stopLoad=function(){this._forceStartLoad=!1,o.prototype.stopLoad.call(this)},v.doTick=function(){switch(this.state){case b.State.IDLE:this.doTickIdle();break;case b.State.WAITING_LEVEL:var r,n=this.levels,c=this.level,E=n==null||(r=n[c])===null||r===void 0?void 0:r.details;if(E&&(!E.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(E))break;this.state=b.State.IDLE;break}break;case b.State.FRAG_LOADING_WAITING_RETRY:var y,k=self.performance.now(),x=this.retryDate;(!x||k>=x||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.state=b.State.IDLE)}this.onTickEnd()},v.onTickEnd=function(){o.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},v.doTickIdle=function(){var r,n,c=this.hls,E=this.levelLastLoaded,y=this.levels,k=this.media,x=c.config,C=c.nextLoadLevel;if(E!==null&&(k||!this.startFragRequested&&x.startFragPrefetch)&&(!this.altAudio||!this.audioOnly)&&y&&y[C]){var O=y[C];this.level=c.nextLoadLevel=C;var P=O.details;if(!P||this.state===b.State.WAITING_LEVEL||P.live&&this.levelLastLoaded!==C)this.state=b.State.WAITING_LEVEL;else{var F=this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:k,s.PlaylistLevelType.MAIN);if(F!==null&&!(F.len>=this.getMaxBufferLength(O.maxBitrate))){if(this._streamEnded(F,P)){var M={};return this.altAudio&&(M.type="video"),this.hls.trigger(D.Events.BUFFER_EOS,M),void(this.state=b.State.ENDED)}var B=F.end,U=this.getNextFragment(B,P);if(this.couldBacktrack&&!this.fragPrevious&&U&&U.sn!=="initSegment"){var j=U.sn-P.startSN;j>1&&(U=P.fragments[j-1],this.fragmentTracker.removeFragment(U))}if(U&&this.fragmentTracker.getState(U)===_.FragmentState.OK&&this.nextLoadPosition>B){var V=this.audioOnly&&!this.altAudio?L.ElementaryStreamTypes.AUDIO:L.ElementaryStreamTypes.VIDEO;this.afterBufferFlushed(k,V,s.PlaylistLevelType.MAIN),U=this.getNextFragment(this.nextLoadPosition,P)}U&&(!U.initSegment||U.initSegment.data||this.bitrateTest||(U=U.initSegment),((r=U.decryptdata)===null||r===void 0?void 0:r.keyFormat)!=="identity"||(n=U.decryptdata)!==null&&n!==void 0&&n.key?this.loadFragment(U,P,B):this.loadKey(U,P))}}}},v.loadFragment=function(r,n,c){var E,y=this.fragmentTracker.getState(r);if(this.fragCurrent=r,y===_.FragmentState.BACKTRACKED){var k=this.fragmentTracker.getBacktrackData(r);if(k)return this._handleFragmentLoadProgress(k),void this._handleFragmentLoadComplete(k);y=_.FragmentState.NOT_LOADED}y===_.FragmentState.NOT_LOADED||y===_.FragmentState.PARTIAL?r.sn==="initSegment"?this._loadInitSegment(r):this.bitrateTest?(r.bitrateTest=!0,this.log("Fragment "+r.sn+" of level "+r.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(r)):(this.startFragRequested=!0,o.prototype.loadFragment.call(this,r,n,c)):y===_.FragmentState.APPENDING?this.reduceMaxBufferLength(r.duration)&&this.fragmentTracker.removeFragment(r):((E=this.media)===null||E===void 0?void 0:E.buffered.length)===0&&this.fragmentTracker.removeAllFragments()},v.getAppendedFrag=function(r){var n=this.fragmentTracker.getAppendedFrag(r,s.PlaylistLevelType.MAIN);return n&&"fragment"in n?n.fragment:n},v.getBufferedFrag=function(r){return this.fragmentTracker.getBufferedFrag(r,s.PlaylistLevelType.MAIN)},v.followingBufferedFrag=function(r){return r?this.getBufferedFrag(r.end+.5):null},v.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},v.nextLevelSwitch=function(){var r=this.levels,n=this.media;if(n!=null&&n.readyState){var c,E=this.getAppendedFrag(n.currentTime);if(E&&E.start>1&&this.flushMainBuffer(0,E.start-1),!n.paused&&r){var y=r[this.hls.nextLoadLevel],k=this.fragLastKbps;c=k&&this.fragCurrent?this.fragCurrent.duration*y.maxBitrate/(1e3*k)+1:0}else c=0;var x=this.getBufferedFrag(n.currentTime+c);if(x){var C=this.followingBufferedFrag(x);if(C){this.abortCurrentFrag();var O=C.maxStartPTS?C.maxStartPTS:C.start,P=C.duration,F=Math.max(x.end,O+Math.min(Math.max(P-this.config.maxFragLookUpTolerance,.5*P),.75*P));this.flushMainBuffer(F,Number.POSITIVE_INFINITY)}}}},v.abortCurrentFrag=function(){var r=this.fragCurrent;this.fragCurrent=null,r!=null&&r.loader&&r.loader.abort(),this.state===b.State.KEY_LOADING&&(this.state=b.State.IDLE),this.nextLoadPosition=this.getLoadPosition()},v.flushMainBuffer=function(r,n){o.prototype.flushMainBuffer.call(this,r,n,this.altAudio?"video":null)},v.onMediaAttached=function(r,n){o.prototype.onMediaAttached.call(this,r,n);var c=n.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),c.addEventListener("playing",this.onvplaying),c.addEventListener("seeked",this.onvseeked),this.gapController=new S.default(this.config,c,this.fragmentTracker,this.hls)},v.onMediaDetaching=function(){var r=this.media;r&&(r.removeEventListener("playing",this.onvplaying),r.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),o.prototype.onMediaDetaching.call(this)},v.onMediaPlaying=function(){this.tick()},v.onMediaSeeked=function(){var r=this.media,n=r?r.currentTime:null;Object(R.isFiniteNumber)(n)&&this.log("Media seeked to "+n.toFixed(3)),this.tick()},v.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(D.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=this.stalled=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null},v.onManifestParsed=function(r,n){var c,E=!1,y=!1;n.levels.forEach(function(k){(c=k.audioCodec)&&(c.indexOf("mp4a.40.2")!==-1&&(E=!0),c.indexOf("mp4a.40.5")!==-1&&(y=!0))}),this.audioCodecSwitch=E&&y&&!Object(A.changeTypeSupported)(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=n.levels,this.startFragRequested=!1},v.onLevelLoading=function(r,n){var c=this.levels;if(c&&this.state===b.State.IDLE){var E=c[n.level];(!E.details||E.details.live&&this.levelLastLoaded!==n.level||this.waitForCdnTuneIn(E.details))&&(this.state=b.State.WAITING_LEVEL)}},v.onLevelLoaded=function(r,n){var c,E=this.levels,y=n.level,k=n.details,x=k.totalduration;if(E){this.log("Level "+y+" loaded ["+k.startSN+","+k.endSN+"], cc ["+k.startCC+", "+k.endCC+"] duration:"+x);var C=this.fragCurrent;!C||this.state!==b.State.FRAG_LOADING&&this.state!==b.State.FRAG_LOADING_WAITING_RETRY||C.level!==n.level&&C.loader&&(this.state=b.State.IDLE,C.loader.abort());var O=E[y],P=0;if(k.live||(c=O.details)!==null&&c!==void 0&&c.live){if(k.fragments[0]||(k.deltaUpdateFailed=!0),k.deltaUpdateFailed)return;P=this.alignPlaylists(k,O.details)}if(O.details=k,this.levelLastLoaded=y,this.hls.trigger(D.Events.LEVEL_UPDATED,{details:k,level:y}),this.state===b.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(k))return;this.state=b.State.IDLE}this.startFragRequested?k.live&&this.synchronizeToLiveEdge(k):this.setStartPosition(k,P),this.tick()}else this.warn("Levels were reset while loading level "+y)},v._handleFragmentLoadProgress=function(r){var n,c=r.frag,E=r.part,y=r.payload,k=this.levels;if(k){var x=k[c.level],C=x.details;if(C){var O=x.videoCodec,P=C.PTSKnown||!C.live,F=(n=c.initSegment)===null||n===void 0?void 0:n.data,M=this._getAudioCodec(x),B=this.transmuxer=this.transmuxer||new m.default(this.hls,s.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),U=E?E.index:-1,j=U!==-1,V=new f.ChunkMetadata(c.level,c.sn,c.stats.chunkCount,y.byteLength,U,j),H=this.initPTS[c.cc];B.push(y,F,M,O,c,E,C.totalduration,P,V,H)}else this.warn("Dropping fragment "+c.sn+" of level "+c.level+" after level details were reset")}else this.warn("Levels were reset while fragment load was in progress. Fragment "+c.sn+" of level "+c.level+" will not be buffered")},v.onAudioTrackSwitching=function(r,n){var c=this.altAudio,E=!!n.url,y=n.id;if(!E){if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var k=this.fragCurrent;k!=null&&k.loader&&(this.log("Switching to main audio track, cancel main fragment load"),k.loader.abort()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var x=this.hls;c&&x.trigger(D.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),x.trigger(D.Events.AUDIO_TRACK_SWITCHED,{id:y})}},v.onAudioTrackSwitched=function(r,n){var c=n.id,E=!!this.hls.audioTracks[c].url;if(E){var y=this.videoBuffer;y&&this.mediaBuffer!==y&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=y)}this.altAudio=E,this.tick()},v.onBufferCreated=function(r,n){var c,E,y=n.tracks,k=!1;for(var x in y){var C=y[x];if(C.id==="main"){if(E=x,c=C,x==="video"){var O=y[x];O&&(this.videoBuffer=O.buffer)}}else k=!0}k&&c?(this.log("Alternate track found, use "+E+".buffered to schedule main fragment loading"),this.mediaBuffer=c.buffer):this.mediaBuffer=this.media},v.onFragBuffered=function(r,n){var c=n.frag,E=n.part;if(!c||c.type===s.PlaylistLevelType.MAIN){if(this.fragContextChanged(c))return this.warn("Fragment "+c.sn+(E?" p: "+E.index:"")+" of level "+c.level+" finished buffering, but was aborted. state: "+this.state),void(this.state===b.State.PARSED&&(this.state=b.State.IDLE));var y=E?E.stats:c.stats;this.fragLastKbps=Math.round(8*y.total/(y.buffering.end-y.loading.first)),c.sn!=="initSegment"&&(this.fragPrevious=c),this.fragBufferedComplete(c,E)}},v.onError=function(r,n){switch(n.details){case T.ErrorDetails.FRAG_LOAD_ERROR:case T.ErrorDetails.FRAG_LOAD_TIMEOUT:case T.ErrorDetails.KEY_LOAD_ERROR:case T.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(s.PlaylistLevelType.MAIN,n);break;case T.ErrorDetails.LEVEL_LOAD_ERROR:case T.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==b.State.ERROR&&(n.fatal?(this.warn(""+n.details),this.state=b.State.ERROR):n.levelRetry||this.state!==b.State.WAITING_LEVEL||(this.state=b.State.IDLE));break;case T.ErrorDetails.BUFFER_FULL_ERROR:if(n.parent==="main"&&(this.state===b.State.PARSING||this.state===b.State.PARSED)){var c=!0,E=this.getFwdBufferInfo(this.media,s.PlaylistLevelType.MAIN);E&&E.len>.5&&(c=!this.reduceMaxBufferLength(E.len)),c&&(this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch()),this.resetLoadingState()}}},v.checkBuffer=function(){var r=this.media,n=this.gapController;if(r&&n&&r.readyState){var c=I.BufferHelper.getBuffered(r);!this.loadedmetadata&&c.length?(this.loadedmetadata=!0,this.seekToStartPos()):n.poll(this.lastCurrentTime),this.lastCurrentTime=r.currentTime}},v.onFragLoadEmergencyAborted=function(){this.state=b.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},v.onBufferFlushed=function(r,n){var c=n.type;if(c!==L.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var E=(c===L.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(E,c,s.PlaylistLevelType.MAIN)}},v.onLevelsUpdated=function(r,n){this.levels=n.levels},v.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},v.seekToStartPos=function(){var r=this.media,n=r.currentTime,c=this.startPosition;if(c>=0&&n0&&y1&&r.seeking===!1){var c=r.currentTime;if(I.BufferHelper.isBuffered(r,c)?n=this.getAppendedFrag(c):I.BufferHelper.isBuffered(r,c+.1)&&(n=this.getAppendedFrag(c+.1)),n){var E=this.fragPlaying,y=n.level;E&&n.sn===E.sn&&E.level===y&&n.urlId===E.urlId||(this.hls.trigger(D.Events.FRAG_CHANGED,{frag:n}),E&&E.level===y||this.hls.trigger(D.Events.LEVEL_SWITCHED,{level:y}),this.fragPlaying=n)}}},p=l,(g=[{key:"nextLevel",get:function(){var r=this.nextBufferedFrag;return r?r.level:-1}},{key:"currentLevel",get:function(){var r=this.media;if(r){var n=this.getAppendedFrag(r.currentTime);if(n)return n.level}return-1}},{key:"nextBufferedFrag",get:function(){var r=this.media;if(r){var n=this.getAppendedFrag(r.currentTime);return this.followingBufferedFrag(n)}return null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}])&&e(p.prototype,g),l}(b.default)},"./src/controller/subtitle-stream-controller.ts":function(N,w,h){h.r(w),h.d(w,"SubtitleStreamController",function(){return d});var R=h("./src/events.ts"),b=h("./src/utils/logger.ts"),A=h("./src/utils/buffer-helper.ts"),D=h("./src/controller/fragment-finders.ts"),I=h("./src/utils/discontinuities.ts"),_=h("./src/controller/level-helper.ts"),s=h("./src/controller/fragment-tracker.ts"),L=h("./src/controller/base-stream-controller.ts"),m=h("./src/types/loader.ts"),f=h("./src/types/level.ts");function S(e,a){for(var t=0;t=n[y].start&&E<=n[y].end){c=n[y];break}var k=v.start+v.duration;c?c.end=k:(c={start:E,end:k},n.push(c)),this.fragmentTracker.fragBuffered(v)}}},l.onBufferFlushing=function(p,g){var v=g.startOffset,r=g.endOffset;if(v===0&&r!==Number.POSITIVE_INFINITY){var n=this.currentTrackId,c=this.levels;if(!c.length||!c[n]||!c[n].details)return;var E=r-c[n].details.targetduration;if(E<=0)return;g.endOffsetSubtitles=Math.max(0,E),this.tracksBuffered.forEach(function(y){for(var k=0;k=E.length||n!==c)&&y){if(this.mediaBuffer=this.mediaBufferTimeRanges,r.live||(v=y.details)!==null&&v!==void 0&&v.live){var k=this.mainDetails;if(r.deltaUpdateFailed||!k)return;var x=k.fragments[0];y.details?this.alignPlaylists(r,y.details)===0&&x&&Object(_.addSliding)(r,x.start):r.hasProgramDateTime&&k.hasProgramDateTime?Object(I.alignPDT)(r,k):x&&Object(_.addSliding)(r,x.start)}y.details=r,this.levelLastLoaded=n,this.tick(),r.live&&!this.fragCurrent&&this.media&&this.state===L.State.IDLE&&(Object(D.findFragmentByPTS)(null,r.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),y.details=void 0))}}},l._handleFragmentLoadComplete=function(p){var g=p.frag,v=p.payload,r=g.decryptdata,n=this.hls;if(!this.fragContextChanged(g)&&v&&v.byteLength>0&&r&&r.key&&r.iv&&r.method==="AES-128"){var c=performance.now();this.decrypter.webCryptoDecrypt(new Uint8Array(v),r.key.buffer,r.iv.buffer).then(function(E){var y=performance.now();n.trigger(R.Events.FRAG_DECRYPTED,{frag:g,payload:E,stats:{tstart:c,tdecrypt:y}})})}},l.doTick=function(){if(this.media){if(this.state===L.State.IDLE){var p,g=this.currentTrackId,v=this.levels;if(!v.length||!v[g]||!v[g].details)return;var r=v[g].details,n=r.targetduration,c=this.config,E=this.media,y=A.BufferHelper.bufferedInfo(this.mediaBufferTimeRanges,E.currentTime-n,c.maxBufferHole),k=y.end;if(y.len>this.getMaxBufferLength()+n)return;console.assert(r,"Subtitle track details are defined on idle subtitle stream controller tick");var x,C=r.fragments,O=C.length,P=r.edge,F=this.fragPrevious;if(k-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange))},a.pollTrackChange=function(t){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,t)},a.onMediaDetaching=function(){this.media&&(self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||this.media.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId),L(this.media.textTracks).forEach(function(t){Object(b.clearCurrentCues)(t)}),this.subtitleTrack=-1,this.media=null)},a.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},a.onManifestParsed=function(t,o){this.tracks=o.subtitleTracks},a.onSubtitleTrackLoaded=function(t,o){var u=o.id,i=o.details,l=this.trackId,p=this.tracksInGroup[l];if(p){var g=p.details;p.details=o.details,this.log("subtitle track "+u+" loaded ["+i.startSN+"-"+i.endSN+"]"),u===this.trackId&&(this.retryCount=0,this.playlistLoaded(u,o,g))}else this.warn("Invalid subtitle track id "+u)},a.onLevelLoading=function(t,o){this.switchLevel(o.level)},a.onLevelSwitching=function(t,o){this.switchLevel(o.level)},a.switchLevel=function(t){var o=this.hls.levels[t];if(o!=null&&o.textGroupIds){var u=o.textGroupIds[o.urlId];if(this.groupId!==u){var i=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,l=this.tracks.filter(function(v){return!u||v.groupId===u});this.tracksInGroup=l;var p=this.findTrackId(i==null?void 0:i.name)||this.findTrackId();this.groupId=u;var g={subtitleTracks:l};this.log("Updating subtitle tracks, "+l.length+' track(s) found in "'+u+'" group-id'),this.hls.trigger(R.Events.SUBTITLE_TRACKS_UPDATED,g),p!==-1&&this.setSubtitleTrack(p,i)}}},a.findTrackId=function(t){for(var o=this.tracksInGroup,u=0;u=i.length)){this.clearTimer();var l=i[t];if(this.log("Switching to subtitle track "+t),this.trackId=t,l){var p=l.id,g=l.groupId,v=g===void 0?"":g,r=l.name,n=l.type,c=l.url;this.hls.trigger(R.Events.SUBTITLE_TRACK_SWITCH,{id:p,groupId:v,name:r,type:n,url:c});var E=this.switchParams(l.url,o==null?void 0:o.details);this.loadPlaylist(E)}else this.hls.trigger(R.Events.SUBTITLE_TRACK_SWITCH,{id:t})}}else this.queuedDefaultTrack=t},a.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){for(var t=-1,o=L(this.media.textTracks),u=0;u=0&&(n[0]=Math.min(n[0],a),n[1]=Math.max(n[1],t),v=!0,c/(t-a)>.5))return}if(v||u.push([a,t]),this.config.renderTextTracksNatively){var E=this.captionsTracks[e];this.Cues.newCue(E,a,t,o)}else{var y=this.Cues.newCue(null,a,t,o);this.hls.trigger(b.Events.CUES_PARSED,{type:"captions",cues:y,track:e})}},d.onInitPtsFound=function(e,a){var t=this,o=a.frag,u=a.id,i=a.initPTS,l=a.timescale,p=this.unparsedVttFrags;u==="main"&&(this.initPTS[o.cc]=i,this.timescale[o.cc]=l),p.length&&(this.unparsedVttFrags=[],p.forEach(function(g){t.onFragLoaded(b.Events.FRAG_LOADED,g)}))},d.getExistingTrack=function(e){var a=this.media;if(a)for(var t=0;t>>8^255&g^99,_[i]=g,s[g]=i;var v=u[i],r=u[v],n=u[r],c=257*u[g]^16843008*g;m[i]=c<<24|c>>>8,f[i]=c<<16|c>>>16,S[i]=c<<8|c>>>24,T[i]=c,c=16843009*n^65537*r^257*v^16843008*i,e[g]=c<<24|c>>>8,a[g]=c<<16|c>>>16,t[g]=c<<8|c>>>24,o[g]=c,i?(i=v^u[u[u[n^v]]],l^=u[u[l]]):i=l=1}},I.expandKey=function(_){for(var s=this.uint8ArrayToUint32Array_(_),L=!0,m=0;m>>6);var E=(60&o[u+2])>>>2;if(!(E>c.length-1))return g=(1&o[u+2])<<2,g|=(192&o[u+3])>>>6,R.logger.log("manifest codec:"+i+", ADTS type:"+l+", samplingIndex:"+E),/firefox/i.test(r)?E>=6?(l=5,v=new Array(4),p=E-3):(l=2,v=new Array(2),p=E):r.indexOf("android")!==-1?(l=2,v=new Array(2),p=E):(l=5,v=new Array(4),i&&(i.indexOf("mp4a.40.29")!==-1||i.indexOf("mp4a.40.5")!==-1)||!i&&E>=6?p=E-3:((i&&i.indexOf("mp4a.40.2")!==-1&&(E>=6&&g===1||/vivaldi/i.test(r))||!i&&g===1)&&(l=2,v=new Array(2)),p=E)),v[0]=l<<3,v[0]|=(14&E)>>1,v[1]|=(1&E)<<7,v[1]|=g<<3,l===5&&(v[1]|=(14&p)>>1,v[2]=(1&p)<<7,v[2]|=8,v[3]=0),{config:v,samplerate:c[E],channelCount:g,codec:"mp4a.40."+l,manifestCodec:n};t.trigger(A.Events.ERROR,{type:b.ErrorTypes.MEDIA_ERROR,details:b.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+E})}function I(t,o){return t[o]===255&&(246&t[o+1])==240}function _(t,o){return 1&t[o+1]?7:9}function s(t,o){return(3&t[o+3])<<11|t[o+4]<<3|(224&t[o+5])>>>5}function L(t,o){return o+5=t.length)return!1;var i=s(t,o);if(i<=u)return!1;var l=o+i;return l===t.length||m(t,l)}return!1}function T(t,o,u,i,l){if(!t.samplerate){var p=D(o,u,i,l);if(!p)return;t.config=p.config,t.samplerate=p.samplerate,t.channelCount=p.channelCount,t.codec=p.codec,t.manifestCodec=p.manifestCodec,R.logger.log("parsed codec:"+t.codec+", rate:"+p.samplerate+", channels:"+p.channelCount)}}function d(t){return 9216e4/t}function e(t,o,u,i,l){var p=_(t,o),g=s(t,o);if((g-=p)>0)return{headerLength:p,frameLength:g,stamp:u+i*l}}function a(t,o,u,i,l){var p=e(o,u,i,l,d(t.samplerate));if(p){var g,v=p.frameLength,r=p.headerLength,n=p.stamp,c=r+v,E=Math.max(0,u+c-o.length);E?(g=new Uint8Array(c-r)).set(o.subarray(u+r,o.length),0):g=o.subarray(u+r,u+c);var y={unit:g,pts:n};return E||t.samples.push(y),{sample:y,length:c,missing:E}}}},"./src/demux/base-audio-demuxer.ts":function(N,w,h){h.r(w),h.d(w,"initPTSFn",function(){return s});var R=h("./src/polyfills/number.ts"),b=h("./src/demux/id3.ts"),A=h("./src/demux/dummy-demuxed-track.ts"),D=h("./src/utils/mp4-tools.ts"),I=h("./src/utils/typed-array.ts"),_=function(){function L(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.initPTS=null}var m=L.prototype;return m.resetInitSegment=function(f,S,T){this._id3Track={type:"id3",id:0,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},m.resetTimeStamp=function(){},m.resetContiguity=function(){},m.canParse=function(f,S){return!1},m.appendFrame=function(f,S,T){},m.demux=function(f,S){this.cachedData&&(f=Object(D.appendUint8Array)(this.cachedData,f),this.cachedData=null);var T,d,e=b.getID3Data(f,0),a=e?e.length:0,t=this._audioTrack,o=this._id3Track,u=e?b.getTimeStamp(e):void 0,i=f.length;for(this.frameIndex!==0&&this.initPTS!==null||(this.initPTS=s(u,S)),e&&e.length>0&&o.samples.push({pts:this.initPTS,dts:this.initPTS,data:e}),d=this.initPTS;aI?(this.word<<=I,this.bitsAvailable-=I):(I-=this.bitsAvailable,I-=(_=I>>3)>>3,this.bytesAvailable-=_,this.loadWord(),this.word<<=I,this.bitsAvailable-=I)},D.readBits=function(I){var _=Math.min(this.bitsAvailable,I),s=this.word>>>32-_;return I>32&&R.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=_,this.bitsAvailable>0?this.word<<=_:this.bytesAvailable>0&&this.loadWord(),(_=I-_)>0&&this.bitsAvailable?s<<_|this.readBits(_):s},D.skipLZ=function(){var I;for(I=0;I>>I)return this.word<<=I,this.bitsAvailable-=I,I;return this.loadWord(),I+this.skipLZ()},D.skipUEG=function(){this.skipBits(1+this.skipLZ())},D.skipEG=function(){this.skipBits(1+this.skipLZ())},D.readUEG=function(){var I=this.skipLZ();return this.readBits(I+1)-1},D.readEG=function(){var I=this.readUEG();return 1&I?1+I>>>1:-1*(I>>>1)},D.readBoolean=function(){return this.readBits(1)===1},D.readUByte=function(){return this.readBits(8)},D.readUShort=function(){return this.readBits(16)},D.readUInt=function(){return this.readBits(32)},D.skipScalingList=function(I){for(var _=8,s=8,L=0;L0)return u.subarray(l,l+p)},I=function(u,i){var l=0;return l=(127&u[i])<<21,l|=(127&u[i+1])<<14,l|=(127&u[i+2])<<7,l|=127&u[i+3]},_=function(u,i){return b(u,i)&&I(u,i+6)+10<=u.length-i},s=function(u){for(var i=f(u),l=0;l>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:E+=String.fromCharCode(v);break;case 12:case 13:r=u[y++],E+=String.fromCharCode((31&v)<<6|63&r);break;case 14:r=u[y++],n=u[y++],E+=String.fromCharCode((15&v)<<12|(63&r)<<6|(63&n)<<0)}}return E},o={decodeTextFrame:d}},"./src/demux/mp3demuxer.ts":function(N,w,h){h.r(w);var R=h("./src/demux/base-audio-demuxer.ts"),b=h("./src/demux/id3.ts"),A=h("./src/utils/logger.ts"),D=h("./src/demux/mpegaudio.ts");function I(s,L){return(I=Object.setPrototypeOf||function(m,f){return m.__proto__=f,m})(s,L)}var _=function(s){var L,m;function f(){return s.apply(this,arguments)||this}m=s,(L=f).prototype=Object.create(m.prototype),L.prototype.constructor=L,I(L,m);var S=f.prototype;return S.resetInitSegment=function(T,d,e){s.prototype.resetInitSegment.call(this,T,d,e),this._audioTrack={container:"audio/mpeg",type:"audio",id:0,pid:-1,sequenceNumber:0,isAAC:!1,samples:[],manifestCodec:T,duration:e,inputTimeScale:9e4,dropped:0}},f.probe=function(T){if(!T)return!1;for(var d=(b.getID3Data(T,0)||[]).length,e=T.length;d0},I.demux=function(_){var s=_,L=Object(b.dummyTrack)();if(this.config.progressive){this.remainderData&&(s=Object(R.appendUint8Array)(this.remainderData,_));var m=Object(R.segmentValidRange)(s);this.remainderData=m.remainder,L.samples=m.valid||new Uint8Array}else L.samples=s;return{audioTrack:Object(b.dummyTrack)(),avcTrack:L,id3Track:Object(b.dummyTrack)(),textTrack:Object(b.dummyTrack)()}},I.flush=function(){var _=Object(b.dummyTrack)();return _.samples=this.remainderData||new Uint8Array,this.remainderData=null,{audioTrack:Object(b.dummyTrack)(),avcTrack:_,id3Track:Object(b.dummyTrack)(),textTrack:Object(b.dummyTrack)()}},I.demuxSampleAes=function(_,s,L){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},I.destroy=function(){},D}();A.minProbeByteLength=1024,w.default=A},"./src/demux/mpegaudio.ts":function(N,w,h){h.r(w),h.d(w,"appendFrame",function(){return _}),h.d(w,"parseHeader",function(){return s}),h.d(w,"isHeaderPattern",function(){return L}),h.d(w,"isHeader",function(){return m}),h.d(w,"canParse",function(){return f}),h.d(w,"probe",function(){return S});var R=null,b=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],A=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],D=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],I=[0,1,1,4];function _(T,d,e,a,t){if(!(e+24>d.length)){var o=s(d,e);if(o&&e+o.frameLength<=d.length){var u=a+t*(9e4*o.samplesPerFrame/o.sampleRate),i={unit:d.subarray(e,e+o.frameLength),pts:u,dts:u};return T.config=[],T.channelCount=o.channelCount,T.samplerate=o.sampleRate,T.samples.push(i),{sample:i,length:o.frameLength,missing:0}}}}function s(T,d){var e=T[d+1]>>3&3,a=T[d+1]>>1&3,t=T[d+2]>>4&15,o=T[d+2]>>2&3;if(e!==1&&t!==0&&t!==15&&o!==3){var u=T[d+2]>>1&1,i=T[d+3]>>6,l=1e3*b[14*(e===3?3-a:a===3?3:4)+t-1],p=A[3*(e===3?0:e===2?1:2)+o],g=i===3?1:2,v=D[e][a],r=I[a],n=8*v*r,c=Math.floor(v*l/p+u)*r;if(R===null){var E=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);R=E?parseInt(E[1]):0}return R&&R<=87&&a===2&&l>=224e3&&i===0&&(T[d+3]=128|T[d+3]),{sampleRate:p,channelCount:g,frameLength:c,samplesPerFrame:n}}}function L(T,d){return T[d]===255&&(224&T[d+1])==224&&(6&T[d+1])!=0}function m(T,d){return d+1=_.length)return void L();if(!(_[s].unit.length<32)){var m=this.decrypter.isSync();if(this.decryptAacSample(_,s,L,m),!m)return}}},I.getAvcEncryptedData=function(_){for(var s=16*Math.floor((_.length-48)/160)+16,L=new Int8Array(s),m=0,f=32;f<=_.length-16;f+=160,m+=16)L.set(_.subarray(f,f+16),m);return L},I.getAvcDecryptedUnit=function(_,s){for(var L=new Uint8Array(s),m=0,f=32;f<=_.length-16;f+=160,m+=16)_.set(L.subarray(m,m+16),f);return _},I.decryptAvcSample=function(_,s,L,m,f,S){var T=Object(b.discardEPB)(f.data),d=this.getAvcEncryptedData(T),e=this;this.decryptBuffer(d.buffer,function(a){f.data=e.getAvcDecryptedUnit(T,a),S||e.decryptAvcSamples(_,s,L+1,m)})},I.decryptAvcSamples=function(_,s,L,m){if(_ instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;s++,L=0){if(s>=_.length)return void m();for(var f=_[s].units;!(L>=f.length);L++){var S=f[L];if(!(S.data.length<=48||S.type!==1&&S.type!==5)){var T=this.decrypter.isSync();if(this.decryptAvcSample(_,s,L,m,S,T),!T)return}}}},D}();w.default=A},"./src/demux/transmuxer-interface.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return m});var R=h("./node_modules/webworkify-webpack/index.js"),b=h("./src/events.ts"),A=h("./src/demux/transmuxer.ts"),D=h("./src/utils/logger.ts"),I=h("./src/errors.ts"),_=h("./src/utils/mediasource-helper.ts"),s=h("./node_modules/eventemitter3/index.js"),L=Object(_.getMediaSource)()||{isTypeSupported:function(){return!1}},m=function(){function f(T,d,e,a){var t=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=T,this.id=d,this.onTransmuxComplete=e,this.onFlush=a;var o=T.config,u=function(g,v){(v=v||{}).frag=t.frag,v.id=t.id,T.trigger(g,v)};this.observer=new s.EventEmitter,this.observer.on(b.Events.FRAG_DECRYPTED,u),this.observer.on(b.Events.ERROR,u);var i={mp4:L.isTypeSupported("video/mp4"),mpeg:L.isTypeSupported("audio/mpeg"),mp3:L.isTypeSupported('audio/mp4; codecs="mp3"')},l=navigator.vendor;if(o.enableWorker&&typeof Worker<"u"){var p;D.logger.log("demuxing in webworker");try{p=this.worker=R("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),p.addEventListener("message",this.onwmsg),p.onerror=function(g){T.trigger(b.Events.ERROR,{type:I.ErrorTypes.OTHER_ERROR,details:I.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(g.message+" ("+g.filename+":"+g.lineno+")")})},p.postMessage({cmd:"init",typeSupported:i,vendor:l,id:d,config:JSON.stringify(o)})}catch(g){D.logger.warn("Error in worker:",g),D.logger.error("Error while initializing DemuxerWorker, fallback to inline"),p&&self.URL.revokeObjectURL(p.objectURL),this.transmuxer=new A.default(this.observer,i,o,l,d),this.worker=null}}else this.transmuxer=new A.default(this.observer,i,o,l,d)}var S=f.prototype;return S.destroy=function(){var T=this.worker;if(T)T.removeEventListener("message",this.onwmsg),T.terminate(),this.worker=null;else{var d=this.transmuxer;d&&(d.destroy(),this.transmuxer=null)}var e=this.observer;e&&e.removeAllListeners(),this.observer=null},S.push=function(T,d,e,a,t,o,u,i,l,p){var g=this;l.transmuxing.start=self.performance.now();var v=this.transmuxer,r=this.worker,n=o?o.start:t.start,c=t.decryptdata,E=this.frag,y=!(E&&t.cc===E.cc),k=!(E&&l.level===E.level),x=E?l.sn-E.sn:-1,C=this.part?l.part-this.part.index:1,O=!k&&(x===1||x===0&&C===1),P=self.performance.now();(k||x||t.stats.parsing.start===0)&&(t.stats.parsing.start=P),!o||!C&&O||(o.stats.parsing.start=P);var F=new A.TransmuxState(y,O,i,k,n);if(!O||y){D.logger.log("[transmuxer-interface, "+t.type+"]: Starting new transmux session for sn: "+l.sn+" p: "+l.part+" level: "+l.level+" id: "+l.id+` + discontinuity: `+y+` + trackSwitch: `+k+` + contiguous: `+O+` + accurateTimeOffset: `+i+` + timeOffset: `+n);var M=new A.TransmuxConfig(e,a,d,u,p);this.configureTransmuxer(M)}if(this.frag=t,this.part=o,r)r.postMessage({cmd:"demux",data:T,decryptdata:c,chunkMeta:l,state:F},T instanceof ArrayBuffer?[T]:[]);else if(v){var B=v.push(T,c,l,F);Object(A.isPromise)(B)?B.then(function(U){g.handleTransmuxComplete(U)}):this.handleTransmuxComplete(B)}},S.flush=function(T){var d=this;T.transmuxing.start=self.performance.now();var e=this.transmuxer,a=this.worker;if(a)a.postMessage({cmd:"flush",chunkMeta:T});else if(e){var t=e.flush(T);Object(A.isPromise)(t)?t.then(function(o){d.handleFlushResult(o,T)}):this.handleFlushResult(t,T)}},S.handleFlushResult=function(T,d){var e=this;T.forEach(function(a){e.handleTransmuxComplete(a)}),this.onFlush(d)},S.onWorkerMessage=function(T){var d=T.data,e=this.hls;switch(d.event){case"init":self.URL.revokeObjectURL(this.worker.objectURL);break;case"transmuxComplete":this.handleTransmuxComplete(d.data);break;case"flush":this.onFlush(d.data);break;default:d.data=d.data||{},d.data.frag=this.frag,d.data.id=this.id,e.trigger(d.event,d.data)}},S.configureTransmuxer=function(T){var d=this.worker,e=this.transmuxer;d?d.postMessage({cmd:"configure",config:T}):e&&e.configure(T)},S.handleTransmuxComplete=function(T){T.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(T)},f}()},"./src/demux/transmuxer-worker.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return I});var R=h("./src/demux/transmuxer.ts"),b=h("./src/events.ts"),A=h("./src/utils/logger.ts"),D=h("./node_modules/eventemitter3/index.js");function I(m){var f=new D.EventEmitter,S=function(T,d){m.postMessage({event:T,data:d})};f.on(b.Events.FRAG_DECRYPTED,S),f.on(b.Events.ERROR,S),m.addEventListener("message",function(T){var d=T.data;switch(d.cmd){case"init":var e=JSON.parse(d.config);m.transmuxer=new R.default(f,d.typeSupported,e,d.vendor,d.id),Object(A.enableLogs)(e.debug),S("init",null);break;case"configure":m.transmuxer.configure(d.config);break;case"demux":var a=m.transmuxer.push(d.data,d.decryptdata,d.chunkMeta,d.state);Object(R.isPromise)(a)?a.then(function(u){_(m,u)}):_(m,a);break;case"flush":var t=d.chunkMeta,o=m.transmuxer.flush(t);Object(R.isPromise)(o)?o.then(function(u){L(m,u,t)}):L(m,o,t)}})}function _(m,f){if((S=f.remuxResult).audio||S.video||S.text||S.id3||S.initSegment){var S,T=[],d=f.remuxResult,e=d.audio,a=d.video;e&&s(T,e),a&&s(T,a),m.postMessage({event:"transmuxComplete",data:f},T)}}function s(m,f){f.data1&&m.push(f.data1.buffer),f.data2&&m.push(f.data2.buffer)}function L(m,f,S){f.forEach(function(T){_(m,T)}),m.postMessage({event:"flush",data:S})}},"./src/demux/transmuxer.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return t}),h.d(w,"isPromise",function(){return u}),h.d(w,"TransmuxConfig",function(){return i}),h.d(w,"TransmuxState",function(){return l});var R,b=h("./src/events.ts"),A=h("./src/errors.ts"),D=h("./src/crypt/decrypter.ts"),I=h("./src/demux/aacdemuxer.ts"),_=h("./src/demux/mp4demuxer.ts"),s=h("./src/demux/tsdemuxer.ts"),L=h("./src/demux/mp3demuxer.ts"),m=h("./src/remux/mp4-remuxer.ts"),f=h("./src/remux/passthrough-remuxer.ts"),S=h("./src/demux/chunk-cache.ts"),T=h("./src/utils/mp4-tools.ts"),d=h("./src/utils/logger.ts");try{R=self.performance.now.bind(self.performance)}catch{d.logger.debug("Unable to use Performance API on this environment"),R=self.Date.now}var e=[{demux:s.default,remux:m.default},{demux:_.default,remux:f.default},{demux:I.default,remux:m.default},{demux:L.default,remux:m.default}],a=1024;e.forEach(function(p){var g=p.demux;a=Math.max(a,g.minProbeByteLength)});var t=function(){function p(v,r,n,c,E){this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.cache=new S.default,this.observer=v,this.typeSupported=r,this.config=n,this.vendor=c,this.id=E}var g=p.prototype;return g.configure=function(v){this.transmuxConfig=v,this.decrypter&&this.decrypter.reset()},g.push=function(v,r,n,c){var E=this,y=n.transmuxing;y.executeStart=R();var k=new Uint8Array(v),x=this.cache,C=this.config,O=this.currentTransmuxState,P=this.transmuxConfig;c&&(this.currentTransmuxState=c);var F=function(he,ue){var W=null;return he.byteLength>0&&ue!=null&&ue.key!=null&&ue.iv!==null&&ue.method!=null&&(W=ue),W}(k,r);if(F&&F.method==="AES-128"){var M=this.getDecrypter();if(!C.enableSoftwareAES)return this.decryptionPromise=M.webCryptoDecrypt(k,F.key.buffer,F.iv.buffer).then(function(he){var ue=E.push(he,null,n);return E.decryptionPromise=null,ue}),this.decryptionPromise;var B=M.softwareDecrypt(k,F.key.buffer,F.iv.buffer);if(!B)return y.executeEnd=R(),o(n);k=new Uint8Array(B)}var U=c||O,j=U.contiguous,V=U.discontinuity,H=U.trackSwitch,X=U.accurateTimeOffset,q=U.timeOffset,$=P.audioCodec,ie=P.videoCodec,se=P.defaultInitPts,le=P.duration,re=P.initSegmentData;if((V||H)&&this.resetInitSegment(re,$,ie,le),V&&this.resetInitialTimestamp(se),j||this.resetContiguity(),this.needsProbing(k,V,H)){if(x.dataLength){var fe=x.flush();k=Object(T.appendUint8Array)(fe,k)}this.configureTransmuxer(k,P)}var te=this.transmux(k,F,q,X,n),ne=this.currentTransmuxState;return ne.contiguous=!0,ne.discontinuity=!1,ne.trackSwitch=!1,y.executeEnd=R(),te},g.flush=function(v){var r=this,n=v.transmuxing;n.executeStart=R();var c=this.decrypter,E=this.cache,y=this.currentTransmuxState,k=this.decryptionPromise;if(k)return k.then(function(){return r.flush(v)});var x=[],C=y.timeOffset;if(c){var O=c.flush();O&&x.push(this.push(O,null,v))}var P=E.dataLength;E.reset();var F=this.demuxer,M=this.remuxer;if(!F||!M)return P>=a&&this.observer.emit(b.Events.ERROR,b.Events.ERROR,{type:A.ErrorTypes.MEDIA_ERROR,details:A.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),n.executeEnd=R(),[o(v)];var B=F.flush(C);return u(B)?B.then(function(U){return r.flushRemux(x,U,v),x}):(this.flushRemux(x,B,v),x)},g.flushRemux=function(v,r,n){var c=r.audioTrack,E=r.avcTrack,y=r.id3Track,k=r.textTrack,x=this.currentTransmuxState,C=x.accurateTimeOffset,O=x.timeOffset;d.logger.log("[transmuxer.ts]: Flushed fragment "+n.sn+(n.part>-1?" p: "+n.part:"")+" of level "+n.level);var P=this.remuxer.remux(c,E,y,k,O,C,!0,this.id);v.push({remuxResult:P,chunkMeta:n}),n.transmuxing.executeEnd=R()},g.resetInitialTimestamp=function(v){var r=this.demuxer,n=this.remuxer;r&&n&&(r.resetTimeStamp(v),n.resetTimeStamp(v))},g.resetContiguity=function(){var v=this.demuxer,r=this.remuxer;v&&r&&(v.resetContiguity(),r.resetNextTimestamp())},g.resetInitSegment=function(v,r,n,c){var E=this.demuxer,y=this.remuxer;E&&y&&(E.resetInitSegment(r,n,c),y.resetInitSegment(v,r,n))},g.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},g.transmux=function(v,r,n,c,E){return r&&r.method==="SAMPLE-AES"?this.transmuxSampleAes(v,r,n,c,E):this.transmuxUnencrypted(v,n,c,E)},g.transmuxUnencrypted=function(v,r,n,c){var E=this.demuxer.demux(v,r,!1,!this.config.progressive),y=E.audioTrack,k=E.avcTrack,x=E.id3Track,C=E.textTrack;return{remuxResult:this.remuxer.remux(y,k,x,C,r,n,!1,this.id),chunkMeta:c}},g.transmuxSampleAes=function(v,r,n,c,E){var y=this;return this.demuxer.demuxSampleAes(v,r,n).then(function(k){return{remuxResult:y.remuxer.remux(k.audioTrack,k.avcTrack,k.id3Track,k.textTrack,n,c,!1,y.id),chunkMeta:E}})},g.configureTransmuxer=function(v,r){for(var n,c=this.config,E=this.observer,y=this.typeSupported,k=this.vendor,x=r.audioCodec,C=r.defaultInitPts,O=r.duration,P=r.initSegmentData,F=r.videoCodec,M=0,B=e.length;M>4>1){if(($=H+5+p[H+4])===H+188)continue}else $=H+4;switch(q){case k:X&&(x&&(n=a(x))&&this.parseAVCPES(n,!1),x={data:[],size:0}),x&&(x.data.push(p.subarray($,H+188)),x.size+=H+188-$);break;case C:X&&(P&&(n=a(P))&&(E.isAAC?this.parseAACPES(n):this.parseMPEGPES(n)),P={data:[],size:0}),P&&(P.data.push(p.subarray($,H+188)),P.size+=H+188-$);break;case O:X&&(F&&(n=a(F))&&this.parseID3PES(n),F={data:[],size:0}),F&&(F.data.push(p.subarray($,H+188)),F.size+=H+188-$);break;case 0:X&&($+=p[$]+1),U=this._pmtId=d(p,$);break;case U:X&&($+=p[$]+1);var ie=e(p,$,this.typeSupported.mpeg===!0||this.typeSupported.mp3===!0,v);(k=ie.avc)>0&&(c.pid=k),(C=ie.audio)>0&&(E.pid=C,E.isAAC=ie.isAAC),(O=ie.id3)>0&&(y.pid=O),M&&!B&&(L.logger.log("reparse from beginning"),M=!1,H=V-188),B=this.pmtParsed=!0;break;case 17:case 8191:break;default:M=!0}}else this.observer.emit(_.Events.ERROR,_.Events.ERROR,{type:m.ErrorTypes.MEDIA_ERROR,details:m.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"TS packet did not start with 0x47"});c.pesData=x,E.pesData=P,y.pesData=F;var se={audioTrack:E,avcTrack:c,id3Track:y,textTrack:this._txtTrack};return r&&this.extractRemainingSamples(se),se},l.flush=function(){var p,g=this.remainderData;return this.remainderData=null,p=g?this.demux(g,-1,!1,!0):{audioTrack:this._audioTrack,avcTrack:this._avcTrack,textTrack:this._txtTrack,id3Track:this._id3Track},this.extractRemainingSamples(p),this.sampleAes?this.decrypt(p,this.sampleAes):p},l.extractRemainingSamples=function(p){var g,v=p.audioTrack,r=p.avcTrack,n=p.id3Track,c=r.pesData,E=v.pesData,y=n.pesData;c&&(g=a(c))?(this.parseAVCPES(g,!0),r.pesData=null):r.pesData=c,E&&(g=a(E))?(v.isAAC?this.parseAACPES(g):this.parseMPEGPES(g),v.pesData=null):(E!=null&&E.size&&L.logger.log("last AAC PES packet truncated,might overlap between fragments"),v.pesData=E),y&&(g=a(y))?(this.parseID3PES(g),n.pesData=null):n.pesData=y},l.demuxSampleAes=function(p,g,v){var r=this.demux(p,v,!0,!this.config.progressive),n=this.sampleAes=new I.default(this.observer,this.config,g);return this.decrypt(r,n)},l.decrypt=function(p,g){return new Promise(function(v){var r=p.audioTrack,n=p.avcTrack;r.samples&&r.isAAC?g.decryptAacSamples(r.samples,0,function(){n.samples?g.decryptAvcSamples(n.samples,0,0,function(){v(p)}):v(p)}):n.samples&&g.decryptAvcSamples(n.samples,0,0,function(){v(p)})})},l.destroy=function(){this._initPTS=this._initDTS=null,this._duration=0},l.parseAVCPES=function(p,g){var v,r=this,n=this._avcTrack,c=this.parseAVCNALu(p.data),E=this.avcSample,y=!1;p.data=null,E&&c.length&&!n.audFound&&(t(E,n),E=this.avcSample=T(!1,p.pts,p.dts,"")),c.forEach(function(k){switch(k.type){case 1:v=!0,E||(E=r.avcSample=T(!0,p.pts,p.dts,"")),E.frame=!0;var x=k.data;if(y&&x.length>4){var C=new A.default(x).readSliceType();C!==2&&C!==4&&C!==7&&C!==9||(E.key=!0)}break;case 5:v=!0,E||(E=r.avcSample=T(!0,p.pts,p.dts,"")),E.key=!0,E.frame=!0;break;case 6:v=!0;var O=new A.default(u(k.data));O.readUByte();for(var P=0,F=0,M=!1,B=0;!M&&O.bytesAvailable>1;){P=0;do P+=B=O.readUByte();while(B===255);F=0;do F+=B=O.readUByte();while(B===255);if(P===4&&O.bytesAvailable!==0){if(M=!0,O.readUByte()===181&&O.readUShort()===49&&O.readUInt()===1195456820&&O.readUByte()===3){for(var U=O.readUByte(),j=31&U,V=[U,O.readUByte()],H=0;H16){for(var X=[],q=0;q<16;q++)X.push(O.readUByte().toString(16)),q!==3&&q!==5&&q!==7&&q!==9||X.push("-");for(var $=F-16,ie=new Uint8Array($),se=0;se<$;se++)ie[se]=O.readUByte();o(r._txtTrack.samples,{pts:p.pts,payloadType:P,uuid:X.join(""),userData:Object(D.utf8ArrayToStr)(ie),userDataBytes:ie})}}else if(F=0){var O={data:p.subarray(x,k-c-1),type:C};y.push(O)}else{var P=this.getLastNalUnit();if(P&&(E&&k<=4-E&&P.state&&(P.data=P.data.subarray(0,P.data.byteLength-E)),(v=k-c-1)>0)){var F=new Uint8Array(P.data.byteLength+v);F.set(P.data,0),F.set(p.subarray(0,v),P.data.byteLength),P.data=F}}k=0&&c>=0){var M={data:p.subarray(x,r),type:C,state:c};y.push(M)}if(y.length===0){var B=this.getLastNalUnit();if(B){var U=new Uint8Array(B.data.byteLength+p.byteLength);U.set(B.data,0),U.set(p,B.data.byteLength),B.data=U}}return n.naluState=c,y},l.parseAACPES=function(p){var g,v,r,n,c,E=0,y=this._audioTrack,k=this.aacOverFlow,x=p.data;if(k){this.aacOverFlow=null;var C=k.sample.unit.byteLength,O=Math.min(k.missing,C),P=C-O;k.sample.unit.set(x.subarray(0,O),P),y.samples.push(k.sample),E=k.missing}for(g=E,v=x.length;g1;){var E=new Uint8Array(c[0].length+c[1].length);E.set(c[0]),E.set(c[1],c[0].length),c[0]=E,c.splice(1,1)}if(((l=c[0])[0]<<16)+(l[1]<<8)+l[2]===1){if((p=(l[4]<<8)+l[5])&&p>i.size-6)return null;var y=l[7];192&y&&(v=536870912*(14&l[9])+4194304*(255&l[10])+16384*(254&l[11])+128*(255&l[12])+(254&l[13])/2,64&y?v-(r=536870912*(14&l[14])+4194304*(255&l[15])+16384*(254&l[16])+128*(255&l[17])+(254&l[18])/2)>54e5&&(L.logger.warn(Math.round((v-r)/9e4)+"s delta between PTS and DTS, align them"),v=r):r=v);var k=(g=l[8])+9;if(i.size<=k)return null;i.size-=k;for(var x=new Uint8Array(i.size),C=0,O=c.length;CP){k-=P;continue}l=l.subarray(k),P-=k,k=0}x.set(l,n),n+=P}return p&&(p-=g+3),{data:x,pts:v,dts:r,len:p}}return null}function t(i,l){if(i.units.length&&i.frame){if(i.pts===void 0){var p=l.samples,g=p.length;if(!g)return void l.dropped++;var v=p[g-1];i.pts=v.pts,i.dts=v.dts}l.samples.push(i)}i.debug.length&&L.logger.log(i.pts+"/"+i.dts+":"+i.debug)}function o(i,l){var p=i.length;if(p>0){if(l.pts>=i[p-1].pts)i.push(l);else for(var g=p-1;g>=0;g--)if(l.ptsv)return n;return 0}},{key:"maxAutoLevel",get:function(){var g=this.levels,v=this.autoLevelCapping;return v===-1&&g&&g.length?g.length-1:v}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(g){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,g)}},{key:"audioTracks",get:function(){var g=this.audioTrackController;return g?g.audioTracks:[]}},{key:"audioTrack",get:function(){var g=this.audioTrackController;return g?g.audioTrack:-1},set:function(g){var v=this.audioTrackController;v&&(v.audioTrack=g)}},{key:"subtitleTracks",get:function(){var g=this.subtitleTrackController;return g?g.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var g=this.subtitleTrackController;return g?g.subtitleTrack:-1},set:function(g){var v=this.subtitleTrackController;v&&(v.subtitleTrack=g)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var g=this.subtitleTrackController;return!!g&&g.subtitleDisplay},set:function(g){var v=this.subtitleTrackController;v&&(v.subtitleDisplay=g)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(g){this.config.lowLatencyMode=g}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}])&&a(u.prototype,i),l&&a(u,l),o}();t.defaultConfig=void 0},"./src/is-supported.ts":function(N,w,h){h.r(w),h.d(w,"isSupported",function(){return A}),h.d(w,"changeTypeSupported",function(){return D});var R=h("./src/utils/mediasource-helper.ts");function b(){return self.SourceBuffer||self.WebKitSourceBuffer}function A(){var I=Object(R.getMediaSource)();if(!I)return!1;var _=b(),s=I&&typeof I.isTypeSupported=="function"&&I.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),L=!_||_.prototype&&typeof _.prototype.appendBuffer=="function"&&typeof _.prototype.remove=="function";return!!s&&!!L}function D(){var I,_=b();return typeof(_==null||(I=_.prototype)===null||I===void 0?void 0:I.changeType)=="function"}},"./src/loader/fragment-loader.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return m}),h.d(w,"LoadError",function(){return S});var R=h("./src/polyfills/number.ts"),b=h("./src/errors.ts");function A(T){var d=typeof Map=="function"?new Map:void 0;return(A=function(e){if(e===null||(a=e,Function.toString.call(a).indexOf("[native code]")===-1))return e;var a;if(typeof e!="function")throw new TypeError("Super expression must either be null or a function");if(d!==void 0){if(d.has(e))return d.get(e);d.set(e,t)}function t(){return D(e,arguments,s(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),_(t,e)})(T)}function D(T,d,e){return(D=I()?Reflect.construct:function(a,t,o){var u=[null];u.push.apply(u,t);var i=new(Function.bind.apply(a,u));return o&&_(i,o.prototype),i}).apply(null,arguments)}function I(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function _(T,d){return(_=Object.setPrototypeOf||function(e,a){return e.__proto__=a,e})(T,d)}function s(T){return(s=Object.setPrototypeOf?Object.getPrototypeOf:function(d){return d.__proto__||Object.getPrototypeOf(d)})(T)}var L=Math.pow(2,17),m=function(){function T(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}var d=T.prototype;return d.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},d.abort=function(){this.loader&&this.loader.abort()},d.load=function(e,a){var t=this,o=e.url;if(!o)return Promise.reject(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,networkDetails:null},"Fragment does not have a "+(o?"part list":"url")));this.abort();var u=this.config,i=u.fLoader,l=u.loader;return new Promise(function(p,g){t.loader&&t.loader.destroy();var v=t.loader=e.loader=i?new i(u):new l(u),r=f(e),n={timeout:u.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:u.fragLoadingMaxRetryTimeout,highWaterMark:L};e.stats=v.stats,v.load(r,n,{onSuccess:function(c,E,y,k){t.resetLoader(e,v),p({frag:e,part:null,payload:c.data,networkDetails:k})},onError:function(c,E,y){t.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:c,networkDetails:y}))},onAbort:function(c,E,y){t.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,networkDetails:y}))},onTimeout:function(c,E,y){t.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,networkDetails:y}))},onProgress:function(c,E,y,k){a&&a({frag:e,part:null,payload:y,networkDetails:k})}})})},d.loadPart=function(e,a,t){var o=this;this.abort();var u=this.config,i=u.fLoader,l=u.loader;return new Promise(function(p,g){o.loader&&o.loader.destroy();var v=o.loader=e.loader=i?new i(u):new l(u),r=f(e,a),n={timeout:u.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:u.fragLoadingMaxRetryTimeout,highWaterMark:L};a.stats=v.stats,v.load(r,n,{onSuccess:function(c,E,y,k){o.resetLoader(e,v),o.updateStatsFromPart(e,a);var x={frag:e,part:a,payload:c.data,networkDetails:k};t(x),p(x)},onError:function(c,E,y){o.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:a,response:c,networkDetails:y}))},onAbort:function(c,E,y){e.stats.aborted=a.stats.aborted,o.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,part:a,networkDetails:y}))},onTimeout:function(c,E,y){o.resetLoader(e,v),g(new S({type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:a,networkDetails:y}))}})})},d.updateStatsFromPart=function(e,a){var t=e.stats,o=a.stats,u=o.total;if(t.loaded+=o.loaded,u){var i=Math.round(e.duration/a.duration),l=Math.min(Math.round(t.loaded/u),i),p=(i-l)*Math.round(t.loaded/l);t.total=t.loaded+p}else t.total=Math.max(t.loaded,t.total);var g=t.loading,v=o.loading;g.start?g.first+=v.first-v.start:(g.start=v.start,g.first=v.first),g.end=v.end},d.resetLoader=function(e,a){e.loader=null,this.loader===a&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),a.destroy()},T}();function f(T,d){d===void 0&&(d=null);var e=d||T,a={frag:T,part:d,responseType:"arraybuffer",url:e.url,rangeStart:0,rangeEnd:0},t=e.byteRangeStartOffset,o=e.byteRangeEndOffset;return Object(R.isFiniteNumber)(t)&&Object(R.isFiniteNumber)(o)&&(a.rangeStart=t,a.rangeEnd=o),a}var S=function(T){var d,e;function a(t){for(var o,u=arguments.length,i=new Array(u>1?u-1:0),l=1;l>8*(15-l)&255;return i},o.setDecryptDataFromLevelKey=function(u,i){var l=u;return(u==null?void 0:u.method)==="AES-128"&&u.uri&&!u.iv&&((l=_.LevelKey.fromURI(u.uri)).method=u.method,l.iv=this.createInitializationVector(i),l.keyFormat="identity"),l},o.setElementaryStreamInfo=function(u,i,l,p,g,v){v===void 0&&(v=!1);var r=this.elementaryStreams,n=r[u];n?(n.startPTS=Math.min(n.startPTS,i),n.endPTS=Math.max(n.endPTS,l),n.startDTS=Math.min(n.startDTS,p),n.endDTS=Math.max(n.endDTS,g)):r[u]={startPTS:i,endPTS:l,startDTS:p,endDTS:g,partial:v}},o.clearElementaryStreamInfo=function(){var u=this.elementaryStreams;u[R.AUDIO]=null,u[R.VIDEO]=null,u[R.AUDIOVIDEO]=null},S(t,[{key:"decryptdata",get:function(){if(!this.levelkey&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkey){var u=this.sn;typeof u!="number"&&(this.levelkey&&this.levelkey.method==="AES-128"&&!this.levelkey.iv&&I.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),u=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,u)}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(this.programDateTime===null||!Object(A.isFiniteNumber)(this.programDateTime))return null;var u=Object(A.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*u}},{key:"encrypted",get:function(){var u;return!((u=this.decryptdata)===null||u===void 0||!u.keyFormat||!this.decryptdata.uri)}}]),t}(T),e=function(a){function t(o,u,i,l,p){var g;(g=a.call(this,i)||this).fragOffset=0,g.duration=0,g.gap=!1,g.independent=!1,g.relurl=void 0,g.fragment=void 0,g.index=void 0,g.stats=new s.LoadStats,g.duration=o.decimalFloatingPoint("DURATION"),g.gap=o.bool("GAP"),g.independent=o.bool("INDEPENDENT"),g.relurl=o.enumeratedString("URI"),g.fragment=u,g.index=l;var v=o.enumeratedString("BYTERANGE");return v&&g.setByteRange(v,p),p&&(g.fragOffset=p.fragOffset+p.duration),g}return L(t,a),S(t,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var o=this.elementaryStreams;return!!(o.audio||o.video||o.audiovideo)}}]),t}(T)},"./src/loader/key-loader.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return D});var R=h("./src/events.ts"),b=h("./src/errors.ts"),A=h("./src/utils/logger.ts"),D=function(){function I(s){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=s,this._registerListeners()}var _=I.prototype;return _._registerListeners=function(){this.hls.on(R.Events.KEY_LOADING,this.onKeyLoading,this)},_._unregisterListeners=function(){this.hls.off(R.Events.KEY_LOADING,this.onKeyLoading)},_.destroy=function(){for(var s in this._unregisterListeners(),this.loaders){var L=this.loaders[s];L&&L.destroy()}this.loaders={}},_.onKeyLoading=function(s,L){var m=L.frag,f=m.type,S=this.loaders[f];if(m.decryptdata){var T=m.decryptdata.uri;if(T!==this.decrypturl||this.decryptkey===null){var d=this.hls.config;if(S&&(A.logger.warn("abort previous key loader for type:"+f),S.abort()),!T)return void A.logger.warn("key uri is falsy");var e=d.loader,a=m.loader=this.loaders[f]=new e(d);this.decrypturl=T,this.decryptkey=null;var t={url:T,frag:m,responseType:"arraybuffer"},o={timeout:d.fragLoadingTimeOut,maxRetry:0,retryDelay:d.fragLoadingRetryDelay,maxRetryDelay:d.fragLoadingMaxRetryTimeout,highWaterMark:0},u={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};a.load(t,o,u)}else this.decryptkey&&(m.decryptdata.key=this.decryptkey,this.hls.trigger(R.Events.KEY_LOADED,{frag:m}))}else A.logger.warn("Missing decryption data on fragment in onKeyLoading")},_.loadsuccess=function(s,L,m){var f=m.frag;f.decryptdata?(this.decryptkey=f.decryptdata.key=new Uint8Array(s.data),f.loader=null,delete this.loaders[f.type],this.hls.trigger(R.Events.KEY_LOADED,{frag:f})):A.logger.error("after key load, decryptdata unset")},_.loaderror=function(s,L){var m=L.frag,f=m.loader;f&&f.abort(),delete this.loaders[m.type],this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:m,response:s})},_.loadtimeout=function(s,L){var m=L.frag,f=m.loader;f&&f.abort(),delete this.loaders[m.type],this.hls.trigger(R.Events.ERROR,{type:b.ErrorTypes.NETWORK_ERROR,details:b.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:m})},I}()},"./src/loader/level-details.ts":function(N,w,h){h.r(w),h.d(w,"LevelDetails",function(){return A});var R=h("./src/polyfills/number.ts");function b(D,I){for(var _=0;_s.endSN||L>0||L===0&&m>0,this.updated||this.advanced?this.misses=Math.floor(.6*s.misses):this.misses=s.misses+1,this.availabilityDelay=s.availabilityDelay},I=D,(_=[{key:"hasProgramDateTime",get:function(){return!!this.fragments.length&&Object(R.isFiniteNumber)(this.fragments[this.fragments.length-1].programDateTime)}},{key:"levelTargetDuration",get:function(){return this.averagetargetduration||this.targetduration||10}},{key:"drift",get:function(){var s=this.driftEndTime-this.driftStartTime;return s>0?1e3*(this.driftEnd-this.driftStart)/s:1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var s;return(s=this.partList)!==null&&s!==void 0&&s.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var s;return(s=this.fragments)!==null&&s!==void 0&&s.length?this.fragments[this.fragments.length-1].end:0}},{key:"age",get:function(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}},{key:"lastPartIndex",get:function(){var s;return(s=this.partList)!==null&&s!==void 0&&s.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var s;return(s=this.partList)!==null&&s!==void 0&&s.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}])&&b(I.prototype,_),D}()},"./src/loader/level-key.ts":function(N,w,h){h.r(w),h.d(w,"LevelKey",function(){return A});var R=h("./node_modules/url-toolkit/src/url-toolkit.js");function b(D,I){for(var _=0;_2){var p=l.shift()+".";return p+=parseInt(l.shift()).toString(16),p+=("000"+parseInt(l.shift()).toString(16)).substr(-4)}return i},u.resolve=function(i,l){return b.buildAbsoluteURL(l,i,{alwaysNormalize:!0})},u.parseMasterPlaylist=function(i,l){var p,g=[],v={},r=!1;for(m.lastIndex=0;(p=m.exec(i))!=null;)if(p[1]){var n=new _.AttrList(p[1]),c={attrs:n,bitrate:n.decimalInteger("AVERAGE-BANDWIDTH")||n.decimalInteger("BANDWIDTH"),name:n.NAME,url:u.resolve(p[2],l)},E=n.decimalResolution("RESOLUTION");E&&(c.width=E.width,c.height=E.height),a((n.CODECS||"").split(/[ ,]+/).filter(function(k){return k}),c),c.videoCodec&&c.videoCodec.indexOf("avc1")!==-1&&(c.videoCodec=u.convertAVC1ToAVCOTI(c.videoCodec)),g.push(c)}else if(p[3]){var y=new _.AttrList(p[3]);y["DATA-ID"]&&(r=!0,v[y["DATA-ID"]]=y)}return{levels:g,sessionData:r?v:null}},u.parseMasterPlaylistMedia=function(i,l,p,g){var v;g===void 0&&(g=[]);var r=[],n=0;for(f.lastIndex=0;(v=f.exec(i))!==null;){var c=new _.AttrList(v[1]);if(c.TYPE===p){var E={attrs:c,bitrate:0,id:n++,groupId:c["GROUP-ID"],instreamId:c["INSTREAM-ID"],name:c.NAME||c.LANGUAGE||"",type:p,default:c.bool("DEFAULT"),autoselect:c.bool("AUTOSELECT"),forced:c.bool("FORCED"),lang:c.LANGUAGE,url:c.URI?u.resolve(c.URI,l):""};if(g.length){var y=u.findGroup(g,E.groupId)||g[0];t(E,y,"audioCodec"),t(E,y,"textCodec")}r.push(E)}}return r},u.parseLevelPlaylist=function(i,l,p,g,v){var r,n,c,E=new D.LevelDetails(l),y=E.fragments,k=null,x=0,C=0,O=0,P=0,F=null,M=new A.Fragment(g,l),B=-1,U=!1;for(S.lastIndex=0,E.m3u8=i;(r=S.exec(i))!==null;){U&&(U=!1,(M=new A.Fragment(g,l)).start=O,M.sn=x,M.cc=P,M.level=p,k&&(M.initSegment=k,M.rawProgramDateTime=k.rawProgramDateTime));var j=r[1];if(j){M.duration=parseFloat(j);var V=(" "+r[2]).slice(1);M.title=V||null,M.tagList.push(V?["INF",j,V]:["INF",j])}else if(r[3])Object(R.isFiniteNumber)(M.duration)&&(M.start=O,c&&(M.levelkey=c),M.sn=x,M.level=p,M.cc=P,M.urlId=v,y.push(M),M.relurl=(" "+r[3]).slice(1),o(M,F),F=M,O+=M.duration,x++,C=0,U=!0);else if(r[4]){var H=(" "+r[4]).slice(1);F?M.setByteRange(H,F):M.setByteRange(H)}else if(r[5])M.rawProgramDateTime=(" "+r[5]).slice(1),M.tagList.push(["PROGRAM-DATE-TIME",M.rawProgramDateTime]),B===-1&&(B=y.length);else{if(!(r=r[0].match(T))){s.logger.warn("No matches on slow regex match for level playlist!");continue}for(n=1;n-1){s.logger.warn("Keyformat "+de+" is not supported from the manifest");continue}if(de!=="identity")continue;ne&&(c=I.LevelKey.fromURL(l,he),he&&["AES-128","SAMPLE-AES","SAMPLE-AES-CENC"].indexOf(ne)>=0&&(c.method=ne,c.keyFormat=de,oe&&(c.keyID=oe),W&&(c.keyFormatVersions=W),c.iv=ue));break;case"START":var Ae=new _.AttrList(q).decimalFloatingPoint("TIME-OFFSET");Object(R.isFiniteNumber)(Ae)&&(E.startTimeOffset=Ae);break;case"MAP":var pe=new _.AttrList(q);M.relurl=pe.URI,pe.BYTERANGE&&M.setByteRange(pe.BYTERANGE),M.level=p,M.sn="initSegment",c&&(M.levelkey=c),M.initSegment=null,k=M,U=!0;break;case"SERVER-CONTROL":var ve=new _.AttrList(q);E.canBlockReload=ve.bool("CAN-BLOCK-RELOAD"),E.canSkipUntil=ve.optionalFloat("CAN-SKIP-UNTIL",0),E.canSkipDateRanges=E.canSkipUntil>0&&ve.bool("CAN-SKIP-DATERANGES"),E.partHoldBack=ve.optionalFloat("PART-HOLD-BACK",0),E.holdBack=ve.optionalFloat("HOLD-BACK",0);break;case"PART-INF":var We=new _.AttrList(q);E.partTarget=We.decimalFloatingPoint("PART-TARGET");break;case"PART":var ke=E.partList;ke||(ke=E.partList=[]);var Oe=C>0?ke[ke.length-1]:void 0,Ye=C++,Me=new A.Part(new _.AttrList(q),M,l,Ye,Oe);ke.push(Me),M.duration+=Me.duration;break;case"PRELOAD-HINT":var Ie=new _.AttrList(q);E.preloadHint=Ie;break;case"RENDITION-REPORT":var $e=new _.AttrList(q);E.renditionReports=E.renditionReports||[],E.renditionReports.push($e);break;default:s.logger.warn("line parsed but not handled: "+r)}}}F&&!F.relurl?(y.pop(),O-=F.duration,E.partList&&(E.fragmentHint=F)):E.partList&&(o(M,F),M.cc=P,E.fragmentHint=M);var qe=y.length,Ce=y[0],Qe=y[qe-1];if((O+=E.skippedSegments*E.targetduration)>0&&qe&&Qe){E.averagetargetduration=O/qe;var ze=Qe.sn;E.endSN=ze!=="initSegment"?ze:0,Ce&&(E.startCC=Ce.cc,Ce.initSegment||E.fragments.every(function(Ne){return Ne.relurl&&(Pe=Ne.relurl,d.test((Be=(_e=b.parseURL(Pe))===null||_e===void 0?void 0:_e.path)!=null?Be:""));var Pe,Be,_e})&&(s.logger.warn("MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX"),(M=new A.Fragment(g,l)).relurl=Qe.relurl,M.level=p,M.sn="initSegment",Ce.initSegment=M,E.needSidxRanges=!0))}else E.endSN=0,E.startCC=0;return E.fragmentHint&&(O+=E.fragmentHint.duration),E.totalduration=O,E.endCC=P,B>0&&function(Ne,Pe){for(var Be=Ne[Pe],_e=Pe;_e--;){var Ue=Ne[_e];if(!Ue)return;Ue.programDateTime=Be.programDateTime-1e3*Ue.duration,Be=Ue}}(y,B),E},u}();function a(u,i){["video","audio","text"].forEach(function(l){var p=u.filter(function(v){return Object(L.isCodecType)(v,l)});if(p.length){var g=p.filter(function(v){return v.lastIndexOf("avc1",0)===0||v.lastIndexOf("mp4a",0)===0});i[l+"Codec"]=g.length>0?g[0]:p[0],u=u.filter(function(v){return p.indexOf(v)===-1})}}),i.unknownCodecs=u}function t(u,i,l){var p=i[l];p&&(u[l]=p)}function o(u,i){u.rawProgramDateTime?u.programDateTime=Date.parse(u.rawProgramDateTime):i!=null&&i.programDateTime&&(u.programDateTime=i.endProgramDateTime),Object(R.isFiniteNumber)(u.programDateTime)||(u.programDateTime=null,u.rawProgramDateTime=null)}},"./src/loader/playlist-loader.ts":function(N,w,h){h.r(w);var R=h("./src/polyfills/number.ts"),b=h("./src/events.ts"),A=h("./src/errors.ts"),D=h("./src/utils/logger.ts"),I=h("./src/utils/mp4-tools.ts"),_=h("./src/loader/m3u8-parser.ts"),s=h("./src/types/loader.ts"),L=h("./src/utils/attr-list.ts");function m(S,T){var d=S.url;return d!==void 0&&d.indexOf("data:")!==0||(d=T.url),d}var f=function(){function S(d){this.hls=void 0,this.loaders=Object.create(null),this.hls=d,this.registerListeners()}var T=S.prototype;return T.registerListeners=function(){var d=this.hls;d.on(b.Events.MANIFEST_LOADING,this.onManifestLoading,this),d.on(b.Events.LEVEL_LOADING,this.onLevelLoading,this),d.on(b.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),d.on(b.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},T.unregisterListeners=function(){var d=this.hls;d.off(b.Events.MANIFEST_LOADING,this.onManifestLoading,this),d.off(b.Events.LEVEL_LOADING,this.onLevelLoading,this),d.off(b.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),d.off(b.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},T.createInternalLoader=function(d){var e=this.hls.config,a=e.pLoader,t=e.loader,o=new(a||t)(e);return d.loader=o,this.loaders[d.type]=o,o},T.getInternalLoader=function(d){return this.loaders[d.type]},T.resetInternalLoader=function(d){this.loaders[d]&&delete this.loaders[d]},T.destroyInternalLoaders=function(){for(var d in this.loaders){var e=this.loaders[d];e&&e.destroy(),this.resetInternalLoader(d)}},T.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},T.onManifestLoading=function(d,e){var a=e.url;this.load({id:null,groupId:null,level:0,responseType:"text",type:s.PlaylistContextType.MANIFEST,url:a,deliveryDirectives:null})},T.onLevelLoading=function(d,e){var a=e.id,t=e.level,o=e.url,u=e.deliveryDirectives;this.load({id:a,groupId:null,level:t,responseType:"text",type:s.PlaylistContextType.LEVEL,url:o,deliveryDirectives:u})},T.onAudioTrackLoading=function(d,e){var a=e.id,t=e.groupId,o=e.url,u=e.deliveryDirectives;this.load({id:a,groupId:t,level:null,responseType:"text",type:s.PlaylistContextType.AUDIO_TRACK,url:o,deliveryDirectives:u})},T.onSubtitleTrackLoading=function(d,e){var a=e.id,t=e.groupId,o=e.url,u=e.deliveryDirectives;this.load({id:a,groupId:t,level:null,responseType:"text",type:s.PlaylistContextType.SUBTITLE_TRACK,url:o,deliveryDirectives:u})},T.load=function(d){var e,a,t,o,u,i,l=this.hls.config,p=this.getInternalLoader(d);if(p){var g=p.context;if(g&&g.url===d.url)return void D.logger.trace("[playlist-loader]: playlist request ongoing");D.logger.log("[playlist-loader]: aborting previous loader for type: "+d.type),p.abort()}switch(d.type){case s.PlaylistContextType.MANIFEST:a=l.manifestLoadingMaxRetry,t=l.manifestLoadingTimeOut,o=l.manifestLoadingRetryDelay,u=l.manifestLoadingMaxRetryTimeout;break;case s.PlaylistContextType.LEVEL:case s.PlaylistContextType.AUDIO_TRACK:case s.PlaylistContextType.SUBTITLE_TRACK:a=0,t=l.levelLoadingTimeOut;break;default:a=l.levelLoadingMaxRetry,t=l.levelLoadingTimeOut,o=l.levelLoadingRetryDelay,u=l.levelLoadingMaxRetryTimeout}if(p=this.createInternalLoader(d),(e=d.deliveryDirectives)!==null&&e!==void 0&&e.part&&(d.type===s.PlaylistContextType.LEVEL&&d.level!==null?i=this.hls.levels[d.level].details:d.type===s.PlaylistContextType.AUDIO_TRACK&&d.id!==null?i=this.hls.audioTracks[d.id].details:d.type===s.PlaylistContextType.SUBTITLE_TRACK&&d.id!==null&&(i=this.hls.subtitleTracks[d.id].details),i)){var v=i.partTarget,r=i.targetduration;v&&r&&(t=Math.min(1e3*Math.max(3*v,.8*r),t))}var n={timeout:t,maxRetry:a,retryDelay:o,maxRetryDelay:u,highWaterMark:0},c={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};p.load(d,n,c)},T.loadsuccess=function(d,e,a,t){if(t===void 0&&(t=null),a.isSidxRequest)return this.handleSidxRequest(d,a),void this.handlePlaylistLoaded(d,e,a,t);this.resetInternalLoader(a.type);var o=d.data;o.indexOf("#EXTM3U")===0?(e.parsing.start=performance.now(),o.indexOf("#EXTINF:")>0||o.indexOf("#EXT-X-TARGETDURATION:")>0?this.handleTrackOrLevelPlaylist(d,e,a,t):this.handleMasterPlaylist(d,e,a,t)):this.handleManifestParsingError(d,a,"no EXTM3U delimiter",t)},T.loaderror=function(d,e,a){a===void 0&&(a=null),this.handleNetworkError(e,a,!1,d)},T.loadtimeout=function(d,e,a){a===void 0&&(a=null),this.handleNetworkError(e,a,!0)},T.handleMasterPlaylist=function(d,e,a,t){var o=this.hls,u=d.data,i=m(d,a),l=_.default.parseMasterPlaylist(u,i),p=l.levels,g=l.sessionData;if(p.length){var v=p.map(function(y){return{id:y.attrs.AUDIO,audioCodec:y.audioCodec}}),r=p.map(function(y){return{id:y.attrs.SUBTITLES,textCodec:y.textCodec}}),n=_.default.parseMasterPlaylistMedia(u,i,"AUDIO",v),c=_.default.parseMasterPlaylistMedia(u,i,"SUBTITLES",r),E=_.default.parseMasterPlaylistMedia(u,i,"CLOSED-CAPTIONS");n.length&&(n.some(function(y){return!y.url})||!p[0].audioCodec||p[0].attrs.AUDIO||(D.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),n.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new L.AttrList({}),bitrate:0,url:""}))),o.trigger(b.Events.MANIFEST_LOADED,{levels:p,audioTracks:n,subtitles:c,captions:E,url:i,stats:e,networkDetails:t,sessionData:g})}else this.handleManifestParsingError(d,a,"no level found in manifest",t)},T.handleTrackOrLevelPlaylist=function(d,e,a,t){var o=this.hls,u=a.id,i=a.level,l=a.type,p=m(d,a),g=Object(R.isFiniteNumber)(u)?u:0,v=Object(R.isFiniteNumber)(i)?i:g,r=function(k){switch(k.type){case s.PlaylistContextType.AUDIO_TRACK:return s.PlaylistLevelType.AUDIO;case s.PlaylistContextType.SUBTITLE_TRACK:return s.PlaylistLevelType.SUBTITLE;default:return s.PlaylistLevelType.MAIN}}(a),n=_.default.parseLevelPlaylist(d.data,p,v,r,g);if(n.fragments.length){if(l===s.PlaylistContextType.MANIFEST){var c={attrs:new L.AttrList({}),bitrate:0,details:n,name:"",url:p};o.trigger(b.Events.MANIFEST_LOADED,{levels:[c],audioTracks:[],url:p,stats:e,networkDetails:t,sessionData:null})}if(e.parsing.end=performance.now(),n.needSidxRanges){var E,y=(E=n.fragments[0].initSegment)===null||E===void 0?void 0:E.url;this.load({url:y,isSidxRequest:!0,type:l,level:i,levelDetails:n,id:u,groupId:null,rangeStart:0,rangeEnd:2048,responseType:"arraybuffer",deliveryDirectives:null})}else a.levelDetails=n,this.handlePlaylistLoaded(d,e,a,t)}else o.trigger(b.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:p,reason:"no fragments found in level",level:typeof a.level=="number"?a.level:void 0})},T.handleSidxRequest=function(d,e){var a=Object(I.parseSegmentIndex)(new Uint8Array(d.data));if(a){var t=a.references,o=e.levelDetails;t.forEach(function(u,i){var l=u.info,p=o.fragments[i];p.byteRange.length===0&&p.setByteRange(String(1+l.end-l.start)+"@"+String(l.start)),p.initSegment&&p.initSegment.setByteRange(String(a.moovEndOffset)+"@0")})}},T.handleManifestParsingError=function(d,e,a,t){this.hls.trigger(b.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:e.type===s.PlaylistContextType.MANIFEST,url:d.url,reason:a,response:d,context:e,networkDetails:t})},T.handleNetworkError=function(d,e,a,t){a===void 0&&(a=!1),D.logger.warn("[playlist-loader]: A network "+(a?"timeout":"error")+" occurred while loading "+d.type+" level: "+d.level+" id: "+d.id+' group-id: "'+d.groupId+'"');var o=A.ErrorDetails.UNKNOWN,u=!1,i=this.getInternalLoader(d);switch(d.type){case s.PlaylistContextType.MANIFEST:o=a?A.ErrorDetails.MANIFEST_LOAD_TIMEOUT:A.ErrorDetails.MANIFEST_LOAD_ERROR,u=!0;break;case s.PlaylistContextType.LEVEL:o=a?A.ErrorDetails.LEVEL_LOAD_TIMEOUT:A.ErrorDetails.LEVEL_LOAD_ERROR,u=!1;break;case s.PlaylistContextType.AUDIO_TRACK:o=a?A.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:A.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,u=!1;break;case s.PlaylistContextType.SUBTITLE_TRACK:o=a?A.ErrorDetails.SUBTITLE_TRACK_LOAD_TIMEOUT:A.ErrorDetails.SUBTITLE_LOAD_ERROR,u=!1}i&&this.resetInternalLoader(d.type);var l={type:A.ErrorTypes.NETWORK_ERROR,details:o,fatal:u,url:d.url,loader:i,context:d,networkDetails:e};t&&(l.response=t),this.hls.trigger(b.Events.ERROR,l)},T.handlePlaylistLoaded=function(d,e,a,t){var o=a.type,u=a.level,i=a.id,l=a.groupId,p=a.loader,g=a.levelDetails,v=a.deliveryDirectives;if(g!=null&&g.targetduration){if(p)switch(g.live&&(p.getCacheAge&&(g.ageHeader=p.getCacheAge()||0),p.getCacheAge&&!isNaN(g.ageHeader)||(g.ageHeader=0)),o){case s.PlaylistContextType.MANIFEST:case s.PlaylistContextType.LEVEL:this.hls.trigger(b.Events.LEVEL_LOADED,{details:g,level:u||0,id:i||0,stats:e,networkDetails:t,deliveryDirectives:v});break;case s.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(b.Events.AUDIO_TRACK_LOADED,{details:g,id:i||0,groupId:l||"",stats:e,networkDetails:t,deliveryDirectives:v});break;case s.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(b.Events.SUBTITLE_TRACK_LOADED,{details:g,id:i||0,groupId:l||"",stats:e,networkDetails:t,deliveryDirectives:v})}}else this.handleManifestParsingError(d,a,"invalid target duration",t)},S}();w.default=f},"./src/polyfills/number.ts":function(N,w,h){h.r(w),h.d(w,"isFiniteNumber",function(){return R}),h.d(w,"MAX_SAFE_INTEGER",function(){return b});var R=Number.isFinite||function(A){return typeof A=="number"&&isFinite(A)},b=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/remux/aac-helper.ts":function(N,w,h){h.r(w);var R=function(){function b(){}return b.getSilentFrame=function(A,D){switch(A){case"mp4a.40.2":if(D===1)return new Uint8Array([0,200,0,128,35,128]);if(D===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(D===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(D===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(D===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(D===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(D===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(D===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(D===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}},b}();w.default=R},"./src/remux/mp4-generator.ts":function(N,w,h){h.r(w);var R=Math.pow(2,32)-1,b=function(){function A(){}return A.init=function(){var D;for(D in A.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]},A.types)A.types.hasOwnProperty(D)&&(A.types[D]=[D.charCodeAt(0),D.charCodeAt(1),D.charCodeAt(2),D.charCodeAt(3)]);var I=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),_=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);A.HDLR_TYPES={video:I,audio:_};var s=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),L=new Uint8Array([0,0,0,0,0,0,0,0]);A.STTS=A.STSC=A.STCO=L,A.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),A.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),A.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),A.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);var m=new Uint8Array([105,115,111,109]),f=new Uint8Array([97,118,99,49]),S=new Uint8Array([0,0,0,1]);A.FTYP=A.box(A.types.ftyp,m,S,m,f),A.DINF=A.box(A.types.dinf,A.box(A.types.dref,s))},A.box=function(D){for(var I=8,_=arguments.length,s=new Array(_>1?_-1:0),L=1;L<_;L++)s[L-1]=arguments[L];for(var m=s.length,f=m;m--;)I+=s[m].byteLength;var S=new Uint8Array(I);for(S[0]=I>>24&255,S[1]=I>>16&255,S[2]=I>>8&255,S[3]=255&I,S.set(D,4),m=0,I=8;m>24&255,D>>16&255,D>>8&255,255&D,_>>24,_>>16&255,_>>8&255,255&_,s>>24,s>>16&255,s>>8&255,255&s,85,196,0,0]))},A.mdia=function(D){return A.box(A.types.mdia,A.mdhd(D.timescale,D.duration),A.hdlr(D.type),A.minf(D))},A.mfhd=function(D){return A.box(A.types.mfhd,new Uint8Array([0,0,0,0,D>>24,D>>16&255,D>>8&255,255&D]))},A.minf=function(D){return D.type==="audio"?A.box(A.types.minf,A.box(A.types.smhd,A.SMHD),A.DINF,A.stbl(D)):A.box(A.types.minf,A.box(A.types.vmhd,A.VMHD),A.DINF,A.stbl(D))},A.moof=function(D,I,_){return A.box(A.types.moof,A.mfhd(D),A.traf(_,I))},A.moov=function(D){for(var I=D.length,_=[];I--;)_[I]=A.trak(D[I]);return A.box.apply(null,[A.types.moov,A.mvhd(D[0].timescale,D[0].duration)].concat(_).concat(A.mvex(D)))},A.mvex=function(D){for(var I=D.length,_=[];I--;)_[I]=A.trex(D[I]);return A.box.apply(null,[A.types.mvex].concat(_))},A.mvhd=function(D,I){I*=D;var _=Math.floor(I/(R+1)),s=Math.floor(I%(R+1)),L=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,D>>24&255,D>>16&255,D>>8&255,255&D,_>>24,_>>16&255,_>>8&255,255&_,s>>24,s>>16&255,s>>8&255,255&s,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return A.box(A.types.mvhd,L)},A.sdtp=function(D){var I,_,s=D.samples||[],L=new Uint8Array(4+s.length);for(I=0;I>>8&255),L.push(255&s),L=L.concat(Array.prototype.slice.call(_));for(I=0;I>>8&255),m.push(255&s),m=m.concat(Array.prototype.slice.call(_));var f=A.box(A.types.avcC,new Uint8Array([1,L[3],L[4],L[5],255,224|D.sps.length].concat(L).concat([D.pps.length]).concat(m))),S=D.width,T=D.height,d=D.pixelRatio[0],e=D.pixelRatio[1];return A.box(A.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,S>>8&255,255&S,T>>8&255,255&T,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),f,A.box(A.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),A.box(A.types.pasp,new Uint8Array([d>>24,d>>16&255,d>>8&255,255&d,e>>24,e>>16&255,e>>8&255,255&e])))},A.esds=function(D){var I=D.config.length;return new Uint8Array([0,0,0,0,3,23+I,0,1,0,4,15+I,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([I]).concat(D.config).concat([6,1,2]))},A.mp4a=function(D){var I=D.samplerate;return A.box(A.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,D.channelCount,0,16,0,0,0,0,I>>8&255,255&I,0,0]),A.box(A.types.esds,A.esds(D)))},A.mp3=function(D){var I=D.samplerate;return A.box(A.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,D.channelCount,0,16,0,0,0,0,I>>8&255,255&I,0,0]))},A.stsd=function(D){return D.type==="audio"?D.isAAC||D.codec!=="mp3"?A.box(A.types.stsd,A.STSD,A.mp4a(D)):A.box(A.types.stsd,A.STSD,A.mp3(D)):A.box(A.types.stsd,A.STSD,A.avc1(D))},A.tkhd=function(D){var I=D.id,_=D.duration*D.timescale,s=D.width,L=D.height,m=Math.floor(_/(R+1)),f=Math.floor(_%(R+1));return A.box(A.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,I>>24&255,I>>16&255,I>>8&255,255&I,0,0,0,0,m>>24,m>>16&255,m>>8&255,255&m,f>>24,f>>16&255,f>>8&255,255&f,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,s>>8&255,255&s,0,0,L>>8&255,255&L,0,0]))},A.traf=function(D,I){var _=A.sdtp(D),s=D.id,L=Math.floor(I/(R+1)),m=Math.floor(I%(R+1));return A.box(A.types.traf,A.box(A.types.tfhd,new Uint8Array([0,0,0,0,s>>24,s>>16&255,s>>8&255,255&s])),A.box(A.types.tfdt,new Uint8Array([1,0,0,0,L>>24,L>>16&255,L>>8&255,255&L,m>>24,m>>16&255,m>>8&255,255&m])),A.trun(D,_.length+16+20+8+16+8+8),_)},A.trak=function(D){return D.duration=D.duration||4294967295,A.box(A.types.trak,A.tkhd(D),A.mdia(D))},A.trex=function(D){var I=D.id;return A.box(A.types.trex,new Uint8Array([0,0,0,0,I>>24,I>>16&255,I>>8&255,255&I,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},A.trun=function(D,I){var _,s,L,m,f,S,T=D.samples||[],d=T.length,e=12+16*d,a=new Uint8Array(e);for(I+=8+e,a.set([0,0,15,1,d>>>24&255,d>>>16&255,d>>>8&255,255&d,I>>>24&255,I>>>16&255,I>>>8&255,255&I],0),_=0;_>>24&255,L>>>16&255,L>>>8&255,255&L,m>>>24&255,m>>>16&255,m>>>8&255,255&m,f.isLeading<<2|f.dependsOn,f.isDependedOn<<6|f.hasRedundancy<<4|f.paddingValue<<1|f.isNonSync,61440&f.degradPrio,15&f.degradPrio,S>>>24&255,S>>>16&255,S>>>8&255,255&S],12+16*_);return A.box(A.types.trun,a)},A.initSegment=function(D){A.types||A.init();var I=A.moov(D),_=new Uint8Array(A.FTYP.byteLength+I.byteLength);return _.set(A.FTYP),_.set(I,A.FTYP.byteLength),_},A}();b.types=void 0,b.HDLR_TYPES=void 0,b.STTS=void 0,b.STSC=void 0,b.STCO=void 0,b.STSZ=void 0,b.VMHD=void 0,b.SMHD=void 0,b.STSD=void 0,b.FTYP=void 0,b.DINF=void 0,w.default=b},"./src/remux/mp4-remuxer.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return d}),h.d(w,"normalizePts",function(){return e});var R=h("./src/polyfills/number.ts"),b=h("./src/remux/aac-helper.ts"),A=h("./src/remux/mp4-generator.ts"),D=h("./src/events.ts"),I=h("./src/errors.ts"),_=h("./src/utils/logger.ts"),s=h("./src/types/loader.ts"),L=h("./src/utils/timescale-conversion.ts");function m(){return(m=Object.assign||function(o){for(var u=1;u0?g:v.pts},i[0].pts);return l&&_.logger.debug("PTS rollover detected"),p},u.remux=function(i,l,p,g,v,r,n,c){var E,y,k,x,C,O,P=v,F=v,M=i.pid>-1,B=l.pid>-1,U=l.samples.length,j=i.samples.length>0,V=U>1;if((!M||j)&&(!B||V)||this.ISGenerated||n){this.ISGenerated||(k=this.generateIS(i,l,v));var H=this.isVideoContiguous,X=-1;if(V&&(X=function(le){for(var re=0;re0){_.logger.warn("[mp4-remuxer]: Dropped "+X+" out of "+U+" video samples due to a missing keyframe");var q=this.getVideoStartPts(l.samples);l.samples=l.samples.slice(X),l.dropped+=X,F+=(l.samples[0].pts-q)/(l.timescale||9e4)}else X===-1&&(_.logger.warn("[mp4-remuxer]: No keyframe found out of "+U+" video samples"),O=!1);if(this.ISGenerated){if(j&&V){var $=this.getVideoStartPts(l.samples),ie=(e(i.samples[0].pts,$)-$)/l.inputTimeScale;P+=Math.max(0,ie),F+=Math.max(0,-ie)}if(j){if(i.samplerate||(_.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),k=this.generateIS(i,l,v)),y=this.remuxAudio(i,P,this.isAudioContiguous,r,B||V||c===s.PlaylistLevelType.AUDIO?F:void 0),V){var se=y?y.endPTS-y.startPTS:0;l.inputTimeScale||(_.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),k=this.generateIS(i,l,v)),E=this.remuxVideo(l,F,H,se)}}else V&&(E=this.remuxVideo(l,F,H,0));E&&(E.firstKeyFrame=X,E.independent=X!==-1)}}return this.ISGenerated&&(p.samples.length&&(C=this.remuxID3(p,v)),g.samples.length&&(x=this.remuxText(g,v))),{audio:y,video:E,initSegment:k,independent:O,text:x,id3:C}},u.generateIS=function(i,l,p){var g,v,r,n=i.samples,c=l.samples,E=this.typeSupported,y={},k=!Object(R.isFiniteNumber)(this._initPTS),x="audio/mp4";if(k&&(g=v=1/0),i.config&&n.length&&(i.timescale=i.samplerate,i.isAAC||(E.mpeg?(x="audio/mpeg",i.codec=""):E.mp3&&(i.codec="mp3")),y.audio={id:"audio",container:x,codec:i.codec,initSegment:!i.isAAC&&E.mpeg?new Uint8Array(0):A.default.initSegment([i]),metadata:{channelCount:i.channelCount}},k&&(r=i.inputTimeScale,g=v=n[0].pts-Math.round(r*p))),l.sps&&l.pps&&c.length&&(l.timescale=l.inputTimeScale,y.video={id:"main",container:"video/mp4",codec:l.codec,initSegment:A.default.initSegment([l]),metadata:{width:l.width,height:l.height}},k)){r=l.inputTimeScale;var C=this.getVideoStartPts(c),O=Math.round(r*p);v=Math.min(v,e(c[0].dts,C)-O),g=Math.min(g,C-O)}if(Object.keys(y).length)return this.ISGenerated=!0,k&&(this._initPTS=g,this._initDTS=v),{tracks:y,initPTS:g,timescale:r}},u.remuxVideo=function(i,l,p,g){var v,r,n,c=i.inputTimeScale,E=i.samples,y=[],k=E.length,x=this._initPTS,C=this.nextAvcDts,O=8,P=Number.POSITIVE_INFINITY,F=Number.NEGATIVE_INFINITY,M=0,B=!1;p&&C!==null||(C=l*c-(E[0].pts-e(E[0].dts,E[0].pts)));for(var U=0;Uj.pts&&(M=Math.max(Math.min(M,j.pts-j.dts),-18e3)),j.dts0?U-1:U].dts&&(B=!0)}B&&E.sort(function(_e,Ue){var Dt=_e.dts-Ue.dts,Rt=_e.pts-Ue.pts;return Dt||Rt}),r=E[0].dts,n=E[E.length-1].dts;var V=Math.round((n-r)/(k-1));if(M<0){if(M<-2*V){_.logger.warn("PTS < DTS detected in video samples, offsetting DTS from PTS by "+Object(L.toMsFromMpegTsClock)(-V,!0)+" ms");for(var H=M,X=0;XV;if(ie||$<-1){ie?_.logger.warn("AVC: "+Object(L.toMsFromMpegTsClock)($,!0)+" ms ("+$+"dts) hole between fragments detected, filling it"):_.logger.warn("AVC: "+Object(L.toMsFromMpegTsClock)(-$,!0)+" ms ("+$+"dts) overlapping between fragments detected"),r=C;var se=E[0].pts-$;E[0].dts=r,E[0].pts=se,_.logger.log("Video: First PTS/DTS adjusted: "+Object(L.toMsFromMpegTsClock)(se,!0)+"/"+Object(L.toMsFromMpegTsClock)(r,!0)+", delta: "+Object(L.toMsFromMpegTsClock)($,!0)+" ms")}}T&&(r=Math.max(0,r));for(var le=0,re=0,fe=0;fe0?pe-1:pe].dts;if(qe.stretchShortVideoTrack&&this.nextAudioPts!==null){var Qe=Math.floor(qe.maxBufferHole*c),ze=(g?P+g*c:this.nextAudioPts)-ve.pts;ze>Qe?((v=ze-Ce)<0&&(v=Ce),_.logger.log("[mp4-remuxer]: It is approximately "+ze/90+" ms to the next segment; using duration "+v/90+" ms for the last video frame.")):v=Ce}else v=Ce}var Ne=Math.round(ve.pts-ve.dts);y.push(new a(ve.key,v,ke,Ne))}if(y.length&&f&&f<70){var Pe=y[0].flags;Pe.dependsOn=2,Pe.isNonSync=0}console.assert(v!==void 0,"mp4SampleDuration must be computed"),this.nextAvcDts=C=n+v,this.isVideoContiguous=!0;var Be={data1:A.default.moof(i.sequenceNumber++,r,m({},i,{samples:y})),data2:oe,startPTS:P/c,endPTS:(F+v)/c,startDTS:r/c,endDTS:C/c,type:"video",hasAudio:!1,hasVideo:!0,nb:y.length,dropped:i.dropped};return i.samples=[],i.dropped=0,console.assert(oe.length,"MDAT length must not be zero"),Be},u.remuxAudio=function(i,l,p,g,v){var r=i.inputTimeScale,n=r/(i.samplerate?i.samplerate:r),c=i.isAAC?1024:1152,E=c*n,y=this._initPTS,k=!i.isAAC&&this.typeSupported.mpeg,x=[],C=i.samples,O=k?0:8,P=this.nextAudioPts||-1,F=l*r;if(this.isAudioContiguous=p=p||C.length&&P>0&&(g&&Math.abs(F-P)<9e3||Math.abs(e(C[0].pts-y,F)-P)<20*E),C.forEach(function(Ie){Ie.pts=e(Ie.pts-y,F)}),!p||P<0){if(!(C=C.filter(function(Ie){return Ie.pts>=0})).length)return;P=v===0?0:g?Math.max(0,F):C[0].pts}if(i.isAAC)for(var M=v!==void 0,B=this.config.maxAudioFramesDrift,U=0,j=P;U=B*E&&q<1e4&&M){var $=Math.round(X/E);(j=H-$*E)<0&&($--,j+=E),U===0&&(this.nextAudioPts=P=j),_.logger.warn("[mp4-remuxer]: Injecting "+$+" audio frame @ "+(j/r).toFixed(3)+"s due to "+Math.round(1e3*X/r)+" ms gap.");for(var ie=0;ie<$;ie++){var se=Math.max(j,0),le=b.default.getSilentFrame(i.manifestCodec||i.codec,i.channelCount);le||(_.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),le=V.unit.subarray()),C.splice(U,0,{unit:le,pts:se}),j+=E,U++}}V.pts=j,j+=E}for(var re,fe=null,te=null,ne=0,he=C.length;he--;)ne+=C[he].unit.byteLength;for(var ue=0,W=C.length;ue0))return;ne+=O;try{re=new Uint8Array(ne)}catch{return void this.observer.emit(D.Events.ERROR,D.Events.ERROR,{type:I.ErrorTypes.MUX_ERROR,details:I.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:ne,reason:"fail allocating audio mdat "+ne})}k||(new DataView(re.buffer).setUint32(0,ne),re.set(A.default.types.mdat,4))}re.set(de,O);var pe=de.byteLength;O+=pe,x.push(new a(!0,c,pe,0)),te=Ae}var ve=x.length;if(ve){var We=x[x.length-1];this.nextAudioPts=P=te+n*We.duration;var ke=k?new Uint8Array(0):A.default.moof(i.sequenceNumber++,fe/n,m({},i,{samples:x}));i.samples=[];var Oe=fe/r,Ye=P/r,Me={data1:ke,data2:re,startPTS:Oe,endPTS:Ye,startDTS:Oe,endDTS:Ye,type:"audio",hasAudio:!0,hasVideo:!1,nb:ve};return this.isAudioContiguous=!0,console.assert(re.length,"MDAT length must not be zero"),Me}},u.remuxEmptyAudio=function(i,l,p,g){var v=i.inputTimeScale,r=v/(i.samplerate?i.samplerate:v),n=this.nextAudioPts,c=(n!==null?n:g.startDTS*v)+this._initDTS,E=g.endDTS*v+this._initDTS,y=1024*r,k=Math.ceil((E-c)/y),x=b.default.getSilentFrame(i.manifestCodec||i.codec,i.channelCount);if(_.logger.warn("[mp4-remuxer]: remux empty Audio"),x){for(var C=[],O=0;O4294967296;)o+=i;return o}var a=function(o,u,i,l){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=u,this.size=i,this.cts=l,this.flags=new t(o)},t=function(o){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=o?2:1,this.isNonSync=o?0:1}},"./src/remux/passthrough-remuxer.ts":function(N,w,h){h.r(w);var R=h("./src/polyfills/number.ts"),b=h("./src/utils/mp4-tools.ts"),A=h("./src/loader/fragment.ts"),D=h("./src/utils/logger.ts"),I=function(){function L(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=void 0,this.initTracks=void 0,this.lastEndDTS=null}var m=L.prototype;return m.destroy=function(){},m.resetTimeStamp=function(f){this.initPTS=f,this.lastEndDTS=null},m.resetNextTimestamp=function(){this.lastEndDTS=null},m.resetInitSegment=function(f,S,T){this.audioCodec=S,this.videoCodec=T,this.generateInitSegment(f),this.emitInitSegment=!0},m.generateInitSegment=function(f){var S=this.audioCodec,T=this.videoCodec;if(!f||!f.byteLength)return this.initTracks=void 0,void(this.initData=void 0);var d=this.initData=Object(b.parseInitSegment)(f);S||(S=s(d.audio,A.ElementaryStreamTypes.AUDIO)),T||(T=s(d.video,A.ElementaryStreamTypes.VIDEO));var e={};d.audio&&d.video?e.audiovideo={container:"video/mp4",codec:S+","+T,initSegment:f,id:"main"}:d.audio?e.audio={container:"audio/mp4",codec:S,initSegment:f,id:"audio"}:d.video?e.video={container:"video/mp4",codec:T,initSegment:f,id:"main"}:D.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=e},m.remux=function(f,S,T,d,e){var a=this.initPTS,t=this.lastEndDTS,o={audio:void 0,video:void 0,text:d,id3:T,initSegment:void 0};Object(R.isFiniteNumber)(t)||(t=this.lastEndDTS=e||0);var u=S.samples;if(!u||!u.length)return o;var i={initPTS:void 0,timescale:1},l=this.initData;if(l&&l.length||(this.generateInitSegment(u),l=this.initData),!l||!l.length)return D.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),o;this.emitInitSegment&&(i.tracks=this.initTracks,this.emitInitSegment=!1),Object(R.isFiniteNumber)(a)||(this.initPTS=i.initPTS=a=_(l,u,t));var p=Object(b.getDuration)(u,l),g=t,v=p+g;Object(b.offsetStartDTS)(l,u,a),p>0?this.lastEndDTS=v:(D.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());var r=!!l.audio,n=!!l.video,c="";r&&(c+="audio"),n&&(c+="video");var E={data1:u,startPTS:g,startDTS:g,endPTS:v,endDTS:v,type:c,hasAudio:r,hasVideo:n,nb:1,dropped:0};return o.audio=E.type==="audio"?E:void 0,o.video=E.type!=="audio"?E:void 0,o.text=d,o.id3=T,o.initSegment=i,o},L}(),_=function(L,m,f){return Object(b.getStartDTS)(L,m)-f};function s(L,m){var f=L==null?void 0:L.codec;return f&&f.length>4?f:f==="hvc1"?"hvc1.1.c.L120.90":f==="av01"?"av01.0.04M.08":f==="avc1"||m===A.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}w.default=I},"./src/task-loop.ts":function(N,w,h){h.r(w),h.d(w,"default",function(){return R});var R=function(){function b(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}var A=b.prototype;return A.destroy=function(){this.onHandlerDestroying(),this.onHandlerDestroyed()},A.onHandlerDestroying=function(){this.clearNextTick(),this.clearInterval()},A.onHandlerDestroyed=function(){},A.hasInterval=function(){return!!this._tickInterval},A.hasNextTick=function(){return!!this._tickTimer},A.setInterval=function(D){return!this._tickInterval&&(this._tickInterval=self.setInterval(this._boundTick,D),!0)},A.clearInterval=function(){return!!this._tickInterval&&(self.clearInterval(this._tickInterval),this._tickInterval=null,!0)},A.clearNextTick=function(){return!!this._tickTimer&&(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0)},A.tick=function(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)},A.tickImmediate=function(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)},A.doTick=function(){},b}()},"./src/types/level.ts":function(N,w,h){function R(s,L){for(var m=0;mNumber.MAX_SAFE_INTEGER?1/0:s},I.hexadecimalInteger=function(_){if(this[_]){var s=(this[_]||"0x").slice(2);s=(1&s.length?"0":"")+s;for(var L=new Uint8Array(s.length/2),m=0;mNumber.MAX_SAFE_INTEGER?1/0:s},I.decimalFloatingPoint=function(_){return parseFloat(this[_])},I.optionalFloat=function(_,s){var L=this[_];return L?parseFloat(L):s},I.enumeratedString=function(_){return this[_]},I.bool=function(_){return this[_]==="YES"},I.decimalResolution=function(_){var s=R.exec(this[_]);if(s!==null)return{width:parseInt(s[1],10),height:parseInt(s[2],10)}},D.parseAttrList=function(_){var s,L={};for(b.lastIndex=0;(s=b.exec(_))!==null;){var m=s[2];m.indexOf('"')===0&&m.lastIndexOf('"')===m.length-1&&(m=m.slice(1,-1)),L[s[1]]=m}return L},D}()},"./src/utils/binary-search.ts":function(N,w,h){h.r(w),w.default={search:function(R,b){for(var A=0,D=R.length-1,I=null,_=null;A<=D;){var s=b(_=R[I=(A+D)/2|0]);if(s>0)A=I+1;else{if(!(s<0))return _;D=I-1}}return null}}},"./src/utils/buffer-helper.ts":function(N,w,h){h.r(w),h.d(w,"BufferHelper",function(){return A});var R=h("./src/utils/logger.ts"),b={length:0,start:function(){return 0},end:function(){return 0}},A=function(){function D(){}return D.isBuffered=function(I,_){try{if(I){for(var s=D.getBuffered(I),L=0;L=s.start(L)&&_<=s.end(L))return!0}}catch{}return!1},D.bufferInfo=function(I,_,s){try{if(I){var L,m=D.getBuffered(I),f=[];for(L=0;LS&&(L[f-1].end=I[m].end):L.push(I[m])}else L.push(I[m])}else L=I;for(var T,d=0,e=_,a=_,t=0;t=o&&_=r&&A.logger.log(this.time+" ["+r+"] "+n)},v}(),e=function(v){for(var r=[],n=0;ns&&(this.logger.log(R.DEBUG,"Too large cursor position "+this.pos),this.pos=s)},r.moveCursor=function(n){var c=this.pos+n;if(n>1)for(var E=this.pos+1;E=144&&this.backSpace();var c=I(n);this.pos>=s?this.logger.log(R.ERROR,"Cannot insert "+n.toString(16)+" ("+c+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(c,this.currPenState),this.moveCursor(1))},r.clearFromPos=function(n){var c;for(c=n;c0&&(E=n?"["+c.join(" | ")+"]":c.join(` +`)),E},r.getTextAndFormat=function(){return this.rows},v}(),i=function(){function v(n,c,E){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=n,this.outputFilter=c,this.mode=null,this.verbose=0,this.displayedMemory=new u(E),this.nonDisplayedMemory=new u(E),this.lastOutputScreen=new u(E),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=E}var r=v.prototype;return r.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},r.getHandler=function(){return this.outputFilter},r.setHandler=function(n){this.outputFilter=n},r.setPAC=function(n){this.writeScreen.setPAC(n)},r.setBkgData=function(n){this.writeScreen.setBkgData(n)},r.setMode=function(n){n!==this.mode&&(this.mode=n,this.logger.log(R.INFO,"MODE="+n),this.mode==="MODE_POP-ON"?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),this.mode!=="MODE_ROLL-UP"&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=n)},r.insertChars=function(n){for(var c=0;c=46,c.italics)c.foreground="white";else{var E=Math.floor(n/2)-16;c.foreground=["white","green","blue","cyan","red","yellow","magenta"][E]}this.logger.log(R.INFO,"MIDROW: "+JSON.stringify(c)),this.writeScreen.setPen(c)},r.outputDataUpdate=function(n){n===void 0&&(n=!1);var c=this.logger.time;c!==null&&this.outputFilter&&(this.cueStartTime!==null||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,c,this.lastOutputScreen),n&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:c):this.cueStartTime=c,this.lastOutputScreen.copy(this.displayedMemory))},r.cueSplitAtTime=function(n){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,n,this.displayedMemory),this.cueStartTime=n))},v}(),l=function(){function v(n,c,E){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var y=new d;this.channels=[null,new i(n,c,y),new i(n+1,E,y)],this.cmdHistory={a:null,b:null},this.logger=y}var r=v.prototype;return r.getHandler=function(n){return this.channels[n].getHandler()},r.setHandler=function(n,c){this.channels[n].setHandler(c)},r.addData=function(n,c){var E,y,k,x=!1;this.logger.time=n;for(var C=0;C ("+e([y,k])+")"),(E=this.parseCmd(y,k))||(E=this.parseMidrow(y,k)),E||(E=this.parsePAC(y,k)),E||(E=this.parseBackgroundAttributes(y,k)),!E&&(x=this.parseChars(y,k))){var O=this.currentChannel;O&&O>0?this.channels[O].insertChars(x):this.logger.log(R.WARNING,"No channel found yet. TEXT-MODE?")}E||x||this.logger.log(R.WARNING,"Couldn't parse cleaned data "+e([y,k])+" orig: "+e([c[C],c[C+1]]))}},r.parseCmd=function(n,c){var E=this.cmdHistory;if(!((n===20||n===28||n===21||n===29)&&c>=32&&c<=47||(n===23||n===31)&&c>=33&&c<=35))return!1;if(g(n,c,E))return p(null,null,E),this.logger.log(R.DEBUG,"Repeated command ("+e([n,c])+") is dropped"),!0;var y=n===20||n===21||n===23?1:2,k=this.channels[y];return n===20||n===21||n===28||n===29?c===32?k.ccRCL():c===33?k.ccBS():c===34?k.ccAOF():c===35?k.ccAON():c===36?k.ccDER():c===37?k.ccRU(2):c===38?k.ccRU(3):c===39?k.ccRU(4):c===40?k.ccFON():c===41?k.ccRDC():c===42?k.ccTR():c===43?k.ccRTD():c===44?k.ccEDM():c===45?k.ccCR():c===46?k.ccENM():c===47&&k.ccEOC():k.ccTO(c-32),p(n,c,E),this.currentChannel=y,!0},r.parseMidrow=function(n,c){var E=0;if((n===17||n===25)&&c>=32&&c<=47){if((E=n===17?1:2)!==this.currentChannel)return this.logger.log(R.ERROR,"Mismatch channel in midrow parsing"),!1;var y=this.channels[E];return!!y&&(y.ccMIDROW(c),this.logger.log(R.DEBUG,"MIDROW ("+e([n,c])+")"),!0)}return!1},r.parsePAC=function(n,c){var E,y=this.cmdHistory;if(!((n>=17&&n<=23||n>=25&&n<=31)&&c>=64&&c<=127||(n===16||n===24)&&c>=64&&c<=95))return!1;if(g(n,c,y))return p(null,null,y),!0;var k=n<=23?1:2;E=c>=64&&c<=95?k===1?L[n]:f[n]:k===1?m[n]:S[n];var x=this.channels[k];return!!x&&(x.setPAC(this.interpretPAC(E,c)),p(n,c,y),this.currentChannel=k,!0)},r.interpretPAC=function(n,c){var E,y={color:null,italics:!1,indent:null,underline:!1,row:n};return E=c>95?c-96:c-64,y.underline=(1&E)==1,E<=13?y.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(E/2)]:E<=15?(y.italics=!0,y.color="white"):y.indent=4*Math.floor((E-16)/2),y},r.parseChars=function(n,c){var E,y,k=null,x=null;if(n>=25?(E=2,x=n-8):(E=1,x=n),x>=17&&x<=19?(y=x===17?c+80:x===18?c+112:c+144,this.logger.log(R.INFO,"Special char '"+I(y)+"' in channel "+E),k=[y]):n>=32&&n<=127&&(k=c===0?[n]:[n,c]),k){var C=e(k);this.logger.log(R.DEBUG,"Char codes = "+C.join(",")),p(n,c,this.cmdHistory)}return k},r.parseBackgroundAttributes=function(n,c){var E;if(!((n===16||n===24)&&c>=32&&c<=47||(n===23||n===31)&&c>=45&&c<=47))return!1;var y={};n===16||n===24?(E=Math.floor((c-32)/2),y.background=T[E],c%2==1&&(y.background=y.background+"_semi")):c===45?y.background="transparent":(y.foreground="black",c===47&&(y.underline=!0));var k=n<=23?1:2;return this.channels[k].setBkgData(y),p(n,c,this.cmdHistory),!0},r.reset=function(){for(var n=0;n=16?d--:d++;var i=Object(R.fixLineBreaks)(e.trim()),l=Object(b.generateCueId)(s,L,i);_&&_.cues&&_.cues.getCueById(l)||((S=new t(s,L,i)).id=l,S.line=o+1,S.align="left",S.position=10+Math.min(80,10*Math.floor(8*d/32)),a.push(S))}return _&&a.length&&(a.sort(function(p,g){return p.line==="auto"||g.line==="auto"?0:p.line>8&&g.line>8?g.line-p.line:p.line-g.line}),a.forEach(function(p){return Object(A.addCueToTrack)(_,p)})),a}};w.default=I},"./src/utils/discontinuities.ts":function(N,w,h){h.r(w),h.d(w,"findFirstFragWithCC",function(){return D}),h.d(w,"shouldAlignOnDiscontinuities",function(){return I}),h.d(w,"findDiscontinuousReferenceFrag",function(){return _}),h.d(w,"adjustSlidingStart",function(){return L}),h.d(w,"alignStream",function(){return m}),h.d(w,"alignPDT",function(){return f});var R=h("./src/polyfills/number.ts"),b=h("./src/utils/logger.ts"),A=h("./src/controller/level-helper.ts");function D(S,T){for(var d=null,e=0,a=S.length;ed.startCC||S&&S.cc=this.minWeight_},D.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},D.destroy=function(){},A}();w.default=b},"./src/utils/ewma.ts":function(N,w,h){h.r(w);var R=function(){function b(D,I,_){I===void 0&&(I=0),_===void 0&&(_=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=D,this.alpha_=D?Math.exp(Math.log(.5)/D):0,this.estimate_=I,this.totalWeight_=_}var A=b.prototype;return A.sample=function(D,I){var _=Math.pow(this.alpha_,D);this.estimate_=I*(1-_)+_*this.estimate_,this.totalWeight_+=D},A.getTotalWeight=function(){return this.totalWeight_},A.getEstimate=function(){if(this.alpha_){var D=1-Math.pow(this.alpha_,this.totalWeight_);if(D)return this.estimate_/D}return this.estimate_},b}();w.default=R},"./src/utils/fetch-loader.ts":function(N,w,h){h.r(w),h.d(w,"fetchSupported",function(){return m});var R=h("./src/polyfills/number.ts"),b=h("./src/loader/load-stats.ts"),A=h("./src/demux/chunk-cache.ts");function D(d){var e=typeof Map=="function"?new Map:void 0;return(D=function(a){if(a===null||(t=a,Function.toString.call(t).indexOf("[native code]")===-1))return a;var t;if(typeof a!="function")throw new TypeError("Super expression must either be null or a function");if(e!==void 0){if(e.has(a))return e.get(a);e.set(a,o)}function o(){return I(a,arguments,L(this).constructor)}return o.prototype=Object.create(a.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),s(o,a)})(d)}function I(d,e,a){return(I=_()?Reflect.construct:function(t,o,u){var i=[null];i.push.apply(i,o);var l=new(Function.bind.apply(t,i));return u&&s(l,u.prototype),l}).apply(null,arguments)}function _(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function s(d,e){return(s=Object.setPrototypeOf||function(a,t){return a.__proto__=t,a})(d,e)}function L(d){return(L=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(d)}function m(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var f=function(){function d(a){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=a.fetchSetup||S,this.controller=new self.AbortController,this.stats=new b.LoadStats}var e=d.prototype;return e.destroy=function(){this.loader=this.callbacks=null,this.abortInternal()},e.abortInternal=function(){var a=this.response;a&&a.ok||(this.stats.aborted=!0,this.controller.abort())},e.abort=function(){var a;this.abortInternal(),(a=this.callbacks)!==null&&a!==void 0&&a.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)},e.load=function(a,t,o){var u=this,i=this.stats;if(i.loading.start)throw new Error("Loader can only be used once.");i.loading.start=self.performance.now();var l=function(r,n){var c={method:"GET",mode:"cors",credentials:"same-origin",signal:n};return r.rangeEnd&&(c.headers=new self.Headers({Range:"bytes="+r.rangeStart+"-"+String(r.rangeEnd-1)})),c}(a,this.controller.signal),p=o.onProgress,g=a.responseType==="arraybuffer",v=g?"byteLength":"length";this.context=a,this.config=t,this.callbacks=o,this.request=this.fetchSetup(a,l),self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(function(){u.abortInternal(),o.onTimeout(i,a,u.response)},t.timeout),self.fetch(this.request).then(function(r){if(u.response=u.loader=r,!r.ok){var n=r.status,c=r.statusText;throw new T(c||"fetch, bad network response",n,r)}return i.loading.first=Math.max(self.performance.now(),i.loading.start),i.total=parseInt(r.headers.get("Content-Length")||"0"),p&&Object(R.isFiniteNumber)(t.highWaterMark)?u.loadProgressively(r,i,a,t.highWaterMark,p):g?r.arrayBuffer():r.text()}).then(function(r){var n=u.response;self.clearTimeout(u.requestTimeout),i.loading.end=Math.max(self.performance.now(),i.loading.first),i.loaded=i.total=r[v];var c={url:n.url,data:r};p&&!Object(R.isFiniteNumber)(t.highWaterMark)&&p(i,a,r,n),o.onSuccess(c,i,a,n)}).catch(function(r){if(self.clearTimeout(u.requestTimeout),!i.aborted){var n=r.code||0;o.onError({code:n,text:r.message},a,r.details)}})},e.getCacheAge=function(){var a=null;if(this.response){var t=this.response.headers.get("age");a=t?parseFloat(t):null}return a},e.loadProgressively=function(a,t,o,u,i){u===void 0&&(u=0);var l=new A.default,p=a.body.getReader();return function g(){return p.read().then(function(v){if(v.done)return l.dataLength&&i(t,o,l.flush(),a),Promise.resolve(new ArrayBuffer(0));var r=v.value,n=r.length;return t.loaded+=n,n=u&&i(t,o,l.flush(),a)):i(t,o,r,a),g()}).catch(function(){return Promise.reject()})}()},d}();function S(d,e){return new self.Request(d.url,e)}var T=function(d){var e,a;function t(o,u,i){var l;return(l=d.call(this,o)||this).code=void 0,l.details=void 0,l.code=u,l.details=i,l}return a=d,(e=t).prototype=Object.create(a.prototype),e.prototype.constructor=e,s(e,a),t}(D(Error));w.default=f},"./src/utils/imsc1-ttml-parser.ts":function(N,w,h){h.r(w),h.d(w,"IMSC1_CODEC",function(){return L}),h.d(w,"parseIMSC1",function(){return T});var R=h("./src/utils/mp4-tools.ts"),b=h("./src/utils/vttparser.ts"),A=h("./src/utils/vttcue.ts"),D=h("./src/demux/id3.ts"),I=h("./src/utils/timescale-conversion.ts"),_=h("./src/utils/webvtt-parser.ts");function s(){return(s=Object.assign||function(i){for(var l=1;l"):R}function I(s){if(self.console&&s===!0||typeof s=="object"){(function(L){for(var m=arguments.length,f=new Array(m>1?m-1:0),S=1;S>24,u[i+1]=l>>16&255,u[i+2]=l>>8&255,u[i+3]=255&l}function m(u,i){var l,p,g,v=[];if(!i.length)return v;"data"in u?(l=u.data,p=u.start,g=u.end):(p=0,g=(l=u).byteLength);for(var r=p;r1?r+n:g;if(I(l.subarray(r+4,r+8))===i[0])if(i.length===1)v.push({data:l,start:r+8,end:c});else{var E=m({data:l,start:r+8,end:c},i.slice(1));E.length&&D.apply(v,E)}r=c}return v}function f(u){var i=m(u,["moov"])[0],l=i?i.end:null,p=m(u,["sidx"]);if(!p||!p[0])return null;var g=[],v=p[0],r=v.data[0],n=r===0?8:16,c=s(v,n);n+=4,n+=r===0?8:16,n+=2;var E=v.end+0,y=_(v,n);n+=2;for(var k=0;k>>31==1)return console.warn("SIDX has hierarchical references (not supported)"),null;var P=s(v,x);x+=4,g.push({referenceSize:O,subsegmentDuration:P,info:{duration:P/c,start:E,end:E+O-1}}),E+=O,n=x+=4}return{earliestPresentationTime:0,timescale:c,version:r,referencesCount:y,references:g,moovEndOffset:l}}function S(u){for(var i=[],l=m(u,["moov","trak"]),p=0;pD)&&(this.startTime=D),this.endTime=I,this.screen=_,this.timelineController.createCaptionsTrack(this.trackName)},A.reset=function(){this.cueRanges=[]},b}()},"./src/utils/texttrack-utils.ts":function(N,w,h){h.r(w),h.d(w,"sendAddTrackEvent",function(){return b}),h.d(w,"addCueToTrack",function(){return A}),h.d(w,"clearCurrentCues",function(){return D}),h.d(w,"removeCuesInRange",function(){return I}),h.d(w,"getCuesInRange",function(){return _});var R=h("./src/utils/logger.ts");function b(s,L){var m;try{m=new Event("addtrack")}catch{(m=document.createEvent("Event")).initEvent("addtrack",!1,!1)}m.track=s,L.dispatchEvent(m)}function A(s,L){var m=s.mode;if(m==="disabled"&&(s.mode="hidden"),s.cues&&!s.cues.getCueById(L.id))try{if(s.addCue(L),!s.cues.getCueById(L.id))throw new Error("addCue is failed for: "+L)}catch(S){R.logger.debug("[texttrack-utils]: "+S);var f=new self.TextTrackCue(L.startTime,L.endTime,L.text);f.id=L.id,s.addCue(f)}m==="disabled"&&(s.mode=m)}function D(s){var L=s.mode;if(L==="disabled"&&(s.mode="hidden"),s.cues)for(var m=s.cues.length;m--;)s.removeCue(s.cues[m]);L==="disabled"&&(s.mode=L)}function I(s,L,m){var f=s.mode;if(f==="disabled"&&(s.mode="hidden"),s.cues&&s.cues.length>0)for(var S=_(s.cues,L,m),T=0;Ta[o].endTime)return-1;for(var u=0,i=o;u<=i;){var l=Math.floor((i+u)/2);if(ta[l].startTime&&u-1)for(var T=S,d=s.length;T=L&&e.endTime<=m)f.push(e);else if(e.startTime>m)return f}return f}},"./src/utils/time-ranges.ts":function(N,w,h){h.r(w),w.default={toString:function(R){for(var b="",A=R.length,D=0;D1?L-1:0),f=1;f100)throw new Error("Position must be between 0 and 100.");g=c,this.hasBeenReset=!0}})),Object.defineProperty(f,"positionAlign",I({},S,{get:function(){return v},set:function(c){var E=D(c);if(!E)throw new SyntaxError("An invalid or illegal string was specified.");v=E,this.hasBeenReset=!0}})),Object.defineProperty(f,"size",I({},S,{get:function(){return r},set:function(c){if(c<0||c>100)throw new Error("Size must be between 0 and 100.");r=c,this.hasBeenReset=!0}})),Object.defineProperty(f,"align",I({},S,{get:function(){return n},set:function(c){var E=D(c);if(!E)throw new SyntaxError("An invalid or illegal string was specified.");n=E,this.hasBeenReset=!0}})),f.displayState=void 0}return _.prototype.getCueAsHTML=function(){return self.WebVTT.convertCueToDOMTree(self,this.text)},_}()},"./src/utils/vttparser.ts":function(N,w,h){h.r(w),h.d(w,"parseTimeStamp",function(){return A}),h.d(w,"fixLineBreaks",function(){return m}),h.d(w,"VTTParser",function(){return f});var R=h("./src/utils/vttcue.ts"),b=function(){function S(){}return S.prototype.decode=function(T,d){if(!T)return"";if(typeof T!="string")throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(T))},S}();function A(S){function T(e,a,t,o){return 3600*(0|e)+60*(0|a)+(0|t)+parseFloat(o||0)}var d=S.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return d?parseFloat(d[2])>59?T(d[2],d[3],0,d[4]):T(d[1],d[2],d[3],d[4]):null}var D=function(){function S(){this.values=Object.create(null)}var T=S.prototype;return T.set=function(d,e){this.get(d)||e===""||(this.values[d]=e)},T.get=function(d,e,a){return a?this.has(d)?this.values[d]:e[a]:this.has(d)?this.values[d]:e},T.has=function(d){return d in this.values},T.alt=function(d,e,a){for(var t=0;t=0&&a<=100)return this.set(d,a),!0}return!1},S}();function I(S,T,d,e){var a=e?S.split(e):[S];for(var t in a)if(typeof a[t]=="string"){var o=a[t].split(d);o.length===2&&T(o[0],o[1])}}var _=new R.default(0,0,""),s=_.align==="middle"?"middle":"center";function L(S,T,d){var e=S;function a(){var o=A(S);if(o===null)throw new Error("Malformed timestamp: "+e);return S=S.replace(/^[^\sa-zA-Z-]+/,""),o}function t(){S=S.replace(/^\s+/,"")}if(t(),T.startTime=a(),t(),S.substr(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+e);S=S.substr(3),t(),T.endTime=a(),t(),function(o,u){var i=new D;I(o,function(g,v){var r;switch(g){case"region":for(var n=d.length-1;n>=0;n--)if(d[n].id===v){i.set(g,d[n].region);break}break;case"vertical":i.alt(g,v,["rl","lr"]);break;case"line":r=v.split(","),i.integer(g,r[0]),i.percent(g,r[0])&&i.set("snapToLines",!1),i.alt(g,r[0],["auto"]),r.length===2&&i.alt("lineAlign",r[1],["start",s,"end"]);break;case"position":r=v.split(","),i.percent(g,r[0]),r.length===2&&i.alt("positionAlign",r[1],["start",s,"end","line-left","line-right","auto"]);break;case"size":i.percent(g,v);break;case"align":i.alt(g,v,["start",s,"end","left","right"])}},/:/,/\s/),u.region=i.get("region",null),u.vertical=i.get("vertical","");var l=i.get("line","auto");l==="auto"&&_.line===-1&&(l=-1),u.line=l,u.lineAlign=i.get("lineAlign","start"),u.snapToLines=i.get("snapToLines",!0),u.size=i.get("size",100),u.align=i.get("align",s);var p=i.get("position","auto");p==="auto"&&_.position===50&&(p=u.align==="start"||u.align==="left"?0:u.align==="end"||u.align==="right"?100:50),u.position=p}(S,T)}function m(S){return S.replace(//gi,` +`)}var f=function(){function S(){this.state="INITIAL",this.buffer="",this.decoder=new b,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}var T=S.prototype;return T.parse=function(d){var e=this;function a(){var l=e.buffer,p=0;for(l=m(l);p")===-1){e.cue.id=t;continue}case"CUE":if(!e.cue){e.state="BADCUE";continue}try{L(t,e.cue,e.regionList)}catch{e.cue=null,e.state="BADCUE";continue}e.state="CUETEXT";continue;case"CUETEXT":var i=t.indexOf("-->")!==-1;if(!t||i&&(u=!0)){e.oncue&&e.cue&&e.oncue(e.cue),e.cue=null,e.state="ID";continue}if(e.cue===null)continue;e.cue.text&&(e.cue.text+=` +`),e.cue.text+=t;continue;case"BADCUE":t||(e.state="ID")}}}catch{e.state==="CUETEXT"&&e.cue&&e.oncue&&e.oncue(e.cue),e.cue=null,e.state=e.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},T.flush=function(){var d=this;try{if((d.cue||d.state==="HEADER")&&(d.buffer+=` + +`,d.parse()),d.state==="INITIAL"||d.state==="BADWEBVTT")throw new Error("Malformed WebVTT signature.")}catch(e){d.onparsingerror&&d.onparsingerror(e)}return d.onflush&&d.onflush(),this},S}()},"./src/utils/webvtt-parser.ts":function(N,w,h){h.r(w),h.d(w,"generateCueId",function(){return m}),h.d(w,"parseWebVTT",function(){return f});var R=h("./src/polyfills/number.ts"),b=h("./src/utils/vttparser.ts"),A=h("./src/demux/id3.ts"),D=h("./src/utils/timescale-conversion.ts"),I=h("./src/remux/mp4-remuxer.ts"),_=/\r\n|\n\r|\n|\r/g,s=function(S,T,d){return d===void 0&&(d=0),S.substr(d,T.length)===T},L=function(S){for(var T=5381,d=S.length;d;)T=33*T^S.charCodeAt(--d);return(T>>>0).toString()};function m(S,T,d){return L(S.toString())+L(T.toString())+L(d)}function f(S,T,d,e,a,t,o,u){var i,l=new b.VTTParser,p=Object(A.utf8ArrayToStr)(new Uint8Array(S)).trim().replace(_,` +`).split(` +`),g=[],v=Object(D.toMpegTsClockFromTimescale)(T,d),r="00:00.000",n=0,c=0,E=!0,y=!1;l.oncue=function(k){var x=e[a],C=e.ccOffset,O=(n-v)/9e4;if(x!=null&&x.new&&(c!==void 0?C=e.ccOffset=x.start:function(B,U,j){var V=B[U],H=B[V.prevCC];if(!H||!H.new&&V.new)return B.ccOffset=B.presentationOffset=V.start,void(V.new=!1);for(;(X=H)!==null&&X!==void 0&&X.new;){var X;B.ccOffset+=V.start-H.start,V.new=!1,H=B[(V=H).prevCC]}B.presentationOffset=j}(e,a,O)),O&&(C=O-e.presentationOffset),y){var P=k.endTime-k.startTime,F=Object(I.normalizePts)(9e4*(k.startTime+C-c),9e4*t)/9e4;k.startTime=F,k.endTime=F+P}var M=k.text.trim();k.text=decodeURIComponent(encodeURIComponent(M)),k.id||(k.id=m(k.startTime,k.endTime,M)),k.endTime>0&&g.push(k)},l.onparsingerror=function(k){i=k},l.onflush=function(){i?u(i):o(g)},p.forEach(function(k){if(E){if(s(k,"X-TIMESTAMP-MAP=")){E=!1,y=!0,k.substr(16).split(",").forEach(function(x){s(x,"LOCAL:")?r=x.substr(6):s(x,"MPEGTS:")&&(n=parseInt(x.substr(7)))});try{c=function(x){var C=parseInt(x.substr(-3)),O=parseInt(x.substr(-6,2)),P=parseInt(x.substr(-9,2)),F=x.length>9?parseInt(x.substr(0,x.indexOf(":"))):0;if(!(Object(R.isFiniteNumber)(C)&&Object(R.isFiniteNumber)(O)&&Object(R.isFiniteNumber)(P)&&Object(R.isFiniteNumber)(F)))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+x);return C+=1e3*O,(C+=6e4*P)+36e5*F}(r)/1e3}catch(x){y=!1,i=x}return}k===""&&(E=!1)}l.parse(k+` +`)}),l.flush()}},"./src/utils/xhr-loader.ts":function(N,w,h){h.r(w);var R=h("./src/utils/logger.ts"),b=h("./src/loader/load-stats.ts"),A=/^age:\s*[\d.]+\s*$/m,D=function(){function I(s){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=s?s.xhrSetup:null,this.stats=new b.LoadStats,this.retryDelay=0}var _=I.prototype;return _.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},_.abortInternal=function(){var s=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),s&&(s.onreadystatechange=null,s.onprogress=null,s.readyState!==4&&(this.stats.aborted=!0,s.abort()))},_.abort=function(){var s;this.abortInternal(),(s=this.callbacks)!==null&&s!==void 0&&s.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},_.load=function(s,L,m){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=s,this.config=L,this.callbacks=m,this.retryDelay=L.retryDelay,this.loadInternal()},_.loadInternal=function(){var s=this.config,L=this.context;if(s){var m=this.loader=new self.XMLHttpRequest,f=this.stats;f.loading.first=0,f.loaded=0;var S=this.xhrSetup;try{if(S)try{S(m,L.url)}catch{m.open("GET",L.url,!0),S(m,L.url)}m.readyState||m.open("GET",L.url,!0)}catch(T){return void this.callbacks.onError({code:m.status,text:T.message},L,m)}L.rangeEnd&&m.setRequestHeader("Range","bytes="+L.rangeStart+"-"+(L.rangeEnd-1)),m.onreadystatechange=this.readystatechange.bind(this),m.onprogress=this.loadprogress.bind(this),m.responseType=L.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),s.timeout),m.send()}},_.readystatechange=function(){var s=this.context,L=this.loader,m=this.stats;if(s&&L){var f=L.readyState,S=this.config;if(!m.aborted&&f>=2)if(self.clearTimeout(this.requestTimeout),m.loading.first===0&&(m.loading.first=Math.max(self.performance.now(),m.loading.start)),f===4){L.onreadystatechange=null,L.onprogress=null;var T=L.status;if(T>=200&&T<300){var d,e;if(m.loading.end=Math.max(self.performance.now(),m.loading.first),e=s.responseType==="arraybuffer"?(d=L.response).byteLength:(d=L.responseText).length,m.loaded=m.total=e,!this.callbacks)return;var a=this.callbacks.onProgress;if(a&&a(m,s,d,L),!this.callbacks)return;var t={url:L.responseURL,data:d};this.callbacks.onSuccess(t,m,s,L)}else m.retry>=S.maxRetry||T>=400&&T<499?(R.logger.error(T+" while loading "+s.url),this.callbacks.onError({code:T,text:L.statusText},s,L)):(R.logger.warn(T+" while loading "+s.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,S.maxRetryDelay),m.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),S.timeout)}},_.loadtimeout=function(){R.logger.warn("timeout while loading "+this.context.url);var s=this.callbacks;s&&(this.abortInternal(),s.onTimeout(this.stats,this.context,this.loader))},_.loadprogress=function(s){var L=this.stats;L.loaded=s.loaded,s.lengthComputable&&(L.total=s.total)},_.getCacheAge=function(){var s=null;if(this.loader&&A.test(this.loader.getAllResponseHeaders())){var L=this.loader.getResponseHeader("age");s=L?parseFloat(L):null}return s},I}();w.default=D}}).default);var it=yr(Lt.exports);const Er={name:"d-icon"},Le=Object.assign(Er,{props:{icon:String,size:[Number,String]},setup:function(N){const w=N,h=Re(()=>({fontSize:/^\d+$/.test(w.size)?w.size+"px":w.size}));return(R,b)=>(Y(),Z("i",{class:be(["d-icon iconfont",N.icon]),style:je(G(h))},null,6))}});Le.__scopeId="data-v-0c690e66";Ve("data-v-4cb76d59");const Tr={class:"d-player-top"},Sr={class:"top-title"},br={class:"top-title"};He();const Lr={props:{title:{default:""}},setup(N){Date.prototype.format=function(R){let b={"h+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds()};for(var A in b)new RegExp("("+A+")").test(R)&&(R=R.replace(RegExp.$1,RegExp.$1.length==1?b[A]:("00"+b[A]).substr((""+b[A]).length)));return R};let w=ye("00:00:00");w.value=new Date().format("hh:mm:ss");let h=null;return h=setInterval(()=>{w.value=new Date().format("hh:mm:ss")},1e3),yt(()=>{clearInterval(h)}),(R,b)=>(Y(),Z("div",Tr,[K("p",Sr,J(N.title||""),1),K("p",br,J(G(w)),1)]))},__scopeId:"data-v-4cb76d59"};Ve("data-v-ac2469ec");const Ar={class:"d-status"},kr={class:"d-flex-center"},_r={class:"d-flex-center"},Dr=ce("5X速播放中 ");He();var At=xe({props:["state"],setup:N=>(w,h)=>me((Y(),Z("div",Ar,[me(K("li",kr,[z(Le,{size:"18",class:"d-status-icon",icon:"icon-volume-"+(N.state.volume==0?"mute":N.state.volume>.5?"up":"down")},null,8,["icon"]),ce(" "+J(~~(100*N.state.volume))+"% ",1)],512),[[Ee,N.state.handleType=="volume"]]),me(K("li",_r,[z(Le,{size:"12",icon:"icon-play"}),z(Le,{size:"12",icon:"icon-play",style:{"margin-right":"5px"}}),Dr],512),[[Ee,N.state.handleType=="playbackRate"||N.state.isMultiplesPlay]])],512)),[[Ee,N.state.handleType||N.state.isMultiplesPlay]])});At.__scopeId="data-v-ac2469ec",Ve("data-v-385f7870");const Rr=["checked","true-value","false-value"],Ir=K("span",{class:"d-switch_action"},null,-1);He();var rt=xe({props:{modelValue:{type:[Number,String,Boolean]},width:{type:String,default:"40px"},trueValue:{type:[Number,String,Boolean],default:!0},falseValue:{type:[Number,String,Boolean],default:!0},activeColor:{type:[String],default:"#409EFF"}},emits:["update:modelValue","change"],setup(N,{emit:w}){const h=N;ut(D=>({"014e5dc0":N.width,e4e32852:N.activeColor}));const R=ye(null),b=Re(()=>h.modelValue===h.trueValue),A=()=>{Et(()=>{const D=R.value.checked;w("update:modelValue",D),w("change",D)})};return(D,I)=>(Y(),Z("div",{class:be(["d-switch",{"is-checked":G(b)}])},[K("input",{class:"d-switch__input",ref:R,type:"checkbox",checked:G(b),onChange:A,"true-value":N.trueValue,"false-value":N.falseValue},null,40,Rr),Ir],2))}});rt.__scopeId="data-v-385f7870",Ve("data-v-b2384226");const Cr={key:0},wr=K("i",{class:"rotating iconfont icon-loading f50"},null,-1),xr=[K("i",{class:"rotating iconfont icon-loading f50"},null,-1),K("p",null,"正在缓冲...",-1)],Or=[K("i",{class:"iconfont icon-replay f24 mr5"},null,-1),ce("重新播放 ")],Pr=[K("i",{class:"iconfont icon-replay f24 mr5"},null,-1),ce("请求错误 ")];He();var kt=xe({props:{loadType:String,text:{type:String,default:""}},setup(N){const w=N,{proxy:h}=wt(),R=["loadstart","waiting","ended","error","stalled"],b=()=>{h.$parent.play()},A=Re(()=>{let D="background: rgba(0, 0, 0, .1);z-index:1";return w.loadType=="loadstart"&&(D="background: rgba(0, 0, 0, 1);;z-index:3"),D});return(D,I)=>me((Y(),Z("div",{class:"d-loading",style:je(G(A))},[K("div",null,[N.loadType=="loadstart"?(Y(),Z("span",Cr,[wr,K("p",null,J(N.text),1)])):ae("",!0),me(K("span",null,xr,512),[[Ee,N.loadType=="waiting"]]),me(K("span",null,[K("p",{onClick:b,class:"d-flex-x d-pointer"},Or)],512),[[Ee,N.loadType=="ended"]]),me(K("span",null,[K("p",{onClick:b,class:"d-flex-x d-pointer"},Pr)],512),[[Ee,N.loadType=="error"||N.loadType=="stalled"]])])],4)),[[Ee,R.includes(N.loadType)]])}});kt.__scopeId="data-v-b2384226";const Ke=function(N,w,h,R=!1){N&&w&&h&&N.addEventListener(w,h,R)},Te=function(N,w,h,R=!1){N&&w&&h&&N.removeEventListener(w,h,R)};Ve("data-v-5a794390");const Fr=["onMousedown"];He();var Xe=xe(lt(ot({},{name:"DSlider"}),{props:{modelValue:{required:!0,type:Number,default:0},disabled:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1},hover:{type:Boolean,default:!0},hoverText:{type:String,default:""},preload:{type:Number,default:0},size:{type:String,default:"10px"}},emits:["update:modelValue","change","onMousemove"],setup:function(N,{emit:w}){const h=N;ut(e=>({"5242b67b":N.size}));const R=ye(null),b=ye(null),A=Se({dragging:!1,hoverPosition:0,hoverTipsLeft:"50%"}),D=Re(()=>{let e=h.modelValue<0?0:h.modelValue>1?1:h.modelValue;return h.vertical?`height:${100*e}%`:`width:${100*e}%`}),I=Re(()=>{let e=h.preload<0?0:h.preload>1?1:h.preload;return h.vertical?`height:${100*e}%`:`width:${100*e}%`}),_=Re(()=>{let e=A.hoverPosition<0?0:A.hoverPosition>1?1:A.hoverPosition;return h.vertical?`bottom:${100*e}%`:`left:${100*e}%`}),s=e=>{e.preventDefault()},L=e=>{h.disabled||(e.preventDefault(),A.dragging=!0,f(e),Ke(window,"mousemove",T),Ke(window,"touchmove",T),Ke(window,"mouseup",d),Ke(window,"touchend",d))},m=e=>{if(!h.hover)return;let a=S(e);if(w("onMousemove",e,a),A.hoverPosition=a,h.vertical)return;let t=R.value,o=b.value.clientWidth/2,u=e.clientX-t.getBoundingClientRect().left;u{let a=S(e);w("update:modelValue",a),w("change",e,a)},S=e=>{let a=R.value,t=0;if(h.vertical){let o=a.clientHeight;t=(a.getBoundingClientRect().bottom-e.clientY)/o}else t=(e.clientX-a.getBoundingClientRect().left)/a.clientWidth;return t<0?0:t>1?1:t},T=e=>{f(e)},d=e=>{A.dragging&&(Te(window,"mousemove",T),Te(window,"touchmove",T),Te(window,"mouseup",d),Te(window,"touchend",d),Te(window,"contextmenu",d),setTimeout(()=>{A.dragging=!1},0))};return(e,a)=>(Y(),Z("div",{ref:R,class:be(["d-slider",{"is-vertical":h.vertical}]),onMousedown:It(L,["stop"]),onContextmenu:s},[K("div",{class:"d-slider__runway",onMousemove:m},[me(K("div",{class:"d-slider__cursor",style:je(G(_))},[me(K("div",{class:"d-slider__tips",ref:b,style:je({left:G(A).hoverTipsLeft})},J(h.hoverText),5),[[Ee,h.hoverText]])],4),[[Ee,h.hover]]),K("div",{class:"d-slider__preload",style:je(G(I))},null,4),K("div",{class:"d-slider__bar",style:je(G(D))},null,4)],32)],42,Fr))}}));Xe.__scopeId="data-v-5a794390";Ve("data-v-570fa0d1");const Mr={key:0,class:"d-player-dialog"},Nr={class:"d-player-dialog-body"},Br={class:"d-player-dialog-title"},Ur={class:"d-player-hotkey-panel"},Gr={class:"d-player-filter-panel"},jr={class:"d-player-filter-panel-item"},Kr=K("span",null,"饱和度",-1),Vr={class:"d-player-filter-panel-item"},Hr=K("span",null,"亮度",-1),Wr={class:"d-player-filter-panel-item"},Yr=K("span",null,"对比度",-1),qr={key:0,class:"d-player-contextmenu"},zr=["dplayerKeyCode"],Xr=K("input",{class:"d-player-copyText"},null,-1);He();var _t=xe({setup(N){const w=Se({show:!1,dialogType:"",dialogTitle:"",version:"1.3.1-beta.6",mouseX:0,mouseY:0}),h=[{label:"视频色彩调整",key:"filter"},{label:"快捷键说明",key:"hotkey"},{label:"复制视频网址",key:"copy"},{label:"版本:1.3.1-beta.6",key:"version"}],R=[{key:"Space",label:"播放/暂停"},{key:"→",label:"单次快进10s,长按5倍速播放"},{key:"←",label:"快退5s"},{key:"↑",label:"音量增加10%"},{key:"↓",label:"音量增加降低10%"},{key:"Esc",label:"退出全屏/退出网页全屏"},{key:"F",label:"全屏/退出全屏"}],b=Se({saturate:.392,brightness:.392,contrast:.392}),A=Re(()=>({left:w.mouseX+"px",top:w.mouseY+"px"}));et(b,L=>{let m=document.querySelector("#dPlayerVideo"),f=(2.55*L.saturate).toFixed(2),S=(2.55*L.brightness).toFixed(2),T=(2.55*L.contrast).toFixed(2);m.style.filter=`saturate(${f}) brightness(${S}) contrast(${T})`});const D=()=>{b.saturate=.392,b.brightness=.392,b.contrast=.392},I=L=>{L.key=="Escape"&&s(0)},_=L=>{L.preventDefault(),Ke(window,"keydown",I),Ke(window,"click",s);let m=document.querySelector("#refPlayerWrap"),f=m.clientWidth;m.clientHeight,w.mouseX=L.clientX-m.getBoundingClientRect().left,f-w.mouseX<130&&(w.mouseX=w.mouseX+(f-w.mouseX-130)),w.mouseY=L.clientY-m.getBoundingClientRect().top,w.show=!0},s=L=>{let m=L.path[0].tagName=="LI",f=L.path[0].attributes.dplayerKeyCode&&L.path[0].attributes.dplayerKeyCode.value,S=h.map(T=>T.key);if(m&&S.includes(f))if(w.dialogTitle=L.path[0].innerText,w.dialogType=f,f=="copy"){let T=document.querySelector(".d-player-copyText");T.value=window.location.href,T.select(),document.execCommand("copy"),w.dialogType=""}else f=="version"&&(w.dialogType="");w.show=!1,Te(window,"keydown",I),Te(window,"click",s)};return mt(()=>{let L=document.querySelector("#refPlayerWrap");Te(window,"keydown",I),Te(window,"click",s),Te(L,"contextmenu",_),Ke(L,"contextmenu",_)}),yt(()=>{let L=document.querySelector("#refPlayerWrap");Te(window,"keydown",I),Te(window,"click",s),Te(L,"contextmenu",_)}),(L,m)=>(Y(),Z("div",null,[z(at,{name:"d-fade-in"},{default:Q(()=>[G(w).dialogType?(Y(),Z("div",Mr,[K("div",Nr,[K("h5",Br,[ce(J(G(w).dialogTitle)+" ",1),K("i",{onClick:m[0]||(m[0]=f=>G(w).dialogType=!1),class:"icon icon-close"},"X")]),me(K("ul",Ur,[(Y(),Z(we,null,Fe(R,f=>K("li",{class:"d-player-hotkey-panel-item",key:f.key},[K("span",null,J(f.key),1),K("span",null,J(f.label),1)])),64))],512),[[Ee,G(w).dialogType=="hotkey"]]),me(K("ul",Gr,[K("li",jr,[Kr,z(Xe,{class:"filter-panel-slider",size:"5px",modelValue:G(b).saturate,"onUpdate:modelValue":m[1]||(m[1]=f=>G(b).saturate=f)},null,8,["modelValue"]),K("span",null,J(Math.round(255*G(b).saturate)),1)]),K("li",Vr,[Hr,z(Xe,{class:"filter-panel-slider",size:"5px",modelValue:G(b).brightness,"onUpdate:modelValue":m[2]||(m[2]=f=>G(b).brightness=f)},null,8,["modelValue"]),K("span",null,J(Math.round(255*G(b).brightness)),1)]),K("li",Wr,[Yr,z(Xe,{class:"filter-panel-slider",size:"5px",modelValue:G(b).contrast,"onUpdate:modelValue":m[3]||(m[3]=f=>G(b).contrast=f)},null,8,["modelValue"]),K("span",null,J(Math.round(255*G(b).contrast)),1)]),K("span",{onClick:D,title:"重置","aria-label":"重置",class:"d-player-filter-reset"},"重置")],512),[[Ee,G(w).dialogType=="filter"]])])])):ae("",!0)]),_:1}),G(w).show?(Y(),Z("div",qr,[K("ul",{class:"d-player-contextmenu-body",style:je(G(A))},[(Y(),Z(we,null,Fe(h,f=>K("li",{dplayerKeyCode:f.key,key:f.key},J(f.label),9,zr)),64))],4),Xr])):ae("",!0)]))}});_t.__scopeId="data-v-570fa0d1";const nt=N=>{let w=~~(N/3600),h=~~(N%3600/60),R=~~(N%60);return w=w<10?"0"+w:w,h=h<10?"0"+h:h,R=R<10?"0"+R:R,`${w}:${h}:${R}`},Je="ontouchstart"in window,pt=["loadstart","play","pause","playing","seeking","seeked","waiting","durationchange","progress","canplay","timeupdate","ended","error","stalled"],$r={width:{type:String,default:"800px"},height:{type:String,default:"450px"},color:{type:String,default:"#409eff"},src:{required:!0,type:String,default:""},title:{type:String,default:""},type:{type:String,default:"video/mp4"},poster:{type:String,default:""},webFullScreen:{type:Boolean,default:!1},speed:{type:Boolean,default:!0},currentTime:{type:Number,default:0},playsinline:{type:Boolean,default:!1},muted:{type:Boolean,default:!1},speedRate:{type:Array,default:()=>["2.0","1.5","1.25","1.0","0.75","0.5"]},autoPlay:{type:Boolean,default:!1},loop:{type:Boolean,default:!1},mirror:{type:Boolean,default:!1},ligthOff:{type:Boolean,default:!1},volume:{type:[String,Number],default:.3},control:{type:Boolean,default:!0},controlBtns:{type:Array,default:["audioTrack","quality","speedRate","volume","setting","pip","pageFullScreen","fullScreen"]},preload:{type:String,default:"auto"}};Ve("data-v-01791e9e");const Qr={class:"d-player-video",id:"dPlayerVideo"},Zr=["controls","webkit-playsinline","playsinline","volume","muted","loop","preload","src","poster"],Jr={class:"d-player-lightoff"},ei={key:1,class:"d-player-state"},ti={class:"d-play-btn"},ri=["onKeyup","onKeydown"],ii={class:"d-control-progress"},ni={class:"d-tool-bar"},ai={key:0,class:"d-tool-item d-tool-time audioTrack-btn"},si=K("span",{style:{margin:"0 3px"}},"/",-1),oi={class:"total-time"},li={class:"d-tool-bar"},ui={key:0,class:"d-tool-item quality-btn"},di={class:"d-tool-item-main"},ci={class:"speed-main",style:{"text-align":"center"}},hi=["onClick"],fi={key:1,class:"d-tool-item speedRate-btn"},gi={class:"d-tool-item-main"},vi={class:"speed-main"},pi=["onClick"],mi={key:2,class:"d-tool-item volume-btn"},yi={class:"d-tool-item-main volume-box",style:{width:"52px"}},Ei={class:"volume-text-size"},Ti={key:3,class:"d-tool-item setting-btn"},Si={class:"d-tool-item-main"},bi={class:"speed-main"},Li=ce(" 镜像画面 "),Ai=ce(" 循环播放 "),ki=ce(" 关灯模式 "),_i=K("div",{class:"d-tool-item-main"},"画中画",-1),Di=K("div",{class:"d-tool-item-main"},"网页全屏",-1),Ri=K("div",{class:"d-tool-item-main"},"全屏",-1);He();var tt=xe(lt(ot({},{name:"vue3VideoPlay",inheritAttrs:!1}),{props:$r,emits:[...pt,"mirrorChange","loopChange","lightOffChange"],setup:function(N,{expose:w,emit:h}){const R=N;ut(C=>({"51d4439c":G(S),"77e758a6":C.width,b8a1afc0:C.height}));const b=new it({fragLoadingTimeOut:2e3}),A=ye(null),D=ye(null),I=ye(null),_=ye(null),s=Se(lt(ot({dVideo:null},R),{muted:R.muted,playBtnState:R.autoPlay?"pause":"play",loadStateType:"loadstart",fullScreen:!1,handleType:"",currentTime:"00:00:00",preloadBar:0,totalTime:"00:00:00",isVideoHovering:!0,speedActive:"1.0",playProgress:0,isMultiplesPlay:!1,longPressTimeout:null,progressCursorTime:"00:00:00",qualityLevels:[],currentLevel:0})),L=(...C)=>O=>C.reverse().reduce((P,F)=>F(P),O),m=pt.reduce((C,O)=>{var P;return C[`on${P=O,P.charAt(0).toUpperCase()+P.slice(1)}`]=F=>{s.loadStateType=O,h(O,F)},C},{});m.onCanplay=L(m.onCanplay,()=>{s.playBtnState!="play"&&s.dVideo.play(),s.autoPlay&&(s.dVideo.play(),s.playBtnState="pause")}),m.onEnded=L(m.onEnded,()=>{s.playBtnState="replay"}),m.onDurationchange=C=>{h("durationchange",C),R.currentTime!=0&&(s.dVideo.currentTime=R.currentTime),m.onTimeupdate(C)},m.onProgress=C=>{console.log("缓冲中..."),h("progress",C);let O=C.target.duration,P=C.target.buffered,F=C.target.buffered.length&&C.target.buffered.end(P-1);s.preloadBar=F/O},m.onTimeupdate=C=>{h("timeupdate",C);let O=C.duration||C.target.duration||0,P=C.currentTime||C.target.currentTime;s.playProgress=P/O,s.currentTime=nt(P),s.totalTime=nt(O)},m.onError=L(m.onError,()=>{s.playBtnState="replay"});let f=Ct();for(let C in f)m[C]=f[C];const S=(T=s.color,`${parseInt("0x"+T.slice(1,3))},${parseInt("0x"+T.slice(3,5))},${parseInt("0x"+T.slice(5,7))}`);var T;const d=vt(500,()=>{s.handleType=""}),e=C=>{C.preventDefault(),C.code=="ArrowUp"?s.volume=s.volume+.1>1?1:s.volume+.1:s.volume=s.volume-.1<0?0:s.volume-.1,s.muted=!1,s.handleType="volume",d()},a=C=>{R.speed&&(s.dVideo.currentTime=s.dVideo.currentTime<10?.1:s.dVideo.currentTime-10,m.onTimeupdate(s.dVideo),u())},t=C=>{C.preventDefault();let O=C.type;if(C.key=="ArrowRight"){if(u(),O=="keyup"){if(clearTimeout(s.longPressTimeout),!R.speed&&!s.longPressTimeout)return;s.isMultiplesPlay?(s.dVideo.playbackRate=s.speedActive,s.isMultiplesPlay=!1):(s.dVideo.currentTime=s.dVideo.currentTime+10,m.onTimeupdate(s.dVideo))}else if(O=="keydown"){if(!R.speed)return;s.isMultiplesPlay&&clearTimeout(s.longPressTimeout),s.longPressTimeout=setTimeout(()=>{s.isMultiplesPlay=!0,s.dVideo.playbackRate=5,s.handleType="playbackRate",d()},500)}}},o=()=>{Je||_.value.focus()},u=()=>{s.loadStateType="play",s.dVideo.play().catch(()=>{setTimeout(()=>{s.playBtnState="replay",s.loadStateType="error"},500)}),s.playBtnState="pause"},i=()=>{s.dVideo.pause(),s.playBtnState="play"},l=C=>{C&&C.preventDefault(),s.playBtnState=="play"||s.playBtnState=="replay"?u():s.playBtnState=="pause"&&i()},p=()=>{s.muted=!s.muted,s.volume==0&&(s.volume=.05)},g=(C,O)=>{let P=s.dVideo.duration||s.dVideo.target.duration;s.dVideo.currentTime=P*O,s.playBtnState=="play"&&(s.dVideo.play(),s.playBtnState="pause")},v=(C,O)=>{s.progressCursorTime=nt(s.dVideo.duration*O)},r=vt(2500,()=>{s.isVideoHovering=!1}),n=C=>{s.isVideoHovering=!0,r()},c=C=>{h("mirrorChange",C,s.dVideo)},E=C=>{h("loopChange",C,s.dVideo)},y=C=>{h("lightOffChange",C,s.dVideo)},k=()=>{var C;C=s.dVideo,document.pictureInPictureElement?document.exitPictureInPicture().catch(O=>{console.log(O,"Video failed to leave Picture-in-Picture mode.")}):C.requestPictureInPicture().catch(O=>{console.log(O,"Video failed to enter Picture-in-Picture mode.")})},x=()=>{s.fullScreen=(C=>{let O=document,P=O.webkitIsFullScreen||O.fullscreen;return P?(document.exitFullscreen||O.webkitExitFullScreen).call(O):(C.requestFullscreen||C.webkitRequestFullScreen).call(C),!P})(A.value)};return et(()=>R.src,()=>{Et(()=>{s.dVideo.canPlayType(R.type)||s.dVideo.canPlayType("application/vnd.apple.mpegurl")?s.muted=R.autoPlay:it.isSupported()&&(b.detachMedia(),b.attachMedia(s.dVideo),b.on(it.Events.MEDIA_ATTACHED,()=>{b.loadSource(R.src),b.on("hlsManifestParsed",(C,O)=>{console.log(O),s.currentLevel=O.level,s.qualityLevels=O.levels||[]})}),b.on("hlsLevelSwitching",(C,O)=>{console.log(O),console.log("LEVEL_SWITCHING")}),b.on("hlsLevelSwitched",(C,O)=>{s.currentLevel=O.level,console.log("LEVEL_SWITCHED")}))})},{immediate:!0}),mt(()=>{s.dVideo=D,o()}),w({play:u,pause:i,togglePlay:l}),(C,O)=>(Y(),Z("div",{ref:A,id:"refPlayerWrap",class:be(["d-player-wrap",{"web-full-screen":G(s).webFullScreen,"is-lightoff":G(s).lightOff,"d-player-wrap-hover":G(s).playBtnState=="play"||G(s).isVideoHovering}]),onMousemove:n},[K("div",Qr,[K("video",Tt({ref:D,class:["d-player-video-main",{"video-mirror":G(s).mirror}],id:"dPlayerVideoMain",controls:!(!G(Je)||!G(s).speed),"webkit-playsinline":R.playsinline,playsinline:R.playsinline},G(m),{volume:G(s).volume,muted:G(s).muted,loop:G(s).loop,preload:C.preload,width:"100%",height:"100%",src:R.src,poster:R.poster}),"您的浏览器不支持Video标签。",16,Zr)]),z(at,{name:"d-fade-in"},{default:Q(()=>[me(K("div",Jr,null,512),[[Ee,G(s).lightOff]])]),_:1}),G(s).fullScreen?(Y(),ge(Lr,{key:0,title:R.title},null,8,["title"])):ae("",!0),G(Je)?ae("",!0):(Y(),Z("div",ei,[z(at,{name:"d-scale-out"},{default:Q(()=>[me(K("div",ti,[z(Le,{icon:"icon-play",size:40})],512),[[Ee,G(s).playBtnState=="play"]])]),_:1}),z(At,{state:G(s)},null,8,["state"])])),G(Je)?ae("",!0):(Y(),Z("input",{key:2,type:"input",readonly:"readonly",ref:_,onDblclick:x,onKeyup:[Ze(x,["f"]),O[0]||(O[0]=Ze(P=>G(s).webFullScreen=!1,["esc"])),t],onClick:l,onKeydown:[Ze(l,["space"]),Ze(a,["arrow-left"]),Ze(e,["arrow-up","arrow-down"]),t],class:"d-player-input",maxlength:"0"},null,40,ri)),z(kt,{loadType:G(s).loadStateType},null,8,["loadType"]),z(_t),!G(Je)&&G(s).control?(Y(),Z("div",{key:3,class:"d-player-control",ref:I},[K("div",ii,[z(Xe,{class:"d-progress-bar",onOnMousemove:v,onChange:g,disabled:!G(s).speed,hoverText:G(s).progressCursorTime,modelValue:G(s).playProgress,"onUpdate:modelValue":O[1]||(O[1]=P=>G(s).playProgress=P),preload:G(s).preloadBar},null,8,["disabled","hoverText","modelValue","preload"])]),K("div",{class:"d-control-tool",onClick:o},[K("div",ni,[K("div",{class:"d-tool-item",onClick:l},[z(Le,{size:"24",icon:`icon-${G(s).playBtnState}`},null,8,["icon"])]),R.controlBtns.includes("audioTrack")?(Y(),Z("div",ai,[K("span",null,J(G(s).currentTime),1),si,K("span",oi,J(G(s).totalTime),1)])):ae("",!0)]),K("div",li,[G(s).qualityLevels.length&&R.controlBtns.includes("quality")?(Y(),Z("div",ui,[ce(J(G(s).qualityLevels.length&&(G(s).qualityLevels[G(s).currentLevel]||{}).height)+"P ",1),K("div",di,[K("ul",ci,[(Y(!0),Z(we,null,Fe(G(s).qualityLevels,(P,F)=>(Y(),Z("li",{class:be({"speed-active":G(s).currentLevel==F}),onClick:M=>((B,U)=>{b.currentLevel=U,s.currentLevel=U})(0,F),key:P},J(P.height)+"P",11,hi))),128))])])])):ae("",!0),R.controlBtns.includes("speedRate")?(Y(),Z("div",fi,[ce(J(G(s).speedActive=="1.0"?"倍速":G(s).speedActive+"x")+" ",1),K("div",gi,[K("ul",vi,[(Y(!0),Z(we,null,Fe(G(s).speedRate,P=>(Y(),Z("li",{class:be({"speed-active":G(s).speedActive==P}),onClick:F=>(M=>{s.speedActive=M,s.dVideo.playbackRate=M})(P),key:P},J(P)+"x",11,pi))),128))])])])):ae("",!0),R.controlBtns.includes("volume")?(Y(),Z("div",mi,[K("div",yi,[K("div",{class:be(["volume-main",{"is-muted":G(s).muted}])},[K("span",Ei,J(G(s).muted?0:~~(100*G(s).volume))+"%",1),z(Xe,{onChange:O[2]||(O[2]=P=>G(s).muted=!1),hover:!1,size:"5px",vertical:!0,modelValue:G(s).volume,"onUpdate:modelValue":O[3]||(O[3]=P=>G(s).volume=P)},null,8,["modelValue"])],2)]),K("span",{onClick:p,style:{display:"flex"}},[z(Le,{size:"20",icon:"icon-volume-"+(G(s).volume==0||G(s).muted?"mute":G(s).volume>.5?"up":"down")},null,8,["icon"])])])):ae("",!0),R.controlBtns.includes("setting")?(Y(),Z("div",Ti,[z(Le,{size:"20",class:"rotateHover",icon:"icon-settings"}),K("div",Si,[K("ul",bi,[K("li",null,[Li,z(rt,{onChange:c,modelValue:G(s).mirror,"onUpdate:modelValue":O[4]||(O[4]=P=>G(s).mirror=P)},null,8,["modelValue"])]),K("li",null,[Ai,z(rt,{onChange:E,modelValue:G(s).loop,"onUpdate:modelValue":O[5]||(O[5]=P=>G(s).loop=P)},null,8,["modelValue"])]),K("li",null,[ki,z(rt,{onChange:y,modelValue:G(s).lightOff,"onUpdate:modelValue":O[6]||(O[6]=P=>G(s).lightOff=P)},null,8,["modelValue"])])])])])):ae("",!0),R.controlBtns.includes("pip")?(Y(),Z("div",{key:4,class:"d-tool-item pip-btn",onClick:k},[z(Le,{size:"20",icon:"icon-pip"}),_i])):ae("",!0),R.controlBtns.includes("pageFullScreen")?(Y(),Z("div",{key:5,class:"d-tool-item pip-btn",onClick:O[7]||(O[7]=P=>G(s).webFullScreen=!G(s).webFullScreen)},[z(Le,{size:"20",icon:"icon-web-screen"}),Di])):ae("",!0),R.controlBtns.includes("fullScreen")?(Y(),Z("div",{key:6,class:"d-tool-item fullScreen-btn",onClick:x},[Ri,z(Le,{size:"20",icon:"icon-screen"})])):ae("",!0)])])],512)):ae("",!0)],34))}}));function Ii(N){N.component(tt.name,tt)}tt.__scopeId="data-v-01791e9e",tt.install=Ii;const Ci=xe({__name:"index",setup(N){return(w,h)=>(Y(),ge(G(tt)))}}),wi={class:"text-right mt-[15px]"},xi=xe({__name:"index",props:{width:{type:String,default:"350px"},modelValue:{type:String,default:""},placeholder:{type:String,default:""},required:{type:Boolean,default:!0},maxlength:{type:Number,default:10}},emits:["confirm"],setup(N,{emit:w}){const h=N,R=Re({get(){return h.modelValue},set(D){w("update:modelValue",D)}}),b=ye(!1),A=()=>{if(!/[\S]+/.test(R.value)){st.error(h.placeholder||"不能为空");return}w("confirm",R.value),b.value=!1};return(D,I)=>{const _=St,s=bt,L=Pt;return Y(),ge(L,{placement:"top",trigger:"click",width:h.width,visible:b.value,"onUpdate:visible":I[2]||(I[2]=m=>b.value=m)},{reference:Q(()=>[xt(D.$slots,"default")]),default:Q(()=>[z(_,{modelValue:G(R),"onUpdate:modelValue":I[0]||(I[0]=m=>Ot(R)?R.value=m:null),placeholder:h.placeholder,clearable:"",class:"mr-[10px]",maxlength:h.maxlength,"show-word-limit":!0},null,8,["modelValue","placeholder","maxlength"]),K("div",wi,[z(s,{onClick:I[1]||(I[1]=m=>b.value=!1)},{default:Q(()=>[ce(J(G(ee)("cancel")),1)]),_:1}),z(s,{type:"primary",onClick:A},{default:Q(()=>[ce(J(G(ee)("confirm")),1)]),_:1})])]),_:3},8,["width","visible"])}}}),Oi={class:"group-wrap w-[180px] p-[15px] h-full border-r border-color flex flex-col"},Pi={class:"group-list flex-1 my-[10px]"},Fi=["onClick"],Mi={key:0,class:"leading-none operate py-[10px]"},Ni={class:"text-center w-full"},Bi={class:"attachment-list-wrap flex flex-col p-[15px] flex-1 overflow-hidden"},Ui={class:"flex"},Gi={key:1},ji={class:"flex-1 my-[15px] h-0"},Ki={key:0,class:"flex flex-wrap"},Vi=["onClick"],Hi=["src"],Wi={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60"},Yi={class:"flex items-center"},qi={class:"truncate my-[10px] cursor-pointer text-base flex-1 text-center"},zi={class:"text-center w-full"},Xi={class:"text-center w-full"},$i={class:"text-center w-full"},Qi={class:"text-center w-full"},Zi={key:1,class:"flex flex-wrap"},Ji={class:"attachment-wrap w-full rounded cursor-pointer overflow-hidden relative flex items-center justify-center h-[120px]"},en=["src"],tn={class:"flex items-center"},rn={class:"truncate my-[10px] cursor-pointer text-base flex-1 text-center"},nn={key:2,class:"flex items-center justify-center"},an={class:"flex items-center"},sn={class:"flex h-full justify-end items-center"},on={class:"dialog-footer"},ln=xe({__name:"attachment",props:{limit:{type:Number,default:1},type:{type:String,default:"image"},scene:{type:String,default:"select"}},setup(N,{expose:w}){const h=N,R=ye(""),b=ye(!1),A=Se({}),D=Se({data:[]}),I=Se({loading:!0,page:1,total:0,limit:h.scene=="select"?10:20,data:[]});h.scene=="select"?(I.limit=10,h.type=="icon"&&(I.limit=20)):(I.limit=20,h.type=="icon"&&(I.limit=30));const _=Se({name:""}),s=Se({real_name:"",cate_id:0}),L=dt(()=>{(h.type=="icon"?lr:ur)({type:h.type,..._}).then(y=>{D.data=y.data}).catch(()=>{})});L();const m=dt((E=1)=>{const y=h.type=="icon"?dr:cr;I.loading=!0,I.page=E,y({page:I.page,limit:I.limit,att_type:h.type,...s}).then(k=>{if(I.data=k.data.data,I.total=k.data.total,I.loading=!1,h.scene=="attachment"&&t(),h.type!="icon")for(let x=0;x{I.loading=!1})});m(),et(()=>s.cate_id,()=>{m()});const f=E=>{ir({type:h.type,name:E}).then(y=>{R.value="",L(1)}).catch(()=>{})},S=(E,y)=>{nr({id:D.data[y].id,name:E}).then(k=>{D.data[y].name=E}).catch(()=>{})},T=E=>{ct.confirm(ee("upload.deleteCategoryTips"),ee("warning"),{confirmButtonText:ee("confirm"),cancelButtonText:ee("cancel"),type:"warning"}).then(()=>{ar(D.data[E].id).then(()=>{D.data.splice(E,1)}).catch(()=>{})})},d=ye(null),e=Re(()=>{const E={};return E.token=Ft(),E["site-id"]=Mt.get("siteId")||0,{action:`/adminapi//sys/${h.type}`,multiple:!0,data:{cate_id:s.cate_id},headers:E,onSuccess:(y,k,x)=>{var C;y.code>=1?(m(),(C=d.value)==null||C.handleRemove(k)):(k.status="fail",st({message:y.msg,type:"error"}))}}}),a=ye(!1);et(a,()=>{if(a.value){const E=Object.keys(De(A));I.data.forEach(y=>{E.includes(y.att_id)||(A[y.att_id]=De(y))})}else t()});const t=()=>{const E=Object.keys(De(A));E.length&&(E.forEach(y=>{delete A[y]}),a.value=!1)},o=E=>{if(A[E.att_id])delete A[E.att_id];else if(h.scene=="select"){const y=Object.keys(De(A)),k=y.length;if(h.limit==1&&k==h.limit)delete A[y[0]];else if(k>=h.limit){st.info(ee("upload.triggerUpperLimit"));return}A[E.att_id]=De(E)}else A[E.att_id]=De(E)},u=(E=null)=>{const y=E===null?Object.keys(De(A)):[I.data[E].att_id];ct.confirm(ee("upload.deleteAttachmentTips"),ee("warning"),{confirmButtonText:ee("confirm"),cancelButtonText:ee("cancel"),type:"warning"}).then(()=>{sr({att_ids:y}).then(()=>{m()}).catch(()=>{})})},i=Se({cateId:"",loading:!1,visible:!1}),l=(E=null)=>{const y=E===null?Object.keys(De(A)):[I.data[E].att_id];i.visible=!0,i.cateId=D.data[0].id,i.confirm=()=>{i.loading=!0,or({cate_id:i.cateId,att_ids:y}).then(()=>{i.visible=!1,i.loading=!1,m()}).catch(()=>{i.loading=!1})}},p=ye(!0);et(A,()=>{p.value=Object.keys(De(A)).length==0});const g=Se({show:!1,index:0}),v=E=>{g.show=!0,g.index=E},r=Re(()=>De(I.data).map(E=>Ge(E.url))),n=Se({visible:!1,src:""}),c=E=>{n.visible=!0,n.src=Ge(I.data[E].url)};return w({selectedFile:A}),(E,y)=>{const k=St,x=rr,C=xi,O=Nt,P=Bt,F=Ut,M=Gt,B=bt,U=jt,j=Kt,V=Vt,H=Ht,X=Wt,q=Yt,$=qt,ie=zt,se=Xt,le=$t,re=Qt,fe=Zt,te=Jt,ne=er,he=Ci,ue=tr;return Y(),Z("div",{class:be(["flex border-t border-b main-wrap border-color w-full",N.scene=="select"?"h-[40vh]":"h-full"])},[K("div",Oi,[z(k,{modelValue:_.name,"onUpdate:modelValue":y[0]||(y[0]=W=>_.name=W),class:"m-0",placeholder:G(ee)("upload.attachmentCategoryPlaceholder"),clearable:"","prefix-icon":"Search",onInput:y[1]||(y[1]=W=>G(L)())},null,8,["modelValue","placeholder"]),K("div",Pi,[z(M,null,{default:Q(()=>[K("div",{class:be(["group-item p-[10px] leading-none text-xs rounded cursor-pointer",{active:s.cate_id==0}]),onClick:y[2]||(y[2]=W=>s.cate_id=0)},J(G(ee)("selectPlaceholder")),3),(Y(!0),Z(we,null,Fe(D.data,(W,oe)=>(Y(),Z("div",{class:be(["group-item px-[10px] text-xs rounded cursor-pointer flex",{active:s.cate_id==W.id}]),key:oe},[K("div",{class:"flex-1 leading-none truncate py-[10px]",onClick:de=>s.cate_id=W.id},J(W.name),9,Fi),N.scene=="attachment"&&h.type!="icon"?(Y(),Z("div",Mi,[N.scene=="attachment"?(Y(),ge(F,{key:0,"hide-on-click":!1},{dropdown:Q(()=>[z(P,null,{default:Q(()=>[z(O,{class:"text-center"},{default:Q(()=>[z(C,{placeholder:G(ee)("upload.attachmentCategoryPlaceholder"),onConfirm:de=>S(de,oe),modelValue:W.name,"onUpdate:modelValue":de=>W.name=de},{default:Q(()=>[K("span",null,J(G(ee)("edit")),1)]),_:2},1032,["placeholder","onConfirm","modelValue","onUpdate:modelValue"])]),_:2},1024),z(O,{onClick:de=>T(oe)},{default:Q(()=>[K("div",Ni,J(G(ee)("delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),default:Q(()=>[z(x,{name:"element-MoreFilled",class:"cursor-pointer ml-[10px]",size:"14px"}),ce(" "+J(W.name)+" ",1)]),_:2},1024)):ae("",!0)])):ae("",!0)],2))),128))]),_:1})]),h.type!="icon"?(Y(),ge(C,{key:0,placeholder:G(ee)("upload.attachmentCategoryPlaceholder"),onConfirm:f,modelValue:R.value,"onUpdate:modelValue":y[3]||(y[3]=W=>R.value=W)},{default:Q(()=>[z(B,null,{default:Q(()=>[ce(J(G(ee)("upload.addAttachmentCategory")),1)]),_:1})]),_:1},8,["placeholder","modelValue"])):ae("",!0)]),K("div",Bi,[z(V,{gutter:15,class:"h-[32px]"},{default:Q(()=>[z(j,{span:10},{default:Q(()=>[K("div",Ui,[h.type!="icon"?(Y(),ge(U,Tt({key:0},G(e),{ref_key:"uploadRef",ref:d}),{default:Q(()=>[z(B,{type:"primary"},{default:Q(()=>[ce(J(G(ee)("upload.upload"+N.type))+" "+J(E.isOpen),1)]),_:1})]),_:1},16)):ae("",!0),N.scene=="attachment"&&h.type!="icon"?(Y(),Z("div",Gi,[b.value===!1?(Y(),ge(B,{key:0,class:"ml-[10px]",type:"primary",onClick:y[4]||(y[4]=W=>b.value=!0)},{default:Q(()=>[ce(J(G(ee)("edit")),1)]),_:1})):(Y(),ge(B,{key:1,class:"ml-[10px]",type:"primary",onClick:y[5]||(y[5]=W=>b.value=!1)},{default:Q(()=>[ce(J(G(ee)("complete")),1)]),_:1}))])):ae("",!0)])]),_:1}),z(j,{span:14,class:"text-right"},{default:Q(()=>[z(k,{modelValue:s.real_name,"onUpdate:modelValue":y[6]||(y[6]=W=>s.real_name=W),class:"m-0 w-[200px]",clearable:"",placeholder:G(ee)("upload.placeholder"+N.type+"Name"),"prefix-icon":"Search",onInput:y[7]||(y[7]=W=>G(m)())},null,8,["modelValue","placeholder"])]),_:1})]),_:1}),me((Y(),Z("div",ji,[z(M,null,{default:Q(()=>[I.data.length&&(b.value===!0||N.scene!="attachment")?(Y(),Z("div",Ki,[(Y(!0),Z(we,null,Fe(I.data,(W,oe)=>(Y(),Z("div",{class:be(["attachment-item mr-[10px]",N.scene=="select"?"w-[100px]":"w-[120px]"]),key:oe},[K("div",{class:be(["attachment-wrap w-full rounded cursor-pointer overflow-hidden relative flex items-center justify-center",N.scene=="select"?"h-[100px]":"h-[120px]"]),onClick:de=>o(W)},[N.type=="image"?(Y(),ge(H,{key:0,src:G(Ge)(W.url),fit:"contain"},null,8,["src"])):N.type=="video"?(Y(),Z("video",{key:1,src:G(Ge)(W.url)},null,8,Hi)):N.type=="icon"?(Y(),ge(x,{key:2,name:W.url,size:"40px"},null,8,["name"])):ae("",!0),me(K("div",Wi,[z(x,{name:"element-Select",color:"#fff",size:"40px"})],512),[[Ee,A[W.att_id]]])],10,Vi),K("div",Yi,[z(X,{placement:"top"},{content:Q(()=>[ce(J(W.real_name),1)]),default:Q(()=>[K("div",qi,J(W.real_name),1)]),_:2},1024),N.scene=="attachment"?(Y(),ge(F,{key:0,"hide-on-click":!1,class:"attachment-action hidden"},{dropdown:Q(()=>[z(P,null,{default:Q(()=>[W.att_type=="image"?(Y(),ge(O,{key:0,class:"text-center",onClick:de=>v(oe)},{default:Q(()=>[K("div",zi,J(G(ee)("lookOver")),1)]),_:2},1032,["onClick"])):ae("",!0),W.att_type=="video"?(Y(),ge(O,{key:1,class:"text-center",onClick:de=>c(oe)},{default:Q(()=>[K("div",Xi,J(G(ee)("lookOver")),1)]),_:2},1032,["onClick"])):ae("",!0),z(O,{class:"text-center",onClick:de=>l(oe)},{default:Q(()=>[K("div",$i,J(G(ee)("upload.move")),1)]),_:2},1032,["onClick"]),z(O,{onClick:de=>u(oe)},{default:Q(()=>[K("div",Qi,J(G(ee)("delete")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),default:Q(()=>[z(x,{name:"element-MoreFilled",class:"cursor-pointer ml-[8px]",size:"14px"})]),_:2},1024)):ae("",!0)])],2))),128))])):I.data.length&&b.value===!1?(Y(),Z("div",Zi,[(Y(!0),Z(we,null,Fe(I.data,(W,oe)=>(Y(),Z("div",{class:"attachment-item mr-[10px] w-[120px]",key:oe},[K("div",Ji,[N.type=="image"?(Y(),ge(H,{key:0,src:G(Ge)(W.url),fit:"contain","preview-src-list":W.image_list},null,8,["src","preview-src-list"])):N.type=="video"?(Y(),Z("video",{key:1,src:G(Ge)(W.url)},null,8,en)):N.type=="icon"?(Y(),ge(x,{key:2,name:W.url,size:"40px"},null,8,["name"])):ae("",!0)]),K("div",tn,[z(X,{placement:"top"},{content:Q(()=>[ce(J(W.real_name),1)]),default:Q(()=>[K("div",rn,J(W.real_name),1)]),_:2},1024)])]))),128))])):(Y(),Z("div",nn,[I.loading?ae("",!0):(Y(),ge(q,{key:0,description:N.type=="icon"?G(ee)("upload.iconEmpty"):G(ee)("upload.attachmentEmpty"),"image-size":100},null,8,["description"]))]))]),_:1})])),[[ue,I.loading]]),z(V,{gutter:20},{default:Q(()=>[N.scene=="attachment"&&b.value===!0?(Y(),ge(j,{key:0,span:8},{default:Q(()=>[K("div",an,[z($,{modelValue:a.value,"onUpdate:modelValue":y[8]||(y[8]=W=>a.value=W),label:G(ee)("selectAll"),size:"large"},null,8,["modelValue","label"]),z(B,{class:"ml-[15px]",disabled:p.value,onClick:y[9]||(y[9]=W=>u())},{default:Q(()=>[ce(J(G(ee)("delete")),1)]),_:1},8,["disabled"]),z(B,{disabled:p.value,onClick:y[10]||(y[10]=W=>l())},{default:Q(()=>[ce(J(G(ee)("upload.move")),1)]),_:1},8,["disabled"])])]),_:1})):ae("",!0),z(j,{span:N.scene=="attachment"?16:24},{default:Q(()=>[K("div",sn,[z(ie,{"current-page":I.page,"onUpdate:current-page":y[11]||(y[11]=W=>I.page=W),small:!0,"page-size":I.limit,"onUpdate:page-size":y[12]||(y[12]=W=>I.limit=W),"page-sizes":[10,20,30,40,60],layout:"total, sizes, prev, pager, next, jumper",total:I.total,onSizeChange:y[13]||(y[13]=W=>G(m)()),onCurrentChange:G(m)},null,8,["current-page","page-size","total","onCurrentChange"])])]),_:1},8,["span"])]),_:1})]),N.scene=="attachment"?(Y(),Z(we,{key:0},[z(te,{modelValue:i.visible,"onUpdate:modelValue":y[17]||(y[17]=W=>i.visible=W),title:G(ee)("upload.moveCategory"),width:"350px"},{footer:Q(()=>[K("span",on,[z(B,{onClick:y[15]||(y[15]=W=>i.visible=!1)},{default:Q(()=>[ce(J(G(ee)("cancel")),1)]),_:1}),z(B,{type:"primary",loading:i.loading,onClick:y[16]||(y[16]=W=>i.confirm())},{default:Q(()=>[ce(J(G(ee)("confirm")),1)]),_:1},8,["loading"])])]),default:Q(()=>[z(fe,{"label-width":"60px"},{default:Q(()=>[z(re,{label:G(ee)("upload.moveTo"),style:{"margin-bottom":"0"}},{default:Q(()=>[z(le,{modelValue:i.cateId,"onUpdate:modelValue":y[14]||(y[14]=W=>i.cateId=W),class:"input-width"},{default:Q(()=>[(Y(!0),Z(we,null,Fe(D.data,(W,oe)=>(Y(),ge(se,{label:W.name,value:W.id,key:oe},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1},8,["modelValue","title"]),g.show?(Y(),ge(ne,{key:0,"url-list":G(r),onClose:y[18]||(y[18]=W=>g.show=!1),"initial-index":g.index,"zoom-rate":1},null,8,["url-list","initial-index"])):ae("",!0),z(te,{modelValue:n.visible,"onUpdate:modelValue":y[19]||(y[19]=W=>n.visible=W),width:"50%","align-center":"","destroy-on-close":!0,"custom-class":"video-preview"},{default:Q(()=>[z(he,{src:n.src,width:"100%"},null,8,["src"])]),_:1},8,["modelValue"])],64)):ae("",!0)],2)}}});const Pn=hr(ln,[["__scopeId","data-v-7f16ad91"]]);export{Ci as _,Pn as a}; diff --git a/niucloud/public/admin/assets/attachment-f7f23af8.css b/niucloud/public/admin/assets/attachment-f7f23af8.css new file mode 100644 index 0000000..a113bf1 --- /dev/null +++ b/niucloud/public/admin/assets/attachment-f7f23af8.css @@ -0,0 +1 @@ +.attachment-container .el-card__body{height:100%}.attachment-container .el-tabs{display:flex;flex-direction:column;height:100%}.attachment-container .el-tabs__content{flex:1}.attachment-container .el-tabs__content .el-tab-pane{height:100%}.attachment-container .el-tabs__nav-wrap:after{height:1px}.attachment-container .main-wrap{border:none}.attachment-container .main-wrap .group-wrap{padding:0 15px 0 0}.attachment-container .main-wrap .attachment-list-wrap{padding:0 0 0 15px} diff --git a/niucloud/public/admin/assets/auth.log-71585a97.js b/niucloud/public/admin/assets/auth.log-71585a97.js new file mode 100644 index 0000000..d59b33d --- /dev/null +++ b/niucloud/public/admin/assets/auth.log-71585a97.js @@ -0,0 +1 @@ +const e="登录IP",s="管理员姓名",l="链接",o="详情",a="参数",r="请求方式",c="操作时间",t="请输入登录IP",d="请输入管理员id",n="请输入管理员姓名",p="请输入链接",u="请输入参数",P="请输入请求方式",h="请输入操作时间",i="添加管理员操作记录表",m="编辑管理员操作记录表",y="确定要删除该管理员操作记录表吗?",g={ip:e,username:s,url:l,detail:o,params:a,type:r,createTime:c,ipPlaceholder:t,uidPlaceholder:d,usernamePlaceholder:n,urlPlaceholder:p,paramsPlaceholder:u,typePlaceholder:P,createTimePlaceholder:h,addSysUserLog:i,updateSysUserLog:m,sys_user_logDeleteTips:y};export{i as addSysUserLog,c as createTime,h as createTimePlaceholder,g as default,o as detail,e as ip,t as ipPlaceholder,a as params,u as paramsPlaceholder,y as sys_user_logDeleteTips,r as type,P as typePlaceholder,d as uidPlaceholder,m as updateSysUserLog,l as url,p as urlPlaceholder,s as username,n as usernamePlaceholder}; diff --git a/niucloud/public/admin/assets/auth.menu-6c831420.js b/niucloud/public/admin/assets/auth.menu-6c831420.js new file mode 100644 index 0000000..f0f296b --- /dev/null +++ b/niucloud/public/admin/assets/auth.menu-6c831420.js @@ -0,0 +1 @@ +const e="菜单名称",n="类型",t="api路径",o="目录",a="菜单",u="按钮",c="删除菜单会删除当前菜单以及该菜单下所有子菜单,是否确认删除?",l="添加菜单",m="编辑菜单",s="路由路径",d="组件路径",h="选择应用",r="父级菜单",P="菜单图标",p="权重",y="权限标识",i="请输入菜单名称",T="请输入权限标识",I="菜单标识只能使用字母数字下划线并且开头不能为数字",M="请输入路由路径",N="请输入组件路径",v="请输入api路径",K="请选择菜单图标",w="顶级",D="菜单短标题",S="请输入菜单短标题",B={menuName:e,menuType:n,authId:t,menuTypeDir:o,menuTypeMenu:a,menuTypeButton:u,menuDeleteTips:c,addMenu:l,updateMenu:m,routePath:s,viewPath:d,addon:h,parentMenu:r,menuIcon:P,sort:p,menuKey:y,menuNamePlaceholder:i,menuKeyPlaceholder:T,menuKeyValidata:I,routePathPlaceholder:M,viewPathPlaceholder:N,authIdPlaceholder:v,selectIconPlaceholder:K,topLevel:w,menuShortName:D,menuShortNamePlaceholder:S};export{l as addMenu,h as addon,t as authId,v as authIdPlaceholder,B as default,c as menuDeleteTips,P as menuIcon,y as menuKey,T as menuKeyPlaceholder,I as menuKeyValidata,e as menuName,i as menuNamePlaceholder,D as menuShortName,S as menuShortNamePlaceholder,n as menuType,u as menuTypeButton,o as menuTypeDir,a as menuTypeMenu,r as parentMenu,s as routePath,M as routePathPlaceholder,K as selectIconPlaceholder,p as sort,w as topLevel,m as updateMenu,d as viewPath,N as viewPathPlaceholder}; diff --git a/niucloud/public/admin/assets/auth.menu-b101f965.js b/niucloud/public/admin/assets/auth.menu-b101f965.js new file mode 100644 index 0000000..d31f3ad --- /dev/null +++ b/niucloud/public/admin/assets/auth.menu-b101f965.js @@ -0,0 +1 @@ +const e="Menu name",n="Type",t="Permission ID",o="Dir",u="Menu",a="Button",c="Are you sure you want to delete this menu?",s="Add menu",l="Update menu",m="Route path",h="Component path",r="Parent menu",d="Menu Icon",p="Please enter a menu name",P="Please enter routing path",i="Please enter the component path",y="Please enter Permission id",M="Please select the menu icon",T="top-level",I={menuName:e,menuType:n,authId:t,menuTypeDir:o,menuTypeMenu:u,menuTypeButton:a,menuDeleteTips:c,addMenu:s,updateMenu:l,routePath:m,viewPath:h,parentMenu:r,menuIcon:d,menuNamePlaceholder:p,routePathPlaceholder:P,viewPathPlaceholder:i,authIdPlaceholder:y,selectIconPlaceholder:M,topLevel:T};export{s as addMenu,t as authId,y as authIdPlaceholder,I as default,c as menuDeleteTips,d as menuIcon,e as menuName,p as menuNamePlaceholder,n as menuType,a as menuTypeButton,o as menuTypeDir,u as menuTypeMenu,r as parentMenu,m as routePath,P as routePathPlaceholder,M as selectIconPlaceholder,T as topLevel,l as updateMenu,h as viewPath,i as viewPathPlaceholder}; diff --git a/niucloud/public/admin/assets/auth.role-2e897342.js b/niucloud/public/admin/assets/auth.role-2e897342.js new file mode 100644 index 0000000..5d51ad4 --- /dev/null +++ b/niucloud/public/admin/assets/auth.role-2e897342.js @@ -0,0 +1 @@ +const e="新增角色",o="编辑角色",l="角色名称",t="确定要删除该角色吗?",c="请输入角色名称",s="请选择权限",r="父子级不关联",a="权限",d="展开/折叠",n={addRole:e,updateRole:o,roleName:l,roleDeleteTips:t,roleNamePlaceholder:c,rulesPlaceholder:s,checkStrictly:r,permission:a,foldText:d};export{e as addRole,r as checkStrictly,n as default,d as foldText,a as permission,t as roleDeleteTips,l as roleName,c as roleNamePlaceholder,s as rulesPlaceholder,o as updateRole}; diff --git a/niucloud/public/admin/assets/auth.site_menu-463de569.js b/niucloud/public/admin/assets/auth.site_menu-463de569.js new file mode 100644 index 0000000..40d60f9 --- /dev/null +++ b/niucloud/public/admin/assets/auth.site_menu-463de569.js @@ -0,0 +1 @@ +const e="菜单名称",n="类型",t="权限标识",o="目录",a="菜单",c="按钮",u="确定要删除该菜单吗?",s="添加菜单",l="编辑菜单",m="路由路径",d="组件路径",h="父级菜单",r="菜单图标",P="权重",p="菜单标识",y="请输入菜单名称",i="请输入菜单标识",T="菜单标识只能使用字母数字下划线并且开头不能为数字",I="请输入路由路径",M="请输入组件路径",N="请输入权限标识",v="请选择菜单图标",K="顶级",w="菜单短标题",D="请输入菜单短标题",S="选择应用",B="系统菜单",L="应用菜单",V={menuName:e,menuType:n,authId:t,menuTypeDir:o,menuTypeMenu:a,menuTypeButton:c,menuDeleteTips:u,addMenu:s,updateMenu:l,routePath:m,viewPath:d,parentMenu:h,menuIcon:r,sort:P,menuKey:p,menuNamePlaceholder:y,menuKeyPlaceholder:i,menuKeyValidata:T,routePathPlaceholder:I,viewPathPlaceholder:M,authIdPlaceholder:N,selectIconPlaceholder:v,topLevel:K,menuShortName:w,menuShortNamePlaceholder:D,addon:S,system:B,application:L};export{s as addMenu,S as addon,L as application,t as authId,N as authIdPlaceholder,V as default,u as menuDeleteTips,r as menuIcon,p as menuKey,i as menuKeyPlaceholder,T as menuKeyValidata,e as menuName,y as menuNamePlaceholder,w as menuShortName,D as menuShortNamePlaceholder,n as menuType,c as menuTypeButton,o as menuTypeDir,a as menuTypeMenu,h as parentMenu,m as routePath,I as routePathPlaceholder,v as selectIconPlaceholder,P as sort,B as system,K as topLevel,l as updateMenu,d as viewPath,M as viewPathPlaceholder}; diff --git a/niucloud/public/admin/assets/auth.user-8e7f7033.js b/niucloud/public/admin/assets/auth.user-8e7f7033.js new file mode 100644 index 0000000..7913343 --- /dev/null +++ b/niucloud/public/admin/assets/auth.user-8e7f7033.js @@ -0,0 +1 @@ +const s="新增管理员",e="编辑管理员",o="姓名",a="最后登录时间",r="最后登录IP",t="请输入账号",n="请输入密码",c="请再次确认密码",l="请输入姓名",d="两次输入的密码不一致",i="角色",u="超级管理员",m="请选择角色",P="锁定",h="解锁",p="用户状态",g="正常",k="锁定",T="超级管理员不可编辑",w="确定要解锁该管理员吗?",A="确定要锁定该管理员吗?",L="用户类型",N="平台管理员",R="站点管理员",U="请选择用户类型",b="站点管理员不可编辑",f="用户",y="请选择用户",D="选择或者新增用户作为管理员",I="新增用户",E={addUser:s,updateUser:e,userRealName:o,lastLoginTime:a,lastLoginIP:r,accountNumberPlaceholder:t,passwordPlaceholder:n,confirmPasswordPlaceholder:c,userRealNamePlaceholder:l,confirmPasswordError:d,userRoleName:i,administrator:u,userRolePlaceholder:m,lock:P,unlock:h,status:p,statusUnlock:g,statusLock:k,adminDisabled:T,userUnlockTips:w,userLockTips:A,userType:L,adminAdministrators:N,siteAdministrators:R,userTypePlaceholder:U,siteAdministratorsDisabled:b,manager:f,managerPlaceholder:y,managerTips:D,newAddManager:I};export{t as accountNumberPlaceholder,s as addUser,N as adminAdministrators,T as adminDisabled,u as administrator,d as confirmPasswordError,c as confirmPasswordPlaceholder,E as default,r as lastLoginIP,a as lastLoginTime,P as lock,f as manager,y as managerPlaceholder,D as managerTips,I as newAddManager,n as passwordPlaceholder,R as siteAdministrators,b as siteAdministratorsDisabled,p as status,k as statusLock,g as statusUnlock,h as unlock,e as updateUser,A as userLockTips,o as userRealName,l as userRealNamePlaceholder,i as userRoleName,m as userRolePlaceholder,L as userType,U as userTypePlaceholder,w as userUnlockTips}; diff --git a/niucloud/public/admin/assets/authorize-2c1d274b.css b/niucloud/public/admin/assets/authorize-2c1d274b.css new file mode 100644 index 0000000..87f9338 --- /dev/null +++ b/niucloud/public/admin/assets/authorize-2c1d274b.css @@ -0,0 +1 @@ +.el-timeline{--el-timeline-node-size-normal:12px;--el-timeline-node-size-large:14px;--el-timeline-node-color:var(--el-border-color-light);margin:0;font-size:var(--el-font-size-base);list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline .el-timeline-item__center{display:flex;align-items:center}.el-timeline .el-timeline-item__center .el-timeline-item__wrapper{width:100%}.el-timeline .el-timeline-item__center .el-timeline-item__tail{top:0}.el-timeline .el-timeline-item__center:first-child .el-timeline-item__tail{height:calc(50% + 10px);top:calc(50% - 10px)}.el-timeline .el-timeline-item__center:last-child .el-timeline-item__tail{display:block;height:calc(50% - 10px)}.el-timeline-item{position:relative;padding-bottom:20px}.el-timeline-item__wrapper{position:relative;padding-left:28px;top:-3px}.el-timeline-item__tail{position:absolute;left:4px;height:100%;border-left:2px solid var(--el-timeline-node-color)}.el-timeline-item .el-timeline-item__icon{color:var(--el-color-white);font-size:var(--el-font-size-small)}.el-timeline-item__node{position:absolute;background-color:var(--el-timeline-node-color);border-color:var(--el-timeline-node-color);border-radius:50%;box-sizing:border-box;display:flex;justify-content:center;align-items:center}.el-timeline-item__node--normal{left:-1px;width:var(--el-timeline-node-size-normal);height:var(--el-timeline-node-size-normal)}.el-timeline-item__node--large{left:-2px;width:var(--el-timeline-node-size-large);height:var(--el-timeline-node-size-large)}.el-timeline-item__node.is-hollow{background:var(--el-color-white);border-style:solid;border-width:2px}.el-timeline-item__node--primary{background-color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-timeline-item__node--success{background-color:var(--el-color-success);border-color:var(--el-color-success)}.el-timeline-item__node--warning{background-color:var(--el-color-warning);border-color:var(--el-color-warning)}.el-timeline-item__node--danger{background-color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-timeline-item__node--info{background-color:var(--el-color-info);border-color:var(--el-color-info)}.el-timeline-item__dot{position:absolute;display:flex;justify-content:center;align-items:center}.el-timeline-item__content{color:var(--el-text-color-primary)}.el-timeline-item__timestamp{color:var(--el-text-color-secondary);line-height:1;font-size:var(--el-font-size-small)}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.app-text[data-v-23c758b3]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-o-text-overflow:ellipsis}.main[data-v-23c758b3]{background-color:var(--el-bg-color-overlay)}em[data-v-23c758b3]{font-style:normal}.timeline-log-wrap[data-v-23c758b3]{background:#F5F7F9}html.dark .timeline-log-wrap[data-v-23c758b3]{background:var(--el-bg-color);color:var(--el-text-color-regular)}.auth-code-dialog .el-overlay{background-color:transparent}.auth-code-dialog .el-dialog__header{padding:0}.auth-code-dialog .el-dialog__body{padding:20px 30px} diff --git a/niucloud/public/admin/assets/authorize-e869aaa5.js b/niucloud/public/admin/assets/authorize-e869aaa5.js new file mode 100644 index 0000000..74dd343 --- /dev/null +++ b/niucloud/public/admin/assets/authorize-e869aaa5.js @@ -0,0 +1 @@ +import{d as te,r,q as ae,n as j,N as c,a0 as H,y as se,h as n,c as k,I as x,w as a,a as e,u as i,i as d,e as s,t as _,B as E,F as oe,G as le,a4 as ne,a5 as ie,E as re,a1 as ce,a6 as pe,W as de,X as ue,_ as _e,Y as me,a7 as xe,a8 as fe,a9 as he,$ as ve,p as ge,g as ye}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as we,a as ke,s as Ce}from"./module-98fa643e.js";import{U as be,C as Ve}from"./index-37622b2e.js";import{_ as Fe}from"./_plugin-vue_export-helper-c27b6911.js";import"./vue-web-terminal-85c405a6.js";/* empty css *//* empty css *//* empty css */const g=C=>(ge("data-v-23c758b3"),C=C(),ye(),C),Be={class:"main main-container min-w-[1000px] min-h-[650px]"},Ie={class:"flex"},Ee={class:"bg-[#F3F6FF] mr-[14px] w-[402px] pt-[30px] pl-[32px] pr-[20px] pb-[60px] timeline-log-wrap"},Te={class:"flex items-center justify-between"},Ae=g(()=>e("span",{class:"text-[20px]"},"版本信息",-1)),Le={class:"flex-1 w-0 flex justify-end"},Se={class:"mt-[30px] flex items-center text-[14px] text-[#797979]"},ze=g(()=>e("span",null,"当前版本",-1)),De={class:"text-[26px] ml-[15px] mr-[10px] text-[#656668]"},Ne={key:0,class:"text-[12px]"},Re={key:1,class:"text-[12px] text-[red]"},Ue={class:"flex-1 flex justify-between items-center bg-[#F3F6FF] pt-[34px] pl-[30px] pr-[60px] pb-[62px] timeline-log-wrap"},je={class:"flex flex-col"},He={class:"flex flex-wrap items-center"},Pe=g(()=>e("p",{class:"text-[20px] mr-[20px]"},"授权信息",-1)),$e={class:"text-[14px] text-[#666]"},Me={class:"mt-[46px] ml-[40px] flex flex-wrap"},qe={class:"text-[14px] mr-[84px]"},Je={class:"ml-[12px] text-[12px]"},Oe={class:"text-[14px] flex items-center"},Ge=g(()=>e("span",null,"授权码",-1)),We={class:"ml-[12px] mr-[10px] text-[12px]"},Xe={class:"flex flex-1 flex-wrap justify-end relative"},Ye={class:"px-[18px] py-[8px]"},Ke=g(()=>e("p",{class:"leading-[32px] text-[14px]"},"您在官方应用市场购买任意一款应用,即可获得授权码。输入正确授权码认证通过后,即可支持在线升级和其它相关服务 ",-1)),Qe={class:"flex justify-end mt-[36px]"},Ze={class:"mt-[20px]"},et={class:"text-sm mt-[10px] text-info"},tt={class:"mt-[20px]"},at={class:"mt-[10px] text-right"},st=g(()=>e("div",{class:"text-[20px] mb-[20px]"},"历史版本",-1)),ot={key:0,class:"mt-[10px] p-[20px] bg-overlay rounded-md timeline-log-wrap whitespace-pre"},lt=["innerHTML"],nt=te({__name:"authorize",setup(C){const T=r(null),b=r(null),A=r(null),f=r(!1),h=r(!1),V=r([]),L=()=>{we().then(({data:o})=>{V.value=o})};L();const m=ae(()=>V.value.length?V.value[0]:null),P=o=>{const t=JSON.parse(JSON.stringify(o));return t.slice(0,t.length/2)+t.slice(t.length/2,t.length-1).replace(/./g,"*")},B=()=>{f.value=!0},u=r({company_name:"",site_address:"",auth_code:""}),y=r(!0),w=r(!1),S=()=>{ke().then(o=>{y.value=!1,o.data.data&&o.data.data.length!=0&&(u.value=o.data.data,f.value=!1)}).catch(()=>{y.value=!1,f.value=!1})};S();const v=j({auth_code:"",auth_secret:""}),z=r(),$=j({auth_code:[{required:!0,message:c("authCodePlaceholder"),trigger:"blur"}],auth_secret:[{required:!0,message:c("authSecretPlaceholder"),trigger:"blur"}]}),M=async o=>{w.value||!o||await o.validate(async t=>{t&&(w.value=!0,Ce(v).then(()=>{w.value=!1,S()}).catch(()=>{w.value=!1,f.value=!1}))})},D=()=>{window.open("https://www.niucloud.com/app")},F=r("");(()=>{ne().then(o=>{F.value=o.data.version.version})})();const q=()=>{var o;if(!u.value){B();return}(o=T.value)==null||o.open()},J=()=>{var o;if(!u.value){B();return}if(b.value.cloudBuildTask){(o=b.value)==null||o.open();return}ie.confirm(c("cloudBuildTips"),c("warning"),{confirmButtonText:c("confirm"),cancelButtonText:c("cancel"),type:"warning"}).then(()=>{var t;(t=b.value)==null||t.open()})};return(o,t)=>{const p=re,O=H("View"),N=ce,G=H("Hide"),W=pe,R=de,U=ue,I=_e,X=me,Y=xe,K=fe,Q=he,Z=ve;return se((n(),k("div",Be,[y.value?E("",!0):(n(),x(I,{key:0,class:"box-card !border-none",shadow:"never"},{default:a(()=>[e("div",Ie,[e("div",Ee,[e("div",Te,[Ae,e("div",Le,[!i(m)||i(m)&&i(m).version_no==F.value?(n(),x(p,{key:0,class:"text-[#4C4C4C] w-[78px] h-[32px] !bg-transparent",onClick:L},{default:a(()=>[d("检测更新")]),_:1})):(n(),x(p,{key:1,class:"text-[#4C4C4C] w-[78px] h-[32px]",type:"primary",onClick:q},{default:a(()=>[d("一键升级")]),_:1})),s(p,{class:"text-[#4C4C4C] w-[78px] h-[32px]",type:"primary",onClick:J},{default:a(()=>[d("云编译")]),_:1})])]),e("div",Se,[ze,e("span",De,_(F.value),1),!i(m)||i(m)&&i(m).version_no==F.value?(n(),k("em",Ne,"(当前已是最新版本)")):(n(),k("em",Re,"(最新版本"+_(i(m).version_no)+")",1))])]),e("div",Ue,[e("div",je,[e("div",He,[Pe,e("span",$e,_(u.value.company_name||"--"),1)]),e("div",Me,[e("span",qe,[d("授权域名"),e("em",Je,_(u.value.site_address||"--"),1)]),e("span",Oe,[Ge,e("em",We,_(u.value.auth_code?h.value?u.value.auth_code:P(u.value.auth_code):"--"),1),h.value?(n(),x(N,{key:1,onClick:t[1]||(t[1]=l=>h.value=!h.value),class:"text-[12px] cursor-pointer"},{default:a(()=>[s(G)]),_:1})):(n(),x(N,{key:0,onClick:t[0]||(t[0]=l=>h.value=!h.value),class:"text-[12px] cursor-pointer"},{default:a(()=>[s(O)]),_:1}))])])]),e("div",Xe,[s(p,{class:"w-[154px] !h-[48px] mt-[8px]",type:"primary",onClick:B},{default:a(()=>[d("授权码认证")]),_:1}),s(W,{ref_key:"getAuthCodeDialog",ref:A,placement:"bottom-start",width:478,trigger:"click",class:"mt-[8px]"},{reference:a(()=>[s(p,{class:"w-[154px] !h-[48px] mt-[8px] !text-[var(--el-color-primary)] hover:!text-[var(--el-color-primary)] !bg-transparent",plain:"",type:"primary"},{default:a(()=>[d("如何获取授权码?")]),_:1})]),default:a(()=>[e("div",Ye,[Ke,e("div",Qe,[s(p,{class:"w-[182px] !h-[48px]",plain:"",onClick:D},{default:a(()=>[d("去应用市场逛逛")]),_:1}),s(p,{class:"w-[100px] !h-[48px]",plain:"",onClick:t[2]||(t[2]=l=>A.value.hide())},{default:a(()=>[d("关闭")]),_:1})])])]),_:1},512)]),s(Y,{modelValue:f.value,"onUpdate:modelValue":t[6]||(t[6]=l=>f.value=l),title:"授权码认证",width:"400px"},{default:a(()=>[s(X,{model:v,"label-width":"0",ref_key:"formRef",ref:z,rules:$,class:"page-form"},{default:a(()=>[s(I,{class:"box-card !border-none",shadow:"never"},{default:a(()=>[s(U,{prop:"auth_code"},{default:a(()=>[s(R,{modelValue:v.auth_code,"onUpdate:modelValue":t[3]||(t[3]=l=>v.auth_code=l),placeholder:i(c)("authCodePlaceholder"),class:"input-width",clearable:"",size:"large"},null,8,["modelValue","placeholder"])]),_:1}),e("div",Ze,[s(U,{prop:"auth_secret"},{default:a(()=>[s(R,{modelValue:v.auth_secret,"onUpdate:modelValue":t[4]||(t[4]=l=>v.auth_secret=l),clearable:"",placeholder:i(c)("authSecretPlaceholder"),class:"input-width",size:"large"},null,8,["modelValue","placeholder"])]),_:1})]),e("div",et,_(i(c)("authInfoTips")),1),e("div",tt,[s(p,{type:"primary",class:"w-full",size:"large",loading:w.value,onClick:t[5]||(t[5]=l=>M(z.value))},{default:a(()=>[d(_(i(c)("confirm")),1)]),_:1},8,["loading"])]),e("div",at,[s(p,{type:"primary",link:"",onClick:D},{default:a(()=>[d(_(i(c)("notHaveAuth")),1)]),_:1})])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"])])])]),_:1})),y.value?E("",!0):(n(),x(I,{key:1,class:"box-card !border-none",shadow:"never"},{default:a(()=>[st,s(Q,null,{default:a(()=>[(n(!0),k(oe,null,le(V.value,(l,ee)=>(n(),x(K,{timestamp:l.release_time+" 版本:"+l.version_no,type:"primary",hollow:!0,placement:"top",key:ee},{default:a(()=>[l.upgrade_log?(n(),k("div",ot,[e("div",{innerHTML:l.upgrade_log},null,8,lt)])):E("",!0)]),_:2},1032,["timestamp"]))),128))]),_:1})]),_:1})),s(be,{ref_key:"upgradeRef",ref:T},null,512),s(Ve,{ref_key:"cloudBuildRef",ref:b},null,512)])),[[Z,y.value]])}}});const Ft=Fe(nt,[["__scopeId","data-v-23c758b3"]]);export{Ft as default}; diff --git a/niucloud/public/admin/assets/balance-ea9a2b25.js b/niucloud/public/admin/assets/balance-ea9a2b25.js new file mode 100644 index 0000000..64824a3 --- /dev/null +++ b/niucloud/public/admin/assets/balance-ea9a2b25.js @@ -0,0 +1 @@ +import{d as G,O as W,n as X,r as h,f as J,h as m,c as u,e as a,w as s,a as r,t as i,u as o,N as n,F as L,G as S,I as C,i as g,y as K,R as Q,cH as Z,al as ee,am as ae,_ as te,W as le,X as oe,aq as ne,aC as se,cI as re,E as ce,Y as ie,af as me,ah as pe,a3 as de,$ as ue}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{_ as _e}from"./default_headimg-a897263d.js";import{f as be,h as fe,i as he,j as ge,k as ve,l as ye}from"./member-ff972216.js";import{_ as xe}from"./member-balance-info.vue_vue_type_script_setup_true_lang-09b9e0b3.js";/* empty css */const we={class:"main-container"},ke={class:"flex justify-between items-center mb-[5px]"},Pe={class:"text-[20px]"},Te={class:"statistic-card"},Ce={class:"statistic-footer"},Ee={class:"footer-item text-[14px] text-[#666]"},Ve={class:"statistic-card"},Be={class:"statistic-footer"},De={class:"footer-item text-[14px] text-[#666]"},Fe={class:"statistic-card"},Ie={class:"statistic-footer"},Le={class:"footer-item text-[14px] text-[#666]"},Se={class:"mt-[10px]"},$e=["onClick"],Ne=["src"],ze={key:1,class:"w-[50px] h-[50px] mr-[10px]",src:_e,alt:""},Me={class:"flex flex flex-col"},Re={class:""},Ue={class:"whitespace-nowrap"},Ae={key:0},Ye={key:1},je={class:"mt-[16px] flex justify-end"},ha=G({__name:"balance",setup(He){const E=W(),V=parseInt(E.query.id||0),$=E.meta.title,e=X({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{keywords:"",from_type:"",create_time:"",mobile:"",member_id:V,balance_type:""}}),y=h([]);(async()=>{y.value=await(await be("balance")).data})();const B=h(),N=c=>{c&&(c.resetFields(),_())},_=(c=1)=>{e.loading=!0,e.page=c,e.searchParam.balance_type==""||e.searchParam.balance_type=="balance"?fe({page:e.page,limit:e.limit,...e.searchParam}).then(l=>{e.loading=!1,e.data=l.data.data,e.total=l.data.total}).catch(()=>{e.loading=!1}):he({page:e.page,limit:e.limit,...e.searchParam}).then(l=>{e.loading=!1,e.data=l.data.data,e.total=l.data.total}).catch(()=>{e.loading=!1})};_();const x=h(null),z=c=>{x.value.setFormData(c),x.value.showDialog=!0},M=J(),R=c=>{M.push(`/member/detail?id=${c}`)},d=h([]);(()=>{ge({member_id:V}).then(c=>{d.value=c.data})})();const D=h([]);(()=>{ve().then(c=>{for(var l in c.data)(l=="balance"||l=="money")&&D.value.push({name:c.data[l],type:l})})})();const F=()=>{let c=e.searchParam.balance_type;c==""&&(c="balance"),ye({account_type:c}).then(l=>{y.value=l.data})};return F(),(c,l)=>{const w=Z,k=ee,U=ae,P=te,A=le,f=oe,v=ne,I=se,Y=re,T=ce,j=ie,p=me,H=pe,q=de,O=ue;return m(),u("div",we,[a(P,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[r("div",ke,[r("span",Pe,i(o($)),1)]),a(P,{class:"box-card !border-none base-bg !px-[35px]",shadow:"never"},{default:s(()=>[a(U,{class:"flex"},{default:s(()=>[a(k,{span:8,class:"min-w-[100px]"},{default:s(()=>[r("div",Te,[a(w,{value:d.value.money&&d.value.balance?(Number.parseFloat(d.value.money)+Number.parseFloat(d.value.balance)).toFixed(2):"0.00"},null,8,["value"]),r("div",Ce,[r("div",Ee,[r("span",null,i(o(n)("totalAllBalance")),1)])])])]),_:1}),a(k,{span:8,class:"min-w-[100px]"},{default:s(()=>[r("div",Ve,[a(w,{value:d.value.money},null,8,["value"]),r("div",Be,[r("div",De,[r("span",null,i(o(n)("totalMoney")),1)])])])]),_:1}),a(k,{span:8,class:"min-w-[100px]"},{default:s(()=>[r("div",Fe,[a(w,{value:d.value.balance},null,8,["value"]),r("div",Ie,[r("div",Le,[r("span",null,i(o(n)("totalBalance")),1)])])])]),_:1})]),_:1})]),_:1}),a(P,{class:"box-card !border-none mb-[10px] table-search-wrap",shadow:"never"},{default:s(()=>[a(j,{inline:!0,model:e.searchParam,ref_key:"searchFormRef",ref:B},{default:s(()=>[a(f,{label:o(n)("memberInfo"),prop:"keywords"},{default:s(()=>[a(A,{modelValue:e.searchParam.keywords,"onUpdate:modelValue":l[0]||(l[0]=t=>e.searchParam.keywords=t),class:"w-[240px]",placeholder:o(n)("memberInfoPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(f,{label:o(n)("balanceType"),prop:"balance_type"},{default:s(()=>[a(I,{modelValue:e.searchParam.balance_type,"onUpdate:modelValue":l[1]||(l[1]=t=>e.searchParam.balance_type=t),clearable:"",placeholder:o(n)("fromTypePlaceholder"),class:"input-width",onChange:F},{default:s(()=>[a(v,{label:o(n)("selectPlaceholder"),value:""},null,8,["label"]),(m(!0),u(L,null,S(D.value,(t,b)=>(m(),C(v,{label:t.name,value:t.type,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),a(f,{label:o(n)("fromType"),prop:"from_type"},{default:s(()=>[a(I,{modelValue:e.searchParam.from_type,"onUpdate:modelValue":l[2]||(l[2]=t=>e.searchParam.from_type=t),clearable:"",placeholder:o(n)("fromTypePlaceholder"),class:"input-width"},{default:s(()=>[a(v,{label:o(n)("selectPlaceholder"),value:""},null,8,["label"]),(m(!0),u(L,null,S(y.value,(t,b)=>(m(),C(v,{label:t.name,value:b,key:b},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),a(f,{label:o(n)("createTime"),prop:"create_time"},{default:s(()=>[a(Y,{modelValue:e.searchParam.create_time,"onUpdate:modelValue":l[3]||(l[3]=t=>e.searchParam.create_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":o(n)("startDate"),"end-placeholder":o(n)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),a(f,null,{default:s(()=>[a(T,{type:"primary",onClick:l[4]||(l[4]=t=>_())},{default:s(()=>[g(i(o(n)("search")),1)]),_:1}),a(T,{onClick:l[5]||(l[5]=t=>N(B.value))},{default:s(()=>[g(i(o(n)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),r("div",Se,[K((m(),C(H,{data:e.data,size:"large"},{empty:s(()=>[r("span",null,i(e.loading?"":o(n)("emptyData")),1)]),default:s(()=>[a(p,{prop:"member_id",label:o(n)("memberId"),"min-width":"100","show-overflow-tooltip":!0},{default:s(({row:t})=>[g(i(t.member.member_no),1)]),_:1},8,["label"]),a(p,{label:o(n)("memberInfo"),"min-width":"140","show-overflow-tooltip":!0},{default:s(({row:t})=>[r("div",{class:"flex items-center cursor-pointer",onClick:b=>R(t.member_id)},[t.member.headimg?(m(),u("img",{key:0,class:"w-[50px] h-[50px] mr-[10px]",src:o(Q)(t.member.headimg),alt:""},null,8,Ne)):(m(),u("img",ze)),r("div",Me,[r("span",Re,i(t.member.nickname||""),1)])],8,$e)]),_:1},8,["label"]),a(p,{prop:"mobile",label:o(n)("mobile"),"min-width":"90"},{default:s(({row:t})=>[g(i(t.member.mobile||""),1)]),_:1},8,["label"]),a(p,{prop:"account_data",label:o(n)("accountData"),"min-width":"100",align:"right"},{default:s(({row:t})=>[r("div",Ue,[t.account_data>=0?(m(),u("span",Ae,"+"+i(t.account_data),1)):(m(),u("span",Ye,i(t.account_data),1))])]),_:1},8,["label"]),a(p,{prop:"account_sum",label:o(n)("accountSum"),"min-width":"110",align:"right"},null,8,["label"]),a(p,{prop:"account_type_name",label:o(n)("balanceType"),"min-width":"150",align:"center"},null,8,["label"]),a(p,{prop:"from_type_name",label:o(n)("fromType"),"min-width":"120",align:""},null,8,["label"]),a(p,{prop:"create_time","show-overflow-tooltip":!0,label:o(n)("createTime"),"min-width":"150"},null,8,["label"]),a(p,{label:o(n)("operation"),align:"right",fixed:"right",width:"100"},{default:s(({row:t})=>[a(T,{type:"primary",link:"",onClick:b=>z(t)},{default:s(()=>[g(i(o(n)("info")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[O,e.loading]]),r("div",je,[a(q,{"current-page":e.page,"onUpdate:current-page":l[6]||(l[6]=t=>e.page=t),"page-size":e.limit,"onUpdate:page-size":l[7]||(l[7]=t=>e.limit=t),layout:"total, sizes, prev, pager, next, jumper",total:e.total,onSizeChange:l[8]||(l[8]=t=>_()),onCurrentChange:_},null,8,["current-page","page-size","total"])])])]),_:1}),a(xe,{ref_key:"balanceDialog",ref:x,onComplete:_},null,512)])}}});export{ha as default}; diff --git a/niucloud/public/admin/assets/browser-a1ac24ac.js b/niucloud/public/admin/assets/browser-a1ac24ac.js new file mode 100644 index 0000000..31e62a5 --- /dev/null +++ b/niucloud/public/admin/assets/browser-a1ac24ac.js @@ -0,0 +1,8 @@ +var O={},bt=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},ht={},T={};let st;const Rt=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];T.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};T.getSymbolTotalCodewords=function(t){return Rt[t]};T.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};T.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');st=t};T.isKanjiModeEnabled=function(){return typeof st<"u"};T.toSJIS=function(t){return st(t)};var $={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(i){if(typeof i!="string")throw new Error("Param is not a string");switch(i.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+i)}}e.isValid=function(o){return o&&typeof o.bit<"u"&&o.bit>=0&&o.bit<4},e.from=function(o,r){if(e.isValid(o))return o;try{return t(o)}catch{return r}}})($);function wt(){this.buffer=[],this.length=0}wt.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let i=0;i>>t-i-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Lt=wt;function V(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}V.prototype.set=function(e,t,i,o){const r=e*this.size+t;this.data[r]=i,o&&(this.reservedBit[r]=!0)};V.prototype.get=function(e,t){return this.data[e*this.size+t]};V.prototype.xor=function(e,t,i){this.data[e*this.size+t]^=i};V.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var Dt=V,mt={};(function(e){const t=T.getSymbolSize;e.getRowColCoords=function(o){if(o===1)return[];const r=Math.floor(o/7)+2,n=t(o),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,c=[n-7];for(let u=1;u=0&&r<=7},e.from=function(r){return e.isValid(r)?parseInt(r,10):void 0},e.getPenaltyN1=function(r){const n=r.size;let s=0,c=0,u=0,a=null,l=null;for(let B=0;B=5&&(s+=t.N1+(c-5)),a=f,c=1),f=r.get(w,B),f===l?u++:(u>=5&&(s+=t.N1+(u-5)),l=f,u=1)}c>=5&&(s+=t.N1+(c-5)),u>=5&&(s+=t.N1+(u-5))}return s},e.getPenaltyN2=function(r){const n=r.size;let s=0;for(let c=0;c=10&&(c===1488||c===93)&&s++,u=u<<1&2047|r.get(l,a),l>=10&&(u===1488||u===93)&&s++}return s*t.N3},e.getPenaltyN4=function(r){let n=0;const s=r.data.length;for(let u=0;u=0;){const s=n[0];for(let u=0;u0){const n=new Uint8Array(this.degree);return n.set(o,r),n}return o};var _t=ut,pt={},L={},ct={};ct.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var P={};const At="[0-9]+",Ft="[A-Z $%*+\\-./:]+";let z="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";z=z.replace(/u/g,"\\u");const kt="(?:(?![A-Z0-9 $%*+\\-./:]|"+z+`)(?:.|[\r +]))+`;P.KANJI=new RegExp(z,"g");P.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");P.BYTE=new RegExp(kt,"g");P.NUMERIC=new RegExp(At,"g");P.ALPHANUMERIC=new RegExp(Ft,"g");const vt=new RegExp("^"+z+"$"),zt=new RegExp("^"+At+"$"),Vt=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");P.testKanji=function(t){return vt.test(t)};P.testNumeric=function(t){return zt.test(t)};P.testAlphanumeric=function(t){return Vt.test(t)};(function(e){const t=ct,i=P;e.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(n,s){if(!n.ccBits)throw new Error("Invalid mode: "+n);if(!t.isValid(s))throw new Error("Invalid version: "+s);return s>=1&&s<10?n.ccBits[0]:s<27?n.ccBits[1]:n.ccBits[2]},e.getBestModeForData=function(n){return i.testNumeric(n)?e.NUMERIC:i.testAlphanumeric(n)?e.ALPHANUMERIC:i.testKanji(n)?e.KANJI:e.BYTE},e.toString=function(n){if(n&&n.id)return n.id;throw new Error("Invalid mode")},e.isValid=function(n){return n&&n.bit&&n.ccBits};function o(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+r)}}e.from=function(n,s){if(e.isValid(n))return n;try{return o(n)}catch{return s}}})(L);(function(e){const t=T,i=j,o=$,r=L,n=ct,s=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,c=t.getBCHDigit(s);function u(w,f,m){for(let y=1;y<=40;y++)if(f<=e.getCapacity(y,m,w))return y}function a(w,f){return r.getCharCountIndicator(w,f)+4}function l(w,f){let m=0;return w.forEach(function(y){const I=a(y.mode,f);m+=I+y.getBitsLength()}),m}function B(w,f){for(let m=1;m<=40;m++)if(l(w,m)<=e.getCapacity(m,f,r.MIXED))return m}e.from=function(f,m){return n.isValid(f)?parseInt(f,10):m},e.getCapacity=function(f,m,y){if(!n.isValid(f))throw new Error("Invalid QR Code version");typeof y>"u"&&(y=r.BYTE);const I=t.getSymbolTotalCodewords(f),h=i.getTotalCodewordsCount(f,m),E=(I-h)*8;if(y===r.MIXED)return E;const d=E-a(y,f);switch(y){case r.NUMERIC:return Math.floor(d/10*3);case r.ALPHANUMERIC:return Math.floor(d/11*2);case r.KANJI:return Math.floor(d/13);case r.BYTE:default:return Math.floor(d/8)}},e.getBestVersionForData=function(f,m){let y;const I=o.from(m,o.M);if(Array.isArray(f)){if(f.length>1)return B(f,I);if(f.length===0)return 1;y=f[0]}else y=f;return u(y.mode,y.getLength(),I)},e.getEncodedBits=function(f){if(!n.isValid(f)||f<7)throw new Error("Invalid QR Code version");let m=f<<12;for(;t.getBCHDigit(m)-c>=0;)m^=s<=0;)r^=Tt<0&&(o=this.data.substr(i),r=parseInt(o,10),t.put(r,n*3+1))};var Jt=D;const Yt=L,W=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function U(e){this.mode=Yt.ALPHANUMERIC,this.data=e}U.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};U.prototype.getLength=function(){return this.data.length};U.prototype.getBitsLength=function(){return U.getBitsLength(this.data.length)};U.prototype.write=function(t){let i;for(i=0;i+2<=this.data.length;i+=2){let o=W.indexOf(this.data[i])*45;o+=W.indexOf(this.data[i+1]),t.put(o,11)}this.data.length%2&&t.put(W.indexOf(this.data[i]),6)};var Ot=U,$t=function(t){for(var i=[],o=t.length,r=0;r=55296&&n<=56319&&o>r+1){var s=t.charCodeAt(r+1);s>=56320&&s<=57343&&(n=(n-55296)*1024+s-56320+65536,r+=1)}if(n<128){i.push(n);continue}if(n<2048){i.push(n>>6|192),i.push(n&63|128);continue}if(n<55296||n>=57344&&n<65536){i.push(n>>12|224),i.push(n>>6&63|128),i.push(n&63|128);continue}if(n>=65536&&n<=1114111){i.push(n>>18|240),i.push(n>>12&63|128),i.push(n>>6&63|128),i.push(n&63|128);continue}i.push(239,191,189)}return new Uint8Array(i).buffer};const jt=$t,Gt=L;function _(e){this.mode=Gt.BYTE,typeof e=="string"&&(e=jt(e)),this.data=new Uint8Array(e)}_.getBitsLength=function(t){return t*8};_.prototype.getLength=function(){return this.data.length};_.prototype.getBitsLength=function(){return _.getBitsLength(this.data.length)};_.prototype.write=function(e){for(let t=0,i=this.data.length;t=33088&&i<=40956)i-=33088;else if(i>=57408&&i<=60351)i-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` +Make sure your charset is UTF-8`);i=(i>>>8&255)*192+(i&255),e.put(i,13)}};var Zt=F,nt={},Xt={get exports(){return nt},set exports(e){nt=e}};(function(e){var t={single_source_shortest_paths:function(i,o,r){var n={},s={};s[o]=0;var c=t.PriorityQueue.make();c.push(o,0);for(var u,a,l,B,w,f,m,y,I;!c.empty();){u=c.pop(),a=u.value,B=u.cost,w=i[a]||{};for(l in w)w.hasOwnProperty(l)&&(f=w[l],m=B+f,y=s[l],I=typeof s[l]>"u",(I||y>m)&&(s[l]=m,c.push(l,m),n[l]=a))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",o," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(i,o){for(var r=[],n=o;n;)r.push(n),i[n],n=i[n];return r.reverse(),r},find_path:function(i,o,r){var n=t.single_source_shortest_paths(i,o,r);return t.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(i){var o=t.PriorityQueue,r={},n;i=i||{};for(n in o)o.hasOwnProperty(n)&&(r[n]=o[n]);return r.queue=[],r.sorter=i.sorter||o.default_sorter,r},default_sorter:function(i,o){return i.cost-o.cost},push:function(i,o){var r={value:i,cost:o};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t})(Xt);(function(e){const t=L,i=Jt,o=Ot,r=Qt,n=Zt,s=P,c=T,u=nt;function a(h){return unescape(encodeURIComponent(h)).length}function l(h,E,d){const g=[];let C;for(;(C=h.exec(d))!==null;)g.push({data:C[0],index:C.index,mode:E,length:C[0].length});return g}function B(h){const E=l(s.NUMERIC,t.NUMERIC,h),d=l(s.ALPHANUMERIC,t.ALPHANUMERIC,h);let g,C;return c.isKanjiModeEnabled()?(g=l(s.BYTE,t.BYTE,h),C=l(s.KANJI,t.KANJI,h)):(g=l(s.BYTE_KANJI,t.BYTE,h),C=[]),E.concat(d,g,C).sort(function(A,N){return A.index-N.index}).map(function(A){return{data:A.data,mode:A.mode,length:A.length}})}function w(h,E){switch(E){case t.NUMERIC:return i.getBitsLength(h);case t.ALPHANUMERIC:return o.getBitsLength(h);case t.KANJI:return n.getBitsLength(h);case t.BYTE:return r.getBitsLength(h)}}function f(h){return h.reduce(function(E,d){const g=E.length-1>=0?E[E.length-1]:null;return g&&g.mode===d.mode?(E[E.length-1].data+=d.data,E):(E.push(d),E)},[])}function m(h){const E=[];for(let d=0;d=0&&c<=6&&(u===0||u===6)||u>=0&&u<=6&&(c===0||c===6)||c>=2&&c<=4&&u>=2&&u<=4?e.set(n+c,s+u,!0,!0):e.set(n+c,s+u,!1,!0))}}function ue(e){const t=e.size;for(let i=8;i>c&1)===1,e.set(r,n,s,!0),e.set(n,r,s,!0)}function x(e,t,i){const o=e.size,r=oe.getEncodedBits(t,i);let n,s;for(n=0;n<15;n++)s=(r>>n&1)===1,n<6?e.set(n,8,s,!0):n<8?e.set(n+1,8,s,!0):e.set(o-15+n,8,s,!0),n<8?e.set(8,o-n-1,s,!0):n<9?e.set(8,15-n-1+1,s,!0):e.set(8,15-n-1,s,!0);e.set(o-8,8,1,!0)}function le(e,t){const i=e.size;let o=-1,r=i-1,n=7,s=0;for(let c=i-1;c>0;c-=2)for(c===6&&c--;;){for(let u=0;u<2;u++)if(!e.isReserved(r,c-u)){let a=!1;s>>n&1)===1),e.set(r,c-u,a),n--,n===-1&&(s++,n=7)}if(r+=o,r<0||i<=r){r-=o,o=-o;break}}}function fe(e,t,i){const o=new xt;i.forEach(function(u){o.put(u.mode.bit,4),o.put(u.getLength(),ie.getCharCountIndicator(u.mode,e)),u.write(o)});const r=Q.getSymbolTotalCodewords(e),n=ot.getTotalCodewordsCount(e,t),s=(r-n)*8;for(o.getLengthInBits()+4<=s&&o.put(0,4);o.getLengthInBits()%8!==0;)o.putBit(0);const c=(s-o.getLengthInBits())/8;for(let u=0;u=7&&ae(u,t),le(u,s),isNaN(o)&&(o=rt.getBestMask(u,x.bind(null,u,i))),rt.applyMask(o,u),x(u,i,o),{modules:u,version:t,errorCorrectionLevel:i,maskPattern:o,segments:r}}ht.create=function(t,i){if(typeof t>"u"||t==="")throw new Error("No input text");let o=Z.M,r,n;return typeof i<"u"&&(o=Z.from(i.errorCorrectionLevel,Z.M),r=Y.from(i.version),n=rt.from(i.maskPattern),i.toSJISFunc&&Q.setToSJISFunction(i.toSJISFunc)),de(t,r,o,n)};var Mt={},at={};(function(e){function t(i){if(typeof i=="number"&&(i=i.toString()),typeof i!="string")throw new Error("Color should be defined as hex string");let o=i.slice().replace("#","").split("");if(o.length<3||o.length===5||o.length>8)throw new Error("Invalid hex color: "+i);(o.length===3||o.length===4)&&(o=Array.prototype.concat.apply([],o.map(function(n){return[n,n]}))),o.length===6&&o.push("F","F");const r=parseInt(o.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+o.slice(0,6).join("")}}e.getOptions=function(o){o||(o={}),o.color||(o.color={});const r=typeof o.margin>"u"||o.margin===null||o.margin<0?4:o.margin,n=o.width&&o.width>=21?o.width:void 0,s=o.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:t(o.color.dark||"#000000ff"),light:t(o.color.light||"#ffffffff")},type:o.type,rendererOpts:o.rendererOpts||{}}},e.getScale=function(o,r){return r.width&&r.width>=o+r.margin*2?r.width/(o+r.margin*2):r.scale},e.getImageWidth=function(o,r){const n=e.getScale(o,r);return Math.floor((o+r.margin*2)*n)},e.qrToImageData=function(o,r,n){const s=r.modules.size,c=r.modules.data,u=e.getScale(s,n),a=Math.floor((s+n.margin*2)*u),l=n.margin*u,B=[n.color.light,n.color.dark];for(let w=0;w=l&&f>=l&&w"u"&&(!s||!s.getContext)&&(u=s,s=void 0),s||(a=o()),u=t.getOptions(u);const l=t.getImageWidth(n.modules.size,u),B=a.getContext("2d"),w=B.createImageData(l,l);return t.qrToImageData(w.data,n,u),i(B,a,l),B.putImageData(w,0,0),a},e.renderToDataURL=function(n,s,c){let u=c;typeof u>"u"&&(!s||!s.getContext)&&(u=s,s=void 0),u||(u={});const a=e.render(n,s,u),l=u.type||"image/png",B=u.rendererOpts||{};return a.toDataURL(l,B.quality)}})(Mt);var Pt={};const he=at;function dt(e,t){const i=e.a/255,o=t+'="'+e.hex+'"';return i<1?o+" "+t+'-opacity="'+i.toFixed(2).slice(1)+'"':o}function tt(e,t,i){let o=e+t;return typeof i<"u"&&(o+=" "+i),o}function we(e,t,i){let o="",r=0,n=!1,s=0;for(let c=0;c0&&u>0&&e[c-1]||(o+=n?tt("M",u+i,.5+a+i):tt("m",r,0),r=0,n=!1),u+1':"",a="',l='viewBox="0 0 '+c+" "+c+'"',w=''+u+a+` +`;return typeof o=="function"&&o(null,w),w};const me=bt,it=ht,St=Mt,ye=Pt;function lt(e,t,i,o,r){const n=[].slice.call(arguments,1),s=n.length,c=typeof n[s-1]=="function";if(!c&&!me())throw new Error("Callback required as last argument");if(c){if(s<2)throw new Error("Too few arguments provided");s===2?(r=i,i=t,t=o=void 0):s===3&&(t.getContext&&typeof r>"u"?(r=o,o=void 0):(r=o,o=i,i=t,t=void 0))}else{if(s<1)throw new Error("Too few arguments provided");return s===1?(i=t,t=o=void 0):s===2&&!t.getContext&&(o=i,i=t,t=void 0),new Promise(function(u,a){try{const l=it.create(i,o);u(e(l,t,o))}catch(l){a(l)}})}try{const u=it.create(i,o);r(null,e(u,t,o))}catch(u){r(u)}}O.create=it.create;O.toCanvas=lt.bind(null,St.render);O.toDataURL=lt.bind(null,St.renderToDataURL);O.toString=lt.bind(null,function(e,t,i){return ye.render(e,i)});export{O as b}; diff --git a/niucloud/public/admin/assets/cash_out-2e6fc4b4.js b/niucloud/public/admin/assets/cash_out-2e6fc4b4.js new file mode 100644 index 0000000..f51c100 --- /dev/null +++ b/niucloud/public/admin/assets/cash_out-2e6fc4b4.js @@ -0,0 +1 @@ +import{d as ne,r as p,O as re,f as ie,N as e,n as G,h as c,c as w,e as a,w as o,a as r,t as i,u as s,F as U,G as Y,I as x,i as m,y as M,R as de,a5 as ue,cH as ce,al as me,am as pe,_ as _e,cI as fe,X as he,W as ve,aq as be,aC as ge,E as ye,Y as we,af as xe,ah as ke,a3 as Ve,a7 as Fe,$ as Ce}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as Oe}from"./default_headimg-a897263d.js";import{g as Pe,a as De,b as Te,c as Ae,m as Se,d as Ee,e as $e}from"./member-ff972216.js";const Ue={class:"main-container"},Ye={class:"flex justify-between items-center mb-[5px]"},Me={class:"text-[20px]"},Re={class:"statistic-card"},Ie={class:"statistic-footer"},Le={class:"footer-item text-[14px] text-[#666]"},je={class:"statistic-card"},Be={class:"statistic-footer"},He={class:"footer-item text-[14px] text-[#666]"},Ne={class:"mt-[10px]"},ze=["onClick"],We=["src"],qe={key:1,class:"w-[50px] h-[50px] mr-[10px]",src:Oe,alt:""},Ge={class:"flex flex flex-col"},Xe={class:""},Je={class:""},Ke={class:"mt-[16px] flex justify-end"},Qe={class:"input-width"},Ze={class:"input-width"},ea={class:"input-width"},aa={class:"input-width"},ta={class:"input-width"},la={class:"input-width"},sa={class:"input-width"},oa={class:"dialog-footer"},na={class:"dialog-footer"},ra={class:"dialog-footer"},Ua=ne({__name:"cash_out",setup(ia){const R=p([]);(async()=>{R.value=await(await Pe()).data})();const P=p(!1),X=re(),J=ie(),K=X.meta.title,I=p({1:{value:[e("successfulAudit"),e("auditFailure"),e("detail")],clickArr:["successfulAuditFn","auditFailureFn","detailFn"]},2:{value:[e("transfer"),e("detail")],clickArr:["transferFn","detailFn"]},3:{value:[e("detail")],clickArr:["detailFn"]},"-1":{value:[e("detail")],clickArr:["detailFn"]},"-2":{value:[e("detail")],clickArr:["detailFn"]}}),L=G({}),n=G({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{order_no:"",member_id:0,create_time:[],status:"",cash_out_no:"",keyword:"",audit_time:"",transfer_time:"",transfer_type:""}}),k=p({transfered:0,cash_outing:0});(()=>{De().then(d=>{k.value=d.data})})();const F=p([]);(async()=>{F.value=await(await Te()).data})();const j=p(),Q=d=>{d&&(d.resetFields(),_())},_=(d=1)=>{n.loading=!0,n.page=d,Ae({page:n.page,limit:n.limit,...n.searchParam}).then(l=>{n.loading=!1,n.data=l.data.data,n.total=l.data.total}).catch(()=>{n.loading=!1})};_();const y=p({refuse_reason:"",id:0,action:0}),V=p(!1),Z=(d,l)=>{const f={};["successfulAuditFn","auditFailureFn"].includes(d)?(f.id=l.id,d=="successfulAuditFn"?(f.action="agree",H(f)):(f.action="refuse",y.value=Object.assign(y.value,f),V.value=!0)):d=="transferFn"?(f.id=l.id,ue.confirm(`${e("isTransfer")}`,`${e("transfer")}`).then(()=>{ee(f)})):ae(l.id)},ee=d=>{Se({...d}).then(l=>{_()}).catch(()=>{_()})},C=p(!1),v=p({nickname:"",account_type_name:"",transfer_type:"",apply_money:0,service_money:0,money:0,status_name:""}),B=p(!0),ae=d=>{Ee(d).then(l=>{v.value=l.data,C.value=!0,B.value=!1}).catch(()=>{_()})},H=d=>{$e({...d}).then(l=>{_()}).catch(()=>{_()})},N=()=>{V.value=!1,H(y.value)},te=d=>{J.push(`/member/detail?id=${d}`)};return(d,l)=>{const f=ce,z=me,le=pe,D=_e,T=fe,u=he,A=ve,O=be,W=ge,b=ye,S=we,h=xe,se=ke,oe=Ve,E=Fe,$=Ce;return c(),w("div",Ue,[a(D,{class:"box-card !border-none",shadow:"never"},{default:o(()=>[r("div",Ye,[r("span",Me,i(s(K)),1)]),a(D,{class:"box-card !border-none base-bg !px-[35px]",shadow:"never"},{default:o(()=>[a(le,{class:"flex"},{default:o(()=>[a(z,{span:12},{default:o(()=>[r("div",Re,[a(f,{value:k.value.transfered?k.value.transfered.toFixed(2):"0.00"},null,8,["value"]),r("div",Ie,[r("div",Le,[r("span",null,i(s(e)("totalTransfered")),1)])])])]),_:1}),a(z,{span:12},{default:o(()=>[r("div",je,[a(f,{value:k.value.cash_outing?k.value.cash_outing.toFixed(2):"0"},null,8,["value"]),r("div",Be,[r("div",He,[r("span",null,i(s(e)("totalCashOuting")),1)])])])]),_:1})]),_:1})]),_:1}),a(D,{class:"box-card !border-none mb-[10px] table-search-wrap",shadow:"never"},{default:o(()=>[a(S,{inline:!0,model:n.searchParam,ref_key:"searchFormRef",ref:j},{default:o(()=>[a(u,{label:s(e)("applyTime"),prop:"create_time"},{default:o(()=>[a(T,{modelValue:n.searchParam.create_time,"onUpdate:modelValue":l[0]||(l[0]=t=>n.searchParam.create_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":s(e)("startDate"),"end-placeholder":s(e)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),a(u,{label:s(e)("cashOutNumber"),prop:"cash_out_no"},{default:o(()=>[a(A,{modelValue:n.searchParam.cash_out_no,"onUpdate:modelValue":l[1]||(l[1]=t=>n.searchParam.cash_out_no=t),class:"w-[240px]",placeholder:s(e)("cashOutNumberPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(u,{label:s(e)("memberInfo"),prop:"keyword"},{default:o(()=>[a(A,{modelValue:n.searchParam.keyword,"onUpdate:modelValue":l[2]||(l[2]=t=>n.searchParam.keyword=t),class:"w-[240px]",placeholder:s(e)("memberInfoPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(u,{label:s(e)("cashOutMethod"),prop:"transfer_type"},{default:o(()=>[a(W,{modelValue:n.searchParam.transfer_type,"onUpdate:modelValue":l[3]||(l[3]=t=>n.searchParam.transfer_type=t),clearable:"",class:"input-width"},{default:o(()=>[a(O,{label:s(e)("selectPlaceholder"),value:""},null,8,["label"]),(c(!0),w(U,null,Y(F.value,(t,g)=>(c(),x(O,{label:t.name,value:g,key:g},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"]),a(u,{label:s(e)("cashOutStatus"),prop:"order_from"},{default:o(()=>[a(W,{modelValue:n.searchParam.status,"onUpdate:modelValue":l[4]||(l[4]=t=>n.searchParam.status=t),clearable:"",class:"input-width"},{default:o(()=>[a(O,{label:s(e)("selectPlaceholder"),value:""},null,8,["label"]),(c(!0),w(U,null,Y(R.value,(t,g)=>(c(),x(O,{label:t,value:g,key:g},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"]),a(u,{label:s(e)("auditTime"),prop:"audit_time"},{default:o(()=>[a(T,{modelValue:n.searchParam.audit_time,"onUpdate:modelValue":l[5]||(l[5]=t=>n.searchParam.audit_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":s(e)("startDate"),"end-placeholder":s(e)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),a(u,{label:s(e)("transferTime"),prop:"transfer_time"},{default:o(()=>[a(T,{modelValue:n.searchParam.transfer_time,"onUpdate:modelValue":l[6]||(l[6]=t=>n.searchParam.transfer_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":s(e)("startDate"),"end-placeholder":s(e)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),a(u,null,{default:o(()=>[a(b,{type:"primary",onClick:l[7]||(l[7]=t=>_())},{default:o(()=>[m(i(s(e)("search")),1)]),_:1}),a(b,{onClick:l[8]||(l[8]=t=>Q(j.value))},{default:o(()=>[m(i(s(e)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),r("div",Ne,[M((c(),x(se,{data:n.data,size:"large"},{empty:o(()=>[r("span",null,i(n.loading?"":s(e)("emptyData")),1)]),default:o(()=>[a(h,{prop:"order_no","show-overflow-tooltip":!0,label:s(e)("memberInfo"),align:"center","min-width":"140"},{default:o(({row:t})=>[r("div",{class:"flex items-center cursor-pointer",onClick:g=>te(t.member.member_id)},[t.member.headimg?(c(),w("img",{key:0,class:"w-[50px] h-[50px] mr-[10px]",src:s(de)(t.member.headimg),alt:""},null,8,We)):(c(),w("img",qe)),r("div",Ge,[r("span",Xe,i(t.member.nickname||""),1),r("span",Je,i(t.member.mobile||""),1)])],8,ze)]),_:1},8,["label"]),a(h,{label:s(e)("cashOutMethod"),align:"center","min-width":"140"},{default:o(({row:t})=>[m(i(F.value[t.transfer_type].name),1)]),_:1},8,["label"]),a(h,{prop:"apply_money",label:s(e)("applicationForWithdrawalAmount"),"min-width":"140",align:"center"},null,8,["label"]),a(h,{prop:"money",label:s(e)("actualTransferAmount"),"min-width":"200",align:"center"},null,8,["label"]),a(h,{prop:"service_money",label:s(e)("cashOutCommission"),align:"center","min-width":"140"},null,8,["label"]),a(h,{prop:"status_name",label:s(e)("cashOutStatus"),align:"center","min-width":"100"},null,8,["label"]),a(h,{label:s(e)("applyTime"),"min-width":"180",align:"center"},{default:o(({row:t})=>[m(i(t.create_time||""),1)]),_:1},8,["label"]),a(h,{label:s(e)("auditTime"),"min-width":"180",align:"center"},{default:o(({row:t})=>[m(i(t.audit_time||""),1)]),_:1},8,["label"]),a(h,{label:s(e)("transferTime"),"min-width":"180",align:"center"},{default:o(({row:t})=>[m(i(t.transfer_time||""),1)]),_:1},8,["label"]),a(h,{label:s(e)("operation"),align:"right",fixed:"right",width:"230"},{default:o(({row:t})=>[(c(!0),w(U,null,Y(I.value[t.status.toString()].value,(g,q)=>(c(),x(b,{key:q+"a",onClick:ma=>Z(I.value[t.status.toString()].clickArr[q],t),type:"primary",link:""},{default:o(()=>[m(i(g),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["label"])]),_:1},8,["data"])),[[$,n.loading]]),r("div",Ke,[a(oe,{"current-page":n.page,"onUpdate:current-page":l[9]||(l[9]=t=>n.page=t),"page-size":n.limit,"onUpdate:page-size":l[10]||(l[10]=t=>n.limit=t),layout:"total, sizes, prev, pager, next, jumper",total:n.total,onSizeChange:l[11]||(l[11]=t=>_()),onCurrentChange:_},null,8,["current-page","page-size","total"])])])]),_:1}),a(E,{modelValue:C.value,"onUpdate:modelValue":l[13]||(l[13]=t=>C.value=t),title:s(e)("cashOutDetail"),width:"500px","destroy-on-close":!0},{footer:o(()=>[r("span",oa,[a(b,{type:"primary",onClick:l[12]||(l[12]=t=>C.value=!1)},{default:o(()=>[m(i(s(e)("confirm")),1)]),_:1})])]),default:o(()=>[M((c(),x(S,{model:v.value,"label-width":"120px",ref:"formRef",rules:L,class:"page-form"},{default:o(()=>[a(u,{label:s(e)("nickname")},{default:o(()=>[r("div",Qe,i(v.value.nickname),1)]),_:1},8,["label"]),a(u,{label:s(e)("cashOutAccountType")},{default:o(()=>[r("div",Ze,i(v.value.account_type_name),1)]),_:1},8,["label"]),a(u,{label:s(e)("cashOutMethod")},{default:o(()=>[r("div",ea,i(F.value[v.value.transfer_type].name),1)]),_:1},8,["label"]),a(u,{label:s(e)("applicationForWithdrawalAmount")},{default:o(()=>[r("div",aa,i(v.value.apply_money),1)]),_:1},8,["label"]),a(u,{label:s(e)("cashOutCommission")},{default:o(()=>[r("div",ta,i(v.value.service_money),1)]),_:1},8,["label"]),a(u,{label:s(e)("actualTransferAmount")},{default:o(()=>[r("div",la,i(v.value.money),1)]),_:1},8,["label"]),a(u,{label:s(e)("cashOutStatus")},{default:o(()=>[r("div",sa,i(v.value.status_name),1)]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[$,B.value]])]),_:1},8,["modelValue","title"]),a(E,{modelValue:V.value,"onUpdate:modelValue":l[17]||(l[17]=t=>V.value=t),title:s(e)("rejectionAudit"),width:"500px","destroy-on-close":!0},{footer:o(()=>[r("span",na,[a(b,{onClick:l[15]||(l[15]=t=>V.value=!1)},{default:o(()=>[m(i(s(e)("cancel")),1)]),_:1}),a(b,{type:"primary",loading:d.loading,onClick:l[16]||(l[16]=t=>N())},{default:o(()=>[m(i(s(e)("confirm")),1)]),_:1},8,["loading"])])]),default:o(()=>[M((c(),x(S,{model:y.value,"label-width":"90px",ref:"formRef",rules:L,class:"page-form"},{default:o(()=>[a(u,{label:s(e)("reasonsRefusal"),prop:"label_name"},{default:o(()=>[a(A,{modelValue:y.value.refuse_reason,"onUpdate:modelValue":l[14]||(l[14]=t=>y.value.refuse_reason=t),clearable:"",placeholder:s(e)("reasonsRefusalPlaceholder"),class:"input-width",type:"textarea"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[$,d.loading]])]),_:1},8,["modelValue","title"]),a(E,{modelValue:P.value,"onUpdate:modelValue":l[20]||(l[20]=t=>P.value=t),title:s(e)("rejectionAudit"),width:"500px","destroy-on-close":!0},{footer:o(()=>[r("span",ra,[a(b,{onClick:l[18]||(l[18]=t=>P.value=!1)},{default:o(()=>[m(i(s(e)("cancel")),1)]),_:1}),a(b,{type:"primary",onClick:l[19]||(l[19]=t=>N())},{default:o(()=>[m(i(s(e)("confirm")),1)]),_:1})])]),default:o(()=>[r("p",null,i(s(e)("isTransfer")),1)]),_:1},8,["modelValue","title"])])}}});export{Ua as default}; diff --git a/niucloud/public/admin/assets/cash_out-acd3a827.js b/niucloud/public/admin/assets/cash_out-acd3a827.js new file mode 100644 index 0000000..eb6449e --- /dev/null +++ b/niucloud/public/admin/assets/cash_out-acd3a827.js @@ -0,0 +1 @@ +import{d as D,O,r as v,n as x,h as i,c as E,a as b,t as u,u as r,y as I,I as d,w as t,e as n,N as s,B as f,i as p,F as S,G as W,aK as G,X as H,W as j,aw as L,ax as P,ay as $,cN as K,_ as M,Y as X,E as Y,$ as q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{b as J,H as Q,I as Z}from"./member-ff972216.js";const ee={class:"main-container"},ae={class:"flex ml-[18px] justify-between items-center mt-[20px]"},te={class:"text-[20px]"},oe=b("span",{class:"ml-2"},"%",-1),le={class:"fixed-footer-wrap"},se={class:"fixed-footer"},Ee=D({__name:"cash_out",setup(re){const k=O().meta.title,c=v(!0),g=v(),a=x({is_auto_transfer:"0",is_auto_verify:"0",is_open:"0",min:"0.01",rate:"0",transfer_type:[]}),h=v([]);(async()=>{h.value=await(await J()).data})(),(async(m=0)=>{const e=await(await Q()).data;Object.keys(a).forEach(o=>{e[o]!=null&&(a[o]=e[o])}),a.is_open=Boolean(Number(a.is_open)),c.value=!1})();const N=x({min:[{validator:(m,e,o)=>{Number(e)<.01?o(new Error(s("cashWithdrawalAmountHint"))):o()},trigger:"blur"}],rate:[{validator:(m,e,o)=>{Number(e)>100||Number(e)<0?o(new Error(s("commissionRatioHint"))):o()},trigger:"blur"}]}),R=async m=>{c.value||!m||await m.validate(e=>{if(e){const o={...a};o.is_open=Number(o.is_open).toString(),Z(o).then(()=>{c.value=!1}).catch(()=>{c.value=!1})}})};return(m,e)=>{const o=G,_=H,w=j,y=L,V=P,C=$,F=K,B=M,T=X,U=Y,z=q;return i(),E("div",ee,[b("div",ae,[b("span",te,u(r(k)),1)]),I((i(),d(T,{model:a,"label-width":"150px",ref_key:"ruleFormRef",ref:g,rules:N,class:"page-form"},{default:t(()=>[n(B,{class:"box-card !border-none",shadow:"never"},{default:t(()=>[n(_,{label:r(s)("isOpen")},{default:t(()=>[n(o,{modelValue:a.is_open,"onUpdate:modelValue":e[0]||(e[0]=l=>a.is_open=l)},null,8,["modelValue"])]),_:1},8,["label"]),a.is_open?(i(),d(_,{key:0,label:r(s)("cashWithdrawalAmount"),prop:"min"},{default:t(()=>[n(w,{modelValue:a.min,"onUpdate:modelValue":e[1]||(e[1]=l=>a.min=l),type:"number",class:"input-width",placeholder:r(s)("cashWithdrawalAmountPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])):f("",!0),a.is_open?(i(),d(_,{key:1,label:r(s)("commissionRatio"),prop:"rate"},{default:t(()=>[n(w,{modelValue:a.rate,"onUpdate:modelValue":e[2]||(e[2]=l=>a.rate=l),type:"number",class:"input-width",placeholder:r(s)("commissionRatioPlaceholder")},null,8,["modelValue","placeholder"]),oe]),_:1},8,["label"])):f("",!0),a.is_open?(i(),d(_,{key:2,label:r(s)("audit"),class:"items-center"},{default:t(()=>[n(V,{modelValue:a.is_auto_verify,"onUpdate:modelValue":e[3]||(e[3]=l=>a.is_auto_verify=l)},{default:t(()=>[n(y,{label:"0",size:"large"},{default:t(()=>[p(u(r(s)("manualAudit")),1)]),_:1}),n(y,{label:"1",size:"large"},{default:t(()=>[p(u(r(s)("automaticAudit")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])):f("",!0),a.is_open?(i(),d(_,{key:3,label:r(s)("transfer"),class:"items-center"},{default:t(()=>[n(V,{modelValue:a.is_auto_transfer,"onUpdate:modelValue":e[4]||(e[4]=l=>a.is_auto_transfer=l)},{default:t(()=>[n(y,{label:"0",size:"large"},{default:t(()=>[p(u(r(s)("manualTransfer")),1)]),_:1}),n(y,{label:"1",size:"large"},{default:t(()=>[p(u(r(s)("automatedTransit")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])):f("",!0),a.is_open?(i(),d(_,{key:4,label:r(s)("transferMode"),class:"items-center"},{default:t(()=>[n(F,{modelValue:a.transfer_type,"onUpdate:modelValue":e[5]||(e[5]=l=>a.transfer_type=l),size:"large"},{default:t(()=>[(i(!0),E(S,null,W(h.value,(l,A)=>(i(),d(C,{label:l.key,key:"a"+A},{default:t(()=>[p(u(l.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"])):f("",!0)]),_:1})]),_:1},8,["model","rules"])),[[z,c.value]]),b("div",le,[b("div",se,[n(U,{type:"primary",onClick:e[6]||(e[6]=l=>R(g.value))},{default:t(()=>[p(u(r(s)("save")),1)]),_:1})])])])}}});export{Ee as default}; diff --git a/niucloud/public/admin/assets/channel.aliapp.access-79911b66.js b/niucloud/public/admin/assets/channel.aliapp.access-79911b66.js new file mode 100644 index 0000000..f81c96d --- /dev/null +++ b/niucloud/public/admin/assets/channel.aliapp.access-79911b66.js @@ -0,0 +1 @@ +const e="接入流程",c="支付宝小程序",s="支付宝小程序接入流程",t="支付宝小程序认证",n="点击注册打开支付宝小程序官方,注册支付宝小程序后点击企业认证,申请之后等待支付宝官方审核",a="点击注册",p="扫描二维码进入支付宝小程序",o="没有小程序马上注册",l="支付宝小程序配置",i="点击配置支付宝小程序",w="上传小程序",A="支付宝小程序认证之后按照官方提供的手册进行配置",r="配置信息",u="版本管理中存放上传的支付宝小程序历更版本,通过uniapp版本编译小程序然后打包上传提交",g="提交审核",h="提交uniapp对应版本,可以通过支付宝小程序查看版本的审核进度,审核成功后就可以使用了",k="查看审核进度",S="小程序配置",b="订阅消息",m="版本管理",B="您正在体验通用版小程序,不发布你将不可用",I={weappAccessFlow:e,title:c,weappInlet:s,weappAttestation:t,weappAttest:n,clickAccess:a,clickAccess2:p,clickAccess3:o,weappSetting:l,weappSettingBtn:i,uploadVersion:w,emplace:A,settingInfo:r,releaseCourse:u,completeAccess:g,wechatAccess:h,wechatAccessBtn:k,wechatSet:S,subscribeMessage:b,weappRelease:m,alert:B};export{B as alert,a as clickAccess,p as clickAccess2,o as clickAccess3,g as completeAccess,I as default,A as emplace,u as releaseCourse,r as settingInfo,b as subscribeMessage,c as title,w as uploadVersion,e as weappAccessFlow,n as weappAttest,t as weappAttestation,s as weappInlet,m as weappRelease,l as weappSetting,i as weappSettingBtn,h as wechatAccess,k as wechatAccessBtn,S as wechatSet}; diff --git a/niucloud/public/admin/assets/channel.aliapp.config-cceaa054.js b/niucloud/public/admin/assets/channel.aliapp.config-cceaa054.js new file mode 100644 index 0000000..d578961 --- /dev/null +++ b/niucloud/public/admin/assets/channel.aliapp.config-cceaa054.js @@ -0,0 +1 @@ +const e="小程序设置",a="小程序名称",p="APPID",i="小程序二维码",l="建议尺寸上传430px*430px宽高的二维码",o="应用私钥",t="开发者密码",c="downloadFile合法域名",n="小程序信息",s="开发设置",r="接口内容加密设置",d="服务器配置信息",y="消息加解密方式",P="兼容模式",h="安全模式(推荐)",K="请输入小程序名称",A="请输入APPID",S="请输入应用私钥",u="请输入Token",g="请输入EncodingAESKey",T="接口加签方式",b="证书",f="应用公钥证书",E="支付宝公钥证书",C="支付宝根证书",m="上传appCertPublicKey_***.crt文件",v="上传alipayCertPublicKey_RSA2.crt文件",I="上传alipayRootCert.crt文件",W="AES秘钥",D="服务器域名白名单",M="请输入AES秘钥",N={aliappSet:e,aliappName:a,aliappOriginal:p,aliappQrcode:i,aliappQrcodeTips:l,aliappAppid:o,aliappAppsecret:t,downloadUrl:c,aliappInfo:n,aliappDevelopInfo:s,theServerSetting:r,functionSetting:d,encryptionType:y,compatibleMode:P,safeMode:h,aliappNamePlaceholder:K,aliappOriginalPlaceholder:A,appidPlaceholder:S,tokenPlaceholder:u,encodingAesKeyPlaceholder:g,countersignType:T,certificate:b,publicKey:f,alipayPublicKey:E,alipayWithCrt:C,publicKeyTips:m,alipayPublicKeyTips:v,alipayWithCrtTips:I,AESKey:W,serveWhiteList:D,AESKeyPlaceholder:M};export{W as AESKey,M as AESKeyPlaceholder,o as aliappAppid,t as aliappAppsecret,s as aliappDevelopInfo,n as aliappInfo,a as aliappName,K as aliappNamePlaceholder,p as aliappOriginal,A as aliappOriginalPlaceholder,i as aliappQrcode,l as aliappQrcodeTips,e as aliappSet,E as alipayPublicKey,v as alipayPublicKeyTips,C as alipayWithCrt,I as alipayWithCrtTips,S as appidPlaceholder,b as certificate,P as compatibleMode,T as countersignType,N as default,c as downloadUrl,g as encodingAesKeyPlaceholder,y as encryptionType,d as functionSetting,f as publicKey,m as publicKeyTips,h as safeMode,D as serveWhiteList,r as theServerSetting,u as tokenPlaceholder}; diff --git a/niucloud/public/admin/assets/channel.aliapp.course-042cfbdf.js b/niucloud/public/admin/assets/channel.aliapp.course-042cfbdf.js new file mode 100644 index 0000000..0112766 --- /dev/null +++ b/niucloud/public/admin/assets/channel.aliapp.course-042cfbdf.js @@ -0,0 +1 @@ +const s="登录",a="支付宝开放平台open.alipay.com",e="选择小程序应用,没有需先创建。点击进入小程序",p="先在小程序内进行产品绑定和开发配置, 绑定下图内这些产品",i="获取会员手机号需进行申请",o="配置开发配置,配置接口加签方式,接口加签方式选择证书",T="配置接口内容加密方式",r="配置服务器域名白名单可在商城后台支付宝配置中复制",l={alipayCourseTipsOne1:s,alipayCourseTipsOne2:a,alipayCourseTipsOne3:e,alipayCourseTipsTwo1:p,alipayCourseTipsTwo2:i,alipayCourseTipsThree1:o,alipayCourseTipsThree2:T,alipayCourseTipsThree3:r};export{s as alipayCourseTipsOne1,a as alipayCourseTipsOne2,e as alipayCourseTipsOne3,o as alipayCourseTipsThree1,T as alipayCourseTipsThree2,r as alipayCourseTipsThree3,p as alipayCourseTipsTwo1,i as alipayCourseTipsTwo2,l as default}; diff --git a/niucloud/public/admin/assets/channel.h5.config-988e994e.js b/niucloud/public/admin/assets/channel.h5.config-988e994e.js new file mode 100644 index 0000000..3bd1909 --- /dev/null +++ b/niucloud/public/admin/assets/channel.h5.config-988e994e.js @@ -0,0 +1 @@ +const n="是否开启",c="h5域名",i="点击访问",o="h5配置信息",s={isOpen:n,h5DomainName:c,clickVisit:i,H5Info:o};export{o as H5Info,i as clickVisit,s as default,c as h5DomainName,n as isOpen}; diff --git a/niucloud/public/admin/assets/channel.pc.config-7ebfac6e.js b/niucloud/public/admin/assets/channel.pc.config-7ebfac6e.js new file mode 100644 index 0000000..3aed6ce --- /dev/null +++ b/niucloud/public/admin/assets/channel.pc.config-7ebfac6e.js @@ -0,0 +1 @@ +const c="电脑端信息",n="预览图",o="复制",e="点击访问",i="pc域名",t="最新消息",s={pcInfo:c,preview:n,copy:o,clickVisit:e,PCDomainName:i,newInfo:t};export{i as PCDomainName,e as clickVisit,o as copy,s as default,t as newInfo,c as pcInfo,n as preview}; diff --git a/niucloud/public/admin/assets/channel.weapp.access-23428b82.js b/niucloud/public/admin/assets/channel.weapp.access-23428b82.js new file mode 100644 index 0000000..f44018c --- /dev/null +++ b/niucloud/public/admin/assets/channel.weapp.access-23428b82.js @@ -0,0 +1 @@ +const e="接入流程",c="微信小程序",s="微信小程序接入流程",t="微信小程序认证",n="点击注册打开微信小程序官方,注册微信小程序后点击企业认证,申请之后等待微信官方审核",a="点击注册",p="扫描二维码进入小程序",o="没有小程序马上注册",l="微信小程序配置",w="点击配置微信小程序",i="上传小程序",A="微信小程序认证之后按照官方提供的手册进行配置",r="配置信息",u="版本管理中存放上传的微信小程序历更版本,通过uniapp版本编译小程序然后打包上传提交",g="提交审核",h="提交uniapp对应版本,可以通过微信小程序查看版本的审核进度,审核成功后就可以使用了",k="查看审核进度",S="小程序配置",b="订阅消息",m="版本管理",B="您正在体验通用版小程序,不发布你将不可用",I={weappAccessFlow:e,title:c,weappInlet:s,weappAttestation:t,weappAttest:n,clickAccess:a,clickAccess2:p,clickAccess3:o,weappSetting:l,weappSettingBtn:w,uploadVersion:i,emplace:A,settingInfo:r,releaseCourse:u,completeAccess:g,wechatAccess:h,wechatAccessBtn:k,wechatSet:S,subscribeMessage:b,weappRelease:m,alert:B};export{B as alert,a as clickAccess,p as clickAccess2,o as clickAccess3,g as completeAccess,I as default,A as emplace,u as releaseCourse,r as settingInfo,b as subscribeMessage,c as title,i as uploadVersion,e as weappAccessFlow,n as weappAttest,t as weappAttestation,s as weappInlet,m as weappRelease,l as weappSetting,w as weappSettingBtn,h as wechatAccess,k as wechatAccessBtn,S as wechatSet}; diff --git a/niucloud/public/admin/assets/channel.weapp.code-f3ba3335.js b/niucloud/public/admin/assets/channel.weapp.code-f3ba3335.js new file mode 100644 index 0000000..47f2ece --- /dev/null +++ b/niucloud/public/admin/assets/channel.weapp.code-f3ba3335.js @@ -0,0 +1 @@ +const o="操作提示",e="下载之后需使用微信开发者工具上传代码,微信开发者工具下载地址",s="上传之后登录微信公众平台,在版本管理中选择刚上传的版本提交审核,审核通过之后即可发布小程序。",n="小程序名称",c="小程序ID",t="小程序原始ID",p="小程序信息",a="小程序代码",d="版本",i="下载",l="代码下载",w="下载代码",r="请先完善小程序配置",T="下载小程序代码包",u="上传代码",D="下载完成之后,使用微信开发工具进行上传",h="发布小程序",P="上传之后提交审核,审核通过发布小程序",I="小程序版本",g="关闭",m="版本号",R="请输入版本号",v="小程序代码",O="请上传小程序代码",f="版本说明",b="接入流程",C="订阅消息",N="版本管理",A="请输入版本说明",B="小程序代码上传中",F="状态",M="预览",S="上传代码需先绑定授权码,如果已有授权请先进行绑定,没有授权可到niucloud官网购买云服务之后再进行操作",V="绑定授权",W="去niucloud官网",_="失败原因:",x="去配置",j="一键云端发布",k="本地发布",q="请先将uni-app编译成微信小程序,然后使用微信开发者工具进行上传",y={operatePrompt:o,operatePromptTipsOne:e,operatePromptTipsTwo:s,weappName:n,weappId:c,weappOriginalId:t,weappInfo:p,versionCode:a,version:d,down:i,codeDown:l,downWeappCode:w,weappTips:r,codeDownOneTips:T,codeDownTwoDesc:u,codeDownTwoTips:D,codeDownThreeDesc:h,codeDownThreeTips:P,weappVersion:I,close:g,code:m,codePlaceholder:R,path:v,pathPlaceholder:O,content:f,weappAccessFlow:b,subscribeMessage:C,weappRelease:N,contentPlaceholder:A,uploadingTips:B,status:F,preview:M,authTips:S,toBind:V,toNiucloud:W,failReason:_,toSetting:x,cloudRelease:j,localRelease:k,localInsertTips:q};export{S as authTips,g as close,j as cloudRelease,m as code,l as codeDown,T as codeDownOneTips,h as codeDownThreeDesc,P as codeDownThreeTips,u as codeDownTwoDesc,D as codeDownTwoTips,R as codePlaceholder,f as content,A as contentPlaceholder,y as default,i as down,w as downWeappCode,_ as failReason,q as localInsertTips,k as localRelease,o as operatePrompt,e as operatePromptTipsOne,s as operatePromptTipsTwo,v as path,O as pathPlaceholder,M as preview,F as status,C as subscribeMessage,V as toBind,W as toNiucloud,x as toSetting,B as uploadingTips,d as version,a as versionCode,b as weappAccessFlow,c as weappId,p as weappInfo,n as weappName,t as weappOriginalId,N as weappRelease,r as weappTips,I as weappVersion}; diff --git a/niucloud/public/admin/assets/channel.weapp.config-6b5cec63.js b/niucloud/public/admin/assets/channel.weapp.config-6b5cec63.js new file mode 100644 index 0000000..cf15f3f --- /dev/null +++ b/niucloud/public/admin/assets/channel.weapp.config-6b5cec63.js @@ -0,0 +1 @@ +const e="小程序名称",p="小程序原始ID",o="小程序二维码",c="建议尺寸上传430px*430px宽高的二维码",t="AppID(小程序ID)",a="AppID是小程序开发识别码,配合AppSecret可调用小程序的接口能力。",n="AppSecret(小程序密钥)",s="AppSecret是校验小程序开发者身份的密钥,具有极高的安全性",l="业务域名",i="request合法域名",d="socket合法域名",r="uploadFile合法域名",w="downloadFile合法域名",T="小程序信息",A="小程序开发信息",u="消息推送配置",h="服务器域名设置",g="必须为英文或数字,长度为3-32字符。",S="消息加密密钥由43位字符组成,可随机修改,字符范围为A-Z,a-z,0-9。",y="消息加解密方式",f="明文模式",I="兼容模式",M="安全模式(推荐)",P="请输入小程序名称",m="请输入小程序原始ID",D="请输入开发者ID",U="请输入开发者密码",K="请输入Token",k="请输入EncodingAESKey",x="明文模式下,不使用消息体加解密功能,安全系数较低",b="兼容模式下,明文、密文将共存,方便开发者调试和维护",v="安全模式下,消息包为纯密文,需要开发者加密和解密,安全系数高",E="小程序代码上传",N="上传密钥",O="配置之后可实现在线上传小程序版本",Q="如果小程序代码上传开启了ip白名单设置,在ip白名单中添加ip:",q={weappName:e,weappOriginal:p,weappQrcode:o,weappQrcodeTips:c,weappAppid:t,weappAppidTips:a,weappAppsecret:n,weappAppsecretTips:s,businessDomain:l,requestUrl:i,socketUrl:d,uploadUrl:r,downloadUrl:w,weappInfo:T,weappDevelopInfo:A,theServerSetting:u,functionSetting:h,tokenTips:g,encodingAESKeyTips:S,encryptionType:y,cleartextMode:f,compatibleMode:I,safeMode:M,weappNamePlaceholder:P,weappOriginalPlaceholder:m,appidPlaceholder:D,appSecretPlaceholder:U,tokenPlaceholder:K,encodingAesKeyPlaceholder:k,cleartextModeTips:x,compatibleModeTips:b,safeModeTips:v,weappUpload:E,uploadKey:N,uploadKeyTips:O,uploadIpTips:Q};export{U as appSecretPlaceholder,D as appidPlaceholder,l as businessDomain,f as cleartextMode,x as cleartextModeTips,I as compatibleMode,b as compatibleModeTips,q as default,w as downloadUrl,S as encodingAESKeyTips,k as encodingAesKeyPlaceholder,y as encryptionType,h as functionSetting,i as requestUrl,M as safeMode,v as safeModeTips,d as socketUrl,u as theServerSetting,K as tokenPlaceholder,g as tokenTips,Q as uploadIpTips,N as uploadKey,O as uploadKeyTips,r as uploadUrl,t as weappAppid,a as weappAppidTips,n as weappAppsecret,s as weappAppsecretTips,A as weappDevelopInfo,T as weappInfo,e as weappName,P as weappNamePlaceholder,p as weappOriginal,m as weappOriginalPlaceholder,o as weappQrcode,c as weappQrcodeTips,E as weappUpload}; diff --git a/niucloud/public/admin/assets/channel.weapp.course-00a01a8e.js b/niucloud/public/admin/assets/channel.weapp.course-00a01a8e.js new file mode 100644 index 0000000..7ed96ec --- /dev/null +++ b/niucloud/public/admin/assets/channel.weapp.course-00a01a8e.js @@ -0,0 +1 @@ +const i="登录--",n="微信公众平台mp.weixin.qq.com",s="基本配置中,找到【设置--基本设置】,查看小程序是否认证,没有认证需要先进行认证",t="再在【开发-开发管理-开发设置】中,配置开发者ID 里面的【IP白名单】,修改后保存。",r="在【开发-开发管理-开发设置】中,配置",e="request合法域名/ socket合法域名/ uploadFile合法域名/ downloadFile合法域名/ udp合法域名",o="在【开发-开发管理-开发设置】中,将",p="对应填写至服务器配置",T={writingTipsOne1:i,writingTipsOne2:n,writingTipsOne3:s,writingTipsTwo1:t,writingTipsThree1:r,writingTipsThree2:e,writingTipsFour1:o,writingTipsFour2:p};export{T as default,o as writingTipsFour1,p as writingTipsFour2,i as writingTipsOne1,n as writingTipsOne2,s as writingTipsOne3,r as writingTipsThree1,e as writingTipsThree2,t as writingTipsTwo1}; diff --git a/niucloud/public/admin/assets/channel.weapp.template-1e082647.js b/niucloud/public/admin/assets/channel.weapp.template-1e082647.js new file mode 100644 index 0000000..ecae31f --- /dev/null +++ b/niucloud/public/admin/assets/channel.weapp.template-1e082647.js @@ -0,0 +1 @@ +const e="类型",s="回复内容",o="是否启用",t="编号",n="操作",a="温馨提示",c="请在小程序的服务类目中添加类目:一级类目:商业服务 二级类目:软件/建站/技术开发",p="小程序最多支持50个消息模板获取时请注意小程序剩余模板数量是否充足",i="买家消息",r="卖家消息",l="启用",w="禁用",b="关闭",u="开启",T="重新获取",g="接入流程",d="订阅消息",m="版本管理",A="一键获取",M={name:e,response:s,isStart:o,serialNumber:t,operation:n,operationTip:a,operationTipOne:c,operationTipTwo:p,buyerNews:i,sellerMessage:r,started:l,closed:w,close:b,open:u,regain:T,weappAccessFlow:g,subscribeMessage:d,weappRelease:m,batchAcquisition:A};export{A as batchAcquisition,i as buyerNews,b as close,w as closed,M as default,o as isStart,e as name,u as open,n as operation,a as operationTip,c as operationTipOne,p as operationTipTwo,T as regain,s as response,r as sellerMessage,t as serialNumber,l as started,d as subscribeMessage,g as weappAccessFlow,m as weappRelease}; diff --git a/niucloud/public/admin/assets/channel.wechat.access-fffc1570.js b/niucloud/public/admin/assets/channel.wechat.access-fffc1570.js new file mode 100644 index 0000000..f40956d --- /dev/null +++ b/niucloud/public/admin/assets/channel.wechat.access-fffc1570.js @@ -0,0 +1 @@ +const t="接入流程",c="微信公众号",e="微信公众号接入流程",s="微信公众号认证",n="点击接入打开微信公众号官方,注册微信公众号后申请服务号认证,申请之后等待微信官方审核",a="点击接入",o="微信公众号配置",w="微信公众号认证之后配置微信公众号连接,具体查看配置与发布教程",h="点击配置",l="微信公众号发布",i="发布教程",A="完成接入",u="公众号配置",g="自定义菜单",m="查看审核进度",S="扫描二维码进入微信公众号",p="模板消息",r={wechatAccessFlow:t,title:c,wechatInlet:e,wechatAttestation:s,wechatAttestation1:n,clickAccess:a,wechatSetting:o,wechatSetting1:w,settingInfo:h,wechatAccess:l,releaseCourse:i,completeAccess:A,wechatSet:u,customMenu:g,wechatAccessBtn:m,clickAccess2:S,wechatTemplate:p};export{a as clickAccess,S as clickAccess2,A as completeAccess,g as customMenu,r as default,i as releaseCourse,h as settingInfo,c as title,l as wechatAccess,m as wechatAccessBtn,t as wechatAccessFlow,s as wechatAttestation,n as wechatAttestation1,e as wechatInlet,u as wechatSet,o as wechatSetting,w as wechatSetting1,p as wechatTemplate}; diff --git a/niucloud/public/admin/assets/channel.wechat.config-4eea34e9.js b/niucloud/public/admin/assets/channel.wechat.config-4eea34e9.js new file mode 100644 index 0000000..ca19667 --- /dev/null +++ b/niucloud/public/admin/assets/channel.wechat.config-4eea34e9.js @@ -0,0 +1 @@ +const e="公众号名称",t="公众号原始ID",c="公众号二维码",o="建议尺寸上传430px*430px宽高的二维码",n="开发者ID",a="开发者ID是公众号开发识别码,配合开发者密码可调用公众号的接口能力。",s="开发者密码",i="开发者密码是校验公众号开发者身份的密码,具有极高的安全性",p="业务域名",h="JS接口安全域名",d="网页授权域名",l="公众号信息",r="公众号开发信息",w="消息推送配置",T="功能设置",S="在微信公众平台中,点击 设置与开发>公众号设置>功能设置,设置业务域名 JS接口安全域名 网页授权域名",g="必须为英文或数字,长度为3-32字符。",A="消息加密密钥由43位字符组成,可随机修改,字符范围为A-Z,a-z,0-9。",f="消息加解密方式",m="明文模式",D="兼容模式",M="安全模式(推荐)",P="请输入公众号名称",u="请输入公众号原始ID",y="请输入开发者ID",I="请输入开发者密码",b="请输入Token",x="请输入EncodingAESKey",k="明文模式下,不使用消息体加解密功能,安全系数较低",K="兼容模式下,明文、密文将共存,方便开发者调试和维护",v="安全模式下,消息包为纯密文,需要开发者加密和解密,安全系数高",E={wechatName:e,wechatOriginal:t,wechatQrcode:c,wechatQrcodeTips:o,wechatAppid:n,wechatAppidTips:a,wechatAppsecret:s,wechatAppsecretTips:i,businessDomain:p,jsSecureDomain:h,webAuthDomain:d,wechatInfo:l,wechatDevelopInfo:r,theServerSetting:w,functionSetting:T,functionSettingTips:S,tokenTips:g,encodingAESKeyTips:A,encryptionType:f,cleartextMode:m,compatibleMode:D,safeMode:M,wechatNamePlaceholder:P,wechatOriginalPlaceholder:u,appidPlaceholder:y,appSecretPlaceholder:I,tokenPlaceholder:b,encodingAesKeyPlaceholder:x,cleartextModeTips:k,compatibleModeTips:K,safeModeTips:v};export{I as appSecretPlaceholder,y as appidPlaceholder,p as businessDomain,m as cleartextMode,k as cleartextModeTips,D as compatibleMode,K as compatibleModeTips,E as default,A as encodingAESKeyTips,x as encodingAesKeyPlaceholder,f as encryptionType,T as functionSetting,S as functionSettingTips,h as jsSecureDomain,M as safeMode,v as safeModeTips,w as theServerSetting,b as tokenPlaceholder,g as tokenTips,d as webAuthDomain,n as wechatAppid,a as wechatAppidTips,s as wechatAppsecret,i as wechatAppsecretTips,r as wechatDevelopInfo,l as wechatInfo,e as wechatName,P as wechatNamePlaceholder,t as wechatOriginal,u as wechatOriginalPlaceholder,c as wechatQrcode,o as wechatQrcodeTips}; diff --git a/niucloud/public/admin/assets/channel.wechat.course-89f836bc.js b/niucloud/public/admin/assets/channel.wechat.course-89f836bc.js new file mode 100644 index 0000000..498c962 --- /dev/null +++ b/niucloud/public/admin/assets/channel.wechat.course-89f836bc.js @@ -0,0 +1 @@ +const i="登录",n="微信公众平台mp.weixin.qq.com",t="基本配置中,找到【服务器配置--修改配置】, 将",s="对应填写至服务器配置",e="填写完成之后提交。返回服务器配置,点击【启用】, 启用服务器配置。",r="再在基本配置中,选择【IP白名单】,修改后保存。",T="进入【设置-公众号设置】,选择【功能设置】,",w="依次配置业务域名/ JS接口安全域名/网页授权域名",p={writingTipsOne1:i,writingTipsOne2:n,writingTipsOne3:t,writingTipsOne4:s,writingTipsOne5:e,writingTipsTwo1:r,writingTipsThree1:T,writingTipsThree2:w};export{p as default,i as writingTipsOne1,n as writingTipsOne2,t as writingTipsOne3,s as writingTipsOne4,e as writingTipsOne5,T as writingTipsThree1,w as writingTipsThree2,r as writingTipsTwo1}; diff --git a/niucloud/public/admin/assets/channel.wechat.menu-e6174e39.js b/niucloud/public/admin/assets/channel.wechat.menu-e6174e39.js new file mode 100644 index 0000000..b821e4c --- /dev/null +++ b/niucloud/public/admin/assets/channel.wechat.menu-e6174e39.js @@ -0,0 +1 @@ +const e="菜单信息",p="子菜单信息",a="仅支持中英文和数字,字数不超过4个汉字或8个字母。",s="仅支持中英文和数字,字数不超过8个汉字或16个字母。",n="名称",c="删除菜单",o="删除后,菜单下设置的内容全部将被删除",t="消息类型",m="跳转网页",l="跳转小程序",u="网页链接",d="小程序Appid",w="小程序页面路径",i="请输入菜单名称",h="请输入网页链接",r="请输入小程序Appid",g="请输入小程序页面路径",N="接入流程",P="自定义菜单",T="模板消息",b="空菜单,不能保存与发布。",M={menuNameInfo:e,subMenuNameInfo:p,menuNameTips:a,subMenuNameTips:s,menuName:n,deleteMemu:c,deleteMemuTips:o,messageType:t,skipWebpage:m,skipWeapp:l,webpageUrl:u,weappAppid:d,weappPage:w,menuNamePlaceholder:i,webpageUrlPlaceholder:h,weappAppidPlaceholder:r,weappPagePlaceholder:g,wechatAccessFlow:N,customMenu:P,wechatTemplate:T,menusEmptyTips:b};export{P as customMenu,M as default,c as deleteMemu,o as deleteMemuTips,n as menuName,e as menuNameInfo,i as menuNamePlaceholder,a as menuNameTips,b as menusEmptyTips,t as messageType,l as skipWeapp,m as skipWebpage,p as subMenuNameInfo,s as subMenuNameTips,d as weappAppid,r as weappAppidPlaceholder,w as weappPage,g as weappPagePlaceholder,u as webpageUrl,h as webpageUrlPlaceholder,N as wechatAccessFlow,T as wechatTemplate}; diff --git a/niucloud/public/admin/assets/channel.wechat.template-40fb72b5.js b/niucloud/public/admin/assets/channel.wechat.template-40fb72b5.js new file mode 100644 index 0000000..0b48140 --- /dev/null +++ b/niucloud/public/admin/assets/channel.wechat.template-40fb72b5.js @@ -0,0 +1 @@ +const e="类型",o="消息类型",t="是否启用",s="编号",n="操作",c="温馨提示",a="请将微信公众平台的服务类目选择为:商业服务——>软件/建站/技术开发,生活服务——>百货/超市/便利店,工具—>信息查询,所选行业不一致将会导致模板消息不可用。",i="公众号可设置20个服务类目,每月只能修改5次,请谨慎选择。",r="公众号最多支持25个模板消息获取时请注意公众号剩余模板数量是否充足",p="所需跳转到的小程序必须与发模板消息的公众号是绑定关联关系,暂不支持小游戏",T="买家消息",l="卖家消息",u="启用",m="禁用",w="关闭",h="开启",d="回复内容",b="重新获取",g="一键获取",y="接入流程",A="自定义菜单",F="模板消息",M="id",N={name:e,messageType:o,isStart:t,serialNumber:s,operation:n,operationTip:c,operationTipOne:a,operationTipTwo:i,operationTipThree:r,operationTipFour:p,buyerNews:T,sellerMessage:l,started:u,closed:m,close:w,open:h,response:d,regain:b,batchAcquisition:g,wechatAccessFlow:y,customMenu:A,wechatTemplate:F,id:M};export{g as batchAcquisition,T as buyerNews,w as close,m as closed,A as customMenu,N as default,M as id,t as isStart,o as messageType,e as name,h as open,n as operation,c as operationTip,p as operationTipFour,a as operationTipOne,r as operationTipThree,i as operationTipTwo,b as regain,d as response,l as sellerMessage,s as serialNumber,u as started,y as wechatAccessFlow,F as wechatTemplate}; diff --git a/niucloud/public/admin/assets/code-04df4b03.css b/niucloud/public/admin/assets/code-04df4b03.css new file mode 100644 index 0000000..51f25f2 --- /dev/null +++ b/niucloud/public/admin/assets/code-04df4b03.css @@ -0,0 +1 @@ +.el-collapse[data-v-8bfc122b],.el-collapse-item .el-collapse-item__wrap[data-v-8bfc122b]{border:0px!important}[data-v-8bfc122b] .el-tabs__item:hover{border-bottom:2px solid var(--el-color-primary)}[data-v-8bfc122b] .el-tabs__item{padding:0}[data-v-8bfc122b] .el-tabs__item+.el-tabs__item{margin-right:20px;margin-left:20px}[data-v-8bfc122b] .el-tabs--top .el-tabs__active-bar{display:none}[data-v-8bfc122b] .el-tabs--top .el-tabs__item.is-active{border-bottom:2px solid var(--el-color-primary)}[data-v-8bfc122b] .el-tabs--top .el-tabs__item.is-top:nth-child(2){margin-right:20px} diff --git a/niucloud/public/admin/assets/code-62ceba78.js b/niucloud/public/admin/assets/code-62ceba78.js new file mode 100644 index 0000000..ebde795 --- /dev/null +++ b/niucloud/public/admin/assets/code-62ceba78.js @@ -0,0 +1 @@ +import{d as K,O as Q,f as Z,r,n as ee,h as w,c as B,a as u,t as p,u as o,e as a,w as i,N as e,i as h,y as ae,I as te,B as D,a5 as k,aA as le,aB as oe,E as ne,af as se,ag as ie,ah as pe,a3 as ce,_ as de,W as re,X as ue,Y as me,a7 as _e,$ as fe}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import{_ as ge}from"./index.vue_vue_type_style_index_0_lang-eec94bc0.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{g as he,a as ve,b as be,s as we,c as xe}from"./weapp-7423630d.js";import{a as Ve}from"./module-98fa643e.js";import{_ as Ce}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */const ye={class:"main-container min-h-[300px] p-5"},Te={class:"flex justify-between items-center mb-[20px]"},Ee={class:"text-[20px]"},Be={class:"mt-[50px]"},ke={key:0,class:"text-error"},Ue={key:0,class:""},We={class:"mt-[16px] flex justify-end"},ze={class:"dialog-footer"},Ne=K({__name:"code",setup(Re){const F=Q(),x=Z(),I=F.meta.title,V=r(!1),t=ee({page:1,limit:10,total:0,loading:!1,data:[]}),c=r({desc:"",code:"",path:"",content:""}),C=r("");Ve().then(n=>{n.data.data&&n.data.data.auth_code&&(C.value=n.data.data.auth_code,T())}).catch(()=>{});const U=r({app_id:"",app_secret:""});he().then(n=>{U.value=n.data});const y=r("/channel/weapp/code"),P=n=>{x.push({path:y.value})},W=r(null),m=(n=1)=>{t.loading=!0,t.page=n,be({page:t.page,limit:t.limit}).then(l=>{t.loading=!1,t.data=l.data.data,t.total=l.data.total,n==1&&t.data.length&&t.data[0].status==0&&N(t.data[0].task_key)}).catch(()=>{t.loading=!1})};m();const L=()=>{W.value.clearValidate()},_=r(!1),z=()=>{if(!C.value){M();return}if(!U.value.app_id){$();return}_.value||(_.value=!0,v.value="",we(c.value).then(n=>{m(),T(),_.value=!1}).catch(()=>{_.value=!1}))},A=()=>{k.alert(e("localInsertTips"),e("warning"),{confirmButtonText:e("confirm")})},v=r(""),T=()=>{C.value&&ve().then(n=>{n.data&&(v.value=``)}).catch()},N=n=>{xe(n).then(l=>{const d=l.data.data??[];if(d[0]&&d[0].length){const f=d[0][d[0].length-1];if(f.code==0){m();return}if(f.code==1&&f.percent==100){m(),T();return}setTimeout(()=>{N(n)},2e3)}})},M=()=>{k.confirm(e("authTips"),e("warning"),{distinguishCancelAndClose:!0,confirmButtonText:e("toBind"),cancelButtonText:e("toNiucloud")}).then(()=>{x.push({path:"/app/authorize"})}).catch(n=>{n==="cancel"&&window.open("https://www.niucloud.com/app")})},$=()=>{k.confirm(e("weappTips"),e("warning"),{confirmButtonText:e("toSetting"),cancelButtonText:e("cancel")}).then(()=>{x.push({path:"/channel/weapp/config"})}).catch(n=>{})};return(n,l)=>{const d=le,f=oe,g=ne,b=se,j=ie,S=pe,O=ce,X=de,R=re,E=ue,Y=ge,q=me,G=_e,H=fe;return w(),B("div",ye,[u("div",Te,[u("span",Ee,p(o(I)),1)]),a(f,{modelValue:y.value,"onUpdate:modelValue":l[0]||(l[0]=s=>y.value=s),class:"demo-tabs",onTabChange:P},{default:i(()=>[a(d,{label:o(e)("weappAccessFlow"),name:"/channel/weapp"},null,8,["label"]),a(d,{label:o(e)("subscribeMessage"),name:"/channel/weapp/message"},null,8,["label"]),a(d,{label:o(e)("weappRelease"),name:"/channel/weapp/code"},null,8,["label"])]),_:1},8,["modelValue"]),a(X,{class:"box-card !border-none",shadow:"never"},{default:i(()=>[u("div",Be,[a(g,{type:"primary",onClick:z,loading:_.value,disabled:t.loading},{default:i(()=>[h(p(o(e)("cloudRelease")),1)]),_:1},8,["loading","disabled"]),a(g,{onClick:A,disabled:t.loading},{default:i(()=>[h(p(o(e)("localRelease")),1)]),_:1},8,["disabled"])]),ae((w(),te(S,{class:"mt-[15px]",data:t.data,size:"default"},{empty:i(()=>[u("span",null,p(o(e)("emptyData")),1)]),default:i(()=>[a(b,{prop:"version",label:o(e)("code"),align:"left"},null,8,["label"]),a(b,{prop:"status_name",label:o(e)("status"),align:"left"},{default:i(({row:s})=>[u("div",null,p(s.status_name),1),s.status==-1?(w(),B("div",ke,p(o(e)("failReason"))+p(s.fail_reason),1)):D("",!0)]),_:1},8,["label"]),a(b,{prop:"create_time",label:o(e)("createTime"),align:"center"},null,8,["label"]),a(b,{label:o(e)("operation"),fixed:"right",align:"right","min-width":"120"},{default:i(({row:s,$index:J})=>[v.value&&J==0&&s.status==1&&t.page==1?(w(),B("div",Ue,[a(j,{content:v.value,"raw-content":"",effect:"light"},{default:i(()=>[a(g,{type:"primary",link:""},{default:i(()=>[h(p(o(e)("preview")),1)]),_:1})]),_:1},8,["content"])])):D("",!0)]),_:1},8,["label"])]),_:1},8,["data"])),[[H,t.loading]]),u("div",We,[a(O,{"current-page":t.page,"onUpdate:current-page":l[1]||(l[1]=s=>t.page=s),"page-size":t.limit,"onUpdate:page-size":l[2]||(l[2]=s=>t.limit=s),layout:"total, sizes, prev, pager, next, jumper",total:t.total,onSizeChange:m,onCurrentChange:m},null,8,["current-page","page-size","total"])])]),_:1}),a(G,{modelValue:V.value,"onUpdate:modelValue":l[7]||(l[7]=s=>V.value=s),title:o(e)("codeDownTwoDesc"),width:"30%","before-close":L},{footer:i(()=>[u("span",ze,[a(g,{onClick:l[6]||(l[6]=s=>V.value=!1)},{default:i(()=>[h(p(o(e)("cancel")),1)]),_:1}),a(g,{type:"primary",onClick:z},{default:i(()=>[h(p(o(e)("confirm")),1)]),_:1})])]),default:i(()=>[a(q,{ref_key:"ruleFormRef",ref:W,model:c.value,"label-width":"120px"},{default:i(()=>[a(E,{prop:"code",label:o(e)("code")},{default:i(()=>[a(R,{modelValue:c.value.code,"onUpdate:modelValue":l[3]||(l[3]=s=>c.value.code=s),placeholder:o(e)("codePlaceholder"),onkeyup:"this.value = this.value.replace(/[^\\d\\.]/g,'');"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(E,{prop:"path",label:o(e)("path")},{default:i(()=>[a(Y,{modelValue:c.value.path,"onUpdate:modelValue":l[4]||(l[4]=s=>c.value.path=s),api:"weapp/upload",accept:".zip"},null,8,["modelValue","accept"])]),_:1},8,["label"]),a(E,{label:o(e)("content")},{default:i(()=>[a(R,{type:"textarea",modelValue:c.value.content,"onUpdate:modelValue":l[5]||(l[5]=s=>c.value.content=s),placeholder:o(e)("contentPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});const la=Ce(Ne,[["__scopeId","data-v-8bfc122b"]]);export{la as default}; diff --git a/niucloud/public/admin/assets/code-cea24823.png b/niucloud/public/admin/assets/code-cea24823.png new file mode 100644 index 0000000..498bd67 Binary files /dev/null and b/niucloud/public/admin/assets/code-cea24823.png differ diff --git a/niucloud/public/admin/assets/commission-0ddaecaf.js b/niucloud/public/admin/assets/commission-0ddaecaf.js new file mode 100644 index 0000000..d396416 --- /dev/null +++ b/niucloud/public/admin/assets/commission-0ddaecaf.js @@ -0,0 +1 @@ +import{d as H,O,n as q,r as g,f as A,h as p,c as u,e,w as l,a as s,t as r,u as a,N as i,F as G,G as W,I as T,i as f,y as X,R as J,cH as K,al as Q,am as Z,_ as ee,W as te,X as ae,aq as oe,aC as le,cI as se,E as ie,Y as ne,af as re,ah as me,a3 as ce,$ as de}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{_ as pe}from"./default_headimg-a897263d.js";import{f as _e,n as ue,o as fe}from"./member-ff972216.js";import{_ as he}from"./member-commission-info.vue_vue_type_script_setup_true_lang-8dd3413e.js";/* empty css */const be={class:"main-container"},ve={class:"flex justify-between items-center mb-[5px]"},ge={class:"text-[20px]"},xe={class:"statistic-card"},we={class:"statistic-footer"},ye={class:"footer-item text-[14px] text-[#666]"},ke={class:"statistic-card"},Ce={class:"statistic-footer"},Fe={class:"footer-item text-[14px] text-[#666]"},Ee={class:"statistic-card"},De={class:"statistic-footer"},Pe={class:"footer-item text-[14px] text-[#666]"},Te={class:"statistic-card"},Ve={class:"statistic-footer"},Ie={class:"footer-item text-[14px] text-[#666]"},Le={class:"mt-[10px]"},Ne=["onClick"],$e=["src"],Se={key:1,class:"w-[50px] h-[50px] mr-[10px]",src:pe,alt:""},ze={class:"flex flex flex-col"},Re={class:""},Be={key:0},Ue={key:1},Ye={class:"mt-[16px] flex justify-end"},_t=H({__name:"commission",setup(Me){const C=O(),F=parseInt(C.query.id||0),V=C.meta.title,o=q({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{keywords:"",from_type:"",create_time:"",mobile:"",member_id:F}}),E=g([]);(async()=>{E.value=await(await _e("commission")).data})();const c=g([]);(()=>{ue({member_id:F}).then(m=>{c.value=m.data})})();const D=g(),I=m=>{m&&(m.resetFields(),_())},_=(m=1)=>{o.loading=!0,o.page=m,fe({page:o.page,limit:o.limit,...o.searchParam}).then(n=>{o.loading=!1,o.data=n.data.data,o.total=n.data.total}).catch(()=>{o.loading=!1})};_();const x=g(null),L=m=>{x.value.setFormData(m),x.value.showDialog=!0},N=A(),$=m=>{N.push(`/member/detail?id=${m}`)};return(m,n)=>{const h=K,b=Q,S=Z,w=ee,z=te,v=ae,P=oe,R=le,B=se,y=ie,U=ne,d=re,Y=me,M=ce,j=de;return p(),u("div",be,[e(w,{class:"box-card !border-none",shadow:"never"},{default:l(()=>[s("div",ve,[s("span",ge,r(a(V)),1)]),e(w,{class:"box-card !border-none base-bg !px-[35px]",shadow:"never"},{default:l(()=>[e(S,{class:"flex"},{default:l(()=>[e(b,{span:6,class:"min-w-[100px]"},{default:l(()=>[s("div",xe,[e(h,{value:c.value.total_commission?Number.parseFloat(c.value.total_commission).toFixed(2):"0.00"},null,8,["value"]),s("div",we,[s("div",ye,[s("span",null,r(a(i)("totalCommission")),1)])])])]),_:1}),e(b,{span:6,class:"min-w-[100px]"},{default:l(()=>[s("div",ke,[e(h,{value:c.value.commission?Number.parseFloat(c.value.commission).toFixed(2):"0.00"},null,8,["value"]),s("div",Ce,[s("div",Fe,[s("span",null,r(a(i)("commission")),1)])])])]),_:1}),e(b,{span:6,class:"min-w-[100px]"},{default:l(()=>[s("div",Ee,[e(h,{value:c.value.withdrawn_commission?Number.parseFloat(c.value.withdrawn_commission).toFixed(2):"0.00"},null,8,["value"]),s("div",De,[s("div",Pe,[s("span",null,r(a(i)("withdrawnCommission")),1)])])])]),_:1}),e(b,{span:6,class:"min-w-[100px]"},{default:l(()=>[s("div",Te,[e(h,{value:c.value.commission_cash_outing?Number.parseFloat(c.value.commission_cash_outing).toFixed(2):"0.00"},null,8,["value"]),s("div",Ve,[s("div",Ie,[s("span",null,r(a(i)("cashOutingCommission")),1)])])])]),_:1})]),_:1})]),_:1}),e(w,{class:"box-card !border-none mb-[10px] table-search-wrap",shadow:"never"},{default:l(()=>[e(U,{inline:!0,model:o.searchParam,ref_key:"searchFormRef",ref:D},{default:l(()=>[e(v,{label:a(i)("memberInfo"),prop:"keywords"},{default:l(()=>[e(z,{modelValue:o.searchParam.keywords,"onUpdate:modelValue":n[0]||(n[0]=t=>o.searchParam.keywords=t),class:"w-[240px]",placeholder:a(i)("memberInfoPlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),e(v,{label:a(i)("fromType"),prop:"from_type"},{default:l(()=>[e(R,{modelValue:o.searchParam.from_type,"onUpdate:modelValue":n[1]||(n[1]=t=>o.searchParam.from_type=t),clearable:"",placeholder:a(i)("fromTypePlaceholder"),class:"input-width"},{default:l(()=>[e(P,{label:a(i)("selectPlaceholder"),value:""},null,8,["label"]),(p(!0),u(G,null,W(E.value,(t,k)=>(p(),T(P,{label:t.name,value:k},null,8,["label","value"]))),256))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),e(v,{label:a(i)("createTime"),prop:"create_time"},{default:l(()=>[e(B,{modelValue:o.searchParam.create_time,"onUpdate:modelValue":n[2]||(n[2]=t=>o.searchParam.create_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":a(i)("startDate"),"end-placeholder":a(i)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),e(v,null,{default:l(()=>[e(y,{type:"primary",onClick:n[3]||(n[3]=t=>_())},{default:l(()=>[f(r(a(i)("search")),1)]),_:1}),e(y,{onClick:n[4]||(n[4]=t=>I(D.value))},{default:l(()=>[f(r(a(i)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),s("div",Le,[X((p(),T(Y,{data:o.data,size:"large"},{empty:l(()=>[s("span",null,r(o.loading?"":a(i)("emptyData")),1)]),default:l(()=>[e(d,{prop:"member_id",label:a(i)("memberId"),"min-width":"80","show-overflow-tooltip":!0},{default:l(({row:t})=>[f(r(t.member.member_no),1)]),_:1},8,["label"]),e(d,{label:a(i)("memberInfo"),"min-width":"150","show-overflow-tooltip":!0},{default:l(({row:t})=>[s("div",{class:"flex items-center cursor-pointer",onClick:k=>$(t.member_id)},[t.member.headimg?(p(),u("img",{key:0,class:"w-[50px] h-[50px] mr-[10px]",src:a(J)(t.member.headimg),alt:""},null,8,$e)):(p(),u("img",Se)),s("div",ze,[s("span",Re,r(t.member.nickname||""),1)])],8,Ne)]),_:1},8,["label"]),e(d,{prop:"mobile",label:a(i)("mobile"),"min-width":"100"},{default:l(({row:t})=>[f(r(t.member.mobile||""),1)]),_:1},8,["label"]),e(d,{prop:"account_data",label:a(i)("accountData"),"min-width":"80",align:"right"},{default:l(({row:t})=>[t.account_data>=0?(p(),u("span",Be,"+"+r(t.account_data),1)):(p(),u("span",Ue,r(t.account_data),1))]),_:1},8,["label"]),e(d,{prop:"account_sum",label:a(i)("accountSum"),"min-width":"120",align:"right"},null,8,["label"]),e(d,{prop:"from_type_name",label:a(i)("fromType"),"min-width":"180",align:"center"},null,8,["label"]),e(d,{prop:"create_time","show-overflow-tooltip":!0,label:a(i)("createTime"),"min-width":"150"},null,8,["label"]),e(d,{label:a(i)("operation"),align:"right",fixed:"right",width:"100"},{default:l(({row:t})=>[e(y,{type:"primary",link:"",onClick:k=>L(t)},{default:l(()=>[f(r(a(i)("info")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[j,o.loading]]),s("div",Ye,[e(M,{"current-page":o.page,"onUpdate:current-page":n[5]||(n[5]=t=>o.page=t),"page-size":o.limit,"onUpdate:page-size":n[6]||(n[6]=t=>o.limit=t),layout:"total, sizes, prev, pager, next, jumper",total:o.total,onSizeChange:n[7]||(n[7]=t=>_()),onCurrentChange:_},null,8,["current-page","page-size","total"])])])]),_:1}),e(he,{ref_key:"moneyDialog",ref:x,onComplete:_},null,512)])}}});export{_t as default}; diff --git a/niucloud/public/admin/assets/common-adf8ca96.js b/niucloud/public/admin/assets/common-adf8ca96.js new file mode 100644 index 0000000..138940e --- /dev/null +++ b/niucloud/public/admin/assets/common-adf8ca96.js @@ -0,0 +1 @@ +import{aJ as e}from"./index-6010b07e.js";function r(t){let o={headers:{"Content-Type":"multipart/form-data"}};return e.post("hygl/uploadFile",t,o)}function u(t){return e.get("hygl/getCouponsList",{params:t})}export{u as g,r as u}; diff --git a/niucloud/public/admin/assets/config-4c993e14.js b/niucloud/public/admin/assets/config-4c993e14.js new file mode 100644 index 0000000..05bc056 --- /dev/null +++ b/niucloud/public/admin/assets/config-4c993e14.js @@ -0,0 +1 @@ +import{d as M,O as $,f as j,r as y,n as b,N as e,aI as I,s as O,a2 as x,h as V,c as B,a as s,u as a,t as n,y as K,I as W,w as l,e as t,i as f,W as F,X as L,_ as Q,aw as z,ax as G,Y as X,E as Y,$ as H}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as J}from"./index-4718d422.js";import"./el-form-item-4ed993c7.js";/* empty css */import{g as Z,a as ee,e as ae}from"./wechat-688fa021.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";const te={class:"main-container"},oe={class:"detail-head"},le=s("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),se={class:"ml-[1px]"},ne=s("span",{class:"adorn"},"|",-1),ie={class:"right"},re={class:"panel-title !text-sm"},de={class:"form-tip"},pe={class:"panel-title !text-sm"},ce={class:"form-tip"},ue={class:"form-tip"},me={class:"panel-title !text-sm"},_e={class:"form-tip"},he={class:"form-tip"},fe={class:"form-tip"},ge={class:"form-tip"},be={class:"form-tip"},ve={class:"flex"},we={class:"panel-title !text-sm"},ye={class:"form-tip"},xe={class:"fixed-footer-wrap"},Ve={class:"fixed-footer"},oa=M({__name:"config",setup(ke){const k=$(),P=j(),S=k.meta.title,m=y(!0),r=b({wechat_name:"",wechat_original:"",app_id:"",app_secret:"",qr_code:"",token:"",encoding_aes_key:"",encryption_type:"not_encrypt"}),v=y(),C=b({wechat_name:[{required:!0,message:e("wechatNamePlaceholder"),trigger:"blur"}],wechat_original:[{required:!0,message:e("wechatOriginalPlaceholder"),trigger:"blur"}],app_id:[{required:!0,message:e("appidPlaceholder"),trigger:"blur"}],app_secret:[{required:!0,message:e("appSecretPlaceholder"),trigger:"blur"}],token:[{required:!0,message:e("tokenPlaceholder"),trigger:"blur"}],encoding_aes_key:[{required:!0,message:e("encodingAesKeyPlaceholder"),trigger:"blur"}]});Z().then(u=>{Object.assign(r,u.data),m.value=!1});const c=b({business_domain:"",js_secure_domain:"",serve_url:"",web_auth_domain:""});ee().then(u=>{Object.assign(c,u.data),m.value=!1});const{copy:E,isSupported:T,copied:w}=I(),_=u=>{if(!T.value){x({message:e("notSupportCopy"),type:"warning"});return}E(u)};O(w,()=>{w.value&&x({message:e("copySuccess"),type:"success"})});const q=async u=>{m.value||!u||await u.validate(async o=>{o&&(m.value=!0,ae(r).then(()=>{m.value=!1}).catch(()=>{m.value=!1}))})};return(u,o)=>{const p=F,d=L,A=J,h=Q,g=z,U=G,N=X,R=Y,D=H;return V(),B("div",te,[s("div",oe,[s("div",{class:"left",onClick:o[0]||(o[0]=i=>a(P).push({path:"/channel/wechat"}))},[le,s("span",se,n(a(e)("returnToPreviousPage")),1)]),ne,s("span",ie,n(a(S)),1)]),K((V(),W(N,{model:r,"label-width":"150px",ref_key:"formRef",ref:v,rules:C,class:"page-form"},{default:l(()=>[t(h,{class:"box-card !border-none",shadow:"never"},{default:l(()=>[s("h3",re,n(a(e)("wechatInfo")),1),t(d,{label:a(e)("wechatName"),prop:"wechat_name"},{default:l(()=>[t(p,{modelValue:r.wechat_name,"onUpdate:modelValue":o[1]||(o[1]=i=>r.wechat_name=i),placeholder:a(e)("wechatNamePlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(d,{label:a(e)("wechatOriginal"),prop:"wechat_original"},{default:l(()=>[t(p,{modelValue:r.wechat_original,"onUpdate:modelValue":o[2]||(o[2]=i=>r.wechat_original=i),placeholder:a(e)("wechatOriginalPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(d,{label:a(e)("wechatQrcode"),prop:"qr_code"},{default:l(()=>[t(A,{modelValue:r.qr_code,"onUpdate:modelValue":o[3]||(o[3]=i=>r.qr_code=i)},null,8,["modelValue"]),s("div",de,n(a(e)("wechatQrcodeTips")),1)]),_:1},8,["label"])]),_:1}),t(h,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:l(()=>[s("h3",pe,n(a(e)("wechatDevelopInfo")),1),t(d,{label:a(e)("wechatAppid"),prop:"app_id"},{default:l(()=>[t(p,{modelValue:r.app_id,"onUpdate:modelValue":o[4]||(o[4]=i=>r.app_id=i),placeholder:a(e)("appidPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"]),s("div",ce,n(a(e)("wechatAppidTips")),1)]),_:1},8,["label"]),t(d,{label:a(e)("wechatAppsecret"),prop:"app_secret"},{default:l(()=>[t(p,{modelValue:r.app_secret,"onUpdate:modelValue":o[5]||(o[5]=i=>r.app_secret=i),placeholder:a(e)("appSecretPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"]),s("div",ue,n(a(e)("wechatAppsecretTips")),1)]),_:1},8,["label"])]),_:1}),t(h,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:l(()=>[s("h3",me,n(a(e)("theServerSetting")),1),t(d,{label:"URL"},{default:l(()=>[t(p,{"model-value":c.serve_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:l(()=>[s("div",{class:"cursor-pointer",onClick:o[6]||(o[6]=i=>_(c.serve_url))},n(a(e)("copy")),1)]),_:1},8,["model-value"])]),_:1}),t(d,{label:"Token",prop:"token"},{default:l(()=>[t(p,{modelValue:r.token,"onUpdate:modelValue":o[7]||(o[7]=i=>r.token=i),placeholder:a(e)("tokenPlaceholder"),class:"input-width",maxlength:"32","show-word-limit":"",clearable:""},null,8,["modelValue","placeholder"]),s("div",_e,n(a(e)("tokenTips")),1)]),_:1}),t(d,{label:"EncodingAESKey",prop:"encoding_aes_key"},{default:l(()=>[t(p,{modelValue:r.encoding_aes_key,"onUpdate:modelValue":o[8]||(o[8]=i=>r.encoding_aes_key=i),placeholder:a(e)("encodingAesKeyPlaceholder"),class:"input-width",maxlength:"43","show-word-limit":"",clearable:""},null,8,["modelValue","placeholder"]),s("div",he,n(a(e)("encodingAESKeyTips")),1)]),_:1}),t(d,{label:a(e)("encryptionType"),prop:"encryption_type"},{default:l(()=>[t(U,{modelValue:r.encryption_type,"onUpdate:modelValue":o[9]||(o[9]=i=>r.encryption_type=i)},{default:l(()=>[t(g,{label:"not_encrypt"},{default:l(()=>[f(n(a(e)("cleartextMode")),1)]),_:1}),t(g,{label:"compatible"},{default:l(()=>[f(n(a(e)("compatibleMode")),1)]),_:1}),t(g,{label:"safe"},{default:l(()=>[f(n(a(e)("safeMode")),1)]),_:1})]),_:1},8,["modelValue"]),s("div",fe,n(a(e)("cleartextModeTips")),1),s("div",ge,n(a(e)("compatibleModeTips")),1),s("div",be,n(a(e)("safeModeTips")),1)]),_:1},8,["label"])]),_:1}),t(h,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:l(()=>[s("div",ve,[s("h3",we,n(a(e)("functionSetting")),1)]),t(d,{label:""},{default:l(()=>[s("div",ye,n(a(e)("functionSettingTips")),1)]),_:1}),t(d,{label:a(e)("businessDomain")},{default:l(()=>[t(p,{"model-value":c.business_domain,placeholder:"Please input",class:"input-width",readonly:!0},{append:l(()=>[s("div",{class:"cursor-pointer",onClick:o[10]||(o[10]=i=>_(c.business_domain))},n(a(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"]),t(d,{label:a(e)("jsSecureDomain")},{default:l(()=>[t(p,{"model-value":c.js_secure_domain,placeholder:"Please input",class:"input-width",readonly:!0},{append:l(()=>[s("div",{class:"cursor-pointer",onClick:o[11]||(o[11]=i=>_(c.business_domain))},n(a(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"]),t(d,{label:a(e)("webAuthDomain")},{default:l(()=>[t(p,{"model-value":c.web_auth_domain,placeholder:"Please input",class:"input-width",readonly:!0},{append:l(()=>[s("div",{class:"cursor-pointer",onClick:o[12]||(o[12]=i=>_(c.business_domain))},n(a(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["model","rules"])),[[D,m.value]]),s("div",xe,[s("div",Ve,[t(R,{type:"primary",loading:m.value,onClick:o[13]||(o[13]=i=>q(v.value))},{default:l(()=>[f(n(a(e)("save")),1)]),_:1},8,["loading"])])])])}}});export{oa as default}; diff --git a/niucloud/public/admin/assets/config-4d791795.js b/niucloud/public/admin/assets/config-4d791795.js new file mode 100644 index 0000000..40e26b2 --- /dev/null +++ b/niucloud/public/admin/assets/config-4d791795.js @@ -0,0 +1 @@ +import{aJ as y,d as I,O as D,r as v,n as F,aI as O,s as R,a2 as g,N as a,h,c as $,a as n,t as u,u as l,y as j,I as H,w as i,e as r,i as M,aK as U,X as J,W as K,_ as L,Y as T,E as W,$ as X}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{q as Y}from"./sys-0f76aff3.js";import{_ as z}from"./_plugin-vue_export-helper-c27b6911.js";function A(){return y.get("channel/h5/config")}function G(_){return y.put("channel/h5/config",_,{showSuccessMessage:!0})}const P={class:"main-container"},Q={class:"flex ml-[18px] justify-between items-center mt-[20px]"},Z={class:"text-[20px]"},ee={class:"fixed-footer-wrap"},te={class:"fixed-footer"},oe=I({__name:"config",setup(_){const w=D().meta.title,s=v(!0),e=F({is_open:!0,request_url:""}),d=v();A().then(t=>{Object.assign(e,t.data),e.is_open=Boolean(Number(e.is_open)),s.value=!1}),Y().then(t=>{e.request_url=t.data.wap_url+"/"});const{copy:x,isSupported:b,copied:m}=O(),C=t=>{if(!b.value){g({message:a("notSupportCopy"),type:"warning"});return}x(t)};R(m,()=>{m.value&&g({message:a("copySuccess"),type:"success"})});const E=()=>{window.open(e.request_url)},k=async t=>{s.value||!t||await t.validate(async o=>{if(o){s.value=!0;const c={...e};c.is_open=Number(c.is_open),G(c).then(()=>{s.value=!1}).catch(()=>{s.value=!1})}})};return(t,o)=>{const c=U,f=J,N=K,q=L,V=T,B=W,S=X;return h(),$("div",P,[n("div",Q,[n("span",Z,u(l(w)),1)]),j((h(),H(V,{model:e,"label-width":"150px",ref_key:"formRef",ref:d,class:"page-form"},{default:i(()=>[r(q,{class:"box-card !border-none",shadow:"never"},{default:i(()=>[r(f,{label:l(a)("isOpen")},{default:i(()=>[r(c,{modelValue:e.is_open,"onUpdate:modelValue":o[0]||(o[0]=p=>e.is_open=p)},null,8,["modelValue"])]),_:1},8,["label"]),r(f,{label:l(a)("h5DomainName")},{default:i(()=>[r(N,{"model-value":e.request_url,class:"input-width",readonly:!0},{append:i(()=>[n("div",{class:"cursor-pointer",onClick:o[1]||(o[1]=p=>C(e.request_url))},u(l(a)("copy")),1)]),_:1},8,["model-value"]),n("span",{class:"ml-2 cursor-pointer visit-btn",onClick:E},u(l(a)("clickVisit")),1)]),_:1},8,["label"])]),_:1})]),_:1},8,["model"])),[[S,s.value]]),n("div",ee,[n("div",te,[r(B,{type:"primary",loading:s.value,onClick:o[2]||(o[2]=p=>k(d.value))},{default:i(()=>[M(u(l(a)("save")),1)]),_:1},8,["loading"])])])])}}});const me=z(oe,[["__scopeId","data-v-a4af058c"]]);export{me as default}; diff --git a/niucloud/public/admin/assets/config-715ad915.js b/niucloud/public/admin/assets/config-715ad915.js new file mode 100644 index 0000000..b235767 --- /dev/null +++ b/niucloud/public/admin/assets/config-715ad915.js @@ -0,0 +1 @@ +import{d as T,O as A,f as K,r as h,n as B,aI as I,s as $,a2 as v,N as e,h as b,c as D,a as s,u as a,t as n,y as O,I as R,w as p,e as t,i as g,W,X as j,_ as F,Y as L,E as Q,$ as z}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import{_ as M}from"./index.vue_vue_type_style_index_0_lang-eec94bc0.js";/* empty css */import{_ as X}from"./index-4718d422.js";import"./el-form-item-4ed993c7.js";/* empty css */import{g as Y,a as G,s as H}from"./aliapp-2e18109a.js";/* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";const J={class:"main-container"},Z={class:"detail-head"},ee=s("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),ae={class:"ml-[1px]"},le=s("span",{class:"adorn"},"|",-1),te={class:"right"},oe={class:"panel-title !text-sm"},se={class:"form-tip"},ie={class:"panel-title !text-sm"},pe={class:"input-width"},ne={class:"form-tip"},re={class:"input-width"},de={class:"form-tip"},ue={class:"input-width"},ce={class:"form-tip"},me={class:"panel-title !text-sm"},_e={class:"flex"},fe={class:"panel-title !text-sm"},ye={class:"fixed-footer-wrap"},he={class:"fixed-footer"},He=T({__name:"config",setup(ve){const V=A(),w=K(),x=V.meta.title,u=h(!0),o=B({name:"",qrcode:"",private_key:"",app_id:"",aes_key:"",public_key_crt:"",alipay_public_key_crt:"",alipay_with_crt:"",request_url:""}),f=h();Y().then(d=>{Object.assign(o,d.data),u.value=!1}),G().then(d=>{o.request_url=d.data.domain});const{copy:k,isSupported:C,copied:y}=I(),S=d=>{if(!C.value){v({message:e("notSupportCopy"),type:"warning"});return}k(d)};$(y,()=>{y.value&&v({message:e("copySuccess"),type:"success"})});const E=async d=>{u.value||!d||await d.validate(async l=>{l&&(u.value=!0,H(o).then(()=>{u.value=!1}).catch(()=>{u.value=!1}))})};return(d,l)=>{const c=W,r=j,P=X,m=F,_=M,U=L,q=Q,N=z;return b(),D("div",J,[s("div",Z,[s("div",{class:"left",onClick:l[0]||(l[0]=i=>a(w).push({path:"/channel/aliapp"}))},[ee,s("span",ae,n(a(e)("returnToPreviousPage")),1)]),le,s("span",te,n(a(x)),1)]),O((b(),R(U,{model:o,"label-width":"150px",ref_key:"formRef",ref:f,class:"page-form"},{default:p(()=>[t(m,{class:"box-card !border-none",shadow:"never"},{default:p(()=>[s("h3",oe,n(a(e)("aliappSet")),1),t(r,{label:a(e)("aliappName")},{default:p(()=>[t(c,{modelValue:o.name,"onUpdate:modelValue":l[1]||(l[1]=i=>o.name=i),placeholder:a(e)("aliappNamePlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(r,{label:a(e)("aliappQrcode")},{default:p(()=>[t(P,{modelValue:o.qrcode,"onUpdate:modelValue":l[2]||(l[2]=i=>o.qrcode=i)},null,8,["modelValue"]),s("div",se,n(a(e)("aliappQrcodeTips")),1)]),_:1},8,["label"])]),_:1}),t(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("h3",ie,n(a(e)("aliappDevelopInfo")),1),t(r,{label:a(e)("aliappOriginal")},{default:p(()=>[t(c,{modelValue:o.private_key,"onUpdate:modelValue":l[3]||(l[3]=i=>o.private_key=i),placeholder:a(e)("aliappOriginalPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(r,{label:a(e)("aliappAppid")},{default:p(()=>[t(c,{modelValue:o.app_id,"onUpdate:modelValue":l[4]||(l[4]=i=>o.app_id=i),placeholder:a(e)("appidPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(r,{label:a(e)("countersignType")},{default:p(()=>[g(n(a(e)("certificate")),1)]),_:1},8,["label"]),t(r,{label:a(e)("publicKey")},{default:p(()=>[s("div",pe,[t(_,{modelValue:o.public_key_crt,"onUpdate:modelValue":l[5]||(l[5]=i=>o.public_key_crt=i),api:"sys/document/aliyun"},null,8,["modelValue"])]),s("div",ne,n(a(e)("publicKeyTips")),1)]),_:1},8,["label"]),t(r,{label:a(e)("alipayPublicKey")},{default:p(()=>[s("div",re,[t(_,{modelValue:o.alipay_public_key_crt,"onUpdate:modelValue":l[6]||(l[6]=i=>o.alipay_public_key_crt=i),api:"sys/document/aliyun"},null,8,["modelValue"])]),s("div",de,n(a(e)("alipayPublicKeyTips")),1)]),_:1},8,["label"]),t(r,{label:a(e)("alipayWithCrt")},{default:p(()=>[s("div",ue,[t(_,{modelValue:o.alipay_with_crt,"onUpdate:modelValue":l[7]||(l[7]=i=>o.alipay_with_crt=i),api:"sys/document/aliyun"},null,8,["modelValue"])]),s("div",ce,n(a(e)("alipayWithCrtTips")),1)]),_:1},8,["label"])]),_:1}),t(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("h3",me,n(a(e)("theServerSetting")),1),t(r,{label:"AESKey"},{default:p(()=>[t(c,{modelValue:o.aes_key,"onUpdate:modelValue":l[8]||(l[8]=i=>o.aes_key=i),placeholder:a(e)("AESKeyPlaceholder"),class:"input-width","show-word-limit":"",clearable:""},null,8,["modelValue","placeholder"])]),_:1})]),_:1}),t(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("div",_e,[s("h3",fe,n(a(e)("functionSetting")),1)]),t(r,{label:a(e)("serveWhiteList")},{default:p(()=>[t(c,{"model-value":o.request_url,class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:l[9]||(l[9]=i=>S(o.request_url))},n(a(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["model"])),[[N,u.value]]),s("div",ye,[s("div",he,[t(q,{type:"primary",loading:u.value,onClick:l[10]||(l[10]=i=>E(f.value))},{default:p(()=>[g(n(a(e)("save")),1)]),_:1},8,["loading"])])])])}}});export{He as default}; diff --git a/niucloud/public/admin/assets/config-8cc9fc39.js b/niucloud/public/admin/assets/config-8cc9fc39.js new file mode 100644 index 0000000..9df65fe --- /dev/null +++ b/niucloud/public/admin/assets/config-8cc9fc39.js @@ -0,0 +1 @@ +import{aJ as t}from"./index-6010b07e.js";function r(e){return t.get(`hygl/config/${e}`)}function s(e){return t.post("hygl/config",e,{showErrorMessage:!0,showSuccessMessage:!0})}function n(e){return t.put(`hygl/config/${e.id}`,e,{showErrorMessage:!0,showSuccessMessage:!0})}function g(e){return t.get(`hygl/config/resetH5SiteQRCode/${e}`)}export{s as a,n as e,r as g,g as r}; diff --git a/niucloud/public/admin/assets/config-978d7f3b.js b/niucloud/public/admin/assets/config-978d7f3b.js new file mode 100644 index 0000000..245d87d --- /dev/null +++ b/niucloud/public/admin/assets/config-978d7f3b.js @@ -0,0 +1 @@ +import{d as M,O as K,f as O,r as w,n as b,N as e,aI as B,s as D,a2 as y,h as k,c as j,a as s,u as l,t as r,y as W,I as F,w as p,e as o,i as f,W as L,X as Q,_ as z,aw as G,ax as X,Y,E as H,$ as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as Z}from"./index.vue_vue_type_style_index_0_lang-eec94bc0.js";/* empty css */import{_ as ee}from"./index-4718d422.js";import"./el-form-item-4ed993c7.js";/* empty css */import{g as x,d as le}from"./weapp-7423630d.js";/* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";const oe={class:"main-container"},ae={class:"detail-head"},te=s("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),pe={class:"ml-[1px]"},se=s("span",{class:"adorn"},"|",-1),re={class:"right"},de={class:"panel-title !text-sm"},ne={class:"form-tip"},ie={class:"panel-title !text-sm"},ue={class:"form-tip"},ce={class:"form-tip"},_e={class:"panel-title !text-sm"},me={class:"input-width"},fe={class:"form-tip"},ve={class:"form-tip"},he={class:"panel-title !text-sm"},ge={class:"form-tip"},we={class:"form-tip"},be={class:"form-tip"},ye={class:"form-tip"},ke={class:"form-tip"},xe={class:"flex"},Ve={class:"panel-title !text-sm"},Pe={class:"fixed-footer-wrap"},Ue={class:"fixed-footer"},rl=M({__name:"config",setup(qe){const V=K(),P=O(),U=V.meta.title,c=w(!0),t=b({weapp_name:"",weapp_original:"",app_id:"",app_secret:"",qr_code:"",token:"",encoding_aes_key:"",encryption_type:"not_encrypt",serve_url:"",request_url:"",socket_url:"",upload_url:"",download_url:"",upload_private_key:""}),h=w(),q=b({weapp_name:[{required:!0,message:e("weappNamePlaceholder"),trigger:"blur"}],weapp_original:[{required:!0,message:e("weappOriginalPlaceholder"),trigger:"blur"}],app_id:[{required:!0,message:e("appidPlaceholder"),trigger:"blur"}],app_secret:[{required:!0,message:e("appSecretPlaceholder"),trigger:"blur"}],token:[{required:!0,message:e("tokenPlaceholder"),trigger:"blur"}],encoding_aes_key:[{required:!0,message:e("encodingAesKeyPlaceholder"),trigger:"blur"}]});x().then(u=>{Object.assign(t,u.data),c.value=!1}),x().then(u=>{Object.assign(u.data)});const{copy:C,isSupported:T,copied:g}=B(),_=u=>{if(!T.value){y({message:e("notSupportCopy"),type:"warning"});return}C(u)};D(g,()=>{g.value&&y({message:e("copySuccess"),type:"success"})});const E=async u=>{c.value||!u||await u.validate(async a=>{a&&(c.value=!0,le(t).then(()=>{c.value=!1}).catch(()=>{c.value=!1}))})};return(u,a)=>{const i=L,n=Q,S=ee,m=z,$=Z,v=G,A=X,N=Y,R=H,I=J;return k(),j("div",oe,[s("div",ae,[s("div",{class:"left",onClick:a[0]||(a[0]=d=>l(P).push({path:"/channel/weapp"}))},[te,s("span",pe,r(l(e)("returnToPreviousPage")),1)]),se,s("span",re,r(l(U)),1)]),W((k(),F(N,{model:t,"label-width":"170px",ref_key:"formRef",ref:h,rules:q,class:"page-form"},{default:p(()=>[o(m,{class:"box-card !border-none",shadow:"never"},{default:p(()=>[s("h3",de,r(l(e)("weappInfo")),1),o(n,{label:l(e)("weappName"),prop:"weapp_name"},{default:p(()=>[o(i,{modelValue:t.weapp_name,"onUpdate:modelValue":a[1]||(a[1]=d=>t.weapp_name=d),placeholder:l(e)("weappNamePlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),o(n,{label:l(e)("weappOriginal"),prop:"weapp_original"},{default:p(()=>[o(i,{modelValue:t.weapp_original,"onUpdate:modelValue":a[2]||(a[2]=d=>t.weapp_original=d),placeholder:l(e)("weappOriginalPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),o(n,{label:l(e)("weappQrcode"),prop:"qr_code"},{default:p(()=>[o(S,{modelValue:t.qr_code,"onUpdate:modelValue":a[3]||(a[3]=d=>t.qr_code=d)},null,8,["modelValue"]),s("div",ne,r(l(e)("weappQrcodeTips")),1)]),_:1},8,["label"])]),_:1}),o(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("h3",ie,r(l(e)("weappDevelopInfo")),1),o(n,{label:l(e)("weappAppid"),prop:"app_id"},{default:p(()=>[o(i,{modelValue:t.app_id,"onUpdate:modelValue":a[4]||(a[4]=d=>t.app_id=d),placeholder:l(e)("appidPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"]),s("div",ue,r(l(e)("weappAppidTips")),1)]),_:1},8,["label"]),o(n,{label:l(e)("weappAppsecret"),prop:"app_secret"},{default:p(()=>[o(i,{modelValue:t.app_secret,"onUpdate:modelValue":a[5]||(a[5]=d=>t.app_secret=d),placeholder:l(e)("appSecretPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"]),s("div",ce,r(l(e)("weappAppsecretTips")),1)]),_:1},8,["label"])]),_:1}),o(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("h3",_e,r(l(e)("weappUpload")),1),o(n,{label:l(e)("uploadKey"),prop:"upload_private_key"},{default:p(()=>[s("div",me,[o($,{modelValue:t.upload_private_key,"onUpdate:modelValue":a[6]||(a[6]=d=>t.upload_private_key=d),api:"sys/document/wechat"},null,8,["modelValue"])]),s("div",fe,r(l(e)("uploadKeyTips")),1),s("div",ve,r(l(e)("uploadIpTips"))+r(t.upload_ip),1)]),_:1},8,["label"])]),_:1}),o(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("h3",he,r(l(e)("theServerSetting")),1),o(n,{label:"URL"},{default:p(()=>[o(i,{"model-value":t.serve_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:a[7]||(a[7]=d=>_(t.serve_url))},r(l(e)("copy")),1)]),_:1},8,["model-value"])]),_:1}),o(n,{label:"Token",prop:"token"},{default:p(()=>[o(i,{modelValue:t.token,"onUpdate:modelValue":a[8]||(a[8]=d=>t.token=d),placeholder:l(e)("tokenPlaceholder"),class:"input-width",maxlength:"32","show-word-limit":"",clearable:""},null,8,["modelValue","placeholder"]),s("div",ge,r(l(e)("tokenTips")),1)]),_:1}),o(n,{label:"EncodingAESKey",prop:"encoding_aes_key"},{default:p(()=>[o(i,{modelValue:t.encoding_aes_key,"onUpdate:modelValue":a[9]||(a[9]=d=>t.encoding_aes_key=d),placeholder:l(e)("encodingAesKeyPlaceholder"),class:"input-width",maxlength:"43","show-word-limit":"",clearable:""},null,8,["modelValue","placeholder"]),s("div",we,r(l(e)("encodingAESKeyTips")),1)]),_:1}),o(n,{label:l(e)("encryptionType"),prop:"encryption_type"},{default:p(()=>[o(A,{modelValue:t.encryption_type,"onUpdate:modelValue":a[10]||(a[10]=d=>t.encryption_type=d)},{default:p(()=>[o(v,{label:"not_encrypt"},{default:p(()=>[f(r(l(e)("cleartextMode")),1)]),_:1}),o(v,{label:"compatible"},{default:p(()=>[f(r(l(e)("compatibleMode")),1)]),_:1}),o(v,{label:"safe"},{default:p(()=>[f(r(l(e)("safeMode")),1)]),_:1})]),_:1},8,["modelValue"]),s("div",be,r(l(e)("cleartextModeTips")),1),s("div",ye,r(l(e)("compatibleModeTips")),1),s("div",ke,r(l(e)("safeModeTips")),1)]),_:1},8,["label"])]),_:1}),o(m,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:p(()=>[s("div",xe,[s("h3",Ve,r(l(e)("functionSetting")),1)]),o(n,{label:l(e)("requestUrl")},{default:p(()=>[o(i,{"model-value":t.request_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:a[11]||(a[11]=d=>_(t.request_url))},r(l(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"]),o(n,{label:l(e)("socketUrl")},{default:p(()=>[o(i,{"model-value":t.socket_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:a[12]||(a[12]=d=>_(t.socket_url))},r(l(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"]),o(n,{label:l(e)("uploadUrl")},{default:p(()=>[o(i,{"model-value":t.upload_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:a[13]||(a[13]=d=>_(t.upload_url))},r(l(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"]),o(n,{label:l(e)("downloadUrl")},{default:p(()=>[o(i,{"model-value":t.download_url,placeholder:"Please input",class:"input-width",readonly:!0},{append:p(()=>[s("div",{class:"cursor-pointer",onClick:a[14]||(a[14]=d=>_(t.download_url))},r(l(e)("copy")),1)]),_:1},8,["model-value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["model","rules"])),[[I,c.value]]),s("div",Pe,[s("div",Ue,[o(R,{type:"primary",loading:c.value,onClick:a[15]||(a[15]=d=>E(h.value))},{default:p(()=>[f(r(l(e)("save")),1)]),_:1},8,["loading"])])])])}}});export{rl as default}; diff --git a/niucloud/public/admin/assets/config-c9a3921b.js b/niucloud/public/admin/assets/config-c9a3921b.js new file mode 100644 index 0000000..cdd24b1 --- /dev/null +++ b/niucloud/public/admin/assets/config-c9a3921b.js @@ -0,0 +1 @@ +import{d as I,O as S,r as u,n as k,aI as q,s as N,a2 as m,N as e,y as D,h as R,c as B,a as n,t as l,u as s,e as o,w as a,X as F,W as V,_ as L,Y as U,$,p as j,g as M}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{q as O}from"./sys-0f76aff3.js";import{_ as P}from"./_plugin-vue_export-helper-c27b6911.js";const W=""+new URL("preview-52aad803.png",import.meta.url).href,X=r=>(j("data-v-d65a39d5"),r=r(),M(),r),Y={class:"main-container"},z={class:"flex ml-[18px] justify-between items-center mt-[20px]"},A={class:"text-[20px]"},G=X(()=>n("img",{class:"w-[500px]",src:W,alt:""},null,-1)),H=I({__name:"config",setup(r){const f=S().meta.title,p=u(!0),t=k({is_open:!1,request_url:""}),v=u();O().then(c=>{t.request_url=c.data.web_url+"/",p.value=!1});const{copy:g,isSupported:w,copied:i}=q(),h=c=>{if(!w.value){m({message:e("notSupportCopy"),type:"warning"});return}g(c)};N(i,()=>{i.value&&m({message:e("copySuccess"),type:"success"})});const y=()=>{window.open(t.request_url)};return(c,_)=>{const d=F,x=V,b=L,C=U,E=$;return D((R(),B("div",Y,[n("div",z,[n("span",A,l(s(f)),1)]),o(C,{model:t,"label-width":"150px",ref_key:"formRef",ref:v,class:"page-form"},{default:a(()=>[o(b,{class:"box-card !border-none",shadow:"never"},{default:a(()=>[o(d,{label:s(e)("preview"),prop:"weapp_name"},{default:a(()=>[G]),_:1},8,["label"]),o(d,{label:s(e)("PCDomainName")},{default:a(()=>[o(x,{"model-value":t.request_url,class:"input-width",readonly:!0},{append:a(()=>[n("div",{class:"cursor-pointer",onClick:_[0]||(_[0]=K=>h(t.request_url))},l(s(e)("copy")),1)]),_:1},8,["model-value"]),n("span",{class:"ml-2 cursor-pointer visit-btn",onClick:y},l(s(e)("clickVisit")),1)]),_:1},8,["label"])]),_:1})]),_:1},8,["model"])])),[[E,p.value]])}}});const ne=P(H,[["__scopeId","data-v-d65a39d5"]]);export{ne as default}; diff --git a/niucloud/public/admin/assets/config-eaf1c3f2.css b/niucloud/public/admin/assets/config-eaf1c3f2.css new file mode 100644 index 0000000..8e8d4a5 --- /dev/null +++ b/niucloud/public/admin/assets/config-eaf1c3f2.css @@ -0,0 +1 @@ +.visit-btn[data-v-d65a39d5]{color:var(--el-color-primary)} diff --git a/niucloud/public/admin/assets/config-edit-4300ae81.js b/niucloud/public/admin/assets/config-edit-4300ae81.js new file mode 100644 index 0000000..bd13b5c --- /dev/null +++ b/niucloud/public/admin/assets/config-edit-4300ae81.js @@ -0,0 +1 @@ +import{d as q,r as y,n as N,q as A,N as e,h as f,I as w,w as o,a as K,e as p,aQ as g,i as b,t as P,u as t,y as M,W as D,X as E,Y as R,E as x,a7 as F,$ as B}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{e as S,a as j,g as O}from"./config-8cc9fc39.js";const $={class:"dialog-footer"},Z=q({__name:"config-edit",emits:["complete"],setup(L,{expose:V,emit:C}){let _=y(!1);const u=y(!1),c={id:"",we_chat_pay_appid:"",we_chat_pay_app_id:"",we_chat_pay_miniapp_id:"",we_chat_pay_mch_id:"",we_chat_pay_key:"",we_chat_pay_miniapp_secret:"",we_chat_pay_notify_url:"",alipay_appId:"",alipay_rsa_private_key:"",alipay_public_key:"",alipay_notify_url:""},l=N({...c}),m=y(),v=A(()=>({we_chat_pay_appid:[{required:!0,message:e("weChatPayAppidPlaceholder"),trigger:"blur"}],we_chat_pay_app_id:[{required:!0,message:e("weChatPayAppIdPlaceholder"),trigger:"blur"}],we_chat_pay_miniapp_id:[{required:!0,message:e("weChatPayMiniappIdPlaceholder"),trigger:"blur"}],we_chat_pay_mch_id:[{required:!0,message:e("weChatPayMchIdPlaceholder"),trigger:"blur"}],we_chat_pay_key:[{required:!0,message:e("weChatPayKeyPlaceholder"),trigger:"blur"}],we_chat_pay_miniapp_secret:[{required:!0,message:e("weChatPayMiniappSecretPlaceholder"),trigger:"blur"}],we_chat_pay_notify_url:[{required:!0,message:e("weChatPayNotifyUrlPlaceholder"),trigger:"blur"}],alipay_appId:[{required:!0,message:e("alipayAppIdPlaceholder"),trigger:"blur"}],alipay_rsa_private_key:[{required:!0,message:e("alipayRsaPrivateKeyPlaceholder"),trigger:"blur"}],alipay_public_key:[{required:!0,message:e("alipayPublicKeyPlaceholder"),trigger:"blur"}],alipay_notify_url:[{required:!0,message:e("alipayNotifyUrlPlaceholder"),trigger:"blur"}]})),I=async s=>{if(u.value||!s)return;let a=l.id?S:j;await s.validate(async r=>{r&&(u.value=!0,a(l).then(n=>{u.value=!1,_.value=!1,C("complete")}).catch(n=>{u.value=!1}))})};return V({showDialog:_,setFormData:async(s=null)=>{if(Object.assign(l,c),u.value=!0,s){const a=await(await O(s.id)).data;a&&Object.keys(l).forEach(r=>{a[r]!=null&&(l[r]=a[r])})}u.value=!1}}),(s,a)=>{const r=D,d=E,n=R,h=x,U=F,k=B;return f(),w(U,{modelValue:t(_),"onUpdate:modelValue":a[13]||(a[13]=i=>g(_)?_.value=i:_=i),title:l.id?t(e)("updateConfig"):t(e)("addConfig"),width:"50%",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:o(()=>[K("span",$,[p(h,{onClick:a[11]||(a[11]=i=>g(_)?_.value=!1:_=!1)},{default:o(()=>[b(P(t(e)("cancel")),1)]),_:1}),p(h,{type:"primary",loading:u.value,onClick:a[12]||(a[12]=i=>I(m.value))},{default:o(()=>[b(P(t(e)("confirm")),1)]),_:1},8,["loading"])])]),default:o(()=>[M((f(),w(n,{model:l,"label-width":"120px",ref_key:"formRef",ref:m,rules:t(v),class:"page-form"},{default:o(()=>[p(d,{label:t(e)("weChatPayAppid")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_appid,"onUpdate:modelValue":a[0]||(a[0]=i=>l.we_chat_pay_appid=i),clearable:"",placeholder:t(e)("weChatPayAppidPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayAppId")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_app_id,"onUpdate:modelValue":a[1]||(a[1]=i=>l.we_chat_pay_app_id=i),clearable:"",placeholder:t(e)("weChatPayAppIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayMiniappId")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_miniapp_id,"onUpdate:modelValue":a[2]||(a[2]=i=>l.we_chat_pay_miniapp_id=i),clearable:"",placeholder:t(e)("weChatPayMiniappIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayMchId")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_mch_id,"onUpdate:modelValue":a[3]||(a[3]=i=>l.we_chat_pay_mch_id=i),clearable:"",placeholder:t(e)("weChatPayMchIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayKey")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_key,"onUpdate:modelValue":a[4]||(a[4]=i=>l.we_chat_pay_key=i),clearable:"",placeholder:t(e)("weChatPayKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayMiniappSecret")},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_miniapp_secret,"onUpdate:modelValue":a[5]||(a[5]=i=>l.we_chat_pay_miniapp_secret=i),clearable:"",placeholder:t(e)("weChatPayMiniappSecretPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("weChatPayNotifyUrl"),prop:"we_chat_pay_notify_url"},{default:o(()=>[p(r,{modelValue:l.we_chat_pay_notify_url,"onUpdate:modelValue":a[6]||(a[6]=i=>l.we_chat_pay_notify_url=i),clearable:"",placeholder:t(e)("weChatPayNotifyUrlPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("alipayAppId")},{default:o(()=>[p(r,{modelValue:l.alipay_appId,"onUpdate:modelValue":a[7]||(a[7]=i=>l.alipay_appId=i),clearable:"",placeholder:t(e)("alipayAppIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("alipayRsaPrivateKey")},{default:o(()=>[p(r,{modelValue:l.alipay_rsa_private_key,"onUpdate:modelValue":a[8]||(a[8]=i=>l.alipay_rsa_private_key=i),clearable:"",placeholder:t(e)("alipayRsaPrivateKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("alipayPublicKey")},{default:o(()=>[p(r,{modelValue:l.alipay_public_key,"onUpdate:modelValue":a[9]||(a[9]=i=>l.alipay_public_key=i),clearable:"",placeholder:t(e)("alipayPublicKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),p(d,{label:t(e)("alipayNotifyUrl"),prop:"alipay_notify_url"},{default:o(()=>[p(r,{modelValue:l.alipay_notify_url,"onUpdate:modelValue":a[10]||(a[10]=i=>l.alipay_notify_url=i),clearable:"",placeholder:t(e)("alipayNotifyUrlPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[k,u.value]])]),_:1},8,["modelValue","title"])}}});export{Z as default}; diff --git a/niucloud/public/admin/assets/config-f3b067d2.css b/niucloud/public/admin/assets/config-f3b067d2.css new file mode 100644 index 0000000..4561794 --- /dev/null +++ b/niucloud/public/admin/assets/config-f3b067d2.css @@ -0,0 +1 @@ +.visit-btn[data-v-a4af058c]{color:var(--el-color-primary)} diff --git a/niucloud/public/admin/assets/config-fa8d1c5f.js b/niucloud/public/admin/assets/config-fa8d1c5f.js new file mode 100644 index 0000000..a2f37db --- /dev/null +++ b/niucloud/public/admin/assets/config-fa8d1c5f.js @@ -0,0 +1 @@ +import{d as U,O as N,r as y,n as x,q as E,N as a,h as C,c as F,a as d,t as m,u as r,e as _,w as i,i as f,I as B,B as H,a2 as M,W as R,X as A,E as D,Y as K,_ as S}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{g as O,r as j,e as Q}from"./config-8cc9fc39.js";import{u as $}from"./common-adf8ca96.js";const T={class:"main-container"},W={class:"detail-head"},X={class:"right"},Y=d("p",{style:{color:"red"}},'重新生成二维码后->点击"保存"将替换此二维码',-1),z=["src"],G=["href"],J={class:"fixed-footer-wrap"},L={class:"fixed-footer"},ie=U({__name:"config",setup(Z){const w=N();parseInt(w.query.id);const h=y(!1),q=w.meta.title,g={id:0,we_chat_pay_appid:"",we_chat_pay_app_id:"",we_chat_pay_miniapp_id:"",we_chat_pay_mch_id:"",we_chat_pay_key:"",we_chat_pay_miniapp_secret:"",we_chat_pay_notify_url:"",alipay_appId:"",alipay_rsa_private_key:"",alipay_public_key:"",alipay_notify_url:"",we_chat_pay_mch_secret_cert:"",we_chat_pay_mch_public_cert_path:"",h5_site_url:"",h5_qrcode_url:"",ol_h5_qrcode_url:""},l=x({...g}),b=async(c=0)=>{Object.assign(l,g);const e=await(await O(c)).data;Object.keys(l).forEach(o=>{e[o]!=null&&(l[o]=e[o])})};b();const P=y();y([]);const v=E(()=>({we_chat_pay_appid:[{required:!0,message:a("weChatPayAppidPlaceholder"),trigger:"blur"}],we_chat_pay_app_id:[{required:!0,message:a("weChatPayAppIdPlaceholder"),trigger:"blur"}],we_chat_pay_miniapp_id:[{required:!0,message:a("weChatPayMiniappIdPlaceholder"),trigger:"blur"}],we_chat_pay_mch_id:[{required:!0,message:a("weChatPayMchIdPlaceholder"),trigger:"blur"}],we_chat_pay_key:[{required:!0,message:a("weChatPayKeyPlaceholder"),trigger:"blur"}],we_chat_pay_miniapp_secret:[{required:!0,message:a("weChatPayMiniappSecretPlaceholder"),trigger:"blur"}],we_chat_pay_notify_url:[{required:!0,message:a("weChatPayNotifyUrlPlaceholder"),trigger:"blur"}],we_chat_pay_mch_secret_cert:[{required:!0,message:a("商户私钥必传"),trigger:"blur"}],we_chat_pay_mch_public_cert_path:[{required:!0,message:a("商户公钥必传"),trigger:"blur"}],alipay_appId:[{required:!0,message:a("alipayAppIdPlaceholder"),trigger:"blur"}],alipay_rsa_private_key:[{required:!0,message:a("alipayRsaPrivateKeyPlaceholder"),trigger:"blur"}],alipay_public_key:[{required:!0,message:a("alipayPublicKeyPlaceholder"),trigger:"blur"}],alipay_notify_url:[{required:!0,message:a("alipayNotifyUrlPlaceholder"),trigger:"blur"}]})),k=async c=>{h.value||!c||await c.validate(async e=>{e&&(h.value=!0,Q(l).then(s=>{h.value=!1,b()}).catch(s=>{h.value=!1}))})},I=async()=>{let c=l;if(!c.id){M({message:"请先填写必要信息并点击保存后再试",type:"warning"});return}j(c.id).then(e=>{e.code&&(l.h5_qrcode_url=e.data.url)}).catch(e=>{console.log(e)})},V=(c,e,o)=>{const p=c.target;if(!p.files||p.files.length===0)return;const s=p.files[0];let n=new FormData;n.append("file",s),n.append("path",o),$(n).then(u=>{console.log(222,u),u.code&&(l[e]=u.data.file_path)}).catch(u=>{})};return(c,e)=>{const o=R,p=A,s=D,n=K,u=S;return C(),F("div",T,[d("div",W,[d("span",X,m(r(q)),1)]),_(u,{class:"box-card !border-none",shadow:"never"},{default:i(()=>[_(n,{model:l,"label-width":"270px",ref_key:"formRef",ref:P,rules:r(v),class:"page-form"},{default:i(()=>[_(p,{label:r(a)("weChatPayAppId"),prop:"we_chat_pay_app_id"},{default:i(()=>[_(o,{modelValue:l.we_chat_pay_app_id,"onUpdate:modelValue":e[0]||(e[0]=t=>l.we_chat_pay_app_id=t),clearable:"",placeholder:r(a)("weChatPayAppIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),_(p,{label:r(a)("weChatPayMchId"),prop:"we_chat_pay_mch_id"},{default:i(()=>[_(o,{modelValue:l.we_chat_pay_mch_id,"onUpdate:modelValue":e[1]||(e[1]=t=>l.we_chat_pay_mch_id=t),clearable:"",placeholder:r(a)("weChatPayMchIdPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),_(p,{label:r(a)("weChatPayKey"),prop:"we_chat_pay_key"},{default:i(()=>[_(o,{modelValue:l.we_chat_pay_key,"onUpdate:modelValue":e[2]||(e[2]=t=>l.we_chat_pay_key=t),clearable:"",placeholder:r(a)("weChatPayKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),_(p,{label:r(a)("weChatPayNotifyUrl"),prop:"we_chat_pay_notify_url"},{default:i(()=>[_(o,{disabled:"true",modelValue:l.we_chat_pay_notify_url,"onUpdate:modelValue":e[3]||(e[3]=t=>l.we_chat_pay_notify_url=t),clearable:"",placeholder:r(a)("weChatPayNotifyUrlPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),_(p,{label:r(a)("上传微信商户私钥(apiclient_key.pem)"),prop:"we_chat_pay_mch_secret_cert"},{default:i(()=>[_(o,{modelValue:l.we_chat_pay_mch_secret_cert,"onUpdate:modelValue":e[4]||(e[4]=t=>l.we_chat_pay_mch_secret_cert=t),clearable:"",placeholder:r(a)("请上传商户私钥"),class:"input-width"},null,8,["modelValue","placeholder"]),d("div",null,[d("input",{type:"file",onChange:e[5]||(e[5]=t=>V(t,"we_chat_pay_mch_secret_cert","config_we_chat_pay_mch_secret_cert"))},null,32)])]),_:1},8,["label"]),_(p,{label:r(a)("上传微信商户公钥(apiclient_cert.pem)"),prop:"we_chat_pay_mch_public_cert_path"},{default:i(()=>[_(o,{modelValue:l.we_chat_pay_mch_public_cert_path,"onUpdate:modelValue":e[6]||(e[6]=t=>l.we_chat_pay_mch_public_cert_path=t),clearable:"",placeholder:r(a)("请上传商户公钥"),class:"input-width"},null,8,["modelValue","placeholder"]),d("input",{type:"file",onChange:e[7]||(e[7]=t=>V(t,"we_chat_pay_mch_public_cert_path","config_we_chat_pay_mch_public_cert_path"))},null,32)]),_:1},8,["label"]),_(p,{label:r(a)("H5站点地址"),prop:"h5_site_url"},{default:i(()=>[_(o,{disabled:"true",modelValue:l.h5_site_url,"onUpdate:modelValue":e[8]||(e[8]=t=>l.h5_site_url=t),clearable:"",placeholder:r(a)("H5站点地址"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),_(p,{label:r(a)("H5站点二维码"),prop:"h5_qrcode_url"},{default:i(()=>[_(o,{disabled:"true",modelValue:l.h5_qrcode_url,"onUpdate:modelValue":e[9]||(e[9]=t=>l.h5_qrcode_url=t),clearable:"",placeholder:r(a)("H5站点二维码"),class:"input-width"},null,8,["modelValue","placeholder"]),_(s,{style:{"margin-left":"15px"},type:"primary",onClick:e[10]||(e[10]=t=>I())},{default:i(()=>[f(m(r(a)("重新生成二维码")),1)]),_:1})]),_:1},8,["label"]),l.ol_h5_qrcode_url?(C(),B(p,{key:0,label:r(a)("原始H5站点二维码"),prop:"h5_qrcode_url"},{default:i(()=>[d("div",null,[Y,d("img",{src:l.ol_h5_qrcode_url,alt:""},null,8,z),d("a",{href:l.ol_h5_qrcode_url,target:"downloadFile",download:"h5_qrcode.png"},[_(s,{type:"primary"},{default:i(()=>[f("打开二维码")]),_:1})],8,G)])]),_:1},8,["label"])):H("",!0)]),_:1},8,["model","rules"])]),_:1}),d("div",J,[d("div",L,[_(s,{type:"primary",onClick:e[11]||(e[11]=t=>k(P.value))},{default:i(()=>[f(m(r(a)("save")),1)]),_:1})])])])}}});export{ie as default}; diff --git a/niucloud/public/admin/assets/config.config-8e11454c.js b/niucloud/public/admin/assets/config.config-8e11454c.js new file mode 100644 index 0000000..816a595 --- /dev/null +++ b/niucloud/public/admin/assets/config.config-8e11454c.js @@ -0,0 +1 @@ +const a="id",e="站点id",t="请输入站点id",l="微信支付-APP的id",i="请输入微信支付-APP的id",c="微信支付-公众号APPID",o="请输入微信支付-公众号APPID",P="微信支付-小程序APPID",d="请输入微信支付-小程序APPID",p="微信支付-商户号",y="请输入微信支付-商户号",h="微信支付-商户号秘钥",n="请输入微信支付-商户号秘钥",r="微信支付-小程序secret",s="请输入微信支付-小程序secret",C="微信支付-异步回调地址",w="请输入微信支付-异步回调地址",I="支付宝-appid",A="请输入支付宝-appid",f="支付宝-开发者私钥",K="请输入支付宝-开发者私钥",M="支付宝-支付宝公钥",D="请输入支付宝-支付宝公钥",g="支付宝-异步回调地址",N="请输入支付宝-异步回调地址",U="创建时间",u="添加配置项",b="编辑配置项",v="确定要删除该数据吗?",R="请选择开始时间",S="请选择结束时间",T={id:a,siteId:e,siteIdPlaceholder:t,weChatPayAppid:l,weChatPayAppidPlaceholder:i,weChatPayAppId:c,weChatPayAppIdPlaceholder:o,weChatPayMiniappId:P,weChatPayMiniappIdPlaceholder:d,weChatPayMchId:p,weChatPayMchIdPlaceholder:y,weChatPayKey:h,weChatPayKeyPlaceholder:n,weChatPayMiniappSecret:r,weChatPayMiniappSecretPlaceholder:s,weChatPayNotifyUrl:C,weChatPayNotifyUrlPlaceholder:w,alipayAppId:I,alipayAppIdPlaceholder:A,alipayRsaPrivateKey:f,alipayRsaPrivateKeyPlaceholder:K,alipayPublicKey:M,alipayPublicKeyPlaceholder:D,alipayNotifyUrl:g,alipayNotifyUrlPlaceholder:N,createTime:U,addConfig:u,updateConfig:b,configDeleteTips:v,startDate:R,endDate:S};export{u as addConfig,I as alipayAppId,A as alipayAppIdPlaceholder,g as alipayNotifyUrl,N as alipayNotifyUrlPlaceholder,M as alipayPublicKey,D as alipayPublicKeyPlaceholder,f as alipayRsaPrivateKey,K as alipayRsaPrivateKeyPlaceholder,v as configDeleteTips,U as createTime,T as default,S as endDate,a as id,e as siteId,t as siteIdPlaceholder,R as startDate,b as updateConfig,c as weChatPayAppId,o as weChatPayAppIdPlaceholder,l as weChatPayAppid,i as weChatPayAppidPlaceholder,h as weChatPayKey,n as weChatPayKeyPlaceholder,p as weChatPayMchId,y as weChatPayMchIdPlaceholder,P as weChatPayMiniappId,d as weChatPayMiniappIdPlaceholder,r as weChatPayMiniappSecret,s as weChatPayMiniappSecretPlaceholder,C as weChatPayNotifyUrl,w as weChatPayNotifyUrlPlaceholder}; diff --git a/niucloud/public/admin/assets/copyright-7ea83f49.js b/niucloud/public/admin/assets/copyright-7ea83f49.js new file mode 100644 index 0000000..3649fd7 --- /dev/null +++ b/niucloud/public/admin/assets/copyright-7ea83f49.js @@ -0,0 +1 @@ +import{d as k,r as g,n as f,N as o,h as v,c as U,y as E,I as P,w as i,e as a,a as c,t as u,u as t,i as D,X as N,W as R,_ as C,Y as B,E as F,$ as I}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as L}from"./index-4718d422.js";import{Q as S,R as O}from"./sys-0f76aff3.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./_plugin-vue_export-helper-c27b6911.js";const $={class:"main-container"},j={class:"panel-title !text-sm"},q={class:"panel-title !text-sm"},Q={class:"fixed-footer-wrap"},T={class:"fixed-footer"},Ve=k({__name:"copyright",setup(W){const n=g(!0),l=f({icp:"",gov_record:"",gov_url:"",market_supervision_url:"",logo:"",company_name:"",copyright_link:"",copyright_desc:""});(async(m=0)=>{const e=await(await S()).data;Object.keys(l).forEach(p=>{e[p]!=null&&(l[p]=e[p])}),n.value=!1})();const _=g(),b=f({site_name:[{required:!0,message:o("siteNamePlaceholder"),trigger:"blur"}]}),y=async m=>{n.value||!m||await m.validate(async e=>{e&&(n.value=!0,O(l).then(()=>{n.value=!1}).catch(()=>{n.value=!1}))})};return(m,e)=>{const p=L,d=N,s=R,h=C,V=B,w=F,x=I;return v(),U("div",$,[E((v(),P(V,{model:l,"label-width":"150px",ref_key:"formRef",ref:_,rules:b,class:"page-form"},{default:i(()=>[a(h,{class:"box-card !border-none",shadow:"never"},{default:i(()=>[c("h3",j,u(t(o)("copyrightEdit")),1),a(d,{label:t(o)("logo")},{default:i(()=>[a(p,{modelValue:l.logo,"onUpdate:modelValue":e[0]||(e[0]=r=>l.logo=r)},null,8,["modelValue"])]),_:1},8,["label"]),a(d,{label:t(o)("companyName"),prop:"company_name"},{default:i(()=>[a(s,{modelValue:l.company_name,"onUpdate:modelValue":e[1]||(e[1]=r=>l.company_name=r),placeholder:t(o)("companyNamePlaceholder"),class:"input-width",clearable:"",maxlength:"30"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(d,{label:t(o)("copyrightLink")},{default:i(()=>[a(s,{modelValue:l.copyright_link,"onUpdate:modelValue":e[2]||(e[2]=r=>l.copyright_link=r),placeholder:t(o)("copyrightLinkPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(d,{label:t(o)("copyrightDesc")},{default:i(()=>[a(s,{modelValue:l.copyright_desc,"onUpdate:modelValue":e[3]||(e[3]=r=>l.copyright_desc=r),type:"textarea",rows:"4",clearable:"",placeholder:t(o)("copyrightDescPlaceholder"),class:"input-width",maxlength:"150"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),a(h,{class:"box-card !border-none mt-[16px]",shadow:"never"},{default:i(()=>[c("h3",q,u(t(o)("putOnRecordEdit")),1),a(d,{label:t(o)("icp"),prop:"icp"},{default:i(()=>[a(s,{modelValue:l.icp,"onUpdate:modelValue":e[4]||(e[4]=r=>l.icp=r),placeholder:t(o)("icpPlaceholder"),class:"input-width",clearable:"",maxlength:"20"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(d,{label:t(o)("govRecord")},{default:i(()=>[a(s,{modelValue:l.gov_record,"onUpdate:modelValue":e[5]||(e[5]=r=>l.gov_record=r),placeholder:t(o)("govRecordPlaceholder"),class:"input-width",clearable:"",maxlength:"50"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(d,{label:t(o)("govUrl")},{default:i(()=>[a(s,{modelValue:l.gov_url,"onUpdate:modelValue":e[6]||(e[6]=r=>l.gov_url=r),placeholder:t(o)("govUrlPlaceholder"),class:"input-width",clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(d,{label:t(o)("marketSupervisionUrl")},{default:i(()=>[a(s,{modelValue:l.market_supervision_url,"onUpdate:modelValue":e[7]||(e[7]=r=>l.market_supervision_url=r),rows:"4",clearable:"",placeholder:t(o)("marketSupervisionUrlPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["model","rules"])),[[x,n.value]]),c("div",Q,[c("div",T,[a(w,{type:"primary",loading:n.value,onClick:e[8]||(e[8]=r=>y(_.value))},{default:i(()=>[D(u(t(o)("save")),1)]),_:1},8,["loading"])])])])}}});export{Ve as default}; diff --git a/niucloud/public/admin/assets/coupons-edit-247f87bb.js b/niucloud/public/admin/assets/coupons-edit-247f87bb.js new file mode 100644 index 0000000..77aea3c --- /dev/null +++ b/niucloud/public/admin/assets/coupons-edit-247f87bb.js @@ -0,0 +1 @@ +import{_ as o}from"./coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./dict-3e5bfbe1.js";export{o as default}; diff --git a/niucloud/public/admin/assets/coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js b/niucloud/public/admin/assets/coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js new file mode 100644 index 0000000..f5c554c --- /dev/null +++ b/niucloud/public/admin/assets/coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js @@ -0,0 +1 @@ +import{aJ as f,d as B,r as v,n as I,q as R,N as l,s as T,h as w,I as V,w as s,a as Y,e as r,aQ as P,i as c,t as y,u as o,y as C,c as O,F as j,G,z,W as J,X as Q,aE as W,aw as X,ax as A,cI as H,Y as K,E as Z,a7 as ee,$ as le}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{u as ae}from"./dict-3e5bfbe1.js";function ye(d){return f.get("hygl/coupons",{params:d})}function oe(d){return f.get(`hygl/coupons/${d}`)}function te(d){return f.post("hygl/coupons",d,{showErrorMessage:!0,showSuccessMessage:!0})}function se(d){return f.put(`hygl/coupons/${d.id}`,d,{showErrorMessage:!0,showSuccessMessage:!0})}function Ee(d){return f.delete(`hygl/coupons/${d}`,{showErrorMessage:!0,showSuccessMessage:!0})}const re={class:"dialog-footer"},De=B({__name:"coupons-edit",emits:["complete"],setup(d,{expose:L,emit:F}){let u=v(!1);const m=v(!1),E={id:"",name:"",nominal_value:"",stock:"100",is_show:"1",is_long_term_valid:"1",is_obsolete:"0",valid_time:[]},a=I({...E}),D=v(),M=R(()=>({name:[{required:!0,message:l("namePlaceholder"),trigger:"blur"}],nominal_value:[{required:!0,message:l("nominalValuePlaceholder"),trigger:"blur"},{validator:(p,e,n)=>{const i=parseFloat(e);isNaN(i)||i<=0||i>99999||!/^\d+(\.\d{1,2})?$/.test(e)?n(new Error(l("请输入0.1-99999"))):n()}}],stock:[{required:!0,message:l("stockPlaceholder"),trigger:"blur"},{validator:(p,e,n)=>{e&&!/^\d{0,99999}$/.test(e)?n(new Error(l("generateBetween"))):n()}}],is_show:[{required:!0,message:l("isShowPlaceholder"),trigger:"blur"}],is_long_term_valid:[{required:!0,message:l("isLongTermValidPlaceholder"),trigger:"blur"}]})),S=async p=>{if(m.value||!p)return;let e=a.id?se:te;await p.validate(async n=>{n&&(m.value=!0,e(a).then(h=>{m.value=!1,u.value=!1,F("complete")}).catch(h=>{m.value=!1}))})};let g=v([]);return(async()=>{g.value=await(await ae("is_show_radio")).data.dictionary})(),T(()=>g.value,()=>{a.is_show=g.value[0].value}),L({showDialog:u,setFormData:async(p=null)=>{if(Object.assign(a,E),m.value=!0,p){const e=await(await oe(p.id)).data;e&&Object.keys(a).forEach(n=>{e[n]!=null&&(a[n]=e[n])})}m.value=!1}}),(p,e)=>{const n=J,i=Q,h=W,_=X,b=A,U=H,q=K,k=Z,x=ee,N=le;return w(),V(x,{modelValue:o(u),"onUpdate:modelValue":e[9]||(e[9]=t=>P(u)?u.value=t:u=t),title:a.id?o(l)("updateCoupons"):o(l)("addCoupons"),width:"50%",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:s(()=>[Y("span",re,[r(k,{onClick:e[7]||(e[7]=t=>P(u)?u.value=!1:u=!1)},{default:s(()=>[c(y(o(l)("cancel")),1)]),_:1}),r(k,{type:"primary",loading:m.value,onClick:e[8]||(e[8]=t=>S(D.value))},{default:s(()=>[c(y(o(l)("confirm")),1)]),_:1},8,["loading"])])]),default:s(()=>[C((w(),V(q,{model:a,"label-width":"120px",ref_key:"formRef",ref:D,rules:o(M),class:"page-form"},{default:s(()=>[r(i,{label:o(l)("name"),prop:"name"},{default:s(()=>[r(n,{modelValue:a.name,"onUpdate:modelValue":e[0]||(e[0]=t=>a.name=t),clearable:"",placeholder:o(l)("namePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(i,{label:o(l)("nominalValue"),prop:"nominal_value"},{default:s(()=>[r(h,{modelValue:a.nominal_value,"onUpdate:modelValue":e[1]||(e[1]=t=>a.nominal_value=t),clearable:"",placeholder:o(l)("nominalValuePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(i,{label:o(l)("stock"),prop:"stock"},{default:s(()=>[r(h,{modelValue:a.stock,"onUpdate:modelValue":e[2]||(e[2]=t=>a.stock=t),clearable:"",placeholder:o(l)("stockPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(i,{label:o(l)("isShow"),prop:"is_show"},{default:s(()=>[r(b,{modelValue:a.is_show,"onUpdate:modelValue":e[3]||(e[3]=t=>a.is_show=t),placeholder:o(l)("isShowPlaceholder")},{default:s(()=>[(w(!0),O(j,null,G(o(g),(t,$)=>(w(),V(_,{key:$,label:t.value},{default:s(()=>[c(y(t.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),r(i,{label:o(l)("isObsolete"),prop:"is_obsolete"},{default:s(()=>[r(b,{modelValue:a.is_obsolete,"onUpdate:modelValue":e[4]||(e[4]=t=>a.is_obsolete=t),placeholder:o(l)("isObsoletePlaceholder")},{default:s(()=>[r(_,{label:"1"},{default:s(()=>[c("是")]),_:1}),r(_,{label:"0"},{default:s(()=>[c("否")]),_:1})]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),r(i,{label:o(l)("isLongTermValid"),prop:"is_long_term_valid"},{default:s(()=>[r(b,{modelValue:a.is_long_term_valid,"onUpdate:modelValue":e[5]||(e[5]=t=>a.is_long_term_valid=t),placeholder:o(l)("isLongTermValidPlaceholder")},{default:s(()=>[r(_,{label:"1"},{default:s(()=>[c("是")]),_:1}),r(_,{label:"0"},{default:s(()=>[c("否")]),_:1})]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),C(r(i,{label:o(l)("validTime"),prop:"valid_time"},{default:s(()=>[r(U,{modelValue:a.valid_time,"onUpdate:modelValue":e[6]||(e[6]=t=>a.valid_time=t),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":o(l)("startDate"),"end-placeholder":o(l)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),[[z,a.is_long_term_valid!=="1"]])]),_:1},8,["model","rules"])),[[N,m.value]])]),_:1},8,["modelValue","title"])}}});export{De as _,Ee as d,ye as g}; diff --git a/niucloud/public/admin/assets/coupons-f2705205.css b/niucloud/public/admin/assets/coupons-f2705205.css new file mode 100644 index 0000000..b4aa26d --- /dev/null +++ b/niucloud/public/admin/assets/coupons-f2705205.css @@ -0,0 +1 @@ +@charset "UTF-8";.multi-hidden[data-v-abf34589]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical} diff --git a/niucloud/public/admin/assets/coupons-fa4cee9b.js b/niucloud/public/admin/assets/coupons-fa4cee9b.js new file mode 100644 index 0000000..a4e2aec --- /dev/null +++ b/niucloud/public/admin/assets/coupons-fa4cee9b.js @@ -0,0 +1 @@ +import{d as R,O as q,n as G,r as b,h as s,c as d,e as a,w as n,a as w,t as u,u as e,i as _,N as l,F as y,G as x,I as P,y as M,B as C,a5 as W,E as X,W as Y,X as A,aq as H,aC as J,Y as K,_ as Q,af as Z,ah as ee,a3 as te,$ as ae}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{_ as le}from"./index.vue_vue_type_script_setup_true_lang-edbadcfb.js";import"./el-form-item-4ed993c7.js";/* empty css */import{u as oe}from"./dict-3e5bfbe1.js";import{_ as ne,g as ie,d as se}from"./coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js";import{_ as re}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css *//* empty css */const ue={class:"main-container"},de={class:"flex justify-between items-center"},me={class:"text-lg"},pe={class:"mt-[10px]"},ce={key:0},_e={key:0},fe={key:0},ve={class:"mt-[16px] flex justify-end"},he=R({__name:"coupons",setup(we){const F=q().meta.title;let o=G({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{name:"",nominal_value:[],is_show:""}});const k=b();b([]);const f=b([]);(async()=>{f.value=await(await oe("is_show_radio")).data.dictionary})();const c=(p=1)=>{o.loading=!0,o.page=p,ie({page:o.page,limit:o.limit,...o.searchParam}).then(i=>{o.loading=!1,o.data=i.data.data,o.total=i.data.total}).catch(()=>{o.loading=!1})};c();const v=b(null),T=()=>{v.value.setFormData(),v.value.showDialog=!0},B=p=>{v.value.setFormData(p),v.value.showDialog=!0},L=p=>{W.confirm(l("couponsDeleteTips"),l("warning"),{confirmButtonText:l("confirm"),cancelButtonText:l("cancel"),type:"warning"}).then(()=>{se(p).then(()=>{c()}).catch(()=>{})})},$=p=>{p&&(p.resetFields(),c())};return(p,i)=>{const h=X,z=Y,g=A,N=le,V=H,S=J,U=K,E=Q,m=Z,I=ee,j=te,O=ae;return s(),d("div",ue,[a(E,{class:"box-card !border-none",shadow:"never"},{default:n(()=>[w("div",de,[w("span",me,u(e(F)),1),a(h,{type:"primary",onClick:T},{default:n(()=>[_(u(e(l)("addCoupons")),1)]),_:1})]),a(E,{class:"box-card !border-none my-[10px] table-search-wrap",shadow:"never"},{default:n(()=>[a(U,{inline:!0,model:e(o).searchParam,ref_key:"searchFormRef",ref:k},{default:n(()=>[a(g,{label:e(l)("name"),prop:"name"},{default:n(()=>[a(z,{modelValue:e(o).searchParam.name,"onUpdate:modelValue":i[0]||(i[0]=t=>e(o).searchParam.name=t),placeholder:e(l)("namePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(g,{label:e(l)("nominalValue"),prop:"nominal_value"},{default:n(()=>[a(N,{modelValue:e(o).searchParam.nominal_value,"onUpdate:modelValue":i[1]||(i[1]=t=>e(o).searchParam.nominal_value=t)},null,8,["modelValue"])]),_:1},8,["label"]),a(g,{label:e(l)("isShow"),prop:"is_show"},{default:n(()=>[a(S,{class:"w-[280px]",modelValue:e(o).searchParam.is_show,"onUpdate:modelValue":i[2]||(i[2]=t=>e(o).searchParam.is_show=t),clearable:"",placeholder:e(l)("isShowPlaceholder")},{default:n(()=>[a(V,{label:"全部",value:""}),(s(!0),d(y,null,x(f.value,(t,r)=>(s(),P(V,{key:r,label:t.name,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),a(g,null,{default:n(()=>[a(h,{type:"primary",onClick:i[3]||(i[3]=t=>c())},{default:n(()=>[_(u(e(l)("search")),1)]),_:1}),a(h,{onClick:i[4]||(i[4]=t=>$(k.value))},{default:n(()=>[_(u(e(l)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),w("div",pe,[M((s(),P(I,{data:e(o).data,size:"large"},{empty:n(()=>[w("span",null,u(e(o).loading?"":e(l)("emptyData")),1)]),default:n(()=>[a(m,{prop:"id",label:e(l)("id"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{prop:"name",label:e(l)("name"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{prop:"nominal_value",label:e(l)("nominalValue"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{prop:"stock",label:e(l)("stock"),"min-width":"120","show-overflow-tooltip":!0},null,8,["label"]),a(m,{label:e(l)("isShow"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:n(({row:t})=>[(s(!0),d(y,null,x(f.value,(r,D)=>(s(),d("div",null,[r.value==t.is_show?(s(),d("div",ce,u(r.name),1)):C("",!0)]))),256))]),_:1},8,["label"]),a(m,{label:e(l)("isObsolete"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:n(({row:t})=>[(s(!0),d(y,null,x(f.value,(r,D)=>(s(),d("div",null,[r.value==t.is_obsolete?(s(),d("div",_e,u(r.name),1)):C("",!0)]))),256))]),_:1},8,["label"]),a(m,{label:e(l)("isLongTermValid"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:n(({row:t})=>[(s(!0),d(y,null,x(f.value,(r,D)=>(s(),d("div",null,[r.value==t.is_long_term_valid?(s(),d("div",fe,u(r.name),1)):C("",!0)]))),256))]),_:1},8,["label"]),a(m,{label:e(l)("validTime"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:n(({row:t})=>[_(u(t.valid_time||""),1)]),_:1},8,["label"]),a(m,{label:e(l)("createTime"),"min-width":"180",align:"center","show-overflow-tooltip":!0},{default:n(({row:t})=>[_(u(t.create_time||""),1)]),_:1},8,["label"]),a(m,{label:e(l)("operation"),fixed:"right","min-width":"120"},{default:n(({row:t})=>[a(h,{type:"primary",link:"",onClick:r=>B(t)},{default:n(()=>[_(u(e(l)("edit")),1)]),_:2},1032,["onClick"]),a(h,{type:"primary",link:"",onClick:r=>L(t.id)},{default:n(()=>[_(u(e(l)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[O,e(o).loading]]),w("div",ve,[a(j,{"current-page":e(o).page,"onUpdate:current-page":i[5]||(i[5]=t=>e(o).page=t),"page-size":e(o).limit,"onUpdate:page-size":i[6]||(i[6]=t=>e(o).limit=t),layout:"total, sizes, prev, pager, next, jumper",total:e(o).total,onSizeChange:i[7]||(i[7]=t=>c()),onCurrentChange:c},null,8,["current-page","page-size","total"])])]),a(ne,{ref_key:"editCouponsDialog",ref:v,onComplete:c},null,512)]),_:1})])}}});const We=re(he,[["__scopeId","data-v-abf34589"]]);export{We as default}; diff --git a/niucloud/public/admin/assets/coupons.coupons-b9f57d59.js b/niucloud/public/admin/assets/coupons.coupons-b9f57d59.js new file mode 100644 index 0000000..3a868df --- /dev/null +++ b/niucloud/public/admin/assets/coupons.coupons-b9f57d59.js @@ -0,0 +1 @@ +const o="id",e="站点id",s="请输入站点id",l="卡券名字",t="请输入卡券名字",n="卡券面值",a="请输入卡券面值",c="卡券库存",i="请输入卡券库存",d="是否展示",r="请输入是否展示",h="是否长期有效",m="请输入是否长期有效",u="创建时间",P="添加优惠券",p="编辑优惠券",T="确定要删除该数据吗?",V="请选择开始时间",v="请选择结束时间",D="有效期开始时间",b="有效期截止时间",g="有效期",k="是否作废",w="请输入是否作废",C={id:o,siteId:e,siteIdPlaceholder:s,name:l,namePlaceholder:t,nominalValue:n,nominalValuePlaceholder:a,stock:c,stockPlaceholder:i,isShow:d,isShowPlaceholder:r,isLongTermValid:h,isLongTermValidPlaceholder:m,createTime:u,addCoupons:P,updateCoupons:p,couponsDeleteTips:T,startDate:V,endDate:v,validFrom:D,validUntil:b,validTime:g,isObsolete:k,isObsoletePlaceholder:w};export{P as addCoupons,T as couponsDeleteTips,u as createTime,C as default,v as endDate,o as id,h as isLongTermValid,m as isLongTermValidPlaceholder,k as isObsolete,w as isObsoletePlaceholder,d as isShow,r as isShowPlaceholder,l as name,t as namePlaceholder,n as nominalValue,a as nominalValuePlaceholder,e as siteId,s as siteIdPlaceholder,V as startDate,c as stock,i as stockPlaceholder,p as updateCoupons,D as validFrom,g as validTime,b as validUntil}; diff --git a/niucloud/public/admin/assets/course-036fa26c.js b/niucloud/public/admin/assets/course-036fa26c.js new file mode 100644 index 0000000..ed6ec2c --- /dev/null +++ b/niucloud/public/admin/assets/course-036fa26c.js @@ -0,0 +1 @@ +import{d as w,O as u,f,r as g,n as v,h as y,c as b,a as t,u as s,t as e,N as n,e as c,w as r,i as o,E as T,_ as k}from"./index-6010b07e.js";/* empty css *//* empty css */import{g as E}from"./wechat-688fa021.js";const O=""+new URL("wechat_1-0a26d3a6.png",import.meta.url).href,R=""+new URL("wechat_4-94a271d5.png",import.meta.url).href,C=""+new URL("wechat_2-0513f476.png",import.meta.url).href,j=""+new URL("wechat_3-0a96f3fe.png",import.meta.url).href,L={class:"main-container"},N={class:"detail-head"},U=t("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),B={class:"ml-[1px]"},q=t("span",{class:"adorn"},"|",-1),V={class:"right"},D={class:"mt-[20px]"},P={class:"flex"},S=t("div",{class:"min-w-[60px]"},[t("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"1")],-1),z={class:"flex items-center text-[14px]"},A=t("span",{class:"text-primary"},"URL / Token / EncondingAESKey",-1),K=t("div",{class:"w-[100%] mt-[10px]"},[t("img",{class:"w-[100%]",src:O})],-1),W={class:"flex items-center text-[14px] mt-[20px]"},$=t("div",{class:"w-[100%] mt-[10px]"},[t("img",{class:"w-[100%]",src:R})],-1),F={class:"flex mt-[40px]"},G=t("div",{class:"min-w-[60px]"},[t("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"2")],-1),H={class:"flex items-center text-[14px]"},I=t("div",{class:"w-[100%] mt-[10px]"},[t("img",{class:"w-[100%]",src:C})],-1),J={class:"flex mt-[40px]"},M=t("div",{class:"min-w-[60px]"},[t("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"3")],-1),Q={class:"flex items-center text-[14px]"},X={class:"text-primary"},Y=t("div",{class:"w-[100%] mt-[10px]"},[t("img",{class:"w-[100%]",src:j})],-1),at=w({__name:"course",setup(Z){const p=u().meta.title,_=f(),l=g(!0),d=v({wechat_name:"",wechat_original:"",app_id:"",app_secret:"",qr_code:"",token:"",encoding_aes_key:"",encryption_type:"not_encrypt"});E().then(i=>{Object.assign(d,i.data),l.value=!1});const m=()=>{window.open("https://mp.weixin.qq.com/","_blank")};return(i,a)=>{const x=T,h=k;return y(),b("div",L,[t("div",N,[t("div",{class:"left",onClick:a[0]||(a[0]=st=>s(_).push({path:"/channel/wechat"}))},[U,t("span",B,e(s(n)("returnToPreviousPage")),1)]),q,t("span",V,e(s(p)),1)]),c(h,{class:"box-card !border-none",shadow:"never"},{default:r(()=>[t("div",D,[t("div",P,[S,t("div",null,[t("p",z,[o(e(s(n)("writingTipsOne1"))+"--",1),c(x,{link:"",type:"primary",onClick:m},{default:r(()=>[o(e(s(n)("writingTipsOne2")),1)]),_:1}),o(", "+e(s(n)("writingTipsOne3")),1),A,o(e(s(n)("writingTipsOne4")),1)]),K,t("p",W,e(s(n)("writingTipsOne5")),1),$])]),t("div",F,[G,t("div",null,[t("p",H,e(s(n)("writingTipsTwo1")),1),I])]),t("div",J,[M,t("div",null,[t("p",Q,[o(e(s(n)("writingTipsThree1")),1),t("span",X,e(s(n)("writingTipsThree2")),1)]),Y])])])]),_:1})])}}});export{at as default}; diff --git a/niucloud/public/admin/assets/course-17d84e13.js b/niucloud/public/admin/assets/course-17d84e13.js new file mode 100644 index 0000000..8ba5e3d --- /dev/null +++ b/niucloud/public/admin/assets/course-17d84e13.js @@ -0,0 +1 @@ +import{d as m,O as h,f as u,h as w,c as f,a as s,u as t,t as e,N as n,e as r,w as a,i,E as v,_ as g}from"./index-6010b07e.js";/* empty css *//* empty css */const y=""+new URL("weapp_1-7017a047.png",import.meta.url).href,b=""+new URL("weapp_2-8fac7fa5.png",import.meta.url).href,T=""+new URL("weapp_3-07a2249e.png",import.meta.url).href,k=""+new URL("weapp_4-d837a9b1.png",import.meta.url).href,E={class:"main-container"},R={class:"detail-head"},j=s("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),C={class:"ml-[1px]"},L=s("span",{class:"adorn"},"|",-1),N={class:"right"},U={class:"mt-[20px]"},B={class:"flex"},O=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"1")],-1),V={class:"flex items-center text-[14px]"},q=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:y})],-1),F={class:"flex mt-[40px]"},P=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"2")],-1),S={class:"flex items-center text-[14px]"},z=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:b})],-1),A={class:"flex mt-[40px]"},D=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"3")],-1),K={class:"flex items-center text-[14px]"},$={class:"text-primary"},G=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:T})],-1),H={class:"flex mt-[40px]"},I=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"4")],-1),J={class:"flex items-center text-[14px]"},M=s("span",{class:"text-primary"},"URL / Token / EncondingAESKey",-1),Q=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:k})],-1),es=m({__name:"course",setup(W){const c=h(),p=u(),l=c.meta.title,d=()=>{window.open("https://mp.weixin.qq.com/","_blank")};return(X,o)=>{const _=v,x=g;return w(),f("div",E,[s("div",R,[s("div",{class:"left",onClick:o[0]||(o[0]=Y=>t(p).push({path:"/channel/weapp"}))},[j,s("span",C,e(t(n)("returnToPreviousPage")),1)]),L,s("span",N,e(t(l)),1)]),r(x,{class:"box-card !border-none",shadow:"never"},{default:a(()=>[s("div",U,[s("div",B,[O,s("div",null,[s("p",V,[i(e(t(n)("writingTipsOne1")),1),r(_,{link:"",type:"primary",onClick:d},{default:a(()=>[i(e(t(n)("writingTipsOne2")),1)]),_:1}),i(","+e(t(n)("writingTipsOne3")),1)]),q])]),s("div",F,[P,s("div",null,[s("p",S,e(t(n)("writingTipsTwo1")),1),z])]),s("div",A,[D,s("div",null,[s("p",K,[i(e(t(n)("writingTipsThree1")),1),s("span",$,e(t(n)("writingTipsThree2")),1)]),G])]),s("div",H,[I,s("div",null,[s("p",J,[i(e(t(n)("writingTipsFour1")),1),M,i(e(t(n)("writingTipsFour2")),1)]),Q])])])]),_:1})])}}});export{es as default}; diff --git a/niucloud/public/admin/assets/course-a965b567.js b/niucloud/public/admin/assets/course-a965b567.js new file mode 100644 index 0000000..158b63b --- /dev/null +++ b/niucloud/public/admin/assets/course-a965b567.js @@ -0,0 +1 @@ +import{d as g,O as y,f as v,r as b,n as C,h as R,c as T,a as s,u as t,t as e,N as a,e as o,w as i,i as c,E as k,al as L,am as U,_ as j}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import{g as E}from"./wechat-688fa021.js";const N=""+new URL("alipay1-029c00a2.png",import.meta.url).href,O=""+new URL("alipay2-f74219b9.png",import.meta.url).href,B=""+new URL("alipay3-0895ce6e.png",import.meta.url).href,V=""+new URL("alipay4-92fef352.png",import.meta.url).href,D=""+new URL("alipay4_1-ad9b08e3.jpg",import.meta.url).href,P=""+new URL("alipay4_2-cbaa820b.jpg",import.meta.url).href,q=""+new URL("alipay4_3-4a213289.jpg",import.meta.url).href,z=""+new URL("alipay4_4-7924cbdd.jpg",import.meta.url).href,S=""+new URL("alipay5-6dba1989.png",import.meta.url).href,W=""+new URL("alipay6-f1e18995.png",import.meta.url).href,$=""+new URL("alipay7-c805d7c0.png",import.meta.url).href,A=""+new URL("alipay8-3097d150.png",import.meta.url).href,F={class:"main-container"},G={class:"detail-head"},H=s("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1),I={class:"ml-[1px]"},J=s("span",{class:"adorn"},"|",-1),K={class:"right"},M={class:"mt-[20px]"},Q={class:"flex"},X=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"1")],-1),Y={class:"flex items-center text-[14px]"},Z=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:N})],-1),ss={class:"flex items-center text-[14px] mt-[20px]"},ts=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:O})],-1),es=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:B})],-1),as={class:"flex mt-[40px]"},os=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"2")],-1),is={class:"flex items-center text-[14px]"},ns={class:"w-[100%] mt-[10px] flex flex-wrap"},cs=s("div",{class:"w-[100%]"},[s("img",{class:"w-[100%]",src:V})],-1),rs=s("div",{class:"w-[100%]"},[s("img",{class:"w-[100%]",src:D})],-1),ps=s("div",{class:"w-[100%]"},[s("img",{class:"w-[100%]",src:P})],-1),ls=s("div",{class:"w-[100%]"},[s("img",{class:"w-[100%]",src:q})],-1),_s=s("div",{class:"w-[100%]"},[s("img",{class:"w-[100%]",src:z})],-1),ds={class:"flex mt-[40px]"},ms=s("div",{class:"min-w-[60px]"},[s("span",{class:"flex justify-center items-center block w-[40px] h-[40px] border-[1px] border-primary rounded-[999px] text-primary"},"3")],-1),xs={class:"flex items-center text-[14px]"},hs=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:S})],-1),us=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:W})],-1),ws={class:"flex items-center text-[14px] mt-[20px]"},fs=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:$})],-1),gs={class:"flex items-center text-[14px] mt-[20px]"},ys=s("div",{class:"w-[100%] mt-[10px]"},[s("img",{class:"w-[100%]",src:A})],-1),Us=g({__name:"course",setup(vs){const l=y(),_=v(),d=l.meta.title,m=b(!0),x=C({wechat_name:"",wechat_original:"",app_id:"",app_secret:"",qr_code:"",token:"",encoding_aes_key:"",encryption_type:"not_encrypt"});E().then(r=>{Object.assign(x,r.data),m.value=!1});const h=()=>{window.open("https://open.alipay.com/develop/manage","_blank")};return(r,p)=>{const u=k,n=L,w=U,f=j;return R(),T("div",F,[s("div",G,[s("div",{class:"left",onClick:p[0]||(p[0]=bs=>t(_).push({path:"/channel/aliapp"}))},[H,s("span",I,e(t(a)("returnToPreviousPage")),1)]),J,s("span",K,e(t(d)),1)]),o(f,{class:"box-card !border-none",shadow:"never"},{default:i(()=>[s("div",M,[s("div",Q,[X,s("div",null,[s("p",Y,[c(e(t(a)("alipayCourseTipsOne1"))+"--",1),o(u,{link:"",type:"primary",onClick:h},{default:i(()=>[c(e(t(a)("alipayCourseTipsOne2")),1)]),_:1}),c(", "+e(t(a)("alipayCourseTipsOne3")),1)]),Z,s("p",ss,e(t(a)("alipayCourseTipsTwo1")),1),ts,es])]),s("div",as,[os,s("div",null,[s("p",is,e(t(a)("alipayCourseTipsTwo2")),1),s("div",ns,[cs,s("div",null,[o(w,{gutter:20},{default:i(()=>[o(n,{span:6},{default:i(()=>[rs]),_:1}),o(n,{span:6},{default:i(()=>[ps]),_:1}),o(n,{span:6},{default:i(()=>[ls]),_:1}),o(n,{span:6},{default:i(()=>[_s]),_:1})]),_:1})])])])]),s("div",ds,[ms,s("div",null,[s("p",xs,e(t(a)("alipayCourseTipsThree1")),1),hs,us,s("p",ws,e(t(a)("alipayCourseTipsThree2")),1),fs,s("p",gs,e(t(a)("alipayCourseTipsThree3")),1),ys])])])]),_:1})])}}});export{Us as default}; diff --git a/niucloud/public/admin/assets/cron-56794c65.js b/niucloud/public/admin/assets/cron-56794c65.js new file mode 100644 index 0000000..3c24748 --- /dev/null +++ b/niucloud/public/admin/assets/cron-56794c65.js @@ -0,0 +1 @@ +import{d as T,n as z,r as k,h as c,c as h,e as a,w as r,u as o,N as n,i as p,t as i,a as b,y as F,I as $,W as B,X as N,cI as Y,E as I,Y as U,_ as L,af as S,ah as j,a3 as H,$ as M}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{S as R}from"./sys-0f76aff3.js";import{_ as W}from"./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js";/* empty css */const X={class:"main-container"},q={class:"mt-[16px]"},A={key:0},G={key:1},J={class:"mt-[16px] flex justify-end"},he=T({__name:"cron",setup(K){const e=z({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{title:"",type:"",last_time:""}}),y=k(),m=(d=1)=>{e.loading=!0,e.page=d,R({page:e.page,limit:e.limit,...e.searchParam}).then(l=>{e.loading=!1,e.data=l.data.data,e.total=l.data.total}).catch(()=>{e.loading=!1})};m();const _=k(null),w=d=>{_.value.setFormData(d),_.value.showDialog=!0};return(d,l)=>{const x=B,u=N,C=Y,f=I,D=U,v=L,s=S,E=j,P=H,V=M;return c(),h("div",X,[a(v,{class:"box-card !border-none",shadow:"never"},{default:r(()=>[a(v,{class:"box-card !border-none my-[16px] table-search-wrap",shadow:"never"},{default:r(()=>[a(D,{inline:!0,model:e.searchParam,ref_key:"searchFormRef",ref:y},{default:r(()=>[a(u,{label:o(n)("title"),prop:"title"},{default:r(()=>[a(x,{modelValue:e.searchParam.title,"onUpdate:modelValue":l[0]||(l[0]=t=>e.searchParam.title=t),placeholder:o(n)("titlePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(u,{label:o(n)("lastTime"),prop:"last_time"},{default:r(()=>[a(C,{modelValue:e.searchParam.last_time,"onUpdate:modelValue":l[1]||(l[1]=t=>e.searchParam.last_time=t),type:"datetimerange","value-format":"YYYY-MM-DD HH:mm:ss","start-placeholder":o(n)("startDate"),"end-placeholder":o(n)("endDate")},null,8,["modelValue","start-placeholder","end-placeholder"])]),_:1},8,["label"]),a(u,null,{default:r(()=>[a(f,{type:"primary",onClick:l[2]||(l[2]=t=>m())},{default:r(()=>[p(i(o(n)("search")),1)]),_:1}),a(f,{onClick:l[3]||(l[3]=t=>{var g;return(g=y.value)==null?void 0:g.resetFields()})},{default:r(()=>[p(i(o(n)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),b("div",q,[F((c(),$(E,{data:e.data,size:"large"},{empty:r(()=>[b("span",null,i(e.loading?"":o(n)("emptyData")),1)]),default:r(()=>[a(s,{prop:"title","show-overflow-tooltip":!0,label:o(n)("title"),"min-width":"150"},null,8,["label"]),a(s,{prop:"type_name",label:o(n)("typeName"),"min-width":"120"},null,8,["label"]),a(s,{label:o(n)("crondType"),"min-width":"180",align:"center"},{default:r(({row:t})=>[t.type=="crond"?(c(),h("span",A,i(t.crond_length)+i(t.crond_type_name),1)):(c(),h("span",G,i(o(n)("cron")),1))]),_:1},8,["label"]),a(s,{prop:"count",label:o(n)("count"),"min-width":"120"},null,8,["label"]),a(s,{label:o(n)("lastTime"),"min-width":"180",align:"center"},{default:r(({row:t})=>[p(i(t.last_time||""),1)]),_:1},8,["label"]),a(s,{label:o(n)("nextTime"),"min-width":"180",align:"center"},{default:r(({row:t})=>[p(i(t.next_time||""),1)]),_:1},8,["label"]),a(s,{label:o(n)("operation"),align:"right",fixed:"right",width:"100"},{default:r(({row:t})=>[a(f,{type:"primary",link:"",onClick:g=>w(t)},{default:r(()=>[p(i(o(n)("info")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[V,e.loading]]),b("div",J,[a(P,{"current-page":e.page,"onUpdate:current-page":l[4]||(l[4]=t=>e.page=t),"page-size":e.limit,"onUpdate:page-size":l[5]||(l[5]=t=>e.limit=t),layout:"total, sizes, prev, pager, next, jumper",total:e.total,onSizeChange:l[6]||(l[6]=t=>m()),onCurrentChange:m},null,8,["current-page","page-size","total"])])])]),_:1}),a(W,{ref_key:"cronDialog",ref:_,onComplete:m},null,512)])}}});export{he as default}; diff --git a/niucloud/public/admin/assets/cron-info-0c412e6c.js b/niucloud/public/admin/assets/cron-info-0c412e6c.js new file mode 100644 index 0000000..a891567 --- /dev/null +++ b/niucloud/public/admin/assets/cron-info-0c412e6c.js @@ -0,0 +1 @@ +import{_ as o}from"./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";export{o as default}; diff --git a/niucloud/public/admin/assets/cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js b/niucloud/public/admin/assets/cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js new file mode 100644 index 0000000..96a1f70 --- /dev/null +++ b/niucloud/public/admin/assets/cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js @@ -0,0 +1 @@ +import{d as E,r as m,n as N,q as V,h as r,I as h,w as e,a as n,e as o,i as B,t as l,u as a,N as s,y as F,c as b,X as T,Y as C,E as I,a7 as O,$ as R}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";const j={class:"input-width"},S={class:"input-width"},$={key:0,class:"input-width"},q={key:1,class:"input-width"},J={class:"input-width"},L={class:"input-width"},U={class:"input-width"},X={class:"input-width"},Y={class:"input-width"},z={class:"input-width"},A={class:"input-width"},G={class:"dialog-footer"},et=E({__name:"cron-info",setup(H,{expose:v}){const c=m(!1),u=m(!0),p={count:0,create_time:"",crond_length:"",crond_type:"",crond_type_name:"",data:"",delete_time:"",last_time:"",next_time:"",status_desc:"",title:"",type:"",type_name:"",update_time:""},t=N({...p}),y=m(),w=V(()=>({}));return v({showDialog:c,setFormData:async(_=null)=>{u.value=!0,Object.assign(t,p),_&&Object.keys(t).forEach(d=>{_[d]!=null&&(t[d]=_[d])}),u.value=!1}}),(_,d)=>{const i=T,g=C,x=I,D=O,k=R;return r(),h(D,{modelValue:c.value,"onUpdate:modelValue":d[1]||(d[1]=f=>c.value=f),title:a(s)("cronInfo"),width:"550px","destroy-on-close":!0},{footer:e(()=>[n("span",G,[o(x,{type:"primary",onClick:d[0]||(d[0]=f=>c.value=!1)},{default:e(()=>[B(l(a(s)("confirm")),1)]),_:1})])]),default:e(()=>[F((r(),h(g,{model:t,"label-width":"110px",ref_key:"formRef",ref:y,rules:a(w),class:"page-form"},{default:e(()=>[o(i,{label:a(s)("title")},{default:e(()=>[n("div",j,l(t.title),1)]),_:1},8,["label"]),o(i,{label:a(s)("typeName")},{default:e(()=>[n("div",S,l(t.type_name),1)]),_:1},8,["label"]),o(i,{label:a(s)("crondType")},{default:e(()=>[t.type=="crond"?(r(),b("div",$,l(t.crond_length)+" "+l(t.crond_type_name),1)):(r(),b("div",q,l(a(s)("cron")),1))]),_:1},8,["label"]),o(i,{label:a(s)("count")},{default:e(()=>[n("div",J,l(t.count),1)]),_:1},8,["label"]),o(i,{label:a(s)("task")},{default:e(()=>[n("div",L,l(t.task),1)]),_:1},8,["label"]),o(i,{label:a(s)("data")},{default:e(()=>[n("div",U,l(JSON.stringify(t.data)),1)]),_:1},8,["label"]),o(i,{label:a(s)("statusDesc")},{default:e(()=>[n("div",X,l(t.status_desc),1)]),_:1},8,["label"]),o(i,{label:a(s)("lastTime")},{default:e(()=>[n("div",Y,l(t.last_time),1)]),_:1},8,["label"]),o(i,{label:a(s)("nextTime")},{default:e(()=>[n("div",z,l(t.next_time),1)]),_:1},8,["label"]),o(i,{label:a(s)("createTime")},{default:e(()=>[n("div",A,l(t.create_time),1)]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[k,u.value]])]),_:1},8,["modelValue","title"])}}});export{et as _}; diff --git a/niucloud/public/admin/assets/decorate.edit-e6b85004.js b/niucloud/public/admin/assets/decorate.edit-e6b85004.js new file mode 100644 index 0000000..1195bae --- /dev/null +++ b/niucloud/public/admin/assets/decorate.edit-e6b85004.js @@ -0,0 +1 @@ +const t="开发环境配置",e="wap域名(WAP_DOMAIN)",o="请输入wap域名",a="页面设置",n="内容",c="样式",i="页面样式",l="页面内容",s="页面名称",r="请输入页面名称",g="页面颜色",p="背景图片",m="边距设置",d="组件样式",h="底部背景",S="底部背景包含边距和圆角",N="组件背景",C="上边距",v="下边距",T="左右边距",u="上圆角",y="下圆角",b="温馨提示",A="确定离开此页面?",P="系统可能不会保存您所做的更改。",x="正在装修",M="上移",w="下移",H="复制",B="删除",I="重置",f="底部导航",k="此处控制当前页面底部导航菜单是否显示",R="链接地址",D="确定要删除吗?",U="无法复制",W="组件只能添加",z="个",F="确认要重置组件默认数据吗?",G="图片上传",L="图片上传",E="图片设置",O="建议上传尺寸相同的图片,推荐尺寸750*350",V="添加图片",_="请上传图片",j="图片高度",q="请输入图片高度",J="图片高度格式错误,请输入数字",K="文章数据",Q="文章样式",X="文章背景",Y="数据来源",Z="默认",$="手动选择",tt="文章数量",et="请选择",ot="文章选择",at="标题",nt="封面",ct="栏目",it="摘要",lt="已选",st="请选择文章",rt="导航模式",gt="排版模式",pt="横排",mt="竖排",dt="选择模式",ht="图文导航",St="图片导航",Nt="文字导航",Ct="图片设置",vt="图片大小",Tt="图片圆角",ut="展示风格",yt="固定显示",bt="单行滑动",At="分页滑动",Pt="每行数量",xt="每行数量",Mt="导航设置",wt="行",Ht="建议上传尺寸相同的图片,推荐尺寸60*60",Bt="标题",It="请输入标题",ft="添加导航",kt="高度设置",Rt="空白高度",Dt="风格设置",Ut="标题样式",Wt="风格选择",zt="标题内容",Ft="标题名称",Gt="请输入标题",Lt="对齐方式",Et="居左",Ot="居中",Vt="文字设置",_t="文字大小",jt="文字粗细",qt="加粗",Jt="常规",Kt="文字颜色",Qt="标题内容",Xt="副标题",Yt="请输入副标题",Zt="“更多”按钮内容",$t="文字",te="请输入文字",ee="是否显示",oe="会员样式",ae="模板",ne="图片间隙",ce="魔方样式",ie="热区",le="热区设置",se="添加热区",re="个热区",ge="热区管理",pe="请选择热区",me="的链接地址",de={developTitle:t,wapDomain:e,wapDomainPlaceholder:o,pageSet:a,tabEditContent:n,tabEditStyle:c,pageStyle:i,pageContent:l,pageName:s,pageNamePlaceholder:r,pageBgColor:g,bgUrl:p,marginSet:m,componentStyleTitle:d,bottomBgColor:h,bottomBgTips:S,componentBgColor:N,marginTop:C,marginBottom:v,marginBoth:T,topRounded:u,bottomRounded:y,warmPrompt:b,leavePageTitleTips:A,leavePageContentTips:P,decorating:x,moveUpComponent:M,moveDownComponent:w,copyComponent:H,delComponent:B,resetComponent:I,tabbar:f,tabbarSwitchTips:k,link:R,delComponentTips:D,notCopy:U,componentCanOnlyAdd:W,piece:z,resetComponentTips:F,image:G,imageUpload:L,imageSet:E,imageAdsTips:O,addImageAd:V,imageUrlTip:_,imageHeight:j,imageHeightPlaceholder:q,imageHeightRegNum:J,articleData:K,articleStyle:Q,articleBgColor:X,dataSources:Y,defaultSources:Z,manualSelectionSources:$,articleNum:tt,selectPlaceholder:et,selectArticleTips:ot,articleTitle:at,articleImage:nt,articleCategoryName:ct,articleSummary:it,selected:lt,selectArticleTip:st,graphicNavModeTitle:rt,layoutMode:gt,layoutModeHorizontal:pt,layoutModeVertical:mt,graphicNavSelectMode:dt,graphicNavModeGraphic:ht,graphicNavModeImg:St,graphicNavModeText:Nt,graphicNavImageSet:Ct,graphicNavImageSize:vt,graphicNavAroundRadius:Tt,graphicNavShowStyle:ut,graphicNavStyleFixed:yt,graphicNavStyleSingleSlide:bt,graphicNavStylePageSlide:At,graphicNavRowCount:Pt,graphicNavPageCount:xt,graphicNavSetLabel:Mt,line:wt,graphicNavTips:Ht,graphicNavTitle:Bt,graphicNavTitlePlaceholder:It,addGraphicNav:ft,blankHeightSet:kt,blankHeight:Rt,styleSet:Dt,titleStyle:Ut,selectStyle:Wt,titleContent:zt,title:Ft,titlePlaceholder:Gt,textAlign:Lt,textAlignLeft:Et,textAlignCenter:Ot,textSet:Vt,textFontSize:_t,textFontWeight:jt,fontWeightBold:qt,fontWeightNormal:Jt,textColor:Kt,subTitleContent:Qt,subTitle:Xt,subTitlePlaceholder:Yt,moreContent:Zt,more:$t,morePlaceholder:te,moreIsShow:ee,memberStyle:oe,template:ae,imageGap:ne,rubikCubeStyle:ce,hotArea:ie,hotAreaSet:le,addHotArea:se,selectedAfterHotArea:re,hotAreaManage:ge,selectedHotArea:pe,hotAreaLink:me};export{ft as addGraphicNav,se as addHotArea,V as addImageAd,X as articleBgColor,ct as articleCategoryName,K as articleData,nt as articleImage,tt as articleNum,Q as articleStyle,it as articleSummary,at as articleTitle,p as bgUrl,Rt as blankHeight,kt as blankHeightSet,h as bottomBgColor,S as bottomBgTips,y as bottomRounded,N as componentBgColor,W as componentCanOnlyAdd,d as componentStyleTitle,H as copyComponent,Y as dataSources,x as decorating,de as default,Z as defaultSources,B as delComponent,D as delComponentTips,t as developTitle,qt as fontWeightBold,Jt as fontWeightNormal,Tt as graphicNavAroundRadius,Ct as graphicNavImageSet,vt as graphicNavImageSize,ht as graphicNavModeGraphic,St as graphicNavModeImg,Nt as graphicNavModeText,rt as graphicNavModeTitle,xt as graphicNavPageCount,Pt as graphicNavRowCount,dt as graphicNavSelectMode,Mt as graphicNavSetLabel,ut as graphicNavShowStyle,yt as graphicNavStyleFixed,At as graphicNavStylePageSlide,bt as graphicNavStyleSingleSlide,Ht as graphicNavTips,Bt as graphicNavTitle,It as graphicNavTitlePlaceholder,ie as hotArea,me as hotAreaLink,ge as hotAreaManage,le as hotAreaSet,G as image,O as imageAdsTips,ne as imageGap,j as imageHeight,q as imageHeightPlaceholder,J as imageHeightRegNum,E as imageSet,L as imageUpload,_ as imageUrlTip,gt as layoutMode,pt as layoutModeHorizontal,mt as layoutModeVertical,P as leavePageContentTips,A as leavePageTitleTips,wt as line,R as link,$ as manualSelectionSources,T as marginBoth,v as marginBottom,m as marginSet,C as marginTop,oe as memberStyle,$t as more,Zt as moreContent,ee as moreIsShow,te as morePlaceholder,w as moveDownComponent,M as moveUpComponent,U as notCopy,g as pageBgColor,l as pageContent,s as pageName,r as pageNamePlaceholder,a as pageSet,i as pageStyle,z as piece,I as resetComponent,F as resetComponentTips,ce as rubikCubeStyle,st as selectArticleTip,ot as selectArticleTips,et as selectPlaceholder,Wt as selectStyle,lt as selected,re as selectedAfterHotArea,pe as selectedHotArea,Dt as styleSet,Xt as subTitle,Qt as subTitleContent,Yt as subTitlePlaceholder,n as tabEditContent,c as tabEditStyle,f as tabbar,k as tabbarSwitchTips,ae as template,Lt as textAlign,Ot as textAlignCenter,Et as textAlignLeft,Kt as textColor,_t as textFontSize,jt as textFontWeight,Vt as textSet,Ft as title,zt as titleContent,Gt as titlePlaceholder,Ut as titleStyle,u as topRounded,e as wapDomain,o as wapDomainPlaceholder,b as warmPrompt}; diff --git a/niucloud/public/admin/assets/decorate.preview-902d21f3.js b/niucloud/public/admin/assets/decorate.preview-902d21f3.js new file mode 100644 index 0000000..4968d14 --- /dev/null +++ b/niucloud/public/admin/assets/decorate.preview-902d21f3.js @@ -0,0 +1 @@ +const e="预览",o="微信小程序",c="微信公众号",p="链接",t="复制",a="复制成功",n="小程序未配置",s="开发环境配置",w="wap域名(WAP_DOMAIN)",i="请输入wap域名",l={preview:e,weapp:o,wechat:c,link:p,copy:t,copySuccess:a,weappNotSet:n,developTitle:s,wapDomain:w,wapDomainPlaceholder:i};export{t as copy,a as copySuccess,l as default,s as developTitle,p as link,e as preview,w as wapDomain,i as wapDomainPlaceholder,o as weapp,n as weappNotSet,c as wechat}; diff --git a/niucloud/public/admin/assets/default_headimg-a897263d.js b/niucloud/public/admin/assets/default_headimg-a897263d.js new file mode 100644 index 0000000..6671ce5 --- /dev/null +++ b/niucloud/public/admin/assets/default_headimg-a897263d.js @@ -0,0 +1 @@ +const e=""+new URL("member_head-1e927329.png",import.meta.url).href;export{e as _}; diff --git a/niucloud/public/admin/assets/detail-4ddc2d10.js b/niucloud/public/admin/assets/detail-4ddc2d10.js new file mode 100644 index 0000000..762a5b6 --- /dev/null +++ b/niucloud/public/admin/assets/detail-4ddc2d10.js @@ -0,0 +1 @@ +import{d as k,cM as x,O as N,f as D,r as c,h as u,c as I,y as B,I as p,w as t,a,t as l,u as s,N as o,e as i,B as C,X as F,_ as M,Y as R,$ as E}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{g as T}from"./order-35500d85.js";const S={class:"main-container"},V={class:"panel-title"},$={class:"input-width"},O={class:"input-width"},q={class:"input-width"},L={class:"input-width"},X={class:""},Y={class:""},j={class:"input-width"},z={class:"input-width"},A={class:"input-width"},G={class:"input-width"},H={class:"input-width"},J={class:"input-width"},K={class:"input-width"},P={class:"input-width"},oe=k({__name:"detail",setup(Q){x();const f=N(),v=D(),m=parseInt(f.query.order_id),d=c(!0),e=c(null);m?(async(n=0)=>{d.value=!0,e.value=null,await T(n).then(({data:_})=>{e.value=_}).catch(()=>{}),d.value=!1})(m):d.value=!1;const b=c(),h=n=>{v.push(`/member/detail?id=${n}`)};return(n,_)=>{const r=F,w=M,y=R,g=E;return u(),I("div",S,[B((u(),p(y,{model:e.value,"label-width":"150px",ref_key:"formRef",ref:b,class:"page-form"},{default:t(()=>[e.value?(u(),p(w,{key:0,class:"box-card !border-none relative",shadow:"never"},{default:t(()=>[a("h3",V,l(s(o)("orderInfo")),1),i(r,{label:s(o)("orderNo")},{default:t(()=>[a("div",$,l(e.value.order_no),1)]),_:1},8,["label"]),i(r,{label:s(o)("orderMoney")},{default:t(()=>[a("div",O,l(e.value.order_money),1)]),_:1},8,["label"]),i(r,{label:s(o)("orderDiscountMoney")},{default:t(()=>[a("div",q,l(e.value.order_discount_money),1)]),_:1},8,["label"]),i(r,{label:s(o)("member")},{default:t(()=>[a("div",L,[a("div",{class:"flex flex flex-col cursor-pointer",onClick:_[0]||(_[0]=W=>h(e.value.member_id))},[a("span",X,l(e.value.member.nickname||""),1),a("span",Y,l(e.value.member.mobile||""),1)])])]),_:1},8,["label"]),i(r,{label:s(o)("ip")},{default:t(()=>[a("div",j,l(e.value.ip),1)]),_:1},8,["label"]),i(r,{label:s(o)("orderFromName")},{default:t(()=>[a("div",z,l(e.value.order_from_name),1)]),_:1},8,["label"]),i(r,{label:s(o)("orderStatus")},{default:t(()=>[a("div",A,l(e.value.order_status_info.name),1)]),_:1},8,["label"]),i(r,{label:s(o)("payTypeName")},{default:t(()=>[a("div",G,l(e.value.pay_type_name),1)]),_:1},8,["label"]),i(r,{label:s(o)("createTime")},{default:t(()=>[a("div",H,l(e.value.create_time||""),1)]),_:1},8,["label"]),i(r,{label:s(o)("payTime")},{default:t(()=>[a("div",J,l(e.value.pay_time||""),1)]),_:1},8,["label"]),i(r,{label:s(o)("remark")},{default:t(()=>[a("div",K,l(e.value.remark||""),1)]),_:1},8,["label"]),i(r,{label:s(o)("memberMessage")},{default:t(()=>[a("div",P,l(e.value.member_message||""),1)]),_:1},8,["label"])]),_:1})):C("",!0)]),_:1},8,["model"])),[[g,d.value]])])}}});export{oe as default}; diff --git a/niucloud/public/admin/assets/detection-1cfbea40.js b/niucloud/public/admin/assets/detection-1cfbea40.js new file mode 100644 index 0000000..84e7234 --- /dev/null +++ b/niucloud/public/admin/assets/detection-1cfbea40.js @@ -0,0 +1 @@ +import{d as w,O as S,r as h,a0 as v,y as k,u as t,h as i,c as d,I as C,w as n,a as s,t as c,N as a,e,B,af as E,ah as N,a1 as z,_ as D,$ as I}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{v as V}from"./tools-8d764897.js";const j={class:"main-container attachment-container min-h-[80vh]"},O={class:"flex justify-between items-center"},T={class:"text-[20px]"},L={class:"bg-[#fff] pb-[20px] mb-3"},R={class:"pt-[20px] pb-[10px] text-sm"},$={class:"text-[14px]"},q={class:"bg-[#fff] pb-[20px] mb-3"},A={class:"py-[20px] text-sm"},F={class:"text-[14px]"},G={class:"bg-[#fff] pb-[20px] mb-3"},H={class:"py-[20px] text-sm"},J={class:"text-[14px]"},K={key:0},M={key:1},P={class:"bg-[#fff] pb-[20px] mb-3"},Q={class:"py-[20px] text-sm"},U={class:"text-[14px]"},W={key:0},X={key:1},me=w({__name:"detection",setup(Y){const g=S().meta.title,o=h({});let m=h(!0);return(()=>{V().then(u=>{o.value=u.data,m.value=!1})})(),(u,te)=>{const l=E,r=N,f=v("Select"),_=z,b=v("CloseBold"),x=D,y=I;return k((i(),d("div",j,[Object.keys(o.value).length?(i(),C(x,{key:0,class:"box-card !border-none",shadow:"never"},{default:n(()=>[s("div",O,[s("span",T,c(t(g)),1)]),s("div",L,[s("p",R,c(t(a)("serverInformation")),1),s("div",$,[e(r,{data:o.value.server,size:"large"},{default:n(()=>[e(l,{prop:"name",label:t(a)("environment"),align:"left","min-width":"200"},null,8,["label"]),e(l,{prop:"server",label:t(a)("version"),align:"left","min-width":"140"},null,8,["label"])]),_:1},8,["data"])])]),s("div",q,[s("p",A,c(t(a)("systemDemand")),1),s("div",F,[e(r,{data:o.value.server_version,size:"large"},{default:n(()=>[e(l,{prop:"name",label:t(a)("environment"),align:"left","min-width":"200"},null,8,["label"]),e(l,{prop:"demand",label:t(a)("demand"),align:"left","min-width":"140"},null,8,["label"]),e(l,{prop:"server",label:t(a)("version"),align:"left","min-width":"140"},null,8,["label"])]),_:1},8,["data"])])]),s("div",G,[s("p",H,c(t(a)("authorityStatus")),1),s("div",J,[e(r,{data:o.value.system_variables,size:"large"},{default:n(()=>[e(l,{prop:"name",label:t(a)("name"),align:"left","min-width":"200"},null,8,["label"]),e(l,{prop:"need",label:t(a)("demand"),align:"left","min-width":"140"},null,8,["label"]),e(l,{label:t(a)("status"),align:"left","min-width":"140"},{default:n(({row:p})=>[p.status?(i(),d("span",K,[e(_,{color:"green"},{default:n(()=>[e(f)]),_:1})])):(i(),d("span",M,[e(_,{color:"red"},{default:n(()=>[e(b)]),_:1})]))]),_:1},8,["label"])]),_:1},8,["data"])])]),s("div",P,[s("p",Q,c(t(a)("process")),1),s("div",U,[e(r,{data:o.value.process,size:"large"},{default:n(()=>[e(l,{prop:"name",label:t(a)("name"),align:"left","min-width":"200"},null,8,["label"]),e(l,{prop:"need",label:t(a)("demand"),align:"left","min-width":"140"},null,8,["label"]),e(l,{label:t(a)("status"),align:"left","min-width":"140"},{default:n(({row:p})=>[p.status?(i(),d("span",W,[e(_,{color:"green"},{default:n(()=>[e(f)]),_:1})])):(i(),d("span",X,[e(_,{color:"red"},{default:n(()=>[e(b)]),_:1})]))]),_:1},8,["label"])]),_:1},8,["data"])])])]),_:1})):B("",!0)])),[[y,t(m)]])}}});export{me as default}; diff --git a/niucloud/public/admin/assets/detection-21d58aad.css b/niucloud/public/admin/assets/detection-21d58aad.css new file mode 100644 index 0000000..dd512e0 --- /dev/null +++ b/niucloud/public/admin/assets/detection-21d58aad.css @@ -0,0 +1 @@ +.items{border-bottom:1px solid #eee} diff --git a/niucloud/public/admin/assets/developer-25adcf57.png b/niucloud/public/admin/assets/developer-25adcf57.png new file mode 100644 index 0000000..8ffd37b Binary files /dev/null and b/niucloud/public/admin/assets/developer-25adcf57.png differ diff --git a/niucloud/public/admin/assets/developer_token-12d21183.js b/niucloud/public/admin/assets/developer_token-12d21183.js new file mode 100644 index 0000000..85554e7 --- /dev/null +++ b/niucloud/public/admin/assets/developer_token-12d21183.js @@ -0,0 +1 @@ +import{d as w,r as i,n as y,N as l,h as _,c as E,y as T,I as V,w as n,e as s,a as c,t as d,u as r,i as B,W as D,X as C,E as N,_ as I,Y as R,$ as F}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{T as P,U}from"./sys-0f76aff3.js";const $={class:"main-container"},q={class:"panel-title !text-sm"},L={class:"text-[14px] text-[#a9a9a9] leading-tight mt-[10px]"},J=w({__name:"developer_token",setup(S){const e=i(!0),o=i({token:""});P().then(({data:t})=>{e.value=!1,t.token&&(o.value=t)}).catch();const u=i(),v=y({token:[{required:!0,message:l("tokenPlaceholder"),trigger:"blur"}]}),f=async t=>{e.value||!t||await t.validate(async a=>{a&&(e.value=!0,U(o.value).then(()=>{e.value=!1}).catch(()=>{e.value=!1}))})};return(t,a)=>{const k=D,m=C,h=N,g=I,x=R,b=F;return _(),E("div",$,[T((_(),V(x,{model:o.value,"label-width":"0",ref_key:"formRef",ref:u,rules:v,class:"page-form"},{default:n(()=>[s(g,{class:"box-card !border-none",shadow:"never"},{default:n(()=>[c("h3",q,d(r(l)("developerTokenEdit")),1),s(m,{label:"",prop:"token"},{default:n(()=>[c("div",null,[s(k,{modelValue:o.value.token,"onUpdate:modelValue":a[0]||(a[0]=p=>o.value.token=p),placeholder:r(l)("tokenPlaceholder"),class:"input-width",clearable:"",maxlength:"30"},null,8,["modelValue","placeholder"])]),c("div",L,d(r(l)("tokenTips")),1)]),_:1}),s(m,{label:""},{default:n(()=>[s(h,{type:"primary",loading:e.value,onClick:a[1]||(a[1]=p=>f(u.value))},{default:n(()=>[B(d(r(l)("save")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model","rules"])),[[b,e.value]])])}}});export{J as default}; diff --git a/niucloud/public/admin/assets/dict-3e5bfbe1.js b/niucloud/public/admin/assets/dict-3e5bfbe1.js new file mode 100644 index 0000000..8939bcd --- /dev/null +++ b/niucloud/public/admin/assets/dict-3e5bfbe1.js @@ -0,0 +1 @@ +import{aJ as e}from"./index-6010b07e.js";function c(t){return e.get("dict/dict",{params:t})}function i(t){return e.get(`dict/dict/${t}`)}function u(t){return e.post("dict/dict",t,{showErrorMessage:!0,showSuccessMessage:!0})}function n(t){return e.put(`dict/dict/${t.id}`,t,{showErrorMessage:!0,showSuccessMessage:!0})}function o(t){return e.delete(`dict/dict/${t}`,{showErrorMessage:!0,showSuccessMessage:!0})}function a(t,s){return e.put(`dict/dictionary/${t}`,s,{showErrorMessage:!0,showSuccessMessage:!0})}function d(){return e.get("dict/all")}function g(t){return e.get(`dict/dictionary/type/${t}`)}export{u as a,c as b,d as c,o as d,n as e,i as g,a as s,g as u}; diff --git a/niucloud/public/admin/assets/dict-5908cbf4.js b/niucloud/public/admin/assets/dict-5908cbf4.js new file mode 100644 index 0000000..0a36953 --- /dev/null +++ b/niucloud/public/admin/assets/dict-5908cbf4.js @@ -0,0 +1 @@ +import{_ as o}from"./dict.vue_vue_type_style_index_0_lang-8df6262f.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./dict-3e5bfbe1.js";export{o as default}; diff --git a/niucloud/public/admin/assets/dict.list-7d009441.js b/niucloud/public/admin/assets/dict.list-7d009441.js new file mode 100644 index 0000000..855d5c9 --- /dev/null +++ b/niucloud/public/admin/assets/dict.list-7d009441.js @@ -0,0 +1 @@ +const a="字典名称",e="请输入字典名称",t="字典关键词",c="请输入字典关键词",o="字典数据",d="请输入字典数据",l="备注",s="请输入备注",n="添加数据字典",m="编辑数据字典",r="确定要删除该数据吗?",i="数据管理",h="添加数据",D="编辑数据",P="数据名称",u="请输入数据名称",p="数据值",k="请输入数据值",y="数值越大越排前",N="请输入备注",T="创建时间",V={name:a,namePlaceholder:e,key:t,keyPlaceholder:c,data:o,dataPlaceholder:d,memo:l,memoPlaceholder:s,addDict:n,updateDict:m,dictDeleteTips:r,dictData:i,addDictData:h,editDictData:D,dataName:P,dataNamePlaceholder:u,dataValue:p,dataValuePlaceholder:k,sortPlaceholder:y,momePlaceholder:N,createTime:T};export{n as addDict,h as addDictData,T as createTime,o as data,P as dataName,u as dataNamePlaceholder,d as dataPlaceholder,p as dataValue,k as dataValuePlaceholder,V as default,i as dictData,r as dictDeleteTips,D as editDictData,t as key,c as keyPlaceholder,l as memo,s as memoPlaceholder,N as momePlaceholder,a as name,e as namePlaceholder,y as sortPlaceholder,m as updateDict}; diff --git a/niucloud/public/admin/assets/dict.vue_vue_type_style_index_0_lang-8df6262f.js b/niucloud/public/admin/assets/dict.vue_vue_type_style_index_0_lang-8df6262f.js new file mode 100644 index 0000000..f56f711 --- /dev/null +++ b/niucloud/public/admin/assets/dict.vue_vue_type_style_index_0_lang-8df6262f.js @@ -0,0 +1 @@ +import{d as W,r as i,q as X,N as l,h as U,I,w as n,a as g,e as t,i as c,t as r,u as a,y as Y,cx as y,E as A,af as G,ah as H,W as K,X as M,aE as Q,Y as Z,a7 as ee,$ as le}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{s as ae,g as te}from"./dict-3e5bfbe1.js";const oe={class:"mb-[10px]"},ne={class:"dialog-footer"},ue={class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"},se={class:"dialog-footer"},ke=W({__name:"dict",emits:["complete"],setup(ie,{expose:P,emit:$}){const v=i(!1),f=i(!1),_=i(!1),m=i([]),x=i(),V=i("add"),k=i(),w=i(""),h={name:"",value:"",sort:0,memo:""},u=i({...h}),F=X(()=>({name:[{required:!0,message:l("dataNamePlaceholder"),trigger:"blur"}],value:[{required:!0,message:l("dataValuePlaceholder"),trigger:"blur"}]})),B=()=>{V.value="add",u.value=y(h),_.value=!0},C=i(0),q=(s,e)=>{V.value="edit",C.value=e,u.value=y(h),u.value=Object.assign(u.value,y(s)),_.value=!0},R=async s=>{s&&await s.validate(async e=>{e&&(V.value!="edit"?m.value.push(y(u.value)):m.value.splice(C.value,1,y(u.value)),m.value.sort(function(d,p){return p.sort-d.sort}),_.value=!1)})},T=s=>{m.value.splice(s,1)},O=async()=>{f.value=!0,ae(x.value,{dictionary:JSON.stringify(m.value)}).then(s=>{f.value=!1,v.value=!1,$("complete")}).catch(()=>{f.value=!1})};return P({showDialog:v,setFormData:async(s=null)=>{v.value=!0,f.value=!0,x.value=s.id,w.value=s.name;const e=await(await te(s.id)).data;m.value=e.dictionary,f.value=!1}}),(s,e)=>{const d=A,p=G,S=H,D=K,b=M,j=Q,z=Z,E=ee,J=le;return U(),I(E,{modelValue:v.value,"onUpdate:modelValue":e[10]||(e[10]=o=>v.value=o),title:a(l)("dictData"),width:"60%",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:n(()=>[g("span",ne,[t(d,{onClick:e[0]||(e[0]=o=>v.value=!1)},{default:n(()=>[c(r(a(l)("cancel")),1)]),_:1}),t(d,{type:"primary",onClick:e[1]||(e[1]=o=>O())},{default:n(()=>[c(r(a(l)("confirm")),1)]),_:1})])]),default:n(()=>[g("div",oe,[t(d,{type:"primary",onClick:B},{default:n(()=>[c(r(a(l)("addDictData")),1)]),_:1})]),Y((U(),I(S,{data:m.value,size:"large"},{default:n(()=>[t(p,{label:a(l)("dataName"),prop:"name"},null,8,["label"]),t(p,{label:a(l)("dataValue"),prop:"value"},null,8,["label"]),t(p,{label:a(l)("sort"),align:"center","min-width":"100px",prop:"sort"},null,8,["label"]),t(p,{label:a(l)("memo"),prop:"memo"},null,8,["label"]),t(p,{label:a(l)("operation"),align:"right",fixed:"right",width:"120"},{default:n(({row:o,$index:N})=>[t(d,{type:"primary",link:"",onClick:L=>q(o,N)},{default:n(()=>[c(r(a(l)("edit")),1)]),_:2},1032,["onClick"]),t(d,{type:"primary",link:"",onClick:L=>T(N)},{default:n(()=>[c(r(a(l)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[J,f.value]]),t(E,{modelValue:_.value,"onUpdate:modelValue":e[9]||(e[9]=o=>_.value=o),title:V.value!="edit"?a(l)("addDictData"):a(l)("editDictData"),width:"480",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:n(()=>[g("span",se,[t(d,{onClick:e[7]||(e[7]=o=>_.value=!1)},{default:n(()=>[c(r(a(l)("cancel")),1)]),_:1}),t(d,{type:"primary",onClick:e[8]||(e[8]=o=>R(k.value))},{default:n(()=>[c(r(a(l)("confirm")),1)]),_:1})])]),default:n(()=>[t(z,{model:u.value,"label-width":"120px",ref_key:"formRef",ref:k,rules:a(F),class:"page-form"},{default:n(()=>[t(b,{label:a(l)("name")},{default:n(()=>[t(D,{modelValue:w.value,"onUpdate:modelValue":e[2]||(e[2]=o=>w.value=o),disabled:"",class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),t(b,{label:a(l)("dataName"),prop:"name"},{default:n(()=>[t(D,{modelValue:u.value.name,"onUpdate:modelValue":e[3]||(e[3]=o=>u.value.name=o),clearable:"",placeholder:a(l)("dataNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(b,{label:a(l)("dataValue"),prop:"value"},{default:n(()=>[t(D,{modelValue:u.value.value,"onUpdate:modelValue":e[4]||(e[4]=o=>u.value.value=o),clearable:"",placeholder:a(l)("dataValuePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(b,{label:a(l)("sort"),prop:"sort"},{default:n(()=>[g("div",null,[t(j,{modelValue:u.value.sort,"onUpdate:modelValue":e[5]||(e[5]=o=>u.value.sort=o),":step":1,"step-strictly":"","value-on-clear":0,min:0,class:"input-width"},null,8,["modelValue"]),g("p",ue,r(a(l)("sortPlaceholder")),1)])]),_:1},8,["label"]),t(b,{label:a(l)("memo")},{default:n(()=>[t(D,{modelValue:u.value.memo,"onUpdate:modelValue":e[6]||(e[6]=o=>u.value.memo=o),type:"textarea",clearable:"",placeholder:a(l)("momePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])]),_:1},8,["modelValue","title"])}}});export{ke as _}; diff --git a/niucloud/public/admin/assets/diy-5ff717bd.js b/niucloud/public/admin/assets/diy-5ff717bd.js new file mode 100644 index 0000000..1fcfbab --- /dev/null +++ b/niucloud/public/admin/assets/diy-5ff717bd.js @@ -0,0 +1 @@ +import{aJ as t}from"./index-6010b07e.js";function s(e){return t.get("diy/diy",{params:e})}function n(e){return t.post("diy/diy",e,{showSuccessMessage:!0})}function u(e){return t.put(`diy/diy/${e.id}`,e,{showSuccessMessage:!0})}function r(e){return t.put("diy/use",e,{showSuccessMessage:!0})}function o(e){return t.put("diy/diy/share",e,{showSuccessMessage:!0})}function a(e){return t.delete(`diy/diy/${e}`,{showSuccessMessage:!0})}function g(e){return t.get("diy/init",{params:e})}function c(e){return t.get("diy/link",{params:e})}function y(e){return t.get("diy/bottom",{params:e})}function d(e){return t.get("diy/bottom/config",{params:e})}function f(e){return t.post("diy/bottom",e,{showSuccessMessage:!0})}function p(e){return t.get("diy/template",{params:e})}function D(e){return t.get("diy/template/pages",{params:e})}function h(e){return t.get("diy/route",{params:e})}function m(){return t.get("diy/route/apps")}function S(e){return t.get("diy/route/info",{params:e})}function l(e){return t.put("diy/route/share",e,{showSuccessMessage:!0})}function P(e){return t.get("diy/decorate",{params:e})}function w(e){return t.put("diy/change",e,{showSuccessMessage:!0})}function M(e){return t.get("diy/apps")}export{D as a,n as b,P as c,w as d,u as e,M as f,c as g,p as h,g as i,s as j,a as k,o as l,m,h as n,S as o,l as p,y as q,d as r,r as s,f as t}; diff --git a/niucloud/public/admin/assets/diy-8d93d096.js b/niucloud/public/admin/assets/diy-8d93d096.js new file mode 100644 index 0000000..2839995 --- /dev/null +++ b/niucloud/public/admin/assets/diy-8d93d096.js @@ -0,0 +1 @@ +import{cy as u,cx as o,au as a,a5 as s,N as r,a2 as i}from"./index-6010b07e.js";const h=u("diy",{state:()=>({id:0,load:!1,currentIndex:-99,currentComponent:"edit-page",pageMode:"diy",editTab:"content",name:"",type:"",typeName:"",templateName:"",isDefault:0,predefineColors:["#F4391c","#ff4500","#ff8c00","#FFD009","#ffd700","#19C650","#90ee90","#00ced1","#1e90ff","#c71585","#FF407E","#CFAF70","#A253FF","rgba(255, 69, 0, 0.68)","rgb(255, 120, 0)","hsl(181, 100%, 37%)","hsla(209, 100%, 56%, 0.73)","#c7158577"],components:[],global:{title:"页面",pageBgColor:"",bgUrl:"",imgWidth:"",imgHeight:"",topStatusBar:{bgColor:"#ffffff",isTransparent:!1,isShow:!0,style:"style-1",textColor:"#333333",textAlign:"center"},bottomTabBarSwitch:!0,popWindow:{imgUrl:"",imgWidth:"",imgHeight:"",count:-1,show:0,link:{name:""}},template:{textColor:"#303133",pageBgColor:"",componentBgColor:"",topRounded:0,bottomRounded:0,elementBgColor:"",topElementRounded:0,bottomElementRounded:0,margin:{top:0,bottom:0,both:0}}},value:[]}),getters:{editComponent:e=>e.currentIndex==-99?e.global:e.value[e.currentIndex]},actions:{init(){this.global={title:"页面",pageBgColor:"",bgUrl:"",imgWidth:"",imgHeight:"",topStatusBar:{bgColor:"#ffffff",isTransparent:!1,isShow:!0,style:"style-1",textColor:"#333333",textAlign:"center"},bottomTabBarSwitch:!0,popWindow:{imgUrl:"",imgWidth:"",imgHeight:"",count:-1,show:0,link:{name:""}},template:{textColor:"#303133",pageBgColor:"",componentBgColor:"",topRounded:0,bottomRounded:0,elementBgColor:"",topElementRounded:0,bottomElementRounded:0,margin:{top:0,bottom:0,both:0}}},this.value=[]},addComponent(e,n){if(!this.load)return;let t=o(n);if(t.id=this.generateRandom(),t.componentName=e,t.componentTitle=t.title,t.ignore=[],Object.assign(t,t.value),delete t.title,delete t.value,delete t.type,delete t.icon,t.template)Object.assign(t,t.template),delete t.template;else{let l=o(this.global.template);Object.assign(t,l)}this.checkComponentIsAdd(t)&&(this.currentIndex===-99?(this.value.push(t),this.currentIndex=this.value.length-1):this.value.splice(++this.currentIndex,0,t),this.currentComponent=t.path)},generateRandom(e=5){return Number(Math.random().toString().substr(3,e)+Date.now()).toString(36)},postMessage(){var e=JSON.stringify({pageMode:this.pageMode,currentIndex:this.currentIndex,global:a(this.global),value:a(this.value)});window.previewIframe.contentWindow.postMessage(e,"*")},changeCurrentIndex(e,n=null){this.currentIndex=e,this.currentIndex==-99?this.currentComponent="edit-page":n&&(this.currentComponent=n.path)},delComponent(){this.currentIndex!=-99&&s.confirm(r("delComponentTips"),r("warning"),{confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),type:"warning",autofocus:!1}).then(()=>{this.value.splice(this.currentIndex,1),this.value.length===0&&(this.currentIndex=-99),this.currentIndex===this.value.length&&this.currentIndex--;let e=o(this.value[this.currentIndex]);this.changeCurrentIndex(this.currentIndex,e)}).catch(()=>{})},moveUpComponent(){if(this.currentIndex-1<0)return;var e=o(this.value[this.currentIndex]);e.id=this.generateRandom();let n=this.currentIndex-1;var t=o(this.value[n]);t.id=this.generateRandom(),this.value[this.currentIndex]=t,this.value[n]=e,this.changeCurrentIndex(n,e)},moveDownComponent(){if(!(this.currentIndex+1>=this.value.length)){var e=this.currentIndex+1,n=o(this.value[this.currentIndex]);n.id=this.generateRandom();var t=o(this.value[e]);t.id=this.generateRandom(),this.value[this.currentIndex]=t,this.value[e]=n,this.changeCurrentIndex(e,n)}},copyComponent(){if(this.currentIndex<0)return;let e=o(this.value[this.currentIndex]);if(e.id=this.generateRandom(),!this.checkComponentIsAdd(e)){i({type:"warning",message:`${r("notCopy")},${e.componentTitle}${r("componentCanOnlyAdd")}${e.uses}${r("piece")}`});return}var n=this.currentIndex+1;this.value.splice(n,0,e),this.changeCurrentIndex(n,e)},checkComponentIsAdd(e){if(e.uses===0)return!0;var n=0;for(var t in this.value)this.value[t].componentName===e.componentName&&n++;return!(n>=e.uses)},resetComponent(){this.currentIndex<0||s.confirm(r("resetComponentTips"),r("warning"),{confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),type:"warning",autofocus:!1}).then(()=>{for(let e=0;e{})},verify(){if(this.global.title==="")return i({message:r("pageNamePlaceholder"),type:"warning"}),this.changeCurrentIndex(-99),!1;for(var e=0;el!==""?/^[a-zA-Z][a-zA-Z0-9_]*$/.test(l)?d():d(new Error(e("keyPlaceholderErr"))):d(new Error(e("keyPlaceholder"))),T=(p,l,d)=>l!==""?/^([0-9]\d|[0-9])(\.([0-9]){1}){2}$/.test(l)?d():d(new Error(e("versionPlaceholderErr"))):d(new Error(e("versionPlaceholder"))),L=_({title:[{required:!0,message:e("titlePlaceholder"),trigger:"blur"}],icon:[{required:!0,message:e("iconPlaceholder"),trigger:"change"}],key:[{required:!0,validator:F,trigger:"blur"}],author:[{required:!0,message:e("authorPlaceholder"),trigger:"blur"}],version:[{required:!0,validator:T,trigger:"blur"}],cover:[{required:!0,message:e("coverPlaceholder"),trigger:"change"}],type:[{required:!0,message:e("typePlaceholder"),trigger:"change"}],support_app:[{required:!0,message:e("typePlaceholder"),trigger:"change"}]});G(async()=>{const p=await oe();E.value=p.data,v.query.key&&N(v.query.key)});const q=()=>{a.value.support_app=""},N=p=>{m.value=!0,re(p).then(l=>{a.value=Object.assign(a.value,l.data),m.value=!1}).catch(()=>{m.value=!1})},C=_([]);(async()=>{const{data:p}=await ue();C.value=p})();const $=p=>{se(p).then(l=>{K.alert(l.data?e("warningText"):e("successText"),e("warning"),{confirmButtonText:e("confirm"),callback:d=>{console.log(d)}})})},I=async p=>{await p.validate(async l=>{if(l){const d=v.query.key?ne:de;m.value=!0,d(a.value.key,a.value).then(u=>{m.value=!1,W({message:e("onSaveSuccessText"),type:"success"}),setTimeout(()=>{window.addonActiveName="pluginList",b.push({path:"/tools/addon"})},650)}).catch(()=>{m.value=!1})}})};return(p,l)=>{const d=X,u=Y,U=ae,V=H,g=J,k=Q,S=ee,R=le,z=te;return Z((c(),h("div",pe,[s("div",ie,[s("div",{class:"left",onClick:l[0]||(l[0]=o=>t(b).push({path:"/tools/addon"}))},[ce,s("span",me,i(t(e)("returnToPreviousPage")),1)]),ve,s("span",_e,i(t(D)),1)]),r(R,{class:"box-card !border-none",shadow:"never"},{default:n(()=>[r(S,{model:a.value,"label-width":"90px",ref_key:"formRef",ref:A,rules:L.value,class:"page-form"},{default:n(()=>[r(u,{label:t(e)("title"),prop:"title"},{default:n(()=>[r(d,{modelValue:a.value.title,"onUpdate:modelValue":l[1]||(l[1]=o=>a.value.title=o),clearable:"",placeholder:t(e)("titlePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(u,{label:t(e)("icon"),prop:"icon"},{default:n(()=>[s("div",null,[r(U,{modelValue:a.value.icon,"onUpdate:modelValue":l[2]||(l[2]=o=>a.value.icon=o)},null,8,["modelValue"]),s("p",he,i(t(e)("iconPlaceholder1")),1)])]),_:1},8,["label"]),r(u,{label:t(e)("key"),prop:"key"},{default:n(()=>[s("div",null,[r(d,{modelValue:a.value.key,"onUpdate:modelValue":l[3]||(l[3]=o=>a.value.key=o),clearable:"",disabled:t(v).query.key,placeholder:t(e)("keyPlaceholder"),class:"input-width mr-[15px]"},null,8,["modelValue","disabled","placeholder"]),t(v).query.key?x("",!0):(c(),f(V,{key:0,type:"primary",disabled:a.value.key=="",onClick:l[4]||(l[4]=o=>$(a.value.key))},{default:n(()=>[P("官方市场标识检测")]),_:1},8,["disabled"])),s("p",ge,i(t(e)("keyPlaceholder1")),1),s("p",ye,i(t(e)("keyPlaceholder2")),1)])]),_:1},8,["label"]),r(u,{label:t(e)("desc"),prop:"desc"},{default:n(()=>[r(d,{type:"textarea",modelValue:a.value.desc,"onUpdate:modelValue":l[5]||(l[5]=o=>a.value.desc=o),clearable:"",placeholder:t(e)("descPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(u,{label:t(e)("author"),prop:"author"},{default:n(()=>[r(d,{modelValue:a.value.author,"onUpdate:modelValue":l[6]||(l[6]=o=>a.value.author=o),clearable:"",placeholder:t(e)("authorPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(u,{label:t(e)("version"),prop:"version"},{default:n(()=>[s("div",null,[r(d,{modelValue:a.value.version,"onUpdate:modelValue":l[7]||(l[7]=o=>a.value.version=o),clearable:"",placeholder:t(e)("versionPlaceholder"),class:"input-width",onkeyup:"this.value = this.value.replace(/[^\\d\\.]/g,'');"},null,8,["modelValue","placeholder"]),s("p",fe,i(t(e)("versionPlaceholder1")),1)])]),_:1},8,["label"]),r(u,{label:t(e)("cover"),prop:"cover"},{default:n(()=>[s("div",null,[r(U,{modelValue:a.value.cover,"onUpdate:modelValue":l[8]||(l[8]=o=>a.value.cover=o)},null,8,["modelValue"]),s("p",xe,i(t(e)("coverPlaceholder1")),1)])]),_:1},8,["label"]),r(u,{label:t(e)("type"),prop:"type"},{default:n(()=>[s("div",null,[r(k,{modelValue:a.value.type,"onUpdate:modelValue":l[9]||(l[9]=o=>a.value.type=o),placeholder:t(e)("typePlaceholder"),class:"input-width",clearable:"",onChange:q},{default:n(()=>[(c(!0),h(w,null,B(E.value,(o,y)=>(c(),f(g,{key:y,label:o,value:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]),s("p",be,i(t(e)("typePlaceholder1")),1),s("p",Ve,i(t(e)("typePlaceholder2")),1)])]),_:1},8,["label"]),a.value.type==="addon"?(c(),h(w,{key:0},[r(u,{label:t(e)("supportType")},{default:n(()=>[s("div",null,[r(k,{modelValue:a.value.support_type,"onUpdate:modelValue":l[10]||(l[10]=o=>a.value.support_type=o),class:"input-width",onChange:q},{default:n(()=>[r(g,{label:"通用插件",value:1}),r(g,{label:"支持应用",value:2})]),_:1},8,["modelValue"])])]),_:1},8,["label"]),a.value.support_type!=1?(c(),f(u,{key:0,label:t(e)("supportApp"),prop:"support_app"},{default:n(()=>[r(k,{modelValue:a.value.support_app,"onUpdate:modelValue":l[11]||(l[11]=o=>a.value.support_app=o),placeholder:t(e)("supportAppPlaceholder"),class:"input-width"},{default:n(()=>[(c(!0),h(w,null,B(C.value,(o,y)=>(c(),f(g,{label:o.title,value:o.key,key:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):x("",!0)],64)):x("",!0)]),_:1},8,["model","rules"])]),_:1}),m.value?x("",!0):(c(),h("div",ke,[s("div",Pe,[r(V,{type:"primary",onClick:l[12]||(l[12]=o=>I(A.value))},{default:n(()=>[P(i(t(e)("GeneratePlugins")),1)]),_:1}),r(V,{onClick:l[13]||(l[13]=o=>t(b).push({path:"/tools/addon"}))},{default:n(()=>[P(i(t(e)("cancel")),1)]),_:1})])]))])),[[z,m.value]])}}});export{ol as default}; diff --git a/niucloud/public/admin/assets/edit-14bc5db2.css b/niucloud/public/admin/assets/edit-14bc5db2.css new file mode 100644 index 0000000..fcd118d --- /dev/null +++ b/niucloud/public/admin/assets/edit-14bc5db2.css @@ -0,0 +1 @@ +.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center top}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center bottom}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transition:var(--el-transition-md-fade);transform-origin:top left}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-collapse{--el-collapse-border-color:var(--el-border-color-lighter);--el-collapse-header-height:48px;--el-collapse-header-bg-color:var(--el-fill-color-blank);--el-collapse-header-text-color:var(--el-text-color-primary);--el-collapse-header-font-size:13px;--el-collapse-content-bg-color:var(--el-fill-color-blank);--el-collapse-content-font-size:13px;--el-collapse-content-text-color:var(--el-text-color-primary);border-top:1px solid var(--el-collapse-border-color);border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-item.is-disabled .el-collapse-item__header{color:var(--el-text-color-disabled);cursor:not-allowed}.el-collapse-item__header{display:flex;align-items:center;height:var(--el-collapse-header-height);line-height:var(--el-collapse-header-height);background-color:var(--el-collapse-header-bg-color);color:var(--el-collapse-header-text-color);cursor:pointer;border-bottom:1px solid var(--el-collapse-border-color);font-size:var(--el-collapse-header-font-size);font-weight:500;transition:border-bottom-color var(--el-transition-duration);outline:0}.el-collapse-item__arrow{margin:0 8px 0 auto;transition:transform var(--el-transition-duration);font-weight:300}.el-collapse-item__arrow.is-active{transform:rotate(90deg)}.el-collapse-item__header.focusing:focus:not(:hover){color:var(--el-color-primary)}.el-collapse-item__header.is-active{border-bottom-color:transparent}.el-collapse-item__wrap{will-change:height;background-color:var(--el-collapse-content-bg-color);overflow:hidden;box-sizing:border-box;border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-item__content{padding-bottom:25px;font-size:var(--el-collapse-content-font-size);color:var(--el-collapse-content-text-color);line-height:1.7692307692}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse-item__wrap{border-bottom:none}.el-collapse-item__content{padding-bottom:0}.el-collapse-item__header{font-size:var(--el-font-size-base)}.display-block .el-form-item__content{display:block}.edit-component-wrap .content-wrap .edit-attr-item-wrap,.edit-component-wrap .style-wrap .edit-attr-item-wrap{border-top:2px solid var(--el-color-info-light-8);padding-top:20px}.edit-component-wrap .content-wrap .edit-attr-item-wrap:first-of-type,.edit-component-wrap .style-wrap .edit-attr-item-wrap:first-of-type{border-top:none;padding-top:0}.full-container[data-v-50a4e113]{height:calc(100vh - 60px)}.preview-iframe[data-v-50a4e113]{height:calc(100vh - 160px)}.component-list[data-v-50a4e113]{background:var(--el-bg-color)}.component-list ul li[data-v-50a4e113]:not(.disabled):hover{color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.diy-view-wrap[data-v-50a4e113]{background:var(--el-bg-color-page)}.diy-view-wrap .preview-head[data-v-50a4e113]{background-image:url(./diy_preview_head-8c072698.png);background-color:var(--el-bg-color)}.quick-action[data-v-50a4e113],.edit-attribute-wrap[data-v-50a4e113]{background:var(--el-bg-color)}.edit-attribute-wrap .box-card[data-v-50a4e113]{border:none} diff --git a/niucloud/public/admin/assets/edit-1c99c58d.css b/niucloud/public/admin/assets/edit-1c99c58d.css new file mode 100644 index 0000000..4f1a4c0 --- /dev/null +++ b/niucloud/public/admin/assets/edit-1c99c58d.css @@ -0,0 +1 @@ +.diy-dialog-wrap .el-form-item__label{height:auto!important} diff --git a/niucloud/public/admin/assets/edit-73431b1d.js b/niucloud/public/admin/assets/edit-73431b1d.js new file mode 100644 index 0000000..52900e8 --- /dev/null +++ b/niucloud/public/admin/assets/edit-73431b1d.js @@ -0,0 +1 @@ +import{_ as o}from"./edit.vue_vue_type_style_index_0_lang-b8616a57.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./dict-3e5bfbe1.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-addon-list-8dd0c51a.js b/niucloud/public/admin/assets/edit-addon-list-8dd0c51a.js new file mode 100644 index 0000000..df90d93 --- /dev/null +++ b/niucloud/public/admin/assets/edit-addon-list-8dd0c51a.js @@ -0,0 +1 @@ +import{d as z,r as v,v as A,D as N,n as F,h as p,c as x,y as m,z as g,u as e,a,t as _,N as i,e as d,w as c,F as C,G as R,R as w,i as $,I as y,B as j,b as P,E as M,Y as O,V as G,af as U,ah as W,a7 as Y,$ as q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as H}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{u as J}from"./diy-8d93d096.js";import{A as K}from"./sys-0f76aff3.js";import{S as Q}from"./sortable.esm-be94e56d.js";import{r as X}from"./range-bcf8b229.js";const Z={class:"content-wrap"},ee={class:"edit-attr-item-wrap"},te={class:"mb-[10px]"},oe={class:"flex items-center pb-[10px]"},ae=["src"],ne={class:"flex flex-col justify-center ml-[10px] leading-[1]"},le={class:"text-[14px]"},se={class:"text-[12px] text-[#999] mt-[8px]"},ie=["onClick"],de={class:"style-wrap"},re=z({__name:"edit-addon-list",setup(ce,{expose:k}){const t=J();t.editComponent.ignore=[],t.editComponent.verify=s=>({code:!0,message:""});const u=v(!1),b=v();A(()=>{N(()=>{const s=Q.create(b.value,{group:"item-wrap",animation:200,onEnd:o=>{const r=t.editComponent.list[o.oldIndex];t.editComponent.list.splice(o.oldIndex,1),t.editComponent.list.splice(o.newIndex,0,r),s.sort(X(t.editComponent.list.length).map(h=>h.toString()))}})})});const n=F({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{title:"",key:""}});((s=1)=>{n.loading=!0,n.page=s,K({...n.searchParam}).then(o=>{n.loading=!1,n.data=o.data,n.total=o.data.length}).catch(()=>{n.loading=!1})})();const S=s=>{const o={id:t.generateRandom(),key:"",title:"",url:"",icon:"",desc:""};for(let r in s)o[r]=s[r];t.editComponent.list.push(o),u.value=!1},T=()=>{u.value=!0};return k({}),(s,o)=>{const r=H,h=M,D=O,E=G,f=U,B=W,V=Y,I=q;return p(),x(C,null,[m(a("div",Z,[a("div",ee,[a("h3",te,_(e(i)("addonListSet")),1),d(D,{"label-width":"100px",class:"px-[10px]"},{default:c(()=>[a("div",{ref_key:"addonBoxRef",ref:b},[(p(!0),x(C,null,R(e(t).editComponent.list,(l,L)=>(p(),x("div",{key:l.id,class:"item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"},[m(a("div",oe,[a("img",{class:"w-[60px] h-[60px] rounded-md",src:e(w)(l.icon)},null,8,ae),a("div",ne,[a("span",le,_(l.title),1),a("span",se,_(l.desc),1)])],512),[[g,l.title]]),m(a("div",{class:"del absolute cursor-pointer z-[2] top-[-8px] right-[-8px]",onClick:me=>e(t).editComponent.list.splice(L,1)},[d(r,{name:"element-CircleCloseFilled",color:"#bbb",size:"20px"})],8,ie),[[g,e(t).editComponent.list.length>1]])]))),128))],512),d(h,{class:"w-full",onClick:T},{default:c(()=>[$(_(e(i)("addAddon")),1)]),_:1})]),_:1})]),d(V,{modelValue:u.value,"onUpdate:modelValue":o[0]||(o[0]=l=>u.value=l),title:e(i)("addonListTips"),width:"600px","close-on-press-escape":!1,"close-on-click-modal":!1},{default:c(()=>[a("div",null,[m((p(),y(B,{data:n.data,size:"large",onCurrentChange:S,"highlight-current-row":"","max-height":"500px"},{empty:c(()=>[a("span",null,_(n.loading?"":e(i)("emptyData")),1)]),default:c(()=>[d(f,{label:e(i)("addonIcon"),width:"120",align:"center"},{default:c(({row:l})=>[l.icon?(p(),y(E,{key:0,class:"w-[50px] h-[50px]",src:e(w)(l.icon),fit:"contain"},null,8,["src"])):j("",!0)]),_:1},8,["label"]),d(f,{prop:"title","show-overflow-tooltip":!0,width:"120",label:e(i)("addonTitle")},null,8,["label"]),d(f,{prop:"desc","show-overflow-tooltip":!0,label:e(i)("addonDesc")},null,8,["label"])]),_:1},8,["data"])),[[I,n.loading]])])]),_:1},8,["modelValue","title"])],512),[[g,e(t).editTab=="content"]]),m(a("div",de,[P(s.$slots,"style")],512),[[g,e(t).editTab=="style"]])],64)}}}),Ie=Object.freeze(Object.defineProperty({__proto__:null,default:re},Symbol.toStringTag,{value:"Module"}));export{Ie as _}; diff --git a/niucloud/public/admin/assets/edit-ae165855.js b/niucloud/public/admin/assets/edit-ae165855.js new file mode 100644 index 0000000..ae87e96 --- /dev/null +++ b/niucloud/public/admin/assets/edit-ae165855.js @@ -0,0 +1 @@ +import{d as $e,O as Ee,f as Se,r as h,cP as Ne,N as a,v as De,n as Fe,q as E,h as r,c as k,y as Pe,a as i,u as n,t as _,e as t,w as d,F as w,G as U,I as b,B as $,i as v,D as me,cx as L,a2 as ie,a5 as Ie,R as Re,W as Be,X as Me,aq as qe,aC as Ae,Y as Le,aA as Oe,af as Ge,ay as je,E as ze,ah as Ke,aw as Je,ax as We,aD as Xe,aB as Ye,_ as He,$ as Qe,p as Ze,g as el}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as ll}from"./edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js";import{_ as al}from"./edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js";import{_ as tl}from"./edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js";import{g as nl,o as ol,p as dl,q as sl,r as ul}from"./tools-8d764897.js";import{a4 as re}from"./sys-0f76aff3.js";import{S as ml}from"./sortable.esm-be94e56d.js";import{_ as il}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./dict-3e5bfbe1.js";/* empty css */const x=S=>(Ze("data-v-ea91ddb2"),S=S(),el(),S),rl={class:"main-container mb-80"},pl={class:"detail-head !mb-[10px]"},cl=x(()=>i("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1)),_l={class:"ml-[1px]"},bl=x(()=>i("span",{class:"adorn"},"|",-1)),fl={class:"right"},vl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 生成代码所属功能模块,对应路由名称,例如会员模块,充值模块,订单模块等",-1)),yl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 命名规范,小写,多个单词使用下划线连接,例如: member,article_category",-1)),hl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 生成代码所属文件名称,controller,model,service,等类型文件名",-1)),xl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 命名规范,小写,多个单词使用下划线连接,例如: article_category",-1)),Vl=x(()=>i("i",{class:"iconfont icontuodong vues-rank"},null,-1)),gl={class:"flex items-center"},kl={class:"flex items-center"},wl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 物理删除:从表中把记录移除。软删除:通过标识使得这条记录在系统逻辑层面上不可见",-1)),Cl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"}," 软删除字段需为int类型,并且默认值为0",-1)),Tl=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"},"弹出:弹出框编辑。新页面:跳转页面编辑。",-1)),Ul=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"},"列表排序规则字段。",-1)),$l=x(()=>i("p",{class:"text-[12px] text-[#a9a9a9] leading-normal mt-[5px]"},"列表排序规则。",-1)),El={class:"mb-[20px]"},Sl={class:"fixed-footer-wrap"},Nl={class:"fixed-footer"},Dl=$e({__name:"edit",setup(S){const O=Ee(),G=Se(),pe=O.meta.title,j=parseInt(O.query.id||0),V=h(!0),z=Ne(),K=h(0),J=h("basicSettings"),W={id:"",table_name:"",table_content:"",module_name:"",class_name:"",edit_type:1,table_column:[],editFiledIndex:0},ce=["=","!=",">",">=","<","<=","LIKE","BETWEEN"],_e=[{label:a("formInput"),value:"input"},{label:a("formTextarea"),value:"textarea"},{label:a("formSelect"),value:"select"},{label:a("formRadio"),value:"radio"},{label:a("formCheckbox"),value:"checkbox"},{label:a("formDateTime"),value:"datetime"},{label:a("formImageSelect"),value:"imageSelect"},{label:a("formEditor"),value:"editor"},{label:a("formNumber"),value:"number"}],be=[{label:"无需验证",value:""},{label:a("mobileVerify"),value:"mobile"},{label:a("numberVerify"),value:"number"},{label:a("idCardVerify"),value:"idCard"},{label:a("emailVerify"),value:"email"},{label:"",value:"max"},{label:"",value:"min"},{label:"",value:"between"}],X=h([]),Y=s=>{nl({search:s}).then(o=>{X.value=o.data,me(()=>{H()})})},H=()=>{const s=z.value.$el.querySelector(".el-table__body-wrapper tbody");ml.create(s,{handle:".vues-rank",animation:300,onEnd({newIndex:o,oldIndex:u}){const f=e.table_column,y=f.splice(u,1)[0];f.splice(o,0,y),K.value+=1,me(()=>{H()})}})};De(()=>{Y("")});const fe=s=>{e.delete_column_name=s?e.table_column[e.table_column.length-1].column_name:""},ve=s=>{e.order_type=s?1:0},e=Fe({...W});E(()=>e.addon_name?`addon${e.addon_name?"\\"+e.addon_name:""}\\app\\adminapi\\controller${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`:`app\\adminapi\\controller${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`),E(()=>e.addon_name?`addon${e.addon_name?"\\"+e.addon_name:""}\\app\\model${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`:`app\\model${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`),E(()=>e.addon_name?`addon${e.addon_name?"\\"+e.addon_name:""}\\app\\validate${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`:`app\\validate${e.module_name?"\\"+e.module_name:""}${e.class_name?"\\"+e.class_name:""}`),E(()=>e.addon_name?`addon${e.addon_name?"\\"+e.addon_name:""}\\admin\\src`:"admin\\src"),E(()=>e.addon_name?`addon${e.addon_name?"\\"+e.addon_name:""}\\app\\adminapi\\route${e.module_name?"\\"+e.module_name:""}`:`app\\adminapi\\route${e.module_name?"\\"+e.module_name:""}`),j&&(async(s=0)=>{Object.assign(e,W);const o=await(await ol(s)).data;Object.keys(o).forEach(u=>{o[u]!=null&&(e[u]=o[u])}),e.table_column.forEach(u=>{u.betweenMin=L(u.min_number),u.betweenMax=L(u.max_number)}),e.addon_name!=""&&Q(e.addon_name),V.value=!1})(j);const ye=h(),R=h([]),N=h([]);(async()=>{const{data:s}=await re();R.value=[{menu_name:"顶级",menu_key:""}],R.value.push(...s)})();const Q=async s=>{const{data:o}=await re(s);N.value=o},he=async s=>{e.parent_menu="",s!=""&&(await Q(s),N.value[0]&&(e.parent_menu=N.value[0].menu_key))},B=h(0),Z=h(),ee=(s,o)=>{B.value=o,Z.value.setFormData(s)},xe=s=>{B.value!=-1?e.relations.splice(B.value,1,s):e.relations.unshift(s)},Ve=s=>{e.relations.splice(s,1)},M=async s=>{const o=L(e);o.table_column=JSON.stringify(o.table_column.map(u=>(u.is_search||(u.query_type=""),(u.validate_type==="between"||u.view_type==="number")&&(u.max_number=u.betweenMax,u.min_number=u.betweenMin),["select","radio","checkbox"].includes(u.view_type)||(u.dict_type=""),u))),o.relations=JSON.stringify(o.relations),V.value=!0,dl(o).then(u=>{s===3?ge():s===2?le(s):(V.value=!1,ie({type:"success",message:"操作成功"}),setTimeout(()=>{window.codeActiveName="codeList",q()},650))}).catch(()=>{V.value=!1})},ge=()=>{sl({id:e.id}).then(s=>{V.value=!1,Ie.confirm(s.msg!="2"?a("saveAndSyncText"):a("saveAndSyncText1"),a("warning"),{confirmButtonText:a("confirm"),cancelButtonText:a("cancel")}).then(()=>{V.value=!0,le(3)}).catch(()=>{})}).catch(()=>{V.value=!1})},le=s=>{ul({id:e.id,generate_type:s}).then(o=>{V.value=!1,ie({type:"success",message:"操作成功"}),window.open(Re(o.data.file),"_blank"),setTimeout(()=>{window.codeActiveName="codeList",q()},650)}).catch(()=>{V.value=!1})},D=h(0),ae=h(null),te=h(null),F=(s,o)=>{var u;(["max","min","between"].includes(s.validate_type)||s.view_type==="number")&&(D.value=o,(u=ae.value)==null||u.setFormData(s))},ke=s=>{e.table_column.splice(D.value,1,s)},ne=(s,o)=>{var u;["input","textarea"].includes(s.view_type)||(s.validate_type=""),["select","radio","checkbox"].includes(s.view_type)?(D.value=o,(u=te.value)==null||u.setFormData(s)):s.view_type==="number"&&F(s,o)},we=s=>{e.table_column.splice(D.value,1,s)},q=()=>{G.push({path:"/tools/code"})};return(s,o)=>{const u=Be,f=Me,y=qe,C=Ae,oe=Le,P=Oe,c=Ge,T=je,g=ze,de=Ke,I=Je,se=We,ue=Xe,Ce=Ye,Te=He,Ue=Qe;return r(),k(w,null,[Pe((r(),k("div",rl,[i("div",pl,[i("div",{class:"left",onClick:o[0]||(o[0]=l=>n(G).push({path:"/tools/code"}))},[cl,i("span",_l,_(n(a)("returnToPreviousPage")),1)]),bl,i("span",fl,_(n(pe)),1)]),t(Te,{class:"box-card !border-none",shadow:"never"},{default:d(()=>[t(Ce,{modelValue:J.value,"onUpdate:modelValue":o[14]||(o[14]=l=>J.value=l),class:"demo-tabs"},{default:d(()=>[t(P,{label:n(a)("basicSettings"),name:"basicSettings"},{default:d(()=>[t(oe,{model:e,"label-width":"70px",class:"page-form"},{default:d(()=>[t(f,{label:n(a)("tableName")},{default:d(()=>[t(u,{modelValue:e.table_name,"onUpdate:modelValue":o[1]||(o[1]=l=>e.table_name=l),disabled:"",placeholder:n(a)("tableNamePlaceholder"),class:"input-width",maxlength:"64"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(f,{label:n(a)("tableContent")},{default:d(()=>[t(u,{modelValue:e.table_content,"onUpdate:modelValue":o[2]||(o[2]=l=>e.table_content=l),clearable:"",placeholder:n(a)("tableContentPlaceholder"),class:"input-width",maxlength:"64"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(f,{label:n(a)("addon")},{default:d(()=>[t(C,{class:"input-width",placeholder:n(a)("addonPlaceholder1"),modelValue:e.addon_name,"onUpdate:modelValue":o[3]||(o[3]=l=>e.addon_name=l),filterable:"",remote:"",clearable:"","remote-method":Y,onChange:he},{default:d(()=>[(r(!0),k(w,null,U(X.value,l=>(r(),b(y,{label:l.title,value:l.key,key:l.key},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"]),t(f,{label:n(a)("moduleName")},{default:d(()=>[i("div",null,[t(u,{modelValue:e.module_name,"onUpdate:modelValue":o[4]||(o[4]=l=>e.module_name=l),clearable:"",placeholder:n(a)("moduleNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"]),vl,yl])]),_:1},8,["label"]),t(f,{label:n(a)("className")},{default:d(()=>[i("div",null,[t(u,{modelValue:e.class_name,"onUpdate:modelValue":o[5]||(o[5]=l=>e.class_name=l),clearable:"",placeholder:n(a)("classNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"]),hl,xl])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["label"]),t(P,{label:n(a)("fieldSettings"),name:"fieldSettings"},{default:d(()=>[(r(),b(de,{data:e.table_column,size:"large",ref_key:"tableRef",ref:z,key:K.value},{default:d(()=>[t(c,{align:"center",label:"操作",width:"80"},{default:d(()=>[Vl]),_:1}),t(c,{label:n(a)("columnName"),prop:"column_name","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("columnComment"),prop:"","min-width":"220px"},{default:d(({row:l})=>[t(u,{class:"",modelValue:l.column_comment,"onUpdate:modelValue":m=>l.column_comment=m,placeholder:n(a)("columnCommentPlaceholder")},null,8,["modelValue","onUpdate:modelValue","placeholder"])]),_:1},8,["label"]),t(c,{label:n(a)("columnType"),prop:"column_type",width:"100px"},null,8,["label"]),t(c,{label:n(a)("isPk"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_pk,"onUpdate:modelValue":m=>l.is_pk=m,disabled:"","true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("isRequired"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_required,"onUpdate:modelValue":m=>l.is_required=m,"true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("isInsert"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_insert,"onUpdate:modelValue":m=>l.is_insert=m,"true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("isUpdate"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_update,"onUpdate:modelValue":m=>l.is_update=m,"true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("isLists"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_lists,"onUpdate:modelValue":m=>l.is_lists=m,"true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("isSearch"),prop:"",align:"center",width:"65px"},{default:d(({row:l})=>[t(T,{modelValue:l.is_search,"onUpdate:modelValue":m=>l.is_search=m,"true-label":1,"false-label":0},null,8,["modelValue","onUpdate:modelValue"])]),_:1},8,["label"]),t(c,{label:n(a)("queryType"),prop:"","min-width":"170px"},{default:d(({row:l})=>[i("div",gl,[l.is_search?(r(),b(C,{key:0,class:"",placeholder:n(a)("selectPlaceholder"),modelValue:l.query_type,"onUpdate:modelValue":m=>l.query_type=m},{default:d(()=>[(r(),k(w,null,U(ce,(m,p)=>t(y,{label:m,value:m,key:p},null,8,["label","value"])),64))]),_:2},1032,["placeholder","modelValue","onUpdate:modelValue"])):$("",!0)])]),_:1},8,["label"]),t(c,{label:n(a)("formType"),prop:"","min-width":"225px"},{default:d(({row:l,$index:m})=>[t(C,{class:"w-[146px]",placeholder:n(a)("selectPlaceholder"),modelValue:l.view_type,"onUpdate:modelValue":p=>l.view_type=p,onChange:p=>ne(l,m)},{default:d(()=>[(r(),k(w,null,U(_e,(p,A)=>t(y,{label:p.label,value:p.value,key:A},null,8,["label","value"])),64))]),_:2},1032,["placeholder","modelValue","onUpdate:modelValue","onChange"]),["select","radio","checkbox"].includes(l.view_type)?(r(),b(g,{key:0,class:"ml-[10px]",type:"primary",link:"",onClick:p=>ne(l,m)},{default:d(()=>[v(_(n(a)("setUp")),1)]),_:2},1032,["onClick"])):$("",!0),l.view_type==="number"?(r(),b(g,{key:1,class:"ml-[10px]",type:"primary",link:"",onClick:p=>F(l,m)},{default:d(()=>[v(_(n(a)("setUp")),1)]),_:2},1032,["onClick"])):$("",!0)]),_:1},8,["label"]),t(c,{label:n(a)("verifyType"),prop:"","min-width":"260px"},{default:d(({row:l,$index:m})=>[i("div",kl,[t(C,{class:"w-[196px]",placeholder:n(a)("selectPlaceholder"),modelValue:l.validate_type,"onUpdate:modelValue":p=>l.validate_type=p,onChange:p=>F(l,m),disabled:!["input","textarea"].includes(l.view_type)},{default:d(()=>[(r(),k(w,null,U(be,(p,A)=>(r(),k(w,{key:A},[p.value==="max"?(r(),b(y,{key:0,value:p.value,label:"最大输入字符"},null,8,["value"])):p.value==="min"?(r(),b(y,{key:1,value:p.value,label:"最小输入字符"},null,8,["value"])):p.value==="between"?(r(),b(y,{key:2,value:p.value,label:"输入字符区间"},null,8,["value"])):(r(),b(y,{key:3,label:p.label,value:p.value},null,8,["label","value"]))],64))),64))]),_:2},1032,["placeholder","modelValue","onUpdate:modelValue","onChange","disabled"]),["max","min","between"].includes(l.validate_type)?(r(),b(g,{key:0,class:"ml-[10px]",type:"primary",link:"",onClick:p=>F(l,m)},{default:d(()=>[v(_(n(a)("setUp")),1)]),_:2},1032,["onClick"])):$("",!0)])]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1},8,["label"]),t(P,{label:n(a)("generationSettings"),name:"generationSettings"},{default:d(()=>[t(oe,{model:e,class:"page-form","label-width":"140px",ref_key:"formRef",ref:ye,rules:s.rules},{default:d(()=>[t(f,{label:n(a)("deleteType")},{default:d(()=>[i("div",null,[t(se,{modelValue:e.is_delete,"onUpdate:modelValue":o[6]||(o[6]=l=>e.is_delete=l),onChange:fe},{default:d(()=>[t(I,{label:0},{default:d(()=>[v(_(n(a)("physicalDeletion")),1)]),_:1}),t(I,{label:1},{default:d(()=>[v(_(n(a)("softDeletion")),1)]),_:1})]),_:1},8,["modelValue"]),wl])]),_:1},8,["label"]),e.is_delete?(r(),b(f,{key:0,prop:"delete_column_name",label:n(a)("deleteField")},{default:d(()=>[i("div",null,[t(C,{class:"input-width",placeholder:n(a)("deleteFieldPlaceholder"),modelValue:e.delete_column_name,"onUpdate:modelValue":o[7]||(o[7]=l=>e.delete_column_name=l)},{default:d(()=>[(r(!0),k(w,null,U(e.table_column,(l,m)=>(r(),b(y,{label:`${l.column_name}:${l.column_comment}`,value:l.column_name,key:m},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"]),Cl])]),_:1},8,["label"])):$("",!0),t(f,{label:n(a)("editType")},{default:d(()=>[i("div",null,[t(se,{modelValue:e.edit_type,"onUpdate:modelValue":o[8]||(o[8]=l=>e.edit_type=l),placeholder:n(a)("editTypePlaceholder")},{default:d(()=>[t(I,{label:1},{default:d(()=>[v(_(n(a)("popup")),1)]),_:1}),t(I,{label:2},{default:d(()=>[v(_(n(a)("page")),1)]),_:1})]),_:1},8,["modelValue","placeholder"]),Tl])]),_:1},8,["label"]),t(f,{label:n(a)("orderColumnName")},{default:d(()=>[i("div",null,[t(C,{class:"input-width",placeholder:n(a)("orderColumnNamePlaceholder"),modelValue:e.order_column_name,"onUpdate:modelValue":o[9]||(o[9]=l=>e.order_column_name=l),clearable:"",onChange:ve},{default:d(()=>[(r(!0),k(w,null,U(e.table_column,(l,m)=>(r(),b(y,{label:`${l.column_name}:${l.column_comment}`,value:l.column_name,key:m},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"]),Ul])]),_:1},8,["label"]),e.order_column_name?(r(),b(f,{key:1,label:n(a)("orderType")},{default:d(()=>[i("div",null,[t(C,{class:"input-width",placeholder:n(a)("orderTypePlaceholder"),modelValue:e.order_type,"onUpdate:modelValue":o[10]||(o[10]=l=>e.order_type=l)},{default:d(()=>[t(y,{label:"正序 asc",value:1}),t(y,{label:"倒序 desc",value:2})]),_:1},8,["placeholder","modelValue"]),$l])]),_:1},8,["label"])):$("",!0),t(f,{label:n(a)("menuType")},{default:d(()=>[e.addon_name!=""?(r(),b(ue,{key:0,class:"input-width",clearable:"",modelValue:e.parent_menu,"onUpdate:modelValue":o[11]||(o[11]=l=>e.parent_menu=l),props:{label:"menu_name",value:"menu_key"},data:N.value,"check-strictly":"","render-after-expand":!1},null,8,["modelValue","data"])):(r(),b(ue,{key:1,class:"input-width",modelValue:e.parent_menu,"onUpdate:modelValue":o[12]||(o[12]=l=>e.parent_menu=l),clearable:"",props:{label:"menu_name",value:"menu_key"},data:R.value,"check-strictly":"","render-after-expand":!1},null,8,["modelValue","data"]))]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["label"]),t(P,{label:n(a)("associatedConfiguration"),name:"associatedConfiguration"},{default:d(()=>[i("div",El,[t(g,{type:"primary",class:"w-[100px]",onClick:o[13]||(o[13]=l=>ee(null,-1))},{default:d(()=>[v(_(n(a)("insertAssociated")),1)]),_:1})]),t(de,{data:e.relations,size:"large"},{default:d(()=>[t(c,{label:n(a)("associatedType"),prop:"type","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("associatedName"),prop:"name","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("addons"),prop:"addon","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("associatedModel"),prop:"model","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("localKey"),prop:"local_key","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("foreignKey"),prop:"foreign_key","min-width":"130px"},null,8,["label"]),t(c,{label:n(a)("operation"),align:"right","min-width":"130px"},{default:d(({row:l,$index:m})=>[t(g,{type:"primary",link:"",onClick:p=>ee(l,m)},{default:d(()=>[v(_(n(a)("edit")),1)]),_:2},1032,["onClick"]),t(g,{type:"primary",link:"",onClick:p=>Ve(m)},{default:d(()=>[v(_(n(a)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])]),_:1},8,["label"])]),_:1},8,["modelValue"])]),_:1})])),[[Ue,V.value]]),t(ll,{ref_key:"editDialog",ref:Z,table_name:e.table_name,onComplete:xe},null,8,["table_name"]),t(al,{ref_key:"editViewTypeRef",ref:te,onComplete:we},null,512),t(tl,{ref_key:"editVerifyRef",ref:ae,onComplete:ke},null,512),i("div",Sl,[i("div",Nl,[t(g,{type:"primary",onClick:o[15]||(o[15]=l=>M(1))},{default:d(()=>[v(_(n(a)("save")),1)]),_:1}),t(g,{type:"primary",onClick:o[16]||(o[16]=l=>M(3))},{default:d(()=>[v(_(n(a)("saveAndSync")),1)]),_:1}),t(g,{type:"primary",onClick:o[17]||(o[17]=l=>M(2))},{default:d(()=>[v(_(n(a)("saveAndDownload")),1)]),_:1}),t(g,{onClick:o[18]||(o[18]=l=>q())},{default:d(()=>[v(_(n(a)("cancel")),1)]),_:1})])])],64)}}});const ia=il(Dl,[["__scopeId","data-v-ea91ddb2"]]);export{ia as default}; diff --git a/niucloud/public/admin/assets/edit-associated-b7d031b4.js b/niucloud/public/admin/assets/edit-associated-b7d031b4.js new file mode 100644 index 0000000..4a13315 --- /dev/null +++ b/niucloud/public/admin/assets/edit-associated-b7d031b4.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./tools-8d764897.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js b/niucloud/public/admin/assets/edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js new file mode 100644 index 0000000..cc31a50 --- /dev/null +++ b/niucloud/public/admin/assets/edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js @@ -0,0 +1 @@ +import{d as I,r as s,q as S,N as a,h as u,I as f,w as d,a as O,e as t,i as C,t as q,u as n,c as _,F as b,G as h,au as W,cx as E,aq as X,aC as Y,X as j,W as z,Y as H,E as J,a7 as Q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as Z,l as ee,m as le}from"./tools-8d764897.js";const ae={class:"dialog-footer"},ye=I({__name:"edit-associated",props:{table_name:{type:String,required:!0}},emits:["complete"],setup(x,{expose:K,emit:N}){const U=x,m=s(!1),M=s(""),V={type:"has_one",name:"",addon:"system",model:"",local_key:"",foreign_key:""},o=s({...V}),g=s(),T=S(()=>({type:[{required:!0,message:a("associatedTypePlaceholder"),trigger:"change"}],name:[{required:!0,message:a("associatedNamePlaceholder"),trigger:"blur"}],addon:[{required:!0,message:a("addonsPlaceholder"),trigger:"change"}],model:[{required:!0,message:a("associatedModelPlaceholder"),trigger:"change"}],local_key:[{required:!0,message:a("localKeyPlaceholder"),trigger:"change"}],foreign_key:[{required:!0,message:a("foreignKeyPlaceholder"),trigger:"blur"}]})),k=s([]),w=r=>{ee(r).then(e=>{k.value=e.data})},P=s([]),A=r=>{le({table_name:r}).then(e=>{P.value=e.data})},v=s([]);(async()=>{const{data:r}=await Z({});v.value=[{title:"系统",key:"system"}],v.value.push(...r),w({addon:"system"})})();const B=r=>{o.value.model="",w({addon:r})},G=r=>{var e;(e=g.value)==null||e.clearValidate(),r()},L=async r=>{r&&await r.validate(async e=>{e&&(N("complete",W(o.value)),m.value=!1)})};return K({showDialog:m,setFormData:async(r=null)=>{A(U.table_name),r?o.value=E(r):o.value=E(V),m.value=!0}}),(r,e)=>{const p=X,c=Y,i=j,D=z,R=H,F=J,$=Q;return u(),f($,{modelValue:m.value,"onUpdate:modelValue":e[8]||(e[8]=l=>m.value=l),title:M.value,width:"500px","before-close":G,"destroy-on-close":!0},{footer:d(()=>[O("span",ae,[t(F,{onClick:e[6]||(e[6]=l=>m.value=!1)},{default:d(()=>[C(q(n(a)("cancel")),1)]),_:1}),t(F,{type:"primary",onClick:e[7]||(e[7]=l=>L(g.value))},{default:d(()=>[C(q(n(a)("confirm")),1)]),_:1})])]),default:d(()=>[t(R,{model:o.value,"label-width":"120px",ref_key:"formRef",ref:g,rules:n(T),class:"page-form"},{default:d(()=>[t(i,{label:n(a)("associatedType"),prop:"type"},{default:d(()=>[t(c,{placeholder:n(a)("associatedTypePlaceholder"),modelValue:o.value.type,"onUpdate:modelValue":e[0]||(e[0]=l=>o.value.type=l),class:"input-width"},{default:d(()=>[t(p,{label:n(a)("hasOne"),value:"has_one"},null,8,["label"]),t(p,{label:n(a)("hasMany"),value:"has_many"},null,8,["label"])]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"]),t(i,{label:n(a)("associatedName"),prop:"name"},{default:d(()=>[t(D,{modelValue:o.value.name,"onUpdate:modelValue":e[1]||(e[1]=l=>o.value.name=l),placeholder:n(a)("associatedNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(i,{label:n(a)("addons"),prop:"addon"},{default:d(()=>[t(c,{modelValue:o.value.addon,"onUpdate:modelValue":e[2]||(e[2]=l=>o.value.addon=l),placeholder:n(a)("addonsPlaceholder"),class:"input-width",onChange:B},{default:d(()=>[(u(!0),_(b,null,h(v.value,(l,y)=>(u(),f(p,{label:l.title,value:l.key,key:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),t(i,{label:n(a)("associatedModel"),prop:"model"},{default:d(()=>[t(c,{placeholder:n(a)("associatedModelPlaceholder"),modelValue:o.value.model,"onUpdate:modelValue":e[3]||(e[3]=l=>o.value.model=l),class:"input-width",filterable:""},{default:d(()=>[(u(!0),_(b,null,h(k.value,l=>(u(),f(p,{label:l,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"]),t(i,{prop:"local_key",label:n(a)("localKey")},{default:d(()=>[t(c,{class:"input-width",placeholder:n(a)("localKeyPlaceholder"),modelValue:o.value.local_key,"onUpdate:modelValue":e[4]||(e[4]=l=>o.value.local_key=l)},{default:d(()=>[(u(!0),_(b,null,h(P.value,(l,y)=>(u(),f(p,{label:`${l.name}:${l.comment}`,value:l.name,key:y},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"]),t(i,{label:n(a)("foreignKey"),prop:"foreign_key"},{default:d(()=>[t(D,{modelValue:o.value.foreign_key,"onUpdate:modelValue":e[5]||(e[5]=l=>o.value.foreign_key=l),placeholder:n(a)("foreignKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])}}});export{ye as _}; diff --git a/niucloud/public/admin/assets/edit-b14f349a.js b/niucloud/public/admin/assets/edit-b14f349a.js new file mode 100644 index 0000000..2e04a89 --- /dev/null +++ b/niucloud/public/admin/assets/edit-b14f349a.js @@ -0,0 +1 @@ +import{d as Ee,by as Oe,O as Te,f as Be,r as b,n as X,au as C,s as me,cx as De,a0 as Re,h as d,c as w,e as a,w as i,a as r,t as c,u as t,N as l,F as Q,G as Z,I as g,B as v,i as A,y as ue,z as ce,A as _e,J as Pe,a5 as ge,cD as y,a2 as ze,U as Ie,a1 as qe,aq as Ne,aC as Se,E as Ue,cE as Le,cF as $e,cG as Ae,an as je,ag as Je,W as Me,cC as Fe,X as Ge,cB as We,Y as Ye,_ as He,p as Xe,g as Qe}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{_ as Ze}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as Ke}from"./edit-addon-list-8dd0c51a.js";import{_ as et}from"./edit-graphic-nav-6aea66c6.js";import{_ as tt}from"./edit-horz-blank-cca710d1.js";import{_ as ot}from"./edit-hot-area-490be4b6.js";import{_ as lt}from"./edit-image-ads-ba036595.js";import{_ as nt}from"./edit-member-info-d63d5604.js";import{_ as at}from"./edit-notice-1a631612.js";import{_ as it}from"./edit-page-380884c5.js";import{_ as st}from"./edit-rubik-cube-040bee3d.js";import{_ as rt}from"./edit-text-98dd7894.js";import{i as pt,a as dt,e as mt,b as ut}from"./diy-5ff717bd.js";import{u as ct}from"./diy-8d93d096.js";import{_ as _t}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./sys-0f76aff3.js";import"./sortable.esm-be94e56d.js";import"./range-bcf8b229.js";import"./index-4718d422.js";import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";/* empty css *//* empty css */const gt=z=>(Xe("data-v-50a4e113"),z=z(),Qe(),z),vt={class:"main-container flex-1"},ft={class:"pl-[5px]"},bt={class:"text-white ml-[10px] mr-[20px] flex items-center"},xt={class:"mr-[5px]"},yt={key:0},ht={class:"text-white mr-[10px] text-base"},Ct=gt(()=>r("div",{class:"flex-1"},null,-1)),wt={class:"full-container flex flex-row flex-1 bg-page"},kt={class:"component-list w-[290px]"},Vt={class:"flex flex-row flex-wrap"},Et=["title","onClick"],Ot={class:"block text-base truncate"},Tt={class:"preview-wrap flex-1 relative mt-[20px]"},Bt={class:"diy-view-wrap w-[375px] shadow-lg mx-auto"},Dt={class:"text-base block text-center truncate cursor-pointer h-[64px] leading-[84px]"},Rt={class:"preview-block relative"},Pt={class:"quick-action absolute text-center -right-[70px] top-[20px] w-[42px] rounded shadow-md"},zt=["src"],It={class:"preview-iframe w-[375px] pt-[20px] px-[20px]"},qt={class:"font-bold text-xl mb-[40px]"},Nt={class:"mb-[20px] flex flex-col"},St={class:"mb-[10px]"},Ut={class:"edit-attribute-wrap w-[400px]"},Lt={class:"card-header flex justify-between items-center"},$t={class:"title flex-1"},At={key:0,class:"tab-wrap flex rounded-[50px] bg-gray-100 text-[14px]"},jt={class:"edit-component-wrap"},Jt={class:"edit-attr-item-wrap"},Mt={class:"mb-[10px]"},Ft={class:"text-sm text-gray-400"},Gt={key:1,class:"edit-attr-item-wrap"},Wt={class:"mb-[10px]"},Yt={class:"text-sm text-gray-400"},Ht=Ee({__name:"edit",setup(z){Oe("setLayout")("decorate");const e=ct(),m=Te(),K=Be();m.query.id=m.query.id||0,m.query.name=m.query.name||"",m.query.url=m.query.url||"",m.query.type=m.query.type||"",m.query.title=m.query.title||"",m.query.back=m.query.back||"/site/diy/list";const I=m.query.back,V=b(""),ee=b(""),q=b(""),E=b(""),j=b(""),N=b(!1),S=b(!1),te=b(0),oe=b(0),O=b([]),le=X([]),J=b(""),ne=b(le),ve=p=>{},T=X({id:e.id,name:e.name,title:e.global.title,value:JSON.stringify({global:C(e.global),value:C(e.value)})}),M=b(!0),fe=()=>{M.value?(location.href=`${location.origin}${I}`,K.push(I)):ge.confirm(l("leavePageTitleTips"),l("leavePageContentTips"),{confirmButtonText:l("confirm"),cancelButtonText:l("cancel"),type:"warning",autofocus:!1}).then(()=>{location.href=`${location.origin}${I}`}).catch(()=>{})},ae=Object.assign({"./components/edit-addon-list.vue":Ke,"./components/edit-graphic-nav.vue":et,"./components/edit-horz-blank.vue":tt,"./components/edit-hot-area.vue":ot,"./components/edit-image-ads.vue":lt,"./components/edit-member-info.vue":nt,"./components/edit-notice.vue":at,"./components/edit-page.vue":it,"./components/edit-rubik-cube.vue":st,"./components/edit-text.vue":rt}),ie=Object.assign({});ie&&Object.assign(ae,ie);const F={};for(const[p,o]of Object.entries(ae)){const s=p.split("/").pop().split(".")[0];F[s]=o.default}const U=X({}),be=p=>{dt({type:p,mode:"diy"}).then(o=>{for(const u in o.data)U[u]=o.data[u]})};me(()=>V.value,(p,o)=>{ee.value=o});const xe=p=>{if(e.value.length)ge.confirm(l("changeTemplatePageTips"),l("warning"),{confirmButtonText:l("confirm"),cancelButtonText:l("cancel"),type:"warning"}).then(()=>{if(p){let o=U[p].data;e.global=o.global,o.value.length&&(e.value=o.value)}else e.init();m.query.title&&(e.global.title=m.query.title)}).catch(()=>{V.value=ee.value});else{if(p){let o=U[p].data;e.global=o.global,o.value.length&&(e.value=o.value)}else e.init();m.query.title&&(e.global.title=m.query.title)}};me(()=>e,(p,o)=>{const u={id:p.id,name:p.name,title:p.global.title,value:JSON.stringify({global:C(p.global),value:C(p.value)})};e.postMessage(),M.value=JSON.stringify(u)==JSON.stringify(T)},{deep:!0}),pt({id:m.query.id,name:m.query.name,url:m.query.url,type:m.query.type,title:m.query.title}).then(async p=>{const o=p.data;if(e.init(),e.id=o.id||0,e.name=o.name,e.type=o.type,e.typeName=o.type_name,e.templateName=o.template,e.isDefault=o.is_default,e.pageMode=o.mode,o.value){const u=JSON.parse(o.value);e.global=u.global,u.value.length&&(e.value=u.value)}else e.global.title=o.title;T.id=e.id,T.name=e.name,T.title=e.global.title,T.value=JSON.stringify({global:C(e.global),value:C(e.value)}),O.value=o.component;for(const u in O.value){le.push(u);for(const s in O.value[u].list){const _=De(O.value[u].list[s]);_.id=e.generateRandom(),_.componentName=s,_.componentTitle=_.title,Object.assign(_,_.value),delete _.name,delete _.title,delete _.value,delete _.type,delete _.icon,e.components.push(_)}}if(o.addon_list){const u=Object.assign({"/src/app/views/diy/components/edit-addon-list.vue":()=>y(()=>import("./edit-addon-list-8dd0c51a.js").then(s=>s._),["./edit-addon-list-8dd0c51a.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./diy-8d93d096.js","./sys-0f76aff3.js","./sortable.esm-be94e56d.js","./range-bcf8b229.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/diy/components/edit-graphic-nav.vue":()=>y(()=>import("./edit-graphic-nav-6aea66c6.js").then(s=>s._),["./edit-graphic-nav-6aea66c6.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./sortable.esm-be94e56d.js","./diy-8d93d096.js","./range-bcf8b229.js","./edit-graphic-nav-03947f40.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/diy/components/edit-horz-blank.vue":()=>y(()=>import("./edit-horz-blank-cca710d1.js").then(s=>s._),["./edit-horz-blank-cca710d1.js","./index-6010b07e.js","./index-0e08307e.css","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./diy-8d93d096.js","./edit-text-7fdc44bc.css","./el-form-d10bb01f.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-input-c9789fc1.css","./el-popper-eb70a20a.css"],import.meta.url),"/src/app/views/diy/components/edit-hot-area.vue":()=>y(()=>import("./edit-hot-area-490be4b6.js").then(s=>s._),["./edit-hot-area-490be4b6.js","./index-6010b07e.js","./index-0e08307e.css","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./_plugin-vue_export-helper-c27b6911.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-hot-area-5d42d4c7.css"],import.meta.url),"/src/app/views/diy/components/edit-image-ads.vue":()=>y(()=>import("./edit-image-ads-ba036595.js").then(s=>s._),["./edit-image-ads-ba036595.js","./index-6010b07e.js","./index-0e08307e.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./sortable.esm-be94e56d.js","./diy-8d93d096.js","./range-bcf8b229.js","./edit-image-ads-c34e7dc4.css"],import.meta.url),"/src/app/views/diy/components/edit-member-info.vue":()=>y(()=>import("./edit-member-info-d63d5604.js").then(s=>s._),["./edit-member-info-d63d5604.js","./index-6010b07e.js","./index-0e08307e.css","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./el-color-picker-346329a4.css"],import.meta.url),"/src/app/views/diy/components/edit-notice.vue":()=>y(()=>import("./edit-notice-1a631612.js").then(s=>s._),["./edit-notice-1a631612.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-notice-7bad7832.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/diy/components/edit-page.vue":()=>y(()=>import("./edit-page-380884c5.js").then(s=>s._),["./edit-page-380884c5.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-color-picker-346329a4.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/diy/components/edit-rubik-cube.vue":()=>y(()=>import("./edit-rubik-cube-040bee3d.js").then(s=>s._),["./edit-rubik-cube-040bee3d.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-rubik-cube-6d0cae7e.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css"],import.meta.url),"/src/app/views/diy/components/edit-text.vue":()=>y(()=>import("./edit-text-98dd7894.js").then(s=>s._),["./edit-text-98dd7894.js","./index-6010b07e.js","./index-0e08307e.css","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./diy-8d93d096.js","./edit-text-7fdc44bc.css","./el-switch-b454e5d4.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-form-d10bb01f.css"],import.meta.url)});for(let s=0;s{try{const o=JSON.parse(p.data);if(!o.type)return;switch(o.type){case"appOnLaunch":case"appOnReady":S.value=!1,N.value=!0;let u=new Date().getTime();oe.value=u-te.value;break;case"init":e.load=!0,e.postMessage();break;case"change":e.changeCurrentIndex(o.index,o.component);break;case"data":e.changeCurrentIndex(o.index,o.component),e.global=o.global,e.value=o.value;break}}catch(o){console.log("后台接受数据错误",o)}},!1);const ye=()=>{if(E.value.trim().length==0){ze({type:"warning",message:`${l("wapDomainPlaceholder")}`});return}q.value=E.value+"/wap",se(),Ie.set({key:"wap_domain",data:q.value}),N.value=!0,S.value=!1},se=()=>{j.value=`${q.value}${J.value}?mode=decorate`,te.value=new Date().getTime(),he(),setTimeout(()=>{oe.value==0&&Ce()},1e3*2)},he=()=>{const p=JSON.stringify({type:"appOnReady",message:"加载完成"});window.previewIframe&&window.previewIframe.contentWindow.postMessage(p,"*")},Ce=()=>{S.value=!0,N.value=!1,j.value=""},B=b(!1),re=p=>{if(!e.verify()||B.value)return;B.value=!0,e.templateName=V.value;let o={id:e.id,name:e.name,title:e.global.title,type:e.type,template:e.templateName,is_default:e.isDefault,is_change:M.value?0:1,value:JSON.stringify({global:C(e.global),value:C(e.value)})};(e.id?mt:ut)(o).then(s=>{B.value=!1,s.code==1&&(e.id?B.value=!1:location.href=`${location.origin}${I}`,p&&p(s.data.id))}).catch(()=>{B.value=!1})},we=()=>{re(p=>{p=e.id||p;const o=K.resolve({path:"/site/preview/wap",query:{page:J.value+"?id="+p}});window.open(o.href)})};return(p,o)=>{const u=Re("ArrowLeft"),s=qe,_=Ne,G=Se,k=Ue,D=Le,h=Ze,W=$e,Y=Ae,H=je,R=Je,ke=Me,L=Fe,f=Ge,x=We,pe=Ye,Ve=He;return d(),w("div",vt,[a(D,{class:"flex items-center h-[60px] bg-primary px-[20px]"},{default:i(()=>[r("div",{class:"text-white cursor-pointer flex items-center",onClick:fe},[a(s,{size:"14"},{default:i(()=>[a(u)]),_:1}),r("span",ft,c(t(l)("back")),1)]),r("div",bt,[r("span",xt," | "+c(t(l)("decorating"))+":"+c(t(e).typeName),1)]),t(e).type&&t(e).type!="DIY_PAGE"?(d(),w("div",yt,[r("span",ht,c(t(l)("templatePagePlaceholder")),1),a(G,{modelValue:V.value,"onUpdate:modelValue":o[0]||(o[0]=n=>V.value=n),class:"w-[180px]",placeholder:t(l)("templatePagePlaceholder"),onChange:xe},{default:i(()=>[a(_,{label:t(l)("templatePageEmpty"),value:""},null,8,["label"]),(d(!0),w(Q,null,Z(U,(n,P)=>(d(),g(_,{label:n.title,value:P,key:P},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0),Ct,a(k,{onClick:o[1]||(o[1]=n=>we())},{default:i(()=>[A(c(t(l)("preview")),1)]),_:1}),a(k,{onClick:o[2]||(o[2]=n=>re())},{default:i(()=>[A(c(t(l)("save")),1)]),_:1})]),_:1}),r("div",wt,[r("div",kt,[a(H,{class:"px-[10px]"},{default:i(()=>[a(Y,{modelValue:ne.value,"onUpdate:modelValue":o[3]||(o[3]=n=>ne.value=n),onChange:ve},{default:i(()=>[(d(!0),w(Q,null,Z(O.value,(n,P)=>(d(),g(W,{key:P,title:n.title,name:P},{default:i(()=>[r("ul",Vt,[(d(!0),w(Q,null,Z(n.list,($,de)=>(d(),w("li",{key:de,class:"w-2/6 text-center cursor-pointer h-[75px]",title:$.title,onClick:Qt=>t(e).addComponent(de,$)},[a(h,{name:$.icon,size:"23px"},null,8,["name"]),r("span",Ot,c($.title),1)],8,Et))),128))])]),_:2},1032,["title","name"]))),128))]),_:1},8,["modelValue"])]),_:1})]),r("div",Tt,[a(H,null,{default:i(()=>[a(k,{class:"page-btn absolute right-[20px]",onClick:o[4]||(o[4]=n=>t(e).changeCurrentIndex(-99))},{default:i(()=>[A(c(t(l)("pageSet")),1)]),_:1}),r("div",Bt,[r("div",{class:"preview-head bg-no-repeat bg-center bg-cover",onClick:o[5]||(o[5]=n=>t(e).changeCurrentIndex(-99))},[r("span",Dt,c(t(e).global.title),1)]),r("div",Rt,[r("ul",Pt,[a(R,{effect:"light",content:t(l)("moveUpComponent"),placement:"right"},{default:i(()=>[a(h,{name:"iconfont-iconjiantoushang",size:"20px",class:"block cursor-pointer leading-[40px]",onClick:t(e).moveUpComponent},null,8,["onClick"])]),_:1},8,["content"]),a(R,{effect:"light",content:t(l)("moveDownComponent"),placement:"right"},{default:i(()=>[a(h,{name:"iconfont-iconjiantouxia",size:"20px",class:"block cursor-pointer leading-[40px]",onClick:t(e).moveDownComponent},null,8,["onClick"])]),_:1},8,["content"]),a(R,{effect:"light",content:t(l)("copyComponent"),placement:"right"},{default:i(()=>[a(h,{name:"iconfont-iconcopy-line",size:"20px",class:"block cursor-pointer leading-[40px]",onClick:t(e).copyComponent},null,8,["onClick"])]),_:1},8,["content"]),a(R,{effect:"light",content:t(l)("delComponent"),placement:"right"},{default:i(()=>[a(h,{name:"iconfont-icondelete-line",size:"20px",class:"block cursor-pointer leading-[40px]",onClick:t(e).delComponent},null,8,["onClick"])]),_:1},8,["content"]),a(R,{effect:"light",content:t(l)("resetComponent"),placement:"right"},{default:i(()=>[a(h,{name:"iconfont-iconloader-line",size:"20px",class:"block cursor-pointer leading-[40px]",onClick:t(e).resetComponent},null,8,["onClick"])]),_:1},8,["content"])]),ue(r("iframe",{id:"previewIframe",src:j.value,frameborder:"0",class:"preview-iframe w-[375px]"},null,8,zt),[[ce,N.value]]),ue(r("div",It,[r("div",qt,c(t(l)("developTitle")),1),r("div",Nt,[r("text",St,c(t(l)("wapDomain")),1),a(ke,{modelValue:E.value,"onUpdate:modelValue":o[6]||(o[6]=n=>E.value=n),placeholder:t(l)("wapDomainPlaceholder"),clearable:""},null,8,["modelValue","placeholder"])]),a(k,{type:"primary",onClick:ye},{default:i(()=>[A(c(t(l)("confirm")),1)]),_:1})],512),[[ce,S.value]])])])]),_:1})]),r("div",Ut,[a(H,null,{default:i(()=>[a(Ve,{class:"box-card",shadow:"never"},{header:i(()=>[r("div",Lt,[r("span",$t,c(t(e).currentIndex==-99?t(l)("pageSet"):t(e).editComponent.componentTitle),1),t(e).currentComponent?(d(),w("div",At,[r("span",{class:_e(["cursor-pointer rounded-[50px] py-[5px] px-[15px]",{"bg-primary text-white":t(e).editTab=="content"}]),onClick:o[7]||(o[7]=n=>t(e).editTab="content")},c(t(l)("tabEditContent")),3),r("span",{class:_e(["cursor-pointer rounded-[50px] py-[5px] px-[15px]",{"bg-primary text-white":t(e).editTab=="style"}]),onClick:o[8]||(o[8]=n=>t(e).editTab="style")},c(t(l)("tabEditStyle")),3)])):v("",!0)])]),default:i(()=>[r("div",jt,[t(e).currentComponent?(d(),g(Pe(F[t(e).currentComponent]),{key:0,value:t(e).value[t(e).currentIndex]},{style:i(()=>[r("div",Jt,[r("h3",Mt,c(t(l)("componentStyleTitle")),1),a(pe,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(e).editComponent.ignore.indexOf("pageBgColor")==-1?(d(),g(f,{key:0,label:t(l)("bottomBgColor"),class:"display-block"},{default:i(()=>[a(L,{modelValue:t(e).editComponent.pageBgColor,"onUpdate:modelValue":o[9]||(o[9]=n=>t(e).editComponent.pageBgColor=n),"show-alpha":"",predefine:t(e).predefineColors},null,8,["modelValue","predefine"]),r("div",Ft,c(t(l)("bottomBgTips")),1)]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("componentBgColor")==-1?(d(),g(f,{key:1,label:t(l)("componentBgColor")},{default:i(()=>[a(L,{modelValue:t(e).editComponent.componentBgColor,"onUpdate:modelValue":o[10]||(o[10]=n=>t(e).editComponent.componentBgColor=n),"show-alpha":"",predefine:t(e).predefineColors},null,8,["modelValue","predefine"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginTop")==-1?(d(),g(f,{key:2,label:t(l)("marginTop")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.top,"onUpdate:modelValue":o[11]||(o[11]=n=>t(e).editComponent.margin.top=n),"show-input":"",size:"small",min:0,class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginBottom")==-1?(d(),g(f,{key:3,label:t(l)("marginBottom")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.bottom,"onUpdate:modelValue":o[12]||(o[12]=n=>t(e).editComponent.margin.bottom=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginBoth")==-1?(d(),g(f,{key:4,label:t(l)("marginBoth")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.both,"onUpdate:modelValue":o[13]||(o[13]=n=>t(e).editComponent.margin.both=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("topRounded")==-1?(d(),g(f,{key:5,label:t(l)("topRounded")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.topRounded,"onUpdate:modelValue":o[14]||(o[14]=n=>t(e).editComponent.topRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("bottomRounded")==-1?(d(),g(f,{key:6,label:t(l)("bottomRounded")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.bottomRounded,"onUpdate:modelValue":o[15]||(o[15]=n=>t(e).editComponent.bottomRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0)]),_:1})])]),_:1},8,["value"])):(d(),w("div",Gt,[r("h3",Wt,c(t(l)("componentStyleTitle")),1),a(pe,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(e).editComponent.ignore.indexOf("pageBgColor")==-1?(d(),g(f,{key:0,label:t(l)("bottomBgColor"),class:"display-block"},{default:i(()=>[a(L,{modelValue:t(e).editComponent.pageBgColor,"onUpdate:modelValue":o[16]||(o[16]=n=>t(e).editComponent.pageBgColor=n),"show-alpha":"",predefine:t(e).predefineColors},null,8,["modelValue","predefine"]),r("div",Yt,c(t(l)("bottomBgTips")),1)]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("componentBgColor")==-1?(d(),g(f,{key:1,label:t(l)("componentBgColor")},{default:i(()=>[a(L,{modelValue:t(e).editComponent.componentBgColor,"onUpdate:modelValue":o[17]||(o[17]=n=>t(e).editComponent.componentBgColor=n),"show-alpha":"",predefine:t(e).predefineColors},null,8,["modelValue","predefine"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginTop")==-1?(d(),g(f,{key:2,label:t(l)("marginTop")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.top,"onUpdate:modelValue":o[18]||(o[18]=n=>t(e).editComponent.margin.top=n),"show-input":"",size:"small",min:0,class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginBottom")==-1?(d(),g(f,{key:3,label:t(l)("marginBottom")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.bottom,"onUpdate:modelValue":o[19]||(o[19]=n=>t(e).editComponent.margin.bottom=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("marginBoth")==-1?(d(),g(f,{key:4,label:t(l)("marginBoth")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.margin.both,"onUpdate:modelValue":o[20]||(o[20]=n=>t(e).editComponent.margin.both=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("topRounded")==-1?(d(),g(f,{key:5,label:t(l)("topRounded")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.topRounded,"onUpdate:modelValue":o[21]||(o[21]=n=>t(e).editComponent.topRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0),t(e).editComponent.ignore.indexOf("bottomRounded")==-1?(d(),g(f,{key:6,label:t(l)("bottomRounded")},{default:i(()=>[a(x,{modelValue:t(e).editComponent.bottomRounded,"onUpdate:modelValue":o[22]||(o[22]=n=>t(e).editComponent.bottomRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])):v("",!0)]),_:1})]))])]),_:1})]),_:1})])])])}}});const Xo=_t(Ht,[["__scopeId","data-v-50a4e113"]]);export{Xo as default}; diff --git a/niucloud/public/admin/assets/edit-graphic-nav-03947f40.css b/niucloud/public/admin/assets/edit-graphic-nav-03947f40.css new file mode 100644 index 0000000..26ca63a --- /dev/null +++ b/niucloud/public/admin/assets/edit-graphic-nav-03947f40.css @@ -0,0 +1 @@ +.graphic-nav-slider .el-slider__input{width:100px}.edit-graphic-nav .item-wrap .del[data-v-4ba4c540]{display:none}.edit-graphic-nav .item-wrap:hover .del[data-v-4ba4c540]{display:block} diff --git a/niucloud/public/admin/assets/edit-graphic-nav-6aea66c6.js b/niucloud/public/admin/assets/edit-graphic-nav-6aea66c6.js new file mode 100644 index 0000000..904af51 --- /dev/null +++ b/niucloud/public/admin/assets/edit-graphic-nav-6aea66c6.js @@ -0,0 +1 @@ +import{d as F,N as o,s as G,R,r as I,v as M,D as B,h as v,c as V,y as _,z as g,u as e,a as s,t as p,e as t,w as a,i as r,F as y,G as P,b as W,aw as L,ax as D,X as $,W as H,Y as j,E as O,cB as A,cC as X}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css */import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{_ as q}from"./index-4718d422.js";/* empty css */import{_ as J}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";import"./el-form-item-4ed993c7.js";/* empty css */import{S as K}from"./sortable.esm-be94e56d.js";import{u as Q}from"./diy-8d93d096.js";import{r as Z}from"./range-bcf8b229.js";import{_ as ee}from"./_plugin-vue_export-helper-c27b6911.js";const le={class:"content-wrap"},te={class:"edit-attr-item-wrap"},oe={class:"mb-[10px]"},ae={class:"edit-attr-item-wrap"},ie={class:"mb-[10px]"},ne={class:"text-sm text-gray-400 mb-[10px]"},de=["onClick"],pe={class:"style-wrap"},me={class:"edit-attr-item-wrap"},re={class:"mb-[10px]"},se={class:"edit-attr-item-wrap"},ue={class:"mb-[10px]"},ce=F({__name:"edit-graphic-nav",setup(ge,{expose:S}){const l=Q();l.editComponent.ignore=[],l.editComponent.verify=u=>{const i={code:!0,message:""};return l.value[u].list.forEach(d=>{if((l.value[u].mode==="graphic"||l.value[u].mode==="img")&&d.imageUrl==="")return i.code=!1,i.message=o("imageUrlTip"),i;if((l.value[u].mode==="graphic"||l.value[u].mode==="text")&&d.title==="")return i.code=!1,i.message=o("graphicNavTitlePlaceholder"),i}),i},l.editComponent.list.forEach(u=>{u.id||(u.id=l.generateRandom())}),G(()=>l.editComponent.list,(u,i)=>{l.editComponent.list.forEach(d=>{const c=new Image;c.src=R(d.imageUrl),c.onload=async()=>{d.imgWidth=c.width,d.imgHeight=c.height}})},{deep:!0});const U=()=>{l.editComponent.list.push({id:l.generateRandom(),title:"",imageUrl:"",imgWidth:0,imgHeight:0,link:{name:""},label:{control:!1,text:"热门",textColor:"#FFFFFF",bgColorStart:"#F83287",bgColorEnd:"#FE3423"}})},x=I();return M(()=>{B(()=>{const u=K.create(x.value,{group:"item-wrap",animation:200,onEnd:i=>{const d=l.editComponent.list[i.oldIndex];l.editComponent.list.splice(i.oldIndex,1),l.editComponent.list.splice(i.newIndex,0,d),u.sort(Z(l.editComponent.list.length).map(c=>c.toString()))}})})}),S({}),(u,i)=>{const d=L,c=D,m=$,h=H,w=J,f=j,T=q,k=Y,z=O,C=A,N=X;return v(),V(y,null,[_(s("div",le,[s("div",te,[s("h3",oe,p(e(o)("graphicNavModeTitle")),1),t(f,{"label-width":"90px",class:"px-[10px]"},{default:a(()=>[t(m,{label:e(o)("layoutMode")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.layout,"onUpdate:modelValue":i[0]||(i[0]=n=>e(l).editComponent.layout=n)},{default:a(()=>[t(d,{label:"horizontal"},{default:a(()=>[r(p(e(o)("layoutModeHorizontal")),1)]),_:1}),t(d,{label:"vertical"},{default:a(()=>[r(p(e(o)("layoutModeVertical")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("graphicNavTitle")},{default:a(()=>[t(h,{modelValue:e(l).editComponent.navTitle,"onUpdate:modelValue":i[1]||(i[1]=n=>e(l).editComponent.navTitle=n),placeholder:e(o)("graphicNavTitlePlaceholder"),clearable:"",maxlength:"20","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(m,{label:e(o)("subGraphicNavTitle")},{default:a(()=>[t(h,{modelValue:e(l).editComponent.subNavTitle,"onUpdate:modelValue":i[2]||(i[2]=n=>e(l).editComponent.subNavTitle=n),placeholder:e(o)("subGraphicNavTitlePlaceholder"),clearable:"",maxlength:"20","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(m,{label:e(o)("subGraphicNavTitleLink")},{default:a(()=>[t(w,{modelValue:e(l).editComponent.subNavTitleLink,"onUpdate:modelValue":i[3]||(i[3]=n=>e(l).editComponent.subNavTitleLink=n)},null,8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("graphicNavSelectMode")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.mode,"onUpdate:modelValue":i[4]||(i[4]=n=>e(l).editComponent.mode=n)},{default:a(()=>[t(d,{label:"graphic"},{default:a(()=>[r(p(e(o)("graphicNavModeGraphic")),1)]),_:1}),t(d,{label:"img"},{default:a(()=>[r(p(e(o)("graphicNavModeImg")),1)]),_:1}),t(d,{label:"text"},{default:a(()=>[r(p(e(o)("graphicNavModeText")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),_(s("view",null,[t(m,{label:e(o)("graphicNavShowStyle")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.showStyle,"onUpdate:modelValue":i[5]||(i[5]=n=>e(l).editComponent.showStyle=n)},{default:a(()=>[t(d,{label:"fixed"},{default:a(()=>[r(p(e(o)("graphicNavStyleFixed")),1)]),_:1}),t(d,{label:"singleSlide"},{default:a(()=>[r(p(e(o)("graphicNavStyleSingleSlide")),1)]),_:1}),t(d,{label:"pageSlide"},{default:a(()=>[r(p(e(o)("graphicNavStylePageSlide")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("graphicNavRowCount")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.rowCount,"onUpdate:modelValue":i[6]||(i[6]=n=>e(l).editComponent.rowCount=n)},{default:a(()=>[t(d,{label:3},{default:a(()=>[r("3"+p(e(o)("piece")),1)]),_:1}),t(d,{label:4},{default:a(()=>[r("4"+p(e(o)("piece")),1)]),_:1}),t(d,{label:5},{default:a(()=>[r("5"+p(e(o)("piece")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("graphicNavPageCount")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.pageCount,"onUpdate:modelValue":i[7]||(i[7]=n=>e(l).editComponent.pageCount=n)},{default:a(()=>[t(d,{label:1},{default:a(()=>[r("1"+p(e(o)("line")),1)]),_:1}),t(d,{label:2},{default:a(()=>[r("2"+p(e(o)("line")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])],512),[[g,e(l).editComponent.layout=="horizontal"]])]),_:1})]),s("div",ae,[s("h3",ie,p(e(o)("graphicNavSetLabel")),1),t(f,{"label-width":"90px",class:"px-[10px]"},{default:a(()=>[s("p",ne,p(e(o)("graphicNavTips")),1),s("div",{ref_key:"imageBoxRef",ref:x},[(v(!0),V(y,null,P(e(l).editComponent.list,(n,E)=>(v(),V("div",{key:n.id,class:"item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"},[_(t(m,{label:e(o)("image")},{default:a(()=>[t(T,{modelValue:n.imageUrl,"onUpdate:modelValue":b=>n.imageUrl=b,limit:1},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]),[[g,e(l).editComponent.mode==="graphic"||e(l).editComponent.mode==="img"]]),_(t(m,{label:e(o)("graphicNavTitle")},{default:a(()=>[t(h,{modelValue:n.title,"onUpdate:modelValue":b=>n.title=b,placeholder:e(o)("graphicNavTitlePlaceholder"),clearable:"",maxlength:"20","show-word-limit":""},null,8,["modelValue","onUpdate:modelValue","placeholder"])]),_:2},1032,["label"]),[[g,e(l).editComponent.mode==="graphic"||e(l).editComponent.mode==="text"]]),_(s("div",{class:"del absolute cursor-pointer z-[2] top-[-8px] right-[-8px]",onClick:b=>e(l).editComponent.list.splice(E,1)},[t(k,{name:"element-CircleCloseFilled",color:"#bbb",size:"20px"})],8,de),[[g,e(l).editComponent.list.length>1]]),t(m,{label:e(o)("link")},{default:a(()=>[t(w,{modelValue:n.link,"onUpdate:modelValue":b=>n.link=b},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"])]))),128))],512),_(t(z,{class:"w-full",onClick:U},{default:a(()=>[r(p(e(o)("addGraphicNav")),1)]),_:1},512),[[g,e(l).editComponent.list.length<10]])]),_:1})])],512),[[g,e(l).editTab=="content"]]),_(s("div",pe,[_(s("div",me,[s("h3",re,p(e(o)("graphicNavImageSet")),1),t(f,{"label-width":"90px",class:"px-[10px]"},{default:a(()=>[t(m,{label:e(o)("graphicNavImageSize")},{default:a(()=>[t(C,{modelValue:e(l).editComponent.imageSize,"onUpdate:modelValue":i[8]||(i[8]=n=>e(l).editComponent.imageSize=n),"show-input":"",size:"small",class:"ml-[10px] graphic-nav-slider",min:20,max:60},null,8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("graphicNavAroundRadius")},{default:a(()=>[t(C,{modelValue:e(l).editComponent.aroundRadius,"onUpdate:modelValue":i[9]||(i[9]=n=>e(l).editComponent.aroundRadius=n),"show-input":"",size:"small",class:"ml-[10px] graphic-nav-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})],512),[[g,["graphic","img"].includes(e(l).editComponent.mode)]]),_(s("div",se,[s("h3",ue,p(e(o)("textSet")),1),t(f,{"label-width":"90px",class:"px-[10px]"},{default:a(()=>[t(m,{label:e(o)("textFontSize")},{default:a(()=>[t(C,{modelValue:e(l).editComponent.font.size,"onUpdate:modelValue":i[10]||(i[10]=n=>e(l).editComponent.font.size=n),"show-input":"",size:"small",class:"ml-[10px] graphic-nav-slider",min:12,max:16},null,8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("textFontWeight")},{default:a(()=>[t(c,{modelValue:e(l).editComponent.font.weight,"onUpdate:modelValue":i[11]||(i[11]=n=>e(l).editComponent.font.weight=n)},{default:a(()=>[t(d,{label:"normal"},{default:a(()=>[r(p(e(o)("fontWeightNormal")),1)]),_:1}),t(d,{label:"bold"},{default:a(()=>[r(p(e(o)("fontWeightBold")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(m,{label:e(o)("textColor")},{default:a(()=>[t(N,{modelValue:e(l).editComponent.font.color,"onUpdate:modelValue":i[12]||(i[12]=n=>e(l).editComponent.font.color=n),"show-alpha":"",predefine:e(l).predefineColors},null,8,["modelValue","predefine"])]),_:1},8,["label"]),t(m,{label:e(o)("subTextColor")},{default:a(()=>[t(N,{modelValue:e(l).editComponent.subNavColor,"onUpdate:modelValue":i[13]||(i[13]=n=>e(l).editComponent.subNavColor=n),"show-alpha":"",predefine:e(l).predefineColors},null,8,["modelValue","predefine"])]),_:1},8,["label"])]),_:1})],512),[[g,["graphic","text"].includes(e(l).editComponent.mode)]]),W(u.$slots,"style",{},void 0,!0)],512),[[g,e(l).editTab=="style"]])],64)}}});const _e=ee(ce,[["__scopeId","data-v-4ba4c540"]]),Re=Object.freeze(Object.defineProperty({__proto__:null,default:_e},Symbol.toStringTag,{value:"Module"}));export{Re as _}; diff --git a/niucloud/public/admin/assets/edit-horz-blank-cca710d1.js b/niucloud/public/admin/assets/edit-horz-blank-cca710d1.js new file mode 100644 index 0000000..50e551e --- /dev/null +++ b/niucloud/public/admin/assets/edit-horz-blank-cca710d1.js @@ -0,0 +1 @@ +import{d as h,h as b,c as g,y as l,z as n,u as e,a as o,t as f,N as i,e as s,w as r,b as y,F as v,cB as w,X as S,Y as x}from"./index-6010b07e.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css */import{u as B}from"./diy-8d93d096.js";const k={class:"content-wrap"},z={class:"edit-attr-item-wrap"},C={class:"mb-[10px]"},V={class:"style-wrap"},E=h({__name:"edit-horz-blank",setup(F,{expose:_}){const t=B();return t.editComponent.ignore=["pageBgColor","topRounded","bottomRounded","marginTop","marginBottom","marginBoth"],_({}),(m,a)=>{const d=w,p=S,c=x;return b(),g(v,null,[l(o("div",k,[o("div",z,[o("h3",C,f(e(i)("blankHeightSet")),1),s(c,{"label-width":"80px",class:"px-[10px]"},{default:r(()=>[s(p,{label:e(i)("blankHeight")},{default:r(()=>[s(d,{modelValue:e(t).editComponent.height,"onUpdate:modelValue":a[0]||(a[0]=u=>e(t).editComponent.height=u),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})])],512),[[n,e(t).editTab=="content"]]),l(o("div",V,[y(m.$slots,"style")],512),[[n,e(t).editTab=="style"]])],64)}}});const P=Object.freeze(Object.defineProperty({__proto__:null,default:E},Symbol.toStringTag,{value:"Module"}));export{P as _}; diff --git a/niucloud/public/admin/assets/edit-hot-area-490be4b6.js b/niucloud/public/admin/assets/edit-hot-area-490be4b6.js new file mode 100644 index 0000000..e5d23c3 --- /dev/null +++ b/niucloud/public/admin/assets/edit-hot-area-490be4b6.js @@ -0,0 +1 @@ +import{d as K,q as ne,r as I,n as ie,h as X,c as Y,a as u,b as Q,u as r,i as E,t as V,N as v,e as w,w as L,x as j,R as Z,F,G as P,B as R,ab as N,a2 as q,E as ae,X as ee,Y as te,a7 as fe,p as ce,g as de,y as G,z as J}from"./index-6010b07e.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as pe}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";/* empty css */import{_ as ue}from"./_plugin-vue_export-helper-c27b6911.js";import{_ as me}from"./index-4718d422.js";import{u as he}from"./diy-8d93d096.js";const _e=A=>(ce("data-v-4ccdb30b"),A=A(),de(),A),ge={key:0},ve={class:"text-primary p-[4px]"},xe={key:1},be={class:"flex"},ye=["id","onMousedown"],we=_e(()=>u("span",{class:"p-[4px]"},"|",-1)),ke=["onMousedown"],Te=["onMousedown"],Ce=["onMousedown"],Me=["onMousedown"],Ve={class:"mb-[10px] text-lg text-black"},He={class:"overflow-y-auto h-[300px]"},Xe={key:0,class:"mb-[16px]"},Ye={class:"flex items-center"},Le={class:"dialog-footer"},Se=K({__name:"index",props:{modelValue:{type:String,default:""}},emits:["update:modelValue"],setup(A,{expose:z,emit:b}){const O=A,S=ne({get(){return O.modelValue},set(x){b("update:modelValue",x)}}),_=I(!1),m=I(400),T=I(400),W=I(4),d=ie([]),U=()=>{let x=d.length%W.value*100,i=Math.floor(d.length/W.value)*100;i>=m.value&&(i=0,x=0),d.push({left:x,top:i,width:100,height:100,unit:"px",link:{name:""}})},B=(x,i)=>{const p=document.getElementById("box_"+i),o=x.clientX-p.offsetLeft,H=x.clientY-p.offsetTop;document.onmousemove=function(g){p.style.left=g.clientX-o+"px",p.style.top=g.clientY-H+"px",g.clientX-o<0&&(p.style.left=0),g.clientX-o>m.value-p.offsetWidth&&(p.style.left=m.value-p.offsetWidth+"px"),g.clientY-H<0&&(p.style.top=0),g.clientY-H>T.value-p.offsetHeight&&(p.style.top=T.value-p.offsetHeight+"px"),d[i].left=p.offsetLeft,d[i].top=p.offsetTop,d[i].width=p.offsetWidth,d[i].height=p.offsetHeight,d[i].unit="px"},document.onmouseup=function(g){document.onmousemove=null}},D=(x,i)=>{const p=x;p.stopPropagation();const o=document.getElementById("box_"+i),H=x.target.className,g=o.offsetWidth,$=o.offsetHeight,k=p.clientX,c=p.clientY,f=o.offsetLeft,a=o.offsetTop,s=50,l=50;document.onmousemove=function(le){const h=le;if(H=="box1"){let e=g-(h.clientX-k);const C=m.value;let t=$-(h.clientY-c);const M=T.value-a;let n=f+(h.clientX-k),y=a+(h.clientY-c);eC&&(e=C),tM&&(t=M),f==0&&a==0?e==s&&t==l?(n=s,y=l):e==s&&t>l?n=s:e>s&&t==l&&(y=l):f==0&&a>0?e==s&&t==l||e==s&&t>l?(n=s,y=o.offsetTop):e>s&&t==l&&(y=o.offsetTop):f>0&&a==0?e==s&&t==l?(n=o.offsetLeft,y=o.offsetTop):e==s&&t>l?(n=o.offsetLeft,y=0):e>s&&t==l&&(y=o.offsetTop):f>0&&a>0&&(e==s&&t==l||e==s&&t>l?(n=o.offsetLeft,y=o.offsetTop):e>s&&t==l&&(y=o.offsetTop)),n<0&&(n=0,e=g-(h.clientX-k)+(f+(h.clientX-k))),y<0&&(y=0,t=a+(h.clientY-c)+($-(h.clientY-c))),o.style.width=e+"px",o.style.height=t+"px",o.style.left=n+"px",o.style.top=y+"px"}else if(H=="box2"){let e=g+(h.clientX-k);const C=m.value-f;let t=$-(h.clientY-c);const M=T.value-a;let n=a+(h.clientY-c);eC&&(e=C),tM&&(t=M),f==0&&a==0?e==s&&t==l?n=l:e==s&&t>l||e>s&&t==l&&(n=l):f==0&&a>0?(e==s&&t==l||e==s&&t>l||e>s&&t==l)&&(n=o.offsetTop):f>0&&a==0?e==s&&t==l?n=o.offsetTop:e==s&&t>l?n=0:e>s&&t==l&&(n=o.offsetTop):f>0&&a>0&&(e==s&&t==l||e==s&&t>l||e>s&&t==l)&&(n=o.offsetTop),n<0&&(n=0,t=a+(h.clientY-c)+($-(h.clientY-c))),o.style.width=e+"px",o.style.height=t+"px",o.style.top=n+"px"}else if(H=="box3"){let e=g-(h.clientX-k);const C=m.value;let t=$+(h.clientY-c);const M=T.value-a;let n=f+(h.clientX-k);eC&&(e=C),tM&&(t=M),f==0&&a==0||f==0&&a>0?(e==s&&t==l||e==s&&t>l)&&(n=s):f>0&&a==0?(e==s&&t==l||e==s&&t>l)&&(n=o.offsetLeft):f>0&&a>0&&(e==s&&t==l||e==s&&t>l)&&(n=o.offsetLeft),n<0&&(n=0,e=g-(h.clientX-k)+(f+(h.clientX-k))),o.style.width=e+"px",o.style.height=t+"px",o.style.left=n+"px"}else if(H=="box4"){let e=g+(h.clientX-k);const C=m.value-f;let t=$+(h.clientY-c);const M=T.value-a;eC&&(e=C),tM&&(t=M),o.style.width=e+"px",o.style.height=t+"px"}d[i].left=o.offsetLeft,d[i].top=o.offsetTop,d[i].width=o.offsetWidth,d[i].height=o.offsetHeight,d[i].unit="px"},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null}},oe=()=>{if(!S.value.imageUrl){q({type:"warning",message:`${v("imageUrlTip")}`});return}Object.keys(S.value.heatMapData).length?d.splice(0,d.length,...S.value.heatMapData):(d.splice(0,d.length),U()),_.value=!0},se=()=>{let x=!0;for(let i=0;i{const o=document.getElementById("box_"+p);i.width=parseFloat(o.offsetWidth/m.value*100).toFixed(2),i.height=parseFloat(o.offsetHeight/T.value*100).toFixed(2),i.left=parseFloat(o.offsetLeft/m.value*100).toFixed(2),i.top=parseFloat(o.offsetTop/T.value*100).toFixed(2),i.unit="%"}),S.value.heatMapData=d,_.value=!1)};return z({showDialog:_}),(x,i)=>{const p=ae,o=re,H=pe,g=ee,$=te,k=fe;return X(),Y("div",null,[u("div",{onClick:oe},[Q(x.$slots,"default",{},()=>[r(S).heatMapData.length?(X(),Y("div",ge,[E(V(r(v)("selected")),1),u("span",ve,V(r(S).heatMapData.length),1),E(V(r(v)("selectedAfterHotArea")),1)])):(X(),Y("div",xe,V(r(v)("addHotArea")),1))],!0)]),w(k,{modelValue:_.value,"onUpdate:modelValue":i[1]||(i[1]=c=>_.value=c),title:r(v)("hotAreaSet"),width:"45%","close-on-press-escape":!1,"destroy-on-close":!0,"close-on-click-modal":!1},{footer:L(()=>[u("span",Le,[w(p,{onClick:i[0]||(i[0]=c=>_.value=!1)},{default:L(()=>[E(V(r(v)("cancel")),1)]),_:1}),w(p,{type:"primary",onClick:se},{default:L(()=>[E(V(r(v)("confirm")),1)]),_:1})])]),default:L(()=>[u("div",be,[u("div",{class:"content-box relative bg-cover bg-gray-100 border border-dashed border-gray-500",style:j({backgroundImage:"url("+r(Z)(r(S).imageUrl)+")",width:m.value+"px",height:T.value+"px"})},[(X(!0),Y(F,null,P(d,(c,f)=>(X(),Y("div",{id:"box_"+f,key:f,class:"area-box border border-solid border-[#ccc] w-[100px] h-[100px] absolute top-0 left-0 select-none p-[5px]",style:j({left:c.left+c.unit,top:c.top+c.unit,width:c.width+c.unit,height:c.height+c.unit}),onMousedown:a=>B(a,f)},[u("span",null,V(f+1),1),c.link.title?(X(),Y(F,{key:0},[we,u("span",null,V(c.link.title),1)],64)):R("",!0),u("span",{class:"box1",onMousedown:N(a=>D(a,f),["stop"])},null,40,ke),u("span",{class:"box2",onMousedown:N(a=>D(a,f),["stop"])},null,40,Te),u("span",{class:"box3",onMousedown:N(a=>D(a,f),["stop"])},null,40,Ce),u("span",{class:"box4",onMousedown:N(a=>D(a,f),["stop"])},null,40,Me)],44,ye))),128))],4),w($,{"label-width":"80px",class:"pl-[20px]"},{default:L(()=>[u("h3",Ve,V(r(v)("hotAreaManage")),1),w(p,{type:"primary",plain:"",size:"small",class:"mb-[10px]",onClick:U},{default:L(()=>[E(V(r(v)("addHotArea")),1)]),_:1}),u("div",He,[(X(!0),Y(F,null,P(d,(c,f)=>(X(),Y(F,{key:f},[c?(X(),Y("div",Xe,[w(g,{label:r(v)("hotArea")+(f+1)},{default:L(()=>[u("div",Ye,[w(o,{modelValue:c.link,"onUpdate:modelValue":a=>c.link=a},null,8,["modelValue","onUpdate:modelValue"]),w(H,{class:"del cursor-pointer mx-[10px]",name:"element-CircleCloseFilled",color:"#bbb",size:"20px",onClick:a=>d.splice(f,1)},null,8,["onClick"])])]),_:2},1032,["label"])])):R("",!0)],64))),128))])]),_:1})])]),_:1},8,["modelValue","title"])])}}});const $e=ue(Se,[["__scopeId","data-v-4ccdb30b"]]),Ae={class:"content-wrap"},We={class:"edit-attr-item-wrap"},Be={class:"mb-[10px]"},Ee={ref:"imageBoxRef"},Fe={class:"item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"},Ue={class:"style-wrap"},De=K({__name:"edit-hot-area",setup(A,{expose:z}){const b=he();b.editComponent.ignore=[],b.editComponent.verify=_=>{const m={code:!0,message:""};return b.value[_].imageUrl===""&&(m.code=!1,m.message=v("imageUrlTip")),m};const O=_=>{S()},S=()=>{const _=new Image;_.src=Z(b.editComponent.imageUrl),_.onload=async()=>{b.editComponent.imgWidth=_.width,b.editComponent.imgHeight=_.height}};return z({}),(_,m)=>{const T=me,W=ee,d=$e,U=te;return X(),Y(F,null,[G(u("div",Ae,[u("div",We,[u("h3",Be,V(r(v)("hotAreaSet")),1),w(U,{"label-width":"80px",class:"px-[10px]"},{default:L(()=>[u("div",Ee,[u("div",Fe,[w(W,{label:r(v)("hotAreaBackground")},{default:L(()=>[w(T,{modelValue:r(b).editComponent.imageUrl,"onUpdate:modelValue":m[0]||(m[0]=B=>r(b).editComponent.imageUrl=B),limit:1,onChange:O},null,8,["modelValue"])]),_:1},8,["label"]),w(W,{label:r(v)("hotAreaSet")},{default:L(()=>[w(d,{modelValue:r(b).editComponent,"onUpdate:modelValue":m[1]||(m[1]=B=>r(b).editComponent=B)},null,8,["modelValue"])]),_:1},8,["label"])])],512)]),_:1})])],512),[[J,r(b).editTab=="content"]]),G(u("div",Ue,[Q(_.$slots,"style")],512),[[J,r(b).editTab=="style"]])],64)}}}),Ke=Object.freeze(Object.defineProperty({__proto__:null,default:De},Symbol.toStringTag,{value:"Module"}));export{Ke as _}; diff --git a/niucloud/public/admin/assets/edit-hot-area-5d42d4c7.css b/niucloud/public/admin/assets/edit-hot-area-5d42d4c7.css new file mode 100644 index 0000000..ea44ff9 --- /dev/null +++ b/niucloud/public/admin/assets/edit-hot-area-5d42d4c7.css @@ -0,0 +1 @@ +.area-box[data-v-4ccdb30b]{background-color:#ffffffb3}.box1[data-v-4ccdb30b],.box2[data-v-4ccdb30b],.box3[data-v-4ccdb30b],.box4[data-v-4ccdb30b]{width:10px;height:10px;background-color:#fff;position:absolute;border-radius:50%;border:1px solid #333}.box1[data-v-4ccdb30b]{top:-5px;left:-5px;cursor:nw-resize}.box2[data-v-4ccdb30b]{top:-5px;right:-5px;cursor:ne-resize}.box3[data-v-4ccdb30b]{left:-5px;bottom:-5px;cursor:sw-resize}.box4[data-v-4ccdb30b]{bottom:-5px;right:-5px;cursor:se-resize} diff --git a/niucloud/public/admin/assets/edit-image-ads-ba036595.js b/niucloud/public/admin/assets/edit-image-ads-ba036595.js new file mode 100644 index 0000000..009e413 --- /dev/null +++ b/niucloud/public/admin/assets/edit-image-ads-ba036595.js @@ -0,0 +1 @@ +import{d as B,N as n,s as T,R,r as A,v as F,D as N,h,c as f,y as c,z as g,u as o,a as r,t as b,e as l,w as m,i as x,F as v,G as $,b as z,W as D,X as W,E as P,Y as j}from"./index-6010b07e.js";/* empty css *//* empty css */import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";import{_ as O}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{_ as G}from"./index-4718d422.js";import"./el-form-item-4ed993c7.js";/* empty css */import{S as L}from"./sortable.esm-be94e56d.js";import{u as X}from"./diy-8d93d096.js";import{r as Y}from"./range-bcf8b229.js";import{_ as q}from"./_plugin-vue_export-helper-c27b6911.js";const J={class:"content-wrap"},K={class:"edit-attr-item-wrap"},Q={class:"mb-[10px]"},Z={class:"text-sm text-gray-400 mb-[10px]"},ee=["onClick"],te={class:"style-wrap"},oe=B({__name:"edit-image-ads",setup(ie,{expose:y}){const t=X();t.editComponent.ignore=[],t.editComponent.verify=a=>{const e={code:!0,message:""};return t.value[a].imageHeight==0?(e.code=!1,e.message=n("imageHeightPlaceholder"),e):/^\d+.?\d{0,2}$/.test(t.value[a].imageHeight)?(t.value[a].list.forEach(s=>{if(s.imageUrl==="")return e.code=!1,e.message=n("imageUrlTip"),e}),e):(e.code=!1,e.message=n("imageHeightRegNum"),e)},t.editComponent.list.forEach(a=>{a.id||(a.id=t.generateRandom())}),T(()=>t.editComponent.list,(a,e)=>{_()},{deep:!0});const w=()=>{t.editComponent.list.push({id:t.generateRandom(),imageUrl:"",imgWidth:0,imgHeight:0,link:{name:""}})},H=a=>{_(!0)},_=(a=!1)=>{t.editComponent.list.forEach((e,s)=>{const i=new Image;i.src=R(e.imageUrl),i.onload=async()=>{if(e.imgWidth=i.width,e.imgHeight=i.height,a&&s==0){const u=e.imgHeight/e.imgWidth;e.width=375,e.height=e.width*u,t.editComponent.imageHeight=parseInt(e.height)}}})},V=()=>{t.editComponent.imageHeight=parseInt(t.editComponent.imageHeight)},C=A();return F(()=>{N(()=>{const a=L.create(C.value,{group:"item-wrap",animation:200,onEnd:e=>{const s=t.editComponent.list[e.oldIndex];t.editComponent.list.splice(e.oldIndex,1),t.editComponent.list.splice(e.newIndex,0,s),a.sort(Y(t.editComponent.list.length).map(i=>i.toString())),_(!0)}})})}),y({}),(a,e)=>{const s=D,i=W,u=G,I=O,k=M,S=P,U=j;return h(),f(v,null,[c(r("div",J,[r("div",K,[r("h3",Q,b(o(n)("imageSet")),1),l(U,{"label-width":"80px",class:"px-[10px]"},{default:m(()=>[l(i,{label:o(n)("imageHeight"),class:"display-block"},{default:m(()=>[l(s,{modelValue:o(t).editComponent.imageHeight,"onUpdate:modelValue":e[0]||(e[0]=d=>o(t).editComponent.imageHeight=d),placeholder:o(n)("imageHeightPlaceholder"),clearable:"",maxlength:"10",onBlur:V},{append:m(()=>[x("px")]),_:1},8,["modelValue","placeholder"]),r("div",Z,b(o(n)("imageAdsTips")),1)]),_:1},8,["label"]),r("div",{ref_key:"imageBoxRef",ref:C},[(h(!0),f(v,null,$(o(t).editComponent.list,(d,E)=>(h(),f("div",{key:d.id,class:"item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"},[l(i,{label:o(n)("image")},{default:m(()=>[l(u,{modelValue:d.imageUrl,"onUpdate:modelValue":p=>d.imageUrl=p,limit:1,onChange:H},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]),c(r("div",{class:"del absolute cursor-pointer z-[2] top-[-8px] right-[-8px]",onClick:p=>o(t).editComponent.list.splice(E,1)},[l(I,{name:"element-CircleCloseFilled",color:"#bbb",size:"20px"})],8,ee),[[g,o(t).editComponent.list.length>1]]),l(i,{label:o(n)("link")},{default:m(()=>[l(k,{modelValue:d.link,"onUpdate:modelValue":p=>d.link=p},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"])]))),128))],512),c(l(S,{class:"w-full",onClick:w},{default:m(()=>[x(b(o(n)("addImageAd")),1)]),_:1},512),[[g,o(t).editComponent.list.length<10]])]),_:1})])],512),[[g,o(t).editTab=="content"]]),c(r("div",te,[z(a.$slots,"style",{},void 0,!0)],512),[[g,o(t).editTab=="style"]])],64)}}});const ae=q(oe,[["__scopeId","data-v-8cc34aa0"]]),fe=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"}));export{fe as _}; diff --git a/niucloud/public/admin/assets/edit-image-ads-c34e7dc4.css b/niucloud/public/admin/assets/edit-image-ads-c34e7dc4.css new file mode 100644 index 0000000..070a30d --- /dev/null +++ b/niucloud/public/admin/assets/edit-image-ads-c34e7dc4.css @@ -0,0 +1 @@ +.edit-image-ads .item-wrap .del[data-v-8cc34aa0]{display:none}.edit-image-ads .item-wrap:hover .del[data-v-8cc34aa0]{display:block} diff --git a/niucloud/public/admin/assets/edit-label-c69aed3e.js b/niucloud/public/admin/assets/edit-label-c69aed3e.js new file mode 100644 index 0000000..6fff801 --- /dev/null +++ b/niucloud/public/admin/assets/edit-label-c69aed3e.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-label.vue_vue_type_script_setup_true_lang-0a342347.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./member-ff972216.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-label.vue_vue_type_script_setup_true_lang-0a342347.js b/niucloud/public/admin/assets/edit-label.vue_vue_type_script_setup_true_lang-0a342347.js new file mode 100644 index 0000000..234b4ad --- /dev/null +++ b/niucloud/public/admin/assets/edit-label.vue_vue_type_script_setup_true_lang-0a342347.js @@ -0,0 +1 @@ +import{d as M,r as f,n as B,q as C,N as a,h as g,I as V,w as n,a as I,e as i,i as w,t as y,u as o,y as O,W as P,X as U,Y as R,E as T,a7 as $,$ as j}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{u as k,s as q,t as S}from"./member-ff972216.js";const W={class:"dialog-footer"},ee=M({__name:"edit-label",emits:["complete"],setup(X,{expose:h,emit:x}){const d=f(!1),s=f(!1);let p="";const c={label_id:"",label_name:"",memo:"",sort:0},t=B({...c}),b=f(),D=C(()=>({label_name:[{required:!0,message:a("labelNamePlaceholder"),trigger:"blur"}],sort:[{validator:E,trigger:"blur"}]})),E=(m,e,l)=>{e<0?l(new Error(a("sortVerifyOne"))):e.toString().indexOf(".")!=-1?l(new Error(a("sortVerifyTwo"))):l()},N=async m=>{if(s.value||!m)return;const e=t.label_id?k:q;await m.validate(async l=>{l&&(s.value=!0,e(t).then(_=>{s.value=!1,d.value=!1,x("complete")}).catch(()=>{s.value=!1}))})};return h({showDialog:d,setFormData:async(m=null)=>{if(s.value=!0,Object.assign(t,c),p=a("addMemberLabel"),m){p=a("updateMemberLabel");const e=await(await S(m.label_id)).data;e&&Object.keys(t).forEach(l=>{e[l]!=null&&(t[l]=e[l])})}s.value=!1}}),(m,e)=>{const l=P,u=U,_=R,v=T,L=$,F=j;return g(),V(L,{modelValue:d.value,"onUpdate:modelValue":e[5]||(e[5]=r=>d.value=r),title:o(p),width:"500px","destroy-on-close":!0},{footer:n(()=>[I("span",W,[i(v,{onClick:e[3]||(e[3]=r=>d.value=!1)},{default:n(()=>[w(y(o(a)("cancel")),1)]),_:1}),i(v,{type:"primary",loading:s.value,onClick:e[4]||(e[4]=r=>N(b.value))},{default:n(()=>[w(y(o(a)("confirm")),1)]),_:1},8,["loading"])])]),default:n(()=>[O((g(),V(_,{model:t,"label-width":"90px",ref_key:"formRef",ref:b,rules:o(D),class:"page-form"},{default:n(()=>[i(u,{label:o(a)("labelName"),prop:"label_name"},{default:n(()=>[i(l,{modelValue:t.label_name,"onUpdate:modelValue":e[0]||(e[0]=r=>t.label_name=r),clearable:"",placeholder:o(a)("labelNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),i(u,{label:o(a)("memo")},{default:n(()=>[i(l,{modelValue:t.memo,"onUpdate:modelValue":e[1]||(e[1]=r=>t.memo=r),type:"textarea",rows:"4",clearable:"",placeholder:o(a)("memoPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),i(u,{label:o(a)("sort"),prop:"sort"},{default:n(()=>[i(l,{modelValue:t.sort,"onUpdate:modelValue":e[2]||(e[2]=r=>t.sort=r),clearable:"",placeholder:o(a)("sortPlaceholder"),class:"input-width",type:"number"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[F,s.value]])]),_:1},8,["modelValue","title"])}}});export{ee as _}; diff --git a/niucloud/public/admin/assets/edit-member-8a748748.js b/niucloud/public/admin/assets/edit-member-8a748748.js new file mode 100644 index 0000000..8a5f592 --- /dev/null +++ b/niucloud/public/admin/assets/edit-member-8a748748.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-member.vue_vue_type_script_setup_true_lang-b7571345.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./index-4718d422.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";import"./member-ff972216.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-member-info-d63d5604.js b/niucloud/public/admin/assets/edit-member-info-d63d5604.js new file mode 100644 index 0000000..e7e03e7 --- /dev/null +++ b/niucloud/public/admin/assets/edit-member-info-d63d5604.js @@ -0,0 +1 @@ +import{d as x,h as C,c as g,y as _,z as d,u as e,a as o,t as p,N as a,e as l,w as n,b as h,F as y,X as w,Y as S,cC as v}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as V}from"./index-4718d422.js";import{u as U}from"./diy-8d93d096.js";const k={class:"content-wrap"},E={class:"edit-attr-item-wrap"},F={class:"mb-[10px]"},B={class:"style-wrap"},D={class:"edit-attr-item-wrap"},N={class:"mb-[10px]"},T=x({__name:"edit-member-info",setup(j,{expose:c}){const t=U();return t.editComponent.ignore=[],c({}),(u,s)=>{const b=V,i=w,m=S,f=v;return C(),g(y,null,[_(o("div",k,[o("div",E,[o("h3",F,p(e(a)("memberStyle")),1),l(m,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[l(i,{label:e(a)("bgUrl")},{default:n(()=>[l(b,{modelValue:e(t).editComponent.bgUrl,"onUpdate:modelValue":s[0]||(s[0]=r=>e(t).editComponent.bgUrl=r),limit:1},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})])],512),[[d,e(t).editTab=="content"]]),_(o("div",B,[o("div",D,[o("h3",N,p(e(a)("memberStyle")),1),l(m,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[l(i,{label:e(a)("textColor")},{default:n(()=>[l(f,{modelValue:e(t).editComponent.textColor,"onUpdate:modelValue":s[1]||(s[1]=r=>e(t).editComponent.textColor=r)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),h(u.$slots,"style")],512),[[d,e(t).editTab=="style"]])],64)}}}),q=Object.freeze(Object.defineProperty({__proto__:null,default:T},Symbol.toStringTag,{value:"Module"}));export{q as _}; diff --git a/niucloud/public/admin/assets/edit-member.vue_vue_type_script_setup_true_lang-b7571345.js b/niucloud/public/admin/assets/edit-member.vue_vue_type_script_setup_true_lang-b7571345.js new file mode 100644 index 0000000..361e5ea --- /dev/null +++ b/niucloud/public/admin/assets/edit-member.vue_vue_type_script_setup_true_lang-b7571345.js @@ -0,0 +1 @@ +import{d as T,r as i,N as t,n as A,h as r,I as u,w as n,a as $,e as p,i as x,t as E,u as m,y as R,B as _,c as w,F,G as L,X as q,W as G,cI as O,aq as W,aC as X,Y as j,E as z,a7 as H,$ as J}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as K}from"./index-4718d422.js";import{v as Q,w as Z}from"./member-ff972216.js";const ee={class:"dialog-footer"},Ve=T({__name:"edit-member",emits:["complete"],setup(le,{expose:M,emit:N}){const o=i(""),y=i(""),g=i(""),c=i(!1),d=i(!1),S=i([{id:0,name:t("secrecySex")},{id:1,name:t("manSex")},{id:2,name:t("girlSex")}]),V=i(null);(async()=>{V.value=await(await Q()).data})();const a=A({...{headimg:"",nickname:"",member_label:"",sex:"",birthday:""}}),B=async s=>{d.value=!0;const e=i({member_id:g.value,field:o.value,value:a[o.value]});Z(e.value).then(v=>{d.value=!1,c.value=!1,N("complete")}).catch(()=>{d.value=!1})};return M({showDialog:c,setDialogType:async(s=null)=>{d.value=!0,o.value=s.type,y.value=s.title,g.value=s.id,a[o.value]=s.data[o.value],o.value=="member_label"&&a[o.value]&&a[o.value].forEach((e,v)=>{a[o.value][v]=Number.parseFloat(e)}),d.value=!1}}),(s,e)=>{const v=K,b=q,C=G,U=O,h=W,k=X,I=j,D=z,Y=H,P=J;return r(),u(Y,{modelValue:c.value,"onUpdate:modelValue":e[7]||(e[7]=l=>c.value=l),title:y.value||m(t)("updateMember"),width:"500px","destroy-on-close":!0},{footer:n(()=>[$("span",ee,[p(D,{onClick:e[5]||(e[5]=l=>c.value=!1)},{default:n(()=>[x(E(m(t)("cancel")),1)]),_:1}),p(D,{type:"primary",loading:d.value,onClick:e[6]||(e[6]=l=>B(s.formRef))},{default:n(()=>[x(E(m(t)("confirm")),1)]),_:1},8,["loading"])])]),default:n(()=>[R((r(),u(I,{model:a,"label-width":"90px",rules:s.formRules,class:"page-form"},{default:n(()=>[o.value=="headimg"?(r(),u(b,{key:0,label:m(t)("headimg")},{default:n(()=>[p(v,{modelValue:a.headimg,"onUpdate:modelValue":e[0]||(e[0]=l=>a.headimg=l)},null,8,["modelValue"])]),_:1},8,["label"])):_("",!0),o.value=="nickname"?(r(),u(b,{key:1,label:m(t)("nickname")},{default:n(()=>[p(C,{modelValue:a.nickname,"onUpdate:modelValue":e[1]||(e[1]=l=>a.nickname=l),clearable:"",placeholder:m(t)("nickNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])):_("",!0),o.value=="birthday"?(r(),u(b,{key:2,label:m(t)("birthday")},{default:n(()=>[p(U,{modelValue:a.birthday,"onUpdate:modelValue":e[2]||(e[2]=l=>a.birthday=l),"value-format":"YYYY-MM-DD",type:"date",placeholder:m(t)("birthdayTip")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])):_("",!0),o.value=="sex"?(r(),u(b,{key:3,label:m(t)("sex")},{default:n(()=>[p(k,{modelValue:a.sex,"onUpdate:modelValue":e[3]||(e[3]=l=>a.sex=l),clearable:"",placeholder:m(t)("sexPlaceholder"),class:"input-width"},{default:n(()=>[(r(!0),w(F,null,L(S.value,(l,f)=>(r(),u(h,{label:l.name,value:l.id,key:f},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):_("",!0),o.value=="member_label"?(r(),u(b,{key:4,label:m(t)("memberLabel")},{default:n(()=>[p(k,{modelValue:a.member_label,"onUpdate:modelValue":e[4]||(e[4]=l=>a.member_label=l),multiple:"","collapse-tags":"",placeholder:m(t)("memberLabelPlaceholder"),class:"input-width"},{default:n(()=>[(r(!0),w(F,null,L(V.value,(l,f)=>(r(),u(h,{label:l.label_name,value:l.label_id,key:f},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):_("",!0)]),_:1},8,["model","rules"])),[[P,d.value]])]),_:1},8,["modelValue","title"])}}});export{Ve as _}; diff --git a/niucloud/public/admin/assets/edit-menu-33c1c40a.js b/niucloud/public/admin/assets/edit-menu-33c1c40a.js new file mode 100644 index 0000000..d6ae4a8 --- /dev/null +++ b/niucloud/public/admin/assets/edit-menu-33c1c40a.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index-fcfc7fdc.js";import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css */import"./tools-8d764897.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js b/niucloud/public/admin/assets/edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js new file mode 100644 index 0000000..cacb1a5 --- /dev/null +++ b/niucloud/public/admin/assets/edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js @@ -0,0 +1 @@ +import{d as Z,r as b,n as W,q as X,N as o,h as f,I as v,w as n,a as x,e as a,i as m,t as p,u,y as c,B as Y,c as H,F as J,G as Q,z as y,W as ee,X as le,aw as ae,ax as te,aq as oe,aC as ne,aD as ue,aE as de,Y as se,E as re,a7 as me,$ as pe}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as ie}from"./index-fcfc7fdc.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{k as _e,l as ce,m as fe,n as ye,o as be}from"./sys-0f76aff3.js";import{g as ve}from"./tools-8d764897.js";const Ve={class:"input-width"},he={class:"dialog-footer"},Re=Z({__name:"edit-menu",emits:["complete"],setup(ge,{expose:F,emit:I}){const V=b(!1),i=b(!1);let w="";const U={id:0,menu_name:"",menu_type:0,parent_key:"",icon:"",api_url:"",router_path:"",view_path:"",methods:"post",sort:"",status:1,is_show:1,menu_key:"",app_type:"",addon:"",menu_short_name:""},e=W({...U}),k=b([]),E=b([]),P=b([]),D=b(),C=d=>/^([a-zA-Z_$])([a-zA-Z0-9_$])*$/.test(d),q=X(()=>({menu_name:[{required:!0,message:o("menuNamePlaceholder"),trigger:"blur"}],menu_key:[{required:!0,message:o("menuKeyPlaceholder"),trigger:"blur"},{validator:(d,l,s)=>{C(l)||s(new Error(o("menuKeyValidata"))),s()},trigger:"blur"}],router_path:[{required:e.menu_type!=2,message:o("routePathPlaceholder"),trigger:"blur"}],view_path:[{required:e.menu_type==1,message:o("viewPathPlaceholder"),trigger:"blur"}],api_url:[{required:e.menu_type==2,message:o("authIdPlaceholder"),trigger:"blur"}]})),B=async()=>{const{data:d}=await ve({});k.value=[{title:"系统",key:""}],k.value.push(...d)},A=async()=>{const{data:d}=await ye();E.value=[{menu_name:"顶级",menu_key:""}],E.value.push(...d)},M=async d=>{const{data:l}=await be(d);P.value=l},L=async d=>{e.parent_key="",d!=""&&(await M(d),e.parent_key=P.value[0].menu_key)},$=async d=>{if(i.value||!d)return;const l=e.id?_e:ce;await d.validate(async(s,r)=>{s&&(i.value=!0,l(e).then(g=>{i.value=!1,V.value=!1,I("complete")}).catch(()=>{i.value=!1}))})};return F({showDialog:V,setFormData:async(d=null)=>{if(i.value=!0,Object.assign(e,U),w=o("addMenu"),B(),A(),d.menu_key){w=o("updateMenu");const l=await(await fe(d.app_type,d.menu_key)).data;Object.keys(e).forEach(s=>{l[s]!=null&&(e[s]=l[s])}),e.addon!=""&&M(e.addon)}else Object.keys(e).forEach(l=>{d[l]!=null&&(e[l]=d[l])});i.value=!1}}),(d,l)=>{const s=ee,r=le,_=ae,g=te,h=oe,N=ne,S=ue,K=ie,O=de,R=se,T=re,j=me,z=pe;return f(),v(j,{modelValue:V.value,"onUpdate:modelValue":l[17]||(l[17]=t=>V.value=t),title:u(w),width:"500px","destroy-on-close":!0},{footer:n(()=>[x("span",he,[a(T,{onClick:l[15]||(l[15]=t=>V.value=!1)},{default:n(()=>[m(p(u(o)("cancel")),1)]),_:1}),a(T,{type:"primary",loading:i.value,onClick:l[16]||(l[16]=t=>$(D.value))},{default:n(()=>[m(p(u(o)("confirm")),1)]),_:1},8,["loading"])])]),default:n(()=>[c((f(),v(R,{model:e,"label-width":"90px",class:"page-form",ref_key:"formRef",ref:D,rules:u(q)},{default:n(()=>[a(r,{label:u(o)("menuName"),prop:"menu_name"},{default:n(()=>[a(s,{modelValue:e.menu_name,"onUpdate:modelValue":l[0]||(l[0]=t=>e.menu_name=t),placeholder:u(o)("menuNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),e.id?Y("",!0):(f(),v(r,{key:0,label:u(o)("menuKey"),prop:"menu_key"},{default:n(()=>[a(s,{modelValue:e.menu_key,"onUpdate:modelValue":l[1]||(l[1]=t=>e.menu_key=t),placeholder:u(o)("menuKeyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])),a(r,{label:u(o)("menuType")},{default:n(()=>[a(g,{modelValue:e.menu_type,"onUpdate:modelValue":l[2]||(l[2]=t=>e.menu_type=t)},{default:n(()=>[a(_,{label:0},{default:n(()=>[m(p(u(o)("menuTypeDir")),1)]),_:1}),a(_,{label:1},{default:n(()=>[m(p(u(o)("menuTypeMenu")),1)]),_:1}),a(_,{label:2},{default:n(()=>[m(p(u(o)("menuTypeButton")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),c(a(r,{label:u(o)("addon"),prop:"addon"},{default:n(()=>[a(N,{modelValue:e.addon,"onUpdate:modelValue":l[3]||(l[3]=t=>e.addon=t),placeholder:"Select",class:"input-width",onChange:L},{default:n(()=>[(f(!0),H(J,null,Q(k.value,(t,G)=>(f(),v(h,{label:t.title,value:t.key,key:G},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[y,e.app_type=="site"]]),a(r,{label:u(o)("parentMenu"),prop:"parent_key"},{default:n(()=>[e.addon!=""?(f(),v(S,{key:0,class:"input-width",modelValue:e.parent_key,"onUpdate:modelValue":l[4]||(l[4]=t=>e.parent_key=t),props:{label:"menu_name",value:"menu_key"},data:P.value,"check-strictly":"","render-after-expand":!1},null,8,["modelValue","data"])):(f(),v(S,{key:1,class:"input-width",modelValue:e.parent_key,"onUpdate:modelValue":l[5]||(l[5]=t=>e.parent_key=t),props:{label:"menu_name",value:"menu_key"},data:E.value,"check-strictly":"","render-after-expand":!1},null,8,["modelValue","data"]))]),_:1},8,["label"]),c(a(r,{label:u(o)("routePath"),prop:"router_path"},{default:n(()=>[a(s,{modelValue:e.router_path,"onUpdate:modelValue":l[6]||(l[6]=t=>e.router_path=t),placeholder:u(o)("routePathPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),[[y,e.menu_type!=2]]),c(a(r,{label:u(o)("viewPath"),prop:"view_path"},{default:n(()=>[a(s,{modelValue:e.view_path,"onUpdate:modelValue":l[7]||(l[7]=t=>e.view_path=t),placeholder:u(o)("viewPathPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),[[y,e.menu_type==1]]),c(a(r,{label:u(o)("authId"),prop:"api_url"},{default:n(()=>[a(s,{modelValue:e.api_url,"onUpdate:modelValue":l[9]||(l[9]=t=>e.api_url=t),placeholder:u(o)("authIdPlaceholder"),class:"input-width"},{append:n(()=>[a(N,{class:"w-[90px] border-none",modelValue:e.methods,"onUpdate:modelValue":l[8]||(l[8]=t=>e.methods=t)},{default:n(()=>[a(h,{label:"POST",value:"post"}),a(h,{label:"GET",value:"get"}),a(h,{label:"PUT",value:"put"}),a(h,{label:"DELETE",value:"delete"})]),_:1},8,["modelValue"])]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),[[y,e.menu_type!=0]]),c(a(r,{label:u(o)("menuIcon"),prop:"icon"},{default:n(()=>[x("div",Ve,[a(K,{modelValue:e.icon,"onUpdate:modelValue":l[10]||(l[10]=t=>e.icon=t)},null,8,["modelValue"])])]),_:1},8,["label"]),[[y,e.menu_type!=2]]),c(a(r,{label:u(o)("status")},{default:n(()=>[a(g,{modelValue:e.status,"onUpdate:modelValue":l[11]||(l[11]=t=>e.status=t)},{default:n(()=>[a(_,{label:1},{default:n(()=>[m(p(u(o)("statusNormal")),1)]),_:1}),a(_,{label:0},{default:n(()=>[m(p(u(o)("statusDeactivate")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[y,e.menu_type!=2]]),c(a(r,{label:u(o)("isShow")},{default:n(()=>[a(g,{modelValue:e.is_show,"onUpdate:modelValue":l[12]||(l[12]=t=>e.is_show=t)},{default:n(()=>[a(_,{label:1},{default:n(()=>[m(p(u(o)("show")),1)]),_:1}),a(_,{label:0},{default:n(()=>[m(p(u(o)("hidden")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[y,e.menu_type!=2]]),a(r,{label:u(o)("menuShortName")},{default:n(()=>[a(s,{modelValue:e.menu_short_name,"onUpdate:modelValue":l[13]||(l[13]=t=>e.menu_short_name=t),placeholder:u(o)("menuShortNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(r,{label:u(o)("sort")},{default:n(()=>[a(O,{modelValue:e.sort,"onUpdate:modelValue":l[14]||(l[14]=t=>e.sort=t),min:0},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[z,i.value]])]),_:1},8,["modelValue","title"])}}});export{Re as _}; diff --git a/niucloud/public/admin/assets/edit-notice-1a631612.js b/niucloud/public/admin/assets/edit-notice-1a631612.js new file mode 100644 index 0000000..f909169 --- /dev/null +++ b/niucloud/public/admin/assets/edit-notice-1a631612.js @@ -0,0 +1 @@ +import{d as S,r as f,h as r,c,y as b,z as x,u as e,a as s,e as o,w as n,i as p,A as B,B as _,N as i,I as P,t as g,b as h,F as v,aw as D,ax as E,W as I,X as G,Y,cB as Q,cC as X}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{_ as k}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";import"./el-form-item-4ed993c7.js";import{_ as K}from"./index-4718d422.js";/* empty css */import{u as O}from"./diy-8d93d096.js";const L="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAABj1JREFUaEPtmmtsFFUUx/9nditIQaSICiEaRKOGGDU+IOIj6fZBKzQonZaKGCSAEVCJEUw0Jv2AjxCRKPGRRomGAN2dDUaqQLc75QPEBBNtJKKR2IBRgxBEQ6um7O4cM7Pbfc5s78zsLnRlP27uOff/23POvWfvvYSL6MPMhBp5PRiPgqQ9pAZeK7Q8KrRDp/5Yli/DWfoErC1O+vB651Co87BTn2Z2FwUwNy2fgMFznwLwZYiUaAmFlZ1lBcyN8rUY4r1g3JkDVm7AXPvYTdAi3WCeYRrFcgJmX+s9YO0LgKdYpmy5ALNPngcgCObKFCwNgngbGM8mvysHYK5pfgIaPgLgTYIRTsNDjYhJU8GxLjfAvGDVOPz711NgbQhV9CEpyvn0DCrpKs2+5g1gvAEgbV7qRwXmUbfyE/ta57sB5hp5IhghMN+bgNxCvcHnSw4cbyhatoD5uYx6JfoG8DaSuuuU/r0bYANW424As1OZQz2kKnUlBTZtKHQFRD2onLCI9mwbGBbkFNgksrrLKIgWkKrsLxmwZUMB2okbJy2jjo5IuhgnwKaR1WElaQmFA4HsHaBoNWzZUBC9hXDgBSLibDF2ge3CGolVyLYtmZrmDQVDkjZQOPCm1Zx2gJ3AFgXYvKGgCIifJDW4I98PLArsFLbgwJYNhUdaRD3+0EjZJAJsrPi+lgMAP5Tmz7JmhWrYcFrXdhdYuwGsXQVIAqnPV4P5JbOGgkLK1yPBim5LXCNfB41/dgKbE2Fub5dw8Pu1YG09gOkiIq3HUD/GSPW0z98v6kcowu3tXhw8egTMtwIUgUSPm63GVnMmIxffL7EbzA+LCrQcpzcUnrENFNp+2o4vEWAjExYuuxKDfzcCUh+F/T/YmSMFXC2/B/DTdoxNxxL2oYpaSFEG7foSBbbrN6fx4PrW2xGJ9WX1uDsh0W6AT8FkzzSdVPMMkLrriFNBpQOukbdC47UpodJG6g284lS4U7vSAVfLhwCeGxdKZ/DgrKnU3h51KtypXSmBzwI8Kc5LXaQqTU5Fu7ErIXCzlqxfIj+pSuqo1A2BTdtLwMU64uHqSxG+qFOafW3XALFmQEs7BMxXPxQFeQ5QuLPPaDxGU4R51aoK9P/5o+VZtjV3FBWeu0cfcMOS6Rga+sXmepjYcWnFqAM2MtIn6z3/I/ag6QS8Y2ePTmD97+u8lpnQMF4ImqQoJmrH9DPqUQksBGkx6BIw/hedlk/+A8xViV46TKpS6yZtnNqWrrX0yX1gviMhdACTaZqTP/BOQYftSgjc/CoY+gHc8EdFZVUTdXX84xbCjn3pgOvkGYjiKMCXpwTSGYC6QNqvQO4tgSkI0QDYs334cswObHx/dXd7KDJf6kzL17wajHdFjPKOIZyE19NA3f5v7foqKXD8F9ahaTPAY+2KzRhPdA6ghaQGDtjxIwrMtS1zofEKEL5CT+ADs3sqq3lzDti5oXUmIto6MPR71Zlg9tgRnRxLGAJjKfUGFVF7EWCW5fE4i9/AfEXcL70PNbBGFDrvjQI3PDMGOD0dUY80omjSpiAa1d9UXZ+CJg3E6ygc3DqivWANG38NOXIy64RVGFrgCkVEanwM1y6eBi22H8y3Zaa49DqpgfRdwNSpSITjpSdvArN+O5L2EYt0QYENMcbTA3yWddmlHw5+jAdmrcx3GioKnFhv3s548SOY3gUHNsTopXD+9x1gXpQVhb2onCRb7e92gJ1CFwXYEBO/mNsK1lZn5e9hVFbMp65dZ7Lz2i6wE+iiAQ/DcLX8MsAbM8uNjqHCU0/7O0+kf+8E2C500YHjdd2yHMwdGVucSYPiFNgSmvAiqcFNGUub+BrsbqQBg5gfjHFp21ZGg+IG2ByaeqlXyXiSXJIIJ9O7pnUOOPY5GJPToM+DaKl+qe0WOLFlbQaz/vqOQbSSVEV/5piazl3c7FtzXdstiEb0x2I5DQrYc9zN08PkD1vfNgtRLUKq/1i2wpJGOCnIskGhQ2C+PymyWFct9uPk3sKyQUl3XU7ARr1ZNigJ6nIDNqCNBuW7d8BYk5M35Qicv0FBG6nBTvcFdAFX6XziMxsUisCLmymkHC9bYCPF6xbfh1i0CR7vHgp1fllIWN3XBdmWCg1hx99/11n26ChtcvsAAAAASUVORK5CYII=",T={class:"content-wrap"},M={class:"edit-attr-item-wrap"},z=s("h3",{class:"mb-[10px]"},"公告图标",-1),R={class:"px-[22px] pb-[20px]"},W={key:0,class:"flex items-center flex-wrap py-[8px] px-[10px] bg-[#f4f3f7] rounded"},j={key:1},q={class:"edit-attr-item-wrap"},J=s("h3",{class:"mb-[10px]"},"公告内容",-1),Z={class:"style-wrap"},H={class:"edit-attr-item-wrap"},$={class:"mb-[10px]"},ee=S({__name:"edit-notice",setup(te,{expose:A}){const t=O();return t.editComponent.ignore=[],f(!1),f(t.editComponent.style),A({}),(y,l)=>{const d=D,u=E,F=K,V=I,m=G,U=k,C=Y,w=Q,N=X;return r(),c(v,null,[b(s("div",T,[s("div",M,[z,s("div",R,[o(u,{modelValue:e(t).editComponent.iconType,"onUpdate:modelValue":l[0]||(l[0]=a=>e(t).editComponent.iconType=a),class:"mb-[18px]"},{default:n(()=>[o(d,{label:"system"},{default:n(()=>[p("系统图标")]),_:1}),o(d,{label:"custom"},{default:n(()=>[p("自定义图标")]),_:1})]),_:1},8,["modelValue"]),e(t).editComponent.iconType=="system"?(r(),c("div",W,[s("img",{src:L,class:B(["h-[28px] px-[10px] py-[5px] mr-[10px] rounded cursor-pointer",{"border-[1px] border-solid border-[var(--el-color-primary)]":e(t).editComponent.systemIcon=="style_01"}]),onClick:l[1]||(l[1]=a=>e(t).editComponent.systemIcon="style_01"),alt:""},null,2)])):_("",!0),e(t).editComponent.iconType=="custom"?(r(),c("div",j,[o(F,{modelValue:e(t).editComponent.imageUrl,"onUpdate:modelValue":l[2]||(l[2]=a=>e(t).editComponent.imageUrl=a),limit:1},null,8,["modelValue"])])):_("",!0)])]),s("div",q,[J,o(C,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[o(m,{label:e(i)("title")},{default:n(()=>[o(V,{modelValue:e(t).editComponent.list.text,"onUpdate:modelValue":l[3]||(l[3]=a=>e(t).editComponent.list.text=a),placeholder:e(i)("titlePlaceholder"),clearable:"","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),o(m,{label:"点击类型"},{default:n(()=>[o(u,{modelValue:e(t).editComponent.showType,"onUpdate:modelValue":l[4]||(l[4]=a=>e(t).editComponent.showType=a),class:"mb-[18px]"},{default:n(()=>[o(d,{label:"popup"},{default:n(()=>[p("弹出公告内容")]),_:1}),o(d,{label:"link"},{default:n(()=>[p("跳出链接")]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(t).editComponent.showType=="link"?(r(),P(m,{key:0,label:e(i)("link"),class:"!mb-0"},{default:n(()=>[o(U,{modelValue:e(t).editComponent.list.link,"onUpdate:modelValue":l[5]||(l[5]=a=>e(t).editComponent.list.link=a)},null,8,["modelValue"])]),_:1},8,["label"])):_("",!0)]),_:1})])],512),[[x,e(t).editTab=="content"]]),b(s("div",Z,[s("div",H,[s("h3",$,g(e(i)("titleStyle")),1),o(C,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[o(m,{label:e(i)("textFontSize")},{default:n(()=>[o(w,{modelValue:e(t).editComponent.fontSize,"onUpdate:modelValue":l[6]||(l[6]=a=>e(t).editComponent.fontSize=a),"show-input":"",size:"small",class:"ml-[10px] article-slider",min:12,max:20},null,8,["modelValue"])]),_:1},8,["label"]),o(m,{label:e(i)("textFontWeight")},{default:n(()=>[o(u,{modelValue:e(t).editComponent.fontWeight,"onUpdate:modelValue":l[7]||(l[7]=a=>e(t).editComponent.fontWeight=a)},{default:n(()=>[o(d,{label:"normal"},{default:n(()=>[p(g(e(i)("fontWeightNormal")),1)]),_:1}),o(d,{label:"bold"},{default:n(()=>[p(g(e(i)("fontWeightBold")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),o(m,{label:e(i)("textColor")},{default:n(()=>[o(N,{modelValue:e(t).editComponent.textColor,"onUpdate:modelValue":l[8]||(l[8]=a=>e(t).editComponent.textColor=a)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),h(y.$slots,"style")],512),[[x,e(t).editTab=="style"]])],64)}}});const Ce=Object.freeze(Object.defineProperty({__proto__:null,default:ee},Symbol.toStringTag,{value:"Module"}));export{Ce as _}; diff --git a/niucloud/public/admin/assets/edit-notice-7bad7832.css b/niucloud/public/admin/assets/edit-notice-7bad7832.css new file mode 100644 index 0000000..b172c06 --- /dev/null +++ b/niucloud/public/admin/assets/edit-notice-7bad7832.css @@ -0,0 +1 @@ +.horz-blank-slider .el-slider__input{width:100px}.add-notice-width{width:calc(100% - 20px)} diff --git a/niucloud/public/admin/assets/edit-page-380884c5.js b/niucloud/public/admin/assets/edit-page-380884c5.js new file mode 100644 index 0000000..a464e83 --- /dev/null +++ b/niucloud/public/admin/assets/edit-page-380884c5.js @@ -0,0 +1 @@ +import{d as x,s as V,R as S,h as y,c as v,y as _,z as c,u as l,a as i,t as p,N as a,e as t,w as n,F as B,W as U,X as C,aK as E,Y as k,cC as T,cB as N}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css */import{_ as z}from"./index-4718d422.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{u as F}from"./diy-8d93d096.js";const D={class:"content-wrap"},I={class:"edit-attr-item-wrap"},P={class:"mb-[10px]"},j={class:"text-sm text-gray-400"},O={class:"style-wrap"},W={class:"edit-attr-item-wrap"},H={class:"mb-[10px]"},K={class:"edit-attr-item-wrap"},M={class:"mb-[10px]"},R=x({__name:"edit-page",setup(X,{expose:b}){const e=F();return V(()=>e.global.bgUrl,(g,o)=>{const r=new Image;r.src=S(e.global.bgUrl),r.onload=async()=>{e.global.imgWidth=r.width,e.global.imgHeight=r.height}}),b({}),(g,o)=>{const r=U,m=C,u=E,d=k,h=T,w=z,f=N;return y(),v(B,null,[_(i("div",D,[i("div",I,[i("h3",P,p(l(a)("pageContent")),1),t(d,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[t(m,{label:l(a)("pageName")},{default:n(()=>[t(r,{modelValue:l(e).global.title,"onUpdate:modelValue":o[0]||(o[0]=s=>l(e).global.title=s),placeholder:l(a)("pageNamePlaceholder"),clearable:"",maxlength:"12","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(m,{label:l(a)("tabbar"),class:"display-block"},{default:n(()=>[t(u,{modelValue:l(e).global.bottomTabBarSwitch,"onUpdate:modelValue":o[1]||(o[1]=s=>l(e).global.bottomTabBarSwitch=s)},null,8,["modelValue"]),i("div",j,p(l(a)("tabbarSwitchTips")),1)]),_:1},8,["label"])]),_:1})])],512),[[c,l(e).editTab=="content"]]),_(i("div",O,[i("div",W,[i("h3",H,p(l(a)("pageStyle")),1),t(d,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[t(m,{label:l(a)("pageBgColor")},{default:n(()=>[t(h,{modelValue:l(e).global.pageBgColor,"onUpdate:modelValue":o[2]||(o[2]=s=>l(e).global.pageBgColor=s),"show-alpha":"",predefine:l(e).predefineColors},null,8,["modelValue","predefine"])]),_:1},8,["label"]),t(m,{label:l(a)("bgUrl")},{default:n(()=>[t(w,{modelValue:l(e).global.bgUrl,"onUpdate:modelValue":o[3]||(o[3]=s=>l(e).global.bgUrl=s),limit:1},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),i("div",K,[i("h3",M,p(l(a)("marginSet")),1),t(d,{"label-width":"80px",class:"px-[10px]"},{default:n(()=>[t(m,{label:l(a)("marginBoth")},{default:n(()=>[t(f,{modelValue:l(e).global.template.margin.both,"onUpdate:modelValue":o[4]||(o[4]=s=>l(e).global.template.margin.both=s),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})])],512),[[c,l(e).editTab=="style"]])],64)}}}),al=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"}));export{al as _}; diff --git a/niucloud/public/admin/assets/edit-role-fb7932be.js b/niucloud/public/admin/assets/edit-role-fb7932be.js new file mode 100644 index 0000000..a73acf7 --- /dev/null +++ b/niucloud/public/admin/assets/edit-role-fb7932be.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./sys-0f76aff3.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js b/niucloud/public/admin/assets/edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js new file mode 100644 index 0000000..481cb54 --- /dev/null +++ b/niucloud/public/admin/assets/edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js @@ -0,0 +1 @@ +import{d as H,r as m,s as K,au as L,n as W,q as X,N as t,h as N,I as D,w as u,a as x,e as s,i as v,t as g,u as n,y as Y,av as J,W as Q,X as Z,aw as ee,ax as le,ay as ae,E as te,az as oe,an as se,Y as ne,a7 as re,$ as ue}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{f as ie,h as ce,i as de,j as me}from"./sys-0f76aff3.js";const fe={class:"flex items-center justify-between w-11/12"},pe={class:"dialog-footer"},je=H({__name:"edit-role",emits:["complete"],setup(_e,{expose:O,emit:U}){const _=m(!1),d=m(!1),b=m(!0);let k="";const p=m([]);ie().then(l=>{p.value=l.data});const h=m(!1),y=m(!1),f=m(null);K(h,()=>{h.value?f.value.setCheckedNodes(L(p.value)):f.value.setCheckedNodes([])});const A=J(l=>{o.rules=f.value.getCheckedKeys()}),F=()=>{b.value?(w(p.value),b.value=!1):(S(p.value),b.value=!0)},S=l=>{Object.keys(l).forEach(e=>{f.value.store.nodesMap[l[e].menu_key].expanded=!0,l[e].children&&l[e].children.length>0&&w(l[e].children)})},w=l=>{Object.keys(l).forEach(e=>{f.value.store.nodesMap[l[e].menu_key].expanded=!1,l[e].children&&l[e].children.length>0&&w(l[e].children)})},C={role_id:0,role_name:"",status:1,rules:[]},o=W({...C}),E=m(),B=X(()=>({role_name:[{required:!0,message:t("roleNamePlaceholder"),trigger:"blur"}],rules:[{validator:(l,e,a)=>{e.length?a():a(new Error(t("rulesPlaceholder")))},trigger:"blur"}]})),I=async l=>{if(d.value||!l)return;const e=o.role_id?ce:de;await l.validate(async a=>{if(a){d.value=!0;const i=Object.assign({},o);i.rules=i.rules.concat(f.value.getHalfCheckedKeys()),e(i).then(r=>{d.value=!1,_.value=!1,U("complete")}).catch(()=>{d.value=!1})}})},T=async(l=null)=>{if(d.value=!0,h.value=!1,Object.assign(o,C),k=t("addRole"),l){k=t("updateRole");const e=await(await me(l.role_id)).data;Object.keys(o).forEach(a=>{if(e[a]!=null)if(a=="rules"){e.rules;const i=[];Object.keys(e.rules).forEach(r=>{R(e.rules[r],p.value,i)}),o[a]=i}else o[a]=e[a]})}d.value=!1};function R(l,e,a){Object.keys(e).forEach(i=>{const r=e[i];r.menu_key==l?(!r.children||r.children.length==0)&&a.push(r.menu_key):r.children&&r.children.length>0&&R(l,r.children,a)})}return O({showDialog:_,setFormData:T}),(l,e)=>{const a=Q,i=Z,r=ee,$=le,j=ae,V=te,M=oe,P=se,q=ne,z=re,G=ue;return N(),D(z,{modelValue:_.value,"onUpdate:modelValue":e[7]||(e[7]=c=>_.value=c),title:n(k),width:"500px","destroy-on-close":!0},{footer:u(()=>[x("span",pe,[s(V,{onClick:e[5]||(e[5]=c=>_.value=!1)},{default:u(()=>[v(g(n(t)("cancel")),1)]),_:1}),s(V,{type:"primary",loading:d.value,onClick:e[6]||(e[6]=c=>I(E.value))},{default:u(()=>[v(g(n(t)("confirm")),1)]),_:1},8,["loading"])])]),default:u(()=>[Y((N(),D(q,{model:o,"label-width":"90px",ref_key:"formRef",ref:E,rules:n(B),class:"page-form"},{default:u(()=>[s(i,{label:n(t)("roleName"),prop:"role_name"},{default:u(()=>[s(a,{modelValue:o.role_name,"onUpdate:modelValue":e[0]||(e[0]=c=>o.role_name=c),placeholder:n(t)("roleNamePlaceholder"),clearable:"",disabled:o.uid,class:"input-width",maxlength:"10","show-word-limit":!0},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["label"]),s(i,{label:n(t)("status")},{default:u(()=>[s($,{modelValue:o.status,"onUpdate:modelValue":e[1]||(e[1]=c=>o.status=c)},{default:u(()=>[s(r,{label:1},{default:u(()=>[v(g(n(t)("startUsing")),1)]),_:1}),s(r,{label:0},{default:u(()=>[v(g(n(t)("statusDeactivate")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),s(i,{label:n(t)("permission"),prop:"rules"},{default:u(()=>[x("div",fe,[x("div",null,[s(j,{modelValue:h.value,"onUpdate:modelValue":e[2]||(e[2]=c=>h.value=c),label:n(t)("selectAll")},null,8,["modelValue","label"]),s(j,{modelValue:y.value,"onUpdate:modelValue":e[3]||(e[3]=c=>y.value=c),label:n(t)("checkStrictly")},null,8,["modelValue","label"])]),s(V,{link:"",type:"primary",onClick:e[4]||(e[4]=c=>F())},{default:u(()=>[v(g(n(t)("foldText")),1)]),_:1})]),s(P,{height:"35vh",class:"w-full"},{default:u(()=>[s(M,{data:p.value,props:{label:"menu_name"},"default-checked-keys":o.rules,"check-strictly":y.value,"show-checkbox":"","default-expand-all":"",onCheckChange:n(A),"node-key":"menu_key",ref_key:"treeRef",ref:f},null,8,["data","default-checked-keys","check-strictly","onCheckChange"])]),_:1})]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[G,d.value]])]),_:1},8,["modelValue","title"])}}});export{je as _}; diff --git a/niucloud/public/admin/assets/edit-rubik-cube-040bee3d.js b/niucloud/public/admin/assets/edit-rubik-cube-040bee3d.js new file mode 100644 index 0000000..4be9918 --- /dev/null +++ b/niucloud/public/admin/assets/edit-rubik-cube-040bee3d.js @@ -0,0 +1 @@ +import{d as B,N as r,r as S,q as F,h,c as u,y as w,z as v,u as a,a as m,t as x,e as c,w as g,F as W,G as H,A as C,x as j,R as k,b as G,X as I,Y as $,cB as D}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css */import{_ as q}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";import{_ as J}from"./index-4718d422.js";/* empty css */import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import"./el-form-item-4ed993c7.js";import{u as P}from"./diy-8d93d096.js";import{_ as X}from"./_plugin-vue_export-helper-c27b6911.js";const Y={class:"content-wrap rubik-cube"},K={class:"edit-attr-item-wrap"},Q={class:"mb-[10px]"},Z={class:"selected-template-list"},ee=["onClick"],ie={class:"edit-attr-item-wrap"},te={class:"mb-[10px]"},le={class:"layout"},ae={class:"have-preview-image"},se=["src"],oe={class:"style-wrap"},ne={class:"edit-attr-item-wrap"},de={class:"mb-[10px]"},me=B({__name:"edit-rubik-cube",setup(pe,{expose:N}){const s=P();s.editComponent.ignore=[],s.editComponent.verify=t=>{const e={code:!0,message:""};return s.value[t].list.forEach(i=>{if(i.imageUrl==="")return e.code=!1,e.message=r("imageUrlTip"),e}),e};const f=S([{name:"1行2个",src:"iconyihangliangge",className:"row1-of2",dimensionScale:[{desc:"宽度50%",size:"200px * 200px",name:"图一"},{desc:"宽度50%",size:"200px * 200px",name:"图二"}],descAux:"选定布局区域,在下方添加图片,建议添加尺寸一致的图片,宽度最小建议为:200px"},{name:"1行3个",src:"iconyihangsange",className:"row1-of3",dimensionScale:[{desc:"宽度33.33%",size:"200px * 200px",name:"图一"},{desc:"宽度33.33%",size:"200px * 200px",name:"图二"},{desc:"宽度33.33%",size:"200px * 200px",name:"图三"}],descAux:"选定布局区域,在下方添加图片,建议添加尺寸一致的图片,宽度最小建议为:130px"},{name:"1行4个",src:"iconyihangsige",className:"row1-of4",dimensionScale:[{desc:"宽度25%",size:"200px * 200px",name:"图一"},{desc:"宽度25%",size:"200px * 200px",name:"图二"},{desc:"宽度25%",size:"200px * 200px",name:"图三"},{desc:"宽度25%",size:"200px * 200px",name:"图四"}],descAux:"选定布局区域,在下方添加图片,建议添加尺寸一致的图片,宽度最小建议为:100px"},{name:"2左2右",src:"iconmofang-liangzuoliangyou",className:"row2-lt-of2-rt",dimensionScale:[{desc:"宽度50%",size:"200px * 200px",name:"图一"},{desc:"宽度50%",size:"200px * 200px",name:"图二"},{desc:"宽度50%",size:"200px * 200px",name:"图三"},{desc:"宽度50%",size:"200px * 200px",name:"图四"}],descAux:"选定布局区域,在下方添加图片,建议添加尺寸一致的图片,宽度最小建议为:200px"},{name:"1左2右",src:"iconmofang-yizuoliangyou",className:"row1-lt-of2-rt",dimensionScale:[{desc:"宽度50% * 高度100%",size:"200px * 400px",name:"图一"},{desc:"宽度50% * 高度50%",size:"200px * 200px",name:"图二"},{desc:"宽度50% * 高度50%",size:"200px * 200px",name:"图三"}],descAux:"选定布局区域,在下方添加图片,宽度最小建议为:200px,右侧两张图片高度一致,左侧图片高度为右侧两张图片高度之和(例:左侧图片尺寸:200px * 300px,右侧两张图片尺寸:200px * 150px)"},{name:"1上2下",src:"iconmofang-yishangliangxia",className:"row1-tp-of2-bm",dimensionScale:[{desc:"宽度100% * 高度50%",size:"400px * 200px",name:"图一"},{desc:"宽度50% * 高度50%",size:"200px * 200px",name:"图二"},{desc:"宽度50% * 高度50%",size:"200px * 200px",name:"图三"}],descAux:"选定布局区域,在下方添加图片,上方一张图片的宽度为下方两张图片宽度之和,下放两张图片尺寸一致,高度可根据实际需求自行确定(例:上方图片尺寸:400px * 150px,下方两张图片尺寸:200px * 150px)"},{name:"1左3右",src:"iconxuanzemoban-yizuosanyou",className:"row1-lt-of1-tp-of2-bm",dimensionScale:[{desc:"宽度50% * 高度100%",size:"200px * 400px",name:"图一"},{desc:"宽度50% * 高度50%",size:"200px * 200px",name:"图二"},{desc:"宽度25% * 高度50%",size:"100px * 200px",name:"图三"},{desc:"宽度25% * 高度50%",size:"100px * 200px",name:"图四"}],descAux:"选定布局区域,在下方添加图片,左右两侧内容宽高相同,右侧上下区域高度各占50%,右侧内容下半部分两张图片的宽度相同,各占右侧内容宽度的50%(例:左侧图片尺寸:200px * 400px,右侧上半部分图片尺寸:200px * 200px,右侧下半部分两张图片尺寸:100px * 200px)"}]),o=S([]),b=F(()=>{let t;return f.value.forEach(e=>{e.className==s.editComponent.mode&&(t=e,o.value=JSON.parse(JSON.stringify(s.editComponent.list)),e.className=="row2-lt-of2-rt"?O():e.className=="row1-lt-of2-rt"?T():e.className=="row1-tp-of2-bm"?A():e.className=="row1-lt-of1-tp-of2-bm"?L():R(e.className))}),t}),E=t=>{for(let e=0;es.editComponent.list.length)for(let l=0;ls.editComponent.list.length&&s.editComponent.list.push({imageUrl:"",imgWidth:0,imgHeight:0,link:{name:""}});else if(i!=s.editComponent.list.length)for(let l=0;li&&(s.editComponent.list.splice(l,1),l=0)}},V=t=>{U(!0)},U=(t=!1)=>{s.editComponent.list.forEach((e,i)=>{const l=new Image;l.src=k(e.imageUrl),l.onload=async()=>{e.imgWidth=l.width,e.imgHeight=l.height}})};N({});const R=t=>{let e=0,i=2,l="calc(100% / 2)";t=="row1-of3"&&(i=3,l="calc(100% / 3)"),t=="row1-of4"&&(i=4,l="calc(100% / 4)"),o.value.forEach((d,y)=>{const z=d.imgHeight/d.imgWidth,_=330;d.imgWidth=_/i,d.imgHeight=d.imgWidth*z,(e==0||e{d.widthStyle=l,d.imgHeight=e})},O=()=>{let t=0,e=0;o.value.forEach((i,l)=>{const d=i.imgHeight/i.imgWidth;i.imgWidth=330,i.imgWidth=i.imgWidth/2,i.imgHeight=i.imgWidth*d,l<=1?(t==0||t1&&(e==0||e{i.imgWidth="calc(100% / 2)",i.widthStyle=i.imgWidth,l<=1?i.imgHeight=t:l>1&&(i.imgHeight=e)})},T=()=>{let t=0;o.value[1].imgWidth,o.value[2].imgWidth,o.value.forEach((e,i)=>{if(i==0){const l=e.imgHeight/e.imgWidth;e.imgWidth=330,e.imgWidth=e.imgWidth/2,e.imgHeight=e.imgWidth*l,t=e.imgHeight/2,e.imgWidth+="px"}else e.imgWidth=o.value[0].imgWidth,e.imgHeight=t})},A=()=>{let t=0;o.value.forEach((e,i)=>{const l=e.imgHeight/e.imgWidth;i==0?e.imgWidth=330:i>0&&(e.imgWidth=330,e.imgWidth=e.imgWidth/2),e.imgHeight=e.imgWidth*l,i>0&&(t==0||t{e.imgWidth+="px",e.widthStyle=e.imgWidth,i>0&&(e.imgHeight=t)})},L=()=>{o.value.forEach((t,e)=>{if(e==0){const i=t.imgHeight/t.imgWidth;t.imgWidth=330,t.imgWidth=t.imgWidth/2,t.imgHeight=t.imgWidth*i}else e==1?(t.imgWidth=o.value[0].imgWidth,t.imgHeight=o.value[0].imgHeight/2):e>1&&(t.imgWidth=o.value[0].imgWidth/2,t.imgHeight=o.value[1].imgHeight)}),o.value.forEach((t,e)=>{t.imgWidth+="px"})};return(t,e)=>{const i=I,l=M,d=$,y=J,z=q,_=D;return h(),u(W,null,[w(m("div",Y,[m("div",K,[m("h3",Q,x(a(r)("selectStyle")),1),c(d,{"label-width":"80px",class:"px-[10px]"},{default:g(()=>[c(i,{label:a(r)("template")},{default:g(()=>[m("span",null,x(a(b).name),1)]),_:1},8,["label"]),m("ul",Z,[(h(!0),u(W,null,H(f.value,(n,p)=>(h(),u("li",{key:p,class:C([n.className==a(s).editComponent.mode?"selected":""]),onClick:re=>E(p)},[c(l,{name:"iconfont-"+n.src,size:"16px"},null,8,["name"])],10,ee))),128))])]),_:1})]),m("div",ie,[m("h3",te,x(a(r)("rubikCubeLayout")),1),c(d,{"label-width":"80px",class:"px-[10px]"},{default:g(()=>[m("ul",le,[(h(!0),u(W,null,H(a(b).dimensionScale,(n,p)=>(h(),u("li",{key:p,class:C([a(b).className]),style:j({width:o.value[p].widthStyle,height:o.value[p].imgHeight+"px"})},[w(m("div",ae,[m("img",{class:"!w-full !h-full",src:a(k)(a(s).editComponent.list[p].imageUrl)},null,8,se)],512),[[v,a(s).editComponent.list[p].imageUrl]]),w(m("div",{class:C(["empty",[a(b).className]])},[m("p",null,x(n.name),1),m("p",null,x(n.desc),1)],2),[[v,!a(s).editComponent.list[p].imageUrl]])],6))),128))]),(h(!0),u(W,null,H(a(s).editComponent.list,n=>(h(),u("div",{key:n.id,class:"item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"},[c(i,{label:a(r)("image")},{default:g(()=>[c(y,{modelValue:n.imageUrl,"onUpdate:modelValue":p=>n.imageUrl=p,limit:1,onChange:V},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]),c(i,{label:a(r)("link")},{default:g(()=>[c(z,{modelValue:n.link,"onUpdate:modelValue":p=>n.link=p},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"])]))),128))]),_:1})])],512),[[v,a(s).editTab=="content"]]),w(m("div",oe,[m("div",ne,[m("h3",de,x(a(r)("rubikCubeStyle")),1),c(d,{"label-width":"80px",class:"px-[10px]"},{default:g(()=>[c(i,{label:a(r)("imageGap")},{default:g(()=>[c(_,{modelValue:a(s).editComponent.imageGap,"onUpdate:modelValue":e[0]||(e[0]=n=>a(s).editComponent.imageGap=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:30},null,8,["modelValue"])]),_:1},8,["label"]),c(i,{label:a(r)("topRounded")},{default:g(()=>[c(_,{modelValue:a(s).editComponent.topElementRounded,"onUpdate:modelValue":e[1]||(e[1]=n=>a(s).editComponent.topElementRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"]),c(i,{label:a(r)("bottomRounded")},{default:g(()=>[c(_,{modelValue:a(s).editComponent.bottomElementRounded,"onUpdate:modelValue":e[2]||(e[2]=n=>a(s).editComponent.bottomElementRounded=n),"show-input":"",size:"small",class:"ml-[10px] horz-blank-slider",max:50},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),G(t.$slots,"style",{},void 0,!0)],512),[[v,a(s).editTab=="style"]])],64)}}});const ce=X(me,[["__scopeId","data-v-9d172ed9"]]),Ce=Object.freeze(Object.defineProperty({__proto__:null,default:ce},Symbol.toStringTag,{value:"Module"}));export{Ce as _}; diff --git a/niucloud/public/admin/assets/edit-rubik-cube-6d0cae7e.css b/niucloud/public/admin/assets/edit-rubik-cube-6d0cae7e.css new file mode 100644 index 0000000..d37752f --- /dev/null +++ b/niucloud/public/admin/assets/edit-rubik-cube-6d0cae7e.css @@ -0,0 +1 @@ +.rubik-cube .selected-template-list[data-v-9d172ed9]{margin-bottom:20px;overflow:hidden;display:flex;flex-wrap:wrap}.rubik-cube .selected-template-list li[data-v-9d172ed9]{color:#909399;width:46px;height:32px;text-align:center;line-height:29px;border:1px solid #e5e5e5;cursor:pointer;background:#ffffff;box-sizing:border-box;border-right:1px transparent solid}.rubik-cube .selected-template-list li[data-v-9d172ed9]:last-child{border-right:1px solid #e5e5e5}.rubik-cube .selected-template-list li.selected[data-v-9d172ed9]{color:var(--el-color-primary);border-color:var(--el-color-primary)}.rubik-cube .selected-template-list li img[data-v-9d172ed9]{display:inline-block}.rubik-cube .selected-template-list li div[data-v-9d172ed9]{font-size:12px}.layout[data-v-9d172ed9]{overflow:hidden;position:relative;margin-bottom:15px}.layout li[data-v-9d172ed9]{float:left;color:#909399;border:1px solid #e5e5e5;cursor:pointer;font-size:12px;position:relative}.layout li div.empty[data-v-9d172ed9]{left:0;text-align:center;width:100%;position:absolute;top:50%;margin-top:-26px}.layout li div.empty p[data-v-9d172ed9]{margin:0;line-height:26px}.layout li div.have-preview-image[data-v-9d172ed9]{box-sizing:border-box}.layout li div.have-preview-image img[data-v-9d172ed9]{display:inline-block;width:auto;height:auto;max-width:100%;max-height:100%}.layout li.row1-of2[data-v-9d172ed9]{width:49.2%;height:160px;border-right:1px transparent solid}.layout li.row1-of2[data-v-9d172ed9]:last-child{border-right:1px solid #e5e5e5}.layout li.row1-of2 div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;line-height:160px;background:#ffffff}.layout li.row1-of3[data-v-9d172ed9]{width:32.5%;height:100px;border-right:1px transparent solid}.layout li.row1-of3[data-v-9d172ed9]:last-child{border-right:1px solid #bdf}.layout li.row1-of3 div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;line-height:100px;background:#ffffff}.layout li.row1-of4[data-v-9d172ed9]{width:24.2%;height:80px;border-right:1px transparent solid}.layout li.row1-of4[data-v-9d172ed9]:last-child{border-right:1px solid #bdf}.layout li.row1-of4 div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;line-height:80px;background:#ffffff}.layout li.row2-lt-of2-rt[data-v-9d172ed9]{width:49.2%;height:160px}.layout li.row2-lt-of2-rt[data-v-9d172ed9]:nth-child(1){border-right:1px transparent solid;border-bottom:1px transparent solid}.layout li.row2-lt-of2-rt[data-v-9d172ed9]:nth-child(2){border-bottom:1px transparent solid}.layout li.row2-lt-of2-rt[data-v-9d172ed9]:nth-child(3){border-right:1px transparent solid;clear:both}.layout li.row2-lt-of2-rt div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;line-height:160px;background:#ffffff}.layout li.row1-lt-of2-rt[data-v-9d172ed9]{width:49.2%;font-size:12px}.layout li.row1-lt-of2-rt[data-v-9d172ed9]:nth-child(1){height:322px;border-right:1px transparent solid}.layout li.row1-lt-of2-rt:nth-child(1) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff}.layout li.row1-lt-of2-rt[data-v-9d172ed9]:nth-child(2){height:160px;border-bottom:1px transparent solid}.layout li.row1-lt-of2-rt:nth-child(2) div.have-preview-image[data-v-9d172ed9]{display:flex;align-items:center;justify-content:center;background:#ffffff}.layout li.row1-lt-of2-rt[data-v-9d172ed9]:nth-child(3){height:160px}.layout li.row1-lt-of2-rt:nth-child(3) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff}.layout li.row1-tp-of2-bm[data-v-9d172ed9]{height:160px}.layout li.row1-tp-of2-bm[data-v-9d172ed9]:nth-child(1){width:99.4%;border-bottom:1px transparent solid}.layout li.row1-tp-of2-bm[data-v-9d172ed9]:nth-child(2){width:49.2%;border-right:1px transparent solid}.layout li.row1-tp-of2-bm[data-v-9d172ed9]:nth-child(3){width:49.2%}.layout li.row1-tp-of2-bm div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;line-height:160px;background:#ffffff}.layout li.row1-lt-of1-tp-of2-bm[data-v-9d172ed9]:nth-child(1){height:320px;width:49.2%;border-right:1px transparent solid}.layout li.row1-lt-of1-tp-of2-bm:nth-child(1) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff}.layout li.row1-lt-of1-tp-of2-bm[data-v-9d172ed9]:nth-child(2){height:160px;width:49.2%;border-bottom:1px transparent solid}.layout li.row1-lt-of1-tp-of2-bm:nth-child(2) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff}.layout li.row1-lt-of1-tp-of2-bm[data-v-9d172ed9]:nth-child(3){height:160px;width:24.2%;border-right:1px transparent solid}.layout li.row1-lt-of1-tp-of2-bm:nth-child(3) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff}.layout li.row1-lt-of1-tp-of2-bm[data-v-9d172ed9]:nth-child(4){height:160px;width:24.2%}.layout li.row1-lt-of1-tp-of2-bm:nth-child(4) div.have-preview-image[data-v-9d172ed9]{text-align:center;height:100%;background:#ffffff} diff --git a/niucloud/public/admin/assets/edit-site-ac14c64a.js b/niucloud/public/admin/assets/edit-site-ac14c64a.js new file mode 100644 index 0000000..e94b53f --- /dev/null +++ b/niucloud/public/admin/assets/edit-site-ac14c64a.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./member_head-a897263d.js";import"./site-3951be3a.js";import"./user-3121c68a.js";import"./addon-b90f5c24.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js b/niucloud/public/admin/assets/edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js new file mode 100644 index 0000000..17401f1 --- /dev/null +++ b/niucloud/public/admin/assets/edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js @@ -0,0 +1 @@ +import{d as X,r as m,n as Y,q,N as l,a0 as H,h as u,I as c,w as s,a as b,e as t,i as v,t as w,u as o,y as N,c as _,F as y,G as E,R as J,z as K,W as Q,X as Z,aq as ee,aC as le,a1 as ae,aG as re,cI as oe,Y as te,E as se,a7 as de,$ as ie}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as ue}from"./member_head-a897263d.js";import{i as ne,j as pe,k as me,m as ce}from"./site-3951be3a.js";import{a as _e}from"./user-3121c68a.js";import{g as ge}from"./addon-b90f5c24.js";const fe={key:0},ve={class:"flex items-center"},we={class:"flex items-center"},be={key:1,src:ue,alt:"",class:"mr-[10px] w-[24px]"},he={key:1},Ve={class:"dialog-footer"},$e=X({__name:"edit-site",emits:["complete"],setup(Pe,{expose:S,emit:L}){const g=m(!1),n=m(!0),h=m([]),k=m([]),T=m([]);_e({}).then(({data:i})=>{k.value=i}).catch();const V=new Date;V.setTime(V.getTime()+3600*1e3*2*360);const I={site_id:"",site_name:"",real_name:"",uid:"",username:"",password:"",confirm_password:"",expire_time:V,group_id:""},a=Y({...I}),U=m();(async()=>{h.value=await(await ne()).data})();const A=m([]);ge().then(({data:i})=>{A.value=i}).catch();const C=async(i=null)=>{if(n.value=!0,Object.assign(a,I),i){const r=await(await pe(i.site_id)).data;T.value=r,Object.keys(a).forEach(d=>{r[d]!=null&&(a[d]=r[d])})}n.value=!1},F=q(()=>({site_name:[{required:!0,message:l("siteNamePlaceholder"),trigger:"blur"}],group_id:[{required:!0,message:l("groupIdPlaceholder"),trigger:"blur"}],uid:[{validator:(i,r,d)=>{a.uid===""?d(new Error(l("managerPlaceholder"))):d()},trigger:"blur"}],username:[{required:a.uid==0,message:l("usernamePlaceholder"),trigger:"blur"}],password:[{required:a.uid==0,message:l("passwordPlaceholder"),trigger:"blur"}],real_name:[{required:!0,message:l("userRealNamePlaceholder"),trigger:"blur"}],confirm_password:[{required:a.uid==0,message:l("confirmPasswordPlaceholder"),trigger:"blur"},{validator:(i,r,d)=>{a.uid==0&&r!=a.password?d(new Error(l("confirmPasswordError"))):d()},trigger:"blur"}],expire_time:[{required:!0,message:l("expireTimePlaceholder"),trigger:"blur"}]})),B=q(()=>n.value?"":a.site_id?l("editSite"):l("addSite")),G=async i=>{n.value||!i||await i.validate(async r=>{if(r){n.value=!0;const d=a;(d.site_id?me:ce)(d).then(f=>{n.value=!1,g.value=!1,L("complete")}).catch(()=>{n.value=!1})}})};return S({showDialog:g,setFormData:C,loading:n}),(i,r)=>{const d=Q,p=Z,f=ee,P=le,R=H("Plus"),j=ae,O=re,$=oe,z=te,D=se,M=de,W=ie;return u(),c(M,{modelValue:g.value,"onUpdate:modelValue":r[10]||(r[10]=e=>g.value=e),title:o(B),width:"500px","destroy-on-close":!0},{footer:s(()=>[b("span",Ve,[t(D,{onClick:r[8]||(r[8]=e=>g.value=!1)},{default:s(()=>[v(w(o(l)("cancel")),1)]),_:1}),t(D,{type:"primary",loading:n.value,onClick:r[9]||(r[9]=e=>G(U.value))},{default:s(()=>[v(w(o(l)("confirm")),1)]),_:1},8,["loading"])])]),default:s(()=>[N((u(),c(z,{model:a,"label-width":"90px",ref_key:"formRef",ref:U,rules:o(F),class:"page-form"},{default:s(()=>[a.site_id==0?(u(),_("div",fe,[t(p,{label:o(l)("siteName"),prop:"site_name"},{default:s(()=>[t(d,{modelValue:a.site_name,"onUpdate:modelValue":r[0]||(r[0]=e=>a.site_name=e),clearable:"",placeholder:o(l)("siteNamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(p,{label:o(l)("groupId"),prop:"group_id"},{default:s(()=>[t(P,{modelValue:a.group_id,"onUpdate:modelValue":r[1]||(r[1]=e=>a.group_id=e),clearable:"",placeholder:o(l)("groupIdPlaceholder"),class:"input-width"},{default:s(()=>[(u(!0),_(y,null,E(h.value,(e,x)=>(u(),c(f,{label:e.group_name,value:e.group_id,key:x},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),t(p,{label:o(l)("manager"),prop:"uid"},{default:s(()=>[t(P,{modelValue:a.uid,"onUpdate:modelValue":r[2]||(r[2]=e=>a.uid=e),placeholder:o(l)("managerPlaceholder"),class:"input-width",filterable:""},{default:s(()=>[t(f,{label:o(l)("newAddManager"),value:0},{default:s(()=>[b("div",ve,[t(j,{class:"mr-[10px]"},{default:s(()=>[t(R)]),_:1}),v(" "+w(o(l)("newAddManager")),1)])]),_:1},8,["label"]),(u(!0),_(y,null,E(k.value,e=>(u(),c(f,{key:e.uid,label:e.username,value:e.uid},{default:s(()=>[b("div",we,[e.head_img?(u(),c(O,{key:0,src:o(J)(e.head_img),size:"small",class:"mr-[10px]"},null,8,["src"])):(u(),_("img",be)),v(" "+w(e.username),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),N(b("div",null,[t(p,{label:o(l)("username"),prop:"username"},{default:s(()=>[t(d,{modelValue:a.username,"onUpdate:modelValue":r[3]||(r[3]=e=>a.username=e),clearable:"",placeholder:o(l)("usernamePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(p,{label:o(l)("password"),prop:"password"},{default:s(()=>[t(d,{modelValue:a.password,"onUpdate:modelValue":r[4]||(r[4]=e=>a.password=e),clearable:"",placeholder:o(l)("passwordPlaceholder"),class:"input-width","show-password":!0,type:"password"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(p,{label:o(l)("confirmPassword"),prop:"confirm_password"},{default:s(()=>[t(d,{modelValue:a.confirm_password,"onUpdate:modelValue":r[5]||(r[5]=e=>a.confirm_password=e),placeholder:o(l)("confirmPasswordPlaceholder"),type:"password","show-password":!0,clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])],512),[[K,a.uid===0]])])):(u(),_("div",he,[t(p,{label:o(l)("siteName")},{default:s(()=>[v(w(a.site_name),1)]),_:1},8,["label"]),t(p,{label:o(l)("groupId"),prop:"group_id"},{default:s(()=>[t(P,{modelValue:a.group_id,"onUpdate:modelValue":r[6]||(r[6]=e=>a.group_id=e),clearable:"",placeholder:o(l)("groupIdPlaceholder"),class:"input-width"},{default:s(()=>[(u(!0),_(y,null,E(h.value,(e,x)=>(u(),c(f,{label:e.group_name,value:e.group_id,key:x},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])])),t(p,{label:o(l)("expireTime"),prop:"expire_time",class:"input-width"},{default:s(()=>[t($,{class:"flex-1 !flex",modelValue:a.expire_time,"onUpdate:modelValue":r[7]||(r[7]=e=>a.expire_time=e),clearable:"",type:"datetime",placeholder:o(l)("expireTimePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[W,n.value]])]),_:1},8,["modelValue","title"])}}});export{$e as _}; diff --git a/niucloud/public/admin/assets/edit-text-7fdc44bc.css b/niucloud/public/admin/assets/edit-text-7fdc44bc.css new file mode 100644 index 0000000..c138e60 --- /dev/null +++ b/niucloud/public/admin/assets/edit-text-7fdc44bc.css @@ -0,0 +1 @@ +.horz-blank-slider .el-slider__input{width:100px} diff --git a/niucloud/public/admin/assets/edit-text-98dd7894.js b/niucloud/public/admin/assets/edit-text-98dd7894.js new file mode 100644 index 0000000..dc4b90c --- /dev/null +++ b/niucloud/public/admin/assets/edit-text-98dd7894.js @@ -0,0 +1 @@ +import{d as y,r as M,a0 as N,h,c as D,y as p,z as u,u as e,a as m,t as d,N as n,e as t,w as i,i as g,A as R,b as T,F as W,a1 as j,X as U,Y as J,W as F,aw as L,ax as O,cB as X,cC as S,aK as k,E as P,a7 as _}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{_ as H}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{u as q}from"./diy-8d93d096.js";const K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARgAAADcCAYAAACrgL6aAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF62lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgNzkuMTY0NDg4LCAyMDIwLzA3LzEwLTIyOjA2OjUzICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyMy0wMy0zMVQxMjowOTozNyswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjMtMDMtMzFUMTI6MTA6MTgrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjMtMDMtMzFUMTI6MTA6MTgrMDg6MDAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzZkNmUxM2YtYjFiYS0zMjRjLWEzMDktNmJlM2UyZmIzOGI1IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjc3MTFBODAwRUJEMDExRUNCQzUyQTRFNThGN0RGMjdGIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NzcxMUE4MDBFQkQwMTFFQ0JDNTJBNEU1OEY3REYyN0YiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NzExQTdGREVCRDAxMUVDQkM1MkE0RTU4RjdERjI3RiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NzExQTdGRUVCRDAxMUVDQkM1MkE0RTU4RjdERjI3RiIvPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozNmQ2ZTEzZi1iMWJhLTMyNGMtYTMwOS02YmUzZTJmYjM4YjUiIHN0RXZ0OndoZW49IjIwMjMtMDMtMzFUMTI6MTA6MTgrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMi4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6l98EvAAAHhUlEQVR4nO3cQXIT2R3H8T+p7MdHcG7QjdiPOMGYE9gsMqupAk5gZpE1oSqrbGJOMOYEFpvsVOqcYDwnCDkBWfQTbjeW7QF+EOLPp8ol67m71Sz05b1W2/fevXtXAAl/+NonAPz/EhggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAmEhg7t279/6rv//gqL//4Gg69r/01d9/sOzvP3h+xfj+ju27/v6Dg+1zYLc/foHXOGyPJ9uBrl8sq2p5w36rYbNeTfbpqurFjm1fzV5rl2fDZj3MxpZVdVxVzyevtVdVv3b94tmwWf91tv2TqjqoqtMbXgvuvC8RmKssa3xT32Q1+X6v7ffzbJvjqnrTtn0zGT+sqvPZ2NvbnNywWb/t+sVJVR13/eJk2Kyn+x2UuMCtfJXADJv185rMGD5i3/e6fnHcxlc1CVLXLw6r6vUVM5DbelZjTI7b99X1i6MaQ/fyI48Jd0osMF2/ONt+O30+bNYPP9Nxr/rZi+3rVdV+VR12/eKH9vzVsFmftO2O6mI5tT877qthsz5ps5if6/Ks57DGpdvwKf8GuCu+1hLpU8yXSMvJ912Ny6JXs+1eVAvJbXT94vnk6V57/l17rdPtz+ezKeCyWGC2M5WuX/y7qobJ82XdfIF363w765gcdzV93vWL+T6/DZv1qs1m/jVs1iddv3g7O8ZJtYvOXb/YTM+3jb275pwO2lfVRy7z4K6IzmC6fnFQ4zWLrusXXVta7FfV9/NN2+MwG//uimNe9+afH/M/N5zffl0s4f4xbNaPq6qGzdrnz/AZpJdI2+sfe1X1S9cv+unsYeuW12eGqtr18/OPPL+jGq+x7FXVsusXL4bN+tlHHgu+SS//9veDJz/9eJo4duxO3nYvyVGNYVi1x7M2Xl2/OGgziPl+yzbzmY7tV9XTGpdWV30dXXWsW5zfk7r4yPlxVT1tF4DhLvlL6sDJGcxxjTOV/fb8cVX9WmMMTqrqlzZ2MtvvsNrF1MnYXl1eVu3VuLRZTcam21f7+esbzu+0qn6rGq/ttE+NDrt+cVoXy7Zdhtn9MfCt+nPqwJHAtLtun9a4pNnep/K26xePapzJLNumqyt2f11jhLbXbKo9PmwXiIca3/xn8yXV9oJvm83s1YfXdLY/X7bz6+vigm0Nm/XzyXWZnR+HNw93nD98U5789OM/U8dOLZGe1OxW/6pxltD+1/+hxhnA+XzHYbM+rfG6yMF0vL3xz+r6mcWzGmdER+0YQ/tIeTs+Pb+Tq+5naec01BiQ674+2Be4LLVEel27Zw97NQbguouppzVG6PlkbL/q/VJm2Y61/URpNWzWD4fNemjXb45rvA9mWWNMvq+qR5NjvaprZh8tgjt/DtxOJDBtFrLL0/Z4cs02b2pcJu1NrnN0Ve/v1t1eW9kukd62Gc5xjfFabW+C6/rFeY0zn7OuXzwcNuu3N5wf8Jl80b8HM/nkZv4LhHOr9ricjB228aN2jO2Sa3vrflfjsurn6bWZ7fWbGq/J7H/K+QO/z5f+VYH9Gu9Zmd/uf8mwWZ+3mcde1aUb4h61/c/a+NMal2Lnw2Z92vWL1VXhapH5021OcPb7TDd5VdfPxOBO+6KBaW/0vuqDv++yrA/fqP0kFsfVItL27dvYcV1EqKaPO5xs79YF8r5EYIYd4+d18bdaXtcsMLOZyMua3NPSPul5XFWP27Krm2y7vOZcVjvO4/24O3nh87n37t1tf7UH4PfxR7+BGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIEZggBiBAWIEBogRGCBGYIAYgQFiBAaIERggRmCAGIEBYgQGiBEYIOa/gJa4m1DbySoAAAAASUVORK5CYII=",$="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARgAAADcCAYAAACrgL6aAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjc3MTFBN0ZGRUJEMDExRUNCQzUyQTRFNThGN0RGMjdGIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjc3MTFBODAwRUJEMDExRUNCQzUyQTRFNThGN0RGMjdGIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NzcxMUE3RkRFQkQwMTFFQ0JDNTJBNEU1OEY3REYyN0YiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcxMUE3RkVFQkQwMTFFQ0JDNTJBNEU1OEY3REYyN0YiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz74HfJeAAAJzUlEQVR42uzczXIbWRkGYJmC9WiuAOUGGBuoYjnyFTi+AjtVzLAJlfgKFBcFC6rASTELfoqKsmUTe8EWywvYUVF27MYDFzCaLRtzjvlOfOakZSmZyIrheaq62pK6W63+efs7pzvZuLi46AGswrdsAkDAAAIGQMAAAgYQMAACBhAwgIABEDCAgAEEDICAAQQMIGAABAwgYAABAyBgAAEDCBgAAQMIGEDAAAgYQMAAAgZAwAACBkDAAAIGEDAAAgYQMICAARAwgIABBAyAgAEEDCBgAAQMIGAAAQMgYAABAwgYAAEDCBhAwAAIGEDAAAIGQMAAAgYQMAACBhAwAAIGEDCAgAEQMICAAQQMgIABBAwgYAAEDCBgAAEDIGAAAQMIGAABAwgYQMAACBhAwAACBkDAAAIGEDAAAgYQMICAARAwgIABEDCAgAEEDICAAQQMIGAABAwgYAABAyBgAAEDCBiANQbMxsbGq2Hr+z/cz0P93vs0pHUbpuFRx/uDOdNvpuFueQ3M9+0b+I69GI/LG5tbPxim0XDBfJPpi79Pqnk20+hozrTPmu+a5yAtc9q8l9djlIZH1Xf10+jzNM7TP26mf5CGu2k4dvjA+gOmSzmpF5lUf/djvsNmmrycs5j2rAm28+a92TIrl0JllsIlB+Ioj/Pr6mPhAu9zwKQT9lFdMbzFvL2q2hjF+5M6kNL7OWBOOiqQZR1EmIzi77zM/Qi6Jw4dWGPApJPxtPxZv04n/PY7Wm7XZ0fl+5JBrmLSezulGZW+e1wFxV41Xb3cy+miijlsqp69aLpNv8lvePLZ7/fL97YV28Of/uQyJB//5neXzcj0+lH1epReb1evX8vf9PksfZaXvd9RDbbznD+4/+nYabA+1xwLrfO0b1/bV3Ec5ON+O+3L2f9NwKzQYUdzq1eFWW4WPWumO1pyJ5agqqukfrz+IL7ruHzeVlNvUojFer52EKUD5rTjN85rZr42fwRi/q07pfJK8jLHETJ5G30U22jmFF+7rmMh76/2QjzrCJa92J/5s+cprC4P3xQ0Hy4ItT+k0Z/TdMe3NmBKpZJOxi/zy+r1sLe4g/fVCVOqjmq5kyYM2nm+yNNENfMyz5/+njXLGMcJl+d/0VZW6b2La9bpbgy9t23mpR07TTv5yzi4XsnVSTpweh1XqaPYZoMcQHm6Utlco19v5zR9Dq+n8X4/QujA+b1eab9M036pK+pi1FSmB3Es5H33Ii4WZ+lYulcFR96/J0t87a/S8FmafiPN//zWVjDpRL0bB/NmvgsUTYt8YH/cTlqlee2DjmVeLPv1afhqwfoNqibc07R+9yJsbuL+8zTt3O1yqzsql3kH4UH6PG/LBxFCc8vqKnjOq+ZVfbDuxrzD2DesX94fh1Xz+KJpCo+q/Zsvlnfis/0IlVzxPo3AWdjnmKb5R5ovH+t/TOPvpNd/uq1NpJ3qavo8ncRbdfXQ9qss6J+ZdpSNddPgbexHeXl5tc9VT1qHG7uqp517WlUs0yW25WaafrN5f693dZu+3h5nadpHHc3KwRtUkNyco7S/ZlXVelqdO23zqFwYB1FN92MfD9Ix1V+mLyZN86807Y/Tn79M43+vqrm0sid541mS/ThxJjE+jfcvq5uoINr5hlH5tJXGwzgxuob9rmUtsX75mZayYXOiP4wO4FUHS17ns2b4Kg6criZSCYXzuFIdVxVKGc+q6mU4Zxm8vw6i6btdmsvx98Gc5u9mnFN3YppRuQjl4ysNgyVC5p9p9Ns0/Pw2VjCjqFQG1Qn8eYRBfv95vDfuuCIPe19/1qTfNKvKBq77Y447mkgnC9Yvz/NF6duJu0b5ztNx1WybW1E1z8e8iWFclfIBchQHyF5vfkf0UVyh9mJcwrHednspRMZRQk+r5k/boVs6wgXOLa1gYv9NelfPk017V897DavjZLzgQve9NLqfhk9uVcDEU7cPo0lTnlPJt313Y2OUK+ykY/aTCKHSZ9OL8XZ0EE/jJDltm1Slwzeqmf68ZkcsJ6/fVu+qw/byrlDVL3O64Gduz1n/ZX3Uu+pwHS444V+WZmBup0d/TPvdz+K3jGPanTjI8ngY8+3G7zosy0pXMaf2+j2OCvRxNIHz4wi7S1ykyh2o3J83jdDIx/Vk0eMHES6/TsMv0rR/W9UPW1UTKV9dJ+0dn/w6rvo7UQG81neS3juOxO5qJp0uqCwO4gQrfSvTuKV80KT55dW/63mWWKfS33PdMP2G2+hlhMQsxudVUHxtu3TcMXrQ0e8yqfq8hrGd+uVqF52F+e7Dk7S8vI2/G3enWLOoOvPzSy+iWn22aPp8TMR+zMfh0xQYuWmUz4+P6jtLc8LlRxEuP0vT/mWVv21VTaSTa6qH0jdzXWfqcZws9Yk1qJoyw1hWuaOUg2s7B0b034ziKj2MkzE3r3abq/3c6iNCcLKmg20cJfLmnP6YflztplUJXW53lmbRTjQ/j5rfkdv1pRK6p1/mvTKrhlHaNx9Hs2da9llzHAyri0m/NKNTYCxz3ObO3VGa9q+r/lErCZioQuaeQzG+roQ7i2ZSv+rnKLeTj6q+ldJEmkWFM4rwmpSH4NL751H55A7mHEKzBet3U0oT6aRuIsVJ/zSmOZxztdutbl+eV5+92h756pammcT22Cnbr+M5m23n9hrbRv99NmkQF+SDcuEoT3LnC2RcOAbpsw+b4+Ms9n9+ivd86ebF/U8/uanft3FxcfHuF1r9Nwb1Lejyr5RzhVKeOWmnqZpDebrdEgbxQNysd9W5e7d+XiUql7zhn3T8e6U8z/NY3rT5LE87ettnX1ax/eB/xU3/U4FBJO7hggroPCqPfhU4m9HMKRVJfv9h6ejKQZReT7ru7ESo3FlmBZt/z7TIswWVGAiYmxIn+lZVVRxV7cj2RN2qwmJUQiTm3Yr3RlUI9erxHOO6cgJuf8DMu9ty3ru6d3/SBkxTiTyp+l3KnZ4cFPei2VVXHMNr1mUyZz0m1bL9+xx4V90l+hCAVfGffgMCBhAwAAIGEDCAgAEQMICAAQQMgIABBAwgYAAEDCBgAAEDIGAAAQMIGAABAwgYQMAACBhAwAACBkDAAAIGEDAAAgYQMAACBhAwgIABEDCAgAEEDICAAQQMIGAABAwgYAABAyBgAAEDCBgAAQMIGEDAAAgYQMAAAgZAwAACBhAwAAIGEDCAgAEQMICAARAwgIABBAyAgAEEDCBgAAQMIGAAAQMgYAABAwgYAAEDCBhAwAAIGEDAAAIGQMAAAgYQMAACBhAwgIABEDCAgAEEDICAAQQMgIABBAwgYAAEDCBgAAEDIGAAAQMIGAABAwgYQMAACBhg3f4jwACEq23JzLIGEQAAAABJRU5ErkJggg==",ee={class:"content-wrap"},le={class:"edit-attr-item-wrap"},te={class:"mb-[10px]"},oe={class:"edit-attr-item-wrap"},Ae={class:"mb-[10px]"},ie={class:"edit-attr-item-wrap"},ne={class:"mb-[10px]"},me={class:"edit-attr-item-wrap"},ae={class:"mb-[10px]"},de={class:"flex flex-wrap"},se=m("img",{class:"max-w-[280px] max-h-[220px]",src:K},null,-1),ge=[se],re=m("img",{class:"max-w-[280px] max-h-[220px]",src:$},null,-1),Ie=[re],pe={class:"dialog-footer"},ue={class:"style-wrap"},Be={class:"edit-attr-item-wrap"},Ge={class:"mb-[10px]"},be=y({__name:"edit-text",setup(Ee,{expose:v}){const l=q();l.editComponent.ignore=[];const r=M(!1),w=()=>{r.value=!0},s=M(l.editComponent.style),z=()=>{switch(s.value){case"style-1":l.editComponent.subTitle.control=!1,l.editComponent.more.control=!1,l.editComponent.styleName="风格1";break;case"style-2":l.editComponent.subTitle.control=!0,l.editComponent.more.control=!0,l.editComponent.styleName="风格2";break}l.editComponent.style=s.value,r.value=!1};return v({}),(V,o)=>{const f=N("ArrowRight"),Z=j,a=U,I=J,G=F,E=H,B=L,c=O,Y=X,b=S,x=k,C=P,Q=_;return h(),D(W,null,[p(m("div",ee,[m("div",le,[m("h3",te,d(e(n)("styleSet")),1),t(I,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(a,{label:e(n)("selectStyle"),class:"flex"},{default:i(()=>[m("span",{class:"text-primary flex-1 cursor-pointer",onClick:w},d(e(l).editComponent.styleName),1),t(Z,null,{default:i(()=>[t(f)]),_:1})]),_:1},8,["label"])]),_:1})]),m("div",oe,[m("h3",Ae,d(e(n)("titleContent")),1),t(I,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(a,{label:e(n)("title")},{default:i(()=>[t(G,{modelValue:e(l).editComponent.text,"onUpdate:modelValue":o[0]||(o[0]=A=>e(l).editComponent.text=A),placeholder:e(n)("titlePlaceholder"),clearable:"",maxlength:"15","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(a,{label:e(n)("link")},{default:i(()=>[t(E,{modelValue:e(l).editComponent.link,"onUpdate:modelValue":o[1]||(o[1]=A=>e(l).editComponent.link=A)},null,8,["modelValue"])]),_:1},8,["label"]),p(t(a,{label:e(n)("textAlign")},{default:i(()=>[t(c,{modelValue:e(l).editComponent.textAlign,"onUpdate:modelValue":o[2]||(o[2]=A=>e(l).editComponent.textAlign=A)},{default:i(()=>[t(B,{label:"left"},{default:i(()=>[g(d(e(n)("textAlignLeft")),1)]),_:1}),t(B,{label:"center"},{default:i(()=>[g(d(e(n)("textAlignCenter")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[u,e(l).editComponent.style=="style-1"]])]),_:1})]),p(m("div",ie,[m("h3",ne,d(e(n)("subTitleContent")),1),t(I,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(a,{label:e(n)("subTitle")},{default:i(()=>[t(G,{modelValue:e(l).editComponent.subTitle.text,"onUpdate:modelValue":o[3]||(o[3]=A=>e(l).editComponent.subTitle.text=A),placeholder:e(n)("subTitlePlaceholder"),clearable:"",maxlength:"30","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(a,{label:e(n)("textFontSize")},{default:i(()=>[t(Y,{modelValue:e(l).editComponent.subTitle.fontSize,"onUpdate:modelValue":o[4]||(o[4]=A=>e(l).editComponent.subTitle.fontSize=A),"show-input":"",size:"small",class:"ml-[10px] article-slider",min:12,max:16},null,8,["modelValue"])]),_:1},8,["label"]),t(a,{label:e(n)("textColor")},{default:i(()=>[t(b,{modelValue:e(l).editComponent.subTitle.color,"onUpdate:modelValue":o[5]||(o[5]=A=>e(l).editComponent.subTitle.color=A)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})],512),[[u,e(l).editComponent.subTitle.control]]),p(m("div",me,[m("h3",ae,d(e(n)("moreContent")),1),t(I,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(a,{label:e(n)("more")},{default:i(()=>[t(G,{modelValue:e(l).editComponent.more.text,"onUpdate:modelValue":o[6]||(o[6]=A=>e(l).editComponent.more.text=A),placeholder:e(n)("morePlaceholder"),clearable:"",maxlength:"8","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(a,{label:e(n)("link")},{default:i(()=>[t(E,{modelValue:e(l).editComponent.more.link,"onUpdate:modelValue":o[7]||(o[7]=A=>e(l).editComponent.more.link=A)},null,8,["modelValue"])]),_:1},8,["label"]),t(a,{label:e(n)("moreIsShow")},{default:i(()=>[t(x,{modelValue:e(l).editComponent.more.isShow,"onUpdate:modelValue":o[8]||(o[8]=A=>e(l).editComponent.more.isShow=A)},null,8,["modelValue"])]),_:1},8,["label"]),t(a,{label:e(n)("textColor")},{default:i(()=>[t(b,{modelValue:e(l).editComponent.more.color,"onUpdate:modelValue":o[9]||(o[9]=A=>e(l).editComponent.more.color=A)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})],512),[[u,e(l).editComponent.more.control]]),t(Q,{modelValue:r.value,"onUpdate:modelValue":o[13]||(o[13]=A=>r.value=A),title:e(n)("selectStyle"),width:"40%"},{footer:i(()=>[m("span",pe,[t(C,{onClick:o[12]||(o[12]=A=>r.value=!1)},{default:i(()=>[g(d(e(n)("cancel")),1)]),_:1}),t(C,{type:"primary",onClick:z},{default:i(()=>[g(d(e(n)("confirm")),1)]),_:1})])]),default:i(()=>[m("div",de,[m("div",{class:R(["flex items-center justify-center overflow-hidden w-[280px] h-[100px] mr-[12px] cursor-pointer border bg-gray-50",{"border-primary":s.value=="style-1"}]),onClick:o[10]||(o[10]=A=>s.value="style-1")},ge,2),m("div",{class:R(["flex items-center justify-center overflow-hidden w-[280px] h-[100px] mr-[12px] cursor-pointer border bg-gray-50",{"border-primary":s.value=="style-2"}]),onClick:o[11]||(o[11]=A=>s.value="style-2")},Ie,2)])]),_:1},8,["modelValue","title"])],512),[[u,e(l).editTab=="content"]]),p(m("div",ue,[m("div",Be,[m("h3",Ge,d(e(n)("titleStyle")),1),t(I,{"label-width":"80px",class:"px-[10px]"},{default:i(()=>[t(a,{label:e(n)("textFontSize")},{default:i(()=>[t(Y,{modelValue:e(l).editComponent.fontSize,"onUpdate:modelValue":o[14]||(o[14]=A=>e(l).editComponent.fontSize=A),"show-input":"",size:"small",class:"ml-[10px] article-slider",min:12,max:20},null,8,["modelValue"])]),_:1},8,["label"]),t(a,{label:e(n)("textFontWeight")},{default:i(()=>[t(c,{modelValue:e(l).editComponent.fontWeight,"onUpdate:modelValue":o[15]||(o[15]=A=>e(l).editComponent.fontWeight=A)},{default:i(()=>[t(B,{label:"normal"},{default:i(()=>[g(d(e(n)("fontWeightNormal")),1)]),_:1}),t(B,{label:"bold"},{default:i(()=>[g(d(e(n)("fontWeightBold")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),t(a,{label:e(n)("textColor")},{default:i(()=>[t(b,{modelValue:e(l).editComponent.textColor,"onUpdate:modelValue":o[16]||(o[16]=A=>e(l).editComponent.textColor=A)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),T(V.$slots,"style")],512),[[u,e(l).editTab=="style"]])],64)}}});const De=Object.freeze(Object.defineProperty({__proto__:null,default:be},Symbol.toStringTag,{value:"Module"}));export{De as _}; diff --git a/niucloud/public/admin/assets/edit-user-552b2b37.js b/niucloud/public/admin/assets/edit-user-552b2b37.js new file mode 100644 index 0000000..62c340c --- /dev/null +++ b/niucloud/public/admin/assets/edit-user-552b2b37.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index-4718d422.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import"./attachment-bc20fd95.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./member_head-a897263d.js";import"./user-3121c68a.js";import"./site-3951be3a.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js b/niucloud/public/admin/assets/edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js new file mode 100644 index 0000000..0ae28a9 --- /dev/null +++ b/niucloud/public/admin/assets/edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js @@ -0,0 +1 @@ +import{d as Y,r as _,q as D,n as H,N as o,h as n,I as c,w as t,a as F,e as s,i as w,t as v,u as r,y as J,c as b,F as q,G as B,R as K,B as E,aF as M,au as Q,aG as Z,aq as ee,aC as le,X as ae,W as oe,aw as re,ax as te,Y as se,E as de,a7 as ue,$ as ne}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as ie}from"./index-4718d422.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as me}from"./member_head-a897263d.js";import{a as pe,b as ce}from"./user-3121c68a.js";import{e as _e,c as fe}from"./site-3951be3a.js";import{p as ge}from"./sys-0f76aff3.js";const we={class:"flex items-center"},ve={key:1,src:me,alt:"",class:"mr-[10px] w-[24px]"},be={key:2},he={key:0},Ve={class:"dialog-footer"},Te=Y({__name:"edit-user",emits:["complete"],setup(ye,{expose:I,emit:L}){const P=_([]),i=_(""),A=d=>{i.value=d,typeof d=="string"&&(e.username=d)},k=()=>{pe({}).then(({data:d})=>{P.value=d}).catch()};k();const G=D(()=>!!(e.uid||!i.value||typeof i.value=="string")),f=_(!1),m=_(!1);let V="";const N={uid:0,username:"",head_img:"",real_name:"",password:"",confirm_password:"",status:1,role_ids:[],userrole:{}},e=H({...N}),R=_(),O=D(()=>({uid:[{validator:(d,l,u)=>{!e.uid&&i.value===""?u(new Error(o("managerPlaceholder"))):u()},trigger:"blur"}],username:[{required:e.uid==0,message:o("accountNumberPlaceholder"),trigger:"blur"}],real_name:[{required:!0,message:o("userRealNamePlaceholder"),trigger:"blur"}],role_ids:[{required:!0,message:o("userRolePlaceholder"),trigger:"blur"}],password:[{required:e.uid==0,message:o("passwordPlaceholder"),trigger:"blur"}],confirm_password:[{required:e.uid==0,message:o("confirmPasswordPlaceholder"),trigger:"blur"},{validator:(d,l,u)=>{l!=e.password?u(new Error(o("confirmPasswordError"))):u()},trigger:"blur"}]})),y=_([]);ge().then(d=>{y.value=d.data,y.value.forEach(l=>{l.role_id=l.role_id.toString()})});const S=async d=>{if(m.value||!d)return;const l=e.uid?_e:fe;await d.validate(async u=>{if(u){m.value=!0;const g=M(Q(e));!e.uid&&typeof i.value=="number"&&(g.uid=i.value),l(g).then(U=>{m.value=!1,f.value=!1,!e.uid&&k(),L("complete")}).catch(()=>{m.value=!1})}})};return I({showDialog:f,setFormData:async(d=null)=>{if(m.value=!0,i.value="",Object.assign(e,N),V=o("addUser"),d){V=o("updateUser");const l=await(await ce(d.uid)).data;l.role_ids=l.role_ids||[],Object.keys(e).forEach(u=>{l[u]!=null&&(e[u]=l[u])})}m.value=!1}}),(d,l)=>{const u=Z,g=ee,U=le,p=ae,h=oe,$=ie,x=re,j=te,T=se,C=de,z=ue,W=ne;return n(),c(z,{modelValue:f.value,"onUpdate:modelValue":l[9]||(l[9]=a=>f.value=a),title:r(V),width:"500px","destroy-on-close":!0},{footer:t(()=>[F("span",Ve,[s(C,{onClick:l[7]||(l[7]=a=>f.value=!1)},{default:t(()=>[w(v(r(o)("cancel")),1)]),_:1}),s(C,{type:"primary",loading:m.value,onClick:l[8]||(l[8]=a=>S(R.value))},{default:t(()=>[w(v(r(o)("confirm")),1)]),_:1},8,["loading"])])]),default:t(()=>[J((n(),c(T,{model:e,"label-width":"90px",ref_key:"formRef",ref:R,rules:r(O),class:"page-form"},{default:t(()=>[e.uid?(n(),c(p,{key:1,label:r(o)("accountNumber"),prop:"username"},{default:t(()=>[s(h,{modelValue:e.username,"onUpdate:modelValue":l[0]||(l[0]=a=>e.username=a),placeholder:r(o)("accountNumberPlaceholder"),clearable:"",disabled:e.uid,class:"input-width",maxlength:"10","show-word-limit":""},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["label"])):(n(),c(p,{key:0,label:r(o)("accountNumber"),prop:"uid"},{default:t(()=>[s(U,{"model-value":i.value,placeholder:r(o)("accountNumberPlaceholder"),class:"input-width",filterable:"",clearable:"","allow-create":!0,onChange:A,"default-first-option":!0},{default:t(()=>[(n(!0),b(q,null,B(P.value,a=>(n(),c(g,{key:a.uid,label:a.username,value:a.uid},{default:t(()=>[F("div",we,[a.head_img?(n(),c(u,{key:0,src:r(K)(a.head_img),size:"small",class:"mr-[10px]"},null,8,["src"])):(n(),b("img",ve)),w(" "+v(a.username),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["model-value","placeholder"])]),_:1},8,["label"])),r(G)?(n(),b("div",be,[s(p,{label:r(o)("headImg")},{default:t(()=>[s($,{modelValue:e.head_img,"onUpdate:modelValue":l[1]||(l[1]=a=>e.head_img=a)},null,8,["modelValue"])]),_:1},8,["label"]),s(p,{label:r(o)("userRealName"),prop:"real_name"},{default:t(()=>[s(h,{modelValue:e.real_name,"onUpdate:modelValue":l[2]||(l[2]=a=>e.real_name=a),placeholder:r(o)("userRealNamePlaceholder"),clearable:"",class:"input-width",maxlength:"10","show-word-limit":""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),e.uid?E("",!0):(n(),b("div",he,[s(p,{label:r(o)("password"),prop:"password"},{default:t(()=>[s(h,{modelValue:e.password,"onUpdate:modelValue":l[3]||(l[3]=a=>e.password=a),placeholder:r(o)("passwordPlaceholder"),type:"password","show-password":!0,clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(p,{label:r(o)("confirmPassword"),prop:"confirm_password"},{default:t(()=>[s(h,{modelValue:e.confirm_password,"onUpdate:modelValue":l[4]||(l[4]=a=>e.confirm_password=a),placeholder:r(o)("confirmPasswordPlaceholder"),type:"password","show-password":!0,clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]))])):E("",!0),e.userrole.is_admin?E("",!0):(n(),c(p,{key:3,label:r(o)("userRoleName"),prop:"role_ids"},{default:t(()=>[s(U,{modelValue:e.role_ids,"onUpdate:modelValue":l[5]||(l[5]=a=>e.role_ids=a),placeholder:r(o)("userRolePlaceholder"),class:"input-width",multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:t(()=>[(n(!0),b(q,null,B(y.value,(a,X)=>(n(),c(g,{label:a.role_name,value:a.role_id,key:X},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])),s(p,{label:r(o)("status")},{default:t(()=>[s(j,{modelValue:e.status,"onUpdate:modelValue":l[6]||(l[6]=a=>e.status=a)},{default:t(()=>[s(x,{label:1},{default:t(()=>[w(v(r(o)("statusUnlock")),1)]),_:1}),s(x,{label:0},{default:t(()=>[w(v(r(o)("lock")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[W,m.value]])]),_:1},8,["modelValue","title"])}}});export{Te as _}; diff --git a/niucloud/public/admin/assets/edit-verify-d266175b.js b/niucloud/public/admin/assets/edit-verify-d266175b.js new file mode 100644 index 0000000..7295a3e --- /dev/null +++ b/niucloud/public/admin/assets/edit-verify-d266175b.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */export{o as default}; diff --git a/niucloud/public/admin/assets/edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js b/niucloud/public/admin/assets/edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js new file mode 100644 index 0000000..3902389 --- /dev/null +++ b/niucloud/public/admin/assets/edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js @@ -0,0 +1 @@ +import{d as N,r as p,q as R,N as t,h as d,I as _,w as i,a as k,e as r,i as b,t as c,u,c as x,F as g,au as I,cx as $,aE as j,X as O,Y as S,E as T,a7 as X}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */const Y={class:"dialog-footer"},Z=N({__name:"edit-verify",emits:["complete"],setup(z,{expose:V,emit:y}){const m=p(!1),M=p(""),f={validate_type:"",min_number:1,max_number:120,betweenMin:1,betweenMax:120},l=p({...f}),v=p(),E=(o,e,a)=>{e?e>l.value.betweenMax?a(new Error(t("minPlaceholder1"))):a():a(new Error(t("minPlaceholder")))},h=(o,e,a)=>{e?e{e>l.value.view_max?a(new Error(t("min1Placeholder1"))):a()},q=(o,e,a)=>{e?e({min_number:[{required:!0,message:t("minPlaceholder"),trigger:"change"}],max_number:[{required:!0,message:t("maxPlaceholder"),trigger:"change"}],betweenMin:[{required:!0,validator:E,trigger:"change"}],betweenMax:[{required:!0,validator:h,trigger:"change"}],view_min:[{required:!0,validator:P,trigger:"change"}],view_max:[{required:!0,validator:q,trigger:"change"}]})),U=async o=>{o&&await o.validate(async e=>{e&&(y("complete",I(l.value)),m.value=!1)})},F=async(o=null)=>{l.value=$(Object.assign(f,o)),m.value=!0},L=o=>{var e;(e=v.value)==null||e.clearValidate(),o()};return V({showDialog:m,setFormData:F}),(o,e)=>{const a=j,s=O,B=S,w=T,C=X;return d(),_(C,{modelValue:m.value,"onUpdate:modelValue":e[8]||(e[8]=n=>m.value=n),title:M.value,width:"480px","before-close":L,"destroy-on-close":!0},{footer:i(()=>[k("span",Y,[r(w,{onClick:e[6]||(e[6]=n=>m.value=!1)},{default:i(()=>[b(c(u(t)("cancel")),1)]),_:1}),r(w,{type:"primary",onClick:e[7]||(e[7]=n=>U(v.value))},{default:i(()=>[b(c(u(t)("confirm")),1)]),_:1})])]),default:i(()=>[r(B,{model:l.value,"label-width":"130px",ref_key:"formRef",ref:v,rules:u(D),class:"page-form"},{default:i(()=>[l.value.validate_type=="min"?(d(),_(s,{key:0,label:u(t)("minLabel"),prop:"min_number"},{default:i(()=>[r(a,{modelValue:l.value.min_number,"onUpdate:modelValue":e[0]||(e[0]=n=>l.value.min_number=n),step:1,"step-strictly":"",min:1,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"])):l.value.validate_type=="max"?(d(),_(s,{key:1,label:u(t)("maxLabel"),prop:"max_number"},{default:i(()=>[r(a,{modelValue:l.value.max_number,"onUpdate:modelValue":e[1]||(e[1]=n=>l.value.max_number=n),step:1,"step-strictly":"",min:1,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"])):l.value.view_type==="number"?(d(),x(g,{key:2},[r(s,{label:u(t)("minLabel1"),prop:"view_min"},{default:i(()=>[r(a,{modelValue:l.value.view_min,"onUpdate:modelValue":e[2]||(e[2]=n=>l.value.view_min=n),min:0,"value-on-clear":0,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),r(s,{label:u(t)("maxLabel1"),prop:"view_max"},{default:i(()=>[r(a,{modelValue:l.value.view_max,"onUpdate:modelValue":e[3]||(e[3]=n=>l.value.view_max=n),min:1,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"])],64)):(d(),x(g,{key:3},[r(s,{label:u(t)("minLabel"),prop:"betweenMin"},{default:i(()=>[r(a,{modelValue:l.value.betweenMin,"onUpdate:modelValue":e[4]||(e[4]=n=>l.value.betweenMin=n),step:1,"step-strictly":"",min:1,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),r(s,{label:u(t)("maxLabel"),prop:"betweenMax"},{default:i(()=>[r(a,{modelValue:l.value.betweenMax,"onUpdate:modelValue":e[5]||(e[5]=n=>l.value.betweenMax=n),step:1,"step-strictly":"",min:1,class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"])],64))]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])}}});export{Z as _}; diff --git a/niucloud/public/admin/assets/edit-view-type-2b804272.js b/niucloud/public/admin/assets/edit-view-type-2b804272.js new file mode 100644 index 0000000..193504a --- /dev/null +++ b/niucloud/public/admin/assets/edit-view-type-2b804272.js @@ -0,0 +1 @@ +import{_ as o}from"./edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js";import"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./dict-3e5bfbe1.js";import"./tools-8d764897.js";export{o as default}; diff --git a/niucloud/public/admin/assets/edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js b/niucloud/public/admin/assets/edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js new file mode 100644 index 0000000..8e8fce4 --- /dev/null +++ b/niucloud/public/admin/assets/edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js @@ -0,0 +1 @@ +import{d as X,r as m,q as Y,N as t,h as d,I as p,w as u,a as z,e as s,i as k,t as w,u as n,c as f,F as b,G as g,B as V,au as H,cx as J,aw as K,ax as Q,X as W,aq as Z,aC as ee,Y as le,E as ae,a7 as oe}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{c as te}from"./dict-3e5bfbe1.js";import{g as ue,l as re,n as de}from"./tools-8d764897.js";const ne={class:"dialog-footer"},Pe=X({__name:"edit-view-type",emits:["complete"],setup(se,{expose:A,emit:M}){const i=m(!1),U=m(""),C={select_type:1,dict_type:"",addon:"",model:"",value_key:"",label_key:""},e=m({...C}),h=m(),F=m([]),x=m([]),D=o=>{re(o).then(a=>{x.value=a.data})},P=m([]);(async()=>{let{data:o}=await ue({});P.value=[{title:"系统",key:"system"}],P.value.push(...o),D({addon:"system"})})();const B=o=>{e.value.model="",D({addon:o})},E=m([]),L=o=>{de(o).then(a=>{E.value=a.data})},G=o=>{L({model:o})},R=Y(()=>({dict_type:[{validator:(o,a,r)=>{console.log(e.value.select_type),e.value.select_type==1&&e.value.dict_type==""?r(new Error(t("dictTypePlaceholder"))):r()},trigger:"blur"}],addon:[{validator:(o,a,r)=>{e.value.select_type==2&&e.value.addon==""?r(new Error(t("addonsPlaceholder"))):r()},trigger:"blur"}],model:[{validator:(o,a,r)=>{console.log(e.value.model),e.value.select_type==2&&e.value.model==""?r(new Error(t("associatedModelPlaceholder"))):r()},trigger:"blur"}],value_key:[{validator:(o,a,r)=>{e.value.select_type==2&&e.value.value_key==""?r(new Error(t("remotePullDownValuePlaceholder"))):r()},trigger:"blur"}],label_key:[{validator:(o,a,r)=>{e.value.select_type==2&&e.value.label_key==""?r(new Error(t("remotePullDownLabelPlaceholder"))):r()},trigger:"blur"}]})),$=()=>{te().then(o=>{F.value=o.data})},N=async o=>{o&&await o.validate(async a=>{a&&(M("complete",H(e.value)),i.value=!1)})},q=async(o=null)=>{e.value=J(Object.assign(C,o)),$(),e.value.model!=""&&(D({addon:e.value.addon}),L({model:e.value.model})),i.value=!0},I=o=>{var a;(a=h.value)==null||a.clearValidate(),o()};return A({showDialog:i,setFormData:q}),(o,a)=>{const r=K,O=Q,c=W,v=Z,_=ee,S=le,T=ae,j=oe;return d(),p(j,{modelValue:i.value,"onUpdate:modelValue":a[8]||(a[8]=l=>i.value=l),title:U.value,width:"480px","before-close":I,"destroy-on-close":!0},{footer:u(()=>[z("span",ne,[s(T,{onClick:a[6]||(a[6]=l=>i.value=!1)},{default:u(()=>[k(w(n(t)("cancel")),1)]),_:1}),s(T,{type:"primary",onClick:a[7]||(a[7]=l=>N(h.value))},{default:u(()=>[k(w(n(t)("confirm")),1)]),_:1})])]),default:u(()=>[s(S,{model:e.value,"label-width":"130px",ref_key:"formRef",ref:h,rules:n(R),class:"page-form"},{default:u(()=>[s(c,{label:n(t)("selectType"),prop:"type"},{default:u(()=>[s(O,{modelValue:e.value.select_type,"onUpdate:modelValue":a[0]||(a[0]=l=>e.value.select_type=l)},{default:u(()=>[s(r,{label:1},{default:u(()=>[k(w(n(t)("dictType")),1)]),_:1}),s(r,{label:2},{default:u(()=>[k(w(n(t)("remotePullDown")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),e.value.select_type==1?(d(),p(c,{key:0,label:n(t)("dictType"),prop:"dict_type"},{default:u(()=>[s(_,{class:"input-width",placeholder:n(t)("dictTypePlaceholder"),modelValue:e.value.dict_type,"onUpdate:modelValue":a[1]||(a[1]=l=>e.value.dict_type=l),filterable:"",remote:"",clearable:""},{default:u(()=>[(d(!0),f(b,null,g(F.value,l=>(d(),p(v,{label:l.name,value:l.key,key:l.key},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"])):V("",!0),e.value.select_type==2?(d(),p(c,{key:1,label:n(t)("addons"),prop:"addon"},{default:u(()=>[s(_,{modelValue:e.value.addon,"onUpdate:modelValue":a[2]||(a[2]=l=>e.value.addon=l),placeholder:n(t)("addonsPlaceholder"),class:"input-width",onChange:B},{default:u(()=>[(d(!0),f(b,null,g(P.value,(l,y)=>(d(),p(v,{label:l.title,value:l.key,key:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):V("",!0),e.value.select_type==2?(d(),p(c,{key:2,label:n(t)("associatedModel"),prop:"model"},{default:u(()=>[s(_,{placeholder:n(t)("associatedModelPlaceholder"),modelValue:e.value.model,"onUpdate:modelValue":a[3]||(a[3]=l=>e.value.model=l),class:"input-width",filterable:"",onChange:G},{default:u(()=>[(d(!0),f(b,null,g(x.value,l=>(d(),p(v,{label:l,value:l,key:l},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"])):V("",!0),e.value.select_type==2?(d(),p(c,{key:3,prop:"value_key",label:n(t)("remotePullDownValue")},{default:u(()=>[s(_,{class:"input-width",placeholder:n(t)("remotePullDownValuePlaceholder"),modelValue:e.value.value_key,"onUpdate:modelValue":a[4]||(a[4]=l=>e.value.value_key=l)},{default:u(()=>[(d(!0),f(b,null,g(E.value,(l,y)=>(d(),p(v,{label:`${l.name}:${l.comment}`,value:l.name,key:y},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"])):V("",!0),e.value.select_type==2?(d(),p(c,{key:4,prop:"label_key",label:n(t)("remotePullDownLabel")},{default:u(()=>[s(_,{class:"input-width",placeholder:n(t)("remotePullDownLabelPlaceholder"),modelValue:e.value.label_key,"onUpdate:modelValue":a[5]||(a[5]=l=>e.value.label_key=l)},{default:u(()=>[(d(!0),f(b,null,g(E.value,(l,y)=>(d(),p(v,{label:`${l.name}:${l.comment}`,value:l.name,key:y},null,8,["label","value"]))),128))]),_:1},8,["placeholder","modelValue"])]),_:1},8,["label"])):V("",!0)]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])}}});export{Pe as _}; diff --git a/niucloud/public/admin/assets/edit.vue_vue_type_style_index_0_lang-b8616a57.js b/niucloud/public/admin/assets/edit.vue_vue_type_style_index_0_lang-b8616a57.js new file mode 100644 index 0000000..399e543 --- /dev/null +++ b/niucloud/public/admin/assets/edit.vue_vue_type_style_index_0_lang-b8616a57.js @@ -0,0 +1 @@ +import{d as P,r as c,n as F,q,N as l,h as v,I as y,w as n,a as B,e as d,i as b,t as V,u as t,y as C,W as I,X as N,Y as U,E as R,a7 as $,$ as j}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{e as O,a as L,g as S}from"./dict-3e5bfbe1.js";const T={class:"dialog-footer"},Q=P({__name:"edit",emits:["complete"],setup(W,{expose:h,emit:D}){const m=c(!1),r=c(!1),p={id:"",name:"",key:"",memo:""},a=F({...p}),f=c(),k=q(()=>({name:[{required:!0,message:l("namePlaceholder"),trigger:"blur"}],key:[{required:!0,message:l("keyPlaceholder"),trigger:"blur"}],data:[{required:!0,message:l("dataPlaceholder"),trigger:"blur"}]})),w=async i=>{if(r.value||!i)return;const e=a.id?O:L;await i.validate(async o=>{o&&(r.value=!0,e(a).then(_=>{r.value=!1,m.value=!1,D("complete")}).catch(()=>{r.value=!1}))})};return h({showDialog:m,setFormData:async(i=null)=>{if(Object.assign(a,p),r.value=!0,i){const e=await(await S(i.id)).data;e&&Object.keys(a).forEach(o=>{e[o]!=null&&(a[o]=e[o])})}r.value=!1}}),(i,e)=>{const o=I,u=N,_=U,g=R,x=$,E=j;return v(),y(x,{modelValue:m.value,"onUpdate:modelValue":e[5]||(e[5]=s=>m.value=s),title:a.id?t(l)("updateDict"):t(l)("addDict"),width:"480",class:"diy-dialog-wrap","destroy-on-close":!0},{footer:n(()=>[B("span",T,[d(g,{onClick:e[3]||(e[3]=s=>m.value=!1)},{default:n(()=>[b(V(t(l)("cancel")),1)]),_:1}),d(g,{type:"primary",loading:r.value,onClick:e[4]||(e[4]=s=>w(f.value))},{default:n(()=>[b(V(t(l)("confirm")),1)]),_:1},8,["loading"])])]),default:n(()=>[C((v(),y(_,{model:a,"label-width":"120px",ref_key:"formRef",ref:f,rules:t(k),class:"page-form"},{default:n(()=>[d(u,{label:t(l)("name"),prop:"name"},{default:n(()=>[d(o,{modelValue:a.name,"onUpdate:modelValue":e[0]||(e[0]=s=>a.name=s),clearable:"",placeholder:t(l)("namePlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d(u,{label:t(l)("key"),prop:"key"},{default:n(()=>[d(o,{modelValue:a.key,"onUpdate:modelValue":e[1]||(e[1]=s=>a.key=s),clearable:"",placeholder:t(l)("keyPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),d(u,{label:t(l)("memo")},{default:n(()=>[d(o,{modelValue:a.memo,"onUpdate:modelValue":e[2]||(e[2]=s=>a.memo=s),type:"textarea",clearable:"",placeholder:t(l)("memoPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[E,r.value]])]),_:1},8,["modelValue","title"])}}});export{Q as _}; diff --git a/niucloud/public/admin/assets/edit_personal-159a5665.css b/niucloud/public/admin/assets/edit_personal-159a5665.css new file mode 100644 index 0000000..81fdccb --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-159a5665.css @@ -0,0 +1 @@ +[data-v-8a5bad5a] .personal-body{background-color:#fff}[data-v-8a5bad5a] .personal-body .el-form-item__content .el-input{width:250px}[data-v-8a5bad5a] .personal-body .el-form-item__content .el-form-item__content{justify-content:space-between}[data-v-8a5bad5a] .personal-body .el-form-item__content .el-button{margin-left:auto}[data-v-8a5bad5a] .personal-body .el-form-item__content .personal-option{margin-right:auto} diff --git a/niucloud/public/admin/assets/edit_personal-1662de97.css b/niucloud/public/admin/assets/edit_personal-1662de97.css new file mode 100644 index 0000000..b7716c6 --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-1662de97.css @@ -0,0 +1 @@ +[data-v-d379b6db] .personal-body{background-color:#fff}[data-v-d379b6db] .personal-body .el-form-item__content .el-input{width:250px}[data-v-d379b6db] .personal-body .el-form-item__content .el-form-item__content{justify-content:space-between}[data-v-d379b6db] .personal-body .el-form-item__content .el-button{margin-left:auto}[data-v-d379b6db] .personal-body .el-form-item__content .personal-option{margin-right:auto} diff --git a/niucloud/public/admin/assets/edit_personal-19949f69.js b/niucloud/public/admin/assets/edit_personal-19949f69.js new file mode 100644 index 0000000..381ad71 --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-19949f69.js @@ -0,0 +1 @@ +import{d as V,n as N,r as f,y as E,c as F,e as a,w as r,_ as U,$ as k,h as C,u as s,N as n,a as _,t as u,i as v,f as B,X as R,W as $,Y as D,E as L}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as P}from"./index-4718d422.js";import{g as S,s as T}from"./personal-d4a3249e.js";import{_ as W}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";const X={class:"main-container w-full bg-white"},Y={class:"fixed-footer-wrap"},j={class:"fixed-footer"},q=V({__name:"edit_personal",setup(z){const g=B(),t=N({head_img:"",real_name:"",username:""}),i=f(),o=f(!0);(()=>{o.value=!0,S().then(l=>{o.value=!1;const e=l.data;t.head_img=e.head_img,t.real_name=e.real_name,t.username=e.username}).catch(()=>{o.value=!1})})();const h=l=>{o.value||!l||l.validate(e=>{if(e)o.value=!0,T(t).then(d=>{o.value=!1}).catch(()=>{o.value=!1});else return!1})},b=()=>{g.push("/user/center")};return(l,e)=>{const d=P,p=R,w=$,x=D,c=L,y=U,I=k;return E((C(),F("div",X,[a(y,{class:"box-card !border-none",shadow:"never"},{default:r(()=>[a(x,{model:t,"label-width":"80px",ref_key:"formRef",ref:i,rules:l.formRules,class:"page-form"},{default:r(()=>[a(p,{label:s(n)("headImg")},{default:r(()=>[a(d,{modelValue:t.head_img,"onUpdate:modelValue":e[0]||(e[0]=m=>t.head_img=m),limit:1},null,8,["modelValue"])]),_:1},8,["label"]),a(p,{label:s(n)("userName")},{default:r(()=>[_("span",null,u(t.username),1)]),_:1},8,["label"]),a(p,{label:s(n)("realName")},{default:r(()=>[a(w,{modelValue:t.real_name,"onUpdate:modelValue":e[1]||(e[1]=m=>t.real_name=m),placeholder:s(n)("realNamePlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"]),_("div",Y,[_("div",j,[a(c,{type:"primary",onClick:e[2]||(e[2]=m=>h(i.value))},{default:r(()=>[v(u(s(n)("save")),1)]),_:1}),a(c,{type:"primary",onClick:e[3]||(e[3]=m=>b(i.value))},{default:r(()=>[v(u(s(n)("cancel")),1)]),_:1})])])]),_:1})])),[[I,o.value]])}}});const Ie=W(q,[["__scopeId","data-v-4b689161"]]);export{Ie as default}; diff --git a/niucloud/public/admin/assets/edit_personal-4b0f7666.css b/niucloud/public/admin/assets/edit_personal-4b0f7666.css new file mode 100644 index 0000000..d35d628 --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-4b0f7666.css @@ -0,0 +1 @@ +[data-v-4b689161] .personal-body{background-color:#fff}[data-v-4b689161] .personal-body .el-form-item__content .el-input{width:250px}[data-v-4b689161] .personal-body .el-form-item__content .el-form-item__content{justify-content:space-between}[data-v-4b689161] .personal-body .el-form-item__content .el-button{margin-left:auto}[data-v-4b689161] .personal-body .el-form-item__content .personal-option{margin-right:auto} diff --git a/niucloud/public/admin/assets/edit_personal-c026cc15.js b/niucloud/public/admin/assets/edit_personal-c026cc15.js new file mode 100644 index 0000000..b9afac3 --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-c026cc15.js @@ -0,0 +1 @@ +import{d as V,f as N,n as E,r as f,y as F,h as U,c as k,a as i,t as p,u as r,N as l,e as a,w as s,i as v,X as C,W as B,Y as R,E as $,_ as j,$ as D}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as P}from"./index-4718d422.js";import{g as L,s as S}from"./personal-d4a3249e.js";import{_ as T}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";const W={class:"main-container w-full pt-[64px] bg-white"},X={class:"flex justify-between items-center h-[32px] mb-4"},Y={class:"text-[20px]"},q={class:"flex justify-center mt-[50px]"},z=V({__name:"edit_personal",setup(A){const g=N(),t=E({head_img:"",real_name:"",username:""}),d=f(),o=f(!0);(()=>{o.value=!0,L().then(n=>{o.value=!1;const e=n.data;t.head_img=e.head_img,t.real_name=e.real_name,t.username=e.username}).catch(()=>{o.value=!1})})();const h=n=>{o.value||!n||n.validate(e=>{if(e)o.value=!0,S(t).then(u=>{o.value=!1}).catch(()=>{o.value=!1});else return!1})},b=()=>{g.push("/user/center")};return(n,e)=>{const u=P,_=C,x=B,y=R,c=$,w=j,I=D;return F((U(),k("div",W,[i("div",X,[i("span",Y,p(r(l)("editPersonal")),1)]),a(w,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[a(y,{model:t,"label-width":"90px",ref_key:"formRef",ref:d,class:"page-form"},{default:s(()=>[a(_,{label:r(l)("headImg")},{default:s(()=>[a(u,{modelValue:t.head_img,"onUpdate:modelValue":e[0]||(e[0]=m=>t.head_img=m),limit:1},null,8,["modelValue"])]),_:1},8,["label"]),a(_,{label:r(l)("userName")},{default:s(()=>[i("span",null,p(t.username),1)]),_:1},8,["label"]),a(_,{label:r(l)("realName")},{default:s(()=>[a(x,{modelValue:t.real_name,"onUpdate:modelValue":e[1]||(e[1]=m=>t.real_name=m),placeholder:r(l)("realNamePlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"]),i("div",q,[a(c,{type:"primary",onClick:e[2]||(e[2]=m=>h(d.value))},{default:s(()=>[v(p(r(l)("save")),1)]),_:1}),a(c,{type:"primary",onClick:e[3]||(e[3]=m=>b())},{default:s(()=>[v(p(r(l)("cancel")),1)]),_:1})])]),_:1})])),[[I,o.value]])}}});const Ve=T(z,[["__scopeId","data-v-8a5bad5a"]]);export{Ve as default}; diff --git a/niucloud/public/admin/assets/edit_personal-edfd124c.js b/niucloud/public/admin/assets/edit_personal-edfd124c.js new file mode 100644 index 0000000..f1cdbd0 --- /dev/null +++ b/niucloud/public/admin/assets/edit_personal-edfd124c.js @@ -0,0 +1 @@ +import{d as V,n as N,r as f,y as E,c as F,a as i,t as p,u as r,e as a,w as l,_ as U,$ as k,h as C,N as s,i as v,f as B,X as R,W as $,Y as j,E as D}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as P}from"./index-4718d422.js";import{g as L,s as S}from"./personal-d4a3249e.js";import{_ as T}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./index.vue_vue_type_style_index_0_lang-cc99af21.js";/* empty css */import"./attachment-bc20fd95.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./sys-0f76aff3.js";const W={class:"main-container w-full pt-[64px] bg-white"},X={class:"flex justify-between items-center h-[32px] mb-4"},Y={class:"text-[20px]"},q={class:"flex justify-center mt-[50px]"},z=V({__name:"edit_personal",setup(A){const b=B(),t=N({head_img:"",real_name:"",username:""}),d=f(),o=f(!0);(()=>{o.value=!0,L().then(n=>{o.value=!1;const e=n.data;t.head_img=e.head_img,t.real_name=e.real_name,t.username=e.username}).catch(()=>{o.value=!1})})();const g=n=>{o.value||!n||n.validate(e=>{if(e)o.value=!0,S(t).then(u=>{o.value=!1}).catch(()=>{o.value=!1});else return!1})},h=()=>{b.push("/user/center")};return(n,e)=>{const u=P,_=R,x=$,y=j,c=D,w=U,I=k;return E((C(),F("div",W,[i("div",X,[i("span",Y,p(r(s)("editPersonal")),1)]),a(w,{class:"box-card !border-none",shadow:"never"},{default:l(()=>[a(y,{model:t,"label-width":"90px",ref_key:"formRef",ref:d,class:"page-form"},{default:l(()=>[a(_,{label:r(s)("headImg")},{default:l(()=>[a(u,{modelValue:t.head_img,"onUpdate:modelValue":e[0]||(e[0]=m=>t.head_img=m),limit:1},null,8,["modelValue"])]),_:1},8,["label"]),a(_,{label:r(s)("userName")},{default:l(()=>[i("span",null,p(t.username),1)]),_:1},8,["label"]),a(_,{label:r(s)("realName")},{default:l(()=>[a(x,{modelValue:t.real_name,"onUpdate:modelValue":e[1]||(e[1]=m=>t.real_name=m),placeholder:r(s)("realNamePlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"]),i("div",q,[a(c,{type:"primary",onClick:e[2]||(e[2]=m=>g(d.value))},{default:l(()=>[v(p(r(s)("save")),1)]),_:1}),a(c,{type:"primary",onClick:e[3]||(e[3]=m=>h())},{default:l(()=>[v(p(r(s)("cancel")),1)]),_:1})])]),_:1})])),[[I,o.value]])}}});const Ve=T(z,[["__scopeId","data-v-d379b6db"]]);export{Ve as default}; diff --git a/niucloud/public/admin/assets/el-alert-5d45f733.css b/niucloud/public/admin/assets/el-alert-5d45f733.css new file mode 100644 index 0000000..07e2f09 --- /dev/null +++ b/niucloud/public/admin/assets/el-alert-5d45f733.css @@ -0,0 +1 @@ +.el-alert{--el-alert-padding:8px 16px;--el-alert-border-radius-base:var(--el-border-radius-base);--el-alert-title-font-size:13px;--el-alert-description-font-size:12px;--el-alert-close-font-size:12px;--el-alert-close-customed-font-size:13px;--el-alert-icon-size:16px;--el-alert-icon-large-size:28px;width:100%;padding:var(--el-alert-padding);margin:0;box-sizing:border-box;border-radius:var(--el-alert-border-radius-base);position:relative;background-color:var(--el-color-white);overflow:hidden;opacity:1;display:flex;align-items:center;transition:opacity var(--el-transition-duration-fast)}.el-alert.is-light .el-alert__close-btn{color:var(--el-text-color-placeholder)}.el-alert.is-dark .el-alert__close-btn,.el-alert.is-dark .el-alert__description{color:var(--el-color-white)}.el-alert.is-center{justify-content:center}.el-alert--success{--el-alert-bg-color:var(--el-color-success-light-9)}.el-alert--success.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-success)}.el-alert--success.is-light .el-alert__description{color:var(--el-color-success)}.el-alert--success.is-dark{background-color:var(--el-color-success);color:var(--el-color-white)}.el-alert--info{--el-alert-bg-color:var(--el-color-info-light-9)}.el-alert--info.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-info)}.el-alert--info.is-light .el-alert__description{color:var(--el-color-info)}.el-alert--info.is-dark{background-color:var(--el-color-info);color:var(--el-color-white)}.el-alert--warning{--el-alert-bg-color:var(--el-color-warning-light-9)}.el-alert--warning.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-warning)}.el-alert--warning.is-light .el-alert__description{color:var(--el-color-warning)}.el-alert--warning.is-dark{background-color:var(--el-color-warning);color:var(--el-color-white)}.el-alert--error{--el-alert-bg-color:var(--el-color-error-light-9)}.el-alert--error.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-error)}.el-alert--error.is-light .el-alert__description{color:var(--el-color-error)}.el-alert--error.is-dark{background-color:var(--el-color-error);color:var(--el-color-white)}.el-alert__content{display:table-cell;padding:0 8px}.el-alert .el-alert__icon{font-size:var(--el-alert-icon-size);width:var(--el-alert-icon-size)}.el-alert .el-alert__icon.is-big{font-size:var(--el-alert-icon-large-size);width:var(--el-alert-icon-large-size)}.el-alert__title{font-size:var(--el-alert-title-font-size);line-height:18px;vertical-align:text-top}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:var(--el-alert-description-font-size);margin:5px 0 0}.el-alert .el-alert__close-btn{font-size:var(--el-alert-close-font-size);opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert .el-alert__close-btn.is-customed{font-style:normal;font-size:var(--el-alert-close-customed-font-size);top:9px}.el-alert-fade-enter-from,.el-alert-fade-leave-active{opacity:0} diff --git a/niucloud/public/admin/assets/el-avatar-55e4ee6e.css b/niucloud/public/admin/assets/el-avatar-55e4ee6e.css new file mode 100644 index 0000000..8cedf95 --- /dev/null +++ b/niucloud/public/admin/assets/el-avatar-55e4ee6e.css @@ -0,0 +1 @@ +.el-avatar{--el-avatar-text-color:var(--el-color-white);--el-avatar-bg-color:var(--el-text-color-disabled);--el-avatar-text-size:14px;--el-avatar-icon-size:18px;--el-avatar-border-radius:var(--el-border-radius-base);--el-avatar-size-large:56px;--el-avatar-size-small:24px;--el-avatar-size:40px;display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;text-align:center;overflow:hidden;color:var(--el-avatar-text-color);background:var(--el-avatar-bg-color);width:var(--el-avatar-size);height:var(--el-avatar-size);font-size:var(--el-avatar-text-size)}.el-avatar>img{display:block;height:100%}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:var(--el-avatar-border-radius)}.el-avatar--icon{font-size:var(--el-avatar-icon-size)}.el-avatar--small{--el-avatar-size:24px}.el-avatar--large{--el-avatar-size:56px} diff --git a/niucloud/public/admin/assets/el-button-c10d780e.css b/niucloud/public/admin/assets/el-button-c10d780e.css new file mode 100644 index 0000000..52d9dd8 --- /dev/null +++ b/niucloud/public/admin/assets/el-button-c10d780e.css @@ -0,0 +1 @@ +.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:rgba(255, 255, 255, .5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-color-info);--el-button-active-color:var(--el-text-color-primary);display:inline-flex;justify-content:center;align-items:center;line-height:1;height:32px;white-space:nowrap;cursor:pointer;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;outline:0;transition:.1s;font-weight:var(--el-button-font-weight);-webkit-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);padding:8px 15px;font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base)}.el-button:focus,.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:0}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:0}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button>span{display:inline-flex;align-items:center}.el-button+.el-button{margin-left:12px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:0}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{position:relative;pointer-events:none}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:var(--el-mask-color-extra-light)}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-circle{border-radius:50%;padding:8px}.el-button.is-text{color:var(--el-button-text-color);border:0 solid transparent;background-color:transparent}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important}.el-button.is-text:not(.is-disabled):focus,.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:focus,.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{border-color:transparent;color:var(--el-button-text-color);background:0 0;padding:2px;height:auto}.el-button.is-link:focus,.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important;border-color:transparent!important}.el-button.is-link:not(.is-disabled):focus,.el-button.is-link:not(.is-disabled):hover{border-color:transparent;background-color:transparent}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);border-color:transparent;background-color:transparent}.el-button--text{border-color:transparent;background:0 0;color:var(--el-color-primary);padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important;border-color:transparent!important}.el-button--text:not(.is-disabled):focus,.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);border-color:transparent;background-color:transparent}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);border-color:transparent;background-color:transparent}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-link,.el-button--primary.is-plain,.el-button--primary.is-text{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:active,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:hover{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-link,.el-button--success.is-plain,.el-button--success.is-text{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:active,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:active,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:hover{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-link,.el-button--warning.is-plain,.el-button--warning.is-text{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:active,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:hover{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-link,.el-button--danger.is-plain,.el-button--danger.is-text{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:active,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:hover{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-link,.el-button--info.is-plain,.el-button--info.is-text{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:active,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:active,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:hover{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size);padding:12px 19px;font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size);padding:5px 11px;font-size:12px;border-radius:calc(var(--el-border-radius-base) - 1px)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px} diff --git a/niucloud/public/admin/assets/el-card-fc429ee1.css b/niucloud/public/admin/assets/el-card-fc429ee1.css new file mode 100644 index 0000000..ea9e78f --- /dev/null +++ b/niucloud/public/admin/assets/el-card-fc429ee1.css @@ -0,0 +1 @@ +.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);border-radius:var(--el-card-border-radius);border:1px solid var(--el-card-border-color);background-color:var(--el-card-bg-color);overflow:hidden;color:var(--el-text-color-primary);transition:var(--el-transition-duration)}.el-card.is-always-shadow{box-shadow:var(--el-box-shadow-light)}.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{box-shadow:var(--el-box-shadow-light)}.el-card__header{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box}.el-card__body{padding:var(--el-card-padding)} diff --git a/niucloud/public/admin/assets/el-checkbox-e3bd3d96.css b/niucloud/public/admin/assets/el-checkbox-e3bd3d96.css new file mode 100644 index 0000000..63b53b7 --- /dev/null +++ b/niucloud/public/admin/assets/el-checkbox-e3bd3d96.css @@ -0,0 +1 @@ +.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;-webkit-user-select:none;user-select:none;margin-right:30px;height:32px}.el-checkbox.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter);cursor:not-allowed}.el-checkbox.is-bordered.el-checkbox--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{padding:0 11px 0 7px;border-radius:calc(var(--el-border-radius-base) - 1px)}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color)}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";position:absolute;display:block;background-color:var(--el-checkbox-checked-icon-color);height:2px;transform:scale(.5);left:0;right:0;top:5px}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{display:inline-block;position:relative;border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";border:1px solid var(--el-checkbox-checked-icon-color);border-left:0;border-top:0;height:7px;left:4px;position:absolute;top:1px;transform:rotate(45deg) scaleY(0);width:3px;transition:transform .15s ease-in 50ms;transform-origin:center}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.el-checkbox__label{display:inline-block;padding-left:8px;line-height:1;font-size:var(--el-checkbox-font-size)}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0} diff --git a/niucloud/public/admin/assets/el-checkbox-group-987ef89c.css b/niucloud/public/admin/assets/el-checkbox-group-987ef89c.css new file mode 100644 index 0000000..b2a1822 --- /dev/null +++ b/niucloud/public/admin/assets/el-checkbox-group-987ef89c.css @@ -0,0 +1 @@ +.el-checkbox-group{font-size:0;line-height:0} diff --git a/niucloud/public/admin/assets/el-col-6b49831e.css b/niucloud/public/admin/assets/el-col-6b49831e.css new file mode 100644 index 0000000..9365d18 --- /dev/null +++ b/niucloud/public/admin/assets/el-col-6b49831e.css @@ -0,0 +1 @@ +.el-row{display:flex;flex-wrap:wrap;position:relative;box-sizing:border-box}.el-row.is-justify-center{justify-content:center}.el-row.is-justify-end{justify-content:flex-end}.el-row.is-justify-space-between{justify-content:space-between}.el-row.is-justify-space-around{justify-content:space-around}.el-row.is-justify-space-evenly{justify-content:space-evenly}.el-row.is-align-middle{align-items:center}.el-row.is-align-bottom{align-items:flex-end}[class*=el-col-]{box-sizing:border-box}[class*=el-col-].is-guttered{display:block;min-height:1px}.el-col-0,.el-col-0.is-guttered{display:none}.el-col-0{max-width:0%;flex:0 0 0%}.el-col-offset-0{margin-left:0}.el-col-pull-0{position:relative;right:0}.el-col-push-0{position:relative;left:0}.el-col-1{max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-offset-1{margin-left:4.1666666667%}.el-col-pull-1{position:relative;right:4.1666666667%}.el-col-push-1{position:relative;left:4.1666666667%}.el-col-2{max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-offset-2{margin-left:8.3333333333%}.el-col-pull-2{position:relative;right:8.3333333333%}.el-col-push-2{position:relative;left:8.3333333333%}.el-col-3{max-width:12.5%;flex:0 0 12.5%}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{position:relative;right:12.5%}.el-col-push-3{position:relative;left:12.5%}.el-col-4{max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-offset-4{margin-left:16.6666666667%}.el-col-pull-4{position:relative;right:16.6666666667%}.el-col-push-4{position:relative;left:16.6666666667%}.el-col-5{max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-offset-5{margin-left:20.8333333333%}.el-col-pull-5{position:relative;right:20.8333333333%}.el-col-push-5{position:relative;left:20.8333333333%}.el-col-6{max-width:25%;flex:0 0 25%}.el-col-offset-6{margin-left:25%}.el-col-pull-6{position:relative;right:25%}.el-col-push-6{position:relative;left:25%}.el-col-7{max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-offset-7{margin-left:29.1666666667%}.el-col-pull-7{position:relative;right:29.1666666667%}.el-col-push-7{position:relative;left:29.1666666667%}.el-col-8{max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-offset-8{margin-left:33.3333333333%}.el-col-pull-8{position:relative;right:33.3333333333%}.el-col-push-8{position:relative;left:33.3333333333%}.el-col-9{max-width:37.5%;flex:0 0 37.5%}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{position:relative;right:37.5%}.el-col-push-9{position:relative;left:37.5%}.el-col-10{max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-offset-10{margin-left:41.6666666667%}.el-col-pull-10{position:relative;right:41.6666666667%}.el-col-push-10{position:relative;left:41.6666666667%}.el-col-11{max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-offset-11{margin-left:45.8333333333%}.el-col-pull-11{position:relative;right:45.8333333333%}.el-col-push-11{position:relative;left:45.8333333333%}.el-col-12{max-width:50%;flex:0 0 50%}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{position:relative;left:50%}.el-col-13{max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-offset-13{margin-left:54.1666666667%}.el-col-pull-13{position:relative;right:54.1666666667%}.el-col-push-13{position:relative;left:54.1666666667%}.el-col-14{max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-offset-14{margin-left:58.3333333333%}.el-col-pull-14{position:relative;right:58.3333333333%}.el-col-push-14{position:relative;left:58.3333333333%}.el-col-15{max-width:62.5%;flex:0 0 62.5%}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{position:relative;right:62.5%}.el-col-push-15{position:relative;left:62.5%}.el-col-16{max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-offset-16{margin-left:66.6666666667%}.el-col-pull-16{position:relative;right:66.6666666667%}.el-col-push-16{position:relative;left:66.6666666667%}.el-col-17{max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-offset-17{margin-left:70.8333333333%}.el-col-pull-17{position:relative;right:70.8333333333%}.el-col-push-17{position:relative;left:70.8333333333%}.el-col-18{max-width:75%;flex:0 0 75%}.el-col-offset-18{margin-left:75%}.el-col-pull-18{position:relative;right:75%}.el-col-push-18{position:relative;left:75%}.el-col-19{max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-offset-19{margin-left:79.1666666667%}.el-col-pull-19{position:relative;right:79.1666666667%}.el-col-push-19{position:relative;left:79.1666666667%}.el-col-20{max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-offset-20{margin-left:83.3333333333%}.el-col-pull-20{position:relative;right:83.3333333333%}.el-col-push-20{position:relative;left:83.3333333333%}.el-col-21{max-width:87.5%;flex:0 0 87.5%}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{position:relative;right:87.5%}.el-col-push-21{position:relative;left:87.5%}.el-col-22{max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-offset-22{margin-left:91.6666666667%}.el-col-pull-22{position:relative;right:91.6666666667%}.el-col-push-22{position:relative;left:91.6666666667%}.el-col-23{max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-offset-23{margin-left:95.8333333333%}.el-col-pull-23{position:relative;right:95.8333333333%}.el-col-push-23{position:relative;left:95.8333333333%}.el-col-24{max-width:100%;flex:0 0 100%}.el-col-offset-24{margin-left:100%}.el-col-pull-24{position:relative;right:100%}.el-col-push-24{position:relative;left:100%}@media only screen and (max-width:768px){.el-col-xs-0,.el-col-xs-0.is-guttered{display:none}.el-col-xs-0{max-width:0%;flex:0 0 0%}.el-col-xs-offset-0{margin-left:0}.el-col-xs-pull-0{position:relative;right:0}.el-col-xs-push-0{position:relative;left:0}.el-col-xs-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-xs-offset-1{margin-left:4.1666666667%}.el-col-xs-pull-1{position:relative;right:4.1666666667%}.el-col-xs-push-1{position:relative;left:4.1666666667%}.el-col-xs-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-xs-offset-2{margin-left:8.3333333333%}.el-col-xs-pull-2{position:relative;right:8.3333333333%}.el-col-xs-push-2{position:relative;left:8.3333333333%}.el-col-xs-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-xs-offset-4{margin-left:16.6666666667%}.el-col-xs-pull-4{position:relative;right:16.6666666667%}.el-col-xs-push-4{position:relative;left:16.6666666667%}.el-col-xs-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-xs-offset-5{margin-left:20.8333333333%}.el-col-xs-pull-5{position:relative;right:20.8333333333%}.el-col-xs-push-5{position:relative;left:20.8333333333%}.el-col-xs-6{display:block;max-width:25%;flex:0 0 25%}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-xs-offset-7{margin-left:29.1666666667%}.el-col-xs-pull-7{position:relative;right:29.1666666667%}.el-col-xs-push-7{position:relative;left:29.1666666667%}.el-col-xs-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-xs-offset-8{margin-left:33.3333333333%}.el-col-xs-pull-8{position:relative;right:33.3333333333%}.el-col-xs-push-8{position:relative;left:33.3333333333%}.el-col-xs-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-xs-offset-10{margin-left:41.6666666667%}.el-col-xs-pull-10{position:relative;right:41.6666666667%}.el-col-xs-push-10{position:relative;left:41.6666666667%}.el-col-xs-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-xs-offset-11{margin-left:45.8333333333%}.el-col-xs-pull-11{position:relative;right:45.8333333333%}.el-col-xs-push-11{position:relative;left:45.8333333333%}.el-col-xs-12{display:block;max-width:50%;flex:0 0 50%}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-xs-offset-13{margin-left:54.1666666667%}.el-col-xs-pull-13{position:relative;right:54.1666666667%}.el-col-xs-push-13{position:relative;left:54.1666666667%}.el-col-xs-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-xs-offset-14{margin-left:58.3333333333%}.el-col-xs-pull-14{position:relative;right:58.3333333333%}.el-col-xs-push-14{position:relative;left:58.3333333333%}.el-col-xs-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-xs-offset-16{margin-left:66.6666666667%}.el-col-xs-pull-16{position:relative;right:66.6666666667%}.el-col-xs-push-16{position:relative;left:66.6666666667%}.el-col-xs-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-xs-offset-17{margin-left:70.8333333333%}.el-col-xs-pull-17{position:relative;right:70.8333333333%}.el-col-xs-push-17{position:relative;left:70.8333333333%}.el-col-xs-18{display:block;max-width:75%;flex:0 0 75%}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-xs-offset-19{margin-left:79.1666666667%}.el-col-xs-pull-19{position:relative;right:79.1666666667%}.el-col-xs-push-19{position:relative;left:79.1666666667%}.el-col-xs-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-xs-offset-20{margin-left:83.3333333333%}.el-col-xs-pull-20{position:relative;right:83.3333333333%}.el-col-xs-push-20{position:relative;left:83.3333333333%}.el-col-xs-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-xs-offset-22{margin-left:91.6666666667%}.el-col-xs-pull-22{position:relative;right:91.6666666667%}.el-col-xs-push-22{position:relative;left:91.6666666667%}.el-col-xs-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-xs-offset-23{margin-left:95.8333333333%}.el-col-xs-pull-23{position:relative;right:95.8333333333%}.el-col-xs-push-23{position:relative;left:95.8333333333%}.el-col-xs-24{display:block;max-width:100%;flex:0 0 100%}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0,.el-col-sm-0.is-guttered{display:none}.el-col-sm-0{max-width:0%;flex:0 0 0%}.el-col-sm-offset-0{margin-left:0}.el-col-sm-pull-0{position:relative;right:0}.el-col-sm-push-0{position:relative;left:0}.el-col-sm-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-sm-offset-1{margin-left:4.1666666667%}.el-col-sm-pull-1{position:relative;right:4.1666666667%}.el-col-sm-push-1{position:relative;left:4.1666666667%}.el-col-sm-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-sm-offset-2{margin-left:8.3333333333%}.el-col-sm-pull-2{position:relative;right:8.3333333333%}.el-col-sm-push-2{position:relative;left:8.3333333333%}.el-col-sm-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-sm-offset-4{margin-left:16.6666666667%}.el-col-sm-pull-4{position:relative;right:16.6666666667%}.el-col-sm-push-4{position:relative;left:16.6666666667%}.el-col-sm-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-sm-offset-5{margin-left:20.8333333333%}.el-col-sm-pull-5{position:relative;right:20.8333333333%}.el-col-sm-push-5{position:relative;left:20.8333333333%}.el-col-sm-6{display:block;max-width:25%;flex:0 0 25%}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-sm-offset-7{margin-left:29.1666666667%}.el-col-sm-pull-7{position:relative;right:29.1666666667%}.el-col-sm-push-7{position:relative;left:29.1666666667%}.el-col-sm-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-sm-offset-8{margin-left:33.3333333333%}.el-col-sm-pull-8{position:relative;right:33.3333333333%}.el-col-sm-push-8{position:relative;left:33.3333333333%}.el-col-sm-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-sm-offset-10{margin-left:41.6666666667%}.el-col-sm-pull-10{position:relative;right:41.6666666667%}.el-col-sm-push-10{position:relative;left:41.6666666667%}.el-col-sm-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-sm-offset-11{margin-left:45.8333333333%}.el-col-sm-pull-11{position:relative;right:45.8333333333%}.el-col-sm-push-11{position:relative;left:45.8333333333%}.el-col-sm-12{display:block;max-width:50%;flex:0 0 50%}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-sm-offset-13{margin-left:54.1666666667%}.el-col-sm-pull-13{position:relative;right:54.1666666667%}.el-col-sm-push-13{position:relative;left:54.1666666667%}.el-col-sm-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-sm-offset-14{margin-left:58.3333333333%}.el-col-sm-pull-14{position:relative;right:58.3333333333%}.el-col-sm-push-14{position:relative;left:58.3333333333%}.el-col-sm-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-sm-offset-16{margin-left:66.6666666667%}.el-col-sm-pull-16{position:relative;right:66.6666666667%}.el-col-sm-push-16{position:relative;left:66.6666666667%}.el-col-sm-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-sm-offset-17{margin-left:70.8333333333%}.el-col-sm-pull-17{position:relative;right:70.8333333333%}.el-col-sm-push-17{position:relative;left:70.8333333333%}.el-col-sm-18{display:block;max-width:75%;flex:0 0 75%}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-sm-offset-19{margin-left:79.1666666667%}.el-col-sm-pull-19{position:relative;right:79.1666666667%}.el-col-sm-push-19{position:relative;left:79.1666666667%}.el-col-sm-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-sm-offset-20{margin-left:83.3333333333%}.el-col-sm-pull-20{position:relative;right:83.3333333333%}.el-col-sm-push-20{position:relative;left:83.3333333333%}.el-col-sm-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-sm-offset-22{margin-left:91.6666666667%}.el-col-sm-pull-22{position:relative;right:91.6666666667%}.el-col-sm-push-22{position:relative;left:91.6666666667%}.el-col-sm-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-sm-offset-23{margin-left:95.8333333333%}.el-col-sm-pull-23{position:relative;right:95.8333333333%}.el-col-sm-push-23{position:relative;left:95.8333333333%}.el-col-sm-24{display:block;max-width:100%;flex:0 0 100%}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0,.el-col-md-0.is-guttered{display:none}.el-col-md-0{max-width:0%;flex:0 0 0%}.el-col-md-offset-0{margin-left:0}.el-col-md-pull-0{position:relative;right:0}.el-col-md-push-0{position:relative;left:0}.el-col-md-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-md-offset-1{margin-left:4.1666666667%}.el-col-md-pull-1{position:relative;right:4.1666666667%}.el-col-md-push-1{position:relative;left:4.1666666667%}.el-col-md-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-md-offset-2{margin-left:8.3333333333%}.el-col-md-pull-2{position:relative;right:8.3333333333%}.el-col-md-push-2{position:relative;left:8.3333333333%}.el-col-md-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-md-offset-4{margin-left:16.6666666667%}.el-col-md-pull-4{position:relative;right:16.6666666667%}.el-col-md-push-4{position:relative;left:16.6666666667%}.el-col-md-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-md-offset-5{margin-left:20.8333333333%}.el-col-md-pull-5{position:relative;right:20.8333333333%}.el-col-md-push-5{position:relative;left:20.8333333333%}.el-col-md-6{display:block;max-width:25%;flex:0 0 25%}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-md-offset-7{margin-left:29.1666666667%}.el-col-md-pull-7{position:relative;right:29.1666666667%}.el-col-md-push-7{position:relative;left:29.1666666667%}.el-col-md-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-md-offset-8{margin-left:33.3333333333%}.el-col-md-pull-8{position:relative;right:33.3333333333%}.el-col-md-push-8{position:relative;left:33.3333333333%}.el-col-md-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-md-offset-10{margin-left:41.6666666667%}.el-col-md-pull-10{position:relative;right:41.6666666667%}.el-col-md-push-10{position:relative;left:41.6666666667%}.el-col-md-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-md-offset-11{margin-left:45.8333333333%}.el-col-md-pull-11{position:relative;right:45.8333333333%}.el-col-md-push-11{position:relative;left:45.8333333333%}.el-col-md-12{display:block;max-width:50%;flex:0 0 50%}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-md-offset-13{margin-left:54.1666666667%}.el-col-md-pull-13{position:relative;right:54.1666666667%}.el-col-md-push-13{position:relative;left:54.1666666667%}.el-col-md-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-md-offset-14{margin-left:58.3333333333%}.el-col-md-pull-14{position:relative;right:58.3333333333%}.el-col-md-push-14{position:relative;left:58.3333333333%}.el-col-md-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-md-offset-16{margin-left:66.6666666667%}.el-col-md-pull-16{position:relative;right:66.6666666667%}.el-col-md-push-16{position:relative;left:66.6666666667%}.el-col-md-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-md-offset-17{margin-left:70.8333333333%}.el-col-md-pull-17{position:relative;right:70.8333333333%}.el-col-md-push-17{position:relative;left:70.8333333333%}.el-col-md-18{display:block;max-width:75%;flex:0 0 75%}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-md-offset-19{margin-left:79.1666666667%}.el-col-md-pull-19{position:relative;right:79.1666666667%}.el-col-md-push-19{position:relative;left:79.1666666667%}.el-col-md-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-md-offset-20{margin-left:83.3333333333%}.el-col-md-pull-20{position:relative;right:83.3333333333%}.el-col-md-push-20{position:relative;left:83.3333333333%}.el-col-md-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-md-offset-22{margin-left:91.6666666667%}.el-col-md-pull-22{position:relative;right:91.6666666667%}.el-col-md-push-22{position:relative;left:91.6666666667%}.el-col-md-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-md-offset-23{margin-left:95.8333333333%}.el-col-md-pull-23{position:relative;right:95.8333333333%}.el-col-md-push-23{position:relative;left:95.8333333333%}.el-col-md-24{display:block;max-width:100%;flex:0 0 100%}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0,.el-col-lg-0.is-guttered{display:none}.el-col-lg-0{max-width:0%;flex:0 0 0%}.el-col-lg-offset-0{margin-left:0}.el-col-lg-pull-0{position:relative;right:0}.el-col-lg-push-0{position:relative;left:0}.el-col-lg-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-lg-offset-1{margin-left:4.1666666667%}.el-col-lg-pull-1{position:relative;right:4.1666666667%}.el-col-lg-push-1{position:relative;left:4.1666666667%}.el-col-lg-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-lg-offset-2{margin-left:8.3333333333%}.el-col-lg-pull-2{position:relative;right:8.3333333333%}.el-col-lg-push-2{position:relative;left:8.3333333333%}.el-col-lg-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-lg-offset-4{margin-left:16.6666666667%}.el-col-lg-pull-4{position:relative;right:16.6666666667%}.el-col-lg-push-4{position:relative;left:16.6666666667%}.el-col-lg-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-lg-offset-5{margin-left:20.8333333333%}.el-col-lg-pull-5{position:relative;right:20.8333333333%}.el-col-lg-push-5{position:relative;left:20.8333333333%}.el-col-lg-6{display:block;max-width:25%;flex:0 0 25%}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-lg-offset-7{margin-left:29.1666666667%}.el-col-lg-pull-7{position:relative;right:29.1666666667%}.el-col-lg-push-7{position:relative;left:29.1666666667%}.el-col-lg-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-lg-offset-8{margin-left:33.3333333333%}.el-col-lg-pull-8{position:relative;right:33.3333333333%}.el-col-lg-push-8{position:relative;left:33.3333333333%}.el-col-lg-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-lg-offset-10{margin-left:41.6666666667%}.el-col-lg-pull-10{position:relative;right:41.6666666667%}.el-col-lg-push-10{position:relative;left:41.6666666667%}.el-col-lg-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-lg-offset-11{margin-left:45.8333333333%}.el-col-lg-pull-11{position:relative;right:45.8333333333%}.el-col-lg-push-11{position:relative;left:45.8333333333%}.el-col-lg-12{display:block;max-width:50%;flex:0 0 50%}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-lg-offset-13{margin-left:54.1666666667%}.el-col-lg-pull-13{position:relative;right:54.1666666667%}.el-col-lg-push-13{position:relative;left:54.1666666667%}.el-col-lg-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-lg-offset-14{margin-left:58.3333333333%}.el-col-lg-pull-14{position:relative;right:58.3333333333%}.el-col-lg-push-14{position:relative;left:58.3333333333%}.el-col-lg-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-lg-offset-16{margin-left:66.6666666667%}.el-col-lg-pull-16{position:relative;right:66.6666666667%}.el-col-lg-push-16{position:relative;left:66.6666666667%}.el-col-lg-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-lg-offset-17{margin-left:70.8333333333%}.el-col-lg-pull-17{position:relative;right:70.8333333333%}.el-col-lg-push-17{position:relative;left:70.8333333333%}.el-col-lg-18{display:block;max-width:75%;flex:0 0 75%}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-lg-offset-19{margin-left:79.1666666667%}.el-col-lg-pull-19{position:relative;right:79.1666666667%}.el-col-lg-push-19{position:relative;left:79.1666666667%}.el-col-lg-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-lg-offset-20{margin-left:83.3333333333%}.el-col-lg-pull-20{position:relative;right:83.3333333333%}.el-col-lg-push-20{position:relative;left:83.3333333333%}.el-col-lg-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-lg-offset-22{margin-left:91.6666666667%}.el-col-lg-pull-22{position:relative;right:91.6666666667%}.el-col-lg-push-22{position:relative;left:91.6666666667%}.el-col-lg-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-lg-offset-23{margin-left:95.8333333333%}.el-col-lg-pull-23{position:relative;right:95.8333333333%}.el-col-lg-push-23{position:relative;left:95.8333333333%}.el-col-lg-24{display:block;max-width:100%;flex:0 0 100%}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0,.el-col-xl-0.is-guttered{display:none}.el-col-xl-0{max-width:0%;flex:0 0 0%}.el-col-xl-offset-0{margin-left:0}.el-col-xl-pull-0{position:relative;right:0}.el-col-xl-push-0{position:relative;left:0}.el-col-xl-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-xl-offset-1{margin-left:4.1666666667%}.el-col-xl-pull-1{position:relative;right:4.1666666667%}.el-col-xl-push-1{position:relative;left:4.1666666667%}.el-col-xl-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-xl-offset-2{margin-left:8.3333333333%}.el-col-xl-pull-2{position:relative;right:8.3333333333%}.el-col-xl-push-2{position:relative;left:8.3333333333%}.el-col-xl-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-xl-offset-4{margin-left:16.6666666667%}.el-col-xl-pull-4{position:relative;right:16.6666666667%}.el-col-xl-push-4{position:relative;left:16.6666666667%}.el-col-xl-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-xl-offset-5{margin-left:20.8333333333%}.el-col-xl-pull-5{position:relative;right:20.8333333333%}.el-col-xl-push-5{position:relative;left:20.8333333333%}.el-col-xl-6{display:block;max-width:25%;flex:0 0 25%}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-xl-offset-7{margin-left:29.1666666667%}.el-col-xl-pull-7{position:relative;right:29.1666666667%}.el-col-xl-push-7{position:relative;left:29.1666666667%}.el-col-xl-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-xl-offset-8{margin-left:33.3333333333%}.el-col-xl-pull-8{position:relative;right:33.3333333333%}.el-col-xl-push-8{position:relative;left:33.3333333333%}.el-col-xl-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-xl-offset-10{margin-left:41.6666666667%}.el-col-xl-pull-10{position:relative;right:41.6666666667%}.el-col-xl-push-10{position:relative;left:41.6666666667%}.el-col-xl-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-xl-offset-11{margin-left:45.8333333333%}.el-col-xl-pull-11{position:relative;right:45.8333333333%}.el-col-xl-push-11{position:relative;left:45.8333333333%}.el-col-xl-12{display:block;max-width:50%;flex:0 0 50%}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-xl-offset-13{margin-left:54.1666666667%}.el-col-xl-pull-13{position:relative;right:54.1666666667%}.el-col-xl-push-13{position:relative;left:54.1666666667%}.el-col-xl-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-xl-offset-14{margin-left:58.3333333333%}.el-col-xl-pull-14{position:relative;right:58.3333333333%}.el-col-xl-push-14{position:relative;left:58.3333333333%}.el-col-xl-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-xl-offset-16{margin-left:66.6666666667%}.el-col-xl-pull-16{position:relative;right:66.6666666667%}.el-col-xl-push-16{position:relative;left:66.6666666667%}.el-col-xl-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-xl-offset-17{margin-left:70.8333333333%}.el-col-xl-pull-17{position:relative;right:70.8333333333%}.el-col-xl-push-17{position:relative;left:70.8333333333%}.el-col-xl-18{display:block;max-width:75%;flex:0 0 75%}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-xl-offset-19{margin-left:79.1666666667%}.el-col-xl-pull-19{position:relative;right:79.1666666667%}.el-col-xl-push-19{position:relative;left:79.1666666667%}.el-col-xl-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-xl-offset-20{margin-left:83.3333333333%}.el-col-xl-pull-20{position:relative;right:83.3333333333%}.el-col-xl-push-20{position:relative;left:83.3333333333%}.el-col-xl-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-xl-offset-22{margin-left:91.6666666667%}.el-col-xl-pull-22{position:relative;right:91.6666666667%}.el-col-xl-push-22{position:relative;left:91.6666666667%}.el-col-xl-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-xl-offset-23{margin-left:95.8333333333%}.el-col-xl-pull-23{position:relative;right:95.8333333333%}.el-col-xl-push-23{position:relative;left:95.8333333333%}.el-col-xl-24{display:block;max-width:100%;flex:0 0 100%}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}} diff --git a/niucloud/public/admin/assets/el-color-picker-346329a4.css b/niucloud/public/admin/assets/el-color-picker-346329a4.css new file mode 100644 index 0000000..972e4bd --- /dev/null +++ b/niucloud/public/admin/assets/el-color-picker-346329a4.css @@ -0,0 +1 @@ +.el-color-predefine{display:flex;font-size:12px;margin-top:8px;width:280px}.el-color-predefine__colors{display:flex;flex:1;flex-wrap:wrap}.el-color-predefine__color-selector{margin:0 0 8px 8px;width:20px;height:20px;border-radius:4px;cursor:pointer}.el-color-predefine__color-selector:nth-child(10n+1){margin-left:0}.el-color-predefine__color-selector.selected{box-shadow:0 0 3px 2px var(--el-color-primary)}.el-color-predefine__color-selector>div{display:flex;height:100%;border-radius:3px}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{position:relative;box-sizing:border-box;width:280px;height:12px;background-color:red;padding:0 2px;float:right}.el-color-hue-slider__bar{position:relative;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);height:100%}.el-color-hue-slider__thumb{position:absolute;cursor:pointer;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid var(--el-border-color-lighter);box-shadow:0 0 2px #0009;z-index:1}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:linear-gradient(to bottom,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-svpanel{position:relative;width:280px;height:180px}.el-color-svpanel__black,.el-color-svpanel__white{position:absolute;top:0;left:0;right:0;bottom:0}.el-color-svpanel__white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.el-color-svpanel__black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.el-color-svpanel__cursor{position:absolute}.el-color-svpanel__cursor>div{cursor:head;width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-2px,-2px)}.el-color-alpha-slider{position:relative;box-sizing:border-box;width:280px;height:12px;background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-size:12px 12px;background-position:0 0,6px 0,6px -6px,0 6px}.el-color-alpha-slider__bar{position:relative;background:linear-gradient(to right,rgba(255,255,255,0) 0,var(--el-bg-color) 100%);height:100%}.el-color-alpha-slider__thumb{position:absolute;cursor:pointer;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid var(--el-border-color-lighter);box-shadow:0 0 2px #0009;z-index:1}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 100%)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-dropdown{width:300px}.el-color-dropdown__main-wrapper{margin-bottom:6px}.el-color-dropdown__main-wrapper:after{content:"";display:table;clear:both}.el-color-dropdown__btns{margin-top:12px;text-align:right}.el-color-dropdown__value{float:left;line-height:26px;font-size:12px;color:#000;width:160px}.el-color-picker{display:inline-block;position:relative;line-height:normal;outline:0}.el-color-picker:hover:not(.is-disabled) .el-color-picker__trigger{border:1px solid var(--el-border-color-hover)}.el-color-picker:focus-visible:not(.is-disabled) .el-color-picker__trigger{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed}.el-color-picker--large{height:40px}.el-color-picker--large .el-color-picker__trigger{height:40px;width:40px}.el-color-picker--large .el-color-picker__mask{height:38px;width:38px}.el-color-picker--small{height:24px}.el-color-picker--small .el-color-picker__trigger{height:24px;width:24px}.el-color-picker--small .el-color-picker__mask{height:22px;width:22px}.el-color-picker--small .el-color-picker__empty,.el-color-picker--small .el-color-picker__icon{transform:scale(.8)}.el-color-picker__mask{height:30px;width:30px;border-radius:4px;position:absolute;top:1px;left:1px;z-index:1;cursor:not-allowed;background-color:#ffffffb3}.el-color-picker__trigger{display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;height:32px;width:32px;padding:4px;border:1px solid var(--el-border-color);border-radius:4px;font-size:0;position:relative;cursor:pointer}.el-color-picker__color{position:relative;display:block;box-sizing:border-box;border:1px solid var(--el-text-color-secondary);border-radius:var(--el-border-radius-small);width:100%;height:100%;text-align:center}.el-color-picker__color.is-alpha{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-size:12px 12px;background-position:0 0,6px 0,6px -6px,0 6px}.el-color-picker__color-inner{display:inline-flex;justify-content:center;align-items:center;width:100%;height:100%}.el-color-picker .el-color-picker__empty{font-size:12px;color:var(--el-text-color-secondary)}.el-color-picker .el-color-picker__icon{display:inline-flex;justify-content:center;align-items:center;color:#fff;font-size:12px}.el-color-picker__panel{position:absolute;z-index:10;padding:6px;box-sizing:content-box;background-color:#fff;border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light)}.el-color-picker__panel.el-popper{border:1px solid var(--el-border-color-lighter)}.el-color-picker,.el-color-picker__panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker,.dark .el-color-picker__panel{--el-color-picker-alpha-bg-a:#333333} diff --git a/niucloud/public/admin/assets/el-date-picker-3587893a.css b/niucloud/public/admin/assets/el-date-picker-3587893a.css new file mode 100644 index 0000000..7fc430e --- /dev/null +++ b/niucloud/public/admin/assets/el-date-picker-3587893a.css @@ -0,0 +1 @@ +.el-date-table{font-size:12px;-webkit-user-select:none;user-select:none}.el-date-table.is-week-mode .el-date-table__row:hover .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:var(--el-datepicker-text-color)}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child .el-date-table-cell{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child .el-date-table-cell{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table.is-week-mode .el-date-table__row.current .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td{width:32px;height:30px;padding:4px 0;box-sizing:border-box;text-align:center;cursor:pointer;position:relative}.el-date-table td .el-date-table-cell{height:30px;padding:3px 0;box-sizing:border-box}.el-date-table td .el-date-table-cell .el-date-table-cell__text{width:24px;height:24px;display:block;margin:0 auto;line-height:24px;position:absolute;left:50%;transform:translate(-50%);border-radius:50%}.el-date-table td.next-month,.el-date-table td.prev-month{color:var(--el-datepicker-off-text-color)}.el-date-table td.today{position:relative}.el-date-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-date-table td.today.end-date .el-date-table-cell__text,.el-date-table td.today.start-date .el-date-table-cell__text{color:#fff}.el-date-table td.available:hover{color:var(--el-datepicker-hover-text-color)}.el-date-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-date-table td.current:not(.disabled):focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-date-table td.end-date .el-date-table-cell,.el-date-table td.start-date .el-date-table-cell{color:#fff}.el-date-table td.end-date .el-date-table-cell__text,.el-date-table td.start-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color)}.el-date-table td.start-date .el-date-table-cell{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table td.end-date .el-date-table-cell{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td.disabled .el-date-table-cell{background-color:var(--el-fill-color-light);opacity:1;cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-date-table td.selected .el-date-table-cell{margin-left:5px;margin-right:5px;background-color:var(--el-datepicker-inrange-bg-color);border-radius:15px}.el-date-table td.selected .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.selected .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff;border-radius:15px}.el-date-table td.week{font-size:80%;color:var(--el-datepicker-header-text-color)}.el-date-table td:focus{outline:0}.el-date-table th{padding:5px;color:var(--el-datepicker-header-text-color);font-weight:400;border-bottom:solid 1px var(--el-border-color-lighter)}.el-month-table{font-size:12px;margin:-1px;border-collapse:collapse}.el-month-table td{text-align:center;padding:8px 0;cursor:pointer}.el-month-table td div{height:48px;padding:6px 0;box-sizing:border-box}.el-month-table td.today .cell{color:var(--el-color-primary);font-weight:700}.el-month-table td.today.end-date .cell,.el-month-table td.today.start-date .cell{color:#fff}.el-month-table td.disabled .cell{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-month-table td.disabled .cell:hover{color:var(--el-text-color-placeholder)}.el-month-table td .cell{width:60px;height:36px;display:block;line-height:36px;color:var(--el-datepicker-text-color);margin:0 auto;border-radius:18px}.el-month-table td .cell:hover{color:var(--el-datepicker-hover-text-color)}.el-month-table td.in-range div{background-color:var(--el-datepicker-inrange-bg-color)}.el-month-table td.in-range div:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-month-table td.end-date div,.el-month-table td.start-date div{color:#fff}.el-month-table td.end-date .cell,.el-month-table td.start-date .cell{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td.start-date div{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-month-table td.end-date div{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-month-table td.current:not(.disabled) .cell{color:var(--el-datepicker-active-color)}.el-month-table td:focus-visible{outline:0}.el-month-table td:focus-visible .cell{outline:2px solid var(--el-datepicker-active-color)}.el-year-table{font-size:12px;margin:-1px;border-collapse:collapse}.el-year-table .el-icon{color:var(--el-datepicker-icon-color)}.el-year-table td{text-align:center;padding:20px 3px;cursor:pointer}.el-year-table td.today .cell{color:var(--el-color-primary);font-weight:700}.el-year-table td.disabled .cell{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-year-table td.disabled .cell:hover{color:var(--el-text-color-placeholder)}.el-year-table td .cell{width:48px;height:36px;display:block;line-height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto}.el-year-table td .cell:hover{color:var(--el-datepicker-hover-text-color)}.el-year-table td.current:not(.disabled) .cell{color:var(--el-datepicker-active-color)}.el-year-table td:focus-visible{outline:0}.el-year-table td:focus-visible .cell{outline:2px solid var(--el-datepicker-active-color)}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{max-height:192px;overflow:auto;display:inline-block;width:50%;vertical-align:top;position:relative}.el-time-spinner__wrapper.el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__wrapper.is-arrow{box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:default}.el-time-spinner__arrow{font-size:12px;color:var(--el-text-color-secondary);position:absolute;left:0;width:100%;z-index:var(--el-index-normal);text-align:center;height:30px;line-height:30px;cursor:pointer}.el-time-spinner__arrow:hover{color:var(--el-color-primary)}.el-time-spinner__arrow.arrow-up{top:10px}.el-time-spinner__arrow.arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__input.el-input .el-input__inner{padding:0;text-align:center}.el-time-spinner__list{padding:0;margin:0;list-style:none;text-align:center}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";display:block;width:100%;height:80px}.el-time-spinner__item{height:32px;line-height:32px;font-size:12px;color:var(--el-text-color-regular)}.el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:pointer}.el-time-spinner__item.is-active:not(.is-disabled){color:var(--el-text-color-primary);font-weight:700}.el-time-spinner__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center top}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center bottom}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transition:var(--el-transition-md-fade);transform-origin:top left}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-picker__popper{--el-datepicker-border-color:var(--el-disabled-border-color)}.el-picker__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-datepicker-border-color);box-shadow:var(--el-box-shadow-light)}.el-picker__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-datepicker-border-color)}.el-picker__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-date-editor{--el-date-editor-width:220px;--el-date-editor-monthrange-width:300px;--el-date-editor-daterange-width:350px;--el-date-editor-datetimerange-width:400px;--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);position:relative;display:inline-block;text-align:left}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-date-editor.el-input,.el-date-editor.el-input__wrapper{width:var(--el-date-editor-width);height:var(--el-input-height,var(--el-component-size))}.el-date-editor--monthrange{--el-date-editor-width:var(--el-date-editor-monthrange-width)}.el-date-editor--daterange,.el-date-editor--timerange{--el-date-editor-width:var(--el-date-editor-daterange-width)}.el-date-editor--datetimerange{--el-date-editor-width:var(--el-date-editor-datetimerange-width)}.el-date-editor--dates .el-input__wrapper{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .close-icon,.el-date-editor .clear-icon{cursor:pointer}.el-date-editor .clear-icon:hover{color:var(--el-text-color-secondary)}.el-date-editor .el-range__icon{height:inherit;font-size:14px;color:var(--el-text-color-placeholder);float:left}.el-date-editor .el-range__icon svg{vertical-align:middle}.el-date-editor .el-range-input{-webkit-appearance:none;appearance:none;border:none;outline:0;display:inline-block;height:30px;line-height:30px;margin:0;padding:0;width:39%;text-align:center;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);background-color:transparent}.el-date-editor .el-range-input::placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-separator{flex:1;display:inline-flex;justify-content:center;align-items:center;height:100%;padding:0 5px;margin:0;font-size:14px;word-break:keep-all;color:var(--el-text-color-primary)}.el-date-editor .el-range__close-icon{font-size:14px;color:var(--el-text-color-placeholder);height:inherit;width:unset;cursor:pointer}.el-date-editor .el-range__close-icon:hover{color:var(--el-text-color-secondary)}.el-date-editor .el-range__close-icon svg{vertical-align:middle}.el-date-editor .el-range__close-icon--hidden{opacity:0;visibility:hidden}.el-range-editor.el-input__wrapper{display:inline-flex;align-items:center;padding:0 10px}.el-range-editor.is-active,.el-range-editor.is-active:hover{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-range-editor--large{line-height:var(--el-component-size-large)}.el-range-editor--large.el-input__wrapper{height:var(--el-component-size-large)}.el-range-editor--large .el-range-separator{line-height:40px;font-size:14px}.el-range-editor--large .el-range-input{height:38px;line-height:38px;font-size:14px}.el-range-editor--small{line-height:var(--el-component-size-small)}.el-range-editor--small.el-input__wrapper{height:var(--el-component-size-small)}.el-range-editor--small .el-range-separator{line-height:24px;font-size:12px}.el-range-editor--small .el-range-input{height:22px;line-height:22px;font-size:12px}.el-range-editor.is-disabled{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled:focus,.el-range-editor.is-disabled:hover{border-color:var(--el-disabled-border-color)}.el-range-editor.is-disabled input{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled input::placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled .el-range-separator{color:var(--el-disabled-text-color)}.el-picker-panel{color:var(--el-text-color-regular);background:var(--el-bg-color-overlay);border-radius:var(--el-border-radius-base);line-height:30px}.el-picker-panel .el-time-panel{margin:5px 0;border:solid 1px var(--el-datepicker-border-color);background-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-picker-panel__body-wrapper:after,.el-picker-panel__body:after{content:"";display:table;clear:both}.el-picker-panel__content{position:relative;margin:15px}.el-picker-panel__footer{border-top:1px solid var(--el-datepicker-inner-border-color);padding:4px 12px;text-align:right;background-color:var(--el-bg-color-overlay);position:relative;font-size:0}.el-picker-panel__shortcut{display:block;width:100%;border:0;background-color:transparent;line-height:28px;font-size:14px;color:var(--el-datepicker-text-color);padding-left:12px;text-align:left;outline:0;cursor:pointer}.el-picker-panel__shortcut:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__shortcut.active{background-color:#e6f1fe;color:var(--el-datepicker-active-color)}.el-picker-panel__btn{border:1px solid var(--el-fill-color-darker);color:var(--el-text-color-primary);line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-picker-panel__btn[disabled]{color:var(--el-text-color-disabled);cursor:not-allowed}.el-picker-panel__icon-btn{font-size:12px;color:var(--el-datepicker-icon-color);border:0;background:0 0;cursor:pointer;outline:0;margin-top:8px}.el-picker-panel__icon-btn:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn:focus-visible{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn.is-disabled{color:var(--el-text-color-disabled)}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__icon-btn .el-icon{cursor:pointer;font-size:inherit}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{position:absolute;top:0;bottom:0;width:110px;border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;padding-top:6px;background-color:var(--el-bg-color-overlay);overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-date-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-picker__time-header{position:relative;border-bottom:1px solid var(--el-datepicker-inner-border-color);font-size:12px;padding:8px 5px 5px;display:table;width:100%;box-sizing:border-box}.el-date-picker__header{margin:12px;text-align:center}.el-date-picker__header--bordered{margin-bottom:0;padding-bottom:12px;border-bottom:solid 1px var(--el-border-color-lighter)}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{font-size:16px;font-weight:500;padding:0 5px;line-height:22px;text-align:center;cursor:pointer;color:var(--el-text-color-regular)}.el-date-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label:focus-visible{outline:0;color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{padding:10px;text-align:center}.el-date-picker__time-label{float:left;cursor:pointer;line-height:30px;margin-left:10px}.el-date-picker .el-time-panel{position:absolute}.el-date-range-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{position:relative;text-align:center;height:28px}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__content{float:left;width:50%;box-sizing:border-box;margin:0;padding:16px}.el-date-range-picker__content.is-left{border-right:1px solid var(--el-datepicker-inner-border-color)}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{position:relative;border-bottom:1px solid var(--el-datepicker-inner-border-color);font-size:12px;padding:8px 5px 5px;display:table;width:100%;box-sizing:border-box}.el-date-range-picker__time-header>.el-icon-arrow-right{font-size:20px;vertical-align:middle;display:table-cell;color:var(--el-datepicker-icon-color)}.el-date-range-picker__time-picker-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-range-picker__time-picker-wrap .el-picker-panel{position:absolute;top:13px;right:0;z-index:1;background:#fff}.el-date-range-picker__time-picker-wrap .el-time-panel{position:absolute}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{position:relative;text-align:center;padding:10px;z-index:1}.el-time-range-picker__cell{box-sizing:border-box;margin:0;padding:4px 7px 7px;width:50%;display:inline-block}.el-time-range-picker__header{margin-bottom:5px;text-align:center;font-size:14px}.el-time-range-picker__body{border-radius:2px;border:1px solid var(--el-datepicker-border-color)}.el-time-panel{border-radius:2px;position:relative;width:180px;left:0;z-index:var(--el-index-top);-webkit-user-select:none;user-select:none;box-sizing:content-box}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";top:50%;position:absolute;margin-top:-16px;height:32px;z-index:-1;left:0;right:0;box-sizing:border-box;padding-top:6px;text-align:left}.el-time-panel__content:after{left:50%;margin-left:12%;margin-right:12%}.el-time-panel__content:before{padding-left:50%;margin-right:12%;margin-left:12%;border-top:1px solid var(--el-border-color-light);border-bottom:1px solid var(--el-border-color-light)}.el-time-panel__content.has-seconds:after{left:66.6666666667%}.el-time-panel__content.has-seconds:before{padding-left:33.3333333333%}.el-time-panel__footer{border-top:1px solid var(--el-timepicker-inner-border-color,var(--el-border-color-light));padding:4px;height:36px;line-height:25px;text-align:right;box-sizing:border-box}.el-time-panel__btn{border:none;line-height:28px;padding:0 5px;margin:0 5px;cursor:pointer;background-color:transparent;outline:0;font-size:12px;color:var(--el-text-color-primary)}.el-time-panel__btn.confirm{font-weight:800;color:var(--el-timepicker-active-color,var(--el-color-primary))} diff --git a/niucloud/public/admin/assets/el-descriptions-item-662285c0.css b/niucloud/public/admin/assets/el-descriptions-item-662285c0.css new file mode 100644 index 0000000..aeae2d2 --- /dev/null +++ b/niucloud/public/admin/assets/el-descriptions-item-662285c0.css @@ -0,0 +1 @@ +.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary)}.el-descriptions__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;text-align:left;font-weight:400;line-height:23px;font-size:14px}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{font-weight:700;color:var(--el-text-color-regular);background:var(--el-descriptions-item-bordered-label-background)}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px} diff --git a/niucloud/public/admin/assets/el-drawer-1f157885.css b/niucloud/public/admin/assets/el-drawer-1f157885.css new file mode 100644 index 0000000..3c63bfc --- /dev/null +++ b/niucloud/public/admin/assets/el-drawer-1f157885.css @@ -0,0 +1 @@ +.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color, var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary, 20px);position:absolute;box-sizing:border-box;background-color:var(--el-drawer-bg-color);display:flex;flex-direction:column;box-shadow:var(--el-box-shadow-dark);overflow:hidden;transition:all var(--el-transition-duration)}.el-drawer .rtl,.el-drawer .ltr,.el-drawer .ttb,.el-drawer .btt{transform:translate(0)}.el-drawer__sr-focus:focus{outline:0!important}.el-drawer__header{align-items:center;color:#72767b;display:flex;margin-bottom:32px;padding:var(--el-drawer-padding-primary);padding-bottom:0}.el-drawer__header>:first-child{flex:1}.el-drawer__title{margin:0;flex:1;line-height:inherit;font-size:1rem}.el-drawer__footer{padding:var(--el-drawer-padding-primary);padding-top:10px;text-align:right}.el-drawer__close-btn{display:inline-flex;border:none;cursor:pointer;font-size:var(--el-font-size-extra-large);color:inherit;background-color:transparent;outline:0}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{flex:1;padding:var(--el-drawer-padding-primary);overflow:auto}.el-drawer__body>*{box-sizing:border-box}.el-drawer.ltr,.el-drawer.rtl{height:100%;top:0;bottom:0}.el-drawer.btt,.el-drawer.ttb{width:100%;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.rtl{right:0}.el-drawer.ttb{top:0}.el-drawer.btt{bottom:0}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-active,.el-drawer-fade-enter-from,.el-drawer-fade-enter-to,.el-drawer-fade-leave-active,.el-drawer-fade-leave-from,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{opacity:0}.el-drawer-fade-enter-to,.el-drawer-fade-leave-from{opacity:1}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translate(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translate(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)} diff --git a/niucloud/public/admin/assets/el-dropdown-item-fcde02f4.css b/niucloud/public/admin/assets/el-dropdown-item-fcde02f4.css new file mode 100644 index 0000000..a460f97 --- /dev/null +++ b/niucloud/public/admin/assets/el-dropdown-item-fcde02f4.css @@ -0,0 +1 @@ +.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{display:table;content:""}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button:active,.el-button-group>.el-button:focus,.el-button-group>.el-button:hover{z-index:1}.el-button-group>.el-button.is-active{z-index:1}.el-button-group>.el-dropdown>.el-button{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-dropdown{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10;display:inline-flex;position:relative;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);line-height:1;vertical-align:top}.el-dropdown.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-dropdown__popper{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10}.el-dropdown__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-dropdown-menu-box-shadow)}.el-dropdown__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-dropdown__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-dropdown__popper .el-dropdown-menu{border:none}.el-dropdown__popper .el-dropdown__popper-selfdefine{outline:0}.el-dropdown__popper .el-scrollbar__bar{z-index:calc(var(--el-dropdown-menu-index) + 1)}.el-dropdown__popper .el-dropdown__list{list-style:none;padding:0;margin:0;box-sizing:border-box}.el-dropdown .el-dropdown__caret-button{padding-left:0;padding-right:0;display:inline-flex;justify-content:center;align-items:center;width:32px;border-left:none}.el-dropdown .el-dropdown__caret-button>span{display:inline-flex}.el-dropdown .el-dropdown__caret-button:before{content:"";position:absolute;display:block;width:1px;top:-1px;bottom:-1px;left:0;background:var(--el-overlay-color-lighter)}.el-dropdown .el-dropdown__caret-button.el-button:before{background:var(--el-border-color);opacity:.5}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{font-size:inherit;padding-left:0}.el-dropdown .el-dropdown-selfdefine{outline:0}.el-dropdown--large .el-dropdown__caret-button{width:40px}.el-dropdown--small .el-dropdown__caret-button{width:24px}.el-dropdown-menu{position:relative;top:0;left:0;z-index:var(--el-dropdown-menu-index);padding:5px 0;margin:0;background-color:var(--el-bg-color-overlay);border:none;border-radius:var(--el-border-radius-base);box-shadow:none;list-style:none}.el-dropdown-menu__item{display:flex;align-items:center;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:0}.el-dropdown-menu__item:not(.is-disabled):focus{background-color:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{margin:6px 0;border-top:1px solid var(--el-border-color-lighter)}.el-dropdown-menu__item.is-disabled{cursor:not-allowed;color:var(--el-text-color-disabled)}.el-dropdown-menu--large{padding:7px 0}.el-dropdown-menu--large .el-dropdown-menu__item{padding:7px 20px;line-height:22px;font-size:14px}.el-dropdown-menu--large .el-dropdown-menu__item--divided{margin:8px 0}.el-dropdown-menu--small{padding:3px 0}.el-dropdown-menu--small .el-dropdown-menu__item{padding:2px 12px;line-height:20px;font-size:12px}.el-dropdown-menu--small .el-dropdown-menu__item--divided{margin:4px 0} diff --git a/niucloud/public/admin/assets/el-empty-80d6f4dc.css b/niucloud/public/admin/assets/el-empty-80d6f4dc.css new file mode 100644 index 0000000..e154d16 --- /dev/null +++ b/niucloud/public/admin/assets/el-empty-80d6f4dc.css @@ -0,0 +1 @@ +.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;box-sizing:border-box;padding:var(--el-empty-padding)}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{-webkit-user-select:none;user-select:none;width:100%;height:100%;vertical-align:top;object-fit:contain}.el-empty__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:100%;height:100%;vertical-align:top}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-secondary)}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)} diff --git a/niucloud/public/admin/assets/el-form-d10bb01f.css b/niucloud/public/admin/assets/el-form-d10bb01f.css new file mode 100644 index 0000000..b1eb56e --- /dev/null +++ b/niucloud/public/admin/assets/el-form-d10bb01f.css @@ -0,0 +1 @@ +.el-form{--el-form-label-font-size:var(--el-font-size-base)}.el-form--label-left .el-form-item__label{justify-content:flex-start}.el-form--label-top .el-form-item{display:block}.el-form--label-top .el-form-item .el-form-item__label{display:block;height:auto;text-align:left;margin-bottom:8px;line-height:22px}.el-form--inline .el-form-item{display:inline-flex;vertical-align:middle;margin-right:32px}.el-form--inline.el-form--label-top{display:flex;flex-wrap:wrap}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-form--large.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:12px;line-height:22px}.el-form--default.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:8px;line-height:22px}.el-form--small.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:4px;line-height:20px}.el-form-item{display:flex;--font-size:14px;margin-bottom:18px}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item__label-wrap{display:flex}.el-form-item__label{display:inline-flex;justify-content:flex-end;align-items:flex-start;flex:0 0 auto;font-size:var(--el-form-label-font-size);color:var(--el-text-color-regular);height:32px;line-height:32px;padding:0 12px 0 0;box-sizing:border-box}.el-form-item__content{display:flex;flex-wrap:wrap;align-items:center;flex:1;line-height:32px;position:relative;font-size:var(--font-size);min-width:0}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);font-size:12px;line-height:1;padding-top:2px;position:absolute;top:100%;left:0}.el-form-item__error--inline{position:relative;top:auto;left:auto;display:inline-block;margin-left:10px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before{content:"*";color:var(--el-color-danger);margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after{content:"*";color:var(--el-color-danger);margin-left:4px}.el-form-item.is-error .el-select-v2__wrapper,.el-form-item.is-error .el-select-v2__wrapper:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-input-group__prepend .el-input__wrapper{box-shadow:0 0 0 1px transparent inset}.el-form-item.is-error .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex} diff --git a/niucloud/public/admin/assets/el-form-item-4ed993c7.js b/niucloud/public/admin/assets/el-form-item-4ed993c7.js new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/niucloud/public/admin/assets/el-form-item-4ed993c7.js @@ -0,0 +1 @@ + diff --git a/niucloud/public/admin/assets/el-icon-593dfdc2.css b/niucloud/public/admin/assets/el-icon-593dfdc2.css new file mode 100644 index 0000000..e684b5f --- /dev/null +++ b/niucloud/public/admin/assets/el-icon-593dfdc2.css @@ -0,0 +1 @@ +.el-icon-loading{animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;height:1em;width:1em;line-height:1em;display:inline-flex;justify-content:center;align-items:center;position:relative;fill:currentColor;color:var(--color);font-size:inherit}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em} diff --git a/niucloud/public/admin/assets/el-image-5875057d.css b/niucloud/public/admin/assets/el-image-5875057d.css new file mode 100644 index 0000000..400c118 --- /dev/null +++ b/niucloud/public/admin/assets/el-image-5875057d.css @@ -0,0 +1 @@ +.el-image__error,.el-image__inner,.el-image__placeholder,.el-image__wrapper{width:100%;height:100%}.el-image{position:relative;display:inline-block;overflow:hidden}.el-image__inner{vertical-align:top;opacity:1}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{position:absolute;top:0;left:0}.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{display:flex;justify-content:center;align-items:center;font-size:14px;background:var(--el-fill-color-light);color:var(--el-text-color-placeholder);vertical-align:middle}.el-image__preview{cursor:pointer} diff --git a/niucloud/public/admin/assets/el-image-viewer-fff43739.css b/niucloud/public/admin/assets/el-image-viewer-fff43739.css new file mode 100644 index 0000000..e6bc41d --- /dev/null +++ b/niucloud/public/admin/assets/el-image-viewer-fff43739.css @@ -0,0 +1 @@ +.el-image-viewer__wrapper{position:fixed;top:0;right:0;bottom:0;left:0}.el-image-viewer__btn{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;border-radius:50%;opacity:.8;cursor:pointer;box-sizing:border-box;-webkit-user-select:none;user-select:none}.el-image-viewer__btn .el-icon{font-size:inherit;cursor:pointer}.el-image-viewer__close{top:40px;right:40px;width:40px;height:40px;font-size:40px}.el-image-viewer__canvas{position:static;width:100%;height:100%;display:flex;justify-content:center;align-items:center;-webkit-user-select:none;user-select:none}.el-image-viewer__actions{left:50%;bottom:30px;transform:translate(-50%);width:282px;height:44px;padding:0 23px;background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px}.el-image-viewer__actions__inner{width:100%;height:100%;text-align:justify;cursor:default;font-size:23px;color:#fff;display:flex;align-items:center;justify-content:space-around}.el-image-viewer__prev{top:50%;transform:translateY(-50%);left:40px;width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__next{top:50%;transform:translateY(-50%);right:40px;text-indent:2px;width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__close{width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__mask{position:absolute;width:100%;height:100%;top:0;left:0;opacity:.5;background:#000}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes viewer-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}} diff --git a/niucloud/public/admin/assets/el-input-c9789fc1.css b/niucloud/public/admin/assets/el-input-c9789fc1.css new file mode 100644 index 0000000..4bb7770 --- /dev/null +++ b/niucloud/public/admin/assets/el-input-c9789fc1.css @@ -0,0 +1 @@ +.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);position:relative;display:inline-block;width:100%;vertical-align:bottom;font-size:var(--el-font-size-base)}.el-textarea__inner{position:relative;display:block;resize:vertical;padding:5px 11px;line-height:1.5;box-sizing:border-box;width:100%;font-size:inherit;font-family:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);border:none}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{outline:0;box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);position:absolute;font-size:12px;line-height:14px;bottom:5px;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{border-color:var(--el-color-danger)}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-height:var(--el-component-size);position:relative;font-size:var(--el-font-size-base);display:inline-flex;width:100%;line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{border-radius:5px;width:6px;background:var(--el-text-color-disabled)}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);font-size:14px;cursor:pointer}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;display:inline-flex;align-items:center;color:var(--el-color-info);font-size:12px}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;display:inline-block;padding-left:8px}.el-input__wrapper{display:inline-flex;flex-grow:1;align-items:center;justify-content:center;padding:1px 11px;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 32px) - 2px);width:100%;flex-grow:1;-webkit-appearance:none;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);padding:0;outline:0;border:none;background:0 0;box-sizing:border-box}.el-input__inner:focus{outline:0}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__prefix{display:inline-flex;white-space:nowrap;flex-shrink:0;flex-wrap:nowrap;height:100%;text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none}.el-input__prefix-inner{pointer-events:all;display:inline-flex;align-items:center;justify-content:center}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{display:inline-flex;white-space:nowrap;flex-shrink:0;flex-wrap:nowrap;height:100%;text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none}.el-input__suffix-inner{pointer-events:all;display:inline-flex;align-items:center;justify-content:center}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;display:flex;justify-content:center;align-items:center;transition:all var(--el-transition-duration);margin-left:8px}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color,) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 24px) - 2px)}.el-input-group{display:inline-flex;width:100%;align-items:stretch}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:100%;border-radius:var(--el-input-border-radius);padding:0 20px;white-space:nowrap}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:0}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:0 -20px}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-input__wrapper,.el-input-group__append div.el-select:hover .el-input__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-input__wrapper,.el-input-group__prepend div.el-select:hover .el-input__wrapper{border-color:transparent;background-color:transparent;color:inherit}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group__append{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper{box-shadow:1px 0 0 0 var(--el-input-focus-border-color) inset,1px 0 0 0 var(--el-input-focus-border-color),0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important;z-index:2}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper:focus{outline:0;z-index:2;box-shadow:1px 0 0 0 var(--el-input-focus-border-color) inset,1px 0 0 0 var(--el-input-focus-border-color),0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__wrapper{z-index:1;box-shadow:1px 0 0 0 var(--el-input-hover-border-color) inset,1px 0 0 0 var(--el-input-hover-border-color),0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__wrapper{z-index:2;box-shadow:-1px 0 0 0 var(--el-input-focus-border-color),-1px 0 0 0 var(--el-input-focus-border-color) inset,0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important}.el-input-group--append .el-input-group__append .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select:hover .el-input__wrapper{z-index:1;box-shadow:-1px 0 0 0 var(--el-input-hover-border-color),-1px 0 0 0 var(--el-input-hover-border-color) inset,0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important} diff --git a/niucloud/public/admin/assets/el-input-number-74c955e5.css b/niucloud/public/admin/assets/el-input-number-74c955e5.css new file mode 100644 index 0000000..b362d2c --- /dev/null +++ b/niucloud/public/admin/assets/el-input-number-74c955e5.css @@ -0,0 +1 @@ +.el-input-number{position:relative;display:inline-flex;width:150px;line-height:30px}.el-input-number .el-input__wrapper{padding-left:42px;padding-right:42px}.el-input-number .el-input__inner{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;line-height:1}.el-input-number .el-input__inner::-webkit-inner-spin-button,.el-input-number .el-input__inner::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.el-input-number__decrease,.el-input-number__increase{display:flex;justify-content:center;align-items:center;height:auto;position:absolute;z-index:1;top:1px;bottom:1px;width:32px;background:var(--el-fill-color-light);color:var(--el-text-color-regular);cursor:pointer;font-size:13px;-webkit-user-select:none;user-select:none}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:var(--el-color-primary)}.el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input_wrapper,.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input_wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-input-number__decrease.is-disabled,.el-input-number__increase.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-input-number__increase{right:1px;border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0;border-left:var(--el-border)}.el-input-number__decrease{left:1px;border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);border-right:var(--el-border)}.el-input-number.is-disabled .el-input-number__decrease,.el-input-number.is-disabled .el-input-number__increase{border-color:var(--el-disabled-border-color);color:var(--el-disabled-border-color)}.el-input-number.is-disabled .el-input-number__decrease:hover,.el-input-number.is-disabled .el-input-number__increase:hover{color:var(--el-disabled-border-color);cursor:not-allowed}.el-input-number--large{width:180px;line-height:38px}.el-input-number--large .el-input-number__decrease,.el-input-number--large .el-input-number__increase{width:40px;font-size:14px}.el-input-number--large .el-input__wrapper{padding-left:47px;padding-right:47px}.el-input-number--small{width:120px;line-height:22px}.el-input-number--small .el-input-number__decrease,.el-input-number--small .el-input-number__increase{width:24px;font-size:12px}.el-input-number--small .el-input__wrapper{padding-left:31px;padding-right:31px}.el-input-number--small .el-input-number__decrease [class*=el-icon],.el-input-number--small .el-input-number__increase [class*=el-icon]{transform:scale(.9)}.el-input-number.is-without-controls .el-input__wrapper{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__wrapper{padding-left:15px;padding-right:42px}.el-input-number.is-controls-right .el-input-number__decrease,.el-input-number.is-controls-right .el-input-number__increase{--el-input-number-controls-height:15px;height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon],.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon]{transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{bottom:auto;left:auto;border-radius:0 var(--el-border-radius-base) 0 0;border-bottom:var(--el-border)}.el-input-number.is-controls-right .el-input-number__decrease{right:1px;top:auto;left:auto;border-right:none;border-left:var(--el-border);border-radius:0 0 var(--el-border-radius-base) 0}.el-input-number.is-controls-right[class*=large] [class*=decrease],.el-input-number.is-controls-right[class*=large] [class*=increase]{--el-input-number-controls-height:19px}.el-input-number.is-controls-right[class*=small] [class*=decrease],.el-input-number.is-controls-right[class*=small] [class*=increase]{--el-input-number-controls-height:11px} diff --git a/niucloud/public/admin/assets/el-link-1a8c6e48.css b/niucloud/public/admin/assets/el-link-1a8c6e48.css new file mode 100644 index 0000000..8994a75 --- /dev/null +++ b/niucloud/public/admin/assets/el-link-1a8c6e48.css @@ -0,0 +1 @@ +.el-link{--el-link-font-size:var(--el-font-size-base);--el-link-font-weight:var(--el-font-weight-primary);--el-link-text-color:var(--el-text-color-regular);--el-link-hover-text-color:var(--el-color-primary);--el-link-disabled-text-color:var(--el-text-color-placeholder);display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:0;cursor:pointer;padding:0;font-size:var(--el-link-font-size);font-weight:var(--el-link-font-weight);color:var(--el-link-text-color)}.el-link:hover{color:var(--el-link-hover-text-color)}.el-link.is-underline:hover:after{content:"";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:1px solid var(--el-link-hover-text-color)}.el-link.is-disabled{color:var(--el-link-disabled-text-color);cursor:not-allowed}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link.el-link--default:after{border-color:var(--el-link-hover-text-color)}.el-link__inner{display:inline-flex;justify-content:center;align-items:center}.el-link.el-link--primary{--el-link-text-color:var(--el-color-primary);--el-link-hover-text-color:var(--el-color-primary-light-3);--el-link-disabled-text-color:var(--el-color-primary-light-5)}.el-link.el-link--primary:after{border-color:var(--el-link-text-color)}.el-link.el-link--primary.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--success{--el-link-text-color:var(--el-color-success);--el-link-hover-text-color:var(--el-color-success-light-3);--el-link-disabled-text-color:var(--el-color-success-light-5)}.el-link.el-link--success:after{border-color:var(--el-link-text-color)}.el-link.el-link--success.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--warning{--el-link-text-color:var(--el-color-warning);--el-link-hover-text-color:var(--el-color-warning-light-3);--el-link-disabled-text-color:var(--el-color-warning-light-5)}.el-link.el-link--warning:after{border-color:var(--el-link-text-color)}.el-link.el-link--warning.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--danger{--el-link-text-color:var(--el-color-danger);--el-link-hover-text-color:var(--el-color-danger-light-3);--el-link-disabled-text-color:var(--el-color-danger-light-5)}.el-link.el-link--danger:after{border-color:var(--el-link-text-color)}.el-link.el-link--danger.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--error{--el-link-text-color:var(--el-color-error);--el-link-hover-text-color:var(--el-color-error-light-3);--el-link-disabled-text-color:var(--el-color-error-light-5)}.el-link.el-link--error:after{border-color:var(--el-link-text-color)}.el-link.el-link--error.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--info{--el-link-text-color:var(--el-color-info);--el-link-hover-text-color:var(--el-color-info-light-3);--el-link-disabled-text-color:var(--el-color-info-light-5)}.el-link.el-link--info:after{border-color:var(--el-link-text-color)}.el-link.el-link--info.is-underline:hover:after{border-color:var(--el-link-text-color)} diff --git a/niucloud/public/admin/assets/el-loading-3e34cd81.css b/niucloud/public/admin/assets/el-loading-3e34cd81.css new file mode 100644 index 0000000..6b7928d --- /dev/null +++ b/niucloud/public/admin/assets/el-loading-3e34cd81.css @@ -0,0 +1 @@ +:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{position:absolute;z-index:2000;background-color:var(--el-mask-color);margin:0;top:0;right:0;bottom:0;left:0;transition:opacity var(--el-transition-duration)}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/ 2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{top:50%;margin-top:calc((0px - var(--el-loading-spinner-size))/ 2);width:100%;text-align:center;position:absolute}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);margin:3px 0;font-size:14px}.el-loading-spinner .circular{display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size);animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--el-color-primary);stroke-linecap:round}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}} diff --git a/niucloud/public/admin/assets/el-notification-47ebbbe3.css b/niucloud/public/admin/assets/el-notification-47ebbbe3.css new file mode 100644 index 0000000..0127008 --- /dev/null +++ b/niucloud/public/admin/assets/el-notification-47ebbbe3.css @@ -0,0 +1 @@ +.el-notification{--el-notification-width:330px;--el-notification-padding:14px 26px 14px 13px;--el-notification-radius:8px;--el-notification-shadow:var(--el-box-shadow-light);--el-notification-border-color:var(--el-border-color-lighter);--el-notification-icon-size:24px;--el-notification-close-font-size:var(--el-message-close-size, 16px);--el-notification-group-margin-left:13px;--el-notification-group-margin-right:8px;--el-notification-content-font-size:var(--el-font-size-base);--el-notification-content-color:var(--el-text-color-regular);--el-notification-title-font-size:16px;--el-notification-title-color:var(--el-text-color-primary);--el-notification-close-color:var(--el-text-color-secondary);--el-notification-close-hover-color:var(--el-text-color-regular);display:flex;width:var(--el-notification-width);padding:var(--el-notification-padding);border-radius:var(--el-notification-radius);box-sizing:border-box;border:1px solid var(--el-notification-border-color);position:fixed;background-color:var(--el-bg-color-overlay);box-shadow:var(--el-notification-shadow);transition:opacity var(--el-transition-duration),transform var(--el-transition-duration),left var(--el-transition-duration),right var(--el-transition-duration),top .4s,bottom var(--el-transition-duration);overflow-wrap:anywhere;overflow:hidden;z-index:9999}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:var(--el-notification-group-margin-left);margin-right:var(--el-notification-group-margin-right)}.el-notification__title{font-weight:700;font-size:var(--el-notification-title-font-size);line-height:var(--el-notification-icon-size);color:var(--el-notification-title-color);margin:0}.el-notification__content{font-size:var(--el-notification-content-font-size);line-height:24px;margin:6px 0 0;color:var(--el-notification-content-color);text-align:justify}.el-notification__content p{margin:0}.el-notification .el-notification__icon{height:var(--el-notification-icon-size);width:var(--el-notification-icon-size);font-size:var(--el-notification-icon-size)}.el-notification .el-notification__closeBtn{position:absolute;top:18px;right:15px;cursor:pointer;color:var(--el-notification-close-color);font-size:var(--el-notification-close-font-size)}.el-notification .el-notification__closeBtn:hover{color:var(--el-notification-close-hover-color)}.el-notification .el-notification--success{--el-notification-icon-color:var(--el-color-success);color:var(--el-notification-icon-color)}.el-notification .el-notification--info{--el-notification-icon-color:var(--el-color-info);color:var(--el-notification-icon-color)}.el-notification .el-notification--warning{--el-notification-icon-color:var(--el-color-warning);color:var(--el-notification-icon-color)}.el-notification .el-notification--error{--el-notification-icon-color:var(--el-color-error);color:var(--el-notification-icon-color)}.el-notification-fade-enter-from.right{right:0;transform:translate(100%)}.el-notification-fade-enter-from.left{left:0;transform:translate(-100%)}.el-notification-fade-leave-to{opacity:0} diff --git a/niucloud/public/admin/assets/el-option-a5edd981.css b/niucloud/public/admin/assets/el-option-a5edd981.css new file mode 100644 index 0000000..eed3496 --- /dev/null +++ b/niucloud/public/admin/assets/el-option-a5edd981.css @@ -0,0 +1 @@ +.el-select-dropdown__item{font-size:var(--el-font-size-base);padding:0 32px 0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--el-text-color-regular);height:34px;line-height:34px;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.selected{color:var(--el-color-primary);font-weight:700} diff --git a/niucloud/public/admin/assets/el-overlay-16555a66.css b/niucloud/public/admin/assets/el-overlay-16555a66.css new file mode 100644 index 0000000..19dc2a0 --- /dev/null +++ b/niucloud/public/admin/assets/el-overlay-16555a66.css @@ -0,0 +1 @@ +:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color)}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:20px;--el-dialog-border-radius:var(--el-border-radius-small);position:relative;margin:var(--el-dialog-margin-top,15vh) auto 50px;background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:0!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;margin-bottom:0;height:100%;overflow:auto}.el-dialog__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;margin:0}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;user-select:none}.el-dialog__header{padding:var(--el-dialog-padding-primary);padding-bottom:10px;margin-right:16px}.el-dialog__headerbtn{position:absolute;top:6px;right:0;padding:0;width:54px;height:54px;background:0 0;border:none;outline:0;cursor:pointer;font-size:var(--el-message-close-size,16px)}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{line-height:var(--el-dialog-font-line-height);font-size:var(--el-dialog-title-font-size);color:var(--el-text-color-primary)}.el-dialog__body{padding:calc(var(--el-dialog-padding-primary) + 10px) var(--el-dialog-padding-primary);color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{padding:var(--el-dialog-padding-primary);padding-top:10px;text-align:right;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial;padding:25px calc(var(--el-dialog-padding-primary) + 5px) 30px}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-overlay-dialog{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes dialog-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;height:100%;background-color:var(--el-overlay-color-lighter);overflow:auto}.el-overlay .el-overlay-root{height:0} diff --git a/niucloud/public/admin/assets/el-pagination-e1392652.css b/niucloud/public/admin/assets/el-pagination-e1392652.css new file mode 100644 index 0000000..87d450e --- /dev/null +++ b/niucloud/public/admin/assets/el-pagination-e1392652.css @@ -0,0 +1 @@ +.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-item-gap:16px;white-space:nowrap;color:var(--el-pagination-text-color);font-size:var(--el-pagination-font-size);font-weight:400;display:flex;align-items:center}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield}.el-pagination .el-select .el-input{width:128px}.el-pagination button{display:flex;justify-content:center;align-items:center;font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);padding:0 4px;border:none;border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box}.el-pagination button *{pointer-events:none}.el-pagination button:focus{outline:0}.el-pagination button:hover{color:var(--el-pagination-hover-color)}.el-pagination button.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pagination button.is-active.is-disabled{font-weight:700;color:var(--el-text-color-secondary)}.el-pagination button.is-disabled,.el-pagination button:disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pagination button:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700;width:inherit}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{margin-left:var(--el-pagination-item-gap);font-weight:400;color:var(--el-text-color-regular)}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{display:flex;align-items:center;margin-left:var(--el-pagination-item-gap);font-weight:400;color:var(--el-text-color-regular)}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{text-align:center;box-sizing:border-box}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{flex:1;display:flex;align-items:center;justify-content:flex-end}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{margin:0 4px;background-color:var(--el-pagination-button-bg-color)}.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.is-disabled,.el-pagination.is-background .el-pager li:disabled{color:var(--el-text-color-placeholder);background-color:var(--el-disabled-bg-color)}.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active{color:var(--el-text-color-secondary);background-color:var(--el-fill-color-dark)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li{height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);font-size:var(--el-pagination-font-size-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select .el-input{width:100px}.el-pager{-webkit-user-select:none;user-select:none;list-style:none;font-size:0;padding:0;margin:0;display:flex;align-items:center}.el-pager li{display:flex;justify-content:center;align-items:center;font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);padding:0 4px;border:none;border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:0}.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{font-weight:700;color:var(--el-text-color-secondary)}.el-pager li.is-disabled,.el-pager li:disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px} diff --git a/niucloud/public/admin/assets/el-popover-9f471fc1.css b/niucloud/public/admin/assets/el-popover-9f471fc1.css new file mode 100644 index 0000000..734783a --- /dev/null +++ b/niucloud/public/admin/assets/el-popover-9f471fc1.css @@ -0,0 +1 @@ +.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);min-width:150px;border-radius:var(--el-popover-border-radius);border:1px solid var(--el-popover-border-color);padding:var(--el-popover-padding);z-index:var(--el-index-popper);color:var(--el-text-color-regular);line-height:1.4;text-align:justify;font-size:var(--el-popover-font-size);box-shadow:var(--el-box-shadow-light);word-break:break-all;box-sizing:border-box}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);line-height:1;margin-bottom:12px}.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus,.el-popover.el-popper:focus:active{outline-width:0} diff --git a/niucloud/public/admin/assets/el-popper-eb70a20a.css b/niucloud/public/admin/assets/el-popper-eb70a20a.css new file mode 100644 index 0000000..f0a9fb2 --- /dev/null +++ b/niucloud/public/admin/assets/el-popper-eb70a20a.css @@ -0,0 +1 @@ +.el-popper{--el-popper-border-radius:var(--el-popover-border-radius, 4px);position:absolute;border-radius:var(--el-popper-border-radius);padding:5px 11px;z-index:2000;font-size:12px;line-height:20px;min-width:10px;word-wrap:break-word;visibility:visible}.el-popper.is-dark{color:var(--el-bg-color);background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark .el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-text-color-primary);right:0}.el-popper.is-light{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light)}.el-popper.is-light .el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{position:absolute;width:10px;height:10px;z-index:-1}.el-popper__arrow:before{position:absolute;width:10px;height:10px;z-index:-1;content:" ";transform:rotate(45deg);background:var(--el-text-color-primary);box-sizing:border-box}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent!important;border-left-color:transparent!important}.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent!important;border-right-color:transparent!important}.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent!important;border-bottom-color:transparent!important}.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent!important;border-top-color:transparent!important} diff --git a/niucloud/public/admin/assets/el-progress-e199f971.css b/niucloud/public/admin/assets/el-progress-e199f971.css new file mode 100644 index 0000000..23dbc4e --- /dev/null +++ b/niucloud/public/admin/assets/el-progress-e199f971.css @@ -0,0 +1 @@ +@charset "UTF-8";.el-upload{--el-upload-dragger-padding-horizontal:40px;--el-upload-dragger-padding-vertical:10px;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;outline:0}.el-upload__input{display:none}.el-upload__tip{font-size:12px;color:var(--el-text-color-regular);margin-top:7px}.el-upload iframe{position:absolute;z-index:-1;top:0;left:0;opacity:0}.el-upload--picture-card{--el-upload-picture-card-size:148px;background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);border-radius:6px;box-sizing:border-box;width:var(--el-upload-picture-card-size);height:var(--el-upload-picture-card-size);cursor:pointer;vertical-align:top;display:inline-flex;justify-content:center;align-items:center}.el-upload--picture-card i{font-size:28px;color:var(--el-text-color-secondary)}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{padding:var(--el-upload-dragger-padding-horizontal) var(--el-upload-dragger-padding-vertical);background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);border-radius:6px;box-sizing:border-box;text-align:center;cursor:pointer;position:relative;overflow:hidden}.el-upload-dragger .el-icon--upload{font-size:67px;color:var(--el-text-color-placeholder);margin-bottom:16px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{padding:calc(var(--el-upload-dragger-padding-horizontal) - 1px) calc(var(--el-upload-dragger-padding-vertical) - 1px);background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary)}.el-upload-list{margin:10px 0 0;padding:0;list-style:none;position:relative}.el-upload-list__item{transition:all .5s cubic-bezier(.55,0,.1,1);font-size:14px;color:var(--el-text-color-regular);margin-bottom:5px;position:relative;box-sizing:border-box;border-radius:4px;width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{display:none;position:absolute;right:5px;top:50%;cursor:pointer;opacity:.75;color:var(--el-text-color-regular);transition:opacity var(--el-transition-duration);transform:translateY(-50%)}.el-upload-list__item .el-icon--close:hover{opacity:1;color:var(--el-color-primary)}.el-upload-list__item .el-icon--close-tip{display:none;position:absolute;top:1px;right:5px;font-size:12px;cursor:pointer;opacity:1;color:var(--el-color-primary);font-style:normal}.el-upload-list__item:hover{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{display:inline-flex;justify-content:center;flex-direction:column;width:calc(100% - 30px);margin-left:4px}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-upload-list__item.is-success:active .el-icon--close-tip,.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip{display:none}.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label{display:none;opacity:0}.el-upload-list.is-disabled .el-upload-list__item-status-label,.el-upload-list.is-disabled .el-upload-list__item:hover{display:block}.el-upload-list__item-name{color:var(--el-text-color-regular);display:inline-flex;text-align:center;align-items:center;padding:0 4px;transition:color var(--el-transition-duration);font-size:var(--el-font-size-base)}.el-upload-list__item-name .el-icon{margin-right:6px;color:var(--el-text-color-secondary)}.el-upload-list__item-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-upload-list__item-status-label{position:absolute;right:5px;top:0;line-height:inherit;display:none;height:100%;justify-content:center;align-items:center;transition:opacity var(--el-transition-duration)}.el-upload-list__item-delete{position:absolute;right:10px;top:0;font-size:12px;color:var(--el-text-color-regular);display:none}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{--el-upload-list-picture-card-size:148px;display:inline-flex;flex-wrap:wrap;margin:0}.el-upload-list--picture-card .el-upload-list__item{overflow:hidden;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;width:var(--el-upload-list-picture-card-size);height:var(--el-upload-list-picture-card-size);margin:0 8px 8px 0;padding:0;display:inline-flex}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{width:100%;height:100%;object-fit:contain}.el-upload-list--picture-card .el-upload-list__item-status-label{right:-15px;top:-6px;width:40px;height:24px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default;display:inline-flex;justify-content:center;align-items:center;color:#fff;opacity:0;font-size:20px;background-color:var(--el-overlay-color-lighter);transition:opacity var(--el-transition-duration)}.el-upload-list--picture-card .el-upload-list__item-actions span{display:none;cursor:pointer}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:1rem}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{position:static;font-size:inherit;color:inherit}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{top:50%;left:50%;transform:translate(-50%,-50%);bottom:auto;width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{overflow:hidden;z-index:0;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;margin-top:10px;padding:10px;display:flex;align-items:center}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{display:inline-flex;justify-content:center;align-items:center;width:70px;height:70px;object-fit:contain;position:relative;z-index:1;background-color:var(--el-color-white)}.el-upload-list--picture .el-upload-list__item-status-label{position:absolute;right:-17px;top:-7px;width:46px;height:26px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;z-index:10;cursor:default}.el-upload-cover:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-upload-cover img{display:block;width:100%;height:100%}.el-upload-cover__label{right:-15px;top:-6px;width:40px;height:24px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-cover__label i{font-size:12px;margin-top:11px;transform:rotate(-45deg);color:#fff}.el-upload-cover__progress{display:inline-block;vertical-align:middle;position:static;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{position:absolute;top:0;left:0;width:100%;height:100%}.el-upload-cover__interact{position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:var(--el-overlay-color-light);text-align:center}.el-upload-cover__interact .btn{display:inline-block;color:#fff;font-size:14px;cursor:pointer;vertical-align:middle;transition:var(--el-transition-md-fade);margin-top:60px}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{position:absolute;bottom:0;left:0;background-color:#fff;height:36px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;text-align:left;padding:0 10px;margin:0;line-height:36px;font-size:14px;color:var(--el-text-color-primary)}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-progress{position:relative;line-height:1;display:flex;align-items:center}.el-progress__text{font-size:14px;color:var(--el-text-color-regular);margin-left:5px;min-width:50px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{flex-grow:1;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:var(--el-border-color-lighter);overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:var(--el-color-primary);text-align:right;border-radius:100px;line-height:1;white-space:nowrap;transition:width .6s ease}.el-progress-bar__inner:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-progress-bar__inner--indeterminate{transform:translateZ(0);animation:indeterminate 3s infinite}.el-progress-bar__innerText{display:inline-block;vertical-align:middle;color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}} diff --git a/niucloud/public/admin/assets/el-radio-22df3dfd.css b/niucloud/public/admin/assets/el-radio-22df3dfd.css new file mode 100644 index 0000000..000416c --- /dev/null +++ b/niucloud/public/admin/assets/el-radio-22df3dfd.css @@ -0,0 +1 @@ +@charset "UTF-8";.el-radio-group{display:inline-flex;align-items:center;flex-wrap:wrap;font-size:0}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary);color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;outline:0;font-size:var(--el-font-size-base);-webkit-user-select:none;user-select:none;margin-right:32px;height:32px}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.is-bordered.el-radio--small{padding:0 11px 0 7px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);position:relative;cursor:pointer;display:inline-block;box-sizing:border-box}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{width:4px;height:4px;border-radius:var(--el-radio-input-border-radius);background-color:var(--el-color-white);content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px} diff --git a/niucloud/public/admin/assets/el-scrollbar-3dec2e64.css b/niucloud/public/admin/assets/el-scrollbar-3dec2e64.css new file mode 100644 index 0000000..4914504 --- /dev/null +++ b/niucloud/public/admin/assets/el-scrollbar-3dec2e64.css @@ -0,0 +1 @@ +.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);overflow:hidden;position:relative;height:100%}.el-scrollbar__wrap{overflow:auto;height:100%}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3)}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0} diff --git a/niucloud/public/admin/assets/el-select-5775f10f.css b/niucloud/public/admin/assets/el-select-5775f10f.css new file mode 100644 index 0000000..e6fe836 --- /dev/null +++ b/niucloud/public/admin/assets/el-select-5775f10f.css @@ -0,0 +1 @@ +.el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type):after{content:"";position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:var(--el-border-color-light)}.el-select-group__split-dash{position:absolute;left:20px;right:20px;height:1px;background:var(--el-border-color-light)}.el-select-group__title{padding-left:20px;font-size:12px;color:var(--el-color-info);line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:var(--el-fill-color-light)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected:after{content:"";position:absolute;top:50%;right:20px;border-top:none;border-right:none;background-repeat:no-repeat;background-position:center;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;transform:translateY(-50%);width:12px;height:12px}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.is-disabled:after{background-color:var(--el-text-color-disabled)}.el-select-dropdown .el-select-dropdown__option-item.is-selected:after{content:"";position:absolute;top:50%;right:20px;border-top:none;border-right:none;background-repeat:no-repeat;background-position:center;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;transform:translateY(-50%);width:12px;height:12px}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown .el-select-dropdown__item.is-disabled:hover{background-color:unset}.el-select-dropdown .el-select-dropdown__item.is-disabled.selected{color:var(--el-text-color-disabled)}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:var(--el-text-color-secondary);font-size:var(--el-select-font-size)}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;box-sizing:border-box}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;display:inline-block;position:relative;vertical-align:middle;line-height:32px}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-select .el-select-tags-wrapper.has-prefix{margin-left:6px}.el-select--large{line-height:40px}.el-select--large .el-select-tags-wrapper.has-prefix{margin-left:8px}.el-select--small{line-height:24px}.el-select--small .el-select-tags-wrapper.has-prefix{margin-left:4px}.el-select .el-select__tags>span{display:inline-block}.el-select:hover:not(.el-select--disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-border-color-hover) inset}.el-select .el-select__tags-text{display:inline-block;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-select .el-input__wrapper{cursor:pointer}.el-select .el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select .el-input__inner{cursor:pointer}.el-select .el-input{display:flex}.el-select .el-input .el-select__caret{color:var(--el-select-input-color);font-size:var(--el-select-input-font-size);transition:transform var(--el-transition-duration);transform:rotate(0);cursor:pointer}.el-select .el-input .el-select__caret.is-reverse{transform:rotate(-180deg)}.el-select .el-input .el-select__caret.is-show-close{font-size:var(--el-select-font-size);text-align:center;transform:rotate(0);border-radius:var(--el-border-radius-circle);color:var(--el-select-input-color);transition:var(--el-transition-color)}.el-select .el-input .el-select__caret.is-show-close:hover{color:var(--el-select-close-hover-color)}.el-select .el-input .el-select__caret.el-icon{position:relative;height:inherit;z-index:2}.el-select .el-input.is-disabled .el-input__wrapper{cursor:not-allowed}.el-select .el-input.is-disabled .el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select .el-input.is-disabled .el-input__inner,.el-select .el-input.is-disabled .el-select__caret{cursor:not-allowed}.el-select .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select__input{border:none;outline:0;padding:0;margin-left:15px;color:var(--el-select-multiple-input-color);font-size:var(--el-select-font-size);-webkit-appearance:none;appearance:none;height:28px;background-color:transparent}.el-select__input.is-small{height:14px}.el-select__close{cursor:pointer;position:absolute;top:8px;z-index:var(--el-index-top);right:25px;color:var(--el-select-input-color);line-height:18px;font-size:var(--el-select-input-font-size)}.el-select__close:hover{color:var(--el-select-close-hover-color)}.el-select__tags{position:absolute;line-height:normal;top:50%;transform:translateY(-50%);white-space:normal;z-index:var(--el-index-normal);display:flex;align-items:center;flex-wrap:wrap;cursor:pointer}.el-select__tags .el-tag{box-sizing:border-box;border-color:transparent;margin:2px 6px 2px 0}.el-select__tags .el-tag:last-child{margin-right:0}.el-select__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);right:-7px;top:0;color:#fff}.el-select__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__collapse-tags{white-space:normal;z-index:var(--el-index-normal);display:flex;align-items:center;flex-wrap:wrap;cursor:pointer}.el-select__collapse-tags .el-tag{box-sizing:border-box;border-color:transparent;margin:2px 6px 2px 0}.el-select__collapse-tags .el-tag:last-child{margin-right:0}.el-select__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);right:-7px;top:0;color:#fff}.el-select__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__collapse-tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__collapse-tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__collapse-tag{line-height:inherit;height:inherit;display:flex} diff --git a/niucloud/public/admin/assets/el-slider-9827b981.css b/niucloud/public/admin/assets/el-slider-9827b981.css new file mode 100644 index 0000000..6cdb78b --- /dev/null +++ b/niucloud/public/admin/assets/el-slider-9827b981.css @@ -0,0 +1 @@ +.el-slider{--el-slider-main-bg-color:var(--el-color-primary);--el-slider-runway-bg-color:var(--el-border-color-light);--el-slider-stop-bg-color:var(--el-color-white);--el-slider-disabled-color:var(--el-text-color-placeholder);--el-slider-border-radius:3px;--el-slider-height:6px;--el-slider-button-size:20px;--el-slider-button-wrapper-size:36px;--el-slider-button-wrapper-offset:-15px;width:100%;height:32px;display:flex;align-items:center}.el-slider__runway{flex:1;height:var(--el-slider-height);background-color:var(--el-slider-runway-bg-color);border-radius:var(--el-slider-border-radius);position:relative;cursor:pointer}.el-slider__runway.show-input{margin-right:30px;width:auto}.el-slider__runway.is-disabled{cursor:default}.el-slider__runway.is-disabled .el-slider__bar{background-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button{border-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button-wrapper.hover,.el-slider__runway.is-disabled .el-slider__button-wrapper:hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.dragging{cursor:not-allowed}.el-slider__runway.is-disabled .el-slider__button.dragging,.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button:hover{transform:scale(1)}.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button:hover,.el-slider__runway.is-disabled .el-slider__button.dragging{cursor:not-allowed}.el-slider__input{flex-shrink:0;width:130px}.el-slider__bar{height:var(--el-slider-height);background-color:var(--el-slider-main-bg-color);border-top-left-radius:var(--el-slider-border-radius);border-bottom-left-radius:var(--el-slider-border-radius);position:absolute}.el-slider__button-wrapper{height:var(--el-slider-button-wrapper-size);width:var(--el-slider-button-wrapper-size);position:absolute;z-index:1;top:var(--el-slider-button-wrapper-offset);transform:translate(-50%);background-color:transparent;text-align:center;-webkit-user-select:none;user-select:none;line-height:normal;outline:0}.el-slider__button-wrapper:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-slider__button-wrapper.hover,.el-slider__button-wrapper:hover{cursor:grab}.el-slider__button-wrapper.dragging{cursor:grabbing}.el-slider__button{display:inline-block;width:var(--el-slider-button-size);height:var(--el-slider-button-size);vertical-align:middle;border:solid 2px var(--el-slider-main-bg-color);background-color:var(--el-color-white);border-radius:50%;box-sizing:border-box;transition:var(--el-transition-duration-fast);-webkit-user-select:none;user-select:none}.el-slider__button.dragging,.el-slider__button.hover,.el-slider__button:hover{transform:scale(1.2)}.el-slider__button.hover,.el-slider__button:hover{cursor:grab}.el-slider__button.dragging{cursor:grabbing}.el-slider__stop{position:absolute;height:var(--el-slider-height);width:var(--el-slider-height);border-radius:var(--el-border-radius-circle);background-color:var(--el-slider-stop-bg-color);transform:translate(-50%)}.el-slider__marks{top:0;left:12px;width:18px;height:100%}.el-slider__marks-text{position:absolute;transform:translate(-50%);font-size:14px;color:var(--el-color-info);margin-top:15px;white-space:pre}.el-slider.is-vertical{position:relative;display:inline-flex;width:auto;height:100%;flex:0}.el-slider.is-vertical .el-slider__runway{width:var(--el-slider-height);height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:var(--el-slider-height);height:auto;border-radius:0 0 3px 3px}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:var(--el-slider-button-wrapper-offset);transform:translateY(50%)}.el-slider.is-vertical .el-slider__stop{transform:translateY(50%)}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;transform:translateY(50%)}.el-slider--large{height:40px}.el-slider--small{height:24px} diff --git a/niucloud/public/admin/assets/el-statistic-a64151aa.css b/niucloud/public/admin/assets/el-statistic-a64151aa.css new file mode 100644 index 0000000..842d50a --- /dev/null +++ b/niucloud/public/admin/assets/el-statistic-a64151aa.css @@ -0,0 +1 @@ +.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{font-weight:var(--el-statistic-title-font-weight);font-size:var(--el-statistic-title-font-size);color:var(--el-statistic-title-color);line-height:20px;margin-bottom:4px}.el-statistic__content{font-weight:var(--el-statistic-content-font-weight);font-size:var(--el-statistic-content-font-size);color:var(--el-statistic-content-color)}.el-statistic__value{display:inline-block}.el-statistic__prefix{margin-right:4px;display:inline-block}.el-statistic__suffix{margin-left:4px;display:inline-block} diff --git a/niucloud/public/admin/assets/el-step-39b63541.css b/niucloud/public/admin/assets/el-step-39b63541.css new file mode 100644 index 0000000..59ae6af --- /dev/null +++ b/niucloud/public/admin/assets/el-step-39b63541.css @@ -0,0 +1 @@ +.el-steps{display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:var(--el-fill-color-light)}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;flex-flow:column}.el-step{position:relative;flex-shrink:1}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{flex-basis:auto!important;flex-shrink:0;flex-grow:0}.el-step:last-of-type .el-step__description,.el-step:last-of-type .el-step__main{padding-right:0}.el-step__head{position:relative;width:100%}.el-step__head.is-process{color:var(--el-text-color-primary);border-color:var(--el-text-color-primary)}.el-step__head.is-wait{color:var(--el-text-color-placeholder);border-color:var(--el-text-color-placeholder)}.el-step__head.is-success{color:var(--el-color-success);border-color:var(--el-color-success)}.el-step__head.is-error{color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-step__head.is-finish{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-step__icon{position:relative;z-index:1;display:inline-flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;box-sizing:border-box;background:var(--el-bg-color);transition:.15s ease-out}.el-step__icon.is-text{border-radius:50%;border:2px solid;border-color:inherit}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{display:inline-block;-webkit-user-select:none;user-select:none;text-align:center;font-weight:700;line-height:1;color:inherit}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{transform:translateY(1px)}.el-step__line{position:absolute;border-color:inherit;background-color:var(--el-text-color-placeholder)}.el-step__line-inner{display:block;border-width:1px;border-style:solid;border-color:inherit;transition:.15s ease-out;box-sizing:border-box;width:0;height:0}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{font-weight:700;color:var(--el-text-color-primary)}.el-step__title.is-wait{color:var(--el-text-color-placeholder)}.el-step__title.is-success{color:var(--el-color-success)}.el-step__title.is-error{color:var(--el-color-danger)}.el-step__title.is-finish{color:var(--el-color-primary)}.el-step__description{padding-right:10%;margin-top:-5px;font-size:12px;line-height:20px;font-weight:400}.el-step__description.is-process{color:var(--el-text-color-primary)}.el-step__description.is-wait{color:var(--el-text-color-placeholder)}.el-step__description.is-success{color:var(--el-color-success)}.el-step__description.is-error{color:var(--el-color-danger)}.el-step__description.is-finish{color:var(--el-color-primary)}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:flex}.el-step.is-vertical .el-step__head{flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{padding-left:10px;flex-grow:1}.el-step.is-vertical .el-step__title{line-height:24px;padding-bottom:8px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{display:flex;align-items:center}.el-step.is-simple .el-step__head{width:auto;font-size:0;padding-right:10px}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{transform:scale(.8) translateY(1px)}.el-step.is-simple .el-step__main{position:relative;display:flex;align-items:stretch;flex-grow:1}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{max-width:50%;word-break:break-all}.el-step.is-simple .el-step__arrow{flex-grow:1;display:flex;align-items:center;justify-content:center}.el-step.is-simple .el-step__arrow:after,.el-step.is-simple .el-step__arrow:before{content:"";display:inline-block;position:absolute;height:15px;width:1px;background:var(--el-text-color-placeholder)}.el-step.is-simple .el-step__arrow:before{transform:rotate(-45deg) translateY(-4px);transform-origin:0 0}.el-step.is-simple .el-step__arrow:after{transform:rotate(45deg) translateY(4px);transform-origin:100% 100%}.el-step.is-simple:last-of-type .el-step__arrow{display:none} diff --git a/niucloud/public/admin/assets/el-switch-b454e5d4.css b/niucloud/public/admin/assets/el-switch-b454e5d4.css new file mode 100644 index 0000000..c34f49a --- /dev/null +++ b/niucloud/public/admin/assets/el-switch-b454e5d4.css @@ -0,0 +1 @@ +.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);display:inline-flex;align-items:center;position:relative;font-size:14px;line-height:20px;height:32px;vertical-align:middle}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{transition:var(--el-transition-duration-fast);height:20px;display:inline-block;font-size:14px;font-weight:500;cursor:pointer;vertical-align:middle;color:var(--el-text-color-primary)}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{line-height:1;font-size:14px;display:inline-block}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{position:absolute;width:0;height:0;opacity:0;margin:0}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{display:inline-flex;position:relative;align-items:center;min-width:40px;height:20px;border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));outline:0;border-radius:10px;box-sizing:border-box;background:var(--el-switch-off-color);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration)}.el-switch__core .el-switch__inner{width:100%;transition:all var(--el-transition-duration);height:16px;display:flex;justify-content:center;align-items:center;overflow:hidden;padding:0 4px 0 18px}.el-switch__core .el-switch__inner .is-icon,.el-switch__core .el-switch__inner .is-text{font-size:12px;color:var(--el-color-white);-webkit-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-switch__core .el-switch__action{position:absolute;left:1px;border-radius:var(--el-border-radius-circle);transition:all var(--el-transition-duration);width:16px;height:16px;background-color:var(--el-color-white);display:flex;justify-content:center;align-items:center;color:var(--el-switch-off-color)}.el-switch.is-checked .el-switch__core{border-color:var(--el-switch-border-color,var(--el-switch-on-color));background-color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__action{left:calc(100% - 17px);color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{font-size:14px;line-height:24px;height:40px}.el-switch--large .el-switch__label{height:24px;font-size:14px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{min-width:50px;height:24px;border-radius:12px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{width:20px;height:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{font-size:12px;line-height:16px;height:24px}.el-switch--small .el-switch__label{height:16px;font-size:12px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{min-width:30px;height:16px;border-radius:8px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{width:12px;height:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px} diff --git a/niucloud/public/admin/assets/el-tab-pane-97256874.css b/niucloud/public/admin/assets/el-tab-pane-97256874.css new file mode 100644 index 0000000..e0e00c0 --- /dev/null +++ b/niucloud/public/admin/assets/el-tab-pane-97256874.css @@ -0,0 +1 @@ +.el-tabs{--el-tabs-header-height:40px}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:var(--el-color-primary);z-index:1;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none}.el-tabs__new-tab{display:flex;align-items:center;justify-content:center;float:right;border:1px solid var(--el-border-color);height:20px;width:20px;line-height:20px;margin:10px 0 10px 10px;border-radius:3px;text-align:center;font-size:12px;color:var(--el-text-color-primary);cursor:pointer;transition:all .15s}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:var(--el-border-color-light);z-index:var(--el-index-normal)}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:var(--el-text-color-secondary);width:20px;text-align:center}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1)}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:var(--el-tabs-header-height);box-sizing:border-box;line-height:var(--el-tabs-header-height);display:inline-block;list-style:none;font-size:var(--el-font-size-base);font-weight:500;color:var(--el-text-color-primary);position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{border-radius:50%;text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-left:5px}.el-tabs__item .is-icon-close:before{transform:scale(.9);display:inline-block}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item .is-icon-close svg{margin-top:1px}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height)}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);border-bottom:none;border-radius:4px 4px 0 0;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border:1px solid transparent;margin-top:-1px;color:var(--el-text-color-secondary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after{left:auto;right:0}.el-tabs--left .el-tabs__active-bar.is-left{right:0;left:auto}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-right-color:#fff;border-left:none;border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid var(--el-border-color-light);border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-left-color:#fff;border-right:none;border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid var(--el-border-color-light);border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{position:absolute;left:0;right:0;animation:slideInRight-leave var(--el-transition-duration)}.slideInLeft-enter{animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{position:absolute;left:0;right:0;animation:slideInLeft-leave var(--el-transition-duration)}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}} diff --git a/niucloud/public/admin/assets/el-table-column-345618ba.css b/niucloud/public/admin/assets/el-table-column-345618ba.css new file mode 100644 index 0000000..6adc6d1 --- /dev/null +++ b/niucloud/public/admin/assets/el-table-column-345618ba.css @@ -0,0 +1 @@ +.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0, 0, 0, .15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0, 0, 0, .15);position:relative;overflow:hidden;box-sizing:border-box;height:-moz-fit-content;height:fit-content;width:100%;max-width:100%;background-color:var(--el-table-bg-color);font-size:14px;color:var(--el-table-text-color)}.el-table__inner-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.el-table__inner-wrapper:before{left:0;bottom:0;width:100%;height:1px}.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell,.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell{border-bottom-color:transparent}.el-table__empty-block{position:sticky;left:0;min-height:60px;text-align:center;width:100%;display:flex;justify-content:center;align-items:center}.el-table__empty-text{line-height:60px;width:50%;color:var(--el-text-color-secondary)}.el-table__expand-column .cell{padding:0;text-align:center;-webkit-user-select:none;user-select:none}.el-table__expand-icon{position:relative;cursor:pointer;color:var(--el-text-color-regular);font-size:12px;transition:transform var(--el-transition-duration-fast) ease-in-out;height:20px}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-right:0;border-bottom:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table thead{color:var(--el-table-header-text-color);font-weight:500}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{padding:8px 0;min-width:0;box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;position:relative;text-align:left;z-index:1}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{width:15px;border-right-width:0;border-bottom-width:0;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:break-all;line-height:23px}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:14px}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:12px}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{-webkit-user-select:none;user-select:none;background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{display:inline-block;content:"";width:8px;height:8px;border-radius:50%;background:#ff4d51;margin-right:5px;vertical-align:middle}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table__footer-wrapper{border-top:var(--el-table-border)}.el-table--border .el-table__inner-wrapper:after,.el-table--border:after,.el-table--border:before,.el-table__inner-wrapper:before{content:"";position:absolute;background-color:var(--el-table-border-color);z-index:3}.el-table--border .el-table__inner-wrapper:after{left:0;top:0;width:100%;height:1px}.el-table--border:before{top:-1px;left:0;width:1px;height:100%}.el-table--border:after{top:-1px;right:0;width:1px;height:100%}.el-table--border .el-table__inner-wrapper{border-right:none;border-bottom:none}.el-table--border .el-table__footer-wrapper{position:relative;flex-shrink:0}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right,.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{position:sticky!important;z-index:2;background:var(--el-bg-color)}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{content:"";position:absolute;top:0;width:10px;bottom:-1px;overflow-x:hidden;overflow-y:hidden;box-shadow:none;touch-action:none;pointer-events:none}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px;box-shadow:none}.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch,.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch{position:sticky!important;z-index:2;background:#fff;right:0}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body,.el-table__footer,.el-table__header{table-layout:fixed;border-collapse:separate}.el-table__footer-wrapper,.el-table__header-wrapper{overflow:hidden}.el-table__footer-wrapper tbody td.el-table__cell,.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__body-wrapper .el-table-column--selection>.cell,.el-table__header-wrapper .el-table-column--selection>.cell{display:inline-flex;align-items:center;height:23px}.el-table__body-wrapper .el-table-column--selection .el-checkbox,.el-table__header-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{overflow:hidden;position:relative;flex:1}.el-table__body-wrapper .el-scrollbar__bar{z-index:2}.el-table .caret-wrapper{display:inline-flex;flex-direction:column;align-items:center;height:14px;width:24px;vertical-align:middle;cursor:pointer;overflow:initial;position:relative}.el-table .sort-caret{width:0;height:0;border:solid 5px transparent;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;position:absolute;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__column-resize-proxy{position:absolute;left:200px;top:0;bottom:0;width:0;border-left:var(--el-table-border);z-index:10}.el-table__column-filter-trigger{display:inline-block;cursor:pointer}.el-table__column-filter-trigger i{color:var(--el-color-info);font-size:14px;vertical-align:middle}.el-table__border-left-patch{top:0;left:0;width:1px;height:100%;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table__border-bottom-patch{left:0;height:1px;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table__border-right-patch{top:0;height:100%;width:1px;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;width:12px;line-height:12px;height:12px;text-align:center;margin-right:8px}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);border-radius:2px;background-color:#fff;box-shadow:var(--el-box-shadow-light);box-sizing:border-box}.el-table-filter__list{padding:5px 0;margin:0;list-style:none;min-width:100px}.el-table-filter__list-item{line-height:36px;padding:0 10px;cursor:pointer;font-size:var(--el-font-size-base)}.el-table-filter__list-item:hover{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{background:0 0;border:none;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button:focus{outline:0}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{display:flex;align-items:center;margin-right:5px;margin-bottom:12px;margin-left:5px;height:unset}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0} diff --git a/niucloud/public/admin/assets/el-tag-c7c1203f.css b/niucloud/public/admin/assets/el-tag-c7c1203f.css new file mode 100644 index 0000000..eba258d --- /dev/null +++ b/niucloud/public/admin/assets/el-tag-c7c1203f.css @@ -0,0 +1 @@ +.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);--el-tag-text-color:var(--el-color-primary);background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);display:inline-flex;justify-content:center;align-items:center;height:24px;padding:0 9px;font-size:var(--el-tag-font-size);line-height:1;border-width:1px;border-style:solid;border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color)}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag .el-icon{border-radius:50%;cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size)}.el-tag .el-tag__close{margin-left:6px}.el-tag--dark{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3);--el-tag-text-color:var(--el-color-white)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain{--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary);--el-tag-bg-color:var(--el-fill-color-blank)}.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{padding:0 11px;height:32px;--el-icon-size:16px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{padding:0 7px;height:20px;--el-icon-size:12px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)} diff --git a/niucloud/public/admin/assets/el-tooltip-4ed993c7.js b/niucloud/public/admin/assets/el-tooltip-4ed993c7.js new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/niucloud/public/admin/assets/el-tooltip-4ed993c7.js @@ -0,0 +1 @@ + diff --git a/niucloud/public/admin/assets/el-tree-16f2bc42.css b/niucloud/public/admin/assets/el-tree-16f2bc42.css new file mode 100644 index 0000000..a225251 --- /dev/null +++ b/niucloud/public/admin/assets/el-tree-16f2bc42.css @@ -0,0 +1 @@ +.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center top}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center bottom}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transition:var(--el-transition-md-fade);transform-origin:top left}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-tree{--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);position:relative;cursor:default;background:var(--el-fill-color-blank);color:var(--el-tree-text-color);font-size:var(--el-font-size-base)}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--el-text-color-secondary);font-size:var(--el-font-size-base)}.el-tree__drop-indicator{position:absolute;left:0;right:0;height:1px;background-color:var(--el-color-primary)}.el-tree-node{white-space:nowrap;outline:0}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{display:flex;align-items:center;height:26px;cursor:pointer}.el-tree-node__content>.el-tree-node__expand-icon{padding:6px;box-sizing:content-box}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:var(--el-tree-expand-icon-color);font-size:12px;transform:rotate(0);transition:transform var(--el-transition-duration) ease-in-out}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:transparent;cursor:default}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{margin-right:8px;font-size:var(--el-font-size-base);color:var(--el-tree-expand-icon-color)}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)} diff --git a/niucloud/public/admin/assets/el-tree-select-24f36068.css b/niucloud/public/admin/assets/el-tree-select-24f36068.css new file mode 100644 index 0000000..31205ed --- /dev/null +++ b/niucloud/public/admin/assets/el-tree-select-24f36068.css @@ -0,0 +1 @@ +.el-tree-select{--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder)}.el-tree-select__popper .el-tree-node__expand-icon{margin-left:8px}.el-tree-select__popper .el-tree-node.is-checked>.el-tree-node__content .el-select-dropdown__item.selected:after{content:none}.el-tree-select__popper .el-select-dropdown__item{flex:1;background:0 0!important;padding-left:0;height:20px;line-height:20px} diff --git a/niucloud/public/admin/assets/empty-77b60adb.js b/niucloud/public/admin/assets/empty-77b60adb.js new file mode 100644 index 0000000..9e0e9d2 --- /dev/null +++ b/niucloud/public/admin/assets/empty-77b60adb.js @@ -0,0 +1 @@ +const e=""+new URL("empty-e472b027.png",import.meta.url).href;export{e as _}; diff --git a/niucloud/public/admin/assets/empty-e472b027.png b/niucloud/public/admin/assets/empty-e472b027.png new file mode 100644 index 0000000..c8421c9 Binary files /dev/null and b/niucloud/public/admin/assets/empty-e472b027.png differ diff --git a/niucloud/public/admin/assets/error-da01d378.png b/niucloud/public/admin/assets/error-da01d378.png new file mode 100644 index 0000000..143d6c6 Binary files /dev/null and b/niucloud/public/admin/assets/error-da01d378.png differ diff --git a/niucloud/public/admin/assets/finance.account-d006cec3.js b/niucloud/public/admin/assets/finance.account-d006cec3.js new file mode 100644 index 0000000..b798385 --- /dev/null +++ b/niucloud/public/admin/assets/finance.account-d006cec3.js @@ -0,0 +1 @@ +const t="主键",e="账单详情",o="详情",n="账单类型",a="账单金额",c="请输入账单金额",r="账单编号",s="请输入账单编号",l="账单日期",d="累计收款(元)",f="累计退款(元)",y="累计转账(元)",i="请选择账单类型",u="开始时间",T="结束时间",m="转账单号",N="转账时间",p="转账类型",D="转账金额",P="转账说明",R="单号",h="退款金额",M="退款说明",b="说明",k="全部",x={id:t,accountDetail:e,detail:o,type:n,money:a,moneyPlaceholder:c,tradeNo:r,tradeNoPlaceholder:s,createTime:l,totalPay:d,totalRefund:f,totalTransfer:y,accountType:i,startDate:u,endDate:T,transferNo:m,transferTime:N,transferType:p,transferMoney:D,transferRemark:P,outTradeNo:R,refundMoney:h,failReason:M,body:b,all:k};export{e as accountDetail,i as accountType,k as all,b as body,l as createTime,x as default,o as detail,T as endDate,M as failReason,t as id,a as money,c as moneyPlaceholder,R as outTradeNo,h as refundMoney,u as startDate,d as totalPay,f as totalRefund,y as totalTransfer,r as tradeNo,s as tradeNoPlaceholder,D as transferMoney,m as transferNo,P as transferRemark,N as transferTime,p as transferType,n as type}; diff --git a/niucloud/public/admin/assets/finance.cash_out-43890e91.js b/niucloud/public/admin/assets/finance.cash_out-43890e91.js new file mode 100644 index 0000000..5205436 --- /dev/null +++ b/niucloud/public/admin/assets/finance.cash_out-43890e91.js @@ -0,0 +1 @@ +const e="订单编号",t="订单状态",o="请输入订单编号",s="创建时间",a="充值金额",n="累计提现(元)",r="提现中(元)",c="累计提现",u="提现中",d="订单金额",i="买家",l="订单来源",m="支付方式",h="开始时间",f="结束时间",O="请选择",T="申请时间",p="提现状态",y="实际转账金额",N="提现手续费",b="申请提现金额",A="提现方式",P="会员账户",g="会员信息",D="待审核",M="待转账",w="已转账",F="拒绝",R="转账",B="详情",C="审核失败",I="审核成功",S="拒绝审核",j="拒绝理由",k="请输入拒绝理由",v="是否确认转账",W="会员名称",_="会员头像",x="提现详情",q="转账金额",z="审核时间",E="转账时间",G="请输入会员名称/会员昵称/手机号",H="提现单号",J="请输入提现单号",K={orderNo:e,orderStatus:t,orderNoPlaceholder:o,createTime:s,rechargeMoney:a,totalTransfered:n,totalCashOuting:r,transfered:c,cashOuting:u,orderMoney:d,member:i,orderFromName:l,payTypeName:m,startDate:h,endDate:f,namePlaceholder:O,applyTime:T,cashOutStatus:p,actualTransferAmount:y,cashOutCommission:N,applicationForWithdrawalAmount:b,cashOutMethod:A,cashOutAccountType:P,memberInfo:g,toBeReviewed:D,toBeTransferred:M,transferred:w,turnDown:F,transfer:R,detail:B,auditFailure:C,successfulAudit:I,rejectionAudit:S,reasonsRefusal:j,reasonsRefusalPlaceholder:k,isTransfer:v,nickname:W,headimg:_,cashOutDetail:x,cashOutMoney:q,auditTime:z,transferTime:E,memberInfoPlaceholder:G,cashOutNumber:H,cashOutNumberPlaceholder:J};export{y as actualTransferAmount,b as applicationForWithdrawalAmount,T as applyTime,C as auditFailure,z as auditTime,P as cashOutAccountType,N as cashOutCommission,x as cashOutDetail,A as cashOutMethod,q as cashOutMoney,H as cashOutNumber,J as cashOutNumberPlaceholder,p as cashOutStatus,u as cashOuting,s as createTime,K as default,B as detail,f as endDate,_ as headimg,v as isTransfer,i as member,g as memberInfo,G as memberInfoPlaceholder,O as namePlaceholder,W as nickname,l as orderFromName,d as orderMoney,e as orderNo,o as orderNoPlaceholder,t as orderStatus,m as payTypeName,j as reasonsRefusal,k as reasonsRefusalPlaceholder,a as rechargeMoney,S as rejectionAudit,h as startDate,I as successfulAudit,D as toBeReviewed,M as toBeTransferred,r as totalCashOuting,n as totalTransfered,R as transfer,E as transferTime,c as transfered,w as transferred,F as turnDown}; diff --git a/niucloud/public/admin/assets/finance.offlinepay-3e86913b.js b/niucloud/public/admin/assets/finance.offlinepay-3e86913b.js new file mode 100644 index 0000000..9dfe794 --- /dev/null +++ b/niucloud/public/admin/assets/finance.offlinepay-3e86913b.js @@ -0,0 +1 @@ +const s="支付金额",o="交易流水号",t="支付凭证",e="支付内容",a="通过",n="拒绝",c="拒绝原因",d="确认要通过该支付单据吗?",r="开始时间",u="结束时间",l="请输入交易流水号",i="详情",p="待审核",f="已通过",T="未通过",y="全部",h={money:s,outTradeNo:o,voucher:t,body:e,pass:a,refuse:n,refuseReason:c,passTips:d,startDate:r,endDate:u,outTradeNoPlaceholder:l,detail:i,waitAudit:p,passed:f,notPass:T,all:y};export{y as all,e as body,h as default,i as detail,u as endDate,s as money,T as notPass,o as outTradeNo,l as outTradeNoPlaceholder,a as pass,d as passTips,f as passed,n as refuse,c as refuseReason,r as startDate,t as voucher,p as waitAudit}; diff --git a/niucloud/public/admin/assets/finance.pay_detail-884a76bb.js b/niucloud/public/admin/assets/finance.pay_detail-884a76bb.js new file mode 100644 index 0000000..cc199f6 --- /dev/null +++ b/niucloud/public/admin/assets/finance.pay_detail-884a76bb.js @@ -0,0 +1 @@ +const e="通过",s="拒绝",o="拒绝原因",a="确认要通过该支付单据吗?",t="交易单号",n="交易时间",c="交易金额",i="交易内容",p="支付场景",u="支付状态",r="支付方式",y="支付时间",T="失败时间",f="失败原因",d="支付凭证",l="审核支付凭证",m={pass:e,refuse:s,refuseReason:o,passTips:a,outTradeNo:t,createTime:n,money:c,body:i,channel:p,payStatus:u,payType:r,payTime:y,failTime:T,failReason:f,voucher:d,auditVoucher:l};export{l as auditVoucher,i as body,p as channel,n as createTime,m as default,f as failReason,T as failTime,c as money,t as outTradeNo,e as pass,a as passTips,u as payStatus,y as payTime,r as payType,s as refuse,o as refuseReason,d as voucher}; diff --git a/niucloud/public/admin/assets/finance.pay_refund-37d9acf4.js b/niucloud/public/admin/assets/finance.pay_refund-37d9acf4.js new file mode 100644 index 0000000..1e81213 --- /dev/null +++ b/niucloud/public/admin/assets/finance.pay_refund-37d9acf4.js @@ -0,0 +1 @@ +const e="退款编号",t="退款金额",n="支付类型",a="退款状态",o="申请时间",s="请输入退款编号",c="开始时间",r="结束时间",d={refundNo:e,refundMoney:t,payType:n,status:a,createTime:o,refundNoPlaceholder:s,startDate:c,endDate:r};export{o as createTime,d as default,r as endDate,n as payType,t as refundMoney,e as refundNo,s as refundNoPlaceholder,c as startDate,a as status}; diff --git a/niucloud/public/admin/assets/finance.refund_detail-1aede87e.js b/niucloud/public/admin/assets/finance.refund_detail-1aede87e.js new file mode 100644 index 0000000..59fd5dc --- /dev/null +++ b/niucloud/public/admin/assets/finance.refund_detail-1aede87e.js @@ -0,0 +1 @@ +const e="退款编号",t="退款金额",n="支付类型",a="退款状态",o="申请时间",s="请输入退款编号",r="开始时间",c="结束时间",u="交易流水号",d="退款方式",f="退款状态",y="转账",N="转账方式",T="凭证",p={refundNo:e,refundMoney:t,payType:n,status:a,createTime:o,refundNoPlaceholder:s,startDate:r,endDate:c,outTradeNo:u,refundTypeName:d,statusName:f,transfer:y,transferType:N,voucher:T};export{o as createTime,p as default,c as endDate,u as outTradeNo,n as payType,t as refundMoney,e as refundNo,s as refundNoPlaceholder,d as refundTypeName,r as startDate,a as status,f as statusName,y as transfer,N as transferType,T as voucher}; diff --git a/niucloud/public/admin/assets/form-442166e1.js b/niucloud/public/admin/assets/form-442166e1.js new file mode 100644 index 0000000..5cd4cfa --- /dev/null +++ b/niucloud/public/admin/assets/form-442166e1.js @@ -0,0 +1 @@ +import{d as I,q as N,n as R,s as L,au as O,h as m,c,x as z,u as _,F as S,a as r,R as F,e,I as T,w as o,G as W,B as X,a7 as Y,r as B,i as V,t as D,N as j,W as A,X as H,aw as J,ax as K,aq as M,aC as Q,cI as Z,aE as ee,E as te,Y as le,_ as oe}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as ae}from"./index.vue_vue_type_script_setup_true_lang-114a4ac2.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as ie}from"./index.vue_vue_type_style_index_0_lang-eec94bc0.js";/* empty css */import{_ as ne}from"./attachment-bc20fd95.js";import{_ as se}from"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import{_ as re}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{_ as de}from"./index-4718d422.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./sys-0f76aff3.js";import"./_plugin-vue_export-helper-c27b6911.js";/* empty css */const me={class:"flex flex-wrap"},ue={class:"w-full h-full relative flex items-center overflow-hidden rounded"},pe=["src"],ce={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},_e={class:"w-full h-full flex items-center justify-center flex-col"},fe={class:"w-full h-full relative flex items-center overflow-hidden rounded"},ve=["src"],ge={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},be={class:"w-full h-full flex items-center justify-center flex-col"},xe=I({__name:"index",props:{modelValue:{type:String,default:""},width:{type:String,default:"200px"},height:{type:String,default:"100px"},limit:{type:Number,default:1}},emits:["update:modelValue"],setup(f,{emit:w}){const v=f,l=N({get(){return v.modelValue},set(s){w("update:modelValue",s)}}),i=R({data:[]});L(()=>l.value,()=>{i.data=[...l.value.split(",").filter(s=>s)],t()});const y=N(()=>({width:v.width,height:v.height})),h=s=>{v.limit==1?(i.data.splice(0,1),s&&i.data.push(s.url)):s.forEach(u=>{i.data.length{i.data.splice(s,1),t()},t=()=>{l.value=O(i.data).toString()},d=R({visible:!1,src:""}),n=(s=0)=>{d.visible=!0,d.src=F(i.data[s])};return(s,u)=>{const p=re,k=se,E=ne,C=Y;return m(),c("div",me,[f.limit==1?(m(),c("div",{key:0,class:"rounded cursor-pointer relative bg-page video-wrap mr-[10px]",style:z(_(y))},[i.data.length?(m(),c(S,{key:0},[r("div",ue,[r("video",{src:_(F)(i.data[0]),class:"w-full"},null,8,pe),r("div",ce,[e(p,{name:"iconfont-icon24gf-playCircle",color:"#fff",size:"25px",onClick:u[0]||(u[0]=b=>n())})])]),e(p,{name:"element-CircleCloseFilled",color:"#bbb",size:"18px",onClick:g,class:"absolute z-[2] top-[-9px] right-[-9px]"})],64)):(m(),T(k,{key:1,limit:f.limit,type:"video",onConfirm:h},{default:o(()=>[r("div",_e,[e(p,{name:"iconfont-icon24gf-playCircle",size:"25px",color:"var(--el-text-color-secondary)"})])]),_:1},8,["limit"]))],4)):(m(),c(S,{key:1},[(m(!0),c(S,null,W(i.data,(b,x)=>(m(),c("div",{class:"rounded cursor-pointer relative bg-page video-wrap mr-[10px]",style:z(_(y)),key:x},[r("div",fe,[r("video",{src:_(F)(b),class:"w-full"},null,8,ve),r("div",ge,[e(p,{name:"iconfont-icon24gf-playCircle",color:"#fff",size:"25px",onClick:U=>n(x)},null,8,["onClick"])])]),e(p,{name:"element-CircleCloseFilled",color:"#bbb",size:"18px",onClick:U=>g(x),class:"absolute z-[2] top-[-9px] right-[-9px]"},null,8,["onClick"])],4))),128)),i.data.length[r("div",be,[e(p,{name:"iconfont-icon24gf-playCircle",size:"25px",color:"var(--el-text-color-secondary)"})])]),_:1},8,["limit"])],4)):X("",!0)],64)),e(C,{modelValue:d.visible,"onUpdate:modelValue":u[1]||(u[1]=b=>d.visible=b),width:"50%","align-center":"","destroy-on-close":!0,"custom-class":"video-preview"},{default:o(()=>[e(E,{src:d.src,width:"100%"},null,8,["src"])]),_:1},8,["modelValue"])])}}});const Ve={class:"main-container"},ye=r("div",{class:"form-tip"},"管理员账号登录时使用",-1),we={class:"input-width"},he={class:"input-width"},ke={class:"input-width"},Ce={class:"fixed-footer-wrap"},$e={class:"fixed-footer"},rt=I({__name:"form",setup(f){const w=B(!1),l=R({...{text:"",radio:1,textarea:"",img:"",video:"",file:"",select:"",date:"",editor:"",date_range:"",sort:0}}),i=B(),y=N(()=>({})),h=async g=>{w.value||!g||await g.validate(async t=>{t&&console.log(l)})};return(g,t)=>{const d=A,n=H,s=J,u=K,p=de,k=xe,E=ie,C=M,b=Q,x=Z,U=ae,P=ee,$=te,q=le,G=oe;return m(),c("div",Ve,[e(G,{class:"box-card !border-none",shadow:"never"},{default:o(()=>[e(q,{model:l,"label-width":"90px",ref_key:"formRef",ref:i,rules:_(y),class:"page-form"},{default:o(()=>[e(n,{label:"文本",prop:"text"},{default:o(()=>[e(d,{modelValue:l.text,"onUpdate:modelValue":t[0]||(t[0]=a=>l.text=a),placeholder:"请输入用户名",clearable:"",class:"input-width"},null,8,["modelValue"]),ye]),_:1}),e(n,{label:"单选",prop:"radio"},{default:o(()=>[e(u,{modelValue:l.radio,"onUpdate:modelValue":t[1]||(t[1]=a=>l.radio=a)},{default:o(()=>[e(s,{label:1},{default:o(()=>[V("男")]),_:1}),e(s,{label:0},{default:o(()=>[V("女")]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"图片上传",prop:"img"},{default:o(()=>[e(p,{modelValue:l.img,"onUpdate:modelValue":t[2]||(t[2]=a=>l.img=a),limit:1},null,8,["modelValue"])]),_:1}),e(n,{label:"视频上传",prop:"video"},{default:o(()=>[e(k,{modelValue:l.video,"onUpdate:modelValue":t[3]||(t[3]=a=>l.video=a),limit:1},null,8,["modelValue"])]),_:1}),e(n,{label:"文件上传",prop:"video"},{default:o(()=>[r("div",we,[e(E,{modelValue:l.file,"onUpdate:modelValue":t[4]||(t[4]=a=>l.file=a)},null,8,["modelValue"])])]),_:1}),e(n,{label:"文本域",prop:"textarea"},{default:o(()=>[e(d,{modelValue:l.textarea,"onUpdate:modelValue":t[5]||(t[5]=a=>l.textarea=a),type:"textarea",rows:"5",class:"input-width"},null,8,["modelValue"])]),_:1}),e(n,{label:"下拉选择",prop:"select"},{default:o(()=>[e(b,{modelValue:l.select,"onUpdate:modelValue":t[6]||(t[6]=a=>l.select=a),placeholder:"请选择角色",class:"input-width"},{default:o(()=>[e(C,{label:"管理员",value:"shanghai"}),e(C,{label:"收银员",value:"beijing"})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"日期选择",prop:"date"},{default:o(()=>[r("div",he,[e(x,{modelValue:l.date,"onUpdate:modelValue":t[7]||(t[7]=a=>l.date=a),type:"date",placeholder:"Pick a date"},null,8,["modelValue"])])]),_:1}),e(n,{label:"日期区间",prop:"date_range"},{default:o(()=>[r("div",ke,[e(x,{modelValue:l.date_range,"onUpdate:modelValue":t[8]||(t[8]=a=>l.date_range=a),type:"daterange",placeholder:"Pick a date"},null,8,["modelValue"])])]),_:1}),e(n,{label:"富文本",prop:"editor"},{default:o(()=>[e(U,{modelValue:l.editor,"onUpdate:modelValue":t[9]||(t[9]=a=>l.editor=a)},null,8,["modelValue"])]),_:1}),e(n,{label:"排序",prop:"editor"},{default:o(()=>[e(P,{modelValue:l.sort,"onUpdate:modelValue":t[10]||(t[10]=a=>l.sort=a),min:0},null,8,["modelValue"])]),_:1}),e(n,{label:""},{default:o(()=>[e($,{type:"primary",loading:w.value,onClick:t[11]||(t[11]=a=>h(i.value))},{default:o(()=>[V("保存")]),_:1},8,["loading"]),e($,null,{default:o(()=>[V("返回")]),_:1})]),_:1})]),_:1},8,["model","rules"])]),_:1}),r("div",Ce,[r("div",$e,[e($,{type:"primary"},{default:o(()=>[V(D(_(j)("save")),1)]),_:1}),e($,null,{default:o(()=>[V(D(_(j)("cancel")),1)]),_:1})])])])}}});export{rt as default}; diff --git a/niucloud/public/admin/assets/form-b78229f7.css b/niucloud/public/admin/assets/form-b78229f7.css new file mode 100644 index 0000000..56281ea --- /dev/null +++ b/niucloud/public/admin/assets/form-b78229f7.css @@ -0,0 +1 @@ +.video-preview{background:none!important;box-shadow:none!important}.video-preview .el-dialog__headerbtn .el-dialog__close{border-radius:50%;width:34px;height:34px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff} diff --git a/niucloud/public/admin/assets/group-cb4dffc3.js b/niucloud/public/admin/assets/group-cb4dffc3.js new file mode 100644 index 0000000..2771f52 --- /dev/null +++ b/niucloud/public/admin/assets/group-cb4dffc3.js @@ -0,0 +1 @@ +import{d as D,O as L,f as R,r as j,n as I,h as m,c as f,e as t,w as a,a as g,t as i,u as n,i as p,N as o,y as U,I as h,F as k,G as C,a5 as q,E as M,W as O,X as W,Y as X,_ as Y,af as A,at as H,ah as J,a3 as K,$ as Q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{n as Z,o as ee}from"./site-3951be3a.js";const te={class:"main-container"},ae={class:"flex justify-between items-center"},oe={class:"text-[20px]"},le={class:"mt-[16px] flex justify-end"},ke=D({__name:"group",setup(re){const E=L(),b=R(),N=E.meta.title,y=j(),e=I({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{keywords:""}}),T=s=>{s&&(s.resetFields(),d())},d=(s=1)=>{e.loading=!0,e.page=s,Z({page:e.page,limit:e.limit,...e.searchParam}).then(l=>{e.loading=!1,e.data=l.data.data,e.total=l.data.total}).catch(()=>{e.loading=!1})};d();const z=()=>{b.push("/admin/site/group_edit")},B=s=>{b.push({path:"/admin/site/group_edit",query:{id:s.group_id}})},F=s=>{q.confirm(o("groupDeleteTips"),o("warning"),{confirmButtonText:o("confirm"),cancelButtonText:o("cancel"),type:"warning"}).then(()=>{ee(s).then(()=>{d()}).catch(()=>{})})};return(s,l)=>{const u=M,P=O,v=W,G=X,w=Y,c=A,x=H,S=J,V=K,$=Q;return m(),f("div",te,[t(w,{class:"box-card !border-none",shadow:"never"},{default:a(()=>[g("div",ae,[g("span",oe,i(n(N)),1),t(u,{type:"primary",class:"w-[100px]",onClick:z},{default:a(()=>[p(i(n(o)("addSiteGroup")),1)]),_:1})]),t(w,{class:"box-card !border-none my-[10px] table-search-wrap",shadow:"never"},{default:a(()=>[t(G,{inline:!0,model:e.searchParam,ref_key:"searchFormRef",ref:y},{default:a(()=>[t(v,{label:n(o)("groupName"),prop:"keywords"},{default:a(()=>[t(P,{modelValue:e.searchParam.keywords,"onUpdate:modelValue":l[0]||(l[0]=r=>e.searchParam.keywords=r),placeholder:n(o)("groupNamePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(v,null,{default:a(()=>[t(u,{type:"primary",onClick:l[1]||(l[1]=r=>d())},{default:a(()=>[p(i(n(o)("search")),1)]),_:1}),t(u,{onClick:l[2]||(l[2]=r=>T(y.value))},{default:a(()=>[p(i(n(o)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),g("div",null,[U((m(),h(S,{data:e.data,size:"large"},{empty:a(()=>[g("span",null,i(e.loading?"":n(o)("emptyData")),1)]),default:a(()=>[t(c,{prop:"group_name",label:n(o)("groupName")},null,8,["label"]),t(c,{prop:"group_name",label:n(o)("appName"),"show-overflow-tooltip":!0},{default:a(({row:r})=>[(m(!0),f(k,null,C(r.app_name,_=>(m(),h(x,{class:"mr-1",size:"small"},{default:a(()=>[p(i(_),1)]),_:2},1024))),256))]),_:1},8,["label"]),t(c,{prop:"group_name",label:n(o)("addonName"),"show-overflow-tooltip":!0},{default:a(({row:r})=>[(m(!0),f(k,null,C(r.addon_name,_=>(m(),h(x,{class:"mr-1",size:"small"},{default:a(()=>[p(i(_),1)]),_:2},1024))),256))]),_:1},8,["label"]),t(c,{prop:"create_time",label:n(o)("createTime")},null,8,["label"]),t(c,{prop:"group_roles",label:n(o)("operation"),align:"right",fixed:"right",width:"130"},{default:a(({row:r})=>[t(u,{type:"primary",link:"",onClick:_=>B(r)},{default:a(()=>[p(i(n(o)("edit")),1)]),_:2},1032,["onClick"]),t(u,{type:"primary",link:"",onClick:_=>F(r.group_id)},{default:a(()=>[p(i(n(o)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[$,e.loading]]),g("div",le,[t(V,{"current-page":e.page,"onUpdate:current-page":l[3]||(l[3]=r=>e.page=r),"page-size":e.limit,"onUpdate:page-size":l[4]||(l[4]=r=>e.limit=r),layout:"total, sizes, prev, pager, next, jumper",total:e.total,onSizeChange:l[5]||(l[5]=r=>d()),onCurrentChange:d},null,8,["current-page","page-size","total"])])])]),_:1})])}}});export{ke as default}; diff --git a/niucloud/public/admin/assets/group_edit-8d6f7c50.js b/niucloud/public/admin/assets/group_edit-8d6f7c50.js new file mode 100644 index 0000000..5cdd0c2 --- /dev/null +++ b/niucloud/public/admin/assets/group_edit-8d6f7c50.js @@ -0,0 +1 @@ +import{d as W,r as v,O as X,f as Y,q as H,N as r,a0 as J,y as F,h as n,c as m,a as l,t as u,u as t,e as a,w as s,I as f,F as P,G as R,R as B,i as D,W as K,X as M,V as Q,a1 as Z,ay as ee,cN as le,Y as oe,E as se,_ as te,$ as ae,p as ne,g as de}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{p as re,q as ce,r as ue}from"./site-3951be3a.js";import{g as ie}from"./addon-b90f5c24.js";import{_ as pe}from"./_plugin-vue_export-helper-c27b6911.js";const G=h=>(ne("data-v-e41f1ac8"),h=h(),de(),h),_e={class:"main-container mb-80"},me={class:"detail-head !mb-[10px]"},fe=G(()=>l("span",{class:"iconfont iconxiangzuojiantou !text-xs"},null,-1)),ve={class:"ml-[1px]"},he=G(()=>l("span",{class:"adorn"},"|",-1)),ge={class:"right"},xe={key:0,class:"text-gray-400"},be={class:"w-full"},ye={class:"flex"},we={class:"w-[60px] h-[60px] mr-[10px] rounded-md overflow-hidden"},ke={class:"image-error"},Ve={class:"flex-1 w-0 flex flex-col justify-center"},Ee={class:"font-bold truncate"},Ie=["title"],Le={key:0,class:"text-gray-400"},Ce={class:"w-full"},Ne={class:"flex"},Ae={class:"w-[60px] h-[60px] mr-[10px] rounded-md overflow-hidden"},Se={class:"image-error"},qe={class:"flex-1 w-0 flex flex-col justify-center"},Fe={class:"font-bold truncate"},Pe=["title"],Re={class:"fixed-footer-wrap"},Be={class:"fixed-footer"},De=W({__name:"group_edit",setup(h){const x=v(!0),b=v([]),y=v([]),w=X(),j=Y(),U=w.meta.title,g=v(!1),d=v({group_id:0,group_name:"",group_desc:"",app:[],addon:[]});let k=[];(async()=>{await ie().then(({data:c})=>{const o=[],_=[];Object.keys(c).forEach(i=>{k.push(i);const p=c[i];p.type=="addon"?_.push(p):o.push(p)}),b.value=o,y.value=_}).catch()})(),w.query.id?re(w.query.id).then(({data:c})=>{c.app=c.app.filter(o=>k.includes(o)),c.addon=c.addon.filter(o=>k.includes(o)),d.value=c,x.value=!1}).catch():x.value=!1;const V=()=>{j.push("/admin/site/group")},I=v(),T=H(()=>({group_name:[{required:!0,message:r("groupNamePlaceholder"),trigger:"blur"}],app:[{required:!0,message:r("mainAppPlaceholder"),trigger:"blur"}]})),$=async c=>{if(g.value||!c)return;const o=d.value.group_id?ce:ue;await c.validate(async _=>{_&&(g.value=!0,o(d.value).then(i=>{setTimeout(()=>{V()},1e3)}).catch(()=>{g.value=!1}))})};return(c,o)=>{const _=K,i=M,p=Q,L=J("icon-picture"),C=Z,N=ee,A=le,O=oe,S=se,z=te,q=ae;return F((n(),m("div",_e,[l("div",me,[l("div",{class:"left",onClick:V},[fe,l("span",ve,u(t(r)("returnToPreviousPage")),1)]),he,l("span",ge,u(t(U)),1)]),a(z,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[a(O,{model:d.value,"label-width":"110px",ref_key:"formRef",ref:I,rules:t(T),class:"page-form"},{default:s(()=>[a(i,{label:t(r)("groupName"),prop:"group_name"},{default:s(()=>[a(_,{modelValue:d.value.group_name,"onUpdate:modelValue":o[0]||(o[0]=e=>d.value.group_name=e),placeholder:t(r)("groupNamePlaceholder"),clearable:"",disabled:d.value.uid,class:"input-width",maxlength:"20","show-word-limit":!0},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["label"]),a(i,{label:t(r)("groupDesc"),prop:"group_desc"},{default:s(()=>[a(_,{modelValue:d.value.group_desc,"onUpdate:modelValue":o[1]||(o[1]=e=>d.value.group_desc=e),type:"textarea",rows:"4",clearable:"",placeholder:t(r)("groupDescPlaceholder"),class:"input-width",maxlength:"100"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(i,{label:t(r)("mainApp"),prop:"app"},{default:s(()=>[b.value.length?(n(),f(A,{key:1,modelValue:d.value.app,"onUpdate:modelValue":o[2]||(o[2]=e=>d.value.app=e),class:"flex flex-wrap w-full"},{default:s(()=>[(n(!0),m(P,null,R(b.value,(e,E)=>(n(),m("div",{class:"flex w-[300px]",key:E},[a(N,{label:e.key,name:"",class:"w-full !h-auto border border-solid p-[10px] !mr-[10px] !mb-[10px] rounded-md"},{default:s(()=>[l("div",be,[l("div",ye,[l("div",we,[e.icon?(n(),f(p,{key:0,src:t(B)(e.icon),class:"w-full h-full"},null,8,["src"])):(n(),f(p,{key:1,class:"w-full h-full"},{error:s(()=>[l("div",ke,[a(C,null,{default:s(()=>[a(L)]),_:1})])]),_:1}))]),l("div",Ve,[l("div",Ee,u(e.title),1),l("div",{class:"text-gray-400 mt-[10px] truncate",title:e.desc},u(e.desc),9,Ie)])])])]),_:2},1032,["label"])]))),128))]),_:1},8,["modelValue"])):(n(),m("div",xe,u(t(r)("appListEmpty")),1))]),_:1},8,["label"]),a(i,{label:t(r)("containAddon")},{default:s(()=>[y.value.length?(n(),f(A,{key:1,modelValue:d.value.addon,"onUpdate:modelValue":o[3]||(o[3]=e=>d.value.addon=e),class:"flex flex-wrap w-full"},{default:s(()=>[(n(!0),m(P,null,R(y.value,(e,E)=>(n(),m("div",{class:"flex w-[300px]",key:E},[a(N,{label:e.key,name:"",class:"w-full !h-auto border border-solid p-[10px] !mr-[10px] !mb-[10px] rounded-md"},{default:s(()=>[l("div",Ce,[l("div",Ne,[l("div",Ae,[e.icon?(n(),f(p,{key:0,src:t(B)(e.icon),class:"w-full h-full"},null,8,["src"])):(n(),f(p,{key:1,class:"w-full h-full"},{error:s(()=>[l("div",Se,[a(C,null,{default:s(()=>[a(L)]),_:1})])]),_:1}))]),l("div",qe,[l("div",Fe,u(e.title),1),l("div",{class:"text-gray-400 mt-[10px] truncate",title:e.desc},u(e.desc),9,Pe)])])])]),_:2},1032,["label"])]))),128))]),_:1},8,["modelValue"])):(n(),m("div",Le,u(t(r)("appListEmpty")),1))]),_:1},8,["label"])]),_:1},8,["model","rules"]),l("div",Re,[l("div",Be,[F((n(),f(S,{type:"primary",onClick:o[4]||(o[4]=e=>$(I.value))},{default:s(()=>[D(u(t(r)("save")),1)]),_:1})),[[q,g.value]]),a(S,{onClick:o[5]||(o[5]=e=>V())},{default:s(()=>[D(u(t(r)("cancel")),1)]),_:1})])])]),_:1})])),[[q,x.value]])}}});const el=pe(De,[["__scopeId","data-v-e41f1ac8"]]);export{el as default}; diff --git a/niucloud/public/admin/assets/group_edit-f53c3fcc.css b/niucloud/public/admin/assets/group_edit-f53c3fcc.css new file mode 100644 index 0000000..3caf855 --- /dev/null +++ b/niucloud/public/admin/assets/group_edit-f53c3fcc.css @@ -0,0 +1 @@ +.image-error[data-v-e41f1ac8]{background:var(--el-border-color-extra-light);width:100%;height:100%}[data-v-e41f1ac8] .el-checkbox__label{width:100%} diff --git a/niucloud/public/admin/assets/hello_world.index-b25bb000.js b/niucloud/public/admin/assets/hello_world.index-b25bb000.js new file mode 100644 index 0000000..b480ffe --- /dev/null +++ b/niucloud/public/admin/assets/hello_world.index-b25bb000.js @@ -0,0 +1 @@ +const e={};export{e as default}; diff --git a/niucloud/public/admin/assets/home-a9db0fa7.js b/niucloud/public/admin/assets/home-a9db0fa7.js new file mode 100644 index 0000000..a4d4d7b --- /dev/null +++ b/niucloud/public/admin/assets/home-a9db0fa7.js @@ -0,0 +1 @@ +import{aJ as t}from"./index-6010b07e.js";function r(e){return t.get("home/site",{params:e})}export{r as g}; diff --git a/niucloud/public/admin/assets/icon-addon-339e16d0.js b/niucloud/public/admin/assets/icon-addon-339e16d0.js new file mode 100644 index 0000000..704017a --- /dev/null +++ b/niucloud/public/admin/assets/icon-addon-339e16d0.js @@ -0,0 +1 @@ +const A="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAABHNCSVQICAgIfAhkiAAAAlhJREFUWEftWT1IHEEU/sZCECKKVkYLC0knCIJgFa0SC5uU2liIEvCs7bzrQjqjIIKFTVL5U1hEbDwbRVGQWBktbNQq8UIkAYsb36ce/s3tzjrD7ok+2Ftud3bet9+8+d68WYVrmxzSHUphVI4WuVRduB7zOac1duTIfJxQWfpW/Jka1mk5jcYMJsxdZvCLSisyV1aGlbDWSdzP59GpplI6Kzy+TQJAqE+NVSXDe5pgzIVhzBGgDmuV5P3nAbC1C3jTBlTWAIc/gLUF4Oy3H96dGWz/ADTfm2Ln/4FvGYBnV3MCWF4B9H0yQ1ifB3ZXXeGJULtMkromoDtlBrG9BGx/jxFgbT3Q2PzQIePPZMf7wMnB3Tt/JS4Pd6MNvRWDBNH63p0N9vDrCFgctwdpBZBxxnjzZcvTV0zamBXAgTGbruzbRInPF4AmXp8fg5zF5/+A2oarlOZqlCAaZYhiHpRxrGLwNiAC7Oh1hXjzPMHNfi6euyMDZNfMHswivuznJpD9au7tUQB9CjdhkcWZEY8ATSsYFzaZXeZkmE0WmUFmlB6p/3xmFg4vh9kZ4CtZkL7rl9ksCwcfxqHlLA5a9VgxWFjz+WKNQr23YbfqtgL45HMx64+96xh6LfITJkGxpjpmA67vooh5rABZHJkquCAxj1KvWMVgMWdB+hUk5tQ8PmtjVgApK3R4vyYJygAmgGR6SwqpYprnrIM2b+y7jRWDvp1G6e8JAEzpnOwPVkV5q9jaavwp/Q3Mkt8C5nCV9CZ6IZ4umVRIy/+WxGJSYk787+Q10oXPEBdNqSjGJT70CwAAAABJRU5ErkJggg==";export{A as _}; diff --git a/niucloud/public/admin/assets/index-0e08307e.css b/niucloud/public/admin/assets/index-0e08307e.css new file mode 100644 index 0000000..c6d4ddc --- /dev/null +++ b/niucloud/public/admin/assets/index-0e08307e.css @@ -0,0 +1,13 @@ +@charset "UTF-8";#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0px;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:solid 2px transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--el-color-primary-rgb:64,158,255;--el-color-success-rgb:103,194,58;--el-color-warning-rgb:230,162,60;--el-color-danger-rgb:245,108,108;--el-color-error-rgb:245,108,108;--el-color-info-rgb:144,147,153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","\5fae\8f6f\96c5\9ed1",Arial,sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier),opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;color-scheme:light;--el-color-white:#ffffff;--el-color-black:#000000;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#ffffff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#ffffff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#ffffff;--el-box-shadow:0px 12px 32px 4px rgba(0, 0, 0, .04),0px 8px 20px rgba(0, 0, 0, .08);--el-box-shadow-light:0px 0px 12px rgba(0, 0, 0, .12);--el-box-shadow-lighter:0px 0px 6px rgba(0, 0, 0, .12);--el-box-shadow-dark:0px 16px 48px 16px rgba(0, 0, 0, .08),0px 12px 32px rgba(0, 0, 0, .12),0px 8px 16px -8px rgba(0, 0, 0, .16);--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:rgba(0, 0, 0, .8);--el-overlay-color-light:rgba(0, 0, 0, .7);--el-overlay-color-lighter:rgba(0, 0, 0, .5);--el-mask-color:rgba(255, 255, 255, .9);--el-mask-color-extra-light:rgba(255, 255, 255, .3);--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center top}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center bottom}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transition:var(--el-transition-md-fade);transform-origin:top left}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon-loading{animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;height:1em;width:1em;line-height:1em;display:inline-flex;justify-content:center;align-items:center;position:relative;fill:currentColor;color:var(--color);font-size:inherit}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em}.el-affix--fixed{position:fixed}.el-alert{--el-alert-padding:8px 16px;--el-alert-border-radius-base:var(--el-border-radius-base);--el-alert-title-font-size:13px;--el-alert-description-font-size:12px;--el-alert-close-font-size:12px;--el-alert-close-customed-font-size:13px;--el-alert-icon-size:16px;--el-alert-icon-large-size:28px;width:100%;padding:var(--el-alert-padding);margin:0;box-sizing:border-box;border-radius:var(--el-alert-border-radius-base);position:relative;background-color:var(--el-color-white);overflow:hidden;opacity:1;display:flex;align-items:center;transition:opacity var(--el-transition-duration-fast)}.el-alert.is-light .el-alert__close-btn{color:var(--el-text-color-placeholder)}.el-alert.is-dark .el-alert__close-btn,.el-alert.is-dark .el-alert__description{color:var(--el-color-white)}.el-alert.is-center{justify-content:center}.el-alert--success{--el-alert-bg-color:var(--el-color-success-light-9)}.el-alert--success.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-success)}.el-alert--success.is-light .el-alert__description{color:var(--el-color-success)}.el-alert--success.is-dark{background-color:var(--el-color-success);color:var(--el-color-white)}.el-alert--info{--el-alert-bg-color:var(--el-color-info-light-9)}.el-alert--info.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-info)}.el-alert--info.is-light .el-alert__description{color:var(--el-color-info)}.el-alert--info.is-dark{background-color:var(--el-color-info);color:var(--el-color-white)}.el-alert--warning{--el-alert-bg-color:var(--el-color-warning-light-9)}.el-alert--warning.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-warning)}.el-alert--warning.is-light .el-alert__description{color:var(--el-color-warning)}.el-alert--warning.is-dark{background-color:var(--el-color-warning);color:var(--el-color-white)}.el-alert--error{--el-alert-bg-color:var(--el-color-error-light-9)}.el-alert--error.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-error)}.el-alert--error.is-light .el-alert__description{color:var(--el-color-error)}.el-alert--error.is-dark{background-color:var(--el-color-error);color:var(--el-color-white)}.el-alert__content{display:table-cell;padding:0 8px}.el-alert .el-alert__icon{font-size:var(--el-alert-icon-size);width:var(--el-alert-icon-size)}.el-alert .el-alert__icon.is-big{font-size:var(--el-alert-icon-large-size);width:var(--el-alert-icon-large-size)}.el-alert__title{font-size:var(--el-alert-title-font-size);line-height:18px;vertical-align:text-top}.el-alert__title.is-bold{font-weight:700}.el-alert .el-alert__description{font-size:var(--el-alert-description-font-size);margin:5px 0 0}.el-alert .el-alert__close-btn{font-size:var(--el-alert-close-font-size);opacity:1;position:absolute;top:12px;right:15px;cursor:pointer}.el-alert .el-alert__close-btn.is-customed{font-style:normal;font-size:var(--el-alert-close-customed-font-size);top:9px}.el-alert-fade-enter-from,.el-alert-fade-leave-active{opacity:0}.el-aside{overflow:auto;box-sizing:border-box;flex-shrink:0;width:var(--el-aside-width,300px)}.el-autocomplete{position:relative;display:inline-block}.el-autocomplete__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-autocomplete__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-autocomplete__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-autocomplete__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-autocomplete-suggestion{border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-autocomplete-suggestion__wrap{max-height:280px;padding:10px 0;box-sizing:border-box}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{padding:0 20px;margin:0;line-height:34px;cursor:pointer;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);list-style:none;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el-autocomplete-suggestion li:hover,.el-autocomplete-suggestion li.highlighted{background-color:var(--el-fill-color-light)}.el-autocomplete-suggestion li.divider{margin-top:6px;border-top:1px solid var(--el-color-black)}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{text-align:center;height:100px;line-height:100px;font-size:20px;color:var(--el-text-color-secondary)}.el-autocomplete-suggestion.is-loading li:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-autocomplete-suggestion.is-loading li:hover{background-color:var(--el-bg-color-overlay)}.el-autocomplete-suggestion.is-loading .el-icon-loading{vertical-align:middle}.el-avatar{--el-avatar-text-color:var(--el-color-white);--el-avatar-bg-color:var(--el-text-color-disabled);--el-avatar-text-size:14px;--el-avatar-icon-size:18px;--el-avatar-border-radius:var(--el-border-radius-base);--el-avatar-size-large:56px;--el-avatar-size-small:24px;--el-avatar-size:40px;display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;text-align:center;overflow:hidden;color:var(--el-avatar-text-color);background:var(--el-avatar-bg-color);width:var(--el-avatar-size);height:var(--el-avatar-size);font-size:var(--el-avatar-text-size)}.el-avatar>img{display:block;height:100%}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:var(--el-avatar-border-radius)}.el-avatar--icon{font-size:var(--el-avatar-icon-size)}.el-avatar--small{--el-avatar-size:24px}.el-avatar--large{--el-avatar-size:56px}.el-backtop{--el-backtop-bg-color:var(--el-bg-color-overlay);--el-backtop-text-color:var(--el-color-primary);--el-backtop-hover-bg-color:var(--el-border-color-extra-light);position:fixed;background-color:var(--el-backtop-bg-color);width:40px;height:40px;border-radius:50%;color:var(--el-backtop-text-color);display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:var(--el-box-shadow-lighter);cursor:pointer;z-index:5}.el-backtop:hover{background-color:var(--el-backtop-hover-bg-color)}.el-backtop__icon{font-size:20px}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;position:relative;vertical-align:middle;display:inline-block;width:-moz-fit-content;width:fit-content}.el-badge__content{background-color:var(--el-badge-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);display:inline-flex;justify-content:center;align-items:center;font-size:var(--el-badge-font-size);height:var(--el-badge-size);padding:0 var(--el-badge-padding);white-space:nowrap;border:1px solid var(--el-bg-color)}.el-badge__content.is-fixed{position:absolute;top:0;right:calc(1px + var(--el-badge-size)/ 2);transform:translateY(-50%) translate(100%);z-index:var(--el-index-normal)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{height:8px;width:8px;padding:0;right:0;border-radius:50%}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:var(--el-text-color-placeholder)}.el-breadcrumb__separator.el-icon{margin:0 6px;font-weight:400}.el-breadcrumb__separator.el-icon svg{vertical-align:middle}.el-breadcrumb__item{float:left;display:flex;align-items:center}.el-breadcrumb__inner{color:var(--el-text-color-regular)}.el-breadcrumb__inner a,.el-breadcrumb__inner.is-link{font-weight:700;text-decoration:none;transition:var(--el-transition-color);color:var(--el-text-color-primary)}.el-breadcrumb__inner a:hover,.el-breadcrumb__inner.is-link:hover{color:var(--el-color-primary);cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover{font-weight:400;color:var(--el-text-color-regular);cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{display:table;content:""}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button:active,.el-button-group>.el-button:focus,.el-button-group>.el-button:hover{z-index:1}.el-button-group>.el-button.is-active{z-index:1}.el-button-group>.el-dropdown>.el-button{border-top-left-radius:0;border-bottom-left-radius:0;border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:rgba(255, 255, 255, .5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-color-info);--el-button-active-color:var(--el-text-color-primary);display:inline-flex;justify-content:center;align-items:center;line-height:1;height:32px;white-space:nowrap;cursor:pointer;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;outline:0;transition:.1s;font-weight:var(--el-button-font-weight);-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);padding:8px 15px;font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base)}.el-button:focus,.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:0}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:0}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button>span{display:inline-flex;align-items:center}.el-button+.el-button{margin-left:12px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:0}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{position:relative;pointer-events:none}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:var(--el-mask-color-extra-light)}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-circle{border-radius:50%;padding:8px}.el-button.is-text{color:var(--el-button-text-color);border:0 solid transparent;background-color:transparent}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important}.el-button.is-text:not(.is-disabled):focus,.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:focus,.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{border-color:transparent;color:var(--el-button-text-color);background:0 0;padding:2px;height:auto}.el-button.is-link:focus,.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important;border-color:transparent!important}.el-button.is-link:not(.is-disabled):focus,.el-button.is-link:not(.is-disabled):hover{border-color:transparent;background-color:transparent}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);border-color:transparent;background-color:transparent}.el-button--text{border-color:transparent;background:0 0;color:var(--el-color-primary);padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:transparent!important;border-color:transparent!important}.el-button--text:not(.is-disabled):focus,.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);border-color:transparent;background-color:transparent}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);border-color:transparent;background-color:transparent}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-link,.el-button--primary.is-plain,.el-button--primary.is-text{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:active,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:hover{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-link,.el-button--success.is-plain,.el-button--success.is-text{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:active,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:active,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:hover{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-link,.el-button--warning.is-plain,.el-button--warning.is-text{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:active,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:hover{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-link,.el-button--danger.is-plain,.el-button--danger.is-text{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:active,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:hover{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-link,.el-button--info.is-plain,.el-button--info.is-text{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:active,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:active,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:hover{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size);padding:12px 19px;font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size);padding:5px 11px;font-size:12px;border-radius:calc(var(--el-border-radius-base) - 1px)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px}.el-calendar{--el-calendar-border:var(--el-table-border, 1px solid var(--el-border-color-lighter));--el-calendar-header-border-bottom:var(--el-calendar-border);--el-calendar-selected-bg-color:var(--el-color-primary-light-9);--el-calendar-cell-width:85px;background-color:var(--el-fill-color-blank)}.el-calendar__header{display:flex;justify-content:space-between;padding:12px 20px;border-bottom:var(--el-calendar-header-border-bottom)}.el-calendar__title{color:var(--el-text-color);align-self:center}.el-calendar__body{padding:12px 20px 35px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{padding:12px 0;color:var(--el-text-color-regular);font-weight:400}.el-calendar-table:not(.is-range) td.next,.el-calendar-table:not(.is-range) td.prev{color:var(--el-text-color-placeholder)}.el-calendar-table td{border-bottom:var(--el-calendar-border);border-right:var(--el-calendar-border);vertical-align:top;transition:background-color var(--el-transition-duration-fast) ease}.el-calendar-table td.is-selected{background-color:var(--el-calendar-selected-bg-color)}.el-calendar-table td.is-today{color:var(--el-color-primary)}.el-calendar-table tr:first-child td{border-top:var(--el-calendar-border)}.el-calendar-table tr td:first-child{border-left:var(--el-calendar-border)}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{box-sizing:border-box;padding:8px;height:var(--el-calendar-cell-width)}.el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);border-radius:var(--el-card-border-radius);border:1px solid var(--el-card-border-color);background-color:var(--el-card-bg-color);overflow:hidden;color:var(--el-text-color-primary);transition:var(--el-transition-duration)}.el-card.is-always-shadow{box-shadow:var(--el-box-shadow-light)}.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{box-shadow:var(--el-box-shadow-light)}.el-card__header{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box}.el-card__body{padding:var(--el-card-padding)}.el-carousel__item{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item.is-active{z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item.is-animating{transition:transform .4s ease-in-out}.el-carousel__item--card{width:50%;transition:transform .4s ease-in-out}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:var(--el-index-normal)}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:calc(var(--el-index-normal) + 1)}.el-carousel__mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--el-color-white);opacity:.24;transition:var(--el-transition-duration-fast)}.el-carousel{--el-carousel-arrow-font-size:12px;--el-carousel-arrow-size:36px;--el-carousel-arrow-background:rgba(31, 45, 61, .11);--el-carousel-arrow-hover-background:rgba(31, 45, 61, .23);--el-carousel-indicator-width:30px;--el-carousel-indicator-height:2px;--el-carousel-indicator-padding-horizontal:4px;--el-carousel-indicator-padding-vertical:12px;--el-carousel-indicator-out-color:var(--el-border-color-hover);position:relative}.el-carousel--horizontal{overflow-x:hidden}.el-carousel--vertical{overflow-y:hidden}.el-carousel__container{position:relative;height:300px}.el-carousel__arrow{border:none;outline:0;padding:0;margin:0;height:var(--el-carousel-arrow-size);width:var(--el-carousel-arrow-size);cursor:pointer;transition:var(--el-transition-duration);border-radius:50%;background-color:var(--el-carousel-arrow-background);color:#fff;position:absolute;top:50%;z-index:10;transform:translateY(-50%);text-align:center;font-size:var(--el-carousel-arrow-font-size);display:inline-flex;justify-content:center;align-items:center}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:var(--el-carousel-arrow-hover-background)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{position:absolute;list-style:none;margin:0;padding:0;z-index:calc(var(--el-index-normal) + 1)}.el-carousel__indicators--horizontal{bottom:0;left:50%;transform:translate(-50%)}.el-carousel__indicators--vertical{right:0;top:50%;transform:translateY(-50%)}.el-carousel__indicators--outside{bottom:calc(var(--el-carousel-indicator-height) + var(--el-carousel-indicator-padding-vertical) * 2);text-align:center;position:static;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:var(--el-carousel-indicator-out-color);opacity:.24}.el-carousel__indicators--labels{left:0;right:0;transform:none;text-align:center}.el-carousel__indicators--labels .el-carousel__button{height:auto;width:auto;padding:2px 18px;font-size:12px;color:#000}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{background-color:transparent;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{display:inline-block;padding:var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal)}.el-carousel__indicator--vertical{padding:var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)}.el-carousel__indicator--vertical .el-carousel__button{width:var(--el-carousel-indicator-height);height:calc(var(--el-carousel-indicator-width)/ 2)}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{display:block;opacity:.48;width:var(--el-carousel-indicator-width);height:var(--el-carousel-indicator-height);background-color:#fff;border:none;outline:0;padding:0;margin:0;cursor:pointer;transition:var(--el-transition-duration)}.carousel-arrow-left-enter-from,.carousel-arrow-left-leave-active{transform:translateY(-50%) translate(-10px);opacity:0}.carousel-arrow-right-enter-from,.carousel-arrow-right-leave-active{transform:translateY(-50%) translate(10px);opacity:0}.el-cascader-panel{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);display:flex;border-radius:var(--el-cascader-menu-radius);font-size:var(--el-cascader-menu-font-size)}.el-cascader-panel.is-bordered{border:var(--el-cascader-menu-border);border-radius:var(--el-cascader-menu-radius)}.el-cascader-menu{min-width:180px;box-sizing:border-box;color:var(--el-cascader-menu-text-color);border-right:var(--el-cascader-menu-border)}.el-cascader-menu:last-child{border-right:none}.el-cascader-menu:last-child .el-cascader-node{padding-right:20px}.el-cascader-menu__wrap.el-scrollbar__wrap{height:204px}.el-cascader-menu__list{position:relative;min-height:100%;margin:0;padding:6px 0;list-style:none;box-sizing:border-box}.el-cascader-menu__hover-zone{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.el-cascader-menu__empty-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;color:var(--el-cascader-color-empty)}.el-cascader-menu__empty-text .is-loading{margin-right:2px}.el-cascader-node{position:relative;display:flex;align-items:center;padding:0 30px 0 20px;height:34px;line-height:34px;outline:0}.el-cascader-node.is-selectable.in-active-path{color:var(--el-cascader-menu-text-color)}.el-cascader-node.in-active-path,.el-cascader-node.is-active,.el-cascader-node.is-selectable.in-checked-path{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader-node:not(.is-disabled){cursor:pointer}.el-cascader-node:not(.is-disabled):focus,.el-cascader-node:not(.is-disabled):hover{background:var(--el-cascader-node-background-hover)}.el-cascader-node.is-disabled{color:var(--el-cascader-node-color-disabled);cursor:not-allowed}.el-cascader-node__prefix{position:absolute;left:10px}.el-cascader-node__postfix{position:absolute;right:10px}.el-cascader-node__label{flex:1;text-align:left;padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el-cascader-node>.el-checkbox{margin-right:0}.el-cascader-node>.el-radio{margin-right:0}.el-cascader-node>.el-radio .el-radio__label{padding-left:0}.el-cascader{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);display:inline-block;vertical-align:middle;position:relative;font-size:var(--el-font-size-base);line-height:32px;outline:0}.el-cascader:not(.is-disabled):hover .el-input__wrapper{cursor:pointer;box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-cascader .el-input{display:flex;cursor:pointer}.el-cascader .el-input .el-input__inner{text-overflow:ellipsis;cursor:pointer}.el-cascader .el-input .el-input__suffix-inner .el-icon{height:calc(100% - 2px)}.el-cascader .el-input .el-input__suffix-inner .el-icon svg{vertical-align:middle}.el-cascader .el-input .icon-arrow-down{transition:transform var(--el-transition-duration);font-size:14px}.el-cascader .el-input .icon-arrow-down.is-reverse{transform:rotate(180deg)}.el-cascader .el-input .icon-circle-close:hover{color:var(--el-input-clear-hover-color,var(--el-text-color-secondary))}.el-cascader .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-cascader--large{font-size:14px;line-height:40px}.el-cascader--small{font-size:12px;line-height:24px}.el-cascader.is-disabled .el-cascader__label{z-index:calc(var(--el-index-normal) + 1);color:var(--el-disabled-text-color)}.el-cascader__dropdown{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);font-size:var(--el-cascader-menu-font-size);border-radius:var(--el-cascader-menu-radius)}.el-cascader__dropdown.el-popper{background:var(--el-cascader-menu-fill);border:var(--el-cascader-menu-border);box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__dropdown.el-popper .el-popper__arrow:before{border:var(--el-cascader-menu-border)}.el-cascader__dropdown.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-cascader__dropdown.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-cascader__dropdown.el-popper{box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__tags{position:absolute;left:0;right:30px;top:50%;transform:translateY(-50%);display:flex;flex-wrap:wrap;line-height:normal;text-align:left;box-sizing:border-box}.el-cascader__tags .el-tag{display:inline-flex;align-items:center;max-width:100%;margin:2px 0 2px 6px;text-overflow:ellipsis;background:var(--el-cascader-tag-background)}.el-cascader__tags .el-tag:not(.is-hit){border-color:transparent}.el-cascader__tags .el-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis}.el-cascader__tags .el-tag .el-icon-close{flex:none;background-color:var(--el-text-color-placeholder);color:var(--el-color-white)}.el-cascader__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__collapse-tags{white-space:normal;z-index:var(--el-index-normal)}.el-cascader__collapse-tags .el-tag{display:inline-flex;align-items:center;max-width:100%;margin:2px 0 2px 6px;text-overflow:ellipsis;background:var(--el-fill-color)}.el-cascader__collapse-tags .el-tag:not(.is-hit){border-color:transparent}.el-cascader__collapse-tags .el-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis}.el-cascader__collapse-tags .el-tag .el-icon-close{flex:none;background-color:var(--el-text-color-placeholder);color:var(--el-color-white)}.el-cascader__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__suggestion-panel{border-radius:var(--el-cascader-menu-radius)}.el-cascader__suggestion-list{max-height:204px;margin:0;padding:6px 0;font-size:var(--el-font-size-base);color:var(--el-cascader-menu-text-color);text-align:center}.el-cascader__suggestion-item{display:flex;justify-content:space-between;align-items:center;height:34px;padding:0 15px;text-align:left;outline:0;cursor:pointer}.el-cascader__suggestion-item:focus,.el-cascader__suggestion-item:hover{background:var(--el-cascader-node-background-hover)}.el-cascader__suggestion-item.is-checked{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader__suggestion-item>span{margin-right:10px}.el-cascader__empty-text{margin:10px 0;color:var(--el-cascader-color-empty)}.el-cascader__search-input{flex:1;height:24px;min-width:60px;margin:2px 0 2px 11px;padding:0;color:var(--el-cascader-menu-text-color);border:none;outline:0;box-sizing:border-box;background:0 0}.el-cascader__search-input::-moz-placeholder{color:transparent}.el-cascader__search-input::placeholder{color:transparent}.el-check-tag{background-color:var(--el-color-info-light-9);border-radius:var(--el-border-radius-base);color:var(--el-color-info);cursor:pointer;display:inline-block;font-size:var(--el-font-size-base);line-height:var(--el-font-size-base);padding:7px 15px;transition:var(--el-transition-all);font-weight:700}.el-check-tag:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.is-checked{background-color:var(--el-color-primary-light-8);color:var(--el-color-primary)}.el-check-tag.is-checked:hover{background-color:var(--el-color-primary-light-7)}.el-checkbox-button{--el-checkbox-button-checked-bg-color:var(--el-color-primary);--el-checkbox-button-checked-text-color:var(--el-color-white);--el-checkbox-button-checked-border-color:var(--el-color-primary);position:relative;display:inline-block}.el-checkbox-button__inner{display:inline-block;line-height:1;font-weight:var(--el-checkbox-font-weight);white-space:nowrap;vertical-align:middle;cursor:pointer;background:var(--el-button-bg-color,var(--el-fill-color-blank));border:var(--el-border);border-left:0;color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;outline:0;margin:0;position:relative;transition:var(--el-transition-all);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:8px 15px;font-size:var(--el-font-size-base);border-radius:0}.el-checkbox-button__inner.is-round{padding:8px 15px}.el-checkbox-button__inner:hover{color:var(--el-color-primary)}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{opacity:0;outline:0;position:absolute;margin:0;z-index:-1}.el-checkbox-button.is-checked .el-checkbox-button__inner{color:var(--el-checkbox-button-checked-text-color);background-color:var(--el-checkbox-button-checked-bg-color);border-color:var(--el-checkbox-button-checked-border-color);box-shadow:-1px 0 0 0 var(--el-color-primary-light-7)}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button.is-disabled .el-checkbox-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:var(--el-button-disabled-border-color,var(--el-border-color-light))}.el-checkbox-button:first-child .el-checkbox-button__inner{border-left:var(--el-border);border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base);box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button:last-child .el-checkbox-button__inner{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base)}.el-checkbox-button--large .el-checkbox-button__inner{padding:12px 19px;font-size:var(--el-font-size-base);border-radius:0}.el-checkbox-button--large .el-checkbox-button__inner.is-round{padding:12px 19px}.el-checkbox-button--small .el-checkbox-button__inner{padding:5px 11px;font-size:12px;border-radius:0}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:5px 11px}.el-checkbox-group{font-size:0;line-height:0}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:30px;height:32px}.el-checkbox.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter);cursor:not-allowed}.el-checkbox.is-bordered.el-checkbox--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{padding:0 11px 0 7px;border-radius:calc(var(--el-border-radius-base) - 1px)}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color)}.el-checkbox__input.is-disabled .el-checkbox__inner+.el-checkbox__label{cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";position:absolute;display:block;background-color:var(--el-checkbox-checked-icon-color);height:2px;transform:scale(.5);left:0;right:0;top:5px}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{display:inline-block;position:relative;border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46)}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";border:1px solid var(--el-checkbox-checked-icon-color);border-left:0;border-top:0;height:7px;left:4px;position:absolute;top:1px;transform:rotate(45deg) scaleY(0);width:3px;transition:transform .15s ease-in 50ms;transform-origin:center}.el-checkbox__original{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.el-checkbox__label{display:inline-block;padding-left:8px;line-height:1;font-size:var(--el-checkbox-font-size)}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0}[class*=el-col-]{box-sizing:border-box}[class*=el-col-].is-guttered{display:block;min-height:1px}.el-col-0,.el-col-0.is-guttered{display:none}.el-col-0{max-width:0%;flex:0 0 0%}.el-col-offset-0{margin-left:0}.el-col-pull-0{position:relative;right:0}.el-col-push-0{position:relative;left:0}.el-col-1{max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-offset-1{margin-left:4.1666666667%}.el-col-pull-1{position:relative;right:4.1666666667%}.el-col-push-1{position:relative;left:4.1666666667%}.el-col-2{max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-offset-2{margin-left:8.3333333333%}.el-col-pull-2{position:relative;right:8.3333333333%}.el-col-push-2{position:relative;left:8.3333333333%}.el-col-3{max-width:12.5%;flex:0 0 12.5%}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{position:relative;right:12.5%}.el-col-push-3{position:relative;left:12.5%}.el-col-4{max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-offset-4{margin-left:16.6666666667%}.el-col-pull-4{position:relative;right:16.6666666667%}.el-col-push-4{position:relative;left:16.6666666667%}.el-col-5{max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-offset-5{margin-left:20.8333333333%}.el-col-pull-5{position:relative;right:20.8333333333%}.el-col-push-5{position:relative;left:20.8333333333%}.el-col-6{max-width:25%;flex:0 0 25%}.el-col-offset-6{margin-left:25%}.el-col-pull-6{position:relative;right:25%}.el-col-push-6{position:relative;left:25%}.el-col-7{max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-offset-7{margin-left:29.1666666667%}.el-col-pull-7{position:relative;right:29.1666666667%}.el-col-push-7{position:relative;left:29.1666666667%}.el-col-8{max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-offset-8{margin-left:33.3333333333%}.el-col-pull-8{position:relative;right:33.3333333333%}.el-col-push-8{position:relative;left:33.3333333333%}.el-col-9{max-width:37.5%;flex:0 0 37.5%}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{position:relative;right:37.5%}.el-col-push-9{position:relative;left:37.5%}.el-col-10{max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-offset-10{margin-left:41.6666666667%}.el-col-pull-10{position:relative;right:41.6666666667%}.el-col-push-10{position:relative;left:41.6666666667%}.el-col-11{max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-offset-11{margin-left:45.8333333333%}.el-col-pull-11{position:relative;right:45.8333333333%}.el-col-push-11{position:relative;left:45.8333333333%}.el-col-12{max-width:50%;flex:0 0 50%}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{position:relative;left:50%}.el-col-13{max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-offset-13{margin-left:54.1666666667%}.el-col-pull-13{position:relative;right:54.1666666667%}.el-col-push-13{position:relative;left:54.1666666667%}.el-col-14{max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-offset-14{margin-left:58.3333333333%}.el-col-pull-14{position:relative;right:58.3333333333%}.el-col-push-14{position:relative;left:58.3333333333%}.el-col-15{max-width:62.5%;flex:0 0 62.5%}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{position:relative;right:62.5%}.el-col-push-15{position:relative;left:62.5%}.el-col-16{max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-offset-16{margin-left:66.6666666667%}.el-col-pull-16{position:relative;right:66.6666666667%}.el-col-push-16{position:relative;left:66.6666666667%}.el-col-17{max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-offset-17{margin-left:70.8333333333%}.el-col-pull-17{position:relative;right:70.8333333333%}.el-col-push-17{position:relative;left:70.8333333333%}.el-col-18{max-width:75%;flex:0 0 75%}.el-col-offset-18{margin-left:75%}.el-col-pull-18{position:relative;right:75%}.el-col-push-18{position:relative;left:75%}.el-col-19{max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-offset-19{margin-left:79.1666666667%}.el-col-pull-19{position:relative;right:79.1666666667%}.el-col-push-19{position:relative;left:79.1666666667%}.el-col-20{max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-offset-20{margin-left:83.3333333333%}.el-col-pull-20{position:relative;right:83.3333333333%}.el-col-push-20{position:relative;left:83.3333333333%}.el-col-21{max-width:87.5%;flex:0 0 87.5%}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{position:relative;right:87.5%}.el-col-push-21{position:relative;left:87.5%}.el-col-22{max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-offset-22{margin-left:91.6666666667%}.el-col-pull-22{position:relative;right:91.6666666667%}.el-col-push-22{position:relative;left:91.6666666667%}.el-col-23{max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-offset-23{margin-left:95.8333333333%}.el-col-pull-23{position:relative;right:95.8333333333%}.el-col-push-23{position:relative;left:95.8333333333%}.el-col-24{max-width:100%;flex:0 0 100%}.el-col-offset-24{margin-left:100%}.el-col-pull-24{position:relative;right:100%}.el-col-push-24{position:relative;left:100%}@media only screen and (max-width:768px){.el-col-xs-0,.el-col-xs-0.is-guttered{display:none}.el-col-xs-0{max-width:0%;flex:0 0 0%}.el-col-xs-offset-0{margin-left:0}.el-col-xs-pull-0{position:relative;right:0}.el-col-xs-push-0{position:relative;left:0}.el-col-xs-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-xs-offset-1{margin-left:4.1666666667%}.el-col-xs-pull-1{position:relative;right:4.1666666667%}.el-col-xs-push-1{position:relative;left:4.1666666667%}.el-col-xs-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-xs-offset-2{margin-left:8.3333333333%}.el-col-xs-pull-2{position:relative;right:8.3333333333%}.el-col-xs-push-2{position:relative;left:8.3333333333%}.el-col-xs-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-xs-offset-4{margin-left:16.6666666667%}.el-col-xs-pull-4{position:relative;right:16.6666666667%}.el-col-xs-push-4{position:relative;left:16.6666666667%}.el-col-xs-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-xs-offset-5{margin-left:20.8333333333%}.el-col-xs-pull-5{position:relative;right:20.8333333333%}.el-col-xs-push-5{position:relative;left:20.8333333333%}.el-col-xs-6{display:block;max-width:25%;flex:0 0 25%}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-xs-offset-7{margin-left:29.1666666667%}.el-col-xs-pull-7{position:relative;right:29.1666666667%}.el-col-xs-push-7{position:relative;left:29.1666666667%}.el-col-xs-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-xs-offset-8{margin-left:33.3333333333%}.el-col-xs-pull-8{position:relative;right:33.3333333333%}.el-col-xs-push-8{position:relative;left:33.3333333333%}.el-col-xs-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-xs-offset-10{margin-left:41.6666666667%}.el-col-xs-pull-10{position:relative;right:41.6666666667%}.el-col-xs-push-10{position:relative;left:41.6666666667%}.el-col-xs-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-xs-offset-11{margin-left:45.8333333333%}.el-col-xs-pull-11{position:relative;right:45.8333333333%}.el-col-xs-push-11{position:relative;left:45.8333333333%}.el-col-xs-12{display:block;max-width:50%;flex:0 0 50%}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-xs-offset-13{margin-left:54.1666666667%}.el-col-xs-pull-13{position:relative;right:54.1666666667%}.el-col-xs-push-13{position:relative;left:54.1666666667%}.el-col-xs-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-xs-offset-14{margin-left:58.3333333333%}.el-col-xs-pull-14{position:relative;right:58.3333333333%}.el-col-xs-push-14{position:relative;left:58.3333333333%}.el-col-xs-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-xs-offset-16{margin-left:66.6666666667%}.el-col-xs-pull-16{position:relative;right:66.6666666667%}.el-col-xs-push-16{position:relative;left:66.6666666667%}.el-col-xs-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-xs-offset-17{margin-left:70.8333333333%}.el-col-xs-pull-17{position:relative;right:70.8333333333%}.el-col-xs-push-17{position:relative;left:70.8333333333%}.el-col-xs-18{display:block;max-width:75%;flex:0 0 75%}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-xs-offset-19{margin-left:79.1666666667%}.el-col-xs-pull-19{position:relative;right:79.1666666667%}.el-col-xs-push-19{position:relative;left:79.1666666667%}.el-col-xs-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-xs-offset-20{margin-left:83.3333333333%}.el-col-xs-pull-20{position:relative;right:83.3333333333%}.el-col-xs-push-20{position:relative;left:83.3333333333%}.el-col-xs-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-xs-offset-22{margin-left:91.6666666667%}.el-col-xs-pull-22{position:relative;right:91.6666666667%}.el-col-xs-push-22{position:relative;left:91.6666666667%}.el-col-xs-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-xs-offset-23{margin-left:95.8333333333%}.el-col-xs-pull-23{position:relative;right:95.8333333333%}.el-col-xs-push-23{position:relative;left:95.8333333333%}.el-col-xs-24{display:block;max-width:100%;flex:0 0 100%}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0,.el-col-sm-0.is-guttered{display:none}.el-col-sm-0{max-width:0%;flex:0 0 0%}.el-col-sm-offset-0{margin-left:0}.el-col-sm-pull-0{position:relative;right:0}.el-col-sm-push-0{position:relative;left:0}.el-col-sm-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-sm-offset-1{margin-left:4.1666666667%}.el-col-sm-pull-1{position:relative;right:4.1666666667%}.el-col-sm-push-1{position:relative;left:4.1666666667%}.el-col-sm-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-sm-offset-2{margin-left:8.3333333333%}.el-col-sm-pull-2{position:relative;right:8.3333333333%}.el-col-sm-push-2{position:relative;left:8.3333333333%}.el-col-sm-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-sm-offset-4{margin-left:16.6666666667%}.el-col-sm-pull-4{position:relative;right:16.6666666667%}.el-col-sm-push-4{position:relative;left:16.6666666667%}.el-col-sm-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-sm-offset-5{margin-left:20.8333333333%}.el-col-sm-pull-5{position:relative;right:20.8333333333%}.el-col-sm-push-5{position:relative;left:20.8333333333%}.el-col-sm-6{display:block;max-width:25%;flex:0 0 25%}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-sm-offset-7{margin-left:29.1666666667%}.el-col-sm-pull-7{position:relative;right:29.1666666667%}.el-col-sm-push-7{position:relative;left:29.1666666667%}.el-col-sm-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-sm-offset-8{margin-left:33.3333333333%}.el-col-sm-pull-8{position:relative;right:33.3333333333%}.el-col-sm-push-8{position:relative;left:33.3333333333%}.el-col-sm-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-sm-offset-10{margin-left:41.6666666667%}.el-col-sm-pull-10{position:relative;right:41.6666666667%}.el-col-sm-push-10{position:relative;left:41.6666666667%}.el-col-sm-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-sm-offset-11{margin-left:45.8333333333%}.el-col-sm-pull-11{position:relative;right:45.8333333333%}.el-col-sm-push-11{position:relative;left:45.8333333333%}.el-col-sm-12{display:block;max-width:50%;flex:0 0 50%}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-sm-offset-13{margin-left:54.1666666667%}.el-col-sm-pull-13{position:relative;right:54.1666666667%}.el-col-sm-push-13{position:relative;left:54.1666666667%}.el-col-sm-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-sm-offset-14{margin-left:58.3333333333%}.el-col-sm-pull-14{position:relative;right:58.3333333333%}.el-col-sm-push-14{position:relative;left:58.3333333333%}.el-col-sm-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-sm-offset-16{margin-left:66.6666666667%}.el-col-sm-pull-16{position:relative;right:66.6666666667%}.el-col-sm-push-16{position:relative;left:66.6666666667%}.el-col-sm-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-sm-offset-17{margin-left:70.8333333333%}.el-col-sm-pull-17{position:relative;right:70.8333333333%}.el-col-sm-push-17{position:relative;left:70.8333333333%}.el-col-sm-18{display:block;max-width:75%;flex:0 0 75%}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-sm-offset-19{margin-left:79.1666666667%}.el-col-sm-pull-19{position:relative;right:79.1666666667%}.el-col-sm-push-19{position:relative;left:79.1666666667%}.el-col-sm-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-sm-offset-20{margin-left:83.3333333333%}.el-col-sm-pull-20{position:relative;right:83.3333333333%}.el-col-sm-push-20{position:relative;left:83.3333333333%}.el-col-sm-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-sm-offset-22{margin-left:91.6666666667%}.el-col-sm-pull-22{position:relative;right:91.6666666667%}.el-col-sm-push-22{position:relative;left:91.6666666667%}.el-col-sm-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-sm-offset-23{margin-left:95.8333333333%}.el-col-sm-pull-23{position:relative;right:95.8333333333%}.el-col-sm-push-23{position:relative;left:95.8333333333%}.el-col-sm-24{display:block;max-width:100%;flex:0 0 100%}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0,.el-col-md-0.is-guttered{display:none}.el-col-md-0{max-width:0%;flex:0 0 0%}.el-col-md-offset-0{margin-left:0}.el-col-md-pull-0{position:relative;right:0}.el-col-md-push-0{position:relative;left:0}.el-col-md-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-md-offset-1{margin-left:4.1666666667%}.el-col-md-pull-1{position:relative;right:4.1666666667%}.el-col-md-push-1{position:relative;left:4.1666666667%}.el-col-md-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-md-offset-2{margin-left:8.3333333333%}.el-col-md-pull-2{position:relative;right:8.3333333333%}.el-col-md-push-2{position:relative;left:8.3333333333%}.el-col-md-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-md-offset-4{margin-left:16.6666666667%}.el-col-md-pull-4{position:relative;right:16.6666666667%}.el-col-md-push-4{position:relative;left:16.6666666667%}.el-col-md-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-md-offset-5{margin-left:20.8333333333%}.el-col-md-pull-5{position:relative;right:20.8333333333%}.el-col-md-push-5{position:relative;left:20.8333333333%}.el-col-md-6{display:block;max-width:25%;flex:0 0 25%}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-md-offset-7{margin-left:29.1666666667%}.el-col-md-pull-7{position:relative;right:29.1666666667%}.el-col-md-push-7{position:relative;left:29.1666666667%}.el-col-md-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-md-offset-8{margin-left:33.3333333333%}.el-col-md-pull-8{position:relative;right:33.3333333333%}.el-col-md-push-8{position:relative;left:33.3333333333%}.el-col-md-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-md-offset-10{margin-left:41.6666666667%}.el-col-md-pull-10{position:relative;right:41.6666666667%}.el-col-md-push-10{position:relative;left:41.6666666667%}.el-col-md-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-md-offset-11{margin-left:45.8333333333%}.el-col-md-pull-11{position:relative;right:45.8333333333%}.el-col-md-push-11{position:relative;left:45.8333333333%}.el-col-md-12{display:block;max-width:50%;flex:0 0 50%}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-md-offset-13{margin-left:54.1666666667%}.el-col-md-pull-13{position:relative;right:54.1666666667%}.el-col-md-push-13{position:relative;left:54.1666666667%}.el-col-md-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-md-offset-14{margin-left:58.3333333333%}.el-col-md-pull-14{position:relative;right:58.3333333333%}.el-col-md-push-14{position:relative;left:58.3333333333%}.el-col-md-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-md-offset-16{margin-left:66.6666666667%}.el-col-md-pull-16{position:relative;right:66.6666666667%}.el-col-md-push-16{position:relative;left:66.6666666667%}.el-col-md-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-md-offset-17{margin-left:70.8333333333%}.el-col-md-pull-17{position:relative;right:70.8333333333%}.el-col-md-push-17{position:relative;left:70.8333333333%}.el-col-md-18{display:block;max-width:75%;flex:0 0 75%}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-md-offset-19{margin-left:79.1666666667%}.el-col-md-pull-19{position:relative;right:79.1666666667%}.el-col-md-push-19{position:relative;left:79.1666666667%}.el-col-md-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-md-offset-20{margin-left:83.3333333333%}.el-col-md-pull-20{position:relative;right:83.3333333333%}.el-col-md-push-20{position:relative;left:83.3333333333%}.el-col-md-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-md-offset-22{margin-left:91.6666666667%}.el-col-md-pull-22{position:relative;right:91.6666666667%}.el-col-md-push-22{position:relative;left:91.6666666667%}.el-col-md-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-md-offset-23{margin-left:95.8333333333%}.el-col-md-pull-23{position:relative;right:95.8333333333%}.el-col-md-push-23{position:relative;left:95.8333333333%}.el-col-md-24{display:block;max-width:100%;flex:0 0 100%}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0,.el-col-lg-0.is-guttered{display:none}.el-col-lg-0{max-width:0%;flex:0 0 0%}.el-col-lg-offset-0{margin-left:0}.el-col-lg-pull-0{position:relative;right:0}.el-col-lg-push-0{position:relative;left:0}.el-col-lg-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-lg-offset-1{margin-left:4.1666666667%}.el-col-lg-pull-1{position:relative;right:4.1666666667%}.el-col-lg-push-1{position:relative;left:4.1666666667%}.el-col-lg-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-lg-offset-2{margin-left:8.3333333333%}.el-col-lg-pull-2{position:relative;right:8.3333333333%}.el-col-lg-push-2{position:relative;left:8.3333333333%}.el-col-lg-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-lg-offset-4{margin-left:16.6666666667%}.el-col-lg-pull-4{position:relative;right:16.6666666667%}.el-col-lg-push-4{position:relative;left:16.6666666667%}.el-col-lg-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-lg-offset-5{margin-left:20.8333333333%}.el-col-lg-pull-5{position:relative;right:20.8333333333%}.el-col-lg-push-5{position:relative;left:20.8333333333%}.el-col-lg-6{display:block;max-width:25%;flex:0 0 25%}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-lg-offset-7{margin-left:29.1666666667%}.el-col-lg-pull-7{position:relative;right:29.1666666667%}.el-col-lg-push-7{position:relative;left:29.1666666667%}.el-col-lg-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-lg-offset-8{margin-left:33.3333333333%}.el-col-lg-pull-8{position:relative;right:33.3333333333%}.el-col-lg-push-8{position:relative;left:33.3333333333%}.el-col-lg-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-lg-offset-10{margin-left:41.6666666667%}.el-col-lg-pull-10{position:relative;right:41.6666666667%}.el-col-lg-push-10{position:relative;left:41.6666666667%}.el-col-lg-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-lg-offset-11{margin-left:45.8333333333%}.el-col-lg-pull-11{position:relative;right:45.8333333333%}.el-col-lg-push-11{position:relative;left:45.8333333333%}.el-col-lg-12{display:block;max-width:50%;flex:0 0 50%}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-lg-offset-13{margin-left:54.1666666667%}.el-col-lg-pull-13{position:relative;right:54.1666666667%}.el-col-lg-push-13{position:relative;left:54.1666666667%}.el-col-lg-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-lg-offset-14{margin-left:58.3333333333%}.el-col-lg-pull-14{position:relative;right:58.3333333333%}.el-col-lg-push-14{position:relative;left:58.3333333333%}.el-col-lg-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-lg-offset-16{margin-left:66.6666666667%}.el-col-lg-pull-16{position:relative;right:66.6666666667%}.el-col-lg-push-16{position:relative;left:66.6666666667%}.el-col-lg-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-lg-offset-17{margin-left:70.8333333333%}.el-col-lg-pull-17{position:relative;right:70.8333333333%}.el-col-lg-push-17{position:relative;left:70.8333333333%}.el-col-lg-18{display:block;max-width:75%;flex:0 0 75%}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-lg-offset-19{margin-left:79.1666666667%}.el-col-lg-pull-19{position:relative;right:79.1666666667%}.el-col-lg-push-19{position:relative;left:79.1666666667%}.el-col-lg-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-lg-offset-20{margin-left:83.3333333333%}.el-col-lg-pull-20{position:relative;right:83.3333333333%}.el-col-lg-push-20{position:relative;left:83.3333333333%}.el-col-lg-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-lg-offset-22{margin-left:91.6666666667%}.el-col-lg-pull-22{position:relative;right:91.6666666667%}.el-col-lg-push-22{position:relative;left:91.6666666667%}.el-col-lg-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-lg-offset-23{margin-left:95.8333333333%}.el-col-lg-pull-23{position:relative;right:95.8333333333%}.el-col-lg-push-23{position:relative;left:95.8333333333%}.el-col-lg-24{display:block;max-width:100%;flex:0 0 100%}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0,.el-col-xl-0.is-guttered{display:none}.el-col-xl-0{max-width:0%;flex:0 0 0%}.el-col-xl-offset-0{margin-left:0}.el-col-xl-pull-0{position:relative;right:0}.el-col-xl-push-0{position:relative;left:0}.el-col-xl-1{display:block;max-width:4.1666666667%;flex:0 0 4.1666666667%}.el-col-xl-offset-1{margin-left:4.1666666667%}.el-col-xl-pull-1{position:relative;right:4.1666666667%}.el-col-xl-push-1{position:relative;left:4.1666666667%}.el-col-xl-2{display:block;max-width:8.3333333333%;flex:0 0 8.3333333333%}.el-col-xl-offset-2{margin-left:8.3333333333%}.el-col-xl-pull-2{position:relative;right:8.3333333333%}.el-col-xl-push-2{position:relative;left:8.3333333333%}.el-col-xl-3{display:block;max-width:12.5%;flex:0 0 12.5%}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{display:block;max-width:16.6666666667%;flex:0 0 16.6666666667%}.el-col-xl-offset-4{margin-left:16.6666666667%}.el-col-xl-pull-4{position:relative;right:16.6666666667%}.el-col-xl-push-4{position:relative;left:16.6666666667%}.el-col-xl-5{display:block;max-width:20.8333333333%;flex:0 0 20.8333333333%}.el-col-xl-offset-5{margin-left:20.8333333333%}.el-col-xl-pull-5{position:relative;right:20.8333333333%}.el-col-xl-push-5{position:relative;left:20.8333333333%}.el-col-xl-6{display:block;max-width:25%;flex:0 0 25%}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{display:block;max-width:29.1666666667%;flex:0 0 29.1666666667%}.el-col-xl-offset-7{margin-left:29.1666666667%}.el-col-xl-pull-7{position:relative;right:29.1666666667%}.el-col-xl-push-7{position:relative;left:29.1666666667%}.el-col-xl-8{display:block;max-width:33.3333333333%;flex:0 0 33.3333333333%}.el-col-xl-offset-8{margin-left:33.3333333333%}.el-col-xl-pull-8{position:relative;right:33.3333333333%}.el-col-xl-push-8{position:relative;left:33.3333333333%}.el-col-xl-9{display:block;max-width:37.5%;flex:0 0 37.5%}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{display:block;max-width:41.6666666667%;flex:0 0 41.6666666667%}.el-col-xl-offset-10{margin-left:41.6666666667%}.el-col-xl-pull-10{position:relative;right:41.6666666667%}.el-col-xl-push-10{position:relative;left:41.6666666667%}.el-col-xl-11{display:block;max-width:45.8333333333%;flex:0 0 45.8333333333%}.el-col-xl-offset-11{margin-left:45.8333333333%}.el-col-xl-pull-11{position:relative;right:45.8333333333%}.el-col-xl-push-11{position:relative;left:45.8333333333%}.el-col-xl-12{display:block;max-width:50%;flex:0 0 50%}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{display:block;max-width:54.1666666667%;flex:0 0 54.1666666667%}.el-col-xl-offset-13{margin-left:54.1666666667%}.el-col-xl-pull-13{position:relative;right:54.1666666667%}.el-col-xl-push-13{position:relative;left:54.1666666667%}.el-col-xl-14{display:block;max-width:58.3333333333%;flex:0 0 58.3333333333%}.el-col-xl-offset-14{margin-left:58.3333333333%}.el-col-xl-pull-14{position:relative;right:58.3333333333%}.el-col-xl-push-14{position:relative;left:58.3333333333%}.el-col-xl-15{display:block;max-width:62.5%;flex:0 0 62.5%}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{display:block;max-width:66.6666666667%;flex:0 0 66.6666666667%}.el-col-xl-offset-16{margin-left:66.6666666667%}.el-col-xl-pull-16{position:relative;right:66.6666666667%}.el-col-xl-push-16{position:relative;left:66.6666666667%}.el-col-xl-17{display:block;max-width:70.8333333333%;flex:0 0 70.8333333333%}.el-col-xl-offset-17{margin-left:70.8333333333%}.el-col-xl-pull-17{position:relative;right:70.8333333333%}.el-col-xl-push-17{position:relative;left:70.8333333333%}.el-col-xl-18{display:block;max-width:75%;flex:0 0 75%}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{display:block;max-width:79.1666666667%;flex:0 0 79.1666666667%}.el-col-xl-offset-19{margin-left:79.1666666667%}.el-col-xl-pull-19{position:relative;right:79.1666666667%}.el-col-xl-push-19{position:relative;left:79.1666666667%}.el-col-xl-20{display:block;max-width:83.3333333333%;flex:0 0 83.3333333333%}.el-col-xl-offset-20{margin-left:83.3333333333%}.el-col-xl-pull-20{position:relative;right:83.3333333333%}.el-col-xl-push-20{position:relative;left:83.3333333333%}.el-col-xl-21{display:block;max-width:87.5%;flex:0 0 87.5%}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{display:block;max-width:91.6666666667%;flex:0 0 91.6666666667%}.el-col-xl-offset-22{margin-left:91.6666666667%}.el-col-xl-pull-22{position:relative;right:91.6666666667%}.el-col-xl-push-22{position:relative;left:91.6666666667%}.el-col-xl-23{display:block;max-width:95.8333333333%;flex:0 0 95.8333333333%}.el-col-xl-offset-23{margin-left:95.8333333333%}.el-col-xl-pull-23{position:relative;right:95.8333333333%}.el-col-xl-push-23{position:relative;left:95.8333333333%}.el-col-xl-24{display:block;max-width:100%;flex:0 0 100%}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}}.el-collapse{--el-collapse-border-color:var(--el-border-color-lighter);--el-collapse-header-height:48px;--el-collapse-header-bg-color:var(--el-fill-color-blank);--el-collapse-header-text-color:var(--el-text-color-primary);--el-collapse-header-font-size:13px;--el-collapse-content-bg-color:var(--el-fill-color-blank);--el-collapse-content-font-size:13px;--el-collapse-content-text-color:var(--el-text-color-primary);border-top:1px solid var(--el-collapse-border-color);border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-item.is-disabled .el-collapse-item__header{color:var(--el-text-color-disabled);cursor:not-allowed}.el-collapse-item__header{display:flex;align-items:center;height:var(--el-collapse-header-height);line-height:var(--el-collapse-header-height);background-color:var(--el-collapse-header-bg-color);color:var(--el-collapse-header-text-color);cursor:pointer;border-bottom:1px solid var(--el-collapse-border-color);font-size:var(--el-collapse-header-font-size);font-weight:500;transition:border-bottom-color var(--el-transition-duration);outline:0}.el-collapse-item__arrow{margin:0 8px 0 auto;transition:transform var(--el-transition-duration);font-weight:300}.el-collapse-item__arrow.is-active{transform:rotate(90deg)}.el-collapse-item__header.focusing:focus:not(:hover){color:var(--el-color-primary)}.el-collapse-item__header.is-active{border-bottom-color:transparent}.el-collapse-item__wrap{will-change:height;background-color:var(--el-collapse-content-bg-color);overflow:hidden;box-sizing:border-box;border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-item__content{padding-bottom:25px;font-size:var(--el-collapse-content-font-size);color:var(--el-collapse-content-text-color);line-height:1.7692307692}.el-collapse-item:last-child{margin-bottom:-1px}.el-color-predefine{display:flex;font-size:12px;margin-top:8px;width:280px}.el-color-predefine__colors{display:flex;flex:1;flex-wrap:wrap}.el-color-predefine__color-selector{margin:0 0 8px 8px;width:20px;height:20px;border-radius:4px;cursor:pointer}.el-color-predefine__color-selector:nth-child(10n+1){margin-left:0}.el-color-predefine__color-selector.selected{box-shadow:0 0 3px 2px var(--el-color-primary)}.el-color-predefine__color-selector>div{display:flex;height:100%;border-radius:3px}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{position:relative;box-sizing:border-box;width:280px;height:12px;background-color:red;padding:0 2px;float:right}.el-color-hue-slider__bar{position:relative;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);height:100%}.el-color-hue-slider__thumb{position:absolute;cursor:pointer;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid var(--el-border-color-lighter);box-shadow:0 0 2px #0009;z-index:1}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:linear-gradient(to bottom,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-svpanel{position:relative;width:280px;height:180px}.el-color-svpanel__black,.el-color-svpanel__white{position:absolute;top:0;left:0;right:0;bottom:0}.el-color-svpanel__white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.el-color-svpanel__black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.el-color-svpanel__cursor{position:absolute}.el-color-svpanel__cursor>div{cursor:head;width:4px;height:4px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-2px,-2px)}.el-color-alpha-slider{position:relative;box-sizing:border-box;width:280px;height:12px;background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-size:12px 12px;background-position:0 0,6px 0,6px -6px,0 6px}.el-color-alpha-slider__bar{position:relative;background:linear-gradient(to right,rgba(255,255,255,0) 0,var(--el-bg-color) 100%);height:100%}.el-color-alpha-slider__thumb{position:absolute;cursor:pointer;box-sizing:border-box;left:0;top:0;width:4px;height:100%;border-radius:1px;background:#fff;border:1px solid var(--el-border-color-lighter);box-shadow:0 0 2px #0009;z-index:1}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 100%)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{left:0;top:0;width:100%;height:4px}.el-color-dropdown{width:300px}.el-color-dropdown__main-wrapper{margin-bottom:6px}.el-color-dropdown__main-wrapper:after{content:"";display:table;clear:both}.el-color-dropdown__btns{margin-top:12px;text-align:right}.el-color-dropdown__value{float:left;line-height:26px;font-size:12px;color:#000;width:160px}.el-color-picker{display:inline-block;position:relative;line-height:normal;outline:0}.el-color-picker:hover:not(.is-disabled) .el-color-picker__trigger{border:1px solid var(--el-border-color-hover)}.el-color-picker:focus-visible:not(.is-disabled) .el-color-picker__trigger{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed}.el-color-picker--large{height:40px}.el-color-picker--large .el-color-picker__trigger{height:40px;width:40px}.el-color-picker--large .el-color-picker__mask{height:38px;width:38px}.el-color-picker--small{height:24px}.el-color-picker--small .el-color-picker__trigger{height:24px;width:24px}.el-color-picker--small .el-color-picker__mask{height:22px;width:22px}.el-color-picker--small .el-color-picker__empty,.el-color-picker--small .el-color-picker__icon{transform:scale(.8)}.el-color-picker__mask{height:30px;width:30px;border-radius:4px;position:absolute;top:1px;left:1px;z-index:1;cursor:not-allowed;background-color:#ffffffb3}.el-color-picker__trigger{display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;height:32px;width:32px;padding:4px;border:1px solid var(--el-border-color);border-radius:4px;font-size:0;position:relative;cursor:pointer}.el-color-picker__color{position:relative;display:block;box-sizing:border-box;border:1px solid var(--el-text-color-secondary);border-radius:var(--el-border-radius-small);width:100%;height:100%;text-align:center}.el-color-picker__color.is-alpha{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-size:12px 12px;background-position:0 0,6px 0,6px -6px,0 6px}.el-color-picker__color-inner{display:inline-flex;justify-content:center;align-items:center;width:100%;height:100%}.el-color-picker .el-color-picker__empty{font-size:12px;color:var(--el-text-color-secondary)}.el-color-picker .el-color-picker__icon{display:inline-flex;justify-content:center;align-items:center;color:#fff;font-size:12px}.el-color-picker__panel{position:absolute;z-index:10;padding:6px;box-sizing:content-box;background-color:#fff;border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light)}.el-color-picker__panel.el-popper{border:1px solid var(--el-border-color-lighter)}.el-color-picker,.el-color-picker__panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker,.dark .el-color-picker__panel{--el-color-picker-alpha-bg-a:#333333}.el-container{display:flex;flex-direction:row;flex:1;flex-basis:auto;box-sizing:border-box;min-width:0}.el-container.is-vertical{flex-direction:column}.el-date-table{font-size:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-date-table.is-week-mode .el-date-table__row:hover .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:var(--el-datepicker-text-color)}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child .el-date-table-cell{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child .el-date-table-cell{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table.is-week-mode .el-date-table__row.current .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td{width:32px;height:30px;padding:4px 0;box-sizing:border-box;text-align:center;cursor:pointer;position:relative}.el-date-table td .el-date-table-cell{height:30px;padding:3px 0;box-sizing:border-box}.el-date-table td .el-date-table-cell .el-date-table-cell__text{width:24px;height:24px;display:block;margin:0 auto;line-height:24px;position:absolute;left:50%;transform:translate(-50%);border-radius:50%}.el-date-table td.next-month,.el-date-table td.prev-month{color:var(--el-datepicker-off-text-color)}.el-date-table td.today{position:relative}.el-date-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-date-table td.today.end-date .el-date-table-cell__text,.el-date-table td.today.start-date .el-date-table-cell__text{color:#fff}.el-date-table td.available:hover{color:var(--el-datepicker-hover-text-color)}.el-date-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-date-table td.current:not(.disabled):focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-date-table td.end-date .el-date-table-cell,.el-date-table td.start-date .el-date-table-cell{color:#fff}.el-date-table td.end-date .el-date-table-cell__text,.el-date-table td.start-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color)}.el-date-table td.start-date .el-date-table-cell{margin-left:5px;border-top-left-radius:15px;border-bottom-left-radius:15px}.el-date-table td.end-date .el-date-table-cell{margin-right:5px;border-top-right-radius:15px;border-bottom-right-radius:15px}.el-date-table td.disabled .el-date-table-cell{background-color:var(--el-fill-color-light);opacity:1;cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-date-table td.selected .el-date-table-cell{margin-left:5px;margin-right:5px;background-color:var(--el-datepicker-inrange-bg-color);border-radius:15px}.el-date-table td.selected .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.selected .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff;border-radius:15px}.el-date-table td.week{font-size:80%;color:var(--el-datepicker-header-text-color)}.el-date-table td:focus{outline:0}.el-date-table th{padding:5px;color:var(--el-datepicker-header-text-color);font-weight:400;border-bottom:solid 1px var(--el-border-color-lighter)}.el-month-table{font-size:12px;margin:-1px;border-collapse:collapse}.el-month-table td{text-align:center;padding:8px 0;cursor:pointer}.el-month-table td div{height:48px;padding:6px 0;box-sizing:border-box}.el-month-table td.today .cell{color:var(--el-color-primary);font-weight:700}.el-month-table td.today.end-date .cell,.el-month-table td.today.start-date .cell{color:#fff}.el-month-table td.disabled .cell{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-month-table td.disabled .cell:hover{color:var(--el-text-color-placeholder)}.el-month-table td .cell{width:60px;height:36px;display:block;line-height:36px;color:var(--el-datepicker-text-color);margin:0 auto;border-radius:18px}.el-month-table td .cell:hover{color:var(--el-datepicker-hover-text-color)}.el-month-table td.in-range div{background-color:var(--el-datepicker-inrange-bg-color)}.el-month-table td.in-range div:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-month-table td.end-date div,.el-month-table td.start-date div{color:#fff}.el-month-table td.end-date .cell,.el-month-table td.start-date .cell{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td.start-date div{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-month-table td.end-date div{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-month-table td.current:not(.disabled) .cell{color:var(--el-datepicker-active-color)}.el-month-table td:focus-visible{outline:0}.el-month-table td:focus-visible .cell{outline:2px solid var(--el-datepicker-active-color)}.el-year-table{font-size:12px;margin:-1px;border-collapse:collapse}.el-year-table .el-icon{color:var(--el-datepicker-icon-color)}.el-year-table td{text-align:center;padding:20px 3px;cursor:pointer}.el-year-table td.today .cell{color:var(--el-color-primary);font-weight:700}.el-year-table td.disabled .cell{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-year-table td.disabled .cell:hover{color:var(--el-text-color-placeholder)}.el-year-table td .cell{width:48px;height:36px;display:block;line-height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto}.el-year-table td .cell:hover{color:var(--el-datepicker-hover-text-color)}.el-year-table td.current:not(.disabled) .cell{color:var(--el-datepicker-active-color)}.el-year-table td:focus-visible{outline:0}.el-year-table td:focus-visible .cell{outline:2px solid var(--el-datepicker-active-color)}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{max-height:192px;overflow:auto;display:inline-block;width:50%;vertical-align:top;position:relative}.el-time-spinner__wrapper.el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__wrapper.is-arrow{box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:default}.el-time-spinner__arrow{font-size:12px;color:var(--el-text-color-secondary);position:absolute;left:0;width:100%;z-index:var(--el-index-normal);text-align:center;height:30px;line-height:30px;cursor:pointer}.el-time-spinner__arrow:hover{color:var(--el-color-primary)}.el-time-spinner__arrow.arrow-up{top:10px}.el-time-spinner__arrow.arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__input.el-input .el-input__inner{padding:0;text-align:center}.el-time-spinner__list{padding:0;margin:0;list-style:none;text-align:center}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";display:block;width:100%;height:80px}.el-time-spinner__item{height:32px;line-height:32px;font-size:12px;color:var(--el-text-color-regular)}.el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:pointer}.el-time-spinner__item.is-active:not(.is-disabled){color:var(--el-text-color-primary);font-weight:700}.el-time-spinner__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-picker__popper{--el-datepicker-border-color:var(--el-disabled-border-color)}.el-picker__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-datepicker-border-color);box-shadow:var(--el-box-shadow-light)}.el-picker__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-datepicker-border-color)}.el-picker__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-picker__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-date-editor{--el-date-editor-width:220px;--el-date-editor-monthrange-width:300px;--el-date-editor-daterange-width:350px;--el-date-editor-datetimerange-width:400px;--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);position:relative;display:inline-block;text-align:left}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-date-editor.el-input,.el-date-editor.el-input__wrapper{width:var(--el-date-editor-width);height:var(--el-input-height,var(--el-component-size))}.el-date-editor--monthrange{--el-date-editor-width:var(--el-date-editor-monthrange-width)}.el-date-editor--daterange,.el-date-editor--timerange{--el-date-editor-width:var(--el-date-editor-daterange-width)}.el-date-editor--datetimerange{--el-date-editor-width:var(--el-date-editor-datetimerange-width)}.el-date-editor--dates .el-input__wrapper{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .close-icon,.el-date-editor .clear-icon{cursor:pointer}.el-date-editor .clear-icon:hover{color:var(--el-text-color-secondary)}.el-date-editor .el-range__icon{height:inherit;font-size:14px;color:var(--el-text-color-placeholder);float:left}.el-date-editor .el-range__icon svg{vertical-align:middle}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:0;display:inline-block;height:30px;line-height:30px;margin:0;padding:0;width:39%;text-align:center;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);background-color:transparent}.el-date-editor .el-range-input::-moz-placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-input::placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-separator{flex:1;display:inline-flex;justify-content:center;align-items:center;height:100%;padding:0 5px;margin:0;font-size:14px;word-break:keep-all;color:var(--el-text-color-primary)}.el-date-editor .el-range__close-icon{font-size:14px;color:var(--el-text-color-placeholder);height:inherit;width:unset;cursor:pointer}.el-date-editor .el-range__close-icon:hover{color:var(--el-text-color-secondary)}.el-date-editor .el-range__close-icon svg{vertical-align:middle}.el-date-editor .el-range__close-icon--hidden{opacity:0;visibility:hidden}.el-range-editor.el-input__wrapper{display:inline-flex;align-items:center;padding:0 10px}.el-range-editor.is-active,.el-range-editor.is-active:hover{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-range-editor--large{line-height:var(--el-component-size-large)}.el-range-editor--large.el-input__wrapper{height:var(--el-component-size-large)}.el-range-editor--large .el-range-separator{line-height:40px;font-size:14px}.el-range-editor--large .el-range-input{height:38px;line-height:38px;font-size:14px}.el-range-editor--small{line-height:var(--el-component-size-small)}.el-range-editor--small.el-input__wrapper{height:var(--el-component-size-small)}.el-range-editor--small .el-range-separator{line-height:24px;font-size:12px}.el-range-editor--small .el-range-input{height:22px;line-height:22px;font-size:12px}.el-range-editor.is-disabled{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled:focus,.el-range-editor.is-disabled:hover{border-color:var(--el-disabled-border-color)}.el-range-editor.is-disabled input{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled input::-moz-placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled input::placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled .el-range-separator{color:var(--el-disabled-text-color)}.el-picker-panel{color:var(--el-text-color-regular);background:var(--el-bg-color-overlay);border-radius:var(--el-border-radius-base);line-height:30px}.el-picker-panel .el-time-panel{margin:5px 0;border:solid 1px var(--el-datepicker-border-color);background-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-picker-panel__body-wrapper:after,.el-picker-panel__body:after{content:"";display:table;clear:both}.el-picker-panel__content{position:relative;margin:15px}.el-picker-panel__footer{border-top:1px solid var(--el-datepicker-inner-border-color);padding:4px 12px;text-align:right;background-color:var(--el-bg-color-overlay);position:relative;font-size:0}.el-picker-panel__shortcut{display:block;width:100%;border:0;background-color:transparent;line-height:28px;font-size:14px;color:var(--el-datepicker-text-color);padding-left:12px;text-align:left;outline:0;cursor:pointer}.el-picker-panel__shortcut:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__shortcut.active{background-color:#e6f1fe;color:var(--el-datepicker-active-color)}.el-picker-panel__btn{border:1px solid var(--el-fill-color-darker);color:var(--el-text-color-primary);line-height:24px;border-radius:2px;padding:0 20px;cursor:pointer;background-color:transparent;outline:0;font-size:12px}.el-picker-panel__btn[disabled]{color:var(--el-text-color-disabled);cursor:not-allowed}.el-picker-panel__icon-btn{font-size:12px;color:var(--el-datepicker-icon-color);border:0;background:0 0;cursor:pointer;outline:0;margin-top:8px}.el-picker-panel__icon-btn:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn:focus-visible{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn.is-disabled{color:var(--el-text-color-disabled)}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__icon-btn .el-icon{cursor:pointer;font-size:inherit}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{position:absolute;top:0;bottom:0;width:110px;border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;padding-top:6px;background-color:var(--el-bg-color-overlay);overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-date-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-picker__time-header{position:relative;border-bottom:1px solid var(--el-datepicker-inner-border-color);font-size:12px;padding:8px 5px 5px;display:table;width:100%;box-sizing:border-box}.el-date-picker__header{margin:12px;text-align:center}.el-date-picker__header--bordered{margin-bottom:0;padding-bottom:12px;border-bottom:solid 1px var(--el-border-color-lighter)}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{font-size:16px;font-weight:500;padding:0 5px;line-height:22px;text-align:center;cursor:pointer;color:var(--el-text-color-regular)}.el-date-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label:focus-visible{outline:0;color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{padding:10px;text-align:center}.el-date-picker__time-label{float:left;cursor:pointer;line-height:30px;margin-left:10px}.el-date-picker .el-time-panel{position:absolute}.el-date-range-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{position:relative;text-align:center;height:28px}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__content{float:left;width:50%;box-sizing:border-box;margin:0;padding:16px}.el-date-range-picker__content.is-left{border-right:1px solid var(--el-datepicker-inner-border-color)}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{position:relative;border-bottom:1px solid var(--el-datepicker-inner-border-color);font-size:12px;padding:8px 5px 5px;display:table;width:100%;box-sizing:border-box}.el-date-range-picker__time-header>.el-icon-arrow-right{font-size:20px;vertical-align:middle;display:table-cell;color:var(--el-datepicker-icon-color)}.el-date-range-picker__time-picker-wrap{position:relative;display:table-cell;padding:0 5px}.el-date-range-picker__time-picker-wrap .el-picker-panel{position:absolute;top:13px;right:0;z-index:1;background:#fff}.el-date-range-picker__time-picker-wrap .el-time-panel{position:absolute}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{position:relative;text-align:center;padding:10px;z-index:1}.el-time-range-picker__cell{box-sizing:border-box;margin:0;padding:4px 7px 7px;width:50%;display:inline-block}.el-time-range-picker__header{margin-bottom:5px;text-align:center;font-size:14px}.el-time-range-picker__body{border-radius:2px;border:1px solid var(--el-datepicker-border-color)}.el-time-panel{border-radius:2px;position:relative;width:180px;left:0;z-index:var(--el-index-top);-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:content-box}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";top:50%;position:absolute;margin-top:-16px;height:32px;z-index:-1;left:0;right:0;box-sizing:border-box;padding-top:6px;text-align:left}.el-time-panel__content:after{left:50%;margin-left:12%;margin-right:12%}.el-time-panel__content:before{padding-left:50%;margin-right:12%;margin-left:12%;border-top:1px solid var(--el-border-color-light);border-bottom:1px solid var(--el-border-color-light)}.el-time-panel__content.has-seconds:after{left:66.6666666667%}.el-time-panel__content.has-seconds:before{padding-left:33.3333333333%}.el-time-panel__footer{border-top:1px solid var(--el-timepicker-inner-border-color,var(--el-border-color-light));padding:4px;height:36px;line-height:25px;text-align:right;box-sizing:border-box}.el-time-panel__btn{border:none;line-height:28px;padding:0 5px;margin:0 5px;cursor:pointer;background-color:transparent;outline:0;font-size:12px;color:var(--el-text-color-primary)}.el-time-panel__btn.confirm{font-weight:800;color:var(--el-timepicker-active-color,var(--el-color-primary))}.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary)}.el-descriptions__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;text-align:left;font-weight:400;line-height:23px;font-size:14px}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{font-weight:700;color:var(--el-text-color-regular);background:var(--el-descriptions-item-bordered-label-background)}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{position:fixed;left:0;top:0;width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color)}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:20px;--el-dialog-border-radius:var(--el-border-radius-small);position:relative;margin:var(--el-dialog-margin-top,15vh) auto 50px;background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:0!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;margin-bottom:0;height:100%;overflow:auto}.el-dialog__wrapper{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;margin:0}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-dialog__header{padding:var(--el-dialog-padding-primary);padding-bottom:10px;margin-right:16px}.el-dialog__headerbtn{position:absolute;top:6px;right:0;padding:0;width:54px;height:54px;background:0 0;border:none;outline:0;cursor:pointer;font-size:var(--el-message-close-size,16px)}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{line-height:var(--el-dialog-font-line-height);font-size:var(--el-dialog-title-font-size);color:var(--el-text-color-primary)}.el-dialog__body{padding:calc(var(--el-dialog-padding-primary) + 10px) var(--el-dialog-padding-primary);color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{padding:var(--el-dialog-padding-primary);padding-top:10px;text-align:right;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial;padding:25px calc(var(--el-dialog-padding-primary) + 5px) 30px}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-overlay-dialog{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes dialog-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-divider{position:relative}.el-divider--horizontal{display:block;height:1px;width:100%;margin:24px 0;border-top:1px var(--el-border-color) var(--el-border-style)}.el-divider--vertical{display:inline-block;width:1px;height:1em;margin:0 8px;vertical-align:middle;position:relative;border-left:1px var(--el-border-color) var(--el-border-style)}.el-divider__text{position:absolute;background-color:var(--el-bg-color);padding:0 20px;font-weight:500;color:var(--el-text-color-primary);font-size:14px}.el-divider__text.is-left{left:20px;transform:translateY(-50%)}.el-divider__text.is-center{left:50%;transform:translate(-50%) translateY(-50%)}.el-divider__text.is-right{right:20px;transform:translateY(-50%)}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color, var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary, 20px);position:absolute;box-sizing:border-box;background-color:var(--el-drawer-bg-color);display:flex;flex-direction:column;box-shadow:var(--el-box-shadow-dark);overflow:hidden;transition:all var(--el-transition-duration)}.el-drawer .rtl,.el-drawer .ltr,.el-drawer .ttb,.el-drawer .btt{transform:translate(0)}.el-drawer__sr-focus:focus{outline:0!important}.el-drawer__header{align-items:center;color:#72767b;display:flex;margin-bottom:32px;padding:var(--el-drawer-padding-primary);padding-bottom:0}.el-drawer__header>:first-child{flex:1}.el-drawer__title{margin:0;flex:1;line-height:inherit;font-size:1rem}.el-drawer__footer{padding:var(--el-drawer-padding-primary);padding-top:10px;text-align:right}.el-drawer__close-btn{display:inline-flex;border:none;cursor:pointer;font-size:var(--el-font-size-extra-large);color:inherit;background-color:transparent;outline:0}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{flex:1;padding:var(--el-drawer-padding-primary);overflow:auto}.el-drawer__body>*{box-sizing:border-box}.el-drawer.ltr,.el-drawer.rtl{height:100%;top:0;bottom:0}.el-drawer.btt,.el-drawer.ttb{width:100%;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.rtl{right:0}.el-drawer.ttb{top:0}.el-drawer.btt{bottom:0}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-active,.el-drawer-fade-enter-from,.el-drawer-fade-enter-to,.el-drawer-fade-leave-active,.el-drawer-fade-leave-from,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{opacity:0}.el-drawer-fade-enter-to,.el-drawer-fade-leave-from{opacity:1}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translate(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translate(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}.el-dropdown{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10;display:inline-flex;position:relative;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);line-height:1;vertical-align:top}.el-dropdown.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-dropdown__popper{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10}.el-dropdown__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-dropdown-menu-box-shadow)}.el-dropdown__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-dropdown__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-dropdown__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-dropdown__popper .el-dropdown-menu{border:none}.el-dropdown__popper .el-dropdown__popper-selfdefine{outline:0}.el-dropdown__popper .el-scrollbar__bar{z-index:calc(var(--el-dropdown-menu-index) + 1)}.el-dropdown__popper .el-dropdown__list{list-style:none;padding:0;margin:0;box-sizing:border-box}.el-dropdown .el-dropdown__caret-button{padding-left:0;padding-right:0;display:inline-flex;justify-content:center;align-items:center;width:32px;border-left:none}.el-dropdown .el-dropdown__caret-button>span{display:inline-flex}.el-dropdown .el-dropdown__caret-button:before{content:"";position:absolute;display:block;width:1px;top:-1px;bottom:-1px;left:0;background:var(--el-overlay-color-lighter)}.el-dropdown .el-dropdown__caret-button.el-button:before{background:var(--el-border-color);opacity:.5}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{font-size:inherit;padding-left:0}.el-dropdown .el-dropdown-selfdefine{outline:0}.el-dropdown--large .el-dropdown__caret-button{width:40px}.el-dropdown--small .el-dropdown__caret-button{width:24px}.el-dropdown-menu{position:relative;top:0;left:0;z-index:var(--el-dropdown-menu-index);padding:5px 0;margin:0;background-color:var(--el-bg-color-overlay);border:none;border-radius:var(--el-border-radius-base);box-shadow:none;list-style:none}.el-dropdown-menu__item{display:flex;align-items:center;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:0}.el-dropdown-menu__item:not(.is-disabled):focus{background-color:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{margin:6px 0;border-top:1px solid var(--el-border-color-lighter)}.el-dropdown-menu__item.is-disabled{cursor:not-allowed;color:var(--el-text-color-disabled)}.el-dropdown-menu--large{padding:7px 0}.el-dropdown-menu--large .el-dropdown-menu__item{padding:7px 20px;line-height:22px;font-size:14px}.el-dropdown-menu--large .el-dropdown-menu__item--divided{margin:8px 0}.el-dropdown-menu--small{padding:3px 0}.el-dropdown-menu--small .el-dropdown-menu__item{padding:2px 12px;line-height:20px;font-size:12px}.el-dropdown-menu--small .el-dropdown-menu__item--divided{margin:4px 0}.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;box-sizing:border-box;padding:var(--el-empty-padding)}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%;vertical-align:top;-o-object-fit:contain;object-fit:contain}.el-empty__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:100%;height:100%;vertical-align:top}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-secondary)}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)}.el-footer{--el-footer-padding:0 20px;--el-footer-height:60px;padding:var(--el-footer-padding);box-sizing:border-box;flex-shrink:0;height:var(--el-footer-height)}.el-form{--el-form-label-font-size:var(--el-font-size-base)}.el-form--label-left .el-form-item__label{justify-content:flex-start}.el-form--label-top .el-form-item{display:block}.el-form--label-top .el-form-item .el-form-item__label{display:block;height:auto;text-align:left;margin-bottom:8px;line-height:22px}.el-form--inline .el-form-item{display:inline-flex;vertical-align:middle;margin-right:32px}.el-form--inline.el-form--label-top{display:flex;flex-wrap:wrap}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-form--large.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:12px;line-height:22px}.el-form--default.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:8px;line-height:22px}.el-form--small.el-form--label-top .el-form-item .el-form-item__label{margin-bottom:4px;line-height:20px}.el-form-item{display:flex;--font-size:14px;margin-bottom:18px}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item__label-wrap{display:flex}.el-form-item__label{display:inline-flex;justify-content:flex-end;align-items:flex-start;flex:0 0 auto;font-size:var(--el-form-label-font-size);color:var(--el-text-color-regular);height:32px;line-height:32px;padding:0 12px 0 0;box-sizing:border-box}.el-form-item__content{display:flex;flex-wrap:wrap;align-items:center;flex:1;line-height:32px;position:relative;font-size:var(--font-size);min-width:0}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);font-size:12px;line-height:1;padding-top:2px;position:absolute;top:100%;left:0}.el-form-item__error--inline{position:relative;top:auto;left:auto;display:inline-block;margin-left:10px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before{content:"*";color:var(--el-color-danger);margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after{content:"*";color:var(--el-color-danger);margin-left:4px}.el-form-item.is-error .el-select-v2__wrapper,.el-form-item.is-error .el-select-v2__wrapper:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-input-group__prepend .el-input__wrapper{box-shadow:0 0 0 1px transparent inset}.el-form-item.is-error .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex}.el-header{--el-header-padding:0 20px;--el-header-height:60px;padding:var(--el-header-padding);box-sizing:border-box;flex-shrink:0;height:var(--el-header-height)}.el-image-viewer__wrapper{position:fixed;top:0;right:0;bottom:0;left:0}.el-image-viewer__btn{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;border-radius:50%;opacity:.8;cursor:pointer;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-image-viewer__btn .el-icon{font-size:inherit;cursor:pointer}.el-image-viewer__close{top:40px;right:40px;width:40px;height:40px;font-size:40px}.el-image-viewer__canvas{position:static;width:100%;height:100%;display:flex;justify-content:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-image-viewer__actions{left:50%;bottom:30px;transform:translate(-50%);width:282px;height:44px;padding:0 23px;background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px}.el-image-viewer__actions__inner{width:100%;height:100%;text-align:justify;cursor:default;font-size:23px;color:#fff;display:flex;align-items:center;justify-content:space-around}.el-image-viewer__prev{top:50%;transform:translateY(-50%);left:40px;width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__next{top:50%;transform:translateY(-50%);right:40px;text-indent:2px;width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__close{width:44px;height:44px;font-size:24px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff}.el-image-viewer__mask{position:absolute;width:100%;height:100%;top:0;left:0;opacity:.5;background:#000}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes viewer-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}.el-image__error,.el-image__inner,.el-image__placeholder,.el-image__wrapper{width:100%;height:100%}.el-image{position:relative;display:inline-block;overflow:hidden}.el-image__inner{vertical-align:top;opacity:1}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{position:absolute;top:0;left:0}.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{display:flex;justify-content:center;align-items:center;font-size:14px;background:var(--el-fill-color-light);color:var(--el-text-color-placeholder);vertical-align:middle}.el-image__preview{cursor:pointer}.el-input-number{position:relative;display:inline-flex;width:150px;line-height:30px}.el-input-number .el-input__wrapper{padding-left:42px;padding-right:42px}.el-input-number .el-input__inner{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;line-height:1}.el-input-number .el-input__inner::-webkit-inner-spin-button,.el-input-number .el-input__inner::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.el-input-number__decrease,.el-input-number__increase{display:flex;justify-content:center;align-items:center;height:auto;position:absolute;z-index:1;top:1px;bottom:1px;width:32px;background:var(--el-fill-color-light);color:var(--el-text-color-regular);cursor:pointer;font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:var(--el-color-primary)}.el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input_wrapper,.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input_wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-input-number__decrease.is-disabled,.el-input-number__increase.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-input-number__increase{right:1px;border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0;border-left:var(--el-border)}.el-input-number__decrease{left:1px;border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);border-right:var(--el-border)}.el-input-number.is-disabled .el-input-number__decrease,.el-input-number.is-disabled .el-input-number__increase{border-color:var(--el-disabled-border-color);color:var(--el-disabled-border-color)}.el-input-number.is-disabled .el-input-number__decrease:hover,.el-input-number.is-disabled .el-input-number__increase:hover{color:var(--el-disabled-border-color);cursor:not-allowed}.el-input-number--large{width:180px;line-height:38px}.el-input-number--large .el-input-number__decrease,.el-input-number--large .el-input-number__increase{width:40px;font-size:14px}.el-input-number--large .el-input__wrapper{padding-left:47px;padding-right:47px}.el-input-number--small{width:120px;line-height:22px}.el-input-number--small .el-input-number__decrease,.el-input-number--small .el-input-number__increase{width:24px;font-size:12px}.el-input-number--small .el-input__wrapper{padding-left:31px;padding-right:31px}.el-input-number--small .el-input-number__decrease [class*=el-icon],.el-input-number--small .el-input-number__increase [class*=el-icon]{transform:scale(.9)}.el-input-number.is-without-controls .el-input__wrapper{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__wrapper{padding-left:15px;padding-right:42px}.el-input-number.is-controls-right .el-input-number__decrease,.el-input-number.is-controls-right .el-input-number__increase{--el-input-number-controls-height:15px;height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon],.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon]{transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{bottom:auto;left:auto;border-radius:0 var(--el-border-radius-base) 0 0;border-bottom:var(--el-border)}.el-input-number.is-controls-right .el-input-number__decrease{right:1px;top:auto;left:auto;border-right:none;border-left:var(--el-border);border-radius:0 0 var(--el-border-radius-base) 0}.el-input-number.is-controls-right[class*=large] [class*=decrease],.el-input-number.is-controls-right[class*=large] [class*=increase]{--el-input-number-controls-height:19px}.el-input-number.is-controls-right[class*=small] [class*=decrease],.el-input-number.is-controls-right[class*=small] [class*=increase]{--el-input-number-controls-height:11px}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);position:relative;display:inline-block;width:100%;vertical-align:bottom;font-size:var(--el-font-size-base)}.el-textarea__inner{position:relative;display:block;resize:vertical;padding:5px 11px;line-height:1.5;box-sizing:border-box;width:100%;font-size:inherit;font-family:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);border:none}.el-textarea__inner::-moz-placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{outline:0;box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);position:absolute;font-size:12px;line-height:14px;bottom:5px;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::-moz-placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{border-color:var(--el-color-danger)}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-height:var(--el-component-size);position:relative;font-size:var(--el-font-size-base);display:inline-flex;width:100%;line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{border-radius:5px;width:6px;background:var(--el-text-color-disabled)}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);font-size:14px;cursor:pointer}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;display:inline-flex;align-items:center;color:var(--el-color-info);font-size:12px}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;display:inline-block;padding-left:8px}.el-input__wrapper{display:inline-flex;flex-grow:1;align-items:center;justify-content:center;padding:1px 11px;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 32px) - 2px);width:100%;flex-grow:1;-webkit-appearance:none;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);padding:0;outline:0;border:none;background:0 0;box-sizing:border-box}.el-input__inner:focus{outline:0}.el-input__inner::-moz-placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__prefix{display:inline-flex;white-space:nowrap;flex-shrink:0;flex-wrap:nowrap;height:100%;text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none}.el-input__prefix-inner{pointer-events:all;display:inline-flex;align-items:center;justify-content:center}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{display:inline-flex;white-space:nowrap;flex-shrink:0;flex-wrap:nowrap;height:100%;text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none}.el-input__suffix-inner{pointer-events:all;display:inline-flex;align-items:center;justify-content:center}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;display:flex;justify-content:center;align-items:center;transition:all var(--el-transition-duration);margin-left:8px}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color,) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::-moz-placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 24px) - 2px)}.el-input-group{display:inline-flex;width:100%;align-items:stretch}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:100%;border-radius:var(--el-input-border-radius);padding:0 20px;white-space:nowrap}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:0}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:0 -20px}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-input__wrapper,.el-input-group__append div.el-select:hover .el-input__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-input__wrapper,.el-input-group__prepend div.el-select:hover .el-input__wrapper{border-color:transparent;background-color:transparent;color:inherit}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group__append{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper{box-shadow:1px 0 0 0 var(--el-input-focus-border-color) inset,1px 0 0 0 var(--el-input-focus-border-color),0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important;z-index:2}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper:focus{outline:0;z-index:2;box-shadow:1px 0 0 0 var(--el-input-focus-border-color) inset,1px 0 0 0 var(--el-input-focus-border-color),0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__wrapper{z-index:1;box-shadow:1px 0 0 0 var(--el-input-hover-border-color) inset,1px 0 0 0 var(--el-input-hover-border-color),0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__wrapper{z-index:2;box-shadow:-1px 0 0 0 var(--el-input-focus-border-color),-1px 0 0 0 var(--el-input-focus-border-color) inset,0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important}.el-input-group--append .el-input-group__append .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select:hover .el-input__wrapper{z-index:1;box-shadow:-1px 0 0 0 var(--el-input-hover-border-color),-1px 0 0 0 var(--el-input-hover-border-color) inset,0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important}.el-link{--el-link-font-size:var(--el-font-size-base);--el-link-font-weight:var(--el-font-weight-primary);--el-link-text-color:var(--el-text-color-regular);--el-link-hover-text-color:var(--el-color-primary);--el-link-disabled-text-color:var(--el-text-color-placeholder);display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;text-decoration:none;outline:0;cursor:pointer;padding:0;font-size:var(--el-link-font-size);font-weight:var(--el-link-font-weight);color:var(--el-link-text-color)}.el-link:hover{color:var(--el-link-hover-text-color)}.el-link.is-underline:hover:after{content:"";position:absolute;left:0;right:0;height:0;bottom:0;border-bottom:1px solid var(--el-link-hover-text-color)}.el-link.is-disabled{color:var(--el-link-disabled-text-color);cursor:not-allowed}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link.el-link--default:after{border-color:var(--el-link-hover-text-color)}.el-link__inner{display:inline-flex;justify-content:center;align-items:center}.el-link.el-link--primary{--el-link-text-color:var(--el-color-primary);--el-link-hover-text-color:var(--el-color-primary-light-3);--el-link-disabled-text-color:var(--el-color-primary-light-5)}.el-link.el-link--primary:after{border-color:var(--el-link-text-color)}.el-link.el-link--primary.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--success{--el-link-text-color:var(--el-color-success);--el-link-hover-text-color:var(--el-color-success-light-3);--el-link-disabled-text-color:var(--el-color-success-light-5)}.el-link.el-link--success:after{border-color:var(--el-link-text-color)}.el-link.el-link--success.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--warning{--el-link-text-color:var(--el-color-warning);--el-link-hover-text-color:var(--el-color-warning-light-3);--el-link-disabled-text-color:var(--el-color-warning-light-5)}.el-link.el-link--warning:after{border-color:var(--el-link-text-color)}.el-link.el-link--warning.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--danger{--el-link-text-color:var(--el-color-danger);--el-link-hover-text-color:var(--el-color-danger-light-3);--el-link-disabled-text-color:var(--el-color-danger-light-5)}.el-link.el-link--danger:after{border-color:var(--el-link-text-color)}.el-link.el-link--danger.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--error{--el-link-text-color:var(--el-color-error);--el-link-hover-text-color:var(--el-color-error-light-3);--el-link-disabled-text-color:var(--el-color-error-light-5)}.el-link.el-link--error:after{border-color:var(--el-link-text-color)}.el-link.el-link--error.is-underline:hover:after{border-color:var(--el-link-text-color)}.el-link.el-link--info{--el-link-text-color:var(--el-color-info);--el-link-hover-text-color:var(--el-color-info-light-3);--el-link-disabled-text-color:var(--el-color-info-light-5)}.el-link.el-link--info:after{border-color:var(--el-link-text-color)}.el-link.el-link--info.is-underline:hover:after{border-color:var(--el-link-text-color)}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{position:absolute;z-index:2000;background-color:var(--el-mask-color);margin:0;top:0;right:0;bottom:0;left:0;transition:opacity var(--el-transition-duration)}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/ 2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{top:50%;margin-top:calc((0px - var(--el-loading-spinner-size))/ 2);width:100%;text-align:center;position:absolute}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);margin:3px 0;font-size:14px}.el-loading-spinner .circular{display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size);animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--el-color-primary);stroke-linecap:round}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-main{--el-main-padding:20px;display:block;flex:1;flex-basis:auto;overflow:auto;box-sizing:border-box;padding:var(--el-main-padding)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);list-style:none;position:relative;margin:0;padding-left:0;background-color:var(--el-menu-bg-color);box-sizing:border-box}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu--horizontal{display:flex;flex-wrap:nowrap;border-bottom:solid 1px var(--el-menu-border-color);border-right:none}.el-menu--horizontal>.el-menu-item{display:inline-flex;justify-content:center;align-items:center;height:100%;margin:0;border-bottom:2px solid transparent;color:var(--el-menu-text-color)}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-menu-item:not(.is-disabled):focus,.el-menu--horizontal>.el-menu-item:not(.is-disabled):hover{background-color:#fff}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:0}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;border-bottom:2px solid transparent;color:var(--el-menu-text-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-bg-color-overlay)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{background-color:var(--el-menu-bg-color);display:flex;align-items:center;height:var(--el-menu-horizontal-sub-item-height);padding:0 10px;color:var(--el-menu-text-color)}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{outline:0;color:var(--el-menu-hover-text-color);background-color:var(--el-menu-hover-bg-color)}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding) * 2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{margin:0;vertical-align:middle;width:var(--el-menu-icon-width);text-align:center}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--popup{z-index:100;min-width:200px;border:none;padding:5px 0;border-radius:var(--el-border-radius-small);box-shadow:var(--el-box-shadow-light)}.el-menu .el-icon{flex-shrink:0}.el-menu-item{display:flex;align-items:center;height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);list-style:none;cursor:pointer;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:focus,.el-menu-item:hover{outline:0}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon]{margin-right:5px;width:var(--el-menu-icon-width);text-align:center;font-size:18px;vertical-align:middle}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{position:absolute;left:0;top:0;height:100%;width:100%;display:inline-flex;align-items:center;box-sizing:border-box;padding:0 var(--el-menu-base-level-padding)}.el-sub-menu{list-style:none;margin:0;padding-left:0}.el-sub-menu__title{display:flex;align-items:center;height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);list-style:none;cursor:pointer;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:focus,.el-sub-menu__title:hover{outline:0}.el-sub-menu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-menu-item,.el-sub-menu.is-disabled .el-sub-menu__title{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu .el-icon{vertical-align:middle;margin-right:5px;width:var(--el-menu-icon-width);text-align:center;font-size:18px}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{position:absolute;top:50%;right:var(--el-menu-base-level-padding);margin-top:-6px;transition:transform var(--el-transition-duration);font-size:12px;margin-right:0;width:inherit}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px var(--el-menu-base-level-padding);line-height:normal;font-size:12px;color:var(--el-text-color-secondary)}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{transition:var(--el-transition-duration-fast);opacity:0}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:15px;display:inline-block;max-width:var(--el-messagebox-width);width:100%;padding-bottom:10px;vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);border:1px solid var(--el-border-color-lighter);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-box-shadow-light);text-align:left;overflow:hidden;backface-visibility:hidden}.el-message-box:focus{outline:0!important}.el-overlay.is-message-box .el-overlay-message-box{text-align:center;position:fixed;top:0;right:0;bottom:0;left:0;padding:16px;overflow:auto}.el-overlay.is-message-box .el-overlay-message-box:after{content:"";display:inline-block;height:100%;width:0;vertical-align:middle}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-message-box__header{position:relative;padding:var(--el-messagebox-padding-primary);padding-bottom:10px}.el-message-box__title{padding-left:0;margin-bottom:0;font-size:var(--el-messagebox-font-size);line-height:1;color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{position:absolute;top:var(--el-messagebox-padding-primary);right:var(--el-messagebox-padding-primary);padding:0;border:none;outline:0;background:0 0;font-size:var(--el-message-close-size,16px);cursor:pointer}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{padding:10px var(--el-messagebox-padding-primary);color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{position:relative}.el-message-box__input{padding-top:15px}.el-message-box__input div.invalid>input{border-color:var(--el-color-error)}.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{position:absolute;top:50%;transform:translateY(-50%);font-size:24px!important}.el-message-box__status:before{padding-left:1px}.el-message-box__status.el-icon{position:absolute}.el-message-box__status+.el-message-box__message{padding-left:36px;padding-right:12px;word-break:break-word}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{margin:0}.el-message-box__message p{margin:0;line-height:24px}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);min-height:18px;margin-top:2px}.el-message-box__btns{padding:5px 15px 0;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center}.el-message-box__btns button:nth-child(2){margin-left:10px}.el-message-box__btns-reverse{flex-direction:row-reverse}.el-message-box--center .el-message-box__title{position:relative;display:flex;align-items:center;justify-content:center}.el-message-box--center .el-message-box__status{position:relative;top:auto;padding-right:5px;text-align:center;transform:translateY(-1px)}.el-message-box--center .el-message-box__message{margin-left:0}.el-message-box--center .el-message-box__btns{justify-content:center}.el-message-box--center .el-message-box__content{padding-left:calc(var(--el-messagebox-padding-primary) + 12px);padding-right:calc(var(--el-messagebox-padding-primary) + 12px);text-align:center}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{transform:translate3d(0,-20px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes msgbox-fade-out{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,-20px,0);opacity:0}}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:15px 19px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);width:-moz-fit-content;width:fit-content;max-width:calc(100% - 32px);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);position:fixed;left:50%;top:20px;transform:translate(-50%);background-color:var(--el-message-bg-color);transition:opacity var(--el-transition-duration),transform .4s,top .4s;padding:var(--el-message-padding);display:flex;align-items:center}.el-message.is-center{justify-content:center}.el-message.is-closable .el-message__content{padding-right:31px}.el-message p{margin:0}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message__icon{margin-right:10px}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{position:absolute;top:50%;right:19px;transform:translateY(-50%);cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0;transform:translate(-50%,-100%)}.el-notification{--el-notification-width:330px;--el-notification-padding:14px 26px 14px 13px;--el-notification-radius:8px;--el-notification-shadow:var(--el-box-shadow-light);--el-notification-border-color:var(--el-border-color-lighter);--el-notification-icon-size:24px;--el-notification-close-font-size:var(--el-message-close-size, 16px);--el-notification-group-margin-left:13px;--el-notification-group-margin-right:8px;--el-notification-content-font-size:var(--el-font-size-base);--el-notification-content-color:var(--el-text-color-regular);--el-notification-title-font-size:16px;--el-notification-title-color:var(--el-text-color-primary);--el-notification-close-color:var(--el-text-color-secondary);--el-notification-close-hover-color:var(--el-text-color-regular);display:flex;width:var(--el-notification-width);padding:var(--el-notification-padding);border-radius:var(--el-notification-radius);box-sizing:border-box;border:1px solid var(--el-notification-border-color);position:fixed;background-color:var(--el-bg-color-overlay);box-shadow:var(--el-notification-shadow);transition:opacity var(--el-transition-duration),transform var(--el-transition-duration),left var(--el-transition-duration),right var(--el-transition-duration),top .4s,bottom var(--el-transition-duration);overflow-wrap:anywhere;overflow:hidden;z-index:9999}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:var(--el-notification-group-margin-left);margin-right:var(--el-notification-group-margin-right)}.el-notification__title{font-weight:700;font-size:var(--el-notification-title-font-size);line-height:var(--el-notification-icon-size);color:var(--el-notification-title-color);margin:0}.el-notification__content{font-size:var(--el-notification-content-font-size);line-height:24px;margin:6px 0 0;color:var(--el-notification-content-color);text-align:justify}.el-notification__content p{margin:0}.el-notification .el-notification__icon{height:var(--el-notification-icon-size);width:var(--el-notification-icon-size);font-size:var(--el-notification-icon-size)}.el-notification .el-notification__closeBtn{position:absolute;top:18px;right:15px;cursor:pointer;color:var(--el-notification-close-color);font-size:var(--el-notification-close-font-size)}.el-notification .el-notification__closeBtn:hover{color:var(--el-notification-close-hover-color)}.el-notification .el-notification--success{--el-notification-icon-color:var(--el-color-success);color:var(--el-notification-icon-color)}.el-notification .el-notification--info{--el-notification-icon-color:var(--el-color-info);color:var(--el-notification-icon-color)}.el-notification .el-notification--warning{--el-notification-icon-color:var(--el-color-warning);color:var(--el-notification-icon-color)}.el-notification .el-notification--error{--el-notification-icon-color:var(--el-color-error);color:var(--el-notification-icon-color)}.el-notification-fade-enter-from.right{right:0;transform:translate(100%)}.el-notification-fade-enter-from.left{left:0;transform:translate(-100%)}.el-notification-fade-leave-to{opacity:0}.el-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;height:100%;background-color:var(--el-overlay-color-lighter);overflow:auto}.el-overlay .el-overlay-root{height:0}.el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{display:flex;align-items:center;justify-content:space-between;line-height:24px}.el-page-header__left{display:flex;align-items:center;margin-right:40px;position:relative}.el-page-header__back{display:flex;align-items:center;cursor:pointer}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{font-size:16px;margin-right:10px;display:flex;align-items:center}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{font-size:18px;color:var(--el-text-color-primary)}.el-page-header__breadcrumb{margin-bottom:16px}.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-item-gap:16px;white-space:nowrap;color:var(--el-pagination-text-color);font-size:var(--el-pagination-font-size);font-weight:400;display:flex;align-items:center}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield}.el-pagination .el-select .el-input{width:128px}.el-pagination button{display:flex;justify-content:center;align-items:center;font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);padding:0 4px;border:none;border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box}.el-pagination button *{pointer-events:none}.el-pagination button:focus{outline:0}.el-pagination button:hover{color:var(--el-pagination-hover-color)}.el-pagination button.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pagination button.is-active.is-disabled{font-weight:700;color:var(--el-text-color-secondary)}.el-pagination button.is-disabled,.el-pagination button:disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pagination button:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700;width:inherit}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{margin-left:var(--el-pagination-item-gap);font-weight:400;color:var(--el-text-color-regular)}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{display:flex;align-items:center;margin-left:var(--el-pagination-item-gap);font-weight:400;color:var(--el-text-color-regular)}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{text-align:center;box-sizing:border-box}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{flex:1;display:flex;align-items:center;justify-content:flex-end}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{margin:0 4px;background-color:var(--el-pagination-button-bg-color)}.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.is-disabled,.el-pagination.is-background .el-pager li:disabled{color:var(--el-text-color-placeholder);background-color:var(--el-disabled-bg-color)}.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active{color:var(--el-text-color-secondary);background-color:var(--el-fill-color-dark)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li{height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);font-size:var(--el-pagination-font-size-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select .el-input{width:100px}.el-pager{-webkit-user-select:none;-moz-user-select:none;user-select:none;list-style:none;font-size:0;padding:0;margin:0;display:flex;align-items:center}.el-pager li{display:flex;justify-content:center;align-items:center;font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);padding:0 4px;border:none;border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:0}.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{font-weight:700;color:var(--el-text-color-secondary)}.el-pager li.is-disabled,.el-pager li:disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-popconfirm__main{display:flex;align-items:center}.el-popconfirm__icon{margin-right:5px}.el-popconfirm__action{text-align:right;margin-top:8px}.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);min-width:150px;border-radius:var(--el-popover-border-radius);border:1px solid var(--el-popover-border-color);padding:var(--el-popover-padding);z-index:var(--el-index-popper);color:var(--el-text-color-regular);line-height:1.4;text-align:justify;font-size:var(--el-popover-font-size);box-shadow:var(--el-box-shadow-light);word-break:break-all;box-sizing:border-box}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);line-height:1;margin-bottom:12px}.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus,.el-popover.el-popper:focus:active{outline-width:0}.el-progress{position:relative;line-height:1;display:flex;align-items:center}.el-progress__text{font-size:14px;color:var(--el-text-color-regular);margin-left:5px;min-width:50px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{position:absolute;top:50%;left:0;width:100%;text-align:center;margin:0;transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{padding-right:0;margin-right:0;display:block}.el-progress--text-inside .el-progress-bar{padding-right:0;margin-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{flex-grow:1;box-sizing:border-box}.el-progress-bar__outer{height:6px;border-radius:100px;background-color:var(--el-border-color-lighter);overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{position:absolute;left:0;top:0;height:100%;background-color:var(--el-color-primary);text-align:right;border-radius:100px;line-height:1;white-space:nowrap;transition:width .6s ease}.el-progress-bar__inner:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-progress-bar__inner--indeterminate{transform:translateZ(0);animation:indeterminate 3s infinite}.el-progress-bar__innerText{display:inline-block;vertical-align:middle;color:#fff;font-size:12px;margin:0 5px}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}.el-radio-button{--el-radio-button-checked-bg-color:var(--el-color-primary);--el-radio-button-checked-text-color:var(--el-color-white);--el-radio-button-checked-border-color:var(--el-color-primary);--el-radio-button-disabled-checked-fill:var(--el-border-color-extra-light);position:relative;display:inline-block;outline:0}.el-radio-button__inner{display:inline-block;line-height:1;white-space:nowrap;vertical-align:middle;background:var(--el-button-bg-color,var(--el-fill-color-blank));border:var(--el-border);font-weight:var(--el-button-font-weight,var(--el-font-weight-primary));border-left:0;color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;outline:0;margin:0;position:relative;cursor:pointer;transition:var(--el-transition-all);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:8px 15px;font-size:var(--el-font-size-base);border-radius:0}.el-radio-button__inner.is-round{padding:8px 15px}.el-radio-button__inner:hover{color:var(--el-color-primary)}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-left:var(--el-border);border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);box-shadow:none!important}.el-radio-button__original-radio{opacity:0;outline:0;position:absolute;z-index:-1}.el-radio-button__original-radio:checked+.el-radio-button__inner{color:var(--el-radio-button-checked-text-color,var(--el-color-white));background-color:var(--el-radio-button-checked-bg-color,var(--el-color-primary));border-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));box-shadow:-1px 0 0 0 var(--el-radio-button-checked-border-color,var(--el-color-primary))}.el-radio-button__original-radio:focus-visible+.el-radio-button__inner{border-left:var(--el-border);border-left-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));outline:2px solid var(--el-radio-button-checked-border-color);outline-offset:1px;z-index:2;border-radius:var(--el-border-radius-base);box-shadow:none}.el-radio-button__original-radio:disabled+.el-radio-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-radio-button__original-radio:disabled:checked+.el-radio-button__inner{background-color:var(--el-radio-button-disabled-checked-fill)}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0}.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:var(--el-border-radius-base)}.el-radio-button--large .el-radio-button__inner{padding:12px 19px;font-size:var(--el-font-size-base);border-radius:0}.el-radio-button--large .el-radio-button__inner.is-round{padding:12px 19px}.el-radio-button--small .el-radio-button__inner{padding:5px 11px;font-size:12px;border-radius:0}.el-radio-button--small .el-radio-button__inner.is-round{padding:5px 11px}.el-radio-group{display:inline-flex;align-items:center;flex-wrap:wrap;font-size:0}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary);color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;outline:0;font-size:var(--el-font-size-base);-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:32px;height:32px}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.is-bordered.el-radio--small{padding:0 11px 0 7px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);position:relative;cursor:pointer;display:inline-block;box-sizing:border-box}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{width:4px;height:4px;border-radius:var(--el-radio-input-border-radius);background-color:var(--el-color-white);content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px}.el-rate{--el-rate-height:20px;--el-rate-font-size:var(--el-font-size-base);--el-rate-icon-size:18px;--el-rate-icon-margin:6px;--el-rate-void-color:var(--el-border-color-darker);--el-rate-fill-color:#f7ba2a;--el-rate-disabled-void-color:var(--el-fill-color);--el-rate-text-color:var(--el-text-color-primary);display:inline-flex;align-items:center;height:32px}.el-rate:active,.el-rate:focus{outline:0}.el-rate__item{cursor:pointer;display:inline-block;position:relative;font-size:0;vertical-align:middle;color:var(--el-rate-void-color);line-height:normal}.el-rate .el-rate__icon{position:relative;display:inline-block;font-size:var(--el-rate-icon-size);margin-right:var(--el-rate-icon-margin);transition:var(--el-transition-duration)}.el-rate .el-rate__icon.hover{transform:scale(1.15)}.el-rate .el-rate__icon .path2{position:absolute;left:0;top:0}.el-rate .el-rate__icon.is-active{color:var(--el-rate-fill-color)}.el-rate__decimal{position:absolute;top:0;left:0;display:inline-block;overflow:hidden;color:var(--el-rate-fill-color)}.el-rate__text{font-size:var(--el-rate-font-size);vertical-align:middle;color:var(--el-rate-text-color)}.el-rate--large{height:40px}.el-rate--small{height:24px}.el-rate.is-disabled .el-rate__item{cursor:auto;color:var(--el-rate-disabled-void-color)}.el-result{--el-result-padding:40px 30px;--el-result-icon-font-size:64px;--el-result-title-font-size:20px;--el-result-title-margin-top:20px;--el-result-subtitle-margin-top:10px;--el-result-extra-margin-top:30px;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;box-sizing:border-box;padding:var(--el-result-padding)}.el-result__icon svg{width:var(--el-result-icon-font-size);height:var(--el-result-icon-font-size)}.el-result__title{margin-top:var(--el-result-title-margin-top)}.el-result__title p{margin:0;font-size:var(--el-result-title-font-size);color:var(--el-text-color-primary);line-height:1.3}.el-result__subtitle{margin-top:var(--el-result-subtitle-margin-top)}.el-result__subtitle p{margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);line-height:1.3}.el-result__extra{margin-top:var(--el-result-extra-margin-top)}.el-result .icon-primary{--el-result-color:var(--el-color-primary);color:var(--el-result-color)}.el-result .icon-success{--el-result-color:var(--el-color-success);color:var(--el-result-color)}.el-result .icon-warning{--el-result-color:var(--el-color-warning);color:var(--el-result-color)}.el-result .icon-danger{--el-result-color:var(--el-color-danger);color:var(--el-result-color)}.el-result .icon-error{--el-result-color:var(--el-color-error);color:var(--el-result-color)}.el-result .icon-info{--el-result-color:var(--el-color-info);color:var(--el-result-color)}.el-row{display:flex;flex-wrap:wrap;position:relative;box-sizing:border-box}.el-row.is-justify-center{justify-content:center}.el-row.is-justify-end{justify-content:flex-end}.el-row.is-justify-space-between{justify-content:space-between}.el-row.is-justify-space-around{justify-content:space-around}.el-row.is-justify-space-evenly{justify-content:space-evenly}.el-row.is-align-middle{align-items:center}.el-row.is-align-bottom{align-items:flex-end}.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);overflow:hidden;position:relative;height:100%}.el-scrollbar__wrap{overflow:auto;height:100%}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{position:relative;display:block;width:0;height:0;cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3)}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{position:absolute;right:2px;bottom:2px;z-index:1;border-radius:4px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-select-dropdown__option-item.is-selected:not(.is-multiple).is-disabled{color:var(--el-text-color-disabled)}.el-select-dropdown__option-item.is-selected:not(.is-multiple).is-disabled:after{background-color:var(--el-text-color-disabled)}.el-select-dropdown__option-item:hover:not(.hover){background-color:transparent}.el-select-dropdown.is-multiple .el-select-dropdown__option-item.is-disabled.is-selected{color:var(--el-text-color-disabled)}.el-select-dropdown__list{list-style:none;margin:6px 0!important;padding:0!important;box-sizing:border-box}.el-select-dropdown__option-item{font-size:var(--el-select-font-size);padding:0 32px 0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--el-text-color-regular);height:34px;line-height:34px;box-sizing:border-box;cursor:pointer}.el-select-dropdown__option-item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select-dropdown__option-item.is-disabled:hover{background-color:var(--el-bg-color)}.el-select-dropdown__option-item.is-selected{background-color:var(--el-fill-color-light);font-weight:700}.el-select-dropdown__option-item.is-selected:not(.is-multiple){color:var(--el-color-primary)}.el-select-dropdown__option-item.hover{background-color:var(--el-fill-color-light)!important}.el-select-dropdown__option-item:hover{background-color:var(--el-fill-color-light)}.el-select-dropdown.is-multiple .el-select-dropdown__option-item.is-selected{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay)}.el-select-dropdown.is-multiple .el-select-dropdown__option-item.is-selected .el-icon{position:absolute;right:20px;top:0;height:inherit;font-size:12px}.el-select-dropdown.is-multiple .el-select-dropdown__option-item.is-selected .el-icon svg{height:inherit;vertical-align:middle}.el-select-group{margin:0;padding:0}.el-select-group__wrap{position:relative;list-style:none;margin:0;padding:0}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type):after{content:"";position:absolute;display:block;left:20px;right:20px;bottom:12px;height:1px;background:var(--el-border-color-light)}.el-select-group__split-dash{position:absolute;left:20px;right:20px;height:1px;background:var(--el-border-color-light)}.el-select-group__title{padding-left:20px;font-size:12px;color:var(--el-color-info);line-height:30px}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select-v2{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;display:inline-block;position:relative;vertical-align:middle;font-size:14px}.el-select-v2__wrapper{display:flex;align-items:center;flex-wrap:wrap;position:relative;box-sizing:border-box;cursor:pointer;padding:1px 30px 1px 0;border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-base);background-color:var(--el-fill-color-blank);transition:var(--el-transition-duration)}.el-select-v2__wrapper:hover{border-color:var(--el-text-color-placeholder)}.el-select-v2__wrapper.is-filterable{cursor:text}.el-select-v2__wrapper.is-focused{border-color:var(--el-color-primary)}.el-select-v2__wrapper.is-hovering:not(.is-focused){border-color:var(--el-border-color-hover)}.el-select-v2__wrapper.is-disabled{cursor:not-allowed;background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);border-color:var(--el-select-disabled-border)}.el-select-v2__wrapper.is-disabled:hover{border-color:var(--el-select-disabled-border)}.el-select-v2__wrapper.is-disabled.is-focus{border-color:var(--el-input-focus-border-color)}.el-select-v2__wrapper.is-disabled .is-transparent{opacity:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-select-v2__wrapper.is-disabled .el-select-v2__caret,.el-select-v2__wrapper.is-disabled .el-select-v2__combobox-input{cursor:not-allowed}.el-select-v2__wrapper .el-select-v2__input-wrapper{box-sizing:border-box;position:relative;margin-inline-start:12px;max-width:100%;overflow:hidden}.el-select-v2__wrapper,.el-select-v2__wrapper .el-select-v2__input-wrapper{line-height:32px}.el-select-v2__wrapper .el-select-v2__input-wrapper input{--el-input-inner-height:calc(var(--el-component-size, 32px) - 8px);height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);min-width:4px;width:100%;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:none;margin:2px 0;outline:0;padding:0}.el-select-v2 .el-select-v2__tags-text{display:inline-block;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-select-v2__empty{padding:10px 0;margin:0;text-align:center;color:var(--el-text-color-secondary);font-size:14px}.el-select-v2__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-select-v2__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select-v2__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-select-v2__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-select-v2__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-select-v2__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-select-v2--large .el-select-v2__wrapper .el-select-v2__combobox-input{height:32px}.el-select-v2--large .el-select-v2__caret,.el-select-v2--large .el-select-v2__suffix{height:40px}.el-select-v2--large .el-select-v2__placeholder{font-size:14px;line-height:40px}.el-select-v2--small .el-select-v2__wrapper .el-select-v2__combobox-input{height:16px}.el-select-v2--small .el-select-v2__caret,.el-select-v2--small .el-select-v2__suffix{height:24px}.el-select-v2--small .el-select-v2__placeholder{font-size:12px;line-height:24px}.el-select-v2 .el-select-v2__selection>span{display:inline-block}.el-select-v2:hover .el-select-v2__combobox-input{border-color:var(--el-select-border-color-hover)}.el-select-v2 .el-select__selection-text{text-overflow:ellipsis;display:inline-block;overflow-x:hidden;vertical-align:bottom}.el-select-v2 .el-select-v2__combobox-input{padding-right:35px;display:block;color:var(--el-text-color-regular)}.el-select-v2 .el-select-v2__combobox-input:focus{border-color:var(--el-select-input-focus-border-color)}.el-select-v2__input{border:none;outline:0;padding:0;margin-left:15px;color:var(--el-select-multiple-input-color);font-size:var(--el-select-font-size);-webkit-appearance:none;-moz-appearance:none;appearance:none;height:28px}.el-select-v2__input.is-small{height:14px}.el-select-v2__close{cursor:pointer;position:absolute;top:8px;z-index:var(--el-index-top);right:25px;color:var(--el-select-input-color);line-height:18px;font-size:var(--el-select-input-font-size)}.el-select-v2__close:hover{color:var(--el-select-close-hover-color)}.el-select-v2__suffix{display:inline-flex;position:absolute;right:12px;height:32px;top:50%;transform:translateY(-50%);color:var(--el-input-icon-color,var(--el-text-color-placeholder))}.el-select-v2__suffix .el-input__icon{height:inherit}.el-select-v2__caret{color:var(--el-select-input-color);font-size:var(--el-select-input-font-size);transition:var(--el-transition-duration);transform:rotate(180deg);cursor:pointer}.el-select-v2__caret.is-reverse{transform:rotate(0)}.el-select-v2__caret.is-show-close{font-size:var(--el-select-font-size);text-align:center;transform:rotate(180deg);border-radius:var(--el-border-radius-circle);color:var(--el-select-input-color);transition:var(--el-transition-color)}.el-select-v2__caret.is-show-close:hover{color:var(--el-select-close-hover-color)}.el-select-v2__caret.el-icon{height:inherit}.el-select-v2__caret.el-icon svg{vertical-align:middle}.el-select-v2__selection{white-space:normal;z-index:var(--el-index-normal);display:flex;align-items:center;flex-wrap:wrap}.el-select-v2__input-calculator{left:0;position:absolute;top:0;visibility:hidden;white-space:pre;z-index:999}.el-select-v2__selected-item{line-height:inherit;height:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;flex-wrap:wrap}.el-select-v2__placeholder{position:absolute;top:50%;transform:translateY(-50%);margin-inline-start:12px;width:calc(100% - 52px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--el-input-text-color,var(--el-text-color-regular))}.el-select-v2__placeholder.is-transparent{color:var(--el-text-color-placeholder)}.el-select-v2 .el-select-v2__selection .el-tag{box-sizing:border-box;border-color:transparent;margin:2px 0 2px 6px;background-color:var(--el-fill-color)}.el-select-v2 .el-select-v2__selection .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);right:-7px;color:var(--el-color-white)}.el-select-v2 .el-select-v2__selection .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select-v2 .el-select-v2__selection .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select-v2.el-select-v2--small .el-select-v2__selection .el-tag{margin:1px 0 1px 6px;height:18px}.el-select-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:var(--el-fill-color-light)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected:after{content:"";position:absolute;top:50%;right:20px;border-top:none;border-right:none;background-repeat:no-repeat;background-position:center;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;transform:translateY(-50%);width:12px;height:12px}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.is-disabled:after{background-color:var(--el-text-color-disabled)}.el-select-dropdown .el-select-dropdown__option-item.is-selected:after{content:"";position:absolute;top:50%;right:20px;border-top:none;border-right:none;background-repeat:no-repeat;background-position:center;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;transform:translateY(-50%);width:12px;height:12px}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown .el-select-dropdown__item.is-disabled:hover{background-color:unset}.el-select-dropdown .el-select-dropdown__item.is-disabled.selected{color:var(--el-text-color-disabled)}.el-select-dropdown__empty{padding:10px 0;margin:0;text-align:center;color:var(--el-text-color-secondary);font-size:var(--el-select-font-size)}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{list-style:none;padding:6px 0;margin:0;box-sizing:border-box}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;display:inline-block;position:relative;vertical-align:middle;line-height:32px}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent;border-left-color:transparent}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent;border-bottom-color:transparent}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-select .el-select-tags-wrapper.has-prefix{margin-left:6px}.el-select--large{line-height:40px}.el-select--large .el-select-tags-wrapper.has-prefix{margin-left:8px}.el-select--small{line-height:24px}.el-select--small .el-select-tags-wrapper.has-prefix{margin-left:4px}.el-select .el-select__tags>span{display:inline-block}.el-select:hover:not(.el-select--disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-border-color-hover) inset}.el-select .el-select__tags-text{display:inline-block;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-select .el-input__wrapper{cursor:pointer}.el-select .el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select .el-input__inner{cursor:pointer}.el-select .el-input{display:flex}.el-select .el-input .el-select__caret{color:var(--el-select-input-color);font-size:var(--el-select-input-font-size);transition:transform var(--el-transition-duration);transform:rotate(0);cursor:pointer}.el-select .el-input .el-select__caret.is-reverse{transform:rotate(-180deg)}.el-select .el-input .el-select__caret.is-show-close{font-size:var(--el-select-font-size);text-align:center;transform:rotate(0);border-radius:var(--el-border-radius-circle);color:var(--el-select-input-color);transition:var(--el-transition-color)}.el-select .el-input .el-select__caret.is-show-close:hover{color:var(--el-select-close-hover-color)}.el-select .el-input .el-select__caret.el-icon{position:relative;height:inherit;z-index:2}.el-select .el-input.is-disabled .el-input__wrapper{cursor:not-allowed}.el-select .el-input.is-disabled .el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select .el-input.is-disabled .el-input__inner,.el-select .el-input.is-disabled .el-select__caret{cursor:not-allowed}.el-select .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select__input{border:none;outline:0;padding:0;margin-left:15px;color:var(--el-select-multiple-input-color);font-size:var(--el-select-font-size);-webkit-appearance:none;-moz-appearance:none;appearance:none;height:28px;background-color:transparent}.el-select__input.is-small{height:14px}.el-select__close{cursor:pointer;position:absolute;top:8px;z-index:var(--el-index-top);right:25px;color:var(--el-select-input-color);line-height:18px;font-size:var(--el-select-input-font-size)}.el-select__close:hover{color:var(--el-select-close-hover-color)}.el-select__tags{position:absolute;line-height:normal;top:50%;transform:translateY(-50%);white-space:normal;z-index:var(--el-index-normal);display:flex;align-items:center;flex-wrap:wrap;cursor:pointer}.el-select__tags .el-tag{box-sizing:border-box;border-color:transparent;margin:2px 6px 2px 0}.el-select__tags .el-tag:last-child{margin-right:0}.el-select__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);right:-7px;top:0;color:#fff}.el-select__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__collapse-tags{white-space:normal;z-index:var(--el-index-normal);display:flex;align-items:center;flex-wrap:wrap;cursor:pointer}.el-select__collapse-tags .el-tag{box-sizing:border-box;border-color:transparent;margin:2px 6px 2px 0}.el-select__collapse-tags .el-tag:last-child{margin-right:0}.el-select__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);right:-7px;top:0;color:#fff}.el-select__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__collapse-tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__collapse-tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__collapse-tag{line-height:inherit;height:inherit;display:flex}.el-skeleton{--el-skeleton-circle-size:var(--el-avatar-size)}.el-skeleton__item{background:var(--el-skeleton-color);display:inline-block;height:16px;border-radius:var(--el-border-radius-base);width:100%}.el-skeleton__circle{border-radius:50%;width:var(--el-skeleton-circle-size);height:var(--el-skeleton-circle-size);line-height:var(--el-skeleton-circle-size)}.el-skeleton__button{height:40px;width:64px;border-radius:4px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{width:100%;height:var(--el-font-size-small)}.el-skeleton__caption{height:var(--el-font-size-extra-small)}.el-skeleton__h1{height:var(--el-font-size-extra-large)}.el-skeleton__h3{height:var(--el-font-size-large)}.el-skeleton__h5{height:var(--el-font-size-medium)}.el-skeleton__image{width:unset;display:flex;align-items:center;justify-content:center;border-radius:0}.el-skeleton__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:22%;height:22%}.el-skeleton{--el-skeleton-color:var(--el-fill-color);--el-skeleton-to-color:var(--el-fill-color-darker)}@keyframes el-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{height:16px;margin-top:16px;background:var(--el-skeleton-color)}.el-skeleton.is-animated .el-skeleton__item{background:linear-gradient(90deg,var(--el-skeleton-color) 25%,var(--el-skeleton-to-color) 37%,var(--el-skeleton-color) 63%);background-size:400% 100%;animation:el-skeleton-loading 1.4s ease infinite}.el-slider{--el-slider-main-bg-color:var(--el-color-primary);--el-slider-runway-bg-color:var(--el-border-color-light);--el-slider-stop-bg-color:var(--el-color-white);--el-slider-disabled-color:var(--el-text-color-placeholder);--el-slider-border-radius:3px;--el-slider-height:6px;--el-slider-button-size:20px;--el-slider-button-wrapper-size:36px;--el-slider-button-wrapper-offset:-15px;width:100%;height:32px;display:flex;align-items:center}.el-slider__runway{flex:1;height:var(--el-slider-height);background-color:var(--el-slider-runway-bg-color);border-radius:var(--el-slider-border-radius);position:relative;cursor:pointer}.el-slider__runway.show-input{margin-right:30px;width:auto}.el-slider__runway.is-disabled{cursor:default}.el-slider__runway.is-disabled .el-slider__bar{background-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button{border-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button-wrapper.hover,.el-slider__runway.is-disabled .el-slider__button-wrapper:hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.dragging{cursor:not-allowed}.el-slider__runway.is-disabled .el-slider__button.dragging,.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button:hover{transform:scale(1)}.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button:hover,.el-slider__runway.is-disabled .el-slider__button.dragging{cursor:not-allowed}.el-slider__input{flex-shrink:0;width:130px}.el-slider__bar{height:var(--el-slider-height);background-color:var(--el-slider-main-bg-color);border-top-left-radius:var(--el-slider-border-radius);border-bottom-left-radius:var(--el-slider-border-radius);position:absolute}.el-slider__button-wrapper{height:var(--el-slider-button-wrapper-size);width:var(--el-slider-button-wrapper-size);position:absolute;z-index:1;top:var(--el-slider-button-wrapper-offset);transform:translate(-50%);background-color:transparent;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:normal;outline:0}.el-slider__button-wrapper:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-slider__button-wrapper.hover,.el-slider__button-wrapper:hover{cursor:grab}.el-slider__button-wrapper.dragging{cursor:grabbing}.el-slider__button{display:inline-block;width:var(--el-slider-button-size);height:var(--el-slider-button-size);vertical-align:middle;border:solid 2px var(--el-slider-main-bg-color);background-color:var(--el-color-white);border-radius:50%;box-sizing:border-box;transition:var(--el-transition-duration-fast);-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-slider__button.dragging,.el-slider__button.hover,.el-slider__button:hover{transform:scale(1.2)}.el-slider__button.hover,.el-slider__button:hover{cursor:grab}.el-slider__button.dragging{cursor:grabbing}.el-slider__stop{position:absolute;height:var(--el-slider-height);width:var(--el-slider-height);border-radius:var(--el-border-radius-circle);background-color:var(--el-slider-stop-bg-color);transform:translate(-50%)}.el-slider__marks{top:0;left:12px;width:18px;height:100%}.el-slider__marks-text{position:absolute;transform:translate(-50%);font-size:14px;color:var(--el-color-info);margin-top:15px;white-space:pre}.el-slider.is-vertical{position:relative;display:inline-flex;width:auto;height:100%;flex:0}.el-slider.is-vertical .el-slider__runway{width:var(--el-slider-height);height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:var(--el-slider-height);height:auto;border-radius:0 0 3px 3px}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:var(--el-slider-button-wrapper-offset);transform:translateY(50%)}.el-slider.is-vertical .el-slider__stop{transform:translateY(50%)}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;transform:translateY(50%)}.el-slider--large{height:40px}.el-slider--small{height:24px}.el-space{display:inline-flex;vertical-align:top}.el-space__item{display:flex;flex-wrap:wrap}.el-space__item>*{flex:1}.el-space--vertical{flex-direction:column}.el-time-spinner{width:100%;white-space:nowrap}.el-spinner{display:inline-block;vertical-align:middle}.el-spinner-inner{animation:rotate 2s linear infinite;width:50px;height:50px}.el-spinner-inner .path{stroke:var(--el-border-color-lighter);stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.el-step{position:relative;flex-shrink:1}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{flex-basis:auto!important;flex-shrink:0;flex-grow:0}.el-step:last-of-type .el-step__description,.el-step:last-of-type .el-step__main{padding-right:0}.el-step__head{position:relative;width:100%}.el-step__head.is-process{color:var(--el-text-color-primary);border-color:var(--el-text-color-primary)}.el-step__head.is-wait{color:var(--el-text-color-placeholder);border-color:var(--el-text-color-placeholder)}.el-step__head.is-success{color:var(--el-color-success);border-color:var(--el-color-success)}.el-step__head.is-error{color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-step__head.is-finish{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-step__icon{position:relative;z-index:1;display:inline-flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;box-sizing:border-box;background:var(--el-bg-color);transition:.15s ease-out}.el-step__icon.is-text{border-radius:50%;border:2px solid;border-color:inherit}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{display:inline-block;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;font-weight:700;line-height:1;color:inherit}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{transform:translateY(1px)}.el-step__line{position:absolute;border-color:inherit;background-color:var(--el-text-color-placeholder)}.el-step__line-inner{display:block;border-width:1px;border-style:solid;border-color:inherit;transition:.15s ease-out;box-sizing:border-box;width:0;height:0}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{font-weight:700;color:var(--el-text-color-primary)}.el-step__title.is-wait{color:var(--el-text-color-placeholder)}.el-step__title.is-success{color:var(--el-color-success)}.el-step__title.is-error{color:var(--el-color-danger)}.el-step__title.is-finish{color:var(--el-color-primary)}.el-step__description{padding-right:10%;margin-top:-5px;font-size:12px;line-height:20px;font-weight:400}.el-step__description.is-process{color:var(--el-text-color-primary)}.el-step__description.is-wait{color:var(--el-text-color-placeholder)}.el-step__description.is-success{color:var(--el-color-success)}.el-step__description.is-error{color:var(--el-color-danger)}.el-step__description.is-finish{color:var(--el-color-primary)}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:flex}.el-step.is-vertical .el-step__head{flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{padding-left:10px;flex-grow:1}.el-step.is-vertical .el-step__title{line-height:24px;padding-bottom:8px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{display:flex;align-items:center}.el-step.is-simple .el-step__head{width:auto;font-size:0;padding-right:10px}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{transform:scale(.8) translateY(1px)}.el-step.is-simple .el-step__main{position:relative;display:flex;align-items:stretch;flex-grow:1}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{max-width:50%;word-break:break-all}.el-step.is-simple .el-step__arrow{flex-grow:1;display:flex;align-items:center;justify-content:center}.el-step.is-simple .el-step__arrow:after,.el-step.is-simple .el-step__arrow:before{content:"";display:inline-block;position:absolute;height:15px;width:1px;background:var(--el-text-color-placeholder)}.el-step.is-simple .el-step__arrow:before{transform:rotate(-45deg) translateY(-4px);transform-origin:0 0}.el-step.is-simple .el-step__arrow:after{transform:rotate(45deg) translateY(4px);transform-origin:100% 100%}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-steps{display:flex}.el-steps--simple{padding:13px 8%;border-radius:4px;background:var(--el-fill-color-light)}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{height:100%;flex-flow:column}.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);display:inline-flex;align-items:center;position:relative;font-size:14px;line-height:20px;height:32px;vertical-align:middle}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{transition:var(--el-transition-duration-fast);height:20px;display:inline-block;font-size:14px;font-weight:500;cursor:pointer;vertical-align:middle;color:var(--el-text-color-primary)}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{line-height:1;font-size:14px;display:inline-block}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{position:absolute;width:0;height:0;opacity:0;margin:0}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{display:inline-flex;position:relative;align-items:center;min-width:40px;height:20px;border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));outline:0;border-radius:10px;box-sizing:border-box;background:var(--el-switch-off-color);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration)}.el-switch__core .el-switch__inner{width:100%;transition:all var(--el-transition-duration);height:16px;display:flex;justify-content:center;align-items:center;overflow:hidden;padding:0 4px 0 18px}.el-switch__core .el-switch__inner .is-icon,.el-switch__core .el-switch__inner .is-text{font-size:12px;color:var(--el-color-white);-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-switch__core .el-switch__action{position:absolute;left:1px;border-radius:var(--el-border-radius-circle);transition:all var(--el-transition-duration);width:16px;height:16px;background-color:var(--el-color-white);display:flex;justify-content:center;align-items:center;color:var(--el-switch-off-color)}.el-switch.is-checked .el-switch__core{border-color:var(--el-switch-border-color,var(--el-switch-on-color));background-color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__action{left:calc(100% - 17px);color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{font-size:14px;line-height:24px;height:40px}.el-switch--large .el-switch__label{height:24px;font-size:14px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{min-width:50px;height:24px;border-radius:12px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{width:20px;height:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{font-size:12px;line-height:16px;height:24px}.el-switch--small .el-switch__label{height:16px;font-size:12px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{min-width:30px;height:16px;border-radius:8px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{width:12px;height:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);border-radius:2px;background-color:#fff;box-shadow:var(--el-box-shadow-light);box-sizing:border-box}.el-table-filter__list{padding:5px 0;margin:0;list-style:none;min-width:100px}.el-table-filter__list-item{line-height:36px;padding:0 10px;cursor:pointer;font-size:var(--el-font-size-base)}.el-table-filter__list-item:hover{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{background:0 0;border:none;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button:focus{outline:0}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{display:flex;align-items:center;margin-right:5px;margin-bottom:12px;margin-left:5px;height:unset}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0, 0, 0, .15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0, 0, 0, .15);position:relative;overflow:hidden;box-sizing:border-box;height:-moz-fit-content;height:fit-content;width:100%;max-width:100%;background-color:var(--el-table-bg-color);font-size:14px;color:var(--el-table-text-color)}.el-table__inner-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.el-table__inner-wrapper:before{left:0;bottom:0;width:100%;height:1px}.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell,.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell{border-bottom-color:transparent}.el-table__empty-block{position:sticky;left:0;min-height:60px;text-align:center;width:100%;display:flex;justify-content:center;align-items:center}.el-table__empty-text{line-height:60px;width:50%;color:var(--el-text-color-secondary)}.el-table__expand-column .cell{padding:0;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-table__expand-icon{position:relative;cursor:pointer;color:var(--el-text-color-regular);font-size:12px;transition:transform var(--el-transition-duration-fast) ease-in-out;height:20px}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-right:0;border-bottom:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table thead{color:var(--el-table-header-text-color);font-weight:500}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{padding:8px 0;min-width:0;box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;position:relative;text-align:left;z-index:1}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{width:15px;border-right-width:0;border-bottom-width:0;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:break-all;line-height:23px}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:14px}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:12px}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{display:inline-block;content:"";width:8px;height:8px;border-radius:50%;background:#ff4d51;margin-right:5px;vertical-align:middle}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table__footer-wrapper{border-top:var(--el-table-border)}.el-table--border .el-table__inner-wrapper:after,.el-table--border:after,.el-table--border:before,.el-table__inner-wrapper:before{content:"";position:absolute;background-color:var(--el-table-border-color);z-index:3}.el-table--border .el-table__inner-wrapper:after{left:0;top:0;width:100%;height:1px}.el-table--border:before{top:-1px;left:0;width:1px;height:100%}.el-table--border:after{top:-1px;right:0;width:1px;height:100%}.el-table--border .el-table__inner-wrapper{border-right:none;border-bottom:none}.el-table--border .el-table__footer-wrapper{position:relative;flex-shrink:0}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right,.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{position:sticky!important;z-index:2;background:var(--el-bg-color)}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{content:"";position:absolute;top:0;width:10px;bottom:-1px;overflow-x:hidden;overflow-y:hidden;box-shadow:none;touch-action:none;pointer-events:none}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px;box-shadow:none}.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch,.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch{position:sticky!important;z-index:2;background:#fff;right:0}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body,.el-table__footer,.el-table__header{table-layout:fixed;border-collapse:separate}.el-table__footer-wrapper,.el-table__header-wrapper{overflow:hidden}.el-table__footer-wrapper tbody td.el-table__cell,.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__body-wrapper .el-table-column--selection>.cell,.el-table__header-wrapper .el-table-column--selection>.cell{display:inline-flex;align-items:center;height:23px}.el-table__body-wrapper .el-table-column--selection .el-checkbox,.el-table__header-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{overflow:hidden;position:relative;flex:1}.el-table__body-wrapper .el-scrollbar__bar{z-index:2}.el-table .caret-wrapper{display:inline-flex;flex-direction:column;align-items:center;height:14px;width:24px;vertical-align:middle;cursor:pointer;overflow:initial;position:relative}.el-table .sort-caret{width:0;height:0;border:solid 5px transparent;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;position:absolute;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__column-resize-proxy{position:absolute;left:200px;top:0;bottom:0;width:0;border-left:var(--el-table-border);z-index:10}.el-table__column-filter-trigger{display:inline-block;cursor:pointer}.el-table__column-filter-trigger i{color:var(--el-color-info);font-size:14px;vertical-align:middle}.el-table__border-left-patch{top:0;left:0;width:1px;height:100%;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table__border-bottom-patch{left:0;height:1px;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table__border-right-patch{top:0;height:100%;width:1px;z-index:3;position:absolute;background-color:var(--el-table-border-color)}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;width:12px;line-height:12px;height:12px;text-align:center;margin-right:8px}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-v2{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0, 0, 0, .15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0, 0, 0, .15);font-size:14px}.el-table-v2 *{box-sizing:border-box}.el-table-v2__root{position:relative}.el-table-v2__root:hover .el-table-v2__main .el-virtual-scrollbar{opacity:1}.el-table-v2__main{display:flex;flex-direction:column-reverse;position:absolute;overflow:hidden;top:0;background-color:var(--el-bg-color);left:0}.el-table-v2__main .el-vl__horizontal,.el-table-v2__main .el-vl__vertical{z-index:2}.el-table-v2__left{display:flex;flex-direction:column-reverse;position:absolute;overflow:hidden;top:0;background-color:var(--el-bg-color);left:0;box-shadow:2px 0 4px #0000000f}.el-table-v2__left .el-virtual-scrollbar{opacity:0}.el-table-v2__left .el-vl__horizontal,.el-table-v2__left .el-vl__vertical{z-index:-1}.el-table-v2__right{display:flex;flex-direction:column-reverse;position:absolute;overflow:hidden;top:0;background-color:var(--el-bg-color);right:0;box-shadow:-2px 0 4px #0000000f}.el-table-v2__right .el-virtual-scrollbar{opacity:0}.el-table-v2__right .el-vl__horizontal,.el-table-v2__right .el-vl__vertical{z-index:-1}.el-table-v2__header-row,.el-table-v2__row{padding-inline-end:var(--el-table-scrollbar-size)}.el-table-v2__header-wrapper{overflow:hidden}.el-table-v2__header{position:relative;overflow:hidden}.el-table-v2__footer{position:absolute;left:0;right:0;bottom:0;overflow:hidden}.el-table-v2__empty{position:absolute;left:0}.el-table-v2__overlay{position:absolute;left:0;right:0;top:0;bottom:0;z-index:9999}.el-table-v2__header-row{display:flex;border-bottom:var(--el-table-border)}.el-table-v2__header-cell{display:flex;align-items:center;padding:0 8px;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;background-color:var(--el-table-header-bg-color);color:var(--el-table-header-text-color);font-weight:700}.el-table-v2__header-cell.is-align-center{justify-content:center;text-align:center}.el-table-v2__header-cell.is-align-right{justify-content:flex-end;text-align:right}.el-table-v2__header-cell.is-sortable{cursor:pointer}.el-table-v2__header-cell:hover .el-icon{display:block}.el-table-v2__sort-icon{transition:opacity,display var(--el-transition-duration);opacity:.6;display:none}.el-table-v2__sort-icon.is-sorting{display:block;opacity:1}.el-table-v2__row{border-bottom:var(--el-table-border);display:flex;align-items:center;transition:background-color var(--el-transition-duration)}.el-table-v2__row.is-hovered,.el-table-v2__row:hover{background-color:var(--el-table-row-hover-bg-color)}.el-table-v2__row-cell{height:100%;overflow:hidden;display:flex;align-items:center;padding:0 8px}.el-table-v2__row-cell.is-align-center{justify-content:center;text-align:center}.el-table-v2__row-cell.is-align-right{justify-content:flex-end;text-align:right}.el-table-v2__expand-icon{margin:0 4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-table-v2__expand-icon svg{transition:transform var(--el-transition-duration)}.el-table-v2__expand-icon.is-expanded svg{transform:rotate(90deg)}.el-table-v2:not(.is-dynamic) .el-table-v2__cell-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-table-v2.is-dynamic .el-table-v2__row{overflow:hidden;align-items:stretch}.el-table-v2.is-dynamic .el-table-v2__row .el-table-v2__row-cell{word-break:break-all}.el-tabs{--el-tabs-header-height:40px}.el-tabs__header{padding:0;position:relative;margin:0 0 15px}.el-tabs__active-bar{position:absolute;bottom:0;left:0;height:2px;background-color:var(--el-color-primary);z-index:1;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none}.el-tabs__new-tab{display:flex;align-items:center;justify-content:center;float:right;border:1px solid var(--el-border-color);height:20px;width:20px;line-height:20px;margin:10px 0 10px 10px;border-radius:3px;text-align:center;font-size:12px;color:var(--el-text-color-primary);cursor:pointer;transition:all .15s}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__nav-wrap{overflow:hidden;margin-bottom:-1px;position:relative}.el-tabs__nav-wrap:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background-color:var(--el-border-color-light);z-index:var(--el-index-normal)}.el-tabs__nav-wrap.is-scrollable{padding:0 20px;box-sizing:border-box}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{position:absolute;cursor:pointer;line-height:44px;font-size:12px;color:var(--el-text-color-secondary);width:20px;text-align:center}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;position:relative;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1)}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{flex:1;text-align:center}.el-tabs__item{padding:0 20px;height:var(--el-tabs-header-height);box-sizing:border-box;line-height:var(--el-tabs-header-height);display:inline-block;list-style:none;font-size:var(--el-font-size-base);font-weight:500;color:var(--el-text-color-primary);position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:0}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{border-radius:50%;text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-left:5px}.el-tabs__item .is-icon-close:before{transform:scale(.9);display:inline-block}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item .is-icon-close svg{margin-top:1px}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{overflow:hidden;position:relative}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height)}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);border-bottom:none;border-radius:4px 4px 0 0;box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{position:relative;font-size:12px;width:0;height:14px;vertical-align:middle;line-height:15px;overflow:hidden;top:-1px;right:-2px;transform-origin:100% 50%}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid transparent;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier)}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border:1px solid transparent;margin-top:-1px;color:var(--el-text-color-secondary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:nth-child(2),.el-tabs--bottom .el-tabs__item.is-top:nth-child(2),.el-tabs--top .el-tabs__item.is-bottom:nth-child(2),.el-tabs--top .el-tabs__item.is-top:nth-child(2){padding-left:0}.el-tabs--bottom .el-tabs__item.is-bottom:last-child,.el-tabs--bottom .el-tabs__item.is-top:last-child,.el-tabs--top .el-tabs__item.is-bottom:last-child,.el-tabs--top .el-tabs__item.is-top:last-child{padding-right:0}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--bottom .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--left>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top .el-tabs--right>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--bottom .el-tabs__header.is-bottom{margin-bottom:0;margin-top:10px}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid transparent}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-scroll,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{top:0;bottom:auto;width:2px;height:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{height:30px;line-height:30px;width:100%;text-align:center;cursor:pointer}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{left:auto;top:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{right:auto;bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{height:100%;width:2px;bottom:auto;top:0}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{float:none}.el-tabs--left .el-tabs__item.is-left,.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-right{display:block}.el-tabs--left .el-tabs__header.is-left{float:left;margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after{left:auto;right:0}.el-tabs--left .el-tabs__active-bar.is-left{right:0;left:auto}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-right-color:#fff;border-left:none;border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-radius:4px 0 0 4px;border-bottom:1px solid var(--el-border-color-light);border-right:none}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid transparent;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.el-tabs--right .el-tabs__header.is-right{float:right;margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-left-color:#fff;border-right:none;border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-radius:0 4px 4px 0;border-bottom:1px solid var(--el-border-color-light);border-left:none}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid transparent;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:transparent;border-top-color:#d1dbe5;border-bottom-color:#d1dbe5}.slideInLeft-transition,.slideInRight-transition{display:inline-block}.slideInRight-enter{animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{position:absolute;left:0;right:0;animation:slideInRight-leave var(--el-transition-duration)}.slideInLeft-enter{animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{position:absolute;left:0;right:0;animation:slideInLeft-leave var(--el-transition-duration)}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(100%);opacity:0}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;transform:translate(0);opacity:1}to{transform-origin:0 0;transform:translate(-100%);opacity:0}}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);--el-tag-text-color:var(--el-color-primary);background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);display:inline-flex;justify-content:center;align-items:center;height:24px;padding:0 9px;font-size:var(--el-tag-font-size);line-height:1;border-width:1px;border-style:solid;border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color)}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag .el-icon{border-radius:50%;cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size)}.el-tag .el-tag__close{margin-left:6px}.el-tag--dark{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3);--el-tag-text-color:var(--el-color-white)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain{--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary);--el-tag-bg-color:var(--el-fill-color-blank)}.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{padding:0 11px;height:32px;--el-icon-size:16px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{padding:0 7px;height:20px;--el-icon-size:12px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.time-select{margin:5px 0;min-width:0}.time-select .el-picker-panel__content{max-height:200px;margin:0}.time-select-item{padding:8px 10px;font-size:14px;line-height:20px}.time-select-item.disabled{color:var(--el-datepicker-border-color);cursor:not-allowed}.time-select-item:hover{background-color:var(--el-fill-color-light);font-weight:700;cursor:pointer}.time-select .time-select-item.selected:not(.disabled){color:var(--el-color-primary);font-weight:700}.el-timeline-item{position:relative;padding-bottom:20px}.el-timeline-item__wrapper{position:relative;padding-left:28px;top:-3px}.el-timeline-item__tail{position:absolute;left:4px;height:100%;border-left:2px solid var(--el-timeline-node-color)}.el-timeline-item .el-timeline-item__icon{color:var(--el-color-white);font-size:var(--el-font-size-small)}.el-timeline-item__node{position:absolute;background-color:var(--el-timeline-node-color);border-color:var(--el-timeline-node-color);border-radius:50%;box-sizing:border-box;display:flex;justify-content:center;align-items:center}.el-timeline-item__node--normal{left:-1px;width:var(--el-timeline-node-size-normal);height:var(--el-timeline-node-size-normal)}.el-timeline-item__node--large{left:-2px;width:var(--el-timeline-node-size-large);height:var(--el-timeline-node-size-large)}.el-timeline-item__node.is-hollow{background:var(--el-color-white);border-style:solid;border-width:2px}.el-timeline-item__node--primary{background-color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-timeline-item__node--success{background-color:var(--el-color-success);border-color:var(--el-color-success)}.el-timeline-item__node--warning{background-color:var(--el-color-warning);border-color:var(--el-color-warning)}.el-timeline-item__node--danger{background-color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-timeline-item__node--info{background-color:var(--el-color-info);border-color:var(--el-color-info)}.el-timeline-item__dot{position:absolute;display:flex;justify-content:center;align-items:center}.el-timeline-item__content{color:var(--el-text-color-primary)}.el-timeline-item__timestamp{color:var(--el-text-color-secondary);line-height:1;font-size:var(--el-font-size-small)}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-timeline{--el-timeline-node-size-normal:12px;--el-timeline-node-size-large:14px;--el-timeline-node-color:var(--el-border-color-light);margin:0;font-size:var(--el-font-size-base);list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline .el-timeline-item__center{display:flex;align-items:center}.el-timeline .el-timeline-item__center .el-timeline-item__wrapper{width:100%}.el-timeline .el-timeline-item__center .el-timeline-item__tail{top:0}.el-timeline .el-timeline-item__center:first-child .el-timeline-item__tail{height:calc(50% + 10px);top:calc(50% - 10px)}.el-timeline .el-timeline-item__center:last-child .el-timeline-item__tail{display:block;height:calc(50% - 10px)}.el-tooltip-v2__content{--el-tooltip-v2-padding:5px 10px;--el-tooltip-v2-border-radius:4px;--el-tooltip-v2-border-color:var(--el-border-color);border-radius:var(--el-tooltip-v2-border-radius);color:var(--el-color-black);background-color:var(--el-color-white);padding:var(--el-tooltip-v2-padding);border:1px solid var(--el-border-color)}.el-tooltip-v2__arrow{position:absolute;color:var(--el-color-white);width:var(--el-tooltip-v2-arrow-width);height:var(--el-tooltip-v2-arrow-height);pointer-events:none;left:var(--el-tooltip-v2-arrow-x);top:var(--el-tooltip-v2-arrow-y)}.el-tooltip-v2__arrow:before{content:"";width:0;height:0;border:var(--el-tooltip-v2-arrow-border-width) solid transparent;position:absolute}.el-tooltip-v2__arrow:after{content:"";width:0;height:0;border:var(--el-tooltip-v2-arrow-border-width) solid transparent;position:absolute}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow{bottom:0}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow:before{border-top-color:var(--el-color-white);border-top-width:var(--el-tooltip-v2-arrow-border-width);border-bottom:0;top:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=top] .el-tooltip-v2__arrow:after{border-top-color:var(--el-border-color);border-top-width:var(--el-tooltip-v2-arrow-border-width);border-bottom:0;top:100%;z-index:-1}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow{top:0}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow:before{border-bottom-color:var(--el-color-white);border-bottom-width:var(--el-tooltip-v2-arrow-border-width);border-top:0;bottom:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=bottom] .el-tooltip-v2__arrow:after{border-bottom-color:var(--el-border-color);border-bottom-width:var(--el-tooltip-v2-arrow-border-width);border-top:0;bottom:100%;z-index:-1}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow{right:0}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow:before{border-left-color:var(--el-color-white);border-left-width:var(--el-tooltip-v2-arrow-border-width);border-right:0;left:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=left] .el-tooltip-v2__arrow:after{border-left-color:var(--el-border-color);border-left-width:var(--el-tooltip-v2-arrow-border-width);border-right:0;left:100%;z-index:-1}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow{left:0}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow:before{border-right-color:var(--el-color-white);border-right-width:var(--el-tooltip-v2-arrow-border-width);border-left:0;right:calc(100% - 1px)}.el-tooltip-v2__content[data-side^=right] .el-tooltip-v2__arrow:after{border-right-color:var(--el-border-color);border-right-width:var(--el-tooltip-v2-arrow-border-width);border-left:0;right:100%;z-index:-1}.el-tooltip-v2__content.is-dark{--el-tooltip-v2-border-color:transparent;background-color:var(--el-color-black);color:var(--el-color-white);border-color:transparent}.el-tooltip-v2__content.is-dark .el-tooltip-v2__arrow{background-color:var(--el-color-black);border-color:transparent}.el-transfer{--el-transfer-border-color:var(--el-border-color-lighter);--el-transfer-border-radius:var(--el-border-radius-base);--el-transfer-panel-width:200px;--el-transfer-panel-header-height:40px;--el-transfer-panel-header-bg-color:var(--el-fill-color-light);--el-transfer-panel-footer-height:40px;--el-transfer-panel-body-height:278px;--el-transfer-item-height:30px;--el-transfer-filter-height:32px;font-size:var(--el-font-size-base)}.el-transfer__buttons{display:inline-block;vertical-align:middle;padding:0 30px}.el-transfer__button{vertical-align:top}.el-transfer__button:nth-child(2){margin:0 0 0 10px}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer__button .el-icon+span{margin-left:0}.el-transfer-panel{overflow:hidden;background:var(--el-bg-color-overlay);display:inline-block;text-align:left;vertical-align:middle;width:var(--el-transfer-panel-width);max-height:100%;box-sizing:border-box;position:relative}.el-transfer-panel__body{height:var(--el-transfer-panel-body-height);border-left:1px solid var(--el-transfer-border-color);border-right:1px solid var(--el-transfer-border-color);border-bottom:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);overflow:hidden}.el-transfer-panel__body.is-with-footer{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.el-transfer-panel__list{margin:0;padding:6px 0;list-style:none;height:var(--el-transfer-panel-body-height);overflow:auto;box-sizing:border-box}.el-transfer-panel__list.is-filterable{height:calc(100% - var(--el-transfer-filter-height) - 30px);padding-top:0}.el-transfer-panel__item{height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);padding-left:15px;display:block!important}.el-transfer-panel__item+.el-transfer-panel__item{margin-left:0}.el-transfer-panel__item.el-checkbox{color:var(--el-text-color-regular)}.el-transfer-panel__item:hover{color:var(--el-color-primary)}.el-transfer-panel__item.el-checkbox .el-checkbox__label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;box-sizing:border-box;padding-left:22px;line-height:var(--el-transfer-item-height)}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{text-align:center;margin:15px;box-sizing:border-box;width:auto}.el-transfer-panel__filter .el-input__inner{height:var(--el-transfer-filter-height);width:100%;font-size:12px;display:inline-block;box-sizing:border-box;border-radius:calc(var(--el-transfer-filter-height)/ 2)}.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-transfer-panel .el-transfer-panel__header{display:flex;align-items:center;height:var(--el-transfer-panel-header-height);background:var(--el-transfer-panel-header-bg-color);margin:0;padding-left:15px;border:1px solid var(--el-transfer-border-color);border-top-left-radius:var(--el-transfer-border-radius);border-top-right-radius:var(--el-transfer-border-radius);box-sizing:border-box;color:var(--el-color-black)}.el-transfer-panel .el-transfer-panel__header .el-checkbox{position:relative;display:flex;width:100%;align-items:center}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{font-size:16px;color:var(--el-text-color-primary);font-weight:400}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label span{position:absolute;right:15px;top:50%;transform:translate3d(0,-50%,0);color:var(--el-text-color-secondary);font-size:12px;font-weight:400}.el-transfer-panel .el-transfer-panel__footer{height:var(--el-transfer-panel-footer-height);background:var(--el-bg-color-overlay);margin:0;padding:0;border:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius)}.el-transfer-panel .el-transfer-panel__footer:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{padding-left:20px;color:var(--el-text-color-regular)}.el-transfer-panel .el-transfer-panel__empty{margin:0;height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);padding:6px 15px 0;color:var(--el-text-color-secondary);text-align:center}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-transfer-panel .el-checkbox__inner{height:14px;width:14px;border-radius:3px}.el-transfer-panel .el-checkbox__inner:after{height:6px;width:3px;left:4px}.el-tree{--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);position:relative;cursor:default;background:var(--el-fill-color-blank);color:var(--el-tree-text-color);font-size:var(--el-font-size-base)}.el-tree__empty-block{position:relative;min-height:60px;text-align:center;width:100%;height:100%}.el-tree__empty-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--el-text-color-secondary);font-size:var(--el-font-size-base)}.el-tree__drop-indicator{position:absolute;left:0;right:0;height:1px;background-color:var(--el-color-primary)}.el-tree-node{white-space:nowrap;outline:0}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{display:flex;align-items:center;height:26px;cursor:pointer}.el-tree-node__content>.el-tree-node__expand-icon{padding:6px;box-sizing:content-box}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:var(--el-tree-expand-icon-color);font-size:12px;transform:rotate(0);transition:transform var(--el-transition-duration) ease-in-out}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:transparent;cursor:default}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{margin-right:8px;font-size:var(--el-font-size-base);color:var(--el-tree-expand-icon-color)}.el-tree-node>.el-tree-node__children{overflow:hidden;background-color:transparent}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)}.el-tree-select{--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder)}.el-tree-select__popper .el-tree-node__expand-icon{margin-left:8px}.el-tree-select__popper .el-tree-node.is-checked>.el-tree-node__content .el-select-dropdown__item.selected:after{content:none}.el-tree-select__popper .el-select-dropdown__item{flex:1;background:0 0!important;padding-left:0;height:20px;line-height:20px}.el-upload{--el-upload-dragger-padding-horizontal:40px;--el-upload-dragger-padding-vertical:10px;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;outline:0}.el-upload__input{display:none}.el-upload__tip{font-size:12px;color:var(--el-text-color-regular);margin-top:7px}.el-upload iframe{position:absolute;z-index:-1;top:0;left:0;opacity:0}.el-upload--picture-card{--el-upload-picture-card-size:148px;background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);border-radius:6px;box-sizing:border-box;width:var(--el-upload-picture-card-size);height:var(--el-upload-picture-card-size);cursor:pointer;vertical-align:top;display:inline-flex;justify-content:center;align-items:center}.el-upload--picture-card i{font-size:28px;color:var(--el-text-color-secondary)}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{padding:var(--el-upload-dragger-padding-horizontal) var(--el-upload-dragger-padding-vertical);background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);border-radius:6px;box-sizing:border-box;text-align:center;cursor:pointer;position:relative;overflow:hidden}.el-upload-dragger .el-icon--upload{font-size:67px;color:var(--el-text-color-placeholder);margin-bottom:16px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{padding:calc(var(--el-upload-dragger-padding-horizontal) - 1px) calc(var(--el-upload-dragger-padding-vertical) - 1px);background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary)}.el-upload-list{margin:10px 0 0;padding:0;list-style:none;position:relative}.el-upload-list__item{transition:all .5s cubic-bezier(.55,0,.1,1);font-size:14px;color:var(--el-text-color-regular);margin-bottom:5px;position:relative;box-sizing:border-box;border-radius:4px;width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{display:none;position:absolute;right:5px;top:50%;cursor:pointer;opacity:.75;color:var(--el-text-color-regular);transition:opacity var(--el-transition-duration);transform:translateY(-50%)}.el-upload-list__item .el-icon--close:hover{opacity:1;color:var(--el-color-primary)}.el-upload-list__item .el-icon--close-tip{display:none;position:absolute;top:1px;right:5px;font-size:12px;cursor:pointer;opacity:1;color:var(--el-color-primary);font-style:normal}.el-upload-list__item:hover{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{display:inline-flex;justify-content:center;flex-direction:column;width:calc(100% - 30px);margin-left:4px}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-upload-list__item.is-success:active .el-icon--close-tip,.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip{display:none}.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label{display:none;opacity:0}.el-upload-list.is-disabled .el-upload-list__item-status-label,.el-upload-list.is-disabled .el-upload-list__item:hover{display:block}.el-upload-list__item-name{color:var(--el-text-color-regular);display:inline-flex;text-align:center;align-items:center;padding:0 4px;transition:color var(--el-transition-duration);font-size:var(--el-font-size-base)}.el-upload-list__item-name .el-icon{margin-right:6px;color:var(--el-text-color-secondary)}.el-upload-list__item-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-upload-list__item-status-label{position:absolute;right:5px;top:0;line-height:inherit;display:none;height:100%;justify-content:center;align-items:center;transition:opacity var(--el-transition-duration)}.el-upload-list__item-delete{position:absolute;right:10px;top:0;font-size:12px;color:var(--el-text-color-regular);display:none}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{--el-upload-list-picture-card-size:148px;display:inline-flex;flex-wrap:wrap;margin:0}.el-upload-list--picture-card .el-upload-list__item{overflow:hidden;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;width:var(--el-upload-list-picture-card-size);height:var(--el-upload-list-picture-card-size);margin:0 8px 8px 0;padding:0;display:inline-flex}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.el-upload-list--picture-card .el-upload-list__item-status-label{right:-15px;top:-6px;width:40px;height:24px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{position:absolute;width:100%;height:100%;left:0;top:0;cursor:default;display:inline-flex;justify-content:center;align-items:center;color:#fff;opacity:0;font-size:20px;background-color:var(--el-overlay-color-lighter);transition:opacity var(--el-transition-duration)}.el-upload-list--picture-card .el-upload-list__item-actions span{display:none;cursor:pointer}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:1rem}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{position:static;font-size:inherit;color:inherit}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{top:50%;left:50%;transform:translate(-50%,-50%);bottom:auto;width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{overflow:hidden;z-index:0;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;margin-top:10px;padding:10px;display:flex;align-items:center}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{display:inline-flex;justify-content:center;align-items:center;width:70px;height:70px;-o-object-fit:contain;object-fit:contain;position:relative;z-index:1;background-color:var(--el-color-white)}.el-upload-list--picture .el-upload-list__item-status-label{position:absolute;right:-17px;top:-7px;width:46px;height:26px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;z-index:10;cursor:default}.el-upload-cover:after{display:inline-block;content:"";height:100%;vertical-align:middle}.el-upload-cover img{display:block;width:100%;height:100%}.el-upload-cover__label{right:-15px;top:-6px;width:40px;height:24px;background:var(--el-color-success);text-align:center;transform:rotate(45deg)}.el-upload-cover__label i{font-size:12px;margin-top:11px;transform:rotate(-45deg);color:#fff}.el-upload-cover__progress{display:inline-block;vertical-align:middle;position:static;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{position:absolute;top:0;left:0;width:100%;height:100%}.el-upload-cover__interact{position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:var(--el-overlay-color-light);text-align:center}.el-upload-cover__interact .btn{display:inline-block;color:#fff;font-size:14px;cursor:pointer;vertical-align:middle;transition:var(--el-transition-md-fade);margin-top:60px}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{position:absolute;bottom:0;left:0;background-color:#fff;height:36px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400;text-align:left;padding:0 10px;margin:0;line-height:36px;font-size:14px;color:var(--el-text-color-primary)}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-vl__wrapper{position:relative}.el-vl__wrapper:hover .el-virtual-scrollbar,.el-vl__wrapper.always-on .el-virtual-scrollbar{opacity:1}.el-vl__window{scrollbar-width:none}.el-vl__window::-webkit-scrollbar{display:none}.el-virtual-scrollbar{opacity:0;transition:opacity .34s ease-out}.el-virtual-scrollbar.always-on{opacity:1}.el-vg__wrapper{position:relative}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius, 4px);position:absolute;border-radius:var(--el-popper-border-radius);padding:5px 11px;z-index:2000;font-size:12px;line-height:20px;min-width:10px;word-wrap:break-word;visibility:visible}.el-popper.is-dark{color:var(--el-bg-color);background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark .el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-text-color-primary);right:0}.el-popper.is-light{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light)}.el-popper.is-light .el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{position:absolute;width:10px;height:10px;z-index:-1}.el-popper__arrow:before{position:absolute;width:10px;height:10px;z-index:-1;content:" ";transform:rotate(45deg);background:var(--el-text-color-primary);box-sizing:border-box}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:transparent!important;border-left-color:transparent!important}.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent!important;border-right-color:transparent!important}.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-left-color:transparent!important;border-bottom-color:transparent!important}.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent!important;border-top-color:transparent!important}.el-select-dropdown__item{font-size:var(--el-font-size-base);padding:0 32px 0 20px;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--el-text-color-regular);height:34px;line-height:34px;box-sizing:border-box;cursor:pointer}.el-select-dropdown__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.selected{color:var(--el-color-primary);font-weight:700}.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{font-weight:var(--el-statistic-title-font-weight);font-size:var(--el-statistic-title-font-size);color:var(--el-statistic-title-color);line-height:20px;margin-bottom:4px}.el-statistic__content{font-weight:var(--el-statistic-content-font-weight);font-size:var(--el-statistic-content-font-size);color:var(--el-statistic-content-color)}.el-statistic__value{display:inline-block}.el-statistic__prefix{margin-right:4px;display:inline-block}.el-statistic__suffix{margin-left:4px;display:inline-block}html.dark{color-scheme:dark;--el-color-primary:#409eff;--el-color-primary-light-3:#3375b9;--el-color-primary-light-5:#2a598a;--el-color-primary-light-7:#213d5b;--el-color-primary-light-8:#1d3043;--el-color-primary-light-9:#18222c;--el-color-primary-dark-2:#66b1ff;--el-color-success:#67c23a;--el-color-success-light-3:#4e8e2f;--el-color-success-light-5:#3e6b27;--el-color-success-light-7:#2d481f;--el-color-success-light-8:#25371c;--el-color-success-light-9:#1c2518;--el-color-success-dark-2:#85ce61;--el-color-warning:#e6a23c;--el-color-warning-light-3:#a77730;--el-color-warning-light-5:#7d5b28;--el-color-warning-light-7:#533f20;--el-color-warning-light-8:#3e301c;--el-color-warning-light-9:#292218;--el-color-warning-dark-2:#ebb563;--el-color-danger:#f56c6c;--el-color-danger-light-3:#b25252;--el-color-danger-light-5:#854040;--el-color-danger-light-7:#582e2e;--el-color-danger-light-8:#412626;--el-color-danger-light-9:#2b1d1d;--el-color-danger-dark-2:#f78989;--el-color-error:#f56c6c;--el-color-error-light-3:#b25252;--el-color-error-light-5:#854040;--el-color-error-light-7:#582e2e;--el-color-error-light-8:#412626;--el-color-error-light-9:#2b1d1d;--el-color-error-dark-2:#f78989;--el-color-info:#909399;--el-color-info-light-3:#6b6d71;--el-color-info-light-5:#525457;--el-color-info-light-7:#393a3c;--el-color-info-light-8:#2d2d2f;--el-color-info-light-9:#202121;--el-color-info-dark-2:#a6a9ad;--el-box-shadow:0px 12px 32px 4px rgba(0, 0, 0, .36),0px 8px 20px rgba(0, 0, 0, .72);--el-box-shadow-light:0px 0px 12px rgba(0, 0, 0, .72);--el-box-shadow-lighter:0px 0px 6px rgba(0, 0, 0, .72);--el-box-shadow-dark:0px 16px 48px 16px rgba(0, 0, 0, .72),0px 12px 32px #000000,0px 8px 16px -8px #000000;--el-bg-color-page:#0a0a0a;--el-bg-color:#141414;--el-bg-color-overlay:#1d1e1f;--el-text-color-primary:#E5EAF3;--el-text-color-regular:#CFD3DC;--el-text-color-secondary:#A3A6AD;--el-text-color-placeholder:#8D9095;--el-text-color-disabled:#6C6E72;--el-border-color-darker:#636466;--el-border-color-dark:#58585B;--el-border-color:#4C4D4F;--el-border-color-light:#414243;--el-border-color-lighter:#363637;--el-border-color-extra-light:#2B2B2C;--el-fill-color-darker:#424243;--el-fill-color-dark:#39393A;--el-fill-color:#303030;--el-fill-color-light:#262727;--el-fill-color-lighter:#1D1D1D;--el-fill-color-extra-light:#191919;--el-fill-color-blank:transparent;--el-mask-color:rgba(0, 0, 0, .8);--el-mask-color-extra-light:rgba(0, 0, 0, .3)}html.dark .el-button{--el-button-disabled-text-color:rgba(255, 255, 255, .5)}html.dark .el-card{--el-card-bg-color:var(--el-bg-color-overlay)}html.dark .el-empty{--el-empty-fill-color-0:var(--el-color-black);--el-empty-fill-color-1:#4b4b52;--el-empty-fill-color-2:#36383d;--el-empty-fill-color-3:#1e1e20;--el-empty-fill-color-4:#262629;--el-empty-fill-color-5:#202124;--el-empty-fill-color-6:#212224;--el-empty-fill-color-7:#1b1c1f;--el-empty-fill-color-8:#1c1d1f;--el-empty-fill-color-9:#18181a}@media only screen and (max-width:767px){.hidden-xs-only{display:none!important}}@media only screen and (min-width:768px){.hidden-sm-and-up{display:none!important}}@media only screen and (min-width:768px) and (max-width:991px){.hidden-sm-only{display:none!important}}@media only screen and (max-width:991px){.hidden-sm-and-down{display:none!important}}@media only screen and (min-width:992px){.hidden-md-and-up{display:none!important}}@media only screen and (min-width:992px) and (max-width:1199px){.hidden-md-only{display:none!important}}@media only screen and (max-width:1199px){.hidden-md-and-down{display:none!important}}@media only screen and (min-width:1200px){.hidden-lg-and-up{display:none!important}}@media only screen and (min-width:1200px) and (max-width:1919px){.hidden-lg-only{display:none!important}}@media only screen and (max-width:1919px){.hidden-lg-and-down{display:none!important}}@media only screen and (min-width:1920px){.hidden-xl-only{display:none!important}}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:PingFang SC,Microsoft YaHei,Arial,Hiragino Sans GB,sans-serif;font-feature-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.visible{visibility:visible}.\!visible{visibility:visible!important}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.inset-x-0{left:0px;right:0px}.inset-y-0{top:0px;bottom:0px}.top-0{top:0px}.left-0{left:0px}.top-\[-9px\]{top:-9px}.right-\[-9px\]{right:-9px}.right-\[20px\]{right:20px}.-right-\[70px\]{right:-70px}.top-\[20px\]{top:20px}.top-\[54px\]{top:54px}.left-\[50\%\]{left:50%}.left-\[0px\]{left:0px}.right-\[0px\]{right:0px}.bottom-\[0px\]{bottom:0px}.-top-\[11px\]{top:-11px}.-right-\[8px\]{right:-8px}.top-\[10\%\]{top:10%}.-right-\[450px\]{right:-450px}.top-\[-5px\]{top:-5px}.right-\[-5px\]{right:-5px}.right-0{right:0px}.-bottom-\[2px\]{bottom:-2px}.-right-\[4px\]{right:-4px}.top-\[25px\]{top:25px}.right-3{right:12px}.top-\[-8px\]{top:-8px}.right-\[-8px\]{right:-8px}.top-\[50\%\]{top:50%}.right-\[-180\%\]{right:-180%}.z-\[1\]{z-index:1}.z-\[2\]{z-index:2}.m-0{margin:0}.m-\[10px\]{margin:10px}.m-2{margin:8px}.m-auto{margin:auto}.m-1{margin:4px}.m-\[-4px\]{margin:-4px}.mx-\[10px\]{margin-left:10px;margin-right:10px}.my-\[10px\]{margin-top:10px;margin-bottom:10px}.my-\[15px\]{margin-top:15px;margin-bottom:15px}.my-3{margin-top:12px;margin-bottom:12px}.mx-auto{margin-left:auto;margin-right:auto}.mx-\[5px\]{margin-left:5px;margin-right:5px}.mx-\[3px\]{margin-left:3px;margin-right:3px}.my-\[3px\]{margin-top:3px;margin-bottom:3px}.mx-\[14px\]{margin-left:14px;margin-right:14px}.my-\[16px\]{margin-top:16px;margin-bottom:16px}.my-\[20px\]{margin-top:20px;margin-bottom:20px}.\!my-\[20px\]{margin-top:20px!important;margin-bottom:20px!important}.mx-2{margin-left:8px;margin-right:8px}.mx-\[15px\]{margin-left:15px;margin-right:15px}.mx-\[25px\]{margin-left:25px;margin-right:25px}.my-\[5px\]{margin-top:5px;margin-bottom:5px}.mb-\[16px\]{margin-bottom:16px}.mr-\[10px\]{margin-right:10px}.mb-\[10px\]{margin-bottom:10px}.mt-\[15px\]{margin-top:15px}.mt-\[10px\]{margin-top:10px}.ml-\[10px\]{margin-left:10px}.ml-\[8px\]{margin-left:8px}.ml-\[15px\]{margin-left:15px}.mt-\[20px\]{margin-top:20px}.mt-\[5px\]{margin-top:5px}.mr-\[14px\]{margin-right:14px}.mt-\[30px\]{margin-top:30px}.mr-\[20px\]{margin-right:20px}.mt-\[46px\]{margin-top:46px}.ml-\[40px\]{margin-left:40px}.mr-\[84px\]{margin-right:84px}.ml-\[12px\]{margin-left:12px}.mt-\[8px\]{margin-top:8px}.mt-\[36px\]{margin-top:36px}.mb-\[20px\]{margin-bottom:20px}.mr-4{margin-right:16px}.mb-4{margin-bottom:16px}.mt-\[24px\]{margin-top:24px}.mr-\[24px\]{margin-right:24px}.mt-\[32px\]{margin-top:32px}.mt-\[6px\]{margin-top:6px}.mr-\[5px\]{margin-right:5px}.mt-\[16px\]{margin-top:16px}.ml-2{margin-left:8px}.mb-\[40px\]{margin-bottom:40px}.ml-\[20px\]{margin-left:20px}.mr-\[40px\]{margin-right:40px}.mb-\[5px\]{margin-bottom:5px}.mr-\[30px\]{margin-right:30px}.mt-1{margin-top:4px}.ml-\[430px\]{margin-left:430px}.mb-\[15px\]{margin-bottom:15px}.ml-4{margin-left:16px}.ml-\[100px\]{margin-left:100px}.mt-\[40px\]{margin-top:40px}.ml-\[1px\]{margin-left:1px}.mt-\[50px\]{margin-top:50px}.mr-\[12px\]{margin-right:12px}.mt-\[62px\]{margin-top:62px}.mt-\[18px\]{margin-top:18px}.mr-\[15px\]{margin-right:15px}.mt-\[3px\]{margin-top:3px}.mt-\[2px\]{margin-top:2px}.mt-\[12px\]{margin-top:12px}.mr-\[9px\]{margin-right:9px}.ml-\[3px\]{margin-left:3px}.ml-\[7px\]{margin-left:7px}.ml-\[30px\]{margin-left:30px}.mt-\[42px\]{margin-top:42px}.ml-\[18px\]{margin-left:18px}.mb-\[9px\]{margin-bottom:9px}.mr-\[25px\]{margin-right:25px}.mt-\[60px\]{margin-top:60px}.ml-\[24px\]{margin-left:24px}.mr-\[8px\]{margin-right:8px}.ml-\[0px\]{margin-left:0}.mt-\[25px\]{margin-top:25px}.mb-\[32px\]{margin-bottom:32px}.mt-\[28px\]{margin-top:28px}.mb-\[24px\]{margin-bottom:24px}.mb-\[4px\]{margin-bottom:4px}.mb-\[26px\]{margin-bottom:26px}.mb-\[30px\]{margin-bottom:30px}.mr-1{margin-right:4px}.mr-3{margin-right:12px}.ml-\[13px\]{margin-left:13px}.\!ml-\[20px\]{margin-left:20px!important}.\!mb-\[5px\]{margin-bottom:5px!important}.ml-1{margin-left:4px}.mt-4{margin-top:16px}.mr-\[3px\]{margin-right:3px}.ml-0\.5{margin-left:2px}.ml-0{margin-left:0}.mb-3{margin-bottom:12px}.mr-2{margin-right:8px}.mb-80{margin-bottom:320px}.\!mb-\[10px\]{margin-bottom:10px!important}.\!mr-\[10px\]{margin-right:10px!important}.ml-auto{margin-left:auto}.mt-2{margin-top:8px}.mt-\[22px\]{margin-top:22px}.mr-\[16px\]{margin-right:16px}.mb-\[18px\]{margin-bottom:18px}.\!mb-0{margin-bottom:0!important}.ml-10{margin-left:40px}.mr-\[4px\]{margin-right:4px}.mr-\[6px\]{margin-right:6px}.ml-\[5px\]{margin-left:5px}.ml-\[4px\]{margin-left:4px}.mb-\[8px\]{margin-bottom:8px}.box-border{box-sizing:border-box}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.\!flex{display:flex!important}.inline-flex{display:inline-flex}.list-item{display:list-item}.hidden{display:none}.h-\[350px\]{height:350px}.h-\[40px\]{height:40px}.h-\[32px\]{height:32px}.h-\[100px\]{height:100px}.h-\[300px\]{height:300px}.h-full{height:100%}.h-\[40vh\]{height:40vh}.h-0{height:0px}.h-\[120px\]{height:120px}.h-screen{height:100vh}.h-\[60px\]{height:60px}.h-\[60vh\]{height:60vh}.\!h-\[48px\]{height:48px!important}.h-\[50px\]{height:50px}.h-\[30rpx\]{height:30rpx}.h-\[54px\]{height:54px}.h-\[50vh\]{height:50vh}.h-\[35px\]{height:35px}.h-\[75px\]{height:75px}.h-\[64px\]{height:64px}.h-\[550px\]{height:550px}.h-\[400px\]{height:400px}.h-\[22px\]{height:22px}.\!h-\[34px\]{height:34px!important}.h-\[48px\]{height:48px}.h-\[18px\]{height:18px}.h-\[70px\]{height:70px}.h-\[44px\]{height:44px}.h-\[16px\]{height:16px}.h-\[12px\]{height:12px}.h-\[145px\]{height:145px}.h-\[88px\]{height:88px}.h-\[20px\]{height:20px}.h-\[15px\]{height:15px}.h-\[128px\]{height:128px}.h-\[100\%\]{height:100%}.h-\[30px\]{height:30px}.\!h-auto{height:auto!important}.h-20{height:80px}.h-\[500px\]{height:500px}.h-\[24px\]{height:24px}.h-\[180px\]{height:180px}.h-auto{height:auto}.h-\[28px\]{height:28px}.\!h-full{height:100%!important}.h-\[45px\]{height:45px}.max-h-full,.max-h-\[100\%\]{max-height:100%}.max-h-\[220px\]{max-height:220px}.max-h-\[40px\]{max-height:40px}.min-h-\[650px\]{min-height:650px}.min-h-\[150px\]{min-height:150px}.min-h-\[580px\]{min-height:580px}.min-h-\[300px\]{min-height:300px}.min-h-\[400px\]{min-height:400px}.min-h-\[80vh\]{min-height:80vh}.min-h-\[120px\]{min-height:120px}.w-\[140px\]{width:140px}.w-6\/12{width:50%}.w-\[100px\]{width:100px}.w-full{width:100%}.w-\[180px\]{width:180px}.w-\[200px\]{width:200px}.w-\[120px\]{width:120px}.w-screen{width:100vw}.w-\[402px\]{width:402px}.w-0{width:0px}.w-\[78px\]{width:78px}.w-\[154px\]{width:154px}.w-\[182px\]{width:182px}.w-\[40px\]{width:40px}.w-\[50px\]{width:50px}.w-\[190px\]{width:190px}.w-\[247px\]{width:247px}.w-\[54px\]{width:54px}.w-\[236px\]{width:236px}.w-\[230px\]{width:230px}.w-\[240px\]{width:240px}.w-\[35px\]{width:35px}.w-\[290px\]{width:290px}.w-2\/6{width:33.333333%}.w-\[375px\]{width:375px}.w-\[42px\]{width:42px}.w-\[400px\]{width:400px}.w-\[340px\]{width:340px}.w-\[130px\]{width:130px}.w-\[320px\]{width:320px}.w-\[500px\]{width:500px}.w-\[360px\]{width:360px}.w-\[22px\]{width:22px}.w-\[215px\]{width:215px}.w-\[300px\]{width:300px}.w-\[32x\]{width:32x}.w-\[1200px\]{width:1200px}.w-\[90px\]{width:90px}.w-\[800px\]{width:800px}.\!w-\[300px\]{width:300px!important}.w-\[285px\]{width:285px}.w-\[48px\]{width:48px}.w-\[70px\]{width:70px}.w-\[280px\]{width:280px}.w-\[44px\]{width:44px}.w-\[16px\]{width:16px}.w-\[12px\]{width:12px}.w-\[52px\]{width:52px}.w-\[225px\]{width:225px}.w-\[80px\]{width:80px}.w-\[15px\]{width:15px}.w-\[20px\]{width:20px}.w-\[245px\]{width:245px}.\!w-\[250px\]{width:250px!important}.w-\[256px\]{width:256px}.w-\[450px\]{width:450px}.w-\[100\%\]{width:100%}.w-\[45\%\]{width:45%}.w-\[80\%\]{width:80%}.w-\[250px\]{width:250px}.w-\[150px\]{width:150px}.w-\[110px\]{width:110px}.w-\[30px\]{width:30px}.w-\[60px\]{width:60px}.w-20{width:80px}.w-\[295px\]{width:295px}.w-11\/12{width:91.666667%}.w-\[24px\]{width:24px}.\!w-full{width:100%!important}.w-\[45px\]{width:45px}.w-\[146px\]{width:146px}.w-\[196px\]{width:196px}.w-\[270px\]{width:270px}.\!w-auto{width:auto!important}.w-\[125px\]{width:125px}.w-auto{width:auto}.w-\[124px\]{width:124px}.w-\[64px\]{width:64px}.min-w-\[1200px\]{min-width:1200px}.min-w-\[1000px\]{min-width:1000px}.min-w-\[100px\]{min-width:100px}.min-w-\[42px\]{min-width:42px}.min-w-\[110px\]{min-width:110px}.min-w-\[60px\]{min-width:60px}.max-w-full{max-width:100%}.max-w-\[145px\]{max-width:145px}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[350px\]{max-width:350px}.max-w-\[100\%\]{max-width:100%}.max-w-\[280px\]{max-width:280px}.max-w-\[260px\]{max-width:260px}.max-w-\[40px\]{max-width:40px}.max-w-\[230px\]{max-width:230px}.max-w-\[210px\]{max-width:210px}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.translate-x-\[-50\%\]{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[50\%\],.translate-y-\[-50\%\]{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize{resize:both}.list-none{list-style-type:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-all{word-break:break-all}.rounded-\[3px\]{border-radius:3px}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-\[15px\]{border-radius:15px}.rounded-full{border-radius:9999px}.rounded-\[50px\]{border-radius:50px}.rounded-\[50\%\]{border-radius:50%}.rounded-\[6px\]{border-radius:6px}.rounded-\[8px\]{border-radius:8px}.rounded-\[999px\]{border-radius:999px}.rounded-\[5px\]{border-radius:5px}.rounded-\[99px\]{border-radius:99px}.rounded-2xl{border-radius:1rem}.rounded-\[13px\]{border-radius:13px}.rounded-tl-md{border-top-left-radius:.375rem}.rounded-br-md{border-bottom-right-radius:.375rem}.border,.border-\[1px\]{border-width:1px}.\!border-0{border-width:0px!important}.border-2{border-width:2px}.border-0{border-width:0px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-l-\[3px\]{border-left-width:3px}.border-b-\[1px\]{border-bottom-width:1px}.\!border-t-\[1px\]{border-top-width:1px!important}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.\!border-none{border-style:none!important}.border-none{border-style:none}.border-br{border-color:var(--el-border-color)}.border-primary{border-color:var(--el-color-primary)}.border-gray-500{--tw-border-opacity:1;border-color:rgb(107 114 128 / var(--tw-border-opacity))}.border-\[\#ccc\]{--tw-border-opacity:1;border-color:rgb(204 204 204 / var(--tw-border-opacity))}.border-\[\#E0E0E0\]{--tw-border-opacity:1;border-color:rgb(224 224 224 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-\[\#E9EBF0\]{--tw-border-opacity:1;border-color:rgb(233 235 240 / var(--tw-border-opacity))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249 / var(--tw-border-opacity))}.border-\[\#EBEBEC\]{--tw-border-opacity:1;border-color:rgb(235 235 236 / var(--tw-border-opacity))}.border-\[\#D0D7D9\]{--tw-border-opacity:1;border-color:rgb(208 215 217 / var(--tw-border-opacity))}.border-\[\#\#DCDFE6\]{border-color:##DCDFE6}.border-\[\#000\]{--tw-border-opacity:1;border-color:rgb(0 0 0 / var(--tw-border-opacity))}.border-\[\#ebeef5\]{--tw-border-opacity:1;border-color:rgb(235 238 245 / var(--tw-border-opacity))}.border-\[var\(--el-color-primary\)\]{border-color:var(--el-color-primary)}.border-primary-light-5{border-color:var(--el-color-primary-light-5)}.border-\[\#eee\]{--tw-border-opacity:1;border-color:rgb(238 238 238 / var(--tw-border-opacity))}.bg-primary-light-9{background-color:var(--el-color-primary-light-9)}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-page{background-color:var(--el-bg-color-page)}.bg-\[\#fff\]{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-\[\#f4f4f5\]{--tw-bg-opacity:1;background-color:rgb(244 244 245 / var(--tw-bg-opacity))}.bg-\[\#F3F6FF\]{--tw-bg-opacity:1;background-color:rgb(243 246 255 / var(--tw-bg-opacity))}.\!bg-transparent{background-color:transparent!important}.bg-overlay{background-color:var(--el-bg-color-overlay)}.bg-white{background-color:var(--el-color-white)}.bg-\[\#f7f7f7\]{--tw-bg-opacity:1;background-color:rgb(247 247 247 / var(--tw-bg-opacity))}.\!bg-\[\#000\]{--tw-bg-opacity:1 !important;background-color:rgb(0 0 0 / var(--tw-bg-opacity))!important}.bg-\[\#F0F0F0\]{--tw-bg-opacity:1;background-color:rgb(240 240 240 / var(--tw-bg-opacity))}.bg-primary{background-color:var(--el-color-primary)}.bg-body{background-color:var(--el-bg-color)}.bg-\[\#F7F8FA\]{--tw-bg-opacity:1;background-color:rgb(247 248 250 / var(--tw-bg-opacity))}.bg-\[\#F0F2F4\]{--tw-bg-opacity:1;background-color:rgb(240 242 244 / var(--tw-bg-opacity))}.bg-\[\#FF5500\]{--tw-bg-opacity:1;background-color:rgb(255 85 0 / var(--tw-bg-opacity))}.bg-\[\#c0c4cc\]{--tw-bg-opacity:1;background-color:rgb(192 196 204 / var(--tw-bg-opacity))}.\!bg-\[\#fff\]{--tw-bg-opacity:1 !important;background-color:rgb(255 255 255 / var(--tw-bg-opacity))!important}.bg-\[\#F7FAFB\]{--tw-bg-opacity:1;background-color:rgb(247 250 251 / var(--tw-bg-opacity))}.bg-\[\#FAFAFA\]{--tw-bg-opacity:1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}.bg-\[\#333\]{--tw-bg-opacity:1;background-color:rgb(51 51 51 / var(--tw-bg-opacity))}.bg-\[\#F9F9F9\]{--tw-bg-opacity:1;background-color:rgb(249 249 249 / var(--tw-bg-opacity))}.bg-\[\#E6EFFF\]{--tw-bg-opacity:1;background-color:rgb(230 239 255 / var(--tw-bg-opacity))}.bg-\[\#FFE6E9\]{--tw-bg-opacity:1;background-color:rgb(255 230 233 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-\[\#6F77FF\]{--tw-bg-opacity:1;background-color:rgb(111 119 255 / var(--tw-bg-opacity))}.bg-\[\#0FB199\]{--tw-bg-opacity:1;background-color:rgb(15 177 153 / var(--tw-bg-opacity))}.bg-\[\#FFA238\]{--tw-bg-opacity:1;background-color:rgb(255 162 56 / var(--tw-bg-opacity))}.bg-\[\#4A78FF\]{--tw-bg-opacity:1;background-color:rgb(74 120 255 / var(--tw-bg-opacity))}.bg-\[\#FE5858\]{--tw-bg-opacity:1;background-color:rgb(254 88 88 / var(--tw-bg-opacity))}.bg-\[\#6EB44E\]{--tw-bg-opacity:1;background-color:rgb(110 180 78 / var(--tw-bg-opacity))}.bg-\[\#FA6400\]{--tw-bg-opacity:1;background-color:rgb(250 100 0 / var(--tw-bg-opacity))}.bg-\[\#f8f8f8\]{--tw-bg-opacity:1;background-color:rgb(248 248 248 / var(--tw-bg-opacity))}.bg-\[\#F8FAFF\]{--tw-bg-opacity:1;background-color:rgb(248 250 255 / var(--tw-bg-opacity))}.bg-\[\#FAFAFD\]{--tw-bg-opacity:1;background-color:rgb(250 250 253 / var(--tw-bg-opacity))}.bg-\[\#f7f8fa\]{--tw-bg-opacity:1;background-color:rgb(247 248 250 / var(--tw-bg-opacity))}.bg-\[\#778aa3\]{--tw-bg-opacity:1;background-color:rgb(119 138 163 / var(--tw-bg-opacity))}.bg-\[\#f5f7fa\]{--tw-bg-opacity:1;background-color:rgb(245 247 250 / var(--tw-bg-opacity))}.bg-\[\#f4f3f7\]{--tw-bg-opacity:1;background-color:rgb(244 243 247 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-\[\#2B303B\]{--tw-bg-opacity:1;background-color:rgb(43 48 59 / var(--tw-bg-opacity))}.bg-\[\#282c34\]{--tw-bg-opacity:1;background-color:rgb(40 44 52 / var(--tw-bg-opacity))}.bg-opacity-60{--tw-bg-opacity:.6}.bg-cover{background-size:cover}.bg-center{background-position:center}.bg-no-repeat{background-repeat:no-repeat}.p-\[4px\]{padding:4px}.p-\[5px\]{padding:5px}.p-\[15px\]{padding:15px}.p-\[10px\]{padding:10px}.p-0{padding:0}.p-\[20px\]{padding:20px}.p-\[40px\]{padding:40px}.p-5{padding:20px}.p-3{padding:12px}.px-\[10px\]{padding-left:10px;padding-right:10px}.px-4{padding-left:16px;padding-right:16px}.py-\[10px\]{padding-top:10px;padding-bottom:10px}.px-\[64px\]{padding-left:64px;padding-right:64px}.px-\[20px\]{padding-left:20px;padding-right:20px}.px-\[18px\]{padding-left:18px;padding-right:18px}.py-\[8px\]{padding-top:8px;padding-bottom:8px}.py-5{padding-top:20px;padding-bottom:20px}.px-\[90px\]{padding-left:90px;padding-right:90px}.py-\[5px\]{padding-top:5px;padding-bottom:5px}.px-\[15px\]{padding-left:15px;padding-right:15px}.\!px-\[35px\]{padding-left:35px!important;padding-right:35px!important}.py-\[20px\]{padding-top:20px;padding-bottom:20px}.py-\[24px\]{padding-top:24px;padding-bottom:24px}.px-\[24px\]{padding-left:24px;padding-right:24px}.px-\[76px\]{padding-left:76px;padding-right:76px}.py-\[18px\]{padding-top:18px;padding-bottom:18px}.py-\[3px\]{padding-top:3px;padding-bottom:3px}.px-\[6px\]{padding-left:6px;padding-right:6px}.px-\[32px\]{padding-left:32px;padding-right:32px}.py-\[30px\]{padding-top:30px;padding-bottom:30px}.px-\[11px\]{padding-left:11px;padding-right:11px}.px-2{padding-left:8px;padding-right:8px}.px-\[16px\]{padding-left:16px;padding-right:16px}.py-\[15px\]{padding-top:15px;padding-bottom:15px}.px-\[22px\]{padding-left:22px;padding-right:22px}.px-\[8px\]{padding-left:8px;padding-right:8px}.py-\[2px\]{padding-top:2px;padding-bottom:2px}.px-\[30px\]{padding-left:30px;padding-right:30px}.pl-4{padding-left:16px}.pl-\[20px\]{padding-left:20px}.pt-\[20px\]{padding-top:20px}.pt-\[10px\]{padding-top:10px}.pl-\[15px\]{padding-left:15px}.pb-\[10px\]{padding-bottom:10px}.pt-\[30px\]{padding-top:30px}.pl-\[32px\]{padding-left:32px}.pr-\[20px\]{padding-right:20px}.pb-\[60px\]{padding-bottom:60px}.pt-\[34px\]{padding-top:34px}.pl-\[30px\]{padding-left:30px}.pr-\[60px\]{padding-right:60px}.pb-\[62px\]{padding-bottom:62px}.pb-10{padding-bottom:40px}.pl-3{padding-left:12px}.pt-\[64px\]{padding-top:64px}.pt-\[5px\]{padding-top:5px}.pt-14{padding-top:56px}.pb-6{padding-bottom:24px}.pl-\[5px\]{padding-left:5px}.pt-\[90px\]{padding-top:90px}.pb-\[20px\]{padding-bottom:20px}.pt-\[18px\]{padding-top:18px}.pl-\[62px\]{padding-left:62px}.pr-\[64px\]{padding-right:64px}.pt-\[22px\]{padding-top:22px}.pb-\[16px\]{padding-bottom:16px}.pt-\[68px\]{padding-top:68px}.pb-\[77px\]{padding-bottom:77px}.pt-\[60px\]{padding-top:60px}.pt-\[24px\]{padding-top:24px}.pb-\[14px\]{padding-bottom:14px}.pb-\[15px\]{padding-bottom:15px}.pt-\[59px\]{padding-top:59px}.pl-\[14px\]{padding-left:14px}.pb-8{padding-bottom:32px}.pr-\[80px\]{padding-right:80px}.pl-\[280px\]{padding-left:280px}.pb-0{padding-bottom:0}.pl-\[80px\]{padding-left:80px}.pr-\[70px\]{padding-right:70px}.pl-\[8px\]{padding-left:8px}.pl-\[10px\]{padding-left:10px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.indent-\[2em\]{text-indent:2em}.text-sm{font-size:var( --el-font-size-small)}.text-lg{font-size:var( --el-font-size-medium)}.text-xs{font-size:var(--el-font-size-extra-small)}.text-base{font-size:var( --el-font-size-base)}.text-\[14px\]{font-size:14px}.text-\[20px\]{font-size:20px}.text-\[26px\]{font-size:26px}.text-\[12px\]{font-size:12px}.text-\[17px\]{font-size:17px}.text-\[13px\]{font-size:13px}.text-\[16px\]{font-size:16px}.\!text-\[13px\]{font-size:13px!important}.text-xl{font-size:var( --el-font-size-large)}.text-3xl{font-size:20px}.text-\[28px\]{font-size:28px}.\!text-xs{font-size:var(--el-font-size-extra-small)!important}.text-\[24px\]{font-size:24px}.\!text-\[45px\]{font-size:45px!important}.text-\[18px\]{font-size:18px}.text-\[10px\]{font-size:10px}.text-2xl{font-size:var( --el-font-size-extra-large)}.\!text-sm{font-size:var( --el-font-size-small)!important}.\!text-base{font-size:var( --el-font-size-base)!important}.text-\[15px\]{font-size:15px}.\!text-\[16px\]{font-size:16px!important}.\!text-\[25px\]{font-size:25px!important}.\!text-\[14px\]{font-size:14px!important}.\!text-\[21px\]{font-size:21px!important}.font-bold{font-weight:700}.font-\[600\]{font-weight:600}.font-\[500\]{font-weight:500}.font-\[700\]{font-weight:700}.leading-\[40px\]{line-height:40px}.leading-\[32px\]{line-height:32px}.leading-none{line-height:1}.leading-\[30px\]{line-height:30px}.leading-\[18px\]{line-height:18px}.leading-\[84px\]{line-height:84px}.leading-\[1\.1\]{line-height:1.1}.leading-\[37px\]{line-height:37px}.leading-\[20px\]{line-height:20px}.leading-\[1\]{line-height:1}.leading-\[33px\]{line-height:33px}.leading-\[16px\]{line-height:16px}.leading-\[24px\]{line-height:24px}.leading-tight{line-height:1.25}.leading-normal{line-height:1.5}.\!leading-\[14px\]{line-height:14px!important}.text-primary{color:var(--el-color-primary)}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-secondary{color:var(--el-text-color-secondary)}.text-\[\#4C4C4C\]{--tw-text-opacity:1;color:rgb(76 76 76 / var(--tw-text-opacity))}.text-\[\#797979\]{--tw-text-opacity:1;color:rgb(121 121 121 / var(--tw-text-opacity))}.text-\[\#656668\]{--tw-text-opacity:1;color:rgb(101 102 104 / var(--tw-text-opacity))}.text-\[red\]{--tw-text-opacity:1;color:rgb(255 0 0 / var(--tw-text-opacity))}.text-\[\#666\]{--tw-text-opacity:1;color:rgb(102 102 102 / var(--tw-text-opacity))}.\!text-\[var\(--el-color-primary\)\]{color:var(--el-color-primary)!important}.text-info{color:var(--el-color-info)}.text-\[\#222\]{--tw-text-opacity:1;color:rgb(34 34 34 / var(--tw-text-opacity))}.\!text-\[\#fff\]{--tw-text-opacity:1 !important;color:rgb(255 255 255 / var(--tw-text-opacity))!important}.text-\[\#242424\]{--tw-text-opacity:1;color:rgb(36 36 36 / var(--tw-text-opacity))}.text-\[\#a9a9a9\]{--tw-text-opacity:1;color:rgb(169 169 169 / var(--tw-text-opacity))}.text-\[\#888\]{--tw-text-opacity:1;color:rgb(136 136 136 / var(--tw-text-opacity))}.text-white{color:var(--el-color-white)}.text-\[\#999\]{--tw-text-opacity:1;color:rgb(153 153 153 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-\[\#c4c2c2\]{--tw-text-opacity:1;color:rgb(196 194 194 / var(--tw-text-opacity))}.text-success{color:var(--el-color-success)}.text-error{color:var(--el-color-error)}.text-\[var\(--el-color-primary\)\]{color:var(--el-color-primary)}.text-\[\#000\]{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-\[\#fff\]{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-\[\#555\]{--tw-text-opacity:1;color:rgb(85 85 85 / var(--tw-text-opacity))}.text-\[\#6D7278\]{--tw-text-opacity:1;color:rgb(109 114 120 / var(--tw-text-opacity))}.text-\[\#3F3F3F\]{--tw-text-opacity:1;color:rgb(63 63 63 / var(--tw-text-opacity))}.text-\[\#424242\]{--tw-text-opacity:1;color:rgb(66 66 66 / var(--tw-text-opacity))}.text-\[\#333\]{--tw-text-opacity:1;color:rgb(51 51 51 / var(--tw-text-opacity))}.text-\[\#2D5FFF\]{--tw-text-opacity:1;color:rgb(45 95 255 / var(--tw-text-opacity))}.text-\[\#FF2D2D\]{--tw-text-opacity:1;color:rgb(255 45 45 / var(--tw-text-opacity))}.text-\[\#666666\]{--tw-text-opacity:1;color:rgb(102 102 102 / var(--tw-text-opacity))}.text-\[\#333333\]{--tw-text-opacity:1;color:rgb(51 51 51 / var(--tw-text-opacity))}.text-\[\#303133\]{--tw-text-opacity:1;color:rgb(48 49 51 / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216 / var(--tw-text-opacity))}.text-\[\#4F5563\]{--tw-text-opacity:1;color:rgb(79 85 99 / var(--tw-text-opacity))}.text-tx-secondary{color:var(--el-text-color-secondary)}.text-primary-light-5{color:var(--el-color-primary-light-5)}.text-\[\#989898\]{--tw-text-opacity:1;color:rgb(152 152 152 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:var(--el-box-shadow);--tw-shadow-colored:var(--el-box-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/c/font_3883393_46xoryy5l7v.woff2?t=1701067532618) format("woff2"),url(//at.alicdn.com/t/c/font_3883393_46xoryy5l7v.woff?t=1701067532618) format("woff"),url(//at.alicdn.com/t/c/font_3883393_46xoryy5l7v.ttf?t=1701067532618) format("truetype")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icontuichudenglu:before{content:"\e64a"}.iconhuojian:before{content:"\e6ff"}.iconicon_huojian1:before{content:"\e6fe"}.iconrili1:before{content:"\e62e"}.iconrili:before{content:"\e664"}.iconshouquanliebiao:before{content:"\e6fd"}.icontishi:before{content:"\e6fc"}.iconwodedingdan:before{content:"\e6f2"}.icongerenxinxi:before{content:"\e6f4"}.iconwodezhandian:before{content:"\e6f5"}.iconwodeshouquan:before{content:"\e6f6"}.iconwodezhanghu:before{content:"\e6f8"}.iconshimingrenzheng:before{content:"\e6f9"}.iconkaifashangzhongxin:before{content:"\e6fa"}.iconts-tubiao_CertificateServer:before{content:"\e62b"}.icona-shangbiao2:before{content:"\e64f"}.iconjiagebanben:before{content:"\e6f0"}.iconjishuzhichi:before{content:"\e6f1"}.iconjichushezhi:before{content:"\e6ed"}.iconshangchengshezhi:before{content:"\e6ee"}.iconkaifashezhi:before{content:"\e6ef"}.iconqiehuan3:before{content:"\e6ec"}.iconxiugai:before{content:"\e62a"}.iconxiazai01:before{content:"\ea38"}.iconjingdiandingdan:before{content:"\e6ea"}.iconluxiandingdan:before{content:"\e6eb"}.iconfapiaoguanli:before{content:"\e683"}.iconhuishouzhan:before{content:"\e6d7"}.iconshangpinliebiao1:before{content:"\e6d8"}.iconshangpinfenlei:before{content:"\e6d9"}.iconfenleishezhi:before{content:"\e6da"}.iconluxianguanli:before{content:"\e6db"}.iconjiudianguanli:before{content:"\e6dc"}.iconshangjiadizhiku:before{content:"\e6dd"}.iconkaxiangguanli:before{content:"\e6de"}.iconjiudiandingdan:before{content:"\e6df"}.iconjingdianguanli:before{content:"\e6e0"}.icondingdanshezhi:before{content:"\e6e3"}.iconjiaoyishezhi:before{content:"\e6e4"}.icondingdanhexiao:before{content:"\e6e5"}.icondingdanweiquan:before{content:"\e6e6"}.icona-dingdanliebiao:before{content:"\e6e7"}.iconyuyuexiangmu:before{content:"\e68e"}.iconshangpinpinpai:before{content:"\e6c9"}.iconyuyueshezhi:before{content:"\e6cb"}.iconxiangmuguanli:before{content:"\e6cc"}.iconyouhuiquan:before{content:"\e6cd"}.iconpaisongshezhi:before{content:"\e685"}.icontuikuanweiquan:before{content:"\e6ce"}.iconyingxiaozhongxin:before{content:"\e6cf"}.iconjishiguanli:before{content:"\e684"}.iconxiangmufenlei:before{content:"\e6d0"}.iconwuliugenzong:before{content:"\e6d1"}.iconshangpinbiaoqian:before{content:"\e6d2"}.iconshangpinpinglun:before{content:"\e6d3"}.iconshangpinfuwu:before{content:"\e6d4"}.icongonggao:before{content:"\e629"}.iconshangpinliebiao:before{content:"\e628"}.icongouwuche1:before{content:"\e680"}.icongouwuche:before{content:"\e6c8"}.iconyun1:before{content:"\e67e"}.iconicon-selected:before{content:"\e626"}.iconshangpinguanli:before{content:"\e67c"}.iconyuanquan_huaban1:before{content:"\e66c"}.iconzhankai:before{content:"\e67b"}.iconjiantou:before{content:"\e67a"}.iconchajian1:before{content:"\e679"}.iconicon_huojian:before{content:"\e677"}.iconanzhuang:before{content:"\e676"}.iconshouye:before{content:"\e675"}.iconshouye-shouye:before{content:"\e638"}.icondian:before{content:"\ec1e"}.iconjiantou_xiangzuoliangci_o:before{content:"\eb93"}.iconfenlei:before{content:"\e6c3"}.iconqiehuan2:before{content:"\e6c0"}.iconqudaoguanli2:before{content:"\e6c1"}.iconguanfangshichang:before{content:"\e6c2"}.iconyingyong1:before{content:"\e6bf"}.iconzhuangxiu2:before{content:"\e6bd"}.iconzhuangxiu21:before{content:"\e6be"}.iconqiehuan1:before{content:"\e625"}.icongaikuang1:before{content:"\e6b7"}.iconkaxiangchanpin:before{content:"\e6b6"}.iconchongzhidingdan:before{content:"\e6b8"}.iconkaxiangdingdan:before{content:"\e6b9"}.iconlvyouchanpin:before{content:"\e6ba"}.iconlvyoudingdan:before{content:"\e6bb"}.iconwenzhangguanli1:before{content:"\e6bc"}.iconchajiankaifa:before{content:"\e6b3"}.iconyunshichang:before{content:"\e6b5"}.iconnav-market:before{content:"\e60e"}.icondaimashengcheng:before{content:"\e6ae"}.icongengxinhuancun1:before{content:"\e6ac"}.iconhuiyuanbiaoqian:before{content:"\e6a4"}.iconhuiyuanjifen:before{content:"\e6ab"}.iconhuiyuanyongjin:before{content:"\e6a9"}.iconchakanlishi:before{content:"\e6a8"}.iconqudaoguanli1:before{content:"\e6aa"}.iconquanxianguanli:before{content:"\e6a6"}.iconsucaiguanli:before{content:"\e6a7"}.icona-shouyediannao:before{content:"\e6a5"}.iconhuanjingjiance:before{content:"\e6a2"}.iconjihuarenwu:before{content:"\e6a3"}.iconhuiyuanyue:before{content:"\e69f"}.iconxiaoxiguanli:before{content:"\e6a1"}.iconwodexingbiao:before{content:"\e6a0"}.iconzhifuguanli:before{content:"\e6af"}.iconwenzhangguanli:before{content:"\e6b0"}.iconhuiyuan2:before{content:"\e6b1"}.icongaikuang:before{content:"\e623"}.iconyun:before{content:"\e69e"}.icona-huaban1fuben25:before{content:"\e608"}.iconyun-line:before{content:"\e622"}.iconyingyongshichang-:before{content:"\e607"}.iconguanzhu:before{content:"\e739"}.iconlishijilu:before{content:"\f1e2"}.iconhuiyuanliebiao1:before{content:"\e69c"}.iconwangzhan1:before{content:"\e69d"}.iconcode:before{content:"\e620"}.iconcaidan:before{content:"\e652"}.iconyingyongshichang11:before{content:"\e697"}.iconcaiwuliushui:before{content:"\e698"}.iconshouquanxinxi2:before{content:"\e699"}.iconxianxiazhifu2:before{content:"\e69a"}.iconhuiyuantixian:before{content:"\e69b"}.iconqudaoguanli:before{content:"\e695"}.iconshichangwuliaozhichi:before{content:"\e694"}.iconcaiwu:before{content:"\e693"}.iconshezhi1:before{content:"\e696"}.iconhuiyuan11:before{content:"\e691"}.iconwangzhan:before{content:"\e690"}.iconyingyong:before{content:"\e68f"}.iconshezhi:before{content:"\e64b"}.iconshoucang:before{content:"\e8c2"}.iconpaixu:before{content:"\e60d"}.iconpaixu1:before{content:"\e64e"}.iconwenhao:before{content:"\e72d"}.iconshimingrenzheng-xian:before{content:"\e89c"}.iconkaifazheguanli1:before{content:"\e636"}.iconquanbudingdan:before{content:"\e606"}.iconmofang-liangzuoliangyou:before{content:"\e6c5"}.iconmofang-yishangliangxia:before{content:"\e6c6"}.iconmofang-yizuoliangyou:before{content:"\e6c7"}.iconxuanzemoban-yizuosanyou:before{content:"\e6e9"}.iconrequ:before{content:"\e68d"}.iconmofang1:before{content:"\e64d"}.iconxinyongqia:before{content:"\e785"}.iconmendian:before{content:"\e60a"}.iconico_yuyueguanli_yuyuebiangeng:before{content:"\e94a"}.iconsousuo:before{content:"\e8b9"}.icongengduo:before{content:"\e63b"}.icona-02_luxian:before{content:"\e687"}.iconhuiyuanxinxi:before{content:"\e688"}.iconjingdian:before{content:"\e689"}.iconhuiyuandingdan:before{content:"\e68a"}.iconjiudian:before{content:"\e68b"}.iconhellowenbenanli:before{content:"\e68c"}.iconqiehuan:before{content:"\e61e"}.iconxiangyoujiantou:before{content:"\e660"}.iconxiangzuojiantou:before{content:"\e663"}.icondingdan:before{content:"\e61d"}.iconyingyongshichang1:before{content:"\e61c"}.iconyingyongshichang2:before{content:"\e60b"}.iconlingdang-xianxing:before{content:"\e8c0"}.icondianhua:before{content:"\e8c3"}.iconic_manage_assignprop:before{content:"\e60c"}.iconchengshi:before{content:"\ec70"}.icontaocanliebiao:before{content:"\e6b2"}.iconweixin:before{content:"\e647"}.iconhuiyuanguanli:before{content:"\e64c"}.iconhuangjinhuiyuan0101-copy:before{content:"\e621"}.iconhuiyuan1:before{content:"\e644"}.iconqianbao:before{content:"\e6ca"}.iconic_description_file24px:before{content:"\e61a"}.iconzhuangxiu1:before{content:"\e66b"}.icontuikuanjilu:before{content:"\e8cf"}.icongengxinhuancun:before{content:"\e686"}.iconsixingjiance:before{content:"\e645"}.iconzhuceshezhi:before{content:"\e6ad"}.iconmanage-apply:before{content:"\e619"}.iconyingyongguanli:before{content:"\e61f"}.iconkaifazheguanli:before{content:"\e624"}.iconlianmengguanli:before{content:"\e65f"}.icondianzan:before{content:"\ec7f"}.iconh5e:before{content:"\e654"}.iconyingyongshichang:before{content:"\e618"}.icondesktop:before{content:"\e6e8"}.iconzhifubao:before{content:"\e8e4"}.iconyunkongjian:before{content:"\e666"}.iconbankuai:before{content:"\e668"}.iconneirong2:before{content:"\e889"}.icon24gl-userGroup:before{content:"\eb26"}.icon14:before{content:"\e615"}.iconjubao:before{content:"\e611"}.iconbiaoti:before{content:"\e643"}.iconhuiyuanzhongxin:before{content:"\e692"}.iconfuzhukongbai1:before{content:"\e642"}.iconjiantoushang:before{content:"\e600"}.iconloader-line:before{content:"\e601"}.icondelete-line:before{content:"\e602"}.iconjiantouxia:before{content:"\e603"}.iconcopy-line:before{content:"\e605"}.icontuodong:before{content:"\e884"}.iconfuzhushuxian:before{content:"\e6f7"}.iconmofang:before{content:"\e6c4"}.iconshoudongxuanze:before{content:"\e6e1"}.iconyihangsange:before{content:"\e6d5"}.iconyihangsige:before{content:"\e6d6"}.iconyihangliangge:before{content:"\e6e2"}.iconyihang5ge:before{content:"\e6f3"}.icontupianguanggao1:before{content:"\e649"}.icontuwendaohang2:before{content:"\e65d"}.iconwenzhang:before{content:"\e662"}.icongudingzhanshi:before{content:"\e66e"}.icondanhanghuadong:before{content:"\e66f"}.icontuwendaohang3:before{content:"\e670"}.icontudaohang:before{content:"\e671"}.iconfenyehuadong:before{content:"\e673"}.iconwendaohang:before{content:"\e674"}.iconzhuangxiu:before{content:"\e627"}.icondianpuzhuangxiu:before{content:"\e616"}.icondibudaohang:before{content:"\e617"}.iconwangpuzhuangxiu:before{content:"\e881"}.iconweixingongzhonghao1:before{content:"\e705"}.iconweixingongzhonghaoguanli:before{content:"\e609"}.iconxiaochengxu:before{content:"\e635"}.icondenglu:before{content:"\e604"}.iconxiaochengxushezhi:before{content:"\e6b4"}.iconjifen:before{content:"\e70c"}.iconguanbi:before{content:"\e612"}.icondengluzhucemima:before{content:"\e67f"}.iconqiehuanjiaose:before{content:"\e60f"}.iconbanquan:before{content:"\e632"}.iconjifen-xianxing:before{content:"\e897"}.iconhuiyuanliebiao:before{content:"\e62c"}.iconjiaoseyonghu:before{content:"\e648"}.iconyonghu:before{content:"\e65e"}.iconbanquan1:before{content:"\e66d"}.iconweixingongzhonghao:before{content:"\e613"}.iconweixinxiaochengxu:before{content:"\e614"}.icon24gl-code:before{content:"\e9ba"}.icon24gl-portraitMalePlus2:before{content:"\eb25"}.iconyuandaima:before{content:"\e610"}.iconjiaoseguanli:before{content:"\e62d"}.iconjifen1:before{content:"\e641"}.iconbanquan2:before{content:"\e61b"}.iconjianpan:before{content:"\e661"}.icon24gf-playCircle:before{content:"\ea82"}.icontuichuquanping:before{content:"\e755"}.iconfanyi:before{content:"\e6fb"}.iconquanping:before{content:"\eb11"}@font-face{font-family:tourism;src:url(//at.alicdn.com/t/c/font_4137250_st1ha9l0k1e.woff2?t=1687685028672) format("woff2"),url(//at.alicdn.com/t/c/font_4137250_st1ha9l0k1e.woff?t=1687685028672) format("woff"),url(//at.alicdn.com/t/c/font_4137250_st1ha9l0k1e.ttf?t=1687685028672) format("truetype")}.tourism{font-family:tourism!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.tourism-icon-feiji:before{content:"\e600"}.tourism-icon-lvyou:before{content:"\e6a9"}.tourism-icon-lvyouchanpin:before{content:"\e63b"}.tourism-icon-lvyou1:before{content:"\e623"}.tourism-icon-lvyou2:before{content:"\e601"}.tourism-icon-lvyou3:before{content:"\e60c"}.tourism-icon-lvyoubaochedingdan:before{content:"\e612"}.tourism-icon-lvyou4:before{content:"\e653"}.tourism-icon-lvyou5:before{content:"\e610"}.tourism-icon-lvyouguanguang:before{content:"\e87e"}.tourism-icon-lvyou6:before{content:"\e642"}.el-header{--el-header-padding: 0 !important;--el-header-height: 64px !important}.el-table{--el-table-header-bg-color: #F5F7F9!important;--el-table-header-text-color:#333!important}.dark .el-table{--el-table-header-text-color: var(--el-text-color-secondary)!important}.el-table thead,.el-table thead th{font-weight:400!important}.el-button{background-color:var(--el-button-bg-color, var(--el-color-white))}.el-dialog{max-width:calc(100vw - 50px)}.el-date-editor--daterange,.el-date-editor--timerange,.el-date-editor.el-input,.el-date-editor .el-input__wrapper{--el-date-editor-width: 100%!important;width:100%}.el-textarea__inner::-webkit-scrollbar{width:6px;height:6px}.el-textarea__inner::-webkit-scrollbar-thumb{border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#909399;opacity:.3}.el-textarea__inner::-webkit-scrollbar-track{background-color:transparent}:root{--aside-width: 210px;--el-mask-color: rgba(255,255,255,1)}body,html{font-family:Helvetica Neue,Helvetica,Arial}.border-color{border-color:var(--el-border-color-lighter)}.el-form .form-tip{width:100%;font-size:var(--el-font-size-small);color:var(--el-color-info-light-3);line-height:1;margin-top:10px}.page-form .input-width{width:300px}.w-e-full-screen-container{z-index:10}.w-e-toolbar .w-e-bar-divider{display:none}.main-container .full-container{height:calc(100vh - 122px)}.panel-title{margin:0 0 16px;font-size:16px;font-weight:400;line-height:1}.fixed-footer-wrap{height:48px}.fixed-footer-wrap .fixed-footer{position:fixed;height:inherit;background:var(--el-bg-color-overlay);width:100%;left:0;bottom:0;z-index:4;display:flex;align-items:center;justify-content:center;--tw-shadow: var(--el-box-shadow);--tw-shadow-colored: var(--el-box-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-shadow);transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}html.dark{--w-e-toolbar-bg-color: var(--el-bg-color-overlay);--w-e-textarea-bg-color: var(--el-bg-color-overlay);--w-e-textarea-color: var(--el-input-text-color);--w-e-toolbar-border-color: var(--el-border-color);--w-e-toolbar-active-bg-color:var(--el-bg-color);--w-e-toolbar-active-color:var(--el-text-color-primary)}html.dark .el-table{--el-table-header-bg-color: var(--el-bg-color)!important}html.dark .table-search-wrap{background-color:var(--el-bg-color)!important}:root input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill{box-shadow:0 0 50px 50px #fff inset}.el-pager li.is-active{font-weight:400!important}.table-search-wrap .el-card__body{padding:10px 0}.table-search-wrap .el-form{margin-bottom:-18px}.base-bg{background-color:transparent!important}.el-statistic{--el-statistic-content-font-size: 28px !important}.region-input{--region-input-border-color: var(--el-border-color);display:flex;box-shadow:0 0 0 1px var(--region-input-border-color) inset;border-radius:var(--el-input-border-radius, var(--el-border-radius-base));height:calc(var(--el-input-inner-height) - 2px);line-height:calc(var(--el-input-inner-height) - 2px);transition:var(--el-transition-box-shadow)}.region-input:hover{--region-input-border-color: var(--el-color-primary)}.region-input .separator{flex:1;display:inline-flex;justify-content:center;align-items:center;height:100%;padding:0 5px;margin:0;font-size:14px;word-break:keep-all;color:var(--el-text-color-primary)}.region-input .el-form-item{flex:1}.region-input input{padding:0 10px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;outline:0;display:inline-block;height:30px;line-height:30px;margin:0;text-align:center;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);background-color:transparent}.region-input input::-moz-placeholder{color:var(--el-text-color-placeholder)}.region-input input::placeholder{color:var(--el-text-color-placeholder)}.warm-prompt{background-color:var(--el-color-primary-light-9)!important}.warm-prompt .el-icon,.warm-prompt p,.warm-prompt li{color:var(--el-color-primary-light-3)}.warm-prompt .el-alert__content{padding:0}html.dark .warm-prompt{background-color:var(--el-color-primary-light-5)!important}html.dark .warm-prompt .el-icon,html.dark .warm-prompt p{color:var(--el-color-primary-dark-2)}.app-item{background:#f7f7f7}html.dark .app-item{background:#191a23}.detail-head{display:flex;align-items:center;margin-left:30px;margin-top:15px;margin-bottom:15px}.detail-head .left{color:#666;margin-top:1px;font-size:14px;line-height:1;cursor:pointer}.detail-head .adorn{color:#999;margin:0 12px;font-size:14px}.detail-head .right{font-size:24px}.el-input__wrapper,.el-input-group__append,.el-textarea__inner{border-radius:0!important}.el-button:not(.is-round){border-radius:2px!important}.el-table .el-table__cell{position:inherit!important}.multi-hidden{white-space:normal;word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.hover\:border-primary:hover{border-color:var(--el-color-primary)}.hover\:bg-primary-light-9:hover{background-color:var(--el-color-primary-light-9)}.hover\:bg-\[\#fff\]:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.hover\:bg-primary:hover{background-color:var(--el-color-primary)}.hover\:text-primary:hover{color:var(--el-color-primary)}.hover\:\!text-\[var\(--el-color-primary\)\]:hover{color:var(--el-color-primary)!important}@media (min-width: 1024px){.lg\:block{display:block}.lg\:w-\[60\%\]{width:60%}}/*! + Theme: StackOverflow Light + Description: Light theme as used on stackoverflow.com + Author: stackoverflow.com + Maintainer: @Hirse + Website: https://github.com/StackExchange/Stacks + License: MIT + Updated: 2021-05-15 + + Updated for @stackoverflow/stacks v0.64.0 + Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less + Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less +*/.hljs{color:#2f3337;background:#f6f6f6}.hljs-subst{color:#2f3337}.hljs-comment{color:#656e77}.hljs-keyword,.hljs-selector-tag,.hljs-meta .hljs-keyword,.hljs-doctag,.hljs-section,.hljs-attr{color:#015692}.hljs-attribute{color:#803378}.hljs-name,.hljs-type,.hljs-number,.hljs-selector-id,.hljs-quote,.hljs-template-tag{color:#b75501}.hljs-selector-class{color:#015692}.hljs-string,.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr{color:#54790d}.hljs-meta,.hljs-selector-pseudo{color:#015692}.hljs-built_in,.hljs-title,.hljs-literal{color:#b75501}.hljs-bullet,.hljs-code{color:#535a60}.hljs-meta .hljs-string{color:#54790d}.hljs-deletion{color:#c02d2e}.hljs-addition{color:#2f6f44}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700} diff --git a/niucloud/public/admin/assets/index-1027f725.css b/niucloud/public/admin/assets/index-1027f725.css new file mode 100644 index 0000000..6f8485c --- /dev/null +++ b/niucloud/public/admin/assets/index-1027f725.css @@ -0,0 +1 @@ +.el-popper .el-dropdown-menu[data-v-7954ac76]{width:150px}.layout-header[data-v-305cd385]{position:relative;z-index:5;border-bottom:1px solid #e8e9eb}.navbar-item[data-v-305cd385]{padding:0 8px;color:#fff}.index-item[data-v-305cd385]{border:1px solid;border-color:var(--el-color-primary)}.index-item[data-v-305cd385]:hover{color:#fff;background-color:var(--el-color-primary)}.layout-admin .el-dropdown{color:#fff}.layout-aside.bright li{background-color:#f5f7f9}.layout-aside.bright li.is-active:not(.is-opened){position:relative;color:#333;background-color:#fff}.layout-aside.bright li.is-active:not(.is-opened):after{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:var(--el-menu-active-color)}.layout-aside .menu-item:hover,.text-color{color:var(--el-color-primary)}.layout-content-height[data-v-dcf13a00]{height:calc(100vh - 130px)} diff --git a/niucloud/public/admin/assets/index-13c265a0.css b/niucloud/public/admin/assets/index-13c265a0.css new file mode 100644 index 0000000..88e5815 --- /dev/null +++ b/niucloud/public/admin/assets/index-13c265a0.css @@ -0,0 +1 @@ +:root{--t-main-background-color: #191b24;--t-main-font-color: #fff;--t-window-box-shadow: 0 0 40px 1px rgb(0 0 0 / 20%);--t-header-background-color: #959598;--t-header-font-color: white;--t-tag-font-color: #fff;--t-cursor-color: #fff;--t-cmd-key-color: yellow;--t-cmd-arg-color: #c0c0ff;--t-cmd-splitter-color: #808085;--t-link-color: antiquewhite;--t-link-hover-color: white;--t-table-border: 1px dashed #fff;--t-selection-font-color: black;--t-selection-background-color: white;--t-cmd-help-background-color: black;--t-cmd-help-code-font-color: #fff;--t-cmd-help-code-background-color: rgba(0, 0, 0, 0);--t-cmd-help-msg-color: #ffffff87;--t-cmd-help-box-shadow: 0px 0px 0px 4px rgb(255 255 255 / 20%);--t-text-editor-floor-background-color: rgb(72 69 69);--t-text-editor-floor-close-btn-color: #bba9a9;--t-text-editor-floor-save-btn-color: #00b10e;--t-text-editor-floor-btn-hover-color: #befcff;--t-json-background-color: rgba(0, 0, 0, 0);--t-json-value-obj-color: #bdadad;--t-json-value-bool-color: #cdc83c;--t-json-value-number-color: #f3c7fb;--t-json-ellipsis-background-color: #674848;--t-json-more-background-webkit: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgb(255 255 255 / 10%) 100%);--t-json-more-background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 20%, rgb(255 255 255 / 10%) 100%);--t-json-deep-selector-border-color: rgb(249 249 249 / 52%);--t-code-default-background-color: rgb(39 50 58)}.t-header-pin:hover{color:#030a0a}.t-pre-numbering{border-right:1px solid #C3CCD0;background-color:#1c1d21}.t-pre-numbering li{color:#aaa}.table-head-bg[data-v-33930a0c]{background-color:var(--el-table-header-bg-color)}[data-v-33930a0c] .terminal .t-log-box span{white-space:pre-wrap}.table-head-bg[data-v-fe62bf60]{background-color:var(--el-table-header-bg-color)}[data-v-fe62bf60] .terminal .t-log-box span{white-space:pre-wrap} diff --git a/niucloud/public/admin/assets/index-1bd74f01.js b/niucloud/public/admin/assets/index-1bd74f01.js new file mode 100644 index 0000000..59d5d0f --- /dev/null +++ b/niucloud/public/admin/assets/index-1bd74f01.js @@ -0,0 +1 @@ +import{aJ as t,d as o,r as a,h as l,c as n,t as s}from"./index-6010b07e.js";function r(){return t.get("hygl/hello_world")}const c={class:"text-[20px]"},f=o({__name:"index",setup(_){const e=a("");return(async()=>{e.value=await(await r()).data})(),(i,p)=>(l(),n("span",c,s(e.value),1))}});export{f as default}; diff --git a/niucloud/public/admin/assets/index-1c188de3.css b/niucloud/public/admin/assets/index-1c188de3.css new file mode 100644 index 0000000..e051006 --- /dev/null +++ b/niucloud/public/admin/assets/index-1c188de3.css @@ -0,0 +1 @@ +.image-wrap .operation[data-v-1a68ab0a]{display:none}.image-wrap:hover .operation[data-v-1a68ab0a]{display:flex} diff --git a/niucloud/public/admin/assets/index-1f5b8810.js b/niucloud/public/admin/assets/index-1f5b8810.js new file mode 100644 index 0000000..00592af --- /dev/null +++ b/niucloud/public/admin/assets/index-1f5b8810.js @@ -0,0 +1 @@ +import{d as J,r as _,n as U,f as W,aI as X,s as j,a2 as h,N as l,h as E,c as V,a as s,t as i,y as f,z as v,u as o,e as p,w as r,i as w,R as H,B as T,A as K,U as Q,W as G,E as Z,X as ee,Y as te,V as ae}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{_ as se}from"./index.vue_vue_type_script_setup_true_lang-83f923ac.js";/* empty css *//* empty css */import{c as le,d as oe}from"./diy-5ff717bd.js";import{b as ne}from"./browser-a1ac24ac.js";import{_ as ie}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css */const pe={key:0,class:"flex flex-wrap mt-[20px] min-w-[1000px]"},re={class:"page-item relative bg-no-repeat ml-[20px] mr-[40px] bg-[#f7f7f7] w-[340px] pt-[90px] pb-[20px]"},de={class:"absolute top-[54px] left-[50%] translate-x-[-50%] text-[14px] truncate w-[130px] text-center"},me={class:"w-[320px] h-[550px] mx-auto"},ue=["id","src"],ce={class:"w-[320px] h-[550px] mx-auto bg-body pt-[20px] px-[20px]"},_e={class:"font-bold text-xl mb-[40px]"},fe={class:"mb-[20px] flex flex-col"},ve={class:"mb-[10px]"},we={class:"flex"},xe={class:"overflow-hidden w-[320px] h-[550px] mx-auto"},ge=["src"],ye={class:"w-[500px]"},he={class:"flex flex-wrap"},be={class:"info-wrap"},De={class:"mt-[20px] bg-[#F7F8FA] p-[20px] flex items-center justify-between"},Ie={class:"font-bold"},ke={class:"text-[#999] text-base"},Pe={class:"text-center"},Ce=J({__name:"index",setup(Ue){const x=_("DIY_INDEX"),e=U({}),b=W(),u=_(""),D=_(""),n=_({name:""}),m=U({type:"",name:"",parent:"",page:"",title:"",action:""}),I=()=>{le({type:x.value}).then(t=>{for(const a in t.data)e[a]=t.data[a];n.value.name=e.use_template.name,n.value.title=e.use_template.title,n.value.url=e.use_template.page,n.value.action=e.use_template.action,n.value.parent=e.use_template.parent,e.use_template.url&&(e.loadingIframe=!1,e.loadingDev=!1,e.isDisabledPop=!1,e.difference=0,u.value=e.domain_url.wap_domain,e.wapUrl=e.domain_url.wap_url,P())})};I(),window.addEventListener("message",t=>{try{const a=JSON.parse(t.data);if(["appOnLaunch","appOnReady"].indexOf(a.type)!=-1){e.loadingDev=!1,e.loadingIframe=!0;const g=new Date().getTime();e.difference=g-e.timeIframe,e.isDisabledPop=!1}}catch(a){k(),console.log("后台接受数据错误",a)}},!1);const N=()=>{const t=JSON.stringify({type:"appOnReady",message:"加载完成"});window["previewIframe_"+x.value]&&window["previewIframe_"+x.value].contentWindow.postMessage(t,"*")},k=()=>{e.loadingDev=!0,e.isDisabledPop=!0,e.loadingIframe=!1},R=()=>{if(u.value.trim().length==0){h({type:"warning",message:`${l("wapDomainPlaceholder")}`});return}const t=u.value+"/wap";Q.set({key:"wap_domain",data:t}),e.use_template.url&&(e.wapUrl=t,P()),setTimeout(()=>{e.use_template.url&&(e.loadingIframe=!0,e.loadingDev=!1,e.isDisabledPop=!1)},100*3)},S=()=>{window.open("https://www.kancloud.cn/niucloud/niucloud-admin-develop/3213393")},P=()=>{e.use_template.wapPreview=e.wapUrl+e.use_template.url,e.shareUrl=e.wapUrl+"/",ne.toDataURL(e.shareUrl,{errorCorrectionLevel:"L",margin:0,width:100}).then(t=>{D.value=t}),e.timeIframe=new Date().getTime(),N(),setTimeout(()=>{e.difference==0&&k()},1e3*2)},L=()=>{const t={back:"/site/diy/index"};e.use_template.id?t.id=e.use_template.id:e.use_template.type?t.name=e.use_template.type:e.use_template.url&&(t.url=e.use_template.url);const a=b.resolve({path:"/decorate/edit",query:t});window.open(a.href)},O=()=>{let t=e.use_template.page;e.use_template.url?t=e.use_template.url:e.use_template.id&&(t+="?id="+e.use_template.id);const a=b.resolve({path:"/preview/wap",query:{page:t}});window.open(a.href)},y=_(!1),$=()=>{m.type=x.value,m.name=n.value.name,m.page=n.value.url,m.title=n.value.title,m.action=n.value.action,m.parent=n.value.parent,!y.value&&(y.value=!0,oe({...m}).then(t=>{y.value=!1,I()}))},{copy:B,isSupported:F,copied:C}=X(),M=t=>{F.value||h({message:l("notSupportCopy"),type:"warning"}),B(t)};return j(C,()=>{C.value&&h({message:l("copySuccess"),type:"success"})}),(t,a)=>{const g=G,c=Z,Y=se,q=ee,z=te,A=ae;return e.use_template?(E(),V("div",pe,[s("div",re,[s("p",de,i(e.use_template.title),1),f(s("div",me,[f(s("iframe",{id:"previewIframe_"+t.key,class:"w-[320px] h-[550px] mx-auto",src:e.use_template.wapPreview,frameborder:"0"},null,8,ue),[[v,e.loadingIframe]]),f(s("div",ce,[s("div",_e,i(o(l)("developTitle")),1),s("div",fe,[s("text",ve,i(o(l)("wapDomain")),1),p(g,{modelValue:u.value,"onUpdate:modelValue":a[0]||(a[0]=d=>u.value=d),placeholder:o(l)("wapDomainPlaceholder"),clearable:""},null,8,["modelValue","placeholder"])]),s("div",we,[p(c,{type:"primary",onClick:a[1]||(a[1]=d=>R())},{default:r(()=>[w(i(o(l)("confirm")),1)]),_:1}),p(c,{type:"primary",onClick:a[2]||(a[2]=d=>S()),plain:""},{default:r(()=>[w(i(o(l)("settingTips")),1)]),_:1})])],512),[[v,e.loadingDev]])],512),[[v,e.use_template.url]]),f(s("div",xe,[e.use_template.cover?(E(),V("img",{key:0,class:"max-w-full",src:o(H)(e.use_template.cover)},null,8,ge)):T("",!0)],512),[[v,!e.use_template.wapPreview]]),s("div",{class:K(["popup-wrap absolute inset-x-0 inset-y-0 select-none",{disabled:e.isDisabledPop}])},null,2)]),s("div",ye,[s("div",he,[p(Y,{modelValue:n.value,"onUpdate:modelValue":a[3]||(a[3]=d=>n.value=d),ignore:["DIY_LINK"],onSuccess:$},{default:r(()=>[p(c,{type:"primary"},{default:r(()=>[w(i(o(l)("changePage")),1)]),_:1})]),_:1},8,["modelValue"]),f(p(c,{type:"primary",onClick:a[4]||(a[4]=d=>L()),class:"ml-[12px]"},{default:r(()=>[w(i(o(l)("decorate")),1)]),_:1},512),[[v,e.use_template.action=="decorate"]])]),s("div",be,[s("div",De,[s("div",null,[s("div",Ie,i(o(l)("H5")),1),p(z,{"label-width":"40px",class:"mt-[5px]"},{default:r(()=>[p(q,{label:o(l)("link"),class:"mb-[5px]"},{default:r(()=>[p(g,{readonly:"",value:e.shareUrl},{append:r(()=>[p(c,{onClick:a[5]||(a[5]=d=>M(e.shareUrl)),class:"bg-primary copy"},{default:r(()=>[w(i(o(l)("copy")),1)]),_:1})]),_:1},8,["value"])]),_:1},8,["label"])]),_:1}),s("div",ke,i(o(l)("scanQRCodeOnRight")),1)]),s("div",Pe,[p(A,{class:"w-[100px] h-[100px] mb-[5px]",src:D.value},null,8,["src"]),s("div",{onClick:a[6]||(a[6]=d=>O()),class:"text-primary text-base cursor-pointer"},i(o(l)("preview")),1)])])])])])):T("",!0)}}});const ze=ie(Ce,[["__scopeId","data-v-559d67e5"]]);export{ze as default}; diff --git a/niucloud/public/admin/assets/index-24c52c8d.js b/niucloud/public/admin/assets/index-24c52c8d.js new file mode 100644 index 0000000..6ca0f4f --- /dev/null +++ b/niucloud/public/admin/assets/index-24c52c8d.js @@ -0,0 +1 @@ +import{d as A,K as I,n as W,m as H,r as $,c as a,y as j,u as p,B as g,a as t,t as r,e as z,w as R,A as v,F as D,G as E,U as y,a2 as G,E as K,a3 as M,$ as O,p as P,g as T,h as n,R as B,i as q}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as L}from"./empty-77b60adb.js";import{_ as J}from"./icon-addon-339e16d0.js";import{_ as Q}from"./member_head-a897263d.js";import{g as X}from"./home-a9db0fa7.js";import{a as Y}from"./sys-0f76aff3.js";import{g as Z}from"./addon-b90f5c24.js";import{_ as tt}from"./_plugin-vue_export-helper-c27b6911.js";const d=_=>(P("data-v-5d84d21f"),_=_(),T(),_),et={class:"flex flex-wrap mt-[30px]"},st={key:0,class:"m-auto"},ot=d(()=>t("img",{src:L},null,-1)),at=d(()=>t("p",{class:"text-center text-gray-400"},"暂无站点",-1)),nt=[ot,at],it={class:"hidden"},pt={class:"flex justify-between items-center py-[24px] pl-[62px] pr-[64px] home-head"},rt={class:"flex items-center"},lt=["src"],ct={key:1,class:"w-[32x] h-[32px] rounded-full",src:J,alt:""},dt={class:"ml-[10px] text-[16px] font-bold"},_t={class:"flex items-center"},xt={class:"mr-[12px] text-[14px]"},mt={class:"w-[1200px] m-auto mt-[62px]"},ut={class:"flex justify-between items-center"},ft=d(()=>t("span",{class:"text-[24px] font-bold"},"站点列表",-1)),ht={class:"flex justify-between items-center mt-[18px]"},gt={class:"flex items-center flex-wrap text-[14px] w-[800px]"},vt=["onClick"],yt={class:"min-h-[580px]"},kt={class:"flex flex-wrap mt-[30px]"},wt=["onClick"],bt={class:"flex items-center px-[24px] pt-[22px] pb-[16px] bg-[#F0F2F4] home-item-head"},Ct=["src"],Ft={key:1,class:"w-[48px] h-[48px] mr-[15px] rounded-[50%] overflow-hidden",src:Q},St={class:"flex flex-col flex-1 justify-center"},It={class:"flex items-center flex-wrap"},$t={class:"text-[16px] text-[#000] max-w-[145px] font-bold truncate mr-[10px]"},jt={key:0,class:"flex items-center justify-center min-w-[42px] h-[18px] bg-[#FF5500] rounded-tl-md rounded-br-md items-tab"},zt={class:"text-[12px] text-[#fff]"},Dt={class:"text-[12px] mt-[3px] text-[#555]"},Et={class:"px-[24px] py-[20px] text-[#6D7278]"},Bt={class:"text-[14px]"},Lt={class:"text-[14px] mt-[2px]"},Nt={key:0,class:"m-auto"},Ut=d(()=>t("img",{src:L},null,-1)),Vt=d(()=>t("p",{class:"text-center text-gray-400"},"暂无站点",-1)),At=[Ut,Vt],Wt={class:"mt-[16px] flex justify-end"},Ht=A({__name:"index",setup(_){const k=I(),o=W({params:{keywords:"",page:1,limit:12,app:"",sort:!1},loading:!1,tableData:[],total:0}),{params:w,loading:x,tableData:m}=H(o),u=(i=1)=>{o.params.page=i,o.loading=!0,X(o.params).then(s=>{o.tableData=s.data.data,o.total=s.data.total,o.loading=!1;var l=m.value;l.length>=1&&C(l[0])}).catch(()=>{o.loading=!1})};u();const b=i=>{o.params.app=i,u()},f=$({icon:"",site_name:""});(()=>{Y().then(i=>{f.value=i.data})})();const C=i=>{y.set({key:"siteId",data:i.site_id}),y.set({key:"siteInfo",data:i}),y.set({key:"comparisonSiteIdStorage",data:i.site_id}),I().$patch(s=>{s.siteInfo=s}),location.href=`${location.origin}/site/`},N=()=>{k.logout()},F=$([]);Z().then(({data:i})=>{const s=[];Object.keys(i).forEach(l=>{const h=i[l];h.type=="app"&&s.push(h)}),F.value=s}).catch();const U=()=>{G("加班加点研发中...")};return(i,s)=>{const l=K,h=M,S=O;return n(),a("div",null,[j((n(),a("div",et,[!p(m).length&&!p(x)?(n(),a("div",st,nt)):g("",!0)])),[[S,p(x)]]),t("div",it,[t("div",pt,[t("div",rt,[f.value.icon?(n(),a("img",{key:0,class:"w-[32x] h-[32px] rounded-full",src:p(B)(f.value.icon),alt:""},null,8,lt)):(n(),a("img",ct)),t("span",dt,r(f.value.site_name),1)]),t("div",_t,[t("span",xt,r(p(k).userInfo.username),1),t("span",{onClick:s[0]||(s[0]=e=>N()),class:"text-[14px] cursor-pointer text-[var(--el-color-primary)]"},"退出")])]),t("div",mt,[t("div",ut,[ft,z(l,{type:"primary",class:"w-[90px] !h-[34px]",onClick:U},{default:R(()=>[q("创建站点")]),_:1})]),t("div",ht,[t("div",gt,[t("span",{class:v(["mr-[12px] cursor-pointer",{"text-[var(--el-color-primary)]":p(w).app==""}]),onClick:s[1]||(s[1]=e=>b(""))},"所有应用",2),(n(!0),a(D,null,E(F.value,(e,c)=>(n(),a("span",{class:v(["mr-[12px] cursor-pointer",{"text-[var(--el-color-primary)]":p(w).app==e.key}]),onClick:V=>b(e.key),key:c},r(e.title),11,vt))),128))])]),t("div",yt,[j((n(),a("div",kt,[(n(!0),a(D,null,E(p(m),(e,c)=>(n(),a("div",{key:c,onClick:V=>C(e),class:v(["home-item w-[285px] box-border mb-[20px] cursor-pointer",{"mr-[20px]":c==0||(c+1)%4!=0}])},[t("div",bt,[e.logo?(n(),a("img",{key:0,class:"w-[48px] h-[48px] mr-[15px] rounded-[50%] overflow-hidden",src:p(B)(e.logo)},null,8,Ct)):(n(),a("img",Ft)),t("div",St,[t("div",It,[t("span",$t,r(e.site_name),1),e.app_name?(n(),a("div",jt,[t("span",zt,r(e.app_name),1)])):g("",!0)]),t("span",Dt,r(e.create_time?e.create_time.split(" ")[0]:"--")+" 到 "+r(e.expire_time?e.expire_time.split(" ")[0]:"--"),1)])]),t("div",Et,[t("p",Bt,"站点编号:"+r(e.site_id),1),t("p",Lt,"站点套餐:"+r(e.group_name||"--"),1)])],10,wt))),128)),!p(m).length&&!p(x)?(n(),a("div",Nt,At)):g("",!0)])),[[S,p(x)]])]),t("div",Wt,[z(h,{"current-page":o.params.page,"onUpdate:current-page":s[2]||(s[2]=e=>o.params.page=e),"page-size":o.params.limit,"onUpdate:page-size":s[3]||(s[3]=e=>o.params.limit=e),layout:"total, sizes, prev, pager, next, jumper",total:o.total,onSizeChange:s[4]||(s[4]=e=>u()),onCurrentChange:u,"hide-on-single-page":!0},null,8,["current-page","page-size","total"])])])])])}}});const ne=tt(Ht,[["__scopeId","data-v-5d84d21f"]]);export{ne as default}; diff --git a/niucloud/public/admin/assets/index-2a8406ae.js b/niucloud/public/admin/assets/index-2a8406ae.js new file mode 100644 index 0000000..e768489 --- /dev/null +++ b/niucloud/public/admin/assets/index-2a8406ae.js @@ -0,0 +1 @@ +import{d as Y,O as X,f as K,r as $,n as ee,m as te,v as ne,a0 as le,h as x,c as z,e as n,w as e,a,t as o,u as t,aQ as ae,N as l,aH as v,i as d,y as oe,I as w,R as se,B as L,a5 as j,a1 as ie,E as ce,aj as de,ak as pe,aA as re,W as me,X as ue,Y as fe,_ as xe,V as _e,af as be,ah as he,aB as ve,$ as ge,p as ke,g as ye}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{g as we,f as Ee,h as Ae,i as Ce}from"./tools-8d764897.js";import{_ as Be}from"./_plugin-vue_export-helper-c27b6911.js";const F="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEIAAABCCAYAAAGUUzB+AAAAAXNSR0IArs4c6QAABr1JREFUeAHtWwdXGzkQlnHBgOkBQggBAqGlcHf//y/cHR1sQj9CN5jmDqdv17NIu6stLsnmvdV7tsqMRp9GfaSN/L28/sJcXJsLXSNLTF2dHbZ5YpT619JnCrJ/VjaMMAKSJCKKGcBkSHp50fETI4jkDKbN9HfW3p6gdNaeSLC7+wctbjAViyWDAQExLmGSuIRIxE2ZrlIMhkgkwmLRqCC8FkQRhUKR11p3G9s7FHwBzZAA/pW1LbY4NyNJMRigsOrzs6H+XO5eYzRqISoMFNKHUmFUjlEEJZh9owgzwU/ctRQvwoy6gBmqSibbHfNBax3JJMsXCgafhAQtZ+dubnNseW3TIC3MTRthBCQkRFnbTLNyuaJFR0eG2On5JfuyOEtki28r5OvinMQ4+nZYiptHjiSE9y+J2WtE0onXTGa+hvtJwygCKgDzq2qONStRak7zNGpmRvzi6pr9d3JmkDzpAJ2IT0RapuE3g0wsyJMA5BTHTqWid3uk2wqoVqvG3AUmsUTEd3YP4GnOVsDK+rZGBPRiqSQJAyFfKGp0/FkEmAfNxpY+Tsg3ctYCUisgzQzXnMEclwSsb2UkZZmZMWf88XVBSg4HE+9gbiu0pLEWRSx9qUXlOIoNQZB6pIFFifD7+3rY1MS4mOQ7/Mw3WMt8F+bmlCDevR1xy2uhF4pFlmx/3ce0temtLU455vkLQpQgLCW4JIjC5z599LxU1QWC74ZZZnefffs8L8ESaysRhMj5xZUQew360oRYW4Q7+eI8z2sNh4kYC5XTtvLk9Py1ZCHkCcTlVZYdn5wK2fTg01PesqCB4kUrojBPIIbeDDD8GnF7B8fK7MrJqixsEpS5fRBuc3dKbqUmMt/3lZm8EKL8nDc40MfmZ6fZ4fGJYxYlCMdcHojopBeX19rPjV3ZHG4Zm0kPBIhwP0FNGojmCEGEzUEaID8QfcLztC0e6nGYxjLeLKcEsfRlgUWjjSnq8OiEXd/cumJVgmgUAEp+NzrCoDWY4K6zajBKEK7wTQyweJRKZcm2jMJhOoW9bmJ8jD08PjG7LUJTQADAv6u6VbGzI6ntIUwYtWi5XLZLtto1bLlcElFDck/5V7sopZGvapLGel5NeneqyzCJTE99oDItPpn9zQTfzbG+mWGTE+9ZqqtTkvXnt0Up7ifiSxMwzZZ4u6JzieZoPwXa8XoGAWs0XQpA0FZ6l+HASw50J/eUV09unkDARnh6dmEpg07cqxvbGn1tI23hoYRsNkdBi+8JxKqDcBwHK5WqJhhnlR82YEF0mjldQWzv7FmQOyWc8WYRm4l4cQRQOdfRQQdelYBmpLtqohmFVKuvHdhOXktBoI/EYzGWdVlJlc2BG6Z4PG4H3FMaLWgwE2xnnPuVEsTz84s0L3gqWWDCVA67F+YWpzkCWZQgBHl1Be8fHhl+XlxL+4QXAOAJQZCmQk0EShOBMJKQRn6lH4h++SsVQGWHiqhpIlREqAgaFLof9oiwR8g9oiU73MkPY6ynO8XtBxWW5yYb/LDVhvnG7mwoQ/o1sbr3EbFY1DAN/WzoOFCRBaBZZfvuEbMzUxYzVbPA+JUDSxUMRc1wvhWBs3VQHGHBc0zYislh+OHg+YM/CxCfoBHdzg9OrWro8Chj//DYqABs03hLY35TbFcZSsOzld6ebhbjjZb2aOMK1PKJyxu8PBdbERMsDLdQkF/n9DrBLCtQikCrR2uPkESgeOGeSPi3VmUd7nZE+Qj/lKFBSya9tDKDoDieeizxd5mwbOXu7rVVqacnpX2PQDxefVxk+Hn/0lJF4P1semefL3X6q922tgibmZpgKW7Kc3LoGcNDg04srjQ3Y6lZQEsUgXV+9+CI3d3pX5VQobCFZvhLZBhlYSOPx1tSvLZpy96orzIIj+g3HckDX7ZQWSeHm0h81tDf18tXhPcGKybEnb0D7cUc7oI/fZzUXtIZDB4D+M7Cr2uqInb3j7Sx7RUEAOM3PjbKLq+z0sqAywhc73TxO8bZ6UnHXaz5sxPVbasTrqasGmhJ3EljgqvH4Tmjanl85FfNkC1eOZvL0D9C0FNxOe/Ea85L8YZ7BOaB88urlm+7cf05ONDPBvp7Cbut73TDaJuhltiwIrC84RcU52fvIGL2PTSwIgTFERT6Ng1DAkt2Pc63Is4u7O+b6ym8kTxokNNz/bVAqkvfl9TbG4DD99DA+ux3jW6kwmJebLMTfA8S4RuzeDSmrSh4qYJPrnDxf5W9Edl9hes2zPgq5Tdg9j00foM61QUxVERNbaEiQkXIIyjsEWGPCHuErIFa7H/foqjV7xkq8gAAAABJRU5ErkJggg==",De=g=>(ke("data-v-d1e847ea"),g=g(),ye(),g),Re={class:"main-container"},Qe={class:"flex justify-between items-center mb-[10px]"},Ze={class:"text-[20px]"},ze={class:"text-[14px] text-[#303133] font-[700]"},Le={class:"text-[#999]"},je={class:"mt-[20px] mb-[40px] h-[32px]"},Fe={class:"text-[14px] text-[#303133] font-[700]"},Ie={class:"text-[#999]"},Ne={class:"mt-[20px] mb-[40px] h-[32px]"},Se={class:"text-[14px] text-[#303133] font-[700]"},Je={class:"text-[#999]"},Ge={class:"mt-[20px] mb-[40px] h-[32px]"},Te={class:"text-[14px] text-[#303133] font-[700]"},Ve={class:"text-[#999]"},qe={class:"mt-[20px] mb-[40px] h-[32px]"},Ue={class:"text-[14px] text-[#303133] font-[700]"},We={class:"text-[#999]"},Oe={class:"mt-[20px] mb-[40px] h-[32px]"},He={class:"flex justify-between"},Me={class:"flex items-center justify-between"},Pe=De(()=>a("img",{class:"w-[45px] h-[45px]",src:F,alt:""},null,-1)),Ye={key:1,class:"w-[45px] h-[45px]",src:F,alt:""},Xe={class:"flex-1 w-[236px] pl-[15px] truncate"},Ke=Y({__name:"index",setup(g){const I=X(),A=K(),N=I.meta.title,C=$(null),k=ee({params:{search:""},loading:!1,data:[],activeName:"developmentProcess",active:0}),{params:E,loading:m,data:S,activeName:_,active:p}=te(k);ne(()=>{window.addonActiveName&&(k.activeName=window.addonActiveName+"",window.addonActiveName=null),y()});const y=()=>{m.value=!0,we(k.params).then(c=>{k.data=c.data,m.value=!1}).catch(()=>{m.value=!1})},J=c=>{c&&(c.resetFields(),y())},G=c=>{A.push({path:"/tools/addon_edit",query:{key:c}})},B=c=>{window.open(c,"_blank")},T=c=>{m.value=!0,Ee(c.key).then(i=>{m.value=!1,Ae(c.key).then(u=>{j.alert(`插件打包成功,插件包所在位置:网站根目录${u.data}下请手动进行下载`,l("warning"))}).catch()}).catch(()=>{m.value=!1})},V=c=>{j.confirm(l("codeDeleteTips"),l("warning"),{confirmButtonText:l("confirm"),cancelButtonText:l("cancel"),type:"warning"}).then(()=>{m.value=!0,Ce(c).then(()=>{y()}).catch(()=>{m.value=!1})})};return(c,i)=>{const u=le("CircleCheckFilled"),b=ie,r=ce,h=de,q=pe,D=re,U=me,R=ue,W=fe,Q=xe,O=_e,f=be,H=he,M=ve,P=ge;return x(),z("div",Re,[n(Q,{class:"box-card !border-none",shadow:"never"},{default:e(()=>[a("div",Qe,[a("span",Ze,o(t(N)),1)]),n(M,{modelValue:t(_),"onUpdate:modelValue":i[7]||(i[7]=s=>ae(_)?_.value=s:null),class:"demo-tabs"},{default:e(()=>[n(D,{label:t(l)("developmentProcess"),name:"developmentProcess"},{default:e(()=>[n(q,{direction:"vertical"},{default:e(()=>[n(h,null,v({title:e(()=>[a("p",ze,o(t(l)("step1")),1)]),description:e(()=>[a("span",Le,o(t(l)("describe1")),1),a("div",je,[n(r,{type:"primary",onClick:i[0]||(i[0]=s=>t(A).push({path:"/tools/addon_edit"}))},{default:e(()=>[d(o(t(l)("btn1")),1)]),_:1})])]),_:2},[t(p)>1?{name:"icon",fn:e(()=>[n(b,{size:"25px",class:"text-color"},{default:e(()=>[n(u)]),_:1})]),key:"0"}:t(p)==1?{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[a("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"},"1")]),key:"2"}]),1024),n(h,null,v({title:e(()=>[a("p",Fe,o(t(l)("step2")),1)]),description:e(()=>[a("span",Ie,o(t(l)("describe2")),1),a("div",Ne,[n(r,{type:"primary",plain:"",onClick:i[1]||(i[1]=s=>_.value="pluginList")},{default:e(()=>[d(o(t(l)("btn2")),1)]),_:1})])]),_:2},[t(p)>2?{name:"icon",fn:e(()=>[n(b,{size:"25px"},{default:e(()=>[n(u)]),_:1})]),key:"0"}:t(p)==2?{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[a("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"},"2")]),key:"2"}]),1024),n(h,null,v({title:e(()=>[a("p",Se,o(t(l)("step3")),1)]),description:e(()=>[a("span",Je,o(t(l)("describe3")),1),a("div",Ge,[n(r,{type:"primary",plain:"",onClick:i[2]||(i[2]=s=>B("https://www.kancloud.cn/niucloud/niucloud-admin-develop/3153336"))},{default:e(()=>[d(o(t(l)("btn3")),1)]),_:1})])]),_:2},[t(p)>3?{name:"icon",fn:e(()=>[n(b,{size:"25px"},{default:e(()=>[n(u)]),_:1})]),key:"0"}:t(p)==3?{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[a("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"},"3")]),key:"2"}]),1024),n(h,null,v({title:e(()=>[a("p",Te,o(t(l)("step4")),1)]),description:e(()=>[a("span",Ve,o(t(l)("describe4")),1),a("div",qe,[n(r,{type:"primary",plain:"",onClick:i[3]||(i[3]=s=>_.value="pluginList")},{default:e(()=>[d(o(t(l)("btn4")),1)]),_:1})])]),_:2},[t(p)>4?{name:"icon",fn:e(()=>[n(b,{size:"25px"},{default:e(()=>[n(u)]),_:1})]),key:"0"}:t(p)==4?{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[a("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"},"4")]),key:"2"}]),1024),n(h,null,v({title:e(()=>[a("p",Ue,o(t(l)("step5")),1)]),description:e(()=>[a("span",We,o(t(l)("describe5")),1),a("div",Oe,[n(r,{type:"primary",plain:"",onClick:i[4]||(i[4]=s=>B("https://www.niucloud.com/app"))},{default:e(()=>[d(o(t(l)("btn5")),1)]),_:1})])]),_:2},[t(p)>5?{name:"icon",fn:e(()=>[n(b,{size:"25px"},{default:e(()=>[n(u)]),_:1})]),key:"0"}:t(p)==5?{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] box-border rounded-full bg-color1 flex items-center justify-center"},[a("div",{class:"h-[12px] w-[12px] bg-color rounded-full"})])]),key:"1"}:{name:"icon",fn:e(()=>[a("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"},"5")]),key:"2"}]),1024)]),_:1})]),_:1},8,["label"]),n(D,{label:t(l)("pluginList"),name:"pluginList"},{default:e(()=>[n(Q,{class:"box-card !border-none mb-[10px] table-search-wrap",shadow:"never"},{default:e(()=>[a("div",He,[n(W,{inline:!0,model:t(E),ref_key:"searchFormRef",ref:C},{default:e(()=>[n(R,{label:t(l)("title"),prop:"search"},{default:e(()=>[n(U,{modelValue:t(E).search,"onUpdate:modelValue":i[5]||(i[5]=s=>t(E).search=s),placeholder:t(l)("titlePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),n(R,null,{default:e(()=>[n(r,{type:"primary",onClick:y},{default:e(()=>[d(o(t(l)("search")),1)]),_:1}),n(r,{onClick:i[6]||(i[6]=s=>J(C.value))},{default:e(()=>[d(o(t(l)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])])]),_:1}),oe((x(),w(H,{data:t(S),size:"large",class:"pt-[5px]"},{empty:e(()=>[a("span",null,o(t(l)("emptyData")),1)]),default:e(()=>[n(f,{label:t(l)("title"),align:"left","min-width":"320"},{default:e(({row:s})=>[a("div",Me,[s.icon?(x(),w(O,{key:0,class:"w-[45px] h-[45px]",src:s.icon.indexOf("data:image")!=-1?s.icon:t(se)(s.icon),fit:"contain"},{error:e(()=>[Pe]),_:2},1032,["src"])):(x(),z("img",Ye)),a("div",Xe,o(s.title),1)])]),_:1},8,["label"]),n(f,{prop:"key",label:t(l)("key"),align:"center","min-width":"200"},null,8,["label"]),n(f,{prop:"type_name",label:t(l)("type"),align:"center","min-width":"200"},null,8,["label"]),n(f,{prop:"author",label:t(l)("author"),align:"center","min-width":"200"},null,8,["label"]),n(f,{prop:"version",label:t(l)("version"),align:"center","min-width":"200"},null,8,["label"]),n(f,{label:t(l)("stutas"),align:"center","min-width":"200"},{default:e(({row:s})=>[d(o(Object.keys(s.install_info).length?"已安装":"未安装"),1)]),_:1},8,["label"]),n(f,{label:t(l)("operation"),fixed:"right",align:"right",width:"180","show-overflow-tooltip":!0},{default:e(({row:s})=>[n(r,{type:"primary",link:"",onClick:Z=>G(s.key)},{default:e(()=>[d(o(t(l)("edit")),1)]),_:2},1032,["onClick"]),Object.keys(s.install_info).length?(x(),w(r,{key:0,type:"primary",link:"",onClick:Z=>T(s)},{default:e(()=>[d(o(t(l)("step4")),1)]),_:2},1032,["onClick"])):L("",!0),Object.keys(s.install_info).length?L("",!0):(x(),w(r,{key:1,type:"primary",link:"",onClick:Z=>V(s.key)},{default:e(()=>[d(o(t(l)("delete")),1)]),_:2},1032,["onClick"]))]),_:1},8,["label"])]),_:1},8,["data"])),[[P,t(m)]])]),_:1},8,["label"])]),_:1},8,["modelValue"])]),_:1})])}}});const vt=Be(Ke,[["__scopeId","data-v-d1e847ea"]]);export{vt as default}; diff --git a/niucloud/public/admin/assets/index-2ec2a5b9.css b/niucloud/public/admin/assets/index-2ec2a5b9.css new file mode 100644 index 0000000..8822c6d --- /dev/null +++ b/niucloud/public/admin/assets/index-2ec2a5b9.css @@ -0,0 +1 @@ +[data-v-7620b23f] .el-drawer__header{margin-bottom:0!important}.layout-style>div[data-v-7620b23f]:nth-child(2n+2){margin-right:0}.layout-header[data-v-2eabe7ac]{position:relative;z-index:5;border-bottom:1px solid #e8e9eb}.navbar-item[data-v-2eabe7ac]{padding:0 8px}.navbar-item[data-v-2eabe7ac]:hover{background-color:var(--el-bg-color-page)}.index-item[data-v-2eabe7ac]{border:1px solid;border-color:var(--el-color-primary)}.index-item[data-v-2eabe7ac]:hover{color:#fff;background-color:var(--el-color-primary)}.menu-item[data-v-0c0c76f8]:hover{color:var(--el-color-primary);border-color:var(--el-color-primary)}.text-color[data-v-0c0c76f8]{color:var(--el-color-primary)}.bg-color[data-v-0c0c76f8]{border-color:var(--el-color-primary)} diff --git a/niucloud/public/admin/assets/index-37622b2e.js b/niucloud/public/admin/assets/index-37622b2e.js new file mode 100644 index 0000000..5fdfc01 --- /dev/null +++ b/niucloud/public/admin/assets/index-37622b2e.js @@ -0,0 +1 @@ +import{aJ as T,d as ae,r as m,s as se,a0 as J,h as n,I as A,w as l,y as L,c,e,a as t,t as o,u as r,N as a,F as R,G as P,B as F,z as M,ad as ne,ae as K,a5 as oe,al as ue,am as ce,a1 as ie,an as re,ao as de,a7 as pe,$ as xe,i as S,a2 as Z,ap as ke,E as ye,p as be,g as we}from"./index-6010b07e.js";/* empty css */import{T as _e,_ as fe}from"./vue-web-terminal-85c405a6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as ve}from"./_plugin-vue_export-helper-c27b6911.js";function Ce(g=""){return T.get(g?`upgrade/${g}`:"upgrade")}function Be(){return T.get("upgrade/task")}function Te(g=""){return T.post(g?`upgrade/${g}`:"upgrade")}function Ee(){return T.post("upgrade/execute",{},{timeout:0})}function $e(g=""){return T.get(g?`upgrade/check/${g}`:"upgrade/check")}function Ie(){return T.post("upgrade/clear")}function Ue(){return T.post("niucloud/build",{},{timeout:0})}function Se(){return T.get("niucloud/build")}function Ve(){return T.get("niucloud/build/log")}function Fe(){return T.post("niucloud/build/clear")}function Le(){return T.get("niucloud/build/check")}const Me={class:"h-[60vh]"},Ne={key:0,class:"h-[60vh] flex flex-col"},Re={key:0,class:"bg-[#fff] my-3"},De={class:"pt-[20px] pl-[20px]"},He={class:"px-[20px] pt-[10px] text-[14px] el-table"},je={key:0},Ae={key:1},Pe={key:0},qe={key:1},ze={class:"h-[60vh]"},Ge={class:"h-[60vh] flex flex-col"},Je={class:"flex-1 h-0"},Ke=ae({__name:"index",emits:["complete"],setup(g,{expose:O,emit:ee}){const i=m(!1),d=m(null),p=m("build"),h=m(null),w=m(!1),x=m(null);let C=[];(()=>{Se().then(({data:_})=>{_&&(d.value=_,i.value||W())}).catch()})();const $=()=>{Ve().then(_=>{if(!_.data){i.value&&C.length&&(p.value="complete",x.value.execute("clear")),I&&I.close(),d.value=null;return}const f=_.data.data??[];let v="";f[0]&&f[0].length&&i.value&&(C.length==0&&(x.value.execute("clear"),x.value.execute("开始编译")),f[0].forEach(k=>{C.includes(k.action)||(x.value.pushMessage({content:`正在执行:${k.action}`}),C.push(k.action),k.code==0&&(v=k.msg,x.value.pushMessage({content:k.msg,class:"error"})))})),!v&&setTimeout(()=>{$()},2e3)}).catch()};let I=null;const W=()=>{I=ne.success({title:a("warning"),dangerouslyUseHTMLString:!0,message:K("div",{},[a("cloudbuild.executingTips"),K("span",{class:"text-primary cursor-pointer",onClick:V},[a("cloudbuild.clickView")])]),duration:0,showClose:!1})},V=()=>{i.value=!0,p.value="build",$()},X=async()=>{if(i.value=!0,w.value=!0,p.value="build",d.value){w.value=!1,$();return}Le().then(async({data:_})=>{_.is_pass?Ue().then(({data:f})=>{w.value=!1,d.value=f,$()}).catch(()=>{i.value=!1}):(w.value=!1,h.value=_)}).catch(()=>{i.value=!1})};let D=null;const q=new _e,Y=(_,f,v,k,j)=>{if(f=="开始编译"){v(q);const s=H(["/","——","\\","|"]);D=setInterval(()=>{q.flush("> "+s.next().value)},150)}},H=_=>{var f=0;return{next(){return f+1==_.length&&(f=0),{value:_[f++]}}}},z=_=>{p.value=="cloudbuild"&&d.value?oe.confirm(a("cloudbuild.showDialogCloseTips"),a("warning"),{confirmButtonText:a("confirm"),cancelButtonText:a("cancel"),type:"warning"}).then(()=>{_()}).catch(()=>{}):_()};return se(()=>i.value,()=>{i.value||(p.value="build",C=[],D&&clearInterval(D),Fe())}),O({open:X,cloudBuildTask:d}),(_,f)=>{const v=ue,k=ce,j=J("Select"),s=ie,u=J("CloseBold"),E=re,U=de,N=pe,y=xe;return n(),A(N,{modelValue:i.value,"onUpdate:modelValue":f[0]||(f[0]=B=>i.value=B),title:r(a)("cloudbuild.title"),width:"850px","close-on-click-modal":!1,"close-on-press-escape":!1,"before-close":z},{default:l(()=>[L((n(),c("div",Me,[h.value&&!d.value?(n(),c("div",Ne,[e(E,null,{default:l(()=>[h.value.dir?(n(),c("div",Re,[t("p",De,o(r(a)("cloudbuild.dirPermission")),1),t("div",He,[e(k,{class:"py-[10px] items table-head-bg pl-[15px] mb-[10px]"},{default:l(()=>[e(v,{span:12},{default:l(()=>[t("span",null,o(r(a)("cloudbuild.path")),1)]),_:1}),e(v,{span:6},{default:l(()=>[t("span",null,o(r(a)("cloudbuild.demand")),1)]),_:1}),e(v,{span:6},{default:l(()=>[t("span",null,o(r(a)("status")),1)]),_:1})]),_:1}),(n(!0),c(R,null,P(h.value.dir.is_readable,B=>(n(),A(k,{class:"pb-[10px] items pl-[15px]"},{default:l(()=>[e(v,{span:12},{default:l(()=>[t("span",null,o(B.dir),1)]),_:2},1024),e(v,{span:6},{default:l(()=>[t("span",null,o(r(a)("cloudbuild.readable")),1)]),_:1}),e(v,{span:6},{default:l(()=>[B.status?(n(),c("span",je,[e(s,{color:"green"},{default:l(()=>[e(j)]),_:1})])):(n(),c("span",Ae,[e(s,{color:"red"},{default:l(()=>[e(u)]),_:1})]))]),_:2},1024)]),_:2},1024))),256)),(n(!0),c(R,null,P(h.value.dir.is_write,B=>(n(),A(k,{class:"pb-[10px] items pl-[15px]"},{default:l(()=>[e(v,{span:12},{default:l(()=>[t("span",null,o(B.dir),1)]),_:2},1024),e(v,{span:6},{default:l(()=>[t("span",null,o(r(a)("cloudbuild.write")),1)]),_:1}),e(v,{span:6},{default:l(()=>[B.status?(n(),c("span",Pe,[e(s,{color:"green"},{default:l(()=>[e(j)]),_:1})])):(n(),c("span",qe,[e(s,{color:"red"},{default:l(()=>[e(u)]),_:1})]))]),_:2},1024)]),_:2},1024))),256))])])):F("",!0)]),_:1})])):F("",!0),L(t("div",ze,[e(r(fe),{ref_key:"terminalRef",ref:x,context:"","init-log":null,"show-header":!1,"show-log-time":!0,onExecCmd:Y},null,512)],512),[[M,d.value]])])),[[M,p.value=="build"],[y,w.value]]),L(t("div",null,[t("div",Ge,[t("div",Je,[e(U,{icon:"success",title:r(a)("cloudbuild.cloudbuildSuccess")},null,8,["title"])])])],512),[[M,p.value=="complete"]])]),_:1},8,["modelValue","title"])}}});const Oe=ve(Ke,[["__scopeId","data-v-33930a0c"]]),Qe=g=>(be("data-v-fe62bf60"),g=g(),we(),g),We={key:0,class:"h-[60vh] flex flex-col"},Xe={class:"text-lg"},Ye={class:"font-bold"},Ze={class:"font-bold"},el={key:0,class:"mt-[10px]"},ll=Qe(()=>t("a",{class:"text-primary",href:"https://www.niucloud.com",target:"_blank"},"niucloud-admin官网",-1)),tl={class:"font-bold text-lg"},al={class:"mt-[5px]"},sl=["innerHTML"],nl={class:"flex justify-end"},ol={key:0,class:"h-[60vh] flex flex-col"},ul={key:0,class:"bg-[#fff] my-3"},cl={class:"pt-[20px] pl-[20px]"},il={class:"px-[20px] pt-[10px] text-[14px] el-table"},rl={key:0},dl={key:1},pl={key:0},_l={key:1},fl={class:"h-[60vh]"},vl={class:"h-[60vh] flex flex-col"},gl={class:"flex-1 h-0"},hl={class:"flex justify-end"},ml=ae({__name:"index",emits:["complete"],setup(g,{expose:O,emit:ee}){const i=m(!1),d=m(null),p=m(null),h=m("content"),w=m(null),x=m(!1),C=m(null),Q=m(null);let $=[];const I=()=>{Be().then(({data:s})=>{if(s){if(!i.value){X();return}if(p.value||(C.value.execute("clear"),C.value.execute("开始升级")),s.log.forEach(u=>{$.includes(u)||(C.value.pushMessage({content:`正在执行:${u}`}),$.push(u))}),s.error){p.value=s,Z({message:"升级失败",type:"error"}),C.value.pushMessage({content:s.error,class:"error"});return}if(s.step=="upgradeComplete"){h.value="complete",V&&V.close(),ee("complete");return}p.value=s,W()}}).catch()};I();const W=()=>{Ee().then(()=>{I()}).catch()};let V=null;const X=()=>{V=ne.success({title:a("warning"),dangerouslyUseHTMLString:!0,message:K("div",{},[a("upgrade.upgradingTips"),K("span",{class:"text-primary cursor-pointer",onClick:D},[a("upgrade.clickView")])]),duration:0,showClose:!1})},D=()=>{i.value=!0,h.value="upgrade",I(),V&&V.close()},q=async()=>{var u,E;if(x.value)return;x.value=!0;const s=((u=d.value)==null?void 0:u.app.app_key)!="niucloud-admin"?(E=d.value)==null?void 0:E.app.app_key:"";await $e(s).then(async({data:U})=>{U.is_pass?await Te(s).then(()=>{I()}).catch(()=>{x.value=!1}):w.value=U}).catch(),x.value&&(h.value="upgrade")},Y=(s="")=>{if(p.value){Z({message:"已有正在执行中的升级任务",type:"error"}),i.value=!0;return}Ce(s).then(({data:u})=>{if(d.value=u,!u.version_list.length){Z({message:"已经是最新版本了",type:"error"});return}i.value=!0}).catch()};let H=null;const z=new _e,_=(s,u,E,U,N)=>{if(u=="开始升级"){E(z);const y=f(["/","——","\\","|"]);H=setInterval(()=>{z.flush("> "+y.next().value)},150)}},f=s=>{var u=0;return{next(){return u+1==s.length&&(u=0),{value:s[u++]}}}},v=s=>{h.value=="upgrade"&&p.value&&!p.value.error?oe.confirm(a("upgrade.showDialogCloseTips"),a("warning"),{confirmButtonText:a("confirm"),cancelButtonText:a("cancel"),type:"warning"}).then(()=>{s()}).catch(()=>{}):s()};se(()=>i.value,()=>{i.value||k()});const k=()=>{h.value="content",x.value=!1,p.value=null,$=[],H&&clearInterval(H),Ie().then(()=>{}).catch()},j=()=>{var s;i.value=!1,(s=Q.value)==null||s.open()};return O({open:Y}),(s,u)=>{const E=ke,U=re,N=ye,y=ue,B=ce,le=J("Select"),G=ie,te=J("CloseBold"),ge=de,he=pe;return n(),c(R,null,[e(he,{modelValue:i.value,"onUpdate:modelValue":u[1]||(u[1]=b=>i.value=b),title:r(a)("upgrade.title"),width:"850px","close-on-click-modal":!1,"close-on-press-escape":!1,"before-close":v},{default:l(()=>[L(t("div",null,[d.value?(n(),c("div",We,[t("div",Xe,[S(" 本次升级将从"),t("span",Ye,o(d.value.version),1),S("升级到"),t("span",Ze,o(d.value.upgrade_version),1),S("版本 ")]),d.value.upgrade_version!=d.value.last_version?(n(),c("div",el,[e(E,{type:"info","show-icon":""},{title:l(()=>[S(" 当前最新版本为"+o(d.value.last_version)+",您的服务已于"+o(d.value.expire_time)+"到期。如需升级到最新版可在",1),ll,S("购买相关服务后再进行升级 ")]),_:1})])):F("",!0),e(U,{class:"flex-1 h-0 mt-[20px]"},{default:l(()=>[(n(!0),c(R,null,P(d.value.version_list,(b,me)=>(n(),c("div",{class:"mt-[20px]",key:me},[t("div",tl,o(b.version_no),1),t("div",al,o(b.release_time),1),b.upgrade_log?(n(),c("div",{key:0,class:"mt-[10px] p-[10px] rounded bg-[#f4f4f5] whitespace-pre",innerHTML:b.upgrade_log},null,8,sl)):F("",!0)]))),128))]),_:1})])):F("",!0),t("div",nl,[e(N,{type:"primary",onClick:q,loading:x.value},{default:l(()=>[S(o(r(a)("upgrade.upgradeButton")),1)]),_:1},8,["loading"])])],512),[[M,h.value=="content"]]),L(t("div",null,[w.value&&!p.value?(n(),c("div",ol,[e(U,null,{default:l(()=>[w.value.dir?(n(),c("div",ul,[t("p",cl,o(r(a)("upgrade.dirPermission")),1),t("div",il,[e(B,{class:"py-[10px] items table-head-bg pl-[15px] mb-[10px]"},{default:l(()=>[e(y,{span:12},{default:l(()=>[t("span",null,o(r(a)("upgrade.path")),1)]),_:1}),e(y,{span:6},{default:l(()=>[t("span",null,o(r(a)("upgrade.demand")),1)]),_:1}),e(y,{span:6},{default:l(()=>[t("span",null,o(r(a)("status")),1)]),_:1})]),_:1}),(n(!0),c(R,null,P(w.value.dir.is_readable,b=>(n(),A(B,{class:"pb-[10px] items pl-[15px]"},{default:l(()=>[e(y,{span:12},{default:l(()=>[t("span",null,o(b.dir),1)]),_:2},1024),e(y,{span:6},{default:l(()=>[t("span",null,o(r(a)("upgrade.readable")),1)]),_:1}),e(y,{span:6},{default:l(()=>[b.status?(n(),c("span",rl,[e(G,{color:"green"},{default:l(()=>[e(le)]),_:1})])):(n(),c("span",dl,[e(G,{color:"red"},{default:l(()=>[e(te)]),_:1})]))]),_:2},1024)]),_:2},1024))),256)),(n(!0),c(R,null,P(w.value.dir.is_write,b=>(n(),A(B,{class:"pb-[10px] items pl-[15px]"},{default:l(()=>[e(y,{span:12},{default:l(()=>[t("span",null,o(b.dir),1)]),_:2},1024),e(y,{span:6},{default:l(()=>[t("span",null,o(r(a)("upgrade.write")),1)]),_:1}),e(y,{span:6},{default:l(()=>[b.status?(n(),c("span",pl,[e(G,{color:"green"},{default:l(()=>[e(le)]),_:1})])):(n(),c("span",_l,[e(G,{color:"red"},{default:l(()=>[e(te)]),_:1})]))]),_:2},1024)]),_:2},1024))),256))])])):F("",!0)]),_:1})])):F("",!0),L(t("div",fl,[e(r(fe),{ref_key:"terminalRef",ref:C,context:p.value?p.value.upgrade.app_key:"","init-log":null,"show-header":!1,"show-log-time":!0,onExecCmd:_},null,8,["context"])],512),[[M,p.value]])],512),[[M,h.value=="upgrade"]]),L(t("div",null,[t("div",vl,[t("div",gl,[e(ge,{icon:"success",title:r(a)("upgrade.upgradeSuccess")},null,8,["title"]),e(E,{title:r(a)("upgrade.upgradeCompleteTips"),type:"error",closable:!1},null,8,["title"])]),t("div",hl,[e(N,{type:"default",onClick:u[0]||(u[0]=b=>i.value=!1)},{default:l(()=>[S(o(r(a)("upgrade.localBuild")),1)]),_:1}),e(N,{type:"primary",onClick:j},{default:l(()=>[S(o(r(a)("upgrade.cloudBuild")),1)]),_:1})])])],512),[[M,h.value=="complete"]])]),_:1},8,["modelValue","title"]),e(Oe,{ref_key:"cloudBuildRef",ref:Q},null,512)],64)}}});const Il=ve(ml,[["__scopeId","data-v-fe62bf60"]]);export{Oe as C,Il as U}; diff --git a/niucloud/public/admin/assets/index-3fddc3eb.js b/niucloud/public/admin/assets/index-3fddc3eb.js new file mode 100644 index 0000000..a988533 --- /dev/null +++ b/niucloud/public/admin/assets/index-3fddc3eb.js @@ -0,0 +1 @@ +import{d as me,O as ue,f as fe,r as m,n as he,v as xe,a0 as S,h as u,c as j,e as a,w as e,a as s,t as c,u as n,N as t,i as f,F as ve,G as ge,I as y,y as M,B as be,a5 as q,a2 as ye,R as ke,E as we,aj as Ce,ak as Ee,aA as Te,aq as Fe,aC as Ve,X as Ne,W as De,Y as Se,_ as Be,af as Pe,ah as Ae,a3 as $e,aB as je,a1 as Le,az as Ie,an as ze,a7 as Ge,$ as Oe,p as Re,g as Ue}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */import{s as Me,g as qe,t as Ke,q as We,r as Xe,u as Ye}from"./tools-8d764897.js";import{_ as He}from"./add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js";import{_ as Je}from"./_plugin-vue_export-helper-c27b6911.js";const h=C=>(Re("data-v-143e9dd8"),C=C(),Ue(),C),Qe={class:"main-container"},Ze={class:"flex justify-between items-center mb-[10px]"},et={class:"text-[20px]"},tt=h(()=>s("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 1",-1)),at={class:"text-[14px] text-[#303133] font-[700]"},lt={class:"text-[#999]"},nt={class:"mt-[20px] mb-[40px] h-[32px]"},ot=h(()=>s("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 2",-1)),st={class:"text-[14px] text-[#303133] font-[700]"},it={class:"text-[#999]"},dt=h(()=>s("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),ct=h(()=>s("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 3",-1)),rt={class:"text-[14px] text-[#303133] font-[700]"},pt={class:"text-[#999]"},_t=h(()=>s("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),mt=h(()=>s("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 4",-1)),ut={class:"text-[14px] text-[#303133] font-[700]"},ft={class:"text-[#999]"},ht=h(()=>s("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),xt=h(()=>s("div",{class:"w-[24px] h-[24px] text-[#fff] bg-[#778aa3] text-center leading-[24px] rounded-full"}," 5",-1)),vt={class:"text-[14px] text-[#303133] font-[700]"},gt={class:"text-[#999]"},bt=h(()=>s("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1)),yt={class:"mt-[16px] flex justify-end"},kt={class:"flex h-[50vh]"},wt={class:"flex items-center"},Ct={class:"pl-[5px]"},Et={class:"ml-[20px]",style:{width:"calc(100% - 285px)"}},Tt=me({__name:"index",setup(C){const K=ue().meta.title,W=fe(),B=m("codeGeneration"),i=he({page:1,limit:10,total:0,loading:!0,data:[],searchParam:{table_name:"",table_content:"",addon_name:""}}),L=m(),X=d=>{d&&(d.resetFields(),v())};xe(()=>{window.codeActiveName&&(B.value=window.codeActiveName+"",window.codeActiveName=null),v()});const v=(d=1)=>{i.loading=!0,i.page=d,Me({page:i.page,limit:i.limit,...i.searchParam}).then(l=>{i.loading=!1,i.data=l.data.data,i.total=l.data.total}).catch(()=>{i.loading=!1})},I=m([]),Y=d=>{qe({search:d}).then(l=>{I.value=l.data})},P=m(null),H=()=>{P.value.setFormData(),P.value.showDialog=!0},J=d=>{q.confirm(t("codeDeleteTips"),t("warning"),{confirmButtonText:t("confirm"),cancelButtonText:t("cancel"),type:"warning"}).then(()=>{Ke(d).then(()=>{v()}).catch(()=>{})})},Q=d=>{W.push("/tools/code/edit?id="+d.id)},Z=d=>{We({id:d}).then(l=>{i.loading=!1,q.confirm(l.msg!="2"?t("saveAndSyncText"):t("saveAndSyncText1"),t("warning"),{confirmButtonText:t("confirm"),cancelButtonText:t("cancel")}).then(()=>{z(d,3)}).catch(()=>{})}).catch(()=>{i.loading=!1})},z=(d,l)=>{i.loading=!0,Xe({id:d,generate_type:l}).then(r=>{ye({type:"success",message:"操作成功"}),l!=3?(i.loading=!1,window.open(ke(r.data.file),"_blank")):v()}).catch(()=>{i.loading=!1})},A=m([]),$=m(!1),E=m([]),T=m(!1),F=m(""),V=m(""),ee=d=>{$.value=!0,T.value=!0,F.value="",E.value=[],V.value="",Ye(d).then(l=>{A.value=l.data,E.value=ae(l.data.map(r=>r.file_dir+r.name)),F.value=A.value[0].content,T.value=!1}).catch(()=>{T.value=!1})},te=d=>{A.value.forEach(l=>{d.path===l.file_dir+l.name&&(F.value=l.content)})},ae=d=>{const l=[];if(Array.isArray(d))for(let _=0;_{const r=we,_=Ce,N=Ee,g=Te,x=Fe,k=Ve,p=Ne,D=De,le=Se,G=Be,w=Pe,ne=Ae,oe=$e,se=je,ie=S("Folder"),de=S("FolderOpened"),O=Le,ce=S("Document"),re=Ie,R=ze,pe=S("highlightjs"),_e=Ge,U=Oe;return u(),j("div",Qe,[a(G,{class:"box-card !border-none",shadow:"never"},{default:e(()=>[s("div",Ze,[s("span",et,c(n(K)),1)]),a(se,{modelValue:B.value,"onUpdate:modelValue":l[7]||(l[7]=o=>B.value=o),class:"demo-tabs"},{default:e(()=>[a(g,{label:n(t)("codeGeneration"),name:"codeGeneration"},{default:e(()=>[a(N,{direction:"vertical"},{default:e(()=>[a(_,null,{icon:e(()=>[tt]),title:e(()=>[s("p",at,c(n(t)("step1")),1)]),description:e(()=>[s("span",lt,c(n(t)("describe1")),1),s("div",nt,[a(r,{type:"primary",class:"w-[100px]",onClick:H},{default:e(()=>[f(c(n(t)("btn1")),1)]),_:1})])]),_:1}),a(_,null,{icon:e(()=>[ot]),title:e(()=>[s("p",st,c(n(t)("step2")),1)]),description:e(()=>[s("span",it,c(n(t)("describe2")),1),dt]),_:1}),a(_,null,{icon:e(()=>[ct]),title:e(()=>[s("p",rt,c(n(t)("step3")),1)]),description:e(()=>[s("span",pt,c(n(t)("describe3")),1),_t]),_:1}),a(_,null,{icon:e(()=>[mt]),title:e(()=>[s("p",ut,c(n(t)("step4")),1)]),description:e(()=>[s("span",ft,c(n(t)("describe4")),1),ht]),_:1}),a(_,null,{icon:e(()=>[xt]),title:e(()=>[s("p",vt,c(n(t)("step5")),1)]),description:e(()=>[s("span",gt,c(n(t)("describe5")),1),bt]),_:1})]),_:1})]),_:1},8,["label"]),a(g,{label:n(t)("codeList"),name:"codeList"},{default:e(()=>[a(G,{class:"box-card !border-none my-[10px] table-search-wrap",shadow:"never"},{default:e(()=>[a(le,{inline:!0,model:i.searchParam,ref_key:"searchFormRef",ref:L},{default:e(()=>[a(p,{label:n(t)("addonName"),prop:"addon_name"},{default:e(()=>[a(k,{modelValue:i.searchParam.addon_name,"onUpdate:modelValue":l[0]||(l[0]=o=>i.searchParam.addon_name=o),placeholder:"Select",filterable:"",remote:"",clearable:"","remote-method":Y},{default:e(()=>[a(x,{label:"全部",value:""}),a(x,{label:"系统",value:"2"}),(u(!0),j(ve,null,ge(I.value,o=>(u(),y(x,{label:o.title,value:o.key,key:o.key},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["label"]),a(p,{label:n(t)("tableName"),prop:"table_name"},{default:e(()=>[a(D,{modelValue:i.searchParam.table_name,"onUpdate:modelValue":l[1]||(l[1]=o=>i.searchParam.table_name=o),placeholder:n(t)("tableNamePlaceholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(p,null,{default:e(()=>[a(r,{type:"primary",onClick:l[2]||(l[2]=o=>v())},{default:e(()=>[f(c(n(t)("search")),1)]),_:1}),a(r,{onClick:l[3]||(l[3]=o=>X(L.value))},{default:e(()=>[f(c(n(t)("reset")),1)]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),s("div",null,[M((u(),y(ne,{data:i.data,size:"large"},{empty:e(()=>[s("span",null,c(i.loading?"":n(t)("emptyData")),1)]),default:e(()=>[a(w,{prop:"table_name","show-overflow-tooltip":!0,label:n(t)("tableName"),"min-width":"120"},null,8,["label"]),a(w,{prop:"title","show-overflow-tooltip":!0,label:n(t)("addonName"),"min-width":"120"},null,8,["label"]),a(w,{prop:"table_content","show-overflow-tooltip":!0,label:n(t)("tableContent"),"min-width":"120"},null,8,["label"]),a(w,{prop:"edit_type",label:n(t)("editType"),"min-width":"150",align:"center"},{default:e(({row:o})=>[f(c(o.edit_type==1?n(t)("popup"):n(t)("page")),1)]),_:1},8,["label"]),a(w,{label:n(t)("createTime"),"min-width":"180",align:"center"},{default:e(({row:o})=>[f(c(o.create_time||""),1)]),_:1},8,["label"]),a(w,{label:n(t)("operation"),fixed:"right",align:"right",width:"330"},{default:e(({row:o})=>[a(r,{type:"primary",link:"",onClick:b=>Q(o)},{default:e(()=>[f(c(n(t)("edit")),1)]),_:2},1032,["onClick"]),a(r,{type:"primary",link:"",onClick:b=>ee(o.id)},{default:e(()=>[f(c(n(t)("preview")),1)]),_:2},1032,["onClick"]),a(r,{type:"primary",link:"",onClick:b=>Z(o.id)},{default:e(()=>[f(c(n(t)("saveAndSync")),1)]),_:2},1032,["onClick"]),a(r,{type:"primary",link:"",onClick:b=>z(o.id,2)},{default:e(()=>[f(c(n(t)("download")),1)]),_:2},1032,["onClick"]),a(r,{type:"primary",link:"",onClick:b=>J(o.id)},{default:e(()=>[f(c(n(t)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[U,i.loading]]),s("div",yt,[a(oe,{"current-page":i.page,"onUpdate:current-page":l[4]||(l[4]=o=>i.page=o),"page-size":i.limit,"onUpdate:page-size":l[5]||(l[5]=o=>i.limit=o),layout:"total, sizes, prev, pager, next, jumper",total:i.total,onSizeChange:l[6]||(l[6]=o=>v()),onCurrentChange:v},null,8,["current-page","page-size","total"])])])]),_:1},8,["label"])]),_:1},8,["modelValue"]),a(He,{ref_key:"addCodeDialog",ref:P},null,512),a(_e,{modelValue:$.value,"onUpdate:modelValue":l[8]||(l[8]=o=>$.value=o),class:"dialog-visible",width:"70%",title:"代码预览"},{default:e(()=>[M((u(),j("div",kt,[a(R,{class:"h-[100%] w-[270px]"},{default:e(()=>[E.value.length&&V.value!=""?(u(),y(re,{key:0,data:E.value,props:{label:"name",value:"key"},"node-key":"key","current-node-key":V.value,"expand-on-click-node":!1,"highlight-current":"","default-expand-all":"",ref:"treeRef",onNodeClick:te},{default:e(({node:o,data:b})=>[s("div",wt,[b.children?(u(),y(O,{key:0},{default:e(()=>[o.expanded?(u(),y(de,{key:1})):(u(),y(ie,{key:0}))]),_:2},1024)):(u(),y(O,{key:1},{default:e(()=>[a(ce)]),_:1})),s("span",Ct,c(b.name),1)])]),_:1},8,["data","current-node-key"])):be("",!0)]),_:1}),s("div",Et,[a(R,{class:"h-[100%] w-[100%]"},{default:e(()=>[a(pe,{autodetect:"",class:"h-[100%]",code:F.value},null,8,["code"])]),_:1})])])),[[U,T.value]])]),_:1},8,["modelValue"])]),_:1})])}}});const Qt=Je(Tt,[["__scopeId","data-v-143e9dd8"]]);export{Qt as default}; diff --git a/niucloud/public/admin/assets/index-438cc6c0.js b/niucloud/public/admin/assets/index-438cc6c0.js new file mode 100644 index 0000000..fd5a02d --- /dev/null +++ b/niucloud/public/admin/assets/index-438cc6c0.js @@ -0,0 +1 @@ +import{d as G,K as se,r as h,n as te,N as f,h as l,c as _,e as i,w as c,aQ as O,a as o,u as t,cQ as me,t as M,i as Q,ad as fe,aG as xe,a0 as le,aS as he,aT as ve,aU as ge,W as ye,X as we,Y as be,E as ae,a7 as re,p as ie,g as ce,U as B,cR as ke,cK as X,cL as pe,q,v as Ce,I as T,F as V,B as y,y as ne,cn as oe,G as W,A as j,Q as de,f as ue,O as _e,s as Ee,aA as $e,aB as Se,cS as Ve,cM as Ie,x as Te,aZ as Me,J as Fe,cE as Pe,an as He,Z as Re}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css */import{_ as Y}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{s as Ue}from"./personal-d4a3249e.js";/* empty css */import{_ as ee}from"./_plugin-vue_export-helper-c27b6911.js";import{ad as De,ae as Le,af as Ne}from"./sys-0f76aff3.js";/* empty css */import{u as Ae}from"./style-e9363b8b.js";/* empty css */const Z=F=>(ie("data-v-7954ac76"),F=F(),ce(),F),ze={class:"userinfo flex h-full items-center"},Be={class:"user-name pl-[8px]"},je=Z(()=>o("div",{class:"flex items-center leading-[1] py-[5px]"},[o("span",{class:"iconfont iconshezhi1 ml-[4px] !text-[14px] mr-[10px]"}),o("span",{class:"text-[14px]"},"账号设置")],-1)),We=Z(()=>o("div",{class:"flex items-center leading-[1] py-[5px]"},[o("span",{class:"iconfont iconshouquanxinxi2 ml-[4px] !text-[14px] mr-[10px]"}),o("span",{class:"text-[14px]"},"授权信息")],-1)),qe=Z(()=>o("div",{class:"flex items-center leading-[1] py-[5px]"},[o("span",{class:"iconfont iconxiugai ml-[4px] !text-[14px] mr-[10px]"}),o("span",{class:"text-[14px]"},"修改密码")],-1)),Oe=Z(()=>o("div",{class:"flex items-center leading-[1] py-[5px]"},[o("span",{class:"iconfont icontuichudenglu ml-[4px] !text-[14px] mr-[10px]"}),o("span",{class:"text-[14px]"},"退出登录")],-1)),Je={class:"form-tip"},Ke={class:"dialog-footer"},Qe=G({__name:"user-info",setup(F){const H=se(),L=m=>{switch(m){case"logout":H.logout();break}},P=()=>{H.logout()};let x=h(!1);const R=h();let u=te({original_password:"",password:"",password_copy:""});const I=te({original_password:[{required:!0,message:f("originalPasswordPlaceholder"),trigger:"blur"}],password:[{required:!0,message:f("passwordPlaceholder"),trigger:"blur"}],password_copy:[{required:!0,message:f("passwordPlaceholder"),trigger:"blur"}]}),E=m=>{m&&m.validate(s=>{if(s){let v="";if(u.password&&!u.original_password&&(v=f("originalPasswordHint")),u.password&&u.original_password&&!u.password_copy&&(v=f("newPasswordHint")),u.password&&u.original_password&&u.password_copy&&u.password!=u.password_copy&&(v=f("doubleCipherHint")),v){fe({type:"error",message:v});return}Ue(u).then($=>{x.value=!1})}else return!1})};return(m,s)=>{const v=xe,$=Y,N=le("router-link"),g=he,k=ve,U=ge,C=ye,A=we,z=be,w=ae,p=re;return l(),_("div",null,[i(U,{onCommand:L,tabindex:1},{dropdown:c(()=>[i(k,null,{default:c(()=>[i(g,null,{default:c(()=>[i(N,{to:"/user/center"},{default:c(()=>[je]),_:1})]),_:1}),i(g,null,{default:c(()=>[i(N,{to:"/tools/authorize"},{default:c(()=>[We]),_:1})]),_:1}),i(g,{onClick:s[0]||(s[0]=e=>O(x)?x.value=!0:x=!0)},{default:c(()=>[qe]),_:1}),i(g,{onClick:P},{default:c(()=>[Oe]),_:1})]),_:1})]),default:c(()=>[o("div",ze,[i(v,{size:25,icon:t(me)},null,8,["icon"]),o("div",Be,M(t(H).userInfo.username),1),i($,{name:"element-ArrowDown",class:"ml-[5px]"})])]),_:1}),i(p,{modelValue:t(x),"onUpdate:modelValue":s[6]||(s[6]=e=>O(x)?x.value=e:x=e),width:"450px",title:"修改密码","before-close":m.handleClose},{footer:c(()=>[o("span",Ke,[i(w,{onClick:s[4]||(s[4]=e=>O(x)?x.value=!1:x=!1)},{default:c(()=>[Q(M(t(f)("cancel")),1)]),_:1}),i(w,{type:"primary",onClick:s[5]||(s[5]=e=>E(R.value))},{default:c(()=>[Q(M(t(f)("save")),1)]),_:1})])]),default:c(()=>[o("div",null,[i(z,{model:t(u),"label-width":"90px",ref_key:"formRef",ref:R,rules:I,class:"page-form"},{default:c(()=>[i(A,{label:t(f)("originalPassword"),prop:"original_password"},{default:c(()=>[i(C,{modelValue:t(u).original_password,"onUpdate:modelValue":s[1]||(s[1]=e=>t(u).original_password=e),type:"password",placeholder:t(f)("originalPasswordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),i(A,{label:t(f)("newPassword"),prop:"password"},{default:c(()=>[i(C,{modelValue:t(u).password,"onUpdate:modelValue":s[2]||(s[2]=e=>t(u).password=e),type:"password",placeholder:t(f)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"]),o("div",Je,M(t(f)("passwordTip")),1)]),_:1},8,["label"]),i(A,{label:t(f)("passwordCopy"),prop:"password_copy"},{default:c(()=>[i(C,{modelValue:t(u).password_copy,"onUpdate:modelValue":s[3]||(s[3]=e=>t(u).password_copy=e),type:"password",placeholder:t(f)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])])]),_:1},8,["modelValue","before-close"])])}}});const Ge=ee(Qe,[["__scopeId","data-v-7954ac76"]]),J=F=>(ie("data-v-305cd385"),F=F(),ce(),F),Ze={class:"flex items-center text-[14px] leading-[1]"},Xe=J(()=>o("span",{class:"iconfont icontuodong !text-[25px] mr-[6px]"},null,-1)),Ye=J(()=>o("span",{class:"mx-2 text-[#4F5563] mx-[15px]"},"|",-1)),et=J(()=>o("span",{class:"mx-2 text-[#4F5563] mx-[15px]"},"|",-1)),tt=J(()=>o("span",{class:"mx-2 text-[#4F5563] mx-[15px]"},"|",-1)),nt=J(()=>o("span",{class:"mx-2 text-[#4F5563] mx-[15px]"},"|",-1)),ot={class:"right-panel h-full flex items-center justify-end"},st=["title"],lt={class:"navbar-item flex items-center h-full cursor-pointer"},at={class:"dialog-footer"},rt={class:"flex flex-wrap"},it=["onClick"],ct=["onClick"],pt={class:"dialog-footer"},dt=G({__name:"index",setup(F){const H=ue(),L=B.get("app_type");ke();const P=X(),x=pe(),R=_e(),u=h(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth);q(()=>P.dark);let I=h(!0);(()=>{De().then(w=>{}).catch(()=>{})})();const m=h(!1),s=h(""),v=h("");B.get("comparisonTokenStorage")&&(s.value=B.get("comparisonTokenStorage")),B.get("comparisonSiteIdStorage")&&(v.value=B.get("comparisonSiteIdStorage")),document.addEventListener("visibilitychange",w=>{document.visibilityState==="visible"&&(v.value!=B.get("siteId")||s.value!=B.get("token"))&&(m.value=!0)});const $=()=>{m.value=!1,location.reload()};Ce(()=>{window.onresize=()=>(()=>{u.value=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth})()});const N=()=>{x.routeRefreshTag&&x.refreshRouterView()};q(()=>{const w=R.matched.filter(p=>p.meta.title);return w[0]&&w[0].path=="/"&&w.splice(0,1),w});const g=h(),k=h(!1),U=()=>{Le().then(w=>{k.value=!0,g.value=w.data;for(let p=0;p{Ne({view_path:C.value}).then(()=>{k.value=!1,H.go(0)})};B.set({key:"currHeadMenuName",data:""});const z=(w,p)=>{H.push(w)};return(w,p)=>{const e=Y,r=ae,d=re,b=de;return l(),T(b,{class:"h-[60px] bg-[#2B303B] layout-admin flex items-center justify-between px-[15px] text-white"},{default:c(()=>[o("div",Ze,[Xe,o("span",{class:"cursor-pointer",onClick:p[0]||(p[0]=a=>z("/admin/index"))},"首页"),Ye,o("span",{class:"cursor-pointer",onClick:p[1]||(p[1]=a=>z("/admin/setting/website/system","setting_manage"))},"配置"),et,o("span",{class:"cursor-pointer",onClick:p[2]||(p[2]=a=>z("/admin/site/list","site_manage"))},"站点"),t(I)?(l(),_(V,{key:0},[tt,o("span",{class:"cursor-pointer",onClick:p[3]||(p[3]=a=>z("/admin/app_manage/app_store",""))},"应用"),nt,o("span",{class:"cursor-pointer",onClick:p[4]||(p[4]=a=>z("/admin/app_manage/tools","tool"))},"开发")],64)):y("",!0)]),o("div",ot,[o("div",{class:"navbar-item flex items-center h-full cursor-pointer",onClick:N},[i(e,{name:"element-Refresh"})]),t(L)=="site"?(l(),_("i",{key:0,class:"iconfont iconlingdang-xianxing cursor-pointer px-[8px]",title:t(f)("newInfo")},null,8,st)):y("",!0),t(L)=="site"?(l(),_("div",{key:1,class:"navbar-item flex items-center h-full cursor-pointer",onClick:U},[i(e,{name:"iconfont-iconqiehuan",title:t(f)("indexSwitch")},null,8,["title"])])):y("",!0),o("div",lt,[i(Ge)])]),ne(o("input",{type:"hidden","onUpdate:modelValue":p[5]||(p[5]=a=>s.value=a)},null,512),[[oe,s.value]]),ne(o("input",{type:"hidden","onUpdate:modelValue":p[6]||(p[6]=a=>v.value=a)},null,512),[[oe,v.value]]),i(d,{modelValue:m.value,"onUpdate:modelValue":p[7]||(p[7]=a=>m.value=a),title:t(f)("layout.detectionLoginTip"),width:"30%","close-on-click-modal":!1,"close-on-press-escape":!1,"show-close":!1},{footer:c(()=>[o("span",at,[i(r,{onClick:$},{default:c(()=>[Q(M(t(f)("layout.detectionLoginOperation")),1)]),_:1})])]),default:c(()=>[o("span",null,M(t(f)("layout.detectionLoginContent")),1)]),_:1},8,["modelValue","title"]),i(d,{modelValue:k.value,"onUpdate:modelValue":p[8]||(p[8]=a=>k.value=a),title:t(f)("indexTemplate"),width:"550px","destroy-on-close":!0},{footer:c(()=>[o("span",pt,[i(r,{type:"primary",onClick:A},{default:c(()=>[Q(M(t(f)("confirm")),1)]),_:1})])]),default:c(()=>[o("div",rt,[C.value==""?(l(!0),_(V,{key:0},W(g.value,(a,S)=>(l(),_("div",{key:S},[o("div",{onClick:n=>C.value=a.view_path,class:j(["index-item py-[5px] px-[10px] mr-[10px] rounded-[3px] cursor-pointer",a.is_use==1?"bg-primary text-[#fff]":""])},[o("span",null,M(a.name),1)],10,it)]))),128)):(l(!0),_(V,{key:1},W(g.value,(a,S)=>(l(),_("div",{key:S},[o("div",{onClick:n=>C.value=a.view_path,class:j(["index-item py-[5px] px-[10px] mr-[10px] rounded-[3px] cursor-pointer",C.value==a.view_path?"bg-primary text-[#fff]":""])},[o("span",null,M(a.name),1)],10,ct)]))),128))])]),_:1},8,["modelValue","title"])]),_:1})}}});const ut=ee(dt,[["__scopeId","data-v-305cd385"]]),_t={key:0,class:"pt-[20px] pl-[80px] pr-[70px]"},mt={class:"flex flex-wrap items-center"},ft=["onClick"],xt={class:"text-[14px]"},ht={key:1,class:"flex flex-wrap items-center pt-[20px] pl-[80px] pr-[70px]"},vt=["onClick"],gt={class:"text-[14px]"},yt={key:2,class:"pt-[20px] pl-[80px] pr-[70px]"},wt={class:"flex flex-wrap items-center"},bt=["onClick"],kt={class:"text-[14px]"},Ct=G({__name:"index",emits:["complete"],setup(F,{emit:H}){const L=se(),P=X(),x=q(()=>P.dark),R=q(()=>P.currHeadMenuName);let u=JSON.parse(JSON.stringify(L.routers));const I=_e(),E=ue(),m=q(()=>String(I.name)),s=h("");Ee(I,()=>{P.$patch(d=>{d.menuDrawer=!1}),p();let e="";u.forEach((d,b)=>{d.name==I.name?e=d.name:d.children&&d.children.length&&d.children.forEach((a,S)=>{a.name==I.name?e=d.name:a.children&&a.children.length&&a.children.forEach((n,D)=>{n.name==I.name&&(e=d.name,e=="setting_manage"&&!s.value&&(s.value=a.name,$.value=a.children),e=="tool"&&!s.value&&(s.value=a.name,k.value=a.children))})})}),H("complete");let r={setting_manage:"setting_manage",site_manage:"site_manage",tool:"tool",app_auth:"tool"};if(Object.keys(r).indexOf(e)!=-1)return P.setHeadMenu(r[e]),!1;P.setHeadMenu("")});let v=h([]),$=h([]),N=h([]),g=h([]),k=h([]);L.routers.forEach((e,r)=>{e.meta.class=1,e.children&&e.children.forEach((d,b)=>{d.meta.class=2,d.children&&d.children.forEach((a,S)=>{a.meta.class=3})}),e.name=="setting_manage"&&(v.value=e.children),e.name=="site_manage"&&(N.value=e.children),e.name=="tool"&&(g.value=e.children)});const U=e=>{let r="/setting/";s.value="",$.value=[],e.children?(s.value=e.name,$.value=e.children,r=r+e.path+"/"+e.children[0].path,E.push(r)):(r=r+e.path,E.push(r))},C=(e,r)=>{let d="/setting/";v.value.forEach((b,a)=>{b.children&&b.children.length&&b.children.forEach((S,n)=>{S.name==e.props.name&&(d=d+b.path+"/"+S.path,E.push(d))})})},A=e=>{let r="/admin/site/";s.value="",e.children?(s.value=e.name,r=r+e.path+"/"+e.children[0].path,E.push(r)):(r=r+e.path,E.push(r))},z=e=>{let r="/admin/tools/";s.value="",k.value=[],e.children?(s.value=e.name,k.value=e.children,r=r+e.path+"/"+e.children[0].path,E.push(r)):(r=r+e.path,E.push(r))},w=(e,r)=>{let d="/tools/";g.value.forEach((b,a)=>{b.children&&b.children.length&&b.children.forEach((S,n)=>{S.name==e.props.name&&(d=d+b.path+"/"+S.path,E.push(d))})})},p=()=>{s.value="",$.value=[]};return(e,r)=>{const d=Y,b=$e,a=Se,S=Ve;return l(),T(S,{class:j(["layout-aside w-full ease-in duration-200",{bright:!t(x)}])},{default:c(()=>[t(R)=="setting_manage"?(l(),_("div",_t,[o("div",mt,[(l(!0),_(V,null,W(t(v),(n,D)=>(l(),_(V,{key:D},[n.meta.show?(l(),_("div",{key:0,onClick:K=>U(n),class:j(["flex items-center h-[32px] border-[1px] border-solid my-[3px] border-[#E0E0E0] rounded-full px-[10px] mr-[24px] cursor-pointer bg-[#f8f8f8] hover:bg-[#fff]",{"text-[#fff] !bg-[#000] border-[#000]":t(m)==n.name||s.value&&s.value==n.name}])},[n.meta.icon?(l(),T(d,{key:0,name:n.meta.icon,class:"!w-auto mr-[4px] !leading-[14px]",size:"14px",title:n.meta.title},null,8,["name","title"])):y("",!0),o("span",xt,M(n.meta.title),1)],10,ft)):y("",!0)],64))),128))]),t($).length?(l(),T(a,{key:0,modelValue:t(m),"onUpdate:modelValue":r[0]||(r[0]=n=>O(m)?m.value=n:null),class:"mt-[20px]",onTabClick:C},{default:c(()=>[(l(!0),_(V,null,W(t($),(n,D)=>(l(),_(V,{key:D},[n.meta.show?(l(),T(b,{key:0,label:n.meta.title,name:n.name,path:n.path,onClick:K=>U(n)},null,8,["label","name","path","onClick"])):y("",!0)],64))),128))]),_:1},8,["modelValue"])):y("",!0)])):y("",!0),t(R)=="site_manage"?(l(),_("div",ht,[(l(!0),_(V,null,W(t(N),(n,D)=>(l(),_(V,{key:D},[n.meta.show?(l(),_("div",{key:0,onClick:K=>A(n),class:j(["flex items-center h-[32px] border-[1px] border-solid my-[3px] border-[#E0E0E0] rounded-full px-[10px] mr-[24px] cursor-pointer bg-[#f8f8f8] hover:bg-[#fff]",{"text-[#fff] !bg-[#000] border-[#000]":t(m)==n.name||s.value&&s.value==n.name}])},[n.meta.icon?(l(),T(d,{key:0,name:n.meta.icon,class:"!w-auto mr-[4px] !leading-[14px]",size:"14px",title:n.meta.title},null,8,["name","title"])):y("",!0),o("span",gt,M(n.meta.title),1)],10,vt)):y("",!0)],64))),128))])):y("",!0),t(R)=="tool"?(l(),_("div",yt,[o("div",wt,[(l(!0),_(V,null,W(t(g),(n,D)=>(l(),_(V,{key:D},[n.meta.show?(l(),_("div",{key:0,onClick:K=>z(n),class:j(["flex items-center h-[32px] border-[1px] border-solid my-[3px] border-[#E0E0E0] rounded-full px-[10px] mr-[24px] cursor-pointer bg-[#f8f8f8] hover:bg-[#fff]",{"text-[#fff] !bg-[#000] border-[#000]":t(m)==n.name||s.value&&s.value==n.name}])},[n.meta.icon?(l(),T(d,{key:0,name:n.meta.icon,class:"!w-auto mr-[4px] !leading-[14px]",size:"14px",title:n.meta.title},null,8,["name","title"])):y("",!0),o("span",kt,M(n.meta.title),1)],10,bt)):y("",!0)],64))),128))]),t(k).length?(l(),T(a,{key:0,modelValue:t(m),"onUpdate:modelValue":r[1]||(r[1]=n=>O(m)?m.value=n:null),class:"mt-[20px]",onTabClick:w},{default:c(()=>[(l(!0),_(V,null,W(t(k),(n,D)=>(l(),_(V,{key:D},[n.meta.show?(l(),T(b,{key:0,label:n.meta.title,name:n.name,path:n.path,onClick:K=>U(n)},null,8,["label","name","path","onClick"])):y("",!0)],64))),128))]),_:1},8,["modelValue"])):y("",!0)])):y("",!0)]),_:1},8,["class"])}}});const Et={class:"common-layout min-w-[1200px]"},$t=G({__name:"index",setup(F){const H=pe(),L=Ie(),P=X(),x=h(),R=Ae();let u=h("");const I=()=>{setTimeout(()=>{u.value=`calc(100vh - ${x.value.clientHeight+60}px)`},600)};I();const E=q(()=>P.dark),m=q(()=>R.flag);return(s,v)=>{const $=Pe,N=le("router-view"),g=He,k=Re,U=de;return l(),_("div",Et,[i(U,{class:"w-100 h-screen"},{default:c(()=>[i($,{class:"h-[60px]"},{default:c(()=>[i(ut)]),_:1}),i(U,{class:"flex flex-col"},{default:c(()=>[o("div",{ref_key:"layoutAsideRef",ref:x},[i(Ct,{onComplete:I})],512),i(k,{class:j(["main-wrap h-full p-0",{"bg-page":t(E)}])},{default:c(()=>[i(g,{class:j(["layout-content-height",{"px-[64px]":t(m)}]),style:Te({height:t(u)})},{default:c(()=>[t(H).routeRefreshTag?(l(),T(N,{key:0},{default:c(({Component:C,route:A})=>[(l(),T(Me,{include:t(L).tabNames},[(l(),T(Fe(C),{key:A.fullPath}))],1032,["include"]))]),_:1})):y("",!0)]),_:1},8,["class","style"])]),_:1},8,["class"])]),_:1})]),_:1})])}}});const qt=ee($t,[["__scopeId","data-v-dcf13a00"]]);export{qt as default}; diff --git a/niucloud/public/admin/assets/index-4718d422.js b/niucloud/public/admin/assets/index-4718d422.js new file mode 100644 index 0000000..8496f36 --- /dev/null +++ b/niucloud/public/admin/assets/index-4718d422.js @@ -0,0 +1 @@ +import{d as L,q as S,n as h,s as P,h as o,c as n,a as l,x as v,u as s,e as a,R as g,I as j,w as $,t as B,N,F as y,G as R,B as E,au as D,V as Z,aM as q}from"./index-6010b07e.js";/* empty css */import{_ as G}from"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import{_ as M}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css */import{_ as A}from"./_plugin-vue_export-helper-c27b6911.js";const H={class:"flex flex-wrap"},J={key:0,class:"w-full h-full relative"},K={class:"w-full h-full flex items-center justify-center"},O={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},Q={class:"w-full h-full flex items-center justify-center flex-col"},U={class:"leading-none text-xs mt-[10px] text-secondary"},W={class:"w-full h-full relative"},X={class:"w-full h-full flex items-center justify-center"},Y={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},ee={class:"w-full h-full flex items-center justify-center flex-col"},te={class:"leading-none text-xs mt-[10px] text-secondary"},le=L({__name:"index",props:{modelValue:{type:String,default:""},width:{type:String,default:"100px"},height:{type:String,default:"100px"},imageText:{type:String},limit:{type:Number,default:1}},emits:["update:modelValue","change"],setup(i,{emit:w}){const d=i,u=S({get(){return d.modelValue},set(e){w("update:modelValue",e)}}),t=h({data:[]});let b=h([]);const f=()=>{u.value=D(t.data).toString(),b=D(t.data).map(e=>g(e))};P(()=>u.value,()=>{t.data=[...u.value.split(",").filter(e=>e)],f()},{immediate:!0});const p=S(()=>({width:d.width,height:d.height})),k=e=>{d.limit==1?(t.data.splice(0,1),e&&t.data.push(e.url)):e.forEach(r=>{t.data.length{t.data.splice(e,1),f()},m=h({show:!1,index:0}),V=(e=0)=>{m.show=!0,m.index=e};return(e,r)=>{const z=Z,c=M,I=G,T=q;return o(),n(y,null,[l("div",H,[i.limit==1?(o(),n("div",{key:0,class:"rounded cursor-pointer overflow-hidden relative border border-solid border-color image-wrap mr-[10px]",style:v(s(p))},[t.data.length?(o(),n("div",J,[l("div",K,[a(z,{src:s(g)(t.data[0]),fit:"contain"},null,8,["src"])]),l("div",O,[a(c,{name:"element-ZoomIn",color:"#fff",size:"18px",class:"mr-[10px]",onClick:r[0]||(r[0]=_=>V())}),a(c,{name:"element-Delete",color:"#fff",size:"18px",onClick:C})])])):(o(),j(I,{key:1,limit:i.limit,onConfirm:k},{default:$(()=>[l("div",Q,[a(c,{name:"element-Plus",size:"20px",color:"var(--el-text-color-secondary)"}),l("div",U,B(i.imageText||s(N)("upload.root")),1)])]),_:1},8,["limit"]))],4)):(o(),n(y,{key:1},[(o(!0),n(y,null,R(t.data,(_,x)=>(o(),n("div",{class:"rounded cursor-pointer overflow-hidden relative border border-solid border-color image-wrap mr-[10px]",style:v(s(p)),key:x},[l("div",W,[l("div",X,[a(z,{src:s(g)(_),fit:"contain"},null,8,["src"])]),l("div",Y,[a(c,{name:"element-ZoomIn",color:"#fff",size:"18px",class:"mr-[10px]",onClick:F=>V(x)},null,8,["onClick"]),a(c,{name:"element-Delete",color:"#fff",size:"18px",onClick:F=>C(x)},null,8,["onClick"])])])],4))),128)),t.data.length[l("div",ee,[a(c,{name:"element-Plus",size:"20px",color:"var(--el-text-color-secondary)"}),l("div",te,B(i.imageText||s(N)("upload.root")),1)])]),_:1},8,["limit"])],4)):E("",!0)],64))]),m.show?(o(),j(T,{key:0,"url-list":s(b),onClose:r[1]||(r[1]=_=>m.show=!1),"initial-index":m.index,"zoom-rate":1},null,8,["url-list","initial-index"])):E("",!0)],64)}}});const ce=A(le,[["__scopeId","data-v-1a68ab0a"]]);export{ce as _}; diff --git a/niucloud/public/admin/assets/index-4e2bf3dd.js b/niucloud/public/admin/assets/index-4e2bf3dd.js new file mode 100644 index 0000000..f0c15a0 --- /dev/null +++ b/niucloud/public/admin/assets/index-4e2bf3dd.js @@ -0,0 +1,60 @@ +import{d as g2,r as xa,f as y2,O as m2,s as _2,h as Gh,c as Fh,y as S2,a as _t,t as qt,e as te,w as Ht,i as xi,u as le,N as ae,B as x2,bg as w2,at as b2,ai as A2,cH as T2,al as C2,am as D2,_ as M2,ar as I2,as as L2,$ as P2,p as R2,g as E2}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as k2}from"./stat-279e21e6.js";import{u as O2}from"./style-e9363b8b.js";import{b as N2}from"./module-98fa643e.js";import{_ as B2}from"./_plugin-vue_export-helper-c27b6911.js";const V2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAASVJREFUOE+107FL1WEUxvHPGRobJAhzawtxSwRdchIKalHiQuhyx0AHwcH/wEAc3B3Ewcslgqbb0uAQBDo5RYOLODQKDlJy4r387qV7hfzBxXd+zvc85znnDSO+GLHe/QIy8wlW8RyX+IjDiMie81sOMnMKT/8peDQ05gFWepABQGbuYI07R2tERKuA+4Cq82nNUFsR0egDMnMdG7jBV7zBwyHYFT5hHucRMdsFZOYy9ivxIt7hBb5gAmM4wi+M41WVUTMi9grgM15XgA42sYDH+IE/uMAW3mMbM+hExMsCaGOpEjZxXXU4wyS+4wGe4Sd2K2ftiHhbANP4VolqZug35iLiuLuFzCyHUkIsM//vOssBlXE+RMTJwBrrth7W3e9fqOPqLzGPTRE0mOK2AAAAAElFTkSuQmCC",z2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAAXNSR0IArs4c6QAAANpJREFUKFPtkb1KA1EQhb+5BrGwX5I3cMFGK22E/XkDwcLSIo3PkDoPYCOktfIVdodF2HRJuqSwsbTXwiy5O3LDBlT0DZxuzsxhhu8IQJqm12Z2BxyG/pd6F5HbsiwfJAyTJJkBJ8DazCbOOR/0tm33ROQGOADmqnq6MyyBI+ADuAc23ZUeMOwMK1WNfxr++Ggr/xt2WAONNTAGXs1sJCL9Dt03SlPgDHh2zl0VRbEIS3meD7z3j8A58KSqF9scsiw79t5nTdNM6rp++xpGHMf7URRdmtm0qqqXT1e4aQ2MTxnlAAAAAElFTkSuQmCC",G2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAAgZJREFUaEPtWL1O40AQnlkTELwECCGEEK9AiDYVJSUdEiddQ8MTIPEIdDQInoCOyjsK4ZorEQIEFc3p6qsOCPEgI0ugxHF21yYbReN6/r6fWduLMGEPThgeEEDjrqgoJAqNmAGx3IgJd24nCn2hDOv1+kKtVpt1pjFLYOZ/RPTHNz8vz0uhZrO5ysznALBcwTDXSqm9OI5/VVDL70tBa90GgPUqBshqvADANhGlJJV6vBTSWqcDTJfq3J/8hog/jDFnZer6AuIyTQtyE0TcN8Yc+dYfN0AfOBDxwBhz6ANqLAGlQJRSu3Ecn7iCGltAAPBARCuTBCghoigkoPSU2ul2u5dKKatDI0kSjKJog5lPAWCqd3gicnaQc0LaVGudN/AtEa25MprVuwGAvtzQgLqI+JOZW4hopRAzIyI2mPkYAPrsFRqQjziFOQIofYf50Dpgh9JS9wDwGwDyLLfk+v0XVCFm/svMi61W63kQSVrrCwDYtCVRAInlMq8U7JCtm6ziglrOakLHIAH0DTvkqEFxuCgkCskpV26lZIdkhz536DsuGnv9+UpEM66m9f19qPoqOG/uKyKqjwRQxZf1eTM/IuKWMeZuJICyJthoNOajKJpzbVoU3+l0/rfb7acBP4lDW3lZbmjVgAECKCD5Vq1FISuaAgaJQgHJt2otClnRFDBo4hR6B/VM3DV4XJQ+AAAAAElFTkSuQmCC",F2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAAA/RJREFUaEPtmF1oHFUUx/9ntlFSVIoJChHEQgWJglWskAfrzLlbQSRPuihUoSD4AQqC0kooFpWCDYpQKIIIglRQ8uCTimHv3TGGLrFdix+NIkWfDFpiXYVsZJudI7dMZFjzMXez2V3izFvu/Ofc/++c+3E2hC320BbjQQbU6xXNKpRVqMMZyJZchxPuPF1WIeeUdfiDTamQUuphEXkewE4ROU9E48aYjzrB1nagIAheJqKXmswLgDFjzGubDdVWoCAIjhLRWGz6LID3ADwO4DY7RkRHtNavbCZU24CCIDhGRAdj42cajca+MAyrSqkBEdEAbo9BjhpjDufz+QejKLKw1wP4ZmlpaXxqaur7jcK2BYiZXwdg94x9KlEU5S3MsjkLBaAoIrvjsfMAdjWZr0ZRdE8Yht9tBGrDQMz8JoDnYhNf1ev1/PT09B/NppRSe0TkFIBtiXf2wKiIyEMAcgC+HRgYuGNiYqLRKtSGgJj5OIBn42V2tlar5cvl8sWkGd/3d3iedxjAMwCujN/9SUSvVqvV45VK5RIz28PikH0nIk+WSqW3Ow1EzHwCwNPxxF8TkdJa/75sxPf9bZ7nPQXgCIDBeDwSkXf7+vrGJicnLyS0V3me9wOAGwBcWFhYuHlmZuavVqCcKlQoFHLz8/N2rxSI6K7EhL8CWGgycDWA65rGLhLRTysZFZEbE3q7x34RkU8GBwffcFmCTkBKqYMicqyVzLX6DREd0lqPp/3eCYiZPwewN23wNummjDH3po3lBKSUOi0iyaWWdp6WdUR0Rmu9J22ADOj/VCF7zL5gTz8ReSLlErGXsj317KbvX+mbri05EfmwVCo9AsBj5nMAblkH6rQx5m6rYWbbxD7WU0AAfoui6KYwDP9WSu0TkU/jdmYln5cA+MaYU/YCJqIfiWhnrwFZPy8aYy7fU8xcAPAOgGuajM57nnegWCx+HOtsN/HWatXs2pKLDdWJKK+1/sL+PTIycm1/f/9+ItotIlHciX+w3Ikz850iMk1EK+4fG6PbQNZDDcABY8zEWnsoCIIHiOgkgB1r6XoB6LI/IvpMRE4sLi4Wy+Xyoh0bHR3dXqvV9oqI7dDvt7L1TsOeAUoYbYjIHBF5cfPZtx5E8n0vArn4/482A3JJX9acumRrFW225FySyMxfAkj928Ql9hraf3u+NPHWvQeSQZRSJ0Vkf5rA7dIQ0fta60fTxnMC8n1/FxFNrtZIpp00rU5EfhaR+8IwtP80SfU4AdmIw8PDVwwNDd3aaDS2p5qhRVEul6vNzc2dm52drbuEcAZyCd4NbQbUjay7zJlVyCVb3dBmFepG1l3mzCrkkq1uaLdchf4Bw0DDRGEk/CUAAAAASUVORK5CYII=",H2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABIFJREFUaEPtmF1oXEUUx//n5pYkuDXR9QOEBKoPgmgVFg0hGrIzyypqtSKpYrUKflCoiohYseKb2CJSEa1IEfzAiqaIZCvRde/MJaUE8qAINg99EKP0IUioSDWt7s6RkV1Jze7eubfpdgk7j7v/8/E7Zz4Ol7DGFq0xHnSA2r2jnQ51OtTiCnS2XIsLHjtcp0NxSyalvM0Ys4+Iepl5p9b6w7g+4ujPaYeEEE8CeANAVzUpJqLdQRDsAsBxEnXVnhOg8fHxrsXFxb0AnmqQyMGlpaVtMzMzS66JuupWHWhkZGR9T0/PJ8x8R0QSs0R0VxAEC67JuuhWFWh0dHTA9/0CgOtdggOY933/zmKx+IOjPlK2akDZbDZDRJMAroiMeqbgd2beorX+OqZdXfmqAAkh7gHwEYALEiZVBvC0UuqdhPb/mZ01kBDiOQB7AHhnmwyAvUop688k9ZUYaGxszPc8bx+Ax5MGb2A36fv+A8Vi8Y8kfhMB5XK5vkqlcpCIckmCOth8B2CTUuq4g/YMSWygfD6/oVwuHwJwTdxgMfXHPc/bVCqVLJzzigUkpRxm5i8AXOYQwZ6Dw8wcENEvAHpsEYhoMzMPONhbyUlm3qq1tren03IGEkJsr44x3Q6eZ8vl8vbp6ekV1c1kMuv6+vp2ANgNwMWXYeaXtNavOsR1/0gihLBjiq1y1Cp0d3ePT01NnW4mzOVyY8aYr1ygmPmE1vriqMD2/zgd+gvAuginP/q+v3HZDUVSyvuYOc/MHhEF6XT6wMTERMX6EULYWe/NqETtlg2CYDBKFxdoPzM/SkTNirBNKWUfWAwPD/f29vbaMUj+L5FD6XR6s4WyVz8RHSOiDU2SrTDzHq21ndAjl3OHrKfq23MTgCN1PJ82xlwShuHJavV3Vs/JCikRPRIEwQdV3WsA7GNaT3dVpVL5OQxDO0k4rVhA1qOU8kZmnq3j/ZhS6ura70KIwO6qBlkcUEptrRbpYc/z3q+n831/sFgs2hvSea0m0FGl1LW1yNls9ptGDy8RfRoEwf1Wm81m7yYi+xSsWOcb6JQx5tJlW+4FAHWvWmbeobW2Y5O9GB4DsL8dgUBEDwZB8HF1K6U8z7NnbePyZJk5XFhYuHVubs7emhboMwDjbQkE4FulVKaW3NDQ0IWpVOoZY8wtRHQKwKRS6r3aNC2lvJyZ5xu9Red7y9U4tiilJlxOsZTydWZ+tpG2XYB+MsZcVztLjZKVUl7JzEebTR/tAgRmfltrbT9hNVxCiC8B3N5M0zZA9ox4nidLpVJYL2EhxEMAIj84thOQ5Zg3xtwQhuFvy6FyudygMeZ7AP1R56zdgGy+nyul7q0lXp3dNBHdHAVj/29HIHueXtZav5LJZLr6+/vfYuYnXGDaFsgmxsy/EpEP4CJXmJYB5fP5gXK5bB/D2HNgHBhm/juVSvUXCoU/49glSkpK+SIzPw9gfZxgMbQnjDG7wjB8N4bNv9JEQHGDtFLfAWpltZPE6nQoSdVaadPpUCurnSRWp0NJqtZKmzXXoX8Am9/iROGxbfwAAAAASUVORK5CYII=",W2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABS9JREFUaEPtmGtoXEUUx/9n8thGDKTa+MBWpSItIoIGbWMa2TtDoFYsVVtFWsQnPooffAtqtT6+qFUQbCsqUuwnQ6sgsTTNzL2W2Gi1Yj9JH5YUUSzYlsaa1TQ7RybcC5uQZufebhYpez/tnT2v3zl3Zs4M4Sx76CzjQQ3o/17RWoVqFapyBmqfXJUTntpdrUK+KVu0aNHMxsbGVQC6AFwW6x0GsGNkZGRzf3//cV9baeSmpUJKqQestW8R0czJgmHm40T0rDHmozTB+shWHEgp9Sozv+TlnOg1rfUaH1lfmYoCSSlvA7AF8G6pmJmXh2G41TfgcnIVA8rn8/VCiH0A5pZzOuH/Q9baeVEUjabUm1S8YkBKqYCZTZagiEhqrcMsuhN1Kgm0hpnXZgzqFWNMVt1xLisGJKXcAOCRjEAbjTGPZtSdNqC3ATyVMah1xpinM+pOD5BS6mFm3pglKCJ6UGv9cRbdaZtD+Xx+thBiEEBdmsCY+ZQQYo7W+kgavdPJVmwOOQdSyk8A3JsmMGZeH4bh6jQ6U8lWFKizs7O1oaFhN4DLPQP8OZfLLdy2bduQp3xZsYoCOW9dXV1XFovFLwHMK+N97+jo6K07d+78tWyUKQQqDuR8d3R0NM+YMeMZZn4MwPkT4jlCRO8NDw+/OzAwUEgRq5fotAAlnlesWFF39OjRNiK61I0Vi8XBKIp+BGC9ossgVDGgtra2hubm5gvr6urOKxaLI0KIQi6XGy4UCoXW1tZCd3d3MUN8qVXOCMhBtLS03AVglbX2JiJqmiKCEQAHhBDPCSGi3t7ev1NH66GQGUgp1cXMrt25wsPPmAgz3xKG4Vfut1JqGTO/CaDHGPNEPLaKmV8E8IYx5lNfu6VymYCUUq4RfRmA8HXqDj7MPDeKIrf5uj3rHQBjIES0xVr7GxHdD+BcALuMMR2+ts8ISEr5OoAXfJ0RUT8zf8bMu8Mw/C7Rk1L2xvcNk5kaNMa4cxX7+knkUlUoCIKlRPRFihPpyfr6+ouS+SKlfB7AnQDcXJsfB3HIfXZEVIjn4cL484wA7COii621K6MoOukD5w3U3t7e1NTUdADAJT6G46B+CMPw+pKquJueluSdmTcNDQ09tGfPnlPJWBAEa4lo4j3DUmOM26zLPt5AUkp3Xllf1uJ4gX+JqFNr/X08b9x56f147rmKXDBZ5qWUv5Qc5T88ceLE6lLoqWJIA/QNgBtTArkJ/5PW+tpETym1iZnvYeZx1Su1GwTBZiJaCcAYY1Qan15ArpXJ5XLHANSnMR7LbjDGuBZo7JFS9gBYAuCwMWbSJlZK6Zb2m4noW621S6L34uAFpJRqZ+ZdGWAGC4XCVUnPllQnsSOEWNzX17e91K6U0t2y7gfQGI/vsNYu8b0V8gVazszdGYC2GmPuKKnOX/E+kwz9SURLtdYDbiAIgnnxKpqsgG74uDFmlm//5wvkdvXPMwAds9a2JZupUmolMy8AMAfAshJ7B4nolLV2PhG5mFzz+gEzHyCig74rnLPnBZTP52cR0f7T3VWXAR1x93XMfF8URX+UVGuqRWZcZdMk0gsonsw3AHAXGVencVAiq9ySVQK0F8A18bvr234H8DiAc4hou9Z6cRY/3kCxcQqC4DoAC4QQs5l5puuwmdlN4HoiEszs+jtn161M/7jVTAjR09fX1z9hab6diJ5k5q/DMBxrpdwnCeBuAOuy3qSmBcqStKrq1ICqmu4MzmoVypC0qqrUKlTVdGdwVqtQhqRVVeWsq9B/OebqRB2ElicAAAAASUVORK5CYII=",U2="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAYAAADFeBvrAAAAAXNSR0IArs4c6QAABE1JREFUaEPtmEtoJFUUhv9zu0Mw2smMUXyNDOjEURe+omQRbKpvP7TR6GpgXAmKT9z4WLhw4YCgKzfiA9GNbgajILSoIV2na8CMC81sjCjjA1e6UEeDxKSS1L1SoVvaTqdzbgUKCVWrbvr/zznfOber7i3CPrton/EgA/q/TzSbUDahlDuQLbmUG+6cLpuQc8sGGCYnJ4dGR0e1UuqQtfYbZj691/iJJlStVi+31l5ijNnmJ6K1KIrOBkGwOag4z/OuVUp9COBoR0dEzSiKjgVB8GdSMCcgz/MOKaXeAVAalNBa+ysRPc3M7/bTVSqV64wxDODS3t+J6IsoimpJocRAnufllVKLAG4Qds8CuJeZG936QTBdk0oMJQYqlUp3ENGnQpiO7DQzT3e+SGD2CuUC9DgRveoI9DszXxR7XGD2AiUG0lo/AeAVR6BlZj7ged4FSqklAIcd/bG8wcz3SH2pAGmtHwLwprSoXp0xZiIIgu8l/rSAXgTwrKSgfhoiqvm+Py/xpwJULpcftNa+JSmoj8YS0RHf93+U+FMBmpmZGVlZWfkKwFWSono07zPzMalPDFQulx+x1r4hDdzW/XuXKxaLE/l8vgXgCocYC2EY1hcWFv6SesRApVKpHG9NpIFjHRF95vv+7R2PI5QzzFZOaYHxRnJsbOxrABNCjwFwNzN/0q0XQiWCcQJqPxxvNsacBHDNIChr7S9Kqad834+1265qtToRRdFOyy8xjDNQuzLyPO9wLpcb2QFqzff9nwDEE9rx0lpfDeADADd2iU6FYTjj8p/pTSBecsJl5iSr1+vD6+vrx40x1xPR0vLy8snFxcUNpyA94qRAqlKpFDY3N/v514IgWNulKKrX64XV1VXVqysUCuuNRuPvpFBOQFNTU6MjIyMvE9F9AHZacvGx4YxS6plmsxl0F9Y+ob5ARA8DODCg6LMAnmPmWVcwJyCttQ9AC5OsE5Hn+/7nHX25XH7bWvuA0G+ttcdbrdZ7Qv2WTAyktS4COOUS3FrbbLVa1dhTLBavzOfz8c1i2zIbEPMHZj7iktMF6FEAr7sEB/AbM18cexIeEBGG4ajLXc8FKPF5qA10FxF95NgQDA0Njc/NzZ2T+jIgaafauq0Tazahrq5lS066hLTWjwF4Tapv6/5g5gvjz57n3amU+s/OWxLLGHPQ5aWjy02hDuBjSRFdmkVmvrX9HzpKRN86+s+1X4PFuw/RJQaq1Wrnb2xsfEdEl4kix09Qpe5vNpvxq+Oth7jW+ksAt0j9AJ5n5hMOevlOIQ6qta4BiM84B3dJEm9OTzDzS926arV6UxRF8bNot2N4FC/v8fHxJ2dnZ+PP4ks8oU7E6enpwvDw8G1KqfP6ZbHWhvl8/sxOD8P4yBCG4ZRSqtDPb4zZyOVyS/Pz8z+LKbqEzkBJkqTpyYDS7HaSXNmEknQtTU82oTS7nSRXNqEkXUvTs+8m9A/In85ES62fRwAAAABJRU5ErkJggg==";/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */var hp=function(r,e){return hp=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,a){t.__proto__=a}||function(t,a){for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(t[n]=a[n])},hp(r,e)};function k(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");hp(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}var $2=function(){function r(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1}return r}(),Y2=function(){function r(){this.browser=new $2,this.node=!1,this.wxa=!1,this.worker=!1,this.svgSupported=!1,this.touchEventsSupported=!1,this.pointerEventsSupported=!1,this.domSupported=!1,this.transformSupported=!1,this.transform3dSupported=!1,this.hasGlobalWindow=typeof window<"u"}return r}(),Rn=new Y2;typeof wx=="object"&&typeof wx.getSystemInfoSync=="function"?(Rn.wxa=!0,Rn.touchEventsSupported=!0):typeof document>"u"&&typeof self<"u"?Rn.worker=!0:typeof navigator>"u"?(Rn.node=!0,Rn.svgSupported=!0):X2(navigator.userAgent,Rn);function X2(r,e){var t=e.browser,a=r.match(/Firefox\/([\d.]+)/),n=r.match(/MSIE\s([\d.]+)/)||r.match(/Trident\/.+?rv:(([\d.]+))/),i=r.match(/Edge?\/([\d.]+)/),o=/micromessenger/i.test(r);a&&(t.firefox=!0,t.version=a[1]),n&&(t.ie=!0,t.version=n[1]),i&&(t.edge=!0,t.version=i[1],t.newEdge=+i[1].split(".")[0]>18),o&&(t.weChat=!0),e.svgSupported=typeof SVGRect<"u",e.touchEventsSupported="ontouchstart"in window&&!t.ie&&!t.edge,e.pointerEventsSupported="onpointerdown"in window&&(t.edge||t.ie&&+t.version>=11),e.domSupported=typeof document<"u";var s=document.documentElement.style;e.transform3dSupported=(t.ie&&"transition"in s||t.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in s)&&!("OTransition"in s),e.transformSupported=e.transform3dSupported||t.ie&&+t.version>=9}const At=Rn;var Qd=12,lb="sans-serif",Za=Qd+"px "+lb,Z2=20,q2=100,K2="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function Q2(r){var e={};if(typeof JSON>"u")return e;for(var t=0;t=0)s=o*t.length;else for(var l=0;l>1)%2;s.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",a[l]+":0",n[u]+":0",a[1-l]+":auto",n[1-u]+":auto",""].join("!important;"),r.appendChild(o),t.push(o)}return t}function SL(r,e,t){for(var a=t?"invTrans":"trans",n=e[a],i=e.srcCoords,o=[],s=[],l=!0,u=0;u<4;u++){var f=r[u].getBoundingClientRect(),h=2*u,v=f.left,c=f.top;o.push(v,c),l=l&&i&&v===i[h]&&c===i[h+1],s.push(r[u].offsetLeft,r[u].offsetTop)}return l&&n?n:(e.srcCoords=o,e[a]=t?fm(s,o):fm(o,s))}function db(r){return r.nodeName.toUpperCase()==="CANVAS"}var xL=/([&<>"'])/g,wL={"&":"&","<":"<",">":">",'"':""","'":"'"};function ke(r){return r==null?"":(r+"").replace(xL,function(e,t){return wL[t]})}var bL=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Wh=[],AL=At.browser.firefox&&+At.browser.version.split(".")[0]<39;function mp(r,e,t,a){return t=t||{},a?vm(r,e,t):AL&&e.layerX!=null&&e.layerX!==e.offsetX?(t.zrX=e.layerX,t.zrY=e.layerY):e.offsetX!=null?(t.zrX=e.offsetX,t.zrY=e.offsetY):vm(r,e,t),t}function vm(r,e,t){if(At.domSupported&&r.getBoundingClientRect){var a=e.clientX,n=e.clientY;if(db(r)){var i=r.getBoundingClientRect();t.zrX=a-i.left,t.zrY=n-i.top;return}else if(yp(Wh,r,a,n)){t.zrX=Wh[0],t.zrY=Wh[1];return}}t.zrX=t.zrY=0}function ng(r){return r||window.event}function Je(r,e,t){if(e=ng(e),e.zrX!=null)return e;var a=e.type,n=a&&a.indexOf("touch")>=0;if(n){var o=a!=="touchend"?e.targetTouches[0]:e.changedTouches[0];o&&mp(r,o,e,t)}else{mp(r,e,e,t);var i=TL(e);e.zrDelta=i?i/120:-(e.detail||0)/3}var s=e.button;return e.which==null&&s!==void 0&&bL.test(e.type)&&(e.which=s&1?1:s&2?3:s&4?2:0),e}function TL(r){var e=r.wheelDelta;if(e)return e;var t=r.deltaX,a=r.deltaY;if(t==null||a==null)return e;var n=Math.abs(a!==0?a:t),i=a>0?-1:a<0?1:t>0?-1:1;return 3*n*i}function _p(r,e,t,a){r.addEventListener(e,t,a)}function CL(r,e,t,a){r.removeEventListener(e,t,a)}var fa=function(r){r.preventDefault(),r.stopPropagation(),r.cancelBubble=!0};function cm(r){return r.which===2||r.which===3}var DL=function(){function r(){this._track=[]}return r.prototype.recognize=function(e,t,a){return this._doTrack(e,t,a),this._recognize(e)},r.prototype.clear=function(){return this._track.length=0,this},r.prototype._doTrack=function(e,t,a){var n=e.touches;if(n){for(var i={points:[],touches:[],target:t,event:e},o=0,s=n.length;o1&&a&&a.length>1){var i=pm(a)/pm(n);!isFinite(i)&&(i=1),e.pinchScale=i;var o=ML(a);return e.pinchX=o[0],e.pinchY=o[1],{type:"pinch",target:r[0].target,event:e}}}}};function lr(){return[1,0,0,1,0,0]}function rh(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=1,r[4]=0,r[5]=0,r}function ig(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r}function oa(r,e,t){var a=e[0]*t[0]+e[2]*t[1],n=e[1]*t[0]+e[3]*t[1],i=e[0]*t[2]+e[2]*t[3],o=e[1]*t[2]+e[3]*t[3],s=e[0]*t[4]+e[2]*t[5]+e[4],l=e[1]*t[4]+e[3]*t[5]+e[5];return r[0]=a,r[1]=n,r[2]=i,r[3]=o,r[4]=s,r[5]=l,r}function Wr(r,e,t){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4]+t[0],r[5]=e[5]+t[1],r}function pi(r,e,t){var a=e[0],n=e[2],i=e[4],o=e[1],s=e[3],l=e[5],u=Math.sin(t),f=Math.cos(t);return r[0]=a*f+o*u,r[1]=-a*u+o*f,r[2]=n*f+s*u,r[3]=-n*u+f*s,r[4]=f*i+u*l,r[5]=f*l-u*i,r}function og(r,e,t){var a=t[0],n=t[1];return r[0]=e[0]*a,r[1]=e[1]*n,r[2]=e[2]*a,r[3]=e[3]*n,r[4]=e[4]*a,r[5]=e[5]*n,r}function go(r,e){var t=e[0],a=e[2],n=e[4],i=e[1],o=e[3],s=e[5],l=t*o-i*a;return l?(l=1/l,r[0]=o*l,r[1]=-i*l,r[2]=-a*l,r[3]=t*l,r[4]=(a*s-o*n)*l,r[5]=(i*n-t*s)*l,r):null}function IL(r){var e=lr();return ig(e,r),e}var LL=function(){function r(e,t){this.x=e||0,this.y=t||0}return r.prototype.copy=function(e){return this.x=e.x,this.y=e.y,this},r.prototype.clone=function(){return new r(this.x,this.y)},r.prototype.set=function(e,t){return this.x=e,this.y=t,this},r.prototype.equal=function(e){return e.x===this.x&&e.y===this.y},r.prototype.add=function(e){return this.x+=e.x,this.y+=e.y,this},r.prototype.scale=function(e){this.x*=e,this.y*=e},r.prototype.scaleAndAdd=function(e,t){this.x+=e.x*t,this.y+=e.y*t},r.prototype.sub=function(e){return this.x-=e.x,this.y-=e.y,this},r.prototype.dot=function(e){return this.x*e.x+this.y*e.y},r.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},r.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},r.prototype.normalize=function(){var e=this.len();return this.x/=e,this.y/=e,this},r.prototype.distance=function(e){var t=this.x-e.x,a=this.y-e.y;return Math.sqrt(t*t+a*a)},r.prototype.distanceSquare=function(e){var t=this.x-e.x,a=this.y-e.y;return t*t+a*a},r.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},r.prototype.transform=function(e){if(e){var t=this.x,a=this.y;return this.x=e[0]*t+e[2]*a+e[4],this.y=e[1]*t+e[3]*a+e[5],this}},r.prototype.toArray=function(e){return e[0]=this.x,e[1]=this.y,e},r.prototype.fromArray=function(e){this.x=e[0],this.y=e[1]},r.set=function(e,t,a){e.x=t,e.y=a},r.copy=function(e,t){e.x=t.x,e.y=t.y},r.len=function(e){return Math.sqrt(e.x*e.x+e.y*e.y)},r.lenSquare=function(e){return e.x*e.x+e.y*e.y},r.dot=function(e,t){return e.x*t.x+e.y*t.y},r.add=function(e,t,a){e.x=t.x+a.x,e.y=t.y+a.y},r.sub=function(e,t,a){e.x=t.x-a.x,e.y=t.y-a.y},r.scale=function(e,t,a){e.x=t.x*a,e.y=t.y*a},r.scaleAndAdd=function(e,t,a,n){e.x=t.x+a.x*n,e.y=t.y+a.y*n},r.lerp=function(e,t,a,n){var i=1-n;e.x=i*t.x+n*a.x,e.y=i*t.y+n*a.y},r}();const st=LL;var El=Math.min,kl=Math.max,sn=new st,ln=new st,un=new st,fn=new st,Po=new st,Ro=new st,PL=function(){function r(e,t,a,n){a<0&&(e=e+a,a=-a),n<0&&(t=t+n,n=-n),this.x=e,this.y=t,this.width=a,this.height=n}return r.prototype.union=function(e){var t=El(e.x,this.x),a=El(e.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=kl(e.x+e.width,this.x+this.width)-t:this.width=e.width,isFinite(this.y)&&isFinite(this.height)?this.height=kl(e.y+e.height,this.y+this.height)-a:this.height=e.height,this.x=t,this.y=a},r.prototype.applyTransform=function(e){r.applyTransform(this,this,e)},r.prototype.calculateTransform=function(e){var t=this,a=e.width/t.width,n=e.height/t.height,i=lr();return Wr(i,i,[-t.x,-t.y]),og(i,i,[a,n]),Wr(i,i,[e.x,e.y]),i},r.prototype.intersect=function(e,t){if(!e)return!1;e instanceof r||(e=r.create(e));var a=this,n=a.x,i=a.x+a.width,o=a.y,s=a.y+a.height,l=e.x,u=e.x+e.width,f=e.y,h=e.y+e.height,v=!(ip&&(p=_,dp&&(p=S,y=a.x&&e<=a.x+a.width&&t>=a.y&&t<=a.y+a.height},r.prototype.clone=function(){return new r(this.x,this.y,this.width,this.height)},r.prototype.copy=function(e){r.copy(this,e)},r.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},r.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},r.prototype.isZero=function(){return this.width===0||this.height===0},r.create=function(e){return new r(e.x,e.y,e.width,e.height)},r.copy=function(e,t){e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height},r.applyTransform=function(e,t,a){if(!a){e!==t&&r.copy(e,t);return}if(a[1]<1e-5&&a[1]>-1e-5&&a[2]<1e-5&&a[2]>-1e-5){var n=a[0],i=a[3],o=a[4],s=a[5];e.x=t.x*n+o,e.y=t.y*i+s,e.width=t.width*n,e.height=t.height*i,e.width<0&&(e.x+=e.width,e.width=-e.width),e.height<0&&(e.y+=e.height,e.height=-e.height);return}sn.x=un.x=t.x,sn.y=fn.y=t.y,ln.x=fn.x=t.x+t.width,ln.y=un.y=t.y+t.height,sn.transform(a),fn.transform(a),ln.transform(a),un.transform(a),e.x=El(sn.x,ln.x,un.x,fn.x),e.y=El(sn.y,ln.y,un.y,fn.y);var l=kl(sn.x,ln.x,un.x,fn.x),u=kl(sn.y,ln.y,un.y,fn.y);e.width=l-e.x,e.height=u-e.y},r}();const ft=PL;var gb="silent";function RL(r,e,t){return{type:r,event:t,target:e.target,topTarget:e.topTarget,cancelBubble:!1,offsetX:t.zrX,offsetY:t.zrY,gestureEvent:t.gestureEvent,pinchX:t.pinchX,pinchY:t.pinchY,pinchScale:t.pinchScale,wheelDelta:t.zrDelta,zrByTouch:t.zrByTouch,which:t.which,stop:EL}}function EL(){fa(this.event)}var kL=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.handler=null,t}return e.prototype.dispose=function(){},e.prototype.setCursor=function(){},e}(fr),Eo=function(){function r(e,t){this.x=e,this.y=t}return r}(),OL=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],$h=new ft(0,0,0,0),yb=function(r){k(e,r);function e(t,a,n,i,o){var s=r.call(this)||this;return s._hovered=new Eo(0,0),s.storage=t,s.painter=a,s.painterRoot=i,s._pointerSize=o,n=n||new kL,s.proxy=null,s.setHandlerProxy(n),s._draggingMgr=new dL(s),s}return e.prototype.setHandlerProxy=function(t){this.proxy&&this.proxy.dispose(),t&&(C(OL,function(a){t.on&&t.on(a,this[a],this)},this),t.handler=this),this.proxy=t},e.prototype.mousemove=function(t){var a=t.zrX,n=t.zrY,i=mb(this,a,n),o=this._hovered,s=o.target;s&&!s.__zr&&(o=this.findHover(o.x,o.y),s=o.target);var l=this._hovered=i?new Eo(a,n):this.findHover(a,n),u=l.target,f=this.proxy;f.setCursor&&f.setCursor(u?u.cursor:"default"),s&&u!==s&&this.dispatchToElement(o,"mouseout",t),this.dispatchToElement(l,"mousemove",t),u&&u!==s&&this.dispatchToElement(l,"mouseover",t)},e.prototype.mouseout=function(t){var a=t.zrEventControl;a!=="only_globalout"&&this.dispatchToElement(this._hovered,"mouseout",t),a!=="no_globalout"&&this.trigger("globalout",{type:"globalout",event:t})},e.prototype.resize=function(){this._hovered=new Eo(0,0)},e.prototype.dispatch=function(t,a){var n=this[t];n&&n.call(this,a)},e.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},e.prototype.setCursorStyle=function(t){var a=this.proxy;a.setCursor&&a.setCursor(t)},e.prototype.dispatchToElement=function(t,a,n){t=t||{};var i=t.target;if(!(i&&i.silent)){for(var o="on"+a,s=RL(a,t,n);i&&(i[o]&&(s.cancelBubble=!!i[o].call(i,s)),i.trigger(a,s),i=i.__hostTarget?i.__hostTarget:i.parent,!s.cancelBubble););s.cancelBubble||(this.trigger(a,s),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer(function(l){typeof l[o]=="function"&&l[o].call(l,s),l.trigger&&l.trigger(a,s)}))}},e.prototype.findHover=function(t,a,n){var i=this.storage.getDisplayList(),o=new Eo(t,a);if(dm(i,o,t,a,n),this._pointerSize&&!o.target){for(var s=[],l=this._pointerSize,u=l/2,f=new ft(t-u,a-u,l,l),h=i.length-1;h>=0;h--){var v=i[h];v!==n&&!v.ignore&&!v.ignoreCoarsePointer&&(!v.parent||!v.parent.ignoreCoarsePointer)&&($h.copy(v.getBoundingRect()),v.transform&&$h.applyTransform(v.transform),$h.intersect(f)&&s.push(v))}if(s.length)for(var c=4,p=Math.PI/12,d=Math.PI*2,g=0;g4)return;this._downPoint=null}this.dispatchToElement(i,r,e)}});function NL(r,e,t){if(r[r.rectHover?"rectContain":"contain"](e,t)){for(var a=r,n=void 0,i=!1;a;){if(a.ignoreClip&&(i=!0),!i){var o=a.getClipPath();if(o&&!o.contain(e,t))return!1;a.silent&&(n=!0)}var s=a.__hostTarget;a=s||a.parent}return n?gb:!0}return!1}function dm(r,e,t,a,n){for(var i=r.length-1;i>=0;i--){var o=r[i],s=void 0;if(o!==n&&!o.ignore&&(s=NL(o,t,a))&&(!e.topTarget&&(e.topTarget=o),s!==gb)){e.target=o;break}}}function mb(r,e,t){var a=r.painter;return e<0||e>a.getWidth()||t<0||t>a.getHeight()}const BL=yb;var _b=32,ko=7;function VL(r){for(var e=0;r>=_b;)e|=r&1,r>>=1;return r+e}function gm(r,e,t,a){var n=e+1;if(n===t)return 1;if(a(r[n++],r[e])<0){for(;n=0;)n++;return n-e}function zL(r,e,t){for(t--;e>>1,n(i,r[l])<0?s=l:o=l+1;var u=a-o;switch(u){case 3:r[o+3]=r[o+2];case 2:r[o+2]=r[o+1];case 1:r[o+1]=r[o];break;default:for(;u>0;)r[o+u]=r[o+u-1],u--}r[o]=i}}function Yh(r,e,t,a,n,i){var o=0,s=0,l=1;if(i(r,e[t+n])>0){for(s=a-n;l0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=n,l+=n}else{for(s=n+1;ls&&(l=s);var u=o;o=n-l,l=n-u}for(o++;o>>1);i(r,e[t+f])>0?o=f+1:l=f}return l}function Xh(r,e,t,a,n,i){var o=0,s=0,l=1;if(i(r,e[t+n])<0){for(s=n+1;ls&&(l=s);var u=o;o=n-l,l=n-u}else{for(s=a-n;l=0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=n,l+=n}for(o++;o>>1);i(r,e[t+f])<0?l=f:o=f+1}return l}function GL(r,e){var t=ko,a,n,i=0;r.length;var o=[];a=[],n=[];function s(c,p){a[i]=c,n[i]=p,i+=1}function l(){for(;i>1;){var c=i-2;if(c>=1&&n[c-1]<=n[c]+n[c+1]||c>=2&&n[c-2]<=n[c]+n[c-1])n[c-1]n[c+1])break;f(c)}}function u(){for(;i>1;){var c=i-2;c>0&&n[c-1]=ko||b>=ko);if(A)break;w<0&&(w=0),w+=2}if(t=w,t<1&&(t=1),p===1){for(y=0;y=0;y--)r[x+y]=r[w+y];r[S]=o[_];return}for(var b=t;;){var A=0,T=0,D=!1;do if(e(o[_],r[m])<0){if(r[S--]=r[m--],A++,T=0,--p===0){D=!0;break}}else if(r[S--]=o[_--],T++,A=0,--g===1){D=!0;break}while((A|T)=0;y--)r[x+y]=r[w+y];if(p===0){D=!0;break}}if(r[S--]=o[_--],--g===1){D=!0;break}if(T=g-Yh(r[m],o,0,g,g-1,e),T!==0){for(S-=T,_-=T,g-=T,x=S+1,w=_+1,y=0;y=ko||T>=ko);if(D)break;b<0&&(b=0),b+=2}if(t=b,t<1&&(t=1),g===1){for(S-=p,m-=p,x=S+1,w=m+1,y=p-1;y>=0;y--)r[x+y]=r[w+y];r[S]=o[_]}else{if(g===0)throw new Error;for(w=S-(g-1),y=0;ys&&(l=s),ym(r,t,t+l,t+i,e),i=l}o.pushRun(t,i),o.mergeRuns(),n-=i,t+=i}while(n!==0);o.forceMergeRuns()}}var We=1,os=2,Wi=4,mm=!1;function Zh(){mm||(mm=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function _m(r,e){return r.zlevel===e.zlevel?r.z===e.z?r.z2-e.z2:r.z-e.z:r.zlevel-e.zlevel}var FL=function(){function r(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=_m}return r.prototype.traverse=function(e,t){for(var a=0;a0&&(f.__clipPaths=[]),isNaN(f.z)&&(Zh(),f.z=0),isNaN(f.z2)&&(Zh(),f.z2=0),isNaN(f.zlevel)&&(Zh(),f.zlevel=0),this._displayList[this._displayListLen++]=f}var h=e.getDecalElement&&e.getDecalElement();h&&this._updateAndAddDisplayable(h,t,a);var v=e.getTextGuideLine();v&&this._updateAndAddDisplayable(v,t,a);var c=e.getTextContent();c&&this._updateAndAddDisplayable(c,t,a)}},r.prototype.addRoot=function(e){e.__zr&&e.__zr.storage===this||this._roots.push(e)},r.prototype.delRoot=function(e){if(e instanceof Array){for(var t=0,a=e.length;t=0&&this._roots.splice(n,1)},r.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},r.prototype.getRoots=function(){return this._roots},r.prototype.dispose=function(){this._displayList=null,this._roots=null},r}();const HL=FL;var Sb;Sb=At.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(r){return setTimeout(r,16)};const Sp=Sb;var zu={linear:function(r){return r},quadraticIn:function(r){return r*r},quadraticOut:function(r){return r*(2-r)},quadraticInOut:function(r){return(r*=2)<1?.5*r*r:-.5*(--r*(r-2)-1)},cubicIn:function(r){return r*r*r},cubicOut:function(r){return--r*r*r+1},cubicInOut:function(r){return(r*=2)<1?.5*r*r*r:.5*((r-=2)*r*r+2)},quarticIn:function(r){return r*r*r*r},quarticOut:function(r){return 1- --r*r*r*r},quarticInOut:function(r){return(r*=2)<1?.5*r*r*r*r:-.5*((r-=2)*r*r*r-2)},quinticIn:function(r){return r*r*r*r*r},quinticOut:function(r){return--r*r*r*r*r+1},quinticInOut:function(r){return(r*=2)<1?.5*r*r*r*r*r:.5*((r-=2)*r*r*r*r+2)},sinusoidalIn:function(r){return 1-Math.cos(r*Math.PI/2)},sinusoidalOut:function(r){return Math.sin(r*Math.PI/2)},sinusoidalInOut:function(r){return .5*(1-Math.cos(Math.PI*r))},exponentialIn:function(r){return r===0?0:Math.pow(1024,r-1)},exponentialOut:function(r){return r===1?1:1-Math.pow(2,-10*r)},exponentialInOut:function(r){return r===0?0:r===1?1:(r*=2)<1?.5*Math.pow(1024,r-1):.5*(-Math.pow(2,-10*(r-1))+2)},circularIn:function(r){return 1-Math.sqrt(1-r*r)},circularOut:function(r){return Math.sqrt(1- --r*r)},circularInOut:function(r){return(r*=2)<1?-.5*(Math.sqrt(1-r*r)-1):.5*(Math.sqrt(1-(r-=2)*r)+1)},elasticIn:function(r){var e,t=.1,a=.4;return r===0?0:r===1?1:(!t||t<1?(t=1,e=a/4):e=a*Math.asin(1/t)/(2*Math.PI),-(t*Math.pow(2,10*(r-=1))*Math.sin((r-e)*(2*Math.PI)/a)))},elasticOut:function(r){var e,t=.1,a=.4;return r===0?0:r===1?1:(!t||t<1?(t=1,e=a/4):e=a*Math.asin(1/t)/(2*Math.PI),t*Math.pow(2,-10*r)*Math.sin((r-e)*(2*Math.PI)/a)+1)},elasticInOut:function(r){var e,t=.1,a=.4;return r===0?0:r===1?1:(!t||t<1?(t=1,e=a/4):e=a*Math.asin(1/t)/(2*Math.PI),(r*=2)<1?-.5*(t*Math.pow(2,10*(r-=1))*Math.sin((r-e)*(2*Math.PI)/a)):t*Math.pow(2,-10*(r-=1))*Math.sin((r-e)*(2*Math.PI)/a)*.5+1)},backIn:function(r){var e=1.70158;return r*r*((e+1)*r-e)},backOut:function(r){var e=1.70158;return--r*r*((e+1)*r+e)+1},backInOut:function(r){var e=2.5949095;return(r*=2)<1?.5*(r*r*((e+1)*r-e)):.5*((r-=2)*r*((e+1)*r+e)+2)},bounceIn:function(r){return 1-zu.bounceOut(1-r)},bounceOut:function(r){return r<1/2.75?7.5625*r*r:r<2/2.75?7.5625*(r-=1.5/2.75)*r+.75:r<2.5/2.75?7.5625*(r-=2.25/2.75)*r+.9375:7.5625*(r-=2.625/2.75)*r+.984375},bounceInOut:function(r){return r<.5?zu.bounceIn(r*2)*.5:zu.bounceOut(r*2-1)*.5+.5}};const xb=zu;var Ol=Math.pow,Ua=Math.sqrt,nf=1e-8,wb=1e-4,Sm=Ua(3),Nl=1/3,Or=ci(),rr=ci(),ji=ci();function Ba(r){return r>-nf&&rnf||r<-nf}function ne(r,e,t,a,n){var i=1-n;return i*i*(i*r+3*n*e)+n*n*(n*a+3*i*t)}function xm(r,e,t,a,n){var i=1-n;return 3*(((e-r)*i+2*(t-e)*n)*i+(a-t)*n*n)}function of(r,e,t,a,n,i){var o=a+3*(e-t)-r,s=3*(t-e*2+r),l=3*(e-r),u=r-n,f=s*s-3*o*l,h=s*l-9*o*u,v=l*l-3*s*u,c=0;if(Ba(f)&&Ba(h))if(Ba(s))i[0]=0;else{var p=-l/s;p>=0&&p<=1&&(i[c++]=p)}else{var d=h*h-4*f*v;if(Ba(d)){var g=h/f,p=-s/o+g,y=-g/2;p>=0&&p<=1&&(i[c++]=p),y>=0&&y<=1&&(i[c++]=y)}else if(d>0){var m=Ua(d),_=f*s+1.5*o*(-h+m),S=f*s+1.5*o*(-h-m);_<0?_=-Ol(-_,Nl):_=Ol(_,Nl),S<0?S=-Ol(-S,Nl):S=Ol(S,Nl);var p=(-s-(_+S))/(3*o);p>=0&&p<=1&&(i[c++]=p)}else{var w=(2*f*s-3*o*h)/(2*Ua(f*f*f)),x=Math.acos(w)/3,b=Ua(f),A=Math.cos(x),p=(-s-2*b*A)/(3*o),y=(-s+b*(A+Sm*Math.sin(x)))/(3*o),T=(-s+b*(A-Sm*Math.sin(x)))/(3*o);p>=0&&p<=1&&(i[c++]=p),y>=0&&y<=1&&(i[c++]=y),T>=0&&T<=1&&(i[c++]=T)}}return c}function Ab(r,e,t,a,n){var i=6*t-12*e+6*r,o=9*e+3*a-3*r-9*t,s=3*e-3*r,l=0;if(Ba(o)){if(bb(i)){var u=-s/i;u>=0&&u<=1&&(n[l++]=u)}}else{var f=i*i-4*o*s;if(Ba(f))n[0]=-i/(2*o);else if(f>0){var h=Ua(f),u=(-i+h)/(2*o),v=(-i-h)/(2*o);u>=0&&u<=1&&(n[l++]=u),v>=0&&v<=1&&(n[l++]=v)}}return l}function Ka(r,e,t,a,n,i){var o=(e-r)*n+r,s=(t-e)*n+e,l=(a-t)*n+t,u=(s-o)*n+o,f=(l-s)*n+s,h=(f-u)*n+u;i[0]=r,i[1]=o,i[2]=u,i[3]=h,i[4]=h,i[5]=f,i[6]=l,i[7]=a}function Tb(r,e,t,a,n,i,o,s,l,u,f){var h,v=.005,c=1/0,p,d,g,y;Or[0]=l,Or[1]=u;for(var m=0;m<1;m+=.05)rr[0]=ne(r,t,n,o,m),rr[1]=ne(e,a,i,s,m),g=Kn(Or,rr),g=0&&g=0&&u<=1&&(n[l++]=u)}}else{var f=o*o-4*i*s;if(Ba(f)){var u=-o/(2*i);u>=0&&u<=1&&(n[l++]=u)}else if(f>0){var h=Ua(f),u=(-o+h)/(2*i),v=(-o-h)/(2*i);u>=0&&u<=1&&(n[l++]=u),v>=0&&v<=1&&(n[l++]=v)}}return l}function Cb(r,e,t){var a=r+t-2*e;return a===0?.5:(r-e)/a}function Ns(r,e,t,a,n){var i=(e-r)*a+r,o=(t-e)*a+e,s=(o-i)*a+i;n[0]=r,n[1]=i,n[2]=s,n[3]=s,n[4]=o,n[5]=t}function Db(r,e,t,a,n,i,o,s,l){var u,f=.005,h=1/0;Or[0]=o,Or[1]=s;for(var v=0;v<1;v+=.05){rr[0]=ue(r,t,n,v),rr[1]=ue(e,a,i,v);var c=Kn(Or,rr);c=0&&c=1?1:of(0,a,i,1,l,s)&&ne(0,n,o,1,s[0])}}}var XL=function(){function r(e){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=e.life||1e3,this._delay=e.delay||0,this.loop=e.loop||!1,this.onframe=e.onframe||Zt,this.ondestroy=e.ondestroy||Zt,this.onrestart=e.onrestart||Zt,e.easing&&this.setEasing(e.easing)}return r.prototype.step=function(e,t){if(this._inited||(this._startTime=e+this._delay,this._inited=!0),this._paused){this._pausedTime+=t;return}var a=this._life,n=e-this._startTime-this._pausedTime,i=n/a;i<0&&(i=0),i=Math.min(i,1);var o=this.easingFunc,s=o?o(i):i;if(this.onframe(s),i===1)if(this.loop){var l=n%a;this._startTime=e-l,this._pausedTime=0,this.onrestart()}else return!0;return!1},r.prototype.pause=function(){this._paused=!0},r.prototype.resume=function(){this._paused=!1},r.prototype.setEasing=function(e){this.easing=e,this.easingFunc=K(e)?e:xb[e]||sg(e)},r}();const ZL=XL;var Mb=function(){function r(e){this.value=e}return r}(),qL=function(){function r(){this._len=0}return r.prototype.insert=function(e){var t=new Mb(e);return this.insertEntry(t),t},r.prototype.insertEntry=function(e){this.head?(this.tail.next=e,e.prev=this.tail,e.next=null,this.tail=e):this.head=this.tail=e,this._len++},r.prototype.remove=function(e){var t=e.prev,a=e.next;t?t.next=a:this.head=a,a?a.prev=t:this.tail=t,e.next=e.prev=null,this._len--},r.prototype.len=function(){return this._len},r.prototype.clear=function(){this.head=this.tail=null,this._len=0},r}(),KL=function(){function r(e){this._list=new qL,this._maxSize=10,this._map={},this._maxSize=e}return r.prototype.put=function(e,t){var a=this._list,n=this._map,i=null;if(n[e]==null){var o=a.len(),s=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var l=a.head;a.remove(l),delete n[l.key],i=l.value,this._lastRemovedEntry=l}s?s.value=t:s=new Mb(t),s.key=e,a.insertEntry(s),n[e]=s}return i},r.prototype.get=function(e){var t=this._map[e],a=this._list;if(t!=null)return t!==a.tail&&(a.remove(t),a.insertEntry(t)),t.value},r.prototype.clear=function(){this._list.clear(),this._map={}},r.prototype.len=function(){return this._list.len()},r}();const ul=KL;var wm={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function xr(r){return r=Math.round(r),r<0?0:r>255?255:r}function QL(r){return r=Math.round(r),r<0?0:r>360?360:r}function Bs(r){return r<0?0:r>1?1:r}function qh(r){var e=r;return e.length&&e.charAt(e.length-1)==="%"?xr(parseFloat(e)/100*255):xr(parseInt(e,10))}function Qn(r){var e=r;return e.length&&e.charAt(e.length-1)==="%"?Bs(parseFloat(e)/100):Bs(parseFloat(e))}function Kh(r,e,t){return t<0?t+=1:t>1&&(t-=1),t*6<1?r+(e-r)*t*6:t*2<1?e:t*3<2?r+(e-r)*(2/3-t)*6:r}function Va(r,e,t){return r+(e-r)*t}function Qe(r,e,t,a,n){return r[0]=e,r[1]=t,r[2]=a,r[3]=n,r}function wp(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r}var Ib=new ul(20),Bl=null;function bi(r,e){Bl&&wp(Bl,e),Bl=Ib.put(r,Bl||e.slice())}function Ue(r,e){if(r){e=e||[];var t=Ib.get(r);if(t)return wp(e,t);r=r+"";var a=r.replace(/ /g,"").toLowerCase();if(a in wm)return wp(e,wm[a]),bi(r,e),e;var n=a.length;if(a.charAt(0)==="#"){if(n===4||n===5){var i=parseInt(a.slice(1,4),16);if(!(i>=0&&i<=4095)){Qe(e,0,0,0,1);return}return Qe(e,(i&3840)>>4|(i&3840)>>8,i&240|(i&240)>>4,i&15|(i&15)<<4,n===5?parseInt(a.slice(4),16)/15:1),bi(r,e),e}else if(n===7||n===9){var i=parseInt(a.slice(1,7),16);if(!(i>=0&&i<=16777215)){Qe(e,0,0,0,1);return}return Qe(e,(i&16711680)>>16,(i&65280)>>8,i&255,n===9?parseInt(a.slice(7),16)/255:1),bi(r,e),e}return}var o=a.indexOf("("),s=a.indexOf(")");if(o!==-1&&s+1===n){var l=a.substr(0,o),u=a.substr(o+1,s-(o+1)).split(","),f=1;switch(l){case"rgba":if(u.length!==4)return u.length===3?Qe(e,+u[0],+u[1],+u[2],1):Qe(e,0,0,0,1);f=Qn(u.pop());case"rgb":if(u.length>=3)return Qe(e,qh(u[0]),qh(u[1]),qh(u[2]),u.length===3?f:Qn(u[3])),bi(r,e),e;Qe(e,0,0,0,1);return;case"hsla":if(u.length!==4){Qe(e,0,0,0,1);return}return u[3]=Qn(u[3]),bp(u,e),bi(r,e),e;case"hsl":if(u.length!==3){Qe(e,0,0,0,1);return}return bp(u,e),bi(r,e),e;default:return}}Qe(e,0,0,0,1)}}function bp(r,e){var t=(parseFloat(r[0])%360+360)%360/360,a=Qn(r[1]),n=Qn(r[2]),i=n<=.5?n*(a+1):n+a-n*a,o=n*2-i;return e=e||[],Qe(e,xr(Kh(o,i,t+1/3)*255),xr(Kh(o,i,t)*255),xr(Kh(o,i,t-1/3)*255),1),r.length===4&&(e[3]=r[3]),e}function JL(r){if(r){var e=r[0]/255,t=r[1]/255,a=r[2]/255,n=Math.min(e,t,a),i=Math.max(e,t,a),o=i-n,s=(i+n)/2,l,u;if(o===0)l=0,u=0;else{s<.5?u=o/(i+n):u=o/(2-i-n);var f=((i-e)/6+o/2)/o,h=((i-t)/6+o/2)/o,v=((i-a)/6+o/2)/o;e===i?l=v-h:t===i?l=1/3+f-v:a===i&&(l=2/3+h-f),l<0&&(l+=1),l>1&&(l-=1)}var c=[l*360,u,s];return r[3]!=null&&c.push(r[3]),c}}function Ap(r,e){var t=Ue(r);if(t){for(var a=0;a<3;a++)e<0?t[a]=t[a]*(1-e)|0:t[a]=(255-t[a])*e+t[a]|0,t[a]>255?t[a]=255:t[a]<0&&(t[a]=0);return sa(t,t.length===4?"rgba":"rgb")}}function Qh(r,e,t){if(!(!(e&&e.length)||!(r>=0&&r<=1))){t=t||[];var a=r*(e.length-1),n=Math.floor(a),i=Math.ceil(a),o=e[n],s=e[i],l=a-n;return t[0]=xr(Va(o[0],s[0],l)),t[1]=xr(Va(o[1],s[1],l)),t[2]=xr(Va(o[2],s[2],l)),t[3]=Bs(Va(o[3],s[3],l)),t}}function jL(r,e,t){if(!(!(e&&e.length)||!(r>=0&&r<=1))){var a=r*(e.length-1),n=Math.floor(a),i=Math.ceil(a),o=Ue(e[n]),s=Ue(e[i]),l=a-n,u=sa([xr(Va(o[0],s[0],l)),xr(Va(o[1],s[1],l)),xr(Va(o[2],s[2],l)),Bs(Va(o[3],s[3],l))],"rgba");return t?{color:u,leftIndex:n,rightIndex:i,value:a}:u}}function _s(r,e,t,a){var n=Ue(r);if(r)return n=JL(n),e!=null&&(n[0]=QL(e)),t!=null&&(n[1]=Qn(t)),a!=null&&(n[2]=Qn(a)),sa(bp(n),"rgba")}function sf(r,e){var t=Ue(r);if(t&&e!=null)return t[3]=Bs(e),sa(t,"rgba")}function sa(r,e){if(!(!r||!r.length)){var t=r[0]+","+r[1]+","+r[2];return(e==="rgba"||e==="hsva"||e==="hsla")&&(t+=","+r[3]),e+"("+t+")"}}function lf(r,e){var t=Ue(r);return t?(.299*t[0]+.587*t[1]+.114*t[2])*t[3]/255+(1-t[3])*e:0}var uf=Math.round;function Vs(r){var e;if(!r||r==="transparent")r="none";else if(typeof r=="string"&&r.indexOf("rgba")>-1){var t=Ue(r);t&&(r="rgb("+t[0]+","+t[1]+","+t[2]+")",e=t[3])}return{color:r,opacity:e??1}}var bm=1e-4;function za(r){return r-bm}function Vl(r){return uf(r*1e3)/1e3}function Tp(r){return uf(r*1e4)/1e4}function tP(r){return"matrix("+Vl(r[0])+","+Vl(r[1])+","+Vl(r[2])+","+Vl(r[3])+","+Tp(r[4])+","+Tp(r[5])+")"}var eP={left:"start",right:"end",center:"middle",middle:"middle"};function rP(r,e,t){return t==="top"?r+=e/2:t==="bottom"&&(r-=e/2),r}function aP(r){return r&&(r.shadowBlur||r.shadowOffsetX||r.shadowOffsetY)}function nP(r){var e=r.style,t=r.getGlobalScale();return[e.shadowColor,(e.shadowBlur||0).toFixed(2),(e.shadowOffsetX||0).toFixed(2),(e.shadowOffsetY||0).toFixed(2),t[0],t[1]].join(",")}function Lb(r){return r&&!!r.image}function iP(r){return r&&!!r.svgElement}function lg(r){return Lb(r)||iP(r)}function Pb(r){return r.type==="linear"}function Rb(r){return r.type==="radial"}function Eb(r){return r&&(r.type==="linear"||r.type==="radial")}function ah(r){return"url(#"+r+")"}function kb(r){var e=r.getGlobalScale(),t=Math.max(e[0],e[1]);return Math.max(Math.ceil(Math.log(t)/Math.log(10)),1)}function Ob(r){var e=r.x||0,t=r.y||0,a=(r.rotation||0)*Ou,n=lt(r.scaleX,1),i=lt(r.scaleY,1),o=r.skewX||0,s=r.skewY||0,l=[];return(e||t)&&l.push("translate("+e+"px,"+t+"px)"),a&&l.push("rotate("+a+")"),(n!==1||i!==1)&&l.push("scale("+n+","+i+")"),(o||s)&&l.push("skew("+uf(o*Ou)+"deg, "+uf(s*Ou)+"deg)"),l.join(" ")}var oP=function(){return At.hasGlobalWindow&&K(window.btoa)?function(r){return window.btoa(unescape(encodeURIComponent(r)))}:typeof Buffer<"u"?function(r){return Buffer.from(r).toString("base64")}:function(r){return null}}(),Cp=Array.prototype.slice;function ta(r,e,t){return(e-r)*t+r}function Jh(r,e,t,a){for(var n=e.length,i=0;ia?e:r,i=Math.min(t,a),o=n[i-1]||{color:[0,0,0,0],offset:0},s=i;so;if(s)a.length=o;else for(var l=i;l=1},r.prototype.getAdditiveTrack=function(){return this._additiveTrack},r.prototype.addKeyframe=function(e,t,a){this._needsSort=!0;var n=this.keyframes,i=n.length,o=!1,s=Tm,l=t;if(we(t)){var u=fP(t);s=u,(u===1&&!Ct(t[0])||u===2&&!Ct(t[0][0]))&&(o=!0)}else if(Ct(t)&&!Os(t))s=Gl;else if(U(t))if(!isNaN(+t))s=Gl;else{var f=Ue(t);f&&(l=f,s=ss)}else if(th(t)){var h=B({},l);h.colorStops=G(t.colorStops,function(c){return{offset:c.offset,color:Ue(c.color)}}),Pb(t)?s=Dp:Rb(t)&&(s=Mp),l=h}i===0?this.valType=s:(s!==this.valType||s===Tm)&&(o=!0),this.discrete=this.discrete||o;var v={time:e,value:l,rawValue:t,percent:0};return a&&(v.easing=a,v.easingFunc=K(a)?a:xb[a]||sg(a)),n.push(v),v},r.prototype.prepare=function(e,t){var a=this.keyframes;this._needsSort&&a.sort(function(d,g){return d.time-g.time});for(var n=this.valType,i=a.length,o=a[i-1],s=this.discrete,l=Fl(n),u=Cm(n),f=0;f=0&&!(o[f].percent<=t);f--);f=v(f,s-2)}else{for(f=h;ft);f++);f=v(f-1,s-2)}p=o[f+1],c=o[f]}if(c&&p){this._lastFr=f,this._lastFrP=t;var g=p.percent-c.percent,y=g===0?1:v((t-c.percent)/g,1);p.easingFunc&&(y=p.easingFunc(y));var m=a?this._additiveValue:u?Oo:e[l];if((Fl(i)||u)&&!m&&(m=this._additiveValue=[]),this.discrete)e[l]=y<1?c.rawValue:p.rawValue;else if(Fl(i))i===Fu?Jh(m,c[n],p[n],y):sP(m,c[n],p[n],y);else if(Cm(i)){var _=c[n],S=p[n],w=i===Dp;e[l]={type:w?"linear":"radial",x:ta(_.x,S.x,y),y:ta(_.y,S.y,y),colorStops:G(_.colorStops,function(b,A){var T=S.colorStops[A];return{offset:ta(b.offset,T.offset,y),color:Gu(Jh([],b.color,T.color,y))}}),global:S.global},w?(e[l].x2=ta(_.x2,S.x2,y),e[l].y2=ta(_.y2,S.y2,y)):e[l].r=ta(_.r,S.r,y)}else if(u)Jh(m,c[n],p[n],y),a||(e[l]=Gu(m));else{var x=ta(c[n],p[n],y);a?this._additiveValue=x:e[l]=x}a&&this._addToTarget(e)}}},r.prototype._addToTarget=function(e){var t=this.valType,a=this.propName,n=this._additiveValue;t===Gl?e[a]=e[a]+n:t===ss?(Ue(e[a],Oo),zl(Oo,Oo,n,1),e[a]=Gu(Oo)):t===Fu?zl(e[a],e[a],n,1):t===Nb&&Am(e[a],e[a],n,1)},r}(),ug=function(){function r(e,t,a,n){if(this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=e,this._loop=t,t&&n){tg("Can' use additive animation on looped animation.");return}this._additiveAnimators=n,this._allowDiscrete=a}return r.prototype.getMaxTime=function(){return this._maxTime},r.prototype.getDelay=function(){return this._delay},r.prototype.getLoop=function(){return this._loop},r.prototype.getTarget=function(){return this._target},r.prototype.changeTarget=function(e){this._target=e},r.prototype.when=function(e,t,a){return this.whenWithKeys(e,t,mt(t),a)},r.prototype.whenWithKeys=function(e,t,a,n){for(var i=this._tracks,o=0;o0&&l.addKeyframe(0,Ss(u),n),this._trackKeys.push(s)}l.addKeyframe(e,Ss(t[s]),n)}return this._maxTime=Math.max(this._maxTime,e),this},r.prototype.pause=function(){this._clip.pause(),this._paused=!0},r.prototype.resume=function(){this._clip.resume(),this._paused=!1},r.prototype.isPaused=function(){return!!this._paused},r.prototype.duration=function(e){return this._maxTime=e,this._force=!0,this},r.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var e=this._doneCbs;if(e)for(var t=e.length,a=0;a0)){this._started=1;for(var t=this,a=[],n=this._maxTime||0,i=0;i1){var s=o.pop();i.addKeyframe(s.time,e[n]),i.prepare(this._maxTime,i.getAdditiveTrack())}}}},r}();function Zi(){return new Date().getTime()}var vP=function(r){k(e,r);function e(t){var a=r.call(this)||this;return a._running=!1,a._time=0,a._pausedTime=0,a._pauseStart=0,a._paused=!1,t=t||{},a.stage=t.stage||{},a}return e.prototype.addClip=function(t){t.animation&&this.removeClip(t),this._head?(this._tail.next=t,t.prev=this._tail,t.next=null,this._tail=t):this._head=this._tail=t,t.animation=this},e.prototype.addAnimator=function(t){t.animation=this;var a=t.getClip();a&&this.addClip(a)},e.prototype.removeClip=function(t){if(t.animation){var a=t.prev,n=t.next;a?a.next=n:this._head=n,n?n.prev=a:this._tail=a,t.next=t.prev=t.animation=null}},e.prototype.removeAnimator=function(t){var a=t.getClip();a&&this.removeClip(a),t.animation=null},e.prototype.update=function(t){for(var a=Zi()-this._pausedTime,n=a-this._time,i=this._head;i;){var o=i.next,s=i.step(a,n);s&&(i.ondestroy(),this.removeClip(i)),i=o}this._time=a,t||(this.trigger("frame",n),this.stage.update&&this.stage.update())},e.prototype._startLoop=function(){var t=this;this._running=!0;function a(){t._running&&(Sp(a),!t._paused&&t.update())}Sp(a)},e.prototype.start=function(){this._running||(this._time=Zi(),this._pausedTime=0,this._startLoop())},e.prototype.stop=function(){this._running=!1},e.prototype.pause=function(){this._paused||(this._pauseStart=Zi(),this._paused=!0)},e.prototype.resume=function(){this._paused&&(this._pausedTime+=Zi()-this._pauseStart,this._paused=!1)},e.prototype.clear=function(){for(var t=this._head;t;){var a=t.next;t.prev=t.next=t.animation=null,t=a}this._head=this._tail=null},e.prototype.isFinished=function(){return this._head==null},e.prototype.animate=function(t,a){a=a||{},this.start();var n=new ug(t,a.loop);return this.addAnimator(n),n},e}(fr);const cP=vP;var pP=300,jh=At.domSupported,tv=function(){var r=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],e=["touchstart","touchend","touchmove"],t={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},a=G(r,function(n){var i=n.replace("mouse","pointer");return t.hasOwnProperty(i)?i:n});return{mouse:r,touch:e,pointer:a}}(),Dm={mouse:["mousemove","mouseup"],pointer:["pointermove","pointerup"]},Mm=!1;function Ip(r){var e=r.pointerType;return e==="pen"||e==="touch"}function dP(r){r.touching=!0,r.touchTimer!=null&&(clearTimeout(r.touchTimer),r.touchTimer=null),r.touchTimer=setTimeout(function(){r.touching=!1,r.touchTimer=null},700)}function ev(r){r&&(r.zrByTouch=!0)}function gP(r,e){return Je(r.dom,new yP(r,e),!0)}function Bb(r,e){for(var t=e,a=!1;t&&t.nodeType!==9&&!(a=t.domBelongToZr||t!==e&&t===r.painterRoot);)t=t.parentNode;return a}var yP=function(){function r(e,t){this.stopPropagation=Zt,this.stopImmediatePropagation=Zt,this.preventDefault=Zt,this.type=t.type,this.target=this.currentTarget=e.dom,this.pointerType=t.pointerType,this.clientX=t.clientX,this.clientY=t.clientY}return r}(),gr={mousedown:function(r){r=Je(this.dom,r),this.__mayPointerCapture=[r.zrX,r.zrY],this.trigger("mousedown",r)},mousemove:function(r){r=Je(this.dom,r);var e=this.__mayPointerCapture;e&&(r.zrX!==e[0]||r.zrY!==e[1])&&this.__togglePointerCapture(!0),this.trigger("mousemove",r)},mouseup:function(r){r=Je(this.dom,r),this.__togglePointerCapture(!1),this.trigger("mouseup",r)},mouseout:function(r){r=Je(this.dom,r);var e=r.toElement||r.relatedTarget;Bb(this,e)||(this.__pointerCapturing&&(r.zrEventControl="no_globalout"),this.trigger("mouseout",r))},wheel:function(r){Mm=!0,r=Je(this.dom,r),this.trigger("mousewheel",r)},mousewheel:function(r){Mm||(r=Je(this.dom,r),this.trigger("mousewheel",r))},touchstart:function(r){r=Je(this.dom,r),ev(r),this.__lastTouchMoment=new Date,this.handler.processGesture(r,"start"),gr.mousemove.call(this,r),gr.mousedown.call(this,r)},touchmove:function(r){r=Je(this.dom,r),ev(r),this.handler.processGesture(r,"change"),gr.mousemove.call(this,r)},touchend:function(r){r=Je(this.dom,r),ev(r),this.handler.processGesture(r,"end"),gr.mouseup.call(this,r),+new Date-+this.__lastTouchMomentPm||r<-Pm}var vn=[],Ai=[],av=lr(),nv=Math.abs,bP=function(){function r(){}return r.prototype.getLocalTransform=function(e){return r.getLocalTransform(this,e)},r.prototype.setPosition=function(e){this.x=e[0],this.y=e[1]},r.prototype.setScale=function(e){this.scaleX=e[0],this.scaleY=e[1]},r.prototype.setSkew=function(e){this.skewX=e[0],this.skewY=e[1]},r.prototype.setOrigin=function(e){this.originX=e[0],this.originY=e[1]},r.prototype.needLocalTransform=function(){return hn(this.rotation)||hn(this.x)||hn(this.y)||hn(this.scaleX-1)||hn(this.scaleY-1)||hn(this.skewX)||hn(this.skewY)},r.prototype.updateTransform=function(){var e=this.parent&&this.parent.transform,t=this.needLocalTransform(),a=this.transform;if(!(t||e)){a&&Lm(a);return}a=a||lr(),t?this.getLocalTransform(a):Lm(a),e&&(t?oa(a,e,a):ig(a,e)),this.transform=a,this._resolveGlobalScaleRatio(a)},r.prototype._resolveGlobalScaleRatio=function(e){var t=this.globalScaleRatio;if(t!=null&&t!==1){this.getGlobalScale(vn);var a=vn[0]<0?-1:1,n=vn[1]<0?-1:1,i=((vn[0]-a)*t+a)/vn[0]||0,o=((vn[1]-n)*t+n)/vn[1]||0;e[0]*=i,e[1]*=i,e[2]*=o,e[3]*=o}this.invTransform=this.invTransform||lr(),go(this.invTransform,e)},r.prototype.getComputedTransform=function(){for(var e=this,t=[];e;)t.push(e),e=e.parent;for(;e=t.pop();)e.updateTransform();return this.transform},r.prototype.setLocalTransform=function(e){if(e){var t=e[0]*e[0]+e[1]*e[1],a=e[2]*e[2]+e[3]*e[3],n=Math.atan2(e[1],e[0]),i=Math.PI/2+n-Math.atan2(e[3],e[2]);a=Math.sqrt(a)*Math.cos(i),t=Math.sqrt(t),this.skewX=i,this.skewY=0,this.rotation=-n,this.x=+e[4],this.y=+e[5],this.scaleX=t,this.scaleY=a,this.originX=0,this.originY=0}},r.prototype.decomposeTransform=function(){if(this.transform){var e=this.parent,t=this.transform;e&&e.transform&&(oa(Ai,e.invTransform,t),t=Ai);var a=this.originX,n=this.originY;(a||n)&&(av[4]=a,av[5]=n,oa(Ai,t,av),Ai[4]-=a,Ai[5]-=n,t=Ai),this.setLocalTransform(t)}},r.prototype.getGlobalScale=function(e){var t=this.transform;return e=e||[],t?(e[0]=Math.sqrt(t[0]*t[0]+t[1]*t[1]),e[1]=Math.sqrt(t[2]*t[2]+t[3]*t[3]),t[0]<0&&(e[0]=-e[0]),t[3]<0&&(e[1]=-e[1]),e):(e[0]=1,e[1]=1,e)},r.prototype.transformCoordToLocal=function(e,t){var a=[e,t],n=this.invTransform;return n&&ce(a,a,n),a},r.prototype.transformCoordToGlobal=function(e,t){var a=[e,t],n=this.transform;return n&&ce(a,a,n),a},r.prototype.getLineScale=function(){var e=this.transform;return e&&nv(e[0]-1)>1e-10&&nv(e[3]-1)>1e-10?Math.sqrt(nv(e[0]*e[3]-e[2]*e[1])):1},r.prototype.copyTransform=function(e){zb(this,e)},r.getLocalTransform=function(e,t){t=t||[];var a=e.originX||0,n=e.originY||0,i=e.scaleX,o=e.scaleY,s=e.anchorX,l=e.anchorY,u=e.rotation||0,f=e.x,h=e.y,v=e.skewX?Math.tan(e.skewX):0,c=e.skewY?Math.tan(-e.skewY):0;if(a||n||s||l){var p=a+s,d=n+l;t[4]=-p*i-v*d*o,t[5]=-d*o-c*p*i}else t[4]=t[5]=0;return t[0]=i,t[3]=o,t[1]=c*i,t[2]=v*o,u&&pi(t,t,u),t[4]+=a+f,t[5]+=n+h,t},r.initDefaultProps=function(){var e=r.prototype;e.scaleX=e.scaleY=e.globalScaleRatio=1,e.x=e.y=e.originX=e.originY=e.skewX=e.skewY=e.rotation=e.anchorX=e.anchorY=0}(),r}(),Ur=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function zb(r,e){for(var t=0;t=0?parseFloat(r)/100*e:parseFloat(r):r}function hf(r,e,t){var a=e.position||"inside",n=e.distance!=null?e.distance:5,i=t.height,o=t.width,s=i/2,l=t.x,u=t.y,f="left",h="top";if(a instanceof Array)l+=br(a[0],t.width),u+=br(a[1],t.height),f=null,h=null;else switch(a){case"left":l-=n,u+=s,f="right",h="middle";break;case"right":l+=n+o,u+=s,h="middle";break;case"top":l+=o/2,u-=n,f="center",h="bottom";break;case"bottom":l+=o/2,u+=i+n,f="center";break;case"inside":l+=o/2,u+=s,f="center",h="middle";break;case"insideLeft":l+=n,u+=s,h="middle";break;case"insideRight":l+=o-n,u+=s,f="right",h="middle";break;case"insideTop":l+=o/2,u+=n,f="center";break;case"insideBottom":l+=o/2,u+=i-n,f="center",h="bottom";break;case"insideTopLeft":l+=n,u+=n;break;case"insideTopRight":l+=o-n,u+=n,f="right";break;case"insideBottomLeft":l+=n,u+=i-n,h="bottom";break;case"insideBottomRight":l+=o-n,u+=i-n,f="right",h="bottom";break}return r=r||{},r.x=l,r.y=u,r.align=f,r.verticalAlign=h,r}var iv="__zr_normal__",ov=Ur.concat(["ignore"]),AP=Hr(Ur,function(r,e){return r[e]=!0,r},{ignore:!1}),Ti={},TP=new ft(0,0,0,0),fg=function(){function r(e){this.id=hb(),this.animators=[],this.currentStates=[],this.states={},this._init(e)}return r.prototype._init=function(e){this.attr(e)},r.prototype.drift=function(e,t,a){switch(this.draggable){case"horizontal":t=0;break;case"vertical":e=0;break}var n=this.transform;n||(n=this.transform=[1,0,0,1,0,0]),n[4]+=e,n[5]+=t,this.decomposeTransform(),this.markRedraw()},r.prototype.beforeUpdate=function(){},r.prototype.afterUpdate=function(){},r.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},r.prototype.updateInnerText=function(e){var t=this._textContent;if(t&&(!t.ignore||e)){this.textConfig||(this.textConfig={});var a=this.textConfig,n=a.local,i=t.innerTransformable,o=void 0,s=void 0,l=!1;i.parent=n?this:null;var u=!1;if(i.copyTransform(t),a.position!=null){var f=TP;a.layoutRect?f.copy(a.layoutRect):f.copy(this.getBoundingRect()),n||f.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(Ti,a,f):hf(Ti,a,f),i.x=Ti.x,i.y=Ti.y,o=Ti.align,s=Ti.verticalAlign;var h=a.origin;if(h&&a.rotation!=null){var v=void 0,c=void 0;h==="center"?(v=f.width*.5,c=f.height*.5):(v=br(h[0],f.width),c=br(h[1],f.height)),u=!0,i.originX=-i.x+v+(n?0:f.x),i.originY=-i.y+c+(n?0:f.y)}}a.rotation!=null&&(i.rotation=a.rotation);var p=a.offset;p&&(i.x+=p[0],i.y+=p[1],u||(i.originX=-p[0],i.originY=-p[1]));var d=a.inside==null?typeof a.position=="string"&&a.position.indexOf("inside")>=0:a.inside,g=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),y=void 0,m=void 0,_=void 0;d&&this.canBeInsideText()?(y=a.insideFill,m=a.insideStroke,(y==null||y==="auto")&&(y=this.getInsideTextFill()),(m==null||m==="auto")&&(m=this.getInsideTextStroke(y),_=!0)):(y=a.outsideFill,m=a.outsideStroke,(y==null||y==="auto")&&(y=this.getOutsideFill()),(m==null||m==="auto")&&(m=this.getOutsideStroke(y),_=!0)),y=y||"#000",(y!==g.fill||m!==g.stroke||_!==g.autoStroke||o!==g.align||s!==g.verticalAlign)&&(l=!0,g.fill=y,g.stroke=m,g.autoStroke=_,g.align=o,g.verticalAlign=s,t.setDefaultTextStyle(g)),t.__dirty|=We,l&&t.dirtyStyle(!0)}},r.prototype.canBeInsideText=function(){return!0},r.prototype.getInsideTextFill=function(){return"#fff"},r.prototype.getInsideTextStroke=function(e){return"#000"},r.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?Ep:Rp},r.prototype.getOutsideStroke=function(e){var t=this.__zr&&this.__zr.getBackgroundColor(),a=typeof t=="string"&&Ue(t);a||(a=[255,255,255,1]);for(var n=a[3],i=this.__zr.isDarkMode(),o=0;o<3;o++)a[o]=a[o]*n+(i?0:255)*(1-n);return a[3]=1,sa(a,"rgba")},r.prototype.traverse=function(e,t){},r.prototype.attrKV=function(e,t){e==="textConfig"?this.setTextConfig(t):e==="textContent"?this.setTextContent(t):e==="clipPath"?this.setClipPath(t):e==="extra"?(this.extra=this.extra||{},B(this.extra,t)):this[e]=t},r.prototype.hide=function(){this.ignore=!0,this.markRedraw()},r.prototype.show=function(){this.ignore=!1,this.markRedraw()},r.prototype.attr=function(e,t){if(typeof e=="string")this.attrKV(e,t);else if(tt(e))for(var a=e,n=mt(a),i=0;i0},r.prototype.getState=function(e){return this.states[e]},r.prototype.ensureState=function(e){var t=this.states;return t[e]||(t[e]={}),t[e]},r.prototype.clearStates=function(e){this.useState(iv,!1,e)},r.prototype.useState=function(e,t,a,n){var i=e===iv,o=this.hasState();if(!(!o&&i)){var s=this.currentStates,l=this.stateTransition;if(!(vt(s,e)>=0&&(t||s.length===1))){var u;if(this.stateProxy&&!i&&(u=this.stateProxy(e)),u||(u=this.states&&this.states[e]),!u&&!i){tg("State "+e+" not exists.");return}i||this.saveCurrentToNormalState(u);var f=!!(u&&u.hoverLayer||n);f&&this._toggleHoverLayerFlag(!0),this._applyStateObj(e,u,this._normalState,t,!a&&!this.__inHover&&l&&l.duration>0,l);var h=this._textContent,v=this._textGuide;return h&&h.useState(e,t,a,f),v&&v.useState(e,t,a,f),i?(this.currentStates=[],this._normalState={}):t?this.currentStates.push(e):this.currentStates=[e],this._updateAnimationTargets(),this.markRedraw(),!f&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~We),u}}},r.prototype.useStates=function(e,t,a){if(!e.length)this.clearStates();else{var n=[],i=this.currentStates,o=e.length,s=o===i.length;if(s){for(var l=0;l0,p);var d=this._textContent,g=this._textGuide;d&&d.useStates(e,t,v),g&&g.useStates(e,t,v),this._updateAnimationTargets(),this.currentStates=e.slice(),this.markRedraw(),!v&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~We)}},r.prototype._updateAnimationTargets=function(){for(var e=0;e=0){var a=this.currentStates.slice();a.splice(t,1),this.useStates(a)}},r.prototype.replaceState=function(e,t,a){var n=this.currentStates.slice(),i=vt(n,e),o=vt(n,t)>=0;i>=0?o?n.splice(i,1):n[i]=t:a&&!o&&n.push(t),this.useStates(n)},r.prototype.toggleState=function(e,t){t?this.useState(e,!0):this.removeState(e)},r.prototype._mergeStates=function(e){for(var t={},a,n=0;n=0&&i.splice(o,1)}),this.animators.push(e),a&&a.animation.addAnimator(e),a&&a.wakeUp()},r.prototype.updateDuringAnimation=function(e){this.markRedraw()},r.prototype.stopAnimation=function(e,t){for(var a=this.animators,n=a.length,i=[],o=0;o0&&t.during&&i[0].during(function(p,d){t.during(d)});for(var v=0;v0||n.force&&!o.length){var A=void 0,T=void 0,D=void 0;if(s){T={},v&&(A={});for(var S=0;S<_;S++){var y=d[S];T[y]=t[y],v?A[y]=a[y]:t[y]=a[y]}}else if(v){D={};for(var S=0;S<_;S++){var y=d[S];D[y]=Ss(t[y]),DP(t,a,y)}}var w=new ug(t,!1,!1,h?Pt(p,function(I){return I.targetName===e}):null);w.targetName=e,n.scope&&(w.scope=n.scope),v&&A&&w.whenWithKeys(0,A,d),D&&w.whenWithKeys(0,D,d),w.whenWithKeys(u??500,s?T:a,d).delay(f||0),r.addAnimator(w,e),o.push(w)}}const Fb=fg;var Hb=function(r){k(e,r);function e(t){var a=r.call(this)||this;return a.isGroup=!0,a._children=[],a.attr(t),a}return e.prototype.childrenRef=function(){return this._children},e.prototype.children=function(){return this._children.slice()},e.prototype.childAt=function(t){return this._children[t]},e.prototype.childOfName=function(t){for(var a=this._children,n=0;n=0&&(n.splice(i,0,t),this._doAdd(t))}return this},e.prototype.replace=function(t,a){var n=vt(this._children,t);return n>=0&&this.replaceAt(a,n),this},e.prototype.replaceAt=function(t,a){var n=this._children,i=n[a];if(t&&t!==this&&t.parent!==this&&t!==i){n[a]=t,i.parent=null;var o=this.__zr;o&&i.removeSelfFromZr(o),this._doAdd(t)}return this},e.prototype._doAdd=function(t){t.parent&&t.parent.remove(t),t.parent=this;var a=this.__zr;a&&a!==t.__zr&&t.addSelfToZr(a),a&&a.refresh()},e.prototype.remove=function(t){var a=this.__zr,n=this._children,i=vt(n,t);return i<0?this:(n.splice(i,1),t.parent=null,a&&t.removeSelfFromZr(a),a&&a.refresh(),this)},e.prototype.removeAll=function(){for(var t=this._children,a=this.__zr,n=0;n0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},r.prototype.setSleepAfterStill=function(e){this._sleepAfterStill=e},r.prototype.wakeUp=function(){this.animation.start(),this._stillFrameAccum=0},r.prototype.refreshHover=function(){this._needsRefreshHover=!0},r.prototype.refreshHoverImmediately=function(){this._needsRefreshHover=!1,this.painter.refreshHover&&this.painter.getType()==="canvas"&&this.painter.refreshHover()},r.prototype.resize=function(e){e=e||{},this.painter.resize(e.width,e.height),this.handler.resize()},r.prototype.clearAnimation=function(){this.animation.clear()},r.prototype.getWidth=function(){return this.painter.getWidth()},r.prototype.getHeight=function(){return this.painter.getHeight()},r.prototype.setCursorStyle=function(e){this.handler.setCursorStyle(e)},r.prototype.findHover=function(e,t){return this.handler.findHover(e,t)},r.prototype.on=function(e,t,a){return this.handler.on(e,t,a),this},r.prototype.off=function(e,t){this.handler.off(e,t)},r.prototype.trigger=function(e,t){this.handler.trigger(e,t)},r.prototype.clear=function(){for(var e=this.storage.getRoots(),t=0;t0){if(r<=n)return o;if(r>=i)return s}else{if(r>=n)return o;if(r<=i)return s}else{if(r===n)return o;if(r===i)return s}return(r-n)/l*u+o}function H(r,e){switch(r){case"center":case"middle":r="50%";break;case"left":case"top":r="0%";break;case"right":case"bottom":r="100%";break}return U(r)?kP(r).match(/%$/)?parseFloat(r)/100*e:parseFloat(r):r==null?NaN:+r}function Yt(r,e,t){return e==null&&(e=10),e=Math.min(Math.max(0,e),Ub),r=(+r).toFixed(e),t?r:+r}function or(r){return r.sort(function(e,t){return e-t}),r}function Br(r){if(r=+r,isNaN(r))return 0;if(r>1e-14){for(var e=1,t=0;t<15;t++,e*=10)if(Math.round(r*e)/e===r)return t}return OP(r)}function OP(r){var e=r.toString().toLowerCase(),t=e.indexOf("e"),a=t>0?+e.slice(t+1):0,n=t>0?t:e.length,i=e.indexOf("."),o=i<0?0:n-1-i;return Math.max(0,o-a)}function $b(r,e){var t=Math.log,a=Math.LN10,n=Math.floor(t(r[1]-r[0])/a),i=Math.round(t(Math.abs(e[1]-e[0]))/a),o=Math.min(Math.max(-n+i,0),20);return isFinite(o)?o:20}function NP(r,e){var t=Hr(r,function(c,p){return c+(isNaN(p)?0:p)},0);if(t===0)return[];for(var a=Math.pow(10,e),n=G(r,function(c){return(isNaN(c)?0:c)/t*a*100}),i=a*100,o=G(n,function(c){return Math.floor(c)}),s=Hr(o,function(c,p){return c+p},0),l=G(n,function(c,p){return c-o[p]});su&&(u=l[h],f=h);++o[f],l[f]=0,++s}return G(o,function(c){return c/a})}function BP(r,e){var t=Math.max(Br(r),Br(e)),a=r+e;return t>Ub?a:Yt(a,t)}var Nm=9007199254740991;function Yb(r){var e=Math.PI*2;return(r%e+e)%e}function vf(r){return r>-Om&&r=10&&e++,e}function Xb(r,e){var t=hg(r),a=Math.pow(10,t),n=r/a,i;return e?n<1.5?i=1:n<2.5?i=2:n<4?i=3:n<7?i=5:i=10:n<1?i=1:n<2?i=2:n<3?i=3:n<5?i=5:i=10,r=i*a,t>=-20?+r.toFixed(t<0?-t:0):r}function uv(r,e){var t=(r.length-1)*e+1,a=Math.floor(t),n=+r[a-1],i=t-a;return i?n+i*(r[a]-n):n}function Bm(r){r.sort(function(l,u){return s(l,u,0)?-1:1});for(var e=-1/0,t=1,a=0;a=0||i&&vt(i,l)<0)){var u=a.getShallow(l,e);u!=null&&(o[r[s][0]]=u)}}return o}}var uR=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],fR=li(uR),hR=function(){function r(){}return r.prototype.getAreaStyle=function(e,t){return fR(this,e,t)},r}(),Op=new ul(50);function vR(r){if(typeof r=="string"){var e=Op.get(r);return e&&e.image}else return r}function dg(r,e,t,a,n){if(r)if(typeof r=="string"){if(e&&e.__zrImageSrc===r||!t)return e;var i=Op.get(r),o={hostEl:t,cb:a,cbPayload:n};return i?(e=i.image,!oh(e)&&i.pending.push(o)):(e=qa.loadImage(r,Fm,Fm),e.__zrImageSrc=r,Op.put(r,e.__cachedImgObj={image:e,pending:[o]})),e}else return r;else return e}function Fm(){var r=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var e=0;e=o;l++)s-=o;var u=$e(t,e);return u>s&&(t="",u=0),s=r-u,n.ellipsis=t,n.ellipsisWidth=u,n.contentWidth=s,n.containerWidth=r,n}function oA(r,e){var t=e.containerWidth,a=e.font,n=e.contentWidth;if(!t)return"";var i=$e(r,a);if(i<=t)return r;for(var o=0;;o++){if(i<=n||o>=e.maxIterations){r+=e.ellipsis;break}var s=o===0?pR(r,n,e.ascCharWidth,e.cnCharWidth):i>0?Math.floor(r.length*n/i):0;r=r.substr(0,s),i=$e(r,a)}return r===""&&(r=e.placeholder),r}function pR(r,e,t,a){for(var n=0,i=0,o=r.length;ic&&u){var p=Math.floor(c/s);h=h.slice(0,p)}if(r&&i&&f!=null)for(var d=iA(f,n,e.ellipsis,{minChar:e.truncateMinChar,placeholder:e.placeholder}),g=0;gs&&hv(t,r.substring(s,u),e,o),hv(t,l[2],e,o,l[1]),s=fv.lastIndex}sn){w>0?(m.tokens=m.tokens.slice(0,w),g(m,S,_),t.lines=t.lines.slice(0,y+1)):t.lines=t.lines.slice(0,y);break t}var I=b.width,L=I==null||I==="auto";if(typeof I=="string"&&I.charAt(I.length-1)==="%")x.percentWidth=I,f.push(x),x.contentWidth=$e(x.text,D);else{if(L){var P=b.backgroundColor,R=P&&P.image;R&&(R=vR(R),oh(R)&&(x.width=Math.max(x.width,R.width*M/R.height)))}var E=p&&a!=null?a-S:null;E!=null&&E0&&p+a.accumWidth>a.width&&(f=e.split(` +`),u=!0),a.accumWidth=p}else{var d=sA(e,l,a.width,a.breakAll,a.accumWidth);a.accumWidth=d.accumWidth+c,h=d.linesWidths,f=d.lines}}else f=e.split(` +`);for(var g=0;g=33&&e<=383}var SR=Hr(",&?/;] ".split(""),function(r,e){return r[e]=!0,r},{});function xR(r){return _R(r)?!!SR[r]:!0}function sA(r,e,t,a,n){for(var i=[],o=[],s="",l="",u=0,f=0,h=0;ht:n+f+c>t){f?(s||l)&&(p?(s||(s=l,l="",u=0,f=u),i.push(s),o.push(f-u),l+=v,u+=c,s="",f=u):(l&&(s+=l,l="",u=0),i.push(s),o.push(f),s=v,f=c)):p?(i.push(l),o.push(u),l=v,u=c):(i.push(v),o.push(c));continue}f+=c,p?(l+=v,u+=c):(l&&(s+=l,l="",u=0),s+=v)}return!i.length&&!s&&(s=r,l="",u=0),l&&(s+=l),s&&(i.push(s),o.push(f)),i.length===1&&(f+=n),{accumWidth:f,lines:i,linesWidths:o}}var Np="__zr_style_"+Math.round(Math.random()*10),Jn={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},sh={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};Jn[Np]=!0;var Wm=["z","z2","invisible"],wR=["invisible"],bR=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype._init=function(t){for(var a=mt(t),n=0;n1e-4){s[0]=r-t,s[1]=e-a,l[0]=r+t,l[1]=e+a;return}if(Hl[0]=dv(n)*t+r,Hl[1]=pv(n)*a+e,Wl[0]=dv(i)*t+r,Wl[1]=pv(i)*a+e,u(s,Hl,Wl),f(l,Hl,Wl),n=n%pn,n<0&&(n=n+pn),i=i%pn,i<0&&(i=i+pn),n>i&&!o?i+=pn:nn&&(Ul[0]=dv(c)*t+r,Ul[1]=pv(c)*a+e,u(s,Ul,s),f(l,Ul,l))}var Et={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},dn=[],gn=[],Dr=[],wa=[],Mr=[],Ir=[],gv=Math.min,yv=Math.max,yn=Math.cos,mn=Math.sin,Qr=Math.abs,Bp=Math.PI,La=Bp*2,mv=typeof Float32Array<"u",No=[];function _v(r){var e=Math.round(r/Bp*1e8)/1e8;return e%2*Bp}function lA(r,e){var t=_v(r[0]);t<0&&(t+=La);var a=t-r[0],n=r[1];n+=a,!e&&n-t>=La?n=t+La:e&&t-n>=La?n=t-La:!e&&t>n?n=t+(La-_v(t-n)):e&&t0&&(this._ux=Qr(a/ff/e)||0,this._uy=Qr(a/ff/t)||0)},r.prototype.setDPR=function(e){this.dpr=e},r.prototype.setContext=function(e){this._ctx=e},r.prototype.getContext=function(){return this._ctx},r.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},r.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},r.prototype.moveTo=function(e,t){return this._drawPendingPt(),this.addData(Et.M,e,t),this._ctx&&this._ctx.moveTo(e,t),this._x0=e,this._y0=t,this._xi=e,this._yi=t,this},r.prototype.lineTo=function(e,t){var a=Qr(e-this._xi),n=Qr(t-this._yi),i=a>this._ux||n>this._uy;if(this.addData(Et.L,e,t),this._ctx&&i&&this._ctx.lineTo(e,t),i)this._xi=e,this._yi=t,this._pendingPtDist=0;else{var o=a*a+n*n;o>this._pendingPtDist&&(this._pendingPtX=e,this._pendingPtY=t,this._pendingPtDist=o)}return this},r.prototype.bezierCurveTo=function(e,t,a,n,i,o){return this._drawPendingPt(),this.addData(Et.C,e,t,a,n,i,o),this._ctx&&this._ctx.bezierCurveTo(e,t,a,n,i,o),this._xi=i,this._yi=o,this},r.prototype.quadraticCurveTo=function(e,t,a,n){return this._drawPendingPt(),this.addData(Et.Q,e,t,a,n),this._ctx&&this._ctx.quadraticCurveTo(e,t,a,n),this._xi=a,this._yi=n,this},r.prototype.arc=function(e,t,a,n,i,o){this._drawPendingPt(),No[0]=n,No[1]=i,lA(No,o),n=No[0],i=No[1];var s=i-n;return this.addData(Et.A,e,t,a,a,n,s,0,o?0:1),this._ctx&&this._ctx.arc(e,t,a,n,i,o),this._xi=yn(i)*a+e,this._yi=mn(i)*a+t,this},r.prototype.arcTo=function(e,t,a,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(e,t,a,n,i),this},r.prototype.rect=function(e,t,a,n){return this._drawPendingPt(),this._ctx&&this._ctx.rect(e,t,a,n),this.addData(Et.R,e,t,a,n),this},r.prototype.closePath=function(){this._drawPendingPt(),this.addData(Et.Z);var e=this._ctx,t=this._x0,a=this._y0;return e&&e.closePath(),this._xi=t,this._yi=a,this},r.prototype.fill=function(e){e&&e.fill(),this.toStatic()},r.prototype.stroke=function(e){e&&e.stroke(),this.toStatic()},r.prototype.len=function(){return this._len},r.prototype.setData=function(e){var t=e.length;!(this.data&&this.data.length===t)&&mv&&(this.data=new Float32Array(t));for(var a=0;af.length&&(this._expandData(),f=this.data);for(var h=0;h0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},r.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var e=[],t=0;t11&&(this.data=new Float32Array(e)))}},r.prototype.getBoundingRect=function(){Dr[0]=Dr[1]=Mr[0]=Mr[1]=Number.MAX_VALUE,wa[0]=wa[1]=Ir[0]=Ir[1]=-Number.MAX_VALUE;var e=this.data,t=0,a=0,n=0,i=0,o;for(o=0;oa||Qr(_)>n||v===t-1)&&(d=Math.sqrt(m*m+_*_),i=g,o=y);break}case Et.C:{var S=e[v++],w=e[v++],g=e[v++],y=e[v++],x=e[v++],b=e[v++];d=WL(i,o,S,w,g,y,x,b,10),i=x,o=b;break}case Et.Q:{var S=e[v++],w=e[v++],g=e[v++],y=e[v++];d=$L(i,o,S,w,g,y,10),i=g,o=y;break}case Et.A:var A=e[v++],T=e[v++],D=e[v++],M=e[v++],I=e[v++],L=e[v++],P=L+I;v+=1,e[v++],p&&(s=yn(I)*D+A,l=mn(I)*M+T),d=yv(D,M)*gv(La,Math.abs(L)),i=yn(P)*D+A,o=mn(P)*M+T;break;case Et.R:{s=i=e[v++],l=o=e[v++];var R=e[v++],E=e[v++];d=R*2+E*2;break}case Et.Z:{var m=s-i,_=l-o;d=Math.sqrt(m*m+_*_),i=s,o=l;break}}d>=0&&(u[h++]=d,f+=d)}return this._pathLen=f,f},r.prototype.rebuildPath=function(e,t){var a=this.data,n=this._ux,i=this._uy,o=this._len,s,l,u,f,h,v,c=t<1,p,d,g=0,y=0,m,_=0,S,w;if(c&&(this._pathSegLen||this._calculateLength(),p=this._pathSegLen,d=this._pathLen,m=t*d,!m))return;t:for(var x=0;x0&&(e.lineTo(S,w),_=0),b){case Et.M:s=u=a[x++],l=f=a[x++],e.moveTo(u,f);break;case Et.L:{h=a[x++],v=a[x++];var T=Qr(h-u),D=Qr(v-f);if(T>n||D>i){if(c){var M=p[y++];if(g+M>m){var I=(m-g)/M;e.lineTo(u*(1-I)+h*I,f*(1-I)+v*I);break t}g+=M}e.lineTo(h,v),u=h,f=v,_=0}else{var L=T*T+D*D;L>_&&(S=h,w=v,_=L)}break}case Et.C:{var P=a[x++],R=a[x++],E=a[x++],N=a[x++],O=a[x++],V=a[x++];if(c){var M=p[y++];if(g+M>m){var I=(m-g)/M;Ka(u,P,E,O,I,dn),Ka(f,R,N,V,I,gn),e.bezierCurveTo(dn[1],gn[1],dn[2],gn[2],dn[3],gn[3]);break t}g+=M}e.bezierCurveTo(P,R,E,N,O,V),u=O,f=V;break}case Et.Q:{var P=a[x++],R=a[x++],E=a[x++],N=a[x++];if(c){var M=p[y++];if(g+M>m){var I=(m-g)/M;Ns(u,P,E,I,dn),Ns(f,R,N,I,gn),e.quadraticCurveTo(dn[1],gn[1],dn[2],gn[2]);break t}g+=M}e.quadraticCurveTo(P,R,E,N),u=E,f=N;break}case Et.A:var F=a[x++],W=a[x++],X=a[x++],Q=a[x++],j=a[x++],gt=a[x++],Mt=a[x++],pt=!a[x++],rt=X>Q?X:Q,yt=Qr(X-Q)>.001,ht=j+gt,Z=!1;if(c){var M=p[y++];g+M>m&&(ht=j+gt*(m-g)/M,Z=!0),g+=M}if(yt&&e.ellipse?e.ellipse(F,W,X,Q,Mt,j,ht,pt):e.arc(F,W,rt,j,ht,pt),Z)break t;A&&(s=yn(j)*X+F,l=mn(j)*Q+W),u=yn(ht)*X+F,f=mn(ht)*Q+W;break;case Et.R:s=u=a[x],l=f=a[x+1],h=a[x++],v=a[x++];var ot=a[x++],Vt=a[x++];if(c){var M=p[y++];if(g+M>m){var St=m-g;e.moveTo(h,v),e.lineTo(h+gv(St,ot),v),St-=ot,St>0&&e.lineTo(h+ot,v+gv(St,Vt)),St-=Vt,St>0&&e.lineTo(h+yv(ot-St,0),v+Vt),St-=ot,St>0&&e.lineTo(h,v+yv(Vt-St,0));break t}g+=M}e.rect(h,v,ot,Vt);break;case Et.Z:if(c){var M=p[y++];if(g+M>m){var I=(m-g)/M;e.lineTo(u*(1-I)+s*I,f*(1-I)+l*I);break t}g+=M}e.closePath(),u=s,f=l}}},r.prototype.clone=function(){var e=new r,t=this.data;return e.data=t.slice?t.slice():Array.prototype.slice.call(t),e._len=this._len,e},r.CMD=Et,r.initDefaultProps=function(){var e=r.prototype;e._saveData=!0,e._ux=0,e._uy=0,e._pendingPtDist=0,e._version=0}(),r}();const Yr=MR;function Ra(r,e,t,a,n,i,o){if(n===0)return!1;var s=n,l=0,u=r;if(o>e+s&&o>a+s||or+s&&i>t+s||ie+h&&f>a+h&&f>i+h&&f>s+h||fr+h&&u>t+h&&u>n+h&&u>o+h||ue+u&&l>a+u&&l>i+u||lr+u&&s>t+u&&s>n+u||st||f+un&&(n+=Bo);var v=Math.atan2(l,s);return v<0&&(v+=Bo),v>=a&&v<=n||v+Bo>=a&&v+Bo<=n}function ea(r,e,t,a,n,i){if(i>e&&i>a||in?s:0}var ba=Yr.CMD,_n=Math.PI*2,PR=1e-4;function RR(r,e){return Math.abs(r-e)e&&u>a&&u>i&&u>s||u1&&ER(),c=ne(e,a,i,s,tr[0]),v>1&&(p=ne(e,a,i,s,tr[1]))),v===2?ge&&s>a&&s>i||s=0&&u<=1){for(var f=0,h=ue(e,a,i,u),v=0;vt||s<-t)return 0;var l=Math.sqrt(t*t-s*s);Ce[0]=-l,Ce[1]=l;var u=Math.abs(a-n);if(u<1e-4)return 0;if(u>=_n-1e-4){a=0,n=_n;var f=i?1:-1;return o>=Ce[0]+r&&o<=Ce[1]+r?f:0}if(a>n){var h=a;a=n,n=h}a<0&&(a+=_n,n+=_n);for(var v=0,c=0;c<2;c++){var p=Ce[c];if(p+r>o){var d=Math.atan2(s,p),f=i?1:-1;d<0&&(d=_n+d),(d>=a&&d<=n||d+_n>=a&&d+_n<=n)&&(d>Math.PI/2&&d1&&(t||(s+=ea(l,u,f,h,a,n))),g&&(l=i[p],u=i[p+1],f=l,h=u),d){case ba.M:f=i[p++],h=i[p++],l=f,u=h;break;case ba.L:if(t){if(Ra(l,u,i[p],i[p+1],e,a,n))return!0}else s+=ea(l,u,i[p],i[p+1],a,n)||0;l=i[p++],u=i[p++];break;case ba.C:if(t){if(IR(l,u,i[p++],i[p++],i[p++],i[p++],i[p],i[p+1],e,a,n))return!0}else s+=kR(l,u,i[p++],i[p++],i[p++],i[p++],i[p],i[p+1],a,n)||0;l=i[p++],u=i[p++];break;case ba.Q:if(t){if(uA(l,u,i[p++],i[p++],i[p],i[p+1],e,a,n))return!0}else s+=OR(l,u,i[p++],i[p++],i[p],i[p+1],a,n)||0;l=i[p++],u=i[p++];break;case ba.A:var y=i[p++],m=i[p++],_=i[p++],S=i[p++],w=i[p++],x=i[p++];p+=1;var b=!!(1-i[p++]);v=Math.cos(w)*_+y,c=Math.sin(w)*S+m,g?(f=v,h=c):s+=ea(l,u,v,c,a,n);var A=(a-y)*S/_+y;if(t){if(LR(y,m,S,w,w+x,b,e,A,n))return!0}else s+=NR(y,m,S,w,w+x,b,A,n);l=Math.cos(w+x)*_+y,u=Math.sin(w+x)*S+m;break;case ba.R:f=l=i[p++],h=u=i[p++];var T=i[p++],D=i[p++];if(v=f+T,c=h+D,t){if(Ra(f,h,v,h,e,a,n)||Ra(v,h,v,c,e,a,n)||Ra(v,c,f,c,e,a,n)||Ra(f,c,f,h,e,a,n))return!0}else s+=ea(v,h,v,c,a,n),s+=ea(f,c,f,h,a,n);break;case ba.Z:if(t){if(Ra(l,u,f,h,e,a,n))return!0}else s+=ea(l,u,f,h,a,n);l=f,u=h;break}}return!t&&!RR(u,h)&&(s+=ea(l,u,f,h,a,n)||0),s!==0}function BR(r,e,t){return fA(r,0,!1,e,t)}function VR(r,e,t,a){return fA(r,e,!0,t,a)}var cf=J({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},Jn),zR={style:J({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},sh.style)},Sv=Ur.concat(["invisible","culling","z","z2","zlevel","parent"]),GR=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.update=function(){var t=this;r.prototype.update.call(this);var a=this.style;if(a.decal){var n=this._decalEl=this._decalEl||new e;n.buildPath===e.prototype.buildPath&&(n.buildPath=function(l){t.buildPath(l,t.shape)}),n.silent=!0;var i=n.style;for(var o in a)i[o]!==a[o]&&(i[o]=a[o]);i.fill=a.fill?a.decal:null,i.decal=null,i.shadowColor=null,a.strokeFirst&&(i.stroke=null);for(var s=0;s.5?Rp:a>.2?wP:Ep}else if(t)return Ep}return Rp},e.prototype.getInsideTextStroke=function(t){var a=this.style.fill;if(U(a)){var n=this.__zr,i=!!(n&&n.isDarkMode()),o=lf(t,0)0))},e.prototype.hasFill=function(){var t=this.style,a=t.fill;return a!=null&&a!=="none"},e.prototype.getBoundingRect=function(){var t=this._rect,a=this.style,n=!t;if(n){var i=!1;this.path||(i=!0,this.createPathProxy());var o=this.path;(i||this.__dirty&Wi)&&(o.beginPath(),this.buildPath(o,this.shape,!1),this.pathUpdated()),t=o.getBoundingRect()}if(this._rect=t,this.hasStroke()&&this.path&&this.path.len()>0){var s=this._rectStroke||(this._rectStroke=t.clone());if(this.__dirty||n){s.copy(t);var l=a.strokeNoScale?this.getLineScale():1,u=a.lineWidth;if(!this.hasFill()){var f=this.strokeContainThreshold;u=Math.max(u,f??4)}l>1e-10&&(s.width+=u/l,s.height+=u/l,s.x-=u/l/2,s.y-=u/l/2)}return s}return t},e.prototype.contain=function(t,a){var n=this.transformCoordToLocal(t,a),i=this.getBoundingRect(),o=this.style;if(t=n[0],a=n[1],i.contain(t,a)){var s=this.path;if(this.hasStroke()){var l=o.lineWidth,u=o.strokeNoScale?this.getLineScale():1;if(u>1e-10&&(this.hasFill()||(l=Math.max(l,this.strokeContainThreshold)),VR(s,l/u,t,a)))return!0}if(this.hasFill())return BR(s,t,a)}return!1},e.prototype.dirtyShape=function(){this.__dirty|=Wi,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},e.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},e.prototype.animateShape=function(t){return this.animate("shape",t)},e.prototype.updateDuringAnimation=function(t){t==="style"?this.dirtyStyle():t==="shape"?this.dirtyShape():this.markRedraw()},e.prototype.attrKV=function(t,a){t==="shape"?this.setShape(a):r.prototype.attrKV.call(this,t,a)},e.prototype.setShape=function(t,a){var n=this.shape;return n||(n=this.shape={}),typeof t=="string"?n[t]=a:B(n,t),this.dirtyShape(),this},e.prototype.shapeChanged=function(){return!!(this.__dirty&Wi)},e.prototype.createStyle=function(t){return eh(cf,t)},e.prototype._innerSaveToNormal=function(t){r.prototype._innerSaveToNormal.call(this,t);var a=this._normalState;t.shape&&!a.shape&&(a.shape=B({},this.shape))},e.prototype._applyStateObj=function(t,a,n,i,o,s){r.prototype._applyStateObj.call(this,t,a,n,i,o,s);var l=!(a&&i),u;if(a&&a.shape?o?i?u=a.shape:(u=B({},n.shape),B(u,a.shape)):(u=B({},i?this.shape:n.shape),B(u,a.shape)):l&&(u=n.shape),u)if(o){this.shape=B({},this.shape);for(var f={},h=mt(u),v=0;v0},e.prototype.hasFill=function(){var t=this.style,a=t.fill;return a!=null&&a!=="none"},e.prototype.createStyle=function(t){return eh(FR,t)},e.prototype.setBoundingRect=function(t){this._rect=t},e.prototype.getBoundingRect=function(){var t=this.style;if(!this._rect){var a=t.text;a!=null?a+="":a="";var n=fl(a,t.font,t.textAlign,t.textBaseline);if(n.x+=t.x||0,n.y+=t.y||0,this.hasStroke()){var i=t.lineWidth;n.x-=i/2,n.y-=i/2,n.width+=i,n.height+=i}this._rect=n}return this._rect},e.initDefaultProps=function(){var t=e.prototype;t.dirtyRectTolerance=10}(),e}(ur);hA.prototype.type="tspan";const Gs=hA;var HR=J({x:0,y:0},Jn),WR={style:J({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},sh.style)};function UR(r){return!!(r&&typeof r!="string"&&r.width&&r.height)}var vA=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.createStyle=function(t){return eh(HR,t)},e.prototype._getSize=function(t){var a=this.style,n=a[t];if(n!=null)return n;var i=UR(a.image)?a.image:this.__image;if(!i)return 0;var o=t==="width"?"height":"width",s=a[o];return s==null?i[t]:i[t]/i[o]*s},e.prototype.getWidth=function(){return this._getSize("width")},e.prototype.getHeight=function(){return this._getSize("height")},e.prototype.getAnimationStyleProps=function(){return WR},e.prototype.getBoundingRect=function(){var t=this.style;return this._rect||(this._rect=new ft(t.x||0,t.y||0,this.getWidth(),this.getHeight())),this._rect},e}(ur);vA.prototype.type="image";const ye=vA;function $R(r,e){var t=e.x,a=e.y,n=e.width,i=e.height,o=e.r,s,l,u,f;n<0&&(t=t+n,n=-n),i<0&&(a=a+i,i=-i),typeof o=="number"?s=l=u=f=o:o instanceof Array?o.length===1?s=l=u=f=o[0]:o.length===2?(s=u=o[0],l=f=o[1]):o.length===3?(s=o[0],l=f=o[1],u=o[2]):(s=o[0],l=o[1],u=o[2],f=o[3]):s=l=u=f=0;var h;s+l>n&&(h=s+l,s*=n/h,l*=n/h),u+f>n&&(h=u+f,u*=n/h,f*=n/h),l+u>i&&(h=l+u,l*=i/h,u*=i/h),s+f>i&&(h=s+f,s*=i/h,f*=i/h),r.moveTo(t+s,a),r.lineTo(t+n-l,a),l!==0&&r.arc(t+n-l,a+l,l,-Math.PI/2,0),r.lineTo(t+n,a+i-u),u!==0&&r.arc(t+n-u,a+i-u,u,0,Math.PI/2),r.lineTo(t+f,a+i),f!==0&&r.arc(t+f,a+i-f,f,Math.PI/2,Math.PI),r.lineTo(t,a+s),s!==0&&r.arc(t+s,a+s,s,Math.PI,Math.PI*1.5)}var qi=Math.round;function cA(r,e,t){if(e){var a=e.x1,n=e.x2,i=e.y1,o=e.y2;r.x1=a,r.x2=n,r.y1=i,r.y2=o;var s=t&&t.lineWidth;return s&&(qi(a*2)===qi(n*2)&&(r.x1=r.x2=Un(a,s,!0)),qi(i*2)===qi(o*2)&&(r.y1=r.y2=Un(i,s,!0))),r}}function pA(r,e,t){if(e){var a=e.x,n=e.y,i=e.width,o=e.height;r.x=a,r.y=n,r.width=i,r.height=o;var s=t&&t.lineWidth;return s&&(r.x=Un(a,s,!0),r.y=Un(n,s,!0),r.width=Math.max(Un(a+i,s,!1)-r.x,i===0?0:1),r.height=Math.max(Un(n+o,s,!1)-r.y,o===0?0:1)),r}}function Un(r,e,t){if(!e)return r;var a=qi(r*2);return(a+qi(e))%2===0?a/2:(a+(t?1:-1))/2}var YR=function(){function r(){this.x=0,this.y=0,this.width=0,this.height=0}return r}(),XR={},dA=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.getDefaultShape=function(){return new YR},e.prototype.buildPath=function(t,a){var n,i,o,s;if(this.subPixelOptimize){var l=pA(XR,a,this.style);n=l.x,i=l.y,o=l.width,s=l.height,l.r=a.r,a=l}else n=a.x,i=a.y,o=a.width,s=a.height;a.r?$R(t,a):t.rect(n,i,o,s)},e.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},e}(dt);dA.prototype.type="rect";const xt=dA;var Zm={fill:"#000"},qm=2,ZR={style:J({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},sh.style)},gA=function(r){k(e,r);function e(t){var a=r.call(this)||this;return a.type="text",a._children=[],a._defaultStyle=Zm,a.attr(t),a}return e.prototype.childrenRef=function(){return this._children},e.prototype.update=function(){r.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var t=0;t0,I=t.width!=null&&(t.overflow==="truncate"||t.overflow==="break"||t.overflow==="breakAll"),L=o.calculatedLineHeight,P=0;P=0&&(P=x[L],P.align==="right");)this._placeToken(P,t,A,y,I,"right",_),T-=P.width,I-=P.width,L--;for(M+=(i-(M-g)-(m-I)-T)/2;D<=L;)P=x[D],this._placeToken(P,t,A,y,M+P.width/2,"center",_),M+=P.width,D++;y+=A}},e.prototype._placeToken=function(t,a,n,i,o,s,l){var u=a.rich[t.styleName]||{};u.text=t.text;var f=t.verticalAlign,h=i+n/2;f==="top"?h=i+t.height/2:f==="bottom"&&(h=i+n-t.height/2);var v=!t.isLineHolder&&xv(u);v&&this._renderBackground(u,a,s==="right"?o-t.width:s==="center"?o-t.width/2:o,h-t.height/2,t.width,t.height);var c=!!u.backgroundColor,p=t.textPadding;p&&(o=e0(o,s,p),h-=t.height/2-p[0]-t.innerHeight/2);var d=this._getOrCreateChild(Gs),g=d.createStyle();d.useStyle(g);var y=this._defaultStyle,m=!1,_=0,S=t0("fill"in u?u.fill:"fill"in a?a.fill:(m=!0,y.fill)),w=jm("stroke"in u?u.stroke:"stroke"in a?a.stroke:!c&&!l&&(!y.autoStroke||m)?(_=qm,y.stroke):null),x=u.textShadowBlur>0||a.textShadowBlur>0;g.text=t.text,g.x=o,g.y=h,x&&(g.shadowBlur=u.textShadowBlur||a.textShadowBlur||0,g.shadowColor=u.textShadowColor||a.textShadowColor||"transparent",g.shadowOffsetX=u.textShadowOffsetX||a.textShadowOffsetX||0,g.shadowOffsetY=u.textShadowOffsetY||a.textShadowOffsetY||0),g.textAlign=s,g.textBaseline="middle",g.font=t.font||Za,g.opacity=na(u.opacity,a.opacity,1),Qm(g,u),w&&(g.lineWidth=na(u.lineWidth,a.lineWidth,_),g.lineDash=lt(u.lineDash,a.lineDash),g.lineDashOffset=a.lineDashOffset||0,g.stroke=w),S&&(g.fill=S);var b=t.contentWidth,A=t.contentHeight;d.setBoundingRect(new ft(ls(g.x,b,g.textAlign),Ui(g.y,A,g.textBaseline),b,A))},e.prototype._renderBackground=function(t,a,n,i,o,s){var l=t.backgroundColor,u=t.borderWidth,f=t.borderColor,h=l&&l.image,v=l&&!h,c=t.borderRadius,p=this,d,g;if(v||t.lineHeight||u&&f){d=this._getOrCreateChild(xt),d.useStyle(d.createStyle()),d.style.fill=null;var y=d.shape;y.x=n,y.y=i,y.width=o,y.height=s,y.r=c,d.dirtyShape()}if(v){var m=d.style;m.fill=l||null,m.fillOpacity=lt(t.fillOpacity,1)}else if(h){g=this._getOrCreateChild(ye),g.onload=function(){p.dirtyStyle()};var _=g.style;_.image=l.image,_.x=n,_.y=i,_.width=o,_.height=s}if(u&&f){var m=d.style;m.lineWidth=u,m.stroke=f,m.strokeOpacity=lt(t.strokeOpacity,1),m.lineDash=t.borderDash,m.lineDashOffset=t.borderDashOffset||0,d.strokeContainThreshold=0,d.hasFill()&&d.hasStroke()&&(m.strokeFirst=!0,m.lineWidth*=2)}var S=(d||g).style;S.shadowBlur=t.shadowBlur||0,S.shadowColor=t.shadowColor||"transparent",S.shadowOffsetX=t.shadowOffsetX||0,S.shadowOffsetY=t.shadowOffsetY||0,S.opacity=na(t.opacity,a.opacity,1)},e.makeFont=function(t){var a="";return mA(t)&&(a=[t.fontStyle,t.fontWeight,yA(t.fontSize),t.fontFamily||"sans-serif"].join(" ")),a&&_r(a)||t.textFont||t.font},e}(ur),qR={left:!0,right:1,center:1},KR={top:1,bottom:1,middle:1},Km=["fontStyle","fontWeight","fontSize","fontFamily"];function yA(r){return typeof r=="string"&&(r.indexOf("px")!==-1||r.indexOf("rem")!==-1||r.indexOf("em")!==-1)?r:isNaN(+r)?Qd+"px":r+"px"}function Qm(r,e){for(var t=0;t=0,i=!1;if(r instanceof dt){var o=_A(r),s=n&&o.selectFill||o.normalFill,l=n&&o.selectStroke||o.normalStroke;if(Ci(s)||Ci(l)){a=a||{};var u=a.style||{};u.fill==="inherit"?(i=!0,a=B({},a),u=B({},u),u.fill=s):!Ci(u.fill)&&Ci(s)?(i=!0,a=B({},a),u=B({},u),u.fill=o0(s)):!Ci(u.stroke)&&Ci(l)&&(i||(a=B({},a),u=B({},u)),u.stroke=o0(l)),a.style=u}}if(a&&a.z2==null){i||(a=B({},a));var f=r.z2EmphasisLift;a.z2=r.z2+(f??mo)}return a}function aE(r,e,t){if(t&&t.z2==null){t=B({},t);var a=r.z2SelectLift;t.z2=r.z2+(a??JR)}return t}function nE(r,e,t){var a=vt(r.currentStates,e)>=0,n=r.style.opacity,i=a?null:eE(r,["opacity"],e,{opacity:1});t=t||{};var o=t.style||{};return o.opacity==null&&(t=B({},t),o=B({opacity:a?n:i.opacity*.1},o),t.style=o),t}function wv(r,e){var t=this.states[r];if(this.style){if(r==="emphasis")return rE(this,r,e,t);if(r==="blur")return nE(this,r,t);if(r==="select")return aE(this,r,t)}return t}function ui(r){r.stateProxy=wv;var e=r.getTextContent(),t=r.getTextGuideLine();e&&(e.stateProxy=wv),t&&(t.stateProxy=wv)}function l0(r,e){!CA(r,e)&&!r.__highByOuter&&ya(r,SA)}function u0(r,e){!CA(r,e)&&!r.__highByOuter&&ya(r,xA)}function va(r,e){r.__highByOuter|=1<<(e||0),ya(r,SA)}function ca(r,e){!(r.__highByOuter&=~(1<<(e||0)))&&ya(r,xA)}function bA(r){ya(r,mg)}function _g(r){ya(r,wA)}function AA(r){ya(r,jR)}function TA(r){ya(r,tE)}function CA(r,e){return r.__highDownSilentOnTouch&&e.zrByTouch}function DA(r){var e=r.getModel(),t=[],a=[];e.eachComponent(function(n,i){var o=gg(i),s=n==="series",l=s?r.getViewOfSeriesModel(i):r.getViewOfComponentModel(i);!s&&a.push(l),o.isBlured&&(l.group.traverse(function(u){wA(u)}),s&&t.push(i)),o.isBlured=!1}),C(a,function(n){n&&n.toggleBlurSeries&&n.toggleBlurSeries(t,!1,e)})}function zp(r,e,t,a){var n=a.getModel();t=t||"coordinateSystem";function i(u,f){for(var h=0;h0){var s={dataIndex:o,seriesIndex:t.seriesIndex};i!=null&&(s.dataType=i),e.push(s)}})}),e}function ti(r,e,t){$n(r,!0),ya(r,ui),Fp(r,e,t)}function fE(r){$n(r,!1)}function Wt(r,e,t,a){a?fE(r):ti(r,e,t)}function Fp(r,e,t){var a=nt(r);e!=null?(a.focus=e,a.blurScope=t):a.focus&&(a.focus=null)}var h0=["emphasis","blur","select"],hE={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function de(r,e,t,a){t=t||"itemStyle";for(var n=0;n1&&(o*=bv(p),s*=bv(p));var d=(n===i?-1:1)*bv((o*o*(s*s)-o*o*(c*c)-s*s*(v*v))/(o*o*(c*c)+s*s*(v*v)))||0,g=d*o*c/s,y=d*-s*v/o,m=(r+t)/2+Yl(h)*g-$l(h)*y,_=(e+a)/2+$l(h)*g+Yl(h)*y,S=d0([1,0],[(v-g)/o,(c-y)/s]),w=[(v-g)/o,(c-y)/s],x=[(-1*v-g)/o,(-1*c-y)/s],b=d0(w,x);if(Wp(w,x)<=-1&&(b=Vo),Wp(w,x)>=1&&(b=0),b<0){var A=Math.round(b/Vo*1e6)/1e6;b=Vo*2+A%2*Vo}f.addData(u,m,_,o,s,S,b,h,i)}var yE=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,mE=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function _E(r){var e=new Yr;if(!r)return e;var t=0,a=0,n=t,i=a,o,s=Yr.CMD,l=r.match(yE);if(!l)return e;for(var u=0;uP*P+R*R&&(A=D,T=M),{cx:A,cy:T,x0:-f,y0:-h,x1:A*(n/w-1),y1:T*(n/w-1)}}function CE(r){var e;if(z(r)){var t=r.length;if(!t)return r;t===1?e=[r[0],r[0],0,0]:t===2?e=[r[0],r[0],r[1],r[1]]:t===3?e=r.concat(r[2]):e=r}else e=[r,r,r,r];return e}function DE(r,e){var t,a=us(e.r,0),n=us(e.r0||0,0),i=a>0,o=n>0;if(!(!i&&!o)){if(i||(a=n,n=0),n>a){var s=a;a=n,n=s}var l=e.startAngle,u=e.endAngle;if(!(isNaN(l)||isNaN(u))){var f=e.cx,h=e.cy,v=!!e.clockwise,c=y0(u-l),p=c>Av&&c%Av;if(p>dr&&(c=p),!(a>dr))r.moveTo(f,h);else if(c>Av-dr)r.moveTo(f+a*Mi(l),h+a*Sn(l)),r.arc(f,h,a,l,u,!v),n>dr&&(r.moveTo(f+n*Mi(u),h+n*Sn(u)),r.arc(f,h,n,u,l,v));else{var d=void 0,g=void 0,y=void 0,m=void 0,_=void 0,S=void 0,w=void 0,x=void 0,b=void 0,A=void 0,T=void 0,D=void 0,M=void 0,I=void 0,L=void 0,P=void 0,R=a*Mi(l),E=a*Sn(l),N=n*Mi(u),O=n*Sn(u),V=c>dr;if(V){var F=e.cornerRadius;F&&(t=CE(F),d=t[0],g=t[1],y=t[2],m=t[3]);var W=y0(a-n)/2;if(_=Lr(W,y),S=Lr(W,m),w=Lr(W,d),x=Lr(W,g),T=b=us(_,S),D=A=us(w,x),(b>dr||A>dr)&&(M=a*Mi(u),I=a*Sn(u),L=n*Mi(l),P=n*Sn(l),cdr){var yt=Lr(y,T),ht=Lr(m,T),Z=Xl(L,P,R,E,a,yt,v),ot=Xl(M,I,N,O,a,ht,v);r.moveTo(f+Z.cx+Z.x0,h+Z.cy+Z.y0),T0&&r.arc(f+Z.cx,h+Z.cy,yt,_e(Z.y0,Z.x0),_e(Z.y1,Z.x1),!v),r.arc(f,h,a,_e(Z.cy+Z.y1,Z.cx+Z.x1),_e(ot.cy+ot.y1,ot.cx+ot.x1),!v),ht>0&&r.arc(f+ot.cx,h+ot.cy,ht,_e(ot.y1,ot.x1),_e(ot.y0,ot.x0),!v))}else r.moveTo(f+R,h+E),r.arc(f,h,a,l,u,!v);if(!(n>dr)||!V)r.lineTo(f+N,h+O);else if(D>dr){var yt=Lr(d,D),ht=Lr(g,D),Z=Xl(N,O,M,I,n,-ht,v),ot=Xl(R,E,L,P,n,-yt,v);r.lineTo(f+Z.cx+Z.x0,h+Z.cy+Z.y0),D0&&r.arc(f+Z.cx,h+Z.cy,ht,_e(Z.y0,Z.x0),_e(Z.y1,Z.x1),!v),r.arc(f,h,n,_e(Z.cy+Z.y1,Z.cx+Z.x1),_e(ot.cy+ot.y1,ot.cx+ot.x1),v),yt>0&&r.arc(f+ot.cx,h+ot.cy,yt,_e(ot.y1,ot.x1),_e(ot.y0,ot.x0),!v))}else r.lineTo(f+N,h+O),r.arc(f,h,n,u,l,v)}r.closePath()}}}var ME=function(){function r(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0,this.cornerRadius=0}return r}(),NA=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.getDefaultShape=function(){return new ME},e.prototype.buildPath=function(t,a){DE(t,a)},e.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},e}(dt);NA.prototype.type="sector";const Ve=NA;var IE=function(){function r(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return r}(),BA=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.getDefaultShape=function(){return new IE},e.prototype.buildPath=function(t,a){var n=a.cx,i=a.cy,o=Math.PI*2;t.moveTo(n+a.r,i),t.arc(n,i,a.r,0,o,!1),t.moveTo(n+a.r0,i),t.arc(n,i,a.r0,0,o,!0)},e}(dt);BA.prototype.type="ring";const hh=BA;function LE(r,e,t,a){var n=[],i=[],o=[],s=[],l,u,f,h;if(a){f=[1/0,1/0],h=[-1/0,-1/0];for(var v=0,c=r.length;v=2){if(a){var i=LE(n,a,t,e.smoothConstraint);r.moveTo(n[0][0],n[0][1]);for(var o=n.length,s=0;s<(t?o:o-1);s++){var l=i[s*2],u=i[s*2+1],f=n[(s+1)%o];r.bezierCurveTo(l[0],l[1],u[0],u[1],f[0],f[1])}}else{r.moveTo(n[0][0],n[0][1]);for(var s=1,h=n.length;swn[1]){if(s=!1,i)return s;var f=Math.abs(wn[0]-xn[1]),h=Math.abs(xn[0]-wn[1]);Math.min(f,h)>n.len()&&(f0){var h=f.duration,v=f.delay,c=f.easing,p={duration:h,delay:v||0,easing:c,done:i,force:!!i||!!o,setToFinal:!u,scope:r,during:o};s?e.animateFrom(t,p):e.animateTo(t,p)}else e.stopAnimation(),!s&&e.attr(t),o&&o(1),i&&i()}function Dt(r,e,t,a,n,i){Tg("update",r,e,t,a,n,i)}function zt(r,e,t,a,n,i){Tg("enter",r,e,t,a,n,i)}function to(r){if(!r.__zr)return!0;for(var e=0;eMath.abs(i[1])?i[0]>0?"right":"left":i[1]>0?"bottom":"top"}function S0(r){return!r.isGroup}function KE(r){return r.shape!=null}function pl(r,e,t){if(!r||!e)return;function a(o){var s={};return o.traverse(function(l){S0(l)&&l.anid&&(s[l.anid]=l)}),s}function n(o){var s={x:o.x,y:o.y,rotation:o.rotation};return KE(o)&&(s.shape=B({},o.shape)),s}var i=a(r);e.traverse(function(o){if(S0(o)&&o.anid){var s=i[o.anid];if(s){var l=n(o);o.attr(n(s)),Dt(o,l,t,nt(o).dataIndex)}}})}function KA(r,e){return G(r,function(t){var a=t[0];a=gf(a,e.x),a=yf(a,e.x+e.width);var n=t[1];return n=gf(n,e.y),n=yf(n,e.y+e.height),[a,n]})}function QE(r,e){var t=gf(r.x,e.x),a=yf(r.x+r.width,e.x+e.width),n=gf(r.y,e.y),i=yf(r.y+r.height,e.y+e.height);if(a>=t&&i>=n)return{x:t,y:n,width:a-t,height:i-n}}function dl(r,e,t){var a=B({rectHover:!0},e),n=a.style={strokeNoScale:!0};if(t=t||{x:-1,y:-1,width:2,height:2},r)return r.indexOf("image://")===0?(n.image=r.slice(8),J(n,t),new ye(a)):ch(r.replace("path://",""),a,t,"center")}function fs(r,e,t,a,n){for(var i=0,o=n[n.length-1];i1)return!1;var g=Tv(c,p,f,h)/v;return!(g<0||g>1)}function Tv(r,e,t,a){return r*a-t*e}function JE(r){return r<=1e-6&&r>=-1e-6}function So(r){var e=r.itemTooltipOption,t=r.componentModel,a=r.itemName,n=U(e)?{formatter:e}:e,i=t.mainType,o=t.componentIndex,s={componentType:i,name:a,$vars:["name"]};s[i+"Index"]=o;var l=r.formatterParamsExtra;l&&C(mt(l),function(f){Y(s,f)||(s[f]=l[f],s.$vars.push(f))});var u=nt(r.el);u.componentMainType=i,u.componentIndex=o,u.tooltipConfig={name:a,option:J({content:a,formatterParams:s},n)}}function x0(r,e){var t;r.isGroup&&(t=e(r)),t||r.traverse(e)}function nn(r,e){if(r)if(z(r))for(var t=0;t=0&&s.push(l)}),s}}function on(r,e){return ut(ut({},r,!0),e,!0)}const hk={time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}},vk={time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}};var _f="ZH",Dg="EN",Us=Dg,Xu={},Mg={},nT=At.domSupported?function(){var r=(document.documentElement.lang||navigator.language||navigator.browserLanguage).toUpperCase();return r.indexOf(_f)>-1?_f:Us}():Us;function iT(r,e){r=r.toUpperCase(),Mg[r]=new Nt(e),Xu[r]=e}function ck(r){if(U(r)){var e=Xu[r.toUpperCase()]||{};return r===_f||r===Dg?et(e):ut(et(e),et(Xu[Us]),!1)}else return ut(et(r),et(Xu[Us]),!1)}function Yp(r){return Mg[r]}function pk(){return Mg[Us]}iT(Dg,hk);iT(_f,vk);var Ig=1e3,Lg=Ig*60,Cs=Lg*60,ir=Cs*24,C0=ir*365,hs={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}",none:"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}"},Kl="{yyyy}-{MM}-{dd}",D0={year:"{yyyy}",month:"{yyyy}-{MM}",day:Kl,hour:Kl+" "+hs.hour,minute:Kl+" "+hs.minute,second:Kl+" "+hs.second,millisecond:hs.none},Mv=["year","month","day","hour","minute","second","millisecond"],oT=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function bn(r,e){return r+="","0000".substr(0,e-r.length)+r}function eo(r){switch(r){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return r}}function dk(r){return r===eo(r)}function gk(r){switch(r){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function gh(r,e,t,a){var n=$r(r),i=n[Pg(t)](),o=n[ro(t)]()+1,s=Math.floor((o-1)/3)+1,l=n[yh(t)](),u=n["get"+(t?"UTC":"")+"Day"](),f=n[$s(t)](),h=(f-1)%12+1,v=n[mh(t)](),c=n[_h(t)](),p=n[Sh(t)](),d=a instanceof Nt?a:Yp(a||nT)||pk(),g=d.getModel("time"),y=g.get("month"),m=g.get("monthAbbr"),_=g.get("dayOfWeek"),S=g.get("dayOfWeekAbbr");return(e||"").replace(/{yyyy}/g,i+"").replace(/{yy}/g,i%100+"").replace(/{Q}/g,s+"").replace(/{MMMM}/g,y[o-1]).replace(/{MMM}/g,m[o-1]).replace(/{MM}/g,bn(o,2)).replace(/{M}/g,o+"").replace(/{dd}/g,bn(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,_[u]).replace(/{ee}/g,S[u]).replace(/{e}/g,u+"").replace(/{HH}/g,bn(f,2)).replace(/{H}/g,f+"").replace(/{hh}/g,bn(h+"",2)).replace(/{h}/g,h+"").replace(/{mm}/g,bn(v,2)).replace(/{m}/g,v+"").replace(/{ss}/g,bn(c,2)).replace(/{s}/g,c+"").replace(/{SSS}/g,bn(p,3)).replace(/{S}/g,p+"")}function yk(r,e,t,a,n){var i=null;if(U(t))i=t;else if(K(t))i=t(r.value,e,{level:r.level});else{var o=B({},hs);if(r.level>0)for(var s=0;s=0;--s)if(l[u]){i=l[u];break}i=i||o.none}if(z(i)){var h=r.level==null?0:r.level>=0?r.level:i.length+r.level;h=Math.min(h,i.length-1),i=i[h]}}return gh(new Date(r.value),i,n,a)}function sT(r,e){var t=$r(r),a=t[ro(e)]()+1,n=t[yh(e)](),i=t[$s(e)](),o=t[mh(e)](),s=t[_h(e)](),l=t[Sh(e)](),u=l===0,f=u&&s===0,h=f&&o===0,v=h&&i===0,c=v&&n===1,p=c&&a===1;return p?"year":c?"month":v?"day":h?"hour":f?"minute":u?"second":"millisecond"}function M0(r,e,t){var a=Ct(r)?$r(r):r;switch(e=e||sT(r,t),e){case"year":return a[Pg(t)]();case"half-year":return a[ro(t)]()>=6?1:0;case"quarter":return Math.floor((a[ro(t)]()+1)/4);case"month":return a[ro(t)]();case"day":return a[yh(t)]();case"half-day":return a[$s(t)]()/24;case"hour":return a[$s(t)]();case"minute":return a[mh(t)]();case"second":return a[_h(t)]();case"millisecond":return a[Sh(t)]()}}function Pg(r){return r?"getUTCFullYear":"getFullYear"}function ro(r){return r?"getUTCMonth":"getMonth"}function yh(r){return r?"getUTCDate":"getDate"}function $s(r){return r?"getUTCHours":"getHours"}function mh(r){return r?"getUTCMinutes":"getMinutes"}function _h(r){return r?"getUTCSeconds":"getSeconds"}function Sh(r){return r?"getUTCMilliseconds":"getMilliseconds"}function mk(r){return r?"setUTCFullYear":"setFullYear"}function lT(r){return r?"setUTCMonth":"setMonth"}function uT(r){return r?"setUTCDate":"setDate"}function fT(r){return r?"setUTCHours":"setHours"}function hT(r){return r?"setUTCMinutes":"setMinutes"}function vT(r){return r?"setUTCSeconds":"setSeconds"}function cT(r){return r?"setUTCMilliseconds":"setMilliseconds"}function pT(r){if(!Zb(r))return U(r)?r:"-";var e=(r+"").split(".");return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(e.length>1?"."+e[1]:"")}function dT(r,e){return r=(r||"").toLowerCase().replace(/-(.)/g,function(t,a){return a.toUpperCase()}),e&&r&&(r=r.charAt(0).toUpperCase()+r.slice(1)),r}var bo=ag;function Xp(r,e,t){var a="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}";function n(f){return f&&_r(f)?f:"-"}function i(f){return!!(f!=null&&!isNaN(f)&&isFinite(f))}var o=e==="time",s=r instanceof Date;if(o||s){var l=o?$r(r):r;if(isNaN(+l)){if(s)return"-"}else return gh(l,a,t)}if(e==="ordinal")return vp(r)?n(r):Ct(r)&&i(r)?r+"":"-";var u=ha(r);return i(u)?pT(u):vp(r)?n(r):typeof r=="boolean"?r+"":"-"}var I0=["a","b","c","d","e","f","g"],Iv=function(r,e){return"{"+r+(e??"")+"}"};function gT(r,e,t){z(e)||(e=[e]);var a=e.length;if(!a)return"";for(var n=e[0].$vars||[],i=0;i':'';var o=t.markerId||"markerX";return{renderMode:i,content:"{"+o+"|} ",style:n==="subItem"?{width:4,height:4,borderRadius:2,backgroundColor:a}:{width:10,height:10,borderRadius:5,backgroundColor:a}}}function fi(r,e){return e=e||"transparent",U(r)?r:tt(r)&&r.colorStops&&(r.colorStops[0]||{}).color||e}function Sf(r,e){if(e==="_blank"||e==="blank"){var t=window.open();t.opener=null,t.location.href=r}else window.open(r,e)}var Zu=C,yT=["left","right","top","bottom","width","height"],Yn=[["width","left","right"],["height","top","bottom"]];function Rg(r,e,t,a,n){var i=0,o=0;a==null&&(a=1/0),n==null&&(n=1/0);var s=0;e.eachChild(function(l,u){var f=l.getBoundingRect(),h=e.childAt(u+1),v=h&&h.getBoundingRect(),c,p;if(r==="horizontal"){var d=f.width+(v?-v.x+f.x:0);c=i+d,c>a||l.newline?(i=0,c=d,o+=s+t,s=f.height):s=Math.max(s,f.height)}else{var g=f.height+(v?-v.y+f.y:0);p=o+g,p>n||l.newline?(i+=s+t,o=0,p=g,s=f.width):s=Math.max(s,f.width)}l.newline||(l.x=i,l.y=o,l.markRedraw(),r==="horizontal"?i=c+t:o=p+t)})}var ri=Rg;it(Rg,"vertical");it(Rg,"horizontal");function xk(r,e,t){var a=e.width,n=e.height,i=H(r.left,a),o=H(r.top,n),s=H(r.right,a),l=H(r.bottom,n);return(isNaN(i)||isNaN(parseFloat(r.left)))&&(i=0),(isNaN(s)||isNaN(parseFloat(r.right)))&&(s=a),(isNaN(o)||isNaN(parseFloat(r.top)))&&(o=0),(isNaN(l)||isNaN(parseFloat(r.bottom)))&&(l=n),t=bo(t||0),{width:Math.max(s-i-t[1]-t[3],0),height:Math.max(l-o-t[0]-t[2],0)}}function re(r,e,t){t=bo(t||0);var a=e.width,n=e.height,i=H(r.left,a),o=H(r.top,n),s=H(r.right,a),l=H(r.bottom,n),u=H(r.width,a),f=H(r.height,n),h=t[2]+t[0],v=t[1]+t[3],c=r.aspect;switch(isNaN(u)&&(u=a-s-v-i),isNaN(f)&&(f=n-l-h-o),c!=null&&(isNaN(u)&&isNaN(f)&&(c>a/n?u=a*.8:f=n*.8),isNaN(u)&&(u=c*f),isNaN(f)&&(f=u/c)),isNaN(i)&&(i=a-s-u-v),isNaN(o)&&(o=n-l-f-h),r.left||r.right){case"center":i=a/2-u/2-t[3];break;case"right":i=a-u-v;break}switch(r.top||r.bottom){case"middle":case"center":o=n/2-f/2-t[0];break;case"bottom":o=n-f-h;break}i=i||0,o=o||0,isNaN(u)&&(u=a-v-i-(s||0)),isNaN(f)&&(f=n-h-o-(l||0));var p=new ft(i+t[3],o+t[0],u,f);return p.margin=t,p}function xh(r,e,t,a,n,i){var o=!n||!n.hv||n.hv[0],s=!n||!n.hv||n.hv[1],l=n&&n.boundingMode||"all";if(i=i||r,i.x=r.x,i.y=r.y,!o&&!s)return!1;var u;if(l==="raw")u=r.type==="group"?new ft(0,0,+e.width||0,+e.height||0):r.getBoundingRect();else if(u=r.getBoundingRect(),r.needLocalTransform()){var f=r.getLocalTransform();u=u.clone(),u.applyTransform(f)}var h=re(J({width:u.width,height:u.height},e),t,a),v=o?h.x-u.x:0,c=s?h.y-u.y:0;return l==="raw"?(i.x=v,i.y=c):(i.x+=v,i.y+=c),i===r&&r.markRedraw(),!0}function wk(r,e){return r[Yn[e][0]]!=null||r[Yn[e][1]]!=null&&r[Yn[e][2]]!=null}function Ys(r){var e=r.layoutMode||r.constructor.layoutMode;return tt(e)?e:e?{type:e}:null}function Ja(r,e,t){var a=t&&t.ignoreSize;!z(a)&&(a=[a,a]);var n=o(Yn[0],0),i=o(Yn[1],1);u(Yn[0],r,n),u(Yn[1],r,i);function o(f,h){var v={},c=0,p={},d=0,g=2;if(Zu(f,function(_){p[_]=r[_]}),Zu(f,function(_){s(e,_)&&(v[_]=p[_]=e[_]),l(v,_)&&c++,l(p,_)&&d++}),a[h])return l(e,f[1])?p[f[2]]=null:l(e,f[2])&&(p[f[1]]=null),p;if(d===g||!c)return p;if(c>=g)return v;for(var y=0;y=0;l--)s=ut(s,n[l],!0);a.defaultOption=s}return a.defaultOption},e.prototype.getReferringComponents=function(t,a){var n=t+"Index",i=t+"Id";return hl(this.ecModel,t,{index:this.get(n,!0),id:this.get(i,!0)},a)},e.prototype.getBoxLayoutParams=function(){var t=this;return{left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")}},e.prototype.getZLevelKey=function(){return""},e.prototype.setZLevel=function(t){this.option.zlevel=t},e.protoInitialize=function(){var t=e.prototype;t.type="component",t.id="",t.name="",t.mainType="",t.subType="",t.componentIndex=0}(),e}(Nt);nA(To,Nt);ih(To);uk(To);fk(To,Ak);function Ak(r){var e=[];return C(To.getClassesByMainType(r),function(t){e=e.concat(t.dependencies||t.prototype.dependencies||[])}),e=G(e,function(t){return Vr(t).main}),r!=="dataset"&&vt(e,"dataset")<=0&&e.unshift("dataset"),e}const bt=To;var _T="";typeof navigator<"u"&&(_T=navigator.platform||"");var Ii="rgba(0, 0, 0, 0.2)";const Tk={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Ii,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Ii,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Ii,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Ii,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Ii,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Ii,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:_T.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1};var ST=q(["tooltip","label","itemName","itemId","itemGroupId","seriesName"]),hr="original",be="arrayRows",vr="objectRows",Zr="keyedColumns",$a="typedArray",xT="unknown",Fr="column",Co="row",ve={Must:1,Might:2,Not:3},wT=wt();function Ck(r){wT(r).datasetMap=q()}function bT(r,e,t){var a={},n=kg(e);if(!n||!r)return a;var i=[],o=[],s=e.ecModel,l=wT(s).datasetMap,u=n.uid+"_"+t.seriesLayoutBy,f,h;r=r.slice(),C(r,function(d,g){var y=tt(d)?d:r[g]={name:d};y.type==="ordinal"&&f==null&&(f=g,h=p(y)),a[y.name]=[]});var v=l.get(u)||l.set(u,{categoryWayDim:h,valueWayDim:0});C(r,function(d,g){var y=d.name,m=p(d);if(f==null){var _=v.valueWayDim;c(a[y],_,m),c(o,_,m),v.valueWayDim+=m}else if(f===g)c(a[y],0,m),c(i,0,m);else{var _=v.categoryWayDim;c(a[y],_,m),c(o,_,m),v.categoryWayDim+=m}});function c(d,g,y){for(var m=0;me)return r[a];return r[t-1]}function CT(r,e,t,a,n,i,o){i=i||r;var s=e(i),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(n))return u[n];var f=o==null||!a?t:Pk(a,o);if(f=f||t,!(!f||!f.length)){var h=f[l];return n&&(u[n]=h),s.paletteIdx=(l+1)%f.length,h}}function Rk(r,e){e(r).paletteIdx=0,e(r).paletteNameMap={}}var Ql,zo,P0,R0="\0_ec_inner",Ek=1,DT=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.init=function(t,a,n,i,o,s){i=i||{},this.option=null,this._theme=new Nt(i),this._locale=new Nt(o),this._optionManager=s},e.prototype.setOption=function(t,a,n){var i=O0(a);this._optionManager.setOption(t,n,i),this._resetOption(null,i)},e.prototype.resetOption=function(t,a){return this._resetOption(t,O0(a))},e.prototype._resetOption=function(t,a){var n=!1,i=this._optionManager;if(!t||t==="recreate"){var o=i.mountOption(t==="recreate");!this.option||t==="recreate"?P0(this,o):(this.restoreData(),this._mergeOption(o,a)),n=!0}if((t==="timeline"||t==="media")&&this.restoreData(),!t||t==="recreate"||t==="timeline"){var s=i.getTimelineOption(this);s&&(n=!0,this._mergeOption(s,a))}if(!t||t==="recreate"||t==="media"){var l=i.getMediaOption(this);l.length&&C(l,function(u){n=!0,this._mergeOption(u,a)},this)}return n},e.prototype.mergeOption=function(t){this._mergeOption(t,null)},e.prototype._mergeOption=function(t,a){var n=this.option,i=this._componentsMap,o=this._componentsCount,s=[],l=q(),u=a&&a.replaceMergeMainTypeMap;Ck(this),C(t,function(h,v){h!=null&&(bt.hasClass(v)?v&&(s.push(v),l.set(v,!0)):n[v]=n[v]==null?et(h):ut(n[v],h,!0))}),u&&u.each(function(h,v){bt.hasClass(v)&&!l.get(v)&&(s.push(v),l.set(v,!0))}),bt.topologicalTravel(s,bt.getAllClassMainTypes(),f,this);function f(h){var v=Ik(this,h,Rt(t[h])),c=i.get(h),p=c?u&&u.get(h)?"replaceMerge":"normalMerge":"replaceAll",d=jb(c,v,p);ZP(d,h,bt),n[h]=null,i.set(h,null),o.set(h,0);var g=[],y=[],m=0,_;C(d,function(S,w){var x=S.existing,b=S.newOption;if(!b)x&&(x.mergeOption({},this),x.optionUpdated({},!1));else{var A=h==="series",T=bt.getClass(h,S.keyInfo.subType,!A);if(!T)return;if(h==="tooltip"){if(_)return;_=!0}if(x&&x.constructor===T)x.name=S.keyInfo.name,x.mergeOption(b,this),x.optionUpdated(b,!1);else{var D=B({componentIndex:w},S.keyInfo);x=new T(b,this,this,D),B(x,D),S.brandNew&&(x.__requireNewView=!0),x.init(b,this,this),x.optionUpdated(null,!0)}}x?(g.push(x.option),y.push(x),m++):(g.push(void 0),y.push(void 0))},this),n[h]=g,i.set(h,y),o.set(h,m),h==="series"&&Ql(this)}this._seriesIndices||Ql(this)},e.prototype.getOption=function(){var t=et(this.option);return C(t,function(a,n){if(bt.hasClass(n)){for(var i=Rt(a),o=i.length,s=!1,l=o-1;l>=0;l--)i[l]&&!zs(i[l])?s=!0:(i[l]=null,!s&&o--);i.length=o,t[n]=i}}),delete t[R0],t},e.prototype.getTheme=function(){return this._theme},e.prototype.getLocaleModel=function(){return this._locale},e.prototype.setUpdatePayload=function(t){this._payload=t},e.prototype.getUpdatePayload=function(){return this._payload},e.prototype.getComponent=function(t,a){var n=this._componentsMap.get(t);if(n){var i=n[a||0];if(i)return i;if(a==null){for(var o=0;o=e:t==="max"?r<=e:r===e}function Uk(r,e){return r.join(",")===e.join(",")}const $k=Gk;var cr=C,Xs=tt,N0=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function Pv(r){var e=r&&r.itemStyle;if(e)for(var t=0,a=N0.length;t=0;g--){var y=r[g];if(s||(p=y.data.rawIndexOf(y.stackedByDimension,c)),p>=0){var m=y.data.getByRawIndex(y.stackResultDimension,p);if(l==="all"||l==="positive"&&m>0||l==="negative"&&m<0||l==="samesign"&&v>=0&&m>0||l==="samesign"&&v<=0&&m<0){v=BP(v,m),d=m;break}}}return a[0]=v,a[1]=d,a})})}var wh=function(){function r(e){this.data=e.data||(e.sourceFormat===Zr?{}:[]),this.sourceFormat=e.sourceFormat||xT,this.seriesLayoutBy=e.seriesLayoutBy||Fr,this.startIndex=e.startIndex||0,this.dimensionsDetectedCount=e.dimensionsDetectedCount,this.metaRawOption=e.metaRawOption;var t=this.dimensionsDefine=e.dimensionsDefine;if(t)for(var a=0;ad&&(d=_)}c[0]=p,c[1]=d}},n=function(){return this._data?this._data.length/this._dimSize:0};W0=(e={},e[be+"_"+Fr]={pure:!0,appendData:i},e[be+"_"+Co]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},e[vr]={pure:!0,appendData:i},e[Zr]={pure:!0,appendData:function(o){var s=this._data;C(o,function(l,u){for(var f=s[u]||(s[u]=[]),h=0;h<(l||[]).length;h++)f.push(l[h])})}},e[hr]={appendData:i},e[$a]={persistent:!1,pure:!0,appendData:function(o){this._data=o},clean:function(){this._offset+=this.count(),this._data=null}},e);function i(o){for(var s=0;s=0&&(d=o.interpolatedValue[g])}return d!=null?d+"":""})}},r.prototype.getRawValue=function(e,t){return io(this.getData(t),e)},r.prototype.formatTooltip=function(e,t,a){},r}();function X0(r){var e,t;return tt(r)?r.type&&(t=r):e=r,{text:e,frag:t}}function Ds(r){return new lO(r)}var lO=function(){function r(e){e=e||{},this._reset=e.reset,this._plan=e.plan,this._count=e.count,this._onDirty=e.onDirty,this._dirty=!0}return r.prototype.perform=function(e){var t=this._upstream,a=e&&e.skip;if(this._dirty&&t){var n=this.context;n.data=n.outputData=t.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this);var i;this._plan&&!a&&(i=this._plan(this.context));var o=f(this._modBy),s=this._modDataCount||0,l=f(e&&e.modBy),u=e&&e.modDataCount||0;(o!==l||s!==u)&&(i="reset");function f(m){return!(m>=1)&&(m=1),m}var h;(this._dirty||i==="reset")&&(this._dirty=!1,h=this._doReset(a)),this._modBy=l,this._modDataCount=u;var v=e&&e.step;if(t?this._dueEnd=t._outputDueEnd:this._dueEnd=this._count?this._count(this.context):1/0,this._progress){var c=this._dueIndex,p=Math.min(v!=null?this._dueIndex+v:1/0,this._dueEnd);if(!a&&(h||c1&&a>0?s:o}};return i;function o(){return e=r?null:le},gte:function(r,e){return r>=e}},fO=function(){function r(e,t){if(!Ct(t)){var a="";It(a)}this._opFn=zT[e],this._rvalFloat=ha(t)}return r.prototype.evaluate=function(e){return Ct(e)?this._opFn(e,this._rvalFloat):this._opFn(ha(e),this._rvalFloat)},r}(),GT=function(){function r(e,t){var a=e==="desc";this._resultLT=a?1:-1,t==null&&(t=a?"min":"max"),this._incomparable=t==="min"?-1/0:1/0}return r.prototype.evaluate=function(e,t){var a=Ct(e)?e:ha(e),n=Ct(t)?t:ha(t),i=isNaN(a),o=isNaN(n);if(i&&(a=this._incomparable),o&&(n=this._incomparable),i&&o){var s=U(e),l=U(t);s&&(a=l?e:0),l&&(n=s?t:0)}return an?-this._resultLT:0},r}(),hO=function(){function r(e,t){this._rval=t,this._isEQ=e,this._rvalTypeof=typeof t,this._rvalFloat=ha(t)}return r.prototype.evaluate=function(e){var t=e===this._rval;if(!t){var a=typeof e;a!==this._rvalTypeof&&(a==="number"||this._rvalTypeof==="number")&&(t=ha(e)===this._rvalFloat)}return this._isEQ?t:!t},r}();function vO(r,e){return r==="eq"||r==="ne"?new hO(r==="eq",e):Y(zT,r)?new fO(r,e):null}var cO=function(){function r(){}return r.prototype.getRawData=function(){throw new Error("not supported")},r.prototype.getRawDataItem=function(e){throw new Error("not supported")},r.prototype.cloneRawData=function(){},r.prototype.getDimensionInfo=function(e){},r.prototype.cloneAllDimensionInfo=function(){},r.prototype.count=function(){},r.prototype.retrieveValue=function(e,t){},r.prototype.retrieveValueFromItem=function(e,t){},r.prototype.convertValue=function(e,t){return Ya(e,t)},r}();function pO(r,e){var t=new cO,a=r.data,n=t.sourceFormat=r.sourceFormat,i=r.startIndex,o="";r.seriesLayoutBy!==Fr&&It(o);var s=[],l={},u=r.dimensionsDefine;if(u)C(u,function(d,g){var y=d.name,m={index:g,name:y,displayName:d.displayName};if(s.push(m),y!=null){var _="";Y(l,y)&&It(_),l[y]=m}});else for(var f=0;f65535?wO:bO}function Li(){return[1/0,-1/0]}function AO(r){var e=r.constructor;return e===Array?r.slice():new e(r)}function K0(r,e,t,a,n){var i=WT[t||"float"];if(n){var o=r[e],s=o&&o.length;if(s!==a){for(var l=new i(a),u=0;ug[1]&&(g[1]=d)}return this._rawCount=this._count=l,{start:s,end:l}},r.prototype._initDataFromProvider=function(e,t,a){for(var n=this._provider,i=this._chunks,o=this._dimensions,s=o.length,l=this._rawExtent,u=G(o,function(m){return m.property}),f=0;fy[1]&&(y[1]=g)}}!n.persistent&&n.clean&&n.clean(),this._rawCount=this._count=t,this._extent=[]},r.prototype.count=function(){return this._count},r.prototype.get=function(e,t){if(!(t>=0&&t=0&&t=this._rawCount||e<0)return-1;if(!this._indices)return e;var t=this._indices,a=t[e];if(a!=null&&ae)i=o-1;else return o}return-1},r.prototype.indicesOfNearest=function(e,t,a){var n=this._chunks,i=n[e],o=[];if(!i)return o;a==null&&(a=1/0);for(var s=1/0,l=-1,u=0,f=0,h=this.count();f=0&&l<0)&&(s=p,l=c,u=0),c===l&&(o[u++]=f))}return o.length=u,o},r.prototype.getIndices=function(){var e,t=this._indices;if(t){var a=t.constructor,n=this._count;if(a===Array){e=new a(n);for(var i=0;i=h&&m<=v||isNaN(m))&&(l[u++]=d),d++}p=!0}else if(i===2){for(var g=c[n[0]],_=c[n[1]],S=e[n[1]][0],w=e[n[1]][1],y=0;y=h&&m<=v||isNaN(m))&&(x>=S&&x<=w||isNaN(x))&&(l[u++]=d),d++}p=!0}}if(!p)if(i===1)for(var y=0;y=h&&m<=v||isNaN(m))&&(l[u++]=b)}else for(var y=0;ye[D][1])&&(A=!1)}A&&(l[u++]=t.getRawIndex(y))}return uy[1]&&(y[1]=g)}}}},r.prototype.lttbDownSample=function(e,t){var a=this.clone([e],!0),n=a._chunks,i=n[e],o=this.count(),s=0,l=Math.floor(1/t),u=this.getRawIndex(0),f,h,v,c=new(Fo(this._rawCount))(Math.min((Math.ceil(o/l)+2)*2,o));c[s++]=u;for(var p=1;pf&&(f=h,v=S)}M>0&&Mf-p&&(l=f-p,s.length=l);for(var d=0;dh[1]&&(h[1]=y),v[c++]=m}return i._count=c,i._indices=v,i._updateGetRawIdx(),i},r.prototype.each=function(e,t){if(this._count)for(var a=e.length,n=this._chunks,i=0,o=this.count();il&&(l=h)}return o=[s,l],this._extent[e]=o,o},r.prototype.getRawDataItem=function(e){var t=this.getRawIndex(e);if(this._provider.persistent)return this._provider.getItem(t);for(var a=[],n=this._chunks,i=0;i=0?this._indices[e]:-1},r.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},r.internalField=function(){function e(t,a,n,i){return Ya(t[i],this._dimensions[i])}kv={arrayRows:e,objectRows:function(t,a,n,i){return Ya(t[a],this._dimensions[i])},keyedColumns:e,original:function(t,a,n,i){var o=t&&(t.value==null?t:t.value);return Ya(o instanceof Array?o[i]:o,this._dimensions[i])},typedArray:function(t,a,n,i){return t[i]}}}(),r}(),UT=function(){function r(e){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=e}return r.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},r.prototype._setLocalSource=function(e,t){this._sourceList=e,this._upstreamSignList=t,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},r.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},r.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},r.prototype._createSource=function(){this._setLocalSource([],[]);var e=this._sourceHost,t=this._getUpstreamSourceManagers(),a=!!t.length,n,i;if(Jl(e)){var o=e,s=void 0,l=void 0,u=void 0;if(a){var f=t[0];f.prepareSource(),u=f.getSource(),s=u.data,l=u.sourceFormat,i=[f._getVersionSign()]}else s=o.get("data",!0),l=Ye(s)?$a:hr,i=[];var h=this._getSourceMetaRawOption()||{},v=u&&u.metaRawOption||{},c=lt(h.seriesLayoutBy,v.seriesLayoutBy)||null,p=lt(h.sourceHeader,v.sourceHeader),d=lt(h.dimensions,v.dimensions),g=c!==v.seriesLayoutBy||!!p!=!!v.sourceHeader||d;n=g?[Kp(s,{seriesLayoutBy:c,sourceHeader:p,dimensions:d},l)]:[]}else{var y=e;if(a){var m=this._applyTransform(t);n=m.sourceList,i=m.upstreamSignList}else{var _=y.get("source",!0);n=[Kp(_,this._getSourceMetaRawOption(),null)],i=[]}}this._setLocalSource(n,i)},r.prototype._applyTransform=function(e){var t=this._sourceHost,a=t.get("transform",!0),n=t.get("fromTransformResult",!0);if(n!=null){var i="";e.length!==1&&J0(i)}var o,s=[],l=[];return C(e,function(u){u.prepareSource();var f=u.getSource(n||0),h="";n!=null&&!f&&J0(h),s.push(f),l.push(u._getVersionSign())}),a?o=SO(a,s,{datasetIndex:t.componentIndex}):n!=null&&(o=[eO(s[0])]),{sourceList:o,upstreamSignList:l}},r.prototype._isDirty=function(){if(this._dirty)return!0;for(var e=this._getUpstreamSourceManagers(),t=0;t1||t>0&&!r.noHeader;return C(r.blocks,function(n){var i=ZT(n);i>=e&&(e=i+ +(a&&(!i||Jp(n)&&!n.noHeader)))}),e}return 0}function DO(r,e,t,a){var n=e.noHeader,i=IO(ZT(e)),o=[],s=e.blocks||[];Ie(!s||z(s)),s=s||[];var l=r.orderMode;if(e.sortBlocks&&l){s=s.slice();var u={valueAsc:"asc",valueDesc:"desc"};if(Y(u,l)){var f=new GT(u[l],null);s.sort(function(p,d){return f.evaluate(p.sortParam,d.sortParam)})}else l==="seriesDesc"&&s.reverse()}C(s,function(p,d){var g=e.valueFormatter,y=XT(p)(g?B(B({},r),{valueFormatter:g}):r,p,d>0?i.html:0,a);y!=null&&o.push(y)});var h=r.renderMode==="richText"?o.join(i.richText):jp(o.join(""),n?t:i.html);if(n)return h;var v=Xp(e.header,"ordinal",r.useUTC),c=YT(a,r.renderMode).nameStyle;return r.renderMode==="richText"?qT(r,v,c)+i.richText+h:jp('
'+ke(v)+"
"+h,t)}function MO(r,e,t,a){var n=r.renderMode,i=e.noName,o=e.noValue,s=!e.markerType,l=e.name,u=r.useUTC,f=e.valueFormatter||r.valueFormatter||function(S){return S=z(S)?S:[S],G(S,function(w,x){return Xp(w,z(c)?c[x]:c,u)})};if(!(i&&o)){var h=s?"":r.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||"#333",n),v=i?"":Xp(l,"ordinal",u),c=e.valueType,p=o?[]:f(e.value),d=!s||!i,g=!s&&i,y=YT(a,n),m=y.nameStyle,_=y.valueStyle;return n==="richText"?(s?"":h)+(i?"":qT(r,v,m))+(o?"":RO(r,p,d,g,_)):jp((s?"":h)+(i?"":LO(v,!s,m))+(o?"":PO(p,d,g,_)),t)}}function j0(r,e,t,a,n,i){if(r){var o=XT(r),s={useUTC:n,renderMode:t,orderMode:a,markupStyleCreator:e,valueFormatter:r.valueFormatter};return o(s,r,0,i)}}function IO(r){return{html:TO[r],richText:CO[r]}}function jp(r,e){var t='
',a="margin: "+e+"px 0 0";return'
'+r+t+"
"}function LO(r,e,t){var a=e?"margin-left:2px":"";return''+ke(r)+""}function PO(r,e,t,a){var n=t?"10px":"20px",i=e?"float:right;margin-left:"+n:"";return r=z(r)?r:[r],''+G(r,function(o){return ke(o)}).join("  ")+""}function qT(r,e,t){return r.markupStyleCreator.wrapRichTextStyle(e,t)}function RO(r,e,t,a,n){var i=[n],o=a?10:20;return t&&i.push({padding:[0,0,0,o],align:"right"}),r.markupStyleCreator.wrapRichTextStyle(z(e)?e.join(" "):e,i)}function KT(r,e){var t=r.getData().getItemVisual(e,"style"),a=t[r.visualDrawType];return fi(a)}function QT(r,e){var t=r.get("padding");return t??(e==="richText"?[8,10]:10)}var Ov=function(){function r(){this.richTextStyles={},this._nextStyleNameId=qb()}return r.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},r.prototype.makeTooltipMarker=function(e,t,a){var n=a==="richText"?this._generateStyleName():null,i=Sk({color:t,type:e,renderMode:a,markerId:n});return U(i)?i:(this.richTextStyles[n]=i.style,i.content)},r.prototype.wrapRichTextStyle=function(e,t){var a={};z(t)?C(t,function(i){return B(a,i)}):B(a,t);var n=this._generateStyleName();return this.richTextStyles[n]=a,"{"+n+"|"+e+"}"},r}();function JT(r){var e=r.series,t=r.dataIndex,a=r.multipleSeries,n=e.getData(),i=n.mapDimensionsAll("defaultedTooltip"),o=i.length,s=e.getRawValue(t),l=z(s),u=KT(e,t),f,h,v,c;if(o>1||l&&!o){var p=EO(s,e,t,i,u);f=p.inlineValues,h=p.inlineValueTypes,v=p.blocks,c=p.inlineValues[0]}else if(o){var d=n.getDimensionInfo(i[0]);c=f=io(n,t,i[0]),h=d.type}else c=f=l?s[0]:s;var g=vg(e),y=g&&e.name||"",m=n.getName(t),_=a?y:m;return se("section",{header:y,noHeader:a||!g,sortParam:c,blocks:[se("nameValue",{markerType:"item",markerColor:u,name:_,noName:!_r(_),value:f,valueType:h})].concat(v||[])})}function EO(r,e,t,a,n){var i=e.getData(),o=Hr(r,function(h,v,c){var p=i.getDimensionInfo(c);return h=h||p&&p.tooltip!==!1&&p.displayName!=null},!1),s=[],l=[],u=[];a.length?C(a,function(h){f(io(i,t,h),h)}):C(r,f);function f(h,v){var c=i.getDimensionInfo(v);!c||c.otherDims.tooltip===!1||(o?u.push(se("nameValue",{markerType:"subItem",markerColor:n,name:c.displayName,value:h,valueType:c.type})):(s.push(h),l.push(c.type)))}return{inlineValues:s,inlineValueTypes:l,blocks:u}}var Aa=wt();function jl(r,e){return r.getName(e)||r.getId(e)}var qu="__universalTransitionEnabled",Ah=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t._selectedDataIndicesMap={},t}return e.prototype.init=function(t,a,n){this.seriesIndex=this.componentIndex,this.dataTask=Ds({count:OO,reset:NO}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n);var i=Aa(this).sourceManager=new UT(this);i.prepareSource();var o=this.getInitialData(t,n);e_(o,this),this.dataTask.context.data=o,Aa(this).dataBeforeProcessed=o,t_(this),this._initSelectedMapFromData(o)},e.prototype.mergeDefaultAndTheme=function(t,a){var n=Ys(this),i=n?Ao(t):{},o=this.subType;bt.hasClass(o)&&(o+="Series"),ut(t,a.getTheme().get(this.subType)),ut(t,this.getDefaultOption()),oi(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&Ja(t,i,n)},e.prototype.mergeOption=function(t,a){t=ut(this.option,t,!0),this.fillDataTextStyle(t.data);var n=Ys(this);n&&Ja(this.option,t,n);var i=Aa(this).sourceManager;i.dirty(),i.prepareSource();var o=this.getInitialData(t,a);e_(o,this),this.dataTask.dirty(),this.dataTask.context.data=o,Aa(this).dataBeforeProcessed=o,t_(this),this._initSelectedMapFromData(o)},e.prototype.fillDataTextStyle=function(t){if(t&&!Ye(t))for(var a=["show"],n=0;nthis.getShallow("animationThreshold")&&(a=!1),!!a},e.prototype.restoreData=function(){this.dataTask.dirty()},e.prototype.getColorFromPalette=function(t,a,n){var i=this.ecModel,o=Og.prototype.getColorFromPalette.call(this,t,a,n);return o||(o=i.getColorFromPalette(t,a,n)),o},e.prototype.coordDimToDataDim=function(t){return this.getRawData().mapDimensionsAll(t)},e.prototype.getProgressive=function(){return this.get("progressive")},e.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},e.prototype.select=function(t,a){this._innerSelect(this.getData(a),t)},e.prototype.unselect=function(t,a){var n=this.option.selectedMap;if(n){var i=this.option.selectedMode,o=this.getData(a);if(i==="series"||n==="all"){this.option.selectedMap={},this._selectedDataIndicesMap={};return}for(var s=0;s=0&&n.push(o)}return n},e.prototype.isSelected=function(t,a){var n=this.option.selectedMap;if(!n)return!1;var i=this.getData(a);return(n==="all"||n[jl(i,t)])&&!i.getItemModel(t).get(["select","disabled"])},e.prototype.isUniversalTransitionEnabled=function(){if(this[qu])return!0;var t=this.option.universalTransition;return t?t===!0?!0:t&&t.enabled:!1},e.prototype._innerSelect=function(t,a){var n,i,o=this.option,s=o.selectedMode,l=a.length;if(!(!s||!l)){if(s==="series")o.selectedMap="all";else if(s==="multiple"){tt(o.selectedMap)||(o.selectedMap={});for(var u=o.selectedMap,f=0;f0&&this._innerSelect(t,a)}},e.registerClass=function(t){return bt.registerClass(t)},e.protoInitialize=function(){var t=e.prototype;t.type="series.__base__",t.seriesIndex=0,t.ignoreStyleOnData=!1,t.hasSymbolVisual=!1,t.defaultSymbol="circle",t.visualStyleAccessPath="itemStyle",t.visualDrawType="fill"}(),e}(bt);jt(Ah,zg);jt(Ah,Og);nA(Ah,bt);function t_(r){var e=r.name;vg(r)||(r.name=kO(r)||e)}function kO(r){var e=r.getRawData(),t=e.mapDimensionsAll("seriesName"),a=[];return C(t,function(n){var i=e.getDimensionInfo(n);i.displayName&&a.push(i.displayName)}),a.join(" ")}function OO(r){return r.model.getRawData().count()}function NO(r){var e=r.model;return e.setData(e.getRawData().cloneShallow()),BO}function BO(r,e){e.outputData&&r.end>e.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function e_(r,e){C(af(r.CHANGABLE_METHODS,r.DOWNSAMPLE_METHODS),function(t){r.wrapMethod(t,it(VO,e))})}function VO(r,e){var t=td(r);return t&&t.setOutputEnd((e||this).count()),e}function td(r){var e=(r.ecModel||{}).scheduler,t=e&&e.getPipeline(r.uid);if(t){var a=t.currentTask;if(a){var n=a.agentStubMap;n&&(a=n.get(r.uid))}return a}}const Gt=Ah;var Fg=function(){function r(){this.group=new at,this.uid=wo("viewComponent")}return r.prototype.init=function(e,t){},r.prototype.render=function(e,t,a,n){},r.prototype.dispose=function(e,t){},r.prototype.updateView=function(e,t,a,n){},r.prototype.updateLayout=function(e,t,a,n){},r.prototype.updateVisual=function(e,t,a,n){},r.prototype.toggleBlurSeries=function(e,t,a){},r.prototype.eachRendered=function(e){var t=this.group;t&&t.traverse(e)},r}();pg(Fg);ih(Fg);const Ut=Fg;function Do(){var r=wt();return function(e){var t=r(e),a=e.pipelineContext,n=!!t.large,i=!!t.progressiveRender,o=t.large=!!(a&&a.large),s=t.progressiveRender=!!(a&&a.progressiveRender);return(n!==o||i!==s)&&"reset"}}var jT=wt(),zO=Do(),Hg=function(){function r(){this.group=new at,this.uid=wo("viewChart"),this.renderTask=Ds({plan:GO,reset:FO}),this.renderTask.context={view:this}}return r.prototype.init=function(e,t){},r.prototype.render=function(e,t,a,n){},r.prototype.highlight=function(e,t,a,n){var i=e.getData(n&&n.dataType);i&&a_(i,n,"emphasis")},r.prototype.downplay=function(e,t,a,n){var i=e.getData(n&&n.dataType);i&&a_(i,n,"normal")},r.prototype.remove=function(e,t){this.group.removeAll()},r.prototype.dispose=function(e,t){},r.prototype.updateView=function(e,t,a,n){this.render(e,t,a,n)},r.prototype.updateLayout=function(e,t,a,n){this.render(e,t,a,n)},r.prototype.updateVisual=function(e,t,a,n){this.render(e,t,a,n)},r.prototype.eachRendered=function(e){nn(this.group,e)},r.markUpdateMethod=function(e,t){jT(e).updateMethod=t},r.protoInitialize=function(){var e=r.prototype;e.type="chart"}(),r}();function r_(r,e,t){r&&Hs(r)&&(e==="emphasis"?va:ca)(r,t)}function a_(r,e,t){var a=si(r,e),n=e&&e.highlightKey!=null?cE(e.highlightKey):null;a!=null?C(Rt(a),function(i){r_(r.getItemGraphicEl(i),t,n)}):r.eachItemGraphicEl(function(i){r_(i,t,n)})}pg(Hg);ih(Hg);function GO(r){return zO(r.model)}function FO(r){var e=r.model,t=r.ecModel,a=r.api,n=r.payload,i=e.pipelineContext.progressiveRender,o=r.view,s=n&&jT(n).updateMethod,l=i?"incrementalPrepareRender":s&&o[s]?s:"render";return l!=="render"&&o[l](e,t,a,n),HO[l]}var HO={incrementalPrepareRender:{progress:function(r,e){e.view.incrementalRender(r,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(r,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}};const Bt=Hg;var xf="\0__throttleOriginMethod",n_="\0__throttleRate",i_="\0__throttleType";function Wg(r,e,t){var a,n=0,i=0,o=null,s,l,u,f;e=e||0;function h(){i=new Date().getTime(),o=null,r.apply(l,u||[])}var v=function(){for(var c=[],p=0;p=0?h():o=setTimeout(h,-s),n=a};return v.clear=function(){o&&(clearTimeout(o),o=null)},v.debounceNextCall=function(c){f=c},v}function Mo(r,e,t,a){var n=r[e];if(n){var i=n[xf]||n,o=n[i_],s=n[n_];if(s!==t||o!==a){if(t==null||!a)return r[e]=i;n=r[e]=Wg(i,t,a==="debounce"),n[xf]=i,n[i_]=a,n[n_]=t}return n}}function Zs(r,e){var t=r[e];t&&t[xf]&&(t.clear&&t.clear(),r[e]=t[xf])}var o_=wt(),s_={itemStyle:li(aT,!0),lineStyle:li(rT,!0)},WO={lineStyle:"stroke",itemStyle:"fill"};function tC(r,e){var t=r.visualStyleMapper||s_[e];return t||(console.warn("Unknown style type '"+e+"'."),s_.itemStyle)}function eC(r,e){var t=r.visualDrawType||WO[e];return t||(console.warn("Unknown style type '"+e+"'."),"fill")}var UO={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,e){var t=r.getData(),a=r.visualStyleAccessPath||"itemStyle",n=r.getModel(a),i=tC(r,a),o=i(n),s=n.getShallow("decal");s&&(t.setVisual("decal",s),s.dirty=!0);var l=eC(r,a),u=o[l],f=K(u)?u:null,h=o.fill==="auto"||o.stroke==="auto";if(!o[l]||f||h){var v=r.getColorFromPalette(r.name,null,e.getSeriesCount());o[l]||(o[l]=v,t.setVisual("colorFromPalette",!0)),o.fill=o.fill==="auto"||K(o.fill)?v:o.fill,o.stroke=o.stroke==="auto"||K(o.stroke)?v:o.stroke}if(t.setVisual("style",o),t.setVisual("drawType",l),!e.isSeriesFiltered(r)&&f)return t.setVisual("colorFromPalette",!1),{dataEach:function(c,p){var d=r.getDataParams(p),g=B({},o);g[l]=f(d),c.setItemVisual(p,"style",g)}}}},Ho=new Nt,$O={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,e){if(!(r.ignoreStyleOnData||e.isSeriesFiltered(r))){var t=r.getData(),a=r.visualStyleAccessPath||"itemStyle",n=tC(r,a),i=t.getVisual("drawType");return{dataEach:t.hasItemOption?function(o,s){var l=o.getRawDataItem(s);if(l&&l[a]){Ho.option=l[a];var u=n(Ho),f=o.ensureUniqueItemVisual(s,"style");B(f,u),Ho.option.decal&&(o.setItemVisual(s,"decal",Ho.option.decal),Ho.option.decal.dirty=!0),i in u&&o.setItemVisual(s,"colorFromPalette",!1)}}:null}}}},YO={performRawSeries:!0,overallReset:function(r){var e=q();r.eachSeries(function(t){var a=t.getColorBy();if(!t.isColorBySeries()){var n=t.type+"-"+a,i=e.get(n);i||(i={},e.set(n,i)),o_(t).scope=i}}),r.eachSeries(function(t){if(!(t.isColorBySeries()||r.isSeriesFiltered(t))){var a=t.getRawData(),n={},i=t.getData(),o=o_(t).scope,s=t.visualStyleAccessPath||"itemStyle",l=eC(t,s);i.each(function(u){var f=i.getRawIndex(u);n[f]=u}),a.each(function(u){var f=n[u],h=i.getItemVisual(f,"colorFromPalette");if(h){var v=i.ensureUniqueItemVisual(f,"style"),c=a.getName(u)||u+"",p=a.count();v[l]=t.getColorFromPalette(c,o,p)}})}})}},tu=Math.PI;function XO(r,e){e=e||{},J(e,{text:"loading",textColor:"#000",fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255, 255, 255, 0.8)",showSpinner:!0,color:"#5470c6",spinnerRadius:10,lineWidth:5,zlevel:0});var t=new at,a=new xt({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4});t.add(a);var n=new Tt({style:{text:e.text,fill:e.textColor,fontSize:e.fontSize,fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:e.fontFamily},zlevel:e.zlevel,z:10001}),i=new xt({style:{fill:"none"},textContent:n,textConfig:{position:"right",distance:10},zlevel:e.zlevel,z:10001});t.add(i);var o;return e.showSpinner&&(o=new bg({shape:{startAngle:-tu/2,endAngle:-tu/2+.1,r:e.spinnerRadius},style:{stroke:e.color,lineCap:"round",lineWidth:e.lineWidth},zlevel:e.zlevel,z:10001}),o.animateShape(!0).when(1e3,{endAngle:tu*3/2}).start("circularInOut"),o.animateShape(!0).when(1e3,{startAngle:tu*3/2}).delay(300).start("circularInOut"),t.add(o)),t.resize=function(){var s=n.getBoundingRect().width,l=e.showSpinner?e.spinnerRadius:0,u=(r.getWidth()-l*2-(e.showSpinner&&s?10:0)-s)/2-(e.showSpinner&&s?0:5+s/2)+(e.showSpinner?0:s/2)+(s?0:l),f=r.getHeight()/2;e.showSpinner&&o.setShape({cx:u,cy:f}),i.setShape({x:u-l,y:f-l,width:l*2,height:l*2}),a.setShape({x:0,y:0,width:r.getWidth(),height:r.getHeight()})},t.resize(),t}var ZO=function(){function r(e,t,a,n){this._stageTaskMap=q(),this.ecInstance=e,this.api=t,a=this._dataProcessorHandlers=a.slice(),n=this._visualHandlers=n.slice(),this._allHandlers=a.concat(n)}return r.prototype.restoreData=function(e,t){e.restoreData(t),this._stageTaskMap.each(function(a){var n=a.overallTask;n&&n.dirty()})},r.prototype.getPerformArgs=function(e,t){if(e.__pipeline){var a=this._pipelineMap.get(e.__pipeline.id),n=a.context,i=!t&&a.progressiveEnabled&&(!n||n.progressiveRender)&&e.__idxInPipeline>a.blockIndex,o=i?a.step:null,s=n&&n.modDataCount,l=s!=null?Math.ceil(s/o):null;return{step:o,modBy:l,modDataCount:s}}},r.prototype.getPipeline=function(e){return this._pipelineMap.get(e)},r.prototype.updateStreamModes=function(e,t){var a=this._pipelineMap.get(e.uid),n=e.getData(),i=n.count(),o=a.progressiveEnabled&&t.incrementalPrepareRender&&i>=a.threshold,s=e.get("large")&&i>=e.get("largeThreshold"),l=e.get("progressiveChunkMode")==="mod"?i:null;e.pipelineContext=a.context={progressiveRender:o,modDataCount:l,large:s}},r.prototype.restorePipelines=function(e){var t=this,a=t._pipelineMap=q();e.eachSeries(function(n){var i=n.getProgressive(),o=n.uid;a.set(o,{id:o,head:null,tail:null,threshold:n.getProgressiveThreshold(),progressiveEnabled:i&&!(n.preventIncremental&&n.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),t._pipe(n,n.dataTask)})},r.prototype.prepareStageTasks=function(){var e=this._stageTaskMap,t=this.api.getModel(),a=this.api;C(this._allHandlers,function(n){var i=e.get(n.uid)||e.set(n.uid,{}),o="";Ie(!(n.reset&&n.overallReset),o),n.reset&&this._createSeriesStageTask(n,i,t,a),n.overallReset&&this._createOverallStageTask(n,i,t,a)},this)},r.prototype.prepareView=function(e,t,a,n){var i=e.renderTask,o=i.context;o.model=t,o.ecModel=a,o.api=n,i.__block=!e.incrementalPrepareRender,this._pipe(t,i)},r.prototype.performDataProcessorTasks=function(e,t){this._performStageTasks(this._dataProcessorHandlers,e,t,{block:!0})},r.prototype.performVisualTasks=function(e,t,a){this._performStageTasks(this._visualHandlers,e,t,a)},r.prototype._performStageTasks=function(e,t,a,n){n=n||{};var i=!1,o=this;C(e,function(l,u){if(!(n.visualType&&n.visualType!==l.visualType)){var f=o._stageTaskMap.get(l.uid),h=f.seriesTaskMap,v=f.overallTask;if(v){var c,p=v.agentStubMap;p.each(function(g){s(n,g)&&(g.dirty(),c=!0)}),c&&v.dirty(),o.updatePayload(v,a);var d=o.getPerformArgs(v,n.block);p.each(function(g){g.perform(d)}),v.perform(d)&&(i=!0)}else h&&h.each(function(g,y){s(n,g)&&g.dirty();var m=o.getPerformArgs(g,n.block);m.skip=!l.performRawSeries&&t.isSeriesFiltered(g.context.model),o.updatePayload(g,a),g.perform(m)&&(i=!0)})}});function s(l,u){return l.setDirty&&(!l.dirtyMap||l.dirtyMap.get(u.__pipeline.id))}this.unfinished=i||this.unfinished},r.prototype.performSeriesTasks=function(e){var t;e.eachSeries(function(a){t=a.dataTask.perform()||t}),this.unfinished=t||this.unfinished},r.prototype.plan=function(){this._pipelineMap.each(function(e){var t=e.tail;do{if(t.__block){e.blockIndex=t.__idxInPipeline;break}t=t.getUpstream()}while(t)})},r.prototype.updatePayload=function(e,t){t!=="remain"&&(e.context.payload=t)},r.prototype._createSeriesStageTask=function(e,t,a,n){var i=this,o=t.seriesTaskMap,s=t.seriesTaskMap=q(),l=e.seriesType,u=e.getTargetSeries;e.createOnAllSeries?a.eachRawSeries(f):l?a.eachRawSeriesByType(l,f):u&&u(a,n).each(f);function f(h){var v=h.uid,c=s.set(v,o&&o.get(v)||Ds({plan:jO,reset:tN,count:rN}));c.context={model:h,ecModel:a,api:n,useClearVisual:e.isVisual&&!e.isLayout,plan:e.plan,reset:e.reset,scheduler:i},i._pipe(h,c)}},r.prototype._createOverallStageTask=function(e,t,a,n){var i=this,o=t.overallTask=t.overallTask||Ds({reset:qO});o.context={ecModel:a,api:n,overallReset:e.overallReset,scheduler:i};var s=o.agentStubMap,l=o.agentStubMap=q(),u=e.seriesType,f=e.getTargetSeries,h=!0,v=!1,c="";Ie(!e.createOnAllSeries,c),u?a.eachRawSeriesByType(u,p):f?f(a,n).each(p):(h=!1,C(a.getSeries(),p));function p(d){var g=d.uid,y=l.set(g,s&&s.get(g)||(v=!0,Ds({reset:KO,onDirty:JO})));y.context={model:d,overallProgress:h},y.agent=o,y.__block=h,i._pipe(d,y)}v&&o.dirty()},r.prototype._pipe=function(e,t){var a=e.uid,n=this._pipelineMap.get(a);!n.head&&(n.head=t),n.tail&&n.tail.pipe(t),n.tail=t,t.__idxInPipeline=n.count++,t.__pipeline=n},r.wrapStageHandler=function(e,t){return K(e)&&(e={overallReset:e,seriesType:aN(e)}),e.uid=wo("stageHandler"),t&&(e.visualType=t),e},r}();function qO(r){r.overallReset(r.ecModel,r.api,r.payload)}function KO(r){return r.overallProgress&&QO}function QO(){this.agent.dirty(),this.getDownstream().dirty()}function JO(){this.agent&&this.agent.dirty()}function jO(r){return r.plan?r.plan(r.model,r.ecModel,r.api,r.payload):null}function tN(r){r.useClearVisual&&r.data.clearAllVisual();var e=r.resetDefines=Rt(r.reset(r.model,r.ecModel,r.api,r.payload));return e.length>1?G(e,function(t,a){return rC(a)}):eN}var eN=rC(0);function rC(r){return function(e,t){var a=t.data,n=t.resetDefines[r];if(n&&n.dataEach)for(var i=e.start;i0&&c===u.length-v.length){var p=u.slice(0,c);p!=="data"&&(t.mainType=p,t[v.toLowerCase()]=l,f=!0)}}s.hasOwnProperty(u)&&(a[u]=l,f=!0),f||(n[u]=l)})}return{cptQuery:t,dataQuery:a,otherQuery:n}},r.prototype.filter=function(e,t){var a=this.eventInfo;if(!a)return!0;var n=a.targetEl,i=a.packedEvent,o=a.model,s=a.view;if(!o||!s)return!0;var l=t.cptQuery,u=t.dataQuery;return f(l,o,"mainType")&&f(l,o,"subType")&&f(l,o,"index","componentIndex")&&f(l,o,"name")&&f(l,o,"id")&&f(u,i,"name")&&f(u,i,"dataIndex")&&f(u,i,"dataType")&&(!s.filterForExposedEvent||s.filterForExposedEvent(e,t.otherQuery,n,i));function f(h,v,c,p){return h[c]==null||v[p||c]===h[c]}},r.prototype.afterTrigger=function(){this.eventInfo=null},r}(),ed=["symbol","symbolSize","symbolRotate","symbolOffset"],h_=ed.concat(["symbolKeepAspect"]),sN={createOnAllSeries:!0,performRawSeries:!0,reset:function(r,e){var t=r.getData();if(r.legendIcon&&t.setVisual("legendIcon",r.legendIcon),!r.hasSymbolVisual)return;for(var a={},n={},i=!1,o=0;o=0&&Zn(l)?l:.5;var u=r.createRadialGradient(o,s,0,o,s,l);return u}function rd(r,e,t){for(var a=e.type==="radial"?bN(r,e,t):wN(r,e,t),n=e.colorStops,i=0;i0)?null:r==="dashed"?[4*e,2*e]:r==="dotted"?[e]:Ct(r)?[r]:z(r)?r:null}function $g(r){var e=r.style,t=e.lineDash&&e.lineWidth>0&&TN(e.lineDash,e.lineWidth),a=e.lineDashOffset;if(t){var n=e.strokeNoScale&&r.getLineScale?r.getLineScale():1;n&&n!==1&&(t=G(t,function(i){return i/n}),a/=n)}return[t,a]}var CN=new Yr(!0);function Af(r){var e=r.stroke;return!(e==null||e==="none"||!(r.lineWidth>0))}function v_(r){return typeof r=="string"&&r!=="none"}function Tf(r){var e=r.fill;return e!=null&&e!=="none"}function c_(r,e){if(e.fillOpacity!=null&&e.fillOpacity!==1){var t=r.globalAlpha;r.globalAlpha=e.fillOpacity*e.opacity,r.fill(),r.globalAlpha=t}else r.fill()}function p_(r,e){if(e.strokeOpacity!=null&&e.strokeOpacity!==1){var t=r.globalAlpha;r.globalAlpha=e.strokeOpacity*e.opacity,r.stroke(),r.globalAlpha=t}else r.stroke()}function ad(r,e,t){var a=dg(e.image,e.__image,t);if(oh(a)){var n=r.createPattern(a,e.repeat||"repeat");if(typeof DOMMatrix=="function"&&n&&n.setTransform){var i=new DOMMatrix;i.translateSelf(e.x||0,e.y||0),i.rotateSelf(0,0,(e.rotation||0)*Ou),i.scaleSelf(e.scaleX||1,e.scaleY||1),n.setTransform(i)}return n}}function DN(r,e,t,a){var n,i=Af(t),o=Tf(t),s=t.strokePercent,l=s<1,u=!e.path;(!e.silent||l)&&u&&e.createPathProxy();var f=e.path||CN,h=e.__dirty;if(!a){var v=t.fill,c=t.stroke,p=o&&!!v.colorStops,d=i&&!!c.colorStops,g=o&&!!v.image,y=i&&!!c.image,m=void 0,_=void 0,S=void 0,w=void 0,x=void 0;(p||d)&&(x=e.getBoundingRect()),p&&(m=h?rd(r,v,x):e.__canvasFillGradient,e.__canvasFillGradient=m),d&&(_=h?rd(r,c,x):e.__canvasStrokeGradient,e.__canvasStrokeGradient=_),g&&(S=h||!e.__canvasFillPattern?ad(r,v,e):e.__canvasFillPattern,e.__canvasFillPattern=S),y&&(w=h||!e.__canvasStrokePattern?ad(r,c,e):e.__canvasStrokePattern,e.__canvasStrokePattern=S),p?r.fillStyle=m:g&&(S?r.fillStyle=S:o=!1),d?r.strokeStyle=_:y&&(w?r.strokeStyle=w:i=!1)}var b=e.getGlobalScale();f.setScale(b[0],b[1],e.segmentIgnoreThreshold);var A,T;r.setLineDash&&t.lineDash&&(n=$g(e),A=n[0],T=n[1]);var D=!0;(u||h&Wi)&&(f.setDPR(r.dpr),l?f.setContext(null):(f.setContext(r),D=!1),f.reset(),e.buildPath(f,e.shape,a),f.toStatic(),e.pathUpdated()),D&&f.rebuildPath(r,l?s:1),A&&(r.setLineDash(A),r.lineDashOffset=T),a||(t.strokeFirst?(i&&p_(r,t),o&&c_(r,t)):(o&&c_(r,t),i&&p_(r,t))),A&&r.setLineDash([])}function MN(r,e,t){var a=e.__image=dg(t.image,e.__image,e,e.onload);if(!(!a||!oh(a))){var n=t.x||0,i=t.y||0,o=e.getWidth(),s=e.getHeight(),l=a.width/a.height;if(o==null&&s!=null?o=s*l:s==null&&o!=null?s=o/l:o==null&&s==null&&(o=a.width,s=a.height),t.sWidth&&t.sHeight){var u=t.sx||0,f=t.sy||0;r.drawImage(a,u,f,t.sWidth,t.sHeight,n,i,o,s)}else if(t.sx&&t.sy){var u=t.sx,f=t.sy,h=o-u,v=s-f;r.drawImage(a,u,f,h,v,n,i,o,s)}else r.drawImage(a,n,i,o,s)}}function IN(r,e,t){var a,n=t.text;if(n!=null&&(n+=""),n){r.font=t.font||Za,r.textAlign=t.textAlign,r.textBaseline=t.textBaseline;var i=void 0,o=void 0;r.setLineDash&&t.lineDash&&(a=$g(e),i=a[0],o=a[1]),i&&(r.setLineDash(i),r.lineDashOffset=o),t.strokeFirst?(Af(t)&&r.strokeText(n,t.x,t.y),Tf(t)&&r.fillText(n,t.x,t.y)):(Tf(t)&&r.fillText(n,t.x,t.y),Af(t)&&r.strokeText(n,t.x,t.y)),i&&r.setLineDash([])}}var d_=["shadowBlur","shadowOffsetX","shadowOffsetY"],g_=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function uC(r,e,t,a,n){var i=!1;if(!a&&(t=t||{},e===t))return!1;if(a||e.opacity!==t.opacity){Be(r,n),i=!0;var o=Math.max(Math.min(e.opacity,1),0);r.globalAlpha=isNaN(o)?Jn.opacity:o}(a||e.blend!==t.blend)&&(i||(Be(r,n),i=!0),r.globalCompositeOperation=e.blend||Jn.blend);for(var s=0;s0&&t.unfinished);t.unfinished||this._zr.flush()}}},e.prototype.getDom=function(){return this._dom},e.prototype.getId=function(){return this.id},e.prototype.getZr=function(){return this._zr},e.prototype.isSSR=function(){return this._ssr},e.prototype.setOption=function(t,a,n){if(!this[Se]){if(this._disposed){this.id;return}var i,o,s;if(tt(a)&&(n=a.lazyUpdate,i=a.silent,o=a.replaceMerge,s=a.transition,a=a.notMerge),this[Se]=!0,!this._model||a){var l=new $k(this._api),u=this._theme,f=this._model=new MT;f.scheduler=this._scheduler,f.ssr=this._ssr,f.init(null,null,null,u,this._locale,l)}this._model.setOption(t,{replaceMerge:o},id);var h={seriesTransition:s,optionChanged:!0};if(n)this[Ee]={silent:i,updateParams:h},this[Se]=!1,this.getZr().wakeUp();else{try{Ri(this),Ta.update.call(this,null,h)}catch(v){throw this[Ee]=null,this[Se]=!1,v}this._ssr||this._zr.flush(),this[Ee]=null,this[Se]=!1,Wo.call(this,i),Uo.call(this,i)}}},e.prototype.setTheme=function(){},e.prototype.getModel=function(){return this._model},e.prototype.getOption=function(){return this._model&&this._model.getOption()},e.prototype.getWidth=function(){return this._zr.getWidth()},e.prototype.getHeight=function(){return this._zr.getHeight()},e.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||At.hasGlobalWindow&&window.devicePixelRatio||1},e.prototype.getRenderedCanvas=function(t){return this.renderToCanvas(t)},e.prototype.renderToCanvas=function(t){t=t||{};var a=this._zr.painter;return a.getRenderedCanvas({backgroundColor:t.backgroundColor||this._model.get("backgroundColor"),pixelRatio:t.pixelRatio||this.getDevicePixelRatio()})},e.prototype.renderToSVGString=function(t){t=t||{};var a=this._zr.painter;return a.renderToString({useViewBox:t.useViewBox})},e.prototype.getSvgDataURL=function(){if(At.svgSupported){var t=this._zr,a=t.storage.getDisplayList();return C(a,function(n){n.stopAnimation(null,!0)}),t.painter.toDataURL()}},e.prototype.getDataURL=function(t){if(this._disposed){this.id;return}t=t||{};var a=t.excludeComponents,n=this._model,i=[],o=this;C(a,function(l){n.eachComponent({mainType:l},function(u){var f=o._componentsMap[u.__viewId];f.group.ignore||(i.push(f),f.group.ignore=!0)})});var s=this._zr.painter.getType()==="svg"?this.getSvgDataURL():this.renderToCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return C(i,function(l){l.group.ignore=!1}),s},e.prototype.getConnectedDataURL=function(t){if(this._disposed){this.id;return}var a=t.type==="svg",n=this.group,i=Math.min,o=Math.max,s=1/0;if(P_[n]){var l=s,u=s,f=-s,h=-s,v=[],c=t&&t.pixelRatio||this.getDevicePixelRatio();C(Is,function(_,S){if(_.group===n){var w=a?_.getZr().painter.getSvgDom().innerHTML:_.renderToCanvas(et(t)),x=_.getDom().getBoundingClientRect();l=i(x.left,l),u=i(x.top,u),f=o(x.right,f),h=o(x.bottom,h),v.push({dom:w,left:x.left,top:x.top})}}),l*=c,u*=c,f*=c,h*=c;var p=f-l,d=h-u,g=qa.createCanvas(),y=km(g,{renderer:a?"svg":"canvas"});if(y.resize({width:p,height:d}),a){var m="";return C(v,function(_){var S=_.left-l,w=_.top-u;m+=''+_.dom+""}),y.painter.getSvgRoot().innerHTML=m,t.connectedBackgroundColor&&y.painter.setBackgroundColor(t.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}else return t.connectedBackgroundColor&&y.add(new xt({shape:{x:0,y:0,width:p,height:d},style:{fill:t.connectedBackgroundColor}})),C(v,function(_){var S=new ye({style:{x:_.left*c-l,y:_.top*c-u,image:_.dom}});y.add(S)}),y.refreshImmediately(),g.toDataURL("image/"+(t&&t.type||"png"))}else return this.getDataURL(t)},e.prototype.convertToPixel=function(t,a){return Gv(this,"convertToPixel",t,a)},e.prototype.convertFromPixel=function(t,a){return Gv(this,"convertFromPixel",t,a)},e.prototype.containPixel=function(t,a){if(this._disposed){this.id;return}var n=this._model,i,o=ws(n,t);return C(o,function(s,l){l.indexOf("Models")>=0&&C(s,function(u){var f=u.coordinateSystem;if(f&&f.containPoint)i=i||!!f.containPoint(a);else if(l==="seriesModels"){var h=this._chartsMap[u.__viewId];h&&h.containPoint&&(i=i||h.containPoint(a,u))}},this)},this),!!i},e.prototype.getVisual=function(t,a){var n=this._model,i=ws(n,t,{defaultMainType:"series"}),o=i.seriesModel,s=o.getData(),l=i.hasOwnProperty("dataIndexInside")?i.dataIndexInside:i.hasOwnProperty("dataIndex")?s.indexOfRawIndex(i.dataIndex):null;return l!=null?Ug(s,l,a):ml(s,a)},e.prototype.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},e.prototype.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},e.prototype._initEvents=function(){var t=this;C(eB,function(a){var n=function(i){var o=t.getModel(),s=i.target,l,u=a==="globalout";if(u?l={}:s&&Xn(s,function(p){var d=nt(p);if(d&&d.dataIndex!=null){var g=d.dataModel||o.getSeriesByIndex(d.seriesIndex);return l=g&&g.getDataParams(d.dataIndex,d.dataType)||{},!0}else if(d.eventData)return l=B({},d.eventData),!0},!0),l){var f=l.componentType,h=l.componentIndex;(f==="markLine"||f==="markPoint"||f==="markArea")&&(f="series",h=l.seriesIndex);var v=f&&h!=null&&o.getComponent(f,h),c=v&&t[v.mainType==="series"?"_chartsMap":"_componentsMap"][v.__viewId];l.event=i,l.type=a,t._$eventProcessor.eventInfo={targetEl:s,packedEvent:l,model:v,view:c},t.trigger(a,l)}};n.zrEventfulCallAtLast=!0,t._zr.on(a,n,t)}),C(Ms,function(a,n){t._messageCenter.on(n,function(i){this.trigger(n,i)},t)}),C(["selectchanged"],function(a){t._messageCenter.on(a,function(n){this.trigger(a,n)},t)}),uN(this._messageCenter,this,this._api)},e.prototype.isDisposed=function(){return this._disposed},e.prototype.clear=function(){if(this._disposed){this.id;return}this.setOption({series:[]},!0)},e.prototype.dispose=function(){if(this._disposed){this.id;return}this._disposed=!0;var t=this.getDom();t&&eA(this.getDom(),Zg,"");var a=this,n=a._api,i=a._model;C(a._componentsViews,function(o){o.dispose(i,n)}),C(a._chartsViews,function(o){o.dispose(i,n)}),a._zr.dispose(),a._dom=a._model=a._chartsMap=a._componentsMap=a._chartsViews=a._componentsViews=a._scheduler=a._api=a._zr=a._throttledZrFlush=a._theme=a._coordSysMgr=a._messageCenter=null,delete Is[a.id]},e.prototype.resize=function(t){if(!this[Se]){if(this._disposed){this.id;return}this._zr.resize(t);var a=this._model;if(this._loadingFX&&this._loadingFX.resize(),!!a){var n=a.resetOption("media"),i=t&&t.silent;this[Ee]&&(i==null&&(i=this[Ee].silent),n=!0,this[Ee]=null),this[Se]=!0;try{n&&Ri(this),Ta.update.call(this,{type:"resize",animation:B({duration:0},t&&t.animation)})}catch(o){throw this[Se]=!1,o}this[Se]=!1,Wo.call(this,i),Uo.call(this,i)}}},e.prototype.showLoading=function(t,a){if(this._disposed){this.id;return}if(tt(t)&&(a=t,t=""),t=t||"default",this.hideLoading(),!!od[t]){var n=od[t](this._api,a),i=this._zr;this._loadingFX=n,i.add(n)}},e.prototype.hideLoading=function(){if(this._disposed){this.id;return}this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},e.prototype.makeActionFromEvent=function(t){var a=B({},t);return a.type=Ms[t.type],a},e.prototype.dispatchAction=function(t,a){if(this._disposed){this.id;return}if(tt(a)||(a={silent:!!a}),!!Cf[t.type]&&this._model){if(this[Se]){this._pendingActions.push(t);return}var n=a.silent;Hv.call(this,t,n);var i=a.flush;i?this._zr.flush():i!==!1&&At.browser.weChat&&this._throttledZrFlush(),Wo.call(this,n),Uo.call(this,n)}},e.prototype.updateLabelLayout=function(){yr.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},e.prototype.appendData=function(t){if(this._disposed){this.id;return}var a=t.seriesIndex,n=this.getModel(),i=n.getSeriesByIndex(a);i.appendData(t),this._scheduler.unfinished=!0,this.getZr().wakeUp()},e.internalField=function(){Ri=function(h){var v=h._scheduler;v.restorePipelines(h._model),v.prepareStageTasks(),zv(h,!0),zv(h,!1),v.plan()},zv=function(h,v){for(var c=h._model,p=h._scheduler,d=v?h._componentsViews:h._chartsViews,g=v?h._componentsMap:h._chartsMap,y=h._zr,m=h._api,_=0;_v.get("hoverLayerThreshold")&&!At.node&&!At.worker&&v.eachSeries(function(g){if(!g.preventUsingHoverLayer){var y=h._chartsMap[g.__viewId];y.__alive&&y.eachRendered(function(m){m.states.emphasis&&(m.states.emphasis.hoverLayer=!0)})}})}function o(h,v){var c=h.get("blendMode")||null;v.eachRendered(function(p){p.isGroup||(p.style.blend=c)})}function s(h,v){if(!h.preventAutoZ){var c=h.get("z")||0,p=h.get("zlevel")||0;v.eachRendered(function(d){return l(d,c,p,-1/0),!0})}}function l(h,v,c,p){var d=h.getTextContent(),g=h.getTextGuideLine(),y=h.isGroup;if(y)for(var m=h.childrenRef(),_=0;_0?{duration:d,delay:c.get("delay"),easing:c.get("easing")}:null;v.eachRendered(function(y){if(y.states&&y.states.emphasis){if(to(y))return;if(y instanceof dt&&pE(y),y.__dirty){var m=y.prevStates;m&&y.useStates(m)}if(p){y.stateTransition=g;var _=y.getTextContent(),S=y.getTextGuideLine();_&&(_.stateTransition=g),S&&(S.stateTransition=g)}y.__dirty&&n(y)}})}I_=function(h){return new(function(v){k(c,v);function c(){return v!==null&&v.apply(this,arguments)||this}return c.prototype.getCoordinateSystems=function(){return h._coordSysMgr.getCoordinateSystems()},c.prototype.getComponentByElement=function(p){for(;p;){var d=p.__ecComponentInfo;if(d!=null)return h._model.getComponent(d.mainType,d.index);p=p.parent}},c.prototype.enterEmphasis=function(p,d){va(p,d),Xe(h)},c.prototype.leaveEmphasis=function(p,d){ca(p,d),Xe(h)},c.prototype.enterBlur=function(p){bA(p),Xe(h)},c.prototype.leaveBlur=function(p){_g(p),Xe(h)},c.prototype.enterSelect=function(p){AA(p),Xe(h)},c.prototype.leaveSelect=function(p){TA(p),Xe(h)},c.prototype.getModel=function(){return h.getModel()},c.prototype.getViewOfComponentModel=function(p){return h.getViewOfComponentModel(p)},c.prototype.getViewOfSeriesModel=function(p){return h.getViewOfSeriesModel(p)},c}(IT))(h)},AC=function(h){function v(c,p){for(var d=0;d=0)){E_.push(t);var i=iC.wrapStageHandler(t,n);i.__prio=e,i.__raw=t,r.push(i)}}function LC(r,e){od[r]=e}function lB(r,e,t){var a=GN("registerMap");a&&a(r,e,t)}var uB=_O;gi(Yg,UO);gi(Th,$O);gi(Th,YO);gi(Yg,sN);gi(Th,lN);gi(mC,BN);MC(PT);IC(WN,jk);LC("default",XO);qr({type:jn,event:jn,update:jn},Zt);qr({type:Uu,event:Uu,update:Uu},Zt);qr({type:bs,event:bs,update:bs},Zt);qr({type:$u,event:$u,update:$u},Zt);qr({type:As,event:As,update:As},Zt);DC("light",nN);DC("dark",iN);var k_=[],fB={registerPreprocessor:MC,registerProcessor:IC,registerPostInit:nB,registerPostUpdate:iB,registerUpdateLifecycle:qg,registerAction:qr,registerCoordinateSystem:oB,registerLayout:sB,registerVisual:gi,registerTransform:uB,registerLoading:LC,registerMap:lB,registerImpl:zN,PRIORITY:JN,ComponentModel:bt,ComponentView:Ut,SeriesModel:Gt,ChartView:Bt,registerComponentModel:function(r){bt.registerClass(r)},registerComponentView:function(r){Ut.registerClass(r)},registerSeriesModel:function(r){Gt.registerClass(r)},registerChartView:function(r){Bt.registerClass(r)},registerSubTypeDefaulter:function(r,e){bt.registerSubTypeDefaulter(r,e)},registerPainter:function(r,e){EP(r,e)}};function ct(r){if(z(r)){C(r,function(e){ct(e)});return}vt(k_,r)>=0||(k_.push(r),K(r)&&(r={install:r}),r.install(fB))}function $o(r){return r==null?0:r.length||1}function O_(r){return r}var hB=function(){function r(e,t,a,n,i,o){this._old=e,this._new=t,this._oldKeyGetter=a||O_,this._newKeyGetter=n||O_,this.context=i,this._diffModeMultiple=o==="multiple"}return r.prototype.add=function(e){return this._add=e,this},r.prototype.update=function(e){return this._update=e,this},r.prototype.updateManyToOne=function(e){return this._updateManyToOne=e,this},r.prototype.updateOneToMany=function(e){return this._updateOneToMany=e,this},r.prototype.updateManyToMany=function(e){return this._updateManyToMany=e,this},r.prototype.remove=function(e){return this._remove=e,this},r.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},r.prototype._executeOneToOne=function(){var e=this._old,t=this._new,a={},n=new Array(e.length),i=new Array(t.length);this._initIndexMap(e,null,n,"_oldKeyGetter"),this._initIndexMap(t,a,i,"_newKeyGetter");for(var o=0;o1){var f=l.shift();l.length===1&&(a[s]=l[0]),this._update&&this._update(f,o)}else u===1?(a[s]=null,this._update&&this._update(l,o)):this._remove&&this._remove(o)}this._performRestAdd(i,a)},r.prototype._executeMultiple=function(){var e=this._old,t=this._new,a={},n={},i=[],o=[];this._initIndexMap(e,a,i,"_oldKeyGetter"),this._initIndexMap(t,n,o,"_newKeyGetter");for(var s=0;s1&&v===1)this._updateManyToOne&&this._updateManyToOne(f,u),n[l]=null;else if(h===1&&v>1)this._updateOneToMany&&this._updateOneToMany(f,u),n[l]=null;else if(h===1&&v===1)this._update&&this._update(f,u),n[l]=null;else if(h>1&&v>1)this._updateManyToMany&&this._updateManyToMany(f,u),n[l]=null;else if(h>1)for(var c=0;c1)for(var s=0;s30}var Yo=tt,Ca=G,mB=typeof Int32Array>"u"?Array:Int32Array,_B="e\0\0",N_=-1,SB=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],xB=["_approximateExtent"],B_,iu,Xo,Zo,$v,ou,Yv,wB=function(){function r(e,t){this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","lttbDownSample"];var a,n=!1;RC(e)?(a=e.dimensions,this._dimOmitted=e.isDimensionOmitted(),this._schema=e):(n=!0,a=e),a=a||["x","y"];for(var i={},o=[],s={},l=!1,u={},f=0;f=t)){var a=this._store,n=a.getProvider();this._updateOrdinalMeta();var i=this._nameList,o=this._idList,s=n.getSource().sourceFormat,l=s===hr;if(l&&!n.pure)for(var u=[],f=e;f0},r.prototype.ensureUniqueItemVisual=function(e,t){var a=this._itemVisuals,n=a[e];n||(n=a[e]={});var i=n[t];return i==null&&(i=this.getVisual(t),z(i)?i=i.slice():Yo(i)&&(i=B({},i)),n[t]=i),i},r.prototype.setItemVisual=function(e,t,a){var n=this._itemVisuals[e]||{};this._itemVisuals[e]=n,Yo(t)?B(n,t):n[t]=a},r.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},r.prototype.setLayout=function(e,t){Yo(e)?B(this._layout,e):this._layout[e]=t},r.prototype.getLayout=function(e){return this._layout[e]},r.prototype.getItemLayout=function(e){return this._itemLayouts[e]},r.prototype.setItemLayout=function(e,t,a){this._itemLayouts[e]=a?B(this._itemLayouts[e]||{},t):t},r.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},r.prototype.setItemGraphicEl=function(e,t){var a=this.hostModel&&this.hostModel.seriesIndex;Vp(a,this.dataType,e,t),this._graphicEls[e]=t},r.prototype.getItemGraphicEl=function(e){return this._graphicEls[e]},r.prototype.eachItemGraphicEl=function(e,t){C(this._graphicEls,function(a,n){a&&e&&e.call(t,a,n)})},r.prototype.cloneShallow=function(e){return e||(e=new r(this._schema?this._schema:Ca(this.dimensions,this._getDimInfo,this),this.hostModel)),$v(e,this),e._store=this._store,e},r.prototype.wrapMethod=function(e,t){var a=this[e];K(a)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(e),this[e]=function(){var n=a.apply(this,arguments);return t.apply(this,[n].concat(rg(arguments)))})},r.internalField=function(){B_=function(e){var t=e._invertedIndicesMap;C(t,function(a,n){var i=e._dimInfos[n],o=i.ordinalMeta,s=e._store;if(o){a=t[n]=new mB(o.categories.length);for(var l=0;l1&&(l+="__ec__"+f),n[t]=l}}}(),r}();const Me=wB;function Sl(r,e){Ng(r)||(r=Bg(r)),e=e||{};var t=e.coordDimensions||[],a=e.dimensionsDefine||r.dimensionsDefine||[],n=q(),i=[],o=AB(r,t,a,e.dimensionsCount),s=e.canOmitUnusedDimensions&&OC(o),l=a===r.dimensionsDefine,u=l?kC(r):EC(a),f=e.encodeDefine;!f&&e.encodeDefaulter&&(f=e.encodeDefaulter(r,o));for(var h=q(f),v=new HT(o),c=0;c0&&(a.name=n+(i-1)),i++,e.set(n,i)}}function AB(r,e,t,a){var n=Math.max(r.dimensionsDetectedCount||1,e.length,t.length,a||0);return C(e,function(i){var o;tt(i)&&(o=i.dimsDef)&&(n=Math.max(n,o.length))}),n}function TB(r,e,t){if(t||e.hasKey(r)){for(var a=0;e.hasKey(r+a);)a++;r+=a}return e.set(r,!0),r}var CB=function(){function r(e){this.coordSysDims=[],this.axisMap=q(),this.categoryAxisMap=q(),this.coordSysName=e}return r}();function DB(r){var e=r.get("coordinateSystem"),t=new CB(e),a=MB[e];if(a)return a(r,t,t.axisMap,t.categoryAxisMap),t}var MB={cartesian2d:function(r,e,t,a){var n=r.getReferringComponents("xAxis",Qt).models[0],i=r.getReferringComponents("yAxis",Qt).models[0];e.coordSysDims=["x","y"],t.set("x",n),t.set("y",i),Ei(n)&&(a.set("x",n),e.firstCategoryDimIndex=0),Ei(i)&&(a.set("y",i),e.firstCategoryDimIndex==null&&(e.firstCategoryDimIndex=1))},singleAxis:function(r,e,t,a){var n=r.getReferringComponents("singleAxis",Qt).models[0];e.coordSysDims=["single"],t.set("single",n),Ei(n)&&(a.set("single",n),e.firstCategoryDimIndex=0)},polar:function(r,e,t,a){var n=r.getReferringComponents("polar",Qt).models[0],i=n.findAxisModel("radiusAxis"),o=n.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],t.set("radius",i),t.set("angle",o),Ei(i)&&(a.set("radius",i),e.firstCategoryDimIndex=0),Ei(o)&&(a.set("angle",o),e.firstCategoryDimIndex==null&&(e.firstCategoryDimIndex=1))},geo:function(r,e,t,a){e.coordSysDims=["lng","lat"]},parallel:function(r,e,t,a){var n=r.ecModel,i=n.getComponent("parallel",r.get("parallelIndex")),o=e.coordSysDims=i.dimensions.slice();C(i.parallelAxisIndex,function(s,l){var u=n.getComponent("parallelAxis",s),f=o[l];t.set(f,u),Ei(u)&&(a.set(f,u),e.firstCategoryDimIndex==null&&(e.firstCategoryDimIndex=l))})}};function Ei(r){return r.get("type")==="category"}function IB(r,e,t){t=t||{};var a=t.byIndex,n=t.stackedCoordDimension,i,o,s;LB(e)?i=e:(o=e.schema,i=o.dimensions,s=e.store);var l=!!(r&&r.get("stack")),u,f,h,v;if(C(i,function(m,_){U(m)&&(i[_]=m={name:m}),l&&!m.isExtraCoord&&(!a&&!u&&m.ordinalMeta&&(u=m),!f&&m.type!=="ordinal"&&m.type!=="time"&&(!n||n===m.coordDim)&&(f=m))}),f&&!a&&!u&&(a=!0),f){h="__\0ecstackresult_"+r.id,v="__\0ecstackedover_"+r.id,u&&(u.createInvertedIndices=!0);var c=f.coordDim,p=f.type,d=0;C(i,function(m){m.coordDim===c&&d++});var g={name:h,coordDim:c,coordDimIndex:d,type:p,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length},y={name:v,coordDim:v,coordDimIndex:d+1,type:p,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length+1};o?(s&&(g.storeDimIndex=s.ensureCalculationDimension(v,p),y.storeDimIndex=s.ensureCalculationDimension(h,p)),o.appendCalculationDimension(g),o.appendCalculationDimension(y)):(i.push(g),i.push(y))}return{stackedDimension:f&&f.name,stackedByDimension:u&&u.name,isStackedByIndex:a,stackedOverDimension:v,stackResultDimension:h}}function LB(r){return!RC(r.schema)}function ja(r,e){return!!e&&e===r.getCalculationInfo("stackedDimension")}function NC(r,e){return ja(r,e)?r.getCalculationInfo("stackResultDimension"):e}function PB(r,e){var t=r.get("coordinateSystem"),a=yl.get(t),n;return e&&e.coordSysDims&&(n=G(e.coordSysDims,function(i){var o={name:i},s=e.axisMap.get(i);if(s){var l=s.get("type");o.type=Mf(l)}return o})),n||(n=a&&(a.getDimensionsInfo?a.getDimensionsInfo():a.dimensions.slice())||["x","y"]),n}function RB(r,e,t){var a,n;return t&&C(r,function(i,o){var s=i.coordDim,l=t.categoryAxisMap.get(s);l&&(a==null&&(a=o),i.ordinalMeta=l.getOrdinalMeta(),e&&(i.createInvertedIndices=!0)),i.otherDims.itemName!=null&&(n=!0)}),!n&&a!=null&&(r[a].otherDims.itemName=0),a}function ma(r,e,t){t=t||{};var a=e.getSourceManager(),n,i=!1;r?(i=!0,n=Bg(r)):(n=a.getSource(),i=n.sourceFormat===hr);var o=DB(e),s=PB(e,o),l=t.useEncodeDefaulter,u=K(l)?l:l?it(bT,s,e):null,f={coordDimensions:s,generateCoord:t.generateCoord,encodeDefine:e.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!i},h=Sl(n,f),v=RB(h.dimensions,t.createInvertedIndices,o),c=i?null:a.getSharedDataStore(h),p=IB(e,{schema:h,store:c}),d=new Me(h,e);d.setCalculationInfo(p);var g=v!=null&&EB(n)?function(y,m,_,S){return S===v?_:this.defaultDimValueGetter(y,m,_,S)}:null;return d.hasItemOption=!1,d.initData(i?n:c,null,g),d}function EB(r){if(r.sourceFormat===hr){var e=kB(r.data||[]);return!z(yo(e))}}function kB(r){for(var e=0;et[1]&&(t[1]=e[1])},r.prototype.unionExtentFromData=function(e,t){this.unionExtent(e.getApproximateExtent(t))},r.prototype.getExtent=function(){return this._extent.slice()},r.prototype.setExtent=function(e,t){var a=this._extent;isNaN(e)||(a[0]=e),isNaN(t)||(a[1]=t)},r.prototype.isInExtentRange=function(e){return this._extent[0]<=e&&this._extent[1]>=e},r.prototype.isBlank=function(){return this._isBlank},r.prototype.setBlank=function(e){this._isBlank=e},r}();ih(BC);const _a=BC;var OB=0,NB=function(){function r(e){this.categories=e.categories||[],this._needCollect=e.needCollect,this._deduplication=e.deduplication,this.uid=++OB}return r.createByAxisModel=function(e){var t=e.option,a=t.data,n=a&&G(a,BB);return new r({categories:n,needCollect:!n,deduplication:t.dedplication!==!1})},r.prototype.getOrdinal=function(e){return this._getOrCreateMap().get(e)},r.prototype.parseAndCollect=function(e){var t,a=this._needCollect;if(!U(e)&&!a)return e;if(a&&!this._deduplication)return t=this.categories.length,this.categories[t]=e,t;var n=this._getOrCreateMap();return t=n.get(e),t==null&&(a?(t=this.categories.length,this.categories[t]=e,n.set(e,t)):t=NaN),t},r.prototype._getOrCreateMap=function(){return this._map||(this._map=q(this.categories))},r}();function BB(r){return tt(r)&&r.value!=null?r.value:r+""}const sd=NB;function ld(r){return r.type==="interval"||r.type==="log"}function VB(r,e,t,a){var n={},i=r[1]-r[0],o=n.interval=Xb(i/e,!0);t!=null&&oa&&(o=n.interval=a);var s=n.intervalPrecision=VC(o),l=n.niceTickExtent=[Yt(Math.ceil(r[0]/o)*o,s),Yt(Math.floor(r[1]/o)*o,s)];return zB(l,r),n}function Xv(r){var e=Math.pow(10,hg(r)),t=r/e;return t?t===2?t=3:t===3?t=5:t*=2:t=1,Yt(t*e)}function VC(r){return Br(r)+2}function V_(r,e,t){r[e]=Math.max(Math.min(r[e],t[1]),t[0])}function zB(r,e){!isFinite(r[0])&&(r[0]=e[0]),!isFinite(r[1])&&(r[1]=e[1]),V_(r,0,e),V_(r,1,e),r[0]>r[1]&&(r[0]=r[1])}function Ch(r,e){return r>=e[0]&&r<=e[1]}function Dh(r,e){return e[1]===e[0]?.5:(r-e[0])/(e[1]-e[0])}function Mh(r,e){return r*(e[1]-e[0])+e[0]}var zC=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;a.type="ordinal";var n=a.getSetting("ordinalMeta");return n||(n=new sd({})),z(n)&&(n=new sd({categories:G(n,function(i){return tt(i)?i.value:i})})),a._ordinalMeta=n,a._extent=a.getSetting("extent")||[0,n.categories.length-1],a}return e.prototype.parse=function(t){return t==null?NaN:U(t)?this._ordinalMeta.getOrdinal(t):Math.round(t)},e.prototype.contain=function(t){return t=this.parse(t),Ch(t,this._extent)&&this._ordinalMeta.categories[t]!=null},e.prototype.normalize=function(t){return t=this._getTickNumber(this.parse(t)),Dh(t,this._extent)},e.prototype.scale=function(t){return t=Math.round(Mh(t,this._extent)),this.getRawOrdinalNumber(t)},e.prototype.getTicks=function(){for(var t=[],a=this._extent,n=a[0];n<=a[1];)t.push({value:n}),n++;return t},e.prototype.getMinorTicks=function(t){},e.prototype.setSortInfo=function(t){if(t==null){this._ordinalNumbersByTick=this._ticksByOrdinalNumber=null;return}for(var a=t.ordinalNumbers,n=this._ordinalNumbersByTick=[],i=this._ticksByOrdinalNumber=[],o=0,s=this._ordinalMeta.categories.length,l=Math.min(s,a.length);o=0&&t=0&&t=t},e.prototype.getOrdinalMeta=function(){return this._ordinalMeta},e.prototype.calcNiceTicks=function(){},e.prototype.calcNiceExtent=function(){},e.type="ordinal",e}(_a);_a.registerClass(zC);const Qg=zC;var Dn=Yt,GC=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type="interval",t._interval=0,t._intervalPrecision=2,t}return e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return Ch(t,this._extent)},e.prototype.normalize=function(t){return Dh(t,this._extent)},e.prototype.scale=function(t){return Mh(t,this._extent)},e.prototype.setExtent=function(t,a){var n=this._extent;isNaN(t)||(n[0]=parseFloat(t)),isNaN(a)||(n[1]=parseFloat(a))},e.prototype.unionExtent=function(t){var a=this._extent;t[0]a[1]&&(a[1]=t[1]),this.setExtent(a[0],a[1])},e.prototype.getInterval=function(){return this._interval},e.prototype.setInterval=function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=VC(t)},e.prototype.getTicks=function(t){var a=this._interval,n=this._extent,i=this._niceExtent,o=this._intervalPrecision,s=[];if(!a)return s;var l=1e4;n[0]l)return[];var f=s.length?s[s.length-1].value:i[1];return n[1]>f&&(t?s.push({value:Dn(f+a,o)}):s.push({value:n[1]})),s},e.prototype.getMinorTicks=function(t){for(var a=this.getTicks(!0),n=[],i=this.getExtent(),o=1;oi[0]&&c0&&(i=i===null?s:Math.min(i,s))}t[a]=i}}return t}function WC(r){var e=HB(r),t=[];return C(r,function(a){var n=a.coordinateSystem,i=n.getBaseAxis(),o=i.getExtent(),s;if(i.type==="category")s=i.getBandWidth();else if(i.type==="value"||i.type==="time"){var l=i.dim+"_"+i.index,u=e[l],f=Math.abs(o[1]-o[0]),h=i.scale.getExtent(),v=Math.abs(h[1]-h[0]);s=u?f/v*u:f}else{var c=a.getData();s=Math.abs(o[1]-o[0])/c.count()}var p=H(a.get("barWidth"),s),d=H(a.get("barMaxWidth"),s),g=H(a.get("barMinWidth")||(ZC(a)?.5:1),s),y=a.get("barGap"),m=a.get("barCategoryGap");t.push({bandWidth:s,barWidth:p,barMaxWidth:d,barMinWidth:g,barGap:y,barCategoryGap:m,axisKey:jg(i),stackId:Jg(a)})}),UC(t)}function UC(r){var e={};C(r,function(a,n){var i=a.axisKey,o=a.bandWidth,s=e[i]||{bandWidth:o,remainedWidth:o,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},l=s.stacks;e[i]=s;var u=a.stackId;l[u]||s.autoWidthCount++,l[u]=l[u]||{width:0,maxWidth:0};var f=a.barWidth;f&&!l[u].width&&(l[u].width=f,f=Math.min(s.remainedWidth,f),s.remainedWidth-=f);var h=a.barMaxWidth;h&&(l[u].maxWidth=h);var v=a.barMinWidth;v&&(l[u].minWidth=v);var c=a.barGap;c!=null&&(s.gap=c);var p=a.barCategoryGap;p!=null&&(s.categoryGap=p)});var t={};return C(e,function(a,n){t[n]={};var i=a.stacks,o=a.bandWidth,s=a.categoryGap;if(s==null){var l=mt(i).length;s=Math.max(35-l*4,15)+"%"}var u=H(s,o),f=H(a.gap,1),h=a.remainedWidth,v=a.autoWidthCount,c=(h-u)/(v+(v-1)*f);c=Math.max(c,0),C(i,function(y){var m=y.maxWidth,_=y.minWidth;if(y.width){var S=y.width;m&&(S=Math.min(S,m)),_&&(S=Math.max(S,_)),y.width=S,h-=S+f*S,v--}else{var S=c;m&&mS&&(S=_),S!==c&&(y.width=S,h-=S+f*S,v--)}}),c=(h-u)/(v+(v-1)*f),c=Math.max(c,0);var p=0,d;C(i,function(y,m){y.width||(y.width=c),d=y,p+=y.width*(1+f)}),d&&(p-=d.width*f);var g=-p/2;C(i,function(y,m){t[n][m]=t[n][m]||{bandWidth:o,offset:g,width:y.width},g+=y.width*(1+f)})}),t}function WB(r,e,t){if(r&&e){var a=r[jg(e)];return a!=null&&t!=null?a[Jg(t)]:a}}function $C(r,e){var t=HC(r,e),a=WC(t);C(t,function(n){var i=n.getData(),o=n.coordinateSystem,s=o.getBaseAxis(),l=Jg(n),u=a[jg(s)][l],f=u.offset,h=u.width;i.setLayout({bandWidth:u.bandWidth,offset:f,size:h})})}function YC(r){return{seriesType:r,plan:Do(),reset:function(e){if(XC(e)){var t=e.getData(),a=e.coordinateSystem,n=a.getBaseAxis(),i=a.getOtherAxis(n),o=t.getDimensionIndex(t.mapDimension(i.dim)),s=t.getDimensionIndex(t.mapDimension(n.dim)),l=e.get("showBackground",!0),u=t.mapDimension(i.dim),f=t.getCalculationInfo("stackResultDimension"),h=ja(t,u)&&!!t.getCalculationInfo("stackedOnSeries"),v=i.isHorizontal(),c=UB(n,i),p=ZC(e),d=e.get("barMinHeight")||0,g=f&&t.getDimensionIndex(f),y=t.getLayout("size"),m=t.getLayout("offset");return{progress:function(_,S){for(var w=_.count,x=p&&zr(w*3),b=p&&l&&zr(w*3),A=p&&zr(w),T=a.master.getRect(),D=v?T.width:T.height,M,I=S.getStore(),L=0;(M=_.next())!=null;){var P=I.get(h?g:o,M),R=I.get(s,M),E=c,N=void 0;h&&(N=+P-I.get(o,M));var O=void 0,V=void 0,F=void 0,W=void 0;if(v){var X=a.dataToPoint([P,R]);if(h){var Q=a.dataToPoint([N,R]);E=Q[0]}O=E,V=X[1]+m,F=X[0]-E,W=y,Math.abs(F)>>1;r[n][1]n&&(this._approxInterval=n);var s=su.length,l=Math.min($B(su,this._approxInterval,0,s),s-1);this._interval=su[l][1],this._minLevelUnit=su[Math.max(l-1,0)][0]},e.prototype.parse=function(t){return Ct(t)?t:+$r(t)},e.prototype.contain=function(t){return Ch(this.parse(t),this._extent)},e.prototype.normalize=function(t){return Dh(this.parse(t),this._extent)},e.prototype.scale=function(t){return Mh(t,this._extent)},e.type="time",e}(tn),su=[["second",Ig],["minute",Lg],["hour",Cs],["quarter-day",Cs*6],["half-day",Cs*12],["day",ir*1.2],["half-week",ir*3.5],["week",ir*7],["month",ir*31],["quarter",ir*95],["half-year",C0/2],["year",C0]];function YB(r,e,t,a){var n=$r(e),i=$r(t),o=function(p){return M0(n,p,a)===M0(i,p,a)},s=function(){return o("year")},l=function(){return s()&&o("month")},u=function(){return l()&&o("day")},f=function(){return u()&&o("hour")},h=function(){return f()&&o("minute")},v=function(){return h()&&o("second")},c=function(){return v()&&o("millisecond")};switch(r){case"year":return s();case"month":return l();case"day":return u();case"hour":return f();case"minute":return h();case"second":return v();case"millisecond":return c()}}function XB(r,e){return r/=ir,r>16?16:r>7.5?7:r>3.5?4:r>1.5?2:1}function ZB(r){var e=30*ir;return r/=e,r>6?6:r>3?3:r>2?2:1}function qB(r){return r/=Cs,r>12?12:r>6?6:r>3.5?4:r>2?2:1}function z_(r,e){return r/=e?Lg:Ig,r>30?30:r>20?20:r>15?15:r>10?10:r>5?5:r>2?2:1}function KB(r){return Xb(r,!0)}function QB(r,e,t){var a=new Date(r);switch(eo(e)){case"year":case"month":a[lT(t)](0);case"day":a[uT(t)](1);case"hour":a[fT(t)](0);case"minute":a[hT(t)](0);case"second":a[vT(t)](0),a[cT(t)](0)}return a.getTime()}function JB(r,e,t,a){var n=1e4,i=oT,o=0;function s(D,M,I,L,P,R,E){for(var N=new Date(M),O=M,V=N[L]();O1&&R===0&&I.unshift({value:I[0].value-O})}}for(var R=0;R=a[0]&&m<=a[1]&&h++)}var _=(a[1]-a[0])/e;if(h>_*1.5&&v>_/1.5||(u.push(g),h>_||r===i[c]))break}f=[]}}}for(var S=Pt(G(u,function(D){return Pt(D,function(M){return M.value>=a[0]&&M.value<=a[1]&&!M.notAdd})}),function(D){return D.length>0}),w=[],x=S.length-1,c=0;c0;)i*=10;var s=[Yt(eV(a[0]/i)*i),Yt(tV(a[1]/i)*i)];this._interval=i,this._niceExtent=s}},e.prototype.calcNiceExtent=function(t){Ls.calcNiceExtent.call(this,t),this._fixMin=t.fixMin,this._fixMax=t.fixMax},e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return t=pr(t)/pr(this.base),Ch(t,this._extent)},e.prototype.normalize=function(t){return t=pr(t)/pr(this.base),Dh(t,this._extent)},e.prototype.scale=function(t){return t=Mh(t,this._extent),lu(this.base,t)},e.type="log",e}(_a),QC=ty.prototype;QC.getMinorTicks=Ls.getMinorTicks;QC.getLabel=Ls.getLabel;function uu(r,e){return jB(r,Br(e))}_a.registerClass(ty);const rV=ty;var aV=function(){function r(e,t,a){this._prepareParams(e,t,a)}return r.prototype._prepareParams=function(e,t,a){a[1]0&&l>0&&!u&&(s=0),s<0&&l<0&&!f&&(l=0));var v=this._determinedMin,c=this._determinedMax;return v!=null&&(s=v,u=!0),c!=null&&(l=c,f=!0),{min:s,max:l,minFixed:u,maxFixed:f,isBlank:h}},r.prototype.modifyDataMinMax=function(e,t){this[iV[e]]=t},r.prototype.setDeterminedMinMax=function(e,t){var a=nV[e];this[a]=t},r.prototype.freeze=function(){this.frozen=!0},r}(),nV={min:"_determinedMin",max:"_determinedMax"},iV={min:"_dataMin",max:"_dataMax"};function JC(r,e,t){var a=r.rawExtentInfo;return a||(a=new aV(r,e,t),r.rawExtentInfo=a,a)}function fu(r,e){return e==null?null:Os(e)?NaN:r.parse(e)}function jC(r,e){var t=r.type,a=JC(r,e,r.getExtent()).calculate();r.setBlank(a.isBlank);var n=a.min,i=a.max,o=e.ecModel;if(o&&t==="time"){var s=HC("bar",o),l=!1;if(C(s,function(h){l=l||h.getBaseAxis()===e.axis}),l){var u=WC(s),f=oV(n,i,e,u);n=f.min,i=f.max}}return{extent:[n,i],fixMin:a.minFixed,fixMax:a.maxFixed}}function oV(r,e,t,a){var n=t.axis.getExtent(),i=n[1]-n[0],o=WB(a,t.axis);if(o===void 0)return{min:r,max:e};var s=1/0;C(o,function(c){s=Math.min(c.offset,s)});var l=-1/0;C(o,function(c){l=Math.max(c.offset+c.width,l)}),s=Math.abs(s),l=Math.abs(l);var u=s+l,f=e-r,h=1-(s+l)/i,v=f/h-f;return e+=v*(l/u),r-=v*(s/u),{min:r,max:e}}function so(r,e){var t=e,a=jC(r,t),n=a.extent,i=t.get("splitNumber");r instanceof rV&&(r.base=t.get("logBase"));var o=r.type,s=t.get("interval"),l=o==="interval"||o==="time";r.setExtent(n[0],n[1]),r.calcNiceExtent({splitNumber:i,fixMin:a.fixMin,fixMax:a.fixMax,minInterval:l?t.get("minInterval"):null,maxInterval:l?t.get("maxInterval"):null}),s!=null&&r.setInterval&&r.setInterval(s)}function Ih(r,e){if(e=e||r.get("type"),e)switch(e){case"category":return new Qg({ordinalMeta:r.getOrdinalMeta?r.getOrdinalMeta():r.getCategories(),extent:[1/0,-1/0]});case"time":return new KC({locale:r.ecModel.getLocaleModel(),useUTC:r.ecModel.get("useUTC")});default:return new(_a.getClass(e)||tn)}}function sV(r){var e=r.scale.getExtent(),t=e[0],a=e[1];return!(t>0&&a>0||t<0&&a<0)}function xl(r){var e=r.getLabelModel().get("formatter"),t=r.type==="category"?r.scale.getExtent()[0]:null;return r.scale.type==="time"?function(a){return function(n,i){return r.scale.getFormattedLabel(n,i,a)}}(e):U(e)?function(a){return function(n){var i=r.scale.getLabel(n),o=a.replace("{value}",i??"");return o}}(e):K(e)?function(a){return function(n,i){return t!=null&&(i=n.value-t),a(ey(r,n),i,n.level!=null?{level:n.level}:null)}}(e):function(a){return r.scale.getLabel(a)}}function ey(r,e){return r.type==="category"?r.scale.getLabel(e):e.value}function lV(r){var e=r.model,t=r.scale;if(!(!e.get(["axisLabel","show"])||t.isBlank())){var a,n,i=t.getExtent();t instanceof Qg?n=t.count():(a=t.getTicks(),n=a.length);var o=r.getLabelModel(),s=xl(r),l,u=1;n>40&&(u=Math.ceil(n/40));for(var f=0;fr[1]&&(r[1]=n[1])})}var wl=function(){function r(){}return r.prototype.getNeedCrossZero=function(){var e=this.option;return!e.scale},r.prototype.getCoordSysModel=function(){},r}(),hV=1e-8;function F_(r,e){return Math.abs(r-e)n&&(a=o,n=l)}if(a)return cV(a.exterior);var u=this.getBoundingRect();return[u.x+u.width/2,u.y+u.height/2]},e.prototype.getBoundingRect=function(t){var a=this._rect;if(a&&!t)return a;var n=[1/0,1/0],i=[-1/0,-1/0],o=this.geometries;return C(o,function(s){s.type==="polygon"?H_(s.exterior,n,i,t):C(s.points,function(l){H_(l,n,i,t)})}),isFinite(n[0])&&isFinite(n[1])&&isFinite(i[0])&&isFinite(i[1])||(n[0]=n[1]=i[0]=i[1]=0),a=new ft(n[0],n[1],i[0]-n[0],i[1]-n[1]),t||(this._rect=a),a},e.prototype.contain=function(t){var a=this.getBoundingRect(),n=this.geometries;if(!a.contain(t[0],t[1]))return!1;t:for(var i=0,o=n.length;i>1^-(s&1),l=l>>1^-(l&1),s+=n,l+=i,n=s,i=l,a.push([s/t,l/t])}return a}function gV(r,e){return r=dV(r),G(Pt(r.features,function(t){return t.geometry&&t.properties&&t.geometry.coordinates.length>0}),function(t){var a=t.properties,n=t.geometry,i=[];switch(n.type){case"Polygon":var o=n.coordinates;i.push(new W_(o[0],o.slice(1)));break;case"MultiPolygon":C(n.coordinates,function(l){l[0]&&i.push(new W_(l[0],l.slice(1)))});break;case"LineString":i.push(new U_([n.coordinates]));break;case"MultiLineString":i.push(new U_(n.coordinates))}var s=new rD(a[e||"name"],i,a.cp);return s.properties=a,s})}var Qs=wt();function yV(r){return r.type==="category"?_V(r):xV(r)}function mV(r,e){return r.type==="category"?SV(r,e):{ticks:G(r.scale.getTicks(),function(t){return t.value})}}function _V(r){var e=r.getLabelModel(),t=nD(r,e);return!e.get("show")||r.scale.isBlank()?{labels:[],labelCategoryInterval:t.labelCategoryInterval}:t}function nD(r,e){var t=iD(r,"labels"),a=ry(e),n=oD(t,a);if(n)return n;var i,o;return K(a)?i=uD(r,a):(o=a==="auto"?wV(r):a,i=lD(r,o)),sD(t,a,{labels:i,labelCategoryInterval:o})}function SV(r,e){var t=iD(r,"ticks"),a=ry(e),n=oD(t,a);if(n)return n;var i,o;if((!e.get("show")||r.scale.isBlank())&&(i=[]),K(a))i=uD(r,a,!0);else if(a==="auto"){var s=nD(r,r.getLabelModel());o=s.labelCategoryInterval,i=G(s.labels,function(l){return l.tickValue})}else o=a,i=lD(r,o,!0);return sD(t,a,{ticks:i,tickCategoryInterval:o})}function xV(r){var e=r.scale.getTicks(),t=xl(r);return{labels:G(e,function(a,n){return{level:a.level,formattedLabel:t(a,n),rawLabel:r.scale.getLabel(a),tickValue:a.value}})}}function iD(r,e){return Qs(r)[e]||(Qs(r)[e]=[])}function oD(r,e){for(var t=0;t40&&(s=Math.max(1,Math.floor(o/40)));for(var l=i[0],u=r.dataToCoord(l+1)-r.dataToCoord(l),f=Math.abs(u*Math.cos(a)),h=Math.abs(u*Math.sin(a)),v=0,c=0;l<=i[1];l+=s){var p=0,d=0,g=fl(t({value:l}),e.font,"center","top");p=g.width*1.3,d=g.height*1.3,v=Math.max(v,p,7),c=Math.max(c,d,7)}var y=v/f,m=c/h;isNaN(y)&&(y=1/0),isNaN(m)&&(m=1/0);var _=Math.max(0,Math.floor(Math.min(y,m))),S=Qs(r.model),w=r.getExtent(),x=S.lastAutoInterval,b=S.lastTickCount;return x!=null&&b!=null&&Math.abs(x-_)<=1&&Math.abs(b-o)<=1&&x>_&&S.axisExtent0===w[0]&&S.axisExtent1===w[1]?_=x:(S.lastTickCount=o,S.lastAutoInterval=_,S.axisExtent0=w[0],S.axisExtent1=w[1]),_}function AV(r){var e=r.getLabelModel();return{axisRotate:r.getRotate?r.getRotate():r.isHorizontal&&!r.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}function lD(r,e,t){var a=xl(r),n=r.scale,i=n.getExtent(),o=r.getLabelModel(),s=[],l=Math.max((e||0)+1,1),u=i[0],f=n.count();u!==0&&l>1&&f/l>2&&(u=Math.round(Math.ceil(u/l)*l));var h=tD(r),v=o.get("showMinLabel")||h,c=o.get("showMaxLabel")||h;v&&u!==i[0]&&d(i[0]);for(var p=u;p<=i[1];p+=l)d(p);c&&p-l!==i[1]&&d(i[1]);function d(g){var y={value:g};s.push(t?g:{formattedLabel:a(y),rawLabel:n.getLabel(y),tickValue:g})}return s}function uD(r,e,t){var a=r.scale,n=xl(r),i=[];return C(a.getTicks(),function(o){var s=a.getLabel(o),l=o.value;e(o.value,s)&&i.push(t?l:{formattedLabel:n(o),rawLabel:s,tickValue:l})}),i}var $_=[0,1],TV=function(){function r(e,t,a){this.onBand=!1,this.inverse=!1,this.dim=e,this.scale=t,this._extent=a||[0,0]}return r.prototype.contain=function(e){var t=this._extent,a=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return e>=a&&e<=n},r.prototype.containData=function(e){return this.scale.contain(e)},r.prototype.getExtent=function(){return this._extent.slice()},r.prototype.getPixelPrecision=function(e){return $b(e||this.scale.getExtent(),this._extent)},r.prototype.setExtent=function(e,t){var a=this._extent;a[0]=e,a[1]=t},r.prototype.dataToCoord=function(e,t){var a=this._extent,n=this.scale;return e=n.normalize(e),this.onBand&&n.type==="ordinal"&&(a=a.slice(),Y_(a,n.count())),Lt(e,$_,a,t)},r.prototype.coordToData=function(e,t){var a=this._extent,n=this.scale;this.onBand&&n.type==="ordinal"&&(a=a.slice(),Y_(a,n.count()));var i=Lt(e,a,$_,t);return this.scale.scale(i)},r.prototype.pointToData=function(e,t){},r.prototype.getTicksCoords=function(e){e=e||{};var t=e.tickModel||this.getTickModel(),a=mV(this,t),n=a.ticks,i=G(n,function(s){return{coord:this.dataToCoord(this.scale.type==="ordinal"?this.scale.getRawOrdinalNumber(s):s),tickValue:s}},this),o=t.get("alignWithLabel");return CV(this,i,o,e.clamp),i},r.prototype.getMinorTicksCoords=function(){if(this.scale.type==="ordinal")return[];var e=this.model.getModel("minorTick"),t=e.get("splitNumber");t>0&&t<100||(t=5);var a=this.scale.getMinorTicks(t),n=G(a,function(i){return G(i,function(o){return{coord:this.dataToCoord(o),tickValue:o}},this)},this);return n},r.prototype.getViewLabels=function(){return yV(this).labels},r.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},r.prototype.getTickModel=function(){return this.model.getModel("axisTick")},r.prototype.getBandWidth=function(){var e=this._extent,t=this.scale.getExtent(),a=t[1]-t[0]+(this.onBand?1:0);a===0&&(a=1);var n=Math.abs(e[1]-e[0]);return Math.abs(n)/a},r.prototype.calculateCategoryInterval=function(){return bV(this)},r}();function Y_(r,e){var t=r[1]-r[0],a=e,n=t/a/2;r[0]+=n,r[1]-=n}function CV(r,e,t,a){var n=e.length;if(!r.onBand||t||!n)return;var i=r.getExtent(),o,s;if(n===1)e[0].coord=i[0],o=e[1]={coord:i[0]};else{var l=e[n-1].tickValue-e[0].tickValue,u=(e[n-1].coord-e[0].coord)/l;C(e,function(c){c.coord-=u/2});var f=r.scale.getExtent();s=1+f[1]-e[n-1].tickValue,o={coord:e[n-1].coord+u*s},e.push(o)}var h=i[0]>i[1];v(e[0].coord,i[0])&&(a?e[0].coord=i[0]:e.shift()),a&&v(i[0],e[0].coord)&&e.unshift({coord:i[0]}),v(i[1],o.coord)&&(a?o.coord=i[1]:e.pop()),a&&v(o.coord,i[1])&&e.push({coord:i[1]});function v(c,p){return c=Yt(c),p=Yt(p),h?c>p:cn&&(n+=qo);var c=Math.atan2(s,o);if(c<0&&(c+=qo),c>=a&&c<=n||c+qo>=a&&c+qo<=n)return l[0]=f,l[1]=h,u-t;var p=t*Math.cos(a)+r,d=t*Math.sin(a)+e,g=t*Math.cos(n)+r,y=t*Math.sin(n)+e,m=(p-o)*(p-o)+(d-s)*(d-s),_=(g-o)*(g-o)+(y-s)*(y-s);return m<_?(l[0]=p,l[1]=d,Math.sqrt(m)):(l[0]=g,l[1]=y,Math.sqrt(_))}function Lf(r,e,t,a,n,i,o,s){var l=n-r,u=i-e,f=t-r,h=a-e,v=Math.sqrt(f*f+h*h);f/=v,h/=v;var c=l*f+u*h,p=c/v;s&&(p=Math.min(Math.max(p,0),1)),p*=v;var d=o[0]=r+p*f,g=o[1]=e+p*h;return Math.sqrt((d-n)*(d-n)+(g-i)*(g-i))}function fD(r,e,t,a,n,i,o){t<0&&(r=r+t,t=-t),a<0&&(e=e+a,a=-a);var s=r+t,l=e+a,u=o[0]=Math.min(Math.max(n,r),s),f=o[1]=Math.min(Math.max(i,e),l);return Math.sqrt((u-n)*(u-n)+(f-i)*(f-i))}var mr=[];function LV(r,e,t){var a=fD(e.x,e.y,e.width,e.height,r.x,r.y,mr);return t.set(mr[0],mr[1]),a}function PV(r,e,t){for(var a=0,n=0,i=0,o=0,s,l,u=1/0,f=e.data,h=r.x,v=r.y,c=0;c0){e=e/180*Math.PI,Sr.fromArray(r[0]),kt.fromArray(r[1]),Xt.fromArray(r[2]),st.sub(Gr,Sr,kt),st.sub(Nr,Xt,kt);var t=Gr.len(),a=Nr.len();if(!(t<.001||a<.001)){Gr.scale(1/t),Nr.scale(1/a);var n=Gr.dot(Nr),i=Math.cos(e);if(i1&&st.copy(De,Xt),De.toArray(r[1])}}}}function RV(r,e,t){if(t<=180&&t>0){t=t/180*Math.PI,Sr.fromArray(r[0]),kt.fromArray(r[1]),Xt.fromArray(r[2]),st.sub(Gr,kt,Sr),st.sub(Nr,Xt,kt);var a=Gr.len(),n=Nr.len();if(!(a<.001||n<.001)){Gr.scale(1/a),Nr.scale(1/n);var i=Gr.dot(e),o=Math.cos(t);if(i=l)st.copy(De,Xt);else{De.scaleAndAdd(Nr,s/Math.tan(Math.PI/2-f));var h=Xt.x!==kt.x?(De.x-kt.x)/(Xt.x-kt.x):(De.y-kt.y)/(Xt.y-kt.y);if(isNaN(h))return;h<0?st.copy(De,kt):h>1&&st.copy(De,Xt)}De.toArray(r[1])}}}}function Z_(r,e,t,a){var n=t==="normal",i=n?r:r.ensureState(t);i.ignore=e;var o=a.get("smooth");o&&o===!0&&(o=.3),i.shape=i.shape||{},o>0&&(i.shape.smooth=o);var s=a.getModel("lineStyle").getLineStyle();n?r.useStyle(s):i.style=s}function EV(r,e){var t=e.smooth,a=e.points;if(a)if(r.moveTo(a[0][0],a[0][1]),t>0&&a.length>=3){var n=ka(a[0],a[1]),i=ka(a[1],a[2]);if(!n||!i){r.lineTo(a[1][0],a[1][1]),r.lineTo(a[2][0],a[2][1]);return}var o=Math.min(n,i)*t,s=Bu([],a[1],a[0],o/n),l=Bu([],a[1],a[2],o/i),u=Bu([],s,l,.5);r.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),r.bezierCurveTo(l[0],l[1],l[0],l[1],a[2][0],a[2][1])}else for(var f=1;f0&&i&&w(-f/o,0,o);var d=r[0],g=r[o-1],y,m;_(),y<0&&x(-y,.8),m<0&&x(m,.8),_(),S(y,m,1),S(m,y,-1),_(),y<0&&b(-y),m<0&&b(m);function _(){y=d.rect[e]-a,m=n-g.rect[e]-g.rect[t]}function S(A,T,D){if(A<0){var M=Math.min(T,-A);if(M>0){w(M*D,0,o);var I=M+A;I<0&&x(-I*D,1)}else x(-A*D,1)}}function w(A,T,D){A!==0&&(u=!0);for(var M=T;M0)for(var I=0;I0;I--){var E=D[I-1]*R;w(-E,I,o)}}}function b(A){var T=A<0?-1:1;A=Math.abs(A);for(var D=Math.ceil(A/(o-1)),M=0;M0?w(D,0,M+1):w(-D,o-M-1,o),A-=D,A<=0)return}return u}function kV(r,e,t,a){return cD(r,"x","width",e,t,a)}function pD(r,e,t,a){return cD(r,"y","height",e,t,a)}function dD(r){var e=[];r.sort(function(d,g){return g.priority-d.priority});var t=new ft(0,0,0,0);function a(d){if(!d.ignore){var g=d.ensureState("emphasis");g.ignore==null&&(g.ignore=!1)}d.ignore=!0}for(var n=0;n=0&&a.attr(i.oldLayoutSelect),vt(v,"emphasis")>=0&&a.attr(i.oldLayoutEmphasis)),Dt(a,u,t,l)}else if(a.attr(u),!xo(a).valueAnimation){var h=lt(a.style.opacity,1);a.style.opacity=0,zt(a,{style:{opacity:h}},t,l)}if(i.oldLayout=u,a.states.select){var c=i.oldLayoutSelect={};hu(c,u,vu),hu(c,a.states.select,vu)}if(a.states.emphasis){var p=i.oldLayoutEmphasis={};hu(p,u,vu),hu(p,a.states.emphasis,vu)}eT(a,l,f,t,t)}if(n&&!n.ignore&&!n.invisible){var i=BV(n),o=i.oldLayout,d={points:n.shape.points};o?(n.attr({shape:o}),Dt(n,{shape:d},t)):(n.setShape(d),n.style.strokePercent=0,zt(n,{style:{strokePercent:1}},t)),i.oldLayout=d}},r}();const zV=VV;var Qv=wt();function GV(r){r.registerUpdateLifecycle("series:beforeupdate",function(e,t,a){var n=Qv(t).labelManager;n||(n=Qv(t).labelManager=new zV),n.clearLabels()}),r.registerUpdateLifecycle("series:layoutlabels",function(e,t,a){var n=Qv(t).labelManager;a.updatedSeries.forEach(function(i){n.addLabelsOfSeries(t.getViewOfSeriesModel(i))}),n.updateLayoutConfig(t),n.layout(t),n.processLabelsOverall()})}var Jv=Math.sin,jv=Math.cos,gD=Math.PI,In=Math.PI*2,FV=180/gD,HV=function(){function r(){}return r.prototype.reset=function(e){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,e||4)},r.prototype.moveTo=function(e,t){this._add("M",e,t)},r.prototype.lineTo=function(e,t){this._add("L",e,t)},r.prototype.bezierCurveTo=function(e,t,a,n,i,o){this._add("C",e,t,a,n,i,o)},r.prototype.quadraticCurveTo=function(e,t,a,n){this._add("Q",e,t,a,n)},r.prototype.arc=function(e,t,a,n,i,o){this.ellipse(e,t,a,a,0,n,i,o)},r.prototype.ellipse=function(e,t,a,n,i,o,s,l){var u=s-o,f=!l,h=Math.abs(u),v=za(h-In)||(f?u>=In:-u>=In),c=u>0?u%In:u%In+In,p=!1;v?p=!0:za(h)?p=!1:p=c>=gD==!!f;var d=e+a*jv(o),g=t+n*Jv(o);this._start&&this._add("M",d,g);var y=Math.round(i*FV);if(v){var m=1/this._p,_=(f?1:-1)*(In-m);this._add("A",a,n,y,1,+f,e+a*jv(o+_),t+n*Jv(o+_)),m>.01&&this._add("A",a,n,y,0,+f,d,g)}else{var S=e+a*jv(s),w=t+n*Jv(s);this._add("A",a,n,y,+p,+f,S,w)}},r.prototype.rect=function(e,t,a,n){this._add("M",e,t),this._add("l",a,0),this._add("l",0,n),this._add("l",-a,0),this._add("Z")},r.prototype.closePath=function(){this._d.length>0&&this._add("Z")},r.prototype._add=function(e,t,a,n,i,o,s,l,u){for(var f=[],h=this._p,v=1;v"}function QV(r){return""}function iy(r,e){e=e||{};var t=e.newline?` +`:"";function a(n){var i=n.children,o=n.tag,s=n.attrs;return KV(o,s)+ke(n.text)+(i?""+t+G(i,function(l){return a(l)}).join(t)+t:"")+QV(o)}return a(r)}function JV(r,e,t){t=t||{};var a=t.newline?` +`:"",n=" {"+a,i=a+"}",o=G(mt(r),function(l){return l+n+G(mt(r[l]),function(u){return u+":"+r[l][u]+";"}).join(a)+i}).join(a),s=G(mt(e),function(l){return"@keyframes "+l+n+G(mt(e[l]),function(u){return u+n+G(mt(e[l][u]),function(f){var h=e[l][u][f];return f==="d"&&(h='path("'+h+'")'),f+":"+h+";"}).join(a)+i}).join(a)+i}).join(a);return!o&&!s?"":[""].join(a)}function hd(r){return{zrId:r,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssClassIdx:0,cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function K_(r,e,t,a){return ie("svg","root",{width:r,height:e,xmlns:mD,"xmlns:xlink":_D,version:"1.1",baseProfile:"full",viewBox:a?"0 0 "+r+" "+e:!1},t)}var Q_={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},En="transform-origin";function jV(r,e,t){var a=B({},r.shape);B(a,e),r.buildPath(t,a);var n=new yD;return n.reset(kb(r)),t.rebuildPath(n,1),n.generateStr(),n.getStr()}function tz(r,e){var t=e.originX,a=e.originY;(t||a)&&(r[En]=t+"px "+a+"px")}var ez={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function xD(r,e){var t=e.zrId+"-ani-"+e.cssAnimIdx++;return e.cssAnims[t]=r,t}function rz(r,e,t){var a=r.shape.paths,n={},i,o;if(C(a,function(l){var u=hd(t.zrId);u.animation=!0,Lh(l,{},u,!0);var f=u.cssAnims,h=u.cssNodes,v=mt(f),c=v.length;if(c){o=v[c-1];var p=f[o];for(var d in p){var g=p[d];n[d]=n[d]||{d:""},n[d].d+=g.d||""}for(var y in h){var m=h[y].animation;m.indexOf(o)>=0&&(i=m)}}}),!!i){e.d=!1;var s=xD(n,t);return i.replace(o,s)}}function J_(r){return U(r)?Q_[r]?"cubic-bezier("+Q_[r]+")":sg(r)?r:"":""}function Lh(r,e,t,a){var n=r.animators,i=n.length,o=[];if(r instanceof Ag){var s=rz(r,e,t);if(s)o.push(s);else if(!i)return}else if(!i)return;for(var l={},u=0;u0}).length){var pt=xD(b,t);return pt+" "+m[0]+" both"}}for(var g in l){var s=d(l[g]);s&&o.push(s)}if(o.length){var y=t.zrId+"-cls-"+t.cssClassIdx++;t.cssNodes["."+y]={animation:o.join(",")},e.class=y}}var Js=Math.round;function wD(r){return r&&U(r.src)}function bD(r){return r&&K(r.toDataURL)}function oy(r,e,t,a){XV(function(n,i){var o=n==="fill"||n==="stroke";o&&Eb(i)?TD(e,r,n,a):o&&lg(i)?CD(t,r,n,a):r[n]=i},e,t,!1),uz(t,r,a)}function j_(r){return za(r[0]-1)&&za(r[1])&&za(r[2])&&za(r[3]-1)}function az(r){return za(r[4])&&za(r[5])}function sy(r,e,t){if(e&&!(az(e)&&j_(e))){var a=t?10:1e4;r.transform=j_(e)?"translate("+Js(e[4]*a)/a+" "+Js(e[5]*a)/a+")":tP(e)}}function t1(r,e,t){for(var a=r.points,n=[],i=0;i"u"){var g="Image width/height must been given explictly in svg-ssr renderer.";Ie(v,g),Ie(c,g)}else if(v==null||c==null){var y=function(D,M){if(D){var I=D.elm,L=v||M.width,P=c||M.height;D.tag==="pattern"&&(u?(P=1,L/=i.width):f&&(L=1,P/=i.height)),D.attrs.width=L,D.attrs.height=P,I&&(I.setAttribute("width",L),I.setAttribute("height",P))}},m=dg(p,null,r,function(D){l||y(x,D),y(h,D)});m&&m.width&&m.height&&(v=v||m.width,c=c||m.height)}h=ie("image","img",{href:p,width:v,height:c}),o.width=v,o.height=c}else n.svgElement&&(h=et(n.svgElement),o.width=n.svgWidth,o.height=n.svgHeight);if(h){var _,S;l?_=S=1:u?(S=1,_=o.width/i.width):f?(_=1,S=o.height/i.height):o.patternUnits="userSpaceOnUse",_!=null&&!isNaN(_)&&(o.width=_),S!=null&&!isNaN(S)&&(o.height=S);var w=Ob(n);w&&(o.patternTransform=w);var x=ie("pattern","",o,[h]),b=iy(x),A=a.patternCache,T=A[b];T||(T=a.zrId+"-p"+a.patternIdx++,A[b]=T,o.id=T,x=a.defs[T]=ie("pattern",T,o,[h])),e[t]=ah(T)}}function fz(r,e,t){var a=t.clipPathCache,n=t.defs,i=a[r.id];if(!i){i=t.zrId+"-c"+t.clipPathIdx++;var o={id:i};a[r.id]=i,n[i]=ie("clipPath",i,o,[AD(r,t)])}e["clip-path"]=ah(i)}function a1(r){return document.createTextNode(r)}function Gn(r,e,t){r.insertBefore(e,t)}function n1(r,e){r.removeChild(e)}function i1(r,e){r.appendChild(e)}function DD(r){return r.parentNode}function MD(r){return r.nextSibling}function tc(r,e){r.textContent=e}var o1=58,hz=120,vz=ie("","");function vd(r){return r===void 0}function kr(r){return r!==void 0}function cz(r,e,t){for(var a={},n=e;n<=t;++n){var i=r[n].key;i!==void 0&&(a[i]=n)}return a}function cs(r,e){var t=r.key===e.key,a=r.tag===e.tag;return a&&t}function js(r){var e,t=r.children,a=r.tag;if(kr(a)){var n=r.elm=SD(a);if(ly(vz,r),z(t))for(e=0;ei?(p=t[l+1]==null?null:t[l+1].elm,ID(r,p,t,n,l)):Rf(r,e,a,i))}function $i(r,e){var t=e.elm=r.elm,a=r.children,n=e.children;r!==e&&(ly(r,e),vd(e.text)?kr(a)&&kr(n)?a!==n&&pz(t,a,n):kr(n)?(kr(r.text)&&tc(t,""),ID(t,null,n,0,n.length-1)):kr(a)?Rf(t,a,0,a.length-1):kr(r.text)&&tc(t,""):r.text!==e.text&&(kr(a)&&Rf(t,a,0,a.length-1),tc(t,e.text)))}function dz(r,e){if(cs(r,e))$i(r,e);else{var t=r.elm,a=DD(t);js(e),a!==null&&(Gn(a,e.elm,MD(t)),Rf(a,[r],0,0))}return e}var gz=0,yz=function(){function r(e,t,a){if(this.type="svg",this.refreshHover=s1(),this.configLayer=s1(),this.storage=t,this._opts=a=B({},a),this.root=e,this._id="zr"+gz++,this._oldVNode=K_(a.width,a.height),e&&!a.ssr){var n=this._viewport=document.createElement("div");n.style.cssText="position:relative;overflow:hidden";var i=this._svgDom=this._oldVNode.elm=SD("svg");ly(null,this._oldVNode),n.appendChild(i),e.appendChild(n)}this.resize(a.width,a.height)}return r.prototype.getType=function(){return this.type},r.prototype.getViewportRoot=function(){return this._viewport},r.prototype.getViewportRootOffset=function(){var e=this.getViewportRoot();if(e)return{offsetLeft:e.offsetLeft||0,offsetTop:e.offsetTop||0}},r.prototype.getSvgDom=function(){return this._svgDom},r.prototype.refresh=function(){if(this.root){var e=this.renderToVNode({willUpdate:!0});e.attrs.style="position:absolute;left:0;top:0;user-select:none",dz(this._oldVNode,e),this._oldVNode=e}},r.prototype.renderOneToVNode=function(e){return r1(e,hd(this._id))},r.prototype.renderToVNode=function(e){e=e||{};var t=this.storage.getDisplayList(!0),a=this._width,n=this._height,i=hd(this._id);i.animation=e.animation,i.willUpdate=e.willUpdate,i.compress=e.compress;var o=[],s=this._bgVNode=mz(a,n,this._backgroundColor,i);s&&o.push(s);var l=e.compress?null:this._mainVNode=ie("g","main",{},[]);this._paintList(t,i,l?l.children:o),l&&o.push(l);var u=G(mt(i.defs),function(v){return i.defs[v]});if(u.length&&o.push(ie("defs","defs",{},u)),e.animation){var f=JV(i.cssNodes,i.cssAnims,{newline:!0});if(f){var h=ie("style","stl",{},[],f);o.push(h)}}return K_(a,n,o,e.useViewBox)},r.prototype.renderToString=function(e){return e=e||{},iy(this.renderToVNode({animation:lt(e.cssAnimation,!0),willUpdate:!1,compress:!0,useViewBox:lt(e.useViewBox,!0)}),{newline:!0})},r.prototype.setBackgroundColor=function(e){this._backgroundColor=e},r.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},r.prototype._paintList=function(e,t,a){for(var n=e.length,i=[],o=0,s,l,u=0,f=0;f=0&&!(v&&l&&v[d]===l[d]);d--);for(var g=p-1;g>d;g--)o--,s=i[o-1];for(var y=d+1;y=s)}}for(var h=this.__startIndex;h15)break}}P.prevElClipPaths&&y.restore()};if(m)if(m.length===0)A=g.__endIndex;else for(var D=c.dpr,M=0;M0&&e>n[0]){for(l=0;le);l++);s=a[n[l]]}if(n.splice(l+1,0,e),a[e]=t,!t.virtual)if(s){var u=s.dom;u.nextSibling?o.insertBefore(t.dom,u.nextSibling):o.appendChild(t.dom)}else o.firstChild?o.insertBefore(t.dom,o.firstChild):o.appendChild(t.dom);t.__painter=this}},r.prototype.eachLayer=function(e,t){for(var a=this._zlevelList,n=0;n0?cu:0),this._needsManuallyCompositing),f.__builtin__||tg("ZLevel "+u+" has been used by unkown layer "+f.id),f!==i&&(f.__used=!0,f.__startIndex!==l&&(f.__dirty=!0),f.__startIndex=l,f.incremental?f.__drawIndex=-1:f.__drawIndex=l,t(l),i=f),n.__dirty&We&&!n.__inHover&&(f.__dirty=!0,f.incremental&&f.__drawIndex<0&&(f.__drawIndex=l))}t(l),this.eachBuiltinLayer(function(h,v){!h.__used&&h.getElementCount()>0&&(h.__dirty=!0,h.__startIndex=h.__endIndex=h.__drawIndex=0),h.__dirty&&h.__drawIndex<0&&(h.__drawIndex=h.__startIndex)})},r.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},r.prototype._clearLayer=function(e){e.clear()},r.prototype.setBackgroundColor=function(e){this._backgroundColor=e,C(this._layers,function(t){t.setUnpainted()})},r.prototype.configLayer=function(e,t){if(t){var a=this._layerConfig;a[e]?ut(a[e],t,!0):a[e]=t;for(var n=0;n-1&&(u.style.stroke=u.style.fill,u.style.fill="#fff",u.style.lineWidth=2),a},e.type="series.line",e.dependencies=["grid","polar"],e.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},e}(Gt);const Iz=Mz;function lo(r,e){var t=r.mapDimensionsAll("defaultedLabel"),a=t.length;if(a===1){var n=io(r,e,t[0]);return n!=null?n+"":null}else if(a){for(var i=[],o=0;o=0&&a.push(e[i])}return a.join(" ")}var Lz=function(r){k(e,r);function e(t,a,n,i){var o=r.call(this)||this;return o.updateData(t,a,n,i),o}return e.prototype._createSymbol=function(t,a,n,i,o){this.removeAll();var s=Jt(t,-1,-1,2,2,null,o);s.attr({z2:100,culling:!0,scaleX:i[0]/2,scaleY:i[1]/2}),s.drift=Pz,this._symbolType=t,this.add(s)},e.prototype.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(null,t)},e.prototype.getSymbolType=function(){return this._symbolType},e.prototype.getSymbolPath=function(){return this.childAt(0)},e.prototype.highlight=function(){va(this.childAt(0))},e.prototype.downplay=function(){ca(this.childAt(0))},e.prototype.setZ=function(t,a){var n=this.childAt(0);n.zlevel=t,n.z=a},e.prototype.setDraggable=function(t,a){var n=this.childAt(0);n.draggable=t,n.cursor=!a&&t?"move":n.cursor},e.prototype.updateData=function(t,a,n,i){this.silent=!1;var o=t.getItemVisual(a,"symbol")||"circle",s=t.hostModel,l=e.getSymbolSize(t,a),u=o!==this._symbolType,f=i&&i.disableAnimation;if(u){var h=t.getItemVisual(a,"symbolKeepAspect");this._createSymbol(o,t,a,l,h)}else{var v=this.childAt(0);v.silent=!1;var c={scaleX:l[0]/2,scaleY:l[1]/2};f?v.attr(c):Dt(v,c,s,a),Ar(v)}if(this._updateCommon(t,a,l,n,i),u){var v=this.childAt(0);if(!f){var c={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:v.style.opacity}};v.scaleX=v.scaleY=0,v.style.opacity=0,zt(v,c,s,a)}}f&&this.childAt(0).stopAnimation("leave")},e.prototype._updateCommon=function(t,a,n,i,o){var s=this.childAt(0),l=t.hostModel,u,f,h,v,c,p,d,g,y;if(i&&(u=i.emphasisItemStyle,f=i.blurItemStyle,h=i.selectItemStyle,v=i.focus,c=i.blurScope,d=i.labelStatesModels,g=i.hoverScale,y=i.cursorStyle,p=i.emphasisDisabled),!i||t.hasItemOption){var m=i&&i.itemModel?i.itemModel:t.getItemModel(a),_=m.getModel("emphasis");u=_.getModel("itemStyle").getItemStyle(),h=m.getModel(["select","itemStyle"]).getItemStyle(),f=m.getModel(["blur","itemStyle"]).getItemStyle(),v=_.get("focus"),c=_.get("blurScope"),p=_.get("disabled"),d=oe(m),g=_.getShallow("scale"),y=m.getShallow("cursor")}var S=t.getItemVisual(a,"symbolRotate");s.attr("rotation",(S||0)*Math.PI/180||0);var w=Io(t.getItemVisual(a,"symbolOffset"),n);w&&(s.x=w[0],s.y=w[1]),y&&s.attr("cursor",y);var x=t.getItemVisual(a,"style"),b=x.fill;if(s instanceof ye){var A=s.style;s.useStyle(B({image:A.image,x:A.x,y:A.y,width:A.width,height:A.height},x))}else s.__isEmptyBrush?s.useStyle(B({},x)):s.useStyle(x),s.style.decal=null,s.setColor(b,o&&o.symbolInnerColor),s.style.strokeNoScale=!0;var T=t.getItemVisual(a,"liftZ"),D=this._z2;T!=null?D==null&&(this._z2=s.z2,s.z2+=T):D!=null&&(s.z2=D,this._z2=null);var M=o&&o.useNameLabel;ge(s,d,{labelFetcher:l,labelDataIndex:a,defaultText:I,inheritColor:b,defaultOpacity:x.opacity});function I(R){return M?t.getName(R):lo(t,R)}this._sizeX=n[0]/2,this._sizeY=n[1]/2;var L=s.ensureState("emphasis");L.style=u,s.ensureState("select").style=h,s.ensureState("blur").style=f;var P=g==null||g===!0?Math.max(1.1,3/this._sizeY):isFinite(g)&&g>0?+g:1;L.scaleX=this._sizeX*P,L.scaleY=this._sizeY*P,this.setSymbolScale(1),Wt(this,v,c,p)},e.prototype.setSymbolScale=function(t){this.scaleX=this.scaleY=t},e.prototype.fadeOut=function(t,a,n){var i=this.childAt(0),o=nt(this).dataIndex,s=n&&n.animation;if(this.silent=i.silent=!0,n&&n.fadeLabel){var l=i.getTextContent();l&&Qa(l,{style:{opacity:0}},a,{dataIndex:o,removeOpt:s,cb:function(){i.removeTextContent()}})}else i.removeTextContent();Qa(i,{style:{opacity:0},scaleX:0,scaleY:0},a,{dataIndex:o,cb:t,removeOpt:s})},e.getSymbolSize=function(t,a){return _l(t.getItemVisual(a,"symbolSize"))},e}(at);function Pz(r,e){this.parent.drift(r,e)}const bl=Lz;function rc(r,e,t,a){return e&&!isNaN(e[0])&&!isNaN(e[1])&&!(a.isIgnore&&a.isIgnore(t))&&!(a.clipShape&&!a.clipShape.contain(e[0],e[1]))&&r.getItemVisual(t,"symbol")!=="none"}function f1(r){return r!=null&&!tt(r)&&(r={isIgnore:r}),r||{}}function h1(r){var e=r.hostModel,t=e.getModel("emphasis");return{emphasisItemStyle:t.getModel("itemStyle").getItemStyle(),blurItemStyle:e.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:e.getModel(["select","itemStyle"]).getItemStyle(),focus:t.get("focus"),blurScope:t.get("blurScope"),emphasisDisabled:t.get("disabled"),hoverScale:t.get("scale"),labelStatesModels:oe(e),cursorStyle:e.get("cursor")}}var Rz=function(){function r(e){this.group=new at,this._SymbolCtor=e||bl}return r.prototype.updateData=function(e,t){this._progressiveEls=null,t=f1(t);var a=this.group,n=e.hostModel,i=this._data,o=this._SymbolCtor,s=t.disableAnimation,l=h1(e),u={disableAnimation:s},f=t.getSymbolPoint||function(h){return e.getItemLayout(h)};i||a.removeAll(),e.diff(i).add(function(h){var v=f(h);if(rc(e,v,h,t)){var c=new o(e,h,l,u);c.setPosition(v),e.setItemGraphicEl(h,c),a.add(c)}}).update(function(h,v){var c=i.getItemGraphicEl(v),p=f(h);if(!rc(e,p,h,t)){a.remove(c);return}var d=e.getItemVisual(h,"symbol")||"circle",g=c&&c.getSymbolType&&c.getSymbolType();if(!c||g&&g!==d)a.remove(c),c=new o(e,h,l,u),c.setPosition(p);else{c.updateData(e,h,l,u);var y={x:p[0],y:p[1]};s?c.attr(y):Dt(c,y,n)}a.add(c),e.setItemGraphicEl(h,c)}).remove(function(h){var v=i.getItemGraphicEl(h);v&&v.fadeOut(function(){a.remove(v)},n)}).execute(),this._getSymbolPoint=f,this._data=e},r.prototype.updateLayout=function(){var e=this,t=this._data;t&&t.eachItemGraphicEl(function(a,n){var i=e._getSymbolPoint(n);a.setPosition(i),a.markRedraw()})},r.prototype.incrementalPrepareUpdate=function(e){this._seriesScope=h1(e),this._data=null,this.group.removeAll()},r.prototype.incrementalUpdate=function(e,t,a){this._progressiveEls=[],a=f1(a);function n(l){l.isGroup||(l.incremental=!0,l.ensureState("emphasis").hoverLayer=!0)}for(var i=e.start;i0?t=a[0]:a[1]<0&&(t=a[1]),t}function RD(r,e,t,a){var n=NaN;r.stacked&&(n=t.get(t.getCalculationInfo("stackedOverDimension"),a)),isNaN(n)&&(n=r.valueStart);var i=r.baseDataOffset,o=[];return o[i]=t.get(r.baseDim,a),o[1-i]=n,e.dataToPoint(o)}function kz(r,e){var t=[];return e.diff(r).add(function(a){t.push({cmd:"+",idx:a})}).update(function(a,n){t.push({cmd:"=",idx:n,idx1:a})}).remove(function(a){t.push({cmd:"-",idx:a})}).execute(),t}function Oz(r,e,t,a,n,i,o,s){for(var l=kz(r,e),u=[],f=[],h=[],v=[],c=[],p=[],d=[],g=PD(n,e,o),y=r.getLayout("points")||[],m=e.getLayout("points")||[],_=0;_=n||d<0)break;if(ai(y,m)){if(l){d+=i;continue}break}if(d===t)r[i>0?"moveTo":"lineTo"](y,m),h=y,v=m;else{var _=y-u,S=m-f;if(_*_+S*S<.5){d+=i;continue}if(o>0){for(var w=d+i,x=e[w*2],b=e[w*2+1];x===y&&b===m&&g=a||ai(x,b))c=y,p=m;else{D=x-u,M=b-f;var P=y-u,R=x-y,E=m-f,N=b-m,O=void 0,V=void 0;if(s==="x"){O=Math.abs(P),V=Math.abs(R);var F=D>0?1:-1;c=y-F*O*o,p=m,I=y+F*V*o,L=m}else if(s==="y"){O=Math.abs(E),V=Math.abs(N);var W=M>0?1:-1;c=y,p=m-W*O*o,I=y,L=m+W*V*o}else O=Math.sqrt(P*P+E*E),V=Math.sqrt(R*R+N*N),T=V/(V+O),c=y-D*o*(1-T),p=m-M*o*(1-T),I=y+D*o*T,L=m+M*o*T,I=Da(I,Ma(x,y)),L=Da(L,Ma(b,m)),I=Ma(I,Da(x,y)),L=Ma(L,Da(b,m)),D=I-y,M=L-m,c=y-D*O/V,p=m-M*O/V,c=Da(c,Ma(u,y)),p=Da(p,Ma(f,m)),c=Ma(c,Da(u,y)),p=Ma(p,Da(f,m)),D=y-c,M=m-p,I=y+D*V/O,L=m+M*V/O}r.bezierCurveTo(h,v,c,p,y,m),h=I,v=L}else r.lineTo(y,m)}u=y,f=m,d+=i}return g}var ED=function(){function r(){this.smooth=0,this.smoothConstraint=!0}return r}(),Nz=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="ec-polyline",a}return e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new ED},e.prototype.buildPath=function(t,a){var n=a.points,i=0,o=n.length/2;if(a.connectNulls){for(;o>0&&ai(n[o*2-2],n[o*2-1]);o--);for(;i=0){var S=u?(p-l)*_+l:(c-s)*_+s;return u?[t,S]:[S,t]}s=c,l=p;break;case o.C:c=i[h++],p=i[h++],d=i[h++],g=i[h++],y=i[h++],m=i[h++];var w=u?of(s,c,d,y,t,f):of(l,p,g,m,t,f);if(w>0)for(var x=0;x=0){var S=u?ne(l,p,g,m,b):ne(s,c,d,y,b);return u?[t,S]:[S,t]}}s=y,l=m;break}}},e}(dt),Bz=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e}(ED),kD=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="ec-polygon",a}return e.prototype.getDefaultShape=function(){return new Bz},e.prototype.buildPath=function(t,a){var n=a.points,i=a.stackedOnPoints,o=0,s=n.length/2,l=a.smoothMonotone;if(a.connectNulls){for(;s>0&&ai(n[s*2-2],n[s*2-1]);s--);for(;oe){i?t.push(o(i,l,e)):n&&t.push(o(n,l,0),o(n,l,e));break}else n&&(t.push(o(n,l,0)),n=null),t.push(l),i=l}return t}function Gz(r,e,t){var a=r.getVisual("visualMeta");if(!(!a||!a.length||!r.count())&&e.type==="cartesian2d"){for(var n,i,o=a.length-1;o>=0;o--){var s=r.getDimensionInfo(a[o].dimension);if(n=s&&s.coordDim,n==="x"||n==="y"){i=a[o];break}}if(i){var l=e.getAxis(n),u=G(i.stops,function(_){return{coord:l.toGlobalCoord(l.dataToCoord(_.value)),color:_.color}}),f=u.length,h=i.outerColors.slice();f&&u[0].coord>u[f-1].coord&&(u.reverse(),h.reverse());var v=zz(u,n==="x"?t.getWidth():t.getHeight()),c=v.length;if(!c&&f)return u[0].coord<0?h[1]?h[1]:u[f-1].color:h[0]?h[0]:u[0].color;var p=10,d=v[0].coord-p,g=v[c-1].coord+p,y=g-d;if(y<.001)return"transparent";C(v,function(_){_.offset=(_.coord-d)/y}),v.push({offset:c?v[c-1].offset:.5,color:h[1]||"transparent"}),v.unshift({offset:c?v[0].offset:.5,color:h[0]||"transparent"});var m=new cl(0,0,0,0,v,!0);return m[n]=d,m[n+"2"]=g,m}}}function Fz(r,e,t){var a=r.get("showAllSymbol"),n=a==="auto";if(!(a&&!n)){var i=t.getAxesByScale("ordinal")[0];if(i&&!(n&&Hz(i,e))){var o=e.mapDimension(i.dim),s={};return C(i.getViewLabels(),function(l){var u=i.scale.getRawOrdinalNumber(l.tickValue);s[u]=1}),function(l){return!s.hasOwnProperty(e.get(o,l))}}}}function Hz(r,e){var t=r.getExtent(),a=Math.abs(t[1]-t[0])/r.scale.count();isNaN(a)&&(a=0);for(var n=e.count(),i=Math.max(1,Math.round(n/5)),o=0;oa)return!1;return!0}function Wz(r,e){return isNaN(r)||isNaN(e)}function Uz(r){for(var e=r.length/2;e>0&&Wz(r[e*2-2],r[e*2-1]);e--);return e-1}function g1(r,e){return[r[e*2],r[e*2+1]]}function $z(r,e,t){for(var a=r.length/2,n=t==="x"?0:1,i,o,s=0,l=-1,u=0;u=e||i>=e&&o<=e){l=u;break}s=u,i=o}return{range:[s,l],t:(e-i)/(o-i)}}function BD(r){if(r.get(["endLabel","show"]))return!0;for(var e=0;e0&&t.get(["emphasis","lineStyle","width"])==="bolder"){var F=d.getState("emphasis").style;F.lineWidth=+d.style.lineWidth+1}nt(d).seriesIndex=t.seriesIndex,Wt(d,N,O,V);var W=d1(t.get("smooth")),X=t.get("smoothMonotone");if(d.setShape({smooth:W,smoothMonotone:X,connectNulls:A}),g){var Q=l.getCalculationInfo("stackedOnSeries"),j=0;g.useStyle(J(f.getAreaStyle(),{fill:L,opacity:.7,lineJoin:"bevel",decal:l.getVisual("style").decal})),Q&&(j=d1(Q.get("smooth"))),g.setShape({smooth:W,stackedOnSmooth:j,smoothMonotone:X,connectNulls:A}),de(g,t,"areaStyle"),nt(g).seriesIndex=t.seriesIndex,Wt(g,N,O,V)}var gt=function(Mt){i._changePolyState(Mt)};l.eachItemGraphicEl(function(Mt){Mt&&(Mt.onHoverStateChange=gt)}),this._polyline.onHoverStateChange=gt,this._data=l,this._coordSys=o,this._stackedOnPoints=x,this._points=h,this._step=M,this._valueOrigin=S,t.get("triggerLineEvent")&&(this.packEventData(t,d),g&&this.packEventData(t,g))},e.prototype.packEventData=function(t,a){nt(a).eventData={componentType:"series",componentSubType:"line",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"line"}},e.prototype.highlight=function(t,a,n,i){var o=t.getData(),s=si(o,i);if(this._changePolyState("emphasis"),!(s instanceof Array)&&s!=null&&s>=0){var l=o.getLayout("points"),u=o.getItemGraphicEl(s);if(!u){var f=l[s*2],h=l[s*2+1];if(isNaN(f)||isNaN(h)||this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(f,h))return;var v=t.get("zlevel")||0,c=t.get("z")||0;u=new bl(o,s),u.x=f,u.y=h,u.setZ(v,c);var p=u.getSymbolPath().getTextContent();p&&(p.zlevel=v,p.z=c,p.z2=this._polyline.z2+1),u.__temp=!0,o.setItemGraphicEl(s,u),u.stopSymbolAnimation(!0),this.group.add(u)}u.highlight()}else Bt.prototype.highlight.call(this,t,a,n,i)},e.prototype.downplay=function(t,a,n,i){var o=t.getData(),s=si(o,i);if(this._changePolyState("normal"),s!=null&&s>=0){var l=o.getItemGraphicEl(s);l&&(l.__temp?(o.setItemGraphicEl(s,null),this.group.remove(l)):l.downplay())}else Bt.prototype.downplay.call(this,t,a,n,i)},e.prototype._changePolyState=function(t){var a=this._polygon;pf(this._polyline,t),a&&pf(a,t)},e.prototype._newPolyline=function(t){var a=this._polyline;return a&&this._lineGroup.remove(a),a=new Nz({shape:{points:t},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(a),this._polyline=a,a},e.prototype._newPolygon=function(t,a){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new kD({shape:{points:t,stackedOnPoints:a},segmentIgnoreThreshold:2}),this._lineGroup.add(n),this._polygon=n,n},e.prototype._initSymbolLabelAnimation=function(t,a,n){var i,o,s=a.getBaseAxis(),l=s.inverse;a.type==="cartesian2d"?(i=s.isHorizontal(),o=!1):a.type==="polar"&&(i=s.dim==="angle",o=!0);var u=t.hostModel,f=u.get("animationDuration");K(f)&&(f=f(null));var h=u.get("animationDelay")||0,v=K(h)?h(null):h;t.eachItemGraphicEl(function(c,p){var d=c;if(d){var g=[c.x,c.y],y=void 0,m=void 0,_=void 0;if(n)if(o){var S=n,w=a.pointToCoord(g);i?(y=S.startAngle,m=S.endAngle,_=-w[1]/180*Math.PI):(y=S.r0,m=S.r,_=w[0])}else{var x=n;i?(y=x.x,m=x.x+x.width,_=c.x):(y=x.y+x.height,m=x.y,_=c.y)}var b=m===y?0:(_-y)/(m-y);l&&(b=1-b);var A=K(h)?h(p):f*b+v,T=d.getSymbolPath(),D=T.getTextContent();d.attr({scaleX:0,scaleY:0}),d.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:A}),D&&D.animateFrom({style:{opacity:0}},{duration:300,delay:A}),T.disableLabelAnimation=!0}})},e.prototype._initOrUpdateEndLabel=function(t,a,n){var i=t.getModel("endLabel");if(BD(t)){var o=t.getData(),s=this._polyline,l=o.getLayout("points");if(!l){s.removeTextContent(),this._endLabel=null;return}var u=this._endLabel;u||(u=this._endLabel=new Tt({z2:200}),u.ignoreClip=!0,s.setTextContent(this._endLabel),s.disableLabelAnimation=!0);var f=Uz(l);f>=0&&(ge(s,oe(t,"endLabel"),{inheritColor:n,labelFetcher:t,labelDataIndex:f,defaultText:function(h,v,c){return c!=null?LD(o,c):lo(o,h)},enableTextSetter:!0},Yz(i,a)),s.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},e.prototype._endLabelOnDuring=function(t,a,n,i,o,s,l){var u=this._endLabel,f=this._polyline;if(u){t<1&&i.originalX==null&&(i.originalX=u.x,i.originalY=u.y);var h=n.getLayout("points"),v=n.hostModel,c=v.get("connectNulls"),p=s.get("precision"),d=s.get("distance")||0,g=l.getBaseAxis(),y=g.isHorizontal(),m=g.inverse,_=a.shape,S=m?y?_.x:_.y+_.height:y?_.x+_.width:_.y,w=(y?d:0)*(m?-1:1),x=(y?0:-d)*(m?-1:1),b=y?"x":"y",A=$z(h,S,b),T=A.range,D=T[1]-T[0],M=void 0;if(D>=1){if(D>1&&!c){var I=g1(h,T[0]);u.attr({x:I[0]+w,y:I[1]+x}),o&&(M=v.getRawValue(T[0]))}else{var I=f.getPointOn(S,b);I&&u.attr({x:I[0]+w,y:I[1]+x});var L=v.getRawValue(T[0]),P=v.getRawValue(T[1]);o&&(M=rA(n,p,L,P,A.t))}i.lastFrameIndex=T[0]}else{var R=t===1||i.lastFrameIndex>0?T[0]:0,I=g1(h,R);o&&(M=v.getRawValue(R)),u.attr({x:I[0]+w,y:I[1]+x})}o&&xo(u).setLabelText(M)}},e.prototype._doUpdateAnimation=function(t,a,n,i,o,s,l){var u=this._polyline,f=this._polygon,h=t.hostModel,v=Oz(this._data,t,this._stackedOnPoints,a,this._coordSys,n,this._valueOrigin),c=v.current,p=v.stackedOnCurrent,d=v.next,g=v.stackedOnNext;if(o&&(c=Ia(v.current,n,o,l),p=Ia(v.stackedOnCurrent,n,o,l),d=Ia(v.next,n,o,l),g=Ia(v.stackedOnNext,n,o,l)),p1(c,d)>3e3||f&&p1(p,g)>3e3){u.stopAnimation(),u.setShape({points:d}),f&&(f.stopAnimation(),f.setShape({points:d,stackedOnPoints:g}));return}u.shape.__points=v.current,u.shape.points=c;var y={shape:{points:d}};v.current!==c&&(y.shape.__points=v.next),u.stopAnimation(),Dt(u,y,h),f&&(f.setShape({points:c,stackedOnPoints:p}),f.stopAnimation(),Dt(f,{shape:{stackedOnPoints:g}},h),u.shape.points!==f.shape.points&&(f.shape.points=u.shape.points));for(var m=[],_=v.status,S=0;S<_.length;S++){var w=_[S].cmd;if(w==="="){var x=t.getItemGraphicEl(_[S].idx1);x&&m.push({el:x,ptIdx:S})}}u.animators&&u.animators.length&&u.animators[0].during(function(){f&&f.dirtyShape();for(var b=u.shape.__points,A=0;Ae&&(e=r[t]);return isFinite(e)?e:NaN},min:function(r){for(var e=1/0,t=0;t10&&o.type==="cartesian2d"&&i){var l=o.getBaseAxis(),u=o.getOtherAxis(l),f=l.getExtent(),h=a.getDevicePixelRatio(),v=Math.abs(f[1]-f[0])*(h||1),c=Math.round(s/v);if(isFinite(c)&&c>1){i==="lttb"&&e.setData(n.lttbDownSample(n.mapDimension(u.dim),1/c));var p=void 0;U(i)?p=qz[i]:K(i)&&(p=i),p&&e.setData(n.downSample(n.mapDimension(u.dim),1/c,p,Kz))}}}}}function Qz(r){r.registerChartView(Zz),r.registerSeriesModel(Iz),r.registerLayout(Tl("line",!0)),r.registerVisual({seriesType:"line",reset:function(e){var t=e.getData(),a=e.getModel("lineStyle").getLineStyle();a&&!a.stroke&&(a.stroke=t.getVisual("style").fill),t.setVisual("legendLineStyle",a)}}),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,VD("line"))}var zD=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.getInitialData=function(t,a){return ma(null,this,{useEncodeDefaulter:!0})},e.prototype.getMarkerPosition=function(t,a,n){var i=this.coordinateSystem;if(i&&i.clampData){var o=i.dataToPoint(i.clampData(t));if(n)C(i.getAxes(),function(h,v){if(h.type==="category"){var c=h.getTicksCoords(),p=i.clampData(t)[v];a&&(a[v]==="x1"||a[v]==="y1")&&(p+=1),p>c.length-1&&(p=c.length-1),p<0&&(p=0),c[p]&&(o[v]=h.toGlobalCoord(c[p].coord))}});else{var s=this.getData(),l=s.getLayout("offset"),u=s.getLayout("size"),f=i.getBaseAxis().isHorizontal()?0:1;o[f]+=l+u/2}return o}return[NaN,NaN]},e.type="series.__base_bar__",e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},e}(Gt);Gt.registerClass(zD);const Ef=zD;var Jz=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.getInitialData=function(){return ma(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},e.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},e.prototype.getProgressiveThreshold=function(){var t=this.get("progressiveThreshold"),a=this.get("largeThreshold");return a>t&&(t=a),t},e.prototype.brushSelector=function(t,a,n){return n.rect(a.getItemLayout(t))},e.type="series.bar",e.dependencies=["grid","polar"],e.defaultOption=on(Ef.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),e}(Ef);const jz=Jz;var t5=function(){function r(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return r}(),e5=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="sausage",a}return e.prototype.getDefaultShape=function(){return new t5},e.prototype.buildPath=function(t,a){var n=a.cx,i=a.cy,o=Math.max(a.r0||0,0),s=Math.max(a.r,0),l=(s-o)*.5,u=o+l,f=a.startAngle,h=a.endAngle,v=a.clockwise,c=Math.PI*2,p=v?h-fMath.PI/2&&fs)return!0;s=h}return!1},e.prototype._isOrderDifferentInView=function(t,a){for(var n=a.scale,i=n.getExtent(),o=Math.max(0,i[0]),s=Math.min(i[1],n.getOrdinalMeta().categories.length-1);o<=s;++o)if(t.ordinalNumbers[o]!==n.getRawOrdinalNumber(o))return!0},e.prototype._updateSortWithinSameData=function(t,a,n,i){if(this._isOrderChangedWithinSameData(t,a,n)){var o=this._dataSort(t,n,a);this._isOrderDifferentInView(o,n)&&(this._removeOnRenderedListener(i),i.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",axisId:n.index,sortInfo:o}))}},e.prototype._dispatchInitSort=function(t,a,n){var i=a.baseAxis,o=this._dataSort(t,i,function(s){return t.get(t.mapDimension(a.otherAxis.dim),s)});n.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",isInitSort:!0,axisId:i.index,sortInfo:o})},e.prototype.remove=function(t,a){this._clear(this._model),this._removeOnRenderedListener(a)},e.prototype.dispose=function(t,a){this._removeOnRenderedListener(a)},e.prototype._removeOnRenderedListener=function(t){this._onRendered&&(t.getZr().off("rendered",this._onRendered),this._onRendered=null)},e.prototype._clear=function(t){var a=this.group,n=this._data;t&&t.isAnimationEnabled()&&n&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],n.eachItemGraphicEl(function(i){Ws(i,t,nt(i).dataIndex)})):a.removeAll(),this._data=null,this._isFirstFrame=!0},e.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},e.type="bar",e}(Bt),y1={cartesian2d:function(r,e){var t=e.width<0?-1:1,a=e.height<0?-1:1;t<0&&(e.x+=e.width,e.width=-e.width),a<0&&(e.y+=e.height,e.height=-e.height);var n=r.x+r.width,i=r.y+r.height,o=nc(e.x,r.x),s=ic(e.x+e.width,n),l=nc(e.y,r.y),u=ic(e.y+e.height,i),f=sn?s:o,e.y=h&&l>i?u:l,e.width=f?0:s-o,e.height=h?0:u-l,t<0&&(e.x+=e.width,e.width=-e.width),a<0&&(e.y+=e.height,e.height=-e.height),f||h},polar:function(r,e){var t=e.r0<=e.r?1:-1;if(t<0){var a=e.r;e.r=e.r0,e.r0=a}var n=ic(e.r,r.r),i=nc(e.r0,r.r0);e.r=n,e.r0=i;var o=n-i<0;if(t<0){var a=e.r;e.r=e.r0,e.r0=a}return o}},m1={cartesian2d:function(r,e,t,a,n,i,o,s,l){var u=new xt({shape:B({},a),z2:1});if(u.__dataIndex=t,u.name="item",i){var f=u.shape,h=n?"height":"width";f[h]=0}return u},polar:function(r,e,t,a,n,i,o,s,l){var u=!n&&l?kf:Ve,f=new u({shape:a,z2:1});f.name="item";var h=GD(n);if(f.calculateTextPosition=r5(h,{isRoundCap:u===kf}),i){var v=f.shape,c=n?"r":"endAngle",p={};v[c]=n?0:a.startAngle,p[c]=a[c],(s?Dt:zt)(f,{shape:p},i)}return f}};function o5(r,e){var t=r.get("realtimeSort",!0),a=e.getBaseAxis();if(t&&a.type==="category"&&e.type==="cartesian2d")return{baseAxis:a,otherAxis:e.getOtherAxis(a)}}function _1(r,e,t,a,n,i,o,s){var l,u;i?(u={x:a.x,width:a.width},l={y:a.y,height:a.height}):(u={y:a.y,height:a.height},l={x:a.x,width:a.width}),s||(o?Dt:zt)(t,{shape:l},e,n,null);var f=e?r.baseAxis.model:null;(o?Dt:zt)(t,{shape:u},f,n)}function S1(r,e){for(var t=0;t0?1:-1,o=a.height>0?1:-1;return{x:a.x+i*n/2,y:a.y+o*n/2,width:a.width-i*n,height:a.height-o*n}},polar:function(r,e,t){var a=r.getItemLayout(e);return{cx:a.cx,cy:a.cy,r0:a.r0,r:a.r,startAngle:a.startAngle,endAngle:a.endAngle,clockwise:a.clockwise}}};function u5(r){return r.startAngle!=null&&r.endAngle!=null&&r.startAngle===r.endAngle}function GD(r){return function(e){var t=e?"Arc":"Angle";return function(a){switch(a){case"start":case"insideStart":case"end":case"insideEnd":return a+t;default:return a}}}(r)}function w1(r,e,t,a,n,i,o,s){var l=e.getItemVisual(t,"style");s||r.setShape("r",a.get(["itemStyle","borderRadius"])||0),r.useStyle(l);var u=a.getShallow("cursor");u&&r.attr("cursor",u);var f=s?o?n.r>=n.r0?"endArc":"startArc":n.endAngle>=n.startAngle?"endAngle":"startAngle":o?n.height>=0?"bottom":"top":n.width>=0?"right":"left",h=oe(a);ge(r,h,{labelFetcher:i,labelDataIndex:t,defaultText:lo(i.getData(),t),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:f});var v=r.getTextContent();if(s&&v){var c=a.get(["label","position"]);r.textConfig.inside=c==="middle"?!0:null,a5(r,c==="outside"?f:c,GD(o),a.get(["label","rotate"]))}tT(v,h,i.getRawValue(t),function(d){return LD(e,d)});var p=a.getModel(["emphasis"]);Wt(r,p.get("focus"),p.get("blurScope"),p.get("disabled")),de(r,a),u5(n)&&(r.style.fill="none",r.style.stroke="none",C(r.states,function(d){d.style&&(d.style.fill=d.style.stroke="none")}))}function f5(r,e){var t=r.get(["itemStyle","borderColor"]);if(!t||t==="none")return 0;var a=r.get(["itemStyle","borderWidth"])||0,n=isNaN(e.width)?Number.MAX_VALUE:Math.abs(e.width),i=isNaN(e.height)?Number.MAX_VALUE:Math.abs(e.height);return Math.min(a,n,i)}var h5=function(){function r(){}return r}(),b1=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="largeBar",a}return e.prototype.getDefaultShape=function(){return new h5},e.prototype.buildPath=function(t,a){for(var n=a.points,i=this.baseDimIdx,o=1-this.baseDimIdx,s=[],l=[],u=this.barWidth,f=0;f=0?t:null},30,!1);function v5(r,e,t){for(var a=r.baseDimIdx,n=1-a,i=r.shape.points,o=r.largeDataIndices,s=[],l=[],u=r.barWidth,f=0,h=i.length/3;f=s[0]&&e<=s[0]+l[0]&&t>=s[1]&&t<=s[1]+l[1])return o[f]}return-1}function FD(r,e,t){if(yi(t,"cartesian2d")){var a=e,n=t.getArea();return{x:r?a.x:n.x,y:r?n.y:a.y,width:r?a.width:n.width,height:r?n.height:a.height}}else{var n=t.getArea(),i=e;return{cx:n.cx,cy:n.cy,r0:r?n.r0:i.r0,r:r?n.r:i.r,startAngle:r?i.startAngle:0,endAngle:r?i.endAngle:Math.PI*2}}}function c5(r,e,t){var a=r.type==="polar"?Ve:xt;return new a({shape:FD(e,t,r),silent:!0,z2:0})}const p5=i5;function d5(r){r.registerChartView(p5),r.registerSeriesModel(jz),r.registerLayout(r.PRIORITY.VISUAL.LAYOUT,it($C,"bar")),r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,YC("bar")),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,VD("bar")),r.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(e,t){var a=e.componentType||"series";t.eachComponent({mainType:a,query:e},function(n){e.sortInfo&&n.axis.setCategorySortInfo(e.sortInfo)})})}var yu=Math.PI*2,C1=Math.PI/180;function HD(r,e){return re(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function WD(r,e){var t=HD(r,e),a=r.get("center"),n=r.get("radius");z(n)||(n=[0,n]);var i=H(t.width,e.getWidth()),o=H(t.height,e.getHeight()),s=Math.min(i,o),l=H(n[0],s/2),u=H(n[1],s/2),f,h,v=r.coordinateSystem;if(v){var c=v.dataToPoint(a);f=c[0]||0,h=c[1]||0}else z(a)||(a=[a,a]),f=H(a[0],i)+t.x,h=H(a[1],o)+t.y;return{cx:f,cy:h,r0:l,r:u}}function g5(r,e,t){e.eachSeriesByType(r,function(a){var n=a.getData(),i=n.mapDimension("value"),o=HD(a,t),s=WD(a,t),l=s.cx,u=s.cy,f=s.r,h=s.r0,v=-a.get("startAngle")*C1,c=a.get("minAngle")*C1,p=0;n.each(i,function(D){!isNaN(D)&&p++});var d=n.getSum(i),g=Math.PI/(d||p)*2,y=a.get("clockwise"),m=a.get("roseType"),_=a.get("stillShowZeroSum"),S=n.getDataExtent(i);S[0]=0;var w=yu,x=0,b=v,A=y?1:-1;if(n.setLayout({viewRect:o,r:f}),n.each(i,function(D,M){var I;if(isNaN(D)){n.setItemLayout(M,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:y,cx:l,cy:u,r0:h,r:m?NaN:f});return}m!=="area"?I=d===0&&_?g:D*g:I=yu/p,It?y:g,w=Math.abs(_.label.y-t);if(w>=S.maxY){var x=_.label.x-e-_.len2*n,b=a+_.len,A=Math.abs(x)r.unconstrainedWidth?null:c:null;a.setStyle("width",p)}var d=a.getBoundingRect();i.width=d.width;var g=(a.style.margin||0)+2.1;i.height=d.height+g,i.y-=(i.height-h)/2}}}function oc(r){return r.position==="center"}function _5(r){var e=r.getData(),t=[],a,n,i=!1,o=(r.get("minShowLabelAngle")||0)*y5,s=e.getLayout("viewRect"),l=e.getLayout("r"),u=s.width,f=s.x,h=s.y,v=s.height;function c(x){x.ignore=!0}function p(x){if(!x.ignore)return!0;for(var b in x.states)if(x.states[b].ignore===!1)return!0;return!1}e.each(function(x){var b=e.getItemGraphicEl(x),A=b.shape,T=b.getTextContent(),D=b.getTextGuideLine(),M=e.getItemModel(x),I=M.getModel("label"),L=I.get("position")||M.get(["emphasis","label","position"]),P=I.get("distanceToLabelLine"),R=I.get("alignTo"),E=H(I.get("edgeDistance"),u),N=I.get("bleedMargin"),O=M.getModel("labelLine"),V=O.get("length");V=H(V,u);var F=O.get("length2");if(F=H(F,u),Math.abs(A.endAngle-A.startAngle)0?"right":"left":X>0?"left":"right"}var $t=Math.PI,Ft=0,me=I.get("rotate");if(Ct(me))Ft=me*($t/180);else if(L==="center")Ft=0;else if(me==="radial"||me===!0){var Kr=X<0?-W+$t:-W;Ft=Kr}else if(me==="tangential"&&L!=="outside"&&L!=="outer"){var Pe=Math.atan2(X,Q);Pe<0&&(Pe=$t*2+Pe);var Pl=Q>0;Pl&&(Pe=$t+Pe),Ft=Pe-$t}if(i=!!Ft,T.x=j,T.y=gt,T.rotation=Ft,T.setStyle({verticalAlign:"middle"}),rt){T.setStyle({align:pt});var zh=T.states.select;zh&&(zh.x+=T.x,zh.y+=T.y)}else{var Sa=T.getBoundingRect().clone();Sa.applyTransform(T.getComputedTransform());var om=(T.style.margin||0)+2.1;Sa.y-=om/2,Sa.height+=om,t.push({label:T,labelLine:D,position:L,len:V,len2:F,minTurnAngle:O.get("minTurnAngle"),maxSurfaceAngle:O.get("maxSurfaceAngle"),surfaceNormal:new st(X,Q),linePoints:Mt,textAlign:pt,labelDistance:P,labelAlignTo:R,edgeDistance:E,bleedMargin:N,rect:Sa,unconstrainedWidth:Sa.width,labelStyleWidth:T.style.width})}b.setTextConfig({inside:rt})}}),!i&&r.get("avoidLabelOverlap")&&m5(t,a,n,l,u,v,f,h);for(var d=0;d0){for(var f=o.getItemLayout(0),h=1;isNaN(f&&f.startAngle)&&h=i.r0}},e.type="pie",e}(Bt);const w5=x5;function Lo(r,e,t){e=z(e)&&{coordDimensions:e}||B({encodeDefine:r.getEncode()},e);var a=r.getSource(),n=Sl(a,e).dimensions,i=new Me(n,r);return i.initData(a,t),i}var b5=function(){function r(e,t){this._getDataWithEncodedVisual=e,this._getRawData=t}return r.prototype.getAllNames=function(){var e=this._getRawData();return e.mapArray(e.getName)},r.prototype.containName=function(e){var t=this._getRawData();return t.indexOfName(e)>=0},r.prototype.indexOfName=function(e){var t=this._getDataWithEncodedVisual();return t.indexOfName(e)},r.prototype.getItemVisual=function(e,t){var a=this._getDataWithEncodedVisual();return a.getItemVisual(e,t)},r}();const Dl=b5;var A5=wt(),T5=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.init=function(t){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Dl($(this.getData,this),$(this.getRawData,this)),this._defaultLabelLine(t)},e.prototype.mergeOption=function(){r.prototype.mergeOption.apply(this,arguments)},e.prototype.getInitialData=function(){return Lo(this,{coordDimensions:["value"],encodeDefaulter:it(Eg,this)})},e.prototype.getDataParams=function(t){var a=this.getData(),n=A5(a),i=n.seats;if(!i){var o=[];a.each(a.mapDimension("value"),function(l){o.push(l)}),i=n.seats=NP(o,a.hostModel.get("percentPrecision"))}var s=r.prototype.getDataParams.call(this,t);return s.percent=i[t]||0,s.$vars.push("percent"),s},e.prototype._defaultLabelLine=function(t){oi(t,"labelLine",["show"]);var a=t.labelLine,n=t.emphasis.labelLine;a.show=a.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.type="series.pie",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",bleedMargin:10,distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:15,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},e}(Gt);const C5=T5;function D5(r){return{seriesType:r,reset:function(e,t){var a=e.getData();a.filterSelf(function(n){var i=a.mapDimension("value"),o=a.get(i,n);return!(Ct(o)&&!isNaN(o)&&o<0)})}}}function M5(r){r.registerChartView(w5),r.registerSeriesModel(C5),lC("pie",r.registerAction),r.registerLayout(it(g5,"pie")),r.registerProcessor(Cl("pie")),r.registerProcessor(D5("pie"))}var I5=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.hasSymbolVisual=!0,t}return e.prototype.getInitialData=function(t,a){return ma(null,this,{useEncodeDefaulter:!0})},e.prototype.getProgressive=function(){var t=this.option.progressive;return t??(this.option.large?5e3:this.get("progressive"))},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return t??(this.option.large?1e4:this.get("progressiveThreshold"))},e.prototype.brushSelector=function(t,a,n){return n.point(a.getItemLayout(t))},e.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},e.type="series.scatter",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},e}(Gt);const L5=I5;var $D=4,P5=function(){function r(){}return r}(),R5=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a._off=0,a.hoverDataIdx=-1,a}return e.prototype.getDefaultShape=function(){return new P5},e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.buildPath=function(t,a){var n=a.points,i=a.size,o=this.symbolProxy,s=o.shape,l=t.getContext?t.getContext():t,u=l&&i[0]<$D,f=this.softClipShape,h;if(u){this._ctx=l;return}for(this._ctx=null,h=this._off;h=0;u--){var f=u*2,h=i[f]-s/2,v=i[f+1]-l/2;if(t>=h&&a>=v&&t<=h+s&&a<=v+l)return u}return-1},e.prototype.contain=function(t,a){var n=this.transformCoordToLocal(t,a),i=this.getBoundingRect();if(t=n[0],a=n[1],i.contain(t,a)){var o=this.hoverDataIdx=this.findDataIndex(t,a);return o>=0}return this.hoverDataIdx=-1,!1},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var a=this.shape,n=a.points,i=a.size,o=i[0],s=i[1],l=1/0,u=1/0,f=-1/0,h=-1/0,v=0;v=0&&(u.dataIndex=h+(e.startIndex||0))})},r.prototype.remove=function(){this._clear()},r.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},r}();const k5=E5;var O5=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=t.getData(),o=this._updateSymbolDraw(i,t);o.updateData(i,{clipShape:this._getClipShape(t)}),this._finished=!0},e.prototype.incrementalPrepareRender=function(t,a,n){var i=t.getData(),o=this._updateSymbolDraw(i,t);o.incrementalPrepareUpdate(i),this._finished=!1},e.prototype.incrementalRender=function(t,a,n){this._symbolDraw.incrementalUpdate(t,a.getData(),{clipShape:this._getClipShape(a)}),this._finished=t.end===a.getData().count()},e.prototype.updateTransform=function(t,a,n){var i=t.getData();if(this.group.dirty(),!this._finished||i.count()>1e4)return{update:!0};var o=Tl("").reset(t,a,n);o.progress&&o.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout(i)},e.prototype.eachRendered=function(t){this._symbolDraw&&this._symbolDraw.eachRendered(t)},e.prototype._getClipShape=function(t){var a=t.coordinateSystem,n=a&&a.getArea&&a.getArea();return t.get("clip",!0)?n:null},e.prototype._updateSymbolDraw=function(t,a){var n=this._symbolDraw,i=a.pipelineContext,o=i.large;return(!n||o!==this._isLargeDraw)&&(n&&n.remove(),n=this._symbolDraw=o?new k5:new Al,this._isLargeDraw=o,this.group.removeAll()),this.group.add(n.group),n},e.prototype.remove=function(t,a){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},e.prototype.dispose=function(){},e.type="scatter",e}(Bt);const N5=O5;var B5=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.type="grid",e.dependencies=["xAxis","yAxis"],e.layoutMode="box",e.defaultOption={show:!1,z:0,left:"10%",top:60,right:"10%",bottom:70,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"},e}(bt);const V5=B5;var pd=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",Qt).models[0]},e.type="cartesian2dAxis",e}(bt);jt(pd,wl);var YD={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#6E7079",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#E0E6F1"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(210,219,238,0.2)"]}}},z5=ut({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},YD),uy=ut({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:"#F4F7FD",width:1}}},YD),G5=ut({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},uy),F5=J({logBase:10},uy);const XD={category:z5,value:uy,time:G5,log:F5};var H5={value:1,category:1,time:1,log:1};function uo(r,e,t,a){C(H5,function(n,i){var o=ut(ut({},XD[i],!0),a,!0),s=function(l){k(u,l);function u(){var f=l!==null&&l.apply(this,arguments)||this;return f.type=e+"Axis."+i,f}return u.prototype.mergeDefaultAndTheme=function(f,h){var v=Ys(this),c=v?Ao(f):{},p=h.getTheme();ut(f,p.get(i+"Axis")),ut(f,this.getDefaultOption()),f.type=M1(f),v&&Ja(f,c,v)},u.prototype.optionUpdated=function(){var f=this.option;f.type==="category"&&(this.__ordinalMeta=sd.createByAxisModel(this))},u.prototype.getCategories=function(f){var h=this.option;if(h.type==="category")return f?h.data:this.__ordinalMeta.categories},u.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},u.type=e+"Axis."+i,u.defaultOption=o,u}(t);r.registerComponentModel(s)}),r.registerSubTypeDefaulter(e+"Axis",M1)}function M1(r){return r.type||(r.data?"category":"value")}var W5=function(){function r(e){this.type="cartesian",this._dimList=[],this._axes={},this.name=e||""}return r.prototype.getAxis=function(e){return this._axes[e]},r.prototype.getAxes=function(){return G(this._dimList,function(e){return this._axes[e]},this)},r.prototype.getAxesByScale=function(e){return e=e.toLowerCase(),Pt(this.getAxes(),function(t){return t.scale.type===e})},r.prototype.addAxis=function(e){var t=e.dim;this._axes[t]=e,this._dimList.push(t)},r}();const U5=W5;var dd=["x","y"];function I1(r){return r.type==="interval"||r.type==="time"}var $5=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type="cartesian2d",t.dimensions=dd,t}return e.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var t=this.getAxis("x").scale,a=this.getAxis("y").scale;if(!(!I1(t)||!I1(a))){var n=t.getExtent(),i=a.getExtent(),o=this.dataToPoint([n[0],i[0]]),s=this.dataToPoint([n[1],i[1]]),l=n[1]-n[0],u=i[1]-i[0];if(!(!l||!u)){var f=(s[0]-o[0])/l,h=(s[1]-o[1])/u,v=o[0]-n[0]*f,c=o[1]-i[0]*h,p=this._transform=[f,0,0,h,v,c];this._invTransform=go([],p)}}},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},e.prototype.containPoint=function(t){var a=this.getAxis("x"),n=this.getAxis("y");return a.contain(a.toLocalCoord(t[0]))&&n.contain(n.toLocalCoord(t[1]))},e.prototype.containData=function(t){return this.getAxis("x").containData(t[0])&&this.getAxis("y").containData(t[1])},e.prototype.containZone=function(t,a){var n=this.dataToPoint(t),i=this.dataToPoint(a),o=this.getArea(),s=new ft(n[0],n[1],i[0]-n[0],i[1]-n[1]);return o.intersect(s)},e.prototype.dataToPoint=function(t,a,n){n=n||[];var i=t[0],o=t[1];if(this._transform&&i!=null&&isFinite(i)&&o!=null&&isFinite(o))return ce(n,t,this._transform);var s=this.getAxis("x"),l=this.getAxis("y");return n[0]=s.toGlobalCoord(s.dataToCoord(i,a)),n[1]=l.toGlobalCoord(l.dataToCoord(o,a)),n},e.prototype.clampData=function(t,a){var n=this.getAxis("x").scale,i=this.getAxis("y").scale,o=n.getExtent(),s=i.getExtent(),l=n.parse(t[0]),u=i.parse(t[1]);return a=a||[],a[0]=Math.min(Math.max(Math.min(o[0],o[1]),l),Math.max(o[0],o[1])),a[1]=Math.min(Math.max(Math.min(s[0],s[1]),u),Math.max(s[0],s[1])),a},e.prototype.pointToData=function(t,a){var n=[];if(this._invTransform)return ce(n,t,this._invTransform);var i=this.getAxis("x"),o=this.getAxis("y");return n[0]=i.coordToData(i.toLocalCoord(t[0]),a),n[1]=o.coordToData(o.toLocalCoord(t[1]),a),n},e.prototype.getOtherAxis=function(t){return this.getAxis(t.dim==="x"?"y":"x")},e.prototype.getArea=function(){var t=this.getAxis("x").getGlobalExtent(),a=this.getAxis("y").getGlobalExtent(),n=Math.min(t[0],t[1]),i=Math.min(a[0],a[1]),o=Math.max(t[0],t[1])-n,s=Math.max(a[0],a[1])-i;return new ft(n,i,o,s)},e}(U5),Y5=function(r){k(e,r);function e(t,a,n,i,o){var s=r.call(this,t,a,n)||this;return s.index=0,s.type=i||"value",s.position=o||"bottom",s}return e.prototype.isHorizontal=function(){var t=this.position;return t==="top"||t==="bottom"},e.prototype.getGlobalExtent=function(t){var a=this.getExtent();return a[0]=this.toGlobalCoord(a[0]),a[1]=this.toGlobalCoord(a[1]),t&&a[0]>a[1]&&a.reverse(),a},e.prototype.pointToData=function(t,a){return this.coordToData(this.toLocalCoord(t[this.dim==="x"?0:1]),a)},e.prototype.setCategorySortInfo=function(t){if(this.type!=="category")return!1;this.model.option.categorySortInfo=t,this.scale.setSortInfo(t)},e}(Cr);const X5=Y5;function gd(r,e,t){t=t||{};var a=r.coordinateSystem,n=e.axis,i={},o=n.getAxesOnZeroOf()[0],s=n.position,l=o?"onZero":s,u=n.dim,f=a.getRect(),h=[f.x,f.x+f.width,f.y,f.y+f.height],v={left:0,right:1,top:0,bottom:1,onZero:2},c=e.get("offset")||0,p=u==="x"?[h[2]-c,h[3]+c]:[h[0]-c,h[1]+c];if(o){var d=o.toGlobalCoord(o.dataToCoord(0));p[v.onZero]=Math.max(Math.min(d,p[1]),p[0])}i.position=[u==="y"?p[v[l]]:h[0],u==="x"?p[v[l]]:h[3]],i.rotation=Math.PI/2*(u==="x"?0:1);var g={top:-1,bottom:1,left:-1,right:1};i.labelDirection=i.tickDirection=i.nameDirection=g[s],i.labelOffset=o?p[v[s]]-p[v.onZero]:0,e.get(["axisTick","inside"])&&(i.tickDirection=-i.tickDirection),fe(t.labelInside,e.get(["axisLabel","inside"]))&&(i.labelDirection=-i.labelDirection);var y=e.get(["axisLabel","rotate"]);return i.labelRotate=l==="top"?-y:y,i.z2=1,i}function L1(r){return r.get("coordinateSystem")==="cartesian2d"}function P1(r){var e={xAxisModel:null,yAxisModel:null};return C(e,function(t,a){var n=a.replace(/Model$/,""),i=r.getReferringComponents(n,Qt).models[0];e[a]=i}),e}var sc=Math.log;function ZD(r,e,t){var a=tn.prototype,n=a.getTicks.call(t),i=a.getTicks.call(t,!0),o=n.length-1,s=a.getInterval.call(t),l=jC(r,e),u=l.extent,f=l.fixMin,h=l.fixMax;if(r.type==="log"){var v=sc(r.base);u=[sc(u[0])/v,sc(u[1])/v]}r.setExtent(u[0],u[1]),r.calcNiceExtent({splitNumber:o,fixMin:f,fixMax:h});var c=a.getExtent.call(r);f&&(u[0]=c[0]),h&&(u[1]=c[1]);var p=a.getInterval.call(r),d=u[0],g=u[1];if(f&&h)p=(g-d)/o;else if(f)for(g=u[0]+p*o;gu[0]&&isFinite(d)&&isFinite(u[0]);)p=Xv(p),d=u[1]-p*o;else{var y=r.getTicks().length-1;y>o&&(p=Xv(p));var m=p*o;g=Math.ceil(u[1]/p)*p,d=Yt(g-m),d<0&&u[0]>=0?(d=0,g=Yt(m)):g>0&&u[1]<=0&&(g=0,d=-Yt(m))}var _=(n[0].value-i[0].value)/s,S=(n[o].value-i[o].value)/s;a.setExtent.call(r,d+p*_,g+p*S),a.setInterval.call(r,p),(_||S)&&a.setNiceExtent.call(r,d+p,g-p)}var Z5=function(){function r(e,t,a){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=dd,this._initCartesian(e,t,a),this.model=e}return r.prototype.getRect=function(){return this._rect},r.prototype.update=function(e,t){var a=this._axesMap;this._updateScale(e,this.model);function n(o){var s,l=mt(o),u=l.length;if(u){for(var f=[],h=u-1;h>=0;h--){var v=+l[h],c=o[v],p=c.model,d=c.scale;ld(d)&&p.get("alignTicks")&&p.get("interval")==null?f.push(c):(so(d,p),ld(d)&&(s=c))}f.length&&(s||(s=f.pop(),so(s.scale,s.model)),C(f,function(g){ZD(g.scale,g.model,s.scale)}))}}n(a.x),n(a.y);var i={};C(a.x,function(o){R1(a,"y",o,i)}),C(a.y,function(o){R1(a,"x",o,i)}),this.resize(this.model,t)},r.prototype.resize=function(e,t,a){var n=e.getBoxLayoutParams(),i=!a&&e.get("containLabel"),o=re(n,{width:t.getWidth(),height:t.getHeight()});this._rect=o;var s=this._axesList;l(),i&&(C(s,function(u){if(!u.model.get(["axisLabel","inside"])){var f=lV(u);if(f){var h=u.isHorizontal()?"height":"width",v=u.model.get(["axisLabel","margin"]);o[h]-=f[h]+v,u.position==="top"?o.y+=f.height+v:u.position==="left"&&(o.x+=f.width+v)}}}),l()),C(this._coordsList,function(u){u.calcAffineTransform()});function l(){C(s,function(u){var f=u.isHorizontal(),h=f?[0,o.width]:[0,o.height],v=u.inverse?1:0;u.setExtent(h[v],h[1-v]),q5(u,f?o.x:o.y)})}},r.prototype.getAxis=function(e,t){var a=this._axesMap[e];if(a!=null)return a[t||0]},r.prototype.getAxes=function(){return this._axesList.slice()},r.prototype.getCartesian=function(e,t){if(e!=null&&t!=null){var a="x"+e+"y"+t;return this._coordsMap[a]}tt(e)&&(t=e.yAxisIndex,e=e.xAxisIndex);for(var n=0,i=this._coordsList;n0?"top":"bottom",i="center"):vf(n-Fa)?(o=a>0?"bottom":"top",i="center"):(o="middle",n>0&&n0?"right":"left":i=a>0?"left":"right"),{rotation:n,textAlign:i,textVerticalAlign:o}},r.makeAxisEventDataBase=function(e){var t={componentType:e.mainType,componentIndex:e.componentIndex};return t[e.mainType+"Index"]=e.componentIndex,t},r.isLabelSilent=function(e){var t=e.get("tooltip");return e.get("silent")||!(e.get("triggerEvent")||t&&t.show)},r}(),k1={axisLine:function(r,e,t,a){var n=e.get(["axisLine","show"]);if(n==="auto"&&r.handleAutoShown&&(n=r.handleAutoShown("axisLine")),!!n){var i=e.axis.getExtent(),o=a.transform,s=[i[0],0],l=[i[1],0],u=s[0]>l[0];o&&(ce(s,s,o),ce(l,l,o));var f=B({lineCap:"round"},e.getModel(["axisLine","lineStyle"]).getLineStyle()),h=new he({shape:{x1:s[0],y1:s[1],x2:l[0],y2:l[1]},style:f,strokeContainThreshold:r.strokeContainThreshold||5,silent:!0,z2:1});no(h.shape,h.style.lineWidth),h.anid="line",t.add(h);var v=e.get(["axisLine","symbol"]);if(v!=null){var c=e.get(["axisLine","symbolSize"]);U(v)&&(v=[v,v]),(U(c)||Ct(c))&&(c=[c,c]);var p=Io(e.get(["axisLine","symbolOffset"])||0,c),d=c[0],g=c[1];C([{rotate:r.rotation+Math.PI/2,offset:p[0],r:0},{rotate:r.rotation-Math.PI/2,offset:p[1],r:Math.sqrt((s[0]-l[0])*(s[0]-l[0])+(s[1]-l[1])*(s[1]-l[1]))}],function(y,m){if(v[m]!=="none"&&v[m]!=null){var _=Jt(v[m],-d/2,-g/2,d,g,f.stroke,!0),S=y.r+y.offset,w=u?l:s;_.attr({rotation:y.rotate,x:w[0]+S*Math.cos(r.rotation),y:w[1]-S*Math.sin(r.rotation),silent:!0,z2:11}),t.add(_)}})}}},axisTickLabel:function(r,e,t,a){var n=j5(t,a,e,r),i=eG(t,a,e,r);if(J5(e,i,n),tG(t,a,e,r.tickDirection),e.get(["axisLabel","hideOverlap"])){var o=vD(G(i,function(s){return{label:s,priority:s.z2,defaultAttr:{ignore:s.ignore}}}));dD(o)}},axisName:function(r,e,t,a){var n=fe(r.axisName,e.get("name"));if(n){var i=e.get("nameLocation"),o=r.nameDirection,s=e.getModel("nameTextStyle"),l=e.get("nameGap")||0,u=e.axis.getExtent(),f=u[0]>u[1]?-1:1,h=[i==="start"?u[0]-f*l:i==="end"?u[1]+f*l:(u[0]+u[1])/2,N1(i)?r.labelOffset+o*l:0],v,c=e.get("nameRotate");c!=null&&(c=c*Fa/180);var p;N1(i)?v=ni.innerTextLayout(r.rotation,c??r.rotation,o):(v=Q5(r.rotation,i,c||0,u),p=r.axisNameAvailableWidth,p!=null&&(p=Math.abs(p/Math.sin(v.rotation)),!isFinite(p)&&(p=null)));var d=s.getFont(),g=e.get("nameTruncate",!0)||{},y=g.ellipsis,m=fe(r.nameTruncateMaxWidth,g.maxWidth,p),_=new Tt({x:h[0],y:h[1],rotation:v.rotation,silent:ni.isLabelSilent(e),style:Ot(s,{text:n,font:d,overflow:"truncate",width:m,ellipsis:y,fill:s.getTextColor()||e.get(["axisLine","lineStyle","color"]),align:s.get("align")||v.textAlign,verticalAlign:s.get("verticalAlign")||v.textVerticalAlign}),z2:1});if(So({el:_,componentModel:e,itemName:n}),_.__fullText=n,_.anid="name",e.get("triggerEvent")){var S=ni.makeAxisEventDataBase(e);S.targetType="axisName",S.name=n,nt(_).eventData=S}a.add(_),_.updateTransform(),t.add(_),_.decomposeTransform()}}};function Q5(r,e,t,a){var n=Yb(t-r),i,o,s=a[0]>a[1],l=e==="start"&&!s||e!=="start"&&s;return vf(n-Fa/2)?(o=l?"bottom":"top",i="center"):vf(n-Fa*1.5)?(o=l?"top":"bottom",i="center"):(o="middle",nFa/2?i=l?"left":"right":i=l?"right":"left"),{rotation:n,textAlign:i,textVerticalAlign:o}}function J5(r,e,t){if(!tD(r.axis)){var a=r.get(["axisLabel","showMinLabel"]),n=r.get(["axisLabel","showMaxLabel"]);e=e||[],t=t||[];var i=e[0],o=e[1],s=e[e.length-1],l=e[e.length-2],u=t[0],f=t[1],h=t[t.length-1],v=t[t.length-2];a===!1?(Ze(i),Ze(u)):O1(i,o)&&(a?(Ze(o),Ze(f)):(Ze(i),Ze(u))),n===!1?(Ze(s),Ze(h)):O1(l,s)&&(n?(Ze(l),Ze(v)):(Ze(s),Ze(h)))}}function Ze(r){r&&(r.ignore=!0)}function O1(r,e){var t=r&&r.getBoundingRect().clone(),a=e&&e.getBoundingRect().clone();if(!(!t||!a)){var n=rh([]);return pi(n,n,-r.rotation),t.applyTransform(oa([],n,r.getLocalTransform())),a.applyTransform(oa([],n,e.getLocalTransform())),t.intersect(a)}}function N1(r){return r==="middle"||r==="center"}function qD(r,e,t,a,n){for(var i=[],o=[],s=[],l=0;l=0||r===e}function sG(r){var e=fy(r);if(e){var t=e.axisPointerModel,a=e.axis.scale,n=t.option,i=t.get("status"),o=t.get("value");o!=null&&(o=a.parse(o));var s=yd(t);i==null&&(n.status=s?"show":"hide");var l=a.getExtent().slice();l[0]>l[1]&&l.reverse(),(o==null||o>l[1])&&(o=l[1]),o0&&!p.min?p.min=0:p.min!=null&&p.min<0&&!p.max&&(p.max=0);var d=l;p.color!=null&&(d=J({color:p.color},l));var g=ut(et(p),{boundaryGap:t,splitNumber:a,scale:n,axisLine:i,axisTick:o,axisLabel:s,name:p.text,showName:u,nameLocation:"end",nameGap:h,nameTextStyle:d,triggerEvent:v},!1);if(U(f)){var y=g.name;g.name=f.replace("{value}",y??"")}else K(f)&&(g.name=f(g.name,g));var m=new Nt(g,null,this.ecModel);return jt(m,wl.prototype),m.mainType="radar",m.componentIndex=this.componentIndex,m},this);this._indicatorModels=c},e.prototype.getIndicatorModels=function(){return this._indicatorModels},e.type="radar",e.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:ut({lineStyle:{color:"#bbb"}},Ko.axisLine),axisLabel:mu(Ko.axisLabel,!1),axisTick:mu(Ko.axisTick,!1),splitLine:mu(Ko.splitLine,!0),splitArea:mu(Ko.splitArea,!0),indicator:[]},e}(bt);const bG=wG;var AG=["axisLine","axisTickLabel","axisName"],TG=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=this.group;i.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},e.prototype._buildAxes=function(t){var a=t.coordinateSystem,n=a.getIndicatorAxes(),i=G(n,function(o){var s=o.model.get("showName")?o.name:"",l=new da(o.model,{axisName:s,position:[a.cx,a.cy],rotation:o.angle,labelDirection:-1,tickDirection:-1,nameDirection:1});return l});C(i,function(o){C(AG,o.add,o),this.group.add(o.getGroup())},this)},e.prototype._buildSplitLineAndArea=function(t){var a=t.coordinateSystem,n=a.getIndicatorAxes();if(!n.length)return;var i=t.get("shape"),o=t.getModel("splitLine"),s=t.getModel("splitArea"),l=o.getModel("lineStyle"),u=s.getModel("areaStyle"),f=o.get("show"),h=s.get("show"),v=l.get("color"),c=u.get("color"),p=z(v)?v:[v],d=z(c)?c:[c],g=[],y=[];function m(R,E,N){var O=N%E.length;return R[O]=R[O]||[],O}if(i==="circle")for(var _=n[0].getTicksCoords(),S=a.cx,w=a.cy,x=0;x<_.length;x++){if(f){var b=m(g,p,x);g[b].push(new Xr({shape:{cx:S,cy:w,r:_[x].coord}}))}if(h&&x<_.length-1){var b=m(y,d,x);y[b].push(new hh({shape:{cx:S,cy:w,r0:_[x].coord,r:_[x+1].coord}}))}}else for(var A,T=G(n,function(R,E){var N=R.getTicksCoords();return A=A==null?N.length-1:Math.min(N.length-1,A),G(N,function(O){return a.coordToPoint(O.coord,E)})}),D=[],x=0;x<=A;x++){for(var M=[],I=0;I3?1.4:o>1?1.2:1.1,f=i>0?u:1/u;fc(this,"zoom","zoomOnMouseWheel",t,{scale:f,originX:s,originY:l,isAvailableBehavior:null})}if(n){var h=Math.abs(i),v=(i>0?1:-1)*(h>3?.4:h>1?.15:.05);fc(this,"scrollMove","moveOnMouseWheel",t,{scrollDelta:v,originX:s,originY:l,isAvailableBehavior:null})}}},e.prototype._pinchHandler=function(t){if(!H1(this._zr,"globalPan")){var a=t.pinchScale>1?1.1:1/1.1;fc(this,"zoom",null,t,{scale:a,originX:t.pinchX,originY:t.pinchY,isAvailableBehavior:null})}},e}(fr);function fc(r,e,t,a,n){r.pointerChecker&&r.pointerChecker(a,n.originX,n.originY)&&(fa(a.event),eM(r,e,t,a,n))}function eM(r,e,t,a,n){n.isAvailableBehavior=$(Qu,null,t,a),r.trigger(e,n)}function Qu(r,e,t){var a=t[r];return!r||a&&(!U(a)||e.event[a+"Key"])}const Ml=OG;function vy(r,e,t){var a=r.target;a.x+=e,a.y+=t,a.dirty()}function cy(r,e,t,a){var n=r.target,i=r.zoomLimit,o=r.zoom=r.zoom||1;if(o*=e,i){var s=i.min||0,l=i.max||1/0;o=Math.max(Math.min(l,o),s)}var u=o/r.zoom;r.zoom=o,n.x-=(t-n.x)*(u-1),n.y-=(a-n.y)*(u-1),n.scaleX*=u,n.scaleY*=u,n.dirty()}var NG={axisPointer:1,tooltip:1,brush:1};function Rh(r,e,t){var a=e.getComponentByElement(r.topTarget),n=a&&a.coordinateSystem;return a&&a!==t&&!NG.hasOwnProperty(a.mainType)&&n&&n.model!==t}function rM(r){if(U(r)){var e=new DOMParser;r=e.parseFromString(r,"text/xml")}var t=r;for(t.nodeType===9&&(t=t.firstChild);t.nodeName.toLowerCase()!=="svg"||t.nodeType!==1;)t=t.nextSibling;return t}var hc,Of={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},W1=mt(Of),Nf={"alignment-baseline":"textBaseline","stop-color":"stopColor"},U1=mt(Nf),BG=function(){function r(){this._defs={},this._root=null}return r.prototype.parse=function(e,t){t=t||{};var a=rM(e);this._defsUsePending=[];var n=new at;this._root=n;var i=[],o=a.getAttribute("viewBox")||"",s=parseFloat(a.getAttribute("width")||t.width),l=parseFloat(a.getAttribute("height")||t.height);isNaN(s)&&(s=null),isNaN(l)&&(l=null),He(a,n,null,!0,!1);for(var u=a.firstChild;u;)this._parseNode(u,n,i,null,!1,!1),u=u.nextSibling;GG(this._defs,this._defsUsePending),this._defsUsePending=[];var f,h;if(o){var v=Eh(o);v.length>=4&&(f={x:parseFloat(v[0]||0),y:parseFloat(v[1]||0),width:parseFloat(v[2]),height:parseFloat(v[3])})}if(f&&s!=null&&l!=null&&(h=nM(f,{x:0,y:0,width:s,height:l}),!t.ignoreViewBox)){var c=n;n=new at,n.add(c),c.scaleX=c.scaleY=h.scale,c.x=h.x,c.y=h.y}return!t.ignoreRootClip&&s!=null&&l!=null&&n.setClipPath(new xt({shape:{x:0,y:0,width:s,height:l}})),{root:n,width:s,height:l,viewBoxRect:f,viewBoxTransform:h,named:i}},r.prototype._parseNode=function(e,t,a,n,i,o){var s=e.nodeName.toLowerCase(),l,u=n;if(s==="defs"&&(i=!0),s==="text"&&(o=!0),s==="defs"||s==="switch")l=t;else{if(!i){var f=hc[s];if(f&&Y(hc,s)){l=f.call(this,e,t);var h=e.getAttribute("name");if(h){var v={name:h,namedFrom:null,svgNodeTagLower:s,el:l};a.push(v),s==="g"&&(u=v)}else n&&a.push({name:n.name,namedFrom:n,svgNodeTagLower:s,el:l});t.add(l)}}var c=$1[s];if(c&&Y($1,s)){var p=c.call(this,e),d=e.getAttribute("id");d&&(this._defs[d]=p)}}if(l&&l.isGroup)for(var g=e.firstChild;g;)g.nodeType===1?this._parseNode(g,l,a,u,i,o):g.nodeType===3&&o&&this._parseText(g,l),g=g.nextSibling},r.prototype._parseText=function(e,t){var a=new Gs({style:{text:e.textContent},silent:!0,x:this._textX||0,y:this._textY||0});qe(t,a),He(e,a,this._defsUsePending,!1,!1),VG(a,t);var n=a.style,i=n.fontSize;i&&i<9&&(n.fontSize=9,a.scaleX*=i/9,a.scaleY*=i/9);var o=(n.fontSize||n.fontFamily)&&[n.fontStyle,n.fontWeight,(n.fontSize||12)+"px",n.fontFamily||"sans-serif"].join(" ");n.font=o;var s=a.getBoundingRect();return this._textX+=s.width,t.add(a),a},r.internalField=function(){hc={g:function(e,t){var a=new at;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a},rect:function(e,t){var a=new xt;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a.setShape({x:parseFloat(e.getAttribute("x")||"0"),y:parseFloat(e.getAttribute("y")||"0"),width:parseFloat(e.getAttribute("width")||"0"),height:parseFloat(e.getAttribute("height")||"0")}),a.silent=!0,a},circle:function(e,t){var a=new Xr;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a.setShape({cx:parseFloat(e.getAttribute("cx")||"0"),cy:parseFloat(e.getAttribute("cy")||"0"),r:parseFloat(e.getAttribute("r")||"0")}),a.silent=!0,a},line:function(e,t){var a=new he;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a.setShape({x1:parseFloat(e.getAttribute("x1")||"0"),y1:parseFloat(e.getAttribute("y1")||"0"),x2:parseFloat(e.getAttribute("x2")||"0"),y2:parseFloat(e.getAttribute("y2")||"0")}),a.silent=!0,a},ellipse:function(e,t){var a=new wg;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a.setShape({cx:parseFloat(e.getAttribute("cx")||"0"),cy:parseFloat(e.getAttribute("cy")||"0"),rx:parseFloat(e.getAttribute("rx")||"0"),ry:parseFloat(e.getAttribute("ry")||"0")}),a.silent=!0,a},polygon:function(e,t){var a=e.getAttribute("points"),n;a&&(n=Z1(a));var i=new ze({shape:{points:n||[]},silent:!0});return qe(t,i),He(e,i,this._defsUsePending,!1,!1),i},polyline:function(e,t){var a=e.getAttribute("points"),n;a&&(n=Z1(a));var i=new Ge({shape:{points:n||[]},silent:!0});return qe(t,i),He(e,i,this._defsUsePending,!1,!1),i},image:function(e,t){var a=new ye;return qe(t,a),He(e,a,this._defsUsePending,!1,!1),a.setStyle({image:e.getAttribute("xlink:href")||e.getAttribute("href"),x:+e.getAttribute("x"),y:+e.getAttribute("y"),width:+e.getAttribute("width"),height:+e.getAttribute("height")}),a.silent=!0,a},text:function(e,t){var a=e.getAttribute("x")||"0",n=e.getAttribute("y")||"0",i=e.getAttribute("dx")||"0",o=e.getAttribute("dy")||"0";this._textX=parseFloat(a)+parseFloat(i),this._textY=parseFloat(n)+parseFloat(o);var s=new at;return qe(t,s),He(e,s,this._defsUsePending,!1,!0),s},tspan:function(e,t){var a=e.getAttribute("x"),n=e.getAttribute("y");a!=null&&(this._textX=parseFloat(a)),n!=null&&(this._textY=parseFloat(n));var i=e.getAttribute("dx")||"0",o=e.getAttribute("dy")||"0",s=new at;return qe(t,s),He(e,s,this._defsUsePending,!1,!0),this._textX+=parseFloat(i),this._textY+=parseFloat(o),s},path:function(e,t){var a=e.getAttribute("d")||"",n=RA(a);return qe(t,n),He(e,n,this._defsUsePending,!1,!1),n.silent=!0,n}}}(),r}(),$1={lineargradient:function(r){var e=parseInt(r.getAttribute("x1")||"0",10),t=parseInt(r.getAttribute("y1")||"0",10),a=parseInt(r.getAttribute("x2")||"10",10),n=parseInt(r.getAttribute("y2")||"0",10),i=new cl(e,t,a,n);return Y1(r,i),X1(r,i),i},radialgradient:function(r){var e=parseInt(r.getAttribute("cx")||"0",10),t=parseInt(r.getAttribute("cy")||"0",10),a=parseInt(r.getAttribute("r")||"0",10),n=new $A(e,t,a);return Y1(r,n),X1(r,n),n}};function Y1(r,e){var t=r.getAttribute("gradientUnits");t==="userSpaceOnUse"&&(e.global=!0)}function X1(r,e){for(var t=r.firstChild;t;){if(t.nodeType===1&&t.nodeName.toLocaleLowerCase()==="stop"){var a=t.getAttribute("offset"),n=void 0;a&&a.indexOf("%")>0?n=parseInt(a,10)/100:a?n=parseFloat(a):n=0;var i={};aM(t,i,i);var o=i.stopColor||t.getAttribute("stop-color")||"#000000";e.colorStops.push({offset:n,color:o})}t=t.nextSibling}}function qe(r,e){r&&r.__inheritedStyle&&(e.__inheritedStyle||(e.__inheritedStyle={}),J(e.__inheritedStyle,r.__inheritedStyle))}function Z1(r){for(var e=Eh(r),t=[],a=0;a0;i-=2){var o=a[i],s=a[i-1],l=Eh(o);switch(n=n||lr(),s){case"translate":Wr(n,n,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":og(n,n,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":pi(n,n,-parseFloat(l[0])*vc);break;case"skewX":var u=Math.tan(parseFloat(l[0])*vc);oa(n,[1,0,u,1,0,0],n);break;case"skewY":var f=Math.tan(parseFloat(l[0])*vc);oa(n,[1,f,0,1,0,0],n);break;case"matrix":n[0]=parseFloat(l[0]),n[1]=parseFloat(l[1]),n[2]=parseFloat(l[2]),n[3]=parseFloat(l[3]),n[4]=parseFloat(l[4]),n[5]=parseFloat(l[5]);break}}e.setLocalTransform(n)}}var K1=/([^\s:;]+)\s*:\s*([^:;]+)/g;function aM(r,e,t){var a=r.getAttribute("style");if(a){K1.lastIndex=0;for(var n;(n=K1.exec(a))!=null;){var i=n[1],o=Y(Of,i)?Of[i]:null;o&&(e[o]=n[2]);var s=Y(Nf,i)?Nf[i]:null;s&&(t[s]=n[2])}}}function UG(r,e,t){for(var a=0;a0,g={api:a,geo:l,mapOrGeoModel:e,data:s,isVisualEncodedByVisualMap:d,isGeo:o,transformInfoRaw:v};l.resourceType==="geoJSON"?this._buildGeoJSON(g):l.resourceType==="geoSVG"&&this._buildSVG(g),this._updateController(e,t,a),this._updateMapSelectHandler(e,u,a,n)},r.prototype._buildGeoJSON=function(e){var t=this._regionsGroupByName=q(),a=q(),n=this._regionsGroup,i=e.transformInfoRaw,o=e.mapOrGeoModel,s=e.data,l=e.geo.projection,u=l&&l.stream;function f(c,p){return p&&(c=p(c)),c&&[c[0]*i.scaleX+i.x,c[1]*i.scaleY+i.y]}function h(c){for(var p=[],d=!u&&l&&l.project,g=0;g=0)&&(v=n);var c=o?{normal:{align:"center",verticalAlign:"middle"}}:null;ge(e,oe(a),{labelFetcher:v,labelDataIndex:h,defaultText:t},c);var p=e.getTextContent();if(p&&(iM(p).ignore=p.ignore,e.textConfig&&o)){var d=e.getBoundingRect().clone();e.textConfig.layoutRect=d,e.textConfig.position=[(o[0]-d.x)/d.width*100+"%",(o[1]-d.y)/d.height*100+"%"]}e.disableLabelAnimation=!0}else e.removeTextContent(),e.removeTextConfig(),e.disableLabelAnimation=null}function eS(r,e,t,a,n,i){r.data?r.data.setItemGraphicEl(i,e):nt(e).eventData={componentType:"geo",componentIndex:n.componentIndex,geoIndex:n.componentIndex,name:t,region:a&&a.option||{}}}function rS(r,e,t,a,n){r.data||So({el:e,componentModel:n,itemName:t,itemTooltipOption:a.get("tooltip")})}function aS(r,e,t,a,n){e.highDownSilentOnTouch=!!n.get("selectedMode");var i=a.getModel("emphasis"),o=i.get("focus");return Wt(e,o,i.get("blurScope"),i.get("disabled")),r.isGeo&&vE(e,n,t),o}function nS(r,e,t){var a=[],n;function i(){n=[]}function o(){n.length&&(a.push(n),n=[])}var s=e({polygonStart:i,polygonEnd:o,lineStart:i,lineEnd:o,point:function(l,u){isFinite(l)&&isFinite(u)&&n.push([l,u])},sphere:function(){}});return!t&&s.polygonStart(),C(r,function(l){s.lineStart();for(var u=0;u-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2),n},e.type="series.map",e.dependencies=["geo"],e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},e}(Gt);const vF=hF;function cF(r,e){var t={};return C(r,function(a){a.each(a.mapDimension("value"),function(n,i){var o="ec-"+a.getName(i);t[o]=t[o]||[],isNaN(n)||t[o].push(n)})}),r[0].map(r[0].mapDimension("value"),function(a,n){for(var i="ec-"+r[0].getName(n),o=0,s=1/0,l=-1/0,u=t[i].length,f=0;f1?(S.width=_,S.height=_/g):(S.height=_,S.width=_*g),S.y=m[1]-S.height/2,S.x=m[0]-S.width/2;else{var w=r.getBoxLayoutParams();w.aspect=g,S=re(w,{width:p,height:d})}this.setViewRect(S.x,S.y,S.width,S.height),this.setCenter(r.get("center"),e),this.setZoom(r.get("zoom"))}function mF(r,e){C(e.get("geoCoord"),function(t,a){r.addGeoCoord(a,t)})}var _F=function(){function r(){this.dimensions=sM}return r.prototype.create=function(e,t){var a=[];function n(o){return{nameProperty:o.get("nameProperty"),aspectScale:o.get("aspectScale"),projection:o.get("projection")}}e.eachComponent("geo",function(o,s){var l=o.get("map"),u=new lS(l+s,l,B({nameMap:o.get("nameMap")},n(o)));u.zoomLimit=o.get("scaleLimit"),a.push(u),o.coordinateSystem=u,u.model=o,u.resize=uS,u.resize(o,t)}),e.eachSeries(function(o){var s=o.get("coordinateSystem");if(s==="geo"){var l=o.get("geoIndex")||0;o.coordinateSystem=a[l]}});var i={};return e.eachSeriesByType("map",function(o){if(!o.getHostGeoModel()){var s=o.getMapType();i[s]=i[s]||[],i[s].push(o)}}),C(i,function(o,s){var l=G(o,function(f){return f.get("nameMap")}),u=new lS(s,s,B({nameMap:eg(l)},n(o[0])));u.zoomLimit=fe.apply(null,G(o,function(f){return f.get("scaleLimit")})),a.push(u),u.resize=uS,u.resize(o[0],t),C(o,function(f){f.coordinateSystem=u,mF(u,f)})}),a},r.prototype.getFilledRegions=function(e,t,a,n){for(var i=(e||[]).slice(),o=q(),s=0;s=0;o--){var s=n[o];s.hierNode={defaultAncestor:null,ancestor:s,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},t.push(s)}}function MF(r,e){var t=r.isExpand?r.children:[],a=r.parentNode.children,n=r.hierNode.i?a[r.hierNode.i-1]:null;if(t.length){PF(r);var i=(t[0].hierNode.prelim+t[t.length-1].hierNode.prelim)/2;n?(r.hierNode.prelim=n.hierNode.prelim+e(r,n),r.hierNode.modifier=r.hierNode.prelim-i):r.hierNode.prelim=i}else n&&(r.hierNode.prelim=n.hierNode.prelim+e(r,n));r.parentNode.hierNode.defaultAncestor=RF(r,n,r.parentNode.hierNode.defaultAncestor||a[0],e)}function IF(r){var e=r.hierNode.prelim+r.parentNode.hierNode.modifier;r.setLayout({x:e},!0),r.hierNode.modifier+=r.parentNode.hierNode.modifier}function hS(r){return arguments.length?r:OF}function ps(r,e){return r-=Math.PI/2,{x:e*Math.cos(r),y:e*Math.sin(r)}}function LF(r,e){return re(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function PF(r){for(var e=r.children,t=e.length,a=0,n=0;--t>=0;){var i=e[t];i.hierNode.prelim+=a,i.hierNode.modifier+=a,n+=i.hierNode.change,a+=i.hierNode.shift+n}}function RF(r,e,t,a){if(e){for(var n=r,i=r,o=i.parentNode.children[0],s=e,l=n.hierNode.modifier,u=i.hierNode.modifier,f=o.hierNode.modifier,h=s.hierNode.modifier;s=cc(s),i=pc(i),s&&i;){n=cc(n),o=pc(o),n.hierNode.ancestor=r;var v=s.hierNode.prelim+h-i.hierNode.prelim-u+a(s,i);v>0&&(kF(EF(s,r,t),r,v),u+=v,l+=v),h+=s.hierNode.modifier,u+=i.hierNode.modifier,l+=n.hierNode.modifier,f+=o.hierNode.modifier}s&&!cc(n)&&(n.hierNode.thread=s,n.hierNode.modifier+=h-l),i&&!pc(o)&&(o.hierNode.thread=i,o.hierNode.modifier+=u-f,t=r)}return t}function cc(r){var e=r.children;return e.length&&r.isExpand?e[e.length-1]:r.hierNode.thread}function pc(r){var e=r.children;return e.length&&r.isExpand?e[0]:r.hierNode.thread}function EF(r,e,t){return r.hierNode.ancestor.parentNode===e.parentNode?r.hierNode.ancestor:t}function kF(r,e,t){var a=t/(e.hierNode.i-r.hierNode.i);e.hierNode.change-=a,e.hierNode.shift+=t,e.hierNode.modifier+=t,e.hierNode.prelim+=t,r.hierNode.change+=a}function OF(r,e){return r.parentNode===e.parentNode?1:2}var NF=function(){function r(){this.parentPoint=[],this.childPoints=[]}return r}(),BF=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new NF},e.prototype.buildPath=function(t,a){var n=a.childPoints,i=n.length,o=a.parentPoint,s=n[0],l=n[i-1];if(i===1){t.moveTo(o[0],o[1]),t.lineTo(s[0],s[1]);return}var u=a.orient,f=u==="TB"||u==="BT"?0:1,h=1-f,v=H(a.forkPosition,1),c=[];c[f]=o[f],c[h]=o[h]+(l[h]-o[h])*v,t.moveTo(o[0],o[1]),t.lineTo(c[0],c[1]),t.moveTo(s[0],s[1]),c[f]=s[f],t.lineTo(c[0],c[1]),c[f]=l[f],t.lineTo(c[0],c[1]),t.lineTo(l[0],l[1]);for(var p=1;pm.x,w||(S=S-Math.PI));var b=w?"left":"right",A=s.getModel("label"),T=A.get("rotate"),D=T*(Math.PI/180),M=g.getTextContent();M&&(g.setTextConfig({position:A.get("position")||b,rotation:T==null?-S:D,origin:"center"}),M.setStyle("verticalAlign","middle"))}var I=s.get(["emphasis","focus"]),L=I==="relative"?af(o.getAncestorsIndices(),o.getDescendantIndices()):I==="ancestor"?o.getAncestorsIndices():I==="descendant"?o.getDescendantIndices():null;L&&(nt(t).focus=L),zF(n,o,f,t,p,c,d,a),t.__edge&&(t.onHoverStateChange=function(P){if(P!=="blur"){var R=o.parentNode&&r.getItemGraphicEl(o.parentNode.dataIndex);R&&R.hoverState===vl||pf(t.__edge,P)}})}function zF(r,e,t,a,n,i,o,s){var l=e.getModel(),u=r.get("edgeShape"),f=r.get("layout"),h=r.getOrient(),v=r.get(["lineStyle","curveness"]),c=r.get("edgeForkPosition"),p=l.getModel("lineStyle").getLineStyle(),d=a.__edge;if(u==="curve")e.parentNode&&e.parentNode!==t&&(d||(d=a.__edge=new vh({shape:Sd(f,h,v,n,n)})),Dt(d,{shape:Sd(f,h,v,i,o)},r));else if(u==="polyline"&&f==="orthogonal"&&e!==t&&e.children&&e.children.length!==0&&e.isExpand===!0){for(var g=e.children,y=[],m=0;mt&&(t=n.height)}this.height=t+1},r.prototype.getNodeById=function(e){if(this.getId()===e)return this;for(var t=0,a=this.children,n=a.length;t=0&&this.hostTree.data.setItemLayout(this.dataIndex,e,t)},r.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},r.prototype.getModel=function(e){if(!(this.dataIndex<0)){var t=this.hostTree,a=t.data.getItemModel(this.dataIndex);return a.getModel(e)}},r.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},r.prototype.setVisual=function(e,t){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,e,t)},r.prototype.getVisual=function(e){return this.hostTree.data.getItemVisual(this.dataIndex,e)},r.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},r.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},r.prototype.getChildIndex=function(){if(this.parentNode){for(var e=this.parentNode.children,t=0;t=0){var a=t.getData().tree.root,n=r.targetNode;if(U(n)&&(n=a.getNodeById(n)),n&&a.contains(n))return{node:n};var i=r.targetNodeId;if(i!=null&&(n=a.getNodeById(i)))return{node:n}}}function pM(r){for(var e=[];r;)r=r.parentNode,r&&e.push(r);return e.reverse()}function my(r,e){var t=pM(r);return vt(t,e)>=0}function kh(r,e){for(var t=[];r;){var a=r.dataIndex;t.push({name:r.name,dataIndex:a,value:e.getRawValue(a)}),r=r.parentNode}return t.reverse(),t}var KF=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.hasSymbolVisual=!0,t.ignoreStyleOnData=!0,t}return e.prototype.getInitialData=function(t){var a={name:t.name,children:t.data},n=t.leaves||{},i=new Nt(n,this,this.ecModel),o=yy.createTree(a,this,s);function s(h){h.wrapMethod("getItemModel",function(v,c){var p=o.getNodeByDataIndex(c);return p&&p.children.length&&p.isExpand||(v.parentModel=i),v})}var l=0;o.eachNode("preorder",function(h){h.depth>l&&(l=h.depth)});var u=t.expandAndCollapse,f=u&&t.initialTreeDepth>=0?t.initialTreeDepth:l;return o.root.eachNode("preorder",function(h){var v=h.hostTree.data.getRawDataItem(h.dataIndex);h.isExpand=v&&v.collapsed!=null?!v.collapsed:h.depth<=f}),o.data},e.prototype.getOrient=function(){var t=this.get("orient");return t==="horizontal"?t="LR":t==="vertical"&&(t="TB"),t},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.formatTooltip=function(t,a,n){for(var i=this.getData().tree,o=i.root.children[0],s=i.getNodeByDataIndex(t),l=s.getValue(),u=s.name;s&&s!==o;)u=s.parentNode.name+"."+u,s=s.parentNode;return se("nameValue",{name:u,value:l,noValue:isNaN(l)||l==null})},e.prototype.getDataParams=function(t){var a=r.prototype.getDataParams.apply(this,arguments),n=this.getData().tree.getNodeByDataIndex(t);return a.treeAncestors=kh(n,this),a.collapsed=!n.isExpand,a},e.type="series.tree",e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},e}(Gt);const QF=KF;function JF(r,e,t){for(var a=[r],n=[],i;i=a.pop();)if(n.push(i),i.isExpand){var o=i.children;if(o.length)for(var s=0;s=0;i--)t.push(n[i])}}function jF(r,e){r.eachSeriesByType("tree",function(t){t3(t,e)})}function t3(r,e){var t=LF(r,e);r.layoutInfo=t;var a=r.get("layout"),n=0,i=0,o=null;a==="radial"?(n=2*Math.PI,i=Math.min(t.height,t.width)/2,o=hS(function(_,S){return(_.parentNode===S.parentNode?1:2)/_.depth})):(n=t.width,i=t.height,o=hS());var s=r.getData().tree.root,l=s.children[0];if(l){DF(s),JF(l,MF,o),s.hierNode.modifier=-l.hierNode.prelim,Jo(l,IF);var u=l,f=l,h=l;Jo(l,function(_){var S=_.getLayout().x;Sf.getLayout().x&&(f=_),_.depth>h.depth&&(h=_)});var v=u===f?1:o(u,f)/2,c=v-u.getLayout().x,p=0,d=0,g=0,y=0;if(a==="radial")p=n/(f.getLayout().x+v+c),d=i/(h.depth-1||1),Jo(l,function(_){g=(_.getLayout().x+c)*p,y=(_.depth-1)*d;var S=ps(g,y);_.setLayout({x:S.x,y:S.y,rawX:g,rawY:y},!0)});else{var m=r.getOrient();m==="RL"||m==="LR"?(d=i/(f.getLayout().x+v+c),p=n/(h.depth-1||1),Jo(l,function(_){y=(_.getLayout().x+c)*d,g=m==="LR"?(_.depth-1)*p:n-(_.depth-1)*p,_.setLayout({x:g,y},!0)})):(m==="TB"||m==="BT")&&(p=n/(f.getLayout().x+v+c),d=i/(h.depth-1||1),Jo(l,function(_){g=(_.getLayout().x+c)*p,y=m==="TB"?(_.depth-1)*d:i-(_.depth-1)*d,_.setLayout({x:g,y},!0)}))}}}function e3(r){r.eachSeriesByType("tree",function(e){var t=e.getData(),a=t.tree;a.eachNode(function(n){var i=n.getModel(),o=i.getModel("itemStyle").getItemStyle(),s=t.ensureUniqueItemVisual(n.dataIndex,"style");B(s,o)})})}function r3(r){r.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(e,t){t.eachComponent({mainType:"series",subType:"tree",query:e},function(a){var n=e.dataIndex,i=a.getData().tree,o=i.getNodeByDataIndex(n);o.isExpand=!o.isExpand})}),r.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(e,t,a){t.eachComponent({mainType:"series",subType:"tree",query:e},function(n){var i=n.coordinateSystem,o=dy(i,e,void 0,a);n.setCenter&&n.setCenter(o.center),n.setZoom&&n.setZoom(o.zoom)})})}function a3(r){r.registerChartView(GF),r.registerSeriesModel(QF),r.registerLayout(jF),r.registerVisual(e3),r3(r)}var gS=["treemapZoomToNode","treemapRender","treemapMove"];function n3(r){for(var e=0;e1;)i=i.parentNode;var o=qp(r.ecModel,i.name||i.dataIndex+"",a);n.setVisual("decal",o)})}var i3=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.preventUsingHoverLayer=!0,t}return e.prototype.getInitialData=function(t,a){var n={name:t.name,children:t.data};gM(n);var i=t.levels||[],o=this.designatedVisualItemStyle={},s=new Nt({itemStyle:o},this,a);i=t.levels=o3(i,a);var l=G(i||[],function(h){return new Nt(h,s,a)},this),u=yy.createTree(n,this,f);function f(h){h.wrapMethod("getItemModel",function(v,c){var p=u.getNodeByDataIndex(c),d=p?l[p.depth]:null;return v.parentModel=d||s,v})}return u.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.formatTooltip=function(t,a,n){var i=this.getData(),o=this.getRawValue(t),s=i.getName(t);return se("nameValue",{name:s,value:o})},e.prototype.getDataParams=function(t){var a=r.prototype.getDataParams.apply(this,arguments),n=this.getData().tree.getNodeByDataIndex(t);return a.treeAncestors=kh(n,this),a.treePathInfo=a.treeAncestors,a},e.prototype.setLayoutInfo=function(t){this.layoutInfo=this.layoutInfo||{},B(this.layoutInfo,t)},e.prototype.mapIdToIndex=function(t){var a=this._idIndexMap;a||(a=this._idIndexMap=q(),this._idIndexMapCount=0);var n=a.get(t);return n==null&&a.set(t,n=this._idIndexMapCount++),n},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var a=this.getRawData().tree.root;(!t||t!==a&&!a.contains(t))&&(this._viewRoot=a)},e.prototype.enableAriaDecal=function(){dM(this)},e.type="series.treemap",e.layoutMode="box",e.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.32*.32,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}},emphasis:{itemStyle:{color:"rgba(0,0,0,0.9)"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},e}(Gt);function gM(r){var e=0;C(r.children,function(a){gM(a);var n=a.value;z(n)&&(n=n[0]),e+=n});var t=r.value;z(t)&&(t=t[0]),(t==null||isNaN(t))&&(t=e),t<0&&(t=0),z(r.value)?r.value[0]=t:r.value=t}function o3(r,e){var t=Rt(e.get("color")),a=Rt(e.get(["aria","decal","decals"]));if(t){r=r||[];var n,i;C(r,function(s){var l=new Nt(s),u=l.get("color"),f=l.get("decal");(l.get(["itemStyle","color"])||u&&u!=="none")&&(n=!0),(l.get(["itemStyle","decal"])||f&&f!=="none")&&(i=!0)});var o=r[0]||(r[0]={});return n||(o.color=t.slice()),!i&&a&&(o.decal=a.slice()),r}}const s3=i3;var l3=8,yS=8,dc=5,u3=function(){function r(e){this.group=new at,e.add(this.group)}return r.prototype.render=function(e,t,a,n){var i=e.getModel("breadcrumb"),o=this.group;if(o.removeAll(),!(!i.get("show")||!a)){var s=i.getModel("itemStyle"),l=i.getModel("emphasis"),u=s.getModel("textStyle"),f=l.getModel(["itemStyle","textStyle"]),h={pos:{left:i.get("left"),right:i.get("right"),top:i.get("top"),bottom:i.get("bottom")},box:{width:t.getWidth(),height:t.getHeight()},emptyItemWidth:i.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(a,h,u),this._renderContent(e,h,s,l,u,f,n),xh(o,h.pos,h.box)}},r.prototype._prepare=function(e,t,a){for(var n=e;n;n=n.parentNode){var i=ee(n.getModel().get("name"),""),o=a.getTextRect(i),s=Math.max(o.width+l3*2,t.emptyItemWidth);t.totalWidth+=s+yS,t.renderList.push({node:n,text:i,width:s})}},r.prototype._renderContent=function(e,t,a,n,i,o,s){for(var l=0,u=t.emptyItemWidth,f=e.get(["breadcrumb","height"]),h=xk(t.pos,t.box),v=t.totalWidth,c=t.renderList,p=n.getModel("itemStyle").getItemStyle(),d=c.length-1;d>=0;d--){var g=c[d],y=g.node,m=g.width,_=g.text;v>h.width&&(v-=m-u,m=u,_=null);var S=new ze({shape:{points:f3(l,0,m,f,d===c.length-1,d===0)},style:J(a.getItemStyle(),{lineJoin:"bevel"}),textContent:new Tt({style:Ot(i,{text:_})}),textConfig:{position:"inside"},z2:mo*1e4,onclick:it(s,y)});S.disableLabelAnimation=!0,S.getTextContent().ensureState("emphasis").style=Ot(o,{text:_}),S.ensureState("emphasis").style=p,Wt(S,n.get("focus"),n.get("blurScope"),n.get("disabled")),this.group.add(S),h3(S,e,y),l+=m+yS}},r.prototype.remove=function(){this.group.removeAll()},r}();function f3(r,e,t,a,n,i){var o=[[n?r:r-dc,e],[r+t,e],[r+t,e+a],[n?r:r-dc,e+a]];return!i&&o.splice(2,0,[r+t+dc,e+a/2]),!n&&o.push([r,e+a/2]),o}function h3(r,e,t){nt(r).eventData={componentType:"series",componentSubType:"treemap",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:t&&t.dataIndex,name:t&&t.name},treePathInfo:t&&kh(t,e)}}const v3=u3;var c3=function(){function r(){this._storage=[],this._elExistsMap={}}return r.prototype.add=function(e,t,a,n,i){return this._elExistsMap[e.id]?!1:(this._elExistsMap[e.id]=!0,this._storage.push({el:e,target:t,duration:a,delay:n,easing:i}),!0)},r.prototype.finished=function(e){return this._finishedCallback=e,this},r.prototype.start=function(){for(var e=this,t=this._storage.length,a=function(){t--,t<=0&&(e._storage.length=0,e._elExistsMap={},e._finishedCallback&&e._finishedCallback())},n=0,i=this._storage.length;n_S||Math.abs(t.dy)>_S)){var a=this.seriesModel.getData().tree.root;if(!a)return;var n=a.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t.dx,y:n.y+t.dy,width:n.width,height:n.height}})}},e.prototype._onZoom=function(t){var a=t.originX,n=t.originY;if(this._state!=="animating"){var i=this.seriesModel.getData().tree.root;if(!i)return;var o=i.getLayout();if(!o)return;var s=new ft(o.x,o.y,o.width,o.height),l=this.seriesModel.layoutInfo;a-=l.x,n-=l.y;var u=lr();Wr(u,u,[-a,-n]),og(u,u,[t.scale,t.scale]),Wr(u,u,[a,n]),s.applyTransform(u),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:s.x,y:s.y,width:s.width,height:s.height}})}},e.prototype._initEvents=function(t){var a=this;t.on("click",function(n){if(a._state==="ready"){var i=a.seriesModel.get("nodeClick",!0);if(i){var o=a.findTarget(n.offsetX,n.offsetY);if(o){var s=o.node;if(s.getLayout().isLeafRoot)a._rootToNode(o);else if(i==="zoomToNode")a._zoomToNode(o);else if(i==="link"){var l=s.hostTree.data.getItemModel(s.dataIndex),u=l.get("link",!0),f=l.get("target",!0)||"blank";u&&Sf(u,f)}}}}},this)},e.prototype._renderBreadcrumb=function(t,a,n){var i=this;n||(n=t.get("leafDepth",!0)!=null?{node:t.getViewRoot()}:this.findTarget(a.getWidth()/2,a.getHeight()/2),n||(n={node:t.getData().tree.root})),(this._breadcrumb||(this._breadcrumb=new v3(this.group))).render(t,a,n.node,function(o){i._state!=="animating"&&(my(t.getViewRoot(),o)?i._rootToNode({node:o}):i._zoomToNode({node:o}))})},e.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=jo(),this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},e.prototype.dispose=function(){this._clearController()},e.prototype._zoomToNode=function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype._rootToNode=function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype.findTarget=function(t,a){var n,i=this.seriesModel.getViewRoot();return i.eachNode({attr:"viewChildren",order:"preorder"},function(o){var s=this._storage.background[o.getRawIndex()];if(s){var l=s.transformCoordToLocal(t,a),u=s.shape;if(u.x<=l[0]&&l[0]<=u.x+u.width&&u.y<=l[1]&&l[1]<=u.y+u.height)n={node:o,offsetX:l[0],offsetY:l[1]};else return!1}},this),n},e.type="treemap",e}(Bt);function jo(){return{nodeGroup:[],background:[],content:[]}}function _3(r,e,t,a,n,i,o,s,l,u){if(!o)return;var f=o.getLayout(),h=r.getData(),v=o.getModel();if(h.setItemGraphicEl(o.dataIndex,null),!f||!f.isInView)return;var c=f.width,p=f.height,d=f.borderWidth,g=f.invisible,y=o.getRawIndex(),m=s&&s.getRawIndex(),_=o.viewChildren,S=f.upperHeight,w=_&&_.length,x=v.getModel("itemStyle"),b=v.getModel(["emphasis","itemStyle"]),A=v.getModel(["blur","itemStyle"]),T=v.getModel(["select","itemStyle"]),D=x.get("borderRadius")||0,M=j("nodeGroup",xd);if(!M)return;if(l.add(M),M.x=f.x||0,M.y=f.y||0,M.markRedraw(),Bf(M).nodeWidth=c,Bf(M).nodeHeight=p,f.isAboveViewRoot)return M;var I=j("background",mS,u,g3);I&&V(M,I,w&&f.upperLabelHeight);var L=v.getModel("emphasis"),P=L.get("focus"),R=L.get("blurScope"),E=L.get("disabled"),N=P==="ancestor"?o.getAncestorsIndices():P==="descendant"?o.getDescendantIndices():P;if(w)Hs(M)&&$n(M,!1),I&&($n(I,!E),h.setItemGraphicEl(o.dataIndex,I),Fp(I,N,R));else{var O=j("content",mS,u,y3);O&&F(M,O),I.disableMorphing=!0,I&&Hs(I)&&$n(I,!1),$n(M,!E),h.setItemGraphicEl(o.dataIndex,M),Fp(M,N,R)}return M;function V(pt,rt,yt){var ht=nt(rt);if(ht.dataIndex=o.dataIndex,ht.seriesIndex=r.seriesIndex,rt.setShape({x:0,y:0,width:c,height:p,r:D}),g)W(rt);else{rt.invisible=!1;var Z=o.getVisual("style"),ot=Z.stroke,Vt=wS(x);Vt.fill=ot;var St=On(b);St.fill=b.get("borderColor");var $t=On(A);$t.fill=A.get("borderColor");var Ft=On(T);if(Ft.fill=T.get("borderColor"),yt){var me=c-2*d;X(rt,ot,Z.opacity,{x:d,y:0,width:me,height:S})}else rt.removeTextContent();rt.setStyle(Vt),rt.ensureState("emphasis").style=St,rt.ensureState("blur").style=$t,rt.ensureState("select").style=Ft,ui(rt)}pt.add(rt)}function F(pt,rt){var yt=nt(rt);yt.dataIndex=o.dataIndex,yt.seriesIndex=r.seriesIndex;var ht=Math.max(c-2*d,0),Z=Math.max(p-2*d,0);if(rt.culling=!0,rt.setShape({x:d,y:d,width:ht,height:Z,r:D}),g)W(rt);else{rt.invisible=!1;var ot=o.getVisual("style"),Vt=ot.fill,St=wS(x);St.fill=Vt,St.decal=ot.decal;var $t=On(b),Ft=On(A),me=On(T);X(rt,Vt,ot.opacity,null),rt.setStyle(St),rt.ensureState("emphasis").style=$t,rt.ensureState("blur").style=Ft,rt.ensureState("select").style=me,ui(rt)}pt.add(rt)}function W(pt){!pt.invisible&&i.push(pt)}function X(pt,rt,yt,ht){var Z=v.getModel(ht?xS:SS),ot=ee(v.get("name"),null),Vt=Z.getShallow("show");ge(pt,oe(v,ht?xS:SS),{defaultText:Vt?ot:null,inheritColor:rt,defaultOpacity:yt,labelFetcher:r,labelDataIndex:o.dataIndex});var St=pt.getTextContent();if(St){var $t=St.style,Ft=ag($t.padding||0);ht&&(pt.setTextConfig({layoutRect:ht}),St.disableLabelLayout=!0),St.beforeUpdate=function(){var Kr=Math.max((ht?ht.width:pt.shape.width)-Ft[1]-Ft[3],0),Pe=Math.max((ht?ht.height:pt.shape.height)-Ft[0]-Ft[2],0);($t.width!==Kr||$t.height!==Pe)&&St.setStyle({width:Kr,height:Pe})},$t.truncateMinChar=2,$t.lineOverflow="truncate",Q($t,ht,f);var me=St.getState("emphasis");Q(me?me.style:null,ht,f)}}function Q(pt,rt,yt){var ht=pt?pt.text:null;if(!rt&&yt.isLeafRoot&&ht!=null){var Z=r.get("drillDownIcon",!0);pt.text=Z?Z+" "+ht:ht}}function j(pt,rt,yt,ht){var Z=m!=null&&t[pt][m],ot=n[pt];return Z?(t[pt][m]=null,gt(ot,Z)):g||(Z=new rt,Z instanceof ur&&(Z.z2=S3(yt,ht)),Mt(ot,Z)),e[pt][y]=Z}function gt(pt,rt){var yt=pt[y]={};rt instanceof xd?(yt.oldX=rt.x,yt.oldY=rt.y):yt.oldShape=B({},rt.shape)}function Mt(pt,rt){var yt=pt[y]={},ht=o.parentNode,Z=rt instanceof at;if(ht&&(!a||a.direction==="drillDown")){var ot=0,Vt=0,St=n.background[ht.getRawIndex()];!a&&St&&St.oldShape&&(ot=St.oldShape.width,Vt=St.oldShape.height),Z?(yt.oldX=0,yt.oldY=Vt):yt.oldShape={x:ot,y:Vt,width:0,height:0}}yt.fadein=!Z}}function S3(r,e){return r*d3+e}const x3=m3;var rl=C,w3=tt,Vf=-1,_y=function(){function r(e){var t=e.mappingMethod,a=e.type,n=this.option=et(e);this.type=a,this.mappingMethod=t,this._normalizeData=T3[t];var i=r.visualHandlers[a];this.applyVisual=i.applyVisual,this.getColorMapper=i.getColorMapper,this._normalizedToVisual=i._normalizedToVisual[t],t==="piecewise"?(gc(n),b3(n)):t==="category"?n.categories?A3(n):gc(n,!0):(Ie(t!=="linear"||n.dataExtent),gc(n))}return r.prototype.mapValueToVisual=function(e){var t=this._normalizeData(e);return this._normalizedToVisual(t,e)},r.prototype.getNormalizer=function(){return $(this._normalizeData,this)},r.listVisualTypes=function(){return mt(r.visualHandlers)},r.isValidType=function(e){return r.visualHandlers.hasOwnProperty(e)},r.eachVisual=function(e,t,a){tt(e)?C(e,t,a):t.call(a,e)},r.mapVisual=function(e,t,a){var n,i=z(e)?[]:tt(e)?{}:(n=!0,null);return r.eachVisual(e,function(o,s){var l=t.call(a,o,s);n?i=l:i[s]=l}),i},r.retrieveVisuals=function(e){var t={},a;return e&&rl(r.visualHandlers,function(n,i){e.hasOwnProperty(i)&&(t[i]=e[i],a=!0)}),a?t:null},r.prepareVisualTypes=function(e){if(z(e))e=e.slice();else if(w3(e)){var t=[];rl(e,function(a,n){t.push(n)}),e=t}else return[];return e.sort(function(a,n){return n==="color"&&a!=="color"&&a.indexOf("color")===0?1:-1}),e},r.dependsOn=function(e,t){return t==="color"?!!(e&&e.indexOf(t)===0):e===t},r.findPieceIndex=function(e,t,a){for(var n,i=1/0,o=0,s=t.length;o=0;i--)a[i]==null&&(delete t[e[i]],e.pop())}function gc(r,e){var t=r.visual,a=[];tt(t)?rl(t,function(i){a.push(i)}):t!=null&&a.push(t);var n={color:1,symbol:1};!e&&a.length===1&&!n.hasOwnProperty(r.type)&&(a[1]=a[0]),yM(r,a)}function Su(r){return{applyVisual:function(e,t,a){var n=this.mapValueToVisual(e);a("color",r(t("color"),n))},_normalizedToVisual:wd([0,1])}}function bS(r){var e=this.option.visual;return e[Math.round(Lt(r,[0,1],[0,e.length-1],!0))]||{}}function ts(r){return function(e,t,a){a(r,this.mapValueToVisual(e))}}function ds(r){var e=this.option.visual;return e[this.option.loop&&r!==Vf?r%e.length:r]}function Nn(){return this.option.visual[0]}function wd(r){return{linear:function(e){return Lt(e,r,this.option.visual,!0)},category:ds,piecewise:function(e,t){var a=bd.call(this,t);return a==null&&(a=Lt(e,r,this.option.visual,!0)),a},fixed:Nn}}function bd(r){var e=this.option,t=e.pieceList;if(e.hasSpecialVisual){var a=_y.findPieceIndex(r,t),n=t[a];if(n&&n.visual)return n.visual[this.type]}}function yM(r,e){return r.visual=e,r.type==="color"&&(r.parsedVisual=G(e,function(t){var a=Ue(t);return a||[0,0,0,1]})),e}var T3={linear:function(r){return Lt(r,this.option.dataExtent,[0,1],!0)},piecewise:function(r){var e=this.option.pieceList,t=_y.findPieceIndex(r,e,!0);if(t!=null)return Lt(t,[0,e.length-1],[0,1],!0)},category:function(r){var e=this.option.categories?this.option.categoryMap[r]:r;return e??Vf},fixed:Zt};function xu(r,e,t){return r?e<=t:e=t.length||d===t[d.depth]){var y=P3(n,l,d,g,p,a);_M(d,y,t,a)}})}}}function M3(r,e,t){var a=B({},e),n=t.designatedVisualItemStyle;return C(["color","colorAlpha","colorSaturation"],function(i){n[i]=e[i];var o=r.get(i);n[i]=null,o!=null&&(a[i]=o)}),a}function AS(r){var e=yc(r,"color");if(e){var t=yc(r,"colorAlpha"),a=yc(r,"colorSaturation");return a&&(e=_s(e,null,null,a)),t&&(e=sf(e,t)),e}}function I3(r,e){return e!=null?_s(e,null,null,r):null}function yc(r,e){var t=r[e];if(t!=null&&t!=="none")return t}function L3(r,e,t,a,n,i){if(!(!i||!i.length)){var o=mc(e,"color")||n.color!=null&&n.color!=="none"&&(mc(e,"colorAlpha")||mc(e,"colorSaturation"));if(o){var s=e.get("visualMin"),l=e.get("visualMax"),u=t.dataExtent.slice();s!=null&&su[1]&&(u[1]=l);var f=e.get("colorMappingBy"),h={type:o.name,dataExtent:u,visual:o.range};h.type==="color"&&(f==="index"||f==="id")?(h.mappingMethod="category",h.loop=!0):h.mappingMethod="linear";var v=new pe(h);return mM(v).drColorMappingBy=f,v}}}function mc(r,e){var t=r.get(e);return z(t)&&t.length?{name:e,range:t}:null}function P3(r,e,t,a,n,i){var o=B({},e);if(n){var s=n.type,l=s==="color"&&mM(n).drColorMappingBy,u=l==="index"?a:l==="id"?i.mapIdToIndex(t.getId()):t.getValue(r.get("visualDimension"));o[s]=n.mapValueToVisual(u)}return o}var al=Math.max,zf=Math.min,TS=fe,Sy=C,SM=["itemStyle","borderWidth"],R3=["itemStyle","gapWidth"],E3=["upperLabel","show"],k3=["upperLabel","height"];const O3={seriesType:"treemap",reset:function(r,e,t,a){var n=t.getWidth(),i=t.getHeight(),o=r.option,s=re(r.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()}),l=o.size||[],u=H(TS(s.width,l[0]),n),f=H(TS(s.height,l[1]),i),h=a&&a.type,v=["treemapZoomToNode","treemapRootToNode"],c=el(a,v,r),p=h==="treemapRender"||h==="treemapMove"?a.rootRect:null,d=r.getViewRoot(),g=pM(d);if(h!=="treemapMove"){var y=h==="treemapZoomToNode"?F3(r,c,d,u,f):p?[p.width,p.height]:[u,f],m=o.sort;m&&m!=="asc"&&m!=="desc"&&(m="desc");var _={squareRatio:o.squareRatio,sort:m,leafDepth:o.leafDepth};d.hostTree.clearLayouts();var S={x:0,y:0,width:y[0],height:y[1],area:y[0]*y[1]};d.setLayout(S),xM(d,_,!1,0),S=d.getLayout(),Sy(g,function(x,b){var A=(g[b+1]||d).getValue();x.setLayout(B({dataExtent:[A,A],borderWidth:0,upperHeight:0},S))})}var w=r.getData().tree.root;w.setLayout(H3(s,p,c),!0),r.setLayoutInfo(s),wM(w,new ft(-s.x,-s.y,n,i),g,d,0)}};function xM(r,e,t,a){var n,i;if(!r.isRemoved()){var o=r.getLayout();n=o.width,i=o.height;var s=r.getModel(),l=s.get(SM),u=s.get(R3)/2,f=bM(s),h=Math.max(l,f),v=l-u,c=h-u;r.setLayout({borderWidth:l,upperHeight:h,upperLabelHeight:f},!0),n=al(n-2*v,0),i=al(i-v-c,0);var p=n*i,d=N3(r,s,p,e,t,a);if(d.length){var g={x:v,y:c,width:n,height:i},y=zf(n,i),m=1/0,_=[];_.area=0;for(var S=0,w=d.length;S=0;l--){var u=n[a==="asc"?o-l-1:l].getValue();u/t*es[1]&&(s[1]=u)})),{sum:a,dataExtent:s}}function G3(r,e,t){for(var a=0,n=1/0,i=0,o=void 0,s=r.length;ia&&(a=o));var l=r.area*r.area,u=e*e*t;return l?al(u*a/l,l/(u*n)):1/0}function CS(r,e,t,a,n){var i=e===t.width?0:1,o=1-i,s=["x","y"],l=["width","height"],u=t[s[i]],f=e?r.area/e:0;(n||f>t[l[o]])&&(f=t[l[o]]);for(var h=0,v=r.length;hNm&&(u=Nm),i=s}ua&&(a=e);var i=a%2?a+2:a+3;n=[];for(var o=0;o0&&(w[0]=-w[0],w[1]=-w[1]);var b=S[0]<0?-1:1;if(i.__position!=="start"&&i.__position!=="end"){var A=-Math.atan2(S[1],S[0]);h[0].8?"left":v[0]<-.8?"right":"center",d=v[1]>.8?"top":v[1]<-.8?"bottom":"middle";break;case"start":i.x=-v[0]*y+f[0],i.y=-v[1]*m+f[1],p=v[0]>.8?"right":v[0]<-.8?"left":"center",d=v[1]>.8?"bottom":v[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":i.x=y*b+f[0],i.y=f[1]+T,p=S[0]<0?"right":"left",i.originX=-y*b,i.originY=-T;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":i.x=x[0],i.y=x[1]+T,p="center",i.originY=-T;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":i.x=-y*b+h[0],i.y=h[1]+T,p=S[0]>=0?"right":"left",i.originX=y*b,i.originY=-T;break}i.scaleX=i.scaleY=o,i.setStyle({verticalAlign:i.__verticalAlign||d,align:i.__align||p})}},e}(at);const Ay=s4;var l4=function(){function r(e){this.group=new at,this._LineCtor=e||Ay}return r.prototype.updateData=function(e){var t=this;this._progressiveEls=null;var a=this,n=a.group,i=a._lineData;a._lineData=e,i||n.removeAll();var o=PS(e);e.diff(i).add(function(s){t._doAdd(e,s,o)}).update(function(s,l){t._doUpdate(i,e,l,s,o)}).remove(function(s){n.remove(i.getItemGraphicEl(s))}).execute()},r.prototype.updateLayout=function(){var e=this._lineData;e&&e.eachItemGraphicEl(function(t,a){t.updateLayout(e,a)},this)},r.prototype.incrementalPrepareUpdate=function(e){this._seriesScope=PS(e),this._lineData=null,this.group.removeAll()},r.prototype.incrementalUpdate=function(e,t){this._progressiveEls=[];function a(s){!s.isGroup&&!u4(s)&&(s.incremental=!0,s.ensureState("emphasis").hoverLayer=!0)}for(var n=e.start;n0}function PS(r){var e=r.hostModel,t=e.getModel("emphasis");return{lineStyle:e.getModel("lineStyle").getLineStyle(),emphasisLineStyle:t.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:e.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:e.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:t.get("disabled"),blurScope:t.get("blurScope"),focus:t.get("focus"),labelStatesModels:oe(e)}}function RS(r){return isNaN(r[0])||isNaN(r[1])}function bc(r){return r&&!RS(r[0])&&!RS(r[1])}const Ty=l4;var Ac=[],Tc=[],Cc=[],Ni=ue,Dc=Kn,ES=Math.abs;function kS(r,e,t){for(var a=r[0],n=r[1],i=r[2],o=1/0,s,l=t*t,u=.1,f=.1;f<=.9;f+=.1){Ac[0]=Ni(a[0],n[0],i[0],f),Ac[1]=Ni(a[1],n[1],i[1],f);var h=ES(Dc(Ac,e)-l);h=0?s=s+u:s=s-u:p>=0?s=s-u:s=s+u}return s}function Mc(r,e){var t=[],a=Ns,n=[[],[],[]],i=[[],[]],o=[];e/=2,r.eachEdge(function(s,l){var u=s.getLayout(),f=s.getVisual("fromSymbol"),h=s.getVisual("toSymbol");u.__original||(u.__original=[ia(u[0]),ia(u[1])],u[2]&&u.__original.push(ia(u[2])));var v=u.__original;if(u[2]!=null){if(Te(n[0],v[0]),Te(n[1],v[2]),Te(n[2],v[1]),f&&f!=="none"){var c=ys(s.node1),p=kS(n,v[0],c*e);a(n[0][0],n[1][0],n[2][0],p,t),n[0][0]=t[3],n[1][0]=t[4],a(n[0][1],n[1][1],n[2][1],p,t),n[0][1]=t[3],n[1][1]=t[4]}if(h&&h!=="none"){var c=ys(s.node2),p=kS(n,v[1],c*e);a(n[0][0],n[1][0],n[2][0],p,t),n[1][0]=t[1],n[2][0]=t[2],a(n[0][1],n[1][1],n[2][1],p,t),n[1][1]=t[1],n[2][1]=t[2]}Te(u[0],n[0]),Te(u[1],n[2]),Te(u[2],n[1])}else{if(Te(i[0],v[0]),Te(i[1],v[1]),Wn(o,i[1],i[0]),po(o,o),f&&f!=="none"){var c=ys(s.node1);cp(i[0],i[0],o,c*e)}if(h&&h!=="none"){var c=ys(s.node2);cp(i[1],i[1],o,-c*e)}Te(u[0],i[0]),Te(u[1],i[1])}})}function OS(r){return r.type==="view"}var f4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t,a){var n=new Al,i=new Ty,o=this.group;this._controller=new Ml(a.getZr()),this._controllerHost={target:o},o.add(n.group),o.add(i.group),this._symbolDraw=n,this._lineDraw=i,this._firstRender=!0},e.prototype.render=function(t,a,n){var i=this,o=t.coordinateSystem;this._model=t;var s=this._symbolDraw,l=this._lineDraw,u=this.group;if(OS(o)){var f={x:o.x,y:o.y,scaleX:o.scaleX,scaleY:o.scaleY};this._firstRender?u.attr(f):Dt(u,f,t)}Mc(t.getGraph(),gs(t));var h=t.getData();s.updateData(h);var v=t.getEdgeData();l.updateData(v),this._updateNodeAndLinkScale(),this._updateController(t,a,n),clearTimeout(this._layoutTimeout);var c=t.forceLayout,p=t.get(["force","layoutAnimation"]);c&&this._startForceLayoutIteration(c,p);var d=t.get("layout");h.graph.eachNode(function(_){var S=_.dataIndex,w=_.getGraphicEl(),x=_.getModel();if(w){w.off("drag").off("dragend");var b=x.get("draggable");b&&w.on("drag",function(T){switch(d){case"force":c.warmUp(),!i._layouting&&i._startForceLayoutIteration(c,p),c.setFixed(S),h.setItemLayout(S,[w.x,w.y]);break;case"circular":h.setItemLayout(S,[w.x,w.y]),_.setLayout({fixed:!0},!0),by(t,"symbolSize",_,[T.offsetX,T.offsetY]),i.updateLayout(t);break;case"none":default:h.setItemLayout(S,[w.x,w.y]),wy(t.getGraph(),t),i.updateLayout(t);break}}).on("dragend",function(){c&&c.setUnfixed(S)}),w.setDraggable(b,!!x.get("cursor"));var A=x.get(["emphasis","focus"]);A==="adjacency"&&(nt(w).focus=_.getAdjacentDataIndices())}}),h.graph.eachEdge(function(_){var S=_.getGraphicEl(),w=_.getModel().get(["emphasis","focus"]);S&&w==="adjacency"&&(nt(S).focus={edge:[_.dataIndex],node:[_.node1.dataIndex,_.node2.dataIndex]})});var g=t.get("layout")==="circular"&&t.get(["circular","rotateLabel"]),y=h.getLayout("cx"),m=h.getLayout("cy");h.graph.eachNode(function(_){DM(_,g,y,m)}),this._firstRender=!1},e.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},e.prototype._startForceLayoutIteration=function(t,a){var n=this;(function i(){t.step(function(o){n.updateLayout(n._model),(n._layouting=!o)&&(a?n._layoutTimeout=setTimeout(i,16):i())})})()},e.prototype._updateController=function(t,a,n){var i=this,o=this._controller,s=this._controllerHost,l=this.group;if(o.setPointerChecker(function(u,f,h){var v=l.getBoundingRect();return v.applyTransform(l.transform),v.contain(f,h)&&!Rh(u,n,t)}),!OS(t.coordinateSystem)){o.disable();return}o.enable(t.get("roam")),s.zoomLimit=t.get("scaleLimit"),s.zoom=t.coordinateSystem.getZoom(),o.off("pan").off("zoom").on("pan",function(u){vy(s,u.dx,u.dy),n.dispatchAction({seriesId:t.id,type:"graphRoam",dx:u.dx,dy:u.dy})}).on("zoom",function(u){cy(s,u.scale,u.originX,u.originY),n.dispatchAction({seriesId:t.id,type:"graphRoam",zoom:u.scale,originX:u.originX,originY:u.originY}),i._updateNodeAndLinkScale(),Mc(t.getGraph(),gs(t)),i._lineDraw.updateLayout(),n.updateLabelLayout()})},e.prototype._updateNodeAndLinkScale=function(){var t=this._model,a=t.getData(),n=gs(t);a.eachItemGraphicEl(function(i,o){i&&i.setSymbolScale(n)})},e.prototype.updateLayout=function(t){Mc(t.getGraph(),gs(t)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout()},e.prototype.remove=function(t,a){this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove()},e.type="graph",e}(Bt);const h4=f4;function Bi(r){return"_EC_"+r}var v4=function(){function r(e){this.type="graph",this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this._directed=e||!1}return r.prototype.isDirected=function(){return this._directed},r.prototype.addNode=function(e,t){e=e==null?""+t:""+e;var a=this._nodesMap;if(!a[Bi(e)]){var n=new Bn(e,t);return n.hostGraph=this,this.nodes.push(n),a[Bi(e)]=n,n}},r.prototype.getNodeByIndex=function(e){var t=this.data.getRawIndex(e);return this.nodes[t]},r.prototype.getNodeById=function(e){return this._nodesMap[Bi(e)]},r.prototype.addEdge=function(e,t,a){var n=this._nodesMap,i=this._edgesMap;if(Ct(e)&&(e=this.nodes[e]),Ct(t)&&(t=this.nodes[t]),e instanceof Bn||(e=n[Bi(e)]),t instanceof Bn||(t=n[Bi(t)]),!(!e||!t)){var o=e.id+"-"+t.id,s=new IM(e,t,a);return s.hostGraph=this,this._directed&&(e.outEdges.push(s),t.inEdges.push(s)),e.edges.push(s),e!==t&&t.edges.push(s),this.edges.push(s),i[o]=s,s}},r.prototype.getEdgeByIndex=function(e){var t=this.edgeData.getRawIndex(e);return this.edges[t]},r.prototype.getEdge=function(e,t){e instanceof Bn&&(e=e.id),t instanceof Bn&&(t=t.id);var a=this._edgesMap;return this._directed?a[e+"-"+t]:a[e+"-"+t]||a[t+"-"+e]},r.prototype.eachNode=function(e,t){for(var a=this.nodes,n=a.length,i=0;i=0&&e.call(t,a[i],i)},r.prototype.eachEdge=function(e,t){for(var a=this.edges,n=a.length,i=0;i=0&&a[i].node1.dataIndex>=0&&a[i].node2.dataIndex>=0&&e.call(t,a[i],i)},r.prototype.breadthFirstTraverse=function(e,t,a,n){if(t instanceof Bn||(t=this._nodesMap[Bi(t)]),!!t){for(var i=a==="out"?"outEdges":a==="in"?"inEdges":"edges",o=0;o=0&&l.node2.dataIndex>=0});for(var i=0,o=n.length;i=0&&this[r][e].setItemVisual(this.dataIndex,t,a)},getVisual:function(t){return this[r][e].getItemVisual(this.dataIndex,t)},setLayout:function(t,a){this.dataIndex>=0&&this[r][e].setItemLayout(this.dataIndex,t,a)},getLayout:function(){return this[r][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[r][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[r][e].getRawIndex(this.dataIndex)}}}jt(Bn,LM("hostGraph","data"));jt(IM,LM("hostGraph","edgeData"));const c4=v4;function PM(r,e,t,a,n){for(var i=new c4(a),o=0;o "+v)),u++)}var c=t.get("coordinateSystem"),p;if(c==="cartesian2d"||c==="polar")p=ma(r,t);else{var d=yl.get(c),g=d?d.dimensions||[]:[];vt(g,"value")<0&&g.concat(["value"]);var y=Sl(r,{coordDimensions:g,encodeDefine:t.getEncode()}).dimensions;p=new Me(y,t),p.initData(r)}var m=new Me(["value"],t);return m.initData(l,s),n&&n(p,m),vM({mainData:p,struct:i,structAttr:"graph",datas:{node:p,edge:m},datasAttr:{node:"data",edge:"edgeData"}}),i.update(),i}var p4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.hasSymbolVisual=!0,t}return e.prototype.init=function(t){r.prototype.init.apply(this,arguments);var a=this;function n(){return a._categoriesData}this.legendVisualProvider=new Dl(n,n),this.fillDataTextStyle(t.edges||t.links),this._updateCategoriesData()},e.prototype.mergeOption=function(t){r.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(t.edges||t.links),this._updateCategoriesData()},e.prototype.mergeDefaultAndTheme=function(t){r.prototype.mergeDefaultAndTheme.apply(this,arguments),oi(t,"edgeLabel",["show"])},e.prototype.getInitialData=function(t,a){var n=t.edges||t.links||[],i=t.data||t.nodes||[],o=this;if(i&&n){q3(this);var s=PM(i,n,this,!0,l);return C(s.edges,function(u){K3(u.node1,u.node2,this,u.dataIndex)},this),s.data}function l(u,f){u.wrapMethod("getItemModel",function(p){var d=o._categoriesModels,g=p.getShallow("category"),y=d[g];return y&&(y.parentModel=p.parentModel,p.parentModel=y),p});var h=Nt.prototype.getModel;function v(p,d){var g=h.call(this,p,d);return g.resolveParentPath=c,g}f.wrapMethod("getItemModel",function(p){return p.resolveParentPath=c,p.getModel=v,p});function c(p){if(p&&(p[0]==="label"||p[1]==="label")){var d=p.slice();return p[0]==="label"?d[0]="edgeLabel":p[1]==="label"&&(d[1]="edgeLabel"),d}return p}}},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.getCategoriesData=function(){return this._categoriesData},e.prototype.formatTooltip=function(t,a,n){if(n==="edge"){var i=this.getData(),o=this.getDataParams(t,n),s=i.graph.getEdgeByIndex(t),l=i.getName(s.node1.dataIndex),u=i.getName(s.node2.dataIndex),f=[];return l!=null&&f.push(l),u!=null&&f.push(u),se("nameValue",{name:f.join(" > "),value:o.value,noValue:o.value==null})}var h=JT({series:this,dataIndex:t,multipleSeries:a});return h},e.prototype._updateCategoriesData=function(){var t=G(this.option.categories||[],function(n){return n.value!=null?n:B({value:0},n)}),a=new Me(["value"],this);a.initData(t),this._categoriesData=a,this._categoriesModels=a.mapArray(function(n){return a.getItemModel(n)})},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.isAnimationEnabled=function(){return r.prototype.isAnimationEnabled.call(this)&&!(this.get("layout")==="force"&&this.get(["force","layoutAnimation"]))},e.type="series.graph",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(Gt);const d4=p4;var g4={type:"graphRoam",event:"graphRoam",update:"none"};function y4(r){r.registerChartView(h4),r.registerSeriesModel(d4),r.registerProcessor(U3),r.registerVisual($3),r.registerVisual(Y3),r.registerLayout(Q3),r.registerLayout(r.PRIORITY.VISUAL.POST_CHART_LAYOUT,j3),r.registerLayout(e4),r.registerCoordinateSystem("graphView",{dimensions:Il.dimensions,create:a4}),r.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},Zt),r.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},Zt),r.registerAction(g4,function(e,t,a){t.eachComponent({mainType:"series",query:e},function(n){var i=n.coordinateSystem,o=dy(i,e,void 0,a);n.setCenter&&n.setCenter(o.center),n.setZoom&&n.setZoom(o.zoom)})})}var m4=function(){function r(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return r}(),_4=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="pointer",a}return e.prototype.getDefaultShape=function(){return new m4},e.prototype.buildPath=function(t,a){var n=Math.cos,i=Math.sin,o=a.r,s=a.width,l=a.angle,u=a.x-n(l)*s*(s>=o/3?1:2),f=a.y-i(l)*s*(s>=o/3?1:2);l=a.angle-Math.PI/2,t.moveTo(u,f),t.lineTo(a.x+n(l)*s,a.y+i(l)*s),t.lineTo(a.x+n(a.angle)*o,a.y+i(a.angle)*o),t.lineTo(a.x-n(l)*s,a.y-i(l)*s),t.lineTo(u,f)},e}(dt);const S4=_4;function x4(r,e){var t=r.get("center"),a=e.getWidth(),n=e.getHeight(),i=Math.min(a,n),o=H(t[0],e.getWidth()),s=H(t[1],e.getHeight()),l=H(r.get("radius"),i/2);return{cx:o,cy:s,r:l}}function bu(r,e){var t=r==null?"":r+"";return e&&(U(e)?t=e.replace("{value}",t):K(e)&&(t=e(r))),t}var w4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){this.group.removeAll();var i=t.get(["axisLine","lineStyle","color"]),o=x4(t,n);this._renderMain(t,a,n,i,o),this._data=t.getData()},e.prototype.dispose=function(){},e.prototype._renderMain=function(t,a,n,i,o){var s=this.group,l=t.get("clockwise"),u=-t.get("startAngle")/180*Math.PI,f=-t.get("endAngle")/180*Math.PI,h=t.getModel("axisLine"),v=h.get("roundCap"),c=v?kf:Ve,p=h.get("show"),d=h.getModel("lineStyle"),g=d.get("width"),y=[u,f];lA(y,!l),u=y[0],f=y[1];for(var m=f-u,_=u,S=[],w=0;p&&w=T&&(D===0?0:i[D-1][0])Math.PI/2&&(j+=Math.PI)):Q==="tangential"?j=-A-Math.PI/2:Ct(Q)&&(j=Q*Math.PI/180),j===0?h.add(new Tt({style:Ot(_,{text:V,x:W,y:X,verticalAlign:R<-.8?"top":R>.8?"bottom":"middle",align:P<-.4?"left":P>.4?"right":"center"},{inheritColor:F}),silent:!0})):h.add(new Tt({style:Ot(_,{text:V,x:W,y:X,verticalAlign:"middle",align:"center"},{inheritColor:F}),silent:!0,originX:W,originY:X,rotation:j}))}if(m.get("show")&&E!==S){var N=m.get("distance");N=N?N+f:f;for(var gt=0;gt<=w;gt++){P=Math.cos(A),R=Math.sin(A);var Mt=new he({shape:{x1:P*(p-N)+v,y1:R*(p-N)+c,x2:P*(p-b-N)+v,y2:R*(p-b-N)+c},silent:!0,style:I});I.stroke==="auto"&&Mt.setStyle({stroke:i((E+gt/w)/S)}),h.add(Mt),A+=D}A-=D}else A+=T}},e.prototype._renderPointer=function(t,a,n,i,o,s,l,u,f){var h=this.group,v=this._data,c=this._progressEls,p=[],d=t.get(["pointer","show"]),g=t.getModel("progress"),y=g.get("show"),m=t.getData(),_=m.mapDimension("value"),S=+t.get("min"),w=+t.get("max"),x=[S,w],b=[s,l];function A(D,M){var I=m.getItemModel(D),L=I.getModel("pointer"),P=H(L.get("width"),o.r),R=H(L.get("length"),o.r),E=t.get(["pointer","icon"]),N=L.get("offsetCenter"),O=H(N[0],o.r),V=H(N[1],o.r),F=L.get("keepAspect"),W;return E?W=Jt(E,O-P/2,V-R,P,R,null,F):W=new S4({shape:{angle:-Math.PI/2,width:P,r:R,x:O,y:V}}),W.rotation=-(M+Math.PI/2),W.x=o.cx,W.y=o.cy,W}function T(D,M){var I=g.get("roundCap"),L=I?kf:Ve,P=g.get("overlap"),R=P?g.get("width"):f/m.count(),E=P?o.r-R:o.r-(D+1)*R,N=P?o.r:o.r-D*R,O=new L({shape:{startAngle:s,endAngle:M,cx:o.cx,cy:o.cy,clockwise:u,r0:E,r:N}});return P&&(O.z2=w-m.get(_,D)%w),O}(y||d)&&(m.diff(v).add(function(D){var M=m.get(_,D);if(d){var I=A(D,s);zt(I,{rotation:-((isNaN(+M)?b[0]:Lt(M,x,b,!0))+Math.PI/2)},t),h.add(I),m.setItemGraphicEl(D,I)}if(y){var L=T(D,s),P=g.get("clip");zt(L,{shape:{endAngle:Lt(M,x,b,P)}},t),h.add(L),Vp(t.seriesIndex,m.dataType,D,L),p[D]=L}}).update(function(D,M){var I=m.get(_,D);if(d){var L=v.getItemGraphicEl(M),P=L?L.rotation:s,R=A(D,P);R.rotation=P,Dt(R,{rotation:-((isNaN(+I)?b[0]:Lt(I,x,b,!0))+Math.PI/2)},t),h.add(R),m.setItemGraphicEl(D,R)}if(y){var E=c[M],N=E?E.shape.endAngle:s,O=T(D,N),V=g.get("clip");Dt(O,{shape:{endAngle:Lt(I,x,b,V)}},t),h.add(O),Vp(t.seriesIndex,m.dataType,D,O),p[D]=O}}).execute(),m.each(function(D){var M=m.getItemModel(D),I=M.getModel("emphasis"),L=I.get("focus"),P=I.get("blurScope"),R=I.get("disabled");if(d){var E=m.getItemGraphicEl(D),N=m.getItemVisual(D,"style"),O=N.fill;if(E instanceof ye){var V=E.style;E.useStyle(B({image:V.image,x:V.x,y:V.y,width:V.width,height:V.height},N))}else E.useStyle(N),E.type!=="pointer"&&E.setColor(O);E.setStyle(M.getModel(["pointer","itemStyle"]).getItemStyle()),E.style.fill==="auto"&&E.setStyle("fill",i(Lt(m.get(_,D),x,[0,1],!0))),E.z2EmphasisLift=0,de(E,M),Wt(E,L,P,R)}if(y){var F=p[D];F.useStyle(m.getItemVisual(D,"style")),F.setStyle(M.getModel(["progress","itemStyle"]).getItemStyle()),F.z2EmphasisLift=0,de(F,M),Wt(F,L,P,R)}}),this._progressEls=p)},e.prototype._renderAnchor=function(t,a){var n=t.getModel("anchor"),i=n.get("show");if(i){var o=n.get("size"),s=n.get("icon"),l=n.get("offsetCenter"),u=n.get("keepAspect"),f=Jt(s,a.cx-o/2+H(l[0],a.r),a.cy-o/2+H(l[1],a.r),o,o,null,u);f.z2=n.get("showAbove")?1:0,f.setStyle(n.getModel("itemStyle").getItemStyle()),this.group.add(f)}},e.prototype._renderTitleAndDetail=function(t,a,n,i,o){var s=this,l=t.getData(),u=l.mapDimension("value"),f=+t.get("min"),h=+t.get("max"),v=new at,c=[],p=[],d=t.isAnimationEnabled(),g=t.get(["pointer","showAbove"]);l.diff(this._data).add(function(y){c[y]=new Tt({silent:!0}),p[y]=new Tt({silent:!0})}).update(function(y,m){c[y]=s._titleEls[m],p[y]=s._detailEls[m]}).execute(),l.each(function(y){var m=l.getItemModel(y),_=l.get(u,y),S=new at,w=i(Lt(_,[f,h],[0,1],!0)),x=m.getModel("title");if(x.get("show")){var b=x.get("offsetCenter"),A=o.cx+H(b[0],o.r),T=o.cy+H(b[1],o.r),D=c[y];D.attr({z2:g?0:2,style:Ot(x,{x:A,y:T,text:l.getName(y),align:"center",verticalAlign:"middle"},{inheritColor:w})}),S.add(D)}var M=m.getModel("detail");if(M.get("show")){var I=M.get("offsetCenter"),L=o.cx+H(I[0],o.r),P=o.cy+H(I[1],o.r),R=H(M.get("width"),o.r),E=H(M.get("height"),o.r),N=t.get(["progress","show"])?l.getItemVisual(y,"style").fill:w,D=p[y],O=M.get("formatter");D.attr({z2:g?0:2,style:Ot(M,{x:L,y:P,text:bu(_,O),width:isNaN(R)?null:R,height:isNaN(E)?null:E,align:"center",verticalAlign:"middle"},{inheritColor:N})}),tT(D,{normal:M},_,function(F){return bu(F,O)}),d&&eT(D,y,l,t,{getFormattedLabel:function(F,W,X,Q,j,gt){return bu(gt?gt.interpolatedValue:_,O)}}),S.add(D)}v.add(S)}),this.group.add(v),this._titleEls=c,this._detailEls=p},e.type="gauge",e}(Bt);const b4=w4;var A4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.visualStyleAccessPath="itemStyle",t}return e.prototype.getInitialData=function(t,a){return Lo(this,["value"])},e.type="series.gauge",e.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12,rotate:0},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},e}(Gt);const T4=A4;function C4(r){r.registerChartView(b4),r.registerSeriesModel(T4)}var D4=["itemStyle","opacity"],M4=function(r){k(e,r);function e(t,a){var n=r.call(this)||this,i=n,o=new Ge,s=new Tt;return i.setTextContent(s),n.setTextGuideLine(o),n.updateData(t,a,!0),n}return e.prototype.updateData=function(t,a,n){var i=this,o=t.hostModel,s=t.getItemModel(a),l=t.getItemLayout(a),u=s.getModel("emphasis"),f=s.get(D4);f=f??1,n||Ar(i),i.useStyle(t.getItemVisual(a,"style")),i.style.lineJoin="round",n?(i.setShape({points:l.points}),i.style.opacity=0,zt(i,{style:{opacity:f}},o,a)):Dt(i,{style:{opacity:f},shape:{points:l.points}},o,a),de(i,s),this._updateLabel(t,a),Wt(this,u.get("focus"),u.get("blurScope"),u.get("disabled"))},e.prototype._updateLabel=function(t,a){var n=this,i=this.getTextGuideLine(),o=n.getTextContent(),s=t.hostModel,l=t.getItemModel(a),u=t.getItemLayout(a),f=u.label,h=t.getItemVisual(a,"style"),v=h.fill;ge(o,oe(l),{labelFetcher:t.hostModel,labelDataIndex:a,defaultOpacity:h.opacity,defaultText:t.getName(a)},{normal:{align:f.textAlign,verticalAlign:f.verticalAlign}}),n.setTextConfig({local:!0,inside:!!f.inside,insideStroke:v,outsideFill:v});var c=f.linePoints;i.setShape({points:c}),n.textGuideLineConfig={anchor:c?new st(c[0][0],c[0][1]):null},Dt(o,{style:{x:f.x,y:f.y}},s,a),o.attr({rotation:f.rotation,originX:f.x,originY:f.y,z2:10}),ay(n,ny(l),{stroke:v})},e}(ze),I4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.ignoreLabelLineUpdate=!0,t}return e.prototype.render=function(t,a,n){var i=t.getData(),o=this._data,s=this.group;i.diff(o).add(function(l){var u=new M4(i,l);i.setItemGraphicEl(l,u),s.add(u)}).update(function(l,u){var f=o.getItemGraphicEl(u);f.updateData(i,l),s.add(f),i.setItemGraphicEl(l,f)}).remove(function(l){var u=o.getItemGraphicEl(l);Ws(u,t,l)}).execute(),this._data=i},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.prototype.dispose=function(){},e.type="funnel",e}(Bt);const L4=I4;var P4=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t){r.prototype.init.apply(this,arguments),this.legendVisualProvider=new Dl($(this.getData,this),$(this.getRawData,this)),this._defaultLabelLine(t)},e.prototype.getInitialData=function(t,a){return Lo(this,{coordDimensions:["value"],encodeDefaulter:it(Eg,this)})},e.prototype._defaultLabelLine=function(t){oi(t,"labelLine",["show"]);var a=t.labelLine,n=t.emphasis.labelLine;a.show=a.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.prototype.getDataParams=function(t){var a=this.getData(),n=r.prototype.getDataParams.call(this,t),i=a.mapDimension("value"),o=a.getSum(i);return n.percent=o?+(a.get(i,t)/o*100).toFixed(2):0,n.$vars.push("percent"),n},e.type="series.funnel",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(Gt);const R4=P4;function E4(r,e){return re(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function k4(r,e){for(var t=r.mapDimension("value"),a=r.mapArray(t,function(l){return l}),n=[],i=e==="ascending",o=0,s=r.count();oj4)return;var n=this._model.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX,r.offsetY]);n.behavior!=="none"&&this._dispatchExpand({axisExpandWindow:n.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(r){if(!(this._mouseDownPoint||!Lc(this,"mousemove"))){var e=this._model,t=e.coordinateSystem.getSlidedAxisExpandWindow([r.offsetX,r.offsetY]),a=t.behavior;a==="jump"&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand(a==="none"?null:{axisExpandWindow:t.axisExpandWindow,animation:a==="jump"?null:{duration:0}})}}};function Lc(r,e){var t=r._model;return t.get("axisExpandable")&&t.get("axisExpandTriggerOn")===e}const rH=tH;var aH=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(){r.prototype.init.apply(this,arguments),this.mergeOption({})},e.prototype.mergeOption=function(t){var a=this.option;t&&ut(a,t,!0),this._initDimensions()},e.prototype.contains=function(t,a){var n=t.get("parallelIndex");return n!=null&&a.getComponent("parallel",n)===this},e.prototype.setAxisExpand=function(t){C(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],function(a){t.hasOwnProperty(a)&&(this.option[a]=t[a])},this)},e.prototype._initDimensions=function(){var t=this.dimensions=[],a=this.parallelAxisIndex=[],n=Pt(this.ecModel.queryComponents({mainType:"parallelAxis"}),function(i){return(i.get("parallelIndex")||0)===this.componentIndex},this);C(n,function(i){t.push("dim"+i.get("dim")),a.push(i.componentIndex)})},e.type="parallel",e.dependencies=["parallelAxis"],e.layoutMode="box",e.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},e}(bt);const nH=aH;var iH=function(r){k(e,r);function e(t,a,n,i,o){var s=r.call(this,t,a,n)||this;return s.type=i||"value",s.axisIndex=o,s}return e.prototype.isHorizontal=function(){return this.coordinateSystem.getModel().get("layout")!=="horizontal"},e}(Cr);const oH=iH;function _i(r,e,t,a,n,i){r=r||0;var o=t[1]-t[0];if(n!=null&&(n=Vi(n,[0,o])),i!=null&&(i=Math.max(i,n??0)),a==="all"){var s=Math.abs(e[1]-e[0]);s=Vi(s,[0,o]),n=i=Vi(s,[n,i]),a=0}e[0]=Vi(e[0],t),e[1]=Vi(e[1],t);var l=Pc(e,a);e[a]+=r;var u=n||0,f=t.slice();l.sign<0?f[0]+=u:f[1]-=u,e[a]=Vi(e[a],f);var h;return h=Pc(e,a),n!=null&&(h.sign!==l.sign||h.spani&&(e[1-a]=e[a]+h.sign*i),e}function Pc(r,e){var t=r[e]-r[1-e];return{span:Math.abs(t),sign:t>0?-1:t<0?1:e?-1:1}}function Vi(r,e){return Math.min(e[1]!=null?e[1]:1/0,Math.max(e[0]!=null?e[0]:-1/0,r))}var Rc=C,EM=Math.min,kM=Math.max,VS=Math.floor,sH=Math.ceil,zS=Yt,lH=Math.PI,uH=function(){function r(e,t,a){this.type="parallel",this._axesMap=q(),this._axesLayout={},this.dimensions=e.dimensions,this._model=e,this._init(e,t,a)}return r.prototype._init=function(e,t,a){var n=e.dimensions,i=e.parallelAxisIndex;Rc(n,function(o,s){var l=i[s],u=t.getComponent("parallelAxis",l),f=this._axesMap.set(o,new oH(o,Ih(u),[0,0],u.get("type"),l)),h=f.type==="category";f.onBand=h&&u.get("boundaryGap"),f.inverse=u.get("inverse"),u.axis=f,f.model=u,f.coordinateSystem=u.coordinateSystem=this},this)},r.prototype.update=function(e,t){this._updateAxesFromSeries(this._model,e)},r.prototype.containPoint=function(e){var t=this._makeLayoutInfo(),a=t.axisBase,n=t.layoutBase,i=t.pixelDimIndex,o=e[1-i],s=e[i];return o>=a&&o<=a+t.axisLength&&s>=n&&s<=n+t.layoutLength},r.prototype.getModel=function(){return this._model},r.prototype._updateAxesFromSeries=function(e,t){t.eachSeries(function(a){if(e.contains(a,t)){var n=a.getData();Rc(this.dimensions,function(i){var o=this._axesMap.get(i);o.scale.unionExtentFromData(n,n.mapDimension(i)),so(o.scale,o.model)},this)}},this)},r.prototype.resize=function(e,t){this._rect=re(e.getBoxLayoutParams(),{width:t.getWidth(),height:t.getHeight()}),this._layoutAxes()},r.prototype.getRect=function(){return this._rect},r.prototype._makeLayoutInfo=function(){var e=this._model,t=this._rect,a=["x","y"],n=["width","height"],i=e.get("layout"),o=i==="horizontal"?0:1,s=t[n[o]],l=[0,s],u=this.dimensions.length,f=Au(e.get("axisExpandWidth"),l),h=Au(e.get("axisExpandCount")||0,[0,u]),v=e.get("axisExpandable")&&u>3&&u>h&&h>1&&f>0&&s>0,c=e.get("axisExpandWindow"),p;if(c)p=Au(c[1]-c[0],l),c[1]=c[0]+p;else{p=Au(f*(h-1),l);var d=e.get("axisExpandCenter")||VS(u/2);c=[f*d-p/2],c[1]=c[0]+p}var g=(s-p)/(u-h);g<3&&(g=0);var y=[VS(zS(c[0]/f,1))+1,sH(zS(c[1]/f,1))-1],m=g/f*c[0];return{layout:i,pixelDimIndex:o,layoutBase:t[a[o]],layoutLength:s,axisBase:t[a[1-o]],axisLength:t[n[1-o]],axisExpandable:v,axisExpandWidth:f,axisCollapseWidth:g,axisExpandWindow:c,axisCount:u,winInnerIndices:y,axisExpandWindow0Pos:m}},r.prototype._layoutAxes=function(){var e=this._rect,t=this._axesMap,a=this.dimensions,n=this._makeLayoutInfo(),i=n.layout;t.each(function(o){var s=[0,n.axisLength],l=o.inverse?1:0;o.setExtent(s[l],s[1-l])}),Rc(a,function(o,s){var l=(n.axisExpandable?hH:fH)(s,n),u={horizontal:{x:l.position,y:n.axisLength},vertical:{x:0,y:l.position}},f={horizontal:lH/2,vertical:0},h=[u[i].x+e.x,u[i].y+e.y],v=f[i],c=lr();pi(c,c,v),Wr(c,c,h),this._axesLayout[o]={position:h,rotation:v,transform:c,axisNameAvailableWidth:l.axisNameAvailableWidth,axisLabelShow:l.axisLabelShow,nameTruncateMaxWidth:l.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}},this)},r.prototype.getAxis=function(e){return this._axesMap.get(e)},r.prototype.dataToPoint=function(e,t){return this.axisCoordToPoint(this._axesMap.get(t).dataToCoord(e),t)},r.prototype.eachActiveState=function(e,t,a,n){a==null&&(a=0),n==null&&(n=e.count());var i=this._axesMap,o=this.dimensions,s=[],l=[];C(o,function(g){s.push(e.mapDimension(g)),l.push(i.get(g).model)});for(var u=this.hasAxisBrushed(),f=a;fi*(1-h[0])?(u="jump",l=s-i*(1-h[2])):(l=s-i*h[1])>=0&&(l=s-i*(1-h[1]))<=0&&(l=0),l*=t.axisExpandWidth/f,l?_i(l,n,o,"all"):u="none";else{var c=n[1]-n[0],p=o[1]*s/c;n=[kM(0,p-c/2)],n[1]=EM(o[1],n[0]+c),n[0]=n[1]-c}return{axisExpandWindow:n,behavior:u}},r}();function Au(r,e){return EM(kM(r,e[0]),e[1])}function fH(r,e){var t=e.layoutLength/(e.axisCount-1);return{position:t*r,axisNameAvailableWidth:t,axisLabelShow:!0}}function hH(r,e){var t=e.layoutLength,a=e.axisExpandWidth,n=e.axisCount,i=e.axisCollapseWidth,o=e.winInnerIndices,s,l=i,u=!1,f;return r=0;n--)or(a[n])},e.prototype.getActiveState=function(t){var a=this.activeIntervals;if(!a.length)return"normal";if(t==null||isNaN(+t))return"inactive";if(a.length===1){var n=a[0];if(n[0]<=t&&t<=n[1])return"active"}else for(var i=0,o=a.length;imH}function FM(r){var e=r.length-1;return e<0&&(e=0),[r[0],r[e]]}function HM(r,e,t,a){var n=new at;return n.add(new xt({name:"main",style:Iy(t),silent:!0,draggable:!0,cursor:"move",drift:it(WS,r,e,n,["n","s","w","e"]),ondragend:it(vi,e,{isEnd:!0})})),C(a,function(i){n.add(new xt({name:i.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:it(WS,r,e,n,i),ondragend:it(vi,e,{isEnd:!0})}))}),n}function WM(r,e,t,a){var n=a.brushStyle.lineWidth||0,i=fo(n,_H),o=t[0][0],s=t[1][0],l=o-n/2,u=s-n/2,f=t[0][1],h=t[1][1],v=f-i+n/2,c=h-i+n/2,p=f-o,d=h-s,g=p+n,y=d+n;jr(r,e,"main",o,s,p,d),a.transformable&&(jr(r,e,"w",l,u,i,y),jr(r,e,"e",v,u,i,y),jr(r,e,"n",l,u,g,i),jr(r,e,"s",l,c,g,i),jr(r,e,"nw",l,u,i,i),jr(r,e,"ne",v,u,i,i),jr(r,e,"sw",l,c,i,i),jr(r,e,"se",v,c,i,i))}function Md(r,e){var t=e.__brushOption,a=t.transformable,n=e.childAt(0);n.useStyle(Iy(t)),n.attr({silent:!a,cursor:a?"move":"default"}),C([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],function(i){var o=e.childOfName(i.join("")),s=i.length===1?Id(r,i[0]):CH(r,i);o&&o.attr({silent:!a,invisible:!a,cursor:a?xH[s]+"-resize":null})})}function jr(r,e,t,a,n,i,o){var s=e.childOfName(t);s&&s.setShape(MH(Ly(r,e,[[a,n],[a+i,n+o]])))}function Iy(r){return J({strokeNoScale:!0},r.brushStyle)}function UM(r,e,t,a){var n=[il(r,t),il(e,a)],i=[fo(r,t),fo(e,a)];return[[n[0],i[0]],[n[1],i[1]]]}function TH(r){return ei(r.group)}function Id(r,e){var t={w:"left",e:"right",n:"top",s:"bottom"},a={left:"w",right:"e",top:"n",bottom:"s"},n=ph(t[e],TH(r));return a[n]}function CH(r,e){var t=[Id(r,e[0]),Id(r,e[1])];return(t[0]==="e"||t[0]==="w")&&t.reverse(),t.join("")}function WS(r,e,t,a,n,i){var o=t.__brushOption,s=r.toRectRange(o.range),l=$M(e,n,i);C(a,function(u){var f=SH[u];s[f[0]][f[1]]+=l[f[0]]}),o.range=r.fromRectRange(UM(s[0][0],s[1][0],s[0][1],s[1][1])),Cy(e,t),vi(e,{isEnd:!1})}function DH(r,e,t,a){var n=e.__brushOption.range,i=$M(r,t,a);C(n,function(o){o[0]+=i[0],o[1]+=i[1]}),Cy(r,e),vi(r,{isEnd:!1})}function $M(r,e,t){var a=r.group,n=a.transformCoordToLocal(e,t),i=a.transformCoordToLocal(0,0);return[n[0]-i[0],n[1]-i[1]]}function Ly(r,e,t){var a=GM(r,e);return a&&a!==hi?a.clipPath(t,r._transform):et(t)}function MH(r){var e=il(r[0][0],r[1][0]),t=il(r[0][1],r[1][1]),a=fo(r[0][0],r[1][0]),n=fo(r[0][1],r[1][1]);return{x:e,y:t,width:a-e,height:n-t}}function IH(r,e,t){if(!(!r._brushType||PH(r,e.offsetX,e.offsetY))){var a=r._zr,n=r._covers,i=My(r,e,t);if(!r._dragging)for(var o=0;oa.getWidth()||t<0||t>a.getHeight()}var Nh={lineX:YS(0),lineY:YS(1),rect:{createCover:function(r,e){function t(a){return a}return HM({toRectRange:t,fromRectRange:t},r,e,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(r){var e=FM(r);return UM(e[1][0],e[1][1],e[0][0],e[0][1])},updateCoverShape:function(r,e,t,a){WM(r,e,t,a)},updateCommon:Md,contain:Pd},polygon:{createCover:function(r,e){var t=new at;return t.add(new Ge({name:"main",style:Iy(e),silent:!0})),t},getCreatingRange:function(r){return r},endCreating:function(r,e){e.remove(e.childAt(0)),e.add(new ze({name:"main",draggable:!0,drift:it(DH,r,e),ondragend:it(vi,r,{isEnd:!0})}))},updateCoverShape:function(r,e,t,a){e.childAt(0).setShape({points:Ly(r,e,t)})},updateCommon:Md,contain:Pd}};function YS(r){return{createCover:function(e,t){return HM({toRectRange:function(a){var n=[a,[0,100]];return r&&n.reverse(),n},fromRectRange:function(a){return a[r]}},e,t,[[["w"],["e"]],[["n"],["s"]]][r])},getCreatingRange:function(e){var t=FM(e),a=il(t[0][r],t[1][r]),n=fo(t[0][r],t[1][r]);return[a,n]},updateCoverShape:function(e,t,a,n){var i,o=GM(e,t);if(o!==hi&&o.getLinearBrushOtherExtent)i=o.getLinearBrushOtherExtent(r);else{var s=e._zr;i=[0,[s.getWidth(),s.getHeight()][1-r]]}var l=[a,i];r&&l.reverse(),WM(e,t,l,n)},updateCommon:Md,contain:Pd}}const Py=bH;function XM(r){return r=Ry(r),function(e){return KA(e,r)}}function ZM(r,e){return r=Ry(r),function(t){var a=e??t,n=a?r.width:r.height,i=a?r.x:r.y;return[i,i+(n||0)]}}function qM(r,e,t){var a=Ry(r);return function(n,i){return a.contain(i[0],i[1])&&!Rh(n,e,t)}}function Ry(r){return ft.create(r)}var RH=["axisLine","axisTickLabel","axisName"],EH=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t,a){r.prototype.init.apply(this,arguments),(this._brushController=new Py(a.getZr())).on("brush",$(this._onBrush,this))},e.prototype.render=function(t,a,n,i){if(!kH(t,a,i)){this.axisModel=t,this.api=n,this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new at,this.group.add(this._axisGroup),!!t.get("show")){var s=NH(t,a),l=s.coordinateSystem,u=t.getAreaSelectStyle(),f=u.width,h=t.axis.dim,v=l.getAxisLayout(h),c=B({strokeContainThreshold:f},v),p=new da(t,c);C(RH,p.add,p),this._axisGroup.add(p.getGroup()),this._refreshBrushController(c,u,t,s,f,n),pl(o,this._axisGroup,t)}}},e.prototype._refreshBrushController=function(t,a,n,i,o,s){var l=n.axis.getExtent(),u=l[1]-l[0],f=Math.min(30,Math.abs(u)*.1),h=ft.create({x:l[0],y:-o/2,width:u,height:o});h.x-=f,h.width+=2*f,this._brushController.mount({enableGlobalPan:!0,rotation:t.rotation,x:t.position[0],y:t.position[1]}).setPanels([{panelId:"pl",clipPath:XM(h),isTargetByCursor:qM(h,s,i),getLinearBrushOtherExtent:ZM(h,0)}]).enableBrush({brushType:"lineX",brushStyle:a,removeOnClick:!0}).updateCovers(OH(n))},e.prototype._onBrush=function(t){var a=t.areas,n=this.axisModel,i=n.axis,o=G(a,function(s){return[i.coordToData(s.range[0],!0),i.coordToData(s.range[1],!0)]});(!n.option.realtime===t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:n.id,intervals:o})},e.prototype.dispose=function(){this._brushController.dispose()},e.type="parallelAxis",e}(Ut);function kH(r,e,t){return t&&t.type==="axisAreaSelect"&&e.findComponents({mainType:"parallelAxis",query:t})[0]===r}function OH(r){var e=r.axis;return G(r.activeIntervals,function(t){return{brushType:"lineX",panelId:"pl",range:[e.dataToCoord(t[0],!0),e.dataToCoord(t[1],!0)]}})}function NH(r,e){return e.getComponent("parallel",r.get("parallelIndex"))}const BH=EH;var VH={type:"axisAreaSelect",event:"axisAreaSelected"};function zH(r){r.registerAction(VH,function(e,t){t.eachComponent({mainType:"parallelAxis",query:e},function(a){a.axis.model.setActiveIntervals(e.intervals)})}),r.registerAction("parallelAxisExpand",function(e,t){t.eachComponent({mainType:"parallel",query:e},function(a){a.setAxisExpand(e)})})}var GH={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function KM(r){r.registerComponentView(rH),r.registerComponentModel(nH),r.registerCoordinateSystem("parallel",dH),r.registerPreprocessor(K4),r.registerComponentModel(GS),r.registerComponentView(BH),uo(r,"parallel",GS,GH),zH(r)}function FH(r){ct(KM),r.registerChartView(H4),r.registerSeriesModel(Y4),r.registerVisual(r.PRIORITY.VISUAL.BRUSH,q4)}var HH=function(){function r(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0}return r}(),WH=function(r){k(e,r);function e(t){return r.call(this,t)||this}return e.prototype.getDefaultShape=function(){return new HH},e.prototype.buildPath=function(t,a){var n=a.extent;t.moveTo(a.x1,a.y1),t.bezierCurveTo(a.cpx1,a.cpy1,a.cpx2,a.cpy2,a.x2,a.y2),a.orient==="vertical"?(t.lineTo(a.x2+n,a.y2),t.bezierCurveTo(a.cpx2+n,a.cpy2,a.cpx1+n,a.cpy1,a.x1+n,a.y1)):(t.lineTo(a.x2,a.y2+n),t.bezierCurveTo(a.cpx2,a.cpy2+n,a.cpx1,a.cpy1+n,a.x1,a.y1+n)),t.closePath()},e.prototype.highlight=function(){va(this)},e.prototype.downplay=function(){ca(this)},e}(dt),UH=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t._focusAdjacencyDisabled=!1,t}return e.prototype.render=function(t,a,n){var i=this,o=t.getGraph(),s=this.group,l=t.layoutInfo,u=l.width,f=l.height,h=t.getData(),v=t.getData("edge"),c=t.get("orient");this._model=t,s.removeAll(),s.x=l.x,s.y=l.y,o.eachEdge(function(p){var d=new WH,g=nt(d);g.dataIndex=p.dataIndex,g.seriesIndex=t.seriesIndex,g.dataType="edge";var y=p.getModel(),m=y.getModel("lineStyle"),_=m.get("curveness"),S=p.node1.getLayout(),w=p.node1.getModel(),x=w.get("localX"),b=w.get("localY"),A=p.node2.getLayout(),T=p.node2.getModel(),D=T.get("localX"),M=T.get("localY"),I=p.getLayout(),L,P,R,E,N,O,V,F;switch(d.shape.extent=Math.max(1,I.dy),d.shape.orient=c,c==="vertical"?(L=(x!=null?x*u:S.x)+I.sy,P=(b!=null?b*f:S.y)+S.dy,R=(D!=null?D*u:A.x)+I.ty,E=M!=null?M*f:A.y,N=L,O=P*(1-_)+E*_,V=R,F=P*_+E*(1-_)):(L=(x!=null?x*u:S.x)+S.dx,P=(b!=null?b*f:S.y)+I.sy,R=D!=null?D*u:A.x,E=(M!=null?M*f:A.y)+I.ty,N=L*(1-_)+R*_,O=P,V=L*_+R*(1-_),F=E),d.setShape({x1:L,y1:P,x2:R,y2:E,cpx1:N,cpy1:O,cpx2:V,cpy2:F}),d.useStyle(m.getItemStyle()),d.style.fill){case"source":d.style.fill=p.node1.getVisual("color"),d.style.decal=p.node1.getVisual("style").decal;break;case"target":d.style.fill=p.node2.getVisual("color"),d.style.decal=p.node2.getVisual("style").decal;break;case"gradient":var W=p.node1.getVisual("color"),X=p.node2.getVisual("color");U(W)&&U(X)&&(d.style.fill=new cl(0,0,+(c==="horizontal"),+(c==="vertical"),[{color:W,offset:0},{color:X,offset:1}]))}ge(d,oe(y,"edgeLabel"),{labelFetcher:t,labelDataIndex:p.dataIndex,defaultText:""+y.get("value")}),d.setTextConfig({position:"inside"});var Q=y.getModel("emphasis");de(d,y,"lineStyle",function(gt){return gt.getItemStyle()}),s.add(d),v.setItemGraphicEl(p.dataIndex,d);var j=Q.get("focus");Wt(d,j==="adjacency"?p.getAdjacentDataIndices():j,Q.get("blurScope"),Q.get("disabled")),nt(d).dataType="edge"}),o.eachNode(function(p){var d=p.getLayout(),g=p.getModel(),y=g.get("localX"),m=g.get("localY"),_=g.getModel("emphasis"),S=new xt({shape:{x:y!=null?y*u:d.x,y:m!=null?m*f:d.y,width:d.dx,height:d.dy},style:g.getModel("itemStyle").getItemStyle(),z2:10});ge(S,oe(g),{labelFetcher:t,labelDataIndex:p.dataIndex,defaultText:p.id}),S.disableLabelAnimation=!0,S.setStyle("fill",p.getVisual("color")),S.setStyle("decal",p.getVisual("style").decal),de(S,g),s.add(S),h.setItemGraphicEl(p.dataIndex,S),nt(S).dataType="node";var w=_.get("focus");Wt(S,w==="adjacency"?p.getAdjacentDataIndices():w,_.get("blurScope"),_.get("disabled"))}),h.eachItemGraphicEl(function(p,d){var g=h.getItemModel(d);g.get("draggable")&&(p.drift=function(y,m){i._focusAdjacencyDisabled=!0,this.shape.x+=y,this.shape.y+=m,this.dirty(),n.dispatchAction({type:"dragNode",seriesId:t.id,dataIndex:h.getRawIndex(d),localX:this.shape.x/u,localY:this.shape.y/f})},p.ondragend=function(){i._focusAdjacencyDisabled=!1},p.draggable=!0,p.cursor="move")}),!this._data&&t.isAnimationEnabled()&&s.setClipPath($H(s.getBoundingRect(),t,function(){s.removeClipPath()})),this._data=t.getData()},e.prototype.dispose=function(){},e.type="sankey",e}(Bt);function $H(r,e,t){var a=new xt({shape:{x:r.x-10,y:r.y-10,width:0,height:r.height+20}});return zt(a,{shape:{width:r.width+20}},e,t),a}const YH=UH;var XH=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.getInitialData=function(t,a){var n=t.edges||t.links,i=t.data||t.nodes,o=t.levels;this.levelModels=[];for(var s=this.levelModels,l=0;l=0&&(s[o[l].depth]=new Nt(o[l],this,a));if(i&&n){var u=PM(i,n,this,!0,f);return u.data}function f(h,v){h.wrapMethod("getItemModel",function(c,p){var d=c.parentModel,g=d.getData().getItemLayout(p);if(g){var y=g.depth,m=d.levelModels[y];m&&(c.parentModel=m)}return c}),v.wrapMethod("getItemModel",function(c,p){var d=c.parentModel,g=d.getGraph().getEdgeByIndex(p),y=g.node1.getLayout();if(y){var m=y.depth,_=d.levelModels[m];_&&(c.parentModel=_)}return c})}},e.prototype.setNodePosition=function(t,a){var n=this.option.data||this.option.nodes,i=n[t];i.localX=a[0],i.localY=a[1]},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.formatTooltip=function(t,a,n){function i(c){return isNaN(c)||c==null}if(n==="edge"){var o=this.getDataParams(t,n),s=o.data,l=o.value,u=s.source+" -- "+s.target;return se("nameValue",{name:u,value:l,noValue:i(l)})}else{var f=this.getGraph().getNodeByIndex(t),h=f.getLayout().value,v=this.getDataParams(t,n).data.name;return se("nameValue",{name:v!=null?v+"":null,value:h,noValue:i(h)})}},e.prototype.optionUpdated=function(){},e.prototype.getDataParams=function(t,a){var n=r.prototype.getDataParams.call(this,t,a);if(n.value==null&&a==="node"){var i=this.getGraph().getNodeByIndex(t),o=i.getLayout().value;n.value=o}return n},e.type="series.sankey",e.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},edgeLabel:{show:!1,fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},e}(Gt);const ZH=XH;function qH(r,e){r.eachSeriesByType("sankey",function(t){var a=t.get("nodeWidth"),n=t.get("nodeGap"),i=KH(t,e);t.layoutInfo=i;var o=i.width,s=i.height,l=t.getGraph(),u=l.nodes,f=l.edges;JH(u);var h=Pt(u,function(d){return d.getLayout().value===0}),v=h.length!==0?0:t.get("layoutIterations"),c=t.get("orient"),p=t.get("nodeAlign");QH(u,f,a,n,o,s,v,c,p)})}function KH(r,e){return re(r.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function QH(r,e,t,a,n,i,o,s,l){jH(r,e,t,n,i,s,l),aW(r,e,i,n,a,o,s),vW(r,s)}function JH(r){C(r,function(e){var t=Xa(e.outEdges,Gf),a=Xa(e.inEdges,Gf),n=e.getValue()||0,i=Math.max(t,a,n);e.setLayout({value:i},!0)})}function jH(r,e,t,a,n,i,o){for(var s=[],l=[],u=[],f=[],h=0,v=0;v=0;y&&g.depth>c&&(c=g.depth),d.setLayout({depth:y?g.depth:h},!0),i==="vertical"?d.setLayout({dy:t},!0):d.setLayout({dx:t},!0);for(var m=0;mh-1?c:h-1;o&&o!=="left"&&tW(r,o,i,b);var A=i==="vertical"?(n-t)/b:(a-t)/b;rW(r,A,i)}function QM(r){var e=r.hostGraph.data.getRawDataItem(r.dataIndex);return e.depth!=null&&e.depth>=0}function tW(r,e,t,a){if(e==="right"){for(var n=[],i=r,o=0;i.length;){for(var s=0;s0;i--)l*=.99,oW(s,l,o),Ec(s,n,t,a,o),hW(s,l,o),Ec(s,n,t,a,o)}function nW(r,e){var t=[],a=e==="vertical"?"y":"x",n=kp(r,function(i){return i.getLayout()[a]});return n.keys.sort(function(i,o){return i-o}),C(n.keys,function(i){t.push(n.buckets.get(i))}),t}function iW(r,e,t,a,n,i){var o=1/0;C(r,function(s){var l=s.length,u=0;C(s,function(h){u+=h.getLayout().value});var f=i==="vertical"?(a-(l-1)*n)/u:(t-(l-1)*n)/u;f0&&(s=l.getLayout()[i]+u,n==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),f=l.getLayout()[i]+l.getLayout()[v]+e;var p=n==="vertical"?a:t;if(u=f-e-p,u>0){s=l.getLayout()[i]-u,n==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0),f=s;for(var c=h-2;c>=0;--c)l=o[c],u=l.getLayout()[i]+l.getLayout()[v]+e-f,u>0&&(s=l.getLayout()[i]-u,n==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),f=l.getLayout()[i]}})}function oW(r,e,t){C(r.slice().reverse(),function(a){C(a,function(n){if(n.outEdges.length){var i=Xa(n.outEdges,sW,t)/Xa(n.outEdges,Gf);if(isNaN(i)){var o=n.outEdges.length;i=o?Xa(n.outEdges,lW,t)/o:0}if(t==="vertical"){var s=n.getLayout().x+(i-en(n,t))*e;n.setLayout({x:s},!0)}else{var l=n.getLayout().y+(i-en(n,t))*e;n.setLayout({y:l},!0)}}})})}function sW(r,e){return en(r.node2,e)*r.getValue()}function lW(r,e){return en(r.node2,e)}function uW(r,e){return en(r.node1,e)*r.getValue()}function fW(r,e){return en(r.node1,e)}function en(r,e){return e==="vertical"?r.getLayout().x+r.getLayout().dx/2:r.getLayout().y+r.getLayout().dy/2}function Gf(r){return r.getValue()}function Xa(r,e,t){for(var a=0,n=r.length,i=-1;++io&&(o=l)}),C(a,function(s){var l=new pe({type:"color",mappingMethod:"linear",dataExtent:[i,o],visual:e.get("color")}),u=l.mapValueToVisual(s.getLayout().value),f=s.getModel().get(["itemStyle","color"]);f!=null?(s.setVisual("color",f),s.setVisual("style",{fill:f})):(s.setVisual("color",u),s.setVisual("style",{fill:u}))})}n.length&&C(n,function(s){var l=s.getModel().get("lineStyle");s.setVisual("style",l)})})}function pW(r){r.registerChartView(YH),r.registerSeriesModel(ZH),r.registerLayout(qH),r.registerVisual(cW),r.registerAction({type:"dragNode",event:"dragnode",update:"update"},function(e,t){t.eachComponent({mainType:"series",subType:"sankey",query:e},function(a){a.setNodePosition(e.dataIndex,[e.localX,e.localY])})})}var JM=function(){function r(){}return r.prototype.getInitialData=function(e,t){var a,n=t.getComponent("xAxis",this.get("xAxisIndex")),i=t.getComponent("yAxis",this.get("yAxisIndex")),o=n.get("type"),s=i.get("type"),l;o==="category"?(e.layout="horizontal",a=n.getOrdinalMeta(),l=!0):s==="category"?(e.layout="vertical",a=i.getOrdinalMeta(),l=!0):e.layout=e.layout||"horizontal";var u=["x","y"],f=e.layout==="horizontal"?0:1,h=this._baseAxisDim=u[f],v=u[1-f],c=[n,i],p=c[f].get("type"),d=c[1-f].get("type"),g=e.data;if(g&&l){var y=[];C(g,function(S,w){var x;z(S)?(x=S.slice(),S.unshift(w)):z(S.value)?(x=B({},S),x.value=x.value.slice(),S.value.unshift(w)):x=S,y.push(x)}),e.data=y}var m=this.defaultValueDimensions,_=[{name:h,type:Mf(p),ordinalMeta:a,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:v,type:Mf(d),dimsDef:m.slice()}];return Lo(this,{coordDimensions:_,dimensionsCount:m.length+1,encodeDefaulter:it(bT,_,this)})},r.prototype.getBaseAxis=function(){var e=this._baseAxisDim;return this.ecModel.getComponent(e+"Axis",this.get(e+"AxisIndex")).axis},r}(),jM=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],t.visualDrawType="stroke",t}return e.type="series.boxplot",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},e}(Gt);jt(jM,JM,!0);const dW=jM;var gW=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=t.getData(),o=this.group,s=this._data;this._data||o.removeAll();var l=t.get("layout")==="horizontal"?1:0;i.diff(s).add(function(u){if(i.hasValue(u)){var f=i.getItemLayout(u),h=XS(f,i,u,l,!0);i.setItemGraphicEl(u,h),o.add(h)}}).update(function(u,f){var h=s.getItemGraphicEl(f);if(!i.hasValue(u)){o.remove(h);return}var v=i.getItemLayout(u);h?(Ar(h),tI(v,h,i,u)):h=XS(v,i,u,l),o.add(h),i.setItemGraphicEl(u,h)}).remove(function(u){var f=s.getItemGraphicEl(u);f&&o.remove(f)}).execute(),this._data=i},e.prototype.remove=function(t){var a=this.group,n=this._data;this._data=null,n&&n.eachItemGraphicEl(function(i){i&&a.remove(i)})},e.type="boxplot",e}(Bt),yW=function(){function r(){}return r}(),mW=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="boxplotBoxPath",a}return e.prototype.getDefaultShape=function(){return new yW},e.prototype.buildPath=function(t,a){var n=a.points,i=0;for(t.moveTo(n[i][0],n[i][1]),i++;i<4;i++)t.lineTo(n[i][0],n[i][1]);for(t.closePath();id){var S=[y,_];a.push(S)}}}return{boxData:t,outliers:a}}var CW={type:"echarts:boxplot",transform:function(e){var t=e.upstream;if(t.sourceFormat!==be){var a="";It(a)}var n=TW(t.getRawData(),e.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:n.boxData},{data:n.outliers}]}};function DW(r){r.registerSeriesModel(dW),r.registerChartView(SW),r.registerLayout(xW),r.registerTransform(CW)}var MW=["color","borderColor"],IW=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(t),this._isLargeDraw?this._renderLarge(t):this._renderNormal(t)},e.prototype.incrementalPrepareRender=function(t,a,n){this._clear(),this._updateDrawMode(t)},e.prototype.incrementalRender=function(t,a,n,i){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(t,a):this._incrementalRenderNormal(t,a)},e.prototype.eachRendered=function(t){nn(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var a=t.pipelineContext.large;(this._isLargeDraw==null||a!==this._isLargeDraw)&&(this._isLargeDraw=a,this._clear())},e.prototype._renderNormal=function(t){var a=t.getData(),n=this._data,i=this.group,o=a.getLayout("isSimpleBox"),s=t.get("clip",!0),l=t.coordinateSystem,u=l.getArea&&l.getArea();this._data||i.removeAll(),a.diff(n).add(function(f){if(a.hasValue(f)){var h=a.getItemLayout(f);if(s&&ZS(u,h))return;var v=kc(h,f,!0);zt(v,{shape:{points:h.ends}},t,f),Oc(v,a,f,o),i.add(v),a.setItemGraphicEl(f,v)}}).update(function(f,h){var v=n.getItemGraphicEl(h);if(!a.hasValue(f)){i.remove(v);return}var c=a.getItemLayout(f);if(s&&ZS(u,c)){i.remove(v);return}v?(Dt(v,{shape:{points:c.ends}},t,f),Ar(v)):v=kc(c),Oc(v,a,f,o),i.add(v),a.setItemGraphicEl(f,v)}).remove(function(f){var h=n.getItemGraphicEl(f);h&&i.remove(h)}).execute(),this._data=a},e.prototype._renderLarge=function(t){this._clear(),qS(t,this.group);var a=t.get("clip",!0)?Ph(t.coordinateSystem,!1,t):null;a?this.group.setClipPath(a):this.group.removeClipPath()},e.prototype._incrementalRenderNormal=function(t,a){for(var n=a.getData(),i=n.getLayout("isSimpleBox"),o;(o=t.next())!=null;){var s=n.getItemLayout(o),l=kc(s);Oc(l,n,o,i),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},e.prototype._incrementalRenderLarge=function(t,a){qS(a,this.group,this._progressiveEls,!0)},e.prototype.remove=function(t){this._clear()},e.prototype._clear=function(){this.group.removeAll(),this._data=null},e.type="candlestick",e}(Bt),LW=function(){function r(){}return r}(),PW=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a.type="normalCandlestickBox",a}return e.prototype.getDefaultShape=function(){return new LW},e.prototype.buildPath=function(t,a){var n=a.points;this.__simpleBox?(t.moveTo(n[4][0],n[4][1]),t.lineTo(n[6][0],n[6][1])):(t.moveTo(n[0][0],n[0][1]),t.lineTo(n[1][0],n[1][1]),t.lineTo(n[2][0],n[2][1]),t.lineTo(n[3][0],n[3][1]),t.closePath(),t.moveTo(n[4][0],n[4][1]),t.lineTo(n[5][0],n[5][1]),t.moveTo(n[6][0],n[6][1]),t.lineTo(n[7][0],n[7][1]))},e}(dt);function kc(r,e,t){var a=r.ends;return new PW({shape:{points:t?RW(a,r):a},z2:100})}function ZS(r,e){for(var t=!0,a=0;a0?"borderColor":"borderColor0"])||t.get(["itemStyle",r>0?"color":"color0"]);r===0&&(n=t.get(["itemStyle","borderColorDoji"]));var i=t.getModel("itemStyle").getItemStyle(MW);e.useStyle(i),e.style.fill=null,e.style.stroke=n}const kW=IW;var eI=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],t}return e.prototype.getShadowDim=function(){return"open"},e.prototype.brushSelector=function(t,a,n){var i=a.getItemLayout(t);return i&&n.rect(i.brushRect)},e.type="series.candlestick",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderColorDoji:null,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},e}(Gt);jt(eI,JM,!0);const OW=eI;function NW(r){!r||!z(r.series)||C(r.series,function(e){tt(e)&&e.type==="k"&&(e.type="candlestick")})}var BW=["itemStyle","borderColor"],VW=["itemStyle","borderColor0"],zW=["itemStyle","borderColorDoji"],GW=["itemStyle","color"],FW=["itemStyle","color0"],HW={seriesType:"candlestick",plan:Do(),performRawSeries:!0,reset:function(r,e){function t(i,o){return o.get(i>0?GW:FW)}function a(i,o){return o.get(i===0?zW:i>0?BW:VW)}if(!e.isSeriesFiltered(r)){var n=r.pipelineContext.large;return!n&&{progress:function(i,o){for(var s;(s=i.next())!=null;){var l=o.getItemModel(s),u=o.getItemLayout(s).sign,f=l.getItemStyle();f.fill=t(u,l),f.stroke=a(u,l)||f.fill;var h=o.ensureUniqueItemVisual(s,"style");B(h,f)}}}}}};const WW=HW;var UW={seriesType:"candlestick",plan:Do(),reset:function(r){var e=r.coordinateSystem,t=r.getData(),a=$W(r,t),n=0,i=1,o=["x","y"],s=t.getDimensionIndex(t.mapDimension(o[n])),l=G(t.mapDimensionsAll(o[i]),t.getDimensionIndex,t),u=l[0],f=l[1],h=l[2],v=l[3];if(t.setLayout({candleWidth:a,isSimpleBox:a<=1.3}),s<0||l.length<4)return;return{progress:r.pipelineContext.large?p:c};function c(d,g){for(var y,m=g.getStore();(y=d.next())!=null;){var _=m.get(s,y),S=m.get(u,y),w=m.get(f,y),x=m.get(h,y),b=m.get(v,y),A=Math.min(S,w),T=Math.max(S,w),D=N(A,_),M=N(T,_),I=N(x,_),L=N(b,_),P=[];O(P,M,0),O(P,D,1),P.push(F(L),F(M),F(I),F(D));var R=g.getItemModel(y),E=!!R.get(["itemStyle","borderColorDoji"]);g.setItemLayout(y,{sign:KS(m,y,S,w,f,E),initBaseline:S>w?M[i]:D[i],ends:P,brushRect:V(x,b,_)})}function N(W,X){var Q=[];return Q[n]=X,Q[i]=W,isNaN(X)||isNaN(W)?[NaN,NaN]:e.dataToPoint(Q)}function O(W,X,Q){var j=X.slice(),gt=X.slice();j[n]=Yu(j[n]+a/2,1,!1),gt[n]=Yu(gt[n]-a/2,1,!0),Q?W.push(j,gt):W.push(gt,j)}function V(W,X,Q){var j=N(W,Q),gt=N(X,Q);return j[n]-=a/2,gt[n]-=a/2,{x:j[0],y:j[1],width:a,height:gt[1]-j[1]}}function F(W){return W[n]=Yu(W[n],1),W}}function p(d,g){for(var y=zr(d.count*4),m=0,_,S=[],w=[],x,b=g.getStore(),A=!!r.get(["itemStyle","borderColorDoji"]);(x=d.next())!=null;){var T=b.get(s,x),D=b.get(u,x),M=b.get(f,x),I=b.get(h,x),L=b.get(v,x);if(isNaN(T)||isNaN(I)||isNaN(L)){y[m++]=NaN,m+=3;continue}y[m++]=KS(b,x,D,M,f,A),S[n]=T,S[i]=I,_=e.dataToPoint(S,null,w),y[m++]=_?_[0]:NaN,y[m++]=_?_[1]:NaN,S[i]=L,_=e.dataToPoint(S,null,w),y[m++]=_?_[1]:NaN}g.setLayout("largePoints",y)}}};function KS(r,e,t,a,n,i){var o;return t>a?o=-1:t0?r.get(n,e-1)<=a?1:-1:1,o}function $W(r,e){var t=r.getBaseAxis(),a,n=t.type==="category"?t.getBandWidth():(a=t.getExtent(),Math.abs(a[1]-a[0])/e.count()),i=H(lt(r.get("barMaxWidth"),n),n),o=H(lt(r.get("barMinWidth"),1),n),s=r.get("barWidth");return s!=null?H(s,n):Math.max(Math.min(n/2,i),o)}const YW=UW;function XW(r){r.registerChartView(kW),r.registerSeriesModel(OW),r.registerPreprocessor(NW),r.registerVisual(WW),r.registerLayout(YW)}function QS(r,e){var t=e.rippleEffectColor||e.color;r.eachChild(function(a){a.attr({z:e.z,zlevel:e.zlevel,style:{stroke:e.brushType==="stroke"?t:null,fill:e.brushType==="fill"?t:null}})})}var ZW=function(r){k(e,r);function e(t,a){var n=r.call(this)||this,i=new bl(t,a),o=new at;return n.add(i),n.add(o),n.updateData(t,a),n}return e.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},e.prototype.startEffectAnimation=function(t){for(var a=t.symbolType,n=t.color,i=t.rippleNumber,o=this.childAt(1),s=0;s0&&(s=this._getLineLength(i)/f*1e3),s!==this._period||l!==this._loop||u!==this._roundTrip){i.stopAnimation();var v=void 0;K(h)?v=h(n):v=h,i.__t>0&&(v=-s*i.__t),this._animateSymbol(i,s,v,l,u)}this._period=s,this._loop=l,this._roundTrip=u}},e.prototype._animateSymbol=function(t,a,n,i,o){if(a>0){t.__t=0;var s=this,l=t.animate("",i).when(o?a*2:a,{__t:o?2:1}).delay(n).during(function(){s._updateSymbolPosition(t)});i||l.done(function(){s.remove(t)}),l.start()}},e.prototype._getLineLength=function(t){return ka(t.__p1,t.__cp1)+ka(t.__cp1,t.__p2)},e.prototype._updateAnimationPoints=function(t,a){t.__p1=a[0],t.__p2=a[1],t.__cp1=a[2]||[(a[0][0]+a[1][0])/2,(a[0][1]+a[1][1])/2]},e.prototype.updateData=function(t,a,n){this.childAt(0).updateData(t,a,n),this._updateEffectSymbol(t,a)},e.prototype._updateSymbolPosition=function(t){var a=t.__p1,n=t.__p2,i=t.__cp1,o=t.__t<1?t.__t:2-t.__t,s=[t.x,t.y],l=s.slice(),u=ue,f=xp;s[0]=u(a[0],i[0],n[0],o),s[1]=u(a[1],i[1],n[1],o);var h=t.__t<1?f(a[0],i[0],n[0],o):f(n[0],i[0],a[0],1-o),v=t.__t<1?f(a[1],i[1],n[1],o):f(n[1],i[1],a[1],1-o);t.rotation=-Math.atan2(v,h)-Math.PI/2,(this._symbolType==="line"||this._symbolType==="rect"||this._symbolType==="roundRect")&&(t.__lastT!==void 0&&t.__lastT=0&&!(i[l]<=a);l--);l=Math.min(l,o-2)}else{for(l=s;la);l++);l=Math.min(l-1,o-2)}var f=(a-i[l])/(i[l+1]-i[l]),h=n[l],v=n[l+1];t.x=h[0]*(1-f)+f*v[0],t.y=h[1]*(1-f)+f*v[1];var c=t.__t<1?v[0]-h[0]:h[0]-v[0],p=t.__t<1?v[1]-h[1]:h[1]-v[1];t.rotation=-Math.atan2(p,c)-Math.PI/2,this._lastFrame=l,this._lastFramePercent=a,t.ignore=!1}},e}(rI);const n6=a6;var i6=function(){function r(){this.polyline=!1,this.curveness=0,this.segs=[]}return r}(),o6=function(r){k(e,r);function e(t){var a=r.call(this,t)||this;return a._off=0,a.hoverDataIdx=-1,a}return e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new i6},e.prototype.buildPath=function(t,a){var n=a.segs,i=a.curveness,o;if(a.polyline)for(o=this._off;o0){t.moveTo(n[o++],n[o++]);for(var l=1;l0){var c=(u+h)/2-(f-v)*i,p=(f+v)/2-(h-u)*i;t.quadraticCurveTo(c,p,h,v)}else t.lineTo(h,v)}this.incremental&&(this._off=o,this.notClear=!0)},e.prototype.findDataIndex=function(t,a){var n=this.shape,i=n.segs,o=n.curveness,s=this.style.lineWidth;if(n.polyline)for(var l=0,u=0;u0)for(var h=i[u++],v=i[u++],c=1;c0){var g=(h+p)/2-(v-d)*o,y=(v+d)/2-(p-h)*o;if(uA(h,v,g,y,p,d,s,t,a))return l}else if(Ra(h,v,p,d,s,t,a))return l;l++}return-1},e.prototype.contain=function(t,a){var n=this.transformCoordToLocal(t,a),i=this.getBoundingRect();if(t=n[0],a=n[1],i.contain(t,a)){var o=this.hoverDataIdx=this.findDataIndex(t,a);return o>=0}return this.hoverDataIdx=-1,!1},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var a=this.shape,n=a.segs,i=1/0,o=1/0,s=-1/0,l=-1/0,u=0;u0&&(o.dataIndex=l+e.__startIndex)})},r.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},r}();const l6=s6;var u6={seriesType:"lines",plan:Do(),reset:function(r){var e=r.coordinateSystem;if(e){var t=r.get("polyline"),a=r.pipelineContext.large;return{progress:function(n,i){var o=[];if(a){var s=void 0,l=n.end-n.start;if(t){for(var u=0,f=n.start;f0&&(f||u.configLayer(s,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(l/10+.9,1),0)})),o.updateData(i);var h=t.get("clip",!0)&&Ph(t.coordinateSystem,!1,t);h?this.group.setClipPath(h):this.group.removeClipPath(),this._lastZlevel=s,this._finished=!0},e.prototype.incrementalPrepareRender=function(t,a,n){var i=t.getData(),o=this._updateLineDraw(i,t);o.incrementalPrepareUpdate(i),this._clearLayer(n),this._finished=!1},e.prototype.incrementalRender=function(t,a,n){this._lineDraw.incrementalUpdate(t,a.getData()),this._finished=t.end===a.getData().count()},e.prototype.eachRendered=function(t){this._lineDraw&&this._lineDraw.eachRendered(t)},e.prototype.updateTransform=function(t,a,n){var i=t.getData(),o=t.pipelineContext;if(!this._finished||o.large||o.progressiveRender)return{update:!0};var s=nI.reset(t,a,n);s.progress&&s.progress({start:0,end:i.count(),count:i.count()},i),this._lineDraw.updateLayout(),this._clearLayer(n)},e.prototype._updateLineDraw=function(t,a){var n=this._lineDraw,i=this._showEffect(a),o=!!a.get("polyline"),s=a.pipelineContext,l=s.large;return(!n||i!==this._hasEffet||o!==this._isPolyline||l!==this._isLargeDraw)&&(n&&n.remove(),n=this._lineDraw=l?new l6:new Ty(o?i?n6:aI:i?rI:Ay),this._hasEffet=i,this._isPolyline=o,this._isLargeDraw=l),this.group.add(n.group),n},e.prototype._showEffect=function(t){return!!t.get(["effect","show"])},e.prototype._clearLayer=function(t){var a=t.getZr(),n=a.painter.getType()==="svg";!n&&this._lastZlevel!=null&&a.painter.getLayer(this._lastZlevel).clear(!0)},e.prototype.remove=function(t,a){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(a)},e.prototype.dispose=function(t,a){this.remove(t,a)},e.type="lines",e}(Bt);const h6=f6;var v6=typeof Uint32Array>"u"?Array:Uint32Array,c6=typeof Float64Array>"u"?Array:Float64Array;function JS(r){var e=r.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(r.data=G(e,function(t){var a=[t[0].coord,t[1].coord],n={coords:a};return t[0].name&&(n.fromName=t[0].name),t[1].name&&(n.toName=t[1].name),eg([n,t[0],t[1]])}))}var p6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.visualStyleAccessPath="lineStyle",t.visualDrawType="stroke",t}return e.prototype.init=function(t){t.data=t.data||[],JS(t);var a=this._processFlatCoordsArray(t.data);this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset,a.flatCoords&&(t.data=new Float32Array(a.count)),r.prototype.init.apply(this,arguments)},e.prototype.mergeOption=function(t){if(JS(t),t.data){var a=this._processFlatCoordsArray(t.data);this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset,a.flatCoords&&(t.data=new Float32Array(a.count))}r.prototype.mergeOption.apply(this,arguments)},e.prototype.appendData=function(t){var a=this._processFlatCoordsArray(t.data);a.flatCoords&&(this._flatCoords?(this._flatCoords=af(this._flatCoords,a.flatCoords),this._flatCoordsOffset=af(this._flatCoordsOffset,a.flatCoordsOffset)):(this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset),t.data=new Float32Array(a.count)),this.getRawData().appendData(t.data)},e.prototype._getCoordsFromItemModel=function(t){var a=this.getData().getItemModel(t),n=a.option instanceof Array?a.option:a.getShallow("coords");return n},e.prototype.getLineCoordsCount=function(t){return this._flatCoordsOffset?this._flatCoordsOffset[t*2+1]:this._getCoordsFromItemModel(t).length},e.prototype.getLineCoords=function(t,a){if(this._flatCoordsOffset){for(var n=this._flatCoordsOffset[t*2],i=this._flatCoordsOffset[t*2+1],o=0;o ")})},e.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},e.prototype.getProgressive=function(){var t=this.option.progressive;return t??(this.option.large?1e4:this.get("progressive"))},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return t??(this.option.large?2e4:this.get("progressiveThreshold"))},e.prototype.getZLevelKey=function(){var t=this.getModel("effect"),a=t.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:t.get("show")&&a>0?a+"":""},e.type="series.lines",e.dependencies=["grid","polar","geo","calendar"],e.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},e}(Gt);const d6=p6;function Tu(r){return r instanceof Array||(r=[r,r]),r}var g6={seriesType:"lines",reset:function(r){var e=Tu(r.get("symbol")),t=Tu(r.get("symbolSize")),a=r.getData();a.setVisual("fromSymbol",e&&e[0]),a.setVisual("toSymbol",e&&e[1]),a.setVisual("fromSymbolSize",t&&t[0]),a.setVisual("toSymbolSize",t&&t[1]);function n(i,o){var s=i.getItemModel(o),l=Tu(s.getShallow("symbol",!0)),u=Tu(s.getShallow("symbolSize",!0));l[0]&&i.setItemVisual(o,"fromSymbol",l[0]),l[1]&&i.setItemVisual(o,"toSymbol",l[1]),u[0]&&i.setItemVisual(o,"fromSymbolSize",u[0]),u[1]&&i.setItemVisual(o,"toSymbolSize",u[1])}return{dataEach:a.hasItemOption?n:null}}};const y6=g6;function m6(r){r.registerChartView(h6),r.registerSeriesModel(d6),r.registerLayout(nI),r.registerVisual(y6)}var _6=256,S6=function(){function r(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var e=qa.createCanvas();this.canvas=e}return r.prototype.update=function(e,t,a,n,i,o){var s=this._getBrush(),l=this._getGradient(i,"inRange"),u=this._getGradient(i,"outOfRange"),f=this.pointSize+this.blurSize,h=this.canvas,v=h.getContext("2d"),c=e.length;h.width=t,h.height=a;for(var p=0;p0){var I=o(_)?l:u;_>0&&(_=_*D+A),w[x++]=I[M],w[x++]=I[M+1],w[x++]=I[M+2],w[x++]=I[M+3]*_*256}else x+=4}return v.putImageData(S,0,0),h},r.prototype._getBrush=function(){var e=this._brushCanvas||(this._brushCanvas=qa.createCanvas()),t=this.pointSize+this.blurSize,a=t*2;e.width=a,e.height=a;var n=e.getContext("2d");return n.clearRect(0,0,a,a),n.shadowOffsetX=a,n.shadowBlur=this.blurSize,n.shadowColor="#000",n.beginPath(),n.arc(-t,t,this.pointSize,0,Math.PI*2,!0),n.closePath(),n.fill(),e},r.prototype._getGradient=function(e,t){for(var a=this._gradientPixels,n=a[t]||(a[t]=new Uint8ClampedArray(256*4)),i=[0,0,0,0],o=0,s=0;s<256;s++)e[t](s/255,!0,i),n[o++]=i[0],n[o++]=i[1],n[o++]=i[2],n[o++]=i[3];return n},r}();const x6=S6;function w6(r,e,t){var a=r[1]-r[0];e=G(e,function(o){return{interval:[(o.interval[0]-r[0])/a,(o.interval[1]-r[0])/a]}});var n=e.length,i=0;return function(o){var s;for(s=i;s=0;s--){var l=e[s].interval;if(l[0]<=o&&o<=l[1]){i=s;break}}return s>=0&&s=e[0]&&a<=e[1]}}function jS(r){var e=r.dimensions;return e[0]==="lng"&&e[1]==="lat"}var A6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i;a.eachComponent("visualMap",function(s){s.eachTargetSeries(function(l){l===t&&(i=s)})}),this._progressiveEls=null,this.group.removeAll();var o=t.coordinateSystem;o.type==="cartesian2d"||o.type==="calendar"?this._renderOnCartesianAndCalendar(t,n,0,t.getData().count()):jS(o)&&this._renderOnGeo(o,t,i,n)},e.prototype.incrementalPrepareRender=function(t,a,n){this.group.removeAll()},e.prototype.incrementalRender=function(t,a,n,i){var o=a.coordinateSystem;o&&(jS(o)?this.render(a,n,i):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(a,i,t.start,t.end,!0)))},e.prototype.eachRendered=function(t){nn(this._progressiveEls||this.group,t)},e.prototype._renderOnCartesianAndCalendar=function(t,a,n,i,o){var s=t.coordinateSystem,l=yi(s,"cartesian2d"),u,f,h,v;if(l){var c=s.getAxis("x"),p=s.getAxis("y");u=c.getBandWidth()+.5,f=p.getBandWidth()+.5,h=c.scale.getExtent(),v=p.scale.getExtent()}for(var d=this.group,g=t.getData(),y=t.getModel(["emphasis","itemStyle"]).getItemStyle(),m=t.getModel(["blur","itemStyle"]).getItemStyle(),_=t.getModel(["select","itemStyle"]).getItemStyle(),S=t.get(["itemStyle","borderRadius"]),w=oe(t),x=t.getModel("emphasis"),b=x.get("focus"),A=x.get("blurScope"),T=x.get("disabled"),D=l?[g.mapDimension("x"),g.mapDimension("y"),g.mapDimension("value")]:[g.mapDimension("time"),g.mapDimension("value")],M=n;Mh[1]||Rv[1])continue;var E=s.dataToPoint([P,R]);I=new xt({shape:{x:E[0]-u/2,y:E[1]-f/2,width:u,height:f},style:L})}else{if(isNaN(g.get(D[1],M)))continue;I=new xt({z2:1,shape:s.dataToRect([g.get(D[0],M)]).contentShape,style:L})}if(g.hasItemOption){var N=g.getItemModel(M),O=N.getModel("emphasis");y=O.getModel("itemStyle").getItemStyle(),m=N.getModel(["blur","itemStyle"]).getItemStyle(),_=N.getModel(["select","itemStyle"]).getItemStyle(),S=N.get(["itemStyle","borderRadius"]),b=O.get("focus"),A=O.get("blurScope"),T=O.get("disabled"),w=oe(N)}I.shape.r=S;var V=t.getRawValue(M),F="-";V&&V[2]!=null&&(F=V[2]+""),ge(I,w,{labelFetcher:t,labelDataIndex:M,defaultOpacity:L.opacity,defaultText:F}),I.ensureState("emphasis").style=y,I.ensureState("blur").style=m,I.ensureState("select").style=_,Wt(I,b,A,T),I.incremental=o,o&&(I.states.emphasis.hoverLayer=!0),d.add(I),g.setItemGraphicEl(M,I),this._progressiveEls&&this._progressiveEls.push(I)}},e.prototype._renderOnGeo=function(t,a,n,i){var o=n.targetVisuals.inRange,s=n.targetVisuals.outOfRange,l=a.getData(),u=this._hmLayer||this._hmLayer||new x6;u.blurSize=a.get("blurSize"),u.pointSize=a.get("pointSize"),u.minOpacity=a.get("minOpacity"),u.maxOpacity=a.get("maxOpacity");var f=t.getViewRect().clone(),h=t.getRoamTransform();f.applyTransform(h);var v=Math.max(f.x,0),c=Math.max(f.y,0),p=Math.min(f.width+f.x,i.getWidth()),d=Math.min(f.height+f.y,i.getHeight()),g=p-v,y=d-c,m=[l.mapDimension("lng"),l.mapDimension("lat"),l.mapDimension("value")],_=l.mapArray(m,function(b,A,T){var D=t.dataToPoint([b,A]);return D[0]-=v,D[1]-=c,D.push(T),D}),S=n.getExtent(),w=n.type==="visualMap.continuous"?b6(S,n.option.range):w6(S,n.getPieceList(),n.option.selected);u.update(_,g,y,o.color.getNormalizer(),{inRange:o.color.getColorMapper(),outOfRange:s.color.getColorMapper()},w);var x=new ye({style:{width:g,height:y,x:v,y:c,image:u.canvas},silent:!0});this.group.add(x)},e.type="heatmap",e}(Bt);const T6=A6;var C6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.getInitialData=function(t,a){return ma(null,this,{generateCoord:"value"})},e.prototype.preventIncremental=function(){var t=yl.get(this.get("coordinateSystem"));if(t&&t.dimensions)return t.dimensions[0]==="lng"&&t.dimensions[1]==="lat"},e.type="series.heatmap",e.dependencies=["grid","geo","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:"#212121"}}},e}(Gt);const D6=C6;function M6(r){r.registerChartView(T6),r.registerSeriesModel(D6)}var I6=["itemStyle","borderWidth"],tx=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],Vc=new Xr,L6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=this.group,o=t.getData(),s=this._data,l=t.coordinateSystem,u=l.getBaseAxis(),f=u.isHorizontal(),h=l.master.getRect(),v={ecSize:{width:n.getWidth(),height:n.getHeight()},seriesModel:t,coordSys:l,coordSysExtent:[[h.x,h.x+h.width],[h.y,h.y+h.height]],isHorizontal:f,valueDim:tx[+f],categoryDim:tx[1-+f]};return o.diff(s).add(function(c){if(o.hasValue(c)){var p=rx(o,c),d=ex(o,c,p,v),g=ax(o,v,d);o.setItemGraphicEl(c,g),i.add(g),ix(g,v,d)}}).update(function(c,p){var d=s.getItemGraphicEl(p);if(!o.hasValue(c)){i.remove(d);return}var g=rx(o,c),y=ex(o,c,g,v),m=fI(o,y);d&&m!==d.__pictorialShapeStr&&(i.remove(d),o.setItemGraphicEl(c,null),d=null),d?B6(d,v,y):d=ax(o,v,y,!0),o.setItemGraphicEl(c,d),d.__pictorialSymbolMeta=y,i.add(d),ix(d,v,y)}).remove(function(c){var p=s.getItemGraphicEl(c);p&&nx(s,c,p.__pictorialSymbolMeta.animationModel,p)}).execute(),this._data=o,this.group},e.prototype.remove=function(t,a){var n=this.group,i=this._data;t.get("animation")?i&&i.eachItemGraphicEl(function(o){nx(i,nt(o).dataIndex,t,o)}):n.removeAll()},e.type="pictorialBar",e}(Bt);function ex(r,e,t,a){var n=r.getItemLayout(e),i=t.get("symbolRepeat"),o=t.get("symbolClip"),s=t.get("symbolPosition")||"start",l=t.get("symbolRotate"),u=(l||0)*Math.PI/180||0,f=t.get("symbolPatternSize")||2,h=t.isAnimationEnabled(),v={dataIndex:e,layout:n,itemModel:t,symbolType:r.getItemVisual(e,"symbol")||"circle",style:r.getItemVisual(e,"style"),symbolClip:o,symbolRepeat:i,symbolRepeatDirection:t.get("symbolRepeatDirection"),symbolPatternSize:f,rotation:u,animationModel:h?t:null,hoverScale:h&&t.get(["emphasis","scale"]),z2:t.getShallow("z",!0)||0};P6(t,i,n,a,v),R6(r,e,n,i,o,v.boundingLength,v.pxSign,f,a,v),E6(t,v.symbolScale,u,a,v);var c=v.symbolSize,p=Io(t.get("symbolOffset"),c);return k6(t,c,n,i,o,p,s,v.valueLineWidth,v.boundingLength,v.repeatCutLength,a,v),v}function P6(r,e,t,a,n){var i=a.valueDim,o=r.get("symbolBoundingData"),s=a.coordSys.getOtherAxis(a.coordSys.getBaseAxis()),l=s.toGlobalCoord(s.dataToCoord(0)),u=1-+(t[i.wh]<=0),f;if(z(o)){var h=[zc(s,o[0])-l,zc(s,o[1])-l];h[1]0?1:-1}function zc(r,e){return r.toGlobalCoord(r.dataToCoord(r.scale.parse(e)))}function R6(r,e,t,a,n,i,o,s,l,u){var f=l.valueDim,h=l.categoryDim,v=Math.abs(t[h.wh]),c=r.getItemVisual(e,"symbolSize"),p;z(c)?p=c.slice():c==null?p=["100%","100%"]:p=[c,c],p[h.index]=H(p[h.index],v),p[f.index]=H(p[f.index],a?v:Math.abs(i)),u.symbolSize=p;var d=u.symbolScale=[p[0]/s,p[1]/s];d[f.index]*=(l.isHorizontal?-1:1)*o}function E6(r,e,t,a,n){var i=r.get(I6)||0;i&&(Vc.attr({scaleX:e[0],scaleY:e[1],rotation:t}),Vc.updateTransform(),i/=Vc.getLineScale(),i*=e[a.valueDim.index]),n.valueLineWidth=i||0}function k6(r,e,t,a,n,i,o,s,l,u,f,h){var v=f.categoryDim,c=f.valueDim,p=h.pxSign,d=Math.max(e[c.index]+s,0),g=d;if(a){var y=Math.abs(l),m=fe(r.get("symbolMargin"),"15%")+"",_=!1;m.lastIndexOf("!")===m.length-1&&(_=!0,m=m.slice(0,m.length-1));var S=H(m,e[c.index]),w=Math.max(d+S*2,0),x=_?0:S*2,b=Zb(a),A=b?a:ox((y+x)/w),T=y-A*d;S=T/2/(_?A:Math.max(A-1,1)),w=d+S*2,x=_?0:S*2,!b&&a!=="fixed"&&(A=u?ox((Math.abs(u)+x)/w):0),g=A*w-x,h.repeatTimes=A,h.symbolMargin=S}var D=p*(g/2),M=h.pathPosition=[];M[v.index]=t[v.wh]/2,M[c.index]=o==="start"?D:o==="end"?l-D:l/2,i&&(M[0]+=i[0],M[1]+=i[1]);var I=h.bundlePosition=[];I[v.index]=t[v.xy],I[c.index]=t[c.xy];var L=h.barRectShape=B({},t);L[c.wh]=p*Math.max(Math.abs(t[c.wh]),Math.abs(M[c.index]+D)),L[v.wh]=t[v.wh];var P=h.clipShape={};P[v.xy]=-t[v.xy],P[v.wh]=f.ecSize[v.wh],P[c.xy]=0,P[c.wh]=t[c.wh]}function iI(r){var e=r.symbolPatternSize,t=Jt(r.symbolType,-e/2,-e/2,e,e);return t.attr({culling:!0}),t.type!=="image"&&t.setStyle({strokeNoScale:!0}),t}function oI(r,e,t,a){var n=r.__pictorialBundle,i=t.symbolSize,o=t.valueLineWidth,s=t.pathPosition,l=e.valueDim,u=t.repeatTimes||0,f=0,h=i[e.valueDim.index]+o+t.symbolMargin*2;for(Ey(r,function(d){d.__pictorialAnimationIndex=f,d.__pictorialRepeatTimes=u,f0:y<0)&&(m=u-1-d),g[l.index]=h*(m-u/2+.5)+s[l.index],{x:g[0],y:g[1],scaleX:t.symbolScale[0],scaleY:t.symbolScale[1],rotation:t.rotation}}}function sI(r,e,t,a){var n=r.__pictorialBundle,i=r.__pictorialMainPath;i?ao(i,null,{x:t.pathPosition[0],y:t.pathPosition[1],scaleX:t.symbolScale[0],scaleY:t.symbolScale[1],rotation:t.rotation},t,a):(i=r.__pictorialMainPath=iI(t),n.add(i),ao(i,{x:t.pathPosition[0],y:t.pathPosition[1],scaleX:0,scaleY:0,rotation:t.rotation},{scaleX:t.symbolScale[0],scaleY:t.symbolScale[1]},t,a))}function lI(r,e,t){var a=B({},e.barRectShape),n=r.__pictorialBarRect;n?ao(n,null,{shape:a},e,t):(n=r.__pictorialBarRect=new xt({z2:2,shape:a,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}}),n.disableMorphing=!0,r.add(n))}function uI(r,e,t,a){if(t.symbolClip){var n=r.__pictorialClipPath,i=B({},t.clipShape),o=e.valueDim,s=t.animationModel,l=t.dataIndex;if(n)Dt(n,{shape:i},s,l);else{i[o.wh]=0,n=new xt({shape:i}),r.__pictorialBundle.setClipPath(n),r.__pictorialClipPath=n;var u={};u[o.wh]=t.clipShape[o.wh],gl[a?"updateProps":"initProps"](n,{shape:u},s,l)}}}function rx(r,e){var t=r.getItemModel(e);return t.getAnimationDelayParams=O6,t.isAnimationEnabled=N6,t}function O6(r){return{index:r.__pictorialAnimationIndex,count:r.__pictorialRepeatTimes}}function N6(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function ax(r,e,t,a){var n=new at,i=new at;return n.add(i),n.__pictorialBundle=i,i.x=t.bundlePosition[0],i.y=t.bundlePosition[1],t.symbolRepeat?oI(n,e,t):sI(n,e,t),lI(n,t,a),uI(n,e,t,a),n.__pictorialShapeStr=fI(r,t),n.__pictorialSymbolMeta=t,n}function B6(r,e,t){var a=t.animationModel,n=t.dataIndex,i=r.__pictorialBundle;Dt(i,{x:t.bundlePosition[0],y:t.bundlePosition[1]},a,n),t.symbolRepeat?oI(r,e,t,!0):sI(r,e,t,!0),lI(r,t,!0),uI(r,e,t,!0)}function nx(r,e,t,a){var n=a.__pictorialBarRect;n&&n.removeTextContent();var i=[];Ey(a,function(o){i.push(o)}),a.__pictorialMainPath&&i.push(a.__pictorialMainPath),a.__pictorialClipPath&&(t=null),C(i,function(o){Qa(o,{scaleX:0,scaleY:0},t,e,function(){a.parent&&a.parent.remove(a)})}),r.setItemGraphicEl(e,null)}function fI(r,e){return[r.getItemVisual(e.dataIndex,"symbol")||"none",!!e.symbolRepeat,!!e.symbolClip].join(":")}function Ey(r,e,t){C(r.__pictorialBundle.children(),function(a){a!==r.__pictorialBarRect&&e.call(t,a)})}function ao(r,e,t,a,n,i){e&&r.attr(e),a.symbolClip&&!n?t&&r.attr(t):t&&gl[n?"updateProps":"initProps"](r,t,a.animationModel,a.dataIndex,i)}function ix(r,e,t){var a=t.dataIndex,n=t.itemModel,i=n.getModel("emphasis"),o=i.getModel("itemStyle").getItemStyle(),s=n.getModel(["blur","itemStyle"]).getItemStyle(),l=n.getModel(["select","itemStyle"]).getItemStyle(),u=n.getShallow("cursor"),f=i.get("focus"),h=i.get("blurScope"),v=i.get("scale");Ey(r,function(d){if(d instanceof ye){var g=d.style;d.useStyle(B({image:g.image,x:g.x,y:g.y,width:g.width,height:g.height},t.style))}else d.useStyle(t.style);var y=d.ensureState("emphasis");y.style=o,v&&(y.scaleX=d.scaleX*1.1,y.scaleY=d.scaleY*1.1),d.ensureState("blur").style=s,d.ensureState("select").style=l,u&&(d.cursor=u),d.z2=t.z2});var c=e.valueDim.posDesc[+(t.boundingLength>0)],p=r.__pictorialBarRect;ge(p,oe(n),{labelFetcher:e.seriesModel,labelDataIndex:a,defaultText:lo(e.seriesModel.getData(),a),inheritColor:t.style.fill,defaultOpacity:t.style.opacity,defaultOutsidePosition:c}),Wt(r,f,h,i.get("disabled"))}function ox(r){var e=Math.round(r);return Math.abs(r-e)<1e-4?e:Math.ceil(r)}const V6=L6;var z6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.hasSymbolVisual=!0,t.defaultSymbol="roundRect",t}return e.prototype.getInitialData=function(t){return t.stack=null,r.prototype.getInitialData.apply(this,arguments)},e.type="series.pictorialBar",e.dependencies=["grid"],e.defaultOption=on(Ef.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),e}(Ef);const G6=z6;function F6(r){r.registerChartView(V6),r.registerSeriesModel(G6),r.registerLayout(r.PRIORITY.VISUAL.LAYOUT,it($C,"pictorialBar")),r.registerLayout(r.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,YC("pictorialBar"))}var H6=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t._layers=[],t}return e.prototype.render=function(t,a,n){var i=t.getData(),o=this,s=this.group,l=t.getLayerSeries(),u=i.getLayout("layoutInfo"),f=u.rect,h=u.boundaryGap;s.x=0,s.y=f.y+h[0];function v(g){return g.name}var c=new pa(this._layersSeries||[],l,v,v),p=[];c.add($(d,this,"add")).update($(d,this,"update")).remove($(d,this,"remove")).execute();function d(g,y,m){var _=o._layers;if(g==="remove"){s.remove(_[y]);return}for(var S=[],w=[],x,b=l[y].indices,A=0;Ai&&(i=s),a.push(s)}for(var u=0;ui&&(i=h)}return{y0:n,max:i}}function q6(r){r.registerChartView(U6),r.registerSeriesModel(Y6),r.registerLayout(X6),r.registerProcessor(Cl("themeRiver"))}var K6=2,Q6=4,J6=function(r){k(e,r);function e(t,a,n,i){var o=r.call(this)||this;o.z2=K6,o.textConfig={inside:!0},nt(o).seriesIndex=a.seriesIndex;var s=new Tt({z2:Q6,silent:t.getModel().get(["label","silent"])});return o.setTextContent(s),o.updateData(!0,t,a,n,i),o}return e.prototype.updateData=function(t,a,n,i,o){this.node=a,a.piece=this,n=n||this._seriesModel,i=i||this._ecModel;var s=this;nt(s).dataIndex=a.dataIndex;var l=a.getModel(),u=l.getModel("emphasis"),f=a.getLayout(),h=B({},f);h.label=null;var v=a.getVisual("style");v.lineJoin="bevel";var c=a.getVisual("decal");c&&(v.decal=oo(c,o));var p=Qi(l.getModel("itemStyle"),h,!0);B(h,p),C(Le,function(m){var _=s.ensureState(m),S=l.getModel([m,"itemStyle"]);_.style=S.getItemStyle();var w=Qi(S,h);w&&(_.shape=w)}),t?(s.setShape(h),s.shape.r=f.r0,Dt(s,{shape:{r:f.r}},n,a.dataIndex)):(Dt(s,{shape:h},n),Ar(s)),s.useStyle(v),this._updateLabel(n);var d=l.getShallow("cursor");d&&s.attr("cursor",d),this._seriesModel=n||this._seriesModel,this._ecModel=i||this._ecModel;var g=u.get("focus"),y=g==="ancestor"?a.getAncestorsIndices():g==="descendant"?a.getDescendantIndices():g;Wt(this,y,u.get("blurScope"),u.get("disabled"))},e.prototype._updateLabel=function(t){var a=this,n=this.node.getModel(),i=n.getModel("label"),o=this.node.getLayout(),s=o.endAngle-o.startAngle,l=(o.startAngle+o.endAngle)/2,u=Math.cos(l),f=Math.sin(l),h=this,v=h.getTextContent(),c=this.node.dataIndex,p=i.get("minAngle")/180*Math.PI,d=i.get("show")&&!(p!=null&&Math.abs(s)Math.PI/2?"right":"left"):!I||I==="center"?(s===2*Math.PI&&o.r0===0?D=0:D=(o.r+o.r0)/2,I="center"):I==="left"?(D=o.r0+M,l>Math.PI/2&&(I="right")):I==="right"&&(D=o.r-M,l>Math.PI/2&&(I="left")),S.style.align=I,S.style.verticalAlign=g(m,"verticalAlign")||"middle",S.x=D*u+o.cx,S.y=D*f+o.cy;var L=g(m,"rotate"),P=0;L==="radial"?(P=-l,P<-Math.PI/2&&(P+=Math.PI)):L==="tangential"?(P=Math.PI/2-l,P>Math.PI/2?P-=Math.PI:P<-Math.PI/2&&(P+=Math.PI)):Ct(L)&&(P=L*Math.PI/180),S.rotation=P});function g(y,m){var _=y.get(m);return _??i.get(m)}v.dirtyStyle()},e}(Ve);const lx=J6;var Rd="sunburstRootToNode",ux="sunburstHighlight",j6="sunburstUnhighlight";function tU(r){r.registerAction({type:Rd,update:"updateView"},function(e,t){t.eachComponent({mainType:"series",subType:"sunburst",query:e},a);function a(n,i){var o=el(e,[Rd],n);if(o){var s=n.getViewRoot();s&&(e.direction=my(s,o.node)?"rollUp":"drillDown"),n.resetViewRoot(o.node)}}}),r.registerAction({type:ux,update:"none"},function(e,t,a){e=B({},e),t.eachComponent({mainType:"series",subType:"sunburst",query:e},n);function n(i){var o=el(e,[ux],i);o&&(e.dataIndex=o.node.dataIndex)}a.dispatchAction(B(e,{type:"highlight"}))}),r.registerAction({type:j6,update:"updateView"},function(e,t,a){e=B({},e),a.dispatchAction(B(e,{type:"downplay"}))})}var eU=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n,i){var o=this;this.seriesModel=t,this.api=n,this.ecModel=a;var s=t.getData(),l=s.tree.root,u=t.getViewRoot(),f=this.group,h=t.get("renderLabelForZeroData"),v=[];u.eachNode(function(m){v.push(m)});var c=this._oldChildren||[];p(v,c),y(l,u),this._initEvents(),this._oldChildren=v;function p(m,_){if(m.length===0&&_.length===0)return;new pa(_,m,S,S).add(w).update(w).remove(it(w,null)).execute();function S(x){return x.getId()}function w(x,b){var A=x==null?null:m[x],T=b==null?null:_[b];d(A,T)}}function d(m,_){if(!h&&m&&!m.getValue()&&(m=null),m!==l&&_!==l){if(_&&_.piece)m?(_.piece.updateData(!1,m,t,a,n),s.setItemGraphicEl(m.dataIndex,_.piece)):g(_);else if(m){var S=new lx(m,t,a,n);f.add(S),s.setItemGraphicEl(m.dataIndex,S)}}}function g(m){m&&m.piece&&(f.remove(m.piece),m.piece=null)}function y(m,_){_.depth>0?(o.virtualPiece?o.virtualPiece.updateData(!1,m,t,a,n):(o.virtualPiece=new lx(m,t,a,n),f.add(o.virtualPiece)),_.piece.off("click"),o.virtualPiece.on("click",function(S){o._rootToNode(_.parentNode)})):o.virtualPiece&&(f.remove(o.virtualPiece),o.virtualPiece=null)}},e.prototype._initEvents=function(){var t=this;this.group.off("click"),this.group.on("click",function(a){var n=!1,i=t.seriesModel.getViewRoot();i.eachNode(function(o){if(!n&&o.piece&&o.piece===a.target){var s=o.getModel().get("nodeClick");if(s==="rootToNode")t._rootToNode(o);else if(s==="link"){var l=o.getModel(),u=l.get("link");if(u){var f=l.get("target",!0)||"_blank";Sf(u,f)}}n=!0}})})},e.prototype._rootToNode=function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:Rd,from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},e.prototype.containPoint=function(t,a){var n=a.getData(),i=n.getItemLayout(0);if(i){var o=t[0]-i.cx,s=t[1]-i.cy,l=Math.sqrt(o*o+s*s);return l<=i.r&&l>=i.r0}},e.type="sunburst",e}(Bt);const rU=eU;var aU=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.ignoreStyleOnData=!0,t}return e.prototype.getInitialData=function(t,a){var n={name:t.name,children:t.data};hI(n);var i=this._levelModels=G(t.levels||[],function(l){return new Nt(l,this,a)},this),o=yy.createTree(n,this,s);function s(l){l.wrapMethod("getItemModel",function(u,f){var h=o.getNodeByDataIndex(f),v=i[h.depth];return v&&(u.parentModel=v),u})}return o.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.getDataParams=function(t){var a=r.prototype.getDataParams.apply(this,arguments),n=this.getData().tree.getNodeByDataIndex(t);return a.treePathInfo=kh(n,this),a},e.prototype.getLevelModel=function(t){return this._levelModels&&this._levelModels[t.depth]},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var a=this.getRawData().tree.root;(!t||t!==a&&!a.contains(t))&&(this._viewRoot=a)},e.prototype.enableAriaDecal=function(){dM(this)},e.type="series.sunburst",e.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},e}(Gt);function hI(r){var e=0;C(r.children,function(a){hI(a);var n=a.value;z(n)&&(n=n[0]),e+=n});var t=r.value;z(t)&&(t=t[0]),(t==null||isNaN(t))&&(t=e),t<0&&(t=0),z(r.value)?r.value[0]=t:r.value=t}const nU=aU;var fx=Math.PI/180;function iU(r,e,t){e.eachSeriesByType(r,function(a){var n=a.get("center"),i=a.get("radius");z(i)||(i=[0,i]),z(n)||(n=[n,n]);var o=t.getWidth(),s=t.getHeight(),l=Math.min(o,s),u=H(n[0],o),f=H(n[1],s),h=H(i[0],l/2),v=H(i[1],l/2),c=-a.get("startAngle")*fx,p=a.get("minAngle")*fx,d=a.getData().tree.root,g=a.getViewRoot(),y=g.depth,m=a.get("sort");m!=null&&vI(g,m);var _=0;C(g.children,function(E){!isNaN(E.getValue())&&_++});var S=g.getValue(),w=Math.PI/(S||_)*2,x=g.depth>0,b=g.height-(x?-1:1),A=(v-h)/(b||1),T=a.get("clockwise"),D=a.get("stillShowZeroSum"),M=T?1:-1,I=function(E,N){if(E){var O=N;if(E!==d){var V=E.getValue(),F=S===0&&D?w:V*w;F1;)o=o.parentNode;var s=n.getColorFromPalette(o.name||o.dataIndex+"",e);return a.depth>1&&U(s)&&(s=Ap(s,(a.depth-1)/(i-1)*.5)),s}r.eachSeriesByType("sunburst",function(a){var n=a.getData(),i=n.tree;i.eachNode(function(o){var s=o.getModel(),l=s.getModel("itemStyle").getItemStyle();l.fill||(l.fill=t(o,a,i.root.height));var u=n.ensureUniqueItemVisual(o.dataIndex,"style");B(u,l)})})}function lU(r){r.registerChartView(rU),r.registerSeriesModel(nU),r.registerLayout(it(iU,"sunburst")),r.registerProcessor(it(Cl,"sunburst")),r.registerVisual(sU),tU(r)}var hx={color:"fill",borderColor:"stroke"},uU={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},la=wt(),fU=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},e.prototype.getInitialData=function(t,a){return ma(null,this)},e.prototype.getDataParams=function(t,a,n){var i=r.prototype.getDataParams.call(this,t,a);return n&&(i.info=la(n).info),i},e.type="series.custom",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},e}(Gt);const hU=fU;function vU(r,e){return e=e||[0,0],G(["x","y"],function(t,a){var n=this.getAxis(t),i=e[a],o=r[a]/2;return n.type==="category"?n.getBandWidth():Math.abs(n.dataToCoord(i-o)-n.dataToCoord(i+o))},this)}function cU(r){var e=r.master.getRect();return{coordSys:{type:"cartesian2d",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(t){return r.dataToPoint(t)},size:$(vU,r)}}}function pU(r,e){return e=e||[0,0],G([0,1],function(t){var a=e[t],n=r[t]/2,i=[],o=[];return i[t]=a-n,o[t]=a+n,i[1-t]=o[1-t]=e[1-t],Math.abs(this.dataToPoint(i)[t]-this.dataToPoint(o)[t])},this)}function dU(r){var e=r.getBoundingRect();return{coordSys:{type:"geo",x:e.x,y:e.y,width:e.width,height:e.height,zoom:r.getZoom()},api:{coord:function(t){return r.dataToPoint(t)},size:$(pU,r)}}}function gU(r,e){var t=this.getAxis(),a=e instanceof Array?e[0]:e,n=(r instanceof Array?r[0]:r)/2;return t.type==="category"?t.getBandWidth():Math.abs(t.dataToCoord(a-n)-t.dataToCoord(a+n))}function yU(r){var e=r.getRect();return{coordSys:{type:"singleAxis",x:e.x,y:e.y,width:e.width,height:e.height},api:{coord:function(t){return r.dataToPoint(t)},size:$(gU,r)}}}function mU(r,e){return e=e||[0,0],G(["Radius","Angle"],function(t,a){var n="get"+t+"Axis",i=this[n](),o=e[a],s=r[a]/2,l=i.type==="category"?i.getBandWidth():Math.abs(i.dataToCoord(o-s)-i.dataToCoord(o+s));return t==="Angle"&&(l=l*Math.PI/180),l},this)}function _U(r){var e=r.getRadiusAxis(),t=r.getAngleAxis(),a=e.getExtent();return a[0]>a[1]&&a.reverse(),{coordSys:{type:"polar",cx:r.cx,cy:r.cy,r:a[1],r0:a[0]},api:{coord:function(n){var i=e.dataToRadius(n[0]),o=t.dataToAngle(n[1]),s=r.coordToPoint([i,o]);return s.push(i,o*Math.PI/180),s},size:$(mU,r)}}}function SU(r){var e=r.getRect(),t=r.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:r.getCellWidth(),cellHeight:r.getCellHeight(),rangeInfo:{start:t.start,end:t.end,weeks:t.weeks,dayCount:t.allDay}},api:{coord:function(a,n){return r.dataToPoint(a,n)}}}}function cI(r,e,t,a){return r&&(r.legacy||r.legacy!==!1&&!t&&!a&&e!=="tspan"&&(e==="text"||Y(r,"text")))}function pI(r,e,t){var a=r,n,i,o;if(e==="text")o=a;else{o={},Y(a,"text")&&(o.text=a.text),Y(a,"rich")&&(o.rich=a.rich),Y(a,"textFill")&&(o.fill=a.textFill),Y(a,"textStroke")&&(o.stroke=a.textStroke),Y(a,"fontFamily")&&(o.fontFamily=a.fontFamily),Y(a,"fontSize")&&(o.fontSize=a.fontSize),Y(a,"fontStyle")&&(o.fontStyle=a.fontStyle),Y(a,"fontWeight")&&(o.fontWeight=a.fontWeight),i={type:"text",style:o,silent:!0},n={};var s=Y(a,"textPosition");t?n.position=s?a.textPosition:"inside":s&&(n.position=a.textPosition),Y(a,"textPosition")&&(n.position=a.textPosition),Y(a,"textOffset")&&(n.offset=a.textOffset),Y(a,"textRotation")&&(n.rotation=a.textRotation),Y(a,"textDistance")&&(n.distance=a.textDistance)}return vx(o,r),C(o.rich,function(l){vx(l,l)}),{textConfig:n,textContent:i}}function vx(r,e){e&&(e.font=e.textFont||e.font,Y(e,"textStrokeWidth")&&(r.lineWidth=e.textStrokeWidth),Y(e,"textAlign")&&(r.align=e.textAlign),Y(e,"textVerticalAlign")&&(r.verticalAlign=e.textVerticalAlign),Y(e,"textLineHeight")&&(r.lineHeight=e.textLineHeight),Y(e,"textWidth")&&(r.width=e.textWidth),Y(e,"textHeight")&&(r.height=e.textHeight),Y(e,"textBackgroundColor")&&(r.backgroundColor=e.textBackgroundColor),Y(e,"textPadding")&&(r.padding=e.textPadding),Y(e,"textBorderColor")&&(r.borderColor=e.textBorderColor),Y(e,"textBorderWidth")&&(r.borderWidth=e.textBorderWidth),Y(e,"textBorderRadius")&&(r.borderRadius=e.textBorderRadius),Y(e,"textBoxShadowColor")&&(r.shadowColor=e.textBoxShadowColor),Y(e,"textBoxShadowBlur")&&(r.shadowBlur=e.textBoxShadowBlur),Y(e,"textBoxShadowOffsetX")&&(r.shadowOffsetX=e.textBoxShadowOffsetX),Y(e,"textBoxShadowOffsetY")&&(r.shadowOffsetY=e.textBoxShadowOffsetY))}function cx(r,e,t){var a=r;a.textPosition=a.textPosition||t.position||"inside",t.offset!=null&&(a.textOffset=t.offset),t.rotation!=null&&(a.textRotation=t.rotation),t.distance!=null&&(a.textDistance=t.distance);var n=a.textPosition.indexOf("inside")>=0,i=r.fill||"#000";px(a,e);var o=a.textFill==null;return n?o&&(a.textFill=t.insideFill||"#fff",!a.textStroke&&t.insideStroke&&(a.textStroke=t.insideStroke),!a.textStroke&&(a.textStroke=i),a.textStrokeWidth==null&&(a.textStrokeWidth=2)):(o&&(a.textFill=r.fill||t.outsideFill||"#000"),!a.textStroke&&t.outsideStroke&&(a.textStroke=t.outsideStroke)),a.text=e.text,a.rich=e.rich,C(e.rich,function(s){px(s,s)}),a}function px(r,e){e&&(Y(e,"fill")&&(r.textFill=e.fill),Y(e,"stroke")&&(r.textStroke=e.fill),Y(e,"lineWidth")&&(r.textStrokeWidth=e.lineWidth),Y(e,"font")&&(r.font=e.font),Y(e,"fontStyle")&&(r.fontStyle=e.fontStyle),Y(e,"fontWeight")&&(r.fontWeight=e.fontWeight),Y(e,"fontSize")&&(r.fontSize=e.fontSize),Y(e,"fontFamily")&&(r.fontFamily=e.fontFamily),Y(e,"align")&&(r.textAlign=e.align),Y(e,"verticalAlign")&&(r.textVerticalAlign=e.verticalAlign),Y(e,"lineHeight")&&(r.textLineHeight=e.lineHeight),Y(e,"width")&&(r.textWidth=e.width),Y(e,"height")&&(r.textHeight=e.height),Y(e,"backgroundColor")&&(r.textBackgroundColor=e.backgroundColor),Y(e,"padding")&&(r.textPadding=e.padding),Y(e,"borderColor")&&(r.textBorderColor=e.borderColor),Y(e,"borderWidth")&&(r.textBorderWidth=e.borderWidth),Y(e,"borderRadius")&&(r.textBorderRadius=e.borderRadius),Y(e,"shadowColor")&&(r.textBoxShadowColor=e.shadowColor),Y(e,"shadowBlur")&&(r.textBoxShadowBlur=e.shadowBlur),Y(e,"shadowOffsetX")&&(r.textBoxShadowOffsetX=e.shadowOffsetX),Y(e,"shadowOffsetY")&&(r.textBoxShadowOffsetY=e.shadowOffsetY),Y(e,"textShadowColor")&&(r.textShadowColor=e.textShadowColor),Y(e,"textShadowBlur")&&(r.textShadowBlur=e.textShadowBlur),Y(e,"textShadowOffsetX")&&(r.textShadowOffsetX=e.textShadowOffsetX),Y(e,"textShadowOffsetY")&&(r.textShadowOffsetY=e.textShadowOffsetY))}var dI={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},dx=mt(dI);Hr(Ur,function(r,e){return r[e]=1,r},{});Ur.join(", ");var Ff=["","style","shape","extra"],ho=wt();function ky(r,e,t,a,n){var i=r+"Animation",o=_o(r,a,n)||{},s=ho(e).userDuring;return o.duration>0&&(o.during=s?$(TU,{el:e,userDuring:s}):null,o.setToFinal=!0,o.scope=r),B(o,t[i]),o}function Ju(r,e,t,a){a=a||{};var n=a.dataIndex,i=a.isInit,o=a.clearStyle,s=t.isAnimationEnabled(),l=ho(r),u=e.style;l.userDuring=e.during;var f={},h={};if(DU(r,e,h),yx("shape",e,h),yx("extra",e,h),!i&&s&&(CU(r,e,f),gx("shape",r,e,f),gx("extra",r,e,f),MU(r,e,u,f)),h.style=u,xU(r,h,o),bU(r,e),s)if(i){var v={};C(Ff,function(p){var d=p?e[p]:e;d&&d.enterFrom&&(p&&(v[p]=v[p]||{}),B(p?v[p]:v,d.enterFrom))});var c=ky("enter",r,e,t,n);c.duration>0&&r.animateFrom(v,c)}else wU(r,e,n||0,t,f);gI(r,e),u?r.dirty():r.markRedraw()}function gI(r,e){for(var t=ho(r).leaveToProps,a=0;a0&&r.animateFrom(n,i)}}function bU(r,e){Y(e,"silent")&&(r.silent=e.silent),Y(e,"ignore")&&(r.ignore=e.ignore),r instanceof ur&&Y(e,"invisible")&&(r.invisible=e.invisible),r instanceof dt&&Y(e,"autoBatch")&&(r.autoBatch=e.autoBatch)}var Rr={},AU={setTransform:function(r,e){return Rr.el[r]=e,this},getTransform:function(r){return Rr.el[r]},setShape:function(r,e){var t=Rr.el,a=t.shape||(t.shape={});return a[r]=e,t.dirtyShape&&t.dirtyShape(),this},getShape:function(r){var e=Rr.el.shape;if(e)return e[r]},setStyle:function(r,e){var t=Rr.el,a=t.style;return a&&(a[r]=e,t.dirtyStyle&&t.dirtyStyle()),this},getStyle:function(r){var e=Rr.el.style;if(e)return e[r]},setExtra:function(r,e){var t=Rr.el.extra||(Rr.el.extra={});return t[r]=e,this},getExtra:function(r){var e=Rr.el.extra;if(e)return e[r]}};function TU(){var r=this,e=r.el;if(e){var t=ho(e).userDuring,a=r.userDuring;if(t!==a){r.el=r.userDuring=null;return}Rr.el=e,a(AU)}}function gx(r,e,t,a){var n=t[r];if(n){var i=e[r],o;if(i){var s=t.transition,l=n.transition;if(l)if(!o&&(o=a[r]={}),ii(l))B(o,i);else for(var u=Rt(l),f=0;f=0){!o&&(o=a[r]={});for(var c=mt(i),f=0;f=0)){var v=r.getAnimationStyleProps(),c=v?v.style:null;if(c){!i&&(i=a.style={});for(var p=mt(t),u=0;u=0?e.getStore().get(N,R):void 0}var O=e.get(E.name,R),V=E&&E.ordinalMeta;return V?V.categories[O]:O}function x(P,R){R==null&&(R=u);var E=e.getItemVisual(R,"style"),N=E&&E.fill,O=E&&E.opacity,V=m(R,Ha).getItemStyle();N!=null&&(V.fill=N),O!=null&&(V.opacity=O);var F={inheritColor:U(N)?N:"#000"},W=_(R,Ha),X=Ot(W,null,F,!1,!0);X.text=W.getShallow("show")?lt(r.getFormattedLabel(R,Ha),lo(e,R)):null;var Q=mf(W,F,!1);return T(P,V),V=cx(V,X,Q),P&&A(V,P),V.legacy=!0,V}function b(P,R){R==null&&(R=u);var E=m(R,ua).getItemStyle(),N=_(R,ua),O=Ot(N,null,null,!0,!0);O.text=N.getShallow("show")?na(r.getFormattedLabel(R,ua),r.getFormattedLabel(R,Ha),lo(e,R)):null;var V=mf(N,null,!0);return T(P,E),E=cx(E,O,V),P&&A(E,P),E.legacy=!0,E}function A(P,R){for(var E in R)Y(R,E)&&(P[E]=R[E])}function T(P,R){P&&(P.textFill&&(R.textFill=P.textFill),P.textPosition&&(R.textPosition=P.textPosition))}function D(P,R){if(R==null&&(R=u),Y(hx,P)){var E=e.getItemVisual(R,"style");return E?E[hx[P]]:null}if(Y(uU,P))return e.getItemVisual(R,P)}function M(P){if(i.type==="cartesian2d"){var R=i.getBaseAxis();return FB(J({axis:R},P))}}function I(){return t.getCurrentSeriesIndices()}function L(P){return jA(P,t)}}function zU(r){var e={};return C(r.dimensions,function(t){var a=r.getDimensionInfo(t);if(!a.isExtraCoord){var n=a.coordDim,i=e[n]=e[n]||[];i[a.coordDimIndex]=r.getDimensionIndex(t)}}),e}function Wc(r,e,t,a,n,i,o){if(!a){i.remove(e);return}var s=zy(r,e,t,a,n,i);return s&&o.setItemGraphicEl(t,s),s&&Wt(s,a.focus,a.blurScope,a.emphasisDisabled),s}function zy(r,e,t,a,n,i){var o=-1,s=e;e&&SI(e,a,n)&&(o=vt(i.childrenRef(),e),e=null);var l=!e,u=e;u?u.clearStates():(u=By(a),s&&kU(s,u)),a.morph===!1?u.disableMorphing=!0:u.disableMorphing&&(u.disableMorphing=!1),Ke.normal.cfg=Ke.normal.conOpt=Ke.emphasis.cfg=Ke.emphasis.conOpt=Ke.blur.cfg=Ke.blur.conOpt=Ke.select.cfg=Ke.select.conOpt=null,Ke.isLegacy=!1,FU(u,t,a,n,l,Ke),GU(u,t,a,n,l),Vy(r,u,t,a,Ke,n,l),Y(a,"info")&&(la(u).info=a.info);for(var f=0;f=0?i.replaceAt(u,o):i.add(u),u}function SI(r,e,t){var a=la(r),n=e.type,i=e.shape,o=e.style;return t.isUniversalTransitionEnabled()||n!=null&&n!==a.customGraphicType||n==="path"&&YU(i)&&xI(i)!==a.customPathData||n==="image"&&Y(o,"image")&&o.image!==a.customImagePath}function GU(r,e,t,a,n){var i=t.clipPath;if(i===!1)r&&r.getClipPath()&&r.removeClipPath();else if(i){var o=r.getClipPath();o&&SI(o,i,a)&&(o=null),o||(o=By(i),r.setClipPath(o)),Vy(null,o,e,i,null,a,n)}}function FU(r,e,t,a,n,i){if(!r.isGroup){_x(t,null,i),_x(t,ua,i);var o=i.normal.conOpt,s=i.emphasis.conOpt,l=i.blur.conOpt,u=i.select.conOpt;if(o!=null||s!=null||u!=null||l!=null){var f=r.getTextContent();if(o===!1)f&&r.removeTextContent();else{o=i.normal.conOpt=o||{type:"text"},f?f.clearStates():(f=By(o),r.setTextContent(f)),Vy(null,f,e,o,null,a,n);for(var h=o&&o.style,v=0;v=f;c--){var p=e.childAt(c);WU(e,p,n)}}}function WU(r,e,t){e&&Bh(e,la(r).option,t)}function UU(r){new pa(r.oldChildren,r.newChildren,Sx,Sx,r).add(xx).update(xx).remove($U).execute()}function Sx(r,e){var t=r&&r.name;return t??RU+e}function xx(r,e){var t=this.context,a=r!=null?t.newChildren[r]:null,n=e!=null?t.oldChildren[e]:null;zy(t.api,n,t.dataIndex,a,t.seriesModel,t.group)}function $U(r){var e=this.context,t=e.oldChildren[r];t&&Bh(t,la(t).option,e.seriesModel)}function xI(r){return r&&(r.pathData||r.d)}function YU(r){return r&&(Y(r,"pathData")||Y(r,"d"))}function XU(r){r.registerChartView(NU),r.registerSeriesModel(hU)}var Fn=wt(),bx=et,Uc=$,ZU=function(){function r(){this._dragging=!1,this.animationThreshold=15}return r.prototype.render=function(e,t,a,n){var i=t.get("value"),o=t.get("status");if(this._axisModel=e,this._axisPointerModel=t,this._api=a,!(!n&&this._lastValue===i&&this._lastStatus===o)){this._lastValue=i,this._lastStatus=o;var s=this._group,l=this._handle;if(!o||o==="hide"){s&&s.hide(),l&&l.hide();return}s&&s.show(),l&&l.show();var u={};this.makeElOption(u,i,e,t,a);var f=u.graphicKey;f!==this._lastGraphicKey&&this.clear(a),this._lastGraphicKey=f;var h=this._moveAnimation=this.determineAnimation(e,t);if(!s)s=this._group=new at,this.createPointerEl(s,u,e,t),this.createLabelEl(s,u,e,t),a.getZr().add(s);else{var v=it(Ax,t,h);this.updatePointerEl(s,u,v),this.updateLabelEl(s,u,v,t)}Cx(s,t,!0),this._renderHandle(i)}},r.prototype.remove=function(e){this.clear(e)},r.prototype.dispose=function(e){this.clear(e)},r.prototype.determineAnimation=function(e,t){var a=t.get("animation"),n=e.axis,i=n.type==="category",o=t.get("snap");if(!o&&!i)return!1;if(a==="auto"||a==null){var s=this.animationThreshold;if(i&&n.getBandWidth()>s)return!0;if(o){var l=fy(e).seriesDataCount,u=n.getExtent();return Math.abs(u[0]-u[1])/l>s}return!1}return a===!0},r.prototype.makeElOption=function(e,t,a,n,i){},r.prototype.createPointerEl=function(e,t,a,n){var i=t.pointer;if(i){var o=Fn(e).pointerEl=new gl[i.type](bx(t.pointer));e.add(o)}},r.prototype.createLabelEl=function(e,t,a,n){if(t.label){var i=Fn(e).labelEl=new Tt(bx(t.label));e.add(i),Tx(i,n)}},r.prototype.updatePointerEl=function(e,t,a){var n=Fn(e).pointerEl;n&&t.pointer&&(n.setStyle(t.pointer.style),a(n,{shape:t.pointer.shape}))},r.prototype.updateLabelEl=function(e,t,a,n){var i=Fn(e).labelEl;i&&(i.setStyle(t.label.style),a(i,{x:t.label.x,y:t.label.y}),Tx(i,n))},r.prototype._renderHandle=function(e){if(!(this._dragging||!this.updateHandleTransform)){var t=this._axisPointerModel,a=this._api.getZr(),n=this._handle,i=t.getModel("handle"),o=t.get("status");if(!i.get("show")||!o||o==="hide"){n&&a.remove(n),this._handle=null;return}var s;this._handle||(s=!0,n=this._handle=dl(i.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(u){fa(u.event)},onmousedown:Uc(this._onHandleDragMove,this,0,0),drift:Uc(this._onHandleDragMove,this),ondragend:Uc(this._onHandleDragEnd,this)}),a.add(n)),Cx(n,t,!1),n.setStyle(i.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var l=i.get("size");z(l)||(l=[l,l]),n.scaleX=l[0]/2,n.scaleY=l[1]/2,Mo(this,"_doDispatchAxisPointer",i.get("throttle")||0,"fixRate"),this._moveHandleToValue(e,s)}},r.prototype._moveHandleToValue=function(e,t){Ax(this._axisPointerModel,!t&&this._moveAnimation,this._handle,$c(this.getHandleTransform(e,this._axisModel,this._axisPointerModel)))},r.prototype._onHandleDragMove=function(e,t){var a=this._handle;if(a){this._dragging=!0;var n=this.updateHandleTransform($c(a),[e,t],this._axisModel,this._axisPointerModel);this._payloadInfo=n,a.stopAnimation(),a.attr($c(n)),Fn(a).lastProp=null,this._doDispatchAxisPointer()}},r.prototype._doDispatchAxisPointer=function(){var e=this._handle;if(e){var t=this._payloadInfo,a=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:a.axis.dim,axisIndex:a.componentIndex}]})}},r.prototype._onHandleDragEnd=function(){this._dragging=!1;var e=this._handle;if(e){var t=this._axisPointerModel.get("value");this._moveHandleToValue(t),this._api.dispatchAction({type:"hideTip"})}},r.prototype.clear=function(e){this._lastValue=null,this._lastStatus=null;var t=e.getZr(),a=this._group,n=this._handle;t&&a&&(this._lastGraphicKey=null,a&&t.remove(a),n&&t.remove(n),this._group=null,this._handle=null,this._payloadInfo=null),Zs(this,"_doDispatchAxisPointer")},r.prototype.doClear=function(){},r.prototype.buildLabel=function(e,t,a){return a=a||0,{x:e[a],y:e[1-a],width:t[a],height:t[1-a]}},r}();function Ax(r,e,t,a){wI(Fn(t).lastProp,a)||(Fn(t).lastProp=a,e?Dt(t,a,r):(t.stopAnimation(),t.attr(a)))}function wI(r,e){if(tt(r)&&tt(e)){var t=!0;return C(e,function(a,n){t=t&&wI(r[n],a)}),!!t}else return r===e}function Tx(r,e){r[e.get(["label","show"])?"show":"hide"]()}function $c(r){return{x:r.x||0,y:r.y||0,rotation:r.rotation||0}}function Cx(r,e,t){var a=e.get("z"),n=e.get("zlevel");r&&r.traverse(function(i){i.type!=="group"&&(a!=null&&(i.z=a),n!=null&&(i.zlevel=n),i.silent=t)})}const Fy=ZU;function Hy(r){var e=r.get("type"),t=r.getModel(e+"Style"),a;return e==="line"?(a=t.getLineStyle(),a.fill=null):e==="shadow"&&(a=t.getAreaStyle(),a.stroke=null),a}function bI(r,e,t,a,n){var i=t.get("value"),o=AI(i,e.axis,e.ecModel,t.get("seriesDataIndices"),{precision:t.get(["label","precision"]),formatter:t.get(["label","formatter"])}),s=t.getModel("label"),l=bo(s.get("padding")||0),u=s.getFont(),f=fl(o,u),h=n.position,v=f.width+l[1]+l[3],c=f.height+l[0]+l[2],p=n.align;p==="right"&&(h[0]-=v),p==="center"&&(h[0]-=v/2);var d=n.verticalAlign;d==="bottom"&&(h[1]-=c),d==="middle"&&(h[1]-=c/2),qU(h,v,c,a);var g=s.get("backgroundColor");(!g||g==="auto")&&(g=e.get(["axisLine","lineStyle","color"])),r.label={x:h[0],y:h[1],style:Ot(s,{text:o,font:u,fill:s.getTextColor(),padding:l,backgroundColor:g}),z2:10}}function qU(r,e,t,a){var n=a.getWidth(),i=a.getHeight();r[0]=Math.min(r[0]+e,n)-e,r[1]=Math.min(r[1]+t,i)-t,r[0]=Math.max(r[0],0),r[1]=Math.max(r[1],0)}function AI(r,e,t,a,n){r=e.scale.parse(r);var i=e.scale.getLabel({value:r},{precision:n.precision}),o=n.formatter;if(o){var s={value:ey(e,{value:r}),axisDimension:e.dim,axisIndex:e.index,seriesData:[]};C(a,function(l){var u=t.getSeriesByIndex(l.seriesIndex),f=l.dataIndexInside,h=u&&u.getDataParams(f);h&&s.seriesData.push(h)}),U(o)?i=o.replace("{value}",i):K(o)&&(i=o(s))}return i}function Wy(r,e,t){var a=lr();return pi(a,a,t.rotation),Wr(a,a,t.position),wr([r.dataToCoord(e),(t.labelOffset||0)+(t.labelDirection||1)*(t.labelMargin||0)],a)}function TI(r,e,t,a,n,i){var o=da.innerTextLayout(t.rotation,0,t.labelDirection);t.labelMargin=n.get(["label","margin"]),bI(e,a,n,i,{position:Wy(a.axis,r,t),align:o.textAlign,verticalAlign:o.textVerticalAlign})}function Uy(r,e,t){return t=t||0,{x1:r[t],y1:r[1-t],x2:e[t],y2:e[1-t]}}function CI(r,e,t){return t=t||0,{x:r[t],y:r[1-t],width:e[t],height:e[1-t]}}function Dx(r,e,t,a,n,i){return{cx:r,cy:e,r0:t,r:a,startAngle:n,endAngle:i,clockwise:!0}}var KU=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.makeElOption=function(t,a,n,i,o){var s=n.axis,l=s.grid,u=i.get("type"),f=Mx(l,s).getOtherAxis(s).getGlobalExtent(),h=s.toGlobalCoord(s.dataToCoord(a,!0));if(u&&u!=="none"){var v=Hy(i),c=QU[u](s,h,f);c.style=v,t.graphicKey=c.type,t.pointer=c}var p=gd(l.model,n);TI(a,t,p,n,i,o)},e.prototype.getHandleTransform=function(t,a,n){var i=gd(a.axis.grid.model,a,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var o=Wy(a.axis,t,i);return{x:o[0],y:o[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,a,n,i){var o=n.axis,s=o.grid,l=o.getGlobalExtent(!0),u=Mx(s,o).getOtherAxis(o).getGlobalExtent(),f=o.dim==="x"?0:1,h=[t.x,t.y];h[f]+=a[f],h[f]=Math.min(l[1],h[f]),h[f]=Math.max(l[0],h[f]);var v=(u[1]+u[0])/2,c=[v,v];c[f]=h[f];var p=[{verticalAlign:"middle"},{align:"center"}];return{x:h[0],y:h[1],rotation:t.rotation,cursorPoint:c,tooltipOption:p[f]}},e}(Fy);function Mx(r,e){var t={};return t[e.dim+"AxisIndex"]=e.index,r.getCartesian(t)}var QU={line:function(r,e,t){var a=Uy([e,t[0]],[e,t[1]],Ix(r));return{type:"Line",subPixelOptimize:!0,shape:a}},shadow:function(r,e,t){var a=Math.max(1,r.getBandWidth()),n=t[1]-t[0];return{type:"Rect",shape:CI([e-a/2,t[0]],[a,n],Ix(r))}}};function Ix(r){return r.dim==="x"?0:1}const JU=KU;var jU=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="axisPointer",e.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:"#B9BEC9",width:1,type:"dashed"},shadowStyle:{color:"rgba(210,219,238,0.2)"},label:{show:!0,formatter:null,precision:"auto",margin:3,color:"#fff",padding:[5,7,5,7],backgroundColor:"auto",borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:"#333",shadowBlur:3,shadowColor:"#aaa",shadowOffsetX:0,shadowOffsetY:2,throttle:40}},e}(bt);const t8=jU;var aa=wt(),e8=C;function DI(r,e,t){if(!At.node){var a=e.getZr();aa(a).records||(aa(a).records={}),r8(a,e);var n=aa(a).records[r]||(aa(a).records[r]={});n.handler=t}}function r8(r,e){if(aa(r).initialized)return;aa(r).initialized=!0,t("click",it(Lx,"click")),t("mousemove",it(Lx,"mousemove")),t("globalout",n8);function t(a,n){r.on(a,function(i){var o=i8(e);e8(aa(r).records,function(s){s&&n(s,i,o.dispatchAction)}),a8(o.pendings,e)})}}function a8(r,e){var t=r.showTip.length,a=r.hideTip.length,n;t?n=r.showTip[t-1]:a&&(n=r.hideTip[a-1]),n&&(n.dispatchAction=null,e.dispatchAction(n))}function n8(r,e,t){r.handler("leave",null,t)}function Lx(r,e,t,a){e.handler(r,t,a)}function i8(r){var e={showTip:[],hideTip:[]},t=function(a){var n=e[a.type];n?n.push(a):(a.dispatchAction=t,r.dispatchAction(a))};return{dispatchAction:t,pendings:e}}function Od(r,e){if(!At.node){var t=e.getZr(),a=(aa(t).records||{})[r];a&&(aa(t).records[r]=null)}}var o8=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=a.getComponent("tooltip"),o=t.get("triggerOn")||i&&i.get("triggerOn")||"mousemove|click";DI("axisPointer",n,function(s,l,u){o!=="none"&&(s==="leave"||o.indexOf(s)>=0)&&u({type:"updateAxisPointer",currTrigger:s,x:l&&l.offsetX,y:l&&l.offsetY})})},e.prototype.remove=function(t,a){Od("axisPointer",a)},e.prototype.dispose=function(t,a){Od("axisPointer",a)},e.type="axisPointer",e}(Ut);const s8=o8;function MI(r,e){var t=[],a=r.seriesIndex,n;if(a==null||!(n=e.getSeriesByIndex(a)))return{point:[]};var i=n.getData(),o=si(i,r);if(o==null||o<0||z(o))return{point:[]};var s=i.getItemGraphicEl(o),l=n.coordinateSystem;if(n.getTooltipPosition)t=n.getTooltipPosition(o)||[];else if(l&&l.dataToPoint)if(r.isStacked){var u=l.getBaseAxis(),f=l.getOtherAxis(u),h=f.dim,v=u.dim,c=h==="x"||h==="radius"?1:0,p=i.mapDimension(v),d=[];d[c]=i.get(p,o),d[1-c]=i.get(i.getCalculationInfo("stackResultDimension"),o),t=l.dataToPoint(d)||[]}else t=l.dataToPoint(i.getValues(G(l.dimensions,function(y){return i.mapDimension(y)}),o))||[];else if(s){var g=s.getBoundingRect().clone();g.applyTransform(s.transform),t=[g.x+g.width/2,g.y+g.height/2]}return{point:t,el:s}}var Px=wt();function l8(r,e,t){var a=r.currTrigger,n=[r.x,r.y],i=r,o=r.dispatchAction||$(t.dispatchAction,t),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){ju(n)&&(n=MI({seriesIndex:i.seriesIndex,dataIndex:i.dataIndex},e).point);var l=ju(n),u=i.axesInfo,f=s.axesInfo,h=a==="leave"||ju(n),v={},c={},p={list:[],map:{}},d={showPointer:it(f8,c),showTooltip:it(h8,p)};C(s.coordSysMap,function(y,m){var _=l||y.containPoint(n);C(s.coordSysAxesInfo[m],function(S,w){var x=S.axis,b=d8(u,S);if(!h&&_&&(!u||b)){var A=b&&b.value;A==null&&!l&&(A=x.pointToData(n)),A!=null&&Rx(S,A,d,!1,v)}})});var g={};return C(f,function(y,m){var _=y.linkGroup;_&&!c[m]&&C(_.axesInfo,function(S,w){var x=c[w];if(S!==y&&x){var b=x.value;_.mapper&&(b=y.axis.scale.parse(_.mapper(b,Ex(S),Ex(y)))),g[y.key]=b}})}),C(g,function(y,m){Rx(f[m],y,d,!0,v)}),v8(c,f,v),c8(p,n,r,o),p8(f,o,t),v}}function Rx(r,e,t,a,n){var i=r.axis;if(!(i.scale.isBlank()||!i.containData(e))){if(!r.involveSeries){t.showPointer(r,e);return}var o=u8(e,r),s=o.payloadBatch,l=o.snapToValue;s[0]&&n.seriesIndex==null&&B(n,s[0]),!a&&r.snap&&i.containData(l)&&l!=null&&(e=l),t.showPointer(r,e,s),t.showTooltip(r,o,l)}}function u8(r,e){var t=e.axis,a=t.dim,n=r,i=[],o=Number.MAX_VALUE,s=-1;return C(e.seriesModels,function(l,u){var f=l.getData().mapDimensionsAll(a),h,v;if(l.getAxisTooltipData){var c=l.getAxisTooltipData(f,r,t);v=c.dataIndices,h=c.nestestValue}else{if(v=l.getData().indicesOfNearest(f[0],r,t.type==="category"?.5:null),!v.length)return;h=l.getData().get(f[0],v[0])}if(!(h==null||!isFinite(h))){var p=r-h,d=Math.abs(p);d<=o&&((d=0&&s<0)&&(o=d,s=p,n=h,i.length=0),C(v,function(g){i.push({seriesIndex:l.seriesIndex,dataIndexInside:g,dataIndex:l.getData().getRawIndex(g)})}))}}),{payloadBatch:i,snapToValue:n}}function f8(r,e,t,a){r[e.key]={value:t,payloadBatch:a}}function h8(r,e,t,a){var n=t.payloadBatch,i=e.axis,o=i.model,s=e.axisPointerModel;if(!(!e.triggerTooltip||!n.length)){var l=e.coordSys.model,u=tl(l),f=r.map[u];f||(f=r.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},r.list.push(f)),f.dataByAxis.push({axisDim:i.dim,axisIndex:o.componentIndex,axisType:o.type,axisId:o.id,value:a,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:n.slice()})}}function v8(r,e,t){var a=t.axesInfo=[];C(e,function(n,i){var o=n.axisPointerModel.option,s=r[i];s?(!n.useHandle&&(o.status="show"),o.value=s.value,o.seriesDataIndices=(s.payloadBatch||[]).slice()):!n.useHandle&&(o.status="hide"),o.status==="show"&&a.push({axisDim:n.axis.dim,axisIndex:n.axis.model.componentIndex,value:o.value})})}function c8(r,e,t,a){if(ju(e)||!r.list.length){a({type:"hideTip"});return}var n=((r.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};a({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:t.tooltipOption,position:t.position,dataIndexInside:n.dataIndexInside,dataIndex:n.dataIndex,seriesIndex:n.seriesIndex,dataByCoordSys:r.list})}function p8(r,e,t){var a=t.getZr(),n="axisPointerLastHighlights",i=Px(a)[n]||{},o=Px(a)[n]={};C(r,function(u,f){var h=u.axisPointerModel.option;h.status==="show"&&C(h.seriesDataIndices,function(v){var c=v.seriesIndex+" | "+v.dataIndex;o[c]=v})});var s=[],l=[];C(i,function(u,f){!o[f]&&l.push(u)}),C(o,function(u,f){!i[f]&&s.push(u)}),l.length&&t.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&t.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}function d8(r,e){for(var t=0;t<(r||[]).length;t++){var a=r[t];if(e.axis.dim===a.axisDim&&e.axis.model.componentIndex===a.axisIndex)return a}}function Ex(r){var e=r.axis.model,t={},a=t.axisDim=r.axis.dim;return t.axisIndex=t[a+"AxisIndex"]=e.componentIndex,t.axisName=t[a+"AxisName"]=e.name,t.axisId=t[a+"AxisId"]=e.id,t}function ju(r){return!r||r[0]==null||isNaN(r[0])||r[1]==null||isNaN(r[1])}function Ll(r){mi.registerAxisPointerClass("CartesianAxisPointer",JU),r.registerComponentModel(t8),r.registerComponentView(s8),r.registerPreprocessor(function(e){if(e){(!e.axisPointer||e.axisPointer.length===0)&&(e.axisPointer={});var t=e.axisPointer.link;t&&!z(t)&&(e.axisPointer.link=[t])}}),r.registerProcessor(r.PRIORITY.PROCESSOR.STATISTIC,function(e,t){e.getComponent("axisPointer").coordSysAxesInfo=rG(e,t)}),r.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},l8)}function g8(r){ct(tM),ct(Ll)}var y8=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.makeElOption=function(t,a,n,i,o){var s=n.axis;s.dim==="angle"&&(this.animationThreshold=Math.PI/18);var l=s.polar,u=l.getOtherAxis(s),f=u.getExtent(),h=s.dataToCoord(a),v=i.get("type");if(v&&v!=="none"){var c=Hy(i),p=_8[v](s,l,h,f);p.style=c,t.graphicKey=p.type,t.pointer=p}var d=i.get(["label","margin"]),g=m8(a,n,i,l,d);bI(t,n,i,o,g)},e}(Fy);function m8(r,e,t,a,n){var i=e.axis,o=i.dataToCoord(r),s=a.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l=a.getRadiusAxis().getExtent(),u,f,h;if(i.dim==="radius"){var v=lr();pi(v,v,s),Wr(v,v,[a.cx,a.cy]),u=wr([o,-n],v);var c=e.getModel("axisLabel").get("rotate")||0,p=da.innerTextLayout(s,c*Math.PI/180,-1);f=p.textAlign,h=p.textVerticalAlign}else{var d=l[1];u=a.coordToPoint([d+n,o]);var g=a.cx,y=a.cy;f=Math.abs(u[0]-g)/d<.3?"center":u[0]>g?"left":"right",h=Math.abs(u[1]-y)/d<.3?"middle":u[1]>y?"top":"bottom"}return{position:u,align:f,verticalAlign:h}}var _8={line:function(r,e,t,a){return r.dim==="angle"?{type:"Line",shape:Uy(e.coordToPoint([a[0],t]),e.coordToPoint([a[1],t]))}:{type:"Circle",shape:{cx:e.cx,cy:e.cy,r:t}}},shadow:function(r,e,t,a){var n=Math.max(1,r.getBandWidth()),i=Math.PI/180;return r.dim==="angle"?{type:"Sector",shape:Dx(e.cx,e.cy,a[0],a[1],(-t-n/2)*i,(-t+n/2)*i)}:{type:"Sector",shape:Dx(e.cx,e.cy,t-n/2,t+n/2,0,Math.PI*2)}}};const S8=y8;var x8=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.findAxisModel=function(t){var a,n=this.ecModel;return n.eachComponent(t,function(i){i.getCoordSysModel()===this&&(a=i)},this),a},e.type="polar",e.dependencies=["radiusAxis","angleAxis"],e.defaultOption={z:0,center:["50%","50%"],radius:"80%"},e}(bt);const w8=x8;var $y=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",Qt).models[0]},e.type="polarAxis",e}(bt);jt($y,wl);var b8=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="angleAxis",e}($y),A8=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="radiusAxis",e}($y),Yy=function(r){k(e,r);function e(t,a){return r.call(this,"radius",t,a)||this}return e.prototype.pointToData=function(t,a){return this.polar.pointToData(t,a)[this.dim==="radius"?0:1]},e}(Cr);Yy.prototype.dataToRadius=Cr.prototype.dataToCoord;Yy.prototype.radiusToData=Cr.prototype.coordToData;const T8=Yy;var C8=wt(),Xy=function(r){k(e,r);function e(t,a){return r.call(this,"angle",t,a||[0,360])||this}return e.prototype.pointToData=function(t,a){return this.polar.pointToData(t,a)[this.dim==="radius"?0:1]},e.prototype.calculateCategoryInterval=function(){var t=this,a=t.getLabelModel(),n=t.scale,i=n.getExtent(),o=n.count();if(i[1]-i[0]<1)return 0;var s=i[0],l=t.dataToCoord(s+1)-t.dataToCoord(s),u=Math.abs(l),f=fl(s==null?"":s+"",a.getFont(),"center","top"),h=Math.max(f.height,7),v=h/u;isNaN(v)&&(v=1/0);var c=Math.max(0,Math.floor(v)),p=C8(t.model),d=p.lastAutoInterval,g=p.lastTickCount;return d!=null&&g!=null&&Math.abs(d-c)<=1&&Math.abs(g-o)<=1&&d>c?c=d:(p.lastTickCount=o,p.lastAutoInterval=c),c},e}(Cr);Xy.prototype.dataToAngle=Cr.prototype.dataToCoord;Xy.prototype.angleToData=Cr.prototype.coordToData;const D8=Xy;var II=["radius","angle"],M8=function(){function r(e){this.dimensions=II,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new T8,this._angleAxis=new D8,this.axisPointerEnabled=!0,this.name=e||"",this._radiusAxis.polar=this._angleAxis.polar=this}return r.prototype.containPoint=function(e){var t=this.pointToCoord(e);return this._radiusAxis.contain(t[0])&&this._angleAxis.contain(t[1])},r.prototype.containData=function(e){return this._radiusAxis.containData(e[0])&&this._angleAxis.containData(e[1])},r.prototype.getAxis=function(e){var t="_"+e+"Axis";return this[t]},r.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},r.prototype.getAxesByScale=function(e){var t=[],a=this._angleAxis,n=this._radiusAxis;return a.scale.type===e&&t.push(a),n.scale.type===e&&t.push(n),t},r.prototype.getAngleAxis=function(){return this._angleAxis},r.prototype.getRadiusAxis=function(){return this._radiusAxis},r.prototype.getOtherAxis=function(e){var t=this._angleAxis;return e===t?this._radiusAxis:t},r.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},r.prototype.getTooltipAxes=function(e){var t=e!=null&&e!=="auto"?this.getAxis(e):this.getBaseAxis();return{baseAxes:[t],otherAxes:[this.getOtherAxis(t)]}},r.prototype.dataToPoint=function(e,t){return this.coordToPoint([this._radiusAxis.dataToRadius(e[0],t),this._angleAxis.dataToAngle(e[1],t)])},r.prototype.pointToData=function(e,t){var a=this.pointToCoord(e);return[this._radiusAxis.radiusToData(a[0],t),this._angleAxis.angleToData(a[1],t)]},r.prototype.pointToCoord=function(e){var t=e[0]-this.cx,a=e[1]-this.cy,n=this.getAngleAxis(),i=n.getExtent(),o=Math.min(i[0],i[1]),s=Math.max(i[0],i[1]);n.inverse?o=s-360:s=o+360;var l=Math.sqrt(t*t+a*a);t/=l,a/=l;for(var u=Math.atan2(-a,t)/Math.PI*180,f=us;)u+=f*360;return[l,u]},r.prototype.coordToPoint=function(e){var t=e[0],a=e[1]/180*Math.PI,n=Math.cos(a)*t+this.cx,i=-Math.sin(a)*t+this.cy;return[n,i]},r.prototype.getArea=function(){var e=this.getAngleAxis(),t=this.getRadiusAxis(),a=t.getExtent().slice();a[0]>a[1]&&a.reverse();var n=e.getExtent(),i=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:a[0],r:a[1],startAngle:-n[0]*i,endAngle:-n[1]*i,clockwise:e.inverse,contain:function(o,s){var l=o-this.cx,u=s-this.cy,f=l*l+u*u-1e-4,h=this.r,v=this.r0;return f<=h*h&&f>=v*v}}},r.prototype.convertToPixel=function(e,t,a){var n=kx(t);return n===this?this.dataToPoint(a):null},r.prototype.convertFromPixel=function(e,t,a){var n=kx(t);return n===this?this.pointToData(a):null},r}();function kx(r){var e=r.seriesModel,t=r.polarModel;return t&&t.coordinateSystem||e&&e.coordinateSystem}const I8=M8;function L8(r,e,t){var a=e.get("center"),n=t.getWidth(),i=t.getHeight();r.cx=H(a[0],n),r.cy=H(a[1],i);var o=r.getRadiusAxis(),s=Math.min(n,i)/2,l=e.get("radius");l==null?l=[0,"100%"]:z(l)||(l=[0,l]);var u=[H(l[0],s),H(l[1],s)];o.inverse?o.setExtent(u[1],u[0]):o.setExtent(u[0],u[1])}function P8(r,e){var t=this,a=t.getAngleAxis(),n=t.getRadiusAxis();if(a.scale.setExtent(1/0,-1/0),n.scale.setExtent(1/0,-1/0),r.eachSeries(function(s){if(s.coordinateSystem===t){var l=s.getData();C(If(l,"radius"),function(u){n.scale.unionExtentFromData(l,u)}),C(If(l,"angle"),function(u){a.scale.unionExtentFromData(l,u)})}}),so(a.scale,a.model),so(n.scale,n.model),a.type==="category"&&!a.onBand){var i=a.getExtent(),o=360/a.scale.count();a.inverse?i[1]+=o:i[1]-=o,a.setExtent(i[0],i[1])}}function R8(r){return r.mainType==="angleAxis"}function Ox(r,e){if(r.type=e.get("type"),r.scale=Ih(e),r.onBand=e.get("boundaryGap")&&r.type==="category",r.inverse=e.get("inverse"),R8(e)){r.inverse=r.inverse!==e.get("clockwise");var t=e.get("startAngle");r.setExtent(t,t+(r.inverse?-360:360))}e.axis=r,r.model=e}var E8={dimensions:II,create:function(r,e){var t=[];return r.eachComponent("polar",function(a,n){var i=new I8(n+"");i.update=P8;var o=i.getRadiusAxis(),s=i.getAngleAxis(),l=a.findAxisModel("radiusAxis"),u=a.findAxisModel("angleAxis");Ox(o,l),Ox(s,u),L8(i,a,e),t.push(i),a.coordinateSystem=i,i.model=a}),r.eachSeries(function(a){if(a.get("coordinateSystem")==="polar"){var n=a.getReferringComponents("polar",Qt).models[0];a.coordinateSystem=n.coordinateSystem}}),t}};const k8=E8;var O8=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function Cu(r,e,t){e[1]>e[0]&&(e=e.slice().reverse());var a=r.coordToPoint([e[0],t]),n=r.coordToPoint([e[1],t]);return{x1:a[0],y1:a[1],x2:n[0],y2:n[1]}}function Du(r){var e=r.getRadiusAxis();return e.inverse?0:1}function Nx(r){var e=r[0],t=r[r.length-1];e&&t&&Math.abs(Math.abs(e.coord-t.coord)-360)<1e-4&&r.pop()}var N8=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.axisPointerClass="PolarAxisPointer",t}return e.prototype.render=function(t,a){if(this.group.removeAll(),!!t.get("show")){var n=t.axis,i=n.polar,o=i.getRadiusAxis().getExtent(),s=n.getTicksCoords(),l=n.getMinorTicksCoords(),u=G(n.getViewLabels(),function(f){f=et(f);var h=n.scale,v=h.type==="ordinal"?h.getRawOrdinalNumber(f.tickValue):f.tickValue;return f.coord=n.dataToCoord(v),f});Nx(u),Nx(s),C(O8,function(f){t.get([f,"show"])&&(!n.scale.isBlank()||f==="axisLine")&&B8[f](this.group,t,i,s,l,o,u)},this)}},e.type="angleAxis",e}(mi),B8={axisLine:function(r,e,t,a,n,i){var o=e.getModel(["axisLine","lineStyle"]),s=Du(t),l=s?0:1,u;i[l]===0?u=new Xr({shape:{cx:t.cx,cy:t.cy,r:i[s]},style:o.getLineStyle(),z2:1,silent:!0}):u=new hh({shape:{cx:t.cx,cy:t.cy,r:i[s],r0:i[l]},style:o.getLineStyle(),z2:1,silent:!0}),u.style.fill=null,r.add(u)},axisTick:function(r,e,t,a,n,i){var o=e.getModel("axisTick"),s=(o.get("inside")?-1:1)*o.get("length"),l=i[Du(t)],u=G(a,function(f){return new he({shape:Cu(t,[l,l+s],f.coord)})});r.add(nr(u,{style:J(o.getModel("lineStyle").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})}))},minorTick:function(r,e,t,a,n,i){if(n.length){for(var o=e.getModel("axisTick"),s=e.getModel("minorTick"),l=(o.get("inside")?-1:1)*s.get("length"),u=i[Du(t)],f=[],h=0;hy?"left":"right",S=Math.abs(g[1]-m)/d<.3?"middle":g[1]>m?"top":"bottom";if(s&&s[p]){var w=s[p];tt(w)&&w.textStyle&&(c=new Nt(w.textStyle,l,l.ecModel))}var x=new Tt({silent:da.isLabelSilent(e),style:Ot(c,{x:g[0],y:g[1],fill:c.getTextColor()||e.get(["axisLine","lineStyle","color"]),text:h.formattedLabel,align:_,verticalAlign:S})});if(r.add(x),f){var b=da.makeAxisEventDataBase(e);b.targetType="axisLabel",b.value=h.rawLabel,nt(x).eventData=b}},this)},splitLine:function(r,e,t,a,n,i){var o=e.getModel("splitLine"),s=o.getModel("lineStyle"),l=s.get("color"),u=0;l=l instanceof Array?l:[l];for(var f=[],h=0;h=0?"p":"n",L=b;w&&(a[f][M]||(a[f][M]={p:b,n:b}),L=a[f][M][I]);var P=void 0,R=void 0,E=void 0,N=void 0;if(p.dim==="radius"){var O=p.dataToCoord(D)-b,V=l.dataToCoord(M);Math.abs(O)=N})}}})}function Y8(r){var e={};C(r,function(a,n){var i=a.getData(),o=a.coordinateSystem,s=o.getBaseAxis(),l=PI(o,s),u=s.getExtent(),f=s.type==="category"?s.getBandWidth():Math.abs(u[1]-u[0])/i.count(),h=e[l]||{bandWidth:f,remainedWidth:f,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},v=h.stacks;e[l]=h;var c=LI(a);v[c]||h.autoWidthCount++,v[c]=v[c]||{width:0,maxWidth:0};var p=H(a.get("barWidth"),f),d=H(a.get("barMaxWidth"),f),g=a.get("barGap"),y=a.get("barCategoryGap");p&&!v[c].width&&(p=Math.min(h.remainedWidth,p),v[c].width=p,h.remainedWidth-=p),d&&(v[c].maxWidth=d),g!=null&&(h.gap=g),y!=null&&(h.categoryGap=y)});var t={};return C(e,function(a,n){t[n]={};var i=a.stacks,o=a.bandWidth,s=H(a.categoryGap,o),l=H(a.gap,1),u=a.remainedWidth,f=a.autoWidthCount,h=(u-s)/(f+(f-1)*l);h=Math.max(h,0),C(i,function(d,g){var y=d.maxWidth;y&&y=t.y&&e[1]<=t.y+t.height:a.contain(a.toLocalCoord(e[1]))&&e[0]>=t.y&&e[0]<=t.y+t.height},r.prototype.pointToData=function(e){var t=this.getAxis();return[t.coordToData(t.toLocalCoord(e[t.orient==="horizontal"?0:1]))]},r.prototype.dataToPoint=function(e){var t=this.getAxis(),a=this.getRect(),n=[],i=t.orient==="horizontal"?0:1;return e instanceof Array&&(e=e[0]),n[i]=t.toGlobalCoord(t.dataToCoord(+e)),n[1-i]=i===0?a.y+a.height/2:a.x+a.width/2,n},r.prototype.convertToPixel=function(e,t,a){var n=Bx(t);return n===this?this.dataToPoint(a):null},r.prototype.convertFromPixel=function(e,t,a){var n=Bx(t);return n===this?this.pointToData(a):null},r}();function Bx(r){var e=r.seriesModel,t=r.singleAxisModel;return t&&t.coordinateSystem||e&&e.coordinateSystem}function i$(r,e){var t=[];return r.eachComponent("singleAxis",function(a,n){var i=new n$(a,r,e);i.name="single_"+n,i.resize(a,e),a.coordinateSystem=i,t.push(i)}),r.eachSeries(function(a){if(a.get("coordinateSystem")==="singleAxis"){var n=a.getReferringComponents("singleAxis",Qt).models[0];a.coordinateSystem=n&&n.coordinateSystem}}),t}var o$={create:i$,dimensions:EI};const s$=o$;var Vx=["x","y"],l$=["width","height"],u$=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.makeElOption=function(t,a,n,i,o){var s=n.axis,l=s.coordinateSystem,u=Xc(l,1-Uf(s)),f=l.dataToPoint(a)[0],h=i.get("type");if(h&&h!=="none"){var v=Hy(i),c=f$[h](s,f,u);c.style=v,t.graphicKey=c.type,t.pointer=c}var p=Nd(n);TI(a,t,p,n,i,o)},e.prototype.getHandleTransform=function(t,a,n){var i=Nd(a,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var o=Wy(a.axis,t,i);return{x:o[0],y:o[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,a,n,i){var o=n.axis,s=o.coordinateSystem,l=Uf(o),u=Xc(s,l),f=[t.x,t.y];f[l]+=a[l],f[l]=Math.min(u[1],f[l]),f[l]=Math.max(u[0],f[l]);var h=Xc(s,1-l),v=(h[1]+h[0])/2,c=[v,v];return c[l]=f[l],{x:f[0],y:f[1],rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}},e}(Fy),f$={line:function(r,e,t){var a=Uy([e,t[0]],[e,t[1]],Uf(r));return{type:"Line",subPixelOptimize:!0,shape:a}},shadow:function(r,e,t){var a=r.getBandWidth(),n=t[1]-t[0];return{type:"Rect",shape:CI([e-a/2,t[0]],[a,n],Uf(r))}}};function Uf(r){return r.isHorizontal()?0:1}function Xc(r,e){var t=r.getRect();return[t[Vx[e]],t[Vx[e]]+t[l$[e]]]}const h$=u$;var v$=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="single",e}(Ut);function c$(r){ct(Ll),mi.registerAxisPointerClass("SingleAxisPointer",h$),r.registerComponentView(v$),r.registerComponentView(e$),r.registerComponentModel(Yc),uo(r,"single",Yc,Yc.defaultOption),r.registerCoordinateSystem("single",s$)}var p$=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t,a,n){var i=Ao(t);r.prototype.init.apply(this,arguments),zx(t,i)},e.prototype.mergeOption=function(t){r.prototype.mergeOption.apply(this,arguments),zx(this.option,t)},e.prototype.getCellSize=function(){return this.option.cellSize},e.type="calendar",e.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},e}(bt);function zx(r,e){var t=r.cellSize,a;z(t)?a=t:a=r.cellSize=[t,t],a.length===1&&(a[1]=a[0]);var n=G([0,1],function(i){return wk(e,i)&&(a[i]="auto"),a[i]!=null&&a[i]!=="auto"});Ja(r,e,{type:"box",ignoreSize:n})}const d$=p$;var g$=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){var i=this.group;i.removeAll();var o=t.coordinateSystem,s=o.getRangeInfo(),l=o.getOrient(),u=a.getLocaleModel();this._renderDayRect(t,s,i),this._renderLines(t,s,l,i),this._renderYearText(t,s,l,i),this._renderMonthText(t,u,l,i),this._renderWeekText(t,u,s,l,i)},e.prototype._renderDayRect=function(t,a,n){for(var i=t.coordinateSystem,o=t.getModel("itemStyle").getItemStyle(),s=i.getCellWidth(),l=i.getCellHeight(),u=a.start.time;u<=a.end.time;u=i.getNextNDay(u,1).time){var f=i.dataToRect([u],!1).tl,h=new xt({shape:{x:f[0],y:f[1],width:s,height:l},cursor:"default",style:o});n.add(h)}},e.prototype._renderLines=function(t,a,n,i){var o=this,s=t.coordinateSystem,l=t.getModel(["splitLine","lineStyle"]).getLineStyle(),u=t.get(["splitLine","show"]),f=l.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var h=a.start,v=0;h.time<=a.end.time;v++){p(h.formatedDate),v===0&&(h=s.getDateInfo(a.start.y+"-"+a.start.m));var c=h.date;c.setMonth(c.getMonth()+1),h=s.getDateInfo(c)}p(s.getNextNDay(a.end.time,1).formatedDate);function p(d){o._firstDayOfMonth.push(s.getDateInfo(d)),o._firstDayPoints.push(s.dataToRect([d],!1).tl);var g=o._getLinePointsOfOneWeek(t,d,n);o._tlpoints.push(g[0]),o._blpoints.push(g[g.length-1]),u&&o._drawSplitline(g,l,i)}u&&this._drawSplitline(o._getEdgesPoints(o._tlpoints,f,n),l,i),u&&this._drawSplitline(o._getEdgesPoints(o._blpoints,f,n),l,i)},e.prototype._getEdgesPoints=function(t,a,n){var i=[t[0].slice(),t[t.length-1].slice()],o=n==="horizontal"?0:1;return i[0][o]=i[0][o]-a/2,i[1][o]=i[1][o]+a/2,i},e.prototype._drawSplitline=function(t,a,n){var i=new Ge({z2:20,shape:{points:t},style:a});n.add(i)},e.prototype._getLinePointsOfOneWeek=function(t,a,n){for(var i=t.coordinateSystem,o=i.getDateInfo(a),s=[],l=0;l<7;l++){var u=i.getNextNDay(o.time,l),f=i.dataToRect([u.time],!1);s[2*u.day]=f.tl,s[2*u.day+1]=f[n==="horizontal"?"bl":"tr"]}return s},e.prototype._formatterLabel=function(t,a){return U(t)&&t?_k(t,a):K(t)?t(a):a.nameMap},e.prototype._yearTextPositionControl=function(t,a,n,i,o){var s=a[0],l=a[1],u=["center","bottom"];i==="bottom"?(l+=o,u=["center","top"]):i==="left"?s-=o:i==="right"?(s+=o,u=["center","top"]):l-=o;var f=0;return(i==="left"||i==="right")&&(f=Math.PI/2),{rotation:f,x:s,y:l,style:{align:u[0],verticalAlign:u[1]}}},e.prototype._renderYearText=function(t,a,n,i){var o=t.getModel("yearLabel");if(o.get("show")){var s=o.get("margin"),l=o.get("position");l||(l=n!=="horizontal"?"top":"left");var u=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],f=(u[0][0]+u[1][0])/2,h=(u[0][1]+u[1][1])/2,v=n==="horizontal"?0:1,c={top:[f,u[v][1]],bottom:[f,u[1-v][1]],left:[u[1-v][0],h],right:[u[v][0],h]},p=a.start.y;+a.end.y>+a.start.y&&(p=p+"-"+a.end.y);var d=o.get("formatter"),g={start:a.start.y,end:a.end.y,nameMap:p},y=this._formatterLabel(d,g),m=new Tt({z2:30,style:Ot(o,{text:y})});m.attr(this._yearTextPositionControl(m,c[l],n,l,s)),i.add(m)}},e.prototype._monthTextPositionControl=function(t,a,n,i,o){var s="left",l="top",u=t[0],f=t[1];return n==="horizontal"?(f=f+o,a&&(s="center"),i==="start"&&(l="bottom")):(u=u+o,a&&(l="middle"),i==="start"&&(s="right")),{x:u,y:f,align:s,verticalAlign:l}},e.prototype._renderMonthText=function(t,a,n,i){var o=t.getModel("monthLabel");if(o.get("show")){var s=o.get("nameMap"),l=o.get("margin"),u=o.get("position"),f=o.get("align"),h=[this._tlpoints,this._blpoints];(!s||U(s))&&(s&&(a=Yp(s)||a),s=a.get(["time","monthAbbr"])||[]);var v=u==="start"?0:1,c=n==="horizontal"?0:1;l=u==="start"?-l:l;for(var p=f==="center",d=0;d=n.start.time&&a.times.end.time&&t.reverse(),t},r.prototype._getRangeInfo=function(e){var t=[this.getDateInfo(e[0]),this.getDateInfo(e[1])],a;t[0].time>t[1].time&&(a=!0,t.reverse());var n=Math.floor(t[1].time/Zc)-Math.floor(t[0].time/Zc)+1,i=new Date(t[0].time),o=i.getDate(),s=t[1].date.getDate();i.setDate(o+n-1);var l=i.getDate();if(l!==s)for(var u=i.getTime()-t[1].time>0?1:-1;(l=i.getDate())!==s&&(i.getTime()-t[1].time)*u>0;)n-=u,i.setDate(l-u);var f=Math.floor((n+t[0].day+6)/7),h=a?-f+1:f-1;return a&&t.reverse(),{range:[t[0].formatedDate,t[1].formatedDate],start:t[0],end:t[1],allDay:n,weeks:f,nthWeek:h,fweek:t[0].day,lweek:t[1].day}},r.prototype._getDateByWeeksAndDay=function(e,t,a){var n=this._getRangeInfo(a);if(e>n.weeks||e===0&&tn.lweek)return null;var i=(e-1)*7-n.fweek+t,o=new Date(n.start.time);return o.setDate(+n.start.d+i),this.getDateInfo(o)},r.create=function(e,t){var a=[];return e.eachComponent("calendar",function(n){var i=new r(n);a.push(i),n.coordinateSystem=i}),e.eachSeries(function(n){n.get("coordinateSystem")==="calendar"&&(n.coordinateSystem=a[n.get("calendarIndex")||0])}),a},r.dimensions=["time","value"],r}();function Gx(r){var e=r.calendarModel,t=r.seriesModel,a=e?e.coordinateSystem:t?t.coordinateSystem:null;return a}const _$=m$;function S$(r){r.registerComponentModel(d$),r.registerComponentView(y$),r.registerCoordinateSystem("calendar",_$)}function x$(r,e){var t=r.existing;if(e.id=r.keyInfo.id,!e.type&&t&&(e.type=t.type),e.parentId==null){var a=e.parentOption;a?e.parentId=a.id:t&&(e.parentId=t.parentId)}e.parentOption=null}function Fx(r,e){var t;return C(e,function(a){r[a]!=null&&r[a]!=="auto"&&(t=!0)}),t}function w$(r,e,t){var a=B({},t),n=r[e],i=t.$action||"merge";i==="merge"?n?(ut(n,a,!0),Ja(n,a,{ignoreSize:!0}),mT(t,n),Mu(t,n),Mu(t,n,"shape"),Mu(t,n,"style"),Mu(t,n,"extra"),t.clipPath=n.clipPath):r[e]=a:i==="replace"?r[e]=a:i==="remove"&&n&&(r[e]=null)}var kI=["transition","enterFrom","leaveTo"],b$=kI.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function Mu(r,e,t){if(t&&(!r[t]&&e[t]&&(r[t]={}),r=r[t],e=e[t]),!(!r||!e))for(var a=t?kI:b$,n=0;n=0;f--){var h=n[f],v=ee(h.id,null),c=v!=null?o.get(v):null;if(c){var p=c.parent,y=er(p),m=p===i?{width:s,height:l}:{width:y.width,height:y.height},_={},S=xh(c,h,m,null,{hv:h.hv,boundingMode:h.bounding},_);if(!er(c).isNew&&S){for(var w=h.transition,x={},b=0;b=0)?x[A]=T:c[A]=T}Dt(c,x,t,0)}else c.attr(_)}}},e.prototype._clear=function(){var t=this,a=this._elMap;a.each(function(n){tf(n,er(n).option,a,t._lastGraphicModel)}),this._elMap=q()},e.prototype.dispose=function(){this._clear()},e.type="graphic",e}(Ut);function Bd(r){var e=Y(Hx,r)?Hx[r]:Cg(r),t=new e({});return er(t).type=r,t}function Wx(r,e,t,a){var n=Bd(t);return e.add(n),a.set(r,n),er(n).id=r,er(n).isNew=!0,n}function tf(r,e,t,a){var n=r&&r.parent;n&&(r.type==="group"&&r.traverse(function(i){tf(i,e,t,a)}),Bh(r,e,a),t.removeKey(er(r).id))}function Ux(r,e,t,a){r.isGroup||C([["cursor",ur.prototype.cursor],["zlevel",a||0],["z",t||0],["z2",0]],function(n){var i=n[0];Y(e,i)?r[i]=lt(e[i],n[1]):r[i]==null&&(r[i]=n[1])}),C(mt(e),function(n){if(n.indexOf("on")===0){var i=e[n];r[n]=K(i)?i:null}}),Y(e,"draggable")&&(r.draggable=e.draggable),e.name!=null&&(r.name=e.name),e.id!=null&&(r.id=e.id)}function D$(r){return r=B({},r),C(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(yT),function(e){delete r[e]}),r}function M$(r,e,t){var a=nt(r).eventData;!r.silent&&!r.ignore&&!a&&(a=nt(r).eventData={componentType:"graphic",componentIndex:e.componentIndex,name:r.name}),a&&(a.info=t.info)}function I$(r){r.registerComponentModel(T$),r.registerComponentView(C$),r.registerPreprocessor(function(e){var t=e.graphic;z(t)?!t[0]||!t[0].elements?e.graphic=[{elements:t}]:e.graphic=[e.graphic[0]]:t&&!t.elements&&(e.graphic=[{elements:[t]}])})}var $x=["x","y","radius","angle","single"],L$=["cartesian2d","polar","singleAxis"];function P$(r){var e=r.get("coordinateSystem");return vt(L$,e)>=0}function Wa(r){return r+"Axis"}function R$(r,e){var t=q(),a=[],n=q();r.eachComponent({mainType:"dataZoom",query:e},function(f){n.get(f.uid)||s(f)});var i;do i=!1,r.eachComponent("dataZoom",o);while(i);function o(f){!n.get(f.uid)&&l(f)&&(s(f),i=!0)}function s(f){n.set(f.uid,!0),a.push(f),u(f)}function l(f){var h=!1;return f.eachTargetAxis(function(v,c){var p=t.get(v);p&&p[c]&&(h=!0)}),h}function u(f){f.eachTargetAxis(function(h,v){(t.get(h)||t.set(h,[]))[v]=!0})}return a}function OI(r){var e=r.ecModel,t={infoList:[],infoMap:q()};return r.eachTargetAxis(function(a,n){var i=e.getComponent(Wa(a),n);if(i){var o=i.getCoordSysModel();if(o){var s=o.uid,l=t.infoMap.get(s);l||(l={model:o,axisModels:[]},t.infoList.push(l),t.infoMap.set(s,l)),l.axisModels.push(i)}}}),t}var qc=function(){function r(){this.indexList=[],this.indexMap=[]}return r.prototype.add=function(e){this.indexMap[e]||(this.indexList.push(e),this.indexMap[e]=!0)},r}(),E$=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t._autoThrottle=!0,t._noTarget=!0,t._rangePropMode=["percent","percent"],t}return e.prototype.init=function(t,a,n){var i=Yx(t);this.settledOption=i,this.mergeDefaultAndTheme(t,n),this._doInit(i)},e.prototype.mergeOption=function(t){var a=Yx(t);ut(this.option,t,!0),ut(this.settledOption,a,!0),this._doInit(a)},e.prototype._doInit=function(t){var a=this.option;this._setDefaultThrottle(t),this._updateRangeUse(t);var n=this.settledOption;C([["start","startValue"],["end","endValue"]],function(i,o){this._rangePropMode[o]==="value"&&(a[i[0]]=n[i[0]]=null)},this),this._resetTarget()},e.prototype._resetTarget=function(){var t=this.get("orient",!0),a=this._targetAxisInfoMap=q(),n=this._fillSpecifiedTargetAxis(a);n?this._orient=t||this._makeAutoOrientByTargetAxis():(this._orient=t||"horizontal",this._fillAutoTargetAxisByOrient(a,this._orient)),this._noTarget=!0,a.each(function(i){i.indexList.length&&(this._noTarget=!1)},this)},e.prototype._fillSpecifiedTargetAxis=function(t){var a=!1;return C($x,function(n){var i=this.getReferringComponents(Wa(n),JP);if(i.specified){a=!0;var o=new qc;C(i.models,function(s){o.add(s.componentIndex)}),t.set(n,o)}},this),a},e.prototype._fillAutoTargetAxisByOrient=function(t,a){var n=this.ecModel,i=!0;if(i){var o=a==="vertical"?"y":"x",s=n.findComponents({mainType:o+"Axis"});l(s,o)}if(i){var s=n.findComponents({mainType:"singleAxis",filter:function(f){return f.get("orient",!0)===a}});l(s,"single")}function l(u,f){var h=u[0];if(h){var v=new qc;if(v.add(h.componentIndex),t.set(f,v),i=!1,f==="x"||f==="y"){var c=h.getReferringComponents("grid",Qt).models[0];c&&C(u,function(p){h.componentIndex!==p.componentIndex&&c===p.getReferringComponents("grid",Qt).models[0]&&v.add(p.componentIndex)})}}}i&&C($x,function(u){if(i){var f=n.findComponents({mainType:Wa(u),filter:function(v){return v.get("type",!0)==="category"}});if(f[0]){var h=new qc;h.add(f[0].componentIndex),t.set(u,h),i=!1}}},this)},e.prototype._makeAutoOrientByTargetAxis=function(){var t;return this.eachTargetAxis(function(a){!t&&(t=a)},this),t==="y"?"vertical":"horizontal"},e.prototype._setDefaultThrottle=function(t){if(t.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var a=this.ecModel.option;this.option.throttle=a.animation&&a.animationDurationUpdate>0?100:20}},e.prototype._updateRangeUse=function(t){var a=this._rangePropMode,n=this.get("rangeMode");C([["start","startValue"],["end","endValue"]],function(i,o){var s=t[i[0]]!=null,l=t[i[1]]!=null;s&&!l?a[o]="percent":!s&&l?a[o]="value":n?a[o]=n[o]:s&&(a[o]="percent")})},e.prototype.noTarget=function(){return this._noTarget},e.prototype.getFirstTargetAxisModel=function(){var t;return this.eachTargetAxis(function(a,n){t==null&&(t=this.ecModel.getComponent(Wa(a),n))},this),t},e.prototype.eachTargetAxis=function(t,a){this._targetAxisInfoMap.each(function(n,i){C(n.indexList,function(o){t.call(a,i,o)})})},e.prototype.getAxisProxy=function(t,a){var n=this.getAxisModel(t,a);if(n)return n.__dzAxisProxy},e.prototype.getAxisModel=function(t,a){var n=this._targetAxisInfoMap.get(t);if(n&&n.indexMap[a])return this.ecModel.getComponent(Wa(t),a)},e.prototype.setRawRange=function(t){var a=this.option,n=this.settledOption;C([["start","startValue"],["end","endValue"]],function(i){(t[i[0]]!=null||t[i[1]]!=null)&&(a[i[0]]=n[i[0]]=t[i[0]],a[i[1]]=n[i[1]]=t[i[1]])},this),this._updateRangeUse(t)},e.prototype.setCalculatedRange=function(t){var a=this.option;C(["start","startValue","end","endValue"],function(n){a[n]=t[n]})},e.prototype.getPercentRange=function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},e.prototype.getValueRange=function(t,a){if(t==null&&a==null){var n=this.findRepresentativeAxisProxy();if(n)return n.getDataValueWindow()}else return this.getAxisProxy(t,a).getDataValueWindow()},e.prototype.findRepresentativeAxisProxy=function(t){if(t)return t.__dzAxisProxy;for(var a,n=this._targetAxisInfoMap.keys(),i=0;io[1];if(_&&!S&&!w)return!0;_&&(g=!0),S&&(p=!0),w&&(d=!0)}return g&&p&&d})}else Yi(f,function(c){if(i==="empty")l.setData(u=u.map(c,function(d){return s(d)?d:NaN}));else{var p={};p[c]=o,u.selectRange(p)}});Yi(f,function(c){u.setApproximateExtent(o,c)})}});function s(l){return l>=o[0]&&l<=o[1]}},r.prototype._updateMinMaxSpan=function(){var e=this._minMaxSpan={},t=this._dataZoomModel,a=this._dataExtent;Yi(["min","max"],function(n){var i=t.get(n+"Span"),o=t.get(n+"ValueSpan");o!=null&&(o=this.getAxisModel().axis.scale.parse(o)),o!=null?i=Lt(a[0]+o,a,[0,100],!0):i!=null&&(o=Lt(i,[0,100],a,!0)-a[0]),e[n+"Span"]=i,e[n+"ValueSpan"]=o},this)},r.prototype._setAxisModel=function(){var e=this.getAxisModel(),t=this._percentWindow,a=this._valueWindow;if(t){var n=$b(a,[0,500]);n=Math.min(n,20);var i=e.axis.scale.rawExtentInfo;t[0]!==0&&i.setDeterminedMinMax("min",+a[0].toFixed(n)),t[1]!==100&&i.setDeterminedMinMax("max",+a[1].toFixed(n)),i.freeze()}},r}();function G$(r,e,t){var a=[1/0,-1/0];Yi(t,function(o){fV(a,o.getData(),e)});var n=r.getAxisModel(),i=JC(n.axis.scale,n,a).calculate();return[i.min,i.max]}const F$=z$;var H$={getTargetSeries:function(r){function e(n){r.eachComponent("dataZoom",function(i){i.eachTargetAxis(function(o,s){var l=r.getComponent(Wa(o),s);n(o,s,l,i)})})}e(function(n,i,o,s){o.__dzAxisProxy=null});var t=[];e(function(n,i,o,s){o.__dzAxisProxy||(o.__dzAxisProxy=new F$(n,i,s,r),t.push(o.__dzAxisProxy))});var a=q();return C(t,function(n){C(n.getTargetSeriesModels(),function(i){a.set(i.uid,i)})}),a},overallReset:function(r,e){r.eachComponent("dataZoom",function(t){t.eachTargetAxis(function(a,n){t.getAxisProxy(a,n).reset(t)}),t.eachTargetAxis(function(a,n){t.getAxisProxy(a,n).filterData(t,e)})}),r.eachComponent("dataZoom",function(t){var a=t.findRepresentativeAxisProxy();if(a){var n=a.getDataPercentWindow(),i=a.getDataValueWindow();t.setCalculatedRange({start:n[0],end:n[1],startValue:i[0],endValue:i[1]})}})}};const W$=H$;function U$(r){r.registerAction("dataZoom",function(e,t){var a=R$(t,e);C(a,function(n){n.setRawRange({start:e.start,end:e.end,startValue:e.startValue,endValue:e.endValue})})})}var Zx=!1;function qy(r){Zx||(Zx=!0,r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER,W$),U$(r),r.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function $$(r){r.registerComponentModel(O$),r.registerComponentView(V$),qy(r)}var ar=function(){function r(){}return r}(),NI={};function Xi(r,e){NI[r]=e}function BI(r){return NI[r]}var Y$=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.optionUpdated=function(){r.prototype.optionUpdated.apply(this,arguments);var t=this.ecModel;C(this.option.feature,function(a,n){var i=BI(n);i&&(i.getDefaultOption&&(i.defaultOption=i.getDefaultOption(t)),ut(a,i.defaultOption))})},e.type="toolbox",e.layoutMode={type:"box",ignoreSize:!0},e.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemSize:15,itemGap:8,showTitle:!0,iconStyle:{borderColor:"#666",color:"none"},emphasis:{iconStyle:{borderColor:"#3E98C5"}},tooltip:{show:!1,position:"bottom"}},e}(bt);const X$=Y$;function Z$(r,e,t){var a=e.getBoxLayoutParams(),n=e.get("padding"),i={width:t.getWidth(),height:t.getHeight()},o=re(a,i,n);ri(e.get("orient"),r,e.get("itemGap"),o.width,o.height),xh(r,a,i,n)}function VI(r,e){var t=bo(e.get("padding")),a=e.getItemStyle(["color","opacity"]);return a.fill=e.get("backgroundColor"),r=new xt({shape:{x:r.x-t[3],y:r.y-t[0],width:r.width+t[1]+t[3],height:r.height+t[0]+t[2],r:e.get("borderRadius")},style:a,silent:!0,z2:-1}),r}var q$=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,a,n,i){var o=this.group;if(o.removeAll(),!t.get("show"))return;var s=+t.get("itemSize"),l=t.get("orient")==="vertical",u=t.get("feature")||{},f=this._features||(this._features={}),h=[];C(u,function(p,d){h.push(d)}),new pa(this._featureNames||[],h).add(v).update(v).remove(it(v,null)).execute(),this._featureNames=h;function v(p,d){var g=h[p],y=h[d],m=u[g],_=new Nt(m,t,t.ecModel),S;if(i&&i.newTitle!=null&&i.featureName===g&&(m.title=i.newTitle),g&&!y){if(K$(g))S={onclick:_.option.onclick,featureName:g};else{var w=BI(g);if(!w)return;S=new w}f[g]=S}else if(S=f[y],!S)return;S.uid=wo("toolbox-feature"),S.model=_,S.ecModel=a,S.api=n;var x=S instanceof ar;if(!g&&y){x&&S.dispose&&S.dispose(a,n);return}if(!_.get("show")||x&&S.unusable){x&&S.remove&&S.remove(a,n);return}c(_,S,g),_.setIconStatus=function(b,A){var T=this.option,D=this.iconPaths;T.iconStatus=T.iconStatus||{},T.iconStatus[b]=A,D[b]&&(A==="emphasis"?va:ca)(D[b])},S instanceof ar&&S.render&&S.render(_,a,n,i)}function c(p,d,g){var y=p.getModel("iconStyle"),m=p.getModel(["emphasis","iconStyle"]),_=d instanceof ar&&d.getIcons?d.getIcons():p.get("icon"),S=p.get("title")||{},w,x;U(_)?(w={},w[g]=_):w=_,U(S)?(x={},x[g]=S):x=S;var b=p.iconPaths={};C(w,function(A,T){var D=dl(A,{},{x:-s/2,y:-s/2,width:s,height:s});D.setStyle(y.getItemStyle());var M=D.ensureState("emphasis");M.style=m.getItemStyle();var I=new Tt({style:{text:x[T],align:m.get("textAlign"),borderRadius:m.get("textBorderRadius"),padding:m.get("textPadding"),fill:null},ignore:!0});D.setTextContent(I),So({el:D,componentModel:t,itemName:T,formatterParamsExtra:{title:x[T]}}),D.__title=x[T],D.on("mouseover",function(){var L=m.getItemStyle(),P=l?t.get("right")==null&&t.get("left")!=="right"?"right":"left":t.get("bottom")==null&&t.get("top")!=="bottom"?"bottom":"top";I.setStyle({fill:m.get("textFill")||L.fill||L.stroke||"#000",backgroundColor:m.get("textBackgroundColor")}),D.setTextConfig({position:m.get("textPosition")||P}),I.ignore=!t.get("showTitle"),n.enterEmphasis(this)}).on("mouseout",function(){p.get(["iconStatus",T])!=="emphasis"&&n.leaveEmphasis(this),I.hide()}),(p.get(["iconStatus",T])==="emphasis"?va:ca)(D),o.add(D),D.on("click",$(d.onclick,d,a,n,T)),b[T]=D})}Z$(o,t,n),o.add(VI(o.getBoundingRect(),t)),l||o.eachChild(function(p){var d=p.__title,g=p.ensureState("emphasis"),y=g.textConfig||(g.textConfig={}),m=p.getTextContent(),_=m&&m.ensureState("emphasis");if(_&&!K(_)&&d){var S=_.style||(_.style={}),w=fl(d,Tt.makeFont(S)),x=p.x+o.x,b=p.y+o.y+s,A=!1;b+w.height>n.getHeight()&&(y.position="top",A=!0);var T=A?-5-w.height:s+10;x+w.width/2>n.getWidth()?(y.position=["100%",T],S.align="right"):x-w.width/2<0&&(y.position=[0,T],S.align="left")}})},e.prototype.updateView=function(t,a,n,i){C(this._features,function(o){o instanceof ar&&o.updateView&&o.updateView(o.model,a,n,i)})},e.prototype.remove=function(t,a){C(this._features,function(n){n instanceof ar&&n.remove&&n.remove(t,a)}),this.group.removeAll()},e.prototype.dispose=function(t,a){C(this._features,function(n){n instanceof ar&&n.dispose&&n.dispose(t,a)})},e.type="toolbox",e}(Ut);function K$(r){return r.indexOf("my")===0}const Q$=q$;var J$=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.onclick=function(t,a){var n=this.model,i=n.get("name")||t.get("title.0.text")||"echarts",o=a.getZr().painter.getType()==="svg",s=o?"svg":n.get("type",!0)||"png",l=a.getConnectedDataURL({type:s,backgroundColor:n.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",connectedBackgroundColor:n.get("connectedBackgroundColor"),excludeComponents:n.get("excludeComponents"),pixelRatio:n.get("pixelRatio")}),u=At.browser;if(K(MouseEvent)&&(u.newEdge||!u.ie&&!u.edge)){var f=document.createElement("a");f.download=i+"."+s,f.target="_blank",f.href=l;var h=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});f.dispatchEvent(h)}else if(window.navigator.msSaveOrOpenBlob||o){var v=l.split(","),c=v[0].indexOf("base64")>-1,p=o?decodeURIComponent(v[1]):v[1];c&&(p=window.atob(p));var d=i+"."+s;if(window.navigator.msSaveOrOpenBlob){for(var g=p.length,y=new Uint8Array(g);g--;)y[g]=p.charCodeAt(g);var m=new Blob([y]);window.navigator.msSaveOrOpenBlob(m,d)}else{var _=document.createElement("iframe");document.body.appendChild(_);var S=_.contentWindow,w=S.document;w.open("image/svg+xml","replace"),w.write(p),w.close(),S.focus(),w.execCommand("SaveAs",!0,d),document.body.removeChild(_)}}else{var x=n.get("lang"),b='',A=window.open();A.document.write(b),A.document.title=i}},e.getDefaultOption=function(t){var a={show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:t.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:t.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return a},e}(ar);const j$=J$;var qx="__ec_magicType_stack__",t7=[["line","bar"],["stack"]],e7=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.getIcons=function(){var t=this.model,a=t.get("icon"),n={};return C(t.get("type"),function(i){a[i]&&(n[i]=a[i])}),n},e.getDefaultOption=function(t){var a={show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:t.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}};return a},e.prototype.onclick=function(t,a,n){var i=this.model,o=i.get(["seriesIndex",n]);if(Kx[n]){var s={series:[]},l=function(h){var v=h.subType,c=h.id,p=Kx[n](v,c,h,i);p&&(J(p,h.option),s.series.push(p));var d=h.coordinateSystem;if(d&&d.type==="cartesian2d"&&(n==="line"||n==="bar")){var g=d.getAxesByScale("ordinal")[0];if(g){var y=g.dim,m=y+"Axis",_=h.getReferringComponents(m,Qt).models[0],S=_.componentIndex;s[m]=s[m]||[];for(var w=0;w<=S;w++)s[m][S]=s[m][S]||{};s[m][S].boundaryGap=n==="bar"}}};C(t7,function(h){vt(h,n)>=0&&C(h,function(v){i.setIconStatus(v,"normal")})}),i.setIconStatus(n,"emphasis"),t.eachComponent({mainType:"series",query:o==null?null:{seriesIndex:o}},l);var u,f=n;n==="stack"&&(u=ut({stack:i.option.title.tiled,tiled:i.option.title.stack},i.option.title),i.get(["iconStatus",n])!=="emphasis"&&(f="tiled")),a.dispatchAction({type:"changeMagicType",currentType:f,newOption:s,newTitle:u,featureName:"magicType"})}},e}(ar),Kx={line:function(r,e,t,a){if(r==="bar")return ut({id:e,type:"line",data:t.get("data"),stack:t.get("stack"),markPoint:t.get("markPoint"),markLine:t.get("markLine")},a.get(["option","line"])||{},!0)},bar:function(r,e,t,a){if(r==="line")return ut({id:e,type:"bar",data:t.get("data"),stack:t.get("stack"),markPoint:t.get("markPoint"),markLine:t.get("markLine")},a.get(["option","bar"])||{},!0)},stack:function(r,e,t,a){var n=t.get("stack")===qx;if(r==="line"||r==="bar")return a.setIconStatus("stack",n?"normal":"emphasis"),ut({id:e,stack:n?"":qx},a.get(["option","stack"])||{},!0)}};qr({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(r,e){e.mergeOption(r.newOption)});const r7=e7;var Vh=new Array(60).join("-"),vo=" ";function a7(r){var e={},t=[],a=[];return r.eachRawSeries(function(n){var i=n.coordinateSystem;if(i&&(i.type==="cartesian2d"||i.type==="polar")){var o=i.getBaseAxis();if(o.type==="category"){var s=o.dim+"_"+o.index;e[s]||(e[s]={categoryAxis:o,valueAxis:i.getOtherAxis(o),series:[]},a.push({axisDim:o.dim,axisIndex:o.index})),e[s].series.push(n)}else t.push(n)}else t.push(n)}),{seriesGroupByCategoryAxis:e,other:t,meta:a}}function n7(r){var e=[];return C(r,function(t,a){var n=t.categoryAxis,i=t.valueAxis,o=i.dim,s=[" "].concat(G(t.series,function(c){return c.name})),l=[n.model.getCategories()];C(t.series,function(c){var p=c.getRawData();l.push(c.getRawData().mapArray(p.mapDimension(o),function(d){return d}))});for(var u=[s.join(vo)],f=0;f=0)return!0}var Vd=new RegExp("["+vo+"]+","g");function l7(r){for(var e=r.split(/\n+/g),t=$f(e.shift()).split(Vd),a=[],n=G(t,function(l){return{name:l,data:[]}}),i=0;i=0;i--){var o=t[i];if(o[n])break}if(i<0){var s=r.queryComponents({mainType:"dataZoom",subType:"select",id:n})[0];if(s){var l=s.getPercentRange();t[0][n]={dataZoomId:n,start:l[0],end:l[1]}}}}),t.push(e)}function d7(r){var e=Ky(r),t=e[e.length-1];e.length>1&&e.pop();var a={};return zI(t,function(n,i){for(var o=e.length-1;o>=0;o--)if(n=e[o][i],n){a[i]=n;break}}),a}function g7(r){GI(r).snapshots=null}function y7(r){return Ky(r).length}function Ky(r){var e=GI(r);return e.snapshots||(e.snapshots=[{}]),e.snapshots}var m7=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.onclick=function(t,a){g7(t),a.dispatchAction({type:"restore",from:this.uid})},e.getDefaultOption=function(t){var a={show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:t.getLocaleModel().get(["toolbox","restore","title"])};return a},e}(ar);qr({type:"restore",event:"restore",update:"prepareAndUpdate"},function(r,e){e.resetOption("recreate")});const _7=m7;var S7=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],x7=function(){function r(e,t,a){var n=this;this._targetInfoList=[];var i=Qx(t,e);C(w7,function(o,s){(!a||!a.include||vt(a.include,s)>=0)&&o(i,n._targetInfoList)})}return r.prototype.setOutputRanges=function(e,t){return this.matchOutputRanges(e,t,function(a,n,i){if((a.coordRanges||(a.coordRanges=[])).push(n),!a.coordRange){a.coordRange=n;var o=Kc[a.brushType](0,i,n);a.__rangeOffset={offset:ew[a.brushType](o.values,a.range,[1,1]),xyMinMax:o.xyMinMax}}}),e},r.prototype.matchOutputRanges=function(e,t,a){C(e,function(n){var i=this.findTargetInfo(n,t);i&&i!==!0&&C(i.coordSyses,function(o){var s=Kc[n.brushType](1,o,n.range,!0);a(n,s.values,o,t)})},this)},r.prototype.setInputRanges=function(e,t){C(e,function(a){var n=this.findTargetInfo(a,t);if(a.range=a.range||[],n&&n!==!0){a.panelId=n.panelId;var i=Kc[a.brushType](0,n.coordSys,a.coordRange),o=a.__rangeOffset;a.range=o?ew[a.brushType](i.values,o.offset,b7(i.xyMinMax,o.xyMinMax)):i.values}},this)},r.prototype.makePanelOpts=function(e,t){return G(this._targetInfoList,function(a){var n=a.getPanelRect();return{panelId:a.panelId,defaultBrushType:t?t(a):null,clipPath:XM(n),isTargetByCursor:qM(n,e,a.coordSysModel),getLinearBrushOtherExtent:ZM(n)}})},r.prototype.controlSeries=function(e,t,a){var n=this.findTargetInfo(e,a);return n===!0||n&&vt(n.coordSyses,t.coordinateSystem)>=0},r.prototype.findTargetInfo=function(e,t){for(var a=this._targetInfoList,n=Qx(t,e),i=0;ir[1]&&r.reverse(),r}function Qx(r,e){return ws(r,e,{includeMainTypes:S7})}var w7={grid:function(r,e){var t=r.xAxisModels,a=r.yAxisModels,n=r.gridModels,i=q(),o={},s={};!t&&!a&&!n||(C(t,function(l){var u=l.axis.grid.model;i.set(u.id,u),o[u.id]=!0}),C(a,function(l){var u=l.axis.grid.model;i.set(u.id,u),s[u.id]=!0}),C(n,function(l){i.set(l.id,l),o[l.id]=!0,s[l.id]=!0}),i.each(function(l){var u=l.coordinateSystem,f=[];C(u.getCartesians(),function(h,v){(vt(t,h.getAxis("x").model)>=0||vt(a,h.getAxis("y").model)>=0)&&f.push(h)}),e.push({panelId:"grid--"+l.id,gridModel:l,coordSysModel:l,coordSys:f[0],coordSyses:f,getPanelRect:jx.grid,xAxisDeclared:o[l.id],yAxisDeclared:s[l.id]})}))},geo:function(r,e){C(r.geoModels,function(t){var a=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:a,coordSyses:[a],getPanelRect:jx.geo})})}},Jx=[function(r,e){var t=r.xAxisModel,a=r.yAxisModel,n=r.gridModel;return!n&&t&&(n=t.axis.grid.model),!n&&a&&(n=a.axis.grid.model),n&&n===e.gridModel},function(r,e){var t=r.geoModel;return t&&t===e.geoModel}],jx={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var r=this.coordSys,e=r.getBoundingRect().clone();return e.applyTransform(ei(r)),e}},Kc={lineX:it(tw,0),lineY:it(tw,1),rect:function(r,e,t,a){var n=r?e.pointToData([t[0][0],t[1][0]],a):e.dataToPoint([t[0][0],t[1][0]],a),i=r?e.pointToData([t[0][1],t[1][1]],a):e.dataToPoint([t[0][1],t[1][1]],a),o=[zd([n[0],i[0]]),zd([n[1],i[1]])];return{values:o,xyMinMax:o}},polygon:function(r,e,t,a){var n=[[1/0,-1/0],[1/0,-1/0]],i=G(t,function(o){var s=r?e.pointToData(o,a):e.dataToPoint(o,a);return n[0][0]=Math.min(n[0][0],s[0]),n[1][0]=Math.min(n[1][0],s[1]),n[0][1]=Math.max(n[0][1],s[0]),n[1][1]=Math.max(n[1][1],s[1]),s});return{values:i,xyMinMax:n}}};function tw(r,e,t,a){var n=t.getAxis(["x","y"][r]),i=zd(G([0,1],function(s){return e?n.coordToData(n.toLocalCoord(a[s]),!0):n.toGlobalCoord(n.dataToCoord(a[s]))})),o=[];return o[r]=i,o[1-r]=[NaN,NaN],{values:i,xyMinMax:o}}var ew={lineX:it(rw,0),lineY:it(rw,1),rect:function(r,e,t){return[[r[0][0]-t[0]*e[0][0],r[0][1]-t[0]*e[0][1]],[r[1][0]-t[1]*e[1][0],r[1][1]-t[1]*e[1][1]]]},polygon:function(r,e,t){return G(r,function(a,n){return[a[0]-t[0]*e[n][0],a[1]-t[1]*e[n][1]]})}};function rw(r,e,t,a){return[e[0]-a[r]*t[0],e[1]-a[r]*t[1]]}function b7(r,e){var t=aw(r),a=aw(e),n=[t[0]/a[0],t[1]/a[1]];return isNaN(n[0])&&(n[0]=1),isNaN(n[1])&&(n[1]=1),n}function aw(r){return r?[r[0][1]-r[0][0],r[1][1]-r[1][0]]:[NaN,NaN]}const Qy=x7;var Gd=C,A7=XP("toolbox-dataZoom_"),T7=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,a,n,i){this._brushController||(this._brushController=new Py(n.getZr()),this._brushController.on("brush",$(this._onBrush,this)).mount()),M7(t,a,this,i,n),D7(t,a)},e.prototype.onclick=function(t,a,n){C7[n].call(this)},e.prototype.remove=function(t,a){this._brushController&&this._brushController.unmount()},e.prototype.dispose=function(t,a){this._brushController&&this._brushController.dispose()},e.prototype._onBrush=function(t){var a=t.areas;if(!t.isEnd||!a.length)return;var n={},i=this.ecModel;this._brushController.updateCovers([]);var o=new Qy(Jy(this.model),i,{include:["grid"]});o.matchOutputRanges(a,i,function(u,f,h){if(h.type==="cartesian2d"){var v=u.brushType;v==="rect"?(s("x",h,f[0]),s("y",h,f[1])):s({lineX:"x",lineY:"y"}[v],h,f)}}),p7(i,n),this._dispatchZoomAction(n);function s(u,f,h){var v=f.getAxis(u),c=v.model,p=l(u,c,i),d=p.findRepresentativeAxisProxy(c).getMinMaxSpan();(d.minValueSpan!=null||d.maxValueSpan!=null)&&(h=_i(0,h.slice(),v.scale.getExtent(),0,d.minValueSpan,d.maxValueSpan)),p&&(n[p.id]={dataZoomId:p.id,startValue:h[0],endValue:h[1]})}function l(u,f,h){var v;return h.eachComponent({mainType:"dataZoom",subType:"select"},function(c){var p=c.getAxisModel(u,f.componentIndex);p&&(v=c)}),v}},e.prototype._dispatchZoomAction=function(t){var a=[];Gd(t,function(n,i){a.push(et(n))}),a.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:a})},e.getDefaultOption=function(t){var a={show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:t.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}};return a},e}(ar),C7={zoom:function(){var r=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:r})},back:function(){this._dispatchZoomAction(d7(this.ecModel))}};function Jy(r){var e={xAxisIndex:r.get("xAxisIndex",!0),yAxisIndex:r.get("yAxisIndex",!0),xAxisId:r.get("xAxisId",!0),yAxisId:r.get("yAxisId",!0)};return e.xAxisIndex==null&&e.xAxisId==null&&(e.xAxisIndex="all"),e.yAxisIndex==null&&e.yAxisId==null&&(e.yAxisIndex="all"),e}function D7(r,e){r.setIconStatus("back",y7(e)>1?"emphasis":"normal")}function M7(r,e,t,a,n){var i=t._isZoomActive;a&&a.type==="takeGlobalCursor"&&(i=a.key==="dataZoomSelect"?a.dataZoomSelectActive:!1),t._isZoomActive=i,r.setIconStatus("zoom",i?"emphasis":"normal");var o=new Qy(Jy(r),e,{include:["grid"]}),s=o.makePanelOpts(n,function(l){return l.xAxisDeclared&&!l.yAxisDeclared?"lineX":!l.xAxisDeclared&&l.yAxisDeclared?"lineY":"rect"});t._brushController.setPanels(s).enableBrush(i&&s.length?{brushType:"auto",brushStyle:r.getModel("brushStyle").getItemStyle()}:!1)}Mk("dataZoom",function(r){var e=r.getComponent("toolbox",0),t=["feature","dataZoom"];if(!e||e.get(t)==null)return;var a=e.getModel(t),n=[],i=Jy(a),o=ws(r,i);Gd(o.xAxisModels,function(l){return s(l,"xAxis","xAxisIndex")}),Gd(o.yAxisModels,function(l){return s(l,"yAxis","yAxisIndex")});function s(l,u,f){var h=l.componentIndex,v={type:"select",$fromToolbox:!0,filterMode:a.get("filterMode",!0)||"filter",id:A7+u+h};v[f]=h,n.push(v)}return n});const I7=T7;function L7(r){r.registerComponentModel(X$),r.registerComponentView(Q$),Xi("saveAsImage",j$),Xi("magicType",r7),Xi("dataView",c7),Xi("dataZoom",I7),Xi("restore",_7),ct($$)}var P7=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="tooltip",e.dependencies=["axisPointer"],e.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"#fff",shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#666",fontSize:14}},e}(bt);const R7=P7;function FI(r){var e=r.get("confine");return e!=null?!!e:r.get("renderMode")==="richText"}function HI(r){if(At.domSupported){for(var e=document.documentElement.style,t=0,a=r.length;t-1?(s+="top:50%",l+="translateY(-50%) rotate("+(u=i==="left"?-225:-45)+"deg)"):(s+="left:50%",l+="translateX(-50%) rotate("+(u=i==="top"?225:45)+"deg)");var f=u*Math.PI/180,h=o+n,v=h*Math.abs(Math.cos(f))+h*Math.abs(Math.sin(f)),c=Math.round(((v-Math.SQRT2*n)/2+Math.SQRT2*n-(v-h)/2)*100)/100;s+=";"+i+":-"+c+"px";var p=e+" solid "+n+"px;",d=["position:absolute;width:"+o+"px;height:"+o+"px;z-index:-1;",s+";"+l+";","border-bottom:"+p,"border-right:"+p,"background-color:"+a+";"];return'
'}function z7(r,e){var t="cubic-bezier(0.23,1,0.32,1)",a=" "+r/2+"s "+t,n="opacity"+a+",visibility"+a;return e||(a=" "+r+"s "+t,n+=At.transformSupported?","+jy+a:",left"+a+",top"+a),O7+":"+n}function nw(r,e,t){var a=r.toFixed(0)+"px",n=e.toFixed(0)+"px";if(!At.transformSupported)return t?"top:"+n+";left:"+a+";":[["top",n],["left",a]];var i=At.transform3dSupported,o="translate"+(i?"3d":"")+"("+a+","+n+(i?",0":"")+")";return t?"top:0;left:0;"+jy+":"+o+";":[["top",0],["left",0],[WI,o]]}function G7(r){var e=[],t=r.get("fontSize"),a=r.getTextColor();a&&e.push("color:"+a),e.push("font:"+r.getFont()),t&&e.push("line-height:"+Math.round(t*3/2)+"px");var n=r.get("textShadowColor"),i=r.get("textShadowBlur")||0,o=r.get("textShadowOffsetX")||0,s=r.get("textShadowOffsetY")||0;return n&&i&&e.push("text-shadow:"+o+"px "+s+"px "+i+"px "+n),C(["decoration","align"],function(l){var u=r.get(l);u&&e.push("text-"+l+":"+u)}),e.join(";")}function F7(r,e,t){var a=[],n=r.get("transitionDuration"),i=r.get("backgroundColor"),o=r.get("shadowBlur"),s=r.get("shadowColor"),l=r.get("shadowOffsetX"),u=r.get("shadowOffsetY"),f=r.getModel("textStyle"),h=QT(r,"html"),v=l+"px "+u+"px "+o+"px "+s;return a.push("box-shadow:"+v),e&&n&&a.push(z7(n,t)),i&&a.push("background-color:"+i),C(["width","color","radius"],function(c){var p="border-"+c,d=dT(p),g=r.get(d);g!=null&&a.push(p+":"+g+(c==="color"?"":"px"))}),a.push(G7(f)),h!=null&&a.push("padding:"+bo(h).join("px ")+"px"),a.join(";")+";"}function iw(r,e,t,a,n){var i=e&&e.painter;if(t){var o=i&&i.getViewportRoot();o&&mL(r,o,document.body,a,n)}else{r[0]=a,r[1]=n;var s=i&&i.getViewportRootOffset();s&&(r[0]+=s.offsetLeft,r[1]+=s.offsetTop)}r[2]=r[0]/e.getWidth(),r[3]=r[1]/e.getHeight()}var H7=function(){function r(e,t,a){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._firstShow=!0,this._longHide=!0,At.wxa)return null;var n=document.createElement("div");n.domBelongToZr=!0,this.el=n;var i=this._zr=t.getZr(),o=this._appendToBody=a&&a.appendToBody;iw(this._styleCoord,i,o,t.getWidth()/2,t.getHeight()/2),o?document.body.appendChild(n):e.appendChild(n),this._container=e;var s=this;n.onmouseenter=function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0},n.onmousemove=function(l){if(l=l||window.event,!s._enterable){var u=i.handler,f=i.painter.getViewportRoot();Je(f,l,!0),u.dispatch("mousemove",l)}},n.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return r.prototype.update=function(e){var t=this._container,a=k7(t,"position"),n=t.style;n.position!=="absolute"&&a!=="absolute"&&(n.position="relative");var i=e.get("alwaysShowContent");i&&this._moveIfResized(),this.el.className=e.get("className")||""},r.prototype.show=function(e,t){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var a=this.el,n=a.style,i=this._styleCoord;a.innerHTML?n.cssText=N7+F7(e,!this._firstShow,this._longHide)+nw(i[0],i[1],!0)+("border-color:"+fi(t)+";")+(e.get("extraCssText")||"")+(";pointer-events:"+(this._enterable?"auto":"none")):n.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},r.prototype.setContent=function(e,t,a,n,i){var o=this.el;if(e==null){o.innerHTML="";return}var s="";if(U(i)&&a.get("trigger")==="item"&&!FI(a)&&(s=V7(a,n,i)),U(e))o.innerHTML=e+s;else if(e){o.innerHTML="",z(e)||(e=[e]);for(var l=0;l=0?this._tryShow(i,o):n==="leave"&&this._hide(o))},this))},e.prototype._keepShow=function(){var t=this._tooltipModel,a=this._ecModel,n=this._api,i=t.get("triggerOn");if(this._lastX!=null&&this._lastY!=null&&i!=="none"&&i!=="click"){var o=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout(function(){!n.isDisposed()&&o.manuallyShowTip(t,a,n,{x:o._lastX,y:o._lastY,dataByCoordSys:o._lastDataByCoordSys})})}},e.prototype.manuallyShowTip=function(t,a,n,i){if(!(i.from===this.uid||At.node||!n.getDom())){var o=lw(i,n);this._ticket="";var s=i.dataByCoordSys,l=Q7(i,a,n);if(l){var u=l.el.getBoundingRect().clone();u.applyTransform(l.el.transform),this._tryShow({offsetX:u.x+u.width/2,offsetY:u.y+u.height/2,target:l.el,position:i.position,positionDefault:"bottom"},o)}else if(i.tooltip&&i.x!=null&&i.y!=null){var f=Y7;f.x=i.x,f.y=i.y,f.update(),nt(f).tooltipConfig={name:null,option:i.tooltip},this._tryShow({offsetX:i.x,offsetY:i.y,target:f},o)}else if(s)this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,dataByCoordSys:s,tooltipOption:i.tooltipOption},o);else if(i.seriesIndex!=null){if(this._manuallyAxisShowTip(t,a,n,i))return;var h=MI(i,a),v=h.point[0],c=h.point[1];v!=null&&c!=null&&this._tryShow({offsetX:v,offsetY:c,target:h.el,position:i.position,positionDefault:"bottom"},o)}else i.x!=null&&i.y!=null&&(n.dispatchAction({type:"updateAxisPointer",x:i.x,y:i.y}),this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,target:n.getZr().findHover(i.x,i.y).target},o))}},e.prototype.manuallyHideTip=function(t,a,n,i){var o=this._tooltipContent;!this._alwaysShowContent&&this._tooltipModel&&o.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,i.from!==this.uid&&this._hide(lw(i,n))},e.prototype._manuallyAxisShowTip=function(t,a,n,i){var o=i.seriesIndex,s=i.dataIndex,l=a.getComponent("axisPointer").coordSysAxesInfo;if(!(o==null||s==null||l==null)){var u=a.getSeriesByIndex(o);if(u){var f=u.getData(),h=es([f.getItemModel(s),u,(u.coordinateSystem||{}).model],this._tooltipModel);if(h.get("trigger")==="axis")return n.dispatchAction({type:"updateAxisPointer",seriesIndex:o,dataIndex:s,position:i.position}),!0}}},e.prototype._tryShow=function(t,a){var n=t.target,i=this._tooltipModel;if(i){this._lastX=t.offsetX,this._lastY=t.offsetY;var o=t.dataByCoordSys;if(o&&o.length)this._showAxisTooltip(o,t);else if(n){this._lastDataByCoordSys=null;var s,l;Xn(n,function(u){if(nt(u).dataIndex!=null)return s=u,!0;if(nt(u).tooltipConfig!=null)return l=u,!0},!0),s?this._showSeriesItemTooltip(t,s,a):l?this._showComponentItemTooltip(t,l,a):this._hide(a)}else this._lastDataByCoordSys=null,this._hide(a)}},e.prototype._showOrMove=function(t,a){var n=t.get("showDelay");a=$(a,this),clearTimeout(this._showTimout),n>0?this._showTimout=setTimeout(a,n):a()},e.prototype._showAxisTooltip=function(t,a){var n=this._ecModel,i=this._tooltipModel,o=[a.offsetX,a.offsetY],s=es([a.tooltipOption],i),l=this._renderMode,u=[],f=se("section",{blocks:[],noHeader:!0}),h=[],v=new Ov;C(t,function(m){C(m.dataByAxis,function(_){var S=n.getComponent(_.axisDim+"Axis",_.axisIndex),w=_.value;if(!(!S||w==null)){var x=AI(w,S.axis,n,_.seriesDataIndices,_.valueLabelOpt),b=se("section",{header:x,noHeader:!_r(x),sortBlocks:!0,blocks:[]});f.blocks.push(b),C(_.seriesDataIndices,function(A){var T=n.getSeriesByIndex(A.seriesIndex),D=A.dataIndexInside,M=T.getDataParams(D);if(!(M.dataIndex<0)){M.axisDim=_.axisDim,M.axisIndex=_.axisIndex,M.axisType=_.axisType,M.axisId=_.axisId,M.axisValue=ey(S.axis,{value:w}),M.axisValueLabel=x,M.marker=v.makeTooltipMarker("item",fi(M.color),l);var I=X0(T.formatTooltip(D,!0,null)),L=I.frag;if(L){var P=es([T],i).get("valueFormatter");b.blocks.push(P?B({valueFormatter:P},L):L)}I.text&&h.push(I.text),u.push(M)}})}})}),f.blocks.reverse(),h.reverse();var c=a.position,p=s.get("order"),d=j0(f,v,l,p,n.get("useUTC"),s.get("textStyle"));d&&h.unshift(d);var g=l==="richText"?` + +`:"
",y=h.join(g);this._showOrMove(s,function(){this._updateContentNotChangedOnAxis(t,u)?this._updatePosition(s,c,o[0],o[1],this._tooltipContent,u):this._showTooltipContent(s,y,u,Math.random()+"",o[0],o[1],c,null,v)})},e.prototype._showSeriesItemTooltip=function(t,a,n){var i=this._ecModel,o=nt(a),s=o.seriesIndex,l=i.getSeriesByIndex(s),u=o.dataModel||l,f=o.dataIndex,h=o.dataType,v=u.getData(h),c=this._renderMode,p=t.positionDefault,d=es([v.getItemModel(f),u,l&&(l.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),g=d.get("trigger");if(!(g!=null&&g!=="item")){var y=u.getDataParams(f,h),m=new Ov;y.marker=m.makeTooltipMarker("item",fi(y.color),c);var _=X0(u.formatTooltip(f,!1,h)),S=d.get("order"),w=d.get("valueFormatter"),x=_.frag,b=x?j0(w?B({valueFormatter:w},x):x,m,c,S,i.get("useUTC"),d.get("textStyle")):_.text,A="item_"+u.name+"_"+f;this._showOrMove(d,function(){this._showTooltipContent(d,b,y,A,t.offsetX,t.offsetY,t.position,t.target,m)}),n({type:"showTip",dataIndexInside:f,dataIndex:v.getRawIndex(f),seriesIndex:s,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,a,n){var i=nt(a),o=i.tooltipConfig,s=o.option||{};if(U(s)){var l=s;s={content:l,formatter:l}}var u=[s],f=this._ecModel.getComponent(i.componentMainType,i.componentIndex);f&&u.push(f),u.push({formatter:s.content});var h=t.positionDefault,v=es(u,this._tooltipModel,h?{position:h}:null),c=v.get("content"),p=Math.random()+"",d=new Ov;this._showOrMove(v,function(){var g=et(v.get("formatterParams")||{});this._showTooltipContent(v,c,g,p,t.offsetX,t.offsetY,t.position,a,d)}),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,a,n,i,o,s,l,u,f){if(this._ticket="",!(!t.get("showContent")||!t.get("show"))){var h=this._tooltipContent;h.setEnterable(t.get("enterable"));var v=t.get("formatter");l=l||t.get("position");var c=a,p=this._getNearestPoint([o,s],n,t.get("trigger"),t.get("borderColor")),d=p.color;if(v)if(U(v)){var g=t.ecModel.get("useUTC"),y=z(n)?n[0]:n,m=y&&y.axisType&&y.axisType.indexOf("time")>=0;c=v,m&&(c=gh(y.axisValue,c,g)),c=gT(c,n,!0)}else if(K(v)){var _=$(function(S,w){S===this._ticket&&(h.setContent(w,f,t,d,l),this._updatePosition(t,l,o,s,h,n,u))},this);this._ticket=i,c=v(n,i,_)}else c=v;h.setContent(c,f,t,d,l),h.show(t,d),this._updatePosition(t,l,o,s,h,n,u)}},e.prototype._getNearestPoint=function(t,a,n,i){if(n==="axis"||z(a))return{color:i||(this._renderMode==="html"?"#fff":"none")};if(!z(a))return{color:i||a.color||a.borderColor}},e.prototype._updatePosition=function(t,a,n,i,o,s,l){var u=this._api.getWidth(),f=this._api.getHeight();a=a||t.get("position");var h=o.getSize(),v=t.get("align"),c=t.get("verticalAlign"),p=l&&l.getBoundingRect().clone();if(l&&p.applyTransform(l.transform),K(a)&&(a=a([n,i],s,o.el,p,{viewSize:[u,f],contentSize:h.slice()})),z(a))n=H(a[0],u),i=H(a[1],f);else if(tt(a)){var d=a;d.width=h[0],d.height=h[1];var g=re(d,{width:u,height:f});n=g.x,i=g.y,v=null,c=null}else if(U(a)&&l){var y=K7(a,p,h,t.get("borderWidth"));n=y[0],i=y[1]}else{var y=Z7(n,i,o,u,f,v?null:20,c?null:20);n=y[0],i=y[1]}if(v&&(n-=uw(v)?h[0]/2:v==="right"?h[0]:0),c&&(i-=uw(c)?h[1]/2:c==="bottom"?h[1]:0),FI(t)){var y=q7(n,i,o,u,f);n=y[0],i=y[1]}o.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,a){var n=this._lastDataByCoordSys,i=this._cbParamsList,o=!!n&&n.length===t.length;return o&&C(n,function(s,l){var u=s.dataByAxis||[],f=t[l]||{},h=f.dataByAxis||[];o=o&&u.length===h.length,o&&C(u,function(v,c){var p=h[c]||{},d=v.seriesDataIndices||[],g=p.seriesDataIndices||[];o=o&&v.value===p.value&&v.axisType===p.axisType&&v.axisId===p.axisId&&d.length===g.length,o&&C(d,function(y,m){var _=g[m];o=o&&y.seriesIndex===_.seriesIndex&&y.dataIndex===_.dataIndex}),i&&C(v.seriesDataIndices,function(y){var m=y.seriesIndex,_=a[m],S=i[m];_&&S&&S.data!==_.data&&(o=!1)})})}),this._lastDataByCoordSys=t,this._cbParamsList=a,!!o},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},e.prototype.dispose=function(t,a){At.node||!a.getDom()||(Zs(this,"_updatePosition"),this._tooltipContent.dispose(),Od("itemTooltip",a))},e.type="tooltip",e}(Ut);function es(r,e,t){var a=e.ecModel,n;t?(n=new Nt(t,a,a),n=new Nt(e.option,n,a)):n=e;for(var i=r.length-1;i>=0;i--){var o=r[i];o&&(o instanceof Nt&&(o=o.get("tooltip",!0)),U(o)&&(o={formatter:o}),o&&(n=new Nt(o,n,a)))}return n}function lw(r,e){return r.dispatchAction||$(e.dispatchAction,e)}function Z7(r,e,t,a,n,i,o){var s=t.getSize(),l=s[0],u=s[1];return i!=null&&(r+l+i+2>a?r-=l+i:r+=i),o!=null&&(e+u+o>n?e-=u+o:e+=o),[r,e]}function q7(r,e,t,a,n){var i=t.getSize(),o=i[0],s=i[1];return r=Math.min(r+o,a)-o,e=Math.min(e+s,n)-s,r=Math.max(r,0),e=Math.max(e,0),[r,e]}function K7(r,e,t,a){var n=t[0],i=t[1],o=Math.ceil(Math.SQRT2*a)+8,s=0,l=0,u=e.width,f=e.height;switch(r){case"inside":s=e.x+u/2-n/2,l=e.y+f/2-i/2;break;case"top":s=e.x+u/2-n/2,l=e.y-i-o;break;case"bottom":s=e.x+u/2-n/2,l=e.y+f+o;break;case"left":s=e.x-n-o,l=e.y+f/2-i/2;break;case"right":s=e.x+u+o,l=e.y+f/2-i/2}return[s,l]}function uw(r){return r==="center"||r==="middle"}function Q7(r,e,t){var a=cg(r).queryOptionMap,n=a.keys()[0];if(!(!n||n==="series")){var i=hl(e,n,a.get(n),{useDefault:!1,enableAll:!1,enableNone:!1}),o=i.models[0];if(o){var s=t.getViewOfComponentModel(o),l;if(s.group.traverse(function(u){var f=nt(u).tooltipConfig;if(f&&f.name===r.name)return l=u,!0}),l)return{componentMainType:n,componentIndex:o.componentIndex,el:l}}}}const J7=X7;function j7(r){ct(Ll),r.registerComponentModel(R7),r.registerComponentView(J7),r.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},Zt),r.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},Zt)}var tY=["rect","polygon","keep","clear"];function eY(r,e){var t=Rt(r?r.brush:[]);if(t.length){var a=[];C(t,function(l){var u=l.hasOwnProperty("toolbox")?l.toolbox:[];u instanceof Array&&(a=a.concat(u))});var n=r&&r.toolbox;z(n)&&(n=n[0]),n||(n={feature:{}},r.toolbox=[n]);var i=n.feature||(n.feature={}),o=i.brush||(i.brush={}),s=o.type||(o.type=[]);s.push.apply(s,a),rY(s),e&&!s.length&&s.push.apply(s,tY)}}function rY(r){var e={};C(r,function(t){e[t]=1}),r.length=0,C(e,function(t,a){r.push(a)})}var fw=C;function hw(r){if(r){for(var e in r)if(r.hasOwnProperty(e))return!0}}function Fd(r,e,t){var a={};return fw(e,function(i){var o=a[i]=n();fw(r[i],function(s,l){if(pe.isValidType(l)){var u={type:l,visual:s};t&&t(u,i),o[l]=new pe(u),l==="opacity"&&(u=et(u),u.type="colorAlpha",o.__hidden.__alphaForOpacity=new pe(u))}})}),a;function n(){var i=function(){};i.prototype.__hidden=i.prototype;var o=new i;return o}}function $I(r,e,t){var a;C(t,function(n){e.hasOwnProperty(n)&&hw(e[n])&&(a=!0)}),a&&C(t,function(n){e.hasOwnProperty(n)&&hw(e[n])?r[n]=et(e[n]):delete r[n]})}function aY(r,e,t,a,n,i){var o={};C(r,function(h){var v=pe.prepareVisualTypes(e[h]);o[h]=v});var s;function l(h){return Ug(t,s,h)}function u(h,v){sC(t,s,h,v)}i==null?t.each(f):t.each([i],f);function f(h,v){s=i==null?h:v;var c=t.getRawDataItem(s);if(!(c&&c.visualMap===!1))for(var p=a.call(n,h),d=e[p],g=o[p],y=0,m=g.length;ye[0][1]&&(e[0][1]=i[0]),i[1]e[1][1]&&(e[1][1]=i[1])}return e&&gw(e)}};function gw(r){return new ft(r[0][0],r[1][0],r[0][1]-r[0][0],r[1][1]-r[1][0])}var hY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t,a){this.ecModel=t,this.api=a,this.model,(this._brushController=new Py(a.getZr())).on("brush",$(this._onBrush,this)).mount()},e.prototype.render=function(t,a,n,i){this.model=t,this._updateController(t,a,n,i)},e.prototype.updateTransform=function(t,a,n,i){YI(a),this._updateController(t,a,n,i)},e.prototype.updateVisual=function(t,a,n,i){this.updateTransform(t,a,n,i)},e.prototype.updateView=function(t,a,n,i){this._updateController(t,a,n,i)},e.prototype._updateController=function(t,a,n,i){(!i||i.$from!==t.id)&&this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice())},e.prototype.dispose=function(){this._brushController.dispose()},e.prototype._onBrush=function(t){var a=this.model.id,n=this.model.brushTargetManager.setOutputRanges(t.areas,this.ecModel);(!t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:a,areas:et(n),$from:a}),t.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:a,areas:et(n),$from:a})},e.type="brush",e}(Ut);const vY=hY;var cY="#ddd",pY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.areas=[],t.brushOption={},t}return e.prototype.optionUpdated=function(t,a){var n=this.option;!a&&$I(n,t,["inBrush","outOfBrush"]);var i=n.inBrush=n.inBrush||{};n.outOfBrush=n.outOfBrush||{color:cY},i.hasOwnProperty("liftZ")||(i.liftZ=5)},e.prototype.setAreas=function(t){t&&(this.areas=G(t,function(a){return yw(this.option,a)},this))},e.prototype.setBrushOption=function(t){this.brushOption=yw(this.option,t),this.brushType=this.brushOption.brushType},e.type="brush",e.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],e.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},e}(bt);function yw(r,e){return ut({brushType:r.brushType,brushMode:r.brushMode,transformable:r.transformable,brushStyle:new Nt(r.brushStyle).getItemStyle(),removeOnClick:r.removeOnClick,z:r.z},e,!0)}const dY=pY;var gY=["rect","polygon","lineX","lineY","keep","clear"],yY=function(r){k(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,a,n){var i,o,s;a.eachComponent({mainType:"brush"},function(l){i=l.brushType,o=l.brushOption.brushMode||"single",s=s||!!l.areas.length}),this._brushType=i,this._brushMode=o,C(t.get("type",!0),function(l){t.setIconStatus(l,(l==="keep"?o==="multiple":l==="clear"?s:l===i)?"emphasis":"normal")})},e.prototype.updateView=function(t,a,n){this.render(t,a,n)},e.prototype.getIcons=function(){var t=this.model,a=t.get("icon",!0),n={};return C(t.get("type",!0),function(i){a[i]&&(n[i]=a[i])}),n},e.prototype.onclick=function(t,a,n){var i=this._brushType,o=this._brushMode;n==="clear"?(a.dispatchAction({type:"axisAreaSelect",intervals:[]}),a.dispatchAction({type:"brush",command:"clear",areas:[]})):a.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:n==="keep"?i:i===n?!1:n,brushMode:n==="keep"?o==="multiple"?"single":"multiple":o}})},e.getDefaultOption=function(t){var a={show:!0,type:gY.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:t.getLocaleModel().get(["toolbox","brush","title"])};return a},e}(ar);const mY=yY;function _Y(r){r.registerComponentView(vY),r.registerComponentModel(dY),r.registerPreprocessor(eY),r.registerVisual(r.PRIORITY.VISUAL.BRUSH,oY),r.registerAction({type:"brush",event:"brush",update:"updateVisual"},function(e,t){t.eachComponent({mainType:"brush",query:e},function(a){a.setAreas(e.areas)})}),r.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},Zt),r.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},Zt),Xi("brush",mY)}var SY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.layoutMode={type:"box",ignoreSize:!0},t}return e.type="title",e.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:"#464646"},subtextStyle:{fontSize:12,color:"#6E7079"}},e}(bt),xY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.render=function(t,a,n){if(this.group.removeAll(),!!t.get("show")){var i=this.group,o=t.getModel("textStyle"),s=t.getModel("subtextStyle"),l=t.get("textAlign"),u=lt(t.get("textBaseline"),t.get("textVerticalAlign")),f=new Tt({style:Ot(o,{text:t.get("text"),fill:o.getTextColor()},{disableBox:!0}),z2:10}),h=f.getBoundingRect(),v=t.get("subtext"),c=new Tt({style:Ot(s,{text:v,fill:s.getTextColor(),y:h.height+t.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),d=t.get("sublink"),g=t.get("triggerEvent",!0);f.silent=!p&&!g,c.silent=!d&&!g,p&&f.on("click",function(){Sf(p,"_"+t.get("target"))}),d&&c.on("click",function(){Sf(d,"_"+t.get("subtarget"))}),nt(f).eventData=nt(c).eventData=g?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(f),v&&i.add(c);var y=i.getBoundingRect(),m=t.getBoxLayoutParams();m.width=y.width,m.height=y.height;var _=re(m,{width:n.getWidth(),height:n.getHeight()},t.get("padding"));l||(l=t.get("left")||t.get("right"),l==="middle"&&(l="center"),l==="right"?_.x+=_.width:l==="center"&&(_.x+=_.width/2)),u||(u=t.get("top")||t.get("bottom"),u==="center"&&(u="middle"),u==="bottom"?_.y+=_.height:u==="middle"&&(_.y+=_.height/2),u=u||"top"),i.x=_.x,i.y=_.y,i.markRedraw();var S={align:l,verticalAlign:u};f.setStyle(S),c.setStyle(S),y=i.getBoundingRect();var w=_.margin,x=t.getItemStyle(["color","opacity"]);x.fill=t.get("backgroundColor");var b=new xt({shape:{x:y.x-w[3],y:y.y-w[0],width:y.width+w[1]+w[3],height:y.height+w[0]+w[2],r:t.get("borderRadius")},style:x,subPixelOptimize:!0,silent:!0});i.add(b)}},e.type="title",e}(Ut);function wY(r){r.registerComponentModel(SY),r.registerComponentView(xY)}var bY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.layoutMode="box",t}return e.prototype.init=function(t,a,n){this.mergeDefaultAndTheme(t,n),this._initData()},e.prototype.mergeOption=function(t){r.prototype.mergeOption.apply(this,arguments),this._initData()},e.prototype.setCurrentIndex=function(t){t==null&&(t=this.option.currentIndex);var a=this._data.count();this.option.loop?t=(t%a+a)%a:(t>=a&&(t=a-1),t<0&&(t=0)),this.option.currentIndex=t},e.prototype.getCurrentIndex=function(){return this.option.currentIndex},e.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},e.prototype.setPlayState=function(t){this.option.autoPlay=!!t},e.prototype.getPlayState=function(){return!!this.option.autoPlay},e.prototype._initData=function(){var t=this.option,a=t.data||[],n=t.axisType,i=this._names=[],o;n==="category"?(o=[],C(a,function(u,f){var h=ee(yo(u),""),v;tt(u)?(v=et(u),v.value=f):v=f,o.push(v),i.push(h)})):o=a;var s={category:"ordinal",time:"time",value:"number"}[n]||"number",l=this._data=new Me([{name:"value",type:s}],this);l.initData(o,i)},e.prototype.getData=function(){return this._data},e.prototype.getCategories=function(){if(this.get("axisType")==="category")return this._names.slice()},e.type="timeline",e.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},e}(bt);const mw=bY;var XI=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="timeline.slider",e.defaultOption=on(mw.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),e}(mw);jt(XI,zg.prototype);const AY=XI;var TY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="timeline",e}(Ut);const CY=TY;var DY=function(r){k(e,r);function e(t,a,n,i){var o=r.call(this,t,a,n)||this;return o.type=i||"value",o}return e.prototype.getLabelModel=function(){return this.model.getModel("label")},e.prototype.isHorizontal=function(){return this.model.get("orient")==="horizontal"},e}(Cr);const MY=DY;var Jc=Math.PI,_w=wt(),IY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(t,a){this.api=a},e.prototype.render=function(t,a,n){if(this.model=t,this.api=n,this.ecModel=a,this.group.removeAll(),t.get("show",!0)){var i=this._layout(t,n),o=this._createGroup("_mainGroup"),s=this._createGroup("_labelGroup"),l=this._axis=this._createAxis(i,t);t.formatTooltip=function(u){var f=l.scale.getLabel({value:u});return se("nameValue",{noName:!0,value:f})},C(["AxisLine","AxisTick","Control","CurrentPointer"],function(u){this["_render"+u](i,o,l,t)},this),this._renderAxisLabel(i,s,l,t),this._position(i,t)}this._doPlayStop(),this._updateTicksStatus()},e.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},e.prototype.dispose=function(){this._clearTimer()},e.prototype._layout=function(t,a){var n=t.get(["label","position"]),i=t.get("orient"),o=PY(t,a),s;n==null||n==="auto"?s=i==="horizontal"?o.y+o.height/2=0||s==="+"?"left":"right"},u={horizontal:s>=0||s==="+"?"top":"bottom",vertical:"middle"},f={horizontal:0,vertical:Jc/2},h=i==="vertical"?o.height:o.width,v=t.getModel("controlStyle"),c=v.get("show",!0),p=c?v.get("itemSize"):0,d=c?v.get("itemGap"):0,g=p+d,y=t.get(["label","rotate"])||0;y=y*Jc/180;var m,_,S,w=v.get("position",!0),x=c&&v.get("showPlayBtn",!0),b=c&&v.get("showPrevBtn",!0),A=c&&v.get("showNextBtn",!0),T=0,D=h;w==="left"||w==="bottom"?(x&&(m=[0,0],T+=g),b&&(_=[T,0],T+=g),A&&(S=[D-p,0],D-=g)):(x&&(m=[D-p,0],D-=g),b&&(_=[0,0],T+=g),A&&(S=[D-p,0],D-=g));var M=[T,D];return t.get("inverse")&&M.reverse(),{viewRect:o,mainLength:h,orient:i,rotation:f[i],labelRotation:y,labelPosOpt:s,labelAlign:t.get(["label","align"])||l[i],labelBaseline:t.get(["label","verticalAlign"])||t.get(["label","baseline"])||u[i],playPosition:m,prevBtnPosition:_,nextBtnPosition:S,axisExtent:M,controlSize:p,controlGap:d}},e.prototype._position=function(t,a){var n=this._mainGroup,i=this._labelGroup,o=t.viewRect;if(t.orient==="vertical"){var s=lr(),l=o.x,u=o.y+o.height;Wr(s,s,[-l,-u]),pi(s,s,-Jc/2),Wr(s,s,[l,u]),o=o.clone(),o.applyTransform(s)}var f=m(o),h=m(n.getBoundingRect()),v=m(i.getBoundingRect()),c=[n.x,n.y],p=[i.x,i.y];p[0]=c[0]=f[0][0];var d=t.labelPosOpt;if(d==null||U(d)){var g=d==="+"?0:1;_(c,h,f,1,g),_(p,v,f,1,1-g)}else{var g=d>=0?0:1;_(c,h,f,1,g),p[1]=c[1]+d}n.setPosition(c),i.setPosition(p),n.rotation=i.rotation=t.rotation,y(n),y(i);function y(S){S.originX=f[0][0]-S.x,S.originY=f[1][0]-S.y}function m(S){return[[S.x,S.x+S.width],[S.y,S.y+S.height]]}function _(S,w,x,b,A){S[b]+=x[b][A]-w[b][A]}},e.prototype._createAxis=function(t,a){var n=a.getData(),i=a.get("axisType"),o=LY(a,i);o.getTicks=function(){return n.mapArray(["value"],function(u){return{value:u}})};var s=n.getDataExtent("value");o.setExtent(s[0],s[1]),o.calcNiceTicks();var l=new MY("value",o,t.axisExtent,i);return l.model=a,l},e.prototype._createGroup=function(t){var a=this[t]=new at;return this.group.add(a),a},e.prototype._renderAxisLine=function(t,a,n,i){var o=n.getExtent();if(i.get(["lineStyle","show"])){var s=new he({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:B({lineCap:"round"},i.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});a.add(s);var l=this._progressLine=new he({shape:{x1:o[0],x2:this._currentPointer?this._currentPointer.x:o[0],y1:0,y2:0},style:J({lineCap:"round",lineWidth:s.style.lineWidth},i.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});a.add(l)}},e.prototype._renderAxisTick=function(t,a,n,i){var o=this,s=i.getData(),l=n.scale.getTicks();this._tickSymbols=[],C(l,function(u){var f=n.dataToCoord(u.value),h=s.getItemModel(u.value),v=h.getModel("itemStyle"),c=h.getModel(["emphasis","itemStyle"]),p=h.getModel(["progress","itemStyle"]),d={x:f,y:0,onclick:$(o._changeTimeline,o,u.value)},g=Sw(h,v,a,d);g.ensureState("emphasis").style=c.getItemStyle(),g.ensureState("progress").style=p.getItemStyle(),ti(g);var y=nt(g);h.get("tooltip")?(y.dataIndex=u.value,y.dataModel=i):y.dataIndex=y.dataModel=null,o._tickSymbols.push(g)})},e.prototype._renderAxisLabel=function(t,a,n,i){var o=this,s=n.getLabelModel();if(s.get("show")){var l=i.getData(),u=n.getViewLabels();this._tickLabels=[],C(u,function(f){var h=f.tickValue,v=l.getItemModel(h),c=v.getModel("label"),p=v.getModel(["emphasis","label"]),d=v.getModel(["progress","label"]),g=n.dataToCoord(f.tickValue),y=new Tt({x:g,y:0,rotation:t.labelRotation-t.rotation,onclick:$(o._changeTimeline,o,h),silent:!1,style:Ot(c,{text:f.formattedLabel,align:t.labelAlign,verticalAlign:t.labelBaseline})});y.ensureState("emphasis").style=Ot(p),y.ensureState("progress").style=Ot(d),a.add(y),ti(y),_w(y).dataIndex=h,o._tickLabels.push(y)})}},e.prototype._renderControl=function(t,a,n,i){var o=t.controlSize,s=t.rotation,l=i.getModel("controlStyle").getItemStyle(),u=i.getModel(["emphasis","controlStyle"]).getItemStyle(),f=i.getPlayState(),h=i.get("inverse",!0);v(t.nextBtnPosition,"next",$(this._changeTimeline,this,h?"-":"+")),v(t.prevBtnPosition,"prev",$(this._changeTimeline,this,h?"+":"-")),v(t.playPosition,f?"stop":"play",$(this._handlePlayClick,this,!f),!0);function v(c,p,d,g){if(c){var y=br(lt(i.get(["controlStyle",p+"BtnSize"]),o),o),m=[0,-y/2,y,y],_=RY(i,p+"Icon",m,{x:c[0],y:c[1],originX:o/2,originY:0,rotation:g?-s:0,rectHover:!0,style:l,onclick:d});_.ensureState("emphasis").style=u,a.add(_),ti(_)}}},e.prototype._renderCurrentPointer=function(t,a,n,i){var o=i.getData(),s=i.getCurrentIndex(),l=o.getItemModel(s).getModel("checkpointStyle"),u=this,f={onCreate:function(h){h.draggable=!0,h.drift=$(u._handlePointerDrag,u),h.ondragend=$(u._handlePointerDragend,u),xw(h,u._progressLine,s,n,i,!0)},onUpdate:function(h){xw(h,u._progressLine,s,n,i)}};this._currentPointer=Sw(l,l,this._mainGroup,{},this._currentPointer,f)},e.prototype._handlePlayClick=function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},e.prototype._handlePointerDrag=function(t,a,n){this._clearTimer(),this._pointerChangeTimeline([n.offsetX,n.offsetY])},e.prototype._handlePointerDragend=function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},e.prototype._pointerChangeTimeline=function(t,a){var n=this._toAxisCoord(t)[0],i=this._axis,o=or(i.getExtent().slice());n>o[1]&&(n=o[1]),n=0&&(o[i]=+o[i].toFixed(v)),[o,h]}var jc={min:it(Pu,"min"),max:it(Pu,"max"),average:it(Pu,"average"),median:it(Pu,"median")};function sl(r,e){if(e){var t=r.getData(),a=r.coordinateSystem,n=a.dimensions;if(!GY(e)&&!z(e.coord)&&a){var i=qI(e,t,a,r);if(e=et(e),e.type&&jc[e.type]&&i.baseAxis&&i.valueAxis){var o=vt(n,i.baseAxis.dim),s=vt(n,i.valueAxis.dim),l=jc[e.type](t,i.baseDataDim,i.valueDataDim,o,s);e.coord=l[0],e.value=l[1]}else e.coord=[e.xAxis!=null?e.xAxis:e.radiusAxis,e.yAxis!=null?e.yAxis:e.angleAxis]}if(e.coord==null)e.coord=[];else for(var u=e.coord,f=0;f<2;f++)jc[u[f]]&&(u[f]=em(t,t.mapDimension(n[f]),u[f]));return e}}function qI(r,e,t,a){var n={};return r.valueIndex!=null||r.valueDim!=null?(n.valueDataDim=r.valueIndex!=null?e.getDimension(r.valueIndex):r.valueDim,n.valueAxis=t.getAxis(FY(a,n.valueDataDim)),n.baseAxis=t.getOtherAxis(n.valueAxis),n.baseDataDim=e.mapDimension(n.baseAxis.dim)):(n.baseAxis=a.getBaseAxis(),n.valueAxis=t.getOtherAxis(n.baseAxis),n.baseDataDim=e.mapDimension(n.baseAxis.dim),n.valueDataDim=e.mapDimension(n.valueAxis.dim)),n}function FY(r,e){var t=r.getData().getDimensionInfo(e);return t&&t.coordDim}function ll(r,e){return r&&r.containData&&e.coord&&!Wd(e)?r.containData(e.coord):!0}function HY(r,e,t){return r&&r.containZone&&e.coord&&t.coord&&!Wd(e)&&!Wd(t)?r.containZone(e.coord,t.coord):!0}function KI(r,e){return r?function(t,a,n,i){var o=i<2?t.coord&&t.coord[i]:t.value;return Ya(o,e[i])}:function(t,a,n,i){return Ya(t.value,e[i])}}function em(r,e,t){if(t==="average"){var a=0,n=0;return r.each(e,function(i,o){isNaN(i)||(a+=i,n++)}),a/n}else return t==="median"?r.getMedian(e):r.getDataExtent(e)[t==="max"?1:0]}var tp=wt(),WY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.init=function(){this.markerGroupMap=q()},e.prototype.render=function(t,a,n){var i=this,o=this.markerGroupMap;o.each(function(s){tp(s).keep=!1}),a.eachSeries(function(s){var l=an.getMarkerModelFromSeries(s,i.type);l&&i.renderSeries(s,l,a,n)}),o.each(function(s){!tp(s).keep&&i.group.remove(s.group)})},e.prototype.markKeep=function(t){tp(t).keep=!0},e.prototype.toggleBlurSeries=function(t,a){var n=this;C(t,function(i){var o=an.getMarkerModelFromSeries(i,n.type);if(o){var s=o.getData();s.eachItemGraphicEl(function(l){l&&(a?bA(l):_g(l))})}})},e.type="marker",e}(Ut);const rm=WY;function bw(r,e,t){var a=e.coordinateSystem;r.each(function(n){var i=r.getItemModel(n),o,s=H(i.get("x"),t.getWidth()),l=H(i.get("y"),t.getHeight());if(!isNaN(s)&&!isNaN(l))o=[s,l];else if(e.getMarkerPosition)o=e.getMarkerPosition(r.getValues(r.dimensions,n));else if(a){var u=r.get(a.dimensions[0],n),f=r.get(a.dimensions[1],n);o=a.dataToPoint([u,f])}isNaN(s)||(o[0]=s),isNaN(l)||(o[1]=l),r.setItemLayout(n,o)})}var UY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.updateTransform=function(t,a,n){a.eachSeries(function(i){var o=an.getMarkerModelFromSeries(i,"markPoint");o&&(bw(o.getData(),i,n),this.markerGroupMap.get(i.id).updateLayout())},this)},e.prototype.renderSeries=function(t,a,n,i){var o=t.coordinateSystem,s=t.id,l=t.getData(),u=this.markerGroupMap,f=u.get(s)||u.set(s,new Al),h=$Y(o,t,a);a.setData(h),bw(a.getData(),t,i),h.each(function(v){var c=h.getItemModel(v),p=c.getShallow("symbol"),d=c.getShallow("symbolSize"),g=c.getShallow("symbolRotate"),y=c.getShallow("symbolOffset"),m=c.getShallow("symbolKeepAspect");if(K(p)||K(d)||K(g)||K(y)){var _=a.getRawValue(v),S=a.getDataParams(v);K(p)&&(p=p(_,S)),K(d)&&(d=d(_,S)),K(g)&&(g=g(_,S)),K(y)&&(y=y(_,S))}var w=c.getModel("itemStyle").getItemStyle(),x=ml(l,"color");w.fill||(w.fill=x),h.setItemVisual(v,{symbol:p,symbolSize:d,symbolRotate:g,symbolOffset:y,symbolKeepAspect:m,style:w})}),f.updateData(h),this.group.add(f.group),h.eachItemGraphicEl(function(v){v.traverse(function(c){nt(c).dataModel=a})}),this.markKeep(f),f.group.silent=a.get("silent")||t.get("silent")},e.type="markPoint",e}(rm);function $Y(r,e,t){var a;r?a=G(r&&r.dimensions,function(s){var l=e.getData().getDimensionInfo(e.getData().mapDimension(s))||{};return B(B({},l),{name:s,ordinalMeta:null})}):a=[{name:"value",type:"float"}];var n=new Me(a,t),i=G(t.get("data"),it(sl,e));r&&(i=Pt(i,it(ll,r)));var o=KI(!!r,a);return n.initData(i,null,o),n}const YY=UY;function XY(r){r.registerComponentModel(zY),r.registerComponentView(YY),r.registerPreprocessor(function(e){tm(e.series,"markPoint")&&(e.markPoint=e.markPoint||{})})}var ZY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.createMarkerModelFromSeries=function(t,a,n){return new e(t,a,n)},e.type="markLine",e.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},e}(an);const qY=ZY;var Ru=wt(),KY=function(r,e,t,a){var n=r.getData(),i;if(z(a))i=a;else{var o=a.type;if(o==="min"||o==="max"||o==="average"||o==="median"||a.xAxis!=null||a.yAxis!=null){var s=void 0,l=void 0;if(a.yAxis!=null||a.xAxis!=null)s=e.getAxis(a.yAxis!=null?"y":"x"),l=fe(a.yAxis,a.xAxis);else{var u=qI(a,n,e,r);s=u.valueAxis;var f=NC(n,u.valueDataDim);l=em(n,f,o)}var h=s.dim==="x"?0:1,v=1-h,c=et(a),p={coord:[]};c.type=null,c.coord=[],c.coord[v]=-1/0,p.coord[v]=1/0;var d=t.get("precision");d>=0&&Ct(l)&&(l=+l.toFixed(Math.min(d,20))),c.coord[h]=p.coord[h]=l,i=[c,p,{type:o,valueIndex:a.valueIndex,value:l}]}else i=[]}var g=[sl(r,i[0]),sl(r,i[1]),B({},i[2])];return g[2].type=g[2].type||null,ut(g[2],g[0]),ut(g[2],g[1]),g};function Yf(r){return!isNaN(r)&&!isFinite(r)}function Aw(r,e,t,a){var n=1-r,i=a.dimensions[r];return Yf(e[n])&&Yf(t[n])&&e[r]===t[r]&&a.getAxis(i).containData(e[r])}function QY(r,e){if(r.type==="cartesian2d"){var t=e[0].coord,a=e[1].coord;if(t&&a&&(Aw(1,t,a,r)||Aw(0,t,a,r)))return!0}return ll(r,e[0])&&ll(r,e[1])}function ep(r,e,t,a,n){var i=a.coordinateSystem,o=r.getItemModel(e),s,l=H(o.get("x"),n.getWidth()),u=H(o.get("y"),n.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(a.getMarkerPosition)s=a.getMarkerPosition(r.getValues(r.dimensions,e));else{var f=i.dimensions,h=r.get(f[0],e),v=r.get(f[1],e);s=i.dataToPoint([h,v])}if(yi(i,"cartesian2d")){var c=i.getAxis("x"),p=i.getAxis("y"),f=i.dimensions;Yf(r.get(f[0],e))?s[0]=c.toGlobalCoord(c.getExtent()[t?0:1]):Yf(r.get(f[1],e))&&(s[1]=p.toGlobalCoord(p.getExtent()[t?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}r.setItemLayout(e,s)}var JY=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.updateTransform=function(t,a,n){a.eachSeries(function(i){var o=an.getMarkerModelFromSeries(i,"markLine");if(o){var s=o.getData(),l=Ru(o).from,u=Ru(o).to;l.each(function(f){ep(l,f,!0,i,n),ep(u,f,!1,i,n)}),s.each(function(f){s.setItemLayout(f,[l.getItemLayout(f),u.getItemLayout(f)])}),this.markerGroupMap.get(i.id).updateLayout()}},this)},e.prototype.renderSeries=function(t,a,n,i){var o=t.coordinateSystem,s=t.id,l=t.getData(),u=this.markerGroupMap,f=u.get(s)||u.set(s,new Ty);this.group.add(f.group);var h=jY(o,t,a),v=h.from,c=h.to,p=h.line;Ru(a).from=v,Ru(a).to=c,a.setData(p);var d=a.get("symbol"),g=a.get("symbolSize"),y=a.get("symbolRotate"),m=a.get("symbolOffset");z(d)||(d=[d,d]),z(g)||(g=[g,g]),z(y)||(y=[y,y]),z(m)||(m=[m,m]),h.from.each(function(S){_(v,S,!0),_(c,S,!1)}),p.each(function(S){var w=p.getItemModel(S).getModel("lineStyle").getLineStyle();p.setItemLayout(S,[v.getItemLayout(S),c.getItemLayout(S)]),w.stroke==null&&(w.stroke=v.getItemVisual(S,"style").fill),p.setItemVisual(S,{fromSymbolKeepAspect:v.getItemVisual(S,"symbolKeepAspect"),fromSymbolOffset:v.getItemVisual(S,"symbolOffset"),fromSymbolRotate:v.getItemVisual(S,"symbolRotate"),fromSymbolSize:v.getItemVisual(S,"symbolSize"),fromSymbol:v.getItemVisual(S,"symbol"),toSymbolKeepAspect:c.getItemVisual(S,"symbolKeepAspect"),toSymbolOffset:c.getItemVisual(S,"symbolOffset"),toSymbolRotate:c.getItemVisual(S,"symbolRotate"),toSymbolSize:c.getItemVisual(S,"symbolSize"),toSymbol:c.getItemVisual(S,"symbol"),style:w})}),f.updateData(p),h.line.eachItemGraphicEl(function(S){nt(S).dataModel=a,S.traverse(function(w){nt(w).dataModel=a})});function _(S,w,x){var b=S.getItemModel(w);ep(S,w,x,t,i);var A=b.getModel("itemStyle").getItemStyle();A.fill==null&&(A.fill=ml(l,"color")),S.setItemVisual(w,{symbolKeepAspect:b.get("symbolKeepAspect"),symbolOffset:lt(b.get("symbolOffset",!0),m[x?0:1]),symbolRotate:lt(b.get("symbolRotate",!0),y[x?0:1]),symbolSize:lt(b.get("symbolSize"),g[x?0:1]),symbol:lt(b.get("symbol",!0),d[x?0:1]),style:A})}this.markKeep(f),f.group.silent=a.get("silent")||t.get("silent")},e.type="markLine",e}(rm);function jY(r,e,t){var a;r?a=G(r&&r.dimensions,function(u){var f=e.getData().getDimensionInfo(e.getData().mapDimension(u))||{};return B(B({},f),{name:u,ordinalMeta:null})}):a=[{name:"value",type:"float"}];var n=new Me(a,t),i=new Me(a,t),o=new Me([],t),s=G(t.get("data"),it(KY,e,r,t));r&&(s=Pt(s,it(QY,r)));var l=KI(!!r,a);return n.initData(G(s,function(u){return u[0]}),null,l),i.initData(G(s,function(u){return u[1]}),null,l),o.initData(G(s,function(u){return u[2]})),o.hasItemOption=!0,{from:n,to:i,line:o}}const t9=JY;function e9(r){r.registerComponentModel(qY),r.registerComponentView(t9),r.registerPreprocessor(function(e){tm(e.series,"markLine")&&(e.markLine=e.markLine||{})})}var r9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.createMarkerModelFromSeries=function(t,a,n){return new e(t,a,n)},e.type="markArea",e.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},e}(an);const a9=r9;var Eu=wt(),n9=function(r,e,t,a){var n=a[0],i=a[1];if(!(!n||!i)){var o=sl(r,n),s=sl(r,i),l=o.coord,u=s.coord;l[0]=fe(l[0],-1/0),l[1]=fe(l[1],-1/0),u[0]=fe(u[0],1/0),u[1]=fe(u[1],1/0);var f=eg([{},o,s]);return f.coord=[o.coord,s.coord],f.x0=o.x,f.y0=o.y,f.x1=s.x,f.y1=s.y,f}};function Xf(r){return!isNaN(r)&&!isFinite(r)}function Tw(r,e,t,a){var n=1-r;return Xf(e[n])&&Xf(t[n])}function i9(r,e){var t=e.coord[0],a=e.coord[1],n={coord:t,x:e.x0,y:e.y0},i={coord:a,x:e.x1,y:e.y1};return yi(r,"cartesian2d")?t&&a&&(Tw(1,t,a)||Tw(0,t,a))?!0:HY(r,n,i):ll(r,n)||ll(r,i)}function Cw(r,e,t,a,n){var i=a.coordinateSystem,o=r.getItemModel(e),s,l=H(o.get(t[0]),n.getWidth()),u=H(o.get(t[1]),n.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(a.getMarkerPosition){var f=r.getValues(["x0","y0"],e),h=r.getValues(["x1","y1"],e),v=i.clampData(f),c=i.clampData(h),p=[];t[0]==="x0"?p[0]=v[0]>c[0]?h[0]:f[0]:p[0]=v[0]>c[0]?f[0]:h[0],t[1]==="y0"?p[1]=v[1]>c[1]?h[1]:f[1]:p[1]=v[1]>c[1]?f[1]:h[1],s=a.getMarkerPosition(p,t,!0)}else{var d=r.get(t[0],e),g=r.get(t[1],e),y=[d,g];i.clampData&&i.clampData(y,y),s=i.dataToPoint(y,!0)}if(yi(i,"cartesian2d")){var m=i.getAxis("x"),_=i.getAxis("y"),d=r.get(t[0],e),g=r.get(t[1],e);Xf(d)?s[0]=m.toGlobalCoord(m.getExtent()[t[0]==="x0"?0:1]):Xf(g)&&(s[1]=_.toGlobalCoord(_.getExtent()[t[1]==="y0"?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}return s}var Dw=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],o9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.updateTransform=function(t,a,n){a.eachSeries(function(i){var o=an.getMarkerModelFromSeries(i,"markArea");if(o){var s=o.getData();s.each(function(l){var u=G(Dw,function(h){return Cw(s,l,h,i,n)});s.setItemLayout(l,u);var f=s.getItemGraphicEl(l);f.setShape("points",u)})}},this)},e.prototype.renderSeries=function(t,a,n,i){var o=t.coordinateSystem,s=t.id,l=t.getData(),u=this.markerGroupMap,f=u.get(s)||u.set(s,{group:new at});this.group.add(f.group),this.markKeep(f);var h=s9(o,t,a);a.setData(h),h.each(function(v){var c=G(Dw,function(A){return Cw(h,v,A,t,i)}),p=o.getAxis("x").scale,d=o.getAxis("y").scale,g=p.getExtent(),y=d.getExtent(),m=[p.parse(h.get("x0",v)),p.parse(h.get("x1",v))],_=[d.parse(h.get("y0",v)),d.parse(h.get("y1",v))];or(m),or(_);var S=!(g[0]>m[1]||g[1]_[1]||y[1]<_[0]),w=!S;h.setItemLayout(v,{points:c,allClipped:w});var x=h.getItemModel(v).getModel("itemStyle").getItemStyle(),b=ml(l,"color");x.fill||(x.fill=b,U(x.fill)&&(x.fill=sf(x.fill,.4))),x.stroke||(x.stroke=b),h.setItemVisual(v,"style",x)}),h.diff(Eu(f).data).add(function(v){var c=h.getItemLayout(v);if(!c.allClipped){var p=new ze({shape:{points:c.points}});h.setItemGraphicEl(v,p),f.group.add(p)}}).update(function(v,c){var p=Eu(f).data.getItemGraphicEl(c),d=h.getItemLayout(v);d.allClipped?p&&f.group.remove(p):(p?Dt(p,{shape:{points:d.points}},a,v):p=new ze({shape:{points:d.points}}),h.setItemGraphicEl(v,p),f.group.add(p))}).remove(function(v){var c=Eu(f).data.getItemGraphicEl(v);f.group.remove(c)}).execute(),h.eachItemGraphicEl(function(v,c){var p=h.getItemModel(c),d=h.getItemVisual(c,"style");v.useStyle(h.getItemVisual(c,"style")),ge(v,oe(p),{labelFetcher:a,labelDataIndex:c,defaultText:h.getName(c)||"",inheritColor:U(d.fill)?sf(d.fill,1):"#000"}),de(v,p),Wt(v,null,null,p.get(["emphasis","disabled"])),nt(v).dataModel=a}),Eu(f).data=h,f.group.silent=a.get("silent")||t.get("silent")},e.type="markArea",e}(rm);function s9(r,e,t){var a,n,i=["x0","y0","x1","y1"];if(r){var o=G(r&&r.dimensions,function(u){var f=e.getData(),h=f.getDimensionInfo(f.mapDimension(u))||{};return B(B({},h),{name:u,ordinalMeta:null})});n=G(i,function(u,f){return{name:u,type:o[f%2].type}}),a=new Me(n,t)}else n=[{name:"value",type:"float"}],a=new Me(n,t);var s=G(t.get("data"),it(n9,e,r,t));r&&(s=Pt(s,it(i9,r)));var l=r?function(u,f,h,v){var c=u.coord[Math.floor(v/2)][v%2];return Ya(c,n[v])}:function(u,f,h,v){return Ya(u.value,n[v])};return a.initData(s,null,l),a.hasItemOption=!0,a}const l9=o9;function u9(r){r.registerComponentModel(a9),r.registerComponentView(l9),r.registerPreprocessor(function(e){tm(e.series,"markArea")&&(e.markArea=e.markArea||{})})}var f9=function(r,e){if(e==="all")return{type:"all",title:r.getLocaleModel().get(["legend","selector","all"])};if(e==="inverse")return{type:"inverse",title:r.getLocaleModel().get(["legend","selector","inverse"])}},h9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.layoutMode={type:"box",ignoreSize:!0},t}return e.prototype.init=function(t,a,n){this.mergeDefaultAndTheme(t,n),t.selected=t.selected||{},this._updateSelector(t)},e.prototype.mergeOption=function(t,a){r.prototype.mergeOption.call(this,t,a),this._updateSelector(t)},e.prototype._updateSelector=function(t){var a=t.selector,n=this.ecModel;a===!0&&(a=t.selector=["all","inverse"]),z(a)&&C(a,function(i,o){U(i)&&(i={type:i}),a[o]=ut(i,f9(n,i.type))})},e.prototype.optionUpdated=function(){this._updateData(this.ecModel);var t=this._data;if(t[0]&&this.get("selectedMode")==="single"){for(var a=!1,n=0;n=0},e.prototype.getOrient=function(){return this.get("orient")==="vertical"?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},e.type="legend.plain",e.dependencies=["series"],e.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:"#ccc",inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}},e}(bt);const Ud=h9;var zi=it,$d=C,ku=at,v9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.newlineDisabled=!1,t}return e.prototype.init=function(){this.group.add(this._contentGroup=new ku),this.group.add(this._selectorGroup=new ku),this._isFirstRender=!0},e.prototype.getContentGroup=function(){return this._contentGroup},e.prototype.getSelectorGroup=function(){return this._selectorGroup},e.prototype.render=function(t,a,n){var i=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),!!t.get("show",!0)){var o=t.get("align"),s=t.get("orient");(!o||o==="auto")&&(o=t.get("left")==="right"&&s==="vertical"?"right":"left");var l=t.get("selector",!0),u=t.get("selectorPosition",!0);l&&(!u||u==="auto")&&(u=s==="horizontal"?"end":"start"),this.renderInner(o,t,a,n,l,s,u);var f=t.getBoxLayoutParams(),h={width:n.getWidth(),height:n.getHeight()},v=t.get("padding"),c=re(f,h,v),p=this.layoutInner(t,o,c,i,l,u),d=re(J({width:p.width,height:p.height},f),h,v);this.group.x=d.x-p.x,this.group.y=d.y-p.y,this.group.markRedraw(),this.group.add(this._backgroundEl=VI(p,t))}},e.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},e.prototype.renderInner=function(t,a,n,i,o,s,l){var u=this.getContentGroup(),f=q(),h=a.get("selectedMode"),v=[];n.eachRawSeries(function(c){!c.get("legendHoverLink")&&v.push(c.id)}),$d(a.getData(),function(c,p){var d=c.get("name");if(!this.newlineDisabled&&(d===""||d===` +`)){var g=new ku;g.newline=!0,u.add(g);return}var y=n.getSeriesByName(d)[0];if(!f.get(d))if(y){var m=y.getData(),_=m.getVisual("legendLineStyle")||{},S=m.getVisual("legendIcon"),w=m.getVisual("style"),x=this._createItem(y,d,p,c,a,t,_,w,S,h,i);x.on("click",zi(Mw,d,null,i,v)).on("mouseover",zi(Yd,y.name,null,i,v)).on("mouseout",zi(Xd,y.name,null,i,v)),f.set(d,!0)}else n.eachRawSeries(function(b){if(!f.get(d)&&b.legendVisualProvider){var A=b.legendVisualProvider;if(!A.containName(d))return;var T=A.indexOfName(d),D=A.getItemVisual(T,"style"),M=A.getItemVisual(T,"legendIcon"),I=Ue(D.fill);I&&I[3]===0&&(I[3]=.2,D=B(B({},D),{fill:sa(I,"rgba")}));var L=this._createItem(b,d,p,c,a,t,{},D,M,h,i);L.on("click",zi(Mw,null,d,i,v)).on("mouseover",zi(Yd,null,d,i,v)).on("mouseout",zi(Xd,null,d,i,v)),f.set(d,!0)}},this)},this),o&&this._createSelector(o,a,i,s,l)},e.prototype._createSelector=function(t,a,n,i,o){var s=this.getSelectorGroup();$d(t,function(u){var f=u.type,h=new Tt({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){n.dispatchAction({type:f==="all"?"legendAllSelect":"legendInverseSelect"})}});s.add(h);var v=a.getModel("selectorLabel"),c=a.getModel(["emphasis","selectorLabel"]);ge(h,{normal:v,emphasis:c},{defaultText:u.title}),ti(h)})},e.prototype._createItem=function(t,a,n,i,o,s,l,u,f,h,v){var c=t.visualDrawType,p=o.get("itemWidth"),d=o.get("itemHeight"),g=o.isSelected(a),y=i.get("symbolRotate"),m=i.get("symbolKeepAspect"),_=i.get("icon");f=_||f||"roundRect";var S=c9(f,i,l,u,c,g,v),w=new ku,x=i.getModel("textStyle");if(K(t.getLegendIcon)&&(!_||_==="inherit"))w.add(t.getLegendIcon({itemWidth:p,itemHeight:d,icon:f,iconRotate:y,itemStyle:S.itemStyle,lineStyle:S.lineStyle,symbolKeepAspect:m}));else{var b=_==="inherit"&&t.getData().getVisual("symbol")?y==="inherit"?t.getData().getVisual("symbolRotate"):y:0;w.add(p9({itemWidth:p,itemHeight:d,icon:f,iconRotate:b,itemStyle:S.itemStyle,lineStyle:S.lineStyle,symbolKeepAspect:m}))}var A=s==="left"?p+5:-5,T=s,D=o.get("formatter"),M=a;U(D)&&D?M=D.replace("{name}",a??""):K(D)&&(M=D(a));var I=i.get("inactiveColor");w.add(new Tt({style:Ot(x,{text:M,x:A,y:d/2,fill:g?x.getTextColor():I,align:T,verticalAlign:"middle"})}));var L=new xt({shape:w.getBoundingRect(),invisible:!0}),P=i.getModel("tooltip");return P.get("show")&&So({el:L,componentModel:o,itemName:a,itemTooltipOption:P.option}),w.add(L),w.eachChild(function(R){R.silent=!0}),L.silent=!h,this.getContentGroup().add(w),ti(w),w.__legendDataIndex=n,w},e.prototype.layoutInner=function(t,a,n,i,o,s){var l=this.getContentGroup(),u=this.getSelectorGroup();ri(t.get("orient"),l,t.get("itemGap"),n.width,n.height);var f=l.getBoundingRect(),h=[-f.x,-f.y];if(u.markRedraw(),l.markRedraw(),o){ri("horizontal",u,t.get("selectorItemGap",!0));var v=u.getBoundingRect(),c=[-v.x,-v.y],p=t.get("selectorButtonGap",!0),d=t.getOrient().index,g=d===0?"width":"height",y=d===0?"height":"width",m=d===0?"y":"x";s==="end"?c[d]+=f[g]+p:h[d]+=v[g]+p,c[1-d]+=f[y]/2-v[y]/2,u.x=c[0],u.y=c[1],l.x=h[0],l.y=h[1];var _={x:0,y:0};return _[g]=f[g]+p+v[g],_[y]=Math.max(f[y],v[y]),_[m]=Math.min(0,v[m]+c[1-d]),_}else return l.x=h[0],l.y=h[1],this.group.getBoundingRect()},e.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},e.type="legend.plain",e}(Ut);function c9(r,e,t,a,n,i,o){function s(g,y){g.lineWidth==="auto"&&(g.lineWidth=y.lineWidth>0?2:0),$d(g,function(m,_){g[_]==="inherit"&&(g[_]=y[_])})}var l=e.getModel("itemStyle"),u=l.getItemStyle(),f=r.lastIndexOf("empty",0)===0?"fill":"stroke",h=l.getShallow("decal");u.decal=!h||h==="inherit"?a.decal:oo(h,o),u.fill==="inherit"&&(u.fill=a[n]),u.stroke==="inherit"&&(u.stroke=a[f]),u.opacity==="inherit"&&(u.opacity=(n==="fill"?a:t).opacity),s(u,a);var v=e.getModel("lineStyle"),c=v.getLineStyle();if(s(c,t),u.fill==="auto"&&(u.fill=a.fill),u.stroke==="auto"&&(u.stroke=a.fill),c.stroke==="auto"&&(c.stroke=a.fill),!i){var p=e.get("inactiveBorderWidth"),d=u[f];u.lineWidth=p==="auto"?a.lineWidth>0&&d?2:0:u.lineWidth,u.fill=e.get("inactiveColor"),u.stroke=e.get("inactiveBorderColor"),c.stroke=v.get("inactiveColor"),c.lineWidth=v.get("inactiveWidth")}return{itemStyle:u,lineStyle:c}}function p9(r){var e=r.icon||"roundRect",t=Jt(e,0,0,r.itemWidth,r.itemHeight,r.itemStyle.fill,r.symbolKeepAspect);return t.setStyle(r.itemStyle),t.rotation=(r.iconRotate||0)*Math.PI/180,t.setOrigin([r.itemWidth/2,r.itemHeight/2]),e.indexOf("empty")>-1&&(t.style.stroke=t.style.fill,t.style.fill="#fff",t.style.lineWidth=2),t}function Mw(r,e,t,a){Xd(r,e,t,a),t.dispatchAction({type:"legendToggleSelect",name:r??e}),Yd(r,e,t,a)}function QI(r){for(var e=r.getZr().storage.getDisplayList(),t,a=0,n=e.length;an[o],g=[-c.x,-c.y];a||(g[i]=f[u]);var y=[0,0],m=[-p.x,-p.y],_=lt(t.get("pageButtonGap",!0),t.get("itemGap",!0));if(d){var S=t.get("pageButtonPosition",!0);S==="end"?m[i]+=n[o]-p[o]:y[i]+=p[o]+_}m[1-i]+=c[s]/2-p[s]/2,f.setPosition(g),h.setPosition(y),v.setPosition(m);var w={x:0,y:0};if(w[o]=d?n[o]:c[o],w[s]=Math.max(c[s],p[s]),w[l]=Math.min(0,p[l]+m[1-i]),h.__rectSize=n[o],d){var x={x:0,y:0};x[o]=Math.max(n[o]-p[o]-_,0),x[s]=w[s],h.setClipPath(new xt({shape:x})),h.__rectSize=x[o]}else v.eachChild(function(A){A.attr({invisible:!0,silent:!0})});var b=this._getPageInfo(t);return b.pageIndex!=null&&Dt(f,{x:b.contentPosition[0],y:b.contentPosition[1]},d?t:null),this._updatePageInfoView(t,b),w},e.prototype._pageGo=function(t,a,n){var i=this._getPageInfo(a)[t];i!=null&&n.dispatchAction({type:"legendScroll",scrollDataIndex:i,legendId:a.id})},e.prototype._updatePageInfoView=function(t,a){var n=this._controllerGroup;C(["pagePrev","pageNext"],function(f){var h=f+"DataIndex",v=a[h]!=null,c=n.childOfName(f);c&&(c.setStyle("fill",v?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),c.cursor=v?"pointer":"default")});var i=n.childOfName("pageText"),o=t.get("pageFormatter"),s=a.pageIndex,l=s!=null?s+1:0,u=a.pageCount;i&&o&&i.setStyle("text",U(o)?o.replace("{current}",l==null?"":l+"").replace("{total}",u==null?"":u+""):o({current:l,total:u}))},e.prototype._getPageInfo=function(t){var a=t.get("scrollDataIndex",!0),n=this.getContentGroup(),i=this._containerGroup.__rectSize,o=t.getOrient().index,s=rp[o],l=ap[o],u=this._findTargetItemIndex(a),f=n.children(),h=f[u],v=f.length,c=v?1:0,p={contentPosition:[n.x,n.y],pageCount:c,pageIndex:c-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!h)return p;var d=S(h);p.contentPosition[o]=-d.s;for(var g=u+1,y=d,m=d,_=null;g<=v;++g)_=S(f[g]),(!_&&m.e>y.s+i||_&&!w(_,y.s))&&(m.i>y.i?y=m:y=_,y&&(p.pageNextDataIndex==null&&(p.pageNextDataIndex=y.i),++p.pageCount)),m=_;for(var g=u-1,y=d,m=d,_=null;g>=-1;--g)_=S(f[g]),(!_||!w(m,_.s))&&y.i=b&&x.s<=b+i}},e.prototype._findTargetItemIndex=function(t){if(!this._showController)return 0;var a,n=this.getContentGroup(),i;return n.eachChild(function(o,s){var l=o.__legendDataIndex;i==null&&l!=null&&(i=s),l===t&&(a=s)}),a??i},e.type="legend.scroll",e}(JI);const S9=_9;function x9(r){r.registerAction("legendScroll","legendscroll",function(e,t){var a=e.scrollDataIndex;a!=null&&t.eachComponent({mainType:"legend",subType:"scroll",query:e},function(n){n.setScrollDataIndex(a)})})}function w9(r){ct(jI),r.registerComponentModel(m9),r.registerComponentView(S9),x9(r)}function b9(r){ct(jI),ct(w9)}var A9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="dataZoom.inside",e.defaultOption=on(ol.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),e}(ol);const T9=A9;var am=wt();function C9(r,e,t){am(r).coordSysRecordMap.each(function(a){var n=a.dataZoomInfoMap.get(e.uid);n&&(n.getRange=t)})}function D9(r,e){for(var t=am(r).coordSysRecordMap,a=t.keys(),n=0;na[t+e]&&(e=s),n=n&&o.get("preventDefaultMouseMove",!0)}),{controlType:e,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!n}}}function R9(r){r.registerProcessor(r.PRIORITY.PROCESSOR.FILTER,function(e,t){var a=am(t),n=a.coordSysRecordMap||(a.coordSysRecordMap=q());n.each(function(i){i.dataZoomInfoMap=null}),e.eachComponent({mainType:"dataZoom",subType:"inside"},function(i){var o=OI(i);C(o.infoList,function(s){var l=s.model.uid,u=n.get(l)||n.set(l,M9(t,s.model)),f=u.dataZoomInfoMap||(u.dataZoomInfoMap=q());f.set(i.uid,{dzReferCoordSysInfo:s,model:i,getRange:null})})}),n.each(function(i){var o=i.controller,s,l=i.dataZoomInfoMap;if(l){var u=l.keys()[0];u!=null&&(s=l.get(u))}if(!s){t2(n,i);return}var f=P9(l);o.enable(f.controlType,f.opt),o.setPointerChecker(i.containsPoint),Mo(i,"dispatchAction",s.model.get("throttle",!0),"fixRate")})})}var E9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type="dataZoom.inside",t}return e.prototype.render=function(t,a,n){if(r.prototype.render.apply(this,arguments),t.noTarget()){this._clear();return}this.range=t.getPercentRange(),C9(n,t,{pan:$(np.pan,this),zoom:$(np.zoom,this),scrollMove:$(np.scrollMove,this)})},e.prototype.dispose=function(){this._clear(),r.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){D9(this.api,this.dataZoomModel),this.range=null},e.type="dataZoom.inside",e}(Zy),np={zoom:function(r,e,t,a){var n=this.range,i=n.slice(),o=r.axisModels[0];if(o){var s=ip[e](null,[a.originX,a.originY],o,t,r),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(i[1]-i[0])+i[0],u=Math.max(1/a.scale,0);i[0]=(i[0]-l)*u+l,i[1]=(i[1]-l)*u+l;var f=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();if(_i(0,i,[0,100],0,f.minSpan,f.maxSpan),this.range=i,n[0]!==i[0]||n[1]!==i[1])return i}},pan:Pw(function(r,e,t,a,n,i){var o=ip[a]([i.oldX,i.oldY],[i.newX,i.newY],e,n,t);return o.signal*(r[1]-r[0])*o.pixel/o.pixelLength}),scrollMove:Pw(function(r,e,t,a,n,i){var o=ip[a]([0,0],[i.scrollDelta,i.scrollDelta],e,n,t);return o.signal*(r[1]-r[0])*i.scrollDelta})};function Pw(r){return function(e,t,a,n){var i=this.range,o=i.slice(),s=e.axisModels[0];if(s){var l=r(o,s,e,t,a,n);if(_i(l,o,[0,100],"all"),this.range=o,i[0]!==o[0]||i[1]!==o[1])return o}}}var ip={grid:function(r,e,t,a,n){var i=t.axis,o={},s=n.model.coordinateSystem.getRect();return r=r||[0,0],i.dim==="x"?(o.pixel=e[0]-r[0],o.pixelLength=s.width,o.pixelStart=s.x,o.signal=i.inverse?1:-1):(o.pixel=e[1]-r[1],o.pixelLength=s.height,o.pixelStart=s.y,o.signal=i.inverse?-1:1),o},polar:function(r,e,t,a,n){var i=t.axis,o={},s=n.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return r=r?s.pointToCoord(r):[0,0],e=s.pointToCoord(e),t.mainType==="radiusAxis"?(o.pixel=e[0]-r[0],o.pixelLength=l[1]-l[0],o.pixelStart=l[0],o.signal=i.inverse?1:-1):(o.pixel=e[1]-r[1],o.pixelLength=u[1]-u[0],o.pixelStart=u[0],o.signal=i.inverse?-1:1),o},singleAxis:function(r,e,t,a,n){var i=t.axis,o=n.model.coordinateSystem.getRect(),s={};return r=r||[0,0],i.orient==="horizontal"?(s.pixel=e[0]-r[0],s.pixelLength=o.width,s.pixelStart=o.x,s.signal=i.inverse?1:-1):(s.pixel=e[1]-r[1],s.pixelLength=o.height,s.pixelStart=o.y,s.signal=i.inverse?-1:1),s}};const k9=E9;function e2(r){qy(r),r.registerComponentModel(T9),r.registerComponentView(k9),R9(r)}var O9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.type="dataZoom.slider",e.layoutMode="box",e.defaultOption=on(ol.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:"#d2dbee",borderRadius:3,backgroundColor:"rgba(47,69,84,0)",dataBackground:{lineStyle:{color:"#d2dbee",width:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.2}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:"#fff",borderColor:"#ACB8D1"},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:"#D2DBEE",opacity:.7},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:"#6E7079"},brushSelect:!0,brushStyle:{color:"rgba(135,175,274,0.15)"},emphasis:{handleStyle:{borderColor:"#8FB0F7"},moveHandleStyle:{color:"#8FB0F7"}}}),e}(ol);const N9=O9;var ns=xt,Rw=7,B9=1,op=30,V9=7,is="horizontal",Ew="vertical",z9=5,G9=["line","bar","candlestick","scatter"],F9={easing:"cubicOut",duration:100,delay:0},H9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t._displayables={},t}return e.prototype.init=function(t,a){this.api=a,this._onBrush=$(this._onBrush,this),this._onBrushEnd=$(this._onBrushEnd,this)},e.prototype.render=function(t,a,n,i){if(r.prototype.render.apply(this,arguments),Mo(this,"_dispatchZoomAction",t.get("throttle"),"fixRate"),this._orient=t.getOrient(),t.get("show")===!1){this.group.removeAll();return}if(t.noTarget()){this._clear(),this.group.removeAll();return}(!i||i.type!=="dataZoom"||i.from!==this.uid)&&this._buildView(),this._updateView()},e.prototype.dispose=function(){this._clear(),r.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){Zs(this,"_dispatchZoomAction");var t=this.api.getZr();t.off("mousemove",this._onBrush),t.off("mouseup",this._onBrushEnd)},e.prototype._buildView=function(){var t=this.group;t.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var a=this._displayables.sliderGroup=new at;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),t.add(a),this._positionGroup()},e.prototype._resetLocation=function(){var t=this.dataZoomModel,a=this.api,n=t.get("brushSelect"),i=n?V9:0,o=this._findCoordRect(),s={width:a.getWidth(),height:a.getHeight()},l=this._orient===is?{right:s.width-o.x-o.width,top:s.height-op-Rw-i,width:o.width,height:op}:{right:Rw,top:o.y,width:op,height:o.height},u=Ao(t.option);C(["right","top","width","height"],function(h){u[h]==="ph"&&(u[h]=l[h])});var f=re(u,s);this._location={x:f.x,y:f.y},this._size=[f.width,f.height],this._orient===Ew&&this._size.reverse()},e.prototype._positionGroup=function(){var t=this.group,a=this._location,n=this._orient,i=this.dataZoomModel.getFirstTargetAxisModel(),o=i&&i.get("inverse"),s=this._displayables.sliderGroup,l=(this._dataShadowInfo||{}).otherAxisInverse;s.attr(n===is&&!o?{scaleY:l?1:-1,scaleX:1}:n===is&&o?{scaleY:l?1:-1,scaleX:-1}:n===Ew&&!o?{scaleY:l?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:l?-1:1,scaleX:-1,rotation:Math.PI/2});var u=t.getBoundingRect([s]);t.x=a.x-u.x,t.y=a.y-u.y,t.markRedraw()},e.prototype._getViewExtent=function(){return[0,this._size[0]]},e.prototype._renderBackground=function(){var t=this.dataZoomModel,a=this._size,n=this._displayables.sliderGroup,i=t.get("brushSelect");n.add(new ns({silent:!0,shape:{x:0,y:0,width:a[0],height:a[1]},style:{fill:t.get("backgroundColor")},z2:-40}));var o=new ns({shape:{x:0,y:0,width:a[0],height:a[1]},style:{fill:"transparent"},z2:0,onclick:$(this._onClickPanel,this)}),s=this.api.getZr();i?(o.on("mousedown",this._onBrushStart,this),o.cursor="crosshair",s.on("mousemove",this._onBrush),s.on("mouseup",this._onBrushEnd)):(s.off("mousemove",this._onBrush),s.off("mouseup",this._onBrushEnd)),n.add(o)},e.prototype._renderDataShadow=function(){var t=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],!t)return;var a=this._size,n=this._shadowSize||[],i=t.series,o=i.getRawData(),s=i.getShadowDim&&i.getShadowDim(),l=s&&o.getDimensionInfo(s)?i.getShadowDim():t.otherDim;if(l==null)return;var u=this._shadowPolygonPts,f=this._shadowPolylinePts;if(o!==this._shadowData||l!==this._shadowDim||a[0]!==n[0]||a[1]!==n[1]){var h=o.getDataExtent(l),v=(h[1]-h[0])*.3;h=[h[0]-v,h[1]+v];var c=[0,a[1]],p=[0,a[0]],d=[[a[0],0],[0,0]],g=[],y=p[1]/(o.count()-1),m=0,_=Math.round(o.count()/a[0]),S;o.each([l],function(T,D){if(_>0&&D%_){m+=y;return}var M=T==null||isNaN(T)||T==="",I=M?0:Lt(T,h,c,!0);M&&!S&&D?(d.push([d[d.length-1][0],0]),g.push([g[g.length-1][0],0])):!M&&S&&(d.push([m,0]),g.push([m,0])),d.push([m,I]),g.push([m,I]),m+=y,S=M}),u=this._shadowPolygonPts=d,f=this._shadowPolylinePts=g}this._shadowData=o,this._shadowDim=l,this._shadowSize=[a[0],a[1]];var w=this.dataZoomModel;function x(T){var D=w.getModel(T?"selectedDataBackground":"dataBackground"),M=new at,I=new ze({shape:{points:u},segmentIgnoreThreshold:1,style:D.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),L=new Ge({shape:{points:f},segmentIgnoreThreshold:1,style:D.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return M.add(I),M.add(L),M}for(var b=0;b<3;b++){var A=x(b===1);this._displayables.sliderGroup.add(A),this._displayables.dataShadowSegs.push(A)}},e.prototype._prepareDataShadowInfo=function(){var t=this.dataZoomModel,a=t.get("showDataShadow");if(a!==!1){var n,i=this.ecModel;return t.eachTargetAxis(function(o,s){var l=t.getAxisProxy(o,s).getTargetSeriesModels();C(l,function(u){if(!n&&!(a!==!0&&vt(G9,u.get("type"))<0)){var f=i.getComponent(Wa(o),s).axis,h=W9(o),v,c=u.coordinateSystem;h!=null&&c.getOtherAxis&&(v=c.getOtherAxis(f).inverse),h=u.getData().mapDimension(h),n={thisAxis:f,series:u,thisDim:o,otherDim:h,otherAxisInverse:v}}},this)},this),n}},e.prototype._renderHandle=function(){var t=this.group,a=this._displayables,n=a.handles=[null,null],i=a.handleLabels=[null,null],o=this._displayables.sliderGroup,s=this._size,l=this.dataZoomModel,u=this.api,f=l.get("borderRadius")||0,h=l.get("brushSelect"),v=a.filler=new ns({silent:h,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});o.add(v),o.add(new ns({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:s[0],height:s[1],r:f},style:{stroke:l.get("dataBackgroundColor")||l.get("borderColor"),lineWidth:B9,fill:"rgba(0,0,0,0)"}})),C([0,1],function(_){var S=l.get("handleIcon");!bf[S]&&S.indexOf("path://")<0&&S.indexOf("image://")<0&&(S="path://"+S);var w=Jt(S,-1,0,2,2,null,!0);w.attr({cursor:kw(this._orient),draggable:!0,drift:$(this._onDragMove,this,_),ondragend:$(this._onDragEnd,this),onmouseover:$(this._showDataInfo,this,!0),onmouseout:$(this._showDataInfo,this,!1),z2:5});var x=w.getBoundingRect(),b=l.get("handleSize");this._handleHeight=H(b,this._size[1]),this._handleWidth=x.width/x.height*this._handleHeight,w.setStyle(l.getModel("handleStyle").getItemStyle()),w.style.strokeNoScale=!0,w.rectHover=!0,w.ensureState("emphasis").style=l.getModel(["emphasis","handleStyle"]).getItemStyle(),ti(w);var A=l.get("handleColor");A!=null&&(w.style.fill=A),o.add(n[_]=w);var T=l.getModel("textStyle");t.add(i[_]=new Tt({silent:!0,invisible:!0,style:Ot(T,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:T.getTextColor(),font:T.getFont()}),z2:10}))},this);var c=v;if(h){var p=H(l.get("moveHandleSize"),s[1]),d=a.moveHandle=new xt({style:l.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:s[1]-.5,height:p}}),g=p*.8,y=a.moveHandleIcon=Jt(l.get("moveHandleIcon"),-g/2,-g/2,g,g,"#fff",!0);y.silent=!0,y.y=s[1]+p/2-.5,d.ensureState("emphasis").style=l.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var m=Math.min(s[1]/2,Math.max(p,10));c=a.moveZone=new xt({invisible:!0,shape:{y:s[1]-m,height:p+m}}),c.on("mouseover",function(){u.enterEmphasis(d)}).on("mouseout",function(){u.leaveEmphasis(d)}),o.add(d),o.add(y),o.add(c)}c.attr({draggable:!0,cursor:kw(this._orient),drift:$(this._onDragMove,this,"all"),ondragstart:$(this._showDataInfo,this,!0),ondragend:$(this._onDragEnd,this),onmouseover:$(this._showDataInfo,this,!0),onmouseout:$(this._showDataInfo,this,!1)})},e.prototype._resetInterval=function(){var t=this._range=this.dataZoomModel.getPercentRange(),a=this._getViewExtent();this._handleEnds=[Lt(t[0],[0,100],a,!0),Lt(t[1],[0,100],a,!0)]},e.prototype._updateInterval=function(t,a){var n=this.dataZoomModel,i=this._handleEnds,o=this._getViewExtent(),s=n.findRepresentativeAxisProxy().getMinMaxSpan(),l=[0,100];_i(a,i,o,n.get("zoomLock")?"all":t,s.minSpan!=null?Lt(s.minSpan,l,o,!0):null,s.maxSpan!=null?Lt(s.maxSpan,l,o,!0):null);var u=this._range,f=this._range=or([Lt(i[0],o,l,!0),Lt(i[1],o,l,!0)]);return!u||u[0]!==f[0]||u[1]!==f[1]},e.prototype._updateView=function(t){var a=this._displayables,n=this._handleEnds,i=or(n.slice()),o=this._size;C([0,1],function(c){var p=a.handles[c],d=this._handleHeight;p.attr({scaleX:d/2,scaleY:d/2,x:n[c]+(c?-1:1),y:o[1]/2-d/2})},this),a.filler.setShape({x:i[0],y:0,width:i[1]-i[0],height:o[1]});var s={x:i[0],width:i[1]-i[0]};a.moveHandle&&(a.moveHandle.setShape(s),a.moveZone.setShape(s),a.moveZone.getBoundingRect(),a.moveHandleIcon&&a.moveHandleIcon.attr("x",s.x+s.width/2));for(var l=a.dataShadowSegs,u=[0,i[0],i[1],o[0]],f=0;fa[0]||n[1]<0||n[1]>a[1])){var i=this._handleEnds,o=(i[0]+i[1])/2,s=this._updateInterval("all",n[0]-o);this._updateView(),s&&this._dispatchZoomAction(!1)}},e.prototype._onBrushStart=function(t){var a=t.offsetX,n=t.offsetY;this._brushStart=new st(a,n),this._brushing=!0,this._brushStartTime=+new Date},e.prototype._onBrushEnd=function(t){if(this._brushing){var a=this._displayables.brushRect;if(this._brushing=!1,!!a){a.attr("ignore",!0);var n=a.shape,i=+new Date;if(!(i-this._brushStartTime<200&&Math.abs(n.width)<5)){var o=this._getViewExtent(),s=[0,100];this._range=or([Lt(n.x,o,s,!0),Lt(n.x+n.width,o,s,!0)]),this._handleEnds=[n.x,n.x+n.width],this._updateView(),this._dispatchZoomAction(!1)}}}},e.prototype._onBrush=function(t){this._brushing&&(fa(t.event),this._updateBrushRect(t.offsetX,t.offsetY))},e.prototype._updateBrushRect=function(t,a){var n=this._displayables,i=this.dataZoomModel,o=n.brushRect;o||(o=n.brushRect=new ns({silent:!0,style:i.getModel("brushStyle").getItemStyle()}),n.sliderGroup.add(o)),o.attr("ignore",!1);var s=this._brushStart,l=this._displayables.sliderGroup,u=l.transformCoordToLocal(t,a),f=l.transformCoordToLocal(s.x,s.y),h=this._size;u[0]=Math.max(Math.min(h[0],u[0]),0),o.setShape({x:f[0],y:0,width:u[0]-f[0],height:h[1]})},e.prototype._dispatchZoomAction=function(t){var a=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:t?F9:null,start:a[0],end:a[1]})},e.prototype._findCoordRect=function(){var t,a=OI(this.dataZoomModel).infoList;if(!t&&a.length){var n=a[0].model.coordinateSystem;t=n.getRect&&n.getRect()}if(!t){var i=this.api.getWidth(),o=this.api.getHeight();t={x:i*.2,y:o*.2,width:i*.6,height:o*.6}}return t},e.type="dataZoom.slider",e}(Zy);function W9(r){var e={x:"y",y:"x",radius:"angle",angle:"radius"};return e[r]}function kw(r){return r==="vertical"?"ns-resize":"ew-resize"}const U9=H9;function r2(r){r.registerComponentModel(N9),r.registerComponentView(U9),qy(r)}function $9(r){ct(e2),ct(r2)}var Y9={get:function(r,e,t){var a=et((X9[r]||{})[e]);return t&&z(a)?a[a.length-1]:a}},X9={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}};const a2=Y9;var Ow=pe.mapVisual,Z9=pe.eachVisual,q9=z,Nw=C,K9=or,Q9=Lt,J9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t.stateList=["inRange","outOfRange"],t.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],t.layoutMode={type:"box",ignoreSize:!0},t.dataBound=[-1/0,1/0],t.targetVisuals={},t.controllerVisuals={},t}return e.prototype.init=function(t,a,n){this.mergeDefaultAndTheme(t,n)},e.prototype.optionUpdated=function(t,a){var n=this.option;!a&&$I(n,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},e.prototype.resetVisual=function(t){var a=this.stateList;t=$(t,this),this.controllerVisuals=Fd(this.option.controller,a,t),this.targetVisuals=Fd(this.option.target,a,t)},e.prototype.getItemSymbol=function(){return null},e.prototype.getTargetSeriesIndices=function(){var t=this.option.seriesIndex,a=[];return t==null||t==="all"?this.ecModel.eachSeries(function(n,i){a.push(i)}):a=Rt(t),a},e.prototype.eachTargetSeries=function(t,a){C(this.getTargetSeriesIndices(),function(n){var i=this.ecModel.getSeriesByIndex(n);i&&t.call(a,i)},this)},e.prototype.isTargetSeries=function(t){var a=!1;return this.eachTargetSeries(function(n){n===t&&(a=!0)}),a},e.prototype.formatValueText=function(t,a,n){var i=this.option,o=i.precision,s=this.dataBound,l=i.formatter,u;n=n||["<",">"],z(t)&&(t=t.slice(),u=!0);var f=a?t:u?[h(t[0]),h(t[1])]:h(t);if(U(l))return l.replace("{value}",u?f[0]:f).replace("{value2}",u?f[1]:f);if(K(l))return u?l(t[0],t[1]):l(t);if(u)return t[0]===s[0]?n[0]+" "+f[1]:t[1]===s[1]?n[1]+" "+f[0]:f[0]+" - "+f[1];return f;function h(v){return v===s[0]?"min":v===s[1]?"max":(+v).toFixed(Math.min(o,20))}},e.prototype.resetExtent=function(){var t=this.option,a=K9([t.min,t.max]);this._dataExtent=a},e.prototype.getDataDimensionIndex=function(t){var a=this.option.dimension;if(a!=null)return t.getDimensionIndex(a);for(var n=t.dimensions,i=n.length-1;i>=0;i--){var o=n[i],s=t.getDimensionInfo(o);if(!s.isCalculationCoord)return s.storeDimIndex}},e.prototype.getExtent=function(){return this._dataExtent.slice()},e.prototype.completeVisualOption=function(){var t=this.ecModel,a=this.option,n={inRange:a.inRange,outOfRange:a.outOfRange},i=a.target||(a.target={}),o=a.controller||(a.controller={});ut(i,n),ut(o,n);var s=this.isCategory();l.call(this,i),l.call(this,o),u.call(this,i,"inRange","outOfRange"),f.call(this,o);function l(h){q9(a.color)&&!h.inRange&&(h.inRange={color:a.color.slice().reverse()}),h.inRange=h.inRange||{color:t.get("gradientColor")}}function u(h,v,c){var p=h[v],d=h[c];p&&!d&&(d=h[c]={},Nw(p,function(g,y){if(pe.isValidType(y)){var m=a2.get(y,"inactive",s);m!=null&&(d[y]=m,y==="color"&&!d.hasOwnProperty("opacity")&&!d.hasOwnProperty("colorAlpha")&&(d.opacity=[0,0]))}}))}function f(h){var v=(h.inRange||{}).symbol||(h.outOfRange||{}).symbol,c=(h.inRange||{}).symbolSize||(h.outOfRange||{}).symbolSize,p=this.get("inactiveColor"),d=this.getItemSymbol(),g=d||"roundRect";Nw(this.stateList,function(y){var m=this.itemSize,_=h[y];_||(_=h[y]={color:s?p:[p]}),_.symbol==null&&(_.symbol=v&&et(v)||(s?g:[g])),_.symbolSize==null&&(_.symbolSize=c&&et(c)||(s?m[0]:[m[0],m[0]])),_.symbol=Ow(_.symbol,function(x){return x==="none"?g:x});var S=_.symbolSize;if(S!=null){var w=-1/0;Z9(S,function(x){x>w&&(w=x)}),_.symbolSize=Ow(S,function(x){return Q9(x,[0,w],[0,m[0]],!0)})}},this)}},e.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},e.prototype.isCategory=function(){return!!this.option.categories},e.prototype.setSelected=function(t){},e.prototype.getSelected=function(){return null},e.prototype.getValueState=function(t){return null},e.prototype.getVisualMeta=function(t){return null},e.type="visualMap",e.dependencies=["series"],e.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},e}(bt);const Zf=J9;var Bw=[20,140],j9=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.optionUpdated=function(t,a){r.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual(function(n){n.mappingMethod="linear",n.dataExtent=this.getExtent()}),this._resetRange()},e.prototype.resetItemSize=function(){r.prototype.resetItemSize.apply(this,arguments);var t=this.itemSize;(t[0]==null||isNaN(t[0]))&&(t[0]=Bw[0]),(t[1]==null||isNaN(t[1]))&&(t[1]=Bw[1])},e.prototype._resetRange=function(){var t=this.getExtent(),a=this.option.range;!a||a.auto?(t.auto=1,this.option.range=t):z(a)&&(a[0]>a[1]&&a.reverse(),a[0]=Math.max(a[0],t[0]),a[1]=Math.min(a[1],t[1]))},e.prototype.completeVisualOption=function(){r.prototype.completeVisualOption.apply(this,arguments),C(this.stateList,function(t){var a=this.option.controller[t].symbolSize;a&&a[0]!==a[1]&&(a[0]=a[1]/3)},this)},e.prototype.setSelected=function(t){this.option.range=t.slice(),this._resetRange()},e.prototype.getSelected=function(){var t=this.getExtent(),a=or((this.get("range")||[]).slice());return a[0]>t[1]&&(a[0]=t[1]),a[1]>t[1]&&(a[1]=t[1]),a[0]=n[1]||t<=a[1])?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var a=[];return this.eachTargetSeries(function(n){var i=[],o=n.getData();o.each(this.getDataDimensionIndex(o),function(s,l){t[0]<=s&&s<=t[1]&&i.push(l)},this),a.push({seriesId:n.id,dataIndex:i})},this),a},e.prototype.getVisualMeta=function(t){var a=Vw(this,"outOfRange",this.getExtent()),n=Vw(this,"inRange",this.option.range.slice()),i=[];function o(c,p){i.push({value:c,color:t(c,p)})}for(var s=0,l=0,u=n.length,f=a.length;lt[1])break;i.push({color:this.getControllerVisual(l,"color",a),offset:s/n})}return i.push({color:this.getControllerVisual(t[1],"color",a),offset:1}),i},e.prototype._createBarPoints=function(t,a){var n=this.visualMapModel.itemSize;return[[n[0]-a[0],t[0]],[n[0],t[0]],[n[0],t[1]],[n[0]-a[1],t[1]]]},e.prototype._createBarGroup=function(t){var a=this._orient,n=this.visualMapModel.get("inverse");return new at(a==="horizontal"&&!n?{scaleX:t==="bottom"?1:-1,rotation:Math.PI/2}:a==="horizontal"&&n?{scaleX:t==="bottom"?-1:1,rotation:-Math.PI/2}:a==="vertical"&&!n?{scaleX:t==="left"?1:-1,scaleY:-1}:{scaleX:t==="left"?1:-1})},e.prototype._updateHandle=function(t,a){if(this._useHandle){var n=this._shapes,i=this.visualMapModel,o=n.handleThumbs,s=n.handleLabels,l=i.itemSize,u=i.getExtent();rX([0,1],function(f){var h=o[f];h.setStyle("fill",a.handlesColor[f]),h.y=t[f];var v=Er(t[f],[0,l[1]],u,!0),c=this.getControllerVisual(v,"symbolSize");h.scaleX=h.scaleY=c/l[0],h.x=l[0]-c/2;var p=wr(n.handleLabelPoints[f],ei(h,this.group));s[f].setStyle({x:p[0],y:p[1],text:i.formatValueText(this._dataInterval[f]),verticalAlign:"middle",align:this._orient==="vertical"?this._applyTransform("left",n.mainGroup):"center"})},this)}},e.prototype._showIndicator=function(t,a,n,i){var o=this.visualMapModel,s=o.getExtent(),l=o.itemSize,u=[0,l[1]],f=this._shapes,h=f.indicator;if(h){h.attr("invisible",!1);var v={convertOpacityToAlpha:!0},c=this.getControllerVisual(t,"color",v),p=this.getControllerVisual(t,"symbolSize"),d=Er(t,s,u,!0),g=l[0]-p/2,y={x:h.x,y:h.y};h.y=d,h.x=g;var m=wr(f.indicatorLabelPoint,ei(h,this.group)),_=f.indicatorLabel;_.attr("invisible",!1);var S=this._applyTransform("left",f.mainGroup),w=this._orient,x=w==="horizontal";_.setStyle({text:(n||"")+o.formatValueText(a),verticalAlign:x?S:"middle",align:x?"center":S});var b={x:g,y:d,style:{fill:c}},A={style:{x:m[0],y:m[1]}};if(o.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var T={duration:100,easing:"cubicInOut",additive:!0};h.x=y.x,h.y=y.y,h.animateTo(b,T),_.animateTo(A,T)}else h.attr(b),_.attr(A);this._firstShowIndicator=!1;var D=this._shapes.handleLabels;if(D)for(var M=0;Mo[1]&&(h[1]=1/0),a&&(h[0]===-1/0?this._showIndicator(f,h[1],"< ",l):h[1]===1/0?this._showIndicator(f,h[0],"> ",l):this._showIndicator(f,f,"≈ ",l));var v=this._hoverLinkDataIndices,c=[];(a||Hw(n))&&(c=this._hoverLinkDataIndices=n.findTargetDataIndices(h));var p=KP(v,c);this._dispatchHighDown("downplay",ef(p[0],n)),this._dispatchHighDown("highlight",ef(p[1],n))}},e.prototype._hoverLinkFromSeriesMouseOver=function(t){var a;if(Xn(t.target,function(l){var u=nt(l);if(u.dataIndex!=null)return a=u,!0},!0),!!a){var n=this.ecModel.getSeriesByIndex(a.seriesIndex),i=this.visualMapModel;if(i.isTargetSeries(n)){var o=n.getData(a.dataType),s=o.getStore().get(i.getDataDimensionIndex(o),a.dataIndex);isNaN(s)||this._showIndicator(s,s)}}},e.prototype._hideIndicator=function(){var t=this._shapes;t.indicator&&t.indicator.attr("invisible",!0),t.indicatorLabel&&t.indicatorLabel.attr("invisible",!0);var a=this._shapes.handleLabels;if(a)for(var n=0;n=0&&(i.dimension=o,a.push(i))}}),r.getData().setVisual("visualMeta",a)}}];function hX(r,e,t,a){for(var n=e.targetVisuals[a],i=pe.prepareVisualTypes(n),o={color:ml(r.getData(),"color")},s=0,l=i.length;s0:e.splitNumber>0)||e.calculable)?"continuous":"piecewise"}),r.registerAction(lX,uX),C(fX,function(e){r.registerVisual(r.PRIORITY.VISUAL.COMPONENT,e)}),r.registerPreprocessor(vX))}function s2(r){r.registerComponentModel(tX),r.registerComponentView(sX),o2(r)}var cX=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t._pieceList=[],t}return e.prototype.optionUpdated=function(t,a){r.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var n=this._mode=this._determineMode();this._pieceList=[],pX[this._mode].call(this,this._pieceList),this._resetSelected(t,a);var i=this.option.categories;this.resetVisual(function(o,s){n==="categories"?(o.mappingMethod="category",o.categories=et(i)):(o.dataExtent=this.getExtent(),o.mappingMethod="piecewise",o.pieceList=G(this._pieceList,function(l){return l=et(l),s!=="inRange"&&(l.visual=null),l}))})},e.prototype.completeVisualOption=function(){var t=this.option,a={},n=pe.listVisualTypes(),i=this.isCategory();C(t.pieces,function(s){C(n,function(l){s.hasOwnProperty(l)&&(a[l]=1)})}),C(a,function(s,l){var u=!1;C(this.stateList,function(f){u=u||o(t,f,l)||o(t.target,f,l)},this),!u&&C(this.stateList,function(f){(t[f]||(t[f]={}))[l]=a2.get(l,f==="inRange"?"active":"inactive",i)})},this);function o(s,l,u){return s&&s[l]&&s[l].hasOwnProperty(u)}r.prototype.completeVisualOption.apply(this,arguments)},e.prototype._resetSelected=function(t,a){var n=this.option,i=this._pieceList,o=(a?n:t).selected||{};if(n.selected=o,C(i,function(l,u){var f=this.getSelectedMapKey(l);o.hasOwnProperty(f)||(o[f]=!0)},this),n.selectedMode==="single"){var s=!1;C(i,function(l,u){var f=this.getSelectedMapKey(l);o[f]&&(s?o[f]=!1:s=!0)},this)}},e.prototype.getItemSymbol=function(){return this.get("itemSymbol")},e.prototype.getSelectedMapKey=function(t){return this._mode==="categories"?t.value+"":t.index+""},e.prototype.getPieceList=function(){return this._pieceList},e.prototype._determineMode=function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},e.prototype.setSelected=function(t){this.option.selected=et(t)},e.prototype.getValueState=function(t){var a=pe.findPieceIndex(t,this._pieceList);return a!=null&&this.option.selected[this.getSelectedMapKey(this._pieceList[a])]?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var a=[],n=this._pieceList;return this.eachTargetSeries(function(i){var o=[],s=i.getData();s.each(this.getDataDimensionIndex(s),function(l,u){var f=pe.findPieceIndex(l,n);f===t&&o.push(u)},this),a.push({seriesId:i.id,dataIndex:o})},this),a},e.prototype.getRepresentValue=function(t){var a;if(this.isCategory())a=t.value;else if(t.value!=null)a=t.value;else{var n=t.interval||[];a=n[0]===-1/0&&n[1]===1/0?0:(n[0]+n[1])/2}return a},e.prototype.getVisualMeta=function(t){if(this.isCategory())return;var a=[],n=["",""],i=this;function o(f,h){var v=i.getRepresentValue({interval:f});h||(h=i.getValueState(v));var c=t(v,h);f[0]===-1/0?n[0]=c:f[1]===1/0?n[1]=c:a.push({value:f[0],color:c},{value:f[1],color:c})}var s=this._pieceList.slice();if(!s.length)s.push({interval:[-1/0,1/0]});else{var l=s[0].interval[0];l!==-1/0&&s.unshift({interval:[-1/0,l]}),l=s[s.length-1].interval[1],l!==1/0&&s.push({interval:[l,1/0]})}var u=-1/0;return C(s,function(f){var h=f.interval;h&&(h[0]>u&&o([u,h[0]],"outOfRange"),o(h.slice()),u=h[1])},this),{stops:a,outerColors:n}},e.type="visualMap.piecewise",e.defaultOption=on(Zf.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),e}(Zf),pX={splitNumber:function(r){var e=this.option,t=Math.min(e.precision,20),a=this.getExtent(),n=e.splitNumber;n=Math.max(parseInt(n,10),1),e.splitNumber=n;for(var i=(a[1]-a[0])/n;+i.toFixed(t)!==i&&t<5;)t++;e.precision=t,i=+i.toFixed(t),e.minOpen&&r.push({interval:[-1/0,a[0]],close:[0,0]});for(var o=0,s=a[0];o","≥"][a[0]]];t.text=t.text||this.formatValueText(t.value!=null?t.value:t.interval,!1,n)},this)}};function Yw(r,e){var t=r.inverse;(r.orient==="vertical"?!t:t)&&e.reverse()}const dX=cX;var gX=function(r){k(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.type=e.type,t}return e.prototype.doRender=function(){var t=this.group;t.removeAll();var a=this.visualMapModel,n=a.get("textGap"),i=a.textStyleModel,o=i.getFont(),s=i.getTextColor(),l=this._getItemAlign(),u=a.itemSize,f=this._getViewData(),h=f.endsText,v=fe(a.get("showLabel",!0),!h);h&&this._renderEndsText(t,h[0],u,v,l),C(f.viewPieceList,function(c){var p=c.piece,d=new at;d.onclick=$(this._onItemClick,this,p),this._enableHoverLink(d,c.indexInModelPieceList);var g=a.getRepresentValue(p);if(this._createItemSymbol(d,g,[0,0,u[0],u[1]]),v){var y=this.visualMapModel.getValueState(g);d.add(new Tt({style:{x:l==="right"?-n:u[0]+n,y:u[1]/2,text:p.text,verticalAlign:"middle",align:l,font:o,fill:s,opacity:y==="outOfRange"?.5:1}}))}t.add(d)},this),h&&this._renderEndsText(t,h[1],u,v,l),ri(a.get("orient"),t,a.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},e.prototype._enableHoverLink=function(t,a){var n=this;t.on("mouseover",function(){return i("highlight")}).on("mouseout",function(){return i("downplay")});var i=function(o){var s=n.visualMapModel;s.option.hoverLink&&n.api.dispatchAction({type:o,batch:ef(s.findTargetDataIndices(a),s)})}},e.prototype._getItemAlign=function(){var t=this.visualMapModel,a=t.option;if(a.orient==="vertical")return i2(t,this.api,t.itemSize);var n=a.align;return(!n||n==="auto")&&(n="left"),n},e.prototype._renderEndsText=function(t,a,n,i,o){if(a){var s=new at,l=this.visualMapModel.textStyleModel;s.add(new Tt({style:Ot(l,{x:i?o==="right"?n[0]:0:n[0]/2,y:n[1]/2,verticalAlign:"middle",align:i?o:"center",text:a})})),t.add(s)}},e.prototype._getViewData=function(){var t=this.visualMapModel,a=G(t.getPieceList(),function(s,l){return{piece:s,indexInModelPieceList:l}}),n=t.get("text"),i=t.get("orient"),o=t.get("inverse");return(i==="horizontal"?o:!o)?a.reverse():n&&(n=n.slice().reverse()),{viewPieceList:a,endsText:n}},e.prototype._createItemSymbol=function(t,a,n){t.add(Jt(this.getControllerVisual(a,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(a,"color")))},e.prototype._onItemClick=function(t){var a=this.visualMapModel,n=a.option,i=n.selectedMode;if(i){var o=et(n.selected),s=a.getSelectedMapKey(t);i==="single"||i===!0?(o[s]=!0,C(o,function(l,u){o[u]=u===s})):o[s]=!o[s],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:o})}},e.type="visualMap.piecewise",e}(n2);const yX=gX;function l2(r){r.registerComponentModel(dX),r.registerComponentView(yX),o2(r)}function mX(r){ct(s2),ct(l2)}var _X={label:{enabled:!0},decal:{show:!1}},Xw=wt(),SX={};function xX(r,e){var t=r.getModel("aria");if(!t.get("enabled"))return;var a=et(_X);ut(a.label,r.getLocaleModel().get("aria"),!1),ut(t.option,a,!1),n(),i();function n(){var u=t.getModel("decal"),f=u.get("show");if(f){var h=q();r.eachSeries(function(v){if(!v.isColorBySeries()){var c=h.get(v.type);c||(c={},h.set(v.type,c)),Xw(v).scope=c}}),r.eachRawSeries(function(v){if(r.isSeriesFiltered(v))return;if(K(v.enableAriaDecal)){v.enableAriaDecal();return}var c=v.getData();if(v.isColorBySeries()){var m=qp(v.ecModel,v.name,SX,r.getSeriesCount()),_=c.getVisual("decal");c.setVisual("decal",S(_,m))}else{var p=v.getRawData(),d={},g=Xw(v).scope;c.each(function(w){var x=c.getRawIndex(w);d[x]=w});var y=p.count();p.each(function(w){var x=d[w],b=p.getName(w)||w+"",A=qp(v.ecModel,b,g,y),T=c.getItemVisual(x,"decal");c.setItemVisual(x,"decal",S(T,A))})}function S(w,x){var b=w?B(B({},x),w):x;return b.dirty=!0,b}})}}function i(){var u=r.getLocaleModel().get("aria"),f=t.getModel("label");if(f.option=J(f.option,u),!!f.get("enabled")){var h=e.getZr().dom;if(f.get("description")){h.setAttribute("aria-label",f.get("description"));return}var v=r.getSeriesCount(),c=f.get(["data","maxCount"])||10,p=f.get(["series","maxCount"])||10,d=Math.min(v,p),g;if(!(v<1)){var y=s();if(y){var m=f.get(["general","withTitle"]);g=o(m,{title:y})}else g=f.get(["general","withoutTitle"]);var _=[],S=v>1?f.get(["series","multiple","prefix"]):f.get(["series","single","prefix"]);g+=o(S,{seriesCount:v}),r.eachSeries(function(A,T){if(T1?f.get(["series","multiple",I]):f.get(["series","single",I]),D=o(D,{seriesId:A.seriesIndex,seriesName:A.get("name"),seriesType:l(A.subType)});var L=A.getData();if(L.count()>c){var P=f.get(["data","partialData"]);D+=o(P,{displayCnt:c})}else D+=f.get(["data","allData"]);for(var R=f.get(["data","separator","middle"]),E=f.get(["data","separator","end"]),N=[],O=0;O":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},AX=function(){function r(e){var t=this._condVal=U(e)?new RegExp(e):sL(e)?e:null;if(t==null){var a="";It(a)}}return r.prototype.evaluate=function(e){var t=typeof e;return U(t)?this._condVal.test(e):Ct(t)?this._condVal.test(e+""):!1},r}(),TX=function(){function r(){}return r.prototype.evaluate=function(){return this.value},r}(),CX=function(){function r(){}return r.prototype.evaluate=function(){for(var e=this.children,t=0;t2&&a.push(n),n=[L,P]}function f(L,P,R,E){Ji(L,R)&&Ji(P,E)||n.push(L,P,R,E,R,E)}function h(L,P,R,E,N,O){var V=Math.abs(P-L),F=Math.tan(V/4)*4/3,W=PA:M2&&a.push(n),a}function qd(r,e,t,a,n,i,o,s,l,u){if(Ji(r,t)&&Ji(e,a)&&Ji(n,o)&&Ji(i,s)){l.push(o,s);return}var f=2/u,h=f*f,v=o-r,c=s-e,p=Math.sqrt(v*v+c*c);v/=p,c/=p;var d=t-r,g=a-e,y=n-o,m=i-s,_=d*d+g*g,S=y*y+m*m;if(_=0&&A=0){l.push(o,s);return}var T=[],D=[];Ka(r,t,n,o,.5,T),Ka(e,a,i,s,.5,D),qd(T[0],D[0],T[1],D[1],T[2],D[2],T[3],D[3],l,u),qd(T[4],D[4],T[5],D[5],T[6],D[6],T[7],D[7],l,u)}function GX(r,e){var t=Zd(r),a=[];e=e||1;for(var n=0;n0)for(var u=0;uMath.abs(u),h=f2([l,u],f?0:1,e),v=(f?s:u)/h.length,c=0;cn,o=f2([a,n],i?0:1,e),s=i?"width":"height",l=i?"height":"width",u=i?"x":"y",f=i?"y":"x",h=r[s]/o.length,v=0;v1?null:new st(d*l+r,d*u+e)}function WX(r,e,t){var a=new st;st.sub(a,t,e),a.normalize();var n=new st;st.sub(n,r,e);var i=n.dot(a);return i}function Fi(r,e){var t=r[r.length-1];t&&t[0]===e[0]&&t[1]===e[1]||r.push(e)}function UX(r,e,t){for(var a=r.length,n=[],i=0;io?(u.x=f.x=s+i/2,u.y=l,f.y=l+o):(u.y=f.y=l+o/2,u.x=s,f.x=s+i),UX(e,u,f)}function qf(r,e,t,a){if(t===1)a.push(e);else{var n=Math.floor(t/2),i=r(e);qf(r,i[0],n,a),qf(r,i[1],t-n,a)}return a}function $X(r,e){for(var t=[],a=0;a0)for(var w=a/t,x=-a/2;x<=a/2;x+=w){for(var b=Math.sin(x),A=Math.cos(x),T=0,_=0;_0;u/=2){var f=0,h=0;(r&u)>0&&(f=1),(e&u)>0&&(h=1),s+=u*u*(3*f^h),h===0&&(f===1&&(r=u-1-r,e=u-1-e),l=r,r=e,e=l)}return s}function Jf(r){var e=1/0,t=1/0,a=-1/0,n=-1/0,i=G(r,function(s){var l=s.getBoundingRect(),u=s.getComputedTransform(),f=l.x+l.width/2+(u?u[4]:0),h=l.y+l.height/2+(u?u[5]:0);return e=Math.min(f,e),t=Math.min(h,t),a=Math.max(f,a),n=Math.max(h,n),[f,h]}),o=G(i,function(s,l){return{cp:s,z:tZ(s[0],s[1],e,t,a,n),path:r[l]}});return o.sort(function(s,l){return s.z-l.z}).map(function(s){return s.path})}function c2(r){return ZX(r.path,r.count)}function Kd(){return{fromIndividuals:[],toIndividuals:[],count:0}}function eZ(r,e,t){var a=[];function n(w){for(var x=0;x=0;n--)if(!t[n].many.length){var l=t[s].many;if(l.length<=1)if(s)s=0;else return t;var i=l.length,u=Math.ceil(i/2);t[n].many=l.slice(u,i),t[s].many=l.slice(0,u),s++}return t}var aZ={clone:function(r){for(var e=[],t=1-Math.pow(1-r.path.style.opacity,1/r.count),a=0;a0))return;var s=a.getModel("universalTransition").get("delay"),l=Object.assign({setToFinal:!0},o),u,f;rb(r)&&(u=r,f=e),rb(e)&&(u=e,f=r);function h(y,m,_,S,w){var x=y.many,b=y.one;if(x.length===1&&!w){var A=m?x[0]:b,T=m?b:x[0];if(Kf(A))h({many:[A],one:T},!0,_,S,!0);else{var D=s?J({delay:s(_,S)},l):l;im(A,T,D),i(A,T,A,T,D)}}else for(var M=J({dividePath:aZ[t],individualDelay:s&&function(N,O,V,F){return s(N+_,S)}},l),I=m?eZ(x,b,M):rZ(b,x,M),L=I.fromIndividuals,P=I.toIndividuals,R=L.length,E=0;Ee.length,c=u?ab(f,u):ab(v?e:r,[v?r:e]),p=0,d=0;dp2))for(var n=a.getIndices(),i=iZ(a),o=0;o0&&S.group.traverse(function(x){x instanceof dt&&!x.animators.length&&x.animateFrom({style:{opacity:0}},w)})})}function ib(r){var e=r.getModel("universalTransition").get("seriesKey");return e||r.id}function ob(r){return z(r)?r.sort().join(","):r}function Ea(r){if(r.hostModel)return r.hostModel.getModel("universalTransition").get("divideShape")}function lZ(r,e){var t=q(),a=q(),n=q();return C(r.oldSeries,function(i,o){var s=r.oldDataGroupIds[o],l=r.oldData[o],u=ib(i),f=ob(u);a.set(f,{dataGroupId:s,data:l}),z(u)&&C(u,function(h){n.set(h,{key:f,dataGroupId:s,data:l})})}),C(e.updatedSeries,function(i){if(i.isUniversalTransitionEnabled()&&i.isAnimationEnabled()){var o=i.get("dataGroupId"),s=i.getData(),l=ib(i),u=ob(l),f=a.get(u);if(f)t.set(u,{oldSeries:[{dataGroupId:f.dataGroupId,divide:Ea(f.data),data:f.data}],newSeries:[{dataGroupId:o,divide:Ea(s),data:s}]});else if(z(l)){var h=[];C(l,function(p){var d=a.get(p);d.data&&h.push({dataGroupId:d.dataGroupId,divide:Ea(d.data),data:d.data})}),h.length&&t.set(u,{oldSeries:h,newSeries:[{dataGroupId:o,data:s,divide:Ea(s)}]})}else{var v=n.get(l);if(v){var c=t.get(v.key);c||(c={oldSeries:[{dataGroupId:v.dataGroupId,data:v.data,divide:Ea(v.data)}],newSeries:[]},t.set(v.key,c)),c.newSeries.push({dataGroupId:o,data:s,divide:Ea(s)})}}}}),t}function sb(r,e){for(var t=0;t=0&&n.push({dataGroupId:e.oldDataGroupIds[s],data:e.oldData[s],divide:Ea(e.oldData[s]),dim:o.dimension})}),C(Rt(r.to),function(o){var s=sb(t.updatedSeries,o);if(s>=0){var l=t.updatedSeries[s].getData();i.push({dataGroupId:e.oldDataGroupIds[s],data:l,divide:Ea(l),dim:o.dimension})}}),n.length>0&&i.length>0&&d2(n,i,a)}function fZ(r){r.registerUpdateLifecycle("series:beforeupdate",function(e,t,a){C(Rt(a.seriesTransition),function(n){C(Rt(n.to),function(i){for(var o=a.updatedSeries,s=0;s(R2("data-v-f3d3a727"),r=r(),E2(),r),hZ={class:"bg-[#FAFAFA] box-border pb-[77px]"},vZ={class:"main-container"},cZ={class:"pt-[60px]"},pZ=w2('
欢迎使用niucloud-admin
SAAS版
',1),dZ={class:"flex items-center mt-[12px]"},gZ=Si(()=>_t("img",{class:"w-[12px] h-[12px]",src:z2},null,-1)),yZ={class:"ml-[7px] text-[16px] font-600 text-[#424242] leading-[16px] font-[600]"},mZ={class:"px-[32px] pt-[24px] pb-[14px] bg-[#fff] border-[1px] border-[#E9EBF0] border-solid mt-[42px] box-border"},_Z={class:"card-header mb-[20px]"},SZ={class:"text-[18px] font-[600] text-[#333] leading-[24px]"},xZ=Si(()=>_t("span",{class:"text-[12px] text-[#666] leading-[16px] ml-[18px]"},"更新时间 : ",-1)),wZ={class:"text-[12px] text-[#666] leading-[16px]"},bZ={class:"text-[14px] mb-[9px] text-[#666]"},AZ={class:"text-[14px] mb-[9px] text-[#666]"},TZ={class:"text-[14px] mb-[9px] text-[#666]"},CZ={class:"text-[14px] mb-[9px] text-[#666]"},DZ={class:"flex justify-between mt-[15px]"},MZ=Si(()=>_t("img",{class:"w-[52px]",src:G2},null,-1)),IZ={class:"text-[16px] text-[#333]"},LZ=Si(()=>_t("img",{class:"w-[52px]",src:F2},null,-1)),PZ={class:"text-[16px] text-[#333]"},RZ=Si(()=>_t("img",{class:"w-[52px]",src:H2},null,-1)),EZ={class:"text-[16px] text-[#333]"},kZ=Si(()=>_t("img",{class:"w-[52px]",src:W2},null,-1)),OZ={class:"text-[16px] text-[#333]"},NZ=Si(()=>_t("img",{class:"w-[52px]",src:U2},null,-1)),BZ={class:"text-[16px] text-[#333]"},VZ={class:"mt-[60px] flex site"},zZ={class:"card-header"},GZ={class:"text-[18px] text-[#333] font-[600]"},FZ={class:"card-header"},HZ={class:"text-[18px] text-[#333] font-[600]"},WZ={class:"card-header"},UZ={class:"text-[18px] font-[600] text-[#333]"},$Z=g2({__name:"index",setup(r){const e=xa(!0),t=xa(null),a=xa(null),n=O2(),i=xa({last_version:""});N2().then(({data:y})=>{i.value=y}).catch();const o=xa({today_data:{},system:{},version:{},about:[],site_stat:{},site_group_stat:{},app:{}});(async(y=0)=>{o.value=await(await k2()).data,e.value=!1,setTimeout(()=>{l()},20)})();const l=()=>{const y=R_(t.value),m=xa({legend:{},xAxis:{data:[]},yAxis:{},tooltip:{trigger:"axis"},series:[{name:ae("newSite"),type:"line",data:[]}]});m.value.xAxis.data=o.value.site_stat.date,m.value.series[0].data=o.value.site_stat.value,y.setOption(m.value);const _=R_(a.value),S=xa({legend:{orient:"vertical",right:20,top:40},tooltip:{},series:[{type:"pie",data:[]}]}),w=o.value.site_group_stat.type.length;for(let x=0;x{y.resize(),_.resize()})},u=y2(),f=m2();f.path=="/admin/index"&&n.changeStyle(),_2(()=>f.path,(y,m)=>{y!=="/admin/index"&&n.changeBlack()});const h=y=>{u.push(y)},v=(y,m)=>{u.push({path:y,query:{id:m}})},c=()=>{window.open("https://www.niucloud.com/app")},p=xa("");(()=>{const y=new Date,m=y.getFullYear(),_=y.getMonth()+1,S=y.getDate(),w=A(y.getHours()),x=A(y.getMinutes()),b=A(y.getSeconds());function A(T){return T<10?"0"+T:T}p.value=m+"-"+_+"-"+S+" "+w+":"+x+":"+b})();const g=()=>{u.push({path:"/tools/authorize"})};return(y,m)=>{const _=b2,S=A2,w=T2,x=C2,b=D2,A=M2,T=I2,D=L2,M=P2;return Gh(),Fh("div",hZ,[S2((Gh(),Fh("div",vZ,[_t("div",cZ,[pZ,_t("div",dZ,[gZ,_t("span",yZ,qt(o.value.version.version),1),i.value?(Gh(),Fh("div",{key:0,class:"ml-[10px] cursor-pointer",onClick:g},[te(_,{type:"danger",size:"small"},{default:Ht(()=>[xi(qt(le(ae)("newVersion"))+qt(i.value.last_version),1)]),_:1})])):x2("",!0),te(S,{class:"text-color ml-[30px] text-[14px] leading-[20px]",href:"https://www.niucloud.com/",target:"_blank",underline:!1},{default:Ht(()=>[xi(qt(le(ae)("officialWbsite")),1)]),_:1}),te(S,{class:"ml-[12px] text-color text-[14px] leading-[20px]",href:"https://gitee.com/niucloud-team/niucloud.git",target:"_blank",underline:!1},{default:Ht(()=>[xi("Gitee")]),_:1})])]),_t("div",mZ,[te(A,{class:"box-card !border-none profile-data",shadow:"never","body-style":{padding:"49px 32px 20px"}},{header:Ht(()=>[_t("div",_Z,[_t("span",SZ,qt(le(ae)("dataSummarize")),1),xZ,_t("span",wZ,qt(p.value),1)])]),default:Ht(()=>[te(b,{gutter:20},{default:Ht(()=>[te(x,{span:6},{default:Ht(()=>[_t("div",{onClick:m[0]||(m[0]=I=>v("site/list","1")),class:"cursor-pointer"},[te(w,{value:o.value.today_data.norma_site_count},{title:Ht(()=>[_t("div",bZ,qt(le(ae)("normalSiteSum")),1)]),_:1},8,["value"])])]),_:1}),te(x,{span:6},{default:Ht(()=>[_t("div",{onClick:m[1]||(m[1]=I=>v("site/list","2")),class:"cursor-pointer"},[te(w,{value:o.value.today_data.expire_site_count},{title:Ht(()=>[_t("div",AZ,qt(le(ae)("expireSiteSum")),1)]),_:1},8,["value"])])]),_:1}),te(x,{span:6},{default:Ht(()=>[_t("div",{onClick:m[2]||(m[2]=I=>v("/app_manage/app_store","uninstalled")),class:"cursor-pointer"},[te(w,{value:o.value.app.app_no_installed_count},{title:Ht(()=>[_t("div",TZ,qt(le(ae)("noInstallAppSun")),1)]),_:1},8,["value"])])]),_:1}),te(x,{span:6},{default:Ht(()=>[_t("div",{onClick:m[3]||(m[3]=I=>v("/app_manage/app_store","installed")),class:"cursor-pointer"},[te(w,{value:o.value.app.app_installed_count},{title:Ht(()=>[_t("div",CZ,qt(le(ae)("installAppSun")),1)]),_:1},8,["value"])])]),_:1})]),_:1})]),_:1}),_t("div",DZ,[_t("div",{class:"flex-1 h-[145px] bg-[#F9F9F9] flex justify-center flex-col items-center cursor-pointer mr-[25px]",onClick:m[4]||(m[4]=I=>h("site/list"))},[MZ,_t("span",IZ,qt(le(ae)("siteList")),1)]),_t("div",{class:"flex-1 h-[145px] bg-[#F9F9F9] flex justify-center flex-col items-center cursor-pointer mr-[25px]",onClick:m[5]||(m[5]=I=>h("site/group"))},[LZ,_t("span",PZ,qt(le(ae)("sitePackage")),1)]),_t("div",{class:"flex-1 h-[145px] bg-[#F9F9F9] flex justify-center flex-col items-center cursor-pointer mr-[25px]",onClick:m[6]||(m[6]=I=>h("site/list"))},[RZ,_t("span",EZ,qt(le(ae)("newSite")),1)]),_t("div",{class:"flex-1 h-[145px] bg-[#F9F9F9] flex justify-center flex-col items-center cursor-pointer mr-[25px]",onClick:m[7]||(m[7]=I=>h("/admin/site/user"))},[kZ,_t("span",OZ,qt(le(ae)("administrator")),1)]),_t("div",{class:"flex-1 h-[145px] bg-[#F9F9F9] flex justify-center flex-col items-center cursor-pointer",onClick:c},[NZ,_t("span",BZ,qt(le(ae)("appMarketplace")),1)])]),_t("div",VZ,[te(A,{class:"box-card !border-none flex-1 mr-[30px]",shadow:"never","body-style":{paddingLeft:"0"}},{header:Ht(()=>[_t("div",zZ,[_t("span",GZ,qt(le(ae)("newSite")),1)])]),default:Ht(()=>[_t("div",{ref_key:"newSiteStat",ref:t,style:{width:"100%",height:"300px"}},null,512)]),_:1}),te(A,{class:"box-card !border-none flex-1",shadow:"never","body-style":{paddingLeft:"0"}},{header:Ht(()=>[_t("div",FZ,[_t("span",HZ,qt(le(ae)("siteDistribution")),1)])]),default:Ht(()=>[_t("div",{ref_key:"siteStat",ref:a,style:{width:"100%",height:"300px"}},null,512)]),_:1})]),te(A,{class:"box-card !border-none mt-[15px] site",shadow:"never","body-style":{marginTop:"13px"}},{header:Ht(()=>[_t("div",WZ,[_t("span",UZ,qt(le(ae)("systemInfo")),1)])]),default:Ht(()=>[te(D,null,{default:Ht(()=>[te(T,{label:le(ae)("os")},{default:Ht(()=>[xi(qt(o.value.system.os),1)]),_:1},8,["label"]),te(T,{label:le(ae)("phpVersions")},{default:Ht(()=>[xi(qt(o.value.system.php_v),1)]),_:1},8,["label"]),te(T,{label:le(ae)("productionEnvironment")},{default:Ht(()=>[xi(qt(o.value.system.environment),1)]),_:1},8,["label"])]),_:1})]),_:1})])])),[[M,e.value]])])}}});const nq=B2($Z,[["__scopeId","data-v-f3d3a727"]]);export{nq as default}; diff --git a/niucloud/public/admin/assets/index-501cf061.css b/niucloud/public/admin/assets/index-501cf061.css new file mode 100644 index 0000000..50ac020 --- /dev/null +++ b/niucloud/public/admin/assets/index-501cf061.css @@ -0,0 +1 @@ +:root,:host{--w-e-textarea-bg-color: #fff;--w-e-textarea-color: #333;--w-e-textarea-border-color: #ccc;--w-e-textarea-slight-border-color: #e8e8e8;--w-e-textarea-slight-color: #d4d4d4;--w-e-textarea-slight-bg-color: #f5f2f0;--w-e-textarea-selected-border-color: #B4D5FF;--w-e-textarea-handler-bg-color: #4290f7;--w-e-toolbar-color: #595959;--w-e-toolbar-bg-color: #fff;--w-e-toolbar-active-color: #333;--w-e-toolbar-active-bg-color: #f1f1f1;--w-e-toolbar-disabled-color: #999;--w-e-toolbar-border-color: #e8e8e8;--w-e-modal-button-bg-color: #fafafa;--w-e-modal-button-border-color: #d9d9d9}.w-e-text-container *,.w-e-toolbar *{box-sizing:border-box;margin:0;outline:none;padding:0}.w-e-text-container blockquote,.w-e-text-container li,.w-e-text-container p,.w-e-text-container td,.w-e-text-container th,.w-e-toolbar *{line-height:1.5}.w-e-text-container{background-color:var(--w-e-textarea-bg-color);color:var(--w-e-textarea-color);height:100%;position:relative}.w-e-text-container .w-e-scroll{-webkit-overflow-scrolling:touch;height:100%}.w-e-text-container [data-slate-editor]{word-wrap:break-word;border-top:1px solid transparent;min-height:100%;outline:0;padding:0 10px;white-space:pre-wrap}.w-e-text-container [data-slate-editor] p{margin:15px 0}.w-e-text-container [data-slate-editor] h1,.w-e-text-container [data-slate-editor] h2,.w-e-text-container [data-slate-editor] h3,.w-e-text-container [data-slate-editor] h4,.w-e-text-container [data-slate-editor] h5{margin:20px 0}.w-e-text-container [data-slate-editor] img{cursor:default;display:inline!important;max-width:100%;min-height:20px;min-width:20px}.w-e-text-container [data-slate-editor] span{text-indent:0}.w-e-text-container [data-slate-editor] [data-selected=true]{box-shadow:0 0 0 2px var(--w-e-textarea-selected-border-color)}.w-e-text-placeholder{font-style:italic;left:10px;top:17px;width:90%}.w-e-max-length-info,.w-e-text-placeholder{color:var(--w-e-textarea-slight-color);pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.w-e-max-length-info{bottom:.5em;right:1em}.w-e-bar{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-color);font-size:14px;padding:0 5px}.w-e-bar svg{fill:var(--w-e-toolbar-color);height:14px;width:14px}.w-e-bar-show{display:flex}.w-e-bar-hidden{display:none}.w-e-hover-bar{border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 5px #0000001f;position:absolute}.w-e-toolbar{flex-wrap:wrap;position:relative}.w-e-bar-divider{background-color:var(--w-e-toolbar-border-color);display:inline-flex;height:40px;margin:0 5px;width:1px}.w-e-bar-item{display:flex;height:40px;padding:4px;position:relative;text-align:center}.w-e-bar-item,.w-e-bar-item button{align-items:center;justify-content:center}.w-e-bar-item button{background:transparent;border:none;color:var(--w-e-toolbar-color);cursor:pointer;display:inline-flex;height:32px;overflow:hidden;padding:0 8px;white-space:nowrap}.w-e-bar-item button:hover{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item button .title{margin-left:5px}.w-e-bar-item .active{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item .disabled{color:var(--w-e-toolbar-disabled-color);cursor:not-allowed}.w-e-bar-item .disabled svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-menu-tooltip-v5:before{background-color:var(--w-e-toolbar-active-color);border-radius:5px;color:var(--w-e-toolbar-bg-color);content:attr(data-tooltip);font-size:.75em;opacity:0;padding:5px 10px;position:absolute;text-align:center;top:40px;transition:opacity .6s;visibility:hidden;white-space:pre;z-index:1}.w-e-menu-tooltip-v5:after{border:5px solid transparent;border-bottom:5px solid var(--w-e-toolbar-active-color);content:"";opacity:0;position:absolute;top:30px;transition:opacity .6s;visibility:hidden}.w-e-menu-tooltip-v5:hover:after,.w-e-menu-tooltip-v5:hover:before{opacity:1;visibility:visible}.w-e-menu-tooltip-v5.tooltip-right:before{left:100%;top:10px}.w-e-menu-tooltip-v5.tooltip-right:after{border-bottom-color:transparent;border-left-color:transparent;border-right-color:var(--w-e-toolbar-active-color);border-top-color:transparent;left:100%;margin-left:-10px;top:16px}.w-e-bar-item-group .w-e-bar-item-menus-container{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;display:none;left:0;margin-top:40px;position:absolute;top:0;z-index:1}.w-e-bar-item-group:hover .w-e-bar-item-menus-container{display:block}.w-e-select-list{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;left:0;margin-top:40px;max-height:350px;min-width:100px;overflow-y:auto;position:absolute;top:0;z-index:1}.w-e-select-list ul{line-height:1;list-style:none}.w-e-select-list ul .selected{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li{cursor:pointer;padding:7px 0 7px 25px;position:relative;text-align:left;white-space:nowrap}.w-e-select-list ul li:hover{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li svg{left:0;margin-left:5px;margin-top:-7px;position:absolute;top:50%}.w-e-bar-bottom .w-e-select-list{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-drop-panel{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;margin-top:40px;min-width:200px;padding:10px;position:absolute;top:0;z-index:1}.w-e-bar-bottom .w-e-drop-panel{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-modal{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;color:var(--w-e-toolbar-color);font-size:14px;min-height:40px;min-width:100px;padding:20px 15px 0;position:absolute;text-align:left;z-index:1}.w-e-modal .btn-close{cursor:pointer;line-height:1;padding:5px;position:absolute;right:8px;top:7px}.w-e-modal .btn-close svg{fill:var(--w-e-toolbar-color);height:10px;width:10px}.w-e-modal .babel-container{display:block;margin-bottom:15px}.w-e-modal .babel-container span{display:block;margin-bottom:10px}.w-e-modal .button-container{margin-bottom:15px}.w-e-modal button{background-color:var(--w-e-modal-button-bg-color);border:1px solid var(--w-e-modal-button-border-color);border-radius:4px;color:var(--w-e-toolbar-color);cursor:pointer;font-weight:400;height:32px;padding:4.5px 15px;text-align:center;touch-action:manipulation;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.w-e-modal input[type=number],.w-e-modal input[type=text],.w-e-modal textarea{font-feature-settings:"tnum";background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-modal-button-border-color);border-radius:4px;color:var(--w-e-toolbar-color);font-variant:tabular-nums;padding:4.5px 11px;transition:all .3s;width:100%}.w-e-modal textarea{min-height:60px}body .w-e-modal,body .w-e-modal *{box-sizing:border-box}.w-e-progress-bar{background-color:var(--w-e-textarea-handler-bg-color);height:1px;position:absolute;transition:width .3s;width:0}.w-e-full-screen-container{bottom:0!important;display:flex!important;flex-direction:column!important;height:100%!important;left:0!important;margin:0!important;padding:0!important;position:fixed;right:0!important;top:0!important;width:100%!important}.w-e-full-screen-container [data-w-e-textarea=true]{flex:1!important}.w-e-text-container [data-slate-editor] code{background-color:var(--w-e-textarea-slight-bg-color);border-radius:3px;font-family:monospace;padding:3px}.w-e-panel-content-color{list-style:none;text-align:left;width:230px}.w-e-panel-content-color li{border:1px solid var(--w-e-toolbar-bg-color);border-radius:3px;cursor:pointer;display:inline-block;padding:2px}.w-e-panel-content-color li:hover{border-color:var(--w-e-toolbar-color)}.w-e-panel-content-color li .color-block{border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;height:17px;width:17px}.w-e-panel-content-color .active{border-color:var(--w-e-toolbar-color)}.w-e-panel-content-color .clear{line-height:1.5;margin-bottom:5px;width:100%}.w-e-panel-content-color .clear svg{height:16px;margin-bottom:-4px;width:16px}.w-e-text-container [data-slate-editor] blockquote{background-color:var(--w-e-textarea-slight-bg-color);border-left:8px solid var(--w-e-textarea-selected-border-color);display:block;font-size:100%;line-height:1.5;margin:10px 0;padding:10px}.w-e-panel-content-emotion{font-size:20px;list-style:none;text-align:left;width:300px}.w-e-panel-content-emotion li{border-radius:3px;cursor:pointer;display:inline-block;padding:0 5px}.w-e-panel-content-emotion li:hover{background-color:var(--w-e-textarea-slight-bg-color)}.w-e-textarea-divider{border-radius:3px;margin:20px auto;padding:20px}.w-e-textarea-divider hr{background-color:var(--w-e-textarea-border-color);border:0;display:block;height:1px}.w-e-text-container [data-slate-editor] pre>code{background-color:var(--w-e-textarea-slight-bg-color);border:1px solid var(--w-e-textarea-slight-border-color);border-radius:4px;display:block;font-size:14px;padding:10px;text-indent:0}.w-e-text-container [data-slate-editor] .w-e-image-container{display:inline-block;margin:0 3px}.w-e-text-container [data-slate-editor] .w-e-image-container:hover{box-shadow:0 0 0 2px var(--w-e-textarea-selected-border-color)}.w-e-text-container [data-slate-editor] .w-e-selected-image-container{overflow:hidden;position:relative}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .w-e-image-dragger{background-color:var(--w-e-textarea-handler-bg-color);height:7px;position:absolute;width:7px}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .left-top{cursor:nwse-resize;left:0;top:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .right-top{cursor:nesw-resize;right:0;top:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .left-bottom{bottom:0;cursor:nesw-resize;left:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container .right-bottom{bottom:0;cursor:nwse-resize;right:0}.w-e-text-container [data-slate-editor] .w-e-selected-image-container:hover,.w-e-text-container [contenteditable=false] .w-e-image-container:hover{box-shadow:none}.w-e-text-container [data-slate-editor] .table-container{border:1px dashed var(--w-e-textarea-border-color);border-radius:5px;margin-top:10px;overflow-x:auto;padding:10px;width:100%}.w-e-text-container [data-slate-editor] table{border-collapse:collapse}.w-e-text-container [data-slate-editor] table td,.w-e-text-container [data-slate-editor] table th{border:1px solid var(--w-e-textarea-border-color);line-height:1.5;min-width:30px;padding:3px 5px;text-align:left}.w-e-text-container [data-slate-editor] table th{background-color:var(--w-e-textarea-slight-bg-color);font-weight:700;text-align:center}.w-e-panel-content-table{background-color:var(--w-e-toolbar-bg-color)}.w-e-panel-content-table table{border-collapse:collapse}.w-e-panel-content-table td{border:1px solid var(--w-e-toolbar-border-color);cursor:pointer;height:15px;padding:3px 5px;width:20px}.w-e-panel-content-table td.active{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-textarea-video-container{background-image:linear-gradient(45deg,#eee 25%,transparent 0,transparent 75%,#eee 0,#eee),linear-gradient(45deg,#eee 25%,#fff 0,#fff 75%,#eee 0,#eee);background-position:0 0,10px 10px;background-size:20px 20px;border:1px dashed var(--w-e-textarea-border-color);border-radius:5px;margin:10px auto 0;padding:10px 0;text-align:center}.w-e-text-container [data-slate-editor] pre>code{word-wrap:normal;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;-webkit-hyphens:none;hyphens:none;line-height:1.5;margin:.5em 0;overflow:auto;padding:1em;-moz-tab-size:4;-o-tab-size:4;tab-size:4;text-align:left;text-shadow:0 1px #fff;white-space:pre;word-break:normal;word-spacing:normal}.w-e-text-container [data-slate-editor] pre>code .token.cdata,.w-e-text-container [data-slate-editor] pre>code .token.comment,.w-e-text-container [data-slate-editor] pre>code .token.doctype,.w-e-text-container [data-slate-editor] pre>code .token.prolog{color:#708090}.w-e-text-container [data-slate-editor] pre>code .token.punctuation{color:#999}.w-e-text-container [data-slate-editor] pre>code .token.namespace{opacity:.7}.w-e-text-container [data-slate-editor] pre>code .token.boolean,.w-e-text-container [data-slate-editor] pre>code .token.constant,.w-e-text-container [data-slate-editor] pre>code .token.deleted,.w-e-text-container [data-slate-editor] pre>code .token.number,.w-e-text-container [data-slate-editor] pre>code .token.property,.w-e-text-container [data-slate-editor] pre>code .token.symbol,.w-e-text-container [data-slate-editor] pre>code .token.tag{color:#905}.w-e-text-container [data-slate-editor] pre>code .token.attr-name,.w-e-text-container [data-slate-editor] pre>code .token.builtin,.w-e-text-container [data-slate-editor] pre>code .token.char,.w-e-text-container [data-slate-editor] pre>code .token.inserted,.w-e-text-container [data-slate-editor] pre>code .token.selector,.w-e-text-container [data-slate-editor] pre>code .token.string{color:#690}.w-e-text-container [data-slate-editor] pre>code .language-css .token.string,.w-e-text-container [data-slate-editor] pre>code .style .token.string,.w-e-text-container [data-slate-editor] pre>code .token.entity,.w-e-text-container [data-slate-editor] pre>code .token.operator,.w-e-text-container [data-slate-editor] pre>code .token.url{color:#9a6e3a}.w-e-text-container [data-slate-editor] pre>code .token.atrule,.w-e-text-container [data-slate-editor] pre>code .token.attr-value,.w-e-text-container [data-slate-editor] pre>code .token.keyword{color:#07a}.w-e-text-container [data-slate-editor] pre>code .token.class-name,.w-e-text-container [data-slate-editor] pre>code .token.function{color:#dd4a68}.w-e-text-container [data-slate-editor] pre>code .token.important,.w-e-text-container [data-slate-editor] pre>code .token.regex,.w-e-text-container [data-slate-editor] pre>code .token.variable{color:#e90}.w-e-text-container [data-slate-editor] pre>code .token.bold,.w-e-text-container [data-slate-editor] pre>code .token.important{font-weight:700}.w-e-text-container [data-slate-editor] pre>code .token.italic{font-style:italic}.w-e-text-container [data-slate-editor] pre>code .token.entity{cursor:help} diff --git a/niucloud/public/admin/assets/index-6010b07e.js b/niucloud/public/admin/assets/index-6010b07e.js new file mode 100644 index 0000000..a2fdadd --- /dev/null +++ b/niucloud/public/admin/assets/index-6010b07e.js @@ -0,0 +1,85 @@ +var F9=Object.defineProperty;var H9=(e,t,n)=>t in e?F9(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ml=(e,t,n)=>(H9(e,typeof t!="symbol"?t+"":t,n),n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerpolicy&&(a.referrerPolicy=o.referrerpolicy),o.crossorigin==="use-credentials"?a.credentials="include":o.crossorigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(o){if(o.ep)return;o.ep=!0;const a=n(o);fetch(o.href,a)}})();function hd(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;o!!n[o.toLowerCase()]:o=>!!n[o]}const U9="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt",K9=hd(U9);function We(e){if(Ve(e)){const t={};for(let n=0;n{if(n){const r=n.split(j9);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function N(e){let t="";if(Qe(e))t=e;else if(Ve(e))for(let n=0;nva(n,t))}const xe=e=>Qe(e)?e:e==null?"":Ve(e)||dt(e)&&(e.toString===G3||!Xe(e.toString))?JSON.stringify(e,q3,2):String(e),q3=(e,t)=>t&&t.__v_isRef?q3(e,t.value):Ds(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o])=>(n[`${r} =>`]=o,n),{})}:is(t)?{[`Set(${t.size})`]:[...t.values()]}:dt(t)&&!Ve(t)&&!Y3(t)?String(t):t,Kt={},Ps=[],Ot=()=>{},J9=()=>!1,Q9=/^on[^a-z]/,Qi=e=>Q9.test(e),lh=e=>e.startsWith("onUpdate:"),en=Object.assign,ih=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},eC=Object.prototype.hasOwnProperty,mt=(e,t)=>eC.call(e,t),Ve=Array.isArray,Ds=e=>eu(e)==="[object Map]",is=e=>eu(e)==="[object Set]",ts=e=>eu(e)==="[object Date]",Xe=e=>typeof e=="function",Qe=e=>typeof e=="string",hi=e=>typeof e=="symbol",dt=e=>e!==null&&typeof e=="object",Ys=e=>dt(e)&&Xe(e.then)&&Xe(e.catch),G3=Object.prototype.toString,eu=e=>G3.call(e),ec=e=>eu(e).slice(8,-1),Y3=e=>eu(e)==="[object Object]",uh=e=>Qe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Yl=hd(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),md=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},tC=/-(\w)/g,Vn=md(e=>e.replace(tC,(t,n)=>n?n.toUpperCase():"")),nC=/\B([A-Z])/g,lr=md(e=>e.replace(nC,"-$1").toLowerCase()),tu=md(e=>e.charAt(0).toUpperCase()+e.slice(1)),tc=md(e=>e?`on${tu(e)}`:""),Xs=(e,t)=>!Object.is(e,t),zs=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Oo=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let C1;const rC=()=>C1||(C1=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let ar;class X3{constructor(t=!1){this.detached=t,this.active=!0,this.effects=[],this.cleanups=[],this.parent=ar,!t&&ar&&(this.index=(ar.scopes||(ar.scopes=[])).push(this)-1)}run(t){if(this.active){const n=ar;try{return ar=this,t()}finally{ar=n}}}on(){ar=this}off(){ar=this.parent}stop(t){if(this.active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Q3=e=>(e.w&ma)>0,e6=e=>(e.n&ma)>0,oC=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(d==="length"||d>=i)&&l.push(u)})}else switch(n!==void 0&&l.push(s.get(n)),t){case"add":Ve(e)?uh(n)&&l.push(s.get("length")):(l.push(s.get(Ga)),Ds(e)&&l.push(s.get(t0)));break;case"delete":Ve(e)||(l.push(s.get(Ga)),Ds(e)&&l.push(s.get(t0)));break;case"set":Ds(e)&&l.push(s.get(Ga));break}if(l.length===1)l[0]&&n0(l[0]);else{const i=[];for(const u of l)u&&i.push(...u);n0(dh(i))}}function n0(e,t){const n=Ve(e)?e:[...e];for(const r of n)r.computed&&k1(r);for(const r of n)r.computed||k1(r)}function k1(e,t){(e!==Nr||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const sC=hd("__proto__,__v_isRef,__isVue"),r6=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(hi)),lC=bd(),iC=bd(!1,!0),uC=bd(!0),cC=bd(!0,!0),$1=dC();function dC(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=$t(this);for(let a=0,s=this.length;a{e[t]=function(...n){bl();const r=$t(this)[t].apply(this,n);return yl(),r}}),e}function bd(e=!1,t=!1){return function(r,o,a){if(o==="__v_isReactive")return!e;if(o==="__v_isReadonly")return e;if(o==="__v_isShallow")return t;if(o==="__v_raw"&&a===(e?t?c6:u6:t?i6:l6).get(r))return r;const s=Ve(r);if(!e&&s&&mt($1,o))return Reflect.get($1,o,a);const l=Reflect.get(r,o,a);return(hi(o)?r6.has(o):sC(o))||(e||dr(r,"get",o),t)?l:kt(l)?s&&uh(o)?l:l.value:dt(l)?e?us(l):Et(l):l}}const fC=o6(),pC=o6(!0);function o6(e=!1){return function(n,r,o,a){let s=n[r];if(Zs(s)&&kt(s)&&!kt(o))return!1;if(!e&&(!Pc(o)&&!Zs(o)&&(s=$t(s),o=$t(o)),!Ve(n)&&kt(s)&&!kt(o)))return s.value=o,!0;const l=Ve(n)&&uh(r)?Number(r)e,yd=e=>Reflect.getPrototypeOf(e);function $u(e,t,n=!1,r=!1){e=e.__v_raw;const o=$t(e),a=$t(t);n||(t!==a&&dr(o,"get",t),dr(o,"get",a));const{has:s}=yd(o),l=r?fh:n?ph:vi;if(s.call(o,t))return l(e.get(t));if(s.call(o,a))return l(e.get(a));e!==o&&e.get(t)}function Tu(e,t=!1){const n=this.__v_raw,r=$t(n),o=$t(e);return t||(e!==o&&dr(r,"has",e),dr(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function Ou(e,t=!1){return e=e.__v_raw,!t&&dr($t(e),"iterate",Ga),Reflect.get(e,"size",e)}function T1(e){e=$t(e);const t=$t(this);return yd(t).has.call(t,e)||(t.add(e),Mo(t,"add",e,e)),this}function O1(e,t){t=$t(t);const n=$t(this),{has:r,get:o}=yd(n);let a=r.call(n,e);a||(e=$t(e),a=r.call(n,e));const s=o.call(n,e);return n.set(e,t),a?Xs(t,s)&&Mo(n,"set",e,t):Mo(n,"add",e,t),this}function M1(e){const t=$t(this),{has:n,get:r}=yd(t);let o=n.call(t,e);o||(e=$t(e),o=n.call(t,e)),r&&r.call(t,e);const a=t.delete(e);return o&&Mo(t,"delete",e,void 0),a}function N1(){const e=$t(this),t=e.size!==0,n=e.clear();return t&&Mo(e,"clear",void 0,void 0),n}function Mu(e,t){return function(r,o){const a=this,s=a.__v_raw,l=$t(s),i=t?fh:e?ph:vi;return!e&&dr(l,"iterate",Ga),s.forEach((u,d)=>r.call(o,i(u),i(d),a))}}function Nu(e,t,n){return function(...r){const o=this.__v_raw,a=$t(o),s=Ds(a),l=e==="entries"||e===Symbol.iterator&&s,i=e==="keys"&&s,u=o[e](...r),d=n?fh:t?ph:vi;return!t&&dr(a,"iterate",i?t0:Ga),{next(){const{value:f,done:p}=u.next();return p?{value:f,done:p}:{value:l?[d(f[0]),d(f[1])]:d(f),done:p}},[Symbol.iterator](){return this}}}}function jo(e){return function(...t){return e==="delete"?!1:this}}function bC(){const e={get(a){return $u(this,a)},get size(){return Ou(this)},has:Tu,add:T1,set:O1,delete:M1,clear:N1,forEach:Mu(!1,!1)},t={get(a){return $u(this,a,!1,!0)},get size(){return Ou(this)},has:Tu,add:T1,set:O1,delete:M1,clear:N1,forEach:Mu(!1,!0)},n={get(a){return $u(this,a,!0)},get size(){return Ou(this,!0)},has(a){return Tu.call(this,a,!0)},add:jo("add"),set:jo("set"),delete:jo("delete"),clear:jo("clear"),forEach:Mu(!0,!1)},r={get(a){return $u(this,a,!0,!0)},get size(){return Ou(this,!0)},has(a){return Tu.call(this,a,!0)},add:jo("add"),set:jo("set"),delete:jo("delete"),clear:jo("clear"),forEach:Mu(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(a=>{e[a]=Nu(a,!1,!1),n[a]=Nu(a,!0,!1),t[a]=Nu(a,!1,!0),r[a]=Nu(a,!0,!0)}),[e,n,t,r]}const[yC,wC,EC,CC]=bC();function wd(e,t){const n=t?e?CC:EC:e?wC:yC;return(r,o,a)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(mt(n,o)&&o in r?n:r,o,a)}const SC={get:wd(!1,!1)},kC={get:wd(!1,!0)},$C={get:wd(!0,!1)},TC={get:wd(!0,!0)},l6=new WeakMap,i6=new WeakMap,u6=new WeakMap,c6=new WeakMap;function OC(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function MC(e){return e.__v_skip||!Object.isExtensible(e)?0:OC(ec(e))}function Et(e){return Zs(e)?e:Ed(e,!1,a6,SC,l6)}function d6(e){return Ed(e,!1,gC,kC,i6)}function us(e){return Ed(e,!0,s6,$C,u6)}function kIe(e){return Ed(e,!0,_C,TC,c6)}function Ed(e,t,n,r,o){if(!dt(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const a=o.get(e);if(a)return a;const s=MC(e);if(s===0)return e;const l=new Proxy(e,s===2?r:n);return o.set(e,l),l}function da(e){return Zs(e)?da(e.__v_raw):!!(e&&e.__v_isReactive)}function Zs(e){return!!(e&&e.__v_isReadonly)}function Pc(e){return!!(e&&e.__v_isShallow)}function f6(e){return da(e)||Zs(e)}function $t(e){const t=e&&e.__v_raw;return t?$t(t):e}function Jn(e){return Lc(e,"__v_skip",!0),e}const vi=e=>dt(e)?Et(e):e,ph=e=>dt(e)?us(e):e;function hh(e){ca&&Nr&&(e=$t(e),n6(e.dep||(e.dep=dh())))}function Cd(e,t){e=$t(e),e.dep&&n0(e.dep)}function kt(e){return!!(e&&e.__v_isRef===!0)}function P(e){return p6(e,!1)}function xt(e){return p6(e,!0)}function p6(e,t){return kt(e)?e:new NC(e,t)}class NC{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:$t(t),this._value=n?t:vi(t)}get value(){return hh(this),this._value}set value(t){const n=this.__v_isShallow||Pc(t)||Zs(t);t=n?t:$t(t),Xs(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:vi(t),Cd(this))}}function Nl(e){Cd(e)}function c(e){return kt(e)?e.value:e}const AC={get:(e,t,n)=>c(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return kt(o)&&!kt(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function h6(e){return da(e)?e:new Proxy(e,AC)}class RC{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>hh(this),()=>Cd(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function $Ie(e){return new RC(e)}function an(e){const t=Ve(e)?new Array(e.length):{};for(const n in e)t[n]=qt(e,n);return t}class xC{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}}function qt(e,t,n){const r=e[t];return kt(r)?r:new xC(e,t,n)}var v6;class IC{constructor(t,n,r,o){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this[v6]=!1,this._dirty=!0,this.effect=new _d(t,()=>{this._dirty||(this._dirty=!0,Cd(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=$t(this);return hh(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}v6="__v_isReadonly";function m6(e,t,n=!1){let r,o;const a=Xe(e);return a?(r=e,o=Ot):(r=e.get,o=e.set),new IC(r,o,a||!o,n)}function LC(e,...t){}function fa(e,t,n,r){let o;try{o=r?e(...r):e()}catch(a){wl(a,t,n)}return o}function mr(e,t,n,r){if(Xe(e)){const a=fa(e,t,n,r);return a&&Ys(a)&&a.catch(s=>{wl(s,t,n)}),a}const o=[];for(let a=0;a>>1;gi(Mn[r])qr&&Mn.splice(t,1)}function b6(e){Ve(e)?Vs.push(...e):(!_o||!_o.includes(e,e.allowRecurse?Da+1:Da))&&Vs.push(e),_6()}function A1(e,t=mi?qr+1:0){for(;tgi(n)-gi(r)),Da=0;Da<_o.length;Da++)_o[Da]();_o=null,Da=0}}const gi=e=>e.id==null?1/0:e.id,VC=(e,t)=>{const n=gi(e)-gi(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function y6(e){r0=!1,mi=!0,Mn.sort(VC);const t=Ot;try{for(qr=0;qrAl.emit(o,...a)),Au=[]):typeof window<"u"&&window.HTMLElement&&!(!((r=(n=window.navigator)===null||n===void 0?void 0:n.userAgent)===null||r===void 0)&&r.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(a=>{BC(a,t)}),setTimeout(()=>{Al||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Au=[])},3e3)):Au=[]}function FC(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Kt;let o=n;const a=t.startsWith("update:"),s=a&&t.slice(7);if(s&&s in r){const d=`${s==="modelValue"?"model":s}Modifiers`,{number:f,trim:p}=r[d]||Kt;p&&(o=n.map(v=>Qe(v)?v.trim():v)),f&&(o=n.map(Oo))}let l,i=r[l=tc(t)]||r[l=tc(Vn(t))];!i&&a&&(i=r[l=tc(lr(t))]),i&&mr(i,e,6,o);const u=r[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,mr(u,e,6,o)}}function w6(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const a=e.emits;let s={},l=!1;if(!Xe(e)){const i=u=>{const d=w6(u,t,!0);d&&(l=!0,en(s,d))};!n&&t.mixins.length&&t.mixins.forEach(i),e.extends&&i(e.extends),e.mixins&&e.mixins.forEach(i)}return!a&&!l?(dt(e)&&r.set(e,null),null):(Ve(a)?a.forEach(i=>s[i]=null):en(s,a),dt(e)&&r.set(e,s),s)}function kd(e,t){return!e||!Qi(t)?!1:(t=t.slice(2).replace(/Once$/,""),mt(e,t[0].toLowerCase()+t.slice(1))||mt(e,lr(t))||mt(e,t))}let kn=null,$d=null;function _i(e){const t=kn;return kn=e,$d=e&&e.type.__scopeId||null,t}function TIe(e){$d=e}function OIe(){$d=null}const MIe=e=>ue;function ue(e,t=kn,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&U1(-1);const a=_i(t);let s;try{s=e(...o)}finally{_i(a),r._d&&U1(1)}return s};return r._n=!0,r._c=!0,r._d=!0,r}function nc(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:a,propsOptions:[s],slots:l,attrs:i,emit:u,render:d,renderCache:f,data:p,setupState:v,ctx:h,inheritAttrs:m}=e;let _,g;const b=_i(e);try{if(n.shapeFlag&4){const w=o||r;_=sr(d.call(w,w,f,a,v,p,h)),g=i}else{const w=t;_=sr(w.length>1?w(a,{attrs:i,slots:l,emit:u}):w(a,null)),g=t.props?i:UC(i)}}catch(w){Jl.length=0,wl(w,e,1),_=X(bn)}let y=_;if(g&&m!==!1){const w=Object.keys(g),{shapeFlag:C}=y;w.length&&C&7&&(s&&w.some(lh)&&(g=KC(g,s)),y=no(y,g))}return n.dirs&&(y=no(y),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition&&(y.transition=n.transition),_=y,_i(b),_}function HC(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||Qi(n))&&((t||(t={}))[n]=e[n]);return t},KC=(e,t)=>{const n={};for(const r in e)(!lh(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function WC(e,t,n){const{props:r,children:o,component:a}=e,{props:s,children:l,patchFlag:i}=t,u=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&i>=0){if(i&1024)return!0;if(i&16)return r?R1(r,s,u):!!s;if(i&8){const d=t.dynamicProps;for(let f=0;fe.__isSuspense,jC={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,a,s,l,i,u){e==null?qC(t,n,r,o,a,s,l,i,u):GC(e,t,n,r,o,s,l,i,u)},hydrate:YC,create:gh,normalize:XC},NIe=jC;function bi(e,t){const n=e.props&&e.props[t];Xe(n)&&n()}function qC(e,t,n,r,o,a,s,l,i){const{p:u,o:{createElement:d}}=i,f=d("div"),p=e.suspense=gh(e,o,r,t,f,n,a,s,l,i);u(null,p.pendingBranch=e.ssContent,f,null,r,p,a,s),p.deps>0?(bi(e,"onPending"),bi(e,"onFallback"),u(null,e.ssFallback,t,n,r,null,a,s),Bs(p,e.ssFallback)):p.resolve()}function GC(e,t,n,r,o,a,s,l,{p:i,um:u,o:{createElement:d}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const p=t.ssContent,v=t.ssFallback,{activeBranch:h,pendingBranch:m,isInFallback:_,isHydrating:g}=f;if(m)f.pendingBranch=p,Gr(p,m)?(i(m,p,f.hiddenContainer,null,o,f,a,s,l),f.deps<=0?f.resolve():_&&(i(h,v,n,r,o,null,a,s,l),Bs(f,v))):(f.pendingId++,g?(f.isHydrating=!1,f.activeBranch=m):u(m,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=d("div"),_?(i(null,p,f.hiddenContainer,null,o,f,a,s,l),f.deps<=0?f.resolve():(i(h,v,n,r,o,null,a,s,l),Bs(f,v))):h&&Gr(p,h)?(i(h,p,n,r,o,f,a,s,l),f.resolve(!0)):(i(null,p,f.hiddenContainer,null,o,f,a,s,l),f.deps<=0&&f.resolve()));else if(h&&Gr(p,h))i(h,p,n,r,o,f,a,s,l),Bs(f,p);else if(bi(t,"onPending"),f.pendingBranch=p,f.pendingId++,i(null,p,f.hiddenContainer,null,o,f,a,s,l),f.deps<=0)f.resolve();else{const{timeout:b,pendingId:y}=f;b>0?setTimeout(()=>{f.pendingId===y&&f.fallback(v)},b):b===0&&f.fallback(v)}}function gh(e,t,n,r,o,a,s,l,i,u,d=!1){const{p:f,m:p,um:v,n:h,o:{parentNode:m,remove:_}}=u,g=Oo(e.props&&e.props.timeout),b={vnode:e,parent:t,parentComponent:n,isSVG:s,container:r,hiddenContainer:o,anchor:a,deps:0,pendingId:0,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:d,isUnmounted:!1,effects:[],resolve(y=!1){const{vnode:w,activeBranch:C,pendingBranch:S,pendingId:O,effects:T,parentComponent:A,container:R}=b;if(b.isHydrating)b.isHydrating=!1;else if(!y){const H=C&&S.transition&&S.transition.mode==="out-in";H&&(C.transition.afterLeave=()=>{O===b.pendingId&&p(S,R,U,0)});let{anchor:U}=b;C&&(U=h(C),v(C,A,b,!0)),H||p(S,R,U,0)}Bs(b,S),b.pendingBranch=null,b.isInFallback=!1;let B=b.parent,V=!1;for(;B;){if(B.pendingBranch){B.effects.push(...T),V=!0;break}B=B.parent}V||b6(T),b.effects=[],bi(w,"onResolve")},fallback(y){if(!b.pendingBranch)return;const{vnode:w,activeBranch:C,parentComponent:S,container:O,isSVG:T}=b;bi(w,"onFallback");const A=h(C),R=()=>{b.isInFallback&&(f(null,y,O,A,S,null,T,l,i),Bs(b,y))},B=y.transition&&y.transition.mode==="out-in";B&&(C.transition.afterLeave=R),b.isInFallback=!0,v(C,S,null,!0),B||R()},move(y,w,C){b.activeBranch&&p(b.activeBranch,y,w,C),b.container=y},next(){return b.activeBranch&&h(b.activeBranch)},registerDep(y,w){const C=!!b.pendingBranch;C&&b.deps++;const S=y.vnode.el;y.asyncDep.catch(O=>{wl(O,y,0)}).then(O=>{if(y.isUnmounted||b.isUnmounted||b.pendingId!==y.suspenseId)return;y.asyncResolved=!0;const{vnode:T}=y;c0(y,O,!1),S&&(T.el=S);const A=!S&&y.subTree.el;w(y,T,m(S||y.subTree.el),S?null:h(y.subTree),b,s,i),A&&_(A),mh(y,T.el),C&&--b.deps===0&&b.resolve()})},unmount(y,w){b.isUnmounted=!0,b.activeBranch&&v(b.activeBranch,n,y,w),b.pendingBranch&&v(b.pendingBranch,n,y,w)}};return b}function YC(e,t,n,r,o,a,s,l,i){const u=t.suspense=gh(t,r,n,e.parentNode,document.createElement("div"),null,o,a,s,l,!0),d=i(e,u.pendingBranch=t.ssContent,n,u,a,s);return u.deps===0&&u.resolve(),d}function XC(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=x1(r?n.default:n),e.ssFallback=r?x1(n.fallback):X(bn)}function x1(e){let t;if(Xe(e)){const n=ns&&e._c;n&&(e._d=!1,E()),e=e(),n&&(e._d=!0,t=Zn,F6())}return Ve(e)&&(e=HC(e)),e=sr(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function C6(e,t){t&&t.pendingBranch?Ve(e)?t.effects.push(...e):t.effects.push(e):b6(e)}function Bs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,o=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=o,mh(r,o))}function ct(e,t){if(dn){let n=dn.provides;const r=dn.parent&&dn.parent.provides;r===n&&(n=dn.provides=Object.create(r)),n[e]=t}}function Fe(e,t,n=!1){const r=dn||kn;if(r){const o=r.parent==null?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides;if(o&&e in o)return o[e];if(arguments.length>1)return n&&Xe(t)?t.call(r.proxy):t}}function Qn(e,t){return nu(e,null,t)}function ZC(e,t){return nu(e,null,{flush:"post"})}function AIe(e,t){return nu(e,null,{flush:"sync"})}const Ru={};function Ce(e,t,n){return nu(e,t,n)}function nu(e,t,{immediate:n,deep:r,flush:o,onTrack:a,onTrigger:s}=Kt){const l=dn;let i,u=!1,d=!1;if(kt(e)?(i=()=>e.value,u=Pc(e)):da(e)?(i=()=>e,r=!0):Ve(e)?(d=!0,u=e.some(y=>da(y)||Pc(y)),i=()=>e.map(y=>{if(kt(y))return y.value;if(da(y))return Fa(y);if(Xe(y))return fa(y,l,2)})):Xe(e)?t?i=()=>fa(e,l,2):i=()=>{if(!(l&&l.isUnmounted))return f&&f(),mr(e,l,3,[p])}:i=Ot,t&&r){const y=i;i=()=>Fa(y())}let f,p=y=>{f=g.onStop=()=>{fa(y,l,4)}},v;if(Qs)if(p=Ot,t?n&&mr(t,l,3,[i(),d?[]:void 0,p]):i(),o==="sync"){const y=DS();v=y.__watcherHandles||(y.__watcherHandles=[])}else return Ot;let h=d?new Array(e.length).fill(Ru):Ru;const m=()=>{if(g.active)if(t){const y=g.run();(r||u||(d?y.some((w,C)=>Xs(w,h[C])):Xs(y,h)))&&(f&&f(),mr(t,l,3,[y,h===Ru?void 0:d&&h[0]===Ru?[]:h,p]),h=y)}else g.run()};m.allowRecurse=!!t;let _;o==="sync"?_=m:o==="post"?_=()=>Cn(m,l&&l.suspense):(m.pre=!0,l&&(m.id=l.uid),_=()=>Sd(m));const g=new _d(i,_);t?n?m():h=g.run():o==="post"?Cn(g.run.bind(g),l&&l.suspense):g.run();const b=()=>{g.stop(),l&&l.scope&&ih(l.scope.effects,g)};return v&&v.push(b),b}function JC(e,t,n){const r=this.proxy,o=Qe(e)?e.includes(".")?S6(r,e):()=>r[e]:e.bind(r,r);let a;Xe(t)?a=t:(a=t.handler,n=t);const s=dn;ga(this);const l=nu(o,a.bind(r),n);return s?ga(s):pa(),l}function S6(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o{Fa(n,t)});else if(Y3(e))for(const n in e)Fa(e[n],t);return e}function k6(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return rt(()=>{e.isMounted=!0}),Ut(()=>{e.isUnmounting=!0}),e}const fr=[Function,Array],QC={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:fr,onEnter:fr,onAfterEnter:fr,onEnterCancelled:fr,onBeforeLeave:fr,onLeave:fr,onAfterLeave:fr,onLeaveCancelled:fr,onBeforeAppear:fr,onAppear:fr,onAfterAppear:fr,onAppearCancelled:fr},setup(e,{slots:t}){const n=tt(),r=k6();let o;return()=>{const a=t.default&&_h(t.default(),!0);if(!a||!a.length)return;let s=a[0];if(a.length>1){for(const m of a)if(m.type!==bn){s=m;break}}const l=$t(e),{mode:i}=l;if(r.isLeaving)return Cf(s);const u=I1(s);if(!u)return Cf(s);const d=yi(u,l,r,n);Js(u,d);const f=n.subTree,p=f&&I1(f);let v=!1;const{getTransitionKey:h}=u.type;if(h){const m=h();o===void 0?o=m:m!==o&&(o=m,v=!0)}if(p&&p.type!==bn&&(!Gr(u,p)||v)){const m=yi(p,l,r,n);if(Js(p,m),i==="out-in")return r.isLeaving=!0,m.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},Cf(s);i==="in-out"&&u.type!==bn&&(m.delayLeave=(_,g,b)=>{const y=T6(r,p);y[String(p.key)]=p,_._leaveCb=()=>{g(),_._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=b})}return s}}},$6=QC;function T6(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function yi(e,t,n,r){const{appear:o,mode:a,persisted:s=!1,onBeforeEnter:l,onEnter:i,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:p,onAfterLeave:v,onLeaveCancelled:h,onBeforeAppear:m,onAppear:_,onAfterAppear:g,onAppearCancelled:b}=t,y=String(e.key),w=T6(n,e),C=(T,A)=>{T&&mr(T,r,9,A)},S=(T,A)=>{const R=A[1];C(T,A),Ve(T)?T.every(B=>B.length<=1)&&R():T.length<=1&&R()},O={mode:a,persisted:s,beforeEnter(T){let A=l;if(!n.isMounted)if(o)A=m||l;else return;T._leaveCb&&T._leaveCb(!0);const R=w[y];R&&Gr(e,R)&&R.el._leaveCb&&R.el._leaveCb(),C(A,[T])},enter(T){let A=i,R=u,B=d;if(!n.isMounted)if(o)A=_||i,R=g||u,B=b||d;else return;let V=!1;const H=T._enterCb=U=>{V||(V=!0,U?C(B,[T]):C(R,[T]),O.delayedLeave&&O.delayedLeave(),T._enterCb=void 0)};A?S(A,[T,H]):H()},leave(T,A){const R=String(e.key);if(T._enterCb&&T._enterCb(!0),n.isUnmounting)return A();C(f,[T]);let B=!1;const V=T._leaveCb=H=>{B||(B=!0,A(),H?C(h,[T]):C(v,[T]),T._leaveCb=void 0,w[R]===e&&delete w[R])};w[R]=e,p?S(p,[T,V]):V()},clone(T){return yi(T,t,n,r)}};return O}function Cf(e){if(ru(e))return e=no(e),e.children=null,e}function I1(e){return ru(e)?e.children?e.children[0]:void 0:e}function Js(e,t){e.shapeFlag&6&&e.component?Js(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function _h(e,t=!1,n){let r=[],o=0;for(let a=0;a1)for(let a=0;a!!e.type.__asyncLoader;function Sf(e){Xe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:a,suspensible:s=!0,onError:l}=e;let i=null,u,d=0;const f=()=>(d++,i=null,p()),p=()=>{let v;return i||(v=i=t().catch(h=>{if(h=h instanceof Error?h:new Error(String(h)),l)return new Promise((m,_)=>{l(h,()=>m(f()),()=>_(h),d+1)});throw h}).then(h=>v!==i&&i?i:(h&&(h.__esModule||h[Symbol.toStringTag]==="Module")&&(h=h.default),u=h,h)))};return oe({name:"AsyncComponentWrapper",__asyncLoader:p,get __asyncResolved(){return u},setup(){const v=dn;if(u)return()=>kf(u,v);const h=b=>{i=null,wl(b,v,13,!r)};if(s&&v.suspense||Qs)return p().then(b=>()=>kf(b,v)).catch(b=>(h(b),()=>r?X(r,{error:b}):null));const m=P(!1),_=P(),g=P(!!o);return o&&setTimeout(()=>{g.value=!1},o),a!=null&&setTimeout(()=>{if(!m.value&&!_.value){const b=new Error(`Async component timed out after ${a}ms.`);h(b),_.value=b}},a),p().then(()=>{m.value=!0,v.parent&&ru(v.parent.vnode)&&Sd(v.parent.update)}).catch(b=>{h(b),_.value=b}),()=>{if(m.value&&u)return kf(u,v);if(_.value&&r)return X(r,{error:_.value});if(n&&!g.value)return X(n)}}})}function kf(e,t){const{ref:n,props:r,children:o,ce:a}=t.vnode,s=X(e,r,o);return s.ref=n,s.ce=a,delete t.vnode.ce,s}const ru=e=>e.type.__isKeepAlive,eS={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=tt(),r=n.ctx;if(!r.renderer)return()=>{const b=t.default&&t.default();return b&&b.length===1?b[0]:b};const o=new Map,a=new Set;let s=null;const l=n.suspense,{renderer:{p:i,m:u,um:d,o:{createElement:f}}}=r,p=f("div");r.activate=(b,y,w,C,S)=>{const O=b.component;u(b,y,w,0,l),i(O.vnode,b,y,w,O,l,C,b.slotScopeIds,S),Cn(()=>{O.isDeactivated=!1,O.a&&zs(O.a);const T=b.props&&b.props.onVnodeMounted;T&&Xn(T,O.parent,b)},l)},r.deactivate=b=>{const y=b.component;u(b,p,null,1,l),Cn(()=>{y.da&&zs(y.da);const w=b.props&&b.props.onVnodeUnmounted;w&&Xn(w,y.parent,b),y.isDeactivated=!0},l)};function v(b){$f(b),d(b,n,l,!0)}function h(b){o.forEach((y,w)=>{const C=f0(y.type);C&&(!b||!b(C))&&m(w)})}function m(b){const y=o.get(b);!s||y.type!==s.type?v(y):s&&$f(s),o.delete(b),a.delete(b)}Ce(()=>[e.include,e.exclude],([b,y])=>{b&&h(w=>Ul(b,w)),y&&h(w=>!Ul(y,w))},{flush:"post",deep:!0});let _=null;const g=()=>{_!=null&&o.set(_,Tf(n.subTree))};return rt(g),lo(g),Ut(()=>{o.forEach(b=>{const{subTree:y,suspense:w}=n,C=Tf(y);if(b.type===C.type){$f(C);const S=C.component.da;S&&Cn(S,w);return}v(b)})}),()=>{if(_=null,!t.default)return null;const b=t.default(),y=b[0];if(b.length>1)return s=null,b;if(!Vt(y)||!(y.shapeFlag&4)&&!(y.shapeFlag&128))return s=null,y;let w=Tf(y);const C=w.type,S=f0(Ya(w)?w.type.__asyncResolved||{}:C),{include:O,exclude:T,max:A}=e;if(O&&(!S||!Ul(O,S))||T&&S&&Ul(T,S))return s=w,y;const R=w.key==null?C:w.key,B=o.get(R);return w.el&&(w=no(w),y.shapeFlag&128&&(y.ssContent=w)),_=R,B?(w.el=B.el,w.component=B.component,w.transition&&Js(w,w.transition),w.shapeFlag|=512,a.delete(R),a.add(R)):(a.add(R),A&&a.size>parseInt(A,10)&&m(a.values().next().value)),w.shapeFlag|=256,s=w,E6(y.type)?y:w}}},RIe=eS;function Ul(e,t){return Ve(e)?e.some(n=>Ul(n,t)):Qe(e)?e.split(",").includes(t):e.test?e.test(t):!1}function tS(e,t){M6(e,"a",t)}function O6(e,t){M6(e,"da",t)}function M6(e,t,n=dn){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Td(t,r,n),n){let o=n.parent;for(;o&&o.parent;)ru(o.parent.vnode)&&nS(r,t,n,o),o=o.parent}}function nS(e,t,n,r){const o=Td(t,e,r,!0);io(()=>{ih(r[t],o)},n)}function $f(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Tf(e){return e.shapeFlag&128?e.ssContent:e}function Td(e,t,n=dn,r=!1){if(n){const o=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...s)=>{if(n.isUnmounted)return;bl(),ga(n);const l=mr(t,n,e,s);return pa(),yl(),l});return r?o.unshift(a):o.push(a),a}}const Po=e=>(t,n=dn)=>(!Qs||e==="sp")&&Td(e,(...r)=>t(...r),n),ou=Po("bm"),rt=Po("m"),bh=Po("bu"),lo=Po("u"),Ut=Po("bum"),io=Po("um"),rS=Po("sp"),oS=Po("rtg"),aS=Po("rtc");function sS(e,t=dn){Td("ec",e,t)}function ot(e,t){const n=kn;if(n===null)return e;const r=Nd(n)||n.proxy,o=e.dirs||(e.dirs=[]);for(let a=0;at(s,l,void 0,a&&a[l]));else{const s=Object.keys(e);o=new Array(s.length);for(let l=0,i=s.length;l{const a=r.fn(...o);return a&&(a.key=r.key),a}:r.fn)}return e}function ke(e,t,n={},r,o){if(kn.isCE||kn.parent&&Ya(kn.parent)&&kn.parent.isCE)return t!=="default"&&(n.name=t),X("slot",n,r&&r());let a=e[t];a&&a._c&&(a._d=!1),E();const s=a&&A6(a(n)),l=me(qe,{key:n.key||s&&s.key||`_${t}`},s||(r?r():[]),s&&e._===1?64:-2);return!o&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),a&&a._c&&(a._d=!0),l}function A6(e){return e.some(t=>Vt(t)?!(t.type===bn||t.type===qe&&!A6(t.children)):!0)?e:null}function iS(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:tc(r)]=e[r];return n}const o0=e=>e?W6(e)?Nd(e)||e.proxy:o0(e.parent):null,Xl=en(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>o0(e.parent),$root:e=>o0(e.root),$emit:e=>e.emit,$options:e=>Eh(e),$forceUpdate:e=>e.f||(e.f=()=>Sd(e.update)),$nextTick:e=>e.n||(e.n=He.bind(e.proxy)),$watch:e=>JC.bind(e)}),Of=(e,t)=>e!==Kt&&!e.__isScriptSetup&&mt(e,t),a0={get({_:e},t){const{ctx:n,setupState:r,data:o,props:a,accessCache:s,type:l,appContext:i}=e;let u;if(t[0]!=="$"){const v=s[t];if(v!==void 0)switch(v){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return a[t]}else{if(Of(r,t))return s[t]=1,r[t];if(o!==Kt&&mt(o,t))return s[t]=2,o[t];if((u=e.propsOptions[0])&&mt(u,t))return s[t]=3,a[t];if(n!==Kt&&mt(n,t))return s[t]=4,n[t];s0&&(s[t]=0)}}const d=Xl[t];let f,p;if(d)return t==="$attrs"&&dr(e,"get",t),d(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==Kt&&mt(n,t))return s[t]=4,n[t];if(p=i.config.globalProperties,mt(p,t))return p[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:a}=e;return Of(o,t)?(o[t]=n,!0):r!==Kt&&mt(r,t)?(r[t]=n,!0):mt(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:a}},s){let l;return!!n[s]||e!==Kt&&mt(e,s)||Of(t,s)||(l=a[0])&&mt(l,s)||mt(r,s)||mt(Xl,s)||mt(o.config.globalProperties,s)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:mt(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},uS=en({},a0,{get(e,t){if(t!==Symbol.unscopables)return a0.get(e,t,e)},has(e,t){return t[0]!=="_"&&!K9(t)}});let s0=!0;function cS(e){const t=Eh(e),n=e.proxy,r=e.ctx;s0=!1,t.beforeCreate&&P1(t.beforeCreate,e,"bc");const{data:o,computed:a,methods:s,watch:l,provide:i,inject:u,created:d,beforeMount:f,mounted:p,beforeUpdate:v,updated:h,activated:m,deactivated:_,beforeDestroy:g,beforeUnmount:b,destroyed:y,unmounted:w,render:C,renderTracked:S,renderTriggered:O,errorCaptured:T,serverPrefetch:A,expose:R,inheritAttrs:B,components:V,directives:H,filters:U}=t;if(u&&dS(u,r,null,e.appContext.config.unwrapInjectedRef),s)for(const x in s){const L=s[x];Xe(L)&&(r[x]=L.bind(n))}if(o){const x=o.call(n,n);dt(x)&&(e.data=Et(x))}if(s0=!0,a)for(const x in a){const L=a[x],z=Xe(L)?L.bind(n,n):Xe(L.get)?L.get.bind(n,n):Ot,q=!Xe(L)&&Xe(L.set)?L.set.bind(n):Ot,le=$({get:z,set:q});Object.defineProperty(r,x,{enumerable:!0,configurable:!0,get:()=>le.value,set:G=>le.value=G})}if(l)for(const x in l)R6(l[x],r,n,x);if(i){const x=Xe(i)?i.call(n):i;Reflect.ownKeys(x).forEach(L=>{ct(L,x[L])})}d&&P1(d,e,"c");function I(x,L){Ve(L)?L.forEach(z=>x(z.bind(n))):L&&x(L.bind(n))}if(I(ou,f),I(rt,p),I(bh,v),I(lo,h),I(tS,m),I(O6,_),I(sS,T),I(aS,S),I(oS,O),I(Ut,b),I(io,w),I(rS,A),Ve(R))if(R.length){const x=e.exposed||(e.exposed={});R.forEach(L=>{Object.defineProperty(x,L,{get:()=>n[L],set:z=>n[L]=z})})}else e.exposed||(e.exposed={});C&&e.render===Ot&&(e.render=C),B!=null&&(e.inheritAttrs=B),V&&(e.components=V),H&&(e.directives=H)}function dS(e,t,n=Ot,r=!1){Ve(e)&&(e=l0(e));for(const o in e){const a=e[o];let s;dt(a)?"default"in a?s=Fe(a.from||o,a.default,!0):s=Fe(a.from||o):s=Fe(a),kt(s)&&r?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:l=>s.value=l}):t[o]=s}}function P1(e,t,n){mr(Ve(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function R6(e,t,n,r){const o=r.includes(".")?S6(n,r):()=>n[r];if(Qe(e)){const a=t[e];Xe(a)&&Ce(o,a)}else if(Xe(e))Ce(o,e.bind(n));else if(dt(e))if(Ve(e))e.forEach(a=>R6(a,t,n,r));else{const a=Xe(e.handler)?e.handler.bind(n):t[e.handler];Xe(a)&&Ce(o,a,e)}}function Eh(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:a,config:{optionMergeStrategies:s}}=e.appContext,l=a.get(t);let i;return l?i=l:!o.length&&!n&&!r?i=t:(i={},o.length&&o.forEach(u=>zc(i,u,s,!0)),zc(i,t,s)),dt(t)&&a.set(t,i),i}function zc(e,t,n,r=!1){const{mixins:o,extends:a}=t;a&&zc(e,a,n,!0),o&&o.forEach(s=>zc(e,s,n,!0));for(const s in t)if(!(r&&s==="expose")){const l=fS[s]||n&&n[s];e[s]=l?l(e[s],t[s]):t[s]}return e}const fS={data:D1,props:La,emits:La,methods:La,computed:La,beforeCreate:Ln,created:Ln,beforeMount:Ln,mounted:Ln,beforeUpdate:Ln,updated:Ln,beforeDestroy:Ln,beforeUnmount:Ln,destroyed:Ln,unmounted:Ln,activated:Ln,deactivated:Ln,errorCaptured:Ln,serverPrefetch:Ln,components:La,directives:La,watch:hS,provide:D1,inject:pS};function D1(e,t){return t?e?function(){return en(Xe(e)?e.call(this,this):e,Xe(t)?t.call(this,this):t)}:t:e}function pS(e,t){return La(l0(e),l0(t))}function l0(e){if(Ve(e)){const t={};for(let n=0;n0)&&!(s&16)){if(s&8){const d=e.vnode.dynamicProps;for(let f=0;f{i=!0;const[p,v]=I6(f,t,!0);en(s,p),v&&l.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!a&&!i)return dt(e)&&r.set(e,Ps),Ps;if(Ve(a))for(let d=0;d-1,v[1]=m<0||h-1||mt(v,"default"))&&l.push(f)}}}const u=[s,l];return dt(e)&&r.set(e,u),u}function z1(e){return e[0]!=="$"}function V1(e){const t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:e===null?"null":""}function B1(e,t){return V1(e)===V1(t)}function F1(e,t){return Ve(t)?t.findIndex(n=>B1(n,e)):Xe(t)&&B1(t,e)?0:-1}const L6=e=>e[0]==="_"||e==="$stable",Ch=e=>Ve(e)?e.map(sr):[sr(e)],gS=(e,t,n)=>{if(t._n)return t;const r=ue((...o)=>Ch(t(...o)),n);return r._c=!1,r},P6=(e,t,n)=>{const r=e._ctx;for(const o in e){if(L6(o))continue;const a=e[o];if(Xe(a))t[o]=gS(o,a,r);else if(a!=null){const s=Ch(a);t[o]=()=>s}}},D6=(e,t)=>{const n=Ch(t);e.slots.default=()=>n},_S=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=$t(t),Lc(t,"_",n)):P6(t,e.slots={})}else e.slots={},t&&D6(e,t);Lc(e.slots,Od,1)},bS=(e,t,n)=>{const{vnode:r,slots:o}=e;let a=!0,s=Kt;if(r.shapeFlag&32){const l=t._;l?n&&l===1?a=!1:(en(o,t),!n&&l===1&&delete o._):(a=!t.$stable,P6(t,o)),s=t}else t&&(D6(e,t),s={default:1});if(a)for(const l in o)!L6(l)&&!(l in s)&&delete o[l]};function z6(){return{app:null,config:{isNativeTag:J9,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let yS=0;function wS(e,t){return function(r,o=null){Xe(r)||(r=Object.assign({},r)),o!=null&&!dt(o)&&(o=null);const a=z6(),s=new Set;let l=!1;const i=a.app={_uid:yS++,_component:r,_props:o,_container:null,_context:a,_instance:null,version:VS,get config(){return a.config},set config(u){},use(u,...d){return s.has(u)||(u&&Xe(u.install)?(s.add(u),u.install(i,...d)):Xe(u)&&(s.add(u),u(i,...d))),i},mixin(u){return a.mixins.includes(u)||a.mixins.push(u),i},component(u,d){return d?(a.components[u]=d,i):a.components[u]},directive(u,d){return d?(a.directives[u]=d,i):a.directives[u]},mount(u,d,f){if(!l){const p=X(r,o);return p.appContext=a,d&&t?t(p,u):e(p,u,f),l=!0,i._container=u,u.__vue_app__=i,Nd(p.component)||p.component.proxy}},unmount(){l&&(e(null,i._container),delete i._container.__vue_app__)},provide(u,d){return a.provides[u]=d,i}};return i}}function Vc(e,t,n,r,o=!1){if(Ve(e)){e.forEach((p,v)=>Vc(p,t&&(Ve(t)?t[v]:t),n,r,o));return}if(Ya(r)&&!o)return;const a=r.shapeFlag&4?Nd(r.component)||r.component.proxy:r.el,s=o?null:a,{i:l,r:i}=e,u=t&&t.r,d=l.refs===Kt?l.refs={}:l.refs,f=l.setupState;if(u!=null&&u!==i&&(Qe(u)?(d[u]=null,mt(f,u)&&(f[u]=null)):kt(u)&&(u.value=null)),Xe(i))fa(i,l,12,[s,d]);else{const p=Qe(i),v=kt(i);if(p||v){const h=()=>{if(e.f){const m=p?mt(f,i)?f[i]:d[i]:i.value;o?Ve(m)&&ih(m,a):Ve(m)?m.includes(a)||m.push(a):p?(d[i]=[a],mt(f,i)&&(f[i]=d[i])):(i.value=[a],e.k&&(d[e.k]=i.value))}else p?(d[i]=s,mt(f,i)&&(f[i]=s)):v&&(i.value=s,e.k&&(d[e.k]=s))};s?(h.id=-1,Cn(h,n)):h()}}}let qo=!1;const xu=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Iu=e=>e.nodeType===8;function ES(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:a,parentNode:s,remove:l,insert:i,createComment:u}}=e,d=(g,b)=>{if(!b.hasChildNodes()){n(null,g,b),Dc(),b._vnode=g;return}qo=!1,f(b.firstChild,g,null,null,null),Dc(),b._vnode=g,qo&&console.error("Hydration completed but contains mismatches.")},f=(g,b,y,w,C,S=!1)=>{const O=Iu(g)&&g.data==="[",T=()=>m(g,b,y,w,C,O),{type:A,ref:R,shapeFlag:B,patchFlag:V}=b;let H=g.nodeType;b.el=g,V===-2&&(S=!1,b.dynamicChildren=null);let U=null;switch(A){case Ao:H!==3?b.children===""?(i(b.el=o(""),s(g),g),U=g):U=T():(g.data!==b.children&&(qo=!0,g.data=b.children),U=a(g));break;case bn:H!==8||O?U=T():U=a(g);break;case Fs:if(O&&(g=a(g),H=g.nodeType),H===1||H===3){U=g;const K=!b.children.length;for(let I=0;I{S=S||!!b.dynamicChildren;const{type:O,props:T,patchFlag:A,shapeFlag:R,dirs:B}=b,V=O==="input"&&B||O==="option";if(V||A!==-1){if(B&&Wr(b,null,y,"created"),T)if(V||!S||A&48)for(const U in T)(V&&U.endsWith("value")||Qi(U)&&!Yl(U))&&r(g,U,null,T[U],!1,void 0,y);else T.onClick&&r(g,"onClick",null,T.onClick,!1,void 0,y);let H;if((H=T&&T.onVnodeBeforeMount)&&Xn(H,y,b),B&&Wr(b,null,y,"beforeMount"),((H=T&&T.onVnodeMounted)||B)&&C6(()=>{H&&Xn(H,y,b),B&&Wr(b,null,y,"mounted")},w),R&16&&!(T&&(T.innerHTML||T.textContent))){let U=v(g.firstChild,b,g,y,w,C,S);for(;U;){qo=!0;const K=U;U=U.nextSibling,l(K)}}else R&8&&g.textContent!==b.children&&(qo=!0,g.textContent=b.children)}return g.nextSibling},v=(g,b,y,w,C,S,O)=>{O=O||!!b.dynamicChildren;const T=b.children,A=T.length;for(let R=0;R{const{slotScopeIds:O}=b;O&&(C=C?C.concat(O):O);const T=s(g),A=v(a(g),b,T,y,w,C,S);return A&&Iu(A)&&A.data==="]"?a(b.anchor=A):(qo=!0,i(b.anchor=u("]"),T,A),A)},m=(g,b,y,w,C,S)=>{if(qo=!0,b.el=null,S){const A=_(g);for(;;){const R=a(g);if(R&&R!==A)l(R);else break}}const O=a(g),T=s(g);return l(g),n(null,b,T,O,y,w,xu(T),C),O},_=g=>{let b=0;for(;g;)if(g=a(g),g&&Iu(g)&&(g.data==="["&&b++,g.data==="]")){if(b===0)return a(g);b--}return g};return[d,f]}const Cn=C6;function CS(e){return V6(e)}function SS(e){return V6(e,ES)}function V6(e,t){const n=rC();n.__VUE__=!0;const{insert:r,remove:o,patchProp:a,createElement:s,createText:l,createComment:i,setText:u,setElementText:d,parentNode:f,nextSibling:p,setScopeId:v=Ot,insertStaticContent:h}=e,m=(j,D,F,Q=null,ge=null,ne=null,Se=!1,ye=null,Te=!!D.dynamicChildren)=>{if(j===D)return;j&&!Gr(j,D)&&(Q=Z(j),G(j,ge,ne,!0),j=null),D.patchFlag===-2&&(Te=!1,D.dynamicChildren=null);const{type:we,ref:J,shapeFlag:_e}=D;switch(we){case Ao:_(j,D,F,Q);break;case bn:g(j,D,F,Q);break;case Fs:j==null&&b(D,F,Q,Se);break;case qe:V(j,D,F,Q,ge,ne,Se,ye,Te);break;default:_e&1?C(j,D,F,Q,ge,ne,Se,ye,Te):_e&6?H(j,D,F,Q,ge,ne,Se,ye,Te):(_e&64||_e&128)&&we.process(j,D,F,Q,ge,ne,Se,ye,Te,ce)}J!=null&&ge&&Vc(J,j&&j.ref,ne,D||j,!D)},_=(j,D,F,Q)=>{if(j==null)r(D.el=l(D.children),F,Q);else{const ge=D.el=j.el;D.children!==j.children&&u(ge,D.children)}},g=(j,D,F,Q)=>{j==null?r(D.el=i(D.children||""),F,Q):D.el=j.el},b=(j,D,F,Q)=>{[j.el,j.anchor]=h(j.children,D,F,Q,j.el,j.anchor)},y=({el:j,anchor:D},F,Q)=>{let ge;for(;j&&j!==D;)ge=p(j),r(j,F,Q),j=ge;r(D,F,Q)},w=({el:j,anchor:D})=>{let F;for(;j&&j!==D;)F=p(j),o(j),j=F;o(D)},C=(j,D,F,Q,ge,ne,Se,ye,Te)=>{Se=Se||D.type==="svg",j==null?S(D,F,Q,ge,ne,Se,ye,Te):A(j,D,ge,ne,Se,ye,Te)},S=(j,D,F,Q,ge,ne,Se,ye)=>{let Te,we;const{type:J,props:_e,shapeFlag:De,transition:$e,dirs:Pe}=j;if(Te=j.el=s(j.type,ne,_e&&_e.is,_e),De&8?d(Te,j.children):De&16&&T(j.children,Te,null,Q,ge,ne&&J!=="foreignObject",Se,ye),Pe&&Wr(j,null,Q,"created"),_e){for(const ze in _e)ze!=="value"&&!Yl(ze)&&a(Te,ze,null,_e[ze],ne,j.children,Q,ge,de);"value"in _e&&a(Te,"value",null,_e.value),(we=_e.onVnodeBeforeMount)&&Xn(we,Q,j)}O(Te,j,j.scopeId,Se,Q),Pe&&Wr(j,null,Q,"beforeMount");const Ue=(!ge||ge&&!ge.pendingBranch)&&$e&&!$e.persisted;Ue&&$e.beforeEnter(Te),r(Te,D,F),((we=_e&&_e.onVnodeMounted)||Ue||Pe)&&Cn(()=>{we&&Xn(we,Q,j),Ue&&$e.enter(Te),Pe&&Wr(j,null,Q,"mounted")},ge)},O=(j,D,F,Q,ge)=>{if(F&&v(j,F),Q)for(let ne=0;ne{for(let we=Te;we{const ye=D.el=j.el;let{patchFlag:Te,dynamicChildren:we,dirs:J}=D;Te|=j.patchFlag&16;const _e=j.props||Kt,De=D.props||Kt;let $e;F&&Aa(F,!1),($e=De.onVnodeBeforeUpdate)&&Xn($e,F,D,j),J&&Wr(D,j,F,"beforeUpdate"),F&&Aa(F,!0);const Pe=ge&&D.type!=="foreignObject";if(we?R(j.dynamicChildren,we,ye,F,Q,Pe,ne):Se||L(j,D,ye,null,F,Q,Pe,ne,!1),Te>0){if(Te&16)B(ye,D,_e,De,F,Q,ge);else if(Te&2&&_e.class!==De.class&&a(ye,"class",null,De.class,ge),Te&4&&a(ye,"style",_e.style,De.style,ge),Te&8){const Ue=D.dynamicProps;for(let ze=0;ze{$e&&Xn($e,F,D,j),J&&Wr(D,j,F,"updated")},Q)},R=(j,D,F,Q,ge,ne,Se)=>{for(let ye=0;ye{if(F!==Q){if(F!==Kt)for(const ye in F)!Yl(ye)&&!(ye in Q)&&a(j,ye,F[ye],null,Se,D.children,ge,ne,de);for(const ye in Q){if(Yl(ye))continue;const Te=Q[ye],we=F[ye];Te!==we&&ye!=="value"&&a(j,ye,we,Te,Se,D.children,ge,ne,de)}"value"in Q&&a(j,"value",F.value,Q.value)}},V=(j,D,F,Q,ge,ne,Se,ye,Te)=>{const we=D.el=j?j.el:l(""),J=D.anchor=j?j.anchor:l("");let{patchFlag:_e,dynamicChildren:De,slotScopeIds:$e}=D;$e&&(ye=ye?ye.concat($e):$e),j==null?(r(we,F,Q),r(J,F,Q),T(D.children,F,J,ge,ne,Se,ye,Te)):_e>0&&_e&64&&De&&j.dynamicChildren?(R(j.dynamicChildren,De,F,ge,ne,Se,ye),(D.key!=null||ge&&D===ge.subTree)&&Sh(j,D,!0)):L(j,D,F,J,ge,ne,Se,ye,Te)},H=(j,D,F,Q,ge,ne,Se,ye,Te)=>{D.slotScopeIds=ye,j==null?D.shapeFlag&512?ge.ctx.activate(D,F,Q,Se,Te):U(D,F,Q,ge,ne,Se,Te):K(j,D,Te)},U=(j,D,F,Q,ge,ne,Se)=>{const ye=j.component=K6(j,Q,ge);if(ru(j)&&(ye.ctx.renderer=ce),j6(ye),ye.asyncDep){if(ge&&ge.registerDep(ye,I),!j.el){const Te=ye.subTree=X(bn);g(null,Te,D,F)}return}I(ye,j,D,F,ge,ne,Se)},K=(j,D,F)=>{const Q=D.component=j.component;if(WC(j,D,F))if(Q.asyncDep&&!Q.asyncResolved){x(Q,D,F);return}else Q.next=D,zC(Q.update),Q.update();else D.el=j.el,Q.vnode=D},I=(j,D,F,Q,ge,ne,Se)=>{const ye=()=>{if(j.isMounted){let{next:J,bu:_e,u:De,parent:$e,vnode:Pe}=j,Ue=J,ze;Aa(j,!1),J?(J.el=Pe.el,x(j,J,Se)):J=Pe,_e&&zs(_e),(ze=J.props&&J.props.onVnodeBeforeUpdate)&&Xn(ze,$e,J,Pe),Aa(j,!0);const se=nc(j),pe=j.subTree;j.subTree=se,m(pe,se,f(pe.el),Z(pe),j,ge,ne),J.el=se.el,Ue===null&&mh(j,se.el),De&&Cn(De,ge),(ze=J.props&&J.props.onVnodeUpdated)&&Cn(()=>Xn(ze,$e,J,Pe),ge)}else{let J;const{el:_e,props:De}=D,{bm:$e,m:Pe,parent:Ue}=j,ze=Ya(D);if(Aa(j,!1),$e&&zs($e),!ze&&(J=De&&De.onVnodeBeforeMount)&&Xn(J,Ue,D),Aa(j,!0),_e&&Ne){const se=()=>{j.subTree=nc(j),Ne(_e,j.subTree,j,ge,null)};ze?D.type.__asyncLoader().then(()=>!j.isUnmounted&&se()):se()}else{const se=j.subTree=nc(j);m(null,se,F,Q,j,ge,ne),D.el=se.el}if(Pe&&Cn(Pe,ge),!ze&&(J=De&&De.onVnodeMounted)){const se=D;Cn(()=>Xn(J,Ue,se),ge)}(D.shapeFlag&256||Ue&&Ya(Ue.vnode)&&Ue.vnode.shapeFlag&256)&&j.a&&Cn(j.a,ge),j.isMounted=!0,D=F=Q=null}},Te=j.effect=new _d(ye,()=>Sd(we),j.scope),we=j.update=()=>Te.run();we.id=j.uid,Aa(j,!0),we()},x=(j,D,F)=>{D.component=j;const Q=j.vnode.props;j.vnode=D,j.next=null,mS(j,D.props,Q,F),bS(j,D.children,F),bl(),A1(),yl()},L=(j,D,F,Q,ge,ne,Se,ye,Te=!1)=>{const we=j&&j.children,J=j?j.shapeFlag:0,_e=D.children,{patchFlag:De,shapeFlag:$e}=D;if(De>0){if(De&128){q(we,_e,F,Q,ge,ne,Se,ye,Te);return}else if(De&256){z(we,_e,F,Q,ge,ne,Se,ye,Te);return}}$e&8?(J&16&&de(we,ge,ne),_e!==we&&d(F,_e)):J&16?$e&16?q(we,_e,F,Q,ge,ne,Se,ye,Te):de(we,ge,ne,!0):(J&8&&d(F,""),$e&16&&T(_e,F,Q,ge,ne,Se,ye,Te))},z=(j,D,F,Q,ge,ne,Se,ye,Te)=>{j=j||Ps,D=D||Ps;const we=j.length,J=D.length,_e=Math.min(we,J);let De;for(De=0;De<_e;De++){const $e=D[De]=Te?oa(D[De]):sr(D[De]);m(j[De],$e,F,null,ge,ne,Se,ye,Te)}we>J?de(j,ge,ne,!0,!1,_e):T(D,F,Q,ge,ne,Se,ye,Te,_e)},q=(j,D,F,Q,ge,ne,Se,ye,Te)=>{let we=0;const J=D.length;let _e=j.length-1,De=J-1;for(;we<=_e&&we<=De;){const $e=j[we],Pe=D[we]=Te?oa(D[we]):sr(D[we]);if(Gr($e,Pe))m($e,Pe,F,null,ge,ne,Se,ye,Te);else break;we++}for(;we<=_e&&we<=De;){const $e=j[_e],Pe=D[De]=Te?oa(D[De]):sr(D[De]);if(Gr($e,Pe))m($e,Pe,F,null,ge,ne,Se,ye,Te);else break;_e--,De--}if(we>_e){if(we<=De){const $e=De+1,Pe=$eDe)for(;we<=_e;)G(j[we],ge,ne,!0),we++;else{const $e=we,Pe=we,Ue=new Map;for(we=Pe;we<=De;we++){const Ae=D[we]=Te?oa(D[we]):sr(D[we]);Ae.key!=null&&Ue.set(Ae.key,we)}let ze,se=0;const pe=De-Pe+1;let Me=!1,W=0;const ee=new Array(pe);for(we=0;we=pe){G(Ae,ge,ne,!0);continue}let at;if(Ae.key!=null)at=Ue.get(Ae.key);else for(ze=Pe;ze<=De;ze++)if(ee[ze-Pe]===0&&Gr(Ae,D[ze])){at=ze;break}at===void 0?G(Ae,ge,ne,!0):(ee[at-Pe]=we+1,at>=W?W=at:Me=!0,m(Ae,D[at],F,null,ge,ne,Se,ye,Te),se++)}const Ee=Me?kS(ee):Ps;for(ze=Ee.length-1,we=pe-1;we>=0;we--){const Ae=Pe+we,at=D[Ae],Lt=Ae+1{const{el:ne,type:Se,transition:ye,children:Te,shapeFlag:we}=j;if(we&6){le(j.component.subTree,D,F,Q);return}if(we&128){j.suspense.move(D,F,Q);return}if(we&64){Se.move(j,D,F,ce);return}if(Se===qe){r(ne,D,F);for(let _e=0;_eye.enter(ne),ge);else{const{leave:_e,delayLeave:De,afterLeave:$e}=ye,Pe=()=>r(ne,D,F),Ue=()=>{_e(ne,()=>{Pe(),$e&&$e()})};De?De(ne,Pe,Ue):Ue()}else r(ne,D,F)},G=(j,D,F,Q=!1,ge=!1)=>{const{type:ne,props:Se,ref:ye,children:Te,dynamicChildren:we,shapeFlag:J,patchFlag:_e,dirs:De}=j;if(ye!=null&&Vc(ye,null,F,j,!0),J&256){D.ctx.deactivate(j);return}const $e=J&1&&De,Pe=!Ya(j);let Ue;if(Pe&&(Ue=Se&&Se.onVnodeBeforeUnmount)&&Xn(Ue,D,j),J&6)te(j.component,F,Q);else{if(J&128){j.suspense.unmount(F,Q);return}$e&&Wr(j,null,D,"beforeUnmount"),J&64?j.type.remove(j,D,F,ge,ce,Q):we&&(ne!==qe||_e>0&&_e&64)?de(we,D,F,!1,!0):(ne===qe&&_e&384||!ge&&J&16)&&de(Te,D,F),Q&&ae(j)}(Pe&&(Ue=Se&&Se.onVnodeUnmounted)||$e)&&Cn(()=>{Ue&&Xn(Ue,D,j),$e&&Wr(j,null,D,"unmounted")},F)},ae=j=>{const{type:D,el:F,anchor:Q,transition:ge}=j;if(D===qe){be(F,Q);return}if(D===Fs){w(j);return}const ne=()=>{o(F),ge&&!ge.persisted&&ge.afterLeave&&ge.afterLeave()};if(j.shapeFlag&1&&ge&&!ge.persisted){const{leave:Se,delayLeave:ye}=ge,Te=()=>Se(F,ne);ye?ye(j.el,ne,Te):Te()}else ne()},be=(j,D)=>{let F;for(;j!==D;)F=p(j),o(j),j=F;o(D)},te=(j,D,F)=>{const{bum:Q,scope:ge,update:ne,subTree:Se,um:ye}=j;Q&&zs(Q),ge.stop(),ne&&(ne.active=!1,G(Se,j,D,F)),ye&&Cn(ye,D),Cn(()=>{j.isUnmounted=!0},D),D&&D.pendingBranch&&!D.isUnmounted&&j.asyncDep&&!j.asyncResolved&&j.suspenseId===D.pendingId&&(D.deps--,D.deps===0&&D.resolve())},de=(j,D,F,Q=!1,ge=!1,ne=0)=>{for(let Se=ne;Sej.shapeFlag&6?Z(j.component.subTree):j.shapeFlag&128?j.suspense.next():p(j.anchor||j.el),Y=(j,D,F)=>{j==null?D._vnode&&G(D._vnode,null,null,!0):m(D._vnode||null,j,D,null,null,null,F),A1(),Dc(),D._vnode=j},ce={p:m,um:G,m:le,r:ae,mt:U,mc:T,pc:L,pbc:R,n:Z,o:e};let ve,Ne;return t&&([ve,Ne]=t(ce)),{render:Y,hydrate:ve,createApp:wS(Y,ve)}}function Aa({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Sh(e,t,n=!1){const r=e.children,o=t.children;if(Ve(r)&&Ve(o))for(let a=0;a>1,e[n[l]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,s=n[a-1];a-- >0;)n[a]=s,s=t[s];return n}const $S=e=>e.__isTeleport,Zl=e=>e&&(e.disabled||e.disabled===""),H1=e=>typeof SVGElement<"u"&&e instanceof SVGElement,u0=(e,t)=>{const n=e&&e.to;return Qe(n)?t?t(n):null:n},TS={__isTeleport:!0,process(e,t,n,r,o,a,s,l,i,u){const{mc:d,pc:f,pbc:p,o:{insert:v,querySelector:h,createText:m,createComment:_}}=u,g=Zl(t.props);let{shapeFlag:b,children:y,dynamicChildren:w}=t;if(e==null){const C=t.el=m(""),S=t.anchor=m("");v(C,n,r),v(S,n,r);const O=t.target=u0(t.props,h),T=t.targetAnchor=m("");O&&(v(T,O),s=s||H1(O));const A=(R,B)=>{b&16&&d(y,R,B,o,a,s,l,i)};g?A(n,S):O&&A(O,T)}else{t.el=e.el;const C=t.anchor=e.anchor,S=t.target=e.target,O=t.targetAnchor=e.targetAnchor,T=Zl(e.props),A=T?n:S,R=T?C:O;if(s=s||H1(S),w?(p(e.dynamicChildren,w,A,o,a,s,l),Sh(e,t,!0)):i||f(e,t,A,R,o,a,s,l,!1),g)T||Lu(t,n,C,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const B=t.target=u0(t.props,h);B&&Lu(t,B,null,u,0)}else T&&Lu(t,S,O,u,1)}B6(t)},remove(e,t,n,r,{um:o,o:{remove:a}},s){const{shapeFlag:l,children:i,anchor:u,targetAnchor:d,target:f,props:p}=e;if(f&&a(d),(s||!Zl(p))&&(a(u),l&16))for(let v=0;v0?Zn||Ps:null,F6(),ns>0&&Zn&&Zn.push(e),e}function M(e,t,n,r,o,a){return H6(k(e,t,n,r,o,a,!0))}function me(e,t,n,r,o){return H6(X(e,t,n,r,o,!0))}function Vt(e){return e?e.__v_isVNode===!0:!1}function Gr(e,t){return e.type===t.type&&e.key===t.key}function xIe(e){}const Od="__vInternal",U6=({key:e})=>e??null,rc=({ref:e,ref_key:t,ref_for:n})=>e!=null?Qe(e)||kt(e)||Xe(e)?{i:kn,r:e,k:t,f:!!n}:e:null;function k(e,t=null,n=null,r=0,o=null,a=e===qe?0:1,s=!1,l=!1){const i={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&U6(t),ref:t&&rc(t),scopeId:$d,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:kn};return l?(kh(i,n),a&128&&e.normalize(i)):n&&(i.shapeFlag|=Qe(n)?8:16),ns>0&&!s&&Zn&&(i.patchFlag>0||a&6)&&i.patchFlag!==32&&Zn.push(i),i}const X=MS;function MS(e,t=null,n=null,r=0,o=null,a=!1){if((!e||e===N6)&&(e=bn),Vt(e)){const l=no(e,t,!0);return n&&kh(l,n),ns>0&&!a&&Zn&&(l.shapeFlag&6?Zn[Zn.indexOf(e)]=l:Zn.push(l)),l.patchFlag|=-2,l}if(LS(e)&&(e=e.__vccOpts),t){t=Md(t);let{class:l,style:i}=t;l&&!Qe(l)&&(t.class=N(l)),dt(i)&&(f6(i)&&!Ve(i)&&(i=en({},i)),t.style=We(i))}const s=Qe(e)?1:E6(e)?128:$S(e)?64:dt(e)?4:Xe(e)?2:0;return k(e,t,n,r,o,s,a,!0)}function Md(e){return e?f6(e)||Od in e?en({},e):e:null}function no(e,t,n=!1){const{props:r,ref:o,patchFlag:a,children:s}=e,l=t?ft(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&U6(l),ref:t&&t.ref?n&&o?Ve(o)?o.concat(rc(t)):[o,rc(t)]:rc(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==qe?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&no(e.ssContent),ssFallback:e.ssFallback&&no(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx}}function bt(e=" ",t=0){return X(Ao,null,e,t)}function NS(e,t){const n=X(Fs,null,e);return n.staticCount=t,n}function fe(e="",t=!1){return t?(E(),me(bn,null,e)):X(bn,null,e)}function sr(e){return e==null||typeof e=="boolean"?X(bn):Ve(e)?X(qe,null,e.slice()):typeof e=="object"?oa(e):X(Ao,null,String(e))}function oa(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:no(e)}function kh(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(Ve(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),kh(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!(Od in t)?t._ctx=kn:o===3&&kn&&(kn.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Xe(t)?(t={default:t,_ctx:kn},n=32):(t=String(t),r&64?(n=16,t=[bt(t)]):n=8);e.children=t,e.shapeFlag|=n}function ft(...e){const t={};for(let n=0;ndn||kn,ga=e=>{dn=e,e.scope.on()},pa=()=>{dn&&dn.scope.off(),dn=null};function W6(e){return e.vnode.shapeFlag&4}let Qs=!1;function j6(e,t=!1){Qs=t;const{props:n,children:r}=e.vnode,o=W6(e);vS(e,n,o,t),_S(e,r);const a=o?xS(e,t):void 0;return Qs=!1,a}function xS(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Jn(new Proxy(e.ctx,a0));const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?G6(e):null;ga(e),bl();const a=fa(r,e,0,[e.props,o]);if(yl(),pa(),Ys(a)){if(a.then(pa,pa),t)return a.then(s=>{c0(e,s,t)}).catch(s=>{wl(s,e,0)});e.asyncDep=a}else c0(e,a,t)}else q6(e,t)}function c0(e,t,n){Xe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:dt(t)&&(e.setupState=h6(t)),q6(e,n)}let Bc,d0;function IIe(e){Bc=e,d0=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,uS))}}const LIe=()=>!Bc;function q6(e,t,n){const r=e.type;if(!e.render){if(!t&&Bc&&!r.render){const o=r.template||Eh(e).template;if(o){const{isCustomElement:a,compilerOptions:s}=e.appContext.config,{delimiters:l,compilerOptions:i}=r,u=en(en({isCustomElement:a,delimiters:l},s),i);r.render=Bc(o,u)}}e.render=r.render||Ot,d0&&d0(e)}ga(e),bl(),cS(e),yl(),pa()}function IS(e){return new Proxy(e.attrs,{get(t,n){return dr(e,"get","$attrs"),t[n]}})}function G6(e){const t=r=>{e.exposed=r||{}};let n;return{get attrs(){return n||(n=IS(e))},slots:e.slots,emit:e.emit,expose:t}}function Nd(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(h6(Jn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Xl)return Xl[n](e)},has(t,n){return n in t||n in Xl}}))}function f0(e,t=!0){return Xe(e)?e.displayName||e.name:e.name||t&&e.__name}function LS(e){return Xe(e)&&"__vccOpts"in e}const $=(e,t)=>m6(e,t,Qs);function PIe(){return null}function DIe(){return null}function zIe(e){}function VIe(e,t){return null}function En(){return Y6().slots}function El(){return Y6().attrs}function Y6(){const e=tt();return e.setupContext||(e.setupContext=G6(e))}function BIe(e,t){const n=Ve(e)?e.reduce((r,o)=>(r[o]={},r),{}):e;for(const r in t){const o=n[r];o?Ve(o)||Xe(o)?n[r]={type:o,default:t[r]}:o.default=t[r]:o===null&&(n[r]={default:t[r]})}return n}function FIe(e,t){const n={};for(const r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function HIe(e){const t=tt();let n=e();return pa(),Ys(n)&&(n=n.catch(r=>{throw ga(t),r})),[n,()=>ga(t)]}function je(e,t,n){const r=arguments.length;return r===2?dt(t)&&!Ve(t)?Vt(t)?X(e,null,[t]):X(e,t):X(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Vt(n)&&(n=[n]),X(e,t,n))}const PS=Symbol(""),DS=()=>Fe(PS);function UIe(){}function KIe(e,t,n,r){const o=n[r];if(o&&zS(o,e))return o;const a=t();return a.memo=e.slice(),n[r]=a}function zS(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let r=0;r0&&Zn&&Zn.push(e),!0}const VS="3.2.45",BS={createComponentInstance:K6,setupComponent:j6,renderComponentRoot:nc,setCurrentRenderingInstance:_i,isVNode:Vt,normalizeVNode:sr},WIe=BS,jIe=null,qIe=null,FS="http://www.w3.org/2000/svg",za=typeof document<"u"?document:null,K1=za&&za.createElement("template"),HS={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t?za.createElementNS(FS,e):za.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>za.createTextNode(e),createComment:e=>za.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>za.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,a){const s=n?n.previousSibling:t.lastChild;if(o&&(o===a||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===a||!(o=o.nextSibling)););else{K1.innerHTML=r?`${e}`:e;const l=K1.content;if(r){const i=l.firstChild;for(;i.firstChild;)l.appendChild(i.firstChild);l.removeChild(i)}t.insertBefore(l,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function US(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function KS(e,t,n){const r=e.style,o=Qe(n);if(n&&!o){for(const a in n)p0(r,a,n[a]);if(t&&!Qe(t))for(const a in t)n[a]==null&&p0(r,a,"")}else{const a=r.display;o?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=a)}}const W1=/\s*!important$/;function p0(e,t,n){if(Ve(n))n.forEach(r=>p0(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=WS(e,t);W1.test(n)?e.setProperty(lr(r),n.replace(W1,""),"important"):e[r]=n}}const j1=["Webkit","Moz","ms"],Mf={};function WS(e,t){const n=Mf[t];if(n)return n;let r=Vn(t);if(r!=="filter"&&r in e)return Mf[t]=r;r=tu(r);for(let o=0;oNf||(ZS.then(()=>Nf=0),Nf=Date.now());function QS(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;mr(ek(r,n.value),t,5,[r])};return n.value=e,n.attached=JS(),n}function ek(e,t){if(Ve(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const Y1=/^on[a-z]/,tk=(e,t,n,r,o=!1,a,s,l,i)=>{t==="class"?US(e,r,o):t==="style"?KS(e,n,r):Qi(t)?lh(t)||YS(e,t,n,r,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):nk(e,t,r,o))?qS(e,t,r,a,s,l,i):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),jS(e,t,r,o))};function nk(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&Y1.test(t)&&Xe(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||Y1.test(t)&&Qe(n)?!1:t in e}function rk(e,t){const n=oe(e);class r extends $h{constructor(a){super(n,a,t)}}return r.def=n,r}const GIe=e=>rk(e,wk),ok=typeof HTMLElement<"u"?HTMLElement:class{};class $h extends ok{constructor(t,n={},r){super(),this._def=t,this._props=n,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this.shadowRoot&&r?r(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,He(()=>{this._connected||(ba(null,this.shadowRoot),this._instance=null)})}_resolveDef(){this._resolved=!0;for(let r=0;r{for(const o of r)this._setAttr(o.attributeName)}).observe(this,{attributes:!0});const t=(r,o=!1)=>{const{props:a,styles:s}=r;let l;if(a&&!Ve(a))for(const i in a){const u=a[i];(u===Number||u&&u.type===Number)&&(i in this._props&&(this._props[i]=Oo(this._props[i])),(l||(l=Object.create(null)))[Vn(i)]=!0)}this._numberProps=l,o&&this._resolveProps(r),this._applyStyles(s),this._update()},n=this._def.__asyncLoader;n?n().then(r=>t(r,!0)):t(this._def)}_resolveProps(t){const{props:n}=t,r=Ve(n)?n:Object.keys(n||{});for(const o of Object.keys(this))o[0]!=="_"&&r.includes(o)&&this._setProp(o,this[o],!0,!1);for(const o of r.map(Vn))Object.defineProperty(this,o,{get(){return this._getProp(o)},set(a){this._setProp(o,a)}})}_setAttr(t){let n=this.getAttribute(t);const r=Vn(t);this._numberProps&&this._numberProps[r]&&(n=Oo(n)),this._setProp(r,n,!1)}_getProp(t){return this._props[t]}_setProp(t,n,r=!0,o=!0){n!==this._props[t]&&(this._props[t]=n,o&&this._instance&&this._update(),r&&(n===!0?this.setAttribute(lr(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(lr(t),n+""):n||this.removeAttribute(lr(t))))}_update(){ba(this._createVNode(),this.shadowRoot)}_createVNode(){const t=X(this._def,en({},this._props));return this._instance||(t.ce=n=>{this._instance=n,n.isCE=!0;const r=(a,s)=>{this.dispatchEvent(new CustomEvent(a,{detail:s}))};n.emit=(a,...s)=>{r(a,s),lr(a)!==a&&r(lr(a),s)};let o=this;for(;o=o&&(o.parentNode||o.host);)if(o instanceof $h){n.parent=o._instance,n.provides=o._instance.provides;break}}),t}_applyStyles(t){t&&t.forEach(n=>{const r=document.createElement("style");r.textContent=n,this.shadowRoot.appendChild(r)})}}function YIe(e="$style"){{const t=tt();if(!t)return Kt;const n=t.type.__cssModules;if(!n)return Kt;const r=n[e];return r||Kt}}function XIe(e){const t=tt();if(!t)return;const n=t.ut=(o=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(a=>v0(a,o))},r=()=>{const o=e(t.proxy);h0(t.subTree,o),n(o)};ZC(r),rt(()=>{const o=new MutationObserver(r);o.observe(t.subTree.el.parentNode,{childList:!0}),io(()=>o.disconnect())})}function h0(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{h0(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)v0(e.el,t);else if(e.type===qe)e.children.forEach(n=>h0(n,t));else if(e.type===Fs){let{el:n,anchor:r}=e;for(;n&&(v0(n,t),n!==r);)n=n.nextSibling}}function v0(e,t){if(e.nodeType===1){const n=e.style;for(const r in t)n.setProperty(`--${r}`,t[r])}}const Go="transition",Rl="animation",tn=(e,{slots:t})=>je($6,Z6(e),t);tn.displayName="Transition";const X6={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},ak=tn.props=en({},$6.props,X6),Ra=(e,t=[])=>{Ve(e)?e.forEach(n=>n(...t)):e&&e(...t)},X1=e=>e?Ve(e)?e.some(t=>t.length>1):e.length>1:!1;function Z6(e){const t={};for(const V in e)V in X6||(t[V]=e[V]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:a=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:i=a,appearActiveClass:u=s,appearToClass:d=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:v=`${n}-leave-to`}=e,h=sk(o),m=h&&h[0],_=h&&h[1],{onBeforeEnter:g,onEnter:b,onEnterCancelled:y,onLeave:w,onLeaveCancelled:C,onBeforeAppear:S=g,onAppear:O=b,onAppearCancelled:T=y}=t,A=(V,H,U)=>{ea(V,H?d:l),ea(V,H?u:s),U&&U()},R=(V,H)=>{V._isLeaving=!1,ea(V,f),ea(V,v),ea(V,p),H&&H()},B=V=>(H,U)=>{const K=V?O:b,I=()=>A(H,V,U);Ra(K,[H,I]),Z1(()=>{ea(H,V?i:a),mo(H,V?d:l),X1(K)||J1(H,r,m,I)})};return en(t,{onBeforeEnter(V){Ra(g,[V]),mo(V,a),mo(V,s)},onBeforeAppear(V){Ra(S,[V]),mo(V,i),mo(V,u)},onEnter:B(!1),onAppear:B(!0),onLeave(V,H){V._isLeaving=!0;const U=()=>R(V,H);mo(V,f),Q6(),mo(V,p),Z1(()=>{V._isLeaving&&(ea(V,f),mo(V,v),X1(w)||J1(V,r,_,U))}),Ra(w,[V,U])},onEnterCancelled(V){A(V,!1),Ra(y,[V])},onAppearCancelled(V){A(V,!0),Ra(T,[V])},onLeaveCancelled(V){R(V),Ra(C,[V])}})}function sk(e){if(e==null)return null;if(dt(e))return[Af(e.enter),Af(e.leave)];{const t=Af(e);return[t,t]}}function Af(e){return Oo(e)}function mo(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function ea(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function Z1(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let lk=0;function J1(e,t,n,r){const o=e._endId=++lk,a=()=>{o===e._endId&&r()};if(n)return setTimeout(a,n);const{type:s,timeout:l,propCount:i}=J6(e,t);if(!s)return r();const u=s+"end";let d=0;const f=()=>{e.removeEventListener(u,p),a()},p=v=>{v.target===e&&++d>=i&&f()};setTimeout(()=>{d(n[h]||"").split(", "),o=r(`${Go}Delay`),a=r(`${Go}Duration`),s=Q1(o,a),l=r(`${Rl}Delay`),i=r(`${Rl}Duration`),u=Q1(l,i);let d=null,f=0,p=0;t===Go?s>0&&(d=Go,f=s,p=a.length):t===Rl?u>0&&(d=Rl,f=u,p=i.length):(f=Math.max(s,u),d=f>0?s>u?Go:Rl:null,p=d?d===Go?a.length:i.length:0);const v=d===Go&&/\b(transform|all)(,|$)/.test(r(`${Go}Property`).toString());return{type:d,timeout:f,propCount:p,hasTransform:v}}function Q1(e,t){for(;e.lengthem(n)+em(e[r])))}function em(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function Q6(){return document.body.offsetHeight}const eb=new WeakMap,tb=new WeakMap,ik={name:"TransitionGroup",props:en({},ak,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=tt(),r=k6();let o,a;return lo(()=>{if(!o.length)return;const s=e.moveClass||`${e.name||"v"}-move`;if(!fk(o[0].el,n.vnode.el,s))return;o.forEach(uk),o.forEach(ck);const l=o.filter(dk);Q6(),l.forEach(i=>{const u=i.el,d=u.style;mo(u,s),d.transform=d.webkitTransform=d.transitionDuration="";const f=u._moveCb=p=>{p&&p.target!==u||(!p||/transform$/.test(p.propertyName))&&(u.removeEventListener("transitionend",f),u._moveCb=null,ea(u,s))};u.addEventListener("transitionend",f)})}),()=>{const s=$t(e),l=Z6(s);let i=s.tag||qe;o=a,a=t.default?_h(t.default()):[];for(let u=0;u{s.split(/\s+/).forEach(l=>l&&r.classList.remove(l))}),n.split(/\s+/).forEach(s=>s&&r.classList.add(s)),r.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(r);const{hasTransform:a}=J6(r);return o.removeChild(r),a}const _a=e=>{const t=e.props["onUpdate:modelValue"]||!1;return Ve(t)?n=>zs(t,n):t};function pk(e){e.target.composing=!0}function tm(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const el={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e._assign=_a(o);const a=r||o.props&&o.props.type==="number";yo(e,t?"change":"input",s=>{if(s.target.composing)return;let l=e.value;n&&(l=l.trim()),a&&(l=Oo(l)),e._assign(l)}),n&&yo(e,"change",()=>{e.value=e.value.trim()}),t||(yo(e,"compositionstart",pk),yo(e,"compositionend",tm),yo(e,"change",tm))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},a){if(e._assign=_a(a),e.composing||document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===t||(o||e.type==="number")&&Oo(e.value)===t))return;const s=t??"";e.value!==s&&(e.value=s)}},tl={deep:!0,created(e,t,n){e._assign=_a(n),yo(e,"change",()=>{const r=e._modelValue,o=nl(e),a=e.checked,s=e._assign;if(Ve(r)){const l=vd(r,o),i=l!==-1;if(a&&!i)s(r.concat(o));else if(!a&&i){const u=[...r];u.splice(l,1),s(u)}}else if(is(r)){const l=new Set(r);a?l.add(o):l.delete(o),s(l)}else s(rb(e,a))})},mounted:nm,beforeUpdate(e,t,n){e._assign=_a(n),nm(e,t,n)}};function nm(e,{value:t,oldValue:n},r){e._modelValue=t,Ve(t)?e.checked=vd(t,r.props.value)>-1:is(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=va(t,rb(e,!0)))}const Ad={created(e,{value:t},n){e.checked=va(t,n.props.value),e._assign=_a(n),yo(e,"change",()=>{e._assign(nl(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e._assign=_a(r),t!==n&&(e.checked=va(t,r.props.value))}},hk={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const o=is(t);yo(e,"change",()=>{const a=Array.prototype.filter.call(e.options,s=>s.selected).map(s=>n?Oo(nl(s)):nl(s));e._assign(e.multiple?o?new Set(a):a:a[0])}),e._assign=_a(r)},mounted(e,{value:t}){rm(e,t)},beforeUpdate(e,t,n){e._assign=_a(n)},updated(e,{value:t}){rm(e,t)}};function rm(e,t){const n=e.multiple;if(!(n&&!Ve(t)&&!is(t))){for(let r=0,o=e.options.length;r-1:a.selected=t.has(s);else if(va(nl(a),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function nl(e){return"_value"in e?e._value:e.value}function rb(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const vk={created(e,t,n){Pu(e,t,n,null,"created")},mounted(e,t,n){Pu(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){Pu(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){Pu(e,t,n,r,"updated")}};function ob(e,t){switch(e){case"SELECT":return hk;case"TEXTAREA":return el;default:switch(t){case"checkbox":return tl;case"radio":return Ad;default:return el}}}function Pu(e,t,n,r,o){const s=ob(e.tagName,n.props&&n.props.type)[o];s&&s(e,t,n,r)}function mk(){el.getSSRProps=({value:e})=>({value:e}),Ad.getSSRProps=({value:e},t)=>{if(t.props&&va(t.props.value,e))return{checked:!0}},tl.getSSRProps=({value:e},t)=>{if(Ve(e)){if(t.props&&vd(e,t.props.value)>-1)return{checked:!0}}else if(is(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},vk.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const n=ob(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}const gk=["ctrl","shift","alt","meta"],_k={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>gk.some(n=>e[`${n}Key`]&&!t.includes(n))},Je=(e,t)=>(n,...r)=>{for(let o=0;on=>{if(!("key"in n))return;const r=lr(n.key);if(t.some(o=>o===r||bk[o]===r))return e(n)},yt={beforeMount(e,{value:t},{transition:n}){e._vod=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):xl(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),xl(e,!0),r.enter(e)):r.leave(e,()=>{xl(e,!1)}):xl(e,t))},beforeUnmount(e,{value:t}){xl(e,t)}};function xl(e,t){e.style.display=t?e._vod:"none"}function yk(){yt.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const ab=en({patchProp:tk},HS);let Ql,om=!1;function sb(){return Ql||(Ql=CS(ab))}function lb(){return Ql=om?Ql:SS(ab),om=!0,Ql}const ba=(...e)=>{sb().render(...e)},wk=(...e)=>{lb().hydrate(...e)},ib=(...e)=>{const t=sb().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=ub(r);if(!o)return;const a=t._component;!Xe(a)&&!a.render&&!a.template&&(a.template=o.innerHTML),o.innerHTML="";const s=n(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),s},t},ZIe=(...e)=>{const t=lb().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=ub(r);if(o)return n(o,!0,o instanceof SVGElement)},t};function ub(e){return Qe(e)?document.querySelector(e):e}let am=!1;const JIe=()=>{am||(am=!0,mk(),yk())};var Ek=typeof global=="object"&&global&&global.Object===Object&&global;const cb=Ek;var Ck=typeof self=="object"&&self&&self.Object===Object&&self,Sk=cb||Ck||Function("return this")();const Vr=Sk;var kk=Vr.Symbol;const br=kk;var db=Object.prototype,$k=db.hasOwnProperty,Tk=db.toString,Il=br?br.toStringTag:void 0;function Ok(e){var t=$k.call(e,Il),n=e[Il];try{e[Il]=void 0;var r=!0}catch{}var o=Tk.call(e);return r&&(t?e[Il]=n:delete e[Il]),o}var Mk=Object.prototype,Nk=Mk.toString;function Ak(e){return Nk.call(e)}var Rk="[object Null]",xk="[object Undefined]",sm=br?br.toStringTag:void 0;function cs(e){return e==null?e===void 0?xk:Rk:sm&&sm in Object(e)?Ok(e):Ak(e)}function ro(e){return e!=null&&typeof e=="object"}var Ik="[object Symbol]";function Rd(e){return typeof e=="symbol"||ro(e)&&cs(e)==Ik}function fb(e,t){for(var n=-1,r=e==null?0:e.length,o=Array(r);++n0){if(++t>=p$)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function g$(e){return function(){return e}}var _$=function(){try{var e=fs(Object,"defineProperty");return e({},"",{}),e}catch{}}();const Fc=_$;var b$=Fc?function(e,t){return Fc(e,"toString",{configurable:!0,enumerable:!1,value:g$(t),writable:!0})}:Th;const y$=b$;var w$=m$(y$);const vb=w$;function E$(e,t){for(var n=-1,r=e==null?0:e.length;++n-1}var O$=9007199254740991,M$=/^(?:0|[1-9]\d*)$/;function xd(e,t){var n=typeof e;return t=t??O$,!!t&&(n=="number"||n!="symbol"&&M$.test(e))&&e>-1&&e%1==0&&e-1&&e%1==0&&e<=R$}function Cl(e){return e!=null&&Ah(e.length)&&!Oh(e)}function x$(e,t,n){if(!Hn(n))return!1;var r=typeof t;return(r=="number"?Cl(n)&&xd(t,n.length):r=="string"&&t in n)?su(n[t],e):!1}function I$(e){return gb(function(t,n){var r=-1,o=n.length,a=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(a=e.length>3&&typeof a=="function"?(o--,a):void 0,s&&x$(n[0],n[1],s)&&(a=o<3?void 0:a,o=1),t=Object(t);++r-1}function X7(e,t){var n=this.__data__,r=Id(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function Do(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t0&&n(l)?t>1?du(l,t-1,n,r,o):Dh(o,l):r||(o[o.length]=l)}return o}function Cb(e){var t=e==null?0:e.length;return t?du(e,1):[]}function hT(e){return vb(mb(e,void 0,Cb),e+"")}var vT=Eb(Object.getPrototypeOf,Object);const zh=vT;var mT="[object Object]",gT=Function.prototype,_T=Object.prototype,Sb=gT.toString,bT=_T.hasOwnProperty,yT=Sb.call(Object);function wT(e){if(!ro(e)||cs(e)!=mT)return!1;var t=zh(e);if(t===null)return!0;var n=bT.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&Sb.call(n)==yT}function ol(){if(!arguments.length)return[];var e=arguments[0];return Fn(e)?e:[e]}function ET(){this.__data__=new Do,this.size=0}function CT(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function ST(e){return this.__data__.get(e)}function kT(e){return this.__data__.has(e)}var $T=200;function TT(e,t){var n=this.__data__;if(n instanceof Do){var r=n.__data__;if(!ki||r.length<$T-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new zo(r)}return n.set(e,t),this.size=n.size,this}function xr(e){var t=this.__data__=new Do(e);this.size=t.size}xr.prototype.clear=ET;xr.prototype.delete=CT;xr.prototype.get=ST;xr.prototype.has=kT;xr.prototype.set=TT;function OT(e,t){return e&&lu(t,iu(t),e)}function MT(e,t){return e&&lu(t,uu(t),e)}var kb=typeof exports=="object"&&exports&&!exports.nodeType&&exports,bm=kb&&typeof module=="object"&&module&&!module.nodeType&&module,NT=bm&&bm.exports===kb,ym=NT?Vr.Buffer:void 0,wm=ym?ym.allocUnsafe:void 0;function $b(e,t){if(t)return e.slice();var n=e.length,r=wm?wm(n):new e.constructor(n);return e.copy(r),r}function AT(e,t){for(var n=-1,r=e==null?0:e.length,o=0,a=[];++nl))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,v=n&dM?new Ti:void 0;for(a.set(e,t),a.set(t,e);++f=t||O<0||f&&T>=a}function g(){var S=Lf();if(_(S))return b(S);l=setTimeout(g,m(S))}function b(S){return l=void 0,p&&r?v(S):(r=o=void 0,s)}function y(){l!==void 0&&clearTimeout(l),u=0,r=i=o=l=void 0}function w(){return l===void 0?s:b(Lf())}function C(){var S=Lf(),O=_(S);if(r=arguments,o=this,i=S,O){if(l===void 0)return h(i);if(f)return clearTimeout(l),l=setTimeout(g,t),v(i)}return l===void 0&&(l=setTimeout(g,t)),s}return C.cancel=y,C.flush=w,C}function y0(e,t,n){(n!==void 0&&!su(e[t],n)||n===void 0&&!(t in e))&&Mh(e,t,n)}function Hb(e){return ro(e)&&Cl(e)}function w0(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function oN(e){return lu(e,uu(e))}function aN(e,t,n,r,o,a,s){var l=w0(e,n),i=w0(t,n),u=s.get(i);if(u){y0(e,n,u);return}var d=a?a(l,i,n+"",e,t,s):void 0,f=d===void 0;if(f){var p=Fn(i),v=!p&&Ci(i),h=!p&&!v&&Ih(i);d=i,p||v||h?Fn(l)?d=l:Hb(l)?d=hb(l):v?(f=!1,d=$b(i,!0)):h?(f=!1,d=Nb(i,!0)):d=[]:wT(i)||Ei(i)?(d=l,Ei(l)?d=oN(l):(!Hn(l)||Oh(l))&&(d=Ab(i))):f=!1}f&&(s.set(i,d),o(d,i,r,a,s),s.delete(i)),y0(e,n,d)}function Ub(e,t,n,r,o){e!==t&&Fb(t,function(a,s){if(o||(o=new xr),Hn(a))aN(e,t,s,n,Ub,r,o);else{var l=r?r(w0(e,s),a,s+"",e,t,o):void 0;l===void 0&&(l=a),y0(e,s,l)}},uu)}function sN(e,t,n){for(var r=-1,o=e==null?0:e.length;++r=EN){var u=t?null:wN(e);if(u)return Fh(u);s=!1,o=Pb,i=new Ti}else i=t?[]:l;e:for(;++rgetComputedStyle(e).position==="fixed"?!1:e.offsetParent!==null,Dm=e=>Array.from(e.querySelectorAll(kN)).filter(t=>TN(t)&&$N(t)),TN=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.disabled)return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},oc=function(e,t,...n){let r;t.includes("mouse")||t.includes("click")?r="MouseEvents":t.includes("key")?r="KeyboardEvent":r="HTMLEvents";const o=document.createEvent(r);return o.initEvent(t,...n),e.dispatchEvent(o),e},jb=e=>!e.getAttribute("aria-owns"),qb=(e,t,n)=>{const{parentNode:r}=e;if(!r)return null;const o=r.querySelectorAll(n),a=Array.prototype.indexOf.call(o,e);return o[a+t]||null},ac=e=>{e&&(e.focus(),!jb(e)&&e.click())},Yt=(e,t,{checkForDefaultPrevented:n=!0}={})=>o=>{const a=e==null?void 0:e(o);if(n===!1||!a)return t==null?void 0:t(o)},zm=e=>t=>t.pointerType==="mouse"?e(t):void 0;var ON=Object.defineProperty,MN=Object.defineProperties,NN=Object.getOwnPropertyDescriptors,Vm=Object.getOwnPropertySymbols,AN=Object.prototype.hasOwnProperty,RN=Object.prototype.propertyIsEnumerable,Bm=(e,t,n)=>t in e?ON(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,xN=(e,t)=>{for(var n in t||(t={}))AN.call(t,n)&&Bm(e,n,t[n]);if(Vm)for(var n of Vm(t))RN.call(t,n)&&Bm(e,n,t[n]);return e},IN=(e,t)=>MN(e,NN(t));function Fm(e,t){var n;const r=xt();return Qn(()=>{r.value=e()},IN(xN({},t),{flush:(n=t==null?void 0:t.flush)!=null?n:"sync"})),us(r)}var Hm;const gt=typeof window<"u",LN=e=>typeof e<"u",rn=e=>typeof e=="boolean",Kc=e=>typeof e=="function",Ze=e=>typeof e=="number",Gb=e=>typeof e=="string",Oi=()=>{};gt&&((Hm=window==null?void 0:window.navigator)!=null&&Hm.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function Lr(e){return typeof e=="function"?e():c(e)}function Hh(e,t){function n(...r){return new Promise((o,a)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(a)})}return n}const Yb=e=>e();function PN(e,t={}){let n,r,o=Oi;const a=l=>{clearTimeout(l),o(),o=Oi};return l=>{const i=Lr(e),u=Lr(t.maxWait);return n&&a(n),i<=0||u!==void 0&&u<=0?(r&&(a(r),r=null),Promise.resolve(l())):new Promise((d,f)=>{o=t.rejectOnCancel?f:d,u&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,d(l())},u)),n=setTimeout(()=>{r&&a(r),r=null,d(l())},i)})}}function DN(e,t=!0,n=!0,r=!1){let o=0,a,s=!0,l=Oi,i;const u=()=>{a&&(clearTimeout(a),a=void 0,l(),l=Oi)};return f=>{const p=Lr(e),v=Date.now()-o,h=()=>i=f();if(u(),p<=0)return o=Date.now(),h();if(v>p&&(n||!s))o=Date.now(),h();else if(t)return new Promise((m,_)=>{l=r?_:m,a=setTimeout(()=>{o=Date.now(),s=!0,m(h()),u()},p-v)});return!n&&!a&&(a=setTimeout(()=>s=!0,p)),s=!1,i}}function zN(e=Yb){const t=P(!0);function n(){t.value=!1}function r(){t.value=!0}const o=(...a)=>{t.value&&e(...a)};return{isActive:us(t),pause:n,resume:r,eventFilter:o}}function VN(e){return e}function ps(e){return J3()?(ch(e),!0):!1}function BN(e,t=200,n={}){return Hh(PN(t,n),e)}function FN(e,t=200,n={}){const r=P(e.value),o=BN(()=>{r.value=e.value},t,n);return Ce(e,()=>o()),r}function Xb(e,t=200,n=!1,r=!0,o=!1){return Hh(DN(t,n,r,o),e)}function Zb(e){return typeof e=="function"?$(e):P(e)}function Vd(e,t=!0){tt()?rt(e):t?e():He(e)}function ya(e,t,n={}){const{immediate:r=!0}=n,o=P(!1);let a=null;function s(){a&&(clearTimeout(a),a=null)}function l(){o.value=!1,s()}function i(...u){s(),o.value=!0,a=setTimeout(()=>{o.value=!1,a=null,e(...u)},Lr(t))}return r&&(o.value=!0,gt&&i()),ps(l),{isPending:us(o),start:i,stop:l}}function HN(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,o=kt(e),a=P(e);function s(l){if(arguments.length)return a.value=l,a.value;{const i=Lr(n);return a.value=a.value===i?Lr(r):i,a.value}}return o?s:[a,s]}var Um=Object.getOwnPropertySymbols,UN=Object.prototype.hasOwnProperty,KN=Object.prototype.propertyIsEnumerable,WN=(e,t)=>{var n={};for(var r in e)UN.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Um)for(var r of Um(e))t.indexOf(r)<0&&KN.call(e,r)&&(n[r]=e[r]);return n};function jN(e,t,n={}){const r=n,{eventFilter:o=Yb}=r,a=WN(r,["eventFilter"]);return Ce(e,Hh(o,t),a)}var qN=Object.defineProperty,GN=Object.defineProperties,YN=Object.getOwnPropertyDescriptors,Wc=Object.getOwnPropertySymbols,Jb=Object.prototype.hasOwnProperty,Qb=Object.prototype.propertyIsEnumerable,Km=(e,t,n)=>t in e?qN(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,XN=(e,t)=>{for(var n in t||(t={}))Jb.call(t,n)&&Km(e,n,t[n]);if(Wc)for(var n of Wc(t))Qb.call(t,n)&&Km(e,n,t[n]);return e},ZN=(e,t)=>GN(e,YN(t)),JN=(e,t)=>{var n={};for(var r in e)Jb.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Wc)for(var r of Wc(e))t.indexOf(r)<0&&Qb.call(e,r)&&(n[r]=e[r]);return n};function QN(e,t,n={}){const r=n,{eventFilter:o}=r,a=JN(r,["eventFilter"]),{eventFilter:s,pause:l,resume:i,isActive:u}=zN(o);return{stop:jN(e,t,ZN(XN({},a),{eventFilter:s})),pause:l,resume:i,isActive:u}}function zn(e){var t;const n=Lr(e);return(t=n==null?void 0:n.$el)!=null?t:n}const yr=gt?window:void 0,Uh=gt?window.document:void 0,eA=gt?window.navigator:void 0;function Dt(...e){let t,n,r,o;if(Gb(e[0])||Array.isArray(e[0])?([n,r,o]=e,t=yr):[t,n,r,o]=e,!t)return Oi;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const a=[],s=()=>{a.forEach(d=>d()),a.length=0},l=(d,f,p)=>(d.addEventListener(f,p,o),()=>d.removeEventListener(f,p,o)),i=Ce(()=>zn(t),d=>{s(),d&&a.push(...n.flatMap(f=>r.map(p=>l(d,f,p))))},{immediate:!0,flush:"post"}),u=()=>{i(),s()};return ps(u),u}function Kh(e,t,n={}){const{window:r=yr,ignore:o=[],capture:a=!0,detectIframe:s=!1}=n;if(!r)return;let l=!0,i;const u=v=>o.some(h=>{if(typeof h=="string")return Array.from(r.document.querySelectorAll(h)).some(m=>m===v.target||v.composedPath().includes(m));{const m=zn(h);return m&&(v.target===m||v.composedPath().includes(m))}}),d=v=>{r.clearTimeout(i);const h=zn(e);if(!(!h||h===v.target||v.composedPath().includes(h))){if(v.detail===0&&(l=!u(v)),!l){l=!0;return}t(v)}},f=[Dt(r,"click",d,{passive:!0,capture:a}),Dt(r,"pointerdown",v=>{const h=zn(e);h&&(l=!v.composedPath().includes(h)&&!u(v))},{passive:!0}),Dt(r,"pointerup",v=>{if(v.button===0){const h=v.composedPath();v.composedPath=()=>h,i=r.setTimeout(()=>d(v),50)}},{passive:!0}),s&&Dt(r,"blur",v=>{var h;const m=zn(e);((h=r.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(m!=null&&m.contains(r.document.activeElement))&&t(v)})].filter(Boolean);return()=>f.forEach(v=>v())}function fu(e,t=!1){const n=P(),r=()=>n.value=Boolean(e());return r(),Vd(r,t),n}function tA(e,t={}){const{window:n=yr}=t,r=fu(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const a=P(!1),s=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",l):o.removeListener(l))},l=()=>{r.value&&(s(),o=n.matchMedia(Zb(e).value),a.value=o.matches,"addEventListener"in o?o.addEventListener("change",l):o.addListener(l))};return Qn(l),ps(()=>s()),a}function QIe(e={}){const{navigator:t=eA,read:n=!1,source:r,copiedDuring:o=1500,legacy:a=!1}=e,s=["copy","cut"],l=fu(()=>t&&"clipboard"in t),i=$(()=>l.value||a),u=P(""),d=P(!1),f=ya(()=>d.value=!1,o);function p(){l.value?t.clipboard.readText().then(_=>{u.value=_}):u.value=m()}if(i.value&&n)for(const _ of s)Dt(_,p);async function v(_=Lr(r)){i.value&&_!=null&&(l.value?await t.clipboard.writeText(_):h(_),u.value=_,d.value=!0,f.start())}function h(_){const g=document.createElement("textarea");g.value=_??"",g.style.position="absolute",g.style.opacity="0",document.body.appendChild(g),g.select(),document.execCommand("copy"),g.remove()}function m(){var _,g,b;return(b=(g=(_=document==null?void 0:document.getSelection)==null?void 0:_.call(document))==null?void 0:g.toString())!=null?b:""}return{isSupported:i,text:u,copied:d,copy:v}}function nA(e){return JSON.parse(JSON.stringify(e))}const E0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},C0="__vueuse_ssr_handlers__";E0[C0]=E0[C0]||{};const rA=E0[C0];function ey(e,t){return rA[e]||t}function oA(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}var aA=Object.defineProperty,Wm=Object.getOwnPropertySymbols,sA=Object.prototype.hasOwnProperty,lA=Object.prototype.propertyIsEnumerable,jm=(e,t,n)=>t in e?aA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,qm=(e,t)=>{for(var n in t||(t={}))sA.call(t,n)&&jm(e,n,t[n]);if(Wm)for(var n of Wm(t))lA.call(t,n)&&jm(e,n,t[n]);return e};const iA={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}};function uA(e,t,n,r={}){var o;const{flush:a="pre",deep:s=!0,listenToStorageChanges:l=!0,writeDefaults:i=!0,mergeDefaults:u=!1,shallow:d,window:f=yr,eventFilter:p,onError:v=O=>{console.error(O)}}=r,h=(d?xt:P)(t);if(!n)try{n=ey("getDefaultStorage",()=>{var O;return(O=yr)==null?void 0:O.localStorage})()}catch(O){v(O)}if(!n)return h;const m=Lr(t),_=oA(m),g=(o=r.serializer)!=null?o:iA[_],{pause:b,resume:y}=QN(h,()=>w(h.value),{flush:a,deep:s,eventFilter:p});return f&&l&&Dt(f,"storage",S),S(),h;function w(O){try{if(O==null)n.removeItem(e);else{const T=g.write(O),A=n.getItem(e);A!==T&&(n.setItem(e,T),f&&(f==null||f.dispatchEvent(new StorageEvent("storage",{key:e,oldValue:A,newValue:T,storageArea:n}))))}}catch(T){v(T)}}function C(O){const T=O?O.newValue:n.getItem(e);if(T==null)return i&&m!==null&&n.setItem(e,g.write(m)),m;if(!O&&u){const A=g.read(T);return Kc(u)?u(A,m):_==="object"&&!Array.isArray(A)?qm(qm({},m),A):A}else return typeof T!="string"?T:g.read(T)}function S(O){if(!(O&&O.storageArea!==n)){if(O&&O.key==null){h.value=m;return}if(!(O&&O.key!==e)){b();try{h.value=C(O)}catch(T){v(T)}finally{O?He(y):y()}}}}}function ty(e){return tA("(prefers-color-scheme: dark)",e)}var cA=Object.defineProperty,Gm=Object.getOwnPropertySymbols,dA=Object.prototype.hasOwnProperty,fA=Object.prototype.propertyIsEnumerable,Ym=(e,t,n)=>t in e?cA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,pA=(e,t)=>{for(var n in t||(t={}))dA.call(t,n)&&Ym(e,n,t[n]);if(Gm)for(var n of Gm(t))fA.call(t,n)&&Ym(e,n,t[n]);return e};function hA(e={}){const{selector:t="html",attribute:n="class",initialValue:r="auto",window:o=yr,storage:a,storageKey:s="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:i,emitAuto:u}=e,d=pA({auto:"",light:"light",dark:"dark"},e.modes||{}),f=ty({window:o}),p=$(()=>f.value?"dark":"light"),v=i||(s==null?P(r):uA(s,r,a,{window:o,listenToStorageChanges:l})),h=$({get(){return v.value==="auto"&&!u?p.value:v.value},set(b){v.value=b}}),m=ey("updateHTMLAttrs",(b,y,w)=>{const C=o==null?void 0:o.document.querySelector(b);if(C)if(y==="class"){const S=w.split(/\s/g);Object.values(d).flatMap(O=>(O||"").split(/\s/g)).filter(Boolean).forEach(O=>{S.includes(O)?C.classList.add(O):C.classList.remove(O)})}else C.setAttribute(y,w)});function _(b){var y;const w=b==="auto"?p.value:b;m(t,n,(y=d[w])!=null?y:w)}function g(b){e.onChanged?e.onChanged(b,_):_(b)}return Ce(h,g,{flush:"post",immediate:!0}),u&&Ce(p,()=>g(h.value),{flush:"post"}),Vd(()=>g(h.value)),h}function jc(e,t,{window:n=yr,initialValue:r=""}={}){const o=P(r),a=$(()=>{var s;return zn(t)||((s=n==null?void 0:n.document)==null?void 0:s.documentElement)});return Ce([a,()=>Lr(e)],([s,l])=>{var i;if(s&&n){const u=(i=n.getComputedStyle(s).getPropertyValue(l))==null?void 0:i.trim();o.value=u||r}},{immediate:!0}),Ce(o,s=>{var l;(l=a.value)!=null&&l.style&&a.value.style.setProperty(Lr(e),s)}),o}var vA=Object.defineProperty,mA=Object.defineProperties,gA=Object.getOwnPropertyDescriptors,Xm=Object.getOwnPropertySymbols,_A=Object.prototype.hasOwnProperty,bA=Object.prototype.propertyIsEnumerable,Zm=(e,t,n)=>t in e?vA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,yA=(e,t)=>{for(var n in t||(t={}))_A.call(t,n)&&Zm(e,n,t[n]);if(Xm)for(var n of Xm(t))bA.call(t,n)&&Zm(e,n,t[n]);return e},wA=(e,t)=>mA(e,gA(t));function EA(e={}){const{valueDark:t="dark",valueLight:n="",window:r=yr}=e,o=hA(wA(yA({},e),{onChanged:(l,i)=>{var u;e.onChanged?(u=e.onChanged)==null||u.call(e,l==="dark"):i(l)},modes:{dark:t,light:n}})),a=ty({window:r});return $({get(){return o.value==="dark"},set(l){l===a.value?o.value="auto":o.value=l?"dark":"light"}})}function CA({document:e=Uh}={}){if(!e)return P("visible");const t=P(e.visibilityState);return Dt(e,"visibilitychange",()=>{t.value=e.visibilityState}),t}var Jm=Object.getOwnPropertySymbols,SA=Object.prototype.hasOwnProperty,kA=Object.prototype.propertyIsEnumerable,$A=(e,t)=>{var n={};for(var r in e)SA.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Jm)for(var r of Jm(e))t.indexOf(r)<0&&kA.call(e,r)&&(n[r]=e[r]);return n};function Rn(e,t,n={}){const r=n,{window:o=yr}=r,a=$A(r,["window"]);let s;const l=fu(()=>o&&"ResizeObserver"in o),i=()=>{s&&(s.disconnect(),s=void 0)},u=Ce(()=>zn(e),f=>{i(),l.value&&o&&f&&(s=new ResizeObserver(t),s.observe(f,a))},{immediate:!0,flush:"post"}),d=()=>{i(),u()};return ps(d),{isSupported:l,stop:d}}function Qm(e,t={}){const{reset:n=!0,windowResize:r=!0,windowScroll:o=!0,immediate:a=!0}=t,s=P(0),l=P(0),i=P(0),u=P(0),d=P(0),f=P(0),p=P(0),v=P(0);function h(){const m=zn(e);if(!m){n&&(s.value=0,l.value=0,i.value=0,u.value=0,d.value=0,f.value=0,p.value=0,v.value=0);return}const _=m.getBoundingClientRect();s.value=_.height,l.value=_.bottom,i.value=_.left,u.value=_.right,d.value=_.top,f.value=_.width,p.value=_.x,v.value=_.y}return Rn(e,h),Ce(()=>zn(e),m=>!m&&h()),o&&Dt("scroll",h,{capture:!0,passive:!0}),r&&Dt("resize",h,{passive:!0}),Vd(()=>{a&&h()}),{height:s,bottom:l,left:i,right:u,top:d,width:f,x:p,y:v,update:h}}const eg=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]];function eLe(e,t={}){const{document:n=Uh,autoExit:r=!1}=t,o=e||(n==null?void 0:n.querySelector("html")),a=P(!1);let s=eg[0];const l=fu(()=>{if(n){for(const m of eg)if(m[1]in n)return s=m,!0}else return!1;return!1}),[i,u,d,,f]=s;async function p(){l.value&&(n!=null&&n[d]&&await n[u](),a.value=!1)}async function v(){if(!l.value)return;await p();const m=zn(o);m&&(await m[i](),a.value=!0)}async function h(){a.value?await p():await v()}return n&&Dt(n,f,()=>{a.value=!!(n!=null&&n[d])},!1),r&&ps(p),{isSupported:l,isFullscreen:a,enter:v,exit:p,toggle:h}}var tg=Object.getOwnPropertySymbols,TA=Object.prototype.hasOwnProperty,OA=Object.prototype.propertyIsEnumerable,MA=(e,t)=>{var n={};for(var r in e)TA.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&tg)for(var r of tg(e))t.indexOf(r)<0&&OA.call(e,r)&&(n[r]=e[r]);return n};function NA(e,t,n={}){const r=n,{window:o=yr}=r,a=MA(r,["window"]);let s;const l=fu(()=>o&&"MutationObserver"in o),i=()=>{s&&(s.disconnect(),s=void 0)},u=Ce(()=>zn(e),f=>{i(),l.value&&o&&f&&(s=new MutationObserver(t),s.observe(f,a))},{immediate:!0}),d=()=>{i(),u()};return ps(d),{isSupported:l,stop:d}}var ng;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(ng||(ng={}));function tLe(){const e=P([]);return e.value.set=t=>{t&&e.value.push(t)},bh(()=>{e.value.length=0}),e}function AA(e=null,t={}){var n,r;const{document:o=Uh}=t,a=Zb((n=e??(o==null?void 0:o.title))!=null?n:null),s=e&&Kc(e);function l(i){if(!("titleTemplate"in t))return i;const u=t.titleTemplate||"%s";return Kc(u)?u(i):c(u).replace(/%s/g,i)}return Ce(a,(i,u)=>{i!==u&&o&&(o.title=l(Gb(i)?i:""))},{immediate:!0}),t.observe&&!t.titleTemplate&&o&&!s&&NA((r=o.head)==null?void 0:r.querySelector("title"),()=>{o&&o.title!==a.value&&(a.value=l(o.title))},{childList:!0}),a}var RA=Object.defineProperty,rg=Object.getOwnPropertySymbols,xA=Object.prototype.hasOwnProperty,IA=Object.prototype.propertyIsEnumerable,og=(e,t,n)=>t in e?RA(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,LA=(e,t)=>{for(var n in t||(t={}))xA.call(t,n)&&og(e,n,t[n]);if(rg)for(var n of rg(t))IA.call(t,n)&&og(e,n,t[n]);return e};const PA={easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]};LA({linear:VN},PA);function DA(e,t,n,r={}){var o,a,s;const{clone:l=!1,passive:i=!1,eventName:u,deep:d=!1,defaultValue:f}=r,p=tt(),v=n||(p==null?void 0:p.emit)||((o=p==null?void 0:p.$emit)==null?void 0:o.bind(p))||((s=(a=p==null?void 0:p.proxy)==null?void 0:a.$emit)==null?void 0:s.bind(p==null?void 0:p.proxy));let h=u;t||(t="modelValue"),h=u||h||`update:${t.toString()}`;const m=g=>l?Kc(l)?l(g):nA(g):g,_=()=>LN(e[t])?m(e[t]):f;if(i){const g=_(),b=P(g);return Ce(()=>e[t],y=>b.value=m(y)),Ce(b,y=>{(y!==e[t]||d)&&v(h,y)},{deep:d}),b}else return $({get(){return _()},set(g){v(h,g)}})}function zA({window:e=yr}={}){if(!e)return P(!1);const t=P(e.document.hasFocus());return Dt(e,"blur",()=>{t.value=!1}),Dt(e,"focus",()=>{t.value=!0}),t}function VA(e={}){const{window:t=yr,initialWidth:n=1/0,initialHeight:r=1/0,listenOrientation:o=!0,includeScrollbar:a=!0}=e,s=P(n),l=P(r),i=()=>{t&&(a?(s.value=t.innerWidth,l.value=t.innerHeight):(s.value=t.document.documentElement.clientWidth,l.value=t.document.documentElement.clientHeight))};return i(),Vd(i),Dt("resize",i,{passive:!0}),o&&Dt("orientationchange",i,{passive:!0}),{width:s,height:l}}const BA=(e,t)=>{if(!gt||!e||!t)return!1;const n=e.getBoundingClientRect();let r;return t instanceof Element?r=t.getBoundingClientRect():r={top:0,right:window.innerWidth,bottom:window.innerHeight,left:0},n.topr.top&&n.right>r.left&&n.left{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},FA=(e,t)=>Math.abs(ag(e)-ag(t)),Wh=e=>{let t,n;return e.type==="touchend"?(n=e.changedTouches[0].clientY,t=e.changedTouches[0].clientX):e.type.startsWith("touch")?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}},_n=e=>e===void 0,hr=e=>!e&&e!==0||Ve(e)&&e.length===0||dt(e)&&!Object.keys(e).length,Pr=e=>typeof Element>"u"?!1:e instanceof Element,HA=e=>yn(e),UA=e=>Qe(e)?!Number.isNaN(Number(e)):!1,ny=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),Yr=e=>tu(e),Mi=e=>Object.keys(e),KA=e=>Object.entries(e),sc=(e,t,n)=>({get value(){return Wt(e,t,n)},set value(r){gN(e,t,r)}});class WA extends Error{constructor(t){super(t),this.name="ElementPlusError"}}function un(e,t){throw new WA(`[${e}] ${t}`)}const ry=(e="")=>e.split(" ").filter(t=>!!t.trim()),Ir=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},Xr=(e,t)=>{!e||!t.trim()||e.classList.add(...ry(t))},er=(e,t)=>{!e||!t.trim()||e.classList.remove(...ry(t))},wo=(e,t)=>{var n;if(!gt||!e||!t)return"";let r=Vn(t);r==="float"&&(r="cssFloat");try{const o=e.style[r];if(o)return o;const a=(n=document.defaultView)==null?void 0:n.getComputedStyle(e,"");return a?a[r]:""}catch{return e.style[r]}};function on(e,t="px"){if(!e)return"";if(Ze(e)||UA(e))return`${e}${t}`;if(Qe(e))return e}const jA=(e,t)=>{if(!gt)return!1;const n={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],r=wo(e,n);return["scroll","auto","overlay"].some(o=>r.includes(o))},jh=(e,t)=>{if(!gt)return;let n=e;for(;n;){if([window,document,document.documentElement].includes(n))return window;if(jA(n,t))return n;n=n.parentNode}return n};let zu;const oy=e=>{var t;if(!gt)return 0;if(zu!==void 0)return zu;const n=document.createElement("div");n.className=`${e}-scrollbar__wrap`,n.style.visibility="hidden",n.style.width="100px",n.style.position="absolute",n.style.top="-9999px",document.body.appendChild(n);const r=n.offsetWidth;n.style.overflow="scroll";const o=document.createElement("div");o.style.width="100%",n.appendChild(o);const a=o.offsetWidth;return(t=n.parentNode)==null||t.removeChild(n),zu=r-a,zu};function ay(e,t){if(!gt)return;if(!t){e.scrollTop=0;return}const n=[];let r=t.offsetParent;for(;r!==null&&e!==r&&e.contains(r);)n.push(r),r=r.offsetParent;const o=t.offsetTop+n.reduce((i,u)=>i+u.offsetTop,0),a=o+t.offsetHeight,s=e.scrollTop,l=s+e.clientHeight;ol&&(e.scrollTop=a-e.clientHeight)}/*! Element Plus Icons Vue v2.0.10 */var qA={name:"AddLocation"},re=(e,t)=>{let n=e.__vccOpts||e;for(let[r,o]of t)n[r]=o;return n},GA={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},YA=k("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),XA=k("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),ZA=k("path",{fill:"currentColor",d:"M544 384h96a32 32 0 1 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96v-96a32 32 0 0 1 64 0v96z"},null,-1),JA=[YA,XA,ZA];function QA(e,t,n,r,o,a){return E(),M("svg",GA,JA)}var eR=re(qA,[["render",QA],["__file","add-location.vue"]]),tR={name:"Aim"},nR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rR=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),oR=k("path",{fill:"currentColor",d:"M512 96a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V128a32 32 0 0 1 32-32zm0 576a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V704a32 32 0 0 1 32-32zM96 512a32 32 0 0 1 32-32h192a32 32 0 0 1 0 64H128a32 32 0 0 1-32-32zm576 0a32 32 0 0 1 32-32h192a32 32 0 1 1 0 64H704a32 32 0 0 1-32-32z"},null,-1),aR=[rR,oR];function sR(e,t,n,r,o,a){return E(),M("svg",nR,aR)}var lR=re(tR,[["render",sR],["__file","aim.vue"]]),iR={name:"AlarmClock"},uR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cR=k("path",{fill:"currentColor",d:"M512 832a320 320 0 1 0 0-640 320 320 0 0 0 0 640zm0 64a384 384 0 1 1 0-768 384 384 0 0 1 0 768z"},null,-1),dR=k("path",{fill:"currentColor",d:"m292.288 824.576 55.424 32-48 83.136a32 32 0 1 1-55.424-32l48-83.136zm439.424 0-55.424 32 48 83.136a32 32 0 1 0 55.424-32l-48-83.136zM512 512h160a32 32 0 1 1 0 64H480a32 32 0 0 1-32-32V320a32 32 0 0 1 64 0v192zM90.496 312.256A160 160 0 0 1 312.32 90.496l-46.848 46.848a96 96 0 0 0-128 128L90.56 312.256zm835.264 0A160 160 0 0 0 704 90.496l46.848 46.848a96 96 0 0 1 128 128l46.912 46.912z"},null,-1),fR=[cR,dR];function pR(e,t,n,r,o,a){return E(),M("svg",uR,fR)}var hR=re(iR,[["render",pR],["__file","alarm-clock.vue"]]),vR={name:"Apple"},mR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},gR=k("path",{fill:"currentColor",d:"M599.872 203.776a189.44 189.44 0 0 1 64.384-4.672l2.624.128c31.168 1.024 51.2 4.096 79.488 16.32 37.632 16.128 74.496 45.056 111.488 89.344 96.384 115.264 82.752 372.8-34.752 521.728-7.68 9.728-32 41.6-30.72 39.936a426.624 426.624 0 0 1-30.08 35.776c-31.232 32.576-65.28 49.216-110.08 50.048-31.36.64-53.568-5.312-84.288-18.752l-6.528-2.88c-20.992-9.216-30.592-11.904-47.296-11.904-18.112 0-28.608 2.88-51.136 12.672l-6.464 2.816c-28.416 12.224-48.32 18.048-76.16 19.2-74.112 2.752-116.928-38.08-180.672-132.16-96.64-142.08-132.608-349.312-55.04-486.4 46.272-81.92 129.92-133.632 220.672-135.04 32.832-.576 60.288 6.848 99.648 22.72 27.136 10.88 34.752 13.76 37.376 14.272 16.256-20.16 27.776-36.992 34.56-50.24 13.568-26.304 27.2-59.968 40.704-100.8a32 32 0 1 1 60.8 20.224c-12.608 37.888-25.408 70.4-38.528 97.664zm-51.52 78.08c-14.528 17.792-31.808 37.376-51.904 58.816a32 32 0 1 1-46.72-43.776l12.288-13.248c-28.032-11.2-61.248-26.688-95.68-26.112-70.4 1.088-135.296 41.6-171.648 105.792C121.6 492.608 176 684.16 247.296 788.992c34.816 51.328 76.352 108.992 130.944 106.944 52.48-2.112 72.32-34.688 135.872-34.688 63.552 0 81.28 34.688 136.96 33.536 56.448-1.088 75.776-39.04 126.848-103.872 107.904-136.768 107.904-362.752 35.776-449.088-72.192-86.272-124.672-84.096-151.68-85.12-41.472-4.288-81.6 12.544-113.664 25.152z"},null,-1),_R=[gR];function bR(e,t,n,r,o,a){return E(),M("svg",mR,_R)}var yR=re(vR,[["render",bR],["__file","apple.vue"]]),wR={name:"ArrowDownBold"},ER={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},CR=k("path",{fill:"currentColor",d:"M104.704 338.752a64 64 0 0 1 90.496 0l316.8 316.8 316.8-316.8a64 64 0 0 1 90.496 90.496L557.248 791.296a64 64 0 0 1-90.496 0L104.704 429.248a64 64 0 0 1 0-90.496z"},null,-1),SR=[CR];function kR(e,t,n,r,o,a){return E(),M("svg",ER,SR)}var $R=re(wR,[["render",kR],["__file","arrow-down-bold.vue"]]),TR={name:"ArrowDown"},OR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},MR=k("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.592 30.592 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.592 30.592 0 0 0-42.752 0z"},null,-1),NR=[MR];function AR(e,t,n,r,o,a){return E(),M("svg",OR,NR)}var Vo=re(TR,[["render",AR],["__file","arrow-down.vue"]]),RR={name:"ArrowLeftBold"},xR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},IR=k("path",{fill:"currentColor",d:"M685.248 104.704a64 64 0 0 1 0 90.496L368.448 512l316.8 316.8a64 64 0 0 1-90.496 90.496L232.704 557.248a64 64 0 0 1 0-90.496l362.048-362.048a64 64 0 0 1 90.496 0z"},null,-1),LR=[IR];function PR(e,t,n,r,o,a){return E(),M("svg",xR,LR)}var DR=re(RR,[["render",PR],["__file","arrow-left-bold.vue"]]),zR={name:"ArrowLeft"},VR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},BR=k("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"},null,-1),FR=[BR];function HR(e,t,n,r,o,a){return E(),M("svg",VR,FR)}var Ro=re(zR,[["render",HR],["__file","arrow-left.vue"]]),UR={name:"ArrowRightBold"},KR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},WR=k("path",{fill:"currentColor",d:"M338.752 104.704a64 64 0 0 0 0 90.496l316.8 316.8-316.8 316.8a64 64 0 0 0 90.496 90.496l362.048-362.048a64 64 0 0 0 0-90.496L429.248 104.704a64 64 0 0 0-90.496 0z"},null,-1),jR=[WR];function qR(e,t,n,r,o,a){return E(),M("svg",KR,jR)}var GR=re(UR,[["render",qR],["__file","arrow-right-bold.vue"]]),YR={name:"ArrowRight"},XR={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ZR=k("path",{fill:"currentColor",d:"M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"},null,-1),JR=[ZR];function QR(e,t,n,r,o,a){return E(),M("svg",XR,JR)}var An=re(YR,[["render",QR],["__file","arrow-right.vue"]]),ex={name:"ArrowUpBold"},tx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nx=k("path",{fill:"currentColor",d:"M104.704 685.248a64 64 0 0 0 90.496 0l316.8-316.8 316.8 316.8a64 64 0 0 0 90.496-90.496L557.248 232.704a64 64 0 0 0-90.496 0L104.704 594.752a64 64 0 0 0 0 90.496z"},null,-1),rx=[nx];function ox(e,t,n,r,o,a){return E(),M("svg",tx,rx)}var ax=re(ex,[["render",ox],["__file","arrow-up-bold.vue"]]),sx={name:"ArrowUp"},lx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ix=k("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0z"},null,-1),ux=[ix];function cx(e,t,n,r,o,a){return E(),M("svg",lx,ux)}var pu=re(sx,[["render",cx],["__file","arrow-up.vue"]]),dx={name:"Avatar"},fx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},px=k("path",{fill:"currentColor",d:"M628.736 528.896A416 416 0 0 1 928 928H96a415.872 415.872 0 0 1 299.264-399.104L512 704l116.736-175.104zM720 304a208 208 0 1 1-416 0 208 208 0 0 1 416 0z"},null,-1),hx=[px];function vx(e,t,n,r,o,a){return E(),M("svg",fx,hx)}var mx=re(dx,[["render",vx],["__file","avatar.vue"]]),gx={name:"Back"},_x={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bx=k("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64z"},null,-1),yx=k("path",{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312L237.248 512z"},null,-1),wx=[bx,yx];function Ex(e,t,n,r,o,a){return E(),M("svg",_x,wx)}var sy=re(gx,[["render",Ex],["__file","back.vue"]]),Cx={name:"Baseball"},Sx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},kx=k("path",{fill:"currentColor",d:"M195.2 828.8a448 448 0 1 1 633.6-633.6 448 448 0 0 1-633.6 633.6zm45.248-45.248a384 384 0 1 0 543.104-543.104 384 384 0 0 0-543.104 543.104z"},null,-1),$x=k("path",{fill:"currentColor",d:"M497.472 96.896c22.784 4.672 44.416 9.472 64.896 14.528a256.128 256.128 0 0 0 350.208 350.208c5.056 20.48 9.856 42.112 14.528 64.896A320.128 320.128 0 0 1 497.472 96.896zM108.48 491.904a320.128 320.128 0 0 1 423.616 423.68c-23.04-3.648-44.992-7.424-65.728-11.52a256.128 256.128 0 0 0-346.496-346.432 1736.64 1736.64 0 0 1-11.392-65.728z"},null,-1),Tx=[kx,$x];function Ox(e,t,n,r,o,a){return E(),M("svg",Sx,Tx)}var Mx=re(Cx,[["render",Ox],["__file","baseball.vue"]]),Nx={name:"Basketball"},Ax={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Rx=k("path",{fill:"currentColor",d:"M778.752 788.224a382.464 382.464 0 0 0 116.032-245.632 256.512 256.512 0 0 0-241.728-13.952 762.88 762.88 0 0 1 125.696 259.584zm-55.04 44.224a699.648 699.648 0 0 0-125.056-269.632 256.128 256.128 0 0 0-56.064 331.968 382.72 382.72 0 0 0 181.12-62.336zm-254.08 61.248A320.128 320.128 0 0 1 557.76 513.6a715.84 715.84 0 0 0-48.192-48.128 320.128 320.128 0 0 1-379.264 88.384 382.4 382.4 0 0 0 110.144 229.696 382.4 382.4 0 0 0 229.184 110.08zM129.28 481.088a256.128 256.128 0 0 0 331.072-56.448 699.648 699.648 0 0 0-268.8-124.352 382.656 382.656 0 0 0-62.272 180.8zm106.56-235.84a762.88 762.88 0 0 1 258.688 125.056 256.512 256.512 0 0 0-13.44-241.088A382.464 382.464 0 0 0 235.84 245.248zm318.08-114.944c40.576 89.536 37.76 193.92-8.448 281.344a779.84 779.84 0 0 1 66.176 66.112 320.832 320.832 0 0 1 282.112-8.128 382.4 382.4 0 0 0-110.144-229.12 382.4 382.4 0 0 0-229.632-110.208zM828.8 828.8a448 448 0 1 1-633.6-633.6 448 448 0 0 1 633.6 633.6z"},null,-1),xx=[Rx];function Ix(e,t,n,r,o,a){return E(),M("svg",Ax,xx)}var Lx=re(Nx,[["render",Ix],["__file","basketball.vue"]]),Px={name:"BellFilled"},Dx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zx=k("path",{fill:"currentColor",d:"M640 832a128 128 0 0 1-256 0h256zm192-64H134.4a38.4 38.4 0 0 1 0-76.8H192V448c0-154.88 110.08-284.16 256.32-313.6a64 64 0 1 1 127.36 0A320.128 320.128 0 0 1 832 448v243.2h57.6a38.4 38.4 0 0 1 0 76.8H832z"},null,-1),Vx=[zx];function Bx(e,t,n,r,o,a){return E(),M("svg",Dx,Vx)}var Fx=re(Px,[["render",Bx],["__file","bell-filled.vue"]]),Hx={name:"Bell"},Ux={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Kx=k("path",{fill:"currentColor",d:"M512 64a64 64 0 0 1 64 64v64H448v-64a64 64 0 0 1 64-64z"},null,-1),Wx=k("path",{fill:"currentColor",d:"M256 768h512V448a256 256 0 1 0-512 0v320zm256-640a320 320 0 0 1 320 320v384H192V448a320 320 0 0 1 320-320z"},null,-1),jx=k("path",{fill:"currentColor",d:"M96 768h832q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm352 128h128a64 64 0 0 1-128 0z"},null,-1),qx=[Kx,Wx,jx];function Gx(e,t,n,r,o,a){return E(),M("svg",Ux,qx)}var Yx=re(Hx,[["render",Gx],["__file","bell.vue"]]),Xx={name:"Bicycle"},Zx={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jx=NS('',5),Qx=[Jx];function eI(e,t,n,r,o,a){return E(),M("svg",Zx,Qx)}var tI=re(Xx,[["render",eI],["__file","bicycle.vue"]]),nI={name:"BottomLeft"},rI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oI=k("path",{fill:"currentColor",d:"M256 768h416a32 32 0 1 1 0 64H224a32 32 0 0 1-32-32V352a32 32 0 0 1 64 0v416z"},null,-1),aI=k("path",{fill:"currentColor",d:"M246.656 822.656a32 32 0 0 1-45.312-45.312l544-544a32 32 0 0 1 45.312 45.312l-544 544z"},null,-1),sI=[oI,aI];function lI(e,t,n,r,o,a){return E(),M("svg",rI,sI)}var iI=re(nI,[["render",lI],["__file","bottom-left.vue"]]),uI={name:"BottomRight"},cI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},dI=k("path",{fill:"currentColor",d:"M352 768a32 32 0 1 0 0 64h448a32 32 0 0 0 32-32V352a32 32 0 0 0-64 0v416H352z"},null,-1),fI=k("path",{fill:"currentColor",d:"M777.344 822.656a32 32 0 0 0 45.312-45.312l-544-544a32 32 0 0 0-45.312 45.312l544 544z"},null,-1),pI=[dI,fI];function hI(e,t,n,r,o,a){return E(),M("svg",cI,pI)}var vI=re(uI,[["render",hI],["__file","bottom-right.vue"]]),mI={name:"Bottom"},gI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},_I=k("path",{fill:"currentColor",d:"M544 805.888V168a32 32 0 1 0-64 0v637.888L246.656 557.952a30.72 30.72 0 0 0-45.312 0 35.52 35.52 0 0 0 0 48.064l288 306.048a30.72 30.72 0 0 0 45.312 0l288-306.048a35.52 35.52 0 0 0 0-48 30.72 30.72 0 0 0-45.312 0L544 805.824z"},null,-1),bI=[_I];function yI(e,t,n,r,o,a){return E(),M("svg",gI,bI)}var wI=re(mI,[["render",yI],["__file","bottom.vue"]]),EI={name:"Bowl"},CI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},SI=k("path",{fill:"currentColor",d:"M714.432 704a351.744 351.744 0 0 0 148.16-256H161.408a351.744 351.744 0 0 0 148.16 256h404.864zM288 766.592A415.68 415.68 0 0 1 96 416a32 32 0 0 1 32-32h768a32 32 0 0 1 32 32 415.68 415.68 0 0 1-192 350.592V832a64 64 0 0 1-64 64H352a64 64 0 0 1-64-64v-65.408zM493.248 320h-90.496l254.4-254.4a32 32 0 1 1 45.248 45.248L493.248 320zm187.328 0h-128l269.696-155.712a32 32 0 0 1 32 55.424L680.576 320zM352 768v64h320v-64H352z"},null,-1),kI=[SI];function $I(e,t,n,r,o,a){return E(),M("svg",CI,kI)}var TI=re(EI,[["render",$I],["__file","bowl.vue"]]),OI={name:"Box"},MI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},NI=k("path",{fill:"currentColor",d:"M317.056 128 128 344.064V896h768V344.064L706.944 128H317.056zm-14.528-64h418.944a32 32 0 0 1 24.064 10.88l206.528 236.096A32 32 0 0 1 960 332.032V928a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V332.032a32 32 0 0 1 7.936-21.12L278.4 75.008A32 32 0 0 1 302.528 64z"},null,-1),AI=k("path",{fill:"currentColor",d:"M64 320h896v64H64z"},null,-1),RI=k("path",{fill:"currentColor",d:"M448 327.872V640h128V327.872L526.08 128h-28.16L448 327.872zM448 64h128l64 256v352a32 32 0 0 1-32 32H416a32 32 0 0 1-32-32V320l64-256z"},null,-1),xI=[NI,AI,RI];function II(e,t,n,r,o,a){return E(),M("svg",MI,xI)}var LI=re(OI,[["render",II],["__file","box.vue"]]),PI={name:"Briefcase"},DI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zI=k("path",{fill:"currentColor",d:"M320 320V128h384v192h192v192H128V320h192zM128 576h768v320H128V576zm256-256h256.064V192H384v128z"},null,-1),VI=[zI];function BI(e,t,n,r,o,a){return E(),M("svg",DI,VI)}var FI=re(PI,[["render",BI],["__file","briefcase.vue"]]),HI={name:"BrushFilled"},UI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KI=k("path",{fill:"currentColor",d:"M608 704v160a96 96 0 0 1-192 0V704h-96a128 128 0 0 1-128-128h640a128 128 0 0 1-128 128h-96zM192 512V128.064h640V512H192z"},null,-1),WI=[KI];function jI(e,t,n,r,o,a){return E(),M("svg",UI,WI)}var qI=re(HI,[["render",jI],["__file","brush-filled.vue"]]),GI={name:"Brush"},YI={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},XI=k("path",{fill:"currentColor",d:"M896 448H128v192a64 64 0 0 0 64 64h192v192h256V704h192a64 64 0 0 0 64-64V448zm-770.752-64c0-47.552 5.248-90.24 15.552-128 14.72-54.016 42.496-107.392 83.2-160h417.28l-15.36 70.336L736 96h211.2c-24.832 42.88-41.92 96.256-51.2 160a663.872 663.872 0 0 0-6.144 128H960v256a128 128 0 0 1-128 128H704v160a32 32 0 0 1-32 32H352a32 32 0 0 1-32-32V768H192A128 128 0 0 1 64 640V384h61.248zm64 0h636.544c-2.048-45.824.256-91.584 6.848-137.216 4.48-30.848 10.688-59.776 18.688-86.784h-96.64l-221.12 141.248L561.92 160H256.512c-25.856 37.888-43.776 75.456-53.952 112.832-8.768 32.064-13.248 69.12-13.312 111.168z"},null,-1),ZI=[XI];function JI(e,t,n,r,o,a){return E(),M("svg",YI,ZI)}var QI=re(GI,[["render",JI],["__file","brush.vue"]]),eL={name:"Burger"},tL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nL=k("path",{fill:"currentColor",d:"M160 512a32 32 0 0 0-32 32v64a32 32 0 0 0 30.08 32H864a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32H160zm736-58.56A96 96 0 0 1 960 544v64a96 96 0 0 1-51.968 85.312L855.36 833.6a96 96 0 0 1-89.856 62.272H258.496A96 96 0 0 1 168.64 833.6l-52.608-140.224A96 96 0 0 1 64 608v-64a96 96 0 0 1 64-90.56V448a384 384 0 1 1 768 5.44zM832 448a320 320 0 0 0-640 0h640zM512 704H188.352l40.192 107.136a32 32 0 0 0 29.952 20.736h507.008a32 32 0 0 0 29.952-20.736L835.648 704H512z"},null,-1),rL=[nL];function oL(e,t,n,r,o,a){return E(),M("svg",tL,rL)}var aL=re(eL,[["render",oL],["__file","burger.vue"]]),sL={name:"Calendar"},lL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},iL=k("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64H128zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0v32zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64z"},null,-1),uL=[iL];function cL(e,t,n,r,o,a){return E(),M("svg",lL,uL)}var ly=re(sL,[["render",cL],["__file","calendar.vue"]]),dL={name:"CameraFilled"},fL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},pL=k("path",{fill:"currentColor",d:"M160 224a64 64 0 0 0-64 64v512a64 64 0 0 0 64 64h704a64 64 0 0 0 64-64V288a64 64 0 0 0-64-64H748.416l-46.464-92.672A64 64 0 0 0 644.736 96H379.328a64 64 0 0 0-57.216 35.392L275.776 224H160zm352 435.2a115.2 115.2 0 1 0 0-230.4 115.2 115.2 0 0 0 0 230.4zm0 140.8a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),hL=[pL];function vL(e,t,n,r,o,a){return E(),M("svg",fL,hL)}var mL=re(dL,[["render",vL],["__file","camera-filled.vue"]]),gL={name:"Camera"},_L={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bL=k("path",{fill:"currentColor",d:"M896 256H128v576h768V256zm-199.424-64-32.064-64h-304.96l-32 64h369.024zM96 192h160l46.336-92.608A64 64 0 0 1 359.552 64h304.96a64 64 0 0 1 57.216 35.328L768.192 192H928a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32zm416 512a160 160 0 1 0 0-320 160 160 0 0 0 0 320zm0 64a224 224 0 1 1 0-448 224 224 0 0 1 0 448z"},null,-1),yL=[bL];function wL(e,t,n,r,o,a){return E(),M("svg",_L,yL)}var EL=re(gL,[["render",wL],["__file","camera.vue"]]),CL={name:"CaretBottom"},SL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},kL=k("path",{fill:"currentColor",d:"m192 384 320 384 320-384z"},null,-1),$L=[kL];function TL(e,t,n,r,o,a){return E(),M("svg",SL,$L)}var OL=re(CL,[["render",TL],["__file","caret-bottom.vue"]]),ML={name:"CaretLeft"},NL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},AL=k("path",{fill:"currentColor",d:"M672 192 288 511.936 672 832z"},null,-1),RL=[AL];function xL(e,t,n,r,o,a){return E(),M("svg",NL,RL)}var IL=re(ML,[["render",xL],["__file","caret-left.vue"]]),LL={name:"CaretRight"},PL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},DL=k("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"},null,-1),zL=[DL];function VL(e,t,n,r,o,a){return E(),M("svg",PL,zL)}var qh=re(LL,[["render",VL],["__file","caret-right.vue"]]),BL={name:"CaretTop"},FL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},HL=k("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"},null,-1),UL=[HL];function KL(e,t,n,r,o,a){return E(),M("svg",FL,UL)}var iy=re(BL,[["render",KL],["__file","caret-top.vue"]]),WL={name:"Cellphone"},jL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},qL=k("path",{fill:"currentColor",d:"M256 128a64 64 0 0 0-64 64v640a64 64 0 0 0 64 64h512a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64H256zm0-64h512a128 128 0 0 1 128 128v640a128 128 0 0 1-128 128H256a128 128 0 0 1-128-128V192A128 128 0 0 1 256 64zm128 128h256a32 32 0 1 1 0 64H384a32 32 0 0 1 0-64zm128 640a64 64 0 1 1 0-128 64 64 0 0 1 0 128z"},null,-1),GL=[qL];function YL(e,t,n,r,o,a){return E(),M("svg",jL,GL)}var XL=re(WL,[["render",YL],["__file","cellphone.vue"]]),ZL={name:"ChatDotRound"},JL={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},QL=k("path",{fill:"currentColor",d:"m174.72 855.68 135.296-45.12 23.68 11.84C388.096 849.536 448.576 864 512 864c211.84 0 384-166.784 384-352S723.84 160 512 160 128 326.784 128 512c0 69.12 24.96 139.264 70.848 199.232l22.08 28.8-46.272 115.584zm-45.248 82.56A32 32 0 0 1 89.6 896l58.368-145.92C94.72 680.32 64 596.864 64 512 64 299.904 256 96 512 96s448 203.904 448 416-192 416-448 416a461.056 461.056 0 0 1-206.912-48.384l-175.616 58.56z"},null,-1),eP=k("path",{fill:"currentColor",d:"M512 563.2a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm192 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm-384 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4z"},null,-1),tP=[QL,eP];function nP(e,t,n,r,o,a){return E(),M("svg",JL,tP)}var rP=re(ZL,[["render",nP],["__file","chat-dot-round.vue"]]),oP={name:"ChatDotSquare"},aP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},sP=k("path",{fill:"currentColor",d:"M273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88L273.536 736zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),lP=k("path",{fill:"currentColor",d:"M512 499.2a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm192 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm-384 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4z"},null,-1),iP=[sP,lP];function uP(e,t,n,r,o,a){return E(),M("svg",aP,iP)}var cP=re(oP,[["render",uP],["__file","chat-dot-square.vue"]]),dP={name:"ChatLineRound"},fP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},pP=k("path",{fill:"currentColor",d:"m174.72 855.68 135.296-45.12 23.68 11.84C388.096 849.536 448.576 864 512 864c211.84 0 384-166.784 384-352S723.84 160 512 160 128 326.784 128 512c0 69.12 24.96 139.264 70.848 199.232l22.08 28.8-46.272 115.584zm-45.248 82.56A32 32 0 0 1 89.6 896l58.368-145.92C94.72 680.32 64 596.864 64 512 64 299.904 256 96 512 96s448 203.904 448 416-192 416-448 416a461.056 461.056 0 0 1-206.912-48.384l-175.616 58.56z"},null,-1),hP=k("path",{fill:"currentColor",d:"M352 576h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm32-192h256q32 0 32 32t-32 32H384q-32 0-32-32t32-32z"},null,-1),vP=[pP,hP];function mP(e,t,n,r,o,a){return E(),M("svg",fP,vP)}var gP=re(dP,[["render",mP],["__file","chat-line-round.vue"]]),_P={name:"ChatLineSquare"},bP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},yP=k("path",{fill:"currentColor",d:"M160 826.88 273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),wP=k("path",{fill:"currentColor",d:"M352 512h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm0-192h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32z"},null,-1),EP=[yP,wP];function CP(e,t,n,r,o,a){return E(),M("svg",bP,EP)}var SP=re(_P,[["render",CP],["__file","chat-line-square.vue"]]),kP={name:"ChatRound"},$P={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TP=k("path",{fill:"currentColor",d:"m174.72 855.68 130.048-43.392 23.424 11.392C382.4 849.984 444.352 864 512 864c223.744 0 384-159.872 384-352 0-192.832-159.104-352-384-352S128 319.168 128 512a341.12 341.12 0 0 0 69.248 204.288l21.632 28.8-44.16 110.528zm-45.248 82.56A32 32 0 0 1 89.6 896l56.512-141.248A405.12 405.12 0 0 1 64 512C64 299.904 235.648 96 512 96s448 203.904 448 416-173.44 416-448 416c-79.68 0-150.848-17.152-211.712-46.72l-170.88 56.96z"},null,-1),OP=[TP];function MP(e,t,n,r,o,a){return E(),M("svg",$P,OP)}var NP=re(kP,[["render",MP],["__file","chat-round.vue"]]),AP={name:"ChatSquare"},RP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},xP=k("path",{fill:"currentColor",d:"M273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88L273.536 736zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),IP=[xP];function LP(e,t,n,r,o,a){return E(),M("svg",RP,IP)}var PP=re(AP,[["render",LP],["__file","chat-square.vue"]]),DP={name:"Check"},zP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},VP=k("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"},null,-1),BP=[VP];function FP(e,t,n,r,o,a){return E(),M("svg",zP,BP)}var Sl=re(DP,[["render",FP],["__file","check.vue"]]),HP={name:"Checked"},UP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KP=k("path",{fill:"currentColor",d:"M704 192h160v736H160V192h160.064v64H704v-64zM311.616 537.28l-45.312 45.248L447.36 763.52l316.8-316.8-45.312-45.184L447.36 673.024 311.616 537.28zM384 192V96h256v96H384z"},null,-1),WP=[KP];function jP(e,t,n,r,o,a){return E(),M("svg",UP,WP)}var qP=re(HP,[["render",jP],["__file","checked.vue"]]),GP={name:"Cherry"},YP={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},XP=k("path",{fill:"currentColor",d:"M261.056 449.6c13.824-69.696 34.88-128.96 63.36-177.728 23.744-40.832 61.12-88.64 112.256-143.872H320a32 32 0 0 1 0-64h384a32 32 0 1 1 0 64H554.752c14.912 39.168 41.344 86.592 79.552 141.76 47.36 68.48 84.8 106.752 106.304 114.304a224 224 0 1 1-84.992 14.784c-22.656-22.912-47.04-53.76-73.92-92.608-38.848-56.128-67.008-105.792-84.352-149.312-55.296 58.24-94.528 107.52-117.76 147.2-23.168 39.744-41.088 88.768-53.568 147.072a224.064 224.064 0 1 1-64.96-1.6zM288 832a160 160 0 1 0 0-320 160 160 0 0 0 0 320zm448-64a160 160 0 1 0 0-320 160 160 0 0 0 0 320z"},null,-1),ZP=[XP];function JP(e,t,n,r,o,a){return E(),M("svg",YP,ZP)}var QP=re(GP,[["render",JP],["__file","cherry.vue"]]),eD={name:"Chicken"},tD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nD=k("path",{fill:"currentColor",d:"M349.952 716.992 478.72 588.16a106.688 106.688 0 0 1-26.176-19.072 106.688 106.688 0 0 1-19.072-26.176L304.704 671.744c.768 3.072 1.472 6.144 2.048 9.216l2.048 31.936 31.872 1.984c3.136.64 6.208 1.28 9.28 2.112zm57.344 33.152a128 128 0 1 1-216.32 114.432l-1.92-32-32-1.92a128 128 0 1 1 114.432-216.32L416.64 469.248c-2.432-101.44 58.112-239.104 149.056-330.048 107.328-107.328 231.296-85.504 316.8 0 85.44 85.44 107.328 209.408 0 316.8-91.008 90.88-228.672 151.424-330.112 149.056L407.296 750.08zm90.496-226.304c49.536 49.536 233.344-7.04 339.392-113.088 78.208-78.208 63.232-163.072 0-226.304-63.168-63.232-148.032-78.208-226.24 0C504.896 290.496 448.32 474.368 497.792 523.84zM244.864 708.928a64 64 0 1 0-59.84 59.84l56.32-3.52 3.52-56.32zm8.064 127.68a64 64 0 1 0 59.84-59.84l-56.32 3.52-3.52 56.32z"},null,-1),rD=[nD];function oD(e,t,n,r,o,a){return E(),M("svg",tD,rD)}var aD=re(eD,[["render",oD],["__file","chicken.vue"]]),sD={name:"ChromeFilled"},lD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},iD=k("path",{d:"M938.67 512.01c0-44.59-6.82-87.6-19.54-128H682.67a212.372 212.372 0 0 1 42.67 128c.06 38.71-10.45 76.7-30.42 109.87l-182.91 316.8c235.65-.01 426.66-191.02 426.66-426.67z",fill:"currentColor"},null,-1),uD=k("path",{d:"M576.79 401.63a127.92 127.92 0 0 0-63.56-17.6c-22.36-.22-44.39 5.43-63.89 16.38s-35.79 26.82-47.25 46.02a128.005 128.005 0 0 0-2.16 127.44l1.24 2.13a127.906 127.906 0 0 0 46.36 46.61 127.907 127.907 0 0 0 63.38 17.44c22.29.2 44.24-5.43 63.68-16.33a127.94 127.94 0 0 0 47.16-45.79v-.01l1.11-1.92a127.984 127.984 0 0 0 .29-127.46 127.957 127.957 0 0 0-46.36-46.91z",fill:"currentColor"},null,-1),cD=k("path",{d:"M394.45 333.96A213.336 213.336 0 0 1 512 298.67h369.58A426.503 426.503 0 0 0 512 85.34a425.598 425.598 0 0 0-171.74 35.98 425.644 425.644 0 0 0-142.62 102.22l118.14 204.63a213.397 213.397 0 0 1 78.67-94.21zm117.56 604.72H512zm-97.25-236.73a213.284 213.284 0 0 1-89.54-86.81L142.48 298.6c-36.35 62.81-57.13 135.68-57.13 213.42 0 203.81 142.93 374.22 333.95 416.55h.04l118.19-204.71a213.315 213.315 0 0 1-122.77-21.91z",fill:"currentColor"},null,-1),dD=[iD,uD,cD];function fD(e,t,n,r,o,a){return E(),M("svg",lD,dD)}var pD=re(sD,[["render",fD],["__file","chrome-filled.vue"]]),hD={name:"CircleCheckFilled"},vD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mD=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null,-1),gD=[mD];function _D(e,t,n,r,o,a){return E(),M("svg",vD,gD)}var uy=re(hD,[["render",_D],["__file","circle-check-filled.vue"]]),bD={name:"CircleCheck"},yD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wD=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),ED=k("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752l265.344-265.408z"},null,-1),CD=[wD,ED];function SD(e,t,n,r,o,a){return E(),M("svg",yD,CD)}var Bd=re(bD,[["render",SD],["__file","circle-check.vue"]]),kD={name:"CircleCloseFilled"},$D={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TD=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"},null,-1),OD=[TD];function MD(e,t,n,r,o,a){return E(),M("svg",$D,OD)}var Fd=re(kD,[["render",MD],["__file","circle-close-filled.vue"]]),ND={name:"CircleClose"},AD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},RD=k("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"},null,-1),xD=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),ID=[RD,xD];function LD(e,t,n,r,o,a){return E(),M("svg",AD,ID)}var Bo=re(ND,[["render",LD],["__file","circle-close.vue"]]),PD={name:"CirclePlusFilled"},DD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zD=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"},null,-1),VD=[zD];function BD(e,t,n,r,o,a){return E(),M("svg",DD,VD)}var FD=re(PD,[["render",BD],["__file","circle-plus-filled.vue"]]),HD={name:"CirclePlus"},UD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KD=k("path",{fill:"currentColor",d:"M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),WD=k("path",{fill:"currentColor",d:"M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"},null,-1),jD=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),qD=[KD,WD,jD];function GD(e,t,n,r,o,a){return E(),M("svg",UD,qD)}var YD=re(HD,[["render",GD],["__file","circle-plus.vue"]]),XD={name:"Clock"},ZD={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},JD=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),QD=k("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32z"},null,-1),ez=k("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32z"},null,-1),tz=[JD,QD,ez];function nz(e,t,n,r,o,a){return E(),M("svg",ZD,tz)}var Gh=re(XD,[["render",nz],["__file","clock.vue"]]),rz={name:"CloseBold"},oz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},az=k("path",{fill:"currentColor",d:"M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z"},null,-1),sz=[az];function lz(e,t,n,r,o,a){return E(),M("svg",oz,sz)}var iz=re(rz,[["render",lz],["__file","close-bold.vue"]]),uz={name:"Close"},cz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},dz=k("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"},null,-1),fz=[dz];function pz(e,t,n,r,o,a){return E(),M("svg",cz,fz)}var wr=re(uz,[["render",pz],["__file","close.vue"]]),hz={name:"Cloudy"},vz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mz=k("path",{fill:"currentColor",d:"M598.4 831.872H328.192a256 256 0 0 1-34.496-510.528A352 352 0 1 1 598.4 831.872zm-271.36-64h272.256a288 288 0 1 0-248.512-417.664L335.04 381.44l-34.816 3.584a192 192 0 0 0 26.88 382.848z"},null,-1),gz=[mz];function _z(e,t,n,r,o,a){return E(),M("svg",vz,gz)}var bz=re(hz,[["render",_z],["__file","cloudy.vue"]]),yz={name:"CoffeeCup"},wz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ez=k("path",{fill:"currentColor",d:"M768 192a192 192 0 1 1-8 383.808A256.128 256.128 0 0 1 512 768H320A256 256 0 0 1 64 512V160a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v32zm0 64v256a128 128 0 1 0 0-256zM96 832h640a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64zm32-640v320a192 192 0 0 0 192 192h192a192 192 0 0 0 192-192V192H128z"},null,-1),Cz=[Ez];function Sz(e,t,n,r,o,a){return E(),M("svg",wz,Cz)}var kz=re(yz,[["render",Sz],["__file","coffee-cup.vue"]]),$z={name:"Coffee"},Tz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Oz=k("path",{fill:"currentColor",d:"M822.592 192h14.272a32 32 0 0 1 31.616 26.752l21.312 128A32 32 0 0 1 858.24 384h-49.344l-39.04 546.304A32 32 0 0 1 737.92 960H285.824a32 32 0 0 1-32-29.696L214.912 384H165.76a32 32 0 0 1-31.552-37.248l21.312-128A32 32 0 0 1 187.136 192h14.016l-6.72-93.696A32 32 0 0 1 226.368 64h571.008a32 32 0 0 1 31.936 34.304L822.592 192zm-64.128 0 4.544-64H260.736l4.544 64h493.184zm-548.16 128H820.48l-10.688-64H214.208l-10.688 64h6.784zm68.736 64 36.544 512H708.16l36.544-512H279.04z"},null,-1),Mz=[Oz];function Nz(e,t,n,r,o,a){return E(),M("svg",Tz,Mz)}var Az=re($z,[["render",Nz],["__file","coffee.vue"]]),Rz={name:"Coin"},xz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Iz=k("path",{fill:"currentColor",d:"m161.92 580.736 29.888 58.88C171.328 659.776 160 681.728 160 704c0 82.304 155.328 160 352 160s352-77.696 352-160c0-22.272-11.392-44.16-31.808-64.32l30.464-58.432C903.936 615.808 928 657.664 928 704c0 129.728-188.544 224-416 224S96 833.728 96 704c0-46.592 24.32-88.576 65.92-123.264z"},null,-1),Lz=k("path",{fill:"currentColor",d:"m161.92 388.736 29.888 58.88C171.328 467.84 160 489.792 160 512c0 82.304 155.328 160 352 160s352-77.696 352-160c0-22.272-11.392-44.16-31.808-64.32l30.464-58.432C903.936 423.808 928 465.664 928 512c0 129.728-188.544 224-416 224S96 641.728 96 512c0-46.592 24.32-88.576 65.92-123.264z"},null,-1),Pz=k("path",{fill:"currentColor",d:"M512 544c-227.456 0-416-94.272-416-224S284.544 96 512 96s416 94.272 416 224-188.544 224-416 224zm0-64c196.672 0 352-77.696 352-160S708.672 160 512 160s-352 77.696-352 160 155.328 160 352 160z"},null,-1),Dz=[Iz,Lz,Pz];function zz(e,t,n,r,o,a){return E(),M("svg",xz,Dz)}var Vz=re(Rz,[["render",zz],["__file","coin.vue"]]),Bz={name:"ColdDrink"},Fz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Hz=k("path",{fill:"currentColor",d:"M768 64a192 192 0 1 1-69.952 370.88L480 725.376V896h96a32 32 0 1 1 0 64H320a32 32 0 1 1 0-64h96V725.376L76.8 273.536a64 64 0 0 1-12.8-38.4v-10.688a32 32 0 0 1 32-32h71.808l-65.536-83.84a32 32 0 0 1 50.432-39.424l96.256 123.264h337.728A192.064 192.064 0 0 1 768 64zM656.896 192.448H800a32 32 0 0 1 32 32v10.624a64 64 0 0 1-12.8 38.4l-80.448 107.2a128 128 0 1 0-81.92-188.16v-.064zm-357.888 64 129.472 165.76a32 32 0 0 1-50.432 39.36l-160.256-205.12H144l304 404.928 304-404.928H299.008z"},null,-1),Uz=[Hz];function Kz(e,t,n,r,o,a){return E(),M("svg",Fz,Uz)}var Wz=re(Bz,[["render",Kz],["__file","cold-drink.vue"]]),jz={name:"CollectionTag"},qz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Gz=k("path",{fill:"currentColor",d:"M256 128v698.88l196.032-156.864a96 96 0 0 1 119.936 0L768 826.816V128H256zm-32-64h576a32 32 0 0 1 32 32v797.44a32 32 0 0 1-51.968 24.96L531.968 720a32 32 0 0 0-39.936 0L243.968 918.4A32 32 0 0 1 192 893.44V96a32 32 0 0 1 32-32z"},null,-1),Yz=[Gz];function Xz(e,t,n,r,o,a){return E(),M("svg",qz,Yz)}var Zz=re(jz,[["render",Xz],["__file","collection-tag.vue"]]),Jz={name:"Collection"},Qz={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},eV=k("path",{fill:"currentColor",d:"M192 736h640V128H256a64 64 0 0 0-64 64v544zm64-672h608a32 32 0 0 1 32 32v672a32 32 0 0 1-32 32H160l-32 57.536V192A128 128 0 0 1 256 64z"},null,-1),tV=k("path",{fill:"currentColor",d:"M240 800a48 48 0 1 0 0 96h592v-96H240zm0-64h656v160a64 64 0 0 1-64 64H240a112 112 0 0 1 0-224zm144-608v250.88l96-76.8 96 76.8V128H384zm-64-64h320v381.44a32 32 0 0 1-51.968 24.96L480 384l-108.032 86.4A32 32 0 0 1 320 445.44V64z"},null,-1),nV=[eV,tV];function rV(e,t,n,r,o,a){return E(),M("svg",Qz,nV)}var oV=re(Jz,[["render",rV],["__file","collection.vue"]]),aV={name:"Comment"},sV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},lV=k("path",{fill:"currentColor",d:"M736 504a56 56 0 1 1 0-112 56 56 0 0 1 0 112zm-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112zm-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112zM128 128v640h192v160l224-160h352V128H128z"},null,-1),iV=[lV];function uV(e,t,n,r,o,a){return E(),M("svg",sV,iV)}var cV=re(aV,[["render",uV],["__file","comment.vue"]]),dV={name:"Compass"},fV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},pV=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),hV=k("path",{fill:"currentColor",d:"M725.888 315.008C676.48 428.672 624 513.28 568.576 568.64c-55.424 55.424-139.968 107.904-253.568 157.312a12.8 12.8 0 0 1-16.896-16.832c49.536-113.728 102.016-198.272 157.312-253.632 55.36-55.296 139.904-107.776 253.632-157.312a12.8 12.8 0 0 1 16.832 16.832z"},null,-1),vV=[pV,hV];function mV(e,t,n,r,o,a){return E(),M("svg",fV,vV)}var gV=re(dV,[["render",mV],["__file","compass.vue"]]),_V={name:"Connection"},bV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},yV=k("path",{fill:"currentColor",d:"M640 384v64H448a128 128 0 0 0-128 128v128a128 128 0 0 0 128 128h320a128 128 0 0 0 128-128V576a128 128 0 0 0-64-110.848V394.88c74.56 26.368 128 97.472 128 181.056v128a192 192 0 0 1-192 192H448a192 192 0 0 1-192-192V576a192 192 0 0 1 192-192h192z"},null,-1),wV=k("path",{fill:"currentColor",d:"M384 640v-64h192a128 128 0 0 0 128-128V320a128 128 0 0 0-128-128H256a128 128 0 0 0-128 128v128a128 128 0 0 0 64 110.848v70.272A192.064 192.064 0 0 1 64 448V320a192 192 0 0 1 192-192h320a192 192 0 0 1 192 192v128a192 192 0 0 1-192 192H384z"},null,-1),EV=[yV,wV];function CV(e,t,n,r,o,a){return E(),M("svg",bV,EV)}var SV=re(_V,[["render",CV],["__file","connection.vue"]]),kV={name:"Coordinate"},$V={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TV=k("path",{fill:"currentColor",d:"M480 512h64v320h-64z"},null,-1),OV=k("path",{fill:"currentColor",d:"M192 896h640a64 64 0 0 0-64-64H256a64 64 0 0 0-64 64zm64-128h512a128 128 0 0 1 128 128v64H128v-64a128 128 0 0 1 128-128zm256-256a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),MV=[TV,OV];function NV(e,t,n,r,o,a){return E(),M("svg",$V,MV)}var AV=re(kV,[["render",NV],["__file","coordinate.vue"]]),RV={name:"CopyDocument"},xV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},IV=k("path",{fill:"currentColor",d:"M768 832a128 128 0 0 1-128 128H192A128 128 0 0 1 64 832V384a128 128 0 0 1 128-128v64a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64h64z"},null,-1),LV=k("path",{fill:"currentColor",d:"M384 128a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64H384zm0-64h448a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H384a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64z"},null,-1),PV=[IV,LV];function DV(e,t,n,r,o,a){return E(),M("svg",xV,PV)}var zV=re(RV,[["render",DV],["__file","copy-document.vue"]]),VV={name:"Cpu"},BV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},FV=k("path",{fill:"currentColor",d:"M320 256a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H320zm0-64h384a128 128 0 0 1 128 128v384a128 128 0 0 1-128 128H320a128 128 0 0 1-128-128V320a128 128 0 0 1 128-128z"},null,-1),HV=k("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm160 0a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm-320 0a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm160 896a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zm160 0a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zm-320 0a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zM64 512a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm0-160a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm0 320a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm896-160a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32zm0-160a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32zm0 320a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32z"},null,-1),UV=[FV,HV];function KV(e,t,n,r,o,a){return E(),M("svg",BV,UV)}var WV=re(VV,[["render",KV],["__file","cpu.vue"]]),jV={name:"CreditCard"},qV={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},GV=k("path",{fill:"currentColor",d:"M896 324.096c0-42.368-2.496-55.296-9.536-68.48a52.352 52.352 0 0 0-22.144-22.08c-13.12-7.04-26.048-9.536-68.416-9.536H228.096c-42.368 0-55.296 2.496-68.48 9.536a52.352 52.352 0 0 0-22.08 22.144c-7.04 13.12-9.536 26.048-9.536 68.416v375.808c0 42.368 2.496 55.296 9.536 68.48a52.352 52.352 0 0 0 22.144 22.08c13.12 7.04 26.048 9.536 68.416 9.536h567.808c42.368 0 55.296-2.496 68.48-9.536a52.352 52.352 0 0 0 22.08-22.144c7.04-13.12 9.536-26.048 9.536-68.416V324.096zm64 0v375.808c0 57.088-5.952 77.76-17.088 98.56-11.136 20.928-27.52 37.312-48.384 48.448-20.864 11.136-41.6 17.088-98.56 17.088H228.032c-57.088 0-77.76-5.952-98.56-17.088a116.288 116.288 0 0 1-48.448-48.384c-11.136-20.864-17.088-41.6-17.088-98.56V324.032c0-57.088 5.952-77.76 17.088-98.56 11.136-20.928 27.52-37.312 48.384-48.448 20.864-11.136 41.6-17.088 98.56-17.088H795.84c57.088 0 77.76 5.952 98.56 17.088 20.928 11.136 37.312 27.52 48.448 48.384 11.136 20.864 17.088 41.6 17.088 98.56z"},null,-1),YV=k("path",{fill:"currentColor",d:"M64 320h896v64H64v-64zm0 128h896v64H64v-64zm128 192h256v64H192z"},null,-1),XV=[GV,YV];function ZV(e,t,n,r,o,a){return E(),M("svg",qV,XV)}var JV=re(jV,[["render",ZV],["__file","credit-card.vue"]]),QV={name:"Crop"},eB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},tB=k("path",{fill:"currentColor",d:"M256 768h672a32 32 0 1 1 0 64H224a32 32 0 0 1-32-32V96a32 32 0 0 1 64 0v672z"},null,-1),nB=k("path",{fill:"currentColor",d:"M832 224v704a32 32 0 1 1-64 0V256H96a32 32 0 0 1 0-64h704a32 32 0 0 1 32 32z"},null,-1),rB=[tB,nB];function oB(e,t,n,r,o,a){return E(),M("svg",eB,rB)}var aB=re(QV,[["render",oB],["__file","crop.vue"]]),sB={name:"DArrowLeft"},lB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},iB=k("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.592 30.592 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672l331.648-340.224zm256 0a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.592 30.592 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672l331.648-340.224z"},null,-1),uB=[iB];function cB(e,t,n,r,o,a){return E(),M("svg",lB,uB)}var os=re(sB,[["render",cB],["__file","d-arrow-left.vue"]]),dB={name:"DArrowRight"},fB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},pB=k("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.592 30.592 0 0 1 0-42.752L764.736 512 452.864 192a30.592 30.592 0 0 1 0-42.688zm-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.592 30.592 0 0 1 0-42.752L508.736 512 196.864 192a30.592 30.592 0 0 1 0-42.688z"},null,-1),hB=[pB];function vB(e,t,n,r,o,a){return E(),M("svg",fB,hB)}var as=re(dB,[["render",vB],["__file","d-arrow-right.vue"]]),mB={name:"DCaret"},gB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},_B=k("path",{fill:"currentColor",d:"m512 128 288 320H224l288-320zM224 576h576L512 896 224 576z"},null,-1),bB=[_B];function yB(e,t,n,r,o,a){return E(),M("svg",gB,bB)}var wB=re(mB,[["render",yB],["__file","d-caret.vue"]]),EB={name:"DataAnalysis"},CB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},SB=k("path",{fill:"currentColor",d:"m665.216 768 110.848 192h-73.856L591.36 768H433.024L322.176 960H248.32l110.848-192H160a32 32 0 0 1-32-32V192H64a32 32 0 0 1 0-64h896a32 32 0 1 1 0 64h-64v544a32 32 0 0 1-32 32H665.216zM832 192H192v512h640V192zM352 448a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0v-64a32 32 0 0 1 32-32zm160-64a32 32 0 0 1 32 32v128a32 32 0 0 1-64 0V416a32 32 0 0 1 32-32zm160-64a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V352a32 32 0 0 1 32-32z"},null,-1),kB=[SB];function $B(e,t,n,r,o,a){return E(),M("svg",CB,kB)}var TB=re(EB,[["render",$B],["__file","data-analysis.vue"]]),OB={name:"DataBoard"},MB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},NB=k("path",{fill:"currentColor",d:"M32 128h960v64H32z"},null,-1),AB=k("path",{fill:"currentColor",d:"M192 192v512h640V192H192zm-64-64h768v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V128z"},null,-1),RB=k("path",{fill:"currentColor",d:"M322.176 960H248.32l144.64-250.56 55.424 32L322.176 960zm453.888 0h-73.856L576 741.44l55.424-32L776.064 960z"},null,-1),xB=[NB,AB,RB];function IB(e,t,n,r,o,a){return E(),M("svg",MB,xB)}var LB=re(OB,[["render",IB],["__file","data-board.vue"]]),PB={name:"DataLine"},DB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zB=k("path",{fill:"currentColor",d:"M359.168 768H160a32 32 0 0 1-32-32V192H64a32 32 0 0 1 0-64h896a32 32 0 1 1 0 64h-64v544a32 32 0 0 1-32 32H665.216l110.848 192h-73.856L591.36 768H433.024L322.176 960H248.32l110.848-192zM832 192H192v512h640V192zM342.656 534.656a32 32 0 1 1-45.312-45.312L444.992 341.76l125.44 94.08L679.04 300.032a32 32 0 1 1 49.92 39.936L581.632 524.224 451.008 426.24 342.656 534.592z"},null,-1),VB=[zB];function BB(e,t,n,r,o,a){return E(),M("svg",DB,VB)}var FB=re(PB,[["render",BB],["__file","data-line.vue"]]),HB={name:"DeleteFilled"},UB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KB=k("path",{fill:"currentColor",d:"M352 192V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64H96a32 32 0 0 1 0-64h256zm64 0h192v-64H416v64zM192 960a32 32 0 0 1-32-32V256h704v672a32 32 0 0 1-32 32H192zm224-192a32 32 0 0 0 32-32V416a32 32 0 0 0-64 0v320a32 32 0 0 0 32 32zm192 0a32 32 0 0 0 32-32V416a32 32 0 0 0-64 0v320a32 32 0 0 0 32 32z"},null,-1),WB=[KB];function jB(e,t,n,r,o,a){return E(),M("svg",UB,WB)}var qB=re(HB,[["render",jB],["__file","delete-filled.vue"]]),GB={name:"DeleteLocation"},YB={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},XB=k("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),ZB=k("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),JB=k("path",{fill:"currentColor",d:"M384 384h256q32 0 32 32t-32 32H384q-32 0-32-32t32-32z"},null,-1),QB=[XB,ZB,JB];function eF(e,t,n,r,o,a){return E(),M("svg",YB,QB)}var tF=re(GB,[["render",eF],["__file","delete-location.vue"]]),nF={name:"Delete"},rF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oF=k("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V256zm448-64v-64H416v64h192zM224 896h576V256H224v640zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32zm192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32z"},null,-1),aF=[oF];function sF(e,t,n,r,o,a){return E(),M("svg",rF,aF)}var cy=re(nF,[["render",sF],["__file","delete.vue"]]),lF={name:"Dessert"},iF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uF=k("path",{fill:"currentColor",d:"M128 416v-48a144 144 0 0 1 168.64-141.888 224.128 224.128 0 0 1 430.72 0A144 144 0 0 1 896 368v48a384 384 0 0 1-352 382.72V896h-64v-97.28A384 384 0 0 1 128 416zm287.104-32.064h193.792a143.808 143.808 0 0 1 58.88-132.736 160.064 160.064 0 0 0-311.552 0 143.808 143.808 0 0 1 58.88 132.8zm-72.896 0a72 72 0 1 0-140.48 0h140.48zm339.584 0h140.416a72 72 0 1 0-140.48 0zM512 736a320 320 0 0 0 318.4-288.064H193.6A320 320 0 0 0 512 736zM384 896.064h256a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64z"},null,-1),cF=[uF];function dF(e,t,n,r,o,a){return E(),M("svg",iF,cF)}var fF=re(lF,[["render",dF],["__file","dessert.vue"]]),pF={name:"Discount"},hF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vF=k("path",{fill:"currentColor",d:"M224 704h576V318.336L552.512 115.84a64 64 0 0 0-81.024 0L224 318.336V704zm0 64v128h576V768H224zM593.024 66.304l259.2 212.096A32 32 0 0 1 864 303.168V928a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V303.168a32 32 0 0 1 11.712-24.768l259.2-212.096a128 128 0 0 1 162.112 0z"},null,-1),mF=k("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),gF=[vF,mF];function _F(e,t,n,r,o,a){return E(),M("svg",hF,gF)}var bF=re(pF,[["render",_F],["__file","discount.vue"]]),yF={name:"DishDot"},wF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},EF=k("path",{fill:"currentColor",d:"m384.064 274.56.064-50.688A128 128 0 0 1 512.128 96c70.528 0 127.68 57.152 127.68 127.68v50.752A448.192 448.192 0 0 1 955.392 768H68.544A448.192 448.192 0 0 1 384 274.56zM96 832h832a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64zm32-128h768a384 384 0 1 0-768 0zm447.808-448v-32.32a63.68 63.68 0 0 0-63.68-63.68 64 64 0 0 0-64 63.936V256h127.68z"},null,-1),CF=[EF];function SF(e,t,n,r,o,a){return E(),M("svg",wF,CF)}var kF=re(yF,[["render",SF],["__file","dish-dot.vue"]]),$F={name:"Dish"},TF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},OF=k("path",{fill:"currentColor",d:"M480 257.152V192h-96a32 32 0 0 1 0-64h256a32 32 0 1 1 0 64h-96v65.152A448 448 0 0 1 955.52 768H68.48A448 448 0 0 1 480 257.152zM128 704h768a384 384 0 1 0-768 0zM96 832h832a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64z"},null,-1),MF=[OF];function NF(e,t,n,r,o,a){return E(),M("svg",TF,MF)}var AF=re($F,[["render",NF],["__file","dish.vue"]]),RF={name:"DocumentAdd"},xF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},IF=k("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640V384zm-26.496-64L640 154.496V320h165.504zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm320 512V448h64v128h128v64H544v128h-64V640H352v-64h128z"},null,-1),LF=[IF];function PF(e,t,n,r,o,a){return E(),M("svg",xF,LF)}var DF=re(RF,[["render",PF],["__file","document-add.vue"]]),zF={name:"DocumentChecked"},VF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},BF=k("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm318.4 582.144 180.992-180.992L704.64 510.4 478.4 736.64 320 578.304l45.248-45.312L478.4 646.144z"},null,-1),FF=[BF];function HF(e,t,n,r,o,a){return E(),M("svg",VF,FF)}var UF=re(zF,[["render",HF],["__file","document-checked.vue"]]),KF={name:"DocumentCopy"},WF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jF=k("path",{fill:"currentColor",d:"M128 320v576h576V320H128zm-32-64h640a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32zM960 96v704a32 32 0 0 1-32 32h-96v-64h64V128H384v64h-64V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32zM256 672h320v64H256v-64zm0-192h320v64H256v-64z"},null,-1),qF=[jF];function GF(e,t,n,r,o,a){return E(),M("svg",WF,qF)}var YF=re(KF,[["render",GF],["__file","document-copy.vue"]]),XF={name:"DocumentDelete"},ZF={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},JF=k("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm308.992 546.304-90.496-90.624 45.248-45.248 90.56 90.496 90.496-90.432 45.248 45.248-90.496 90.56 90.496 90.496-45.248 45.248-90.496-90.496-90.56 90.496-45.248-45.248 90.496-90.496z"},null,-1),QF=[JF];function eH(e,t,n,r,o,a){return E(),M("svg",ZF,QF)}var tH=re(XF,[["render",eH],["__file","document-delete.vue"]]),nH={name:"DocumentRemove"},rH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oH=k("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm192 512h320v64H352v-64z"},null,-1),aH=[oH];function sH(e,t,n,r,o,a){return E(),M("svg",rH,aH)}var lH=re(nH,[["render",sH],["__file","document-remove.vue"]]),iH={name:"Document"},uH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cH=k("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640V384zm-26.496-64L640 154.496V320h165.504zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm160 448h384v64H320v-64zm0-192h160v64H320v-64zm0 384h384v64H320v-64z"},null,-1),dH=[cH];function fH(e,t,n,r,o,a){return E(),M("svg",uH,dH)}var dy=re(iH,[["render",fH],["__file","document.vue"]]),pH={name:"Download"},hH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vH=k("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64v450.304z"},null,-1),mH=[vH];function gH(e,t,n,r,o,a){return E(),M("svg",hH,mH)}var _H=re(pH,[["render",gH],["__file","download.vue"]]),bH={name:"Drizzling"},yH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wH=k("path",{fill:"currentColor",d:"m739.328 291.328-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 97.28 78.72 175.936 175.808 175.936h400a192 192 0 0 0 35.776-380.672zM959.552 480a256 256 0 0 1-256 256h-400A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 959.552 480zM288 800h64v64h-64v-64zm192 0h64v64h-64v-64zm-96 96h64v64h-64v-64zm192 0h64v64h-64v-64zm96-96h64v64h-64v-64z"},null,-1),EH=[wH];function CH(e,t,n,r,o,a){return E(),M("svg",yH,EH)}var SH=re(bH,[["render",CH],["__file","drizzling.vue"]]),kH={name:"EditPen"},$H={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TH=k("path",{d:"m199.04 672.64 193.984 112 224-387.968-193.92-112-224 388.032zm-23.872 60.16 32.896 148.288 144.896-45.696L175.168 732.8zM455.04 229.248l193.92 112 56.704-98.112-193.984-112-56.64 98.112zM104.32 708.8l384-665.024 304.768 175.936L409.152 884.8h.064l-248.448 78.336L104.32 708.8zm384 254.272v-64h448v64h-448z",fill:"currentColor"},null,-1),OH=[TH];function MH(e,t,n,r,o,a){return E(),M("svg",$H,OH)}var NH=re(kH,[["render",MH],["__file","edit-pen.vue"]]),AH={name:"Edit"},RH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},xH=k("path",{fill:"currentColor",d:"M832 512a32 32 0 1 1 64 0v352a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h352a32 32 0 0 1 0 64H192v640h640V512z"},null,-1),IH=k("path",{fill:"currentColor",d:"m469.952 554.24 52.8-7.552L847.104 222.4a32 32 0 1 0-45.248-45.248L477.44 501.44l-7.552 52.8zm422.4-422.4a96 96 0 0 1 0 135.808l-331.84 331.84a32 32 0 0 1-18.112 9.088L436.8 623.68a32 32 0 0 1-36.224-36.224l15.104-105.6a32 32 0 0 1 9.024-18.112l331.904-331.84a96 96 0 0 1 135.744 0z"},null,-1),LH=[xH,IH];function PH(e,t,n,r,o,a){return E(),M("svg",RH,LH)}var DH=re(AH,[["render",PH],["__file","edit.vue"]]),zH={name:"ElemeFilled"},VH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},BH=k("path",{fill:"currentColor",d:"M176 64h672c61.824 0 112 50.176 112 112v672a112 112 0 0 1-112 112H176A112 112 0 0 1 64 848V176c0-61.824 50.176-112 112-112zm150.528 173.568c-152.896 99.968-196.544 304.064-97.408 456.96a330.688 330.688 0 0 0 456.96 96.64c9.216-5.888 17.6-11.776 25.152-18.56a18.24 18.24 0 0 0 4.224-24.32L700.352 724.8a47.552 47.552 0 0 0-65.536-14.272A234.56 234.56 0 0 1 310.592 641.6C240 533.248 271.104 387.968 379.456 316.48a234.304 234.304 0 0 1 276.352 15.168c1.664.832 2.56 2.56 3.392 4.224 5.888 8.384 3.328 19.328-5.12 25.216L456.832 489.6a47.552 47.552 0 0 0-14.336 65.472l16 24.384c5.888 8.384 16.768 10.88 25.216 5.056l308.224-199.936a19.584 19.584 0 0 0 6.72-23.488v-.896c-4.992-9.216-10.048-17.6-15.104-26.88-99.968-151.168-304.064-194.88-456.96-95.744zM786.88 504.704l-62.208 40.32c-8.32 5.888-10.88 16.768-4.992 25.216L760 632.32c5.888 8.448 16.768 11.008 25.152 5.12l31.104-20.16a55.36 55.36 0 0 0 16-76.48l-20.224-31.04a19.52 19.52 0 0 0-25.152-5.12z"},null,-1),FH=[BH];function HH(e,t,n,r,o,a){return E(),M("svg",VH,FH)}var UH=re(zH,[["render",HH],["__file","eleme-filled.vue"]]),KH={name:"Eleme"},WH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jH=k("path",{fill:"currentColor",d:"M300.032 188.8c174.72-113.28 408-63.36 522.24 109.44 5.76 10.56 11.52 20.16 17.28 30.72v.96a22.4 22.4 0 0 1-7.68 26.88l-352.32 228.48c-9.6 6.72-22.08 3.84-28.8-5.76l-18.24-27.84a54.336 54.336 0 0 1 16.32-74.88l225.6-146.88c9.6-6.72 12.48-19.2 5.76-28.8-.96-1.92-1.92-3.84-3.84-4.8a267.84 267.84 0 0 0-315.84-17.28c-123.84 81.6-159.36 247.68-78.72 371.52a268.096 268.096 0 0 0 370.56 78.72 54.336 54.336 0 0 1 74.88 16.32l17.28 26.88c5.76 9.6 3.84 21.12-4.8 27.84-8.64 7.68-18.24 14.4-28.8 21.12a377.92 377.92 0 0 1-522.24-110.4c-113.28-174.72-63.36-408 111.36-522.24zm526.08 305.28a22.336 22.336 0 0 1 28.8 5.76l23.04 35.52a63.232 63.232 0 0 1-18.24 87.36l-35.52 23.04c-9.6 6.72-22.08 3.84-28.8-5.76l-46.08-71.04c-6.72-9.6-3.84-22.08 5.76-28.8l71.04-46.08z"},null,-1),qH=[jH];function GH(e,t,n,r,o,a){return E(),M("svg",WH,qH)}var YH=re(KH,[["render",GH],["__file","eleme.vue"]]),XH={name:"ElementPlus"},ZH={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},JH=k("path",{d:"M839.7 734.7c0 33.3-17.9 41-17.9 41S519.7 949.8 499.2 960c-10.2 5.1-20.5 5.1-30.7 0 0 0-314.9-184.3-325.1-192-5.1-5.1-10.2-12.8-12.8-20.5V368.6c0-17.9 20.5-28.2 20.5-28.2L466 158.6c12.8-5.1 25.6-5.1 38.4 0 0 0 279 161.3 309.8 179.2 17.9 7.7 28.2 25.6 25.6 46.1-.1-5-.1 317.5-.1 350.8zM714.2 371.2c-64-35.8-217.6-125.4-217.6-125.4-7.7-5.1-20.5-5.1-30.7 0L217.6 389.1s-17.9 10.2-17.9 23v297c0 5.1 5.1 12.8 7.7 17.9 7.7 5.1 256 148.5 256 148.5 7.7 5.1 17.9 5.1 25.6 0 15.4-7.7 250.9-145.9 250.9-145.9s12.8-5.1 12.8-30.7v-74.2l-276.5 169v-64c0-17.9 7.7-30.7 20.5-46.1L745 535c5.1-7.7 10.2-20.5 10.2-30.7v-66.6l-279 169v-69.1c0-15.4 5.1-30.7 17.9-38.4l220.1-128zM919 135.7c0-5.1-5.1-7.7-7.7-7.7h-58.9V66.6c0-5.1-5.1-5.1-10.2-5.1l-30.7 5.1c-5.1 0-5.1 2.6-5.1 5.1V128h-56.3c-5.1 0-5.1 5.1-7.7 5.1v38.4h69.1v64c0 5.1 5.1 5.1 10.2 5.1l30.7-5.1c5.1 0 5.1-2.6 5.1-5.1v-56.3h64l-2.5-38.4z",fill:"currentColor"},null,-1),QH=[JH];function eU(e,t,n,r,o,a){return E(),M("svg",ZH,QH)}var tU=re(XH,[["render",eU],["__file","element-plus.vue"]]),nU={name:"Expand"},rU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oU=k("path",{fill:"currentColor",d:"M128 192h768v128H128V192zm0 256h512v128H128V448zm0 256h768v128H128V704zm576-352 192 160-192 128V352z"},null,-1),aU=[oU];function sU(e,t,n,r,o,a){return E(),M("svg",rU,aU)}var lU=re(nU,[["render",sU],["__file","expand.vue"]]),iU={name:"Failed"},uU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cU=k("path",{fill:"currentColor",d:"m557.248 608 135.744-135.744-45.248-45.248-135.68 135.744-135.808-135.68-45.248 45.184L466.752 608l-135.68 135.68 45.184 45.312L512 653.248l135.744 135.744 45.248-45.248L557.312 608zM704 192h160v736H160V192h160v64h384v-64zm-320 0V96h256v96H384z"},null,-1),dU=[cU];function fU(e,t,n,r,o,a){return E(),M("svg",uU,dU)}var pU=re(iU,[["render",fU],["__file","failed.vue"]]),hU={name:"Female"},vU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mU=k("path",{fill:"currentColor",d:"M512 640a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),gU=k("path",{fill:"currentColor",d:"M512 640q32 0 32 32v256q0 32-32 32t-32-32V672q0-32 32-32z"},null,-1),_U=k("path",{fill:"currentColor",d:"M352 800h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32z"},null,-1),bU=[mU,gU,_U];function yU(e,t,n,r,o,a){return E(),M("svg",vU,bU)}var wU=re(hU,[["render",yU],["__file","female.vue"]]),EU={name:"Files"},CU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},SU=k("path",{fill:"currentColor",d:"M128 384v448h768V384H128zm-32-64h832a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32zm64-128h704v64H160zm96-128h512v64H256z"},null,-1),kU=[SU];function $U(e,t,n,r,o,a){return E(),M("svg",CU,kU)}var TU=re(EU,[["render",$U],["__file","files.vue"]]),OU={name:"Film"},MU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},NU=k("path",{fill:"currentColor",d:"M160 160v704h704V160H160zm-32-64h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32z"},null,-1),AU=k("path",{fill:"currentColor",d:"M320 288V128h64v352h256V128h64v160h160v64H704v128h160v64H704v128h160v64H704v160h-64V544H384v352h-64V736H128v-64h192V544H128v-64h192V352H128v-64h192z"},null,-1),RU=[NU,AU];function xU(e,t,n,r,o,a){return E(),M("svg",MU,RU)}var IU=re(OU,[["render",xU],["__file","film.vue"]]),LU={name:"Filter"},PU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},DU=k("path",{fill:"currentColor",d:"M384 523.392V928a32 32 0 0 0 46.336 28.608l192-96A32 32 0 0 0 640 832V523.392l280.768-343.104a32 32 0 1 0-49.536-40.576l-288 352A32 32 0 0 0 576 512v300.224l-128 64V512a32 32 0 0 0-7.232-20.288L195.52 192H704a32 32 0 1 0 0-64H128a32 32 0 0 0-24.768 52.288L384 523.392z"},null,-1),zU=[DU];function VU(e,t,n,r,o,a){return E(),M("svg",PU,zU)}var BU=re(LU,[["render",VU],["__file","filter.vue"]]),FU={name:"Finished"},HU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},UU=k("path",{fill:"currentColor",d:"M280.768 753.728 691.456 167.04a32 32 0 1 1 52.416 36.672L314.24 817.472a32 32 0 0 1-45.44 7.296l-230.4-172.8a32 32 0 0 1 38.4-51.2l203.968 152.96zM736 448a32 32 0 1 1 0-64h192a32 32 0 1 1 0 64H736zM608 640a32 32 0 0 1 0-64h319.936a32 32 0 1 1 0 64H608zM480 832a32 32 0 1 1 0-64h447.936a32 32 0 1 1 0 64H480z"},null,-1),KU=[UU];function WU(e,t,n,r,o,a){return E(),M("svg",HU,KU)}var jU=re(FU,[["render",WU],["__file","finished.vue"]]),qU={name:"FirstAidKit"},GU={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},YU=k("path",{fill:"currentColor",d:"M192 256a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H192zm0-64h640a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H192A128 128 0 0 1 64 768V320a128 128 0 0 1 128-128z"},null,-1),XU=k("path",{fill:"currentColor",d:"M544 512h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96v-96a32 32 0 0 1 64 0v96zM352 128v64h320v-64H352zm-32-64h384a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32H320a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),ZU=[YU,XU];function JU(e,t,n,r,o,a){return E(),M("svg",GU,ZU)}var QU=re(qU,[["render",JU],["__file","first-aid-kit.vue"]]),eK={name:"Flag"},tK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nK=k("path",{fill:"currentColor",d:"M288 128h608L736 384l160 256H288v320h-96V64h96v64z"},null,-1),rK=[nK];function oK(e,t,n,r,o,a){return E(),M("svg",tK,rK)}var aK=re(eK,[["render",oK],["__file","flag.vue"]]),sK={name:"Fold"},lK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},iK=k("path",{fill:"currentColor",d:"M896 192H128v128h768V192zm0 256H384v128h512V448zm0 256H128v128h768V704zM320 384 128 512l192 128V384z"},null,-1),uK=[iK];function cK(e,t,n,r,o,a){return E(),M("svg",lK,uK)}var dK=re(sK,[["render",cK],["__file","fold.vue"]]),fK={name:"FolderAdd"},pK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},hK=k("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm384 416V416h64v128h128v64H544v128h-64V608H352v-64h128z"},null,-1),vK=[hK];function mK(e,t,n,r,o,a){return E(),M("svg",pK,vK)}var gK=re(fK,[["render",mK],["__file","folder-add.vue"]]),_K={name:"FolderChecked"},bK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},yK=k("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm414.08 502.144 180.992-180.992L736.32 494.4 510.08 720.64l-158.4-158.336 45.248-45.312L510.08 630.144z"},null,-1),wK=[yK];function EK(e,t,n,r,o,a){return E(),M("svg",bK,wK)}var CK=re(_K,[["render",EK],["__file","folder-checked.vue"]]),SK={name:"FolderDelete"},kK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},$K=k("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm370.752 448-90.496-90.496 45.248-45.248L512 530.752l90.496-90.496 45.248 45.248L557.248 576l90.496 90.496-45.248 45.248L512 621.248l-90.496 90.496-45.248-45.248L466.752 576z"},null,-1),TK=[$K];function OK(e,t,n,r,o,a){return E(),M("svg",kK,TK)}var MK=re(SK,[["render",OK],["__file","folder-delete.vue"]]),NK={name:"FolderOpened"},AK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},RK=k("path",{fill:"currentColor",d:"M878.08 448H241.92l-96 384h636.16l96-384zM832 384v-64H485.76L357.504 192H128v448l57.92-231.744A32 32 0 0 1 216.96 384H832zm-24.96 512H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h287.872l128.384 128H864a32 32 0 0 1 32 32v96h23.04a32 32 0 0 1 31.04 39.744l-112 448A32 32 0 0 1 807.04 896z"},null,-1),xK=[RK];function IK(e,t,n,r,o,a){return E(),M("svg",AK,xK)}var LK=re(NK,[["render",IK],["__file","folder-opened.vue"]]),PK={name:"FolderRemove"},DK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zK=k("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm256 416h320v64H352v-64z"},null,-1),VK=[zK];function BK(e,t,n,r,o,a){return E(),M("svg",DK,VK)}var FK=re(PK,[["render",BK],["__file","folder-remove.vue"]]),HK={name:"Folder"},UK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KK=k("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32z"},null,-1),WK=[KK];function jK(e,t,n,r,o,a){return E(),M("svg",UK,WK)}var qK=re(HK,[["render",jK],["__file","folder.vue"]]),GK={name:"Food"},YK={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},XK=k("path",{fill:"currentColor",d:"M128 352.576V352a288 288 0 0 1 491.072-204.224 192 192 0 0 1 274.24 204.48 64 64 0 0 1 57.216 74.24C921.6 600.512 850.048 710.656 736 756.992V800a96 96 0 0 1-96 96H384a96 96 0 0 1-96-96v-43.008c-114.048-46.336-185.6-156.48-214.528-330.496A64 64 0 0 1 128 352.64zm64-.576h64a160 160 0 0 1 320 0h64a224 224 0 0 0-448 0zm128 0h192a96 96 0 0 0-192 0zm439.424 0h68.544A128.256 128.256 0 0 0 704 192c-15.36 0-29.952 2.688-43.52 7.616 11.328 18.176 20.672 37.76 27.84 58.304A64.128 64.128 0 0 1 759.424 352zM672 768H352v32a32 32 0 0 0 32 32h256a32 32 0 0 0 32-32v-32zm-342.528-64h365.056c101.504-32.64 165.76-124.928 192.896-288H136.576c27.136 163.072 91.392 255.36 192.896 288z"},null,-1),ZK=[XK];function JK(e,t,n,r,o,a){return E(),M("svg",YK,ZK)}var QK=re(GK,[["render",JK],["__file","food.vue"]]),eW={name:"Football"},tW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nW=k("path",{fill:"currentColor",d:"M512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896zm0-64a384 384 0 1 0 0-768 384 384 0 0 0 0 768z"},null,-1),rW=k("path",{fill:"currentColor",d:"M186.816 268.288c16-16.384 31.616-31.744 46.976-46.08 17.472 30.656 39.808 58.112 65.984 81.28l-32.512 56.448a385.984 385.984 0 0 1-80.448-91.648zm653.696-5.312a385.92 385.92 0 0 1-83.776 96.96l-32.512-56.384a322.923 322.923 0 0 0 68.48-85.76c15.552 14.08 31.488 29.12 47.808 45.184zM465.984 445.248l11.136-63.104a323.584 323.584 0 0 0 69.76 0l11.136 63.104a387.968 387.968 0 0 1-92.032 0zm-62.72-12.8A381.824 381.824 0 0 1 320 396.544l32-55.424a319.885 319.885 0 0 0 62.464 27.712l-11.2 63.488zm300.8-35.84a381.824 381.824 0 0 1-83.328 35.84l-11.2-63.552A319.885 319.885 0 0 0 672 341.184l32 55.424zm-520.768 364.8a385.92 385.92 0 0 1 83.968-97.28l32.512 56.32c-26.88 23.936-49.856 52.352-67.52 84.032-16-13.44-32.32-27.712-48.96-43.072zm657.536.128a1442.759 1442.759 0 0 1-49.024 43.072 321.408 321.408 0 0 0-67.584-84.16l32.512-56.32c33.216 27.456 61.696 60.352 84.096 97.408zM465.92 578.752a387.968 387.968 0 0 1 92.032 0l-11.136 63.104a323.584 323.584 0 0 0-69.76 0l-11.136-63.104zm-62.72 12.8 11.2 63.552a319.885 319.885 0 0 0-62.464 27.712L320 627.392a381.824 381.824 0 0 1 83.264-35.84zm300.8 35.84-32 55.424a318.272 318.272 0 0 0-62.528-27.712l11.2-63.488c29.44 8.64 57.28 20.736 83.264 35.776z"},null,-1),oW=[nW,rW];function aW(e,t,n,r,o,a){return E(),M("svg",tW,oW)}var sW=re(eW,[["render",aW],["__file","football.vue"]]),lW={name:"ForkSpoon"},iW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uW=k("path",{fill:"currentColor",d:"M256 410.304V96a32 32 0 0 1 64 0v314.304a96 96 0 0 0 64-90.56V96a32 32 0 0 1 64 0v223.744a160 160 0 0 1-128 156.8V928a32 32 0 1 1-64 0V476.544a160 160 0 0 1-128-156.8V96a32 32 0 0 1 64 0v223.744a96 96 0 0 0 64 90.56zM672 572.48C581.184 552.128 512 446.848 512 320c0-141.44 85.952-256 192-256s192 114.56 192 256c0 126.848-69.184 232.128-160 252.48V928a32 32 0 1 1-64 0V572.48zM704 512c66.048 0 128-82.56 128-192s-61.952-192-128-192-128 82.56-128 192 61.952 192 128 192z"},null,-1),cW=[uW];function dW(e,t,n,r,o,a){return E(),M("svg",iW,cW)}var fW=re(lW,[["render",dW],["__file","fork-spoon.vue"]]),pW={name:"Fries"},hW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vW=k("path",{fill:"currentColor",d:"M608 224v-64a32 32 0 0 0-64 0v336h26.88A64 64 0 0 0 608 484.096V224zm101.12 160A64 64 0 0 0 672 395.904V384h64V224a32 32 0 1 0-64 0v160h37.12zm74.88 0a92.928 92.928 0 0 1 91.328 110.08l-60.672 323.584A96 96 0 0 1 720.32 896H303.68a96 96 0 0 1-94.336-78.336L148.672 494.08A92.928 92.928 0 0 1 240 384h-16V224a96 96 0 0 1 188.608-25.28A95.744 95.744 0 0 1 480 197.44V160a96 96 0 0 1 188.608-25.28A96 96 0 0 1 800 224v160h-16zM670.784 512a128 128 0 0 1-99.904 48H453.12a128 128 0 0 1-99.84-48H352v-1.536a128.128 128.128 0 0 1-9.984-14.976L314.88 448H240a28.928 28.928 0 0 0-28.48 34.304L241.088 640h541.824l29.568-157.696A28.928 28.928 0 0 0 784 448h-74.88l-27.136 47.488A132.405 132.405 0 0 1 672 510.464V512h-1.216zM480 288a32 32 0 0 0-64 0v196.096A64 64 0 0 0 453.12 496H480V288zm-128 96V224a32 32 0 0 0-64 0v160h64-37.12A64 64 0 0 1 352 395.904zm-98.88 320 19.072 101.888A32 32 0 0 0 303.68 832h416.64a32 32 0 0 0 31.488-26.112L770.88 704H253.12z"},null,-1),mW=[vW];function gW(e,t,n,r,o,a){return E(),M("svg",hW,mW)}var _W=re(pW,[["render",gW],["__file","fries.vue"]]),bW={name:"FullScreen"},yW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wW=k("path",{fill:"currentColor",d:"m160 96.064 192 .192a32 32 0 0 1 0 64l-192-.192V352a32 32 0 0 1-64 0V96h64v.064zm0 831.872V928H96V672a32 32 0 1 1 64 0v191.936l192-.192a32 32 0 1 1 0 64l-192 .192zM864 96.064V96h64v256a32 32 0 1 1-64 0V160.064l-192 .192a32 32 0 1 1 0-64l192-.192zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64v-.064z"},null,-1),EW=[wW];function CW(e,t,n,r,o,a){return E(),M("svg",yW,EW)}var fy=re(bW,[["render",CW],["__file","full-screen.vue"]]),SW={name:"GobletFull"},kW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},$W=k("path",{fill:"currentColor",d:"M256 320h512c0-78.592-12.608-142.4-36.928-192h-434.24C269.504 192.384 256 256.256 256 320zm503.936 64H264.064a256.128 256.128 0 0 0 495.872 0zM544 638.4V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.4A320 320 0 0 1 192 320c0-85.632 21.312-170.944 64-256h512c42.688 64.32 64 149.632 64 256a320 320 0 0 1-288 318.4z"},null,-1),TW=[$W];function OW(e,t,n,r,o,a){return E(),M("svg",kW,TW)}var MW=re(SW,[["render",OW],["__file","goblet-full.vue"]]),NW={name:"GobletSquareFull"},AW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},RW=k("path",{fill:"currentColor",d:"M256 270.912c10.048 6.72 22.464 14.912 28.992 18.624a220.16 220.16 0 0 0 114.752 30.72c30.592 0 49.408-9.472 91.072-41.152l.64-.448c52.928-40.32 82.368-55.04 132.288-54.656 55.552.448 99.584 20.8 142.72 57.408l1.536 1.28V128H256v142.912zm.96 76.288C266.368 482.176 346.88 575.872 512 576c157.44.064 237.952-85.056 253.248-209.984a952.32 952.32 0 0 1-40.192-35.712c-32.704-27.776-63.36-41.92-101.888-42.24-31.552-.256-50.624 9.28-93.12 41.6l-.576.448c-52.096 39.616-81.024 54.208-129.792 54.208-54.784 0-100.48-13.376-142.784-37.056zM480 638.848C250.624 623.424 192 442.496 192 319.68V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v224c0 122.816-58.624 303.68-288 318.912V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.848z"},null,-1),xW=[RW];function IW(e,t,n,r,o,a){return E(),M("svg",AW,xW)}var LW=re(NW,[["render",IW],["__file","goblet-square-full.vue"]]),PW={name:"GobletSquare"},DW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zW=k("path",{fill:"currentColor",d:"M544 638.912V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.848C250.624 623.424 192 442.496 192 319.68V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v224c0 122.816-58.624 303.68-288 318.912zM256 319.68c0 149.568 80 256.192 256 256.256C688.128 576 768 469.568 768 320V128H256v191.68z"},null,-1),VW=[zW];function BW(e,t,n,r,o,a){return E(),M("svg",DW,VW)}var FW=re(PW,[["render",BW],["__file","goblet-square.vue"]]),HW={name:"Goblet"},UW={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},KW=k("path",{fill:"currentColor",d:"M544 638.4V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.4A320 320 0 0 1 192 320c0-85.632 21.312-170.944 64-256h512c42.688 64.32 64 149.632 64 256a320 320 0 0 1-288 318.4zM256 320a256 256 0 1 0 512 0c0-78.592-12.608-142.4-36.928-192h-434.24C269.504 192.384 256 256.256 256 320z"},null,-1),WW=[KW];function jW(e,t,n,r,o,a){return E(),M("svg",UW,WW)}var qW=re(HW,[["render",jW],["__file","goblet.vue"]]),GW={name:"GoldMedal"},YW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},XW=k("path",{d:"m772.13 452.84 53.86-351.81c1.32-10.01-1.17-18.68-7.49-26.02S804.35 64 795.01 64H228.99v-.01h-.06c-9.33 0-17.15 3.67-23.49 11.01s-8.83 16.01-7.49 26.02l53.87 351.89C213.54 505.73 193.59 568.09 192 640c2 90.67 33.17 166.17 93.5 226.5S421.33 957.99 512 960c90.67-2 166.17-33.17 226.5-93.5 60.33-60.34 91.49-135.83 93.5-226.5-1.59-71.94-21.56-134.32-59.87-187.16zM640.01 128h117.02l-39.01 254.02c-20.75-10.64-40.74-19.73-59.94-27.28-5.92-3-11.95-5.8-18.08-8.41V128h.01zM576 128v198.76c-13.18-2.58-26.74-4.43-40.67-5.55-8.07-.8-15.85-1.2-23.33-1.2-10.54 0-21.09.66-31.64 1.96a359.844 359.844 0 0 0-32.36 4.79V128h128zm-192 0h.04v218.3c-6.22 2.66-12.34 5.5-18.36 8.56-19.13 7.54-39.02 16.6-59.66 27.16L267.01 128H384zm308.99 692.99c-48 48-108.33 73-180.99 75.01-72.66-2.01-132.99-27.01-180.99-75.01S258.01 712.66 256 640c2.01-72.66 27.01-132.99 75.01-180.99 19.67-19.67 41.41-35.47 65.22-47.41 38.33-15.04 71.15-23.92 98.44-26.65 5.07-.41 10.2-.7 15.39-.88.63-.01 1.28-.03 1.91-.03.66 0 1.35.03 2.02.04 5.11.17 10.15.46 15.13.86 27.4 2.71 60.37 11.65 98.91 26.79 23.71 11.93 45.36 27.69 64.96 47.29 48 48 73 108.33 75.01 180.99-2.01 72.65-27.01 132.98-75.01 180.98z",fill:"currentColor"},null,-1),ZW=k("path",{d:"M544 480H416v64h64v192h-64v64h192v-64h-64z",fill:"currentColor"},null,-1),JW=[XW,ZW];function QW(e,t,n,r,o,a){return E(),M("svg",YW,JW)}var ej=re(GW,[["render",QW],["__file","gold-medal.vue"]]),tj={name:"GoodsFilled"},nj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rj=k("path",{fill:"currentColor",d:"M192 352h640l64 544H128l64-544zm128 224h64V448h-64v128zm320 0h64V448h-64v128zM384 288h-64a192 192 0 1 1 384 0h-64a128 128 0 1 0-256 0z"},null,-1),oj=[rj];function aj(e,t,n,r,o,a){return E(),M("svg",nj,oj)}var sj=re(tj,[["render",aj],["__file","goods-filled.vue"]]),lj={name:"Goods"},ij={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uj=k("path",{fill:"currentColor",d:"M320 288v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4h131.072a32 32 0 0 1 31.808 28.8l57.6 576a32 32 0 0 1-31.808 35.2H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320zm64 0h256v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4zm-64 64H217.92l-51.2 512h690.56l-51.264-512H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96z"},null,-1),cj=[uj];function dj(e,t,n,r,o,a){return E(),M("svg",ij,cj)}var fj=re(lj,[["render",dj],["__file","goods.vue"]]),pj={name:"Grape"},hj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vj=k("path",{fill:"currentColor",d:"M544 195.2a160 160 0 0 1 96 60.8 160 160 0 1 1 146.24 254.976 160 160 0 0 1-128 224 160 160 0 1 1-292.48 0 160 160 0 0 1-128-224A160 160 0 1 1 384 256a160 160 0 0 1 96-60.8V128h-64a32 32 0 0 1 0-64h192a32 32 0 0 1 0 64h-64v67.2zM512 448a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm-256 0a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128 224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128 224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128-224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128-224a96 96 0 1 0 0-192 96 96 0 0 0 0 192z"},null,-1),mj=[vj];function gj(e,t,n,r,o,a){return E(),M("svg",hj,mj)}var _j=re(pj,[["render",gj],["__file","grape.vue"]]),bj={name:"Grid"},yj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wj=k("path",{fill:"currentColor",d:"M640 384v256H384V384h256zm64 0h192v256H704V384zm-64 512H384V704h256v192zm64 0V704h192v192H704zm-64-768v192H384V128h256zm64 0h192v192H704V128zM320 384v256H128V384h192zm0 512H128V704h192v192zm0-768v192H128V128h192z"},null,-1),Ej=[wj];function Cj(e,t,n,r,o,a){return E(),M("svg",yj,Ej)}var Sj=re(bj,[["render",Cj],["__file","grid.vue"]]),kj={name:"Guide"},$j={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Tj=k("path",{fill:"currentColor",d:"M640 608h-64V416h64v192zm0 160v160a32 32 0 0 1-32 32H416a32 32 0 0 1-32-32V768h64v128h128V768h64zM384 608V416h64v192h-64zm256-352h-64V128H448v128h-64V96a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32v160z"},null,-1),Oj=k("path",{fill:"currentColor",d:"m220.8 256-71.232 80 71.168 80H768V256H220.8zm-14.4-64H800a32 32 0 0 1 32 32v224a32 32 0 0 1-32 32H206.4a32 32 0 0 1-23.936-10.752l-99.584-112a32 32 0 0 1 0-42.496l99.584-112A32 32 0 0 1 206.4 192zm678.784 496-71.104 80H266.816V608h547.2l71.168 80zm-56.768-144H234.88a32 32 0 0 0-32 32v224a32 32 0 0 0 32 32h593.6a32 32 0 0 0 23.936-10.752l99.584-112a32 32 0 0 0 0-42.496l-99.584-112A32 32 0 0 0 828.48 544z"},null,-1),Mj=[Tj,Oj];function Nj(e,t,n,r,o,a){return E(),M("svg",$j,Mj)}var Aj=re(kj,[["render",Nj],["__file","guide.vue"]]),Rj={name:"Handbag"},xj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Ij=k("path",{d:"M887.01 264.99c-6-5.99-13.67-8.99-23.01-8.99H704c-1.34-54.68-20.01-100.01-56-136s-81.32-54.66-136-56c-54.68 1.34-100.01 20.01-136 56s-54.66 81.32-56 136H160c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.67-8.99 23.01v640c0 9.35 2.99 17.02 8.99 23.01S150.66 960 160 960h704c9.35 0 17.02-2.99 23.01-8.99S896 937.34 896 928V288c0-9.35-2.99-17.02-8.99-23.01zM421.5 165.5c24.32-24.34 54.49-36.84 90.5-37.5 35.99.68 66.16 13.18 90.5 37.5s36.84 54.49 37.5 90.5H384c.68-35.99 13.18-66.16 37.5-90.5zM832 896H192V320h128v128h64V320h256v128h64V320h128v576z",fill:"currentColor"},null,-1),Lj=[Ij];function Pj(e,t,n,r,o,a){return E(),M("svg",xj,Lj)}var Dj=re(Rj,[["render",Pj],["__file","handbag.vue"]]),zj={name:"Headset"},Vj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Bj=k("path",{fill:"currentColor",d:"M896 529.152V512a384 384 0 1 0-768 0v17.152A128 128 0 0 1 320 640v128a128 128 0 1 1-256 0V512a448 448 0 1 1 896 0v256a128 128 0 1 1-256 0V640a128 128 0 0 1 192-110.848zM896 640a64 64 0 0 0-128 0v128a64 64 0 0 0 128 0V640zm-768 0v128a64 64 0 0 0 128 0V640a64 64 0 1 0-128 0z"},null,-1),Fj=[Bj];function Hj(e,t,n,r,o,a){return E(),M("svg",Vj,Fj)}var Uj=re(zj,[["render",Hj],["__file","headset.vue"]]),Kj={name:"HelpFilled"},Wj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jj=k("path",{fill:"currentColor",d:"M926.784 480H701.312A192.512 192.512 0 0 0 544 322.688V97.216A416.064 416.064 0 0 1 926.784 480zm0 64A416.064 416.064 0 0 1 544 926.784V701.312A192.512 192.512 0 0 0 701.312 544h225.472zM97.28 544h225.472A192.512 192.512 0 0 0 480 701.312v225.472A416.064 416.064 0 0 1 97.216 544zm0-64A416.064 416.064 0 0 1 480 97.216v225.472A192.512 192.512 0 0 0 322.688 480H97.216z"},null,-1),qj=[jj];function Gj(e,t,n,r,o,a){return E(),M("svg",Wj,qj)}var Yj=re(Kj,[["render",Gj],["__file","help-filled.vue"]]),Xj={name:"Help"},Zj={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jj=k("path",{fill:"currentColor",d:"m759.936 805.248-90.944-91.008A254.912 254.912 0 0 1 512 768a254.912 254.912 0 0 1-156.992-53.76l-90.944 91.008A382.464 382.464 0 0 0 512 896c94.528 0 181.12-34.176 247.936-90.752zm45.312-45.312A382.464 382.464 0 0 0 896 512c0-94.528-34.176-181.12-90.752-247.936l-91.008 90.944C747.904 398.4 768 452.864 768 512c0 59.136-20.096 113.6-53.76 156.992l91.008 90.944zm-45.312-541.184A382.464 382.464 0 0 0 512 128c-94.528 0-181.12 34.176-247.936 90.752l90.944 91.008A254.912 254.912 0 0 1 512 256c59.136 0 113.6 20.096 156.992 53.76l90.944-91.008zm-541.184 45.312A382.464 382.464 0 0 0 128 512c0 94.528 34.176 181.12 90.752 247.936l91.008-90.944A254.912 254.912 0 0 1 256 512c0-59.136 20.096-113.6 53.76-156.992l-91.008-90.944zm417.28 394.496a194.56 194.56 0 0 0 22.528-22.528C686.912 602.56 704 559.232 704 512a191.232 191.232 0 0 0-67.968-146.56A191.296 191.296 0 0 0 512 320a191.232 191.232 0 0 0-146.56 67.968C337.088 421.44 320 464.768 320 512a191.232 191.232 0 0 0 67.968 146.56C421.44 686.912 464.768 704 512 704c47.296 0 90.56-17.088 124.032-45.44zM512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),Qj=[Jj];function eq(e,t,n,r,o,a){return E(),M("svg",Zj,Qj)}var tq=re(Xj,[["render",eq],["__file","help.vue"]]),nq={name:"Hide"},rq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oq=k("path",{d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4-6.4-6.4-12.8-9.6-22.4-9.6-9.6 0-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176C44.8 438.4 0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4 0 9.6 3.2 16 9.6 22.4 6.4 6.4 12.8 9.6 22.4 9.6 9.6 0 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4Zm-646.4 528c-76.8-70.4-128-128-153.6-172.8 28.8-48 80-105.6 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4Zm140.8-96c-12.8-22.4-19.2-48-19.2-76.8 0-44.8 16-83.2 48-112 32-28.8 67.2-48 112-48 28.8 0 54.4 6.4 73.6 19.2L371.2 588.8ZM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6-28.8 48-80 105.6-153.6 172.8-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176C979.199 585.6 1024 528 1024 512s-48.001-73.6-134.401-176Z",fill:"currentColor"},null,-1),aq=k("path",{d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112-32 28.8-67.2 48-112 48Z",fill:"currentColor"},null,-1),sq=[oq,aq];function lq(e,t,n,r,o,a){return E(),M("svg",rq,sq)}var py=re(nq,[["render",lq],["__file","hide.vue"]]),iq={name:"Histogram"},uq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cq=k("path",{fill:"currentColor",d:"M416 896V128h192v768H416zm-288 0V448h192v448H128zm576 0V320h192v576H704z"},null,-1),dq=[cq];function fq(e,t,n,r,o,a){return E(),M("svg",uq,dq)}var pq=re(iq,[["render",fq],["__file","histogram.vue"]]),hq={name:"HomeFilled"},vq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mq=k("path",{fill:"currentColor",d:"M512 128 128 447.936V896h255.936V640H640v256h255.936V447.936z"},null,-1),gq=[mq];function _q(e,t,n,r,o,a){return E(),M("svg",vq,gq)}var bq=re(hq,[["render",_q],["__file","home-filled.vue"]]),yq={name:"HotWater"},wq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Eq=k("path",{fill:"currentColor",d:"M273.067 477.867h477.866V409.6H273.067v68.267zm0 68.266v51.2A187.733 187.733 0 0 0 460.8 785.067h102.4a187.733 187.733 0 0 0 187.733-187.734v-51.2H273.067zm-34.134-204.8h546.134a34.133 34.133 0 0 1 34.133 34.134v221.866a256 256 0 0 1-256 256H460.8a256 256 0 0 1-256-256V375.467a34.133 34.133 0 0 1 34.133-34.134zM512 34.133a34.133 34.133 0 0 1 34.133 34.134v170.666a34.133 34.133 0 0 1-68.266 0V68.267A34.133 34.133 0 0 1 512 34.133zM375.467 102.4a34.133 34.133 0 0 1 34.133 34.133v102.4a34.133 34.133 0 0 1-68.267 0v-102.4a34.133 34.133 0 0 1 34.134-34.133zm273.066 0a34.133 34.133 0 0 1 34.134 34.133v102.4a34.133 34.133 0 1 1-68.267 0v-102.4a34.133 34.133 0 0 1 34.133-34.133zM170.667 921.668h682.666a34.133 34.133 0 1 1 0 68.267H170.667a34.133 34.133 0 1 1 0-68.267z"},null,-1),Cq=[Eq];function Sq(e,t,n,r,o,a){return E(),M("svg",wq,Cq)}var kq=re(yq,[["render",Sq],["__file","hot-water.vue"]]),$q={name:"House"},Tq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Oq=k("path",{fill:"currentColor",d:"M192 413.952V896h640V413.952L512 147.328 192 413.952zM139.52 374.4l352-293.312a32 32 0 0 1 40.96 0l352 293.312A32 32 0 0 1 896 398.976V928a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V398.976a32 32 0 0 1 11.52-24.576z"},null,-1),Mq=[Oq];function Nq(e,t,n,r,o,a){return E(),M("svg",Tq,Mq)}var Aq=re($q,[["render",Nq],["__file","house.vue"]]),Rq={name:"IceCreamRound"},xq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Iq=k("path",{fill:"currentColor",d:"m308.352 489.344 226.304 226.304a32 32 0 0 0 45.248 0L783.552 512A192 192 0 1 0 512 240.448L308.352 444.16a32 32 0 0 0 0 45.248zm135.744 226.304L308.352 851.392a96 96 0 0 1-135.744-135.744l135.744-135.744-45.248-45.248a96 96 0 0 1 0-135.808L466.752 195.2A256 256 0 0 1 828.8 557.248L625.152 760.96a96 96 0 0 1-135.808 0l-45.248-45.248zM398.848 670.4 353.6 625.152 217.856 760.896a32 32 0 0 0 45.248 45.248L398.848 670.4zm248.96-384.64a32 32 0 0 1 0 45.248L466.624 512a32 32 0 1 1-45.184-45.248l180.992-181.056a32 32 0 0 1 45.248 0zm90.496 90.496a32 32 0 0 1 0 45.248L557.248 602.496A32 32 0 1 1 512 557.248l180.992-180.992a32 32 0 0 1 45.312 0z"},null,-1),Lq=[Iq];function Pq(e,t,n,r,o,a){return E(),M("svg",xq,Lq)}var Dq=re(Rq,[["render",Pq],["__file","ice-cream-round.vue"]]),zq={name:"IceCreamSquare"},Vq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Bq=k("path",{fill:"currentColor",d:"M416 640h256a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32H352a32 32 0 0 0-32 32v448a32 32 0 0 0 32 32h64zm192 64v160a96 96 0 0 1-192 0V704h-64a96 96 0 0 1-96-96V160a96 96 0 0 1 96-96h320a96 96 0 0 1 96 96v448a96 96 0 0 1-96 96h-64zm-64 0h-64v160a32 32 0 1 0 64 0V704z"},null,-1),Fq=[Bq];function Hq(e,t,n,r,o,a){return E(),M("svg",Vq,Fq)}var Uq=re(zq,[["render",Hq],["__file","ice-cream-square.vue"]]),Kq={name:"IceCream"},Wq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jq=k("path",{fill:"currentColor",d:"M128.64 448a208 208 0 0 1 193.536-191.552 224 224 0 0 1 445.248 15.488A208.128 208.128 0 0 1 894.784 448H896L548.8 983.68a32 32 0 0 1-53.248.704L128 448h.64zm64.256 0h286.208a144 144 0 0 0-286.208 0zm351.36 0h286.272a144 144 0 0 0-286.272 0zm-294.848 64 271.808 396.608L778.24 512H249.408zM511.68 352.64a207.872 207.872 0 0 1 189.184-96.192 160 160 0 0 0-314.752 5.632c52.608 12.992 97.28 46.08 125.568 90.56z"},null,-1),qq=[jq];function Gq(e,t,n,r,o,a){return E(),M("svg",Wq,qq)}var Yq=re(Kq,[["render",Gq],["__file","ice-cream.vue"]]),Xq={name:"IceDrink"},Zq={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jq=k("path",{fill:"currentColor",d:"M512 448v128h239.68l16.064-128H512zm-64 0H256.256l16.064 128H448V448zm64-255.36V384h247.744A256.128 256.128 0 0 0 512 192.64zm-64 8.064A256.448 256.448 0 0 0 264.256 384H448V200.704zm64-72.064A320.128 320.128 0 0 1 825.472 384H896a32 32 0 1 1 0 64h-64v1.92l-56.96 454.016A64 64 0 0 1 711.552 960H312.448a64 64 0 0 1-63.488-56.064L192 449.92V448h-64a32 32 0 0 1 0-64h70.528A320.384 320.384 0 0 1 448 135.04V96a96 96 0 0 1 96-96h128a32 32 0 1 1 0 64H544a32 32 0 0 0-32 32v32.64zM743.68 640H280.32l32.128 256h399.104l32.128-256z"},null,-1),Qq=[Jq];function eG(e,t,n,r,o,a){return E(),M("svg",Zq,Qq)}var tG=re(Xq,[["render",eG],["__file","ice-drink.vue"]]),nG={name:"IceTea"},rG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oG=k("path",{fill:"currentColor",d:"M197.696 259.648a320.128 320.128 0 0 1 628.608 0A96 96 0 0 1 896 352v64a96 96 0 0 1-71.616 92.864l-49.408 395.072A64 64 0 0 1 711.488 960H312.512a64 64 0 0 1-63.488-56.064l-49.408-395.072A96 96 0 0 1 128 416v-64a96 96 0 0 1 69.696-92.352zM264.064 256h495.872a256.128 256.128 0 0 0-495.872 0zm495.424 256H264.512l48 384h398.976l48-384zM224 448h576a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32H224a32 32 0 0 0-32 32v64a32 32 0 0 0 32 32zm160 192h64v64h-64v-64zm192 64h64v64h-64v-64zm-128 64h64v64h-64v-64zm64-192h64v64h-64v-64z"},null,-1),aG=[oG];function sG(e,t,n,r,o,a){return E(),M("svg",rG,aG)}var lG=re(nG,[["render",sG],["__file","ice-tea.vue"]]),iG={name:"InfoFilled"},uG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cG=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"},null,-1),dG=[cG];function fG(e,t,n,r,o,a){return E(),M("svg",uG,dG)}var Hd=re(iG,[["render",fG],["__file","info-filled.vue"]]),pG={name:"Iphone"},hG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vG=k("path",{fill:"currentColor",d:"M224 768v96.064a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V768H224zm0-64h576V160a64 64 0 0 0-64-64H288a64 64 0 0 0-64 64v544zm32 288a96 96 0 0 1-96-96V128a96 96 0 0 1 96-96h512a96 96 0 0 1 96 96v768a96 96 0 0 1-96 96H256zm304-144a48 48 0 1 1-96 0 48 48 0 0 1 96 0z"},null,-1),mG=[vG];function gG(e,t,n,r,o,a){return E(),M("svg",hG,mG)}var _G=re(pG,[["render",gG],["__file","iphone.vue"]]),bG={name:"Key"},yG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wG=k("path",{fill:"currentColor",d:"M448 456.064V96a32 32 0 0 1 32-32.064L672 64a32 32 0 0 1 0 64H512v128h160a32 32 0 0 1 0 64H512v128a256 256 0 1 1-64 8.064zM512 896a192 192 0 1 0 0-384 192 192 0 0 0 0 384z"},null,-1),EG=[wG];function CG(e,t,n,r,o,a){return E(),M("svg",yG,EG)}var SG=re(bG,[["render",CG],["__file","key.vue"]]),kG={name:"KnifeFork"},$G={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TG=k("path",{fill:"currentColor",d:"M256 410.56V96a32 32 0 0 1 64 0v314.56A96 96 0 0 0 384 320V96a32 32 0 0 1 64 0v224a160 160 0 0 1-128 156.8V928a32 32 0 1 1-64 0V476.8A160 160 0 0 1 128 320V96a32 32 0 0 1 64 0v224a96 96 0 0 0 64 90.56zm384-250.24V544h126.72c-3.328-78.72-12.928-147.968-28.608-207.744-14.336-54.528-46.848-113.344-98.112-175.872zM640 608v320a32 32 0 1 1-64 0V64h64c85.312 89.472 138.688 174.848 160 256 21.312 81.152 32 177.152 32 288H640z"},null,-1),OG=[TG];function MG(e,t,n,r,o,a){return E(),M("svg",$G,OG)}var NG=re(kG,[["render",MG],["__file","knife-fork.vue"]]),AG={name:"Lightning"},RG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},xG=k("path",{fill:"currentColor",d:"M288 671.36v64.128A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 736 734.016v-64.768a192 192 0 0 0 3.328-377.92l-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 91.968 70.464 167.36 160.256 175.232z"},null,-1),IG=k("path",{fill:"currentColor",d:"M416 736a32 32 0 0 1-27.776-47.872l128-224a32 32 0 1 1 55.552 31.744L471.168 672H608a32 32 0 0 1 27.776 47.872l-128 224a32 32 0 1 1-55.68-31.744L552.96 736H416z"},null,-1),LG=[xG,IG];function PG(e,t,n,r,o,a){return E(),M("svg",RG,LG)}var DG=re(AG,[["render",PG],["__file","lightning.vue"]]),zG={name:"Link"},VG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},BG=k("path",{fill:"currentColor",d:"M715.648 625.152 670.4 579.904l90.496-90.56c75.008-74.944 85.12-186.368 22.656-248.896-62.528-62.464-173.952-52.352-248.96 22.656L444.16 353.6l-45.248-45.248 90.496-90.496c100.032-99.968 251.968-110.08 339.456-22.656 87.488 87.488 77.312 239.424-22.656 339.456l-90.496 90.496zm-90.496 90.496-90.496 90.496C434.624 906.112 282.688 916.224 195.2 828.8c-87.488-87.488-77.312-239.424 22.656-339.456l90.496-90.496 45.248 45.248-90.496 90.56c-75.008 74.944-85.12 186.368-22.656 248.896 62.528 62.464 173.952 52.352 248.96-22.656l90.496-90.496 45.248 45.248zm0-362.048 45.248 45.248L398.848 670.4 353.6 625.152 625.152 353.6z"},null,-1),FG=[BG];function HG(e,t,n,r,o,a){return E(),M("svg",VG,FG)}var UG=re(zG,[["render",HG],["__file","link.vue"]]),KG={name:"List"},WG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jG=k("path",{fill:"currentColor",d:"M704 192h160v736H160V192h160v64h384v-64zM288 512h448v-64H288v64zm0 256h448v-64H288v64zm96-576V96h256v96H384z"},null,-1),qG=[jG];function GG(e,t,n,r,o,a){return E(),M("svg",WG,qG)}var YG=re(KG,[["render",GG],["__file","list.vue"]]),XG={name:"Loading"},ZG={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},JG=k("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32zm0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32zm448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32zm-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32zM195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248zm452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248zM828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0zm-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0z"},null,-1),QG=[JG];function eY(e,t,n,r,o,a){return E(),M("svg",ZG,QG)}var Fo=re(XG,[["render",eY],["__file","loading.vue"]]),tY={name:"LocationFilled"},nY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rY=k("path",{fill:"currentColor",d:"M512 928c23.936 0 117.504-68.352 192.064-153.152C803.456 661.888 864 535.808 864 416c0-189.632-155.84-320-352-320S160 226.368 160 416c0 120.32 60.544 246.4 159.936 359.232C394.432 859.84 488 928 512 928zm0-435.2a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 140.8a204.8 204.8 0 1 1 0-409.6 204.8 204.8 0 0 1 0 409.6z"},null,-1),oY=[rY];function aY(e,t,n,r,o,a){return E(),M("svg",nY,oY)}var sY=re(tY,[["render",aY],["__file","location-filled.vue"]]),lY={name:"LocationInformation"},iY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uY=k("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),cY=k("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),dY=k("path",{fill:"currentColor",d:"M512 512a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm0 64a160 160 0 1 1 0-320 160 160 0 0 1 0 320z"},null,-1),fY=[uY,cY,dY];function pY(e,t,n,r,o,a){return E(),M("svg",iY,fY)}var hY=re(lY,[["render",pY],["__file","location-information.vue"]]),vY={name:"Location"},mY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},gY=k("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),_Y=k("path",{fill:"currentColor",d:"M512 512a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm0 64a160 160 0 1 1 0-320 160 160 0 0 1 0 320z"},null,-1),bY=[gY,_Y];function yY(e,t,n,r,o,a){return E(),M("svg",mY,bY)}var wY=re(vY,[["render",yY],["__file","location.vue"]]),EY={name:"Lock"},CY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},SY=k("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"},null,-1),kY=k("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"},null,-1),$Y=[SY,kY];function TY(e,t,n,r,o,a){return E(),M("svg",CY,$Y)}var OY=re(EY,[["render",TY],["__file","lock.vue"]]),MY={name:"Lollipop"},NY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},AY=k("path",{fill:"currentColor",d:"M513.28 448a64 64 0 1 1 76.544 49.728A96 96 0 0 0 768 448h64a160 160 0 0 1-320 0h1.28zm-126.976-29.696a256 256 0 1 0 43.52-180.48A256 256 0 0 1 832 448h-64a192 192 0 0 0-381.696-29.696zm105.664 249.472L285.696 874.048a96 96 0 0 1-135.68-135.744l206.208-206.272a320 320 0 1 1 135.744 135.744zm-54.464-36.032a321.92 321.92 0 0 1-45.248-45.248L195.2 783.552a32 32 0 1 0 45.248 45.248l197.056-197.12z"},null,-1),RY=[AY];function xY(e,t,n,r,o,a){return E(),M("svg",NY,RY)}var IY=re(MY,[["render",xY],["__file","lollipop.vue"]]),LY={name:"MagicStick"},PY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},DY=k("path",{fill:"currentColor",d:"M512 64h64v192h-64V64zm0 576h64v192h-64V640zM160 480v-64h192v64H160zm576 0v-64h192v64H736zM249.856 199.04l45.248-45.184L430.848 289.6 385.6 334.848 249.856 199.104zM657.152 606.4l45.248-45.248 135.744 135.744-45.248 45.248L657.152 606.4zM114.048 923.2 68.8 877.952l316.8-316.8 45.248 45.248-316.8 316.8zM702.4 334.848 657.152 289.6l135.744-135.744 45.248 45.248L702.4 334.848z"},null,-1),zY=[DY];function VY(e,t,n,r,o,a){return E(),M("svg",PY,zY)}var BY=re(LY,[["render",VY],["__file","magic-stick.vue"]]),FY={name:"Magnet"},HY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},UY=k("path",{fill:"currentColor",d:"M832 320V192H704v320a192 192 0 1 1-384 0V192H192v128h128v64H192v128a320 320 0 0 0 640 0V384H704v-64h128zM640 512V128h256v384a384 384 0 1 1-768 0V128h256v384a128 128 0 1 0 256 0z"},null,-1),KY=[UY];function WY(e,t,n,r,o,a){return E(),M("svg",HY,KY)}var jY=re(FY,[["render",WY],["__file","magnet.vue"]]),qY={name:"Male"},GY={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},YY=k("path",{fill:"currentColor",d:"M399.5 849.5a225 225 0 1 0 0-450 225 225 0 0 0 0 450zm0 56.25a281.25 281.25 0 1 1 0-562.5 281.25 281.25 0 0 1 0 562.5zm253.125-787.5h225q28.125 0 28.125 28.125T877.625 174.5h-225q-28.125 0-28.125-28.125t28.125-28.125z"},null,-1),XY=k("path",{fill:"currentColor",d:"M877.625 118.25q28.125 0 28.125 28.125v225q0 28.125-28.125 28.125T849.5 371.375v-225q0-28.125 28.125-28.125z"},null,-1),ZY=k("path",{fill:"currentColor",d:"M604.813 458.9 565.1 419.131l292.613-292.668 39.825 39.824z"},null,-1),JY=[YY,XY,ZY];function QY(e,t,n,r,o,a){return E(),M("svg",GY,JY)}var eX=re(qY,[["render",QY],["__file","male.vue"]]),tX={name:"Management"},nX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rX=k("path",{fill:"currentColor",d:"M576 128v288l96-96 96 96V128h128v768H320V128h256zm-448 0h128v768H128V128z"},null,-1),oX=[rX];function aX(e,t,n,r,o,a){return E(),M("svg",nX,oX)}var sX=re(tX,[["render",aX],["__file","management.vue"]]),lX={name:"MapLocation"},iX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uX=k("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),cX=k("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256zm345.6 192L960 960H672v-64H352v64H64l102.4-256h691.2zm-68.928 0H235.328l-76.8 192h706.944l-76.8-192z"},null,-1),dX=[uX,cX];function fX(e,t,n,r,o,a){return E(),M("svg",iX,dX)}var pX=re(lX,[["render",fX],["__file","map-location.vue"]]),hX={name:"Medal"},vX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mX=k("path",{fill:"currentColor",d:"M512 896a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),gX=k("path",{fill:"currentColor",d:"M576 128H448v200a286.72 286.72 0 0 1 64-8c19.52 0 40.832 2.688 64 8V128zm64 0v219.648c24.448 9.088 50.56 20.416 78.4 33.92L757.44 128H640zm-256 0H266.624l39.04 253.568c27.84-13.504 53.888-24.832 78.336-33.92V128zM229.312 64h565.376a32 32 0 0 1 31.616 36.864L768 480c-113.792-64-199.104-96-256-96-56.896 0-142.208 32-256 96l-58.304-379.136A32 32 0 0 1 229.312 64z"},null,-1),_X=[mX,gX];function bX(e,t,n,r,o,a){return E(),M("svg",vX,_X)}var yX=re(hX,[["render",bX],["__file","medal.vue"]]),wX={name:"Memo"},EX={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},CX=k("path",{d:"M480 320h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32z",fill:"currentColor"},null,-1),SX=k("path",{d:"M887.01 72.99C881.01 67 873.34 64 864 64H160c-9.35 0-17.02 3-23.01 8.99C131 78.99 128 86.66 128 96v832c0 9.35 2.99 17.02 8.99 23.01S150.66 960 160 960h704c9.35 0 17.02-2.99 23.01-8.99S896 937.34 896 928V96c0-9.35-3-17.02-8.99-23.01zM192 896V128h96v768h-96zm640 0H352V128h480v768z",fill:"currentColor"},null,-1),kX=k("path",{d:"M480 512h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32zm0 192h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32z",fill:"currentColor"},null,-1),$X=[CX,SX,kX];function TX(e,t,n,r,o,a){return E(),M("svg",EX,$X)}var OX=re(wX,[["render",TX],["__file","memo.vue"]]),MX={name:"Menu"},NX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},AX=k("path",{fill:"currentColor",d:"M160 448a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32H160zm448 0a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32H608zM160 896a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32H160zm448 0a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32H608z"},null,-1),RX=[AX];function xX(e,t,n,r,o,a){return E(),M("svg",NX,RX)}var IX=re(MX,[["render",xX],["__file","menu.vue"]]),LX={name:"MessageBox"},PX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},DX=k("path",{fill:"currentColor",d:"M288 384h448v64H288v-64zm96-128h256v64H384v-64zM131.456 512H384v128h256V512h252.544L721.856 192H302.144L131.456 512zM896 576H704v128H320V576H128v256h768V576zM275.776 128h472.448a32 32 0 0 1 28.608 17.664l179.84 359.552A32 32 0 0 1 960 519.552V864a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V519.552a32 32 0 0 1 3.392-14.336l179.776-359.552A32 32 0 0 1 275.776 128z"},null,-1),zX=[DX];function VX(e,t,n,r,o,a){return E(),M("svg",PX,zX)}var BX=re(LX,[["render",VX],["__file","message-box.vue"]]),FX={name:"Message"},HX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},UX=k("path",{fill:"currentColor",d:"M128 224v512a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V224H128zm0-64h768a64 64 0 0 1 64 64v512a128 128 0 0 1-128 128H192A128 128 0 0 1 64 736V224a64 64 0 0 1 64-64z"},null,-1),KX=k("path",{fill:"currentColor",d:"M904 224 656.512 506.88a192 192 0 0 1-289.024 0L120 224h784zm-698.944 0 210.56 240.704a128 128 0 0 0 192.704 0L818.944 224H205.056z"},null,-1),WX=[UX,KX];function jX(e,t,n,r,o,a){return E(),M("svg",HX,WX)}var qX=re(FX,[["render",jX],["__file","message.vue"]]),GX={name:"Mic"},YX={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},XX=k("path",{fill:"currentColor",d:"M480 704h160a64 64 0 0 0 64-64v-32h-96a32 32 0 0 1 0-64h96v-96h-96a32 32 0 0 1 0-64h96v-96h-96a32 32 0 0 1 0-64h96v-32a64 64 0 0 0-64-64H384a64 64 0 0 0-64 64v32h96a32 32 0 0 1 0 64h-96v96h96a32 32 0 0 1 0 64h-96v96h96a32 32 0 0 1 0 64h-96v32a64 64 0 0 0 64 64h96zm64 64v128h192a32 32 0 1 1 0 64H288a32 32 0 1 1 0-64h192V768h-96a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64h256a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128h-96z"},null,-1),ZX=[XX];function JX(e,t,n,r,o,a){return E(),M("svg",YX,ZX)}var QX=re(GX,[["render",JX],["__file","mic.vue"]]),eZ={name:"Microphone"},tZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nZ=k("path",{fill:"currentColor",d:"M512 128a128 128 0 0 0-128 128v256a128 128 0 1 0 256 0V256a128 128 0 0 0-128-128zm0-64a192 192 0 0 1 192 192v256a192 192 0 1 1-384 0V256A192 192 0 0 1 512 64zm-32 832v-64a288 288 0 0 1-288-288v-32a32 32 0 0 1 64 0v32a224 224 0 0 0 224 224h64a224 224 0 0 0 224-224v-32a32 32 0 1 1 64 0v32a288 288 0 0 1-288 288v64h64a32 32 0 1 1 0 64H416a32 32 0 1 1 0-64h64z"},null,-1),rZ=[nZ];function oZ(e,t,n,r,o,a){return E(),M("svg",tZ,rZ)}var aZ=re(eZ,[["render",oZ],["__file","microphone.vue"]]),sZ={name:"MilkTea"},lZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},iZ=k("path",{fill:"currentColor",d:"M416 128V96a96 96 0 0 1 96-96h128a32 32 0 1 1 0 64H512a32 32 0 0 0-32 32v32h320a96 96 0 0 1 11.712 191.296l-39.68 581.056A64 64 0 0 1 708.224 960H315.776a64 64 0 0 1-63.872-59.648l-39.616-581.056A96 96 0 0 1 224 128h192zM276.48 320l39.296 576h392.448l4.8-70.784a224.064 224.064 0 0 1 30.016-439.808L747.52 320H276.48zM224 256h576a32 32 0 1 0 0-64H224a32 32 0 0 0 0 64zm493.44 503.872 21.12-309.12a160 160 0 0 0-21.12 309.12z"},null,-1),uZ=[iZ];function cZ(e,t,n,r,o,a){return E(),M("svg",lZ,uZ)}var dZ=re(sZ,[["render",cZ],["__file","milk-tea.vue"]]),fZ={name:"Minus"},pZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},hZ=k("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64z"},null,-1),vZ=[hZ];function mZ(e,t,n,r,o,a){return E(),M("svg",pZ,vZ)}var hy=re(fZ,[["render",mZ],["__file","minus.vue"]]),gZ={name:"Money"},_Z={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bZ=k("path",{fill:"currentColor",d:"M256 640v192h640V384H768v-64h150.976c14.272 0 19.456 1.472 24.64 4.288a29.056 29.056 0 0 1 12.16 12.096c2.752 5.184 4.224 10.368 4.224 24.64v493.952c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H233.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096c-2.688-5.184-4.224-10.368-4.224-24.576V640h64z"},null,-1),yZ=k("path",{fill:"currentColor",d:"M768 192H128v448h640V192zm64-22.976v493.952c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H105.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096C65.536 682.432 64 677.248 64 663.04V169.024c0-14.272 1.472-19.456 4.288-24.64a29.056 29.056 0 0 1 12.096-12.16C85.568 129.536 90.752 128 104.96 128h685.952c14.272 0 19.456 1.472 24.64 4.288a29.056 29.056 0 0 1 12.16 12.096c2.752 5.184 4.224 10.368 4.224 24.64z"},null,-1),wZ=k("path",{fill:"currentColor",d:"M448 576a160 160 0 1 1 0-320 160 160 0 0 1 0 320zm0-64a96 96 0 1 0 0-192 96 96 0 0 0 0 192z"},null,-1),EZ=[bZ,yZ,wZ];function CZ(e,t,n,r,o,a){return E(),M("svg",_Z,EZ)}var SZ=re(gZ,[["render",CZ],["__file","money.vue"]]),kZ={name:"Monitor"},$Z={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},TZ=k("path",{fill:"currentColor",d:"M544 768v128h192a32 32 0 1 1 0 64H288a32 32 0 1 1 0-64h192V768H192A128 128 0 0 1 64 640V256a128 128 0 0 1 128-128h640a128 128 0 0 1 128 128v384a128 128 0 0 1-128 128H544zM192 192a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H192z"},null,-1),OZ=[TZ];function MZ(e,t,n,r,o,a){return E(),M("svg",$Z,OZ)}var NZ=re(kZ,[["render",MZ],["__file","monitor.vue"]]),AZ={name:"MoonNight"},RZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},xZ=k("path",{fill:"currentColor",d:"M384 512a448 448 0 0 1 215.872-383.296A384 384 0 0 0 213.76 640h188.8A448.256 448.256 0 0 1 384 512zM171.136 704a448 448 0 0 1 636.992-575.296A384 384 0 0 0 499.328 704h-328.32z"},null,-1),IZ=k("path",{fill:"currentColor",d:"M32 640h960q32 0 32 32t-32 32H32q-32 0-32-32t32-32zm128 128h384a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm160 127.68 224 .256a32 32 0 0 1 32 32V928a32 32 0 0 1-32 32l-224-.384a32 32 0 0 1-32-32v-.064a32 32 0 0 1 32-32z"},null,-1),LZ=[xZ,IZ];function PZ(e,t,n,r,o,a){return E(),M("svg",RZ,LZ)}var DZ=re(AZ,[["render",PZ],["__file","moon-night.vue"]]),zZ={name:"Moon"},VZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},BZ=k("path",{fill:"currentColor",d:"M240.448 240.448a384 384 0 1 0 559.424 525.696 448 448 0 0 1-542.016-542.08 390.592 390.592 0 0 0-17.408 16.384zm181.056 362.048a384 384 0 0 0 525.632 16.384A448 448 0 1 1 405.056 76.8a384 384 0 0 0 16.448 525.696z"},null,-1),FZ=[BZ];function HZ(e,t,n,r,o,a){return E(),M("svg",VZ,FZ)}var UZ=re(zZ,[["render",HZ],["__file","moon.vue"]]),KZ={name:"MoreFilled"},WZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jZ=k("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224z"},null,-1),qZ=[jZ];function GZ(e,t,n,r,o,a){return E(),M("svg",WZ,qZ)}var S0=re(KZ,[["render",GZ],["__file","more-filled.vue"]]),YZ={name:"More"},XZ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ZZ=k("path",{fill:"currentColor",d:"M176 416a112 112 0 1 0 0 224 112 112 0 0 0 0-224m0 64a48 48 0 1 1 0 96 48 48 0 0 1 0-96zm336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96zm336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96z"},null,-1),JZ=[ZZ];function QZ(e,t,n,r,o,a){return E(),M("svg",XZ,JZ)}var vy=re(YZ,[["render",QZ],["__file","more.vue"]]),eJ={name:"MostlyCloudy"},tJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nJ=k("path",{fill:"currentColor",d:"M737.216 357.952 704 349.824l-11.776-32a192.064 192.064 0 0 0-367.424 23.04l-8.96 39.04-39.04 8.96A192.064 192.064 0 0 0 320 768h368a207.808 207.808 0 0 0 207.808-208 208.32 208.32 0 0 0-158.592-202.048zm15.168-62.208A272.32 272.32 0 0 1 959.744 560a271.808 271.808 0 0 1-271.552 272H320a256 256 0 0 1-57.536-505.536 256.128 256.128 0 0 1 489.92-30.72z"},null,-1),rJ=[nJ];function oJ(e,t,n,r,o,a){return E(),M("svg",tJ,rJ)}var aJ=re(eJ,[["render",oJ],["__file","mostly-cloudy.vue"]]),sJ={name:"Mouse"},lJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},iJ=k("path",{fill:"currentColor",d:"M438.144 256c-68.352 0-92.736 4.672-117.76 18.112-20.096 10.752-35.52 26.176-46.272 46.272C260.672 345.408 256 369.792 256 438.144v275.712c0 68.352 4.672 92.736 18.112 117.76 10.752 20.096 26.176 35.52 46.272 46.272C345.408 891.328 369.792 896 438.144 896h147.712c68.352 0 92.736-4.672 117.76-18.112 20.096-10.752 35.52-26.176 46.272-46.272C763.328 806.592 768 782.208 768 713.856V438.144c0-68.352-4.672-92.736-18.112-117.76a110.464 110.464 0 0 0-46.272-46.272C678.592 260.672 654.208 256 585.856 256H438.144zm0-64h147.712c85.568 0 116.608 8.96 147.904 25.6 31.36 16.768 55.872 41.344 72.576 72.64C823.104 321.536 832 352.576 832 438.08v275.84c0 85.504-8.96 116.544-25.6 147.84a174.464 174.464 0 0 1-72.64 72.576C702.464 951.104 671.424 960 585.92 960H438.08c-85.504 0-116.544-8.96-147.84-25.6a174.464 174.464 0 0 1-72.64-72.704c-16.768-31.296-25.664-62.336-25.664-147.84v-275.84c0-85.504 8.96-116.544 25.6-147.84a174.464 174.464 0 0 1 72.768-72.576c31.232-16.704 62.272-25.6 147.776-25.6z"},null,-1),uJ=k("path",{fill:"currentColor",d:"M512 320q32 0 32 32v128q0 32-32 32t-32-32V352q0-32 32-32zm32-96a32 32 0 0 1-64 0v-64a32 32 0 0 0-32-32h-96a32 32 0 0 1 0-64h96a96 96 0 0 1 96 96v64z"},null,-1),cJ=[iJ,uJ];function dJ(e,t,n,r,o,a){return E(),M("svg",lJ,cJ)}var fJ=re(sJ,[["render",dJ],["__file","mouse.vue"]]),pJ={name:"Mug"},hJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vJ=k("path",{fill:"currentColor",d:"M736 800V160H160v640a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64zm64-544h63.552a96 96 0 0 1 96 96v224a96 96 0 0 1-96 96H800v128a128 128 0 0 1-128 128H224A128 128 0 0 1 96 800V128a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v128zm0 64v288h63.552a32 32 0 0 0 32-32V352a32 32 0 0 0-32-32H800z"},null,-1),mJ=[vJ];function gJ(e,t,n,r,o,a){return E(),M("svg",hJ,mJ)}var _J=re(pJ,[["render",gJ],["__file","mug.vue"]]),bJ={name:"MuteNotification"},yJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},wJ=k("path",{fill:"currentColor",d:"m241.216 832 63.616-64H768V448c0-42.368-10.24-82.304-28.48-117.504l46.912-47.232C815.36 331.392 832 387.84 832 448v320h96a32 32 0 1 1 0 64H241.216zm-90.24 0H96a32 32 0 1 1 0-64h96V448a320.128 320.128 0 0 1 256-313.6V128a64 64 0 1 1 128 0v6.4a319.552 319.552 0 0 1 171.648 97.088l-45.184 45.44A256 256 0 0 0 256 448v278.336L151.04 832zM448 896h128a64 64 0 0 1-128 0z"},null,-1),EJ=k("path",{fill:"currentColor",d:"M150.72 859.072a32 32 0 0 1-45.44-45.056l704-708.544a32 32 0 0 1 45.44 45.056l-704 708.544z"},null,-1),CJ=[wJ,EJ];function SJ(e,t,n,r,o,a){return E(),M("svg",yJ,CJ)}var kJ=re(bJ,[["render",SJ],["__file","mute-notification.vue"]]),$J={name:"Mute"},TJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},OJ=k("path",{fill:"currentColor",d:"m412.16 592.128-45.44 45.44A191.232 191.232 0 0 1 320 512V256a192 192 0 1 1 384 0v44.352l-64 64V256a128 128 0 1 0-256 0v256c0 30.336 10.56 58.24 28.16 80.128zm51.968 38.592A128 128 0 0 0 640 512v-57.152l64-64V512a192 192 0 0 1-287.68 166.528l47.808-47.808zM314.88 779.968l46.144-46.08A222.976 222.976 0 0 0 480 768h64a224 224 0 0 0 224-224v-32a32 32 0 1 1 64 0v32a288 288 0 0 1-288 288v64h64a32 32 0 1 1 0 64H416a32 32 0 1 1 0-64h64v-64c-61.44 0-118.4-19.2-165.12-52.032zM266.752 737.6A286.976 286.976 0 0 1 192 544v-32a32 32 0 0 1 64 0v32c0 56.832 21.184 108.8 56.064 148.288L266.752 737.6z"},null,-1),MJ=k("path",{fill:"currentColor",d:"M150.72 859.072a32 32 0 0 1-45.44-45.056l704-708.544a32 32 0 0 1 45.44 45.056l-704 708.544z"},null,-1),NJ=[OJ,MJ];function AJ(e,t,n,r,o,a){return E(),M("svg",TJ,NJ)}var RJ=re($J,[["render",AJ],["__file","mute.vue"]]),xJ={name:"NoSmoking"},IJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},LJ=k("path",{fill:"currentColor",d:"M440.256 576H256v128h56.256l-64 64H224a32 32 0 0 1-32-32V544a32 32 0 0 1 32-32h280.256l-64 64zm143.488 128H704V583.744L775.744 512H928a32 32 0 0 1 32 32v192a32 32 0 0 1-32 32H519.744l64-64zM768 576v128h128V576H768zm-29.696-207.552 45.248 45.248-497.856 497.856-45.248-45.248zM256 64h64v320h-64zM128 192h64v192h-64zM64 512h64v256H64z"},null,-1),PJ=[LJ];function DJ(e,t,n,r,o,a){return E(),M("svg",IJ,PJ)}var zJ=re(xJ,[["render",DJ],["__file","no-smoking.vue"]]),VJ={name:"Notebook"},BJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},FJ=k("path",{fill:"currentColor",d:"M192 128v768h640V128H192zm-32-64h704a32 32 0 0 1 32 32v832a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),HJ=k("path",{fill:"currentColor",d:"M672 128h64v768h-64zM96 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32z"},null,-1),UJ=[FJ,HJ];function KJ(e,t,n,r,o,a){return E(),M("svg",BJ,UJ)}var WJ=re(VJ,[["render",KJ],["__file","notebook.vue"]]),jJ={name:"Notification"},qJ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},GJ=k("path",{fill:"currentColor",d:"M512 128v64H256a64 64 0 0 0-64 64v512a64 64 0 0 0 64 64h512a64 64 0 0 0 64-64V512h64v256a128 128 0 0 1-128 128H256a128 128 0 0 1-128-128V256a128 128 0 0 1 128-128h256z"},null,-1),YJ=k("path",{fill:"currentColor",d:"M768 384a128 128 0 1 0 0-256 128 128 0 0 0 0 256zm0 64a192 192 0 1 1 0-384 192 192 0 0 1 0 384z"},null,-1),XJ=[GJ,YJ];function ZJ(e,t,n,r,o,a){return E(),M("svg",qJ,XJ)}var JJ=re(jJ,[["render",ZJ],["__file","notification.vue"]]),QJ={name:"Odometer"},eQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},tQ=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),nQ=k("path",{fill:"currentColor",d:"M192 512a320 320 0 1 1 640 0 32 32 0 1 1-64 0 256 256 0 1 0-512 0 32 32 0 0 1-64 0z"},null,-1),rQ=k("path",{fill:"currentColor",d:"M570.432 627.84A96 96 0 1 1 509.568 608l60.992-187.776A32 32 0 1 1 631.424 440l-60.992 187.776zM502.08 734.464a32 32 0 1 0 19.84-60.928 32 32 0 0 0-19.84 60.928z"},null,-1),oQ=[tQ,nQ,rQ];function aQ(e,t,n,r,o,a){return E(),M("svg",eQ,oQ)}var sQ=re(QJ,[["render",aQ],["__file","odometer.vue"]]),lQ={name:"OfficeBuilding"},iQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uQ=k("path",{fill:"currentColor",d:"M192 128v704h384V128H192zm-32-64h448a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),cQ=k("path",{fill:"currentColor",d:"M256 256h256v64H256v-64zm0 192h256v64H256v-64zm0 192h256v64H256v-64zm384-128h128v64H640v-64zm0 128h128v64H640v-64zM64 832h896v64H64v-64z"},null,-1),dQ=k("path",{fill:"currentColor",d:"M640 384v448h192V384H640zm-32-64h256a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H608a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32z"},null,-1),fQ=[uQ,cQ,dQ];function pQ(e,t,n,r,o,a){return E(),M("svg",iQ,fQ)}var hQ=re(lQ,[["render",pQ],["__file","office-building.vue"]]),vQ={name:"Open"},mQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},gQ=k("path",{fill:"currentColor",d:"M329.956 257.138a254.862 254.862 0 0 0 0 509.724h364.088a254.862 254.862 0 0 0 0-509.724H329.956zm0-72.818h364.088a327.68 327.68 0 1 1 0 655.36H329.956a327.68 327.68 0 1 1 0-655.36z"},null,-1),_Q=k("path",{fill:"currentColor",d:"M694.044 621.227a109.227 109.227 0 1 0 0-218.454 109.227 109.227 0 0 0 0 218.454zm0 72.817a182.044 182.044 0 1 1 0-364.088 182.044 182.044 0 0 1 0 364.088z"},null,-1),bQ=[gQ,_Q];function yQ(e,t,n,r,o,a){return E(),M("svg",mQ,bQ)}var wQ=re(vQ,[["render",yQ],["__file","open.vue"]]),EQ={name:"Operation"},CQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},SQ=k("path",{fill:"currentColor",d:"M389.44 768a96.064 96.064 0 0 1 181.12 0H896v64H570.56a96.064 96.064 0 0 1-181.12 0H128v-64h261.44zm192-288a96.064 96.064 0 0 1 181.12 0H896v64H762.56a96.064 96.064 0 0 1-181.12 0H128v-64h453.44zm-320-288a96.064 96.064 0 0 1 181.12 0H896v64H442.56a96.064 96.064 0 0 1-181.12 0H128v-64h133.44z"},null,-1),kQ=[SQ];function $Q(e,t,n,r,o,a){return E(),M("svg",CQ,kQ)}var TQ=re(EQ,[["render",$Q],["__file","operation.vue"]]),OQ={name:"Opportunity"},MQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},NQ=k("path",{fill:"currentColor",d:"M384 960v-64h192.064v64H384zm448-544a350.656 350.656 0 0 1-128.32 271.424C665.344 719.04 640 763.776 640 813.504V832H320v-14.336c0-48-19.392-95.36-57.216-124.992a351.552 351.552 0 0 1-128.448-344.256c25.344-136.448 133.888-248.128 269.76-276.48A352.384 352.384 0 0 1 832 416zm-544 32c0-132.288 75.904-224 192-224v-64c-154.432 0-256 122.752-256 288h64z"},null,-1),AQ=[NQ];function RQ(e,t,n,r,o,a){return E(),M("svg",MQ,AQ)}var xQ=re(OQ,[["render",RQ],["__file","opportunity.vue"]]),IQ={name:"Orange"},LQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},PQ=k("path",{fill:"currentColor",d:"M544 894.72a382.336 382.336 0 0 0 215.936-89.472L577.024 622.272c-10.24 6.016-21.248 10.688-33.024 13.696v258.688zm261.248-134.784A382.336 382.336 0 0 0 894.656 544H635.968c-3.008 11.776-7.68 22.848-13.696 33.024l182.976 182.912zM894.656 480a382.336 382.336 0 0 0-89.408-215.936L622.272 446.976c6.016 10.24 10.688 21.248 13.696 33.024h258.688zm-134.72-261.248A382.336 382.336 0 0 0 544 129.344v258.688c11.776 3.008 22.848 7.68 33.024 13.696l182.912-182.976zM480 129.344a382.336 382.336 0 0 0-215.936 89.408l182.912 182.976c10.24-6.016 21.248-10.688 33.024-13.696V129.344zm-261.248 134.72A382.336 382.336 0 0 0 129.344 480h258.688c3.008-11.776 7.68-22.848 13.696-33.024L218.752 264.064zM129.344 544a382.336 382.336 0 0 0 89.408 215.936l182.976-182.912A127.232 127.232 0 0 1 388.032 544H129.344zm134.72 261.248A382.336 382.336 0 0 0 480 894.656V635.968a127.232 127.232 0 0 1-33.024-13.696L264.064 805.248zM512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896zm0-384a64 64 0 1 0 0-128 64 64 0 0 0 0 128z"},null,-1),DQ=[PQ];function zQ(e,t,n,r,o,a){return E(),M("svg",LQ,DQ)}var VQ=re(IQ,[["render",zQ],["__file","orange.vue"]]),BQ={name:"Paperclip"},FQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},HQ=k("path",{fill:"currentColor",d:"M602.496 240.448A192 192 0 1 1 874.048 512l-316.8 316.8A256 256 0 0 1 195.2 466.752L602.496 59.456l45.248 45.248L240.448 512A192 192 0 0 0 512 783.552l316.8-316.8a128 128 0 1 0-181.056-181.056L353.6 579.904a32 32 0 1 0 45.248 45.248l294.144-294.144 45.312 45.248L444.096 670.4a96 96 0 1 1-135.744-135.744l294.144-294.208z"},null,-1),UQ=[HQ];function KQ(e,t,n,r,o,a){return E(),M("svg",FQ,UQ)}var WQ=re(BQ,[["render",KQ],["__file","paperclip.vue"]]),jQ={name:"PartlyCloudy"},qQ={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},GQ=k("path",{fill:"currentColor",d:"M598.4 895.872H328.192a256 256 0 0 1-34.496-510.528A352 352 0 1 1 598.4 895.872zm-271.36-64h272.256a288 288 0 1 0-248.512-417.664L335.04 445.44l-34.816 3.584a192 192 0 0 0 26.88 382.848z"},null,-1),YQ=k("path",{fill:"currentColor",d:"M139.84 501.888a256 256 0 1 1 417.856-277.12c-17.728 2.176-38.208 8.448-61.504 18.816A192 192 0 1 0 189.12 460.48a6003.84 6003.84 0 0 0-49.28 41.408z"},null,-1),XQ=[GQ,YQ];function ZQ(e,t,n,r,o,a){return E(),M("svg",qQ,XQ)}var JQ=re(jQ,[["render",ZQ],["__file","partly-cloudy.vue"]]),QQ={name:"Pear"},eee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},tee=k("path",{fill:"currentColor",d:"M542.336 258.816a443.255 443.255 0 0 0-9.024 25.088 32 32 0 1 1-60.8-20.032l1.088-3.328a162.688 162.688 0 0 0-122.048 131.392l-17.088 102.72-20.736 15.36C256.192 552.704 224 610.88 224 672c0 120.576 126.4 224 288 224s288-103.424 288-224c0-61.12-32.192-119.296-89.728-161.92l-20.736-15.424-17.088-102.72a162.688 162.688 0 0 0-130.112-133.12zm-40.128-66.56c7.936-15.552 16.576-30.08 25.92-43.776 23.296-33.92 49.408-59.776 78.528-77.12a32 32 0 1 1 32.704 55.04c-20.544 12.224-40.064 31.552-58.432 58.304a316.608 316.608 0 0 0-9.792 15.104 226.688 226.688 0 0 1 164.48 181.568l12.8 77.248C819.456 511.36 864 587.392 864 672c0 159.04-157.568 288-352 288S160 831.04 160 672c0-84.608 44.608-160.64 115.584-213.376l12.8-77.248a226.624 226.624 0 0 1 213.76-189.184z"},null,-1),nee=[tee];function ree(e,t,n,r,o,a){return E(),M("svg",eee,nee)}var oee=re(QQ,[["render",ree],["__file","pear.vue"]]),aee={name:"PhoneFilled"},see={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},lee=k("path",{fill:"currentColor",d:"M199.232 125.568 90.624 379.008a32 32 0 0 0 6.784 35.2l512.384 512.384a32 32 0 0 0 35.2 6.784l253.44-108.608a32 32 0 0 0 10.048-52.032L769.6 633.92a32 32 0 0 0-36.928-5.952l-130.176 65.088-271.488-271.552 65.024-130.176a32 32 0 0 0-5.952-36.928L251.2 115.52a32 32 0 0 0-51.968 10.048z"},null,-1),iee=[lee];function uee(e,t,n,r,o,a){return E(),M("svg",see,iee)}var cee=re(aee,[["render",uee],["__file","phone-filled.vue"]]),dee={name:"Phone"},fee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},pee=k("path",{fill:"currentColor",d:"M79.36 432.256 591.744 944.64a32 32 0 0 0 35.2 6.784l253.44-108.544a32 32 0 0 0 9.984-52.032l-153.856-153.92a32 32 0 0 0-36.928-6.016l-69.888 34.944L358.08 394.24l35.008-69.888a32 32 0 0 0-5.952-36.928L233.152 133.568a32 32 0 0 0-52.032 10.048L72.512 397.056a32 32 0 0 0 6.784 35.2zm60.48-29.952 81.536-190.08L325.568 316.48l-24.64 49.216-20.608 41.216 32.576 32.64 271.552 271.552 32.64 32.64 41.216-20.672 49.28-24.576 104.192 104.128-190.08 81.472L139.84 402.304zM512 320v-64a256 256 0 0 1 256 256h-64a192 192 0 0 0-192-192zm0-192V64a448 448 0 0 1 448 448h-64a384 384 0 0 0-384-384z"},null,-1),hee=[pee];function vee(e,t,n,r,o,a){return E(),M("svg",fee,hee)}var mee=re(dee,[["render",vee],["__file","phone.vue"]]),gee={name:"PictureFilled"},_ee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bee=k("path",{fill:"currentColor",d:"M96 896a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h832a32 32 0 0 1 32 32v704a32 32 0 0 1-32 32H96zm315.52-228.48-68.928-68.928a32 32 0 0 0-45.248 0L128 768.064h778.688l-242.112-290.56a32 32 0 0 0-49.216 0L458.752 665.408a32 32 0 0 1-47.232 2.112zM256 384a96 96 0 1 0 192.064-.064A96 96 0 0 0 256 384z"},null,-1),yee=[bee];function wee(e,t,n,r,o,a){return E(),M("svg",_ee,yee)}var my=re(gee,[["render",wee],["__file","picture-filled.vue"]]),Eee={name:"PictureRounded"},Cee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},See=k("path",{fill:"currentColor",d:"M512 128a384 384 0 1 0 0 768 384 384 0 0 0 0-768zm0-64a448 448 0 1 1 0 896 448 448 0 0 1 0-896z"},null,-1),kee=k("path",{fill:"currentColor",d:"M640 288q64 0 64 64t-64 64q-64 0-64-64t64-64zM214.656 790.656l-45.312-45.312 185.664-185.6a96 96 0 0 1 123.712-10.24l138.24 98.688a32 32 0 0 0 39.872-2.176L906.688 422.4l42.624 47.744L699.52 693.696a96 96 0 0 1-119.808 6.592l-138.24-98.752a32 32 0 0 0-41.152 3.456l-185.664 185.6z"},null,-1),$ee=[See,kee];function Tee(e,t,n,r,o,a){return E(),M("svg",Cee,$ee)}var Oee=re(Eee,[["render",Tee],["__file","picture-rounded.vue"]]),Mee={name:"Picture"},Nee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Aee=k("path",{fill:"currentColor",d:"M160 160v704h704V160H160zm-32-64h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32z"},null,-1),Ree=k("path",{fill:"currentColor",d:"M384 288q64 0 64 64t-64 64q-64 0-64-64t64-64zM185.408 876.992l-50.816-38.912L350.72 556.032a96 96 0 0 1 134.592-17.856l1.856 1.472 122.88 99.136a32 32 0 0 0 44.992-4.864l216-269.888 49.92 39.936-215.808 269.824-.256.32a96 96 0 0 1-135.04 14.464l-122.88-99.072-.64-.512a32 32 0 0 0-44.8 5.952L185.408 876.992z"},null,-1),xee=[Aee,Ree];function Iee(e,t,n,r,o,a){return E(),M("svg",Nee,xee)}var Lee=re(Mee,[["render",Iee],["__file","picture.vue"]]),Pee={name:"PieChart"},Dee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zee=k("path",{fill:"currentColor",d:"M448 68.48v64.832A384.128 384.128 0 0 0 512 896a384.128 384.128 0 0 0 378.688-320h64.768A448.128 448.128 0 0 1 64 512 448.128 448.128 0 0 1 448 68.48z"},null,-1),Vee=k("path",{fill:"currentColor",d:"M576 97.28V448h350.72A384.064 384.064 0 0 0 576 97.28zM512 64V33.152A448 448 0 0 1 990.848 512H512V64z"},null,-1),Bee=[zee,Vee];function Fee(e,t,n,r,o,a){return E(),M("svg",Dee,Bee)}var Hee=re(Pee,[["render",Fee],["__file","pie-chart.vue"]]),Uee={name:"Place"},Kee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Wee=k("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),jee=k("path",{fill:"currentColor",d:"M512 512a32 32 0 0 1 32 32v256a32 32 0 1 1-64 0V544a32 32 0 0 1 32-32z"},null,-1),qee=k("path",{fill:"currentColor",d:"M384 649.088v64.96C269.76 732.352 192 771.904 192 800c0 37.696 139.904 96 320 96s320-58.304 320-96c0-28.16-77.76-67.648-192-85.952v-64.96C789.12 671.04 896 730.368 896 800c0 88.32-171.904 160-384 160s-384-71.68-384-160c0-69.696 106.88-128.96 256-150.912z"},null,-1),Gee=[Wee,jee,qee];function Yee(e,t,n,r,o,a){return E(),M("svg",Kee,Gee)}var Xee=re(Uee,[["render",Yee],["__file","place.vue"]]),Zee={name:"Platform"},Jee={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Qee=k("path",{fill:"currentColor",d:"M448 832v-64h128v64h192v64H256v-64h192zM128 704V128h768v576H128z"},null,-1),ete=[Qee];function tte(e,t,n,r,o,a){return E(),M("svg",Jee,ete)}var nte=re(Zee,[["render",tte],["__file","platform.vue"]]),rte={name:"Plus"},ote={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ate=k("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"},null,-1),ste=[ate];function lte(e,t,n,r,o,a){return E(),M("svg",ote,ste)}var Yh=re(rte,[["render",lte],["__file","plus.vue"]]),ite={name:"Pointer"},ute={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cte=k("path",{fill:"currentColor",d:"M511.552 128c-35.584 0-64.384 28.8-64.384 64.448v516.48L274.048 570.88a94.272 94.272 0 0 0-112.896-3.456 44.416 44.416 0 0 0-8.96 62.208L332.8 870.4A64 64 0 0 0 384 896h512V575.232a64 64 0 0 0-45.632-61.312l-205.952-61.76A96 96 0 0 1 576 360.192V192.448C576 156.8 547.2 128 511.552 128zM359.04 556.8l24.128 19.2V192.448a128.448 128.448 0 1 1 256.832 0v167.744a32 32 0 0 0 22.784 30.656l206.016 61.76A128 128 0 0 1 960 575.232V896a64 64 0 0 1-64 64H384a128 128 0 0 1-102.4-51.2L101.056 668.032A108.416 108.416 0 0 1 128 512.512a158.272 158.272 0 0 1 185.984 8.32L359.04 556.8z"},null,-1),dte=[cte];function fte(e,t,n,r,o,a){return E(),M("svg",ute,dte)}var pte=re(ite,[["render",fte],["__file","pointer.vue"]]),hte={name:"Position"},vte={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mte=k("path",{fill:"currentColor",d:"m249.6 417.088 319.744 43.072 39.168 310.272L845.12 178.88 249.6 417.088zm-129.024 47.168a32 32 0 0 1-7.68-61.44l777.792-311.04a32 32 0 0 1 41.6 41.6l-310.336 775.68a32 32 0 0 1-61.44-7.808L512 516.992l-391.424-52.736z"},null,-1),gte=[mte];function _te(e,t,n,r,o,a){return E(),M("svg",vte,gte)}var bte=re(hte,[["render",_te],["__file","position.vue"]]),yte={name:"Postcard"},wte={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ete=k("path",{fill:"currentColor",d:"M160 224a32 32 0 0 0-32 32v512a32 32 0 0 0 32 32h704a32 32 0 0 0 32-32V256a32 32 0 0 0-32-32H160zm0-64h704a96 96 0 0 1 96 96v512a96 96 0 0 1-96 96H160a96 96 0 0 1-96-96V256a96 96 0 0 1 96-96z"},null,-1),Cte=k("path",{fill:"currentColor",d:"M704 320a64 64 0 1 1 0 128 64 64 0 0 1 0-128zM288 448h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32zm0 128h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),Ste=[Ete,Cte];function kte(e,t,n,r,o,a){return E(),M("svg",wte,Ste)}var $te=re(yte,[["render",kte],["__file","postcard.vue"]]),Tte={name:"Pouring"},Ote={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Mte=k("path",{fill:"currentColor",d:"m739.328 291.328-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 97.28 78.72 175.936 175.808 175.936h400a192 192 0 0 0 35.776-380.672zM959.552 480a256 256 0 0 1-256 256h-400A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 959.552 480zM224 800a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32z"},null,-1),Nte=[Mte];function Ate(e,t,n,r,o,a){return E(),M("svg",Ote,Nte)}var Rte=re(Tte,[["render",Ate],["__file","pouring.vue"]]),xte={name:"Present"},Ite={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Lte=k("path",{fill:"currentColor",d:"M480 896V640H192v-64h288V320H192v576h288zm64 0h288V320H544v256h288v64H544v256zM128 256h768v672a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V256z"},null,-1),Pte=k("path",{fill:"currentColor",d:"M96 256h832q32 0 32 32t-32 32H96q-32 0-32-32t32-32z"},null,-1),Dte=k("path",{fill:"currentColor",d:"M416 256a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),zte=k("path",{fill:"currentColor",d:"M608 256a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),Vte=[Lte,Pte,Dte,zte];function Bte(e,t,n,r,o,a){return E(),M("svg",Ite,Vte)}var Fte=re(xte,[["render",Bte],["__file","present.vue"]]),Hte={name:"PriceTag"},Ute={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Kte=k("path",{fill:"currentColor",d:"M224 318.336V896h576V318.336L552.512 115.84a64 64 0 0 0-81.024 0L224 318.336zM593.024 66.304l259.2 212.096A32 32 0 0 1 864 303.168V928a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V303.168a32 32 0 0 1 11.712-24.768l259.2-212.096a128 128 0 0 1 162.112 0z"},null,-1),Wte=k("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),jte=[Kte,Wte];function qte(e,t,n,r,o,a){return E(),M("svg",Ute,jte)}var Gte=re(Hte,[["render",qte],["__file","price-tag.vue"]]),Yte={name:"Printer"},Xte={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Zte=k("path",{fill:"currentColor",d:"M256 768H105.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096C65.536 746.432 64 741.248 64 727.04V379.072c0-42.816 4.48-58.304 12.8-73.984 8.384-15.616 20.672-27.904 36.288-36.288 15.68-8.32 31.168-12.8 73.984-12.8H256V64h512v192h68.928c42.816 0 58.304 4.48 73.984 12.8 15.616 8.384 27.904 20.672 36.288 36.288 8.32 15.68 12.8 31.168 12.8 73.984v347.904c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H768v192H256V768zm64-192v320h384V576H320zm-64 128V512h512v192h128V379.072c0-29.376-1.408-36.48-5.248-43.776a23.296 23.296 0 0 0-10.048-10.048c-7.232-3.84-14.4-5.248-43.776-5.248H187.072c-29.376 0-36.48 1.408-43.776 5.248a23.296 23.296 0 0 0-10.048 10.048c-3.84 7.232-5.248 14.4-5.248 43.776V704h128zm64-448h384V128H320v128zm-64 128h64v64h-64v-64zm128 0h64v64h-64v-64z"},null,-1),Jte=[Zte];function Qte(e,t,n,r,o,a){return E(),M("svg",Xte,Jte)}var ene=re(Yte,[["render",Qte],["__file","printer.vue"]]),tne={name:"Promotion"},nne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rne=k("path",{fill:"currentColor",d:"m64 448 832-320-128 704-446.08-243.328L832 192 242.816 545.472 64 448zm256 512V657.024L512 768 320 960z"},null,-1),one=[rne];function ane(e,t,n,r,o,a){return E(),M("svg",nne,one)}var sne=re(tne,[["render",ane],["__file","promotion.vue"]]),lne={name:"QuartzWatch"},ine={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},une=k("path",{d:"M422.02 602.01v-.03c-6.68-5.99-14.35-8.83-23.01-8.51-8.67.32-16.17 3.66-22.5 10.02-6.33 6.36-9.5 13.7-9.5 22.02s3 15.82 8.99 22.5c8.68 8.68 19.02 11.35 31.01 8s19.49-10.85 22.5-22.5c3.01-11.65.51-22.15-7.49-31.49v-.01zM384 512c0-9.35-3-17.02-8.99-23.01-6-5.99-13.66-8.99-23.01-8.99-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.66 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.67 8.99-23.01zm6.53-82.49c11.65 3.01 22.15.51 31.49-7.49h.04c5.99-6.68 8.83-14.34 8.51-23.01-.32-8.67-3.66-16.16-10.02-22.5-6.36-6.33-13.7-9.5-22.02-9.5s-15.82 3-22.5 8.99c-8.68 8.69-11.35 19.02-8 31.01 3.35 11.99 10.85 19.49 22.5 22.5zm242.94 0c11.67-3.03 19.01-10.37 22.02-22.02 3.01-11.65.51-22.15-7.49-31.49h.01c-6.68-5.99-14.18-8.99-22.5-8.99s-15.66 3.16-22.02 9.5c-6.36 6.34-9.7 13.84-10.02 22.5-.32 8.66 2.52 16.33 8.51 23.01 9.32 8.02 19.82 10.52 31.49 7.49zM512 640c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.67 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.66 8.99-23.01s-3-17.02-8.99-23.01c-6-5.99-13.66-8.99-23.01-8.99zm183.01-151.01c-6-5.99-13.66-8.99-23.01-8.99s-17.02 3-23.01 8.99c-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.66 8.99 23.01 8.99s17.02-3 23.01-8.99c5.99-6 8.99-13.67 8.99-23.01 0-9.35-3-17.02-8.99-23.01z",fill:"currentColor"},null,-1),cne=k("path",{d:"M832 512c-2-90.67-33.17-166.17-93.5-226.5-20.43-20.42-42.6-37.49-66.5-51.23V64H352v170.26c-23.9 13.74-46.07 30.81-66.5 51.24-60.33 60.33-91.49 135.83-93.5 226.5 2 90.67 33.17 166.17 93.5 226.5 20.43 20.43 42.6 37.5 66.5 51.24V960h320V789.74c23.9-13.74 46.07-30.81 66.5-51.24 60.33-60.34 91.49-135.83 93.5-226.5zM416 128h192v78.69c-29.85-9.03-61.85-13.93-96-14.69-34.15.75-66.15 5.65-96 14.68V128zm192 768H416v-78.68c29.85 9.03 61.85 13.93 96 14.68 34.15-.75 66.15-5.65 96-14.68V896zm-96-128c-72.66-2.01-132.99-27.01-180.99-75.01S258.01 584.66 256 512c2.01-72.66 27.01-132.99 75.01-180.99S439.34 258.01 512 256c72.66 2.01 132.99 27.01 180.99 75.01S765.99 439.34 768 512c-2.01 72.66-27.01 132.99-75.01 180.99S584.66 765.99 512 768z",fill:"currentColor"},null,-1),dne=k("path",{d:"M512 320c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01 0 9.35 3 17.02 8.99 23.01 6 5.99 13.67 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.66 8.99-23.01 0-9.35-3-17.02-8.99-23.01-6-5.99-13.66-8.99-23.01-8.99zm112.99 273.5c-8.66-.32-16.33 2.52-23.01 8.51-7.98 9.32-10.48 19.82-7.49 31.49s10.49 19.17 22.5 22.5 22.35.66 31.01-8v.04c5.99-6.68 8.99-14.18 8.99-22.5s-3.16-15.66-9.5-22.02-13.84-9.7-22.5-10.02z",fill:"currentColor"},null,-1),fne=[une,cne,dne];function pne(e,t,n,r,o,a){return E(),M("svg",ine,fne)}var hne=re(lne,[["render",pne],["__file","quartz-watch.vue"]]),vne={name:"QuestionFilled"},mne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},gne=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592 0-42.944-14.08-76.736-42.24-101.376-28.16-25.344-65.472-37.312-111.232-37.312zm-12.672 406.208a54.272 54.272 0 0 0-38.72 14.784 49.408 49.408 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.848 54.848 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.968 51.968 0 0 0-15.488-38.016 55.936 55.936 0 0 0-39.424-14.784z"},null,-1),_ne=[gne];function bne(e,t,n,r,o,a){return E(),M("svg",mne,_ne)}var gy=re(vne,[["render",bne],["__file","question-filled.vue"]]),yne={name:"Rank"},wne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ene=k("path",{fill:"currentColor",d:"m186.496 544 41.408 41.344a32 32 0 1 1-45.248 45.312l-96-96a32 32 0 0 1 0-45.312l96-96a32 32 0 1 1 45.248 45.312L186.496 480h290.816V186.432l-41.472 41.472a32 32 0 1 1-45.248-45.184l96-96.128a32 32 0 0 1 45.312 0l96 96.064a32 32 0 0 1-45.248 45.184l-41.344-41.28V480H832l-41.344-41.344a32 32 0 0 1 45.248-45.312l96 96a32 32 0 0 1 0 45.312l-96 96a32 32 0 0 1-45.248-45.312L832 544H541.312v293.44l41.344-41.28a32 32 0 1 1 45.248 45.248l-96 96a32 32 0 0 1-45.312 0l-96-96a32 32 0 1 1 45.312-45.248l41.408 41.408V544H186.496z"},null,-1),Cne=[Ene];function Sne(e,t,n,r,o,a){return E(),M("svg",wne,Cne)}var kne=re(yne,[["render",Sne],["__file","rank.vue"]]),$ne={name:"ReadingLamp"},Tne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},One=k("path",{fill:"currentColor",d:"M352 896h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm-44.672-768-99.52 448h608.384l-99.52-448H307.328zm-25.6-64h460.608a32 32 0 0 1 31.232 25.088l113.792 512A32 32 0 0 1 856.128 640H167.872a32 32 0 0 1-31.232-38.912l113.792-512A32 32 0 0 1 281.664 64z"},null,-1),Mne=k("path",{fill:"currentColor",d:"M672 576q32 0 32 32v128q0 32-32 32t-32-32V608q0-32 32-32zm-192-.064h64V960h-64z"},null,-1),Nne=[One,Mne];function Ane(e,t,n,r,o,a){return E(),M("svg",Tne,Nne)}var Rne=re($ne,[["render",Ane],["__file","reading-lamp.vue"]]),xne={name:"Reading"},Ine={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Lne=k("path",{fill:"currentColor",d:"m512 863.36 384-54.848v-638.72L525.568 222.72a96 96 0 0 1-27.136 0L128 169.792v638.72l384 54.848zM137.024 106.432l370.432 52.928a32 32 0 0 0 9.088 0l370.432-52.928A64 64 0 0 1 960 169.792v638.72a64 64 0 0 1-54.976 63.36l-388.48 55.488a32 32 0 0 1-9.088 0l-388.48-55.488A64 64 0 0 1 64 808.512v-638.72a64 64 0 0 1 73.024-63.36z"},null,-1),Pne=k("path",{fill:"currentColor",d:"M480 192h64v704h-64z"},null,-1),Dne=[Lne,Pne];function zne(e,t,n,r,o,a){return E(),M("svg",Ine,Dne)}var Vne=re(xne,[["render",zne],["__file","reading.vue"]]),Bne={name:"RefreshLeft"},Fne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Hne=k("path",{fill:"currentColor",d:"M289.088 296.704h92.992a32 32 0 0 1 0 64H232.96a32 32 0 0 1-32-32V179.712a32 32 0 0 1 64 0v50.56a384 384 0 0 1 643.84 282.88 384 384 0 0 1-383.936 384 384 384 0 0 1-384-384h64a320 320 0 1 0 640 0 320 320 0 0 0-555.712-216.448z"},null,-1),Une=[Hne];function Kne(e,t,n,r,o,a){return E(),M("svg",Fne,Une)}var _y=re(Bne,[["render",Kne],["__file","refresh-left.vue"]]),Wne={name:"RefreshRight"},jne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},qne=k("path",{fill:"currentColor",d:"M784.512 230.272v-50.56a32 32 0 1 1 64 0v149.056a32 32 0 0 1-32 32H667.52a32 32 0 1 1 0-64h92.992A320 320 0 1 0 524.8 833.152a320 320 0 0 0 320-320h64a384 384 0 0 1-384 384 384 384 0 0 1-384-384 384 384 0 0 1 643.712-282.88z"},null,-1),Gne=[qne];function Yne(e,t,n,r,o,a){return E(),M("svg",jne,Gne)}var by=re(Wne,[["render",Yne],["__file","refresh-right.vue"]]),Xne={name:"Refresh"},Zne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jne=k("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"},null,-1),Qne=[Jne];function ere(e,t,n,r,o,a){return E(),M("svg",Zne,Qne)}var tre=re(Xne,[["render",ere],["__file","refresh.vue"]]),nre={name:"Refrigerator"},rre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ore=k("path",{fill:"currentColor",d:"M256 448h512V160a32 32 0 0 0-32-32H288a32 32 0 0 0-32 32v288zm0 64v352a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V512H256zm32-448h448a96 96 0 0 1 96 96v704a96 96 0 0 1-96 96H288a96 96 0 0 1-96-96V160a96 96 0 0 1 96-96zm32 224h64v96h-64v-96zm0 288h64v96h-64v-96z"},null,-1),are=[ore];function sre(e,t,n,r,o,a){return E(),M("svg",rre,are)}var lre=re(nre,[["render",sre],["__file","refrigerator.vue"]]),ire={name:"RemoveFilled"},ure={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},cre=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zM288 512a38.4 38.4 0 0 0 38.4 38.4h371.2a38.4 38.4 0 0 0 0-76.8H326.4A38.4 38.4 0 0 0 288 512z"},null,-1),dre=[cre];function fre(e,t,n,r,o,a){return E(),M("svg",ure,dre)}var pre=re(ire,[["render",fre],["__file","remove-filled.vue"]]),hre={name:"Remove"},vre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mre=k("path",{fill:"currentColor",d:"M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),gre=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),_re=[mre,gre];function bre(e,t,n,r,o,a){return E(),M("svg",vre,_re)}var yre=re(hre,[["render",bre],["__file","remove.vue"]]),wre={name:"Right"},Ere={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Cre=k("path",{fill:"currentColor",d:"M754.752 480H160a32 32 0 1 0 0 64h594.752L521.344 777.344a32 32 0 0 0 45.312 45.312l288-288a32 32 0 0 0 0-45.312l-288-288a32 32 0 1 0-45.312 45.312L754.752 480z"},null,-1),Sre=[Cre];function kre(e,t,n,r,o,a){return E(),M("svg",Ere,Sre)}var $re=re(wre,[["render",kre],["__file","right.vue"]]),Tre={name:"ScaleToOriginal"},Ore={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Mre=k("path",{fill:"currentColor",d:"M813.176 180.706a60.235 60.235 0 0 1 60.236 60.235v481.883a60.235 60.235 0 0 1-60.236 60.235H210.824a60.235 60.235 0 0 1-60.236-60.235V240.94a60.235 60.235 0 0 1 60.236-60.235h602.352zm0-60.235H210.824A120.47 120.47 0 0 0 90.353 240.94v481.883a120.47 120.47 0 0 0 120.47 120.47h602.353a120.47 120.47 0 0 0 120.471-120.47V240.94a120.47 120.47 0 0 0-120.47-120.47zm-120.47 180.705a30.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118zm-361.412 0a30.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118zM512 361.412a30.118 30.118 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.118 30.118 0 0 0 512 361.412zM512 512a30.118 30.118 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.118 30.118 0 0 0 512 512z"},null,-1),Nre=[Mre];function Are(e,t,n,r,o,a){return E(),M("svg",Ore,Nre)}var yy=re(Tre,[["render",Are],["__file","scale-to-original.vue"]]),Rre={name:"School"},xre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ire=k("path",{fill:"currentColor",d:"M224 128v704h576V128H224zm-32-64h640a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),Lre=k("path",{fill:"currentColor",d:"M64 832h896v64H64zm256-640h128v96H320z"},null,-1),Pre=k("path",{fill:"currentColor",d:"M384 832h256v-64a128 128 0 1 0-256 0v64zm128-256a192 192 0 0 1 192 192v128H320V768a192 192 0 0 1 192-192zM320 384h128v96H320zm256-192h128v96H576zm0 192h128v96H576z"},null,-1),Dre=[Ire,Lre,Pre];function zre(e,t,n,r,o,a){return E(),M("svg",xre,Dre)}var Vre=re(Rre,[["render",zre],["__file","school.vue"]]),Bre={name:"Scissor"},Fre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Hre=k("path",{fill:"currentColor",d:"m512.064 578.368-106.88 152.768a160 160 0 1 1-23.36-78.208L472.96 522.56 196.864 128.256a32 32 0 1 1 52.48-36.736l393.024 561.344a160 160 0 1 1-23.36 78.208l-106.88-152.704zm54.4-189.248 208.384-297.6a32 32 0 0 1 52.48 36.736l-221.76 316.672-39.04-55.808zm-376.32 425.856a96 96 0 1 0 110.144-157.248 96 96 0 0 0-110.08 157.248zm643.84 0a96 96 0 1 0-110.08-157.248 96 96 0 0 0 110.08 157.248z"},null,-1),Ure=[Hre];function Kre(e,t,n,r,o,a){return E(),M("svg",Fre,Ure)}var Wre=re(Bre,[["render",Kre],["__file","scissor.vue"]]),jre={name:"Search"},qre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Gre=k("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704z"},null,-1),Yre=[Gre];function Xre(e,t,n,r,o,a){return E(),M("svg",qre,Yre)}var wy=re(jre,[["render",Xre],["__file","search.vue"]]),Zre={name:"Select"},Jre={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Qre=k("path",{fill:"currentColor",d:"M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04-316.8-316.8a64 64 0 0 1 0-90.496z"},null,-1),eoe=[Qre];function toe(e,t,n,r,o,a){return E(),M("svg",Jre,eoe)}var noe=re(Zre,[["render",toe],["__file","select.vue"]]),roe={name:"Sell"},ooe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},aoe=k("path",{fill:"currentColor",d:"M704 288h131.072a32 32 0 0 1 31.808 28.8L886.4 512h-64.384l-16-160H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96H217.92l-51.2 512H512v64H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4zm-64 0v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4h256zm201.408 483.84L768 698.496V928a32 32 0 1 1-64 0V698.496l-73.344 73.344a32 32 0 1 1-45.248-45.248l128-128a32 32 0 0 1 45.248 0l128 128a32 32 0 1 1-45.248 45.248z"},null,-1),soe=[aoe];function loe(e,t,n,r,o,a){return E(),M("svg",ooe,soe)}var ioe=re(roe,[["render",loe],["__file","sell.vue"]]),uoe={name:"SemiSelect"},coe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},doe=k("path",{fill:"currentColor",d:"M128 448h768q64 0 64 64t-64 64H128q-64 0-64-64t64-64z"},null,-1),foe=[doe];function poe(e,t,n,r,o,a){return E(),M("svg",coe,foe)}var hoe=re(uoe,[["render",poe],["__file","semi-select.vue"]]),voe={name:"Service"},moe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},goe=k("path",{fill:"currentColor",d:"M864 409.6a192 192 0 0 1-37.888 349.44A256.064 256.064 0 0 1 576 960h-96a32 32 0 1 1 0-64h96a192.064 192.064 0 0 0 181.12-128H736a32 32 0 0 1-32-32V416a32 32 0 0 1 32-32h32c10.368 0 20.544.832 30.528 2.432a288 288 0 0 0-573.056 0A193.235 193.235 0 0 1 256 384h32a32 32 0 0 1 32 32v320a32 32 0 0 1-32 32h-32a192 192 0 0 1-96-358.4 352 352 0 0 1 704 0zM256 448a128 128 0 1 0 0 256V448zm640 128a128 128 0 0 0-128-128v256a128 128 0 0 0 128-128z"},null,-1),_oe=[goe];function boe(e,t,n,r,o,a){return E(),M("svg",moe,_oe)}var yoe=re(voe,[["render",boe],["__file","service.vue"]]),woe={name:"SetUp"},Eoe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Coe=k("path",{fill:"currentColor",d:"M224 160a64 64 0 0 0-64 64v576a64 64 0 0 0 64 64h576a64 64 0 0 0 64-64V224a64 64 0 0 0-64-64H224zm0-64h576a128 128 0 0 1 128 128v576a128 128 0 0 1-128 128H224A128 128 0 0 1 96 800V224A128 128 0 0 1 224 96z"},null,-1),Soe=k("path",{fill:"currentColor",d:"M384 416a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),koe=k("path",{fill:"currentColor",d:"M480 320h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32zm160 416a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),$oe=k("path",{fill:"currentColor",d:"M288 640h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),Toe=[Coe,Soe,koe,$oe];function Ooe(e,t,n,r,o,a){return E(),M("svg",Eoe,Toe)}var Moe=re(woe,[["render",Ooe],["__file","set-up.vue"]]),Noe={name:"Setting"},Aoe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Roe=k("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357.12 357.12 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a351.616 351.616 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357.12 357.12 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294.113 294.113 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293.12 293.12 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294.113 294.113 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288.282 288.282 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293.12 293.12 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a287.616 287.616 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384zm0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256z"},null,-1),xoe=[Roe];function Ioe(e,t,n,r,o,a){return E(),M("svg",Aoe,xoe)}var Loe=re(Noe,[["render",Ioe],["__file","setting.vue"]]),Poe={name:"Share"},Doe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},zoe=k("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"},null,-1),Voe=[zoe];function Boe(e,t,n,r,o,a){return E(),M("svg",Doe,Voe)}var Foe=re(Poe,[["render",Boe],["__file","share.vue"]]),Hoe={name:"Ship"},Uoe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Koe=k("path",{fill:"currentColor",d:"M512 386.88V448h405.568a32 32 0 0 1 30.72 40.768l-76.48 267.968A192 192 0 0 1 687.168 896H336.832a192 192 0 0 1-184.64-139.264L75.648 488.768A32 32 0 0 1 106.368 448H448V117.888a32 32 0 0 1 47.36-28.096l13.888 7.616L512 96v2.88l231.68 126.4a32 32 0 0 1-2.048 57.216L512 386.88zm0-70.272 144.768-65.792L512 171.84v144.768zM512 512H148.864l18.24 64H856.96l18.24-64H512zM185.408 640l28.352 99.2A128 128 0 0 0 336.832 832h350.336a128 128 0 0 0 123.072-92.8l28.352-99.2H185.408z"},null,-1),Woe=[Koe];function joe(e,t,n,r,o,a){return E(),M("svg",Uoe,Woe)}var qoe=re(Hoe,[["render",joe],["__file","ship.vue"]]),Goe={name:"Shop"},Yoe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Xoe=k("path",{fill:"currentColor",d:"M704 704h64v192H256V704h64v64h384v-64zm188.544-152.192C894.528 559.616 896 567.616 896 576a96 96 0 1 1-192 0 96 96 0 1 1-192 0 96 96 0 1 1-192 0 96 96 0 1 1-192 0c0-8.384 1.408-16.384 3.392-24.192L192 128h640l60.544 423.808z"},null,-1),Zoe=[Xoe];function Joe(e,t,n,r,o,a){return E(),M("svg",Yoe,Zoe)}var Qoe=re(Goe,[["render",Joe],["__file","shop.vue"]]),eae={name:"ShoppingBag"},tae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nae=k("path",{fill:"currentColor",d:"M704 320v96a32 32 0 0 1-32 32h-32V320H384v128h-32a32 32 0 0 1-32-32v-96H192v576h640V320H704zm-384-64a192 192 0 1 1 384 0h160a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32h160zm64 0h256a128 128 0 1 0-256 0z"},null,-1),rae=k("path",{fill:"currentColor",d:"M192 704h640v64H192z"},null,-1),oae=[nae,rae];function aae(e,t,n,r,o,a){return E(),M("svg",tae,oae)}var sae=re(eae,[["render",aae],["__file","shopping-bag.vue"]]),lae={name:"ShoppingCartFull"},iae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uae=k("path",{fill:"currentColor",d:"M432 928a48 48 0 1 1 0-96 48 48 0 0 1 0 96zm320 0a48 48 0 1 1 0-96 48 48 0 0 1 0 96zM96 128a32 32 0 0 1 0-64h160a32 32 0 0 1 31.36 25.728L320.64 256H928a32 32 0 0 1 31.296 38.72l-96 448A32 32 0 0 1 832 768H384a32 32 0 0 1-31.36-25.728L229.76 128H96zm314.24 576h395.904l82.304-384H333.44l76.8 384z"},null,-1),cae=k("path",{fill:"currentColor",d:"M699.648 256 608 145.984 516.352 256h183.296zm-140.8-151.04a64 64 0 0 1 98.304 0L836.352 320H379.648l179.2-215.04z"},null,-1),dae=[uae,cae];function fae(e,t,n,r,o,a){return E(),M("svg",iae,dae)}var pae=re(lae,[["render",fae],["__file","shopping-cart-full.vue"]]),hae={name:"ShoppingCart"},vae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mae=k("path",{fill:"currentColor",d:"M432 928a48 48 0 1 1 0-96 48 48 0 0 1 0 96zm320 0a48 48 0 1 1 0-96 48 48 0 0 1 0 96zM96 128a32 32 0 0 1 0-64h160a32 32 0 0 1 31.36 25.728L320.64 256H928a32 32 0 0 1 31.296 38.72l-96 448A32 32 0 0 1 832 768H384a32 32 0 0 1-31.36-25.728L229.76 128H96zm314.24 576h395.904l82.304-384H333.44l76.8 384z"},null,-1),gae=[mae];function _ae(e,t,n,r,o,a){return E(),M("svg",vae,gae)}var bae=re(hae,[["render",_ae],["__file","shopping-cart.vue"]]),yae={name:"ShoppingTrolley"},wae={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Eae=k("path",{d:"M368 833c-13.3 0-24.5 4.5-33.5 13.5S321 866.7 321 880s4.5 24.5 13.5 33.5 20.2 13.8 33.5 14.5c13.3-.7 24.5-5.5 33.5-14.5S415 893.3 415 880s-4.5-24.5-13.5-33.5S381.3 833 368 833zm439-193c7.4 0 13.8-2.2 19.5-6.5S836 623.3 838 616l112-448c2-10-.2-19.2-6.5-27.5S929 128 919 128H96c-9.3 0-17 3-23 9s-9 13.7-9 23 3 17 9 23 13.7 9 23 9h96v576h672c9.3 0 17-3 23-9s9-13.7 9-23-3-17-9-23-13.7-9-23-9H256v-64h551zM256 192h622l-96 384H256V192zm432 641c-13.3 0-24.5 4.5-33.5 13.5S641 866.7 641 880s4.5 24.5 13.5 33.5 20.2 13.8 33.5 14.5c13.3-.7 24.5-5.5 33.5-14.5S735 893.3 735 880s-4.5-24.5-13.5-33.5S701.3 833 688 833z",fill:"currentColor"},null,-1),Cae=[Eae];function Sae(e,t,n,r,o,a){return E(),M("svg",wae,Cae)}var kae=re(yae,[["render",Sae],["__file","shopping-trolley.vue"]]),$ae={name:"Smoking"},Tae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Oae=k("path",{fill:"currentColor",d:"M256 576v128h640V576H256zm-32-64h704a32 32 0 0 1 32 32v192a32 32 0 0 1-32 32H224a32 32 0 0 1-32-32V544a32 32 0 0 1 32-32z"},null,-1),Mae=k("path",{fill:"currentColor",d:"M704 576h64v128h-64zM256 64h64v320h-64zM128 192h64v192h-64zM64 512h64v256H64z"},null,-1),Nae=[Oae,Mae];function Aae(e,t,n,r,o,a){return E(),M("svg",Tae,Nae)}var Rae=re($ae,[["render",Aae],["__file","smoking.vue"]]),xae={name:"Soccer"},Iae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Lae=k("path",{fill:"currentColor",d:"M418.496 871.04 152.256 604.8c-16.512 94.016-2.368 178.624 42.944 224 44.928 44.928 129.344 58.752 223.296 42.24zm72.32-18.176a573.056 573.056 0 0 0 224.832-137.216 573.12 573.12 0 0 0 137.216-224.832L533.888 171.84a578.56 578.56 0 0 0-227.52 138.496A567.68 567.68 0 0 0 170.432 532.48l320.384 320.384zM871.04 418.496c16.512-93.952 2.688-178.368-42.24-223.296-44.544-44.544-128.704-58.048-222.592-41.536L871.04 418.496zM149.952 874.048c-112.96-112.96-88.832-408.96 111.168-608.96C461.056 65.152 760.96 36.928 874.048 149.952c113.024 113.024 86.784 411.008-113.152 610.944-199.936 199.936-497.92 226.112-610.944 113.152zm452.544-497.792 22.656-22.656a32 32 0 0 1 45.248 45.248l-22.656 22.656 45.248 45.248A32 32 0 1 1 647.744 512l-45.248-45.248L557.248 512l45.248 45.248a32 32 0 1 1-45.248 45.248L512 557.248l-45.248 45.248L512 647.744a32 32 0 1 1-45.248 45.248l-45.248-45.248-22.656 22.656a32 32 0 1 1-45.248-45.248l22.656-22.656-45.248-45.248A32 32 0 1 1 376.256 512l45.248 45.248L466.752 512l-45.248-45.248a32 32 0 1 1 45.248-45.248L512 466.752l45.248-45.248L512 376.256a32 32 0 0 1 45.248-45.248l45.248 45.248z"},null,-1),Pae=[Lae];function Dae(e,t,n,r,o,a){return E(),M("svg",Iae,Pae)}var zae=re(xae,[["render",Dae],["__file","soccer.vue"]]),Vae={name:"SoldOut"},Bae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Fae=k("path",{fill:"currentColor",d:"M704 288h131.072a32 32 0 0 1 31.808 28.8L886.4 512h-64.384l-16-160H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96H217.92l-51.2 512H512v64H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4zm-64 0v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4h256zm201.408 476.16a32 32 0 1 1 45.248 45.184l-128 128a32 32 0 0 1-45.248 0l-128-128a32 32 0 1 1 45.248-45.248L704 837.504V608a32 32 0 1 1 64 0v229.504l73.408-73.408z"},null,-1),Hae=[Fae];function Uae(e,t,n,r,o,a){return E(),M("svg",Bae,Hae)}var Kae=re(Vae,[["render",Uae],["__file","sold-out.vue"]]),Wae={name:"SortDown"},jae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},qae=k("path",{fill:"currentColor",d:"M576 96v709.568L333.312 562.816A32 32 0 1 0 288 608l297.408 297.344A32 32 0 0 0 640 882.688V96a32 32 0 0 0-64 0z"},null,-1),Gae=[qae];function Yae(e,t,n,r,o,a){return E(),M("svg",jae,Gae)}var Ey=re(Wae,[["render",Yae],["__file","sort-down.vue"]]),Xae={name:"SortUp"},Zae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jae=k("path",{fill:"currentColor",d:"M384 141.248V928a32 32 0 1 0 64 0V218.56l242.688 242.688A32 32 0 1 0 736 416L438.592 118.656A32 32 0 0 0 384 141.248z"},null,-1),Qae=[Jae];function ese(e,t,n,r,o,a){return E(),M("svg",Zae,Qae)}var Cy=re(Xae,[["render",ese],["__file","sort-up.vue"]]),tse={name:"Sort"},nse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rse=k("path",{fill:"currentColor",d:"M384 96a32 32 0 0 1 64 0v786.752a32 32 0 0 1-54.592 22.656L95.936 608a32 32 0 0 1 0-45.312h.128a32 32 0 0 1 45.184 0L384 805.632V96zm192 45.248a32 32 0 0 1 54.592-22.592L928.064 416a32 32 0 0 1 0 45.312h-.128a32 32 0 0 1-45.184 0L640 218.496V928a32 32 0 1 1-64 0V141.248z"},null,-1),ose=[rse];function ase(e,t,n,r,o,a){return E(),M("svg",nse,ose)}var sse=re(tse,[["render",ase],["__file","sort.vue"]]),lse={name:"Stamp"},ise={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},use=k("path",{fill:"currentColor",d:"M624 475.968V640h144a128 128 0 0 1 128 128H128a128 128 0 0 1 128-128h144V475.968a192 192 0 1 1 224 0zM128 896v-64h768v64H128z"},null,-1),cse=[use];function dse(e,t,n,r,o,a){return E(),M("svg",ise,cse)}var fse=re(lse,[["render",dse],["__file","stamp.vue"]]),pse={name:"StarFilled"},hse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},vse=k("path",{fill:"currentColor",d:"M283.84 867.84 512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"},null,-1),mse=[vse];function gse(e,t,n,r,o,a){return E(),M("svg",hse,mse)}var Kl=re(pse,[["render",gse],["__file","star-filled.vue"]]),_se={name:"Star"},bse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},yse=k("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"},null,-1),wse=[yse];function Ese(e,t,n,r,o,a){return E(),M("svg",bse,wse)}var Sy=re(_se,[["render",Ese],["__file","star.vue"]]),Cse={name:"Stopwatch"},Sse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},kse=k("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),$se=k("path",{fill:"currentColor",d:"M672 234.88c-39.168 174.464-80 298.624-122.688 372.48-64 110.848-202.624 30.848-138.624-80C453.376 453.44 540.48 355.968 672 234.816z"},null,-1),Tse=[kse,$se];function Ose(e,t,n,r,o,a){return E(),M("svg",Sse,Tse)}var Mse=re(Cse,[["render",Ose],["__file","stopwatch.vue"]]),Nse={name:"SuccessFilled"},Ase={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Rse=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null,-1),xse=[Rse];function Ise(e,t,n,r,o,a){return E(),M("svg",Ase,xse)}var Xh=re(Nse,[["render",Ise],["__file","success-filled.vue"]]),Lse={name:"Sugar"},Pse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Dse=k("path",{fill:"currentColor",d:"m801.728 349.184 4.48 4.48a128 128 0 0 1 0 180.992L534.656 806.144a128 128 0 0 1-181.056 0l-4.48-4.48-19.392 109.696a64 64 0 0 1-108.288 34.176L78.464 802.56a64 64 0 0 1 34.176-108.288l109.76-19.328-4.544-4.544a128 128 0 0 1 0-181.056l271.488-271.488a128 128 0 0 1 181.056 0l4.48 4.48 19.392-109.504a64 64 0 0 1 108.352-34.048l142.592 143.04a64 64 0 0 1-34.24 108.16l-109.248 19.2zm-548.8 198.72h447.168v2.24l60.8-60.8a63.808 63.808 0 0 0 18.752-44.416h-426.88l-89.664 89.728a64.064 64.064 0 0 0-10.24 13.248zm0 64c2.752 4.736 6.144 9.152 10.176 13.248l135.744 135.744a64 64 0 0 0 90.496 0L638.4 611.904H252.928zm490.048-230.976L625.152 263.104a64 64 0 0 0-90.496 0L416.768 380.928h326.208zM123.712 757.312l142.976 142.976 24.32-137.6a25.6 25.6 0 0 0-29.696-29.632l-137.6 24.256zm633.6-633.344-24.32 137.472a25.6 25.6 0 0 0 29.632 29.632l137.28-24.064-142.656-143.04z"},null,-1),zse=[Dse];function Vse(e,t,n,r,o,a){return E(),M("svg",Pse,zse)}var Bse=re(Lse,[["render",Vse],["__file","sugar.vue"]]),Fse={name:"SuitcaseLine"},Hse={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Use=k("path",{d:"M922.5 229.5c-24.32-24.34-54.49-36.84-90.5-37.5H704v-64c-.68-17.98-7.02-32.98-19.01-44.99S658.01 64.66 640 64H384c-17.98.68-32.98 7.02-44.99 19.01S320.66 110 320 128v64H192c-35.99.68-66.16 13.18-90.5 37.5C77.16 253.82 64.66 283.99 64 320v448c.68 35.99 13.18 66.16 37.5 90.5s54.49 36.84 90.5 37.5h640c35.99-.68 66.16-13.18 90.5-37.5s36.84-54.49 37.5-90.5V320c-.68-35.99-13.18-66.16-37.5-90.5zM384 128h256v64H384v-64zM256 832h-64c-17.98-.68-32.98-7.02-44.99-19.01S128.66 786.01 128 768V448h128v384zm448 0H320V448h384v384zm192-64c-.68 17.98-7.02 32.98-19.01 44.99S850.01 831.34 832 832h-64V448h128v320zm0-384H128v-64c.69-17.98 7.02-32.98 19.01-44.99S173.99 256.66 192 256h640c17.98.69 32.98 7.02 44.99 19.01S895.34 301.99 896 320v64z",fill:"currentColor"},null,-1),Kse=[Use];function Wse(e,t,n,r,o,a){return E(),M("svg",Hse,Kse)}var jse=re(Fse,[["render",Wse],["__file","suitcase-line.vue"]]),qse={name:"Suitcase"},Gse={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Yse=k("path",{fill:"currentColor",d:"M128 384h768v-64a64 64 0 0 0-64-64H192a64 64 0 0 0-64 64v64zm0 64v320a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V448H128zm64-256h640a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H192A128 128 0 0 1 64 768V320a128 128 0 0 1 128-128z"},null,-1),Xse=k("path",{fill:"currentColor",d:"M384 128v64h256v-64H384zm0-64h256a64 64 0 0 1 64 64v64a64 64 0 0 1-64 64H384a64 64 0 0 1-64-64v-64a64 64 0 0 1 64-64z"},null,-1),Zse=[Yse,Xse];function Jse(e,t,n,r,o,a){return E(),M("svg",Gse,Zse)}var Qse=re(qse,[["render",Jse],["__file","suitcase.vue"]]),ele={name:"Sunny"},tle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},nle=k("path",{fill:"currentColor",d:"M512 704a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512zm0-704a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32zm0 768a32 32 0 0 1 32 32v64a32 32 0 1 1-64 0v-64a32 32 0 0 1 32-32zM195.2 195.2a32 32 0 0 1 45.248 0l45.248 45.248a32 32 0 1 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248zm543.104 543.104a32 32 0 0 1 45.248 0l45.248 45.248a32 32 0 0 1-45.248 45.248l-45.248-45.248a32 32 0 0 1 0-45.248zM64 512a32 32 0 0 1 32-32h64a32 32 0 0 1 0 64H96a32 32 0 0 1-32-32zm768 0a32 32 0 0 1 32-32h64a32 32 0 1 1 0 64h-64a32 32 0 0 1-32-32zM195.2 828.8a32 32 0 0 1 0-45.248l45.248-45.248a32 32 0 0 1 45.248 45.248L240.448 828.8a32 32 0 0 1-45.248 0zm543.104-543.104a32 32 0 0 1 0-45.248l45.248-45.248a32 32 0 0 1 45.248 45.248l-45.248 45.248a32 32 0 0 1-45.248 0z"},null,-1),rle=[nle];function ole(e,t,n,r,o,a){return E(),M("svg",tle,rle)}var ale=re(ele,[["render",ole],["__file","sunny.vue"]]),sle={name:"Sunrise"},lle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ile=k("path",{fill:"currentColor",d:"M32 768h960a32 32 0 1 1 0 64H32a32 32 0 1 1 0-64zm129.408-96a352 352 0 0 1 701.184 0h-64.32a288 288 0 0 0-572.544 0h-64.32zM512 128a32 32 0 0 1 32 32v96a32 32 0 0 1-64 0v-96a32 32 0 0 1 32-32zm407.296 168.704a32 32 0 0 1 0 45.248l-67.84 67.84a32 32 0 1 1-45.248-45.248l67.84-67.84a32 32 0 0 1 45.248 0zm-814.592 0a32 32 0 0 1 45.248 0l67.84 67.84a32 32 0 1 1-45.248 45.248l-67.84-67.84a32 32 0 0 1 0-45.248z"},null,-1),ule=[ile];function cle(e,t,n,r,o,a){return E(),M("svg",lle,ule)}var dle=re(sle,[["render",cle],["__file","sunrise.vue"]]),fle={name:"Sunset"},ple={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},hle=k("path",{fill:"currentColor",d:"M82.56 640a448 448 0 1 1 858.88 0h-67.2a384 384 0 1 0-724.288 0H82.56zM32 704h960q32 0 32 32t-32 32H32q-32 0-32-32t32-32zm256 128h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),vle=[hle];function mle(e,t,n,r,o,a){return E(),M("svg",ple,vle)}var gle=re(fle,[["render",mle],["__file","sunset.vue"]]),_le={name:"SwitchButton"},ble={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},yle=k("path",{fill:"currentColor",d:"M352 159.872V230.4a352 352 0 1 0 320 0v-70.528A416.128 416.128 0 0 1 512 960a416 416 0 0 1-160-800.128z"},null,-1),wle=k("path",{fill:"currentColor",d:"M512 64q32 0 32 32v320q0 32-32 32t-32-32V96q0-32 32-32z"},null,-1),Ele=[yle,wle];function Cle(e,t,n,r,o,a){return E(),M("svg",ble,Ele)}var Sle=re(_le,[["render",Cle],["__file","switch-button.vue"]]),kle={name:"SwitchFilled"},$le={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Tle=k("path",{d:"M247.47 358.4v.04c.07 19.17 7.72 37.53 21.27 51.09s31.92 21.2 51.09 21.27c39.86 0 72.41-32.6 72.41-72.4s-32.6-72.36-72.41-72.36-72.36 32.55-72.36 72.36z",fill:"currentColor"},null,-1),Ole=k("path",{d:"M492.38 128H324.7c-52.16 0-102.19 20.73-139.08 57.61a196.655 196.655 0 0 0-57.61 139.08V698.7c-.01 25.84 5.08 51.42 14.96 75.29s24.36 45.56 42.63 63.83 39.95 32.76 63.82 42.65a196.67 196.67 0 0 0 75.28 14.98h167.68c3.03 0 5.46-2.43 5.46-5.42V133.42c.6-2.99-1.83-5.42-5.46-5.42zm-56.11 705.88H324.7c-17.76.13-35.36-3.33-51.75-10.18s-31.22-16.94-43.61-29.67c-25.3-25.35-39.81-59.1-39.81-95.32V324.69c-.13-17.75 3.33-35.35 10.17-51.74a131.695 131.695 0 0 1 29.64-43.62c25.39-25.3 59.14-39.81 95.36-39.81h111.57v644.36zm402.12-647.67a196.655 196.655 0 0 0-139.08-57.61H580.48c-3.03 0-4.82 2.43-4.82 4.82v757.16c-.6 2.99 1.79 5.42 5.42 5.42h118.23a196.69 196.69 0 0 0 139.08-57.61A196.655 196.655 0 0 0 896 699.31V325.29a196.69 196.69 0 0 0-57.61-139.08zm-111.3 441.92c-42.83 0-77.82-34.99-77.82-77.82s34.98-77.82 77.82-77.82c42.83 0 77.82 34.99 77.82 77.82s-34.99 77.82-77.82 77.82z",fill:"currentColor"},null,-1),Mle=[Tle,Ole];function Nle(e,t,n,r,o,a){return E(),M("svg",$le,Mle)}var Ale=re(kle,[["render",Nle],["__file","switch-filled.vue"]]),Rle={name:"Switch"},xle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ile=k("path",{fill:"currentColor",d:"M118.656 438.656a32 32 0 0 1 0-45.248L416 96l4.48-3.776A32 32 0 0 1 461.248 96l3.712 4.48a32.064 32.064 0 0 1-3.712 40.832L218.56 384H928a32 32 0 1 1 0 64H141.248a32 32 0 0 1-22.592-9.344zM64 608a32 32 0 0 1 32-32h786.752a32 32 0 0 1 22.656 54.592L608 928l-4.48 3.776a32.064 32.064 0 0 1-40.832-49.024L805.632 640H96a32 32 0 0 1-32-32z"},null,-1),Lle=[Ile];function Ple(e,t,n,r,o,a){return E(),M("svg",xle,Lle)}var Dle=re(Rle,[["render",Ple],["__file","switch.vue"]]),zle={name:"TakeawayBox"},Vle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ble=k("path",{fill:"currentColor",d:"M832 384H192v448h640V384zM96 320h832V128H96v192zm800 64v480a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V384H64a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h896a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32h-64zM416 512h192a32 32 0 0 1 0 64H416a32 32 0 0 1 0-64z"},null,-1),Fle=[Ble];function Hle(e,t,n,r,o,a){return E(),M("svg",Vle,Fle)}var Ule=re(zle,[["render",Hle],["__file","takeaway-box.vue"]]),Kle={name:"Ticket"},Wle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},jle=k("path",{fill:"currentColor",d:"M640 832H64V640a128 128 0 1 0 0-256V192h576v160h64V192h256v192a128 128 0 1 0 0 256v192H704V672h-64v160zm0-416v192h64V416h-64z"},null,-1),qle=[jle];function Gle(e,t,n,r,o,a){return E(),M("svg",Wle,qle)}var Yle=re(Kle,[["render",Gle],["__file","ticket.vue"]]),Xle={name:"Tickets"},Zle={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Jle=k("path",{fill:"currentColor",d:"M192 128v768h640V128H192zm-32-64h704a32 32 0 0 1 32 32v832a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm160 448h384v64H320v-64zm0-192h192v64H320v-64zm0 384h384v64H320v-64z"},null,-1),Qle=[Jle];function eie(e,t,n,r,o,a){return E(),M("svg",Zle,Qle)}var tie=re(Xle,[["render",eie],["__file","tickets.vue"]]),nie={name:"Timer"},rie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oie=k("path",{fill:"currentColor",d:"M512 896a320 320 0 1 0 0-640 320 320 0 0 0 0 640zm0 64a384 384 0 1 1 0-768 384 384 0 0 1 0 768z"},null,-1),aie=k("path",{fill:"currentColor",d:"M512 320a32 32 0 0 1 32 32l-.512 224a32 32 0 1 1-64 0L480 352a32 32 0 0 1 32-32z"},null,-1),sie=k("path",{fill:"currentColor",d:"M448 576a64 64 0 1 0 128 0 64 64 0 1 0-128 0zm96-448v128h-64V128h-96a32 32 0 0 1 0-64h256a32 32 0 1 1 0 64h-96z"},null,-1),lie=[oie,aie,sie];function iie(e,t,n,r,o,a){return E(),M("svg",rie,lie)}var uie=re(nie,[["render",iie],["__file","timer.vue"]]),cie={name:"ToiletPaper"},die={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},fie=k("path",{fill:"currentColor",d:"M595.2 128H320a192 192 0 0 0-192 192v576h384V352c0-90.496 32.448-171.2 83.2-224zM736 64c123.712 0 224 128.96 224 288S859.712 640 736 640H576v320H64V320A256 256 0 0 1 320 64h416zM576 352v224h160c84.352 0 160-97.28 160-224s-75.648-224-160-224-160 97.28-160 224z"},null,-1),pie=k("path",{fill:"currentColor",d:"M736 448c-35.328 0-64-43.008-64-96s28.672-96 64-96 64 43.008 64 96-28.672 96-64 96z"},null,-1),hie=[fie,pie];function vie(e,t,n,r,o,a){return E(),M("svg",die,hie)}var mie=re(cie,[["render",vie],["__file","toilet-paper.vue"]]),gie={name:"Tools"},_ie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bie=k("path",{fill:"currentColor",d:"M764.416 254.72a351.68 351.68 0 0 1 86.336 149.184H960v192.064H850.752a351.68 351.68 0 0 1-86.336 149.312l54.72 94.72-166.272 96-54.592-94.72a352.64 352.64 0 0 1-172.48 0L371.136 936l-166.272-96 54.72-94.72a351.68 351.68 0 0 1-86.336-149.312H64v-192h109.248a351.68 351.68 0 0 1 86.336-149.312L204.8 160l166.208-96h.192l54.656 94.592a352.64 352.64 0 0 1 172.48 0L652.8 64h.128L819.2 160l-54.72 94.72zM704 499.968a192 192 0 1 0-384 0 192 192 0 0 0 384 0z"},null,-1),yie=[bie];function wie(e,t,n,r,o,a){return E(),M("svg",_ie,yie)}var Eie=re(gie,[["render",wie],["__file","tools.vue"]]),Cie={name:"TopLeft"},Sie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},kie=k("path",{fill:"currentColor",d:"M256 256h416a32 32 0 1 0 0-64H224a32 32 0 0 0-32 32v448a32 32 0 0 0 64 0V256z"},null,-1),$ie=k("path",{fill:"currentColor",d:"M246.656 201.344a32 32 0 0 0-45.312 45.312l544 544a32 32 0 0 0 45.312-45.312l-544-544z"},null,-1),Tie=[kie,$ie];function Oie(e,t,n,r,o,a){return E(),M("svg",Sie,Tie)}var Mie=re(Cie,[["render",Oie],["__file","top-left.vue"]]),Nie={name:"TopRight"},Aie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Rie=k("path",{fill:"currentColor",d:"M768 256H353.6a32 32 0 1 1 0-64H800a32 32 0 0 1 32 32v448a32 32 0 0 1-64 0V256z"},null,-1),xie=k("path",{fill:"currentColor",d:"M777.344 201.344a32 32 0 0 1 45.312 45.312l-544 544a32 32 0 0 1-45.312-45.312l544-544z"},null,-1),Iie=[Rie,xie];function Lie(e,t,n,r,o,a){return E(),M("svg",Aie,Iie)}var Pie=re(Nie,[["render",Lie],["__file","top-right.vue"]]),Die={name:"Top"},zie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Vie=k("path",{fill:"currentColor",d:"M572.235 205.282v600.365a30.118 30.118 0 1 1-60.235 0V205.282L292.382 438.633a28.913 28.913 0 0 1-42.646 0 33.43 33.43 0 0 1 0-45.236l271.058-288.045a28.913 28.913 0 0 1 42.647 0L834.5 393.397a33.43 33.43 0 0 1 0 45.176 28.913 28.913 0 0 1-42.647 0l-219.618-233.23z"},null,-1),Bie=[Vie];function Fie(e,t,n,r,o,a){return E(),M("svg",zie,Bie)}var Hie=re(Die,[["render",Fie],["__file","top.vue"]]),Uie={name:"TrendCharts"},Kie={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Wie=k("path",{fill:"currentColor",d:"M128 896V128h768v768H128zm291.712-327.296 128 102.4 180.16-201.792-47.744-42.624-139.84 156.608-128-102.4-180.16 201.792 47.744 42.624 139.84-156.608zM816 352a48 48 0 1 0-96 0 48 48 0 0 0 96 0z"},null,-1),jie=[Wie];function qie(e,t,n,r,o,a){return E(),M("svg",Kie,jie)}var Gie=re(Uie,[["render",qie],["__file","trend-charts.vue"]]),Yie={name:"TrophyBase"},Xie={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Zie=k("path",{d:"M918.4 201.6c-6.4-6.4-12.8-9.6-22.4-9.6H768V96c0-9.6-3.2-16-9.6-22.4C752 67.2 745.6 64 736 64H288c-9.6 0-16 3.2-22.4 9.6C259.2 80 256 86.4 256 96v96H128c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 16-9.6 22.4 3.2 108.8 25.6 185.6 64 224 34.4 34.4 77.56 55.65 127.65 61.99 10.91 20.44 24.78 39.25 41.95 56.41 40.86 40.86 91 65.47 150.4 71.9V768h-96c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4c6.4 6.4 12.8 9.6 22.4 9.6h256c9.6 0 16-3.2 22.4-9.6 6.4-6.4 9.6-12.8 9.6-22.4s-3.2-16-9.6-22.4c-6.4-6.4-12.8-9.6-22.4-9.6h-96V637.26c59.4-7.71 109.54-30.01 150.4-70.86 17.2-17.2 31.51-36.06 42.81-56.55 48.93-6.51 90.02-27.7 126.79-61.85 38.4-38.4 60.8-112 64-224 0-6.4-3.2-16-9.6-22.4zM256 438.4c-19.2-6.4-35.2-19.2-51.2-35.2-22.4-22.4-35.2-70.4-41.6-147.2H256v182.4zm390.4 80C608 553.6 566.4 576 512 576s-99.2-19.2-134.4-57.6C342.4 480 320 438.4 320 384V128h384v256c0 54.4-19.2 99.2-57.6 134.4zm172.8-115.2c-16 16-32 25.6-51.2 35.2V256h92.8c-6.4 76.8-19.2 124.8-41.6 147.2zM768 896H256c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4c6.4 6.4 12.8 9.6 22.4 9.6h512c9.6 0 16-3.2 22.4-9.6 6.4-6.4 9.6-12.8 9.6-22.4s-3.2-16-9.6-22.4c-6.4-6.4-12.8-9.6-22.4-9.6z",fill:"currentColor"},null,-1),Jie=[Zie];function Qie(e,t,n,r,o,a){return E(),M("svg",Xie,Jie)}var eue=re(Yie,[["render",Qie],["__file","trophy-base.vue"]]),tue={name:"Trophy"},nue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},rue=k("path",{fill:"currentColor",d:"M480 896V702.08A256.256 256.256 0 0 1 264.064 512h-32.64a96 96 0 0 1-91.968-68.416L93.632 290.88a76.8 76.8 0 0 1 73.6-98.88H256V96a32 32 0 0 1 32-32h448a32 32 0 0 1 32 32v96h88.768a76.8 76.8 0 0 1 73.6 98.88L884.48 443.52A96 96 0 0 1 792.576 512h-32.64A256.256 256.256 0 0 1 544 702.08V896h128a32 32 0 1 1 0 64H352a32 32 0 1 1 0-64h128zm224-448V128H320v320a192 192 0 1 0 384 0zm64 0h24.576a32 32 0 0 0 30.656-22.784l45.824-152.768A12.8 12.8 0 0 0 856.768 256H768v192zm-512 0V256h-88.768a12.8 12.8 0 0 0-12.288 16.448l45.824 152.768A32 32 0 0 0 231.424 448H256z"},null,-1),oue=[rue];function aue(e,t,n,r,o,a){return E(),M("svg",nue,oue)}var sue=re(tue,[["render",aue],["__file","trophy.vue"]]),lue={name:"TurnOff"},iue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},uue=k("path",{fill:"currentColor",d:"M329.956 257.138a254.862 254.862 0 0 0 0 509.724h364.088a254.862 254.862 0 0 0 0-509.724H329.956zm0-72.818h364.088a327.68 327.68 0 1 1 0 655.36H329.956a327.68 327.68 0 1 1 0-655.36z"},null,-1),cue=k("path",{fill:"currentColor",d:"M329.956 621.227a109.227 109.227 0 1 0 0-218.454 109.227 109.227 0 0 0 0 218.454zm0 72.817a182.044 182.044 0 1 1 0-364.088 182.044 182.044 0 0 1 0 364.088z"},null,-1),due=[uue,cue];function fue(e,t,n,r,o,a){return E(),M("svg",iue,due)}var pue=re(lue,[["render",fue],["__file","turn-off.vue"]]),hue={name:"Umbrella"},vue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},mue=k("path",{fill:"currentColor",d:"M320 768a32 32 0 1 1 64 0 64 64 0 0 0 128 0V512H64a448 448 0 1 1 896 0H576v256a128 128 0 1 1-256 0zm570.688-320a384.128 384.128 0 0 0-757.376 0h757.376z"},null,-1),gue=[mue];function _ue(e,t,n,r,o,a){return E(),M("svg",vue,gue)}var bue=re(hue,[["render",_ue],["__file","umbrella.vue"]]),yue={name:"Unlock"},wue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Eue=k("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"},null,-1),Cue=k("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm178.304-295.296A192.064 192.064 0 0 0 320 320v64h352l96 38.4V448H256V320a256 256 0 0 1 493.76-95.104l-59.456 23.808z"},null,-1),Sue=[Eue,Cue];function kue(e,t,n,r,o,a){return E(),M("svg",wue,Sue)}var $ue=re(yue,[["render",kue],["__file","unlock.vue"]]),Tue={name:"UploadFilled"},Oue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Mue=k("path",{fill:"currentColor",d:"M544 864V672h128L512 480 352 672h128v192H320v-1.6c-5.376.32-10.496 1.6-16 1.6A240 240 0 0 1 64 624c0-123.136 93.12-223.488 212.608-237.248A239.808 239.808 0 0 1 512 192a239.872 239.872 0 0 1 235.456 194.752c119.488 13.76 212.48 114.112 212.48 237.248a240 240 0 0 1-240 240c-5.376 0-10.56-1.28-16-1.6v1.6H544z"},null,-1),Nue=[Mue];function Aue(e,t,n,r,o,a){return E(),M("svg",Oue,Nue)}var Rue=re(Tue,[["render",Aue],["__file","upload-filled.vue"]]),xue={name:"Upload"},Iue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Lue=k("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248L544 253.696z"},null,-1),Pue=[Lue];function Due(e,t,n,r,o,a){return E(),M("svg",Iue,Pue)}var zue=re(xue,[["render",Due],["__file","upload.vue"]]),Vue={name:"UserFilled"},Bue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Fue=k("path",{fill:"currentColor",d:"M288 320a224 224 0 1 0 448 0 224 224 0 1 0-448 0zm544 608H160a32 32 0 0 1-32-32v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 0 1-32 32z"},null,-1),Hue=[Fue];function Uue(e,t,n,r,o,a){return E(),M("svg",Bue,Hue)}var Kue=re(Vue,[["render",Uue],["__file","user-filled.vue"]]),Wue={name:"User"},jue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},que=k("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512zm320 320v-96a96 96 0 0 0-96-96H288a96 96 0 0 0-96 96v96a32 32 0 1 1-64 0v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 1 1-64 0z"},null,-1),Gue=[que];function Yue(e,t,n,r,o,a){return E(),M("svg",jue,Gue)}var Xue=re(Wue,[["render",Yue],["__file","user.vue"]]),Zue={name:"Van"},Jue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Que=k("path",{fill:"currentColor",d:"M128.896 736H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v96h164.544a32 32 0 0 1 31.616 27.136l54.144 352A32 32 0 0 1 922.688 736h-91.52a144 144 0 1 1-286.272 0H415.104a144 144 0 1 1-286.272 0zm23.36-64a143.872 143.872 0 0 1 239.488 0H568.32c17.088-25.6 42.24-45.376 71.744-55.808V256H128v416h24.256zm655.488 0h77.632l-19.648-128H704v64.896A144 144 0 0 1 807.744 672zm48.128-192-14.72-96H704v96h151.872zM688 832a80 80 0 1 0 0-160 80 80 0 0 0 0 160zm-416 0a80 80 0 1 0 0-160 80 80 0 0 0 0 160z"},null,-1),ece=[Que];function tce(e,t,n,r,o,a){return E(),M("svg",Jue,ece)}var nce=re(Zue,[["render",tce],["__file","van.vue"]]),rce={name:"VideoCameraFilled"},oce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ace=k("path",{fill:"currentColor",d:"m768 576 192-64v320l-192-64v96a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V480a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v96zM192 768v64h384v-64H192zm192-480a160 160 0 0 1 320 0 160 160 0 0 1-320 0zm64 0a96 96 0 1 0 192.064-.064A96 96 0 0 0 448 288zm-320 32a128 128 0 1 1 256.064.064A128 128 0 0 1 128 320zm64 0a64 64 0 1 0 128 0 64 64 0 0 0-128 0z"},null,-1),sce=[ace];function lce(e,t,n,r,o,a){return E(),M("svg",oce,sce)}var ice=re(rce,[["render",lce],["__file","video-camera-filled.vue"]]),uce={name:"VideoCamera"},cce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},dce=k("path",{fill:"currentColor",d:"M704 768V256H128v512h576zm64-416 192-96v512l-192-96v128a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v128zm0 71.552v176.896l128 64V359.552l-128 64zM192 320h192v64H192v-64z"},null,-1),fce=[dce];function pce(e,t,n,r,o,a){return E(),M("svg",cce,fce)}var hce=re(uce,[["render",pce],["__file","video-camera.vue"]]),vce={name:"VideoPause"},mce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},gce=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm-96-544q32 0 32 32v256q0 32-32 32t-32-32V384q0-32 32-32zm192 0q32 0 32 32v256q0 32-32 32t-32-32V384q0-32 32-32z"},null,-1),_ce=[gce];function bce(e,t,n,r,o,a){return E(),M("svg",mce,_ce)}var yce=re(vce,[["render",bce],["__file","video-pause.vue"]]),wce={name:"VideoPlay"},Ece={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Cce=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm-48-247.616L668.608 512 464 375.616v272.768zm10.624-342.656 249.472 166.336a48 48 0 0 1 0 79.872L474.624 718.272A48 48 0 0 1 400 678.336V345.6a48 48 0 0 1 74.624-39.936z"},null,-1),Sce=[Cce];function kce(e,t,n,r,o,a){return E(),M("svg",Ece,Sce)}var $ce=re(wce,[["render",kce],["__file","video-play.vue"]]),Tce={name:"View"},Oce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Mce=k("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352zm0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288zm0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448zm0 64a160.192 160.192 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160z"},null,-1),Nce=[Mce];function Ace(e,t,n,r,o,a){return E(),M("svg",Oce,Nce)}var ky=re(Tce,[["render",Ace],["__file","view.vue"]]),Rce={name:"WalletFilled"},xce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ice=k("path",{fill:"currentColor",d:"M688 512a112 112 0 1 0 0 224h208v160H128V352h768v160H688zm32 160h-32a48 48 0 0 1 0-96h32a48 48 0 0 1 0 96zm-80-544 128 160H384l256-160z"},null,-1),Lce=[Ice];function Pce(e,t,n,r,o,a){return E(),M("svg",xce,Lce)}var Dce=re(Rce,[["render",Pce],["__file","wallet-filled.vue"]]),zce={name:"Wallet"},Vce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Bce=k("path",{fill:"currentColor",d:"M640 288h-64V128H128v704h384v32a32 32 0 0 0 32 32H96a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h512a32 32 0 0 1 32 32v192z"},null,-1),Fce=k("path",{fill:"currentColor",d:"M128 320v512h768V320H128zm-32-64h832a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32z"},null,-1),Hce=k("path",{fill:"currentColor",d:"M704 640a64 64 0 1 1 0-128 64 64 0 0 1 0 128z"},null,-1),Uce=[Bce,Fce,Hce];function Kce(e,t,n,r,o,a){return E(),M("svg",Vce,Uce)}var Wce=re(zce,[["render",Kce],["__file","wallet.vue"]]),jce={name:"WarnTriangleFilled"},qce={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024",style:{"enable-background":"new 0 0 1024 1024"},"xml:space":"preserve"},Gce=k("path",{d:"M928.99 755.83 574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z",fill:"currentColor"},null,-1),Yce=[Gce];function Xce(e,t,n,r,o,a){return E(),M("svg",qce,Yce)}var Zce=re(jce,[["render",Xce],["__file","warn-triangle-filled.vue"]]),Jce={name:"WarningFilled"},Qce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ede=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"},null,-1),tde=[ede];function nde(e,t,n,r,o,a){return E(),M("svg",Qce,tde)}var hu=re(Jce,[["render",nde],["__file","warning-filled.vue"]]),rde={name:"Warning"},ode={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ade=k("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm48-176a48 48 0 1 1-96 0 48 48 0 0 1 96 0zm-48-464a32 32 0 0 1 32 32v288a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32z"},null,-1),sde=[ade];function lde(e,t,n,r,o,a){return E(),M("svg",ode,sde)}var ide=re(rde,[["render",lde],["__file","warning.vue"]]),ude={name:"Watch"},cde={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},dde=k("path",{fill:"currentColor",d:"M512 768a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),fde=k("path",{fill:"currentColor",d:"M480 352a32 32 0 0 1 32 32v160a32 32 0 0 1-64 0V384a32 32 0 0 1 32-32z"},null,-1),pde=k("path",{fill:"currentColor",d:"M480 512h128q32 0 32 32t-32 32H480q-32 0-32-32t32-32zm128-256V128H416v128h-64V64h320v192h-64zM416 768v128h192V768h64v192H352V768h64z"},null,-1),hde=[dde,fde,pde];function vde(e,t,n,r,o,a){return E(),M("svg",cde,hde)}var mde=re(ude,[["render",vde],["__file","watch.vue"]]),gde={name:"Watermelon"},_de={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},bde=k("path",{fill:"currentColor",d:"m683.072 600.32-43.648 162.816-61.824-16.512 53.248-198.528L576 493.248l-158.4 158.4-45.248-45.248 158.4-158.4-55.616-55.616-198.528 53.248-16.512-61.824 162.816-43.648L282.752 200A384 384 0 0 0 824 741.248L683.072 600.32zm231.552 141.056a448 448 0 1 1-632-632l632 632z"},null,-1),yde=[bde];function wde(e,t,n,r,o,a){return E(),M("svg",_de,yde)}var Ede=re(gde,[["render",wde],["__file","watermelon.vue"]]),Cde={name:"WindPower"},Sde={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},kde=k("path",{fill:"currentColor",d:"M160 64q32 0 32 32v832q0 32-32 32t-32-32V96q0-32 32-32zm416 354.624 128-11.584V168.96l-128-11.52v261.12zm-64 5.824V151.552L320 134.08V160h-64V64l616.704 56.064A96 96 0 0 1 960 215.68v144.64a96 96 0 0 1-87.296 95.616L256 512V224h64v217.92l192-17.472zm256-23.232 98.88-8.96A32 32 0 0 0 896 360.32V215.68a32 32 0 0 0-29.12-31.872l-98.88-8.96v226.368z"},null,-1),$de=[kde];function Tde(e,t,n,r,o,a){return E(),M("svg",Sde,$de)}var Ode=re(Cde,[["render",Tde],["__file","wind-power.vue"]]),Mde={name:"ZoomIn"},Nde={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Ade=k("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zm-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96z"},null,-1),Rde=[Ade];function xde(e,t,n,r,o,a){return E(),M("svg",Nde,Rde)}var Zh=re(Mde,[["render",xde],["__file","zoom-in.vue"]]),Ide={name:"ZoomOut"},Lde={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Pde=k("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zM352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),Dde=[Pde];function zde(e,t,n,r,o,a){return E(),M("svg",Lde,Dde)}var $y=re(Ide,[["render",zde],["__file","zoom-out.vue"]]);const Vde=Object.freeze(Object.defineProperty({__proto__:null,AddLocation:eR,Aim:lR,AlarmClock:hR,Apple:yR,ArrowDown:Vo,ArrowDownBold:$R,ArrowLeft:Ro,ArrowLeftBold:DR,ArrowRight:An,ArrowRightBold:GR,ArrowUp:pu,ArrowUpBold:ax,Avatar:mx,Back:sy,Baseball:Mx,Basketball:Lx,Bell:Yx,BellFilled:Fx,Bicycle:tI,Bottom:wI,BottomLeft:iI,BottomRight:vI,Bowl:TI,Box:LI,Briefcase:FI,Brush:QI,BrushFilled:qI,Burger:aL,Calendar:ly,Camera:EL,CameraFilled:mL,CaretBottom:OL,CaretLeft:IL,CaretRight:qh,CaretTop:iy,Cellphone:XL,ChatDotRound:rP,ChatDotSquare:cP,ChatLineRound:gP,ChatLineSquare:SP,ChatRound:NP,ChatSquare:PP,Check:Sl,Checked:qP,Cherry:QP,Chicken:aD,ChromeFilled:pD,CircleCheck:Bd,CircleCheckFilled:uy,CircleClose:Bo,CircleCloseFilled:Fd,CirclePlus:YD,CirclePlusFilled:FD,Clock:Gh,Close:wr,CloseBold:iz,Cloudy:bz,Coffee:Az,CoffeeCup:kz,Coin:Vz,ColdDrink:Wz,Collection:oV,CollectionTag:Zz,Comment:cV,Compass:gV,Connection:SV,Coordinate:AV,CopyDocument:zV,Cpu:WV,CreditCard:JV,Crop:aB,DArrowLeft:os,DArrowRight:as,DCaret:wB,DataAnalysis:TB,DataBoard:LB,DataLine:FB,Delete:cy,DeleteFilled:qB,DeleteLocation:tF,Dessert:fF,Discount:bF,Dish:AF,DishDot:kF,Document:dy,DocumentAdd:DF,DocumentChecked:UF,DocumentCopy:YF,DocumentDelete:tH,DocumentRemove:lH,Download:_H,Drizzling:SH,Edit:DH,EditPen:NH,Eleme:YH,ElemeFilled:UH,ElementPlus:tU,Expand:lU,Failed:pU,Female:wU,Files:TU,Film:IU,Filter:BU,Finished:jU,FirstAidKit:QU,Flag:aK,Fold:dK,Folder:qK,FolderAdd:gK,FolderChecked:CK,FolderDelete:MK,FolderOpened:LK,FolderRemove:FK,Food:QK,Football:sW,ForkSpoon:fW,Fries:_W,FullScreen:fy,Goblet:qW,GobletFull:MW,GobletSquare:FW,GobletSquareFull:LW,GoldMedal:ej,Goods:fj,GoodsFilled:sj,Grape:_j,Grid:Sj,Guide:Aj,Handbag:Dj,Headset:Uj,Help:tq,HelpFilled:Yj,Hide:py,Histogram:pq,HomeFilled:bq,HotWater:kq,House:Aq,IceCream:Yq,IceCreamRound:Dq,IceCreamSquare:Uq,IceDrink:tG,IceTea:lG,InfoFilled:Hd,Iphone:_G,Key:SG,KnifeFork:NG,Lightning:DG,Link:UG,List:YG,Loading:Fo,Location:wY,LocationFilled:sY,LocationInformation:hY,Lock:OY,Lollipop:IY,MagicStick:BY,Magnet:jY,Male:eX,Management:sX,MapLocation:pX,Medal:yX,Memo:OX,Menu:IX,Message:qX,MessageBox:BX,Mic:QX,Microphone:aZ,MilkTea:dZ,Minus:hy,Money:SZ,Monitor:NZ,Moon:UZ,MoonNight:DZ,More:vy,MoreFilled:S0,MostlyCloudy:aJ,Mouse:fJ,Mug:_J,Mute:RJ,MuteNotification:kJ,NoSmoking:zJ,Notebook:WJ,Notification:JJ,Odometer:sQ,OfficeBuilding:hQ,Open:wQ,Operation:TQ,Opportunity:xQ,Orange:VQ,Paperclip:WQ,PartlyCloudy:JQ,Pear:oee,Phone:mee,PhoneFilled:cee,Picture:Lee,PictureFilled:my,PictureRounded:Oee,PieChart:Hee,Place:Xee,Platform:nte,Plus:Yh,Pointer:pte,Position:bte,Postcard:$te,Pouring:Rte,Present:Fte,PriceTag:Gte,Printer:ene,Promotion:sne,QuartzWatch:hne,QuestionFilled:gy,Rank:kne,Reading:Vne,ReadingLamp:Rne,Refresh:tre,RefreshLeft:_y,RefreshRight:by,Refrigerator:lre,Remove:yre,RemoveFilled:pre,Right:$re,ScaleToOriginal:yy,School:Vre,Scissor:Wre,Search:wy,Select:noe,Sell:ioe,SemiSelect:hoe,Service:yoe,SetUp:Moe,Setting:Loe,Share:Foe,Ship:qoe,Shop:Qoe,ShoppingBag:sae,ShoppingCart:bae,ShoppingCartFull:pae,ShoppingTrolley:kae,Smoking:Rae,Soccer:zae,SoldOut:Kae,Sort:sse,SortDown:Ey,SortUp:Cy,Stamp:fse,Star:Sy,StarFilled:Kl,Stopwatch:Mse,SuccessFilled:Xh,Sugar:Bse,Suitcase:Qse,SuitcaseLine:jse,Sunny:ale,Sunrise:dle,Sunset:gle,Switch:Dle,SwitchButton:Sle,SwitchFilled:Ale,TakeawayBox:Ule,Ticket:Yle,Tickets:tie,Timer:uie,ToiletPaper:mie,Tools:Eie,Top:Hie,TopLeft:Mie,TopRight:Pie,TrendCharts:Gie,Trophy:sue,TrophyBase:eue,TurnOff:pue,Umbrella:bue,Unlock:$ue,Upload:zue,UploadFilled:Rue,User:Xue,UserFilled:Kue,Van:nce,VideoCamera:hce,VideoCameraFilled:ice,VideoPause:yce,VideoPlay:$ce,View:ky,Wallet:Wce,WalletFilled:Dce,WarnTriangleFilled:Zce,Warning:ide,WarningFilled:hu,Watch:mde,Watermelon:Ede,WindPower:Ode,ZoomIn:Zh,ZoomOut:$y},Symbol.toStringTag,{value:"Module"})),Ty="__epPropKey",he=e=>e,Bde=e=>dt(e)&&!!e[Ty],Br=(e,t)=>{if(!dt(e)||Bde(e))return e;const{values:n,required:r,default:o,type:a,validator:s}=e,i={type:a,required:!!r,validator:n||s?u=>{let d=!1,f=[];if(n&&(f=Array.from(n),mt(e,"default")&&f.push(o),d||(d=f.includes(u))),s&&(d||(d=s(u))),!d&&f.length>0){const p=[...new Set(f)].map(v=>JSON.stringify(v)).join(", ");LC(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${p}], got value ${JSON.stringify(u)}.`)}return d}:void 0,[Ty]:!0};return mt(e,"default")&&(i.default=o),i},Le=e=>Uc(Object.entries(e).map(([t,n])=>[t,Br(n,t)])),zt=he([String,Object,Function]),Oy={Close:wr},Jh={Close:wr,SuccessFilled:Xh,InfoFilled:Hd,WarningFilled:hu,CircleCloseFilled:Fd},wa={success:Xh,warning:hu,error:Fd,info:Hd},My={validating:Fo,success:Bd,error:Bo},lt=(e,t)=>{if(e.install=n=>{for(const r of[e,...Object.values(t??{})])n.component(r.name,r)},t)for(const[n,r]of Object.entries(t))e[n]=r;return e},Ny=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),Fde=(e,t)=>(e.install=n=>{n.directive(t,e)},e),Jt=e=>(e.install=Ot,e),Ud=(...e)=>t=>{e.forEach(n=>{Xe(n)?n(t):n.value=t})},Ge={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},Hde=["year","month","date","dates","week","datetime","datetimerange","daterange","monthrange"],Df=["sun","mon","tue","wed","thu","fri","sat"],ut="update:modelValue",Bt="change",Bn="input",sg=Symbol("INSTALLED_KEY"),Ho=["","default","small","large"],Ude={large:40,default:32,small:24},Kde=e=>Ude[e||"default"],Kd=e=>["",...Ho].includes(e);var pr=(e=>(e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e))(pr||{});function k0(e){return Vt(e)&&e.type===qe}function Wde(e){return Vt(e)&&e.type===bn}function jde(e){return Vt(e)&&!k0(e)&&!Wde(e)}const qde=e=>{if(!Vt(e))return{};const t=e.props||{},n=(Vt(e.type)?e.type.props:void 0)||{},r={};return Object.keys(n).forEach(o=>{mt(n[o],"default")&&(r[o]=n[o].default)}),Object.keys(t).forEach(o=>{r[Vn(o)]=t[o]}),r},Gde=e=>{if(!Ve(e)||e.length>1)throw new Error("expect to receive a single Vue element child");return e[0]},Us=e=>{const t=Ve(e)?e:[e],n=[];return t.forEach(r=>{var o;Ve(r)?n.push(...Us(r)):Vt(r)&&Ve(r.children)?n.push(...Us(r.children)):(n.push(r),Vt(r)&&((o=r.component)!=null&&o.subTree)&&n.push(...Us(r.component.subTree)))}),n},lg=e=>[...new Set(e)],ko=e=>!e&&e!==0?[]:Array.isArray(e)?e:[e],Ay=()=>gt&&/firefox/i.test(window.navigator.userAgent),Wd=e=>/([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi.test(e),Ni=e=>gt?window.requestAnimationFrame(e):setTimeout(e,16),jd=e=>gt?window.cancelAnimationFrame(e):clearTimeout(e),qd=()=>Math.floor(Math.random()*1e4),jt=e=>e,Yde=["class","style"],Xde=/^on[A-Z]/,Qh=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,r=$(()=>((n==null?void 0:n.value)||[]).concat(Yde)),o=tt();return $(o?()=>{var a;return Uc(Object.entries((a=o.proxy)==null?void 0:a.$attrs).filter(([s])=>!r.value.includes(s)&&!(t&&Xde.test(s))))}:()=>({}))},Ry=Symbol("breadcrumbKey"),xy=Symbol("buttonGroupContextKey"),Iy=Symbol("carouselContextKey"),kl=Symbol("checkboxGroupContextKey"),Ly=Symbol("collapseContextKey"),Py=Symbol(),Dy=Symbol("dialogInjectionKey"),hs=Symbol("formContextKey"),oo=Symbol("formItemContextKey"),zy=Symbol("elPaginationKey"),Vy=Symbol("radioGroupKey"),By=Symbol("rowContextKey"),Fy=Symbol("scrollbarContextKey"),Hy=Symbol("sliderContextKey"),Gd=Symbol("tabsRootContextKey"),Uy=Symbol("uploadContextKey"),ev=Symbol("popper"),Ky=Symbol("popperContent"),Yd=Symbol("elTooltip"),Xd=Symbol("tooltipV2"),Wy=Symbol("tooltipV2Content"),zf="tooltip_v2.open",tv=Symbol(),jy=e=>{const t=tt();return $(()=>{var n,r;return(r=((n=t.proxy)==null?void 0:n.$props)[e])!=null?r:void 0})},qc=P();function Uo(e,t=void 0){const n=tt()?Fe(Py,qc):qc;return e?$(()=>{var r,o;return(o=(r=n.value)==null?void 0:r[e])!=null?o:t}):n}const qy=(e,t,n=!1)=>{var r;const o=!!tt(),a=o?Uo():void 0,s=(r=t==null?void 0:t.provide)!=null?r:o?ct:void 0;if(!s)return;const l=$(()=>{const i=c(e);return a!=null&&a.value?Zde(a.value,i):i});return s(Py,l),(n||!qc.value)&&(qc.value=l.value),l},Zde=(e,t)=>{var n;const r=[...new Set([...Mi(e),...Mi(t)])],o={};for(const a of r)o[a]=(n=t[a])!=null?n:e[a];return o},On=Br({type:String,values:Ho,required:!1}),sn=(e,t={})=>{const n=P(void 0),r=t.prop?n:jy("size"),o=t.global?n:Uo("size"),a=t.form?{size:void 0}:Fe(hs,void 0),s=t.formItem?{size:void 0}:Fe(oo,void 0);return $(()=>r.value||c(e)||(s==null?void 0:s.size)||(a==null?void 0:a.size)||o.value||"")},rr=e=>{const t=jy("disabled"),n=Fe(hs,void 0);return $(()=>t.value||c(e)||(n==null?void 0:n.disabled)||!1)},xo=({from:e,replacement:t,scope:n,version:r,ref:o,type:a="API"},s)=>{Ce(()=>c(s),l=>{},{immediate:!0})},Gy=(e,t,n)=>{let r={offsetX:0,offsetY:0};const o=l=>{const i=l.clientX,u=l.clientY,{offsetX:d,offsetY:f}=r,p=e.value.getBoundingClientRect(),v=p.left,h=p.top,m=p.width,_=p.height,g=document.documentElement.clientWidth,b=document.documentElement.clientHeight,y=-v+d,w=-h+f,C=g-v-m+d,S=b-h-_+f,O=A=>{const R=Math.min(Math.max(d+A.clientX-i,y),C),B=Math.min(Math.max(f+A.clientY-u,w),S);r={offsetX:R,offsetY:B},e.value.style.transform=`translate(${on(R)}, ${on(B)})`},T=()=>{document.removeEventListener("mousemove",O),document.removeEventListener("mouseup",T)};document.addEventListener("mousemove",O),document.addEventListener("mouseup",T)},a=()=>{t.value&&e.value&&t.value.addEventListener("mousedown",o)},s=()=>{t.value&&e.value&&t.value.removeEventListener("mousedown",o)};rt(()=>{Qn(()=>{n.value?a():s()})}),Ut(()=>{s()})},Jde=e=>({focus:()=>{var t,n;(n=(t=e.value)==null?void 0:t.focus)==null||n.call(t)}}),Zd="el",Qde="is-",xa=(e,t,n,r,o)=>{let a=`${e}-${t}`;return n&&(a+=`-${n}`),r&&(a+=`__${r}`),o&&(a+=`--${o}`),a},Oe=e=>{const t=Uo("namespace",Zd);return{namespace:t,b:(h="")=>xa(t.value,e,h,"",""),e:h=>h?xa(t.value,e,"",h,""):"",m:h=>h?xa(t.value,e,"","",h):"",be:(h,m)=>h&&m?xa(t.value,e,h,m,""):"",em:(h,m)=>h&&m?xa(t.value,e,"",h,m):"",bm:(h,m)=>h&&m?xa(t.value,e,h,"",m):"",bem:(h,m,_)=>h&&m&&_?xa(t.value,e,h,m,_):"",is:(h,...m)=>{const _=m.length>=1?m[0]:!0;return h&&_?`${Qde}${h}`:""},cssVar:h=>{const m={};for(const _ in h)h[_]&&(m[`--${t.value}-${_}`]=h[_]);return m},cssVarName:h=>`--${t.value}-${h}`,cssVarBlock:h=>{const m={};for(const _ in h)h[_]&&(m[`--${t.value}-${e}-${_}`]=h[_]);return m},cssVarBlockName:h=>`--${t.value}-${e}-${h}`}},ig={prefix:Math.floor(Math.random()*1e4),current:0},efe=Symbol("elIdInjection"),Yy=()=>tt()?Fe(efe,ig):ig,Dr=e=>{const t=Yy(),n=Uo("namespace",Zd);return $(()=>c(e)||`${n.value}-id-${t.prefix}-${t.current++}`)},Wn=()=>{const e=Fe(hs,void 0),t=Fe(oo,void 0);return{form:e,formItem:t}},$a=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:r})=>{n||(n=P(!1)),r||(r=P(!1));const o=P();let a;const s=$(()=>{var l;return!!(!e.label&&t&&t.inputIds&&((l=t.inputIds)==null?void 0:l.length)<=1)});return rt(()=>{a=Ce([qt(e,"id"),n],([l,i])=>{const u=l??(i?void 0:Dr().value);u!==o.value&&(t!=null&&t.removeInputId&&(o.value&&t.removeInputId(o.value),!(r!=null&&r.value)&&!i&&u&&t.addInputId(u)),o.value=u)},{immediate:!0})}),io(()=>{a&&a(),t!=null&&t.removeInputId&&o.value&&t.removeInputId(o.value)}),{isLabeledByFormItem:s,inputId:o}};var tfe={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};const nfe=e=>(t,n)=>rfe(t,n,c(e)),rfe=(e,t,n)=>Wt(n,e,e).replace(/\{(\w+)\}/g,(r,o)=>{var a;return`${(a=t==null?void 0:t[o])!=null?a:`{${o}}`}`}),ofe=e=>{const t=$(()=>c(e).name),n=kt(e)?e:P(e);return{lang:t,locale:n,t:nfe(e)}},Ct=()=>{const e=Uo("locale");return ofe($(()=>e.value||tfe))},Xy=e=>{kt(e)||un("[useLockscreen]","You need to pass a ref param to this function");const t=Oe("popup"),n=m6(()=>t.bm("parent","hidden"));if(!gt||Ir(document.body,n.value))return;let r=0,o=!1,a="0";const s=()=>{setTimeout(()=>{er(document.body,n.value),o&&(document.body.style.width=a)},200)};Ce(e,l=>{if(!l){s();return}o=!Ir(document.body,n.value),o&&(a=document.body.style.width),r=oy(t.namespace.value);const i=document.documentElement.clientHeight0&&(i||u==="scroll")&&o&&(document.body.style.width=`calc(100% - ${r}px)`),Xr(document.body,n.value)}),ch(()=>s())},afe=Br({type:he(Boolean),default:null}),sfe=Br({type:he(Function)}),Zy=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,r=[t],o={[e]:afe,[n]:sfe};return{useModelToggle:({indicator:s,toggleReason:l,shouldHideWhenRouteChanges:i,shouldProceed:u,onShow:d,onHide:f})=>{const p=tt(),{emit:v}=p,h=p.props,m=$(()=>Xe(h[n])),_=$(()=>h[e]===null),g=O=>{s.value!==!0&&(s.value=!0,l&&(l.value=O),Xe(d)&&d(O))},b=O=>{s.value!==!1&&(s.value=!1,l&&(l.value=O),Xe(f)&&f(O))},y=O=>{if(h.disabled===!0||Xe(u)&&!u())return;const T=m.value&>T&&v(t,!0),(_.value||!T)&&g(O)},w=O=>{if(h.disabled===!0||!gt)return;const T=m.value&>T&&v(t,!1),(_.value||!T)&&b(O)},C=O=>{rn(O)&&(h.disabled&&O?m.value&&v(t,!1):s.value!==O&&(O?g():b()))},S=()=>{s.value?w():y()};return Ce(()=>h[e],C),i&&p.appContext.config.globalProperties.$route!==void 0&&Ce(()=>({...p.proxy.$route}),()=>{i.value&&s.value&&w()}),rt(()=>{C(h[e])}),{hide:w,show:y,toggle:S,hasUpdateHandler:m}},useModelToggleProps:o,useModelToggleEmits:r}};Zy("modelValue");var tr="top",Er="bottom",Cr="right",nr="left",nv="auto",vu=[tr,Er,Cr,nr],al="start",Ai="end",lfe="clippingParents",Jy="viewport",Ll="popper",ife="reference",ug=vu.reduce(function(e,t){return e.concat([t+"-"+al,t+"-"+Ai])},[]),vs=[].concat(vu,[nv]).reduce(function(e,t){return e.concat([t,t+"-"+al,t+"-"+Ai])},[]),ufe="beforeRead",cfe="read",dfe="afterRead",ffe="beforeMain",pfe="main",hfe="afterMain",vfe="beforeWrite",mfe="write",gfe="afterWrite",_fe=[ufe,cfe,dfe,ffe,pfe,hfe,vfe,mfe,gfe];function ao(e){return e?(e.nodeName||"").toLowerCase():null}function Fr(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function sl(e){var t=Fr(e).Element;return e instanceof t||e instanceof Element}function gr(e){var t=Fr(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function rv(e){if(typeof ShadowRoot>"u")return!1;var t=Fr(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function bfe(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},o=t.attributes[n]||{},a=t.elements[n];!gr(a)||!ao(a)||(Object.assign(a.style,r),Object.keys(o).forEach(function(s){var l=o[s];l===!1?a.removeAttribute(s):a.setAttribute(s,l===!0?"":l)}))})}function yfe(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var o=t.elements[r],a=t.attributes[r]||{},s=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),l=s.reduce(function(i,u){return i[u]="",i},{});!gr(o)||!ao(o)||(Object.assign(o.style,l),Object.keys(a).forEach(function(i){o.removeAttribute(i)}))})}}var Qy={name:"applyStyles",enabled:!0,phase:"write",fn:bfe,effect:yfe,requires:["computeStyles"]};function eo(e){return e.split("-")[0]}var Za=Math.max,Gc=Math.min,ll=Math.round;function il(e,t){t===void 0&&(t=!1);var n=e.getBoundingClientRect(),r=1,o=1;if(gr(e)&&t){var a=e.offsetHeight,s=e.offsetWidth;s>0&&(r=ll(n.width)/s||1),a>0&&(o=ll(n.height)/a||1)}return{width:n.width/r,height:n.height/o,top:n.top/o,right:n.right/r,bottom:n.bottom/o,left:n.left/r,x:n.left/r,y:n.top/o}}function ov(e){var t=il(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function e8(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&rv(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Io(e){return Fr(e).getComputedStyle(e)}function wfe(e){return["table","td","th"].indexOf(ao(e))>=0}function Ta(e){return((sl(e)?e.ownerDocument:e.document)||window.document).documentElement}function Jd(e){return ao(e)==="html"?e:e.assignedSlot||e.parentNode||(rv(e)?e.host:null)||Ta(e)}function cg(e){return!gr(e)||Io(e).position==="fixed"?null:e.offsetParent}function Efe(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&gr(e)){var r=Io(e);if(r.position==="fixed")return null}var o=Jd(e);for(rv(o)&&(o=o.host);gr(o)&&["html","body"].indexOf(ao(o))<0;){var a=Io(o);if(a.transform!=="none"||a.perspective!=="none"||a.contain==="paint"||["transform","perspective"].indexOf(a.willChange)!==-1||t&&a.willChange==="filter"||t&&a.filter&&a.filter!=="none")return o;o=o.parentNode}return null}function mu(e){for(var t=Fr(e),n=cg(e);n&&wfe(n)&&Io(n).position==="static";)n=cg(n);return n&&(ao(n)==="html"||ao(n)==="body"&&Io(n).position==="static")?t:n||Efe(e)||t}function av(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function ni(e,t,n){return Za(e,Gc(t,n))}function Cfe(e,t,n){var r=ni(e,t,n);return r>n?n:r}function t8(){return{top:0,right:0,bottom:0,left:0}}function n8(e){return Object.assign({},t8(),e)}function r8(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var Sfe=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,n8(typeof e!="number"?e:r8(e,vu))};function kfe(e){var t,n=e.state,r=e.name,o=e.options,a=n.elements.arrow,s=n.modifiersData.popperOffsets,l=eo(n.placement),i=av(l),u=[nr,Cr].indexOf(l)>=0,d=u?"height":"width";if(!(!a||!s)){var f=Sfe(o.padding,n),p=ov(a),v=i==="y"?tr:nr,h=i==="y"?Er:Cr,m=n.rects.reference[d]+n.rects.reference[i]-s[i]-n.rects.popper[d],_=s[i]-n.rects.reference[i],g=mu(a),b=g?i==="y"?g.clientHeight||0:g.clientWidth||0:0,y=m/2-_/2,w=f[v],C=b-p[d]-f[h],S=b/2-p[d]/2+y,O=ni(w,S,C),T=i;n.modifiersData[r]=(t={},t[T]=O,t.centerOffset=O-S,t)}}function $fe(e){var t=e.state,n=e.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=t.elements.popper.querySelector(o),!o)||!e8(t.elements.popper,o)||(t.elements.arrow=o))}var Tfe={name:"arrow",enabled:!0,phase:"main",fn:kfe,effect:$fe,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ul(e){return e.split("-")[1]}var Ofe={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Mfe(e){var t=e.x,n=e.y,r=window,o=r.devicePixelRatio||1;return{x:ll(t*o)/o||0,y:ll(n*o)/o||0}}function dg(e){var t,n=e.popper,r=e.popperRect,o=e.placement,a=e.variation,s=e.offsets,l=e.position,i=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,f=e.isFixed,p=s.x,v=p===void 0?0:p,h=s.y,m=h===void 0?0:h,_=typeof d=="function"?d({x:v,y:m}):{x:v,y:m};v=_.x,m=_.y;var g=s.hasOwnProperty("x"),b=s.hasOwnProperty("y"),y=nr,w=tr,C=window;if(u){var S=mu(n),O="clientHeight",T="clientWidth";if(S===Fr(n)&&(S=Ta(n),Io(S).position!=="static"&&l==="absolute"&&(O="scrollHeight",T="scrollWidth")),S=S,o===tr||(o===nr||o===Cr)&&a===Ai){w=Er;var A=f&&S===C&&C.visualViewport?C.visualViewport.height:S[O];m-=A-r.height,m*=i?1:-1}if(o===nr||(o===tr||o===Er)&&a===Ai){y=Cr;var R=f&&S===C&&C.visualViewport?C.visualViewport.width:S[T];v-=R-r.width,v*=i?1:-1}}var B=Object.assign({position:l},u&&Ofe),V=d===!0?Mfe({x:v,y:m}):{x:v,y:m};if(v=V.x,m=V.y,i){var H;return Object.assign({},B,(H={},H[w]=b?"0":"",H[y]=g?"0":"",H.transform=(C.devicePixelRatio||1)<=1?"translate("+v+"px, "+m+"px)":"translate3d("+v+"px, "+m+"px, 0)",H))}return Object.assign({},B,(t={},t[w]=b?m+"px":"",t[y]=g?v+"px":"",t.transform="",t))}function Nfe(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=r===void 0?!0:r,a=n.adaptive,s=a===void 0?!0:a,l=n.roundOffsets,i=l===void 0?!0:l,u={placement:eo(t.placement),variation:ul(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,dg(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:i})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,dg(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:i})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var o8={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Nfe,data:{}},Vu={passive:!0};function Afe(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,a=o===void 0?!0:o,s=r.resize,l=s===void 0?!0:s,i=Fr(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&u.forEach(function(d){d.addEventListener("scroll",n.update,Vu)}),l&&i.addEventListener("resize",n.update,Vu),function(){a&&u.forEach(function(d){d.removeEventListener("scroll",n.update,Vu)}),l&&i.removeEventListener("resize",n.update,Vu)}}var a8={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Afe,data:{}},Rfe={left:"right",right:"left",bottom:"top",top:"bottom"};function lc(e){return e.replace(/left|right|bottom|top/g,function(t){return Rfe[t]})}var xfe={start:"end",end:"start"};function fg(e){return e.replace(/start|end/g,function(t){return xfe[t]})}function sv(e){var t=Fr(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function lv(e){return il(Ta(e)).left+sv(e).scrollLeft}function Ife(e){var t=Fr(e),n=Ta(e),r=t.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,l=0;return r&&(o=r.width,a=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=r.offsetLeft,l=r.offsetTop)),{width:o,height:a,x:s+lv(e),y:l}}function Lfe(e){var t,n=Ta(e),r=sv(e),o=(t=e.ownerDocument)==null?void 0:t.body,a=Za(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=Za(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),l=-r.scrollLeft+lv(e),i=-r.scrollTop;return Io(o||n).direction==="rtl"&&(l+=Za(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:l,y:i}}function iv(e){var t=Io(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function s8(e){return["html","body","#document"].indexOf(ao(e))>=0?e.ownerDocument.body:gr(e)&&iv(e)?e:s8(Jd(e))}function ri(e,t){var n;t===void 0&&(t=[]);var r=s8(e),o=r===((n=e.ownerDocument)==null?void 0:n.body),a=Fr(r),s=o?[a].concat(a.visualViewport||[],iv(r)?r:[]):r,l=t.concat(s);return o?l:l.concat(ri(Jd(s)))}function $0(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Pfe(e){var t=il(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function pg(e,t){return t===Jy?$0(Ife(e)):sl(t)?Pfe(t):$0(Lfe(Ta(e)))}function Dfe(e){var t=ri(Jd(e)),n=["absolute","fixed"].indexOf(Io(e).position)>=0,r=n&&gr(e)?mu(e):e;return sl(r)?t.filter(function(o){return sl(o)&&e8(o,r)&&ao(o)!=="body"}):[]}function zfe(e,t,n){var r=t==="clippingParents"?Dfe(e):[].concat(t),o=[].concat(r,[n]),a=o[0],s=o.reduce(function(l,i){var u=pg(e,i);return l.top=Za(u.top,l.top),l.right=Gc(u.right,l.right),l.bottom=Gc(u.bottom,l.bottom),l.left=Za(u.left,l.left),l},pg(e,a));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function l8(e){var t=e.reference,n=e.element,r=e.placement,o=r?eo(r):null,a=r?ul(r):null,s=t.x+t.width/2-n.width/2,l=t.y+t.height/2-n.height/2,i;switch(o){case tr:i={x:s,y:t.y-n.height};break;case Er:i={x:s,y:t.y+t.height};break;case Cr:i={x:t.x+t.width,y:l};break;case nr:i={x:t.x-n.width,y:l};break;default:i={x:t.x,y:t.y}}var u=o?av(o):null;if(u!=null){var d=u==="y"?"height":"width";switch(a){case al:i[u]=i[u]-(t[d]/2-n[d]/2);break;case Ai:i[u]=i[u]+(t[d]/2-n[d]/2);break}}return i}function Ri(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=r===void 0?e.placement:r,a=n.boundary,s=a===void 0?lfe:a,l=n.rootBoundary,i=l===void 0?Jy:l,u=n.elementContext,d=u===void 0?Ll:u,f=n.altBoundary,p=f===void 0?!1:f,v=n.padding,h=v===void 0?0:v,m=n8(typeof h!="number"?h:r8(h,vu)),_=d===Ll?ife:Ll,g=e.rects.popper,b=e.elements[p?_:d],y=zfe(sl(b)?b:b.contextElement||Ta(e.elements.popper),s,i),w=il(e.elements.reference),C=l8({reference:w,element:g,strategy:"absolute",placement:o}),S=$0(Object.assign({},g,C)),O=d===Ll?S:w,T={top:y.top-O.top+m.top,bottom:O.bottom-y.bottom+m.bottom,left:y.left-O.left+m.left,right:O.right-y.right+m.right},A=e.modifiersData.offset;if(d===Ll&&A){var R=A[o];Object.keys(T).forEach(function(B){var V=[Cr,Er].indexOf(B)>=0?1:-1,H=[tr,Er].indexOf(B)>=0?"y":"x";T[B]+=R[H]*V})}return T}function Vfe(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=n.boundary,a=n.rootBoundary,s=n.padding,l=n.flipVariations,i=n.allowedAutoPlacements,u=i===void 0?vs:i,d=ul(r),f=d?l?ug:ug.filter(function(h){return ul(h)===d}):vu,p=f.filter(function(h){return u.indexOf(h)>=0});p.length===0&&(p=f);var v=p.reduce(function(h,m){return h[m]=Ri(e,{placement:m,boundary:o,rootBoundary:a,padding:s})[eo(m)],h},{});return Object.keys(v).sort(function(h,m){return v[h]-v[m]})}function Bfe(e){if(eo(e)===nv)return[];var t=lc(e);return[fg(e),t,fg(t)]}function Ffe(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,l=s===void 0?!0:s,i=n.fallbackPlacements,u=n.padding,d=n.boundary,f=n.rootBoundary,p=n.altBoundary,v=n.flipVariations,h=v===void 0?!0:v,m=n.allowedAutoPlacements,_=t.options.placement,g=eo(_),b=g===_,y=i||(b||!h?[lc(_)]:Bfe(_)),w=[_].concat(y).reduce(function(be,te){return be.concat(eo(te)===nv?Vfe(t,{placement:te,boundary:d,rootBoundary:f,padding:u,flipVariations:h,allowedAutoPlacements:m}):te)},[]),C=t.rects.reference,S=t.rects.popper,O=new Map,T=!0,A=w[0],R=0;R=0,K=U?"width":"height",I=Ri(t,{placement:B,boundary:d,rootBoundary:f,altBoundary:p,padding:u}),x=U?H?Cr:nr:H?Er:tr;C[K]>S[K]&&(x=lc(x));var L=lc(x),z=[];if(a&&z.push(I[V]<=0),l&&z.push(I[x]<=0,I[L]<=0),z.every(function(be){return be})){A=B,T=!1;break}O.set(B,z)}if(T)for(var q=h?3:1,le=function(be){var te=w.find(function(de){var Z=O.get(de);if(Z)return Z.slice(0,be).every(function(Y){return Y})});if(te)return A=te,"break"},G=q;G>0;G--){var ae=le(G);if(ae==="break")break}t.placement!==A&&(t.modifiersData[r]._skip=!0,t.placement=A,t.reset=!0)}}var Hfe={name:"flip",enabled:!0,phase:"main",fn:Ffe,requiresIfExists:["offset"],data:{_skip:!1}};function hg(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function vg(e){return[tr,Cr,Er,nr].some(function(t){return e[t]>=0})}function Ufe(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,a=t.modifiersData.preventOverflow,s=Ri(t,{elementContext:"reference"}),l=Ri(t,{altBoundary:!0}),i=hg(s,r),u=hg(l,o,a),d=vg(i),f=vg(u);t.modifiersData[n]={referenceClippingOffsets:i,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":f})}var Kfe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Ufe};function Wfe(e,t,n){var r=eo(e),o=[nr,tr].indexOf(r)>=0?-1:1,a=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,s=a[0],l=a[1];return s=s||0,l=(l||0)*o,[nr,Cr].indexOf(r)>=0?{x:l,y:s}:{x:s,y:l}}function jfe(e){var t=e.state,n=e.options,r=e.name,o=n.offset,a=o===void 0?[0,0]:o,s=vs.reduce(function(d,f){return d[f]=Wfe(f,t.rects,a),d},{}),l=s[t.placement],i=l.x,u=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=i,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=s}var qfe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:jfe};function Gfe(e){var t=e.state,n=e.name;t.modifiersData[n]=l8({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}var i8={name:"popperOffsets",enabled:!0,phase:"read",fn:Gfe,data:{}};function Yfe(e){return e==="x"?"y":"x"}function Xfe(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,l=s===void 0?!1:s,i=n.boundary,u=n.rootBoundary,d=n.altBoundary,f=n.padding,p=n.tether,v=p===void 0?!0:p,h=n.tetherOffset,m=h===void 0?0:h,_=Ri(t,{boundary:i,rootBoundary:u,padding:f,altBoundary:d}),g=eo(t.placement),b=ul(t.placement),y=!b,w=av(g),C=Yfe(w),S=t.modifiersData.popperOffsets,O=t.rects.reference,T=t.rects.popper,A=typeof m=="function"?m(Object.assign({},t.rects,{placement:t.placement})):m,R=typeof A=="number"?{mainAxis:A,altAxis:A}:Object.assign({mainAxis:0,altAxis:0},A),B=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,V={x:0,y:0};if(S){if(a){var H,U=w==="y"?tr:nr,K=w==="y"?Er:Cr,I=w==="y"?"height":"width",x=S[w],L=x+_[U],z=x-_[K],q=v?-T[I]/2:0,le=b===al?O[I]:T[I],G=b===al?-T[I]:-O[I],ae=t.elements.arrow,be=v&&ae?ov(ae):{width:0,height:0},te=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:t8(),de=te[U],Z=te[K],Y=ni(0,O[I],be[I]),ce=y?O[I]/2-q-Y-de-R.mainAxis:le-Y-de-R.mainAxis,ve=y?-O[I]/2+q+Y+Z+R.mainAxis:G+Y+Z+R.mainAxis,Ne=t.elements.arrow&&mu(t.elements.arrow),j=Ne?w==="y"?Ne.clientTop||0:Ne.clientLeft||0:0,D=(H=B==null?void 0:B[w])!=null?H:0,F=x+ce-D-j,Q=x+ve-D,ge=ni(v?Gc(L,F):L,x,v?Za(z,Q):z);S[w]=ge,V[w]=ge-x}if(l){var ne,Se=w==="x"?tr:nr,ye=w==="x"?Er:Cr,Te=S[C],we=C==="y"?"height":"width",J=Te+_[Se],_e=Te-_[ye],De=[tr,nr].indexOf(g)!==-1,$e=(ne=B==null?void 0:B[C])!=null?ne:0,Pe=De?J:Te-O[we]-T[we]-$e+R.altAxis,Ue=De?Te+O[we]+T[we]-$e-R.altAxis:_e,ze=v&&De?Cfe(Pe,Te,Ue):ni(v?Pe:J,Te,v?Ue:_e);S[C]=ze,V[C]=ze-Te}t.modifiersData[r]=V}}var Zfe={name:"preventOverflow",enabled:!0,phase:"main",fn:Xfe,requiresIfExists:["offset"]};function Jfe(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function Qfe(e){return e===Fr(e)||!gr(e)?sv(e):Jfe(e)}function epe(e){var t=e.getBoundingClientRect(),n=ll(t.width)/e.offsetWidth||1,r=ll(t.height)/e.offsetHeight||1;return n!==1||r!==1}function tpe(e,t,n){n===void 0&&(n=!1);var r=gr(t),o=gr(t)&&epe(t),a=Ta(t),s=il(e,o),l={scrollLeft:0,scrollTop:0},i={x:0,y:0};return(r||!r&&!n)&&((ao(t)!=="body"||iv(a))&&(l=Qfe(t)),gr(t)?(i=il(t,!0),i.x+=t.clientLeft,i.y+=t.clientTop):a&&(i.x=lv(a))),{x:s.left+l.scrollLeft-i.x,y:s.top+l.scrollTop-i.y,width:s.width,height:s.height}}function npe(e){var t=new Map,n=new Set,r=[];e.forEach(function(a){t.set(a.name,a)});function o(a){n.add(a.name);var s=[].concat(a.requires||[],a.requiresIfExists||[]);s.forEach(function(l){if(!n.has(l)){var i=t.get(l);i&&o(i)}}),r.push(a)}return e.forEach(function(a){n.has(a.name)||o(a)}),r}function rpe(e){var t=npe(e);return _fe.reduce(function(n,r){return n.concat(t.filter(function(o){return o.phase===r}))},[])}function ope(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function ape(e){var t=e.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var mg={placement:"bottom",modifiers:[],strategy:"absolute"};function gg(){for(var e=arguments.length,t=new Array(e),n=0;n{const r={name:"updateState",enabled:!0,phase:"write",fn:({state:i})=>{const u=upe(i);Object.assign(s.value,u)},requires:["computeStyles"]},o=$(()=>{const{onFirstUpdate:i,placement:u,strategy:d,modifiers:f}=c(n);return{onFirstUpdate:i,placement:u||"bottom",strategy:d||"absolute",modifiers:[...f||[],r,{name:"applyStyles",enabled:!1}]}}),a=xt(),s=P({styles:{popper:{position:c(o).strategy,left:"0",right:"0"},arrow:{position:"absolute"}},attributes:{}}),l=()=>{a.value&&(a.value.destroy(),a.value=void 0)};return Ce(o,i=>{const u=c(a);u&&u.setOptions(i)},{deep:!0}),Ce([e,t],([i,u])=>{l(),!(!i||!u)&&(a.value=u8(i,u,c(o)))}),Ut(()=>{l()}),{state:$(()=>{var i;return{...((i=c(a))==null?void 0:i.state)||{}}}),styles:$(()=>c(s).styles),attributes:$(()=>c(s).attributes),update:()=>{var i;return(i=c(a))==null?void 0:i.update()},forceUpdate:()=>{var i;return(i=c(a))==null?void 0:i.forceUpdate()},instanceRef:$(()=>c(a))}};function upe(e){const t=Object.keys(e.elements),n=Uc(t.map(o=>[o,e.styles[o]||{}])),r=Uc(t.map(o=>[o,e.attributes[o]]));return{styles:n,attributes:r}}const cpe=(e,t)=>{let n;Ce(()=>e.value,r=>{var o,a;r?(n=document.activeElement,kt(t)&&((a=(o=t.value).focus)==null||a.call(o))):n.focus()})},cv=e=>{if(!e)return{onClick:Ot,onMousedown:Ot,onMouseup:Ot};let t=!1,n=!1;return{onClick:s=>{t&&n&&e(s),t=n=!1},onMousedown:s=>{t=s.target===s.currentTarget},onMouseup:s=>{n=s.target===s.currentTarget}}},dpe=(e,t=0)=>{if(t===0)return e;const n=P(!1);let r=0;const o=()=>{r&&clearTimeout(r),r=window.setTimeout(()=>{n.value=e.value},t)};return rt(o),Ce(()=>e.value,a=>{a?o():n.value=a}),n};function fpe(){let e;const t=(r,o)=>{n(),e=window.setTimeout(r,o)},n=()=>window.clearTimeout(e);return ps(()=>n()),{registerTimeout:t,cancelTimeout:n}}let Ss=[];const _g=e=>{const t=e;t.key===Ge.esc&&Ss.forEach(n=>n(t))},ppe=e=>{rt(()=>{Ss.length===0&&document.addEventListener("keydown",_g),gt&&Ss.push(e)}),Ut(()=>{Ss=Ss.filter(t=>t!==e),Ss.length===0&>&&document.removeEventListener("keydown",_g)})};let bg;const c8=()=>{const e=Uo("namespace",Zd),t=Yy(),n=$(()=>`${e.value}-popper-container-${t.prefix}`),r=$(()=>`#${n.value}`);return{id:n,selector:r}},hpe=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},vpe=()=>{ou(()=>{if(!gt)return;const{id:e,selector:t}=c8();!bg&&!document.body.querySelector(t.value)&&(bg=hpe(e.value))})},mpe=Le({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200}}),d8=({showAfter:e,hideAfter:t,open:n,close:r})=>{const{registerTimeout:o}=fpe();return{onOpen:l=>{o(()=>{n(l)},c(e))},onClose:l=>{o(()=>{r(l)},c(t))}}},f8=Symbol("elForwardRef"),gpe=e=>{ct(f8,{setForwardRef:n=>{e.value=n}})},_pe=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),yg=P(0),Ko=()=>{const e=Uo("zIndex",2e3),t=$(()=>e.value+yg.value);return{initialZIndex:e,currentZIndex:t,nextZIndex:()=>(yg.value++,t.value)}},xi=Math.min,Ks=Math.max,Yc=Math.round,Ea=e=>({x:e,y:e});function bpe(e,t,n){return Ks(e,xi(t,n))}function p8(e,t){return typeof e=="function"?e(t):e}function dv(e){return e.split("-")[0]}function fv(e){return e.split("-")[1]}function ype(e){return e==="x"?"y":"x"}function h8(e){return e==="y"?"height":"width"}function pv(e){return["top","bottom"].includes(dv(e))?"y":"x"}function v8(e){return ype(pv(e))}function wpe(e){return{top:0,right:0,bottom:0,left:0,...e}}function Epe(e){return typeof e!="number"?wpe(e):{top:e,right:e,bottom:e,left:e}}function m8(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function wg(e,t,n){let{reference:r,floating:o}=e;const a=pv(t),s=v8(t),l=h8(s),i=dv(t),u=a==="y",d=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,p=r[l]/2-o[l]/2;let v;switch(i){case"top":v={x:d,y:r.y-o.height};break;case"bottom":v={x:d,y:r.y+r.height};break;case"right":v={x:r.x+r.width,y:f};break;case"left":v={x:r.x-o.width,y:f};break;default:v={x:r.x,y:r.y}}switch(fv(t)){case"start":v[s]-=p*(n&&u?-1:1);break;case"end":v[s]+=p*(n&&u?-1:1);break}return v}const Cpe=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:a=[],platform:s}=n,l=a.filter(Boolean),i=await(s.isRTL==null?void 0:s.isRTL(t));let u=await s.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:f}=wg(u,r,i),p=r,v={},h=0;for(let m=0;m({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:a,platform:s,elements:l,middlewareData:i}=t,{element:u,padding:d=0}=p8(e,t)||{};if(u==null)return{};const f=Epe(d),p={x:n,y:r},v=v8(o),h=h8(v),m=await s.getDimensions(u),_=v==="y",g=_?"top":"left",b=_?"bottom":"right",y=_?"clientHeight":"clientWidth",w=a.reference[h]+a.reference[v]-p[v]-a.floating[h],C=p[v]-a.reference[v],S=await(s.getOffsetParent==null?void 0:s.getOffsetParent(u));let O=S?S[y]:0;(!O||!await(s.isElement==null?void 0:s.isElement(S)))&&(O=l.floating[y]||a.floating[h]);const T=w/2-C/2,A=O/2-m[h]/2-1,R=xi(f[g],A),B=xi(f[b],A),V=R,H=O-m[h]-B,U=O/2-m[h]/2+T,K=bpe(V,U,H),I=!i.arrow&&fv(o)!=null&&U!=K&&a.reference[h]/2-(U"u"?!1:e instanceof ShadowRoot||e instanceof cr(e).ShadowRoot}function gu(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=Sr(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function Tpe(e){return["table","td","th"].includes(Ca(e))}function hv(e){const t=vv(),n=Sr(e);return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function Ope(e){let t=cl(e);for(;so(t)&&!Qd(t);){if(hv(t))return t;t=cl(t)}return null}function vv(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Qd(e){return["html","body","#document"].includes(Ca(e))}function Sr(e){return cr(e).getComputedStyle(e)}function ef(e){return Lo(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function cl(e){if(Ca(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Eg(e)&&e.host||Oa(e);return Eg(t)?t.host:t}function _8(e){const t=cl(e);return Qd(t)?e.ownerDocument?e.ownerDocument.body:e.body:so(t)&&gu(t)?t:_8(t)}function T0(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=_8(e),a=o===((r=e.ownerDocument)==null?void 0:r.body),s=cr(o);return a?t.concat(s,s.visualViewport||[],gu(o)?o:[],s.frameElement&&n?T0(s.frameElement):[]):t.concat(o,T0(o,[],n))}function b8(e){const t=Sr(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=so(e),a=o?e.offsetWidth:n,s=o?e.offsetHeight:r,l=Yc(n)!==a||Yc(r)!==s;return l&&(n=a,r=s),{width:n,height:r,$:l}}function y8(e){return Lo(e)?e:e.contextElement}function Ws(e){const t=y8(e);if(!so(t))return Ea(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:a}=b8(t);let s=(a?Yc(n.width):n.width)/r,l=(a?Yc(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!l||!Number.isFinite(l))&&(l=1),{x:s,y:l}}const Mpe=Ea(0);function w8(e){const t=cr(e);return!vv()||!t.visualViewport?Mpe:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Npe(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==cr(e)?!1:t}function Ii(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),a=y8(e);let s=Ea(1);t&&(r?Lo(r)&&(s=Ws(r)):s=Ws(e));const l=Npe(a,n,r)?w8(a):Ea(0);let i=(o.left+l.x)/s.x,u=(o.top+l.y)/s.y,d=o.width/s.x,f=o.height/s.y;if(a){const p=cr(a),v=r&&Lo(r)?cr(r):r;let h=p.frameElement;for(;h&&r&&v!==p;){const m=Ws(h),_=h.getBoundingClientRect(),g=Sr(h),b=_.left+(h.clientLeft+parseFloat(g.paddingLeft))*m.x,y=_.top+(h.clientTop+parseFloat(g.paddingTop))*m.y;i*=m.x,u*=m.y,d*=m.x,f*=m.y,i+=b,u+=y,h=cr(h).frameElement}}return m8({width:d,height:f,x:i,y:u})}function Ape(e){let{rect:t,offsetParent:n,strategy:r}=e;const o=so(n),a=Oa(n);if(n===a)return t;let s={scrollLeft:0,scrollTop:0},l=Ea(1);const i=Ea(0);if((o||!o&&r!=="fixed")&&((Ca(n)!=="body"||gu(a))&&(s=ef(n)),so(n))){const u=Ii(n);l=Ws(n),i.x=u.x+n.clientLeft,i.y=u.y+n.clientTop}return{width:t.width*l.x,height:t.height*l.y,x:t.x*l.x-s.scrollLeft*l.x+i.x,y:t.y*l.y-s.scrollTop*l.y+i.y}}function Rpe(e){return Array.from(e.getClientRects())}function E8(e){return Ii(Oa(e)).left+ef(e).scrollLeft}function xpe(e){const t=Oa(e),n=ef(e),r=e.ownerDocument.body,o=Ks(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=Ks(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+E8(e);const l=-n.scrollTop;return Sr(r).direction==="rtl"&&(s+=Ks(t.clientWidth,r.clientWidth)-o),{width:o,height:a,x:s,y:l}}function Ipe(e,t){const n=cr(e),r=Oa(e),o=n.visualViewport;let a=r.clientWidth,s=r.clientHeight,l=0,i=0;if(o){a=o.width,s=o.height;const u=vv();(!u||u&&t==="fixed")&&(l=o.offsetLeft,i=o.offsetTop)}return{width:a,height:s,x:l,y:i}}function Lpe(e,t){const n=Ii(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,a=so(e)?Ws(e):Ea(1),s=e.clientWidth*a.x,l=e.clientHeight*a.y,i=o*a.x,u=r*a.y;return{width:s,height:l,x:i,y:u}}function Cg(e,t,n){let r;if(t==="viewport")r=Ipe(e,n);else if(t==="document")r=xpe(Oa(e));else if(Lo(t))r=Lpe(t,n);else{const o=w8(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return m8(r)}function C8(e,t){const n=cl(e);return n===t||!Lo(n)||Qd(n)?!1:Sr(n).position==="fixed"||C8(n,t)}function Ppe(e,t){const n=t.get(e);if(n)return n;let r=T0(e,[],!1).filter(l=>Lo(l)&&Ca(l)!=="body"),o=null;const a=Sr(e).position==="fixed";let s=a?cl(e):e;for(;Lo(s)&&!Qd(s);){const l=Sr(s),i=hv(s);!i&&l.position==="fixed"&&(o=null),(a?!i&&!o:!i&&l.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||gu(s)&&!i&&C8(e,s))?r=r.filter(d=>d!==s):o=l,s=cl(s)}return t.set(e,r),r}function Dpe(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?Ppe(t,this._c):[].concat(n),r],l=s[0],i=s.reduce((u,d)=>{const f=Cg(t,d,o);return u.top=Ks(f.top,u.top),u.right=xi(f.right,u.right),u.bottom=xi(f.bottom,u.bottom),u.left=Ks(f.left,u.left),u},Cg(t,l,o));return{width:i.right-i.left,height:i.bottom-i.top,x:i.left,y:i.top}}function zpe(e){return b8(e)}function Vpe(e,t,n){const r=so(t),o=Oa(t),a=n==="fixed",s=Ii(e,!0,a,t);let l={scrollLeft:0,scrollTop:0};const i=Ea(0);if(r||!r&&!a)if((Ca(t)!=="body"||gu(o))&&(l=ef(t)),r){const u=Ii(t,!0,a,t);i.x=u.x+t.clientLeft,i.y=u.y+t.clientTop}else o&&(i.x=E8(o));return{x:s.left+l.scrollLeft-i.x,y:s.top+l.scrollTop-i.y,width:s.width,height:s.height}}function Sg(e,t){return!so(e)||Sr(e).position==="fixed"?null:t?t(e):e.offsetParent}function S8(e,t){const n=cr(e);if(!so(e))return n;let r=Sg(e,t);for(;r&&Tpe(r)&&Sr(r).position==="static";)r=Sg(r,t);return r&&(Ca(r)==="html"||Ca(r)==="body"&&Sr(r).position==="static"&&!hv(r))?n:r||Ope(e)||n}const Bpe=async function(e){let{reference:t,floating:n,strategy:r}=e;const o=this.getOffsetParent||S8,a=this.getDimensions;return{reference:Vpe(t,await o(n),r),floating:{x:0,y:0,...await a(n)}}};function Fpe(e){return Sr(e).direction==="rtl"}const Hpe={convertOffsetParentRelativeRectToViewportRelativeRect:Ape,getDocumentElement:Oa,getClippingRect:Dpe,getOffsetParent:S8,getElementRects:Bpe,getClientRects:Rpe,getDimensions:zpe,getScale:Ws,isElement:Lo,isRTL:Fpe},Upe=(e,t,n)=>{const r=new Map,o={platform:Hpe,...n},a={...o.platform,_c:r};return Cpe(e,t,{...o,platform:a})};Le({});const Kpe=e=>{if(!gt)return;if(!e)return e;const t=zn(e);return t||(kt(e)?t:e)},Wpe=({middleware:e,placement:t,strategy:n})=>{const r=P(),o=P(),a=P(),s=P(),l=P({}),i={x:a,y:s,placement:t,strategy:n,middlewareData:l},u=async()=>{if(!gt)return;const d=Kpe(r),f=zn(o);if(!d||!f)return;const p=await Upe(d,f,{placement:c(t),strategy:c(n),middleware:c(e)});Mi(i).forEach(v=>{i[v].value=p[v]})};return rt(()=>{Qn(()=>{u()})}),{...i,update:u,referenceRef:r,contentRef:o}},jpe=({arrowRef:e,padding:t})=>({name:"arrow",options:{element:e,padding:t},fn(n){const r=c(e);return r?Spe({element:r,padding:t}).fn(n):{}}});function qpe(e){const t=P();function n(){if(e.value==null)return;const{selectionStart:o,selectionEnd:a,value:s}=e.value;if(o==null||a==null)return;const l=s.slice(0,Math.max(0,o)),i=s.slice(Math.max(0,a));t.value={selectionStart:o,selectionEnd:a,value:s,beforeTxt:l,afterTxt:i}}function r(){if(e.value==null||t.value==null)return;const{value:o}=e.value,{beforeTxt:a,afterTxt:s,selectionStart:l}=t.value;if(a==null||s==null||l==null)return;let i=o.length;if(o.endsWith(s))i=o.length-s.length;else if(o.startsWith(a))i=a.length;else{const u=a[l-1],d=o.indexOf(u,l-1);d!==-1&&(i=d+1)}e.value.setSelectionRange(i,i)}return[n,r]}const Gpe=(e,t,n)=>Us(e.subTree).filter(a=>{var s;return Vt(a)&&((s=a.type)==null?void 0:s.name)===t&&!!a.component}).map(a=>a.component.uid).map(a=>n[a]).filter(a=>!!a),k8=(e,t)=>{const n={},r=xt([]);return{children:r,addChild:s=>{n[s.uid]=s,r.value=Gpe(e,t,n)},removeChild:s=>{delete n[s],r.value=r.value.filter(l=>l.uid!==s)}}},Ype="2.2.29",Xpe=(e=[])=>({version:Ype,install:(n,r)=>{n[sg]||(n[sg]=!0,e.forEach(o=>n.use(o)),r&&qy(r,n,!0))}}),Zpe=Le({zIndex:{type:he([Number,String]),default:100},target:{type:String,default:""},offset:{type:Number,default:0},position:{type:String,values:["top","bottom"],default:"top"}}),Jpe={scroll:({scrollTop:e,fixed:t})=>Ze(e)&&rn(t),[Bt]:e=>rn(e)};var Ie=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n};const $8="ElAffix",Qpe=oe({name:$8}),e0e=oe({...Qpe,props:Zpe,emits:Jpe,setup(e,{expose:t,emit:n}){const r=e,o=Oe("affix"),a=xt(),s=xt(),l=xt(),{height:i}=VA(),{height:u,width:d,top:f,bottom:p,update:v}=Qm(s,{windowScroll:!1}),h=Qm(a),m=P(!1),_=P(0),g=P(0),b=$(()=>({height:m.value?`${u.value}px`:"",width:m.value?`${d.value}px`:""})),y=$(()=>{if(!m.value)return{};const S=r.offset?on(r.offset):0;return{height:`${u.value}px`,width:`${d.value}px`,top:r.position==="top"?S:"",bottom:r.position==="bottom"?S:"",transform:g.value?`translateY(${g.value}px)`:"",zIndex:r.zIndex}}),w=()=>{if(l.value)if(_.value=l.value instanceof Window?document.documentElement.scrollTop:l.value.scrollTop||0,r.position==="top")if(r.target){const S=h.bottom.value-r.offset-u.value;m.value=r.offset>f.value&&h.bottom.value>0,g.value=S<0?S:0}else m.value=r.offset>f.value;else if(r.target){const S=i.value-h.top.value-r.offset-u.value;m.value=i.value-r.offseth.top.value,g.value=S<0?-S:0}else m.value=i.value-r.offset{v(),n("scroll",{scrollTop:_.value,fixed:m.value})};return Ce(m,S=>n("change",S)),rt(()=>{var S;r.target?(a.value=(S=document.querySelector(r.target))!=null?S:void 0,a.value||un($8,`Target is not existed: ${r.target}`)):a.value=document.documentElement,l.value=jh(s.value,!0),v()}),Dt(l,"scroll",C),Qn(w),t({update:w,updateRoot:v}),(S,O)=>(E(),M("div",{ref_key:"root",ref:s,class:N(c(o).b()),style:We(c(b))},[k("div",{class:N({[c(o).m("fixed")]:m.value}),style:We(c(y))},[ke(S.$slots,"default")],6)],6))}});var t0e=Ie(e0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/affix/src/affix.vue"]]);const n0e=lt(t0e),r0e=Le({size:{type:he([Number,String])},color:{type:String}}),o0e=oe({name:"ElIcon",inheritAttrs:!1}),a0e=oe({...o0e,props:r0e,setup(e){const t=e,n=Oe("icon"),r=$(()=>{const{size:o,color:a}=t;return!o&&!a?{}:{fontSize:_n(o)?void 0:on(o),"--color":a}});return(o,a)=>(E(),M("i",ft({class:c(n).b(),style:c(r)},o.$attrs),[ke(o.$slots,"default")],16))}});var s0e=Ie(a0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/icon/src/icon.vue"]]);const Ke=lt(s0e),l0e=["light","dark"],i0e=Le({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:Mi(wa),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:l0e,default:"light"}}),u0e={close:e=>e instanceof MouseEvent},c0e=oe({name:"ElAlert"}),d0e=oe({...c0e,props:i0e,emits:u0e,setup(e,{emit:t}){const n=e,{Close:r}=Jh,o=En(),a=Oe("alert"),s=P(!0),l=$(()=>wa[n.type]),i=$(()=>[a.e("icon"),{[a.is("big")]:!!n.description||!!o.default}]),u=$(()=>({[a.is("bold")]:n.description||o.default})),d=f=>{s.value=!1,t("close",f)};return(f,p)=>(E(),me(tn,{name:c(a).b("fade"),persisted:""},{default:ue(()=>[ot(k("div",{class:N([c(a).b(),c(a).m(f.type),c(a).is("center",f.center),c(a).is(f.effect)]),role:"alert"},[f.showIcon&&c(l)?(E(),me(c(Ke),{key:0,class:N(c(i))},{default:ue(()=>[(E(),me(pt(c(l))))]),_:1},8,["class"])):fe("v-if",!0),k("div",{class:N(c(a).e("content"))},[f.title||f.$slots.title?(E(),M("span",{key:0,class:N([c(a).e("title"),c(u)])},[ke(f.$slots,"title",{},()=>[bt(xe(f.title),1)])],2)):fe("v-if",!0),f.$slots.default||f.description?(E(),M("p",{key:1,class:N(c(a).e("description"))},[ke(f.$slots,"default",{},()=>[bt(xe(f.description),1)])],2)):fe("v-if",!0),f.closable?(E(),M(qe,{key:2},[f.closeText?(E(),M("div",{key:0,class:N([c(a).e("close-btn"),c(a).is("customed")]),onClick:d},xe(f.closeText),3)):(E(),me(c(Ke),{key:1,class:N(c(a).e("close-btn")),onClick:d},{default:ue(()=>[X(c(r))]),_:1},8,["class"]))],64)):fe("v-if",!0)],2)],2),[[yt,s.value]])]),_:3},8,["name"]))}});var f0e=Ie(d0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/alert/src/alert.vue"]]);const p0e=lt(f0e);let $r;const h0e=` + height:0 !important; + visibility:hidden !important; + overflow:hidden !important; + position:absolute !important; + z-index:-1000 !important; + top:0 !important; + right:0 !important; +`,v0e=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing"];function m0e(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),r=Number.parseFloat(t.getPropertyValue("padding-bottom"))+Number.parseFloat(t.getPropertyValue("padding-top")),o=Number.parseFloat(t.getPropertyValue("border-bottom-width"))+Number.parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:v0e.map(s=>`${s}:${t.getPropertyValue(s)}`).join(";"),paddingSize:r,borderSize:o,boxSizing:n}}function kg(e,t=1,n){var r;$r||($r=document.createElement("textarea"),document.body.appendChild($r));const{paddingSize:o,borderSize:a,boxSizing:s,contextStyle:l}=m0e(e);$r.setAttribute("style",`${l};${h0e}`),$r.value=e.value||e.placeholder||"";let i=$r.scrollHeight;const u={};s==="border-box"?i=i+a:s==="content-box"&&(i=i-o),$r.value="";const d=$r.scrollHeight-o;if(Ze(t)){let f=d*t;s==="border-box"&&(f=f+o+a),i=Math.max(f,i),u.minHeight=`${f}px`}if(Ze(n)){let f=d*n;s==="border-box"&&(f=f+o+a),i=Math.min(f,i)}return u.height=`${i}px`,(r=$r.parentNode)==null||r.removeChild($r),$r=void 0,u}const g0e=Le({id:{type:String,default:void 0},size:On,disabled:Boolean,modelValue:{type:he([String,Number,Object]),default:""},type:{type:String,default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:he([Boolean,Object]),default:!1},autocomplete:{type:String,default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},showWordLimit:{type:Boolean,default:!1},suffixIcon:{type:zt},prefixIcon:{type:zt},containerRole:{type:String,default:void 0},label:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:he([Object,Array,String]),default:()=>jt({})}}),_0e={[ut]:e=>Qe(e),input:e=>Qe(e),change:e=>Qe(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent},b0e=["role"],y0e=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],w0e=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],E0e=oe({name:"ElInput",inheritAttrs:!1}),C0e=oe({...E0e,props:g0e,emits:_0e,setup(e,{expose:t,emit:n}){const r=e,o=El(),a=En(),s=$(()=>{const J={};return r.containerRole==="combobox"&&(J["aria-haspopup"]=o["aria-haspopup"],J["aria-owns"]=o["aria-owns"],J["aria-expanded"]=o["aria-expanded"]),J}),l=$(()=>[r.type==="textarea"?_.b():m.b(),m.m(v.value),m.is("disabled",h.value),m.is("exceed",le.value),{[m.b("group")]:a.prepend||a.append,[m.bm("group","append")]:a.append,[m.bm("group","prepend")]:a.prepend,[m.m("prefix")]:a.prefix||r.prefixIcon,[m.m("suffix")]:a.suffix||r.suffixIcon||r.clearable||r.showPassword,[m.bm("suffix","password-clear")]:x.value&&L.value},o.class]),i=$(()=>[m.e("wrapper"),m.is("focus",y.value)]),u=Qh({excludeKeys:$(()=>Object.keys(s.value))}),{form:d,formItem:f}=Wn(),{inputId:p}=$a(r,{formItemContext:f}),v=sn(),h=rr(),m=Oe("input"),_=Oe("textarea"),g=xt(),b=xt(),y=P(!1),w=P(!1),C=P(!1),S=P(!1),O=P(),T=xt(r.inputStyle),A=$(()=>g.value||b.value),R=$(()=>{var J;return(J=d==null?void 0:d.statusIcon)!=null?J:!1}),B=$(()=>(f==null?void 0:f.validateState)||""),V=$(()=>B.value&&My[B.value]),H=$(()=>S.value?ky:py),U=$(()=>[o.style,r.inputStyle]),K=$(()=>[r.inputStyle,T.value,{resize:r.resize}]),I=$(()=>yn(r.modelValue)?"":String(r.modelValue)),x=$(()=>r.clearable&&!h.value&&!r.readonly&&!!I.value&&(y.value||w.value)),L=$(()=>r.showPassword&&!h.value&&!r.readonly&&!!I.value&&(!!I.value||y.value)),z=$(()=>r.showWordLimit&&!!u.value.maxlength&&(r.type==="text"||r.type==="textarea")&&!h.value&&!r.readonly&&!r.showPassword),q=$(()=>Array.from(I.value).length),le=$(()=>!!z.value&&q.value>Number(u.value.maxlength)),G=$(()=>!!a.suffix||!!r.suffixIcon||x.value||r.showPassword||z.value||!!B.value&&R.value),[ae,be]=qpe(g);Rn(b,J=>{if(!z.value||r.resize!=="both")return;const _e=J[0],{width:De}=_e.contentRect;O.value={right:`calc(100% - ${De+15+6}px)`}});const te=()=>{const{type:J,autosize:_e}=r;if(!(!gt||J!=="textarea"))if(_e){const De=dt(_e)?_e.minRows:void 0,$e=dt(_e)?_e.maxRows:void 0;T.value={...kg(b.value,De,$e)}}else T.value={minHeight:kg(b.value).minHeight}},de=()=>{const J=A.value;!J||J.value===I.value||(J.value=I.value)},Z=async J=>{ae();let{value:_e}=J.target;if(r.formatter&&(_e=r.parser?r.parser(_e):_e,_e=r.formatter(_e)),!C.value){if(_e===I.value){de();return}n(ut,_e),n("input",_e),await He(),de(),be()}},Y=J=>{n("change",J.target.value)},ce=J=>{n("compositionstart",J),C.value=!0},ve=J=>{var _e;n("compositionupdate",J);const De=(_e=J.target)==null?void 0:_e.value,$e=De[De.length-1]||"";C.value=!Wd($e)},Ne=J=>{n("compositionend",J),C.value&&(C.value=!1,Z(J))},j=()=>{S.value=!S.value,D()},D=async()=>{var J;await He(),(J=A.value)==null||J.focus()},F=()=>{var J;return(J=A.value)==null?void 0:J.blur()},Q=J=>{y.value=!0,n("focus",J)},ge=J=>{var _e;y.value=!1,n("blur",J),r.validateEvent&&((_e=f==null?void 0:f.validate)==null||_e.call(f,"blur").catch(De=>void 0))},ne=J=>{w.value=!1,n("mouseleave",J)},Se=J=>{w.value=!0,n("mouseenter",J)},ye=J=>{n("keydown",J)},Te=()=>{var J;(J=A.value)==null||J.select()},we=()=>{n(ut,""),n("change",""),n("clear"),n("input","")};return Ce(()=>r.modelValue,()=>{var J;He(()=>te()),r.validateEvent&&((J=f==null?void 0:f.validate)==null||J.call(f,"change").catch(_e=>void 0))}),Ce(I,()=>de()),Ce(()=>r.type,async()=>{await He(),de(),te()}),rt(()=>{!r.formatter&&r.parser,de(),He(te)}),t({input:g,textarea:b,ref:A,textareaStyle:K,autosize:qt(r,"autosize"),focus:D,blur:F,select:Te,clear:we,resizeTextarea:te}),(J,_e)=>ot((E(),M("div",ft(c(s),{class:c(l),style:c(U),role:J.containerRole,onMouseenter:Se,onMouseleave:ne}),[fe(" input "),J.type!=="textarea"?(E(),M(qe,{key:0},[fe(" prepend slot "),J.$slots.prepend?(E(),M("div",{key:0,class:N(c(m).be("group","prepend"))},[ke(J.$slots,"prepend")],2)):fe("v-if",!0),k("div",{class:N(c(i))},[fe(" prefix slot "),J.$slots.prefix||J.prefixIcon?(E(),M("span",{key:0,class:N(c(m).e("prefix"))},[k("span",{class:N(c(m).e("prefix-inner")),onClick:D},[ke(J.$slots,"prefix"),J.prefixIcon?(E(),me(c(Ke),{key:0,class:N(c(m).e("icon"))},{default:ue(()=>[(E(),me(pt(J.prefixIcon)))]),_:1},8,["class"])):fe("v-if",!0)],2)],2)):fe("v-if",!0),k("input",ft({id:c(p),ref_key:"input",ref:g,class:c(m).e("inner")},c(u),{type:J.showPassword?S.value?"text":"password":J.type,disabled:c(h),formatter:J.formatter,parser:J.parser,readonly:J.readonly,autocomplete:J.autocomplete,tabindex:J.tabindex,"aria-label":J.label,placeholder:J.placeholder,style:J.inputStyle,form:r.form,onCompositionstart:ce,onCompositionupdate:ve,onCompositionend:Ne,onInput:Z,onFocus:Q,onBlur:ge,onChange:Y,onKeydown:ye}),null,16,y0e),fe(" suffix slot "),c(G)?(E(),M("span",{key:1,class:N(c(m).e("suffix"))},[k("span",{class:N(c(m).e("suffix-inner")),onClick:D},[!c(x)||!c(L)||!c(z)?(E(),M(qe,{key:0},[ke(J.$slots,"suffix"),J.suffixIcon?(E(),me(c(Ke),{key:0,class:N(c(m).e("icon"))},{default:ue(()=>[(E(),me(pt(J.suffixIcon)))]),_:1},8,["class"])):fe("v-if",!0)],64)):fe("v-if",!0),c(x)?(E(),me(c(Ke),{key:1,class:N([c(m).e("icon"),c(m).e("clear")]),onMousedown:Je(c(Ot),["prevent"]),onClick:we},{default:ue(()=>[X(c(Bo))]),_:1},8,["class","onMousedown"])):fe("v-if",!0),c(L)?(E(),me(c(Ke),{key:2,class:N([c(m).e("icon"),c(m).e("password")]),onClick:j},{default:ue(()=>[(E(),me(pt(c(H))))]),_:1},8,["class"])):fe("v-if",!0),c(z)?(E(),M("span",{key:3,class:N(c(m).e("count"))},[k("span",{class:N(c(m).e("count-inner"))},xe(c(q))+" / "+xe(c(u).maxlength),3)],2)):fe("v-if",!0),c(B)&&c(V)&&c(R)?(E(),me(c(Ke),{key:4,class:N([c(m).e("icon"),c(m).e("validateIcon"),c(m).is("loading",c(B)==="validating")])},{default:ue(()=>[(E(),me(pt(c(V))))]),_:1},8,["class"])):fe("v-if",!0)],2)],2)):fe("v-if",!0)],2),fe(" append slot "),J.$slots.append?(E(),M("div",{key:1,class:N(c(m).be("group","append"))},[ke(J.$slots,"append")],2)):fe("v-if",!0)],64)):(E(),M(qe,{key:1},[fe(" textarea "),k("textarea",ft({id:c(p),ref_key:"textarea",ref:b,class:c(_).e("inner")},c(u),{tabindex:J.tabindex,disabled:c(h),readonly:J.readonly,autocomplete:J.autocomplete,style:c(K),"aria-label":J.label,placeholder:J.placeholder,form:r.form,onCompositionstart:ce,onCompositionupdate:ve,onCompositionend:Ne,onInput:Z,onFocus:Q,onBlur:ge,onChange:Y,onKeydown:ye}),null,16,w0e),c(z)?(E(),M("span",{key:0,style:We(O.value),class:N(c(m).e("count"))},xe(c(q))+" / "+xe(c(u).maxlength),7)):fe("v-if",!0)],64))],16,b0e)),[[yt,J.type!=="hidden"]])}});var S0e=Ie(C0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/input/src/input.vue"]]);const Nn=lt(S0e),Ns=4,T8={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},k0e=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),$0e=Le({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),T0e="Thumb",O0e=oe({__name:"thumb",props:$0e,setup(e){const t=e,n=Fe(Fy),r=Oe("scrollbar");n||un(T0e,"can not inject scrollbar context");const o=P(),a=P(),s=P({}),l=P(!1);let i=!1,u=!1,d=gt?document.onselectstart:null;const f=$(()=>T8[t.vertical?"vertical":"horizontal"]),p=$(()=>k0e({size:t.size,move:t.move,bar:f.value})),v=$(()=>o.value[f.value.offset]**2/n.wrapElement[f.value.scrollSize]/t.ratio/a.value[f.value.offset]),h=S=>{var O;if(S.stopPropagation(),S.ctrlKey||[1,2].includes(S.button))return;(O=window.getSelection())==null||O.removeAllRanges(),_(S);const T=S.currentTarget;T&&(s.value[f.value.axis]=T[f.value.offset]-(S[f.value.client]-T.getBoundingClientRect()[f.value.direction]))},m=S=>{if(!a.value||!o.value||!n.wrapElement)return;const O=Math.abs(S.target.getBoundingClientRect()[f.value.direction]-S[f.value.client]),T=a.value[f.value.offset]/2,A=(O-T)*100*v.value/o.value[f.value.offset];n.wrapElement[f.value.scroll]=A*n.wrapElement[f.value.scrollSize]/100},_=S=>{S.stopImmediatePropagation(),i=!0,document.addEventListener("mousemove",g),document.addEventListener("mouseup",b),d=document.onselectstart,document.onselectstart=()=>!1},g=S=>{if(!o.value||!a.value||i===!1)return;const O=s.value[f.value.axis];if(!O)return;const T=(o.value.getBoundingClientRect()[f.value.direction]-S[f.value.client])*-1,A=a.value[f.value.offset]-O,R=(T-A)*100*v.value/o.value[f.value.offset];n.wrapElement[f.value.scroll]=R*n.wrapElement[f.value.scrollSize]/100},b=()=>{i=!1,s.value[f.value.axis]=0,document.removeEventListener("mousemove",g),document.removeEventListener("mouseup",b),C(),u&&(l.value=!1)},y=()=>{u=!1,l.value=!!t.size},w=()=>{u=!0,l.value=i};Ut(()=>{C(),document.removeEventListener("mouseup",b)});const C=()=>{document.onselectstart!==d&&(document.onselectstart=d)};return Dt(qt(n,"scrollbarElement"),"mousemove",y),Dt(qt(n,"scrollbarElement"),"mouseleave",w),(S,O)=>(E(),me(tn,{name:c(r).b("fade"),persisted:""},{default:ue(()=>[ot(k("div",{ref_key:"instance",ref:o,class:N([c(r).e("bar"),c(r).is(c(f).key)]),onMousedown:m},[k("div",{ref_key:"thumb",ref:a,class:N(c(r).e("thumb")),style:We(c(p)),onMousedown:h},null,38)],34),[[yt,S.always||l.value]])]),_:1},8,["name"]))}});var $g=Ie(O0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/thumb.vue"]]);const M0e=Le({always:{type:Boolean,default:!0},width:String,height:String,ratioX:{type:Number,default:1},ratioY:{type:Number,default:1}}),N0e=oe({__name:"bar",props:M0e,setup(e,{expose:t}){const n=e,r=P(0),o=P(0);return t({handleScroll:s=>{if(s){const l=s.offsetHeight-Ns,i=s.offsetWidth-Ns;o.value=s.scrollTop*100/l*n.ratioY,r.value=s.scrollLeft*100/i*n.ratioX}}}),(s,l)=>(E(),M(qe,null,[X($g,{move:r.value,ratio:s.ratioX,size:s.width,always:s.always},null,8,["move","ratio","size","always"]),X($g,{move:o.value,ratio:s.ratioY,size:s.height,vertical:"",always:s.always},null,8,["move","ratio","size","always"])],64))}});var A0e=Ie(N0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/bar.vue"]]);const R0e=Le({height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:{type:Boolean,default:!1},wrapStyle:{type:he([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20}}),x0e={scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(Ze)},I0e="ElScrollbar",L0e=oe({name:I0e}),P0e=oe({...L0e,props:R0e,emits:x0e,setup(e,{expose:t,emit:n}){const r=e,o=Oe("scrollbar");let a,s;const l=P(),i=P(),u=P(),d=P("0"),f=P("0"),p=P(),v=P(1),h=P(1),m=$(()=>{const O={};return r.height&&(O.height=on(r.height)),r.maxHeight&&(O.maxHeight=on(r.maxHeight)),[r.wrapStyle,O]}),_=$(()=>[r.wrapClass,o.e("wrap"),{[o.em("wrap","hidden-default")]:!r.native}]),g=$(()=>[o.e("view"),r.viewClass]),b=()=>{var O;i.value&&((O=p.value)==null||O.handleScroll(i.value),n("scroll",{scrollTop:i.value.scrollTop,scrollLeft:i.value.scrollLeft}))};function y(O,T){dt(O)?i.value.scrollTo(O):Ze(O)&&Ze(T)&&i.value.scrollTo(O,T)}const w=O=>{Ze(O)&&(i.value.scrollTop=O)},C=O=>{Ze(O)&&(i.value.scrollLeft=O)},S=()=>{if(!i.value)return;const O=i.value.offsetHeight-Ns,T=i.value.offsetWidth-Ns,A=O**2/i.value.scrollHeight,R=T**2/i.value.scrollWidth,B=Math.max(A,r.minSize),V=Math.max(R,r.minSize);v.value=A/(O-A)/(B/(O-B)),h.value=R/(T-R)/(V/(T-V)),f.value=B+Nsr.noresize,O=>{O?(a==null||a(),s==null||s()):({stop:a}=Rn(u,S),s=Dt("resize",S))},{immediate:!0}),Ce(()=>[r.maxHeight,r.height],()=>{r.native||He(()=>{var O;S(),i.value&&((O=p.value)==null||O.handleScroll(i.value))})}),ct(Fy,Et({scrollbarElement:l,wrapElement:i})),rt(()=>{r.native||He(()=>{S()})}),lo(()=>S()),t({wrapRef:i,update:S,scrollTo:y,setScrollTop:w,setScrollLeft:C,handleScroll:b}),(O,T)=>(E(),M("div",{ref_key:"scrollbarRef",ref:l,class:N(c(o).b())},[k("div",{ref_key:"wrapRef",ref:i,class:N(c(_)),style:We(c(m)),onScroll:b},[(E(),me(pt(O.tag),{ref_key:"resizeRef",ref:u,class:N(c(g)),style:We(O.viewStyle)},{default:ue(()=>[ke(O.$slots,"default")]),_:3},8,["class","style"]))],38),O.native?fe("v-if",!0):(E(),me(A0e,{key:0,ref_key:"barRef",ref:p,height:f.value,width:d.value,always:O.always,"ratio-x":h.value,"ratio-y":v.value},null,8,["height","width","always","ratio-x","ratio-y"]))],2))}});var D0e=Ie(P0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/scrollbar.vue"]]);const Wo=lt(D0e),z0e=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],O8=Le({role:{type:String,values:z0e,default:"tooltip"}}),V0e=oe({name:"ElPopper",inheritAttrs:!1}),B0e=oe({...V0e,props:O8,setup(e,{expose:t}){const n=e,r=P(),o=P(),a=P(),s=P(),l=$(()=>n.role),i={triggerRef:r,popperInstanceRef:o,contentRef:a,referenceRef:s,role:l};return t(i),ct(ev,i),(u,d)=>ke(u.$slots,"default")}});var F0e=Ie(B0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/popper.vue"]]);const M8=Le({arrowOffset:{type:Number,default:5}}),H0e=oe({name:"ElPopperArrow",inheritAttrs:!1}),U0e=oe({...H0e,props:M8,setup(e,{expose:t}){const n=e,r=Oe("popper"),{arrowOffset:o,arrowRef:a,arrowStyle:s}=Fe(Ky,void 0);return Ce(()=>n.arrowOffset,l=>{o.value=l}),Ut(()=>{a.value=void 0}),t({arrowRef:a}),(l,i)=>(E(),M("span",{ref_key:"arrowRef",ref:a,class:N(c(r).e("arrow")),style:We(c(s)),"data-popper-arrow":""},null,6))}});var K0e=Ie(U0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/arrow.vue"]]);const W0e="ElOnlyChild",N8=oe({name:W0e,setup(e,{slots:t,attrs:n}){var r;const o=Fe(f8),a=_pe((r=o==null?void 0:o.setForwardRef)!=null?r:Ot);return()=>{var s;const l=(s=t.default)==null?void 0:s.call(t,n);if(!l||l.length>1)return null;const i=A8(l);return i?ot(no(i,n),[[a]]):null}}});function A8(e){if(!e)return null;const t=e;for(const n of t){if(dt(n))switch(n.type){case bn:continue;case Ao:case"svg":return Tg(n);case qe:return A8(n.children);default:return n}return Tg(n)}return null}function Tg(e){const t=Oe("only-child");return X("span",{class:t.e("content")},[e])}const R8=Le({virtualRef:{type:he(Object)},virtualTriggering:Boolean,onMouseenter:{type:he(Function)},onMouseleave:{type:he(Function)},onClick:{type:he(Function)},onKeydown:{type:he(Function)},onFocus:{type:he(Function)},onBlur:{type:he(Function)},onContextmenu:{type:he(Function)},id:String,open:Boolean}),j0e=oe({name:"ElPopperTrigger",inheritAttrs:!1}),q0e=oe({...j0e,props:R8,setup(e,{expose:t}){const n=e,{role:r,triggerRef:o}=Fe(ev,void 0);gpe(o);const a=$(()=>l.value?n.id:void 0),s=$(()=>{if(r&&r.value==="tooltip")return n.open&&n.id?n.id:void 0}),l=$(()=>{if(r&&r.value!=="tooltip")return r.value}),i=$(()=>l.value?`${n.open}`:void 0);let u;return rt(()=>{Ce(()=>n.virtualRef,d=>{d&&(o.value=zn(d))},{immediate:!0}),Ce(o,(d,f)=>{u==null||u(),u=void 0,Pr(d)&&(["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"].forEach(p=>{var v;const h=n[p];h&&(d.addEventListener(p.slice(2).toLowerCase(),h),(v=f==null?void 0:f.removeEventListener)==null||v.call(f,p.slice(2).toLowerCase(),h))}),u=Ce([a,s,l,i],p=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((v,h)=>{yn(p[h])?d.removeAttribute(v):d.setAttribute(v,p[h])})},{immediate:!0})),Pr(f)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(p=>f.removeAttribute(p))},{immediate:!0})}),Ut(()=>{u==null||u(),u=void 0}),t({triggerRef:o}),(d,f)=>d.virtualTriggering?fe("v-if",!0):(E(),me(c(N8),ft({key:0},d.$attrs,{"aria-controls":c(a),"aria-describedby":c(s),"aria-expanded":c(i),"aria-haspopup":c(l)}),{default:ue(()=>[ke(d.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var G0e=Ie(q0e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/trigger.vue"]]);const Vf="focus-trap.focus-after-trapped",Bf="focus-trap.focus-after-released",Y0e="focus-trap.focusout-prevented",Og={cancelable:!0,bubbles:!1},X0e={cancelable:!0,bubbles:!1},Mg="focusAfterTrapped",Ng="focusAfterReleased",mv=Symbol("elFocusTrap"),gv=P(),tf=P(0),_v=P(0);let Bu=0;const x8=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0||r===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},Ag=(e,t)=>{for(const n of e)if(!Z0e(n,t))return n},Z0e=(e,t)=>{if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},J0e=e=>{const t=x8(e),n=Ag(t,e),r=Ag(t.reverse(),e);return[n,r]},Q0e=e=>e instanceof HTMLInputElement&&"select"in e,ta=(e,t)=>{if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),_v.value=window.performance.now(),e!==n&&Q0e(e)&&t&&e.select()}};function Rg(e,t){const n=[...e],r=e.indexOf(t);return r!==-1&&n.splice(r,1),n}const e2e=()=>{let e=[];return{push:r=>{const o=e[0];o&&r!==o&&o.pause(),e=Rg(e,r),e.unshift(r)},remove:r=>{var o,a;e=Rg(e,r),(a=(o=e[0])==null?void 0:o.resume)==null||a.call(o)}}},t2e=(e,t=!1)=>{const n=document.activeElement;for(const r of e)if(ta(r,t),document.activeElement!==n)return},xg=e2e(),n2e=()=>tf.value>_v.value,Fu=()=>{gv.value="pointer",tf.value=window.performance.now()},Ig=()=>{gv.value="keyboard",tf.value=window.performance.now()},r2e=()=>(rt(()=>{Bu===0&&(document.addEventListener("mousedown",Fu),document.addEventListener("touchstart",Fu),document.addEventListener("keydown",Ig)),Bu++}),Ut(()=>{Bu--,Bu<=0&&(document.removeEventListener("mousedown",Fu),document.removeEventListener("touchstart",Fu),document.removeEventListener("keydown",Ig))}),{focusReason:gv,lastUserFocusTimestamp:tf,lastAutomatedFocusTimestamp:_v}),Hu=e=>new CustomEvent(Y0e,{...X0e,detail:e}),o2e=oe({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[Mg,Ng,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=P();let r,o;const{focusReason:a}=r2e();ppe(h=>{e.trapped&&!s.paused&&t("release-requested",h)});const s={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},l=h=>{if(!e.loop&&!e.trapped||s.paused)return;const{key:m,altKey:_,ctrlKey:g,metaKey:b,currentTarget:y,shiftKey:w}=h,{loop:C}=e,S=m===Ge.tab&&!_&&!g&&!b,O=document.activeElement;if(S&&O){const T=y,[A,R]=J0e(T);if(A&&R){if(!w&&O===R){const V=Hu({focusReason:a.value});t("focusout-prevented",V),V.defaultPrevented||(h.preventDefault(),C&&ta(A,!0))}else if(w&&[A,T].includes(O)){const V=Hu({focusReason:a.value});t("focusout-prevented",V),V.defaultPrevented||(h.preventDefault(),C&&ta(R,!0))}}else if(O===T){const V=Hu({focusReason:a.value});t("focusout-prevented",V),V.defaultPrevented||h.preventDefault()}}};ct(mv,{focusTrapRef:n,onKeydown:l}),Ce(()=>e.focusTrapEl,h=>{h&&(n.value=h)},{immediate:!0}),Ce([n],([h],[m])=>{h&&(h.addEventListener("keydown",l),h.addEventListener("focusin",d),h.addEventListener("focusout",f)),m&&(m.removeEventListener("keydown",l),m.removeEventListener("focusin",d),m.removeEventListener("focusout",f))});const i=h=>{t(Mg,h)},u=h=>t(Ng,h),d=h=>{const m=c(n);if(!m)return;const _=h.target,g=h.relatedTarget,b=_&&m.contains(_);e.trapped||g&&m.contains(g)||(r=g),b&&t("focusin",h),!s.paused&&e.trapped&&(b?o=_:ta(o,!0))},f=h=>{const m=c(n);if(!(s.paused||!m))if(e.trapped){const _=h.relatedTarget;!yn(_)&&!m.contains(_)&&setTimeout(()=>{if(!s.paused&&e.trapped){const g=Hu({focusReason:a.value});t("focusout-prevented",g),g.defaultPrevented||ta(o,!0)}},0)}else{const _=h.target;_&&m.contains(_)||t("focusout",h)}};async function p(){await He();const h=c(n);if(h){xg.push(s);const m=h.contains(document.activeElement)?r:document.activeElement;if(r=m,!h.contains(m)){const g=new Event(Vf,Og);h.addEventListener(Vf,i),h.dispatchEvent(g),g.defaultPrevented||He(()=>{let b=e.focusStartEl;Qe(b)||(ta(b),document.activeElement!==b&&(b="first")),b==="first"&&t2e(x8(h),!0),(document.activeElement===m||b==="container")&&ta(h)})}}}function v(){const h=c(n);if(h){h.removeEventListener(Vf,i);const m=new CustomEvent(Bf,{...Og,detail:{focusReason:a.value}});h.addEventListener(Bf,u),h.dispatchEvent(m),!m.defaultPrevented&&(a.value=="keyboard"||!n2e())&&ta(r??document.body),h.removeEventListener(Bf,i),xg.remove(s)}}return rt(()=>{e.trapped&&p(),Ce(()=>e.trapped,h=>{h?p():v()})}),Ut(()=>{e.trapped&&v()}),{onKeydown:l}}});function a2e(e,t,n,r,o,a){return ke(e.$slots,"default",{handleKeydown:e.onKeydown})}var nf=Ie(o2e,[["render",a2e],["__file","/home/runner/work/element-plus/element-plus/packages/components/focus-trap/src/focus-trap.vue"]]);const s2e=["fixed","absolute"],l2e=Le({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:he(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:vs,default:"bottom"},popperOptions:{type:he(Object),default:()=>({})},strategy:{type:String,values:s2e,default:"absolute"}}),I8=Le({...l2e,id:String,style:{type:he([String,Array,Object])},className:{type:he([String,Array,Object])},effect:{type:String,default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:{type:Boolean,default:!1},trapping:{type:Boolean,default:!1},popperClass:{type:he([String,Array,Object])},popperStyle:{type:he([String,Array,Object])},referenceEl:{type:he(Object)},triggerTargetEl:{type:he(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},ariaLabel:{type:String,default:void 0},virtualTriggering:Boolean,zIndex:Number}),i2e={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},u2e=(e,t=[])=>{const{placement:n,strategy:r,popperOptions:o}=e,a={placement:n,strategy:r,...o,modifiers:[...d2e(e),...t]};return f2e(a,o==null?void 0:o.modifiers),a},c2e=e=>{if(gt)return zn(e)};function d2e(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:r}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5,fallbackPlacements:r}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function f2e(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const p2e=0,h2e=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:r,role:o}=Fe(ev,void 0),a=P(),s=P(),l=$(()=>({name:"eventListeners",enabled:!!e.visible})),i=$(()=>{var g;const b=c(a),y=(g=c(s))!=null?g:p2e;return{name:"arrow",enabled:!fN(b),options:{element:b,padding:y}}}),u=$(()=>({onFirstUpdate:()=>{h()},...u2e(e,[c(i),c(l)])})),d=$(()=>c2e(e.referenceEl)||c(r)),{attributes:f,state:p,styles:v,update:h,forceUpdate:m,instanceRef:_}=ipe(d,n,u);return Ce(_,g=>t.value=g),rt(()=>{Ce(()=>{var g;return(g=c(d))==null?void 0:g.getBoundingClientRect()},()=>{h()})}),{attributes:f,arrowRef:a,contentRef:n,instanceRef:_,state:p,styles:v,role:o,forceUpdate:m,update:h}},v2e=(e,{attributes:t,styles:n,role:r})=>{const{nextZIndex:o}=Ko(),a=Oe("popper"),s=$(()=>c(t).popper),l=P(e.zIndex||o()),i=$(()=>[a.b(),a.is("pure",e.pure),a.is(e.effect),e.popperClass]),u=$(()=>[{zIndex:c(l)},e.popperStyle||{},c(n).popper]),d=$(()=>r.value==="dialog"?"false":void 0),f=$(()=>c(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:s,contentClass:i,contentStyle:u,contentZIndex:l,updateZIndex:()=>{l.value=e.zIndex||o()}}},m2e=(e,t)=>{const n=P(!1),r=P();return{focusStartRef:r,trapped:n,onFocusAfterReleased:u=>{var d;((d=u.detail)==null?void 0:d.focusReason)!=="pointer"&&(r.value="first",t("blur"))},onFocusAfterTrapped:()=>{t("focus")},onFocusInTrap:u=>{e.visible&&!n.value&&(u.target&&(r.value=u.target),n.value=!0)},onFocusoutPrevented:u=>{e.trapping||(u.detail.focusReason==="pointer"&&u.preventDefault(),n.value=!1)},onReleaseRequested:()=>{n.value=!1,t("close")}}},g2e=oe({name:"ElPopperContent"}),_2e=oe({...g2e,props:I8,emits:i2e,setup(e,{expose:t,emit:n}){const r=e,{focusStartRef:o,trapped:a,onFocusAfterReleased:s,onFocusAfterTrapped:l,onFocusInTrap:i,onFocusoutPrevented:u,onReleaseRequested:d}=m2e(r,n),{attributes:f,arrowRef:p,contentRef:v,styles:h,instanceRef:m,role:_,update:g}=h2e(r),{ariaModal:b,arrowStyle:y,contentAttrs:w,contentClass:C,contentStyle:S,updateZIndex:O}=v2e(r,{styles:h,attributes:f,role:_}),T=Fe(oo,void 0),A=P();ct(Ky,{arrowStyle:y,arrowRef:p,arrowOffset:A}),T&&(T.addInputId||T.removeInputId)&&ct(oo,{...T,addInputId:Ot,removeInputId:Ot});let R;const B=(H=!0)=>{g(),H&&O()},V=()=>{B(!1),r.visible&&r.focusOnShow?a.value=!0:r.visible===!1&&(a.value=!1)};return rt(()=>{Ce(()=>r.triggerTargetEl,(H,U)=>{R==null||R(),R=void 0;const K=c(H||v.value),I=c(U||v.value);Pr(K)&&(R=Ce([_,()=>r.ariaLabel,b,()=>r.id],x=>{["role","aria-label","aria-modal","id"].forEach((L,z)=>{yn(x[z])?K.removeAttribute(L):K.setAttribute(L,x[z])})},{immediate:!0})),I!==K&&Pr(I)&&["role","aria-label","aria-modal","id"].forEach(x=>{I.removeAttribute(x)})},{immediate:!0}),Ce(()=>r.visible,V,{immediate:!0})}),Ut(()=>{R==null||R(),R=void 0}),t({popperContentRef:v,popperInstanceRef:m,updatePopper:B,contentStyle:S}),(H,U)=>(E(),M("div",ft({ref_key:"contentRef",ref:v},c(w),{style:c(S),class:c(C),tabindex:"-1",onMouseenter:U[0]||(U[0]=K=>H.$emit("mouseenter",K)),onMouseleave:U[1]||(U[1]=K=>H.$emit("mouseleave",K))}),[X(c(nf),{trapped:c(a),"trap-on-focus-in":!0,"focus-trap-el":c(v),"focus-start-el":c(o),onFocusAfterTrapped:c(l),onFocusAfterReleased:c(s),onFocusin:c(i),onFocusoutPrevented:c(u),onReleaseRequested:c(d)},{default:ue(()=>[ke(H.$slots,"default")]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16))}});var b2e=Ie(_2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/content.vue"]]);const L8=lt(F0e),y2e=Oe("tooltip"),gn=Le({...mpe,...I8,appendTo:{type:he([String,Object])},content:{type:String,default:""},rawContent:{type:Boolean,default:!1},persistent:Boolean,ariaLabel:String,visible:{type:he(Boolean),default:null},transition:{type:String,default:`${y2e.namespace.value}-fade-in-linear`},teleported:{type:Boolean,default:!0},disabled:{type:Boolean}}),Li=Le({...R8,disabled:Boolean,trigger:{type:he([String,Array]),default:"hover"},triggerKeys:{type:he(Array),default:()=>[Ge.enter,Ge.space]}}),{useModelToggleProps:w2e,useModelToggleEmits:E2e,useModelToggle:C2e}=Zy("visible"),S2e=Le({...O8,...w2e,...gn,...Li,...M8,showArrow:{type:Boolean,default:!0}}),k2e=[...E2e,"before-show","before-hide","show","hide","open","close"],$2e=(e,t)=>Ve(e)?e.includes(t):e===t,ms=(e,t,n)=>r=>{$2e(c(e),t)&&n(r)},T2e=oe({name:"ElTooltipTrigger"}),O2e=oe({...T2e,props:Li,setup(e,{expose:t}){const n=e,r=Oe("tooltip"),{controlled:o,id:a,open:s,onOpen:l,onClose:i,onToggle:u}=Fe(Yd,void 0),d=P(null),f=()=>{if(c(o)||n.disabled)return!0},p=qt(n,"trigger"),v=Yt(f,ms(p,"hover",l)),h=Yt(f,ms(p,"hover",i)),m=Yt(f,ms(p,"click",w=>{w.button===0&&u(w)})),_=Yt(f,ms(p,"focus",l)),g=Yt(f,ms(p,"focus",i)),b=Yt(f,ms(p,"contextmenu",w=>{w.preventDefault(),u(w)})),y=Yt(f,w=>{const{code:C}=w;n.triggerKeys.includes(C)&&(w.preventDefault(),u(w))});return t({triggerRef:d}),(w,C)=>(E(),me(c(G0e),{id:c(a),"virtual-ref":w.virtualRef,open:c(s),"virtual-triggering":w.virtualTriggering,class:N(c(r).e("trigger")),onBlur:c(g),onClick:c(m),onContextmenu:c(b),onFocus:c(_),onMouseenter:c(v),onMouseleave:c(h),onKeydown:c(y)},{default:ue(()=>[ke(w.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var M2e=Ie(O2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/trigger.vue"]]);const N2e=oe({name:"ElTooltipContent",inheritAttrs:!1}),A2e=oe({...N2e,props:gn,setup(e,{expose:t}){const n=e,{selector:r}=c8(),o=P(null),a=P(!1),{controlled:s,id:l,open:i,trigger:u,onClose:d,onOpen:f,onShow:p,onHide:v,onBeforeShow:h,onBeforeHide:m}=Fe(Yd,void 0),_=$(()=>n.persistent);Ut(()=>{a.value=!0});const g=$(()=>c(_)?!0:c(i)),b=$(()=>n.disabled?!1:c(i)),y=$(()=>n.appendTo||r.value),w=$(()=>{var K;return(K=n.style)!=null?K:{}}),C=$(()=>!c(i)),S=()=>{v()},O=()=>{if(c(s))return!0},T=Yt(O,()=>{n.enterable&&c(u)==="hover"&&f()}),A=Yt(O,()=>{c(u)==="hover"&&d()}),R=()=>{var K,I;(I=(K=o.value)==null?void 0:K.updatePopper)==null||I.call(K),h==null||h()},B=()=>{m==null||m()},V=()=>{p(),U=Kh($(()=>{var K;return(K=o.value)==null?void 0:K.popperContentRef}),()=>{if(c(s))return;c(u)!=="hover"&&d()})},H=()=>{n.virtualTriggering||d()};let U;return Ce(()=>c(i),K=>{K||U==null||U()},{flush:"post"}),Ce(()=>n.content,()=>{var K,I;(I=(K=o.value)==null?void 0:K.updatePopper)==null||I.call(K)}),t({contentRef:o}),(K,I)=>(E(),me(au,{disabled:!K.teleported,to:c(y)},[X(tn,{name:K.transition,onAfterLeave:S,onBeforeEnter:R,onAfterEnter:V,onBeforeLeave:B},{default:ue(()=>[c(g)?ot((E(),me(c(b2e),ft({key:0,id:c(l),ref_key:"contentRef",ref:o},K.$attrs,{"aria-label":K.ariaLabel,"aria-hidden":c(C),"boundaries-padding":K.boundariesPadding,"fallback-placements":K.fallbackPlacements,"gpu-acceleration":K.gpuAcceleration,offset:K.offset,placement:K.placement,"popper-options":K.popperOptions,strategy:K.strategy,effect:K.effect,enterable:K.enterable,pure:K.pure,"popper-class":K.popperClass,"popper-style":[K.popperStyle,c(w)],"reference-el":K.referenceEl,"trigger-target-el":K.triggerTargetEl,visible:c(b),"z-index":K.zIndex,onMouseenter:c(T),onMouseleave:c(A),onBlur:H,onClose:c(d)}),{default:ue(()=>[a.value?fe("v-if",!0):ke(K.$slots,"default",{key:0})]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","onMouseenter","onMouseleave","onClose"])),[[yt,c(b)]]):fe("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"]))}});var R2e=Ie(A2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/content.vue"]]);const x2e=["innerHTML"],I2e={key:1},L2e=oe({name:"ElTooltip"}),P2e=oe({...L2e,props:S2e,emits:k2e,setup(e,{expose:t,emit:n}){const r=e;vpe();const o=Dr(),a=P(),s=P(),l=()=>{var g;const b=c(a);b&&((g=b.popperInstanceRef)==null||g.update())},i=P(!1),u=P(),{show:d,hide:f,hasUpdateHandler:p}=C2e({indicator:i,toggleReason:u}),{onOpen:v,onClose:h}=d8({showAfter:qt(r,"showAfter"),hideAfter:qt(r,"hideAfter"),open:d,close:f}),m=$(()=>rn(r.visible)&&!p.value);ct(Yd,{controlled:m,id:o,open:us(i),trigger:qt(r,"trigger"),onOpen:g=>{v(g)},onClose:g=>{h(g)},onToggle:g=>{c(i)?h(g):v(g)},onShow:()=>{n("show",u.value)},onHide:()=>{n("hide",u.value)},onBeforeShow:()=>{n("before-show",u.value)},onBeforeHide:()=>{n("before-hide",u.value)},updatePopper:l}),Ce(()=>r.disabled,g=>{g&&i.value&&(i.value=!1)});const _=()=>{var g,b;const y=(b=(g=s.value)==null?void 0:g.contentRef)==null?void 0:b.popperContentRef;return y&&y.contains(document.activeElement)};return O6(()=>i.value&&f()),t({popperRef:a,contentRef:s,isFocusInsideContent:_,updatePopper:l,onOpen:v,onClose:h,hide:f}),(g,b)=>(E(),me(c(L8),{ref_key:"popperRef",ref:a,role:g.role},{default:ue(()=>[X(M2e,{disabled:g.disabled,trigger:g.trigger,"trigger-keys":g.triggerKeys,"virtual-ref":g.virtualRef,"virtual-triggering":g.virtualTriggering},{default:ue(()=>[g.$slots.default?ke(g.$slots,"default",{key:0}):fe("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering"]),X(R2e,{ref_key:"contentRef",ref:s,"aria-label":g.ariaLabel,"boundaries-padding":g.boundariesPadding,content:g.content,disabled:g.disabled,effect:g.effect,enterable:g.enterable,"fallback-placements":g.fallbackPlacements,"hide-after":g.hideAfter,"gpu-acceleration":g.gpuAcceleration,offset:g.offset,persistent:g.persistent,"popper-class":g.popperClass,"popper-style":g.popperStyle,placement:g.placement,"popper-options":g.popperOptions,pure:g.pure,"raw-content":g.rawContent,"reference-el":g.referenceEl,"trigger-target-el":g.triggerTargetEl,"show-after":g.showAfter,strategy:g.strategy,teleported:g.teleported,transition:g.transition,"virtual-triggering":g.virtualTriggering,"z-index":g.zIndex,"append-to":g.appendTo},{default:ue(()=>[ke(g.$slots,"content",{},()=>[g.rawContent?(E(),M("span",{key:0,innerHTML:g.content},null,8,x2e)):(E(),M("span",I2e,xe(g.content),1))]),g.showArrow?(E(),me(c(K0e),{key:0,"arrow-offset":g.arrowOffset},null,8,["arrow-offset"])):fe("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to"])]),_:3},8,["role"]))}});var D2e=Ie(P2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/tooltip.vue"]]);const Kn=lt(D2e),z2e=Le({valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:he(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:he([Function,Array]),default:Ot},popperClass:{type:String,default:""},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:{type:Boolean,default:!1},hideLoading:{type:Boolean,default:!1},label:{type:String},teleported:gn.teleported,highlightFirstItem:{type:Boolean,default:!1},fitInputWidth:{type:Boolean,default:!1}}),V2e={[ut]:e=>Qe(e),[Bn]:e=>Qe(e),[Bt]:e=>Qe(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>dt(e)},B2e=["aria-expanded","aria-owns"],F2e={key:0},H2e=["id","aria-selected","onClick"],P8="ElAutocomplete",U2e=oe({name:P8,inheritAttrs:!1}),K2e=oe({...U2e,props:z2e,emits:V2e,setup(e,{expose:t,emit:n}){const r=e,o=Qh(),a=El(),s=rr(),l=Oe("autocomplete"),i=P(),u=P(),d=P(),f=P();let p=!1,v=!1;const h=P([]),m=P(-1),_=P(""),g=P(!1),b=P(!1),y=P(!1),w=$(()=>l.b(String(qd()))),C=$(()=>a.style),S=$(()=>(h.value.length>0||y.value)&&g.value),O=$(()=>!r.hideLoading&&y.value),T=$(()=>i.value?Array.from(i.value.$el.querySelectorAll("input")):[]),A=async()=>{await He(),S.value&&(_.value=`${i.value.$el.offsetWidth}px`)},R=()=>{v=!0},B=()=>{v=!1,m.value=-1},H=Un(async Z=>{if(b.value)return;const Y=ce=>{y.value=!1,!b.value&&(Ve(ce)?(h.value=ce,m.value=r.highlightFirstItem?0:-1):un(P8,"autocomplete suggestions must be an array"))};if(y.value=!0,Ve(r.fetchSuggestions))Y(r.fetchSuggestions);else{const ce=await r.fetchSuggestions(Z,Y);Ve(ce)&&Y(ce)}},r.debounce),U=Z=>{const Y=!!Z;if(n(Bn,Z),n(ut,Z),b.value=!1,g.value||(g.value=Y),!r.triggerOnFocus&&!Z){b.value=!0,h.value=[];return}H(Z)},K=Z=>{var Y;s.value||(((Y=Z.target)==null?void 0:Y.tagName)!=="INPUT"||T.value.includes(document.activeElement))&&(g.value=!0)},I=Z=>{n(Bt,Z)},x=Z=>{v||(g.value=!0,n("focus",Z),r.triggerOnFocus&&!p&&H(String(r.modelValue)))},L=Z=>{v||n("blur",Z)},z=()=>{g.value=!1,n(ut,""),n("clear")},q=async()=>{S.value&&m.value>=0&&m.value{S.value&&(Z.preventDefault(),Z.stopPropagation(),G())},G=()=>{g.value=!1},ae=()=>{var Z;(Z=i.value)==null||Z.focus()},be=()=>{var Z;(Z=i.value)==null||Z.blur()},te=async Z=>{n(Bn,Z[r.valueKey]),n(ut,Z[r.valueKey]),n("select",Z),h.value=[],m.value=-1},de=Z=>{if(!S.value||y.value)return;if(Z<0){m.value=-1;return}Z>=h.value.length&&(Z=h.value.length-1);const Y=u.value.querySelector(`.${l.be("suggestion","wrap")}`),ve=Y.querySelectorAll(`.${l.be("suggestion","list")} li`)[Z],Ne=Y.scrollTop,{offsetTop:j,scrollHeight:D}=ve;j+D>Ne+Y.clientHeight&&(Y.scrollTop+=D),j{S.value&&G()}),rt(()=>{i.value.ref.setAttribute("role","textbox"),i.value.ref.setAttribute("aria-autocomplete","list"),i.value.ref.setAttribute("aria-controls","id"),i.value.ref.setAttribute("aria-activedescendant",`${w.value}-item-${m.value}`),p=i.value.ref.hasAttribute("readonly")}),t({highlightedIndex:m,activated:g,loading:y,inputRef:i,popperRef:d,suggestions:h,handleSelect:te,handleKeyEnter:q,focus:ae,blur:be,close:G,highlight:de}),(Z,Y)=>(E(),me(c(Kn),{ref_key:"popperRef",ref:d,visible:c(S),placement:Z.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[c(l).e("popper"),Z.popperClass],teleported:Z.teleported,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${c(l).namespace.value}-zoom-in-top`,persistent:"",onBeforeShow:A,onShow:R,onHide:B},{content:ue(()=>[k("div",{ref_key:"regionRef",ref:u,class:N([c(l).b("suggestion"),c(l).is("loading",c(O))]),style:We({[Z.fitInputWidth?"width":"minWidth"]:_.value,outline:"none"}),role:"region"},[X(c(Wo),{id:c(w),tag:"ul","wrap-class":c(l).be("suggestion","wrap"),"view-class":c(l).be("suggestion","list"),role:"listbox"},{default:ue(()=>[c(O)?(E(),M("li",F2e,[X(c(Ke),{class:N(c(l).is("loading"))},{default:ue(()=>[X(c(Fo))]),_:1},8,["class"])])):(E(!0),M(qe,{key:1},vt(h.value,(ce,ve)=>(E(),M("li",{id:`${c(w)}-item-${ve}`,key:ve,class:N({highlighted:m.value===ve}),role:"option","aria-selected":m.value===ve,onClick:Ne=>te(ce)},[ke(Z.$slots,"default",{item:ce},()=>[bt(xe(ce[Z.valueKey]),1)])],10,H2e))),128))]),_:3},8,["id","wrap-class","view-class"])],6)]),default:ue(()=>[k("div",{ref_key:"listboxRef",ref:f,class:N([c(l).b(),Z.$attrs.class]),style:We(c(C)),role:"combobox","aria-haspopup":"listbox","aria-expanded":c(S),"aria-owns":c(w)},[X(c(Nn),ft({ref_key:"inputRef",ref:i},c(o),{"model-value":Z.modelValue,onInput:U,onChange:I,onFocus:x,onBlur:L,onClear:z,onKeydown:[Y[0]||(Y[0]=_t(Je(ce=>de(m.value-1),["prevent"]),["up"])),Y[1]||(Y[1]=_t(Je(ce=>de(m.value+1),["prevent"]),["down"])),_t(q,["enter"]),_t(G,["tab"]),_t(le,["esc"])],onMousedown:K}),No({_:2},[Z.$slots.prepend?{name:"prepend",fn:ue(()=>[ke(Z.$slots,"prepend")])}:void 0,Z.$slots.append?{name:"append",fn:ue(()=>[ke(Z.$slots,"append")])}:void 0,Z.$slots.prefix?{name:"prefix",fn:ue(()=>[ke(Z.$slots,"prefix")])}:void 0,Z.$slots.suffix?{name:"suffix",fn:ue(()=>[ke(Z.$slots,"suffix")])}:void 0]),1040,["model-value","onKeydown"])],14,B2e)]),_:3},8,["visible","placement","popper-class","teleported","transition"]))}});var W2e=Ie(K2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/autocomplete/src/autocomplete.vue"]]);const j2e=lt(W2e),q2e=Le({size:{type:[Number,String],values:Ho,default:"",validator:e=>Ze(e)},shape:{type:String,values:["circle","square"],default:"circle"},icon:{type:zt},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:he(String),default:"cover"}}),G2e={error:e=>e instanceof Event},Y2e=["src","alt","srcset"],X2e=oe({name:"ElAvatar"}),Z2e=oe({...X2e,props:q2e,emits:G2e,setup(e,{emit:t}){const n=e,r=Oe("avatar"),o=P(!1),a=$(()=>{const{size:u,icon:d,shape:f}=n,p=[r.b()];return Qe(u)&&p.push(r.m(u)),d&&p.push(r.m("icon")),f&&p.push(r.m(f)),p}),s=$(()=>{const{size:u}=n;return Ze(u)?r.cssVarBlock({size:on(u)||""}):void 0}),l=$(()=>({objectFit:n.fit}));Ce(()=>n.src,()=>o.value=!1);function i(u){o.value=!0,t("error",u)}return(u,d)=>(E(),M("span",{class:N(c(a)),style:We(c(s))},[(u.src||u.srcSet)&&!o.value?(E(),M("img",{key:0,src:u.src,alt:u.alt,srcset:u.srcSet,style:We(c(l)),onError:i},null,44,Y2e)):u.icon?(E(),me(c(Ke),{key:1},{default:ue(()=>[(E(),me(pt(u.icon)))]),_:1})):ke(u.$slots,"default",{key:2})],6))}});var J2e=Ie(Z2e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/avatar/src/avatar.vue"]]);const Q2e=lt(J2e),ehe={visibilityHeight:{type:Number,default:200},target:{type:String,default:""},right:{type:Number,default:40},bottom:{type:Number,default:40}},the={click:e=>e instanceof MouseEvent},nhe=(e,t,n)=>{const r=xt(),o=xt(),a=P(!1),s=()=>{r.value&&(a.value=r.value.scrollTop>=e.visibilityHeight)},l=u=>{var d;(d=r.value)==null||d.scrollTo({top:0,behavior:"smooth"}),t("click",u)},i=Xb(s,300,!0);return Dt(o,"scroll",i),rt(()=>{var u;o.value=document,r.value=document.documentElement,e.target&&(r.value=(u=document.querySelector(e.target))!=null?u:void 0,r.value||un(n,`target does not exist: ${e.target}`),o.value=r.value)}),{visible:a,handleClick:l}},D8="ElBacktop",rhe=oe({name:D8}),ohe=oe({...rhe,props:ehe,emits:the,setup(e,{emit:t}){const n=e,r=Oe("backtop"),{handleClick:o,visible:a}=nhe(n,t,D8),s=$(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(l,i)=>(E(),me(tn,{name:`${c(r).namespace.value}-fade-in`},{default:ue(()=>[c(a)?(E(),M("div",{key:0,style:We(c(s)),class:N(c(r).b()),onClick:i[0]||(i[0]=Je((...u)=>c(o)&&c(o)(...u),["stop"]))},[ke(l.$slots,"default",{},()=>[X(c(Ke),{class:N(c(r).e("icon"))},{default:ue(()=>[X(c(iy))]),_:1},8,["class"])])],6)):fe("v-if",!0)]),_:3},8,["name"]))}});var ahe=Ie(ohe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/backtop/src/backtop.vue"]]);const she=lt(ahe),lhe=Le({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"}}),ihe=["textContent"],uhe=oe({name:"ElBadge"}),che=oe({...uhe,props:lhe,setup(e,{expose:t}){const n=e,r=Oe("badge"),o=$(()=>n.isDot?"":Ze(n.value)&&Ze(n.max)?n.max(E(),M("div",{class:N(c(r).b())},[ke(a.$slots,"default"),X(tn,{name:`${c(r).namespace.value}-zoom-in-center`,persisted:""},{default:ue(()=>[ot(k("sup",{class:N([c(r).e("content"),c(r).em("content",a.type),c(r).is("fixed",!!a.$slots.default),c(r).is("dot",a.isDot)]),textContent:xe(c(o))},null,10,ihe),[[yt,!a.hidden&&(c(o)||a.isDot)]])]),_:1},8,["name"])],2))}});var dhe=Ie(che,[["__file","/home/runner/work/element-plus/element-plus/packages/components/badge/src/badge.vue"]]);const z8=lt(dhe),fhe=Le({separator:{type:String,default:"/"},separatorIcon:{type:zt}}),phe=oe({name:"ElBreadcrumb"}),hhe=oe({...phe,props:fhe,setup(e){const t=e,n=Oe("breadcrumb"),r=P();return ct(Ry,t),rt(()=>{const o=r.value.querySelectorAll(`.${n.e("item")}`);o.length&&o[o.length-1].setAttribute("aria-current","page")}),(o,a)=>(E(),M("div",{ref_key:"breadcrumb",ref:r,class:N(c(n).b()),"aria-label":"Breadcrumb",role:"navigation"},[ke(o.$slots,"default")],2))}});var vhe=Ie(hhe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/breadcrumb/src/breadcrumb.vue"]]);const mhe=Le({to:{type:he([String,Object]),default:""},replace:{type:Boolean,default:!1}}),ghe=oe({name:"ElBreadcrumbItem"}),_he=oe({...ghe,props:mhe,setup(e){const t=e,n=tt(),r=Fe(Ry,void 0),o=Oe("breadcrumb"),{separator:a,separatorIcon:s}=an(r),l=n.appContext.config.globalProperties.$router,i=P(),u=()=>{!t.to||!l||(t.replace?l.replace(t.to):l.push(t.to))};return(d,f)=>(E(),M("span",{class:N(c(o).e("item"))},[k("span",{ref_key:"link",ref:i,class:N([c(o).e("inner"),c(o).is("link",!!d.to)]),role:"link",onClick:u},[ke(d.$slots,"default")],2),c(s)?(E(),me(c(Ke),{key:0,class:N(c(o).e("separator"))},{default:ue(()=>[(E(),me(pt(c(s))))]),_:1},8,["class"])):(E(),M("span",{key:1,class:N(c(o).e("separator")),role:"presentation"},xe(c(a)),3))],2))}});var V8=Ie(_he,[["__file","/home/runner/work/element-plus/element-plus/packages/components/breadcrumb/src/breadcrumb-item.vue"]]);const bhe=lt(vhe,{BreadcrumbItem:V8}),yhe=Jt(V8),whe=(e,t)=>{xo({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},$(()=>e.type==="text"));const n=Fe(xy,void 0),r=Uo("button"),{form:o}=Wn(),a=sn($(()=>n==null?void 0:n.size)),s=rr(),l=P(),i=En(),u=$(()=>e.type||(n==null?void 0:n.type)||""),d=$(()=>{var v,h,m;return(m=(h=e.autoInsertSpace)!=null?h:(v=r.value)==null?void 0:v.autoInsertSpace)!=null?m:!1}),f=$(()=>{var v;const h=(v=i.default)==null?void 0:v.call(i);if(d.value&&(h==null?void 0:h.length)===1){const m=h[0];if((m==null?void 0:m.type)===Ao){const _=m.children;return/^\p{Unified_Ideograph}{2}$/u.test(_.trim())}}return!1});return{_disabled:s,_size:a,_type:u,_ref:l,shouldAddSpace:f,handleClick:v=>{e.nativeType==="reset"&&(o==null||o.resetFields()),t("click",v)}}},O0=["default","primary","success","warning","info","danger","text",""],Ehe=["button","submit","reset"],M0=Le({size:On,disabled:Boolean,type:{type:String,values:O0,default:""},icon:{type:zt},nativeType:{type:String,values:Ehe,default:"button"},loading:Boolean,loadingIcon:{type:zt,default:()=>Fo},plain:Boolean,text:Boolean,link:Boolean,bg:Boolean,autofocus:Boolean,round:Boolean,circle:Boolean,color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0}}),Che={click:e=>e instanceof MouseEvent};function $n(e,t){She(e)&&(e="100%");var n=khe(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function Uu(e){return Math.min(1,Math.max(0,e))}function She(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function khe(e){return typeof e=="string"&&e.indexOf("%")!==-1}function B8(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Ku(e){return e<=1?"".concat(Number(e)*100,"%"):e}function Ha(e){return e.length===1?"0"+e:String(e)}function $he(e,t,n){return{r:$n(e,255)*255,g:$n(t,255)*255,b:$n(n,255)*255}}function Lg(e,t,n){e=$n(e,255),t=$n(t,255),n=$n(n,255);var r=Math.max(e,t,n),o=Math.min(e,t,n),a=0,s=0,l=(r+o)/2;if(r===o)s=0,a=0;else{var i=r-o;switch(s=l>.5?i/(2-r-o):i/(r+o),r){case e:a=(t-n)/i+(t1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function The(e,t,n){var r,o,a;if(e=$n(e,360),t=$n(t,100),n=$n(n,100),t===0)o=n,a=n,r=n;else{var s=n<.5?n*(1+t):n+t-n*t,l=2*n-s;r=Ff(l,s,e+1/3),o=Ff(l,s,e),a=Ff(l,s,e-1/3)}return{r:r*255,g:o*255,b:a*255}}function Pg(e,t,n){e=$n(e,255),t=$n(t,255),n=$n(n,255);var r=Math.max(e,t,n),o=Math.min(e,t,n),a=0,s=r,l=r-o,i=r===0?0:l/r;if(r===o)a=0;else{switch(r){case e:a=(t-n)/l+(t>16,g:(e&65280)>>8,b:e&255}}var N0={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function Rhe(e){var t={r:0,g:0,b:0},n=1,r=null,o=null,a=null,s=!1,l=!1;return typeof e=="string"&&(e=Lhe(e)),typeof e=="object"&&(po(e.r)&&po(e.g)&&po(e.b)?(t=$he(e.r,e.g,e.b),s=!0,l=String(e.r).substr(-1)==="%"?"prgb":"rgb"):po(e.h)&&po(e.s)&&po(e.v)?(r=Ku(e.s),o=Ku(e.v),t=Ohe(e.h,r,o),s=!0,l="hsv"):po(e.h)&&po(e.s)&&po(e.l)&&(r=Ku(e.s),a=Ku(e.l),t=The(e.h,r,a),s=!0,l="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=B8(n),{ok:s,format:e.format||l,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var xhe="[-\\+]?\\d+%?",Ihe="[-\\+]?\\d*\\.\\d+%?",la="(?:".concat(Ihe,")|(?:").concat(xhe,")"),Hf="[\\s|\\(]+(".concat(la,")[,|\\s]+(").concat(la,")[,|\\s]+(").concat(la,")\\s*\\)?"),Uf="[\\s|\\(]+(".concat(la,")[,|\\s]+(").concat(la,")[,|\\s]+(").concat(la,")[,|\\s]+(").concat(la,")\\s*\\)?"),Tr={CSS_UNIT:new RegExp(la),rgb:new RegExp("rgb"+Hf),rgba:new RegExp("rgba"+Uf),hsl:new RegExp("hsl"+Hf),hsla:new RegExp("hsla"+Uf),hsv:new RegExp("hsv"+Hf),hsva:new RegExp("hsva"+Uf),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function Lhe(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;var t=!1;if(N0[e])e=N0[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var n=Tr.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=Tr.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=Tr.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=Tr.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=Tr.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=Tr.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=Tr.hex8.exec(e),n?{r:or(n[1]),g:or(n[2]),b:or(n[3]),a:zg(n[4]),format:t?"name":"hex8"}:(n=Tr.hex6.exec(e),n?{r:or(n[1]),g:or(n[2]),b:or(n[3]),format:t?"name":"hex"}:(n=Tr.hex4.exec(e),n?{r:or(n[1]+n[1]),g:or(n[2]+n[2]),b:or(n[3]+n[3]),a:zg(n[4]+n[4]),format:t?"name":"hex8"}:(n=Tr.hex3.exec(e),n?{r:or(n[1]+n[1]),g:or(n[2]+n[2]),b:or(n[3]+n[3]),format:t?"name":"hex"}:!1)))))))))}function po(e){return Boolean(Tr.CSS_UNIT.exec(String(e)))}var F8=function(){function e(t,n){t===void 0&&(t=""),n===void 0&&(n={});var r;if(t instanceof e)return t;typeof t=="number"&&(t=Ahe(t)),this.originalInput=t;var o=Rhe(t);this.originalInput=t,this.r=o.r,this.g=o.g,this.b=o.b,this.a=o.a,this.roundA=Math.round(100*this.a)/100,this.format=(r=n.format)!==null&&r!==void 0?r:o.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=o.ok}return e.prototype.isDark=function(){return this.getBrightness()<128},e.prototype.isLight=function(){return!this.isDark()},e.prototype.getBrightness=function(){var t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3},e.prototype.getLuminance=function(){var t=this.toRgb(),n,r,o,a=t.r/255,s=t.g/255,l=t.b/255;return a<=.03928?n=a/12.92:n=Math.pow((a+.055)/1.055,2.4),s<=.03928?r=s/12.92:r=Math.pow((s+.055)/1.055,2.4),l<=.03928?o=l/12.92:o=Math.pow((l+.055)/1.055,2.4),.2126*n+.7152*r+.0722*o},e.prototype.getAlpha=function(){return this.a},e.prototype.setAlpha=function(t){return this.a=B8(t),this.roundA=Math.round(100*this.a)/100,this},e.prototype.isMonochrome=function(){var t=this.toHsl().s;return t===0},e.prototype.toHsv=function(){var t=Pg(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}},e.prototype.toHsvString=function(){var t=Pg(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),o=Math.round(t.v*100);return this.a===1?"hsv(".concat(n,", ").concat(r,"%, ").concat(o,"%)"):"hsva(".concat(n,", ").concat(r,"%, ").concat(o,"%, ").concat(this.roundA,")")},e.prototype.toHsl=function(){var t=Lg(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}},e.prototype.toHslString=function(){var t=Lg(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),o=Math.round(t.l*100);return this.a===1?"hsl(".concat(n,", ").concat(r,"%, ").concat(o,"%)"):"hsla(".concat(n,", ").concat(r,"%, ").concat(o,"%, ").concat(this.roundA,")")},e.prototype.toHex=function(t){return t===void 0&&(t=!1),Dg(this.r,this.g,this.b,t)},e.prototype.toHexString=function(t){return t===void 0&&(t=!1),"#"+this.toHex(t)},e.prototype.toHex8=function(t){return t===void 0&&(t=!1),Mhe(this.r,this.g,this.b,this.a,t)},e.prototype.toHex8String=function(t){return t===void 0&&(t=!1),"#"+this.toHex8(t)},e.prototype.toHexShortString=function(t){return t===void 0&&(t=!1),this.a===1?this.toHexString(t):this.toHex8String(t)},e.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},e.prototype.toRgbString=function(){var t=Math.round(this.r),n=Math.round(this.g),r=Math.round(this.b);return this.a===1?"rgb(".concat(t,", ").concat(n,", ").concat(r,")"):"rgba(".concat(t,", ").concat(n,", ").concat(r,", ").concat(this.roundA,")")},e.prototype.toPercentageRgb=function(){var t=function(n){return"".concat(Math.round($n(n,255)*100),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},e.prototype.toPercentageRgbString=function(){var t=function(n){return Math.round($n(n,255)*100)};return this.a===1?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},e.prototype.toName=function(){if(this.a===0)return"transparent";if(this.a<1)return!1;for(var t="#"+Dg(this.r,this.g,this.b,!1),n=0,r=Object.entries(N0);n=0,a=!n&&o&&(t.startsWith("hex")||t==="name");return a?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(r=this.toRgbString()),t==="prgb"&&(r=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(r=this.toHexString()),t==="hex3"&&(r=this.toHexString(!0)),t==="hex4"&&(r=this.toHex8String(!0)),t==="hex8"&&(r=this.toHex8String()),t==="name"&&(r=this.toName()),t==="hsl"&&(r=this.toHslString()),t==="hsv"&&(r=this.toHsvString()),r||this.toHexString())},e.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},e.prototype.clone=function(){return new e(this.toString())},e.prototype.lighten=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l+=t/100,n.l=Uu(n.l),new e(n)},e.prototype.brighten=function(t){t===void 0&&(t=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)},e.prototype.darken=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l-=t/100,n.l=Uu(n.l),new e(n)},e.prototype.tint=function(t){return t===void 0&&(t=10),this.mix("white",t)},e.prototype.shade=function(t){return t===void 0&&(t=10),this.mix("black",t)},e.prototype.desaturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s-=t/100,n.s=Uu(n.s),new e(n)},e.prototype.saturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s+=t/100,n.s=Uu(n.s),new e(n)},e.prototype.greyscale=function(){return this.desaturate(100)},e.prototype.spin=function(t){var n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)},e.prototype.mix=function(t,n){n===void 0&&(n=50);var r=this.toRgb(),o=new e(t).toRgb(),a=n/100,s={r:(o.r-r.r)*a+r.r,g:(o.g-r.g)*a+r.g,b:(o.b-r.b)*a+r.b,a:(o.a-r.a)*a+r.a};return new e(s)},e.prototype.analogous=function(t,n){t===void 0&&(t=6),n===void 0&&(n=30);var r=this.toHsl(),o=360/n,a=[this];for(r.h=(r.h-(o*t>>1)+720)%360;--t;)r.h=(r.h+o)%360,a.push(new e(r));return a},e.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new e(t)},e.prototype.monochromatic=function(t){t===void 0&&(t=6);for(var n=this.toHsv(),r=n.h,o=n.s,a=n.v,s=[],l=1/t;t--;)s.push(new e({h:r,s:o,v:a})),a=(a+l)%1;return s},e.prototype.splitcomplement=function(){var t=this.toHsl(),n=t.h;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]},e.prototype.onBackground=function(t){var n=this.toRgb(),r=new e(t).toRgb(),o=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/o,g:(n.g*n.a+r.g*r.a*(1-n.a))/o,b:(n.b*n.a+r.b*r.a*(1-n.a))/o,a:o})},e.prototype.triad=function(){return this.polyad(3)},e.prototype.tetrad=function(){return this.polyad(4)},e.prototype.polyad=function(t){for(var n=this.toHsl(),r=n.h,o=[this],a=360/t,s=1;s{let r={};const o=e.color;if(o){const a=new F8(o),s=e.dark?a.tint(20).toString():Yo(a,20);if(e.plain)r=n.cssVarBlock({"bg-color":e.dark?Yo(a,90):a.tint(90).toString(),"text-color":o,"border-color":e.dark?Yo(a,50):a.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":o,"hover-border-color":o,"active-bg-color":s,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":s}),t.value&&(r[n.cssVarBlockName("disabled-bg-color")]=e.dark?Yo(a,90):a.tint(90).toString(),r[n.cssVarBlockName("disabled-text-color")]=e.dark?Yo(a,50):a.tint(50).toString(),r[n.cssVarBlockName("disabled-border-color")]=e.dark?Yo(a,80):a.tint(80).toString());else{const l=e.dark?Yo(a,30):a.tint(30).toString(),i=a.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(r=n.cssVarBlock({"bg-color":o,"text-color":i,"border-color":o,"hover-bg-color":l,"hover-text-color":i,"hover-border-color":l,"active-bg-color":s,"active-border-color":s}),t.value){const u=e.dark?Yo(a,50):a.tint(50).toString();r[n.cssVarBlockName("disabled-bg-color")]=u,r[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,r[n.cssVarBlockName("disabled-border-color")]=u}}}return r})}const Dhe=["aria-disabled","disabled","autofocus","type"],zhe=oe({name:"ElButton"}),Vhe=oe({...zhe,props:M0,emits:Che,setup(e,{expose:t,emit:n}){const r=e,o=Phe(r),a=Oe("button"),{_ref:s,_size:l,_type:i,_disabled:u,shouldAddSpace:d,handleClick:f}=whe(r,n);return t({ref:s,size:l,type:i,disabled:u,shouldAddSpace:d}),(p,v)=>(E(),M("button",{ref_key:"_ref",ref:s,class:N([c(a).b(),c(a).m(c(i)),c(a).m(c(l)),c(a).is("disabled",c(u)),c(a).is("loading",p.loading),c(a).is("plain",p.plain),c(a).is("round",p.round),c(a).is("circle",p.circle),c(a).is("text",p.text),c(a).is("link",p.link),c(a).is("has-bg",p.bg)]),"aria-disabled":c(u)||p.loading,disabled:c(u)||p.loading,autofocus:p.autofocus,type:p.nativeType,style:We(c(o)),onClick:v[0]||(v[0]=(...h)=>c(f)&&c(f)(...h))},[p.loading?(E(),M(qe,{key:0},[p.$slots.loading?ke(p.$slots,"loading",{key:0}):(E(),me(c(Ke),{key:1,class:N(c(a).is("loading"))},{default:ue(()=>[(E(),me(pt(p.loadingIcon)))]),_:1},8,["class"]))],64)):p.icon||p.$slots.icon?(E(),me(c(Ke),{key:1},{default:ue(()=>[p.icon?(E(),me(pt(p.icon),{key:0})):ke(p.$slots,"icon",{key:1})]),_:3})):fe("v-if",!0),p.$slots.default?(E(),M("span",{key:2,class:N({[c(a).em("text","expand")]:c(d)})},[ke(p.$slots,"default")],2)):fe("v-if",!0)],14,Dhe))}});var Bhe=Ie(Vhe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/button/src/button.vue"]]);const Fhe={size:M0.size,type:M0.type},Hhe=oe({name:"ElButtonGroup"}),Uhe=oe({...Hhe,props:Fhe,setup(e){const t=e;ct(xy,Et({size:qt(t,"size"),type:qt(t,"type")}));const n=Oe("button");return(r,o)=>(E(),M("div",{class:N(`${c(n).b("group")}`)},[ke(r.$slots,"default")],2))}});var H8=Ie(Uhe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/button/src/button-group.vue"]]);const Tn=lt(Bhe,{ButtonGroup:H8}),U8=Jt(H8);var uo=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function nLe(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){if(this instanceof r){var o=[null];o.push.apply(o,arguments);var a=Function.bind.apply(t,o);return new a}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}),n}var A0={},Khe={get exports(){return A0},set exports(e){A0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){var n=1e3,r=6e4,o=36e5,a="millisecond",s="second",l="minute",i="hour",u="day",d="week",f="month",p="quarter",v="year",h="date",m="Invalid Date",_=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,b={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(U){var K=["th","st","nd","rd"],I=U%100;return"["+U+(K[(I-20)%10]||K[I]||K[0])+"]"}},y=function(U,K,I){var x=String(U);return!x||x.length>=K?U:""+Array(K+1-x.length).join(I)+U},w={s:y,z:function(U){var K=-U.utcOffset(),I=Math.abs(K),x=Math.floor(I/60),L=I%60;return(K<=0?"+":"-")+y(x,2,"0")+":"+y(L,2,"0")},m:function U(K,I){if(K.date()1)return U(q[0])}else{var le=K.name;S[le]=K,L=le}return!x&&L&&(C=L),L||!x&&C},R=function(U,K){if(T(U))return U.clone();var I=typeof K=="object"?K:{};return I.date=U,I.args=arguments,new V(I)},B=w;B.l=A,B.i=T,B.w=function(U,K){return R(U,{locale:K.$L,utc:K.$u,x:K.$x,$offset:K.$offset})};var V=function(){function U(I){this.$L=A(I.locale,null,!0),this.parse(I),this.$x=this.$x||I.x||{},this[O]=!0}var K=U.prototype;return K.parse=function(I){this.$d=function(x){var L=x.date,z=x.utc;if(L===null)return new Date(NaN);if(B.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var q=L.match(_);if(q){var le=q[2]-1||0,G=(q[7]||"0").substring(0,3);return z?new Date(Date.UTC(q[1],le,q[3]||1,q[4]||0,q[5]||0,q[6]||0,G)):new Date(q[1],le,q[3]||1,q[4]||0,q[5]||0,q[6]||0,G)}}return new Date(L)}(I),this.init()},K.init=function(){var I=this.$d;this.$y=I.getFullYear(),this.$M=I.getMonth(),this.$D=I.getDate(),this.$W=I.getDay(),this.$H=I.getHours(),this.$m=I.getMinutes(),this.$s=I.getSeconds(),this.$ms=I.getMilliseconds()},K.$utils=function(){return B},K.isValid=function(){return this.$d.toString()!==m},K.isSame=function(I,x){var L=R(I);return this.startOf(x)<=L&&L<=this.endOf(x)},K.isAfter=function(I,x){return R(I)68?1900:2e3)},u=function(m){return function(_){this[m]=+_}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(m){(this.zone||(this.zone={})).offset=function(_){if(!_||_==="Z")return 0;var g=_.match(/([+-]|\d\d)/g),b=60*g[1]+(+g[2]||0);return b===0?0:g[0]==="+"?-b:b}(m)}],f=function(m){var _=l[m];return _&&(_.indexOf?_:_.s.concat(_.f))},p=function(m,_){var g,b=l.meridiem;if(b){for(var y=1;y<=24;y+=1)if(m.indexOf(b(y,0,_))>-1){g=y>12;break}}else g=m===(_?"pm":"PM");return g},v={A:[s,function(m){this.afternoon=p(m,!1)}],a:[s,function(m){this.afternoon=p(m,!0)}],S:[/\d/,function(m){this.milliseconds=100*+m}],SS:[o,function(m){this.milliseconds=10*+m}],SSS:[/\d{3}/,function(m){this.milliseconds=+m}],s:[a,u("seconds")],ss:[a,u("seconds")],m:[a,u("minutes")],mm:[a,u("minutes")],H:[a,u("hours")],h:[a,u("hours")],HH:[a,u("hours")],hh:[a,u("hours")],D:[a,u("day")],DD:[o,u("day")],Do:[s,function(m){var _=l.ordinal,g=m.match(/\d+/);if(this.day=g[0],_)for(var b=1;b<=31;b+=1)_(b).replace(/\[|\]/g,"")===m&&(this.day=b)}],M:[a,u("month")],MM:[o,u("month")],MMM:[s,function(m){var _=f("months"),g=(f("monthsShort")||_.map(function(b){return b.slice(0,3)})).indexOf(m)+1;if(g<1)throw new Error;this.month=g%12||g}],MMMM:[s,function(m){var _=f("months").indexOf(m)+1;if(_<1)throw new Error;this.month=_%12||_}],Y:[/[+-]?\d+/,u("year")],YY:[o,function(m){this.year=i(m)}],YYYY:[/\d{4}/,u("year")],Z:d,ZZ:d};function h(m){var _,g;_=m,g=l&&l.formats;for(var b=(m=_.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(A,R,B){var V=B&&B.toUpperCase();return R||g[B]||n[B]||g[V].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(H,U,K){return U||K.slice(1)})})).match(r),y=b.length,w=0;w-1)return new Date((x==="X"?1e3:1)*I);var z=h(x)(I),q=z.year,le=z.month,G=z.day,ae=z.hours,be=z.minutes,te=z.seconds,de=z.milliseconds,Z=z.zone,Y=new Date,ce=G||(q||le?1:Y.getDate()),ve=q||Y.getFullYear(),Ne=0;q&&!le||(Ne=le>0?le-1:Y.getMonth());var j=ae||0,D=be||0,F=te||0,Q=de||0;return Z?new Date(Date.UTC(ve,Ne,ce,j,D,F,Q+60*Z.offset*1e3)):L?new Date(Date.UTC(ve,Ne,ce,j,D,F,Q)):new Date(ve,Ne,ce,j,D,F,Q)}catch{return new Date("")}}(C,T,S),this.init(),V&&V!==!0&&(this.$L=this.locale(V).$L),B&&C!=this.format(T)&&(this.$d=new Date("")),l={}}else if(T instanceof Array)for(var H=T.length,U=1;U<=H;U+=1){O[1]=T[U-1];var K=g.apply(this,O);if(K.isValid()){this.$d=K.$d,this.$L=K.$L,this.init();break}U===H&&(this.$d=new Date(""))}else y.call(this,w)}}})})(Whe);const bv=R0,Vg=["hours","minutes","seconds"],x0="HH:mm:ss",ks="YYYY-MM-DD",jhe={date:ks,dates:ks,week:"gggg[w]ww",year:"YYYY",month:"YYYY-MM",datetime:`${ks} ${x0}`,monthrange:"YYYY-MM",daterange:ks,datetimerange:`${ks} ${x0}`},Kf=(e,t)=>[e>0?e-1:void 0,e,eArray.from(Array.from({length:e}).keys()),K8=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),W8=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),Bg=function(e,t){const n=ts(e),r=ts(t);return n&&r?e.getTime()===t.getTime():!n&&!r?e===t:!1},Fg=function(e,t){const n=Ve(e),r=Ve(t);return n&&r?e.length!==t.length?!1:e.every((o,a)=>Bg(o,t[a])):!n&&!r?Bg(e,t):!1},Hg=function(e,t,n){const r=hr(t)||t==="x"?st(e).locale(n):st(e,t).locale(n);return r.isValid()?r:void 0},Ug=function(e,t,n){return hr(t)?e:t==="x"?+e:st(e).locale(n).format(t)},Wf=(e,t)=>{var n;const r=[],o=t==null?void 0:t();for(let a=0;a({})},modelValue:{type:he([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:he([Date,Array])},defaultTime:{type:he([Date,Array])},isRange:{type:Boolean,default:!1},...j8,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:{type:Boolean,default:!1},label:{type:String,default:void 0},tabindex:{type:he([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean}),qhe=["id","name","placeholder","value","disabled","readonly"],Ghe=["id","name","placeholder","value","disabled","readonly"],Yhe=oe({name:"Picker"}),Xhe=oe({...Yhe,props:yv,emits:["update:modelValue","change","focus","blur","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const r=e,{lang:o}=Ct(),a=Oe("date"),s=Oe("input"),l=Oe("range"),{form:i,formItem:u}=Wn(),d=Fe("ElPopperOptions",{}),f=P(),p=P(),v=P(!1),h=P(!1),m=P(null);let _=!1,g=!1;Ce(v,W=>{W?He(()=>{W&&(m.value=r.modelValue)}):(ne.value=null,He(()=>{b(r.modelValue)}))});const b=(W,ee)=>{(ee||!Fg(W,m.value))&&(n("change",W),r.validateEvent&&(u==null||u.validate("change").catch(Ee=>void 0)))},y=W=>{if(!Fg(r.modelValue,W)){let ee;Ve(W)?ee=W.map(Ee=>Ug(Ee,r.valueFormat,o.value)):W&&(ee=Ug(W,r.valueFormat,o.value)),n("update:modelValue",W&&ee,o.value)}},w=W=>{n("keydown",W)},C=$(()=>{if(p.value){const W=D.value?p.value:p.value.$el;return Array.from(W.querySelectorAll("input"))}return[]}),S=(W,ee,Ee)=>{const Ae=C.value;Ae.length&&(!Ee||Ee==="min"?(Ae[0].setSelectionRange(W,ee),Ae[0].focus()):Ee==="max"&&(Ae[1].setSelectionRange(W,ee),Ae[1].focus()))},O=()=>{K(!0,!0),He(()=>{g=!1})},T=(W="",ee=!1)=>{ee||(g=!0),v.value=ee;let Ee;Ve(W)?Ee=W.map(Ae=>Ae.toDate()):Ee=W&&W.toDate(),ne.value=null,y(Ee)},A=()=>{h.value=!0},R=()=>{n("visible-change",!0)},B=W=>{(W==null?void 0:W.key)===Ge.esc&&K(!0,!0)},V=()=>{h.value=!1,v.value=!1,g=!1,n("visible-change",!1)},H=()=>{v.value=!0},U=()=>{v.value=!1},K=(W=!0,ee=!1)=>{g=ee;const[Ee,Ae]=c(C);let at=Ee;!W&&D.value&&(at=Ae),at&&at.focus()},I=W=>{r.readonly||z.value||v.value||g||(v.value=!0,n("focus",W))};let x;const L=W=>{const ee=async()=>{setTimeout(()=>{var Ee;x===ee&&(!((Ee=f.value)!=null&&Ee.isFocusInsideContent()&&!_)&&C.value.filter(Ae=>Ae.contains(document.activeElement)).length===0&&(Se(),v.value=!1,n("blur",W),r.validateEvent&&(u==null||u.validate("blur").catch(Ae=>void 0))),_=!1)},0)};x=ee,ee()},z=$(()=>r.disabled||(i==null?void 0:i.disabled)),q=$(()=>{let W;if(Y.value?ze.value.getDefaultValue&&(W=ze.value.getDefaultValue()):Ve(r.modelValue)?W=r.modelValue.map(ee=>Hg(ee,r.valueFormat,o.value)):W=Hg(r.modelValue,r.valueFormat,o.value),ze.value.getRangeAvailableTime){const ee=ze.value.getRangeAvailableTime(W);ur(ee,W)||(W=ee,y(Ve(W)?W.map(Ee=>Ee.toDate()):W.toDate()))}return Ve(W)&&W.some(ee=>!ee)&&(W=[]),W}),le=$(()=>{if(!ze.value.panelReady)return"";const W=Te(q.value);return Ve(ne.value)?[ne.value[0]||W&&W[0]||"",ne.value[1]||W&&W[1]||""]:ne.value!==null?ne.value:!ae.value&&Y.value||!v.value&&Y.value?"":W?be.value?W.join(", "):W:""}),G=$(()=>r.type.includes("time")),ae=$(()=>r.type.startsWith("time")),be=$(()=>r.type==="dates"),te=$(()=>r.prefixIcon||(G.value?Gh:ly)),de=P(!1),Z=W=>{r.readonly||z.value||de.value&&(W.stopPropagation(),O(),y(null),b(null,!0),de.value=!1,v.value=!1,ze.value.handleClear&&ze.value.handleClear())},Y=$(()=>{const{modelValue:W}=r;return!W||Ve(W)&&!W.filter(Boolean).length}),ce=async W=>{var ee;r.readonly||z.value||(((ee=W.target)==null?void 0:ee.tagName)!=="INPUT"||C.value.includes(document.activeElement))&&(v.value=!0)},ve=()=>{r.readonly||z.value||!Y.value&&r.clearable&&(de.value=!0)},Ne=()=>{de.value=!1},j=W=>{var ee;r.readonly||z.value||(((ee=W.touches[0].target)==null?void 0:ee.tagName)!=="INPUT"||C.value.includes(document.activeElement))&&(v.value=!0)},D=$(()=>r.type.includes("range")),F=sn(),Q=$(()=>{var W,ee;return(ee=(W=c(f))==null?void 0:W.popperRef)==null?void 0:ee.contentRef}),ge=$(()=>{var W;return c(D)?c(p):(W=c(p))==null?void 0:W.$el});Kh(ge,W=>{const ee=c(Q),Ee=c(ge);ee&&(W.target===ee||W.composedPath().includes(ee))||W.target===Ee||W.composedPath().includes(Ee)||(v.value=!1)});const ne=P(null),Se=()=>{if(ne.value){const W=ye(le.value);W&&we(W)&&(y(Ve(W)?W.map(ee=>ee.toDate()):W.toDate()),ne.value=null)}ne.value===""&&(y(null),b(null),ne.value=null)},ye=W=>W?ze.value.parseUserInput(W):null,Te=W=>W?ze.value.formatToString(W):null,we=W=>ze.value.isValidValue(W),J=async W=>{if(r.readonly||z.value)return;const{code:ee}=W;if(w(W),ee===Ge.esc){v.value===!0&&(v.value=!1,W.preventDefault(),W.stopPropagation());return}if(ee===Ge.down&&(ze.value.handleFocusPicker&&(W.preventDefault(),W.stopPropagation()),v.value===!1&&(v.value=!0,await He()),ze.value.handleFocusPicker)){ze.value.handleFocusPicker();return}if(ee===Ge.tab){_=!0;return}if(ee===Ge.enter||ee===Ge.numpadEnter){(ne.value===null||ne.value===""||we(ye(le.value)))&&(Se(),v.value=!1),W.stopPropagation();return}if(ne.value){W.stopPropagation();return}ze.value.handleKeydownInput&&ze.value.handleKeydownInput(W)},_e=W=>{ne.value=W,v.value||(v.value=!0)},De=W=>{const ee=W.target;ne.value?ne.value=[ee.value,ne.value[1]]:ne.value=[ee.value,null]},$e=W=>{const ee=W.target;ne.value?ne.value=[ne.value[0],ee.value]:ne.value=[null,ee.value]},Pe=()=>{var W;const ee=ne.value,Ee=ye(ee&&ee[0]),Ae=c(q);if(Ee&&Ee.isValid()){ne.value=[Te(Ee),((W=le.value)==null?void 0:W[1])||null];const at=[Ee,Ae&&(Ae[1]||null)];we(at)&&(y(at),ne.value=null)}},Ue=()=>{var W;const ee=c(ne),Ee=ye(ee&&ee[1]),Ae=c(q);if(Ee&&Ee.isValid()){ne.value=[((W=c(le))==null?void 0:W[0])||null,Te(Ee)];const at=[Ae&&Ae[0],Ee];we(at)&&(y(at),ne.value=null)}},ze=P({}),se=W=>{ze.value[W[0]]=W[1],ze.value.panelReady=!0},pe=W=>{n("calendar-change",W)},Me=(W,ee,Ee)=>{n("panel-change",W,ee,Ee)};return ct("EP_PICKER_BASE",{props:r}),t({focus:K,handleFocusInput:I,handleBlurInput:L,handleOpen:H,handleClose:U,onPick:T}),(W,ee)=>(E(),me(c(Kn),ft({ref_key:"refPopper",ref:f,visible:v.value,effect:"light",pure:"",trigger:"click"},W.$attrs,{role:"dialog",teleported:"",transition:`${c(a).namespace.value}-zoom-in-top`,"popper-class":[`${c(a).namespace.value}-picker__popper`,W.popperClass],"popper-options":c(d),"fallback-placements":["bottom","top","right","left"],"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:A,onShow:R,onHide:V}),{default:ue(()=>[c(D)?(E(),M("div",{key:1,ref_key:"inputRef",ref:p,class:N([c(a).b("editor"),c(a).bm("editor",W.type),c(s).e("wrapper"),c(a).is("disabled",c(z)),c(a).is("active",v.value),c(l).b("editor"),c(F)?c(l).bm("editor",c(F)):"",W.$attrs.class]),style:We(W.$attrs.style),onClick:I,onMouseenter:ve,onMouseleave:Ne,onTouchstart:j,onKeydown:J},[c(te)?(E(),me(c(Ke),{key:0,class:N([c(s).e("icon"),c(l).e("icon")]),onMousedown:Je(ce,["prevent"]),onTouchstart:j},{default:ue(()=>[(E(),me(pt(c(te))))]),_:1},8,["class","onMousedown"])):fe("v-if",!0),k("input",{id:W.id&&W.id[0],autocomplete:"off",name:W.name&&W.name[0],placeholder:W.startPlaceholder,value:c(le)&&c(le)[0],disabled:c(z),readonly:!W.editable||W.readonly,class:N(c(l).b("input")),onMousedown:ce,onInput:De,onChange:Pe,onFocus:I,onBlur:L},null,42,qhe),ke(W.$slots,"range-separator",{},()=>[k("span",{class:N(c(l).b("separator"))},xe(W.rangeSeparator),3)]),k("input",{id:W.id&&W.id[1],autocomplete:"off",name:W.name&&W.name[1],placeholder:W.endPlaceholder,value:c(le)&&c(le)[1],disabled:c(z),readonly:!W.editable||W.readonly,class:N(c(l).b("input")),onMousedown:ce,onFocus:I,onBlur:L,onInput:$e,onChange:Ue},null,42,Ghe),W.clearIcon?(E(),me(c(Ke),{key:1,class:N([c(s).e("icon"),c(l).e("close-icon"),{[c(l).e("close-icon--hidden")]:!de.value}]),onClick:Z},{default:ue(()=>[(E(),me(pt(W.clearIcon)))]),_:1},8,["class"])):fe("v-if",!0)],38)):(E(),me(c(Nn),{key:0,id:W.id,ref_key:"inputRef",ref:p,"container-role":"combobox","model-value":c(le),name:W.name,size:c(F),disabled:c(z),placeholder:W.placeholder,class:N([c(a).b("editor"),c(a).bm("editor",W.type),W.$attrs.class]),style:We(W.$attrs.style),readonly:!W.editable||W.readonly||c(be)||W.type==="week",label:W.label,tabindex:W.tabindex,"validate-event":!1,onInput:_e,onFocus:I,onBlur:L,onKeydown:J,onChange:Se,onMousedown:ce,onMouseenter:ve,onMouseleave:Ne,onTouchstart:j,onClick:ee[0]||(ee[0]=Je(()=>{},["stop"]))},{prefix:ue(()=>[c(te)?(E(),me(c(Ke),{key:0,class:N(c(s).e("icon")),onMousedown:Je(ce,["prevent"]),onTouchstart:j},{default:ue(()=>[(E(),me(pt(c(te))))]),_:1},8,["class","onMousedown"])):fe("v-if",!0)]),suffix:ue(()=>[de.value&&W.clearIcon?(E(),me(c(Ke),{key:0,class:N(`${c(s).e("icon")} clear-icon`),onClick:Je(Z,["stop"])},{default:ue(()=>[(E(),me(pt(W.clearIcon)))]),_:1},8,["class","onClick"])):fe("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","label","tabindex","onKeydown"]))]),content:ue(()=>[ke(W.$slots,"default",{visible:v.value,actualVisible:h.value,parsedValue:c(q),format:W.format,unlinkPanels:W.unlinkPanels,type:W.type,defaultValue:W.defaultValue,onPick:T,onSelectRange:S,onSetPickerOption:se,onCalendarChange:pe,onPanelChange:Me,onKeydown:B,onMousedown:ee[1]||(ee[1]=Je(()=>{},["stop"]))})]),_:3},16,["visible","transition","popper-class","popper-options"]))}});var G8=Ie(Xhe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/common/picker.vue"]]);const Zhe=Le({...q8,datetimeRole:String,parsedValue:{type:he(Object)}}),Y8=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const r=(s,l,i,u)=>{const d={hour:e,minute:t,second:n};let f=s;return["hour","minute","second"].forEach(p=>{if(d[p]){let v;const h=d[p];switch(p){case"minute":{v=h(f.hour(),l,u);break}case"second":{v=h(f.hour(),f.minute(),l,u);break}default:{v=h(l,u);break}}if(v!=null&&v.length&&!v.includes(f[p]())){const m=i?0:v.length-1;f=f[p](v[m])}}}),f},o={};return{timePickerOptions:o,getAvailableTime:r,onSetOption:([s,l])=>{o[s]=l}}},jf=e=>{const t=(r,o)=>r||o,n=r=>r!==!0;return e.map(t).filter(n)},X8=(e,t,n)=>({getHoursList:(s,l)=>Wf(24,e&&(()=>e==null?void 0:e(s,l))),getMinutesList:(s,l,i)=>Wf(60,t&&(()=>t==null?void 0:t(s,l,i))),getSecondsList:(s,l,i,u)=>Wf(60,n&&(()=>n==null?void 0:n(s,l,i,u)))}),Z8=(e,t,n)=>{const{getHoursList:r,getMinutesList:o,getSecondsList:a}=X8(e,t,n);return{getAvailableHours:(u,d)=>jf(r(u,d)),getAvailableMinutes:(u,d,f)=>jf(o(u,d,f)),getAvailableSeconds:(u,d,f,p)=>jf(a(u,d,f,p))}},J8=e=>{const t=P(e.parsedValue);return Ce(()=>e.visible,n=>{n||(t.value=e.parsedValue)}),t},na=new Map;let Kg;gt&&(document.addEventListener("mousedown",e=>Kg=e),document.addEventListener("mouseup",e=>{for(const t of na.values())for(const{documentHandler:n}of t)n(e,Kg)}));function Wg(e,t){let n=[];return Array.isArray(t.arg)?n=t.arg:Pr(t.arg)&&n.push(t.arg),function(r,o){const a=t.instance.popperRef,s=r.target,l=o==null?void 0:o.target,i=!t||!t.instance,u=!s||!l,d=e.contains(s)||e.contains(l),f=e===s,p=n.length&&n.some(h=>h==null?void 0:h.contains(s))||n.length&&n.includes(l),v=a&&(a.contains(s)||a.contains(l));i||u||d||f||p||v||t.value(r,o)}}const Sa={beforeMount(e,t){na.has(e)||na.set(e,[]),na.get(e).push({documentHandler:Wg(e,t),bindingFn:t.value})},updated(e,t){na.has(e)||na.set(e,[]);const n=na.get(e),r=n.findIndex(a=>a.bindingFn===t.oldValue),o={documentHandler:Wg(e,t),bindingFn:t.value};r>=0?n.splice(r,1,o):n.push(o)},unmounted(e){na.delete(e)}},Jhe=100,Qhe=600,Xc={beforeMount(e,t){const n=t.value,{interval:r=Jhe,delay:o=Qhe}=Xe(n)?{}:n;let a,s;const l=()=>Xe(n)?n():n.handler(),i=()=>{s&&(clearTimeout(s),s=void 0),a&&(clearInterval(a),a=void 0)};e.addEventListener("mousedown",u=>{u.button===0&&(i(),l(),document.addEventListener("mouseup",()=>i(),{once:!0}),s=setTimeout(()=>{a=setInterval(()=>{l()},r)},o))})}},I0="_trap-focus-children",Ua=[],jg=e=>{if(Ua.length===0)return;const t=Ua[Ua.length-1][I0];if(t.length>0&&e.code===Ge.tab){if(t.length===1){e.preventDefault(),document.activeElement!==t[0]&&t[0].focus();return}const n=e.shiftKey,r=e.target===t[0],o=e.target===t[t.length-1];r&&n&&(e.preventDefault(),t[t.length-1].focus()),o&&!n&&(e.preventDefault(),t[0].focus())}},eve={beforeMount(e){e[I0]=Dm(e),Ua.push(e),Ua.length<=1&&document.addEventListener("keydown",jg)},updated(e){He(()=>{e[I0]=Dm(e)})},unmounted(){Ua.shift(),Ua.length===0&&document.removeEventListener("keydown",jg)}};var qg=!1,Va,L0,P0,ic,uc,Q8,cc,D0,z0,V0,ew,B0,F0,tw,nw;function jn(){if(!qg){qg=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),n=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(B0=/\b(iPhone|iP[ao]d)/.exec(e),F0=/\b(iP[ao]d)/.exec(e),V0=/Android/i.exec(e),tw=/FBAN\/\w+;/i.exec(e),nw=/Mobile/i.exec(e),ew=!!/Win64/.exec(e),t){Va=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Va&&document&&document.documentMode&&(Va=document.documentMode);var r=/(?:Trident\/(\d+.\d+))/.exec(e);Q8=r?parseFloat(r[1])+4:Va,L0=t[2]?parseFloat(t[2]):NaN,P0=t[3]?parseFloat(t[3]):NaN,ic=t[4]?parseFloat(t[4]):NaN,ic?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),uc=t&&t[1]?parseFloat(t[1]):NaN):uc=NaN}else Va=L0=P0=uc=ic=NaN;if(n){if(n[1]){var o=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);cc=o?parseFloat(o[1].replace("_",".")):!0}else cc=!1;D0=!!n[2],z0=!!n[3]}else cc=D0=z0=!1}}var H0={ie:function(){return jn()||Va},ieCompatibilityMode:function(){return jn()||Q8>Va},ie64:function(){return H0.ie()&&ew},firefox:function(){return jn()||L0},opera:function(){return jn()||P0},webkit:function(){return jn()||ic},safari:function(){return H0.webkit()},chrome:function(){return jn()||uc},windows:function(){return jn()||D0},osx:function(){return jn()||cc},linux:function(){return jn()||z0},iphone:function(){return jn()||B0},mobile:function(){return jn()||B0||F0||V0||nw},nativeApp:function(){return jn()||tw},android:function(){return jn()||V0},ipad:function(){return jn()||F0}},tve=H0,Wu=!!(typeof window<"u"&&window.document&&window.document.createElement),nve={canUseDOM:Wu,canUseWorkers:typeof Worker<"u",canUseEventListeners:Wu&&!!(window.addEventListener||window.attachEvent),canUseViewport:Wu&&!!window.screen,isInWorker:!Wu},rw=nve,ow;rw.canUseDOM&&(ow=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function rve(e,t){if(!rw.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,r=n in document;if(!r){var o=document.createElement("div");o.setAttribute(n,"return;"),r=typeof o[n]=="function"}return!r&&ow&&e==="wheel"&&(r=document.implementation.hasFeature("Events.wheel","3.0")),r}var ove=rve,Gg=10,Yg=40,Xg=800;function aw(e){var t=0,n=0,r=0,o=0;return"detail"in e&&(n=e.detail),"wheelDelta"in e&&(n=-e.wheelDelta/120),"wheelDeltaY"in e&&(n=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=n,n=0),r=t*Gg,o=n*Gg,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(r=e.deltaX),(r||o)&&e.deltaMode&&(e.deltaMode==1?(r*=Yg,o*=Yg):(r*=Xg,o*=Xg)),r&&!t&&(t=r<1?-1:1),o&&!n&&(n=o<1?-1:1),{spinX:t,spinY:n,pixelX:r,pixelY:o}}aw.getEventType=function(){return tve.firefox()?"DOMMouseScroll":ove("wheel")?"wheel":"mousewheel"};var ave=aw;/** +* Checks if an event is supported in the current execution environment. +* +* NOTE: This will not work correctly for non-generic events such as `change`, +* `reset`, `load`, `error`, and `select`. +* +* Borrows from Modernizr. +* +* @param {string} eventNameSuffix Event name, e.g. "click". +* @param {?boolean} capture Check if the capture phase is supported. +* @return {boolean} True if the event is supported. +* @internal +* @license Modernizr 3.0.0pre (Custom Build) | MIT +*/const sve=function(e,t){if(e&&e.addEventListener){const n=function(r){const o=ave(r);t&&Reflect.apply(t,this,[r,o])};e.addEventListener("wheel",n,{passive:!0})}},lve={beforeMount(e,t){sve(e,t.value)}},ive=Le({role:{type:String,required:!0},spinnerDate:{type:he(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:he(String),default:""},...j8}),uve=["onClick"],cve=["onMouseenter"],dve=oe({__name:"basic-time-spinner",props:ive,emits:["change","select-range","set-option"],setup(e,{emit:t}){const n=e,r=Oe("time"),{getHoursList:o,getMinutesList:a,getSecondsList:s}=X8(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let l=!1;const i=P(),u=P(),d=P(),f=P(),p={hours:u,minutes:d,seconds:f},v=$(()=>n.showSeconds?Vg:Vg.slice(0,2)),h=$(()=>{const{spinnerDate:z}=n,q=z.hour(),le=z.minute(),G=z.second();return{hours:q,minutes:le,seconds:G}}),m=$(()=>{const{hours:z,minutes:q}=c(h);return{hours:o(n.role),minutes:a(z,n.role),seconds:s(z,q,n.role)}}),_=$(()=>{const{hours:z,minutes:q,seconds:le}=c(h);return{hours:Kf(z,23),minutes:Kf(q,59),seconds:Kf(le,59)}}),g=Un(z=>{l=!1,w(z)},200),b=z=>{if(!!!n.amPmMode)return"";const le=n.amPmMode==="A";let G=z<12?" am":" pm";return le&&(G=G.toUpperCase()),G},y=z=>{let q;switch(z){case"hours":q=[0,2];break;case"minutes":q=[3,5];break;case"seconds":q=[6,8];break}const[le,G]=q;t("select-range",le,G),i.value=z},w=z=>{O(z,c(h)[z])},C=()=>{w("hours"),w("minutes"),w("seconds")},S=z=>z.querySelector(`.${r.namespace.value}-scrollbar__wrap`),O=(z,q)=>{if(n.arrowControl)return;const le=c(p[z]);le&&le.$el&&(S(le.$el).scrollTop=Math.max(0,q*T(z)))},T=z=>{const q=c(p[z]);return(q==null?void 0:q.$el.querySelector("li").offsetHeight)||0},A=()=>{B(1)},R=()=>{B(-1)},B=z=>{i.value||y("hours");const q=i.value,le=c(h)[q],G=i.value==="hours"?24:60,ae=V(q,le,z,G);H(q,ae),O(q,ae),He(()=>y(q))},V=(z,q,le,G)=>{let ae=(q+le+G)%G;const be=c(m)[z];for(;be[ae]&&ae!==q;)ae=(ae+le+G)%G;return ae},H=(z,q)=>{if(c(m)[z][q])return;const{hours:ae,minutes:be,seconds:te}=c(h);let de;switch(z){case"hours":de=n.spinnerDate.hour(q).minute(be).second(te);break;case"minutes":de=n.spinnerDate.hour(ae).minute(q).second(te);break;case"seconds":de=n.spinnerDate.hour(ae).minute(be).second(q);break}t("change",de)},U=(z,{value:q,disabled:le})=>{le||(H(z,q),y(z),O(z,q))},K=z=>{l=!0,g(z);const q=Math.min(Math.round((S(c(p[z]).$el).scrollTop-(I(z)*.5-10)/T(z)+3)/T(z)),z==="hours"?23:59);H(z,q)},I=z=>c(p[z]).$el.offsetHeight,x=()=>{const z=q=>{const le=c(p[q]);le&&le.$el&&(S(le.$el).onscroll=()=>{K(q)})};z("hours"),z("minutes"),z("seconds")};rt(()=>{He(()=>{!n.arrowControl&&x(),C(),n.role==="start"&&y("hours")})});const L=(z,q)=>{p[q].value=z};return t("set-option",[`${n.role}_scrollDown`,B]),t("set-option",[`${n.role}_emitSelectRange`,y]),Ce(()=>n.spinnerDate,()=>{l||C()}),(z,q)=>(E(),M("div",{class:N([c(r).b("spinner"),{"has-seconds":z.showSeconds}])},[z.arrowControl?fe("v-if",!0):(E(!0),M(qe,{key:0},vt(c(v),le=>(E(),me(c(Wo),{key:le,ref_for:!0,ref:G=>L(G,le),class:N(c(r).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":c(r).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:G=>y(le),onMousemove:G=>w(le)},{default:ue(()=>[(E(!0),M(qe,null,vt(c(m)[le],(G,ae)=>(E(),M("li",{key:ae,class:N([c(r).be("spinner","item"),c(r).is("active",ae===c(h)[le]),c(r).is("disabled",G)]),onClick:be=>U(le,{value:ae,disabled:G})},[le==="hours"?(E(),M(qe,{key:0},[bt(xe(("0"+(z.amPmMode?ae%12||12:ae)).slice(-2))+xe(b(ae)),1)],64)):(E(),M(qe,{key:1},[bt(xe(("0"+ae).slice(-2)),1)],64))],10,uve))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),z.arrowControl?(E(!0),M(qe,{key:1},vt(c(v),le=>(E(),M("div",{key:le,class:N([c(r).be("spinner","wrapper"),c(r).is("arrow")]),onMouseenter:G=>y(le)},[ot((E(),me(c(Ke),{class:N(["arrow-up",c(r).be("spinner","arrow")])},{default:ue(()=>[X(c(pu))]),_:1},8,["class"])),[[c(Xc),R]]),ot((E(),me(c(Ke),{class:N(["arrow-down",c(r).be("spinner","arrow")])},{default:ue(()=>[X(c(Vo))]),_:1},8,["class"])),[[c(Xc),A]]),k("ul",{class:N(c(r).be("spinner","list"))},[(E(!0),M(qe,null,vt(c(_)[le],(G,ae)=>(E(),M("li",{key:ae,class:N([c(r).be("spinner","item"),c(r).is("active",G===c(h)[le]),c(r).is("disabled",c(m)[le][G])])},[typeof G=="number"?(E(),M(qe,{key:0},[le==="hours"?(E(),M(qe,{key:0},[bt(xe(("0"+(z.amPmMode?G%12||12:G)).slice(-2))+xe(b(G)),1)],64)):(E(),M(qe,{key:1},[bt(xe(("0"+G).slice(-2)),1)],64))],64)):fe("v-if",!0)],2))),128))],2)],42,cve))),128)):fe("v-if",!0)],2))}});var U0=Ie(dve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/time-picker-com/basic-time-spinner.vue"]]);const fve=oe({__name:"panel-time-pick",props:Zhe,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,r=Fe("EP_PICKER_BASE"),{arrowControl:o,disabledHours:a,disabledMinutes:s,disabledSeconds:l,defaultValue:i}=r.props,{getAvailableHours:u,getAvailableMinutes:d,getAvailableSeconds:f}=Z8(a,s,l),p=Oe("time"),{t:v,lang:h}=Ct(),m=P([0,2]),_=J8(n),g=$(()=>_n(n.actualVisible)?`${p.namespace.value}-zoom-in-top`:""),b=$(()=>n.format.includes("ss")),y=$(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),w=L=>{const z=st(L).locale(h.value),q=U(z);return z.isSame(q)},C=()=>{t("pick",_.value,!1)},S=(L=!1,z=!1)=>{z||t("pick",n.parsedValue,L)},O=L=>{if(!n.visible)return;const z=U(L).millisecond(0);t("pick",z,!0)},T=(L,z)=>{t("select-range",L,z),m.value=[L,z]},A=L=>{const z=[0,3].concat(b.value?[6]:[]),q=["hours","minutes"].concat(b.value?["seconds"]:[]),G=(z.indexOf(m.value[0])+L+z.length)%z.length;B.start_emitSelectRange(q[G])},R=L=>{const z=L.code,{left:q,right:le,up:G,down:ae}=Ge;if([q,le].includes(z)){A(z===q?-1:1),L.preventDefault();return}if([G,ae].includes(z)){const be=z===G?-1:1;B.start_scrollDown(be),L.preventDefault();return}},{timePickerOptions:B,onSetOption:V,getAvailableTime:H}=Y8({getAvailableHours:u,getAvailableMinutes:d,getAvailableSeconds:f}),U=L=>H(L,n.datetimeRole||"",!0),K=L=>L?st(L,n.format).locale(h.value):null,I=L=>L?L.format(n.format):null,x=()=>st(i).locale(h.value);return t("set-picker-option",["isValidValue",w]),t("set-picker-option",["formatToString",I]),t("set-picker-option",["parseUserInput",K]),t("set-picker-option",["handleKeydownInput",R]),t("set-picker-option",["getRangeAvailableTime",U]),t("set-picker-option",["getDefaultValue",x]),(L,z)=>(E(),me(tn,{name:c(g)},{default:ue(()=>[L.actualVisible||L.visible?(E(),M("div",{key:0,class:N(c(p).b("panel"))},[k("div",{class:N([c(p).be("panel","content"),{"has-seconds":c(b)}])},[X(U0,{ref:"spinner",role:L.datetimeRole||"start","arrow-control":c(o),"show-seconds":c(b),"am-pm-mode":c(y),"spinner-date":L.parsedValue,"disabled-hours":c(a),"disabled-minutes":c(s),"disabled-seconds":c(l),onChange:O,onSetOption:c(V),onSelectRange:T},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),k("div",{class:N(c(p).be("panel","footer"))},[k("button",{type:"button",class:N([c(p).be("panel","btn"),"cancel"]),onClick:C},xe(c(v)("el.datepicker.cancel")),3),k("button",{type:"button",class:N([c(p).be("panel","btn"),"confirm"]),onClick:z[0]||(z[0]=q=>S())},xe(c(v)("el.datepicker.confirm")),3)],2)],2)):fe("v-if",!0)]),_:1},8,["name"]))}});var Zc=Ie(fve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/time-picker-com/panel-time-pick.vue"]]);const pve=Le({...q8,parsedValue:{type:he(Array)}}),hve=["disabled"],vve=oe({__name:"panel-time-range",props:pve,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,r=(ce,ve)=>{const Ne=[];for(let j=ce;j<=ve;j++)Ne.push(j);return Ne},{t:o,lang:a}=Ct(),s=Oe("time"),l=Oe("picker"),i=Fe("EP_PICKER_BASE"),{arrowControl:u,disabledHours:d,disabledMinutes:f,disabledSeconds:p,defaultValue:v}=i.props,h=$(()=>n.parsedValue[0]),m=$(()=>n.parsedValue[1]),_=J8(n),g=()=>{t("pick",_.value,!1)},b=$(()=>n.format.includes("ss")),y=$(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),w=(ce=!1)=>{t("pick",[h.value,m.value],ce)},C=ce=>{T(ce.millisecond(0),m.value)},S=ce=>{T(h.value,ce.millisecond(0))},O=ce=>{const ve=ce.map(j=>st(j).locale(a.value)),Ne=z(ve);return ve[0].isSame(Ne[0])&&ve[1].isSame(Ne[1])},T=(ce,ve)=>{t("pick",[ce,ve],!0)},A=$(()=>h.value>m.value),R=P([0,2]),B=(ce,ve)=>{t("select-range",ce,ve,"min"),R.value=[ce,ve]},V=$(()=>b.value?11:8),H=(ce,ve)=>{t("select-range",ce,ve,"max");const Ne=c(V);R.value=[ce+Ne,ve+Ne]},U=ce=>{const ve=b.value?[0,3,6,11,14,17]:[0,3,8,11],Ne=["hours","minutes"].concat(b.value?["seconds"]:[]),D=(ve.indexOf(R.value[0])+ce+ve.length)%ve.length,F=ve.length/2;D{const ve=ce.code,{left:Ne,right:j,up:D,down:F}=Ge;if([Ne,j].includes(ve)){U(ve===Ne?-1:1),ce.preventDefault();return}if([D,F].includes(ve)){const Q=ve===D?-1:1,ge=R.value[0]{const Ne=d?d(ce):[],j=ce==="start",F=(ve||(j?m.value:h.value)).hour(),Q=j?r(F+1,23):r(0,F-1);return Pf(Ne,Q)},x=(ce,ve,Ne)=>{const j=f?f(ce,ve):[],D=ve==="start",F=Ne||(D?m.value:h.value),Q=F.hour();if(ce!==Q)return j;const ge=F.minute(),ne=D?r(ge+1,59):r(0,ge-1);return Pf(j,ne)},L=(ce,ve,Ne,j)=>{const D=p?p(ce,ve,Ne):[],F=Ne==="start",Q=j||(F?m.value:h.value),ge=Q.hour(),ne=Q.minute();if(ce!==ge||ve!==ne)return D;const Se=Q.second(),ye=F?r(Se+1,59):r(0,Se-1);return Pf(D,ye)},z=([ce,ve])=>[be(ce,"start",!0,ve),be(ve,"end",!1,ce)],{getAvailableHours:q,getAvailableMinutes:le,getAvailableSeconds:G}=Z8(I,x,L),{timePickerOptions:ae,getAvailableTime:be,onSetOption:te}=Y8({getAvailableHours:q,getAvailableMinutes:le,getAvailableSeconds:G}),de=ce=>ce?Ve(ce)?ce.map(ve=>st(ve,n.format).locale(a.value)):st(ce,n.format).locale(a.value):null,Z=ce=>ce?Ve(ce)?ce.map(ve=>ve.format(n.format)):ce.format(n.format):null,Y=()=>{if(Ve(v))return v.map(ve=>st(ve).locale(a.value));const ce=st(v).locale(a.value);return[ce,ce.add(60,"m")]};return t("set-picker-option",["formatToString",Z]),t("set-picker-option",["parseUserInput",de]),t("set-picker-option",["isValidValue",O]),t("set-picker-option",["handleKeydownInput",K]),t("set-picker-option",["getDefaultValue",Y]),t("set-picker-option",["getRangeAvailableTime",z]),(ce,ve)=>ce.actualVisible?(E(),M("div",{key:0,class:N([c(s).b("range-picker"),c(l).b("panel")])},[k("div",{class:N(c(s).be("range-picker","content"))},[k("div",{class:N(c(s).be("range-picker","cell"))},[k("div",{class:N(c(s).be("range-picker","header"))},xe(c(o)("el.datepicker.startTime")),3),k("div",{class:N([c(s).be("range-picker","body"),c(s).be("panel","content"),c(s).is("arrow",c(u)),{"has-seconds":c(b)}])},[X(U0,{ref:"minSpinner",role:"start","show-seconds":c(b),"am-pm-mode":c(y),"arrow-control":c(u),"spinner-date":c(h),"disabled-hours":I,"disabled-minutes":x,"disabled-seconds":L,onChange:C,onSetOption:c(te),onSelectRange:B},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),k("div",{class:N(c(s).be("range-picker","cell"))},[k("div",{class:N(c(s).be("range-picker","header"))},xe(c(o)("el.datepicker.endTime")),3),k("div",{class:N([c(s).be("range-picker","body"),c(s).be("panel","content"),c(s).is("arrow",c(u)),{"has-seconds":c(b)}])},[X(U0,{ref:"maxSpinner",role:"end","show-seconds":c(b),"am-pm-mode":c(y),"arrow-control":c(u),"spinner-date":c(m),"disabled-hours":I,"disabled-minutes":x,"disabled-seconds":L,onChange:S,onSetOption:c(te),onSelectRange:H},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),k("div",{class:N(c(s).be("panel","footer"))},[k("button",{type:"button",class:N([c(s).be("panel","btn"),"cancel"]),onClick:ve[0]||(ve[0]=Ne=>g())},xe(c(o)("el.datepicker.cancel")),3),k("button",{type:"button",class:N([c(s).be("panel","btn"),"confirm"]),disabled:c(A),onClick:ve[1]||(ve[1]=Ne=>w())},xe(c(o)("el.datepicker.confirm")),11,hve)],2)],2)):fe("v-if",!0)}});var mve=Ie(vve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/time-picker-com/panel-time-range.vue"]]);st.extend(bv);var gve=oe({name:"ElTimePicker",install:null,props:{...yv,isRange:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(e,t){const n=P(),[r,o]=e.isRange?["timerange",mve]:["time",Zc],a=s=>t.emit("update:modelValue",s);return ct("ElPopperOptions",e.popperOptions),t.expose({focus:s=>{var l;(l=n.value)==null||l.handleFocusInput(s)},blur:s=>{var l;(l=n.value)==null||l.handleBlurInput(s)},handleOpen:()=>{var s;(s=n.value)==null||s.handleOpen()},handleClose:()=>{var s;(s=n.value)==null||s.handleClose()}}),()=>{var s;const l=(s=e.format)!=null?s:x0;return X(G8,ft(e,{ref:n,type:r,format:l,"onUpdate:modelValue":a}),{default:i=>X(o,i,null)})}}});const dc=gve;dc.install=e=>{e.component(dc.name,dc)};const _ve=dc,bve=(e,t)=>{const n=e.subtract(1,"month").endOf("month").date();return ha(t).map((r,o)=>n-(t-o-1))},yve=e=>{const t=e.daysInMonth();return ha(t).map((n,r)=>r+1)},wve=e=>ha(e.length/7).map(t=>{const n=t*7;return e.slice(n,n+7)}),Eve=Le({selectedDay:{type:he(Object)},range:{type:he(Array)},date:{type:he(Object),required:!0},hideHeader:{type:Boolean}}),Cve={pick:e=>dt(e)};var K0={},Sve={get exports(){return K0},set exports(e){K0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r,o){var a=r.prototype,s=function(f){return f&&(f.indexOf?f:f.s)},l=function(f,p,v,h,m){var _=f.name?f:f.$locale(),g=s(_[p]),b=s(_[v]),y=g||b.map(function(C){return C.slice(0,h)});if(!m)return y;var w=_.weekStart;return y.map(function(C,S){return y[(S+(w||0))%7]})},i=function(){return o.Ls[o.locale()]},u=function(f,p){return f.formats[p]||function(v){return v.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(h,m,_){return m||_.slice(1)})}(f.formats[p.toUpperCase()])},d=function(){var f=this;return{months:function(p){return p?p.format("MMMM"):l(f,"months")},monthsShort:function(p){return p?p.format("MMM"):l(f,"monthsShort","months",3)},firstDayOfWeek:function(){return f.$locale().weekStart||0},weekdays:function(p){return p?p.format("dddd"):l(f,"weekdays")},weekdaysMin:function(p){return p?p.format("dd"):l(f,"weekdaysMin","weekdays",2)},weekdaysShort:function(p){return p?p.format("ddd"):l(f,"weekdaysShort","weekdays",3)},longDateFormat:function(p){return u(f.$locale(),p)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};a.localeData=function(){return d.bind(this)()},o.localeData=function(){var f=i();return{firstDayOfWeek:function(){return f.weekStart||0},weekdays:function(){return o.weekdays()},weekdaysShort:function(){return o.weekdaysShort()},weekdaysMin:function(){return o.weekdaysMin()},months:function(){return o.months()},monthsShort:function(){return o.monthsShort()},longDateFormat:function(p){return u(f,p)},meridiem:f.meridiem,ordinal:f.ordinal}},o.months=function(){return l(i(),"months")},o.monthsShort=function(){return l(i(),"monthsShort","months",3)},o.weekdays=function(f){return l(i(),"weekdays",null,null,f)},o.weekdaysShort=function(f){return l(i(),"weekdaysShort","weekdays",3,f)},o.weekdaysMin=function(f){return l(i(),"weekdaysMin","weekdays",2,f)}}})})(Sve);const sw=K0,kve=(e,t)=>{st.extend(sw);const n=st.localeData().firstDayOfWeek(),{t:r,lang:o}=Ct(),a=st().locale(o.value),s=$(()=>!!e.range&&!!e.range.length),l=$(()=>{let p=[];if(s.value){const[v,h]=e.range,m=ha(h.date()-v.date()+1).map(b=>({text:v.date()+b,type:"current"}));let _=m.length%7;_=_===0?0:7-_;const g=ha(_).map((b,y)=>({text:y+1,type:"next"}));p=m.concat(g)}else{const v=e.date.startOf("month").day(),h=bve(e.date,(v-n+7)%7).map(b=>({text:b,type:"prev"})),m=yve(e.date).map(b=>({text:b,type:"current"}));p=[...h,...m];const _=7-(p.length%7||7),g=ha(_).map((b,y)=>({text:y+1,type:"next"}));p=p.concat(g)}return wve(p)}),i=$(()=>{const p=n;return p===0?Df.map(v=>r(`el.datepicker.weeks.${v}`)):Df.slice(p).concat(Df.slice(0,p)).map(v=>r(`el.datepicker.weeks.${v}`))}),u=(p,v)=>{switch(v){case"prev":return e.date.startOf("month").subtract(1,"month").date(p);case"next":return e.date.startOf("month").add(1,"month").date(p);case"current":return e.date.date(p)}};return{now:a,isInRange:s,rows:l,weekDays:i,getFormattedDate:u,handlePickDay:({text:p,type:v})=>{const h=u(p,v);t("pick",h)},getSlotData:({text:p,type:v})=>{const h=u(p,v);return{isSelected:h.isSame(e.selectedDay),type:`${v}-month`,day:h.format("YYYY-MM-DD"),date:h.toDate()}}}},$ve={key:0},Tve=["onClick"],Ove=oe({name:"DateTable"}),Mve=oe({...Ove,props:Eve,emits:Cve,setup(e,{expose:t,emit:n}){const r=e,{isInRange:o,now:a,rows:s,weekDays:l,getFormattedDate:i,handlePickDay:u,getSlotData:d}=kve(r,n),f=Oe("calendar-table"),p=Oe("calendar-day"),v=({text:h,type:m})=>{const _=[m];if(m==="current"){const g=i(h,m);g.isSame(r.selectedDay,"day")&&_.push(p.is("selected")),g.isSame(a,"day")&&_.push(p.is("today"))}return _};return t({getFormattedDate:i}),(h,m)=>(E(),M("table",{class:N([c(f).b(),c(f).is("range",c(o))]),cellspacing:"0",cellpadding:"0"},[h.hideHeader?fe("v-if",!0):(E(),M("thead",$ve,[(E(!0),M(qe,null,vt(c(l),_=>(E(),M("th",{key:_},xe(_),1))),128))])),k("tbody",null,[(E(!0),M(qe,null,vt(c(s),(_,g)=>(E(),M("tr",{key:g,class:N({[c(f).e("row")]:!0,[c(f).em("row","hide-border")]:g===0&&h.hideHeader})},[(E(!0),M(qe,null,vt(_,(b,y)=>(E(),M("td",{key:y,class:N(v(b)),onClick:w=>c(u)(b)},[k("div",{class:N(c(p).b())},[ke(h.$slots,"date-cell",{data:c(d)(b)},()=>[k("span",null,xe(b.text),1)])],2)],10,Tve))),128))],2))),128))])],2))}});var Zg=Ie(Mve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/calendar/src/date-table.vue"]]);const Nve=(e,t)=>{const n=e.endOf("month"),r=t.startOf("month"),a=n.isSame(r,"week")?r.add(1,"week"):r;return[[e,n],[a.startOf("week"),t]]},Ave=(e,t)=>{const n=e.endOf("month"),r=e.add(1,"month").startOf("month"),o=n.isSame(r,"week")?r.add(1,"week"):r,a=o.endOf("month"),s=t.startOf("month"),l=a.isSame(s,"week")?s.add(1,"week"):s;return[[e,n],[o.startOf("week"),a],[l.startOf("week"),t]]},Rve=(e,t,n)=>{const r=En(),{lang:o}=Ct(),a=P(),s=st().locale(o.value),l=$({get(){return e.modelValue?u.value:a.value},set(g){if(!g)return;a.value=g;const b=g.toDate();t(Bn,b),t(ut,b)}}),i=$(()=>{if(!e.range)return[];const g=e.range.map(w=>st(w).locale(o.value)),[b,y]=g;return b.isAfter(y)?[]:b.isSame(y,"month")?h(b,y):b.add(1,"month").month()!==y.month()?[]:h(b,y)}),u=$(()=>e.modelValue?st(e.modelValue).locale(o.value):l.value||(i.value.length?i.value[0][0]:s)),d=$(()=>u.value.subtract(1,"month").date(1)),f=$(()=>u.value.add(1,"month").date(1)),p=$(()=>u.value.subtract(1,"year").date(1)),v=$(()=>u.value.add(1,"year").date(1)),h=(g,b)=>{const y=g.startOf("week"),w=b.endOf("week"),C=y.get("month"),S=w.get("month");return C===S?[[y,w]]:(C+1)%12===S?Nve(y,w):C+2===S||(C+1)%11===S?Ave(y,w):[]},m=g=>{l.value=g},_=g=>{const y={"prev-month":d.value,"next-month":f.value,"prev-year":p.value,"next-year":v.value,today:s}[g];y.isSame(u.value,"day")||m(y)};return xo({from:'"dateCell"',replacement:'"date-cell"',scope:"ElCalendar",version:"2.3.0",ref:"https://element-plus.org/en-US/component/calendar.html#slots",type:"Slot"},$(()=>!!r.dateCell)),{calculateValidatedDateRange:h,date:u,realSelectedDay:l,pickDay:m,selectDate:_,validatedRange:i}},xve=e=>Ve(e)&&e.length===2&&e.every(t=>ts(t)),Ive=Le({modelValue:{type:Date},range:{type:he(Array),validator:xve}}),Lve={[ut]:e=>ts(e),[Bn]:e=>ts(e)},Pve="ElCalendar",Dve=oe({name:Pve}),zve=oe({...Dve,props:Ive,emits:Lve,setup(e,{expose:t,emit:n}){const r=e,o=Oe("calendar"),{calculateValidatedDateRange:a,date:s,pickDay:l,realSelectedDay:i,selectDate:u,validatedRange:d}=Rve(r,n),{t:f}=Ct(),p=$(()=>{const v=`el.datepicker.month${s.value.format("M")}`;return`${s.value.year()} ${f("el.datepicker.year")} ${f(v)}`});return t({selectedDay:i,pickDay:l,selectDate:u,calculateValidatedDateRange:a}),(v,h)=>(E(),M("div",{class:N(c(o).b())},[k("div",{class:N(c(o).e("header"))},[ke(v.$slots,"header",{date:c(p)},()=>[k("div",{class:N(c(o).e("title"))},xe(c(p)),3),c(d).length===0?(E(),M("div",{key:0,class:N(c(o).e("button-group"))},[X(c(U8),null,{default:ue(()=>[X(c(Tn),{size:"small",onClick:h[0]||(h[0]=m=>c(u)("prev-month"))},{default:ue(()=>[bt(xe(c(f)("el.datepicker.prevMonth")),1)]),_:1}),X(c(Tn),{size:"small",onClick:h[1]||(h[1]=m=>c(u)("today"))},{default:ue(()=>[bt(xe(c(f)("el.datepicker.today")),1)]),_:1}),X(c(Tn),{size:"small",onClick:h[2]||(h[2]=m=>c(u)("next-month"))},{default:ue(()=>[bt(xe(c(f)("el.datepicker.nextMonth")),1)]),_:1})]),_:1})],2)):fe("v-if",!0)])],2),c(d).length===0?(E(),M("div",{key:0,class:N(c(o).e("body"))},[X(Zg,{date:c(s),"selected-day":c(i),onPick:c(l)},No({_:2},[v.$slots["date-cell"]||v.$slots.dateCell?{name:"date-cell",fn:ue(m=>[v.$slots["date-cell"]?ke(v.$slots,"date-cell",Ar(ft({key:0},m))):ke(v.$slots,"dateCell",Ar(ft({key:1},m)))])}:void 0]),1032,["date","selected-day","onPick"])],2)):(E(),M("div",{key:1,class:N(c(o).e("body"))},[(E(!0),M(qe,null,vt(c(d),(m,_)=>(E(),me(Zg,{key:_,date:m[0],"selected-day":c(i),range:m,"hide-header":_!==0,onPick:c(l)},No({_:2},[v.$slots["date-cell"]||v.$slots.dateCell?{name:"date-cell",fn:ue(g=>[v.$slots["date-cell"]?ke(v.$slots,"date-cell",Ar(ft({key:0},g))):ke(v.$slots,"dateCell",Ar(ft({key:1},g)))])}:void 0]),1032,["date","selected-day","range","hide-header","onPick"]))),128))],2))],2))}});var Vve=Ie(zve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/calendar/src/calendar.vue"]]);const Bve=lt(Vve),Fve=Le({header:{type:String,default:""},bodyStyle:{type:he([String,Object,Array]),default:""},shadow:{type:String,values:["always","hover","never"],default:"always"}}),Hve=oe({name:"ElCard"}),Uve=oe({...Hve,props:Fve,setup(e){const t=Oe("card");return(n,r)=>(E(),M("div",{class:N([c(t).b(),c(t).is(`${n.shadow}-shadow`)])},[n.$slots.header||n.header?(E(),M("div",{key:0,class:N(c(t).e("header"))},[ke(n.$slots,"header",{},()=>[bt(xe(n.header),1)])],2)):fe("v-if",!0),k("div",{class:N(c(t).e("body")),style:We(n.bodyStyle)},[ke(n.$slots,"default")],6)],2))}});var Kve=Ie(Uve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/card/src/card.vue"]]);const Wve=lt(Kve),jve=Le({initialIndex:{type:Number,default:0},height:{type:String,default:""},trigger:{type:String,values:["hover","click"],default:"hover"},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:3e3},indicatorPosition:{type:String,values:["","none","outside"],default:""},indicator:{type:Boolean,default:!0},arrow:{type:String,values:["always","hover","never"],default:"hover"},type:{type:String,values:["","card"],default:""},loop:{type:Boolean,default:!0},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},pauseOnHover:{type:Boolean,default:!0}}),qve={change:(e,t)=>[e,t].every(Ze)},Jg=300,Gve=(e,t,n)=>{const{children:r,addChild:o,removeChild:a}=k8(tt(),"ElCarouselItem"),s=P(-1),l=P(null),i=P(!1),u=P(),d=$(()=>e.arrow!=="never"&&!c(v)),f=$(()=>r.value.some(I=>I.props.label.toString().length>0)),p=$(()=>e.type==="card"),v=$(()=>e.direction==="vertical"),h=Xa(I=>{y(I)},Jg,{trailing:!0}),m=Xa(I=>{B(I)},Jg);function _(){l.value&&(clearInterval(l.value),l.value=null)}function g(){e.interval<=0||!e.autoplay||l.value||(l.value=setInterval(()=>b(),e.interval))}const b=()=>{s.valueq.props.name===I);z.length>0&&(I=r.value.indexOf(z[0]))}if(I=Number(I),Number.isNaN(I)||I!==Math.floor(I))return;const x=r.value.length,L=s.value;I<0?s.value=e.loop?x-1:0:I>=x?s.value=e.loop?0:x-1:s.value=I,L===s.value&&w(L),U()}function w(I){r.value.forEach((x,L)=>{x.translateItem(L,s.value,I)})}function C(I,x){var L,z,q,le;const G=c(r),ae=G.length;if(ae===0||!I.states.inStage)return!1;const be=x+1,te=x-1,de=ae-1,Z=G[de].states.active,Y=G[0].states.active,ce=(z=(L=G[be])==null?void 0:L.states)==null?void 0:z.active,ve=(le=(q=G[te])==null?void 0:q.states)==null?void 0:le.active;return x===de&&Y||ce?"left":x===0&&Z||ve?"right":!1}function S(){i.value=!0,e.pauseOnHover&&_()}function O(){i.value=!1,g()}function T(I){c(v)||r.value.forEach((x,L)=>{I===C(x,L)&&(x.states.hover=!0)})}function A(){c(v)||r.value.forEach(I=>{I.states.hover=!1})}function R(I){s.value=I}function B(I){e.trigger==="hover"&&I!==s.value&&(s.value=I)}function V(){y(s.value-1)}function H(){y(s.value+1)}function U(){_(),g()}Ce(()=>s.value,(I,x)=>{w(x),x>-1&&t("change",I,x)}),Ce(()=>e.autoplay,I=>{I?g():_()}),Ce(()=>e.loop,()=>{y(s.value)}),Ce(()=>e.interval,()=>{U()}),Ce(()=>r.value,()=>{r.value.length>0&&y(e.initialIndex)});const K=xt();return rt(()=>{K.value=Rn(u.value,()=>{w()}),g()}),Ut(()=>{_(),u.value&&K.value&&K.value.stop()}),ct(Iy,{root:u,isCardType:p,isVertical:v,items:r,loop:e.loop,addItem:o,removeItem:a,setActiveItem:y}),{root:u,activeIndex:s,arrowDisplay:d,hasLabel:f,hover:i,isCardType:p,items:r,handleButtonEnter:T,handleButtonLeave:A,handleIndicatorClick:R,handleMouseEnter:S,handleMouseLeave:O,setActiveItem:y,prev:V,next:H,throttledArrowClick:h,throttledIndicatorHover:m}},Yve=["onMouseenter","onClick"],Xve={key:0},Zve="ElCarousel",Jve=oe({name:Zve}),Qve=oe({...Jve,props:jve,emits:qve,setup(e,{expose:t,emit:n}){const r=e,{root:o,activeIndex:a,arrowDisplay:s,hasLabel:l,hover:i,isCardType:u,items:d,handleButtonEnter:f,handleButtonLeave:p,handleIndicatorClick:v,handleMouseEnter:h,handleMouseLeave:m,setActiveItem:_,prev:g,next:b,throttledArrowClick:y,throttledIndicatorHover:w}=Gve(r,n),C=Oe("carousel"),S=$(()=>{const T=[C.b(),C.m(r.direction)];return c(u)&&T.push(C.m("card")),T}),O=$(()=>{const T=[C.e("indicators"),C.em("indicators",r.direction)];return c(l)&&T.push(C.em("indicators","labels")),(r.indicatorPosition==="outside"||c(u))&&T.push(C.em("indicators","outside")),T});return t({setActiveItem:_,prev:g,next:b}),(T,A)=>(E(),M("div",{ref_key:"root",ref:o,class:N(c(S)),onMouseenter:A[6]||(A[6]=Je((...R)=>c(h)&&c(h)(...R),["stop"])),onMouseleave:A[7]||(A[7]=Je((...R)=>c(m)&&c(m)(...R),["stop"]))},[k("div",{class:N(c(C).e("container")),style:We({height:T.height})},[c(s)?(E(),me(tn,{key:0,name:"carousel-arrow-left",persisted:""},{default:ue(()=>[ot(k("button",{type:"button",class:N([c(C).e("arrow"),c(C).em("arrow","left")]),onMouseenter:A[0]||(A[0]=R=>c(f)("left")),onMouseleave:A[1]||(A[1]=(...R)=>c(p)&&c(p)(...R)),onClick:A[2]||(A[2]=Je(R=>c(y)(c(a)-1),["stop"]))},[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1})],34),[[yt,(T.arrow==="always"||c(i))&&(r.loop||c(a)>0)]])]),_:1})):fe("v-if",!0),c(s)?(E(),me(tn,{key:1,name:"carousel-arrow-right",persisted:""},{default:ue(()=>[ot(k("button",{type:"button",class:N([c(C).e("arrow"),c(C).em("arrow","right")]),onMouseenter:A[3]||(A[3]=R=>c(f)("right")),onMouseleave:A[4]||(A[4]=(...R)=>c(p)&&c(p)(...R)),onClick:A[5]||(A[5]=Je(R=>c(y)(c(a)+1),["stop"]))},[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})],34),[[yt,(T.arrow==="always"||c(i))&&(r.loop||c(a)(E(),M("li",{key:B,class:N([c(C).e("indicator"),c(C).em("indicator",T.direction),c(C).is("active",B===c(a))]),onMouseenter:V=>c(w)(B),onClick:Je(V=>c(v)(B),["stop"])},[k("button",{class:N(c(C).e("button"))},[c(l)?(E(),M("span",Xve,xe(R.props.label),1)):fe("v-if",!0)],2)],42,Yve))),128))],2)):fe("v-if",!0)],34))}});var e1e=Ie(Qve,[["__file","/home/runner/work/element-plus/element-plus/packages/components/carousel/src/carousel.vue"]]);const t1e=Le({name:{type:String,default:""},label:{type:[String,Number],default:""}}),n1e=(e,t)=>{const n=Fe(Iy),r=tt(),o=.83,a=P(!1),s=P(0),l=P(1),i=P(!1),u=P(!1),d=P(!1),f=P(!1),{isCardType:p,isVertical:v}=n;function h(y,w,C){const S=C-1,O=w-1,T=w+1,A=C/2;return w===0&&y===S?-1:w===S&&y===0?C:y=A?C+1:y>T&&y-w>=A?-2:y}function m(y,w){var C;const S=((C=n.root.value)==null?void 0:C.offsetWidth)||0;return d.value?S*((2-o)*(y-w)+1)/4:y{var S;const O=c(p),T=(S=n.items.value.length)!=null?S:Number.NaN,A=y===w;!O&&!_n(C)&&(f.value=A||y===C),!A&&T>2&&n.loop&&(y=h(y,w,T));const R=c(v);i.value=A,O?(d.value=Math.round(Math.abs(y-w))<=1,s.value=m(y,w),l.value=c(i)?1:o):s.value=_(y,w,R),u.value=!0};function b(){if(n&&c(p)){const y=n.items.value.findIndex(({uid:w})=>w===r.uid);n.setActiveItem(y)}}return rt(()=>{n.addItem({props:e,states:Et({hover:a,translate:s,scale:l,active:i,ready:u,inStage:d,animating:f}),uid:r.uid,translateItem:g})}),io(()=>{n.removeItem(r.uid)}),{active:i,animating:f,hover:a,inStage:d,isVertical:v,translate:s,isCardType:p,scale:l,ready:u,handleItemClick:b}},r1e=oe({name:"ElCarouselItem"}),o1e=oe({...r1e,props:t1e,setup(e){const t=e,n=Oe("carousel"),{active:r,animating:o,hover:a,inStage:s,isVertical:l,translate:i,isCardType:u,scale:d,ready:f,handleItemClick:p}=n1e(t),v=$(()=>{const m=`${`translate${c(l)?"Y":"X"}`}(${c(i)}px)`,_=`scale(${c(d)})`;return{transform:[m,_].join(" ")}});return(h,m)=>ot((E(),M("div",{class:N([c(n).e("item"),c(n).is("active",c(r)),c(n).is("in-stage",c(s)),c(n).is("hover",c(a)),c(n).is("animating",c(o)),{[c(n).em("item","card")]:c(u)}]),style:We(c(v)),onClick:m[0]||(m[0]=(..._)=>c(p)&&c(p)(..._))},[c(u)?ot((E(),M("div",{key:0,class:N(c(n).e("mask"))},null,2)),[[yt,!c(r)]]):fe("v-if",!0),ke(h.$slots,"default")],6)),[[yt,c(f)]])}});var lw=Ie(o1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/carousel/src/carousel-item.vue"]]);const a1e=lt(e1e,{CarouselItem:lw}),s1e=Jt(lw),iw={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object]},indeterminate:Boolean,disabled:Boolean,checked:Boolean,name:{type:String,default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},controls:{type:String,default:void 0},border:Boolean,size:On,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0}},uw={[ut]:e=>Qe(e)||Ze(e)||rn(e),change:e=>Qe(e)||Ze(e)||rn(e)},l1e=({model:e,isChecked:t})=>{const n=Fe(kl,void 0),r=$(()=>{var a,s;const l=(a=n==null?void 0:n.max)==null?void 0:a.value,i=(s=n==null?void 0:n.min)==null?void 0:s.value;return!_n(l)&&e.value.length>=l&&!t.value||!_n(i)&&e.value.length<=i&&t.value});return{isDisabled:rr($(()=>(n==null?void 0:n.disabled.value)||r.value)),isLimitDisabled:r}},i1e=(e,{model:t,isLimitExceeded:n,hasOwnLabel:r,isDisabled:o,isLabeledByFormItem:a})=>{const s=Fe(kl,void 0),{formItem:l}=Wn(),{emit:i}=tt();function u(h){var m,_;return h===e.trueLabel||h===!0?(m=e.trueLabel)!=null?m:!0:(_=e.falseLabel)!=null?_:!1}function d(h,m){i("change",u(h),m)}function f(h){if(n.value)return;const m=h.target;i("change",u(m.checked),h)}async function p(h){n.value||!r.value&&!o.value&&a.value&&(h.composedPath().some(g=>g.tagName==="LABEL")||(t.value=u([!1,e.falseLabel].includes(t.value)),await He(),d(t.value,h)))}const v=$(()=>(s==null?void 0:s.validateEvent)||e.validateEvent);return Ce(()=>e.modelValue,()=>{v.value&&(l==null||l.validate("change").catch(h=>void 0))}),{handleChange:f,onClickRoot:p}},u1e=e=>{const t=P(!1),{emit:n}=tt(),r=Fe(kl,void 0),o=$(()=>_n(r)===!1),a=P(!1);return{model:$({get(){var l,i;return o.value?(l=r==null?void 0:r.modelValue)==null?void 0:l.value:(i=e.modelValue)!=null?i:t.value},set(l){var i,u;o.value&&Ve(l)?(a.value=((i=r==null?void 0:r.max)==null?void 0:i.value)!==void 0&&l.length>(r==null?void 0:r.max.value),a.value===!1&&((u=r==null?void 0:r.changeEvent)==null||u.call(r,l))):(n(ut,l),t.value=l)}}),isGroup:o,isLimitExceeded:a}},c1e=(e,t,{model:n})=>{const r=Fe(kl,void 0),o=P(!1),a=$(()=>{const u=n.value;return rn(u)?u:Ve(u)?dt(e.label)?u.map($t).some(d=>ur(d,e.label)):u.map($t).includes(e.label):u!=null?u===e.trueLabel:!!u}),s=sn($(()=>{var u;return(u=r==null?void 0:r.size)==null?void 0:u.value}),{prop:!0}),l=sn($(()=>{var u;return(u=r==null?void 0:r.size)==null?void 0:u.value})),i=$(()=>!!(t.default||e.label));return{checkboxButtonSize:s,isChecked:a,isFocused:o,checkboxSize:l,hasOwnLabel:i}},d1e=(e,{model:t})=>{function n(){Ve(t.value)&&!t.value.includes(e.label)?t.value.push(e.label):t.value=e.trueLabel||!0}e.checked&&n()},cw=(e,t)=>{const{formItem:n}=Wn(),{model:r,isGroup:o,isLimitExceeded:a}=u1e(e),{isFocused:s,isChecked:l,checkboxButtonSize:i,checkboxSize:u,hasOwnLabel:d}=c1e(e,t,{model:r}),{isDisabled:f}=l1e({model:r,isChecked:l}),{inputId:p,isLabeledByFormItem:v}=$a(e,{formItemContext:n,disableIdGeneration:d,disableIdManagement:o}),{handleChange:h,onClickRoot:m}=i1e(e,{model:r,isLimitExceeded:a,hasOwnLabel:d,isDisabled:f,isLabeledByFormItem:v});return d1e(e,{model:r}),{inputId:p,isLabeledByFormItem:v,isChecked:l,isDisabled:f,isFocused:s,checkboxButtonSize:i,checkboxSize:u,hasOwnLabel:d,model:r,handleChange:h,onClickRoot:m}},f1e=["tabindex","role","aria-checked"],p1e=["id","aria-hidden","name","tabindex","disabled","true-value","false-value"],h1e=["id","aria-hidden","disabled","value","name","tabindex"],v1e=oe({name:"ElCheckbox"}),m1e=oe({...v1e,props:iw,emits:uw,setup(e){const t=e,n=En(),{inputId:r,isLabeledByFormItem:o,isChecked:a,isDisabled:s,isFocused:l,checkboxSize:i,hasOwnLabel:u,model:d,handleChange:f,onClickRoot:p}=cw(t,n),v=Oe("checkbox"),h=$(()=>[v.b(),v.m(i.value),v.is("disabled",s.value),v.is("bordered",t.border),v.is("checked",a.value)]),m=$(()=>[v.e("input"),v.is("disabled",s.value),v.is("checked",a.value),v.is("indeterminate",t.indeterminate),v.is("focus",l.value)]);return(_,g)=>(E(),me(pt(!c(u)&&c(o)?"span":"label"),{class:N(c(h)),"aria-controls":_.indeterminate?_.controls:null,onClick:c(p)},{default:ue(()=>[k("span",{class:N(c(m)),tabindex:_.indeterminate?0:void 0,role:_.indeterminate?"checkbox":void 0,"aria-checked":_.indeterminate?"mixed":void 0},[_.trueLabel||_.falseLabel?ot((E(),M("input",{key:0,id:c(r),"onUpdate:modelValue":g[0]||(g[0]=b=>kt(d)?d.value=b:null),class:N(c(v).e("original")),type:"checkbox","aria-hidden":_.indeterminate?"true":"false",name:_.name,tabindex:_.tabindex,disabled:c(s),"true-value":_.trueLabel,"false-value":_.falseLabel,onChange:g[1]||(g[1]=(...b)=>c(f)&&c(f)(...b)),onFocus:g[2]||(g[2]=b=>l.value=!0),onBlur:g[3]||(g[3]=b=>l.value=!1)},null,42,p1e)),[[tl,c(d)]]):ot((E(),M("input",{key:1,id:c(r),"onUpdate:modelValue":g[4]||(g[4]=b=>kt(d)?d.value=b:null),class:N(c(v).e("original")),type:"checkbox","aria-hidden":_.indeterminate?"true":"false",disabled:c(s),value:_.label,name:_.name,tabindex:_.tabindex,onChange:g[5]||(g[5]=(...b)=>c(f)&&c(f)(...b)),onFocus:g[6]||(g[6]=b=>l.value=!0),onBlur:g[7]||(g[7]=b=>l.value=!1)},null,42,h1e)),[[tl,c(d)]]),k("span",{class:N(c(v).e("inner"))},null,2)],10,f1e),c(u)?(E(),M("span",{key:0,class:N(c(v).e("label"))},[ke(_.$slots,"default"),_.$slots.default?fe("v-if",!0):(E(),M(qe,{key:0},[bt(xe(_.label),1)],64))],2)):fe("v-if",!0)]),_:3},8,["class","aria-controls","onClick"]))}});var g1e=Ie(m1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox.vue"]]);const _1e=["name","tabindex","disabled","true-value","false-value"],b1e=["name","tabindex","disabled","value"],y1e=oe({name:"ElCheckboxButton"}),w1e=oe({...y1e,props:iw,emits:uw,setup(e){const t=e,n=En(),{isFocused:r,isChecked:o,isDisabled:a,checkboxButtonSize:s,model:l,handleChange:i}=cw(t,n),u=Fe(kl,void 0),d=Oe("checkbox"),f=$(()=>{var v,h,m,_;const g=(h=(v=u==null?void 0:u.fill)==null?void 0:v.value)!=null?h:"";return{backgroundColor:g,borderColor:g,color:(_=(m=u==null?void 0:u.textColor)==null?void 0:m.value)!=null?_:"",boxShadow:g?`-1px 0 0 0 ${g}`:void 0}}),p=$(()=>[d.b("button"),d.bm("button",s.value),d.is("disabled",a.value),d.is("checked",o.value),d.is("focus",r.value)]);return(v,h)=>(E(),M("label",{class:N(c(p))},[v.trueLabel||v.falseLabel?ot((E(),M("input",{key:0,"onUpdate:modelValue":h[0]||(h[0]=m=>kt(l)?l.value=m:null),class:N(c(d).be("button","original")),type:"checkbox",name:v.name,tabindex:v.tabindex,disabled:c(a),"true-value":v.trueLabel,"false-value":v.falseLabel,onChange:h[1]||(h[1]=(...m)=>c(i)&&c(i)(...m)),onFocus:h[2]||(h[2]=m=>r.value=!0),onBlur:h[3]||(h[3]=m=>r.value=!1)},null,42,_1e)),[[tl,c(l)]]):ot((E(),M("input",{key:1,"onUpdate:modelValue":h[4]||(h[4]=m=>kt(l)?l.value=m:null),class:N(c(d).be("button","original")),type:"checkbox",name:v.name,tabindex:v.tabindex,disabled:c(a),value:v.label,onChange:h[5]||(h[5]=(...m)=>c(i)&&c(i)(...m)),onFocus:h[6]||(h[6]=m=>r.value=!0),onBlur:h[7]||(h[7]=m=>r.value=!1)},null,42,b1e)),[[tl,c(l)]]),v.$slots.default||v.label?(E(),M("span",{key:2,class:N(c(d).be("button","inner")),style:We(c(o)?c(f):void 0)},[ke(v.$slots,"default",{},()=>[bt(xe(v.label),1)])],6)):fe("v-if",!0)],2))}});var dw=Ie(w1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox-button.vue"]]);const E1e=Le({modelValue:{type:he(Array),default:()=>[]},disabled:Boolean,min:Number,max:Number,size:On,label:String,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0}}),C1e={[ut]:e=>Ve(e),change:e=>Ve(e)},S1e=oe({name:"ElCheckboxGroup"}),k1e=oe({...S1e,props:E1e,emits:C1e,setup(e,{emit:t}){const n=e,r=Oe("checkbox"),{formItem:o}=Wn(),{inputId:a,isLabeledByFormItem:s}=$a(n,{formItemContext:o}),l=async u=>{t(ut,u),await He(),t("change",u)},i=$({get(){return n.modelValue},set(u){l(u)}});return ct(kl,{...Co(an(n),["size","min","max","disabled","validateEvent","fill","textColor"]),modelValue:i,changeEvent:l}),Ce(()=>n.modelValue,()=>{n.validateEvent&&(o==null||o.validate("change").catch(u=>void 0))}),(u,d)=>{var f;return E(),me(pt(u.tag),{id:c(a),class:N(c(r).b("group")),role:"group","aria-label":c(s)?void 0:u.label||"checkbox-group","aria-labelledby":c(s)?(f=c(o))==null?void 0:f.labelId:void 0},{default:ue(()=>[ke(u.$slots,"default")]),_:3},8,["id","class","aria-label","aria-labelledby"])}}});var fw=Ie(k1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox-group.vue"]]);const kr=lt(g1e,{CheckboxButton:dw,CheckboxGroup:fw}),$1e=Jt(dw),pw=Jt(fw),hw=Le({size:On,disabled:Boolean,label:{type:[String,Number,Boolean],default:""}}),T1e=Le({...hw,modelValue:{type:[String,Number,Boolean],default:""},name:{type:String,default:""},border:Boolean}),vw={[ut]:e=>Qe(e)||Ze(e)||rn(e),[Bt]:e=>Qe(e)||Ze(e)||rn(e)},mw=(e,t)=>{const n=P(),r=Fe(Vy,void 0),o=$(()=>!!r),a=$({get(){return o.value?r.modelValue:e.modelValue},set(d){o.value?r.changeEvent(d):t&&t(ut,d),n.value.checked=e.modelValue===e.label}}),s=sn($(()=>r==null?void 0:r.size)),l=rr($(()=>r==null?void 0:r.disabled)),i=P(!1),u=$(()=>l.value||o.value&&a.value!==e.label?-1:0);return{radioRef:n,isGroup:o,radioGroup:r,focus:i,size:s,disabled:l,tabIndex:u,modelValue:a}},O1e=["value","name","disabled"],M1e=oe({name:"ElRadio"}),N1e=oe({...M1e,props:T1e,emits:vw,setup(e,{emit:t}){const n=e,r=Oe("radio"),{radioRef:o,radioGroup:a,focus:s,size:l,disabled:i,modelValue:u}=mw(n,t);function d(){He(()=>t("change",u.value))}return(f,p)=>{var v;return E(),M("label",{class:N([c(r).b(),c(r).is("disabled",c(i)),c(r).is("focus",c(s)),c(r).is("bordered",f.border),c(r).is("checked",c(u)===f.label),c(r).m(c(l))])},[k("span",{class:N([c(r).e("input"),c(r).is("disabled",c(i)),c(r).is("checked",c(u)===f.label)])},[ot(k("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":p[0]||(p[0]=h=>kt(u)?u.value=h:null),class:N(c(r).e("original")),value:f.label,name:f.name||((v=c(a))==null?void 0:v.name),disabled:c(i),type:"radio",onFocus:p[1]||(p[1]=h=>s.value=!0),onBlur:p[2]||(p[2]=h=>s.value=!1),onChange:d},null,42,O1e),[[Ad,c(u)]]),k("span",{class:N(c(r).e("inner"))},null,2)],2),k("span",{class:N(c(r).e("label")),onKeydown:p[3]||(p[3]=Je(()=>{},["stop"]))},[ke(f.$slots,"default",{},()=>[bt(xe(f.label),1)])],34)],2)}}});var A1e=Ie(N1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue"]]);const R1e=Le({...hw,name:{type:String,default:""}}),x1e=["value","name","disabled"],I1e=oe({name:"ElRadioButton"}),L1e=oe({...I1e,props:R1e,setup(e){const t=e,n=Oe("radio"),{radioRef:r,focus:o,size:a,disabled:s,modelValue:l,radioGroup:i}=mw(t),u=$(()=>({backgroundColor:(i==null?void 0:i.fill)||"",borderColor:(i==null?void 0:i.fill)||"",boxShadow:i!=null&&i.fill?`-1px 0 0 0 ${i.fill}`:"",color:(i==null?void 0:i.textColor)||""}));return(d,f)=>{var p;return E(),M("label",{class:N([c(n).b("button"),c(n).is("active",c(l)===d.label),c(n).is("disabled",c(s)),c(n).is("focus",c(o)),c(n).bm("button",c(a))])},[ot(k("input",{ref_key:"radioRef",ref:r,"onUpdate:modelValue":f[0]||(f[0]=v=>kt(l)?l.value=v:null),class:N(c(n).be("button","original-radio")),value:d.label,type:"radio",name:d.name||((p=c(i))==null?void 0:p.name),disabled:c(s),onFocus:f[1]||(f[1]=v=>o.value=!0),onBlur:f[2]||(f[2]=v=>o.value=!1)},null,42,x1e),[[Ad,c(l)]]),k("span",{class:N(c(n).be("button","inner")),style:We(c(l)===d.label?c(u):{}),onKeydown:f[3]||(f[3]=Je(()=>{},["stop"]))},[ke(d.$slots,"default",{},()=>[bt(xe(d.label),1)])],38)],2)}}});var gw=Ie(L1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue"]]);const P1e=Le({id:{type:String,default:void 0},size:On,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:""},fill:{type:String,default:""},label:{type:String,default:void 0},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0}}),D1e=vw,z1e=["id","aria-label","aria-labelledby"],V1e=oe({name:"ElRadioGroup"}),B1e=oe({...V1e,props:P1e,emits:D1e,setup(e,{emit:t}){const n=e,r=Oe("radio"),o=Dr(),a=P(),{formItem:s}=Wn(),{inputId:l,isLabeledByFormItem:i}=$a(n,{formItemContext:s}),u=f=>{t(ut,f),He(()=>t("change",f))};rt(()=>{const f=a.value.querySelectorAll("[type=radio]"),p=f[0];!Array.from(f).some(v=>v.checked)&&p&&(p.tabIndex=0)});const d=$(()=>n.name||o.value);return ct(Vy,Et({...an(n),changeEvent:u,name:d})),Ce(()=>n.modelValue,()=>{n.validateEvent&&(s==null||s.validate("change").catch(f=>void 0))}),(f,p)=>(E(),M("div",{id:c(l),ref_key:"radioGroupRef",ref:a,class:N(c(r).b("group")),role:"radiogroup","aria-label":c(i)?void 0:f.label||"radio-group","aria-labelledby":c(i)?c(s).labelId:void 0},[ke(f.$slots,"default")],10,z1e))}});var _w=Ie(B1e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue"]]);const bw=lt(A1e,{RadioButton:gw,RadioGroup:_w}),F1e=Jt(_w),H1e=Jt(gw);var U1e=oe({name:"NodeContent",setup(){return{ns:Oe("cascader-node")}},render(){const{ns:e}=this,{node:t,panel:n}=this.$parent,{data:r,label:o}=t,{renderLabelFn:a}=n;return je("span",{class:e.e("label")},a?a({node:t,data:r}):o)}});const wv=Symbol(),K1e=oe({name:"ElCascaderNode",components:{ElCheckbox:kr,ElRadio:bw,NodeContent:U1e,ElIcon:Ke,Check:Sl,Loading:Fo,ArrowRight:An},props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const n=Fe(wv),r=Oe("cascader-node"),o=$(()=>n.isHoverMenu),a=$(()=>n.config.multiple),s=$(()=>n.config.checkStrictly),l=$(()=>{var S;return(S=n.checkedNodes[0])==null?void 0:S.uid}),i=$(()=>e.node.isDisabled),u=$(()=>e.node.isLeaf),d=$(()=>s.value&&!u.value||!i.value),f=$(()=>v(n.expandingNode)),p=$(()=>s.value&&n.checkedNodes.some(v)),v=S=>{var O;const{level:T,uid:A}=e.node;return((O=S==null?void 0:S.pathNodes[T-1])==null?void 0:O.uid)===A},h=()=>{f.value||n.expandNode(e.node)},m=S=>{const{node:O}=e;S!==O.checked&&n.handleCheckChange(O,S)},_=()=>{n.lazyLoad(e.node,()=>{u.value||h()})},g=S=>{o.value&&(b(),!u.value&&t("expand",S))},b=()=>{const{node:S}=e;!d.value||S.loading||(S.loaded?h():_())},y=()=>{o.value&&!u.value||(u.value&&!i.value&&!s.value&&!a.value?C(!0):b())},w=S=>{s.value?(m(S),e.node.loaded&&h()):C(S)},C=S=>{e.node.loaded?(m(S),!s.value&&h()):_()};return{panel:n,isHoverMenu:o,multiple:a,checkStrictly:s,checkedNodeId:l,isDisabled:i,isLeaf:u,expandable:d,inExpandingPath:f,inCheckedPath:p,ns:r,handleHoverExpand:g,handleExpand:b,handleClick:y,handleCheck:C,handleSelectCheck:w}}}),W1e=["id","aria-haspopup","aria-owns","aria-expanded","tabindex"],j1e=k("span",null,null,-1);function q1e(e,t,n,r,o,a){const s=nt("el-checkbox"),l=nt("el-radio"),i=nt("check"),u=nt("el-icon"),d=nt("node-content"),f=nt("loading"),p=nt("arrow-right");return E(),M("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!e.isLeaf,"aria-owns":e.isLeaf?null:e.menuId,"aria-expanded":e.inExpandingPath,tabindex:e.expandable?-1:void 0,class:N([e.ns.b(),e.ns.is("selectable",e.checkStrictly),e.ns.is("active",e.node.checked),e.ns.is("disabled",!e.expandable),e.inExpandingPath&&"in-active-path",e.inCheckedPath&&"in-checked-path"]),onMouseenter:t[2]||(t[2]=(...v)=>e.handleHoverExpand&&e.handleHoverExpand(...v)),onFocus:t[3]||(t[3]=(...v)=>e.handleHoverExpand&&e.handleHoverExpand(...v)),onClick:t[4]||(t[4]=(...v)=>e.handleClick&&e.handleClick(...v))},[fe(" prefix "),e.multiple?(E(),me(s,{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:e.isDisabled,onClick:t[0]||(t[0]=Je(()=>{},["stop"])),"onUpdate:modelValue":e.handleSelectCheck},null,8,["model-value","indeterminate","disabled","onUpdate:modelValue"])):e.checkStrictly?(E(),me(l,{key:1,"model-value":e.checkedNodeId,label:e.node.uid,disabled:e.isDisabled,"onUpdate:modelValue":e.handleSelectCheck,onClick:t[1]||(t[1]=Je(()=>{},["stop"]))},{default:ue(()=>[fe(` + Add an empty element to avoid render label, + do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 + `),j1e]),_:1},8,["model-value","label","disabled","onUpdate:modelValue"])):e.isLeaf&&e.node.checked?(E(),me(u,{key:2,class:N(e.ns.e("prefix"))},{default:ue(()=>[X(i)]),_:1},8,["class"])):fe("v-if",!0),fe(" content "),X(d),fe(" postfix "),e.isLeaf?fe("v-if",!0):(E(),M(qe,{key:3},[e.node.loading?(E(),me(u,{key:0,class:N([e.ns.is("loading"),e.ns.e("postfix")])},{default:ue(()=>[X(f)]),_:1},8,["class"])):(E(),me(u,{key:1,class:N(["arrow-right",e.ns.e("postfix")])},{default:ue(()=>[X(p)]),_:1},8,["class"]))],64))],42,W1e)}var G1e=Ie(K1e,[["render",q1e],["__file","/home/runner/work/element-plus/element-plus/packages/components/cascader-panel/src/node.vue"]]);const Y1e=oe({name:"ElCascaderMenu",components:{Loading:Fo,ElIcon:Ke,ElScrollbar:Wo,ElCascaderNode:G1e},props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0}},setup(e){const t=tt(),n=Oe("cascader-menu"),{t:r}=Ct(),o=qd();let a=null,s=null;const l=Fe(wv),i=P(null),u=$(()=>!e.nodes.length),d=$(()=>!l.initialLoaded),f=$(()=>`cascader-menu-${o}-${e.index}`),p=_=>{a=_.target},v=_=>{if(!(!l.isHoverMenu||!a||!i.value))if(a.contains(_.target)){h();const g=t.vnode.el,{left:b}=g.getBoundingClientRect(),{offsetWidth:y,offsetHeight:w}=g,C=_.clientX-b,S=a.offsetTop,O=S+a.offsetHeight;i.value.innerHTML=` + + + `}else s||(s=window.setTimeout(m,l.config.hoverThreshold))},h=()=>{s&&(clearTimeout(s),s=null)},m=()=>{i.value&&(i.value.innerHTML="",h())};return{ns:n,panel:l,hoverZone:i,isEmpty:u,isLoading:d,menuId:f,t:r,handleExpand:p,handleMouseMove:v,clearHoverZone:m}}});function X1e(e,t,n,r,o,a){const s=nt("el-cascader-node"),l=nt("loading"),i=nt("el-icon"),u=nt("el-scrollbar");return E(),me(u,{key:e.menuId,tag:"ul",role:"menu",class:N(e.ns.b()),"wrap-class":e.ns.e("wrap"),"view-class":[e.ns.e("list"),e.ns.is("empty",e.isEmpty)],onMousemove:e.handleMouseMove,onMouseleave:e.clearHoverZone},{default:ue(()=>{var d;return[(E(!0),M(qe,null,vt(e.nodes,f=>(E(),me(s,{key:f.uid,node:f,"menu-id":e.menuId,onExpand:e.handleExpand},null,8,["node","menu-id","onExpand"]))),128)),e.isLoading?(E(),M("div",{key:0,class:N(e.ns.e("empty-text"))},[X(i,{size:"14",class:N(e.ns.is("loading"))},{default:ue(()=>[X(l)]),_:1},8,["class"]),bt(" "+xe(e.t("el.cascader.loading")),1)],2)):e.isEmpty?(E(),M("div",{key:1,class:N(e.ns.e("empty-text"))},xe(e.t("el.cascader.noData")),3)):(d=e.panel)!=null&&d.isHoverMenu?(E(),M("svg",{key:2,ref:"hoverZone",class:N(e.ns.e("hover-zone"))},null,2)):fe("v-if",!0)]}),_:1},8,["class","wrap-class","view-class","onMousemove","onMouseleave"])}var Z1e=Ie(Y1e,[["render",X1e],["__file","/home/runner/work/element-plus/element-plus/packages/components/cascader-panel/src/menu.vue"]]);let J1e=0;const Q1e=e=>{const t=[e];let{parent:n}=e;for(;n;)t.unshift(n),n=n.parent;return t};let W0=class j0{constructor(t,n,r,o=!1){this.data=t,this.config=n,this.parent=r,this.root=o,this.uid=J1e++,this.checked=!1,this.indeterminate=!1,this.loading=!1;const{value:a,label:s,children:l}=n,i=t[l],u=Q1e(this);this.level=o?0:r?r.level+1:1,this.value=t[a],this.label=t[s],this.pathNodes=u,this.pathValues=u.map(d=>d.value),this.pathLabels=u.map(d=>d.label),this.childrenData=i,this.children=(i||[]).map(d=>new j0(d,n,this)),this.loaded=!n.lazy||this.isLeaf||!hr(i)}get isDisabled(){const{data:t,parent:n,config:r}=this,{disabled:o,checkStrictly:a}=r;return(Xe(o)?o(t,this):!!t[o])||!a&&(n==null?void 0:n.isDisabled)}get isLeaf(){const{data:t,config:n,childrenData:r,loaded:o}=this,{lazy:a,leaf:s}=n,l=Xe(s)?s(t,this):t[s];return _n(l)?a&&!o?!1:!(Array.isArray(r)&&r.length):!!l}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){const{childrenData:n,children:r}=this,o=new j0(t,this.config,this);return Array.isArray(n)?n.push(t):this.childrenData=[t],r.push(o),o}calcText(t,n){const r=t?this.pathLabels.join(n):this.label;return this.text=r,r}broadcast(t,...n){const r=`onParent${Yr(t)}`;this.children.forEach(o=>{o&&(o.broadcast(t,...n),o[r]&&o[r](...n))})}emit(t,...n){const{parent:r}=this,o=`onChild${Yr(t)}`;r&&(r[o]&&r[o](...n),r.emit(t,...n))}onParentCheck(t){this.isDisabled||this.setCheckState(t)}onChildCheck(){const{children:t}=this,n=t.filter(o=>!o.isDisabled),r=n.length?n.every(o=>o.checked):!1;this.setCheckState(r)}setCheckState(t){const n=this.children.length,r=this.children.reduce((o,a)=>{const s=a.checked?1:a.indeterminate?.5:0;return o+s},0);this.checked=this.loaded&&this.children.filter(o=>!o.isDisabled).every(o=>o.loaded&&o.checked)&&t,this.indeterminate=this.loaded&&r!==n&&r>0}doCheck(t){if(this.checked===t)return;const{checkStrictly:n,multiple:r}=this.config;n||!r?this.checked=t:(this.broadcast("check",t),this.setCheckState(t),this.emit("check"))}};const q0=(e,t)=>e.reduce((n,r)=>(r.isLeaf?n.push(r):(!t&&n.push(r),n=n.concat(q0(r.children,t))),n),[]);class Qg{constructor(t,n){this.config=n;const r=(t||[]).map(o=>new W0(o,this.config));this.nodes=r,this.allNodes=q0(r,!1),this.leafNodes=q0(r,!0)}getNodes(){return this.nodes}getFlattedNodes(t){return t?this.leafNodes:this.allNodes}appendNode(t,n){const r=n?n.appendChild(t):new W0(t,this.config);n||this.nodes.push(r),this.allNodes.push(r),r.isLeaf&&this.leafNodes.push(r)}appendNodes(t,n){t.forEach(r=>this.appendNode(r,n))}getNodeByValue(t,n=!1){return!t&&t!==0?null:this.getFlattedNodes(n).find(o=>ur(o.value,t)||ur(o.pathValues,t))||null}getSameNode(t){return t&&this.getFlattedNodes(!1).find(({value:r,level:o})=>ur(t.value,r)&&t.level===o)||null}}const yw=Le({modelValue:{type:he([Number,String,Array])},options:{type:he(Array),default:()=>[]},props:{type:he(Object),default:()=>({})}}),eme={expandTrigger:"click",multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Ot,value:"value",label:"label",children:"children",leaf:"leaf",disabled:"disabled",hoverThreshold:500},tme=e=>$(()=>({...eme,...e.props})),e_=e=>{if(!e)return 0;const t=e.id.split("-");return Number(t[t.length-2])},nme=e=>{if(!e)return;const t=e.querySelector("input");t?t.click():jb(e)&&e.click()},rme=(e,t)=>{const n=t.slice(0),r=n.map(a=>a.uid),o=e.reduce((a,s)=>{const l=r.indexOf(s.uid);return l>-1&&(a.push(s),n.splice(l,1),r.splice(l,1)),a},[]);return o.push(...n),o},ome=oe({name:"ElCascaderPanel",components:{ElCascaderMenu:Z1e},props:{...yw,border:{type:Boolean,default:!0},renderLabel:Function},emits:[ut,Bt,"close","expand-change"],setup(e,{emit:t,slots:n}){let r=!1;const o=Oe("cascader"),a=tme(e);let s=null;const l=P(!0),i=P([]),u=P(null),d=P([]),f=P(null),p=P([]),v=$(()=>a.value.expandTrigger==="hover"),h=$(()=>e.renderLabel||n.default),m=()=>{const{options:V}=e,H=a.value;r=!1,s=new Qg(V,H),d.value=[s.getNodes()],H.lazy&&hr(e.options)?(l.value=!1,_(void 0,U=>{U&&(s=new Qg(U,H),d.value=[s.getNodes()]),l.value=!0,T(!1,!0)})):T(!1,!0)},_=(V,H)=>{const U=a.value;V=V||new W0({},U,void 0,!0),V.loading=!0;const K=I=>{const x=V,L=x.root?null:x;I&&(s==null||s.appendNodes(I,L)),x.loading=!1,x.loaded=!0,x.childrenData=x.childrenData||[],H&&H(I)};U.lazyLoad(V,K)},g=(V,H)=>{var U;const{level:K}=V,I=d.value.slice(0,K);let x;V.isLeaf?x=V.pathNodes[K-2]:(x=V,I.push(V.children)),((U=f.value)==null?void 0:U.uid)!==(x==null?void 0:x.uid)&&(f.value=V,d.value=I,!H&&t("expand-change",(V==null?void 0:V.pathValues)||[]))},b=(V,H,U=!0)=>{const{checkStrictly:K,multiple:I}=a.value,x=p.value[0];r=!0,!I&&(x==null||x.doCheck(!1)),V.doCheck(H),O(),U&&!I&&!K&&t("close"),!U&&!I&&!K&&y(V)},y=V=>{V&&(V=V.parent,y(V),V&&g(V))},w=V=>s==null?void 0:s.getFlattedNodes(V),C=V=>{var H;return(H=w(V))==null?void 0:H.filter(U=>U.checked!==!1)},S=()=>{p.value.forEach(V=>V.doCheck(!1)),O()},O=()=>{var V;const{checkStrictly:H,multiple:U}=a.value,K=p.value,I=C(!H),x=rme(K,I),L=x.map(z=>z.valueByOption);p.value=x,u.value=U?L:(V=L[0])!=null?V:null},T=(V=!1,H=!1)=>{const{modelValue:U}=e,{lazy:K,multiple:I,checkStrictly:x}=a.value,L=!x;if(!(!l.value||r||!H&&ur(U,u.value)))if(K&&!V){const q=lg(dN(ko(U))).map(le=>s==null?void 0:s.getNodeByValue(le)).filter(le=>!!le&&!le.loaded&&!le.loading);q.length?q.forEach(le=>{_(le,()=>T(!1,H))}):T(!0,H)}else{const z=I?ko(U):[U],q=lg(z.map(le=>s==null?void 0:s.getNodeByValue(le,L)));A(q,H),u.value=Lb(U)}},A=(V,H=!0)=>{const{checkStrictly:U}=a.value,K=p.value,I=V.filter(z=>!!z&&(U||z.isLeaf)),x=s==null?void 0:s.getSameNode(f.value),L=H&&x||I[0];L?L.pathNodes.forEach(z=>g(z,!0)):f.value=null,K.forEach(z=>z.doCheck(!1)),I.forEach(z=>z.doCheck(!0)),p.value=I,He(R)},R=()=>{gt&&i.value.forEach(V=>{const H=V==null?void 0:V.$el;if(H){const U=H.querySelector(`.${o.namespace.value}-scrollbar__wrap`),K=H.querySelector(`.${o.b("node")}.${o.is("active")}`)||H.querySelector(`.${o.b("node")}.in-active-path`);ay(U,K)}})},B=V=>{const H=V.target,{code:U}=V;switch(U){case Ge.up:case Ge.down:{V.preventDefault();const K=U===Ge.up?-1:1;ac(qb(H,K,`.${o.b("node")}[tabindex="-1"]`));break}case Ge.left:{V.preventDefault();const K=i.value[e_(H)-1],I=K==null?void 0:K.$el.querySelector(`.${o.b("node")}[aria-expanded="true"]`);ac(I);break}case Ge.right:{V.preventDefault();const K=i.value[e_(H)+1],I=K==null?void 0:K.$el.querySelector(`.${o.b("node")}[tabindex="-1"]`);ac(I);break}case Ge.enter:nme(H);break}};return ct(wv,Et({config:a,expandingNode:f,checkedNodes:p,isHoverMenu:v,initialLoaded:l,renderLabelFn:h,lazyLoad:_,expandNode:g,handleCheckChange:b})),Ce([a,()=>e.options],m,{deep:!0,immediate:!0}),Ce(()=>e.modelValue,()=>{r=!1,T()},{deep:!0}),Ce(()=>u.value,V=>{ur(V,e.modelValue)||(t(ut,V),t(Bt,V))}),bh(()=>i.value=[]),rt(()=>!hr(e.modelValue)&&T()),{ns:o,menuList:i,menus:d,checkedNodes:p,handleKeyDown:B,handleCheckChange:b,getFlattedNodes:w,getCheckedNodes:C,clearCheckedNodes:S,calculateCheckedValue:O,scrollToExpandingNode:R}}});function ame(e,t,n,r,o,a){const s=nt("el-cascader-menu");return E(),M("div",{class:N([e.ns.b("panel"),e.ns.is("bordered",e.border)]),onKeydown:t[0]||(t[0]=(...l)=>e.handleKeyDown&&e.handleKeyDown(...l))},[(E(!0),M(qe,null,vt(e.menus,(l,i)=>(E(),me(s,{key:i,ref_for:!0,ref:u=>e.menuList[i]=u,index:i,nodes:[...l]},null,8,["index","nodes"]))),128))],34)}var fc=Ie(ome,[["render",ame],["__file","/home/runner/work/element-plus/element-plus/packages/components/cascader-panel/src/index.vue"]]);fc.install=e=>{e.component(fc.name,fc)};const ww=fc,sme=ww,Ev=Le({closable:Boolean,type:{type:String,values:["success","info","warning","danger",""],default:""},hit:Boolean,disableTransitions:Boolean,color:{type:String,default:""},size:{type:String,values:Ho,default:""},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),lme={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},ime=oe({name:"ElTag"}),ume=oe({...ime,props:Ev,emits:lme,setup(e,{emit:t}){const n=e,r=sn(),o=Oe("tag"),a=$(()=>{const{type:i,hit:u,effect:d,closable:f,round:p}=n;return[o.b(),o.is("closable",f),o.m(i),o.m(r.value),o.m(d),o.is("hit",u),o.is("round",p)]}),s=i=>{t("close",i)},l=i=>{t("click",i)};return(i,u)=>i.disableTransitions?(E(),M("span",{key:0,class:N(c(a)),style:We({backgroundColor:i.color}),onClick:l},[k("span",{class:N(c(o).e("content"))},[ke(i.$slots,"default")],2),i.closable?(E(),me(c(Ke),{key:0,class:N(c(o).e("close")),onClick:Je(s,["stop"])},{default:ue(()=>[X(c(wr))]),_:1},8,["class","onClick"])):fe("v-if",!0)],6)):(E(),me(tn,{key:1,name:`${c(o).namespace.value}-zoom-in-center`,appear:""},{default:ue(()=>[k("span",{class:N(c(a)),style:We({backgroundColor:i.color}),onClick:l},[k("span",{class:N(c(o).e("content"))},[ke(i.$slots,"default")],2),i.closable?(E(),me(c(Ke),{key:0,class:N(c(o).e("close")),onClick:Je(s,["stop"])},{default:ue(()=>[X(c(wr))]),_:1},8,["class","onClick"])):fe("v-if",!0)],6)]),_:3},8,["name"]))}});var cme=Ie(ume,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tag/src/tag.vue"]]);const Pi=lt(cme),dme=Le({...yw,size:On,placeholder:String,disabled:Boolean,clearable:Boolean,filterable:Boolean,filterMethod:{type:he(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:" / "},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,collapseTagsTooltip:{type:Boolean,default:!1},debounce:{type:Number,default:300},beforeFilter:{type:he(Function),default:()=>!0},popperClass:{type:String,default:""},teleported:gn.teleported,tagType:{...Ev.type,default:"info"},validateEvent:{type:Boolean,default:!0}}),fme={[ut]:e=>!!e||e===null,[Bt]:e=>!!e||e===null,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,visibleChange:e=>rn(e),expandChange:e=>!!e,removeTag:e=>!!e},pme={key:0},hme=["placeholder","onKeydown"],vme=["onClick"],mme="ElCascader",gme=oe({name:mme}),_me=oe({...gme,props:dme,emits:fme,setup(e,{expose:t,emit:n}){const r=e,o={modifiers:[{name:"arrowPosition",enabled:!0,phase:"main",fn:({state:se})=>{const{modifiersData:pe,placement:Me}=se;["right","left","bottom","top"].includes(Me)||(pe.arrow.x=35)},requires:["arrow"]}]},a=El();let s=0,l=0;const i=Oe("cascader"),u=Oe("input"),{t:d}=Ct(),{form:f,formItem:p}=Wn(),v=P(null),h=P(null),m=P(null),_=P(null),g=P(null),b=P(!1),y=P(!1),w=P(!1),C=P(""),S=P(""),O=P([]),T=P([]),A=P([]),R=P(!1),B=$(()=>a.style),V=$(()=>r.disabled||(f==null?void 0:f.disabled)),H=$(()=>r.placeholder||d("el.cascader.placeholder")),U=$(()=>S.value||O.value.length>0||R.value?"":H.value),K=sn(),I=$(()=>["small"].includes(K.value)?"small":"default"),x=$(()=>!!r.props.multiple),L=$(()=>!r.filterable||x.value),z=$(()=>x.value?S.value:C.value),q=$(()=>{var se;return((se=_.value)==null?void 0:se.checkedNodes)||[]}),le=$(()=>!r.clearable||V.value||w.value||!y.value?!1:!!q.value.length),G=$(()=>{const{showAllLevels:se,separator:pe}=r,Me=q.value;return Me.length?x.value?"":Me[0].calcText(se,pe):""}),ae=$({get(){return Lb(r.modelValue)},set(se){n(ut,se),n(Bt,se),r.validateEvent&&(p==null||p.validate("change").catch(pe=>void 0))}}),be=$(()=>{var se,pe;return(pe=(se=v.value)==null?void 0:se.popperRef)==null?void 0:pe.contentRef}),te=$(()=>[i.b(),i.m(K.value),i.is("disabled",V.value),a.class]),de=$(()=>[u.e("icon"),"icon-arrow-down",i.is("reverse",b.value)]),Z=se=>{var pe,Me,W;V.value||(se=se??!b.value,se!==b.value&&(b.value=se,(Me=(pe=h.value)==null?void 0:pe.input)==null||Me.setAttribute("aria-expanded",`${se}`),se?(Y(),He((W=_.value)==null?void 0:W.scrollToExpandingNode)):r.filterable&&we(),n("visibleChange",se)))},Y=()=>{He(()=>{var se;(se=v.value)==null||se.updatePopper()})},ce=()=>{w.value=!1},ve=se=>{const{showAllLevels:pe,separator:Me}=r;return{node:se,key:se.uid,text:se.calcText(pe,Me),hitState:!1,closable:!V.value&&!se.isDisabled,isCollapseTag:!1}},Ne=se=>{var pe;const Me=se.node;Me.doCheck(!1),(pe=_.value)==null||pe.calculateCheckedValue(),n("removeTag",Me.valueByOption)},j=()=>{if(!x.value)return;const se=q.value,pe=[],Me=[];if(se.forEach(W=>Me.push(ve(W))),T.value=Me,se.length){const[W,...ee]=se,Ee=ee.length;pe.push(ve(W)),Ee&&(r.collapseTags?pe.push({key:-1,text:`+ ${Ee}`,closable:!1,isCollapseTag:!0}):ee.forEach(Ae=>pe.push(ve(Ae))))}O.value=pe},D=()=>{var se,pe;const{filterMethod:Me,showAllLevels:W,separator:ee}=r,Ee=(pe=(se=_.value)==null?void 0:se.getFlattedNodes(!r.props.checkStrictly))==null?void 0:pe.filter(Ae=>Ae.isDisabled?!1:(Ae.calcText(W,ee),Me(Ae,z.value)));x.value&&(O.value.forEach(Ae=>{Ae.hitState=!1}),T.value.forEach(Ae=>{Ae.hitState=!1})),w.value=!0,A.value=Ee,Y()},F=()=>{var se;let pe;w.value&&g.value?pe=g.value.$el.querySelector(`.${i.e("suggestion-item")}`):pe=(se=_.value)==null?void 0:se.$el.querySelector(`.${i.b("node")}[tabindex="-1"]`),pe&&(pe.focus(),!w.value&&pe.click())},Q=()=>{var se,pe;const Me=(se=h.value)==null?void 0:se.input,W=m.value,ee=(pe=g.value)==null?void 0:pe.$el;if(!(!gt||!Me)){if(ee){const Ee=ee.querySelector(`.${i.e("suggestion-list")}`);Ee.style.minWidth=`${Me.offsetWidth}px`}if(W){const{offsetHeight:Ee}=W,Ae=O.value.length>0?`${Math.max(Ee+6,s)}px`:`${s}px`;Me.style.height=Ae,Y()}}},ge=se=>{var pe;return(pe=_.value)==null?void 0:pe.getCheckedNodes(se)},ne=se=>{Y(),n("expandChange",se)},Se=se=>{var pe;const Me=(pe=se.target)==null?void 0:pe.value;if(se.type==="compositionend")R.value=!1,He(()=>ze(Me));else{const W=Me[Me.length-1]||"";R.value=!Wd(W)}},ye=se=>{if(!R.value)switch(se.code){case Ge.enter:Z();break;case Ge.down:Z(!0),He(F),se.preventDefault();break;case Ge.esc:b.value===!0&&(se.preventDefault(),se.stopPropagation(),Z(!1));break;case Ge.tab:Z(!1);break}},Te=()=>{var se;(se=_.value)==null||se.clearCheckedNodes(),!b.value&&r.filterable&&we(),Z(!1)},we=()=>{const{value:se}=G;C.value=se,S.value=se},J=se=>{var pe,Me;const{checked:W}=se;x.value?(pe=_.value)==null||pe.handleCheckChange(se,!W,!1):(!W&&((Me=_.value)==null||Me.handleCheckChange(se,!0,!1)),Z(!1))},_e=se=>{const pe=se.target,{code:Me}=se;switch(Me){case Ge.up:case Ge.down:{const W=Me===Ge.up?-1:1;ac(qb(pe,W,`.${i.e("suggestion-item")}[tabindex="-1"]`));break}case Ge.enter:pe.click();break}},De=()=>{const se=O.value,pe=se[se.length-1];l=S.value?0:l+1,!(!pe||!l||r.collapseTags&&se.length>1)&&(pe.hitState?Ne(pe):pe.hitState=!0)},$e=se=>{n("focus",se)},Pe=se=>{n("blur",se)},Ue=Un(()=>{const{value:se}=z;if(!se)return;const pe=r.beforeFilter(se);Ys(pe)?pe.then(D).catch(()=>{}):pe!==!1?D():ce()},r.debounce),ze=(se,pe)=>{!b.value&&Z(!0),!(pe!=null&&pe.isComposing)&&(se?Ue():ce())};return Ce(w,Y),Ce([q,V],j),Ce(O,()=>{He(()=>Q())}),Ce(G,we,{immediate:!0}),rt(()=>{const se=h.value.input,pe=Number.parseFloat(jc(u.cssVarName("input-height"),se).value)-2;s=se.offsetHeight||pe,Rn(se,Q)}),t({getCheckedNodes:ge,cascaderPanelRef:be}),(se,pe)=>(E(),me(c(Kn),{ref_key:"tooltipRef",ref:v,visible:b.value,teleported:se.teleported,"popper-class":[c(i).e("dropdown"),se.popperClass],"popper-options":o,"fallback-placements":["bottom-start","bottom","top-start","top","right","left"],"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:"bottom-start",transition:`${c(i).namespace.value}-zoom-in-top`,effect:"light",pure:"",persistent:"",onHide:ce},{default:ue(()=>[ot((E(),M("div",{class:N(c(te)),style:We(c(B)),onClick:pe[5]||(pe[5]=()=>Z(c(L)?void 0:!0)),onKeydown:ye,onMouseenter:pe[6]||(pe[6]=Me=>y.value=!0),onMouseleave:pe[7]||(pe[7]=Me=>y.value=!1)},[X(c(Nn),{ref_key:"input",ref:h,modelValue:C.value,"onUpdate:modelValue":pe[1]||(pe[1]=Me=>C.value=Me),placeholder:c(U),readonly:c(L),disabled:c(V),"validate-event":!1,size:c(K),class:N(c(i).is("focus",b.value)),onCompositionstart:Se,onCompositionupdate:Se,onCompositionend:Se,onFocus:$e,onBlur:Pe,onInput:ze},{suffix:ue(()=>[c(le)?(E(),me(c(Ke),{key:"clear",class:N([c(u).e("icon"),"icon-circle-close"]),onClick:Je(Te,["stop"])},{default:ue(()=>[X(c(Bo))]),_:1},8,["class","onClick"])):(E(),me(c(Ke),{key:"arrow-down",class:N(c(de)),onClick:pe[0]||(pe[0]=Je(Me=>Z(),["stop"]))},{default:ue(()=>[X(c(Vo))]),_:1},8,["class"]))]),_:1},8,["modelValue","placeholder","readonly","disabled","size","class"]),c(x)?(E(),M("div",{key:0,ref_key:"tagWrapper",ref:m,class:N(c(i).e("tags"))},[(E(!0),M(qe,null,vt(O.value,Me=>(E(),me(c(Pi),{key:Me.key,type:se.tagType,size:c(I),hit:Me.hitState,closable:Me.closable,"disable-transitions":"",onClose:W=>Ne(Me)},{default:ue(()=>[Me.isCollapseTag===!1?(E(),M("span",pme,xe(Me.text),1)):(E(),me(c(Kn),{key:1,disabled:b.value||!se.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],placement:"bottom",effect:"light"},{default:ue(()=>[k("span",null,xe(Me.text),1)]),content:ue(()=>[k("div",{class:N(c(i).e("collapse-tags"))},[(E(!0),M(qe,null,vt(T.value.slice(1),(W,ee)=>(E(),M("div",{key:ee,class:N(c(i).e("collapse-tag"))},[(E(),me(c(Pi),{key:W.key,class:"in-tooltip",type:se.tagType,size:c(I),hit:W.hitState,closable:W.closable,"disable-transitions":"",onClose:Ee=>Ne(W)},{default:ue(()=>[k("span",null,xe(W.text),1)]),_:2},1032,["type","size","hit","closable","onClose"]))],2))),128))],2)]),_:2},1032,["disabled"]))]),_:2},1032,["type","size","hit","closable","onClose"]))),128)),se.filterable&&!c(V)?ot((E(),M("input",{key:0,"onUpdate:modelValue":pe[2]||(pe[2]=Me=>S.value=Me),type:"text",class:N(c(i).e("search-input")),placeholder:c(G)?"":c(H),onInput:pe[3]||(pe[3]=Me=>ze(S.value,Me)),onClick:pe[4]||(pe[4]=Je(Me=>Z(!0),["stop"])),onKeydown:_t(De,["delete"]),onCompositionstart:Se,onCompositionupdate:Se,onCompositionend:Se},null,42,hme)),[[el,S.value]]):fe("v-if",!0)],2)):fe("v-if",!0)],38)),[[c(Sa),()=>Z(!1),c(be)]])]),content:ue(()=>[ot(X(c(ww),{ref_key:"panel",ref:_,modelValue:c(ae),"onUpdate:modelValue":pe[8]||(pe[8]=Me=>kt(ae)?ae.value=Me:null),options:se.options,props:r.props,border:!1,"render-label":se.$slots.default,onExpandChange:ne,onClose:pe[9]||(pe[9]=Me=>se.$nextTick(()=>Z(!1)))},null,8,["modelValue","options","props","render-label"]),[[yt,!w.value]]),se.filterable?ot((E(),me(c(Wo),{key:0,ref_key:"suggestionPanel",ref:g,tag:"ul",class:N(c(i).e("suggestion-panel")),"view-class":c(i).e("suggestion-list"),onKeydown:_e},{default:ue(()=>[A.value.length?(E(!0),M(qe,{key:0},vt(A.value,Me=>(E(),M("li",{key:Me.uid,class:N([c(i).e("suggestion-item"),c(i).is("checked",Me.checked)]),tabindex:-1,onClick:W=>J(Me)},[k("span",null,xe(Me.text),1),Me.checked?(E(),me(c(Ke),{key:0},{default:ue(()=>[X(c(Sl))]),_:1})):fe("v-if",!0)],10,vme))),128)):ke(se.$slots,"empty",{key:1},()=>[k("li",{class:N(c(i).e("empty-text"))},xe(c(d)("el.cascader.noMatch")),3)])]),_:3},8,["class","view-class"])),[[yt,w.value]]):fe("v-if",!0)]),_:3},8,["visible","teleported","popper-class","transition"]))}});var pc=Ie(_me,[["__file","/home/runner/work/element-plus/element-plus/packages/components/cascader/src/cascader.vue"]]);pc.install=e=>{e.component(pc.name,pc)};const bme=pc,yme=bme,wme=Le({checked:{type:Boolean,default:!1}}),Eme={"update:checked":e=>rn(e),[Bt]:e=>rn(e)},Cme=oe({name:"ElCheckTag"}),Sme=oe({...Cme,props:wme,emits:Eme,setup(e,{emit:t}){const n=e,r=Oe("check-tag"),o=()=>{const a=!n.checked;t(Bt,a),t("update:checked",a)};return(a,s)=>(E(),M("span",{class:N([c(r).b(),c(r).is("checked",a.checked)]),onClick:o},[ke(a.$slots,"default")],2))}});var kme=Ie(Sme,[["__file","/home/runner/work/element-plus/element-plus/packages/components/check-tag/src/check-tag.vue"]]);const $me=lt(kme),Tme=Le({tag:{type:String,default:"div"},span:{type:Number,default:24},offset:{type:Number,default:0},pull:{type:Number,default:0},push:{type:Number,default:0},xs:{type:he([Number,Object]),default:()=>jt({})},sm:{type:he([Number,Object]),default:()=>jt({})},md:{type:he([Number,Object]),default:()=>jt({})},lg:{type:he([Number,Object]),default:()=>jt({})},xl:{type:he([Number,Object]),default:()=>jt({})}}),Ome=oe({name:"ElCol"}),Mme=oe({...Ome,props:Tme,setup(e){const t=e,{gutter:n}=Fe(By,{gutter:$(()=>0)}),r=Oe("col"),o=$(()=>{const s={};return n.value&&(s.paddingLeft=s.paddingRight=`${n.value/2}px`),s}),a=$(()=>{const s=[];return["span","offset","pull","push"].forEach(u=>{const d=t[u];Ze(d)&&(u==="span"?s.push(r.b(`${t[u]}`)):d>0&&s.push(r.b(`${u}-${t[u]}`)))}),["xs","sm","md","lg","xl"].forEach(u=>{Ze(t[u])?s.push(r.b(`${u}-${t[u]}`)):dt(t[u])&&Object.entries(t[u]).forEach(([d,f])=>{s.push(d!=="span"?r.b(`${u}-${d}-${f}`):r.b(`${u}-${f}`))})}),n.value&&s.push(r.is("guttered")),[r.b(),s]});return(s,l)=>(E(),me(pt(s.tag),{class:N(c(a)),style:We(c(o))},{default:ue(()=>[ke(s.$slots,"default")]),_:3},8,["class","style"]))}});var Nme=Ie(Mme,[["__file","/home/runner/work/element-plus/element-plus/packages/components/col/src/col.vue"]]);const Ame=lt(Nme),t_=e=>typeof Ze(e),Rme=Le({accordion:Boolean,modelValue:{type:he([Array,String,Number]),default:()=>jt([])}}),xme={[ut]:t_,[Bt]:t_},Ime=(e,t)=>{const n=P(ol(e.modelValue)),r=a=>{n.value=a;const s=e.accordion?n.value[0]:n.value;t(ut,s),t(Bt,s)},o=a=>{if(e.accordion)r([n.value[0]===a?"":a]);else{const s=[...n.value],l=s.indexOf(a);l>-1?s.splice(l,1):s.push(a),r(s)}};return Ce(()=>e.modelValue,()=>n.value=ol(e.modelValue),{deep:!0}),ct(Ly,{activeNames:n,handleItemClick:o}),{activeNames:n,setActiveNames:r}},Lme=()=>{const e=Oe("collapse");return{rootKls:$(()=>e.b())}},Pme=oe({name:"ElCollapse"}),Dme=oe({...Pme,props:Rme,emits:xme,setup(e,{expose:t,emit:n}){const r=e,{activeNames:o,setActiveNames:a}=Ime(r,n),{rootKls:s}=Lme();return t({activeNames:o,setActiveNames:a}),(l,i)=>(E(),M("div",{class:N(c(s)),role:"tablist","aria-multiselectable":"true"},[ke(l.$slots,"default")],2))}});var zme=Ie(Dme,[["__file","/home/runner/work/element-plus/element-plus/packages/components/collapse/src/collapse.vue"]]);const Vme=oe({name:"ElCollapseTransition"}),Bme=oe({...Vme,setup(e){const t=Oe("collapse-transition"),n={beforeEnter(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0},enter(r){r.dataset.oldOverflow=r.style.overflow,r.scrollHeight!==0?(r.style.maxHeight=`${r.scrollHeight}px`,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom):(r.style.maxHeight=0,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom),r.style.overflow="hidden"},afterEnter(r){r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow},beforeLeave(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.dataset.oldOverflow=r.style.overflow,r.style.maxHeight=`${r.scrollHeight}px`,r.style.overflow="hidden"},leave(r){r.scrollHeight!==0&&(r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0)},afterLeave(r){r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom}};return(r,o)=>(E(),me(tn,ft({name:c(t).b()},iS(n)),{default:ue(()=>[ke(r.$slots,"default")]),_:3},16,["name"]))}});var hc=Ie(Bme,[["__file","/home/runner/work/element-plus/element-plus/packages/components/collapse-transition/src/collapse-transition.vue"]]);hc.install=e=>{e.component(hc.name,hc)};const rf=hc,Fme=rf,Hme=Le({title:{type:String,default:""},name:{type:he([String,Number]),default:()=>qd()},disabled:Boolean}),Ume=e=>{const t=Fe(Ly),n=P(!1),r=P(!1),o=P(qd()),a=$(()=>t==null?void 0:t.activeNames.value.includes(e.name));return{focusing:n,id:o,isActive:a,handleFocus:()=>{setTimeout(()=>{r.value?r.value=!1:n.value=!0},50)},handleHeaderClick:()=>{e.disabled||(t==null||t.handleItemClick(e.name),n.value=!1,r.value=!0)},handleEnterClick:()=>{t==null||t.handleItemClick(e.name)}}},Kme=(e,{focusing:t,isActive:n,id:r})=>{const o=Oe("collapse"),a=$(()=>[o.b("item"),o.is("active",c(n)),o.is("disabled",e.disabled)]),s=$(()=>[o.be("item","header"),o.is("active",c(n)),{focusing:c(t)&&!e.disabled}]),l=$(()=>[o.be("item","arrow"),o.is("active",c(n))]),i=$(()=>o.be("item","wrap")),u=$(()=>o.be("item","content")),d=$(()=>o.b(`content-${c(r)}`)),f=$(()=>o.b(`head-${c(r)}`));return{arrowKls:l,headKls:s,rootKls:a,itemWrapperKls:i,itemContentKls:u,scopedContentId:d,scopedHeadId:f}},Wme=["aria-expanded","aria-controls","aria-describedby"],jme=["id","tabindex"],qme=["id","aria-hidden","aria-labelledby"],Gme=oe({name:"ElCollapseItem"}),Yme=oe({...Gme,props:Hme,setup(e,{expose:t}){const n=e,{focusing:r,id:o,isActive:a,handleFocus:s,handleHeaderClick:l,handleEnterClick:i}=Ume(n),{arrowKls:u,headKls:d,rootKls:f,itemWrapperKls:p,itemContentKls:v,scopedContentId:h,scopedHeadId:m}=Kme(n,{focusing:r,isActive:a,id:o});return t({isActive:a}),(_,g)=>(E(),M("div",{class:N(c(f))},[k("div",{role:"tab","aria-expanded":c(a),"aria-controls":c(h),"aria-describedby":c(h)},[k("div",{id:c(m),class:N(c(d)),role:"button",tabindex:_.disabled?-1:0,onClick:g[0]||(g[0]=(...b)=>c(l)&&c(l)(...b)),onKeypress:g[1]||(g[1]=_t(Je((...b)=>c(i)&&c(i)(...b),["stop","prevent"]),["space","enter"])),onFocus:g[2]||(g[2]=(...b)=>c(s)&&c(s)(...b)),onBlur:g[3]||(g[3]=b=>r.value=!1)},[ke(_.$slots,"title",{},()=>[bt(xe(_.title),1)]),X(c(Ke),{class:N(c(u))},{default:ue(()=>[X(c(An))]),_:1},8,["class"])],42,jme)],8,Wme),X(c(rf),null,{default:ue(()=>[ot(k("div",{id:c(h),class:N(c(p)),role:"tabpanel","aria-hidden":!c(a),"aria-labelledby":c(m)},[k("div",{class:N(c(v))},[ke(_.$slots,"default")],2)],10,qme),[[yt,c(a)]])]),_:3})],2))}});var Ew=Ie(Yme,[["__file","/home/runner/work/element-plus/element-plus/packages/components/collapse/src/collapse-item.vue"]]);const Xme=lt(zme,{CollapseItem:Ew}),Zme=Jt(Ew);let qf=!1;function Di(e,t){if(!gt)return;const n=function(a){var s;(s=t.drag)==null||s.call(t,a)},r=function(a){var s;document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",r),document.removeEventListener("touchmove",n),document.removeEventListener("touchend",r),document.onselectstart=null,document.ondragstart=null,qf=!1,(s=t.end)==null||s.call(t,a)},o=function(a){var s;qf||(a.preventDefault(),document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener("mousemove",n),document.addEventListener("mouseup",r),document.addEventListener("touchmove",n),document.addEventListener("touchend",r),qf=!0,(s=t.start)==null||s.call(t,a))};e.addEventListener("mousedown",o),e.addEventListener("touchstart",o)}const Jme=oe({name:"ElColorAlphaSlider",props:{color:{type:Object,required:!0},vertical:{type:Boolean,default:!1}},setup(e){const t=Oe("color-alpha-slider"),n=tt(),r=xt(),o=xt(),a=P(0),s=P(0),l=P();Ce(()=>e.color.get("alpha"),()=>{v()}),Ce(()=>e.color.value,()=>{v()});function i(){if(!r.value||e.vertical)return 0;const h=n.vnode.el,m=e.color.get("alpha");return h?Math.round(m*(h.offsetWidth-r.value.offsetWidth/2)/100):0}function u(){if(!r.value)return 0;const h=n.vnode.el;if(!e.vertical)return 0;const m=e.color.get("alpha");return h?Math.round(m*(h.offsetHeight-r.value.offsetHeight/2)/100):0}function d(){if(e.color&&e.color.value){const{r:h,g:m,b:_}=e.color.toRgb();return`linear-gradient(to right, rgba(${h}, ${m}, ${_}, 0) 0%, rgba(${h}, ${m}, ${_}, 1) 100%)`}return""}function f(h){h.target!==r.value&&p(h)}function p(h){if(!o.value||!r.value)return;const _=n.vnode.el.getBoundingClientRect(),{clientX:g,clientY:b}=Wh(h);if(e.vertical){let y=b-_.top;y=Math.max(r.value.offsetHeight/2,y),y=Math.min(y,_.height-r.value.offsetHeight/2),e.color.set("alpha",Math.round((y-r.value.offsetHeight/2)/(_.height-r.value.offsetHeight)*100))}else{let y=g-_.left;y=Math.max(r.value.offsetWidth/2,y),y=Math.min(y,_.width-r.value.offsetWidth/2),e.color.set("alpha",Math.round((y-r.value.offsetWidth/2)/(_.width-r.value.offsetWidth)*100))}}function v(){a.value=i(),s.value=u(),l.value=d()}return rt(()=>{if(!o.value||!r.value)return;const h={drag:m=>{p(m)},end:m=>{p(m)}};Di(o.value,h),Di(r.value,h),v()}),{thumb:r,bar:o,thumbLeft:a,thumbTop:s,background:l,handleClick:f,update:v,ns:t}}});function Qme(e,t,n,r,o,a){return E(),M("div",{class:N([e.ns.b(),e.ns.is("vertical",e.vertical)])},[k("div",{ref:"bar",class:N(e.ns.e("bar")),style:We({background:e.background}),onClick:t[0]||(t[0]=(...s)=>e.handleClick&&e.handleClick(...s))},null,6),k("div",{ref:"thumb",class:N(e.ns.e("thumb")),style:We({left:e.thumbLeft+"px",top:e.thumbTop+"px"})},null,6)],2)}var ege=Ie(Jme,[["render",Qme],["__file","/home/runner/work/element-plus/element-plus/packages/components/color-picker/src/components/alpha-slider.vue"]]);const tge=oe({name:"ElColorHueSlider",props:{color:{type:Object,required:!0},vertical:Boolean},setup(e){const t=Oe("color-hue-slider"),n=tt(),r=P(),o=P(),a=P(0),s=P(0),l=$(()=>e.color.get("hue"));Ce(()=>l.value,()=>{p()});function i(v){v.target!==r.value&&u(v)}function u(v){if(!o.value||!r.value)return;const m=n.vnode.el.getBoundingClientRect(),{clientX:_,clientY:g}=Wh(v);let b;if(e.vertical){let y=g-m.top;y=Math.min(y,m.height-r.value.offsetHeight/2),y=Math.max(r.value.offsetHeight/2,y),b=Math.round((y-r.value.offsetHeight/2)/(m.height-r.value.offsetHeight)*360)}else{let y=_-m.left;y=Math.min(y,m.width-r.value.offsetWidth/2),y=Math.max(r.value.offsetWidth/2,y),b=Math.round((y-r.value.offsetWidth/2)/(m.width-r.value.offsetWidth)*360)}e.color.set("hue",b)}function d(){if(!r.value)return 0;const v=n.vnode.el;if(e.vertical)return 0;const h=e.color.get("hue");return v?Math.round(h*(v.offsetWidth-r.value.offsetWidth/2)/360):0}function f(){if(!r.value)return 0;const v=n.vnode.el;if(!e.vertical)return 0;const h=e.color.get("hue");return v?Math.round(h*(v.offsetHeight-r.value.offsetHeight/2)/360):0}function p(){a.value=d(),s.value=f()}return rt(()=>{if(!o.value||!r.value)return;const v={drag:h=>{u(h)},end:h=>{u(h)}};Di(o.value,v),Di(r.value,v),p()}),{bar:o,thumb:r,thumbLeft:a,thumbTop:s,hueValue:l,handleClick:i,update:p,ns:t}}});function nge(e,t,n,r,o,a){return E(),M("div",{class:N([e.ns.b(),e.ns.is("vertical",e.vertical)])},[k("div",{ref:"bar",class:N(e.ns.e("bar")),onClick:t[0]||(t[0]=(...s)=>e.handleClick&&e.handleClick(...s))},null,2),k("div",{ref:"thumb",class:N(e.ns.e("thumb")),style:We({left:e.thumbLeft+"px",top:e.thumbTop+"px"})},null,6)],2)}var rge=Ie(tge,[["render",nge],["__file","/home/runner/work/element-plus/element-plus/packages/components/color-picker/src/components/hue-slider.vue"]]);const oge=Le({modelValue:String,id:String,showAlpha:Boolean,colorFormat:String,disabled:Boolean,size:On,popperClass:{type:String,default:""},label:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},predefine:{type:he(Array)},validateEvent:{type:Boolean,default:!0}}),age={[ut]:e=>Qe(e)||yn(e),[Bt]:e=>Qe(e)||yn(e),activeChange:e=>Qe(e)||yn(e)},Cw=Symbol("colorPickerContextKey"),n_=function(e,t,n){return[e,t*n/((e=(2-t)*n)<1?e:2-e)||0,e/2]},sge=function(e){return typeof e=="string"&&e.includes(".")&&Number.parseFloat(e)===1},lge=function(e){return typeof e=="string"&&e.includes("%")},js=function(e,t){sge(e)&&(e="100%");const n=lge(e);return e=Math.min(t,Math.max(0,Number.parseFloat(`${e}`))),n&&(e=Number.parseInt(`${e*t}`,10)/100),Math.abs(e-t)<1e-6?1:e%t/Number.parseFloat(t)},r_={10:"A",11:"B",12:"C",13:"D",14:"E",15:"F"},vc=e=>{e=Math.min(Math.round(e),255);const t=Math.floor(e/16),n=e%16;return`${r_[t]||t}${r_[n]||n}`},o_=function({r:e,g:t,b:n}){return Number.isNaN(+e)||Number.isNaN(+t)||Number.isNaN(+n)?"":`#${vc(e)}${vc(t)}${vc(n)}`},Gf={A:10,B:11,C:12,D:13,E:14,F:15},Ia=function(e){return e.length===2?(Gf[e[0].toUpperCase()]||+e[0])*16+(Gf[e[1].toUpperCase()]||+e[1]):Gf[e[1].toUpperCase()]||+e[1]},ige=function(e,t,n){t=t/100,n=n/100;let r=t;const o=Math.max(n,.01);n*=2,t*=n<=1?n:2-n,r*=o<=1?o:2-o;const a=(n+t)/2,s=n===0?2*r/(o+r):2*t/(n+t);return{h:e,s:s*100,v:a*100}},a_=(e,t,n)=>{e=js(e,255),t=js(t,255),n=js(n,255);const r=Math.max(e,t,n),o=Math.min(e,t,n);let a;const s=r,l=r-o,i=r===0?0:l/r;if(r===o)a=0;else{switch(r){case e:{a=(t-n)/l+(t{this._hue=Math.max(0,Math.min(360,r)),this._saturation=Math.max(0,Math.min(100,o)),this._value=Math.max(0,Math.min(100,a)),this.doOnChange()};if(t.includes("hsl")){const r=t.replace(/hsla|hsl|\(|\)/gm,"").split(/\s|,/g).filter(o=>o!=="").map((o,a)=>a>2?Number.parseFloat(o):Number.parseInt(o,10));if(r.length===4?this._alpha=Number.parseFloat(r[3])*100:r.length===3&&(this._alpha=100),r.length>=3){const{h:o,s:a,v:s}=ige(r[0],r[1],r[2]);n(o,a,s)}}else if(t.includes("hsv")){const r=t.replace(/hsva|hsv|\(|\)/gm,"").split(/\s|,/g).filter(o=>o!=="").map((o,a)=>a>2?Number.parseFloat(o):Number.parseInt(o,10));r.length===4?this._alpha=Number.parseFloat(r[3])*100:r.length===3&&(this._alpha=100),r.length>=3&&n(r[0],r[1],r[2])}else if(t.includes("rgb")){const r=t.replace(/rgba|rgb|\(|\)/gm,"").split(/\s|,/g).filter(o=>o!=="").map((o,a)=>a>2?Number.parseFloat(o):Number.parseInt(o,10));if(r.length===4?this._alpha=Number.parseFloat(r[3])*100:r.length===3&&(this._alpha=100),r.length>=3){const{h:o,s:a,v:s}=a_(r[0],r[1],r[2]);n(o,a,s)}}else if(t.includes("#")){const r=t.replace("#","").trim();if(!/^[0-9a-fA-F]{3}$|^[0-9a-fA-F]{6}$|^[0-9a-fA-F]{8}$/.test(r))return;let o,a,s;r.length===3?(o=Ia(r[0]+r[0]),a=Ia(r[1]+r[1]),s=Ia(r[2]+r[2])):(r.length===6||r.length===8)&&(o=Ia(r.slice(0,2)),a=Ia(r.slice(2,4)),s=Ia(r.slice(4,6))),r.length===8?this._alpha=Ia(r.slice(6))/255*100:(r.length===3||r.length===6)&&(this._alpha=100);const{h:l,s:i,v:u}=a_(o,a,s);n(l,i,u)}}compare(t){return Math.abs(t._hue-this._hue)<2&&Math.abs(t._saturation-this._saturation)<1&&Math.abs(t._value-this._value)<1&&Math.abs(t._alpha-this._alpha)<1}doOnChange(){const{_hue:t,_saturation:n,_value:r,_alpha:o,format:a}=this;if(this.enableAlpha)switch(a){case"hsl":{const s=n_(t,n/100,r/100);this.value=`hsla(${t}, ${Math.round(s[1]*100)}%, ${Math.round(s[2]*100)}%, ${this.get("alpha")/100})`;break}case"hsv":{this.value=`hsva(${t}, ${Math.round(n)}%, ${Math.round(r)}%, ${this.get("alpha")/100})`;break}case"hex":{this.value=`${o_(Pl(t,n,r))}${vc(o*255/100)}`;break}default:{const{r:s,g:l,b:i}=Pl(t,n,r);this.value=`rgba(${s}, ${l}, ${i}, ${this.get("alpha")/100})`}}else switch(a){case"hsl":{const s=n_(t,n/100,r/100);this.value=`hsl(${t}, ${Math.round(s[1]*100)}%, ${Math.round(s[2]*100)}%)`;break}case"hsv":{this.value=`hsv(${t}, ${Math.round(n)}%, ${Math.round(r)}%)`;break}case"rgb":{const{r:s,g:l,b:i}=Pl(t,n,r);this.value=`rgb(${s}, ${l}, ${i})`;break}default:this.value=o_(Pl(t,n,r))}}};const uge=oe({props:{colors:{type:Array,required:!0},color:{type:Object,required:!0}},setup(e){const t=Oe("color-predefine"),{currentColor:n}=Fe(Cw),r=P(a(e.colors,e.color));Ce(()=>n.value,s=>{const l=new oi;l.fromString(s),r.value.forEach(i=>{i.selected=l.compare(i)})}),Qn(()=>{r.value=a(e.colors,e.color)});function o(s){e.color.fromString(e.colors[s])}function a(s,l){return s.map(i=>{const u=new oi;return u.enableAlpha=!0,u.format="rgba",u.fromString(i),u.selected=u.value===l.value,u})}return{rgbaColors:r,handleSelect:o,ns:t}}}),cge=["onClick"];function dge(e,t,n,r,o,a){return E(),M("div",{class:N(e.ns.b())},[k("div",{class:N(e.ns.e("colors"))},[(E(!0),M(qe,null,vt(e.rgbaColors,(s,l)=>(E(),M("div",{key:e.colors[l],class:N([e.ns.e("color-selector"),e.ns.is("alpha",s._alpha<100),{selected:s.selected}]),onClick:i=>e.handleSelect(l)},[k("div",{style:We({backgroundColor:s.value})},null,4)],10,cge))),128))],2)],2)}var fge=Ie(uge,[["render",dge],["__file","/home/runner/work/element-plus/element-plus/packages/components/color-picker/src/components/predefine.vue"]]);const pge=oe({name:"ElSlPanel",props:{color:{type:Object,required:!0}},setup(e){const t=Oe("color-svpanel"),n=tt(),r=P(0),o=P(0),a=P("hsl(0, 100%, 50%)"),s=$(()=>{const u=e.color.get("hue"),d=e.color.get("value");return{hue:u,value:d}});function l(){const u=e.color.get("saturation"),d=e.color.get("value"),f=n.vnode.el,{clientWidth:p,clientHeight:v}=f;o.value=u*p/100,r.value=(100-d)*v/100,a.value=`hsl(${e.color.get("hue")}, 100%, 50%)`}function i(u){const f=n.vnode.el.getBoundingClientRect(),{clientX:p,clientY:v}=Wh(u);let h=p-f.left,m=v-f.top;h=Math.max(0,h),h=Math.min(h,f.width),m=Math.max(0,m),m=Math.min(m,f.height),o.value=h,r.value=m,e.color.set({saturation:h/f.width*100,value:100-m/f.height*100})}return Ce(()=>s.value,()=>{l()}),rt(()=>{Di(n.vnode.el,{drag:u=>{i(u)},end:u=>{i(u)}}),l()}),{cursorTop:r,cursorLeft:o,background:a,colorValue:s,handleDrag:i,update:l,ns:t}}}),hge=k("div",null,null,-1),vge=[hge];function mge(e,t,n,r,o,a){return E(),M("div",{class:N(e.ns.b()),style:We({backgroundColor:e.background})},[k("div",{class:N(e.ns.e("white"))},null,2),k("div",{class:N(e.ns.e("black"))},null,2),k("div",{class:N(e.ns.e("cursor")),style:We({top:e.cursorTop+"px",left:e.cursorLeft+"px"})},vge,6)],6)}var gge=Ie(pge,[["render",mge],["__file","/home/runner/work/element-plus/element-plus/packages/components/color-picker/src/components/sv-panel.vue"]]);const _ge=["id","aria-label","aria-labelledby","aria-description","tabindex","onKeydown"],bge=oe({name:"ElColorPicker"}),yge=oe({...bge,props:oge,emits:age,setup(e,{expose:t,emit:n}){const r=e,{t:o}=Ct(),a=Oe("color"),{formItem:s}=Wn(),l=sn(),i=rr(),{inputId:u,isLabeledByFormItem:d}=$a(r,{formItemContext:s}),f=P(),p=P(),v=P(),h=P();let m=!0;const _=Et(new oi({enableAlpha:r.showAlpha,format:r.colorFormat||"",value:r.modelValue})),g=P(!1),b=P(!1),y=P(""),w=$(()=>!r.modelValue&&!b.value?"transparent":A(_,r.showAlpha)),C=$(()=>!r.modelValue&&!b.value?"":_.value),S=$(()=>d.value?void 0:r.label||o("el.colorpicker.defaultLabel")),O=$(()=>d.value?s==null?void 0:s.labelId:void 0),T=$(()=>[a.b("picker"),a.is("disabled",i.value),a.bm("picker",l.value)]);function A(L,z){if(!(L instanceof oi))throw new TypeError("color should be instance of _color Class");const{r:q,g:le,b:G}=L.toRgb();return z?`rgba(${q}, ${le}, ${G}, ${L.get("alpha")/100})`:`rgb(${q}, ${le}, ${G})`}function R(L){g.value=L}const B=Un(R,100);function V(){B(!1),H()}function H(){He(()=>{r.modelValue?_.fromString(r.modelValue):(_.value="",He(()=>{b.value=!1}))})}function U(){i.value||B(!g.value)}function K(){_.fromString(y.value)}function I(){const L=_.value;n(ut,L),n("change",L),r.validateEvent&&(s==null||s.validate("change").catch(z=>void 0)),B(!1),He(()=>{const z=new oi({enableAlpha:r.showAlpha,format:r.colorFormat||"",value:r.modelValue});_.compare(z)||H()})}function x(){B(!1),n(ut,null),n("change",null),r.modelValue!==null&&r.validateEvent&&(s==null||s.validate("change").catch(L=>void 0)),H()}return rt(()=>{r.modelValue&&(y.value=C.value)}),Ce(()=>r.modelValue,L=>{L?L&&L!==_.value&&(m=!1,_.fromString(L)):b.value=!1}),Ce(()=>C.value,L=>{y.value=L,m&&n("activeChange",L),m=!0}),Ce(()=>_.value,()=>{!r.modelValue&&!b.value&&(b.value=!0)}),Ce(()=>g.value,()=>{He(()=>{var L,z,q;(L=f.value)==null||L.update(),(z=p.value)==null||z.update(),(q=v.value)==null||q.update()})}),ct(Cw,{currentColor:C}),t({color:_}),(L,z)=>(E(),me(c(Kn),{ref_key:"popper",ref:h,visible:g.value,"show-arrow":!1,"fallback-placements":["bottom","top","right","left"],offset:0,"gpu-acceleration":!1,"popper-class":[c(a).be("picker","panel"),c(a).b("dropdown"),L.popperClass],"stop-popper-mouse-event":!1,effect:"light",trigger:"click",transition:`${c(a).namespace.value}-zoom-in-top`,persistent:""},{content:ue(()=>[ot((E(),M("div",null,[k("div",{class:N(c(a).be("dropdown","main-wrapper"))},[X(rge,{ref_key:"hue",ref:f,class:"hue-slider",color:c(_),vertical:""},null,8,["color"]),X(gge,{ref:"svPanel",color:c(_)},null,8,["color"])],2),L.showAlpha?(E(),me(ege,{key:0,ref_key:"alpha",ref:v,color:c(_)},null,8,["color"])):fe("v-if",!0),L.predefine?(E(),me(fge,{key:1,ref:"predefine",color:c(_),colors:L.predefine},null,8,["color","colors"])):fe("v-if",!0),k("div",{class:N(c(a).be("dropdown","btns"))},[k("span",{class:N(c(a).be("dropdown","value"))},[X(c(Nn),{modelValue:y.value,"onUpdate:modelValue":z[0]||(z[0]=q=>y.value=q),"validate-event":!1,size:"small",onKeyup:_t(K,["enter"]),onBlur:K},null,8,["modelValue","onKeyup"])],2),X(c(Tn),{class:N(c(a).be("dropdown","link-btn")),text:"",size:"small",onClick:x},{default:ue(()=>[bt(xe(c(o)("el.colorpicker.clear")),1)]),_:1},8,["class"]),X(c(Tn),{plain:"",size:"small",class:N(c(a).be("dropdown","btn")),onClick:I},{default:ue(()=>[bt(xe(c(o)("el.colorpicker.confirm")),1)]),_:1},8,["class"])],2)])),[[c(Sa),V]])]),default:ue(()=>[k("div",{id:c(u),class:N(c(T)),role:"button","aria-label":c(S),"aria-labelledby":c(O),"aria-description":c(o)("el.colorpicker.description",{color:L.modelValue||""}),tabindex:L.tabindex,onKeydown:_t(U,["enter"])},[c(i)?(E(),M("div",{key:0,class:N(c(a).be("picker","mask"))},null,2)):fe("v-if",!0),k("div",{class:N(c(a).be("picker","trigger")),onClick:U},[k("span",{class:N([c(a).be("picker","color"),c(a).is("alpha",L.showAlpha)])},[k("span",{class:N(c(a).be("picker","color-inner")),style:We({backgroundColor:c(w)})},[ot(X(c(Ke),{class:N([c(a).be("picker","icon"),c(a).is("icon-arrow-down")])},{default:ue(()=>[X(c(Vo))]),_:1},8,["class"]),[[yt,L.modelValue||b.value]]),!L.modelValue&&!b.value?(E(),me(c(Ke),{key:0,class:N([c(a).be("picker","empty"),c(a).is("icon-close")])},{default:ue(()=>[X(c(wr))]),_:1},8,["class"])):fe("v-if",!0)],6)],2)],2)],42,_ge)]),_:1},8,["visible","popper-class","transition"]))}});var wge=Ie(yge,[["__file","/home/runner/work/element-plus/element-plus/packages/components/color-picker/src/color-picker.vue"]]);const Ege=lt(wge),G0={},Cge=Le({a11y:{type:Boolean,default:!0},locale:{type:he(Object)},size:On,button:{type:he(Object)},experimentalFeatures:{type:he(Object)},keyboardNavigation:{type:Boolean,default:!0},message:{type:he(Object)},zIndex:Number,namespace:{type:String,default:"el"}}),Sge=oe({name:"ElConfigProvider",props:Cge,setup(e,{slots:t}){Ce(()=>e.message,r=>{Object.assign(G0,r??{})},{immediate:!0,deep:!0});const n=qy(e);return()=>ke(t,"default",{config:n==null?void 0:n.value})}}),Sw=lt(Sge),kge=oe({name:"ElContainer"}),$ge=oe({...kge,props:{direction:{type:String}},setup(e){const t=e,n=En(),r=Oe("container"),o=$(()=>t.direction==="vertical"?!0:t.direction==="horizontal"?!1:n&&n.default?n.default().some(s=>{const l=s.type.name;return l==="ElHeader"||l==="ElFooter"}):!1);return(a,s)=>(E(),M("section",{class:N([c(r).b(),c(r).is("vertical",c(o))])},[ke(a.$slots,"default")],2))}});var Tge=Ie($ge,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/container.vue"]]);const Oge=oe({name:"ElAside"}),Mge=oe({...Oge,props:{width:{type:String,default:null}},setup(e){const t=e,n=Oe("aside"),r=$(()=>t.width?n.cssVarBlock({width:t.width}):{});return(o,a)=>(E(),M("aside",{class:N(c(n).b()),style:We(c(r))},[ke(o.$slots,"default")],6))}});var kw=Ie(Mge,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/aside.vue"]]);const Nge=oe({name:"ElFooter"}),Age=oe({...Nge,props:{height:{type:String,default:null}},setup(e){const t=e,n=Oe("footer"),r=$(()=>t.height?n.cssVarBlock({height:t.height}):{});return(o,a)=>(E(),M("footer",{class:N(c(n).b()),style:We(c(r))},[ke(o.$slots,"default")],6))}});var $w=Ie(Age,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/footer.vue"]]);const Rge=oe({name:"ElHeader"}),xge=oe({...Rge,props:{height:{type:String,default:null}},setup(e){const t=e,n=Oe("header"),r=$(()=>t.height?n.cssVarBlock({height:t.height}):{});return(o,a)=>(E(),M("header",{class:N(c(n).b()),style:We(c(r))},[ke(o.$slots,"default")],6))}});var Tw=Ie(xge,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/header.vue"]]);const Ige=oe({name:"ElMain"}),Lge=oe({...Ige,setup(e){const t=Oe("main");return(n,r)=>(E(),M("main",{class:N(c(t).b())},[ke(n.$slots,"default")],2))}});var Ow=Ie(Lge,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/main.vue"]]);const Pge=lt(Tge,{Aside:kw,Footer:$w,Header:Tw,Main:Ow}),Dge=Jt(kw),zge=Jt($w),Vge=Jt(Tw),Bge=Jt(Ow);var Y0={},Fge={get exports(){return Y0},set exports(e){Y0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r){var o=r.prototype,a=o.format;o.format=function(s){var l=this,i=this.$locale();if(!this.isValid())return a.bind(this)(s);var u=this.$utils(),d=(s||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(f){switch(f){case"Q":return Math.ceil((l.$M+1)/3);case"Do":return i.ordinal(l.$D);case"gggg":return l.weekYear();case"GGGG":return l.isoWeekYear();case"wo":return i.ordinal(l.week(),"W");case"w":case"ww":return u.s(l.week(),f==="w"?1:2,"0");case"W":case"WW":return u.s(l.isoWeek(),f==="W"?1:2,"0");case"k":case"kk":return u.s(String(l.$H===0?24:l.$H),f==="k"?1:2,"0");case"X":return Math.floor(l.$d.getTime()/1e3);case"x":return l.$d.getTime();case"z":return"["+l.offsetName()+"]";case"zzz":return"["+l.offsetName("long")+"]";default:return f}});return a.bind(this)(d)}}})})(Fge);const Hge=Y0;var X0={},Uge={get exports(){return X0},set exports(e){X0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){var n="week",r="year";return function(o,a,s){var l=a.prototype;l.week=function(i){if(i===void 0&&(i=null),i!==null)return this.add(7*(i-this.week()),"day");var u=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var d=s(this).startOf(r).add(1,r).date(u),f=s(this).endOf(n);if(d.isBefore(f))return 1}var p=s(this).startOf(r).date(u).startOf(n).subtract(1,"millisecond"),v=this.diff(p,n,!0);return v<0?s(this).startOf("week").week():Math.ceil(v)},l.weeks=function(i){return i===void 0&&(i=null),this.week(i)}}})})(Uge);const Kge=X0;var Z0={},Wge={get exports(){return Z0},set exports(e){Z0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r){r.prototype.weekYear=function(){var o=this.month(),a=this.week(),s=this.year();return a===1&&o===11?s+1:o===0&&a>=52?s-1:s}}})})(Wge);const jge=Z0;var J0={},qge={get exports(){return J0},set exports(e){J0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r,o){r.prototype.dayOfYear=function(a){var s=Math.round((o(this).startOf("day")-o(this).startOf("year"))/864e5)+1;return a==null?s:this.add(a-s,"day")}}})})(qge);const Gge=J0;var Q0={},Yge={get exports(){return Q0},set exports(e){Q0=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r){r.prototype.isSameOrAfter=function(o,a){return this.isSame(o,a)||this.isAfter(o,a)}}})})(Yge);const Xge=Q0;var e2={},Zge={get exports(){return e2},set exports(e){e2=e}};(function(e,t){(function(n,r){e.exports=r()})(uo,function(){return function(n,r){r.prototype.isSameOrBefore=function(o,a){return this.isSame(o,a)||this.isBefore(o,a)}}})})(Zge);const Jge=e2,Qge=Le({type:{type:he(String),default:"date"}}),e_e=["date","dates","year","month","week","range"],Cv=Le({disabledDate:{type:he(Function)},date:{type:he(Object),required:!0},minDate:{type:he(Object)},maxDate:{type:he(Object)},parsedValue:{type:he([Object,Array])},rangeState:{type:he(Object),default:()=>({endDate:null,selecting:!1})}}),Mw=Le({type:{type:he(String),required:!0,values:Hde}}),Nw=Le({unlinkPanels:Boolean,parsedValue:{type:he(Array)}}),Aw=e=>({type:String,values:e_e,default:e}),t_e=Le({...Mw,parsedValue:{type:he([Object,Array])},visible:{type:Boolean},format:{type:String,default:""}}),n_e=Le({...Cv,cellClassName:{type:he(Function)},showWeekNumber:Boolean,selectionMode:Aw("date")}),t2=e=>{if(!Ve(e))return!1;const[t,n]=e;return st.isDayjs(t)&&st.isDayjs(n)&&t.isSameOrBefore(n)},Rw=(e,{lang:t,unit:n,unlinkPanels:r})=>{let o;if(Ve(e)){let[a,s]=e.map(l=>st(l).locale(t));return r||(s=a.add(1,n)),[a,s]}else e?o=st(e):o=st();return o=o.locale(t),[o,o.add(1,n)]},r_e=(e,t,{columnIndexOffset:n,startDate:r,nextEndDate:o,now:a,unit:s,relativeDateGetter:l,setCellMetadata:i,setRowMetadata:u})=>{for(let d=0;d{const{cell:r}=e;if(n.default){const o=n.default(r).filter(a=>a.patchFlag!==-2&&a.type.toString()!=="Symbol(Comment)");if(o.length)return o}return X("div",{class:t.b()},[X("span",{class:t.e("text")},[r==null?void 0:r.text])])}}});const s_e=["aria-label","onMousedown"],l_e={key:0,scope:"col"},i_e=["aria-label"],u_e=["aria-current","aria-selected","tabindex"],c_e=oe({__name:"basic-date-table",props:n_e,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,o=Oe("date-table"),{t:a,lang:s}=Ct(),l=P(),i=P(),u=P(),d=P(),f=P([[],[],[],[],[],[]]);let p=!1;const v=r.date.$locale().weekStart||7,h=r.date.locale("en").localeData().weekdaysShort().map(G=>G.toLowerCase()),m=$(()=>v>3?7-v:-v),_=$(()=>{const G=r.date.startOf("month");return G.subtract(G.day()||7,"day")}),g=$(()=>h.concat(h).slice(v,v+7)),b=$(()=>Cb(T.value).some(G=>G.isCurrent)),y=$(()=>{const G=r.date.startOf("month"),ae=G.day()||7,be=G.daysInMonth(),te=G.subtract(1,"month").daysInMonth();return{startOfMonthDay:ae,dateCountOfMonth:be,dateCountOfLastMonth:te}}),w=$(()=>r.selectionMode==="dates"?ko(r.parsedValue):[]),C=(G,{count:ae,rowIndex:be,columnIndex:te})=>{const{startOfMonthDay:de,dateCountOfMonth:Z,dateCountOfLastMonth:Y}=c(y),ce=c(m);if(be>=0&&be<=1){const ve=de+ce<0?7+de+ce:de+ce;if(te+be*7>=ve)return G.text=ae,!0;G.text=Y-(ve-te%7)+1+be*7,G.type="prev-month"}else return ae<=Z?G.text=ae:(G.text=ae-Z,G.type="next-month"),!0;return!1},S=(G,{columnIndex:ae,rowIndex:be},te)=>{const{disabledDate:de,cellClassName:Z}=r,Y=c(w),ce=C(G,{count:te,rowIndex:be,columnIndex:ae}),ve=G.dayjs.toDate();return G.selected=Y.find(Ne=>Ne.valueOf()===G.dayjs.valueOf()),G.isSelected=!!G.selected,G.isCurrent=B(G),G.disabled=de==null?void 0:de(ve),G.customClass=Z==null?void 0:Z(ve),ce},O=G=>{if(r.selectionMode==="week"){const[ae,be]=r.showWeekNumber?[1,7]:[0,6],te=le(G[ae+1]);G[ae].inRange=te,G[ae].start=te,G[be].inRange=te,G[be].end=te}},T=$(()=>{const{minDate:G,maxDate:ae,rangeState:be,showWeekNumber:te}=r,de=m.value,Z=f.value,Y="day";let ce=1;if(te)for(let ve=0;ve<6;ve++)Z[ve][0]||(Z[ve][0]={type:"week",text:_.value.add(ve*7+1,Y).week()});return r_e({row:6,column:7},Z,{startDate:G,columnIndexOffset:te?1:0,nextEndDate:be.endDate||ae||be.selecting&&G||null,now:st().locale(c(s)).startOf(Y),unit:Y,relativeDateGetter:ve=>_.value.add(ve-de,Y),setCellMetadata:(...ve)=>{S(...ve,ce)&&(ce+=1)},setRowMetadata:O}),Z});Ce(()=>r.date,async()=>{var G,ae;(G=l.value)!=null&&G.contains(document.activeElement)&&(await He(),(ae=i.value)==null||ae.focus())});const A=async()=>{var G;(G=i.value)==null||G.focus()},R=(G="")=>["normal","today"].includes(G),B=G=>r.selectionMode==="date"&&R(G.type)&&V(G,r.parsedValue),V=(G,ae)=>ae?st(ae).locale(s.value).isSame(r.date.date(Number(G.text)),"day"):!1,H=G=>{const ae=[];return R(G.type)&&!G.disabled?(ae.push("available"),G.type==="today"&&ae.push("today")):ae.push(G.type),B(G)&&ae.push("current"),G.inRange&&(R(G.type)||r.selectionMode==="week")&&(ae.push("in-range"),G.start&&ae.push("start-date"),G.end&&ae.push("end-date")),G.disabled&&ae.push("disabled"),G.selected&&ae.push("selected"),G.customClass&&ae.push(G.customClass),ae.join(" ")},U=(G,ae)=>{const be=G*7+(ae-(r.showWeekNumber?1:0))-m.value;return _.value.add(be,"day")},K=G=>{var ae;if(!r.rangeState.selecting)return;let be=G.target;if(be.tagName==="SPAN"&&(be=(ae=be.parentNode)==null?void 0:ae.parentNode),be.tagName==="DIV"&&(be=be.parentNode),be.tagName!=="TD")return;const te=be.parentNode.rowIndex-1,de=be.cellIndex;T.value[te][de].disabled||(te!==u.value||de!==d.value)&&(u.value=te,d.value=de,n("changerange",{selecting:!0,endDate:U(te,de)}))},I=G=>!b.value&&(G==null?void 0:G.text)===1&&G.type==="normal"||G.isCurrent,x=G=>{p||b.value||r.selectionMode!=="date"||q(G,!0)},L=G=>{G.target.closest("td")&&(p=!0)},z=G=>{G.target.closest("td")&&(p=!1)},q=(G,ae=!1)=>{const be=G.target.closest("td");if(!be)return;const te=be.parentNode.rowIndex-1,de=be.cellIndex,Z=T.value[te][de];if(Z.disabled||Z.type==="week")return;const Y=U(te,de);if(r.selectionMode==="range")!r.rangeState.selecting||!r.minDate?(n("pick",{minDate:Y,maxDate:null}),n("select",!0)):(Y>=r.minDate?n("pick",{minDate:r.minDate,maxDate:Y}):n("pick",{minDate:Y,maxDate:r.minDate}),n("select",!1));else if(r.selectionMode==="date")n("pick",Y,ae);else if(r.selectionMode==="week"){const ce=Y.week(),ve=`${Y.year()}w${ce}`;n("pick",{year:Y.year(),week:ce,value:ve,date:Y.startOf("week")})}else if(r.selectionMode==="dates"){const ce=Z.selected?ko(r.parsedValue).filter(ve=>(ve==null?void 0:ve.valueOf())!==Y.valueOf()):ko(r.parsedValue).concat([Y]);n("pick",ce)}},le=G=>{if(r.selectionMode!=="week")return!1;let ae=r.date.startOf("day");if(G.type==="prev-month"&&(ae=ae.subtract(1,"month")),G.type==="next-month"&&(ae=ae.add(1,"month")),ae=ae.date(Number.parseInt(G.text,10)),r.parsedValue&&!Array.isArray(r.parsedValue)){const be=(r.parsedValue.day()-v+7)%7-1;return r.parsedValue.subtract(be,"day").isSame(ae,"day")}return!1};return t({focus:A}),(G,ae)=>(E(),M("table",{role:"grid","aria-label":c(a)("el.datepicker.dateTablePrompt"),cellspacing:"0",cellpadding:"0",class:N([c(o).b(),{"is-week-mode":G.selectionMode==="week"}]),onClick:q,onMousemove:K,onMousedown:Je(L,["prevent"]),onMouseup:z},[k("tbody",{ref_key:"tbodyRef",ref:l},[k("tr",null,[G.showWeekNumber?(E(),M("th",l_e,xe(c(a)("el.datepicker.week")),1)):fe("v-if",!0),(E(!0),M(qe,null,vt(c(g),(be,te)=>(E(),M("th",{key:te,scope:"col","aria-label":c(a)("el.datepicker.weeksFull."+be)},xe(c(a)("el.datepicker.weeks."+be)),9,i_e))),128))]),(E(!0),M(qe,null,vt(c(T),(be,te)=>(E(),M("tr",{key:te,class:N([c(o).e("row"),{current:le(be[1])}])},[(E(!0),M(qe,null,vt(be,(de,Z)=>(E(),M("td",{key:`${te}.${Z}`,ref_for:!0,ref:Y=>I(de)&&(i.value=Y),class:N(H(de)),"aria-current":de.isCurrent?"date":void 0,"aria-selected":de.isCurrent,tabindex:I(de)?0:-1,onFocus:x},[X(c(a_e),{cell:de},null,8,["cell"])],42,u_e))),128))],2))),128))],512)],42,s_e))}});var n2=Ie(c_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-date-table.vue"]]);const d_e=Le({...Cv,selectionMode:Aw("month")}),f_e=["aria-label"],p_e=["aria-selected","aria-label","tabindex","onKeydown"],h_e={class:"cell"},v_e=oe({__name:"basic-month-table",props:d_e,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,o=(w,C,S)=>{const O=st().locale(S).startOf("month").month(C).year(w),T=O.daysInMonth();return ha(T).map(A=>O.add(A,"day").toDate())},a=Oe("month-table"),{t:s,lang:l}=Ct(),i=P(),u=P(),d=P(r.date.locale("en").localeData().monthsShort().map(w=>w.toLowerCase())),f=P([[],[],[]]),p=P(),v=P(),h=$(()=>{var w,C;const S=f.value,O=st().locale(l.value).startOf("month");for(let T=0;T<3;T++){const A=S[T];for(let R=0;R<4;R++){const B=A[R]||(A[R]={row:T,column:R,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1});B.type="normal";const V=T*4+R,H=r.date.startOf("year").month(V),U=r.rangeState.endDate||r.maxDate||r.rangeState.selecting&&r.minDate||null;B.inRange=!!(r.minDate&&H.isSameOrAfter(r.minDate,"month")&&U&&H.isSameOrBefore(U,"month"))||!!(r.minDate&&H.isSameOrBefore(r.minDate,"month")&&U&&H.isSameOrAfter(U,"month")),(w=r.minDate)!=null&&w.isSameOrAfter(U)?(B.start=!!(U&&H.isSame(U,"month")),B.end=r.minDate&&H.isSame(r.minDate,"month")):(B.start=!!(r.minDate&&H.isSame(r.minDate,"month")),B.end=!!(U&&H.isSame(U,"month"))),O.isSame(H)&&(B.type="today"),B.text=V,B.disabled=((C=r.disabledDate)==null?void 0:C.call(r,H.toDate()))||!1}}return S}),m=()=>{var w;(w=u.value)==null||w.focus()},_=w=>{const C={},S=r.date.year(),O=new Date,T=w.text;return C.disabled=r.disabledDate?o(S,T,l.value).every(r.disabledDate):!1,C.current=ko(r.parsedValue).findIndex(A=>st.isDayjs(A)&&A.year()===S&&A.month()===T)>=0,C.today=O.getFullYear()===S&&O.getMonth()===T,w.inRange&&(C["in-range"]=!0,w.start&&(C["start-date"]=!0),w.end&&(C["end-date"]=!0)),C},g=w=>{const C=r.date.year(),S=w.text;return ko(r.date).findIndex(O=>O.year()===C&&O.month()===S)>=0},b=w=>{var C;if(!r.rangeState.selecting)return;let S=w.target;if(S.tagName==="A"&&(S=(C=S.parentNode)==null?void 0:C.parentNode),S.tagName==="DIV"&&(S=S.parentNode),S.tagName!=="TD")return;const O=S.parentNode.rowIndex,T=S.cellIndex;h.value[O][T].disabled||(O!==p.value||T!==v.value)&&(p.value=O,v.value=T,n("changerange",{selecting:!0,endDate:r.date.startOf("year").month(O*4+T)}))},y=w=>{var C;const S=(C=w.target)==null?void 0:C.closest("td");if((S==null?void 0:S.tagName)!=="TD"||Ir(S,"disabled"))return;const O=S.cellIndex,A=S.parentNode.rowIndex*4+O,R=r.date.startOf("year").month(A);r.selectionMode==="range"?r.rangeState.selecting?(r.minDate&&R>=r.minDate?n("pick",{minDate:r.minDate,maxDate:R}):n("pick",{minDate:R,maxDate:r.minDate}),n("select",!1)):(n("pick",{minDate:R,maxDate:null}),n("select",!0)):n("pick",A)};return Ce(()=>r.date,async()=>{var w,C;(w=i.value)!=null&&w.contains(document.activeElement)&&(await He(),(C=u.value)==null||C.focus())}),t({focus:m}),(w,C)=>(E(),M("table",{role:"grid","aria-label":c(s)("el.datepicker.monthTablePrompt"),class:N(c(a).b()),onClick:y,onMousemove:b},[k("tbody",{ref_key:"tbodyRef",ref:i},[(E(!0),M(qe,null,vt(c(h),(S,O)=>(E(),M("tr",{key:O},[(E(!0),M(qe,null,vt(S,(T,A)=>(E(),M("td",{key:A,ref_for:!0,ref:R=>g(T)&&(u.value=R),class:N(_(T)),"aria-selected":`${g(T)}`,"aria-label":c(s)(`el.datepicker.month${+T.text+1}`),tabindex:g(T)?0:-1,onKeydown:[_t(Je(y,["prevent","stop"]),["space"]),_t(Je(y,["prevent","stop"]),["enter"])]},[k("div",null,[k("span",h_e,xe(c(s)("el.datepicker.months."+d.value[T.text])),1)])],42,p_e))),128))]))),128))],512)],42,f_e))}});var r2=Ie(v_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-month-table.vue"]]);const{date:m_e,disabledDate:g_e,parsedValue:__e}=Cv,b_e=Le({date:m_e,disabledDate:g_e,parsedValue:__e}),y_e=["aria-label"],w_e=["aria-selected","tabindex","onKeydown"],E_e={class:"cell"},C_e={key:1},S_e=oe({__name:"basic-year-table",props:b_e,emits:["pick"],setup(e,{expose:t,emit:n}){const r=e,o=(m,_)=>{const g=st(String(m)).locale(_).startOf("year"),y=g.endOf("year").dayOfYear();return ha(y).map(w=>g.add(w,"day").toDate())},a=Oe("year-table"),{t:s,lang:l}=Ct(),i=P(),u=P(),d=$(()=>Math.floor(r.date.year()/10)*10),f=()=>{var m;(m=u.value)==null||m.focus()},p=m=>{const _={},g=st().locale(l.value);return _.disabled=r.disabledDate?o(m,l.value).every(r.disabledDate):!1,_.current=ko(r.parsedValue).findIndex(b=>b.year()===m)>=0,_.today=g.year()===m,_},v=m=>m===d.value&&r.date.year()d.value+9||ko(r.date).findIndex(_=>_.year()===m)>=0,h=m=>{const g=m.target.closest("td");if(g&&g.textContent){if(Ir(g,"disabled"))return;const b=g.textContent||g.innerText;n("pick",Number(b))}};return Ce(()=>r.date,async()=>{var m,_;(m=i.value)!=null&&m.contains(document.activeElement)&&(await He(),(_=u.value)==null||_.focus())}),t({focus:f}),(m,_)=>(E(),M("table",{role:"grid","aria-label":c(s)("el.datepicker.yearTablePrompt"),class:N(c(a).b()),onClick:h},[k("tbody",{ref_key:"tbodyRef",ref:i},[(E(),M(qe,null,vt(3,(g,b)=>k("tr",{key:b},[(E(),M(qe,null,vt(4,(y,w)=>(E(),M(qe,{key:b+"_"+w},[b*4+w<10?(E(),M("td",{key:0,ref_for:!0,ref:C=>v(c(d)+b*4+w)&&(u.value=C),class:N(["available",p(c(d)+b*4+w)]),"aria-selected":`${v(c(d)+b*4+w)}`,tabindex:v(c(d)+b*4+w)?0:-1,onKeydown:[_t(Je(h,["prevent","stop"]),["space"]),_t(Je(h,["prevent","stop"]),["enter"])]},[k("span",E_e,xe(c(d)+b*4+w),1)],42,w_e)):(E(),M("td",C_e))],64))),64))])),64))],512)],10,y_e))}});var k_e=Ie(S_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-year-table.vue"]]);const $_e=["onClick"],T_e=["aria-label"],O_e=["aria-label"],M_e=["aria-label"],N_e=["aria-label"],A_e=oe({__name:"panel-date-pick",props:t_e,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=e,r=(se,pe,Me)=>!0,o=Oe("picker-panel"),a=Oe("date-picker"),s=El(),l=En(),{t:i,lang:u}=Ct(),d=Fe("EP_PICKER_BASE"),f=Fe(Yd),{shortcuts:p,disabledDate:v,cellClassName:h,defaultTime:m,arrowControl:_}=d.props,g=qt(d.props,"defaultValue"),b=P(),y=P(st().locale(u.value)),w=P(!1),C=$(()=>st(m).locale(u.value)),S=$(()=>y.value.month()),O=$(()=>y.value.year()),T=P([]),A=P(null),R=P(null),B=se=>T.value.length>0?r(se,T.value,n.format||"HH:mm:ss"):!0,V=se=>m&&!j.value&&!w.value?C.value.year(se.year()).month(se.month()).date(se.date()):de.value?se.millisecond(0):se.startOf("day"),H=(se,...pe)=>{if(!se)t("pick",se,...pe);else if(Ve(se)){const Me=se.map(V);t("pick",Me,...pe)}else t("pick",V(se),...pe);A.value=null,R.value=null,w.value=!1},U=(se,pe)=>{if(q.value==="date"){se=se;let Me=n.parsedValue?n.parsedValue.year(se.year()).month(se.month()).date(se.date()):se;B(Me)||(Me=T.value[0][0].year(se.year()).month(se.month()).date(se.date())),y.value=Me,H(Me,de.value||pe)}else q.value==="week"?H(se.date):q.value==="dates"&&H(se,!0)},K=se=>{const pe=se?"add":"subtract";y.value=y.value[pe](1,"month"),ze("month")},I=se=>{const pe=y.value,Me=se?"add":"subtract";y.value=x.value==="year"?pe[Me](10,"year"):pe[Me](1,"year"),ze("year")},x=P("date"),L=$(()=>{const se=i("el.datepicker.year");if(x.value==="year"){const pe=Math.floor(O.value/10)*10;return se?`${pe} ${se} - ${pe+9} ${se}`:`${pe} - ${pe+9}`}return`${O.value} ${se}`}),z=se=>{const pe=Xe(se.value)?se.value():se.value;if(pe){H(st(pe).locale(u.value));return}se.onClick&&se.onClick({attrs:s,slots:l,emit:t})},q=$(()=>{const{type:se}=n;return["week","month","year","dates"].includes(se)?se:"date"}),le=$(()=>q.value==="date"?x.value:q.value),G=$(()=>!!p.length),ae=async se=>{y.value=y.value.startOf("month").month(se),q.value==="month"?H(y.value,!1):(x.value="date",["month","year","date","week"].includes(q.value)&&(H(y.value,!0),await He(),$e())),ze("month")},be=async se=>{q.value==="year"?(y.value=y.value.startOf("year").year(se),H(y.value,!1)):(y.value=y.value.year(se),x.value="month",["month","year","date","week"].includes(q.value)&&(H(y.value,!0),await He(),$e())),ze("year")},te=async se=>{x.value=se,await He(),$e()},de=$(()=>n.type==="datetime"||n.type==="datetimerange"),Z=$(()=>de.value||q.value==="dates"),Y=()=>{if(q.value==="dates")H(n.parsedValue);else{let se=n.parsedValue;if(!se){const pe=st(m).locale(u.value),Me=De();se=pe.year(Me.year()).month(Me.month()).date(Me.date())}y.value=se,H(se)}},ce=()=>{const pe=st().locale(u.value).toDate();w.value=!0,(!v||!v(pe))&&B(pe)&&(y.value=st().locale(u.value),H(y.value))},ve=$(()=>W8(n.format)),Ne=$(()=>K8(n.format)),j=$(()=>{if(R.value)return R.value;if(!(!n.parsedValue&&!g.value))return(n.parsedValue||y.value).format(ve.value)}),D=$(()=>{if(A.value)return A.value;if(!(!n.parsedValue&&!g.value))return(n.parsedValue||y.value).format(Ne.value)}),F=P(!1),Q=()=>{F.value=!0},ge=()=>{F.value=!1},ne=se=>({hour:se.hour(),minute:se.minute(),second:se.second(),year:se.year(),month:se.month(),date:se.date()}),Se=(se,pe,Me)=>{const{hour:W,minute:ee,second:Ee}=ne(se),Ae=n.parsedValue?n.parsedValue.hour(W).minute(ee).second(Ee):se;y.value=Ae,H(y.value,!0),Me||(F.value=pe)},ye=se=>{const pe=st(se,ve.value).locale(u.value);if(pe.isValid()&&B(pe)){const{year:Me,month:W,date:ee}=ne(y.value);y.value=pe.year(Me).month(W).date(ee),R.value=null,F.value=!1,H(y.value,!0)}},Te=se=>{const pe=st(se,Ne.value).locale(u.value);if(pe.isValid()){if(v&&v(pe.toDate()))return;const{hour:Me,minute:W,second:ee}=ne(y.value);y.value=pe.hour(Me).minute(W).second(ee),A.value=null,H(y.value,!0)}},we=se=>st.isDayjs(se)&&se.isValid()&&(v?!v(se.toDate()):!0),J=se=>q.value==="dates"?se.map(pe=>pe.format(n.format)):se.format(n.format),_e=se=>st(se,n.format).locale(u.value),De=()=>{const se=st(g.value).locale(u.value);if(!g.value){const pe=C.value;return st().hour(pe.hour()).minute(pe.minute()).second(pe.second()).locale(u.value)}return se},$e=async()=>{var se;["week","month","year","date"].includes(q.value)&&((se=b.value)==null||se.focus(),q.value==="week"&&Ue(Ge.down))},Pe=se=>{const{code:pe}=se;[Ge.up,Ge.down,Ge.left,Ge.right,Ge.home,Ge.end,Ge.pageUp,Ge.pageDown].includes(pe)&&(Ue(pe),se.stopPropagation(),se.preventDefault()),[Ge.enter,Ge.space].includes(pe)&&A.value===null&&R.value===null&&(se.preventDefault(),H(y.value,!1))},Ue=se=>{var pe;const{up:Me,down:W,left:ee,right:Ee,home:Ae,end:at,pageUp:Lt,pageDown:Ft}=Ge,mn={year:{[Me]:-4,[W]:4,[ee]:-1,[Ee]:1,offset:(St,Re)=>St.setFullYear(St.getFullYear()+Re)},month:{[Me]:-4,[W]:4,[ee]:-1,[Ee]:1,offset:(St,Re)=>St.setMonth(St.getMonth()+Re)},week:{[Me]:-1,[W]:1,[ee]:-1,[Ee]:1,offset:(St,Re)=>St.setDate(St.getDate()+Re*7)},date:{[Me]:-7,[W]:7,[ee]:-1,[Ee]:1,[Ae]:St=>-St.getDay(),[at]:St=>-St.getDay()+6,[Lt]:St=>-new Date(St.getFullYear(),St.getMonth(),0).getDate(),[Ft]:St=>new Date(St.getFullYear(),St.getMonth()+1,0).getDate(),offset:(St,Re)=>St.setDate(St.getDate()+Re)}},Rt=y.value.toDate();for(;Math.abs(y.value.diff(Rt,"year",!0))<1;){const St=mn[le.value];if(!St)return;if(St.offset(Rt,Xe(St[se])?St[se](Rt):(pe=St[se])!=null?pe:0),v&&v(Rt))break;const Re=st(Rt).locale(u.value);y.value=Re,t("pick",Re,!0);break}},ze=se=>{t("panel-change",y.value.toDate(),se,x.value)};return Ce(()=>q.value,se=>{if(["month","year"].includes(se)){x.value=se;return}x.value="date"},{immediate:!0}),Ce(()=>x.value,()=>{f==null||f.updatePopper()}),Ce(()=>g.value,se=>{se&&(y.value=De())},{immediate:!0}),Ce(()=>n.parsedValue,se=>{if(se){if(q.value==="dates"||Array.isArray(se))return;y.value=se}else y.value=De()},{immediate:!0}),t("set-picker-option",["isValidValue",we]),t("set-picker-option",["formatToString",J]),t("set-picker-option",["parseUserInput",_e]),t("set-picker-option",["handleFocusPicker",$e]),(se,pe)=>(E(),M("div",{class:N([c(o).b(),c(a).b(),{"has-sidebar":se.$slots.sidebar||c(G),"has-time":c(de)}])},[k("div",{class:N(c(o).e("body-wrapper"))},[ke(se.$slots,"sidebar",{class:N(c(o).e("sidebar"))}),c(G)?(E(),M("div",{key:0,class:N(c(o).e("sidebar"))},[(E(!0),M(qe,null,vt(c(p),(Me,W)=>(E(),M("button",{key:W,type:"button",class:N(c(o).e("shortcut")),onClick:ee=>z(Me)},xe(Me.text),11,$_e))),128))],2)):fe("v-if",!0),k("div",{class:N(c(o).e("body"))},[c(de)?(E(),M("div",{key:0,class:N(c(a).e("time-header"))},[k("span",{class:N(c(a).e("editor-wrap"))},[X(c(Nn),{placeholder:c(i)("el.datepicker.selectDate"),"model-value":c(D),size:"small","validate-event":!1,onInput:pe[0]||(pe[0]=Me=>A.value=Me),onChange:Te},null,8,["placeholder","model-value"])],2),ot((E(),M("span",{class:N(c(a).e("editor-wrap"))},[X(c(Nn),{placeholder:c(i)("el.datepicker.selectTime"),"model-value":c(j),size:"small","validate-event":!1,onFocus:Q,onInput:pe[1]||(pe[1]=Me=>R.value=Me),onChange:ye},null,8,["placeholder","model-value"]),X(c(Zc),{visible:F.value,format:c(ve),"time-arrow-control":c(_),"parsed-value":y.value,onPick:Se},null,8,["visible","format","time-arrow-control","parsed-value"])],2)),[[c(Sa),ge]])],2)):fe("v-if",!0),ot(k("div",{class:N([c(a).e("header"),(x.value==="year"||x.value==="month")&&c(a).e("header--bordered")])},[k("span",{class:N(c(a).e("prev-btn"))},[k("button",{type:"button","aria-label":c(i)("el.datepicker.prevYear"),class:N(["d-arrow-left",c(o).e("icon-btn")]),onClick:pe[2]||(pe[2]=Me=>I(!1))},[X(c(Ke),null,{default:ue(()=>[X(c(os))]),_:1})],10,T_e),ot(k("button",{type:"button","aria-label":c(i)("el.datepicker.prevMonth"),class:N([c(o).e("icon-btn"),"arrow-left"]),onClick:pe[3]||(pe[3]=Me=>K(!1))},[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1})],10,O_e),[[yt,x.value==="date"]])],2),k("span",{role:"button",class:N(c(a).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:pe[4]||(pe[4]=_t(Me=>te("year"),["enter"])),onClick:pe[5]||(pe[5]=Me=>te("year"))},xe(c(L)),35),ot(k("span",{role:"button","aria-live":"polite",tabindex:"0",class:N([c(a).e("header-label"),{active:x.value==="month"}]),onKeydown:pe[6]||(pe[6]=_t(Me=>te("month"),["enter"])),onClick:pe[7]||(pe[7]=Me=>te("month"))},xe(c(i)(`el.datepicker.month${c(S)+1}`)),35),[[yt,x.value==="date"]]),k("span",{class:N(c(a).e("next-btn"))},[ot(k("button",{type:"button","aria-label":c(i)("el.datepicker.nextMonth"),class:N([c(o).e("icon-btn"),"arrow-right"]),onClick:pe[8]||(pe[8]=Me=>K(!0))},[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})],10,M_e),[[yt,x.value==="date"]]),k("button",{type:"button","aria-label":c(i)("el.datepicker.nextYear"),class:N([c(o).e("icon-btn"),"d-arrow-right"]),onClick:pe[9]||(pe[9]=Me=>I(!0))},[X(c(Ke),null,{default:ue(()=>[X(c(as))]),_:1})],10,N_e)],2)],2),[[yt,x.value!=="time"]]),k("div",{class:N(c(o).e("content")),onKeydown:Pe},[x.value==="date"?(E(),me(n2,{key:0,ref_key:"currentViewRef",ref:b,"selection-mode":c(q),date:y.value,"parsed-value":se.parsedValue,"disabled-date":c(v),"cell-class-name":c(h),onPick:U},null,8,["selection-mode","date","parsed-value","disabled-date","cell-class-name"])):fe("v-if",!0),x.value==="year"?(E(),me(k_e,{key:1,ref_key:"currentViewRef",ref:b,date:y.value,"disabled-date":c(v),"parsed-value":se.parsedValue,onPick:be},null,8,["date","disabled-date","parsed-value"])):fe("v-if",!0),x.value==="month"?(E(),me(r2,{key:2,ref_key:"currentViewRef",ref:b,date:y.value,"parsed-value":se.parsedValue,"disabled-date":c(v),onPick:ae},null,8,["date","parsed-value","disabled-date"])):fe("v-if",!0)],34)],2)],2),ot(k("div",{class:N(c(o).e("footer"))},[ot(X(c(Tn),{text:"",size:"small",class:N(c(o).e("link-btn")),onClick:ce},{default:ue(()=>[bt(xe(c(i)("el.datepicker.now")),1)]),_:1},8,["class"]),[[yt,c(q)!=="dates"]]),X(c(Tn),{plain:"",size:"small",class:N(c(o).e("link-btn")),onClick:Y},{default:ue(()=>[bt(xe(c(i)("el.datepicker.confirm")),1)]),_:1},8,["class"])],2),[[yt,c(Z)&&x.value==="date"]])],2))}});var R_e=Ie(A_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"]]);const x_e=Le({...Mw,...Nw}),I_e=e=>{const{emit:t}=tt(),n=El(),r=En();return a=>{const s=Xe(a.value)?a.value():a.value;if(s){t("pick",[st(s[0]).locale(e.value),st(s[1]).locale(e.value)]);return}a.onClick&&a.onClick({attrs:n,slots:r,emit:t})}},xw=(e,{defaultValue:t,leftDate:n,rightDate:r,unit:o,onParsedValueChanged:a})=>{const{emit:s}=tt(),{pickerNs:l}=Fe(tv),i=Oe("date-range-picker"),{t:u,lang:d}=Ct(),f=I_e(d),p=P(),v=P(),h=P({endDate:null,selecting:!1}),m=y=>{h.value=y},_=(y=!1)=>{const w=c(p),C=c(v);t2([w,C])&&s("pick",[w,C],y)},g=y=>{h.value.selecting=y,y||(h.value.endDate=null)},b=()=>{const[y,w]=Rw(c(t),{lang:c(d),unit:o,unlinkPanels:e.unlinkPanels});p.value=void 0,v.value=void 0,n.value=y,r.value=w};return Ce(t,y=>{y&&b()},{immediate:!0}),Ce(()=>e.parsedValue,y=>{if(Ve(y)&&y.length===2){const[w,C]=y;p.value=w,n.value=w,v.value=C,a(c(p),c(v))}else b()},{immediate:!0}),{minDate:p,maxDate:v,rangeState:h,lang:d,ppNs:l,drpNs:i,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:f,onSelect:g,t:u}},L_e=["onClick"],P_e=["disabled"],D_e=["disabled"],z_e=["disabled"],V_e=["disabled"],ju="month",B_e=oe({__name:"panel-date-range",props:x_e,emits:["pick","set-picker-option","calendar-change","panel-change"],setup(e,{emit:t}){const n=e,r=Fe("EP_PICKER_BASE"),{disabledDate:o,cellClassName:a,format:s,defaultTime:l,arrowControl:i,clearable:u}=r.props,d=qt(r.props,"shortcuts"),f=qt(r.props,"defaultValue"),{lang:p}=Ct(),v=P(st().locale(p.value)),h=P(st().locale(p.value).add(1,ju)),{minDate:m,maxDate:_,rangeState:g,ppNs:b,drpNs:y,handleChangeRange:w,handleRangeConfirm:C,handleShortcutClick:S,onSelect:O,t:T}=xw(n,{defaultValue:f,leftDate:v,rightDate:h,unit:ju,onParsedValueChanged:W}),A=P({min:null,max:null}),R=P({min:null,max:null}),B=$(()=>`${v.value.year()} ${T("el.datepicker.year")} ${T(`el.datepicker.month${v.value.month()+1}`)}`),V=$(()=>`${h.value.year()} ${T("el.datepicker.year")} ${T(`el.datepicker.month${h.value.month()+1}`)}`),H=$(()=>v.value.year()),U=$(()=>v.value.month()),K=$(()=>h.value.year()),I=$(()=>h.value.month()),x=$(()=>!!d.value.length),L=$(()=>A.value.min!==null?A.value.min:m.value?m.value.format(ae.value):""),z=$(()=>A.value.max!==null?A.value.max:_.value||m.value?(_.value||m.value).format(ae.value):""),q=$(()=>R.value.min!==null?R.value.min:m.value?m.value.format(G.value):""),le=$(()=>R.value.max!==null?R.value.max:_.value||m.value?(_.value||m.value).format(G.value):""),G=$(()=>W8(s)),ae=$(()=>K8(s)),be=()=>{v.value=v.value.subtract(1,"year"),n.unlinkPanels||(h.value=v.value.add(1,"month")),j("year")},te=()=>{v.value=v.value.subtract(1,"month"),n.unlinkPanels||(h.value=v.value.add(1,"month")),j("month")},de=()=>{n.unlinkPanels?h.value=h.value.add(1,"year"):(v.value=v.value.add(1,"year"),h.value=v.value.add(1,"month")),j("year")},Z=()=>{n.unlinkPanels?h.value=h.value.add(1,"month"):(v.value=v.value.add(1,"month"),h.value=v.value.add(1,"month")),j("month")},Y=()=>{v.value=v.value.add(1,"year"),j("year")},ce=()=>{v.value=v.value.add(1,"month"),j("month")},ve=()=>{h.value=h.value.subtract(1,"year"),j("year")},Ne=()=>{h.value=h.value.subtract(1,"month"),j("month")},j=ee=>{t("panel-change",[v.value.toDate(),h.value.toDate()],ee)},D=$(()=>{const ee=(U.value+1)%12,Ee=U.value+1>=12?1:0;return n.unlinkPanels&&new Date(H.value+Ee,ee)n.unlinkPanels&&K.value*12+I.value-(H.value*12+U.value+1)>=12),Q=$(()=>!(m.value&&_.value&&!g.value.selecting&&t2([m.value,_.value]))),ge=$(()=>n.type==="datetime"||n.type==="datetimerange"),ne=(ee,Ee)=>{if(ee)return l?st(l[Ee]||l).locale(p.value).year(ee.year()).month(ee.month()).date(ee.date()):ee},Se=(ee,Ee=!0)=>{const Ae=ee.minDate,at=ee.maxDate,Lt=ne(Ae,0),Ft=ne(at,1);_.value===Ft&&m.value===Lt||(t("calendar-change",[Ae.toDate(),at&&at.toDate()]),_.value=Ft,m.value=Lt,!(!Ee||ge.value)&&C())},ye=P(!1),Te=P(!1),we=()=>{ye.value=!1},J=()=>{Te.value=!1},_e=(ee,Ee)=>{A.value[Ee]=ee;const Ae=st(ee,ae.value).locale(p.value);if(Ae.isValid()){if(o&&o(Ae.toDate()))return;Ee==="min"?(v.value=Ae,m.value=(m.value||v.value).year(Ae.year()).month(Ae.month()).date(Ae.date()),n.unlinkPanels||(h.value=Ae.add(1,"month"),_.value=m.value.add(1,"month"))):(h.value=Ae,_.value=(_.value||h.value).year(Ae.year()).month(Ae.month()).date(Ae.date()),n.unlinkPanels||(v.value=Ae.subtract(1,"month"),m.value=_.value.subtract(1,"month")))}},De=(ee,Ee)=>{A.value[Ee]=null},$e=(ee,Ee)=>{R.value[Ee]=ee;const Ae=st(ee,G.value).locale(p.value);Ae.isValid()&&(Ee==="min"?(ye.value=!0,m.value=(m.value||v.value).hour(Ae.hour()).minute(Ae.minute()).second(Ae.second()),(!_.value||_.value.isBefore(m.value))&&(_.value=m.value)):(Te.value=!0,_.value=(_.value||h.value).hour(Ae.hour()).minute(Ae.minute()).second(Ae.second()),h.value=_.value,_.value&&_.value.isBefore(m.value)&&(m.value=_.value)))},Pe=(ee,Ee)=>{R.value[Ee]=null,Ee==="min"?(v.value=m.value,ye.value=!1):(h.value=_.value,Te.value=!1)},Ue=(ee,Ee,Ae)=>{R.value.min||(ee&&(v.value=ee,m.value=(m.value||v.value).hour(ee.hour()).minute(ee.minute()).second(ee.second())),Ae||(ye.value=Ee),(!_.value||_.value.isBefore(m.value))&&(_.value=m.value,h.value=ee))},ze=(ee,Ee,Ae)=>{R.value.max||(ee&&(h.value=ee,_.value=(_.value||h.value).hour(ee.hour()).minute(ee.minute()).second(ee.second())),Ae||(Te.value=Ee),_.value&&_.value.isBefore(m.value)&&(m.value=_.value))},se=()=>{v.value=Rw(c(f),{lang:c(p),unit:"month",unlinkPanels:n.unlinkPanels})[0],h.value=v.value.add(1,"month"),t("pick",null)},pe=ee=>Ve(ee)?ee.map(Ee=>Ee.format(s)):ee.format(s),Me=ee=>Ve(ee)?ee.map(Ee=>st(Ee,s).locale(p.value)):st(ee,s).locale(p.value);function W(ee,Ee){if(n.unlinkPanels&&Ee){const Ae=(ee==null?void 0:ee.year())||0,at=(ee==null?void 0:ee.month())||0,Lt=Ee.year(),Ft=Ee.month();h.value=Ae===Lt&&at===Ft?Ee.add(1,ju):Ee}else h.value=v.value.add(1,ju),Ee&&(h.value=h.value.hour(Ee.hour()).minute(Ee.minute()).second(Ee.second()))}return t("set-picker-option",["isValidValue",t2]),t("set-picker-option",["parseUserInput",Me]),t("set-picker-option",["formatToString",pe]),t("set-picker-option",["handleClear",se]),(ee,Ee)=>(E(),M("div",{class:N([c(b).b(),c(y).b(),{"has-sidebar":ee.$slots.sidebar||c(x),"has-time":c(ge)}])},[k("div",{class:N(c(b).e("body-wrapper"))},[ke(ee.$slots,"sidebar",{class:N(c(b).e("sidebar"))}),c(x)?(E(),M("div",{key:0,class:N(c(b).e("sidebar"))},[(E(!0),M(qe,null,vt(c(d),(Ae,at)=>(E(),M("button",{key:at,type:"button",class:N(c(b).e("shortcut")),onClick:Lt=>c(S)(Ae)},xe(Ae.text),11,L_e))),128))],2)):fe("v-if",!0),k("div",{class:N(c(b).e("body"))},[c(ge)?(E(),M("div",{key:0,class:N(c(y).e("time-header"))},[k("span",{class:N(c(y).e("editors-wrap"))},[k("span",{class:N(c(y).e("time-picker-wrap"))},[X(c(Nn),{size:"small",disabled:c(g).selecting,placeholder:c(T)("el.datepicker.startDate"),class:N(c(y).e("editor")),"model-value":c(L),"validate-event":!1,onInput:Ee[0]||(Ee[0]=Ae=>_e(Ae,"min")),onChange:Ee[1]||(Ee[1]=Ae=>De(Ae,"min"))},null,8,["disabled","placeholder","class","model-value"])],2),ot((E(),M("span",{class:N(c(y).e("time-picker-wrap"))},[X(c(Nn),{size:"small",class:N(c(y).e("editor")),disabled:c(g).selecting,placeholder:c(T)("el.datepicker.startTime"),"model-value":c(q),"validate-event":!1,onFocus:Ee[2]||(Ee[2]=Ae=>ye.value=!0),onInput:Ee[3]||(Ee[3]=Ae=>$e(Ae,"min")),onChange:Ee[4]||(Ee[4]=Ae=>Pe(Ae,"min"))},null,8,["class","disabled","placeholder","model-value"]),X(c(Zc),{visible:ye.value,format:c(G),"datetime-role":"start","time-arrow-control":c(i),"parsed-value":v.value,onPick:Ue},null,8,["visible","format","time-arrow-control","parsed-value"])],2)),[[c(Sa),we]])],2),k("span",null,[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})]),k("span",{class:N([c(y).e("editors-wrap"),"is-right"])},[k("span",{class:N(c(y).e("time-picker-wrap"))},[X(c(Nn),{size:"small",class:N(c(y).e("editor")),disabled:c(g).selecting,placeholder:c(T)("el.datepicker.endDate"),"model-value":c(z),readonly:!c(m),"validate-event":!1,onInput:Ee[5]||(Ee[5]=Ae=>_e(Ae,"max")),onChange:Ee[6]||(Ee[6]=Ae=>De(Ae,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"])],2),ot((E(),M("span",{class:N(c(y).e("time-picker-wrap"))},[X(c(Nn),{size:"small",class:N(c(y).e("editor")),disabled:c(g).selecting,placeholder:c(T)("el.datepicker.endTime"),"model-value":c(le),readonly:!c(m),"validate-event":!1,onFocus:Ee[7]||(Ee[7]=Ae=>c(m)&&(Te.value=!0)),onInput:Ee[8]||(Ee[8]=Ae=>$e(Ae,"max")),onChange:Ee[9]||(Ee[9]=Ae=>Pe(Ae,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"]),X(c(Zc),{"datetime-role":"end",visible:Te.value,format:c(G),"time-arrow-control":c(i),"parsed-value":h.value,onPick:ze},null,8,["visible","format","time-arrow-control","parsed-value"])],2)),[[c(Sa),J]])],2)],2)):fe("v-if",!0),k("div",{class:N([[c(b).e("content"),c(y).e("content")],"is-left"])},[k("div",{class:N(c(y).e("header"))},[k("button",{type:"button",class:N([c(b).e("icon-btn"),"d-arrow-left"]),onClick:be},[X(c(Ke),null,{default:ue(()=>[X(c(os))]),_:1})],2),k("button",{type:"button",class:N([c(b).e("icon-btn"),"arrow-left"]),onClick:te},[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1})],2),ee.unlinkPanels?(E(),M("button",{key:0,type:"button",disabled:!c(F),class:N([[c(b).e("icon-btn"),{"is-disabled":!c(F)}],"d-arrow-right"]),onClick:Y},[X(c(Ke),null,{default:ue(()=>[X(c(as))]),_:1})],10,P_e)):fe("v-if",!0),ee.unlinkPanels?(E(),M("button",{key:1,type:"button",disabled:!c(D),class:N([[c(b).e("icon-btn"),{"is-disabled":!c(D)}],"arrow-right"]),onClick:ce},[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})],10,D_e)):fe("v-if",!0),k("div",null,xe(c(B)),1)],2),X(n2,{"selection-mode":"range",date:v.value,"min-date":c(m),"max-date":c(_),"range-state":c(g),"disabled-date":c(o),"cell-class-name":c(a),onChangerange:c(w),onPick:Se,onSelect:c(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])],2),k("div",{class:N([[c(b).e("content"),c(y).e("content")],"is-right"])},[k("div",{class:N(c(y).e("header"))},[ee.unlinkPanels?(E(),M("button",{key:0,type:"button",disabled:!c(F),class:N([[c(b).e("icon-btn"),{"is-disabled":!c(F)}],"d-arrow-left"]),onClick:ve},[X(c(Ke),null,{default:ue(()=>[X(c(os))]),_:1})],10,z_e)):fe("v-if",!0),ee.unlinkPanels?(E(),M("button",{key:1,type:"button",disabled:!c(D),class:N([[c(b).e("icon-btn"),{"is-disabled":!c(D)}],"arrow-left"]),onClick:Ne},[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1})],10,V_e)):fe("v-if",!0),k("button",{type:"button",class:N([c(b).e("icon-btn"),"d-arrow-right"]),onClick:de},[X(c(Ke),null,{default:ue(()=>[X(c(as))]),_:1})],2),k("button",{type:"button",class:N([c(b).e("icon-btn"),"arrow-right"]),onClick:Z},[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})],2),k("div",null,xe(c(V)),1)],2),X(n2,{"selection-mode":"range",date:h.value,"min-date":c(m),"max-date":c(_),"range-state":c(g),"disabled-date":c(o),"cell-class-name":c(a),onChangerange:c(w),onPick:Se,onSelect:c(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])],2)],2)],2),c(ge)?(E(),M("div",{key:0,class:N(c(b).e("footer"))},[c(u)?(E(),me(c(Tn),{key:0,text:"",size:"small",class:N(c(b).e("link-btn")),onClick:se},{default:ue(()=>[bt(xe(c(T)("el.datepicker.clear")),1)]),_:1},8,["class"])):fe("v-if",!0),X(c(Tn),{plain:"",size:"small",class:N(c(b).e("link-btn")),disabled:c(Q),onClick:Ee[10]||(Ee[10]=Ae=>c(C)(!1))},{default:ue(()=>[bt(xe(c(T)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2)):fe("v-if",!0)],2))}});var F_e=Ie(B_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-date-range.vue"]]);const H_e=Le({...Nw}),U_e=["pick","set-picker-option"],K_e=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:r}=Ct(),o=()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},a=()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},s=()=>{t.value=t.value.add(1,"year")},l=()=>{n.value=n.value.subtract(1,"year")},i=$(()=>`${t.value.year()} ${r("el.datepicker.year")}`),u=$(()=>`${n.value.year()} ${r("el.datepicker.year")}`),d=$(()=>t.value.year()),f=$(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year());return{leftPrevYear:o,rightNextYear:a,leftNextYear:s,rightPrevYear:l,leftLabel:i,rightLabel:u,leftYear:d,rightYear:f}},W_e=["onClick"],j_e=["disabled"],q_e=["disabled"],qu="year",G_e=oe({name:"DatePickerMonthRange"}),Y_e=oe({...G_e,props:H_e,emits:U_e,setup(e,{emit:t}){const n=e,{lang:r}=Ct(),o=Fe("EP_PICKER_BASE"),{shortcuts:a,disabledDate:s,format:l}=o.props,i=qt(o.props,"defaultValue"),u=P(st().locale(r.value)),d=P(st().locale(r.value).add(1,qu)),{minDate:f,maxDate:p,rangeState:v,ppNs:h,drpNs:m,handleChangeRange:_,handleRangeConfirm:g,handleShortcutClick:b,onSelect:y}=xw(n,{defaultValue:i,leftDate:u,rightDate:d,unit:qu,onParsedValueChanged:I}),w=$(()=>!!a.length),{leftPrevYear:C,rightNextYear:S,leftNextYear:O,rightPrevYear:T,leftLabel:A,rightLabel:R,leftYear:B,rightYear:V}=K_e({unlinkPanels:qt(n,"unlinkPanels"),leftDate:u,rightDate:d}),H=$(()=>n.unlinkPanels&&V.value>B.value+1),U=(x,L=!0)=>{const z=x.minDate,q=x.maxDate;p.value===q&&f.value===z||(p.value=q,f.value=z,L&&g())},K=x=>x.map(L=>L.format(l));function I(x,L){if(n.unlinkPanels&&L){const z=(x==null?void 0:x.year())||0,q=L.year();d.value=z===q?L.add(1,qu):L}else d.value=u.value.add(1,qu)}return t("set-picker-option",["formatToString",K]),(x,L)=>(E(),M("div",{class:N([c(h).b(),c(m).b(),{"has-sidebar":Boolean(x.$slots.sidebar)||c(w)}])},[k("div",{class:N(c(h).e("body-wrapper"))},[ke(x.$slots,"sidebar",{class:N(c(h).e("sidebar"))}),c(w)?(E(),M("div",{key:0,class:N(c(h).e("sidebar"))},[(E(!0),M(qe,null,vt(c(a),(z,q)=>(E(),M("button",{key:q,type:"button",class:N(c(h).e("shortcut")),onClick:le=>c(b)(z)},xe(z.text),11,W_e))),128))],2)):fe("v-if",!0),k("div",{class:N(c(h).e("body"))},[k("div",{class:N([[c(h).e("content"),c(m).e("content")],"is-left"])},[k("div",{class:N(c(m).e("header"))},[k("button",{type:"button",class:N([c(h).e("icon-btn"),"d-arrow-left"]),onClick:L[0]||(L[0]=(...z)=>c(C)&&c(C)(...z))},[X(c(Ke),null,{default:ue(()=>[X(c(os))]),_:1})],2),x.unlinkPanels?(E(),M("button",{key:0,type:"button",disabled:!c(H),class:N([[c(h).e("icon-btn"),{[c(h).is("disabled")]:!c(H)}],"d-arrow-right"]),onClick:L[1]||(L[1]=(...z)=>c(O)&&c(O)(...z))},[X(c(Ke),null,{default:ue(()=>[X(c(as))]),_:1})],10,j_e)):fe("v-if",!0),k("div",null,xe(c(A)),1)],2),X(r2,{"selection-mode":"range",date:u.value,"min-date":c(f),"max-date":c(p),"range-state":c(v),"disabled-date":c(s),onChangerange:c(_),onPick:U,onSelect:c(y)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),k("div",{class:N([[c(h).e("content"),c(m).e("content")],"is-right"])},[k("div",{class:N(c(m).e("header"))},[x.unlinkPanels?(E(),M("button",{key:0,type:"button",disabled:!c(H),class:N([[c(h).e("icon-btn"),{"is-disabled":!c(H)}],"d-arrow-left"]),onClick:L[2]||(L[2]=(...z)=>c(T)&&c(T)(...z))},[X(c(Ke),null,{default:ue(()=>[X(c(os))]),_:1})],10,q_e)):fe("v-if",!0),k("button",{type:"button",class:N([c(h).e("icon-btn"),"d-arrow-right"]),onClick:L[3]||(L[3]=(...z)=>c(S)&&c(S)(...z))},[X(c(Ke),null,{default:ue(()=>[X(c(as))]),_:1})],2),k("div",null,xe(c(R)),1)],2),X(r2,{"selection-mode":"range",date:d.value,"min-date":c(f),"max-date":c(p),"range-state":c(v),"disabled-date":c(s),onChangerange:c(_),onPick:U,onSelect:c(y)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var X_e=Ie(Y_e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-month-range.vue"]]);const Z_e=function(e){switch(e){case"daterange":case"datetimerange":return F_e;case"monthrange":return X_e;default:return R_e}};st.extend(sw);st.extend(Hge);st.extend(bv);st.extend(Kge);st.extend(jge);st.extend(Gge);st.extend(Xge);st.extend(Jge);var J_e=oe({name:"ElDatePicker",install:null,props:{...yv,...Qge},emits:["update:modelValue"],setup(e,{expose:t,emit:n,slots:r}){const o=Oe("picker-panel");ct("ElPopperOptions",Et(qt(e,"popperOptions"))),ct(tv,{slots:r,pickerNs:o});const a=P();t({focus:(i=!0)=>{var u;(u=a.value)==null||u.focus(i)},handleOpen:()=>{var i;(i=a.value)==null||i.handleOpen()},handleClose:()=>{var i;(i=a.value)==null||i.handleClose()}});const l=i=>{n("update:modelValue",i)};return()=>{var i;const u=(i=e.format)!=null?i:jhe[e.type]||ks,d=Z_e(e.type);return X(G8,ft(e,{format:u,type:e.type,ref:a,"onUpdate:modelValue":l}),{default:f=>X(d,f,null),"range-separator":r["range-separator"]})}}});const mc=J_e;mc.install=e=>{e.component(mc.name,mc)};const Q_e=mc,Sv="elDescriptions";var Dl=oe({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String},type:{type:String}},setup(){return{descriptions:Fe(Sv,{})}},render(){var e,t,n,r,o,a;const s=qde(this.cell),{border:l,direction:i}=this.descriptions,u=i==="vertical",d=((n=(t=(e=this.cell)==null?void 0:e.children)==null?void 0:t.label)==null?void 0:n.call(t))||s.label,f=(a=(o=(r=this.cell)==null?void 0:r.children)==null?void 0:o.default)==null?void 0:a.call(o),p=s.span,v=s.align?`is-${s.align}`:"",h=s.labelAlign?`is-${s.labelAlign}`:v,m=s.className,_=s.labelClassName,g={width:on(s.width),minWidth:on(s.minWidth)},b=Oe("descriptions");switch(this.type){case"label":return je(this.tag,{style:g,class:[b.e("cell"),b.e("label"),b.is("bordered-label",l),b.is("vertical-label",u),h,_],colSpan:u?p:1},d);case"content":return je(this.tag,{style:g,class:[b.e("cell"),b.e("content"),b.is("bordered-content",l),b.is("vertical-content",u),v,m],colSpan:u?p:p*2-1},f);default:return je("td",{style:g,class:[b.e("cell"),v],colSpan:p},[je("span",{class:[b.e("label"),_]},d),je("span",{class:[b.e("content"),m]},f)])}}});const e4e=Le({row:{type:Array,default:()=>[]}}),t4e={key:1},n4e=oe({name:"ElDescriptionsRow"}),r4e=oe({...n4e,props:e4e,setup(e){const t=Fe(Sv,{});return(n,r)=>c(t).direction==="vertical"?(E(),M(qe,{key:0},[k("tr",null,[(E(!0),M(qe,null,vt(n.row,(o,a)=>(E(),me(c(Dl),{key:`tr1-${a}`,cell:o,tag:"th",type:"label"},null,8,["cell"]))),128))]),k("tr",null,[(E(!0),M(qe,null,vt(n.row,(o,a)=>(E(),me(c(Dl),{key:`tr2-${a}`,cell:o,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(E(),M("tr",t4e,[(E(!0),M(qe,null,vt(n.row,(o,a)=>(E(),M(qe,{key:`tr3-${a}`},[c(t).border?(E(),M(qe,{key:0},[X(c(Dl),{cell:o,tag:"td",type:"label"},null,8,["cell"]),X(c(Dl),{cell:o,tag:"td",type:"content"},null,8,["cell"])],64)):(E(),me(c(Dl),{key:1,cell:o,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}});var o4e=Ie(r4e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/descriptions/src/descriptions-row.vue"]]);const a4e=Le({border:{type:Boolean,default:!1},column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:On,title:{type:String,default:""},extra:{type:String,default:""}}),s4e=oe({name:"ElDescriptions"}),l4e=oe({...s4e,props:a4e,setup(e){const t=e,n=Oe("descriptions"),r=sn(),o=En();ct(Sv,t);const a=$(()=>[n.b(),n.m(r.value)]),s=(i,u,d,f=!1)=>(i.props||(i.props={}),u>d&&(i.props.span=d),f&&(i.props.span=u),i),l=()=>{var i;const u=Us((i=o.default)==null?void 0:i.call(o)).filter(h=>{var m;return((m=h==null?void 0:h.type)==null?void 0:m.name)==="ElDescriptionsItem"}),d=[];let f=[],p=t.column,v=0;return u.forEach((h,m)=>{var _;const g=((_=h.props)==null?void 0:_.span)||1;if(mp?p:g),m===u.length-1){const b=t.column-v%t.column;f.push(s(h,b,p,!0)),d.push(f);return}g(E(),M("div",{class:N(c(a))},[i.title||i.extra||i.$slots.title||i.$slots.extra?(E(),M("div",{key:0,class:N(c(n).e("header"))},[k("div",{class:N(c(n).e("title"))},[ke(i.$slots,"title",{},()=>[bt(xe(i.title),1)])],2),k("div",{class:N(c(n).e("extra"))},[ke(i.$slots,"extra",{},()=>[bt(xe(i.extra),1)])],2)],2)):fe("v-if",!0),k("div",{class:N(c(n).e("body"))},[k("table",{class:N([c(n).e("table"),c(n).is("bordered",i.border)])},[k("tbody",null,[(E(!0),M(qe,null,vt(l(),(d,f)=>(E(),me(o4e,{key:f,row:d},null,8,["row"]))),128))])],2)],2)],2))}});var i4e=Ie(l4e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/descriptions/src/description.vue"]]),Iw=oe({name:"ElDescriptionsItem",props:{label:{type:String,default:""},span:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},align:{type:String,default:"left"},labelAlign:{type:String,default:""},className:{type:String,default:""},labelClassName:{type:String,default:""}}});const u4e=lt(i4e,{DescriptionsItem:Iw}),c4e=Jt(Iw),d4e=Le({mask:{type:Boolean,default:!0},customMaskEvent:{type:Boolean,default:!1},overlayClass:{type:he([String,Array,Object])},zIndex:{type:he([String,Number])}}),f4e={click:e=>e instanceof MouseEvent};var p4e=oe({name:"ElOverlay",props:d4e,emits:f4e,setup(e,{slots:t,emit:n}){const r=Oe("overlay"),o=i=>{n("click",i)},{onClick:a,onMousedown:s,onMouseup:l}=cv(e.customMaskEvent?void 0:o);return()=>e.mask?X("div",{class:[r.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:a,onMousedown:s,onMouseup:l},[ke(t,"default")],pr.STYLE|pr.CLASS|pr.PROPS,["onClick","onMouseup","onMousedown"]):je("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[ke(t,"default")])}});const kv=p4e,Lw=Le({center:{type:Boolean,default:!1},alignCenter:{type:Boolean,default:!1},closeIcon:{type:zt},customClass:{type:String,default:""},draggable:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},title:{type:String,default:""}}),h4e={close:()=>!0},v4e=["aria-label"],m4e=["id"],g4e=oe({name:"ElDialogContent"}),_4e=oe({...g4e,props:Lw,emits:h4e,setup(e){const t=e,{t:n}=Ct(),{Close:r}=Oy,{dialogRef:o,headerRef:a,bodyId:s,ns:l,style:i}=Fe(Dy),{focusTrapRef:u}=Fe(mv),d=Ud(u,o),f=$(()=>t.draggable);return Gy(o,a,f),(p,v)=>(E(),M("div",{ref:c(d),class:N([c(l).b(),c(l).is("fullscreen",p.fullscreen),c(l).is("draggable",c(f)),c(l).is("align-center",p.alignCenter),{[c(l).m("center")]:p.center},p.customClass]),style:We(c(i)),tabindex:"-1"},[k("header",{ref_key:"headerRef",ref:a,class:N(c(l).e("header"))},[ke(p.$slots,"header",{},()=>[k("span",{role:"heading",class:N(c(l).e("title"))},xe(p.title),3)]),p.showClose?(E(),M("button",{key:0,"aria-label":c(n)("el.dialog.close"),class:N(c(l).e("headerbtn")),type:"button",onClick:v[0]||(v[0]=h=>p.$emit("close"))},[X(c(Ke),{class:N(c(l).e("close"))},{default:ue(()=>[(E(),me(pt(p.closeIcon||c(r))))]),_:1},8,["class"])],10,v4e)):fe("v-if",!0)],2),k("div",{id:c(s),class:N(c(l).e("body"))},[ke(p.$slots,"default")],10,m4e),p.$slots.footer?(E(),M("footer",{key:0,class:N(c(l).e("footer"))},[ke(p.$slots,"footer")],2)):fe("v-if",!0)],6))}});var b4e=Ie(_4e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/dialog/src/dialog-content.vue"]]);const Pw=Le({...Lw,appendToBody:{type:Boolean,default:!1},beforeClose:{type:he(Function)},destroyOnClose:{type:Boolean,default:!1},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:{type:Boolean,default:!1},modalClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:{type:Boolean,default:!1}}),Dw={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[ut]:e=>rn(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},zw=(e,t)=>{const r=tt().emit,{nextZIndex:o}=Ko();let a="";const s=Dr(),l=Dr(),i=P(!1),u=P(!1),d=P(!1),f=P(e.zIndex||o());let p,v;const h=Uo("namespace",Zd),m=$(()=>{const U={},K=`--${h.value}-dialog`;return e.fullscreen||(e.top&&(U[`${K}-margin-top`]=e.top),e.width&&(U[`${K}-width`]=on(e.width))),U}),_=$(()=>e.alignCenter?{display:"flex"}:{});function g(){r("opened")}function b(){r("closed"),r(ut,!1),e.destroyOnClose&&(d.value=!1)}function y(){r("close")}function w(){v==null||v(),p==null||p(),e.openDelay&&e.openDelay>0?{stop:p}=ya(()=>T(),e.openDelay):T()}function C(){p==null||p(),v==null||v(),e.closeDelay&&e.closeDelay>0?{stop:v}=ya(()=>A(),e.closeDelay):A()}function S(){function U(K){K||(u.value=!0,i.value=!1)}e.beforeClose?e.beforeClose(U):C()}function O(){e.closeOnClickModal&&S()}function T(){gt&&(i.value=!0)}function A(){i.value=!1}function R(){r("openAutoFocus")}function B(){r("closeAutoFocus")}function V(U){var K;((K=U.detail)==null?void 0:K.focusReason)==="pointer"&&U.preventDefault()}e.lockScroll&&Xy(i);function H(){e.closeOnPressEscape&&S()}return Ce(()=>e.modelValue,U=>{U?(u.value=!1,w(),d.value=!0,f.value=e.zIndex?f.value++:o(),He(()=>{r("open"),t.value&&(t.value.scrollTop=0)})):i.value&&C()}),Ce(()=>e.fullscreen,U=>{t.value&&(U?(a=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=a)}),rt(()=>{e.modelValue&&(i.value=!0,d.value=!0,w())}),{afterEnter:g,afterLeave:b,beforeLeave:y,handleClose:S,onModalClick:O,close:C,doClose:A,onOpenAutoFocus:R,onCloseAutoFocus:B,onCloseRequested:H,onFocusoutPrevented:V,titleId:s,bodyId:l,closed:u,style:m,overlayDialogStyle:_,rendered:d,visible:i,zIndex:f}},y4e=["aria-label","aria-labelledby","aria-describedby"],w4e=oe({name:"ElDialog",inheritAttrs:!1}),E4e=oe({...w4e,props:Pw,emits:Dw,setup(e,{expose:t}){const n=e,r=En();xo({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},$(()=>!!r.title)),xo({scope:"el-dialog",from:"custom-class",replacement:"class",version:"2.3.0",ref:"https://element-plus.org/en-US/component/dialog.html#attributes",type:"Attribute"},$(()=>!!n.customClass));const o=Oe("dialog"),a=P(),s=P(),l=P(),{visible:i,titleId:u,bodyId:d,style:f,overlayDialogStyle:p,rendered:v,zIndex:h,afterEnter:m,afterLeave:_,beforeLeave:g,handleClose:b,onModalClick:y,onOpenAutoFocus:w,onCloseAutoFocus:C,onCloseRequested:S,onFocusoutPrevented:O}=zw(n,a);ct(Dy,{dialogRef:a,headerRef:s,bodyId:d,ns:o,rendered:v,style:f});const T=cv(y),A=$(()=>n.draggable&&!n.fullscreen);return t({visible:i,dialogContentRef:l}),(R,B)=>(E(),me(au,{to:"body",disabled:!R.appendToBody},[X(tn,{name:"dialog-fade",onAfterEnter:c(m),onAfterLeave:c(_),onBeforeLeave:c(g),persisted:""},{default:ue(()=>[ot(X(c(kv),{"custom-mask-event":"",mask:R.modal,"overlay-class":R.modalClass,"z-index":c(h)},{default:ue(()=>[k("div",{role:"dialog","aria-modal":"true","aria-label":R.title||void 0,"aria-labelledby":R.title?void 0:c(u),"aria-describedby":c(d),class:N(`${c(o).namespace.value}-overlay-dialog`),style:We(c(p)),onClick:B[0]||(B[0]=(...V)=>c(T).onClick&&c(T).onClick(...V)),onMousedown:B[1]||(B[1]=(...V)=>c(T).onMousedown&&c(T).onMousedown(...V)),onMouseup:B[2]||(B[2]=(...V)=>c(T).onMouseup&&c(T).onMouseup(...V))},[X(c(nf),{loop:"",trapped:c(i),"focus-start-el":"container",onFocusAfterTrapped:c(w),onFocusAfterReleased:c(C),onFocusoutPrevented:c(O),onReleaseRequested:c(S)},{default:ue(()=>[c(v)?(E(),me(b4e,ft({key:0,ref_key:"dialogContentRef",ref:l},R.$attrs,{"custom-class":R.customClass,center:R.center,"align-center":R.alignCenter,"close-icon":R.closeIcon,draggable:c(A),fullscreen:R.fullscreen,"show-close":R.showClose,title:R.title,onClose:c(b)}),No({header:ue(()=>[R.$slots.title?ke(R.$slots,"title",{key:1}):ke(R.$slots,"header",{key:0,close:c(b),titleId:c(u),titleClass:c(o).e("title")})]),default:ue(()=>[ke(R.$slots,"default")]),_:2},[R.$slots.footer?{name:"footer",fn:ue(()=>[ke(R.$slots,"footer")])}:void 0]),1040,["custom-class","center","align-center","close-icon","draggable","fullscreen","show-close","title","onClose"])):fe("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,y4e)]),_:3},8,["mask","overlay-class","z-index"]),[[yt,c(i)]])]),_:3},8,["onAfterEnter","onAfterLeave","onBeforeLeave"])],8,["disabled"]))}});var C4e=Ie(E4e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/dialog/src/dialog.vue"]]);const S4e=lt(C4e),k4e=Le({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:he(String),default:"solid"}}),$4e=oe({name:"ElDivider"}),T4e=oe({...$4e,props:k4e,setup(e){const t=e,n=Oe("divider"),r=$(()=>n.cssVar({"border-style":t.borderStyle}));return(o,a)=>(E(),M("div",{class:N([c(n).b(),c(n).m(o.direction)]),style:We(c(r)),role:"separator"},[o.$slots.default&&o.direction!=="vertical"?(E(),M("div",{key:0,class:N([c(n).e("text"),c(n).is(o.contentPosition)])},[ke(o.$slots,"default")],2)):fe("v-if",!0)],6))}});var O4e=Ie(T4e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/divider/src/divider.vue"]]);const Vw=lt(O4e),M4e=Le({...Pw,direction:{type:String,default:"rtl",values:["ltr","rtl","ttb","btt"]},size:{type:[String,Number],default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0}}),N4e=Dw,A4e=oe({name:"ElDrawer",components:{ElOverlay:kv,ElFocusTrap:nf,ElIcon:Ke,Close:wr},inheritAttrs:!1,props:M4e,emits:N4e,setup(e,{slots:t}){xo({scope:"el-drawer",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/drawer.html#slots"},$(()=>!!t.title)),xo({scope:"el-drawer",from:"custom-class",replacement:"class",version:"2.3.0",ref:"https://element-plus.org/en-US/component/drawer.html#attributes",type:"Attribute"},$(()=>!!e.customClass));const n=P(),r=P(),o=Oe("drawer"),{t:a}=Ct(),s=$(()=>e.direction==="rtl"||e.direction==="ltr"),l=$(()=>on(e.size));return{...zw(e,n),drawerRef:n,focusStartRef:r,isHorizontal:s,drawerSize:l,ns:o,t:a}}}),R4e=["aria-label","aria-labelledby","aria-describedby"],x4e=["id"],I4e=["aria-label"],L4e=["id"];function P4e(e,t,n,r,o,a){const s=nt("close"),l=nt("el-icon"),i=nt("el-focus-trap"),u=nt("el-overlay");return E(),me(au,{to:"body",disabled:!e.appendToBody},[X(tn,{name:e.ns.b("fade"),onAfterEnter:e.afterEnter,onAfterLeave:e.afterLeave,onBeforeLeave:e.beforeLeave,persisted:""},{default:ue(()=>[ot(X(u,{mask:e.modal,"overlay-class":e.modalClass,"z-index":e.zIndex,onClick:e.onModalClick},{default:ue(()=>[X(i,{loop:"",trapped:e.visible,"focus-trap-el":e.drawerRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:ue(()=>[k("div",ft({ref:"drawerRef","aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:e.titleId,"aria-describedby":e.bodyId},e.$attrs,{class:[e.ns.b(),e.direction,e.visible&&"open",e.customClass],style:e.isHorizontal?"width: "+e.drawerSize:"height: "+e.drawerSize,role:"dialog",onClick:t[1]||(t[1]=Je(()=>{},["stop"]))}),[k("span",{ref:"focusStartRef",class:N(e.ns.e("sr-focus")),tabindex:"-1"},null,2),e.withHeader?(E(),M("header",{key:0,class:N(e.ns.e("header"))},[e.$slots.title?ke(e.$slots,"title",{key:1},()=>[fe(" DEPRECATED SLOT ")]):ke(e.$slots,"header",{key:0,close:e.handleClose,titleId:e.titleId,titleClass:e.ns.e("title")},()=>[e.$slots.title?fe("v-if",!0):(E(),M("span",{key:0,id:e.titleId,role:"heading",class:N(e.ns.e("title"))},xe(e.title),11,x4e))]),e.showClose?(E(),M("button",{key:2,"aria-label":e.t("el.drawer.close"),class:N(e.ns.e("close-btn")),type:"button",onClick:t[0]||(t[0]=(...d)=>e.handleClose&&e.handleClose(...d))},[X(l,{class:N(e.ns.e("close"))},{default:ue(()=>[X(s)]),_:1},8,["class"])],10,I4e)):fe("v-if",!0)],2)):fe("v-if",!0),e.rendered?(E(),M("div",{key:1,id:e.bodyId,class:N(e.ns.e("body"))},[ke(e.$slots,"default")],10,L4e)):fe("v-if",!0),e.$slots.footer?(E(),M("div",{key:2,class:N(e.ns.e("footer"))},[ke(e.$slots,"footer")],2)):fe("v-if",!0)],16,R4e)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[yt,e.visible]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])],8,["disabled"])}var D4e=Ie(A4e,[["render",P4e],["__file","/home/runner/work/element-plus/element-plus/packages/components/drawer/src/drawer.vue"]]);const z4e=lt(D4e),V4e=oe({inheritAttrs:!1});function B4e(e,t,n,r,o,a){return ke(e.$slots,"default")}var F4e=Ie(V4e,[["render",B4e],["__file","/home/runner/work/element-plus/element-plus/packages/components/collection/src/collection.vue"]]);const H4e=oe({name:"ElCollectionItem",inheritAttrs:!1});function U4e(e,t,n,r,o,a){return ke(e.$slots,"default")}var K4e=Ie(H4e,[["render",U4e],["__file","/home/runner/work/element-plus/element-plus/packages/components/collection/src/collection-item.vue"]]);const Bw="data-el-collection-item",Fw=e=>{const t=`El${e}Collection`,n=`${t}Item`,r=Symbol(t),o=Symbol(n),a={...F4e,name:t,setup(){const l=P(null),i=new Map;ct(r,{itemMap:i,getItems:()=>{const d=c(l);if(!d)return[];const f=Array.from(d.querySelectorAll(`[${Bw}]`));return[...i.values()].sort((v,h)=>f.indexOf(v.ref)-f.indexOf(h.ref))},collectionRef:l})}},s={...K4e,name:n,setup(l,{attrs:i}){const u=P(null),d=Fe(r,void 0);ct(o,{collectionItemRef:u}),rt(()=>{const f=c(u);f&&d.itemMap.set(f,{ref:f,...i})}),Ut(()=>{const f=c(u);d.itemMap.delete(f)})}};return{COLLECTION_INJECTION_KEY:r,COLLECTION_ITEM_INJECTION_KEY:o,ElCollection:a,ElCollectionItem:s}},W4e=Le({style:{type:he([String,Array,Object])},currentTabId:{type:he(String)},defaultCurrentTabId:String,loop:Boolean,dir:{type:String,values:["ltr","rtl"],default:"ltr"},orientation:{type:he(String)},onBlur:Function,onFocus:Function,onMousedown:Function}),{ElCollection:j4e,ElCollectionItem:q4e,COLLECTION_INJECTION_KEY:$v,COLLECTION_ITEM_INJECTION_KEY:G4e}=Fw("RovingFocusGroup"),Tv=Symbol("elRovingFocusGroup"),Hw=Symbol("elRovingFocusGroupItem"),Y4e={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"},X4e=(e,t)=>{if(t!=="rtl")return e;switch(e){case Ge.right:return Ge.left;case Ge.left:return Ge.right;default:return e}},Z4e=(e,t,n)=>{const r=X4e(e.key,n);if(!(t==="vertical"&&[Ge.left,Ge.right].includes(r))&&!(t==="horizontal"&&[Ge.up,Ge.down].includes(r)))return Y4e[r]},J4e=(e,t)=>e.map((n,r)=>e[(r+t)%e.length]),Ov=e=>{const{activeElement:t}=document;for(const n of e)if(n===t||(n.focus(),t!==document.activeElement))return},s_="currentTabIdChange",l_="rovingFocusGroup.entryFocus",Q4e={bubbles:!1,cancelable:!0},e3e=oe({name:"ElRovingFocusGroupImpl",inheritAttrs:!1,props:W4e,emits:[s_,"entryFocus"],setup(e,{emit:t}){var n;const r=P((n=e.currentTabId||e.defaultCurrentTabId)!=null?n:null),o=P(!1),a=P(!1),s=P(null),{getItems:l}=Fe($v,void 0),i=$(()=>[{outline:"none"},e.style]),u=m=>{t(s_,m)},d=()=>{o.value=!0},f=Yt(m=>{var _;(_=e.onMousedown)==null||_.call(e,m)},()=>{a.value=!0}),p=Yt(m=>{var _;(_=e.onFocus)==null||_.call(e,m)},m=>{const _=!c(a),{target:g,currentTarget:b}=m;if(g===b&&_&&!c(o)){const y=new Event(l_,Q4e);if(b==null||b.dispatchEvent(y),!y.defaultPrevented){const w=l().filter(A=>A.focusable),C=w.find(A=>A.active),S=w.find(A=>A.id===c(r)),T=[C,S,...w].filter(Boolean).map(A=>A.ref);Ov(T)}}a.value=!1}),v=Yt(m=>{var _;(_=e.onBlur)==null||_.call(e,m)},()=>{o.value=!1}),h=(...m)=>{t("entryFocus",...m)};ct(Tv,{currentTabbedId:us(r),loop:qt(e,"loop"),tabIndex:$(()=>c(o)?-1:0),rovingFocusGroupRef:s,rovingFocusGroupRootStyle:i,orientation:qt(e,"orientation"),dir:qt(e,"dir"),onItemFocus:u,onItemShiftTab:d,onBlur:v,onFocus:p,onMousedown:f}),Ce(()=>e.currentTabId,m=>{r.value=m??null}),Dt(s,l_,h)}});function t3e(e,t,n,r,o,a){return ke(e.$slots,"default")}var n3e=Ie(e3e,[["render",t3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/roving-focus-group/src/roving-focus-group-impl.vue"]]);const r3e=oe({name:"ElRovingFocusGroup",components:{ElFocusGroupCollection:j4e,ElRovingFocusGroupImpl:n3e}});function o3e(e,t,n,r,o,a){const s=nt("el-roving-focus-group-impl"),l=nt("el-focus-group-collection");return E(),me(l,null,{default:ue(()=>[X(s,Ar(Md(e.$attrs)),{default:ue(()=>[ke(e.$slots,"default")]),_:3},16)]),_:3})}var a3e=Ie(r3e,[["render",o3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/roving-focus-group/src/roving-focus-group.vue"]]);const s3e=oe({components:{ElRovingFocusCollectionItem:q4e},props:{focusable:{type:Boolean,default:!0},active:{type:Boolean,default:!1}},emits:["mousedown","focus","keydown"],setup(e,{emit:t}){const{currentTabbedId:n,loop:r,onItemFocus:o,onItemShiftTab:a}=Fe(Tv,void 0),{getItems:s}=Fe($v,void 0),l=Dr(),i=P(null),u=Yt(v=>{t("mousedown",v)},v=>{e.focusable?o(c(l)):v.preventDefault()}),d=Yt(v=>{t("focus",v)},()=>{o(c(l))}),f=Yt(v=>{t("keydown",v)},v=>{const{key:h,shiftKey:m,target:_,currentTarget:g}=v;if(h===Ge.tab&&m){a();return}if(_!==g)return;const b=Z4e(v);if(b){v.preventDefault();let w=s().filter(C=>C.focusable).map(C=>C.ref);switch(b){case"last":{w.reverse();break}case"prev":case"next":{b==="prev"&&w.reverse();const C=w.indexOf(g);w=r.value?J4e(w,C+1):w.slice(C+1);break}}He(()=>{Ov(w)})}}),p=$(()=>n.value===c(l));return ct(Hw,{rovingFocusGroupItemRef:i,tabIndex:$(()=>c(p)?0:-1),handleMousedown:u,handleFocus:d,handleKeydown:f}),{id:l,handleKeydown:f,handleFocus:d,handleMousedown:u}}});function l3e(e,t,n,r,o,a){const s=nt("el-roving-focus-collection-item");return E(),me(s,{id:e.id,focusable:e.focusable,active:e.active},{default:ue(()=>[ke(e.$slots,"default")]),_:3},8,["id","focusable","active"])}var i3e=Ie(s3e,[["render",l3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/roving-focus-group/src/roving-focus-item.vue"]]);const gc=Le({trigger:Li.trigger,effect:{...gn.effect,default:"light"},type:{type:he(String)},placement:{type:he(String),default:"bottom"},popperOptions:{type:he(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:he([Number,String]),default:0},maxHeight:{type:he([Number,String]),default:""},popperClass:{type:String,default:""},disabled:{type:Boolean,default:!1},role:{type:String,default:"menu"},buttonProps:{type:he(Object)},teleported:gn.teleported}),Uw=Le({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:zt}}),u3e=Le({onKeydown:{type:he(Function)}}),c3e=[Ge.down,Ge.pageDown,Ge.home],Kw=[Ge.up,Ge.pageUp,Ge.end],d3e=[...c3e,...Kw],{ElCollection:f3e,ElCollectionItem:p3e,COLLECTION_INJECTION_KEY:h3e,COLLECTION_ITEM_INJECTION_KEY:v3e}=Fw("Dropdown"),of=Symbol("elDropdown"),{ButtonGroup:m3e}=Tn,g3e=oe({name:"ElDropdown",components:{ElButton:Tn,ElButtonGroup:m3e,ElScrollbar:Wo,ElDropdownCollection:f3e,ElTooltip:Kn,ElRovingFocusGroup:a3e,ElOnlyChild:N8,ElIcon:Ke,ArrowDown:Vo},props:gc,emits:["visible-change","click","command"],setup(e,{emit:t}){const n=tt(),r=Oe("dropdown"),{t:o}=Ct(),a=P(),s=P(),l=P(null),i=P(null),u=P(null),d=P(null),f=P(!1),p=[Ge.enter,Ge.space,Ge.down],v=$(()=>({maxHeight:on(e.maxHeight)})),h=$(()=>[r.m(w.value)]),m=Dr().value,_=$(()=>e.id||m);function g(){b()}function b(){var K;(K=l.value)==null||K.onClose()}function y(){var K;(K=l.value)==null||K.onOpen()}const w=sn();function C(...K){t("command",...K)}function S(){}function O(){const K=c(i);K==null||K.focus(),d.value=null}function T(K){d.value=K}function A(K){f.value||(K.preventDefault(),K.stopImmediatePropagation())}function R(){t("visible-change",!0)}function B(K){(K==null?void 0:K.type)==="keydown"&&i.value.focus()}function V(){t("visible-change",!1)}return ct(of,{contentRef:i,role:$(()=>e.role),triggerId:_,isUsingKeyboard:f,onItemEnter:S,onItemLeave:O}),ct("elDropdown",{instance:n,dropdownSize:w,handleClick:g,commandHandler:C,trigger:qt(e,"trigger"),hideOnClick:qt(e,"hideOnClick")}),{t:o,ns:r,scrollbar:u,wrapStyle:v,dropdownTriggerKls:h,dropdownSize:w,triggerId:_,triggerKeys:p,currentTabId:d,handleCurrentTabIdChange:T,handlerMainButtonClick:K=>{t("click",K)},handleEntryFocus:A,handleClose:b,handleOpen:y,handleBeforeShowTooltip:R,handleShowTooltip:B,handleBeforeHideTooltip:V,onFocusAfterTrapped:K=>{var I,x;K.preventDefault(),(x=(I=i.value)==null?void 0:I.focus)==null||x.call(I,{preventScroll:!0})},popperRef:l,contentRef:i,triggeringElementRef:a,referenceElementRef:s}}});function _3e(e,t,n,r,o,a){var s;const l=nt("el-dropdown-collection"),i=nt("el-roving-focus-group"),u=nt("el-scrollbar"),d=nt("el-only-child"),f=nt("el-tooltip"),p=nt("el-button"),v=nt("arrow-down"),h=nt("el-icon"),m=nt("el-button-group");return E(),M("div",{class:N([e.ns.b(),e.ns.is("disabled",e.disabled)])},[X(f,{ref:"popperRef",role:e.role,effect:e.effect,"fallback-placements":["bottom","top"],"popper-options":e.popperOptions,"gpu-acceleration":!1,"hide-after":e.trigger==="hover"?e.hideTimeout:0,"manual-mode":!0,placement:e.placement,"popper-class":[e.ns.e("popper"),e.popperClass],"reference-element":(s=e.referenceElementRef)==null?void 0:s.$el,trigger:e.trigger,"trigger-keys":e.triggerKeys,"trigger-target-el":e.contentRef,"show-after":e.trigger==="hover"?e.showTimeout:0,"stop-popper-mouse-event":!1,"virtual-ref":e.triggeringElementRef,"virtual-triggering":e.splitButton,disabled:e.disabled,transition:`${e.ns.namespace.value}-zoom-in-top`,teleported:e.teleported,pure:"",persistent:"",onBeforeShow:e.handleBeforeShowTooltip,onShow:e.handleShowTooltip,onBeforeHide:e.handleBeforeHideTooltip},No({content:ue(()=>[X(u,{ref:"scrollbar","wrap-style":e.wrapStyle,tag:"div","view-class":e.ns.e("list")},{default:ue(()=>[X(i,{loop:e.loop,"current-tab-id":e.currentTabId,orientation:"horizontal",onCurrentTabIdChange:e.handleCurrentTabIdChange,onEntryFocus:e.handleEntryFocus},{default:ue(()=>[X(l,null,{default:ue(()=>[ke(e.$slots,"dropdown")]),_:3})]),_:3},8,["loop","current-tab-id","onCurrentTabIdChange","onEntryFocus"])]),_:3},8,["wrap-style","view-class"])]),_:2},[e.splitButton?void 0:{name:"default",fn:ue(()=>[X(d,{id:e.triggerId,role:"button",tabindex:e.tabindex},{default:ue(()=>[ke(e.$slots,"default")]),_:3},8,["id","tabindex"])])}]),1032,["role","effect","popper-options","hide-after","placement","popper-class","reference-element","trigger","trigger-keys","trigger-target-el","show-after","virtual-ref","virtual-triggering","disabled","transition","teleported","onBeforeShow","onShow","onBeforeHide"]),e.splitButton?(E(),me(m,{key:0},{default:ue(()=>[X(p,ft({ref:"referenceElementRef"},e.buttonProps,{size:e.dropdownSize,type:e.type,disabled:e.disabled,tabindex:e.tabindex,onClick:e.handlerMainButtonClick}),{default:ue(()=>[ke(e.$slots,"default")]),_:3},16,["size","type","disabled","tabindex","onClick"]),X(p,ft({id:e.triggerId,ref:"triggeringElementRef"},e.buttonProps,{role:"button",size:e.dropdownSize,type:e.type,class:e.ns.e("caret-button"),disabled:e.disabled,tabindex:e.tabindex,"aria-label":e.t("el.dropdown.toggleDropdown")}),{default:ue(()=>[X(h,{class:N(e.ns.e("icon"))},{default:ue(()=>[X(v)]),_:1},8,["class"])]),_:1},16,["id","size","type","class","disabled","tabindex","aria-label"])]),_:3})):fe("v-if",!0)],2)}var b3e=Ie(g3e,[["render",_3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/dropdown/src/dropdown.vue"]]);const y3e=oe({name:"DropdownItemImpl",components:{ElIcon:Ke},props:Uw,emits:["pointermove","pointerleave","click","clickimpl"],setup(e,{emit:t}){const n=Oe("dropdown"),{role:r}=Fe(of,void 0),{collectionItemRef:o}=Fe(v3e,void 0),{collectionItemRef:a}=Fe(G4e,void 0),{rovingFocusGroupItemRef:s,tabIndex:l,handleFocus:i,handleKeydown:u,handleMousedown:d}=Fe(Hw,void 0),f=Ud(o,a,s),p=$(()=>r.value==="menu"?"menuitem":r.value==="navigation"?"link":"button"),v=Yt(h=>{const{code:m}=h;if(m===Ge.enter||m===Ge.space)return h.preventDefault(),h.stopImmediatePropagation(),t("clickimpl",h),!0},u);return{ns:n,itemRef:f,dataset:{[Bw]:""},role:p,tabIndex:l,handleFocus:i,handleKeydown:v,handleMousedown:d}}}),w3e=["aria-disabled","tabindex","role"];function E3e(e,t,n,r,o,a){const s=nt("el-icon");return E(),M(qe,null,[e.divided?(E(),M("li",ft({key:0,role:"separator",class:e.ns.bem("menu","item","divided")},e.$attrs),null,16)):fe("v-if",!0),k("li",ft({ref:e.itemRef},{...e.dataset,...e.$attrs},{"aria-disabled":e.disabled,class:[e.ns.be("menu","item"),e.ns.is("disabled",e.disabled)],tabindex:e.tabIndex,role:e.role,onClick:t[0]||(t[0]=l=>e.$emit("clickimpl",l)),onFocus:t[1]||(t[1]=(...l)=>e.handleFocus&&e.handleFocus(...l)),onKeydown:t[2]||(t[2]=(...l)=>e.handleKeydown&&e.handleKeydown(...l)),onMousedown:t[3]||(t[3]=(...l)=>e.handleMousedown&&e.handleMousedown(...l)),onPointermove:t[4]||(t[4]=l=>e.$emit("pointermove",l)),onPointerleave:t[5]||(t[5]=l=>e.$emit("pointerleave",l))}),[e.icon?(E(),me(s,{key:0},{default:ue(()=>[(E(),me(pt(e.icon)))]),_:1})):fe("v-if",!0),ke(e.$slots,"default")],16,w3e)],64)}var C3e=Ie(y3e,[["render",E3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/dropdown/src/dropdown-item-impl.vue"]]);const Ww=()=>{const e=Fe("elDropdown",{}),t=$(()=>e==null?void 0:e.dropdownSize);return{elDropdown:e,_elDropdownSize:t}},S3e=oe({name:"ElDropdownItem",components:{ElDropdownCollectionItem:p3e,ElRovingFocusItem:i3e,ElDropdownItemImpl:C3e},inheritAttrs:!1,props:Uw,emits:["pointermove","pointerleave","click"],setup(e,{emit:t,attrs:n}){const{elDropdown:r}=Ww(),o=tt(),a=P(null),s=$(()=>{var v,h;return(h=(v=c(a))==null?void 0:v.textContent)!=null?h:""}),{onItemEnter:l,onItemLeave:i}=Fe(of,void 0),u=Yt(v=>(t("pointermove",v),v.defaultPrevented),zm(v=>{var h;e.disabled?i(v):(l(v),v.defaultPrevented||(h=v.currentTarget)==null||h.focus())})),d=Yt(v=>(t("pointerleave",v),v.defaultPrevented),zm(v=>{i(v)})),f=Yt(v=>{if(!e.disabled)return t("click",v),v.type!=="keydown"&&v.defaultPrevented},v=>{var h,m,_;if(e.disabled){v.stopImmediatePropagation();return}(h=r==null?void 0:r.hideOnClick)!=null&&h.value&&((m=r.handleClick)==null||m.call(r)),(_=r.commandHandler)==null||_.call(r,e.command,o,v)}),p=$(()=>({...e,...n}));return{handleClick:f,handlePointerMove:u,handlePointerLeave:d,textContent:s,propsAndAttrs:p}}});function k3e(e,t,n,r,o,a){var s;const l=nt("el-dropdown-item-impl"),i=nt("el-roving-focus-item"),u=nt("el-dropdown-collection-item");return E(),me(u,{disabled:e.disabled,"text-value":(s=e.textValue)!=null?s:e.textContent},{default:ue(()=>[X(i,{focusable:!e.disabled},{default:ue(()=>[X(l,ft(e.propsAndAttrs,{onPointerleave:e.handlePointerLeave,onPointermove:e.handlePointerMove,onClickimpl:e.handleClick}),{default:ue(()=>[ke(e.$slots,"default")]),_:3},16,["onPointerleave","onPointermove","onClickimpl"])]),_:3},8,["focusable"])]),_:3},8,["disabled","text-value"])}var jw=Ie(S3e,[["render",k3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/dropdown/src/dropdown-item.vue"]]);const $3e=oe({name:"ElDropdownMenu",props:u3e,setup(e){const t=Oe("dropdown"),{_elDropdownSize:n}=Ww(),r=n.value,{focusTrapRef:o,onKeydown:a}=Fe(mv,void 0),{contentRef:s,role:l,triggerId:i}=Fe(of,void 0),{collectionRef:u,getItems:d}=Fe(h3e,void 0),{rovingFocusGroupRef:f,rovingFocusGroupRootStyle:p,tabIndex:v,onBlur:h,onFocus:m,onMousedown:_}=Fe(Tv,void 0),{collectionRef:g}=Fe($v,void 0),b=$(()=>[t.b("menu"),t.bm("menu",r==null?void 0:r.value)]),y=Ud(s,u,o,f,g),w=Yt(S=>{var O;(O=e.onKeydown)==null||O.call(e,S)},S=>{const{currentTarget:O,code:T,target:A}=S;if(O.contains(A),Ge.tab===T&&S.stopImmediatePropagation(),S.preventDefault(),A!==c(s)||!d3e.includes(T))return;const B=d().filter(V=>!V.disabled).map(V=>V.ref);Kw.includes(T)&&B.reverse(),Ov(B)});return{size:r,rovingFocusGroupRootStyle:p,tabIndex:v,dropdownKls:b,role:l,triggerId:i,dropdownListWrapperRef:y,handleKeydown:S=>{w(S),a(S)},onBlur:h,onFocus:m,onMousedown:_}}}),T3e=["role","aria-labelledby"];function O3e(e,t,n,r,o,a){return E(),M("ul",{ref:e.dropdownListWrapperRef,class:N(e.dropdownKls),style:We(e.rovingFocusGroupRootStyle),tabindex:-1,role:e.role,"aria-labelledby":e.triggerId,onBlur:t[0]||(t[0]=(...s)=>e.onBlur&&e.onBlur(...s)),onFocus:t[1]||(t[1]=(...s)=>e.onFocus&&e.onFocus(...s)),onKeydown:t[2]||(t[2]=(...s)=>e.handleKeydown&&e.handleKeydown(...s)),onMousedown:t[3]||(t[3]=(...s)=>e.onMousedown&&e.onMousedown(...s))},[ke(e.$slots,"default")],46,T3e)}var qw=Ie($3e,[["render",O3e],["__file","/home/runner/work/element-plus/element-plus/packages/components/dropdown/src/dropdown-menu.vue"]]);const M3e=lt(b3e,{DropdownItem:jw,DropdownMenu:qw}),N3e=Jt(jw),A3e=Jt(qw);let R3e=0;const x3e=oe({name:"ImgEmpty",setup(){return{ns:Oe("empty"),id:++R3e}}}),I3e={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},L3e=["id"],P3e=["stop-color"],D3e=["stop-color"],z3e=["id"],V3e=["stop-color"],B3e=["stop-color"],F3e=["id"],H3e={id:"Illustrations",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},U3e={id:"B-type",transform:"translate(-1268.000000, -535.000000)"},K3e={id:"Group-2",transform:"translate(1268.000000, 535.000000)"},W3e=["fill"],j3e=["fill"],q3e={id:"Group-Copy",transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},G3e=["fill"],Y3e=["fill"],X3e=["fill"],Z3e=["fill"],J3e=["fill"],Q3e={id:"Rectangle-Copy-17",transform:"translate(53.000000, 45.000000)"},e6e=["fill","xlink:href"],t6e=["fill","mask"],n6e=["fill"];function r6e(e,t,n,r,o,a){return E(),M("svg",I3e,[k("defs",null,[k("linearGradient",{id:`linearGradient-1-${e.id}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[k("stop",{"stop-color":`var(${e.ns.cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,P3e),k("stop",{"stop-color":`var(${e.ns.cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,D3e)],8,L3e),k("linearGradient",{id:`linearGradient-2-${e.id}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[k("stop",{"stop-color":`var(${e.ns.cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,V3e),k("stop",{"stop-color":`var(${e.ns.cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,B3e)],8,z3e),k("rect",{id:`path-3-${e.id}`,x:"0",y:"0",width:"17",height:"36"},null,8,F3e)]),k("g",H3e,[k("g",U3e,[k("g",K3e,[k("path",{id:"Oval-Copy-2",d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${e.ns.cssVarBlockName("fill-color-3")})`},null,8,W3e),k("polygon",{id:"Rectangle-Copy-14",fill:`var(${e.ns.cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,j3e),k("g",q3e,[k("polygon",{id:"Rectangle-Copy-10",fill:`var(${e.ns.cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,G3e),k("polygon",{id:"Rectangle-Copy-11",fill:`var(${e.ns.cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,Y3e),k("rect",{id:"Rectangle-Copy-12",fill:`url(#linearGradient-1-${e.id})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,X3e),k("polygon",{id:"Rectangle-Copy-13",fill:`var(${e.ns.cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,Z3e)]),k("rect",{id:"Rectangle-Copy-15",fill:`url(#linearGradient-2-${e.id})`,x:"13",y:"45",width:"40",height:"36"},null,8,J3e),k("g",Q3e,[k("use",{id:"Mask",fill:`var(${e.ns.cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${e.id}`},null,8,e6e),k("polygon",{id:"Rectangle-Copy",fill:`var(${e.ns.cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${e.id})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,t6e)]),k("polygon",{id:"Rectangle-Copy-18",fill:`var(${e.ns.cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,n6e)])])])])}var o6e=Ie(x3e,[["render",r6e],["__file","/home/runner/work/element-plus/element-plus/packages/components/empty/src/img-empty.vue"]]);const a6e={image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}},s6e=["src"],l6e={key:1},i6e=oe({name:"ElEmpty"}),u6e=oe({...i6e,props:a6e,setup(e){const t=e,{t:n}=Ct(),r=Oe("empty"),o=$(()=>t.description||n("el.table.emptyText")),a=$(()=>({width:t.imageSize?`${t.imageSize}px`:""}));return(s,l)=>(E(),M("div",{class:N(c(r).b())},[k("div",{class:N(c(r).e("image")),style:We(c(a))},[s.image?(E(),M("img",{key:0,src:s.image,ondragstart:"return false"},null,8,s6e)):ke(s.$slots,"image",{key:1},()=>[X(o6e)])],6),k("div",{class:N(c(r).e("description"))},[s.$slots.description?ke(s.$slots,"description",{key:0}):(E(),M("p",l6e,xe(c(o)),1))],2),s.$slots.default?(E(),M("div",{key:0,class:N(c(r).e("bottom"))},[ke(s.$slots,"default")],2)):fe("v-if",!0)],2))}});var c6e=Ie(u6e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/empty/src/empty.vue"]]);const Gw=lt(c6e),d6e=Le({model:Object,rules:{type:he(Object)},labelPosition:{type:String,values:["left","right","top"],default:"right"},requireAsteriskPosition:{type:String,values:["left","right"],default:"left"},labelWidth:{type:[String,Number],default:""},labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},size:{type:String,values:Ho},disabled:Boolean,validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:{type:Boolean,default:!1},scrollToError:Boolean}),f6e={validate:(e,t,n)=>(Ve(e)||Qe(e))&&rn(t)&&Qe(n)};function p6e(){const e=P([]),t=$(()=>{if(!e.value.length)return"0";const a=Math.max(...e.value);return a?`${a}px`:""});function n(a){const s=e.value.indexOf(a);return s===-1&&t.value,s}function r(a,s){if(a&&s){const l=n(s);e.value.splice(l,1,a)}else a&&e.value.push(a)}function o(a){const s=n(a);s>-1&&e.value.splice(s,1)}return{autoLabelWidth:t,registerLabelWidth:r,deregisterLabelWidth:o}}const Gu=(e,t)=>{const n=ol(t);return n.length>0?e.filter(r=>r.prop&&n.includes(r.prop)):e},h6e="ElForm",v6e=oe({name:h6e}),m6e=oe({...v6e,props:d6e,emits:f6e,setup(e,{expose:t,emit:n}){const r=e,o=[],a=sn(),s=Oe("form"),l=$(()=>{const{labelPosition:b,inline:y}=r;return[s.b(),s.m(a.value||"default"),{[s.m(`label-${b}`)]:b,[s.m("inline")]:y}]}),i=b=>{o.push(b)},u=b=>{b.prop&&o.splice(o.indexOf(b),1)},d=(b=[])=>{r.model&&Gu(o,b).forEach(y=>y.resetField())},f=(b=[])=>{Gu(o,b).forEach(y=>y.clearValidate())},p=$(()=>!!r.model),v=b=>{if(o.length===0)return[];const y=Gu(o,b);return y.length?y:[]},h=async b=>_(void 0,b),m=async(b=[])=>{if(!p.value)return!1;const y=v(b);if(y.length===0)return!0;let w={};for(const C of y)try{await C.validate("")}catch(S){w={...w,...S}}return Object.keys(w).length===0?!0:Promise.reject(w)},_=async(b=[],y)=>{const w=!Xe(y);try{const C=await m(b);return C===!0&&(y==null||y(C)),C}catch(C){if(C instanceof Error)throw C;const S=C;return r.scrollToError&&g(Object.keys(S)[0]),y==null||y(!1,S),w&&Promise.reject(S)}},g=b=>{var y;const w=Gu(o,b)[0];w&&((y=w.$el)==null||y.scrollIntoView())};return Ce(()=>r.rules,()=>{r.validateOnRuleChange&&h().catch(b=>void 0)},{deep:!0}),ct(hs,Et({...an(r),emit:n,resetFields:d,clearValidate:f,validateField:_,addField:i,removeField:u,...p6e()})),t({validate:h,validateField:_,resetFields:d,clearValidate:f,scrollToField:g}),(b,y)=>(E(),M("form",{class:N(c(l))},[ke(b.$slots,"default")],2))}});var g6e=Ie(m6e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form.vue"]]);function Ka(){return Ka=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function _c(e,t,n){return b6e()?_c=Reflect.construct.bind():_c=function(o,a,s){var l=[null];l.push.apply(l,a);var i=Function.bind.apply(o,l),u=new i;return s&&zi(u,s.prototype),u},_c.apply(null,arguments)}function y6e(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function a2(e){var t=typeof Map=="function"?new Map:void 0;return a2=function(r){if(r===null||!y6e(r))return r;if(typeof r!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t<"u"){if(t.has(r))return t.get(r);t.set(r,o)}function o(){return _c(r,arguments,o2(this).constructor)}return o.prototype=Object.create(r.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),zi(o,r)},a2(e)}var w6e=/%[sdj%]/g,E6e=function(){};typeof process<"u"&&process.env;function s2(e){if(!e||!e.length)return null;var t={};return e.forEach(function(n){var r=n.field;t[r]=t[r]||[],t[r].push(n)}),t}function ir(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=a)return l;switch(l){case"%s":return String(n[o++]);case"%d":return Number(n[o++]);case"%j":try{return JSON.stringify(n[o++])}catch{return"[Circular]"}break;default:return l}});return s}return e}function C6e(e){return e==="string"||e==="url"||e==="hex"||e==="email"||e==="date"||e==="pattern"}function hn(e,t){return!!(e==null||t==="array"&&Array.isArray(e)&&!e.length||C6e(t)&&typeof e=="string"&&!e)}function S6e(e,t,n){var r=[],o=0,a=e.length;function s(l){r.push.apply(r,l||[]),o++,o===a&&n(r)}e.forEach(function(l){t(l,s)})}function i_(e,t,n){var r=0,o=e.length;function a(s){if(s&&s.length){n(s);return}var l=r;r=r+1,l()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},Wl={integer:function(t){return Wl.number(t)&&parseInt(t,10)===t},float:function(t){return Wl.number(t)&&!Wl.integer(t)},array:function(t){return Array.isArray(t)},regexp:function(t){if(t instanceof RegExp)return!0;try{return!!new RegExp(t)}catch{return!1}},date:function(t){return typeof t.getTime=="function"&&typeof t.getMonth=="function"&&typeof t.getYear=="function"&&!isNaN(t.getTime())},number:function(t){return isNaN(t)?!1:typeof t=="number"},object:function(t){return typeof t=="object"&&!Wl.array(t)},method:function(t){return typeof t=="function"},email:function(t){return typeof t=="string"&&t.length<=320&&!!t.match(f_.email)},url:function(t){return typeof t=="string"&&t.length<=2048&&!!t.match(N6e())},hex:function(t){return typeof t=="string"&&!!t.match(f_.hex)}},A6e=function(t,n,r,o,a){if(t.required&&n===void 0){Yw(t,n,r,o,a);return}var s=["integer","float","array","regexp","object","method","email","number","date","url","hex"],l=t.type;s.indexOf(l)>-1?Wl[l](n)||o.push(ir(a.messages.types[l],t.fullField,t.type)):l&&typeof n!==t.type&&o.push(ir(a.messages.types[l],t.fullField,t.type))},R6e=function(t,n,r,o,a){var s=typeof t.len=="number",l=typeof t.min=="number",i=typeof t.max=="number",u=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,d=n,f=null,p=typeof n=="number",v=typeof n=="string",h=Array.isArray(n);if(p?f="number":v?f="string":h&&(f="array"),!f)return!1;h&&(d=n.length),v&&(d=n.replace(u,"_").length),s?d!==t.len&&o.push(ir(a.messages[f].len,t.fullField,t.len)):l&&!i&&dt.max?o.push(ir(a.messages[f].max,t.fullField,t.max)):l&&i&&(dt.max)&&o.push(ir(a.messages[f].range,t.fullField,t.min,t.max))},gs="enum",x6e=function(t,n,r,o,a){t[gs]=Array.isArray(t[gs])?t[gs]:[],t[gs].indexOf(n)===-1&&o.push(ir(a.messages[gs],t.fullField,t[gs].join(", ")))},I6e=function(t,n,r,o,a){if(t.pattern){if(t.pattern instanceof RegExp)t.pattern.lastIndex=0,t.pattern.test(n)||o.push(ir(a.messages.pattern.mismatch,t.fullField,n,t.pattern));else if(typeof t.pattern=="string"){var s=new RegExp(t.pattern);s.test(n)||o.push(ir(a.messages.pattern.mismatch,t.fullField,n,t.pattern))}}},Mt={required:Yw,whitespace:M6e,type:A6e,range:R6e,enum:x6e,pattern:I6e},L6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n,"string")&&!t.required)return r();Mt.required(t,n,o,s,a,"string"),hn(n,"string")||(Mt.type(t,n,o,s,a),Mt.range(t,n,o,s,a),Mt.pattern(t,n,o,s,a),t.whitespace===!0&&Mt.whitespace(t,n,o,s,a))}r(s)},P6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&Mt.type(t,n,o,s,a)}r(s)},D6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(n===""&&(n=void 0),hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&(Mt.type(t,n,o,s,a),Mt.range(t,n,o,s,a))}r(s)},z6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&Mt.type(t,n,o,s,a)}r(s)},V6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),hn(n)||Mt.type(t,n,o,s,a)}r(s)},B6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&(Mt.type(t,n,o,s,a),Mt.range(t,n,o,s,a))}r(s)},F6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&(Mt.type(t,n,o,s,a),Mt.range(t,n,o,s,a))}r(s)},H6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(n==null&&!t.required)return r();Mt.required(t,n,o,s,a,"array"),n!=null&&(Mt.type(t,n,o,s,a),Mt.range(t,n,o,s,a))}r(s)},U6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&Mt.type(t,n,o,s,a)}r(s)},K6e="enum",W6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a),n!==void 0&&Mt[K6e](t,n,o,s,a)}r(s)},j6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n,"string")&&!t.required)return r();Mt.required(t,n,o,s,a),hn(n,"string")||Mt.pattern(t,n,o,s,a)}r(s)},q6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n,"date")&&!t.required)return r();if(Mt.required(t,n,o,s,a),!hn(n,"date")){var i;n instanceof Date?i=n:i=new Date(n),Mt.type(t,i,o,s,a),i&&Mt.range(t,i.getTime(),o,s,a)}}r(s)},G6e=function(t,n,r,o,a){var s=[],l=Array.isArray(n)?"array":typeof n;Mt.required(t,n,o,s,a,l),r(s)},Yf=function(t,n,r,o,a){var s=t.type,l=[],i=t.required||!t.required&&o.hasOwnProperty(t.field);if(i){if(hn(n,s)&&!t.required)return r();Mt.required(t,n,o,l,a,s),hn(n,s)||Mt.type(t,n,o,l,a)}r(l)},Y6e=function(t,n,r,o,a){var s=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(hn(n)&&!t.required)return r();Mt.required(t,n,o,s,a)}r(s)},ai={string:L6e,method:P6e,number:D6e,boolean:z6e,regexp:V6e,integer:B6e,float:F6e,array:H6e,object:U6e,enum:W6e,pattern:j6e,date:q6e,url:Yf,hex:Yf,email:Yf,required:G6e,any:Y6e};function l2(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var t=JSON.parse(JSON.stringify(this));return t.clone=this.clone,t}}}var i2=l2(),_u=function(){function e(n){this.rules=null,this._messages=i2,this.define(n)}var t=e.prototype;return t.define=function(r){var o=this;if(!r)throw new Error("Cannot configure a schema with no rules");if(typeof r!="object"||Array.isArray(r))throw new Error("Rules must be an object");this.rules={},Object.keys(r).forEach(function(a){var s=r[a];o.rules[a]=Array.isArray(s)?s:[s]})},t.messages=function(r){return r&&(this._messages=d_(l2(),r)),this._messages},t.validate=function(r,o,a){var s=this;o===void 0&&(o={}),a===void 0&&(a=function(){});var l=r,i=o,u=a;if(typeof i=="function"&&(u=i,i={}),!this.rules||Object.keys(this.rules).length===0)return u&&u(null,l),Promise.resolve(l);function d(m){var _=[],g={};function b(w){if(Array.isArray(w)){var C;_=(C=_).concat.apply(C,w)}else _.push(w)}for(var y=0;y");const o=Oe("form"),a=P(),s=P(0),l=()=>{var d;if((d=a.value)!=null&&d.firstElementChild){const f=window.getComputedStyle(a.value.firstElementChild).width;return Math.ceil(Number.parseFloat(f))}else return 0},i=(d="update")=>{He(()=>{t.default&&e.isAutoWidth&&(d==="update"?s.value=l():d==="remove"&&(n==null||n.deregisterLabelWidth(s.value)))})},u=()=>i("update");return rt(()=>{u()}),Ut(()=>{i("remove")}),lo(()=>u()),Ce(s,(d,f)=>{e.updateAll&&(n==null||n.registerLabelWidth(d,f))}),Rn($(()=>{var d,f;return(f=(d=a.value)==null?void 0:d.firstElementChild)!=null?f:null}),u),()=>{var d,f;if(!t)return null;const{isAutoWidth:p}=e;if(p){const v=n==null?void 0:n.autoLabelWidth,h=r==null?void 0:r.hasLabel,m={};if(h&&v&&v!=="auto"){const _=Math.max(0,Number.parseInt(v,10)-s.value),g=n.labelPosition==="left"?"marginRight":"marginLeft";_&&(m[g]=`${_}px`)}return X("div",{ref:a,class:[o.be("item","label-wrap")],style:m},[(d=t.default)==null?void 0:d.call(t)])}else return X(qe,{ref:a},[(f=t.default)==null?void 0:f.call(t)])}}});const Q6e=["role","aria-labelledby"],ebe=oe({name:"ElFormItem"}),tbe=oe({...ebe,props:Z6e,setup(e,{expose:t}){const n=e,r=En(),o=Fe(hs,void 0),a=Fe(oo,void 0),s=sn(void 0,{formItem:!1}),l=Oe("form-item"),i=Dr().value,u=P([]),d=P(""),f=FN(d,100),p=P(""),v=P();let h,m=!1;const _=$(()=>{if((o==null?void 0:o.labelPosition)==="top")return{};const Z=on(n.labelWidth||(o==null?void 0:o.labelWidth)||"");return Z?{width:Z}:{}}),g=$(()=>{if((o==null?void 0:o.labelPosition)==="top"||o!=null&&o.inline)return{};if(!n.label&&!n.labelWidth&&A)return{};const Z=on(n.labelWidth||(o==null?void 0:o.labelWidth)||"");return!n.label&&!r.label?{marginLeft:Z}:{}}),b=$(()=>[l.b(),l.m(s.value),l.is("error",d.value==="error"),l.is("validating",d.value==="validating"),l.is("success",d.value==="success"),l.is("required",U.value||n.required),l.is("no-asterisk",o==null?void 0:o.hideRequiredAsterisk),(o==null?void 0:o.requireAsteriskPosition)==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:o==null?void 0:o.statusIcon}]),y=$(()=>rn(n.inlineMessage)?n.inlineMessage:(o==null?void 0:o.inlineMessage)||!1),w=$(()=>[l.e("error"),{[l.em("error","inline")]:y.value}]),C=$(()=>n.prop?Qe(n.prop)?n.prop:n.prop.join("."):""),S=$(()=>!!(n.label||r.label)),O=$(()=>n.for||u.value.length===1?u.value[0]:void 0),T=$(()=>!O.value&&S.value),A=!!a,R=$(()=>{const Z=o==null?void 0:o.model;if(!(!Z||!n.prop))return sc(Z,n.prop).value}),B=$(()=>{const{required:Z}=n,Y=[];n.rules&&Y.push(...ol(n.rules));const ce=o==null?void 0:o.rules;if(ce&&n.prop){const ve=sc(ce,n.prop).value;ve&&Y.push(...ol(ve))}if(Z!==void 0){const ve=Y.map((Ne,j)=>[Ne,j]).filter(([Ne])=>Object.keys(Ne).includes("required"));if(ve.length>0)for(const[Ne,j]of ve)Ne.required!==Z&&(Y[j]={...Ne,required:Z});else Y.push({required:Z})}return Y}),V=$(()=>B.value.length>0),H=Z=>B.value.filter(ce=>!ce.trigger||!Z?!0:Array.isArray(ce.trigger)?ce.trigger.includes(Z):ce.trigger===Z).map(({trigger:ce,...ve})=>ve),U=$(()=>B.value.some(Z=>Z.required)),K=$(()=>{var Z;return f.value==="error"&&n.showMessage&&((Z=o==null?void 0:o.showMessage)!=null?Z:!0)}),I=$(()=>`${n.label||""}${(o==null?void 0:o.labelSuffix)||""}`),x=Z=>{d.value=Z},L=Z=>{var Y,ce;const{errors:ve,fields:Ne}=Z;(!ve||!Ne)&&console.error(Z),x("error"),p.value=ve?(ce=(Y=ve==null?void 0:ve[0])==null?void 0:Y.message)!=null?ce:`${n.prop} is required`:"",o==null||o.emit("validate",n.prop,!1,p.value)},z=()=>{x("success"),o==null||o.emit("validate",n.prop,!0,"")},q=async Z=>{const Y=C.value;return new _u({[Y]:Z}).validate({[Y]:R.value},{firstFields:!0}).then(()=>(z(),!0)).catch(ve=>(L(ve),Promise.reject(ve)))},le=async(Z,Y)=>{if(m||!n.prop)return!1;const ce=Xe(Y);if(!V.value)return Y==null||Y(!1),!1;const ve=H(Z);return ve.length===0?(Y==null||Y(!0),!0):(x("validating"),q(ve).then(()=>(Y==null||Y(!0),!0)).catch(Ne=>{const{fields:j}=Ne;return Y==null||Y(!1,j),ce?!1:Promise.reject(j)}))},G=()=>{x(""),p.value="",m=!1},ae=async()=>{const Z=o==null?void 0:o.model;if(!Z||!n.prop)return;const Y=sc(Z,n.prop);m=!0,Y.value=Rm(h),await He(),G(),m=!1},be=Z=>{u.value.includes(Z)||u.value.push(Z)},te=Z=>{u.value=u.value.filter(Y=>Y!==Z)};Ce(()=>n.error,Z=>{p.value=Z||"",x(Z?"error":"")},{immediate:!0}),Ce(()=>n.validateStatus,Z=>x(Z||""));const de=Et({...an(n),$el:v,size:s,validateState:d,labelId:i,inputIds:u,isGroup:T,hasLabel:S,addInputId:be,removeInputId:te,resetField:ae,clearValidate:G,validate:le});return ct(oo,de),rt(()=>{n.prop&&(o==null||o.addField(de),h=Rm(R.value))}),Ut(()=>{o==null||o.removeField(de)}),t({size:s,validateMessage:p,validateState:d,validate:le,clearValidate:G,resetField:ae}),(Z,Y)=>{var ce;return E(),M("div",{ref_key:"formItemRef",ref:v,class:N(c(b)),role:c(T)?"group":void 0,"aria-labelledby":c(T)?c(i):void 0},[X(c(J6e),{"is-auto-width":c(_).width==="auto","update-all":((ce=c(o))==null?void 0:ce.labelWidth)==="auto"},{default:ue(()=>[c(S)?(E(),me(pt(c(O)?"label":"div"),{key:0,id:c(i),for:c(O),class:N(c(l).e("label")),style:We(c(_))},{default:ue(()=>[ke(Z.$slots,"label",{label:c(I)},()=>[bt(xe(c(I)),1)])]),_:3},8,["id","for","class","style"])):fe("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),k("div",{class:N(c(l).e("content")),style:We(c(g))},[ke(Z.$slots,"default"),X(nb,{name:`${c(l).namespace.value}-zoom-in-top`},{default:ue(()=>[c(K)?ke(Z.$slots,"error",{key:0,error:p.value},()=>[k("div",{class:N(c(w))},xe(p.value),3)]):fe("v-if",!0)]),_:3},8,["name"])],6)],10,Q6e)}}});var Xw=Ie(tbe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form-item.vue"]]);const nbe=lt(g6e,{FormItem:Xw}),rbe=Jt(Xw),obe=Le({urlList:{type:he(Array),default:()=>jt([])},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},hideOnClickModal:{type:Boolean,default:!1},teleported:{type:Boolean,default:!1},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2}}),abe={close:()=>!0,switch:e=>Ze(e)},sbe=["src"],lbe=oe({name:"ElImageViewer"}),ibe=oe({...lbe,props:obe,emits:abe,setup(e,{expose:t,emit:n}){const r=e,o={CONTAIN:{name:"contain",icon:Jn(fy)},ORIGINAL:{name:"original",icon:Jn(yy)}},{t:a}=Ct(),s=Oe("image-viewer"),{nextZIndex:l}=Ko(),i=P(),u=P([]),d=gd(),f=P(!0),p=P(r.initialIndex),v=xt(o.CONTAIN),h=P({scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}),m=$(()=>{const{urlList:x}=r;return x.length<=1}),_=$(()=>p.value===0),g=$(()=>p.value===r.urlList.length-1),b=$(()=>r.urlList[p.value]),y=$(()=>{const{scale:x,deg:L,offsetX:z,offsetY:q,enableTransition:le}=h.value;let G=z/x,ae=q/x;switch(L%360){case 90:case-270:[G,ae]=[ae,-G];break;case 180:case-180:[G,ae]=[-G,-ae];break;case 270:case-90:[G,ae]=[-ae,G];break}const be={transform:`scale(${x}) rotate(${L}deg) translate(${G}px, ${ae}px)`,transition:le?"transform .3s":""};return v.value.name===o.CONTAIN.name&&(be.maxWidth=be.maxHeight="100%"),be}),w=$(()=>Ze(r.zIndex)?r.zIndex:l());function C(){O(),n("close")}function S(){const x=Xa(z=>{switch(z.code){case Ge.esc:r.closeOnPressEscape&&C();break;case Ge.space:V();break;case Ge.left:U();break;case Ge.up:I("zoomIn");break;case Ge.right:K();break;case Ge.down:I("zoomOut");break}}),L=Xa(z=>{const q=z.deltaY||z.deltaX;I(q<0?"zoomIn":"zoomOut",{zoomRate:r.zoomRate,enableTransition:!1})});d.run(()=>{Dt(document,"keydown",x),Dt(document,"wheel",L)})}function O(){d.stop()}function T(){f.value=!1}function A(x){f.value=!1,x.target.alt=a("el.image.error")}function R(x){if(f.value||x.button!==0||!i.value)return;h.value.enableTransition=!1;const{offsetX:L,offsetY:z}=h.value,q=x.pageX,le=x.pageY,G=Xa(be=>{h.value={...h.value,offsetX:L+be.pageX-q,offsetY:z+be.pageY-le}}),ae=Dt(document,"mousemove",G);Dt(document,"mouseup",()=>{ae()}),x.preventDefault()}function B(){h.value={scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}}function V(){if(f.value)return;const x=Mi(o),L=Object.values(o),z=v.value.name,le=(L.findIndex(G=>G.name===z)+1)%x.length;v.value=o[x[le]],B()}function H(x){const L=r.urlList.length;p.value=(x+L)%L}function U(){_.value&&!r.infinite||H(p.value-1)}function K(){g.value&&!r.infinite||H(p.value+1)}function I(x,L={}){if(f.value)return;const{zoomRate:z,rotateDeg:q,enableTransition:le}={zoomRate:r.zoomRate,rotateDeg:90,enableTransition:!0,...L};switch(x){case"zoomOut":h.value.scale>.2&&(h.value.scale=Number.parseFloat((h.value.scale/z).toFixed(3)));break;case"zoomIn":h.value.scale<7&&(h.value.scale=Number.parseFloat((h.value.scale*z).toFixed(3)));break;case"clockwise":h.value.deg+=q;break;case"anticlockwise":h.value.deg-=q;break}h.value.enableTransition=le}return Ce(b,()=>{He(()=>{const x=u.value[0];x!=null&&x.complete||(f.value=!0)})}),Ce(p,x=>{B(),n("switch",x)}),rt(()=>{var x,L;S(),(L=(x=i.value)==null?void 0:x.focus)==null||L.call(x)}),t({setActiveItem:H}),(x,L)=>(E(),me(au,{to:"body",disabled:!x.teleported},[X(tn,{name:"viewer-fade",appear:""},{default:ue(()=>[k("div",{ref_key:"wrapper",ref:i,tabindex:-1,class:N(c(s).e("wrapper")),style:We({zIndex:c(w)})},[k("div",{class:N(c(s).e("mask")),onClick:L[0]||(L[0]=Je(z=>x.hideOnClickModal&&C(),["self"]))},null,2),fe(" CLOSE "),k("span",{class:N([c(s).e("btn"),c(s).e("close")]),onClick:C},[X(c(Ke),null,{default:ue(()=>[X(c(wr))]),_:1})],2),fe(" ARROW "),c(m)?fe("v-if",!0):(E(),M(qe,{key:0},[k("span",{class:N([c(s).e("btn"),c(s).e("prev"),c(s).is("disabled",!x.infinite&&c(_))]),onClick:U},[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1})],2),k("span",{class:N([c(s).e("btn"),c(s).e("next"),c(s).is("disabled",!x.infinite&&c(g))]),onClick:K},[X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})],2)],64)),fe(" ACTIONS "),k("div",{class:N([c(s).e("btn"),c(s).e("actions")])},[k("div",{class:N(c(s).e("actions__inner"))},[X(c(Ke),{onClick:L[1]||(L[1]=z=>I("zoomOut"))},{default:ue(()=>[X(c($y))]),_:1}),X(c(Ke),{onClick:L[2]||(L[2]=z=>I("zoomIn"))},{default:ue(()=>[X(c(Zh))]),_:1}),k("i",{class:N(c(s).e("actions__divider"))},null,2),X(c(Ke),{onClick:V},{default:ue(()=>[(E(),me(pt(c(v).icon)))]),_:1}),k("i",{class:N(c(s).e("actions__divider"))},null,2),X(c(Ke),{onClick:L[3]||(L[3]=z=>I("anticlockwise"))},{default:ue(()=>[X(c(_y))]),_:1}),X(c(Ke),{onClick:L[4]||(L[4]=z=>I("clockwise"))},{default:ue(()=>[X(c(by))]),_:1})],2)],2),fe(" CANVAS "),k("div",{class:N(c(s).e("canvas"))},[(E(!0),M(qe,null,vt(x.urlList,(z,q)=>ot((E(),M("img",{ref_for:!0,ref:le=>u.value[q]=le,key:z,src:z,style:We(c(y)),class:N(c(s).e("img")),onLoad:T,onError:A,onMousedown:R},null,46,sbe)),[[yt,q===p.value]])),128))],2),ke(x.$slots,"default")],6)]),_:3})],8,["disabled"]))}});var ube=Ie(ibe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/image-viewer/src/image-viewer.vue"]]);const Zw=lt(ube),cbe=Le({hideOnClickModal:{type:Boolean,default:!1},src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:{type:Boolean,default:!1},scrollContainer:{type:he([String,Object])},previewSrcList:{type:he(Array),default:()=>jt([])},previewTeleported:{type:Boolean,default:!1},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2}}),dbe={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>Ze(e),close:()=>!0,show:()=>!0},fbe=["src","loading"],pbe={key:0},hbe=oe({name:"ElImage",inheritAttrs:!1}),vbe=oe({...hbe,props:cbe,emits:dbe,setup(e,{emit:t}){const n=e;let r="";const{t:o}=Ct(),a=Oe("image"),s=El(),l=Qh(),i=P(),u=P(!1),d=P(!0),f=P(!1),p=P(),v=P(),h=gt&&"loading"in HTMLImageElement.prototype;let m,_;const g=$(()=>s.style),b=$(()=>{const{fit:x}=n;return gt&&x?{objectFit:x}:{}}),y=$(()=>{const{previewSrcList:x}=n;return Array.isArray(x)&&x.length>0}),w=$(()=>{const{previewSrcList:x,initialIndex:L}=n;let z=L;return L>x.length-1&&(z=0),z}),C=$(()=>n.loading==="eager"?!1:!h&&n.loading==="lazy"||n.lazy),S=()=>{gt&&(d.value=!0,u.value=!1,i.value=n.src)};function O(x){d.value=!1,u.value=!1,t("load",x)}function T(x){d.value=!1,u.value=!0,t("error",x)}function A(){BA(p.value,v.value)&&(S(),V())}const R=Xb(A,200);async function B(){var x;if(!gt)return;await He();const{scrollContainer:L}=n;Pr(L)?v.value=L:Qe(L)&&L!==""?v.value=(x=document.querySelector(L))!=null?x:void 0:p.value&&(v.value=jh(p.value)),v.value&&(m=Dt(v,"scroll",R),setTimeout(()=>A(),100))}function V(){!gt||!v.value||!R||(m==null||m(),v.value=void 0)}function H(x){if(x.ctrlKey){if(x.deltaY<0)return x.preventDefault(),!1;if(x.deltaY>0)return x.preventDefault(),!1}}function U(){y.value&&(_=Dt("wheel",H,{passive:!1}),r=document.body.style.overflow,document.body.style.overflow="hidden",f.value=!0,t("show"))}function K(){_==null||_(),document.body.style.overflow=r,f.value=!1,t("close")}function I(x){t("switch",x)}return Ce(()=>n.src,()=>{C.value?(d.value=!0,u.value=!1,V(),B()):S()}),rt(()=>{C.value?B():S()}),(x,L)=>(E(),M("div",{ref_key:"container",ref:p,class:N([c(a).b(),x.$attrs.class]),style:We(c(g))},[i.value!==void 0&&!u.value?(E(),M("img",ft({key:0},c(l),{src:i.value,loading:x.loading,style:c(b),class:[c(a).e("inner"),c(y)&&c(a).e("preview"),d.value&&c(a).is("loading")],onClick:U,onLoad:O,onError:T}),null,16,fbe)):fe("v-if",!0),d.value||u.value?(E(),M("div",{key:1,class:N(c(a).e("wrapper"))},[d.value?ke(x.$slots,"placeholder",{key:0},()=>[k("div",{class:N(c(a).e("placeholder"))},null,2)]):u.value?ke(x.$slots,"error",{key:1},()=>[k("div",{class:N(c(a).e("error"))},xe(c(o)("el.image.error")),3)]):fe("v-if",!0)],2)):fe("v-if",!0),c(y)?(E(),M(qe,{key:2},[f.value?(E(),me(c(Zw),{key:0,"z-index":x.zIndex,"initial-index":c(w),infinite:x.infinite,"zoom-rate":x.zoomRate,"url-list":x.previewSrcList,"hide-on-click-modal":x.hideOnClickModal,teleported:x.previewTeleported,"close-on-press-escape":x.closeOnPressEscape,onClose:K,onSwitch:I},{default:ue(()=>[x.$slots.viewer?(E(),M("div",pbe,[ke(x.$slots,"viewer")])):fe("v-if",!0)]),_:3},8,["z-index","initial-index","infinite","zoom-rate","url-list","hide-on-click-modal","teleported","close-on-press-escape"])):fe("v-if",!0)],64)):fe("v-if",!0)],6))}});var mbe=Ie(vbe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/image/src/image.vue"]]);const gbe=lt(mbe),_be=Le({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.POSITIVE_INFINITY},min:{type:Number,default:Number.NEGATIVE_INFINITY},modelValue:Number,readonly:Boolean,disabled:Boolean,size:On,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:e=>e===null||Ze(e)||["min","max"].includes(e),default:null},name:String,label:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0}}),bbe={[Bt]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[Bn]:e=>Ze(e)||yn(e),[ut]:e=>Ze(e)||yn(e)},ybe=["aria-label","onKeydown"],wbe=["aria-label","onKeydown"],Ebe=oe({name:"ElInputNumber"}),Cbe=oe({...Ebe,props:_be,emits:bbe,setup(e,{expose:t,emit:n}){const r=e,{t:o}=Ct(),a=Oe("input-number"),s=P(),l=Et({currentValue:r.modelValue,userInput:null}),{formItem:i}=Wn(),u=$(()=>Ze(r.modelValue)&&r.modelValue<=r.min),d=$(()=>Ze(r.modelValue)&&r.modelValue>=r.max),f=$(()=>{const H=g(r.step);return _n(r.precision)?Math.max(g(r.modelValue),H):(H>r.precision,r.precision)}),p=$(()=>r.controls&&r.controlsPosition==="right"),v=sn(),h=rr(),m=$(()=>{if(l.userInput!==null)return l.userInput;let H=l.currentValue;if(yn(H))return"";if(Ze(H)){if(Number.isNaN(H))return"";_n(r.precision)||(H=H.toFixed(r.precision))}return H}),_=(H,U)=>{if(_n(U)&&(U=f.value),U===0)return Math.round(H);let K=String(H);const I=K.indexOf(".");if(I===-1||!K.replace(".","").split("")[I+U])return H;const z=K.length;return K.charAt(z-1)==="5"&&(K=`${K.slice(0,Math.max(0,z-1))}6`),Number.parseFloat(Number(K).toFixed(U))},g=H=>{if(yn(H))return 0;const U=H.toString(),K=U.indexOf(".");let I=0;return K!==-1&&(I=U.length-K-1),I},b=(H,U=1)=>Ze(H)?_(H+r.step*U):l.currentValue,y=()=>{if(r.readonly||h.value||d.value)return;const H=Number(m.value)||0,U=b(H);S(U),n(Bn,l.currentValue)},w=()=>{if(r.readonly||h.value||u.value)return;const H=Number(m.value)||0,U=b(H,-1);S(U),n(Bn,l.currentValue)},C=(H,U)=>{const{max:K,min:I,step:x,precision:L,stepStrictly:z,valueOnClear:q}=r;let le=Number(H);if(yn(H)||Number.isNaN(le))return null;if(H===""){if(q===null)return null;le=Qe(q)?{min:I,max:K}[q]:q}return z&&(le=_(Math.round(le/x)*x,L)),_n(L)||(le=_(le,L)),(le>K||leK?K:I,U&&n(ut,le)),le},S=(H,U=!0)=>{var K;const I=l.currentValue,x=C(H);if(I!==x){if(!U){n(ut,x);return}l.userInput=null,n(ut,x),n(Bt,x,I),r.validateEvent&&((K=i==null?void 0:i.validate)==null||K.call(i,"change").catch(L=>void 0)),l.currentValue=x}},O=H=>{l.userInput=H;const U=H===""?null:Number(H);n(Bn,U),S(U,!1)},T=H=>{const U=H!==""?Number(H):"";(Ze(U)&&!Number.isNaN(U)||H==="")&&S(U),l.userInput=null},A=()=>{var H,U;(U=(H=s.value)==null?void 0:H.focus)==null||U.call(H)},R=()=>{var H,U;(U=(H=s.value)==null?void 0:H.blur)==null||U.call(H)},B=H=>{n("focus",H)},V=H=>{var U;n("blur",H),r.validateEvent&&((U=i==null?void 0:i.validate)==null||U.call(i,"blur").catch(K=>void 0))};return Ce(()=>r.modelValue,H=>{const U=C(l.userInput),K=C(H,!0);!Ze(U)&&(!U||U!==K)&&(l.currentValue=K,l.userInput=null)},{immediate:!0}),rt(()=>{var H;const{min:U,max:K,modelValue:I}=r,x=(H=s.value)==null?void 0:H.input;if(x.setAttribute("role","spinbutton"),Number.isFinite(K)?x.setAttribute("aria-valuemax",String(K)):x.removeAttribute("aria-valuemax"),Number.isFinite(U)?x.setAttribute("aria-valuemin",String(U)):x.removeAttribute("aria-valuemin"),x.setAttribute("aria-valuenow",String(l.currentValue)),x.setAttribute("aria-disabled",String(h.value)),!Ze(I)&&I!=null){let L=Number(I);Number.isNaN(L)&&(L=null),n(ut,L)}}),lo(()=>{var H;const U=(H=s.value)==null?void 0:H.input;U==null||U.setAttribute("aria-valuenow",`${l.currentValue}`)}),t({focus:A,blur:R}),(H,U)=>(E(),M("div",{class:N([c(a).b(),c(a).m(c(v)),c(a).is("disabled",c(h)),c(a).is("without-controls",!H.controls),c(a).is("controls-right",c(p))]),onDragstart:U[0]||(U[0]=Je(()=>{},["prevent"]))},[H.controls?ot((E(),M("span",{key:0,role:"button","aria-label":c(o)("el.inputNumber.decrease"),class:N([c(a).e("decrease"),c(a).is("disabled",c(u))]),onKeydown:_t(w,["enter"])},[X(c(Ke),null,{default:ue(()=>[c(p)?(E(),me(c(Vo),{key:0})):(E(),me(c(hy),{key:1}))]),_:1})],42,ybe)),[[c(Xc),w]]):fe("v-if",!0),H.controls?ot((E(),M("span",{key:1,role:"button","aria-label":c(o)("el.inputNumber.increase"),class:N([c(a).e("increase"),c(a).is("disabled",c(d))]),onKeydown:_t(y,["enter"])},[X(c(Ke),null,{default:ue(()=>[c(p)?(E(),me(c(pu),{key:0})):(E(),me(c(Yh),{key:1}))]),_:1})],42,wbe)),[[c(Xc),y]]):fe("v-if",!0),X(c(Nn),{id:H.id,ref_key:"input",ref:s,type:"number",step:H.step,"model-value":c(m),placeholder:H.placeholder,readonly:H.readonly,disabled:c(h),size:c(v),max:H.max,min:H.min,name:H.name,label:H.label,"validate-event":!1,onKeydown:[_t(Je(y,["prevent"]),["up"]),_t(Je(w,["prevent"]),["down"])],onBlur:V,onFocus:B,onInput:O,onChange:T},null,8,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","label","onKeydown"])],34))}});var Sbe=Ie(Cbe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/input-number/src/input-number.vue"]]);const Jw=lt(Sbe),kbe=Le({type:{type:String,values:["primary","success","warning","info","danger","default"],default:"default"},underline:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},href:{type:String,default:""},icon:{type:zt}}),$be={click:e=>e instanceof MouseEvent},Tbe=["href"],Obe=oe({name:"ElLink"}),Mbe=oe({...Obe,props:kbe,emits:$be,setup(e,{emit:t}){const n=e,r=Oe("link"),o=$(()=>[r.b(),r.m(n.type),r.is("disabled",n.disabled),r.is("underline",n.underline&&!n.disabled)]);function a(s){n.disabled||t("click",s)}return(s,l)=>(E(),M("a",{class:N(c(o)),href:s.disabled||!s.href?void 0:s.href,onClick:a},[s.icon?(E(),me(c(Ke),{key:0},{default:ue(()=>[(E(),me(pt(s.icon)))]),_:1})):fe("v-if",!0),s.$slots.default?(E(),M("span",{key:1,class:N(c(r).e("inner"))},[ke(s.$slots,"default")],2)):fe("v-if",!0),s.$slots.icon?ke(s.$slots,"icon",{key:2}):fe("v-if",!0)],10,Tbe))}});var Nbe=Ie(Mbe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/link/src/link.vue"]]);const Abe=lt(Nbe);let Rbe=class{constructor(t,n){this.parent=t,this.domNode=n,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(t){t===this.subMenuItems.length?t=0:t<0&&(t=this.subMenuItems.length-1),this.subMenuItems[t].focus(),this.subIndex=t}addListeners(){const t=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,n=>{n.addEventListener("keydown",r=>{let o=!1;switch(r.code){case Ge.down:{this.gotoSubIndex(this.subIndex+1),o=!0;break}case Ge.up:{this.gotoSubIndex(this.subIndex-1),o=!0;break}case Ge.tab:{oc(t,"mouseleave");break}case Ge.enter:case Ge.space:{o=!0,r.currentTarget.click();break}}return o&&(r.preventDefault(),r.stopPropagation()),!1})})}},xbe=class{constructor(t,n){this.domNode=t,this.submenu=null,this.submenu=null,this.init(n)}init(t){this.domNode.setAttribute("tabindex","0");const n=this.domNode.querySelector(`.${t}-menu`);n&&(this.submenu=new Rbe(this,n)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",t=>{let n=!1;switch(t.code){case Ge.down:{oc(t.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),n=!0;break}case Ge.up:{oc(t.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),n=!0;break}case Ge.tab:{oc(t.currentTarget,"mouseleave");break}case Ge.enter:case Ge.space:{n=!0,t.currentTarget.click();break}}n&&t.preventDefault()})}},Ibe=class{constructor(t,n){this.domNode=t,this.init(n)}init(t){const n=this.domNode.childNodes;Array.from(n).forEach(r=>{r.nodeType===1&&new xbe(r,t)})}};const Lbe=oe({name:"ElMenuCollapseTransition",setup(){const e=Oe("menu");return{listeners:{onBeforeEnter:n=>n.style.opacity="0.2",onEnter(n,r){Xr(n,`${e.namespace.value}-opacity-transition`),n.style.opacity="1",r()},onAfterEnter(n){er(n,`${e.namespace.value}-opacity-transition`),n.style.opacity=""},onBeforeLeave(n){n.dataset||(n.dataset={}),Ir(n,e.m("collapse"))?(er(n,e.m("collapse")),n.dataset.oldOverflow=n.style.overflow,n.dataset.scrollWidth=n.clientWidth.toString(),Xr(n,e.m("collapse"))):(Xr(n,e.m("collapse")),n.dataset.oldOverflow=n.style.overflow,n.dataset.scrollWidth=n.clientWidth.toString(),er(n,e.m("collapse"))),n.style.width=`${n.scrollWidth}px`,n.style.overflow="hidden"},onLeave(n){Xr(n,"horizontal-collapse-transition"),n.style.width=`${n.dataset.scrollWidth}px`}}}}});function Pbe(e,t,n,r,o,a){return E(),me(tn,ft({mode:"out-in"},e.listeners),{default:ue(()=>[ke(e.$slots,"default")]),_:3},16)}var Dbe=Ie(Lbe,[["render",Pbe],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-collapse-transition.vue"]]);function Qw(e,t){const n=$(()=>{let o=e.parent;const a=[t.value];for(;o.type.name!=="ElMenu";)o.props.index&&a.unshift(o.props.index),o=o.parent;return a});return{parentMenu:$(()=>{let o=e.parent;for(;o&&!["ElMenu","ElSubMenu"].includes(o.type.name);)o=o.parent;return o}),indexPath:n}}function zbe(e){return $(()=>{const n=e.backgroundColor;return n?new F8(n).shade(20).toString():""})}const e5=(e,t)=>{const n=Oe("menu");return $(()=>n.cssVarBlock({"text-color":e.textColor||"","hover-text-color":e.textColor||"","bg-color":e.backgroundColor||"","hover-bg-color":zbe(e).value||"","active-color":e.activeTextColor||"",level:`${t}`}))},Vbe=Le({index:{type:String,required:!0},showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},popperClass:String,disabled:Boolean,popperAppendToBody:{type:Boolean,default:void 0},popperOffset:{type:Number,default:6},expandCloseIcon:{type:zt},expandOpenIcon:{type:zt},collapseCloseIcon:{type:zt},collapseOpenIcon:{type:zt}}),Xf="ElSubMenu";var Mv=oe({name:Xf,props:Vbe,setup(e,{slots:t,expose:n}){const r=tt(),{indexPath:o,parentMenu:a}=Qw(r,$(()=>e.index)),s=Oe("menu"),l=Oe("sub-menu"),i=Fe("rootMenu");i||un(Xf,"can not inject root menu");const u=Fe(`subMenu:${a.value.uid}`);u||un(Xf,"can not inject sub menu");const d=P({}),f=P({});let p;const v=P(!1),h=P(),m=P(null),_=$(()=>B.value==="horizontal"&&b.value?"bottom-start":"right-start"),g=$(()=>B.value==="horizontal"&&b.value||B.value==="vertical"&&!i.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?S.value?e.expandOpenIcon:e.expandCloseIcon:Vo:e.collapseCloseIcon&&e.collapseOpenIcon?S.value?e.collapseOpenIcon:e.collapseCloseIcon:An),b=$(()=>u.level===0),y=$(()=>e.popperAppendToBody===void 0?b.value:Boolean(e.popperAppendToBody)),w=$(()=>i.props.collapse?`${s.namespace.value}-zoom-in-left`:`${s.namespace.value}-zoom-in-top`),C=$(()=>B.value==="horizontal"&&b.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","left-start","bottom-start","bottom-end","top-start","top-end"]),S=$(()=>i.openedMenus.includes(e.index)),O=$(()=>{let z=!1;return Object.values(d.value).forEach(q=>{q.active&&(z=!0)}),Object.values(f.value).forEach(q=>{q.active&&(z=!0)}),z}),T=$(()=>i.props.backgroundColor||""),A=$(()=>i.props.activeTextColor||""),R=$(()=>i.props.textColor||""),B=$(()=>i.props.mode),V=Et({index:e.index,indexPath:o,active:O}),H=$(()=>B.value!=="horizontal"?{color:R.value}:{borderBottomColor:O.value?i.props.activeTextColor?A.value:"":"transparent",color:O.value?A.value:R.value}),U=()=>{var z,q,le;return(le=(q=(z=m.value)==null?void 0:z.popperRef)==null?void 0:q.popperInstanceRef)==null?void 0:le.destroy()},K=z=>{z||U()},I=()=>{i.props.menuTrigger==="hover"&&i.props.mode==="horizontal"||i.props.collapse&&i.props.mode==="vertical"||e.disabled||i.handleSubMenuClick({index:e.index,indexPath:o.value,active:O.value})},x=(z,q=e.showTimeout)=>{var le;z.type!=="focus"&&(i.props.menuTrigger==="click"&&i.props.mode==="horizontal"||!i.props.collapse&&i.props.mode==="vertical"||e.disabled||(u.mouseInChild.value=!0,p==null||p(),{stop:p}=ya(()=>{i.openMenu(e.index,o.value)},q),y.value&&((le=a.value.vnode.el)==null||le.dispatchEvent(new MouseEvent("mouseenter")))))},L=(z=!1)=>{var q,le;i.props.menuTrigger==="click"&&i.props.mode==="horizontal"||!i.props.collapse&&i.props.mode==="vertical"||(p==null||p(),u.mouseInChild.value=!1,{stop:p}=ya(()=>!v.value&&i.closeMenu(e.index,o.value),e.hideTimeout),y.value&&z&&((q=r.parent)==null?void 0:q.type.name)==="ElSubMenu"&&((le=u.handleMouseleave)==null||le.call(u,!0)))};Ce(()=>i.props.collapse,z=>K(Boolean(z)));{const z=le=>{f.value[le.index]=le},q=le=>{delete f.value[le.index]};ct(`subMenu:${r.uid}`,{addSubMenu:z,removeSubMenu:q,handleMouseleave:L,mouseInChild:v,level:u.level+1})}return n({opened:S}),rt(()=>{i.addSubMenu(V),u.addSubMenu(V)}),Ut(()=>{u.removeSubMenu(V),i.removeSubMenu(V)}),()=>{var z;const q=[(z=t.title)==null?void 0:z.call(t),je(Ke,{class:l.e("icon-arrow"),style:{transform:S.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&i.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>Qe(g.value)?je(r.appContext.components[g.value]):je(g.value)})],le=e5(i.props,u.level+1),G=i.isMenuPopup?je(Kn,{ref:m,visible:S.value,effect:"light",pure:!0,offset:e.popperOffset,showArrow:!1,persistent:!0,popperClass:e.popperClass,placement:_.value,teleported:y.value,fallbackPlacements:C.value,transition:w.value,gpuAcceleration:!1},{content:()=>{var ae;return je("div",{class:[s.m(B.value),s.m("popup-container"),e.popperClass],onMouseenter:be=>x(be,100),onMouseleave:()=>L(!0),onFocus:be=>x(be,100)},[je("ul",{class:[s.b(),s.m("popup"),s.m(`popup-${_.value}`)],style:le.value},[(ae=t.default)==null?void 0:ae.call(t)])])},default:()=>je("div",{class:l.e("title"),style:[H.value,{backgroundColor:T.value}],onClick:I},q)}):je(qe,{},[je("div",{class:l.e("title"),style:[H.value,{backgroundColor:T.value}],ref:h,onClick:I},q),je(rf,{},{default:()=>{var ae;return ot(je("ul",{role:"menu",class:[s.b(),s.m("inline")],style:le.value},[(ae=t.default)==null?void 0:ae.call(t)]),[[yt,S.value]])}})]);return je("li",{class:[l.b(),l.is("active",O.value),l.is("opened",S.value),l.is("disabled",e.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:S.value,onMouseenter:x,onMouseleave:()=>L(!0),onFocus:x},[G])}}});const Bbe=Le({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:he(Array),default:()=>jt([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperEffect:{type:String,values:["dark","light"],default:"dark"}}),Zf=e=>Array.isArray(e)&&e.every(t=>Qe(t)),Fbe={close:(e,t)=>Qe(e)&&Zf(t),open:(e,t)=>Qe(e)&&Zf(t),select:(e,t,n,r)=>Qe(e)&&Zf(t)&&dt(n)&&(r===void 0||r instanceof Promise)};var Hbe=oe({name:"ElMenu",props:Bbe,emits:Fbe,setup(e,{emit:t,slots:n,expose:r}){const o=tt(),a=o.appContext.config.globalProperties.$router,s=P(),l=Oe("menu"),i=Oe("sub-menu"),u=P(-1),d=P(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),f=P(e.defaultActive),p=P({}),v=P({}),h=$(()=>e.mode==="horizontal"||e.mode==="vertical"&&e.collapse),m=()=>{const R=f.value&&p.value[f.value];if(!R||e.mode==="horizontal"||e.collapse)return;R.indexPath.forEach(V=>{const H=v.value[V];H&&_(V,H.indexPath)})},_=(R,B)=>{d.value.includes(R)||(e.uniqueOpened&&(d.value=d.value.filter(V=>B.includes(V))),d.value.push(R),t("open",R,B))},g=(R,B)=>{const V=d.value.indexOf(R);V!==-1&&d.value.splice(V,1),t("close",R,B)},b=({index:R,indexPath:B})=>{d.value.includes(R)?g(R,B):_(R,B)},y=R=>{(e.mode==="horizontal"||e.collapse)&&(d.value=[]);const{index:B,indexPath:V}=R;if(!(B===void 0||V===void 0))if(e.router&&a){const H=R.route||B,U=a.push(H).then(K=>(K||(f.value=B),K));t("select",B,V,{index:B,indexPath:V,route:H},U)}else f.value=B,t("select",B,V,{index:B,indexPath:V})},w=R=>{const B=p.value,V=B[R]||f.value&&B[f.value]||B[e.defaultActive];V?f.value=V.index:f.value=R},C=()=>{var R,B;if(!s.value)return-1;const V=Array.from((B=(R=s.value)==null?void 0:R.childNodes)!=null?B:[]).filter(z=>z.nodeName!=="#text"||z.nodeValue),H=64,U=Number.parseInt(getComputedStyle(s.value).paddingLeft,10),K=Number.parseInt(getComputedStyle(s.value).paddingRight,10),I=s.value.clientWidth-U-K;let x=0,L=0;return V.forEach((z,q)=>{x+=z.offsetWidth||0,x<=I-H&&(L=q+1)}),L===V.length?-1:L},S=(R,B=33.34)=>{let V;return()=>{V&&clearTimeout(V),V=setTimeout(()=>{R()},B)}};let O=!0;const T=()=>{const R=()=>{u.value=-1,He(()=>{u.value=C()})};O?R():S(R)(),O=!1};Ce(()=>e.defaultActive,R=>{p.value[R]||(f.value=""),w(R)}),Ce(()=>e.collapse,R=>{R&&(d.value=[])}),Ce(p.value,m);let A;Qn(()=>{e.mode==="horizontal"&&e.ellipsis?A=Rn(s,T).stop:A==null||A()});{const R=U=>{v.value[U.index]=U},B=U=>{delete v.value[U.index]};ct("rootMenu",Et({props:e,openedMenus:d,items:p,subMenus:v,activeIndex:f,isMenuPopup:h,addMenuItem:U=>{p.value[U.index]=U},removeMenuItem:U=>{delete p.value[U.index]},addSubMenu:R,removeSubMenu:B,openMenu:_,closeMenu:g,handleMenuItemClick:y,handleSubMenuClick:b})),ct(`subMenu:${o.uid}`,{addSubMenu:R,removeSubMenu:B,mouseInChild:P(!1),level:0})}return rt(()=>{e.mode==="horizontal"&&new Ibe(o.vnode.el,l.namespace.value)}),r({open:B=>{const{indexPath:V}=v.value[B];V.forEach(H=>_(H,V))},close:g,handleResize:T}),()=>{var R,B;let V=(B=(R=n.default)==null?void 0:R.call(n))!=null?B:[];const H=[];if(e.mode==="horizontal"&&s.value){const I=Us(V),x=u.value===-1?I:I.slice(0,u.value),L=u.value===-1?[]:I.slice(u.value);L!=null&&L.length&&e.ellipsis&&(V=x,H.push(je(Mv,{index:"sub-menu-more",class:i.e("hide-arrow")},{title:()=>je(Ke,{class:i.e("icon-more")},{default:()=>je(vy)}),default:()=>L})))}const U=e5(e,0),K=je("ul",{key:String(e.collapse),role:"menubar",ref:s,style:U.value,class:{[l.b()]:!0,[l.m(e.mode)]:!0,[l.m("collapse")]:e.collapse}},[...V,...H]);return e.collapseTransition&&e.mode==="vertical"?je(Dbe,()=>K):K}}});const Ube=Le({index:{type:he([String,null]),default:null},route:{type:he([String,Object])},disabled:Boolean}),Kbe={click:e=>Qe(e.index)&&Array.isArray(e.indexPath)},Jf="ElMenuItem",Wbe=oe({name:Jf,components:{ElTooltip:Kn},props:Ube,emits:Kbe,setup(e,{emit:t}){const n=tt(),r=Fe("rootMenu"),o=Oe("menu"),a=Oe("menu-item");r||un(Jf,"can not inject root menu");const{parentMenu:s,indexPath:l}=Qw(n,qt(e,"index")),i=Fe(`subMenu:${s.value.uid}`);i||un(Jf,"can not inject sub menu");const u=$(()=>e.index===r.activeIndex),d=Et({index:e.index,indexPath:l,active:u}),f=()=>{e.disabled||(r.handleMenuItemClick({index:e.index,indexPath:l.value,route:e.route}),t("click",d))};return rt(()=>{i.addSubMenu(d),r.addMenuItem(d)}),Ut(()=>{i.removeSubMenu(d),r.removeMenuItem(d)}),{parentMenu:s,rootMenu:r,active:u,nsMenu:o,nsMenuItem:a,handleClick:f}}});function jbe(e,t,n,r,o,a){const s=nt("el-tooltip");return E(),M("li",{class:N([e.nsMenuItem.b(),e.nsMenuItem.is("active",e.active),e.nsMenuItem.is("disabled",e.disabled)]),role:"menuitem",tabindex:"-1",onClick:t[0]||(t[0]=(...l)=>e.handleClick&&e.handleClick(...l))},[e.parentMenu.type.name==="ElMenu"&&e.rootMenu.props.collapse&&e.$slots.title?(E(),me(s,{key:0,effect:e.rootMenu.props.popperEffect,placement:"right","fallback-placements":["left"],persistent:""},{content:ue(()=>[ke(e.$slots,"title")]),default:ue(()=>[k("div",{class:N(e.nsMenu.be("tooltip","trigger"))},[ke(e.$slots,"default")],2)]),_:3},8,["effect"])):(E(),M(qe,{key:1},[ke(e.$slots,"default"),ke(e.$slots,"title")],64))],2)}var t5=Ie(Wbe,[["render",jbe],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item.vue"]]);const qbe={title:String},Gbe="ElMenuItemGroup",Ybe=oe({name:Gbe,props:qbe,setup(){return{ns:Oe("menu-item-group")}}});function Xbe(e,t,n,r,o,a){return E(),M("li",{class:N(e.ns.b())},[k("div",{class:N(e.ns.e("title"))},[e.$slots.title?ke(e.$slots,"title",{key:1}):(E(),M(qe,{key:0},[bt(xe(e.title),1)],64))],2),k("ul",null,[ke(e.$slots,"default")])],2)}var n5=Ie(Ybe,[["render",Xbe],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item-group.vue"]]);const Zbe=lt(Hbe,{MenuItem:t5,MenuItemGroup:n5,SubMenu:Mv}),Jbe=Jt(t5),Qbe=Jt(n5),eye=Jt(Mv),tye=Le({icon:{type:zt,default:()=>sy},title:String,content:{type:String,default:""}}),nye={back:()=>!0},rye=["aria-label"],oye=oe({name:"ElPageHeader"}),aye=oe({...oye,props:tye,emits:nye,setup(e,{emit:t}){const n=En(),{t:r}=Ct(),o=Oe("page-header"),a=$(()=>[o.b(),{[o.m("has-breadcrumb")]:!!n.breadcrumb,[o.m("has-extra")]:!!n.extra,[o.is("contentful")]:!!n.default}]);function s(){t("back")}return(l,i)=>(E(),M("div",{class:N(c(a))},[l.$slots.breadcrumb?(E(),M("div",{key:0,class:N(c(o).e("breadcrumb"))},[ke(l.$slots,"breadcrumb")],2)):fe("v-if",!0),k("div",{class:N(c(o).e("header"))},[k("div",{class:N(c(o).e("left"))},[k("div",{class:N(c(o).e("back")),role:"button",tabindex:"0",onClick:s},[l.icon||l.$slots.icon?(E(),M("div",{key:0,"aria-label":l.title||c(r)("el.pageHeader.title"),class:N(c(o).e("icon"))},[ke(l.$slots,"icon",{},()=>[l.icon?(E(),me(c(Ke),{key:0},{default:ue(()=>[(E(),me(pt(l.icon)))]),_:1})):fe("v-if",!0)])],10,rye)):fe("v-if",!0),k("div",{class:N(c(o).e("title"))},[ke(l.$slots,"title",{},()=>[bt(xe(l.title||c(r)("el.pageHeader.title")),1)])],2)],2),X(c(Vw),{direction:"vertical"}),k("div",{class:N(c(o).e("content"))},[ke(l.$slots,"content",{},()=>[bt(xe(l.content),1)])],2)],2),l.$slots.extra?(E(),M("div",{key:0,class:N(c(o).e("extra"))},[ke(l.$slots,"extra")],2)):fe("v-if",!0)],2),l.$slots.default?(E(),M("div",{key:1,class:N(c(o).e("main"))},[ke(l.$slots,"default")],2)):fe("v-if",!0)],2))}});var sye=Ie(aye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/page-header/src/page-header.vue"]]);const lye=lt(sye),iye=Le({disabled:Boolean,currentPage:{type:Number,default:1},prevText:{type:String},prevIcon:{type:zt}}),uye={click:e=>e instanceof MouseEvent},cye=["disabled","aria-disabled"],dye={key:0},fye=oe({name:"ElPaginationPrev"}),pye=oe({...fye,props:iye,emits:uye,setup(e){const t=e,n=$(()=>t.disabled||t.currentPage<=1);return(r,o)=>(E(),M("button",{type:"button",class:"btn-prev",disabled:c(n),"aria-disabled":c(n),onClick:o[0]||(o[0]=a=>r.$emit("click",a))},[r.prevText?(E(),M("span",dye,xe(r.prevText),1)):(E(),me(c(Ke),{key:1},{default:ue(()=>[(E(),me(pt(r.prevIcon)))]),_:1}))],8,cye))}});var hye=Ie(pye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/prev.vue"]]);const vye=Le({disabled:Boolean,currentPage:{type:Number,default:1},pageCount:{type:Number,default:50},nextText:{type:String},nextIcon:{type:zt}}),mye=["disabled","aria-disabled"],gye={key:0},_ye=oe({name:"ElPaginationNext"}),bye=oe({..._ye,props:vye,emits:["click"],setup(e){const t=e,n=$(()=>t.disabled||t.currentPage===t.pageCount||t.pageCount===0);return(r,o)=>(E(),M("button",{type:"button",class:"btn-next",disabled:c(n),"aria-disabled":c(n),onClick:o[0]||(o[0]=a=>r.$emit("click",a))},[r.nextText?(E(),M("span",gye,xe(r.nextText),1)):(E(),me(c(Ke),{key:1},{default:ue(()=>[(E(),me(pt(r.nextIcon)))]),_:1}))],8,mye))}});var yye=Ie(bye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/next.vue"]]);const r5="ElSelectGroup",bu="ElSelect";function wye(e,t){const n=Fe(bu),r=Fe(r5,{disabled:!1}),o=$(()=>Object.prototype.toString.call(e.value).toLowerCase()==="[object object]"),a=$(()=>n.props.multiple?f(n.props.modelValue,e.value):p(e.value,n.props.modelValue)),s=$(()=>{if(n.props.multiple){const m=n.props.modelValue||[];return!a.value&&m.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),l=$(()=>e.label||(o.value?"":e.value)),i=$(()=>e.value||e.label||""),u=$(()=>e.disabled||t.groupDisabled||s.value),d=tt(),f=(m=[],_)=>{if(o.value){const g=n.props.valueKey;return m&&m.some(b=>$t(Wt(b,g))===Wt(_,g))}else return m&&m.includes(_)},p=(m,_)=>{if(o.value){const{valueKey:g}=n.props;return Wt(m,g)===Wt(_,g)}else return m===_},v=()=>{!e.disabled&&!r.disabled&&(n.hoverIndex=n.optionsArray.indexOf(d.proxy))};Ce(()=>l.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),Ce(()=>e.value,(m,_)=>{const{remote:g,valueKey:b}=n.props;if(Object.is(m,_)||(n.onOptionDestroy(_,d.proxy),n.onOptionCreate(d.proxy)),!e.created&&!g){if(b&&typeof m=="object"&&typeof _=="object"&&m[b]===_[b])return;n.setSelected()}}),Ce(()=>r.disabled,()=>{t.groupDisabled=r.disabled},{immediate:!0});const{queryChange:h}=$t(n);return Ce(h,m=>{const{query:_}=c(m),g=new RegExp(ny(_),"i");t.visible=g.test(l.value)||e.created,t.visible||n.filteredOptionsCount--}),{select:n,currentLabel:l,currentValue:i,itemSelected:a,isDisabled:u,hoverItem:v}}const Eye=oe({name:"ElOption",componentName:"ElOption",props:{value:{required:!0,type:[String,Number,Boolean,Object]},label:[String,Number],created:Boolean,disabled:{type:Boolean,default:!1}},setup(e){const t=Oe("select"),n=Et({index:-1,groupDisabled:!1,visible:!0,hitState:!1,hover:!1}),{currentLabel:r,itemSelected:o,isDisabled:a,select:s,hoverItem:l}=wye(e,n),{visible:i,hover:u}=an(n),d=tt().proxy;s.onOptionCreate(d),Ut(()=>{const p=d.value,{selected:v}=s,m=(s.props.multiple?v:[v]).some(_=>_.value===d.value);He(()=>{s.cachedOptions.get(p)===d&&!m&&s.cachedOptions.delete(p)}),s.onOptionDestroy(p,d)});function f(){e.disabled!==!0&&n.groupDisabled!==!0&&s.handleOptionSelect(d,!0)}return{ns:t,currentLabel:r,itemSelected:o,isDisabled:a,select:s,hoverItem:l,visible:i,hover:u,selectOptionClick:f,states:n}}});function Cye(e,t,n,r,o,a){return ot((E(),M("li",{class:N([e.ns.be("dropdown","item"),e.ns.is("disabled",e.isDisabled),{selected:e.itemSelected,hover:e.hover}]),onMouseenter:t[0]||(t[0]=(...s)=>e.hoverItem&&e.hoverItem(...s)),onClick:t[1]||(t[1]=Je((...s)=>e.selectOptionClick&&e.selectOptionClick(...s),["stop"]))},[ke(e.$slots,"default",{},()=>[k("span",null,xe(e.currentLabel),1)])],34)),[[yt,e.visible]])}var Nv=Ie(Eye,[["render",Cye],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/option.vue"]]);const Sye=oe({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=Fe(bu),t=Oe("select"),n=$(()=>e.props.popperClass),r=$(()=>e.props.multiple),o=$(()=>e.props.fitInputWidth),a=P("");function s(){var l;a.value=`${(l=e.selectWrapper)==null?void 0:l.offsetWidth}px`}return rt(()=>{s(),Rn(e.selectWrapper,s)}),{ns:t,minWidth:a,popperClass:n,isMultiple:r,isFitInputWidth:o}}});function kye(e,t,n,r,o,a){return E(),M("div",{class:N([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:We({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[ke(e.$slots,"default")],6)}var $ye=Ie(Sye,[["render",kye],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/select-dropdown.vue"]]);function Tye(e){const{t}=Ct();return Et({options:new Map,cachedOptions:new Map,createdLabel:null,createdSelected:!1,selected:e.multiple?[]:{},inputLength:20,inputWidth:0,optionsCount:0,filteredOptionsCount:0,visible:!1,softFocus:!1,selectedLabel:"",hoverIndex:-1,query:"",previousQuery:null,inputHovering:!1,cachedPlaceHolder:"",currentPlaceholder:t("el.select.placeholder"),menuVisibleOnFocus:!1,isOnComposition:!1,isSilentBlur:!1,prefixWidth:11,tagInMultiLine:!1,mouseEnter:!1})}const Oye=(e,t,n)=>{const{t:r}=Ct(),o=Oe("select");xo({from:"suffixTransition",replacement:"override style scheme",version:"2.3.0",scope:"props",ref:"https://element-plus.org/en-US/component/select.html#select-attributes"},$(()=>e.suffixTransition===!1));const a=P(null),s=P(null),l=P(null),i=P(null),u=P(null),d=P(null),f=P(-1),p=xt({query:""}),v=xt(""),{form:h,formItem:m}=Wn(),_=$(()=>!e.filterable||e.multiple||!t.visible),g=$(()=>e.disabled||(h==null?void 0:h.disabled)),b=$(()=>{const W=e.multiple?Array.isArray(e.modelValue)&&e.modelValue.length>0:e.modelValue!==void 0&&e.modelValue!==null&&e.modelValue!=="";return e.clearable&&!g.value&&t.inputHovering&&W}),y=$(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),w=$(()=>o.is("reverse",y.value&&t.visible&&e.suffixTransition)),C=$(()=>e.remote?300:0),S=$(()=>e.loading?e.loadingText||r("el.select.loading"):e.remote&&t.query===""&&t.options.size===0?!1:e.filterable&&t.query&&t.options.size>0&&t.filteredOptionsCount===0?e.noMatchText||r("el.select.noMatch"):t.options.size===0?e.noDataText||r("el.select.noData"):null),O=$(()=>Array.from(t.options.values())),T=$(()=>Array.from(t.cachedOptions.values())),A=$(()=>{const W=O.value.filter(ee=>!ee.created).some(ee=>ee.currentLabel===t.query);return e.filterable&&e.allowCreate&&t.query!==""&&!W}),R=sn(),B=$(()=>["small"].includes(R.value)?"small":"default"),V=$({get(){return t.visible&&S.value!==!1},set(W){t.visible=W}});Ce([()=>g.value,()=>R.value,()=>h==null?void 0:h.size],()=>{He(()=>{H()})}),Ce(()=>e.placeholder,W=>{t.cachedPlaceHolder=t.currentPlaceholder=W}),Ce(()=>e.modelValue,(W,ee)=>{e.multiple&&(H(),W&&W.length>0||s.value&&t.query!==""?t.currentPlaceholder="":t.currentPlaceholder=t.cachedPlaceHolder,e.filterable&&!e.reserveKeyword&&(t.query="",U(t.query))),x(),e.filterable&&!e.multiple&&(t.inputLength=20),!ur(W,ee)&&e.validateEvent&&(m==null||m.validate("change").catch(Ee=>void 0))},{flush:"post",deep:!0}),Ce(()=>t.visible,W=>{var ee,Ee,Ae;W?((Ee=(ee=l.value)==null?void 0:ee.updatePopper)==null||Ee.call(ee),e.filterable&&(t.filteredOptionsCount=t.optionsCount,t.query=e.remote?"":t.selectedLabel,e.multiple?(Ae=s.value)==null||Ae.focus():t.selectedLabel&&(t.currentPlaceholder=`${t.selectedLabel}`,t.selectedLabel=""),U(t.query),!e.multiple&&!e.remote&&(p.value.query="",Nl(p),Nl(v)))):(e.filterable&&(Xe(e.filterMethod)&&e.filterMethod(""),Xe(e.remoteMethod)&&e.remoteMethod("")),s.value&&s.value.blur(),t.query="",t.previousQuery=null,t.selectedLabel="",t.inputLength=20,t.menuVisibleOnFocus=!1,z(),He(()=>{s.value&&s.value.value===""&&t.selected.length===0&&(t.currentPlaceholder=t.cachedPlaceHolder)}),e.multiple||(t.selected&&(e.filterable&&e.allowCreate&&t.createdSelected&&t.createdLabel?t.selectedLabel=t.createdLabel:t.selectedLabel=t.selected.currentLabel,e.filterable&&(t.query=t.selectedLabel)),e.filterable&&(t.currentPlaceholder=t.cachedPlaceHolder))),n.emit("visible-change",W)}),Ce(()=>t.options.entries(),()=>{var W,ee,Ee;if(!gt)return;(ee=(W=l.value)==null?void 0:W.updatePopper)==null||ee.call(W),e.multiple&&H();const Ae=((Ee=u.value)==null?void 0:Ee.querySelectorAll("input"))||[];Array.from(Ae).includes(document.activeElement)||x(),e.defaultFirstOption&&(e.filterable||e.remote)&&t.filteredOptionsCount&&I()},{flush:"post"}),Ce(()=>t.hoverIndex,W=>{Ze(W)&&W>-1?f.value=O.value[W]||{}:f.value={},O.value.forEach(ee=>{ee.hover=f.value===ee})});const H=()=>{e.collapseTags&&!e.filterable||He(()=>{var W,ee;if(!a.value)return;const Ee=a.value.$el.querySelector("input"),Ae=i.value,at=Kde(R.value||(h==null?void 0:h.size));Ee.style.height=`${(t.selected.length===0?at:Math.max(Ae?Ae.clientHeight+(Ae.clientHeight>at?6:0):0,at))-2}px`,t.tagInMultiLine=Number.parseFloat(Ee.style.height)>=at,t.visible&&S.value!==!1&&((ee=(W=l.value)==null?void 0:W.updatePopper)==null||ee.call(W))})},U=async W=>{if(!(t.previousQuery===W||t.isOnComposition)){if(t.previousQuery===null&&(Xe(e.filterMethod)||Xe(e.remoteMethod))){t.previousQuery=W;return}t.previousQuery=W,He(()=>{var ee,Ee;t.visible&&((Ee=(ee=l.value)==null?void 0:ee.updatePopper)==null||Ee.call(ee))}),t.hoverIndex=-1,e.multiple&&e.filterable&&He(()=>{const ee=s.value.value.length*15+20;t.inputLength=e.collapseTags?Math.min(50,ee):ee,K(),H()}),e.remote&&Xe(e.remoteMethod)?(t.hoverIndex=-1,e.remoteMethod(W)):Xe(e.filterMethod)?(e.filterMethod(W),Nl(v)):(t.filteredOptionsCount=t.optionsCount,p.value.query=W,Nl(p),Nl(v)),e.defaultFirstOption&&(e.filterable||e.remote)&&t.filteredOptionsCount&&(await He(),I())}},K=()=>{t.currentPlaceholder!==""&&(t.currentPlaceholder=s.value.value?"":t.cachedPlaceHolder)},I=()=>{const W=O.value.filter(Ae=>Ae.visible&&!Ae.disabled&&!Ae.states.groupDisabled),ee=W.find(Ae=>Ae.created),Ee=W[0];t.hoverIndex=ve(O.value,ee||Ee)},x=()=>{var W;if(e.multiple)t.selectedLabel="";else{const Ee=L(e.modelValue);(W=Ee.props)!=null&&W.created?(t.createdLabel=Ee.props.value,t.createdSelected=!0):t.createdSelected=!1,t.selectedLabel=Ee.currentLabel,t.selected=Ee,e.filterable&&(t.query=t.selectedLabel);return}const ee=[];Array.isArray(e.modelValue)&&e.modelValue.forEach(Ee=>{ee.push(L(Ee))}),t.selected=ee,He(()=>{H()})},L=W=>{let ee;const Ee=ec(W).toLowerCase()==="object",Ae=ec(W).toLowerCase()==="null",at=ec(W).toLowerCase()==="undefined";for(let mn=t.cachedOptions.size-1;mn>=0;mn--){const Rt=T.value[mn];if(Ee?Wt(Rt.value,e.valueKey)===Wt(W,e.valueKey):Rt.value===W){ee={value:W,currentLabel:Rt.currentLabel,isDisabled:Rt.isDisabled};break}}if(ee)return ee;const Lt=Ee?W.label:!Ae&&!at?W:"",Ft={value:W,currentLabel:Lt};return e.multiple&&(Ft.hitState=!1),Ft},z=()=>{setTimeout(()=>{const W=e.valueKey;e.multiple?t.selected.length>0?t.hoverIndex=Math.min.apply(null,t.selected.map(ee=>O.value.findIndex(Ee=>Wt(Ee,W)===Wt(ee,W)))):t.hoverIndex=-1:t.hoverIndex=O.value.findIndex(ee=>Ue(ee)===Ue(t.selected))},300)},q=()=>{var W,ee;le(),(ee=(W=l.value)==null?void 0:W.updatePopper)==null||ee.call(W),e.multiple&&!e.filterable&&H()},le=()=>{var W;t.inputWidth=(W=a.value)==null?void 0:W.$el.offsetWidth},G=()=>{e.filterable&&t.query!==t.selectedLabel&&(t.query=t.selectedLabel,U(t.query))},ae=Un(()=>{G()},C.value),be=Un(W=>{U(W.target.value)},C.value),te=W=>{ur(e.modelValue,W)||n.emit(Bt,W)},de=W=>{if(W.target.value.length<=0&&!ge()){const ee=e.modelValue.slice();ee.pop(),n.emit(ut,ee),te(ee)}W.target.value.length===1&&e.modelValue.length===0&&(t.currentPlaceholder=t.cachedPlaceHolder)},Z=(W,ee)=>{const Ee=t.selected.indexOf(ee);if(Ee>-1&&!g.value){const Ae=e.modelValue.slice();Ae.splice(Ee,1),n.emit(ut,Ae),te(Ae),n.emit("remove-tag",ee.value)}W.stopPropagation()},Y=W=>{W.stopPropagation();const ee=e.multiple?[]:"";if(!Qe(ee))for(const Ee of t.selected)Ee.isDisabled&&ee.push(Ee.value);n.emit(ut,ee),te(ee),t.hoverIndex=-1,t.visible=!1,n.emit("clear")},ce=(W,ee)=>{var Ee;if(e.multiple){const Ae=(e.modelValue||[]).slice(),at=ve(Ae,W.value);at>-1?Ae.splice(at,1):(e.multipleLimit<=0||Ae.length{j(W)})},ve=(W=[],ee)=>{if(!dt(ee))return W.indexOf(ee);const Ee=e.valueKey;let Ae=-1;return W.some((at,Lt)=>$t(Wt(at,Ee))===Wt(ee,Ee)?(Ae=Lt,!0):!1),Ae},Ne=()=>{t.softFocus=!0;const W=s.value||a.value;W&&(W==null||W.focus())},j=W=>{var ee,Ee,Ae,at,Lt;const Ft=Array.isArray(W)?W[0]:W;let mn=null;if(Ft!=null&&Ft.value){const Rt=O.value.filter(St=>St.value===Ft.value);Rt.length>0&&(mn=Rt[0].$el)}if(l.value&&mn){const Rt=(at=(Ae=(Ee=(ee=l.value)==null?void 0:ee.popperRef)==null?void 0:Ee.contentRef)==null?void 0:Ae.querySelector)==null?void 0:at.call(Ae,`.${o.be("dropdown","wrap")}`);Rt&&ay(Rt,mn)}(Lt=d.value)==null||Lt.handleScroll()},D=W=>{t.optionsCount++,t.filteredOptionsCount++,t.options.set(W.value,W),t.cachedOptions.set(W.value,W)},F=(W,ee)=>{t.options.get(W)===ee&&(t.optionsCount--,t.filteredOptionsCount--,t.options.delete(W))},Q=W=>{W.code!==Ge.backspace&&ge(!1),t.inputLength=s.value.value.length*15+20,H()},ge=W=>{if(!Array.isArray(t.selected))return;const ee=t.selected[t.selected.length-1];if(ee)return W===!0||W===!1?(ee.hitState=W,W):(ee.hitState=!ee.hitState,ee.hitState)},ne=W=>{const ee=W.target.value;if(W.type==="compositionend")t.isOnComposition=!1,He(()=>U(ee));else{const Ee=ee[ee.length-1]||"";t.isOnComposition=!Wd(Ee)}},Se=()=>{He(()=>j(t.selected))},ye=W=>{t.softFocus?t.softFocus=!1:((e.automaticDropdown||e.filterable)&&(e.filterable&&!t.visible&&(t.menuVisibleOnFocus=!0),t.visible=!0),n.emit("focus",W))},Te=()=>{var W;t.visible=!1,(W=a.value)==null||W.blur()},we=W=>{He(()=>{t.isSilentBlur?t.isSilentBlur=!1:n.emit("blur",W)}),t.softFocus=!1},J=W=>{Y(W)},_e=()=>{t.visible=!1},De=W=>{t.visible&&(W.preventDefault(),W.stopPropagation(),t.visible=!1)},$e=W=>{var ee;W&&!t.mouseEnter||g.value||(t.menuVisibleOnFocus?t.menuVisibleOnFocus=!1:(!l.value||!l.value.isFocusInsideContent())&&(t.visible=!t.visible),t.visible&&((ee=s.value||a.value)==null||ee.focus()))},Pe=()=>{t.visible?O.value[t.hoverIndex]&&ce(O.value[t.hoverIndex],void 0):$e()},Ue=W=>dt(W.value)?Wt(W.value,e.valueKey):W.value,ze=$(()=>O.value.filter(W=>W.visible).every(W=>W.disabled)),se=W=>{if(!t.visible){t.visible=!0;return}if(!(t.options.size===0||t.filteredOptionsCount===0)&&!t.isOnComposition&&!ze.value){W==="next"?(t.hoverIndex++,t.hoverIndex===t.options.size&&(t.hoverIndex=0)):W==="prev"&&(t.hoverIndex--,t.hoverIndex<0&&(t.hoverIndex=t.options.size-1));const ee=O.value[t.hoverIndex];(ee.disabled===!0||ee.states.groupDisabled===!0||!ee.visible)&&se(W),He(()=>j(f.value))}};return{optionsArray:O,selectSize:R,handleResize:q,debouncedOnInputChange:ae,debouncedQueryChange:be,deletePrevTag:de,deleteTag:Z,deleteSelected:Y,handleOptionSelect:ce,scrollToOption:j,readonly:_,resetInputHeight:H,showClose:b,iconComponent:y,iconReverse:w,showNewOption:A,collapseTagSize:B,setSelected:x,managePlaceholder:K,selectDisabled:g,emptyText:S,toggleLastOptionHitState:ge,resetInputState:Q,handleComposition:ne,onOptionCreate:D,onOptionDestroy:F,handleMenuEnter:Se,handleFocus:ye,blur:Te,handleBlur:we,handleClearClick:J,handleClose:_e,handleKeydownEscape:De,toggleMenu:$e,selectOption:Pe,getValueKey:Ue,navigateOptions:se,dropMenuVisible:V,queryChange:p,groupQueryChange:v,reference:a,input:s,tooltipRef:l,tags:i,selectWrapper:u,scrollbar:d,handleMouseEnter:()=>{t.mouseEnter=!0},handleMouseLeave:()=>{t.mouseEnter=!1}}},h_="ElSelect",Mye=oe({name:h_,componentName:h_,components:{ElInput:Nn,ElSelectMenu:$ye,ElOption:Nv,ElTag:Pi,ElScrollbar:Wo,ElTooltip:Kn,ElIcon:Ke},directives:{ClickOutside:Sa},props:{name:String,id:String,modelValue:{type:[Array,String,Number,Boolean,Object],default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:{type:String,validator:Kd},effect:{type:String,default:"light"},disabled:Boolean,clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},remote:Boolean,loadingText:String,noMatchText:String,noDataText:String,remoteMethod:Function,filterMethod:Function,multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:{type:Boolean,default:!1},teleported:gn.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:zt,default:Bo},fitInputWidth:{type:Boolean,default:!1},suffixIcon:{type:zt,default:Vo},tagType:{...Ev.type,default:"info"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:{type:Boolean,default:!1},suffixTransition:{type:Boolean,default:!0},placement:{type:String,values:vs,default:"bottom-start"}},emits:[ut,Bt,"remove-tag","clear","visible-change","focus","blur"],setup(e,t){const n=Oe("select"),r=Oe("input"),{t:o}=Ct(),a=Tye(e),{optionsArray:s,selectSize:l,readonly:i,handleResize:u,collapseTagSize:d,debouncedOnInputChange:f,debouncedQueryChange:p,deletePrevTag:v,deleteTag:h,deleteSelected:m,handleOptionSelect:_,scrollToOption:g,setSelected:b,resetInputHeight:y,managePlaceholder:w,showClose:C,selectDisabled:S,iconComponent:O,iconReverse:T,showNewOption:A,emptyText:R,toggleLastOptionHitState:B,resetInputState:V,handleComposition:H,onOptionCreate:U,onOptionDestroy:K,handleMenuEnter:I,handleFocus:x,blur:L,handleBlur:z,handleClearClick:q,handleClose:le,handleKeydownEscape:G,toggleMenu:ae,selectOption:be,getValueKey:te,navigateOptions:de,dropMenuVisible:Z,reference:Y,input:ce,tooltipRef:ve,tags:Ne,selectWrapper:j,scrollbar:D,queryChange:F,groupQueryChange:Q,handleMouseEnter:ge,handleMouseLeave:ne}=Oye(e,a,t),{focus:Se}=Jde(Y),{inputWidth:ye,selected:Te,inputLength:we,filteredOptionsCount:J,visible:_e,softFocus:De,selectedLabel:$e,hoverIndex:Pe,query:Ue,inputHovering:ze,currentPlaceholder:se,menuVisibleOnFocus:pe,isOnComposition:Me,isSilentBlur:W,options:ee,cachedOptions:Ee,optionsCount:Ae,prefixWidth:at,tagInMultiLine:Lt}=an(a),Ft=$(()=>{const Re=[n.b()],Ye=c(l);return Ye&&Re.push(n.m(Ye)),e.disabled&&Re.push(n.m("disabled")),Re}),mn=$(()=>({maxWidth:`${c(ye)-32}px`,width:"100%"})),Rt=$(()=>({maxWidth:`${c(ye)>123?c(ye)-123:c(ye)-75}px`}));ct(bu,Et({props:e,options:ee,optionsArray:s,cachedOptions:Ee,optionsCount:Ae,filteredOptionsCount:J,hoverIndex:Pe,handleOptionSelect:_,onOptionCreate:U,onOptionDestroy:K,selectWrapper:j,selected:Te,setSelected:b,queryChange:F,groupQueryChange:Q})),rt(()=>{a.cachedPlaceHolder=se.value=e.placeholder||o("el.select.placeholder"),e.multiple&&Array.isArray(e.modelValue)&&e.modelValue.length>0&&(se.value=""),Rn(j,u),e.remote&&e.multiple&&y(),He(()=>{const Re=Y.value&&Y.value.$el;if(Re&&(ye.value=Re.getBoundingClientRect().width,t.slots.prefix)){const Ye=Re.querySelector(`.${r.e("prefix")}`);at.value=Math.max(Ye.getBoundingClientRect().width+5,30)}}),b()}),e.multiple&&!Array.isArray(e.modelValue)&&t.emit(ut,[]),!e.multiple&&Array.isArray(e.modelValue)&&t.emit(ut,"");const St=$(()=>{var Re,Ye;return(Ye=(Re=ve.value)==null?void 0:Re.popperRef)==null?void 0:Ye.contentRef});return{tagInMultiLine:Lt,prefixWidth:at,selectSize:l,readonly:i,handleResize:u,collapseTagSize:d,debouncedOnInputChange:f,debouncedQueryChange:p,deletePrevTag:v,deleteTag:h,deleteSelected:m,handleOptionSelect:_,scrollToOption:g,inputWidth:ye,selected:Te,inputLength:we,filteredOptionsCount:J,visible:_e,softFocus:De,selectedLabel:$e,hoverIndex:Pe,query:Ue,inputHovering:ze,currentPlaceholder:se,menuVisibleOnFocus:pe,isOnComposition:Me,isSilentBlur:W,options:ee,resetInputHeight:y,managePlaceholder:w,showClose:C,selectDisabled:S,iconComponent:O,iconReverse:T,showNewOption:A,emptyText:R,toggleLastOptionHitState:B,resetInputState:V,handleComposition:H,handleMenuEnter:I,handleFocus:x,blur:L,handleBlur:z,handleClearClick:q,handleClose:le,handleKeydownEscape:G,toggleMenu:ae,selectOption:be,getValueKey:te,navigateOptions:de,dropMenuVisible:Z,focus:Se,reference:Y,input:ce,tooltipRef:ve,popperPaneRef:St,tags:Ne,selectWrapper:j,scrollbar:D,wrapperKls:Ft,selectTagsStyle:mn,nsSelect:n,tagTextStyle:Rt,handleMouseEnter:ge,handleMouseLeave:ne}}}),Nye=["disabled","autocomplete"],Aye={style:{height:"100%",display:"flex","justify-content":"center","align-items":"center"}};function Rye(e,t,n,r,o,a){const s=nt("el-tag"),l=nt("el-tooltip"),i=nt("el-icon"),u=nt("el-input"),d=nt("el-option"),f=nt("el-scrollbar"),p=nt("el-select-menu"),v=wi("click-outside");return ot((E(),M("div",{ref:"selectWrapper",class:N(e.wrapperKls),onMouseenter:t[22]||(t[22]=(...h)=>e.handleMouseEnter&&e.handleMouseEnter(...h)),onMouseleave:t[23]||(t[23]=(...h)=>e.handleMouseLeave&&e.handleMouseLeave(...h)),onClick:t[24]||(t[24]=Je((...h)=>e.toggleMenu&&e.toggleMenu(...h),["stop"]))},[X(l,{ref:"tooltipRef",visible:e.dropMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"fallback-placements":["bottom-start","top-start","right","left"],effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,onShow:e.handleMenuEnter},{default:ue(()=>[k("div",{class:"select-trigger",onMouseenter:t[20]||(t[20]=h=>e.inputHovering=!0),onMouseleave:t[21]||(t[21]=h=>e.inputHovering=!1)},[e.multiple?(E(),M("div",{key:0,ref:"tags",class:N(e.nsSelect.e("tags")),style:We(e.selectTagsStyle)},[e.collapseTags&&e.selected.length?(E(),M("span",{key:0,class:N([e.nsSelect.b("tags-wrapper"),{"has-prefix":e.prefixWidth&&e.selected.length}])},[X(s,{closable:!e.selectDisabled&&!e.selected[0].isDisabled,size:e.collapseTagSize,hit:e.selected[0].hitState,type:e.tagType,"disable-transitions":"",onClose:t[0]||(t[0]=h=>e.deleteTag(h,e.selected[0]))},{default:ue(()=>[k("span",{class:N(e.nsSelect.e("tags-text")),style:We(e.tagTextStyle)},xe(e.selected[0].currentLabel),7)]),_:1},8,["closable","size","hit","type"]),e.selected.length>1?(E(),me(s,{key:0,closable:!1,size:e.collapseTagSize,type:e.tagType,"disable-transitions":""},{default:ue(()=>[e.collapseTagsTooltip?(E(),me(l,{key:0,disabled:e.dropMenuVisible,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom",teleported:e.teleported},{default:ue(()=>[k("span",{class:N(e.nsSelect.e("tags-text"))},"+ "+xe(e.selected.length-1),3)]),content:ue(()=>[k("div",{class:N(e.nsSelect.e("collapse-tags"))},[(E(!0),M(qe,null,vt(e.selected.slice(1),(h,m)=>(E(),M("div",{key:m,class:N(e.nsSelect.e("collapse-tag"))},[(E(),me(s,{key:e.getValueKey(h),class:"in-tooltip",closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,hit:h.hitState,type:e.tagType,"disable-transitions":"",style:{margin:"2px"},onClose:_=>e.deleteTag(_,h)},{default:ue(()=>[k("span",{class:N(e.nsSelect.e("tags-text")),style:We({maxWidth:e.inputWidth-75+"px"})},xe(h.currentLabel),7)]),_:2},1032,["closable","size","hit","type","onClose"]))],2))),128))],2)]),_:1},8,["disabled","effect","teleported"])):(E(),M("span",{key:1,class:N(e.nsSelect.e("tags-text"))},"+ "+xe(e.selected.length-1),3))]),_:1},8,["size","type"])):fe("v-if",!0)],2)):fe("v-if",!0),fe("
"),e.collapseTags?fe("v-if",!0):(E(),me(tn,{key:1,onAfterLeave:e.resetInputHeight},{default:ue(()=>[k("span",{class:N([e.nsSelect.b("tags-wrapper"),{"has-prefix":e.prefixWidth&&e.selected.length}])},[(E(!0),M(qe,null,vt(e.selected,h=>(E(),me(s,{key:e.getValueKey(h),closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,hit:h.hitState,type:e.tagType,"disable-transitions":"",onClose:m=>e.deleteTag(m,h)},{default:ue(()=>[k("span",{class:N(e.nsSelect.e("tags-text")),style:We({maxWidth:e.inputWidth-75+"px"})},xe(h.currentLabel),7)]),_:2},1032,["closable","size","hit","type","onClose"]))),128))],2)]),_:1},8,["onAfterLeave"])),fe("
"),e.filterable?ot((E(),M("input",{key:2,ref:"input","onUpdate:modelValue":t[1]||(t[1]=h=>e.query=h),type:"text",class:N([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:We({marginLeft:e.prefixWidth&&!e.selected.length||e.tagInMultiLine?`${e.prefixWidth}px`:"",flexGrow:1,width:`${e.inputLength/(e.inputWidth-32)}%`,maxWidth:`${e.inputWidth-42}px`}),onFocus:t[2]||(t[2]=(...h)=>e.handleFocus&&e.handleFocus(...h)),onBlur:t[3]||(t[3]=(...h)=>e.handleBlur&&e.handleBlur(...h)),onKeyup:t[4]||(t[4]=(...h)=>e.managePlaceholder&&e.managePlaceholder(...h)),onKeydown:[t[5]||(t[5]=(...h)=>e.resetInputState&&e.resetInputState(...h)),t[6]||(t[6]=_t(Je(h=>e.navigateOptions("next"),["prevent"]),["down"])),t[7]||(t[7]=_t(Je(h=>e.navigateOptions("prev"),["prevent"]),["up"])),t[8]||(t[8]=_t((...h)=>e.handleKeydownEscape&&e.handleKeydownEscape(...h),["esc"])),t[9]||(t[9]=_t(Je((...h)=>e.selectOption&&e.selectOption(...h),["stop","prevent"]),["enter"])),t[10]||(t[10]=_t((...h)=>e.deletePrevTag&&e.deletePrevTag(...h),["delete"])),t[11]||(t[11]=_t(h=>e.visible=!1,["tab"]))],onCompositionstart:t[12]||(t[12]=(...h)=>e.handleComposition&&e.handleComposition(...h)),onCompositionupdate:t[13]||(t[13]=(...h)=>e.handleComposition&&e.handleComposition(...h)),onCompositionend:t[14]||(t[14]=(...h)=>e.handleComposition&&e.handleComposition(...h)),onInput:t[15]||(t[15]=(...h)=>e.debouncedQueryChange&&e.debouncedQueryChange(...h))},null,46,Nye)),[[el,e.query]]):fe("v-if",!0)],6)):fe("v-if",!0),X(u,{id:e.id,ref:"reference",modelValue:e.selectedLabel,"onUpdate:modelValue":t[16]||(t[16]=h=>e.selectedLabel=h),type:"text",placeholder:e.currentPlaceholder,name:e.name,autocomplete:e.autocomplete,size:e.selectSize,disabled:e.selectDisabled,readonly:e.readonly,"validate-event":!1,class:N([e.nsSelect.is("focus",e.visible)]),tabindex:e.multiple&&e.filterable?-1:void 0,onFocus:e.handleFocus,onBlur:e.handleBlur,onInput:e.debouncedOnInputChange,onPaste:e.debouncedOnInputChange,onCompositionstart:e.handleComposition,onCompositionupdate:e.handleComposition,onCompositionend:e.handleComposition,onKeydown:[t[17]||(t[17]=_t(Je(h=>e.navigateOptions("next"),["stop","prevent"]),["down"])),t[18]||(t[18]=_t(Je(h=>e.navigateOptions("prev"),["stop","prevent"]),["up"])),_t(Je(e.selectOption,["stop","prevent"]),["enter"]),_t(e.handleKeydownEscape,["esc"]),t[19]||(t[19]=_t(h=>e.visible=!1,["tab"]))]},No({suffix:ue(()=>[e.iconComponent&&!e.showClose?(E(),me(i,{key:0,class:N([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:ue(()=>[(E(),me(pt(e.iconComponent)))]),_:1},8,["class"])):fe("v-if",!0),e.showClose&&e.clearIcon?(E(),me(i,{key:1,class:N([e.nsSelect.e("caret"),e.nsSelect.e("icon")]),onClick:e.handleClearClick},{default:ue(()=>[(E(),me(pt(e.clearIcon)))]),_:1},8,["class","onClick"])):fe("v-if",!0)]),_:2},[e.$slots.prefix?{name:"prefix",fn:ue(()=>[k("div",Aye,[ke(e.$slots,"prefix")])])}:void 0]),1032,["id","modelValue","placeholder","name","autocomplete","size","disabled","readonly","class","tabindex","onFocus","onBlur","onInput","onPaste","onCompositionstart","onCompositionupdate","onCompositionend","onKeydown"])],32)]),content:ue(()=>[X(p,null,{default:ue(()=>[ot(X(f,{ref:"scrollbar",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:N([e.nsSelect.is("empty",!e.allowCreate&&Boolean(e.query)&&e.filteredOptionsCount===0)])},{default:ue(()=>[e.showNewOption?(E(),me(d,{key:0,value:e.query,created:!0},null,8,["value"])):fe("v-if",!0),ke(e.$slots,"default")]),_:3},8,["wrap-class","view-class","class"]),[[yt,e.options.size>0&&!e.loading]]),e.emptyText&&(!e.allowCreate||e.loading||e.allowCreate&&e.options.size===0)?(E(),M(qe,{key:0},[e.$slots.empty?ke(e.$slots,"empty",{key:0}):(E(),M("p",{key:1,class:N(e.nsSelect.be("dropdown","empty"))},xe(e.emptyText),3))],64)):fe("v-if",!0)]),_:3})]),_:3},8,["visible","placement","teleported","popper-class","effect","transition","persistent","onShow"])],34)),[[v,e.handleClose,e.popperPaneRef]])}var xye=Ie(Mye,[["render",Rye],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/select.vue"]]);const Iye=oe({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:{type:Boolean,default:!1}},setup(e){const t=Oe("select"),n=P(!0),r=tt(),o=P([]);ct(r5,Et({...an(e)}));const a=Fe(bu);rt(()=>{o.value=s(r.subTree)});const s=i=>{const u=[];return Array.isArray(i.children)&&i.children.forEach(d=>{var f;d.type&&d.type.name==="ElOption"&&d.component&&d.component.proxy?u.push(d.component.proxy):(f=d.children)!=null&&f.length&&u.push(...s(d))}),u},{groupQueryChange:l}=$t(a);return Ce(l,()=>{n.value=o.value.some(i=>i.visible===!0)},{flush:"post"}),{visible:n,ns:t}}});function Lye(e,t,n,r,o,a){return ot((E(),M("ul",{class:N(e.ns.be("group","wrap"))},[k("li",{class:N(e.ns.be("group","title"))},xe(e.label),3),k("li",null,[k("ul",{class:N(e.ns.b("group"))},[ke(e.$slots,"default")],2)])],2)),[[yt,e.visible]])}var o5=Ie(Iye,[["render",Lye],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/option-group.vue"]]);const ss=lt(xye,{Option:Nv,OptionGroup:o5}),Jc=Jt(Nv),Pye=Jt(o5),Av=()=>Fe(zy,{}),Dye=Le({pageSize:{type:Number,required:!0},pageSizes:{type:he(Array),default:()=>jt([10,20,30,40,50,100])},popperClass:{type:String},disabled:Boolean,size:{type:String,values:Ho}}),zye=oe({name:"ElPaginationSizes"}),Vye=oe({...zye,props:Dye,emits:["page-size-change"],setup(e,{emit:t}){const n=e,{t:r}=Ct(),o=Oe("pagination"),a=Av(),s=P(n.pageSize);Ce(()=>n.pageSizes,(u,d)=>{if(!ur(u,d)&&Array.isArray(u)){const f=u.includes(n.pageSize)?n.pageSize:n.pageSizes[0];t("page-size-change",f)}}),Ce(()=>n.pageSize,u=>{s.value=u});const l=$(()=>n.pageSizes);function i(u){var d;u!==s.value&&(s.value=u,(d=a.handleSizeChange)==null||d.call(a,Number(u)))}return(u,d)=>(E(),M("span",{class:N(c(o).e("sizes"))},[X(c(ss),{"model-value":s.value,disabled:u.disabled,"popper-class":u.popperClass,size:u.size,"validate-event":!1,onChange:i},{default:ue(()=>[(E(!0),M(qe,null,vt(c(l),f=>(E(),me(c(Jc),{key:f,value:f,label:f+c(r)("el.pagination.pagesize")},null,8,["value","label"]))),128))]),_:1},8,["model-value","disabled","popper-class","size"])],2))}});var Bye=Ie(Vye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/sizes.vue"]]);const Fye=Le({size:{type:String,values:Ho}}),Hye=["disabled"],Uye=oe({name:"ElPaginationJumper"}),Kye=oe({...Uye,props:Fye,setup(e){const{t}=Ct(),n=Oe("pagination"),{pageCount:r,disabled:o,currentPage:a,changeEvent:s}=Av(),l=P(),i=$(()=>{var f;return(f=l.value)!=null?f:a==null?void 0:a.value});function u(f){l.value=+f}function d(f){f=Math.trunc(+f),s==null||s(+f),l.value=void 0}return(f,p)=>(E(),M("span",{class:N(c(n).e("jump")),disabled:c(o)},[k("span",{class:N([c(n).e("goto")])},xe(c(t)("el.pagination.goto")),3),X(c(Nn),{size:f.size,class:N([c(n).e("editor"),c(n).is("in-pagination")]),min:1,max:c(r),disabled:c(o),"model-value":c(i),"validate-event":!1,type:"number","onUpdate:modelValue":u,onChange:d},null,8,["size","class","max","disabled","model-value"]),k("span",{class:N([c(n).e("classifier")])},xe(c(t)("el.pagination.pageClassifier")),3)],10,Hye))}});var Wye=Ie(Kye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/jumper.vue"]]);const jye=Le({total:{type:Number,default:1e3}}),qye=["disabled"],Gye=oe({name:"ElPaginationTotal"}),Yye=oe({...Gye,props:jye,setup(e){const{t}=Ct(),n=Oe("pagination"),{disabled:r}=Av();return(o,a)=>(E(),M("span",{class:N(c(n).e("total")),disabled:c(r)},xe(c(t)("el.pagination.total",{total:o.total})),11,qye))}});var Xye=Ie(Yye,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/total.vue"]]);const Zye=Le({currentPage:{type:Number,default:1},pageCount:{type:Number,required:!0},pagerCount:{type:Number,default:7},disabled:Boolean}),Jye=["onKeyup"],Qye=["aria-current","tabindex"],e8e=["tabindex"],t8e=["aria-current","tabindex"],n8e=["tabindex"],r8e=["aria-current","tabindex"],o8e=oe({name:"ElPaginationPager"}),a8e=oe({...o8e,props:Zye,emits:["change"],setup(e,{emit:t}){const n=e,r=Oe("pager"),o=Oe("icon"),a=P(!1),s=P(!1),l=P(!1),i=P(!1),u=P(!1),d=P(!1),f=$(()=>{const g=n.pagerCount,b=(g-1)/2,y=Number(n.currentPage),w=Number(n.pageCount);let C=!1,S=!1;w>g&&(y>g-b&&(C=!0),yn.disabled?-1:0);Qn(()=>{const g=(n.pagerCount-1)/2;a.value=!1,s.value=!1,n.pageCount>n.pagerCount&&(n.currentPage>n.pagerCount-g&&(a.value=!0),n.currentPagew&&(y=w)),y!==C&&t("change",y)}return(g,b)=>(E(),M("ul",{class:N(c(r).b()),onClick:_,onKeyup:_t(m,["enter"])},[g.pageCount>0?(E(),M("li",{key:0,class:N([[c(r).is("active",g.currentPage===1),c(r).is("disabled",g.disabled)],"number"]),"aria-current":g.currentPage===1,tabindex:c(p)}," 1 ",10,Qye)):fe("v-if",!0),a.value?(E(),M("li",{key:1,class:N(["more","btn-quickprev",c(o).b(),c(r).is("disabled",g.disabled)]),tabindex:c(p),onMouseenter:b[0]||(b[0]=y=>v(!0)),onMouseleave:b[1]||(b[1]=y=>l.value=!1),onFocus:b[2]||(b[2]=y=>h(!0)),onBlur:b[3]||(b[3]=y=>u.value=!1)},[(l.value||u.value)&&!g.disabled?(E(),me(c(os),{key:0})):(E(),me(c(S0),{key:1}))],42,e8e)):fe("v-if",!0),(E(!0),M(qe,null,vt(c(f),y=>(E(),M("li",{key:y,class:N([[c(r).is("active",g.currentPage===y),c(r).is("disabled",g.disabled)],"number"]),"aria-current":g.currentPage===y,tabindex:c(p)},xe(y),11,t8e))),128)),s.value?(E(),M("li",{key:2,class:N(["more","btn-quicknext",c(o).b(),c(r).is("disabled",g.disabled)]),tabindex:c(p),onMouseenter:b[4]||(b[4]=y=>v()),onMouseleave:b[5]||(b[5]=y=>i.value=!1),onFocus:b[6]||(b[6]=y=>h()),onBlur:b[7]||(b[7]=y=>d.value=!1)},[(i.value||d.value)&&!g.disabled?(E(),me(c(as),{key:0})):(E(),me(c(S0),{key:1}))],42,n8e)):fe("v-if",!0),g.pageCount>1?(E(),M("li",{key:3,class:N([[c(r).is("active",g.currentPage===g.pageCount),c(r).is("disabled",g.disabled)],"number"]),"aria-current":g.currentPage===g.pageCount,tabindex:c(p)},xe(g.pageCount),11,r8e)):fe("v-if",!0)],42,Jye))}});var s8e=Ie(a8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/pager.vue"]]);const xn=e=>typeof e!="number",l8e=Le({total:Number,pageSize:Number,defaultPageSize:Number,currentPage:Number,defaultCurrentPage:Number,pageCount:Number,pagerCount:{type:Number,validator:e=>Ze(e)&&Math.trunc(e)===e&&e>4&&e<22&&e%2===1,default:7},layout:{type:String,default:["prev","pager","next","jumper","->","total"].join(", ")},pageSizes:{type:he(Array),default:()=>jt([10,20,30,40,50,100])},popperClass:{type:String,default:""},prevText:{type:String,default:""},prevIcon:{type:zt,default:()=>Ro},nextText:{type:String,default:""},nextIcon:{type:zt,default:()=>An},small:Boolean,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean}),i8e={"update:current-page":e=>Ze(e),"update:page-size":e=>Ze(e),"size-change":e=>Ze(e),"current-change":e=>Ze(e),"prev-click":e=>Ze(e),"next-click":e=>Ze(e)},v_="ElPagination";var u8e=oe({name:v_,props:l8e,emits:i8e,setup(e,{emit:t,slots:n}){const{t:r}=Ct(),o=Oe("pagination"),a=tt().vnode.props||{},s="onUpdate:currentPage"in a||"onUpdate:current-page"in a||"onCurrentChange"in a,l="onUpdate:pageSize"in a||"onUpdate:page-size"in a||"onSizeChange"in a,i=$(()=>{if(xn(e.total)&&xn(e.pageCount)||!xn(e.currentPage)&&!s)return!1;if(e.layout.includes("sizes")){if(xn(e.pageCount)){if(!xn(e.total)&&!xn(e.pageSize)&&!l)return!1}else if(!l)return!1}return!0}),u=P(xn(e.defaultPageSize)?10:e.defaultPageSize),d=P(xn(e.defaultCurrentPage)?1:e.defaultCurrentPage),f=$({get(){return xn(e.pageSize)?u.value:e.pageSize},set(y){xn(e.pageSize)&&(u.value=y),l&&(t("update:page-size",y),t("size-change",y))}}),p=$(()=>{let y=0;return xn(e.pageCount)?xn(e.total)||(y=Math.max(1,Math.ceil(e.total/f.value))):y=e.pageCount,y}),v=$({get(){return xn(e.currentPage)?d.value:e.currentPage},set(y){let w=y;y<1?w=1:y>p.value&&(w=p.value),xn(e.currentPage)&&(d.value=w),s&&(t("update:current-page",w),t("current-change",w))}});Ce(p,y=>{v.value>y&&(v.value=y)});function h(y){v.value=y}function m(y){f.value=y;const w=p.value;v.value>w&&(v.value=w)}function _(){e.disabled||(v.value-=1,t("prev-click",v.value))}function g(){e.disabled||(v.value+=1,t("next-click",v.value))}function b(y,w){y&&(y.props||(y.props={}),y.props.class=[y.props.class,w].join(" "))}return ct(zy,{pageCount:p,disabled:$(()=>e.disabled),currentPage:v,changeEvent:h,handleSizeChange:m}),()=>{var y,w;if(!i.value)return r("el.pagination.deprecationWarning"),null;if(!e.layout||e.hideOnSinglePage&&p.value<=1)return null;const C=[],S=[],O=je("div",{class:o.e("rightwrapper")},S),T={prev:je(hye,{disabled:e.disabled,currentPage:v.value,prevText:e.prevText,prevIcon:e.prevIcon,onClick:_}),jumper:je(Wye,{size:e.small?"small":"default"}),pager:je(s8e,{currentPage:v.value,pageCount:p.value,pagerCount:e.pagerCount,onChange:h,disabled:e.disabled}),next:je(yye,{disabled:e.disabled,currentPage:v.value,pageCount:p.value,nextText:e.nextText,nextIcon:e.nextIcon,onClick:g}),sizes:je(Bye,{pageSize:f.value,pageSizes:e.pageSizes,popperClass:e.popperClass,disabled:e.disabled,size:e.small?"small":"default"}),slot:(w=(y=n==null?void 0:n.default)==null?void 0:y.call(n))!=null?w:null,total:je(Xye,{total:xn(e.total)?0:e.total})},A=e.layout.split(",").map(B=>B.trim());let R=!1;return A.forEach(B=>{if(B==="->"){R=!0;return}R?S.push(T[B]):C.push(T[B])}),b(C[0],o.is("first")),b(C[C.length-1],o.is("last")),R&&S.length>0&&(b(S[0],o.is("first")),b(S[S.length-1],o.is("last")),C.push(O)),je("div",{role:"pagination","aria-label":"pagination",class:[o.b(),o.is("background",e.background),{[o.m("small")]:e.small}]},C)}}});const c8e=lt(u8e),d8e=Le({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:O0,default:"primary"},cancelButtonType:{type:String,values:O0,default:"text"},icon:{type:zt,default:()=>gy},iconColor:{type:String,default:"#f90"},hideIcon:{type:Boolean,default:!1},hideAfter:{type:Number,default:200},onConfirm:{type:he(Function)},onCancel:{type:he(Function)},teleported:gn.teleported,persistent:gn.persistent,width:{type:[String,Number],default:150}}),f8e=oe({name:"ElPopconfirm"}),p8e=oe({...f8e,props:d8e,setup(e){const t=e,{t:n}=Ct(),r=Oe("popconfirm"),o=P(),a=()=>{var f,p;(p=(f=o.value)==null?void 0:f.onClose)==null||p.call(f)},s=$(()=>({width:on(t.width)})),l=f=>{var p;(p=t.onConfirm)==null||p.call(t,f),a()},i=f=>{var p;(p=t.onCancel)==null||p.call(t,f),a()},u=$(()=>t.confirmButtonText||n("el.popconfirm.confirmButtonText")),d=$(()=>t.cancelButtonText||n("el.popconfirm.cancelButtonText"));return(f,p)=>(E(),me(c(Kn),ft({ref_key:"tooltipRef",ref:o,trigger:"click",effect:"light"},f.$attrs,{"popper-class":`${c(r).namespace.value}-popover`,"popper-style":c(s),teleported:f.teleported,"fallback-placements":["bottom","top","right","left"],"hide-after":f.hideAfter,persistent:f.persistent}),{content:ue(()=>[k("div",{class:N(c(r).b())},[k("div",{class:N(c(r).e("main"))},[!f.hideIcon&&f.icon?(E(),me(c(Ke),{key:0,class:N(c(r).e("icon")),style:We({color:f.iconColor})},{default:ue(()=>[(E(),me(pt(f.icon)))]),_:1},8,["class","style"])):fe("v-if",!0),bt(" "+xe(f.title),1)],2),k("div",{class:N(c(r).e("action"))},[X(c(Tn),{size:"small",type:f.cancelButtonType==="text"?"":f.cancelButtonType,text:f.cancelButtonType==="text",onClick:i},{default:ue(()=>[bt(xe(c(d)),1)]),_:1},8,["type","text"]),X(c(Tn),{size:"small",type:f.confirmButtonType==="text"?"":f.confirmButtonType,text:f.confirmButtonType==="text",onClick:l},{default:ue(()=>[bt(xe(c(u)),1)]),_:1},8,["type","text"])],2)],2)]),default:ue(()=>[f.$slots.reference?ke(f.$slots,"reference",{key:0}):fe("v-if",!0)]),_:3},16,["popper-class","popper-style","teleported","hide-after","persistent"]))}});var h8e=Ie(p8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popconfirm/src/popconfirm.vue"]]);const v8e=lt(h8e),m8e=Le({trigger:Li.trigger,placement:gc.placement,disabled:Li.disabled,visible:gn.visible,transition:gn.transition,popperOptions:gc.popperOptions,tabindex:gc.tabindex,content:gn.content,popperStyle:gn.popperStyle,popperClass:gn.popperClass,enterable:{...gn.enterable,default:!0},effect:{...gn.effect,default:"light"},teleported:gn.teleported,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),g8e={"update:visible":e=>rn(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},_8e="onUpdate:visible",b8e=oe({name:"ElPopover"}),y8e=oe({...b8e,props:m8e,emits:g8e,setup(e,{expose:t,emit:n}){const r=e,o=$(()=>r[_8e]),a=Oe("popover"),s=P(),l=$(()=>{var _;return(_=c(s))==null?void 0:_.popperRef}),i=$(()=>[{width:on(r.width)},r.popperStyle]),u=$(()=>[a.b(),r.popperClass,{[a.m("plain")]:!!r.content}]),d=$(()=>r.transition===`${a.namespace.value}-fade-in-linear`),f=()=>{var _;(_=s.value)==null||_.hide()},p=()=>{n("before-enter")},v=()=>{n("before-leave")},h=()=>{n("after-enter")},m=()=>{n("update:visible",!1),n("after-leave")};return t({popperRef:l,hide:f}),(_,g)=>(E(),me(c(Kn),ft({ref_key:"tooltipRef",ref:s},_.$attrs,{trigger:_.trigger,placement:_.placement,disabled:_.disabled,visible:_.visible,transition:_.transition,"popper-options":_.popperOptions,tabindex:_.tabindex,content:_.content,offset:_.offset,"show-after":_.showAfter,"hide-after":_.hideAfter,"auto-close":_.autoClose,"show-arrow":_.showArrow,"aria-label":_.title,effect:_.effect,enterable:_.enterable,"popper-class":c(u),"popper-style":c(i),teleported:_.teleported,persistent:_.persistent,"gpu-acceleration":c(d),"onUpdate:visible":c(o),onBeforeShow:p,onBeforeHide:v,onShow:h,onHide:m}),{content:ue(()=>[_.title?(E(),M("div",{key:0,class:N(c(a).e("title")),role:"title"},xe(_.title),3)):fe("v-if",!0),ke(_.$slots,"default",{},()=>[bt(xe(_.content),1)])]),default:ue(()=>[_.$slots.reference?ke(_.$slots,"reference",{key:0}):fe("v-if",!0)]),_:3},16,["trigger","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","persistent","gpu-acceleration","onUpdate:visible"]))}});var w8e=Ie(y8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popover/src/popover.vue"]]);const m_=(e,t)=>{const n=t.arg||t.value,r=n==null?void 0:n.popperRef;r&&(r.triggerRef=e)};var E8e={mounted(e,t){m_(e,t)},updated(e,t){m_(e,t)}};const C8e="popover",a5=Fde(E8e,C8e),S8e=lt(w8e,{directive:a5}),k8e=Le({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:{type:Boolean,default:!1},duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:he(String),default:"round"},textInside:{type:Boolean,default:!1},width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:he([String,Array,Function]),default:""},format:{type:he(Function),default:e=>`${e}%`}}),$8e=["aria-valuenow"],T8e={viewBox:"0 0 100 100"},O8e=["d","stroke","stroke-width"],M8e=["d","stroke","opacity","stroke-linecap","stroke-width"],N8e={key:0},A8e=oe({name:"ElProgress"}),R8e=oe({...A8e,props:k8e,setup(e){const t=e,n={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},r=Oe("progress"),o=$(()=>({width:`${t.percentage}%`,animationDuration:`${t.duration}s`,backgroundColor:b(t.percentage)})),a=$(()=>(t.strokeWidth/t.width*100).toFixed(1)),s=$(()=>["circle","dashboard"].includes(t.type)?Number.parseInt(`${50-Number.parseFloat(a.value)/2}`,10):0),l=$(()=>{const y=s.value,w=t.type==="dashboard";return` + M 50 50 + m 0 ${w?"":"-"}${y} + a ${y} ${y} 0 1 1 0 ${w?"-":""}${y*2} + a ${y} ${y} 0 1 1 0 ${w?"":"-"}${y*2} + `}),i=$(()=>2*Math.PI*s.value),u=$(()=>t.type==="dashboard"?.75:1),d=$(()=>`${-1*i.value*(1-u.value)/2}px`),f=$(()=>({strokeDasharray:`${i.value*u.value}px, ${i.value}px`,strokeDashoffset:d.value})),p=$(()=>({strokeDasharray:`${i.value*u.value*(t.percentage/100)}px, ${i.value}px`,strokeDashoffset:d.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),v=$(()=>{let y;return t.color?y=b(t.percentage):y=n[t.status]||n.default,y}),h=$(()=>t.status==="warning"?hu:t.type==="line"?t.status==="success"?Bd:Bo:t.status==="success"?Sl:wr),m=$(()=>t.type==="line"?12+t.strokeWidth*.4:t.width*.111111+2),_=$(()=>t.format(t.percentage));function g(y){const w=100/y.length;return y.map((S,O)=>Qe(S)?{color:S,percentage:(O+1)*w}:S).sort((S,O)=>S.percentage-O.percentage)}const b=y=>{var w;const{color:C}=t;if(Xe(C))return C(y);if(Qe(C))return C;{const S=g(C);for(const O of S)if(O.percentage>y)return O.color;return(w=S[S.length-1])==null?void 0:w.color}};return(y,w)=>(E(),M("div",{class:N([c(r).b(),c(r).m(y.type),c(r).is(y.status),{[c(r).m("without-text")]:!y.showText,[c(r).m("text-inside")]:y.textInside}]),role:"progressbar","aria-valuenow":y.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[y.type==="line"?(E(),M("div",{key:0,class:N(c(r).b("bar"))},[k("div",{class:N(c(r).be("bar","outer")),style:We({height:`${y.strokeWidth}px`})},[k("div",{class:N([c(r).be("bar","inner"),{[c(r).bem("bar","inner","indeterminate")]:y.indeterminate}]),style:We(c(o))},[(y.showText||y.$slots.default)&&y.textInside?(E(),M("div",{key:0,class:N(c(r).be("bar","innerText"))},[ke(y.$slots,"default",{percentage:y.percentage},()=>[k("span",null,xe(c(_)),1)])],2)):fe("v-if",!0)],6)],6)],2)):(E(),M("div",{key:1,class:N(c(r).b("circle")),style:We({height:`${y.width}px`,width:`${y.width}px`})},[(E(),M("svg",T8e,[k("path",{class:N(c(r).be("circle","track")),d:c(l),stroke:`var(${c(r).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-width":c(a),fill:"none",style:We(c(f))},null,14,O8e),k("path",{class:N(c(r).be("circle","path")),d:c(l),stroke:c(v),fill:"none",opacity:y.percentage?1:0,"stroke-linecap":y.strokeLinecap,"stroke-width":c(a),style:We(c(p))},null,14,M8e)]))],6)),(y.showText||y.$slots.default)&&!y.textInside?(E(),M("div",{key:2,class:N(c(r).e("text")),style:We({fontSize:`${c(m)}px`})},[ke(y.$slots,"default",{percentage:y.percentage},()=>[y.status?(E(),me(c(Ke),{key:1},{default:ue(()=>[(E(),me(pt(c(h))))]),_:1})):(E(),M("span",N8e,xe(c(_)),1))])],6)):fe("v-if",!0)],10,$8e))}});var x8e=Ie(R8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/progress/src/progress.vue"]]);const s5=lt(x8e),I8e=Le({modelValue:{type:Number,default:0},id:{type:String,default:void 0},lowThreshold:{type:Number,default:2},highThreshold:{type:Number,default:4},max:{type:Number,default:5},colors:{type:he([Array,Object]),default:()=>jt(["","",""])},voidColor:{type:String,default:""},disabledVoidColor:{type:String,default:""},icons:{type:he([Array,Object]),default:()=>[Kl,Kl,Kl]},voidIcon:{type:zt,default:()=>Sy},disabledVoidIcon:{type:zt,default:()=>Kl},disabled:Boolean,allowHalf:Boolean,showText:Boolean,showScore:Boolean,textColor:{type:String,default:""},texts:{type:he(Array),default:()=>jt(["Extremely bad","Disappointed","Fair","Satisfied","Surprise"])},scoreTemplate:{type:String,default:"{value}"},size:On,label:{type:String,default:void 0},clearable:{type:Boolean,default:!1}}),L8e={[Bt]:e=>Ze(e),[ut]:e=>Ze(e)},P8e=["id","aria-label","aria-labelledby","aria-valuenow","aria-valuetext","aria-valuemax"],D8e=["onMousemove","onClick"],z8e=oe({name:"ElRate"}),V8e=oe({...z8e,props:I8e,emits:L8e,setup(e,{expose:t,emit:n}){const r=e;function o(I,x){const L=le=>dt(le),z=Object.keys(x).map(le=>+le).filter(le=>{const G=x[le];return(L(G)?G.excluded:!1)?Ile-G),q=x[z[0]];return L(q)&&q.value||q}const a=Fe(hs,void 0),s=Fe(oo,void 0),l=sn(),i=Oe("rate"),{inputId:u,isLabeledByFormItem:d}=$a(r,{formItemContext:s}),f=P(r.modelValue),p=P(-1),v=P(!0),h=$(()=>[i.b(),i.m(l.value)]),m=$(()=>r.disabled||(a==null?void 0:a.disabled)),_=$(()=>i.cssVarBlock({"void-color":r.voidColor,"disabled-void-color":r.disabledVoidColor,"fill-color":w.value})),g=$(()=>{let I="";return r.showScore?I=r.scoreTemplate.replace(/\{\s*value\s*\}/,m.value?`${r.modelValue}`:`${f.value}`):r.showText&&(I=r.texts[Math.ceil(f.value)-1]),I}),b=$(()=>r.modelValue*100-Math.floor(r.modelValue)*100),y=$(()=>Ve(r.colors)?{[r.lowThreshold]:r.colors[0],[r.highThreshold]:{value:r.colors[1],excluded:!0},[r.max]:r.colors[2]}:r.colors),w=$(()=>{const I=o(f.value,y.value);return dt(I)?"":I}),C=$(()=>{let I="";return m.value?I=`${b.value}%`:r.allowHalf&&(I="50%"),{color:w.value,width:I}}),S=$(()=>{let I=Ve(r.icons)?[...r.icons]:{...r.icons};return I=Jn(I),Ve(I)?{[r.lowThreshold]:I[0],[r.highThreshold]:{value:I[1],excluded:!0},[r.max]:I[2]}:I}),O=$(()=>o(r.modelValue,S.value)),T=$(()=>m.value?Qe(r.disabledVoidIcon)?r.disabledVoidIcon:Jn(r.disabledVoidIcon):Qe(r.voidIcon)?r.voidIcon:Jn(r.voidIcon)),A=$(()=>o(f.value,S.value));function R(I){const x=m.value&&b.value>0&&I-1r.modelValue,L=r.allowHalf&&v.value&&I-.5<=f.value&&I>f.value;return x||L}function B(I){r.clearable&&I===r.modelValue&&(I=0),n(ut,I),r.modelValue!==I&&n("change",I)}function V(I){m.value||(r.allowHalf&&v.value?B(f.value):B(I))}function H(I){if(m.value)return;let x=f.value;const L=I.code;return L===Ge.up||L===Ge.right?(r.allowHalf?x+=.5:x+=1,I.stopPropagation(),I.preventDefault()):(L===Ge.left||L===Ge.down)&&(r.allowHalf?x-=.5:x-=1,I.stopPropagation(),I.preventDefault()),x=x<0?0:x,x=x>r.max?r.max:x,n(ut,x),n("change",x),x}function U(I,x){if(!m.value){if(r.allowHalf&&x){let L=x.target;Ir(L,i.e("item"))&&(L=L.querySelector(`.${i.e("icon")}`)),(L.clientWidth===0||Ir(L,i.e("decimal")))&&(L=L.parentNode),v.value=x.offsetX*2<=L.clientWidth,f.value=v.value?I-.5:I}else f.value=I;p.value=I}}function K(){m.value||(r.allowHalf&&(v.value=r.modelValue!==Math.floor(r.modelValue)),f.value=r.modelValue,p.value=-1)}return Ce(()=>r.modelValue,I=>{f.value=I,v.value=r.modelValue!==Math.floor(r.modelValue)}),r.modelValue||n(ut,0),t({setCurrentValue:U,resetCurrentValue:K}),(I,x)=>{var L;return E(),M("div",{id:c(u),class:N([c(h),c(i).is("disabled",c(m))]),role:"slider","aria-label":c(d)?void 0:I.label||"rating","aria-labelledby":c(d)?(L=c(s))==null?void 0:L.labelId:void 0,"aria-valuenow":f.value,"aria-valuetext":c(g)||void 0,"aria-valuemin":"0","aria-valuemax":I.max,tabindex:"0",style:We(c(_)),onKeydown:H},[(E(!0),M(qe,null,vt(I.max,(z,q)=>(E(),M("span",{key:q,class:N(c(i).e("item")),onMousemove:le=>U(z,le),onMouseleave:K,onClick:le=>V(z)},[X(c(Ke),{class:N([c(i).e("icon"),{hover:p.value===z},c(i).is("active",z<=f.value)])},{default:ue(()=>[R(z)?fe("v-if",!0):(E(),M(qe,{key:0},[ot((E(),me(pt(c(A)),null,null,512)),[[yt,z<=f.value]]),ot((E(),me(pt(c(T)),null,null,512)),[[yt,!(z<=f.value)]])],64)),R(z)?(E(),me(c(Ke),{key:1,style:We(c(C)),class:N([c(i).e("icon"),c(i).e("decimal")])},{default:ue(()=>[(E(),me(pt(c(O))))]),_:1},8,["style","class"])):fe("v-if",!0)]),_:2},1032,["class"])],42,D8e))),128)),I.showText||I.showScore?(E(),M("span",{key:0,class:N(c(i).e("text"))},xe(c(g)),3)):fe("v-if",!0)],46,P8e)}}});var B8e=Ie(V8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/rate/src/rate.vue"]]);const F8e=lt(B8e),As={success:"icon-success",warning:"icon-warning",error:"icon-error",info:"icon-info"},g_={[As.success]:uy,[As.warning]:hu,[As.error]:Fd,[As.info]:Hd},H8e=Le({title:{type:String,default:""},subTitle:{type:String,default:""},icon:{type:String,values:["success","warning","info","error"],default:"info"}}),U8e=oe({name:"ElResult"}),K8e=oe({...U8e,props:H8e,setup(e){const t=e,n=Oe("result"),r=$(()=>{const o=t.icon,a=o&&As[o]?As[o]:"icon-info",s=g_[a]||g_["icon-info"];return{class:a,component:s}});return(o,a)=>(E(),M("div",{class:N(c(n).b())},[k("div",{class:N(c(n).e("icon"))},[ke(o.$slots,"icon",{},()=>[c(r).component?(E(),me(pt(c(r).component),{key:0,class:N(c(r).class)},null,8,["class"])):fe("v-if",!0)])],2),o.title||o.$slots.title?(E(),M("div",{key:0,class:N(c(n).e("title"))},[ke(o.$slots,"title",{},()=>[k("p",null,xe(o.title),1)])],2)):fe("v-if",!0),o.subTitle||o.$slots["sub-title"]?(E(),M("div",{key:1,class:N(c(n).e("subtitle"))},[ke(o.$slots,"sub-title",{},()=>[k("p",null,xe(o.subTitle),1)])],2)):fe("v-if",!0),o.$slots.extra?(E(),M("div",{key:2,class:N(c(n).e("extra"))},[ke(o.$slots,"extra")],2)):fe("v-if",!0)],2))}});var W8e=Ie(K8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/result/src/result.vue"]]);const j8e=lt(W8e),q8e=["start","center","end","space-around","space-between","space-evenly"],G8e=["top","middle","bottom"],Y8e=Le({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:q8e,default:"start"},align:{type:String,values:G8e,default:"top"}}),X8e=oe({name:"ElRow"}),Z8e=oe({...X8e,props:Y8e,setup(e){const t=e,n=Oe("row"),r=$(()=>t.gutter);ct(By,{gutter:r});const o=$(()=>{const s={};return t.gutter&&(s.marginRight=s.marginLeft=`-${t.gutter/2}px`),s}),a=$(()=>[n.b(),n.is(`justify-${t.justify}`,t.justify!=="start"),n.is(`align-${t.align}`,t.align!=="top")]);return(s,l)=>(E(),me(pt(s.tag),{class:N(c(a)),style:We(c(o))},{default:ue(()=>[ke(s.$slots,"default")]),_:3},8,["class","style"]))}});var J8e=Ie(Z8e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/row/src/row.vue"]]);const Q8e=lt(J8e);var __=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function ewe(e,t){return!!(e===t||__(e)&&__(t))}function twe(e,t){if(e.length!==t.length)return!1;for(var n=0;n{const t=tt().proxy.$props;return $(()=>{const n=(r,o,a)=>({});return t.perfMode?Pd(n):nwe(n)})},u2=50,Qc="itemRendered",ed="scroll",Rs="forward",td="backward",vr="auto",af="smart",Vi="start",Zr="center",Bi="end",dl="horizontal",Rv="vertical",rwe="ltr",qs="rtl",Fi="negative",xv="positive-ascending",Iv="positive-descending",owe={[dl]:"left",[Rv]:"top"},awe=20,swe={[dl]:"deltaX",[Rv]:"deltaY"},lwe=({atEndEdge:e,atStartEdge:t,layout:n},r)=>{let o,a=0;const s=i=>i<0&&t.value||i>0&&e.value;return{hasReachedEdge:s,onWheel:i=>{jd(o);const u=i[swe[n.value]];s(a)&&s(a+u)||(a+=u,Ay()||i.preventDefault(),o=Ni(()=>{r(a),a=0}))}}},c2=Br({type:he([Number,Function]),required:!0}),d2=Br({type:Number}),f2=Br({type:Number,default:2}),iwe=Br({type:String,values:["ltr","rtl"],default:"ltr"}),p2=Br({type:Number,default:0}),nd=Br({type:Number,required:!0}),i5=Br({type:String,values:["horizontal","vertical"],default:Rv}),u5=Le({className:{type:String,default:""},containerElement:{type:he([String,Object]),default:"div"},data:{type:he(Array),default:()=>jt([])},direction:iwe,height:{type:[String,Number],required:!0},innerElement:{type:[String,Object],default:"div"},style:{type:he([Object,String,Array])},useIsScrolling:{type:Boolean,default:!1},width:{type:[Number,String],required:!1},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:{type:Boolean,default:!1}}),c5=Le({cache:f2,estimatedItemSize:d2,layout:i5,initScrollOffset:p2,total:nd,itemSize:c2,...u5}),h2={type:Number,default:6},d5={type:Number,default:0},f5={type:Number,default:2},Ja=Le({columnCache:f2,columnWidth:c2,estimatedColumnWidth:d2,estimatedRowHeight:d2,initScrollLeft:p2,initScrollTop:p2,itemKey:{type:he(Function),default:({columnIndex:e,rowIndex:t})=>`${t}:${e}`},rowCache:f2,rowHeight:c2,totalColumn:nd,totalRow:nd,hScrollbarSize:h2,vScrollbarSize:h2,scrollbarStartGap:d5,scrollbarEndGap:f5,...u5}),p5=Le({alwaysOn:Boolean,class:String,layout:i5,total:nd,ratio:{type:Number,required:!0},clientSize:{type:Number,required:!0},scrollFrom:{type:Number,required:!0},scrollbarSize:h2,startGap:d5,endGap:f5,visible:Boolean}),Wa=(e,t)=>ee===rwe||e===qs||e===dl,b_=e=>e===qs;let _s=null;function rd(e=!1){if(_s===null||e){const t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";const r=document.createElement("div"),o=r.style;return o.width="100px",o.height="100px",t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?_s=Iv:(t.scrollLeft=1,t.scrollLeft===0?_s=Fi:_s=xv),document.body.removeChild(t),_s}return _s}function uwe({move:e,size:t,bar:n},r){const o={},a=`translate${n.axis}(${e}px)`;return o[n.size]=t,o.transform=a,o.msTransform=a,o.webkitTransform=a,r==="horizontal"?o.height="100%":o.width="100%",o}const v2=oe({name:"ElVirtualScrollBar",props:p5,emits:["scroll","start-move","stop-move"],setup(e,{emit:t}){const n=$(()=>e.startGap+e.endGap),r=Oe("virtual-scrollbar"),o=Oe("scrollbar"),a=P(),s=P();let l=null,i=null;const u=Et({isDragging:!1,traveled:0}),d=$(()=>T8[e.layout]),f=$(()=>e.clientSize-c(n)),p=$(()=>({position:"absolute",width:`${dl===e.layout?f.value:e.scrollbarSize}px`,height:`${dl===e.layout?e.scrollbarSize:f.value}px`,[owe[e.layout]]:"2px",right:"2px",bottom:"2px",borderRadius:"4px"})),v=$(()=>{const S=e.ratio,O=e.clientSize;if(S>=100)return Number.POSITIVE_INFINITY;if(S>=50)return S*O/100;const T=O/3;return Math.floor(Math.min(Math.max(S*O,awe),T))}),h=$(()=>{if(!Number.isFinite(v.value))return{display:"none"};const S=`${v.value}px`;return uwe({bar:d.value,size:S,move:u.traveled},e.layout)}),m=$(()=>Math.floor(e.clientSize-v.value-c(n))),_=()=>{window.addEventListener("mousemove",w),window.addEventListener("mouseup",y);const S=c(s);S&&(i=document.onselectstart,document.onselectstart=()=>!1,S.addEventListener("touchmove",w),S.addEventListener("touchend",y))},g=()=>{window.removeEventListener("mousemove",w),window.removeEventListener("mouseup",y),document.onselectstart=i,i=null;const S=c(s);S&&(S.removeEventListener("touchmove",w),S.removeEventListener("touchend",y))},b=S=>{S.stopImmediatePropagation(),!(S.ctrlKey||[1,2].includes(S.button))&&(u.isDragging=!0,u[d.value.axis]=S.currentTarget[d.value.offset]-(S[d.value.client]-S.currentTarget.getBoundingClientRect()[d.value.direction]),t("start-move"),_())},y=()=>{u.isDragging=!1,u[d.value.axis]=0,t("stop-move"),g()},w=S=>{const{isDragging:O}=u;if(!O||!s.value||!a.value)return;const T=u[d.value.axis];if(!T)return;jd(l);const A=(a.value.getBoundingClientRect()[d.value.direction]-S[d.value.client])*-1,R=s.value[d.value.offset]-T,B=A-R;l=Ni(()=>{u.traveled=Math.max(e.startGap,Math.min(B,m.value)),t("scroll",B,m.value)})},C=S=>{const O=Math.abs(S.target.getBoundingClientRect()[d.value.direction]-S[d.value.client]),T=s.value[d.value.offset]/2,A=O-T;u.traveled=Math.max(0,Math.min(A,m.value)),t("scroll",A,m.value)};return Ce(()=>e.scrollFrom,S=>{u.isDragging||(u.traveled=Math.ceil(S*m.value))}),Ut(()=>{g()}),()=>je("div",{role:"presentation",ref:a,class:[r.b(),e.class,(e.alwaysOn||u.isDragging)&&"always-on"],style:p.value,onMousedown:Je(C,["stop","prevent"]),onTouchstartPrevent:b},je("div",{ref:s,class:o.e("thumb"),style:h.value,onMousedown:b},[]))}}),h5=({name:e,getOffset:t,getItemSize:n,getItemOffset:r,getEstimatedTotalSize:o,getStartIndexForOffset:a,getStopIndexForStartIndex:s,initCache:l,clearCache:i,validateProps:u})=>oe({name:e??"ElVirtualList",props:c5,emits:[Qc,ed],setup(d,{emit:f,expose:p}){u(d);const v=tt(),h=Oe("vl"),m=P(l(d,v)),_=l5(),g=P(),b=P(),y=P(),w=P({isScrolling:!1,scrollDir:"forward",scrollOffset:Ze(d.initScrollOffset)?d.initScrollOffset:0,updateRequested:!1,isScrollbarDragging:!1,scrollbarAlwaysOn:d.scrollbarAlwaysOn}),C=$(()=>{const{total:ae,cache:be}=d,{isScrolling:te,scrollDir:de,scrollOffset:Z}=c(w);if(ae===0)return[0,0,0,0];const Y=a(d,Z,c(m)),ce=s(d,Y,Z,c(m)),ve=!te||de===td?Math.max(1,be):1,Ne=!te||de===Rs?Math.max(1,be):1;return[Math.max(0,Y-ve),Math.max(0,Math.min(ae-1,ce+Ne)),Y,ce]}),S=$(()=>o(d,c(m))),O=$(()=>Hi(d.layout)),T=$(()=>[{position:"relative",[`overflow-${O.value?"x":"y"}`]:"scroll",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:d.direction,height:Ze(d.height)?`${d.height}px`:d.height,width:Ze(d.width)?`${d.width}px`:d.width},d.style]),A=$(()=>{const ae=c(S),be=c(O);return{height:be?"100%":`${ae}px`,pointerEvents:c(w).isScrolling?"none":void 0,width:be?`${ae}px`:"100%"}}),R=$(()=>O.value?d.width:d.height),{onWheel:B}=lwe({atStartEdge:$(()=>w.value.scrollOffset<=0),atEndEdge:$(()=>w.value.scrollOffset>=S.value),layout:$(()=>d.layout)},ae=>{var be,te;(te=(be=y.value).onMouseUp)==null||te.call(be),x(Math.min(w.value.scrollOffset+ae,S.value-R.value))}),V=()=>{const{total:ae}=d;if(ae>0){const[Z,Y,ce,ve]=c(C);f(Qc,Z,Y,ce,ve)}const{scrollDir:be,scrollOffset:te,updateRequested:de}=c(w);f(ed,be,te,de)},H=ae=>{const{clientHeight:be,scrollHeight:te,scrollTop:de}=ae.currentTarget,Z=c(w);if(Z.scrollOffset===de)return;const Y=Math.max(0,Math.min(de,te-be));w.value={...Z,isScrolling:!0,scrollDir:Wa(Z.scrollOffset,Y),scrollOffset:Y,updateRequested:!1},He(q)},U=ae=>{const{clientWidth:be,scrollLeft:te,scrollWidth:de}=ae.currentTarget,Z=c(w);if(Z.scrollOffset===te)return;const{direction:Y}=d;let ce=te;if(Y===qs)switch(rd()){case Fi:{ce=-te;break}case Iv:{ce=de-be-te;break}}ce=Math.max(0,Math.min(ce,de-be)),w.value={...Z,isScrolling:!0,scrollDir:Wa(Z.scrollOffset,ce),scrollOffset:ce,updateRequested:!1},He(q)},K=ae=>{c(O)?U(ae):H(ae),V()},I=(ae,be)=>{const te=(S.value-R.value)/be*ae;x(Math.min(S.value-R.value,te))},x=ae=>{ae=Math.max(ae,0),ae!==c(w).scrollOffset&&(w.value={...c(w),scrollOffset:ae,scrollDir:Wa(c(w).scrollOffset,ae),updateRequested:!0},He(q))},L=(ae,be=vr)=>{const{scrollOffset:te}=c(w);ae=Math.max(0,Math.min(ae,d.total-1)),x(t(d,ae,be,te,c(m)))},z=ae=>{const{direction:be,itemSize:te,layout:de}=d,Z=_.value(i&&te,i&&de,i&&be);let Y;if(mt(Z,String(ae)))Y=Z[ae];else{const ce=r(d,ae,c(m)),ve=n(d,ae,c(m)),Ne=c(O),j=be===qs,D=Ne?ce:0;Z[ae]=Y={position:"absolute",left:j?void 0:`${D}px`,right:j?`${D}px`:void 0,top:Ne?0:`${ce}px`,height:Ne?"100%":`${ve}px`,width:Ne?`${ve}px`:"100%"}}return Y},q=()=>{w.value.isScrolling=!1,He(()=>{_.value(-1,null,null)})},le=()=>{const ae=g.value;ae&&(ae.scrollTop=0)};rt(()=>{if(!gt)return;const{initScrollOffset:ae}=d,be=c(g);Ze(ae)&&be&&(c(O)?be.scrollLeft=ae:be.scrollTop=ae),V()}),lo(()=>{const{direction:ae,layout:be}=d,{scrollOffset:te,updateRequested:de}=c(w),Z=c(g);if(de&&Z)if(be===dl)if(ae===qs)switch(rd()){case Fi:{Z.scrollLeft=-te;break}case xv:{Z.scrollLeft=te;break}default:{const{clientWidth:Y,scrollWidth:ce}=Z;Z.scrollLeft=ce-Y-te;break}}else Z.scrollLeft=te;else Z.scrollTop=te});const G={ns:h,clientSize:R,estimatedTotalSize:S,windowStyle:T,windowRef:g,innerRef:b,innerStyle:A,itemsToRender:C,scrollbarRef:y,states:w,getItemStyle:z,onScroll:K,onScrollbarScroll:I,onWheel:B,scrollTo:x,scrollToItem:L,resetScrollTop:le};return p({windowRef:g,innerRef:b,getItemStyleCache:_,scrollTo:x,scrollToItem:L,resetScrollTop:le,states:w}),G},render(d){var f;const{$slots:p,className:v,clientSize:h,containerElement:m,data:_,getItemStyle:g,innerElement:b,itemsToRender:y,innerStyle:w,layout:C,total:S,onScroll:O,onScrollbarScroll:T,onWheel:A,states:R,useIsScrolling:B,windowStyle:V,ns:H}=d,[U,K]=y,I=pt(m),x=pt(b),L=[];if(S>0)for(let G=U;G<=K;G++)L.push((f=p.default)==null?void 0:f.call(p,{data:_,key:G,index:G,isScrolling:B?R.isScrolling:void 0,style:g(G)}));const z=[je(x,{style:w,ref:"innerRef"},Qe(x)?L:{default:()=>L})],q=je(v2,{ref:"scrollbarRef",clientSize:h,layout:C,onScroll:T,ratio:h*100/this.estimatedTotalSize,scrollFrom:R.scrollOffset/(this.estimatedTotalSize-h),total:S}),le=je(I,{class:[H.e("window"),v],style:V,onScroll:O,onWheel:A,ref:"windowRef",key:0},Qe(I)?[z]:{default:()=>[z]});return je("div",{key:0,class:[H.e("wrapper"),R.scrollbarAlwaysOn?"always-on":""]},[le,q])}}),v5=h5({name:"ElFixedSizeList",getItemOffset:({itemSize:e},t)=>t*e,getItemSize:({itemSize:e})=>e,getEstimatedTotalSize:({total:e,itemSize:t})=>t*e,getOffset:({height:e,total:t,itemSize:n,layout:r,width:o},a,s,l)=>{const i=Hi(r)?o:e,u=Math.max(0,t*n-i),d=Math.min(u,a*n),f=Math.max(0,(a+1)*n-i);switch(s===af&&(l>=f-i&&l<=d+i?s=vr:s=Zr),s){case Vi:return d;case Bi:return f;case Zr:{const p=Math.round(f+(d-f)/2);return pu+Math.floor(i/2)?u:p}case vr:default:return l>=f&&l<=d?l:lMath.max(0,Math.min(e-1,Math.floor(n/t))),getStopIndexForStartIndex:({height:e,total:t,itemSize:n,layout:r,width:o},a,s)=>{const l=a*n,i=Hi(r)?o:e,u=Math.ceil((i+s-l)/n);return Math.max(0,Math.min(t-1,a+u-1))},initCache(){},clearCache:!0,validateProps(){}}),xs=(e,t,n)=>{const{itemSize:r}=e,{items:o,lastVisitedIndex:a}=n;if(t>a){let s=0;if(a>=0){const l=o[a];s=l.offset+l.size}for(let l=a+1;l<=t;l++){const i=r(l);o[l]={offset:s,size:i},s+=i}n.lastVisitedIndex=t}return o[t]},cwe=(e,t,n)=>{const{items:r,lastVisitedIndex:o}=t;return(o>0?r[o].offset:0)>=n?m5(e,t,0,o,n):dwe(e,t,Math.max(0,o),n)},m5=(e,t,n,r,o)=>{for(;n<=r;){const a=n+Math.floor((r-n)/2),s=xs(e,a,t).offset;if(s===o)return a;so&&(r=a-1)}return Math.max(0,n-1)},dwe=(e,t,n,r)=>{const{total:o}=e;let a=1;for(;n{let o=0;if(r>=e&&(r=e-1),r>=0){const l=t[r];o=l.offset+l.size}const s=(e-r-1)*n;return o+s},fwe=h5({name:"ElDynamicSizeList",getItemOffset:(e,t,n)=>xs(e,t,n).offset,getItemSize:(e,t,{items:n})=>n[t].size,getEstimatedTotalSize:y_,getOffset:(e,t,n,r,o)=>{const{height:a,layout:s,width:l}=e,i=Hi(s)?l:a,u=xs(e,t,o),d=y_(e,o),f=Math.max(0,Math.min(d-i,u.offset)),p=Math.max(0,u.offset-i+u.size);switch(n===af&&(r>=p-i&&r<=f+i?n=vr:n=Zr),n){case Vi:return f;case Bi:return p;case Zr:return Math.round(p+(f-p)/2);case vr:default:return r>=p&&r<=f?r:rcwe(e,n,t),getStopIndexForStartIndex:(e,t,n,r)=>{const{height:o,total:a,layout:s,width:l}=e,i=Hi(s)?l:o,u=xs(e,t,r),d=n+i;let f=u.offset+u.size,p=t;for(;p{var a,s;n.lastVisitedIndex=Math.min(n.lastVisitedIndex,r-1),(a=t.exposed)==null||a.getItemStyleCache(-1),o&&((s=t.proxy)==null||s.$forceUpdate())},n},clearCache:!1,validateProps:({itemSize:e})=>{}}),pwe=({atXEndEdge:e,atXStartEdge:t,atYEndEdge:n,atYStartEdge:r},o)=>{let a=null,s=0,l=0;const i=(d,f)=>{const p=d<0&&t.value||d>0&&e.value,v=f<0&&r.value||f>0&&n.value;return p&&v};return{hasReachedEdge:i,onWheel:d=>{jd(a);let f=d.deltaX,p=d.deltaY;Math.abs(f)>Math.abs(p)?p=0:f=0,d.shiftKey&&p!==0&&(f=p,p=0),!(i(s,l)&&i(s+f,l+p))&&(s+=f,l+=p,Ay()||d.preventDefault(),a=Ni(()=>{o(s,l),s=0,l=0}))}}},g5=({name:e,clearCache:t,getColumnPosition:n,getColumnStartIndexForOffset:r,getColumnStopIndexForStartIndex:o,getEstimatedTotalHeight:a,getEstimatedTotalWidth:s,getColumnOffset:l,getRowOffset:i,getRowPosition:u,getRowStartIndexForOffset:d,getRowStopIndexForStartIndex:f,initCache:p,injectToInstance:v,validateProps:h})=>oe({name:e??"ElVirtualList",props:Ja,emits:[Qc,ed],setup(m,{emit:_,expose:g,slots:b}){const y=Oe("vl");h(m);const w=tt(),C=P(p(m,w));v==null||v(w,C);const S=P(),O=P(),T=P(),A=P(null),R=P({isScrolling:!1,scrollLeft:Ze(m.initScrollLeft)?m.initScrollLeft:0,scrollTop:Ze(m.initScrollTop)?m.initScrollTop:0,updateRequested:!1,xAxisScrollDir:Rs,yAxisScrollDir:Rs}),B=l5(),V=$(()=>Number.parseInt(`${m.height}`,10)),H=$(()=>Number.parseInt(`${m.width}`,10)),U=$(()=>{const{totalColumn:ne,totalRow:Se,columnCache:ye}=m,{isScrolling:Te,xAxisScrollDir:we,scrollLeft:J}=c(R);if(ne===0||Se===0)return[0,0,0,0];const _e=r(m,J,c(C)),De=o(m,_e,J,c(C)),$e=!Te||we===td?Math.max(1,ye):1,Pe=!Te||we===Rs?Math.max(1,ye):1;return[Math.max(0,_e-$e),Math.max(0,Math.min(ne-1,De+Pe)),_e,De]}),K=$(()=>{const{totalColumn:ne,totalRow:Se,rowCache:ye}=m,{isScrolling:Te,yAxisScrollDir:we,scrollTop:J}=c(R);if(ne===0||Se===0)return[0,0,0,0];const _e=d(m,J,c(C)),De=f(m,_e,J,c(C)),$e=!Te||we===td?Math.max(1,ye):1,Pe=!Te||we===Rs?Math.max(1,ye):1;return[Math.max(0,_e-$e),Math.max(0,Math.min(Se-1,De+Pe)),_e,De]}),I=$(()=>a(m,c(C))),x=$(()=>s(m,c(C))),L=$(()=>{var ne;return[{position:"relative",overflow:"hidden",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:m.direction,height:Ze(m.height)?`${m.height}px`:m.height,width:Ze(m.width)?`${m.width}px`:m.width},(ne=m.style)!=null?ne:{}]}),z=$(()=>{const ne=`${c(x)}px`;return{height:`${c(I)}px`,pointerEvents:c(R).isScrolling?"none":void 0,width:ne}}),q=()=>{const{totalColumn:ne,totalRow:Se}=m;if(ne>0&&Se>0){const[De,$e,Pe,Ue]=c(U),[ze,se,pe,Me]=c(K);_(Qc,{columnCacheStart:De,columnCacheEnd:$e,rowCacheStart:ze,rowCacheEnd:se,columnVisibleStart:Pe,columnVisibleEnd:Ue,rowVisibleStart:pe,rowVisibleEnd:Me})}const{scrollLeft:ye,scrollTop:Te,updateRequested:we,xAxisScrollDir:J,yAxisScrollDir:_e}=c(R);_(ed,{xAxisScrollDir:J,scrollLeft:ye,yAxisScrollDir:_e,scrollTop:Te,updateRequested:we})},le=ne=>{const{clientHeight:Se,clientWidth:ye,scrollHeight:Te,scrollLeft:we,scrollTop:J,scrollWidth:_e}=ne.currentTarget,De=c(R);if(De.scrollTop===J&&De.scrollLeft===we)return;let $e=we;if(b_(m.direction))switch(rd()){case Fi:$e=-we;break;case Iv:$e=_e-ye-we;break}R.value={...De,isScrolling:!0,scrollLeft:$e,scrollTop:Math.max(0,Math.min(J,Te-Se)),updateRequested:!0,xAxisScrollDir:Wa(De.scrollLeft,$e),yAxisScrollDir:Wa(De.scrollTop,J)},He(()=>Y()),ce(),q()},G=(ne,Se)=>{const ye=c(V),Te=(I.value-ye)/Se*ne;te({scrollTop:Math.min(I.value-ye,Te)})},ae=(ne,Se)=>{const ye=c(H),Te=(x.value-ye)/Se*ne;te({scrollLeft:Math.min(x.value-ye,Te)})},{onWheel:be}=pwe({atXStartEdge:$(()=>R.value.scrollLeft<=0),atXEndEdge:$(()=>R.value.scrollLeft>=x.value),atYStartEdge:$(()=>R.value.scrollTop<=0),atYEndEdge:$(()=>R.value.scrollTop>=I.value)},(ne,Se)=>{var ye,Te,we,J;(Te=(ye=O.value)==null?void 0:ye.onMouseUp)==null||Te.call(ye),(J=(we=O.value)==null?void 0:we.onMouseUp)==null||J.call(we);const _e=c(H),De=c(V);te({scrollLeft:Math.min(R.value.scrollLeft+ne,x.value-_e),scrollTop:Math.min(R.value.scrollTop+Se,I.value-De)})}),te=({scrollLeft:ne=R.value.scrollLeft,scrollTop:Se=R.value.scrollTop})=>{ne=Math.max(ne,0),Se=Math.max(Se,0);const ye=c(R);Se===ye.scrollTop&&ne===ye.scrollLeft||(R.value={...ye,xAxisScrollDir:Wa(ye.scrollLeft,ne),yAxisScrollDir:Wa(ye.scrollTop,Se),scrollLeft:ne,scrollTop:Se,updateRequested:!0},He(()=>Y()),ce(),q())},de=(ne=0,Se=0,ye=vr)=>{const Te=c(R);Se=Math.max(0,Math.min(Se,m.totalColumn-1)),ne=Math.max(0,Math.min(ne,m.totalRow-1));const we=oy(y.namespace.value),J=c(C),_e=a(m,J),De=s(m,J);te({scrollLeft:l(m,Se,ye,Te.scrollLeft,J,De>m.width?we:0),scrollTop:i(m,ne,ye,Te.scrollTop,J,_e>m.height?we:0)})},Z=(ne,Se)=>{const{columnWidth:ye,direction:Te,rowHeight:we}=m,J=B.value(t&&ye,t&&we,t&&Te),_e=`${ne},${Se}`;if(mt(J,_e))return J[_e];{const[,De]=n(m,Se,c(C)),$e=c(C),Pe=b_(Te),[Ue,ze]=u(m,ne,$e),[se]=n(m,Se,$e);return J[_e]={position:"absolute",left:Pe?void 0:`${De}px`,right:Pe?`${De}px`:void 0,top:`${ze}px`,height:`${Ue}px`,width:`${se}px`},J[_e]}},Y=()=>{R.value.isScrolling=!1,He(()=>{B.value(-1,null,null)})};rt(()=>{if(!gt)return;const{initScrollLeft:ne,initScrollTop:Se}=m,ye=c(S);ye&&(Ze(ne)&&(ye.scrollLeft=ne),Ze(Se)&&(ye.scrollTop=Se)),q()});const ce=()=>{const{direction:ne}=m,{scrollLeft:Se,scrollTop:ye,updateRequested:Te}=c(R),we=c(S);if(Te&&we){if(ne===qs)switch(rd()){case Fi:{we.scrollLeft=-Se;break}case xv:{we.scrollLeft=Se;break}default:{const{clientWidth:J,scrollWidth:_e}=we;we.scrollLeft=_e-J-Se;break}}else we.scrollLeft=Math.max(0,Se);we.scrollTop=Math.max(0,ye)}},{resetAfterColumnIndex:ve,resetAfterRowIndex:Ne,resetAfter:j}=w.proxy;g({windowRef:S,innerRef:A,getItemStyleCache:B,scrollTo:te,scrollToItem:de,states:R,resetAfterColumnIndex:ve,resetAfterRowIndex:Ne,resetAfter:j});const D=()=>{const{scrollbarAlwaysOn:ne,scrollbarStartGap:Se,scrollbarEndGap:ye,totalColumn:Te,totalRow:we}=m,J=c(H),_e=c(V),De=c(x),$e=c(I),{scrollLeft:Pe,scrollTop:Ue}=c(R),ze=je(v2,{ref:O,alwaysOn:ne,startGap:Se,endGap:ye,class:y.e("horizontal"),clientSize:J,layout:"horizontal",onScroll:ae,ratio:J*100/De,scrollFrom:Pe/(De-J),total:we,visible:!0}),se=je(v2,{ref:T,alwaysOn:ne,startGap:Se,endGap:ye,class:y.e("vertical"),clientSize:_e,layout:"vertical",onScroll:G,ratio:_e*100/$e,scrollFrom:Ue/($e-_e),total:Te,visible:!0});return{horizontalScrollbar:ze,verticalScrollbar:se}},F=()=>{var ne;const[Se,ye]=c(U),[Te,we]=c(K),{data:J,totalColumn:_e,totalRow:De,useIsScrolling:$e,itemKey:Pe}=m,Ue=[];if(De>0&&_e>0)for(let ze=Te;ze<=we;ze++)for(let se=Se;se<=ye;se++)Ue.push((ne=b.default)==null?void 0:ne.call(b,{columnIndex:se,data:J,key:Pe({columnIndex:se,data:J,rowIndex:ze}),isScrolling:$e?c(R).isScrolling:void 0,style:Z(ze,se),rowIndex:ze}));return Ue},Q=()=>{const ne=pt(m.innerElement),Se=F();return[je(ne,{style:c(z),ref:A},Qe(ne)?Se:{default:()=>Se})]};return()=>{const ne=pt(m.containerElement),{horizontalScrollbar:Se,verticalScrollbar:ye}=D(),Te=Q();return je("div",{key:0,class:y.e("wrapper")},[je(ne,{class:m.className,style:c(L),onScroll:le,onWheel:be,ref:S},Qe(ne)?Te:{default:()=>Te}),Se,ye])}}}),hwe=g5({name:"ElFixedSizeGrid",getColumnPosition:({columnWidth:e},t)=>[e,t*e],getRowPosition:({rowHeight:e},t)=>[e,t*e],getEstimatedTotalHeight:({totalRow:e,rowHeight:t})=>t*e,getEstimatedTotalWidth:({totalColumn:e,columnWidth:t})=>t*e,getColumnOffset:({totalColumn:e,columnWidth:t,width:n},r,o,a,s,l)=>{n=Number(n);const i=Math.max(0,e*t-n),u=Math.min(i,r*t),d=Math.max(0,r*t-n+l+t);switch(o==="smart"&&(a>=d-n&&a<=u+n?o=vr:o=Zr),o){case Vi:return u;case Bi:return d;case Zr:{const f=Math.round(d+(u-d)/2);return fi+Math.floor(n/2)?i:f}case vr:default:return a>=d&&a<=u?a:d>u||a{t=Number(t);const i=Math.max(0,n*e-t),u=Math.min(i,r*e),d=Math.max(0,r*e-t+l+e);switch(o===af&&(a>=d-t&&a<=u+t?o=vr:o=Zr),o){case Vi:return u;case Bi:return d;case Zr:{const f=Math.round(d+(u-d)/2);return fi+Math.floor(t/2)?i:f}case vr:default:return a>=d&&a<=u?a:d>u||aMath.max(0,Math.min(t-1,Math.floor(n/e))),getColumnStopIndexForStartIndex:({columnWidth:e,totalColumn:t,width:n},r,o)=>{const a=r*e,s=Math.ceil((n+o-a)/e);return Math.max(0,Math.min(t-1,r+s-1))},getRowStartIndexForOffset:({rowHeight:e,totalRow:t},n)=>Math.max(0,Math.min(t-1,Math.floor(n/e))),getRowStopIndexForStartIndex:({rowHeight:e,totalRow:t,height:n},r,o)=>{const a=r*e,s=Math.ceil((n+o-a)/e);return Math.max(0,Math.min(t-1,r+s-1))},initCache:()=>{},clearCache:!0,validateProps:({columnWidth:e,rowHeight:t})=>{}}),{max:od,min:_5,floor:b5}=Math,vwe={column:"columnWidth",row:"rowHeight"},m2={column:"lastVisitedColumnIndex",row:"lastVisitedRowIndex"},bo=(e,t,n,r)=>{const[o,a,s]=[n[r],e[vwe[r]],n[m2[r]]];if(t>s){let l=0;if(s>=0){const i=o[s];l=i.offset+i.size}for(let i=s+1;i<=t;i++){const u=a(i);o[i]={offset:l,size:u},l+=u}n[m2[r]]=t}return o[t]},y5=(e,t,n,r,o,a)=>{for(;n<=r;){const s=n+b5((r-n)/2),l=bo(e,s,t,a).offset;if(l===o)return s;l{const a=o==="column"?e.totalColumn:e.totalRow;let s=1;for(;n{const[o,a]=[t[r],t[m2[r]]];return(a>0?o[a].offset:0)>=n?y5(e,t,0,a,n,r):mwe(e,t,od(0,a),n,r)},w5=({totalRow:e},{estimatedRowHeight:t,lastVisitedRowIndex:n,row:r})=>{let o=0;if(n>=e&&(n=e-1),n>=0){const l=r[n];o=l.offset+l.size}const s=(e-n-1)*t;return o+s},E5=({totalColumn:e},{column:t,estimatedColumnWidth:n,lastVisitedColumnIndex:r})=>{let o=0;if(r>e&&(r=e-1),r>=0){const l=t[r];o=l.offset+l.size}const s=(e-r-1)*n;return o+s},gwe={column:E5,row:w5},E_=(e,t,n,r,o,a,s)=>{const[l,i]=[a==="row"?e.height:e.width,gwe[a]],u=bo(e,t,o,a),d=i(e,o),f=od(0,_5(d-l,u.offset)),p=od(0,u.offset-l+s+u.size);switch(n===af&&(r>=p-l&&r<=f+l?n=vr:n=Zr),n){case Vi:return f;case Bi:return p;case Zr:return Math.round(p+(f-p)/2);case vr:default:return r>=p&&r<=f?r:p>f||r{const r=bo(e,t,n,"column");return[r.size,r.offset]},getRowPosition:(e,t,n)=>{const r=bo(e,t,n,"row");return[r.size,r.offset]},getColumnOffset:(e,t,n,r,o,a)=>E_(e,t,n,r,o,"column",a),getRowOffset:(e,t,n,r,o,a)=>E_(e,t,n,r,o,"row",a),getColumnStartIndexForOffset:(e,t,n)=>w_(e,n,t,"column"),getColumnStopIndexForStartIndex:(e,t,n,r)=>{const o=bo(e,t,r,"column"),a=n+e.width;let s=o.offset+o.size,l=t;for(;lw_(e,n,t,"row"),getRowStopIndexForStartIndex:(e,t,n,r)=>{const{totalRow:o,height:a}=e,s=bo(e,t,r,"row"),l=n+a;let i=s.size+s.offset,u=t;for(;u{const n=({columnIndex:a,rowIndex:s},l)=>{var i,u;l=_n(l)?!0:l,Ze(a)&&(t.value.lastVisitedColumnIndex=Math.min(t.value.lastVisitedColumnIndex,a-1)),Ze(s)&&(t.value.lastVisitedRowIndex=Math.min(t.value.lastVisitedRowIndex,s-1)),(i=e.exposed)==null||i.getItemStyleCache.value(-1,null,null),l&&((u=e.proxy)==null||u.$forceUpdate())},r=(a,s)=>{n({columnIndex:a},s)},o=(a,s)=>{n({rowIndex:a},s)};Object.assign(e.proxy,{resetAfterColumnIndex:r,resetAfterRowIndex:o,resetAfter:n})},initCache:({estimatedColumnWidth:e=u2,estimatedRowHeight:t=u2})=>({column:{},estimatedColumnWidth:e,estimatedRowHeight:t,lastVisitedColumnIndex:-1,lastVisitedRowIndex:-1,row:{}}),clearCache:!1,validateProps:({columnWidth:e,rowHeight:t})=>{}}),bwe=oe({props:{item:{type:Object,required:!0},style:Object,height:Number},setup(){return{ns:Oe("select")}}});function ywe(e,t,n,r,o,a){return e.item.isTitle?(E(),M("div",{key:0,class:N(e.ns.be("group","title")),style:We([e.style,{lineHeight:`${e.height}px`}])},xe(e.item.label),7)):(E(),M("div",{key:1,class:N(e.ns.be("group","split")),style:We(e.style)},[k("span",{class:N(e.ns.be("group","split-dash")),style:We({top:`${e.height/2}px`})},null,6)],6))}var wwe=Ie(bwe,[["render",ywe],["__file","/home/runner/work/element-plus/element-plus/packages/components/select-v2/src/group-item.vue"]]);function Ewe(e,{emit:t}){return{hoverItem:()=>{e.disabled||t("hover",e.index)},selectOptionClick:()=>{e.disabled||t("select",e.item,e.index)}}}const Cwe={allowCreate:Boolean,autocomplete:{type:String,default:"none"},automaticDropdown:Boolean,clearable:Boolean,clearIcon:{type:[String,Object],default:Bo},effect:{type:String,default:"light"},collapseTags:Boolean,collapseTagsTooltip:{type:Boolean,default:!1},defaultFirstOption:Boolean,disabled:Boolean,estimatedOptionHeight:{type:Number,default:void 0},filterable:Boolean,filterMethod:Function,height:{type:Number,default:170},itemHeight:{type:Number,default:34},id:String,loading:Boolean,loadingText:String,label:String,modelValue:[Array,String,Number,Boolean,Object],multiple:Boolean,multipleLimit:{type:Number,default:0},name:String,noDataText:String,noMatchText:String,remoteMethod:Function,reserveKeyword:{type:Boolean,default:!0},options:{type:Array,required:!0},placeholder:{type:String},teleported:gn.teleported,persistent:{type:Boolean,default:!0},popperClass:{type:String,default:""},popperOptions:{type:Object,default:()=>({})},remote:Boolean,size:{type:String,validator:Kd},valueKey:{type:String,default:"value"},scrollbarAlwaysOn:{type:Boolean,default:!1},validateEvent:{type:Boolean,default:!0},placement:{type:he(String),values:vs,default:"bottom-start"}},Swe={data:Array,disabled:Boolean,hovering:Boolean,item:Object,index:Number,style:Object,selected:Boolean,created:Boolean},kwe=oe({props:Swe,emits:["select","hover"],setup(e,{emit:t}){const n=Oe("select"),{hoverItem:r,selectOptionClick:o}=Ewe(e,{emit:t});return{ns:n,hoverItem:r,selectOptionClick:o}}}),$we=["aria-selected"];function Twe(e,t,n,r,o,a){return E(),M("li",{"aria-selected":e.selected,style:We(e.style),class:N([e.ns.be("dropdown","option-item"),e.ns.is("selected",e.selected),e.ns.is("disabled",e.disabled),e.ns.is("created",e.created),{hover:e.hovering}]),onMouseenter:t[0]||(t[0]=(...s)=>e.hoverItem&&e.hoverItem(...s)),onClick:t[1]||(t[1]=Je((...s)=>e.selectOptionClick&&e.selectOptionClick(...s),["stop"]))},[ke(e.$slots,"default",{item:e.item,index:e.index,disabled:e.disabled},()=>[k("span",null,xe(e.item.label),1)])],46,$we)}var Owe=Ie(kwe,[["render",Twe],["__file","/home/runner/work/element-plus/element-plus/packages/components/select-v2/src/option-item.vue"]]);const C5="ElSelectV2Injection";var Mwe=oe({name:"ElSelectDropdown",props:{data:{type:Array,required:!0},hoveringIndex:Number,width:Number},setup(e,{slots:t,expose:n}){const r=Fe(C5),o=Oe("select"),a=P([]),s=P(),l=$(()=>e.data.length);Ce(()=>l.value,()=>{var T,A;(A=(T=r.popper.value).updatePopper)==null||A.call(T)});const i=$(()=>_n(r.props.estimatedOptionHeight)),u=$(()=>i.value?{itemSize:r.props.itemHeight}:{estimatedSize:r.props.estimatedOptionHeight,itemSize:T=>a.value[T]}),d=(T=[],A)=>{const{props:{valueKey:R}}=r;return dt(A)?T&&T.some(B=>Wt(B,R)===Wt(A,R)):T.includes(A)},f=(T,A)=>{if(dt(A)){const{valueKey:R}=r.props;return Wt(T,R)===Wt(A,R)}else return T===A},p=(T,A)=>{const{valueKey:R}=r.props;return r.props.multiple?d(T,Wt(A,R)):f(T,Wt(A,R))},v=(T,A)=>{const{disabled:R,multiple:B,multipleLimit:V}=r.props;return R||!A&&(B?V>0&&T.length>=V:!1)},h=T=>e.hoveringIndex===T;n({listRef:s,isSized:i,isItemDisabled:v,isItemHovering:h,isItemSelected:p,scrollToItem:T=>{const A=s.value;A&&A.scrollToItem(T)},resetScrollTop:()=>{const T=s.value;T&&T.resetScrollTop()}});const g=T=>{const{index:A,data:R,style:B}=T,V=c(i),{itemSize:H,estimatedSize:U}=c(u),{modelValue:K}=r.props,{onSelect:I,onHover:x}=r,L=R[A];if(L.type==="Group")return X(wwe,{item:L,style:B,height:V?H:U},null);const z=p(K,L),q=v(K,z),le=h(A);return X(Owe,ft(T,{selected:z,disabled:L.disabled||q,created:!!L.created,hovering:le,item:L,onSelect:I,onHover:x}),{default:G=>{var ae;return((ae=t.default)==null?void 0:ae.call(t,G))||X("span",null,[L.label])}})},{onKeyboardNavigate:b,onKeyboardSelect:y}=r,w=()=>{b("forward")},C=()=>{b("backward")},S=()=>{r.expanded=!1},O=T=>{const{code:A}=T,{tab:R,esc:B,down:V,up:H,enter:U}=Ge;switch(A!==R&&(T.preventDefault(),T.stopPropagation()),A){case R:case B:{S();break}case V:{w();break}case H:{C();break}case U:{y();break}}};return()=>{var T;const{data:A,width:R}=e,{height:B,multiple:V,scrollbarAlwaysOn:H}=r.props;if(A.length===0)return X("div",{class:o.b("dropdown"),style:{width:`${R}px`}},[(T=t.empty)==null?void 0:T.call(t)]);const U=c(i)?v5:fwe;return X("div",{class:[o.b("dropdown"),o.is("multiple",V)]},[X(U,ft({ref:s},c(u),{className:o.be("dropdown","list"),scrollbarAlwaysOn:H,data:A,height:B,width:R,total:A.length,onKeydown:O}),{default:K=>X(g,K,null)})])}}});function Nwe(e,t){const n=P(0),r=P(null),o=$(()=>e.allowCreate&&e.filterable);function a(d){const f=p=>p.value===d;return e.options&&e.options.some(f)||t.createdOptions.some(f)}function s(d){o.value&&(e.multiple&&d.created?n.value++:r.value=d)}function l(d){if(o.value)if(d&&d.length>0&&!a(d)){const f={value:d,label:d,created:!0,disabled:!1};t.createdOptions.length>=n.value?t.createdOptions[n.value]=f:t.createdOptions.push(f)}else if(e.multiple)t.createdOptions.length=n.value;else{const f=r.value;t.createdOptions.length=0,f&&f.created&&t.createdOptions.push(f)}}function i(d){if(!o.value||!d||!d.created||d.created&&e.reserveKeyword&&t.inputValue===d.label)return;const f=t.createdOptions.findIndex(p=>p.value===d.value);~f&&(t.createdOptions.splice(f,1),n.value--)}function u(){o.value&&(t.createdOptions.length=0,n.value=0)}return{createNewOption:l,removeNewOption:i,selectNewOption:s,clearAllNewOption:u}}const Awe=e=>{const t=[];return e.forEach(n=>{Ve(n.options)?(t.push({label:n.label,isTitle:!0,type:"Group"}),n.options.forEach(r=>{t.push(r)}),t.push({type:"Group"})):t.push(n)}),t};function Rwe(e){const t=P(!1);return{handleCompositionStart:()=>{t.value=!0},handleCompositionUpdate:a=>{const s=a.target.value,l=s[s.length-1]||"";t.value=!Wd(l)},handleCompositionEnd:a=>{t.value&&(t.value=!1,Xe(e)&&e(a))}}}const C_="",S_=11,xwe={larget:51,default:42,small:33},Iwe=(e,t)=>{const{t:n}=Ct(),r=Oe("select-v2"),o=Oe("input"),{form:a,formItem:s}=Wn(),l=Et({inputValue:C_,displayInputValue:C_,calculatedWidth:0,cachedPlaceholder:"",cachedOptions:[],createdOptions:[],createdLabel:"",createdSelected:!1,currentPlaceholder:"",hoveringIndex:-1,comboBoxHovering:!1,isOnComposition:!1,isSilentBlur:!1,isComposing:!1,inputLength:20,selectWidth:200,initialInputHeight:0,previousQuery:null,previousValue:void 0,query:"",selectedLabel:"",softFocus:!1,tagInMultiLine:!1}),i=P(-1),u=P(-1),d=P(null),f=P(null),p=P(null),v=P(null),h=P(null),m=P(null),_=P(null),g=P(!1),b=$(()=>e.disabled||(a==null?void 0:a.disabled)),y=$(()=>{const Re=V.value.length*34;return Re>e.height?e.height:Re}),w=$(()=>!yn(e.modelValue)),C=$(()=>{const Re=e.multiple?Array.isArray(e.modelValue)&&e.modelValue.length>0:w.value;return e.clearable&&!b.value&&l.comboBoxHovering&&Re}),S=$(()=>e.remote&&e.filterable?"":pu),O=$(()=>S.value&&r.is("reverse",g.value)),T=$(()=>(s==null?void 0:s.validateState)||""),A=$(()=>My[T.value]),R=$(()=>e.remote?300:0),B=$(()=>{const Re=V.value;return e.loading?e.loadingText||n("el.select.loading"):e.remote&&l.inputValue===""&&Re.length===0?!1:e.filterable&&l.inputValue&&Re.length>0?e.noMatchText||n("el.select.noMatch"):Re.length===0?e.noDataText||n("el.select.noData"):null}),V=$(()=>{const Re=Ye=>{const ht=l.inputValue,Tt=new RegExp(ny(ht),"i");return ht?Tt.test(Ye.label||""):!0};return e.loading?[]:Awe(e.options.concat(l.createdOptions).map(Ye=>{if(Ve(Ye.options)){const ht=Ye.options.filter(Re);if(ht.length>0)return{...Ye,options:ht}}else if(e.remote||Re(Ye))return Ye;return null}).filter(Ye=>Ye!==null))}),H=$(()=>V.value.every(Re=>Re.disabled)),U=sn(),K=$(()=>U.value==="small"?"small":"default"),I=$(()=>{const Re=m.value,Ye=K.value||"default",ht=Re?Number.parseInt(getComputedStyle(Re).paddingLeft):0,Tt=Re?Number.parseInt(getComputedStyle(Re).paddingRight):0;return l.selectWidth-Tt-ht-xwe[Ye]}),x=()=>{var Re;u.value=((Re=h.value)==null?void 0:Re.offsetWidth)||200},L=$(()=>({width:`${l.calculatedWidth===0?S_:Math.ceil(l.calculatedWidth)+S_}px`})),z=$(()=>Ve(e.modelValue)?e.modelValue.length===0&&!l.displayInputValue:e.filterable?l.displayInputValue.length===0:!0),q=$(()=>{const Re=e.placeholder||n("el.select.placeholder");return e.multiple||yn(e.modelValue)?Re:l.selectedLabel}),le=$(()=>{var Re,Ye;return(Ye=(Re=v.value)==null?void 0:Re.popperRef)==null?void 0:Ye.contentRef}),G=$(()=>{if(e.multiple){const Re=e.modelValue.length;if(e.modelValue.length>0)return V.value.findIndex(Ye=>Ye.value===e.modelValue[Re-1])}else if(e.modelValue)return V.value.findIndex(Re=>Re.value===e.modelValue);return-1}),ae=$({get(){return g.value&&B.value!==!1},set(Re){g.value=Re}}),{createNewOption:be,removeNewOption:te,selectNewOption:de,clearAllNewOption:Z}=Nwe(e,l),{handleCompositionStart:Y,handleCompositionUpdate:ce,handleCompositionEnd:ve}=Rwe(Re=>Lt(Re)),Ne=()=>{var Re,Ye,ht;(Ye=(Re=f.value).focus)==null||Ye.call(Re),(ht=v.value)==null||ht.updatePopper()},j=()=>{if(!e.automaticDropdown&&!b.value)return l.isComposing&&(l.softFocus=!0),He(()=>{var Re,Ye;g.value=!g.value,(Ye=(Re=f.value)==null?void 0:Re.focus)==null||Ye.call(Re)})},D=()=>(e.filterable&&l.inputValue!==l.selectedLabel&&(l.query=l.selectedLabel),Q(l.inputValue),He(()=>{be(l.inputValue)})),F=Un(D,R.value),Q=Re=>{l.previousQuery!==Re&&(l.previousQuery=Re,e.filterable&&Xe(e.filterMethod)?e.filterMethod(Re):e.filterable&&e.remote&&Xe(e.remoteMethod)&&e.remoteMethod(Re))},ge=Re=>{ur(e.modelValue,Re)||t(Bt,Re)},ne=Re=>{t(ut,Re),ge(Re),l.previousValue=Re==null?void 0:Re.toString()},Se=(Re=[],Ye)=>{if(!dt(Ye))return Re.indexOf(Ye);const ht=e.valueKey;let Tt=-1;return Re.some((Hr,Ur)=>Wt(Hr,ht)===Wt(Ye,ht)?(Tt=Ur,!0):!1),Tt},ye=Re=>dt(Re)?Wt(Re,e.valueKey):Re,Te=Re=>dt(Re)?Re.label:Re,we=()=>{if(!(e.collapseTags&&!e.filterable))return He(()=>{var Re,Ye;if(!f.value)return;const ht=m.value;h.value.height=ht.offsetHeight,g.value&&B.value!==!1&&((Ye=(Re=v.value)==null?void 0:Re.updatePopper)==null||Ye.call(Re))})},J=()=>{var Re,Ye;if(_e(),x(),(Ye=(Re=v.value)==null?void 0:Re.updatePopper)==null||Ye.call(Re),e.multiple)return we()},_e=()=>{const Re=m.value;Re&&(l.selectWidth=Re.getBoundingClientRect().width)},De=(Re,Ye,ht=!0)=>{var Tt,Hr;if(e.multiple){let Ur=e.modelValue.slice();const ku=Se(Ur,ye(Re));ku>-1?(Ur=[...Ur.slice(0,ku),...Ur.slice(ku+1)],l.cachedOptions.splice(ku,1),te(Re)):(e.multipleLimit<=0||Ur.length{const{valueKey:ht}=e,Tt=e.modelValue.indexOf(Wt(Ye,ht));if(Tt>-1&&!b.value){const Hr=[...e.modelValue.slice(0,Tt),...e.modelValue.slice(Tt+1)];return l.cachedOptions.splice(Tt,1),ne(Hr),t("remove-tag",Wt(Ye,ht)),l.softFocus=!0,te(Ye),He(Ne)}Re.stopPropagation()},Pe=Re=>{const Ye=l.isComposing;l.isComposing=!0,l.softFocus?l.softFocus=!1:Ye||t("focus",Re)},Ue=Re=>(l.softFocus=!1,He(()=>{var Ye,ht;(ht=(Ye=f.value)==null?void 0:Ye.blur)==null||ht.call(Ye),_.value&&(l.calculatedWidth=_.value.getBoundingClientRect().width),l.isSilentBlur?l.isSilentBlur=!1:l.isComposing&&t("blur",Re),l.isComposing=!1})),ze=()=>{l.displayInputValue.length>0?Me(""):g.value=!1},se=Re=>{if(l.displayInputValue.length===0){Re.preventDefault();const Ye=e.modelValue.slice();Ye.pop(),te(l.cachedOptions.pop()),ne(Ye)}},pe=()=>{let Re;return Ve(e.modelValue)?Re=[]:Re=void 0,l.softFocus=!0,e.multiple?l.cachedOptions=[]:l.selectedLabel="",g.value=!1,ne(Re),t("clear"),Z(),He(Ne)},Me=Re=>{l.displayInputValue=Re,l.inputValue=Re},W=(Re,Ye=void 0)=>{const ht=V.value;if(!["forward","backward"].includes(Re)||b.value||ht.length<=0||H.value)return;if(!g.value)return j();Ye===void 0&&(Ye=l.hoveringIndex);let Tt=-1;Re==="forward"?(Tt=Ye+1,Tt>=ht.length&&(Tt=0)):Re==="backward"&&(Tt=Ye-1,(Tt<0||Tt>=ht.length)&&(Tt=ht.length-1));const Hr=ht[Tt];if(Hr.disabled||Hr.type==="Group")return W(Re,Tt);Ee(Tt),Rt(Tt)},ee=()=>{if(g.value)~l.hoveringIndex&&V.value[l.hoveringIndex]&&De(V.value[l.hoveringIndex],l.hoveringIndex,!1);else return j()},Ee=Re=>{l.hoveringIndex=Re},Ae=()=>{l.hoveringIndex=-1},at=()=>{var Re;const Ye=f.value;Ye&&((Re=Ye.focus)==null||Re.call(Ye))},Lt=Re=>{const Ye=Re.target.value;if(Me(Ye),l.displayInputValue.length>0&&!g.value&&(g.value=!0),l.calculatedWidth=_.value.getBoundingClientRect().width,e.multiple&&we(),e.remote)F();else return D()},Ft=()=>(g.value=!1,Ue()),mn=()=>(l.inputValue=l.displayInputValue,He(()=>{~G.value&&(Ee(G.value),Rt(l.hoveringIndex))})),Rt=Re=>{p.value.scrollToItem(Re)},St=()=>{if(Ae(),e.multiple)if(e.modelValue.length>0){let Re=!1;l.cachedOptions.length=0,l.previousValue=e.modelValue.toString(),e.modelValue.forEach(Ye=>{const ht=V.value.findIndex(Tt=>ye(Tt)===Ye);~ht&&(l.cachedOptions.push(V.value[ht]),Re||Ee(ht),Re=!0)})}else l.cachedOptions=[],l.previousValue=void 0;else if(w.value){l.previousValue=e.modelValue;const Re=V.value,Ye=Re.findIndex(ht=>ye(ht)===ye(e.modelValue));~Ye?(l.selectedLabel=Re[Ye].label,Ee(Ye)):l.selectedLabel=`${e.modelValue}`}else l.selectedLabel="",l.previousValue=void 0;Z(),x()};return Ce(g,Re=>{var Ye,ht;t("visible-change",Re),Re?(ht=(Ye=v.value).update)==null||ht.call(Ye):(l.displayInputValue="",l.previousQuery=null,be(""))}),Ce(()=>e.modelValue,(Re,Ye)=>{var ht;(!Re||Re.toString()!==l.previousValue)&&St(),!ur(Re,Ye)&&e.validateEvent&&((ht=s==null?void 0:s.validate)==null||ht.call(s,"change").catch(Tt=>void 0))},{deep:!0}),Ce(()=>e.options,()=>{const Re=f.value;(!Re||Re&&document.activeElement!==Re)&&St()},{deep:!0}),Ce(V,()=>He(p.value.resetScrollTop)),rt(()=>{St()}),Rn(h,J),{collapseTagSize:K,currentPlaceholder:q,expanded:g,emptyText:B,popupHeight:y,debounce:R,filteredOptions:V,iconComponent:S,iconReverse:O,inputWrapperStyle:L,popperSize:u,dropdownMenuVisible:ae,hasModelValue:w,shouldShowPlaceholder:z,selectDisabled:b,selectSize:U,showClearBtn:C,states:l,tagMaxWidth:I,nsSelectV2:r,nsInput:o,calculatorRef:_,controlRef:d,inputRef:f,menuRef:p,popper:v,selectRef:h,selectionRef:m,popperRef:le,validateState:T,validateIcon:A,debouncedOnInputChange:F,deleteTag:$e,getLabel:Te,getValueKey:ye,handleBlur:Ue,handleClear:pe,handleClickOutside:Ft,handleDel:se,handleEsc:ze,handleFocus:Pe,handleMenuEnter:mn,handleResize:J,toggleMenu:j,scrollTo:Rt,onInput:Lt,onKeyboardNavigate:W,onKeyboardSelect:ee,onSelect:De,onHover:Ee,onUpdateInputValue:Me,handleCompositionStart:Y,handleCompositionEnd:ve,handleCompositionUpdate:ce}},Lwe=oe({name:"ElSelectV2",components:{ElSelectMenu:Mwe,ElTag:Pi,ElTooltip:Kn,ElIcon:Ke},directives:{ClickOutside:Sa,ModelText:el},props:Cwe,emits:[ut,Bt,"remove-tag","clear","visible-change","focus","blur"],setup(e,{emit:t}){const n=$(()=>{const{modelValue:o,multiple:a}=e,s=a?[]:void 0;return Ve(o)?a?o:s:a?s:o}),r=Iwe(Et({...an(e),modelValue:n}),t);return ct(C5,{props:Et({...an(e),height:r.popupHeight,modelValue:n}),popper:r.popper,onSelect:r.onSelect,onHover:r.onHover,onKeyboardNavigate:r.onKeyboardNavigate,onKeyboardSelect:r.onKeyboardSelect}),{...r,modelValue:n}}}),Pwe={key:0},Dwe=["id","autocomplete","aria-expanded","aria-labelledby","disabled","readonly","name","unselectable"],zwe=["textContent"],Vwe=["id","aria-labelledby","aria-expanded","autocomplete","disabled","name","readonly","unselectable"],Bwe=["textContent"];function Fwe(e,t,n,r,o,a){const s=nt("el-tag"),l=nt("el-tooltip"),i=nt("el-icon"),u=nt("el-select-menu"),d=wi("model-text"),f=wi("click-outside");return ot((E(),M("div",{ref:"selectRef",class:N([e.nsSelectV2.b(),e.nsSelectV2.m(e.selectSize)]),onClick:t[25]||(t[25]=Je((...p)=>e.toggleMenu&&e.toggleMenu(...p),["stop"])),onMouseenter:t[26]||(t[26]=p=>e.states.comboBoxHovering=!0),onMouseleave:t[27]||(t[27]=p=>e.states.comboBoxHovering=!1)},[X(l,{ref:"popper",visible:e.dropdownMenuVisible,teleported:e.teleported,"popper-class":[e.nsSelectV2.e("popper"),e.popperClass],"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"popper-options":e.popperOptions,"fallback-placements":["bottom-start","top-start","right","left"],effect:e.effect,placement:e.placement,pure:"",transition:`${e.nsSelectV2.namespace.value}-zoom-in-top`,trigger:"click",persistent:e.persistent,onBeforeShow:e.handleMenuEnter,onHide:t[24]||(t[24]=p=>e.states.inputValue=e.states.displayInputValue)},{default:ue(()=>{var p;return[k("div",{ref:"selectionRef",class:N([e.nsSelectV2.e("wrapper"),e.nsSelectV2.is("focused",e.states.isComposing||e.expanded),e.nsSelectV2.is("hovering",e.states.comboBoxHovering),e.nsSelectV2.is("filterable",e.filterable),e.nsSelectV2.is("disabled",e.selectDisabled)])},[e.$slots.prefix?(E(),M("div",Pwe,[ke(e.$slots,"prefix")])):fe("v-if",!0),e.multiple?(E(),M("div",{key:1,class:N(e.nsSelectV2.e("selection"))},[e.collapseTags&&e.modelValue.length>0?(E(),M("div",{key:0,class:N(e.nsSelectV2.e("selected-item"))},[X(s,{closable:!e.selectDisabled&&!((p=e.states.cachedOptions[0])!=null&&p.disable),size:e.collapseTagSize,type:"info","disable-transitions":"",onClose:t[0]||(t[0]=v=>e.deleteTag(v,e.states.cachedOptions[0]))},{default:ue(()=>{var v;return[k("span",{class:N(e.nsSelectV2.e("tags-text")),style:We({maxWidth:`${e.tagMaxWidth}px`})},xe((v=e.states.cachedOptions[0])==null?void 0:v.label),7)]}),_:1},8,["closable","size"]),e.modelValue.length>1?(E(),me(s,{key:0,closable:!1,size:e.collapseTagSize,type:"info","disable-transitions":""},{default:ue(()=>[e.collapseTagsTooltip?(E(),me(l,{key:0,disabled:e.dropdownMenuVisible,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom",teleported:!1},{default:ue(()=>[k("span",{class:N(e.nsSelectV2.e("tags-text")),style:We({maxWidth:`${e.tagMaxWidth}px`})},"+ "+xe(e.modelValue.length-1),7)]),content:ue(()=>[k("div",{class:N(e.nsSelectV2.e("selection"))},[(E(!0),M(qe,null,vt(e.states.cachedOptions.slice(1),(v,h)=>(E(),M("div",{key:h,class:N(e.nsSelectV2.e("selected-item"))},[(E(),me(s,{key:e.getValueKey(v),closable:!e.selectDisabled&&!v.disabled,size:e.collapseTagSize,class:"in-tooltip",type:"info","disable-transitions":"",onClose:m=>e.deleteTag(m,v)},{default:ue(()=>[k("span",{class:N(e.nsSelectV2.e("tags-text")),style:We({maxWidth:`${e.tagMaxWidth}px`})},xe(e.getLabel(v)),7)]),_:2},1032,["closable","size","onClose"]))],2))),128))],2)]),_:1},8,["disabled","effect"])):(E(),M("span",{key:1,class:N(e.nsSelectV2.e("tags-text")),style:We({maxWidth:`${e.tagMaxWidth}px`})},"+ "+xe(e.modelValue.length-1),7))]),_:1},8,["size"])):fe("v-if",!0)],2)):(E(!0),M(qe,{key:1},vt(e.states.cachedOptions,(v,h)=>(E(),M("div",{key:h,class:N(e.nsSelectV2.e("selected-item"))},[(E(),me(s,{key:e.getValueKey(v),closable:!e.selectDisabled&&!v.disabled,size:e.collapseTagSize,type:"info","disable-transitions":"",onClose:m=>e.deleteTag(m,v)},{default:ue(()=>[k("span",{class:N(e.nsSelectV2.e("tags-text")),style:We({maxWidth:`${e.tagMaxWidth}px`})},xe(e.getLabel(v)),7)]),_:2},1032,["closable","size","onClose"]))],2))),128)),k("div",{class:N([e.nsSelectV2.e("selected-item"),e.nsSelectV2.e("input-wrapper")]),style:We(e.inputWrapperStyle)},[ot(k("input",{id:e.id,ref:"inputRef",autocomplete:e.autocomplete,"aria-autocomplete":"list","aria-haspopup":"listbox",autocapitalize:"off","aria-expanded":e.expanded,"aria-labelledby":e.label,class:N([e.nsSelectV2.is(e.selectSize),e.nsSelectV2.e("combobox-input")]),disabled:e.disabled,role:"combobox",readonly:!e.filterable,spellcheck:"false",type:"text",name:e.name,unselectable:e.expanded?"on":void 0,"onUpdate:modelValue":t[1]||(t[1]=(...v)=>e.onUpdateInputValue&&e.onUpdateInputValue(...v)),onFocus:t[2]||(t[2]=(...v)=>e.handleFocus&&e.handleFocus(...v)),onBlur:t[3]||(t[3]=(...v)=>e.handleBlur&&e.handleBlur(...v)),onInput:t[4]||(t[4]=(...v)=>e.onInput&&e.onInput(...v)),onCompositionstart:t[5]||(t[5]=(...v)=>e.handleCompositionStart&&e.handleCompositionStart(...v)),onCompositionupdate:t[6]||(t[6]=(...v)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...v)),onCompositionend:t[7]||(t[7]=(...v)=>e.handleCompositionEnd&&e.handleCompositionEnd(...v)),onKeydown:[t[8]||(t[8]=_t(Je(v=>e.onKeyboardNavigate("backward"),["stop","prevent"]),["up"])),t[9]||(t[9]=_t(Je(v=>e.onKeyboardNavigate("forward"),["stop","prevent"]),["down"])),t[10]||(t[10]=_t(Je((...v)=>e.onKeyboardSelect&&e.onKeyboardSelect(...v),["stop","prevent"]),["enter"])),t[11]||(t[11]=_t(Je((...v)=>e.handleEsc&&e.handleEsc(...v),["stop","prevent"]),["esc"])),t[12]||(t[12]=_t(Je((...v)=>e.handleDel&&e.handleDel(...v),["stop"]),["delete"]))]},null,42,Dwe),[[d,e.states.displayInputValue]]),e.filterable?(E(),M("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:N(e.nsSelectV2.e("input-calculator")),textContent:xe(e.states.displayInputValue)},null,10,zwe)):fe("v-if",!0)],6)],2)):(E(),M(qe,{key:2},[k("div",{class:N([e.nsSelectV2.e("selected-item"),e.nsSelectV2.e("input-wrapper")])},[ot(k("input",{id:e.id,ref:"inputRef","aria-autocomplete":"list","aria-haspopup":"listbox","aria-labelledby":e.label,"aria-expanded":e.expanded,autocapitalize:"off",autocomplete:e.autocomplete,class:N(e.nsSelectV2.e("combobox-input")),disabled:e.disabled,name:e.name,role:"combobox",readonly:!e.filterable,spellcheck:"false",type:"text",unselectable:e.expanded?"on":void 0,onCompositionstart:t[13]||(t[13]=(...v)=>e.handleCompositionStart&&e.handleCompositionStart(...v)),onCompositionupdate:t[14]||(t[14]=(...v)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...v)),onCompositionend:t[15]||(t[15]=(...v)=>e.handleCompositionEnd&&e.handleCompositionEnd(...v)),onFocus:t[16]||(t[16]=(...v)=>e.handleFocus&&e.handleFocus(...v)),onBlur:t[17]||(t[17]=(...v)=>e.handleBlur&&e.handleBlur(...v)),onInput:t[18]||(t[18]=(...v)=>e.onInput&&e.onInput(...v)),onKeydown:[t[19]||(t[19]=_t(Je(v=>e.onKeyboardNavigate("backward"),["stop","prevent"]),["up"])),t[20]||(t[20]=_t(Je(v=>e.onKeyboardNavigate("forward"),["stop","prevent"]),["down"])),t[21]||(t[21]=_t(Je((...v)=>e.onKeyboardSelect&&e.onKeyboardSelect(...v),["stop","prevent"]),["enter"])),t[22]||(t[22]=_t(Je((...v)=>e.handleEsc&&e.handleEsc(...v),["stop","prevent"]),["esc"]))],"onUpdate:modelValue":t[23]||(t[23]=(...v)=>e.onUpdateInputValue&&e.onUpdateInputValue(...v))},null,42,Vwe),[[d,e.states.displayInputValue]])],2),e.filterable?(E(),M("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:N([e.nsSelectV2.e("selected-item"),e.nsSelectV2.e("input-calculator")]),textContent:xe(e.states.displayInputValue)},null,10,Bwe)):fe("v-if",!0)],64)),e.shouldShowPlaceholder?(E(),M("span",{key:3,class:N([e.nsSelectV2.e("placeholder"),e.nsSelectV2.is("transparent",e.multiple?e.modelValue.length===0:!e.hasModelValue)])},xe(e.currentPlaceholder),3)):fe("v-if",!0),k("span",{class:N(e.nsSelectV2.e("suffix"))},[e.iconComponent?ot((E(),me(i,{key:0,class:N([e.nsSelectV2.e("caret"),e.nsInput.e("icon"),e.iconReverse])},{default:ue(()=>[(E(),me(pt(e.iconComponent)))]),_:1},8,["class"])),[[yt,!e.showClearBtn]]):fe("v-if",!0),e.showClearBtn&&e.clearIcon?(E(),me(i,{key:1,class:N([e.nsSelectV2.e("caret"),e.nsInput.e("icon")]),onClick:Je(e.handleClear,["prevent","stop"])},{default:ue(()=>[(E(),me(pt(e.clearIcon)))]),_:1},8,["class","onClick"])):fe("v-if",!0),e.validateState&&e.validateIcon?(E(),me(i,{key:2,class:N([e.nsInput.e("icon"),e.nsInput.e("validateIcon")])},{default:ue(()=>[(E(),me(pt(e.validateIcon)))]),_:1},8,["class"])):fe("v-if",!0)],2)],2)]}),content:ue(()=>[X(u,{ref:"menuRef",data:e.filteredOptions,width:e.popperSize,"hovering-index":e.states.hoveringIndex,"scrollbar-always-on":e.scrollbarAlwaysOn},{default:ue(p=>[ke(e.$slots,"default",Ar(Md(p)))]),empty:ue(()=>[ke(e.$slots,"empty",{},()=>[k("p",{class:N(e.nsSelectV2.e("empty"))},xe(e.emptyText?e.emptyText:""),3)])]),_:3},8,["data","width","hovering-index","scrollbar-always-on"])]),_:3},8,["visible","teleported","popper-class","popper-options","effect","placement","transition","persistent","onBeforeShow"])],34)),[[f,e.handleClickOutside,e.popperRef]])}var bc=Ie(Lwe,[["render",Fwe],["__file","/home/runner/work/element-plus/element-plus/packages/components/select-v2/src/select.vue"]]);bc.install=e=>{e.component(bc.name,bc)};const Hwe=bc,Uwe=Hwe,Kwe=Le({animated:{type:Boolean,default:!1},count:{type:Number,default:1},rows:{type:Number,default:3},loading:{type:Boolean,default:!0},throttle:{type:Number}}),Wwe=Le({variant:{type:String,values:["circle","rect","h1","h3","text","caption","p","image","button"],default:"text"}}),jwe=oe({name:"ElSkeletonItem"}),qwe=oe({...jwe,props:Wwe,setup(e){const t=Oe("skeleton");return(n,r)=>(E(),M("div",{class:N([c(t).e("item"),c(t).e(n.variant)])},[n.variant==="image"?(E(),me(c(my),{key:0})):fe("v-if",!0)],2))}});var ad=Ie(qwe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/skeleton/src/skeleton-item.vue"]]);const Gwe=oe({name:"ElSkeleton"}),Ywe=oe({...Gwe,props:Kwe,setup(e,{expose:t}){const n=e,r=Oe("skeleton"),o=dpe(qt(n,"loading"),n.throttle);return t({uiLoading:o}),(a,s)=>c(o)?(E(),M("div",ft({key:0,class:[c(r).b(),c(r).is("animated",a.animated)]},a.$attrs),[(E(!0),M(qe,null,vt(a.count,l=>(E(),M(qe,{key:l},[a.loading?ke(a.$slots,"template",{key:l},()=>[X(ad,{class:N(c(r).is("first")),variant:"p"},null,8,["class"]),(E(!0),M(qe,null,vt(a.rows,i=>(E(),me(ad,{key:i,class:N([c(r).e("paragraph"),c(r).is("last",i===a.rows&&a.rows>1)]),variant:"p"},null,8,["class"]))),128))]):fe("v-if",!0)],64))),128))],16)):ke(a.$slots,"default",Ar(ft({key:1},a.$attrs)))}});var Xwe=Ie(Ywe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/skeleton/src/skeleton.vue"]]);const Zwe=lt(Xwe,{SkeletonItem:ad}),Jwe=Jt(ad),Qwe=Le({modelValue:{type:he([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:On,inputSize:On,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:he(Function),default:void 0},disabled:Boolean,range:Boolean,vertical:Boolean,height:String,debounce:{type:Number,default:300},label:{type:String,default:void 0},rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:he(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:vs,default:"top"},marks:{type:he(Object)},validateEvent:{type:Boolean,default:!0}}),Qf=e=>Ze(e)||Ve(e)&&e.every(Ze),e5e={[ut]:Qf,[Bn]:Qf,[Bt]:Qf},t5e=(e,t,n)=>{const r=P();return rt(async()=>{e.range?(Array.isArray(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(typeof e.modelValue!="number"||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),Dt(window,"resize",n),await He(),n()}),{sliderWrapper:r}},n5e=e=>$(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((n,r)=>n-r).filter(n=>n<=e.max&&n>=e.min).map(n=>({point:n,position:(n-e.min)*100/(e.max-e.min),mark:e.marks[n]})):[]),r5e=(e,t,n)=>{const{form:r,formItem:o}=Wn(),a=xt(),s=P(),l=P(),i={firstButton:s,secondButton:l},u=$(()=>e.disabled||(r==null?void 0:r.disabled)||!1),d=$(()=>Math.min(t.firstValue,t.secondValue)),f=$(()=>Math.max(t.firstValue,t.secondValue)),p=$(()=>e.range?`${100*(f.value-d.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),v=$(()=>e.range?`${100*(d.value-e.min)/(e.max-e.min)}%`:"0%"),h=$(()=>e.vertical?{height:e.height}:{}),m=$(()=>e.vertical?{height:p.value,bottom:v.value}:{width:p.value,left:v.value}),_=()=>{a.value&&(t.sliderSize=a.value[`client${e.vertical?"Height":"Width"}`])},g=B=>{const V=e.min+B*(e.max-e.min)/100;if(!e.range)return s;let H;return Math.abs(d.value-V)t.secondValue?"firstButton":"secondButton",i[H]},b=B=>{const V=g(B);return V.value.setPosition(B),V},y=B=>{t.firstValue=B,C(e.range?[d.value,f.value]:B)},w=B=>{t.secondValue=B,e.range&&C([d.value,f.value])},C=B=>{n(ut,B),n(Bn,B)},S=async()=>{await He(),n(Bt,e.range?[d.value,f.value]:e.modelValue)},O=B=>{var V,H,U,K,I,x;if(u.value||t.dragging)return;_();let L=0;if(e.vertical){const z=(U=(H=(V=B.touches)==null?void 0:V.item(0))==null?void 0:H.clientY)!=null?U:B.clientY;L=(a.value.getBoundingClientRect().bottom-z)/t.sliderSize*100}else{const z=(x=(I=(K=B.touches)==null?void 0:K.item(0))==null?void 0:I.clientX)!=null?x:B.clientX,q=a.value.getBoundingClientRect().left;L=(z-q)/t.sliderSize*100}if(!(L<0||L>100))return b(L)};return{elFormItem:o,slider:a,firstButton:s,secondButton:l,sliderDisabled:u,minValue:d,maxValue:f,runwayStyle:h,barStyle:m,resetSize:_,setPosition:b,emitChange:S,onSliderWrapperPrevent:B=>{var V,H;((V=i.firstButton.value)!=null&&V.dragging||(H=i.secondButton.value)!=null&&H.dragging)&&B.preventDefault()},onSliderClick:B=>{O(B)&&S()},onSliderDown:async B=>{const V=O(B);V&&(await He(),V.value.onButtonDown(B))},setFirstValue:y,setSecondValue:w}},{left:o5e,down:a5e,right:s5e,up:l5e,home:i5e,end:u5e,pageUp:c5e,pageDown:d5e}=Ge,f5e=(e,t,n)=>{const r=P(),o=P(!1),a=$(()=>t.value instanceof Function),s=$(()=>a.value&&t.value(e.modelValue)||e.modelValue),l=Un(()=>{n.value&&(o.value=!0)},50),i=Un(()=>{n.value&&(o.value=!1)},50);return{tooltip:r,tooltipVisible:o,formatValue:s,displayTooltip:l,hideTooltip:i}},p5e=(e,t,n)=>{const{disabled:r,min:o,max:a,step:s,showTooltip:l,precision:i,sliderSize:u,formatTooltip:d,emitChange:f,resetSize:p,updateDragging:v}=Fe(Hy),{tooltip:h,tooltipVisible:m,formatValue:_,displayTooltip:g,hideTooltip:b}=f5e(e,d,l),y=P(),w=$(()=>`${(e.modelValue-o.value)/(a.value-o.value)*100}%`),C=$(()=>e.vertical?{bottom:w.value}:{left:w.value}),S=()=>{t.hovering=!0,g()},O=()=>{t.hovering=!1,t.dragging||b()},T=G=>{r.value||(G.preventDefault(),L(G),window.addEventListener("mousemove",z),window.addEventListener("touchmove",z),window.addEventListener("mouseup",q),window.addEventListener("touchend",q),window.addEventListener("contextmenu",q),y.value.focus())},A=G=>{r.value||(t.newPosition=Number.parseFloat(w.value)+G/(a.value-o.value)*100,le(t.newPosition),f())},R=()=>{A(-s.value)},B=()=>{A(s.value)},V=()=>{A(-s.value*4)},H=()=>{A(s.value*4)},U=()=>{r.value||(le(0),f())},K=()=>{r.value||(le(100),f())},I=G=>{let ae=!0;[o5e,a5e].includes(G.key)?R():[s5e,l5e].includes(G.key)?B():G.key===i5e?U():G.key===u5e?K():G.key===d5e?V():G.key===c5e?H():ae=!1,ae&&G.preventDefault()},x=G=>{let ae,be;return G.type.startsWith("touch")?(be=G.touches[0].clientY,ae=G.touches[0].clientX):(be=G.clientY,ae=G.clientX),{clientX:ae,clientY:be}},L=G=>{t.dragging=!0,t.isClick=!0;const{clientX:ae,clientY:be}=x(G);e.vertical?t.startY=be:t.startX=ae,t.startPosition=Number.parseFloat(w.value),t.newPosition=t.startPosition},z=G=>{if(t.dragging){t.isClick=!1,g(),p();let ae;const{clientX:be,clientY:te}=x(G);e.vertical?(t.currentY=te,ae=(t.startY-t.currentY)/u.value*100):(t.currentX=be,ae=(t.currentX-t.startX)/u.value*100),t.newPosition=t.startPosition+ae,le(t.newPosition)}},q=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||b(),t.isClick||le(t.newPosition),f()},0),window.removeEventListener("mousemove",z),window.removeEventListener("touchmove",z),window.removeEventListener("mouseup",q),window.removeEventListener("touchend",q),window.removeEventListener("contextmenu",q))},le=async G=>{if(G===null||Number.isNaN(+G))return;G<0?G=0:G>100&&(G=100);const ae=100/((a.value-o.value)/s.value);let te=Math.round(G/ae)*ae*(a.value-o.value)*.01+o.value;te=Number.parseFloat(te.toFixed(i.value)),te!==e.modelValue&&n(ut,te),!t.dragging&&e.modelValue!==t.oldValue&&(t.oldValue=e.modelValue),await He(),t.dragging&&g(),h.value.updatePopper()};return Ce(()=>t.dragging,G=>{v(G)}),{disabled:r,button:y,tooltip:h,tooltipVisible:m,showTooltip:l,wrapperStyle:C,formatValue:_,handleMouseEnter:S,handleMouseLeave:O,onButtonDown:T,onKeyDown:I,setPosition:le}},h5e=(e,t,n,r)=>({stops:$(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return[];const s=(e.max-e.min)/e.step,l=100*e.step/(e.max-e.min),i=Array.from({length:s-1}).map((u,d)=>(d+1)*l);return e.range?i.filter(u=>u<100*(n.value-e.min)/(e.max-e.min)||u>100*(r.value-e.min)/(e.max-e.min)):i.filter(u=>u>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:s=>e.vertical?{bottom:`${s}%`}:{left:`${s}%`}}),v5e=(e,t,n,r,o,a)=>{const s=u=>{o(ut,u),o(Bn,u)},l=()=>e.range?![n.value,r.value].every((u,d)=>u===t.oldValue[d]):e.modelValue!==t.oldValue,i=()=>{var u,d;if(e.min>e.max){un("Slider","min should not be greater than max.");return}const f=e.modelValue;e.range&&Array.isArray(f)?f[1]e.max?s([e.max,e.max]):f[0]e.max?s([f[0],e.max]):(t.firstValue=f[0],t.secondValue=f[1],l()&&(e.validateEvent&&((u=a==null?void 0:a.validate)==null||u.call(a,"change").catch(p=>void 0)),t.oldValue=f.slice())):!e.range&&typeof f=="number"&&!Number.isNaN(f)&&(fe.max?s(e.max):(t.firstValue=f,l()&&(e.validateEvent&&((d=a==null?void 0:a.validate)==null||d.call(a,"change").catch(p=>void 0)),t.oldValue=f)))};i(),Ce(()=>t.dragging,u=>{u||i()}),Ce(()=>e.modelValue,(u,d)=>{t.dragging||Array.isArray(u)&&Array.isArray(d)&&u.every((f,p)=>f===d[p])&&t.firstValue===u[0]&&t.secondValue===u[1]||i()},{deep:!0}),Ce(()=>[e.min,e.max],()=>{i()})},m5e=Le({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:vs,default:"top"}}),g5e={[ut]:e=>Ze(e)},_5e=["tabindex"],b5e=oe({name:"ElSliderButton"}),y5e=oe({...b5e,props:m5e,emits:g5e,setup(e,{expose:t,emit:n}){const r=e,o=Oe("slider"),a=Et({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:r.modelValue}),{disabled:s,button:l,tooltip:i,showTooltip:u,tooltipVisible:d,wrapperStyle:f,formatValue:p,handleMouseEnter:v,handleMouseLeave:h,onButtonDown:m,onKeyDown:_,setPosition:g}=p5e(r,a,n),{hovering:b,dragging:y}=an(a);return t({onButtonDown:m,onKeyDown:_,setPosition:g,hovering:b,dragging:y}),(w,C)=>(E(),M("div",{ref_key:"button",ref:l,class:N([c(o).e("button-wrapper"),{hover:c(b),dragging:c(y)}]),style:We(c(f)),tabindex:c(s)?-1:0,onMouseenter:C[0]||(C[0]=(...S)=>c(v)&&c(v)(...S)),onMouseleave:C[1]||(C[1]=(...S)=>c(h)&&c(h)(...S)),onMousedown:C[2]||(C[2]=(...S)=>c(m)&&c(m)(...S)),onTouchstart:C[3]||(C[3]=(...S)=>c(m)&&c(m)(...S)),onFocus:C[4]||(C[4]=(...S)=>c(v)&&c(v)(...S)),onBlur:C[5]||(C[5]=(...S)=>c(h)&&c(h)(...S)),onKeydown:C[6]||(C[6]=(...S)=>c(_)&&c(_)(...S))},[X(c(Kn),{ref_key:"tooltip",ref:i,visible:c(d),placement:w.placement,"fallback-placements":["top","bottom","right","left"],"stop-popper-mouse-event":!1,"popper-class":w.tooltipClass,disabled:!c(u),persistent:""},{content:ue(()=>[k("span",null,xe(c(p)),1)]),default:ue(()=>[k("div",{class:N([c(o).e("button"),{hover:c(b),dragging:c(y)}])},null,2)]),_:1},8,["visible","placement","popper-class","disabled"])],46,_5e))}});var k_=Ie(y5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/slider/src/button.vue"]]);const w5e=Le({mark:{type:he([String,Object]),default:void 0}});var E5e=oe({name:"ElSliderMarker",props:w5e,setup(e){const t=Oe("slider"),n=$(()=>Qe(e.mark)?e.mark:e.mark.label),r=$(()=>Qe(e.mark)?void 0:e.mark.style);return()=>je("div",{class:t.e("marks-text"),style:r.value},n.value)}});const C5e=["id","role","aria-label","aria-labelledby"],S5e={key:1},k5e=oe({name:"ElSlider"}),$5e=oe({...k5e,props:Qwe,emits:e5e,setup(e,{expose:t,emit:n}){const r=e,o=Oe("slider"),{t:a}=Ct(),s=Et({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:l,slider:i,firstButton:u,secondButton:d,sliderDisabled:f,minValue:p,maxValue:v,runwayStyle:h,barStyle:m,resetSize:_,emitChange:g,onSliderWrapperPrevent:b,onSliderClick:y,onSliderDown:w,setFirstValue:C,setSecondValue:S}=r5e(r,s,n),{stops:O,getStopStyle:T}=h5e(r,s,p,v),{inputId:A,isLabeledByFormItem:R}=$a(r,{formItemContext:l}),B=sn(),V=$(()=>r.inputSize||B.value),H=$(()=>r.label||a("el.slider.defaultLabel",{min:r.min,max:r.max})),U=$(()=>r.range?r.rangeStartLabel||a("el.slider.defaultRangeStartLabel"):H.value),K=$(()=>r.formatValueText?r.formatValueText(G.value):`${G.value}`),I=$(()=>r.rangeEndLabel||a("el.slider.defaultRangeEndLabel")),x=$(()=>r.formatValueText?r.formatValueText(ae.value):`${ae.value}`),L=$(()=>[o.b(),o.m(B.value),o.is("vertical",r.vertical),{[o.m("with-input")]:r.showInput}]),z=n5e(r);v5e(r,s,p,v,n,l);const q=$(()=>{const de=[r.min,r.max,r.step].map(Z=>{const Y=`${Z}`.split(".")[1];return Y?Y.length:0});return Math.max.apply(null,de)}),{sliderWrapper:le}=t5e(r,s,_),{firstValue:G,secondValue:ae,sliderSize:be}=an(s),te=de=>{s.dragging=de};return ct(Hy,{...an(r),sliderSize:be,disabled:f,precision:q,emitChange:g,resetSize:_,updateDragging:te}),t({onSliderClick:y}),(de,Z)=>{var Y,ce;return E(),M("div",{id:de.range?c(A):void 0,ref_key:"sliderWrapper",ref:le,class:N(c(L)),role:de.range?"group":void 0,"aria-label":de.range&&!c(R)?c(H):void 0,"aria-labelledby":de.range&&c(R)?(Y=c(l))==null?void 0:Y.labelId:void 0,onTouchstart:Z[2]||(Z[2]=(...ve)=>c(b)&&c(b)(...ve)),onTouchmove:Z[3]||(Z[3]=(...ve)=>c(b)&&c(b)(...ve))},[k("div",{ref_key:"slider",ref:i,class:N([c(o).e("runway"),{"show-input":de.showInput&&!de.range},c(o).is("disabled",c(f))]),style:We(c(h)),onMousedown:Z[0]||(Z[0]=(...ve)=>c(w)&&c(w)(...ve)),onTouchstart:Z[1]||(Z[1]=(...ve)=>c(w)&&c(w)(...ve))},[k("div",{class:N(c(o).e("bar")),style:We(c(m))},null,6),X(k_,{id:de.range?void 0:c(A),ref_key:"firstButton",ref:u,"model-value":c(G),vertical:de.vertical,"tooltip-class":de.tooltipClass,placement:de.placement,role:"slider","aria-label":de.range||!c(R)?c(U):void 0,"aria-labelledby":!de.range&&c(R)?(ce=c(l))==null?void 0:ce.labelId:void 0,"aria-valuemin":de.min,"aria-valuemax":de.range?c(ae):de.max,"aria-valuenow":c(G),"aria-valuetext":c(K),"aria-orientation":de.vertical?"vertical":"horizontal","aria-disabled":c(f),"onUpdate:modelValue":c(C)},null,8,["id","model-value","vertical","tooltip-class","placement","aria-label","aria-labelledby","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"]),de.range?(E(),me(k_,{key:0,ref_key:"secondButton",ref:d,"model-value":c(ae),vertical:de.vertical,"tooltip-class":de.tooltipClass,placement:de.placement,role:"slider","aria-label":c(I),"aria-valuemin":c(G),"aria-valuemax":de.max,"aria-valuenow":c(ae),"aria-valuetext":c(x),"aria-orientation":de.vertical?"vertical":"horizontal","aria-disabled":c(f),"onUpdate:modelValue":c(S)},null,8,["model-value","vertical","tooltip-class","placement","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"])):fe("v-if",!0),de.showStops?(E(),M("div",S5e,[(E(!0),M(qe,null,vt(c(O),(ve,Ne)=>(E(),M("div",{key:Ne,class:N(c(o).e("stop")),style:We(c(T)(ve))},null,6))),128))])):fe("v-if",!0),c(z).length>0?(E(),M(qe,{key:2},[k("div",null,[(E(!0),M(qe,null,vt(c(z),(ve,Ne)=>(E(),M("div",{key:Ne,style:We(c(T)(ve.position)),class:N([c(o).e("stop"),c(o).e("marks-stop")])},null,6))),128))]),k("div",{class:N(c(o).e("marks"))},[(E(!0),M(qe,null,vt(c(z),(ve,Ne)=>(E(),me(c(E5e),{key:Ne,mark:ve.mark,style:We(c(T)(ve.position))},null,8,["mark","style"]))),128))],2)],64)):fe("v-if",!0)],38),de.showInput&&!de.range?(E(),me(c(Jw),{key:0,ref:"input","model-value":c(G),class:N(c(o).e("input")),step:de.step,disabled:c(f),controls:de.showInputControls,min:de.min,max:de.max,debounce:de.debounce,size:c(V),"onUpdate:modelValue":c(C),onChange:c(g)},null,8,["model-value","class","step","disabled","controls","min","max","debounce","size","onUpdate:modelValue","onChange"])):fe("v-if",!0)],42,C5e)}}});var T5e=Ie($5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/slider/src/slider.vue"]]);const O5e=lt(T5e),M5e=Le({prefixCls:{type:String}}),$_=oe({name:"ElSpaceItem",props:M5e,setup(e,{slots:t}){const n=Oe("space"),r=$(()=>`${e.prefixCls||n.b()}__item`);return()=>je("div",{class:r.value},ke(t,"default"))}}),T_={small:8,default:12,large:16};function N5e(e){const t=Oe("space"),n=$(()=>[t.b(),t.m(e.direction),e.class]),r=P(0),o=P(0),a=$(()=>{const l=e.wrap||e.fill?{flexWrap:"wrap",marginBottom:`-${o.value}px`}:{},i={alignItems:e.alignment};return[l,i,e.style]}),s=$(()=>{const l={paddingBottom:`${o.value}px`,marginRight:`${r.value}px`},i=e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{};return[l,i]});return Qn(()=>{const{size:l="small",wrap:i,direction:u,fill:d}=e;if(Ve(l)){const[f=0,p=0]=l;r.value=f,o.value=p}else{let f;Ze(l)?f=l:f=T_[l||"small"]||T_.small,(i||d)&&u==="horizontal"?r.value=o.value=f:u==="horizontal"?(r.value=f,o.value=0):(o.value=f,r.value=0)}}),{classes:n,containerStyle:a,itemStyle:s}}const A5e=Le({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:he([String,Object,Array]),default:""},style:{type:he([String,Array,Object]),default:""},alignment:{type:he(String),default:"center"},prefixCls:{type:String},spacer:{type:he([Object,String,Number,Array]),default:null,validator:e=>Vt(e)||Ze(e)||Qe(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:Ho,validator:e=>Ze(e)||Ve(e)&&e.length===2&&e.every(Ze)}}),R5e=oe({name:"ElSpace",props:A5e,setup(e,{slots:t}){const{classes:n,containerStyle:r,itemStyle:o}=N5e(e);function a(s,l="",i=[]){const{prefixCls:u}=e;return s.forEach((d,f)=>{k0(d)?Ve(d.children)&&d.children.forEach((p,v)=>{k0(p)&&Ve(p.children)?a(p.children,`${l+v}-`,i):i.push(X($_,{style:o.value,prefixCls:u,key:`nested-${l+v}`},{default:()=>[p]},pr.PROPS|pr.STYLE,["style","prefixCls"]))}):jde(d)&&i.push(X($_,{style:o.value,prefixCls:u,key:`LoopKey${l+f}`},{default:()=>[d]},pr.PROPS|pr.STYLE,["style","prefixCls"]))}),i}return()=>{var s;const{spacer:l,direction:i}=e,u=ke(t,"default",{key:0},()=>[]);if(((s=u.children)!=null?s:[]).length===0)return null;if(Ve(u.children)){let d=a(u.children);if(l){const f=d.length-1;d=d.reduce((p,v,h)=>{const m=[...p,v];return h!==f&&m.push(X("span",{style:[o.value,i==="vertical"?"width: 100%":null],key:h},[Vt(l)?l:bt(l,pr.TEXT)],pr.STYLE)),m},[])}return X("div",{class:n.value,style:r.value},d,pr.STYLE|pr.CLASS)}return u.children}}}),x5e=lt(R5e),I5e=Le({decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},precision:{type:Number,default:0},formatter:Function,value:{type:he([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:he([String,Object,Array])}}),L5e=oe({name:"ElStatistic"}),P5e=oe({...L5e,props:I5e,setup(e,{expose:t}){const n=e,r=Oe("statistic"),o=$(()=>{const{value:a,formatter:s,precision:l,decimalSeparator:i,groupSeparator:u}=n;if(Xe(s))return s(a);if(!Ze(a))return a;let[d,f=""]=String(a).split(".");return f=f.padEnd(l,"0").slice(0,l>0?l:0),d=d.replace(/\B(?=(\d{3})+(?!\d))/g,u),[d,f].join(f?i:"")});return t({displayValue:o}),(a,s)=>(E(),M("div",{class:N(c(r).b())},[a.$slots.title||a.title?(E(),M("div",{key:0,class:N(c(r).e("head"))},[ke(a.$slots,"title",{},()=>[bt(xe(a.title),1)])],2)):fe("v-if",!0),k("div",{class:N(c(r).e("content"))},[a.$slots.prefix||a.prefix?(E(),M("div",{key:0,class:N(c(r).e("prefix"))},[ke(a.$slots,"prefix",{},()=>[k("span",null,xe(a.prefix),1)])],2)):fe("v-if",!0),k("span",{class:N(c(r).e("number")),style:We(a.valueStyle)},xe(c(o)),7),a.$slots.suffix||a.suffix?(E(),M("div",{key:1,class:N(c(r).e("suffix"))},[ke(a.$slots,"suffix",{},()=>[k("span",null,xe(a.suffix),1)])],2)):fe("v-if",!0)],2)],2))}});var D5e=Ie(P5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/statistic/src/statistic.vue"]]);const S5=lt(D5e),z5e=Le({format:{type:String,default:"HH:mm:ss"},prefix:String,suffix:String,title:String,value:{type:he([Number,Object]),default:0},valueStyle:{type:he([String,Object,Array])}}),V5e={finish:()=>!0,[Bt]:e=>Ze(e)},B5e=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]],O_=e=>Ze(e)?new Date(e).getTime():e.valueOf(),M_=(e,t)=>{let n=e;const r=/\[([^\]]*)]/g;return B5e.reduce((a,[s,l])=>{const i=new RegExp(`${s}+(?![^\\[\\]]*\\])`,"g");if(i.test(a)){const u=Math.floor(n/l);return n-=u*l,a.replace(i,d=>String(u).padStart(d.length,"0"))}return a},t).replace(r,"$1")},F5e=oe({name:"ElCountdown"}),H5e=oe({...F5e,props:z5e,emits:V5e,setup(e,{expose:t,emit:n}){const r=e;let o;const a=P(O_(r.value)-Date.now()),s=$(()=>M_(a.value,r.format)),l=d=>M_(d,r.format),i=()=>{o&&(jd(o),o=void 0)},u=()=>{const d=O_(r.value),f=()=>{let p=d-Date.now();n("change",p),p<=0?(p=0,i(),n("finish")):o=Ni(f),a.value=p};o=Ni(f)};return Ce(()=>[r.value,r.format],()=>{i(),u()},{immediate:!0}),Ut(()=>{i()}),t({displayValue:s}),(d,f)=>(E(),me(c(S5),{value:a.value,title:d.title,prefix:d.prefix,suffix:d.suffix,"value-style":d.valueStyle,formatter:l},No({_:2},[vt(d.$slots,(p,v)=>({name:v,fn:ue(()=>[ke(d.$slots,v)])}))]),1032,["value","title","prefix","suffix","value-style"]))}});var U5e=Ie(H5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/countdown/src/countdown.vue"]]);const K5e=lt(U5e),W5e=Le({space:{type:[Number,String],default:""},active:{type:Number,default:0},direction:{type:String,default:"horizontal",values:["horizontal","vertical"]},alignCenter:{type:Boolean},simple:{type:Boolean},finishStatus:{type:String,values:["wait","process","finish","error","success"],default:"finish"},processStatus:{type:String,values:["wait","process","finish","error","success"],default:"process"}}),j5e={[Bt]:(e,t)=>[e,t].every(Ze)},q5e=oe({name:"ElSteps"}),G5e=oe({...q5e,props:W5e,emits:j5e,setup(e,{emit:t}){const n=e,r=Oe("steps"),o=P([]);return Ce(o,()=>{o.value.forEach((a,s)=>{a.setIndex(s)})}),ct("ElSteps",{props:n,steps:o}),Ce(()=>n.active,(a,s)=>{t(Bt,a,s)}),(a,s)=>(E(),M("div",{class:N([c(r).b(),c(r).m(a.simple?"simple":a.direction)])},[ke(a.$slots,"default")],2))}});var Y5e=Ie(G5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/steps/src/steps.vue"]]);const X5e=Le({title:{type:String,default:""},icon:{type:zt},description:{type:String,default:""},status:{type:String,values:["","wait","process","finish","error","success"],default:""}}),Z5e=oe({name:"ElStep"}),J5e=oe({...Z5e,props:X5e,setup(e){const t=e,n=Oe("step"),r=P(-1),o=P({}),a=P(""),s=Fe("ElSteps"),l=tt();rt(()=>{Ce([()=>s.props.active,()=>s.props.processStatus,()=>s.props.finishStatus],([C])=>{y(C)},{immediate:!0})}),Ut(()=>{s.steps.value=s.steps.value.filter(C=>C.uid!==(l==null?void 0:l.uid))});const i=$(()=>t.status||a.value),u=$(()=>{const C=s.steps.value[r.value-1];return C?C.currentStatus:"wait"}),d=$(()=>s.props.alignCenter),f=$(()=>s.props.direction==="vertical"),p=$(()=>s.props.simple),v=$(()=>s.steps.value.length),h=$(()=>{var C;return((C=s.steps.value[v.value-1])==null?void 0:C.uid)===(l==null?void 0:l.uid)}),m=$(()=>p.value?"":s.props.space),_=$(()=>{const C={flexBasis:typeof m.value=="number"?`${m.value}px`:m.value?m.value:`${100/(v.value-(d.value?0:1))}%`};return f.value||h.value&&(C.maxWidth=`${100/v.value}%`),C}),g=C=>{r.value=C},b=C=>{let S=100;const O={};O.transitionDelay=`${150*r.value}ms`,C===s.props.processStatus?S=0:C==="wait"&&(S=0,O.transitionDelay=`${-150*r.value}ms`),O.borderWidth=S&&!p.value?"1px":0,O[s.props.direction==="vertical"?"height":"width"]=`${S}%`,o.value=O},y=C=>{C>r.value?a.value=s.props.finishStatus:C===r.value&&u.value!=="error"?a.value=s.props.processStatus:a.value="wait";const S=s.steps.value[r.value-1];S&&S.calcProgress(a.value)},w=Et({uid:$(()=>l==null?void 0:l.uid),currentStatus:i,setIndex:g,calcProgress:b});return s.steps.value=[...s.steps.value,w],(C,S)=>(E(),M("div",{style:We(c(_)),class:N([c(n).b(),c(n).is(c(p)?"simple":c(s).props.direction),c(n).is("flex",c(h)&&!c(m)&&!c(d)),c(n).is("center",c(d)&&!c(f)&&!c(p))])},[fe(" icon & line "),k("div",{class:N([c(n).e("head"),c(n).is(c(i))])},[c(p)?fe("v-if",!0):(E(),M("div",{key:0,class:N(c(n).e("line"))},[k("i",{class:N(c(n).e("line-inner")),style:We(o.value)},null,6)],2)),k("div",{class:N([c(n).e("icon"),c(n).is(C.icon||C.$slots.icon?"icon":"text")])},[ke(C.$slots,"icon",{},()=>[C.icon?(E(),me(c(Ke),{key:0,class:N(c(n).e("icon-inner"))},{default:ue(()=>[(E(),me(pt(C.icon)))]),_:1},8,["class"])):c(i)==="success"?(E(),me(c(Ke),{key:1,class:N([c(n).e("icon-inner"),c(n).is("status")])},{default:ue(()=>[X(c(Sl))]),_:1},8,["class"])):c(i)==="error"?(E(),me(c(Ke),{key:2,class:N([c(n).e("icon-inner"),c(n).is("status")])},{default:ue(()=>[X(c(wr))]),_:1},8,["class"])):c(p)?fe("v-if",!0):(E(),M("div",{key:3,class:N(c(n).e("icon-inner"))},xe(r.value+1),3))])],2)],2),fe(" title & description "),k("div",{class:N(c(n).e("main"))},[k("div",{class:N([c(n).e("title"),c(n).is(c(i))])},[ke(C.$slots,"title",{},()=>[bt(xe(C.title),1)])],2),c(p)?(E(),M("div",{key:0,class:N(c(n).e("arrow"))},null,2)):(E(),M("div",{key:1,class:N([c(n).e("description"),c(n).is(c(i))])},[ke(C.$slots,"description",{},()=>[bt(xe(C.description),1)])],2))],2)],6))}});var k5=Ie(J5e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/steps/src/item.vue"]]);const Q5e=lt(Y5e,{Step:k5}),eEe=Jt(k5),tEe=Le({modelValue:{type:[Boolean,String,Number],default:!1},value:{type:[Boolean,String,Number],default:!1},disabled:{type:Boolean,default:!1},width:{type:[String,Number],default:""},inlinePrompt:{type:Boolean,default:!1},activeIcon:{type:zt},inactiveIcon:{type:zt},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeColor:{type:String,default:""},inactiveColor:{type:String,default:""},borderColor:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},id:String,loading:{type:Boolean,default:!1},beforeChange:{type:he(Function)},size:{type:String,validator:Kd},tabindex:{type:[String,Number]}}),nEe={[ut]:e=>rn(e)||Qe(e)||Ze(e),[Bt]:e=>rn(e)||Qe(e)||Ze(e),[Bn]:e=>rn(e)||Qe(e)||Ze(e)},rEe=["onClick"],oEe=["id","aria-checked","aria-disabled","name","true-value","false-value","disabled","tabindex","onKeydown"],aEe=["aria-hidden"],sEe=["aria-hidden"],lEe=["aria-hidden"],g2="ElSwitch",iEe=oe({name:g2}),uEe=oe({...iEe,props:tEe,emits:nEe,setup(e,{expose:t,emit:n}){const r=e,o=tt(),{formItem:a}=Wn(),s=sn(),l=Oe("switch");xo({from:'"value"',replacement:'"model-value" or "v-model"',scope:g2,version:"2.3.0",ref:"https://element-plus.org/en-US/component/switch.html#attributes",type:"Attribute"},$(()=>{var C;return!!((C=o.vnode.props)!=null&&C.value)}));const{inputId:i}=$a(r,{formItemContext:a}),u=rr($(()=>r.loading)),d=P(r.modelValue!==!1),f=P(),p=P(),v=$(()=>[l.b(),l.m(s.value),l.is("disabled",u.value),l.is("checked",_.value)]),h=$(()=>({width:on(r.width)}));Ce(()=>r.modelValue,()=>{d.value=!0}),Ce(()=>r.value,()=>{d.value=!1});const m=$(()=>d.value?r.modelValue:r.value),_=$(()=>m.value===r.activeValue);[r.activeValue,r.inactiveValue].includes(m.value)||(n(ut,r.inactiveValue),n(Bt,r.inactiveValue),n(Bn,r.inactiveValue)),Ce(_,C=>{var S;f.value.checked=C,r.validateEvent&&((S=a==null?void 0:a.validate)==null||S.call(a,"change").catch(O=>void 0))});const g=()=>{const C=_.value?r.inactiveValue:r.activeValue;n(ut,C),n(Bt,C),n(Bn,C),He(()=>{f.value.checked=_.value})},b=()=>{if(u.value)return;const{beforeChange:C}=r;if(!C){g();return}const S=C();[Ys(S),rn(S)].includes(!0)||un(g2,"beforeChange must return type `Promise` or `boolean`"),Ys(S)?S.then(T=>{T&&g()}).catch(T=>{}):S&&g()},y=$(()=>l.cssVarBlock({...r.activeColor?{"on-color":r.activeColor}:null,...r.inactiveColor?{"off-color":r.inactiveColor}:null,...r.borderColor?{"border-color":r.borderColor}:null})),w=()=>{var C,S;(S=(C=f.value)==null?void 0:C.focus)==null||S.call(C)};return rt(()=>{f.value.checked=_.value}),t({focus:w,checked:_}),(C,S)=>(E(),M("div",{class:N(c(v)),style:We(c(y)),onClick:Je(b,["prevent"])},[k("input",{id:c(i),ref_key:"input",ref:f,class:N(c(l).e("input")),type:"checkbox",role:"switch","aria-checked":c(_),"aria-disabled":c(u),name:C.name,"true-value":C.activeValue,"false-value":C.inactiveValue,disabled:c(u),tabindex:C.tabindex,onChange:g,onKeydown:_t(b,["enter"])},null,42,oEe),!C.inlinePrompt&&(C.inactiveIcon||C.inactiveText)?(E(),M("span",{key:0,class:N([c(l).e("label"),c(l).em("label","left"),c(l).is("active",!c(_))])},[C.inactiveIcon?(E(),me(c(Ke),{key:0},{default:ue(()=>[(E(),me(pt(C.inactiveIcon)))]),_:1})):fe("v-if",!0),!C.inactiveIcon&&C.inactiveText?(E(),M("span",{key:1,"aria-hidden":c(_)},xe(C.inactiveText),9,aEe)):fe("v-if",!0)],2)):fe("v-if",!0),k("span",{ref_key:"core",ref:p,class:N(c(l).e("core")),style:We(c(h))},[C.inlinePrompt?(E(),M("div",{key:0,class:N(c(l).e("inner"))},[C.activeIcon||C.inactiveIcon?(E(),me(c(Ke),{key:0,class:N(c(l).is("icon"))},{default:ue(()=>[(E(),me(pt(c(_)?C.activeIcon:C.inactiveIcon)))]),_:1},8,["class"])):C.activeText||C.inactiveText?(E(),M("span",{key:1,class:N(c(l).is("text")),"aria-hidden":!c(_)},xe(c(_)?C.activeText:C.inactiveText),11,sEe)):fe("v-if",!0)],2)):fe("v-if",!0),k("div",{class:N(c(l).e("action"))},[C.loading?(E(),me(c(Ke),{key:0,class:N(c(l).is("loading"))},{default:ue(()=>[X(c(Fo))]),_:1},8,["class"])):fe("v-if",!0)],2)],6),!C.inlinePrompt&&(C.activeIcon||C.activeText)?(E(),M("span",{key:1,class:N([c(l).e("label"),c(l).em("label","right"),c(l).is("active",c(_))])},[C.activeIcon?(E(),me(c(Ke),{key:0},{default:ue(()=>[(E(),me(pt(C.activeIcon)))]),_:1})):fe("v-if",!0),!C.activeIcon&&C.activeText?(E(),M("span",{key:1,"aria-hidden":!c(_)},xe(C.activeText),9,lEe)):fe("v-if",!0)],2)):fe("v-if",!0)],14,rEe))}});var cEe=Ie(uEe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/switch/src/switch.vue"]]);const dEe=lt(cEe);/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var fEe=/["'&<>]/,pEe=hEe;function hEe(e){var t=""+e,n=fEe.exec(t);if(!n)return t;var r,o="",a=0,s=0;for(a=n.index;atypeof u=="string"?Wt(l,u):u(l,i,e))):(t!=="$key"&&dt(l)&&"$value"in l&&(l=l.$value),[dt(l)?Wt(l,t):l])},s=function(l,i){if(r)return r(l.value,i.value);for(let u=0,d=l.key.length;ui.key[u])return 1}return 0};return e.map((l,i)=>({value:l,index:i,key:a?a(l,i):null})).sort((l,i)=>{let u=s(l,i);return u||(u=l.index-i.index),u*+n}).map(l=>l.value)},$5=function(e,t){let n=null;return e.columns.forEach(r=>{r.id===t&&(n=r)}),n},mEe=function(e,t){let n=null;for(let r=0;r{if(!e)throw new Error("Row is required when get row identity");if(typeof t=="string"){if(!t.includes("."))return`${e[t]}`;const n=t.split(".");let r=e;for(const o of n)r=r[o];return`${r}`}else if(typeof t=="function")return t.call(null,e)},ja=function(e,t){const n={};return(e||[]).forEach((r,o)=>{n[Sn(r,t)]={row:r,index:o}}),n};function gEe(e,t){const n={};let r;for(r in e)n[r]=e[r];for(r in t)if(mt(t,r)){const o=t[r];typeof o<"u"&&(n[r]=o)}return n}function Lv(e){return e===""||e!==void 0&&(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function T5(e){return e===""||e!==void 0&&(e=Lv(e),Number.isNaN(e)&&(e=80)),e}function _Ee(e){return typeof e=="number"?e:typeof e=="string"?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function bEe(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function si(e,t,n){let r=!1;const o=e.indexOf(t),a=o!==-1,s=l=>{l==="add"?e.push(t):e.splice(o,1),r=!0,Ve(t.children)&&t.children.forEach(i=>{si(e,i,n??!a)})};return rn(n)?n&&!a?s("add"):!n&&a&&s("remove"):s(a?"remove":"add"),r}function yEe(e,t,n="children",r="hasChildren"){const o=s=>!(Array.isArray(s)&&s.length);function a(s,l,i){t(s,l,i),l.forEach(u=>{if(u[r]){t(u,null,i+1);return}const d=u[n];o(d)||a(u,d,i+1)})}e.forEach(s=>{if(s[r]){t(s,null,0);return}const l=s[n];o(l)||a(s,l,0)})}let go;function wEe(e,t,n,r){r=Kb({enterable:!0,showArrow:!0},r);const{nextZIndex:o}=Ko(),a=e==null?void 0:e.dataset.prefix,s=e==null?void 0:e.querySelector(`.${a}-scrollbar__wrap`);function l(){const _=r.effect==="light",g=document.createElement("div");return g.className=[`${a}-popper`,_?"is-light":"is-dark",r.popperClass||""].join(" "),n=pEe(n),g.innerHTML=n,g.style.zIndex=String(o()),e==null||e.appendChild(g),g}function i(){const _=document.createElement("div");return _.className=`${a}-popper__arrow`,_}function u(){d&&d.update()}go==null||go(),go=()=>{try{d&&d.destroy(),v&&(e==null||e.removeChild(v)),t.removeEventListener("mouseenter",f),t.removeEventListener("mouseleave",p),s==null||s.removeEventListener("scroll",go),go=void 0}catch{}};let d=null,f=u,p=go;r.enterable&&({onOpen:f,onClose:p}=d8({showAfter:r.showAfter,hideAfter:r.hideAfter,open:u,close:go}));const v=l();v.onmouseenter=f,v.onmouseleave=p;const h=[];if(r.offset&&h.push({name:"offset",options:{offset:[0,r.offset]}}),r.showArrow){const _=v.appendChild(i());h.push({name:"arrow",options:{element:_,padding:10}})}const m=r.popperOptions||{};return d=u8(t,v,{placement:r.placement||"top",strategy:"fixed",...m,modifiers:m.modifiers?h.concat(m.modifiers):h}),t.addEventListener("mouseenter",f),t.addEventListener("mouseleave",p),s==null||s.addEventListener("scroll",go),d}function O5(e){return e.children?uN(e.children,O5):[e]}function A_(e,t){return e+t.colSpan}const M5=(e,t,n,r)=>{let o=0,a=e;const s=n.states.columns.value;if(r){const i=O5(r[e]);o=s.slice(0,s.indexOf(i[0])).reduce(A_,0),a=o+i.reduce(A_,0)-1}else o=e;let l;switch(t){case"left":a=s.length-n.states.rightFixedLeafColumnsLength.value&&(l="right");break;default:a=s.length-n.states.rightFixedLeafColumnsLength.value&&(l="right")}return l?{direction:l,start:o,after:a}:{}},Pv=(e,t,n,r,o,a=0)=>{const s=[],{direction:l,start:i,after:u}=M5(t,n,r,o);if(l){const d=l==="left";s.push(`${e}-fixed-column--${l}`),d&&u+a===r.states.fixedLeafColumnsLength.value-1?s.push("is-last-column"):!d&&i-a===r.states.columns.value.length-r.states.rightFixedLeafColumnsLength.value&&s.push("is-first-column")}return s};function R_(e,t){return e+(t.realWidth===null||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const Dv=(e,t,n,r)=>{const{direction:o,start:a=0,after:s=0}=M5(e,t,n,r);if(!o)return;const l={},i=o==="left",u=n.states.columns.value;return i?l.left=u.slice(0,a).reduce(R_,0):l.right=u.slice(s+1).reverse().reduce(R_,0),l},fl=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function EEe(e){const t=tt(),n=P(!1),r=P([]);return{updateExpandRows:()=>{const i=e.data.value||[],u=e.rowKey.value;if(n.value)r.value=i.slice();else if(u){const d=ja(r.value,u);r.value=i.reduce((f,p)=>{const v=Sn(p,u);return d[v]&&f.push(p),f},[])}else r.value=[]},toggleRowExpansion:(i,u)=>{si(r.value,i,u)&&t.emit("expand-change",i,r.value.slice())},setExpandRowKeys:i=>{t.store.assertRowKey();const u=e.data.value||[],d=e.rowKey.value,f=ja(u,d);r.value=i.reduce((p,v)=>{const h=f[v];return h&&p.push(h.row),p},[])},isRowExpanded:i=>{const u=e.rowKey.value;return u?!!ja(r.value,u)[Sn(i,u)]:r.value.includes(i)},states:{expandRows:r,defaultExpandAll:n}}}function CEe(e){const t=tt(),n=P(null),r=P(null),o=u=>{t.store.assertRowKey(),n.value=u,s(u)},a=()=>{n.value=null},s=u=>{const{data:d,rowKey:f}=e;let p=null;f.value&&(p=(c(d)||[]).find(v=>Sn(v,f.value)===u)),r.value=p,t.emit("current-change",r.value,null)};return{setCurrentRowKey:o,restoreCurrentRowKey:a,setCurrentRowByKey:s,updateCurrentRow:u=>{const d=r.value;if(u&&u!==d){r.value=u,t.emit("current-change",r.value,d);return}!u&&d&&(r.value=null,t.emit("current-change",null,d))},updateCurrentRowData:()=>{const u=e.rowKey.value,d=e.data.value||[],f=r.value;if(!d.includes(f)&&f){if(u){const p=Sn(f,u);s(p)}else r.value=null;r.value===null&&t.emit("current-change",null,f)}else n.value&&(s(n.value),a())},states:{_currentRowKey:n,currentRow:r}}}function SEe(e){const t=P([]),n=P({}),r=P(16),o=P(!1),a=P({}),s=P("hasChildren"),l=P("children"),i=tt(),u=$(()=>{if(!e.rowKey.value)return{};const g=e.data.value||[];return f(g)}),d=$(()=>{const g=e.rowKey.value,b=Object.keys(a.value),y={};return b.length&&b.forEach(w=>{if(a.value[w].length){const C={children:[]};a.value[w].forEach(S=>{const O=Sn(S,g);C.children.push(O),S[s.value]&&!y[O]&&(y[O]={children:[]})}),y[w]=C}}),y}),f=g=>{const b=e.rowKey.value,y={};return yEe(g,(w,C,S)=>{const O=Sn(w,b);Array.isArray(C)?y[O]={children:C.map(T=>Sn(T,b)),level:S}:o.value&&(y[O]={children:[],lazy:!0,level:S})},l.value,s.value),y},p=(g=!1,b=(y=>(y=i.store)==null?void 0:y.states.defaultExpandAll.value)())=>{var y;const w=u.value,C=d.value,S=Object.keys(w),O={};if(S.length){const T=c(n),A=[],R=(V,H)=>{if(g)return t.value?b||t.value.includes(H):!!(b||V!=null&&V.expanded);{const U=b||t.value&&t.value.includes(H);return!!(V!=null&&V.expanded||U)}};S.forEach(V=>{const H=T[V],U={...w[V]};if(U.expanded=R(H,V),U.lazy){const{loaded:K=!1,loading:I=!1}=H||{};U.loaded=!!K,U.loading=!!I,A.push(V)}O[V]=U});const B=Object.keys(C);o.value&&B.length&&A.length&&B.forEach(V=>{const H=T[V],U=C[V].children;if(A.includes(V)){if(O[V].children.length!==0)throw new Error("[ElTable]children must be an empty array.");O[V].children=U}else{const{loaded:K=!1,loading:I=!1}=H||{};O[V]={lazy:!0,loaded:!!K,loading:!!I,expanded:R(H,V),children:U,level:""}}})}n.value=O,(y=i.store)==null||y.updateTableScrollY()};Ce(()=>t.value,()=>{p(!0)}),Ce(()=>u.value,()=>{p()}),Ce(()=>d.value,()=>{p()});const v=g=>{t.value=g,p()},h=(g,b)=>{i.store.assertRowKey();const y=e.rowKey.value,w=Sn(g,y),C=w&&n.value[w];if(w&&C&&"expanded"in C){const S=C.expanded;b=typeof b>"u"?!C.expanded:b,n.value[w].expanded=b,S!==b&&i.emit("expand-change",g,b),i.store.updateTableScrollY()}},m=g=>{i.store.assertRowKey();const b=e.rowKey.value,y=Sn(g,b),w=n.value[y];o.value&&w&&"loaded"in w&&!w.loaded?_(g,y,w):h(g,void 0)},_=(g,b,y)=>{const{load:w}=i.props;w&&!n.value[b].loaded&&(n.value[b].loading=!0,w(g,y,C=>{if(!Array.isArray(C))throw new TypeError("[ElTable] data must be an array");n.value[b].loading=!1,n.value[b].loaded=!0,n.value[b].expanded=!0,C.length&&(a.value[b]=C),i.emit("expand-change",g,!0)}))};return{loadData:_,loadOrToggle:m,toggleTreeExpansion:h,updateTreeExpandKeys:v,updateTreeData:p,normalize:f,states:{expandRowKeys:t,treeData:n,indent:r,lazy:o,lazyTreeNodeMap:a,lazyColumnIdentifier:s,childrenColumnName:l}}}const kEe=(e,t)=>{const n=t.sortingColumn;return!n||typeof n.sortable=="string"?e:vEe(e,t.sortProp,t.sortOrder,n.sortMethod,n.sortBy)},yc=e=>{const t=[];return e.forEach(n=>{n.children?t.push.apply(t,yc(n.children)):t.push(n)}),t};function $Ee(){var e;const t=tt(),{size:n}=an((e=t.proxy)==null?void 0:e.$props),r=P(null),o=P([]),a=P([]),s=P(!1),l=P([]),i=P([]),u=P([]),d=P([]),f=P([]),p=P([]),v=P([]),h=P([]),m=[],_=P(0),g=P(0),b=P(0),y=P(!1),w=P([]),C=P(!1),S=P(!1),O=P(null),T=P({}),A=P(null),R=P(null),B=P(null),V=P(null),H=P(null);Ce(o,()=>t.state&&x(!1),{deep:!0});const U=()=>{if(!r.value)throw new Error("[ElTable] prop row-key is required")},K=pe=>{var Me;(Me=pe.children)==null||Me.forEach(W=>{W.fixed=pe.fixed,K(W)})},I=()=>{l.value.forEach(Ee=>{K(Ee)}),d.value=l.value.filter(Ee=>Ee.fixed===!0||Ee.fixed==="left"),f.value=l.value.filter(Ee=>Ee.fixed==="right"),d.value.length>0&&l.value[0]&&l.value[0].type==="selection"&&!l.value[0].fixed&&(l.value[0].fixed=!0,d.value.unshift(l.value[0]));const pe=l.value.filter(Ee=>!Ee.fixed);i.value=[].concat(d.value).concat(pe).concat(f.value);const Me=yc(pe),W=yc(d.value),ee=yc(f.value);_.value=Me.length,g.value=W.length,b.value=ee.length,u.value=[].concat(W).concat(Me).concat(ee),s.value=d.value.length>0||f.value.length>0},x=(pe,Me=!1)=>{pe&&I(),Me?t.state.doLayout():t.state.debouncedUpdateLayout()},L=pe=>w.value.includes(pe),z=()=>{y.value=!1,w.value.length&&(w.value=[],t.emit("selection-change",[]))},q=()=>{let pe;if(r.value){pe=[];const Me=ja(w.value,r.value),W=ja(o.value,r.value);for(const ee in Me)mt(Me,ee)&&!W[ee]&&pe.push(Me[ee].row)}else pe=w.value.filter(Me=>!o.value.includes(Me));if(pe.length){const Me=w.value.filter(W=>!pe.includes(W));w.value=Me,t.emit("selection-change",Me.slice())}},le=()=>(w.value||[]).slice(),G=(pe,Me=void 0,W=!0)=>{if(si(w.value,pe,Me)){const Ee=(w.value||[]).slice();W&&t.emit("select",Ee,pe),t.emit("selection-change",Ee)}},ae=()=>{var pe,Me;const W=S.value?!y.value:!(y.value||w.value.length);y.value=W;let ee=!1,Ee=0;const Ae=(Me=(pe=t==null?void 0:t.store)==null?void 0:pe.states)==null?void 0:Me.rowKey.value;o.value.forEach((at,Lt)=>{const Ft=Lt+Ee;O.value?O.value.call(null,at,Ft)&&si(w.value,at,W)&&(ee=!0):si(w.value,at,W)&&(ee=!0),Ee+=de(Sn(at,Ae))}),ee&&t.emit("selection-change",w.value?w.value.slice():[]),t.emit("select-all",w.value)},be=()=>{const pe=ja(w.value,r.value);o.value.forEach(Me=>{const W=Sn(Me,r.value),ee=pe[W];ee&&(w.value[ee.index]=Me)})},te=()=>{var pe,Me,W;if(((pe=o.value)==null?void 0:pe.length)===0){y.value=!1;return}let ee;r.value&&(ee=ja(w.value,r.value));const Ee=function(Ft){return ee?!!ee[Sn(Ft,r.value)]:w.value.includes(Ft)};let Ae=!0,at=0,Lt=0;for(let Ft=0,mn=(o.value||[]).length;Ft{var Me;if(!t||!t.store)return 0;const{treeData:W}=t.store.states;let ee=0;const Ee=(Me=W.value[pe])==null?void 0:Me.children;return Ee&&(ee+=Ee.length,Ee.forEach(Ae=>{ee+=de(Ae)})),ee},Z=(pe,Me)=>{Array.isArray(pe)||(pe=[pe]);const W={};return pe.forEach(ee=>{T.value[ee.id]=Me,W[ee.columnKey||ee.id]=Me}),W},Y=(pe,Me,W)=>{R.value&&R.value!==pe&&(R.value.order=null),R.value=pe,B.value=Me,V.value=W},ce=()=>{let pe=c(a);Object.keys(T.value).forEach(Me=>{const W=T.value[Me];if(!W||W.length===0)return;const ee=$5({columns:u.value},Me);ee&&ee.filterMethod&&(pe=pe.filter(Ee=>W.some(Ae=>ee.filterMethod.call(null,Ae,Ee,ee))))}),A.value=pe},ve=()=>{o.value=kEe(A.value,{sortingColumn:R.value,sortProp:B.value,sortOrder:V.value})},Ne=(pe=void 0)=>{pe&&pe.filter||ce(),ve()},j=pe=>{const{tableHeaderRef:Me}=t.refs;if(!Me)return;const W=Object.assign({},Me.filterPanels),ee=Object.keys(W);if(ee.length)if(typeof pe=="string"&&(pe=[pe]),Array.isArray(pe)){const Ee=pe.map(Ae=>mEe({columns:u.value},Ae));ee.forEach(Ae=>{const at=Ee.find(Lt=>Lt.id===Ae);at&&(at.filteredValue=[])}),t.store.commit("filterChange",{column:Ee,values:[],silent:!0,multi:!0})}else ee.forEach(Ee=>{const Ae=u.value.find(at=>at.id===Ee);Ae&&(Ae.filteredValue=[])}),T.value={},t.store.commit("filterChange",{column:{},values:[],silent:!0})},D=()=>{R.value&&(Y(null,null,null),t.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:F,toggleRowExpansion:Q,updateExpandRows:ge,states:ne,isRowExpanded:Se}=EEe({data:o,rowKey:r}),{updateTreeExpandKeys:ye,toggleTreeExpansion:Te,updateTreeData:we,loadOrToggle:J,states:_e}=SEe({data:o,rowKey:r}),{updateCurrentRowData:De,updateCurrentRow:$e,setCurrentRowKey:Pe,states:Ue}=CEe({data:o,rowKey:r});return{assertRowKey:U,updateColumns:I,scheduleLayout:x,isSelected:L,clearSelection:z,cleanSelection:q,getSelectionRows:le,toggleRowSelection:G,_toggleAllSelection:ae,toggleAllSelection:null,updateSelectionByRowKey:be,updateAllSelected:te,updateFilters:Z,updateCurrentRow:$e,updateSort:Y,execFilter:ce,execSort:ve,execQuery:Ne,clearFilter:j,clearSort:D,toggleRowExpansion:Q,setExpandRowKeysAdapter:pe=>{F(pe),ye(pe)},setCurrentRowKey:Pe,toggleRowExpansionAdapter:(pe,Me)=>{u.value.some(({type:ee})=>ee==="expand")?Q(pe,Me):Te(pe,Me)},isRowExpanded:Se,updateExpandRows:ge,updateCurrentRowData:De,loadOrToggle:J,updateTreeData:we,states:{tableSize:n,rowKey:r,data:o,_data:a,isComplex:s,_columns:l,originColumns:i,columns:u,fixedColumns:d,rightFixedColumns:f,leafColumns:p,fixedLeafColumns:v,rightFixedLeafColumns:h,updateOrderFns:m,leafColumnsLength:_,fixedLeafColumnsLength:g,rightFixedLeafColumnsLength:b,isAllSelected:y,selection:w,reserveSelection:C,selectOnIndeterminate:S,selectable:O,filters:T,filteredData:A,sortingColumn:R,sortProp:B,sortOrder:V,hoverRow:H,...ne,..._e,...Ue}}}function _2(e,t){return e.map(n=>{var r;return n.id===t.id?t:((r=n.children)!=null&&r.length&&(n.children=_2(n.children,t)),n)})}function b2(e){e.forEach(t=>{var n,r;t.no=(n=t.getColumnIndex)==null?void 0:n.call(t),(r=t.children)!=null&&r.length&&b2(t.children)}),e.sort((t,n)=>t.no-n.no)}function TEe(){const e=tt(),t=$Ee();return{ns:Oe("table"),...t,mutations:{setData(s,l){const i=c(s._data)!==l;s.data.value=l,s._data.value=l,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),c(s.reserveSelection)?(e.store.assertRowKey(),e.store.updateSelectionByRowKey()):i?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(s,l,i,u){const d=c(s._columns);let f=[];i?(i&&!i.children&&(i.children=[]),i.children.push(l),f=_2(d,i)):(d.push(l),f=d),b2(f),s._columns.value=f,s.updateOrderFns.push(u),l.type==="selection"&&(s.selectable.value=l.selectable,s.reserveSelection.value=l.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},updateColumnOrder(s,l){var i;((i=l.getColumnIndex)==null?void 0:i.call(l))!==l.no&&(b2(s._columns.value),e.$ready&&e.store.updateColumns())},removeColumn(s,l,i,u){const d=c(s._columns)||[];if(i)i.children.splice(i.children.findIndex(p=>p.id===l.id),1),He(()=>{var p;((p=i.children)==null?void 0:p.length)===0&&delete i.children}),s._columns.value=_2(d,i);else{const p=d.indexOf(l);p>-1&&(d.splice(p,1),s._columns.value=d)}const f=s.updateOrderFns.indexOf(u);f>-1&&s.updateOrderFns.splice(f,1),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(s,l){const{prop:i,order:u,init:d}=l;if(i){const f=c(s.columns).find(p=>p.property===i);f&&(f.order=u,e.store.updateSort(f,i,u),e.store.commit("changeSortCondition",{init:d}))}},changeSortCondition(s,l){const{sortingColumn:i,sortProp:u,sortOrder:d}=s,f=c(i),p=c(u),v=c(d);v===null&&(s.sortingColumn.value=null,s.sortProp.value=null);const h={filter:!0};e.store.execQuery(h),(!l||!(l.silent||l.init))&&e.emit("sort-change",{column:f,prop:p,order:v}),e.store.updateTableScrollY()},filterChange(s,l){const{column:i,values:u,silent:d}=l,f=e.store.updateFilters(i,u);e.store.execQuery(),d||e.emit("filter-change",f),e.store.updateTableScrollY()},toggleAllSelection(){e.store.toggleAllSelection()},rowSelectedChanged(s,l){e.store.toggleRowSelection(l),e.store.updateAllSelected()},setHoverRow(s,l){s.hoverRow.value=l},setCurrentRow(s,l){e.store.updateCurrentRow(l)}},commit:function(s,...l){const i=e.store.mutations;if(i[s])i[s].apply(e,[e.store.states].concat(l));else throw new Error(`Action not found: ${s}`)},updateTableScrollY:function(){He(()=>e.layout.updateScrollY.apply(e.layout))}}}const li={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy",data:"data",["treeProps.hasChildren"]:{key:"lazyColumnIdentifier",default:"hasChildren"},["treeProps.children"]:{key:"childrenColumnName",default:"children"}};function OEe(e,t){if(!e)throw new Error("Table is required.");const n=TEe();return n.toggleAllSelection=Un(n._toggleAllSelection,10),Object.keys(li).forEach(r=>{N5(A5(t,r),r,n)}),MEe(n,t),n}function MEe(e,t){Object.keys(li).forEach(n=>{Ce(()=>A5(t,n),r=>{N5(r,n,e)})})}function N5(e,t,n){let r=e,o=li[t];typeof li[t]=="object"&&(o=o.key,r=r||li[t].default),n.states[o].value=r}function A5(e,t){if(t.includes(".")){const n=t.split(".");let r=e;return n.forEach(o=>{r=r[o]}),r}else return e[t]}class NEe{constructor(t){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=P(null),this.scrollX=P(!1),this.scrollY=P(!1),this.bodyWidth=P(null),this.fixedWidth=P(null),this.rightFixedWidth=P(null),this.gutterWidth=0;for(const n in t)mt(t,n)&&(kt(this[n])?this[n].value=t[n]:this[n]=t[n]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){if(this.height.value===null)return!1;const n=this.table.refs.scrollBarRef;if(this.table.vnode.el&&n){let r=!0;const o=this.scrollY.value;return r=n.wrapRef.scrollHeight>n.wrapRef.clientHeight,this.scrollY.value=r,o!==r}return!1}setHeight(t,n="height"){if(!gt)return;const r=this.table.vnode.el;if(t=_Ee(t),this.height.value=Number(t),!r&&(t||t===0))return He(()=>this.setHeight(t,n));typeof t=="number"?(r.style[n]=`${t}px`,this.updateElsHeight()):typeof t=="string"&&(r.style[n]=t,this.updateElsHeight())}setMaxHeight(t){this.setHeight(t,"max-height")}getFlattenColumns(){const t=[];return this.table.store.states.columns.value.forEach(r=>{r.isColumnGroup?t.push.apply(t,r.columns):t.push(r)}),t}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(t){if(!t)return!0;let n=t;for(;n.tagName!=="DIV";){if(getComputedStyle(n).display==="none")return!0;n=n.parentElement}return!1}updateColumnsWidth(){if(!gt)return;const t=this.fit,n=this.table.vnode.el.clientWidth;let r=0;const o=this.getFlattenColumns(),a=o.filter(i=>typeof i.width!="number");if(o.forEach(i=>{typeof i.width=="number"&&i.realWidth&&(i.realWidth=null)}),a.length>0&&t){if(o.forEach(i=>{r+=Number(i.width||i.minWidth||80)}),r<=n){this.scrollX.value=!1;const i=n-r;if(a.length===1)a[0].realWidth=Number(a[0].minWidth||80)+i;else{const u=a.reduce((p,v)=>p+Number(v.minWidth||80),0),d=i/u;let f=0;a.forEach((p,v)=>{if(v===0)return;const h=Math.floor(Number(p.minWidth||80)*d);f+=h,p.realWidth=Number(p.minWidth||80)+h}),a[0].realWidth=Number(a[0].minWidth||80)+i-f}}else this.scrollX.value=!0,a.forEach(i=>{i.realWidth=Number(i.minWidth)});this.bodyWidth.value=Math.max(r,n),this.table.state.resizeState.value.width=this.bodyWidth.value}else o.forEach(i=>{!i.width&&!i.minWidth?i.realWidth=80:i.realWidth=Number(i.width||i.minWidth),r+=i.realWidth}),this.scrollX.value=r>n,this.bodyWidth.value=r;const s=this.store.states.fixedColumns.value;if(s.length>0){let i=0;s.forEach(u=>{i+=Number(u.realWidth||u.width)}),this.fixedWidth.value=i}const l=this.store.states.rightFixedColumns.value;if(l.length>0){let i=0;l.forEach(u=>{i+=Number(u.realWidth||u.width)}),this.rightFixedWidth.value=i}this.notifyObservers("columns")}addObserver(t){this.observers.push(t)}removeObserver(t){const n=this.observers.indexOf(t);n!==-1&&this.observers.splice(n,1)}notifyObservers(t){this.observers.forEach(r=>{var o,a;switch(t){case"columns":(o=r.state)==null||o.onColumnsChange(this);break;case"scrollable":(a=r.state)==null||a.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${t}.`)}})}}const{CheckboxGroup:AEe}=kr,REe=oe({name:"ElTableFilterPanel",components:{ElCheckbox:kr,ElCheckboxGroup:AEe,ElScrollbar:Wo,ElTooltip:Kn,ElIcon:Ke,ArrowDown:Vo,ArrowUp:pu},directives:{ClickOutside:Sa},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function}},setup(e){const t=tt(),{t:n}=Ct(),r=Oe("table-filter"),o=t==null?void 0:t.parent;o.filterPanels.value[e.column.id]||(o.filterPanels.value[e.column.id]=t);const a=P(!1),s=P(null),l=$(()=>e.column&&e.column.filters),i=$({get:()=>{var w;return(((w=e.column)==null?void 0:w.filteredValue)||[])[0]},set:w=>{u.value&&(typeof w<"u"&&w!==null?u.value.splice(0,1,w):u.value.splice(0,1))}}),u=$({get(){return e.column?e.column.filteredValue||[]:[]},set(w){e.column&&e.upDataColumn("filteredValue",w)}}),d=$(()=>e.column?e.column.filterMultiple:!0),f=w=>w.value===i.value,p=()=>{a.value=!1},v=w=>{w.stopPropagation(),a.value=!a.value},h=()=>{a.value=!1},m=()=>{b(u.value),p()},_=()=>{u.value=[],b(u.value),p()},g=w=>{i.value=w,b(typeof w<"u"&&w!==null?u.value:[]),p()},b=w=>{e.store.commit("filterChange",{column:e.column,values:w}),e.store.updateAllSelected()};Ce(a,w=>{e.column&&e.upDataColumn("filterOpened",w)},{immediate:!0});const y=$(()=>{var w,C;return(C=(w=s.value)==null?void 0:w.popperRef)==null?void 0:C.contentRef});return{tooltipVisible:a,multiple:d,filteredValue:u,filterValue:i,filters:l,handleConfirm:m,handleReset:_,handleSelect:g,isActive:f,t:n,ns:r,showFilterPanel:v,hideFilterPanel:h,popperPaneRef:y,tooltip:s}}}),xEe={key:0},IEe=["disabled"],LEe=["label","onClick"];function PEe(e,t,n,r,o,a){const s=nt("el-checkbox"),l=nt("el-checkbox-group"),i=nt("el-scrollbar"),u=nt("arrow-up"),d=nt("arrow-down"),f=nt("el-icon"),p=nt("el-tooltip"),v=wi("click-outside");return E(),me(p,{ref:"tooltip",visible:e.tooltipVisible,offset:0,placement:e.placement,"show-arrow":!1,"stop-popper-mouse-event":!1,teleported:"",effect:"light",pure:"","popper-class":e.ns.b(),persistent:""},{content:ue(()=>[e.multiple?(E(),M("div",xEe,[k("div",{class:N(e.ns.e("content"))},[X(i,{"wrap-class":e.ns.e("wrap")},{default:ue(()=>[X(l,{modelValue:e.filteredValue,"onUpdate:modelValue":t[0]||(t[0]=h=>e.filteredValue=h),class:N(e.ns.e("checkbox-group"))},{default:ue(()=>[(E(!0),M(qe,null,vt(e.filters,h=>(E(),me(s,{key:h.value,label:h.value},{default:ue(()=>[bt(xe(h.text),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","class"])]),_:1},8,["wrap-class"])],2),k("div",{class:N(e.ns.e("bottom"))},[k("button",{class:N({[e.ns.is("disabled")]:e.filteredValue.length===0}),disabled:e.filteredValue.length===0,type:"button",onClick:t[1]||(t[1]=(...h)=>e.handleConfirm&&e.handleConfirm(...h))},xe(e.t("el.table.confirmFilter")),11,IEe),k("button",{type:"button",onClick:t[2]||(t[2]=(...h)=>e.handleReset&&e.handleReset(...h))},xe(e.t("el.table.resetFilter")),1)],2)])):(E(),M("ul",{key:1,class:N(e.ns.e("list"))},[k("li",{class:N([e.ns.e("list-item"),{[e.ns.is("active")]:e.filterValue===void 0||e.filterValue===null}]),onClick:t[3]||(t[3]=h=>e.handleSelect(null))},xe(e.t("el.table.clearFilter")),3),(E(!0),M(qe,null,vt(e.filters,h=>(E(),M("li",{key:h.value,class:N([e.ns.e("list-item"),e.ns.is("active",e.isActive(h))]),label:h.value,onClick:m=>e.handleSelect(h.value)},xe(h.text),11,LEe))),128))],2))]),default:ue(()=>[ot((E(),M("span",{class:N([`${e.ns.namespace.value}-table__column-filter-trigger`,`${e.ns.namespace.value}-none-outline`]),onClick:t[4]||(t[4]=(...h)=>e.showFilterPanel&&e.showFilterPanel(...h))},[X(f,null,{default:ue(()=>[e.column.filterOpened?(E(),me(u,{key:0})):(E(),me(d,{key:1}))]),_:1})],2)),[[v,e.hideFilterPanel,e.popperPaneRef]])]),_:1},8,["visible","placement","popper-class"])}var DEe=Ie(REe,[["render",PEe],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/filter-panel.vue"]]);function R5(e){const t=tt();ou(()=>{n.value.addObserver(t)}),rt(()=>{r(n.value),o(n.value)}),lo(()=>{r(n.value),o(n.value)}),io(()=>{n.value.removeObserver(t)});const n=$(()=>{const a=e.layout;if(!a)throw new Error("Can not find table layout.");return a}),r=a=>{var s;const l=((s=e.vnode.el)==null?void 0:s.querySelectorAll("colgroup > col"))||[];if(!l.length)return;const i=a.getFlattenColumns(),u={};i.forEach(d=>{u[d.id]=d});for(let d=0,f=l.length;d{var s,l;const i=((s=e.vnode.el)==null?void 0:s.querySelectorAll("colgroup > col[name=gutter]"))||[];for(let d=0,f=i.length;d{m.stopPropagation()},a=(m,_)=>{!_.filters&&_.sortable?h(m,_,!1):_.filterable&&!_.sortable&&o(m),r==null||r.emit("header-click",_,m)},s=(m,_)=>{r==null||r.emit("header-contextmenu",_,m)},l=P(null),i=P(!1),u=P({}),d=(m,_)=>{if(gt&&!(_.children&&_.children.length>0)&&l.value&&e.border){i.value=!0;const g=r;t("set-drag-visible",!0);const y=(g==null?void 0:g.vnode.el).getBoundingClientRect().left,w=n.vnode.el.querySelector(`th.${_.id}`),C=w.getBoundingClientRect(),S=C.left-y+30;Xr(w,"noclick"),u.value={startMouseLeft:m.clientX,startLeft:C.right-y,startColumnLeft:C.left-y,tableLeft:y};const O=g==null?void 0:g.refs.resizeProxy;O.style.left=`${u.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const T=R=>{const B=R.clientX-u.value.startMouseLeft,V=u.value.startLeft+B;O.style.left=`${Math.max(S,V)}px`},A=()=>{if(i.value){const{startColumnLeft:R,startLeft:B}=u.value,H=Number.parseInt(O.style.left,10)-R;_.width=_.realWidth=H,g==null||g.emit("header-dragend",_.width,B-R,_,m),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",i.value=!1,l.value=null,u.value={},t("set-drag-visible",!1)}document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",A),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{er(w,"noclick")},0)};document.addEventListener("mousemove",T),document.addEventListener("mouseup",A)}},f=(m,_)=>{var g;if(_.children&&_.children.length>0)return;const b=(g=m.target)==null?void 0:g.closest("th");if(!(!_||!_.resizable)&&!i.value&&e.border){const y=b.getBoundingClientRect(),w=document.body.style;y.width>12&&y.right-m.pageX<8?(w.cursor="col-resize",Ir(b,"is-sortable")&&(b.style.cursor="col-resize"),l.value=_):i.value||(w.cursor="",Ir(b,"is-sortable")&&(b.style.cursor="pointer"),l.value=null)}},p=()=>{gt&&(document.body.style.cursor="")},v=({order:m,sortOrders:_})=>{if(m==="")return _[0];const g=_.indexOf(m||null);return _[g>_.length-2?0:g+1]},h=(m,_,g)=>{var b;m.stopPropagation();const y=_.order===g?null:g||v(_),w=(b=m.target)==null?void 0:b.closest("th");if(w&&Ir(w,"noclick")){er(w,"noclick");return}if(!_.sortable)return;const C=e.store.states;let S=C.sortProp.value,O;const T=C.sortingColumn.value;(T!==_||T===_&&T.order===null)&&(T&&(T.order=null),C.sortingColumn.value=_,S=_.property),y?O=_.order=y:O=_.order=null,C.sortProp.value=S,C.sortOrder.value=O,r==null||r.store.commit("changeSortCondition")};return{handleHeaderClick:a,handleHeaderContextMenu:s,handleMouseDown:d,handleMouseMove:f,handleMouseOut:p,handleSortClick:h,handleFilterClick:o}}function VEe(e){const t=Fe(co),n=Oe("table");return{getHeaderRowStyle:l=>{const i=t==null?void 0:t.props.headerRowStyle;return typeof i=="function"?i.call(null,{rowIndex:l}):i},getHeaderRowClass:l=>{const i=[],u=t==null?void 0:t.props.headerRowClassName;return typeof u=="string"?i.push(u):typeof u=="function"&&i.push(u.call(null,{rowIndex:l})),i.join(" ")},getHeaderCellStyle:(l,i,u,d)=>{var f;let p=(f=t==null?void 0:t.props.headerCellStyle)!=null?f:{};typeof p=="function"&&(p=p.call(null,{rowIndex:l,columnIndex:i,row:u,column:d}));const v=Dv(i,d.fixed,e.store,u);return fl(v,"left"),fl(v,"right"),Object.assign({},p,v)},getHeaderCellClass:(l,i,u,d)=>{const f=Pv(n.b(),i,d.fixed,e.store,u),p=[d.id,d.order,d.headerAlign,d.className,d.labelClassName,...f];d.children||p.push("is-leaf"),d.sortable&&p.push("is-sortable");const v=t==null?void 0:t.props.headerCellClassName;return typeof v=="string"?p.push(v):typeof v=="function"&&p.push(v.call(null,{rowIndex:l,columnIndex:i,row:u,column:d})),p.push(n.e("cell")),p.filter(h=>Boolean(h)).join(" ")}}}const x5=e=>{const t=[];return e.forEach(n=>{n.children?(t.push(n),t.push.apply(t,x5(n.children))):t.push(n)}),t},BEe=e=>{let t=1;const n=(a,s)=>{if(s&&(a.level=s.level+1,t{n(i,a),l+=i.colSpan}),a.colSpan=l}else a.colSpan=1};e.forEach(a=>{a.level=1,n(a,void 0)});const r=[];for(let a=0;a{a.children?(a.rowSpan=1,a.children.forEach(s=>s.isSubColumn=!0)):a.rowSpan=t-a.level+1,r[a.level-1].push(a)}),r};function FEe(e){const t=Fe(co),n=$(()=>BEe(e.store.states.originColumns.value));return{isGroup:$(()=>{const a=n.value.length>1;return a&&t&&(t.state.isGroup.value=!0),a}),toggleAllSelection:a=>{a.stopPropagation(),t==null||t.store.commit("toggleAllSelection")},columnRows:n}}var HEe=oe({name:"ElTableHeader",components:{ElCheckbox:kr},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e,{emit:t}){const n=tt(),r=Fe(co),o=Oe("table"),a=P({}),{onColumnsChange:s,onScrollableChange:l}=R5(r);rt(async()=>{await He(),await He();const{prop:S,order:O}=e.defaultSort;r==null||r.store.commit("sort",{prop:S,order:O,init:!0})});const{handleHeaderClick:i,handleHeaderContextMenu:u,handleMouseDown:d,handleMouseMove:f,handleMouseOut:p,handleSortClick:v,handleFilterClick:h}=zEe(e,t),{getHeaderRowStyle:m,getHeaderRowClass:_,getHeaderCellStyle:g,getHeaderCellClass:b}=VEe(e),{isGroup:y,toggleAllSelection:w,columnRows:C}=FEe(e);return n.state={onColumnsChange:s,onScrollableChange:l},n.filterPanels=a,{ns:o,filterPanels:a,onColumnsChange:s,onScrollableChange:l,columnRows:C,getHeaderRowClass:_,getHeaderRowStyle:m,getHeaderCellClass:b,getHeaderCellStyle:g,handleHeaderClick:i,handleHeaderContextMenu:u,handleMouseDown:d,handleMouseMove:f,handleMouseOut:p,handleSortClick:v,handleFilterClick:h,isGroup:y,toggleAllSelection:w}},render(){const{ns:e,isGroup:t,columnRows:n,getHeaderCellStyle:r,getHeaderCellClass:o,getHeaderRowClass:a,getHeaderRowStyle:s,handleHeaderClick:l,handleHeaderContextMenu:i,handleMouseDown:u,handleMouseMove:d,handleSortClick:f,handleMouseOut:p,store:v,$parent:h}=this;let m=1;return je("thead",{class:{[e.is("group")]:t}},n.map((_,g)=>je("tr",{class:a(g),key:g,style:s(g)},_.map((b,y)=>(b.rowSpan>m&&(m=b.rowSpan),je("th",{class:o(g,y,_,b),colspan:b.colSpan,key:`${b.id}-thead`,rowspan:b.rowSpan,style:r(g,y,_,b),onClick:w=>l(w,b),onContextmenu:w=>i(w,b),onMousedown:w=>u(w,b),onMousemove:w=>d(w,b),onMouseout:p},[je("div",{class:["cell",b.filteredValue&&b.filteredValue.length>0?"highlight":""]},[b.renderHeader?b.renderHeader({column:b,$index:y,store:v,_self:h}):b.label,b.sortable&&je("span",{onClick:w=>f(w,b),class:"caret-wrapper"},[je("i",{onClick:w=>f(w,b,"ascending"),class:"sort-caret ascending"}),je("i",{onClick:w=>f(w,b,"descending"),class:"sort-caret descending"})]),b.filterable&&je(DEe,{store:v,placement:b.filterPlacement||"bottom-start",column:b,upDataColumn:(w,C)=>{b[w]=C}})])]))))))}});function UEe(e){const t=Fe(co),n=P(""),r=P(je("div")),o=(p,v,h)=>{var m;const _=t,g=ep(p);let b;const y=(m=_==null?void 0:_.vnode.el)==null?void 0:m.dataset.prefix;g&&(b=N_({columns:e.store.states.columns.value},g,y),b&&(_==null||_.emit(`cell-${h}`,v,b,g,p))),_==null||_.emit(`row-${h}`,v,b,p)},a=(p,v)=>{o(p,v,"dblclick")},s=(p,v)=>{e.store.commit("setCurrentRow",v),o(p,v,"click")},l=(p,v)=>{o(p,v,"contextmenu")},i=Un(p=>{e.store.commit("setHoverRow",p)},30),u=Un(()=>{e.store.commit("setHoverRow",null)},30);return{handleDoubleClick:a,handleClick:s,handleContextMenu:l,handleMouseEnter:i,handleMouseLeave:u,handleCellMouseEnter:(p,v,h)=>{var m;const _=t,g=ep(p),b=(m=_==null?void 0:_.vnode.el)==null?void 0:m.dataset.prefix;if(g){const O=N_({columns:e.store.states.columns.value},g,b),T=_.hoverState={cell:g,column:O,row:v};_==null||_.emit("cell-mouse-enter",T.row,T.column,T.cell,p)}if(!h)return;const y=p.target.querySelector(".cell");if(!(Ir(y,`${b}-tooltip`)&&y.childNodes.length))return;const w=document.createRange();w.setStart(y,0),w.setEnd(y,y.childNodes.length);const C=Math.round(w.getBoundingClientRect().width),S=(Number.parseInt(wo(y,"paddingLeft"),10)||0)+(Number.parseInt(wo(y,"paddingRight"),10)||0);(C+S>y.offsetWidth||y.scrollWidth>y.offsetWidth)&&wEe(t==null?void 0:t.refs.tableWrapper,g,g.innerText||g.textContent,h)},handleCellMouseLeave:p=>{if(!ep(p))return;const h=t==null?void 0:t.hoverState;t==null||t.emit("cell-mouse-leave",h==null?void 0:h.row,h==null?void 0:h.column,h==null?void 0:h.cell,p)},tooltipContent:n,tooltipTrigger:r}}function KEe(e){const t=Fe(co),n=Oe("table");return{getRowStyle:(u,d)=>{const f=t==null?void 0:t.props.rowStyle;return typeof f=="function"?f.call(null,{row:u,rowIndex:d}):f||null},getRowClass:(u,d)=>{const f=[n.e("row")];t!=null&&t.props.highlightCurrentRow&&u===e.store.states.currentRow.value&&f.push("current-row"),e.stripe&&d%2===1&&f.push(n.em("row","striped"));const p=t==null?void 0:t.props.rowClassName;return typeof p=="string"?f.push(p):typeof p=="function"&&f.push(p.call(null,{row:u,rowIndex:d})),f},getCellStyle:(u,d,f,p)=>{const v=t==null?void 0:t.props.cellStyle;let h=v??{};typeof v=="function"&&(h=v.call(null,{rowIndex:u,columnIndex:d,row:f,column:p}));const m=Dv(d,e==null?void 0:e.fixed,e.store);return fl(m,"left"),fl(m,"right"),Object.assign({},h,m)},getCellClass:(u,d,f,p,v)=>{const h=Pv(n.b(),d,e==null?void 0:e.fixed,e.store,void 0,v),m=[p.id,p.align,p.className,...h],_=t==null?void 0:t.props.cellClassName;return typeof _=="string"?m.push(_):typeof _=="function"&&m.push(_.call(null,{rowIndex:u,columnIndex:d,row:f,column:p})),m.push(n.e("cell")),m.filter(g=>Boolean(g)).join(" ")},getSpan:(u,d,f,p)=>{let v=1,h=1;const m=t==null?void 0:t.props.spanMethod;if(typeof m=="function"){const _=m({row:u,column:d,rowIndex:f,columnIndex:p});Array.isArray(_)?(v=_[0],h=_[1]):typeof _=="object"&&(v=_.rowspan,h=_.colspan)}return{rowspan:v,colspan:h}},getColspanRealWidth:(u,d,f)=>{if(d<1)return u[f].realWidth;const p=u.map(({realWidth:v,width:h})=>v||h).slice(f,f+d);return Number(p.reduce((v,h)=>Number(v)+Number(h),-1))}}}function WEe(e){const t=Fe(co),n=Oe("table"),{handleDoubleClick:r,handleClick:o,handleContextMenu:a,handleMouseEnter:s,handleMouseLeave:l,handleCellMouseEnter:i,handleCellMouseLeave:u,tooltipContent:d,tooltipTrigger:f}=UEe(e),{getRowStyle:p,getRowClass:v,getCellStyle:h,getCellClass:m,getSpan:_,getColspanRealWidth:g}=KEe(e),b=$(()=>e.store.states.columns.value.findIndex(({type:O})=>O==="default")),y=(O,T)=>{const A=t.props.rowKey;return A?Sn(O,A):T},w=(O,T,A,R=!1)=>{const{tooltipEffect:B,tooltipOptions:V,store:H}=e,{indent:U,columns:K}=H.states,I=v(O,T);let x=!0;return A&&(I.push(n.em("row",`level-${A.level}`)),x=A.display),je("tr",{style:[x?null:{display:"none"},p(O,T)],class:I,key:y(O,T),onDblclick:z=>r(z,O),onClick:z=>o(z,O),onContextmenu:z=>a(z,O),onMouseenter:()=>s(T),onMouseleave:l},K.value.map((z,q)=>{const{rowspan:le,colspan:G}=_(O,z,T,q);if(!le||!G)return null;const ae={...z};ae.realWidth=g(K.value,G,q);const be={store:e.store,_self:e.context||t,column:ae,row:O,$index:T,cellIndex:q,expanded:R};q===b.value&&A&&(be.treeNode={indent:A.level*U.value,level:A.level},typeof A.expanded=="boolean"&&(be.treeNode.expanded=A.expanded,"loading"in A&&(be.treeNode.loading=A.loading),"noLazyChildren"in A&&(be.treeNode.noLazyChildren=A.noLazyChildren)));const te=`${T},${q}`,de=ae.columnKey||ae.rawColumnKey||"",Z=C(q,z,be),Y=z.showOverflowTooltip&&Kb({effect:B},V,z.showOverflowTooltip);return je("td",{style:h(T,q,O,z),class:m(T,q,O,z,G-1),key:`${de}${te}`,rowspan:le,colspan:G,onMouseenter:ce=>i(ce,O,Y),onMouseleave:u},[Z])}))},C=(O,T,A)=>T.renderCell(A);return{wrappedRowRender:(O,T)=>{const A=e.store,{isRowExpanded:R,assertRowKey:B}=A,{treeData:V,lazyTreeNodeMap:H,childrenColumnName:U,rowKey:K}=A.states,I=A.states.columns.value;if(I.some(({type:L})=>L==="expand")){const L=R(O),z=w(O,T,void 0,L),q=t.renderExpanded;return L?q?[[z,je("tr",{key:`expanded-row__${z.key}`},[je("td",{colspan:I.length,class:`${n.e("cell")} ${n.e("expanded-cell")}`},[q({row:O,$index:T,store:A,expanded:L})])])]]:(console.error("[Element Error]renderExpanded is required."),z):[[z]]}else if(Object.keys(V.value).length){B();const L=Sn(O,K.value);let z=V.value[L],q=null;z&&(q={expanded:z.expanded,level:z.level,display:!0},typeof z.lazy=="boolean"&&(typeof z.loaded=="boolean"&&z.loaded&&(q.noLazyChildren=!(z.children&&z.children.length)),q.loading=z.loading));const le=[w(O,T,q)];if(z){let G=0;const ae=(te,de)=>{te&&te.length&&de&&te.forEach(Z=>{const Y={display:de.display&&de.expanded,level:de.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ce=Sn(Z,K.value);if(ce==null)throw new Error("For nested data item, row-key is required.");if(z={...V.value[ce]},z&&(Y.expanded=z.expanded,z.level=z.level||Y.level,z.display=!!(z.expanded&&Y.display),typeof z.lazy=="boolean"&&(typeof z.loaded=="boolean"&&z.loaded&&(Y.noLazyChildren=!(z.children&&z.children.length)),Y.loading=z.loading)),G++,le.push(w(Z,T+G,Y)),z){const ve=H.value[ce]||Z[U.value];ae(ve,z)}})};z.display=!0;const be=H.value[L]||O[U.value];ae(be,z)}return le}else return w(O,T,void 0)},tooltipContent:d,tooltipTrigger:f}}const jEe={store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,tooltipOptions:{type:Object},context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean};var qEe=oe({name:"ElTableBody",props:jEe,setup(e){const t=tt(),n=Fe(co),r=Oe("table"),{wrappedRowRender:o,tooltipContent:a,tooltipTrigger:s}=WEe(e),{onColumnsChange:l,onScrollableChange:i}=R5(n);return Ce(e.store.states.hoverRow,(u,d)=>{if(!e.store.states.isComplex.value||!gt)return;let f=window.requestAnimationFrame;f||(f=p=>window.setTimeout(p,16)),f(()=>{const p=t==null?void 0:t.vnode.el,v=Array.from((p==null?void 0:p.children)||[]).filter(_=>_==null?void 0:_.classList.contains(`${r.e("row")}`)),h=v[d],m=v[u];h&&er(h,"hover-row"),m&&Xr(m,"hover-row")})}),io(()=>{var u;(u=go)==null||u()}),{ns:r,onColumnsChange:l,onScrollableChange:i,wrappedRowRender:o,tooltipContent:a,tooltipTrigger:s}},render(){const{wrappedRowRender:e,store:t}=this,n=t.states.data.value||[];return je("tbody",{},[n.reduce((r,o)=>r.concat(e(o,r.length)),[])])}});function zv(e){const t=e.tableLayout==="auto";let n=e.columns||[];t&&n.every(o=>o.width===void 0)&&(n=[]);const r=o=>{const a={key:`${e.tableLayout}_${o.id}`,style:{},name:void 0};return t?a.style={width:`${o.width}px`}:a.name=o.id,a};return je("colgroup",{},n.map(o=>je("col",r(o))))}zv.props=["columns","tableLayout"];function GEe(){const e=Fe(co),t=e==null?void 0:e.store,n=$(()=>t.states.fixedLeafColumnsLength.value),r=$(()=>t.states.rightFixedColumns.value.length),o=$(()=>t.states.columns.value.length),a=$(()=>t.states.fixedColumns.value.length),s=$(()=>t.states.rightFixedColumns.value.length);return{leftFixedLeafCount:n,rightFixedLeafCount:r,columnsCount:o,leftFixedCount:a,rightFixedCount:s,columns:t.states.columns}}function YEe(e){const{columns:t}=GEe(),n=Oe("table");return{getCellClasses:(a,s)=>{const l=a[s],i=[n.e("cell"),l.id,l.align,l.labelClassName,...Pv(n.b(),s,l.fixed,e.store)];return l.className&&i.push(l.className),l.children||i.push(n.is("leaf")),i},getCellStyles:(a,s)=>{const l=Dv(s,a.fixed,e.store);return fl(l,"left"),fl(l,"right"),l},columns:t}}var XEe=oe({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const{getCellClasses:t,getCellStyles:n,columns:r}=YEe(e);return{ns:Oe("table"),getCellClasses:t,getCellStyles:n,columns:r}},render(){const{columns:e,getCellStyles:t,getCellClasses:n,summaryMethod:r,sumText:o,ns:a}=this,s=this.store.states.data.value;let l=[];return r?l=r({columns:e,data:s}):e.forEach((i,u)=>{if(u===0){l[u]=o;return}const d=s.map(h=>Number(h[i.property])),f=[];let p=!0;d.forEach(h=>{if(!Number.isNaN(+h)){p=!1;const m=`${h}`.split(".")[1];f.push(m?m.length:0)}});const v=Math.max.apply(null,f);p?l[u]="":l[u]=d.reduce((h,m)=>{const _=Number(m);return Number.isNaN(+_)?h:Number.parseFloat((h+m).toFixed(Math.min(v,20)))},0)}),je("table",{class:a.e("footer"),cellspacing:"0",cellpadding:"0",border:"0"},[zv({columns:e}),je("tbody",[je("tr",{},[...e.map((i,u)=>je("td",{key:u,colspan:i.colSpan,rowspan:i.rowSpan,class:n(e,u),style:t(i,u)},[je("div",{class:["cell",i.labelClassName]},[l[u]])]))])])])}});function ZEe(e){return{setCurrentRow:d=>{e.commit("setCurrentRow",d)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(d,f)=>{e.toggleRowSelection(d,f,!1),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:d=>{e.clearFilter(d)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(d,f)=>{e.toggleRowExpansionAdapter(d,f)},clearSort:()=>{e.clearSort()},sort:(d,f)=>{e.commit("sort",{prop:d,order:f})}}}function JEe(e,t,n,r){const o=P(!1),a=P(null),s=P(!1),l=L=>{s.value=L},i=P({width:null,height:null,headerHeight:null}),u=P(!1),d={display:"inline-block",verticalAlign:"middle"},f=P(),p=P(0),v=P(0),h=P(0),m=P(0);Qn(()=>{t.setHeight(e.height)}),Qn(()=>{t.setMaxHeight(e.maxHeight)}),Ce(()=>[e.currentRowKey,n.states.rowKey],([L,z])=>{!c(z)||!c(L)||n.setCurrentRowKey(`${L}`)},{immediate:!0}),Ce(()=>e.data,L=>{r.store.commit("setData",L)},{immediate:!0,deep:!0}),Qn(()=>{e.expandRowKeys&&n.setExpandRowKeysAdapter(e.expandRowKeys)});const _=()=>{r.store.commit("setHoverRow",null),r.hoverState&&(r.hoverState=null)},g=(L,z)=>{const{pixelX:q,pixelY:le}=z;Math.abs(q)>=Math.abs(le)&&(r.refs.bodyWrapper.scrollLeft+=z.pixelX/5)},b=$(()=>e.height||e.maxHeight||n.states.fixedColumns.value.length>0||n.states.rightFixedColumns.value.length>0),y=$(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),w=()=>{b.value&&t.updateElsHeight(),t.updateColumnsWidth(),requestAnimationFrame(T)};rt(async()=>{await He(),n.updateColumns(),A(),requestAnimationFrame(w);const L=r.vnode.el,z=r.refs.headerWrapper;e.flexible&&L&&L.parentElement&&(L.parentElement.style.minWidth="0"),i.value={width:f.value=L.offsetWidth,height:L.offsetHeight,headerHeight:e.showHeader&&z?z.offsetHeight:null},n.states.columns.value.forEach(q=>{q.filteredValue&&q.filteredValue.length&&r.store.commit("filterChange",{column:q,values:q.filteredValue,silent:!0})}),r.$ready=!0});const C=(L,z)=>{if(!L)return;const q=Array.from(L.classList).filter(le=>!le.startsWith("is-scrolling-"));q.push(t.scrollX.value?z:"is-scrolling-none"),L.className=q.join(" ")},S=L=>{const{tableWrapper:z}=r.refs;C(z,L)},O=L=>{const{tableWrapper:z}=r.refs;return!!(z&&z.classList.contains(L))},T=function(){if(!r.refs.scrollBarRef)return;if(!t.scrollX.value){const te="is-scrolling-none";O(te)||S(te);return}const L=r.refs.scrollBarRef.wrapRef;if(!L)return;const{scrollLeft:z,offsetWidth:q,scrollWidth:le}=L,{headerWrapper:G,footerWrapper:ae}=r.refs;G&&(G.scrollLeft=z),ae&&(ae.scrollLeft=z);const be=le-q-1;z>=be?S("is-scrolling-right"):S(z===0?"is-scrolling-left":"is-scrolling-middle")},A=()=>{r.refs.scrollBarRef&&(r.refs.scrollBarRef.wrapRef&&Dt(r.refs.scrollBarRef.wrapRef,"scroll",T,{passive:!0}),e.fit?Rn(r.vnode.el,R):Dt(window,"resize",R),Rn(r.refs.bodyWrapper,()=>{var L,z;R(),(z=(L=r.refs)==null?void 0:L.scrollBarRef)==null||z.update()}))},R=()=>{var L,z,q;const le=r.vnode.el;if(!r.$ready||!le)return;let G=!1;const{width:ae,height:be,headerHeight:te}=i.value,de=f.value=le.offsetWidth;ae!==de&&(G=!0);const Z=le.offsetHeight;(e.height||b.value)&&be!==Z&&(G=!0);const Y=e.tableLayout==="fixed"?r.refs.headerWrapper:(L=r.refs.tableHeaderRef)==null?void 0:L.$el;e.showHeader&&(Y==null?void 0:Y.offsetHeight)!==te&&(G=!0),p.value=((z=r.refs.tableWrapper)==null?void 0:z.scrollHeight)||0,h.value=(Y==null?void 0:Y.scrollHeight)||0,m.value=((q=r.refs.footerWrapper)==null?void 0:q.offsetHeight)||0,v.value=p.value-h.value-m.value,G&&(i.value={width:de,height:Z,headerHeight:e.showHeader&&(Y==null?void 0:Y.offsetHeight)||0},w())},B=sn(),V=$(()=>{const{bodyWidth:L,scrollY:z,gutterWidth:q}=t;return L.value?`${L.value-(z.value?q:0)}px`:""}),H=$(()=>e.maxHeight?"fixed":e.tableLayout),U=$(()=>{if(e.data&&e.data.length)return null;let L="100%";e.height&&v.value&&(L=`${v.value}px`);const z=f.value;return{width:z?`${z}px`:"",height:L}}),K=$(()=>e.height?{height:Number.isNaN(Number(e.height))?e.height:`${e.height}px`}:e.maxHeight?{maxHeight:Number.isNaN(Number(e.maxHeight))?e.maxHeight:`${e.maxHeight}px`}:{}),I=$(()=>{if(e.height)return{height:"100%"};if(e.maxHeight){if(Number.isNaN(Number(e.maxHeight)))return{maxHeight:`calc(${e.maxHeight} - ${h.value+m.value}px)`};{const L=e.maxHeight;if(p.value>=Number(L))return{maxHeight:`${p.value-h.value-m.value}px`}}}return{}});return{isHidden:o,renderExpanded:a,setDragVisible:l,isGroup:u,handleMouseLeave:_,handleHeaderFooterMousewheel:g,tableSize:B,emptyBlockStyle:U,handleFixedMousewheel:(L,z)=>{const q=r.refs.bodyWrapper;if(Math.abs(z.spinY)>0){const le=q.scrollTop;z.pixelY<0&&le!==0&&L.preventDefault(),z.pixelY>0&&q.scrollHeight-q.clientHeight>le&&L.preventDefault(),q.scrollTop+=Math.ceil(z.pixelY/5)}else q.scrollLeft+=Math.ceil(z.pixelX/5)},resizeProxyVisible:s,bodyWidth:V,resizeState:i,doLayout:w,tableBodyStyles:y,tableLayout:H,scrollbarViewStyle:d,tableInnerStyle:K,scrollbarStyle:I}}function QEe(e){const t=P(),n=()=>{const o=e.vnode.el.querySelector(".hidden-columns"),a={childList:!0,subtree:!0},s=e.store.states.updateOrderFns;t.value=new MutationObserver(()=>{s.forEach(l=>l())}),t.value.observe(o,a)};rt(()=>{n()}),io(()=>{var r;(r=t.value)==null||r.disconnect()})}var e9e={data:{type:Array,default:()=>[]},size:On,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children"})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:{type:Boolean,default:!1},flexible:Boolean};const t9e=()=>{const e=P(),t=(a,s)=>{const l=e.value;l&&l.scrollTo(a,s)},n=(a,s)=>{const l=e.value;l&&Ze(s)&&["Top","Left"].includes(a)&&l[`setScroll${a}`](s)};return{scrollBarRef:e,scrollTo:t,setScrollTop:a=>n("Top",a),setScrollLeft:a=>n("Left",a)}};let n9e=1;const r9e=oe({name:"ElTable",directives:{Mousewheel:lve},components:{TableHeader:HEe,TableBody:qEe,TableFooter:XEe,ElScrollbar:Wo,hColgroup:zv},props:e9e,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change"],setup(e){const{t}=Ct(),n=Oe("table"),r=tt();ct(co,r);const o=OEe(r,e);r.store=o;const a=new NEe({store:r.store,table:r,fit:e.fit,showHeader:e.showHeader});r.layout=a;const s=$(()=>(o.states.data.value||[]).length===0),{setCurrentRow:l,getSelectionRows:i,toggleRowSelection:u,clearSelection:d,clearFilter:f,toggleAllSelection:p,toggleRowExpansion:v,clearSort:h,sort:m}=ZEe(o),{isHidden:_,renderExpanded:g,setDragVisible:b,isGroup:y,handleMouseLeave:w,handleHeaderFooterMousewheel:C,tableSize:S,emptyBlockStyle:O,handleFixedMousewheel:T,resizeProxyVisible:A,bodyWidth:R,resizeState:B,doLayout:V,tableBodyStyles:H,tableLayout:U,scrollbarViewStyle:K,tableInnerStyle:I,scrollbarStyle:x}=JEe(e,a,o,r),{scrollBarRef:L,scrollTo:z,setScrollLeft:q,setScrollTop:le}=t9e(),G=Un(V,50),ae=`${n.namespace.value}-table_${n9e++}`;r.tableId=ae,r.state={isGroup:y,resizeState:B,doLayout:V,debouncedUpdateLayout:G};const be=$(()=>e.sumText||t("el.table.sumText")),te=$(()=>e.emptyText||t("el.table.emptyText"));return QEe(r),{ns:n,layout:a,store:o,handleHeaderFooterMousewheel:C,handleMouseLeave:w,tableId:ae,tableSize:S,isHidden:_,isEmpty:s,renderExpanded:g,resizeProxyVisible:A,resizeState:B,isGroup:y,bodyWidth:R,tableBodyStyles:H,emptyBlockStyle:O,debouncedUpdateLayout:G,handleFixedMousewheel:T,setCurrentRow:l,getSelectionRows:i,toggleRowSelection:u,clearSelection:d,clearFilter:f,toggleAllSelection:p,toggleRowExpansion:v,clearSort:h,doLayout:V,sort:m,t,setDragVisible:b,context:r,computedSumText:be,computedEmptyText:te,tableLayout:U,scrollbarViewStyle:K,tableInnerStyle:I,scrollbarStyle:x,scrollBarRef:L,scrollTo:z,setScrollLeft:q,setScrollTop:le}}}),o9e=["data-prefix"],a9e={ref:"hiddenColumns",class:"hidden-columns"};function s9e(e,t,n,r,o,a){const s=nt("hColgroup"),l=nt("table-header"),i=nt("table-body"),u=nt("el-scrollbar"),d=nt("table-footer"),f=wi("mousewheel");return E(),M("div",{ref:"tableWrapper",class:N([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:We(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:t[0]||(t[0]=p=>e.handleMouseLeave())},[k("div",{class:N(e.ns.e("inner-wrapper")),style:We(e.tableInnerStyle)},[k("div",a9e,[ke(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?ot((E(),M("div",{key:0,ref:"headerWrapper",class:N(e.ns.e("header-wrapper"))},[k("table",{ref:"tableHeader",class:N(e.ns.e("header")),style:We(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[X(s,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),X(l,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])],6)],2)),[[f,e.handleHeaderFooterMousewheel]]):fe("v-if",!0),k("div",{ref:"bodyWrapper",class:N(e.ns.e("body-wrapper"))},[X(u,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn},{default:ue(()=>[k("table",{ref:"tableBody",class:N(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:We({width:e.bodyWidth,tableLayout:e.tableLayout})},[X(s,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(E(),me(l,{key:0,ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])):fe("v-if",!0),X(i,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.tooltipEffect,"tooltip-options":e.tooltipOptions,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","tooltip-options","row-style","store","stripe"])],6),e.isEmpty?(E(),M("div",{key:0,ref:"emptyBlock",style:We(e.emptyBlockStyle),class:N(e.ns.e("empty-block"))},[k("span",{class:N(e.ns.e("empty-text"))},[ke(e.$slots,"empty",{},()=>[bt(xe(e.computedEmptyText),1)])],2)],6)):fe("v-if",!0),e.$slots.append?(E(),M("div",{key:1,ref:"appendWrapper",class:N(e.ns.e("append-wrapper"))},[ke(e.$slots,"append")],2)):fe("v-if",!0)]),_:3},8,["view-style","wrap-style","always"])],2),e.showSummary?ot((E(),M("div",{key:1,ref:"footerWrapper",class:N(e.ns.e("footer-wrapper"))},[X(d,{border:e.border,"default-sort":e.defaultSort,store:e.store,style:We(e.tableBodyStyles),"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","style","sum-text","summary-method"])],2)),[[yt,!e.isEmpty],[f,e.handleHeaderFooterMousewheel]]):fe("v-if",!0),e.border||e.isGroup?(E(),M("div",{key:2,class:N(e.ns.e("border-left-patch"))},null,2)):fe("v-if",!0)],6),ot(k("div",{ref:"resizeProxy",class:N(e.ns.e("column-resize-proxy"))},null,2),[[yt,e.resizeProxyVisible]])],46,o9e)}var l9e=Ie(r9e,[["render",s9e],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/table.vue"]]);const i9e={selection:"table-column--selection",expand:"table__expand-column"},u9e={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},c9e=e=>i9e[e]||"",d9e={selection:{renderHeader({store:e}){function t(){return e.states.data.value&&e.states.data.value.length===0}return je(kr,{disabled:t(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":e.toggleAllSelection,modelValue:e.states.isAllSelected.value})},renderCell({row:e,column:t,store:n,$index:r}){return je(kr,{disabled:t.selectable?!t.selectable.call(null,e,r):!1,size:n.states.tableSize.value,onChange:()=>{n.commit("rowSelectedChanged",e)},onClick:o=>o.stopPropagation(),modelValue:n.isSelected(e)})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let n=t+1;const r=e.index;return typeof r=="number"?n=t+r:typeof r=="function"&&(n=r(t)),je("div",{},[n])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({row:e,store:t,expanded:n}){const{ns:r}=t,o=[r.e("expand-icon")];return n&&o.push(r.em("expand-icon","expanded")),je("div",{class:o,onClick:function(s){s.stopPropagation(),t.toggleRowExpansion(e)}},{default:()=>[je(Ke,null,{default:()=>[je(An)]})]})},sortable:!1,resizable:!1}};function f9e({row:e,column:t,$index:n}){var r;const o=t.property,a=o&&sc(e,o).value;return t&&t.formatter?t.formatter(e,t,a,n):((r=a==null?void 0:a.toString)==null?void 0:r.call(a))||""}function p9e({row:e,treeNode:t,store:n},r=!1){const{ns:o}=n;if(!t)return r?[je("span",{class:o.e("placeholder")})]:null;const a=[],s=function(l){l.stopPropagation(),!t.loading&&n.loadOrToggle(e)};if(t.indent&&a.push(je("span",{class:o.e("indent"),style:{"padding-left":`${t.indent}px`}})),typeof t.expanded=="boolean"&&!t.noLazyChildren){const l=[o.e("expand-icon"),t.expanded?o.em("expand-icon","expanded"):""];let i=An;t.loading&&(i=Fo),a.push(je("div",{class:l,onClick:s},{default:()=>[je(Ke,{class:{[o.is("loading")]:t.loading}},{default:()=>[je(i)]})]}))}else a.push(je("span",{class:o.e("placeholder")}));return a}function x_(e,t){return e.reduce((n,r)=>(n[r]=r,n),t)}function h9e(e,t){const n=tt();return{registerComplexWatchers:()=>{const a=["fixed"],s={realWidth:"width",realMinWidth:"minWidth"},l=x_(a,s);Object.keys(l).forEach(i=>{const u=s[i];mt(t,u)&&Ce(()=>t[u],d=>{let f=d;u==="width"&&i==="realWidth"&&(f=Lv(d)),u==="minWidth"&&i==="realMinWidth"&&(f=T5(d)),n.columnConfig.value[u]=f,n.columnConfig.value[i]=f;const p=u==="fixed";e.value.store.scheduleLayout(p)})})},registerNormalWatchers:()=>{const a=["label","filters","filterMultiple","sortable","index","formatter","className","labelClassName","showOverflowTooltip"],s={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},l=x_(a,s);Object.keys(l).forEach(i=>{const u=s[i];mt(t,u)&&Ce(()=>t[u],d=>{n.columnConfig.value[i]=d})})}}}function v9e(e,t,n){const r=tt(),o=P(""),a=P(!1),s=P(),l=P(),i=Oe("table");Qn(()=>{s.value=e.align?`is-${e.align}`:null,s.value}),Qn(()=>{l.value=e.headerAlign?`is-${e.headerAlign}`:s.value,l.value});const u=$(()=>{let w=r.vnode.vParent||r.parent;for(;w&&!w.tableId&&!w.columnId;)w=w.vnode.vParent||w.parent;return w}),d=$(()=>{const{store:w}=r.parent;if(!w)return!1;const{treeData:C}=w.states,S=C.value;return S&&Object.keys(S).length>0}),f=P(Lv(e.width)),p=P(T5(e.minWidth)),v=w=>(f.value&&(w.width=f.value),p.value&&(w.minWidth=p.value),!f.value&&p.value&&(w.width=void 0),w.minWidth||(w.minWidth=80),w.realWidth=Number(w.width===void 0?w.minWidth:w.width),w),h=w=>{const C=w.type,S=d9e[C]||{};Object.keys(S).forEach(T=>{const A=S[T];T!=="className"&&A!==void 0&&(w[T]=A)});const O=c9e(C);if(O){const T=`${c(i.namespace)}-${O}`;w.className=w.className?`${w.className} ${T}`:T}return w},m=w=>{Array.isArray(w)?w.forEach(S=>C(S)):C(w);function C(S){var O;((O=S==null?void 0:S.type)==null?void 0:O.name)==="ElTableColumn"&&(S.vParent=r)}};return{columnId:o,realAlign:s,isSubColumn:a,realHeaderAlign:l,columnOrTableParent:u,setColumnWidth:v,setColumnForcedProps:h,setColumnRenders:w=>{e.renderHeader||w.type!=="selection"&&(w.renderHeader=S=>{r.columnConfig.value.label;const O=t.header;return O?O(S):w.label});let C=w.renderCell;return w.type==="expand"?(w.renderCell=S=>je("div",{class:"cell"},[C(S)]),n.value.renderExpanded=S=>t.default?t.default(S):t.default):(C=C||f9e,w.renderCell=S=>{let O=null;if(t.default){const B=t.default(S);O=B.some(V=>V.type!==bn)?B:C(S)}else O=C(S);const T=d.value&&S.cellIndex===0&&S.column.type!=="selection",A=p9e(S,T),R={class:"cell",style:{}};return w.showOverflowTooltip&&(R.class=`${R.class} ${c(i.namespace)}-tooltip`,R.style={width:`${(S.column.realWidth||Number(S.column.width))-1}px`}),m(O),je("div",R,[A,O])}),w},getPropsData:(...w)=>w.reduce((C,S)=>(Array.isArray(S)&&S.forEach(O=>{C[O]=e[O]}),C),{}),getColumnElIndex:(w,C)=>Array.prototype.indexOf.call(w,C),updateColumnOrder:()=>{n.value.store.commit("updateColumnOrder",r.columnConfig.value)}}}var m9e={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showOverflowTooltip:[Boolean,Object],fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let g9e=1;var I5=oe({name:"ElTableColumn",components:{ElCheckbox:kr},props:m9e,setup(e,{slots:t}){const n=tt(),r=P({}),o=$(()=>{let y=n.parent;for(;y&&!y.tableId;)y=y.parent;return y}),{registerNormalWatchers:a,registerComplexWatchers:s}=h9e(o,e),{columnId:l,isSubColumn:i,realHeaderAlign:u,columnOrTableParent:d,setColumnWidth:f,setColumnForcedProps:p,setColumnRenders:v,getPropsData:h,getColumnElIndex:m,realAlign:_,updateColumnOrder:g}=v9e(e,t,o),b=d.value;l.value=`${b.tableId||b.columnId}_column_${g9e++}`,ou(()=>{i.value=o.value!==b;const y=e.type||"default",w=e.sortable===""?!0:e.sortable,C={...u9e[y],id:l.value,type:y,property:e.prop||e.property,align:_,headerAlign:u,showOverflowTooltip:e.showOverflowTooltip,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:w,index:e.index,rawColumnKey:n.vnode.key};let R=h(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement"]);R=gEe(C,R),R=bEe(v,f,p)(R),r.value=R,a(),s()}),rt(()=>{var y;const w=d.value,C=i.value?w.vnode.el.children:(y=w.refs.hiddenColumns)==null?void 0:y.children,S=()=>m(C||[],n.vnode.el);r.value.getColumnIndex=S,S()>-1&&o.value.store.commit("insertColumn",r.value,i.value?w.columnConfig.value:null,g)}),Ut(()=>{o.value.store.commit("removeColumn",r.value,i.value?b.columnConfig.value:null,g)}),n.columnId=l.value,n.columnConfig=r},render(){var e,t,n;try{const r=(t=(e=this.$slots).default)==null?void 0:t.call(e,{row:{},column:{},$index:-1}),o=[];if(Array.isArray(r))for(const s of r)((n=s.type)==null?void 0:n.name)==="ElTableColumn"||s.shapeFlag&2?o.push(s):s.type===qe&&Array.isArray(s.children)&&s.children.forEach(l=>{(l==null?void 0:l.patchFlag)!==1024&&!Qe(l==null?void 0:l.children)&&o.push(l)});return je("div",o)}catch{return je("div",[])}}});const _9e=lt(l9e,{TableColumn:I5}),b9e=Jt(I5);var Ui=(e=>(e.ASC="asc",e.DESC="desc",e))(Ui||{}),Ki=(e=>(e.CENTER="center",e.RIGHT="right",e))(Ki||{}),L5=(e=>(e.LEFT="left",e.RIGHT="right",e))(L5||{});const y2={asc:"desc",desc:"asc"},Wi=Symbol("placeholder"),y9e=(e,t,n)=>{var r;const o={flexGrow:0,flexShrink:0,...n?{}:{flexGrow:e.flexGrow||0,flexShrink:e.flexShrink||1}};n||(o.flexShrink=1);const a={...(r=e.style)!=null?r:{},...o,flexBasis:"auto",width:e.width};return t||(e.maxWidth&&(a.maxWidth=e.maxWidth),e.minWidth&&(a.minWidth=e.minWidth)),a};function w9e(e,t,n){const r=$(()=>c(t).filter(m=>!m.hidden)),o=$(()=>c(r).filter(m=>m.fixed==="left"||m.fixed===!0)),a=$(()=>c(r).filter(m=>m.fixed==="right")),s=$(()=>c(r).filter(m=>!m.fixed)),l=$(()=>{const m=[];return c(o).forEach(_=>{m.push({..._,placeholderSign:Wi})}),c(s).forEach(_=>{m.push(_)}),c(a).forEach(_=>{m.push({..._,placeholderSign:Wi})}),m}),i=$(()=>c(o).length||c(a).length),u=$(()=>c(t).reduce((_,g)=>(_[g.key]=y9e(g,c(n),e.fixed),_),{})),d=$(()=>c(r).reduce((m,_)=>m+_.width,0)),f=m=>c(t).find(_=>_.key===m),p=m=>c(u)[m],v=(m,_)=>{m.width=_};function h(m){var _;const{key:g}=m.currentTarget.dataset;if(!g)return;const{sortState:b,sortBy:y}=e;let w=Ui.ASC;dt(b)?w=y2[b[g]]:w=y2[y.order],(_=e.onColumnSort)==null||_.call(e,{column:f(g),key:g,order:w})}return{columns:t,columnsStyles:u,columnsTotalWidth:d,fixedColumnsOnLeft:o,fixedColumnsOnRight:a,hasFixedColumns:i,mainColumns:l,normalColumns:s,visibleColumns:r,getColumn:f,getColumnStyle:p,updateColumnWidth:v,onColumnSorted:h}}const E9e=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:o})=>{const a=P({scrollLeft:0,scrollTop:0});function s(v){var h,m,_;const{scrollTop:g}=v;(h=t.value)==null||h.scrollTo(v),(m=n.value)==null||m.scrollToTop(g),(_=r.value)==null||_.scrollToTop(g)}function l(v){a.value=v,s(v)}function i(v){a.value.scrollTop=v,s(c(a))}function u(v){var h,m;a.value.scrollLeft=v,(m=(h=t.value)==null?void 0:h.scrollTo)==null||m.call(h,c(a))}function d(v){var h;l(v),(h=e.onScroll)==null||h.call(e,v)}function f({scrollTop:v}){const{scrollTop:h}=c(a);v!==h&&i(v)}function p(v,h="auto"){var m;(m=t.value)==null||m.scrollToRow(v,h)}return Ce(()=>c(a).scrollTop,(v,h)=>{v>h&&o()}),{scrollPos:a,scrollTo:l,scrollToLeft:u,scrollToTop:i,scrollToRow:p,onScroll:d,onVerticalScroll:f}},C9e=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:o})=>{const a=tt(),{emit:s}=a,l=xt(!1),i=xt(null),u=P(e.defaultExpandedRowKeys||[]),d=P(-1),f=xt(null),p=P({}),v=P({}),h=xt({}),m=xt({}),_=xt({}),g=$(()=>Ze(e.estimatedRowHeight));function b(A){var R;(R=e.onRowsRendered)==null||R.call(e,A),A.rowCacheEnd>c(d)&&(d.value=A.rowCacheEnd)}function y({hovered:A,rowKey:R}){i.value=A?R:null}function w({expanded:A,rowData:R,rowIndex:B,rowKey:V}){var H,U;const K=[...c(u)],I=K.indexOf(V);A?I===-1&&K.push(V):I>-1&&K.splice(I,1),u.value=K,s("update:expandedRowKeys",K),(H=e.onRowExpand)==null||H.call(e,{expanded:A,rowData:R,rowIndex:B,rowKey:V}),(U=e.onExpandedRowsChange)==null||U.call(e,K)}const C=Un(()=>{var A,R,B,V;l.value=!0,p.value={...c(p),...c(v)},S(c(f),!1),v.value={},f.value=null,(A=t.value)==null||A.forceUpdate(),(R=n.value)==null||R.forceUpdate(),(B=r.value)==null||B.forceUpdate(),(V=a.proxy)==null||V.$forceUpdate(),l.value=!1},0);function S(A,R=!1){c(g)&&[t,n,r].forEach(B=>{const V=c(B);V&&V.resetAfterRowIndex(A,R)})}function O(A,R,B){const V=c(f);(V===null||V>B)&&(f.value=B),v.value[A]=R}function T({rowKey:A,height:R,rowIndex:B},V){V?V===L5.RIGHT?_.value[A]=R:h.value[A]=R:m.value[A]=R;const H=Math.max(...[h,_,m].map(U=>U.value[A]||0));c(p)[A]!==H&&(O(A,H,B),C())}return Ce(d,()=>o()),{hoveringRowKey:i,expandedRowKeys:u,lastRenderedRowIndex:d,isDynamic:g,isResetting:l,rowHeights:p,resetAfterIndex:S,onRowExpanded:w,onRowHovered:y,onRowsRendered:b,onRowHeightChange:T}},S9e=(e,{expandedRowKeys:t,lastRenderedRowIndex:n,resetAfterIndex:r})=>{const o=P({}),a=$(()=>{const l={},{data:i,rowKey:u}=e,d=c(t);if(!d||!d.length)return i;const f=[],p=new Set;d.forEach(h=>p.add(h));let v=i.slice();for(v.forEach(h=>l[h[u]]=0);v.length>0;){const h=v.shift();f.push(h),p.has(h[u])&&Array.isArray(h.children)&&h.children.length>0&&(v=[...h.children,...v],h.children.forEach(m=>l[m[u]]=l[h[u]]+1))}return o.value=l,f}),s=$(()=>{const{data:l,expandColumnKey:i}=e;return i?c(a):l});return Ce(s,(l,i)=>{l!==i&&(n.value=-1,r(0,!0))}),{data:s,depthMap:o}},k9e=(e,t)=>e+t,wc=e=>Ve(e)?e.reduce(k9e,0):e,ls=(e,t,n={})=>Xe(e)?e(t):e??n,ia=e=>(["width","maxWidth","minWidth","height"].forEach(t=>{e[t]=on(e[t])}),e),P5=e=>Vt(e)?t=>je(e,t):e,$9e=(e,{columnsTotalWidth:t,data:n,fixedColumnsOnLeft:r,fixedColumnsOnRight:o})=>{const a=$(()=>{const{fixed:y,width:w,vScrollbarSize:C}=e,S=w-C;return y?Math.max(Math.round(c(t)),S):S}),s=$(()=>c(a)+(e.fixed?e.vScrollbarSize:0)),l=$(()=>{const{height:y=0,maxHeight:w=0,footerHeight:C,hScrollbarSize:S}=e;if(w>0){const O=c(h),T=c(i),R=c(v)+O+T+S;return Math.min(R,w-C)}return y-C}),i=$(()=>{const{rowHeight:y,estimatedRowHeight:w}=e,C=c(n);return Ze(w)?C.length*w:C.length*y}),u=$(()=>{const{maxHeight:y}=e,w=c(l);if(Ze(y)&&y>0)return w;const C=c(i)+c(v)+c(h);return Math.min(w,C)}),d=y=>y.width,f=$(()=>wc(c(r).map(d))),p=$(()=>wc(c(o).map(d))),v=$(()=>wc(e.headerHeight)),h=$(()=>{var y;return(((y=e.fixedData)==null?void 0:y.length)||0)*e.rowHeight}),m=$(()=>c(l)-c(v)-c(h)),_=$(()=>{const{style:y={},height:w,width:C}=e;return ia({...y,height:w,width:C})}),g=$(()=>ia({height:e.footerHeight})),b=$(()=>({top:on(c(v)),bottom:on(e.footerHeight),width:on(e.width)}));return{bodyWidth:a,fixedTableHeight:u,mainTableHeight:l,leftTableWidth:f,rightTableWidth:p,headerWidth:s,rowsHeight:i,windowHeight:m,footerHeight:g,emptyStyle:b,rootStyle:_,headerHeight:v}},T9e=e=>{const t=P(),n=P(0),r=P(0);let o;return rt(()=>{o=Rn(t,([a])=>{const{width:s,height:l}=a.contentRect,{paddingLeft:i,paddingRight:u,paddingTop:d,paddingBottom:f}=getComputedStyle(a.target),p=Number.parseInt(i)||0,v=Number.parseInt(u)||0,h=Number.parseInt(d)||0,m=Number.parseInt(f)||0;n.value=s-p-v,r.value=l-h-m}).stop}),Ut(()=>{o==null||o()}),Ce([n,r],([a,s])=>{var l;(l=e.onResize)==null||l.call(e,{width:a,height:s})}),{sizer:t,width:n,height:r}};function O9e(e){const t=P(),n=P(),r=P(),{columns:o,columnsStyles:a,columnsTotalWidth:s,fixedColumnsOnLeft:l,fixedColumnsOnRight:i,hasFixedColumns:u,mainColumns:d,onColumnSorted:f}=w9e(e,qt(e,"columns"),qt(e,"fixed")),{scrollTo:p,scrollToLeft:v,scrollToTop:h,scrollToRow:m,onScroll:_,onVerticalScroll:g,scrollPos:b}=E9e(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:j}),{expandedRowKeys:y,hoveringRowKey:w,lastRenderedRowIndex:C,isDynamic:S,isResetting:O,rowHeights:T,resetAfterIndex:A,onRowExpanded:R,onRowHeightChange:B,onRowHovered:V,onRowsRendered:H}=C9e(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:j}),{data:U,depthMap:K}=S9e(e,{expandedRowKeys:y,lastRenderedRowIndex:C,resetAfterIndex:A}),{bodyWidth:I,fixedTableHeight:x,mainTableHeight:L,leftTableWidth:z,rightTableWidth:q,headerWidth:le,rowsHeight:G,windowHeight:ae,footerHeight:be,emptyStyle:te,rootStyle:de,headerHeight:Z}=$9e(e,{columnsTotalWidth:s,data:U,fixedColumnsOnLeft:l,fixedColumnsOnRight:i}),Y=xt(!1),ce=P(),ve=$(()=>{const D=c(U).length===0;return Ve(e.fixedData)?e.fixedData.length===0&&D:D});function Ne(D){const{estimatedRowHeight:F,rowHeight:Q,rowKey:ge}=e;return F?c(T)[c(U)[D][ge]]||F:Q}function j(){const{onEndReached:D}=e;if(!D)return;const{scrollTop:F}=c(b),Q=c(G),ge=c(ae),ne=Q-(F+ge)+e.hScrollbarSize;c(C)>=0&&Q===F+c(L)-c(Z)&&D(ne)}return Ce(()=>e.expandedRowKeys,D=>y.value=D,{deep:!0}),{columns:o,containerRef:ce,mainTableRef:t,leftTableRef:n,rightTableRef:r,isDynamic:S,isResetting:O,isScrolling:Y,hoveringRowKey:w,hasFixedColumns:u,columnsStyles:a,columnsTotalWidth:s,data:U,expandedRowKeys:y,depthMap:K,fixedColumnsOnLeft:l,fixedColumnsOnRight:i,mainColumns:d,bodyWidth:I,emptyStyle:te,rootStyle:de,headerWidth:le,footerHeight:be,mainTableHeight:L,fixedTableHeight:x,leftTableWidth:z,rightTableWidth:q,showEmpty:ve,getRowHeight:Ne,onColumnSorted:f,onRowHovered:V,onRowExpanded:R,onRowsRendered:H,onRowHeightChange:B,scrollTo:p,scrollToLeft:v,scrollToTop:h,scrollToRow:m,onScroll:_,onVerticalScroll:g}}const Vv=Symbol("tableV2"),D5=String,yu={type:he(Array),required:!0},Bv={type:he(Array)},z5={...Bv,required:!0},M9e=String,I_={type:he(Array),default:()=>jt([])},Ba={type:Number,required:!0},V5={type:he([String,Number,Symbol]),default:"id"},L_={type:he(Object)},qa=Le({class:String,columns:yu,columnsStyles:{type:he(Object),required:!0},depth:Number,expandColumnKey:M9e,estimatedRowHeight:{...Ja.estimatedRowHeight,default:void 0},isScrolling:Boolean,onRowExpand:{type:he(Function)},onRowHover:{type:he(Function)},onRowHeightChange:{type:he(Function)},rowData:{type:he(Object),required:!0},rowEventHandlers:{type:he(Object)},rowIndex:{type:Number,required:!0},rowKey:V5,style:{type:he(Object)}}),tp={type:Number,required:!0},Fv=Le({class:String,columns:yu,fixedHeaderData:{type:he(Array)},headerData:{type:he(Array),required:!0},headerHeight:{type:he([Number,Array]),default:50},rowWidth:tp,rowHeight:{type:Number,default:50},height:tp,width:tp}),Ec=Le({columns:yu,data:z5,fixedData:Bv,estimatedRowHeight:qa.estimatedRowHeight,width:Ba,height:Ba,headerWidth:Ba,headerHeight:Fv.headerHeight,bodyWidth:Ba,rowHeight:Ba,cache:c5.cache,useIsScrolling:Boolean,scrollbarAlwaysOn:Ja.scrollbarAlwaysOn,scrollbarStartGap:Ja.scrollbarStartGap,scrollbarEndGap:Ja.scrollbarEndGap,class:D5,style:L_,containerStyle:L_,getRowHeight:{type:he(Function),required:!0},rowKey:qa.rowKey,onRowsRendered:{type:he(Function)},onScroll:{type:he(Function)}}),N9e=Le({cache:Ec.cache,estimatedRowHeight:qa.estimatedRowHeight,rowKey:V5,headerClass:{type:he([String,Function])},headerProps:{type:he([Object,Function])},headerCellProps:{type:he([Object,Function])},headerHeight:Fv.headerHeight,footerHeight:{type:Number,default:0},rowClass:{type:he([String,Function])},rowProps:{type:he([Object,Function])},rowHeight:{type:Number,default:50},cellProps:{type:he([Object,Function])},columns:yu,data:z5,dataGetter:{type:he(Function)},fixedData:Bv,expandColumnKey:qa.expandColumnKey,expandedRowKeys:I_,defaultExpandedRowKeys:I_,class:D5,fixed:Boolean,style:{type:he(Object)},width:Ba,height:Ba,maxHeight:Number,useIsScrolling:Boolean,indentSize:{type:Number,default:12},iconSize:{type:Number,default:12},hScrollbarSize:Ja.hScrollbarSize,vScrollbarSize:Ja.vScrollbarSize,scrollbarAlwaysOn:p5.alwaysOn,sortBy:{type:he(Object),default:()=>({})},sortState:{type:he(Object),default:void 0},onColumnSort:{type:he(Function)},onExpandedRowsChange:{type:he(Function)},onEndReached:{type:he(Function)},onRowExpand:qa.onRowExpand,onScroll:Ec.onScroll,onRowsRendered:Ec.onRowsRendered,rowEventHandlers:qa.rowEventHandlers}),Hv=(e,{slots:t})=>{var n;const{cellData:r,style:o}=e,a=((n=r==null?void 0:r.toString)==null?void 0:n.call(r))||"";return X("div",{class:e.class,title:a,style:o},[t.default?t.default(e):a])};Hv.displayName="ElTableV2Cell";Hv.inheritAttrs=!1;const Uv=(e,{slots:t})=>{var n,r;return t.default?t.default(e):X("div",{class:e.class,title:(n=e.column)==null?void 0:n.title},[(r=e.column)==null?void 0:r.title])};Uv.displayName="ElTableV2HeaderCell";Uv.inheritAttrs=!1;const A9e=Le({class:String,columns:yu,columnsStyles:{type:he(Object),required:!0},headerIndex:Number,style:{type:he(Object)}}),R9e=oe({name:"ElTableV2HeaderRow",props:A9e,setup(e,{slots:t}){return()=>{const{columns:n,columnsStyles:r,headerIndex:o,style:a}=e;let s=n.map((l,i)=>t.cell({columns:n,column:l,columnIndex:i,headerIndex:o,style:r[l.key]}));return t.header&&(s=t.header({cells:s.map(l=>Ve(l)&&l.length===1?l[0]:l),columns:n,headerIndex:o})),X("div",{class:e.class,style:a},[s])}}}),x9e="ElTableV2Header",I9e=oe({name:x9e,props:Fv,setup(e,{slots:t,expose:n}){const r=Oe("table-v2"),o=P(),a=$(()=>ia({width:e.width,height:e.height})),s=$(()=>ia({width:e.rowWidth,height:e.height})),l=$(()=>ol(c(e.headerHeight))),i=f=>{const p=c(o);He(()=>{p!=null&&p.scroll&&p.scroll({left:f})})},u=()=>{const f=r.e("fixed-header-row"),{columns:p,fixedHeaderData:v,rowHeight:h}=e;return v==null?void 0:v.map((m,_)=>{var g;const b=ia({height:h,width:"100%"});return(g=t.fixed)==null?void 0:g.call(t,{class:f,columns:p,rowData:m,rowIndex:-(_+1),style:b})})},d=()=>{const f=r.e("dynamic-header-row"),{columns:p}=e;return c(l).map((v,h)=>{var m;const _=ia({width:"100%",height:v});return(m=t.dynamic)==null?void 0:m.call(t,{class:f,columns:p,headerIndex:h,style:_})})};return n({scrollToLeft:i}),()=>{if(!(e.height<=0))return X("div",{ref:o,class:e.class,style:c(a)},[X("div",{style:c(s),class:r.e("header")},[d(),u()])])}}}),L9e=e=>{const{isScrolling:t}=Fe(Vv),n=P(!1),r=P(),o=$(()=>Ze(e.estimatedRowHeight)&&e.rowIndex>=0),a=(i=!1)=>{const u=c(r);if(!u)return;const{columns:d,onRowHeightChange:f,rowKey:p,rowIndex:v,style:h}=e,{height:m}=u.getBoundingClientRect();n.value=!0,He(()=>{if(i||m!==Number.parseInt(h.height)){const _=d[0],g=(_==null?void 0:_.placeholderSign)===Wi;f==null||f({rowKey:p,height:m,rowIndex:v},_&&!g&&_.fixed)}})},s=$(()=>{const{rowData:i,rowIndex:u,rowKey:d,onRowHover:f}=e,p=e.rowEventHandlers||{},v={};return Object.entries(p).forEach(([h,m])=>{Xe(m)&&(v[h]=_=>{m({event:_,rowData:i,rowIndex:u,rowKey:d})})}),f&&[{name:"onMouseleave",hovered:!1},{name:"onMouseenter",hovered:!0}].forEach(({name:h,hovered:m})=>{const _=v[h];v[h]=g=>{f({event:g,hovered:m,rowData:i,rowIndex:u,rowKey:d}),_==null||_(g)}}),v}),l=i=>{const{onRowExpand:u,rowData:d,rowIndex:f,rowKey:p}=e;u==null||u({expanded:i,rowData:d,rowIndex:f,rowKey:p})};return rt(()=>{c(o)&&a(!0)}),{isScrolling:t,measurable:o,measured:n,rowRef:r,eventHandlers:s,onExpand:l}},P9e="ElTableV2TableRow",D9e=oe({name:P9e,props:qa,setup(e,{expose:t,slots:n,attrs:r}){const{eventHandlers:o,isScrolling:a,measurable:s,measured:l,rowRef:i,onExpand:u}=L9e(e);return t({onExpand:u}),()=>{const{columns:d,columnsStyles:f,expandColumnKey:p,depth:v,rowData:h,rowIndex:m,style:_}=e;let g=d.map((b,y)=>{const w=Ve(h.children)&&h.children.length>0&&b.key===p;return n.cell({column:b,columns:d,columnIndex:y,depth:v,style:f[b.key],rowData:h,rowIndex:m,isScrolling:c(a),expandIconProps:w?{rowData:h,rowIndex:m,onExpand:u}:void 0})});if(n.row&&(g=n.row({cells:g.map(b=>Ve(b)&&b.length===1?b[0]:b),style:_,columns:d,depth:v,rowData:h,rowIndex:m,isScrolling:c(a)})),c(s)){const{height:b,...y}=_||{},w=c(l);return X("div",ft({ref:i,class:e.class,style:w?_:y},r,c(o)),[g])}return X("div",ft(r,{ref:i,class:e.class,style:_},c(o)),[g])}}}),z9e=e=>{const{sortOrder:t}=e;return X(Ke,{size:14,class:e.class},{default:()=>[t===Ui.ASC?X(Cy,null,null):X(Ey,null,null)]})},V9e=e=>{const{expanded:t,expandable:n,onExpand:r,style:o,size:a}=e,s={onClick:n?()=>r(!t):void 0,class:e.class};return X(Ke,ft(s,{size:a,style:o}),{default:()=>[X(An,null,null)]})},B9e="ElTableV2Grid",F9e=e=>{const t=P(),n=P(),r=$(()=>{const{data:m,rowHeight:_,estimatedRowHeight:g}=e;if(!g)return m.length*_}),o=$(()=>{const{fixedData:m,rowHeight:_}=e;return((m==null?void 0:m.length)||0)*_}),a=$(()=>wc(e.headerHeight)),s=$(()=>{const{height:m}=e;return Math.max(0,m-c(a)-c(o))}),l=$(()=>c(a)+c(o)>0),i=({data:m,rowIndex:_})=>m[_][e.rowKey];function u({rowCacheStart:m,rowCacheEnd:_,rowVisibleStart:g,rowVisibleEnd:b}){var y;(y=e.onRowsRendered)==null||y.call(e,{rowCacheStart:m,rowCacheEnd:_,rowVisibleStart:g,rowVisibleEnd:b})}function d(m,_){var g;(g=n.value)==null||g.resetAfterRowIndex(m,_)}function f(m,_){const g=c(t),b=c(n);!g||!b||(dt(m)?(g.scrollToLeft(m.scrollLeft),b.scrollTo(m)):(g.scrollToLeft(m),b.scrollTo({scrollLeft:m,scrollTop:_})))}function p(m){var _;(_=c(n))==null||_.scrollTo({scrollTop:m})}function v(m,_){var g;(g=c(n))==null||g.scrollToItem(m,1,_)}function h(){var m,_;(m=c(n))==null||m.$forceUpdate(),(_=c(t))==null||_.$forceUpdate()}return{bodyRef:n,forceUpdate:h,fixedRowHeight:o,gridHeight:s,hasHeader:l,headerHeight:a,headerRef:t,totalHeight:r,itemKey:i,onItemRendered:u,resetAfterRowIndex:d,scrollTo:f,scrollToTop:p,scrollToRow:v}},Kv=oe({name:B9e,props:Ec,setup(e,{slots:t,expose:n}){const{ns:r}=Fe(Vv),{bodyRef:o,fixedRowHeight:a,gridHeight:s,hasHeader:l,headerRef:i,headerHeight:u,totalHeight:d,forceUpdate:f,itemKey:p,onItemRendered:v,resetAfterRowIndex:h,scrollTo:m,scrollToTop:_,scrollToRow:g}=F9e(e);n({forceUpdate:f,totalHeight:d,scrollTo:m,scrollToTop:_,scrollToRow:g,resetAfterRowIndex:h});const b=()=>e.bodyWidth;return()=>{const{cache:y,columns:w,data:C,fixedData:S,useIsScrolling:O,scrollbarAlwaysOn:T,scrollbarEndGap:A,scrollbarStartGap:R,style:B,rowHeight:V,bodyWidth:H,estimatedRowHeight:U,headerWidth:K,height:I,width:x,getRowHeight:L,onScroll:z}=e,q=Ze(U),le=q?_we:hwe,G=c(u);return X("div",{role:"table",class:[r.e("table"),e.class],style:B},[X(le,{ref:o,data:C,useIsScrolling:O,itemKey:p,columnCache:0,columnWidth:q?b:H,totalColumn:1,totalRow:C.length,rowCache:y,rowHeight:q?L:V,width:x,height:c(s),class:r.e("body"),scrollbarStartGap:R,scrollbarEndGap:A,scrollbarAlwaysOn:T,onScroll:z,onItemRendered:v,perfMode:!1},{default:ae=>{var be;const te=C[ae.rowIndex];return(be=t.row)==null?void 0:be.call(t,{...ae,columns:w,rowData:te})}}),c(l)&&X(I9e,{ref:i,class:r.e("header-wrapper"),columns:w,headerData:C,headerHeight:e.headerHeight,fixedHeaderData:S,rowWidth:K,rowHeight:V,width:x,height:Math.min(G+c(a),I)},{dynamic:t.header,fixed:t.row})])}}});function H9e(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const U9e=(e,{slots:t})=>{const{mainTableRef:n,...r}=e;return X(Kv,ft({ref:n},r),H9e(t)?t:{default:()=>[t]})};function K9e(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const W9e=(e,{slots:t})=>{if(!e.columns.length)return;const{leftTableRef:n,...r}=e;return X(Kv,ft({ref:n},r),K9e(t)?t:{default:()=>[t]})};function j9e(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const q9e=(e,{slots:t})=>{if(!e.columns.length)return;const{rightTableRef:n,...r}=e;return X(Kv,ft({ref:n},r),j9e(t)?t:{default:()=>[t]})};function G9e(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const Y9e=(e,{slots:t})=>{const{columns:n,columnsStyles:r,depthMap:o,expandColumnKey:a,expandedRowKeys:s,estimatedRowHeight:l,hasFixedColumns:i,hoveringRowKey:u,rowData:d,rowIndex:f,style:p,isScrolling:v,rowProps:h,rowClass:m,rowKey:_,rowEventHandlers:g,ns:b,onRowHovered:y,onRowExpanded:w}=e,C=ls(m,{columns:n,rowData:d,rowIndex:f},""),S=ls(h,{columns:n,rowData:d,rowIndex:f}),O=d[_],T=o[O]||0,A=Boolean(a),R=f<0,B=[b.e("row"),C,{[b.e(`row-depth-${T}`)]:A&&f>=0,[b.is("expanded")]:A&&s.includes(O),[b.is("hovered")]:!v&&O===u,[b.is("fixed")]:!T&&R,[b.is("customized")]:Boolean(t.row)}],V=i?y:void 0,H={...S,columns:n,columnsStyles:r,class:B,depth:T,expandColumnKey:a,estimatedRowHeight:R?void 0:l,isScrolling:v,rowIndex:f,rowData:d,rowKey:O,rowEventHandlers:g,style:p};return X(D9e,ft(H,{onRowHover:V,onRowExpand:w}),G9e(t)?t:{default:()=>[t]})},w2=({columns:e,column:t,columnIndex:n,depth:r,expandIconProps:o,isScrolling:a,rowData:s,rowIndex:l,style:i,expandedRowKeys:u,ns:d,cellProps:f,expandColumnKey:p,indentSize:v,iconSize:h,rowKey:m},{slots:_})=>{const g=ia(i);if(t.placeholderSign===Wi)return X("div",{class:d.em("row-cell","placeholder"),style:g},null);const{cellRenderer:b,dataKey:y,dataGetter:w}=t,S=P5(b)||_.default||(I=>X(Hv,I,null)),O=Xe(w)?w({columns:e,column:t,columnIndex:n,rowData:s,rowIndex:l}):Wt(s,y??""),T=ls(f,{cellData:O,columns:e,column:t,columnIndex:n,rowIndex:l,rowData:s}),A={class:d.e("cell-text"),columns:e,column:t,columnIndex:n,cellData:O,isScrolling:a,rowData:s,rowIndex:l},R=S(A),B=[d.e("row-cell"),t.align===Ki.CENTER&&d.is("align-center"),t.align===Ki.RIGHT&&d.is("align-right")],V=l>=0&&t.key===p,H=l>=0&&u.includes(s[m]);let U;const K=`margin-inline-start: ${r*v}px;`;return V&&(dt(o)?U=X(V9e,ft(o,{class:[d.e("expand-icon"),d.is("expanded",H)],size:h,expanded:H,style:K,expandable:!0}),null):U=X("div",{style:[K,`width: ${h}px; height: ${h}px;`].join(" ")},null)),X("div",ft({class:B,style:g},T),[U,R])};w2.inheritAttrs=!1;function X9e(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const Z9e=({columns:e,columnsStyles:t,headerIndex:n,style:r,headerClass:o,headerProps:a,ns:s},{slots:l})=>{const i={columns:e,headerIndex:n},u=[s.e("header-row"),ls(o,i,""),{[s.is("customized")]:Boolean(l.header)}],d={...ls(a,i),columnsStyles:t,class:u,columns:e,headerIndex:n,style:r};return X(R9e,d,X9e(l)?l:{default:()=>[l]})},P_=(e,{slots:t})=>{const{column:n,ns:r,style:o,onColumnSorted:a}=e,s=ia(o);if(n.placeholderSign===Wi)return X("div",{class:r.em("header-row-cell","placeholder"),style:s},null);const{headerCellRenderer:l,headerClass:i,sortable:u}=n,d={...e,class:r.e("header-cell-text")},p=(P5(l)||t.default||(w=>X(Uv,w,null)))(d),{sortBy:v,sortState:h,headerCellProps:m}=e;let _,g;if(h){const w=h[n.key];_=Boolean(y2[w]),g=_?w:Ui.ASC}else _=n.key===v.key,g=_?v.order:Ui.ASC;const b=[r.e("header-cell"),ls(i,e,""),n.align===Ki.CENTER&&r.is("align-center"),n.align===Ki.RIGHT&&r.is("align-right"),u&&r.is("sortable")],y={...ls(m,e),onClick:n.sortable?a:void 0,class:b,style:s,["data-key"]:n.key};return X("div",y,[p,u&&X(z9e,{class:[r.e("sort-icon"),_&&r.is("sorting")],sortOrder:g},null)])},B5=(e,{slots:t})=>{var n;return X("div",{class:e.class,style:e.style},[(n=t.default)==null?void 0:n.call(t)])};B5.displayName="ElTableV2Footer";const F5=(e,{slots:t})=>X("div",{class:e.class,style:e.style},[t.default?t.default():X(Gw,null,null)]);F5.displayName="ElTableV2Empty";const H5=(e,{slots:t})=>{var n;return X("div",{class:e.class,style:e.style},[(n=t.default)==null?void 0:n.call(t)])};H5.displayName="ElTableV2Overlay";function zl(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Vt(e)}const J9e="ElTableV2",Q9e=oe({name:J9e,props:N9e,setup(e,{slots:t,expose:n}){const r=Oe("table-v2"),{columnsStyles:o,fixedColumnsOnLeft:a,fixedColumnsOnRight:s,mainColumns:l,mainTableHeight:i,fixedTableHeight:u,leftTableWidth:d,rightTableWidth:f,data:p,depthMap:v,expandedRowKeys:h,hasFixedColumns:m,hoveringRowKey:_,mainTableRef:g,leftTableRef:b,rightTableRef:y,isDynamic:w,isResetting:C,isScrolling:S,bodyWidth:O,emptyStyle:T,rootStyle:A,headerWidth:R,footerHeight:B,showEmpty:V,scrollTo:H,scrollToLeft:U,scrollToTop:K,scrollToRow:I,getRowHeight:x,onColumnSorted:L,onRowHeightChange:z,onRowHovered:q,onRowExpanded:le,onRowsRendered:G,onScroll:ae,onVerticalScroll:be}=O9e(e);return n({scrollTo:H,scrollToLeft:U,scrollToTop:K,scrollToRow:I}),ct(Vv,{ns:r,isResetting:C,hoveringRowKey:_,isScrolling:S}),()=>{const{cache:te,cellProps:de,estimatedRowHeight:Z,expandColumnKey:Y,fixedData:ce,headerHeight:ve,headerClass:Ne,headerProps:j,headerCellProps:D,sortBy:F,sortState:Q,rowHeight:ge,rowClass:ne,rowEventHandlers:Se,rowKey:ye,rowProps:Te,scrollbarAlwaysOn:we,indentSize:J,iconSize:_e,useIsScrolling:De,vScrollbarSize:$e,width:Pe}=e,Ue=c(p),ze={cache:te,class:r.e("main"),columns:c(l),data:Ue,fixedData:ce,estimatedRowHeight:Z,bodyWidth:c(O),headerHeight:ve,headerWidth:c(R),height:c(i),mainTableRef:g,rowKey:ye,rowHeight:ge,scrollbarAlwaysOn:we,scrollbarStartGap:2,scrollbarEndGap:$e,useIsScrolling:De,width:Pe,getRowHeight:x,onRowsRendered:G,onScroll:ae},se=c(d),pe=c(u),Me={cache:te,class:r.e("left"),columns:c(a),data:Ue,estimatedRowHeight:Z,leftTableRef:b,rowHeight:ge,bodyWidth:se,headerWidth:se,headerHeight:ve,height:pe,rowKey:ye,scrollbarAlwaysOn:we,scrollbarStartGap:2,scrollbarEndGap:$e,useIsScrolling:De,width:se,getRowHeight:x,onScroll:be},ee=c(f)+$e,Ee={cache:te,class:r.e("right"),columns:c(s),data:Ue,estimatedRowHeight:Z,rightTableRef:y,rowHeight:ge,bodyWidth:ee,headerWidth:ee,headerHeight:ve,height:pe,rowKey:ye,scrollbarAlwaysOn:we,scrollbarStartGap:2,scrollbarEndGap:$e,width:ee,style:`--${c(r.namespace)}-table-scrollbar-size: ${$e}px`,useIsScrolling:De,getRowHeight:x,onScroll:be},Ae=c(o),at={ns:r,depthMap:c(v),columnsStyles:Ae,expandColumnKey:Y,expandedRowKeys:c(h),estimatedRowHeight:Z,hasFixedColumns:c(m),hoveringRowKey:c(_),rowProps:Te,rowClass:ne,rowKey:ye,rowEventHandlers:Se,onRowHovered:q,onRowExpanded:le,onRowHeightChange:z},Lt={cellProps:de,expandColumnKey:Y,indentSize:J,iconSize:_e,rowKey:ye,expandedRowKeys:c(h),ns:r},Ft={ns:r,headerClass:Ne,headerProps:j,columnsStyles:Ae},mn={ns:r,sortBy:F,sortState:Q,headerCellProps:D,onColumnSorted:L},Rt={row:Ye=>X(Y9e,ft(Ye,at),{row:t.row,cell:ht=>{let Tt;return t.cell?X(w2,ft(ht,Lt,{style:Ae[ht.column.key]}),zl(Tt=t.cell(ht))?Tt:{default:()=>[Tt]}):X(w2,ft(ht,Lt,{style:Ae[ht.column.key]}),null)}}),header:Ye=>X(Z9e,ft(Ye,Ft),{header:t.header,cell:ht=>{let Tt;return t["header-cell"]?X(P_,ft(ht,mn,{style:Ae[ht.column.key]}),zl(Tt=t["header-cell"](ht))?Tt:{default:()=>[Tt]}):X(P_,ft(ht,mn,{style:Ae[ht.column.key]}),null)}})},St=[e.class,r.b(),r.e("root"),{[r.is("dynamic")]:c(w)}],Re={class:r.e("footer"),style:c(B)};return X("div",{class:St,style:c(A)},[X(U9e,ze,zl(Rt)?Rt:{default:()=>[Rt]}),X(W9e,Me,zl(Rt)?Rt:{default:()=>[Rt]}),X(q9e,Ee,zl(Rt)?Rt:{default:()=>[Rt]}),t.footer&&X(B5,Re,{default:t.footer}),c(V)&&X(F5,{class:r.e("empty"),style:c(T)},{default:t.empty}),t.overlay&&X(H5,{class:r.e("overlay")},{default:t.overlay})])}}}),eCe=Le({disableWidth:Boolean,disableHeight:Boolean,onResize:{type:he(Function)}}),tCe=oe({name:"ElAutoResizer",props:eCe,setup(e,{slots:t}){const n=Oe("auto-resizer"),{height:r,width:o,sizer:a}=T9e(e),s={width:"100%",height:"100%"};return()=>{var l;return X("div",{ref:a,class:n.b(),style:s},[(l=t.default)==null?void 0:l.call(t,{height:r.value,width:o.value})])}}}),nCe=lt(Q9e),rCe=lt(tCe),oCe=Le({tabs:{type:he(Array),default:()=>jt([])}}),U5="ElTabBar",aCe=oe({name:U5}),sCe=oe({...aCe,props:oCe,setup(e,{expose:t}){const n=e,r=tt(),o=Fe(Gd);o||un(U5,"");const a=Oe("tabs"),s=P(),l=P(),i=()=>{let d=0,f=0;const p=["top","bottom"].includes(o.props.tabPosition)?"width":"height",v=p==="width"?"x":"y",h=v==="x"?"left":"top";return n.tabs.every(m=>{var _,g;const b=(g=(_=r.parent)==null?void 0:_.refs)==null?void 0:g[`tab-${m.uid}`];if(!b)return!1;if(!m.active)return!0;d=b[`offset${Yr(h)}`],f=b[`client${Yr(p)}`];const y=window.getComputedStyle(b);return p==="width"&&(n.tabs.length>1&&(f-=Number.parseFloat(y.paddingLeft)+Number.parseFloat(y.paddingRight)),d+=Number.parseFloat(y.paddingLeft)),!1}),{[p]:`${f}px`,transform:`translate${Yr(v)}(${d}px)`}},u=()=>l.value=i();return Ce(()=>n.tabs,async()=>{await He(),u()},{immediate:!0}),Rn(s,()=>u()),t({ref:s,update:u}),(d,f)=>(E(),M("div",{ref_key:"barRef",ref:s,class:N([c(a).e("active-bar"),c(a).is(c(o).props.tabPosition)]),style:We(l.value)},null,6))}});var lCe=Ie(sCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-bar.vue"]]);const iCe=Le({panes:{type:he(Array),default:()=>jt([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean}),uCe={tabClick:(e,t,n)=>n instanceof Event,tabRemove:(e,t)=>t instanceof Event},D_="ElTabNav",cCe=oe({name:D_,props:iCe,emits:uCe,setup(e,{expose:t,emit:n}){const r=tt(),o=Fe(Gd);o||un(D_,"");const a=Oe("tabs"),s=CA(),l=zA(),i=P(),u=P(),d=P(),f=P(!1),p=P(0),v=P(!1),h=P(!0),m=$(()=>["top","bottom"].includes(o.props.tabPosition)?"width":"height"),_=$(()=>({transform:`translate${m.value==="width"?"X":"Y"}(-${p.value}px)`})),g=()=>{if(!i.value)return;const T=i.value[`offset${Yr(m.value)}`],A=p.value;if(!A)return;const R=A>T?A-T:0;p.value=R},b=()=>{if(!i.value||!u.value)return;const T=u.value[`offset${Yr(m.value)}`],A=i.value[`offset${Yr(m.value)}`],R=p.value;if(T-R<=A)return;const B=T-R>A*2?R+A:T-A;p.value=B},y=async()=>{const T=u.value;if(!f.value||!d.value||!i.value||!T)return;await He();const A=d.value.querySelector(".is-active");if(!A)return;const R=i.value,B=["top","bottom"].includes(o.props.tabPosition),V=A.getBoundingClientRect(),H=R.getBoundingClientRect(),U=B?T.offsetWidth-H.width:T.offsetHeight-H.height,K=p.value;let I=K;B?(V.leftH.right&&(I=K+V.right-H.right)):(V.topH.bottom&&(I=K+(V.bottom-H.bottom))),I=Math.max(I,0),p.value=Math.min(I,U)},w=()=>{if(!u.value||!i.value)return;const T=u.value[`offset${Yr(m.value)}`],A=i.value[`offset${Yr(m.value)}`],R=p.value;A0&&(p.value=0))},C=T=>{const A=T.code,{up:R,down:B,left:V,right:H}=Ge;if(![R,B,V,H].includes(A))return;const U=Array.from(T.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)")),K=U.indexOf(T.target);let I;A===V||A===R?K===0?I=U.length-1:I=K-1:K{h.value&&(v.value=!0)},O=()=>v.value=!1;return Ce(s,T=>{T==="hidden"?h.value=!1:T==="visible"&&setTimeout(()=>h.value=!0,50)}),Ce(l,T=>{T?setTimeout(()=>h.value=!0,50):h.value=!1}),Rn(d,w),rt(()=>setTimeout(()=>y(),0)),lo(()=>w()),t({scrollToActiveTab:y,removeFocus:O}),Ce(()=>e.panes,()=>r.update(),{flush:"post"}),()=>{const T=f.value?[X("span",{class:[a.e("nav-prev"),a.is("disabled",!f.value.prev)],onClick:g},[X(Ke,null,{default:()=>[X(Ro,null,null)]})]),X("span",{class:[a.e("nav-next"),a.is("disabled",!f.value.next)],onClick:b},[X(Ke,null,{default:()=>[X(An,null,null)]})])]:null,A=e.panes.map((R,B)=>{var V,H,U,K;const I=R.uid,x=R.props.disabled,L=(H=(V=R.props.name)!=null?V:R.index)!=null?H:`${B}`,z=!x&&(R.isClosable||e.editable);R.index=`${B}`;const q=z?X(Ke,{class:"is-icon-close",onClick:ae=>n("tabRemove",R,ae)},{default:()=>[X(wr,null,null)]}):null,le=((K=(U=R.slots).label)==null?void 0:K.call(U))||R.props.label,G=!x&&R.active?0:-1;return X("div",{ref:`tab-${I}`,class:[a.e("item"),a.is(o.props.tabPosition),a.is("active",R.active),a.is("disabled",x),a.is("closable",z),a.is("focus",v.value)],id:`tab-${L}`,key:`tab-${I}`,"aria-controls":`pane-${L}`,role:"tab","aria-selected":R.active,tabindex:G,onFocus:()=>S(),onBlur:()=>O(),onClick:ae=>{O(),n("tabClick",R,L,ae)},onKeydown:ae=>{z&&(ae.code===Ge.delete||ae.code===Ge.backspace)&&n("tabRemove",R,ae)}},[le,q])});return X("div",{ref:d,class:[a.e("nav-wrap"),a.is("scrollable",!!f.value),a.is(o.props.tabPosition)]},[T,X("div",{class:a.e("nav-scroll"),ref:i},[X("div",{class:[a.e("nav"),a.is(o.props.tabPosition),a.is("stretch",e.stretch&&["top","bottom"].includes(o.props.tabPosition))],ref:u,style:_.value,role:"tablist",onKeydown:C},[e.type?null:X(lCe,{tabs:[...e.panes]},null),A])])])}}}),dCe=Le({type:{type:String,values:["card","border-card",""],default:""},activeName:{type:[String,Number]},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:he(Function),default:()=>!0},stretch:Boolean}),np=e=>Qe(e)||Ze(e),fCe={[ut]:e=>np(e),tabClick:(e,t)=>t instanceof Event,tabChange:e=>np(e),edit:(e,t)=>["remove","add"].includes(t),tabRemove:e=>np(e),tabAdd:()=>!0};var pCe=oe({name:"ElTabs",props:dCe,emits:fCe,setup(e,{emit:t,slots:n,expose:r}){var o,a;const s=Oe("tabs"),{children:l,addChild:i,removeChild:u}=k8(tt(),"ElTabPane"),d=P(),f=P((a=(o=e.modelValue)!=null?o:e.activeName)!=null?a:"0"),p=g=>{f.value=g,t(ut,g),t("tabChange",g)},v=async g=>{var b,y,w;if(!(f.value===g||_n(g)))try{await((b=e.beforeLeave)==null?void 0:b.call(e,g,f.value))!==!1&&(p(g),(w=(y=d.value)==null?void 0:y.removeFocus)==null||w.call(y))}catch{}},h=(g,b,y)=>{g.props.disabled||(v(b),t("tabClick",g,y))},m=(g,b)=>{g.props.disabled||_n(g.props.name)||(b.stopPropagation(),t("edit",g.props.name,"remove"),t("tabRemove",g.props.name))},_=()=>{t("edit",void 0,"add"),t("tabAdd")};return xo({from:'"activeName"',replacement:'"model-value" or "v-model"',scope:"ElTabs",version:"2.3.0",ref:"https://element-plus.org/en-US/component/tabs.html#attributes",type:"Attribute"},$(()=>!!e.activeName)),Ce(()=>e.activeName,g=>v(g)),Ce(()=>e.modelValue,g=>v(g)),Ce(f,async()=>{var g;await He(),(g=d.value)==null||g.scrollToActiveTab()}),ct(Gd,{props:e,currentName:f,registerPane:i,unregisterPane:u}),r({currentName:f}),()=>{const g=e.editable||e.addable?X("span",{class:s.e("new-tab"),tabindex:"0",onClick:_,onKeydown:w=>{w.code===Ge.enter&&_()}},[X(Ke,{class:s.is("icon-plus")},{default:()=>[X(Yh,null,null)]})]):null,b=X("div",{class:[s.e("header"),s.is(e.tabPosition)]},[g,X(cCe,{ref:d,currentName:f.value,editable:e.editable,type:e.type,panes:l.value,stretch:e.stretch,onTabClick:h,onTabRemove:m},null)]),y=X("div",{class:s.e("content")},[ke(n,"default")]);return X("div",{class:[s.b(),s.m(e.tabPosition),{[s.m("card")]:e.type==="card",[s.m("border-card")]:e.type==="border-card"}]},[...e.tabPosition!=="bottom"?[b,y]:[y,b]])}}});const hCe=Le({label:{type:String,default:""},name:{type:[String,Number]},closable:Boolean,disabled:Boolean,lazy:Boolean}),vCe=["id","aria-hidden","aria-labelledby"],K5="ElTabPane",mCe=oe({name:K5}),gCe=oe({...mCe,props:hCe,setup(e){const t=e,n=tt(),r=En(),o=Fe(Gd);o||un(K5,"usage: ");const a=Oe("tab-pane"),s=P(),l=$(()=>t.closable||o.props.closable),i=Fm(()=>{var v;return o.currentName.value===((v=t.name)!=null?v:s.value)}),u=P(i.value),d=$(()=>{var v;return(v=t.name)!=null?v:s.value}),f=Fm(()=>!t.lazy||u.value||i.value);Ce(i,v=>{v&&(u.value=!0)});const p=Et({uid:n.uid,slots:r,props:t,paneName:d,active:i,index:s,isClosable:l});return rt(()=>{o.registerPane(p)}),io(()=>{o.unregisterPane(p.uid)}),(v,h)=>c(f)?ot((E(),M("div",{key:0,id:`pane-${c(d)}`,class:N(c(a).b()),role:"tabpanel","aria-hidden":!c(i),"aria-labelledby":`tab-${c(d)}`},[ke(v.$slots,"default")],10,vCe)),[[yt,c(i)]]):fe("v-if",!0)}});var W5=Ie(gCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tabs/src/tab-pane.vue"]]);const _Ce=lt(pCe,{TabPane:W5}),bCe=Jt(W5),yCe=Le({format:{type:String,default:"HH:mm"},modelValue:String,disabled:Boolean,editable:{type:Boolean,default:!0},effect:{type:String,default:"light"},clearable:{type:Boolean,default:!0},size:On,placeholder:String,start:{type:String,default:"09:00"},end:{type:String,default:"18:00"},step:{type:String,default:"00:30"},minTime:String,maxTime:String,name:String,prefixIcon:{type:he([String,Object]),default:()=>Gh},clearIcon:{type:he([String,Object]),default:()=>Bo}}),Eo=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const r=Number.parseInt(t[1],10),o=e.toUpperCase();return o.includes("AM")&&n===12?n=0:o.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:r}}return null},rp=(e,t)=>{const n=Eo(e);if(!n)return-1;const r=Eo(t);if(!r)return-1;const o=n.minutes+n.hours*60,a=r.minutes+r.hours*60;return o===a?0:o>a?1:-1},z_=e=>`${e}`.padStart(2,"0"),$s=e=>`${z_(e.hours)}:${z_(e.minutes)}`,wCe=(e,t)=>{const n=Eo(e);if(!n)return"";const r=Eo(t);if(!r)return"";const o={hours:n.hours,minutes:n.minutes};return o.minutes+=r.minutes,o.hours+=r.hours,o.hours+=Math.floor(o.minutes/60),o.minutes=o.minutes%60,$s(o)},ECe=oe({name:"ElTimeSelect"}),CCe=oe({...ECe,props:yCe,emits:["change","blur","focus","update:modelValue"],setup(e,{expose:t}){const n=e;st.extend(bv);const{Option:r}=ss,o=Oe("input"),a=P(),s=rr(),l=$(()=>n.modelValue),i=$(()=>{const _=Eo(n.start);return _?$s(_):null}),u=$(()=>{const _=Eo(n.end);return _?$s(_):null}),d=$(()=>{const _=Eo(n.step);return _?$s(_):null}),f=$(()=>{const _=Eo(n.minTime||"");return _?$s(_):null}),p=$(()=>{const _=Eo(n.maxTime||"");return _?$s(_):null}),v=$(()=>{const _=[];if(n.start&&n.end&&n.step){let g=i.value,b;for(;g&&u.value&&rp(g,u.value)<=0;)b=st(g,"HH:mm").format(n.format),_.push({value:b,disabled:rp(g,f.value||"-1:-1")<=0||rp(g,p.value||"100:100")>=0}),g=wCe(g,d.value)}return _});return t({blur:()=>{var _,g;(g=(_=a.value)==null?void 0:_.blur)==null||g.call(_)},focus:()=>{var _,g;(g=(_=a.value)==null?void 0:_.focus)==null||g.call(_)}}),(_,g)=>(E(),me(c(ss),{ref_key:"select",ref:a,"model-value":c(l),disabled:c(s),clearable:_.clearable,"clear-icon":_.clearIcon,size:_.size,effect:_.effect,placeholder:_.placeholder,"default-first-option":"",filterable:_.editable,"onUpdate:modelValue":g[0]||(g[0]=b=>_.$emit("update:modelValue",b)),onChange:g[1]||(g[1]=b=>_.$emit("change",b)),onBlur:g[2]||(g[2]=b=>_.$emit("blur",b)),onFocus:g[3]||(g[3]=b=>_.$emit("focus",b))},{prefix:ue(()=>[_.prefixIcon?(E(),me(c(Ke),{key:0,class:N(c(o).e("prefix-icon"))},{default:ue(()=>[(E(),me(pt(_.prefixIcon)))]),_:1},8,["class"])):fe("v-if",!0)]),default:ue(()=>[(E(!0),M(qe,null,vt(c(v),b=>(E(),me(c(r),{key:b.value,label:b.value,value:b.value,disabled:b.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable"]))}});var Cc=Ie(CCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-select/src/time-select.vue"]]);Cc.install=e=>{e.component(Cc.name,Cc)};const SCe=Cc,kCe=SCe,$Ce=oe({name:"ElTimeline",setup(e,{slots:t}){const n=Oe("timeline");return ct("timeline",t),()=>je("ul",{class:[n.b()]},[ke(t,"default")])}}),TCe=Le({timestamp:{type:String,default:""},hideTimestamp:{type:Boolean,default:!1},center:{type:Boolean,default:!1},placement:{type:String,values:["top","bottom"],default:"bottom"},type:{type:String,values:["primary","success","warning","danger","info"],default:""},color:{type:String,default:""},size:{type:String,values:["normal","large"],default:"normal"},icon:{type:zt},hollow:{type:Boolean,default:!1}}),OCe=oe({name:"ElTimelineItem"}),MCe=oe({...OCe,props:TCe,setup(e){const t=Oe("timeline-item");return(n,r)=>(E(),M("li",{class:N([c(t).b(),{[c(t).e("center")]:n.center}])},[k("div",{class:N(c(t).e("tail"))},null,2),n.$slots.dot?fe("v-if",!0):(E(),M("div",{key:0,class:N([c(t).e("node"),c(t).em("node",n.size||""),c(t).em("node",n.type||""),c(t).is("hollow",n.hollow)]),style:We({backgroundColor:n.color})},[n.icon?(E(),me(c(Ke),{key:0,class:N(c(t).e("icon"))},{default:ue(()=>[(E(),me(pt(n.icon)))]),_:1},8,["class"])):fe("v-if",!0)],6)),n.$slots.dot?(E(),M("div",{key:1,class:N(c(t).e("dot"))},[ke(n.$slots,"dot")],2)):fe("v-if",!0),k("div",{class:N(c(t).e("wrapper"))},[!n.hideTimestamp&&n.placement==="top"?(E(),M("div",{key:0,class:N([c(t).e("timestamp"),c(t).is("top")])},xe(n.timestamp),3)):fe("v-if",!0),k("div",{class:N(c(t).e("content"))},[ke(n.$slots,"default")],2),!n.hideTimestamp&&n.placement==="bottom"?(E(),M("div",{key:1,class:N([c(t).e("timestamp"),c(t).is("bottom")])},xe(n.timestamp),3)):fe("v-if",!0)],2)],2))}});var j5=Ie(MCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/timeline/src/timeline-item.vue"]]);const NCe=lt($Ce,{TimelineItem:j5}),ACe=Jt(j5),q5=Le({nowrap:Boolean});var G5=(e=>(e.top="top",e.bottom="bottom",e.left="left",e.right="right",e))(G5||{});const RCe=Object.values(G5),Wv=Le({width:{type:Number,default:10},height:{type:Number,default:10},style:{type:he(Object),default:null}}),xCe=Le({side:{type:he(String),values:RCe,required:!0}}),ICe=["absolute","fixed"],LCe=["top-start","top-end","top","bottom-start","bottom-end","bottom","left-start","left-end","left","right-start","right-end","right"],jv=Le({ariaLabel:String,arrowPadding:{type:he(Number),default:5},effect:{type:String,default:""},contentClass:String,placement:{type:he(String),values:LCe,default:"bottom"},reference:{type:he(Object),default:null},offset:{type:Number,default:8},strategy:{type:he(String),values:ICe,default:"absolute"},showArrow:{type:Boolean,default:!1}}),qv=Le({delayDuration:{type:Number,default:300},defaultOpen:Boolean,open:{type:Boolean,default:void 0},onOpenChange:{type:he(Function)},"onUpdate:open":{type:he(Function)}}),bs={type:he(Function)},Gv=Le({onBlur:bs,onClick:bs,onFocus:bs,onMouseDown:bs,onMouseEnter:bs,onMouseLeave:bs}),PCe=Le({...qv,...Wv,...Gv,...jv,alwaysOn:Boolean,fullTransition:Boolean,transitionProps:{type:he(Object),default:null},teleported:Boolean,to:{type:he(String),default:"body"}}),DCe=oe({name:"ElTooltipV2Root"}),zCe=oe({...DCe,props:qv,setup(e,{expose:t}){const n=e,r=P(n.defaultOpen),o=P(null),a=$({get:()=>HA(n.open)?r.value:n.open,set:_=>{var g;r.value=_,(g=n["onUpdate:open"])==null||g.call(n,_)}}),s=$(()=>Ze(n.delayDuration)&&n.delayDuration>0),{start:l,stop:i}=ya(()=>{a.value=!0},$(()=>n.delayDuration),{immediate:!1}),u=Oe("tooltip-v2"),d=Dr(),f=()=>{i(),a.value=!0},p=()=>{c(s)?l():f()},v=f,h=()=>{i(),a.value=!1};return Ce(a,_=>{var g;_&&(document.dispatchEvent(new CustomEvent(zf)),v()),(g=n.onOpenChange)==null||g.call(n,_)}),rt(()=>{document.addEventListener(zf,h)}),Ut(()=>{i(),document.removeEventListener(zf,h)}),ct(Xd,{contentId:d,triggerRef:o,ns:u,onClose:h,onDelayOpen:p,onOpen:v}),t({onOpen:v,onClose:h}),(_,g)=>ke(_.$slots,"default",{open:c(a)})}});var VCe=Ie(zCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip-v2/src/root.vue"]]);const BCe=oe({name:"ElTooltipV2Arrow"}),FCe=oe({...BCe,props:{...Wv,...xCe},setup(e){const t=e,{ns:n}=Fe(Xd),{arrowRef:r}=Fe(Wy),o=$(()=>{const{style:a,width:s,height:l}=t,i=n.namespace.value;return{[`--${i}-tooltip-v2-arrow-width`]:`${s}px`,[`--${i}-tooltip-v2-arrow-height`]:`${l}px`,[`--${i}-tooltip-v2-arrow-border-width`]:`${s/2}px`,[`--${i}-tooltip-v2-arrow-cover-width`]:s/2-1,...a||{}}});return(a,s)=>(E(),M("span",{ref_key:"arrowRef",ref:r,style:We(c(o)),class:N(c(n).e("arrow"))},null,6))}});var V_=Ie(FCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip-v2/src/arrow.vue"]]);const HCe=Le({style:{type:he([String,Object,Array]),default:()=>({})}}),UCe=oe({name:"ElVisuallyHidden"}),KCe=oe({...UCe,props:HCe,setup(e){const t=e,n=$(()=>[t.style,{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}]);return(r,o)=>(E(),M("span",ft(r.$attrs,{style:c(n)}),[ke(r.$slots,"default")],16))}});var WCe=Ie(KCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/visual-hidden/src/visual-hidden.vue"]]);const jCe=["data-side"],qCe=oe({name:"ElTooltipV2Content"}),GCe=oe({...qCe,props:{...jv,...q5},setup(e){const t=e,{triggerRef:n,contentId:r}=Fe(Xd),o=P(t.placement),a=P(t.strategy),s=P(null),{referenceRef:l,contentRef:i,middlewareData:u,x:d,y:f,update:p}=Wpe({placement:o,strategy:a,middleware:$(()=>{const y=[$pe(t.offset)];return t.showArrow&&y.push(jpe({arrowRef:s})),y})}),v=Ko().nextZIndex(),h=Oe("tooltip-v2"),m=$(()=>o.value.split("-")[0]),_=$(()=>({position:c(a),top:`${c(f)||0}px`,left:`${c(d)||0}px`,zIndex:v})),g=$(()=>{if(!t.showArrow)return{};const{arrow:y}=c(u);return{[`--${h.namespace.value}-tooltip-v2-arrow-x`]:`${y==null?void 0:y.x}px`||"",[`--${h.namespace.value}-tooltip-v2-arrow-y`]:`${y==null?void 0:y.y}px`||""}}),b=$(()=>[h.e("content"),h.is("dark",t.effect==="dark"),h.is(c(a)),t.contentClass]);return Ce(s,()=>p()),Ce(()=>t.placement,y=>o.value=y),rt(()=>{Ce(()=>t.reference||n.value,y=>{l.value=y||void 0},{immediate:!0})}),ct(Wy,{arrowRef:s}),(y,w)=>(E(),M("div",{ref_key:"contentRef",ref:i,style:We(c(_)),"data-tooltip-v2-root":""},[y.nowrap?fe("v-if",!0):(E(),M("div",{key:0,"data-side":c(m),class:N(c(b))},[ke(y.$slots,"default",{contentStyle:c(_),contentClass:c(b)}),X(c(WCe),{id:c(r),role:"tooltip"},{default:ue(()=>[y.ariaLabel?(E(),M(qe,{key:0},[bt(xe(y.ariaLabel),1)],64)):ke(y.$slots,"default",{key:1})]),_:3},8,["id"]),ke(y.$slots,"arrow",{style:We(c(g)),side:c(m)})],10,jCe))],4))}});var B_=Ie(GCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip-v2/src/content.vue"]]);const YCe=Le({setRef:{type:he(Function),required:!0},onlyChild:Boolean});var XCe=oe({props:YCe,setup(e,{slots:t}){const n=P(),r=Ud(n,o=>{o?e.setRef(o.nextElementSibling):e.setRef(null)});return()=>{var o;const[a]=((o=t.default)==null?void 0:o.call(t))||[],s=e.onlyChild?Gde(a.children):a.children;return X(qe,{ref:r},[s])}}});const ZCe=oe({name:"ElTooltipV2Trigger"}),JCe=oe({...ZCe,props:{...q5,...Gv},setup(e){const t=e,{onClose:n,onOpen:r,onDelayOpen:o,triggerRef:a,contentId:s}=Fe(Xd);let l=!1;const i=b=>{a.value=b},u=()=>{l=!1},d=Yt(t.onMouseEnter,o),f=Yt(t.onMouseLeave,n),p=Yt(t.onMouseDown,()=>{n(),l=!0,document.addEventListener("mouseup",u,{once:!0})}),v=Yt(t.onFocus,()=>{l||r()}),h=Yt(t.onBlur,n),m=Yt(t.onClick,b=>{b.detail===0&&n()}),_={blur:h,click:m,focus:v,mousedown:p,mouseenter:d,mouseleave:f},g=(b,y,w)=>{b&&Object.entries(y).forEach(([C,S])=>{b[w](C,S)})};return Ce(a,(b,y)=>{g(b,_,"addEventListener"),g(y,_,"removeEventListener"),b&&b.setAttribute("aria-describedby",s.value)}),Ut(()=>{g(a.value,_,"removeEventListener"),document.removeEventListener("mouseup",u)}),(b,y)=>b.nowrap?(E(),me(c(XCe),{key:0,"set-ref":i,"only-child":""},{default:ue(()=>[ke(b.$slots,"default")]),_:3})):(E(),M("button",ft({key:1,ref_key:"triggerRef",ref:a},b.$attrs),[ke(b.$slots,"default")],16))}});var QCe=Ie(JCe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip-v2/src/trigger.vue"]]);const eSe=oe({name:"ElTooltipV2"}),tSe=oe({...eSe,props:PCe,setup(e){const n=an(e),r=Et(Co(n,Object.keys(Wv))),o=Et(Co(n,Object.keys(jv))),a=Et(Co(n,Object.keys(qv))),s=Et(Co(n,Object.keys(Gv)));return(l,i)=>(E(),me(VCe,Ar(Md(a)),{default:ue(({open:u})=>[X(QCe,ft(s,{nowrap:""}),{default:ue(()=>[ke(l.$slots,"trigger")]),_:3},16),(E(),me(au,{to:l.to,disabled:!l.teleported},[l.fullTransition?(E(),me(tn,Ar(ft({key:0},l.transitionProps)),{default:ue(()=>[l.alwaysOn||u?(E(),me(B_,Ar(ft({key:0},o)),{arrow:ue(({style:d,side:f})=>[l.showArrow?(E(),me(V_,ft({key:0},r,{style:d,side:f}),null,16,["style","side"])):fe("v-if",!0)]),default:ue(()=>[ke(l.$slots,"default")]),_:3},16)):fe("v-if",!0)]),_:2},1040)):(E(),M(qe,{key:1},[l.alwaysOn||u?(E(),me(B_,Ar(ft({key:0},o)),{arrow:ue(({style:d,side:f})=>[l.showArrow?(E(),me(V_,ft({key:0},r,{style:d,side:f}),null,16,["style","side"])):fe("v-if",!0)]),default:ue(()=>[ke(l.$slots,"default")]),_:3},16)):fe("v-if",!0)],64))],8,["to","disabled"]))]),_:3},16))}});var nSe=Ie(tSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip-v2/src/tooltip.vue"]]);const rSe=lt(nSe),Y5="left-check-change",X5="right-check-change",Ts=Le({data:{type:he(Array),default:()=>[]},titles:{type:he(Array),default:()=>[]},buttonTexts:{type:he(Array),default:()=>[]},filterPlaceholder:String,filterMethod:{type:he(Function)},leftDefaultChecked:{type:he(Array),default:()=>[]},rightDefaultChecked:{type:he(Array),default:()=>[]},renderContent:{type:he(Function)},modelValue:{type:he(Array),default:()=>[]},format:{type:he(Object),default:()=>({})},filterable:Boolean,props:{type:he(Object),default:()=>jt({label:"label",key:"key",disabled:"disabled"})},targetOrder:{type:String,values:["original","push","unshift"],default:"original"},validateEvent:{type:Boolean,default:!0}}),E2=(e,t)=>[e,t].every(Ve)||Ve(e)&&yn(t),oSe={[Bt]:(e,t,n)=>[e,n].every(Ve)&&["left","right"].includes(t),[ut]:e=>Ve(e),[Y5]:E2,[X5]:E2},C2="checked-change",aSe=Le({data:Ts.data,optionRender:{type:he(Function)},placeholder:String,title:String,filterable:Boolean,format:Ts.format,filterMethod:Ts.filterMethod,defaultChecked:Ts.leftDefaultChecked,props:Ts.props}),sSe={[C2]:E2},wu=e=>{const t={label:"label",key:"key",disabled:"disabled"};return $(()=>({...t,...e.props}))},lSe=(e,t,n)=>{const r=wu(e),o=$(()=>e.data.filter(d=>Xe(e.filterMethod)?e.filterMethod(t.query,d):String(d[r.value.label]||d[r.value.key]).toLowerCase().includes(t.query.toLowerCase()))),a=$(()=>o.value.filter(d=>!d[r.value.disabled])),s=$(()=>{const d=t.checked.length,f=e.data.length,{noChecked:p,hasChecked:v}=e.format;return p&&v?d>0?v.replace(/\${checked}/g,d.toString()).replace(/\${total}/g,f.toString()):p.replace(/\${total}/g,f.toString()):`${d}/${f}`}),l=$(()=>{const d=t.checked.length;return d>0&&d{const d=a.value.map(f=>f[r.value.key]);t.allChecked=d.length>0&&d.every(f=>t.checked.includes(f))},u=d=>{t.checked=d?a.value.map(f=>f[r.value.key]):[]};return Ce(()=>t.checked,(d,f)=>{if(i(),t.checkChangeByUser){const p=d.concat(f).filter(v=>!d.includes(v)||!f.includes(v));n(C2,d,p)}else n(C2,d),t.checkChangeByUser=!0}),Ce(a,()=>{i()}),Ce(()=>e.data,()=>{const d=[],f=o.value.map(p=>p[r.value.key]);t.checked.forEach(p=>{f.includes(p)&&d.push(p)}),t.checkChangeByUser=!1,t.checked=d}),Ce(()=>e.defaultChecked,(d,f)=>{if(f&&d.length===f.length&&d.every(h=>f.includes(h)))return;const p=[],v=a.value.map(h=>h[r.value.key]);d.forEach(h=>{v.includes(h)&&p.push(h)}),t.checkChangeByUser=!1,t.checked=p},{immediate:!0}),{filteredData:o,checkableData:a,checkedSummary:s,isIndeterminate:l,updateAllChecked:i,handleAllCheckedChange:u}},iSe=(e,t)=>({onSourceCheckedChange:(o,a)=>{e.leftChecked=o,a&&t(Y5,o,a)},onTargetCheckedChange:(o,a)=>{e.rightChecked=o,a&&t(X5,o,a)}}),uSe=e=>{const t=wu(e),n=$(()=>e.data.reduce((a,s)=>(a[s[t.value.key]]=s)&&a,{})),r=$(()=>e.data.filter(a=>!e.modelValue.includes(a[t.value.key]))),o=$(()=>e.targetOrder==="original"?e.data.filter(a=>e.modelValue.includes(a[t.value.key])):e.modelValue.reduce((a,s)=>{const l=n.value[s];return l&&a.push(l),a},[]));return{sourceData:r,targetData:o}},cSe=(e,t,n)=>{const r=wu(e),o=(l,i,u)=>{n(ut,l),n(Bt,l,i,u)};return{addToLeft:()=>{const l=e.modelValue.slice();t.rightChecked.forEach(i=>{const u=l.indexOf(i);u>-1&&l.splice(u,1)}),o(l,"left",t.rightChecked)},addToRight:()=>{let l=e.modelValue.slice();const i=e.data.filter(u=>{const d=u[r.value.key];return t.leftChecked.includes(d)&&!e.modelValue.includes(d)}).map(u=>u[r.value.key]);l=e.targetOrder==="unshift"?i.concat(l):l.concat(i),e.targetOrder==="original"&&(l=e.data.filter(u=>l.includes(u[r.value.key])).map(u=>u[r.value.key])),o(l,"right",t.leftChecked)}}},dSe=oe({name:"ElTransferPanel"}),fSe=oe({...dSe,props:aSe,emits:sSe,setup(e,{expose:t,emit:n}){const r=e,o=En(),a=({option:y})=>y,{t:s}=Ct(),l=Oe("transfer"),i=Et({checked:[],allChecked:!1,query:"",checkChangeByUser:!0}),u=wu(r),{filteredData:d,checkedSummary:f,isIndeterminate:p,handleAllCheckedChange:v}=lSe(r,i,n),h=$(()=>!hr(i.query)&&hr(d.value)),m=$(()=>!hr(o.default()[0].children)),{checked:_,allChecked:g,query:b}=an(i);return t({query:b}),(y,w)=>(E(),M("div",{class:N(c(l).b("panel"))},[k("p",{class:N(c(l).be("panel","header"))},[X(c(kr),{modelValue:c(g),"onUpdate:modelValue":w[0]||(w[0]=C=>kt(g)?g.value=C:null),indeterminate:c(p),"validate-event":!1,onChange:c(v)},{default:ue(()=>[bt(xe(y.title)+" ",1),k("span",null,xe(c(f)),1)]),_:1},8,["modelValue","indeterminate","onChange"])],2),k("div",{class:N([c(l).be("panel","body"),c(l).is("with-footer",c(m))])},[y.filterable?(E(),me(c(Nn),{key:0,modelValue:c(b),"onUpdate:modelValue":w[1]||(w[1]=C=>kt(b)?b.value=C:null),class:N(c(l).be("panel","filter")),size:"default",placeholder:y.placeholder,"prefix-icon":c(wy),clearable:"","validate-event":!1},null,8,["modelValue","class","placeholder","prefix-icon"])):fe("v-if",!0),ot(X(c(pw),{modelValue:c(_),"onUpdate:modelValue":w[2]||(w[2]=C=>kt(_)?_.value=C:null),"validate-event":!1,class:N([c(l).is("filterable",y.filterable),c(l).be("panel","list")])},{default:ue(()=>[(E(!0),M(qe,null,vt(c(d),C=>(E(),me(c(kr),{key:C[c(u).key],class:N(c(l).be("panel","item")),label:C[c(u).key],disabled:C[c(u).disabled],"validate-event":!1},{default:ue(()=>{var S;return[X(a,{option:(S=y.optionRender)==null?void 0:S.call(y,C)},null,8,["option"])]}),_:2},1032,["class","label","disabled"]))),128))]),_:1},8,["modelValue","class"]),[[yt,!c(h)&&!c(hr)(y.data)]]),ot(k("p",{class:N(c(l).be("panel","empty"))},xe(c(h)?c(s)("el.transfer.noMatch"):c(s)("el.transfer.noData")),3),[[yt,c(h)||c(hr)(y.data)]])],2),c(m)?(E(),M("p",{key:0,class:N(c(l).be("panel","footer"))},[ke(y.$slots,"default")],2)):fe("v-if",!0)],2))}});var F_=Ie(fSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/transfer/src/transfer-panel.vue"]]);const pSe={key:0},hSe={key:0},vSe=oe({name:"ElTransfer"}),mSe=oe({...vSe,props:Ts,emits:oSe,setup(e,{expose:t,emit:n}){const r=e,o=En(),{t:a}=Ct(),s=Oe("transfer"),{formItem:l}=Wn(),i=Et({leftChecked:[],rightChecked:[]}),u=wu(r),{sourceData:d,targetData:f}=uSe(r),{onSourceCheckedChange:p,onTargetCheckedChange:v}=iSe(i,n),{addToLeft:h,addToRight:m}=cSe(r,i,n),_=P(),g=P(),b=T=>{switch(T){case"left":_.value.query="";break;case"right":g.value.query="";break}},y=$(()=>r.buttonTexts.length===2),w=$(()=>r.titles[0]||a("el.transfer.titles.0")),C=$(()=>r.titles[1]||a("el.transfer.titles.1")),S=$(()=>r.filterPlaceholder||a("el.transfer.filterPlaceholder"));Ce(()=>r.modelValue,()=>{var T;r.validateEvent&&((T=l==null?void 0:l.validate)==null||T.call(l,"change").catch(A=>void 0))});const O=$(()=>T=>r.renderContent?r.renderContent(je,T):o.default?o.default({option:T}):je("span",T[u.value.label]||T[u.value.key]));return t({clearQuery:b,leftPanel:_,rightPanel:g}),(T,A)=>(E(),M("div",{class:N(c(s).b())},[X(F_,{ref_key:"leftPanel",ref:_,data:c(d),"option-render":c(O),placeholder:c(S),title:c(w),filterable:T.filterable,format:T.format,"filter-method":T.filterMethod,"default-checked":T.leftDefaultChecked,props:r.props,onCheckedChange:c(p)},{default:ue(()=>[ke(T.$slots,"left-footer")]),_:3},8,["data","option-render","placeholder","title","filterable","format","filter-method","default-checked","props","onCheckedChange"]),k("div",{class:N(c(s).e("buttons"))},[X(c(Tn),{type:"primary",class:N([c(s).e("button"),c(s).is("with-texts",c(y))]),disabled:c(hr)(i.rightChecked),onClick:c(h)},{default:ue(()=>[X(c(Ke),null,{default:ue(()=>[X(c(Ro))]),_:1}),c(_n)(T.buttonTexts[0])?fe("v-if",!0):(E(),M("span",pSe,xe(T.buttonTexts[0]),1))]),_:1},8,["class","disabled","onClick"]),X(c(Tn),{type:"primary",class:N([c(s).e("button"),c(s).is("with-texts",c(y))]),disabled:c(hr)(i.leftChecked),onClick:c(m)},{default:ue(()=>[c(_n)(T.buttonTexts[1])?fe("v-if",!0):(E(),M("span",hSe,xe(T.buttonTexts[1]),1)),X(c(Ke),null,{default:ue(()=>[X(c(An))]),_:1})]),_:1},8,["class","disabled","onClick"])],2),X(F_,{ref_key:"rightPanel",ref:g,data:c(f),"option-render":c(O),placeholder:c(S),filterable:T.filterable,format:T.format,"filter-method":T.filterMethod,title:c(C),"default-checked":T.rightDefaultChecked,props:r.props,onCheckedChange:c(v)},{default:ue(()=>[ke(T.$slots,"right-footer")]),_:3},8,["data","option-render","placeholder","filterable","format","filter-method","title","default-checked","props","onCheckedChange"])],2))}});var gSe=Ie(mSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/transfer/src/transfer.vue"]]);const _Se=lt(gSe),Gs="$treeNodeId",H_=function(e,t){!t||t[Gs]||Object.defineProperty(t,Gs,{value:e.id,enumerable:!1,configurable:!1,writable:!1})},Yv=function(e,t){return e?t[e]:t[Gs]},S2=(e,t,n)=>{const r=e.value.currentNode;n();const o=e.value.currentNode;r!==o&&t("current-change",o?o.data:null,o)},k2=e=>{let t=!0,n=!0,r=!0;for(let o=0,a=e.length;o"u"){const a=r[t];return a===void 0?"":a}};let bSe=0,$2=class kc{constructor(t){this.id=bSe++,this.text=null,this.checked=!1,this.indeterminate=!1,this.data=null,this.expanded=!1,this.parent=null,this.visible=!0,this.isCurrent=!1,this.canFocus=!1;for(const n in t)mt(t,n)&&(this[n]=t[n]);this.level=0,this.loaded=!1,this.childNodes=[],this.loading=!1,this.parent&&(this.level=this.parent.level+1)}initialize(){const t=this.store;if(!t)throw new Error("[Node]store is required!");t.registerNode(this);const n=t.props;if(n&&typeof n.isLeaf<"u"){const a=Xu(this,"isLeaf");typeof a=="boolean"&&(this.isLeafByUser=a)}if(t.lazy!==!0&&this.data?(this.setData(this.data),t.defaultExpandAll&&(this.expanded=!0,this.canFocus=!0)):this.level>0&&t.lazy&&t.defaultExpandAll&&this.expand(),Array.isArray(this.data)||H_(this,this.data),!this.data)return;const r=t.defaultExpandedKeys,o=t.key;o&&r&&r.includes(this.key)&&this.expand(null,t.autoExpandParent),o&&t.currentNodeKey!==void 0&&this.key===t.currentNodeKey&&(t.currentNode=this,t.currentNode.isCurrent=!0),t.lazy&&t._initDefaultCheckedNode(this),this.updateLeafState(),this.parent&&(this.level===1||this.parent.expanded===!0)&&(this.canFocus=!0)}setData(t){Array.isArray(t)||H_(this,t),this.data=t,this.childNodes=[];let n;this.level===0&&Array.isArray(this.data)?n=this.data:n=Xu(this,"children")||[];for(let r=0,o=n.length;r-1)return t.childNodes[n+1]}return null}get previousSibling(){const t=this.parent;if(t){const n=t.childNodes.indexOf(this);if(n>-1)return n>0?t.childNodes[n-1]:null}return null}contains(t,n=!0){return(this.childNodes||[]).some(r=>r===t||n&&r.contains(t))}remove(){const t=this.parent;t&&t.removeChild(this)}insertChild(t,n,r){if(!t)throw new Error("InsertChild error: child is required.");if(!(t instanceof kc)){if(!r){const o=this.getChildren(!0);o.includes(t.data)||(typeof n>"u"||n<0?o.push(t.data):o.splice(n,0,t.data))}Object.assign(t,{parent:this,store:this.store}),t=Et(new kc(t)),t instanceof kc&&t.initialize()}t.level=this.level+1,typeof n>"u"||n<0?this.childNodes.push(t):this.childNodes.splice(n,0,t),this.updateLeafState()}insertBefore(t,n){let r;n&&(r=this.childNodes.indexOf(n)),this.insertChild(t,r)}insertAfter(t,n){let r;n&&(r=this.childNodes.indexOf(n),r!==-1&&(r+=1)),this.insertChild(t,r)}removeChild(t){const n=this.getChildren()||[],r=n.indexOf(t.data);r>-1&&n.splice(r,1);const o=this.childNodes.indexOf(t);o>-1&&(this.store&&this.store.deregisterNode(t),t.parent=null,this.childNodes.splice(o,1)),this.updateLeafState()}removeChildByData(t){let n=null;for(let r=0;r{if(n){let o=this.parent;for(;o.level>0;)o.expanded=!0,o=o.parent}this.expanded=!0,t&&t(),this.childNodes.forEach(o=>{o.canFocus=!0})};this.shouldLoadData()?this.loadData(o=>{Array.isArray(o)&&(this.checked?this.setChecked(!0,!0):this.store.checkStrictly||Sc(this),r())}):r()}doCreateChildren(t,n={}){t.forEach(r=>{this.insertChild(Object.assign({data:r},n),void 0,!0)})}collapse(){this.expanded=!1,this.childNodes.forEach(t=>{t.canFocus=!1})}shouldLoadData(){return this.store.lazy===!0&&this.store.load&&!this.loaded}updateLeafState(){if(this.store.lazy===!0&&this.loaded!==!0&&typeof this.isLeafByUser<"u"){this.isLeaf=this.isLeafByUser;return}const t=this.childNodes;if(!this.store.lazy||this.store.lazy===!0&&this.loaded===!0){this.isLeaf=!t||t.length===0;return}this.isLeaf=!1}setChecked(t,n,r,o){if(this.indeterminate=t==="half",this.checked=t===!0,this.store.checkStrictly)return;if(!(this.shouldLoadData()&&!this.store.checkDescendants)){const{all:s,allWithoutDisable:l}=k2(this.childNodes);!this.isLeaf&&!s&&l&&(this.checked=!1,t=!1);const i=()=>{if(n){const u=this.childNodes;for(let p=0,v=u.length;p{i(),Sc(this)},{checked:t!==!1});return}else i()}const a=this.parent;!a||a.level===0||r||Sc(a)}getChildren(t=!1){if(this.level===0)return this.data;const n=this.data;if(!n)return null;const r=this.store.props;let o="children";return r&&(o=r.children||"children"),n[o]===void 0&&(n[o]=null),t&&!n[o]&&(n[o]=[]),n[o]}updateChildren(){const t=this.getChildren()||[],n=this.childNodes.map(a=>a.data),r={},o=[];t.forEach((a,s)=>{const l=a[Gs];!!l&&n.findIndex(u=>u[Gs]===l)>=0?r[l]={index:s,data:a}:o.push({index:s,data:a})}),this.store.lazy||n.forEach(a=>{r[a[Gs]]||this.removeChildByData(a)}),o.forEach(({index:a,data:s})=>{this.insertChild({data:s},a)}),this.updateLeafState()}loadData(t,n={}){if(this.store.lazy===!0&&this.store.load&&!this.loaded&&(!this.loading||Object.keys(n).length)){this.loading=!0;const r=o=>{this.childNodes=[],this.doCreateChildren(o,n),this.loaded=!0,this.loading=!1,this.updateLeafState(),t&&t.call(this,o)};this.store.load(this,r)}else t&&t.call(this)}};class ySe{constructor(t){this.currentNode=null,this.currentNodeKey=null;for(const n in t)mt(t,n)&&(this[n]=t[n]);this.nodesMap={}}initialize(){if(this.root=new $2({data:this.data,store:this}),this.root.initialize(),this.lazy&&this.load){const t=this.load;t(this.root,n=>{this.root.doCreateChildren(n),this._initDefaultCheckedNodes()})}else this._initDefaultCheckedNodes()}filter(t){const n=this.filterNodeMethod,r=this.lazy,o=function(a){const s=a.root?a.root.childNodes:a.childNodes;if(s.forEach(l=>{l.visible=n.call(l,t,l.data,l),o(l)}),!a.visible&&s.length){let l=!0;l=!s.some(i=>i.visible),a.root?a.root.visible=l===!1:a.visible=l===!1}t&&a.visible&&!a.isLeaf&&!r&&a.expand()};o(this)}setData(t){t!==this.root.data?(this.root.setData(t),this._initDefaultCheckedNodes()):this.root.updateChildren()}getNode(t){if(t instanceof $2)return t;const n=dt(t)?Yv(this.key,t):t;return this.nodesMap[n]||null}insertBefore(t,n){const r=this.getNode(n);r.parent.insertBefore({data:t},r)}insertAfter(t,n){const r=this.getNode(n);r.parent.insertAfter({data:t},r)}remove(t){const n=this.getNode(t);n&&n.parent&&(n===this.currentNode&&(this.currentNode=null),n.parent.removeChild(n))}append(t,n){const r=n?this.getNode(n):this.root;r&&r.insertChild({data:t})}_initDefaultCheckedNodes(){const t=this.defaultCheckedKeys||[],n=this.nodesMap;t.forEach(r=>{const o=n[r];o&&o.setChecked(!0,!this.checkStrictly)})}_initDefaultCheckedNode(t){(this.defaultCheckedKeys||[]).includes(t.key)&&t.setChecked(!0,!this.checkStrictly)}setDefaultCheckedKey(t){t!==this.defaultCheckedKeys&&(this.defaultCheckedKeys=t,this._initDefaultCheckedNodes())}registerNode(t){const n=this.key;!t||!t.data||(n?t.key!==void 0&&(this.nodesMap[t.key]=t):this.nodesMap[t.id]=t)}deregisterNode(t){!this.key||!t||!t.data||(t.childNodes.forEach(r=>{this.deregisterNode(r)}),delete this.nodesMap[t.key])}getCheckedNodes(t=!1,n=!1){const r=[],o=function(a){(a.root?a.root.childNodes:a.childNodes).forEach(l=>{(l.checked||n&&l.indeterminate)&&(!t||t&&l.isLeaf)&&r.push(l.data),o(l)})};return o(this),r}getCheckedKeys(t=!1){return this.getCheckedNodes(t).map(n=>(n||{})[this.key])}getHalfCheckedNodes(){const t=[],n=function(r){(r.root?r.root.childNodes:r.childNodes).forEach(a=>{a.indeterminate&&t.push(a.data),n(a)})};return n(this),t}getHalfCheckedKeys(){return this.getHalfCheckedNodes().map(t=>(t||{})[this.key])}_getAllNodes(){const t=[],n=this.nodesMap;for(const r in n)mt(n,r)&&t.push(n[r]);return t}updateChildren(t,n){const r=this.nodesMap[t];if(!r)return;const o=r.childNodes;for(let a=o.length-1;a>=0;a--){const s=o[a];this.remove(s.data)}for(let a=0,s=n.length;ai.level-l.level),a=Object.create(null),s=Object.keys(r);o.forEach(l=>l.setChecked(!1,!1));for(let l=0,i=o.length;l0;)a[p.data[t]]=!0,p=p.parent;if(u.isLeaf||this.checkStrictly){u.setChecked(!0,!1);continue}if(u.setChecked(!0,!0),n){u.setChecked(!1,!1);const v=function(h){h.childNodes.forEach(_=>{_.isLeaf||_.setChecked(!1,!1),v(_)})};v(u)}}}setCheckedNodes(t,n=!1){const r=this.key,o={};t.forEach(a=>{o[(a||{})[r]]=!0}),this._setCheckedKeys(r,n,o)}setCheckedKeys(t,n=!1){this.defaultCheckedKeys=t;const r=this.key,o={};t.forEach(a=>{o[a]=!0}),this._setCheckedKeys(r,n,o)}setDefaultExpandedKeys(t){t=t||[],this.defaultExpandedKeys=t,t.forEach(n=>{const r=this.getNode(n);r&&r.expand(null,this.autoExpandParent)})}setChecked(t,n,r){const o=this.getNode(t);o&&o.setChecked(!!n,r)}getCurrentNode(){return this.currentNode}setCurrentNode(t){const n=this.currentNode;n&&(n.isCurrent=!1),this.currentNode=t,this.currentNode.isCurrent=!0}setUserCurrentNode(t,n=!0){const r=t[this.key],o=this.nodesMap[r];this.setCurrentNode(o),n&&this.currentNode.level>1&&this.currentNode.parent.expand(null,!0)}setCurrentNodeKey(t,n=!0){if(t==null){this.currentNode&&(this.currentNode.isCurrent=!1),this.currentNode=null;return}const r=this.getNode(t);r&&(this.setCurrentNode(r),n&&this.currentNode.level>1&&this.currentNode.parent.expand(null,!0))}}const wSe=oe({name:"ElTreeNodeContent",props:{node:{type:Object,required:!0},renderContent:Function},setup(e){const t=Oe("tree"),n=Fe("NodeInstance"),r=Fe("RootTree");return()=>{const o=e.node,{data:a,store:s}=o;return e.renderContent?e.renderContent(je,{_self:n,node:o,data:a,store:s}):r.ctx.slots.default?r.ctx.slots.default({node:o,data:a}):je("span",{class:t.be("node","label")},[o.label])}}});var ESe=Ie(wSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tree/src/tree-node-content.vue"]]);function Z5(e){const t=Fe("TreeNodeMap",null),n={treeNodeExpand:r=>{e.node!==r&&e.node.collapse()},children:[]};return t&&t.children.push(n),ct("TreeNodeMap",n),{broadcastExpanded:r=>{if(e.accordion)for(const o of n.children)o.treeNodeExpand(r)}}}const J5=Symbol("dragEvents");function CSe({props:e,ctx:t,el$:n,dropIndicator$:r,store:o}){const a=Oe("tree"),s=P({showDropIndicator:!1,draggingNode:null,dropNode:null,allowDrop:!0,dropType:null});return ct(J5,{treeNodeDragStart:({event:d,treeNode:f})=>{if(typeof e.allowDrag=="function"&&!e.allowDrag(f.node))return d.preventDefault(),!1;d.dataTransfer.effectAllowed="move";try{d.dataTransfer.setData("text/plain","")}catch{}s.value.draggingNode=f,t.emit("node-drag-start",f.node,d)},treeNodeDragOver:({event:d,treeNode:f})=>{const p=f,v=s.value.dropNode;v&&v!==p&&er(v.$el,a.is("drop-inner"));const h=s.value.draggingNode;if(!h||!p)return;let m=!0,_=!0,g=!0,b=!0;typeof e.allowDrop=="function"&&(m=e.allowDrop(h.node,p.node,"prev"),b=_=e.allowDrop(h.node,p.node,"inner"),g=e.allowDrop(h.node,p.node,"next")),d.dataTransfer.dropEffect=_||m||g?"move":"none",(m||_||g)&&v!==p&&(v&&t.emit("node-drag-leave",h.node,v.node,d),t.emit("node-drag-enter",h.node,p.node,d)),(m||_||g)&&(s.value.dropNode=p),p.node.nextSibling===h.node&&(g=!1),p.node.previousSibling===h.node&&(m=!1),p.node.contains(h.node,!1)&&(_=!1),(h.node===p.node||h.node.contains(p.node))&&(m=!1,_=!1,g=!1);const y=p.$el.getBoundingClientRect(),w=n.value.getBoundingClientRect();let C;const S=m?_?.25:g?.45:1:-1,O=g?_?.75:m?.55:0:1;let T=-9999;const A=d.clientY-y.top;Ay.height*O?C="after":_?C="inner":C="none";const R=p.$el.querySelector(`.${a.be("node","expand-icon")}`).getBoundingClientRect(),B=r.value;C==="before"?T=R.top-w.top:C==="after"&&(T=R.bottom-w.top),B.style.top=`${T}px`,B.style.left=`${R.right-w.left}px`,C==="inner"?Xr(p.$el,a.is("drop-inner")):er(p.$el,a.is("drop-inner")),s.value.showDropIndicator=C==="before"||C==="after",s.value.allowDrop=s.value.showDropIndicator||b,s.value.dropType=C,t.emit("node-drag-over",h.node,p.node,d)},treeNodeDragEnd:d=>{const{draggingNode:f,dropType:p,dropNode:v}=s.value;if(d.preventDefault(),d.dataTransfer.dropEffect="move",f&&v){const h={data:f.node.data};p!=="none"&&f.node.remove(),p==="before"?v.node.parent.insertBefore(h,v.node):p==="after"?v.node.parent.insertAfter(h,v.node):p==="inner"&&v.node.insertChild(h),p!=="none"&&o.value.registerNode(h),er(v.$el,a.is("drop-inner")),t.emit("node-drag-end",f.node,v.node,p,d),p!=="none"&&t.emit("node-drop",f.node,v.node,p,d)}f&&!v&&t.emit("node-drag-end",f.node,null,p,d),s.value.showDropIndicator=!1,s.value.draggingNode=null,s.value.dropNode=null,s.value.allowDrop=!0}}),{dragState:s}}const SSe=oe({name:"ElTreeNode",components:{ElCollapseTransition:rf,ElCheckbox:kr,NodeContent:ESe,ElIcon:Ke,Loading:Fo},props:{node:{type:$2,default:()=>({})},props:{type:Object,default:()=>({})},accordion:Boolean,renderContent:Function,renderAfterExpand:Boolean,showCheckbox:{type:Boolean,default:!1}},emits:["node-expand"],setup(e,t){const n=Oe("tree"),{broadcastExpanded:r}=Z5(e),o=Fe("RootTree"),a=P(!1),s=P(!1),l=P(null),i=P(null),u=P(null),d=Fe(J5),f=tt();ct("NodeInstance",f),e.node.expanded&&(a.value=!0,s.value=!0);const p=o.props.children||"children";Ce(()=>{const A=e.node.data[p];return A&&[...A]},()=>{e.node.updateChildren()}),Ce(()=>e.node.indeterminate,A=>{m(e.node.checked,A)}),Ce(()=>e.node.checked,A=>{m(A,e.node.indeterminate)}),Ce(()=>e.node.expanded,A=>{He(()=>a.value=A),A&&(s.value=!0)});const v=A=>Yv(o.props.nodeKey,A.data),h=A=>{const R=e.props.class;if(!R)return{};let B;if(Xe(R)){const{data:V}=A;B=R(V,A)}else B=R;return Qe(B)?{[B]:!0}:B},m=(A,R)=>{(l.value!==A||i.value!==R)&&o.ctx.emit("check-change",e.node.data,A,R),l.value=A,i.value=R},_=A=>{S2(o.store,o.ctx.emit,()=>o.store.value.setCurrentNode(e.node)),o.currentNode.value=e.node,o.props.expandOnClickNode&&b(),o.props.checkOnClickNode&&!e.node.disabled&&y(null,{target:{checked:!e.node.checked}}),o.ctx.emit("node-click",e.node.data,e.node,f,A)},g=A=>{o.instance.vnode.props.onNodeContextmenu&&(A.stopPropagation(),A.preventDefault()),o.ctx.emit("node-contextmenu",A,e.node.data,e.node,f)},b=()=>{e.node.isLeaf||(a.value?(o.ctx.emit("node-collapse",e.node.data,e.node,f),e.node.collapse()):(e.node.expand(),t.emit("node-expand",e.node.data,e.node,f)))},y=(A,R)=>{e.node.setChecked(R.target.checked,!o.props.checkStrictly),He(()=>{const B=o.store.value;o.ctx.emit("check",e.node.data,{checkedNodes:B.getCheckedNodes(),checkedKeys:B.getCheckedKeys(),halfCheckedNodes:B.getHalfCheckedNodes(),halfCheckedKeys:B.getHalfCheckedKeys()})})};return{ns:n,node$:u,tree:o,expanded:a,childNodeRendered:s,oldChecked:l,oldIndeterminate:i,getNodeKey:v,getNodeClass:h,handleSelectChange:m,handleClick:_,handleContextMenu:g,handleExpandIconClick:b,handleCheckChange:y,handleChildNodeExpand:(A,R,B)=>{r(R),o.ctx.emit("node-expand",A,R,B)},handleDragStart:A=>{o.props.draggable&&d.treeNodeDragStart({event:A,treeNode:e})},handleDragOver:A=>{A.preventDefault(),o.props.draggable&&d.treeNodeDragOver({event:A,treeNode:{$el:u.value,node:e.node}})},handleDrop:A=>{A.preventDefault()},handleDragEnd:A=>{o.props.draggable&&d.treeNodeDragEnd(A)},CaretRight:qh}}}),kSe=["aria-expanded","aria-disabled","aria-checked","draggable","data-key"],$Se=["aria-expanded"];function TSe(e,t,n,r,o,a){const s=nt("el-icon"),l=nt("el-checkbox"),i=nt("loading"),u=nt("node-content"),d=nt("el-tree-node"),f=nt("el-collapse-transition");return ot((E(),M("div",{ref:"node$",class:N([e.ns.b("node"),e.ns.is("expanded",e.expanded),e.ns.is("current",e.node.isCurrent),e.ns.is("hidden",!e.node.visible),e.ns.is("focusable",!e.node.disabled),e.ns.is("checked",!e.node.disabled&&e.node.checked),e.getNodeClass(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.node.disabled,"aria-checked":e.node.checked,draggable:e.tree.props.draggable,"data-key":e.getNodeKey(e.node),onClick:t[1]||(t[1]=Je((...p)=>e.handleClick&&e.handleClick(...p),["stop"])),onContextmenu:t[2]||(t[2]=(...p)=>e.handleContextMenu&&e.handleContextMenu(...p)),onDragstart:t[3]||(t[3]=Je((...p)=>e.handleDragStart&&e.handleDragStart(...p),["stop"])),onDragover:t[4]||(t[4]=Je((...p)=>e.handleDragOver&&e.handleDragOver(...p),["stop"])),onDragend:t[5]||(t[5]=Je((...p)=>e.handleDragEnd&&e.handleDragEnd(...p),["stop"])),onDrop:t[6]||(t[6]=Je((...p)=>e.handleDrop&&e.handleDrop(...p),["stop"]))},[k("div",{class:N(e.ns.be("node","content")),style:We({paddingLeft:(e.node.level-1)*e.tree.props.indent+"px"})},[e.tree.props.icon||e.CaretRight?(E(),me(s,{key:0,class:N([e.ns.be("node","expand-icon"),e.ns.is("leaf",e.node.isLeaf),{expanded:!e.node.isLeaf&&e.expanded}]),onClick:Je(e.handleExpandIconClick,["stop"])},{default:ue(()=>[(E(),me(pt(e.tree.props.icon||e.CaretRight)))]),_:1},8,["class","onClick"])):fe("v-if",!0),e.showCheckbox?(E(),me(l,{key:1,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:!!e.node.disabled,onClick:t[0]||(t[0]=Je(()=>{},["stop"])),onChange:e.handleCheckChange},null,8,["model-value","indeterminate","disabled","onChange"])):fe("v-if",!0),e.node.loading?(E(),me(s,{key:2,class:N([e.ns.be("node","loading-icon"),e.ns.is("loading")])},{default:ue(()=>[X(i)]),_:1},8,["class"])):fe("v-if",!0),X(u,{node:e.node,"render-content":e.renderContent},null,8,["node","render-content"])],6),X(f,null,{default:ue(()=>[!e.renderAfterExpand||e.childNodeRendered?ot((E(),M("div",{key:0,class:N(e.ns.be("node","children")),role:"group","aria-expanded":e.expanded},[(E(!0),M(qe,null,vt(e.node.childNodes,p=>(E(),me(d,{key:e.getNodeKey(p),"render-content":e.renderContent,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,node:p,accordion:e.accordion,props:e.props,onNodeExpand:e.handleChildNodeExpand},null,8,["render-content","render-after-expand","show-checkbox","node","accordion","props","onNodeExpand"]))),128))],10,$Se)),[[yt,e.expanded]]):fe("v-if",!0)]),_:1})],42,kSe)),[[yt,e.node.visible]])}var OSe=Ie(SSe,[["render",TSe],["__file","/home/runner/work/element-plus/element-plus/packages/components/tree/src/tree-node.vue"]]);function MSe({el$:e},t){const n=Oe("tree"),r=xt([]),o=xt([]);rt(()=>{s()}),lo(()=>{r.value=Array.from(e.value.querySelectorAll("[role=treeitem]")),o.value=Array.from(e.value.querySelectorAll("input[type=checkbox]"))}),Ce(o,l=>{l.forEach(i=>{i.setAttribute("tabindex","-1")})}),Dt(e,"keydown",l=>{const i=l.target;if(!i.className.includes(n.b("node")))return;const u=l.code;r.value=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`));const d=r.value.indexOf(i);let f;if([Ge.up,Ge.down].includes(u)){if(l.preventDefault(),u===Ge.up){f=d===-1?0:d!==0?d-1:r.value.length-1;const v=f;for(;!t.value.getNode(r.value[f].dataset.key).canFocus;){if(f--,f===v){f=-1;break}f<0&&(f=r.value.length-1)}}else{f=d===-1?0:d=r.value.length&&(f=0)}}f!==-1&&r.value[f].focus()}[Ge.left,Ge.right].includes(u)&&(l.preventDefault(),i.click());const p=i.querySelector('[type="checkbox"]');[Ge.enter,Ge.space].includes(u)&&p&&(l.preventDefault(),p.click())});const s=()=>{var l;r.value=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`)),o.value=Array.from(e.value.querySelectorAll("input[type=checkbox]"));const i=e.value.querySelectorAll(`.${n.is("checked")}[role=treeitem]`);if(i.length){i[0].setAttribute("tabindex","0");return}(l=r.value[0])==null||l.setAttribute("tabindex","0")}}const NSe=oe({name:"ElTree",components:{ElTreeNode:OSe},props:{data:{type:Array,default:()=>[]},emptyText:{type:String},renderAfterExpand:{type:Boolean,default:!0},nodeKey:String,checkStrictly:Boolean,defaultExpandAll:Boolean,expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkDescendants:{type:Boolean,default:!1},autoExpandParent:{type:Boolean,default:!0},defaultCheckedKeys:Array,defaultExpandedKeys:Array,currentNodeKey:[String,Number],renderContent:Function,showCheckbox:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},allowDrag:Function,allowDrop:Function,props:{type:Object,default:()=>({children:"children",label:"label",disabled:"disabled"})},lazy:{type:Boolean,default:!1},highlightCurrent:Boolean,load:Function,filterNodeMethod:Function,accordion:Boolean,indent:{type:Number,default:18},icon:{type:zt}},emits:["check-change","current-change","node-click","node-contextmenu","node-collapse","node-expand","check","node-drag-start","node-drag-end","node-drop","node-drag-leave","node-drag-enter","node-drag-over"],setup(e,t){const{t:n}=Ct(),r=Oe("tree"),o=P(new ySe({key:e.nodeKey,data:e.data,lazy:e.lazy,props:e.props,load:e.load,currentNodeKey:e.currentNodeKey,checkStrictly:e.checkStrictly,checkDescendants:e.checkDescendants,defaultCheckedKeys:e.defaultCheckedKeys,defaultExpandedKeys:e.defaultExpandedKeys,autoExpandParent:e.autoExpandParent,defaultExpandAll:e.defaultExpandAll,filterNodeMethod:e.filterNodeMethod}));o.value.initialize();const a=P(o.value.root),s=P(null),l=P(null),i=P(null),{broadcastExpanded:u}=Z5(e),{dragState:d}=CSe({props:e,ctx:t,el$:l,dropIndicator$:i,store:o});MSe({el$:l},o);const f=$(()=>{const{childNodes:x}=a.value;return!x||x.length===0||x.every(({visible:L})=>!L)});Ce(()=>e.currentNodeKey,x=>{o.value.setCurrentNodeKey(x)}),Ce(()=>e.defaultCheckedKeys,x=>{o.value.setDefaultCheckedKey(x)}),Ce(()=>e.defaultExpandedKeys,x=>{o.value.setDefaultExpandedKeys(x)}),Ce(()=>e.data,x=>{o.value.setData(x)},{deep:!0}),Ce(()=>e.checkStrictly,x=>{o.value.checkStrictly=x});const p=x=>{if(!e.filterNodeMethod)throw new Error("[Tree] filterNodeMethod is required when filter");o.value.filter(x)},v=x=>Yv(e.nodeKey,x.data),h=x=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in getNodePath");const L=o.value.getNode(x);if(!L)return[];const z=[L.data];let q=L.parent;for(;q&&q!==a.value;)z.push(q.data),q=q.parent;return z.reverse()},m=(x,L)=>o.value.getCheckedNodes(x,L),_=x=>o.value.getCheckedKeys(x),g=()=>{const x=o.value.getCurrentNode();return x?x.data:null},b=()=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in getCurrentKey");const x=g();return x?x[e.nodeKey]:null},y=(x,L)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCheckedNodes");o.value.setCheckedNodes(x,L)},w=(x,L)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCheckedKeys");o.value.setCheckedKeys(x,L)},C=(x,L,z)=>{o.value.setChecked(x,L,z)},S=()=>o.value.getHalfCheckedNodes(),O=()=>o.value.getHalfCheckedKeys(),T=(x,L=!0)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCurrentNode");S2(o,t.emit,()=>o.value.setUserCurrentNode(x,L))},A=(x,L=!0)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in setCurrentKey");S2(o,t.emit,()=>o.value.setCurrentNodeKey(x,L))},R=x=>o.value.getNode(x),B=x=>{o.value.remove(x)},V=(x,L)=>{o.value.append(x,L)},H=(x,L)=>{o.value.insertBefore(x,L)},U=(x,L)=>{o.value.insertAfter(x,L)},K=(x,L,z)=>{u(L),t.emit("node-expand",x,L,z)},I=(x,L)=>{if(!e.nodeKey)throw new Error("[Tree] nodeKey is required in updateKeyChild");o.value.updateChildren(x,L)};return ct("RootTree",{ctx:t,props:e,store:o,root:a,currentNode:s,instance:tt()}),ct(oo,void 0),{ns:r,store:o,root:a,currentNode:s,dragState:d,el$:l,dropIndicator$:i,isEmpty:f,filter:p,getNodeKey:v,getNodePath:h,getCheckedNodes:m,getCheckedKeys:_,getCurrentNode:g,getCurrentKey:b,setCheckedNodes:y,setCheckedKeys:w,setChecked:C,getHalfCheckedNodes:S,getHalfCheckedKeys:O,setCurrentNode:T,setCurrentKey:A,t:n,getNode:R,remove:B,append:V,insertBefore:H,insertAfter:U,handleNodeExpand:K,updateKeyChildren:I}}});function ASe(e,t,n,r,o,a){var s;const l=nt("el-tree-node");return E(),M("div",{ref:"el$",class:N([e.ns.b(),e.ns.is("dragging",!!e.dragState.draggingNode),e.ns.is("drop-not-allow",!e.dragState.allowDrop),e.ns.is("drop-inner",e.dragState.dropType==="inner"),{[e.ns.m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[(E(!0),M(qe,null,vt(e.root.childNodes,i=>(E(),me(l,{key:e.getNodeKey(i),node:i,props:e.props,accordion:e.accordion,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,"render-content":e.renderContent,onNodeExpand:e.handleNodeExpand},null,8,["node","props","accordion","render-after-expand","show-checkbox","render-content","onNodeExpand"]))),128)),e.isEmpty?(E(),M("div",{key:0,class:N(e.ns.e("empty-block"))},[k("span",{class:N(e.ns.e("empty-text"))},xe((s=e.emptyText)!=null?s:e.t("el.tree.emptyText")),3)],2)):fe("v-if",!0),ot(k("div",{ref:"dropIndicator$",class:N(e.ns.e("drop-indicator"))},null,2),[[yt,e.dragState.showDropIndicator]])],2)}var $c=Ie(NSe,[["render",ASe],["__file","/home/runner/work/element-plus/element-plus/packages/components/tree/src/tree.vue"]]);$c.install=e=>{e.component($c.name,$c)};const sd=$c,RSe=sd,xSe=(e,{attrs:t},{tree:n,key:r})=>{const o=Oe("tree-select"),a={...Co(an(e),Object.keys(ss.props)),...t,valueKey:r,popperClass:$(()=>{const s=[o.e("popper")];return e.popperClass&&s.push(e.popperClass),s.join(" ")}),filterMethod:(s="")=>{e.filterMethod&&e.filterMethod(s),He(()=>{var l;(l=n.value)==null||l.filter(s)})},onVisibleChange:s=>{var l;(l=t.onVisibleChange)==null||l.call(t,s),e.filterable&&s&&a.filterMethod()}};return a},ISe=oe({extends:Jc,setup(e,t){const n=Jc.setup(e,t);delete n.selectOptionClick;const r=tt().proxy;return He(()=>{n.select.cachedOptions.get(r.value)||n.select.onOptionCreate(r)}),n},methods:{selectOptionClick(){this.$el.parentElement.click()}}});function T2(e){return e||e===0}function Xv(e){return Array.isArray(e)&&e.length}function op(e){return Array.isArray(e)?e:T2(e)?[e]:[]}function Tc(e,t,n,r,o){for(let a=0;a{Ce(()=>e.modelValue,()=>{e.showCheckbox&&He(()=>{const f=a.value;f&&!ur(f.getCheckedKeys(),op(e.modelValue))&&f.setCheckedKeys(op(e.modelValue))})},{immediate:!0,deep:!0});const l=$(()=>({value:s.value,label:"label",children:"children",disabled:"disabled",isLeaf:"isLeaf",...e.props})),i=(f,p)=>{var v;const h=l.value[f];return Xe(h)?h(p,(v=a.value)==null?void 0:v.getNode(i("value",p))):p[h]},u=op(e.modelValue).map(f=>Tc(e.data||[],p=>i("value",p)===f,p=>i("children",p),(p,v,h,m)=>m&&i("value",m))).filter(f=>T2(f)),d=$(()=>{if(!e.renderAfterExpand&&!e.lazy)return[];const f=[];return Q5(e.data.concat(e.cacheData),p=>{const v=i("value",p);f.push({value:v,currentLabel:i("label",p),isDisabled:i("disabled",p)})},p=>i("children",p)),f});return{...Co(an(e),Object.keys(sd.props)),...t,nodeKey:s,expandOnClickNode:$(()=>!e.checkStrictly&&e.expandOnClickNode),defaultExpandedKeys:$(()=>e.defaultExpandedKeys?e.defaultExpandedKeys.concat(u):u),renderContent:(f,{node:p,data:v,store:h})=>f(ISe,{value:i("value",v),label:i("label",v),disabled:i("disabled",v)},e.renderContent?()=>e.renderContent(f,{node:p,data:v,store:h}):n.default?()=>n.default({node:p,data:v,store:h}):void 0),filterNodeMethod:(f,p,v)=>{var h;return e.filterNodeMethod?e.filterNodeMethod(f,p,v):f?(h=i("label",p))==null?void 0:h.includes(f):!0},onNodeClick:(f,p,v)=>{var h,m,_;if((h=t.onNodeClick)==null||h.call(t,f,p,v),!(e.showCheckbox&&e.checkOnClickNode))if(!e.showCheckbox&&(e.checkStrictly||p.isLeaf)){if(!i("disabled",f)){const g=(m=o.value)==null?void 0:m.options.get(i("value",f));(_=o.value)==null||_.handleOptionSelect(g,!0)}}else e.expandOnClickNode&&v.proxy.handleExpandIconClick()},onCheck:(f,p)=>{var v;(v=t.onCheck)==null||v.call(t,f,p);const h=i("value",f);if(e.checkStrictly)r(ut,e.multiple?p.checkedKeys:p.checkedKeys.includes(h)?h:void 0);else if(e.multiple)r(ut,a.value.getCheckedKeys(!0));else{const m=Tc([f],b=>!Xv(i("children",b))&&!i("disabled",b),b=>i("children",b)),_=m?i("value",m):void 0,g=T2(e.modelValue)&&!!Tc([f],b=>i("value",b)===e.modelValue,b=>i("children",b));r(ut,_===e.modelValue||g?void 0:_)}},cacheOptions:d}};var PSe=oe({props:{data:{type:Array,default:()=>[]}},setup(e){const t=Fe(bu);return Ce(()=>e.data,()=>{e.data.forEach(n=>{t.cachedOptions.has(n.value)||t.cachedOptions.set(n.value,n)}),t.setSelected()},{immediate:!0,deep:!0}),()=>{}}});const DSe=oe({name:"ElTreeSelect",inheritAttrs:!1,props:{...ss.props,...sd.props,cacheData:{type:Array,default:()=>[]}},setup(e,t){const{slots:n,expose:r}=t,o=P(),a=P(),s=$(()=>e.nodeKey||e.valueKey||"value"),l=xSe(e,t,{select:o,tree:a,key:s}),{cacheOptions:i,...u}=LSe(e,t,{select:o,tree:a,key:s}),d=Et({});return r(d),rt(()=>{Object.assign(d,{...Co(a.value,["filter","updateKeyChildren","getCheckedNodes","setCheckedNodes","getCheckedKeys","setCheckedKeys","setChecked","getHalfCheckedNodes","getHalfCheckedKeys","getCurrentKey","getCurrentNode","setCurrentKey","setCurrentNode","getNode","remove","append","insertBefore","insertAfter"]),...Co(o.value,["focus","blur"])})}),()=>je(ss,Et({...l,ref:f=>o.value=f}),{...n,default:()=>[je(PSe,{data:i.value}),je(sd,Et({...u,ref:f=>a.value=f}))]})}});var Oc=Ie(DSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tree-select/src/tree-select.vue"]]);Oc.install=e=>{e.component(Oc.name,Oc)};const zSe=Oc,VSe=zSe,Zv=Symbol(),BSe={key:-1,level:-1,data:{}};var jl=(e=>(e.KEY="id",e.LABEL="label",e.CHILDREN="children",e.DISABLED="disabled",e))(jl||{}),O2=(e=>(e.ADD="add",e.DELETE="delete",e))(O2||{});const FSe=Le({data:{type:he(Array),default:()=>jt([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:he(Object),default:()=>jt({children:"children",label:"label",disabled:"disabled",value:"id"})},highlightCurrent:{type:Boolean,default:!1},showCheckbox:{type:Boolean,default:!1},defaultCheckedKeys:{type:he(Array),default:()=>jt([])},checkStrictly:{type:Boolean,default:!1},defaultExpandedKeys:{type:he(Array),default:()=>jt([])},indent:{type:Number,default:16},icon:{type:zt},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:{type:Boolean,default:!1},currentNodeKey:{type:he([String,Number])},accordion:{type:Boolean,default:!1},filterMethod:{type:he(Function)},perfMode:{type:Boolean,default:!0}}),HSe=Le({node:{type:he(Object),default:()=>jt(BSe)},expanded:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},showCheckbox:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},current:{type:Boolean,default:!1},hiddenExpandIcon:{type:Boolean,default:!1}}),USe=Le({node:{type:he(Object),required:!0}}),eE="node-click",tE="node-expand",nE="node-collapse",rE="current-change",oE="check",aE="check-change",sE="node-contextmenu",KSe={[eE]:(e,t,n)=>e&&t&&n,[tE]:(e,t)=>e&&t,[nE]:(e,t)=>e&&t,[rE]:(e,t)=>e&&t,[oE]:(e,t)=>e&&t,[aE]:(e,t)=>e&&typeof t=="boolean",[sE]:(e,t,n)=>e&&t&&n},WSe={click:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&typeof t=="boolean"};function jSe(e,t){const n=P(new Set),r=P(new Set),{emit:o}=tt();Ce([()=>t.value,()=>e.defaultCheckedKeys],()=>He(()=>{b(e.defaultCheckedKeys)}),{immediate:!0});const a=()=>{if(!t.value||!e.showCheckbox||e.checkStrictly)return;const{levelTreeNodeMap:y,maxLevel:w}=t.value,C=n.value,S=new Set;for(let O=w-1;O>=1;--O){const T=y.get(O);T&&T.forEach(A=>{const R=A.children;if(R){let B=!0,V=!1;for(const H of R){const U=H.key;if(C.has(U))V=!0;else if(S.has(U)){B=!1,V=!0;break}else B=!1}B?C.add(A.key):V?(S.add(A.key),C.delete(A.key)):(C.delete(A.key),S.delete(A.key))}})}r.value=S},s=y=>n.value.has(y.key),l=y=>r.value.has(y.key),i=(y,w,C=!0)=>{const S=n.value,O=(T,A)=>{S[A?O2.ADD:O2.DELETE](T.key);const R=T.children;!e.checkStrictly&&R&&R.forEach(B=>{B.disabled||O(B,A)})};O(y,w),a(),C&&u(y,w)},u=(y,w)=>{const{checkedNodes:C,checkedKeys:S}=h(),{halfCheckedNodes:O,halfCheckedKeys:T}=m();o(oE,y.data,{checkedKeys:S,checkedNodes:C,halfCheckedKeys:T,halfCheckedNodes:O}),o(aE,y.data,w)};function d(y=!1){return h(y).checkedKeys}function f(y=!1){return h(y).checkedNodes}function p(){return m().halfCheckedKeys}function v(){return m().halfCheckedNodes}function h(y=!1){const w=[],C=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:S}=t.value;n.value.forEach(O=>{const T=S.get(O);T&&(!y||y&&T.isLeaf)&&(C.push(O),w.push(T.data))})}return{checkedKeys:C,checkedNodes:w}}function m(){const y=[],w=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:C}=t.value;r.value.forEach(S=>{const O=C.get(S);O&&(w.push(S),y.push(O.data))})}return{halfCheckedNodes:y,halfCheckedKeys:w}}function _(y){n.value.clear(),r.value.clear(),b(y)}function g(y,w){if(t!=null&&t.value&&e.showCheckbox){const C=t.value.treeNodeMap.get(y);C&&i(C,w,!1)}}function b(y){if(t!=null&&t.value){const{treeNodeMap:w}=t.value;if(e.showCheckbox&&w&&y)for(const C of y){const S=w.get(C);S&&!s(S)&&i(S,!0,!1)}}}return{updateCheckedKeys:a,toggleCheckbox:i,isChecked:s,isIndeterminate:l,getCheckedKeys:d,getCheckedNodes:f,getHalfCheckedKeys:p,getHalfCheckedNodes:v,setChecked:g,setCheckedKeys:_}}function qSe(e,t){const n=P(new Set([])),r=P(new Set([])),o=$(()=>Xe(e.filterMethod));function a(l){var i;if(!o.value)return;const u=new Set,d=r.value,f=n.value,p=[],v=((i=t.value)==null?void 0:i.treeNodes)||[],h=e.filterMethod;f.clear();function m(_){_.forEach(g=>{p.push(g),h!=null&&h(l,g.data)?p.forEach(y=>{u.add(y.key)}):g.isLeaf&&f.add(g.key);const b=g.children;if(b&&m(b),!g.isLeaf){if(!u.has(g.key))f.add(g.key);else if(b){let y=!0;for(const w of b)if(!f.has(w.key)){y=!1;break}y?d.add(g.key):d.delete(g.key)}}p.pop()})}return m(v),u}function s(l){return r.value.has(l.key)}return{hiddenExpandIconKeySet:r,hiddenNodeKeySet:n,doFilter:a,isForceHiddenExpandIcon:s}}function GSe(e,t){const n=P(new Set(e.defaultExpandedKeys)),r=P(),o=xt();Ce(()=>e.currentNodeKey,Y=>{r.value=Y},{immediate:!0}),Ce(()=>e.data,Y=>{de(Y)},{immediate:!0});const{isIndeterminate:a,isChecked:s,toggleCheckbox:l,getCheckedKeys:i,getCheckedNodes:u,getHalfCheckedKeys:d,getHalfCheckedNodes:f,setChecked:p,setCheckedKeys:v}=jSe(e,o),{doFilter:h,hiddenNodeKeySet:m,isForceHiddenExpandIcon:_}=qSe(e,o),g=$(()=>{var Y;return((Y=e.props)==null?void 0:Y.value)||jl.KEY}),b=$(()=>{var Y;return((Y=e.props)==null?void 0:Y.children)||jl.CHILDREN}),y=$(()=>{var Y;return((Y=e.props)==null?void 0:Y.disabled)||jl.DISABLED}),w=$(()=>{var Y;return((Y=e.props)==null?void 0:Y.label)||jl.LABEL}),C=$(()=>{const Y=n.value,ce=m.value,ve=[],Ne=o.value&&o.value.treeNodes||[];function j(){const D=[];for(let F=Ne.length-1;F>=0;--F)D.push(Ne[F]);for(;D.length;){const F=D.pop();if(F&&(ce.has(F.key)||ve.push(F),Y.has(F.key))){const Q=F.children;if(Q){const ge=Q.length;for(let ne=ge-1;ne>=0;--ne)D.push(Q[ne])}}}}return j(),ve}),S=$(()=>C.value.length>0);function O(Y){const ce=new Map,ve=new Map;let Ne=1;function j(F,Q=1,ge=void 0){var ne;const Se=[];for(const ye of F){const Te=R(ye),we={level:Q,key:Te,data:ye};we.label=V(ye),we.parent=ge;const J=A(ye);we.disabled=B(ye),we.isLeaf=!J||J.length===0,J&&J.length&&(we.children=j(J,Q+1,we)),Se.push(we),ce.set(Te,we),ve.has(Q)||ve.set(Q,[]),(ne=ve.get(Q))==null||ne.push(we)}return Q>Ne&&(Ne=Q),Se}const D=j(Y);return{treeNodeMap:ce,levelTreeNodeMap:ve,maxLevel:Ne,treeNodes:D}}function T(Y){const ce=h(Y);ce&&(n.value=ce)}function A(Y){return Y[b.value]}function R(Y){return Y?Y[g.value]:""}function B(Y){return Y[y.value]}function V(Y){return Y[w.value]}function H(Y){n.value.has(Y.key)?z(Y):L(Y)}function U(Y){n.value=new Set(Y)}function K(Y,ce){t(eE,Y.data,Y,ce),I(Y),e.expandOnClickNode&&H(Y),e.showCheckbox&&e.checkOnClickNode&&!Y.disabled&&l(Y,!s(Y),!0)}function I(Y){G(Y)||(r.value=Y.key,t(rE,Y.data,Y))}function x(Y,ce){l(Y,ce)}function L(Y){const ce=n.value;if(o.value&&e.accordion){const{treeNodeMap:ve}=o.value;ce.forEach(Ne=>{const j=ve.get(Ne);Y&&Y.level===(j==null?void 0:j.level)&&ce.delete(Ne)})}ce.add(Y.key),t(tE,Y.data,Y)}function z(Y){n.value.delete(Y.key),t(nE,Y.data,Y)}function q(Y){return n.value.has(Y.key)}function le(Y){return!!Y.disabled}function G(Y){const ce=r.value;return!!ce&&ce===Y.key}function ae(){var Y,ce;if(r.value)return(ce=(Y=o.value)==null?void 0:Y.treeNodeMap.get(r.value))==null?void 0:ce.data}function be(){return r.value}function te(Y){r.value=Y}function de(Y){He(()=>o.value=O(Y))}function Z(Y){var ce;const ve=dt(Y)?R(Y):Y;return(ce=o.value)==null?void 0:ce.treeNodeMap.get(ve)}return{tree:o,flattenTree:C,isNotEmpty:S,getKey:R,getChildren:A,toggleExpand:H,toggleCheckbox:l,isExpanded:q,isChecked:s,isIndeterminate:a,isDisabled:le,isCurrent:G,isForceHiddenExpandIcon:_,handleNodeClick:K,handleNodeCheck:x,getCurrentNode:ae,getCurrentKey:be,setCurrentKey:te,getCheckedKeys:i,getCheckedNodes:u,getHalfCheckedKeys:d,getHalfCheckedNodes:f,setChecked:p,setCheckedKeys:v,filter:T,setData:de,getNode:Z,expandNode:L,collapseNode:z,setExpandedKeys:U}}var YSe=oe({name:"ElTreeNodeContent",props:USe,setup(e){const t=Fe(Zv),n=Oe("tree");return()=>{const r=e.node,{data:o}=r;return t!=null&&t.ctx.slots.default?t.ctx.slots.default({node:r,data:o}):je("span",{class:n.be("node","label")},[r==null?void 0:r.label])}}});const XSe=["aria-expanded","aria-disabled","aria-checked","data-key","onClick"],ZSe=oe({name:"ElTreeNode"}),JSe=oe({...ZSe,props:HSe,emits:WSe,setup(e,{emit:t}){const n=e,r=Fe(Zv),o=Oe("tree"),a=$(()=>{var f;return(f=r==null?void 0:r.props.indent)!=null?f:16}),s=$(()=>{var f;return(f=r==null?void 0:r.props.icon)!=null?f:qh}),l=f=>{t("click",n.node,f)},i=()=>{t("toggle",n.node)},u=f=>{t("check",n.node,f)},d=f=>{var p,v,h,m;(h=(v=(p=r==null?void 0:r.instance)==null?void 0:p.vnode)==null?void 0:v.props)!=null&&h.onNodeContextmenu&&(f.stopPropagation(),f.preventDefault()),r==null||r.ctx.emit(sE,f,(m=n.node)==null?void 0:m.data,n.node)};return(f,p)=>{var v,h,m;return E(),M("div",{ref:"node$",class:N([c(o).b("node"),c(o).is("expanded",f.expanded),c(o).is("current",f.current),c(o).is("focusable",!f.disabled),c(o).is("checked",!f.disabled&&f.checked)]),role:"treeitem",tabindex:"-1","aria-expanded":f.expanded,"aria-disabled":f.disabled,"aria-checked":f.checked,"data-key":(v=f.node)==null?void 0:v.key,onClick:Je(l,["stop"]),onContextmenu:d},[k("div",{class:N(c(o).be("node","content")),style:We({paddingLeft:`${(f.node.level-1)*c(a)}px`})},[c(s)?(E(),me(c(Ke),{key:0,class:N([c(o).is("leaf",!!((h=f.node)!=null&&h.isLeaf)),c(o).is("hidden",f.hiddenExpandIcon),{expanded:!((m=f.node)!=null&&m.isLeaf)&&f.expanded},c(o).be("node","expand-icon")]),onClick:Je(i,["stop"])},{default:ue(()=>[(E(),me(pt(c(s))))]),_:1},8,["class","onClick"])):fe("v-if",!0),f.showCheckbox?(E(),me(c(kr),{key:1,"model-value":f.checked,indeterminate:f.indeterminate,disabled:f.disabled,onChange:u,onClick:p[0]||(p[0]=Je(()=>{},["stop"]))},null,8,["model-value","indeterminate","disabled"])):fe("v-if",!0),X(c(YSe),{node:f.node},null,8,["node"])],6)],42,XSe)}}});var QSe=Ie(JSe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tree-v2/src/tree-node.vue"]]);const eke=26,tke=oe({name:"ElTreeV2"}),nke=oe({...tke,props:FSe,emits:KSe,setup(e,{expose:t,emit:n}){const r=e,o=En();ct(Zv,{ctx:{emit:n,slots:o},props:r,instance:tt()}),ct(oo,void 0);const{t:a}=Ct(),s=Oe("tree"),{flattenTree:l,isNotEmpty:i,toggleExpand:u,isExpanded:d,isIndeterminate:f,isChecked:p,isDisabled:v,isCurrent:h,isForceHiddenExpandIcon:m,handleNodeClick:_,handleNodeCheck:g,toggleCheckbox:b,getCurrentNode:y,getCurrentKey:w,setCurrentKey:C,getCheckedKeys:S,getCheckedNodes:O,getHalfCheckedKeys:T,getHalfCheckedNodes:A,setChecked:R,setCheckedKeys:B,filter:V,setData:H,getNode:U,expandNode:K,collapseNode:I,setExpandedKeys:x}=GSe(r,n);return t({toggleCheckbox:b,getCurrentNode:y,getCurrentKey:w,setCurrentKey:C,getCheckedKeys:S,getCheckedNodes:O,getHalfCheckedKeys:T,getHalfCheckedNodes:A,setChecked:R,setCheckedKeys:B,filter:V,setData:H,getNode:U,expandNode:K,collapseNode:I,setExpandedKeys:x}),(L,z)=>{var q;return E(),M("div",{class:N([c(s).b(),{[c(s).m("highlight-current")]:L.highlightCurrent}]),role:"tree"},[c(i)?(E(),me(c(v5),{key:0,"class-name":c(s).b("virtual-list"),data:c(l),total:c(l).length,height:L.height,"item-size":eke,"perf-mode":L.perfMode},{default:ue(({data:le,index:G,style:ae})=>[(E(),me(QSe,{key:le[G].key,style:We(ae),node:le[G],expanded:c(d)(le[G]),"show-checkbox":L.showCheckbox,checked:c(p)(le[G]),indeterminate:c(f)(le[G]),disabled:c(v)(le[G]),current:c(h)(le[G]),"hidden-expand-icon":c(m)(le[G]),onClick:c(_),onToggle:c(u),onCheck:c(g)},null,8,["style","node","expanded","show-checkbox","checked","indeterminate","disabled","current","hidden-expand-icon","onClick","onToggle","onCheck"]))]),_:1},8,["class-name","data","total","height","perf-mode"])):(E(),M("div",{key:1,class:N(c(s).e("empty-block"))},[k("span",{class:N(c(s).e("empty-text"))},xe((q=L.emptyText)!=null?q:c(a)("el.tree.emptyText")),3)],2))],2)}}});var rke=Ie(nke,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tree-v2/src/tree.vue"]]);const oke=lt(rke),ake="ElUpload";class ske extends Error{constructor(t,n,r,o){super(t),this.name="UploadAjaxError",this.status=n,this.method=r,this.url=o}}function U_(e,t,n){let r;return n.response?r=`${n.response.error||n.response}`:n.responseText?r=`${n.responseText}`:r=`fail to ${t.method} ${e} ${n.status}`,new ske(r,n.status,t.method,e)}function lke(e){const t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch{return t}}const ike=e=>{typeof XMLHttpRequest>"u"&&un(ake,"XMLHttpRequest is undefined");const t=new XMLHttpRequest,n=e.action;t.upload&&t.upload.addEventListener("progress",a=>{const s=a;s.percent=a.total>0?a.loaded/a.total*100:0,e.onProgress(s)});const r=new FormData;if(e.data)for(const[a,s]of Object.entries(e.data))Array.isArray(s)?r.append(a,...s):r.append(a,s);r.append(e.filename,e.file,e.file.name),t.addEventListener("error",()=>{e.onError(U_(n,e,t))}),t.addEventListener("load",()=>{if(t.status<200||t.status>=300)return e.onError(U_(n,e,t));e.onSuccess(lke(t))}),t.open(e.method,n,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);const o=e.headers||{};if(o instanceof Headers)o.forEach((a,s)=>t.setRequestHeader(s,a));else for(const[a,s]of Object.entries(o))yn(s)||t.setRequestHeader(a,String(s));return t.send(r),t},lE=["text","picture","picture-card"];let uke=1;const M2=()=>Date.now()+uke++,iE=Le({action:{type:String,default:"#"},headers:{type:he(Object)},method:{type:String,default:"post"},data:{type:Object,default:()=>jt({})},multiple:{type:Boolean,default:!1},name:{type:String,default:"file"},drag:{type:Boolean,default:!1},withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},type:{type:String,default:"select"},fileList:{type:he(Array),default:()=>jt([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:lE,default:"text"},httpRequest:{type:he(Function),default:ike},disabled:Boolean,limit:Number}),cke=Le({...iE,beforeUpload:{type:he(Function),default:Ot},beforeRemove:{type:he(Function)},onRemove:{type:he(Function),default:Ot},onChange:{type:he(Function),default:Ot},onPreview:{type:he(Function),default:Ot},onSuccess:{type:he(Function),default:Ot},onProgress:{type:he(Function),default:Ot},onError:{type:he(Function),default:Ot},onExceed:{type:he(Function),default:Ot}}),dke=Le({files:{type:he(Array),default:()=>jt([])},disabled:{type:Boolean,default:!1},handlePreview:{type:he(Function),default:Ot},listType:{type:String,values:lE,default:"text"}}),fke={remove:e=>!!e},pke=["onKeydown"],hke=["src"],vke=["onClick"],mke=["onClick"],gke=["onClick"],_ke=oe({name:"ElUploadList"}),bke=oe({..._ke,props:dke,emits:fke,setup(e,{emit:t}){const{t:n}=Ct(),r=Oe("upload"),o=Oe("icon"),a=Oe("list"),s=rr(),l=P(!1),i=u=>{t("remove",u)};return(u,d)=>(E(),me(nb,{tag:"ul",class:N([c(r).b("list"),c(r).bm("list",u.listType),c(r).is("disabled",c(s))]),name:c(a).b()},{default:ue(()=>[(E(!0),M(qe,null,vt(u.files,f=>(E(),M("li",{key:f.uid||f.name,class:N([c(r).be("list","item"),c(r).is(f.status),{focusing:l.value}]),tabindex:"0",onKeydown:_t(p=>!c(s)&&i(f),["delete"]),onFocus:d[0]||(d[0]=p=>l.value=!0),onBlur:d[1]||(d[1]=p=>l.value=!1),onClick:d[2]||(d[2]=p=>l.value=!1)},[ke(u.$slots,"default",{file:f},()=>[u.listType==="picture"||f.status!=="uploading"&&u.listType==="picture-card"?(E(),M("img",{key:0,class:N(c(r).be("list","item-thumbnail")),src:f.url,alt:""},null,10,hke)):fe("v-if",!0),f.status==="uploading"||u.listType!=="picture-card"?(E(),M("div",{key:1,class:N(c(r).be("list","item-info"))},[k("a",{class:N(c(r).be("list","item-name")),onClick:Je(p=>u.handlePreview(f),["prevent"])},[X(c(Ke),{class:N(c(o).m("document"))},{default:ue(()=>[X(c(dy))]),_:1},8,["class"]),k("span",{class:N(c(r).be("list","item-file-name"))},xe(f.name),3)],10,vke),f.status==="uploading"?(E(),me(c(s5),{key:0,type:u.listType==="picture-card"?"circle":"line","stroke-width":u.listType==="picture-card"?6:2,percentage:Number(f.percentage),style:We(u.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):fe("v-if",!0)],2)):fe("v-if",!0),k("label",{class:N(c(r).be("list","item-status-label"))},[u.listType==="text"?(E(),me(c(Ke),{key:0,class:N([c(o).m("upload-success"),c(o).m("circle-check")])},{default:ue(()=>[X(c(Bd))]),_:1},8,["class"])):["picture-card","picture"].includes(u.listType)?(E(),me(c(Ke),{key:1,class:N([c(o).m("upload-success"),c(o).m("check")])},{default:ue(()=>[X(c(Sl))]),_:1},8,["class"])):fe("v-if",!0)],2),c(s)?fe("v-if",!0):(E(),me(c(Ke),{key:2,class:N(c(o).m("close")),onClick:p=>i(f)},{default:ue(()=>[X(c(wr))]),_:2},1032,["class","onClick"])),fe(" Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn"),fe(" This is a bug which needs to be fixed "),fe(" TODO: Fix the incorrect navigation interaction "),c(s)?fe("v-if",!0):(E(),M("i",{key:3,class:N(c(o).m("close-tip"))},xe(c(n)("el.upload.deleteTip")),3)),u.listType==="picture-card"?(E(),M("span",{key:4,class:N(c(r).be("list","item-actions"))},[k("span",{class:N(c(r).be("list","item-preview")),onClick:p=>u.handlePreview(f)},[X(c(Ke),{class:N(c(o).m("zoom-in"))},{default:ue(()=>[X(c(Zh))]),_:1},8,["class"])],10,mke),c(s)?fe("v-if",!0):(E(),M("span",{key:0,class:N(c(r).be("list","item-delete")),onClick:p=>i(f)},[X(c(Ke),{class:N(c(o).m("delete"))},{default:ue(()=>[X(c(cy))]),_:1},8,["class"])],10,gke))],2)):fe("v-if",!0)])],42,pke))),128)),ke(u.$slots,"append")]),_:3},8,["class","name"]))}});var K_=Ie(bke,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-list.vue"]]);const yke=Le({disabled:{type:Boolean,default:!1}}),wke={file:e=>Ve(e)},Eke=["onDrop","onDragover"],uE="ElUploadDrag",Cke=oe({name:uE}),Ske=oe({...Cke,props:yke,emits:wke,setup(e,{emit:t}){const n=Fe(Uy);n||un(uE,"usage: ");const r=Oe("upload"),o=P(!1),a=rr(),s=i=>{if(a.value)return;o.value=!1;const u=Array.from(i.dataTransfer.files),d=n.accept.value;if(!d){t("file",u);return}const f=u.filter(p=>{const{type:v,name:h}=p,m=h.includes(".")?`.${h.split(".").pop()}`:"",_=v.replace(/\/.*$/,"");return d.split(",").map(g=>g.trim()).filter(g=>g).some(g=>g.startsWith(".")?m===g:/\/\*$/.test(g)?_===g.replace(/\/\*$/,""):/^[^/]+\/[^/]+$/.test(g)?v===g:!1)});t("file",f)},l=()=>{a.value||(o.value=!0)};return(i,u)=>(E(),M("div",{class:N([c(r).b("dragger"),c(r).is("dragover",o.value)]),onDrop:Je(s,["prevent"]),onDragover:Je(l,["prevent"]),onDragleave:u[0]||(u[0]=Je(d=>o.value=!1,["prevent"]))},[ke(i.$slots,"default")],42,Eke))}});var kke=Ie(Ske,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-dragger.vue"]]);const $ke=Le({...iE,beforeUpload:{type:he(Function),default:Ot},onRemove:{type:he(Function),default:Ot},onStart:{type:he(Function),default:Ot},onSuccess:{type:he(Function),default:Ot},onProgress:{type:he(Function),default:Ot},onError:{type:he(Function),default:Ot},onExceed:{type:he(Function),default:Ot}}),Tke=["onKeydown"],Oke=["name","multiple","accept"],Mke=oe({name:"ElUploadContent",inheritAttrs:!1}),Nke=oe({...Mke,props:$ke,setup(e,{expose:t}){const n=e,r=Oe("upload"),o=rr(),a=xt({}),s=xt(),l=h=>{if(h.length===0)return;const{autoUpload:m,limit:_,fileList:g,multiple:b,onStart:y,onExceed:w}=n;if(_&&g.length+h.length>_){w(h,g);return}b||(h=h.slice(0,1));for(const C of h){const S=C;S.uid=M2(),y(S),m&&i(S)}},i=async h=>{if(s.value.value="",!n.beforeUpload)return u(h);let m;try{m=await n.beforeUpload(h)}catch{m=!1}if(m===!1){n.onRemove(h);return}let _=h;m instanceof Blob&&(m instanceof File?_=m:_=new File([m],h.name,{type:h.type})),u(Object.assign(_,{uid:h.uid}))},u=h=>{const{headers:m,data:_,method:g,withCredentials:b,name:y,action:w,onProgress:C,onSuccess:S,onError:O,httpRequest:T}=n,{uid:A}=h,R={headers:m||{},withCredentials:b,file:h,data:_,method:g,filename:y,action:w,onProgress:V=>{C(V,h)},onSuccess:V=>{S(V,h),delete a.value[A]},onError:V=>{O(V,h),delete a.value[A]}},B=T(R);a.value[A]=B,B instanceof Promise&&B.then(R.onSuccess,R.onError)},d=h=>{const m=h.target.files;m&&l(Array.from(m))},f=()=>{o.value||(s.value.value="",s.value.click())},p=()=>{f()};return t({abort:h=>{KA(a.value).filter(h?([_])=>String(h.uid)===_:()=>!0).forEach(([_,g])=>{g instanceof XMLHttpRequest&&g.abort(),delete a.value[_]})},upload:i}),(h,m)=>(E(),M("div",{class:N([c(r).b(),c(r).m(h.listType),c(r).is("drag",h.drag)]),tabindex:"0",onClick:f,onKeydown:_t(Je(p,["self"]),["enter","space"])},[h.drag?(E(),me(kke,{key:0,disabled:c(o),onFile:l},{default:ue(()=>[ke(h.$slots,"default")]),_:3},8,["disabled"])):ke(h.$slots,"default",{key:1}),k("input",{ref_key:"inputRef",ref:s,class:N(c(r).e("input")),name:h.name,multiple:h.multiple,accept:h.accept,type:"file",onChange:d,onClick:m[0]||(m[0]=Je(()=>{},["stop"]))},null,42,Oke)],42,Tke))}});var W_=Ie(Nke,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-content.vue"]]);const j_="ElUpload",Ake=e=>{var t;(t=e.url)!=null&&t.startsWith("blob:")&&URL.revokeObjectURL(e.url)},Rke=(e,t)=>{const n=DA(e,"fileList",void 0,{passive:!0}),r=p=>n.value.find(v=>v.uid===p.uid);function o(p){var v;(v=t.value)==null||v.abort(p)}function a(p=["ready","uploading","success","fail"]){n.value=n.value.filter(v=>!p.includes(v.status))}const s=(p,v)=>{const h=r(v);h&&(console.error(p),h.status="fail",n.value.splice(n.value.indexOf(h),1),e.onError(p,h,n.value),e.onChange(h,n.value))},l=(p,v)=>{const h=r(v);h&&(e.onProgress(p,h,n.value),h.status="uploading",h.percentage=Math.round(p.percent))},i=(p,v)=>{const h=r(v);h&&(h.status="success",h.response=p,e.onSuccess(p,h,n.value),e.onChange(h,n.value))},u=p=>{yn(p.uid)&&(p.uid=M2());const v={name:p.name,percentage:0,status:"ready",size:p.size,raw:p,uid:p.uid};if(e.listType==="picture-card"||e.listType==="picture")try{v.url=URL.createObjectURL(p)}catch(h){h.message,e.onError(h,v,n.value)}n.value=[...n.value,v],e.onChange(v,n.value)},d=async p=>{const v=p instanceof File?r(p):p;v||un(j_,"file to be removed not found");const h=m=>{o(m);const _=n.value;_.splice(_.indexOf(m),1),e.onRemove(m,_),Ake(m)};e.beforeRemove?await e.beforeRemove(v,n.value)!==!1&&h(v):h(v)};function f(){n.value.filter(({status:p})=>p==="ready").forEach(({raw:p})=>{var v;return p&&((v=t.value)==null?void 0:v.upload(p))})}return Ce(()=>e.listType,p=>{p!=="picture-card"&&p!=="picture"||(n.value=n.value.map(v=>{const{raw:h,url:m}=v;if(!m&&h)try{v.url=URL.createObjectURL(h)}catch(_){e.onError(_,v,n.value)}return v}))}),Ce(n,p=>{for(const v of p)v.uid||(v.uid=M2()),v.status||(v.status="success")},{immediate:!0,deep:!0}),{uploadFiles:n,abort:o,clearFiles:a,handleError:s,handleProgress:l,handleStart:u,handleSuccess:i,handleRemove:d,submit:f}},xke=oe({name:"ElUpload"}),Ike=oe({...xke,props:cke,setup(e,{expose:t}){const n=e,r=En(),o=rr(),a=xt(),{abort:s,submit:l,clearFiles:i,uploadFiles:u,handleStart:d,handleError:f,handleRemove:p,handleSuccess:v,handleProgress:h}=Rke(n,a),m=$(()=>n.listType==="picture-card"),_=$(()=>({...n,fileList:u.value,onStart:d,onProgress:h,onSuccess:v,onError:f,onRemove:p}));return Ut(()=>{u.value.forEach(({url:g})=>{g!=null&&g.startsWith("blob:")&&URL.revokeObjectURL(g)})}),ct(Uy,{accept:qt(n,"accept")}),t({abort:s,submit:l,clearFiles:i,handleStart:d,handleRemove:p}),(g,b)=>(E(),M("div",null,[c(m)&&g.showFileList?(E(),me(K_,{key:0,disabled:c(o),"list-type":g.listType,files:c(u),"handle-preview":g.onPreview,onRemove:c(p)},No({append:ue(()=>[X(W_,ft({ref_key:"uploadRef",ref:a},c(_)),{default:ue(()=>[c(r).trigger?ke(g.$slots,"trigger",{key:0}):fe("v-if",!0),!c(r).trigger&&c(r).default?ke(g.$slots,"default",{key:1}):fe("v-if",!0)]),_:3},16)]),_:2},[g.$slots.file?{name:"default",fn:ue(({file:y})=>[ke(g.$slots,"file",{file:y})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):fe("v-if",!0),!c(m)||c(m)&&!g.showFileList?(E(),me(W_,ft({key:1,ref_key:"uploadRef",ref:a},c(_)),{default:ue(()=>[c(r).trigger?ke(g.$slots,"trigger",{key:0}):fe("v-if",!0),!c(r).trigger&&c(r).default?ke(g.$slots,"default",{key:1}):fe("v-if",!0)]),_:3},16)):fe("v-if",!0),g.$slots.trigger?ke(g.$slots,"default",{key:2}):fe("v-if",!0),ke(g.$slots,"tip"),!c(m)&&g.showFileList?(E(),me(K_,{key:3,disabled:c(o),"list-type":g.listType,files:c(u),"handle-preview":g.onPreview,onRemove:c(p)},No({_:2},[g.$slots.file?{name:"default",fn:ue(({file:y})=>[ke(g.$slots,"file",{file:y})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):fe("v-if",!0)]))}});var Lke=Ie(Ike,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload.vue"]]);const Pke=lt(Lke);var Dke=[n0e,p0e,j2e,rCe,Q2e,she,z8,bhe,yhe,Tn,U8,Bve,Wve,a1e,s1e,yme,sme,$me,kr,$1e,pw,Ame,Xme,Zme,Fme,Ege,Sw,Pge,Dge,zge,Vge,Bge,Q_e,u4e,c4e,S4e,Vw,z4e,M3e,N3e,A3e,Gw,nbe,rbe,Ke,gbe,Zw,Nn,Jw,Abe,Zbe,Jbe,Qbe,eye,lye,c8e,v8e,S8e,L8,s5,bw,H1e,F1e,F8e,j8e,Q8e,Wo,ss,Jc,Pye,Uwe,Zwe,Jwe,O5e,x5e,S5,K5e,Q5e,eEe,dEe,_9e,b9e,nCe,_Ce,bCe,Pi,_ve,kCe,NCe,ACe,Kn,rSe,_Se,RSe,VSe,oke,Pke];const Mr="ElInfiniteScroll",zke=50,Vke=200,Bke=0,Fke={delay:{type:Number,default:Vke},distance:{type:Number,default:Bke},disabled:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0}},Jv=(e,t)=>Object.entries(Fke).reduce((n,[r,o])=>{var a,s;const{type:l,default:i}=o,u=e.getAttribute(`infinite-scroll-${r}`);let d=(s=(a=t[u])!=null?a:u)!=null?s:i;return d=d==="false"?!1:d,d=l(d),n[r]=Number.isNaN(d)?i:d,n},{}),cE=e=>{const{observer:t}=e[Mr];t&&(t.disconnect(),delete e[Mr].observer)},Hke=(e,t)=>{const{container:n,containerEl:r,instance:o,observer:a,lastScrollTop:s}=e[Mr],{disabled:l,distance:i}=Jv(e,o),{clientHeight:u,scrollHeight:d,scrollTop:f}=r,p=f-s;if(e[Mr].lastScrollTop=f,a||l||p<0)return;let v=!1;if(n===e)v=d-(u+f)<=i;else{const{clientTop:h,scrollHeight:m}=e,_=FA(e,r);v=f+u>=_+h+m-i}v&&t.call(o)};function ap(e,t){const{containerEl:n,instance:r}=e[Mr],{disabled:o}=Jv(e,r);o||n.clientHeight===0||(n.scrollHeight<=n.clientHeight?t.call(r):cE(e))}const Uke={async mounted(e,t){const{instance:n,value:r}=t;Xe(r)||un(Mr,"'v-infinite-scroll' binding value must be a function"),await He();const{delay:o,immediate:a}=Jv(e,n),s=jh(e,!0),l=s===window?document.documentElement:s,i=Xa(Hke.bind(null,e,r),o);if(s){if(e[Mr]={instance:n,container:s,containerEl:l,delay:o,cb:r,onScroll:i,lastScrollTop:l.scrollTop},a){const u=new MutationObserver(Xa(ap.bind(null,e,r),zke));e[Mr].observer=u,u.observe(e,{childList:!0,subtree:!0}),ap(e,r)}s.addEventListener("scroll",i)}},unmounted(e){const{container:t,onScroll:n}=e[Mr];t==null||t.removeEventListener("scroll",n),cE(e)},async updated(e){if(!e[Mr])await He();else{const{containerEl:t,cb:n,observer:r}=e[Mr];t.clientHeight&&r&&ap(e,n)}}},N2=Uke;N2.install=e=>{e.directive("InfiniteScroll",N2)};const Kke=N2;function Wke(e){let t;const n=Oe("loading"),r=P(!1),o=Et({...e,originalPosition:"",originalOverflow:"",visible:!1});function a(v){o.text=v}function s(){const v=o.parent;if(!v.vLoadingAddClassList){let h=v.getAttribute("loading-number");h=Number.parseInt(h)-1,h?v.setAttribute("loading-number",h.toString()):(er(v,n.bm("parent","relative")),v.removeAttribute("loading-number")),er(v,n.bm("parent","hidden"))}l(),f.unmount()}function l(){var v,h;(h=(v=p.$el)==null?void 0:v.parentNode)==null||h.removeChild(p.$el)}function i(){var v;e.beforeClose&&!e.beforeClose()||(r.value=!0,clearTimeout(t),t=window.setTimeout(u,400),o.visible=!1,(v=e.closed)==null||v.call(e))}function u(){if(!r.value)return;const v=o.parent;r.value=!1,v.vLoadingAddClassList=void 0,s()}const f=ib({name:"ElLoading",setup(){return()=>{const v=o.spinner||o.svg,h=je("svg",{class:"circular",viewBox:o.svgViewBox?o.svgViewBox:"0 0 50 50",...v?{innerHTML:v}:{}},[je("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),m=o.text?je("p",{class:n.b("text")},[o.text]):void 0;return je(tn,{name:n.b("fade"),onAfterLeave:u},{default:ue(()=>[ot(X("div",{style:{backgroundColor:o.background||""},class:[n.b("mask"),o.customClass,o.fullscreen?"is-fullscreen":""]},[je("div",{class:n.b("spinner")},[h,m])]),[[yt,o.visible]])])})}}}),p=f.mount(document.createElement("div"));return{...an(o),setText:a,removeElLoadingChild:l,close:i,handleAfterLeave:u,vm:p,get $el(){return p.$el}}}let Zu;const A2=function(e={}){if(!gt)return;const t=jke(e);if(t.fullscreen&&Zu)return Zu;const n=Wke({...t,closed:()=>{var o;(o=t.closed)==null||o.call(t),t.fullscreen&&(Zu=void 0)}});qke(t,t.parent,n),q_(t,t.parent,n),t.parent.vLoadingAddClassList=()=>q_(t,t.parent,n);let r=t.parent.getAttribute("loading-number");return r?r=`${Number.parseInt(r)+1}`:r="1",t.parent.setAttribute("loading-number",r),t.parent.appendChild(n.$el),He(()=>n.visible.value=t.visible),t.fullscreen&&(Zu=n),n},jke=e=>{var t,n,r,o;let a;return Qe(e.target)?a=(t=document.querySelector(e.target))!=null?t:document.body:a=e.target||document.body,{parent:a===document.body||e.body?document.body:a,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:a===document.body&&((n=e.fullscreen)!=null?n:!0),lock:(r=e.lock)!=null?r:!1,customClass:e.customClass||"",visible:(o=e.visible)!=null?o:!0,target:a}},qke=async(e,t,n)=>{const{nextZIndex:r}=Ko(),o={};if(e.fullscreen)n.originalPosition.value=wo(document.body,"position"),n.originalOverflow.value=wo(document.body,"overflow"),o.zIndex=r();else if(e.parent===document.body){n.originalPosition.value=wo(document.body,"position"),await He();for(const a of["top","left"]){const s=a==="top"?"scrollTop":"scrollLeft";o[a]=`${e.target.getBoundingClientRect()[a]+document.body[s]+document.documentElement[s]-Number.parseInt(wo(document.body,`margin-${a}`),10)}px`}for(const a of["height","width"])o[a]=`${e.target.getBoundingClientRect()[a]}px`}else n.originalPosition.value=wo(t,"position");for(const[a,s]of Object.entries(o))n.$el.style[a]=s},q_=(e,t,n)=>{const r=Oe("loading");["absolute","fixed","sticky"].includes(n.originalPosition.value)?er(t,r.bm("parent","relative")):Xr(t,r.bm("parent","relative")),e.fullscreen&&e.lock?Xr(t,r.bm("parent","hidden")):er(t,r.bm("parent","hidden"))},R2=Symbol("ElLoading"),G_=(e,t)=>{var n,r,o,a;const s=t.instance,l=p=>dt(t.value)?t.value[p]:void 0,i=p=>{const v=Qe(p)&&(s==null?void 0:s[p])||p;return v&&P(v)},u=p=>i(l(p)||e.getAttribute(`element-loading-${lr(p)}`)),d=(n=l("fullscreen"))!=null?n:t.modifiers.fullscreen,f={text:u("text"),svg:u("svg"),svgViewBox:u("svgViewBox"),spinner:u("spinner"),background:u("background"),customClass:u("customClass"),fullscreen:d,target:(r=l("target"))!=null?r:d?void 0:e,body:(o=l("body"))!=null?o:t.modifiers.body,lock:(a=l("lock"))!=null?a:t.modifiers.lock};e[R2]={options:f,instance:A2(f)}},Gke=(e,t)=>{for(const n of Object.keys(t))kt(t[n])&&(t[n].value=e[n])},Y_={mounted(e,t){t.value&&G_(e,t)},updated(e,t){const n=e[R2];t.oldValue!==t.value&&(t.value&&!t.oldValue?G_(e,t):t.value&&t.oldValue?dt(t.value)&&Gke(t.value,n.options):n==null||n.instance.close())},unmounted(e){var t;(t=e[R2])==null||t.instance.close()}},Yke={install(e){e.directive("loading",Y_),e.config.globalProperties.$loading=A2},directive:Y_,service:A2},dE=["success","info","warning","error"],Yn=jt({customClass:"",center:!1,dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:gt?document.body:void 0}),Xke=Le({customClass:{type:String,default:Yn.customClass},center:{type:Boolean,default:Yn.center},dangerouslyUseHTMLString:{type:Boolean,default:Yn.dangerouslyUseHTMLString},duration:{type:Number,default:Yn.duration},icon:{type:zt,default:Yn.icon},id:{type:String,default:Yn.id},message:{type:he([String,Object,Function]),default:Yn.message},onClose:{type:he(Function),required:!1},showClose:{type:Boolean,default:Yn.showClose},type:{type:String,values:dE,default:Yn.type},offset:{type:Number,default:Yn.offset},zIndex:{type:Number,default:Yn.zIndex},grouping:{type:Boolean,default:Yn.grouping},repeatNum:{type:Number,default:Yn.repeatNum}}),Zke={destroy:()=>!0},Rr=d6([]),Jke=e=>{const t=Rr.findIndex(o=>o.id===e),n=Rr[t];let r;return t>0&&(r=Rr[t-1]),{current:n,prev:r}},Qke=e=>{const{prev:t}=Jke(e);return t?t.vm.exposed.bottom.value:0},e$e=(e,t)=>Rr.findIndex(r=>r.id===e)>0?20:t,t$e=["id"],n$e=["innerHTML"],r$e=oe({name:"ElMessage"}),o$e=oe({...r$e,props:Xke,emits:Zke,setup(e,{expose:t}){const n=e,{Close:r}=Jh,o=Oe("message"),a=P(),s=P(!1),l=P(0);let i;const u=$(()=>n.type?n.type==="error"?"danger":n.type:"info"),d=$(()=>{const w=n.type;return{[o.bm("icon",w)]:w&&wa[w]}}),f=$(()=>n.icon||wa[n.type]||""),p=$(()=>Qke(n.id)),v=$(()=>e$e(n.id,n.offset)+p.value),h=$(()=>l.value+v.value),m=$(()=>({top:`${v.value}px`,zIndex:n.zIndex}));function _(){n.duration!==0&&({stop:i}=ya(()=>{b()},n.duration))}function g(){i==null||i()}function b(){s.value=!1}function y({code:w}){w===Ge.esc&&b()}return rt(()=>{_(),s.value=!0}),Ce(()=>n.repeatNum,()=>{g(),_()}),Dt(document,"keydown",y),Rn(a,()=>{l.value=a.value.getBoundingClientRect().height}),t({visible:s,bottom:h,close:b}),(w,C)=>(E(),me(tn,{name:c(o).b("fade"),onBeforeLeave:w.onClose,onAfterLeave:C[0]||(C[0]=S=>w.$emit("destroy")),persisted:""},{default:ue(()=>[ot(k("div",{id:w.id,ref_key:"messageRef",ref:a,class:N([c(o).b(),{[c(o).m(w.type)]:w.type&&!w.icon},c(o).is("center",w.center),c(o).is("closable",w.showClose),w.customClass]),style:We(c(m)),role:"alert",onMouseenter:g,onMouseleave:_},[w.repeatNum>1?(E(),me(c(z8),{key:0,value:w.repeatNum,type:c(u),class:N(c(o).e("badge"))},null,8,["value","type","class"])):fe("v-if",!0),c(f)?(E(),me(c(Ke),{key:1,class:N([c(o).e("icon"),c(d)])},{default:ue(()=>[(E(),me(pt(c(f))))]),_:1},8,["class"])):fe("v-if",!0),ke(w.$slots,"default",{},()=>[w.dangerouslyUseHTMLString?(E(),M(qe,{key:1},[fe(" Caution here, message could've been compromised, never use user's input as message "),k("p",{class:N(c(o).e("content")),innerHTML:w.message},null,10,n$e)],2112)):(E(),M("p",{key:0,class:N(c(o).e("content"))},xe(w.message),3))]),w.showClose?(E(),me(c(Ke),{key:2,class:N(c(o).e("closeBtn")),onClick:Je(b,["stop"])},{default:ue(()=>[X(c(r))]),_:1},8,["class","onClick"])):fe("v-if",!0)],46,t$e),[[yt,s.value]])]),_:3},8,["name","onBeforeLeave"]))}});var a$e=Ie(o$e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/message/src/message.vue"]]);let s$e=1;const fE=e=>{const t=!e||Qe(e)||Vt(e)||Xe(e)?{message:e}:e,n={...Yn,...t};if(!n.appendTo)n.appendTo=document.body;else if(Qe(n.appendTo)){let r=document.querySelector(n.appendTo);Pr(r)||(r=document.body),n.appendTo=r}return n},l$e=e=>{const t=Rr.indexOf(e);if(t===-1)return;Rr.splice(t,1);const{handler:n}=e;n.close()},i$e=({appendTo:e,...t},n)=>{const{nextZIndex:r}=Ko(),o=`message_${s$e++}`,a=t.onClose,s=document.createElement("div"),l={...t,zIndex:r()+t.zIndex,id:o,onClose:()=>{a==null||a(),l$e(f)},onDestroy:()=>{ba(null,s)}},i=X(a$e,l,Xe(l.message)||Vt(l.message)?{default:Xe(l.message)?l.message:()=>l.message}:null);i.appContext=n||pl._context,ba(i,s),e.appendChild(s.firstElementChild);const u=i.component,f={id:o,vnode:i,vm:u,handler:{close:()=>{u.exposed.visible.value=!1}},props:i.component.props};return f},pl=(e={},t)=>{if(!gt)return{close:()=>{}};if(Ze(G0.max)&&Rr.length>=G0.max)return{close:()=>{}};const n=fE(e);if(n.grouping&&Rr.length){const o=Rr.find(({vnode:a})=>{var s;return((s=a.props)==null?void 0:s.message)===n.message});if(o)return o.props.repeatNum+=1,o.props.type=n.type,o.handler}const r=i$e(n,t);return Rr.push(r),r.handler};dE.forEach(e=>{pl[e]=(t={},n)=>{const r=fE(t);return pl({...r,type:e},n)}});function u$e(e){for(const t of Rr)(!e||e===t.props.type)&&t.handler.close()}pl.closeAll=u$e;pl._context=null;const Mc=Ny(pl,"$message"),c$e=oe({name:"ElMessageBox",directives:{TrapFocus:eve},components:{ElButton:Tn,ElFocusTrap:nf,ElInput:Nn,ElOverlay:kv,ElIcon:Ke,...Jh},inheritAttrs:!1,props:{buttonSize:{type:String,validator:Kd},modal:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},closeOnHashChange:{type:Boolean,default:!0},center:Boolean,draggable:Boolean,roundButton:{default:!1,type:Boolean},container:{type:String,default:"body"},boxType:{type:String,default:""}},emits:["vanish","action"],setup(e,{emit:t}){const{t:n}=Ct(),r=Oe("message-box"),o=P(!1),{nextZIndex:a}=Ko(),s=Et({autofocus:!0,beforeClose:null,callback:null,cancelButtonText:"",cancelButtonClass:"",confirmButtonText:"",confirmButtonClass:"",customClass:"",customStyle:{},dangerouslyUseHTMLString:!1,distinguishCancelAndClose:!1,icon:"",inputPattern:null,inputPlaceholder:"",inputType:"text",inputValue:null,inputValidator:null,inputErrorMessage:"",message:null,modalFade:!0,modalClass:"",showCancelButton:!1,showConfirmButton:!0,type:"",title:void 0,showInput:!1,action:"",confirmButtonLoading:!1,cancelButtonLoading:!1,confirmButtonDisabled:!1,editorErrorMessage:"",validateError:!1,zIndex:a()}),l=$(()=>{const H=s.type;return{[r.bm("icon",H)]:H&&wa[H]}}),i=Dr(),u=Dr(),d=sn($(()=>e.buttonSize),{prop:!0,form:!0,formItem:!0}),f=$(()=>s.icon||wa[s.type]||""),p=$(()=>!!s.message),v=P(),h=P(),m=P(),_=P(),g=P(),b=$(()=>s.confirmButtonClass);Ce(()=>s.inputValue,async H=>{await He(),e.boxType==="prompt"&&H!==null&&A()},{immediate:!0}),Ce(()=>o.value,H=>{var U,K;H&&(e.boxType!=="prompt"&&(s.autofocus?m.value=(K=(U=g.value)==null?void 0:U.$el)!=null?K:v.value:m.value=v.value),s.zIndex=a()),e.boxType==="prompt"&&(H?He().then(()=>{var I;_.value&&_.value.$el&&(s.autofocus?m.value=(I=R())!=null?I:v.value:m.value=v.value)}):(s.editorErrorMessage="",s.validateError=!1))});const y=$(()=>e.draggable);Gy(v,h,y),rt(async()=>{await He(),e.closeOnHashChange&&window.addEventListener("hashchange",w)}),Ut(()=>{e.closeOnHashChange&&window.removeEventListener("hashchange",w)});function w(){o.value&&(o.value=!1,He(()=>{s.action&&t("action",s.action)}))}const C=()=>{e.closeOnClickModal&&T(s.distinguishCancelAndClose?"close":"cancel")},S=cv(C),O=H=>{if(s.inputType!=="textarea")return H.preventDefault(),T("confirm")},T=H=>{var U;e.boxType==="prompt"&&H==="confirm"&&!A()||(s.action=H,s.beforeClose?(U=s.beforeClose)==null||U.call(s,H,s,w):w())},A=()=>{if(e.boxType==="prompt"){const H=s.inputPattern;if(H&&!H.test(s.inputValue||""))return s.editorErrorMessage=s.inputErrorMessage||n("el.messagebox.error"),s.validateError=!0,!1;const U=s.inputValidator;if(typeof U=="function"){const K=U(s.inputValue);if(K===!1)return s.editorErrorMessage=s.inputErrorMessage||n("el.messagebox.error"),s.validateError=!0,!1;if(typeof K=="string")return s.editorErrorMessage=K,s.validateError=!0,!1}}return s.editorErrorMessage="",s.validateError=!1,!0},R=()=>{const H=_.value.$refs;return H.input||H.textarea},B=()=>{T("close")},V=()=>{e.closeOnPressEscape&&B()};return e.lockScroll&&Xy(o),cpe(o),{...an(s),ns:r,overlayEvent:S,visible:o,hasMessage:p,typeClass:l,contentId:i,inputId:u,btnSize:d,iconComponent:f,confirmButtonClasses:b,rootRef:v,focusStartRef:m,headerRef:h,inputRef:_,confirmRef:g,doClose:w,handleClose:B,onCloseRequested:V,handleWrapperClick:C,handleInputEnter:O,handleAction:T,t:n}}}),d$e=["aria-label","aria-describedby"],f$e=["aria-label"],p$e=["id"];function h$e(e,t,n,r,o,a){const s=nt("el-icon"),l=nt("close"),i=nt("el-input"),u=nt("el-button"),d=nt("el-focus-trap"),f=nt("el-overlay");return E(),me(tn,{name:"fade-in-linear",onAfterLeave:t[11]||(t[11]=p=>e.$emit("vanish")),persisted:""},{default:ue(()=>[ot(X(f,{"z-index":e.zIndex,"overlay-class":[e.ns.is("message-box"),e.modalClass],mask:e.modal},{default:ue(()=>[k("div",{role:"dialog","aria-label":e.title,"aria-modal":"true","aria-describedby":e.showInput?void 0:e.contentId,class:N(`${e.ns.namespace.value}-overlay-message-box`),onClick:t[8]||(t[8]=(...p)=>e.overlayEvent.onClick&&e.overlayEvent.onClick(...p)),onMousedown:t[9]||(t[9]=(...p)=>e.overlayEvent.onMousedown&&e.overlayEvent.onMousedown(...p)),onMouseup:t[10]||(t[10]=(...p)=>e.overlayEvent.onMouseup&&e.overlayEvent.onMouseup(...p))},[X(d,{loop:"",trapped:e.visible,"focus-trap-el":e.rootRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:ue(()=>[k("div",{ref:"rootRef",class:N([e.ns.b(),e.customClass,e.ns.is("draggable",e.draggable),{[e.ns.m("center")]:e.center}]),style:We(e.customStyle),tabindex:"-1",onClick:t[7]||(t[7]=Je(()=>{},["stop"]))},[e.title!==null&&e.title!==void 0?(E(),M("div",{key:0,ref:"headerRef",class:N(e.ns.e("header"))},[k("div",{class:N(e.ns.e("title"))},[e.iconComponent&&e.center?(E(),me(s,{key:0,class:N([e.ns.e("status"),e.typeClass])},{default:ue(()=>[(E(),me(pt(e.iconComponent)))]),_:1},8,["class"])):fe("v-if",!0),k("span",null,xe(e.title),1)],2),e.showClose?(E(),M("button",{key:0,type:"button",class:N(e.ns.e("headerbtn")),"aria-label":e.t("el.messagebox.close"),onClick:t[0]||(t[0]=p=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel")),onKeydown:t[1]||(t[1]=_t(Je(p=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),["prevent"]),["enter"]))},[X(s,{class:N(e.ns.e("close"))},{default:ue(()=>[X(l)]),_:1},8,["class"])],42,f$e)):fe("v-if",!0)],2)):fe("v-if",!0),k("div",{id:e.contentId,class:N(e.ns.e("content"))},[k("div",{class:N(e.ns.e("container"))},[e.iconComponent&&!e.center&&e.hasMessage?(E(),me(s,{key:0,class:N([e.ns.e("status"),e.typeClass])},{default:ue(()=>[(E(),me(pt(e.iconComponent)))]),_:1},8,["class"])):fe("v-if",!0),e.hasMessage?(E(),M("div",{key:1,class:N(e.ns.e("message"))},[ke(e.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(E(),me(pt(e.showInput?"label":"p"),{key:1,for:e.showInput?e.inputId:void 0,innerHTML:e.message},null,8,["for","innerHTML"])):(E(),me(pt(e.showInput?"label":"p"),{key:0,for:e.showInput?e.inputId:void 0},{default:ue(()=>[bt(xe(e.dangerouslyUseHTMLString?"":e.message),1)]),_:1},8,["for"]))])],2)):fe("v-if",!0)],2),ot(k("div",{class:N(e.ns.e("input"))},[X(i,{id:e.inputId,ref:"inputRef",modelValue:e.inputValue,"onUpdate:modelValue":t[2]||(t[2]=p=>e.inputValue=p),type:e.inputType,placeholder:e.inputPlaceholder,"aria-invalid":e.validateError,class:N({invalid:e.validateError}),onKeydown:_t(e.handleInputEnter,["enter"])},null,8,["id","modelValue","type","placeholder","aria-invalid","class","onKeydown"]),k("div",{class:N(e.ns.e("errormsg")),style:We({visibility:e.editorErrorMessage?"visible":"hidden"})},xe(e.editorErrorMessage),7)],2),[[yt,e.showInput]])],10,p$e),k("div",{class:N(e.ns.e("btns"))},[e.showCancelButton?(E(),me(u,{key:0,loading:e.cancelButtonLoading,class:N([e.cancelButtonClass]),round:e.roundButton,size:e.btnSize,onClick:t[3]||(t[3]=p=>e.handleAction("cancel")),onKeydown:t[4]||(t[4]=_t(Je(p=>e.handleAction("cancel"),["prevent"]),["enter"]))},{default:ue(()=>[bt(xe(e.cancelButtonText||e.t("el.messagebox.cancel")),1)]),_:1},8,["loading","class","round","size"])):fe("v-if",!0),ot(X(u,{ref:"confirmRef",type:"primary",loading:e.confirmButtonLoading,class:N([e.confirmButtonClasses]),round:e.roundButton,disabled:e.confirmButtonDisabled,size:e.btnSize,onClick:t[5]||(t[5]=p=>e.handleAction("confirm")),onKeydown:t[6]||(t[6]=_t(Je(p=>e.handleAction("confirm"),["prevent"]),["enter"]))},{default:ue(()=>[bt(xe(e.confirmButtonText||e.t("el.messagebox.confirm")),1)]),_:1},8,["loading","class","round","disabled","size"]),[[yt,e.showConfirmButton]])],2)],6)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])],42,d$e)]),_:3},8,["z-index","overlay-class","mask"]),[[yt,e.visible]])]),_:3})}var v$e=Ie(c$e,[["render",h$e],["__file","/home/runner/work/element-plus/element-plus/packages/components/message-box/src/index.vue"]]);const ji=new Map,m$e=e=>{let t=document.body;return e.appendTo&&(Qe(e.appendTo)&&(t=document.querySelector(e.appendTo)),Pr(e.appendTo)&&(t=e.appendTo),Pr(t)||(t=document.body)),t},g$e=(e,t,n=null)=>{const r=X(v$e,e,Xe(e.message)||Vt(e.message)?{default:Xe(e.message)?e.message:()=>e.message}:null);return r.appContext=n,ba(r,t),m$e(e).appendChild(t.firstElementChild),r.component},_$e=()=>document.createElement("div"),b$e=(e,t)=>{const n=_$e();e.onVanish=()=>{ba(null,n),ji.delete(o)},e.onAction=a=>{const s=ji.get(o);let l;e.showInput?l={value:o.inputValue,action:a}:l=a,e.callback?e.callback(l,r.proxy):a==="cancel"||a==="close"?e.distinguishCancelAndClose&&a!=="cancel"?s.reject("close"):s.reject("cancel"):s.resolve(l)};const r=g$e(e,n,t),o=r.proxy;for(const a in e)mt(e,a)&&!mt(o.$props,a)&&(o[a]=e[a]);return o.visible=!0,o};function $l(e,t=null){if(!gt)return Promise.reject();let n;return Qe(e)||Vt(e)?e={message:e}:n=e.callback,new Promise((r,o)=>{const a=b$e(e,t??$l._context);ji.set(a,{options:e,callback:n,resolve:r,reject:o})})}const y$e=["alert","confirm","prompt"],w$e={alert:{closeOnPressEscape:!1,closeOnClickModal:!1},confirm:{showCancelButton:!0},prompt:{showCancelButton:!0,showInput:!0}};y$e.forEach(e=>{$l[e]=E$e(e)});function E$e(e){return(t,n,r,o)=>{let a="";return dt(n)?(r=n,a=""):_n(n)?a="":a=n,$l(Object.assign({title:a,message:t,type:"",...w$e[e]},r,{boxType:e}),o)}}$l.close=()=>{ji.forEach((e,t)=>{t.doClose()}),ji.clear()};$l._context=null;const ra=$l;ra.install=e=>{ra._context=e._context,e.config.globalProperties.$msgbox=ra,e.config.globalProperties.$messageBox=ra,e.config.globalProperties.$alert=ra.alert,e.config.globalProperties.$confirm=ra.confirm,e.config.globalProperties.$prompt=ra.prompt};const C$e=ra,pE=["success","info","warning","error"],S$e=Le({customClass:{type:String,default:""},dangerouslyUseHTMLString:{type:Boolean,default:!1},duration:{type:Number,default:4500},icon:{type:zt},id:{type:String,default:""},message:{type:he([String,Object]),default:""},offset:{type:Number,default:0},onClick:{type:he(Function),default:()=>{}},onClose:{type:he(Function),required:!0},position:{type:String,values:["top-right","top-left","bottom-right","bottom-left"],default:"top-right"},showClose:{type:Boolean,default:!0},title:{type:String,default:""},type:{type:String,values:[...pE,""],default:""},zIndex:{type:Number,default:0}}),k$e={destroy:()=>!0},$$e=["id"],T$e=["textContent"],O$e={key:0},M$e=["innerHTML"],N$e=oe({name:"ElNotification"}),A$e=oe({...N$e,props:S$e,emits:k$e,setup(e,{expose:t}){const n=e,r=Oe("notification"),{Close:o}=Oy,a=P(!1);let s;const l=$(()=>{const _=n.type;return _&&wa[n.type]?r.m(_):""}),i=$(()=>n.type&&wa[n.type]||n.icon),u=$(()=>n.position.endsWith("right")?"right":"left"),d=$(()=>n.position.startsWith("top")?"top":"bottom"),f=$(()=>({[d.value]:`${n.offset}px`,zIndex:n.zIndex}));function p(){n.duration>0&&({stop:s}=ya(()=>{a.value&&h()},n.duration))}function v(){s==null||s()}function h(){a.value=!1}function m({code:_}){_===Ge.delete||_===Ge.backspace?v():_===Ge.esc?a.value&&h():p()}return rt(()=>{p(),a.value=!0}),Dt(document,"keydown",m),t({visible:a,close:h}),(_,g)=>(E(),me(tn,{name:c(r).b("fade"),onBeforeLeave:_.onClose,onAfterLeave:g[1]||(g[1]=b=>_.$emit("destroy")),persisted:""},{default:ue(()=>[ot(k("div",{id:_.id,class:N([c(r).b(),_.customClass,c(u)]),style:We(c(f)),role:"alert",onMouseenter:v,onMouseleave:p,onClick:g[0]||(g[0]=(...b)=>_.onClick&&_.onClick(...b))},[c(i)?(E(),me(c(Ke),{key:0,class:N([c(r).e("icon"),c(l)])},{default:ue(()=>[(E(),me(pt(c(i))))]),_:1},8,["class"])):fe("v-if",!0),k("div",{class:N(c(r).e("group"))},[k("h2",{class:N(c(r).e("title")),textContent:xe(_.title)},null,10,T$e),ot(k("div",{class:N(c(r).e("content")),style:We(_.title?void 0:{margin:0})},[ke(_.$slots,"default",{},()=>[_.dangerouslyUseHTMLString?(E(),M(qe,{key:1},[fe(" Caution here, message could've been compromised, never use user's input as message "),k("p",{innerHTML:_.message},null,8,M$e)],2112)):(E(),M("p",O$e,xe(_.message),1))])],6),[[yt,_.message]]),_.showClose?(E(),me(c(Ke),{key:0,class:N(c(r).e("closeBtn")),onClick:Je(h,["stop"])},{default:ue(()=>[X(c(o))]),_:1},8,["class","onClick"])):fe("v-if",!0)],2)],46,$$e),[[yt,a.value]])]),_:3},8,["name","onBeforeLeave"]))}});var R$e=Ie(A$e,[["__file","/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);const ld={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},x2=16;let x$e=1;const hl=function(e={},t=null){if(!gt)return{close:()=>{}};(typeof e=="string"||Vt(e))&&(e={message:e});const n=e.position||"top-right";let r=e.offset||0;ld[n].forEach(({vm:f})=>{var p;r+=(((p=f.el)==null?void 0:p.offsetHeight)||0)+x2}),r+=x2;const{nextZIndex:o}=Ko(),a=`notification_${x$e++}`,s=e.onClose,l={zIndex:o(),...e,offset:r,id:a,onClose:()=>{I$e(a,n,s)}};let i=document.body;Pr(e.appendTo)?i=e.appendTo:Qe(e.appendTo)&&(i=document.querySelector(e.appendTo)),Pr(i)||(i=document.body);const u=document.createElement("div"),d=X(R$e,l,Vt(l.message)?{default:()=>l.message}:null);return d.appContext=t??hl._context,d.props.onDestroy=()=>{ba(null,u)},ba(d,u),ld[n].push({vm:d}),i.appendChild(u.firstElementChild),{close:()=>{d.component.exposed.visible.value=!1}}};pE.forEach(e=>{hl[e]=(t={})=>((typeof t=="string"||Vt(t))&&(t={message:t}),hl({...t,type:e}))});function I$e(e,t,n){const r=ld[t],o=r.findIndex(({vm:u})=>{var d;return((d=u.component)==null?void 0:d.props.id)===e});if(o===-1)return;const{vm:a}=r[o];if(!a)return;n==null||n(a);const s=a.el.offsetHeight,l=t.split("-")[0];r.splice(o,1);const i=r.length;if(!(i<1))for(let u=o;u{t.component.exposed.visible.value=!1})}hl.closeAll=L$e;hl._context=null;const P$e=Ny(hl,"$notify");var D$e=[Kke,Yke,Mc,C$e,P$e,a5],z$e=Xpe([...Dke,...D$e]);/*! Element Plus v2.2.29 */var V$e={name:"zh-cn",el:{colorpicker:{confirm:"确定",clear:"清空"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!"},upload:{deleteTip:"按 delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"}}};/*! Element Plus v2.2.29 */var B$e={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}},F$e=!1;/*! + * pinia v2.0.30 + * (c) 2023 Eduardo San Martin Morote + * @license MIT + */let hE;const sf=e=>hE=e,vE=Symbol();function I2(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ii;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ii||(ii={}));function H$e(){const e=gd(!0),t=e.run(()=>P({}));let n=[],r=[];const o=Jn({install(a){sf(o),o._a=a,a.provide(vE,o),a.config.globalProperties.$pinia=o,r.forEach(s=>n.push(s)),r=[]},use(a){return!this._a&&!F$e?r.push(a):n.push(a),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}const mE=()=>{};function X_(e,t,n,r=mE){e.push(t);const o=()=>{const a=e.indexOf(t);a>-1&&(e.splice(a,1),r())};return!n&&J3()&&ch(o),o}function ys(e,...t){e.slice().forEach(n=>{n(...t)})}function L2(e,t){e instanceof Map&&t instanceof Map&&t.forEach((n,r)=>e.set(r,n)),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],o=e[n];I2(o)&&I2(r)&&e.hasOwnProperty(n)&&!kt(r)&&!da(r)?e[n]=L2(o,r):e[n]=r}return e}const U$e=Symbol();function K$e(e){return!I2(e)||!e.hasOwnProperty(U$e)}const{assign:aa}=Object;function W$e(e){return!!(kt(e)&&e.effect)}function j$e(e,t,n,r){const{state:o,actions:a,getters:s}=t,l=n.state.value[e];let i;function u(){l||(n.state.value[e]=o?o():{});const d=an(n.state.value[e]);return aa(d,a,Object.keys(s||{}).reduce((f,p)=>(f[p]=Jn($(()=>{sf(n);const v=n._s.get(e);return s[p].call(v,v)})),f),{}))}return i=gE(e,u,t,n,r,!0),i.$reset=function(){const f=o?o():{};this.$patch(p=>{aa(p,f)})},i}function gE(e,t,n={},r,o,a){let s;const l=aa({actions:{}},n),i={deep:!0};let u,d,f=Jn([]),p=Jn([]),v;const h=r.state.value[e];!a&&!h&&(r.state.value[e]={}),P({});let m;function _(O){let T;u=d=!1,typeof O=="function"?(O(r.state.value[e]),T={type:ii.patchFunction,storeId:e,events:v}):(L2(r.state.value[e],O),T={type:ii.patchObject,payload:O,storeId:e,events:v});const A=m=Symbol();He().then(()=>{m===A&&(u=!0)}),d=!0,ys(f,T,r.state.value[e])}const g=mE;function b(){s.stop(),f=[],p=[],r._s.delete(e)}function y(O,T){return function(){sf(r);const A=Array.from(arguments),R=[],B=[];function V(K){R.push(K)}function H(K){B.push(K)}ys(p,{args:A,name:O,store:C,after:V,onError:H});let U;try{U=T.apply(this&&this.$id===e?this:C,A)}catch(K){throw ys(B,K),K}return U instanceof Promise?U.then(K=>(ys(R,K),K)).catch(K=>(ys(B,K),Promise.reject(K))):(ys(R,U),U)}}const w={_p:r,$id:e,$onAction:X_.bind(null,p),$patch:_,$reset:g,$subscribe(O,T={}){const A=X_(f,O,T.detached,()=>R()),R=s.run(()=>Ce(()=>r.state.value[e],B=>{(T.flush==="sync"?d:u)&&O({storeId:e,type:ii.direct,events:v},B)},aa({},i,T)));return A},$dispose:b},C=Et(w);r._s.set(e,C);const S=r._e.run(()=>(s=gd(),s.run(()=>t())));for(const O in S){const T=S[O];if(kt(T)&&!W$e(T)||da(T))a||(h&&K$e(T)&&(kt(T)?T.value=h[O]:L2(T,h[O])),r.state.value[e][O]=T);else if(typeof T=="function"){const A=y(O,T);S[O]=A,l.actions[O]=T}}return aa(C,S),aa($t(C),S),Object.defineProperty(C,"$state",{get:()=>r.state.value[e],set:O=>{_(T=>{aa(T,O)})}}),r._p.forEach(O=>{aa(C,s.run(()=>O({store:C,app:r._a,pinia:r,options:l})))}),h&&a&&n.hydrate&&n.hydrate(C.$state,h),u=!0,d=!0,C}function lf(e,t,n){let r,o;const a=typeof t=="function";typeof e=="string"?(r=e,o=a?n:t):(o=e,r=e.id);function s(l,i){const u=tt();return l=l||u&&Fe(vE,null),l&&sf(l),l=hE,l._s.has(r)||(a?gE(r,t,o,l):j$e(r,o,l)),l._s.get(r)}return s.$id=r,s}var Qv={},_E=function(e,t,n){for(var r=0,o={},a=0;a1?n.substring(o.start+e.length,o.end):"",o.post=n.slice(o.end+t.length),o},P2={},q$e={get exports(){return P2},set exports(e){P2=e}};(function(e){var t=function(){function n(i,u,d,f){typeof u=="object"&&(d=u.depth,f=u.prototype,u.filter,u=u.circular);var p=[],v=[],h=typeof Buffer<"u";typeof u>"u"&&(u=!0),typeof d>"u"&&(d=1/0);function m(_,g){if(_===null)return null;if(g==0)return _;var b,y;if(typeof _!="object")return _;if(n.__isArray(_))b=[];else if(n.__isRegExp(_))b=new RegExp(_.source,l(_)),_.lastIndex&&(b.lastIndex=_.lastIndex);else if(n.__isDate(_))b=new Date(_.getTime());else{if(h&&Buffer.isBuffer(_))return Buffer.allocUnsafe?b=Buffer.allocUnsafe(_.length):b=new Buffer(_.length),_.copy(b),b;typeof f>"u"?(y=Object.getPrototypeOf(_),b=Object.create(y)):(b=Object.create(f),y=f)}if(u){var w=p.indexOf(_);if(w!=-1)return v[w];p.push(_),v.push(b)}for(var C in _){var S;y&&(S=Object.getOwnPropertyDescriptor(y,C)),!(S&&S.set==null)&&(b[C]=m(_[C],g-1))}return b}return m(i,d)}n.clonePrototype=function(u){if(u===null)return null;var d=function(){};return d.prototype=u,new d};function r(i){return Object.prototype.toString.call(i)}n.__objToStr=r;function o(i){return typeof i=="object"&&r(i)==="[object Date]"}n.__isDate=o;function a(i){return typeof i=="object"&&r(i)==="[object Array]"}n.__isArray=a;function s(i){return typeof i=="object"&&r(i)==="[object RegExp]"}n.__isRegExp=s;function l(i){var u="";return i.global&&(u+="g"),i.ignoreCase&&(u+="i"),i.multiline&&(u+="m"),u}return n.__getRegExpFlags=l,n}();e.exports&&(e.exports=t)})(q$e);var id={},G$e={get exports(){return id},set exports(e){id=e}},bE={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Qa=bE,yE={};for(var sp in Qa)Qa.hasOwnProperty(sp)&&(yE[Qa[sp]]=sp);var it=G$e.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var qn in it)if(it.hasOwnProperty(qn)){if(!("channels"in it[qn]))throw new Error("missing channels property: "+qn);if(!("labels"in it[qn]))throw new Error("missing channel labels property: "+qn);if(it[qn].labels.length!==it[qn].channels)throw new Error("channel and label counts mismatch: "+qn);var Y$e=it[qn].channels,X$e=it[qn].labels;delete it[qn].channels,delete it[qn].labels,Object.defineProperty(it[qn],"channels",{value:Y$e}),Object.defineProperty(it[qn],"labels",{value:X$e})}it.rgb.hsl=function(e){var t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.min(t,n,r),a=Math.max(t,n,r),s=a-o,l,i,u;return a===o?l=0:t===a?l=(n-r)/s:n===a?l=2+(r-t)/s:r===a&&(l=4+(t-n)/s),l=Math.min(l*60,360),l<0&&(l+=360),u=(o+a)/2,a===o?i=0:u<=.5?i=s/(a+o):i=s/(2-a-o),[l,i*100,u*100]};it.rgb.hsv=function(e){var t,n,r,o,a,s=e[0]/255,l=e[1]/255,i=e[2]/255,u=Math.max(s,l,i),d=u-Math.min(s,l,i),f=function(p){return(u-p)/6/d+1/2};return d===0?o=a=0:(a=d/u,t=f(s),n=f(l),r=f(i),s===u?o=r-n:l===u?o=1/3+t-r:i===u&&(o=2/3+n-t),o<0?o+=1:o>1&&(o-=1)),[o*360,a*100,u*100]};it.rgb.hwb=function(e){var t=e[0],n=e[1],r=e[2],o=it.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[o,a*100,r*100]};it.rgb.cmyk=function(e){var t=e[0]/255,n=e[1]/255,r=e[2]/255,o,a,s,l;return l=Math.min(1-t,1-n,1-r),o=(1-t-l)/(1-l)||0,a=(1-n-l)/(1-l)||0,s=(1-r-l)/(1-l)||0,[o*100,a*100,s*100,l*100]};function Z$e(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}it.rgb.keyword=function(e){var t=yE[e];if(t)return t;var n=1/0,r;for(var o in Qa)if(Qa.hasOwnProperty(o)){var a=Qa[o],s=Z$e(e,a);s.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92;var o=t*.4124+n*.3576+r*.1805,a=t*.2126+n*.7152+r*.0722,s=t*.0193+n*.1192+r*.9505;return[o*100,a*100,s*100]};it.rgb.lab=function(e){var t=it.rgb.xyz(e),n=t[0],r=t[1],o=t[2],a,s,l;return n/=95.047,r/=100,o/=108.883,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,a=116*r-16,s=500*(n-r),l=200*(r-o),[a,s,l]};it.hsl.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100,o,a,s,l,i;if(n===0)return i=r*255,[i,i,i];r<.5?a=r*(1+n):a=r+n-r*n,o=2*r-a,l=[0,0,0];for(var u=0;u<3;u++)s=t+1/3*-(u-1),s<0&&s++,s>1&&s--,6*s<1?i=o+(a-o)*6*s:2*s<1?i=a:3*s<2?i=o+(a-o)*(2/3-s)*6:i=o,l[u]=i*255;return l};it.hsl.hsv=function(e){var t=e[0],n=e[1]/100,r=e[2]/100,o=n,a=Math.max(r,.01),s,l;return r*=2,n*=r<=1?r:2-r,o*=a<=1?a:2-a,l=(r+n)/2,s=r===0?2*o/(a+o):2*n/(r+n),[t,s*100,l*100]};it.hsv.rgb=function(e){var t=e[0]/60,n=e[1]/100,r=e[2]/100,o=Math.floor(t)%6,a=t-Math.floor(t),s=255*r*(1-n),l=255*r*(1-n*a),i=255*r*(1-n*(1-a));switch(r*=255,o){case 0:return[r,i,s];case 1:return[l,r,s];case 2:return[s,r,i];case 3:return[s,l,r];case 4:return[i,s,r];case 5:return[r,s,l]}};it.hsv.hsl=function(e){var t=e[0],n=e[1]/100,r=e[2]/100,o=Math.max(r,.01),a,s,l;return l=(2-n)*r,a=(2-n)*o,s=n*o,s/=a<=1?a:2-a,s=s||0,l/=2,[t,s*100,l*100]};it.hwb.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100,o=n+r,a,s,l,i;o>1&&(n/=o,r/=o),a=Math.floor(6*t),s=1-r,l=6*t-a,a&1&&(l=1-l),i=n+l*(s-n);var u,d,f;switch(a){default:case 6:case 0:u=s,d=i,f=n;break;case 1:u=i,d=s,f=n;break;case 2:u=n,d=s,f=i;break;case 3:u=n,d=i,f=s;break;case 4:u=i,d=n,f=s;break;case 5:u=s,d=n,f=i;break}return[u*255,d*255,f*255]};it.cmyk.rgb=function(e){var t=e[0]/100,n=e[1]/100,r=e[2]/100,o=e[3]/100,a,s,l;return a=1-Math.min(1,t*(1-o)+o),s=1-Math.min(1,n*(1-o)+o),l=1-Math.min(1,r*(1-o)+o),[a*255,s*255,l*255]};it.xyz.rgb=function(e){var t=e[0]/100,n=e[1]/100,r=e[2]/100,o,a,s;return o=t*3.2406+n*-1.5372+r*-.4986,a=t*-.9689+n*1.8758+r*.0415,s=t*.0557+n*-.204+r*1.057,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,s=s>.0031308?1.055*Math.pow(s,1/2.4)-.055:s*12.92,o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),s=Math.min(Math.max(0,s),1),[o*255,a*255,s*255]};it.xyz.lab=function(e){var t=e[0],n=e[1],r=e[2],o,a,s;return t/=95.047,n/=100,r/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,o=116*n-16,a=500*(t-n),s=200*(n-r),[o,a,s]};it.lab.xyz=function(e){var t=e[0],n=e[1],r=e[2],o,a,s;a=(t+16)/116,o=n/500+a,s=a-r/200;var l=Math.pow(a,3),i=Math.pow(o,3),u=Math.pow(s,3);return a=l>.008856?l:(a-16/116)/7.787,o=i>.008856?i:(o-16/116)/7.787,s=u>.008856?u:(s-16/116)/7.787,o*=95.047,a*=100,s*=108.883,[o,a,s]};it.lab.lch=function(e){var t=e[0],n=e[1],r=e[2],o,a,s;return o=Math.atan2(r,n),a=o*360/2/Math.PI,a<0&&(a+=360),s=Math.sqrt(n*n+r*r),[t,s,a]};it.lch.lab=function(e){var t=e[0],n=e[1],r=e[2],o,a,s;return s=r/360*2*Math.PI,o=n*Math.cos(s),a=n*Math.sin(s),[t,o,a]};it.rgb.ansi16=function(e){var t=e[0],n=e[1],r=e[2],o=1 in arguments?arguments[1]:it.rgb.hsv(e)[2];if(o=Math.round(o/50),o===0)return 30;var a=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(t/255));return o===2&&(a+=60),a};it.hsv.ansi16=function(e){return it.rgb.ansi16(it.hsv.rgb(e),e[2])};it.rgb.ansi256=function(e){var t=e[0],n=e[1],r=e[2];if(t===n&&n===r)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var o=16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5);return o};it.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var n=(~~(e>50)+1)*.5,r=(t&1)*n*255,o=(t>>1&1)*n*255,a=(t>>2&1)*n*255;return[r,o,a]};it.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var n,r=Math.floor(e/36)/5*255,o=Math.floor((n=e%36)/6)/5*255,a=n%6/5*255;return[r,o,a]};it.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),n=t.toString(16).toUpperCase();return"000000".substring(n.length)+n};it.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var n=t[0];t[0].length===3&&(n=n.split("").map(function(l){return l+l}).join(""));var r=parseInt(n,16),o=r>>16&255,a=r>>8&255,s=r&255;return[o,a,s]};it.rgb.hcg=function(e){var t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.max(Math.max(t,n),r),a=Math.min(Math.min(t,n),r),s=o-a,l,i;return s<1?l=a/(1-s):l=0,s<=0?i=0:o===t?i=(n-r)/s%6:o===n?i=2+(r-t)/s:i=4+(t-n)/s+4,i/=6,i%=1,[i*360,s*100,l*100]};it.hsl.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=1,o=0;return n<.5?r=2*t*n:r=2*t*(1-n),r<1&&(o=(n-.5*r)/(1-r)),[e[0],r*100,o*100]};it.hsv.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=t*n,o=0;return r<1&&(o=(n-r)/(1-r)),[e[0],r*100,o*100]};it.hcg.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100;if(n===0)return[r*255,r*255,r*255];var o=[0,0,0],a=t%1*6,s=a%1,l=1-s,i=0;switch(Math.floor(a)){case 0:o[0]=1,o[1]=s,o[2]=0;break;case 1:o[0]=l,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=s;break;case 3:o[0]=0,o[1]=l,o[2]=1;break;case 4:o[0]=s,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=l}return i=(1-n)*r,[(n*o[0]+i)*255,(n*o[1]+i)*255,(n*o[2]+i)*255]};it.hcg.hsv=function(e){var t=e[1]/100,n=e[2]/100,r=t+n*(1-t),o=0;return r>0&&(o=t/r),[e[0],o*100,r*100]};it.hcg.hsl=function(e){var t=e[1]/100,n=e[2]/100,r=n*(1-t)+.5*t,o=0;return r>0&&r<.5?o=t/(2*r):r>=.5&&r<1&&(o=t/(2*(1-r))),[e[0],o*100,r*100]};it.hcg.hwb=function(e){var t=e[1]/100,n=e[2]/100,r=t+n*(1-t);return[e[0],(r-t)*100,(1-r)*100]};it.hwb.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=1-n,o=r-t,a=0;return o<1&&(a=(r-o)/(1-o)),[e[0],o*100,a*100]};it.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};it.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};it.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};it.gray.hsl=it.gray.hsv=function(e){return[0,0,e[0]]};it.gray.hwb=function(e){return[0,100,e[0]]};it.gray.cmyk=function(e){return[0,0,0,e[0]]};it.gray.lab=function(e){return[e[0],0,0]};it.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,n=(t<<16)+(t<<8)+t,r=n.toString(16).toUpperCase();return"000000".substring(r.length)+r};it.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]};var ud=id;function J$e(){for(var e={},t=Object.keys(ud),n=t.length,r=0;r1&&(n=Array.prototype.slice.call(arguments)),e(n))};return"conversion"in e&&(t.conversion=e.conversion),t}function s7e(e){var t=function(n){if(n==null)return n;arguments.length>1&&(n=Array.prototype.slice.call(arguments));var r=e(n);if(typeof r=="object")for(var o=r.length,a=0;an?(t+.05)/(n+.05):(n+.05)/(t+.05)},level:function(e){var t=this.contrast(e);return t>=7.1?"AAA":t>=4.5?"AA":""},dark:function(){var e=this.values.rgb,t=(e[0]*299+e[1]*587+e[2]*114)/1e3;return t<128},light:function(){return!this.dark()},negate:function(){for(var e=[],t=0;t<3;t++)e[t]=255-this.values.rgb[t];return this.setValues("rgb",e),this},lighten:function(e){return this.values.hsl[2]+=this.values.hsl[2]*e,this.setValues("hsl",this.values.hsl),this},darken:function(e){return this.values.hsl[2]-=this.values.hsl[2]*e,this.setValues("hsl",this.values.hsl),this},saturate:function(e){return this.values.hsl[1]+=this.values.hsl[1]*e,this.setValues("hsl",this.values.hsl),this},desaturate:function(e){return this.values.hsl[1]-=this.values.hsl[1]*e,this.setValues("hsl",this.values.hsl),this},whiten:function(e){return this.values.hwb[1]+=this.values.hwb[1]*e,this.setValues("hwb",this.values.hwb),this},blacken:function(e){return this.values.hwb[2]+=this.values.hwb[2]*e,this.setValues("hwb",this.values.hwb),this},greyscale:function(){var e=this.values.rgb,t=e[0]*.3+e[1]*.59+e[2]*.11;return this.setValues("rgb",[t,t,t]),this},clearer:function(e){return this.setValues("alpha",this.values.alpha-this.values.alpha*e),this},opaquer:function(e){return this.setValues("alpha",this.values.alpha+this.values.alpha*e),this},rotate:function(e){var t=this.values.hsl[0];return t=(t+e)%360,t=t<0?360+t:t,this.values.hsl[0]=t,this.setValues("hsl",this.values.hsl),this},mix:function(e,t){var n=this,r=e,o=t===void 0?.5:t,a=2*o-1,s=n.alpha()-r.alpha(),l=((a*s===-1?a:(a+s)/(1+a*s))+1)/2,i=1-l;return this.rgb(l*n.red()+i*r.red(),l*n.green()+i*r.green(),l*n.blue()+i*r.blue()).alpha(n.alpha()*o+r.alpha()*(1-o))},toJSON:function(){return this.rgb()},clone:function(){var e=new to;return e.values=_7e(this.values),e}};to.prototype.getValues=function(e){for(var t={},n=0;n0)return s(d);if(p==="number"&&isFinite(d))return f.long?i(d):l(d);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(d))};function s(d){if(d=String(d),!(d.length>100)){var f=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(d);if(f){var p=parseFloat(f[1]),v=(f[2]||"ms").toLowerCase();switch(v){case"years":case"year":case"yrs":case"yr":case"y":return p*a;case"weeks":case"week":case"w":return p*o;case"days":case"day":case"d":return p*r;case"hours":case"hour":case"hrs":case"hr":case"h":return p*n;case"minutes":case"minute":case"mins":case"min":case"m":return p*t;case"seconds":case"second":case"secs":case"sec":case"s":return p*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return p;default:return}}}}function l(d){var f=Math.abs(d);return f>=r?Math.round(d/r)+"d":f>=n?Math.round(d/n)+"h":f>=t?Math.round(d/t)+"m":f>=e?Math.round(d/e)+"s":d+"ms"}function i(d){var f=Math.abs(d);return f>=r?u(d,f,r,"day"):f>=n?u(d,f,n,"hour"):f>=t?u(d,f,t,"minute"):f>=e?u(d,f,e,"second"):d+" ms"}function u(d,f,p,v){var h=f>=p*1.5;return Math.round(d/p)+" "+v+(h?"s":"")}return ip}function E7e(e){n.debug=n,n.default=n,n.coerce=i,n.disable=s,n.enable=a,n.enabled=l,n.humanize=w7e(),Object.keys(e).forEach(function(u){n[u]=e[u]}),n.instances=[],n.names=[],n.skips=[],n.formatters={};function t(u){for(var d=0,f=0;f"u"?":":d)+u)}function a(u){n.save(u),n.names=[],n.skips=[];var d,f=(typeof u=="string"?u:"").split(/[\s,]+/),p=f.length;for(d=0;d=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function o(d){if(d[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+d[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!!this.useColors){var f="color: "+this.color;d.splice(1,0,f,"color: inherit");var p=0,v=0;d[0].replace(/%[a-zA-Z%]/g,function(h){h!=="%%"&&(p++,h==="%c"&&(v=p))}),d.splice(v,0,f)}}function a(){var d;return(typeof console>"u"?"undefined":n(console))==="object"&&console.log&&(d=console).log.apply(d,arguments)}function s(d){try{d?t.storage.setItem("debug",d):t.storage.removeItem("debug")}catch{}}function l(){var d;try{d=t.storage.getItem("debug")}catch{}return!d&&typeof process<"u"&&"env"in process&&(d={}.DEBUG),d}function i(){try{return localStorage}catch{}}e.exports=C7e(t);var u=e.exports.formatters;u.j=function(d){try{return JSON.stringify(d)}catch(f){return"[UnexpectedJSONParseError]: "+f.message}}})(y7e,cd);var S7e=_E,Xo=cd("css-color-function:parse"),TE=k7e;function k7e(e){typeof e!="string"&&(e=e.toString()),Xo("string %s",e);function t(d){var f=d.exec(e);if(f)return e=e.slice(f[0].length),f.slice(1)}function n(){t(/^\s+/)}function r(){var d=t(/^\)/);if(d)return Xo("rparen"),d}function o(){var d=t(/^([\+\-\*])/);if(d){var f={};return f.type="modifier",f.value=d[0],Xo("modifier %o",f),f}}function a(){var d=t(/^([^\)\s]+)/);if(d){var f={};return f.type="number",f.value=d[0],Xo("number %o",f),f}}function s(){for(var d=[],f;f=o()||u()||a();)d.push(f),n();return Xo("args %o",d),d}function l(){var d=t(/^(\w+)\(/);if(d){n();var f={};return f.type="function",f.name=d[0],f.arguments=s(),r(),Xo("adjuster %o",f),f}}function i(){var d={};d.type="color";var f=t(/([^\)\s]+)/)[0];if(f.indexOf("(")!=-1){var p=t(/([^\)]*?\))/)[0];f=f+p}return d.value=f,n(),d}function u(){if(e.match(/^color\(/)){var d=S7e("(",")",e);if(!d)throw new SyntaxError("Missing closing parenthese for '"+e+"'");if(d.body==="")throw new SyntaxError("color() function cannot be empty");e=d.body,n();var f={};f.type="function",f.name="color",f.arguments=[u()||i()],Xo("function arguments %o",f.arguments);for(var p;p=l();)f.arguments.push(p),n();return e=d.post,n(),Xo("function %o",f),f}}return u()}var OE={};(function(e){var t=$E;e.red=n("red"),e.blue=n("blue"),e.green=n("green"),e.alpha=e.a=n("alpha"),e.rgb=function(){},e.hue=e.h=r("hue"),e.saturation=e.s=r("saturation"),e.lightness=e.l=r("lightness"),e.whiteness=e.w=r("whiteness"),e.blackness=e.b=r("blackness"),e.blend=function(s,l){var i=s.alpha();s.alpha(1);var u=new t(l[0].value),d=1-parseInt(l[1].value,10)/100;s.mix(u,d).alpha(i)},e.tint=function(s,l){l.unshift({type:"argument",value:"white"}),e.blend(s,l)},e.shade=function(s,l){l.unshift({type:"argument",value:"black"}),e.blend(s,l)},e.contrast=function(s,l){l.length==0&&l.push({type:"argument",value:"100%"});var i=1-parseInt(l[0].value,10)/100,u=s.luminosity()<.5?new t({h:s.hue(),w:100,b:0}):new t({h:s.hue(),w:0,b:100}),d=u,f=4.5;if(s.contrast(u)>f){var d=a(f,s,u),p=d.alpha();d.alpha(1),d.mix(u,i).alpha(p)}s.hwb(d.hwb())};function n(s){return function(l,i){var u;i[0].type=="modifier"&&(u=i.shift().value);var d=i[0].value;d.indexOf("%")!=-1?(d=parseInt(d,10)/100,u?u!="*"&&(d=l[s]()*d):d=d*(s=="alpha"?1:255)):d=Number(d),l[s](o(l[s](),d,u))}}function r(s){return function(l,i){var u;i[0].type=="modifier"&&(u=i.shift().value);var d=parseFloat(i[0].value,10);l[s](o(l[s](),d,u))}}function o(s,l,i){switch(i){case"+":return s+l;case"-":return s-l;case"*":return s*l;default:return l}}function a(s,l,i){l.hue();for(var u=l.clone(),d=l.whiteness(),f=l.blackness(),p=i.whiteness(),v=i.blackness();Math.abs(d-p)>1||Math.abs(f-v)>1;){var h=Math.round((p+d)/2),m=Math.round((v+f)/2);u.whiteness(h),u.blackness(m),u.contrast(l)>s?(p=h,v=m):(d=h,f=m)}return u}})(OE);var $7e=_E,T7e=$E,O7e=TE,Q_=OE,M7e=ME;function ME(e){var t=e.indexOf("color(");if(t==-1)return e;if(e=e.slice(t),e=$7e("(",")",e),!e)throw new SyntaxError("Missing closing parenthese for '"+e+"'");var n=O7e("color("+e.body+")");return V2(n)+ME(e.post)}function V2(e){var t=new T7e(e.arguments[0].type=="function"?V2(e.arguments[0]):e.arguments[0].value),n=e.arguments.slice(1);return n.forEach(function(r){var o=r.name;if(!Q_[o])throw new Error("Unknown '"+o+"'");r.arguments.forEach(function(a){a.type=="function"&&a.name=="color"&&(a.value=V2(a),a.type="color",delete a.name)}),Q_[o](t,r.arguments)}),t.rgbString()}var N7e=M7e,A7e=TE;Qv.convert=N7e;Qv.parse=A7e;function R7e(e){for(const[t,n]of Object.entries(Vde))e.component(t,n)}function x7e(e,t="light"){jc("--el-color-primary",null).value=e;const n={dark:{"light-3":"shade(20%)","light-5":"shade(30%)","light-7":"shade(50%)","light-8":"shade(60%)","light-9":"shade(70%)","dark-2":"tint(20%)"},light:{"dark-2":"shade(20%)","light-3":"tint(30%)","light-5":"tint(50%)","light-7":"tint(70%)","light-8":"tint(80%)","light-9":"tint(90%)"}};Object.keys(n[t]).forEach(r=>{jc("--el-color-primary-"+r,null).value=Qv.convert(`color(${e} ${n[t][r]})`)})}function So(){const e=location.pathname.split("/").filter(t=>t);return e.length?e[0]:"admin"}function I7e(e=""){const t=AA();t.value=e||{}.VITE_DETAULT_TITLE}function B2(){return cn.get("token")}function L7e(e){cn.set({key:"token",data:e})}function P7e(){cn.remove("token")}function lLe(e,t=300){let n=null;return function(...r){n!=null&&(clearTimeout(n),n=null),n=setTimeout(()=>{e.call(this,...r)},t)}}function F2(e){return e.indexOf("http://")!=-1||e.indexOf("https://")!=-1}function iLe(e){return F2(e)?e:`${location.origin}/${e}`}function uLe(e=""){let t=0;for(let n=0;n127||e.charCodeAt(n)==94?t+=2:t++;return t}function NE(e){const t={},[n,r]=e.split("?");return r&&r.split("&").forEach(o=>{let[a,s]=o.split("=");t[a]=s}),{path:n,query:t}}const D7e=e=>typeof Array.isArray=="function"?Array.isArray(e):Object.prototype.toString.call(e)==="[object Array]";function z7e(e){if([null,void 0,NaN,!1].includes(e)||typeof e!="object"&&typeof e!="function")return e;const t=D7e(e)?[]:{};for(const n in e)e.hasOwnProperty(n)&&(t[n]=typeof e[n]=="object"?z7e(e[n]):e[n]);return t}class V7e{constructor(){Ml(this,"prefix","");this.prefix=So()=="admin"?"admin":"site"}set(t){try{window.localStorage.setItem(`${this.prefix}.${t.key}`,JSON.stringify(t.data)),typeof t.success=="function"&&t.success()}catch(n){typeof t.fail=="function"&&t.fail(n)}}get(t){try{const n=window.localStorage.getItem(`${this.prefix}.${t}`);return JSON.parse(n)}catch{return null}}remove(t){typeof t=="string"?window.localStorage.removeItem(`${this.prefix}.${t}`):t.forEach(n=>{window.localStorage.removeItem(`${this.prefix}.${n}`)})}clear(){window.localStorage.clear()}}const cn=new V7e,ws=cn.get("theme")??{},AE=lf("system",{state:()=>({menuIsCollapse:!1,menuDrawer:!1,dark:ws.dark??!1,theme:ws.theme??"#273de3",sidebar:ws.sidebar??"oneType",lang:cn.get("lang")??"zh-cn",sidebarStyle:ws.sidebarStyle??"threeType",currHeadMenuName:""}),actions:{setHeadMenu(e){this.currHeadMenuName=e},setTheme(e,t){this[e]=t,ws[e]=t,cn.set({key:"theme",data:ws})},toggleMenuCollapse(e){this.menuIsCollapse=e,cn.set({key:"menuiscollapse",data:e}),jc("--aside-width").value=e?"calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding) * 2)":"210px"}}});var H2={},B7e={get exports(){return H2},set exports(e){H2=e}};/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT */(function(e,t){(function(n,r){e.exports=r()})(uo,function(){var n={};n.version="0.2.0";var r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};n.configure=function(h){var m,_;for(m in h)_=h[m],_!==void 0&&h.hasOwnProperty(m)&&(r[m]=_);return this},n.status=null,n.set=function(h){var m=n.isStarted();h=o(h,r.minimum,1),n.status=h===1?null:h;var _=n.render(!m),g=_.querySelector(r.barSelector),b=r.speed,y=r.easing;return _.offsetWidth,l(function(w){r.positionUsing===""&&(r.positionUsing=n.getPositioningCSS()),i(g,s(h,b,y)),h===1?(i(_,{transition:"none",opacity:1}),_.offsetWidth,setTimeout(function(){i(_,{transition:"all "+b+"ms linear",opacity:0}),setTimeout(function(){n.remove(),w()},b)},b)):setTimeout(w,b)}),this},n.isStarted=function(){return typeof n.status=="number"},n.start=function(){n.status||n.set(0);var h=function(){setTimeout(function(){n.status&&(n.trickle(),h())},r.trickleSpeed)};return r.trickle&&h(),this},n.done=function(h){return!h&&!n.status?this:n.inc(.3+.5*Math.random()).set(1)},n.inc=function(h){var m=n.status;return m?(typeof h!="number"&&(h=(1-m)*o(Math.random()*m,.1,.95)),m=o(m+h,0,.994),n.set(m)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},function(){var h=0,m=0;n.promise=function(_){return!_||_.state()==="resolved"?this:(m===0&&n.start(),h++,m++,_.always(function(){m--,m===0?(h=0,n.done()):n.set((h-m)/h)}),this)}}(),n.render=function(h){if(n.isRendered())return document.getElementById("nprogress");d(document.documentElement,"nprogress-busy");var m=document.createElement("div");m.id="nprogress",m.innerHTML=r.template;var _=m.querySelector(r.barSelector),g=h?"-100":a(n.status||0),b=document.querySelector(r.parent),y;return i(_,{transition:"all 0 linear",transform:"translate3d("+g+"%,0,0)"}),r.showSpinner||(y=m.querySelector(r.spinnerSelector),y&&v(y)),b!=document.body&&d(b,"nprogress-custom-parent"),b.appendChild(m),m},n.remove=function(){f(document.documentElement,"nprogress-busy"),f(document.querySelector(r.parent),"nprogress-custom-parent");var h=document.getElementById("nprogress");h&&v(h)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var h=document.body.style,m="WebkitTransform"in h?"Webkit":"MozTransform"in h?"Moz":"msTransform"in h?"ms":"OTransform"in h?"O":"";return m+"Perspective"in h?"translate3d":m+"Transform"in h?"translate":"margin"};function o(h,m,_){return h_?_:h}function a(h){return(-1+h)*100}function s(h,m,_){var g;return r.positionUsing==="translate3d"?g={transform:"translate3d("+a(h)+"%,0,0)"}:r.positionUsing==="translate"?g={transform:"translate("+a(h)+"%,0)"}:g={"margin-left":a(h)+"%"},g.transition="all "+m+"ms "+_,g}var l=function(){var h=[];function m(){var _=h.shift();_&&_(m)}return function(_){h.push(_),h.length==1&&m()}}(),i=function(){var h=["Webkit","O","Moz","ms"],m={};function _(w){return w.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(C,S){return S.toUpperCase()})}function g(w){var C=document.body.style;if(w in C)return w;for(var S=h.length,O=w.charAt(0).toUpperCase()+w.slice(1),T;S--;)if(T=h[S]+O,T in C)return T;return w}function b(w){return w=_(w),m[w]||(m[w]=g(w))}function y(w,C,S){C=b(C),w.style[C]=S}return function(w,C){var S=arguments,O,T;if(S.length==2)for(O in C)T=C[O],T!==void 0&&C.hasOwnProperty(O)&&y(w,O,T);else y(w,S[1],S[2])}}();function u(h,m){var _=typeof h=="string"?h:p(h);return _.indexOf(" "+m+" ")>=0}function d(h,m){var _=p(h),g=_+m;u(_,m)||(h.className=g.substring(1))}function f(h,m){var _=p(h),g;u(h,m)&&(g=_.replace(" "+m+" "," "),h.className=g.substring(1,g.length-1))}function p(h){return(" "+(h.className||"")+" ").replace(/\s+/gi," ")}function v(h){h&&h.parentNode&&h.parentNode.removeChild(h)}return n})})(B7e);const qi=H2,RE=lf("app",{state:()=>({route:{},routeRefreshTag:!0,pageReturn:!1}),actions:{refreshRouterView(){this.routeRefreshTag=!1,qi.start(),He(()=>{this.routeRefreshTag=!0,qi.done()})}}});/*! + * vue-router v4.1.6 + * (c) 2022 Eduardo San Martin Morote + * @license MIT + */const Ms=typeof window<"u";function F7e(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const Ht=Object.assign;function up(e,t){const n={};for(const r in t){const o=t[r];n[r]=zr(o)?o.map(e):e(o)}return n}const ui=()=>{},zr=Array.isArray,H7e=/\/$/,U7e=e=>e.replace(H7e,"");function cp(e,t,n="/"){let r,o={},a="",s="";const l=t.indexOf("#");let i=t.indexOf("?");return l=0&&(i=-1),i>-1&&(r=t.slice(0,i),a=t.slice(i+1,l>-1?l:t.length),o=e(a)),l>-1&&(r=r||t.slice(0,l),s=t.slice(l,t.length)),r=q7e(r??t,n),{fullPath:r+(a&&"?")+a+s,path:r,query:o,hash:s}}function K7e(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function e4(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function W7e(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&vl(t.matched[r],n.matched[o])&&xE(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function vl(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function xE(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!j7e(e[n],t[n]))return!1;return!0}function j7e(e,t){return zr(e)?t4(e,t):zr(t)?t4(t,e):e===t}function t4(e,t){return zr(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function q7e(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/");let o=n.length-1,a,s;for(a=0;a1&&o--;else break;return n.slice(0,o).join("/")+"/"+r.slice(a-(a===r.length?1:0)).join("/")}var Gi;(function(e){e.pop="pop",e.push="push"})(Gi||(Gi={}));var ci;(function(e){e.back="back",e.forward="forward",e.unknown=""})(ci||(ci={}));function G7e(e){if(!e)if(Ms){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),U7e(e)}const Y7e=/^[^#]+#/;function X7e(e,t){return e.replace(Y7e,"#")+t}function Z7e(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const uf=()=>({left:window.pageXOffset,top:window.pageYOffset});function J7e(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=Z7e(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function n4(e,t){return(history.state?history.state.position-t:-1)+e}const U2=new Map;function Q7e(e,t){U2.set(e,t)}function eTe(e){const t=U2.get(e);return U2.delete(e),t}let tTe=()=>location.protocol+"//"+location.host;function IE(e,t){const{pathname:n,search:r,hash:o}=t,a=e.indexOf("#");if(a>-1){let l=o.includes(e.slice(a))?e.slice(a).length:1,i=o.slice(l);return i[0]!=="/"&&(i="/"+i),e4(i,"")}return e4(n,e)+r+o}function nTe(e,t,n,r){let o=[],a=[],s=null;const l=({state:p})=>{const v=IE(e,location),h=n.value,m=t.value;let _=0;if(p){if(n.value=v,t.value=p,s&&s===h){s=null;return}_=m?p.position-m.position:0}else r(v);o.forEach(g=>{g(n.value,h,{delta:_,type:Gi.pop,direction:_?_>0?ci.forward:ci.back:ci.unknown})})};function i(){s=n.value}function u(p){o.push(p);const v=()=>{const h=o.indexOf(p);h>-1&&o.splice(h,1)};return a.push(v),v}function d(){const{history:p}=window;p.state&&p.replaceState(Ht({},p.state,{scroll:uf()}),"")}function f(){for(const p of a)p();a=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",d)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",d),{pauseListeners:i,listen:u,destroy:f}}function r4(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?uf():null}}function rTe(e){const{history:t,location:n}=window,r={value:IE(e,n)},o={value:t.state};o.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(i,u,d){const f=e.indexOf("#"),p=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+i:tTe()+e+i;try{t[d?"replaceState":"pushState"](u,"",p),o.value=u}catch(v){console.error(v),n[d?"replace":"assign"](p)}}function s(i,u){const d=Ht({},t.state,r4(o.value.back,i,o.value.forward,!0),u,{position:o.value.position});a(i,d,!0),r.value=i}function l(i,u){const d=Ht({},o.value,t.state,{forward:i,scroll:uf()});a(d.current,d,!0);const f=Ht({},r4(r.value,i,null),{position:d.position+1},u);a(i,f,!1),r.value=i}return{location:r,state:o,push:l,replace:s}}function oTe(e){e=G7e(e);const t=rTe(e),n=nTe(e,t.state,t.location,t.replace);function r(a,s=!0){s||n.pauseListeners(),history.go(a)}const o=Ht({location:"",base:e,go:r,createHref:X7e.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function aTe(e){return typeof e=="string"||e&&typeof e=="object"}function LE(e){return typeof e=="string"||typeof e=="symbol"}const Zo={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},PE=Symbol("");var o4;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(o4||(o4={}));function ml(e,t){return Ht(new Error,{type:e,[PE]:!0},t)}function ho(e,t){return e instanceof Error&&PE in e&&(t==null||!!(e.type&t))}const a4="[^/]+?",sTe={sensitive:!1,strict:!1,start:!0,end:!0},lTe=/[.+*?^${}()[\]/\\]/g;function iTe(e,t){const n=Ht({},sTe,t),r=[];let o=n.start?"^":"";const a=[];for(const u of e){const d=u.length?[]:[90];n.strict&&!u.length&&(o+="/");for(let f=0;ft.length?t.length===1&&t[0]===40+40?1:-1:0}function cTe(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const dTe={type:0,value:""},fTe=/[a-zA-Z0-9_]/;function pTe(e){if(!e)return[[]];if(e==="/")return[[dTe]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(v){throw new Error(`ERR (${n})/"${u}": ${v}`)}let n=0,r=n;const o=[];let a;function s(){a&&o.push(a),a=[]}let l=0,i,u="",d="";function f(){u&&(n===0?a.push({type:0,value:u}):n===1||n===2||n===3?(a.length>1&&(i==="*"||i==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:u,regexp:d,repeatable:i==="*"||i==="+",optional:i==="*"||i==="?"})):t("Invalid state to consume buffer"),u="")}function p(){u+=i}for(;l{s(b)}:ui}function s(d){if(LE(d)){const f=r.get(d);f&&(r.delete(d),n.splice(n.indexOf(f),1),f.children.forEach(s),f.alias.forEach(s))}else{const f=n.indexOf(d);f>-1&&(n.splice(f,1),d.record.name&&r.delete(d.record.name),d.children.forEach(s),d.alias.forEach(s))}}function l(){return n}function i(d){let f=0;for(;f=0&&(d.record.path!==n[f].record.path||!DE(d,n[f]));)f++;n.splice(f,0,d),d.record.name&&!i4(d)&&r.set(d.record.name,d)}function u(d,f){let p,v={},h,m;if("name"in d&&d.name){if(p=r.get(d.name),!p)throw ml(1,{location:d});m=p.record.name,v=Ht(l4(f.params,p.keys.filter(b=>!b.optional).map(b=>b.name)),d.params&&l4(d.params,p.keys.map(b=>b.name))),h=p.stringify(v)}else if("path"in d)h=d.path,p=n.find(b=>b.re.test(h)),p&&(v=p.parse(h),m=p.record.name);else{if(p=f.name?r.get(f.name):n.find(b=>b.re.test(f.path)),!p)throw ml(1,{location:d,currentLocation:f});m=p.record.name,v=Ht({},f.params,d.params),h=p.stringify(v)}const _=[];let g=p;for(;g;)_.unshift(g.record),g=g.parent;return{name:m,path:h,params:v,matched:_,meta:_Te(_)}}return e.forEach(d=>a(d)),{addRoute:a,resolve:u,removeRoute:s,getRoutes:l,getRecordMatcher:o}}function l4(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function mTe(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:gTe(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function gTe(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="boolean"?n:n[r];return t}function i4(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function _Te(e){return e.reduce((t,n)=>Ht(t,n.meta),{})}function u4(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function DE(e,t){return t.children.some(n=>n===e||DE(e,n))}const zE=/#/g,bTe=/&/g,yTe=/\//g,wTe=/=/g,ETe=/\?/g,VE=/\+/g,CTe=/%5B/g,STe=/%5D/g,BE=/%5E/g,kTe=/%60/g,FE=/%7B/g,$Te=/%7C/g,HE=/%7D/g,TTe=/%20/g;function n1(e){return encodeURI(""+e).replace($Te,"|").replace(CTe,"[").replace(STe,"]")}function OTe(e){return n1(e).replace(FE,"{").replace(HE,"}").replace(BE,"^")}function K2(e){return n1(e).replace(VE,"%2B").replace(TTe,"+").replace(zE,"%23").replace(bTe,"%26").replace(kTe,"`").replace(FE,"{").replace(HE,"}").replace(BE,"^")}function MTe(e){return K2(e).replace(wTe,"%3D")}function NTe(e){return n1(e).replace(zE,"%23").replace(ETe,"%3F")}function ATe(e){return e==null?"":NTe(e).replace(yTe,"%2F")}function dd(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function RTe(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;oa&&K2(a)):[r&&K2(r)]).forEach(a=>{a!==void 0&&(t+=(t.length?"&":"")+n,a!=null&&(t+="="+a))})}return t}function xTe(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=zr(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const ITe=Symbol(""),d4=Symbol(""),cf=Symbol(""),r1=Symbol(""),W2=Symbol("");function Vl(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e,reset:n}}function sa(e,t,n,r,o){const a=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((s,l)=>{const i=f=>{f===!1?l(ml(4,{from:n,to:t})):f instanceof Error?l(f):aTe(f)?l(ml(2,{from:t,to:f})):(a&&r.enterCallbacks[o]===a&&typeof f=="function"&&a.push(f),s())},u=e.call(r&&r.instances[o],t,n,i);let d=Promise.resolve(u);e.length<3&&(d=d.then(i)),d.catch(f=>l(f))})}function dp(e,t,n,r){const o=[];for(const a of e)for(const s in a.components){let l=a.components[s];if(!(t!=="beforeRouteEnter"&&!a.instances[s]))if(LTe(l)){const u=(l.__vccOpts||l)[t];u&&o.push(sa(u,n,r,a,s))}else{let i=l();o.push(()=>i.then(u=>{if(!u)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${a.path}"`));const d=F7e(u)?u.default:u;a.components[s]=d;const p=(d.__vccOpts||d)[t];return p&&sa(p,n,r,a,s)()}))}}return o}function LTe(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function f4(e){const t=Fe(cf),n=Fe(r1),r=$(()=>t.resolve(c(e.to))),o=$(()=>{const{matched:i}=r.value,{length:u}=i,d=i[u-1],f=n.matched;if(!d||!f.length)return-1;const p=f.findIndex(vl.bind(null,d));if(p>-1)return p;const v=p4(i[u-2]);return u>1&&p4(d)===v&&f[f.length-1].path!==v?f.findIndex(vl.bind(null,i[u-2])):p}),a=$(()=>o.value>-1&&VTe(n.params,r.value.params)),s=$(()=>o.value>-1&&o.value===n.matched.length-1&&xE(n.params,r.value.params));function l(i={}){return zTe(i)?t[c(e.replace)?"replace":"push"](c(e.to)).catch(ui):Promise.resolve()}return{route:r,href:$(()=>r.value.href),isActive:a,isExactActive:s,navigate:l}}const PTe=oe({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:f4,setup(e,{slots:t}){const n=Et(f4(e)),{options:r}=Fe(cf),o=$(()=>({[h4(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[h4(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const a=t.default&&t.default(n);return e.custom?a:je("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},a)}}}),DTe=PTe;function zTe(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function VTe(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!zr(o)||o.length!==r.length||r.some((a,s)=>a!==o[s]))return!1}return!0}function p4(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const h4=(e,t,n)=>e??t??n,BTe=oe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Fe(W2),o=$(()=>e.route||r.value),a=Fe(d4,0),s=$(()=>{let u=c(a);const{matched:d}=o.value;let f;for(;(f=d[u])&&!f.components;)u++;return u}),l=$(()=>o.value.matched[s.value]);ct(d4,$(()=>s.value+1)),ct(ITe,l),ct(W2,o);const i=P();return Ce(()=>[i.value,l.value,e.name],([u,d,f],[p,v,h])=>{d&&(d.instances[f]=u,v&&v!==d&&u&&u===p&&(d.leaveGuards.size||(d.leaveGuards=v.leaveGuards),d.updateGuards.size||(d.updateGuards=v.updateGuards))),u&&d&&(!v||!vl(d,v)||!p)&&(d.enterCallbacks[f]||[]).forEach(m=>m(u))},{flush:"post"}),()=>{const u=o.value,d=e.name,f=l.value,p=f&&f.components[d];if(!p)return v4(n.default,{Component:p,route:u});const v=f.props[d],h=v?v===!0?u.params:typeof v=="function"?v(u):v:null,_=je(p,Ht({},h,t,{onVnodeUnmounted:g=>{g.component.isUnmounted&&(f.instances[d]=null)},ref:i}));return v4(n.default,{Component:_,route:u})||_}}});function v4(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const j2=BTe;function FTe(e){const t=vTe(e.routes,e),n=e.parseQuery||RTe,r=e.stringifyQuery||c4,o=e.history,a=Vl(),s=Vl(),l=Vl(),i=xt(Zo);let u=Zo;Ms&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const d=up.bind(null,te=>""+te),f=up.bind(null,ATe),p=up.bind(null,dd);function v(te,de){let Z,Y;return LE(te)?(Z=t.getRecordMatcher(te),Y=de):Y=te,t.addRoute(Y,Z)}function h(te){const de=t.getRecordMatcher(te);de&&t.removeRoute(de)}function m(){return t.getRoutes().map(te=>te.record)}function _(te){return!!t.getRecordMatcher(te)}function g(te,de){if(de=Ht({},de||i.value),typeof te=="string"){const j=cp(n,te,de.path),D=t.resolve({path:j.path},de),F=o.createHref(j.fullPath);return Ht(j,D,{params:p(D.params),hash:dd(j.hash),redirectedFrom:void 0,href:F})}let Z;if("path"in te)Z=Ht({},te,{path:cp(n,te.path,de.path).path});else{const j=Ht({},te.params);for(const D in j)j[D]==null&&delete j[D];Z=Ht({},te,{params:f(te.params)}),de.params=f(de.params)}const Y=t.resolve(Z,de),ce=te.hash||"";Y.params=d(p(Y.params));const ve=K7e(r,Ht({},te,{hash:OTe(ce),path:Y.path})),Ne=o.createHref(ve);return Ht({fullPath:ve,hash:ce,query:r===c4?xTe(te.query):te.query||{}},Y,{redirectedFrom:void 0,href:Ne})}function b(te){return typeof te=="string"?cp(n,te,i.value.path):Ht({},te)}function y(te,de){if(u!==te)return ml(8,{from:de,to:te})}function w(te){return O(te)}function C(te){return w(Ht(b(te),{replace:!0}))}function S(te){const de=te.matched[te.matched.length-1];if(de&&de.redirect){const{redirect:Z}=de;let Y=typeof Z=="function"?Z(te):Z;return typeof Y=="string"&&(Y=Y.includes("?")||Y.includes("#")?Y=b(Y):{path:Y},Y.params={}),Ht({query:te.query,hash:te.hash,params:"path"in Y?{}:te.params},Y)}}function O(te,de){const Z=u=g(te),Y=i.value,ce=te.state,ve=te.force,Ne=te.replace===!0,j=S(Z);if(j)return O(Ht(b(j),{state:typeof j=="object"?Ht({},ce,j.state):ce,force:ve,replace:Ne}),de||Z);const D=Z;D.redirectedFrom=de;let F;return!ve&&W7e(r,Y,Z)&&(F=ml(16,{to:D,from:Y}),q(Y,Y,!0,!1)),(F?Promise.resolve(F):A(D,Y)).catch(Q=>ho(Q)?ho(Q,2)?Q:z(Q):x(Q,D,Y)).then(Q=>{if(Q){if(ho(Q,2))return O(Ht({replace:Ne},b(Q.to),{state:typeof Q.to=="object"?Ht({},ce,Q.to.state):ce,force:ve}),de||D)}else Q=B(D,Y,!0,Ne,ce);return R(D,Y,Q),Q})}function T(te,de){const Z=y(te,de);return Z?Promise.reject(Z):Promise.resolve()}function A(te,de){let Z;const[Y,ce,ve]=HTe(te,de);Z=dp(Y.reverse(),"beforeRouteLeave",te,de);for(const j of Y)j.leaveGuards.forEach(D=>{Z.push(sa(D,te,de))});const Ne=T.bind(null,te,de);return Z.push(Ne),Es(Z).then(()=>{Z=[];for(const j of a.list())Z.push(sa(j,te,de));return Z.push(Ne),Es(Z)}).then(()=>{Z=dp(ce,"beforeRouteUpdate",te,de);for(const j of ce)j.updateGuards.forEach(D=>{Z.push(sa(D,te,de))});return Z.push(Ne),Es(Z)}).then(()=>{Z=[];for(const j of te.matched)if(j.beforeEnter&&!de.matched.includes(j))if(zr(j.beforeEnter))for(const D of j.beforeEnter)Z.push(sa(D,te,de));else Z.push(sa(j.beforeEnter,te,de));return Z.push(Ne),Es(Z)}).then(()=>(te.matched.forEach(j=>j.enterCallbacks={}),Z=dp(ve,"beforeRouteEnter",te,de),Z.push(Ne),Es(Z))).then(()=>{Z=[];for(const j of s.list())Z.push(sa(j,te,de));return Z.push(Ne),Es(Z)}).catch(j=>ho(j,8)?j:Promise.reject(j))}function R(te,de,Z){for(const Y of l.list())Y(te,de,Z)}function B(te,de,Z,Y,ce){const ve=y(te,de);if(ve)return ve;const Ne=de===Zo,j=Ms?history.state:{};Z&&(Y||Ne?o.replace(te.fullPath,Ht({scroll:Ne&&j&&j.scroll},ce)):o.push(te.fullPath,ce)),i.value=te,q(te,de,Z,Ne),z()}let V;function H(){V||(V=o.listen((te,de,Z)=>{if(!be.listening)return;const Y=g(te),ce=S(Y);if(ce){O(Ht(ce,{replace:!0}),Y).catch(ui);return}u=Y;const ve=i.value;Ms&&Q7e(n4(ve.fullPath,Z.delta),uf()),A(Y,ve).catch(Ne=>ho(Ne,12)?Ne:ho(Ne,2)?(O(Ne.to,Y).then(j=>{ho(j,20)&&!Z.delta&&Z.type===Gi.pop&&o.go(-1,!1)}).catch(ui),Promise.reject()):(Z.delta&&o.go(-Z.delta,!1),x(Ne,Y,ve))).then(Ne=>{Ne=Ne||B(Y,ve,!1),Ne&&(Z.delta&&!ho(Ne,8)?o.go(-Z.delta,!1):Z.type===Gi.pop&&ho(Ne,20)&&o.go(-1,!1)),R(Y,ve,Ne)}).catch(ui)}))}let U=Vl(),K=Vl(),I;function x(te,de,Z){z(te);const Y=K.list();return Y.length?Y.forEach(ce=>ce(te,de,Z)):console.error(te),Promise.reject(te)}function L(){return I&&i.value!==Zo?Promise.resolve():new Promise((te,de)=>{U.add([te,de])})}function z(te){return I||(I=!te,H(),U.list().forEach(([de,Z])=>te?Z(te):de()),U.reset()),te}function q(te,de,Z,Y){const{scrollBehavior:ce}=e;if(!Ms||!ce)return Promise.resolve();const ve=!Z&&eTe(n4(te.fullPath,0))||(Y||!Z)&&history.state&&history.state.scroll||null;return He().then(()=>ce(te,de,ve)).then(Ne=>Ne&&J7e(Ne)).catch(Ne=>x(Ne,te,de))}const le=te=>o.go(te);let G;const ae=new Set,be={currentRoute:i,listening:!0,addRoute:v,removeRoute:h,hasRoute:_,getRoutes:m,resolve:g,options:e,push:w,replace:C,go:le,back:()=>le(-1),forward:()=>le(1),beforeEach:a.add,beforeResolve:s.add,afterEach:l.add,onError:K.add,isReady:L,install(te){const de=this;te.component("RouterLink",DTe),te.component("RouterView",j2),te.config.globalProperties.$router=de,Object.defineProperty(te.config.globalProperties,"$route",{enumerable:!0,get:()=>c(i)}),Ms&&!G&&i.value===Zo&&(G=!0,w(o.location).catch(ce=>{}));const Z={};for(const ce in Zo)Z[ce]=$(()=>i.value[ce]);te.provide(cf,de),te.provide(r1,Et(Z)),te.provide(W2,i);const Y=te.unmount;ae.add(te),te.unmount=function(){ae.delete(te),ae.size<1&&(u=Zo,V&&V(),V=null,i.value=Zo,G=!1,I=!1),Y()}}};return be}function Es(e){return e.reduce((t,n)=>t.then(()=>n()),Promise.resolve())}function HTe(e,t){const n=[],r=[],o=[],a=Math.max(t.matched.length,e.matched.length);for(let s=0;svl(u,l))?r.push(l):n.push(l));const i=e.matched[s];i&&(t.matched.find(u=>vl(u,i))||o.push(i))}return[n,r,o]}function cLe(){return Fe(cf)}function UTe(){return Fe(r1)}const KTe=oe({__name:"App",setup(e){const t=UTe(),n=AE(),r=$(()=>n.lang==="zh-cn"?V$e:B$e),o=HN(EA());return Ce(t,()=>{RE().$patch(a=>{a.route=t})},{immediate:!0}),rt(()=>{o(n.dark),x7e(n.theme,n.dark?"dark":"light")}),(a,s)=>{const l=nt("router-view"),i=Sw;return E(),me(i,{locale:c(r)},{default:ue(()=>[X(l)]),_:1},8,["locale"])}}});const WTe="modulepreload",jTe=function(e,t){return new URL(e,t).href},m4={},ie=function(t,n,r){if(!n||n.length===0)return t();const o=document.getElementsByTagName("link");return Promise.all(n.map(a=>{if(a=jTe(a,r),a in m4)return;m4[a]=!0;const s=a.endsWith(".css"),l=s?'[rel="stylesheet"]':"";if(!!r)for(let d=o.length-1;d>=0;d--){const f=o[d];if(f.href===a&&(!s||f.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${a}"]${l}`))return;const u=document.createElement("link");if(u.rel=s?"stylesheet":WTe,s||(u.as="script",u.crossOrigin=""),u.href=a,document.head.appendChild(u),s)return new Promise((d,f)=>{u.addEventListener("load",d),u.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${a}`)))})})).then(()=>t())};function UE(e,t){return function(){return e.apply(t,arguments)}}const{toString:qTe}=Object.prototype,{getPrototypeOf:o1}=Object,df=(e=>t=>{const n=qTe.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),fo=e=>(e=e.toLowerCase(),t=>df(t)===e),ff=e=>t=>typeof t===e,{isArray:Tl}=Array,Yi=ff("undefined");function GTe(e){return e!==null&&!Yi(e)&&e.constructor!==null&&!Yi(e.constructor)&&_r(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const KE=fo("ArrayBuffer");function YTe(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&KE(e.buffer),t}const XTe=ff("string"),_r=ff("function"),WE=ff("number"),pf=e=>e!==null&&typeof e=="object",ZTe=e=>e===!0||e===!1,Nc=e=>{if(df(e)!=="object")return!1;const t=o1(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},JTe=fo("Date"),QTe=fo("File"),eOe=fo("Blob"),tOe=fo("FileList"),nOe=e=>pf(e)&&_r(e.pipe),rOe=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||_r(e.append)&&((t=df(e))==="formdata"||t==="object"&&_r(e.toString)&&e.toString()==="[object FormData]"))},oOe=fo("URLSearchParams"),aOe=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Eu(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,o;if(typeof e!="object"&&(e=[e]),Tl(e))for(r=0,o=e.length;r0;)if(o=n[r],t===o.toLowerCase())return o;return null}const qE=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),GE=e=>!Yi(e)&&e!==qE;function q2(){const{caseless:e}=GE(this)&&this||{},t={},n=(r,o)=>{const a=e&&jE(t,o)||o;Nc(t[a])&&Nc(r)?t[a]=q2(t[a],r):Nc(r)?t[a]=q2({},r):Tl(r)?t[a]=r.slice():t[a]=r};for(let r=0,o=arguments.length;r(Eu(t,(o,a)=>{n&&_r(o)?e[a]=UE(o,n):e[a]=o},{allOwnKeys:r}),e),lOe=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),iOe=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},uOe=(e,t,n,r)=>{let o,a,s;const l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),a=o.length;a-- >0;)s=o[a],(!r||r(s,e,t))&&!l[s]&&(t[s]=e[s],l[s]=!0);e=n!==!1&&o1(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},cOe=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},dOe=e=>{if(!e)return null;if(Tl(e))return e;let t=e.length;if(!WE(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},fOe=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&o1(Uint8Array)),pOe=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let o;for(;(o=r.next())&&!o.done;){const a=o.value;t.call(e,a[0],a[1])}},hOe=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},vOe=fo("HTMLFormElement"),mOe=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,o){return r.toUpperCase()+o}),g4=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),gOe=fo("RegExp"),YE=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Eu(n,(o,a)=>{t(o,a,e)!==!1&&(r[a]=o)}),Object.defineProperties(e,r)},_Oe=e=>{YE(e,(t,n)=>{if(_r(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(_r(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},bOe=(e,t)=>{const n={},r=o=>{o.forEach(a=>{n[a]=!0})};return Tl(e)?r(e):r(String(e).split(t)),n},yOe=()=>{},wOe=(e,t)=>(e=+e,Number.isFinite(e)?e:t),fp="abcdefghijklmnopqrstuvwxyz",_4="0123456789",XE={DIGIT:_4,ALPHA:fp,ALPHA_DIGIT:fp+fp.toUpperCase()+_4},EOe=(e=16,t=XE.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function COe(e){return!!(e&&_r(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const SOe=e=>{const t=new Array(10),n=(r,o)=>{if(pf(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[o]=r;const a=Tl(r)?[]:{};return Eu(r,(s,l)=>{const i=n(s,o+1);!Yi(i)&&(a[l]=i)}),t[o]=void 0,a}}return r};return n(e,0)},kOe=fo("AsyncFunction"),$Oe=e=>e&&(pf(e)||_r(e))&&_r(e.then)&&_r(e.catch),Be={isArray:Tl,isArrayBuffer:KE,isBuffer:GTe,isFormData:rOe,isArrayBufferView:YTe,isString:XTe,isNumber:WE,isBoolean:ZTe,isObject:pf,isPlainObject:Nc,isUndefined:Yi,isDate:JTe,isFile:QTe,isBlob:eOe,isRegExp:gOe,isFunction:_r,isStream:nOe,isURLSearchParams:oOe,isTypedArray:fOe,isFileList:tOe,forEach:Eu,merge:q2,extend:sOe,trim:aOe,stripBOM:lOe,inherits:iOe,toFlatObject:uOe,kindOf:df,kindOfTest:fo,endsWith:cOe,toArray:dOe,forEachEntry:pOe,matchAll:hOe,isHTMLForm:vOe,hasOwnProperty:g4,hasOwnProp:g4,reduceDescriptors:YE,freezeMethods:_Oe,toObjectSet:bOe,toCamelCase:mOe,noop:yOe,toFiniteNumber:wOe,findKey:jE,global:qE,isContextDefined:GE,ALPHABET:XE,generateString:EOe,isSpecCompliantForm:COe,toJSONObject:SOe,isAsyncFn:kOe,isThenable:$Oe};function It(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}Be.inherits(It,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Be.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const ZE=It.prototype,JE={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{JE[e]={value:e}});Object.defineProperties(It,JE);Object.defineProperty(ZE,"isAxiosError",{value:!0});It.from=(e,t,n,r,o,a)=>{const s=Object.create(ZE);return Be.toFlatObject(e,s,function(i){return i!==Error.prototype},l=>l!=="isAxiosError"),It.call(s,e.message,t,n,r,o),s.cause=e,s.name=e.name,a&&Object.assign(s,a),s};const TOe=null;function G2(e){return Be.isPlainObject(e)||Be.isArray(e)}function QE(e){return Be.endsWith(e,"[]")?e.slice(0,-2):e}function b4(e,t,n){return e?e.concat(t).map(function(o,a){return o=QE(o),!n&&a?"["+o+"]":o}).join(n?".":""):t}function OOe(e){return Be.isArray(e)&&!e.some(G2)}const MOe=Be.toFlatObject(Be,{},null,function(t){return/^is[A-Z]/.test(t)});function hf(e,t,n){if(!Be.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=Be.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!Be.isUndefined(_[m])});const r=n.metaTokens,o=n.visitor||d,a=n.dots,s=n.indexes,i=(n.Blob||typeof Blob<"u"&&Blob)&&Be.isSpecCompliantForm(t);if(!Be.isFunction(o))throw new TypeError("visitor must be a function");function u(h){if(h===null)return"";if(Be.isDate(h))return h.toISOString();if(!i&&Be.isBlob(h))throw new It("Blob is not supported. Use a Buffer instead.");return Be.isArrayBuffer(h)||Be.isTypedArray(h)?i&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function d(h,m,_){let g=h;if(h&&!_&&typeof h=="object"){if(Be.endsWith(m,"{}"))m=r?m:m.slice(0,-2),h=JSON.stringify(h);else if(Be.isArray(h)&&OOe(h)||(Be.isFileList(h)||Be.endsWith(m,"[]"))&&(g=Be.toArray(h)))return m=QE(m),g.forEach(function(y,w){!(Be.isUndefined(y)||y===null)&&t.append(s===!0?b4([m],w,a):s===null?m:m+"[]",u(y))}),!1}return G2(h)?!0:(t.append(b4(_,m,a),u(h)),!1)}const f=[],p=Object.assign(MOe,{defaultVisitor:d,convertValue:u,isVisitable:G2});function v(h,m){if(!Be.isUndefined(h)){if(f.indexOf(h)!==-1)throw Error("Circular reference detected in "+m.join("."));f.push(h),Be.forEach(h,function(g,b){(!(Be.isUndefined(g)||g===null)&&o.call(t,g,Be.isString(b)?b.trim():b,m,p))===!0&&v(g,m?m.concat(b):[b])}),f.pop()}}if(!Be.isObject(e))throw new TypeError("data must be an object");return v(e),t}function y4(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function a1(e,t){this._pairs=[],e&&hf(e,this,t)}const e9=a1.prototype;e9.append=function(t,n){this._pairs.push([t,n])};e9.toString=function(t){const n=t?function(r){return t.call(this,r,y4)}:y4;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function NOe(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function t9(e,t,n){if(!t)return e;const r=n&&n.encode||NOe,o=n&&n.serialize;let a;if(o?a=o(t,n):a=Be.isURLSearchParams(t)?t.toString():new a1(t,n).toString(r),a){const s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}class AOe{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Be.forEach(this.handlers,function(r){r!==null&&t(r)})}}const w4=AOe,n9={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ROe=typeof URLSearchParams<"u"?URLSearchParams:a1,xOe=typeof FormData<"u"?FormData:null,IOe=typeof Blob<"u"?Blob:null,LOe=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),POe=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),Qr={isBrowser:!0,classes:{URLSearchParams:ROe,FormData:xOe,Blob:IOe},isStandardBrowserEnv:LOe,isStandardBrowserWebWorkerEnv:POe,protocols:["http","https","file","blob","url","data"]};function DOe(e,t){return hf(e,new Qr.classes.URLSearchParams,Object.assign({visitor:function(n,r,o,a){return Qr.isNode&&Be.isBuffer(n)?(this.append(r,n.toString("base64")),!1):a.defaultVisitor.apply(this,arguments)}},t))}function zOe(e){return Be.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function VOe(e){const t={},n=Object.keys(e);let r;const o=n.length;let a;for(r=0;r=n.length;return s=!s&&Be.isArray(o)?o.length:s,i?(Be.hasOwnProp(o,s)?o[s]=[o[s],r]:o[s]=r,!l):((!o[s]||!Be.isObject(o[s]))&&(o[s]=[]),t(n,r,o[s],a)&&Be.isArray(o[s])&&(o[s]=VOe(o[s])),!l)}if(Be.isFormData(e)&&Be.isFunction(e.entries)){const n={};return Be.forEachEntry(e,(r,o)=>{t(zOe(r),o,n,0)}),n}return null}const BOe={"Content-Type":void 0};function FOe(e,t,n){if(Be.isString(e))try{return(t||JSON.parse)(e),Be.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const vf={transitional:n9,adapter:["xhr","http"],transformRequest:[function(t,n){const r=n.getContentType()||"",o=r.indexOf("application/json")>-1,a=Be.isObject(t);if(a&&Be.isHTMLForm(t)&&(t=new FormData(t)),Be.isFormData(t))return o&&o?JSON.stringify(r9(t)):t;if(Be.isArrayBuffer(t)||Be.isBuffer(t)||Be.isStream(t)||Be.isFile(t)||Be.isBlob(t))return t;if(Be.isArrayBufferView(t))return t.buffer;if(Be.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(a){if(r.indexOf("application/x-www-form-urlencoded")>-1)return DOe(t,this.formSerializer).toString();if((l=Be.isFileList(t))||r.indexOf("multipart/form-data")>-1){const i=this.env&&this.env.FormData;return hf(l?{"files[]":t}:t,i&&new i,this.formSerializer)}}return a||o?(n.setContentType("application/json",!1),FOe(t)):t}],transformResponse:[function(t){const n=this.transitional||vf.transitional,r=n&&n.forcedJSONParsing,o=this.responseType==="json";if(t&&Be.isString(t)&&(r&&!this.responseType||o)){const s=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(l){if(s)throw l.name==="SyntaxError"?It.from(l,It.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Qr.classes.FormData,Blob:Qr.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};Be.forEach(["delete","get","head"],function(t){vf.headers[t]={}});Be.forEach(["post","put","patch"],function(t){vf.headers[t]=Be.merge(BOe)});const s1=vf,HOe=Be.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),UOe=e=>{const t={};let n,r,o;return e&&e.split(` +`).forEach(function(s){o=s.indexOf(":"),n=s.substring(0,o).trim().toLowerCase(),r=s.substring(o+1).trim(),!(!n||t[n]&&HOe[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},E4=Symbol("internals");function Bl(e){return e&&String(e).trim().toLowerCase()}function Ac(e){return e===!1||e==null?e:Be.isArray(e)?e.map(Ac):String(e)}function KOe(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const WOe=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function pp(e,t,n,r,o){if(Be.isFunction(r))return r.call(this,t,n);if(o&&(t=n),!!Be.isString(t)){if(Be.isString(r))return t.indexOf(r)!==-1;if(Be.isRegExp(r))return r.test(t)}}function jOe(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function qOe(e,t){const n=Be.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(o,a,s){return this[r].call(this,t,o,a,s)},configurable:!0})})}class mf{constructor(t){t&&this.set(t)}set(t,n,r){const o=this;function a(l,i,u){const d=Bl(i);if(!d)throw new Error("header name must be a non-empty string");const f=Be.findKey(o,d);(!f||o[f]===void 0||u===!0||u===void 0&&o[f]!==!1)&&(o[f||i]=Ac(l))}const s=(l,i)=>Be.forEach(l,(u,d)=>a(u,d,i));return Be.isPlainObject(t)||t instanceof this.constructor?s(t,n):Be.isString(t)&&(t=t.trim())&&!WOe(t)?s(UOe(t),n):t!=null&&a(n,t,r),this}get(t,n){if(t=Bl(t),t){const r=Be.findKey(this,t);if(r){const o=this[r];if(!n)return o;if(n===!0)return KOe(o);if(Be.isFunction(n))return n.call(this,o,r);if(Be.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Bl(t),t){const r=Be.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||pp(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let o=!1;function a(s){if(s=Bl(s),s){const l=Be.findKey(r,s);l&&(!n||pp(r,r[l],l,n))&&(delete r[l],o=!0)}}return Be.isArray(t)?t.forEach(a):a(t),o}clear(t){const n=Object.keys(this);let r=n.length,o=!1;for(;r--;){const a=n[r];(!t||pp(this,this[a],a,t,!0))&&(delete this[a],o=!0)}return o}normalize(t){const n=this,r={};return Be.forEach(this,(o,a)=>{const s=Be.findKey(r,a);if(s){n[s]=Ac(o),delete n[a];return}const l=t?jOe(a):String(a).trim();l!==a&&delete n[a],n[l]=Ac(o),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return Be.forEach(this,(r,o)=>{r!=null&&r!==!1&&(n[o]=t&&Be.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(o=>r.set(o)),r}static accessor(t){const r=(this[E4]=this[E4]={accessors:{}}).accessors,o=this.prototype;function a(s){const l=Bl(s);r[l]||(qOe(o,s),r[l]=!0)}return Be.isArray(t)?t.forEach(a):a(t),this}}mf.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Be.freezeMethods(mf.prototype);Be.freezeMethods(mf);const $o=mf;function hp(e,t){const n=this||s1,r=t||n,o=$o.from(r.headers);let a=r.data;return Be.forEach(e,function(l){a=l.call(n,a,o.normalize(),t?t.status:void 0)}),o.normalize(),a}function o9(e){return!!(e&&e.__CANCEL__)}function Cu(e,t,n){It.call(this,e??"canceled",It.ERR_CANCELED,t,n),this.name="CanceledError"}Be.inherits(Cu,It,{__CANCEL__:!0});function GOe(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new It("Request failed with status code "+n.status,[It.ERR_BAD_REQUEST,It.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const YOe=Qr.isStandardBrowserEnv?function(){return{write:function(n,r,o,a,s,l){const i=[];i.push(n+"="+encodeURIComponent(r)),Be.isNumber(o)&&i.push("expires="+new Date(o).toGMTString()),Be.isString(a)&&i.push("path="+a),Be.isString(s)&&i.push("domain="+s),l===!0&&i.push("secure"),document.cookie=i.join("; ")},read:function(n){const r=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return r?decodeURIComponent(r[3]):null},remove:function(n){this.write(n,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function XOe(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function ZOe(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function a9(e,t){return e&&!XOe(t)?ZOe(e,t):t}const JOe=Qr.isStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function o(a){let s=a;return t&&(n.setAttribute("href",s),s=n.href),n.setAttribute("href",s),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=o(window.location.href),function(s){const l=Be.isString(s)?o(s):s;return l.protocol===r.protocol&&l.host===r.host}}():function(){return function(){return!0}}();function QOe(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function eMe(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o=0,a=0,s;return t=t!==void 0?t:1e3,function(i){const u=Date.now(),d=r[a];s||(s=u),n[o]=i,r[o]=u;let f=a,p=0;for(;f!==o;)p+=n[f++],f=f%e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),u-s{const a=o.loaded,s=o.lengthComputable?o.total:void 0,l=a-n,i=r(l),u=a<=s;n=a;const d={loaded:a,total:s,progress:s?a/s:void 0,bytes:l,rate:i||void 0,estimated:i&&s&&u?(s-a)/i:void 0,event:o};d[t?"download":"upload"]=!0,e(d)}}const tMe=typeof XMLHttpRequest<"u",nMe=tMe&&function(e){return new Promise(function(n,r){let o=e.data;const a=$o.from(e.headers).normalize(),s=e.responseType;let l;function i(){e.cancelToken&&e.cancelToken.unsubscribe(l),e.signal&&e.signal.removeEventListener("abort",l)}Be.isFormData(o)&&(Qr.isStandardBrowserEnv||Qr.isStandardBrowserWebWorkerEnv?a.setContentType(!1):a.setContentType("multipart/form-data;",!1));let u=new XMLHttpRequest;if(e.auth){const v=e.auth.username||"",h=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";a.set("Authorization","Basic "+btoa(v+":"+h))}const d=a9(e.baseURL,e.url);u.open(e.method.toUpperCase(),t9(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout;function f(){if(!u)return;const v=$o.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders()),m={data:!s||s==="text"||s==="json"?u.responseText:u.response,status:u.status,statusText:u.statusText,headers:v,config:e,request:u};GOe(function(g){n(g),i()},function(g){r(g),i()},m),u=null}if("onloadend"in u?u.onloadend=f:u.onreadystatechange=function(){!u||u.readyState!==4||u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)||setTimeout(f)},u.onabort=function(){u&&(r(new It("Request aborted",It.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new It("Network Error",It.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let h=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const m=e.transitional||n9;e.timeoutErrorMessage&&(h=e.timeoutErrorMessage),r(new It(h,m.clarifyTimeoutError?It.ETIMEDOUT:It.ECONNABORTED,e,u)),u=null},Qr.isStandardBrowserEnv){const v=(e.withCredentials||JOe(d))&&e.xsrfCookieName&&YOe.read(e.xsrfCookieName);v&&a.set(e.xsrfHeaderName,v)}o===void 0&&a.setContentType(null),"setRequestHeader"in u&&Be.forEach(a.toJSON(),function(h,m){u.setRequestHeader(m,h)}),Be.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&s!=="json"&&(u.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&u.addEventListener("progress",C4(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&u.upload&&u.upload.addEventListener("progress",C4(e.onUploadProgress)),(e.cancelToken||e.signal)&&(l=v=>{u&&(r(!v||v.type?new Cu(null,e,u):v),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(l),e.signal&&(e.signal.aborted?l():e.signal.addEventListener("abort",l)));const p=QOe(d);if(p&&Qr.protocols.indexOf(p)===-1){r(new It("Unsupported protocol "+p+":",It.ERR_BAD_REQUEST,e));return}u.send(o||null)})},Rc={http:TOe,xhr:nMe};Be.forEach(Rc,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const rMe={getAdapter:e=>{e=Be.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let o=0;oe instanceof $o?e.toJSON():e;function gl(e,t){t=t||{};const n={};function r(u,d,f){return Be.isPlainObject(u)&&Be.isPlainObject(d)?Be.merge.call({caseless:f},u,d):Be.isPlainObject(d)?Be.merge({},d):Be.isArray(d)?d.slice():d}function o(u,d,f){if(Be.isUndefined(d)){if(!Be.isUndefined(u))return r(void 0,u,f)}else return r(u,d,f)}function a(u,d){if(!Be.isUndefined(d))return r(void 0,d)}function s(u,d){if(Be.isUndefined(d)){if(!Be.isUndefined(u))return r(void 0,u)}else return r(void 0,d)}function l(u,d,f){if(f in t)return r(u,d);if(f in e)return r(void 0,u)}const i={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l,headers:(u,d)=>o(k4(u),k4(d),!0)};return Be.forEach(Object.keys(Object.assign({},e,t)),function(d){const f=i[d]||o,p=f(e[d],t[d],d);Be.isUndefined(p)&&f!==l||(n[d]=p)}),n}const s9="1.4.0",l1={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{l1[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const $4={};l1.transitional=function(t,n,r){function o(a,s){return"[Axios v"+s9+"] Transitional option '"+a+"'"+s+(r?". "+r:"")}return(a,s,l)=>{if(t===!1)throw new It(o(s," has been removed"+(n?" in "+n:"")),It.ERR_DEPRECATED);return n&&!$4[s]&&($4[s]=!0,console.warn(o(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(a,s,l):!0}};function oMe(e,t,n){if(typeof e!="object")throw new It("options must be an object",It.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const a=r[o],s=t[a];if(s){const l=e[a],i=l===void 0||s(l,a,e);if(i!==!0)throw new It("option "+a+" must be "+i,It.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new It("Unknown option "+a,It.ERR_BAD_OPTION)}}const Y2={assertOptions:oMe,validators:l1},Jo=Y2.validators;class fd{constructor(t){this.defaults=t,this.interceptors={request:new w4,response:new w4}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=gl(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:a}=n;r!==void 0&&Y2.assertOptions(r,{silentJSONParsing:Jo.transitional(Jo.boolean),forcedJSONParsing:Jo.transitional(Jo.boolean),clarifyTimeoutError:Jo.transitional(Jo.boolean)},!1),o!=null&&(Be.isFunction(o)?n.paramsSerializer={serialize:o}:Y2.assertOptions(o,{encode:Jo.function,serialize:Jo.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s;s=a&&Be.merge(a.common,a[n.method]),s&&Be.forEach(["delete","get","head","post","put","patch","common"],h=>{delete a[h]}),n.headers=$o.concat(s,a);const l=[];let i=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(i=i&&m.synchronous,l.unshift(m.fulfilled,m.rejected))});const u=[];this.interceptors.response.forEach(function(m){u.push(m.fulfilled,m.rejected)});let d,f=0,p;if(!i){const h=[S4.bind(this),void 0];for(h.unshift.apply(h,l),h.push.apply(h,u),p=h.length,d=Promise.resolve(n);f{if(!r._listeners)return;let a=r._listeners.length;for(;a-- >0;)r._listeners[a](o);r._listeners=null}),this.promise.then=o=>{let a;const s=new Promise(l=>{r.subscribe(l),a=l}).then(o);return s.cancel=function(){r.unsubscribe(a)},s},t(function(a,s,l){r.reason||(r.reason=new Cu(a,s,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new i1(function(o){t=o}),cancel:t}}}const aMe=i1;function sMe(e){return function(n){return e.apply(null,n)}}function lMe(e){return Be.isObject(e)&&e.isAxiosError===!0}const X2={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(X2).forEach(([e,t])=>{X2[t]=e});const iMe=X2;function l9(e){const t=new xc(e),n=UE(xc.prototype.request,t);return Be.extend(n,xc.prototype,t,{allOwnKeys:!0}),Be.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return l9(gl(e,o))},n}const vn=l9(s1);vn.Axios=xc;vn.CanceledError=Cu;vn.CancelToken=aMe;vn.isCancel=o9;vn.VERSION=s9;vn.toFormData=hf;vn.AxiosError=It;vn.Cancel=vn.CanceledError;vn.all=function(t){return Promise.all(t)};vn.spread=sMe;vn.isAxiosError=lMe;vn.mergeConfig=gl;vn.AxiosHeaders=$o;vn.formToJSON=e=>r9(Be.isHTMLForm(e)?new FormData(e):e);vn.HttpStatusCode=iMe;vn.default=vn;const uMe=vn;/*! + * shared v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const Z2=typeof window<"u",cMe=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol",Ma=e=>cMe?Symbol(e):e,dMe=(e,t,n)=>fMe({l:e,k:t,s:n}),fMe=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),fn=e=>typeof e=="number"&&isFinite(e),pMe=e=>c1(e)==="[object Date]",ka=e=>c1(e)==="[object RegExp]",gf=e=>wt(e)&&Object.keys(e).length===0;function hMe(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const wn=Object.assign;let T4;const di=()=>T4||(T4=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function O4(e){return e.replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}const vMe=Object.prototype.hasOwnProperty;function u1(e,t){return vMe.call(e,t)}const Xt=Array.isArray,nn=e=>typeof e=="function",et=e=>typeof e=="string",Nt=e=>typeof e=="boolean",Zt=e=>e!==null&&typeof e=="object",i9=Object.prototype.toString,c1=e=>i9.call(e),wt=e=>c1(e)==="[object Object]",mMe=e=>e==null?"":Xt(e)||wt(e)&&e.toString===i9?JSON.stringify(e,null,2):String(e);/*! + * message-compiler v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const Pt={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,__EXTEND_POINT__:15};function _f(e,t,n={}){const{domain:r,messages:o,args:a}=n,s=e,l=new SyntaxError(String(s));return l.code=e,t&&(l.location=t),l.domain=r,l}function gMe(e){throw e}function _Me(e,t,n){return{line:e,column:t,offset:n}}function J2(e,t,n){const r={start:e,end:t};return n!=null&&(r.source=n),r}const vo=" ",bMe="\r",Pn=` +`,yMe=String.fromCharCode(8232),wMe=String.fromCharCode(8233);function EMe(e){const t=e;let n=0,r=1,o=1,a=0;const s=O=>t[O]===bMe&&t[O+1]===Pn,l=O=>t[O]===Pn,i=O=>t[O]===wMe,u=O=>t[O]===yMe,d=O=>s(O)||l(O)||i(O)||u(O),f=()=>n,p=()=>r,v=()=>o,h=()=>a,m=O=>s(O)||i(O)||u(O)?Pn:t[O],_=()=>m(n),g=()=>m(n+a);function b(){return a=0,d(n)&&(r++,o=0),s(n)&&n++,n++,o++,t[n]}function y(){return s(n+a)&&a++,a++,t[n+a]}function w(){n=0,r=1,o=1,a=0}function C(O=0){a=O}function S(){const O=n+a;for(;O!==n;)b();a=0}return{index:f,line:p,column:v,peekOffset:h,charAt:m,currentChar:_,currentPeek:g,next:b,peek:y,reset:w,resetPeek:C,skipToPeek:S}}const Qo=void 0,M4="'",CMe="tokenizer";function SMe(e,t={}){const n=t.location!==!1,r=EMe(e),o=()=>r.index(),a=()=>_Me(r.line(),r.column(),r.index()),s=a(),l=o(),i={currentType:14,offset:l,startLoc:s,endLoc:s,lastType:14,lastOffset:l,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},u=()=>i,{onError:d}=t;function f(D,F,Q,...ge){const ne=u();if(F.column+=Q,F.offset+=Q,d){const Se=J2(ne.startLoc,F),ye=_f(D,Se,{domain:CMe,args:ge});d(ye)}}function p(D,F,Q){D.endLoc=a(),D.currentType=F;const ge={type:F};return n&&(ge.loc=J2(D.startLoc,D.endLoc)),Q!=null&&(ge.value=Q),ge}const v=D=>p(D,14);function h(D,F){return D.currentChar()===F?(D.next(),F):(f(Pt.EXPECTED_TOKEN,a(),0,F),"")}function m(D){let F="";for(;D.currentPeek()===vo||D.currentPeek()===Pn;)F+=D.currentPeek(),D.peek();return F}function _(D){const F=m(D);return D.skipToPeek(),F}function g(D){if(D===Qo)return!1;const F=D.charCodeAt(0);return F>=97&&F<=122||F>=65&&F<=90||F===95}function b(D){if(D===Qo)return!1;const F=D.charCodeAt(0);return F>=48&&F<=57}function y(D,F){const{currentType:Q}=F;if(Q!==2)return!1;m(D);const ge=g(D.currentPeek());return D.resetPeek(),ge}function w(D,F){const{currentType:Q}=F;if(Q!==2)return!1;m(D);const ge=D.currentPeek()==="-"?D.peek():D.currentPeek(),ne=b(ge);return D.resetPeek(),ne}function C(D,F){const{currentType:Q}=F;if(Q!==2)return!1;m(D);const ge=D.currentPeek()===M4;return D.resetPeek(),ge}function S(D,F){const{currentType:Q}=F;if(Q!==8)return!1;m(D);const ge=D.currentPeek()===".";return D.resetPeek(),ge}function O(D,F){const{currentType:Q}=F;if(Q!==9)return!1;m(D);const ge=g(D.currentPeek());return D.resetPeek(),ge}function T(D,F){const{currentType:Q}=F;if(!(Q===8||Q===12))return!1;m(D);const ge=D.currentPeek()===":";return D.resetPeek(),ge}function A(D,F){const{currentType:Q}=F;if(Q!==10)return!1;const ge=()=>{const Se=D.currentPeek();return Se==="{"?g(D.peek()):Se==="@"||Se==="%"||Se==="|"||Se===":"||Se==="."||Se===vo||!Se?!1:Se===Pn?(D.peek(),ge()):g(Se)},ne=ge();return D.resetPeek(),ne}function R(D){m(D);const F=D.currentPeek()==="|";return D.resetPeek(),F}function B(D){const F=m(D),Q=D.currentPeek()==="%"&&D.peek()==="{";return D.resetPeek(),{isModulo:Q,hasSpace:F.length>0}}function V(D,F=!0){const Q=(ne=!1,Se="",ye=!1)=>{const Te=D.currentPeek();return Te==="{"?Se==="%"?!1:ne:Te==="@"||!Te?Se==="%"?!0:ne:Te==="%"?(D.peek(),Q(ne,"%",!0)):Te==="|"?Se==="%"||ye?!0:!(Se===vo||Se===Pn):Te===vo?(D.peek(),Q(!0,vo,ye)):Te===Pn?(D.peek(),Q(!0,Pn,ye)):!0},ge=Q();return F&&D.resetPeek(),ge}function H(D,F){const Q=D.currentChar();return Q===Qo?Qo:F(Q)?(D.next(),Q):null}function U(D){return H(D,Q=>{const ge=Q.charCodeAt(0);return ge>=97&&ge<=122||ge>=65&&ge<=90||ge>=48&&ge<=57||ge===95||ge===36})}function K(D){return H(D,Q=>{const ge=Q.charCodeAt(0);return ge>=48&&ge<=57})}function I(D){return H(D,Q=>{const ge=Q.charCodeAt(0);return ge>=48&&ge<=57||ge>=65&&ge<=70||ge>=97&&ge<=102})}function x(D){let F="",Q="";for(;F=K(D);)Q+=F;return Q}function L(D){_(D);const F=D.currentChar();return F!=="%"&&f(Pt.EXPECTED_TOKEN,a(),0,F),D.next(),"%"}function z(D){let F="";for(;;){const Q=D.currentChar();if(Q==="{"||Q==="}"||Q==="@"||Q==="|"||!Q)break;if(Q==="%")if(V(D))F+=Q,D.next();else break;else if(Q===vo||Q===Pn)if(V(D))F+=Q,D.next();else{if(R(D))break;F+=Q,D.next()}else F+=Q,D.next()}return F}function q(D){_(D);let F="",Q="";for(;F=U(D);)Q+=F;return D.currentChar()===Qo&&f(Pt.UNTERMINATED_CLOSING_BRACE,a(),0),Q}function le(D){_(D);let F="";return D.currentChar()==="-"?(D.next(),F+=`-${x(D)}`):F+=x(D),D.currentChar()===Qo&&f(Pt.UNTERMINATED_CLOSING_BRACE,a(),0),F}function G(D){_(D),h(D,"'");let F="",Q="";const ge=Se=>Se!==M4&&Se!==Pn;for(;F=H(D,ge);)F==="\\"?Q+=ae(D):Q+=F;const ne=D.currentChar();return ne===Pn||ne===Qo?(f(Pt.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),ne===Pn&&(D.next(),h(D,"'")),Q):(h(D,"'"),Q)}function ae(D){const F=D.currentChar();switch(F){case"\\":case"'":return D.next(),`\\${F}`;case"u":return be(D,F,4);case"U":return be(D,F,6);default:return f(Pt.UNKNOWN_ESCAPE_SEQUENCE,a(),0,F),""}}function be(D,F,Q){h(D,F);let ge="";for(let ne=0;nene!=="{"&&ne!=="}"&&ne!==vo&&ne!==Pn;for(;F=H(D,ge);)Q+=F;return Q}function de(D){let F="",Q="";for(;F=U(D);)Q+=F;return Q}function Z(D){const F=(Q=!1,ge)=>{const ne=D.currentChar();return ne==="{"||ne==="%"||ne==="@"||ne==="|"||!ne||ne===vo?ge:ne===Pn?(ge+=ne,D.next(),F(Q,ge)):(ge+=ne,D.next(),F(!0,ge))};return F(!1,"")}function Y(D){_(D);const F=h(D,"|");return _(D),F}function ce(D,F){let Q=null;switch(D.currentChar()){case"{":return F.braceNest>=1&&f(Pt.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),D.next(),Q=p(F,2,"{"),_(D),F.braceNest++,Q;case"}":return F.braceNest>0&&F.currentType===2&&f(Pt.EMPTY_PLACEHOLDER,a(),0),D.next(),Q=p(F,3,"}"),F.braceNest--,F.braceNest>0&&_(D),F.inLinked&&F.braceNest===0&&(F.inLinked=!1),Q;case"@":return F.braceNest>0&&f(Pt.UNTERMINATED_CLOSING_BRACE,a(),0),Q=ve(D,F)||v(F),F.braceNest=0,Q;default:let ne=!0,Se=!0,ye=!0;if(R(D))return F.braceNest>0&&f(Pt.UNTERMINATED_CLOSING_BRACE,a(),0),Q=p(F,1,Y(D)),F.braceNest=0,F.inLinked=!1,Q;if(F.braceNest>0&&(F.currentType===5||F.currentType===6||F.currentType===7))return f(Pt.UNTERMINATED_CLOSING_BRACE,a(),0),F.braceNest=0,Ne(D,F);if(ne=y(D,F))return Q=p(F,5,q(D)),_(D),Q;if(Se=w(D,F))return Q=p(F,6,le(D)),_(D),Q;if(ye=C(D,F))return Q=p(F,7,G(D)),_(D),Q;if(!ne&&!Se&&!ye)return Q=p(F,13,te(D)),f(Pt.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,Q.value),_(D),Q;break}return Q}function ve(D,F){const{currentType:Q}=F;let ge=null;const ne=D.currentChar();switch((Q===8||Q===9||Q===12||Q===10)&&(ne===Pn||ne===vo)&&f(Pt.INVALID_LINKED_FORMAT,a(),0),ne){case"@":return D.next(),ge=p(F,8,"@"),F.inLinked=!0,ge;case".":return _(D),D.next(),p(F,9,".");case":":return _(D),D.next(),p(F,10,":");default:return R(D)?(ge=p(F,1,Y(D)),F.braceNest=0,F.inLinked=!1,ge):S(D,F)||T(D,F)?(_(D),ve(D,F)):O(D,F)?(_(D),p(F,12,de(D))):A(D,F)?(_(D),ne==="{"?ce(D,F)||ge:p(F,11,Z(D))):(Q===8&&f(Pt.INVALID_LINKED_FORMAT,a(),0),F.braceNest=0,F.inLinked=!1,Ne(D,F))}}function Ne(D,F){let Q={type:14};if(F.braceNest>0)return ce(D,F)||v(F);if(F.inLinked)return ve(D,F)||v(F);switch(D.currentChar()){case"{":return ce(D,F)||v(F);case"}":return f(Pt.UNBALANCED_CLOSING_BRACE,a(),0),D.next(),p(F,3,"}");case"@":return ve(D,F)||v(F);default:if(R(D))return Q=p(F,1,Y(D)),F.braceNest=0,F.inLinked=!1,Q;const{isModulo:ne,hasSpace:Se}=B(D);if(ne)return Se?p(F,0,z(D)):p(F,4,L(D));if(V(D))return p(F,0,z(D));break}return Q}function j(){const{currentType:D,offset:F,startLoc:Q,endLoc:ge}=i;return i.lastType=D,i.lastOffset=F,i.lastStartLoc=Q,i.lastEndLoc=ge,i.offset=o(),i.startLoc=a(),r.currentChar()===Qo?p(i,14):Ne(r,i)}return{nextToken:j,currentOffset:o,currentPosition:a,context:u}}const kMe="parser",$Me=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function TMe(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const r=parseInt(t||n,16);return r<=55295||r>=57344?String.fromCodePoint(r):"�"}}}function OMe(e={}){const t=e.location!==!1,{onError:n}=e;function r(g,b,y,w,...C){const S=g.currentPosition();if(S.offset+=w,S.column+=w,n){const O=J2(y,S),T=_f(b,O,{domain:kMe,args:C});n(T)}}function o(g,b,y){const w={type:g,start:b,end:b};return t&&(w.loc={start:y,end:y}),w}function a(g,b,y,w){g.end=b,w&&(g.type=w),t&&g.loc&&(g.loc.end=y)}function s(g,b){const y=g.context(),w=o(3,y.offset,y.startLoc);return w.value=b,a(w,g.currentOffset(),g.currentPosition()),w}function l(g,b){const y=g.context(),{lastOffset:w,lastStartLoc:C}=y,S=o(5,w,C);return S.index=parseInt(b,10),g.nextToken(),a(S,g.currentOffset(),g.currentPosition()),S}function i(g,b){const y=g.context(),{lastOffset:w,lastStartLoc:C}=y,S=o(4,w,C);return S.key=b,g.nextToken(),a(S,g.currentOffset(),g.currentPosition()),S}function u(g,b){const y=g.context(),{lastOffset:w,lastStartLoc:C}=y,S=o(9,w,C);return S.value=b.replace($Me,TMe),g.nextToken(),a(S,g.currentOffset(),g.currentPosition()),S}function d(g){const b=g.nextToken(),y=g.context(),{lastOffset:w,lastStartLoc:C}=y,S=o(8,w,C);return b.type!==12?(r(g,Pt.UNEXPECTED_EMPTY_LINKED_MODIFIER,y.lastStartLoc,0),S.value="",a(S,w,C),{nextConsumeToken:b,node:S}):(b.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,Kr(b)),S.value=b.value||"",a(S,g.currentOffset(),g.currentPosition()),{node:S})}function f(g,b){const y=g.context(),w=o(7,y.offset,y.startLoc);return w.value=b,a(w,g.currentOffset(),g.currentPosition()),w}function p(g){const b=g.context(),y=o(6,b.offset,b.startLoc);let w=g.nextToken();if(w.type===9){const C=d(g);y.modifier=C.node,w=C.nextConsumeToken||g.nextToken()}switch(w.type!==10&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(w)),w=g.nextToken(),w.type===2&&(w=g.nextToken()),w.type){case 11:w.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(w)),y.key=f(g,w.value||"");break;case 5:w.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(w)),y.key=i(g,w.value||"");break;case 6:w.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(w)),y.key=l(g,w.value||"");break;case 7:w.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(w)),y.key=u(g,w.value||"");break;default:r(g,Pt.UNEXPECTED_EMPTY_LINKED_KEY,b.lastStartLoc,0);const C=g.context(),S=o(7,C.offset,C.startLoc);return S.value="",a(S,C.offset,C.startLoc),y.key=S,a(y,C.offset,C.startLoc),{nextConsumeToken:w,node:y}}return a(y,g.currentOffset(),g.currentPosition()),{node:y}}function v(g){const b=g.context(),y=b.currentType===1?g.currentOffset():b.offset,w=b.currentType===1?b.endLoc:b.startLoc,C=o(2,y,w);C.items=[];let S=null;do{const A=S||g.nextToken();switch(S=null,A.type){case 0:A.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(A)),C.items.push(s(g,A.value||""));break;case 6:A.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(A)),C.items.push(l(g,A.value||""));break;case 5:A.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(A)),C.items.push(i(g,A.value||""));break;case 7:A.value==null&&r(g,Pt.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Kr(A)),C.items.push(u(g,A.value||""));break;case 8:const R=p(g);C.items.push(R.node),S=R.nextConsumeToken||null;break}}while(b.currentType!==14&&b.currentType!==1);const O=b.currentType===1?b.lastOffset:g.currentOffset(),T=b.currentType===1?b.lastEndLoc:g.currentPosition();return a(C,O,T),C}function h(g,b,y,w){const C=g.context();let S=w.items.length===0;const O=o(1,b,y);O.cases=[],O.cases.push(w);do{const T=v(g);S||(S=T.items.length===0),O.cases.push(T)}while(C.currentType!==14);return S&&r(g,Pt.MUST_HAVE_MESSAGES_IN_PLURAL,y,0),a(O,g.currentOffset(),g.currentPosition()),O}function m(g){const b=g.context(),{offset:y,startLoc:w}=b,C=v(g);return b.currentType===14?C:h(g,y,w,C)}function _(g){const b=SMe(g,wn({},e)),y=b.context(),w=o(0,y.offset,y.startLoc);return t&&w.loc&&(w.loc.source=g),w.body=m(b),y.currentType!==14&&r(b,Pt.UNEXPECTED_LEXICAL_ANALYSIS,y.lastStartLoc,0,g[y.offset]||""),a(w,b.currentOffset(),b.currentPosition()),w}return{parse:_}}function Kr(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function MMe(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:a=>(n.helpers.add(a),a)}}function N4(e,t){for(let n=0;ns;function i(m,_){s.code+=m}function u(m,_=!0){const g=_?o:"";i(a?g+" ".repeat(m):g)}function d(m=!0){const _=++s.indentLevel;m&&u(_)}function f(m=!0){const _=--s.indentLevel;m&&u(_)}function p(){u(s.indentLevel)}return{context:l,push:i,indent:d,deindent:f,newline:p,helper:m=>`_${m}`,needIndent:()=>s.needIndent}}function RMe(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),_l(e,t.key),t.modifier?(e.push(", "),_l(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function xMe(e,t){const{helper:n,needIndent:r}=e;e.push(`${n("normalize")}([`),e.indent(r());const o=t.items.length;for(let a=0;a1){e.push(`${n("plural")}([`),e.indent(r());const o=t.cases.length;for(let a=0;a{const n=et(t.mode)?t.mode:"normal",r=et(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,s=t.needIndent?t.needIndent:n!=="arrow",l=e.helpers||[],i=AMe(e,{mode:n,filename:r,sourceMap:o,breakLineCode:a,needIndent:s});i.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(s),l.length>0&&(i.push(`const { ${l.map(f=>`${f}: _${f}`).join(", ")} } = ctx`),i.newline()),i.push("return "),_l(i,e),i.deindent(s),i.push("}");const{code:u,map:d}=i.context();return{ast:e,code:u,map:d?d.toJSON():void 0}};function DMe(e,t={}){const n=wn({},t),o=OMe(n).parse(e);return NMe(o,n),PMe(o,n)}/*! + * devtools-if v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const u9={I18nInit:"i18n:init",FunctionTranslate:"function:translate"};/*! + * core-base v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const Na=[];Na[0]={w:[0],i:[3,0],["["]:[4],o:[7]};Na[1]={w:[1],["."]:[2],["["]:[4],o:[7]};Na[2]={w:[2],i:[3,0],[0]:[3,0]};Na[3]={i:[3,0],[0]:[3,0],w:[1,1],["."]:[2,1],["["]:[4,1],o:[7,1]};Na[4]={["'"]:[5,0],['"']:[6,0],["["]:[4,2],["]"]:[1,3],o:8,l:[4,0]};Na[5]={["'"]:[4,0],o:8,l:[5,0]};Na[6]={['"']:[4,0],o:8,l:[6,0]};const zMe=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function VMe(e){return zMe.test(e)}function BMe(e){const t=e.charCodeAt(0),n=e.charCodeAt(e.length-1);return t===n&&(t===34||t===39)?e.slice(1,-1):e}function FMe(e){if(e==null)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function HMe(e){const t=e.trim();return e.charAt(0)==="0"&&isNaN(parseInt(e))?!1:VMe(t)?BMe(t):"*"+t}function UMe(e){const t=[];let n=-1,r=0,o=0,a,s,l,i,u,d,f;const p=[];p[0]=()=>{s===void 0?s=l:s+=l},p[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},p[2]=()=>{p[0](),o++},p[3]=()=>{if(o>0)o--,r=4,p[0]();else{if(o=0,s===void 0||(s=HMe(s),s===!1))return!1;p[1]()}};function v(){const h=e[n+1];if(r===5&&h==="'"||r===6&&h==='"')return n++,l="\\"+h,p[0](),!0}for(;r!==null;)if(n++,a=e[n],!(a==="\\"&&v())){if(i=FMe(a),f=Na[r],u=f[i]||f.l||8,u===8||(r=u[0],u[1]!==void 0&&(d=p[u[1]],d&&(l=a,d()===!1))))return;if(r===7)return t}}const A4=new Map;function KMe(e,t){return Zt(e)?e[t]:null}function WMe(e,t){if(!Zt(e))return null;let n=A4.get(t);if(n||(n=UMe(t),n&&A4.set(t,n)),!n)return null;const r=n.length;let o=e,a=0;for(;ae,qMe=e=>"",GMe="text",YMe=e=>e.length===0?"":e.join(""),XMe=mMe;function R4(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function ZMe(e){const t=fn(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(fn(e.named.count)||fn(e.named.n))?fn(e.named.count)?e.named.count:fn(e.named.n)?e.named.n:t:t}function JMe(e,t){t.count||(t.count=e),t.n||(t.n=e)}function QMe(e={}){const t=e.locale,n=ZMe(e),r=Zt(e.pluralRules)&&et(t)&&nn(e.pluralRules[t])?e.pluralRules[t]:R4,o=Zt(e.pluralRules)&&et(t)&&nn(e.pluralRules[t])?R4:void 0,a=g=>g[r(n,g.length,o)],s=e.list||[],l=g=>s[g],i=e.named||{};fn(e.pluralIndex)&&JMe(n,i);const u=g=>i[g];function d(g){const b=nn(e.messages)?e.messages(g):Zt(e.messages)?e.messages[g]:!1;return b||(e.parent?e.parent.message(g):qMe)}const f=g=>e.modifiers?e.modifiers[g]:jMe,p=wt(e.processor)&&nn(e.processor.normalize)?e.processor.normalize:YMe,v=wt(e.processor)&&nn(e.processor.interpolate)?e.processor.interpolate:XMe,h=wt(e.processor)&&et(e.processor.type)?e.processor.type:GMe,_={list:l,named:u,plural:a,linked:(g,...b)=>{const[y,w]=b;let C="text",S="";b.length===1?Zt(y)?(S=y.modifier||S,C=y.type||C):et(y)&&(S=y||S):b.length===2&&(et(y)&&(S=y||S),et(w)&&(C=w||C));let O=d(g)(_);return C==="vnode"&&Xt(O)&&S&&(O=O[0]),S?f(S)(O,C):O},message:d,type:h,interpolate:v,normalize:p};return _}let Xi=null;function eNe(e){Xi=e}function tNe(e,t,n){Xi&&Xi.emit(u9.I18nInit,{timestamp:Date.now(),i18n:e,version:t,meta:n})}const nNe=rNe(u9.FunctionTranslate);function rNe(e){return t=>Xi&&Xi.emit(e,t)}function oNe(e,t,n){return[...new Set([n,...Xt(t)?t:Zt(t)?Object.keys(t):et(t)?[t]:[n]])]}function c9(e,t,n){const r=et(n)?n:Su,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let a=o.__localeChainCache.get(r);if(!a){a=[];let s=[n];for(;Xt(s);)s=x4(a,s,t);const l=Xt(t)||!wt(t)?t:t.default?t.default:null;s=et(l)?[l]:l,Xt(s)&&x4(a,s,!1),o.__localeChainCache.set(r,a)}return a}function x4(e,t,n){let r=!0;for(let o=0;o`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function iNe(){return{upper:(e,t)=>t==="text"&&et(e)?e.toUpperCase():t==="vnode"&&Zt(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&et(e)?e.toLowerCase():t==="vnode"&&Zt(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&et(e)?L4(e):t==="vnode"&&Zt(e)&&"__v_isVNode"in e?L4(e.children):e}}let d9;function uNe(e){d9=e}let f9;function cNe(e){f9=e}let p9;function dNe(e){p9=e}let h9=null;const P4=e=>{h9=e},fNe=()=>h9;let v9=null;const D4=e=>{v9=e},pNe=()=>v9;let z4=0;function hNe(e={}){const t=et(e.version)?e.version:lNe,n=et(e.locale)?e.locale:Su,r=Xt(e.fallbackLocale)||wt(e.fallbackLocale)||et(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:n,o=wt(e.messages)?e.messages:{[n]:{}},a=wt(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},s=wt(e.numberFormats)?e.numberFormats:{[n]:{}},l=wn({},e.modifiers||{},iNe()),i=e.pluralRules||{},u=nn(e.missing)?e.missing:null,d=Nt(e.missingWarn)||ka(e.missingWarn)?e.missingWarn:!0,f=Nt(e.fallbackWarn)||ka(e.fallbackWarn)?e.fallbackWarn:!0,p=!!e.fallbackFormat,v=!!e.unresolving,h=nn(e.postTranslation)?e.postTranslation:null,m=wt(e.processor)?e.processor:null,_=Nt(e.warnHtmlMessage)?e.warnHtmlMessage:!0,g=!!e.escapeParameter,b=nn(e.messageCompiler)?e.messageCompiler:d9,y=nn(e.messageResolver)?e.messageResolver:f9||KMe,w=nn(e.localeFallbacker)?e.localeFallbacker:p9||oNe,C=Zt(e.fallbackContext)?e.fallbackContext:void 0,S=nn(e.onWarn)?e.onWarn:hMe,O=e,T=Zt(O.__datetimeFormatters)?O.__datetimeFormatters:new Map,A=Zt(O.__numberFormatters)?O.__numberFormatters:new Map,R=Zt(O.__meta)?O.__meta:{};z4++;const B={version:t,cid:z4,locale:n,fallbackLocale:r,messages:o,modifiers:l,pluralRules:i,missing:u,missingWarn:d,fallbackWarn:f,fallbackFormat:p,unresolving:v,postTranslation:h,processor:m,warnHtmlMessage:_,escapeParameter:g,messageCompiler:b,messageResolver:y,localeFallbacker:w,fallbackContext:C,onWarn:S,__meta:R};return B.datetimeFormats=a,B.numberFormats=s,B.__datetimeFormatters=T,B.__numberFormatters=A,__INTLIFY_PROD_DEVTOOLS__&&tNe(B,t,R),B}function f1(e,t,n,r,o){const{missing:a,onWarn:s}=e;if(a!==null){const l=a(e,n,t,o);return et(l)?l:t}else return t}function Fl(e,t,n){const r=e;r.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}const vNe=e=>e;let V4=Object.create(null);function mNe(e,t={}){{const r=(t.onCacheKey||vNe)(e),o=V4[r];if(o)return o;let a=!1;const s=t.onError||gMe;t.onError=u=>{a=!0,s(u)};const{code:l}=DMe(e,t),i=new Function(`return ${l}`)();return a?i:V4[r]=i}}let m9=Pt.__EXTEND_POINT__;const mp=()=>++m9,Is={INVALID_ARGUMENT:m9,INVALID_DATE_ARGUMENT:mp(),INVALID_ISO_DATE_ARGUMENT:mp(),__EXTEND_POINT__:mp()};function Ls(e){return _f(e,null,void 0)}const B4=()=>"",jr=e=>nn(e);function F4(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:o,messageCompiler:a,fallbackLocale:s,messages:l}=e,[i,u]=Q2(...t),d=Nt(u.missingWarn)?u.missingWarn:e.missingWarn,f=Nt(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,p=Nt(u.escapeParameter)?u.escapeParameter:e.escapeParameter,v=!!u.resolvedMessage,h=et(u.default)||Nt(u.default)?Nt(u.default)?a?i:()=>i:u.default:n?a?i:()=>i:"",m=n||h!=="",_=et(u.locale)?u.locale:e.locale;p&&gNe(u);let[g,b,y]=v?[i,_,l[_]||{}]:g9(e,i,_,s,f,d),w=g,C=i;if(!v&&!(et(w)||jr(w))&&m&&(w=h,C=w),!v&&(!(et(w)||jr(w))||!et(b)))return o?bf:i;let S=!1;const O=()=>{S=!0},T=jr(w)?w:_9(e,i,b,w,C,O);if(S)return w;const A=yNe(e,b,y,u),R=QMe(A),B=_Ne(e,T,R),V=r?r(B,i):B;if(__INTLIFY_PROD_DEVTOOLS__){const H={timestamp:Date.now(),key:et(i)?i:jr(w)?w.key:"",locale:b||(jr(w)?w.locale:""),format:et(w)?w:jr(w)?w.source:"",message:V};H.meta=wn({},e.__meta,fNe()||{}),nNe(H)}return V}function gNe(e){Xt(e.list)?e.list=e.list.map(t=>et(t)?O4(t):t):Zt(e.named)&&Object.keys(e.named).forEach(t=>{et(e.named[t])&&(e.named[t]=O4(e.named[t]))})}function g9(e,t,n,r,o,a){const{messages:s,onWarn:l,messageResolver:i,localeFallbacker:u}=e,d=u(e,r,n);let f={},p,v=null;const h="translate";for(let m=0;mr;return u.locale=n,u.key=t,u}const i=s(r,bNe(e,n,o,r,l,a));return i.locale=n,i.key=t,i.source=r,i}function _Ne(e,t,n){return t(n)}function Q2(...e){const[t,n,r]=e,o={};if(!et(t)&&!fn(t)&&!jr(t))throw Ls(Is.INVALID_ARGUMENT);const a=fn(t)?String(t):(jr(t),t);return fn(n)?o.plural=n:et(n)?o.default=n:wt(n)&&!gf(n)?o.named=n:Xt(n)&&(o.list=n),fn(r)?o.plural=r:et(r)?o.default=r:wt(r)&&wn(o,r),[a,o]}function bNe(e,t,n,r,o,a){return{warnHtmlMessage:o,onError:s=>{throw a&&a(s),s},onCacheKey:s=>dMe(t,n,s)}}function yNe(e,t,n,r){const{modifiers:o,pluralRules:a,messageResolver:s,fallbackLocale:l,fallbackWarn:i,missingWarn:u,fallbackContext:d}=e,p={locale:t,modifiers:o,pluralRules:a,messages:v=>{let h=s(n,v);if(h==null&&d){const[,,m]=g9(d,v,t,l,i,u);h=s(m,v)}if(et(h)){let m=!1;const g=_9(e,v,t,h,v,()=>{m=!0});return m?B4:g}else return jr(h)?h:B4}};return e.processor&&(p.processor=e.processor),r.list&&(p.list=r.list),r.named&&(p.named=r.named),fn(r.plural)&&(p.pluralIndex=r.plural),p}function H4(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o,onWarn:a,localeFallbacker:s}=e,{__datetimeFormatters:l}=e,[i,u,d,f]=eh(...t),p=Nt(d.missingWarn)?d.missingWarn:e.missingWarn;Nt(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const v=!!d.part,h=et(d.locale)?d.locale:e.locale,m=s(e,o,h);if(!et(i)||i==="")return new Intl.DateTimeFormat(h,f).format(u);let _={},g,b=null;const y="datetime format";for(let S=0;S{b9.includes(i)?s[i]=n[i]:a[i]=n[i]}),et(r)?a.locale=r:wt(r)&&(s=r),wt(o)&&(s=o),[a.key||"",l,a,s]}function U4(e,t,n){const r=e;for(const o in n){const a=`${t}__${o}`;r.__datetimeFormatters.has(a)&&r.__datetimeFormatters.delete(a)}}function K4(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:o,onWarn:a,localeFallbacker:s}=e,{__numberFormatters:l}=e,[i,u,d,f]=th(...t),p=Nt(d.missingWarn)?d.missingWarn:e.missingWarn;Nt(d.fallbackWarn)?d.fallbackWarn:e.fallbackWarn;const v=!!d.part,h=et(d.locale)?d.locale:e.locale,m=s(e,o,h);if(!et(i)||i==="")return new Intl.NumberFormat(h,f).format(u);let _={},g,b=null;const y="number format";for(let S=0;S{y9.includes(i)?s[i]=n[i]:a[i]=n[i]}),et(r)?a.locale=r:wt(r)&&(s=r),wt(o)&&(s=o),[a.key||"",l,a,s]}function W4(e,t,n){const r=e;for(const o in n){const a=`${t}__${o}`;r.__numberFormatters.has(a)&&r.__numberFormatters.delete(a)}}typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(di().__INTLIFY_PROD_DEVTOOLS__=!1);/*! + * vue-i18n v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const wNe="9.2.2";function ENe(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(di().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(di().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(di().__INTLIFY_PROD_DEVTOOLS__=!1)}let w9=Pt.__EXTEND_POINT__;const Gn=()=>++w9,ln={UNEXPECTED_RETURN_TYPE:w9,INVALID_ARGUMENT:Gn(),MUST_BE_CALL_SETUP_TOP:Gn(),NOT_INSLALLED:Gn(),NOT_AVAILABLE_IN_LEGACY_MODE:Gn(),REQUIRED_VALUE:Gn(),INVALID_VALUE:Gn(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Gn(),NOT_INSLALLED_WITH_PROVIDE:Gn(),UNEXPECTED_ERROR:Gn(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Gn(),BRIDGE_SUPPORT_VUE_2_ONLY:Gn(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Gn(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Gn(),__EXTEND_POINT__:Gn()};function pn(e,...t){return _f(e,null,void 0)}const nh=Ma("__transrateVNode"),rh=Ma("__datetimeParts"),oh=Ma("__numberParts"),E9=Ma("__setPluralRules");Ma("__intlifyMeta");const C9=Ma("__injectWithOption");function ah(e){if(!Zt(e))return e;for(const t in e)if(u1(e,t))if(!t.includes("."))Zt(e[t])&&ah(e[t]);else{const n=t.split("."),r=n.length-1;let o=e;for(let a=0;a{if("locale"in l&&"resource"in l){const{locale:i,resource:u}=l;i?(s[i]=s[i]||{},fi(u,s[i])):fi(u,s)}else et(l)&&fi(JSON.parse(l),s)}),o==null&&a)for(const l in s)u1(s,l)&&ah(s[l]);return s}const Ju=e=>!Zt(e)||Xt(e);function fi(e,t){if(Ju(e)||Ju(t))throw pn(ln.INVALID_VALUE);for(const n in e)u1(e,n)&&(Ju(e[n])||Ju(t[n])?t[n]=e[n]:fi(e[n],t[n]))}function S9(e){return e.type}function k9(e,t,n){let r=Zt(t.messages)?t.messages:{};"__i18nGlobal"in n&&(r=yf(e.locale.value,{messages:r,__i18n:n.__i18nGlobal}));const o=Object.keys(r);o.length&&o.forEach(a=>{e.mergeLocaleMessage(a,r[a])});{if(Zt(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(Zt(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function j4(e){return X(Ao,null,e,0)}const q4="__INTLIFY_META__";let G4=0;function Y4(e){return(t,n,r,o)=>e(n,r,tt()||void 0,o)}const CNe=()=>{const e=tt();let t=null;return e&&(t=S9(e)[q4])?{[q4]:t}:null};function p1(e={},t){const{__root:n}=e,r=n===void 0;let o=Nt(e.inheritLocale)?e.inheritLocale:!0;const a=P(n&&o?n.locale.value:et(e.locale)?e.locale:Su),s=P(n&&o?n.fallbackLocale.value:et(e.fallbackLocale)||Xt(e.fallbackLocale)||wt(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a.value),l=P(yf(a.value,e)),i=P(wt(e.datetimeFormats)?e.datetimeFormats:{[a.value]:{}}),u=P(wt(e.numberFormats)?e.numberFormats:{[a.value]:{}});let d=n?n.missingWarn:Nt(e.missingWarn)||ka(e.missingWarn)?e.missingWarn:!0,f=n?n.fallbackWarn:Nt(e.fallbackWarn)||ka(e.fallbackWarn)?e.fallbackWarn:!0,p=n?n.fallbackRoot:Nt(e.fallbackRoot)?e.fallbackRoot:!0,v=!!e.fallbackFormat,h=nn(e.missing)?e.missing:null,m=nn(e.missing)?Y4(e.missing):null,_=nn(e.postTranslation)?e.postTranslation:null,g=n?n.warnHtmlMessage:Nt(e.warnHtmlMessage)?e.warnHtmlMessage:!0,b=!!e.escapeParameter;const y=n?n.modifiers:wt(e.modifiers)?e.modifiers:{};let w=e.pluralRules||n&&n.pluralRules,C;C=(()=>{r&&D4(null);const J={version:wNe,locale:a.value,fallbackLocale:s.value,messages:l.value,modifiers:y,pluralRules:w,missing:m===null?void 0:m,missingWarn:d,fallbackWarn:f,fallbackFormat:v,unresolving:!0,postTranslation:_===null?void 0:_,warnHtmlMessage:g,escapeParameter:b,messageResolver:e.messageResolver,__meta:{framework:"vue"}};J.datetimeFormats=i.value,J.numberFormats=u.value,J.__datetimeFormatters=wt(C)?C.__datetimeFormatters:void 0,J.__numberFormatters=wt(C)?C.__numberFormatters:void 0;const _e=hNe(J);return r&&D4(_e),_e})(),Fl(C,a.value,s.value);function O(){return[a.value,s.value,l.value,i.value,u.value]}const T=$({get:()=>a.value,set:J=>{a.value=J,C.locale=a.value}}),A=$({get:()=>s.value,set:J=>{s.value=J,C.fallbackLocale=s.value,Fl(C,a.value,J)}}),R=$(()=>l.value),B=$(()=>i.value),V=$(()=>u.value);function H(){return nn(_)?_:null}function U(J){_=J,C.postTranslation=J}function K(){return h}function I(J){J!==null&&(m=Y4(J)),h=J,C.missing=m}const x=(J,_e,De,$e,Pe,Ue)=>{O();let ze;if(__INTLIFY_PROD_DEVTOOLS__)try{P4(CNe()),r||(C.fallbackContext=n?pNe():void 0),ze=J(C)}finally{P4(null),r||(C.fallbackContext=void 0)}else ze=J(C);if(fn(ze)&&ze===bf){const[se,pe]=_e();return n&&p?$e(n):Pe(se)}else{if(Ue(ze))return ze;throw pn(ln.UNEXPECTED_RETURN_TYPE)}};function L(...J){return x(_e=>Reflect.apply(F4,null,[_e,...J]),()=>Q2(...J),"translate",_e=>Reflect.apply(_e.t,_e,[...J]),_e=>_e,_e=>et(_e))}function z(...J){const[_e,De,$e]=J;if($e&&!Zt($e))throw pn(ln.INVALID_ARGUMENT);return L(_e,De,wn({resolvedMessage:!0},$e||{}))}function q(...J){return x(_e=>Reflect.apply(H4,null,[_e,...J]),()=>eh(...J),"datetime format",_e=>Reflect.apply(_e.d,_e,[...J]),()=>I4,_e=>et(_e))}function le(...J){return x(_e=>Reflect.apply(K4,null,[_e,...J]),()=>th(...J),"number format",_e=>Reflect.apply(_e.n,_e,[...J]),()=>I4,_e=>et(_e))}function G(J){return J.map(_e=>et(_e)||fn(_e)||Nt(_e)?j4(String(_e)):_e)}const be={normalize:G,interpolate:J=>J,type:"vnode"};function te(...J){return x(_e=>{let De;const $e=_e;try{$e.processor=be,De=Reflect.apply(F4,null,[$e,...J])}finally{$e.processor=null}return De},()=>Q2(...J),"translate",_e=>_e[nh](...J),_e=>[j4(_e)],_e=>Xt(_e))}function de(...J){return x(_e=>Reflect.apply(K4,null,[_e,...J]),()=>th(...J),"number format",_e=>_e[oh](...J),()=>[],_e=>et(_e)||Xt(_e))}function Z(...J){return x(_e=>Reflect.apply(H4,null,[_e,...J]),()=>eh(...J),"datetime format",_e=>_e[rh](...J),()=>[],_e=>et(_e)||Xt(_e))}function Y(J){w=J,C.pluralRules=w}function ce(J,_e){const De=et(_e)?_e:a.value,$e=j(De);return C.messageResolver($e,J)!==null}function ve(J){let _e=null;const De=c9(C,s.value,a.value);for(let $e=0;$e{o&&(a.value=J,C.locale=J,Fl(C,a.value,s.value))}),Ce(n.fallbackLocale,J=>{o&&(s.value=J,C.fallbackLocale=J,Fl(C,a.value,s.value))}));const we={id:G4,locale:T,fallbackLocale:A,get inheritLocale(){return o},set inheritLocale(J){o=J,J&&n&&(a.value=n.locale.value,s.value=n.fallbackLocale.value,Fl(C,a.value,s.value))},get availableLocales(){return Object.keys(l.value).sort()},messages:R,get modifiers(){return y},get pluralRules(){return w||{}},get isGlobal(){return r},get missingWarn(){return d},set missingWarn(J){d=J,C.missingWarn=d},get fallbackWarn(){return f},set fallbackWarn(J){f=J,C.fallbackWarn=f},get fallbackRoot(){return p},set fallbackRoot(J){p=J},get fallbackFormat(){return v},set fallbackFormat(J){v=J,C.fallbackFormat=v},get warnHtmlMessage(){return g},set warnHtmlMessage(J){g=J,C.warnHtmlMessage=J},get escapeParameter(){return b},set escapeParameter(J){b=J,C.escapeParameter=J},t:L,getLocaleMessage:j,setLocaleMessage:D,mergeLocaleMessage:F,getPostTranslationHandler:H,setPostTranslationHandler:U,getMissingHandler:K,setMissingHandler:I,[E9]:Y};return we.datetimeFormats=B,we.numberFormats=V,we.rt=z,we.te=ce,we.tm=Ne,we.d=q,we.n=le,we.getDateTimeFormat=Q,we.setDateTimeFormat=ge,we.mergeDateTimeFormat=ne,we.getNumberFormat=Se,we.setNumberFormat=ye,we.mergeNumberFormat=Te,we[C9]=e.__injectWithOption,we[nh]=te,we[rh]=Z,we[oh]=de,we}function SNe(e){const t=et(e.locale)?e.locale:Su,n=et(e.fallbackLocale)||Xt(e.fallbackLocale)||wt(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,r=nn(e.missing)?e.missing:void 0,o=Nt(e.silentTranslationWarn)||ka(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,a=Nt(e.silentFallbackWarn)||ka(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=Nt(e.fallbackRoot)?e.fallbackRoot:!0,l=!!e.formatFallbackMessages,i=wt(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,d=nn(e.postTranslation)?e.postTranslation:void 0,f=et(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,p=!!e.escapeParameterHtml,v=Nt(e.sync)?e.sync:!0;let h=e.messages;if(wt(e.sharedMessages)){const C=e.sharedMessages;h=Object.keys(C).reduce((O,T)=>{const A=O[T]||(O[T]={});return wn(A,C[T]),O},h||{})}const{__i18n:m,__root:_,__injectWithOption:g}=e,b=e.datetimeFormats,y=e.numberFormats,w=e.flatJson;return{locale:t,fallbackLocale:n,messages:h,flatJson:w,datetimeFormats:b,numberFormats:y,missing:r,missingWarn:o,fallbackWarn:a,fallbackRoot:s,fallbackFormat:l,modifiers:i,pluralRules:u,postTranslation:d,warnHtmlMessage:f,escapeParameter:p,messageResolver:e.messageResolver,inheritLocale:v,__i18n:m,__root:_,__injectWithOption:g}}function sh(e={},t){{const n=p1(SNe(e)),r={id:n.id,get locale(){return n.locale.value},set locale(o){n.locale.value=o},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(o){n.fallbackLocale.value=o},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(o){},get missing(){return n.getMissingHandler()},set missing(o){n.setMissingHandler(o)},get silentTranslationWarn(){return Nt(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(o){n.missingWarn=Nt(o)?!o:o},get silentFallbackWarn(){return Nt(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(o){n.fallbackWarn=Nt(o)?!o:o},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(o){n.fallbackFormat=o},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(o){n.setPostTranslationHandler(o)},get sync(){return n.inheritLocale},set sync(o){n.inheritLocale=o},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(o){n.warnHtmlMessage=o!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(o){n.escapeParameter=o},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(o){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...o){const[a,s,l]=o,i={};let u=null,d=null;if(!et(a))throw pn(ln.INVALID_ARGUMENT);const f=a;return et(s)?i.locale=s:Xt(s)?u=s:wt(s)&&(d=s),Xt(l)?u=l:wt(l)&&(d=l),Reflect.apply(n.t,n,[f,u||d||{},i])},rt(...o){return Reflect.apply(n.rt,n,[...o])},tc(...o){const[a,s,l]=o,i={plural:1};let u=null,d=null;if(!et(a))throw pn(ln.INVALID_ARGUMENT);const f=a;return et(s)?i.locale=s:fn(s)?i.plural=s:Xt(s)?u=s:wt(s)&&(d=s),et(l)?i.locale=l:Xt(l)?u=l:wt(l)&&(d=l),Reflect.apply(n.t,n,[f,u||d||{},i])},te(o,a){return n.te(o,a)},tm(o){return n.tm(o)},getLocaleMessage(o){return n.getLocaleMessage(o)},setLocaleMessage(o,a){n.setLocaleMessage(o,a)},mergeLocaleMessage(o,a){n.mergeLocaleMessage(o,a)},d(...o){return Reflect.apply(n.d,n,[...o])},getDateTimeFormat(o){return n.getDateTimeFormat(o)},setDateTimeFormat(o,a){n.setDateTimeFormat(o,a)},mergeDateTimeFormat(o,a){n.mergeDateTimeFormat(o,a)},n(...o){return Reflect.apply(n.n,n,[...o])},getNumberFormat(o){return n.getNumberFormat(o)},setNumberFormat(o,a){n.setNumberFormat(o,a)},mergeNumberFormat(o,a){n.mergeNumberFormat(o,a)},getChoiceIndex(o,a){return-1},__onComponentInstanceCreated(o){const{componentInstanceCreatedListener:a}=e;a&&a(o,r)}};return r}}const h1={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function kNe({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((r,o)=>r=[...r,...Xt(o.children)?o.children:[o]],[]):t.reduce((n,r)=>{const o=e[r];return o&&(n[r]=o()),n},{})}function $9(e){return qe}const X4={name:"i18n-t",props:wn({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>fn(e)||!isNaN(e)}},h1),setup(e,t){const{slots:n,attrs:r}=t,o=e.i18n||v1({useScope:e.scope,__useComponent:!0});return()=>{const a=Object.keys(n).filter(f=>f!=="_"),s={};e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=et(e.plural)?+e.plural:e.plural);const l=kNe(t,a),i=o[nh](e.keypath,l,s),u=wn({},r),d=et(e.tag)||Zt(e.tag)?e.tag:$9();return je(d,u,i)}}};function $Ne(e){return Xt(e)&&!et(e[0])}function T9(e,t,n,r){const{slots:o,attrs:a}=t;return()=>{const s={part:!0};let l={};e.locale&&(s.locale=e.locale),et(e.format)?s.key=e.format:Zt(e.format)&&(et(e.format.key)&&(s.key=e.format.key),l=Object.keys(e.format).reduce((p,v)=>n.includes(v)?wn({},p,{[v]:e.format[v]}):p,{}));const i=r(e.value,s,l);let u=[s.key];Xt(i)?u=i.map((p,v)=>{const h=o[p.type],m=h?h({[p.type]:p.value,index:v,parts:i}):[p.value];return $Ne(m)&&(m[0].key=`${p.type}-${v}`),m}):et(i)&&(u=[i]);const d=wn({},a),f=et(e.tag)||Zt(e.tag)?e.tag:$9();return je(f,d,u)}}const Z4={name:"i18n-n",props:wn({value:{type:Number,required:!0},format:{type:[String,Object]}},h1),setup(e,t){const n=e.i18n||v1({useScope:"parent",__useComponent:!0});return T9(e,t,y9,(...r)=>n[oh](...r))}},J4={name:"i18n-d",props:wn({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},h1),setup(e,t){const n=e.i18n||v1({useScope:"parent",__useComponent:!0});return T9(e,t,b9,(...r)=>n[rh](...r))}};function TNe(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const r=n.__getInstance(t);return r!=null?r.__composer:e.global.__composer}}function ONe(e){const t=s=>{const{instance:l,modifiers:i,value:u}=s;if(!l||!l.$)throw pn(ln.UNEXPECTED_ERROR);const d=TNe(e,l.$),f=Q4(u);return[Reflect.apply(d.t,d,[...e3(f)]),d]};return{created:(s,l)=>{const[i,u]=t(l);Z2&&e.global===u&&(s.__i18nWatcher=Ce(u.locale,()=>{l.instance&&l.instance.$forceUpdate()})),s.__composer=u,s.textContent=i},unmounted:s=>{Z2&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:l})=>{if(s.__composer){const i=s.__composer,u=Q4(l);s.textContent=Reflect.apply(i.t,i,[...e3(u)])}},getSSRProps:s=>{const[l]=t(s);return{textContent:l}}}}function Q4(e){if(et(e))return{path:e};if(wt(e)){if(!("path"in e))throw pn(ln.REQUIRED_VALUE,"path");return e}else throw pn(ln.INVALID_VALUE)}function e3(e){const{path:t,locale:n,args:r,choice:o,plural:a}=e,s={},l=r||{};return et(n)&&(s.locale=n),fn(o)&&(s.plural=o),fn(a)&&(s.plural=a),[t,l,s]}function MNe(e,t,...n){const r=wt(n[0])?n[0]:{},o=!!r.useI18nComponentName;(Nt(r.globalInstall)?r.globalInstall:!0)&&(e.component(o?"i18n":X4.name,X4),e.component(Z4.name,Z4),e.component(J4.name,J4)),e.directive("t",ONe(t))}function NNe(e,t,n){return{beforeCreate(){const r=tt();if(!r)throw pn(ln.UNEXPECTED_ERROR);const o=this.$options;if(o.i18n){const a=o.i18n;o.__i18n&&(a.__i18n=o.__i18n),a.__root=t,this===this.$root?this.$i18n=t3(e,a):(a.__injectWithOption=!0,this.$i18n=sh(a))}else o.__i18n?this===this.$root?this.$i18n=t3(e,o):this.$i18n=sh({__i18n:o.__i18n,__injectWithOption:!0,__root:t}):this.$i18n=e;o.__i18nGlobal&&k9(t,o,o),e.__onComponentInstanceCreated(this.$i18n),n.__setInstance(r,this.$i18n),this.$t=(...a)=>this.$i18n.t(...a),this.$rt=(...a)=>this.$i18n.rt(...a),this.$tc=(...a)=>this.$i18n.tc(...a),this.$te=(a,s)=>this.$i18n.te(a,s),this.$d=(...a)=>this.$i18n.d(...a),this.$n=(...a)=>this.$i18n.n(...a),this.$tm=a=>this.$i18n.tm(a)},mounted(){},unmounted(){const r=tt();if(!r)throw pn(ln.UNEXPECTED_ERROR);delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__deleteInstance(r),delete this.$i18n}}}function t3(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[E9](t.pluralizationRules||e.pluralizationRules);const n=yf(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(r=>e.mergeLocaleMessage(r,n[r])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(r=>e.mergeDateTimeFormat(r,t.datetimeFormats[r])),t.numberFormats&&Object.keys(t.numberFormats).forEach(r=>e.mergeNumberFormat(r,t.numberFormats[r])),e}const ANe=Ma("global-vue-i18n");function RNe(e={},t){const n=__VUE_I18N_LEGACY_API__&&Nt(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,r=Nt(e.globalInjection)?e.globalInjection:!0,o=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,a=new Map,[s,l]=xNe(e,n),i=Ma("");function u(p){return a.get(p)||null}function d(p,v){a.set(p,v)}function f(p){a.delete(p)}{const p={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return o},async install(v,...h){v.__VUE_I18N_SYMBOL__=i,v.provide(v.__VUE_I18N_SYMBOL__,p),!n&&r&&HNe(v,p.global),__VUE_I18N_FULL_INSTALL__&&MNe(v,p,...h),__VUE_I18N_LEGACY_API__&&n&&v.mixin(NNe(l,l.__composer,p));const m=v.unmount;v.unmount=()=>{p.dispose(),m()}},get global(){return l},dispose(){s.stop()},__instances:a,__getInstance:u,__setInstance:d,__deleteInstance:f};return p}}function v1(e={}){const t=tt();if(t==null)throw pn(ln.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw pn(ln.NOT_INSLALLED);const n=INe(t),r=PNe(n),o=S9(t),a=LNe(e,o);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw pn(ln.NOT_AVAILABLE_IN_LEGACY_MODE);return VNe(t,a,r,e)}if(a==="global")return k9(r,e,o),r;if(a==="parent"){let i=DNe(n,t,e.__useComponent);return i==null&&(i=r),i}const s=n;let l=s.__getInstance(t);if(l==null){const i=wn({},e);"__i18n"in o&&(i.__i18n=o.__i18n),r&&(i.__root=r),l=p1(i),zNe(s,t),s.__setInstance(t,l)}return l}function xNe(e,t,n){const r=gd();{const o=__VUE_I18N_LEGACY_API__&&t?r.run(()=>sh(e)):r.run(()=>p1(e));if(o==null)throw pn(ln.UNEXPECTED_ERROR);return[r,o]}}function INe(e){{const t=Fe(e.isCE?ANe:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw pn(e.isCE?ln.NOT_INSLALLED_WITH_PROVIDE:ln.UNEXPECTED_ERROR);return t}}function LNe(e,t){return gf(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function PNe(e){return e.mode==="composition"?e.global:e.global.__composer}function DNe(e,t,n=!1){let r=null;const o=t.root;let a=t.parent;for(;a!=null;){const s=e;if(e.mode==="composition")r=s.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const l=s.__getInstance(a);l!=null&&(r=l.__composer,n&&r&&!r[C9]&&(r=null))}if(r!=null||o===a)break;a=a.parent}return r}function zNe(e,t,n){rt(()=>{},t),io(()=>{e.__deleteInstance(t)},t)}function VNe(e,t,n,r={}){const o=t==="local",a=xt(null);if(o&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw pn(ln.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=Nt(r.inheritLocale)?r.inheritLocale:!0,l=P(o&&s?n.locale.value:et(r.locale)?r.locale:Su),i=P(o&&s?n.fallbackLocale.value:et(r.fallbackLocale)||Xt(r.fallbackLocale)||wt(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:l.value),u=P(yf(l.value,r)),d=P(wt(r.datetimeFormats)?r.datetimeFormats:{[l.value]:{}}),f=P(wt(r.numberFormats)?r.numberFormats:{[l.value]:{}}),p=o?n.missingWarn:Nt(r.missingWarn)||ka(r.missingWarn)?r.missingWarn:!0,v=o?n.fallbackWarn:Nt(r.fallbackWarn)||ka(r.fallbackWarn)?r.fallbackWarn:!0,h=o?n.fallbackRoot:Nt(r.fallbackRoot)?r.fallbackRoot:!0,m=!!r.fallbackFormat,_=nn(r.missing)?r.missing:null,g=nn(r.postTranslation)?r.postTranslation:null,b=o?n.warnHtmlMessage:Nt(r.warnHtmlMessage)?r.warnHtmlMessage:!0,y=!!r.escapeParameter,w=o?n.modifiers:wt(r.modifiers)?r.modifiers:{},C=r.pluralRules||o&&n.pluralRules;function S(){return[l.value,i.value,u.value,d.value,f.value]}const O=$({get:()=>a.value?a.value.locale.value:l.value,set:F=>{a.value&&(a.value.locale.value=F),l.value=F}}),T=$({get:()=>a.value?a.value.fallbackLocale.value:i.value,set:F=>{a.value&&(a.value.fallbackLocale.value=F),i.value=F}}),A=$(()=>a.value?a.value.messages.value:u.value),R=$(()=>d.value),B=$(()=>f.value);function V(){return a.value?a.value.getPostTranslationHandler():g}function H(F){a.value&&a.value.setPostTranslationHandler(F)}function U(){return a.value?a.value.getMissingHandler():_}function K(F){a.value&&a.value.setMissingHandler(F)}function I(F){return S(),F()}function x(...F){return a.value?I(()=>Reflect.apply(a.value.t,null,[...F])):I(()=>"")}function L(...F){return a.value?Reflect.apply(a.value.rt,null,[...F]):""}function z(...F){return a.value?I(()=>Reflect.apply(a.value.d,null,[...F])):I(()=>"")}function q(...F){return a.value?I(()=>Reflect.apply(a.value.n,null,[...F])):I(()=>"")}function le(F){return a.value?a.value.tm(F):{}}function G(F,Q){return a.value?a.value.te(F,Q):!1}function ae(F){return a.value?a.value.getLocaleMessage(F):{}}function be(F,Q){a.value&&(a.value.setLocaleMessage(F,Q),u.value[F]=Q)}function te(F,Q){a.value&&a.value.mergeLocaleMessage(F,Q)}function de(F){return a.value?a.value.getDateTimeFormat(F):{}}function Z(F,Q){a.value&&(a.value.setDateTimeFormat(F,Q),d.value[F]=Q)}function Y(F,Q){a.value&&a.value.mergeDateTimeFormat(F,Q)}function ce(F){return a.value?a.value.getNumberFormat(F):{}}function ve(F,Q){a.value&&(a.value.setNumberFormat(F,Q),f.value[F]=Q)}function Ne(F,Q){a.value&&a.value.mergeNumberFormat(F,Q)}const j={get id(){return a.value?a.value.id:-1},locale:O,fallbackLocale:T,messages:A,datetimeFormats:R,numberFormats:B,get inheritLocale(){return a.value?a.value.inheritLocale:s},set inheritLocale(F){a.value&&(a.value.inheritLocale=F)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(u.value)},get modifiers(){return a.value?a.value.modifiers:w},get pluralRules(){return a.value?a.value.pluralRules:C},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:p},set missingWarn(F){a.value&&(a.value.missingWarn=F)},get fallbackWarn(){return a.value?a.value.fallbackWarn:v},set fallbackWarn(F){a.value&&(a.value.missingWarn=F)},get fallbackRoot(){return a.value?a.value.fallbackRoot:h},set fallbackRoot(F){a.value&&(a.value.fallbackRoot=F)},get fallbackFormat(){return a.value?a.value.fallbackFormat:m},set fallbackFormat(F){a.value&&(a.value.fallbackFormat=F)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:b},set warnHtmlMessage(F){a.value&&(a.value.warnHtmlMessage=F)},get escapeParameter(){return a.value?a.value.escapeParameter:y},set escapeParameter(F){a.value&&(a.value.escapeParameter=F)},t:x,getPostTranslationHandler:V,setPostTranslationHandler:H,getMissingHandler:U,setMissingHandler:K,rt:L,d:z,n:q,tm:le,te:G,getLocaleMessage:ae,setLocaleMessage:be,mergeLocaleMessage:te,getDateTimeFormat:de,setDateTimeFormat:Z,mergeDateTimeFormat:Y,getNumberFormat:ce,setNumberFormat:ve,mergeNumberFormat:Ne};function D(F){F.locale.value=l.value,F.fallbackLocale.value=i.value,Object.keys(u.value).forEach(Q=>{F.mergeLocaleMessage(Q,u.value[Q])}),Object.keys(d.value).forEach(Q=>{F.mergeDateTimeFormat(Q,d.value[Q])}),Object.keys(f.value).forEach(Q=>{F.mergeNumberFormat(Q,f.value[Q])}),F.escapeParameter=y,F.fallbackFormat=m,F.fallbackRoot=h,F.fallbackWarn=v,F.missingWarn=p,F.warnHtmlMessage=b}return ou(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw pn(ln.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const F=a.value=e.proxy.$i18n.__composer;t==="global"?(l.value=F.locale.value,i.value=F.fallbackLocale.value,u.value=F.messages.value,d.value=F.datetimeFormats.value,f.value=F.numberFormats.value):o&&D(F)}),j}const BNe=["locale","fallbackLocale","availableLocales"],FNe=["t","rt","d","n","tm"];function HNe(e,t){const n=Object.create(null);BNe.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o)throw pn(ln.UNEXPECTED_ERROR);const a=kt(o.value)?{get(){return o.value.value},set(s){o.value.value=s}}:{get(){return o.get&&o.get()}};Object.defineProperty(n,r,a)}),e.config.globalProperties.$i18n=n,FNe.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o||!o.value)throw pn(ln.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${r}`,o)})}uNe(mNe);cNe(WMe);dNe(c9);ENe();if(__INTLIFY_PROD_DEVTOOLS__){const e=di();e.__INTLIFY__=!0,eNe(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const gp=(e,t)=>{const n=e[t];return n?typeof n=="function"?n():Promise.resolve(n):new Promise((r,o)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(o.bind(null,new Error("Unknown variable dynamic import: "+t)))})};class UNe{constructor(t){Ml(this,"i18n");Ml(this,"loadLocale",[]);this.i18n=t}setI18nLanguage(t){this.i18n.mode==="legacy"?this.i18n.global.locale=t:this.i18n.global.locale=t;let n=document.querySelector("html");n&&n.setAttribute("lang",t)}async loadLocaleMessages(t,n,r){try{const a=n=="/"?"index":n.replace(/^(\/admin\/|\/site\/|\/)/,"").replaceAll("/","."),s=await(t?gp(Object.assign({"../addon/hygl/lang/zh-cn/advertising.advertising.json":()=>ie(()=>import("./advertising.advertising-5d50448a.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/config.config.json":()=>ie(()=>import("./config.config-8e11454c.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/coupons.coupons.json":()=>ie(()=>import("./coupons.coupons-b9f57d59.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/hello_world.index.json":()=>ie(()=>import("./hello_world.index-b25bb000.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/transaction_history.transaction_history.json":()=>ie(()=>import("./transaction_history.transaction_history-7beb2897.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/user.user.json":()=>ie(()=>import("./user.user-0a0012d5.js"),[],import.meta.url),"../addon/hygl/lang/zh-cn/user_coupons.user_coupons.json":()=>ie(()=>import("./user_coupons.user_coupons-62f15758.js"),[],import.meta.url)}),`../addon/${t}/lang/${r}/${a}.json`):gp(Object.assign({"../app/lang/en/403.json":()=>ie(()=>import("./403-938aef7b.js"),[],import.meta.url),"../app/lang/en/auth.menu.json":()=>ie(()=>import("./auth.menu-b101f965.js"),[],import.meta.url),"../app/lang/en/index.json":()=>ie(()=>import("./index-ff83f872.js"),[],import.meta.url),"../app/lang/en/login.json":()=>ie(()=>import("./login-bd08a61c.js"),[],import.meta.url),"../app/lang/en/member.member.json":()=>ie(()=>import("./member.member-d88cc33c.js"),[],import.meta.url),"../app/lang/en/user.center.json":()=>ie(()=>import("./user.center-56067ef5.js"),[],import.meta.url),"../app/lang/zh-cn/403.json":()=>ie(()=>import("./403-b03cc05d.js"),[],import.meta.url),"../app/lang/zh-cn/app.authorize.json":()=>ie(()=>import("./app.authorize-dfacda68.js"),[],import.meta.url),"../app/lang/zh-cn/app.index.json":()=>ie(()=>import("./app.index-6de21f8a.js"),[],import.meta.url),"../app/lang/zh-cn/app.store.json":()=>ie(()=>import("./app.store-318dd53b.js"),[],import.meta.url),"../app/lang/zh-cn/auth.log.json":()=>ie(()=>import("./auth.log-71585a97.js"),[],import.meta.url),"../app/lang/zh-cn/auth.menu.json":()=>ie(()=>import("./auth.menu-6c831420.js"),[],import.meta.url),"../app/lang/zh-cn/auth.role.json":()=>ie(()=>import("./auth.role-2e897342.js"),[],import.meta.url),"../app/lang/zh-cn/auth.site_menu.json":()=>ie(()=>import("./auth.site_menu-463de569.js"),[],import.meta.url),"../app/lang/zh-cn/auth.user.json":()=>ie(()=>import("./auth.user-8e7f7033.js"),[],import.meta.url),"../app/lang/zh-cn/channel.aliapp.access.json":()=>ie(()=>import("./channel.aliapp.access-79911b66.js"),[],import.meta.url),"../app/lang/zh-cn/channel.aliapp.config.json":()=>ie(()=>import("./channel.aliapp.config-cceaa054.js"),[],import.meta.url),"../app/lang/zh-cn/channel.aliapp.course.json":()=>ie(()=>import("./channel.aliapp.course-042cfbdf.js"),[],import.meta.url),"../app/lang/zh-cn/channel.h5.config.json":()=>ie(()=>import("./channel.h5.config-988e994e.js"),[],import.meta.url),"../app/lang/zh-cn/channel.pc.config.json":()=>ie(()=>import("./channel.pc.config-7ebfac6e.js"),[],import.meta.url),"../app/lang/zh-cn/channel.weapp.access.json":()=>ie(()=>import("./channel.weapp.access-23428b82.js"),[],import.meta.url),"../app/lang/zh-cn/channel.weapp.code.json":()=>ie(()=>import("./channel.weapp.code-f3ba3335.js"),[],import.meta.url),"../app/lang/zh-cn/channel.weapp.config.json":()=>ie(()=>import("./channel.weapp.config-6b5cec63.js"),[],import.meta.url),"../app/lang/zh-cn/channel.weapp.course.json":()=>ie(()=>import("./channel.weapp.course-00a01a8e.js"),[],import.meta.url),"../app/lang/zh-cn/channel.weapp.template.json":()=>ie(()=>import("./channel.weapp.template-1e082647.js"),[],import.meta.url),"../app/lang/zh-cn/channel.wechat.access.json":()=>ie(()=>import("./channel.wechat.access-fffc1570.js"),[],import.meta.url),"../app/lang/zh-cn/channel.wechat.config.json":()=>ie(()=>import("./channel.wechat.config-4eea34e9.js"),[],import.meta.url),"../app/lang/zh-cn/channel.wechat.course.json":()=>ie(()=>import("./channel.wechat.course-89f836bc.js"),[],import.meta.url),"../app/lang/zh-cn/channel.wechat.menu.json":()=>ie(()=>import("./channel.wechat.menu-e6174e39.js"),[],import.meta.url),"../app/lang/zh-cn/channel.wechat.template.json":()=>ie(()=>import("./channel.wechat.template-40fb72b5.js"),[],import.meta.url),"../app/lang/zh-cn/decorate.edit.json":()=>ie(()=>import("./decorate.edit-e6b85004.js"),[],import.meta.url),"../app/lang/zh-cn/decorate.preview.json":()=>ie(()=>import("./decorate.preview-902d21f3.js"),[],import.meta.url),"../app/lang/zh-cn/dict.list.json":()=>ie(()=>import("./dict.list-7d009441.js"),[],import.meta.url),"../app/lang/zh-cn/diy.edit.json":()=>ie(()=>import("./diy.edit-ba9eeb4b.js"),[],import.meta.url),"../app/lang/zh-cn/diy.index.json":()=>ie(()=>import("./diy.index-3f817ec1.js"),[],import.meta.url),"../app/lang/zh-cn/diy.list.json":()=>ie(()=>import("./diy.list-aeb97fec.js"),[],import.meta.url),"../app/lang/zh-cn/diy.member.json":()=>ie(()=>import("./diy.member-8ec4f192.js"),[],import.meta.url),"../app/lang/zh-cn/diy.preview.json":()=>ie(()=>import("./diy.preview-e36b949e.js"),[],import.meta.url),"../app/lang/zh-cn/diy.route.json":()=>ie(()=>import("./diy.route-6544c5bf.js"),[],import.meta.url),"../app/lang/zh-cn/diy.tabbar.json":()=>ie(()=>import("./diy.tabbar-87cae70f.js"),[],import.meta.url),"../app/lang/zh-cn/diy.tabbar_edit.json":()=>ie(()=>import("./diy.tabbar_edit-1cafc8fc.js"),[],import.meta.url),"../app/lang/zh-cn/finance.account.json":()=>ie(()=>import("./finance.account-d006cec3.js"),[],import.meta.url),"../app/lang/zh-cn/finance.cash_out.json":()=>ie(()=>import("./finance.cash_out-43890e91.js"),[],import.meta.url),"../app/lang/zh-cn/finance.offlinepay.json":()=>ie(()=>import("./finance.offlinepay-3e86913b.js"),[],import.meta.url),"../app/lang/zh-cn/finance.pay_detail.json":()=>ie(()=>import("./finance.pay_detail-884a76bb.js"),[],import.meta.url),"../app/lang/zh-cn/finance.pay_refund.json":()=>ie(()=>import("./finance.pay_refund-37d9acf4.js"),[],import.meta.url),"../app/lang/zh-cn/finance.refund_detail.json":()=>ie(()=>import("./finance.refund_detail-1aede87e.js"),[],import.meta.url),"../app/lang/zh-cn/index.app_manage.json":()=>ie(()=>import("./index.app_manage-4c113690.js"),[],import.meta.url),"../app/lang/zh-cn/index.index.json":()=>ie(()=>import("./index.index-210944b7.js"),[],import.meta.url),"../app/lang/zh-cn/index.preview.json":()=>ie(()=>import("./index.preview-876b7685.js"),[],import.meta.url),"../app/lang/zh-cn/index.site_index.json":()=>ie(()=>import("./index.site_index-79b69608.js"),[],import.meta.url),"../app/lang/zh-cn/index.store.json":()=>ie(()=>import("./index.store-d285c1e8.js"),[],import.meta.url),"../app/lang/zh-cn/login.json":()=>ie(()=>import("./login-b4917af8.js"),[],import.meta.url),"../app/lang/zh-cn/member.balance.json":()=>ie(()=>import("./member.balance-b96442a8.js"),[],import.meta.url),"../app/lang/zh-cn/member.commission.json":()=>ie(()=>import("./member.commission-06432528.js"),[],import.meta.url),"../app/lang/zh-cn/member.label.edit.json":()=>ie(()=>import("./member.label.edit-926b0052.js"),[],import.meta.url),"../app/lang/zh-cn/member.label.json":()=>ie(()=>import("./member.label-3700fd85.js"),[],import.meta.url),"../app/lang/zh-cn/member.member.json":()=>ie(()=>import("./member.member-7ab6c301.js"),[],import.meta.url),"../app/lang/zh-cn/member.member_detail.json":()=>ie(()=>import("./member.member_detail-cfcc0ba8.js"),[],import.meta.url),"../app/lang/zh-cn/member.point.json":()=>ie(()=>import("./member.point-f88f2222.js"),[],import.meta.url),"../app/lang/zh-cn/order.recharge.detail.json":()=>ie(()=>import("./order.recharge.detail-ab4d7883.js"),[],import.meta.url),"../app/lang/zh-cn/order.recharge.list.json":()=>ie(()=>import("./order.recharge.list-f69a9684.js"),[],import.meta.url),"../app/lang/zh-cn/order.recharge.refund.json":()=>ie(()=>import("./order.recharge.refund-bc126837.js"),[],import.meta.url),"../app/lang/zh-cn/setting.adminlogin.json":()=>ie(()=>import("./setting.adminlogin-65ba839b.js"),[],import.meta.url),"../app/lang/zh-cn/setting.agreement.json":()=>ie(()=>import("./setting.agreement-c1c54e22.js"),[],import.meta.url),"../app/lang/zh-cn/setting.agreement_edit.json":()=>ie(()=>import("./setting.agreement_edit-3a2623ef.js"),[],import.meta.url),"../app/lang/zh-cn/setting.cash_out.json":()=>ie(()=>import("./setting.cash_out-4ebc2715.js"),[],import.meta.url),"../app/lang/zh-cn/setting.copyright.json":()=>ie(()=>import("./setting.copyright-9475a325.js"),[],import.meta.url),"../app/lang/zh-cn/setting.developer_token.json":()=>ie(()=>import("./setting.developer_token-a322ff7f.js"),[],import.meta.url),"../app/lang/zh-cn/setting.login.json":()=>ie(()=>import("./setting.login-c3831a84.js"),[],import.meta.url),"../app/lang/zh-cn/setting.map.json":()=>ie(()=>import("./setting.map-c9c7e953.js"),[],import.meta.url),"../app/lang/zh-cn/setting.member.json":()=>ie(()=>import("./setting.member-fdd021e7.js"),[],import.meta.url),"../app/lang/zh-cn/setting.notice.json":()=>ie(()=>import("./setting.notice-889c786f.js"),[],import.meta.url),"../app/lang/zh-cn/setting.notice_records.json":()=>ie(()=>import("./setting.notice_records-bf22f1e0.js"),[],import.meta.url),"../app/lang/zh-cn/setting.pay.json":()=>ie(()=>import("./setting.pay-c311a440.js"),[],import.meta.url),"../app/lang/zh-cn/setting.sms.json":()=>ie(()=>import("./setting.sms-d0fc309c.js"),[],import.meta.url),"../app/lang/zh-cn/setting.sms_records.json":()=>ie(()=>import("./setting.sms_records-c2b2df62.js"),[],import.meta.url),"../app/lang/zh-cn/setting.storage.json":()=>ie(()=>import("./setting.storage-f7524b82.js"),[],import.meta.url),"../app/lang/zh-cn/setting.system.json":()=>ie(()=>import("./setting.system-8547e913.js"),[],import.meta.url),"../app/lang/zh-cn/setting.transfer.json":()=>ie(()=>import("./setting.transfer-c62623ec.js"),[],import.meta.url),"../app/lang/zh-cn/setting.weapp.json":()=>ie(()=>import("./setting.weapp-1bcdad5c.js"),[],import.meta.url),"../app/lang/zh-cn/setting.wxoplatform.json":()=>ie(()=>import("./setting.wxoplatform-f1815df3.js"),[],import.meta.url),"../app/lang/zh-cn/site.group.json":()=>ie(()=>import("./site.group-715b48b9.js"),[],import.meta.url),"../app/lang/zh-cn/site.group_edit.json":()=>ie(()=>import("./site.group_edit-22c83f7a.js"),[],import.meta.url),"../app/lang/zh-cn/site.info.json":()=>ie(()=>import("./site.info-4653e1ea.js"),[],import.meta.url),"../app/lang/zh-cn/site.list.json":()=>ie(()=>import("./site.list-46790c6f.js"),[],import.meta.url),"../app/lang/zh-cn/site.user.json":()=>ie(()=>import("./site.user-7fb1ea50.js"),[],import.meta.url),"../app/lang/zh-cn/site.user_info.json":()=>ie(()=>import("./site.user_info-47346d55.js"),[],import.meta.url),"../app/lang/zh-cn/tools.addon.edit.json":()=>ie(()=>import("./tools.addon.edit-264df476.js"),[],import.meta.url),"../app/lang/zh-cn/tools.addon.index.json":()=>ie(()=>import("./tools.addon.index-007e6875.js"),[],import.meta.url),"../app/lang/zh-cn/tools.code.edit.json":()=>ie(()=>import("./tools.code.edit-38a356ae.js"),[],import.meta.url),"../app/lang/zh-cn/tools.code.index.json":()=>ie(()=>import("./tools.code.index-7ae0dd7f.js"),[],import.meta.url),"../app/lang/zh-cn/tools.detection.json":()=>ie(()=>import("./tools.detection-38a3bfcb.js"),[],import.meta.url),"../app/lang/zh-cn/tools.schedule.json":()=>ie(()=>import("./tools.schedule-d9c38637.js"),[],import.meta.url),"../app/lang/zh-cn/tools.updatecache.json":()=>ie(()=>import("./tools.updatecache-22d3fb10.js"),[],import.meta.url),"../app/lang/zh-cn/user.center.json":()=>ie(()=>import("./user.center-ad667142.js"),[],import.meta.url),"../app/lang/zh-cn/user.edit_center.json":()=>ie(()=>import("./user.edit_center-cc60f16e.js"),[],import.meta.url)}),`../app/lang/${r}/${a}.json`));let l={};if(Object.keys(s.default).forEach(i=>{l[`${a}.${i}`]=s.default[i]}),t)try{var o=await gp(Object.assign({}),`../${t}/lang/${r}/common.json`);Object.keys(o.default).forEach(i=>{l[`${a}.${i}`]=o.default[i]})}catch{}return this.i18n.global.mergeLocaleMessage(r,l),this.setI18nLanguage(r),He()}catch{return this.setI18nLanguage(r),He()}}}const KNe="编辑",WNe="详情",jNe="创建时间",qNe="排序",GNe="状态",YNe="操作",XNe="更多",ZNe="正常",JNe="停用",QNe="启用",eAe="确认",tAe="保存",nAe="返回",rAe="取消",oAe="搜索",aAe="重置",sAe="提示",lAe="是否显示",iAe="显示",uAe="隐藏",cAe="图标",dAe="用户名",fAe="头像",pAe="账号",hAe="密码",vAe="确认密码",mAe="图片",gAe="视频",_Ae="重命名",bAe="查看",yAe="全选",wAe="是",EAe="否",CAe="复制",SAe="完成",kAe="复制成功",$Ae="浏览器不支持一键复制,请手动进行复制",TAe="全部",OAe="请选择省",MAe="请选择市",NAe="请选择区/县",AAe="暂无数据",RAe="暂无二维码",xAe="无法显示",IAe={root:"上传",selectimage:"选择图片",selectvideo:"选择视频",selecticon:"选择图标",uploadimage:"上传图片",uploadvideo:"上传视频",addAttachmentCategory:"添加分组",attachmentCategoryPlaceholder:"请输入分组名称",attachmentEmpty:"暂无附件,请点击上传按钮上传",iconEmpty:"暂无图标",deleteCategoryTips:"确定要删除该分组吗?",deleteAttachmentTips:"确定要删除所选附件吗?如所选附件已被使用删除将会受到影响,请谨慎操作!",move:"移动",moveCategory:"移动分组",moveTo:"移动至",placeholderimageName:"请输入图片名称",placeholdervideoName:"请输入视频名称",placeholdericonName:"请输入图标名称",success:"上传成功",triggerUpperLimit:"可选数量已达上限"},LAe={closeLeft:"关闭左侧",closeRight:"关闭右侧",closeOther:"关闭其他"},PAe={layoutSetting:"主题设置",darkMode:"黑暗模式",sidebarMode:"主题风格",themeColor:"主题颜色",detectionLoginOperation:"确定",detectionLoginContent:"已检测到有其他账号登录,需要刷新后才能继续操作。",detectionLoginTip:"提示",layoutStyle:"布局风格"},DAe={400:"错误的请求",401:"请重新登录",403:"拒绝访问",404:"请求错误",405:"请求方法未允许",408:"请求超时",409:"请求跨域",500:"服务器端出错,错误原因:",501:"网络未实现",502:"网络错误",503:"服务不可用",504:"网络超时",505:"http版本不支持该请求",unknownError:"未知错误",timeout:"网络请求超时!",requestError:"请求错误",errNetwork:"网络请求错误",baseUrlError:" 接口请求错误,请检查VITE_APP_BASE_URL参数配置或者伪静态配置, 点击查看相关手册"},zAe="请选择跳转链接",VAe="链接选择",BAe="链接名称",FAe="请输入链接名称",HAe="链接名称不能为空",UAe="跳转路径",KAe="请输入跳转路径",WAe="跳转路径不能为空",jAe="返回",qAe="预览",GAe="暂未安装任何应用",YAe="最新消息",XAe="地图设置",ZAe="腾讯地图KEY",JAe="首页模版",QAe="切换首页",eRe="你确定要切换首页吗?",tRe="原始密码",nRe="新密码",rRe="确认密码",oRe="修改密码时必填.不修改密码时留空",aRe="请输入原始密码",sRe="请输入新密码",lRe="原始密码不能为空",iRe="请输入确认密码",uRe="两次新密码不同",cRe={upgradeButton:"立即升级",title:"升级",upgradingTips:"有正在执行的升级任务,",clickView:"点击查看",dirPermission:"目录读写权限",path:"路径",demand:"要求",readable:"可读",write:"可写",upgradeSuccess:"升级成功",localBuild:"手动编译",cloudBuild:"云编译",showDialogCloseTips:"升级任务尚未完成,关闭将取消升级,是否要继续关闭?",upgradeCompleteTips:"升级完成后还需要编译admin wap web端可选择云编译或者是手动编译"},dRe={title:"云编译",executingTips:"有正在执行的编译任务,",clickView:"点击查看",dirPermission:"目录读写权限",path:"路径",demand:"要求",readable:"可读",write:"可写",cloudbuildSuccess:"编译完成",showDialogCloseTips:"编译任务尚未完成,关闭将取消编译,是否要继续关闭?"},O9={edit:KNe,delete:"删除",info:WNe,createTime:jNe,sort:qNe,status:GNe,operation:YNe,more:XNe,statusNormal:ZNe,statusDeactivate:JNe,startUsing:QNe,confirm:eAe,save:tAe,back:nAe,cancel:rAe,search:oAe,reset:aAe,warning:sAe,isShow:lAe,show:iAe,hidden:uAe,icon:cAe,userName:dAe,headImg:fAe,accountNumber:pAe,password:hAe,confirmPassword:vAe,image:mAe,video:gAe,rename:_Ae,lookOver:bAe,selectAll:yAe,yes:wAe,no:EAe,copy:CAe,complete:SAe,copySuccess:kAe,notSupportCopy:$Ae,selectPlaceholder:TAe,provincePlaceholder:OAe,cityPlaceholder:MAe,districtPlaceholder:NAe,emptyData:AAe,emptyQrCode:RAe,fileErr:xAe,upload:IAe,tabs:LAe,layout:PAe,axios:DAe,linkPlaceholder:zAe,selectLinkTips:VAe,diyLinkName:BAe,diyLinkNamePlaceholder:FAe,diyLinkNameNotEmpty:HAe,diyLinkUrl:UAe,diyLinkUrlPlaceholder:KAe,diyLinkUrlNotEmpty:WAe,returnToPreviousPage:jAe,preview:qAe,emptyApp:GAe,newInfo:YAe,mapSetting:XAe,mapKey:ZAe,indexTemplate:JAe,indexSwitch:QAe,indexWarning:eRe,originalPassword:tRe,newPassword:nRe,passwordCopy:rRe,passwordTip:oRe,originalPasswordPlaceholder:aRe,passwordPlaceholder:sRe,originalPasswordHint:lRe,newPasswordHint:iRe,doubleCipherHint:uRe,upgrade:cRe,cloudbuild:dRe},fRe="Edit",pRe="Create Time",hRe="Sort",vRe="Status",mRe="Operation",gRe="Normal",_Re="Deactivate",bRe="Confirm",yRe="Cancel",wRe="Warning",ERe="Show or not",CRe="show",SRe="hidden",kRe="Icon",$Re={layoutSetting:"Layout configuration",darkMode:"Dark mode",themeColor:"Theme color"},TRe={400:"Wrong request ",401:"Please login again",403:"Access denied",404:"Request error, the resource was not found",405:"Request method not allowed",408:"Request timeout",500:"Server side error",501:"Network not implemented",502:"Network error",503:"Service unavailable",504:"Network Timeout",505:"The http version does not support the request",unknownError:"Unknown Error",timeout:"Network request timeout!"},M9={edit:fRe,delete:"Delete",createTime:pRe,sort:hRe,status:vRe,operation:mRe,statusNormal:gRe,statusDeactivate:_Re,confirm:bRe,cancel:yRe,warning:wRe,isShow:ERe,show:CRe,hidden:SRe,icon:kRe,layout:$Re,axios:TRe},n3=Object.assign({}),r3=Object.assign({});for(let e in n3)Object.assign(O9,n3[e].default);for(let e in r3)Object.assign(M9,r3[e].default);let pi=RNe({datetimeFormats:{},numberFormats:{},globalInjection:!0,silentTranslationWarn:!0,messages:{"zh-cn":O9,en:M9}});const ORe=new UNe(pi),In=e=>{const t=RE().route,n=t.meta.view||t.path,o=`${n=="/"?"index":n.replace(/^(\/admin\/|\/site\/|\/)/,"").replaceAll("/",".")}.${e}`;return pi.global.t(o)!=o?pi.global.t(o):pi.global.t(e)},MRe={install(e){e.use(pi)}};class NRe{constructor(){Ml(this,"instance");this.instance=uMe.create({baseURL:"/adminapi/".substr(-1)=="/"?"/adminapi/":"/adminapi//",timeout:3e4,headers:{"Content-Type":"application/json",lang:cn.get("lang")??"zh-cn"}}),this.instance.interceptors.request.use(t=>(B2()&&(t.headers.token=B2(),t.headers["site-id"]=cn.get("siteId")||0),t),t=>Promise.reject(t)),this.instance.interceptors.response.use(t=>{if(t.request.responseType!="blob"){const n=t.data;return n.code!=1?(this.handleAuthError(n.code),n.code!=401&&t.config.showErrorMessage!==!1&&Mc({message:n.msg,type:"error",dangerouslyUseHTMLString:!0,duration:5e3}),Promise.reject(new Error(n.msg||"Error"))):(t.config.showSuccessMessage&&Mc({message:n.msg,type:"success"}),n)}return t.data},t=>(this.handleNetworkError(t),Promise.reject(t)))}get(t,n){return this.instance.get(t,n)}post(t,n,r){return this.instance.post(t,n,r)}put(t,n,r){return this.instance.put(t,n,r)}delete(t,n){return this.instance.delete(t,n)}handleNetworkError(t){let n="";if(t.response&&t.response.status)switch(t.response.status){case 400:n=In("axios.400");break;case 401:n=In("axios.401");break;case 403:n=In("axios.403");break;case 404:n=(F2(t.response.config.baseURL)?t.response.config.baseURL:`${location.origin}${t.response.config.baseURL}`)+In("axios.baseUrlError");break;case 405:n=In("axios.405");break;case 408:n=In("axios.408");break;case 409:n=In("axios.409");break;case 500:n=In("axios.500");break;case 501:n=In("axios.501");break;case 502:n=In("axios.502");break;case 503:n=In("axios.503");break;case 504:n=In("axios.504");break;case 505:n=In("axios.505");break}t.message.includes("timeout")&&(n=In("axios.timeout")),t.code=="ERR_NETWORK"&&(n=(F2(t.config.baseURL)?t.config.baseURL:`${location.origin}${t.config.baseURL}`)+In("axios.baseUrlError")),n&&Mc({dangerouslyUseHTMLString:!0,duration:5e3,message:n,type:"error"})}handleAuthError(t){switch(t){case 401:m1().logout();break}}}const Ol=new NRe;function ARe(e,t){return Ol.get(`login/${t}`,{params:e})}function RRe(){return Ol.put("auth/logout",{},{showErrorMessage:!1})}function xRe(e){return Ol.get("auth/authmenu",{params:e})}function IRe(){return Ol.get("auth/site")}function dLe(){return Ol.get("login/config")}function fLe(){return Ol.get("sys/info")}const LRe=lf("tabbar",{state:()=>({curr:"",tabs:{}}),actions:{addTab(e){if(!(e.meta&&e.meta.type!=1)){if(this.tabs[e.path]){this.tabs[e.path].query=e.query||{};return}this.tabs[e.path]={path:e.path,title:e.meta?e.meta.title:"",name:e.name,query:e.query||{}}}},removeTab(e){delete this.tabs[e]},clearTab(){this.tabs={}}},getters:{tabLength:e=>Object.keys(e.tabs).length,tabNames:e=>{const t=[];return Object.keys(e.tabs).forEach(n=>{t.push(e.tabs[n].name)}),t}}}),PRe=lf("user",{state:()=>({token:B2()||"",userInfo:cn.get("userinfo")||{},siteInfo:null,routers:[],rules:[],addonIndexRoute:{}}),actions:{async getSiteInfo(){await IRe().then(({data:e})=>{this.siteInfo=e,cn.set({key:"siteId",data:e.site_id||0}),cn.set({key:"siteInfo",data:e}),cn.set({key:"comparisonSiteIdStorage",data:e.site_id||0})}).catch(()=>{})},login(e,t){return new Promise((n,r)=>{ARe(e,t).then(o=>{this.token=o.data.token,this.userInfo=o.data.userinfo,this.siteInfo=o.data.site_info||{},L7e(o.data.token),cn.set({key:"userinfo",data:o.data.userinfo}),cn.set({key:"siteId",data:o.data.site_id||0}),cn.set({key:"siteInfo",data:o.data.site_info||{}}),cn.set({key:"comparisonSiteIdStorage",data:o.data.site_id||0}),cn.set({key:"comparisonTokenStorage",data:o.data.token}),n(o)}).catch(o=>{r(o)})})},logout(){if(!this.token)return;this.token="",this.userInfo={},this.siteInfo={},P7e(),cn.remove(["userinfo","siteId","siteInfo"]),this.routers=[],RRe(),LRe().clearTab();const e=So()=="admin"?"/admin/login":"/site/login";Dn.push(e)},getAuthMenus(){return new Promise((e,t)=>{xRe({}).then(n=>{this.routers=N9(n.data),this.routers.forEach((r,o)=>{r.meta.addon!==""&&(r.children&&r.children.length?this.addonIndexRoute[r.meta.addon]=g1(r.children):this.addonIndexRoute[r.meta.addon]=r.name)}),e(n)}).catch(n=>{t(n)})})}}}),m1=PRe,To=oe({__name:"index",setup(e){const r=Object.assign(Object.assign({"./admin/index.vue":()=>ie(()=>import("./index-438cc6c0.js"),["./index-438cc6c0.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./sys-0f76aff3.js","./style-e9363b8b.js","./index-1027f725.css","./el-scrollbar-3dec2e64.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-dropdown-item-fcde02f4.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css","./el-notification-47ebbbe3.css","./el-tab-pane-97256874.css"],import.meta.url),"./decorate/index.vue":()=>ie(()=>import("./index-6f9dcd22.js"),["./index-6f9dcd22.js","./_plugin-vue_export-helper-c27b6911.js"],import.meta.url),"./default/index.vue":()=>ie(()=>import("./index-9519da76.js"),["./index-9519da76.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./_plugin-vue_export-helper-c27b6911.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./el-tooltip-4ed993c7.js","./icon-addon-339e16d0.js","./index-929f6bcc.css","./el-scrollbar-3dec2e64.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-col-6b49831e.css","./el-drawer-1f157885.css","./el-color-picker-346329a4.css","./el-input-c9789fc1.css","./el-switch-b454e5d4.css","./el-form-d10bb01f.css","./el-dropdown-item-fcde02f4.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css","./el-notification-47ebbbe3.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url),"./home/index.vue":()=>ie(()=>import("./index-a724c67b.js"),["./index-a724c67b.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./index-2ec2a5b9.css","./el-scrollbar-3dec2e64.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-col-6b49831e.css","./el-drawer-1f157885.css","./el-color-picker-346329a4.css","./el-input-c9789fc1.css","./el-switch-b454e5d4.css","./el-radio-22df3dfd.css","./el-dropdown-item-fcde02f4.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css"],import.meta.url)}),Object.assign({}));let o="default";switch(So()){case"admin":o="admin";break;case"home":o="home";break;default:const s=m1().siteInfo;s&&s.apps&&s.apps.length==1&&(o=s.apps[0].key)}const a=P(null);return Object.keys(r).forEach(s=>{s.indexOf(o)!==-1&&(a.value=Jn(Sf(r[s])))}),!a.value&&(a.value=Jn(Sf(r["./default/index.vue"]))),ct("setLayout",s=>{o!=s&&(o=s,Object.keys(r).forEach(l=>{l.indexOf(s)!==-1&&(a.value=Jn(Sf(r[l])))}))}),(s,l)=>(E(),me(pt(a.value)))}});const DRe=[{path:"/:pathMatch(.*)*",component:()=>ie(()=>import("./404-c52b1f82.js"),["./404-c52b1f82.js","./_plugin-vue_export-helper-c27b6911.js","./404-6b18d68c.css","./el-button-c10d780e.css"],import.meta.url)}],zRe=["/404"],o3={path:"/",component:To,name:Symbol()},ql={path:"/admin",name:Symbol("admin"),children:[{path:"",name:Symbol("adminRoot"),component:To},{path:"login",component:()=>ie(()=>import("./index-afb1f88d.js"),["./index-afb1f88d.js","./_plugin-vue_export-helper-c27b6911.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./index-a690f53e.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-input-c9789fc1.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url)},{path:"user",component:To,children:[{path:"center",meta:{type:1,title:"个人中心"},component:()=>ie(()=>import("./personal-f07df9dc.js"),["./personal-f07df9dc.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./personal-5911b65a.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-icon-593dfdc2.css"],import.meta.url)}]},{path:"user",component:To,children:[{path:"edit_center",meta:{type:1,title:"编辑个人中心"},component:()=>ie(()=>import("./edit_personal-edfd124c.js"),["./edit_personal-edfd124c.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./personal-d4a3249e.js","./edit_personal-1662de97.css","./el-card-fc429ee1.css"],import.meta.url)}]}]},VRe={path:"/home",name:Symbol("home"),children:[{path:"",name:Symbol("homeRoot"),component:To},{path:"index",name:Symbol("homeIndex"),meta:{type:1,title:"站点管理"},component:()=>ie(()=>import("./index-24c52c8d.js"),["./index-24c52c8d.js","./empty-77b60adb.js","./icon-addon-339e16d0.js","./member_head-a897263d.js","./home-a9db0fa7.js","./sys-0f76aff3.js","./addon-b90f5c24.js","./_plugin-vue_export-helper-c27b6911.js","./index-a1b2b247.css","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-button-c10d780e.css"],import.meta.url)}]},Gl={path:"/site",name:Symbol("site"),children:[{path:"",name:Symbol("siteRoot"),component:To},{path:"login",component:()=>ie(()=>import("./index-afb1f88d.js"),["./index-afb1f88d.js","./_plugin-vue_export-helper-c27b6911.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./index-a690f53e.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-input-c9789fc1.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url)},{path:"user",component:To,children:[{path:"center",meta:{type:1,title:"个人中心"},component:()=>ie(()=>import("./personal-e79de867.js"),["./personal-e79de867.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./personal-03103c07.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-icon-593dfdc2.css"],import.meta.url)}]},{path:"user",component:To,children:[{path:"edit_center",meta:{type:1,title:"编辑个人中心"},component:()=>ie(()=>import("./edit_personal-19949f69.js"),["./edit_personal-19949f69.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./personal-d4a3249e.js","./edit_personal-4b0f7666.css","./el-card-fc429ee1.css"],import.meta.url)}]}]},BRe=Object.assign({"/src/app/views/app/authorize.vue":()=>ie(()=>import("./authorize-e869aaa5.js"),["./authorize-e869aaa5.js","./el-form-item-4ed993c7.js","./module-98fa643e.js","./index-37622b2e.js","./vue-web-terminal-85c405a6.js","./vue-web-terminal-463ed2ac.css","./_plugin-vue_export-helper-c27b6911.js","./index-13c265a0.css","./el-overlay-16555a66.css","./el-icon-593dfdc2.css","./el-col-6b49831e.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-alert-5d45f733.css","./el-loading-3e34cd81.css","./authorize-2c1d274b.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css","./el-popper-eb70a20a.css","./el-popover-9f471fc1.css"],import.meta.url),"/src/app/views/app/index.vue":()=>ie(()=>import("./index-e60bfab0.js"),["./index-e60bfab0.js","./site-3951be3a.js","./_plugin-vue_export-helper-c27b6911.js","./index-67aac6ba.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url),"/src/app/views/app/store.vue":()=>ie(()=>import("./store-506ae6ad.js"),["./store-506ae6ad.js","./vue-web-terminal-85c405a6.js","./vue-web-terminal-463ed2ac.css","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./icon-addon-339e16d0.js","./apply_empty-cdca3e85.js","./addon-b90f5c24.js","./module-98fa643e.js","./_plugin-vue_export-helper-c27b6911.js","./store-e2b5d1d3.css","./el-loading-3e34cd81.css","./el-alert-5d45f733.css","./el-scrollbar-3dec2e64.css","./el-col-6b49831e.css","./el-step-39b63541.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-popper-eb70a20a.css","./el-popover-9f471fc1.css","./el-link-1a8c6e48.css","./el-empty-80d6f4dc.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-button-c10d780e.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/auth/components/edit-menu.vue":()=>ie(()=>import("./edit-menu-33c1c40a.js"),["./edit-menu-33c1c40a.js","./edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js","./index-fcfc7fdc.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-9df14b44.css","./tools-8d764897.js","./el-input-number-74c955e5.css","./el-tree-16f2bc42.css","./el-tree-select-24f36068.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/auth/components/edit-role.vue":()=>ie(()=>import("./edit-role-fb7932be.js"),["./edit-role-fb7932be.js","./edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-scrollbar-3dec2e64.css","./el-tree-16f2bc42.css","./el-checkbox-e3bd3d96.css","./el-button-c10d780e.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/auth/components/edit-user.vue":()=>ie(()=>import("./edit-user-552b2b37.js"),["./edit-user-552b2b37.js","./edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./member_head-a897263d.js","./user-3121c68a.js","./site-3951be3a.js","./el-radio-22df3dfd.css","./el-avatar-55e4ee6e.css"],import.meta.url),"/src/app/views/auth/components/select-menu-item.vue":()=>ie(()=>import("./select-menu-item-282ba3f6.js"),["./select-menu-item-282ba3f6.js","./el-option-a5edd981.css"],import.meta.url),"/src/app/views/auth/components/user-log-detail.vue":()=>ie(()=>import("./user-log-detail-4a3e8e09.js"),["./user-log-detail-4a3e8e09.js","./user-log-detail.vue_vue_type_script_setup_true_lang-5754ee3a.js","./site-3951be3a.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-descriptions-item-662285c0.css"],import.meta.url),"/src/app/views/auth/log.vue":()=>ie(()=>import("./log-8b14aace.js"),["./log-8b14aace.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./site-3951be3a.js","./user-log-detail.vue_vue_type_script_setup_true_lang-5754ee3a.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-descriptions-item-662285c0.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/auth/menu.vue":()=>ie(()=>import("./menu-aafb40cf.js"),["./menu-aafb40cf.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js","./index-fcfc7fdc.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-9df14b44.css","./tools-8d764897.js","./el-input-number-74c955e5.css","./el-tree-16f2bc42.css","./el-tree-select-24f36068.css","./el-radio-22df3dfd.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/auth/role.vue":()=>ie(()=>import("./role-0e74e117.js"),["./role-0e74e117.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./edit-role.vue_vue_type_script_setup_true_async_true_lang-703366a6.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-scrollbar-3dec2e64.css","./el-tree-16f2bc42.css","./el-checkbox-e3bd3d96.css","./el-button-c10d780e.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/auth/site_menu.vue":()=>ie(()=>import("./site_menu-637f0d5f.js"),["./site_menu-637f0d5f.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./edit-menu.vue_vue_type_script_setup_true_lang-ff2a5d03.js","./index-fcfc7fdc.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-9df14b44.css","./tools-8d764897.js","./el-input-number-74c955e5.css","./el-tree-16f2bc42.css","./el-tree-select-24f36068.css","./el-radio-22df3dfd.css","./el-card-fc429ee1.css","./el-tab-pane-97256874.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/auth/user.vue":()=>ie(()=>import("./user-f1f95548.js"),["./user-f1f95548.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./member_head-a897263d.js","./site-3951be3a.js","./user-3121c68a.js","./edit-user.vue_vue_type_script_setup_true_lang-0f68a536.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./el-radio-22df3dfd.css","./el-avatar-55e4ee6e.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/channel/aliapp/access.vue":()=>ie(()=>import("./access-43abb09a.js"),["./access-43abb09a.js","./aliapp-2e18109a.js","./_plugin-vue_export-helper-c27b6911.js","./access-0177522b.css","./el-col-6b49831e.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-step-39b63541.css","./el-button-c10d780e.css","./el-icon-593dfdc2.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/aliapp/config.vue":()=>ie(()=>import("./config-715ad915.js"),["./config-715ad915.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./aliapp-2e18109a.js","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/channel/aliapp/course.vue":()=>ie(()=>import("./course-a965b567.js"),["./course-a965b567.js","./wechat-688fa021.js","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/channel/h5/config.vue":()=>ie(()=>import("./config-4d791795.js"),["./config-4d791795.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./config-f3b067d2.css","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/channel/pc/config.vue":()=>ie(()=>import("./config-c9a3921b.js"),["./config-c9a3921b.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./config-eaf1c3f2.css","./el-loading-3e34cd81.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/channel/weapp/access.vue":()=>ie(()=>import("./access-024cdb64.js"),["./access-024cdb64.js","./weapp-7423630d.js","./_plugin-vue_export-helper-c27b6911.js","./access-e89dd1bf.css","./el-col-6b49831e.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-step-39b63541.css","./el-button-c10d780e.css","./el-icon-593dfdc2.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/weapp/code.vue":()=>ie(()=>import("./code-62ceba78.js"),["./code-62ceba78.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./weapp-7423630d.js","./module-98fa643e.js","./_plugin-vue_export-helper-c27b6911.js","./code-04df4b03.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-button-c10d780e.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/weapp/config.vue":()=>ie(()=>import("./config-978d7f3b.js"),["./config-978d7f3b.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./weapp-7423630d.js","./el-radio-22df3dfd.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/channel/weapp/course.vue":()=>ie(()=>import("./course-17d84e13.js"),["./course-17d84e13.js","./el-card-fc429ee1.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/channel/weapp/template.vue":()=>ie(()=>import("./template-88cfd340.js"),["./template-88cfd340.js","./el-tooltip-4ed993c7.js","./weapp-7423630d.js","./notice-8ec1f11c.js","./_plugin-vue_export-helper-c27b6911.js","./template-3b0c7abf.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css","./el-alert-5d45f733.css","./el-icon-593dfdc2.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/wechat/access.vue":()=>ie(()=>import("./access-9dd0f5e5.js"),["./access-9dd0f5e5.js","./wechat-688fa021.js","./_plugin-vue_export-helper-c27b6911.js","./access-f5210fd9.css","./el-col-6b49831e.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-step-39b63541.css","./el-button-c10d780e.css","./el-icon-593dfdc2.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/wechat/components/menu-form.vue":()=>ie(()=>import("./menu-form-0f7467c2.js"),["./menu-form-0f7467c2.js","./menu-form.vue_vue_type_script_setup_true_lang-85815c11.js","./el-form-item-4ed993c7.js","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/channel/wechat/config.vue":()=>ie(()=>import("./config-4c993e14.js"),["./config-4c993e14.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./wechat-688fa021.js","./el-radio-22df3dfd.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/channel/wechat/course.vue":()=>ie(()=>import("./course-036fa26c.js"),["./course-036fa26c.js","./wechat-688fa021.js","./el-card-fc429ee1.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/channel/wechat/menu.vue":()=>ie(()=>import("./menu-0d6fe892.js"),["./menu-0d6fe892.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./wechat-688fa021.js","./menu-form.vue_vue_type_script_setup_true_lang-85815c11.js","./el-form-item-4ed993c7.js","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./_plugin-vue_export-helper-c27b6911.js","./menu-a5e73641.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/channel/wechat/reply.vue":()=>ie(()=>import("./reply-891818f2.js"),["./reply-891818f2.js","./_plugin-vue_export-helper-c27b6911.js"],import.meta.url),"/src/app/views/channel/wechat/template.vue":()=>ie(()=>import("./template-fbfde5ee.js"),["./template-fbfde5ee.js","./el-tooltip-4ed993c7.js","./wechat-688fa021.js","./notice-8ec1f11c.js","./_plugin-vue_export-helper-c27b6911.js","./template-59b0bc41.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-alert-5d45f733.css","./el-icon-593dfdc2.css","./el-button-c10d780e.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/dict/components/dict.vue":()=>ie(()=>import("./dict-5908cbf4.js"),["./dict-5908cbf4.js","./dict.vue_vue_type_style_index_0_lang-8df6262f.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./dict-3e5bfbe1.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-number-74c955e5.css","./el-input-c9789fc1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/dict/components/edit.vue":()=>ie(()=>import("./edit-73431b1d.js"),["./edit-73431b1d.js","./edit.vue_vue_type_style_index_0_lang-b8616a57.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/dict/list.vue":()=>ie(()=>import("./list-953d980b.js"),["./list-953d980b.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./edit.vue_vue_type_style_index_0_lang-b8616a57.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./dict.vue_vue_type_style_index_0_lang-8df6262f.js","./el-input-number-74c955e5.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./_plugin-vue_export-helper-c27b6911.js","./list-fed597dc.css","./el-pagination-e1392652.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/diy/components/edit-addon-list.vue":()=>ie(()=>import("./edit-addon-list-8dd0c51a.js").then(e=>e._),["./edit-addon-list-8dd0c51a.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./diy-8d93d096.js","./sys-0f76aff3.js","./sortable.esm-be94e56d.js","./range-bcf8b229.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/diy/components/edit-graphic-nav.vue":()=>ie(()=>import("./edit-graphic-nav-6aea66c6.js").then(e=>e._),["./edit-graphic-nav-6aea66c6.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./sortable.esm-be94e56d.js","./diy-8d93d096.js","./range-bcf8b229.js","./edit-graphic-nav-03947f40.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/diy/components/edit-horz-blank.vue":()=>ie(()=>import("./edit-horz-blank-cca710d1.js").then(e=>e._),["./edit-horz-blank-cca710d1.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./diy-8d93d096.js","./edit-text-7fdc44bc.css","./el-form-d10bb01f.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-input-c9789fc1.css","./el-popper-eb70a20a.css"],import.meta.url),"/src/app/views/diy/components/edit-hot-area.vue":()=>ie(()=>import("./edit-hot-area-490be4b6.js").then(e=>e._),["./edit-hot-area-490be4b6.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./_plugin-vue_export-helper-c27b6911.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-hot-area-5d42d4c7.css"],import.meta.url),"/src/app/views/diy/components/edit-image-ads.vue":()=>ie(()=>import("./edit-image-ads-ba036595.js").then(e=>e._),["./edit-image-ads-ba036595.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./sortable.esm-be94e56d.js","./diy-8d93d096.js","./range-bcf8b229.js","./edit-image-ads-c34e7dc4.css"],import.meta.url),"/src/app/views/diy/components/edit-member-info.vue":()=>ie(()=>import("./edit-member-info-d63d5604.js").then(e=>e._),["./edit-member-info-d63d5604.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./el-color-picker-346329a4.css"],import.meta.url),"/src/app/views/diy/components/edit-notice.vue":()=>ie(()=>import("./edit-notice-1a631612.js").then(e=>e._),["./edit-notice-1a631612.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-notice-7bad7832.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/diy/components/edit-page.vue":()=>ie(()=>import("./edit-page-380884c5.js").then(e=>e._),["./edit-page-380884c5.js","./el-tooltip-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-color-picker-346329a4.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/diy/components/edit-rubik-cube.vue":()=>ie(()=>import("./edit-rubik-cube-040bee3d.js").then(e=>e._),["./edit-rubik-cube-040bee3d.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-8d93d096.js","./edit-rubik-cube-6d0cae7e.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css"],import.meta.url),"/src/app/views/diy/components/edit-text.vue":()=>ie(()=>import("./edit-text-98dd7894.js").then(e=>e._),["./edit-text-98dd7894.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./diy-8d93d096.js","./edit-text-7fdc44bc.css","./el-switch-b454e5d4.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/diy/edit.vue":()=>ie(()=>import("./edit-b14f349a.js"),["./edit-b14f349a.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./edit-addon-list-8dd0c51a.js","./diy-8d93d096.js","./sys-0f76aff3.js","./sortable.esm-be94e56d.js","./range-bcf8b229.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./edit-graphic-nav-6aea66c6.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-input-c9789fc1.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-pagination-e1392652.css","./el-empty-80d6f4dc.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./edit-graphic-nav-03947f40.css","./el-color-picker-346329a4.css","./el-slider-9827b981.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css","./edit-horz-blank-cca710d1.js","./edit-text-7fdc44bc.css","./edit-hot-area-490be4b6.js","./edit-hot-area-5d42d4c7.css","./edit-image-ads-ba036595.js","./edit-image-ads-c34e7dc4.css","./edit-member-info-d63d5604.js","./edit-notice-1a631612.js","./edit-notice-7bad7832.css","./edit-page-380884c5.js","./el-switch-b454e5d4.css","./edit-rubik-cube-040bee3d.js","./edit-rubik-cube-6d0cae7e.css","./edit-text-98dd7894.js","./edit-14bc5db2.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/diy/index.vue":()=>ie(()=>import("./index-1f5b8810.js"),["./index-1f5b8810.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./browser-a1ac24ac.js","./_plugin-vue_export-helper-c27b6911.js","./index-6a9b5fd3.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/diy/list.vue":()=>ie(()=>import("./list-aaa1db33.js"),["./list-aaa1db33.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-5ff717bd.js","./el-tab-pane-97256874.css","./el-table-column-345618ba.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/diy/member.vue":()=>ie(()=>import("./member-e9b73676.js"),["./member-e9b73676.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./browser-a1ac24ac.js","./_plugin-vue_export-helper-c27b6911.js","./member-f57b46b7.css","./el-overlay-16555a66.css","./el-scrollbar-3dec2e64.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/diy/route.vue":()=>ie(()=>import("./route-fc3b6d8c.js"),["./route-fc3b6d8c.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./diy-5ff717bd.js","./el-tab-pane-97256874.css","./el-table-column-345618ba.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/diy/tabbar.vue":()=>ie(()=>import("./tabbar-000fd670.js"),["./tabbar-000fd670.js","./el-tooltip-4ed993c7.js","./diy-5ff717bd.js","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/diy/tabbar_edit.vue":()=>ie(()=>import("./tabbar_edit-3d1ffc9d.js"),["./tabbar_edit-3d1ffc9d.js","./index.vue_vue_type_script_setup_true_lang-83f923ac.js","./el-form-item-4ed993c7.js","./diy-5ff717bd.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-input-c9789fc1.css","./el-icon-593dfdc2.css","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./sortable.esm-be94e56d.js","./range-bcf8b229.js","./tabbar_edit-1d14de1f.css","./el-card-fc429ee1.css","./el-tab-pane-97256874.css","./el-color-picker-346329a4.css","./el-radio-22df3dfd.css","./el-notification-47ebbbe3.css"],import.meta.url),"/src/app/views/error/404.vue":()=>ie(()=>import("./404-c52b1f82.js"),["./404-c52b1f82.js","./_plugin-vue_export-helper-c27b6911.js","./404-6b18d68c.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/finance/account.vue":()=>ie(()=>import("./account-d5bd2c1c.js"),["./account-d5bd2c1c.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./site-3951be3a.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/finance/cash_out.vue":()=>ie(()=>import("./cash_out-2e6fc4b4.js"),["./cash_out-2e6fc4b4.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/finance/offlinepay.vue":()=>ie(()=>import("./offlinepay-0cde6d91.js"),["./offlinepay-0cde6d91.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/finance/pay_detail.vue":()=>ie(()=>import("./pay_detail-d3b5e8e4.js"),["./pay_detail-d3b5e8e4.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-image-5875057d.css"],import.meta.url),"/src/app/views/finance/pay_refund.vue":()=>ie(()=>import("./pay_refund-42a969e6.js"),["./pay_refund-42a969e6.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./pay-02b9321f.js","./_plugin-vue_export-helper-c27b6911.js","./pay_refund-8beef355.css","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/finance/refund_detail.vue":()=>ie(()=>import("./refund_detail-ebba8cbf.js"),["./refund_detail-ebba8cbf.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./pay-02b9321f.js","./el-radio-22df3dfd.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/home/edit_personal.vue":()=>ie(()=>import("./edit_personal-c026cc15.js"),["./edit_personal-c026cc15.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./personal-d4a3249e.js","./edit_personal-159a5665.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/home/index.vue":()=>ie(()=>import("./index-24c52c8d.js"),["./index-24c52c8d.js","./empty-77b60adb.js","./icon-addon-339e16d0.js","./member_head-a897263d.js","./home-a9db0fa7.js","./sys-0f76aff3.js","./addon-b90f5c24.js","./_plugin-vue_export-helper-c27b6911.js","./index-a1b2b247.css","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/home/index_COPY.vue":()=>ie(()=>import("./index_COPY-3d386439.js"),["./index_COPY-3d386439.js","./icon-addon-339e16d0.js","./member_head-a897263d.js","./empty-77b60adb.js","./home-a9db0fa7.js","./sys-0f76aff3.js","./addon-b90f5c24.js","./_plugin-vue_export-helper-c27b6911.js","./index_COPY-212fba2e.css","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-icon-593dfdc2.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/home/personal.vue":()=>ie(()=>import("./personal-7910c09b.js"),["./personal-7910c09b.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./personal-a240a874.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/index/app_manage.vue":()=>ie(()=>import("./app_manage-033810a7.js"),["./app_manage-033810a7.js","./el-tooltip-4ed993c7.js","./apply_empty-cdca3e85.js","./addon-b90f5c24.js","./_plugin-vue_export-helper-c27b6911.js","./app_manage-a40665b3.css","./el-loading-3e34cd81.css","./el-empty-80d6f4dc.css","./el-link-1a8c6e48.css","./el-popper-eb70a20a.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/index/edit_personal.vue":()=>ie(()=>import("./edit_personal-edfd124c.js"),["./edit_personal-edfd124c.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./personal-d4a3249e.js","./edit_personal-1662de97.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/index/index.vue":()=>ie(()=>import("./index-4e2bf3dd.js"),["./index-4e2bf3dd.js","./stat-279e21e6.js","./style-e9363b8b.js","./module-98fa643e.js","./_plugin-vue_export-helper-c27b6911.js","./index-8b6e5d32.css","./el-loading-3e34cd81.css","./el-descriptions-item-662285c0.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css","./el-link-1a8c6e48.css","./el-tag-c7c1203f.css"],import.meta.url),"/src/app/views/index/personal.vue":()=>ie(()=>import("./personal-f07df9dc.js"),["./personal-f07df9dc.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./personal-5911b65a.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/index/preview.vue":()=>ie(()=>import("./preview-abb34648.js"),["./preview-abb34648.js","./el-form-item-4ed993c7.js","./weapp-7423630d.js","./sys-0f76aff3.js","./browser-a1ac24ac.js","./preview-09789338.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-button-c10d780e.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/index/site_index.vue":()=>ie(()=>import("./site_index-5a725478.js"),["./site_index-5a725478.js","./index-fcfc7fdc.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-9df14b44.css","./empty-77b60adb.js","./stat-279e21e6.js","./sortable.esm-be94e56d.js","./range-bcf8b229.js","./site_index-50389a39.css","./el-color-picker-346329a4.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/index/store.vue":()=>ie(()=>import("./store-5369683e.js"),["./store-5369683e.js","./vue-web-terminal-85c405a6.js","./vue-web-terminal-463ed2ac.css","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./icon-addon-339e16d0.js","./apply_empty-cdca3e85.js","./addon-b90f5c24.js","./module-98fa643e.js","./index-37622b2e.js","./_plugin-vue_export-helper-c27b6911.js","./index-13c265a0.css","./el-overlay-16555a66.css","./el-icon-593dfdc2.css","./el-col-6b49831e.css","./el-button-c10d780e.css","./el-scrollbar-3dec2e64.css","./el-alert-5d45f733.css","./el-loading-3e34cd81.css","./store-db2405c1.css","./el-step-39b63541.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-popper-eb70a20a.css","./el-popover-9f471fc1.css","./el-link-1a8c6e48.css","./el-empty-80d6f4dc.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/index/tools.vue":()=>ie(()=>import("./tools-a6cdead8.js"),["./tools-a6cdead8.js","./tools-e2ba0773.css","./el-overlay-16555a66.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/login/index.vue":()=>ie(()=>import("./index-afb1f88d.js"),["./index-afb1f88d.js","./_plugin-vue_export-helper-c27b6911.js","./el-form-item-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./index-a690f53e.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-input-c9789fc1.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url),"/src/app/views/member/balance.vue":()=>ie(()=>import("./balance-ea9a2b25.js"),["./balance-ea9a2b25.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./member-balance-info.vue_vue_type_script_setup_true_lang-09b9e0b3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/member/commission.vue":()=>ie(()=>import("./commission-0ddaecaf.js"),["./commission-0ddaecaf.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./member-commission-info.vue_vue_type_script_setup_true_lang-8dd3413e.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/member/components/add-member.vue":()=>ie(()=>import("./add-member-c8060e4a.js"),["./add-member-c8060e4a.js","./add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/member/components/edit-label.vue":()=>ie(()=>import("./edit-label-c69aed3e.js"),["./edit-label-c69aed3e.js","./edit-label.vue_vue_type_script_setup_true_lang-0a342347.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/member/components/edit-member.vue":()=>ie(()=>import("./edit-member-8a748748.js"),["./edit-member-8a748748.js","./edit-member.vue_vue_type_script_setup_true_lang-b7571345.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./member-ff972216.js","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/member/components/member-balance-edit.vue":()=>ie(()=>import("./member-balance-edit-b1965f88.js"),["./member-balance-edit-b1965f88.js","./member-balance-edit.vue_vue_type_script_setup_true_lang-f065bf1c.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/member/components/member-balance-info.vue":()=>ie(()=>import("./member-balance-info-76922a6a.js"),["./member-balance-info-76922a6a.js","./member-balance-info.vue_vue_type_script_setup_true_lang-09b9e0b3.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/member/components/member-commission-info.vue":()=>ie(()=>import("./member-commission-info-a52c4206.js"),["./member-commission-info-a52c4206.js","./member-commission-info.vue_vue_type_script_setup_true_lang-8dd3413e.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/member/components/member-money-info.vue":()=>ie(()=>import("./member-money-info-f420fea6.js"),["./member-money-info-f420fea6.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/member/components/member-point-edit.vue":()=>ie(()=>import("./member-point-edit-3c9097d4.js"),["./member-point-edit-3c9097d4.js","./member-point-edit.vue_vue_type_script_setup_true_lang-16c13824.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/member/components/member-point-info.vue":()=>ie(()=>import("./member-point-info-24f92d6d.js"),["./member-point-info-24f92d6d.js","./member-point-info.vue_vue_type_script_setup_true_lang-93ce6fe9.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/member/label.vue":()=>ie(()=>import("./label-f5049432.js"),["./label-f5049432.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./edit-label.vue_vue_type_script_setup_true_lang-0a342347.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-pagination-e1392652.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/member/member.vue":()=>ie(()=>import("./member-80a304a9.js"),["./member-80a304a9.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./add-member.vue_vue_type_script_setup_true_lang-e6ca6416.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./edit-member.vue_vue_type_script_setup_true_lang-b7571345.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-image-viewer-fff43739.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./el-date-picker-3587893a.css","./el-table-column-345618ba.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/member/member_detail.vue":()=>ie(()=>import("./member_detail-d729987c.js"),["./member_detail-d729987c.js","./el-tooltip-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./member-point-edit.vue_vue_type_script_setup_true_lang-16c13824.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-input-number-74c955e5.css","./el-radio-22df3dfd.css","./member-balance-edit.vue_vue_type_script_setup_true_lang-f065bf1c.js","./edit-member.vue_vue_type_script_setup_true_lang-b7571345.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-image-viewer-fff43739.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./el-date-picker-3587893a.css","./member_detail-79a7d124.css","./el-card-fc429ee1.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/member/point.vue":()=>ie(()=>import("./point-73f8cb47.js"),["./point-73f8cb47.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./member-ff972216.js","./member-point-info.vue_vue_type_script_setup_true_lang-93ce6fe9.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/order/recharge/detail.vue":()=>ie(()=>import("./detail-4ddc2d10.js"),["./detail-4ddc2d10.js","./el-form-item-4ed993c7.js","./order-35500d85.js","./el-loading-3e34cd81.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/order/recharge/list.vue":()=>ie(()=>import("./list-27f84a80.js"),["./list-27f84a80.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./order-35500d85.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/order/recharge/refund.vue":()=>ie(()=>import("./refund-db36d004.js"),["./refund-db36d004.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./default_headimg-a897263d.js","./order-35500d85.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css","./el-card-fc429ee1.css","./el-col-6b49831e.css","./el-statistic-a64151aa.css"],import.meta.url),"/src/app/views/setting/adminlogin.vue":()=>ie(()=>import("./adminlogin-114f8d07.js"),["./adminlogin-114f8d07.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./adminlogin-b9e9f486.css","./el-card-fc429ee1.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/setting/agreement.vue":()=>ie(()=>import("./agreement-ea493a94.js"),["./agreement-ea493a94.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/setting/agreement_edit.vue":()=>ie(()=>import("./agreement_edit-e46000a5.js"),["./agreement_edit-e46000a5.js","./index.vue_vue_type_script_setup_true_lang-114a4ac2.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-501cf061.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/setting/cash_out.vue":()=>ie(()=>import("./cash_out-acd3a827.js"),["./cash_out-acd3a827.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-checkbox-group-987ef89c.css","./el-checkbox-e3bd3d96.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/setting/components/cron-info.vue":()=>ie(()=>import("./cron-info-0c412e6c.js"),["./cron-info-0c412e6c.js","./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/setting/components/notice-records-info.vue":()=>ie(()=>import("./notice-records-info-c7e50dc1.js"),["./notice-records-info-c7e50dc1.js","./notice-records-info.vue_vue_type_script_setup_true_lang-7af75749.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/setting/components/notice-sms.vue":()=>ie(()=>import("./notice-sms-2c0d0e2c.js"),["./notice-sms-2c0d0e2c.js","./notice-sms.vue_vue_type_script_setup_true_lang-f1b61b1e.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/notice-weapp.vue":()=>ie(()=>import("./notice-weapp-89dfc424.js"),["./notice-weapp-89dfc424.js","./notice-weapp.vue_vue_type_script_setup_true_lang-1869ce68.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/notice-wechat.vue":()=>ie(()=>import("./notice-wechat-8b71ac35.js"),["./notice-wechat-8b71ac35.js","./notice-wechat.vue_vue_type_script_setup_true_lang-b8ecdbcd.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/pay-alipay.vue":()=>ie(()=>import("./pay-alipay-97203f81.js"),["./pay-alipay-97203f81.js","./pay-alipay.vue_vue_type_script_setup_true_lang-5bb97395.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/setting/components/pay-offlinepay.vue":()=>ie(()=>import("./pay-offlinepay-679e7929.js"),["./pay-offlinepay-679e7929.js","./pay-offlinepay.vue_vue_type_script_setup_true_lang-02bcd3e5.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/setting/components/pay-wechatpay.vue":()=>ie(()=>import("./pay-wechatpay-9be17275.js"),["./pay-wechatpay-9be17275.js","./pay-wechatpay.vue_vue_type_script_setup_true_lang-7f8e28ae.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css"],import.meta.url),"/src/app/views/setting/components/sms-ali.vue":()=>ie(()=>import("./sms-ali-d080c942.js"),["./sms-ali-d080c942.js","./sms-ali.vue_vue_type_script_setup_true_lang-5231bdc7.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/sms-tencent.vue":()=>ie(()=>import("./sms-tencent-abcae0cd.js"),["./sms-tencent-abcae0cd.js","./sms-tencent.vue_vue_type_script_setup_true_lang-bb80dbd2.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/storage-ali.vue":()=>ie(()=>import("./storage-ali-1b417e6c.js"),["./storage-ali-1b417e6c.js","./storage-ali.vue_vue_type_script_setup_true_lang-cacda700.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/storage-local.vue":()=>ie(()=>import("./storage-local-5f3f1566.js"),["./storage-local-5f3f1566.js","./storage-local.vue_vue_type_script_setup_true_lang-6644ca0f.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/storage-qiniu.vue":()=>ie(()=>import("./storage-qiniu-16f78ed1.js"),["./storage-qiniu-16f78ed1.js","./storage-qiniu.vue_vue_type_script_setup_true_lang-b1788884.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/components/storage-tencent.vue":()=>ie(()=>import("./storage-tencent-746580b2.js"),["./storage-tencent-746580b2.js","./storage-tencent.vue_vue_type_script_setup_true_lang-42161852.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/setting/copyright.vue":()=>ie(()=>import("./copyright-7ea83f49.js"),["./copyright-7ea83f49.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/setting/cron.vue":()=>ie(()=>import("./cron-56794c65.js"),["./cron-56794c65.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/setting/developer_token.vue":()=>ie(()=>import("./developer_token-12d21183.js"),["./developer_token-12d21183.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-button-c10d780e.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/setting/login.vue":()=>ie(()=>import("./login-d765f34d.js"),["./login-d765f34d.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./_plugin-vue_export-helper-c27b6911.js","./login-ac1bec85.css","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-switch-b454e5d4.css","./el-checkbox-e3bd3d96.css"],import.meta.url),"/src/app/views/setting/map.vue":()=>ie(()=>import("./map-4c2ee464.js"),["./map-4c2ee464.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./map-28d3c5fb.css","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/setting/member.vue":()=>ie(()=>import("./member-6a179a0e.js"),["./member-6a179a0e.js","./el-form-item-4ed993c7.js","./member-ff972216.js","./_plugin-vue_export-helper-c27b6911.js","./member-1463cec0.css","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/setting/notice.vue":()=>ie(()=>import("./notice-6767a617.js"),["./notice-6767a617.js","./el-tooltip-4ed993c7.js","./notice-8ec1f11c.js","./notice-sms.vue_vue_type_script_setup_true_lang-f1b61b1e.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css","./notice-wechat.vue_vue_type_script_setup_true_lang-b8ecdbcd.js","./notice-weapp.vue_vue_type_script_setup_true_lang-1869ce68.js","./_plugin-vue_export-helper-c27b6911.js","./notice-96e8f372.css","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/setting/notice_records.vue":()=>ie(()=>import("./notice_records-328f98e1.js"),["./notice_records-328f98e1.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./notice-records-info.vue_vue_type_script_setup_true_lang-7af75749.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/setting/pay.vue":()=>ie(()=>import("./pay-eaac2846.js"),["./pay-eaac2846.js","./sys-0f76aff3.js","./pay-wechatpay.vue_vue_type_script_setup_true_lang-7f8e28ae.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./pay-alipay.vue_vue_type_script_setup_true_lang-5bb97395.js","./pay-offlinepay.vue_vue_type_script_setup_true_lang-02bcd3e5.js","./sortable.esm-be94e56d.js","./_plugin-vue_export-helper-c27b6911.js","./pay-e0b59f6d.css","./el-card-fc429ee1.css","./el-tag-c7c1203f.css","./el-switch-b454e5d4.css"],import.meta.url),"/src/app/views/setting/sms.vue":()=>ie(()=>import("./sms-0f74199a.js"),["./sms-0f74199a.js","./el-tooltip-4ed993c7.js","./notice-8ec1f11c.js","./sms-ali.vue_vue_type_script_setup_true_lang-5231bdc7.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-radio-22df3dfd.css","./sms-tencent.vue_vue_type_script_setup_true_lang-bb80dbd2.js","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css"],import.meta.url),"/src/app/views/setting/sms_records.vue":()=>ie(()=>import("./sms_records-8e537305.js"),["./sms_records-8e537305.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./notice-8ec1f11c.js","./notice-records-info.vue_vue_type_script_setup_true_lang-7af75749.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/setting/storage.vue":()=>ie(()=>import("./storage-5797dd1f.js"),["./storage-5797dd1f.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./storage-local.vue_vue_type_script_setup_true_lang-6644ca0f.js","./el-form-item-4ed993c7.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css","./storage-qiniu.vue_vue_type_script_setup_true_lang-b1788884.js","./el-input-c9789fc1.css","./storage-ali.vue_vue_type_script_setup_true_lang-cacda700.js","./storage-tencent.vue_vue_type_script_setup_true_lang-42161852.js","./el-card-fc429ee1.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css"],import.meta.url),"/src/app/views/setting/system.vue":()=>ie(()=>import("./system-8a3088cf.js"),["./system-8a3088cf.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/setting/transfer.vue":()=>ie(()=>import("./transfer-a0465aa3.js"),["./transfer-a0465aa3.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./transfer-d1ac9c15.css","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-alert-5d45f733.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/setting/weapp.vue":()=>ie(()=>import("./weapp-ec03c58d.js"),["./weapp-ec03c58d.js","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./el-progress-e199f971.css","./el-input-c9789fc1.css","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./weapp-7423630d.js","./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./_plugin-vue_export-helper-c27b6911.js","./weapp-7688602b.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css"],import.meta.url),"/src/app/views/setting/wxoplatform.vue":()=>ie(()=>import("./wxoplatform-78ff7fe0.js"),["./wxoplatform-78ff7fe0.js","./el-form-item-4ed993c7.js","./sys-0f76aff3.js","./el-loading-3e34cd81.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-card-fc429ee1.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/site/components/edit-site.vue":()=>ie(()=>import("./edit-site-ac14c64a.js"),["./edit-site-ac14c64a.js","./edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js","./el-form-item-4ed993c7.js","./member_head-a897263d.js","./site-3951be3a.js","./user-3121c68a.js","./addon-b90f5c24.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css","./el-icon-593dfdc2.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css"],import.meta.url),"/src/app/views/site/components/user-info.vue":()=>ie(()=>import("./user-info-a8641912.js"),["./user-info-a8641912.js","./el-form-item-4ed993c7.js","./member_head-a897263d.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-tag-c7c1203f.css","./el-link-1a8c6e48.css","./el-avatar-55e4ee6e.css"],import.meta.url),"/src/app/views/site/edit_personal.vue":()=>ie(()=>import("./edit_personal-19949f69.js"),["./edit_personal-19949f69.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./personal-d4a3249e.js","./edit_personal-4b0f7666.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/site/group.vue":()=>ie(()=>import("./group-cb4dffc3.js"),["./group-cb4dffc3.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./site-3951be3a.js","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css"],import.meta.url),"/src/app/views/site/group_edit.vue":()=>ie(()=>import("./group_edit-8d6f7c50.js"),["./group_edit-8d6f7c50.js","./el-form-item-4ed993c7.js","./site-3951be3a.js","./addon-b90f5c24.js","./_plugin-vue_export-helper-c27b6911.js","./group_edit-f53c3fcc.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-checkbox-group-987ef89c.css","./el-checkbox-e3bd3d96.css","./el-icon-593dfdc2.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/site/info.vue":()=>ie(()=>import("./info-ffbabf84.js"),["./info-ffbabf84.js","./el-form-item-4ed993c7.js","./site_logo-f276251b.js","./site-3951be3a.js","./edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js","./member_head-a897263d.js","./user-3121c68a.js","./addon-b90f5c24.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css","./el-icon-593dfdc2.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-card-fc429ee1.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css"],import.meta.url),"/src/app/views/site/list.vue":()=>ie(()=>import("./list-15a74dd6.js"),["./list-15a74dd6.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./site_logo-f276251b.js","./site-3951be3a.js","./edit-site.vue_vue_type_script_setup_true_lang-2db2a49c.js","./member_head-a897263d.js","./user-3121c68a.js","./addon-b90f5c24.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-avatar-55e4ee6e.css","./el-icon-593dfdc2.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./_plugin-vue_export-helper-c27b6911.js","./list-d058e22e.css","./el-pagination-e1392652.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/site/personal.vue":()=>ie(()=>import("./personal-e79de867.js"),["./personal-e79de867.js","./el-form-item-4ed993c7.js","./personal-d4a3249e.js","./_plugin-vue_export-helper-c27b6911.js","./personal-03103c07.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/site/user.vue":()=>ie(()=>import("./user-511f11ae.js"),["./user-511f11ae.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./member_head-a897263d.js","./site-3951be3a.js","./el-loading-3e34cd81.css","./el-pagination-e1392652.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-date-picker-3587893a.css"],import.meta.url),"/src/app/views/site/user_info.vue":()=>ie(()=>import("./user_info-a3bb29c6.js"),["./user_info-a3bb29c6.js","./el-tooltip-4ed993c7.js","./site-3951be3a.js","./el-loading-3e34cd81.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css","./el-card-fc429ee1.css","./el-col-6b49831e.css"],import.meta.url),"/src/app/views/tools/addon/edit.vue":()=>ie(()=>import("./edit-0e20542f.js"),["./edit-0e20542f.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./tools-8d764897.js","./el-card-fc429ee1.css"],import.meta.url),"/src/app/views/tools/addon/index.vue":()=>ie(()=>import("./index-2a8406ae.js"),["./index-2a8406ae.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./tools-8d764897.js","./_plugin-vue_export-helper-c27b6911.js","./index-84ac6b46.css","./el-loading-3e34cd81.css","./el-tab-pane-97256874.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-image-5875057d.css","./el-image-viewer-fff43739.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-step-39b63541.css","./el-button-c10d780e.css","./el-icon-593dfdc2.css"],import.meta.url),"/src/app/views/tools/attachment.vue":()=>ie(()=>import("./attachment-ac078107.js"),["./attachment-ac078107.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./attachment-f7f23af8.css","./el-card-fc429ee1.css","./el-tab-pane-97256874.css"],import.meta.url),"/src/app/views/tools/code/components/add-table.vue":()=>ie(()=>import("./add-table-97ae6d7f.js"),["./add-table-97ae6d7f.js","./add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js","./el-tooltip-4ed993c7.js","./tools-8d764897.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/tools/code/components/edit-associated.vue":()=>ie(()=>import("./edit-associated-b7d031b4.js"),["./edit-associated-b7d031b4.js","./edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js","./el-form-item-4ed993c7.js","./tools-8d764897.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css"],import.meta.url),"/src/app/views/tools/code/components/edit-verify.vue":()=>ie(()=>import("./edit-verify-d266175b.js"),["./edit-verify-d266175b.js","./edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js","./el-form-item-4ed993c7.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-number-74c955e5.css","./el-input-c9789fc1.css"],import.meta.url),"/src/app/views/tools/code/components/edit-view-type.vue":()=>ie(()=>import("./edit-view-type-2b804272.js"),["./edit-view-type-2b804272.js","./edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./tools-8d764897.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/tools/code/edit.vue":()=>ie(()=>import("./edit-ae165855.js"),["./edit-ae165855.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./edit-associated.vue_vue_type_script_setup_true_async_true_lang-8f7cdcd7.js","./tools-8d764897.js","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./edit-view-type.vue_vue_type_script_setup_true_async_true_lang-3e19b245.js","./dict-3e5bfbe1.js","./el-radio-22df3dfd.css","./edit-verify.vue_vue_type_script_setup_true_async_true_lang-07ee87a3.js","./el-input-number-74c955e5.css","./sys-0f76aff3.js","./sortable.esm-be94e56d.js","./_plugin-vue_export-helper-c27b6911.js","./edit-0a52ce7a.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-tab-pane-97256874.css","./el-tree-16f2bc42.css","./el-checkbox-e3bd3d96.css","./el-tree-select-24f36068.css","./el-table-column-345618ba.css"],import.meta.url),"/src/app/views/tools/code/index.vue":()=>ie(()=>import("./index-3fddc3eb.js"),["./index-3fddc3eb.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./tools-8d764897.js","./add-table.vue_vue_type_script_setup_true_lang-f0ba893e.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css","./el-button-c10d780e.css","./el-input-c9789fc1.css","./_plugin-vue_export-helper-c27b6911.js","./index-b40bd299.css","./el-tree-16f2bc42.css","./el-icon-593dfdc2.css","./el-tab-pane-97256874.css","./el-pagination-e1392652.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-step-39b63541.css"],import.meta.url),"/src/app/views/tools/detection.vue":()=>ie(()=>import("./detection-1cfbea40.js"),["./detection-1cfbea40.js","./el-tooltip-4ed993c7.js","./tools-8d764897.js","./detection-21d58aad.css","./el-loading-3e34cd81.css","./el-card-fc429ee1.css","./el-icon-593dfdc2.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-tag-c7c1203f.css","./el-popper-eb70a20a.css","./el-scrollbar-3dec2e64.css"],import.meta.url),"/src/app/views/tools/form.vue":()=>ie(()=>import("./form-442166e1.js"),["./form-442166e1.js","./index.vue_vue_type_script_setup_true_lang-114a4ac2.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-501cf061.css","./index.vue_vue_type_style_index_0_lang-eec94bc0.js","./index-9a7951a7.css","./index-4718d422.js","./index-1c188de3.css","./form-b78229f7.css","./el-card-fc429ee1.css","./el-input-number-74c955e5.css","./el-date-picker-3587893a.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/app/views/tools/schedule.vue":()=>ie(()=>import("./schedule-00ad7fd6.js"),["./schedule-00ad7fd6.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./sys-0f76aff3.js","./cron-info.vue_vue_type_script_setup_true_lang-4ef60fee.js","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./_plugin-vue_export-helper-c27b6911.js","./schedule-1a4bea8c.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-card-fc429ee1.css","./el-pagination-e1392652.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-alert-5d45f733.css"],import.meta.url),"/src/app/views/tools/updatecache.vue":()=>ie(()=>import("./updatecache-895cc179.js"),["./updatecache-895cc179.js","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./updatecache-e978d438.css","./el-loading-3e34cd81.css"],import.meta.url)}),FRe=Object.assign({"/src/addon/hygl/views/advertising/advertising.vue":()=>ie(()=>import("./advertising-0adcc0db.js"),["./advertising-0adcc0db.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./edit-1c99c58d.css","./el-input-number-74c955e5.css","./advertising-5a72d9ea.css","./el-table-column-345618ba.css","./el-avatar-55e4ee6e.css","./el-card-fc429ee1.css"],import.meta.url),"/src/addon/hygl/views/advertising/components/advertising-edit.vue":()=>ie(()=>import("./advertising-edit-0906e988.js"),["./advertising-edit-0906e988.js","./advertising-edit.vue_vue_type_style_index_0_lang-c07c59ac.js","./el-form-item-4ed993c7.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./edit-1c99c58d.css","./el-input-number-74c955e5.css"],import.meta.url),"/src/addon/hygl/views/config/components/config-edit.vue":()=>ie(()=>import("./config-edit-4300ae81.js"),["./config-edit-4300ae81.js","./el-form-item-4ed993c7.js","./config-8cc9fc39.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css"],import.meta.url),"/src/addon/hygl/views/config/config.vue":()=>ie(()=>import("./config-fa8d1c5f.js"),["./config-fa8d1c5f.js","./el-form-item-4ed993c7.js","./config-8cc9fc39.js","./common-adf8ca96.js","./el-card-fc429ee1.css","./el-form-d10bb01f.css","./el-button-c10d780e.css","./el-input-c9789fc1.css"],import.meta.url),"/src/addon/hygl/views/coupons/components/coupons-edit.vue":()=>ie(()=>import("./coupons-edit-247f87bb.js"),["./coupons-edit-247f87bb.js","./coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-input-number-74c955e5.css"],import.meta.url),"/src/addon/hygl/views/coupons/coupons.vue":()=>ie(()=>import("./coupons-fa4cee9b.js"),["./coupons-fa4cee9b.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-edbadcfb.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./coupons-edit.vue_vue_type_style_index_0_lang-2b39ed54.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-input-number-74c955e5.css","./_plugin-vue_export-helper-c27b6911.js","./coupons-f2705205.css","./el-pagination-e1392652.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css"],import.meta.url),"/src/addon/hygl/views/hello_world/index.vue":()=>ie(()=>import("./index-1bd74f01.js"),[],import.meta.url),"/src/addon/hygl/views/transaction_history/components/transaction-history-edit.vue":()=>ie(()=>import("./transaction-history-edit-812148d6.js"),["./transaction-history-edit-812148d6.js","./transaction-history-edit.vue_vue_type_style_index_0_lang-7bd6520d.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-input-number-74c955e5.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css"],import.meta.url),"/src/addon/hygl/views/transaction_history/transaction_history.vue":()=>ie(()=>import("./transaction_history-9b60451d.js"),["./transaction_history-9b60451d.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-edbadcfb.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./transaction-history-edit.vue_vue_type_style_index_0_lang-7bd6520d.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-date-picker-3587893a.css","./el-input-c9789fc1.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-radio-22df3dfd.css","./el-input-number-74c955e5.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./_plugin-vue_export-helper-c27b6911.js","./transaction_history-175aaa22.css","./el-pagination-e1392652.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css"],import.meta.url),"/src/addon/hygl/views/user/components/user-edit.vue":()=>ie(()=>import("./user-edit-df006ee0.js"),["./user-edit-df006ee0.js","./user-edit.vue_vue_type_style_index_0_lang-7b3d2414.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./el-form-item-4ed993c7.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./dict-3e5bfbe1.js","./edit-1c99c58d.css","./el-date-picker-3587893a.css","./el-radio-22df3dfd.css"],import.meta.url),"/src/addon/hygl/views/user/user.vue":()=>ie(()=>import("./user-7c9f6424.js"),["./user-7c9f6424.js","./el-tooltip-4ed993c7.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./user-edit.vue_vue_type_style_index_0_lang-7b3d2414.js","./index-4718d422.js","./index.vue_vue_type_style_index_0_lang-cc99af21.js","./attachment-bc20fd95.js","./index.vue_vue_type_script_setup_true_lang-6f0143c4.js","./el-icon-593dfdc2.css","./sys-0f76aff3.js","./_plugin-vue_export-helper-c27b6911.js","./attachment-6dd25a64.css","./el-loading-3e34cd81.css","./el-image-viewer-fff43739.css","./el-overlay-16555a66.css","./el-form-d10bb01f.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./el-pagination-e1392652.css","./el-checkbox-e3bd3d96.css","./el-empty-80d6f4dc.css","./el-image-5875057d.css","./el-col-6b49831e.css","./el-progress-e199f971.css","./el-button-c10d780e.css","./el-dropdown-item-fcde02f4.css","./el-popover-9f471fc1.css","./index-7223a68e.css","./index-1c188de3.css","./edit-1c99c58d.css","./el-date-picker-3587893a.css","./el-radio-22df3dfd.css","./user-babba481.css","./el-table-column-345618ba.css","./el-avatar-55e4ee6e.css","./el-card-fc429ee1.css"],import.meta.url),"/src/addon/hygl/views/user_coupons/components/user-coupons-edit.vue":()=>ie(()=>import("./user-coupons-edit-9f08133e.js"),["./user-coupons-edit-9f08133e.js","./user-coupons-edit.vue_vue_type_style_index_0_lang-ff4d66c9.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./common-adf8ca96.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css"],import.meta.url),"/src/addon/hygl/views/user_coupons/user_coupons.vue":()=>ie(()=>import("./user_coupons-2a814bc4.js"),["./user_coupons-2a814bc4.js","./el-tooltip-4ed993c7.js","./index.vue_vue_type_script_setup_true_lang-edbadcfb.js","./el-form-item-4ed993c7.js","./dict-3e5bfbe1.js","./user-coupons-edit.vue_vue_type_style_index_0_lang-ff4d66c9.js","./common-adf8ca96.js","./edit-1c99c58d.css","./el-loading-3e34cd81.css","./el-overlay-16555a66.css","./el-button-c10d780e.css","./el-form-d10bb01f.css","./el-radio-22df3dfd.css","./el-input-c9789fc1.css","./el-tag-c7c1203f.css","./el-option-a5edd981.css","./el-select-5775f10f.css","./el-scrollbar-3dec2e64.css","./el-popper-eb70a20a.css","./_plugin-vue_export-helper-c27b6911.js","./user_coupons-b7ee4d7a.css","./el-pagination-e1392652.css","./el-table-column-345618ba.css","./el-checkbox-e3bd3d96.css","./el-card-fc429ee1.css","./el-date-picker-3587893a.css"],import.meta.url)}),HRe=function(e,t=null){const n={path:t?e.router_path:e.router_path!="decorate"?`/${e.app_type}/${e.router_path}`:`/${e.router_path}`,name:e.menu_key,meta:{title:e.menu_name,short_title:e.menu_short_name,icon:e.icon,type:e.menu_type,show:e.is_show,app:e.app_type,view:e.view_path,addon:e.addon,parent_route:t&&t.meta}};return e.menu_type==0?(n.component=t?j2:()=>Promise.resolve(To),e.children||(n.component=j2)):n.component=e.addon?FRe[`/src/addon/${e.addon}/views/${e.view_path}.vue`]:BRe[`/src/app/views/${e.view_path}.vue`],n};function N9(e,t=null){return e.map(n=>{const r=HRe(n,t);return n.children!=null&&n.children&&n.children.length&&(r.children=N9(n.children,r)),r})}function g1(e){var t;for(const n of e){if(((t=n.meta)==null?void 0:t.type)==1)return n.name;if(n.children){const r=g1(n.children);if(r)return r}}}const Dn=FTe({history:oTe("./"),routes:[ql,VRe,Gl,...DRe]}),URe=Dn.push;Dn.push=e=>{const t=typeof e=="string"?NE(e):e;if(t.path){const n=t.path.split("/").filter(r=>r);t.path=["admin","site","decorate","home"].indexOf(n[0])==-1?`/${So()}${t.path}`:t.path}return URe(t)};const KRe=Dn.resolve;Dn.resolve=(e,t)=>{const n=typeof e=="string"?NE(e):e;if(n.path){const r=n.path.split("/").filter(o=>o);n.path=["admin","site","decorate","home"].indexOf(r[0])==-1?`/${So()}${n.path}`:n.path}return KRe(n,t)};Dn.beforeEach(async(e,t,n)=>{var u,d;qi.configure({showSpinner:!1}),qi.start(),e.redirectedFrom&&(e.query=e.redirectedFrom.query);const r=m1(),o=r.siteInfo,a=So();let s=e.meta.title??"";!o&&a!="home"&&await r.getSiteInfo(),o&&(s+="-"+o.site_name),I7e(s),await ORe.loadLocaleMessages(e.meta.addon||"",e.meta.view||e.path,AE().lang);let l=e.matched;l&&l.length&&l[0].path!="/:pathMatch(.*)*"?l=l[0].path:l=a;const i=e.path=="/"?"/admin/login":`${l}/login`;if(zRe.includes(e.path))n();else if(r.token)if(r.routers.length)e.path===i?n(`/${So()}`):n();else try{if(!r.siteInfo||r.siteInfo.site_id==null)e.path==="/home/index"?n():n({path:"/home/index",replace:!0});else{await r.getAuthMenus();let f=g1(r.routers);So()!="admin"&&((u=r.siteInfo)==null?void 0:u.apps.length)>1&&(f=r.addonIndexRoute[(d=r.siteInfo)==null?void 0:d.apps[0].key]),o3.redirect={name:f},Dn.addRoute(o3),So()=="admin"?(ql.children[0].redirect={name:f},Dn.addRoute(ql)):(Gl.children[0].redirect={name:f},Dn.addRoute(Gl)),r.routers.forEach(p=>{if(!p.children){p.meta.app=="admin"?Dn.addRoute(ql.children[0].name,p):Dn.addRoute(Gl.children[0].name,p);return}p.meta.app=="admin"?Dn.addRoute(ql.name,p):Dn.addRoute(Gl.name,p)}),n({path:e.path,query:e.query,replace:!0})}}catch(f){console.log(f),n({path:i,query:{redirect:e.fullPath}})}else e.path===i?n():n({path:i,query:{redirect:e.fullPath}})});Dn.afterEach(()=>{qi.done()});const WRe=H$e();var _1={exports:{}};function b1(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(function(t){var n=e[t];typeof n=="object"&&!Object.isFrozen(n)&&b1(n)}),e}_1.exports=b1;_1.exports.default=b1;var jRe=_1.exports;class a3{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function A9(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function ua(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach(function(r){for(const o in r)n[o]=r[o]}),n}const qRe="",s3=e=>!!e.kind,GRe=(e,{prefix:t})=>{if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((r,o)=>`${r}${"_".repeat(o+1)}`)].join(" ")}return`${t}${e}`};class YRe{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=A9(t)}openNode(t){if(!s3(t))return;let n=t.kind;t.sublanguage?n=`language-${n}`:n=GRe(n,{prefix:this.classPrefix}),this.span(n)}closeNode(t){s3(t)&&(this.buffer+=qRe)}value(){return this.buffer}span(t){this.buffer+=``}}class y1{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n={kind:t,children:[]};this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(r=>this._walk(t,r)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{y1._collapse(n)}))}}class XRe extends y1{constructor(t){super(),this.options=t}addKeyword(t,n){t!==""&&(this.openNode(n),this.addText(t),this.closeNode())}addText(t){t!==""&&this.add(t)}addSublanguage(t,n){const r=t.root;r.kind=n,r.sublanguage=!0,this.add(r)}toHTML(){return new YRe(this,this.options).value()}finalize(){return!0}}function Zi(e){return e?typeof e=="string"?e:e.source:null}function ZRe(e){return wf("(?=",e,")")}function wf(...e){return e.map(n=>Zi(n)).join("")}function JRe(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function R9(...e){return"("+(JRe(e).capture?"":"?:")+e.map(r=>Zi(r)).join("|")+")"}function x9(e){return new RegExp(e.toString()+"|").exec("").length-1}function QRe(e,t){const n=e&&e.exec(t);return n&&n.index===0}const exe=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function w1(e,{joinWith:t}){let n=0;return e.map(r=>{n+=1;const o=n;let a=Zi(r),s="";for(;a.length>0;){const l=exe.exec(a);if(!l){s+=a;break}s+=a.substring(0,l.index),a=a.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?s+="\\"+String(Number(l[1])+o):(s+=l[0],l[0]==="("&&n++)}return s}).map(r=>`(${r})`).join(t)}const txe=/\b\B/,I9="[a-zA-Z]\\w*",E1="[a-zA-Z_]\\w*",L9="\\b\\d+(\\.\\d+)?",P9="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",D9="\\b(0b[01]+)",nxe="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",rxe=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=wf(t,/.*\b/,e.binary,/\b.*/)),ua({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,r)=>{n.index!==0&&r.ignoreMatch()}},e)},Ji={begin:"\\\\[\\s\\S]",relevance:0},oxe={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ji]},axe={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ji]},sxe={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Ef=function(e,t,n={}){const r=ua({scope:"comment",begin:e,end:t,contains:[]},n);r.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const o=R9("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:wf(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),r},lxe=Ef("//","$"),ixe=Ef("/\\*","\\*/"),uxe=Ef("#","$"),cxe={scope:"number",begin:L9,relevance:0},dxe={scope:"number",begin:P9,relevance:0},fxe={scope:"number",begin:D9,relevance:0},pxe={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[Ji,{begin:/\[/,end:/\]/,relevance:0,contains:[Ji]}]}]},hxe={scope:"title",begin:I9,relevance:0},vxe={scope:"title",begin:E1,relevance:0},mxe={begin:"\\.\\s*"+E1,relevance:0},gxe=function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})};var Qu=Object.freeze({__proto__:null,MATCH_NOTHING_RE:txe,IDENT_RE:I9,UNDERSCORE_IDENT_RE:E1,NUMBER_RE:L9,C_NUMBER_RE:P9,BINARY_NUMBER_RE:D9,RE_STARTERS_RE:nxe,SHEBANG:rxe,BACKSLASH_ESCAPE:Ji,APOS_STRING_MODE:oxe,QUOTE_STRING_MODE:axe,PHRASAL_WORDS_MODE:sxe,COMMENT:Ef,C_LINE_COMMENT_MODE:lxe,C_BLOCK_COMMENT_MODE:ixe,HASH_COMMENT_MODE:uxe,NUMBER_MODE:cxe,C_NUMBER_MODE:dxe,BINARY_NUMBER_MODE:fxe,REGEXP_MODE:pxe,TITLE_MODE:hxe,UNDERSCORE_TITLE_MODE:vxe,METHOD_GUARD:mxe,END_SAME_AS_BEGIN:gxe});function _xe(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function bxe(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function yxe(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=_xe,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function wxe(e,t){Array.isArray(e.illegal)&&(e.illegal=R9(...e.illegal))}function Exe(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function Cxe(e,t){e.relevance===void 0&&(e.relevance=1)}const Sxe=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(r=>{delete e[r]}),e.keywords=n.keywords,e.begin=wf(n.beforeMatch,ZRe(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},kxe=["of","and","for","in","not","or","if","then","parent","list","value"],$xe="keyword";function z9(e,t,n=$xe){const r=Object.create(null);return typeof e=="string"?o(n,e.split(" ")):Array.isArray(e)?o(n,e):Object.keys(e).forEach(function(a){Object.assign(r,z9(e[a],t,a))}),r;function o(a,s){t&&(s=s.map(l=>l.toLowerCase())),s.forEach(function(l){const i=l.split("|");r[i[0]]=[a,Txe(i[0],i[1])]})}}function Txe(e,t){return t?Number(t):Oxe(e)?0:1}function Oxe(e){return kxe.includes(e.toLowerCase())}const l3={},es=e=>{console.error(e)},i3=(e,...t)=>{console.log(`WARN: ${e}`,...t)},Cs=(e,t)=>{l3[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),l3[`${e}/${t}`]=!0)},pd=new Error;function V9(e,t,{key:n}){let r=0;const o=e[n],a={},s={};for(let l=1;l<=t.length;l++)s[l+r]=o[l],a[l+r]=!0,r+=x9(t[l-1]);e[n]=s,e[n]._emit=a,e[n]._multi=!0}function Mxe(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw es("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),pd;if(typeof e.beginScope!="object"||e.beginScope===null)throw es("beginScope must be object"),pd;V9(e,e.begin,{key:"beginScope"}),e.begin=w1(e.begin,{joinWith:""})}}function Nxe(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw es("skip, excludeEnd, returnEnd not compatible with endScope: {}"),pd;if(typeof e.endScope!="object"||e.endScope===null)throw es("endScope must be object"),pd;V9(e,e.end,{key:"endScope"}),e.end=w1(e.end,{joinWith:""})}}function Axe(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Rxe(e){Axe(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),Mxe(e),Nxe(e)}function xxe(e){function t(s,l){return new RegExp(Zi(s),"m"+(e.case_insensitive?"i":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,i){i.position=this.position++,this.matchIndexes[this.matchAt]=i,this.regexes.push([i,l]),this.matchAt+=x9(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(i=>i[1]);this.matcherRe=t(w1(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const i=this.matcherRe.exec(l);if(!i)return null;const u=i.findIndex((f,p)=>p>0&&f!==void 0),d=this.matchIndexes[u];return i.splice(0,u),Object.assign(i,d)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const i=new n;return this.rules.slice(l).forEach(([u,d])=>i.addRule(u,d)),i.compile(),this.multiRegexes[l]=i,i}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,i){this.rules.push([l,i]),i.type==="begin"&&this.count++}exec(l){const i=this.getMatcher(this.regexIndex);i.lastIndex=this.lastIndex;let u=i.exec(l);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){const d=this.getMatcher(0);d.lastIndex=this.lastIndex+1,u=d.exec(l)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function o(s){const l=new r;return s.contains.forEach(i=>l.addRule(i.begin,{rule:i,type:"begin"})),s.terminatorEnd&&l.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&l.addRule(s.illegal,{type:"illegal"}),l}function a(s,l){const i=s;if(s.isCompiled)return i;[bxe,Exe,Rxe,Sxe].forEach(d=>d(s,l)),e.compilerExtensions.forEach(d=>d(s,l)),s.__beforeBegin=null,[yxe,wxe,Cxe].forEach(d=>d(s,l)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=z9(s.keywords,e.case_insensitive)),i.keywordPatternRe=t(u,!0),l&&(s.begin||(s.begin=/\B|\b/),i.beginRe=t(s.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(i.endRe=t(s.end)),i.terminatorEnd=Zi(s.end)||"",s.endsWithParent&&l.terminatorEnd&&(i.terminatorEnd+=(s.end?"|":"")+l.terminatorEnd)),s.illegal&&(i.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(d){return Ixe(d==="self"?s:d)})),s.contains.forEach(function(d){a(d,i)}),s.starts&&a(s.starts,l),i.matcher=o(i),i}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=ua(e.classNameAliases||{}),a(e)}function B9(e){return e?e.endsWithParent||B9(e.starts):!1}function Ixe(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return ua(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:B9(e)?ua(e,{starts:e.starts?ua(e.starts):null}):Object.isFrozen(e)?ua(e):e}var Lxe="11.0.1";const _p=A9,u3=ua,c3=Symbol("nomatch"),Pxe=7,Dxe=function(e){const t=Object.create(null),n=Object.create(null),r=[];let o=!0;const a="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:XRe};function i(I){return l.noHighlightRe.test(I)}function u(I){let x=I.className+" ";x+=I.parentNode?I.parentNode.className:"";const L=l.languageDetectRe.exec(x);if(L){const z=A(L[1]);return z||(i3(a.replace("{}",L[1])),i3("Falling back to no-highlight mode for this block.",I)),z?L[1]:"no-highlight"}return x.split(/\s+/).find(z=>i(z)||A(z))}function d(I,x,L,z){let q="",le="";typeof x=="object"?(q=I,L=x.ignoreIllegals,le=x.language,z=void 0):(Cs("10.7.0","highlight(lang, code, ...args) has been deprecated."),Cs("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),le=I,q=x),L===void 0&&(L=!0);const G={code:q,language:le};U("before:highlight",G);const ae=G.result?G.result:f(G.language,G.code,L,z);return ae.code=G.code,U("after:highlight",ae),ae}function f(I,x,L,z){const q=Object.create(null);function le($e,Pe){return $e.keywords[Pe]}function G(){if(!ne.keywords){ye.addText(Te);return}let $e=0;ne.keywordPatternRe.lastIndex=0;let Pe=ne.keywordPatternRe.exec(Te),Ue="";for(;Pe;){Ue+=Te.substring($e,Pe.index);const ze=F.case_insensitive?Pe[0].toLowerCase():Pe[0],se=le(ne,ze);if(se){const[pe,Me]=se;if(ye.addText(Ue),Ue="",q[ze]=(q[ze]||0)+1,q[ze]<=Pxe&&(we+=Me),pe.startsWith("_"))Ue+=Pe[0];else{const W=F.classNameAliases[pe]||pe;ye.addKeyword(Pe[0],W)}}else Ue+=Pe[0];$e=ne.keywordPatternRe.lastIndex,Pe=ne.keywordPatternRe.exec(Te)}Ue+=Te.substr($e),ye.addText(Ue)}function ae(){if(Te==="")return;let $e=null;if(typeof ne.subLanguage=="string"){if(!t[ne.subLanguage]){ye.addText(Te);return}$e=f(ne.subLanguage,Te,!0,Se[ne.subLanguage]),Se[ne.subLanguage]=$e._top}else $e=v(Te,ne.subLanguage.length?ne.subLanguage:null);ne.relevance>0&&(we+=$e.relevance),ye.addSublanguage($e._emitter,$e.language)}function be(){ne.subLanguage!=null?ae():G(),Te=""}function te($e,Pe){let Ue=1;for(;Pe[Ue]!==void 0;){if(!$e._emit[Ue]){Ue++;continue}const ze=F.classNameAliases[$e[Ue]]||$e[Ue],se=Pe[Ue];ze?ye.addKeyword(se,ze):(Te=se,G(),Te=""),Ue++}}function de($e,Pe){return $e.scope&&typeof $e.scope=="string"&&ye.openNode(F.classNameAliases[$e.scope]||$e.scope),$e.beginScope&&($e.beginScope._wrap?(ye.addKeyword(Te,F.classNameAliases[$e.beginScope._wrap]||$e.beginScope._wrap),Te=""):$e.beginScope._multi&&(te($e.beginScope,Pe),Te="")),ne=Object.create($e,{parent:{value:ne}}),ne}function Z($e,Pe,Ue){let ze=QRe($e.endRe,Ue);if(ze){if($e["on:end"]){const se=new a3($e);$e["on:end"](Pe,se),se.isMatchIgnored&&(ze=!1)}if(ze){for(;$e.endsParent&&$e.parent;)$e=$e.parent;return $e}}if($e.endsWithParent)return Z($e.parent,Pe,Ue)}function Y($e){return ne.matcher.regexIndex===0?(Te+=$e[0],1):(De=!0,0)}function ce($e){const Pe=$e[0],Ue=$e.rule,ze=new a3(Ue),se=[Ue.__beforeBegin,Ue["on:begin"]];for(const pe of se)if(pe&&(pe($e,ze),ze.isMatchIgnored))return Y(Pe);return Ue.skip?Te+=Pe:(Ue.excludeBegin&&(Te+=Pe),be(),!Ue.returnBegin&&!Ue.excludeBegin&&(Te=Pe)),de(Ue,$e),Ue.returnBegin?0:Pe.length}function ve($e){const Pe=$e[0],Ue=x.substr($e.index),ze=Z(ne,$e,Ue);if(!ze)return c3;const se=ne;ne.endScope&&ne.endScope._wrap?(be(),ye.addKeyword(Pe,ne.endScope._wrap)):ne.endScope&&ne.endScope._multi?(be(),te(ne.endScope,$e)):se.skip?Te+=Pe:(se.returnEnd||se.excludeEnd||(Te+=Pe),be(),se.excludeEnd&&(Te=Pe));do ne.scope&&!ne.isMultiClass&&ye.closeNode(),!ne.skip&&!ne.subLanguage&&(we+=ne.relevance),ne=ne.parent;while(ne!==ze.parent);return ze.starts&&de(ze.starts,$e),se.returnEnd?0:Pe.length}function Ne(){const $e=[];for(let Pe=ne;Pe!==F;Pe=Pe.parent)Pe.scope&&$e.unshift(Pe.scope);$e.forEach(Pe=>ye.openNode(Pe))}let j={};function D($e,Pe){const Ue=Pe&&Pe[0];if(Te+=$e,Ue==null)return be(),0;if(j.type==="begin"&&Pe.type==="end"&&j.index===Pe.index&&Ue===""){if(Te+=x.slice(Pe.index,Pe.index+1),!o){const ze=new Error(`0 width match regex (${I})`);throw ze.languageName=I,ze.badRule=j.rule,ze}return 1}if(j=Pe,Pe.type==="begin")return ce(Pe);if(Pe.type==="illegal"&&!L){const ze=new Error('Illegal lexeme "'+Ue+'" for mode "'+(ne.scope||"")+'"');throw ze.mode=ne,ze}else if(Pe.type==="end"){const ze=ve(Pe);if(ze!==c3)return ze}if(Pe.type==="illegal"&&Ue==="")return 1;if(_e>1e5&&_e>Pe.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Te+=Ue,Ue.length}const F=A(I);if(!F)throw es(a.replace("{}",I)),new Error('Unknown language: "'+I+'"');const Q=xxe(F);let ge="",ne=z||Q;const Se={},ye=new l.__emitter(l);Ne();let Te="",we=0,J=0,_e=0,De=!1;try{for(ne.matcher.considerAll();;){_e++,De?De=!1:ne.matcher.considerAll(),ne.matcher.lastIndex=J;const $e=ne.matcher.exec(x);if(!$e)break;const Pe=x.substring(J,$e.index),Ue=D(Pe,$e);J=$e.index+Ue}return D(x.substr(J)),ye.closeAllNodes(),ye.finalize(),ge=ye.toHTML(),{language:I,value:ge,relevance:we,illegal:!1,_emitter:ye,_top:ne}}catch($e){if($e.message&&$e.message.includes("Illegal"))return{language:I,value:_p(x),illegal:!0,relevance:0,_illegalBy:{message:$e.message,index:J,context:x.slice(J-100,J+100),mode:$e.mode,resultSoFar:ge},_emitter:ye};if(o)return{language:I,value:_p(x),illegal:!1,relevance:0,errorRaised:$e,_emitter:ye,_top:ne};throw $e}}function p(I){const x={value:_p(I),illegal:!1,relevance:0,_top:s,_emitter:new l.__emitter(l)};return x._emitter.addText(I),x}function v(I,x){x=x||l.languages||Object.keys(t);const L=p(I),z=x.filter(A).filter(B).map(be=>f(be,I,!1));z.unshift(L);const q=z.sort((be,te)=>{if(be.relevance!==te.relevance)return te.relevance-be.relevance;if(be.language&&te.language){if(A(be.language).supersetOf===te.language)return 1;if(A(te.language).supersetOf===be.language)return-1}return 0}),[le,G]=q,ae=le;return ae.secondBest=G,ae}function h(I,x,L){const z=x&&n[x]||L;I.classList.add("hljs"),I.classList.add(`language-${z}`)}function m(I){let x=null;const L=u(I);if(i(L))return;U("before:highlightElement",{el:I,language:L}),!l.ignoreUnescapedHTML&&I.children.length>0&&(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/issues/2886"),console.warn(I)),x=I;const z=x.textContent,q=L?d(z,{language:L,ignoreIllegals:!0}):v(z);I.innerHTML=q.value,h(I,L,q.language),I.result={language:q.language,re:q.relevance,relevance:q.relevance},q.secondBest&&(I.secondBest={language:q.secondBest.language,relevance:q.secondBest.relevance}),U("after:highlightElement",{el:I,result:q,text:z})}function _(I){l=u3(l,I)}const g=()=>{w(),Cs("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function b(){w(),Cs("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let y=!1;function w(){if(document.readyState==="loading"){y=!0;return}document.querySelectorAll(l.cssSelector).forEach(m)}function C(){y&&w()}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",C,!1);function S(I,x){let L=null;try{L=x(e)}catch(z){if(es("Language definition for '{}' could not be registered.".replace("{}",I)),o)es(z);else throw z;L=s}L.name||(L.name=I),t[I]=L,L.rawDefinition=x.bind(null,e),L.aliases&&R(L.aliases,{languageName:I})}function O(I){delete t[I];for(const x of Object.keys(n))n[x]===I&&delete n[x]}function T(){return Object.keys(t)}function A(I){return I=(I||"").toLowerCase(),t[I]||t[n[I]]}function R(I,{languageName:x}){typeof I=="string"&&(I=[I]),I.forEach(L=>{n[L.toLowerCase()]=x})}function B(I){const x=A(I);return x&&!x.disableAutodetect}function V(I){I["before:highlightBlock"]&&!I["before:highlightElement"]&&(I["before:highlightElement"]=x=>{I["before:highlightBlock"](Object.assign({block:x.el},x))}),I["after:highlightBlock"]&&!I["after:highlightElement"]&&(I["after:highlightElement"]=x=>{I["after:highlightBlock"](Object.assign({block:x.el},x))})}function H(I){V(I),r.push(I)}function U(I,x){const L=I;r.forEach(function(z){z[L]&&z[L](x)})}function K(I){return Cs("10.7.0","highlightBlock will be removed entirely in v12.0"),Cs("10.7.0","Please use highlightElement now."),m(I)}Object.assign(e,{highlight:d,highlightAuto:v,highlightAll:w,highlightElement:m,highlightBlock:K,configure:_,initHighlighting:g,initHighlightingOnLoad:b,registerLanguage:S,unregisterLanguage:O,listLanguages:T,getLanguage:A,registerAliases:R,autoDetection:B,inherit:u3,addPlugin:H}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=Lxe;for(const I in Qu)typeof Qu[I]=="object"&&jRe(Qu[I]);return Object.assign(e,Qu),e};var zxe=Dxe({}),Ic=zxe,bp,d3;function Vxe(){if(d3)return bp;d3=1;function e(l){return l?typeof l=="string"?l:l.source:null}function t(l){return r("(?=",l,")")}function n(l){return r("(?:",l,")?")}function r(...l){return l.map(u=>e(u)).join("")}function o(l){const i=l[l.length-1];return typeof i=="object"&&i.constructor===Object?(l.splice(l.length-1,1),i):{}}function a(...l){return"("+(o(l).capture?"":"?:")+l.map(d=>e(d)).join("|")+")"}function s(l){const i=r(/[A-Z_]/,n(/[A-Z0-9_.-]*:/),/[A-Z0-9_.-]*/),u=/[A-Za-z0-9._:-]+/,d={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},f={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},p=l.inherit(f,{begin:/\(/,end:/\)/}),v=l.inherit(l.APOS_STRING_MODE,{className:"string"}),h=l.inherit(l.QUOTE_STRING_MODE,{className:"string"}),m={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin://,relevance:10,contains:[f,h,v,p,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[f,p,h,v]}]}]},l.COMMENT(//,{relevance:10}),{begin://,relevance:10},d,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[m],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[m],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:r(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:i,relevance:0,starts:m}]},{className:"tag",begin:r(/<\//,t(r(i,/>/))),contains:[{className:"name",begin:i,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}return bp=s,bp}var yp,f3;function Bxe(){if(f3)return yp;f3=1;function e(r){return r?typeof r=="string"?r:r.source:null}function t(...r){return r.map(a=>e(a)).join("")}function n(r){const o={},a={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:t(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const s={className:"subst",begin:/\$\(/,end:/\)/,contains:[r.BACKSLASH_ESCAPE]},l={begin:/<<-?\s*(?=\w+)/,starts:{contains:[r.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},i={className:"string",begin:/"/,end:/"/,contains:[r.BACKSLASH_ESCAPE,o,s]};s.contains.push(i);const u={className:"",begin:/\\"/},d={className:"string",begin:/'/,end:/'/},f={begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},r.NUMBER_MODE,o]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],v=r.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),h={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[r.inherit(r.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z._-]+\b/,keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],literal:["true","false"],built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp"},contains:[v,r.SHEBANG(),h,f,r.HASH_COMMENT_MODE,l,i,u,d,o]}}return yp=n,yp}var wp,p3;function Fxe(){if(p3)return wp;p3=1;function e(o){return o?typeof o=="string"?o:o.source:null}function t(o){return n("(?:",o,")?")}function n(...o){return o.map(s=>e(s)).join("")}function r(o){const a=o.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),s="decltype\\(auto\\)",l="[a-zA-Z_]\\w*::",i="<[^<>]+>",u="("+s+"|"+t(l)+"[a-zA-Z_]\\w*"+t(i)+")",d={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},f="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)",p={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[o.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+f+"|.)",end:"'",illegal:"."},o.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},v={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},o.inherit(p,{className:"string"}),{className:"string",begin:/<.*?>/},a,o.C_BLOCK_COMMENT_MODE]},m={className:"title",begin:t(l)+o.IDENT_RE,relevance:0},_=t(l)+o.IDENT_RE+"\\s*\\(",y={keyword:["asm","auto","break","case","const","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","static","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},w=[h,d,a,o.C_BLOCK_COMMENT_MODE,v,p],C={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:y,contains:w.concat([{begin:/\(/,end:/\)/,keywords:y,contains:w.concat(["self"]),relevance:0}]),relevance:0},S={begin:"("+u+"[\\*&\\s]+)+"+_,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:y,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:s,keywords:y,relevance:0},{begin:_,returnBegin:!0,contains:[o.inherit(m,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:[a,o.C_BLOCK_COMMENT_MODE,p,v,d,{begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:["self",a,o.C_BLOCK_COMMENT_MODE,p,v,d]}]},d,a,o.C_BLOCK_COMMENT_MODE,h]};return{name:"C",aliases:["h"],keywords:y,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},o.TITLE_MODE]}]),exports:{preprocessor:h,strings:p,keywords:y}}}return wp=r,wp}var Ep,h3;function Hxe(){if(h3)return Ep;h3=1;function e(a){return a?typeof a=="string"?a:a.source:null}function t(a){return r("(?=",a,")")}function n(a){return r("(?:",a,")?")}function r(...a){return a.map(l=>e(l)).join("")}function o(a){const s=a.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),l="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",u="<[^<>]+>",d="(?!struct)("+l+"|"+n(i)+"[a-zA-Z_]\\w*"+n(u)+")",f={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},p="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)",v={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[a.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+p+"|.)",end:"'",illegal:"."},a.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},h={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},m={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},a.inherit(v,{className:"string"}),{className:"string",begin:/<.*?>/},s,a.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:n(i)+a.IDENT_RE,relevance:0},g=n(i)+a.IDENT_RE+"\\s*\\(",b=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","signed","sizeof","static","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","unsigned","using","virtual","volatile","while","xor","xor_eq,"],y=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t"],w=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],C=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],T={type:y,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:w},A={className:"function.dispatch",relevance:0,keywords:{_hint:C},begin:r(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!while)/,a.IDENT_RE,t(/(<[^<>]+>|)\s*\(/))},R=[A,m,f,s,a.C_BLOCK_COMMENT_MODE,h,v],B={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:T,contains:R.concat([{begin:/\(/,end:/\)/,keywords:T,contains:R.concat(["self"]),relevance:0}]),relevance:0},V={className:"function",begin:"("+d+"[\\*&\\s]+)+"+g,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:T,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:T,relevance:0},{begin:g,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[v,h]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:T,relevance:0,contains:[s,a.C_BLOCK_COMMENT_MODE,v,h,f,{begin:/\(/,end:/\)/,keywords:T,relevance:0,contains:["self",s,a.C_BLOCK_COMMENT_MODE,v,h,f]}]},f,s,a.C_BLOCK_COMMENT_MODE,m]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:T,illegal:"",keywords:T,contains:["self",f]},{begin:a.IDENT_RE+"::",keywords:T},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}return Ep=o,Ep}var Cp,v3;function Uxe(){if(v3)return Cp;v3=1;function e(t){const n=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],r=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],o=["default","false","null","true"],a=["abstract","as","base","break","case","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],s=["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"],l={keyword:a.concat(s),built_in:n,literal:o},i=t.inherit(t.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),u={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},d={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},f=t.inherit(d,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:l},v=t.inherit(p,{illegal:/\n/}),h={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},t.BACKSLASH_ESCAPE,v]},m={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},_=t.inherit(m,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},v]});p.contains=[m,h,d,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,t.C_BLOCK_COMMENT_MODE],v.contains=[_,h,f,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,t.inherit(t.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const g={variants:[m,h,d,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},b={begin:"<",end:">",contains:[{beginKeywords:"in out"},i]},y=t.IDENT_RE+"(<"+t.IDENT_RE+"(\\s*,\\s*"+t.IDENT_RE+")*>)?(\\[\\])?",w={begin:"@"+t.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:l,illegal:/::/,contains:[t.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},g,u,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},i,b,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[i,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[i,b,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+y+"\\s+)+"+t.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:l,contains:[{beginKeywords:r.join(" "),relevance:0},{begin:t.IDENT_RE+"\\s*(<.+>\\s*)?\\(",returnBegin:!0,contains:[t.TITLE_MODE,b],relevance:0},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,relevance:0,contains:[g,u,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},w]}}return Cp=e,Cp}var Sp,m3;function Kxe(){if(m3)return Sp;m3=1;const e=d=>({IMPORTANT:{scope:"meta",begin:"!important"},HEXCOLOR:{scope:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:d.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],n=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],a=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();function s(d){return d?typeof d=="string"?d:d.source:null}function l(d){return i("(?=",d,")")}function i(...d){return d.map(p=>s(p)).join("")}function u(d){const f=e(d),p={className:"built_in",begin:/[\w-]+(?=\()/},v={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},h="and or not only",m=/@-?\w[\w]*(-\w+)*/,_="[a-zA-Z-][a-zA-Z0-9_-]*",g=[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[d.C_BLOCK_COMMENT_MODE,v,f.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+_,relevance:0},f.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+r.join("|")+")"},{begin:"::("+o.join("|")+")"}]},{className:"attribute",begin:"\\b("+a.join("|")+")\\b"},{begin:":",end:"[;}]",contains:[f.HEXCOLOR,f.IMPORTANT,f.CSS_NUMBER_MODE,...g,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},p]},{begin:l(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:m},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:h,attribute:n.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...g,f.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+t.join("|")+")\\b"}]}}return Sp=u,Sp}var kp,g3;function Wxe(){if(g3)return kp;g3=1;function e(r){return r?typeof r=="string"?r:r.source:null}function t(...r){return r.map(a=>e(a)).join("")}function n(r){const o={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},a={begin:"^[-\\*]{3,}",end:"$"},s={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},l={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},i={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},f={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},p={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};f.contains.push(p),p.contains.push(f);let v=[o,d];return f.contains=f.contains.concat(v),p.contains=p.contains.concat(v),v=v.concat(f,p),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:v},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:v}]}]},o,l,f,p,{className:"quote",begin:"^>\\s+",contains:v,end:"$"},s,a,d,i]}}return kp=n,kp}var $p,_3;function jxe(){if(_3)return $p;_3=1;function e(o){return o?typeof o=="string"?o:o.source:null}function t(o){const a=o[o.length-1];return typeof a=="object"&&a.constructor===Object?(o.splice(o.length-1,1),a):{}}function n(...o){return"("+(t(o).capture?"":"?:")+o.map(l=>e(l)).join("|")+")"}function r(o){return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:n(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:n(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}return $p=r,$p}var Tp,b3;function qxe(){if(b3)return Tp;b3=1;function e(o){return o?typeof o=="string"?o:o.source:null}function t(o){return n("(?=",o,")")}function n(...o){return o.map(s=>e(s)).join("")}function r(o){const a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",s={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__",built_in:"proc lambda",literal:"true false nil"},l={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},u=[o.COMMENT("#","$",{contains:[l]}),o.COMMENT("^=begin","^=end",{contains:[l],relevance:10}),o.COMMENT("^__END__","\\n$")],d={className:"subst",begin:/#\{/,end:/\}/,keywords:s},f={className:"string",contains:[o.BACKSLASH_ESCAPE,d],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:n(/<<[-~]?'?/,t(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[o.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[o.BACKSLASH_ESCAPE,d]})]}]},p="[1-9](_?[0-9])*|0",v="[0-9](_?[0-9])*",h={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${v}))?([eE][+-]?(${v})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},m={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:s},_=[f,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[o.inherit(o.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{begin:"("+o.IDENT_RE+"::)?"+o.IDENT_RE,relevance:0}]}].concat(u)},{className:"function",begin:n(/def\s+/,t(a+"\\s*(\\(|;|$)")),relevance:0,keywords:"def",end:"$|;",contains:[o.inherit(o.TITLE_MODE,{begin:a}),m].concat(u)},{begin:o.IDENT_RE+"::"},{className:"symbol",begin:o.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[f,{begin:a}],relevance:0},h,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:s},{begin:"("+o.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[o.BACKSLASH_ESCAPE,d],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(i,u),relevance:0}].concat(i,u);d.contains=_,m.contains=_;const g="[>?]>",b="[\\w#]+\\(\\w+\\):\\d+:\\d+>",y="(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>",w=[{begin:/^\s*=>/,starts:{end:"$",contains:_}},{className:"meta",begin:"^("+g+"|"+b+"|"+y+")(?=[ ])",starts:{end:"$",contains:_}}];return u.unshift(i),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[o.SHEBANG({binary:"ruby"})].concat(w).concat(u).concat(_)}}return Tp=r,Tp}var Op,y3;function Gxe(){if(y3)return Op;y3=1;function e(t){const a={keyword:["break","default","func","interface","select","case","map","struct","chan","else","goto","package","switch","const","fallthrough","if","range","type","continue","for","import","return","var","go","defer","bool","byte","complex64","complex128","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:a,illegal:"e(i)).join("")}function r(s){const l=s[s.length-1];return typeof l=="object"&&l.constructor===Object?(s.splice(s.length-1,1),l):{}}function o(...s){return"("+(r(s).capture?"":"?:")+s.map(u=>e(u)).join("|")+")"}function a(s){const l={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:s.NUMBER_RE}]},i=s.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const u={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},d={className:"literal",begin:/\bon|off|true|false|yes|no\b/},f={className:"string",contains:[s.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},p={begin:/\[/,end:/\]/,contains:[i,d,u,f,l,"self"],relevance:0},_=o(/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/),g=n(_,"(\\s*\\.\\s*",_,")*",t(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:g,className:"attr",starts:{end:/$/,contains:[i,p,d,u,f,l]}}]}}return Mp=a,Mp}var Np,E3;function Xxe(){if(E3)return Np;E3=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,n="[0-9a-fA-F](_*[0-9a-fA-F])*",r={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function o(s,l,i){return i===-1?"":s.replace(l,u=>o(s,l,i-1))}function a(s){const l="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",i=l+o("(?:<"+l+"~~~(?:\\s*,\\s*"+l+"~~~)*>)?",/~~~/g,2),v={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},h={className:"meta",begin:"@"+l,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},m={className:"params",begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:[s.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:v,illegal:/<\/|#/,contains:[s.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE,s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,l],className:{1:"keyword",3:"title.class"}},{begin:[l,/\s+/,l,/\s+/,/=/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,l],className:{1:"keyword",3:"title.class"},contains:[m,s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",s.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:v,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:[h,s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,r,s.C_BLOCK_COMMENT_MODE]},s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]},r,h]}}return Np=a,Np}var Ap,C3;function Zxe(){if(C3)return Ap;C3=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],r=["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],o=["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],a=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],s=["arguments","this","super","console","window","document","localStorage","module","global"],l=[].concat(a,r,o);function i(p){return p?typeof p=="string"?p:p.source:null}function u(p){return d("(?=",p,")")}function d(...p){return p.map(h=>i(h)).join("")}function f(p){const v=(Z,{after:Y})=>{const ce="",end:""},_={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Z,Y)=>{const ce=Z[0].length+Z.index,ve=Z.input[ce];if(ve==="<"){Y.ignoreMatch();return}ve===">"&&(v(Z,{after:ce})||Y.ignoreMatch())}},g={$pattern:e,keyword:t,literal:n,built_in:l,"variable.language":s},b="[0-9](_?[0-9])*",y=`\\.(${b})`,w="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",C={className:"number",variants:[{begin:`(\\b(${w})((${y})|\\.)?|(${y}))[eE][+-]?(${b})\\b`},{begin:`\\b(${w})\\b((${y})\\b|\\.)?|(${y})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},S={className:"subst",begin:"\\$\\{",end:"\\}",keywords:g,contains:[]},O={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[p.BACKSLASH_ESCAPE,S],subLanguage:"xml"}},T={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[p.BACKSLASH_ESCAPE,S],subLanguage:"css"}},A={className:"string",begin:"`",end:"`",contains:[p.BACKSLASH_ESCAPE,S]},B={className:"comment",variants:[p.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:h+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),p.C_BLOCK_COMMENT_MODE,p.C_LINE_COMMENT_MODE]},V=[p.APOS_STRING_MODE,p.QUOTE_STRING_MODE,O,T,A,C,p.REGEXP_MODE];S.contains=V.concat({begin:/\{/,end:/\}/,keywords:g,contains:["self"].concat(V)});const H=[].concat(B,S.contains),U=H.concat([{begin:/\(/,end:/\)/,keywords:g,contains:["self"].concat(H)}]),K={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:g,contains:U},I={variants:[{match:[/class/,/\s+/,h],scope:{1:"keyword",3:"title.class"}},{match:[/extends/,/\s+/,d(h,"(",d(/\./,h),")*")],scope:{1:"keyword",3:"title.class.inherited"}}]},x={relevance:0,match:/\b[A-Z][a-z]+([A-Z][a-z]+)*/,className:"title.class",keywords:{_:[...r,...o]}},L={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},z={variants:[{match:[/function/,/\s+/,h,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[K],illegal:/%/},q={relevance:0,match:/\b[A-Z][A-Z_]+\b/,className:"variable.constant"};function le(Z){return d("(?!",Z.join("|"),")")}const G={match:d(/\b/,le([...a,"super"]),h,u(/\(/)),className:"title.function",relevance:0},ae={begin:d(/\./,u(d(h,/(?![0-9A-Za-z$_(])/))),end:h,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},be={match:[/get|set/,/\s+/,h,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},K]},te="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+p.UNDERSCORE_IDENT_RE+")\\s*=>",de={match:[/const|var|let/,/\s+/,h,/\s*/,/=\s*/,u(te)],className:{1:"keyword",3:"title.function"},contains:[K]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:g,exports:{PARAMS_CONTAINS:U},illegal:/#(?![$_A-z])/,contains:[p.SHEBANG({label:"shebang",binary:"node",relevance:5}),L,p.APOS_STRING_MODE,p.QUOTE_STRING_MODE,O,T,A,B,C,x,{className:"attr",begin:h+u(":"),relevance:0},de,{begin:"("+p.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[B,p.REGEXP_MODE,{className:"function",begin:te,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:p.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:g,contains:U}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:m.begin,end:m.end},{begin:_.begin,"on:begin":_.isTrulyOpeningTag,end:_.end}],subLanguage:"xml",contains:[{begin:_.begin,end:_.end,skip:!0,contains:["self"]}]}]},z,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+p.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[K,p.inherit(p.TITLE_MODE,{begin:h,className:"title.function"})]},{match:/\.\.\./,relevance:0},ae,{match:"\\$"+h,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[K]},G,q,I,be,{match:/\$[(.]/}]}}return Ap=f,Ap}var Rp,S3;function Jxe(){if(S3)return Rp;S3=1;function e(t){const n={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},r={match:/[{}[\],:]/,className:"punctuation",relevance:0},o={beginKeywords:["true","false","null"].join(" ")};return{name:"JSON",contains:[n,r,t.QUOTE_STRING_MODE,o,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}return Rp=e,Rp}var xp,k3;function Qxe(){if(k3)return xp;k3=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,n="[0-9a-fA-F](_*[0-9a-fA-F])*",r={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function o(a){const s={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},l={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:a.UNDERSCORE_IDENT_RE+"@"},u={className:"subst",begin:/\$\{/,end:/\}/,contains:[a.C_NUMBER_MODE]},d={className:"variable",begin:"\\$"+a.UNDERSCORE_IDENT_RE},f={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[d,u]},{begin:"'",end:"'",illegal:/\n/,contains:[a.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[a.BACKSLASH_ESCAPE,d,u]}]};u.contains.push(f);const p={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+a.UNDERSCORE_IDENT_RE+")?"},v={className:"meta",begin:"@"+a.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[a.inherit(f,{className:"string"})]}]},h=r,m=a.COMMENT("/\\*","\\*/",{contains:[a.C_BLOCK_COMMENT_MODE]}),_={variants:[{className:"type",begin:a.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},g=_;return g.variants[1].contains=[_],_.variants[1].contains=[g],{name:"Kotlin",aliases:["kt","kts"],keywords:s,contains:[a.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),a.C_LINE_COMMENT_MODE,m,l,i,p,v,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:s,relevance:5,contains:[{begin:a.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[a.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[_,a.C_LINE_COMMENT_MODE,m],relevance:0},a.C_LINE_COMMENT_MODE,m,p,v,f,a.C_NUMBER_MODE]},m]},{className:"class",beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},a.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/,excludeBegin:!0,returnEnd:!0},p,v]},f,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` +`},h]}}return xp=o,xp}var Ip,$3;function eIe(){if($3)return Ip;$3=1;const e=i=>({IMPORTANT:{scope:"meta",begin:"!important"},HEXCOLOR:{scope:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[i.APOS_STRING_MODE,i.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:i.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],n=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],a=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse(),s=r.concat(o);function l(i){const u=e(i),d=s,f="and or not only",p="[\\w-]+",v="("+p+"|@\\{"+p+"\\})",h=[],m=[],_=function(B){return{className:"string",begin:"~?"+B+".*?"+B}},g=function(B,V,H){return{className:B,begin:V,relevance:H}},b={$pattern:/[a-z-]+/,keyword:f,attribute:n.join(" ")},y={begin:"\\(",end:"\\)",contains:m,keywords:b,relevance:0};m.push(i.C_LINE_COMMENT_MODE,i.C_BLOCK_COMMENT_MODE,_("'"),_('"'),u.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},u.HEXCOLOR,y,g("variable","@@?"+p,10),g("variable","@\\{"+p+"\\}"),g("built_in","~?`[^`]*?`"),{className:"attribute",begin:p+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},u.IMPORTANT);const w=m.concat({begin:/\{/,end:/\}/,contains:h}),C={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(m)},S={begin:v+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},{className:"attribute",begin:"\\b("+a.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:m}}]},O={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:b,returnEnd:!0,contains:m,relevance:0}},T={className:"variable",variants:[{begin:"@"+p+"\\s*:",relevance:15},{begin:"@"+p}],starts:{end:"[;}]",returnEnd:!0,contains:w}},A={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:v,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[i.C_LINE_COMMENT_MODE,i.C_BLOCK_COMMENT_MODE,C,g("keyword","all\\b"),g("variable","@\\{"+p+"\\}"),{begin:"\\b("+t.join("|")+")\\b",className:"selector-tag"},g("selector-tag",v+"%?",0),g("selector-id","#"+v),g("selector-class","\\."+v,0),g("selector-tag","&",0),u.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:"::("+o.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:w},{begin:"!important"}]},R={begin:p+`:(:)?(${d.join("|")})`,returnBegin:!0,contains:[A]};return h.push(i.C_LINE_COMMENT_MODE,i.C_BLOCK_COMMENT_MODE,O,T,R,S,A),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:h}}return Ip=l,Ip}var Lp,T3;function tIe(){if(T3)return Lp;T3=1;function e(t){const n="\\[=*\\[",r="\\]=*\\]",o={begin:n,end:r,contains:["self"]},a=[t.COMMENT("--(?!"+n+")","$"),t.COMMENT("--"+n,r,{contains:[o],relevance:10})];return{name:"Lua",keywords:{$pattern:t.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:a.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[t.inherit(t.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:a}].concat(a)},t.C_NUMBER_MODE,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{className:"string",begin:n,end:r,contains:[o],relevance:5}])}}return Lp=e,Lp}var Pp,O3;function nIe(){if(O3)return Pp;O3=1;function e(t){const n={className:"variable",variants:[{begin:"\\$\\("+t.UNDERSCORE_IDENT_RE+"\\)",contains:[t.BACKSLASH_ESCAPE]},{begin:/\$[@%e(l)).join("")}function n(a){const s=a[a.length-1];return typeof s=="object"&&s.constructor===Object?(a.splice(a.length-1,1),s):{}}function r(...a){return"("+(n(a).capture?"":"?:")+a.map(i=>e(i)).join("|")+")"}function o(a){const s=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],l=/[dualxmsipngr]{0,12}/,i={$pattern:/[\w.]+/,keyword:s.join(" ")},u={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:i},d={begin:/->\{/,end:/\}/},f={variants:[{begin:/\$\d/},{begin:t(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@][^\s\w{]/,relevance:0}]},p=[a.BACKSLASH_ESCAPE,u,f],v=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],h=(g,b,y="\\1")=>{const w=y==="\\1"?y:t(y,b);return t(t("(?:",g,")"),b,/(?:\\.|[^\\\/])*?/,w,/(?:\\.|[^\\\/])*?/,y,l)},m=(g,b,y)=>t(t("(?:",g,")"),b,/(?:\\.|[^\\\/])*?/,y,l),_=[f,a.HASH_COMMENT_MODE,a.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),d,{className:"string",contains:p,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[a.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[a.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+a.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[a.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:h("s|tr|y",r(...v,{capture:!0}))},{begin:h("s|tr|y","\\(","\\)")},{begin:h("s|tr|y","\\[","\\]")},{begin:h("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:m("(?:m|qr)?",/\//,/\//)},{begin:m("m|qr",r(...v,{capture:!0}),/\1/)},{begin:m("m|qr",/\(/,/\)/)},{begin:m("m|qr",/\[/,/\]/)},{begin:m("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[a.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return u.contains=_,d.contains=_,{name:"Perl",aliases:["pl","pm"],keywords:i,contains:_}}return Dp=o,Dp}var zp,N3;function oIe(){if(N3)return zp;N3=1;function e(t){const n={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},r=/[a-zA-Z@][a-zA-Z0-9_]*/,l={$pattern:r,keyword:["int","float","while","char","export","sizeof","typedef","const","struct","for","union","unsigned","long","volatile","static","bool","mutable","if","do","return","goto","void","enum","else","break","extern","asm","case","short","default","double","register","explicit","signed","typename","this","switch","continue","wchar_t","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","super","unichar","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["BOOL","dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"]},i={$pattern:r,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:l,illegal:"/,end:/$/,illegal:"\\n"},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+i.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:i,contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"\\."+t.UNDERSCORE_IDENT_RE,relevance:0}]}}return zp=e,zp}var Vp,A3;function aIe(){if(A3)return Vp;A3=1;function e(t){const n={className:"variable",begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*(?![A-Za-z0-9])(?![$])"},r={className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},o={className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},a=t.inherit(t.APOS_STRING_MODE,{illegal:null}),s=t.inherit(t.QUOTE_STRING_MODE,{illegal:null,contains:t.QUOTE_STRING_MODE.contains.concat(o)}),l=t.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/,contains:t.QUOTE_STRING_MODE.contains.concat(o)}),i={className:"string",contains:[t.BACKSLASH_ESCAPE,r],variants:[t.inherit(a,{begin:"b'",end:"'"}),t.inherit(s,{begin:'b"',end:'"'}),s,a,l]},u={className:"number",variants:[{begin:"\\b0b[01]+(?:_[01]+)*\\b"},{begin:"\\b0o[0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0x[\\da-f]+(?:_[\\da-f]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:e[+-]?\\d+)?"}],relevance:0},d={keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile enum eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list match|0 mixed new object or private protected public real return string switch throw trait try unset use var void while xor yield",literal:"false null true",built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException UnhandledMatchError ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Stringable Throwable Traversable WeakReference WeakMap Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass"};return{case_insensitive:!0,keywords:d,contains:[t.HASH_COMMENT_MODE,t.COMMENT("//","$",{contains:[r]}),t.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),t.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler"}),r,{className:"keyword",begin:/\$this\b/},n,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},t.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{className:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:d,contains:["self",n,t.C_BLOCK_COMMENT_MODE,i,u]}]},{className:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",relevance:0,end:";",contains:[t.UNDERSCORE_TITLE_MODE]},i,u]}}return Vp=e,Vp}var Bp,R3;function sIe(){if(R3)return Bp;R3=1;function e(t){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},t.inherit(t.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),t.inherit(t.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}return Bp=e,Bp}var Fp,x3;function lIe(){if(x3)return Fp;x3=1;function e(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}return Fp=e,Fp}var Hp,I3;function iIe(){if(I3)return Hp;I3=1;function e(u,...d){const f=Object.create(null);for(const p in u)f[p]=u[p];return d.forEach(function(p){for(const v in p)f[v]=p[v]}),f}function t(u){return u?typeof u=="string"?u:u.source:null}function n(u){return r("(?=",u,")")}function r(...u){return u.map(f=>t(f)).join("")}function o(u){const d=u[u.length-1];return typeof d=="object"&&d.constructor===Object?(u.splice(u.length-1,1),d):{}}function a(...u){return"("+(o(u).capture?"":"?:")+u.map(p=>t(p)).join("|")+")"}const s="[a-zA-Z]\\w*",l=function(u,d,f={}){const p=e({scope:"comment",begin:u,end:d,contains:[]},f);p.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const v=a("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return p.contains.push({begin:r(/[ ]+/,"(",v,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),p};l("//","$"),l("/\\*","\\*/"),l("#","$");function i(u){const h={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:["and","as","assert","async","await","break","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},m={className:"meta",begin:/^(>>>|\.\.\.) /},_={className:"subst",begin:/\{/,end:/\}/,keywords:h,illegal:/#/},g={begin:/\{\{/,relevance:0},b={className:"string",contains:[u.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[u.BACKSLASH_ESCAPE,m],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[u.BACKSLASH_ESCAPE,m],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[u.BACKSLASH_ESCAPE,m,g,_]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[u.BACKSLASH_ESCAPE,m,g,_]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[u.BACKSLASH_ESCAPE,g,_]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[u.BACKSLASH_ESCAPE,g,_]},u.APOS_STRING_MODE,u.QUOTE_STRING_MODE]},y="[0-9](_?[0-9])*",w=`(\\b(${y}))?\\.(${y})|\\b(${y})\\.`,C={className:"number",relevance:0,variants:[{begin:`(\\b(${y})|(${w}))[eE][+-]?(${y})[jJ]?\\b`},{begin:`(${w})[jJ]?`},{begin:"\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?\\b"},{begin:"\\b0[bB](_?[01])+[lL]?\\b"},{begin:"\\b0[oO](_?[0-7])+[lL]?\\b"},{begin:"\\b0[xX](_?[0-9a-fA-F])+[lL]?\\b"},{begin:`\\b(${y})[jJ]\\b`}]},S={className:"comment",begin:n(/# type:/),end:/$/,keywords:h,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},O={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:h,contains:["self",m,C,b,u.HASH_COMMENT_MODE]}]};return _.contains=[b,C,m],{name:"Python",aliases:["py","gyp","ipython"],keywords:h,illegal:/(<\/|->|\?)|=>/,contains:[m,C,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},b,S,u.HASH_COMMENT_MODE,{match:[/def/,/\s+/,s],scope:{1:"keyword",3:"title.function"},contains:[O]},{variants:[{match:[/class/,/\s+/,s,/\s*/,/\(\s*/,s,/\s*\)/]},{match:[/class/,/\s+/,s]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[C,O,b]}]}}return Hp=i,Hp}var Up,L3;function uIe(){if(L3)return Up;L3=1;function e(t){return{aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}return Up=e,Up}var Kp,P3;function cIe(){if(P3)return Kp;P3=1;function e(o){return o?typeof o=="string"?o:o.source:null}function t(o){const a=o[o.length-1];return typeof a=="object"&&a.constructor===Object?(o.splice(o.length-1,1),a):{}}function n(...o){return"("+(t(o).capture?"":"?:")+o.map(l=>e(l)).join("|")+")"}function r(o){const a=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,s=n(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),l=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,i=n(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:a,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[o.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",begin:"@examples",starts:{contains:[{begin:/\n/},{begin:/#'\s*(?=@[a-zA-Z]+)/,endsParent:!0},{begin:/#'/,end:/$/,excludeBegin:!0}]}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{begin:a},{begin:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",begin:/@[a-zA-Z]+/},{scope:"keyword",begin:/\\[a-zA-Z]+/}]}),o.HASH_COMMENT_MODE,{scope:"string",contains:[o.BACKSLASH_ESCAPE],variants:[o.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),o.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),o.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),o.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),o.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),o.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[l,s]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,s]},{scope:{1:"punctuation",2:"number"},match:[i,s]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,s]}]},{scope:{3:"operator"},match:[a,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:l},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:i},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}return Kp=r,Kp}var Wp,D3;function dIe(){if(D3)return Wp;D3=1;function e(o){return o?typeof o=="string"?o:o.source:null}function t(o){return n("(?=",o,")")}function n(...o){return o.map(s=>e(s)).join("")}function r(o){const a={className:"title.function.invoke",relevance:0,begin:n(/\b/,/(?!let\b)/,o.IDENT_RE,t(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",l=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","unsafe","unsized","use","virtual","where","while","yield"],i=["true","false","Some","None","Ok","Err"],u=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","panic!","file!","format!","format_args!","include_bin!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],d=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:o.IDENT_RE+"!?",type:d,keyword:l,literal:i,built_in:u},illegal:""},a]}}return Wp=r,Wp}var jp,z3;function fIe(){if(z3)return jp;z3=1;const e=l=>({IMPORTANT:{scope:"meta",begin:"!important"},HEXCOLOR:{scope:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[l.APOS_STRING_MODE,l.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:l.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],n=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],a=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();function s(l){const i=e(l),u=o,d=r,f="@[a-z-]+",p="and or not only",h={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b"};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[l.C_LINE_COMMENT_MODE,l.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+t.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+d.join("|")+")"},{className:"selector-pseudo",begin:"::("+u.join("|")+")"},h,{begin:/\(/,end:/\)/,contains:[i.CSS_NUMBER_MODE]},{className:"attribute",begin:"\\b("+a.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[h,i.HEXCOLOR,i.CSS_NUMBER_MODE,l.QUOTE_STRING_MODE,l.APOS_STRING_MODE,i.IMPORTANT]},{begin:"@(page|font-face)",keywords:{$pattern:f,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:p,attribute:n.join(" ")},contains:[{begin:f,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},h,l.QUOTE_STRING_MODE,l.APOS_STRING_MODE,i.HEXCOLOR,i.CSS_NUMBER_MODE]}]}}return jp=s,jp}var qp,V3;function pIe(){if(V3)return qp;V3=1;function e(t){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}return qp=e,qp}var Gp,B3;function hIe(){if(B3)return Gp;B3=1;function e(a){return a?typeof a=="string"?a:a.source:null}function t(...a){return a.map(l=>e(l)).join("")}function n(a){const s=a[a.length-1];return typeof s=="object"&&s.constructor===Object?(a.splice(a.length-1,1),s):{}}function r(...a){return"("+(n(a).capture?"":"?:")+a.map(i=>e(i)).join("|")+")"}function o(a){const s=a.COMMENT("--","$"),l={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},i={begin:/"/,end:/"/,contains:[{begin:/""/}]},u=["true","false","unknown"],d=["double precision","large object","with timezone","without timezone"],f=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],p=["add","asc","collation","desc","final","first","last","view"],v=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],h=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],m=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],_=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],g=h,b=[...v,...p].filter(O=>!h.includes(O)),y={className:"variable",begin:/@[a-z0-9]+/},w={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},C={begin:t(/\b/,r(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function S(O,{exceptions:T,when:A}={}){const R=A;return T=T||[],O.map(B=>B.match(/\|\d+$/)||T.includes(B)?B:R(B)?`${B}|0`:B)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:S(b,{when:O=>O.length<3}),literal:u,type:f,built_in:m},contains:[{begin:r(..._),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:b.concat(_),literal:u,type:f}},{className:"type",begin:r(...d)},C,y,l,i,a.C_NUMBER_MODE,a.C_BLOCK_COMMENT_MODE,s,w]}}return Gp=o,Gp}var Yp,F3;function vIe(){if(F3)return Yp;F3=1;function e(T){return T?typeof T=="string"?T:T.source:null}function t(T){return n("(?=",T,")")}function n(...T){return T.map(R=>e(R)).join("")}function r(T){const A=T[T.length-1];return typeof A=="object"&&A.constructor===Object?(T.splice(T.length-1,1),A):{}}function o(...T){return"("+(r(T).capture?"":"?:")+T.map(B=>e(B)).join("|")+")"}const a=T=>n(/\b/,T,/\w$/.test(T)?/\b/:/\B/),s=["Protocol","Type"].map(a),l=["init","self"].map(a),i=["Any","Self"],u=["actor","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],d=["false","nil","true"],f=["assignment","associativity","higherThan","left","lowerThan","none","right"],p=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],v=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],h=o(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),m=o(h,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),_=n(h,m,"*"),g=o(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),b=o(g,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),y=n(g,b,"*"),w=n(/[A-Z]/,b,"*"),C=["autoclosure",n(/convention\(/,o("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",n(/objc\(/,y,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],S=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function O(T){const A={match:/\s+/,relevance:0},R=T.COMMENT("/\\*","\\*/",{contains:["self"]}),B=[T.C_LINE_COMMENT_MODE,R],V={match:[/\./,o(...s,...l)],className:{2:"keyword"}},H={match:n(/\./,o(...u)),relevance:0},U=u.filter(ee=>typeof ee=="string").concat(["_|0"]),K=u.filter(ee=>typeof ee!="string").concat(i).map(a),I={variants:[{className:"keyword",match:o(...K,...l)}]},x={$pattern:o(/\b\w+/,/#\w+/),keyword:U.concat(p),literal:d},L=[V,H,I],z={match:n(/\./,o(...v)),relevance:0},q={className:"built_in",match:n(/\b/,o(...v),/(?=\()/)},le=[z,q],G={match:/->/,relevance:0},ae={className:"operator",relevance:0,variants:[{match:_},{match:`\\.(\\.|${m})+`}]},be=[G,ae],te="([0-9]_*)+",de="([0-9a-fA-F]_*)+",Z={className:"number",relevance:0,variants:[{match:`\\b(${te})(\\.(${te}))?([eE][+-]?(${te}))?\\b`},{match:`\\b0x(${de})(\\.(${de}))?([pP][+-]?(${te}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},Y=(ee="")=>({className:"subst",variants:[{match:n(/\\/,ee,/[0\\tnr"']/)},{match:n(/\\/,ee,/u\{[0-9a-fA-F]{1,8}\}/)}]}),ce=(ee="")=>({className:"subst",match:n(/\\/,ee,/[\t ]*(?:[\r\n]|\r\n)/)}),ve=(ee="")=>({className:"subst",label:"interpol",begin:n(/\\/,ee,/\(/),end:/\)/}),Ne=(ee="")=>({begin:n(ee,/"""/),end:n(/"""/,ee),contains:[Y(ee),ce(ee),ve(ee)]}),j=(ee="")=>({begin:n(ee,/"/),end:n(/"/,ee),contains:[Y(ee),ve(ee)]}),D={className:"string",variants:[Ne(),Ne("#"),Ne("##"),Ne("###"),j(),j("#"),j("##"),j("###")]},F={match:n(/`/,y,/`/)},Q={className:"variable",match:/\$\d+/},ge={className:"variable",match:`\\$${b}+`},ne=[F,Q,ge],Se={match:/(@|#)available/,className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:S,contains:[...be,Z,D]}]}},ye={className:"keyword",match:n(/@/,o(...C))},Te={className:"meta",match:n(/@/,y)},we=[Se,ye,Te],J={match:t(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:n(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,b,"+")},{className:"type",match:w,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:n(/\s+&\s+/,t(w)),relevance:0}]},_e={begin://,keywords:x,contains:[...B,...L,...we,G,J]};J.contains.push(_e);const De={match:n(y,/\s*:/),keywords:"_|0",relevance:0},$e={begin:/\(/,end:/\)/,relevance:0,keywords:x,contains:["self",De,...B,...L,...le,...be,Z,D,...ne,...we,J]},Pe={begin://,contains:[...B,J]},Ue={begin:o(t(n(y,/\s*:/)),t(n(y,/\s+/,y,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:y}]},ze={begin:/\(/,end:/\)/,keywords:x,contains:[Ue,...B,...L,...be,Z,D,...we,J,$e],endsParent:!0,illegal:/["']/},se={match:[/func/,/\s+/,o(F.match,y,_)],className:{1:"keyword",3:"title.function"},contains:[Pe,ze,A],illegal:[/\[/,/%/]},pe={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[Pe,ze,A],illegal:/\[|%/},Me={match:[/operator/,/\s+/,_],className:{1:"keyword",3:"title"}},W={begin:[/precedencegroup/,/\s+/,w],className:{1:"keyword",3:"title"},contains:[J],keywords:[...f,...d],end:/}/};for(const ee of D.variants){const Ee=ee.contains.find(at=>at.label==="interpol");Ee.keywords=x;const Ae=[...L,...le,...be,Z,D,...ne];Ee.contains=[...Ae,{begin:/\(/,end:/\)/,contains:["self",...Ae]}]}return{name:"Swift",keywords:x,contains:[...B,se,pe,{beginKeywords:"struct protocol class extension enum actor",end:"\\{",excludeEnd:!0,keywords:x,contains:[T.inherit(T.TITLE_MODE,{className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...L]},Me,W,{beginKeywords:"import",end:/$/,contains:[...B],relevance:0},...L,...le,...be,Z,D,...ne,...we,J,$e]}}return Yp=O,Yp}var Xp,H3;function mIe(){if(H3)return Xp;H3=1;function e(t){const n="true false yes no null",r="[\\w#;/?:@&=+$,.~*'()[\\]]+",o={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},a={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,a]},l=t.inherit(s,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i="[0-9]{4}(-[0-9][0-9]){0,2}",u="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",d="(\\.[0-9]*)?",f="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",p={className:"number",begin:"\\b"+i+u+d+f+"\\b"},v={end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},h={begin:/\{/,end:/\}/,contains:[v],illegal:"\\n",relevance:0},m={begin:"\\[",end:"\\]",contains:[v],illegal:"\\n",relevance:0},_=[o,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+r},{className:"type",begin:"!<"+r+">"},{className:"type",begin:"!"+r},{className:"type",begin:"!!"+r},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},p,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},h,m,s],g=[..._];return g.pop(),g.push(l),v.contains=g,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:_}}return Xp=e,Xp}var Zp,U3;function gIe(){if(U3)return Zp;U3=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],r=["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],o=["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],a=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],s=["arguments","this","super","console","window","document","localStorage","module","global"],l=[].concat(a,r,o);function i(v){return v?typeof v=="string"?v:v.source:null}function u(v){return d("(?=",v,")")}function d(...v){return v.map(m=>i(m)).join("")}function f(v){const h=(Y,{after:ce})=>{const ve="",end:""},g={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Y,ce)=>{const ve=Y[0].length+Y.index,Ne=Y.input[ve];if(Ne==="<"){ce.ignoreMatch();return}Ne===">"&&(h(Y,{after:ve})||ce.ignoreMatch())}},b={$pattern:e,keyword:t,literal:n,built_in:l,"variable.language":s},y="[0-9](_?[0-9])*",w=`\\.(${y})`,C="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",S={className:"number",variants:[{begin:`(\\b(${C})((${w})|\\.)?|(${w}))[eE][+-]?(${y})\\b`},{begin:`\\b(${C})\\b((${w})\\b|\\.)?|(${w})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},O={className:"subst",begin:"\\$\\{",end:"\\}",keywords:b,contains:[]},T={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[v.BACKSLASH_ESCAPE,O],subLanguage:"xml"}},A={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[v.BACKSLASH_ESCAPE,O],subLanguage:"css"}},R={className:"string",begin:"`",end:"`",contains:[v.BACKSLASH_ESCAPE,O]},V={className:"comment",variants:[v.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:m+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),v.C_BLOCK_COMMENT_MODE,v.C_LINE_COMMENT_MODE]},H=[v.APOS_STRING_MODE,v.QUOTE_STRING_MODE,T,A,R,S,v.REGEXP_MODE];O.contains=H.concat({begin:/\{/,end:/\}/,keywords:b,contains:["self"].concat(H)});const U=[].concat(V,O.contains),K=U.concat([{begin:/\(/,end:/\)/,keywords:b,contains:["self"].concat(U)}]),I={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:b,contains:K},x={variants:[{match:[/class/,/\s+/,m],scope:{1:"keyword",3:"title.class"}},{match:[/extends/,/\s+/,d(m,"(",d(/\./,m),")*")],scope:{1:"keyword",3:"title.class.inherited"}}]},L={relevance:0,match:/\b[A-Z][a-z]+([A-Z][a-z]+)*/,className:"title.class",keywords:{_:[...r,...o]}},z={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},q={variants:[{match:[/function/,/\s+/,m,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[I],illegal:/%/},le={relevance:0,match:/\b[A-Z][A-Z_]+\b/,className:"variable.constant"};function G(Y){return d("(?!",Y.join("|"),")")}const ae={match:d(/\b/,G([...a,"super"]),m,u(/\(/)),className:"title.function",relevance:0},be={begin:d(/\./,u(d(m,/(?![0-9A-Za-z$_(])/))),end:m,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},te={match:[/get|set/,/\s+/,m,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},I]},de="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+v.UNDERSCORE_IDENT_RE+")\\s*=>",Z={match:[/const|var|let/,/\s+/,m,/\s*/,/=\s*/,u(de)],className:{1:"keyword",3:"title.function"},contains:[I]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:b,exports:{PARAMS_CONTAINS:K},illegal:/#(?![$_A-z])/,contains:[v.SHEBANG({label:"shebang",binary:"node",relevance:5}),z,v.APOS_STRING_MODE,v.QUOTE_STRING_MODE,T,A,R,V,S,L,{className:"attr",begin:m+u(":"),relevance:0},Z,{begin:"("+v.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[V,v.REGEXP_MODE,{className:"function",begin:de,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:v.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:b,contains:K}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:_.begin,end:_.end},{begin:g.begin,"on:begin":g.isTrulyOpeningTag,end:g.end}],subLanguage:"xml",contains:[{begin:g.begin,end:g.end,skip:!0,contains:["self"]}]}]},q,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+v.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[I,v.inherit(v.TITLE_MODE,{begin:m,className:"title.function"})]},{match:/\.\.\./,relevance:0},be,{match:"\\$"+m,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[I]},ae,le,x,te,{match:/\$[(.]/}]}}function p(v){const h=e,m={beginKeywords:"namespace",end:/\{/,excludeEnd:!0},_={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"},g={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},b=["any","void","number","boolean","string","object","never","enum"],y=["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"],w={$pattern:e,keyword:t.concat(y),literal:n,built_in:l.concat(b),"variable.language":s},C={className:"meta",begin:"@"+h},S=(A,R,B)=>{const V=A.contains.findIndex(H=>H.label===R);if(V===-1)throw new Error("can not find mode to replace");A.contains.splice(V,1,B)},O=f(v);Object.assign(O.keywords,w),O.exports.PARAMS_CONTAINS.push(C),O.contains=O.contains.concat([C,m,_]),S(O,"shebang",v.SHEBANG()),S(O,"use_strict",g);const T=O.contains.find(A=>A.label==="func.def");return T.relevance=0,Object.assign(O,{name:"TypeScript",aliases:["ts","tsx"]}),O}return Zp=p,Zp}var Jp,K3;function _Ie(){if(K3)return Jp;K3=1;function e(a){return a?typeof a=="string"?a:a.source:null}function t(...a){return a.map(l=>e(l)).join("")}function n(a){const s=a[a.length-1];return typeof s=="object"&&s.constructor===Object?(a.splice(a.length-1,1),s):{}}function r(...a){return"("+(n(a).capture?"":"?:")+a.map(i=>e(i)).join("|")+")"}function o(a){const s={className:"string",begin:/"(""|[^/n])"C\b/},l={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i=/\d{1,2}\/\d{1,2}\/\d{4}/,u=/\d{4}-\d{1,2}-\d{1,2}/,d=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,f=/\d{1,2}(:\d{1,2}){1,2}/,p={className:"literal",variants:[{begin:t(/# */,r(u,i),/ *#/)},{begin:t(/# */,f,/ *#/)},{begin:t(/# */,d,/ *#/)},{begin:t(/# */,r(u,i),/ +/,r(d,f),/ *#/)}]},v={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},h={className:"label",begin:/^\w+:/},m=a.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),_=a.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[s,l,p,v,h,m,_,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[_]}]}}return Jp=o,Jp}var At=Ic;At.registerLanguage("xml",Vxe());At.registerLanguage("bash",Bxe());At.registerLanguage("c",Fxe());At.registerLanguage("cpp",Hxe());At.registerLanguage("csharp",Uxe());At.registerLanguage("css",Kxe());At.registerLanguage("markdown",Wxe());At.registerLanguage("diff",jxe());At.registerLanguage("ruby",qxe());At.registerLanguage("go",Gxe());At.registerLanguage("ini",Yxe());At.registerLanguage("java",Xxe());At.registerLanguage("javascript",Zxe());At.registerLanguage("json",Jxe());At.registerLanguage("kotlin",Qxe());At.registerLanguage("less",eIe());At.registerLanguage("lua",tIe());At.registerLanguage("makefile",nIe());At.registerLanguage("perl",rIe());At.registerLanguage("objectivec",oIe());At.registerLanguage("php",aIe());At.registerLanguage("php-template",sIe());At.registerLanguage("plaintext",lIe());At.registerLanguage("python",iIe());At.registerLanguage("python-repl",uIe());At.registerLanguage("r",cIe());At.registerLanguage("rust",dIe());At.registerLanguage("scss",fIe());At.registerLanguage("shell",pIe());At.registerLanguage("sql",hIe());At.registerLanguage("swift",vIe());At.registerLanguage("yaml",mIe());At.registerLanguage("typescript",gIe());At.registerLanguage("vbnet",_Ie());var bIe=At,W3=oe({props:{code:{type:String,required:!0},language:{type:String,default:""},autodetect:{type:Boolean,default:!0},ignoreIllegals:{type:Boolean,default:!0}},setup:function(e){var t=P(e.language);Ce(function(){return e.language},function(o){t.value=o});var n=$(function(){return e.autodetect||!t.value}),r=$(function(){return!n.value&&!Ic.getLanguage(t.value)});return{className:$(function(){return r.value?"":"hljs "+t.value}),highlightedCode:$(function(){var o;if(r.value)return console.warn('The language "'+t.value+'" you specified could not be found.'),e.code.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'");if(n.value){var a=Ic.highlightAuto(e.code);return t.value=(o=a.language)!==null&&o!==void 0?o:"",a.value}return(a=Ic.highlight(e.code,{language:t.value,ignoreIllegals:e.ignoreIllegals})).value})}},render:function(){return je("pre",{},[je("code",{class:this.className,innerHTML:this.highlightedCode})])}}),yIe={install:function(e){e.component("highlightjs",W3)},component:W3};window.hl=bIe;async function wIe(){const e=ib(KTe);e.use(WRe),e.use(MRe),e.use(Dn),e.use(z$e),e.use(yIe),R7e(e),e.mount("#app")}wIe();export{Y_ as $,N as A,fe as B,tt as C,He as D,Tn as E,qe as F,vt as G,Qn as H,me as I,pt as J,m1 as K,So as L,I7e as M,In as N,UTe as O,dLe as P,Pge as Q,iLe as R,_t as S,tn as T,cn as U,gbe as V,Nn as W,rbe as X,nbe as Y,Bge as Z,Wve as _,k as a,Fs as a$,nt as a0,Ke as a1,Mc as a2,c8e as a3,fLe as a4,C$e as a5,S8e as a6,S4e as a7,ACe as a8,NCe as a9,bCe as aA,_Ce as aB,ss as aC,VSe as aD,Jw as aE,z7e as aF,Q2e as aG,No as aH,QIe as aI,Ol as aJ,dEe as aK,Yke as aL,Zw as aM,El as aN,ft as aO,XIe as aP,kt as aQ,B2 as aR,N3e as aS,A3e as aT,M3e as aU,Pke as aV,$6 as aW,bn as aX,X3 as aY,RIe as aZ,_d as a_,Gw as aa,Je as ab,g1 as ac,P$e as ad,je as ae,b9e as af,Kn as ag,_9e as ah,Abe as ai,eEe as aj,Q5e as ak,Ame as al,Q8e as am,Wo as an,j8e as ao,p0e as ap,Jc as aq,c4e as ar,u4e as as,Pi as at,$t as au,lLe as av,bw as aw,F1e as ax,kr as ay,RSe as az,ke as b,jIe as b$,NIe as b0,au as b1,Ao as b2,nb as b3,$h as b4,mr as b5,fa as b6,Vn as b7,tu as b8,no as b9,f6 as bA,da as bB,Zs as bC,LIe as bD,Pc as bE,Vt as bF,Jn as bG,BIe as bH,Ar as bI,tS as bJ,ou as bK,Ut as bL,bh as bM,O6 as bN,sS as bO,aS as bP,oS as bQ,ch as bR,rS as bS,lo as bT,ct as bU,h6 as bV,b6 as bW,us as bX,IIe as bY,ba as bZ,wi as b_,qIe as ba,ib as bb,SS as bc,FIe as bd,CS as be,ZIe as bf,NS as bg,$Ie as bh,Sf as bi,rk as bj,DIe as bk,zIe as bl,PIe as bm,GIe as bn,Al as bo,CIe as bp,gd as bq,J3 as br,_h as bs,Md as bt,wl as bu,wk as bv,UIe as bw,JIe as bx,Fe as by,zS as bz,M as c,F2 as c$,yi as c0,U1 as c1,BC as c2,Js as c3,d6 as c4,kIe as c5,xt as c6,PS as c7,WIe as c8,SIe as c9,x$ as cA,O5e as cB,Ege as cC,ie as cD,Vge as cE,Zme as cF,Xme as cG,S5 as cH,Q_e as cI,wy as cJ,AE as cK,RE as cL,LRe as cM,pw as cN,Pye as cO,tLe as cP,Kue as cQ,eLe as cR,Dge as cS,EA as cT,HN as cU,z4e as cV,x7e as cW,yhe as cX,bhe as cY,eye as cZ,Jbe as c_,tc as ca,iS as cb,qt as cc,xIe as cd,Nl as ce,YIe as cf,DS as cg,En as ch,k6 as ci,tl as cj,vk as ck,Ad as cl,hk as cm,el as cn,VS as co,LC as cp,ZC as cq,AIe as cr,HIe as cs,VIe as ct,KIe as cu,MIe as cv,uLe as cw,Lb as cx,lf as cy,cm as cz,oe as d,Zbe as d0,ORe as d1,X as e,cLe as f,OIe as g,E as h,bt as i,nLe as j,uo as k,uMe as l,an as m,Et as n,io as o,TIe as p,$ as q,P as r,Ce as s,xe as t,c as u,rt as v,ue as w,We as x,ot as y,yt as z}; diff --git a/niucloud/public/admin/assets/index-67aac6ba.css b/niucloud/public/admin/assets/index-67aac6ba.css new file mode 100644 index 0000000..8425c71 --- /dev/null +++ b/niucloud/public/admin/assets/index-67aac6ba.css @@ -0,0 +1 @@ +@charset "UTF-8";.main-container[data-v-d460187a],.empty[data-v-d460187a]{min-height:calc(100vh - 84px)}.app-text[data-v-d460187a]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app-item:hover .with-ite[data-v-d460187a]{display:block}.el-form-item[data-v-d460187a]{margin-bottom:0!important} diff --git a/niucloud/public/admin/assets/index-6a9b5fd3.css b/niucloud/public/admin/assets/index-6a9b5fd3.css new file mode 100644 index 0000000..bf1db77 --- /dev/null +++ b/niucloud/public/admin/assets/index-6a9b5fd3.css @@ -0,0 +1 @@ +.page-item[data-v-559d67e5]{background-image:url(./iphone_bg-4466cbe7.png);background-color:var(--el-bg-color);background-size:100%}.page-item .popup-wrap[data-v-559d67e5]{display:none}.page-item:hover .popup-wrap[data-v-559d67e5]:not(.disabled){display:block!important} diff --git a/niucloud/public/admin/assets/index-6f9dcd22.js b/niucloud/public/admin/assets/index-6f9dcd22.js new file mode 100644 index 0000000..88e1965 --- /dev/null +++ b/niucloud/public/admin/assets/index-6f9dcd22.js @@ -0,0 +1 @@ +import{h as t,I as n,w as r,e as c,a0 as s,Q as a}from"./index-6010b07e.js";import{_}from"./_plugin-vue_export-helper-c27b6911.js";const i={};function m(p,f){const e=s("router-view"),o=a;return t(),n(o,{class:"w-screen h-screen min-w-[1200px]"},{default:r(()=>[c(e)]),_:1})}const w=_(i,[["render",m]]);export{w as default}; diff --git a/niucloud/public/admin/assets/index-7223a68e.css b/niucloud/public/admin/assets/index-7223a68e.css new file mode 100644 index 0000000..ba10db4 --- /dev/null +++ b/niucloud/public/admin/assets/index-7223a68e.css @@ -0,0 +1 @@ +.attachment-dialog .el-dialog__body{padding:0!important}.attachment-dialog .el-upload-list{position:absolute;z-index:5}.attachment-dialog .el-upload-list__item{background:var(--el-dialog-bg-color);box-shadow:var(--el-dialog-box-shadow)} diff --git a/niucloud/public/admin/assets/index-84ac6b46.css b/niucloud/public/admin/assets/index-84ac6b46.css new file mode 100644 index 0000000..0097055 --- /dev/null +++ b/niucloud/public/admin/assets/index-84ac6b46.css @@ -0,0 +1 @@ +.border-color[data-v-d1e847ea]{border-color:var(--el-color-primary)}.bg-color[data-v-d1e847ea]{background-color:var(--el-color-primary)}.text-color[data-v-d1e847ea]{color:var(--el-color-primary)}.bg-color1[data-v-d1e847ea]{background-color:var(--el-color-info-light-8)}[data-v-d1e847ea] .el-step.is-vertical .el-step__icon.is-icon{padding:8px 0;height:40px;background-color:#fff}[data-v-d1e847ea] .el-step__title{height:40px;line-height:40px!important} diff --git a/niucloud/public/admin/assets/index-8b6e5d32.css b/niucloud/public/admin/assets/index-8b6e5d32.css new file mode 100644 index 0000000..f7b45fa --- /dev/null +++ b/niucloud/public/admin/assets/index-8b6e5d32.css @@ -0,0 +1 @@ +.main-container[data-v-f3d3a727]{margin:0 84px}[data-v-f3d3a727] .profile-data .el-card__header{padding:0!important}[data-v-f3d3a727] .site .el-card__header{padding-left:0!important}.card-header>span[data-v-f3d3a727]{line-height:21px}.text-color[data-v-f3d3a727]{color:var(--el-menu-active-color)}[data-v-f3d3a727] .el-descriptions__body{background-color:#fbfbfb!important;padding:16px 34px 2px;border-bottom:solid 1px #e9ebf0}[data-v-f3d3a727] .el-descriptions__label{font-weight:600;color:#575657;line-height:20px}[data-v-f3d3a727] .el-descriptions__content{color:#666} diff --git a/niucloud/public/admin/assets/index-929f6bcc.css b/niucloud/public/admin/assets/index-929f6bcc.css new file mode 100644 index 0000000..359c7ed --- /dev/null +++ b/niucloud/public/admin/assets/index-929f6bcc.css @@ -0,0 +1 @@ +.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:after,.el-breadcrumb:before{display:table;content:""}.el-breadcrumb:after{clear:both}.el-breadcrumb__separator{margin:0 9px;font-weight:700;color:var(--el-text-color-placeholder)}.el-breadcrumb__separator.el-icon{margin:0 6px;font-weight:400}.el-breadcrumb__separator.el-icon svg{vertical-align:middle}.el-breadcrumb__item{float:left;display:flex;align-items:center}.el-breadcrumb__inner{color:var(--el-text-color-regular)}.el-breadcrumb__inner a,.el-breadcrumb__inner.is-link{font-weight:700;text-decoration:none;transition:var(--el-transition-color);color:var(--el-text-color-primary)}.el-breadcrumb__inner a:hover,.el-breadcrumb__inner.is-link:hover{color:var(--el-color-primary);cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover{font-weight:400;color:var(--el-text-color-regular);cursor:text}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}[data-v-7ef298d9] .el-drawer__header{margin-bottom:0!important}.layout-style>div[data-v-7ef298d9]:nth-child(2n+2){margin-right:0}.el-popper .el-dropdown-menu[data-v-b9b15f74]{width:150px}.layout-header[data-v-983f5350]{position:relative;z-index:5;box-shadow:0 0 4px #0091ff1a}.navbar-item[data-v-983f5350]{padding:0 8px}.navbar-item[data-v-983f5350]:hover{background-color:var(--el-bg-color-page)}.index-item[data-v-983f5350]{border:1px solid;border-color:var(--el-color-primary)}.index-item[data-v-983f5350]:hover{color:#fff;background-color:var(--el-color-primary)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center top}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transition:var(--el-transition-md-fade);transform-origin:center bottom}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transition:var(--el-transition-md-fade);transform-origin:top left}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);list-style:none;position:relative;margin:0;padding-left:0;background-color:var(--el-menu-bg-color);box-sizing:border-box}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu--horizontal{display:flex;flex-wrap:nowrap;border-bottom:solid 1px var(--el-menu-border-color);border-right:none}.el-menu--horizontal>.el-menu-item{display:inline-flex;justify-content:center;align-items:center;height:100%;margin:0;border-bottom:2px solid transparent;color:var(--el-menu-text-color)}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-menu-item:not(.is-disabled):focus,.el-menu--horizontal>.el-menu-item:not(.is-disabled):hover{background-color:#fff}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:0}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;border-bottom:2px solid transparent;color:var(--el-menu-text-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-bg-color-overlay)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{background-color:var(--el-menu-bg-color);display:flex;align-items:center;height:var(--el-menu-horizontal-sub-item-height);padding:0 10px;color:var(--el-menu-text-color)}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{outline:0;color:var(--el-menu-hover-text-color);background-color:var(--el-menu-hover-bg-color)}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding) * 2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{margin:0;vertical-align:middle;width:var(--el-menu-icon-width);text-align:center}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--popup{z-index:100;min-width:200px;border:none;padding:5px 0;border-radius:var(--el-border-radius-small);box-shadow:var(--el-box-shadow-light)}.el-menu .el-icon{flex-shrink:0}.el-menu-item{display:flex;align-items:center;height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);list-style:none;cursor:pointer;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:focus,.el-menu-item:hover{outline:0}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon]{margin-right:5px;width:var(--el-menu-icon-width);text-align:center;font-size:18px;vertical-align:middle}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{position:absolute;left:0;top:0;height:100%;width:100%;display:inline-flex;align-items:center;box-sizing:border-box;padding:0 var(--el-menu-base-level-padding)}.el-sub-menu{list-style:none;margin:0;padding-left:0}.el-sub-menu__title{display:flex;align-items:center;height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);list-style:none;cursor:pointer;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:focus,.el-sub-menu__title:hover{outline:0}.el-sub-menu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-menu-item,.el-sub-menu.is-disabled .el-sub-menu__title{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu .el-icon{vertical-align:middle;margin-right:5px;width:var(--el-menu-icon-width);text-align:center;font-size:18px}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{position:absolute;top:50%;right:var(--el-menu-base-level-padding);margin-top:-6px;transition:transform var(--el-transition-duration);font-size:12px;margin-right:0;width:inherit}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px var(--el-menu-base-level-padding);line-height:normal;font-size:12px;color:var(--el-text-color-secondary)}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{transition:var(--el-transition-duration-fast);opacity:0}.el-sub-menu .el-icon{width:auto}.el-sub-menu li{font-size:15px}.one-menu .aside-menu:not(.el-menu--collapse){background-color:transparent}.one-menu .aside-menu:not(.el-menu--collapse) .el-menu-item{margin-bottom:4px;height:40px;padding-left:12px!important;color:#ffffffb3;font-size:14px;border-radius:2px}.one-menu .aside-menu:not(.el-menu--collapse) .el-menu-item:hover{background-color:var(--el-color-primary);color:#fff}.one-menu .aside-menu:not(.el-menu--collapse) .el-menu-item.is-active{background-color:var(--el-color-primary)!important;color:#fff}.one-menu .aside-menu:not(.el-menu--collapse) .el-menu-item span{font-size:14px;margin-left:8px}.one-menu .el-menu{border:0}.one-menu .el-scrollbar{height:calc(100vh - 65px)}.two-menu .aside-menu:not(.el-menu--collapse){width:140px;border:0;padding-top:16px}.two-menu .aside-menu:not(.el-menu--collapse) .el-menu-item{height:36px;margin:0 8px 4px;padding:0 8px!important;border-radius:2px}.two-menu .aside-menu:not(.el-menu--collapse) .el-menu-item span{margin-left:8px;font-size:14px}.two-menu .aside-menu:not(.el-menu--collapse) .el-menu-item.is-active{background-color:var(--el-color-primary-light-9)!important}.two-menu .aside-menu:not(.el-menu--collapse) .el-menu-item:hover{background-color:#f7f7f7;color:var(--el-color-primary)}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu{margin-bottom:8px}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu .el-sub-menu__title{margin:0 8px 4px;height:36px;padding-left:8px;border-radius:2px}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu .el-sub-menu__title span{height:36px;display:flex;align-items:center;font-size:14px}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu .el-sub-menu__title:hover{background-color:#f7f7f7;color:var(--el-color-primary)}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu .el-sub-menu__title .el-icon.el-sub-menu__icon-arrow{right:5px}.two-menu .aside-menu:not(.el-menu--collapse) .el-sub-menu .el-menu-item{padding-left:20px!important}.logo-wrap{padding:0;display:flex;white-space:nowrap;align-items:center}.logo-wrap .logo{height:100%;box-sizing:border-box}.logo-wrap .logo-title{flex:1;width:0;text-overflow:ellipsis;overflow:hidden;font-size:var(--el-font-size-base)}.layout-aside{background-color:var(--side-dark-color, var(--el-bg-color));border-right:1px solid var(--el-border-color-lighter)}.layout-aside.bright li.is-active:not(.is-opened){position:relative;color:var(--el-color-primary)}.aside-drawer .el-drawer__body{padding:0!important} diff --git a/niucloud/public/admin/assets/index-9519da76.js b/niucloud/public/admin/assets/index-9519da76.js new file mode 100644 index 0000000..0eb4c45 --- /dev/null +++ b/niucloud/public/admin/assets/index-9519da76.js @@ -0,0 +1 @@ +import{d as U,r as E,cK as q,cT as me,cU as fe,q as D,h as d,c as y,e as t,w as o,a as n,t as $,u as e,N as h,aQ as Y,aK as he,cC as xe,an as H,cV as ae,cW as J,K,n as ee,cQ as ve,i as F,ad as ge,aG as we,aS as ye,aT as be,aU as ke,W as $e,X as Se,Y as Ee,E as le,a7 as re,p as Ve,g as Ce,f as O,U as R,cR as De,cL as ce,v as Ie,I as k,G as A,F as C,B as T,y as te,cn as oe,A as B,cX as Re,cY as Te,al as Ue,am as Me,Q,O as Z,cZ as Pe,ag as Be,c_ as de,ac as se,s as ie,R as Le,c$ as We,cE as ue,V as je,d0 as Fe,Z as pe,cS as qe,cM as Ae,aZ as Ne,J as ze,a0 as He}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as N}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as G}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import{s as Ke}from"./personal-d4a3249e.js";/* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css */import{_ as Oe}from"./icon-addon-339e16d0.js";/* empty css */const Qe={class:"flex"},Ze={class:"setting-item flex items-center justify-between mb-[10px]"},Ge={class:"title text-base text-tx-secondary"},Xe={class:""},Ye={class:"setting-item flex items-center justify-between mb-[10px]"},Je={class:"title text-base text-tx-secondary"},et={class:""},tt=U({__name:"layout-setting",setup(u){const x=E(!1),f=q(),p=me(),g=fe(p),s=D({get(){return f.dark},set(a){f.setTheme("dark",a),g(a),J(f.theme,f.dark?"dark":"light")}}),b=D({get(){return f.theme},set(a){f.setTheme("theme",a),J(f.theme,f.dark?"dark":"light")}});return(a,r)=>{const w=N,v=he,c=xe,l=H,i=ae;return d(),y("div",Qe,[t(w,{name:"element-Setting",onClick:r[0]||(r[0]=m=>x.value=!0)}),t(i,{modelValue:x.value,"onUpdate:modelValue":r[3]||(r[3]=m=>x.value=m),title:e(h)("layout.layoutSetting"),size:"300px"},{default:o(()=>[t(l,null,{default:o(()=>[n("div",Ze,[n("div",Ge,$(e(h)("layout.darkMode")),1),n("div",Xe,[t(v,{modelValue:e(s),"onUpdate:modelValue":r[1]||(r[1]=m=>Y(s)?s.value=m:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),n("div",Ye,[n("div",Je,$(e(h)("layout.themeColor")),1),n("div",et,[t(c,{modelValue:e(b),"onUpdate:modelValue":r[2]||(r[2]=m=>Y(b)?b.value=m:null)},null,8,["modelValue"])])])]),_:1})]),_:1},8,["modelValue","title"])])}}});const ot=G(tt,[["__scopeId","data-v-7ef298d9"]]),z=u=>(Ve("data-v-b9b15f74"),u=u(),Ce(),u),st={class:"userinfo flex h-full items-center"},nt={class:"user-name pl-[8px]"},at=z(()=>n("div",{class:"flex items-center leading-[1] py-[5px]"},[n("span",{class:"iconfont iconqiehuan ml-[4px] !text-[14px] mr-[10px]"}),n("span",{class:"text-[14px]"},"切换站点")],-1)),lt=z(()=>n("div",{class:"flex items-center leading-[1] py-[5px]"},[n("span",{class:"iconfont iconshezhi1 ml-[4px] !text-[14px] mr-[10px]"}),n("span",{class:"text-[14px]"},"账号设置")],-1)),rt=z(()=>n("div",{class:"flex items-center leading-[1] py-[5px]"},[n("span",{class:"iconfont iconxiugai ml-[4px] !text-[14px] mr-[10px]"}),n("span",{class:"text-[14px]"},"修改密码")],-1)),ct=z(()=>n("div",{class:"flex items-center leading-[1] py-[2px]"},[n("span",{class:"iconfont icontuichudenglu !text-[21px] mr-[8px]"}),n("span",{class:"text-[14px]"},"退出登录")],-1)),dt={class:"form-tip"},it={class:"dialog-footer"},ut=U({__name:"user-info",setup(u){const x=K(),f=O(),p=v=>{switch(v){case"logout":x.logout();break}},g=v=>{f.push(v)},s=E(!1),b=E(),a=ee({original_password:"",password:"",password_copy:""}),r=ee({original_password:[{required:!0,message:h("originalPasswordPlaceholder"),trigger:"blur"}],password:[{required:!0,message:h("passwordPlaceholder"),trigger:"blur"}],password_copy:[{required:!0,message:h("passwordPlaceholder"),trigger:"blur"}]}),w=v=>{v&&v.validate(c=>{if(c){let l="";if(a.password&&!a.original_password&&(l=h("originalPasswordHint")),a.password&&a.original_password&&!a.password_copy&&(l=h("newPasswordHint")),a.password&&a.original_password&&a.password_copy&&a.password!=a.password_copy&&(l=h("doubleCipherHint")),l){ge({type:"error",message:l});return}Ke(a).then(i=>{s.value=!1})}else return!1})};return(v,c)=>{const l=we,i=N,m=ye,L=be,W=ke,I=$e,V=Se,M=Ee,P=le,j=re;return d(),y("div",null,[t(W,{onCommand:p,tabindex:1},{dropdown:o(()=>[t(L,null,{default:o(()=>[t(m,{onClick:c[0]||(c[0]=_=>g("/home/index"))},{default:o(()=>[at]),_:1}),t(m,{onClick:c[1]||(c[1]=_=>g("/user/center"))},{default:o(()=>[lt]),_:1}),t(m,{onClick:c[2]||(c[2]=_=>s.value=!0)},{default:o(()=>[rt]),_:1}),t(m,{command:"logout"},{default:o(()=>[ct]),_:1})]),_:1})]),default:o(()=>[n("div",st,[t(l,{size:25,icon:e(ve)},null,8,["icon"]),n("div",nt,$(e(x).userInfo.username),1),t(i,{name:"element-ArrowDown",class:"ml-[5px]"})])]),_:1}),t(j,{modelValue:s.value,"onUpdate:modelValue":c[8]||(c[8]=_=>s.value=_),width:"450px",title:"修改密码","before-close":v.handleClose},{footer:o(()=>[n("span",it,[t(P,{onClick:c[6]||(c[6]=_=>s.value=!1)},{default:o(()=>[F($(e(h)("cancel")),1)]),_:1}),t(P,{type:"primary",onClick:c[7]||(c[7]=_=>w(b.value))},{default:o(()=>[F($(e(h)("save")),1)]),_:1})])]),default:o(()=>[n("div",null,[t(M,{model:a,"label-width":"90px",ref_key:"formRef",ref:b,rules:r,class:"page-form"},{default:o(()=>[t(V,{label:e(h)("originalPassword"),prop:"original_password"},{default:o(()=>[t(I,{modelValue:a.original_password,"onUpdate:modelValue":c[3]||(c[3]=_=>a.original_password=_),type:"password",placeholder:e(h)("originalPasswordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),t(V,{label:e(h)("newPassword"),prop:"password"},{default:o(()=>[t(I,{modelValue:a.password,"onUpdate:modelValue":c[4]||(c[4]=_=>a.password=_),type:"password",placeholder:e(h)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"]),n("div",dt,$(e(h)("passwordTip")),1)]),_:1},8,["label"]),t(V,{label:e(h)("passwordCopy"),prop:"password_copy"},{default:o(()=>[t(I,{modelValue:a.password_copy,"onUpdate:modelValue":c[5]||(c[5]=_=>a.password_copy=_),type:"password",placeholder:e(h)("passwordPlaceholder"),clearable:"",class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])])]),_:1},8,["modelValue","before-close"])])}}});const pt=G(ut,[["__scopeId","data-v-b9b15f74"]]),_t={class:"left-panel h-full flex items-center"},mt={class:"flex items-center h-full pl-[10px] hidden-xs-only"},ft={class:"right-panel h-full flex items-center justify-end"},ht=["title"],xt={class:"navbar-item flex items-center h-full cursor-pointer"},vt={class:"navbar-item flex items-center h-full cursor-pointer"},gt={class:"dialog-footer"},wt=U({__name:"index",setup(u){const x=R.get("app_type");De();const f=q(),p=ce(),g=Z(),s=E(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth),b=D(()=>f.dark),a=E(!1),r=E(""),w=E("");R.get("comparisonTokenStorage")&&(r.value=R.get("comparisonTokenStorage")),R.get("comparisonSiteIdStorage")&&(w.value=R.get("comparisonSiteIdStorage")),document.addEventListener("visibilitychange",i=>{document.visibilityState==="visible"&&(w.value!=R.get("siteId")||r.value!=R.get("token"))&&(a.value=!0)});const v=()=>{a.value=!1,location.reload()};Ie(()=>{window.onresize=()=>(()=>{s.value=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth})()});const c=()=>{p.routeRefreshTag&&p.refreshRouterView()},l=D(()=>{const i=g.matched.filter(m=>m.meta.title);return i[0]&&i[0].path=="/"&&i.splice(0,1),i});return(i,m)=>{const L=N,W=Re,I=Te,V=Ue,M=Me,P=le,j=re,_=Q;return d(),k(_,{class:B(["h-full px-[10px]",{"layout-header border-b border-color":!e(b)}])},{default:o(()=>[t(M,{class:"w-100 h-full w-full"},{default:o(()=>[t(V,{span:12},{default:o(()=>[n("div",_t,[n("div",{class:"navbar-item flex items-center h-full cursor-pointer",onClick:c},[t(L,{name:"element-Refresh"})]),n("div",mt,[t(I,{separator:"/"},{default:o(()=>[(d(!0),y(C,null,A(e(l),(S,X)=>(d(),k(W,{key:X},{default:o(()=>[F($(S.meta.title),1)]),_:2},1024))),128))]),_:1})])])]),_:1}),t(V,{span:12},{default:o(()=>[n("div",ft,[e(x)=="site"?(d(),y("i",{key:0,class:"iconfont iconlingdang-xianxing cursor-pointer px-[8px]",title:e(h)("newInfo")},null,8,ht)):T("",!0),n("div",xt,[t(ot)]),n("div",vt,[t(pt)])])]),_:1})]),_:1}),te(n("input",{type:"hidden","onUpdate:modelValue":m[0]||(m[0]=S=>r.value=S)},null,512),[[oe,r.value]]),te(n("input",{type:"hidden","onUpdate:modelValue":m[1]||(m[1]=S=>w.value=S)},null,512),[[oe,w.value]]),t(j,{modelValue:a.value,"onUpdate:modelValue":m[2]||(m[2]=S=>a.value=S),title:e(h)("layout.detectionLoginTip"),width:"30%","close-on-click-modal":!1,"close-on-press-escape":!1,"show-close":!1},{footer:o(()=>[n("span",gt,[t(P,{onClick:v},{default:o(()=>[F($(e(h)("layout.detectionLoginOperation")),1)]),_:1})])]),default:o(()=>[n("span",null,$(e(h)("layout.detectionLoginContent")),1)]),_:1},8,["modelValue","title"])]),_:1},8,["class"])}}});const yt=G(wt,[["__scopeId","data-v-983f5350"]]);const bt={class:B(["ml-[10px]"])},kt={key:2,class:"!border-0 !border-t-[1px] border-solid mx-[25px] bg-[#f7f7f7] my-[5px]"},_e=U({__name:"menu-item",props:{routes:{type:Object,required:!0}},setup(u){const x=u,f=O(),g=K().siteInfo,s=D(()=>x.routes.meta),b=D(()=>{const a={};return g==null||g.apps.forEach(r=>{a[r.key]=r}),g==null||g.site_addons.forEach(r=>{a[r.key]=r}),a});return(a,r)=>{const w=Pe,v=Be,c=de;return e(s).show?(d(),y(C,{key:0},[u.routes.children?(d(),k(w,{key:0,index:String(u.routes.name)},{title:o(()=>[n("span",bt,$(e(s).title),1)]),default:o(()=>[(d(!0),y(C,null,A(u.routes.children,(l,i)=>(d(),k(_e,{routes:l,key:i},null,8,["routes"]))),128))]),_:1},8,["index"])):(d(),y(C,{key:1},[e(s).addon&&e(s).parent_route&&e(s).parent_route.addon==""?(d(),k(c,{key:0,index:String(u.routes.name),onClick:r[0]||(r[0]=l=>e(f).push({name:u.routes.name}))},{title:o(()=>[t(v,{placement:"right",effect:"light"},{content:o(()=>[F(" 该功能仅限"+$(e(b)[e(s).addon].title)+"使用 ",1)]),default:o(()=>[n("span",{class:B([{"text-[15px]":u.routes.meta.class==1},{"text-[14px]":u.routes.meta.class!=1},{"ml-[10px]":u.routes.meta.class==2,"ml-[15px]":u.routes.meta.class==3}])},$(e(s).title),3)]),_:1})]),_:1},8,["index"])):(d(),k(c,{key:1,index:String(u.routes.name),onClick:r[1]||(r[1]=l=>e(f).push({name:u.routes.name}))},{title:o(()=>[n("span",{class:B([{"text-[15px]":u.routes.meta.class==1},{"text-[14px]":u.routes.meta.class!=1},{"ml-[10px]":u.routes.meta.class==2,"ml-[15px]":u.routes.meta.class==3}])},$(e(s).title),3)]),_:1},8,["index"]))],64)),u.routes.is_border?(d(),y("div",kt)):T("",!0)],64)):T("",!0)}}});const $t={class:"w-[124px] px-[8px] bg-[#282c34] h-screen one-menu"},St={key:0,class:"logo flex items-center m-auto h-[64px]"},Et=["src"],Vt={key:1,class:"max-h-[40px] max-w-[40px] rounded-full",src:Oe,alt:""},Ct={key:1,class:"logo flex items-center justify-center h-[64px]"},Dt=n("i",{class:"text-3xl iconfont iconyunkongjian"},null,-1),It=[Dt],Rt={key:0,class:"w-[16px] h-[16px] relative flex justify-center"},Tt={class:"relative flex-1 w-0"},Ut={class:"ml-[10px] w-full truncate"},Mt=n("div",{class:"h-[48px]"},null,-1),Pt={class:"w-[140px] h-[64px] flex items-center justify-center text-[16px] border-0 border-b-[1px] border-solid border-[#eee]"},Bt=n("div",{class:"h-[48px]"},null,-1),ne=U({__name:"side",setup(u){const x=q(),f=K(),p=Z(),g=O(),s=f.siteInfo,b=f.routers,a=f.addonIndexRoute,r=E([]),w=E([]),v={};if(b.forEach(l=>{l.meta.addon==""?(l.children&&l.children.length&&(l.name=se(l.children)),r.value.push(l)):l.meta.addon!=""&&(s==null?void 0:s.apps.length)<=1&&(s==null?void 0:s.apps[0].key)==l.meta.addon?l.children?(l.children.forEach(i=>{i.path=`${l.path}/${i.path}`,i.children&&i.children.length&&(i.name=se(i.children))}),r.value.unshift(...l.children)):r.value.unshift(l):v[l.meta.addon]=l}),(s==null?void 0:s.apps.length)>1){const l=[];s==null||s.apps.forEach(i=>{var m;l.push({path:v[i.key]?v[i.key].path:"",meta:{icon:((m=v[i.key])==null?void 0:m.meta.icon)||"element-Setting",addon:i.key,title:i.title,app:i.app,show:!0},name:a[i.key]})}),r.value.unshift(...l)}const c=E(p.matched[1].path);return ie(p,()=>{(s==null?void 0:s.apps.length)>1?(w.value=p.matched[1].children,c.value=p.matched[1].path):p.meta.addon==""?(c.value=p.matched[1].path,w.value=p.matched[1].children??[]):p.meta.addon&&p.meta.addon!=(s==null?void 0:s.apps[0].key)?(c.value="/site/app",w.value=p.matched[1].children??[]):(c.value=p.matched[2].path,w.value=p.matched[2].children??[])},{immediate:!0}),(l,i)=>{const m=ue,L=je,W=N,I=de,V=Fe,M=H,P=pe,j=Q;return d(),k(j,{class:"w-100 h-screen"},{default:o(()=>[t(P,{class:"p-0 flex"},{default:o(()=>[n("div",$t,[t(m,{class:"logo-wrap"},{default:o(()=>[e(x).menuIsCollapse?(d(),y("div",Ct,It)):(d(),y("div",St,[e(s).logo?(d(),y("img",{key:0,class:"max-h-[40px] max-w-[40px] rounded-full",src:e(Le)(e(s).logo),alt:""},null,8,Et)):(d(),y("img",Vt))]))]),_:1}),t(M,{class:"h-[calc( 100vh - 64px )]"},{default:o(()=>[t(V,{"default-active":c.value,router:!0,class:"aside-menu","unique-opened":"true",collapse:e(x).menuIsCollapse},{default:o(()=>[(d(!0),y(C,null,A(r.value,(_,S)=>(d(),y(C,{key:S},[_.meta.show?(d(),k(I,{key:0,index:_.path,onClick:X=>e(g).push({name:_.name})},{title:o(()=>[n("div",Tt,[n("span",Ut,$(_.meta.short_title||_.meta.title),1)])]),default:o(()=>[_.meta.icon?(d(),y("div",Rt,[e(We)(_.meta.icon)?(d(),k(L,{key:0,class:"w-[16px] h-[16px] rounded-[50%] overflow-hidden",src:_.meta.icon,fit:"fill"},null,8,["src"])):(d(),k(W,{key:1,name:_.meta.icon,class:"absolute top-[50%] -translate-y-[50%]"},null,8,["name"]))])):T("",!0)]),_:2},1032,["index","onClick"])):T("",!0)],64))),128))]),_:1},8,["default-active","collapse"]),Mt]),_:1})]),w.value.length?(d(),k(M,{key:0,class:"two-menu w-[140px]"},{default:o(()=>[n("div",Pt,$(e(p).matched[1].meta.title),1),t(V,{"default-active":e(p).name,router:!0,class:"aside-menu",collapse:e(x).menuIsCollapse},{default:o(()=>[(d(!0),y(C,null,A(w.value,(_,S)=>(d(),k(_e,{routes:_,key:S},null,8,["routes"]))),128))]),_:1},8,["default-active","collapse"]),Bt]),_:1})):T("",!0)]),_:1})]),_:1})}}});const Lt=U({__name:"index",setup(u){const x=q(),f=D(()=>x.dark),p=Z();return ie(p,()=>{x.$patch(g=>{g.menuDrawer=!1})}),(g,s)=>{const b=qe,a=ae;return d(),y(C,null,[t(b,{class:B(["h-screen layout-aside w-auto",{bright:!e(f)}])},{default:o(()=>[t(ne,{class:"hidden-xs-only"})]),_:1},8,["class"]),t(a,{modelValue:e(x).menuDrawer,"onUpdate:modelValue":s[0]||(s[0]=r=>e(x).menuDrawer=r),direction:"ltr","with-header":!1,"custom-class":"aside-drawer",size:"210px"},{default:o(()=>[t(ne)]),_:1},8,["modelValue"])],64)}}});const Wt={class:"common-layout min-w-[1200px]"},jt={class:"p-[10px]"},io=U({__name:"index",setup(u){const x=ce(),f=Ae(),p=q(),g=D(()=>p.dark);return(s,b)=>{const a=ue,r=He("router-view"),w=H,v=pe,c=Q;return d(),y("div",Wt,[t(c,{class:"w-100 h-screen"},{default:o(()=>[t(Lt),t(c,null,{default:o(()=>[t(a,null,{default:o(()=>[t(yt)]),_:1}),t(v,{class:B(["main-wrap h-full p-0",{"bg-page":e(g)}])},{default:o(()=>[t(w,null,{default:o(()=>[n("div",jt,[e(x).routeRefreshTag?(d(),k(r,{key:0},{default:o(({Component:l,route:i})=>[(d(),k(Ne,{include:e(f).tabNames},[(d(),k(ze(l),{key:i.fullPath}))],1032,["include"]))]),_:1})):T("",!0)])]),_:1})]),_:1},8,["class"])]),_:1})]),_:1})])}}});export{io as default}; diff --git a/niucloud/public/admin/assets/index-9a7951a7.css b/niucloud/public/admin/assets/index-9a7951a7.css new file mode 100644 index 0000000..a5f7cb1 --- /dev/null +++ b/niucloud/public/admin/assets/index-9a7951a7.css @@ -0,0 +1 @@ +.upload-file .el-upload{width:100%} diff --git a/niucloud/public/admin/assets/index-9df14b44.css b/niucloud/public/admin/assets/index-9df14b44.css new file mode 100644 index 0000000..17e0d16 --- /dev/null +++ b/niucloud/public/admin/assets/index-9df14b44.css @@ -0,0 +1 @@ +.icon-wrap .operation[data-v-d7c3fb65]{display:none}.icon-wrap:hover .operation[data-v-d7c3fb65]{display:flex} diff --git a/niucloud/public/admin/assets/index-a1b2b247.css b/niucloud/public/admin/assets/index-a1b2b247.css new file mode 100644 index 0000000..e7f2aae --- /dev/null +++ b/niucloud/public/admin/assets/index-a1b2b247.css @@ -0,0 +1 @@ +[data-v-5d84d21f] .el-input__wrapper{border-radius:0}.border-color[data-v-5d84d21f]{border-color:var(--el-color-primary)}.text-color[data-v-5d84d21f]{color:var(--el-color-primary)}.home-item[data-v-5d84d21f]{box-shadow:0 2px 4px #a1a7b72e}.home-item .items-tab span[data-v-5d84d21f]{transform:scale(.9)}.home-item[data-v-5d84d21f]:hover{border-color:var(--el-color-primary)}.home-item:hover .title[data-v-5d84d21f]{color:var(--el-color-primary)}.home-item:hover .home-item-head[data-v-5d84d21f]{background-color:#a1a7b7}.home-item:hover .home-item-head span[data-v-5d84d21f]{color:#fff!important}.home-head[data-v-5d84d21f]{box-shadow:0 4px 8px #1c1f370a} diff --git a/niucloud/public/admin/assets/index-a690f53e.css b/niucloud/public/admin/assets/index-a690f53e.css new file mode 100644 index 0000000..d5473b7 --- /dev/null +++ b/niucloud/public/admin/assets/index-a690f53e.css @@ -0,0 +1 @@ +.verifybox{position:relative;box-sizing:border-box;border-radius:2px;border:1px solid #e4e7eb;background-color:#fff;box-shadow:0 0 10px #0000004d;left:50%;top:50%;transform:translate(-50%,-50%)}.verifybox-top{padding:0 15px;height:50px;line-height:50px;text-align:left;font-size:16px;color:#45494c;border-bottom:1px solid #e4e7eb;box-sizing:border-box}.verifybox-bottom{padding:15px;box-sizing:border-box}.verifybox-close{position:absolute;top:13px;right:9px;width:24px;height:24px;text-align:center;cursor:pointer}.mask{position:fixed;top:0;left:0;z-index:1001;width:100%;height:100vh;background:rgba(0,0,0,.3);transition:all .5s}.verify-tips{position:absolute;left:0px;bottom:0px;width:100%;height:30px;line-height:30px;color:#fff}.suc-bg{background-color:#5cb85c80;filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7f5CB85C,endcolorstr=#7f5CB85C)}.err-bg{background-color:#d9534f80;filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7fD9534F,endcolorstr=#7fD9534F)}.tips-enter,.tips-leave-to{bottom:-30px}.tips-enter-active,.tips-leave-active{transition:bottom .5s}.verify-code{font-size:20px;text-align:center;cursor:pointer;margin-bottom:5px;border:1px solid #ddd}.cerify-code-panel{height:100%;overflow:hidden}.verify-code-area{float:left}.verify-input-area{float:left;width:60%;padding-right:10px}.verify-change-area{line-height:30px;float:left}.varify-input-code{display:inline-block;width:100%;height:25px}.verify-change-code{color:#337ab7;cursor:pointer}.verify-btn{width:200px;height:30px;background-color:#337ab7;color:#fff;border:none;margin-top:10px}.verify-bar-area{position:relative;background:#FFFFFF;text-align:center;box-sizing:content-box;border:1px solid #ddd;-webkit-border-radius:4px}.verify-bar-area .verify-move-block{position:absolute;top:0px;left:0;background:#fff;cursor:pointer;box-sizing:content-box;box-shadow:0 0 2px #888;-webkit-border-radius:1px}.verify-bar-area .verify-move-block:hover{background-color:#337ab7;color:#fff}.verify-bar-area .verify-left-bar{position:absolute;top:-1px;left:-1px;background:#f0fff0;cursor:pointer;box-sizing:content-box;border:1px solid #ddd}.verify-img-panel{margin:0;box-sizing:content-box;border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-radius:3px;position:relative}.verify-img-panel .verify-refresh{width:25px;height:25px;text-align:center;padding:5px;cursor:pointer;position:absolute;top:0;right:0;z-index:2}.verify-img-panel .icon-refresh{font-size:20px;color:#fff}.verify-img-panel .verify-gap{background-color:#fff;position:relative;z-index:2;border:1px solid #fff}.verify-bar-area .verify-move-block .verify-sub-block{position:absolute;text-align:center;z-index:3}.verify-bar-area .verify-move-block .verify-icon{font-size:18px}.verify-bar-area .verify-msg{z-index:3}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-check:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAIlFJREFUeNrt3X1cVNW6B/BnbcS3xJd7fLmSeo+op/Qmyp4BFcQEwpd8Nyc9iZppgUfE49u1tCwlNcMySCM1S81jCoaioiJvKoYgswfUo5wSJ69SZFKCKSAws+4f2/GetFFRYG3g9/2Hz2xj+O2J4Zm19trrIQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKgjmOgAAADwOBhz83TzdPNs397qanW1ujJ2s8fNHjd7FBTkhuSG5IbculVdP1kSfeoAAPBwdFzHdXzgQN0S3RLdkpgY2SJbZMvNm9It6ZZ064cfGmQ2yGyQmZfX3KO5R3OPwkJdsi5Zl5yYKIfL4XL4mDHqs7AqGzhgBAIAoFFdI7pGdI1o1KjFlhZbWmxZv149OmXK4z3r4cPEiROfOFExKSbFVFDwqM+EEQgAgMY8y5/lz/LGjZu3bt66eev9+9Wjj1s4bAYNIkaMWHKyx3mP8x7nmzd/1GdyEP1CAQCASifrZJ3s6FjmWuZa5rprF3uLvcXeGjq0en5au3a8nJfz8k6d8lPyU/JTYmIq+wwYgQAAaIIk0WgaTaO/+IJm0SyaNWJEtf/IPMqjvJde0g/QD9APcHOrdGIhrxMAANzGmJwr58q569ZRLMVS7MSJNfajFVJIYYy/wF/gL7z0UmW/vUGNvk4AAHCHTqfT6XQrVtB4Gk/jg4KEBfmBfqAf+vSp7LdhBAIAUMPUwvH66+oj21eBSqmUStu3r+y3oYAAANQQtXDMmKE+WrlSdB4bvpwv58t/+62y34cCAgBQzeSt8lZ568SJFEiBFLh2reg8d2MD2UA28PTpyn4fCggAQDXRh+pD9aEjR1IABVDA5s20ntbTeklzf3eZF/NiXvv2Vfb7NHciAAC1nRwsB8vBvr5Wf6u/1X/nTubO3Jl7A+0tWvImb/LOyemc3zm/c/6ePZX9dmxlAgBQRfTd9N303Tw8rFusW6xbEhPZLDaLzXJyEp3rHjNoBs24dYt/wj/hn3h5mUwmk8mkKJV9GoxAAAAekz5AH6APeOYZ6znrOeu5Awc0WzgCKZACrVZ2hB1hR15++VELhw1GIAAAj0hdVdWli/ooNVX9WvnlsNUflHSk45wbuZEbg4LUwrFhw+M+LUYgAACV1CuoV1CvoCef5Kv4Kr4qIUE9qsHCcRsv4AW8YOHCqiocNtq7qAMAoFHqZoetW9MgGkSDDh+mhbSQFnbuLDrX/YWGmmJMMaaYsLCqfmZMYQEAPIBt23PLp5ZPLZ8mJ9MROkJHdDrRueyKpViKXbdO6aB0UDoEB1fXj8EUFgCAHX0v973c93KTJpbvLd9bvt+3T+uFg0/mk/nkL79UC0dISHX/PIxAAADuYuvLwQ/xQ/zQnj1sKBvKhj7/vOhc9vA4HsfjYmOd2jm1c2o3btxRdpQdZRUV1f1zMQIBALjNYDAYDAYHB9pEm2jTl19qvXBQGIVRWFKSWjgmTKipwmGDi+gAAERExJhZZ9aZdZGRNJ2m0/Tx40UnssuHfMgnPb2koKSgpGD0aIUpTGGlpTUdAwUEAOo9XbguXBf+/vu0lbbS1ldfFZ3HrgE0gAacPu0423G24+xhw5SOSkel440bouKggABAvaXjOq7j77xDetKTfv580Xns8iIv8srNlfKkPClv8OD0jukd0zv++qvoWLiIDgD1jrpnVXAwb86b8+Yffyw6jz18NV/NV+flWQZaBloGenufYqfYKXbxouhcNriIDgD1hi5Zl6xLnjyZL+AL+ILwcNF57OpLfanv1atsPpvP5vv7a61w2GAEAgB1nrpn1ejRPJNn8szoaM1ur05EREVF6ldfX0VRFEUxmUQnskejLyAAwOPT79fv1+9/7jn+E/+J/7Rjh7YLR3ExceLEhw9XTIpJMWm3cNho9IUEAHh08hB5iDykb1/+M/+Z/7x7N0VSJEU2aiQ61z30pCd9WZl1inWKdcoLL2R5ZnlmeR4/LjrWw8I1EACoM+S2clu5rasr+yv7K/vrgQO0jtbRumbNROe6G4/kkTzSYqFMyqTMgAC1cBw6JDpXZaGAAECt1zukd0jvkG7daBftol2HD1MERVBEq1aic93jdl8O9gv7hf0SGKhOVUVHi471qFBAAKDW0hfri/XFHTs6cAfuwBMS2Bw2h81p1050LruepWfp2fnzlaHKUGXopk2i4zwuFBAAqHVcw1zDXMPatrWSlayUkEBplEZp//VfonPZw86ys+zsm28qE5WJysQPPxSdp6qggABAraHuktuiRYOgBkENgg4dYt7Mm3k/9ZToXHZNpIk0MTzcWGosNZYuXy46TlXDfSAAoHnqfRxNm6qP4uPVr/37i85l11gaS2M3b1YWK4uVxa+8oh7kXHSsqoYRCABoVo+oHlE9oho2pME0mAbHxKhHNVw4IimSImNiXLJdsl2yp09XD9a9wmGDAgIAmmPry9G4f+P+jfv/4x8UT/EUP3iw6Fz3d/hwUXpRelH6Sy9FR0dHR0dbLKITVTfcSAgAGsPYhT4X+lzos2EDG8FGsBHjxolOZA9fxBfxRWlpFeYKc4V57NjckNyQ3JBbt0Tnqim4BgIAmiEvkhfJiz78kMWzeBY/Z47oPPbwpXwpX5qdbRlmGWYZ5uOjbnZYWCg6V03DFBYACKdbq1urW7tiheYLRypP5anffluRU5FTkTN4cH0tHDYYgQCAMOqeVX//O7vKrrKra9aIzmMPP86P8+NmM/fjftzP2zsrLSstK+3HH0XnEg0jEACocXJXuavcdepU1ol1Yp00fGNdP+pH/X78UUqSkqQkf38Ujt9DAQGAGqMP0YfoQ154gbbTdtq+cSMppJDCtDcTwokTLyiwvGh50fKiv79xuHG4cbjZLDqW1mjvfxwA1DluZjezm3nECMkgGSTD11+rRx0dRee6G8/gGTzj+nU+gA/gA/z81BGH0Sg6l1ZhBAIA1Ua9g9zHh/3MfmY/R0WpRzVYOE7yk/xkSYmUI+VIOSNHonA8HIxAAKDK6bvpu+m7eXhYt1i3WLckJrJZbBab5eQkOtcfKy9Xv44Zo7aQjYsTnai2cBAdAADqDn2APkAf8Mwz1gRrgjUhIYG9wF5gL7RsKTrXPQIpkAKtVlbMilnxpElKvBKvxO/eLTpWbYMRCAA8NnWqqksXddXSsWN0gk7QCWdn0bnuDao2dOJGbuTGoCCTyWQymTZsEB2rtsI1EAB4ZL2CegX1CnrySb6Kr+KrEhI0Wzhu4wW8gBcsXIjCUTWwFxYAVJral6N1axpEg2jQ4cO0kBbSws6dRee6v9BQU4wpxhQTFiY6SV2BKSwAeGge5z3Oe5xv3tzyreVby7dJSfQ2vU1v6/Wic9kVS7EUu26d0kHpoHQIDhYdp67BFBYAPFDfy30v973cpElFVkVWRdbevZovHJtpM23etk0tHCEhouPUVRiBAIBd6lSVoyMxYsRsq5SGDROdyx4ex+N4XGysUzundk7txo07yo6yo6yiQnSuugojEACwQ5L4dD6dT9+6VX2s3cJBYRRGYUlJauGYMAGFo2bUWAHps73P9j7b27Xr2bNnz549W7USfeIAYA9jslk2y+YNG9gmtoltmjBBdCJ7bA2dypVypVwZNUotHKWlonPVF1U+hfX7PW8CA9UtAnx9mQfzYB5Nmtz5Dz3IgzwKC+k1eo1ei4+naTSNpq1Zo5gUk2LKyBD9wgDUR/I5+Zx87oMP2CQ2iU2aO1d0HnvQ0EkbHruA9OK9eC/esmWD1AapDVK/+orm0ByaM2TIIz9hNEVT9IYNRfuL9hftDwmpby0iAUSQT8on5ZNLlrAZbAabsXSp6Dz28JV8JV/53XcVpypOVZzy9j694PSC0wt+/ll0rvrqkQuI15+8/uT1Jyen0smlk0snHz9Ox+gYHXN1rdp4KSnlE8onlE8YMUL9Rbl5U/QLBlCXqBfJQ0LUi+Th4aLz3N+lS+o2697e6kzFpUuiE9V3j3wNpHR26ezS2ZGR1VM4bHx8HHs59nLsdeBAj6geUT2imjUT9UIB1CVylBwlR738MulJT/qPPhKdxx6+hq/ha65ckWKlWCnW3x+FQ1sqPQJxN7gb3A29e1tbWVtZW5lMNdUQhifxJJ70zTdNujTp0qTL0KHf/PLNL9/88ttvYl42gNrJ7Te339x+GzuW5bAclhMVpU5ZOWhvU9UQCqGQa9es063TrdN9fLLKs8qzyk+dEh0Lfq/SIxBrf2t/a/+JE2u6kxjzY37Mz8ur9OXSl0tfTklRb2z6j/+o2ZcLoHZyi3aLdov285N2Sjulndu3a7ZwEBFRcTFP4Ak8YdQoFA5tq/wU1l/oL/QXLy9hiY/QETqi05U1L2te1vzgQdtFfGF5ADRMX6wv1hd7eqo9vWNjKZIiKbJRI9G57jGDZtCMW7fYUraULR01yrTNtM20LTVVdCy4v0qPINSLbrm56kW3Ll1EnwAtpaW01Ggse6PsjbI3Bg06c+bMmTNnrl0THQtApDtTza2tra2tU1LoJJ2kk9r7oMUzeSbPrKhg7syduRsMakOnPXtE54KHU+kRCF/Gl/FlGrr2cHtPHseVjisdVyYn39klFKAe6h3SO6R3SLduln9Y/mH5x8GDWi0ctr4cLJ7Fs/igIBSO2qnyU1i9qTf1zskRHfxu7G32Nnu7d2+1oCQmopBAfaL+vnfqJIVJYVJYUhLrx/qxfv/5n6Jz2cNSWApLCQlRhipDlaGbNonOA4+m8gWkM3WmzrGxooPbtYyW0bJevdQptuRk1zDXMNewtm1FxwKoDrYtgugNeoPeSExknsyTeXbsKDqXPewsO8vOvvmm8bzxvPH82rWi88DjqXQB6TK6y+guo3ftosW0mBafOyf6BO6vZ0/Hrxy/cvzq6FE3TzdPN0/tdkoDqAx1xNGiRfmI8hHlIw4epPfoPXqvWzfRueyaSBNpYni4sdRYaixdvlx0HKgaj7wMV5ZlWZZ1OsYYY+zYMfVo06aiT8genspTeeq331rmWuZa5vr5nfr01KenPv3hB9G5ACpD7T1ue5/Fx6tf+/cXncuusTSWxm7erCxWFiuLX3lFPci56FhQNR75TnS1p7Ci8Ml8Mp8cEKAeLS8XfUL2MG/mzbyfesphrMNYh7HJybZezqJzATyMrhFdI7pGNGrE5/F5fJ5tClm7hYNP49P4tB071MIxbdrtoygcdUyV3Qioy9Pl6fKef57n8Tye9/XXbCabyWY2biz6BO1aQAtowcWLFeMrxleMt+3mefGi6FgA/85gMBgMBgcH8wXzBfOFr75Sr+0ZDKJz3d/hw0VTiqYUTRk5Epuh1m1Vfie5foN+g37D0KFWV6ur1TUmRvOFxJM8yfN//9fhosNFh4s+Pif3ndx3ct/334uOBfD/fTk2bmQGZmAG2yd57bH15agwV5grzIMGYfPT+qHatiKRF8mL5EWDB1MohVLo7t339APRJNsmbb6+6rr0CxdEJ4L6SX3/fPihep/EnDmi89iDvhz1W7V1JDStMK0wrYiPV+8wHT1abSxVUiL6hO+vUyeextN4WkqKW5pbmlta166iE0H9oivVlepKly/XfOG4vSilIqcipyJn8GAUjvqp2lvaqtsvHz6sbss8ZAjNpJk088YN0Sduj20dPbvFbrFbKSm2O3tF54K6TU6UE+XE2bPJi7zIa9Ei0Xns4cf5cX7cbObP8ef4c76+aOhUv9XYbro2coAcIAd4e9Pf6G/0t7g4NovNYrOcnES/EPbwE/wEP/HTT9Z0a7o13c8ve0D2gOwBWr//BWoLW18OlsgSWeLnn9f0LtcPrR/1o34//siGsCFsiLe3cbhxuHG42Sw6FohV7SOQu9l22WTBLJgFP/88/5h/zD/W0N5ad7FtCSGRRBIlJ7uvdV/rvva//1t0LqjdbH056M/0Z/rzZ59ptnBw4sQLCqSnpaelpwcNQuGAf1fjBcRGndo6flzqLfWWeg8ZwjN4Bs+4fl30C2IPm8PmsDnt2llbWFtYW9g2bezZU3QuqF3U35tBg7Tel8P2frQ2tja2Nh46NDM4Mzgz+OxZ0blAW4QVEBtjU2NTY9O0NPIgD/Lw9eXhPJyH//qr6Fx2fUQf0Udt26pD+qQkua3cVm5bXS19oa6w9eVQf89jYrTal8O22IU5MAfmMGpUVlpWWlaa0Sg6F2iT5obM6lYNsqwWkoQENpvNZrM13HnQ1npzvXW9df2gQXjDwb+rLX05VLadJMaMUZexx8WJTgTaJnwEcjf1F9dkkhZJi6RFzz3H03k6T//lF9G57IqgCIpo1UrqJfWSeiUkuHd27+ze2d1ddCwQSx+qD9WHPvWUdaR1pHVkfLxmC0cgBVKg1cq6s+6s++TJKBxQGZobgdztzie4C9YL1gsJCepWDhru8+FBHuRRWEgZlEEZQ4ao13oyMkTHgpqh36/fr9/v4sIP8UP8UGoqnaATdEKDu0DfbujEjdzIjUFB6t52GzaIjgW1i+YLiI26aqV7d9aINWKNkpO13jBHVVTE2/A2vM2QIaZDpkOmQ+npohNB9bC1C2BJLIklpaay/qw/6+/iIjqXPczMzMy8cKHxmvGa8dr774vOA7WT5qaw7MlyynLKcsrJUQuHj496ND9fdK77a9GCXWVX2dVDh9wC3QLdAvv1E50Iqpat86U0X5ovzU9I0HrhUIWGonBAVag1BcRGnaP917/UR76+thucROe6vxYtJCYxiSUk6LiO6/jAgaITwePxOO9x3uN88+ZqB8yDB2k5LaflPXqIzmVXLMVS7Lp16vtnyRLRcaBuqDVTWPbYLlZyF+7CXZKS6EP6kD7UcJ8Pd3In95s3eQPegDcYOdK01rTWtDY5WXQseDh9L/e93PdykyZlT5Q9UfbEgQPMn/kzfw1/INhMm2nztm1KT6Wn0nPKFPWg1So6FtQNtb6A2Nj2rJLGSGOkMcnJbD6bz+Z36CA61/0VF1tft75ufX3kyCxDliHLkJQkOhH8MXWqytFRXcSxe7d6dNgw0bns4XE8jsfFxjq1c2rn1G7cuKPsKDvKKipE54K6pdZNYdmTHZEdkR1x/rxloGWgZaC3N1/FV/FVWu/r0bSp9J70nvTe3r26Ql2hrtDfX3Qi+COSxKfz6Xz61q3qY+0WDgqjMApLSlILx4QJKBxQnepMAbGxdRbk2TybZ/v42HYPFZ3r/po2pV20i3bt2yevkFfIK4YPF50IiIgY05l1Zp05MpJtYpvYpgkTRCeyy4d8yCc9vaSgpKCkYPRotXCUloqOBXVbnZnCskedeujUSX2UnKxOQXTpIjqXXXrSk76sjHVgHVgHg8H4lvEt41t794qOVd/I8+R58rxVq9gRdoQd+Z//EZ3n/s6ccdzjuMdxz8CB6R3TO6Z31PBWQFCn1LkRyN3UG/kuXWLH2XF23MdH7beQmys6l11GMpKxYUO1t3x0tO5fun/p/jVqlOhY9YW6lc5bb2m+cNz+PZZcJBfJZdAgFA4Qoc4XEBt108bLl6V8KV/K9/amxbSYFmu4r8ftQkJraA2tiYqSw+VwOXzMGNGx6ir5oHxQPvi3v6mPli0Tnccevpqv5qvz8irCK8Irwv39M6MzozOjf/pJdC6on+pNAbGxveEalDYobVDq68vf5e/ydzW8TfXtQsK2sq1s686dd/pIQJVQd1MOCGCX2WV2+eOPReexqy/1pb5Xr6qrC/39bdf6RMeC+q3eFRCbjJcyXsp46coVx2uO1xyv+fnxo/woP/rPf4rOdX+OjiyH5bCcqCh5q7xV3jpxouhEtdWdqcGf6Cf66YsvaD2tp/WSRt8PRUWUTumUPmTI72+kBRBLo2+YmmMrJBWRFZEVkX5+6tEzZ0TnsudOA6Kn6Wl6essW2ydo0blqC7dot2i3aD8/XsgLeeGOHcyduTP3Bg1E5/pjxcW8O+/Ou48YYdulWnQigH9X51dhVVbvY72P9T7Wpo3DbofdDrsTE+kYHaNj2m0YxSN5JI+0WNgNdoPdeOUVxVfxVXxt9yuAjboar08fCqZgCk5MpHW0jtY1ayY61z1ur8KzTrFOsU4ZNSrLM8szy/PQIdGxAP5IvR+B3C17QPaA7AFXr5YlliWWJQ4cSEtpKS3VboMo24iEN+PNeLPPP5ej5Cg56uWXRefSClvrYR7BI3jEgQNaLRy2DwKUSZmUGRCAwgG1AUYgD9CL9+K9eMuWDtcdrjtcj49nvsyX+Xp4iM5l1+0+D6SQQsrMmerUR2Sk6Fg1zS3NLc0trWtXpmd6pk9N1ez2/7b/X2NoDI159VVlqDJUGbppk+hYAA8DI5AHUFe7FBZamluaW5oPHkycOHENN4hSSCGFMfUP07p18gB5gDxg5kzRsWqKuktuhw7SJemSdCkhQbOFw+ZZepaenT8fhQNqI4xAKkmdEmnRgnzJl3wPHaIUSqGUvn1F57If+PYnXH/yJ//ZsxWDYlAMGl6u+ojuXLuKcYhxiDl6lFIplVK7dxedyx52lp1lZ99801hqLDWWLl8uOg/Ao3AQHaC2yc/Pz8/Pv3WrzZg2Y9qM2bFDWiOtkdZ4erIv2Zfsyz//WXS+ewNTPuUzRiVUQiVDhjhzZ+7Mr11Tz0PDI6mHZCvoUrwUL8UnJNAlukSXtLvoQRURoVxWLiuXFy0SnQTgcaCAPKIrCVcSriSUl7dp3aZ1m9a7djn80+GfDv+0dRzs3Fl0vnvYCome9KQfMqR9m/Zt2rcpKsrPzc/Nz619rXbVLUeaNqXn6Dl67sAB+p6+p+81PBIcS2Np7ObNyjZlm7JtxgzRcQCqAq6BPKbTC04vOL3g5k310fDh6lSRhhtE3b5GorbaXbNGDpAD5IDa80m4R1SPqB5RDRvy2Xw2n71rFyVREiV5e4vOZVckRVJkTIxLtku2S/b06epBzkXHAqgKGIFUEXVKqLzcucS5xLlk1y4+j8/j8/r0YSfYCXZCuz2yWQErYAV+fs6hzqHOoRZL/t78vfl7jx0TnetuBoPBYDA4ONzYd2PfjX3bt7MMlsEytL7J5OHDRa2LWhe1Hjfu+AfHPzj+QXm56EQAVQkX0avJndanTcqalDWJjWWD2WA2WPsNo9T7Ed5+2+Rh8jB5aGVTQcZks2yWzRs3MgMzMMO0aaIT2cMX8UV8UVpahbnCXGEeNOj3I1SAugUFpJp1jega0TWiUaMW+hb6FvroaJpFs2jWiBGicz0I/4J/wb9YtcrkanI1ub7+uqgc8jn5nHzugw/YJDaJTZo7V/TrYg9fypfypdnZlmGWYZZhPj625d+icwFUJ1wDqWa5IbkhuSG3bpXkleSV5I0bx2fymXym9htEsalsKpu6cKF8Wj4tn37vvZr++bJJNsmm0FDNF46VfCVf+d13FTkVORU5gwejcEB9ghFIDbNdBG6yqsmqJqt27lSPjh4tOtcDJVESJYWFKS2VlkrL6mu0pC7LDQlRO0eGh4s+7fu7dEm9sdTb29a4THQigJqEEUgNO/fiuRfPvVhWpv7hefFF2yod0bkeyI/8yG/BAvUP/OrVVf306rLcKVPUZcYffST6dO3qR/2o348/sqVsKVvq44PCAfUZVmEJoq7aslr7F/Yv7F/49dfXrl27du1a167qv/bsKTqfXYwYMU/P9lPbT20/tUWL/NT81PzUw4cf9enuNMjqQ32oz7ZtbCPbyDZqsC8HJ068oEDyl/wlfz8/Y4AxwBjw3XeiYwGIpL03aj0THR0dHR1tsbi4uLi4uEyeTJtpM23etk10rgdh8Syexc+ZI+fKuXLuJ5/cPvrQU6K6Ql2hrtDfX9op7ZR2bt9+p8+JxvAMnsEzrl+3NrY2tjYeOjQzODM4M1jDHSwBahCugWiM7X6HC/0v9L/Q/4sv1Fa2kyaJzvVA0RRN0Rs2KC6Ki+Jiu9Paar37P9MX64v1xZ6efC6fy+cePqxuX/7EE6Lj342f5Cf5yZISJjGJSc8/rzCFKezIEdG5ALQEBUSjbIXEbDabzWbbLq1TpojO9UCcOPHPPlOvDQQGqgetVneDu8Hd0Lu3tbW1tbV1SgqdpJN0smVL0XH/mO2GvzFj1O3w4+JEJwLQIs1NGYDq3Llz586d41y9VrJ3r3OKc4pzSqdOFEMxFOPmJjqfXYwYMVluP6/9vPbzOnZ0/sX5F+dfvvvOusS6xLokMZF9zj5nn7duLTrmPQIpkAKtVlbMilnxpElKvBKvxO/eLToWgJZhBFKrSJK6Cmr9evUPtW1vJQ273aKVjGQkY8OGouPc4/Z293wYH8aHBQaaRplGmUZt3Cg6FkBtgAJSKzEmvyO/I78TEcH2sX1sX3Cw6ES1FTMzMzMvXGi8ZrxmvPb++6LzANQmmMKqpfKP5B/JP3LokLOzs7Ozc6tW6tE+fUTnql1CQxWzYlbM774rOglAbYRlvLUa5+pF3r//nQ7SQTqo4RvwtGI8jafxn3yivm5LloiOA1CbYQqrjtGV6kp1pcuXkxd5kVft6fNR7W7fX6P0VHoqPW2r2e5dZgwADw8jkDpGaaw0VhovXsw38o18I6ZmeByP43Gxsc2eafZMs2emTlWPonAAVAUUkDrKJJtkk/zWW/QqvUqvaqWvRw0KozAKS0pyaufUzqndhAlH2VF2lFVUiI4FUJeggNRxSpASpAS9/ba6jHbpUtF5qh0nTjwjo6SgpKCkYPRotXCUloqOBVAXoYDUE+pWHO+8QyEUQiHiGkRVrzNnHGMdYx1jn39e3fX4xg3RiQDqMizjrWfy9+Tvyd/zzTdPlj5Z+mRpSQm1olbUSvutdu3yIi/yys2VHCVHydHX9+T0k9NPTr96VXQsgPoAq7DqOfmYfEw+Nn8+m8PmsDlhYaLzPCy+mq/mq/PyLAMtAy0Dvb3VToAXL4rOBVCfYAqrnjMNMA0wDVi9mubSXJo7b57oPA/Ul/pS36tX2Xw2n83390fhABAHIxD4HV2sLlYXGxREcRRHcZ98QgoppDx8n4/qVVSkfvX1VW8ENJlEJwKoz3ANBH4nf0f+jvwdRmN73p635/n5LIgFsaBhw8QWkuJi3p13592HDTPFm+JN8RkZol8nAMAIBB5AjpVj5dhXX2VX2BV25dNPaT2tp/U10HL29i6+TMd0TDd6tPE142vG1w4eFP16AMD/QwGBh6I7qDuoOzhtGl2my3R5w4bqKiQ8kkfySItFHfn89a9qY6roaNHnDwD3QgGBSpG7yl3lrlOn0nbaTts3bqyqXua2wiEtk5ZJy6ZONe437jfu//JL0ecLAPbhGghUSv6v+b/m/5qd3b5N+zbt22RksLFsLBvbvz+lURqlVb5FLU/lqTz122+l36TfpN8MBuMc4xzjnL17RZ8nADwYlvHCIzGtMK0wrYiPbza+2fhm47t3V48uWcJX8pV85Xff2fu+3//7kiXXP7v+2fXPevUy9jT2NPY8elT0eQHAw8MUFlQL1zDXMNewJ55o2L1h94bd27UryynLKcu5cuX0gtMLTi+4eVN0PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAO/4PSBxbMqgmA24AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jaGVjay5zdmfbTpDYAAAAAElFTkSuQmCC);background-size:contain}.icon-close:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAADwRJREFUeNrt3V1sU+cZwPHndTAjwZ0mbZPKR/hKm0GqtiJJGZ9CIvMCawJoUksvOpC2XjSi4kMECaa2SO0qFEEhgFCQSqWOVWqJEGJJuyYYWCG9QCIOhQvYlgGCIFmatrVSUhzixO8ujNM1gSZOfPye857/7wYlfPg5xj5/n/fExyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABATizsWti1sCs/v6y0rLSsdMaMZ/Y8s+eZPZMnm54LQO6kn/fp/UB6v2B6LrdRpgcwZf7e+Xvn7505MxAIBAKBrVt1ja7RNdXVaqlaqpbOmTP0z+u9eq/ee/euFEqhFH7ySeCjwEeBj+rr299of6P9jb//3fT2AMhcWVlZWVnZ3Ln6uD6uj2/eLF3SJV1VVapW1ara6dOH/nn9hf5Cf3HzpupW3aq7qSl5LHkseay+/nLt5drLtbdvm96eXPNZQJQqn1Q+qXzS73+vN+gNesObb0q7tEv7xImZ/kv6kr6kL/X3q0PqkDpUXx/aFNoU2rRz53l1Xp1X/f2mtxTAcMv1cr1cT5jQfb37evf1ujrpkR7p2bxZ1agaVZOXl/E/WCM1UnP/vv5cf64/f+utjg87Puz4cPfu1G9qbXp7neaTgChVeqD0QOmBP/5RHVPH1LHf/CbrN1EplVLZ2iqt0iqtv/51NBqNRqP37pnecgDpI42CgtTz9OTJ1PO0sjLbt6PX6/V6/Z/+1LG5Y3PH5g0bHnzX2pBkXlyPKTtadrTs6Ouvq/fV++r9LVscu6EbckNuPPGEhCUs4UWLpsanxqfGT5yIxWKxWCyRMH0/AH40GI6whCXc3Cyn5bScDoeduj11RV1RV559dkrFlIopFX19sauxq7GrbW2m7wenBEwP4JT0OY7UV6+/nrMbjkhEIitWSIVUSEVLS0ljSWNJYyhk+v4A/GQwHHtkj+xpahp8XuaImqwmq8m7di2oXlC9oHr2bNP3h1OsDUhgfWB9YP2WLdIgDdLwgx/kfICzclbOLluW35Hfkd/x5z8PPqABOGbYEcd22S7bKypyPsiDc6v9df11/XWvvWb6fnGKtQHRj+nH9GOrV5ueY/CVz4MHNCEBsm9YOHJ8xPEo6og6oo64YD/k1PaZHiDbvruD/uYb0/MMUyEVUtHWFi+Pl8fLf/Wray9ee/Haiz09pscCvGjYUpWpI44RBE8FTwVPFRRcLLxYeLEwHjc9T7ZYdwSi2lSbavvxj03P8UgsbQHj5pqlqlFK9iZ7k70u3i+NkXUB6Tvcd7jv8H//a3qOEXGyHciY6ZPjYzXw0sBLAy95YL+UIeuWsNJK75feL71/545arBarxYWFpucZUVjCEj53LvWEqK7mfSTAt9x6jmNEi2WxLL59O3ooeih6aNYs0+Nkm3VHIIO6pEu6Pv3U9Bijxsl2YBjPhiOtUAql0EP7oQxZG5C8SXmT8ibt35++5IjpeUaNpS3As0tVabpBN+iGgQE5Lsfl+KFDpudxirUBuTT90vRL0//xj/S1qkzPkzFOtsOHvHZy/FFUsSpWxfv2pZai//Y30/M4xfpLmRR/VvxZ8Wd//Wvf7b7bfbd//vPBS454xU25KTdnz+YSKbCZ55eq0h5cE2/OB3M+mPPBb3977dq1a9eu2XstLGtPog+Vvp5/X1tfW19bU5N6V72r3v3FL0zPlTHeRwKLeOV9HCPaLbtl94UL8a/jX8e/fv55vzwvfROQNEICmEc47OC7gKQREiD3CIddfBuQNEICOI9w2Mn3AUkjJED2EQ67EZAhCAkwfoTDHwjIIxASIHOEw18IyAgICTAywuFPBGSUCAkwHOHwNwKSIUICEA6kEJAxIiTwI8KB/0dAxomQwA8IBx6GgGQJIYGNCAe+DwHJMkICGxAOjAYBcQghgRcRDmSCgDiMkMALCAfGgoDkCCGBGxEOjAcByTFCAjcgHMgGAmIIIYEJhAPZREAMIyTIBcIBJxAQlyAkcALhgJMIiMsQEmQD4UAuEBCXIiQYC8KBXCIgLkdIMBqEAyYQEI8gJHgYwgGTCIjHEBKIEA64AwHxKELiT4QDbkJAPI6Q+APhgBsREEsQEjsRDrgZAbEMIbED4YAXEBBLERJvIhzwEgJiOULiDYQDXkRAfIKQuBPhgJcREJ8hJO5AOGADAuJThMQMwgGbEBCfIyS5QThgIwICESEkTiEcsBkBwXcQkuwgHPADAoKHIiRjQzjgJwQE34uQjA7hgB8REIwKIXk4wgE/IyDICCFJIRwAAcEY+TUkhAP4FgHBuPglJIQDGI6AICtsDUl+XX5dfl0ySTiA4QgIsmrwlXpYwhJubpaIRCSyYoXpuTIWlrCEz50b/Nrr2xGRiESqq6PRaDQavXfP9FiwAwGBI6w5IvEqjjiQAwQEjiIkOUY4kEMEBDlBSBxGOGAAAUFOEZIsIxwwiIDACEIyToQDLkBAYBQhyRDhgIsQELgCIRkB4YALERC4CiEZgnDAxQgIXMn3ISEc8AACAlfzXUgIBzyEgMATrA8J4YAHERB4inUhIRzwsIDpAYBMJNYm1ibWKqUeV4+rx5X3XwCdkTNyxoLtgC/xwIUnWPN5HI/i8Ge2A04gIHA168MxFCGBhxAQuJLvwjEUIYEHEBC4iu/DMRQhgYsRELgC4RgBIYELERAYRTgyREjgIgQERhCOcSIkcAECgpwiHFlGSGAQAUFOEA6HERIYQEDgKMKRY4QEOURA4AjCYRghQQ7kmR4AdhkMR1jCEm5uliNyRI54MBxhCUv43DkpkiIpunVLbspNuTl7tumxRu2W3JJbM2cGC4IFwYKFC6fGp8anxk+ciMVisVgskTA9HuzAxRSRFcOOOCISkciKFabnylj66ril8dJ46Zo1wY3BjcGNVVV6m96mt505Y3q8jKX/HyqkQipaWkoaSxpLGkMh02PBDixhYVysWaoa4bLq1lxGnqUtZBEBwZj4JRxDERLgWwQEGfFrOIYiJAABwSgRjocjJPAzAoLvRThGh5DAjwgIHopwjA0hgZ8QEHwH4cgOQgI/ICAQEcLhFEICmxEQnyMcuUFIYCMC4lOEwwxCApsQEJ8hHO5ASGADAuIThMOdCAm8jIBYjnB4AyGBFxEQSxEObyIk8BICYhnCYQdCAi8gIJYgHHYiJHAzAuJxhMMfCAnciIB4FOHwJ0ICNyEgHkM4IEJI4A4ExCMIBx6GkMAkAuJyhAOjQUhgAgFxKcKBsSAkyCUC4jKEA9lASJALBMQlCAecQEjgJAJiGOFALhASOIGAGEI4YAIhQTYRkBwjHHADQoJsICA5QjjgRoQE4xEwPYDtbAtH4kriSuIKT1BbXCy8WHixMB6fuGzisonLVq/W2/Q2ve3MGdNzZeysnJWzy5blt+e357f/5S8ljSWNJY2hkOmxbMcRiENsDcfV7Ve3X93+zTemx4IzOCJBJghIlhEO2ICQYDQISJYQDtiIkOD7EJBxIhzwA0KChyEgY0Q44EeEBP+PgGSIcACEBCkEZJQIBzAcIfE3AjICwgGMjJD4EwF5BMIBZI6Q+AsBGYJwAONHSPyBgDxAOIDsIyR2831ACAfgPEJiJ98GhHAAuUdI7OK7gBAOwDxCYgffBIRwAO5DSLzN+oAs18v1cj1hQk95T3lP+aefpr77y1+anitje2SP7Dl7NhW+1auj0Wg0Gr13z/RYQDYMvsALS1jCzc0SkYhEVqwwPVfGKqVSKltbQ++E3gm9U1V1Xp1X51V/v+mxnGL9B0p1X+++3n29ri71FeEA3GjwcR2RiESqq1MhOXfO9FwZa5VWaa2s7DnYc7Dn4O7dpsdxmrUBKX+7/O3yt3/2M5krc2Xupk2m58lYeqkqmogmomvWEA74QfpxHtwY3BjcWFXl1U9I1Iv0Ir1o69b53fO753fPm2d6HqdYG5BkXjIvmbd1q3pOPaeemzDB9Dyjlj7i2Ck7ZeeqVZzjgB+lP2o3dU5kzRqvHZGoGlWjavLyAg2BhkDDa6+Znscp1gZEzVQz1cyqKtNzjBpLVcAwnl/aOi7H5biH9kMZsi4gCzoXdC7o/OEPZZ/sk33TppmeZ0QsVQEj8vbS1owZJY0ljSWNoZDpSbLNuoAMrBtYN7DuRz8yPceIWKoCMubVpa3Q/ND80HwP7JcyZF1ARIkS9e9/mx7jkTjiAMbNa0ckgUmBSYFJ//mP6Tmyzdr3gZTGS+Ol8Rs31FK1VC2dM8f0POkjjuCTwSeDT1ZXp19JmR4LsIFr30eyQ3bIjs7O6AvRF6IvFBebHifb7DsCeUA1qAbV0Nxseg7CATjPrSfb9VP6Kf2UC/ZDDrE2IMlkMplM7t8vNVIjNffv53yAIUtVhANwnluWtvRhfVgf7u1VL6uX1csHDpi+X5xibUAu116uvVx7+3bqqz/8IWc3nD7imBecF5y3ciUnx4HcM36yPSlJSb71VrQj2hHtuHPH9P3hlDzTAzgt1hRrijW1tU3ZMWXHlB1z5qgr6oq68uyzWb+h/bJf9re0BIuCRcGitWs54gDMi8VisVgskZganxqfGj9xInWtqvJyuSE35MYTT2T79vRJfVKfPHas4+mOpzuerq01vf1Osz4gabGWWEus5dSpaV9N+2raV4mE7JJdsmvJEmmXdmnP/J3q+pK+pC/190undErn3r1FkaJIUeR3vzv9yulXTr/S12d6ewF8Kx2S4gvFF4ovfPxxX29fb19vQYE+qo/qowsWqPfUe+q9QMYrMumlKlklq2TVm29+Nxxam95up1n7U1gjKSstKy0rnTFDr9Qr9cotW1SLalEtq1enfgy4qOjhf+vOHVkn62TdJ58M3B24O3C3vv7Lg18e/PJgZ6fp7QGQufQ18/QpfUqf2rw59d3nn0/9OmPGsL+wRJbIkn/+U7+qX9WvNjUFZgVmBWbV17cXtBe0F3R1md6eXPNtQB4l/fkEiTWJNYk1P/1p+n0lvF8D8I/BHwvWokX/5CehaCgaiv7rX6nLs/f2mp4PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtvsf2vlfs7i0WI4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDCiEb4vAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAw00wGkwAAAE10RVh0c3ZnOmJhc2UtdXJpAGZpbGU6Ly8vaG9tZS9hZG1pbi9pY29uLWZvbnQvdG1wL2ljb25fY2sxYnphMHpqOWpqZGN4ci9jbG9zZS5zdmdHkn2WAAAAAElFTkSuQmCC);background-size:contain}.icon-right:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;background-size:cover;z-index:9999;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAJ4pJREFUeNrt3XtcVXW6P/Dn2VwCBxUzNbnkkXRSGzXW2huQRLyMIqKRJF7Q1CkrDS+VGp3Gy9g5YzI6qVsNfTmlqGmipQiIiJqAcnOvhaKRHidshoatpKaBogL7OX+s6Mz8flO5CfzutXne/+zXWhR8QOXZ3+93Pd8vAHuAEKW10lpp7dix0mXpsnR5/34pX8qX8r/7TpZlWZaJGl//9f6+fY3/X+PnEf2dMMYY/yJqYcbbxtvG2/7+lEM5lLN7NyyCRbBowICmfj56m96mt/PzDZGGSEPkxImWNpY2ljYVFaK/T8ZY6+MiOoCzMn1t+tr09a9/TQfpIB0sLITlsByW9+r1Sz8v5mEe5vn7Q3toD+0nT/Y77Xfa73ROTuWNyhuVNyorRX/fjLHWg0cgzUybcmrThvIoj/JUFcMwDMOeeKLFvmA8xEN8TQ2sh/Ww/rnnFFVRFfXwYdE/B8aY8zOIDuBsqDf1pt6vvdbihaPRBtgAG7y8wAQmMKWlyflyvpw/aZLonwNjzPlxAWlWiOiN3ugdH//Av7QFLGBxd4dzcA7O7dgh75H3yHvmzBH9E2GMOS+ewmomplhTrCn2qads5bZyW3lJieg8jWgADaABf/yjul5dr65fvPj7uyQ6F2NM/3gE0kxsb9vetr3do4foHP8vLMACLPj977W1mS1bwimcwsnVVXQuxpj+cQFpLt/Ct/BtmzaiY/y0adNqltYsrVmakqIVEg8P0YkYY/rFj/E2E5+zPmd9znbpAggI+PzzovP8qItwES727n23w90OdzuEhfl86fOlz5f79lmtVqvVeveu6HiMMf3gEUgzqVfqlXqluFi7qqsTnefnYCImYmJ4OOVSLuWeONF/Zv+Z/Wf6+orOxRjTD15Eb2ZSlVQlVWVkYCRGYuSoUaLz3C86QSfoRHk5lVAJlURElISWhJaE/vWvonMxxhwXj0CaGT1Lz9KzS5eCDDLI+nnaCQfiQBwYEID1WI/1J05oi+6SJDoXY8xx8RpIM7tccbnickVlZdekrkldk4gwAzMwY8gQ0bnuF2ZhFmZ5eWkd7pMn+1T4VPhUKIq2RvLll6LzMcYcB09htShE6YJ0Qbqwdi3GYRzG6bCxbxbMgll372ojqilTlEAlUAncu1d0LMaYeDyF1aKI1CfUJ9Qn5s6FuTAX5r71lt6mtiAJkiDpoYeojuqo7uOP5VQ5VU6dOVN0LMaYeDwCecCkFClFSpk+HcbBOBi3eTOa0IQm/TX20RbaQlsSE9V+aj+131tvic7DGHvwuIAIIp+Xz8vno6OpJ/Wknrt2YRAGYZCnp+hcdpsAE2DC++8rbypvKm82TtHZbKJjMcZaHhcQwYxnjWeNZ8PDaTpNp+mpqdrd9u1F52qa/fu9LF4WL8ukSTmYgzl4547oRIyxlsNrIIJZ+lr6Wvrm5GBv7I29Bw6EN+ANeOMf/xCdq2mefbbGWGOsMR48GHQx6GLQxXbtRCdijLUcfozXQVSWVpZWllZV+df51/nX7dtH8RRP8aNGwQk4ASc6dhSdzz7du9NVukpXR4zoFNMpplPM/v1Xsq9kX8m+dUt0MsZY8+ERiIMpTitOK067dMm1zrXOtS4sTLurqqJz2e04HIfjsuw623W26+yCgsD8wPzAfMfbrZgx1nRcQBxUUVxRXFHclSu1CbUJtQnh4dpd/R1V+0OHuxGNaMzLazw3RXQuxtgvx4voOtEnpU9KnxR3d88yzzLPsu3bIQ3SIG38eNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdizFmPx6B6ETZ+LLxZePv3Qv4PODzgM/j4mg37abdGzeKzmW3YiiGYm9vHIyDcXB2tlwil8gl48aJjsUYsx+PQHROTpaT5eSEBDCDGcwrVojOYy9KoiRKamgAK1jBOmuWGq1Gq9GbN4vOxRj7eVxAnISUKWVKma++ihVYgRXr1sEm2ASbDPoZYTZu8bIJNsGmd95RUEEF//AH0bEYYz9OP79g2E9SI9VINfL996mWaql23DjaQBtog44a+RRQQEEEIxjBuHSptgml2ax9UEeFkLFWhEcgTko7z2PIECqiIiravx+DMRiD9drYt3MnEBDQ9OmKqqiK6vgnPjLWGvA7OyelKIqiKJ99pj31NHQovAavwWtVVaJzNU1cHKyCVbAqM/Ppjk93fLpj27aiEzHGeATSahjTjenG9IAAOkyH6XBWFpyEk3BSf419tISW0JJTp2wdbB1sHaKiTg86Pej0oG++EZ2LsdaIC0grozXyPfpow7SGaQ3TMjNxKS7FpTps7CMgoPPntYuICG1q6+9/Fx2LsdaEC0gr1Z/6U3/y9nZNcE1wTThwAI7CUTjauHWK3litVEEVVDFypFqlVqlVpaWiEzHWGvAaSCt1Bs/gGbxx46bfTb+bfsOHUxqlUZpej6rt2hVX4kpcefy4sYOxg7HD00+LTsRYa8AjEAYAALGxsbGxsS4u5XK5XC4nJcEe2AN7XnpJdK6muX1bex0/XnuYICNDdCLGnBEXEPZvIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeiczHmTPg8EPZvWZdZl1mXHT/uY/Yx+5ivX4cn4Ul4MiLih4Y/B4cZmIEZBgPchJtwc8wY33Lfct/y2trKO5V3Ku+cPCk6H2POwOF/ETDHoDUmxsVpV1u3aq9ubqJzNY3ZrE1tvf66ds1nuDPWFFxAmF0C9wTuCdwzbBj6oi/67tuHc3AOztFfYx9Npak0dft2TMZkTH7xRe5wZ8x+XEBYk5i6m7qbuptMtlG2UbZRGRlQCIVQ2KmT6Fx2i4RIiExPh0zIhMwJE7SRSeMiPGPsp3ABYb+INrXVq5d2lZWlvT72mOhcdiMgoKIi7WL0aG1EcvWq6FiMOTLuA2G/iPaOvbEjPCQEBsEgGKTDRj4EBAwOhkWwCBbl5BhvG28bb/v7i47FmCPjEQhrVn379u3bt2+HDm55bnlueWlpOAyH4TAdNvaFQiiE/u1v2Bk7Y+eICMtiy2LL4gsXRMdizJHwY7ysWVVVVVVVVd2545Ptk+2T/fHH2t3GvbZ+/WvR+e5bBVRAhbc3zaJZNCsu7lG3R90edcvLu6xcVi4rX38tOh5jjoCnsFiLaFyMDggICAgIiI6mPbSH9uivkQ/n4Tyc9/DDBjSgAbOzA/MD8wPzR44UnYsxR8BTWOwBQpTmS/Ol+StW4HE8jsfffFN0IrsZwQjGe/dgGkyDadOnK6FKqBK6a5foWIyJwFNY7IGyFlgLrAVHjnTd3nV71+03buDj+Dg+PmKEXjrcoRIqodLFBaqgCqpiYnzAB3ygpsZqtVqt1oIC0fEYe5C4gDAhrNus26zbiop8yZd86dIlqIEaqBk9Wvuoi+P/vbSCFayNBW/EiK5ZXbO6Znl6WpOsSdako0dFx2PsQXD8d3ysVZCWS8ul5aNH4yf4CX6ye7d2t00b0bmaJjnZy+Jl8bLMmJGDOZiD9fWiEzHWEriAMIciS7IkS8HB2lV6utaf8cgjonPZi+IpnuIPHHAf7j7cffjEiYX+hf6F/rW1onMx1pz4KSzmULQO8KKihjUNaxrWhIdTPuVTfkWF6Fz2wg24ATc888y9gnsF9woyM7XC2L696FyMNScuIMwhnR50etDpQWVltI7W0bqwMMqjPMrTXyMfJmIiJoaHUy7lUu6JE/1n9p/Zf6avr+hcjDUHnsJiuhBSEVIRUvHww3Xn6s7VnUtP17YcGTBAdC57USIlUuKlS7YDtgO2AxERp82nzafNFy+KzsVYU/AIhOmCtoZw/bpWQIYPh9WwGlYfOiQ6l70wARMwoXt3wzjDOMO4vDxtM0pJEp2LsabgAsJ0pXRh6cLShbdu1V6uvVx7OTqaUimVUvXXyIev4+v4epcuEA/xEJ+To62RjBghOhdj9uApLOYEELVfwCtXak9tzZ8vOpHdvu9wJ5lkkp9/Xn1ZfVl9OSVFdCzGforjN2wxdh+0TvDDh31W+KzwWXHnDtRDPdQPG/avDX8OrLHDfQbMgBkxMT6jfUb7jK6qsn5s/dj6scUiOh5j/47j/8NirAm0tYVp0+gUnaJTf/kLmtCEJldX0bnsRVtoC21JTFT7qf3Ufm+9JToPY/+MCwhzavJ5+bx8PjqaelJP6rlrFwZhEAZ5eorOZbcJMAEmvP++8qbypvLmnDnaTZtNdCzWunEBYa2C8azxrPFseDhNp+k0PTVVu6vDxr4oiIKoffu8lnkt81oWF6dtlXLnjuhYrHXip7BYq2Dpa+lr6ZuTg72xN/YeOBDegDfgjX/8Q3Quu2VABmSMHVtjrDHWGA8eDLoYdDHoYrt2omOx1okX0VmrUllaWVpZWlXlX+df51+3b5+2Z9WoUXACTsCJjh1F57NP9+50la7S1REjOsV0iukUs3//lewr2Veyb90SnYy1DjwCYa1ScVpxWnHapUuuda51rnVhYdpdVRWdy27H4Tgcl2XX2a6zXWcXFGgnJvboIToWax24gLBWrSiuKK4o7sqV2oTahNqE8HDt7uHDonPZCwfiQBwYEIBGNKIxL88Ua4o1xTaeRc9Yy+BFdMb+SZ+UPil9UtzdPcs8yzzLtm+HNEiDtPHjReeyWxAEQdCNG1RN1VT9zDPqDnWHuiMvT3Qs5lx4BMLYPykbXza+bPy9ewGfB3we8HlcHO2m3bR740bRuexWDMVQ7O2Ng3EwDs7OlkvkErlk3DjRsZhz4REIY/dBTpaT5eSEBDCDGcwrVojOYy9KoiRKamjQOvNnzVKj1Wg1evNm0bmYvnEBYcwOUqaUKWW++ipWYAVWrFsHm2ATbDLoZyQvgwwykZb7nXcUVFDBP/xBdCymT/r5i8+YA1Aj1Ug18v33qZZqqXbcONpAG2iDjhr5FFBAQdQ2b1y6VLogXZAumM3aB3VUCJlD4BEIY7+AtufWkCFUREVUtH8/BmMwBuu1sW/nTiAgoOnTtaOF6+pEJ2KOjd9xMPYLKIqiKMpnn2lPPQ0dCq/Ba/BaVZXoXE0TFwerYBWsysx8uuPTHZ/u2Lat6ETMsfEIhLFmZEw3phvTAwLoMB2mw1lZcBJOwkn9NfbRElpCS06dsnWwdbB1iIrSzqj/5hvRuZhj4QLCWAvQGvkefbRhWsO0hmmZmbgUl+JSHTb2ERDQ+fPaRUSENrX197+LjsUcAxcQxlpQf+pP/cnb2zXBNcE14cABOApH4Wjj1il6Y7VSBVVQxciRapVapVaVlopOxMTiNRDGWtAZPINn8MaNm343/W76DR9OaZRGaXv3is7VNF274kpciSuPHzd2MHYwdnj6adGJmFg8AmHsAYqNjY2NjXVxKZfL5XI5KQn2wB7Y89JLonM1ze3b2uv48drDBBkZohOxB4sLCGPCIMokk0xLlzb2ZYhOZK/GDne8htfw2iuvKJFKpBL5wQeic7EHg88DYUwg6zLrMuuy48d9zD5mH/P16/AkPAlPRkT80PDn4DADMzDDYICbcBNujhnjW+5b7lteW1t5p/JO5Z2TJ0XnYy3L4f+CMtaaaI2JcXHa1dat2qubm+hcTWM2a1Nbr7+uXfMZ7s6GCwhjDihwT+CewD3DhqEv+qLvvn04B+fgHP019tFUmkpTt2/HZEzG5Bdf5A5358IFhDEHZupu6m7qbjLZRtlG2UZlZEAhFEJhp06ic9ktEiIhMj0dMiETMidM0EYmjYvwTK+4gDCmA9rUVq9e2lVWlvb62GOic9mNgICKigwHDAcMB6KiTvmd8jvld+2a6FisabgPhDEd0N6xN3aEh4TAIBgEg3TYyIeAgMHBtmJbsa04NzfoYtDFoIt+fqJjsabhEQhjOtS3b9++fft26OCW55bnlpeWhsNwGA7TYWNfKIRC6N/+hp2xM3aOiLAstiy2LL5wQXQsdn/4MV7GdKiqqqqqqurOHZ9sn2yf7I8/1u427rX161+LznffKqACKry9aRbNollxcY+6Per2qFte3mXlsnJZ+fpr0fHYT+MpLMZ0rHExOiAgICAgIDqa9tAe2qO/Rj6ch/Nw3sMPG9CABszODswPzA/MHzlSdC7203gKizGngyjNl+ZL81eswON4HI+/+aboRHYzghGM9+7hLbyFt6ZNs+yw7LDsaBxpMUfBU1iMOSFrgbXAWnDkSNftXbd33X7jBj6Oj+PjI0bopcMdKqESKl1coBt0g27PPecDPuADNTVWq9VqtRYUiI7HNFxAGHNi1m3WbdZtRUW+5Eu+dOkS1EAN1IwerX3UxfH//VvBCtbGgjdiRNesrlldszw9rUnWJGvS0aOi47V2jv9OhDHWbKTl0nJp+ejR+Al+gp/s3q3dbdNGdC67xUAMxGzd6vW219teb7/0Ug7mYA7W14uO1dpwAWGsFZIlWZKl4GDtKj1d68945BHRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orO1VrwU1iMtULanlRFRQ1rGtY0rAkPp3zKp/yKCtG57IVRGIVR0dH3Cu4V3CvIzNQKY/v2onO1FlxAGGvFTg86Pej0oLIyWkfraF1YGOVRHuXpr5EPEzERE8PDKZdyKffEif4z+8/sP9PXV3QuZ8dTWIyxHzyV+1TuU7mdOhm+NXxr+DYjA9/Bd/Adk0l0LnvRCTpBJ8rLaRgNo2FhYSX5Jfkl+ZWVonM5Gx6BMMZ+oI1Ivvnmzt07d+/cHTpUu3v4sOhc9sKBOBAHBgQYFhsWGxbv3dsnpU9KnxR3d9G5nA2PQBhjP6rxF69HqEeoR+jWrRiN0Rg9aZLoXE3z6qta535SkugkzoILCGPsPhkM0gXpgnRhzRqMwziMmzNHdKL7thAWwsKvvlImKhOVid27i47jLLiAMMbsJifLyXJyQgKchJNw8t139dLhjs/is/hsr16862/z4DUQxpjdlGnKNGVaYiJFURRFvfIKJVESJTU0iM71s76Bb+Cb3/xGdAxnwQWEMdZkarQarUZv3ky9qTf1Hj8eXoFX4BWbTXSuH0PP0rP07K9+JTqHs+ACwhhrstjY2NjYWBcX3ISbcFNUFGyCTbDJ4Li/VxbCQljIW540F8f9g2aMOSztjPY2bb7c8OWGLzccOIC7cBfueuEF0bl+ViqkQuqNG6JjOAtX0QEYY/rReJQuHaWjdFRHR+nKIINMVLerblfdLotFdBxnwQWEMfazgi4GXQy66OfXcLbhbMPZrCwYBsNgWJ8+onPdL/oT/Yn+lJ9f6l3qXepdVSU6j7PgAsIY+1HaVFWvXg0TGyY2TMzK0u4+9pjoXPYypBhSDCl//KPoHM6G10AYY/8fU3dTd1N3kwlCIARCcnO1u/orHPQcPUfPbdpkednysuXlzEzReZwNj0AYYz+Q3pbelt6OiLBdt123Xf/kEyiEQijU32OvFE/xFH/gwHc139V8VzNvnug8zsrhO0cZYy1Pm6qKi9Outm7VXt3cROeyF31Kn9Kn27bhWByLY2fM0M49qasTnctZ8RQWY62Ysaexp7Hn7NlaA+D27dpd/RUOjdmsdlO7qd2mT+fC8WC4iA7AGHvwftjL6jSchtPvvaeXvaz+7xvQHssld3In94QE9Zh6TD22eLHoWK0Nj0AYawUaO8blcrlcLt+0CcxgBvOKFaJz2YtO0Sk6VV+P5/E8np8xQ/1U/VT9dOVK0blaK/2842CM2a2HuYe5h/mhh9pvbb+1/dbt2wEBAWNjRedqmtu3tU7y2FjFT/FT/A4eFJ2oteMRCGNOSDsIysurXVy7uHZxaWm6LRxzYS7M/fZbLMdyLB8xgguHY+ERCGNOJHhn8M7gnV261I2pG1M3JjMTB+NgHBwYKDqX3QbAABhQWQn5kA/5I0dqi+Jnz4qOxf4Vj0AYcwJBY4LGBI3p3r3erd6t3i0vT7eFIwzCIOyLL7TCMWAAFw7HxiMQxnTMOMU4xTjlN78hb/Im76wsKIACKPDxEZ3LXrSEltCSU6dwGS7DZaNGaYXj6lXRudhP4050xnRIJplkGjyYjGQk4/792t327UXnshfNp/k0/8gRzxc8X/B8ISbm5LWT105eq64WnYvdH57CYkxH5PPyefl8dDQVUREVNe7tpL/CAdEQDdEffYSrcBWuGjWKC4c+8RQWYzogpUgpUsr06TAOxsG4zZvRhCY0uep0BsFsVhRFUZTXX9euHfcIXPbTuIAw5sB+6BjXaeNfY8e4dtTtO+8oqKCCf/iD6Fiseej0HQxjzgxRKpPKpLJVq+B5eB6ef+MN0YnsRUmUREkNDWAFK1hnzVJRRRU3bxadizUvHoEw5gC0xj93d4+rHlc9riYn4wf4AX4wcaLoXHabBbNg1t27WIqlWDp5ssVsMVvMn3wiOhZrGVxAGBOo38p+K/ut/NWv3ILdgt2C9+6F1+F1eH3kSNG57BYEQRB04wZVUzVVP/OMukPdoe7IyxMdi7UsLiCMCRBSEVIRUvHww3Xn6s7VnUtPh0WwCBYNGCA6V9NYrbZSW6mtNDKypK6krqTuzBnRidiDwY/xMvYABa4KXBW4qlu3ex3vdbzXMT9fr4WDTtAJOlFerl2FhXHhaJ14EZ2xB+Cp3Kdyn8rt0weDMRiDDx3CUAzFUH9/0bnstgyWwTKLpX59/fr69VFRpUqpUqpUVYmOxcTgKSzGWpAsyZIsBQdrV+np2q64jzwiOpfdhsNwGH7smMuLLi+6vDh2bHHP4p7FPb/7TnQsJhZPYTHWAqTl0nJp+ejRWsE4dky3hSMKoiBq3z6vd73e9Xo3KooLB/tnPAJhrBlJnaXOUucpU9Af/dH/ww+1uzo8YzwVUiF1wwbt/I25c7Wb3DHO/hWfic5YM5COSEekI/PmYSAGYuDGjdoZ4/rbaoS20Bbakpio9lR7qj0bGxiJROdijkl3f8EZcxyIUqlUKpW++y7+Dn+Hv0tIEJ3IXo0d42hFK1pnz1b7qf3Ufhs3is7F9IGnsBizQ2xsbGxsrItL+ZflX5Z/uXGjtrYxY4boXHb7vmOcbGQj29Sp6svqy+rLKSmiYzF94QLC2H3oYe5h7mF+6KH2Ie1D2ofs3Kn9Ao6JEZ3LbvEQD/E1NRADMRATE6N4K96Kd3a26FhMn7iAMPYT+lN/6k/e3q5GV6OrMS1NuztwoOhc9qLVtJpWX7liWGRYZFgUGWnJteRacktKROdi+sZrIIz9G7Isy7LctSscgANwoPHgpv79ReeyFyVSIiVeumTba9tr2xsRoeaquWruxYuiczHnwCMQxv6JVjgefxwICCgrS1vjePxx0bnsRTmUQznnzjUsaFjQsGDkyDMbz2w8s/Ef/xCdizkXbiRkDAACQwNDA0ONRgiBEAgpKNBt4UigBErIycFBOAgHDRzIhYO1JB6BsFZNmi3NlmYPHQprYA2s2bdP26uqXTvRuexFGZRBGamp7nXude51kyYV+hf6F/rX1orOxZwbr4GwVklaK62V1o4dC8EQDME7d2qFw8NDdC67xUAMxGzd2rZL2y5tu7z0Ug7mYA7W14uOxVoHHoGwVkUaJA2SBsXH4xScglPMZu2sboPupnJ/6Bjvp/ZT+731lug8rHXiAsJaBTlZTpaTExLADGYwr1ghOo/93wDIIBNBOIRD+IIFymRlsjL5vfdEx2Ktm+7eeTF2Pxo7xqW/Sn+V/pqUpNvCYQQjGO/dw9t4G2/HxXHhYI6ERyDMqfzQMX69/fX217dtgzRIg7Tx40XnspsJTGC6dcs21TbVNnXcuJLQktCS0EOHRMdi7J/xCIQ5hT4pfVL6pHh5tYtrF9cuLi1Nr4WD1tJaWnv9uo1sZKPhw7lwMEfGIxCma8E7g3cG7+zSpf7P9X+u//PBg9pdSRKdy26hEAqhf/sbdsbO2DkiwrLYstiy+MIF0bEY+yn8GC/TpaAxQWOCxnTvXu9W71bvlpWl3e3ZU3Quu/0efg+/Lytz6evS16VvRIR24t/XX4uOxdj94ALCdMU4xTjFOOU3v2mIbIhsiDx0CFbACljh6ys6l90ICKioyBBkCDIERUUV+xX7FftduyY6FmP24CkspgvGs8azxrPh4TSdptP01FTtbvv2onPZbR2sg3VpaW7+bv5u/hMmcMc40zNeRGcOzfhfxv8y/tczz9j62PrY+jTuiqu/wkGf0qf06bZtMBtmw+znnuPCwZwBj0CYQ9J2xZ02jU7RKTr1l7+gCU1o0t8Z4xqzWVEURVFee0275jPGmXPgEQhzKD90jMsgg7xli+4Kx/cd49SNulG3N9/UCse8edoHuXAw58IjEOYAEOW18lp57Z/+BNtgG2xbsEB0IntpI6X6esNgw2DD4Fde0U78+/BD0bkYa0n6eWfHnIrW+Ofu7hHqEeoRunUrREM0RE+aJDpX09y+jZVYiZWxsVrhaOxHYcy58RQWe6D6rey3st/KX/3K447HHY87+/djNEajHgvHXJgLc7/9FsuxHMtHjFD8FD/FjwsHa11cRAdgrUNIRUhFSMXDD9Ntuk23MzNxFa7CVUOHis5ltwEwAAZUVsJe2At7f/tb5ZJySblksYiOxZgIvAbCWpR2VKyPj+Gu4a7hbuOeTn37is5ltzAIg7AvvoBcyIXckSMVVVEV9e9/Fx2LMZF4Cou1iMDqwOrA6t698TP8DD8rLNTu6q9w0BJaQktOndIKx6BBXDgY+z88AmHNytjT2NPYMyiI2lJbapuRAQgI+MgjonPZbSWshJVHj3rEesR6xI4de/LayWsnr1VXi47FmCPhEQhrFsZ0Y7ox/be/tSXbkm3JR47otnBEQzREf/QRLIAFsCAykgsHYz+ORyDsF5E6S52lzlOmoD/6o39j34Obm+hc9qKdtJN2rlunPqE+oT7R2DFus4nOxZgj4xEIaxJZkiVZmjsX/xv/G/87OVm7q6PC0XjGuAUsYFm2TCscc+dqH+TCwdj94BEIswOiTDLJtHSpdlb30qWiE9mLkiiJkhoawApWsM6apUar0Wr05s2iczGmR1xA2E+KjY2NjY11cSmXy+VyOSkJ9sAe2PPSS6Jz2W0WzIJZd+9iKZZi6eTJFrPFbDF/8onoWIzpGRcQ9m/1MPcw9zA/9FA7j3Ye7Tw++gg34Sbc9NxzonPZLQiCIOjGDaqmaqp+5hl1h7pD3ZGXJzoWY86A10DYv+hP/ak/eXu3/7r91+2/zs7Wa+GgAiqggsuXDVcNVw1XhwzhwsFY8+OtTBgAAJhiTbGm2EcfhTbQBtpkZ+OH+CF+GBwsOpe96ASdoBPl5aSSSurQocp8Zb4yv6xMdC7GnBEXkFZO698ICKAqqqKqY8dwG27DbX36iM5lt8EwGAYrSn1ZfVl92dChZyaemXhmYkWF6FiMOTPezr2VkiRJkiRZpm/pW/r24EE4CSfhZOfOonM1zWefucx0meky89lnlZ5KT6Xnd9+JTsRYa8BrIK2MdlTskCFQDMVQfOwYrIE1sEaHhSMKoiBq3z4vi5fFyzJqVHHP4p7FXDgYe6D4KaxWQlorrZXWjh0LwRAMwTt3YjzGY7yHh+hcdkuFVEjdsEE7f4Mb/xgTiUcgTk7KlDKlzFdfRU/0RM+9e/VaOGgLbaEtiYla4Zg9W7vLhYMxkXgNxEnJyXKynJyQAItgESxasUJ0Hns1doyjFa1onT1b7af2U/tt3Cg6F2Ps//BTWE6isWPc44DHAY8D77+PC3EhLnzrLdG57PZ9x7i21ciUKepkdbI6uXGvLcaYI+E1EJ3rk9InpU+Ku7tnmWeZZ9n27ZAGaZA2frzoXHaLh3iIr6mBGIiBmJgYxVvxVryzs0XHYoz9OC4gOqUVDi8vz0TPRM/Exj2dRowQnctetJpW0+orVwyLDIsMiyIjLbmWXEtuSYnoXIyxn8drIDoTvDN4Z/DOLl3qE+sT6xMPHtTuSpLoXPaiREqkxEuXbHtte217IyLUXDVXzb14UXQuxtj946ewdELbo+o//qPukbpH6h7JzdXu6rBw5FAO5Zw717C3YW/D3rCw0+bT5tNmLhyM6RFPYTk403rTetP6J5+0dbB1sHXIyoL34D14z9dXdC57UQIlUEJODq7AFbgiOlpRFVVRb94UnYsx1nRcQByUNFIaKY0MCdEWxdPTMQRDMKRjR9G57EUZlEEZqanude517nWTJhX6F/oX+tfWis7FGPvleA3EwQSWB5YHlo8ZA92gG3TbvRuDMAiDPD1F57JbDMRAzNatbbu07dK2y0sv5WAO5mB9vehYjLHmwyMQByEfk4/Jx6ZOpcE0mAZ/8AGa0IQmV90V+MaOca3xT4d9KIyx+8YFRDDpiHREOjJvHqZgCqasXg0KKKCgfv5cZJBBJoJwCIfwBQuUycpkZfJ774mOxRhrebp7h+scEOUb8g35RmIiDINhMGzhQtGJ7GYEIxjv3cNbeAtvTZtmmWyZbJn88ceiYzHGHhwuIA9IOIVTOLm6Vv+5+s/Vf960SSscL7wgOpfdTGAC061btqm2qbap48aVhJaEloQeOiQ6FmPsweM+kBamnb/Rpk31N9XfVH+Tmoq7cBfu0l/hoLW0ltZev24jG9lo+HAuHIwx/cy168zTHZ/u+HTHtm3v/O7O7+787vBh+Aw+g89CQkTnsttCWAgLv/rKMNAw0DAwIuKU3ym/U37/8z+iYzHGxOMC0iIQ5Xw5X85PTYU5MAfmjBkjOlHTnD1re8j2kO2hkSNL8kvyS/IrK0UnYow5Di4gzcw4xTjFOGXiRPqCvqAvdu0SncduBARUVGQ4YDhgOBAVpY04rl0THYsx5nh4DaSZUSfqRJ3+8z9F57DbOlgH69LS3FLdUt1ShwzhwsEY+zlcQJqJMd2YbkwPCIBcyIXcfv1E57lvH8FH8NGWLV4DvAZ4DYiJ4a1GGGP3ix/jbSbUg3pQj759Reewj9ms9FJ6Kb1ee+3774JEJ2KM6QePQJoJlVIplXboIDrHj/q+Y1w7Y/yNNxRFURRl3rzv03PhYIzZjQtIMyEjGcnoeGsGdIpO0an6ejyP5/H8jBmWSkulpXL1atG5GGP65yI6gLN4rPyx8sfK6+qomqqpuvGdvUDfd4wbrAarwRoTY1lvWW9Zv2eP6FiMMefBI5BmUpxWnFacdukSLIElsOTMGVE5qJAKqfDaNfqKvqKvfvtby8uWly0vZ2aK/vkwxpwPF5BmRlfoCl1ZvlzMV7dawRd8wXfoUPWQekg9VFgo+ufBGHNe3EjYIhCly9Jl6fK+fRiFURgVHd1iXyoMwiDsiy9wOS7H5RERljaWNpY2FRWifwKMMefHI5AWQeT5pOeTnk8+/zy8C+/Cu7m5zf4lvv+8hgWGBYYFYWFcOBhjDxovoreQitqK2orae/d8Pvf53Ofzjz4CBAR0c6NiKqZiWcbNuBk3u7nd7+fT/r/aWqzHeqxftQpWwkpY+cILloWWhZaFNTWiv1/GWOvDU1gPWGBoYGhgqI+Py1cuX7l8NWEC7aW9tHfIELpO1+m6v3/jf4cP48P4cEUFvUPv0DvHjtF39B19l5LCmxoyxhzF/wKeYeMy/zPC/wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMKIRvi8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTctMTItMTVUMTU6NTc6MjcrMDg6MDDTTAaTAAAATXRFWHRzdmc6YmFzZS11cmkAZmlsZTovLy9ob21lL2FkbWluL2ljb24tZm9udC90bXAvaWNvbl9jazFiemEwemo5ampkY3hyL3JpZ2h0LnN2Z7O3J80AAAAASUVORK5CYII=);background-size:contain}.icon-refresh:before{content:" ";display:block;width:16px;height:16px;position:absolute;margin:auto;left:0;right:0;top:0;bottom:0;z-index:9999;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAYAAAD9yHLdAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAAASAAAAEgARslrPgAAMQpJREFUeNrt3XlcVHX3B/Bz7rCISi6IC+ijkpZpIswMyBLgluVuKm4pqWmEuG/hUpr5uFYoiuaSFrklZvroo+jPFRURZgYVxZ1K3HIXUBSGe35/XC9PWpYL8J2B8/6H1wwGn3sb5sz93u/3fAEYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOM/QUUHYCx59F0ddPVTVdXq5YXkxeTF1O3Ll7H63jdzY3eoDfojTp1UIta1FatCm/D2/C2kxPchttwu0oVyIRMyKxShVpSS2pZuTIkQzIklyuHv+Av+IudHURBFERJkvJbKlQo+IWhEAqhsgz2YA/2d+8WPP/oMXWkjtTx4UMMwAAMuH4d2kE7aHf9OoVQCIX8/jvuxJ2489o1WkJLaMmlS+AHfuB37hwmYAImnDtnNBlNRlNGhvJDiUSfX/ZygiiIgqhMmayJWROzJgYF4Xbcjtv9/akX9aJerq7QE3pCTwcHiIEYiMnMxNpYG2ufOYNTcApOOXDAcNZw1nA2KUn0cTwrLiBMKO+z3me9z9asKa+V18prtVr5tHxaPv3mmzgaR+Nod3cYCANhYMOGyr9+9VXla9myonMXFoqmaIp+8ADDMRzDz56FTtAJOh07RgmUQAkGA17Da3jNYMjrldcrr1dKyrGxx8YeG3vvnujc7I8QdbG6WF3skCFUjapRtYkTcSSOxJHVqr3Yz0tNVb6OH280Go1G43//K/oIn3rkogOwkgzR09bT1tPW3V3jrHHWOLdoIRtkg2zw84PTcBpO+/jgGByDY2rWFJ3U0tEiWkSL8vNxDa7BNSdOkAM5kMOuXTgYB+PgnTvz1uStyVuzbx8XmOKh0+q0Oq2tLW2hLbRl9WrsgB2wQ7duhf17aAWtoBWzZpncTe4m94gI0cf9JC4g7KU0oSbUhCpW1FTTVNNUa98eTGACU9u2uAf34J6WLWEuzIW5VauKzlni6UEP+txcZYju0CGoDtWh+pYt+QH5AfkB69cfxaN4FH/9VXTMkkJ3UXdRd3HBAuWKMTy8yH8hAQENH64MeUZFiT5+FRcQ9kwaN27cuHHjSpVsbW1tbW2DgxEREbt2Vb7bvLny1dZWdE721+gz+ow+S06W+kn9pH7r1+fdyruVd2vdOi4sz0f7rvZd7bs+Pvgv/Bf+KyEBjGAEIxb5+yjNp/k0PytLE6mJ1ES+9lpybHJscuzVq6LPBxcQ9hjlJqCNTbY+W5+tb98eFsEiWNS3LxyDY3CsXTvlsb296JzsJT2aHEBdqAt12bULMzADM5YsgQ/hQ/hw0yblk25enuiYlka7XLtcu3zTJozGaIzu2LG4fz85kzM5jxxpijPFmeLmzhV9PriAlHKefp5+nn4uLtgQG2LDQYOwDJbBMh99BIfgEBxycRGdjxUvOkSH6NDVq7gEl+CSFSvMx83Hzcejo49+c/Sbo99cuiQ6nyjKPY8qVchABjJcuYJe6IVeNjbFHqQNtIE2W7YYpxmnGad16CD6vEiiA7DipfwhNG6sS9Wl6lJ/+EF6KD2UHv76K6ZgCqZMmcKFo3RDX/RF3+rVYQWsgBXjx9uQDdlQero2XZuuTV+2zOui10Wvi6+9JjpncaMP6AP6ICBAWOFQc0RQBEXUqSP6fKj4CqSEKxizvY7X8fqkSaADHejati2usVtWwqhDX+2pPbXfsIFqU22qPW1aSl5KXkre0aOi4xUV3QPdA92Df/8b/MEf/CdMEJvmwgVlem/t2qLPC1+BlDAe8R7xHvENGypXGuvWFdzsAwCAdu24cLCXshgWw2JJUqetSv2l/lL/lBT19abfot+i3+LmJjpmYaMbdINu1K0rOgf4gi/4irsCehIXECvX5OMmHzf52NVVO087TzsvJkZzSnNKcyo1FRAQMDiYCwYrUurr69HrTa4iV5GrnDihu6O7o7sze7Y6e090zJeFC3ABLnjRhYGFiICALGe2IxcQK+OT4ZPhk+HgoNPpdDrdp5/agA3YwOnTGIMxGNO3r/oJUXROVjopK+rLlIGW0BJajh1rF2gXaBd4+rRut263bndIyKN/ZX0faHbADthRrpzoGCCDDDIXEPacPL/0/NLzy8DAXKdcp1ynlBTl2alT1Z5OovMx9pcSIRESnZ1hLIyFsd9/rxunG6cbt2+fOtQqOt4zQ0BAC3jj9gIvEHgT/0lcQCyUcqVRubJypfHdd9IZ6Yx0Zu9epWnf66+LzsfYC9kFu2BXQIDmjOaM5ozJpCMd6WjKFLU1iOh4Fo+vQNjfUWdN5Z7OPZ172mBQnv3gA76XwUoUdUGqHvSgnzwZpsJUmJqQoP9C/4X+C/6A9DTkTu7kzlcg7JHg4ODg4GCNRv0kpvwhHTiAn+An+IkFzPpgrDhMhskwWa+nS3SJLhmNWq1Wq9V+9JHoWJYGwzAMwzQa5ZH4e53CA5RW+vv6+/r7tWqlD0oflD5o9271k9jjLxDGShl1nxZERFy8WHtVe1V7deNGtWmn6HiWol5Uvah6UeKHsizmUqi00J3SndKd6tRJNskm2bR8OY7H8Ti+cmXRuUobSqIkSsrJUVYW37sHw2E4DH+Gwn0QDsLBihV5SLF4YDtsh+06dbLxt/G38U9OVu6VdOmi9OpS980oerSX9tJeRGyGzbCZ6LMCUPZh2YdlH6pDWQ8fisrBfwDFRNtH20fbZ8IELItlsey0afwG9ILCIAzCHj6kntSTep49C6thNaw+fRpDMARDTp/GbtgNu506BTNgBsy4cEFpQXHrltnb7G32vnXLYaLDRIeJt24l1kqslVgrJ+d5f/3jzSadneVj8jH5WNWqmmhNtCbaxYXqUT2q5+xMy2k5La9ZU9mBsHFj/Ba/xW8bNVKuNF9/HQxgAIOdnejTaXW8wAu87t3DbMzG7IEDDSsNKw0r164t6l+rzdJmabNMJqWAeHqKPg1mg9lgNlSqpHRTvnNHVA5+Aysij88qWbhQmQY4cKDoXJaODtABOpCeDtfgGlw7cADfw/fwvf37lfN34ICbm5ubm9vZs7GxsbGxsfn5ovM+L/V1kT83f27+3Pr1bZbYLLFZ4u5OJ+kknQwMpP20n/a3aMGz7Z4RAQF99ZVyRTJunPKkLBf2r9Fu0W7RbklJwck4GSd7eIg+bOW4nZ2V475xQ1QMHsIqZMoWra+8kt8zv2d+z9hY5dnWrUXnshjhEA7h2dlwAS7Aha1boTW0htYbN5pjzDHmmPj4ow5HHY46PL3rq9IDSPRBvLiCNumBEAiBaWnKs+rXtWuhLJSFsn/oknwOz+G5Fi0wHuMxvkUL6A29oXeHDkpBrVJF9PEIh4CAo0frknRJuqS6dW1r2NawrdGnz4teYVoLZYtjSVI2cBOXgwtIIVH/4M3VzdXN1bdsUXo7iL/UFev+faX99O7d0AJaQIvY2JwbOTdybmzYkDYlbUralOxsmAJTYIronJYnJSElISXh8mXl0cqV0AAaQIOVK9VZe+nn08+nn/f1LWhZQ0BAvXuX2sISBmEQ1qVLHuVRHu3Z4z7HfY77nI4dlS1+r1172R+P+ZiP+Tzk/CQuIC9JWejXoIHyyXrnTmgGzaCZq6voXMVN3fEOHdERHRcsKN+8fPPyzdet24f7cB8+eADTYBpME53S+j0+dHfggPpVmZUzblyF7yt8X+H7Nm0gEiIhMjQUVsJKWPnOO6XmnhsCAjZtalvHto5tnQMHlL/PNm2UK9fz50XHKyz2SfZJ9knip/GW/BdUEfFM8EzwTKhXT1otrZZW79tXavbReLT3tjLdctMmnIpTceqSJYb2hvaG9jt3io7HHlfwOh0qDZWGDh2q3IT+8MPS0gKHIimSIn//HbpBN+jWurXpmuma6dqxY8/7c3QjdSN1I48ehXiIh3h3d9HHJblJbpJbjRqit7blAvKcvDt4d/DuULeueb15vXn9vn3oh37oV6uW6FxFpWC6axZmYdaCBTZbbbbabP3qq8O9D/c+3Pv330XnY89H2RDKySn/Qv6F/AsffYRDcAgOGTWqpA99USIlUuLNm+iDPujTurVyRWJ65rsHllZAZHvZXrZ3dX18qLP48RDWM1IX/pkTzAnmhF27SmrhoGRKpmSzGebDfJi/Zk2+lC/lS599drTi0YpHK/76q+h87OUk10yumVzz5k3l0YwZDdc1XNdw3fz5DjkOOQ454eFUn+pT/YkTcSgOxaGOjqLzFhalcDg5KY9271b+ntu2NZQ1lDWUVffL+RvxEA/xljMEKLvL7rI7IiRAAvxz+iIjfAzN0qn7bdBb9Ba9tWdPiWsxogMd6IigA3SADuvWaS5rLmsuN2pkGm4abhoeEqLMM+fCUVKldU/rntY9O9v4gfED4wezZtEYGkNjGjSAYAiG4KVLCz5QlCgVKtBaWktrt29X7pE0b/6P/0kgBEIgkejkKvvR9qPtR4svaMIDWCp1Ixw7WztbO9uEBOUSv0ED0bkKjT/4g/+5c8rK6o8+Ui7p9+wRHYtZFrXtunRdui5dX7oUp+N0nO7nJzpXYVGHaKVvpW+lb7t2NXxk+Mjw0bZtT/47pdCo904aNxadW5l1V7u2Mi38wgVRMfgK5AnqSmPb8bbjbcevW1dSCof6SZKaUTNqNnu27VjbsbZj3d25cLC/cyTwSOCRwLQ0U1dTV1PXgAByJmdyHjlS+e79+6LzvSz0Rm/0dnAgIxnJuHGjsrPne++p31c6SAQEwAgYASMsYEfCR+Tecm+5N1+BWBztae1p7emoKOyNvbH30KGi8xQOkwnLYTksN3CgId4Qb4hXN6Ri7MUon8hffVV5tHSp8vUZhoIsXMGQ3VbYCluPH7eYledPUFqZ1K0reoiZC8gjavtotQuo6DwvTL2nYQADGL7+uryxvLG8MSJCWY9R0saymWVA1LvoXfQuI0bIF+WL8sXZs5UmlZazb0VJo3HRuGhc3NySNidtTtr8yy+icpT6ISx9qj5VnxoUpBSOBQtE53lRdJgO0+HMTPkr+Sv5q27dlLHRMWO4cLCiR2S4bLhsuBwZSV/T1/R1y5Z0iA7RIXHrE1jxKLUFRNlfoE4dpVvr+vXKs+L767+Y1FTNVc1VzVUvrxTHFMcUxw0bRCdipVPKmJQxKWPi45V7bTodTaAJNOEZpsmy55IXlBeUF1T4TSOfV6krIGovIRu9jd5G/8MPVruAahksg2U//qg88PFR5vefOSM6FmMA/+vl9SD/Qf6D/ObN6Uf6kX785hvRuUoKzWDNYM1g8QWk1I1Rnrc/b3/e/pNPlGaHb70lOs9z2wSbYFN0tLGmsaax5rBhypPiX0iM/RVlnUlurvIoLEz3ve573fe//gpREAVRM2eKzmet8lvlt8pvJX47g1JzBaIP1AfqAz09ldlIkyeLzvO8aAWtoBWzZimFY8gQ5VkuHMy6FCxYnEbTaFp4OIRCKITy6/h52bjauNq4ij9vJb6AKF1K7e3pHt2je99/by07wdEiWkSL8vPhM/gMPgsLM7mb3E3uERGiczFWGExtTG1MbRYuhMWwGBb37as8m5cnOpe1eOj90PuhNxeQIlehZ4WeFXqql8oWsIL0n6ifyE7BKTj1wQfGTsZOxk48dsxKJmUh6+rVFEIhFNKjR8EHJ/a3bNfYrrFdwwWkyHh+6fml55eBgbARNsJG9V6B5aOVtJJWDhtmCjGFmEJWrRKdh7HioPRe+/lnyIRMyBw9WnQeS2e7yXaT7SYuIIVOnWUl1ZfqS/WjopRLZPEbr/wT8iRP8pwyxRRvijfFR0eLzsOYCKZWplamVvPm0WbaTJvV6fXsSXmd8jrldRJ/pWbxb6zPKz09PT09/aOPYCpMhalNmojO848ezaoyLTMtMy37/HPRcRizBPI5+Zx8bvBg8AEf8Ll+XXQeS1PmtzK/lfmNr0AKjU+GT4ZPRuXKysYxX3whOs8/WgSLYNGGDY9Px2WMAahNHK9fV3b6DA8XncfSZEVkRWRFcAEpNHmYh3k4derjG8dYHppBM2jGmTOaSppKmkr9+yvPin8hMGaJlJY8sbE8pPW4SmMqjak0hoewXpq+j76Pvs+bb5ILuZBLaKjoPE8VDuEQnp0tl5HLyGXeey+pflL9pPqZmaJjMWYNzKvMq8yrwsOVfTBu3BCdR7RsXbYuWye+gFj9SnQ6SSfp5FdfWXr3TzKTmcwffqjuryA6D2N/5BXsFewVXL268qh6dfm8fF4+b2+PU3EqTnV0pMk0mSaXL6+8gf9Fz7gFsAAW2NjQEBpCQ/6wFe7H8DF8fOcOfoPf4DfPsKMfAgLev4+f4+f4+cOHT36belJP6rluHfwIP8KPgweLPm/F7lG3beMS4xLjEvHrZqy2nbtOq9PqtE2bKi+4xETReZ6G3qF36J3ISNN003TT9FGjROdhpZPSPLRiRRudjc5GFxKi/N107qxcGXt5QTREQ3T58qJzsn+gBz3oc3ONi42LjYvt7UXHsdohLNpKW2nr+PGiczzVRJgIE9PSMqtnVs+sbsE5WYmm3abdpt02eLDmoOag5uD580rhmDdP+W7z5lw4rExTaApN1d5i4lnskM/TFNzz+Iw+o886dhSd508erSSXt8vb5e0DB55bfG7xucV/vhRnrCjpZutm62ZHR8MkmASTSuFQT0mlAQ1oxA9dqazuCoReo9fotYgIMIIRjOL3BP6TztAZOkdFpSxOWZyy+NAh0XFY6aIM7Q4bVmrvEZRwVJfqUl3LuQKxmgKi36Lfot/i5kaTaBJN6tFDdJ4/GQtjYeyvv+bszdmbs/fTT0XHYaWLUjgqVFCGOHhBaollYUNYVlNA5GPyMfnYuHEWO9tqNsyG2aGhyv4H2dmi47DShcpTeSrfpw8kQRIkVawoOg8rIjLIIPMQ1jPzPut91vvsK6/gT/gT/qS2fbY0O3YoC5527BCdhJVO2AybYbOWLUXnYEWMgIC4gDwzcw9zD3OPnj2VR2XLis5T4LGNcHiWFRNMBzrQubmJjsGKFgZgAAbwENYzwxbYAluoLT8syFW4ClfXrFH2MzCZRMdhpRu1ptbU+g8L+FgJxlcg/8gj3iPeI75hQ9gDe2CPj4/oPAXCIAzCHj7UJGuSNcl8s5xZBpyEk3DS7duic7Ai1hyaQ3O+AvlHmhRNiibFAq88FsEiWLR8edLmpM1Jm3/5RXQcxgAAoA/0gT7nzomOwYrYHtgDe65eFR1DZXEFRJmOaGurbLBkQTfNH93zkDZJm6RNc+eKjsPYH+FwHI7DeRJHiXcQDsJBy+mlZ3EFRF4vr5fXv/sujsSROLJaNdF5CiyGxbB427bkmsk1k2ueOSM6DmN/ZH/C/oT9idhYZT+cmzdF52FFQ+or9ZX6xsaKzlGQR3SAPwXqJnWTullgi5JdsAt2qT2EGLMsB28evHnwZlYWtISW0HLyZNF5WFHYuDE5Njk2OfbIEdFJVBZWQBBhNIyG0W3aiE6iomk0jaadOGGsaKxorLhzp+g8jP0dU7wp3hQfHU0hFEIhP/wgOg97Sf7gD/7nzklukpvkFhYmOs6TLKaA6AP1gfpADw/4Gr6Gr11dRedRKbNboqOVR8+wnwFjFsA03DTcNLxfP+XRzJm0iBbRIvEbELFn1BJaQsv9+8255lxzbrNmypWH5dw8V1lMAVFaMLRtKzrG4/LylJWfljPmyNizk2VlndL48VKUFCVFeXjQJtpEm9asocN0mA7zjpjCPdogSpmeq+5r9P77xtnG2cbZzZod/eboN0e/uXRJdMynsZhuttqftD9pfzp4EKfjdJzu5yc6D0RCJETGxRkDjYHGQMsZUmOsMDRc13Bdw3V2duViy8WWi23Y0DzLPMs8q1YtTT9NP00/Z2c5W86Ws//ccw5H42gcXb48mMEM5r/YmTAKoiCqXDlaQStohZ3d8+bCnbgTd5Ypo3S1dnB40eOjZbSMlt27Bz2hJ/QshHUTs2E2zM7MxLfxbXz7+a/kcASOwBFEspPsJDtdvy6Nk8ZJ465exbbYFtsmJSmTc6xv8oPwAuKT4ZPhk1G5cu6V3Cu5V65dwzAMwzCNRnQumANzYM4HHxhbGFsYW8TEiI7DGGOWRnhXW/N483jz+Nat8SSexJPiCwdFUzRFP3hg42TjZOO0caPoPIwxZqmE3wMhLWlJazmtSjAcwzE8Li6pflL9pPo8RswYY08jvIDAG/AGvOHtLTqGSpm2+3//JzoHY4xZOmEFJIiCKIhsbJQuoh4eok+Eit6it+itPXtE52CMMUsn7B7I/e73u9/v/uabmI7pmP7isy0KzQgYASOuXUtxTHFMcTx1SnQcxhizdMKuQPL75PfJ7+PlJfoEqCiLsihr9+5Hj3jBIGOM/QNx90BOwAk4odOJPgEFJ2KptFRaunev6ByMMWYthBUQvIk38aZeL/oEqEgiiaTkZNE5GGPMWggrIDSLZtGs+vVFn4DH9zbnex+MMfasir2AqCvPsSk2xaavvCL6BMBxOA7H09OVnkH374uOwxhj1qLYC4j5ffP75vdr1xZ94AUOwkE4ePy46BiMMWZtir2AyF3lrnLXOnVEH7iKfMmXfE+cEJ2DMcasTfHfA2kEjaDRv/4l+sALTsCv0q/Sr6dPi87BGGPWptgLCLqjO7pb0BXISlpJKy1voxbGGLN0xX8F0gbaQBvLKSDSIGmQNOj6ddE5GGPM2hR/ASEgoBo1RB+4StnA6sYN0TkYY8zaFHsBoZk0k2ZWqiT6wFXZKdkp2SnXronOwRhj1qb4r0DKQBkoU6GC6ANX3L2b1j2te1r3QtjykjHGSpniLyB2YAd2llJAeOEgY4y9qOKfhbUcl+Nye3vRBw6+4Au+3HWXMcZeVLEVkODg4ODgYI0GjGAEI6LoA+cCwhhjL6fYCkhKQEpASoCNsA2sGGOMFa5iKyB21e2q21XnT/yMMVZSFFsBUWY75eWBDnSgs4BCcggOwSELGEpjjDErVcw30YnAG7zBW/y0WepDfahP5cqiczDGmLUq/mm8RjCCMSdH9IFjOIZjeJky/k7+Tv5Ojo6i8zDGmLUp/gISBEEQdOeO6ANXPajzoM6DOlWris7BGGPWpvgLyByYA3Nu3RJ94CpyJmdydnYWnYMxxqxN8ffC2k7bafvNm6IPvOAE+Ev+kj9fgTDG2PMq/pXoC3EhLrSc5oWyXtbL+po1RedgjDFrU/xDWJWhMlS+cEH0gauwMTbGxg0bis7BGGPWpvgLyApYASsyMkQfuIrKUlkq26iR6ByMMWZtir+AAACABV2BfIqf4qdcQBhj7HkVewGR58vz5fmnT4s+8AKJkAiJzs4e8R7xHvE8G4sxxp5VsReQepH1IutF/vILRVM0RT94IPoEFJyIddI6aV3jxqJzMMaYtdAU9y9MS0tLS0sjcnF0cXRx7N4dfoPf4Ldq1USfCGm7tF3afvbsZfNl82Xz/v2i8zDGmKUTdA8EAKpAFahiMok+ASoaQSNoRIsWonMwxpi1EFZA6Cf6iX46dEj0CSjI05k6U2c/P58MnwyfDAcH0XkYY8zSCdvgCQEBwXIKiNpcMdc31zfX19dXeXb3btG5GGPMUgm7AjGajCaj6cQJ5dHdu6JPRIEBMAAGNG8uOgZjjFk6cfdAAABAlpWvhw+LPhEFMiADMt55R3QMxhizdIILCAAYwAAGCxrKmopTcaqXl8cwj2Eew+rXF52HMcYslfgCchfuwt2DB0XHeJLGXeOuce/RQ3QOxhizVMILyN2YuzF3Y+Lj6TAdpsOZmaLzFFgIC2Hh+++LjsEYY5aq2BcSPunWtlvbbm3Lz3eRXCQXydMTzsAZOGMBvakQELBKlZpv1Xyr5lubNl1Ou5x2Oe3qVdGxGGPMUgi/AinQGlpD640bRcd4krxUXiov7d1bdA7GGLM0llNAhsAQGLJ1K+hBD/rcXNFxVHScjtPxDz90n+M+x31OuXKi8zDGmKUQPoSlunLlypUrVx4+dIl0iXSJ9PeH7bAdtterJzoXxmEcxjk4SD2lnlLPS5eurLqy6sqq5GTRuRhjRcfrotdFr4uvvVa9SvUq1av4+ro2c23m2qxBg2oPqz2s9tDRMcAnwCfA5/ff1d5+ovOKImwl+tPgcByOwzduJIkkkt59V3SeglzZmI3ZI0Yoj775RvmqrmNhjFmj4ODg4OBgjSb9fPr59PP9+9NMmkkzx46VO8md5E6vvaZ0zAAgICAAkEACCQDS09PT09Pv3tVO107XTl+7Vr4qX5WvfvXVkagjUUeizp4VfVzFBUUHeJIyVFS1qu0523O25zIylHUidnaic6kohEIopEsX03DTcNPwn38WnYcx9vx0Wp1Wp61ShSIogiLWr8dZOAtnBQW93E/Ny4NBMAgGzZgBS2AJLJk2Tem4kZcn+niLisUVEJUuRZeiS1m7FgbCQBhoOesxaBftol0HD5oqmiqaKr71lug8jLFnpwxNOTnJHeWOcscDB5TZlg0aFPovagNtoM2WLXer3q16t2q3bueGnRt2btjDh6KPv7BZzk30J3mAB3ioQ0WWA1tiS2zp76+7qLuou9i2reg8jLF/pg5VyWlympy2YUORFQ7VNtgG29q3f6XtK21faTt3rujjLyoWW0CMaEQj7tsHARAAASdPis7zJEqlVEqdPVt9YYrOwxh7uvT26e3T248ZA+NhPIwPDCyu34uzcTbODg319PP08/TT60Wfh8Jm8W98NSrWqFijoq0t3sf7eN+Cbqrvxt24u2rVW7du3bp169IlZRaZ0Sg6F2Psf7wWeC3wWtCokTIpZ80a5Z6qTfFNHroCV+AKIprRjGZJUt4nNm8WfV4Ki8VegajyLuVdyrv0/feUREmUlJMjOs+fzIW5MHfqVH8nfyd/J0dH0XEYYwBBFERBZGMj15HryHW++w4WwSJYZG8vNlXJu2dq8QUkNTU1NTX19m2IhEiIXLNGdJ4n4UgciSOrVXtw6cGlB5ciIkTnYYwBZK/OXp29etgwmAyTYbL4oSNKpmRKrl1bdI7CZvEFRCVfkC/IF2bOVP5HmM2i8/yJP/iD/9ix+kB9oD7Q01N0HMZKoybUhJpQnTqwH/bD/qlTRecpkAzJkIwWO+v1RVlNAVEX6OAMnIEzVq4Uneev2dqSjnSk++67husarmu4znLWrzBW8iHa7LfZb7N/0SLlDdtyWg/halyNqy9eFJ2jsFlNASmwATbAhmnTlAcWuEAnHuIh3t29TL0y9crU+/RT0XEYKw309fX19fXDw2EkjISRljPZpkAf6AN9jh0THaOwWV0BMRqNRqPx/HnqRb2o1w8/iM7zVB7gAR4REV51vep61fXyEh2HsZJI30ffR9/nzTflU/Ip+dTs2aLzPA2GYiiG7tghOkdhs7oCorLZZ7PPZp/lXomgF3qhl41N/on8E/knfvjB+6z3We+zr7wiOhdjJYHaHZvSKI3SYmPRG73R28FBdK4/CYMwCHv40DzPPM88b8MG0XEKm9UWkKTNSZuTNv/yC8RCLMSuWCE6z9NgAAZgwOuvmx3NjmbHmJhHz5a4m2mMFSebXja9bHotXVrkK8pfEt2je3Rv3bojgUcCjwRevy46T2Gz2gKiyvsp76e8nz79FIbBMBh2+7boPE+D7bAdtuvUSZukTdIm8b0Rxl6EvpK+kr7SuHHYCTthp169ROd5GlpEi2hRfj4NoAE0YMYM0XmKSon5JKzT6XQ6XViY8mjhQtF5nioUQiFUlukG3aAbnTqZJpgmmCZs2SI6FmOWTDtBO0E74Z13oDN0hs7//S+GYRiGWXALIQICWrZM6cY7aJDoOEWlxBQQhSRpN2k3aTclJuJUnIpTLf3m9d27+Aa+gW+89ZZhpWGlYeXx46ITMWZJ1FYksqPsKDvu3w9REAVRlSqJzvU0lEiJlHjzJjbFpti0QQOlgNy4ITpXUbH6IazHyTJ8Dp/D52Fh6iWk6ER/r0IFeofeoXd27dJ/of9C/8Xrr4tOxJglaPJxk4+bfOzqKq+QV8grtm619MJRYCtsha3jx5f0wqGy3EvAF3TlkRquNVxruDo74xk8g2e8vUXneqpESITEcuWoP/Wn/u3aVS1btWzVsuvX/2743fC7IStLdDzGipNPhk+GT0blyuAADuCwZ4+yolz81tb/hCbQBJqQkGB6z/Se6b2hQx89W+K3ui1xBUTlkumS6ZKZkAB+4Ad+ISFwES7CRcttdog7cSfurFRJ6i/1l/q/+67LWZezLmfXrVPK4f37ovMxVpSUHQIrVJCvydfka9u2QQzEQIzltwRSm7xiCIZgSLt2yt9ryZtt9TQlbAjrf5RLyLt35SA5SA4KCVFvXovO9Y/+Df+GfzdsqExP3L7dI94j3iPe2Vl0LMaKglo4oAW0gBZxcbAH9sAeHx/RuZ7ZQTgIBz/7TFngfOqU6DjFrcQWEFVKcEpwSvCuXeRDPuQzZ47oPM9Hq5UeSA+kBwcOeHfw7uDdoW5d0YkYKwwFhQMAALZvt7bCoW5t/er8V+e/Oj8yUnQeUUrYLKynU/cHyI7LjsuOi4+HSTAJJvn6is71rOgQHaJDV69KraRWUqu2bQ3xhnhDfEqK6FyMPQ9lun2NGsojdfq6Vis61zPzBm/wvnPHvNC80LzQ0/MoHsWj+OuvomOJUuKvQFT7cB/uQ7MZ8zEf8/v0ocN0mA5nZorO9azQF33Rt3p16kf9qF98vO6O7o7uzttvi87F2LPwzPLM8sx64w3lnuShQ8qzVlQ4HsEszMKssLDSXjhUJfYm+tNcXn159eXVt2/XqFejXo16GRl4GA/j4S5dROd6ZsmQDMl2dpAGaZDWo0eNcjXK1Sh3+/aV3678duW35GTR8Rj7Ix3pSEfNmuFaXItrd+yA9bAe1levLjrXi1m0yLjduN24fdYs0UksRakZwnoa5ZJaXbmurmS3VqtX53yS80nOJ6Ghad3Tuqd1z84WnYiVTrpVulW6VaNGKV2zZ81Sm4uKzvW81Om5D/If5D/Ib95c+bvKzRWdy1KUmiGspylvKG8obxg2DN6Bd+Cd7dtF53k5vXs72DjYONgcPlwwZMBYMVA2UCtfXpeiS9GlrF0LX8PX8PVXX1lr4QBf8AXfy5dxOk7H6d26ceH4a6W+gKj3RjT9Nf01/bt3p320j/ZZcUuRR9OApVgpVopNStJqtVqt9qOPlG9yF2BWuLTvat/Vvuvj44AO6IAmEwyEgTCwRw/RuV6Uuq4DEiABErp0UabnXrkiOpel4jeUJ6gtFGwCbAJsAg4fVj5JubqKzlU4DhzAztgZOw8caPjU8Knh09OnRSdi1qVgNmNMdkx2zOjRSouRL75QvmtrKzrfC3u0TkzuJfeSewUHpzimOKY4lrz9OwobF5CnUHcSlCvLleXKe/cqz5YtKzrXyyr4hPVoAZQ6jz02NjY2NtbSe4cxUTxDPUM9Q319sQN2wA4LF+JknIyTPTxE5yoseAWv4JVRowyXDZcNl0vvuo7nxQXkH+hO6U7pTnXqBO/D+/B+bKzyrBV/0noC7aW9tDclheIojuLGjlUXXorOxcTyuuh10euik1N+bn5ufu6sWTgTZ+LMAQPACEYwlqCh0P7QH/rPmGEcYhxiHDJhgug41qbkvBCKmH6Yfph+WNeudJAO0sE1a5RnS04hedyOHVgOy2G5iAhesFg6KLMRy5ZVNmYbOpRepVfp1XHjcDgOx+GVK4vOV9ioA3WgDgsWmKaYppimqM0P2fPiAvKclNlNXbpIzaRmUrO1a5VnS2AhUXuHLYbFsHjtWnm+PF+eP3lyil+KX4rfuXOi47GXUy+qXlS9KHv7ivMrzq84f9Ag+YR8Qj4xcaK6YFV0vqJCsRRLsd9+a3IzuZnc1I2eSn7X3KJS6mdhPa/Hb6699x6EQRiEPXwoOlehWwyLYbH06PXRu7d0XDouHT99Wrtau1q7+v/+zzPdM90zvUMH5fslaEijhFJ7T2l3andqdw4fXsGpglMFp/Pn6RV6hV6ZP7+kFw6IhViIXbJEKRzqrEQuHC+L//BfknLp37kz6EEP+h9/BAMYwGBnJzpXcaHP6XP6/MgRuA/34f68eZlXM69mXl2z5tywc8PODSuBhdVKKAWjaVNl5feAARAMwRDcp4/yXeufDPLMtsE22DZ3rrGqsaqx6qhRypNcOAoLF5BCohSSdu0gHMIhfO1aiIZoiC5fXnSuYjcMhsGw27fpOl2n6z//jANxIA5cu9ZtkNsgt0G7d/Nsr8Klv6+/r79fq5ZskA2yoUcPvIE38Eb//gXbApQ2j4ZeqQE1oAaffGIKNAWaAr/8UnSskooLSCHzCvYK9gr28MgfnD84f/DmzTgGx+CYmjVF5xKNIimSIn//Hd3QDd3WrwdXcAXX9etzYnNic2ITEnil79/TVtVW1VZ1d1dWRnfsCCfhJJzs3BmyIAuytNoSNzvqhdy/L++V98p7+/bldRzFo5S/4IqOp5+nn6efi4s0QZogTdi0CSbDZJis14vOZZnu36fRNJpGJyRIA6QB0oC9e+EW3IJbe/aUcyjnUM4hKUntGCA6aWFTF+Zl2mXaZdo1aiStllZLqwMDyZ/8yT8wEHfhLtwVGAhzYS7MrVpVdF5Lo25zoHld87rm9Y4dk39J/iX5F24qWly4gBQxdXokhVIohcbE4GJcjIu7dhWdy2p4gRd43btHs2gWzTpxQlnwdeKE0uTu5EnpXeld6d3jx/MG5Q3KG3TypNJm+7fflP+4+Me63ee4z3GfU66c3VG7o3ZH69bNn5o/NX9q3bo4GAfj4FdfhVbQClo1boxrcA2u8fBQJmE0agSLYBEssrcXfbqtS2oqEBBQ+/bKDqQXLohOVNpwASlWiLoFugW6Bf/+NxyDY3AsIoKHHgoXJVMyJZvNYAYzmG/cgFzIhdz/fcUojMKoa9cgBEIg5M6dZ/65QECg0WAwBmOwkxO0hJbQ0slJ+blVqkAe5EFelSqQCImQyFsQF5l20A7a/fyzpq+mr6Zvv35J9ZPqJ9W3nn19Shp+4xKkYEOoltASWn7/vfKsulMbYwwAgKIpmqIfPIBsyIbsiAhTK1MrU6t580TnYgouIIJ5xHvEe8Q7O2t2aHZodixfrkw7bN9edC7GRKJpNI2mnTiBE3EiTuzVSxmiSk0VnYs9jguIRUFU2q8PGoSIiKg2dStF8/ZZ6aQDHeiIIAIiIGLpUltbW1tb2xEjEmsl1kqslZMjOh77a1xALJQ6bRPSIR3SV63CIAzCoDffFJ2LsULlB37g99tvShv1jz9WWuXExYmOxZ4NtzKxUKZrpmuma8eOYSAGYqBWq8xCGjGCDtNhOsw3DZk1y8tTvkZF5QTkBOQEvPkmFw7rxFcgVkZdX4I9sAf2mDkTT+AJPNGnD8/mYpZvz578yPzI/MghQ44EHgk8EpiWJjoRezn8hmPl9Kn6VH1qUBD1o37Ub/585dnGjUXnYqXcoz3FoQt0gS7jxxtbGFsYW8TEiI7FChcPYVk5Q2NDY0PjffuUhQo6nTrUBT7gAz7Xr4vOx0oHdUU4jIJRMGr0aDgEh+BQ/fpcOEo2vgIpodQV0TaeNp42ngMHKiu4J0zglhisUIyAETDi2jWQQQb566+VvdHnzzcajUaj8f590fFY8eACUkp4n/U+6332lVfMn5g/MX8SGoou6IIuI0YonxRdXETnYxZuFIyCUZcugR3Ygd2sWeW7le9WvtvSpUqPsgcPRMdjYvAQVimhtnwwbTBtMG2YMycnMCcwJ7BuXWXr2g8/LNjXgzEAUDok7N+PNbAG1ggJuXvz7s27N1991RhsDDYGz5/PhYMB8BUIe4JnqGeoZ6ivLzbEhtgwLAyaQlNoGhyM4RiO4WXKiM7HChfNo3k079YtfA1fw9diYmQH2UF2WLJEaYd+8qTofMyycQFhf6sJNaEmVLGiTZxNnE1c166URVmU1bcv3sE7eCcg4PGtb5lly8tT2ubv26c0m/zuO8e+jn0d+/70E19RsBfBBYS9EHUnPPov/Zf+27mzsg6lc2eaTtNpemAgeqEXetnYiM5ZOt29C8tgGSyLi4McyIGcTZtyQ3NDc0Pj4lJTU1NTU2/fFp2QlQxcQFih8snwyfDJqFw51y3XLdft7bexMTbGxq1awTgYB+NatYI5MAfm1KkjOqfVerRlK1SBKlDl1Ck6Rsfo2O7dOAJH4Ij//CdnR86OnB379vEOj6w4cAFhxUq/Rb9Fv8XNTR4gD5AH+PmhCU1o8vGBTtAJOvn6Kv9KXQhpays6b7FT95RHQsLERGgADaBBYiJshI2w8fBhjMM4jEtMVLrT3r0rOi4r3biAMIui0+q0Oq2tLV2ki3TxjTfgS/gSvmzcGDMxEzMbNYIgCIKgWrXgB/gBfqhdW5k95uqKq3AVrnJ1tZid/fSgB31urrID4W+/QTWoBtXOnwc3cAO38+dhH+yDfenpShfa8+el8lJ5qfzJk8k1k2sm1zx7Vvkhxb+jImPPgwsIK1G8gr2CvYKrVzdfMl8yX6pZU1ouLZeWu7pCb+gNve3sKIIiKKJcOZgJM2GmnZ2UJWVJWXZ2NIkm0aRy5ZQFcYjkS77kW768ci8nK0uZrXT7Ni7ABbggKwuGwlAYmpmpdJHNytL8R/MfzX+ysiAO4iDuxo26H9T9oO4Hly/HxsbGxsbm54s+L4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYKzb/D4DEm9oGCaFQAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE3LTEyLTE1VDE1OjU3OjI3KzA4OjAwohG+LwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNy0xMi0xNVQxNTo1NzoyNyswODowMNNMBpMAAABPdEVYdHN2ZzpiYXNlLXVyaQBmaWxlOi8vL2hvbWUvYWRtaW4vaWNvbi1mb250L3RtcC9pY29uX2NrMWJ6YTB6ajlqamRjeHIvcmVmcmVzaC5zdmejF0ikAAAAAElFTkSuQmCC);background-size:contain}.login-wrap{background-image:url(./login_index_bg-c0e47ae7.png);background-repeat:no-repeat;background-size:cover}.login-site-main{padding:0!important}.site-warp{background-image:url(./site_bg-890d06bf.png);background-color:#fff;background-repeat:no-repeat;background-size:100% 100%}.input-with-select .el-input-group__prepend{background-color:var(--el-fill-color-blank);padding:0 15px}.login-main{display:flex!important}.login{background:var(--el-bg-color)}.admin_name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-o-text-overflow:ellipsis}@media only screen and (max-width: 750px){.login-main-left{display:none}} diff --git a/niucloud/public/admin/assets/index-a724c67b.js b/niucloud/public/admin/assets/index-a724c67b.js new file mode 100644 index 0000000..1b21694 --- /dev/null +++ b/niucloud/public/admin/assets/index-a724c67b.js @@ -0,0 +1 @@ +import{d as Z,r as k,cK as E,U as C,cT as xe,cU as be,q as G,h as a,c as g,e as t,w as o,a as e,t as y,u as s,N as v,aQ as X,F as L,G as U,A as z,R as he,aw as we,ax as ve,aK as ye,cC as ke,an as J,cV as Ce,p as ee,g as te,cW as F,I as D,i as N,d1 as De,aS as oe,aT as se,aU as ne,O as P,K as ae,cQ as Ye,aG as Ve,a0 as le,cR as Be,cL as ce,v as Ge,s as ie,B as K,y as Q,cn as $,al as ze,am as Ne,E as Ze,a7 as Oe,Q as re,f as ue,cE as de,cS as Se,cM as Me,aZ as We,J as Ee,Z as Te}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as W}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{ag as Ie,ah as Re,ae as Xe,af as Fe}from"./sys-0f76aff3.js";import{_ as q}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css *//* empty css */const Le="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbZJREFUeF7t201oXFUUB/DMRyJNpE0JuJqYTWtQs2pLqxSzcWGiK8FNceOqiLiMOxe1i0IFXdhFIXSli6agoJS6aBEM2o2QlbXFfkBNhRBNbRIyTTOTzHjv8O5wc3Pf55x578y7/0LI1+S8c8/95eTMfdNCH/6hAjmtQCGn68KyUIE+4AaC3FYAuHO7tVhYWrjTug52tHcq0Ox2qlToqOJ0e72I3zsV6Bg/FcqgOFTX6J1tQaZRKxAEOFPcJtqgzwE86na78zgdrwk57PNIVYqLzvZ49TX9e34fR0oKD3KmAn7A48D3LVanuOXP67ht0OXF417Hmd11eKF+3Vl+XX3PfC/LFXlciYPOhGuibkG/d+/eK5VKZWZgYOBEs9ksp7F5Ozs7641GYzWNa+EayStQKBRsMOtbW1s379+//83Ro0cfeXgVcD/kkYBHwW0bMVTHbgOv1WrXy+XypFhAlJjJK4SfzG0FRIPaevbs2ddDQ0MfG91bRx40suyqTRSIto7dxr24uPia6NQ3hOmB3FYdC0u1AuIv8fKDBw/eGh8fv2N0cjWW2MaVPTmG4Q6CXRR/Tr4V48c7mKlT3XsnLiZG2sbGxsb5/fv3f+YBbwR0c2tN4uDWR5GiBC3+jKyhYzthLZNFbm9vr/T3948auP3m8Y46t8TdQi3f1+v1X8SMfSyTVeOizlRgc3PzyuDg4Adiwapz+3XwRLj1jq2AF8WfjSrGEWeMZbZQ4axWLBaHPdwKtt69fU9OoowlCne7a9+9e/f44cOHfwbuzPbcpQs3FxYWjol/ty3dO/CJZRBua8eWI8nTp09n9+3b975LFcZas6vA6urq2YMHD57XurfZwWVyezq4H27zBk27a0vcYtC/UyqVXsxuubiySxUQc/evYu6eMnDrwBPj3gXbw30buF3ile1afXCruVsi7wi3BN5+E537D+DOdsNdurqH+22x5h3LaBILt3m7fRdsEbwkcN8Cbpd4ZbtWDbeErAOX3Vvh3tO9bTO3/jVzJCl5YwlwZ7vfTl1dHGDcFK83mda6tgKeGPeeI0DZteWbeJHULe/OkVNFxmKzqYCHWx9LJG4F2/YS2VaiQZ1bx62PJsCdzR47e1ULbjmK+N2xbNcpCe6yfP2teMHUq85WGwtPtQIebvkCPdmxbTO39WZOXNytsURc7Lq4iXM81RXiYs5WIFXc1Wr1mjhUP+lstbHwVCtg4NZPTPS5O9ZpiW3mbnVu4E51b52/GHA7TyC/BQDu/O6t8ysDbucJ5LcAwJ3fvXV+ZU7jFv9buk+83sV5BHktgDjAmBsZGflQO+M2b7/TnXNzOy0RLwfoEzeW8rq3zq/ryZMnn4+NjZ0Dbucp5K8AwI3OnT/V3oqAG7iB2/h/lIleW4KZO7eOWC4MnRudmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYAbuBmCZMiKeAGbgpHLGMAN3CzhEmRFHADN4UjljGAG7hZwqRICriBm8IRyxjADdwsYVIkBdzATeGIZQzgBm6WMCmSAm7gpnDEMgZwAzdLmBRJATdwUzhiGQO4gZslTIqkgBu4KRyxjAHcwM0SJkVSwA3cFI5YxgBu4GYJkyIp4AZuCkcsYwA3cLOESZEUcAM3hSOWMYAbuFnCpEgKuIGbwhHLGMAN3CxhUiQF3MBN4YhlDOAGbpYwKZICbuCmcMQyBnADN0uYFEkBN3BTOGIZA7iBmyVMiqSAG7gpHLGMAdzAzRImRVLADdwUjljGAG7gZgmTIingBm4KRyxjADdws4RJkRRwAzeFI5YxgBu4WcKkSAq4gZvCEcsYwA3cLGFSJAXcwE3hiGUM4AZuljApkgJu4KZwxDIGcAM3S5gUSQE3cFM4YhkDuIGbJUyKpIAbuCkcsYwB3MDNEiZFUsAN3BSOWMYwcO+IJBveW1N7L3OXn7f/FSyrUV+T7+Vb0XgrV6vVa4ODgye5VKJWq/VtATeX7SDPI03cJYH7R+Am30ME9KnA2tra+dHR0XPi23rXlt2bpHOrDl4SAUsrKyufjIyMfMplN9C5uexEd/JYXFx8b2Ji4oaGWyLXYatxJPJYIjOVI4k+mrRwz8/PT0xOTt7szlLiRwXu+DXrpZ+Ym5sbP3369JLIWc3aqoNLzOpNLikWbnPmlrhbM3ij0fivUCjIjzP/B9yZb0HXEmg2m/8cOHDgJQtsfSxR1w/FLR+oP6nUu3erc0vcGxsb3w0NDb3ZtVXFCAzcMYrVYw8VTybPjo2Nfenhlh3b7NoS+Z6urSM2l+yHW52clCqVSvnhw4d/lUql57OuF3BnvQPdub44AZs/dOjQu+IJpY5aPwZUc3di3Go0MWfv4sLCwhtHjhz5wRtVurPCCFGBO0KReuwhYuxdvXTp0uszMzP6rK1gm8A7wm0772518atXr748NTX1fblcfiGr+gF3VpXvznU3Nzd/unjx4kdnzpz5VxtD/GBbT0qCxhJz7rZ17/aIImf0x48ffzE8PHyqWCw+150l+0cF7rQr3p3r1ev1P5eWlr4Sx35XvBlbgtZn7EhHgCo72x1KPXN1l1J/b96x3HVcODs7W5menj4loJ8QgfpVMPGsN+xaiSsmftP/Xl9ff5Q4AH4w1QqIU7b2qYb4uLa8vPz75cuXf7tw4cKaSETN0WanNkcR8xhwzxrCwCnUqpOb597qc31s0X8R1M+FXSfV4uJiLCpgnk/rWM3XjgS9lmTX8Z/ZmYNWar7ORH+9iT6qmB+bvxTAzcITqyTCcKvvm7fZA2/cJMGtd2ATuO1zs2PruAGdlbFUk9G7rP5E0PxYgTa7uW0USdy5bU8sbdD1zg3YqXrpuYt1Alwu1vd2u1mJKF3U7LrmqGLO4/ovRNDHPbcrSJikAjbcCq16rzq3DbPfz8d+QmkbYXTcti5uggZwEhO5CBIGW8ds69C+Z9q26kTp3H4zuh/yMNy52CUsouMKBEE3EUfu1n5Yo2Rr/jKYwAE7ShXxGFUB88mgrTP7PSa0inE7twroh9yG2+9rocnhAbmugO2Uw2/s8D0RCapQUtxmzKA4VNfI9U47vDg/uIlAdzKW+O0BADuss0tLZ4M7bH3AH1Yh977fMd6wkgFdWIXw/Z6tAHD37NYh8bAKAHdYhfD9nq0AcPfs1iHxsAr8D7xvfQ8bZ0PpAAAAAElFTkSuQmCC",Ue="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALcAAACHCAYAAABUFMgyAAAABHNCSVQICAgIfAhkiAAACbtJREFUeF7tm39olVUYx++92wo0ZiL0V2v/SKMcVMzUtMTyjzL/KUpwWCpuzbZVxpikIWQLBIMUnLiMSWXYJhSYsiA1dNaQCSqkadGGOQdj/dpubM79uPf2nts9l7Oz8/66976/nvsdXO6v957zPM/53A/Pe967cAh/qADRCoSJ5oW0UIEQ4AYEZCsAuMkuLRJzC2635sGKBqcCCadDzRV0uRrH6XwxfnAqkDX8uYLSaJxczRGcZUGkVitgBLCncMvQGj0H4FaXO3+OE+GVQTZ7bqlKdqFTHc9fE9/Te2wpKByUNxXQA9wO+LrFyhZu9nkRbhXobHK78+TN6uZxonp2Zq/z9+R7Vi7L7Yod6GRwZaiToLe0fP5wJBJu/HsounhqcrLQjcV7fNFj/65YvmTYjbkwR+YVCIfDKjAnx8fHu3p6er6oqKi4lYKXA64HuSXArcCtajG4sdOA72s+dPK7k+eW37jRZ2XMzCuk+GR93YZQXe2GnI6JwdyvQDweH79z587h2bNnvyHZW4TcqGWZFrQVEFXGTsPd2npkSdf5S6e6uy/d5X45/p+xrnZ9qL5uo1fTY94cVyAWiw329vY+W1ZWdl0yOW9LVO3KjCjM4DYCO3LgwGdfHWk7tnpoKGo2To7Tnz4c4Ha0vJ4Mnkgk4iMjI7uLi4vfTwEeN7C5MkYzKJV9tTZSRLuFN25qiF64cNkzY/OMALcn/Dk+6dTU1F9FRUUlEtx6/XhW5magJ6Fm93v2Hvyh9VD7QscztDAB4LZQpIAeMjY2dnTWrFms5+Tm1jN4RnCLJ48c8Miq1a+O3rzZb2Z+V0oKuF0psyeTaO3JRCQSuTcFNwdbtLfuzokZnCLYaWvv39+6qOXgl2e1ic0+70pBALcrZfZqksTFixcXan/XFPY2PLE0glNpbNaStHx8+JPm/Z+u8ypbeV7A7ZeVcCaO4eHhprlz5+4W7C0bnE08w+B6cMsnkmlrM7ibPth7vf3o8QecScX+qIDbfs2C9Amt7/5R67ufk+AWAc8Y7mlgp+C+BriDhEewY9WBm/fdDPKs4GaAp2+auX8G3MEGJkjRp+B+Xos5pmhNbMEtX26fBrY2eIEG91XAHSQ8gh2rADcDWQSc2ZvDPcPeqp5bfE1uSQpSbQngDjYvgYr+9u3bXdrvTVYJ1uaAZww33y0RAWdwa+beo8F9gl058sUfTih9sQyOBZGCW2xLGNwcbNVPZJOxGJlbhFtsTQC3Y8uIgVUVUMDNWhG9K5bpITKBu3Db9l1dx0+cWuCXpYC5/bISzsSRgnt1qt9W9dzKizl24U62JW+9vePk6dNdi5xJxf6ogNt+zYL0CVfhrq3f1tHZ2b3MLwUC3H5ZCWfikOAWd0zEvptNPu0qZUbmBtzOLCJGVVcAcOM/cch+NwA34AbcaEvIMkA2MZgb5gbcFM29uWZdaHPNK2QXN98TGx0dbZ83b97rqX3u/Notqa5aG6quqsx3BsjmPzQ09GFpaekuwE12ifM3McANc5OlH3ADbsBN8YQSPTdZrpOJwdwwN1nCATfgBtxoS8gyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmBtwwN1kGyCYGc8PcgBvmJssA2cRgbpgbcMPcZBkgmxjMDXMDbpibLANkE4O5YW7ADXOTZYBsYjA3zA24YW6yDJBNDOaGuQE3zE2WAbKJwdwwN+CGuckyQDYxmBvmzhe4Y1qi8dQtIdyz/Nnz9F9YURH+Grtnt4h0K6yt39bR2dm9zC/VrK5aG6oG3H5ZjpzHIZnbUbgLNLi/Bdw5X0MMqFOBaDS6u6SkZJf2tgg2s3dOzM0NXqANWLD1naatHR1ndvhlNWBuv6yEM3H09fW9XF5efkqAm0Eugs3bEcttCYuUtSRia5KEu66uofzsuctdzqRif1TAbb9mQfpEe3t7WU1NzYAWM++1ucEZzPzGUrIFt9xzM7iTPfjSJ1/4Z3g4yh57/ge4PV8CxwJIJBJ/zJkz50EF2GJbwuc3hZsdKJ5UivZOmpvBXf/mu1+fOXN+pWNZ2RgYcNsoVsAO1U4mm0pLS/ek4GbGlq3NIJ9hbRFiOWU9uPnOSUFxcXHhiqdfutnT+/s9XtcLcHu9As7MPz4+3jl//vwXtRNKEWpxG5D33RnDzVsTufeObNmy/anz3Ve+GRkZ9bQ9AdzOwOXlqPF4fLi1tfWJxsZGsdfmYMuAZwW3ar87afH1mzY/NDEWOfbTlV/u86oYgNuryjsz79jY2PctLS11O3fu/FNoQ/TAVu6UGLUlct+tsne6RWE9ekPDex9dvfZbZX//wN3OpKw/6mvVlaGqTWvdnhbz5bgCk5OTvw4MDOzTtv2OpnpsBrTYY1vaAuRhqa5QiiHzq5TivXzFctp24Zo1G+/XNtwrJyZji2OxWBEfLBFKmM2VcakefWRB/8pnlt7KeAB80NUKhMPh9K6G9nhicHDwSltb24Xm5uaoFgjvo2VTy62IvA04Iwcz4DjU3OTyvjd/LrYt4heBf85sHleLi8l8UQF5f1qEVf7tiNFvSaZt/8lmNspU/p2J+HsTsVWRH8tfCsDtC558FYQZ3Px9+TK74YWbTOAWDSwDrnouG1uEG6D7ijFXgxEtK54Iyo850LLNVa1IxuZWnViqQBfNDbBd5SVwk2UDOEtW93K7XAkrFpWtK7cqcj8ufiGMHgduVRBwTiqggptDy++5uVUw633e9gmlqoUR4VZZXAYagOeECRKDmIEtwqwytO6etqo6Vsyt16PrQW4GN4lVQhJZV8AIdBliy7bWg9VKtPKXQQYcYFupIo7hFZBPBlVm1jvGtIp2zc0H1INcBbfea6bB4QDSFVDtcui1Hbo7IkYVyhRueUyjcXI1B+mVzuPk9MDNCOhs2hK9NQDAeUynQ6n7Bm6z/AC/WYXy7/2s4TUrGaAzqxDeD2wFAHdglw6Bm1UAcJtVCO8HtgKAO7BLh8DNKvAfR+rWAIVxGVEAAAAASUVORK5CYII=",me=x=>(ee("data-v-7620b23f"),x=x(),te(),x),Ke={class:"flex"},Je={class:"setting-item flex items-center justify-between mb-[10px]"},Pe={class:"title text-base text-tx-secondary"},qe={class:""},je=me(()=>e("img",{class:"w-[35px] h-[35px]",src:Le,alt:""},null,-1)),He=me(()=>e("img",{class:"w-[35px] h-[35px]",src:Ue,alt:""},null,-1)),Qe={class:"setting-item flex items-center justify-between mb-[10px]"},$e={class:"title text-base text-tx-secondary"},et={class:""},tt={class:"setting-item flex items-center justify-between mb-[10px]"},ot={class:"title text-base text-tx-secondary"},st={class:""},nt={class:"setting-item mb-[10px]"},at={class:"title text-base text-tx-secondary"},lt={class:"flex mt-[10px] layout-style flex-wrap"},ct=["onClick"],it={class:"absolute z-1 w-[50px] h-[50px] border border-primary-light-5 rounded-[50%] top-[50%] left-[50%] translate-x-[-50%] translate-y-[-50%] flex items-center justify-center text-base text-primary-light-5"},rt=["src"],ut=Z({__name:"layout-setting",setup(x){const _=k(!1),n=E(),f=k([]),b=k(C.get("layout")||"default");Ie().then(c=>{f.value=c.data}).catch(()=>{});const m=xe(),h=be(m),A=G({get(){return n.dark},set(c){n.setTheme("dark",c),h(c),F(n.theme,n.dark?"dark":"light")}}),i=G({get(){return n.sidebar},set(c){n.setTheme("sidebar",c),F(n.theme,n.dark?"dark":"light")}}),p=G({get(){return n.theme},set(c){n.setTheme("theme",c),F(n.theme,n.dark?"dark":"light")}}),w=c=>{Re(c).then(()=>{C.set({key:"layout",data:c}),location.reload()}).catch(()=>{})};return(c,u)=>{const O=W,S=we,Y=ve,B=ye,T=ke,V=J,I=Ce;return a(),g("div",Ke,[t(O,{name:"element-Setting",onClick:u[0]||(u[0]=l=>_.value=!0)}),t(I,{modelValue:_.value,"onUpdate:modelValue":u[4]||(u[4]=l=>_.value=l),title:s(v)("layout.layoutSetting"),size:"300px"},{default:o(()=>[t(V,null,{default:o(()=>[e("div",Je,[e("div",Pe,y(s(v)("layout.sidebarMode")),1),e("div",qe,[t(Y,{modelValue:s(i),"onUpdate:modelValue":u[1]||(u[1]=l=>X(i)?i.value=l:null),class:"ml-4"},{default:o(()=>[t(S,{label:"oneType",size:"large"},{default:o(()=>[je]),_:1}),t(S,{label:"twoType",size:"large"},{default:o(()=>[He]),_:1})]),_:1},8,["modelValue"])])]),e("div",Qe,[e("div",$e,y(s(v)("layout.darkMode")),1),e("div",et,[t(B,{modelValue:s(A),"onUpdate:modelValue":u[2]||(u[2]=l=>X(A)?A.value=l:null),"active-value":!0,"inactive-value":!1},null,8,["modelValue"])])]),e("div",tt,[e("div",ot,y(s(v)("layout.themeColor")),1),e("div",st,[t(T,{modelValue:s(p),"onUpdate:modelValue":u[3]||(u[3]=l=>X(p)?p.value=l:null)},null,8,["modelValue"])])]),e("div",nt,[e("div",at,y(s(v)("layout.layoutStyle")),1),e("div",lt,[(a(!0),g(L,null,U(f.value,(l,r)=>(a(),g("div",{class:z(["relative w-[125px] h-[100px] border mr-[10px] mb-[10px] hover:border-primary",{"border-primary":b.value==l.key}]),onClick:M=>w(l.key)},[e("div",it,y(l.name),1),e("img",{src:s(he)(l.image),alt:"",class:"w-full h-full"},null,8,rt)],10,ct))),256))])])]),_:1})]),_:1},8,["modelValue","title"])])}}});const dt=q(ut,[["__scopeId","data-v-7620b23f"]]),mt=Z({__name:"switch-lang",setup(x){const _=P(),n=E(),f=b=>{n.$patch(m=>{m.lang=b,C.set({key:"lang",data:b})}),De.loadLocaleMessages(_.path,n.lang),location.reload()};return(b,m)=>{const h=W,A=oe,i=se,p=ne;return a(),D(p,{onCommand:f,tabindex:1},{dropdown:o(()=>[t(i,null,{default:o(()=>[t(A,{command:"zh-cn",disabled:s(n).lang=="zh-cn"},{default:o(()=>[N("简体中文")]),_:1},8,["disabled"]),t(A,{command:"en",disabled:s(n).lang=="en"},{default:o(()=>[N("English")]),_:1},8,["disabled"])]),_:1})]),default:o(()=>[t(h,{name:"iconfont-iconfanyi"})]),_:1})}}}),pt={class:"userinfo flex h-full items-center"},_t={class:"user-name pl-[8px]"},ft=Z({__name:"user-info",setup(x){const _=ae(),n=f=>{switch(f){case"logout":_.logout();break}};return(f,b)=>{const m=Ve,h=W,A=le("router-link"),i=oe,p=se,w=ne;return a(),D(w,{onCommand:n,tabindex:1},{dropdown:o(()=>[t(p,null,{default:o(()=>[t(i,{command:"usercenter"},{default:o(()=>[t(A,{to:"/user/center"},{default:o(()=>[N("个人中心")]),_:1})]),_:1}),t(i,{command:"logout"},{default:o(()=>[N("退出登录")]),_:1})]),_:1})]),default:o(()=>[e("div",pt,[t(m,{size:25,icon:s(Ye)},null,8,["icon"]),e("div",_t,y(s(_).userInfo.username),1),t(h,{name:"element-ArrowDown",class:"ml-[5px]"})])]),_:1})}}}),At={class:"right-panel h-full flex items-center justify-end"},gt=["title"],xt={class:"navbar-item flex items-center h-full cursor-pointer"},bt={class:"navbar-item flex items-center h-full cursor-pointer"},ht={class:"navbar-item flex items-center h-full cursor-pointer"},wt={class:"dialog-footer"},vt={class:"flex flex-wrap"},yt=["onClick"],kt=["onClick"],Ct={class:"dialog-footer"},Dt=Z({__name:"index",setup(x){const _=ue(),n=C.get("app_type"),{toggle:f,isFullscreen:b}=Be(),m=E(),h=ce(),A=P(),i=k(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth),p=G(()=>m.dark),w=k(!1),c=k(""),u=k("");C.get("comparisonTokenStorage")&&(c.value=C.get("comparisonTokenStorage")),C.get("comparisonSiteIdStorage")&&(u.value=C.get("comparisonSiteIdStorage")),document.addEventListener("visibilitychange",l=>{document.visibilityState==="visible"&&(u.value!=C.get("siteId")||c.value!=C.get("token"))&&(w.value=!0)});const O=()=>{w.value=!1,location.reload()};Ge(()=>{window.onresize=()=>(()=>{i.value=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth})()}),ie(i,()=>{i.value<992?m.menuIsCollapse||m.toggleMenuCollapse(!0):m.menuIsCollapse&&m.toggleMenuCollapse(!1)});const S=()=>{h.routeRefreshTag&&h.refreshRouterView()};G(()=>{const l=A.matched.filter(r=>r.meta.title);return l[0]&&l[0].path=="/"&&l.splice(0,1),l});const Y=k(),B=k(!1),T=()=>{Xe().then(l=>{B.value=!0,Y.value=l.data;for(let r=0;r{Fe({view_path:V.value}).then(()=>{B.value=!1,_.go(0)})};return(l,r)=>{const M=W,_e=ze,fe=Ne,j=Ze,H=Oe,Ae=re;return a(),D(Ae,{class:z(["h-full px-[10px]",{"layout-header border-b border-color":!s(p)}])},{default:o(()=>[t(fe,{class:"w-100 h-full w-full",justify:"end"},{default:o(()=>[t(_e,{span:12},{default:o(()=>[e("div",At,[e("div",{class:"navbar-item flex items-center h-full cursor-pointer",onClick:S},[t(M,{name:"element-Refresh"})]),s(n)=="site"?(a(),g("i",{key:0,class:"iconfont iconlingdang-xianxing cursor-pointer px-[8px]",title:s(v)("newInfo")},null,8,gt)):K("",!0),s(n)=="site"?(a(),g("div",{key:1,class:"navbar-item flex items-center h-full cursor-pointer",onClick:T},[t(M,{name:"iconfont-iconqiehuan",title:s(v)("indexSwitch")},null,8,["title"])])):K("",!0),e("div",xt,[t(mt)]),e("div",{class:"navbar-item flex items-center h-full cursor-pointer",onClick:r[0]||(r[0]=(...d)=>s(f)&&s(f)(...d))},[s(b)?(a(),D(M,{key:0,name:"iconfont-icontuichuquanping"})):(a(),D(M,{key:1,name:"iconfont-iconquanping"}))]),e("div",bt,[t(dt)]),e("div",ht,[t(ft)])])]),_:1})]),_:1}),Q(e("input",{type:"hidden","onUpdate:modelValue":r[1]||(r[1]=d=>c.value=d)},null,512),[[$,c.value]]),Q(e("input",{type:"hidden","onUpdate:modelValue":r[2]||(r[2]=d=>u.value=d)},null,512),[[$,u.value]]),t(H,{modelValue:w.value,"onUpdate:modelValue":r[3]||(r[3]=d=>w.value=d),title:s(v)("layout.detectionLoginTip"),width:"30%","close-on-click-modal":!1,"close-on-press-escape":!1,"show-close":!1},{footer:o(()=>[e("span",wt,[t(j,{onClick:O},{default:o(()=>[N(y(s(v)("layout.detectionLoginOperation")),1)]),_:1})])]),default:o(()=>[e("span",null,y(s(v)("layout.detectionLoginContent")),1)]),_:1},8,["modelValue","title"]),t(H,{modelValue:B.value,"onUpdate:modelValue":r[4]||(r[4]=d=>B.value=d),title:s(v)("indexTemplate"),width:"550px","destroy-on-close":!0},{footer:o(()=>[e("span",Ct,[t(j,{type:"primary",onClick:I},{default:o(()=>[N(y(s(v)("confirm")),1)]),_:1})])]),default:o(()=>[e("div",vt,[V.value==""?(a(!0),g(L,{key:0},U(Y.value,(d,R)=>(a(),g("div",{key:R},[e("div",{onClick:ge=>V.value=d.view_path,class:z(["index-item py-[5px] px-[10px] mr-[10px] rounded-[3px] cursor-pointer",d.is_use==1?"bg-primary text-[#fff]":""])},[e("span",null,y(d.name),1)],10,yt)]))),128)):(a(!0),g(L,{key:1},U(Y.value,(d,R)=>(a(),g("div",{key:R},[e("div",{onClick:ge=>V.value=d.view_path,class:z(["index-item py-[5px] px-[10px] mr-[10px] rounded-[3px] cursor-pointer",V.value==d.view_path?"bg-primary text-[#fff]":""])},[e("span",null,y(d.name),1)],10,kt)]))),128))])]),_:1},8,["modelValue","title"])]),_:1},8,["class"])}}});const Yt=q(Dt,[["__scopeId","data-v-2eabe7ac"]]),Vt=""+new URL("login_logo-95c4c371.png",import.meta.url).href,pe=x=>(ee("data-v-0c0c76f8"),x=x(),te(),x),Bt={class:""},Gt={key:0,class:"logo flex items-center m-auto max-w-[230px] h-[60px] justify-center"},zt=["src"],Nt={key:1,class:"max-h-full max-w-full",src:Vt,alt:""},Zt={key:1,class:"logo flex items-center justify-center w-[64px] h-[30px]"},Ot=pe(()=>e("i",{class:"text-3xl iconfont iconyunkongjian"},null,-1)),St=[Ot],Mt=pe(()=>e("span",{class:z(["ml-[15px] text-[14px] ease-in duration-200"])},"站点列表",-1)),Wt=Z({__name:"index",setup(x){const _=ae(),n=E(),f=_.siteInfo,b=P(),m=ue(),h=G(()=>String(b.name));ie(b,()=>{n.$patch(i=>{i.menuDrawer=!1})});const A=i=>{m.push({path:i})};return(i,p)=>{const w=de,c=W,u=J,O=Se;return a(),D(O,{class:"h-screen group layout-aside w-[80px] bg-[#F7F8FA] w-[230px] ease-in duration-200"},{default:o(()=>[e("div",Bt,[t(w,{class:"logo-wrap w-100 h-auto mb-[30px]"},{default:o(()=>[s(n).menuIsCollapse?(a(),g("div",Zt,St)):(a(),g("div",Gt,[s(f).logo?(a(),g("img",{key:0,class:"max-h-full max-w-full",src:i.img(s(f).logo),alt:""},null,8,zt)):(a(),g("img",Nt))]))]),_:1}),t(u,{"max-height":"calc(100vh - 90px)"},{default:o(()=>[e("div",{onClick:p[0]||(p[0]=S=>A("/index")),class:z(["flex items-center py-[10px] px-[30px] mb-[8px] cursor-pointer text-[#989898] menu-item whitespace-nowrap",{"bg-color text-color":s(h)=="Symbol(homeIndex)"}])},[t(c,{name:"element-Memo",class:"!w-auto",size:"24px"}),Mt],2)]),_:1})])]),_:1})}}});const Et=q(Wt,[["__scopeId","data-v-0c0c76f8"]]),Tt={class:"common-layout min-w-[1200px]"},It={class:"p-[10px]"},no=Z({__name:"index",setup(x){const _=ce(),n=Me();return(f,b)=>{const m=de,h=le("router-view"),A=J,i=Te,p=re;return a(),g("div",Tt,[t(p,{class:"w-100 h-screen"},{default:o(()=>[t(Et),t(p,null,{default:o(()=>[t(m,{class:"h-[60px]"},{default:o(()=>[t(Yt)]),_:1}),t(i,{class:"main-wrap h-full p-0"},{default:o(()=>[t(A,null,{default:o(()=>[e("div",It,[s(_).routeRefreshTag?(a(),D(h,{key:0},{default:o(({Component:w,route:c})=>[(a(),D(We,{include:s(n).tabNames},[(a(),D(Ee(w),{key:c.fullPath}))],1032,["include"]))]),_:1})):K("",!0)])]),_:1})]),_:1})]),_:1})]),_:1})])}}});export{no as default}; diff --git a/niucloud/public/admin/assets/index-afb1f88d.js b/niucloud/public/admin/assets/index-afb1f88d.js new file mode 100644 index 0000000..aef363e --- /dev/null +++ b/niucloud/public/admin/assets/index-afb1f88d.js @@ -0,0 +1,14 @@ +import{j as Xr,k as L,l as br,m as be,r as O,n as h0,q as mr,s as Kr,v as Br,h as M,c as Y,x as f0,a as I,y as me,z as Be,e as Z,w as J,A as A0,t as $,B as t0,T as Gr,C as kr,D as wr,F as jr,G as Mr,H as Qr,i as _e,I as H0,J as Yr,d as Zr,K as Jr,L as $r,M as Oe,N as a0,O as et,P as rt,Q as tt,u as s0,R as Te,S as P0,f as at,U as nt,V as it,W as ot,X as st,E as xt,Y as ct,Z as ft}from"./index-6010b07e.js";import{_ as ke}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{_ as vt}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";/* empty css *//* empty css */import{g as lt,a as ut}from"./sys-0f76aff3.js";/* empty css */var ye={},dt={get exports(){return ye},set exports(u){ye=u}};function ht(u){throw new Error('Could not dynamically require "'+u+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var q0={},pt={get exports(){return q0},set exports(u){q0=u}};const gt={},_t=Object.freeze(Object.defineProperty({__proto__:null,default:gt},Symbol.toStringTag,{value:"Module"})),yt=Xr(_t);var Ie;function K(){return Ie||(Ie=1,function(u,F){(function(f,e){u.exports=e()})(L,function(){var f=f||function(e,y){var m;if(typeof window<"u"&&window.crypto&&(m=window.crypto),typeof self<"u"&&self.crypto&&(m=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(m=globalThis.crypto),!m&&typeof window<"u"&&window.msCrypto&&(m=window.msCrypto),!m&&typeof L<"u"&&L.crypto&&(m=L.crypto),!m&&typeof ht=="function")try{m=yt}catch{}var B=function(){if(m){if(typeof m.getRandomValues=="function")try{return m.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof m.randomBytes=="function")try{return m.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},h=Object.create||function(){function n(){}return function(i){var x;return n.prototype=i,x=new n,n.prototype=null,x}}(),p={},r=p.lib={},a=r.Base=function(){return{extend:function(n){var i=h(this);return n&&i.mixIn(n),(!i.hasOwnProperty("init")||this.init===i.init)&&(i.init=function(){i.$super.init.apply(this,arguments)}),i.init.prototype=i,i.$super=this,i},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var i in n)n.hasOwnProperty(i)&&(this[i]=n[i]);n.hasOwnProperty("toString")&&(this.toString=n.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),v=r.WordArray=a.extend({init:function(n,i){n=this.words=n||[],i!=y?this.sigBytes=i:this.sigBytes=n.length*4},toString:function(n){return(n||o).stringify(this)},concat:function(n){var i=this.words,x=n.words,k=this.sigBytes,b=n.sigBytes;if(this.clamp(),k%4)for(var w=0;w>>2]>>>24-w%4*8&255;i[k+w>>>2]|=C<<24-(k+w)%4*8}else for(var R=0;R>>2]=x[R>>>2];return this.sigBytes+=b,this},clamp:function(){var n=this.words,i=this.sigBytes;n[i>>>2]&=4294967295<<32-i%4*8,n.length=e.ceil(i/4)},clone:function(){var n=a.clone.call(this);return n.words=this.words.slice(0),n},random:function(n){for(var i=[],x=0;x>>2]>>>24-b%4*8&255;k.push((w>>>4).toString(16)),k.push((w&15).toString(16))}return k.join("")},parse:function(n){for(var i=n.length,x=[],k=0;k>>3]|=parseInt(n.substr(k,2),16)<<24-k%8*4;return new v.init(x,i/2)}},s=t.Latin1={stringify:function(n){for(var i=n.words,x=n.sigBytes,k=[],b=0;b>>2]>>>24-b%4*8&255;k.push(String.fromCharCode(w))}return k.join("")},parse:function(n){for(var i=n.length,x=[],k=0;k>>2]|=(n.charCodeAt(k)&255)<<24-k%4*8;return new v.init(x,i)}},c=t.Utf8={stringify:function(n){try{return decodeURIComponent(escape(s.stringify(n)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(n){return s.parse(unescape(encodeURIComponent(n)))}},l=r.BufferedBlockAlgorithm=a.extend({reset:function(){this._data=new v.init,this._nDataBytes=0},_append:function(n){typeof n=="string"&&(n=c.parse(n)),this._data.concat(n),this._nDataBytes+=n.sigBytes},_process:function(n){var i,x=this._data,k=x.words,b=x.sigBytes,w=this.blockSize,C=w*4,R=b/C;n?R=e.ceil(R):R=e.max((R|0)-this._minBufferSize,0);var d=R*w,g=e.min(d*4,b);if(d){for(var z=0;z>>2]|=p[v]<<24-v%4*8;B.call(this,a,r)}else B.apply(this,arguments)};h.prototype=m}}(),f.lib.WordArray})}(mt)),D0}var N0={},kt={get exports(){return N0},set exports(u){N0=u}},Ve;function wt(){return Ve||(Ve=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=e.enc;B.Utf16=B.Utf16BE={stringify:function(p){for(var r=p.words,a=p.sigBytes,v=[],t=0;t>>2]>>>16-t%4*8&65535;v.push(String.fromCharCode(o))}return v.join("")},parse:function(p){for(var r=p.length,a=[],v=0;v>>1]|=p.charCodeAt(v)<<16-v%2*16;return m.create(a,r*2)}},B.Utf16LE={stringify:function(p){for(var r=p.words,a=p.sigBytes,v=[],t=0;t>>2]>>>16-t%4*8&65535);v.push(String.fromCharCode(o))}return v.join("")},parse:function(p){for(var r=p.length,a=[],v=0;v>>1]|=h(p.charCodeAt(v)<<16-v%2*16);return m.create(a,r*2)}};function h(p){return p<<8&4278255360|p>>>8&16711935}}(),f.enc.Utf16})}(kt)),N0}var O0={},Ct={get exports(){return O0},set exports(u){O0=u}},Xe;function y0(){return Xe||(Xe=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=e.enc;B.Base64={stringify:function(p){var r=p.words,a=p.sigBytes,v=this._map;p.clamp();for(var t=[],o=0;o>>2]>>>24-o%4*8&255,c=r[o+1>>>2]>>>24-(o+1)%4*8&255,l=r[o+2>>>2]>>>24-(o+2)%4*8&255,_=s<<16|c<<8|l,n=0;n<4&&o+n*.75>>6*(3-n)&63));var i=v.charAt(64);if(i)for(;t.length%4;)t.push(i);return t.join("")},parse:function(p){var r=p.length,a=this._map,v=this._reverseMap;if(!v){v=this._reverseMap=[];for(var t=0;t>>6-o%4*2,l=s|c;v[t>>>2]|=l<<24-t%4*8,t++}return m.create(v,t)}}(),f.enc.Base64})}(Ct)),O0}var T0={},St={get exports(){return T0},set exports(u){T0=u}},Ke;function zt(){return Ke||(Ke=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=e.enc;B.Base64url={stringify:function(p,r=!0){var a=p.words,v=p.sigBytes,t=r?this._safe_map:this._map;p.clamp();for(var o=[],s=0;s>>2]>>>24-s%4*8&255,l=a[s+1>>>2]>>>24-(s+1)%4*8&255,_=a[s+2>>>2]>>>24-(s+2)%4*8&255,n=c<<16|l<<8|_,i=0;i<4&&s+i*.75>>6*(3-i)&63));var x=t.charAt(64);if(x)for(;o.length%4;)o.push(x);return o.join("")},parse:function(p,r=!0){var a=p.length,v=r?this._safe_map:this._map,t=this._reverseMap;if(!t){t=this._reverseMap=[];for(var o=0;o>>6-o%4*2,l=s|c;v[t>>>2]|=l<<24-t%4*8,t++}return m.create(v,t)}}(),f.enc.Base64url})}(St)),T0}var I0={},Ht={get exports(){return I0},set exports(u){I0=u}},Ge;function b0(){return Ge||(Ge=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(e){var y=f,m=y.lib,B=m.WordArray,h=m.Hasher,p=y.algo,r=[];(function(){for(var c=0;c<64;c++)r[c]=e.abs(e.sin(c+1))*4294967296|0})();var a=p.MD5=h.extend({_doReset:function(){this._hash=new B.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(c,l){for(var _=0;_<16;_++){var n=l+_,i=c[n];c[n]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var x=this._hash.words,k=c[l+0],b=c[l+1],w=c[l+2],C=c[l+3],R=c[l+4],d=c[l+5],g=c[l+6],z=c[l+7],H=c[l+8],P=c[l+9],D=c[l+10],N=c[l+11],U=c[l+12],T=c[l+13],V=c[l+14],X=c[l+15],S=x[0],E=x[1],W=x[2],A=x[3];S=v(S,E,W,A,k,7,r[0]),A=v(A,S,E,W,b,12,r[1]),W=v(W,A,S,E,w,17,r[2]),E=v(E,W,A,S,C,22,r[3]),S=v(S,E,W,A,R,7,r[4]),A=v(A,S,E,W,d,12,r[5]),W=v(W,A,S,E,g,17,r[6]),E=v(E,W,A,S,z,22,r[7]),S=v(S,E,W,A,H,7,r[8]),A=v(A,S,E,W,P,12,r[9]),W=v(W,A,S,E,D,17,r[10]),E=v(E,W,A,S,N,22,r[11]),S=v(S,E,W,A,U,7,r[12]),A=v(A,S,E,W,T,12,r[13]),W=v(W,A,S,E,V,17,r[14]),E=v(E,W,A,S,X,22,r[15]),S=t(S,E,W,A,b,5,r[16]),A=t(A,S,E,W,g,9,r[17]),W=t(W,A,S,E,N,14,r[18]),E=t(E,W,A,S,k,20,r[19]),S=t(S,E,W,A,d,5,r[20]),A=t(A,S,E,W,D,9,r[21]),W=t(W,A,S,E,X,14,r[22]),E=t(E,W,A,S,R,20,r[23]),S=t(S,E,W,A,P,5,r[24]),A=t(A,S,E,W,V,9,r[25]),W=t(W,A,S,E,C,14,r[26]),E=t(E,W,A,S,H,20,r[27]),S=t(S,E,W,A,T,5,r[28]),A=t(A,S,E,W,w,9,r[29]),W=t(W,A,S,E,z,14,r[30]),E=t(E,W,A,S,U,20,r[31]),S=o(S,E,W,A,d,4,r[32]),A=o(A,S,E,W,H,11,r[33]),W=o(W,A,S,E,N,16,r[34]),E=o(E,W,A,S,V,23,r[35]),S=o(S,E,W,A,b,4,r[36]),A=o(A,S,E,W,R,11,r[37]),W=o(W,A,S,E,z,16,r[38]),E=o(E,W,A,S,D,23,r[39]),S=o(S,E,W,A,T,4,r[40]),A=o(A,S,E,W,k,11,r[41]),W=o(W,A,S,E,C,16,r[42]),E=o(E,W,A,S,g,23,r[43]),S=o(S,E,W,A,P,4,r[44]),A=o(A,S,E,W,U,11,r[45]),W=o(W,A,S,E,X,16,r[46]),E=o(E,W,A,S,w,23,r[47]),S=s(S,E,W,A,k,6,r[48]),A=s(A,S,E,W,z,10,r[49]),W=s(W,A,S,E,V,15,r[50]),E=s(E,W,A,S,d,21,r[51]),S=s(S,E,W,A,U,6,r[52]),A=s(A,S,E,W,C,10,r[53]),W=s(W,A,S,E,D,15,r[54]),E=s(E,W,A,S,b,21,r[55]),S=s(S,E,W,A,H,6,r[56]),A=s(A,S,E,W,X,10,r[57]),W=s(W,A,S,E,g,15,r[58]),E=s(E,W,A,S,T,21,r[59]),S=s(S,E,W,A,R,6,r[60]),A=s(A,S,E,W,N,10,r[61]),W=s(W,A,S,E,w,15,r[62]),E=s(E,W,A,S,P,21,r[63]),x[0]=x[0]+S|0,x[1]=x[1]+E|0,x[2]=x[2]+W|0,x[3]=x[3]+A|0},_doFinalize:function(){var c=this._data,l=c.words,_=this._nDataBytes*8,n=c.sigBytes*8;l[n>>>5]|=128<<24-n%32;var i=e.floor(_/4294967296),x=_;l[(n+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,l[(n+64>>>9<<4)+14]=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360,c.sigBytes=(l.length+1)*4,this._process();for(var k=this._hash,b=k.words,w=0;w<4;w++){var C=b[w];b[w]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360}return k},clone:function(){var c=h.clone.call(this);return c._hash=this._hash.clone(),c}});function v(c,l,_,n,i,x,k){var b=c+(l&_|~l&n)+i+k;return(b<>>32-x)+l}function t(c,l,_,n,i,x,k){var b=c+(l&n|_&~n)+i+k;return(b<>>32-x)+l}function o(c,l,_,n,i,x,k){var b=c+(l^_^n)+i+k;return(b<>>32-x)+l}function s(c,l,_,n,i,x,k){var b=c+(_^(l|~n))+i+k;return(b<>>32-x)+l}y.MD5=h._createHelper(a),y.HmacMD5=h._createHmacHelper(a)}(Math),f.MD5})}(Ht)),I0}var L0={},At={get exports(){return L0},set exports(u){L0=u}},je;function we(){return je||(je=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=y.Hasher,h=e.algo,p=[],r=h.SHA1=B.extend({_doReset:function(){this._hash=new m.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(a,v){for(var t=this._hash.words,o=t[0],s=t[1],c=t[2],l=t[3],_=t[4],n=0;n<80;n++){if(n<16)p[n]=a[v+n]|0;else{var i=p[n-3]^p[n-8]^p[n-14]^p[n-16];p[n]=i<<1|i>>>31}var x=(o<<5|o>>>27)+_+p[n];n<20?x+=(s&c|~s&l)+1518500249:n<40?x+=(s^c^l)+1859775393:n<60?x+=(s&c|s&l|c&l)-1894007588:x+=(s^c^l)-899497514,_=l,l=c,c=s<<30|s>>>2,s=o,o=x}t[0]=t[0]+o|0,t[1]=t[1]+s|0,t[2]=t[2]+c|0,t[3]=t[3]+l|0,t[4]=t[4]+_|0},_doFinalize:function(){var a=this._data,v=a.words,t=this._nDataBytes*8,o=a.sigBytes*8;return v[o>>>5]|=128<<24-o%32,v[(o+64>>>9<<4)+14]=Math.floor(t/4294967296),v[(o+64>>>9<<4)+15]=t,a.sigBytes=v.length*4,this._process(),this._hash},clone:function(){var a=B.clone.call(this);return a._hash=this._hash.clone(),a}});e.SHA1=B._createHelper(r),e.HmacSHA1=B._createHmacHelper(r)}(),f.SHA1})}(At)),L0}var U0={},Et={get exports(){return U0},set exports(u){U0=u}},Me;function Cr(){return Me||(Me=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){return function(e){var y=f,m=y.lib,B=m.WordArray,h=m.Hasher,p=y.algo,r=[],a=[];(function(){function o(_){for(var n=e.sqrt(_),i=2;i<=n;i++)if(!(_%i))return!1;return!0}function s(_){return(_-(_|0))*4294967296|0}for(var c=2,l=0;l<64;)o(c)&&(l<8&&(r[l]=s(e.pow(c,1/2))),a[l]=s(e.pow(c,1/3)),l++),c++})();var v=[],t=p.SHA256=h.extend({_doReset:function(){this._hash=new B.init(r.slice(0))},_doProcessBlock:function(o,s){for(var c=this._hash.words,l=c[0],_=c[1],n=c[2],i=c[3],x=c[4],k=c[5],b=c[6],w=c[7],C=0;C<64;C++){if(C<16)v[C]=o[s+C]|0;else{var R=v[C-15],d=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,g=v[C-2],z=(g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10;v[C]=d+v[C-7]+z+v[C-16]}var H=x&k^~x&b,P=l&_^l&n^_&n,D=(l<<30|l>>>2)^(l<<19|l>>>13)^(l<<10|l>>>22),N=(x<<26|x>>>6)^(x<<21|x>>>11)^(x<<7|x>>>25),U=w+N+H+a[C]+v[C],T=D+P;w=b,b=k,k=x,x=i+U|0,i=n,n=_,_=l,l=U+T|0}c[0]=c[0]+l|0,c[1]=c[1]+_|0,c[2]=c[2]+n|0,c[3]=c[3]+i|0,c[4]=c[4]+x|0,c[5]=c[5]+k|0,c[6]=c[6]+b|0,c[7]=c[7]+w|0},_doFinalize:function(){var o=this._data,s=o.words,c=this._nDataBytes*8,l=o.sigBytes*8;return s[l>>>5]|=128<<24-l%32,s[(l+64>>>9<<4)+14]=e.floor(c/4294967296),s[(l+64>>>9<<4)+15]=c,o.sigBytes=s.length*4,this._process(),this._hash},clone:function(){var o=h.clone.call(this);return o._hash=this._hash.clone(),o}});y.SHA256=h._createHelper(t),y.HmacSHA256=h._createHmacHelper(t)}(Math),f.SHA256})}(Et)),U0}var V0={},Rt={get exports(){return V0},set exports(u){V0=u}},Qe;function Wt(){return Qe||(Qe=1,function(u,F){(function(f,e,y){u.exports=e(K(),Cr())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=e.algo,h=B.SHA256,p=B.SHA224=h.extend({_doReset:function(){this._hash=new m.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var r=h._doFinalize.call(this);return r.sigBytes-=4,r}});e.SHA224=h._createHelper(p),e.HmacSHA224=h._createHmacHelper(p)}(),f.SHA224})}(Rt)),V0}var X0={},Pt={get exports(){return X0},set exports(u){X0=u}},Ye;function Sr(){return Ye||(Ye=1,function(u,F){(function(f,e,y){u.exports=e(K(),he())})(L,function(f){return function(){var e=f,y=e.lib,m=y.Hasher,B=e.x64,h=B.Word,p=B.WordArray,r=e.algo;function a(){return h.create.apply(h,arguments)}var v=[a(1116352408,3609767458),a(1899447441,602891725),a(3049323471,3964484399),a(3921009573,2173295548),a(961987163,4081628472),a(1508970993,3053834265),a(2453635748,2937671579),a(2870763221,3664609560),a(3624381080,2734883394),a(310598401,1164996542),a(607225278,1323610764),a(1426881987,3590304994),a(1925078388,4068182383),a(2162078206,991336113),a(2614888103,633803317),a(3248222580,3479774868),a(3835390401,2666613458),a(4022224774,944711139),a(264347078,2341262773),a(604807628,2007800933),a(770255983,1495990901),a(1249150122,1856431235),a(1555081692,3175218132),a(1996064986,2198950837),a(2554220882,3999719339),a(2821834349,766784016),a(2952996808,2566594879),a(3210313671,3203337956),a(3336571891,1034457026),a(3584528711,2466948901),a(113926993,3758326383),a(338241895,168717936),a(666307205,1188179964),a(773529912,1546045734),a(1294757372,1522805485),a(1396182291,2643833823),a(1695183700,2343527390),a(1986661051,1014477480),a(2177026350,1206759142),a(2456956037,344077627),a(2730485921,1290863460),a(2820302411,3158454273),a(3259730800,3505952657),a(3345764771,106217008),a(3516065817,3606008344),a(3600352804,1432725776),a(4094571909,1467031594),a(275423344,851169720),a(430227734,3100823752),a(506948616,1363258195),a(659060556,3750685593),a(883997877,3785050280),a(958139571,3318307427),a(1322822218,3812723403),a(1537002063,2003034995),a(1747873779,3602036899),a(1955562222,1575990012),a(2024104815,1125592928),a(2227730452,2716904306),a(2361852424,442776044),a(2428436474,593698344),a(2756734187,3733110249),a(3204031479,2999351573),a(3329325298,3815920427),a(3391569614,3928383900),a(3515267271,566280711),a(3940187606,3454069534),a(4118630271,4000239992),a(116418474,1914138554),a(174292421,2731055270),a(289380356,3203993006),a(460393269,320620315),a(685471733,587496836),a(852142971,1086792851),a(1017036298,365543100),a(1126000580,2618297676),a(1288033470,3409855158),a(1501505948,4234509866),a(1607167915,987167468),a(1816402316,1246189591)],t=[];(function(){for(var s=0;s<80;s++)t[s]=a()})();var o=r.SHA512=m.extend({_doReset:function(){this._hash=new p.init([new h.init(1779033703,4089235720),new h.init(3144134277,2227873595),new h.init(1013904242,4271175723),new h.init(2773480762,1595750129),new h.init(1359893119,2917565137),new h.init(2600822924,725511199),new h.init(528734635,4215389547),new h.init(1541459225,327033209)])},_doProcessBlock:function(s,c){for(var l=this._hash.words,_=l[0],n=l[1],i=l[2],x=l[3],k=l[4],b=l[5],w=l[6],C=l[7],R=_.high,d=_.low,g=n.high,z=n.low,H=i.high,P=i.low,D=x.high,N=x.low,U=k.high,T=k.low,V=b.high,X=b.low,S=w.high,E=w.low,W=C.high,A=C.low,j=R,G=d,e0=g,q=z,Q=H,x0=P,n0=D,m0=N,v0=U,i0=T,E0=V,B0=X,R0=S,k0=E,ge=W,w0=A,l0=0;l0<80;l0++){var c0,u0,W0=t[l0];if(l0<16)u0=W0.high=s[c+l0*2]|0,c0=W0.low=s[c+l0*2+1]|0;else{var Se=t[l0-15],g0=Se.high,C0=Se.low,Rr=(g0>>>1|C0<<31)^(g0>>>8|C0<<24)^g0>>>7,ze=(C0>>>1|g0<<31)^(C0>>>8|g0<<24)^(C0>>>7|g0<<25),He=t[l0-2],_0=He.high,S0=He.low,Wr=(_0>>>19|S0<<13)^(_0<<3|S0>>>29)^_0>>>6,Ae=(S0>>>19|_0<<13)^(S0<<3|_0>>>29)^(S0>>>6|_0<<26),Ee=t[l0-7],Pr=Ee.high,qr=Ee.low,Re=t[l0-16],Fr=Re.high,We=Re.low;c0=ze+qr,u0=Rr+Pr+(c0>>>0>>0?1:0),c0=c0+Ae,u0=u0+Wr+(c0>>>0>>0?1:0),c0=c0+We,u0=u0+Fr+(c0>>>0>>0?1:0),W0.high=u0,W0.low=c0}var Dr=v0&E0^~v0&R0,Pe=i0&B0^~i0&k0,Nr=j&e0^j&Q^e0&Q,Or=G&q^G&x0^q&x0,Tr=(j>>>28|G<<4)^(j<<30|G>>>2)^(j<<25|G>>>7),qe=(G>>>28|j<<4)^(G<<30|j>>>2)^(G<<25|j>>>7),Ir=(v0>>>14|i0<<18)^(v0>>>18|i0<<14)^(v0<<23|i0>>>9),Lr=(i0>>>14|v0<<18)^(i0>>>18|v0<<14)^(i0<<23|v0>>>9),Fe=v[l0],Ur=Fe.high,De=Fe.low,o0=w0+Lr,d0=ge+Ir+(o0>>>0>>0?1:0),o0=o0+Pe,d0=d0+Dr+(o0>>>0>>0?1:0),o0=o0+De,d0=d0+Ur+(o0>>>0>>0?1:0),o0=o0+c0,d0=d0+u0+(o0>>>0>>0?1:0),Ne=qe+Or,Vr=Tr+Nr+(Ne>>>0>>0?1:0);ge=R0,w0=k0,R0=E0,k0=B0,E0=v0,B0=i0,i0=m0+o0|0,v0=n0+d0+(i0>>>0>>0?1:0)|0,n0=Q,m0=x0,Q=e0,x0=q,e0=j,q=G,G=o0+Ne|0,j=d0+Vr+(G>>>0>>0?1:0)|0}d=_.low=d+G,_.high=R+j+(d>>>0>>0?1:0),z=n.low=z+q,n.high=g+e0+(z>>>0>>0?1:0),P=i.low=P+x0,i.high=H+Q+(P>>>0>>0?1:0),N=x.low=N+m0,x.high=D+n0+(N>>>0>>0?1:0),T=k.low=T+i0,k.high=U+v0+(T>>>0>>0?1:0),X=b.low=X+B0,b.high=V+E0+(X>>>0>>0?1:0),E=w.low=E+k0,w.high=S+R0+(E>>>0>>0?1:0),A=C.low=A+w0,C.high=W+ge+(A>>>0>>0?1:0)},_doFinalize:function(){var s=this._data,c=s.words,l=this._nDataBytes*8,_=s.sigBytes*8;c[_>>>5]|=128<<24-_%32,c[(_+128>>>10<<5)+30]=Math.floor(l/4294967296),c[(_+128>>>10<<5)+31]=l,s.sigBytes=c.length*4,this._process();var n=this._hash.toX32();return n},clone:function(){var s=m.clone.call(this);return s._hash=this._hash.clone(),s},blockSize:1024/32});e.SHA512=m._createHelper(o),e.HmacSHA512=m._createHmacHelper(o)}(),f.SHA512})}(Pt)),X0}var K0={},qt={get exports(){return K0},set exports(u){K0=u}},Ze;function Ft(){return Ze||(Ze=1,function(u,F){(function(f,e,y){u.exports=e(K(),he(),Sr())})(L,function(f){return function(){var e=f,y=e.x64,m=y.Word,B=y.WordArray,h=e.algo,p=h.SHA512,r=h.SHA384=p.extend({_doReset:function(){this._hash=new B.init([new m.init(3418070365,3238371032),new m.init(1654270250,914150663),new m.init(2438529370,812702999),new m.init(355462360,4144912697),new m.init(1731405415,4290775857),new m.init(2394180231,1750603025),new m.init(3675008525,1694076839),new m.init(1203062813,3204075428)])},_doFinalize:function(){var a=p._doFinalize.call(this);return a.sigBytes-=16,a}});e.SHA384=p._createHelper(r),e.HmacSHA384=p._createHmacHelper(r)}(),f.SHA384})}(qt)),K0}var G0={},Dt={get exports(){return G0},set exports(u){G0=u}},Je;function Nt(){return Je||(Je=1,function(u,F){(function(f,e,y){u.exports=e(K(),he())})(L,function(f){return function(e){var y=f,m=y.lib,B=m.WordArray,h=m.Hasher,p=y.x64,r=p.Word,a=y.algo,v=[],t=[],o=[];(function(){for(var l=1,_=0,n=0;n<24;n++){v[l+5*_]=(n+1)*(n+2)/2%64;var i=_%5,x=(2*l+3*_)%5;l=i,_=x}for(var l=0;l<5;l++)for(var _=0;_<5;_++)t[l+5*_]=_+(2*l+3*_)%5*5;for(var k=1,b=0;b<24;b++){for(var w=0,C=0,R=0;R<7;R++){if(k&1){var d=(1<>>24)&16711935|(k<<24|k>>>8)&4278255360,b=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360;var w=n[x];w.high^=b,w.low^=k}for(var C=0;C<24;C++){for(var R=0;R<5;R++){for(var d=0,g=0,z=0;z<5;z++){var w=n[R+5*z];d^=w.high,g^=w.low}var H=s[R];H.high=d,H.low=g}for(var R=0;R<5;R++)for(var P=s[(R+4)%5],D=s[(R+1)%5],N=D.high,U=D.low,d=P.high^(N<<1|U>>>31),g=P.low^(U<<1|N>>>31),z=0;z<5;z++){var w=n[R+5*z];w.high^=d,w.low^=g}for(var T=1;T<25;T++){var d,g,w=n[T],V=w.high,X=w.low,S=v[T];S<32?(d=V<>>32-S,g=X<>>32-S):(d=X<>>64-S,g=V<>>64-S);var E=s[t[T]];E.high=d,E.low=g}var W=s[0],A=n[0];W.high=A.high,W.low=A.low;for(var R=0;R<5;R++)for(var z=0;z<5;z++){var T=R+5*z,w=n[T],j=s[T],G=s[(R+1)%5+5*z],e0=s[(R+2)%5+5*z];w.high=j.high^~G.high&e0.high,w.low=j.low^~G.low&e0.low}var w=n[0],q=o[C];w.high^=q.high,w.low^=q.low}},_doFinalize:function(){var l=this._data,_=l.words;this._nDataBytes*8;var n=l.sigBytes*8,i=this.blockSize*32;_[n>>>5]|=1<<24-n%32,_[(e.ceil((n+1)/i)*i>>>5)-1]|=128,l.sigBytes=_.length*4,this._process();for(var x=this._state,k=this.cfg.outputLength/8,b=k/8,w=[],C=0;C>>24)&16711935|(d<<24|d>>>8)&4278255360,g=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,w.push(g),w.push(d)}return new B.init(w,k)},clone:function(){for(var l=h.clone.call(this),_=l._state=this._state.slice(0),n=0;n<25;n++)_[n]=_[n].clone();return l}});y.SHA3=h._createHelper(c),y.HmacSHA3=h._createHmacHelper(c)}(Math),f.SHA3})}(Dt)),G0}var j0={},Ot={get exports(){return j0},set exports(u){j0=u}},$e;function Tt(){return $e||($e=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){/** @preserve + (c) 2012 by Cédric Mesnil. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */return function(e){var y=f,m=y.lib,B=m.WordArray,h=m.Hasher,p=y.algo,r=B.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),a=B.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),v=B.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),t=B.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),o=B.create([0,1518500249,1859775393,2400959708,2840853838]),s=B.create([1352829926,1548603684,1836072691,2053994217,0]),c=p.RIPEMD160=h.extend({_doReset:function(){this._hash=B.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(b,w){for(var C=0;C<16;C++){var R=w+C,d=b[R];b[R]=(d<<8|d>>>24)&16711935|(d<<24|d>>>8)&4278255360}var g=this._hash.words,z=o.words,H=s.words,P=r.words,D=a.words,N=v.words,U=t.words,T,V,X,S,E,W,A,j,G,e0;W=T=g[0],A=V=g[1],j=X=g[2],G=S=g[3],e0=E=g[4];for(var q,C=0;C<80;C+=1)q=T+b[w+P[C]]|0,C<16?q+=l(V,X,S)+z[0]:C<32?q+=_(V,X,S)+z[1]:C<48?q+=n(V,X,S)+z[2]:C<64?q+=i(V,X,S)+z[3]:q+=x(V,X,S)+z[4],q=q|0,q=k(q,N[C]),q=q+E|0,T=E,E=S,S=k(X,10),X=V,V=q,q=W+b[w+D[C]]|0,C<16?q+=x(A,j,G)+H[0]:C<32?q+=i(A,j,G)+H[1]:C<48?q+=n(A,j,G)+H[2]:C<64?q+=_(A,j,G)+H[3]:q+=l(A,j,G)+H[4],q=q|0,q=k(q,U[C]),q=q+e0|0,W=e0,e0=G,G=k(j,10),j=A,A=q;q=g[1]+X+G|0,g[1]=g[2]+S+e0|0,g[2]=g[3]+E+W|0,g[3]=g[4]+T+A|0,g[4]=g[0]+V+j|0,g[0]=q},_doFinalize:function(){var b=this._data,w=b.words,C=this._nDataBytes*8,R=b.sigBytes*8;w[R>>>5]|=128<<24-R%32,w[(R+64>>>9<<4)+14]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360,b.sigBytes=(w.length+1)*4,this._process();for(var d=this._hash,g=d.words,z=0;z<5;z++){var H=g[z];g[z]=(H<<8|H>>>24)&16711935|(H<<24|H>>>8)&4278255360}return d},clone:function(){var b=h.clone.call(this);return b._hash=this._hash.clone(),b}});function l(b,w,C){return b^w^C}function _(b,w,C){return b&w|~b&C}function n(b,w,C){return(b|~w)^C}function i(b,w,C){return b&C|w&~C}function x(b,w,C){return b^(w|~C)}function k(b,w){return b<>>32-w}y.RIPEMD160=h._createHelper(c),y.HmacRIPEMD160=h._createHmacHelper(c)}(),f.RIPEMD160})}(Ot)),j0}var M0={},It={get exports(){return M0},set exports(u){M0=u}},er;function Ce(){return er||(er=1,function(u,F){(function(f,e){u.exports=e(K())})(L,function(f){(function(){var e=f,y=e.lib,m=y.Base,B=e.enc,h=B.Utf8,p=e.algo;p.HMAC=m.extend({init:function(r,a){r=this._hasher=new r.init,typeof a=="string"&&(a=h.parse(a));var v=r.blockSize,t=v*4;a.sigBytes>t&&(a=r.finalize(a)),a.clamp();for(var o=this._oKey=a.clone(),s=this._iKey=a.clone(),c=o.words,l=s.words,_=0;_>>2]&255;d.sigBytes-=g}};m.BlockCipher=o.extend({cfg:o.cfg.extend({mode:l,padding:n}),reset:function(){var d;o.reset.call(this);var g=this.cfg,z=g.iv,H=g.mode;this._xformMode==this._ENC_XFORM_MODE?d=H.createEncryptor:(d=H.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==d?this._mode.init(this,z&&z.words):(this._mode=d.call(H,this,z&&z.words),this._mode.__creator=d)},_doProcessBlock:function(d,g){this._mode.processBlock(d,g)},_doFinalize:function(){var d,g=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(g.pad(this._data,this.blockSize),d=this._process(!0)):(d=this._process(!0),g.unpad(d)),d},blockSize:128/32});var i=m.CipherParams=B.extend({init:function(d){this.mixIn(d)},toString:function(d){return(d||this.formatter).stringify(this)}}),x=y.format={},k=x.OpenSSL={stringify:function(d){var g,z=d.ciphertext,H=d.salt;return H?g=h.create([1398893684,1701076831]).concat(H).concat(z):g=z,g.toString(a)},parse:function(d){var g,z=a.parse(d),H=z.words;return H[0]==1398893684&&H[1]==1701076831&&(g=h.create(H.slice(2,4)),H.splice(0,4),z.sigBytes-=16),i.create({ciphertext:z,salt:g})}},b=m.SerializableCipher=B.extend({cfg:B.extend({format:k}),encrypt:function(d,g,z,H){H=this.cfg.extend(H);var P=d.createEncryptor(z,H),D=P.finalize(g),N=P.cfg;return i.create({ciphertext:D,key:z,iv:N.iv,algorithm:d,mode:N.mode,padding:N.padding,blockSize:d.blockSize,formatter:H.format})},decrypt:function(d,g,z,H){H=this.cfg.extend(H),g=this._parse(g,H.format);var P=d.createDecryptor(z,H).finalize(g.ciphertext);return P},_parse:function(d,g){return typeof d=="string"?g.parse(d,this):d}}),w=y.kdf={},C=w.OpenSSL={execute:function(d,g,z,H){H||(H=h.random(64/8));var P=t.create({keySize:g+z}).compute(d,H),D=h.create(P.words.slice(g),z*4);return P.sigBytes=g*4,i.create({key:P,iv:D,salt:H})}},R=m.PasswordBasedCipher=b.extend({cfg:b.cfg.extend({kdf:C}),encrypt:function(d,g,z,H){H=this.cfg.extend(H);var P=H.kdf.execute(z,d.keySize,d.ivSize);H.iv=P.iv;var D=b.encrypt.call(this,d,g,P.key,H);return D.mixIn(P),D},decrypt:function(d,g,z,H){H=this.cfg.extend(H),g=this._parse(g,H.format);var P=H.kdf.execute(z,d.keySize,d.ivSize,g.salt);H.iv=P.iv;var D=b.decrypt.call(this,d,g,P.key,H);return D}})}()})}(Xt)),Z0}var J0={},Kt={get exports(){return J0},set exports(u){J0=u}},nr;function Gt(){return nr||(nr=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return f.mode.CFB=function(){var e=f.lib.BlockCipherMode.extend();e.Encryptor=e.extend({processBlock:function(m,B){var h=this._cipher,p=h.blockSize;y.call(this,m,B,p,h),this._prevBlock=m.slice(B,B+p)}}),e.Decryptor=e.extend({processBlock:function(m,B){var h=this._cipher,p=h.blockSize,r=m.slice(B,B+p);y.call(this,m,B,p,h),this._prevBlock=r}});function y(m,B,h,p){var r,a=this._iv;a?(r=a.slice(0),this._iv=void 0):r=this._prevBlock,p.encryptBlock(r,0);for(var v=0;v>24&255)===255){var p=h>>16&255,r=h>>8&255,a=h&255;p===255?(p=0,r===255?(r=0,a===255?a=0:++a):++r):++p,h=0,h+=p<<16,h+=r<<8,h+=a}else h+=1<<24;return h}function m(h){return(h[0]=y(h[0]))===0&&(h[1]=y(h[1])),h}var B=e.Encryptor=e.extend({processBlock:function(h,p){var r=this._cipher,a=r.blockSize,v=this._iv,t=this._counter;v&&(t=this._counter=v.slice(0),this._iv=void 0),m(t);var o=t.slice(0);r.encryptBlock(o,0);for(var s=0;s>>2]|=h<<24-p%4*8,e.sigBytes+=h},unpad:function(e){var y=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=y}},f.pad.Ansix923})}(ra)),ae}var ne={},aa={get exports(){return ne},set exports(u){ne=u}},fr;function na(){return fr||(fr=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return f.pad.Iso10126={pad:function(e,y){var m=y*4,B=m-e.sigBytes%m;e.concat(f.lib.WordArray.random(B-1)).concat(f.lib.WordArray.create([B<<24],1))},unpad:function(e){var y=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=y}},f.pad.Iso10126})}(aa)),ne}var ie={},ia={get exports(){return ie},set exports(u){ie=u}},vr;function oa(){return vr||(vr=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return f.pad.Iso97971={pad:function(e,y){e.concat(f.lib.WordArray.create([2147483648],1)),f.pad.ZeroPadding.pad(e,y)},unpad:function(e){f.pad.ZeroPadding.unpad(e),e.sigBytes--}},f.pad.Iso97971})}(ia)),ie}var oe={},sa={get exports(){return oe},set exports(u){oe=u}},lr;function xa(){return lr||(lr=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return f.pad.ZeroPadding={pad:function(e,y){var m=y*4;e.clamp(),e.sigBytes+=m-(e.sigBytes%m||m)},unpad:function(e){for(var y=e.words,m=e.sigBytes-1,m=e.sigBytes-1;m>=0;m--)if(y[m>>>2]>>>24-m%4*8&255){e.sigBytes=m+1;break}}},f.pad.ZeroPadding})}(sa)),oe}var se={},ca={get exports(){return se},set exports(u){se=u}},ur;function fa(){return ur||(ur=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return f.pad.NoPadding={pad:function(){},unpad:function(){}},f.pad.NoPadding})}(ca)),se}var xe={},va={get exports(){return xe},set exports(u){xe=u}},dr;function la(){return dr||(dr=1,function(u,F){(function(f,e,y){u.exports=e(K(),r0())})(L,function(f){return function(e){var y=f,m=y.lib,B=m.CipherParams,h=y.enc,p=h.Hex,r=y.format;r.Hex={stringify:function(a){return a.ciphertext.toString(p)},parse:function(a){var v=p.parse(a);return B.create({ciphertext:v})}}}(),f.format.Hex})}(va)),xe}var ce={},ua={get exports(){return ce},set exports(u){ce=u}},hr;function da(){return hr||(hr=1,function(u,F){(function(f,e,y){u.exports=e(K(),y0(),b0(),p0(),r0())})(L,function(f){return function(){var e=f,y=e.lib,m=y.BlockCipher,B=e.algo,h=[],p=[],r=[],a=[],v=[],t=[],o=[],s=[],c=[],l=[];(function(){for(var i=[],x=0;x<256;x++)x<128?i[x]=x<<1:i[x]=x<<1^283;for(var k=0,b=0,x=0;x<256;x++){var w=b^b<<1^b<<2^b<<3^b<<4;w=w>>>8^w&255^99,h[k]=w,p[w]=k;var C=i[k],R=i[C],d=i[R],g=i[w]*257^w*16843008;r[k]=g<<24|g>>>8,a[k]=g<<16|g>>>16,v[k]=g<<8|g>>>24,t[k]=g;var g=d*16843009^R*65537^C*257^k*16843008;o[w]=g<<24|g>>>8,s[w]=g<<16|g>>>16,c[w]=g<<8|g>>>24,l[w]=g,k?(k=C^i[i[i[d^C]]],b^=i[i[b]]):k=b=1}})();var _=[0,1,2,4,8,16,32,64,128,27,54],n=B.AES=m.extend({_doReset:function(){var i;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var x=this._keyPriorReset=this._key,k=x.words,b=x.sigBytes/4,w=this._nRounds=b+6,C=(w+1)*4,R=this._keySchedule=[],d=0;d6&&d%b==4&&(i=h[i>>>24]<<24|h[i>>>16&255]<<16|h[i>>>8&255]<<8|h[i&255]):(i=i<<8|i>>>24,i=h[i>>>24]<<24|h[i>>>16&255]<<16|h[i>>>8&255]<<8|h[i&255],i^=_[d/b|0]<<24),R[d]=R[d-b]^i);for(var g=this._invKeySchedule=[],z=0;z>>24]]^s[h[i>>>16&255]]^c[h[i>>>8&255]]^l[h[i&255]]}}},encryptBlock:function(i,x){this._doCryptBlock(i,x,this._keySchedule,r,a,v,t,h)},decryptBlock:function(i,x){var k=i[x+1];i[x+1]=i[x+3],i[x+3]=k,this._doCryptBlock(i,x,this._invKeySchedule,o,s,c,l,p);var k=i[x+1];i[x+1]=i[x+3],i[x+3]=k},_doCryptBlock:function(i,x,k,b,w,C,R,d){for(var g=this._nRounds,z=i[x]^k[0],H=i[x+1]^k[1],P=i[x+2]^k[2],D=i[x+3]^k[3],N=4,U=1;U>>24]^w[H>>>16&255]^C[P>>>8&255]^R[D&255]^k[N++],V=b[H>>>24]^w[P>>>16&255]^C[D>>>8&255]^R[z&255]^k[N++],X=b[P>>>24]^w[D>>>16&255]^C[z>>>8&255]^R[H&255]^k[N++],S=b[D>>>24]^w[z>>>16&255]^C[H>>>8&255]^R[P&255]^k[N++];z=T,H=V,P=X,D=S}var T=(d[z>>>24]<<24|d[H>>>16&255]<<16|d[P>>>8&255]<<8|d[D&255])^k[N++],V=(d[H>>>24]<<24|d[P>>>16&255]<<16|d[D>>>8&255]<<8|d[z&255])^k[N++],X=(d[P>>>24]<<24|d[D>>>16&255]<<16|d[z>>>8&255]<<8|d[H&255])^k[N++],S=(d[D>>>24]<<24|d[z>>>16&255]<<16|d[H>>>8&255]<<8|d[P&255])^k[N++];i[x]=T,i[x+1]=V,i[x+2]=X,i[x+3]=S},keySize:256/32});e.AES=m._createHelper(n)}(),f.AES})}(ua)),ce}var fe={},ha={get exports(){return fe},set exports(u){fe=u}},pr;function pa(){return pr||(pr=1,function(u,F){(function(f,e,y){u.exports=e(K(),y0(),b0(),p0(),r0())})(L,function(f){return function(){var e=f,y=e.lib,m=y.WordArray,B=y.BlockCipher,h=e.algo,p=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],r=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],a=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],v=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],t=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],o=h.DES=B.extend({_doReset:function(){for(var _=this._key,n=_.words,i=[],x=0;x<56;x++){var k=p[x]-1;i[x]=n[k>>>5]>>>31-k%32&1}for(var b=this._subKeys=[],w=0;w<16;w++){for(var C=b[w]=[],R=a[w],x=0;x<24;x++)C[x/6|0]|=i[(r[x]-1+R)%28]<<31-x%6,C[4+(x/6|0)]|=i[28+(r[x+24]-1+R)%28]<<31-x%6;C[0]=C[0]<<1|C[0]>>>31;for(var x=1;x<7;x++)C[x]=C[x]>>>(x-1)*4+3;C[7]=C[7]<<5|C[7]>>>27}for(var d=this._invSubKeys=[],x=0;x<16;x++)d[x]=b[15-x]},encryptBlock:function(_,n){this._doCryptBlock(_,n,this._subKeys)},decryptBlock:function(_,n){this._doCryptBlock(_,n,this._invSubKeys)},_doCryptBlock:function(_,n,i){this._lBlock=_[n],this._rBlock=_[n+1],s.call(this,4,252645135),s.call(this,16,65535),c.call(this,2,858993459),c.call(this,8,16711935),s.call(this,1,1431655765);for(var x=0;x<16;x++){for(var k=i[x],b=this._lBlock,w=this._rBlock,C=0,R=0;R<8;R++)C|=v[R][((w^k[R])&t[R])>>>0];this._lBlock=w,this._rBlock=b^C}var d=this._lBlock;this._lBlock=this._rBlock,this._rBlock=d,s.call(this,1,1431655765),c.call(this,8,16711935),c.call(this,2,858993459),s.call(this,16,65535),s.call(this,4,252645135),_[n]=this._lBlock,_[n+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function s(_,n){var i=(this._lBlock>>>_^this._rBlock)&n;this._rBlock^=i,this._lBlock^=i<<_}function c(_,n){var i=(this._rBlock>>>_^this._lBlock)&n;this._lBlock^=i,this._rBlock^=i<<_}e.DES=B._createHelper(o);var l=h.TripleDES=B.extend({_doReset:function(){var _=this._key,n=_.words;if(n.length!==2&&n.length!==4&&n.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var i=n.slice(0,2),x=n.length<4?n.slice(0,2):n.slice(2,4),k=n.length<6?n.slice(0,2):n.slice(4,6);this._des1=o.createEncryptor(m.create(i)),this._des2=o.createEncryptor(m.create(x)),this._des3=o.createEncryptor(m.create(k))},encryptBlock:function(_,n){this._des1.encryptBlock(_,n),this._des2.decryptBlock(_,n),this._des3.encryptBlock(_,n)},decryptBlock:function(_,n){this._des3.decryptBlock(_,n),this._des2.encryptBlock(_,n),this._des1.decryptBlock(_,n)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=B._createHelper(l)}(),f.TripleDES})}(ha)),fe}var ve={},ga={get exports(){return ve},set exports(u){ve=u}},gr;function _a(){return gr||(gr=1,function(u,F){(function(f,e,y){u.exports=e(K(),y0(),b0(),p0(),r0())})(L,function(f){return function(){var e=f,y=e.lib,m=y.StreamCipher,B=e.algo,h=B.RC4=m.extend({_doReset:function(){for(var a=this._key,v=a.words,t=a.sigBytes,o=this._S=[],s=0;s<256;s++)o[s]=s;for(var s=0,c=0;s<256;s++){var l=s%t,_=v[l>>>2]>>>24-l%4*8&255;c=(c+o[s]+_)%256;var n=o[s];o[s]=o[c],o[c]=n}this._i=this._j=0},_doProcessBlock:function(a,v){a[v]^=p.call(this)},keySize:256/32,ivSize:0});function p(){for(var a=this._S,v=this._i,t=this._j,o=0,s=0;s<4;s++){v=(v+1)%256,t=(t+a[v])%256;var c=a[v];a[v]=a[t],a[t]=c,o|=a[(a[v]+a[t])%256]<<24-s*8}return this._i=v,this._j=t,o}e.RC4=m._createHelper(h);var r=B.RC4Drop=h.extend({cfg:h.cfg.extend({drop:192}),_doReset:function(){h._doReset.call(this);for(var a=this.cfg.drop;a>0;a--)p.call(this)}});e.RC4Drop=m._createHelper(r)}(),f.RC4})}(ga)),ve}var le={},ya={get exports(){return le},set exports(u){le=u}},_r;function ba(){return _r||(_r=1,function(u,F){(function(f,e,y){u.exports=e(K(),y0(),b0(),p0(),r0())})(L,function(f){return function(){var e=f,y=e.lib,m=y.StreamCipher,B=e.algo,h=[],p=[],r=[],a=B.Rabbit=m.extend({_doReset:function(){for(var t=this._key.words,o=this.cfg.iv,s=0;s<4;s++)t[s]=(t[s]<<8|t[s]>>>24)&16711935|(t[s]<<24|t[s]>>>8)&4278255360;var c=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],l=this._C=[t[2]<<16|t[2]>>>16,t[0]&4294901760|t[1]&65535,t[3]<<16|t[3]>>>16,t[1]&4294901760|t[2]&65535,t[0]<<16|t[0]>>>16,t[2]&4294901760|t[3]&65535,t[1]<<16|t[1]>>>16,t[3]&4294901760|t[0]&65535];this._b=0;for(var s=0;s<4;s++)v.call(this);for(var s=0;s<8;s++)l[s]^=c[s+4&7];if(o){var _=o.words,n=_[0],i=_[1],x=(n<<8|n>>>24)&16711935|(n<<24|n>>>8)&4278255360,k=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,b=x>>>16|k&4294901760,w=k<<16|x&65535;l[0]^=x,l[1]^=b,l[2]^=k,l[3]^=w,l[4]^=x,l[5]^=b,l[6]^=k,l[7]^=w;for(var s=0;s<4;s++)v.call(this)}},_doProcessBlock:function(t,o){var s=this._X;v.call(this),h[0]=s[0]^s[5]>>>16^s[3]<<16,h[1]=s[2]^s[7]>>>16^s[5]<<16,h[2]=s[4]^s[1]>>>16^s[7]<<16,h[3]=s[6]^s[3]>>>16^s[1]<<16;for(var c=0;c<4;c++)h[c]=(h[c]<<8|h[c]>>>24)&16711935|(h[c]<<24|h[c]>>>8)&4278255360,t[o+c]^=h[c]},blockSize:128/32,ivSize:64/32});function v(){for(var t=this._X,o=this._C,s=0;s<8;s++)p[s]=o[s];o[0]=o[0]+1295307597+this._b|0,o[1]=o[1]+3545052371+(o[0]>>>0>>0?1:0)|0,o[2]=o[2]+886263092+(o[1]>>>0>>0?1:0)|0,o[3]=o[3]+1295307597+(o[2]>>>0>>0?1:0)|0,o[4]=o[4]+3545052371+(o[3]>>>0>>0?1:0)|0,o[5]=o[5]+886263092+(o[4]>>>0>>0?1:0)|0,o[6]=o[6]+1295307597+(o[5]>>>0>>0?1:0)|0,o[7]=o[7]+3545052371+(o[6]>>>0>>0?1:0)|0,this._b=o[7]>>>0>>0?1:0;for(var s=0;s<8;s++){var c=t[s]+o[s],l=c&65535,_=c>>>16,n=((l*l>>>17)+l*_>>>15)+_*_,i=((c&4294901760)*c|0)+((c&65535)*c|0);r[s]=n^i}t[0]=r[0]+(r[7]<<16|r[7]>>>16)+(r[6]<<16|r[6]>>>16)|0,t[1]=r[1]+(r[0]<<8|r[0]>>>24)+r[7]|0,t[2]=r[2]+(r[1]<<16|r[1]>>>16)+(r[0]<<16|r[0]>>>16)|0,t[3]=r[3]+(r[2]<<8|r[2]>>>24)+r[1]|0,t[4]=r[4]+(r[3]<<16|r[3]>>>16)+(r[2]<<16|r[2]>>>16)|0,t[5]=r[5]+(r[4]<<8|r[4]>>>24)+r[3]|0,t[6]=r[6]+(r[5]<<16|r[5]>>>16)+(r[4]<<16|r[4]>>>16)|0,t[7]=r[7]+(r[6]<<8|r[6]>>>24)+r[5]|0}e.Rabbit=m._createHelper(a)}(),f.Rabbit})}(ya)),le}var ue={},ma={get exports(){return ue},set exports(u){ue=u}},yr;function Ba(){return yr||(yr=1,function(u,F){(function(f,e,y){u.exports=e(K(),y0(),b0(),p0(),r0())})(L,function(f){return function(){var e=f,y=e.lib,m=y.StreamCipher,B=e.algo,h=[],p=[],r=[],a=B.RabbitLegacy=m.extend({_doReset:function(){var t=this._key.words,o=this.cfg.iv,s=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],c=this._C=[t[2]<<16|t[2]>>>16,t[0]&4294901760|t[1]&65535,t[3]<<16|t[3]>>>16,t[1]&4294901760|t[2]&65535,t[0]<<16|t[0]>>>16,t[2]&4294901760|t[3]&65535,t[1]<<16|t[1]>>>16,t[3]&4294901760|t[0]&65535];this._b=0;for(var l=0;l<4;l++)v.call(this);for(var l=0;l<8;l++)c[l]^=s[l+4&7];if(o){var _=o.words,n=_[0],i=_[1],x=(n<<8|n>>>24)&16711935|(n<<24|n>>>8)&4278255360,k=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360,b=x>>>16|k&4294901760,w=k<<16|x&65535;c[0]^=x,c[1]^=b,c[2]^=k,c[3]^=w,c[4]^=x,c[5]^=b,c[6]^=k,c[7]^=w;for(var l=0;l<4;l++)v.call(this)}},_doProcessBlock:function(t,o){var s=this._X;v.call(this),h[0]=s[0]^s[5]>>>16^s[3]<<16,h[1]=s[2]^s[7]>>>16^s[5]<<16,h[2]=s[4]^s[1]>>>16^s[7]<<16,h[3]=s[6]^s[3]>>>16^s[1]<<16;for(var c=0;c<4;c++)h[c]=(h[c]<<8|h[c]>>>24)&16711935|(h[c]<<24|h[c]>>>8)&4278255360,t[o+c]^=h[c]},blockSize:128/32,ivSize:64/32});function v(){for(var t=this._X,o=this._C,s=0;s<8;s++)p[s]=o[s];o[0]=o[0]+1295307597+this._b|0,o[1]=o[1]+3545052371+(o[0]>>>0>>0?1:0)|0,o[2]=o[2]+886263092+(o[1]>>>0>>0?1:0)|0,o[3]=o[3]+1295307597+(o[2]>>>0>>0?1:0)|0,o[4]=o[4]+3545052371+(o[3]>>>0>>0?1:0)|0,o[5]=o[5]+886263092+(o[4]>>>0>>0?1:0)|0,o[6]=o[6]+1295307597+(o[5]>>>0>>0?1:0)|0,o[7]=o[7]+3545052371+(o[6]>>>0>>0?1:0)|0,this._b=o[7]>>>0>>0?1:0;for(var s=0;s<8;s++){var c=t[s]+o[s],l=c&65535,_=c>>>16,n=((l*l>>>17)+l*_>>>15)+_*_,i=((c&4294901760)*c|0)+((c&65535)*c|0);r[s]=n^i}t[0]=r[0]+(r[7]<<16|r[7]>>>16)+(r[6]<<16|r[6]>>>16)|0,t[1]=r[1]+(r[0]<<8|r[0]>>>24)+r[7]|0,t[2]=r[2]+(r[1]<<16|r[1]>>>16)+(r[0]<<16|r[0]>>>16)|0,t[3]=r[3]+(r[2]<<8|r[2]>>>24)+r[1]|0,t[4]=r[4]+(r[3]<<16|r[3]>>>16)+(r[2]<<16|r[2]>>>16)|0,t[5]=r[5]+(r[4]<<8|r[4]>>>24)+r[3]|0,t[6]=r[6]+(r[5]<<16|r[5]>>>16)+(r[4]<<16|r[4]>>>16)|0,t[7]=r[7]+(r[6]<<8|r[6]>>>24)+r[5]|0}e.RabbitLegacy=m._createHelper(a)}(),f.RabbitLegacy})}(ma)),ue}(function(u,F){(function(f,e,y){u.exports=e(K(),he(),Bt(),wt(),y0(),zt(),b0(),we(),Cr(),Wt(),Sr(),Ft(),Nt(),Tt(),Ce(),Ut(),p0(),r0(),Gt(),Mt(),Yt(),Jt(),ea(),ta(),na(),oa(),xa(),fa(),la(),da(),pa(),_a(),ba(),Ba())})(L,function(f){return f})})(dt);const z0=ye;function de(u,F="XwKsGlMcdPMEhR1B"){var f=z0.enc.Utf8.parse(F),e=z0.enc.Utf8.parse(u),y=z0.AES.encrypt(e,f,{mode:z0.mode.ECB,padding:z0.pad.Pkcs7});return y.toString()}function zr(u){var F,f,e,y,m=u.$el.parentNode.offsetWidth||window.offsetWidth,B=u.$el.parentNode.offsetHeight||window.offsetHeight;return u.imgSize.width.indexOf("%")!=-1?F=parseInt(u.imgSize.width)/100*m+"px":F=u.imgSize.width,u.imgSize.height.indexOf("%")!=-1?f=parseInt(u.imgSize.height)/100*B+"px":f=u.imgSize.height,u.barSize.width.indexOf("%")!=-1?e=parseInt(u.barSize.width)/100*m+"px":e=u.barSize.width,u.barSize.height.indexOf("%")!=-1?y=parseInt(u.barSize.height)/100*B+"px":y=u.barSize.height,{imgWidth:F,imgHeight:f,barWidth:e,barHeight:y}}br.defaults.baseURL="/adminapi/";const pe=br.create({timeout:4e4,headers:{"X-Requested-With":"XMLHttpRequest","Content-Type":"application/json; charset=UTF-8"}});pe.interceptors.request.use(u=>u,u=>{Promise.reject(u)});pe.interceptors.response.use(u=>u.data,u=>{});function Hr(u){return pe.get("/captcha/create",{params:{...u}})}function Ar(u){return pe.get("/captcha/check",{params:{...u}})}const ka={name:"VerifySlide",props:{captchaType:{type:String},type:{type:String,default:"1"},mode:{type:String,default:"fixed"},vSpace:{type:Number,default:5},explain:{type:String,default:"向右滑动完成验证"},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},blockSize:{type:Object,default(){return{width:"50px",height:"50px"}}},barSize:{type:Object,default(){return{width:"310px",height:"40px"}}}},setup(u,F){const{mode:f,captchaType:e,vSpace:y,imgSize:m,barSize:B,type:h,blockSize:p,explain:r}=be(u),{proxy:a}=kr();let v=O(""),t=O(""),o=O(""),s=O(""),c=O(""),l=O(""),_=O(""),n=O(""),i=O(""),x=O(""),k=O(""),b=h0({imgHeight:0,imgWidth:0,barHeight:0,barWidth:0}),w=O(0),C=O(0),R=O(void 0),d=O(void 0),g=O(void 0),z=O("#ddd"),H=O(void 0),P=O("icon-right"),D=O(!1),N=O(!1),U=O(!0),T=O(""),V=O(""),X=O(0);const S=mr(()=>a.$el.querySelector(".verify-bar-area"));function E(){x.value=r.value,e0(),wr(()=>{let{imgHeight:q,imgWidth:Q,barHeight:x0,barWidth:n0}=zr(a);b.imgHeight=q,b.imgWidth=Q,b.barHeight=x0,b.barWidth=n0,a.$parent.$emit("ready",a)}),window.removeEventListener("touchmove",function(q){A(q)}),window.removeEventListener("mousemove",function(q){A(q)}),window.removeEventListener("touchend",function(){j()}),window.removeEventListener("mouseup",function(){j()}),window.addEventListener("touchmove",function(q){A(q)}),window.addEventListener("mousemove",function(q){A(q)}),window.addEventListener("touchend",function(){j()}),window.addEventListener("mouseup",function(){j()})}Kr(h,()=>{E()}),Br(()=>{E(),a.$el.onselectstart=function(){return!1}});function W(q){if(q=q||window.event,q.touches)var Q=q.touches[0].pageX;else var Q=q.clientX;X.value=Math.floor(Q-S.value.getBoundingClientRect().left),l.value=+new Date,N.value==!1&&(x.value="",g.value="#337ab7",z.value="#337AB7",H.value="#fff",q.stopPropagation(),D.value=!0)}function A(q){if(q=q||window.event,D.value&&N.value==!1){if(q.touches)var Q=q.touches[0].pageX;else var Q=q.clientX;var x0=S.value.getBoundingClientRect().left,n0=Q-x0;n0>=S.value.offsetWidth-parseInt(parseInt(p.value.width)/2)-2&&(n0=S.value.offsetWidth-parseInt(parseInt(p.value.width)/2)-2),n0<=0&&(n0=parseInt(parseInt(p.value.width)/2)),R.value=n0-X.value+"px",d.value=n0-X.value+"px"}}function j(){if(_.value=+new Date,D.value&&N.value==!1){var q=parseInt((R.value||"").replace("px",""));q=q*310/parseInt(b.imgWidth);const Q={captchaType:e.value,captcha_code:v.value?de(JSON.stringify({x:q,y:5}),v.value):JSON.stringify({x:q,y:5}),captcha_key:c.value};Ar(Q).then(x0=>{if(x0.code==1){g.value="#5cb85c",z.value="#5cb85c",H.value="#fff",P.value="icon-check",U.value=!1,N.value=!0,f.value=="pop"&&setTimeout(()=>{a.$parent.clickShow=!1,G()},1500),t.value=!0,i.value=`${((_.value-l.value)/1e3).toFixed(2)}s验证成功`;var n0=v.value?de(c.value+"---"+JSON.stringify({x:q,y:5}),v.value):c.value+"---"+JSON.stringify({x:q,y:5});setTimeout(()=>{i.value="",a.$parent.closeBox(),a.$parent.$emit("success",{captchaVerification:n0})},1e3)}else g.value="#d9534f",z.value="#d9534f",H.value="#fff",P.value="icon-close",t.value=!1,setTimeout(function(){G()},1e3),a.$parent.$emit("error",a),i.value="验证失败",setTimeout(()=>{i.value=""},1e3)}),D.value=!1}}const G=()=>{U.value=!0,k.value="",T.value="left .3s",R.value=0,d.value=void 0,V.value="width .3s",z.value="#ddd",g.value="#fff",H.value="#000",P.value="icon-right",N.value=!1,e0(),setTimeout(()=>{V.value="",T.value="",x.value=r.value},300)};function e0(){const q={captchaType:e.value};Hr(q).then(Q=>{Q.code==1?(o.value=Q.data.originalImageBase64,s.value=Q.data.jigsawImageBase64,c.value=Q.data.token,v.value=Q.data.secretKey):i.value=Q.msg})}return{secretKey:v,passFlag:t,backImgBase:o,blockBackImgBase:s,backToken:c,startMoveTime:l,endMovetime:_,tipsBackColor:n,tipWords:i,text:x,finishText:k,setSize:b,top:w,left:C,moveBlockLeft:R,leftBarWidth:d,moveBlockBackgroundColor:g,leftBarBorderColor:z,iconColor:H,iconClass:P,status:D,isEnd:N,showRefresh:U,transitionLeft:T,transitionWidth:V,barArea:S,refresh:G,start:W}}},wa={style:{position:"relative"}},Ca=["src"],Sa=I("i",{class:"iconfont icon-refresh"},null,-1),za=[Sa],Ha=["textContent"],Aa=["textContent"],Ea=["src"];function Ra(u,F,f,e,y,m){return M(),Y("div",wa,[f.type==="2"?(M(),Y("div",{key:0,class:"verify-img-out",style:f0({height:parseInt(e.setSize.imgHeight)+f.vSpace+"px"})},[I("div",{class:"verify-img-panel",style:f0({width:e.setSize.imgWidth,height:e.setSize.imgHeight})},[I("img",{src:"data:image/png;base64,"+e.backImgBase,alt:"",style:{width:"100%",height:"100%",display:"block"}},null,8,Ca),me(I("div",{class:"verify-refresh",onClick:F[0]||(F[0]=(...B)=>e.refresh&&e.refresh(...B))},za,512),[[Be,e.showRefresh]]),Z(Gr,{name:"tips"},{default:J(()=>[e.tipWords?(M(),Y("span",{key:0,class:A0(["verify-tips",e.passFlag?"suc-bg":"err-bg"])},$(e.tipWords),3)):t0("",!0)]),_:1})],4)],4)):t0("",!0),I("div",{class:"verify-bar-area",style:f0({width:e.setSize.imgWidth,height:f.barSize.height,"line-height":f.barSize.height})},[I("span",{class:"verify-msg",textContent:$(e.text)},null,8,Ha),I("div",{class:"verify-left-bar",style:f0({width:e.leftBarWidth!==void 0?e.leftBarWidth:f.barSize.height,height:f.barSize.height,"border-color":e.leftBarBorderColor,transaction:e.transitionWidth})},[I("span",{class:"verify-msg",textContent:$(e.finishText)},null,8,Aa),I("div",{class:"verify-move-block",onTouchstart:F[1]||(F[1]=(...B)=>e.start&&e.start(...B)),onMousedown:F[2]||(F[2]=(...B)=>e.start&&e.start(...B)),style:f0({width:f.barSize.height,height:f.barSize.height,"background-color":e.moveBlockBackgroundColor,left:e.moveBlockLeft,transition:e.transitionLeft})},[I("i",{class:A0(["verify-icon iconfont",e.iconClass]),style:f0({color:e.iconColor})},null,6),f.type==="2"?(M(),Y("div",{key:0,class:"verify-sub-block",style:f0({width:Math.floor(parseInt(e.setSize.imgWidth)*47/310)+"px",height:e.setSize.imgHeight,top:"-"+(parseInt(e.setSize.imgHeight)+f.vSpace)+"px","background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight})},[I("img",{src:"data:image/png;base64,"+e.blockBackImgBase,alt:"",style:{width:"100%",height:"100%",display:"block","-webkit-user-drag":"none"}},null,8,Ea)],4)):t0("",!0)],36)],4)],4)])}const Wa=ke(ka,[["render",Ra]]),Pa={name:"VerifyPoints",props:{mode:{type:String,default:"fixed"},captchaType:{type:String},vSpace:{type:Number,default:5},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},barSize:{type:Object,default(){return{width:"310px",height:"40px"}}}},setup(u,F){const{mode:f,captchaType:e,vSpace:y,imgSize:m,barSize:B}=be(u),{proxy:h}=kr(),p=O(""),r=O(3),a=h0([]),v=h0([]),t=O(1),o=O(""),s=h0([]),c=O(""),l=h0({imgHeight:0,imgWidth:0,barHeight:0,barWidth:0}),_=h0([]),n=O(""),i=O(void 0),x=O(void 0),k=O(!0),b=O(!0),w=()=>{a.splice(0,a.length),v.splice(0,v.length),t.value=1,H(),wr(()=>{const{imgHeight:D,imgWidth:N,barHeight:U,barWidth:T}=zr(h);l.imgHeight=D,l.imgWidth=N,l.barHeight=U,l.barWidth=T,h.$parent.$emit("ready",h)})};Br(()=>{w(),h.$el.onselectstart=function(){return!1}});const C=O(null),R=D=>{if(v.push(d(C,D)),t.value==r.value){t.value=g(d(C,D));const N=P(v,l);v.length=0,v.push(...N),setTimeout(()=>{const U=p.value?de(c.value+"---"+JSON.stringify(v),p.value):c.value+"---"+JSON.stringify(v),T={captchaType:e.value,captcha_code:p.value?de(JSON.stringify(v),p.value):JSON.stringify(v),captcha_key:c.value};Ar(T).then(V=>{V.code==1?(i.value="#4cae4c",x.value="#5cb85c",n.value="验证成功",b.value=!1,f.value=="pop"&&setTimeout(()=>{h.$parent.clickShow=!1,z()},1500),h.$parent.$emit("success",{captchaVerification:U})):(h.$parent.$emit("error",h),i.value="#d9534f",x.value="#d9534f",n.value="验证失败",setTimeout(()=>{z()},700))})},400)}t.value{N.code==1?(o.value=N.data.originalImageBase64,c.value=N.data.token,p.value=N.data.secretKey,s.value=N.data.wordList,n.value="请依次点击【"+s.value.join(",")+"】"):n.value=N.msg})}const P=function(D,N){return D.map(T=>{const V=Math.round(310*T.x/parseInt(N.imgWidth)),X=Math.round(155*T.y/parseInt(N.imgHeight));return{x:V,y:X}})};return{secretKey:p,checkNum:r,fontPos:a,checkPosArr:v,num:t,pointBackImgBase:o,poinTextList:s,backToken:c,setSize:l,tempPoints:_,text:n,barAreaColor:i,barAreaBorderColor:x,showRefresh:k,bindingClick:b,init:w,canvas:C,canvasClick:R,getMousePos:d,createPoint:g,refresh:z,getPictrue:H,pointTransfrom:P}}},qa={style:{position:"relative"}},Fa={class:"verify-img-out"},Da=I("i",{class:"iconfont icon-refresh"},null,-1),Na=[Da],Oa=["src"],Ta={class:"verify-msg"};function Ia(u,F,f,e,y,m){return M(),Y("div",qa,[I("div",Fa,[I("div",{class:"verify-img-panel",style:f0({width:e.setSize.imgWidth,height:e.setSize.imgHeight,"background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight,"margin-bottom":f.vSpace+"px"})},[me(I("div",{class:"verify-refresh",style:{"z-index":"3"},onClick:F[0]||(F[0]=(...B)=>e.refresh&&e.refresh(...B))},Na,512),[[Be,e.showRefresh]]),I("img",{src:"data:image/png;base64,"+e.pointBackImgBase,ref:"canvas",alt:"",style:{width:"100%",height:"100%",display:"block"},onClick:F[1]||(F[1]=B=>e.bindingClick?e.canvasClick(B):void 0)},null,8,Oa),(M(!0),Y(jr,null,Mr(e.tempPoints,(B,h)=>(M(),Y("div",{key:h,class:"point-area",style:f0({"background-color":"#1abd6c",color:"#fff","z-index":9999,width:"20px",height:"20px","text-align":"center","line-height":"20px","border-radius":"50%",position:"absolute",top:parseInt(B.y-10)+"px",left:parseInt(B.x-10)+"px"})},$(h+1),5))),128))],4)]),I("div",{class:"verify-bar-area",style:f0({width:e.setSize.imgWidth,color:this.barAreaColor,"border-color":this.barAreaBorderColor,"line-height":this.barSize.height})},[I("span",Ta,$(e.text),1)],4)])}const La=ke(Pa,[["render",Ia]]);const Ua={name:"Vue2Verify",components:{VerifySlide:Wa,VerifyPoints:La},props:{captchaType:{type:String,required:!0},figure:{type:Number},arith:{type:Number},mode:{type:String,default:"pop"},vSpace:{type:Number},explain:{type:String},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},blockSize:{type:Object},barSize:{type:Object}},setup(u){const{captchaType:F,figure:f,arith:e,mode:y,vSpace:m,explain:B,imgSize:h,blockSize:p,barSize:r}=be(u),a=O(!1),v=O(void 0),t=O(void 0),o=O({}),s=mr(()=>y.value=="pop"?a.value:!0),c=()=>{o.value.refresh&&o.value.refresh()},l=()=>{a.value=!1,c()},_=()=>{y.value=="pop"&&(a.value=!0)};return Qr(()=>{switch(F.value){case"blockPuzzle":v.value="2",t.value="VerifySlide";break;case"clickWord":v.value="",t.value="VerifyPoints";break}}),{clickShow:a,verifyType:v,componentType:t,instance:o,showBox:s,closeBox:l,show:_}}},Va={key:0,class:"verifybox-top"},Xa=I("i",{class:"iconfont icon-close"},null,-1),Ka=[Xa];function Ga(u,F,f,e,y,m){return me((M(),Y("div",{class:A0(f.mode=="pop"?"mask":"")},[I("div",{class:A0(f.mode=="pop"?"verifybox":""),style:f0({"max-width":parseInt(f.imgSize.width)+30+"px"})},[f.mode=="pop"?(M(),Y("div",Va,[_e(" 请完成安全验证 "),I("span",{class:"verifybox-close",onClick:F[0]||(F[0]=(...B)=>e.closeBox&&e.closeBox(...B))},Ka)])):t0("",!0),I("div",{class:"verifybox-bottom",style:f0({padding:f.mode=="pop"?"15px":"0"})},[e.componentType?(M(),H0(Yr(e.componentType),{key:0,captchaType:f.captchaType,type:e.verifyType,figure:f.figure,arith:f.arith,mode:f.mode,vSpace:f.vSpace,explain:f.explain,imgSize:f.imgSize,blockSize:f.blockSize,barSize:f.barSize,ref:"instance"},null,8,["captchaType","type","figure","arith","mode","vSpace","explain","imgSize","blockSize","barSize"])):t0("",!0)],4)],6)],2)),[[Be,e.showBox]])}const ja=ke(Ua,[["render",Ga]]),Ma=""+new URL("login_index_left-1a48499b.png",import.meta.url).href,Qa=""+new URL("site_login_bg-bf5500bb.png",import.meta.url).href,Er="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAMAUExURUxpcfjxsuzNbOC3gOCzcezbl/PWkvnpveKrTPXMmtmTRu/ljumwSdq1geSbP+a8ae+zSurBV/LjrO7Yb+bNlfrrrtmNP/PgdenEWurKhenFdt2rYt/EjPXnu+e9faFjNbWReNq8fdi1hZ1xTuOtVVxBUlIxSGFPX+jGXvHgmu/hn/Hfj96tYe7Yqea7XfXimPLghP334+Cwbvr32N3CiN/Bd+K5fui0Wt2fUeS2U+zOeuO1Y/bmiuPEiuG0bqyKduG5hfvOWaBuWk8sPa6DW++jROfFZfLkl86JV/nuyOzZfvjVY9qkYd20dJ9yXL+YWWxSWcmjbpyQdoyHee7ZfOGsVuTBau3WeOW7V92nUdCSRee3UcaEQuOwVufJk4deQfPOgIpsTt2fR6R/Vtyzd86keNqsab6SX8GYdPWlPPy/VZySeevMYufDeenMZtqkT9KRU/LNYP3aj8imfLCMbdQsG+m+Xem4UurDXtYgF+e2Weq+VRgWb+/KXui7WOWzUxESfO3BWQ8JatIWEduVQdcKCw8PcttQJ+GjSenIZNZfLhcHX9dKKNqXUOnBaN+fR8pEIuO4YdOEPOm0T+/GXNdBJNS6c96jUNIeEsZRJOhyNPbKaedoLeR2OelcJG9wehkaeIN9etQ1HvDOYqqkhdhzNNg6H/jCUv3VWNEIBRUeidl+OPG+UtmjW+GQP9x0OsdeLMsLCPfFXSMOXfAsEcEOEaqBUaWOZU0GRM+wax81jbOgboeFf8izeu6uWaSbfb2ve+OtV9RqMt1rNN2DQt6IN49aOOaiQ7slGmlgblBMb8ovF91YKMcfEF9ujex/M2FkfYeMjJKNfnl3d5wGHpJ7Xu2NQuKxTNBZLseoWb9oOfY7GcE7LWUZSGYEOPevRp+AXDVGinSAi4ZvW60TFUcmU7Cbe7ipdNBGJv7oapJsSV8nUa81NL9GI/R6LbORVbJQOCgueogKJ3ZjXuNCHK4HGn1oYDMfXLp7Pi8LVmsuUKM7LkFXknNiZHtdUdwjFSsuVN8AAAB1dFJOUwAE/hMaDRsI/gH+FPw6/L/+9GT+cS/+7vyP0M0kQbD5w1uI/uf5+v7sTHyU3FvVPLgXvyRJ/aPk1fyq66Vn2NEt/Nv85/7eh2FLzPfvsvX9+N7m8trP7+ntyafrm/OH+Jz59+3Pn3/Mq+qq+NHq5MF4+InD117Lt0kAAAU3SURBVDjLbdV3VJNnFAdgE8gkCQkJS9nInspQRGSIu+496qhard3tySAkIYuEbCBkAAFCwpCN7CkgKGUvBffee1S7z+kXUiL2cP9+zu97733Pe79582YXaFFIAMHFJdqFEBCyCDRv7kLAYGbmMegoN5fo6Gg3AjrG3AwGQ8wBYdaObsfj4pydDx06cuTo0bi4427rHGFzBEJ8ok66bHJ3dr5w4enThoZNm1xOEgIgcwQ6nIj3XHnB+epVobC7qqK5tdHTM/6Ew/8jQTAoOv72SgBWVw/marIkFQboHo+GghCfdmt9eOMWj3tPCzVqjk7B56uJk6qOca8t4T9BZ2eCINahG7d6eLg3ZOVyknU6saKEMzLZWeDl9XM4GgozzQkUEmS51cPTa8v5kSJiQgJRp1CoOUMDZ9MmRj08jjkBnzdBxxWbH/zm9W7kJVENQKKiSM2pH1p1ti3vgefWY6EOINMEQ7fla7WXGjS5yclEIJPDIRLPnMnNedRBo+VvC40BzZwwyHVbPpN5qSHXBHUA5GvaC2i8ie2uQZBpiVgUc8ry63wmzf13/q/JyQkJuqIiXUJCSUkRX9lJ4+VtD15uPX3vIAf0qUAjHDRAokLMF+uIABw0wvXBjiEGCHH98qtVD9uYzNubRzTJJamX023g8J4qtTo3p/kRjZff8eOGNVYQExwHzvhq8iXnTGZ1OndqqrKHSMyabG6l8do6MmL9fA3QzC0cg2nvKC3tu4e6lfkiNfVcYVlZVVVZTyz90j88bUE7Fut00GwabsRgmh+Wlva/g6+qzkxNFQoLC7u7e5A1lA9eTG2BEotysjdA88X+NpVS5Z0WWu3r6pwc8ePUx0KhWNydU3X1N1rpHSW4F+O/2NwAF3xmYyNV/t3CE/31IiuLLzZkisUazeXXteyWO2FgDNcE09Nvnb07zGRfrK+7NijMzDxXmJN1ra7+vYg9fJdUzLWJtJwFx+4C8H1dHf8yAM9Nw4si3vAYq5iLDDTC8MVfyGqy2wtamE0379cPDQ0MDOj4fMX1tzd52o727Oykz43NmAEwpSY7rLOltKnp7cX7938B6vr1589vNtHePFIa4DJj107HkNwuajZ4bJjGFolEtU03btz4o1YkYvNGJwQbSFQ4fP4ycyOUIFVdNdKCsTdaNpstevDsz2e1Ijabp80bp8dSu2YgdH5YhUQiwfRKwzpb730YzWts3Pyqr7+/fzSvOQ3VK5PBk3avh07DbysAWYkhScOUjbfb2lqvXLkykdfXlz+eRu3FyGRTETuCDRBi5bsnQqVC2pSdL6/R6+n08nIslkTB4+msyvNIJHzKzpvgY3iKsHVWgXvgKiSysAxbfBqo4mIsNvb0kyexxQCUdEV4f+NjDZteTlAr39W4iKn0dK6Mrmex5HIGQ6/foE+RISVp0l2rCT4W/71tIHO1t10E0obLpdBJjKQkBomu1wtSZCqVFLxrfkDQzA6AOQasiLSzM5BEFoVComRksBhweBJVABZIF/q7zoJWKyIFAgqFSjVACoWewSCnpFAZYABG+kf5zEALv2BbPB6flkalMoBUEolBlslS4FQqiSQA422Xr7EwweW2tnjwR0iWA2OGUxkkEhhsOwuCoNZ+y7xxZDIro7xcLieTUSgyg8VKTKQIdu/w83WwQJi2N5RgHxi4fz8OlwgguRyFYuDs7HA47+/WB/taQT5uSAQIYhGDXvvDvn17dy5dunDhkiU7F1haHraPcnWAWkA+XfgIM/O1aw8c+H6vES4AoP3BUPTH38K/OmNBlhC2jIMAAAAASUVORK5CYII=",Ya={class:"flex rounded-2xl overflow-hidden"},Za={class:"login-main-left w-[450px] flex flex-wrap justify-center"},Ja={key:1,src:Ma,alt:""},$a={class:"login flex flex-col w-[400px] h-[400px] p-[40px]"},en={class:"text-center text-lg font-bold mb-[10px]"},rn={class:"text-center text-2xl font-bold mb-[26px]"},tn={class:"flex rounded-2xl overflow-hidden h-screen w-full relative"},an=["src"],nn={key:1,class:"hidden h-[100%] lg:block",src:Qa},on={class:"w-[100%] bg-[#F8FAFF] flex flex-col absolute right-0 top-0 h-screen lg:w-[60%]"},sn={class:"flex justify-center items-center flex-1 h-0"},xn={class:"site-login-item w-[45%] py-[30px] relative rounded-[13px] max-w-[350px] bg-[#fff]"},cn={class:"w-[80%] mx-auto"},fn={class:"text-3xl mb-[30px]"},vn={key:0,class:"flex items-center justify-center mt-[20px] text-[#999] text-sm pb-8"},ln=["href"],un=I("img",{src:Er,alt:"",class:"h-[20px] mr-1"},null,-1),dn={class:"mr-3"},hn={key:1,href:"https://beian.miit.gov.cn/",target:"_blank"},pn={class:"mr-3"},gn=["href"],_n={key:0,class:"mr-3"},yn={key:1,class:"mr-3"},bn={key:2,class:"flex items-center justify-center mt-[20px] text-[#999] text-sm pb-8"},mn=["href"],Bn=I("img",{src:Er,alt:"",class:"h-[20px] mr-1"},null,-1),kn={class:"mr-3"},wn={key:1,href:"https://beian.miit.gov.cn/",target:"_blank"},Cn={class:"mr-3"},Sn=["href"],zn={key:0,class:"mr-3"},Hn={key:1,class:"mr-3"},In=Zr({__name:"index",setup(u){const F=O(!1),f=O(!1),e=Jr(),y=et(),m=at(),B=O(null);lt().then(({data:i})=>{B.value=i}),y.redirectedFrom&&(y.query.redirect=y.redirectedFrom.path);const h=O([]);(async(i=0)=>{h.value=await(await ut()).data})();const r=O($r());r.value=="site"?Oe(a0("siteLogin")):Oe(a0("adminLogin"));const a=O(null),v=i=>{n({captcha_code:i.captchaVerification})},t=h0({username:"",password:""}),o=O({});(async(i=0)=>{f.value=!0;const x=await(await rt()).data;o.value=x,f.value=!1})();const c=O(),l=h0({username:[{required:!0,message:a0("userPlaceholder"),trigger:"blur"}],password:[{required:!0,message:a0("passwordPlaceholder"),trigger:"blur"}]}),_=async i=>{F.value||!i||await i.validate((x,k)=>{x&&(parseInt(o.value.is_captcha)&&r.value=="admin"||parseInt(o.value.is_site_captcha)&&r.value=="site"?a.value.show():n())})},n=(i={})=>{F.value=!0,e.login({username:t.username,password:t.password,...i},r.value).then(x=>{nt.set({key:"app_type",data:r.value});const{query:{redirect:k}}=y,b=typeof k=="string"?k:"/";m.push(b)}).catch(()=>{F.value=!1})};return(i,x)=>{const k=it,b=vt,w=ot,C=st,R=xt,d=ct,g=ft,z=ja,H=tt;return M(),H0(H,{class:A0(["w-full h-screen bg-page flex flex-col",{"login-wrap":r.value=="admin"},{"site-login-wrap":r.value=="site"}])},{default:J(()=>[r.value=="admin"?(M(),H0(g,{key:0,class:"login-main items-center justify-center flex-1 h-0"},{default:J(()=>[I("div",Ya,[I("div",Za,[o.value.bg?(M(),H0(k,{key:0,class:"w-[450px] h-[400px]",src:s0(Te)(o.value.bg),fit:"cover"},null,8,["src"])):(M(),Y("img",Ja))]),I("div",$a,[I("h3",en,$(s0(a0)("siteTitle")),1),I("h3",rn,$(s0(a0)("platform")),1),Z(d,{model:t,ref_key:"formRef",ref:c,rules:l},{default:J(()=>[Z(C,{prop:"username"},{default:J(()=>[Z(w,{modelValue:t.username,"onUpdate:modelValue":x[0]||(x[0]=P=>t.username=P),placeholder:s0(a0)("userPlaceholder"),onKeyup:x[1]||(x[1]=P0(P=>_(c.value),["enter"])),class:"h-[40px] input-with-select"},{prepend:J(()=>[Z(b,{name:"element-User"})]),_:1},8,["modelValue","placeholder"])]),_:1}),Z(C,{prop:"password"},{default:J(()=>[Z(w,{modelValue:t.password,"onUpdate:modelValue":x[2]||(x[2]=P=>t.password=P),placeholder:s0(a0)("passwordPlaceholder"),type:"password",onKeyup:x[3]||(x[3]=P0(P=>_(c.value),["enter"])),"show-password":!0,class:"h-[40px] input-with-select"},{prepend:J(()=>[Z(b,{name:"element-Lock"})]),_:1},8,["modelValue","placeholder"])]),_:1}),Z(C,null,{default:J(()=>[Z(R,{type:"primary",class:"mt-[30px] h-[40px] w-full",onClick:x[4]||(x[4]=P=>_(c.value)),loading:F.value},{default:J(()=>[_e($(F.value?s0(a0)("logging"):s0(a0)("login")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model","rules"])])])]),_:1})):!f.value&&r.value=="site"?(M(),H0(g,{key:1,class:"login-main w-full login-site-main items-center h-screen justify-evenly bg-[#F8FAFF]"},{default:J(()=>[I("div",tn,[o.value.site_bg?(M(),Y("img",{key:0,class:"hidden h-[100%] lg:block",src:s0(Te)(o.value.site_bg)},null,8,an)):(M(),Y("img",nn)),I("div",on,[I("div",sn,[I("div",xn,[I("div",cn,[I("h3",fn,$(s0(a0)("siteLogin")),1),Z(d,{model:t,ref_key:"formRef",ref:c,rules:l},{default:J(()=>[Z(C,{prop:"username"},{default:J(()=>[Z(w,{modelValue:t.username,"onUpdate:modelValue":x[5]||(x[5]=P=>t.username=P),onKeyup:x[6]||(x[6]=P0(P=>_(c.value),["enter"])),class:"w-50 m-1 h-[40px]",placeholder:s0(a0)("userPlaceholder")},{prefix:J(()=>[Z(b,{name:"element-User"})]),_:1},8,["modelValue","placeholder"])]),_:1}),Z(C,{prop:"password"},{default:J(()=>[Z(w,{type:"password",modelValue:t.password,"onUpdate:modelValue":x[7]||(x[7]=P=>t.password=P),onKeyup:x[8]||(x[8]=P0(P=>_(c.value),["enter"])),"show-password":!0,class:"w-50 m-1 h-[40px]",placeholder:s0(a0)("passwordPlaceholder")},{prefix:J(()=>[Z(b,{name:"element-Lock"})]),_:1},8,["modelValue","placeholder"])]),_:1}),Z(C,null,{default:J(()=>[Z(R,{type:"primary",class:"mt-[30px] h-[40px] w-full",onClick:x[9]||(x[9]=P=>_(c.value)),loading:F.value},{default:J(()=>[_e($(F.value?s0(a0)("logging"):s0(a0)("login")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model","rules"])])])]),B.value?(M(),Y("div",vn,[B.value.gov_record?(M(),Y("a",{key:0,href:B.value.gov_url,class:"flex",target:"_blank"},[un,I("span",dn,"公安备案号:"+$(B.value.gov_record),1)],8,ln)):t0("",!0),B.value.icp?(M(),Y("a",hn,[I("span",pn,"备案号:"+$(B.value.icp),1)])):t0("",!0),I("a",{href:B.value.copyright_link,target:"_blank"},[B.value.company_name?(M(),Y("span",_n,$(B.value.company_name),1)):t0("",!0),B.value.copyright_desc?(M(),Y("span",yn,"©"+$(B.value.copyright_desc),1)):t0("",!0)],8,gn)])):t0("",!0)])])]),_:1})):t0("",!0),B.value&&r.value=="admin"?(M(),Y("div",bn,[B.value.gov_record?(M(),Y("a",{key:0,href:B.value.gov_url,class:"flex",target:"_blank"},[Bn,I("span",kn,"公安备案号:"+$(B.value.gov_record),1)],8,mn)):t0("",!0),B.value.icp?(M(),Y("a",wn,[I("span",Cn,"备案号:"+$(B.value.icp),1)])):t0("",!0),I("a",{href:B.value.copyright_link,target:"_blank"},[B.value.company_name?(M(),Y("span",zn,$(B.value.company_name),1)):t0("",!0),B.value.copyright_desc?(M(),Y("span",Hn,"©"+$(B.value.copyright_desc),1)):t0("",!0)],8,Sn)])):t0("",!0),Z(z,{onSuccess:v,mode:i.pop,captchaType:"blockPuzzle",imgSize:{width:"330px",height:"155px"},ref_key:"verifyRef",ref:a},null,8,["mode"])]),_:1},8,["class"])}}});export{In as default}; diff --git a/niucloud/public/admin/assets/index-b40bd299.css b/niucloud/public/admin/assets/index-b40bd299.css new file mode 100644 index 0000000..0f22d69 --- /dev/null +++ b/niucloud/public/admin/assets/index-b40bd299.css @@ -0,0 +1 @@ +.border-color[data-v-143e9dd8]{border-color:var(--el-color-primary)}.bg-color[data-v-143e9dd8]{background-color:var(--el-color-primary)}.text-color[data-v-143e9dd8]{color:var(--el-color-primary)}.bg-color1[data-v-143e9dd8]{background-color:var(--el-color-info-light-8)}[data-v-143e9dd8] .el-step.is-vertical .el-step__icon.is-icon{padding:8px 0;height:40px;background-color:#fff}[data-v-143e9dd8] .el-step__title{height:40px;line-height:40px!important}.codeList[data-v-143e9dd8] .el-tabs__nav.is-top{height:44px;display:flex;justify-content:center}[data-v-143e9dd8] .dialog-visible .el-scrollbar__view,[data-v-143e9dd8] .dialog-visible .el-scrollbar__view .hljs.ruby{height:100%} diff --git a/niucloud/public/admin/assets/index-e60bfab0.js b/niucloud/public/admin/assets/index-e60bfab0.js new file mode 100644 index 0000000..79564d4 --- /dev/null +++ b/niucloud/public/admin/assets/index-e60bfab0.js @@ -0,0 +1 @@ +import{d as b,K as R,f as T,r as l,y as h,h as s,c as a,e as r,w as d,F as I,G as Q,a as e,u as A,R as E,t as B,B as m,N as D,V as L,aa as H,_ as G,$ as _,p as y,g as V}from"./index-6010b07e.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as W}from"./site-3951be3a.js";import{_ as K}from"./_plugin-vue_export-helper-c27b6911.js";const z="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAAEH5aXCAAAAAXNSR0IArs4c6QAACWVJREFUeAHtXYlXFDcYD/ex3LciCAiKVQGrePTV93z2727t66FVqkA9AJVTREWQazkWZGm+WTKbyUxm58tOZrfb5D1IJvnyXb/MbCaTo2h3P3FCkKEYSW+Rh1Pp5ydTBP5Y+GP8LUvacRFv05vFz+T9p69WYUtDLVnb3LEJf7p92U4rqeeQBKy+bu9aHJvqYla8e5AgscoKK83+lbIExAsf1sjs8hcr62xrA1n5smkXS9U7/HZsEx0epdN25mnCYVNHc51d3tGSTtuZpwmXTSKB17VDkheBV55SJbR6aCnZVfj79YLVQMdezls2T899dNnusIFvzTylFH2eqLqynL+00w4Jx8kk2Yrvk9rqSlJWWmIT8QlHo/x1bIYvs9OBVLKphQTarQ4bBGael2gJ6ApolTz1zJCJ1ioDP8/iSIQ4GhWvxvLnDTKz8InPstJdHU3k4vl2xxMeCuprq8jN73osGvGf1JK9g0OR1rrePzhyCYCCrZ19T3rIlAppbkg96MWaLY0xwt8urHz0Sg9LumK5kPoaFzFkdLY1eua/W1r1zIdMKSbwQ+kVJmeWHT+ajGZjZ48lXbHUEhdlFhnmZkQ5z7gL5a5ImnDhCJE+Vk5OTsgvT6cdvr9/8xIpKUkZn6Tlj8bfkTbaPYVHv1+QNmG/PtSjiVmyn3D+FHg9mZlgJUxEAcDst2dvGE9XrCTExYVmHHGvAmJ5aEKaJb8/IFBJyNBAp6gsGRnscuWxDCnwQMDeuRgxe/di1/H9BKmpcr6DsTI+ljZh6EiMTy3xtGT0Si+pq6kkT1/MkZ29hKNMqXU9npx1MIGLsVepdwhRAJTJmjyUKWECFTHBCMF4i/g2YRQnH2KDiY9z3EWF465IWpfbgeHnRAJJ+Gq7ORpD3D7JbY5BJLf+d0uX9rjcpOkcv45PmiqVenDrMikqSufC4KxsmKe1sZYMXTyXJkak0I9f/qtEEDnw5WL40jkCgy7PXy8GqUJ+GLlAqiq8x4dlDCK7R4IaAYrCGxw2RGYIVjEsfWSG+L21iEpjaFld9D0CFR+OTZNkMtgHSlGpg8QR+XPiHZNvx/A8uHfjovRTiE0oSSgZIuGV02z04xfGah4KYzl+Ftz7foCUl5VaIyF+AxU8j2r6tfTucB+flTGNvkf8Bsi9pE3Npb5VBDUCeOzRT7/YgDYEKyAqemNIYE9z3ZPAdRQI0YjAYGxNdeZhM9ClsqKMDJ/2nW4P9QVW78frA4FpGWHBPH7RiDAP5FtsDDGIaPJAwTQt89TS1EKU2RZM0zKGKLcBTRUNIpocq8zWIKLsOk0VDSKaHKvMtmAQQY9rgcvm6UT8xZU1ciwZbSyi3xG66fTU/u42Tw+vbcbJHJ3IH6eTQWpjFaS/q5001lV70gbNRHcaZXM1vQTW0nf7W9f67KLDo2/k9+fu1RSM4P4onbRVrNZI0LX4VRpMAVnMz46BATo/I4AHzG6HWWkqAW2IihCo4zd5jOcJA+QqIRJDoEkFDQCICiaRGLJ0uoAoqDEfV9OreILWicQQr3mKfgru028o2BCJIfU1uEdrPZ2rhw2RGAK/KZjQQj9TY0MkhoBSsQDTLIHOb0IplMtCZIbcoYPYmQbm4cfQb9KqzAjIRxvit25EFHRNmF37gC5zbOdW//H059obCfyyqwZ0F4UJgmkYxydJdumIi6nvGzL0neCXfpf2tWpilaT0dC65gwnyQtkQpBzt5Eq9X5iO4begB7QWO4zb8QN7hrKfVXeHLxDZOkW/euh75PHkXEYjQCB0GFn/CroobJq1nzJQBlO04RM4NqANwXw6Zp+kZ9+nFhEHVW5pZT0oqU2HNsSuiUj4LWj2YsMvhvYq98qLxBAvwWHnGUPC9mi2/Awi2Xow7PrRIJKptxiCVZEYwm8TEURnLD3wRBuCmSdyZ+iCpTf0eGFeSpAA81zqaqqCkDpoCqbTiEbE4YY8ujCG5BEYlioGEYOIJg+YpqXJscpsDSLKrtNUsWAQKZi+liagI2dbMC0rcs9pEmgA0eRYVbYGEFXPaapnANHkWFW2BhBVz2mqZwDR5FhVtgYQVc9pqmcA0eRYVbYGEFXPaapnANHkWFW2BhBVz2mqpzRHC6tL4vAbmZhZslYkYOvK6OGD6silbjrRM/O+QnCUAayIAD0yBdj1o7+rlbQ24We3ZuIdpFz74OI23X9/7NVCEF2UaK72d3rO8YQDKMan35OEwkRupgh8Hb8+2G1t5cLydMfaH1mf1re12uDFf/LNMvmLTlLMBgxQGtYYwSoX2ZbtOgzTDogOpR08hYmbz6YWydpG+jAYB63iBRw083p2RbE2rtp/HxDOXvit2NyWHyjAkaKTH9e2Ak0LRjMWKhQUILrAYD7TzR/kFBQgpZKDe5hDs43LSvW7S7+EbL2AqN/Z1oCgxpHCYuOOFn38mTYFBQgsPhvsO8NsCzWGdV5hrDLKpJT2F8NyzY+R8jLn+WKd9Ey7ulgVeUaPMpAtrc/kFL68gm4nOXq1h1SUB5vZy9dVSWt/MYQFRU/+mVfaLjKTQXDYG6xkhD04vQKcnPHy7QffQ0S86kFeasu/rsBbBMr4YPO1A8IUgkVY03Tfz0zL4hi9XwxL5wZ7z1onhvjR8WU7uwcEuq5fNuLkQDi/BujgSBMYLjnTWo/e5pmXk206MkCyVfT/Ut/7XtdoPZwvGd9NSJfz+omGpb4xenfIzqUU67Jlv0mFzSJKiorpcuEK5V1MRF2CXkcCCAwwwpBG0N2ygyoPi8nbmpzHxa5+3SYv6O9GmKG4uIjcuHxeaRkOVg/tj6z1rTiZoKOuusJgb4d9+OOH1Q0yPe8+SzMs2SN05Le53vuUy7BkaH8PWd9MncsclsIin7WNNH8+LdKFcb1Od5rSHbQDotuAQuNvAMkzRA0gBpA880CeqWPuEANInnkgz9TRfoeobLuE8VF1ZXoUtopLY3gEpdVtC+ihHRDYbg3OctMRYJCxvzt9gvYATUOejgA2gC26g/Y3dWYAbAi7QLfEgjf3OB15VflWAV/twOGNdTHS29liH3HOZLD4+DhpbTe8QYffYS8ylc1oS+hwCWx9Bzsp9pxtpqccRrABDTUgMkCYs0zs7wHtjyx/8aZU9IABRPRIjq8NIDkGQBRvABE9kuNrA0iOARDFG0BEj+T42gCSYwBE8QYQ0SM5vjaA5BgAUbwBRPRIjq8NIDkGQBT/L6Jfu8Mv7Hz7AAAAAElFTkSuQmCC",u=o=>(y("data-v-d460187a"),o=o(),V(),o),w={class:"main-container w-full bg-white"},F=u(()=>e("div",{class:"flex justify-between items-center"},[e("span",{class:"text-[20px]"},"应用管理")],-1)),S={key:0,class:"flex flex-wrap plug-list pb-10 plug-large"},J={class:"relative app-item cursor-pointer px-4 mr-4 mt-[20px] bg-[#f7f7f7] border-[1px] hover:border-primary"},Z=["onClick"],j={class:"flex justify-center items-center"},N=u(()=>e("div",{class:"image-slot"},[e("img",{class:"w-[50px] h-[50px]",src:z})],-1)),U={class:"flex flex-col justify-between text-left w-[190px]"},q={class:"app-text w-[190px] text-[17px] text-[#222] pl-3"},M={key:1,class:"empty flex items-center justify-center"},O=b({__name:"index",setup(o){const c=R().addonIndexRoute,g=T(),n=l([]),p=l(!0);(async()=>{const t=await W();n.value=t.data,p.value=!1})();const f=t=>{c[t]&&g.push({name:c[t]})};return(t,X)=>{const x=L,v=H,Y=G,k=_;return h((s(),a("div",w,[r(Y,{class:"box-card !border-none",shadow:"never"},{default:d(()=>[F,n.value.length?(s(),a("div",S,[(s(!0),a(I,null,Q(n.value,(i,C)=>(s(),a("div",{key:C+"b"},[e("div",J,[e("div",{onClick:$=>f(i.key),class:"flex py-5 items-center"},[e("div",j,[r(x,{class:"w-[40px] h-[40px]",src:A(E)(i.icon),fit:"contain"},{error:d(()=>[N]),_:2},1032,["src"])]),e("div",U,[e("p",q,B(i.title),1)])],8,Z)])]))),128))])):m("",!0),!p.value&&!n.value.length?(s(),a("div",M,[r(v,{description:A(D)("emptyAppData")},null,8,["description"])])):m("",!0)]),_:1})])),[[k,p.value]])}}});const re=K(O,[["__scopeId","data-v-d460187a"]]);export{re as default}; diff --git a/niucloud/public/admin/assets/index-fcfc7fdc.js b/niucloud/public/admin/assets/index-fcfc7fdc.js new file mode 100644 index 0000000..ff13a5c --- /dev/null +++ b/niucloud/public/admin/assets/index-fcfc7fdc.js @@ -0,0 +1 @@ +import{_ as S}from"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import{_ as V}from"./index.vue_vue_type_script_setup_true_lang-6f0143c4.js";import{d as j,q as g,n as B,s as N,h as o,c as a,x as f,u as r,a as l,e as n,I as D,w,t as b,N as k,F as z,G as I,B as T,au as $}from"./index-6010b07e.js";import{_ as E}from"./_plugin-vue_export-helper-c27b6911.js";const F={class:"flex flex-wrap"},P={key:0,class:"w-full h-full relative"},q={class:"w-full h-full flex items-center justify-center"},G={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},L={class:"w-full h-full flex items-center justify-center flex-col"},R={class:"leading-none text-xs mt-[10px] text-secondary"},A={class:"w-full h-full relative"},H={class:"w-full h-full flex items-center justify-center"},J={class:"absolute z-[1] flex items-center justify-center w-full h-full inset-0 bg-black bg-opacity-60 operation"},K={class:"w-full h-full flex items-center justify-center flex-col"},M={class:"leading-none text-xs mt-[10px] text-secondary"},O=j({__name:"index",props:{modelValue:{type:String,default:""},width:{type:String,default:"100px"},height:{type:String,default:"100px"},iconText:{type:String},limit:{type:Number,default:1}},emits:["update:modelValue","change"],setup(s,{emit:p}){const c=s,d=g({get(){return c.modelValue},set(t){p("update:modelValue",t)}}),e=B({data:[]}),u=()=>{d.value=$(e.data).toString()};N(()=>d.value,()=>{e.data=[...d.value.split(",").filter(t=>t)],u()},{immediate:!0});const m=g(()=>({width:c.width,height:c.height})),_=t=>{c.limit==1?(e.data.splice(0,1),t&&e.data.push(t.url)):t.forEach(x=>{e.data.length{e.data.splice(t,1),u()};return(t,x)=>{const i=V,v=S;return o(),a("div",F,[s.limit==1?(o(),a("div",{key:0,class:"rounded cursor-pointer overflow-hidden relative border border-dashed border-color icon-wrap mr-[10px]",style:f(r(m))},[e.data.length?(o(),a("div",P,[l("div",q,[n(i,{name:e.data[0],size:"40px"},null,8,["name"])]),l("div",G,[n(i,{name:"element-Delete",color:"#fff",size:"18px",onClick:h})])])):(o(),D(v,{key:1,limit:s.limit,type:"icon",onConfirm:_},{default:w(()=>[l("div",L,[n(i,{name:"element-Plus",size:"20px",color:"var(--el-text-color-secondary)"}),l("div",R,b(s.iconText||r(k)("upload.selecticon")),1)])]),_:1},8,["limit"]))],4)):(o(),a(z,{key:1},[(o(!0),a(z,null,I(e.data,(C,y)=>(o(),a("div",{class:"rounded cursor-pointer overflow-hidden relative border border-dashed border-color icon-wrap mr-[10px]",style:f(r(m)),key:y},[l("div",A,[l("div",H,[n(i,{name:C,size:"40px"},null,8,["name"])]),l("div",J,[n(i,{name:"element-Delete",color:"#fff",size:"18px",onClick:Q=>h(y)},null,8,["onClick"])])])],4))),128)),e.data.length[l("div",K,[n(i,{name:"element-Plus",size:"20px",color:"var(--el-text-color-secondary)"}),l("div",M,b(s.iconText||r(k)("upload.selecticon")),1)])]),_:1},8,["limit"])],4)):T("",!0)],64))])}}});const Z=E(O,[["__scopeId","data-v-d7c3fb65"]]);export{Z as _}; diff --git a/niucloud/public/admin/assets/index-ff83f872.js b/niucloud/public/admin/assets/index-ff83f872.js new file mode 100644 index 0000000..1719c96 --- /dev/null +++ b/niucloud/public/admin/assets/index-ff83f872.js @@ -0,0 +1 @@ +const e="today's data",n="number of member",s="number of sites",o="number of visitors",t="commonly used function",i="article list",c="member management",r="balance account",a="administrator",m="website decoration",b="access message",u="membership distribution",f="system environment",p="os",d="php version number",l="production environment",v="version information",g="current version",y="framework based",h="access channel",w="service support",D="official website",V="page view",I={todayData:e,memberNumb:n,numberOfSites:s,numberOfVisitors:o,commonlyUsedFunction:t,articleList:i,memberManagement:c,balanceAccount:r,administrator:a,WebDecoration:m,accessMessage:b,memberDistribution:u,systemInfo:f,os:p,phpVersions:d,productionEnvironment:l,versionsInfo:v,versions:g,frame:y,channel:h,serviceSupport:w,officialWbsite:D,pageView:V};export{m as WebDecoration,b as accessMessage,a as administrator,i as articleList,r as balanceAccount,h as channel,t as commonlyUsedFunction,I as default,y as frame,u as memberDistribution,c as memberManagement,n as memberNumb,s as numberOfSites,o as numberOfVisitors,D as officialWbsite,p as os,V as pageView,d as phpVersions,l as productionEnvironment,w as serviceSupport,f as systemInfo,e as todayData,g as versions,v as versionsInfo}; diff --git a/niucloud/public/admin/assets/index.app_manage-4c113690.js b/niucloud/public/admin/assets/index.app_manage-4c113690.js new file mode 100644 index 0000000..c3188f8 --- /dev/null +++ b/niucloud/public/admin/assets/index.app_manage-4c113690.js @@ -0,0 +1 @@ +const n="应用中心",o="暂无安装任何应用,请点击",t="安装应用",i="安装使用",c="Niucloud官网",e="安装应用",s="版本信息:",p="当前版本",r={app:n,descriptionLeft:o,link:t,descriptionRight:i,niucloud:c,appStore:e,versionInfo:s,currentVersion:p};export{n as app,e as appStore,p as currentVersion,r as default,o as descriptionLeft,i as descriptionRight,t as link,c as niucloud,s as versionInfo}; diff --git a/niucloud/public/admin/assets/index.index-210944b7.js b/niucloud/public/admin/assets/index.index-210944b7.js new file mode 100644 index 0000000..77427f8 --- /dev/null +++ b/niucloud/public/admin/assets/index.index-210944b7.js @@ -0,0 +1 @@ +const e="数据概况",t="今日数据",n="新增会员数",o="订单金额",s="站点数量",c="今日访客数",i="常用功能",a="文章列表",r="会员管理",m="余额账户",u="站点用户",p="网站装修",l="访问消息",S="会员分布",f="系统环境",b="操作系统:",d="PHP版本号:",D="生产环境:",g="版本信息",w="当前版本",A="基于框架",M="获取渠道",N="官方客服",v="官网",y="访问量",I="站点信息",V="站点名称",W="站点套餐",x="过期时间",h="永久",k="站点状态",C="新增站点数",L="总计",O="新增用户数",P="站点列表",z="站点套餐",E="新增站点",F="应用市场",T="站点分布",U="正常站点(个)",H="过期站点(个)",_="未安装应用(个)",j="已安装应用(个)",q="Niucloud官方公众号",B="微信扫码关注",G="客服二维码",J="扫码联系客服",K="服务热线:",Q="最新版本",R={dataSummarize:e,todayData:t,memberNumb:n,orderMoney:o,numberOfSites:s,numberOfVisitors:c,commonlyUsedFunction:i,articleList:a,memberManagement:r,balanceAccount:m,administrator:u,WebDecoration:p,accessMessage:l,memberDistribution:S,systemInfo:f,os:b,phpVersions:d,productionEnvironment:D,versionsInfo:g,versions:w,frame:A,channel:M,serviceSupport:N,officialWbsite:v,pageView:y,siteInfo:I,siteName:V,groupName:W,expireTime:x,permanent:h,statusName:k,newSiteSum:C,total:L,newMemberSum:O,siteList:P,sitePackage:z,newSite:E,appMarketplace:F,siteDistribution:T,normalSiteSum:U,expireSiteSum:H,noInstallAppSun:_,installAppSun:j,officialAccount:q,officialAccountDesc:B,WeCom:G,WeComDesc:J,tel:K,newVersion:Q};export{G as WeCom,J as WeComDesc,p as WebDecoration,l as accessMessage,u as administrator,F as appMarketplace,a as articleList,m as balanceAccount,M as channel,i as commonlyUsedFunction,e as dataSummarize,R as default,H as expireSiteSum,x as expireTime,A as frame,W as groupName,j as installAppSun,S as memberDistribution,r as memberManagement,n as memberNumb,O as newMemberSum,E as newSite,C as newSiteSum,Q as newVersion,_ as noInstallAppSun,U as normalSiteSum,s as numberOfSites,c as numberOfVisitors,q as officialAccount,B as officialAccountDesc,v as officialWbsite,o as orderMoney,b as os,y as pageView,h as permanent,d as phpVersions,D as productionEnvironment,N as serviceSupport,T as siteDistribution,I as siteInfo,P as siteList,V as siteName,z as sitePackage,k as statusName,f as systemInfo,K as tel,t as todayData,L as total,w as versions,g as versionsInfo}; diff --git a/niucloud/public/admin/assets/index.preview-876b7685.js b/niucloud/public/admin/assets/index.preview-876b7685.js new file mode 100644 index 0000000..60e26bb --- /dev/null +++ b/niucloud/public/admin/assets/index.preview-876b7685.js @@ -0,0 +1 @@ +const e="预览",o="微信小程序",p="微信公众号",c="链接",t="复制",a="复制成功",n="小程序未配置",s="开发环境配置",w="wap域名(WAP_DOMAIN)",i="请输入wap域名",l={preview:e,weapp:o,wechat:p,link:c,copy:t,copySuccess:a,weappNotSet:n,developTitle:s,wapDomain:w,wapDomainPlaceholder:i};export{t as copy,a as copySuccess,l as default,s as developTitle,c as link,e as preview,w as wapDomain,i as wapDomainPlaceholder,o as weapp,n as weappNotSet,p as wechat}; diff --git a/niucloud/public/admin/assets/index.site_index-79b69608.js b/niucloud/public/admin/assets/index.site_index-79b69608.js new file mode 100644 index 0000000..ce2c5ec --- /dev/null +++ b/niucloud/public/admin/assets/index.site_index-79b69608.js @@ -0,0 +1 @@ +const e="实时概况",t="新增会员数(人)",o="订单金额(元)",s="站点数量",c="今日访客数(人)",n="常用功能",a="文章列表",r="会员管理",i="余额账户",m="管理员",l="网站装修",u="访问消息",d="会员分布",p="系统环境",h="操作系统",f="PHP版本号",b="生产环境",g="版本信息",N="当前版本",C="基于框架",D="获取渠道",M="服务支持",y="官网",P="访客数(人)",v="站点信息",S="站点名称",T="站点套餐",W="过期时间",w="永久",I="站点状态",A="订单数(笔)",V="公众号二维码",x="微信扫码关注",L="客服二维码",O="扫码联系客服",k="服务热线:",B="请联系客服",E="提示",F="累计",U="Niucloud官方公众号",_="微信扫码关注",H="添加企业微信群",j="地址",q="名称",z="模版名称",G="背景颜色",J="选择图标",K="描述",Q="添加快捷模版",R="应用模块",X="站点类型",Y="有效期",Z="续费",$="选择模块",ee="添加模块",te="模版",oe="暂无快捷模块",se="选择",ce="自定义",ne="访问站点",ae="选择模块",re="请选择背景色",ie="请选择图标",me="请选择链接",le="输入描述语…",ue={todayData:e,memberNumb:t,orderMoney:o,numberOfSites:s,numberOfVisitors:c,commonlyUsedFunction:n,articleList:a,memberManagement:r,balanceAccount:i,administrator:m,WebDecoration:l,accessMessage:u,memberDistribution:d,systemInfo:p,os:h,phpVersions:f,productionEnvironment:b,versionsInfo:g,versions:N,frame:C,channel:D,serviceSupport:M,officialWbsite:y,pageView:P,siteInfo:v,siteName:S,groupName:T,expireTime:W,permanent:w,statusName:I,orderNumber:A,wechatCode:V,wechatCodeDesc:x,enterpriseWechatCode:L,enterpriseWechatCodeDesc:O,tel:k,message:B,messageTitle:E,accumulative:F,officialAccount:U,officialAccountDesc:_,WeCom:H,path:j,menuName:q,menuNamePlaceholder:z,menuBgColor:G,menuImg:J,menuDesc:K,addShortcutMenu:Q,appTemplate:R,siteType:X,periodTime:Y,renew:Z,selectModel:$,addMenu:ee,shortcutLink:te,emptyMenu:oe,select:se,custom:ce,accessSite:ne,pathSelect:ae,bgColorPlaceholder:re,iconPlaceholder:ie,pathPlaceholder:me,descPlaceholder:le};export{H as WeCom,l as WebDecoration,u as accessMessage,ne as accessSite,F as accumulative,ee as addMenu,Q as addShortcutMenu,m as administrator,R as appTemplate,a as articleList,i as balanceAccount,re as bgColorPlaceholder,D as channel,n as commonlyUsedFunction,ce as custom,ue as default,le as descPlaceholder,oe as emptyMenu,L as enterpriseWechatCode,O as enterpriseWechatCodeDesc,W as expireTime,C as frame,T as groupName,ie as iconPlaceholder,d as memberDistribution,r as memberManagement,t as memberNumb,G as menuBgColor,K as menuDesc,J as menuImg,q as menuName,z as menuNamePlaceholder,B as message,E as messageTitle,s as numberOfSites,c as numberOfVisitors,U as officialAccount,_ as officialAccountDesc,y as officialWbsite,o as orderMoney,A as orderNumber,h as os,P as pageView,j as path,me as pathPlaceholder,ae as pathSelect,Y as periodTime,w as permanent,f as phpVersions,b as productionEnvironment,Z as renew,se as select,$ as selectModel,M as serviceSupport,te as shortcutLink,v as siteInfo,S as siteName,X as siteType,I as statusName,p as systemInfo,k as tel,e as todayData,N as versions,g as versionsInfo,V as wechatCode,x as wechatCodeDesc}; diff --git a/niucloud/public/admin/assets/index.store-d285c1e8.js b/niucloud/public/admin/assets/index.store-d285c1e8.js new file mode 100644 index 0000000..377d39f --- /dev/null +++ b/niucloud/public/admin/assets/index.store-d285c1e8.js @@ -0,0 +1 @@ +const n="搜索应用名称",t="应用名/版本信息",o="简介",s="类型",e="应用",l="插件",a="暂无应用",c="安装",i="卸载",d="已安装",p="未安装",u="版本",r="名称",h="简介",T="插件信息",g="作者",m="详情",b="插件安装",w="目录读写权限",I="路径",C="要求",D="可读",P="可写",f="包管理工具",k="名称",v="插件安装成功",L="环境检查",x="安装进度",A="安装完成",y="插件管理",B="官方市场",S="安装任务尚未完成,关闭将取消安装任务,是否要继续关闭?",N="官方市场正在开发中!",M="任务队列未启动 请在服务端源码部署目录打开终端执行 php think queue:listen",V="冲突文件",j="启动进程",E="开启",F="下载",H="未安装(重新下载)",R="已安装(重新下载)",U="插件版本",q="版本号",_="发布时间",z="已购买",G="安装后需手动更新插件引用的依赖和编译各个端口的前端源码",J="本地安装",K="一键云安装",O="云安装可实现一键安装,安装后无需手动更新依赖和编译前端源码",Q="有插件正在安装中请等待安装完成之后再进行其他操作,点击查看",W="安装进度",X="下载中",Y="云安装需先绑定授权码,如果已有授权请先进行绑定,没有授权可到niucloud官网购买云服务之后再进行操作",Z="绑定授权",$="去niucloud官网",nn="暂无任何应用,马上去",tn="您还没有购买过应用,马上去",on="官方应用市场",sn="逛逛",en="授权域名不匹配",ln="请输入授权码",an="请输入授权秘钥",cn="重新绑定",dn="还没有授权?去购买",pn="授权码和授权秘钥可在Niucloud官网我的授权 授权详情中查看",un="插件卸载",rn="应用标识",hn="标识指开发应用或插件的文件夹名称",Tn="卸载插件将会移除admin web uni-app目录下该插件的内容,是否要继续进行卸载?",gn="升级",mn="最新版本",bn="云编译",wn="是否要进行云编译该操作可能会影响到正在访问的客户是否要继续操作?",In={search:n,appName:t,introduction:o,type:s,app:e,addon:l,noPlug:a,install:c,unload:i,installLabel:d,uninstalledLabel:p,version:u,title:r,desc:h,plugDetail:T,author:g,detail:m,addonInstall:b,dirPermission:w,path:I,demand:C,readable:D,write:P,packageManageTool:f,name:k,addonInstallSuccess:v,envCheck:L,installProgress:x,installComplete:A,localAppText:y,marketAppText:B,installShowDialogCloseTips:S,marketDevelopMessage:N,jobError:M,conflictFiles:V,process:j,open:E,down:F,installDown:H,unloadDown:R,addonVersion:U,versionCode:q,createTime:_,buyLabel:z,installTips:G,localInstall:J,cloudInstall:K,cloudInstallTips:O,installingTips:Q,installPercent:W,downloading:X,authTips:Y,toBind:Z,toNiucloud:$,descriptionLeft:nn,buyDescriptionLeft:tn,link:on,descriptionRight:sn,"installed-empty":"暂未安装任何应用",siteAddressTips:en,authCodePlaceholder:ln,authSecretPlaceholder:an,updateCode:cn,notHaveAuth:dn,authInfoTips:pn,addonUninstall:un,appIdentification:rn,tipText:hn,uninstallTips:Tn,upgrade:gn,newVersion:mn,cloudBuild:bn,cloudBuildTips:wn};export{l as addon,b as addonInstall,v as addonInstallSuccess,un as addonUninstall,U as addonVersion,e as app,rn as appIdentification,t as appName,ln as authCodePlaceholder,pn as authInfoTips,an as authSecretPlaceholder,Y as authTips,g as author,tn as buyDescriptionLeft,z as buyLabel,bn as cloudBuild,wn as cloudBuildTips,K as cloudInstall,O as cloudInstallTips,V as conflictFiles,_ as createTime,In as default,C as demand,h as desc,nn as descriptionLeft,sn as descriptionRight,m as detail,w as dirPermission,F as down,X as downloading,L as envCheck,c as install,A as installComplete,H as installDown,d as installLabel,W as installPercent,x as installProgress,S as installShowDialogCloseTips,G as installTips,Q as installingTips,o as introduction,M as jobError,on as link,y as localAppText,J as localInstall,B as marketAppText,N as marketDevelopMessage,k as name,mn as newVersion,a as noPlug,dn as notHaveAuth,E as open,f as packageManageTool,I as path,T as plugDetail,j as process,D as readable,n as search,en as siteAddressTips,hn as tipText,r as title,Z as toBind,$ as toNiucloud,s as type,Tn as uninstallTips,p as uninstalledLabel,i as unload,R as unloadDown,cn as updateCode,gn as upgrade,u as version,q as versionCode,P as write}; diff --git a/niucloud/public/admin/assets/index.vue_vue_type_script_setup_true_lang-114a4ac2.js b/niucloud/public/admin/assets/index.vue_vue_type_script_setup_true_lang-114a4ac2.js new file mode 100644 index 0000000..0d6e151 --- /dev/null +++ b/niucloud/public/admin/assets/index.vue_vue_type_script_setup_true_lang-114a4ac2.js @@ -0,0 +1,186 @@ +import{_ as i$}from"./index.vue_vue_type_style_index_0_lang-cc99af21.js";import{d as t5,r as Td,c6 as lP,v as a$,s as u$,H as s$,au as l$,h as e5,c as n5,q as c$,bL as f$,e as Fh,u as Th,x as d$,aQ as p$,R as yS}from"./index-6010b07e.js";var se=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function h$(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function as(t){var e={exports:{}};return t(e,e.exports),e.exports}var mi,V0,_h=function(t){return t&&t.Math==Math&&t},kt=_h(typeof globalThis=="object"&&globalThis)||_h(typeof window=="object"&&window)||_h(typeof self=="object"&&self)||_h(typeof se=="object"&&se)||function(){return this}()||Function("return this")(),r5=Function.prototype,bS=r5.apply,g$=r5.bind,wS=r5.call,cP=typeof Reflect=="object"&&Reflect.apply||(g$?wS.bind(bS):function(){return wS.apply(bS,arguments)}),fP=Function.prototype,m4=fP.bind,y4=fP.call,v$=m4&&m4.bind(y4),ge=m4?function(t){return t&&v$(y4,t)}:function(t){return t&&function(){return y4.apply(t,arguments)}},sn=function(t){return typeof t=="function"},Gn=function(t){try{return!!t()}catch{return!0}},Hn=!Gn(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7}),Oc=Function.prototype.call,zn=Oc.bind?Oc.bind(Oc):function(){return Oc.apply(Oc,arguments)},ES={}.propertyIsEnumerable,DS=Object.getOwnPropertyDescriptor,m$=DS&&!ES.call({1:2},1)?function(t){var e=DS(this,t);return!!e&&e.enumerable}:ES,o5={f:m$},Yr=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},y$=ge({}.toString),b$=ge("".slice),Eu=function(t){return b$(y$(t),8,-1)},Um=kt.Object,w$=ge("".split),dP=Gn(function(){return!Um("z").propertyIsEnumerable(0)})?function(t){return Eu(t)=="String"?w$(t,""):Um(t)}:Um,E$=kt.TypeError,i5=function(t){if(t==null)throw E$("Can't call method on "+t);return t},Po=function(t){return dP(i5(t))},tr=function(t){return typeof t=="object"?t!==null:sn(t)},Qn={},CS=function(t){return sn(t)?t:void 0},rc=function(t,e){return arguments.length<2?CS(Qn[t])||CS(kt[t]):Qn[t]&&Qn[t][e]||kt[t]&&kt[t][e]},_d=ge({}.isPrototypeOf),Wm=rc("navigator","userAgent")||"",SS=kt.process,xS=kt.Deno,AS=SS&&SS.versions||xS&&xS.version,OS=AS&&AS.v8;OS&&(V0=(mi=OS.split("."))[0]>0&&mi[0]<4?1:+(mi[0]+mi[1])),!V0&&Wm&&(!(mi=Wm.match(/Edge\/(\d+)/))||mi[1]>=74)&&(mi=Wm.match(/Chrome\/(\d+)/))&&(V0=+mi[1]);var Ph,Cg=V0,po=!!Object.getOwnPropertySymbols&&!Gn(function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&Cg&&Cg<41}),a5=po&&!Symbol.sham&&typeof Symbol.iterator=="symbol",D$=kt.Object,pl=a5?function(t){return typeof t=="symbol"}:function(t){var e=rc("Symbol");return sn(e)&&_d(e.prototype,D$(t))},C$=kt.String,b4=function(t){try{return C$(t)}catch{return"Object"}},S$=kt.TypeError,u5=function(t){if(sn(t))return t;throw S$(b4(t)+" is not a function")},Sg=function(t,e){var n=t[e];return n==null?void 0:u5(n)},x$=kt.TypeError,A$=Object.defineProperty,ta=kt["__core-js_shared__"]||function(t,e){try{A$(kt,t,{value:e,configurable:!0,writable:!0})}catch{kt[t]=e}return e}("__core-js_shared__",{}),us=as(function(t){(t.exports=function(e,n){return ta[e]||(ta[e]=n!==void 0?n:{})})("versions",[]).push({version:"3.19.3",mode:"pure",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})}),O$=kt.Object,Fp=function(t){return O$(i5(t))},k$=ge({}.hasOwnProperty),Vt=Object.hasOwn||function(t,e){return k$(Fp(t),e)},B$=0,F$=Math.random(),T$=ge(1 .toString),xg=function(t){return"Symbol("+(t===void 0?"":t)+")_"+T$(++B$+F$,36)},kc=us("wks"),Du=kt.Symbol,kS=Du&&Du.for,_$=a5?Du:Du&&Du.withoutSetter||xg,Bn=function(t){if(!Vt(kc,t)||!po&&typeof kc[t]!="string"){var e="Symbol."+t;po&&Vt(Du,t)?kc[t]=Du[t]:kc[t]=a5&&kS?kS(e):_$(e)}return kc[t]},P$=kt.TypeError,j$=Bn("toPrimitive"),N$=function(t,e){if(!tr(t)||pl(t))return t;var n,r=Sg(t,j$);if(r){if(e===void 0&&(e="default"),n=zn(r,t,e),!tr(n)||pl(n))return n;throw P$("Can't convert object to primitive value")}return e===void 0&&(e="number"),function(o,i){var a,u;if(i==="string"&&sn(a=o.toString)&&!tr(u=zn(a,o))||sn(a=o.valueOf)&&!tr(u=zn(a,o))||i!=="string"&&sn(a=o.toString)&&!tr(u=zn(a,o)))return u;throw x$("Can't convert object to primitive value")}(t,e)},oc=function(t){var e=N$(t,"string");return pl(e)?e:e+""},w4=kt.document,I$=tr(w4)&&tr(w4.createElement),pP=function(t){return I$?w4.createElement(t):{}},hP=!Hn&&!Gn(function(){return Object.defineProperty(pP("div"),"a",{get:function(){return 7}}).a!=7}),BS=Object.getOwnPropertyDescriptor,L$=Hn?BS:function(t,e){if(t=Po(t),e=oc(e),hP)try{return BS(t,e)}catch{}if(Vt(t,e))return Yr(!zn(o5.f,t,e),t[e])},N1={f:L$},R$=/#|\.prototype\./,Tp=function(t,e){var n=z$[M$(t)];return n==H$||n!=$$&&(sn(e)?Gn(e):!!e)},M$=Tp.normalize=function(t){return String(t).replace(R$,".").toLowerCase()},z$=Tp.data={},$$=Tp.NATIVE="N",H$=Tp.POLYFILL="P",V$=Tp,FS=ge(ge.bind),s5=function(t,e){return u5(t),e===void 0?t:FS?FS(t,e):function(){return t.apply(e,arguments)}},U$=kt.String,W$=kt.TypeError,ar=function(t){if(tr(t))return t;throw W$(U$(t)+" is not an object")},G$=kt.TypeError,TS=Object.defineProperty,q$=Hn?TS:function(t,e,n){if(ar(t),e=oc(e),ar(n),hP)try{return TS(t,e,n)}catch{}if("get"in n||"set"in n)throw G$("Accessors not supported");return"value"in n&&(t[e]=n.value),t},ja={f:q$},_n=Hn?function(t,e,n){return ja.f(t,e,Yr(1,n))}:function(t,e,n){return t[e]=n,t},K$=N1.f,Y$=function(t){var e=function(n,r,o){if(this instanceof e){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,r)}return new t(n,r,o)}return cP(t,this,arguments)};return e.prototype=t.prototype,e},qo=function(t,e){var n,r,o,i,a,u,s,l,c=t.target,f=t.global,p=t.stat,d=t.proto,v=f?kt:p?kt[c]:(kt[c]||{}).prototype,g=f?Qn:Qn[c]||_n(Qn,c,{})[c],m=g.prototype;for(o in e)n=!V$(f?o:c+(p?".":"#")+o,t.forced)&&v&&Vt(v,o),a=g[o],n&&(u=t.noTargetGet?(l=K$(v,o))&&l.value:v[o]),i=n&&u?u:e[o],n&&typeof a==typeof i||(s=t.bind&&n?s5(i,kt):t.wrap&&n?Y$(i):d&&sn(i)?ge(i):i,(t.sham||i&&i.sham||a&&a.sham)&&_n(s,"sham",!0),_n(g,o,s),d&&(Vt(Qn,r=c+"Prototype")||_n(Qn,r,{}),_n(Qn[r],o,i),t.real&&m&&!m[o]&&_n(m,o,i)))},_S=us("keys"),I1=function(t){return _S[t]||(_S[t]=xg(t))},X$=!Gn(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}),PS=I1("IE_PROTO"),E4=kt.Object,Z$=E4.prototype,Ag=X$?E4.getPrototypeOf:function(t){var e=Fp(t);if(Vt(e,PS))return e[PS];var n=e.constructor;return sn(n)&&e instanceof n?n.prototype:e instanceof E4?Z$:null},J$=kt.String,Q$=kt.TypeError,Og=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=ge(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(n,[]),e=n instanceof Array}catch{}return function(r,o){return ar(r),function(i){if(typeof i=="object"||sn(i))return i;throw Q$("Can't set "+J$(i)+" as a prototype")}(o),e?t(r,o):r.__proto__=o,r}}():void 0),tH=Math.ceil,eH=Math.floor,l5=function(t){var e=+t;return e!=e||e===0?0:(e>0?eH:tH)(e)},nH=Math.max,rH=Math.min,D4=function(t,e){var n=l5(t);return n<0?nH(n+e,0):rH(n,e)},oH=Math.min,_p=function(t){return(e=t.length)>0?oH(l5(e),9007199254740991):0;var e},jS=function(t){return function(e,n,r){var o,i=Po(e),a=_p(i),u=D4(r,a);if(t&&n!=n){for(;a>u;)if((o=i[u++])!=o)return!0}else for(;a>u;u++)if((t||u in i)&&i[u]===n)return t||u||0;return!t&&-1}},iH={includes:jS(!0),indexOf:jS(!1)},Pp={},aH=iH.indexOf,NS=ge([].push),gP=function(t,e){var n,r=Po(t),o=0,i=[];for(n in r)!Vt(Pp,n)&&Vt(r,n)&&NS(i,n);for(;e.length>o;)Vt(r,n=e[o++])&&(~aH(i,n)||NS(i,n));return i},kg=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],uH=kg.concat("length","prototype"),sH=Object.getOwnPropertyNames||function(t){return gP(t,uH)},c5={f:sH},U0={f:Object.getOwnPropertySymbols},lH=ge([].concat),cH=rc("Reflect","ownKeys")||function(t){var e=c5.f(ar(t)),n=U0.f;return n?lH(e,n(t)):e},f5=Object.keys||function(t){return gP(t,kg)},fH=Hn?Object.defineProperties:function(t,e){ar(t);for(var n,r=Po(e),o=f5(e),i=o.length,a=0;i>a;)ja.f(t,n=o[a++],r[n]);return t},dH=rc("document","documentElement"),vP=I1("IE_PROTO"),Gm=function(){},mP=function(t){return" + + + +
+ + + diff --git a/niucloud/public/admin/niucloud.ico b/niucloud/public/admin/niucloud.ico new file mode 100644 index 0000000..d770505 Binary files /dev/null and b/niucloud/public/admin/niucloud.ico differ diff --git a/niucloud/public/favicon.ico b/niucloud/public/favicon.ico new file mode 100644 index 0000000..d770505 Binary files /dev/null and b/niucloud/public/favicon.ico differ diff --git a/niucloud/public/index.php b/niucloud/public/index.php new file mode 100644 index 0000000..0b11b84 --- /dev/null +++ b/niucloud/public/index.php @@ -0,0 +1,28 @@ + +// +---------------------------------------------------------------------- + +// [ 应用入口文件 ] +namespace think; +if (PHP_VERSION_ID < 80000) + die('require PHP > 8.0.0 !'); +require __DIR__ . '/../vendor/autoload.php'; +if (!file_exists(__DIR__ .'/../install.lock')) { + header("location:/install.php"); + exit; +} +// 执行HTTP应用并响应 +$http = (new App())->http; + +$response = $http->run(); + +$response->send(); + +$http->end($response); diff --git a/niucloud/public/install.php b/niucloud/public/install.php new file mode 100644 index 0000000..4d14829 --- /dev/null +++ b/niucloud/public/install.php @@ -0,0 +1,28 @@ + +// +---------------------------------------------------------------------- + +// [ 应用入口文件 ] +namespace think; +if (PHP_VERSION_ID < 80000) + die('require PHP > 8.0.0 !'); +require __DIR__ . '/../vendor/autoload.php'; +//if (file_exists(__DIR__ .'/../install.lock')) { +// header("location:/index.php"); +// exit; +//} +// 执行HTTP应用并响应 +$http = (new App())->http; + +$response = $http->run(); + +$response->send(); + +$http->end($response); diff --git a/niucloud/public/install/css/common.css b/niucloud/public/install/css/common.css new file mode 100644 index 0000000..6f84750 --- /dev/null +++ b/niucloud/public/install/css/common.css @@ -0,0 +1,1763 @@ +@charset "UTF-8"; +/** +Sass函数--颜色函数--HSL函数:http://www.mamicode.com/info-detail-1126451.html +*/ +/* 文字基本颜色 */ +:root { + --base-color: #409eff; +} + +/* 水平导航 */ +.layui-layout-admin { + /* 侧边导航 -- 二级导航 */ + /* 面包屑 */ + /* 内容 */ +} +.layui-layout-admin .layui-header { + background-color: #FFFFFF; + border-bottom: 1px solid #f2f2f2; +} +.layui-layout-admin .layui-logo { + width: 184px; +} +.layui-layout-admin .layui-logo h1 { + display: inline-block; + font-size: 16px; + color: #5D5D5D; +} +.layui-layout-admin .layui-nav .layui-nav-bar { + display: none; +} +.layui-layout-admin .layui-nav .layui-nav-item a { + color: #333333; +} +.layui-layout-admin .layui-layout-left .layui-this:after { + width: 0; + border: 0; +} +.layui-layout-admin .layui-layout-left a span { + display: inline-block; + height: 40px; + line-height: 40px; + box-sizing: border-box; +} +.layui-layout-admin .layui-layout-left a:hover span { + border-bottom: 3px solid #409eff; +} +.layui-layout-admin .layui-layout-left a.active span { + border-bottom: 3px solid #409eff; + border-radius: 1.5px; + box-sizing: border-box; +} +.layui-layout-admin .layui-layout-right .layui-nav-more { + border-top-color: #333; +} +.layui-layout-admin .layui-layout-right .layui-nav-mored { + border-color: transparent transparent #333; +} +.layui-layout-admin .layui-layout-right .layui-nav-child { + right: 0; + left: unset; +} +.layui-layout-admin .layui-layout-right .layui-nav-child dd.layui-this, .layui-layout-admin .layui-layout-right .layui-nav-child dd.layui-this a { + background-color: #409eff; +} +.layui-layout-admin .second-nav { + width: 184px !important; + background-color: #FFFFFF; + border-right: 1px solid #f1f1f1; + overflow: hidden; + box-sizing: border-box; +} +.layui-layout-admin .second-nav .layui-side-scroll { + width: 204px; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav { + width: 184px; + background-color: transparent !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item { + width: 100%; + background-color: #FFFFFF; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a { + width: 100%; + height: 44px; + display: flex; + align-items: center; + box-sizing: border-box; + padding-left: 34px; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a span { + line-height: 44px; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a:hover { + background-color: #F7F7F7; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a:hover i { + left: -19px !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a .stair-menu { + overflow: hidden; + display: flex; + align-items: center; + margin-right: 5px; + width: 20px; + height: 18px; + line-height: 18px; + text-align: center; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-item a .stair-menu img { + max-height: 100%; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-itemed > a { + color: #333333 !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-itemed > .layui-nav-child { + background-color: #FFFFFF !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-tree { + position: relative; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-tree > .layui-this > a { + background-color: #f8f8f8 !important; + color: #409eff !important; + box-sizing: border-box; + position: relative; +} + +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-itemed > a:hover{ + background-color: transparent !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-tree > .layui-this > a:before { + content: ""; + display: inline-block; + width: 4px; + height: 44px; + background-color: #409eff; + position: absolute; + left: 0; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-tree > .layui-this > a > .layui-nav-more { + border-color: #409eff #409eff transparent transparent !important; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-child dd.layui-this { + background-color: #FFFFFF !important; + color: #333333; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-child dd.layui-this a { + background-color: rgba(255, 98, 0, 0.1) !important; + color: #409eff !important; + box-sizing: border-box; + position: relative; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-child dd.layui-this a:before { + content: ""; + display: inline-block; + width: 4px; + height: 44px; + background-color: #409eff; + position: absolute; + left: 0; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-child dd.layui-this .layui-left-nav { + color: #409eff; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-child dd > a { + padding-left: 60px; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav .layui-nav-more { + width: 7px; + height: 7px; + border-width: 1px; + border-color: #333 #333 transparent transparent; + border-style: solid; + transform: rotate(45deg); + -ms-transform: rotate(45deg); + /* IE 9 */ + -moz-transform: rotate(45deg); + /* Firefox */ + -webkit-transform: rotate(45deg); + /* Safari 和 Chrome */ + -o-transform: rotate(45deg); + top: 16px; + right: 16px; + margin-top: 0; +} +.layui-layout-admin .second-nav .layui-side-scroll .layui-nav-itemed > a .layui-nav-more { + transform: rotate(135deg); + -ms-transform: rotate(135deg); + -moz-transform: rotate(135deg); + -webkit-transform: rotate(135deg); + -o-transform: rotate(135deg); +} +.layui-layout-admin .crumbs { + position: fixed; + top: 60px; + left: 184px; + z-index: 9; + right: 0; + height: 43px; + line-height: 43px; + padding: 0 28px; + background-color: #fff; + border-bottom: 1px solid #f1f1f1; +} +.layui-layout-admin .crumbs a:hover { + color: #409eff !important; +} +.layui-layout-admin .layui-body { + position: absolute; + overflow: auto !important; + top: 104px; + bottom: 0; + left: 184px; + background-color: #f8f8f8; +} +.layui-layout-admin .layui-body .body-content { + min-width: 1000px; + min-height: 650px; + padding: 15px; + margin: 16px; + background-color: #fff; +} + +/** +Sass函数--颜色函数--HSL函数:http://www.mamicode.com/info-detail-1126451.html +*/ +/* 避免页面遮盖住tp调试页面 */ +.layui-layout-admin .layui-body { + z-index: -1; +} + +body { + color: #333; +} + +.red-color { + color: red !important; +} + +.text-color-sub { + color: #666 !important; +} + +.text-color { + color: #409eff !important; +} + +.text-color-gray { + color: #5a5a5a !important; +} + +.border-color { + border-color: #409eff !important; +} + +.border-after-color::after { + border-color: #409eff !important; +} + +.bg-color { + background-color: #409eff !important; +} + +.bg-color-diaphaneity { + background-color: rgba(255, 106, 0, 0.1) !important; +} + +.bg-color-gray { + background-color: #5a5a5a !important; +} + +.layui-tab-brief li.layui-this { + color: #409eff !important; +} + +.layui-tab-brief li.layui-this:after { + border-bottom-color: #409eff !important; +} + +/* 四级菜单 */ +.fourstage-nav .layui-tab-title { + border: 0; +} +.fourstage-nav .layui-tab-title li { + margin: 0 15px; + padding: 0; +} +.fourstage-nav .layui-tab-title li::after { + border: 0 !important; +} +.fourstage-nav .layui-tab-title li a { + border-bottom: 2px solid #fff; +} +.fourstage-nav .layui-tab-title li.layui-this a { + color: #409eff; + border-bottom: 2px solid #409eff; +} + +.footer { + box-sizing: border-box; + text-align: center; + padding-bottom: 50px; + padding-top: 50px; + line-height: 1.8; + color: #999; +} +.footer .gov-box img { + max-width: 20px; + max-height: 20px; + margin-right: 5px; +} +.footer a { + color: #999; +} + +.footer-img { + margin-bottom: 18px; +} +.footer-img img { + max-width: 100px; + max-height: 27px; +} + +.footer-img { + width: 100%; + display: flex; + justify-content: center; + align-items: center; +} +.footer-img span { + display: inline-block; + color: #898989; + line-height: 25px; + margin-right: 12px; +} + +.login-box { + display: flex; +} + +.shop-ewm a { + display: inline-block; + line-height: 60px; + cursor: pointer; + margin-right: 25px; +} + +.shop-ewm { + position: relative; +} + +/*h5预览*/ +.goods-preview {position: relative;} +.goods-preview .qrcode-wrap {background: #f4f6f8;display: inline-block;padding: 10px;text-align: center;position: absolute;left: 40px;top: 40px;max-width: 130px;max-height: 130px;overflow: hidden;} +.goods-preview .qrcode-wrap img {width: 100px;height: 100px;} +.goods-preview .qrcode-wrap .tips {font-size: 12px;margin: 10px 0 0 0;padding: 0;border: none;} +.goods-preview .qrcode-wrap input{margin-top: 30px;} +.goods-preview .phone-wrap {width: 300px;height: 600px;margin-left: 210px;background: url("../../img/iphone_shell.png") no-repeat;background-size: 100% auto;position: relative;} +.goods-preview .phone-wrap .iframe-wrap {width: 260px;height: 530px;position: absolute;top: 38px;left: 20px;overflow: hidden;display: inline-block;} +.goods-preview .phone-wrap .iframe-wrap iframe {width: 270px;height: 510px;margin-top: 10px;margin-left: -5px;border-radius: 0;transform: initial;} +.goods-preview .phone-wrap .iframe-wrap .empty {text-align: center;position: absolute;top: 25%;padding: 0 20px;} +.goods-preview .phone-wrap .iframe-wrap .empty img {width: 190px;display: block;margin: 0 auto 10px;} +.goods-preview .phone-wrap .iframe-wrap .empty p {font-size: 12px;margin-bottom: 5px;} +.goods-preview .phone-wrap .iframe-wrap .empty a {font-size: 12px;} + +/*小程序发布*/ +.release-layer .layui-layer-title { + background: #fff; + border-bottom: 0; + margin-top: 10px; +} + +.release-layer .weapp-release .title { + font-size: 16px; + text-align: center; +} + +.release-layer .weapp-release .desc { + font-size: 16px; + text-align: center; + padding: 0 20px; + margin-top: 30px; + color: #555; +} + +.release-layer .weapp-release .operation-btns { + margin-top: 60px; +} + +.release-layer .operation-btns > div { + margin-top: 10px; + text-align: center; +} + +.release-layer .operation-btns .layui-btn { + width: 80%; +} + +.tips-wrap { + padding: 6px; + background-color: #fff; + border: 1px solid #f1f1f1; + border-radius: 4px; +} +.tips-wrap .layui-colla-title { + padding-left: 10px; + height: 30px; + font-size: 16px; + font-weight: 400; + line-height: 30px; + background-color: transparent; +} +.tips-wrap .layui-colla-title .layui-colla-icon { + left: 80px; +} +.tips-wrap .layui-colla-content { + padding: 0; + padding-left: 34px; + border: none; + color: #999; +} +.tips-wrap .layui-colla-content li { + line-height: 25px; + list-style: initial; +} + +.card-common { + margin-top: 15px; + margin-bottom: 0; + box-shadow: initial; +} +.card-common .layui-card-header { + padding: 0 20px; + display: flex; + justify-content: space-between; + align-items: center; +} +.card-common .layui-card-body { + padding: 20px; +} +.card-common .card-title { + font-size: 14px; + font-weight: 600; +} +.card-common .card-sub { + color: #999999; + font-size: 12px; +} + +.card-brief .layui-card-header { + border-bottom: 0; + padding-bottom: 0; +} +.card-brief .card-title { + position: relative; + padding-left: 10px; +} +.card-brief .card-title::before { + content: ""; + display: inline-block; + width: 3px; + height: 14px; + background-color: #409eff; + position: absolute; + left: 0; + top: 50%; + border-radius: 5px; + transform: translateY(-50%); +} + +.layui-card.form-wrap-show { + margin-bottom: 0; +} +.layui-card.form-wrap-show .layui-card-header { + padding: 3px 15px; + display: flex; + justify-content: space-between; + align-items: center; + border-radius: 5px; +} + +/* 详情面板 */ +.detail-card { + width: 100%; + border: 1px solid #F1F1F1; + padding: 20px 0 20px 80px; + box-sizing: border-box; + display: flex; +} +.detail-card .detail-img { + width: 60px; + height: 60px; + text-align: center; + margin-right: 15px; +} +.detail-card .detail-img img { + max-width: 100%; + max-height: 100%; +} +.detail-card .goods-name { + font-size: 16px; + font-weight: 600; + color: #333333; +} +.detail-card .detail-line { + height: 32px; + line-height: 32px; + color: #666666; +} +.detail-card .inline-span { + display: inline-block; + width: 220px; +} + +.table-tab { + margin-top: 15px; +} +.table-tab .layui-tab-title { + height: 41px; + border-color: #f1f1f1; +} +.table-tab .layui-tab-title li { + background-color: #FFFFFF; + border-top: 1px solid #f1f1f1; + border-bottom: 1px solid #f1f1f1; + border-left: 1px solid #f1f1f1; +} +.table-tab .layui-tab-title li:first-child { + border-left: 1px solid #f1f1f1; +} +.table-tab .layui-tab-title li:last-child { + border-right: 1px solid #f1f1f1; +} +.table-tab .layui-tab-title li.layui-this { + background: #F8F8F8; + border-radius: 2px 0 0 2px; +} +.table-tab .layui-tab-title li.layui-this::after { + border: none; + border-radius: 0; +} +.table-tab .layui-tab-content { + padding: 0; + border: none; + background-color: #fff; +} + +.layui-table tbody tr:hover, .layui-table-click { + background-color: #f8f8f8 !important; +} + +.single-filter-box { + display: flex; + justify-content: space-between; + padding: 14px 0; + background-color: #fff; +} +.single-filter-box .layui-form { + margin-left: auto; +} +.single-filter-box .layui-form .layui-btn { + border-color: #e6e6e6; + padding: 0 10px; +} +.single-filter-box .layui-form .layui-input + .layui-btn { + height: 30px; + line-height: 30px; + position: absolute; + right: 1px; + top: 1px; + border-width: 0; + border-left-width: 1px; +} +.single-filter-box .layui-input-inline { + margin-left: 8px; +} + +.screen { + border: 0; + background-color: #fff; + border-radius: 5px; + min-height: 45px; +} +.screen .layui-colla-item { + position: relative; +} +.screen .layui-colla-title { + position: initial; + height: 0; +} +.screen .layui-colla-title .layui-colla-icon { + left: auto; + transform: translateX(-50%); + top: 0; + color: #BEBEBE; + right: 10px; + z-index: 2; + padding: 5px; +} +.screen .layui-colla-content { + padding: 15px 0; + border: 1px solid #f1f1f1; +} +.screen .layui-colla-content .layui-input, .screen .layui-colla-content .layui-form-select { + width: 185px !important; +} +.screen .layui-form-label { + width: 120px; + font-size: 14px; +} +.screen .form-row { + margin-left: 120px; +} + +.form-wrap { + background-color: #fff; + padding: 15px 0; + border-radius: 5px; +} + +.layui-unselect.layui-form-radio.layui-form-radioed i:after { + content: ""; + position: absolute; + width: 8px; + height: 8px; + background: #409eff; + border-radius: 50%; + left: 4px; + top: 10px; +} + +.len-long { + width: 450px !important; +} + +.len-mid { + width: 250px !important; +} + +.len-short { + width: 120px !important; +} + +.special-length { + width: 650px !important; +} + +.layui-btn { + color: #fff; + padding: 0 16px; + background-color: #409eff; +} +.layui-btn.layui-btn-xs { + height: 22px; + line-height: 22px; + padding: 0 5px; + font-size: 12px; +} +.layui-btn.layui-btn-sm { + height: 30px; + line-height: 30px; + padding: 0 10px; + font-size: 12px; +} +.layui-btn.layui-btn-primary { + color: #333; + border-color: #e6e6e6; + background-color: #ffffff; +} +.layui-btn.layui-btn-primary:hover { + color: #333; + opacity: 1; + border-color: #e6e6e6; +} + +.layui-btn-disabled, .layui-btn-disabled:active, .layui-btn-disabled:hover { + color: #C9C9C9 !important; +} + +.layui-input, .layui-select, .layui-textarea { + border-color: #E6E6E6; +} +.layui-input:focus, .layui-select:focus, .layui-textarea:focus { + border-color: #409eff !important; +} + +.layui-input, .layui-select, .input-text, .layui-btn { + height: 34px; + line-height: 34px; + font-size: 14px; +} + +.btn-hover { + color: #409eff !important; + border-color: #409eff !important; +} + +.layui-form-label { + width: 200px; + height: 34px; + line-height: 34px; + padding: 0 10px 0 0; + box-sizing: border-box; + color: #454545 !important; +} +.layui-form-label.sm { + width: 80px; +} +.layui-form-label.mid { + width: 150px; +} + +.layui-form-label + .layui-input-block { + margin-left: 200px; +} + +.layui-form-label.sm + .layui-input-block { + margin-left: 80px; +} + +.layui-form-label.mid + .layui-input-block { + margin-left: 150px; +} + +.required { + color: red; + margin-right: 3px; +} + +.word-aux { + margin-left: 200px; + display: block; + margin-top: 5px; + color: #B2B2B2; + font-size: 12px; + line-height: 1.6; +} +.word-aux.sm { + margin-left: 80px; +} +.word-aux.mid { + margin-left: 150px; +} + +.layui-form-select dl dd.layui-this { + background-color: #409eff; +} + +.layui-form-checked[lay-skin=primary] i { + border-color: #409eff !important; + background-color: #409eff; + color: #fff; +} + +.layui-form-checkbox[lay-skin=primary]:hover i { + border-color: #409eff; +} + +.layui-form-radio > i:hover, +.layui-form-radioed > i { + color: #409eff; +} + +.layui-form-radio:hover *, .layui-form-radioed, .layui-form-radioed > i { + color: #409eff; +} + +.draggable-element:hover { + border-color: #409eff !important; +} + +.draggable-element.selected { + border-color: #409eff !important; + box-shadow: 0 0 5px #ffc399; +} + +.component-list ul li:not(.disabled):hover { + background: #ffe1cc; + color: #ff8833 !important; +} +.component-list ul li:not(.disabled):hover i { + color: #ff8833 !important; +} +.component-list ul li:not(.disabled):hover span:last-child { + color: #ff8833; +} + +.layui-form-switch { + margin-top: 6px; + border-radius: 16px; + border-color: #DDDDDD; +} +.layui-form-switch i { + width: 21px; + height: 21px; + border-radius: 25px; + background-color: #fff; + position: absolute; + z-index: 2; + top: 0; + left: 1px; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; + -webkit-box-shadow: 0 2px 5px #5a5a5a; + box-shadow: 0 2px 5px #5a5a5a; +} +.layui-form-switch.layui-form-onswitch i { + left: 46px; +} + +.layui-form-onswitch { + background-color: #409eff; +} + +.layui-textarea { + display: inline-block; + resize: none; +} +.layui-textarea::-webkit-scrollbar { + display: none; +} + +.form-row { + margin-top: 20px; + margin-left: 200px; +} +.form-row.sm { + margin-left: 80px; +} +.form-row.mid { + margin-left: 150px; +} +.form-row .layui-btn { + height: 34px; + line-height: 34px; +} + +.upload-img-block.square { + width: 100px; + height: 100px; +} +.upload-img-block.square .operation i { + line-height: 90px; + font-size: 25px !important; + margin-left: 0 !important; + margin-right: 10px !important; +} +.upload-img-block.square .operation i:last-child { + margin-right: 0px !important; +} +.upload-img-block.square .upload-default .preview_img { + line-height: 80px; +} + +.upload-img-block { + padding: 10px; + width: 250px; + height: 120px; + border: 1px dashed #ddd; + box-sizing: border-box; + position: relative; + /* 长图上传操作 */ +} +.upload-img-block .replace { + display: none; + width: 100%; + background-color: rgba(0, 0, 0, 0.5); + bottom: 0; + left: 0; + color: #fff; + position: absolute; + text-align: center; + line-height: 2; + cursor: pointer; +} +.upload-img-block:hover .replace { + display: block; +} +.upload-img-block .no-replace { + color: #fff; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + cursor: pointer; +} +.upload-img-block .upload-img-box { + text-align: center; + cursor: pointer; + height: 100%; +} +.upload-img-block .upload-img-box .upload-default .preview_img { + line-height: 80px; +} +.upload-img-block .upload-img-box .upload-default .preview_img, .upload-img-block .upload-img-box .upload-default .img_prev { + max-width: 100%; + max-height: 100%; +} +.upload-img-block .upload-img-box .upload-default .img_prev { + position: absolute; + top: 50%; + /*偏移*/ + left: 50%; + transform: translate(-50%, -50%); + max-height: 100%; + max-width: 100%; +} +.upload-img-block .upload-img-box .upload-default .upload { + position: absolute; + top: 50%; + /*偏移*/ + left: 50%; + transform: translate(-50%, -50%); +} +.upload-img-block .upload-img-box .upload-default .iconfont { + font-size: 30px; + color: #6D7278; +} +.upload-img-block .upload-img-box .upload-default p { + color: #5a5a5a; + line-height: 20px; + white-space: nowrap; +} +.upload-img-block .upload-img-box > img { + position: absolute; + top: 50%; + /*偏移*/ + left: 50%; + transform: translate(-50%, -50%); + max-height: 100%; + max-width: 100%; +} +.upload-img-block .del { + background: #999; + color: #FFFFFF; + position: absolute; + border-radius: 50%; + width: 20px; + height: 20px; + font-size: 12px; + font-style: normal; + line-height: 18px; + text-align: center; + right: -10px; + top: -10px; + cursor: pointer; + z-index: 1; + display: none; +} +.upload-img-block .del.show { + display: block; +} +.upload-img-block .hover:hover .operation { + display: block; +} +.upload-img-block .operation { + display: none; + position: absolute; + left: 0px; + top: 0px; + width: calc(100% + 0px); + height: calc(100% + 0px); + background-color: rgba(0, 0, 0, 0.5); + color: #fff; +} +.upload-img-block .operation i { + font-size: 25px !important; + margin-left: 30px; + line-height: 120px; +} +.upload-img-block .operation i:first-child { + margin-left: 0px; +} +.upload-img-block .operation .replace_img { + position: absolute; + bottom: 0; + width: 100%; + height: 24px; + color: #fff; + background: rgba(0, 0, 0, 0.5); + font-size: 12px; + line-height: 24px; +} +.upload-img-block .operation .upload-img-block { + height: 120px; +} + +.layui-layer-btn .layui-layer-btn0 { + border-color: #409eff !important; + background-color: #409eff !important; +} + +.layui-btn-primary.date-picker-btn.selected { + background-color: #409eff; + border-color: #409eff; + color: #FFFFFF; +} + +.layui-layer.layui-layer-dialog.layui-layer-msg { + z-index: 99999999 !important; +} + +:root input:-webkit-autofill, +textarea:-webkit-autofill, +select:-webkit-autofill { + box-shadow: 0 0 50px 50px white inset; +} + +.layui-input-block { + line-height: 34px; +} + +.layui-form-item .layui-input-inline { + width: auto; + line-height: 34px; +} + +.layui-form-item { + margin-bottom: 10px; +} + +.layui-form-mid, .layui-word-aux { + display: inline-block; + height: 34px; + line-height: 34px; + padding: 0 !important; +} + +.layui-input-inline.input-append { + margin-right: 0; +} +.layui-input-inline.input-append .layui-input { + padding-right: 30px; +} +.layui-input-inline.input-append + .layui-form-mid { + width: 30px !important; + text-align: center; + margin-left: -30px; +} + +.layui-laydate-header i:hover, .layui-laydate-header span:hover { + color: #409eff !important; +} + +.layui-laydate .layui-laydate-content .layui-this { + background-color: #409eff !important; +} + +.layui-laydate-footer span:hover { + color: #409eff !important; +} + +.layui-laydate-footer span[lay-type=date] { + color: #409eff !important; +} + +.calendar { + position: absolute; + top: 0; + right: 0; + width: 34px; + height: 34px; + z-index: 0; +} + +.layui-table-view { + margin-top: 15px; + background-color: #fff; + border: 0; +} +.layui-table-view .layui-table[lay-skin=line] { + width: 100%; + border: 0; +} +.layui-table-view .layui-table thead tr { + background-color: #fff; +} +.layui-table-view .layui-table tbody td > div { + height: auto !important; +} +.layui-table-view .layui-table thead span { + font-weight: 400; + color: #333333; +} +.layui-table-view .table-btn { + display: flex; + flex-wrap: wrap; + justify-content: flex-end; +} +.layui-table-view tr .layui-btn { + color: #409eff; + display: flex; + justify-content: center; + align-items: center; + height: 23px; + border-radius: 50px; + background-color: transparent; + font-size: 14px; + text-align: center; + padding: 2px 2px 2px 8px; + margin: 5px 0; + position: relative; +} + +.table-title { + display: flex; + align-items: center; +} +.table-title .title-pic { + flex-shrink: 0; + display: inline-block; + width: 50px; + height: 50px; + text-align: center; + line-height: 50px; + margin-right: 10px; +} +.table-title .title-pic img { + max-width: 100%; + max-height: 100%; +} +.table-title .title-content { + overflow: hidden; + flex: 1; + line-height: 1.8; +} + +.img-box { + display: inline-block; + width: 50px; + height: 50px; + text-align: center; + line-height: 50px; +} +.img-box img { + max-width: 100%; + max-height: 100%; +} + +.layui-table-view .layui-table[lay-size=lg] .layui-table-cell { + height: auto; + font-size: 14px; +} + +.layui-table-grid-down { + display: none; +} + +.line-hiding { + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 1; + line-clamp: 1; + -webkit-box-orient: vertical; + white-space: normal; + word-break: break-all; +} + +.multi-line-hiding { + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical; + white-space: normal; + word-break: break-all; + line-height: 22px !important; + max-height: 42px !important; +} + +.table-bottom { + border-top: 1px solid #eee; + padding-top: 10px; + padding-bottom: 15px; + position: relative; +} +.table-bottom .layui-form-checkbox[lay-skin=primary] { + padding-left: 24px; + margin-top: 5px; +} +.table-bottom .layui-table-bottom-tool-temp { + line-height: 34px; + /* .layui-table-view .layui-form-checkbox { + padding-left: 15px; + } */ +} +.table-bottom .layui-table-bottom-tool-temp .layui-form-checkbox[lay-skin=primary] { + padding-left: 0; +} +.table-bottom .layui-table-bottom-tool-temp .tool-temp-checkbox { + display: inline-block; + width: 3%; + text-align: center; +} +.table-bottom .layui-table-bottom-tool-temp .tool-temp-btns { + display: inline-block; + margin-left: 10px; +} +.table-bottom .layui-btn { + padding: 0px 5px; + font-size: 12px; + line-height: 2 !important; + height: auto; + display: inline-block; + margin-top: 3px; +} +.table-bottom .layui-table-page { + position: absolute; + right: 0; + top: 15px; + width: auto; + border-top: 0; + padding: 0 !important; + height: 34px !important; + padding-top: 2px !important; +} + +/* 表格分页颜色 */ +.layui-laypage a:hover { + color: #409eff !important; +} + +.layui-laypage .layui-laypage-curr .layui-laypage-em { + background-color: #409eff !important; +} + +.layui-laypage input:focus, .layui-laypage select:focus { + border-color: #409eff !important; +} + +.layui-table-tool { + padding: 10px 0; + background-color: transparent; + z-index: 1; + border: 0; +} +.layui-table-tool .layui-table-tool-temp { + padding: 0; +} +.layui-table-tool .layui-table-tool-temp .layui-btn { + padding: 0px 5px; + font-size: 12px; + line-height: 2 !important; + height: auto; + display: inline-block; +} +.layui-table-tool .layui-table-tool-temp .layui-form-checkbox[lay-skin=primary] { + padding-left: 0; +} +.layui-table-tool .layui-table-tool-temp .tool-temp-checkbox { + display: inline-block; + width: 3%; + text-align: center; +} +.layui-table-tool .layui-table-tool-temp .tool-temp-btns { + display: inline-block; + margin-left: 10px; +} + +.layui-table-header { + border: 0; +} + +.layui-table th { + font-weight: bold; + background-color: #F7F7F7; +} +.layui-table .table-btn { + display: flex; + flex-wrap: wrap; +} +.layui-table .layui-btn { + display: flex; + justify-content: center; + align-items: center; + height: 23px; + border-radius: 50px; + background-color: transparent; + text-align: center; + padding: 2px 8px 2px 0; + margin: 5px 0 5px 5px; + position: relative; + color: #409eff; +} + +.layui-table.pithy-table { + margin-top: 15px; + border: 0; +} +.layui-table.pithy-table thead th { + height: 40px; + line-height: 40px; + border: 0; + border-bottom: 1px solid #e6e6e6; +} +.layui-table.pithy-table tbody td { + min-height: 40px; + border: 0; +} +.layui-table.pithy-table tbody tr { + border-bottom: 1px solid #e6e6e6; +} +.layui-table.pithy-table tbody tr:last-of-type { + border-bottom: 0; +} + +.layui-layer { + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important; +} + +.layui-layer-shade { + background-color: #373737 !important; + opacity: 0.6 !important; +} + +.layui-layer-page .layui-layer-content { + overflow: initial !important; + padding: 20px; +} +.layui-layer-page .layui-layer-content .layui-form-selected dl { + position: absolute; +} + +.layui-layer-page #layui-layer-photos { + padding: 0; +} + +/**************** 颜色选择器 ********************/ +.layui-colorpicker-main .layui-btn-container .layui-btn:last-of-type { + background-color: #409eff; +} + +.layui-elem-quote { + position: relative; + border: 0; + font-size: 16px; + background-color: transparent; +} +.layui-elem-quote:after { + content: ""; + position: absolute; + width: 3px; + height: 20px; + background-color: #409eff; + left: 0; + top: 50%; + transform: translateY(-50%); +} + +.card { + margin-top: 10px; + padding: 20px; + background-color: #fff; +} + +.item-block-parent { + padding: 20px; + width: 100%; + display: flex; + flex-wrap: wrap; + background-color: #fff; + box-sizing: border-box; + border-radius: 5px; + /* .item-block-hover-a:hover { + border-color: transparent; + box-shadow: 0 0 10px rgba(20, 20, 20, 0.15); + } + */ +} +.item-block-parent .item-block { + position: relative; + display: inline-block; + background: #f7f8fa; + box-sizing: border-box; + border-radius: 4px; +} +.item-block-parent .item-block:hover { + background: #f2f3f5; +} +.item-block-parent .item-block-wrap { + padding: 15px; + display: flex; + justify-content: flex-start; + align-items: flex-start; +} +.item-block-parent .item-pic { + flex-shrink: 0; + width: 40px; + height: 40px; + text-align: center; + line-height: 40px; + margin-right: 10px; +} +.item-block-parent .item-pic img { + max-width: 100%; + max-height: 100%; +} +.item-block-parent .item-con { + overflow: hidden; + height: 40px; + display: flex; + flex-direction: column; + justify-content: space-around; +} +.item-block-parent .item-con .item-content-title { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + line-height: 20px; + font-size: 14px; + color: #666; +} +.item-block-parent .item-con .item-content-icon { + font-size: 12px; + color: #999; + margin-top: 2px; +} +.item-block-parent .item-con .item-content-icon .label { + display: inline-block; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + max-width: 66%; + height: 18px; + padding-left: 5px; + padding-right: 5px; + margin-right: 5px; + margin-bottom: 5px; + border: 1px solid #e5e5e5; + vertical-align: middle; + line-height: 18px; + border-radius: 2px; +} +.item-block-parent .item-con .item-content-icon img { + width: 16px; + height: 16px; + padding: 2px; + margin-bottom: 5px; +} +.item-block-parent .item-con .item-content-desc { + line-height: 20px; + font-size: 12px; + color: #999; +} +.item-block-parent .item-float-wrap { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + opacity: 0; + transition: all 0.2s; +} +.item-block-parent .item-float { + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 30px; + line-height: 30px; + padding: 0 20px; + color: #333; + box-sizing: border-box; + background-color: #f2f3f5; + border-top: 1px solid #e5e5e5; + font-size: 12px; + display: flex; + justify-content: space-between; +} +.item-block-parent .item-float i { + display: inline-block; + width: 8px; + height: 8px; + border-radius: 5px; +} +.item-block-parent .item-float span { + margin-left: 5px; + margin-right: 5px; +} +.item-block-parent .item-block-hover:hover { + border-color: transparent; +} +.item-block-parent .item-block-hover:hover .item-float-wrap { + bottom: -30px; + opacity: 1; + z-index: 99; +} +.item-block-parent .item-poa-pic { + position: absolute; + top: 0; + right: 0; + width: 50px; + height: 50px; +} +.item-block-parent .item-poa-pic img { + width: 50px; + height: 50px; +} + +@media screen and (min-width: 1700px) { + .item-block { + width: 19%; + margin-right: 1.25%; + margin-bottom: 25px; + } + .item-block:nth-child(5n) { + margin-right: 0; + } +} +@media screen and (min-width: 1460px) and (max-width: 1699px) { + .item-block { + width: 23.5%; + margin-right: 2%; + margin-bottom: 25px; + } + .item-block:nth-child(4n) { + margin-right: 0; + } +} +@media screen and (max-width: 1459px) { + .item-block { + width: 31.5%; + margin-right: 2%; + margin-bottom: 25px; + } + .item-block:nth-child(3n) { + margin-right: 0; + } +} +/* @media screen and (max-width: 1239px) { + .item-block { + width: 49%; + margin-right: 2%; + margin-bottom: 25px; + + &:nth-child(2n) { + margin-right: 0; + } + } +} */ +.category-list .item li:hover, .category-list .item li.selected { + color: #409eff !important; + background-color: #f5f5f5; +} + +.prompt-block { + display: flex; + align-items: center; +} +.prompt-block .prompt { + width: 18px; + height: 18px; + line-height: 18px; + position: relative; +} +.prompt-block .prompt:hover .prompt-box { + display: inline-block; +} +.prompt-block .prompt .iconfont { + color: #000; + font-weight: 100; + margin-left: 3px; + cursor: pointer; +} +.prompt-block .prompt-box { + position: absolute; + top: -20px; + left: 32px; + border: 1px solid #e4e4e4; + width: 280px; + text-align: left; + border-radius: 5px; + background-color: #FFFFFF; + padding: 15px; + box-sizing: border-box; + word-break: break-all; + color: #666666; + line-height: 24px; + z-index: 999; + display: none; + font-weight: normal; +} +.prompt-block .prompt-box:before, .prompt-block .prompt-box:after { + content: ""; + display: inline-block; + border: solid transparent; + width: 0; + height: 0; + border-width: 12px; + top: 16px; + position: absolute; +} +.prompt-block .prompt-box:before { + border-right-color: #e4e4e4; + left: -25px; +} +.prompt-block .prompt-box:after { + border-right-color: #FFFFFF; + left: -23px; +} +.prompt-block .prompt-con { + width: 100%; + word-break: break-all; + white-space: normal; +} + +.flexbox-fix-btn .btn { + width: 80px; + border: 1px solid #DDDDDD; + color: #666666; + line-height: 32px; + background-color: transparent; + margin: 20px 5px 0; + cursor: pointer; +} + +.upload_img_square { + display: inline-block; + width: 80px; + height: 80px; + line-height: 78px; + font-size: 30px; + color: #bbbbbb; + cursor: pointer; + border: 1px dashed #ccc; + border-radius: 5px; + text-align: center; + margin-bottom: 10px; + margin-right: 10px; +} + +.upload_img_square_item { + display: inline-block; + float: left; + width: 80px; + height: 80px; + position: relative; + border: 1px dashed #e5e5e5; + text-align: center; + transition: background-color 0.3s ease; + margin-bottom: 10px; + margin-right: 10px; +} +.upload_img_square_item:hover { + border: 1px dashed #ff8143; + border-radius: 5px; +} +.upload_img_square_item:hover .operation { + display: block; +} +.upload_img_square_item .img-wrap { + width: 80px; + font-size: 0; + line-height: 79px; + border-radius: 5px; + overflow: hidden; +} +.upload_img_square_item .img-wrap img { + width: calc(100% - 2px); + height: calc(100% - 2px); +} +.upload_img_square_item .operation { + position: absolute; + top: 0; + z-index: 10; + width: 80px; + height: 80px; + line-height: 80px; + background: rgba(0, 0, 0, 0.5); + color: #fff; + cursor: pointer; + text-align: center; + display: none; +} +.upload_img_square_item .operation i { + font-size: 20px; + margin-left: 10px; +} +.upload_img_square_item .operation i:first-child { + margin-left: 0; +} +.upload_img_square_item .operation .replace_img { + position: absolute; + bottom: 0; + width: 100%; + height: 24px; + color: #fff; + background: rgba(0, 0, 0, 0.5); + font-size: 12px; + line-height: 24px; +} + +.layui-form-item .layui-table-view { + margin-top: 0; +} +.layui-form-item .layui-form-checkbox[lay-skin=primary] { + margin-top: 0; +} +.layui-form-item .layui-table-tool { + min-height: 40px; + padding: 0; +} + +.layui-table-init .layui-icon { + position: absolute; +} + +.layui-layer-tips .layui-layer-content { + color: #000 !important; +} + +.icon-preview { + position: fixed; + width: 100vw; + height: 100vh; + left: 0; + top: 0; + z-index: 9999; + display: flex; + align-items: center; + justify-items: center; + background: rgba(55,55,55,0.6); +} +.icon-preview .icon-preview-block { + width: 100px; + height: 100px; + font-size: 100px; + margin: 0 auto; +} + +@keyframes spin { + from { + transform: rotate(0deg); + } + + to { + transform: rotate(360deg); + } +} + +.common-loading-layer { + width: 35px; + height: 35px; + perspective: 800px; + transform-style: preserve-3d; + transition: all 0.2s ease-out; + border-radius: 50%; + border: 3px solid; + border-left-color: var(--base-color); + border-right-color: #C5C5C5; + border-top-color: var(--base-color); + border-bottom-color: #C5C5C5; + animation: spin 0.6s linear normal infinite; + display: block; +} + +.common-loading-layer:before { + content: '' +} \ No newline at end of file diff --git a/niucloud/public/install/css/layui.css b/niucloud/public/install/css/layui.css new file mode 100644 index 0000000..664e08c --- /dev/null +++ b/niucloud/public/install/css/layui.css @@ -0,0 +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:700}h4,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=280);src:url(../font/iconfont.eot?v=280#iefix) format('embedded-opentype'),url(../font/iconfont.woff2?v=280) format('woff2'),url(../font/iconfont.woff?v=280) format('woff'),url(../font/iconfont.ttf?v=280) format('truetype'),url(../font/iconfont.svg?v=280#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-eye:before{content:"\e695"}.layui-icon-eye-invisible:before{content:"\e696"}.layui-icon-backspace:before{content:"\e694"}.layui-icon-help-circle:before{content:"\e77c"}.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:#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-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:-15px}.layui-col-space32>*{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.8;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 #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:#409eff!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-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:#409eff!important;color:#409eff!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.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:#409eff!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{word-spacing:-5px}.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:#409eff}.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{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:#409eff!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:#5fb878;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 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-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:#009688}.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:#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;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 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}.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:#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;color:initial}.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:#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: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:#f8f8f8!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-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:#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;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: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;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:#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-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:#5fb878}.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:#5fb878!important;font-weight:700}.layui-nav-tree.layui-bg-gray .layui-nav-bar{background-color:#5fb878}.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 .layui-tab-title{position:relative;left:0;height:40px;padding-left:0;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:#409eff;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:#409eff}.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:#409eff;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 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:#f8f8f8;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: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:#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}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-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: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}.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:#409eff}.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;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}.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-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:#409eff}.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:#5fb878}.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:#5fb878}.layui-laydate-content td.laydate-day-now:after{content:'';position:absolute;width:100%;height:30px;left:0;top:0;border:1px solid #5fb878;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:#409eff}.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,.layui-laydate .layui-this>div{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}.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:#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}.layui-laydate-linkage.laydate-theme-grid .laydate-selected,.layui-laydate-linkage.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#009688!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}}.layui-layer-title{padding:0 80px 0 20px;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:300px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;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:24px;_left:-40px}.layui-layer-dialog .layui-layer-content .layui-icon-tips{color:#f39b12}.layui-layer-dialog .layui-layer-content .layui-icon-ok{color:#5fb878}.layui-layer-dialog .layui-layer-content .layui-icon-close-fill{top:19px;font-size:28px;color:#409eff}.layui-layer-dialog .layui-layer-content .layui-icon-password{color:#787878}.layui-layer-dialog .layui-layer-content .layui-icon-face-cry{color:#409eff}.layui-layer-dialog .layui-layer-content .layui-icon-face-smile{color:#5fb878}.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 52px;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[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476a7;color:#fff;border:none}.layui-layer-lan .layui-layer-btn{padding:5px 10px 10px;text-align:right;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-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:20px}.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;float:left;min-width:80px;max-width:300px;padding:0 20px;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:1px solid #eee;border-right:1px solid #eee;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.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}} \ No newline at end of file diff --git a/niucloud/public/install/css/style.css b/niucloud/public/install/css/style.css new file mode 100644 index 0000000..e5169c1 --- /dev/null +++ b/niucloud/public/install/css/style.css @@ -0,0 +1,582 @@ +*{ + padding:0px; + margin:0px; + } +body{ + font-family:Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color: #333; + background-color: #edf0f3; +} +ul{ + list-style:none; +} +a{ + color: #333; + text-decoration: none; +} +a:hover{ + color:#FF6A00; + text-decoration:none; +} +input,button,select{ + vertical-align:middle; + outline: none; +} +.fc-690{ + color:#333; +} +.fs-14{ + font-size:14px; +} + + +.head-block{ + margin-bottom: 20px; + background-color: #fff; +} +.top{ + overflow:hidden; + display: flex; + justify-content: space-between; + align-items: center; + min-width: 1200px; + height: 64px; + margin: auto; +} +.top .top-logo{ + display: flex; + justify-content: space-between; + align-items: center; + margin-left: 20px; +} +.top .top-logo .top-logo-img { + width: 130px; + height: 40px; + line-height: 40px; +} +.top .top-logo .top-logo-img img{ + width: 100%; +} +.top .top-logo .bar { + margin: 0 10px; +} +.top .top-logo .logo-text{ + color: #A6B0C8; + font-size: 14px; +} +.top-sub{ + flex:1; + font-size:19px; + font-weight: bold; + margin-left:10px; +} +.top .top-logo h1{ + font-size:0px; + line-height:1000%; +} +.top .top-link{ + height:15px; + margin-right: 20px; +} +.top .top-link li{ + display: inline-block; + margin-left: 15px; + line-height:14px; + font-size: 16px; +} +.install-content{ + margin: 0 auto 50px; + width: 1200px; + background-color: #fff; + border-radius: 0 0 15px 15px; +} +.install-content::after{ + content:""; + display: block; + clear: both; +} +.install-content-procedure{ + border: 1px solid #EDF0F3; + height: 116px; +} +.install-content-procedure .content-procedure-list{ + width: 1000px; + margin: 15px auto; + display: flex; + position: relative; + top: 50%; + transform: translateY(-50%); +} +.install-content-procedure .content-procedure-item{ + flex: 1; + height: 36px; + font-size: 14px; + line-height: 36px; + text-align: center; + background: url("../img/not_complete.png") no-repeat center / contain; +} +.install-content-procedure .content-procedure-item:first-of-type{ + color: #fff; + background: url("../img/complete_one.png") no-repeat center / contain; +} +.install-content-procedure .content-procedure-item:last-of-type{ + background: url("../img/not_complete_two.png") no-repeat center / contain; +} + +/* 第一个页面 */ +.pright{ + margin: 0px auto 0; + padding-bottom: 40px; + width:1100px; + +} +.pright .pr-title{ + padding-left: 30px; + height: 50px; + font-size: 16px; + font-weight: bold; + line-height: 50px; + background: #F7F9FA; + border-bottom: 1px solid #EEEEEE; + border-radius: 10px 10px 0 0; +} + +.pr-agreement{ + overflow-y:scroll; + max-height :520px; + padding: 10px 30px; + line-height:21px; + color:#666; + background: #F7F9FA; + border-radius: 0 0 10px 10px; +} + +.pr-agreement::-webkit-scrollbar { + width: 6px; + background-color: #FFF; +} +.pr-agreement::-webkit-scrollbar-thumb { + border-radius: 10px; + /*background-color: #494E51;*/ +} +.pr-agreement::-webkit-scrollbar { + display: none; +} +.pr-agreement::-webkit-scrollbar-track { + -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); + background-color: #F5F5F5; +} +.pr-agreement strong{ + display:block; + color:#333; + line-height:27px; + margin-top:6px; +} +.pr-agreement p{ + text-indent:30px; +} +.pr-agreement .describe{ + text-indent: 0; +} + +.btn-box{ + display: flex; + justify-content: space-between; + margin-top: 30px; + text-align: right; + vertical-align: middle; + height: 34px; + line-height: 34px; +} +.btn-back, .btn-next{ + width:100px; + height:34px; + border:none; + background-color:#409eff; + color:#FFF; + cursor:pointer; + margin-left:10px; + overflow:hidden; + font-size: 14px; + border-radius:3px; +} +.btn-box .layui-btn { + border-radius: 5px; +} +.btn-back{ + border: 1px solid #C7C7C7; + color: #333; + background-color: #fff; +} + +.btn-box-text{ + position: relative; + display: inline-block; + height: 16px; + line-height: 16px; +} + +#readpact{ + position: relative; + height: 16px; + width: 16px; + vertical-align: bottom; + z-index: 8; + opacity: 0; + cursor: pointer; +} +.btn-box-selection{ + position: absolute; + top: 0; + left: 0; + width: 16px; + height: 16px; + background: url("../img/no_agree.png") no-repeat center; +} + + +.btn-box .agreement{ + font-size: 14px; + font-weight: bold; +} + +/* 第二个页面 */ +.pr-agreement h3{ + color: #000; + padding: 10px 0; + border-bottom: 1px solid #eee; +} +.testing-item{ + margin-bottom: 30px; +} +.testing-item:last-of-type{ + margin-bottom: 0; +} +.testing-item h3{ + font-size: 16px; + font-weight: bold; +} + +.pr-agreement h3 .desc{ + margin-left: 5px; + color: #999999; + font-size: 14px; + font-weight: normal; +} + +.pr-agreement .twbox{ + width: 100%; + font-size: 14px; + border: 1px solid #F2F2F2; +} +.pr-agreement .twbox th{ + height: 50px; + text-align: left; + background-color: #F2F2F2; +} +.pr-agreement .twbox td{ + height: 50px; + border-top: 1px solid #F2F2F2; +} +.pr-agreement .twbox th:first-of-type, .pr-agreement .twbox td:first-of-type{ + padding-left: 30px; +} + +/* 第三个页面 */ +#install-form .testing.parameter { + display: flex; + justify-content: space-between; +} +#install-form .testing .testing-item{ + flex: 1; +} +#install-form .testing .testing-item:nth-child(1){ + margin-right: 30px; +} + +.parameter .twbox{ + border-top: 0; +} +.parameter .input-txt{ + padding-left: 11px; + width: 180px; + height: 30px; + border:1px solid #DDDDDD; + font-size:12px; + color: #333; + outline: none; + border-radius: 3px; +} + +.parameter .onetd{ + padding: 0 !important; + width:120px; + font-weight: 400; + text-align:right; + line-height:25px; +} +.parameter small{ + margin-left: 20px; + color: #999; +} + +.waitpage { + top:0; + left:0; + filter:Alpha(opacity=70); + -moz-opacity:0.7; + position:absolute; + z-index:10000; + background:url(../img/loading1.gif) #ababab no-repeat center 200px; + width:100%; + height:2500px; + display:none; +} + +.install-code{ + height:27px;line-height:27px; +} + +.installimg-btn{ + background-color:#777; +} + +/* 第四个页面 */ +.install-success{ + padding: 10px 0 100px; + margin-left: 50px; + margin-right: 50px; + text-align: center; + padding-top: 50px; + background: #F7F9FA; +} +.install-content .install-success-box{ + display: inline-block; + align-self: center; + margin: auto; +} +.install-content .success-img { + width: 100px; + margin: 0 auto 20px; +} +.install-content .install-success-pic{ + width: 100%; +} +.install-content .install-success-text{ + display: inline-block; + text-align: left; + vertical-align: middle; +} +.install-content .install-success-title{ + margin-bottom: 10px; + font-size: 18px; + font-weight: bolder; +} +.install-content .install-success-desc{ + color: #999; + font-size: 14px; + text-align: center; +} +.install-content .back { + background: #F7F9FA; +} +.install-content .other-links{ + padding: 0px 50px 50px; + font-size: 14px; +} +.install-content .other-links .other-links-title { + padding-left: 20px; +} +.install-content .other-links-list{ + display: flex; + margin-top: 60px; + justify-content: space-around; + padding-bottom: 80px; +} + +.install-content .other-links-item{ + display: flex; + align-self: center; + flex-direction: column; + align-items: center; + cursor: pointer; +} +.install-content .other-links-pic{ + width: 24px; + height: 24px; + line-height: 24px; + text-align: center; +} +.install-content .other-links-pic img{ + display: block; + max_width: 100%; + max-height: 100%; +} +.install-content .other-links-text{ + line-height: 45px; +} + + + + + + + + + + + + + + + + + + + + + + + +.step-content{ + margin: 0 auto; + width: 1200px; + background-color: #fff; + padding-bottom:30px; + border-radius: 15px 15px 0px 0px; +} +input{ + vertical-align:middle; + margin-right:3px; + font-size:12px; +} +input.but{ + height:26px; + padding-left:6px; + padding-right:6px; + line-height:26px; + font-weight:bold; + letter-spacing:1px; + color:#FFF; + background-color:#FC3; +} + +.step-title h1{ + font-size: 30px; + text-align: center; + margin-top: 80px; +} +.step-title p{ + font-size: 18px; + text-align: center; + color: #999999; + margin: 20px 0 40px 0; +} + +/*步骤*/ +.processBar{ + float: left; + width: 329px; + margin-top: 15px; +} +.processBar .bar{ + /*background: #e9f4ff;*/ + height: 3px; + position: relative; + width: 314px; + margin-left: -17px; + border-bottom: 3px dashed rgba(40, 146, 228, 0.16); +} +.processBar .b-select{ + background: #409eff; +} +.processBar .bar .c-step{ + position: absolute; + width: 16px; + height: 16px; + border-radius: 50%; + + background-image: url(../img/step_point_check.png); + left: -16px; + top: 50%; + margin-top: -6px; +} +.processBar .bar .c-select{ + width: 16px; + height: 16px; + margin: -6px 1px; + background-image: url(../img/step_point_check.jpg); + +} +#point0.c-step { + left : -13px +} +#line2.bar { + width: 302px; +} +#point3.c-step { + left : -25px +} +.main-hide { + position: absolute; + top: -9999px; + left: -9999px; +} +.poetry{ + color: #000; + font-size: 13px; + background-color: transparent; + font-weight: 800; +} +button{ + width: 80px; + line-height: 30px; + font-size: 11px; + color: #409eff; + text-align: center; + border-radius: 6px; + border: 1px solid #e2e2e2; + cursor: pointer; + background-color: #fff; + outline:none; +} +button:hover{ + border: 1px solid #e9f4ff; +} + + +.layui-form-item .layui-form-checkbox[lay-skin=primary]{ + margin-top: 3px !important; +} + + +.mysql-message{ + height: 32px; + line-height: 32px; + margin-left: 20px; + max-width: 160px; + overflow: hidden; +} +.pr-title.install-title { + height: 50px; + font-size: 16px; + font-weight: bold; + line-height: 50px; + background: #F7F9FA; +} +.install-log{ + height: 100%; + overflow-y: auto; + +} +.install-log>div{ + margin-top: 10px; + display: flex; + justify-content: space-between; +} +.td-aux{ + height: 20px!important; + color: #999; + font-size: smaller; +} \ No newline at end of file diff --git a/niucloud/public/install/font/iconfont.eot b/niucloud/public/install/font/iconfont.eot new file mode 100644 index 0000000..0859a67 Binary files /dev/null and b/niucloud/public/install/font/iconfont.eot differ diff --git a/niucloud/public/install/font/iconfont.svg b/niucloud/public/install/font/iconfont.svg new file mode 100644 index 0000000..dbb79c6 --- /dev/null +++ b/niucloud/public/install/font/iconfont.svg @@ -0,0 +1,385 @@ + + + + Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/niucloud/public/install/font/iconfont.ttf b/niucloud/public/install/font/iconfont.ttf new file mode 100644 index 0000000..35cfa0b Binary files /dev/null and b/niucloud/public/install/font/iconfont.ttf differ diff --git a/niucloud/public/install/font/iconfont.woff b/niucloud/public/install/font/iconfont.woff new file mode 100644 index 0000000..afb843a Binary files /dev/null and b/niucloud/public/install/font/iconfont.woff differ diff --git a/niucloud/public/install/font/iconfont.woff2 b/niucloud/public/install/font/iconfont.woff2 new file mode 100644 index 0000000..8265e3a Binary files /dev/null and b/niucloud/public/install/font/iconfont.woff2 differ diff --git a/niucloud/public/install/img/admin.jpg b/niucloud/public/install/img/admin.jpg new file mode 100644 index 0000000..c1a3326 Binary files /dev/null and b/niucloud/public/install/img/admin.jpg differ diff --git a/niucloud/public/install/img/admin.png b/niucloud/public/install/img/admin.png new file mode 100644 index 0000000..0331656 Binary files /dev/null and b/niucloud/public/install/img/admin.png differ diff --git a/niucloud/public/install/img/ajax-loader.gif b/niucloud/public/install/img/ajax-loader.gif new file mode 100644 index 0000000..f227c0f Binary files /dev/null and b/niucloud/public/install/img/ajax-loader.gif differ diff --git a/niucloud/public/install/img/bbs.jpg b/niucloud/public/install/img/bbs.jpg new file mode 100644 index 0000000..2ff48d0 Binary files /dev/null and b/niucloud/public/install/img/bbs.jpg differ diff --git a/niucloud/public/install/img/bbs.png b/niucloud/public/install/img/bbs.png new file mode 100644 index 0000000..3fa6583 Binary files /dev/null and b/niucloud/public/install/img/bbs.png differ diff --git a/niucloud/public/install/img/error.png b/niucloud/public/install/img/error.png new file mode 100644 index 0000000..9b96012 Binary files /dev/null and b/niucloud/public/install/img/error.png differ diff --git a/niucloud/public/install/img/forum.png b/niucloud/public/install/img/forum.png new file mode 100644 index 0000000..e1be9ae Binary files /dev/null and b/niucloud/public/install/img/forum.png differ diff --git a/niucloud/public/install/img/install_complete.png b/niucloud/public/install/img/install_complete.png new file mode 100644 index 0000000..825e591 Binary files /dev/null and b/niucloud/public/install/img/install_complete.png differ diff --git a/niucloud/public/install/img/loading1.gif b/niucloud/public/install/img/loading1.gif new file mode 100644 index 0000000..5f10394 Binary files /dev/null and b/niucloud/public/install/img/loading1.gif differ diff --git a/niucloud/public/install/img/logo.jpg b/niucloud/public/install/img/logo.jpg new file mode 100644 index 0000000..c7bc9b1 Binary files /dev/null and b/niucloud/public/install/img/logo.jpg differ diff --git a/niucloud/public/install/img/logo.png b/niucloud/public/install/img/logo.png new file mode 100644 index 0000000..808fb11 Binary files /dev/null and b/niucloud/public/install/img/logo.png differ diff --git a/niucloud/public/install/img/no_agree.png b/niucloud/public/install/img/no_agree.png new file mode 100644 index 0000000..4f8456c Binary files /dev/null and b/niucloud/public/install/img/no_agree.png differ diff --git a/niucloud/public/install/img/not_complete.png b/niucloud/public/install/img/not_complete.png new file mode 100644 index 0000000..9f6f2c0 Binary files /dev/null and b/niucloud/public/install/img/not_complete.png differ diff --git a/niucloud/public/install/img/not_complete_two.png b/niucloud/public/install/img/not_complete_two.png new file mode 100644 index 0000000..74e4222 Binary files /dev/null and b/niucloud/public/install/img/not_complete_two.png differ diff --git a/niucloud/public/install/img/official_website.png b/niucloud/public/install/img/official_website.png new file mode 100644 index 0000000..636d461 Binary files /dev/null and b/niucloud/public/install/img/official_website.png differ diff --git a/niucloud/public/install/img/shop_bitbug_favicon.ico b/niucloud/public/install/img/shop_bitbug_favicon.ico new file mode 100644 index 0000000..d770505 Binary files /dev/null and b/niucloud/public/install/img/shop_bitbug_favicon.ico differ diff --git a/niucloud/public/install/img/site_backstage.png b/niucloud/public/install/img/site_backstage.png new file mode 100644 index 0000000..1e7db3b Binary files /dev/null and b/niucloud/public/install/img/site_backstage.png differ diff --git a/niucloud/public/install/img/site_h5.png b/niucloud/public/install/img/site_h5.png new file mode 100644 index 0000000..3c5dac2 Binary files /dev/null and b/niucloud/public/install/img/site_h5.png differ diff --git a/niucloud/public/install/img/site_index.png b/niucloud/public/install/img/site_index.png new file mode 100644 index 0000000..0e9b2a5 Binary files /dev/null and b/niucloud/public/install/img/site_index.png differ diff --git a/niucloud/public/install/img/site_web.png b/niucloud/public/install/img/site_web.png new file mode 100644 index 0000000..614f5e0 Binary files /dev/null and b/niucloud/public/install/img/site_web.png differ diff --git a/niucloud/public/install/img/step_point.png b/niucloud/public/install/img/step_point.png new file mode 100644 index 0000000..b188102 Binary files /dev/null and b/niucloud/public/install/img/step_point.png differ diff --git a/niucloud/public/install/img/step_point_check.jpg b/niucloud/public/install/img/step_point_check.jpg new file mode 100644 index 0000000..26932f8 Binary files /dev/null and b/niucloud/public/install/img/step_point_check.jpg differ diff --git a/niucloud/public/install/img/step_point_check.png b/niucloud/public/install/img/step_point_check.png new file mode 100644 index 0000000..f716f2f Binary files /dev/null and b/niucloud/public/install/img/step_point_check.png differ diff --git a/niucloud/public/install/img/success.png b/niucloud/public/install/img/success.png new file mode 100644 index 0000000..d099277 Binary files /dev/null and b/niucloud/public/install/img/success.png differ diff --git a/niucloud/public/install/img/success_img.jpg b/niucloud/public/install/img/success_img.jpg new file mode 100644 index 0000000..a8424f8 Binary files /dev/null and b/niucloud/public/install/img/success_img.jpg differ diff --git a/niucloud/public/install/img/web.jpg b/niucloud/public/install/img/web.jpg new file mode 100644 index 0000000..382877e Binary files /dev/null and b/niucloud/public/install/img/web.jpg differ diff --git a/niucloud/public/install/img/web.png b/niucloud/public/install/img/web.png new file mode 100644 index 0000000..af93678 Binary files /dev/null and b/niucloud/public/install/img/web.png differ diff --git a/niucloud/public/install/js/common.js b/niucloud/public/install/js/common.js new file mode 100644 index 0000000..4d90ab0 --- /dev/null +++ b/niucloud/public/install/js/common.js @@ -0,0 +1,166 @@ +var ns = window.ns_url; +/* 基础对象检测 */ +ns || $.error("js-ns_url基础配置没有正确加载!"); +/** + * 解析URL + * @param {string} url 被解析的URL + * @return {object} 解析后的数据 + */ +ns.parse_url = function(url){ + var parse = url.match(/^(?:([a-z]+):\/\/)?([\w-]+(?:\.[\w-]+)+)?(?::(\d+))?([\w-\/]+)?(?:\?((?:\w+=[^#&=\/]*)?(?:&\w+=[^#&=\/]*)*))?(?:#([\w-]+))?$/i); + parse || $.error("url格式不正确!"); + return { + "scheme" : parse[1], + "host" : parse[2], + "port" : parse[3], + "path" : parse[4], + "query" : parse[5], + "fragment" : parse[6] + }; +} +ns.parse_str = function(str){ + var value = str.split("&"), vars = {}, param; + for(val in value){ + param = value[val].split("="); + vars[param[0]] = param[1]; + } + return vars; +} +ns.parse_name = function(name, type){ + if(type){ + /* 下划线转驼峰 */ + name = name.replace(/_([a-z])/g, function($0, $1){ +return $1.toUpperCase(); + }); + /* 首字母大写 */ + name = name.replace(/[a-z]/, function($0){ +return $0.toUpperCase(); + }); + } else { + /* 大写字母转小写 */ + name = name.replace(/[A-Z]/g, function($0){ +return "_" + $0.toLowerCase(); + }); + /* 去掉首字符的下划线 */ + if(0 === name.indexOf("_")){ +name = name.substr(1); + } + } + return name; +} +//scheme://host:port/path?query#fragment +ns.url = function(url, vars, suffix){ + var info = this.parse_url(url), path = [], param = {}, reg; + + /* 验证info */ + info.path || $.error("url格式错误!"); + url = info.path; + /* 解析URL */ + path = url.split("/"); + path = [path.pop(), path.pop(), path.pop()].reverse(); + path[1] = path[1] || this.route[1]; + path[0] = path[0] || this.route[0]; +// param[this.route[0]] = path[0]; +// param[this.route[1]] = path[1]; +// param[this.route[2]] = path[2].toLowerCase(); +// url = param[this.route[0]] + '/' + param[this.route[1]] + '/' + param[this.route[2]]; + param[this.route[2]] = path[0]; + param[this.route[3]] = path[1]; + param[this.route[4]] = path[2].toLowerCase(); + url = param[this.route[2]] + '/' + param[this.route[3]] + '/' + param[this.route[4]]; + /* 解析参数 */ + if(typeof vars === "string"){ + vars = this.parse_str(vars); + } else if(!$.isPlainObject(vars)){ + vars = {}; + } + /* 添加伪静态后缀 */ + if(false !== suffix){ + suffix = suffix || 'html'; + if(suffix){ +url += "." + suffix; + } + } + /* 解析URL自带的参数 */ + info.query && $.extend(vars, this.parse_str(info.query)); + /* 判断站点id是否存在 */ + var site = ''; + if(vars.site_id){ + var site_id = vars.site_id; + delete vars.site_id; + site = 's'+parseInt(site_id) + '/'; + }else{ + var site_id = this.route[0]; + site = site_id > 0 ? 's' + parseInt(site_id) + '/' : ''; + } + var addon = ''; + if(info.scheme != '' && info.scheme != undefined){ + addon = info.scheme + '/'; + } + url = site + addon + url; + if(vars){ + var param_str = $.param(vars); + if('' !== param_str) { +url += ((this.baseUrl + url).indexOf('?') !== -1 ? '&' : '?') + param_str; + } + } + url = this.baseUrl + url; + return url; +} + +/** + * 处理图片路径 + */ +ns.img = function(path, type = '') { + if(path.indexOf("http://") == -1 && path.indexOf("https://") == -1) { + var start = path.lastIndexOf('.'); + type = type ? '_' + type : ''; + var base_url = this.baseUrl.replace('/?s=', ''); + var suffix = path.substring(start); + var path = path.substring(0, start); + var true_path = base_url + 'attachment/' + path + type + suffix; + }else{ + var true_path = path; + } + return true_path; +} + +/** + * 时间戳转时间 + * + */ +ns.time_to_date = function(timeStamp){ + if(timeStamp > 0){ + var date = new Date(); + date.setTime(timeStamp * 1000); + var y = date.getFullYear(); + var m = date.getMonth() + 1; + m = m < 10 ? ('0' + m) : m; + var d = date.getDate(); + d = d < 10 ? ('0' + d) : d; + var h = date.getHours(); + h = h < 10 ? ('0' + h) : h; + var minute = date.getMinutes(); + var second = date.getSeconds(); + minute = minute < 10 ? ('0' + minute) : minute; + second = second < 10 ? ('0' + second) : second; + return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second; + }else{ + return ""; + } +} +/** + * url 反转义 + * @param url + */ +ns.urlReplace = function(url){ + var new_url = url.replace(/%2B/g, "+");//"+"转义 + new_url= new_url.replace(/%26/g,"&");//"&" + new_url= new_url.replace(/%23/g, "#");//"#" + new_url= new_url.replace(/%20/g," ");//" " + new_url= new_url.replace(/%3F/g, "?");//"#" + new_url= new_url.replace(/%25/g, "%");//"#" + new_url= new_url.replace(/&3D/g,"=");//"#" + new_url= new_url.replace(/%2F/g, "/");//"#" + return new_url; +} \ No newline at end of file diff --git a/niucloud/public/install/js/jquery-2.2.js b/niucloud/public/install/js/jquery-2.2.js new file mode 100644 index 0000000..fd98680 --- /dev/null +++ b/niucloud/public/install/js/jquery-2.2.js @@ -0,0 +1,9814 @@ +/*! + * jQuery JavaScript Library v2.2.4 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2016-05-20T17:23Z + */ + +(function( global, factory ) { + + if ( typeof module === "object" && typeof module.exports === "object" ) { + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Support: Firefox 18+ +// Can't be in strict mode, several libs including ASP.NET trace +// the stack via arguments.caller.callee and Firefox dies if +// you try to trace through "use strict" call chains. (#13335) +//"use strict"; +var arr = []; + +var document = window.document; + +var slice = arr.slice; + +var concat = arr.concat; + +var push = arr.push; + +var indexOf = arr.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var support = {}; + + + +var + version = "2.2.4", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }, + + // Support: Android<4.1 + // Make sure we trim BOM and NBSP + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, + + // Matches dashed string for camelizing + rmsPrefix = /^-ms-/, + rdashAlpha = /-([\da-z])/gi, + + // Used by jQuery.camelCase as callback to replace() + fcamelCase = function( all, letter ) { + return letter.toUpperCase(); + }; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // Start with an empty selector + selector: "", + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + return num != null ? + + // Return just the one element from the set + ( num < 0 ? this[ num + this.length ] : this[ num ] ) : + + // Return all the elements in a clean array + slice.call( this ); + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + ret.context = this.context; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: arr.sort, + splice: arr.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // Skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { + target = {}; + } + + // Extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = jQuery.isArray( copy ) ) ) ) { + + if ( copyIsArray ) { + copyIsArray = false; + clone = src && jQuery.isArray( src ) ? src : []; + + } else { + clone = src && jQuery.isPlainObject( src ) ? src : {}; + } + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + isFunction: function( obj ) { + return jQuery.type( obj ) === "function"; + }, + + isArray: Array.isArray, + + isWindow: function( obj ) { + return obj != null && obj === obj.window; + }, + + isNumeric: function( obj ) { + + // parseFloat NaNs numeric-cast false positives (null|true|false|"") + // ...but misinterprets leading-number strings, particularly hex literals ("0x...") + // subtraction forces infinities to NaN + // adding 1 corrects loss of precision from parseFloat (#15100) + var realStringObj = obj && obj.toString(); + return !jQuery.isArray( obj ) && ( realStringObj - parseFloat( realStringObj ) + 1 ) >= 0; + }, + + isPlainObject: function( obj ) { + var key; + + // Not plain objects: + // - Any object or value whose internal [[Class]] property is not "[object Object]" + // - DOM nodes + // - window + if ( jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { + return false; + } + + // Not own constructor property must be Object + if ( obj.constructor && + !hasOwn.call( obj, "constructor" ) && + !hasOwn.call( obj.constructor.prototype || {}, "isPrototypeOf" ) ) { + return false; + } + + // Own properties are enumerated firstly, so to speed up, + // if last one is own, then all properties are own + for ( key in obj ) {} + + return key === undefined || hasOwn.call( obj, key ); + }, + + isEmptyObject: function( obj ) { + var name; + for ( name in obj ) { + return false; + } + return true; + }, + + type: function( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android<4.0, iOS<6 (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; + }, + + // Evaluates a script in a global context + globalEval: function( code ) { + var script, + indirect = eval; + + code = jQuery.trim( code ); + + if ( code ) { + + // If the code includes a valid, prologue position + // strict mode pragma, execute code by injecting a + // script tag into the document. + if ( code.indexOf( "use strict" ) === 1 ) { + script = document.createElement( "script" ); + script.text = code; + document.head.appendChild( script ).parentNode.removeChild( script ); + } else { + + // Otherwise, avoid the DOM node creation, insertion + // and removal by using an indirect global eval + + indirect( code ); + } + } + }, + + // Convert dashed to camelCase; used by the css and data modules + // Support: IE9-11+ + // Microsoft forgot to hump their vendor prefix (#9572) + camelCase: function( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); + }, + + nodeName: function( elem, name ) { + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // Support: Android<4.1 + trim: function( text ) { + return text == null ? + "" : + ( text + "" ).replace( rtrim, "" ); + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + return arr == null ? -1 : indexOf.call( arr, elem, i ); + }, + + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + for ( ; j < len; j++ ) { + first[ i++ ] = second[ j ]; + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return concat.apply( [], ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // Bind a function to a context, optionally partially applying any + // arguments. + proxy: function( fn, context ) { + var tmp, args, proxy; + + if ( typeof context === "string" ) { + tmp = fn[ context ]; + context = fn; + fn = tmp; + } + + // Quick check to determine if target is callable, in the spec + // this throws a TypeError, but we will just return undefined. + if ( !jQuery.isFunction( fn ) ) { + return undefined; + } + + // Simulated bind + args = slice.call( arguments, 2 ); + proxy = function() { + return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); + }; + + // Set the guid of unique handler to the same of original handler, so it can be removed + proxy.guid = fn.guid = fn.guid || jQuery.guid++; + + return proxy; + }, + + now: Date.now, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +// JSHint would error on this code due to the Symbol not being defined in ES5. +// Defining this global in .jshintrc would create a danger of using the global +// unguarded in another place, it seems safer to just disable JSHint for these +// three lines. +/* jshint ignore: start */ +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; +} +/* jshint ignore: end */ + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), +function( i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); +} ); + +function isArrayLike( obj ) { + + // Support: iOS 8.2 (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = jQuery.type( obj ); + + if ( type === "function" || jQuery.isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.2.1 + * http://sizzlejs.com/ + * + * Copyright jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2015-10-17 + */ +(function( window ) { + +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // General-purpose constants + MAX_NEGATIVE = 1 << 31, + + // Instance methods + hasOwn = ({}).hasOwnProperty, + arr = [], + pop = arr.pop, + push_native = arr.push, + push = arr.push, + slice = arr.slice, + // Use a stripped-down indexOf as it's faster than native + // http://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[i] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier + identifier = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), + + rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + rescape = /'|\\/g, + + // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), + funescape = function( _, escaped, escapedWhitespace ) { + var high = "0x" + escaped - 0x10000; + // NaN means non-codepoint + // Support: Firefox<24 + // Workaround erroneous numeric interpretation of +"0x" + return high !== high || escapedWhitespace ? + escaped : + high < 0 ? + // BMP codepoint + String.fromCharCode( high + 0x10000 ) : + // Supplemental Plane codepoint (surrogate pair) + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }; + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + (arr = slice.call( preferredDoc.childNodes )), + preferredDoc.childNodes + ); + // Support: Android<4.0 + // Detect silently failing push.apply + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + push_native.apply( target, slice.call(els) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + // Can't trust NodeList.length + while ( (target[j++] = els[i++]) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, nidselect, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + + if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { + setDocument( context ); + } + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { + + // ID selector + if ( (m = match[1]) ) { + + // Document context + if ( nodeType === 9 ) { + if ( (elem = context.getElementById( m )) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && (elem = newContext.getElementById( m )) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[2] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( (m = match[3]) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !compilerCache[ selector + " " ] && + (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { + + if ( nodeType !== 1 ) { + newContext = context; + newSelector = selector; + + // qSA looks outside Element context, which is not what we want + // Thanks to Andrew Dupont for this workaround technique + // Support: IE <=8 + // Exclude object elements + } else if ( context.nodeName.toLowerCase() !== "object" ) { + + // Capture the context ID, setting it first if necessary + if ( (nid = context.getAttribute( "id" )) ) { + nid = nid.replace( rescape, "\\$&" ); + } else { + context.setAttribute( "id", (nid = expando) ); + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + nidselect = ridentifier.test( nid ) ? "#" + nid : "[id='" + nid + "']"; + while ( i-- ) { + groups[i] = nidselect + " " + toSelector( groups[i] ); + } + newSelector = groups.join( "," ); + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + } + + if ( newSelector ) { + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return (cache[ key + " " ] = value); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created div and expects a boolean result + */ +function assert( fn ) { + var div = document.createElement("div"); + + try { + return !!fn( div ); + } catch (e) { + return false; + } finally { + // Remove from its parent by default + if ( div.parentNode ) { + div.parentNode.removeChild( div ); + } + // release memory in IE + div = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split("|"), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[i] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + ( ~b.sourceIndex || MAX_NEGATIVE ) - + ( ~a.sourceIndex || MAX_NEGATIVE ); + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( (cur = cur.nextSibling) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return (name === "input" || name === "button") && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction(function( argument ) { + argument = +argument; + return markFunction(function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ (j = matchIndexes[i]) ] ) { + seed[j] = !(matches[j] = seed[j]); + } + } + }); + }); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + // documentElement is verified for cases where it doesn't yet exist + // (such as loading iframes in IE - #4833) + var documentElement = elem && (elem.ownerDocument || elem).documentElement; + return documentElement ? documentElement.nodeName !== "HTML" : false; +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, parent, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9-11, Edge + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + if ( (parent = document.defaultView) && parent.top !== parent ) { + // Support: IE 11 + if ( parent.addEventListener ) { + parent.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( parent.attachEvent ) { + parent.attachEvent( "onunload", unloadHandler ); + } + } + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert(function( div ) { + div.className = "i"; + return !div.getAttribute("className"); + }); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert(function( div ) { + div.appendChild( document.createComment("") ); + return !div.getElementsByTagName("*").length; + }); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert(function( div ) { + docElem.appendChild( div ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + }); + + // ID find and filter + if ( support.getById ) { + Expr.find["ID"] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var m = context.getElementById( id ); + return m ? [ m ] : []; + } + }; + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute("id") === attrId; + }; + }; + } else { + // Support: IE6/7 + // getElementById is not reliable as a find shortcut + delete Expr.find["ID"]; + + Expr.filter["ID"] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode("id"); + return node && node.value === attrId; + }; + }; + } + + // Tag + Expr.find["TAG"] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( (elem = results[i++]) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See http://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( (support.qsa = rnative.test( document.querySelectorAll )) ) { + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert(function( div ) { + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // http://bugs.jquery.com/ticket/12359 + docElem.appendChild( div ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( div.querySelectorAll("[msallowcapture^='']").length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !div.querySelectorAll("[selected]").length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !div.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push("~="); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !div.querySelectorAll(":checked").length ) { + rbuggyQSA.push(":checked"); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibing-combinator selector` fails + if ( !div.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push(".#.+[+~]"); + } + }); + + assert(function( div ) { + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement("input"); + input.setAttribute( "type", "hidden" ); + div.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( div.querySelectorAll("[name=d]").length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( !div.querySelectorAll(":enabled").length ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Opera 10-11 does not throw on post-comma invalid pseudos + div.querySelectorAll("*,:x"); + rbuggyQSA.push(",.*:"); + }); + } + + if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector) )) ) { + + assert(function( div ) { + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( div, "div" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( div, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + }); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + )); + } : + function( a, b ) { + if ( b ) { + while ( (b = b.parentNode) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { + + // Choose the first element that is related to our preferred document + if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { + return -1; + } + if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + return a === document ? -1 : + b === document ? 1 : + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( (cur = cur.parentNode) ) { + ap.unshift( cur ); + } + cur = b; + while ( (cur = cur.parentNode) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[i] === bp[i] ) { + i++; + } + + return i ? + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[i], bp[i] ) : + + // Otherwise nodes in our document sort first + ap[i] === preferredDoc ? -1 : + bp[i] === preferredDoc ? 1 : + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + // Make sure that attribute selectors are quoted + expr = expr.replace( rattributeQuotes, "='$1']" ); + + if ( support.matchesSelector && documentIsHTML && + !compilerCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch (e) {} + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + // Set document vars if needed + if ( ( context.ownerDocument || context ) !== document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + // Set document vars if needed + if ( ( elem.ownerDocument || elem ) !== document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + (val = elem.getAttributeNode(name)) && val.specified ? + val.value : + null; +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( (elem = results[i++]) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + // If no nodeType, this is expected to be an array + while ( (node = elem[i++]) ) { + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[1] = match[1].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); + + if ( match[2] === "~=" ) { + match[3] = " " + match[3] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[1] = match[1].toLowerCase(); + + if ( match[1].slice( 0, 3 ) === "nth" ) { + // nth-* requires argument + if ( !match[3] ) { + Sizzle.error( match[0] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); + match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); + + // other types prohibit arguments + } else if ( match[3] ) { + Sizzle.error( match[0] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[6] && match[2]; + + if ( matchExpr["CHILD"].test( match[0] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[3] ) { + match[2] = match[4] || match[5] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + // Get excess from tokenize (recursively) + (excess = tokenize( unquoted, true )) && + // advance to the next closing parenthesis + (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { + + // excess is a negative index + match[0] = match[0].slice( 0, excess ); + match[2] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { return true; } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && + classCache( className, function( elem ) { + return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" ); + }); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + }; + }, + + "CHILD": function( type, what, argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( (node = node[ dir ]) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( (node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + (diff = nodeIndex = 0) || start.pop()) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + // Use previously-cached element index if available + if ( useCache ) { + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + // Use the same loop as above to seek `elem` from the start + while ( (node = ++nodeIndex && node && node[ dir ] || + (diff = nodeIndex = 0) || start.pop()) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || (node[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + (outerCache[ node.uniqueID ] = {}); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction(function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[i] ); + seed[ idx ] = !( matches[ idx ] = matched[i] ); + } + }) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + // Potentially complex pseudos + "not": markFunction(function( selector ) { + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction(function( seed, matches, context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( (elem = unmatched[i]) ) { + seed[i] = !(matches[i] = elem); + } + } + }) : + function( elem, context, xml ) { + input[0] = elem; + matcher( input, null, xml, results ); + // Don't keep the element (issue #299) + input[0] = null; + return !results.pop(); + }; + }), + + "has": markFunction(function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + }), + + "contains": markFunction(function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; + }; + }), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + // lang value must be a valid identifier + if ( !ridentifier.test(lang || "") ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( (elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); + return false; + }; + }), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); + }, + + // Boolean properties + "enabled": function( elem ) { + return elem.disabled === false; + }, + + "disabled": function( elem ) { + return elem.disabled === true; + }, + + "checked": function( elem ) { + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); + }, + + "selected": function( elem ) { + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos["empty"]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo(function() { + return [ 0 ]; + }), + + "last": createPositionalPseudo(function( matchIndexes, length ) { + return [ length - 1 ]; + }), + + "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + }), + + "even": createPositionalPseudo(function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "odd": createPositionalPseudo(function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }) + } +}; + +Expr.pseudos["nth"] = Expr.pseudos["eq"]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || (match = rcomma.exec( soFar )) ) { + if ( match ) { + // Don't consume trailing commas as valid + soFar = soFar.slice( match[0].length ) || soFar; + } + groups.push( (tokens = []) ); + } + + matched = false; + + // Combinators + if ( (match = rcombinators.exec( soFar )) ) { + matched = match.shift(); + tokens.push({ + value: matched, + // Cast descendant combinators to space + type: match[0].replace( rtrim, " " ) + }); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || + (match = preFilters[ type ]( match ))) ) { + matched = match.shift(); + tokens.push({ + value: matched, + type: type, + matches: match + }); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[i].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + checkNonElements = base && dir === "parentNode", + doneName = done++; + + return combinator.first ? + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( (elem = elem[ dir ]) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || (elem[ expando ] = {}); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {}); + + if ( (oldCache = uniqueCache[ dir ]) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return (newCache[ 2 ] = oldCache[ 2 ]); + } else { + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ dir ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { + return true; + } + } + } + } + } + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[i]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[0]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[i], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( (elem = unmatched[i]) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction(function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( (elem = temp[i]) ) { + matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) ) { + // Restore matcherIn since elem is not yet a final match + temp.push( (matcherIn[i] = elem) ); + } + } + postFinder( null, (matcherOut = []), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) && + (temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) { + + seed[temp] = !(results[temp] = elem); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + }); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[0].type ], + implicitRelative = leadingRelative || Expr.relative[" "], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + (checkContext = context).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( (matcher = Expr.relative[ tokens[i].type ]) ) { + matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; + } else { + matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[j].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), + len = elems.length; + + if ( outermost ) { + outermostContext = context === document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && (elem = elems[i]) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + if ( !context && elem.ownerDocument !== document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( (matcher = elementMatchers[j++]) ) { + if ( matcher( elem, context || document, xml) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + // They will have gone through all possible matchers + if ( (elem = !matcher && elem) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( (matcher = setMatchers[j++]) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !(unmatched[i] || setMatched[i]) ) { + setMatched[i] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[i] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( (selector = compiled.selector || selector) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[0] = match[0].slice( 0 ); + if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && + support.getById && context.nodeType === 9 && documentIsHTML && + Expr.relative[ tokens[1].type ] ) { + + context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[i]; + + // Abort if we hit a combinator + if ( Expr.relative[ (type = token.type) ] ) { + break; + } + if ( (find = Expr.find[ type ]) ) { + // Search, expanding context for leading sibling combinators + if ( (seed = find( + token.matches[0].replace( runescape, funescape ), + rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context + )) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert(function( div1 ) { + // Should return 1, but returns 4 (following) + return div1.compareDocumentPosition( document.createElement("div") ) & 1; +}); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert(function( div ) { + div.innerHTML = ""; + return div.firstChild.getAttribute("href") === "#" ; +}) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + }); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert(function( div ) { + div.innerHTML = ""; + div.firstChild.setAttribute( "value", "" ); + return div.firstChild.getAttribute( "value" ) === ""; +}) ) { + addHandle( "value", function( elem, name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + }); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert(function( div ) { + return div.getAttribute("disabled") == null; +}) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + (val = elem.getAttributeNode( name )) && val.specified ? + val.value : + null; + } + }); +} + +return Sizzle; + +})( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + +var rsingleTag = ( /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/ ); + + + +var risSimple = /^.[^:#\[\.,]*$/; + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( jQuery.isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + /* jshint -W018 */ + return !!qualifier.call( elem, i, elem ) !== not; + } ); + + } + + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + + } + + if ( typeof qualifier === "string" ) { + if ( risSimple.test( qualifier ) ) { + return jQuery.filter( qualifier, elements, not ); + } + + qualifier = jQuery.filter( qualifier, elements ); + } + + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not; + } ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + return elems.length === 1 && elem.nodeType === 1 ? + jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : + jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, + len = this.length, + ret = [], + self = this; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + // Needed because $( selector, context ) becomes $( context ).find( selector ) + ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret ); + ret.selector = this.selector ? this.selector + " " + selector : selector; + return ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Method init() accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector[ 0 ] === "<" && + selector[ selector.length - 1 ] === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // Option to run scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( jQuery.isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + // Support: Blackberry 4.6 + // gEBID returns nodes no longer in the document (#6963) + if ( elem && elem.parentNode ) { + + // Inject the element directly into the jQuery object + this.length = 1; + this[ 0 ] = elem; + } + + this.context = document; + this.selector = selector; + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this.context = this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( jQuery.isFunction( selector ) ) { + return root.ready !== undefined ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + if ( selector.selector !== undefined ) { + this.selector = selector.selector; + this.context = selector.context; + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // Methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var targets = jQuery( target, this ), + l = targets.length; + + return this.filter( function() { + var i = 0; + for ( ; i < l; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? + jQuery( selectors, context || this.context ) : + 0; + + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( pos ? + pos.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within the set + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // Index in selector + if ( typeof elem === "string" ) { + return indexOf.call( jQuery( elem ), this[ 0 ] ); + } + + // Locate the position of the desired element + return indexOf.call( this, + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem + ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + return elem.contentDocument || jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var matched = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + matched = jQuery.filter( selector, matched ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + jQuery.uniqueSort( matched ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + matched.reverse(); + } + } + + return this.pushStack( matched ); + }; +} ); +var rnotwhite = ( /\S+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( jQuery.isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = queue = []; + if ( !memory ) { + list = memory = ""; + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, listener list, final state + [ "resolve", "done", jQuery.Callbacks( "once memory" ), "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), "rejected" ], + [ "notify", "progress", jQuery.Callbacks( "memory" ) ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + then: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( i, tuple ) { + var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; + + // deferred[ done | fail | progress ] for forwarding actions to newDefer + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && jQuery.isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this === promise ? newDefer.promise() : this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Keep pipe for back-compat + promise.pipe = promise.then; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 3 ]; + + // promise[ done | fail | progress ] = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( function() { + + // state = [ resolved | rejected ] + state = stateString; + + // [ reject_list | resolve_list ].disable; progress_list.lock + }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); + } + + // deferred[ resolve | reject | notify ] + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? promise : this, arguments ); + return this; + }; + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( subordinate /* , ..., subordinateN */ ) { + var i = 0, + resolveValues = slice.call( arguments ), + length = resolveValues.length, + + // the count of uncompleted subordinates + remaining = length !== 1 || + ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, + + // the master Deferred. + // If resolveValues consist of only a single Deferred, just use that. + deferred = remaining === 1 ? subordinate : jQuery.Deferred(), + + // Update function for both resolve and progress values + updateFunc = function( i, contexts, values ) { + return function( value ) { + contexts[ i ] = this; + values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( values === progressValues ) { + deferred.notifyWith( contexts, values ); + } else if ( !( --remaining ) ) { + deferred.resolveWith( contexts, values ); + } + }; + }, + + progressValues, progressContexts, resolveContexts; + + // Add listeners to Deferred subordinates; treat others as resolved + if ( length > 1 ) { + progressValues = new Array( length ); + progressContexts = new Array( length ); + resolveContexts = new Array( length ); + for ( ; i < length; i++ ) { + if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { + resolveValues[ i ].promise() + .progress( updateFunc( i, progressContexts, progressValues ) ) + .done( updateFunc( i, resolveContexts, resolveValues ) ) + .fail( deferred.reject ); + } else { + --remaining; + } + } + } + + // If we're not waiting on anything, resolve the master + if ( !remaining ) { + deferred.resolveWith( resolveContexts, resolveValues ); + } + + return deferred.promise(); + } +} ); + + +// The deferred used on DOM ready +var readyList; + +jQuery.fn.ready = function( fn ) { + + // Add the callback + jQuery.ready.promise().done( fn ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Hold (or release) the ready event + holdReady: function( hold ) { + if ( hold ) { + jQuery.readyWait++; + } else { + jQuery.ready( true ); + } + }, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + + // Trigger any bound ready events + if ( jQuery.fn.triggerHandler ) { + jQuery( document ).triggerHandler( "ready" ); + jQuery( document ).off( "ready" ); + } + } +} ); + +/** + * The ready event handler and self cleanup method + */ +function completed() { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + jQuery.ready(); +} + +jQuery.ready.promise = function( obj ) { + if ( !readyList ) { + + readyList = jQuery.Deferred(); + + // Catch cases where $(document).ready() is called + // after the browser event has already occurred. + // Support: IE9-10 only + // Older IE sometimes signals "interactive" too soon + if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + + } else { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); + } + } + return readyList.promise( obj ); +}; + +// Kick off the DOM ready check even if the user does not +jQuery.ready.promise(); + + + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + len = elems.length, + bulk = key == null; + + // Sets many values + if ( jQuery.type( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !jQuery.isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < len; i++ ) { + fn( + elems[ i ], key, raw ? + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + return chainable ? + elems : + + // Gets + bulk ? + fn.call( elems ) : + len ? fn( elems[ 0 ], key ) : emptyGet; +}; +var acceptData = function( owner ) { + + // Accepts only: + // - Node + // - Node.ELEMENT_NODE + // - Node.DOCUMENT_NODE + // - Object + // - Any + /* jshint -W018 */ + return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); +}; + + + + +function Data() { + this.expando = jQuery.expando + Data.uid++; +} + +Data.uid = 1; + +Data.prototype = { + + register: function( owner, initial ) { + var value = initial || {}; + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable, non-writable property + // configurability must be true to allow the property to be + // deleted with the delete operator + } else { + Object.defineProperty( owner, this.expando, { + value: value, + writable: true, + configurable: true + } ); + } + return owner[ this.expando ]; + }, + cache: function( owner ) { + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( !acceptData( owner ) ) { + return {}; + } + + // Check if the owner object already has a cache + var value = owner[ this.expando ]; + + // If not, create one + if ( !value ) { + value = {}; + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( acceptData( owner ) ) { + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable property + // configurable must be true to allow the property to be + // deleted when data is removed + } else { + Object.defineProperty( owner, this.expando, { + value: value, + configurable: true + } ); + } + } + } + + return value; + }, + set: function( owner, data, value ) { + var prop, + cache = this.cache( owner ); + + // Handle: [ owner, key, value ] args + if ( typeof data === "string" ) { + cache[ data ] = value; + + // Handle: [ owner, { properties } ] args + } else { + + // Copy the properties one-by-one to the cache object + for ( prop in data ) { + cache[ prop ] = data[ prop ]; + } + } + return cache; + }, + get: function( owner, key ) { + return key === undefined ? + this.cache( owner ) : + owner[ this.expando ] && owner[ this.expando ][ key ]; + }, + access: function( owner, key, value ) { + var stored; + + // In cases where either: + // + // 1. No key was specified + // 2. A string key was specified, but no value provided + // + // Take the "read" path and allow the get method to determine + // which value to return, respectively either: + // + // 1. The entire cache object + // 2. The data stored at the key + // + if ( key === undefined || + ( ( key && typeof key === "string" ) && value === undefined ) ) { + + stored = this.get( owner, key ); + + return stored !== undefined ? + stored : this.get( owner, jQuery.camelCase( key ) ); + } + + // When the key is not a string, or both a key and value + // are specified, set or core (existing objects) with either: + // + // 1. An object of properties + // 2. A key and value + // + this.set( owner, key, value ); + + // Since the "set" path can have two possible entry points + // return the expected data based on which path was taken[*] + return value !== undefined ? value : key; + }, + remove: function( owner, key ) { + var i, name, camel, + cache = owner[ this.expando ]; + + if ( cache === undefined ) { + return; + } + + if ( key === undefined ) { + this.register( owner ); + + } else { + + // Support array or space separated string of keys + if ( jQuery.isArray( key ) ) { + + // If "name" is an array of keys... + // When data is initially created, via ("key", "val") signature, + // keys will be converted to camelCase. + // Since there is no way to tell _how_ a key was added, remove + // both plain key and camelCase key. #12786 + // This will only penalize the array argument path. + name = key.concat( key.map( jQuery.camelCase ) ); + } else { + camel = jQuery.camelCase( key ); + + // Try the string as a key before any manipulation + if ( key in cache ) { + name = [ key, camel ]; + } else { + + // If a key with the spaces exists, use it. + // Otherwise, create an array by matching non-whitespace + name = camel; + name = name in cache ? + [ name ] : ( name.match( rnotwhite ) || [] ); + } + } + + i = name.length; + + while ( i-- ) { + delete cache[ name[ i ] ]; + } + } + + // Remove the expando if there's no more data + if ( key === undefined || jQuery.isEmptyObject( cache ) ) { + + // Support: Chrome <= 35-45+ + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://code.google.com/p/chromium/issues/detail?id=378607 + if ( owner.nodeType ) { + owner[ this.expando ] = undefined; + } else { + delete owner[ this.expando ]; + } + } + }, + hasData: function( owner ) { + var cache = owner[ this.expando ]; + return cache !== undefined && !jQuery.isEmptyObject( cache ); + } +}; +var dataPriv = new Data(); + +var dataUser = new Data(); + + + +// Implementation Summary +// +// 1. Enforce API surface and semantic compatibility with 1.9.x branch +// 2. Improve the module's maintainability by reducing the storage +// paths to a single mechanism. +// 3. Use the same single mechanism to support "private" and "user" data. +// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) +// 5. Avoid exposing implementation details on user objects (eg. expando properties) +// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /[A-Z]/g; + +function dataAttr( elem, key, data ) { + var name; + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = data === "true" ? true : + data === "false" ? false : + data === "null" ? null : + + // Only convert to a number if it doesn't change the string + +data + "" === data ? +data : + rbrace.test( data ) ? jQuery.parseJSON( data ) : + data; + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + dataUser.set( elem, key, data ); + } else { + data = undefined; + } + } + return data; +} + +jQuery.extend( { + hasData: function( elem ) { + return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + }, + + data: function( elem, name, data ) { + return dataUser.access( elem, name, data ); + }, + + removeData: function( elem, name ) { + dataUser.remove( elem, name ); + }, + + // TODO: Now that all calls to _data and _removeData have been replaced + // with direct calls to dataPriv methods, these can be deprecated. + _data: function( elem, name, data ) { + return dataPriv.access( elem, name, data ); + }, + + _removeData: function( elem, name ) { + dataPriv.remove( elem, name ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = dataUser.get( elem ); + + if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE11+ + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = jQuery.camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + dataPriv.set( elem, "hasDataAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + dataUser.set( this, key ); + } ); + } + + return access( this, function( value ) { + var data, camelKey; + + // The calling jQuery object (element matches) is not empty + // (and therefore has an element appears at this[ 0 ]) and the + // `value` parameter was not undefined. An empty jQuery object + // will result in `undefined` for elem = this[ 0 ] which will + // throw an exception if an attempt to read a data cache is made. + if ( elem && value === undefined ) { + + // Attempt to get data from the cache + // with the key as-is + data = dataUser.get( elem, key ) || + + // Try to find dashed key if it exists (gh-2779) + // This is for 2.2.x only + dataUser.get( elem, key.replace( rmultiDash, "-$&" ).toLowerCase() ); + + if ( data !== undefined ) { + return data; + } + + camelKey = jQuery.camelCase( key ); + + // Attempt to get data from the cache + // with the key camelized + data = dataUser.get( elem, camelKey ); + if ( data !== undefined ) { + return data; + } + + // Attempt to "discover" the data in + // HTML5 custom data-* attrs + data = dataAttr( elem, camelKey, undefined ); + if ( data !== undefined ) { + return data; + } + + // We tried really hard, but the data doesn't exist. + return; + } + + // Set the data... + camelKey = jQuery.camelCase( key ); + this.each( function() { + + // First, attempt to store a copy or reference of any + // data that might've been store with a camelCased key. + var data = dataUser.get( this, camelKey ); + + // For HTML5 data-* attribute interop, we have to + // store property names with dashes in a camelCase form. + // This might not apply to all properties...* + dataUser.set( this, camelKey, value ); + + // *... In the case of properties that might _actually_ + // have dashes, we need to also store a copy of that + // unchanged property. + if ( key.indexOf( "-" ) > -1 && data !== undefined ) { + dataUser.set( this, key, value ); + } + } ); + }, null, value, arguments.length > 1, null, true ); + }, + + removeData: function( key ) { + return this.each( function() { + dataUser.remove( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = dataPriv.get( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || jQuery.isArray( data ) ) { + queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // Clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // Not public - generate a queueHooks object, or return the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + dataPriv.remove( elem, [ type + "queue", key ] ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // Ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var isHidden = function( elem, el ) { + + // isHidden might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + return jQuery.css( elem, "display" ) === "none" || + !jQuery.contains( elem.ownerDocument, elem ); + }; + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, + scale = 1, + maxIterations = 20, + currentValue = tween ? + function() { return tween.cur(); } : + function() { return jQuery.css( elem, prop, "" ); }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + do { + + // If previous iteration zeroed out, double until we get *something*. + // Use string for doubling so we don't accidentally see scale as unchanged below + scale = scale || ".5"; + + // Adjust and apply + initialInUnit = initialInUnit / scale; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Update scale, tolerating zero or NaN from tween.cur() + // Break the loop if scale is unchanged or perfect, or if we've just had enough. + } while ( + scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations + ); + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([\w:-]+)/ ); + +var rscriptType = ( /^$|\/(?:java|ecma)script/i ); + + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // Support: IE9 + option: [ 1, "" ], + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting or other required elements. + thead: [ 1, "", "
" ], + col: [ 2, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + _default: [ 0, "", "" ] +}; + +// Support: IE9 +wrapMap.optgroup = wrapMap.option; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + + +function getAll( context, tag ) { + + // Support: IE9-11+ + // Use typeof to avoid zero-argument method invocation on host objects (#15151) + var ret = typeof context.getElementsByTagName !== "undefined" ? + context.getElementsByTagName( tag || "*" ) : + typeof context.querySelectorAll !== "undefined" ? + context.querySelectorAll( tag || "*" ) : + []; + + return tag === undefined || tag && jQuery.nodeName( context, tag ) ? + jQuery.merge( [ context ], ret ) : + ret; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + dataPriv.set( + elems[ i ], + "globalEval", + !refElements || dataPriv.get( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/; + +function buildFragment( elems, context, scripts, selection, ignored ) { + var elem, tmp, tag, wrap, contains, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + elem = elems[ i ]; + + if ( elem || elem === 0 ) { + + // Add nodes directly + if ( jQuery.type( elem ) === "object" ) { + + // Support: Android<4.1, PhantomJS<2 + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); + + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); + + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); + + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; + + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; + } + + // Support: Android<4.1, PhantomJS<2 + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); + + // Remember the top-level container + tmp = fragment.firstChild; + + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } + } + } + + // Remove wrapper from fragment + fragment.textContent = ""; + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + continue; + } + + contains = jQuery.contains( elem.ownerDocument, elem ); + + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( contains ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + return fragment; +} + + +( function() { + var fragment = document.createDocumentFragment(), + div = fragment.appendChild( document.createElement( "div" ) ), + input = document.createElement( "input" ); + + // Support: Android 4.0-4.3, Safari<=5.1 + // Check state lost if the name is set (#11217) + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Safari<=5.1, Android<4.2 + // Older WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE<=11+ + // Make sure textarea (and checkbox) defaultValue is properly cloned + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; +} )(); + + +var + rkeyEvent = /^key/, + rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, + rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE9 +// See #13393 for more info +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + + var handleObjIn, eventHandle, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.get( elem ); + + // Don't attach events to noData or text/comment nodes (but allow plain objects) + if ( !elemData ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = {}; + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + jQuery.event.dispatch.apply( elem, arguments ) : undefined; + }; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnotwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var j, origCount, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnotwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove data and the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + dataPriv.remove( elem, "handle events" ); + } + }, + + dispatch: function( event ) { + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( event ); + + var i, j, ret, matched, handleObj, + handlerQueue = [], + args = slice.call( arguments ), + handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // Triggered event must either 1) have no namespace, or 2) have namespace(s) + // a subset or equal to those in the bound event (both can have no namespace). + if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, matches, sel, handleObj, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Support (at least): Chrome, IE9 + // Find delegate handlers + // Black-hole SVG instance trees (#13180) + // + // Support: Firefox<=42+ + // Avoid non-left-click in FF but don't block IE radio events (#3861, gh-2343) + if ( delegateCount && cur.nodeType && + ( event.type !== "click" || isNaN( event.button ) || event.button < 1 ) ) { + + for ( ; cur !== this; cur = cur.parentNode || this ) { + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && ( cur.disabled !== true || event.type !== "click" ) ) { + matches = []; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matches[ sel ] === undefined ) { + matches[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matches[ sel ] ) { + matches.push( handleObj ); + } + } + if ( matches.length ) { + handlerQueue.push( { elem: cur, handlers: matches } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: this, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + // Includes some event props shared by KeyEvent and MouseEvent + props: ( "altKey bubbles cancelable ctrlKey currentTarget detail eventPhase " + + "metaKey relatedTarget shiftKey target timeStamp view which" ).split( " " ), + + fixHooks: {}, + + keyHooks: { + props: "char charCode key keyCode".split( " " ), + filter: function( event, original ) { + + // Add which for key events + if ( event.which == null ) { + event.which = original.charCode != null ? original.charCode : original.keyCode; + } + + return event; + } + }, + + mouseHooks: { + props: ( "button buttons clientX clientY offsetX offsetY pageX pageY " + + "screenX screenY toElement" ).split( " " ), + filter: function( event, original ) { + var eventDoc, doc, body, + button = original.button; + + // Calculate pageX/Y if missing and clientX/Y available + if ( event.pageX == null && original.clientX != null ) { + eventDoc = event.target.ownerDocument || document; + doc = eventDoc.documentElement; + body = eventDoc.body; + + event.pageX = original.clientX + + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - + ( doc && doc.clientLeft || body && body.clientLeft || 0 ); + event.pageY = original.clientY + + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - + ( doc && doc.clientTop || body && body.clientTop || 0 ); + } + + // Add which for click: 1 === left; 2 === middle; 3 === right + // Note: button is not normalized, so don't use it + if ( !event.which && button !== undefined ) { + event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); + } + + return event; + } + }, + + fix: function( event ) { + if ( event[ jQuery.expando ] ) { + return event; + } + + // Create a writable copy of the event object and normalize some properties + var i, prop, copy, + type = event.type, + originalEvent = event, + fixHook = this.fixHooks[ type ]; + + if ( !fixHook ) { + this.fixHooks[ type ] = fixHook = + rmouseEvent.test( type ) ? this.mouseHooks : + rkeyEvent.test( type ) ? this.keyHooks : + {}; + } + copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; + + event = new jQuery.Event( originalEvent ); + + i = copy.length; + while ( i-- ) { + prop = copy[ i ]; + event[ prop ] = originalEvent[ prop ]; + } + + // Support: Cordova 2.5 (WebKit) (#13255) + // All events should have a target; Cordova deviceready doesn't + if ( !event.target ) { + event.target = document; + } + + // Support: Safari 6.0+, Chrome<28 + // Target should not be a text node (#504, #13143) + if ( event.target.nodeType === 3 ) { + event.target = event.target.parentNode; + } + + return fixHook.filter ? fixHook.filter( event, originalEvent ) : event; + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + focus: { + + // Fire native event if possible so blur/focus sequence is correct + trigger: function() { + if ( this !== safeActiveElement() && this.focus ) { + this.focus(); + return false; + } + }, + delegateType: "focusin" + }, + blur: { + trigger: function() { + if ( this === safeActiveElement() && this.blur ) { + this.blur(); + return false; + } + }, + delegateType: "focusout" + }, + click: { + + // For checkbox, fire native event so checked state will be right + trigger: function() { + if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) { + this.click(); + return false; + } + }, + + // For cross-browser consistency, don't fire native .click() on links + _default: function( event ) { + return jQuery.nodeName( event.target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + } +}; + +jQuery.removeEvent = function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } +}; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: Android<4.0 + src.returnValue === false ? + returnTrue : + returnFalse; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || jQuery.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + isSimulated: false, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + + if ( e && !this.isSimulated ) { + e.preventDefault(); + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopPropagation(); + } + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://code.google.com/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +jQuery.fn.extend( { + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + } +} ); + + +var + rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, + + // Support: IE 10-11, Edge 10240+ + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g; + +// Manipulating tables requires a tbody +function manipulationTarget( elem, content ) { + return jQuery.nodeName( elem, "table" ) && + jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? + + elem.getElementsByTagName( "tbody" )[ 0 ] || + elem.appendChild( elem.ownerDocument.createElement( "tbody" ) ) : + elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + var match = rscriptTypeMasked.exec( elem.type ); + + if ( match ) { + elem.type = match[ 1 ]; + } else { + elem.removeAttribute( "type" ); + } + + return elem; +} + +function cloneCopyEvent( src, dest ) { + var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; + + if ( dest.nodeType !== 1 ) { + return; + } + + // 1. Copy private data: events, handlers, etc. + if ( dataPriv.hasData( src ) ) { + pdataOld = dataPriv.access( src ); + pdataCur = dataPriv.set( dest, pdataOld ); + events = pdataOld.events; + + if ( events ) { + delete pdataCur.handle; + pdataCur.events = {}; + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + } + + // 2. Copy user data + if ( dataUser.hasData( src ) ) { + udataOld = dataUser.access( src ); + udataCur = jQuery.extend( {}, udataOld ); + + dataUser.set( dest, udataCur ); + } +} + +// Fix IE bugs, see support tests +function fixInput( src, dest ) { + var nodeName = dest.nodeName.toLowerCase(); + + // Fails to persist the checked state of a cloned checkbox or radio button. + if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + dest.checked = src.checked; + + // Fails to return the selected option to the default selected state when cloning options + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = concat.apply( [], args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + isFunction = jQuery.isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( isFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( isFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android<4.1, PhantomJS<2 + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !dataPriv.access( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl ) { + jQuery._evalUrl( node.src ); + } + } else { + jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) ); + } + } + } + } + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + nodes = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = nodes[ i ] ) != null; i++ ) { + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html.replace( rxhtmlTag, "<$1>" ); + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = jQuery.contains( elem.ownerDocument, elem ); + + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + // Return the cloned set + return clone; + }, + + cleanData: function( elems ) { + var data, elem, type, + special = jQuery.event.special, + i = 0; + + for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { + if ( acceptData( elem ) ) { + if ( ( data = elem[ dataPriv.expando ] ) ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Support: Chrome <= 35-45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataPriv.expando ] = undefined; + } + if ( elem[ dataUser.expando ] ) { + + // Support: Chrome <= 35-45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataUser.expando ] = undefined; + } + } + } + } +} ); + +jQuery.fn.extend( { + + // Keep domManip exposed until 3.0 (gh-2225) + domManip: domManip, + + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().each( function() { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + this.textContent = value; + } + } ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + if ( elem.nodeType === 1 ) { + + // Prevent memory leaks + jQuery.cleanData( getAll( elem, false ) ); + + // Remove any remaining nodes + elem.textContent = ""; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined && elem.nodeType === 1 ) { + return elem.innerHTML; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + elem = this[ i ] || {}; + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1, + i = 0; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Support: QtWebKit + // .get() because push.apply(_, arraylike) throws + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); + + +var iframe, + elemdisplay = { + + // Support: Firefox + // We have to pre-define these values for FF (#10227) + HTML: "block", + BODY: "block" + }; + +/** + * Retrieve the actual display of a element + * @param {String} name nodeName of the element + * @param {Object} doc Document object + */ + +// Called only from within defaultDisplay +function actualDisplay( name, doc ) { + var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), + + display = jQuery.css( elem[ 0 ], "display" ); + + // We don't have any data stored on the element, + // so use "detach" method as fast way to get rid of the element + elem.detach(); + + return display; +} + +/** + * Try to determine the default display value of an element + * @param {String} nodeName + */ +function defaultDisplay( nodeName ) { + var doc = document, + display = elemdisplay[ nodeName ]; + + if ( !display ) { + display = actualDisplay( nodeName, doc ); + + // If the simple way fails, read from inside an iframe + if ( display === "none" || !display ) { + + // Use the already-created iframe if possible + iframe = ( iframe || jQuery( "';break;case 3:delete a.title,delete a.closeBtn,-1===a.icon&&a.icon,h.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||h.closeAll("tips")}n.vessel(s,function(e,t,i){l.append(e[0]),s?2==a.type||4==a.type?m("body").append(e[1]):r.parents("."+d[0])[0]||(r.data("display",r.css("display")).show().addClass("layui-layer-wrap").wrap(e[1]),m("#"+d[0]+o).find("."+d[5]).before(t)):l.append(e[1]),m("#"+d.MOVE)[0]||l.append(f.moveElem=i),n.layero=m("#"+d[0]+o),n.shadeo=m("#"+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==h.ie&&n.layero.find("iframe").attr("src",r[0]),4==a.type?n.tips():(n.offset(),parseInt(f.getStyle(document.getElementById(d.MOVE),"z-index"))||(n.layero.css("visibility","hidden"),h.ready(function(){n.offset(),n.layero.css("visibility","visible")}))),!a.fixed||f.events.resize[n.index]||(f.events.resize[n.index]=function(){n.resize()},c.on("resize",f.events.resize[n.index])),a.time<=0||setTimeout(function(){h.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(){m(this).removeClass(e)})),a.isOutAnim&&n.layero.data("isOutAnim",!0)}},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("#"+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()),"min"===i.data("maxminStatus")&&(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=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(){0c.width()&&(a=c.width()-180-(f.minStackArr.edgeIndex=f.minStackArr.edgeIndex||0,f.minStackArr.edgeIndex+=3))<0&&(a=0),t.minStack&&(s.left=a,s.top=c.height()-i,n||f.minStackIndex++,l.attr("minLeft",a)),l.attr("position",o),h.style(e,s,!0),l.find(".layui-layer-min").hide(),"page"===l.attr("type")&&l.find(d[4]).hide(),f.rescollbar(e),r.hide())},h.restore=function(e){var t=m("#"+d[0]+e),i=m("#"+d.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(d[4]).show(),f.rescollbar(e),i.show()},h.full=function(t){var i=m("#"+d[0]+t),e=i.data("maxminStatus");"max"!==e&&("min"===e&&h.restore(t),i.data("maxminStatus","max"),f.record(i),d.html.attr("layer-full")||d.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:c.scrollTop(),left:e?0:c.scrollLeft(),width:"100%",height:"100%"},!0),i.find(".layui-layer-min").hide()},100))},h.title=function(e,t){m("#"+d[0]+(t||h.index)).find(d[1]).html(e)},h.close=function(a,o){var e,s,t,l=(e=m("."+d[0]).find("#"+a).closest("."+d[0]))[0]?(a=e.attr("times"),e):m("#"+d[0]+a),r=l.attr("type");l[0]&&(s="layui-layer-wrap",t=function(){if(r===f.type[1]&&"object"===l.attr("conType")){l.children(":not(."+d[5]+")").remove();for(var e=l.find("."+s),t=0;t<2;t++)e.unwrap();e.css("display",e.data("display")).removeClass(s)}else{if(r===f.type[2])try{var i=m("#"+d[4]+a)[0];i.contentWindow.document.write(""),i.contentWindow.close(),l.find("."+d[5])[0].removeChild(i)}catch(n){}l[0].innerHTML="",l.remove()}"function"==typeof f.end[a]&&f.end[a](),delete f.end[a],"function"==typeof o&&o(),f.events.resize[a]&&(c.off("resize",f.events.resize[a]),delete f.events.resize[a])},l.data("isOutAnim")&&l.addClass("layer-anim layer-anim-close"),m("#layui-layer-moves, #"+d.SHADE+a).remove(),6==h.ie&&f.reselect(),f.rescollbar(a),"string"==typeof l.attr("minLeft")&&(f.minStackIndex--,f.minStackArr.push(l.attr("minLeft"))),h.ie&&h.ie<10||!l.data("isOutAnim")?t():setTimeout(function(){t()},200))},h.closeAll=function(n,a){"function"==typeof n&&(a=n,n=null);var o=m("."+d[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:c.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("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&&(e[0]>t[0]||e[1]>t[1])&&((t=[e[0]/t[0],e[1]/t[1]])[1]'+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||"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."+f,V=function(e){var i=this;i.index=++p.index,i.config=u.extend({},i.config,p.config,e),i.init()};V.prototype.config={trigger:"click",content:"",className:"",style:"",show:!1,isAllowSpread:!0,isSpreadItem:!0,data:[],delay:300,shade:0},V.prototype.reload=function(e){var i=this;i.config=u.extend({},i.config,e),i.init(!0)},V.prototype.init=function(e){var i=this,t=i.config,n=t.elem=u(t.elem);return 1",(t="href"in i?''+l+"":l,n?'
    '+t+("parent"===o?'':"group"===o&&d.isAllowSpread?'':"")+"
    ":'
    '+t+"
    "),"
  • "].join(""))).data("item",i),n&&(a=u('
    '),t=u("
      "),"parent"===o?(a.append(s(t,i.child)),l.append(a)):l.append(s(t,i.child))),r.append(l))}),r},t=['
      ',"
      "].join("");!(e="contextmenu"!==d.trigger&&!lay.isTopElem(d.elem[0])?e:!0)&&d.elem.data(c+"_opened")||(l.elemView=u(t),l.elemView.append(d.content||(e=u('
        '),0no menu'),e)),d.className&&l.elemView.addClass(d.className),d.style&&l.elemView.attr("style",d.style),p.thisId=d.id,l.remove(),i.append(l.elemView),d.elem.data(c+"_opened",!0),t=d.shade?'
        ':"",l.elemView.before(t),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=u(this),t=i.data("item")||{},n=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=u(this).children("."+w);i.removeClass(C),i.css("margin-top",0)}),p.reload=function(e,i){e=y.getThis(e);return e?(e.reload(i),y.call(e)):this},p.render=function(e){e=new V(e);return y.call(e)},e(r,p)});layui.define("jquery",function(e){"use strict";var g=layui.$,t={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,a,e,i)}},a="slider",c="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=++t.index,i.config=g.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=g(l.elem),s=t.next(".layui-slider");if(s[0]&&s.remove(),n.elemTemp=g(i),l.range?(n.elemTemp.find("."+b).eq(0).data("value",l.value[0]),n.elemTemp.find("."+b).eq(1).data("value",l.value[1])):n.elemTemp.find("."+b).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=g('
        '),t.css("position","relative"),t.append(e),t.find("."+M).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("."+T).addClass(c)):n.slide(),n.elemTemp.find("."+T).on("mouseover",function(){var e="vertical"===l.type?l.height:n.elemTemp[0].offsetWidth,i=n.elemTemp.find("."+b),t=("vertical"===l.type?e-g(this).parent()[0].offsetTop-i.height():g(this).parent()[0].offsetLeft)/e*100,i=g(this).parent().data("value"),e=l.setTips?l.setTips(i):i;n.elemTemp.find("."+w).html(e),clearTimeout(a),a=setTimeout(function(){"vertical"===l.type?n.elemTemp.find("."+w).css({bottom:t+"%","margin-bottom":"20px",display:"inline-block"}):n.elemTemp.find("."+w).css({left:t+"%",display:"inline-block"})},300)}).on("mouseout",function(){clearTimeout(a),n.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},t.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: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=T(L(t)),o=o.attr("lay-type"),i.select(e.h,e.s,e.b),"torgb"===o&&r.find("input").val(t),"rgba"===o&&(e=L(t),3===(t.match(/[0-9]{1,3}/g)||[]).length?(r.find("input").val("rgba("+e.r+", "+e.g+", "+e.b+", 1)"),i.elemPicker.find("."+E).css("left",280)):(r.find("input").val(t),o=280*t.slice(t.lastIndexOf(",")+1,t.length-1),i.elemPicker.find("."+E).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("."+E).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("."+w),d=n.elemPicker.find("."+I),r=n.elemPicker.find("."+F),f=n.elemPicker.find("."+D),u=n.elemPicker.find("."+E),g=e[0].offsetTop/180*360,h=100-(r[0].offsetTop+3)/180*100,p=(r[0].offsetLeft+3)/260*100,v=Math.round(u[0].offsetLeft/280*100)/100,b=n.elemColorBox.find("."+B),i=n.elemPicker.find(".layui-colorpicker-pre").children("div"),y=function(e,i,o,r){n.select(e,i,o);var t=Y({h:e,s:i,b:o}),e=j({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,p,h,v),e.preventDefault()}),e.preventDefault()}),s.on("click",function(e){var i=e.clientY-m(this).offset().top,i=(i=(i=i<0?0:i)>this.offsetHeight?this.offsetHeight:i)/180*360;y(g=i,p,h,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,p=t,h=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,p=o,h=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,p,h,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,p,h,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=T(L(e)),o=e.slice(e.lastIndexOf(",")+1,e.length-1);g=i.h,p=i.s,h=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=j({h:e,s:100,b:100}),e=(j({h:e,s:i,b:o}),e/360*180),o=180-o/100*180-3,i=i/100*260-3;this.elemPicker.find("."+w).css("top",e),this.elemPicker.find("."+I)[0].style.background="#"+t,this.elemPicker.find("."+F).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("."+B).removeClass(x).addClass(P),c.color="",a.done&&a.done(""),c.removePicker()},confirm:function(e,i){var o,r,t,n,l=d.val();if(-1>16,g:(65280&t)>>8,b:255&t},r=T(n),s[0].style.background=o="#"+j(r),c.elemColorBox.find("."+B).removeClass(P).addClass(x)),"change"===i)return c.select(r.h,r.s,r.b,i),void(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=T(L(i.color)),i.select(e.h,e.s,e.b)):i.elemColorBox.find("."+B).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",y="layui-show",s=".layui-tab-title",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,o,t,i)},i.prototype.tabAdd=function(t,i){var a,t=u(".layui-tab[lay-filter="+t+"]"),e=t.children(s),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(s).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(s).find('>li[lay-id="'+i+'"]');return C.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();C.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",C={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(y).siblings().removeClass(y)),layui.event.call(this,o,"tab("+s+")",{elem:e,index:t})},tabDelete:function(t,i){var i=i||u(this).parent(),a=i.index(),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")?C.tabClick.call(i.next()[0],{index: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,o,"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("."+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("."+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,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(){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",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",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(o,a)});layui.define(["lay","layer"],function(e){"use strict";var v=layui.$,t=layui.layer,y=layui.device(),i={config:{},set:function(e){var t=this;return t.config=v.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",F="layui-upload-iframe",b="layui-upload-choose",x=function(e){var t=this;t.config=v.extend({},t.config,i.config,e),t.render()};x.prototype.config={accept:"images",exts:"",auto:!0,bindAction:"",url:"",force:"",field:"file",acceptMime:"",method:"post",data:{},drag:!0,size:0,number:0,multiple:!1},x.prototype.render=function(e){var t=this;(e=t.config).elem=v(e.elem),e.bindAction=v(e.bindAction),t.file(),t.events()},x.prototype.file=function(){var e=this,t=e.config,i=e.elemFile=v(['"].join("")),n=t.elem.next();(n.hasClass(a)||n.hasClass(o))&&n.remove(),y.ie&&y.ie<10&&t.elem.wrap('
        '),e.isFile()?(e.elemFile=t.elem,t.field=t.elem[0].name):t.elem.after(i),y.ie&&y.ie<10&&e.initIE()},x.prototype.initIE=function(){var i,e=this.config,t=v(''),n=v(['
        ',"
        "].join(""));v("#"+F)[0]||v("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(""))))},x.prototype.msg=function(e){return t.msg(e,{icon:2,shift:6})},x.prototype.isFile=function(){var e=this.config.elem[0];if(e)return"input"===e.tagName.toLocaleLowerCase()&&"file"===e.type},x.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)}})},x.prototype.upload=function(i,e){var n,a,t,o,l=this,r=l.config,c=l.elemFile[0],u=function(){var t=0,a=0,e=i||l.files||l.chooseFiles||c.files,o=function(){r.multiple&&t+a===l.fileLength&&"function"==typeof r.allDone&&r.allDone({total:l.fileLength,successful:t,failed:a})};layui.each(e,function(i,e){var n=new FormData,e=(layui.each(r.data,function(e,t){t="function"==typeof t?t():t,n.append(e,t)}),n.append(r.field,e),{url:r.url,type:"post",data:n,contentType:!1,processData:!1,dataType:"json",headers:r.headers||{},success:function(e){t++,f(i,e),o()},error:function(e){a++,l.msg("Request URL is abnormal: "+(e.statusText||"error")),p(i),o()}});"function"==typeof r.progress&&(e.xhr=function(){var e=v.ajaxSettings.xhr();return e.upload.addEventListener("progress",function(e){var t;e.lengthComputable&&(t=Math.floor(e.loaded/e.total*100),r.progress(t,(r.item||r.elem)[0],e,i))}),e}),v.ajax(e)})},s=function(){var n=v("#"+F);l.elemFile.parent().submit(),clearInterval(x.timer),x.timer=setInterval(function(){var e,t=n.contents().find("body");try{e=t.text()}catch(i){l.msg("Cross-domain requests are not supported"),clearInterval(x.timer),p()}e&&(clearInterval(x.timer),t.html(""),f(0,e))},30)},f=function(e,t){if(l.elemFile.next("."+b).remove(),c.value="","json"===r.force&&"object"!=typeof t)try{t=JSON.parse(t)}catch(i){return t={},l.msg("Please return JSON data format")}"function"==typeof r.done&&r.done(t,e||0,function(e){l.upload(e)})},p=function(e){r.auto&&(c.value=""),"function"==typeof r.error&&r.error(e||0,function(e){l.upload(e)})},d=r.exts,m=(a=[],layui.each(i||l.chooseFiles,function(e,t){a.push(t.name)}),a),h={preview:function(e){l.preview(e)},upload:function(e,t){var i={};i[e]=t,l.upload(i)},pushFile:function(){return l.files=l.files||{},layui.each(l.chooseFiles,function(e,t){l.files[e]=t}),l.files},resetFile:function(e,t,i){t=new File([t],i);l.files=l.files||{},l.files[e]=t}},g={file:"\u6587\u4ef6",images:"\u56fe\u7247",video:"\u89c6\u9891",audio:"\u97f3\u9891"}[r.accept]||"\u6587\u4ef6",m=0===m.length?c.value.match(/[^\/\\]+\..+/g)||[]||"":m;if(0!==m.length){switch(r.accept){case"file":layui.each(m,function(e,t){if(d&&!RegExp(".\\.("+d+")$","i").test(escape(t)))return n=!0});break;case"video":layui.each(m,function(e,t){if(!RegExp(".\\.("+(d||"avi|mp4|wma|rmvb|rm|flash|3gp|flv")+")$","i").test(escape(t)))return n=!0});break;case"audio":layui.each(m,function(e,t){if(!RegExp(".\\.("+(d||"mp3|wav|mid")+")$","i").test(escape(t)))return n=!0});break;default:layui.each(m,function(e,t){if(!RegExp(".\\.("+(d||"jpg|png|gif|bmp|jpeg")+")$","i").test(escape(t)))return n=!0})}if(n)return l.msg("\u9009\u62e9\u7684"+g+"\u4e2d\u5305\u542b\u4e0d\u652f\u6301\u7684\u683c\u5f0f"),c.value="";if("choose"!==e&&!r.auto||(r.choose&&r.choose(h),"choose"!==e)){if(l.fileLength=(t=0,g=i||l.files||l.chooseFiles||c.files,layui.each(g,function(){t++}),t),r.number&&l.fileLength>r.number)return l.msg("\u540c\u65f6\u6700\u591a\u53ea\u80fd\u4e0a\u4f20: "+r.number+" \u4e2a\u6587\u4ef6
        \u60a8\u5f53\u524d\u5df2\u7ecf\u9009\u62e9\u4e86: "+l.fileLength+" \u4e2a\u6587\u4ef6");if(01024*r.size&&(t=1<=(t=r.size/1024)?t.toFixed(2)+"MB":r.size+"KB",c.value="",o=t)}),o)return l.msg("\u6587\u4ef6\u5927\u5c0f\u4e0d\u80fd\u8d85\u8fc7 "+o);if(!r.before||!1!==r.before(h))y.ie?(9'+e+"")},r=function(){var e=v(this);(e.attr("lay-data")||e.attr("lay-options"))&&(n.config=v.extend({},a,lay.options(this,{attr:e.attr("lay-data")?"lay-data":null})))};a.elem.off("upload.start").on("upload.start",function(){var e=v(this);r.call(this),n.config.item=e,n.elemFile[0].click()}),y.ie&&y.ie<10||a.elem.off("upload.over").on("upload.over",function(){v(this).attr("lay-over","")}).off("upload.leave").on("upload.leave",function(){v(this).removeAttr("lay-over")}).off("upload.drop").on("upload.drop",function(e,t){var i=v(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(){v(this).trigger("upload.change")}),a.elem.on("click",function(){n.isFile()||v(this).trigger("upload.start")}),a.drag&&a.elem.on("dragover",function(e){e.preventDefault(),v(this).trigger("upload.over")}).on("dragleave",function(e){v(this).trigger("upload.leave")}).on("drop",function(e){e.preventDefault(),v(this).trigger("upload.drop",e)}),a.bindAction.on("click",function(){v(this).trigger("upload.action")}),a.elem.data("haveEvents",!0))},i.render=function(e){e=new x(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.$,h=layui.layer,d=layui.util,l=layui.hint(),w=(layui.device(),"form"),o=".layui-form",T="layui-this",$="layui-hide",F="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 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.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;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||(n[i||t.name]=t.value))}),n},t.prototype.render=function(e,t){var i=this.config,a=b(o+(t?'[lay-filter="'+t+'"]':"")),n={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 l=b(this),r=l.attr("lay-affix"),s="layui-input-suffix",o="layui-input-affix",e=l.is("[disabled]")||l.is("[readonly]"),c=function(e,t){(e=b(e))[0]&&e[b.trim(t)?"removeClass":"addClass"]($)},n=function(t){t=b.extend({},u[r]||{value:r},t,lay.options(l[0]));var i=b('
        '),e=b(''),a=(i.append(e),t.split&&i.addClass("layui-input-split"),l.next("."+o)),n=(a[0]&&a.remove(),l.next("."+s));n[0]?((a=n.find("."+o))[0]&&a.remove(),n.prepend(i),l.css("padding-right",function(){return(l.closest(".layui-input-group")[0]?0:n.outerWidth())+i.outerWidth()})):(i.addClass(s),l.after(i)),"auto"===t.show&&c(i,l.val()),l.on("input propertychange",function(){var e=this.value;"auto"===t.show&&c(i,e)}),e.on("click",function(){var e=l.attr("lay-filter");b(this).hasClass(F)||("function"==typeof t.click&&t.click.call(this,l,t),layui.event.call(this,w,"input-affix("+e+")",{elem:l[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),n({value:a?"eye-invisible":"eye"})}},clear:{value:"clear",click:function(e){e.val("").focus(),c(b(this).parent(),null)},show:"auto",disabled:e}};n()})},select:function(e){var v,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"),v&&k&&v.val(k)),v=null},u=function(a,e,t){var s,r,i,n,o,l,c=b(this),u=a.find("."+g),d=u.find("input"),f=a.find("dl"),h=f.children("dd"),y=f.children("dt"),p=this.selectedIndex;e||(r=c.attr("lay-search"),i=function(){var e=a.offset().top+a.outerHeight()+5-q.scrollTop(),t=f.outerHeight();p=c[0].selectedIndex,a.addClass(m+"ed"),h.removeClass($),y.removeClass($),s=null,h.removeClass(T),0<=p&&h.eq(p).addClass(T),e+t>q.height()&&t<=e&&a.addClass(m+"up"),o()},n=function(e){a.removeClass(m+"ed "+m+"up"),d.blur(),s=null,e||l(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;v=d,k=b(c[0].options[t]).html(),0===t&&k===d.attr("placeholder")&&(k=""),setTimeout(function(){l(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(F)||(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}),b(document).off("click",C).on("click",C))};e.each(function(e,t){var i=b(this),a=i.next("."+m),n=this.disabled,l=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?"optgroup"===i?s.push("
        "+t.label+"
        "):s.push('
        '+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,n,o)})},checkbox:function(e){var o={checkbox:["layui-form-checkbox","layui-form-checked","checkbox"],"switch":["layui-form-switch","layui-form-onswitch","switch"]},e=e||a.find("input[type=checkbox]"),c={primary:!0,tag:!0,"switch":!0};e.each(function(e,t){var i=b(this),a=i.attr("lay-skin")||"primary",n=b.trim(t.title||(t.title=i.attr("lay-text")||"")).split("|"),l=this.disabled,r=o[a=c[a]?a:"primary"]||o.checkbox;if("string"==typeof i.attr("lay-ignore"))return i.show();var s=i.next("."+r[0]),t=b(['
        ",(l={checkbox:[n[0]?""+d.escape(n[0])+"":"",''].join(""),"switch":""+((t.checked?n[0]:n[1])||"")+""})[a]||l.checkbox,"
        "].join(""));s[0]&&s.remove(),i.after(t),function(i,a){var n=b(this);i.on("click",function(){var e=n.attr("lay-filter"),t=(n.attr("title")||"").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",s=["",""],e=e||a.find("input[type=radio]");e.each(function(e,t){var i=b(this),a=i.next("."+r),n=this.disabled;if("string"==typeof i.attr("lay-ignore"))return i.show();a[0]&&a.remove();n=b(['
        ',''+s[t.checked?0:1]+"","
        "+(a=d.escape(t.title||""),a="string"==typeof i.next().attr("lay-radio")?i.next().html():a)+"
        ","
        "].join(""));i.after(n),function(a){var n=b(this),l="layui-anim-scaleSpring";a.on("click",function(){var e=n[0].name,t=n.parents(o),i=n.attr("lay-filter"),e=t.find("input[name="+e.replace(/(\.|#|\[|\])/g,"\\$1")+"]");n[0].disabled||(layui.each(e,function(){var e=b(this).next("."+r);this.checked=!1,e.removeClass(r+"ed"),e.find(".layui-icon").removeClass(l).html(s[1])}),n[0].checked=!0,a.addClass(r+"ed"),a.find(".layui-icon").addClass(l).html(s[0]),layui.event.call(n[0],w,"radio("+i+")",{elem:n[0],value:n[0].value,othis:a}))})}.call(this,n)})}},t=function(){layui.each(n,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?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'):t(),this},t.prototype.validate=function(e){var u=null,d=r.config.verify,f="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=s.val();if(s.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=s.attr("lay-reqtext")||i),n)return"tips"===o?h.tips(i,"string"!=typeof s.attr("lay-ignore")&&l?s.next():s,{tips:1}):"alert"===o?h.alert(i,{title:"\u63d0\u793a",shadeClose:!0}):/\bstring|number\b/.test(typeof i)&&h.msg(i,{icon:5,shift:6}),setTimeout(function(){(l?s.next().find("input"):r).focus()},7),s.addClass(f),u=!0}}),u)return u}),!u)},t.prototype.submit=function(e,t){var i=b(this),e="string"==typeof e?e:i.attr("lay-filter"),a=this.getFormElem?this.getFormElem(e):i.parents(o).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=b(document),q=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(e){"use strict";var v=layui.$,r=layui.lay,g=layui.laytpl,H=layui.laypage,b=layui.layer,h=layui.form,x=layui.util,u=layui.hint(),p=layui.device(),k={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=v.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,w,e,t)}},f=function(){var a=this,e=a.config,i=e.id||e.index;return i&&(f.that[i]=a,f.config[i]=e),{config:e,reload:function(e,t){a.reload.call(a,e,t)},reloadData:function(e,t){k.reloadData(i,e,t)},setColsWidth:function(){a.setColsWidth.call(a)},resize:function(){a.resize.call(a)}}},m=function(e){var t=f.that[e];return t||u.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},l=function(e){var t=f.config[e];return t||u.error(e?"The table instance with ID '"+e+"' not found":"ID argument required"),t||null},C=function(e){var t=this.config||{},a=(e=e||{}).item3,i=e.content,t=(("escape"in a?a:t).escape&&(i=x.escape(i)),e.text&&a.exportTemplet||a.templet||a.toolbar);return t&&(i="function"==typeof t?t.call(a,e.tplData,e.obj):g(v(t).html()||String(i)).render(v.extend({LAY_COL:a},e.tplData))),e.text?v("
        "+i+"
        ").text():i},w="table",t=".layui-table",T="layui-hide",d="layui-hide-v",c="layui-none",L="layui-table-view",o=".layui-table-header",N=".layui-table-body",s=".layui-table-pageview",D=".layui-table-sort",W="layui-table-edit",A="layui-table-hover",E="laytable-cell-group",R="layui-table-col-special",M="layui-table-tool-panel",j="LAY_TABLE_MOVE_DICT",a=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("")},i=['',"","
        "].join(""),F=[,"{{# if(d.data.toolbar){ }}",'
        ','
        ','
        ',"
        ","{{# } }}",'
        ',"{{# if(d.data.loading){ }}",'
        ','',"
        ","{{# } }}","{{# var left, right; }}",'
        ',a(),"
        ",'
        ',i,"
        ","{{# if(left){ }}",'
        ','
        ',a({fixed:!0}),"
        ",'
        ',i,"
        ","
        ","{{# }; }}","{{# if(right){ }}",'
        ','
        ',a({fixed:"right"}),'
        ',"
        ",'
        ',i,"
        ","
        ","{{# }; }}","
        ","{{# if(d.data.totalRow){ }}",'
        ','','',"
        ","
        ","{{# } }}",'
        ','
        ',"
        ",""].join(""),_=v(window),S=v(document),n=function(e){this.index=++k.index,this.config=v.extend({},this.config,k.config,e),this.render()},y=(n.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:"\u65e0\u6570\u636e"},cols:[]},n.prototype.render=function(e){var t=this,a=t.config;if(a.elem=v(a.elem),a.where=a.where||{},a.id="id"in a?a.id:a.elem.attr("id")||t.index,a.request=v.extend({pageName:"page",limitName:"limit"},a.request),a.response=v.extend({statusName:"code",statusCode:0,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=_.height()-t.fullHeightGap):a.height&&/^#\w+\S*-\d+$/.test(a.height)&&(e=a.height.split("-"),t.parentHeightGap=e.pop(),t.parentDiv=e.join("-"),a.height=v(t.parentDiv).height()-t.parentHeightGap);var i,e=a.elem,l=e.next("."+L),n=t.elem=v("
        ");n.addClass((i=[L,L+"-"+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(g(F).render({data:a,index:t.index})),l[0]&&l.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(N),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()},n.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])},n.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(L)&&(a=r.css.split("}"),layui.each(a,function(e,t){t&&(a[e]="."+L+"-"+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.hide=l.hide||!1,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=v(e.toolbar).html()||"")&&a.html(g(t).render(e)),{filter:{title:"\u7b5b\u9009\u5217",layEvent:"LAYTABLE_COLS",icon:"layui-icon-cols"},exports:{title:"\u5bfc\u51fa",layEvent:"LAYTABLE_EXPORT",icon:"layui-icon-export"},print:{title:"\u6253\u5370",layEvent:"LAYTABLE_PRINT",icon:"layui-icon-print"}}),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(""))},n.prototype.renderPagebar=function(){var e,t=this.config,a=this.layPagebar=v('
        ');t.pagebar&&((e=v(t.pagebar).html()||"")&&a.append(g(e).render(t)),this.layPage.append(a))},n.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[1<=l||!e?"removeClass":"addClass"](T),t.colspan=l,t.hide=1<=l||!e,(a=i.data("parentkey"))&&this.setParentCol(e,a))},n.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)})})},n.prototype.setGroupWidth=function(i){var e,l=this;l.config.cols.length<=1||((e=l.layHeader.find((i?"th[data-key="+i.data("parentkey")+"]>":"")+"."+E)).css("width",0),layui.each(e.get().reverse(),function(){var e=v(this),t=e.parent().data("key"),a=0;l.layHeader.eq(0).find("th[data-parentkey="+t+"]").width(function(e,t){v(this).hasClass(T)||0'+(e||"Error")+"
        ");a[0]&&(t.layNone.remove(),a.remove()),t.layFixed.addClass(T),t.layMain.find("tbody").html(""),t.layMain.append(t.layNone=e),t.layTotal.addClass(d),t.layPage.find(s).addClass(d),k.cache[t.key]=[],t.syncCheckAll()},n.prototype.page=1,n.prototype.pullData=function(t,a){var e,i,l=this,n=l.config,o=n.request,d=n.response,r=function(){"object"==typeof n.initSort&&l.sort({field:n.initSort.field,type:n.initSort.type,reloadType:a.type})};a=a||{},"function"==typeof n.before&&n.before(n),l.startTime=(new Date).getTime(),n.url?(e={},n.page&&(e[o.pageName]=t,e[o.limitName]=n.limit),o=v.extend(e,n.where),n.contentType&&0==n.contentType.indexOf("application/json")&&(o=JSON.stringify(o)),l.loading(),v.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.renderForm(),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.renderData({res:e,curr:t,count:e[d.countName],type:a.type}),r(),n.time=(new Date).getTime()-l.startTime+" ms"),l.setColsWidth(),"function"==typeof n.done&&n.done(e,t,e[d.countName])},error:function(e,t){l.errorView("\u8bf7\u6c42\u5f02\u5e38\uff0c\u9519\u8bef\u63d0\u793a\uff1a"+t),l.renderForm(),l.setColsWidth(),"function"==typeof n.error&&n.error(e,t)}})):"array"===layui.type(n.data)&&(e={},o=t*n.limit-n.limit,i=n.data.concat(),e[d.dataName]=n.page?i.splice(o,n.limit):i,e[d.countName]=n.data.length,"object"==typeof n.totalRow&&(e[d.totalRowName]=v.extend({},n.totalRow)),l.renderData({res:e,curr:t,count:e[d.countName],type:a.type}),r(),l.setColsWidth(),"function"==typeof n.done&&n.done(e,t,e[d.countName]))},n.prototype.eachCols=function(e){return k.eachCols(null,e,this.config.cols),this},n.prototype.col=function(e){try{return e=e.split("-"),this.config.cols[e[1]][e[2]]||{}}catch(t){return u.error(t),{}}},n.prototype.renderData=function(e){var u=this,h=u.config,t=e.res,a=e.curr,i=e.count,l=e.sort,n=t[h.response.dataName]||[],t=t[h.response.totalRowName],p=[],f=[],m=[],o=function(){var y;if(h.HAS_SET_COLS_PATCH||u.setColsPatch(),h.HAS_SET_COLS_PATCH=!0,!l&&u.sortKey)return u.sort({field:u.sortKey.field,type:u.sortKey.sort,pull:!0,reloadType:e.type});layui.each(n,function(o,d){var i=[],r=[],c=[],s=o+h.limit*(a-1)+1;if("object"!=typeof d){n[o]=d={LAY_KEY:d};try{k.cache[u.key][o]=d}catch(e){}}"array"===layui.type(d)&&0===d.length||(d[k.config.numbersName]=s,l||(d[k.config.indexName]=o),u.eachCols(function(e,l){var t,e=l.field||e,a=l.key,n=d[e];n!==undefined&&null!==n||(n=""),l.colGroup||(t=['','
        "+function(){var e,t=v.extend(!0,{LAY_COL:l},d),a=k.config.checkName,i=k.config.disabledName;switch(l.type){case"checkbox":return'';case"radio":return t[a]&&(y=o),'';case"numbers":return s}return l.toolbar?g(v(l.toolbar).html()||"").render(t):C.call(u,{item3:l,content:n,tplData:t})}(),"
        "].join(""),i.push(t),l.fixed&&"right"!==l.fixed&&r.push(t),"right"===l.fixed&&c.push(t))}),p.push(''+i.join("")+""),f.push(''+r.join("")+""),m.push(''+c.join("")+""))}),"fixed"===h.scrollPos&&"reloadData"===e.type||u.layBody.scrollTop(0),"reset"===h.scrollPos&&u.layBody.scrollLeft(0),u.layMain.find("."+c).remove(),u.layMain.find("tbody").html(p.join("")),u.layFixLeft.find("tbody").html(f.join("")),u.layFixRight.find("tbody").html(m.join("")),u.renderForm(),"number"==typeof y&&u.setRowChecked({type:"radio",index:y},!0),u.syncCheckAll(),u.fullSize(),u.haveInit?u.scrollPatch():setTimeout(function(){u.scrollPatch()},50),u.haveInit=!0,b.close(u.tipsIndex)};return k.cache[u.key]=n,u.layTotal[0==n.length?"addClass":"removeClass"](d),u.layPage[h.page||h.pagebar?"removeClass":"addClass"](T),u.layPage.find(s)[!h.page||0==i||0===n.length&&1==a?"addClass":"removeClass"](d),0===n.length?(u.renderForm(),u.errorView(h.text.none)):(u.layFixLeft.removeClass(T),l?o():(o(),u.renderTotal(n,t),u.layTotal&&u.layTotal.removeClass(T),void(h.page&&(h.page=v.extend({elem:"layui-table-page"+h.index,count:i,limit:h.limit,limits:h.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,h.limit=e.limit,u.pullData(e.curr))}},h.page),h.page.count=i,H.render(h.page)))))},n.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&&C.call(r,{item3:t,content:l,tplData:n})||a,i||n),n=(t.field&&r.dataTotal.push({field:t.field,total:v("
        "+l+"
        ").text()}),['','
        "+("string"==typeof(a=t.totalRow||c.totalRow)?g(a).render(v.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:"")+""))},n.prototype.getColElem=function(e,t){this.config;return e.eq(0).find(".laytable-cell-"+t+":eq(0)")},n.prototype.renderForm=function(e){this.config;var t=this.elem.attr("lay-filter");h.render(e,t)},n.prototype.setRowChecked=function(a,e){var t=this,i=t.config,l="layui-table-click",n=t.layBody.find("tr"+("all"===a.index?"":'[data-index="'+a.index+'"]'));"checkbox"!==(a=v.extend({type:"checkbox",checked:!0},a)).type&&"all"!==a.index&&n.addClass(l).siblings("tr").removeClass(l),a.selectedStyle||e||(l=k.cache[t.key],layui.each(l,function(e,t){a.index===e||"all"===a.index?t[i.checkName]=a.checked:"radio"===a.type&&delete t[i.checkName]}),n.find('input[lay-type="'+({radio:"layTableRadio",checkbox:"layTableCheckbox"}[a.type]||"checkbox")+'"]').prop("checked",a.checked),t.syncCheckAll(),t.renderForm(a.type))},n.prototype.sort=function(l){var e,t=this,a={},i=t.config,n=i.elem.attr("lay-filter"),o=k.cache[t.key];"string"==typeof(l=l||{}).field&&(d=l.field,t.layHeader.find("th").each(function(e,t){var a=v(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(D);t.layHeader.find("th").find(D).removeAttr("lay-sort"),c.attr("lay-sort",l.type||null),t.layFixed.find("th")}catch(s){u.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):"desc"===l.type?e=layui.sort(o,d,!0):(e=layui.sort(o,k.config.indexName),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,w,"sort("+n+")",v.extend({config:i},i.initSort)))},n.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=v(['
        ','',"
        "].join("")),t.layBox.append(t.layInit)))},n.prototype.setCheckData=function(e,t){var a=this.config,i=k.cache[this.key];i[e]&&"array"!==layui.type(i[e])&&(i[e][a.checkName]=t)},n.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]&&(k.checkStatus(e.key).isAll?(t[0].checked||(t.prop("checked",!0),e.renderForm("checkbox")),a(!0)):(t[0].checked&&(t.prop("checked",!1),e.renderForm("checkbox")),a(!1)))},n.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})},n.prototype.fullSize=function(){var e,a,i=this,t=i.config,l=t.height;i.fullHeightGap?(l=_.height()-i.fullHeightGap,i.elem.css("height",l=l<135?135:l)):i.parentDiv&&i.parentHeightGap&&(l=v(i.parentDiv).height()-i.parentHeightGap,i.elem.css("height",l=l<135?135:l)),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(N).css("height",t.height()>=n?n:"auto"),e.layFixRight[k.cache[e.key].length&&0');a.html(t),y.height&&a.css("max-height",y.height-(s.layTool.outerHeight()||50)),i.find("."+M)[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"),b.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(){h.on("checkbox(LAY_TABLE_TOOL_COLS)",function(e){var e=v(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"](T),l!=i.hide&&s.setParentCol(!t,e),s.resize(),layui.event.call(this,w,"colToggled("+r+")",{col:i,config:y}))})}});break;case"LAYTABLE_EXPORT":p.ie?b.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=v(this).data("type");k.exportFile.call(s,y.id,null,e)})}});break;case"LAYTABLE_PRINT":var n=window.open("about:blank","_blank"),o=[""].join(""),d=v(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."+R).filter(function(e,t){return!v(t).children("."+E).length}).remove(),d.find("tbody>tr>td."+R).remove(),n.document.write(o+d.prop("outerHTML")),n.document.close(),n.print(),n.close()}layui.event.call(this,w,"toolbar("+r+")",v.extend({event:t,config:y},{}))}),s.layPagebar.on("click","*[lay-event]",function(e){var t=v(this).attr("lay-event");layui.event.call(this,w,"pagebar("+r+")",v.extend({event:t,config:y},{}))}),e.on("mousemove",function(e){var t=v(this),a=t.offset().left,e=e.clientX-a;t.data("unresize")||f.eventMoveElem||(d.allowResize=t.width()-e<=10,o.css("cursor",d.allowResize?"col-resize":""))}).on("mouseleave",function(){v(this);f.eventMoveElem||o.css("cursor","")}).on("mousedown",function(e){var t,a=v(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")||y.cellMinWidth,d.maxWidth=a.data("maxwidth")||y.cellMaxWidth}),a.data(j,d),f.eventMoveElem=a)}),f.docEvent||S.on("mousemove",function(e){var t,a;f.eventMoveElem&&(t=f.eventMoveElem.data(j)||{},f.eventMoveElem.data("resizing",1),e.preventDefault(),t.rule&&(e=t.ruleWidth+e.clientX-t.offset[0],a=f.eventMoveElem.closest("."+L).attr("lay-id"),(a=m(a))&&((e=et.maxWidth&&(e=t.maxWidth),t.rule.style.width=e+"px",a.setGroupWidth(f.eventMoveElem),b.close(s.tipsIndex))))}).on("mouseup",function(e){var t,a,i,l,n;f.eventMoveElem&&(i=(t=f.eventMoveElem).closest("."+L).attr("lay-id"),(a=m(i))&&(i=t.data("key"),l=a.col(i),n=a.config.elem.attr("lay-filter"),d={},o.css("cursor",""),a.scrollPatch(),t.removeData(j),delete f.eventMoveElem,a.getCssRule(i,function(e){l.width=parseFloat(e.style.width),layui.event.call(t[0],w,"colResized("+n+")",{col:l,config:a.config})})))}),f.docEvent=!0,e.on("click",function(e){var t=v(this),a=t.find(D),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(D+" .layui-edge ").on("click",function(e){var t=v(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=v(this).parents("tr").eq(0).data("index"),r=s.layBody.find('tr[data-index="'+t+'"]'),c=(c=k.cache[s.key]||[])[t]||{},a={tr:r,config:y,data:k.clearCacheKey(c),index:t,del:function(){k.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(u);c[i]=a.data[i]=l,s.eachCols(function(e,t){var a;t.field==i?(o.html(C.call(s,{item3:t,content:l,tplData:v.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(u).html(C.call(s,{item3:t,content:a,tplData:v.extend({LAY_COL:t},c)})),e.data("content",a))})}),s.renderForm()},setRowChecked:function(e){s.setRowChecked(v.extend({index:t},e))}};return v.extend(a,e)}),t=(s.elem.on("click",'input[name="layTableCheckbox"]+',function(){var e=v(this).prev(),t=s.layBody.find('input[name="layTableCheckbox"]'),a=e.parents("tr").eq(0).data("index"),i=e[0].checked,l="layTableAllChoose"===e.attr("lay-filter");e[0].disabled||(l?(t.each(function(e,t){t.checked=i,s.setCheckData(e,i)}),s.syncCheckAll(),s.renderForm("checkbox")):(s.setCheckData(a,i),s.syncCheckAll()),layui.event.call(e[0],w,"checkbox("+r+")",n.call(e[0],{checked:i,type:l?"all":"one"})))}),s.elem.on("click",'input[lay-type="layTableRadio"]+',function(){var e=v(this).prev(),t=e[0].checked,a=e.parents("tr").eq(0).data("index");e[0].disabled||(s.setRowChecked({type:"radio",index:a}),layui.event.call(e[0],w,"radio("+r+")",n.call(e[0],{checked:t})))}),s.layBody.on("mouseenter","tr",function(){var e=v(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").addClass(A)}).on("mouseleave","tr",function(){var e=v(this),t=e.index();e.data("off")||s.layBody.find("tr:eq("+t+")").removeClass(A)}).on("click","tr",function(){t.call(this,"row")}).on("dblclick","tr",function(){t.call(this,"rowDouble")}).on("contextmenu","tr",function(e){y.defaultContextmenu||e.preventDefault(),t.call(this,"rowContextmenu")}),function(e){var t=v(this);t.data("off")||layui.event.call(this,w,e+"("+r+")",n.call(t.children("td")[0]))}),c=function(e,t){var a,i,l,n;(e=v(e)).data("off")||(a=e.data("field"),n=e.data("key"),n=s.col(n),i=e.closest("tr").data("index"),i=k.cache[s.key][i],l=e.children(u),(n="function"==typeof n.edit?n.edit(i):n.edit)&&((n=v("textarea"===n?'':''))[0].value=e.data("content")||i[a]||l.text(),e.find("."+W)[0]||e.append(n),n.focus(),t&&layui.stope(t)))},i=(s.layBody.on("change","."+W,function(){var e=v(this),t=e.parent(),a=this.value,i=e.parent().data("field"),e=e.closest("tr").data("index"),e=k.cache[s.key][e],l=n.call(t[0],{value:a,field:i,oldValue:e[i],td:t,reedit:function(){setTimeout(function(){c(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],w,"edit("+r+")",l)}).on("blur","."+W,function(){v(this).remove()}),s.layBody.on(y.editTrigger,"td",function(e){c(this,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=v(this),a=t.children(u);t.data("off")||(e?t.find(".layui-table-grid-down").remove():!(a.prop("scrollWidth")>a.outerWidth()||0'))},l=(s.layBody.on("click","."+i,function(e){var t=v(this).parent().children(u);s.tipsIndex=b.tips(['
        ',t.html(),"
        ",''].join(""),t[0],{tips:[3,""],time:-1,anim:-1,maxWidth:p.ios||p.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(){b.close(t)})}}),layui.stope(e)}),function(e){var t=v(this),a=t.parents("tr").eq(0).data("index");layui.event.call(this,w,(e||"tool")+"("+r+")",n.call(this,{event:t.attr("lay-event")})),s.setRowChecked({type:"radio",index:a},!0)});s.layBody.on("click","*[lay-event]",function(e){l.call(this),layui.stope(e)}).on("dblclick","*[lay-event]",function(e){l.call(this,"toolDouble"),layui.stope(e)}),s.layMain.on("scroll",function(){var e=v(this),t=e.scrollLeft(),e=e.scrollTop();s.layHeader.scrollLeft(t),s.layTotal.scrollLeft(t),s.layFixed.find(N).scrollTop(e),b.close(s.tipsIndex)}),_.on("resize",function(){s.resize()})},S.on("click",function(){S.trigger("table.remove.tool.panel")}),S.on("table.remove.tool.panel",function(){v("."+M).remove()}),k.init=function(i,o){o=o||{};var e="object"==typeof i?i:v("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=v(this),t=e.attr("lay-data"),t=r.options(this,{attr:t?"lay-data":null,errorText:d+(t||e.attr("lay-options"))}),n=v.extend({elem:this,cols:[],data:[],skin:e.attr("lay-skin"),size:e.attr("lay-size"),even:"string"==typeof e.attr("lay-even")},k.config,o,t),a=(i&&e.hide(),e.find("thead>tr").each(function(i){n.cols[i]=[],v(this).children().each(function(e){var t=v(this),a=t.attr("lay-data"),a=r.options(this,{attr:a?"lay-data":null,errorText:d+(a||t.attr("lay-options"))}),t=v.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=k.render(n);!a.length||o.data||t.config.url||(l=0,k.eachCols(t.config.id,function(e,i){a.each(function(e){n.data[e]=n.data[e]||{};var t=v(this),a=i.field;n.data[e][a]=t.children("td").eq(l).html()}),l++}),t.reloadData({data:n.data}))}),this},f.that={},f.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),y(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').filter('[data-field="'+e+'"]')}}})).replace(/"/g,'""'),n.push(a='"'+(a+="\t")+'"')))}),d.push(n.join(","))}),c&&layui.each(c.dataTotal,function(e,t){r[t.field]||i.push(t.total+"\t")}),o.join(",")+"\r\n"+d.join("\r\n")+"\r\n"+i.join(","))),y.download=(a.title||n.title||"table_"+(n.index||""))+"."+l,document.body.appendChild(y),y.click(),document.body.removeChild(y)},k.getOptions=function(e){return v.extend(!0,{},l(e))},k.hideCol=function(e,l){var n=m(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"](T),n.setParentCol(i,t))}):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"](T),n.setParentCol(i,t)))})}),v("."+M).remove(),n.resize())},k.reload=function(e,t,a,i){if(l(e))return e=m(e),e.reload(t,a,i),f.call(e)},k.reloadData=function(){var a=v.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]}),k.reload.apply(null,a)},k.render=function(e){e=new n(e);return f.call(e)},k.clearCacheKey=function(e){return delete(e=v.extend({},e))[k.config.checkName],delete e[k.config.indexName],delete e[k.config.numbersName],delete e[k.config.disabledName],e},v(function(){k.init()}),e(w,k)});layui.define("form",function(e){"use strict";var u=layui.$,i=layui.form,p=layui.layer,n="tree",a={config:{},index:layui[n]?layui[n].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,n,e,i)}},t=function(){var i=this,e=i.config,n=e.id||i.index;return t.that[n]=i,{config:t.config[n]=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",d="layui-disabled",f="layui-tree-set",C="layui-tree-iconClick",k="layui-icon-addition",v="layui-icon-subtraction",m="layui-tree-entry",x="layui-tree-main",b="layui-tree-txt",g="layui-tree-pack",w="layui-tree-spread",N="layui-tree-setLineShort",T="layui-tree-showLine",L="layui-tree-lineExtend",l=function(e){var i=this;i.index=++a.index,i.config=u.extend({},i.config,a.config,e),i.render()};l.prototype.config={data:[],showCheckbox:!1,showLine:!0,accordion:!1,onlyIconControl:!1,isJump:!1,edit:!1,text:{defaultNodeName:"\u672a\u547d\u540d",none:"\u65e0\u6570\u636e"}},l.prototype.reload=function(e){var n=this;layui.each(e,function(e,i){"array"===layui.type(i)&&delete n.config[e]}),n.config=u.extend(!0,{},n.config,e),n.render()},l.prototype.render=function(){var e=this,i=e.config,n=(e.checkids=[],u('
        ')),a=(e.tree(n),i.elem=u(i.elem));if(a[0]){if(e.key=i.id||e.index,e.elem=n,e.elemNone=u('
        '+i.text.none+"
        "),a.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){var n=i.children&&0"),t=u(['
        ','
        ','
        ',c.showLine?n?'':'':'',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 n={add:'',update:'',del:''},a=['
        '];return!0===c.edit&&(c.edit=["update","del"]),"object"==typeof c.edit?(layui.each(c.edit,function(e,i){a.push(n[i]||"")}),a.join("")+"
        "):void 0}(),"
        "].join(""));n&&(t.append(a),r.tree(a,i.children)),l.append(t),t.prev("."+f)[0]&&t.prev().children(".layui-tree-pack").addClass("layui-tree-showLine"),n||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(a,e){var t=this.config,i=a.children("."+m),n=i.children("."+x),l=i.find("."+C),i=i.find("."+b),r=t.onlyIconControl?l:n,c="";r.on("click",function(e){var i=a.children("."+g),n=(r.children(".layui-icon")[0]?r:r.find(".layui-tree-icon")).children(".layui-icon");i[0]?a.hasClass(w)?(a.removeClass(w),i.slideUp(200),n.removeClass(v).addClass(k)):(a.addClass(w),i.slideDown(200),n.addClass(v).removeClass(k),t.accordion&&((i=a.siblings("."+f)).removeClass(w),i.children("."+g).slideUp(200),i.find(".layui-tree-icon").children(".layui-icon").removeClass(v).addClass(k))):c="normal"}),i.on("click",function(){u(this).hasClass(d)||(c=a.hasClass(w)?t.onlyIconControl?"open":"close":t.onlyIconControl?"close":"open",t.click&&t.click({elem:a,state:c,data:e}))})},l.prototype.setCheckbox=function(e,i,n){this.config;var t,l=n.prop("checked");n.prop("disabled")||("object"!=typeof i.children&&!e.find("."+g)[0]||e.find("."+g).find('input[same="layuiTreeCheck"]').each(function(){this.disabled||(this.checked=l)}),(t=function(e){var i,n,a;e.parents("."+f)[0]&&(n=(e=e.parent("."+g)).parent(),a=e.prev().find('input[same="layuiTreeCheck"]'),l?a.prop("checked",l):(e.find('input[same="layuiTreeCheck"]').each(function(){this.checked&&(i=!0)}),i||a.prop("checked",!1)),t(n))})(e),this.renderForm("checkbox"))},l.prototype.checkClick=function(n,a){var t=this,l=t.config;n.children("."+m).children("."+x).on("click",'input[same="layuiTreeCheck"]+',function(e){layui.stope(e);var e=u(this).prev(),i=e.prop("checked");e.prop("disabled")||(t.setCheckbox(n,a,e),l.oncheck&&l.oncheck({elem:n,checked:i,data:a}))})},l.prototype.operate=function(c,d){var s=this,o=s.config,e=c.children("."+m),h=e.children("."+x);e.children(".layui-tree-btnGroup").on("click",".layui-icon",function(e){layui.stope(e);var i,e=u(this).data("type"),a=c.children("."+g),t={data:d,type:e,elem:c};if("add"==e){a[0]||(o.showLine?(h.find("."+C).addClass("layui-tree-icon"),h.find("."+C).children(".layui-icon").addClass(k).removeClass("layui-icon-file")):h.find(".layui-tree-iconArrow").removeClass(y),c.append('
        '));var n,l=o.operate&&o.operate(t),r={};if(r.title=o.text.defaultNodeName,r.id=l,s.tree(c.children("."+g),[r]),o.showLine&&(a[0]?(a.hasClass(L)||a.addClass(L),c.find("."+g).each(function(){u(this).children("."+f).last().addClass(N)}),(a.children("."+f).last().prev().hasClass(N)?a.children("."+f).last().prev():a.children("."+f).last()).removeClass(N),!c.parent("."+g)[0]&&c.next()[0]&&a.children("."+f).last().removeClass(N)):(l=c.siblings("."+f),n=1,r=c.parent("."+g),layui.each(l,function(e,i){u(i).children("."+g)[0]||(n=0)}),1==n?(l.children("."+g).addClass(T),l.children("."+g).children("."+f).removeClass(N),c.children("."+g).addClass(T),r.removeClass(L),r.children("."+f).last().children("."+g).children("."+f).last().addClass(N)):c.children("."+g).children("."+f).addClass(N))),!o.showCheckbox)return;h.find('input[same="layuiTreeCheck"]')[0].checked&&(c.children("."+g).children("."+f).last().find('input[same="layuiTreeCheck"]')[0].checked=!0),s.renderForm("checkbox")}else"update"==e?(l=h.children("."+b).html(),h.children("."+b).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("."+b).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 "'+(d.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("."+g)[0])return c.remove(),void s.elem.append(s.elemNone);var l,n,i;c.siblings("."+f).children("."+m)[0]?(o.showCheckbox&&(l=function(e){var i,n,a,t;e.parents("."+f)[0]&&(i=e.siblings("."+f).children("."+m),n=(e=e.parent("."+g).prev()).find('input[same="layuiTreeCheck"]')[0],a=1,(t=0)==n.checked&&(i.each(function(e,i){i=u(i).find('input[same="layuiTreeCheck"]')[0];0!=i.checked||i.disabled||(a=0),i.disabled||(t=1)}),1==a&&1==t&&(n.checked=!0,s.renderForm("checkbox"),l(e.parent("."+f)))))})(c),o.showLine&&(e=c.siblings("."+f),n=1,i=c.parent("."+g),layui.each(e,function(e,i){u(i).children("."+g)[0]||(n=0)}),1==n?(a[0]||(i.removeClass(L),e.children("."+g).addClass(T),e.children("."+g).children("."+f).removeClass(N)),(c.next()[0]?i.children("."+f).last():c.prev()).children("."+g).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("."+g).prev(),o.showLine?(e.find("."+C).removeClass("layui-tree-icon"),e.find("."+C).children(".layui-icon").removeClass(v).addClass("layui-icon-file"),(i=e.parents("."+g).eq(0)).addClass(L),i.children("."+f).each(function(){u(this).children("."+g).children("."+f).last().addClass(N)})):e.find(".layui-tree-iconArrow").addClass(y),c.parents("."+f).eq(0).removeClass(w),c.parent("."+g).remove()),c.remove()})})},l.prototype.events=function(){var i=this,t=i.config;i.elem.find(".layui-tree-checkedFirst");i.setChecked(i.checkids),i.elem.find(".layui-tree-search").on("keyup",function(){var e=u(this),n=e.val(),e=e.nextAll(),a=[];e.find("."+b).each(function(){var i,e=u(this).parents("."+m);-1!=u(this).html().indexOf(n)&&(a.push(u(this).parent()),(i=function(e){e.addClass("layui-tree-searchShow"),e.parent("."+g)[0]&&i(e.parent("."+g).parent("."+f))})(e.parent("."+f)))}),e.find("."+m).each(function(){var e=u(this).parent("."+f);e.hasClass("layui-tree-searchShow")||e.addClass(y)}),0==e.find(".layui-tree-searchShow").length&&i.elem.append(i.elemNone),t.onsearch&&t.onsearch({elem:a})}),i.elem.find(".layui-tree-search").on("keydown",function(){u(this).nextAll().find("."+m).each(function(){u(this).parent("."+f).removeClass("layui-tree-searchShow "+y)}),u(".layui-tree-emptyText")[0]&&u(".layui-tree-emptyText").remove()})},l.prototype.getChecked=function(){var e=this.config,i=[],n=[],t=(this.elem.find(".layui-form-checked").each(function(){i.push(u(this).prev()[0].value)}),function(e,a){layui.each(e,function(e,n){layui.each(i,function(e,i){if(n.id==i)return delete(i=u.extend({},n)).children,a.push(i),n.children&&(i.children=[],t(n.children,i.children)),!0})})});return t(u.extend({},e.data),n),n},l.prototype.setChecked=function(l){this.config;this.elem.find("."+f).each(function(e,i){var n=u(this).data("id"),a=u(i).children("."+m).find('input[same="layuiTreeCheck"]'),t=a.next();if("number"==typeof l){if(n.toString()==l.toString())return a[0].checked||t.click(),!1}else"object"==typeof l&&layui.each(l,function(e,i){if(i.toString()==n.toString()&&!a[0].checked)return t.click(),!0})})},t.that={},t.config={},a.reload=function(e,i){e=t.that[e];return e.reload(i),t.call(e)},a.getChecked=function(e){return t.that[e].getChecked()},a.setChecked=function(e,i){return t.that[e].setChecked(i)},a.render=function(e){e=new l(e);return t.call(e)},e(n,a)});layui.define(["laytpl","form"],function(e){"use strict";var s=layui.$,n=layui.laytpl,t=layui.form,a="transfer",i={config:{},index:layui[a]?layui[a].index+1e4:0,set:function(e){var t=this;return t.config=s.extend({},t.config,e),t},on:function(e,t){return layui.onevent.call(this,a,e,t)}},l=function(){var t=this,e=t.config,a=e.id||t.index;return l.that[a]=t,{config:l.config[a]=e,reload:function(e){t.reload.call(t,e)},getData:function(){return t.getData.call(t)}}},d="layui-hide",h="layui-btn-disabled",r="layui-none",c="layui-transfer-box",u="layui-transfer-header",o="layui-transfer-search",f="layui-transfer-data",y=function(e){return['
        ','
        ','","
        ","{{# 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).render({data:t,index:e.index})),i=t.elem=s(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=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",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,r,e,i)}}),r="carousel",d="layui-this",s="layui-carousel-left",u="layui-carousel-right",c="layui-carousel-prev",m="layui-carousel-next",t="layui-carousel-arrow",o="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(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("."+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.jump=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("."+o)[0]&&n.elem.find("."+o).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.jump(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))},n.render=function(e){return new i(e)},e(r,n)});layui.define("jquery",function(e){"use strict";var u=layui.jquery,l={config:{},index:layui.rate?layui.rate.index+1e4:0,set:function(e){var a=this;return a.config=u.extend({},a.config,e),a},on:function(e,a){return layui.onevent.call(this,i,e,a)}},i="rate",c="layui-icon-rate",r="layui-icon-rate-solid",o="layui-icon-rate-half",s="layui-icon-rate-solid layui-icon-rate-half",f="layui-icon-rate layui-icon-rate-half",a=function(e){var a=this;a.index=++l.index,a.config=u.extend({},a.config,l.config,e),a.render()};a.prototype.config={length:5,text:!1,readonly:!1,half:!1,value:0,theme:""},a.prototype.render=function(){for(var e=this,a=e.config,l=a.theme?'style="color: '+a.theme+';"':"",i=(a.elem=u(a.elem),a.value>a.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"),preview:"Preview"}},I=function(e){return M.trim(e).replace(/^\n|\n$/,"")};e("code",function(e){var L=e=M.extend(!0,{},l,e);e.elem=M(e.elem),e.elem[0]&&layui.each(e.elem.get().reverse(),function(e,l){var i,a,t,s,n,o,d,c,r,u,E=M(l),y=I(E.html()),v=M.extend(!0,{},L,lay.options(l),(i={},layui.each(["title","height","encode","skin","about"],function(e,l){var a=E.attr("lay-"+l);"string"==typeof a&&(i[l]=a)}),i)),f=(a=[],(l=E.children("textarea")).each(function(){a.push(I(this.value))}),l[0]&&(y=_.escape(a.join(""))),0===a.length&&a.push(I(E.html())),a),m=(v.preview&&(l="LAY-CODE-DF-"+e,t=v.layout||["code","preview"],s="iframe"===v.preview,p=M('
          '),u=M('
          '),n=M('
          '),o=M('
          '),d=M('
          '),m=E.prev("."+b.ELEM_PREVIEW),h=E.next("."+b.ELEM_ITEM+"-preview"),v.id&&p.attr("id",v.id),p.addClass(v.className),u.attr("lay-filter",l),layui.each(t,function(e,l){var a=M('
        • ');0===e&&a.addClass("layui-this"),a.html(v.text[l]),n.append(a)}),c={full:{className:"screen-full",title:["\u6700\u5927\u5316\u663e\u793a","\u8fd8\u539f\u663e\u793a"],event:function(e,l){var a=e.closest("."+b.ELEM_PREVIEW),i="layui-icon-"+this.className,t="layui-icon-screen-restore",s=this.title,n=M("html,body"),o="layui-scollbar-hide";e.hasClass(i)?(a.addClass(b.ELEM_FULL),e.removeClass(i).addClass(t),e.attr("title",s[1]),n.addClass(o)):(a.removeClass(b.ELEM_FULL),e.removeClass(t).addClass(i),e.attr("title",s[0]),n.removeClass(o))}},window:{className:"release",title:["\u5728\u65b0\u7a97\u53e3\u9884\u89c8"],event:function(e,l){_.openWin({content:f.join("")})}}},d.on("click",">i",function(){var e=M(this),l=e.data("type");"function"==typeof c[l].event&&c[l].event(e,l),"function"==typeof v.toolsEvent&&v.toolsEvent(e,l)}),layui.each(v.tools,function(e,l){var a=c[l]&&c[l].className||l,i=c[l].title||[""];d.append('')}),m[0]&&m.remove(),h[0]&&h.remove(),u.append(n),v.tools&&u.append(d),E.wrap(p).addClass(b.ELEM_ITEM).before(u),s&&o.html(""),r=function(e){var l=e.children("iframe")[0],a=(s&&l?l.srcdoc=f.join(""):e.html(f.join("")),{container:e,render:function(){C.render(e.find(".layui-form")),w.render()}});setTimeout(function(){"function"==typeof v.done&&v.done(a)},3)},"preview"===t[0]?(o.addClass(b.ELEM_SHOW),E.before(o),r(o)):E.addClass(b.ELEM_SHOW).after(o),v.codeStyle=[v.style,v.codeStyle].join(""),v.previewStyle=[v.style,v.previewStyle].join(""),o.attr("style",v.previewStyle),w.on("tab("+l+")",function(e){var l=M(this),a=M(e.elem).closest("."+b.ELEM_PREVIEW).find("."+b.ELEM_ITEM),e=a.eq(e.index);a.removeClass(b.ELEM_SHOW),e.addClass(b.ELEM_SHOW),"preview"===l.attr("lay-id")&&r(e)})),v.ln?"ol":"ul"),h=M("<"+m+' class="layui-code-'+m+'">'),p=M('
          ');E.addClass("layui-code-view layui-box"),v.skin&&("notepad"===v.skin&&(v.skin="dark"),E.addClass("layui-code-"+v.skin)),y=(y=v.encode?_.escape(y):y).replace(/[\r\t\n]+/g,"
        • "),E.html(h.html("
        • "+y+"
        • ")),v.header&&!E.children("."+b.ELEM_TITLE)[0]&&(p.html(v.title+(v.about?'
          '+v.about+"
          ":"")),E.prepend(p)),v.elem.length===e+1&&"function"==typeof v.allDone&&v.allDone(),0<(u=Math.floor(h.find("li").length/100))&&h.css("margin-left",u+"px"),v.height&&h.css("max-height",v.height),h.attr("style",v.codeStyle)})})}),layui["layui.all"]||layui.addcss("modules/code.css?v=3","skincodecss"); \ No newline at end of file diff --git a/niucloud/public/login/test.txt b/niucloud/public/login/test.txt new file mode 100644 index 0000000..e69de29 diff --git a/niucloud/public/robots.txt b/niucloud/public/robots.txt new file mode 100644 index 0000000..eb05362 --- /dev/null +++ b/niucloud/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: diff --git a/niucloud/public/router.php b/niucloud/public/router.php new file mode 100644 index 0000000..9b39a62 --- /dev/null +++ b/niucloud/public/router.php @@ -0,0 +1,19 @@ + +// +---------------------------------------------------------------------- +// $Id$ + +if (is_file($_SERVER["DOCUMENT_ROOT"] . $_SERVER["SCRIPT_NAME"])) { + return false; +} else { + $_SERVER["SCRIPT_FILENAME"] = __DIR__ . '/index.php'; + + require __DIR__ . "/index.php"; +} diff --git a/niucloud/public/static/.gitignore b/niucloud/public/static/.gitignore new file mode 100644 index 0000000..244030a --- /dev/null +++ b/niucloud/public/static/.gitignore @@ -0,0 +1,2 @@ + +!.gitignore \ No newline at end of file diff --git a/niucloud/public/static/resource/icon/index_icon/wework_qrcode.png b/niucloud/public/static/resource/icon/index_icon/wework_qrcode.png new file mode 100644 index 0000000..384435e Binary files /dev/null and b/niucloud/public/static/resource/icon/index_icon/wework_qrcode.png differ diff --git a/niucloud/public/static/resource/icon/index_icon/wx_qrcode.jpg b/niucloud/public/static/resource/icon/index_icon/wx_qrcode.jpg new file mode 100644 index 0000000..54cb4a4 Binary files /dev/null and b/niucloud/public/static/resource/icon/index_icon/wx_qrcode.jpg differ diff --git a/niucloud/public/static/resource/icon/pay_icon/alipay.png b/niucloud/public/static/resource/icon/pay_icon/alipay.png new file mode 100644 index 0000000..6951bf6 Binary files /dev/null and b/niucloud/public/static/resource/icon/pay_icon/alipay.png differ diff --git a/niucloud/public/static/resource/icon/pay_icon/balancepay.png b/niucloud/public/static/resource/icon/pay_icon/balancepay.png new file mode 100644 index 0000000..dd26516 Binary files /dev/null and b/niucloud/public/static/resource/icon/pay_icon/balancepay.png differ diff --git a/niucloud/public/static/resource/icon/pay_icon/offlinepay.png b/niucloud/public/static/resource/icon/pay_icon/offlinepay.png new file mode 100644 index 0000000..8fdea76 Binary files /dev/null and b/niucloud/public/static/resource/icon/pay_icon/offlinepay.png differ diff --git a/niucloud/public/static/resource/icon/pay_icon/wechatpay.png b/niucloud/public/static/resource/icon/pay_icon/wechatpay.png new file mode 100644 index 0000000..a18b9ff Binary files /dev/null and b/niucloud/public/static/resource/icon/pay_icon/wechatpay.png differ diff --git a/niucloud/public/static/resource/images/app/message_cover.png b/niucloud/public/static/resource/images/app/message_cover.png new file mode 100644 index 0000000..a25687b Binary files /dev/null and b/niucloud/public/static/resource/images/app/message_cover.png differ diff --git a/niucloud/public/static/resource/images/app/message_icon.png b/niucloud/public/static/resource/images/app/message_icon.png new file mode 100644 index 0000000..d643b5b Binary files /dev/null and b/niucloud/public/static/resource/images/app/message_icon.png differ diff --git a/niucloud/public/static/resource/images/app/recharge_cover.png b/niucloud/public/static/resource/images/app/recharge_cover.png new file mode 100644 index 0000000..bd6ffb2 Binary files /dev/null and b/niucloud/public/static/resource/images/app/recharge_cover.png differ diff --git a/niucloud/public/static/resource/images/app/recharge_icon.png b/niucloud/public/static/resource/images/app/recharge_icon.png new file mode 100644 index 0000000..b09f4d2 Binary files /dev/null and b/niucloud/public/static/resource/images/app/recharge_icon.png differ diff --git a/niucloud/public/static/resource/images/article/200x200_niucloud_admin_developer.png b/niucloud/public/static/resource/images/article/200x200_niucloud_admin_developer.png new file mode 100644 index 0000000..c56bd7a Binary files /dev/null and b/niucloud/public/static/resource/images/article/200x200_niucloud_admin_developer.png differ diff --git a/niucloud/public/static/resource/images/article/200x200_niucloud_admin_frame.png b/niucloud/public/static/resource/images/article/200x200_niucloud_admin_frame.png new file mode 100644 index 0000000..b1758da Binary files /dev/null and b/niucloud/public/static/resource/images/article/200x200_niucloud_admin_frame.png differ diff --git a/niucloud/public/static/resource/images/article/niucloud_admin_developer.png b/niucloud/public/static/resource/images/article/niucloud_admin_developer.png new file mode 100644 index 0000000..364bec5 Binary files /dev/null and b/niucloud/public/static/resource/images/article/niucloud_admin_developer.png differ diff --git a/niucloud/public/static/resource/images/article/niucloud_admin_frame.png b/niucloud/public/static/resource/images/article/niucloud_admin_frame.png new file mode 100644 index 0000000..c843b3c Binary files /dev/null and b/niucloud/public/static/resource/images/article/niucloud_admin_frame.png differ diff --git a/niucloud/public/static/resource/images/diy/article_list.png b/niucloud/public/static/resource/images/diy/article_list.png new file mode 100644 index 0000000..0ad6612 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/article_list.png differ diff --git a/niucloud/public/static/resource/images/diy/banner.png b/niucloud/public/static/resource/images/diy/banner.png new file mode 100644 index 0000000..6542168 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/banner.png differ diff --git a/niucloud/public/static/resource/images/diy/block_placeholder.png b/niucloud/public/static/resource/images/diy/block_placeholder.png new file mode 100644 index 0000000..b043d6c Binary files /dev/null and b/niucloud/public/static/resource/images/diy/block_placeholder.png differ diff --git a/niucloud/public/static/resource/images/diy/figure.png b/niucloud/public/static/resource/images/diy/figure.png new file mode 100644 index 0000000..2dddf4f Binary files /dev/null and b/niucloud/public/static/resource/images/diy/figure.png differ diff --git a/niucloud/public/static/resource/images/diy/horz_m_balance.png b/niucloud/public/static/resource/images/diy/horz_m_balance.png new file mode 100644 index 0000000..eab1d12 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/horz_m_balance.png differ diff --git a/niucloud/public/static/resource/images/diy/horz_m_personal.png b/niucloud/public/static/resource/images/diy/horz_m_personal.png new file mode 100644 index 0000000..ed122ad Binary files /dev/null and b/niucloud/public/static/resource/images/diy/horz_m_personal.png differ diff --git a/niucloud/public/static/resource/images/diy/horz_m_point.png b/niucloud/public/static/resource/images/diy/horz_m_point.png new file mode 100644 index 0000000..da8ab15 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/horz_m_point.png differ diff --git a/niucloud/public/static/resource/images/diy/horz_m_service.png b/niucloud/public/static/resource/images/diy/horz_m_service.png new file mode 100644 index 0000000..84038a1 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/horz_m_service.png differ diff --git a/niucloud/public/static/resource/images/diy/m_info.jpg b/niucloud/public/static/resource/images/diy/m_info.jpg new file mode 100644 index 0000000..f7b3152 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/m_info.jpg differ diff --git a/niucloud/public/static/resource/images/diy/member_style1_bg.png b/niucloud/public/static/resource/images/diy/member_style1_bg.png new file mode 100644 index 0000000..0cadc84 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/member_style1_bg.png differ diff --git a/niucloud/public/static/resource/images/diy/member_style2_bg.png b/niucloud/public/static/resource/images/diy/member_style2_bg.png new file mode 100644 index 0000000..22c5ae8 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/member_style2_bg.png differ diff --git a/niucloud/public/static/resource/images/diy/my_balance.png b/niucloud/public/static/resource/images/diy/my_balance.png new file mode 100644 index 0000000..9c9d32e Binary files /dev/null and b/niucloud/public/static/resource/images/diy/my_balance.png differ diff --git a/niucloud/public/static/resource/images/diy/my_personal.png b/niucloud/public/static/resource/images/diy/my_personal.png new file mode 100644 index 0000000..cd6a467 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/my_personal.png differ diff --git a/niucloud/public/static/resource/images/diy/my_point.png b/niucloud/public/static/resource/images/diy/my_point.png new file mode 100644 index 0000000..4d27379 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/my_point.png differ diff --git a/niucloud/public/static/resource/images/diy/my_service.png b/niucloud/public/static/resource/images/diy/my_service.png new file mode 100644 index 0000000..661040e Binary files /dev/null and b/niucloud/public/static/resource/images/diy/my_service.png differ diff --git a/niucloud/public/static/resource/images/diy/template/default_index_cover.png b/niucloud/public/static/resource/images/diy/template/default_index_cover.png new file mode 100644 index 0000000..f7cb410 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/template/default_index_cover.png differ diff --git a/niucloud/public/static/resource/images/diy/template/default_member_index_one_cover.png b/niucloud/public/static/resource/images/diy/template/default_member_index_one_cover.png new file mode 100644 index 0000000..81f6813 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/template/default_member_index_one_cover.png differ diff --git a/niucloud/public/static/resource/images/diy/template/default_member_index_two_cover.png b/niucloud/public/static/resource/images/diy/template/default_member_index_two_cover.png new file mode 100644 index 0000000..008b2da Binary files /dev/null and b/niucloud/public/static/resource/images/diy/template/default_member_index_two_cover.png differ diff --git a/niucloud/public/static/resource/images/diy/template/tourism_cover.png b/niucloud/public/static/resource/images/diy/template/tourism_cover.png new file mode 100644 index 0000000..ad4a8f6 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/template/tourism_cover.png differ diff --git a/niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png b/niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png new file mode 100644 index 0000000..5e65ca1 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/template/tourism_member_index_cover.png differ diff --git a/niucloud/public/static/resource/images/diy/vert_m_balance.png b/niucloud/public/static/resource/images/diy/vert_m_balance.png new file mode 100644 index 0000000..2b75361 Binary files /dev/null and b/niucloud/public/static/resource/images/diy/vert_m_balance.png differ diff --git a/niucloud/public/static/resource/images/diy/vert_m_develop.png b/niucloud/public/static/resource/images/diy/vert_m_develop.png new file mode 100644 index 0000000..4ec720c Binary files /dev/null and b/niucloud/public/static/resource/images/diy/vert_m_develop.png differ diff --git a/niucloud/public/static/resource/images/diy/vert_m_personal.png b/niucloud/public/static/resource/images/diy/vert_m_personal.png new file mode 100644 index 0000000..b941fad Binary files /dev/null and b/niucloud/public/static/resource/images/diy/vert_m_personal.png differ diff --git a/niucloud/public/static/resource/images/diy/vert_m_point.png b/niucloud/public/static/resource/images/diy/vert_m_point.png new file mode 100644 index 0000000..aa2e94e Binary files /dev/null and b/niucloud/public/static/resource/images/diy/vert_m_point.png differ diff --git a/niucloud/public/static/resource/images/diy/vert_m_service.png b/niucloud/public/static/resource/images/diy/vert_m_service.png new file mode 100644 index 0000000..db380cf Binary files /dev/null and b/niucloud/public/static/resource/images/diy/vert_m_service.png differ diff --git a/niucloud/public/static/resource/images/empty.png b/niucloud/public/static/resource/images/empty.png new file mode 100644 index 0000000..6e2a4ab Binary files /dev/null and b/niucloud/public/static/resource/images/empty.png differ diff --git a/niucloud/public/static/resource/images/member/apply_withdrawal/alipay.png b/niucloud/public/static/resource/images/member/apply_withdrawal/alipay.png new file mode 100644 index 0000000..dc14f10 Binary files /dev/null and b/niucloud/public/static/resource/images/member/apply_withdrawal/alipay.png differ diff --git a/niucloud/public/static/resource/images/member/apply_withdrawal/bank.png b/niucloud/public/static/resource/images/member/apply_withdrawal/bank.png new file mode 100644 index 0000000..7d8d0de Binary files /dev/null and b/niucloud/public/static/resource/images/member/apply_withdrawal/bank.png differ diff --git a/niucloud/public/static/resource/images/member/apply_withdrawal/close.png b/niucloud/public/static/resource/images/member/apply_withdrawal/close.png new file mode 100644 index 0000000..c1f7e7d Binary files /dev/null and b/niucloud/public/static/resource/images/member/apply_withdrawal/close.png differ diff --git a/niucloud/public/static/resource/images/member/apply_withdrawal/tixian.png b/niucloud/public/static/resource/images/member/apply_withdrawal/tixian.png new file mode 100644 index 0000000..4d2ceec Binary files /dev/null and b/niucloud/public/static/resource/images/member/apply_withdrawal/tixian.png differ diff --git a/niucloud/public/static/resource/images/member/apply_withdrawal/wechatpay.png b/niucloud/public/static/resource/images/member/apply_withdrawal/wechatpay.png new file mode 100644 index 0000000..75d2be7 Binary files /dev/null and b/niucloud/public/static/resource/images/member/apply_withdrawal/wechatpay.png differ diff --git a/niucloud/public/static/resource/images/member/balance_bg.png b/niucloud/public/static/resource/images/member/balance_bg.png new file mode 100644 index 0000000..07fc53d Binary files /dev/null and b/niucloud/public/static/resource/images/member/balance_bg.png differ diff --git a/niucloud/public/static/resource/images/member/reset.png b/niucloud/public/static/resource/images/member/reset.png new file mode 100644 index 0000000..6824f46 Binary files /dev/null and b/niucloud/public/static/resource/images/member/reset.png differ diff --git a/niucloud/public/static/resource/images/member/withdraw_deposit.png b/niucloud/public/static/resource/images/member/withdraw_deposit.png new file mode 100644 index 0000000..6fc64c9 Binary files /dev/null and b/niucloud/public/static/resource/images/member/withdraw_deposit.png differ diff --git a/niucloud/public/static/resource/images/pay/invite_friends_share.png b/niucloud/public/static/resource/images/pay/invite_friends_share.png new file mode 100644 index 0000000..6c9f7f1 Binary files /dev/null and b/niucloud/public/static/resource/images/pay/invite_friends_share.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/no-fenxiao.png b/niucloud/public/static/resource/images/shop_fenxiao/no-fenxiao.png new file mode 100644 index 0000000..e8a510f Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/no-fenxiao.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/ranking1.png b/niucloud/public/static/resource/images/shop_fenxiao/ranking1.png new file mode 100644 index 0000000..fff24a7 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/ranking1.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/ranking2.png b/niucloud/public/static/resource/images/shop_fenxiao/ranking2.png new file mode 100644 index 0000000..26f87d9 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/ranking2.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/ranking3.png b/niucloud/public/static/resource/images/shop_fenxiao/ranking3.png new file mode 100644 index 0000000..55ef543 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/ranking3.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-header.png b/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-header.png new file mode 100644 index 0000000..4b29b70 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-header.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-title.png b/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-title.png new file mode 100644 index 0000000..150fafa Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/sale-detail-title.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/sale-ranking.png b/niucloud/public/static/resource/images/shop_fenxiao/sale-ranking.png new file mode 100644 index 0000000..02988d9 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/sale-ranking.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/tark-money.png b/niucloud/public/static/resource/images/shop_fenxiao/tark-money.png new file mode 100644 index 0000000..eee6e0c Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/tark-money.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/task-detail-header.png b/niucloud/public/static/resource/images/shop_fenxiao/task-detail-header.png new file mode 100644 index 0000000..1c18be5 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/task-detail-header.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/task-header.png b/niucloud/public/static/resource/images/shop_fenxiao/task-header.png new file mode 100644 index 0000000..96a7e26 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/task-header.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/task.png b/niucloud/public/static/resource/images/shop_fenxiao/task.png new file mode 100644 index 0000000..6439710 Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/task.png differ diff --git a/niucloud/public/static/resource/images/shop_fenxiao/task1.png b/niucloud/public/static/resource/images/shop_fenxiao/task1.png new file mode 100644 index 0000000..cb3f40d Binary files /dev/null and b/niucloud/public/static/resource/images/shop_fenxiao/task1.png differ diff --git a/niucloud/public/static/resource/images/site/close.png b/niucloud/public/static/resource/images/site/close.png new file mode 100644 index 0000000..65123ee Binary files /dev/null and b/niucloud/public/static/resource/images/site/close.png differ diff --git a/niucloud/public/static/resource/images/system/layout-default.png b/niucloud/public/static/resource/images/system/layout-default.png new file mode 100644 index 0000000..0e6d57f Binary files /dev/null and b/niucloud/public/static/resource/images/system/layout-default.png differ diff --git a/niucloud/public/static/resource/images/system/layout-hellow.jpg b/niucloud/public/static/resource/images/system/layout-hellow.jpg new file mode 100644 index 0000000..9e4831e Binary files /dev/null and b/niucloud/public/static/resource/images/system/layout-hellow.jpg differ diff --git a/niucloud/public/static/resource/images/tabbar/article-selected.png b/niucloud/public/static/resource/images/tabbar/article-selected.png new file mode 100644 index 0000000..27cb0ee Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/article-selected.png differ diff --git a/niucloud/public/static/resource/images/tabbar/article.png b/niucloud/public/static/resource/images/tabbar/article.png new file mode 100644 index 0000000..5127b2b Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/article.png differ diff --git a/niucloud/public/static/resource/images/tabbar/index-selected.png b/niucloud/public/static/resource/images/tabbar/index-selected.png new file mode 100644 index 0000000..cb021cc Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/index-selected.png differ diff --git a/niucloud/public/static/resource/images/tabbar/index.png b/niucloud/public/static/resource/images/tabbar/index.png new file mode 100644 index 0000000..a61a97b Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/index.png differ diff --git a/niucloud/public/static/resource/images/tabbar/my-selected.png b/niucloud/public/static/resource/images/tabbar/my-selected.png new file mode 100644 index 0000000..0f6081b Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/my-selected.png differ diff --git a/niucloud/public/static/resource/images/tabbar/my.png b/niucloud/public/static/resource/images/tabbar/my.png new file mode 100644 index 0000000..b675b20 Binary files /dev/null and b/niucloud/public/static/resource/images/tabbar/my.png differ diff --git a/niucloud/public/wap/assets/_plugin-vue_export-helper.1b428a4d.js b/niucloud/public/wap/assets/_plugin-vue_export-helper.1b428a4d.js new file mode 100644 index 0000000..40b1840 --- /dev/null +++ b/niucloud/public/wap/assets/_plugin-vue_export-helper.1b428a4d.js @@ -0,0 +1 @@ +const o=(o,t)=>{const c=o.__vccOpts||o;for(const[s,n]of t)c[s]=n;return c};export{o as _}; diff --git a/niucloud/public/wap/assets/address-c15ec70e.css b/niucloud/public/wap/assets/address-c15ec70e.css new file mode 100644 index 0000000..8fa0a02 --- /dev/null +++ b/niucloud/public/wap/assets/address-c15ec70e.css @@ -0,0 +1 @@ +uni-view[data-v-580effc0],uni-scroll-view[data-v-580effc0],uni-swiper-item[data-v-580effc0]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-tabs__wrapper[data-v-580effc0]{display:flex;flex-direction:row;align-items:center}.u-tabs__wrapper__scroll-view-wrapper[data-v-580effc0]{flex:1;overflow:auto hidden}.u-tabs__wrapper__scroll-view[data-v-580effc0]{display:flex;flex-direction:row;flex:1}.u-tabs__wrapper__nav[data-v-580effc0]{display:flex;flex-direction:row;position:relative}.u-tabs__wrapper__nav__item[data-v-580effc0]{padding:0 11px;display:flex;flex-direction:row;align-items:center;justify-content:center}.u-tabs__wrapper__nav__item--disabled[data-v-580effc0]{cursor:not-allowed}.u-tabs__wrapper__nav__item__text[data-v-580effc0]{font-size:15px;color:#606266}.u-tabs__wrapper__nav__item__text--disabled[data-v-580effc0]{color:#c8c9cc!important}.u-tabs__wrapper__nav__line[data-v-580effc0]{height:3px;background:var(--primary-color);width:30px;position:absolute;bottom:2px;border-radius:100px;transition-property:transform;transition-duration:.3s}uni-view[data-v-19c3dfd5],uni-scroll-view[data-v-19c3dfd5],uni-swiper-item[data-v-19c3dfd5]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-swipe-action-item[data-v-19c3dfd5]{position:relative;overflow:hidden;touch-action:pan-y}.u-swipe-action-item__content[data-v-19c3dfd5]{background-color:#fff;z-index:10}.u-swipe-action-item__right[data-v-19c3dfd5]{position:absolute;top:0;bottom:0;right:0;display:flex;flex-direction:row}.u-swipe-action-item__right__button[data-v-19c3dfd5]{display:flex;flex-direction:row;justify-content:center;overflow:hidden;align-items:center}.u-swipe-action-item__right__button__wrapper[data-v-19c3dfd5]{display:flex;flex-direction:row;align-items:center;justify-content:center;padding:0 15px}.u-swipe-action-item__right__button__wrapper__text[data-v-19c3dfd5]{display:flex;flex-direction:row;align-items:center;color:#fff;font-size:15px;text-align:center;justify-content:center}[data-v-e74c975b] .u-tabs__wrapper__nav__line{bottom:0} diff --git a/niucloud/public/wap/assets/agreement-ca06a3ce.css b/niucloud/public/wap/assets/agreement-ca06a3ce.css new file mode 100644 index 0000000..0cd59f4 --- /dev/null +++ b/niucloud/public/wap/assets/agreement-ca06a3ce.css @@ -0,0 +1 @@ +._a[data-v-08dfb3fe]{padding:1.5px 0;color:#366092;word-break:break-all}._hover[data-v-08dfb3fe]{text-decoration:underline;opacity:.7}._img[data-v-08dfb3fe]{max-width:100%;-webkit-touch-callout:none}._block[data-v-08dfb3fe]{display:block}._b[data-v-08dfb3fe],._strong[data-v-08dfb3fe]{font-weight:700}._code[data-v-08dfb3fe]{font-family:monospace}._del[data-v-08dfb3fe]{text-decoration:line-through}._em[data-v-08dfb3fe],._i[data-v-08dfb3fe]{font-style:italic}._h1[data-v-08dfb3fe]{font-size:2em}._h2[data-v-08dfb3fe]{font-size:1.5em}._h3[data-v-08dfb3fe]{font-size:1.17em}._h5[data-v-08dfb3fe]{font-size:.83em}._h6[data-v-08dfb3fe]{font-size:.67em}._h1[data-v-08dfb3fe],._h2[data-v-08dfb3fe],._h3[data-v-08dfb3fe],._h4[data-v-08dfb3fe],._h5[data-v-08dfb3fe],._h6[data-v-08dfb3fe]{display:block;font-weight:700}._image[data-v-08dfb3fe]{height:1px}._ins[data-v-08dfb3fe]{text-decoration:underline}._li[data-v-08dfb3fe]{display:list-item}._ol[data-v-08dfb3fe]{list-style-type:decimal}._ol[data-v-08dfb3fe],._ul[data-v-08dfb3fe]{display:block;padding-left:40px;margin:1em 0}._q[data-v-08dfb3fe]:before{content:'"'}._q[data-v-08dfb3fe]:after{content:'"'}._sub[data-v-08dfb3fe]{font-size:smaller;vertical-align:sub}._sup[data-v-08dfb3fe]{font-size:smaller;vertical-align:super}._thead[data-v-08dfb3fe],._tbody[data-v-08dfb3fe],._tfoot[data-v-08dfb3fe]{display:table-row-group}._tr[data-v-08dfb3fe]{display:table-row}._td[data-v-08dfb3fe],._th[data-v-08dfb3fe]{display:table-cell;vertical-align:middle}._th[data-v-08dfb3fe]{font-weight:700;text-align:center}._ul[data-v-08dfb3fe]{list-style-type:disc}._ul ._ul[data-v-08dfb3fe]{margin:0;list-style-type:circle}._ul ._ul ._ul[data-v-08dfb3fe]{list-style-type:square}._abbr[data-v-08dfb3fe],._b[data-v-08dfb3fe],._code[data-v-08dfb3fe],._del[data-v-08dfb3fe],._em[data-v-08dfb3fe],._i[data-v-08dfb3fe],._ins[data-v-08dfb3fe],._label[data-v-08dfb3fe],._q[data-v-08dfb3fe],._span[data-v-08dfb3fe],._strong[data-v-08dfb3fe],._sub[data-v-08dfb3fe],._sup[data-v-08dfb3fe]{display:inline}._root[data-v-0aa9b049]{padding:1px 0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}._select[data-v-0aa9b049]{-webkit-user-select:text;-moz-user-select:text;user-select:text} diff --git a/niucloud/public/wap/assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js b/niucloud/public/wap/assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js new file mode 100644 index 0000000..9368a4e --- /dev/null +++ b/niucloud/public/wap/assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js @@ -0,0 +1 @@ +import{d as a,i as t,j as s,w as e,T as r,I as l,p as n,ad as u,aN as d,a0 as o,aO as i,h as c,x as p}from"./index-c1dbaba4.js";const y=a({__name:"app-link",props:{url:String,data:{type:Object,default:()=>({})},mode:{type:String,default:"navigateTo"},customClass:{type:[String,Object,Array],default:""},customStyle:{type:[String,Object,Array],default:""}},setup(a){const y=a,f=()=>{if(Object.keys(y.data).length){if(!y.data.url)return;if("app/pages/member/index"==u()&&!d())return void o().setLoginBack({url:y.data.url});i(y.data)}else c(y)};return(a,u)=>{const d=p;return t(),s(d,{onClick:f,class:l(y.customClass),style:n(y.customStyle)},{default:e((()=>[r(a.$slots,"default")])),_:3},8,["class","style"])}}});export{y as _}; diff --git a/niucloud/public/wap/assets/app-locale-en-pages.setting.index.7f2a9cf4.js b/niucloud/public/wap/assets/app-locale-en-pages.setting.index.7f2a9cf4.js new file mode 100644 index 0000000..86aca18 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-en-pages.setting.index.7f2a9cf4.js @@ -0,0 +1 @@ +const t="Personal settings",o="Switch language",s="Version",e="Log out",n={personalSettings:t,switchLang:o,version:s,logout:e};export{n as default,e as logout,t as personalSettings,o as switchLang,s as version}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.detail.7b286748.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.detail.7b286748.js new file mode 100644 index 0000000..15d04e7 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.detail.7b286748.js @@ -0,0 +1 @@ +const t="文章详情",a="摘要",e="正在加载",d={detail:t,abstract:"摘要",loadingText:e};export{a as abstract,d as default,t as detail,e as loadingText}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.list.079553e7.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.list.079553e7.js new file mode 100644 index 0000000..6f0a7ac --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.article.list.079553e7.js @@ -0,0 +1 @@ +const a="文章列表",e="~ 暂无数据 ~",l="全部",t="-- 到底了 --",o="请输入搜索关键词",s={list:a,noData:e,all:"全部",end:t,searchPlaceholder:o};export{l as all,s as default,t as end,a as list,e as noData,o as searchPlaceholder}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.bind.356a10db.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.bind.356a10db.js new file mode 100644 index 0000000..0005094 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.bind.356a10db.js @@ -0,0 +1 @@ +const e="绑定手机号",i="绑定",l="绑定中",d="请阅读并同意",o="请勾选已阅读并同意",a="请输入手机号",n="请输入验证码",r="微信用户一键绑定",b={bindMobile:e,bind:"绑定",binding:"绑定中",agreeTips:d,pleaceAgree:o,mobilePlaceholder:a,codePlaceholder:n,weixinUserAuth:r};export{d as agreeTips,i as bind,e as bindMobile,l as binding,n as codePlaceholder,b as default,a as mobilePlaceholder,o as pleaceAgree,r as weixinUserAuth}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.login.0404bd09.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.login.0404bd09.js new file mode 100644 index 0000000..72fd330 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.login.0404bd09.js @@ -0,0 +1 @@ +const e="登录中",o="请输入账号",a="请输入密码",l="忘记密码",n="还没有账号",r="去注册",s="和",i="登录代表您同意",d="密码登录",t="验证码登录",c="请输入手机号",g={logining:"登录中",usernamePlaceholder:o,passwordPlaceholder:a,resetpwd:l,noAccount:n,toRegister:"去注册",and:"和",agreeTips:i,usernameLogin:d,mobileLogin:t,mobilePlaceholder:c};export{i as agreeTips,s as and,g as default,e as logining,t as mobileLogin,c as mobilePlaceholder,n as noAccount,a as passwordPlaceholder,l as resetpwd,r as toRegister,d as usernameLogin,o as usernamePlaceholder}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.register.a5ee0e14.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.register.a5ee0e14.js new file mode 100644 index 0000000..5e9a4d7 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.register.a5ee0e14.js @@ -0,0 +1 @@ +const e="注册中",r="请输入账号",o="请输入密码",s="请再次确认密码",a="两次输入的密码不一致",i="忘记密码",l="已有账号",d="去登录",t="和",c="注册代表您同意",n="账号注册",g="手机号注册",m="请输入手机号",P={registering:"注册中",usernamePlaceholder:r,passwordPlaceholder:o,confirmPasswordPlaceholder:s,confirmPasswordError:a,resetpwd:i,haveAccount:l,toLogin:"去登录",and:"和",registerAgreeTips:c,usernameRegister:n,mobileRegister:g,mobilePlaceholder:m};export{t as and,a as confirmPasswordError,s as confirmPasswordPlaceholder,P as default,l as haveAccount,m as mobilePlaceholder,g as mobileRegister,o as passwordPlaceholder,c as registerAgreeTips,e as registering,i as resetpwd,d as toLogin,r as usernamePlaceholder,n as usernameRegister}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.resetpwd.75e76a8e.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.resetpwd.75e76a8e.js new file mode 100644 index 0000000..cf51bfa --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.auth.resetpwd.75e76a8e.js @@ -0,0 +1 @@ +const r="找回密码",o="请输入密码",s="请再次确认密码",a="两次输入的密码不一致",d={findPassword:r,passwordPlaceholder:o,confirmPasswordPlaceholder:s,confirmPasswordError:a};export{a as confirmPasswordError,s as confirmPasswordPlaceholder,d as default,r as findPassword,o as passwordPlaceholder}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.index.develop.ce9b7062.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.index.develop.ce9b7062.js new file mode 100644 index 0000000..e77ef3f --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.index.develop.ce9b7062.js @@ -0,0 +1 @@ +const e="开发环境配置",l="API请求地址",t="图片服务器地址",I="站点ID(VITE_SITE_ID)",a="请输入站点ID",d="请输入数字",r="最大不能超过",s={developTitle:e,baseUrl:l,imgUrl:t,siteId:I,siteIdPlaceholder:a,pleaseEnterNumber:d,maximumCannotExceed:r};export{l as baseUrl,s as default,e as developTitle,t as imgUrl,r as maximumCannotExceed,d as pleaseEnterNumber,I as siteId,a as siteIdPlaceholder}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account.a20f7aba.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account.a20f7aba.js new file mode 100644 index 0000000..ec69786 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account.a20f7aba.js @@ -0,0 +1 @@ +const a="支付宝账号",d="添加银行卡",n="添加支付宝账号",c="尾号",o="银行卡",t={alipayAccountNo:a,addBankCard:d,addAlipayAccount:n,endNumber:"尾号",bankCard:"银行卡"};export{n as addAlipayAccount,d as addBankCard,a as alipayAccountNo,o as bankCard,t as default,c as endNumber}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account_edit.10181839.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account_edit.10181839.js new file mode 100644 index 0000000..545236d --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.account_edit.10181839.js @@ -0,0 +1 @@ +const a="添加银行卡",e="请添加持卡人本人的银行卡",l="添加支付宝账号",n="请添加已实名的支付宝账号",c="持卡人姓名",o="请输入持卡人姓名",d="银行名称",t="请输入银行名称",i="银行卡号",p="请输入银行卡号",r="真实姓名",k="请输入真实姓名",A="支付宝账号",m="请输入支付宝账号",u="确定要删除该账号吗?",b={addBankCard:a,addBankCardTips:e,addAlipayAccount:l,addAlipayAccountTips:n,bankRealname:c,bankRealnamePlaceholder:o,bankName:d,bankNamePlaceholder:t,bankAccountNo:i,bankAccountNoPlaceholder:p,alipayRealname:r,alipayRealnamePlaceholder:k,alipayAccountNo:A,alipayAccountNoPlaceholder:m,deleteConfirm:u};export{l as addAlipayAccount,n as addAlipayAccountTips,a as addBankCard,e as addBankCardTips,A as alipayAccountNo,m as alipayAccountNoPlaceholder,r as alipayRealname,k as alipayRealnamePlaceholder,i as bankAccountNo,p as bankAccountNoPlaceholder,d as bankName,t as bankNamePlaceholder,c as bankRealname,o as bankRealnamePlaceholder,b as default,u as deleteConfirm}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address.634e4db8.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address.634e4db8.js new file mode 100644 index 0000000..1ae9bfc --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address.634e4db8.js @@ -0,0 +1 @@ +const d="快递地址",e="同城配送地址",s="新建收货地址",a={address:d,locationAddress:e,createAddress:s,default:"默认"};export{d as address,s as createAddress,a as default,e as locationAddress}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address_edit.de036147.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address_edit.de036147.js new file mode 100644 index 0000000..877a131 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.address_edit.de036147.js @@ -0,0 +1 @@ +const e="收货人",l="请输入收货人姓名",a="手机号码",d="请输入手机号码",r="选择地区",s="请选择地区",o="详细地址",c="请填写详细地址",t="设为默认地址",h={name:"收货人",namePlaceholder:l,mobile:a,mobilePlaceholder:d,selectArea:r,selectAreaPlaceholder:s,address:o,addressPlaceholder:c,defaultAddress:t};export{o as address,c as addressPlaceholder,h as default,t as defaultAddress,a as mobile,d as mobilePlaceholder,e as name,l as namePlaceholder,r as selectArea,s as selectAreaPlaceholder}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.apply_cash_out.7f44b3a1.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.apply_cash_out.7f44b3a1.js new file mode 100644 index 0000000..6e5b900 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.apply_cash_out.7f44b3a1.js @@ -0,0 +1 @@ +const a="提现",o="余额明细",e="提现到",t="请选择提现方式",c="微信默认钱包",l="提现金额",s="可提现余额",p="全部提现",h="最小提现金额为",i="手续费为",n="提现记录",y="提现至微信",T="提现至微信零钱",u="提现至支付宝",O="请先添加支付宝账号",r="提现至银行卡",d="请先添加银行卡",m="支付宝账号",A="储蓄卡",b="异常操作",M="没有可用的提现方式",w="请输入提现金额",x="提现金额格式错误",B="提现金额超出可提现金额",W="提现金额小于最低提现金额",f="更换",k="去添加",C={cashOut:"提现",balanceDetail:o,cashOutTo:"提现到",cashOutTypePlaceholder:t,wechatpay:c,cashOutMoneyTip:l,money:s,allTx:p,minWithdrawal:h,commissionTo:i,cashOutList:n,cashOutToWechat:y,cashOutToWechatTips:T,cashOutToAlipay:u,cashOutToAlipayTips:O,cashOutToBank:r,cashOutToBankTips:d,alipayAccountNo:m,debitCard:"储蓄卡",abnormalOperation:b,noAvailableCashOutType:M,applyMoneyPlaceholder:w,moneyformatError:x,applyMoneyExceed:B,applyMoneyBelow:W,replace:"更换",toAdd:"去添加"};export{b as abnormalOperation,m as alipayAccountNo,p as allTx,W as applyMoneyBelow,B as applyMoneyExceed,w as applyMoneyPlaceholder,o as balanceDetail,a as cashOut,n as cashOutList,l as cashOutMoneyTip,e as cashOutTo,u as cashOutToAlipay,O as cashOutToAlipayTips,r as cashOutToBank,d as cashOutToBankTips,y as cashOutToWechat,T as cashOutToWechatTips,t as cashOutTypePlaceholder,i as commissionTo,A as debitCard,C as default,h as minWithdrawal,s as money,x as moneyformatError,M as noAvailableCashOutType,f as replace,k as toAdd,c as wechatpay}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.balance.0a372d3c.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.balance.0a372d3c.js new file mode 100644 index 0000000..1dbe687 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.balance.0a372d3c.js @@ -0,0 +1 @@ +const a="我的余额",e="充值",c="提现",r="余额明细",l="账户余额(元)",n="余额(元)",o="可提现余额(元)",t="可用余额",h="充值金额错误",u="立即充值",g="请输入充值金额",b="元",d="充值记录",i={balanceInfo:a,recharge:"充值",cashOut:"提现",balanceDetail:r,accountBalance:l,balance:n,money:o,availableBalance:t,rechargeAmountError:h,clickRecharge:u,rechargeAmountPlaceholder:g,yuan:"元",rechargeRecord:d};export{l as accountBalance,t as availableBalance,n as balance,r as balanceDetail,a as balanceInfo,c as cashOut,u as clickRecharge,i as default,o as money,e as recharge,h as rechargeAmountError,g as rechargeAmountPlaceholder,d as rechargeRecord,b as yuan}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out.e9b5df1c.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out.e9b5df1c.js new file mode 100644 index 0000000..d32c4b6 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out.e9b5df1c.js @@ -0,0 +1 @@ +const e="申请时间",a="官方正在审核,请耐心等待",t="官方正在转账,请耐心等待",i="官方已转账,请及时查收",p="申请已取消",s="余额记录",l="佣金记录",m="暂无余额记录",o="暂无佣金记录",c={applyTime:e,toBeReviewed:a,toBeTransfer:t,transfer:i,cancelApply:p,balanceDetail:s,commissionDetail:l,emptyTip:m,commissemptyTip:o};export{e as applyTime,s as balanceDetail,p as cancelApply,o as commissemptyTip,l as commissionDetail,c as default,m as emptyTip,a as toBeReviewed,t as toBeTransfer,i as transfer}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out_detail.587d5494.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out_detail.587d5494.js new file mode 100644 index 0000000..88bd0b9 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.cash_out_detail.587d5494.js @@ -0,0 +1 @@ +const e="当前状态",a="交易号",t="手续费",r="申请时间",s="审核时间",n="银行名称",c="收款账号",f="拒绝理由",o="转账方式名称",u="转账时间",i={statusName:e,cashOutNo:"交易号",serviceMoney:"手续费",createTime:r,auditTime:s,transferBank:n,transferAccount:c,refuseReason:f,transferTypeName:o,transferTime:u};export{s as auditTime,a as cashOutNo,r as createTime,i as default,f as refuseReason,t as serviceMoney,e as statusName,c as transferAccount,n as transferBank,u as transferTime,o as transferTypeName}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.commission.c54dbf6f.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.commission.c54dbf6f.js new file mode 100644 index 0000000..2fbedf1 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.commission.c54dbf6f.js @@ -0,0 +1 @@ +const o="充值",e="提现",a="佣金明细",c="账户佣金(元)",i="累计佣金(元)",m="提现中佣金(元)",s="可用佣金",n="充值金额错误",r="立即充值",t="请输入充值金额",l="元",h="我的佣金",u={recharge:"充值",cashOut:"提现",commissionDetail:a,accountCommission:c,commission:i,money:m,availableCommission:s,rechargeAmountError:n,clickRecharge:r,rechargeAmountPlaceholder:t,yuan:"元",commissionInfo:h};export{c as accountCommission,s as availableCommission,e as cashOut,r as clickRecharge,i as commission,a as commissionDetail,h as commissionInfo,u as default,m as money,o as recharge,n as rechargeAmountError,t as rechargeAmountPlaceholder,l as yuan}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.detailed_account.d74ec38a.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.detailed_account.d74ec38a.js new file mode 100644 index 0000000..be07ba4 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.detailed_account.d74ec38a.js @@ -0,0 +1 @@ +const e="余额明细",i="佣金明细",t="暂无余额明细",a="暂无佣金明细",m={balanceDetail:e,commissionDetail:i,emptyTip:t,commissemptyTip:a};export{e as balanceDetail,a as commissemptyTip,i as commissionDetail,m as default,t as emptyTip}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.location_address_edit.bca4dc8d.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.location_address_edit.bca4dc8d.js new file mode 100644 index 0000000..5e13b87 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.location_address_edit.bca4dc8d.js @@ -0,0 +1 @@ +const e="收货人",d="请输入联系人姓名",s="手机号码",r="请输入手机号码",l="收货地址",a="选择地址",o="请选择地址",c="楼号门牌",t="详细地址如 1单元101",h="请填写门牌号",m="设为默认地址",A="修改",P={name:"收货人",namePlaceholder:d,mobile:s,mobilePlaceholder:r,deliveryAddress:l,selectAddress:a,selectAddressPlaceholder:o,address:c,addressPlaceholder:t,addressError:h,defaultAddress:m,update:"修改"};export{c as address,h as addressError,t as addressPlaceholder,P as default,m as defaultAddress,l as deliveryAddress,s as mobile,r as mobilePlaceholder,e as name,d as namePlaceholder,a as selectAddress,o as selectAddressPlaceholder,A as update}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.personal.ee5ae624.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.personal.ee5ae624.js new file mode 100644 index 0000000..f8fc3b1 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.personal.ee5ae624.js @@ -0,0 +1 @@ +const a="昵称",e="性别",n="手机号",i="生日",d="未知",m="更换头像",o="修改昵称",t="男",b="女",u="绑定手机",c={nickname:"昵称",sex:"性别",mobile:"手机号",birthday:"生日",unknown:"未知",updateHeadimg:m,updateNickname:o,man:"男",woman:"女",bindMobile:u};export{u as bindMobile,i as birthday,c as default,t as man,n as mobile,a as nickname,e as sex,d as unknown,m as updateHeadimg,o as updateNickname,b as woman}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record.20315090.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record.20315090.js new file mode 100644 index 0000000..d3ec2a1 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record.20315090.js @@ -0,0 +1 @@ +const e="充值记录",r="暂无充值记录",t={rechargeRecord:e,emptyTip:r};export{t as default,r as emptyTip,e as rechargeRecord}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record_detail.0c628f5f.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record_detail.0c628f5f.js new file mode 100644 index 0000000..8ec8394 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.recharge_record_detail.0c628f5f.js @@ -0,0 +1 @@ +const e="订单编号",o="创建时间",r={orderNo:e,createTime:o};export{o as createTime,r as default,e as orderNo}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.withdrawal_detail.c63044ba.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.withdrawal_detail.c63044ba.js new file mode 100644 index 0000000..dfaf052 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.member.withdrawal_detail.c63044ba.js @@ -0,0 +1 @@ +const a="充值",e="提现",c="余额明细",r="账户余额(元)",l="余额(元)",n="可提现余额(元)",o="可用余额",t="充值金额错误",h="立即充值",u="请输入充值金额",g="元",b={recharge:"充值",cashOut:"提现",balanceDetail:c,accountBalance:r,balance:l,money:n,availableBalance:o,rechargeAmountError:t,clickRecharge:h,rechargeAmountPlaceholder:u,yuan:"元"};export{r as accountBalance,o as availableBalance,l as balance,c as balanceDetail,e as cashOut,h as clickRecharge,b as default,n as money,a as recharge,t as rechargeAmountError,u as rechargeAmountPlaceholder,g as yuan}; diff --git a/niucloud/public/wap/assets/app-locale-zh-Hans-pages.setting.index.81e854bb.js b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.setting.index.81e854bb.js new file mode 100644 index 0000000..88e9ce3 --- /dev/null +++ b/niucloud/public/wap/assets/app-locale-zh-Hans-pages.setting.index.81e854bb.js @@ -0,0 +1 @@ +const t="个人设置",o="切换语言",s="版本号",e="退出登录",n={personalSettings:t,switchLang:o,version:"版本号",logout:e};export{n as default,e as logout,t as personalSettings,o as switchLang,s as version}; diff --git a/niucloud/public/wap/assets/app-pages-auth-agreement.83156e79.js b/niucloud/public/wap/assets/app-pages-auth-agreement.83156e79.js new file mode 100644 index 0000000..1cced4f --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-auth-agreement.83156e79.js @@ -0,0 +1 @@ +import{z as t,A as s,B as e,C as i,D as n,E as a,i as r,j as o,w as l,F as h,G as c,H as d,m as p,p as u,I as m,J as g,k as f,K as y,L as b,M as x,N as k,x as v,O as w,P as T,Q as _,f as $,R as N,S as L,T as O,d as S,r as C,o as I,U as j,q as R,t as A}from"./index-c1dbaba4.js";import{_ as z}from"./_plugin-vue_export-helper.1b428a4d.js";var B={abbr:!0,b:!0,big:!0,code:!0,del:!0,em:!0,i:!0,ins:!0,label:!0,q:!0,small:!0,span:!0,strong:!0,sub:!0,sup:!0};const E={isInline:function(t,s){return B[t]||-1!==(s||"").indexOf("display:inline")}},V=t=>{t.$wxs||(t.$wxs=[]),t.$wxs.push("handler"),t.mixins||(t.mixins=[]),t.mixins.push({beforeCreate(){this.handler=E}})},q={name:"node",options:{},data:()=>({ctrl:{}}),props:{name:String,attrs:{type:Object,default:()=>({})},childs:Array,opts:Array},components:{},mounted(){if(this.$nextTick((()=>{for(this.root=this.$parent;"u-parse"!==this.root.$options.name;this.root=this.root.$parent);})),this.opts[0]){let s;for(s=this.childs.length;s--&&"img"!==this.childs[s].name;);-1!==s&&(this.observer=t(this).relativeToViewport({top:500,bottom:500}),this.observer.observe("._img",(t=>{t.intersectionRatio&&(this.$set(this.ctrl,"load",1),this.observer.disconnect())})))}},beforeDestroy(){this.observer&&this.observer.disconnect()},methods:{play(t){if(this.root.$emit("play"),this.root.pauseVideo){let e=!1;const i=t.target.id;for(let t=this.root._videos.length;t--;)this.root._videos[t].id===i?e=!0:this.root._videos[t].pause();if(!e){const t=s(i,this);t.id=i,this.root.playbackRate&&t.playbackRate(this.root.playbackRate),this.root._videos.push(t)}}},imgTap(t){const s=this.childs[t.currentTarget.dataset.i];s.a?this.linkTap(s.a):s.attrs.ignore||(s.attrs.src=s.attrs.src||s.attrs["data-src"],this.root.$emit("imgtap",s.attrs),this.root.previewImg&&e({current:parseInt(s.attrs.i),urls:this.root.imgList}))},imgLongTap(t){},imgLoad(t){const s=t.currentTarget.dataset.i;(this.opts[1]&&!this.ctrl[s]||-1===this.ctrl[s])&&this.$set(this.ctrl,s,1),this.checkReady()},checkReady(){this.root.lazyLoad||(this.root._unloadimgs-=1,this.root._unloadimgs||setTimeout((()=>{this.root.getRect().then((t=>{this.root.$emit("ready",t)})).catch((()=>{this.root.$emit("ready",{})}))}),350))},linkTap(t){const s=t.currentTarget?this.childs[t.currentTarget.dataset.i]:{},e=s.attrs||t,a=e.href;this.root.$emit("linktap",Object.assign({innerText:this.root.getText(s.children||[])},e)),a&&("#"===a[0]?this.root.navigateTo(a.substring(1)).catch((()=>{})):a.split("?")[0].includes("://")?this.root.copyLink&&window.open(a):i({url:a,fail(){n({url:a,fail(){}})}}))},mediaError(t){const s=t.currentTarget.dataset.i,e=this.childs[s];if("video"===e.name||"audio"===e.name){let t=(this.ctrl[s]||0)+1;if(t>e.src.length&&(t=0),t[(r(!0),h(c,null,d(e.childs,((i,a)=>(r(),h(c,{key:a},[p(" 图片 "),p(" 占位图 "),"img"===i.name&&!i.t&&(e.opts[1]&&!n.ctrl[a]||n.ctrl[a]<0)?(r(),o($,{key:0,class:"_img",style:u(i.attrs.style),src:n.ctrl[a]<0?e.opts[2]:e.opts[1],mode:"widthFix"},null,8,["style","src"])):p("v-if",!0),p(" 显示图片 "),"img"===i.name?(r(),h("img",{key:1,id:i.attrs.id,class:m("_img "+i.attrs.class),style:u((-1===n.ctrl[a]?"display:none;":"")+i.attrs.style),src:i.attrs.src||(n.ctrl.load?i.attrs["data-src"]:""),"data-i":a,onLoad:s[0]||(s[0]=(...t)=>_.imgLoad&&_.imgLoad(...t)),onError:s[1]||(s[1]=(...t)=>_.mediaError&&_.mediaError(...t)),onClick:s[2]||(s[2]=g(((...t)=>_.imgTap&&_.imgTap(...t)),["stop"])),onLongpress:s[3]||(s[3]=(...t)=>_.imgLongTap&&_.imgLongTap(...t))},null,46,["id","src","data-i"])):i.text?(r(),h(c,{key:2},[p(" 文本 "),f(N,{decode:""},{default:l((()=>[y(b(i.text),1)])),_:2},1024)],2112)):"br"===i.name?(r(),o(N,{key:3},{default:l((()=>[y("\\n")])),_:1})):"a"===i.name?(r(),h(c,{key:4},[p(" 链接 "),f(O,{id:i.attrs.id,class:m((i.attrs.href?"_a ":"")+i.attrs.class),"hover-class":"_hover",style:u("display:inline;"+i.attrs.style),"data-i":a,onClick:g(_.linkTap,["stop"])},{default:l((()=>[f(L,{name:"span",childs:i.children,opts:e.opts,style:{display:"inherit"}},null,8,["childs","opts"])])),_:2},1032,["id","class","style","data-i","onClick"])],2112)):"video"===i.name?(r(),h(c,{key:5},[p(" 视频 "),f(S,{id:i.attrs.id,class:m(i.attrs.class),style:u(i.attrs.style),autoplay:i.attrs.autoplay,controls:i.attrs.controls,loop:i.attrs.loop,muted:i.attrs.muted,"object-fit":i.attrs["object-fit"],poster:i.attrs.poster,src:i.src[n.ctrl[a]||0],"data-i":a,onPlay:_.play,onError:_.mediaError},null,8,["id","class","style","autoplay","controls","loop","muted","object-fit","poster","src","data-i","onPlay","onError"])],2112)):"iframe"===i.name?(r(),h("iframe",{key:6,style:u(i.attrs.style),allowfullscreen:i.attrs.allowfullscreen,frameborder:i.attrs.frameborder,src:i.attrs.src},null,12,["allowfullscreen","frameborder","src"])):"embed"===i.name?(r(),h("embed",{key:7,style:u(i.attrs.style),src:i.attrs.src},null,12,["src"])):"table"===i.name&&i.c||"li"===i.name?(r(),o(O,{key:8,id:i.attrs.id,class:m("_"+i.name+" "+i.attrs.class),style:u(i.attrs.style)},{default:l((()=>["li"===i.name?(r(),o(L,{key:0,childs:i.children,opts:e.opts},null,8,["childs","opts"])):(r(!0),h(c,{key:1},d(i.children,((t,s)=>(r(),o(O,{key:s,class:m("_"+t.name+" "+t.attrs.class),style:u(t.attrs.style)},{default:l((()=>["td"===t.name||"th"===t.name?(r(),o(L,{key:0,childs:t.children,opts:e.opts},null,8,["childs","opts"])):(r(!0),h(c,{key:1},d(t.children,((t,s)=>(r(),h(c,{key:s},["td"===t.name||"th"===t.name?(r(),o(O,{key:0,class:m("_"+t.name+" "+t.attrs.class),style:u(t.attrs.style)},{default:l((()=>[f(L,{childs:t.children,opts:e.opts},null,8,["childs","opts"])])),_:2},1032,["class","style"])):(r(),o(O,{key:1,class:m("_"+t.name+" "+t.attrs.class),style:u(t.attrs.style)},{default:l((()=>[(r(!0),h(c,null,d(t.children,((t,s)=>(r(),o(O,{key:s,class:m("_"+t.name+" "+t.attrs.class),style:u(t.attrs.style)},{default:l((()=>[f(L,{childs:t.children,opts:e.opts},null,8,["childs","opts"])])),_:2},1032,["class","style"])))),128))])),_:2},1032,["class","style"]))],64)))),128))])),_:2},1032,["class","style"])))),128))])),_:2},1032,["id","class","style"])):i.c||t.handler.isInline(i.name,i.attrs.style)?2===i.c?(r(),h(c,{key:10},[p(" 继续递归 "),f(O,{id:i.attrs.id,class:m("_block _"+i.name+" "+i.attrs.class),style:u(i.f+";"+i.attrs.style)},{default:l((()=>[(r(!0),h(c,null,d(i.children,((t,s)=>(r(),o(L,{key:s,style:u(t.f),name:t.name,attrs:t.attrs,childs:t.children,opts:e.opts},null,8,["style","name","attrs","childs","opts"])))),128))])),_:2},1032,["id","class","style"])],2112)):(r(),o(L,{key:11,style:u(i.f),name:i.name,attrs:i.attrs,childs:i.children,opts:e.opts},null,8,["style","name","attrs","childs","opts"])):(r(),h(c,{key:9},[p(" 富文本 "),f(C,{id:i.attrs.id,style:u(i.f),"user-select":e.opts[4],nodes:[i]},null,8,["id","style","user-select","nodes"])],2112))],64)))),128))])),_:1},8,["id","class","style"])}],["__scopeId","data-v-08dfb3fe"]]),F={trustTags:Z("a,abbr,ad,audio,b,blockquote,br,code,col,colgroup,dd,del,dl,dt,div,em,fieldset,h1,h2,h3,h4,h5,h6,hr,i,img,ins,label,legend,li,ol,p,q,ruby,rt,source,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,title,ul,video"),blockTags:Z("address,article,aside,body,caption,center,cite,footer,header,html,nav,pre,section"),ignoreTags:Z("area,base,canvas,embed,frame,head,iframe,input,link,map,meta,param,rp,script,source,style,textarea,title,track,wbr"),voidTags:Z("area,base,br,col,circle,ellipse,embed,frame,hr,img,input,line,link,meta,param,path,polygon,rect,source,track,use,wbr"),entities:{lt:"<",gt:">",quot:'"',apos:"'",ensp:" ",emsp:" ",nbsp:" ",semi:";",ndash:"–",mdash:"—",middot:"·",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",bull:"•",hellip:"…",larr:"←",uarr:"↑",rarr:"→",darr:"↓"},tagStyle:{address:"font-style:italic",big:"display:inline;font-size:1.2em",caption:"display:table-caption;text-align:center",center:"text-align:center",cite:"font-style:italic",dd:"margin-left:40px",mark:"background-color:yellow",pre:"font-family:monospace;white-space:pre",s:"text-decoration:line-through",small:"display:inline;font-size:0.8em",strike:"text-decoration:line-through",u:"text-decoration:underline"},svgDict:{animatetransform:"animateTransform",lineargradient:"linearGradient",viewbox:"viewBox",attributename:"attributeName",repeatcount:"repeatCount",repeatdur:"repeatDur"}},P={},{windowWidth:U}=_(),M=Z(" ,\r,\n,\t,\f");let G=0;function Z(t){const s=Object.create(null),e=t.split(",");for(let i=e.length;i--;)s[e[i]]=!0;return s}function H(t,s){let e=t.indexOf("&");for(;-1!==e;){const i=t.indexOf(";",e+3);let n;if(-1===i)break;"#"===t[e+1]?(n=parseInt(("x"===t[e+2]?"0":"")+t.substring(e+2,i)),isNaN(n)||(t=t.substr(0,e)+String.fromCharCode(n)+t.substr(i+1))):(n=t.substring(e+1,i),(F.entities[n]||"amp"===n&&s)&&(t=t.substr(0,e)+(F.entities[n]||"&")+t.substr(i+1))),e=t.indexOf("&",e+1)}return t}function J(t){let s=t.length-1;for(let e=s;e>=-1;e--)(-1===e||t[e].c||!t[e].name||"div"!==t[e].name&&"p"!==t[e].name&&"h"!==t[e].name[0]||(t[e].attrs.style||"").includes("inline"))&&(s-e>=5&&t.splice(e+1,s-e,{name:"div",attrs:{},children:t.slice(e+1,s+1)}),s=e-1)}function K(t){this.options=t||{},this.tagStyle=Object.assign({},F.tagStyle,this.options.tagStyle),this.imgList=t.imgList||[],this.imgList._unloadimgs=0,this.plugins=t.plugins||[],this.attrs=Object.create(null),this.stack=[],this.nodes=[],this.pre=(this.options.containerStyle||"").includes("white-space")&&this.options.containerStyle.includes("pre")?2:0}function Q(t){this.handler=t}F.ignoreTags.iframe=void 0,F.trustTags.iframe=!0,F.ignoreTags.embed=void 0,F.trustTags.embed=!0,K.prototype.parse=function(t){for(let s=this.plugins.length;s--;)this.plugins[s].onUpdate&&(t=this.plugins[s].onUpdate(t,F)||t);for(new Q(this).parse(t);this.stack.length;)this.popNode();return this.nodes.length>50&&J(this.nodes),this.nodes},K.prototype.expose=function(){for(let t=this.stack.length;t--;){const s=this.stack[t];if(s.c||"a"===s.name||"video"===s.name||"audio"===s.name)return;s.c=1}},K.prototype.hook=function(t){for(let s=this.plugins.length;s--;)if(this.plugins[s].onParse&&!1===this.plugins[s].onParse(t,this))return!1;return!0},K.prototype.getUrl=function(t){const s=this.options.domain;return"/"===t[0]?"/"===t[1]?t=(s?s.split("://")[0]:"http")+":"+t:s&&(t=s+t):t.includes("data:")||t.includes("://")||s&&(t=s+"/"+t),t},K.prototype.parseStyle=function(t){const s=t.attrs,e=(this.tagStyle[t.name]||"").split(";").concat((s.style||"").split(";")),i={};let n="";s.id&&!this.xml&&(this.options.useAnchor?this.expose():"img"!==t.name&&"a"!==t.name&&"video"!==t.name&&"audio"!==t.name&&(s.id=void 0)),s.width&&(i.width=parseFloat(s.width)+(s.width.includes("%")?"%":"px"),s.width=void 0),s.height&&(i.height=parseFloat(s.height)+(s.height.includes("%")?"%":"px"),s.height=void 0);for(let a=0,r=e.length;a0||r.includes("safe"))n+=`;${s}:${r}`;else if(!i[s]||r.includes("import")||!i[s].includes("import")){if(r.includes("url")){let t=r.indexOf("(")+1;if(t){for(;'"'===r[t]||"'"===r[t]||M[r[t]];)t++;r=r.substr(0,t)+this.getUrl(r.substr(t))}}else r.includes("rpx")&&(r=r.replace(/[0-9.]+\s*rpx/g,(t=>parseFloat(t)*U/750+"px")));i[s]=r}}return t.attrs.style=n,i},K.prototype.onTagName=function(t){this.tagName=this.xml?t:t.toLowerCase(),"svg"===this.tagName&&(this.xml=(this.xml||0)+1)},K.prototype.onAttrName=function(t){"data-"===(t=this.xml?t:t.toLowerCase()).substr(0,5)?"data-src"!==t||this.attrs.src?"img"===this.tagName||"a"===this.tagName?this.attrName=t:this.attrName=void 0:this.attrName="src":(this.attrName=t,this.attrs[t]="T")},K.prototype.onAttrVal=function(t){const s=this.attrName||"";"style"===s||"href"===s?this.attrs[s]=H(t,!0):s.includes("src")?this.attrs[s]=this.getUrl(H(t,!0)):s&&(this.attrs[s]=t)},K.prototype.onOpenTag=function(t){const s=Object.create(null);s.name=this.tagName,s.attrs=this.attrs,this.options.nodes.length&&(s.type="node"),this.attrs=Object.create(null);const e=s.attrs,i=this.stack[this.stack.length-1],n=i?i.children:this.nodes,a=this.xml?t:F.voidTags[s.name];if(P[s.name]&&(e.class=P[s.name]+(e.class?" "+e.class:"")),"embed"===s.name&&this.expose(),"video"!==s.name&&"audio"!==s.name||("video"!==s.name||e.id||(e.id="v"+G++),e.controls||e.autoplay||(e.controls="T"),s.src=[],e.src&&(s.src.push(e.src),e.src=void 0),this.expose()),a){if(!this.hook(s)||F.ignoreTags[s.name])return void("base"!==s.name||this.options.domain?"source"===s.name&&i&&("video"===i.name||"audio"===i.name)&&e.src&&i.src.push(e.src):this.options.domain=e.href);const t=this.parseStyle(s);if("img"===s.name){if(e.src&&(e.src.includes("webp")&&(s.webp="T"),e.src.includes("data:")&&!e["original-src"]&&(e.ignore="T"),!e.ignore||s.webp||e.src.includes("cloud://"))){for(let n=this.stack.length;n--;){const i=this.stack[n];"a"===i.name&&(s.a=i.attrs),"table"!==i.name||s.webp||e.src.includes("cloud://")||(!t.display||t.display.includes("inline")?s.t="inline-block":s.t=t.display,t.display=void 0),i.c=1}e.i=this.imgList.length.toString();let i=e["original-src"]||e.src;this.imgList.push(i),s.t||(this.imgList._unloadimgs+=1),this.options.lazyLoad&&(e["data-src"]=e.src,e.src=void 0)}"inline"===t.display&&(t.display=""),e.ignore&&(t["max-width"]=t["max-width"]||"100%",e.style+=";-webkit-touch-callout:none"),parseInt(t.width)>U&&(t.height=void 0),isNaN(parseInt(t.width))||(s.w="T"),!isNaN(parseInt(t.height))&&(!t.height.includes("%")||i&&(i.attrs.style||"").includes("height"))&&(s.h="T")}else if("svg"===s.name)return n.push(s),this.stack.push(s),void this.popNode();for(const s in t)t[s]&&(e.style+=`;${s}:${t[s].replace(" !important","")}`);e.style=e.style.substr(1)||void 0}else("pre"===s.name||(e.style||"").includes("white-space")&&e.style.includes("pre"))&&2!==this.pre&&(this.pre=s.pre=1),s.children=[],this.stack.push(s);n.push(s)},K.prototype.onCloseTag=function(t){let s;for(t=this.xml?t:t.toLowerCase(),s=this.stack.length;s--&&this.stack[s].name!==t;);if(-1!==s)for(;this.stack.length>s;)this.popNode();else if("p"===t||"br"===t){(this.stack.length?this.stack[this.stack.length-1].children:this.nodes).push({name:t,attrs:{class:P[t]||"",style:this.tagStyle[t]||""}})}},K.prototype.popNode=function(){const t=this.stack.pop();let s=t.attrs;const e=t.children,i=this.stack[this.stack.length-1],n=i?i.children:this.nodes;if(!this.hook(t)||F.ignoreTags[t.name])return"title"===t.name&&e.length&&"text"===e[0].type&&this.options.setTitle&&$({title:e[0].text}),void n.pop();if(t.pre&&2!==this.pre){this.pre=t.pre=void 0;for(let t=this.stack.length;t--;)this.stack[t].pre&&(this.pre=1)}const a={};if("svg"===t.name){if(this.xml>1)return void this.xml--;let e="";const i=s.style;return s.style="",s.xmlns="http://www.w3.org/2000/svg",function t(s){if("text"===s.type)return void(e+=s.text);const i=F.svgDict[s.name]||s.name;e+="<"+i;for(const n in s.attrs){const t=s.attrs[n];t&&(e+=` ${F.svgDict[n]||n}="${t}"`)}if(s.children){e+=">";for(let e=0;e"}else e+="/>"}(t),t.name="img",t.attrs={src:"data:image/svg+xml;utf8,"+e.replace(/#/g,"%23"),style:i,ignore:"T"},t.children=void 0,void(this.xml=!1)}if(s.align&&("table"===t.name?"center"===s.align?a["margin-inline-start"]=a["margin-inline-end"]="auto":a.float=s.align:a["text-align"]=s.align,s.align=void 0),s.dir&&(a.direction=s.dir,s.dir=void 0),"font"===t.name&&(s.color&&(a.color=s.color,s.color=void 0),s.face&&(a["font-family"]=s.face,s.face=void 0),s.size)){let t=parseInt(s.size);isNaN(t)||(t<1?t=1:t>7&&(t=7),a["font-size"]=["x-small","small","medium","large","x-large","xx-large","xxx-large"][t-1]),s.size=void 0}if((s.class||"").includes("align-center")&&(a["text-align"]="center"),Object.assign(a,this.parseStyle(t)),"table"!==t.name&&parseInt(a.width)>U&&(a["max-width"]="100%",a["box-sizing"]="border-box"),F.blockTags[t.name]?t.name="div":F.trustTags[t.name]||this.xml||(t.name="span"),"a"===t.name||"ad"===t.name||"iframe"===t.name)this.expose();else if("video"===t.name)(a.height||"").includes("auto")&&(a.height=void 0);else if("ul"!==t.name&&"ol"!==t.name||!t.c){if("table"===t.name){let i=parseFloat(s.cellpadding),n=parseFloat(s.cellspacing);const r=parseFloat(s.border),o=a["border-color"],l=a["border-style"];if(t.c&&(isNaN(i)&&(i=2),isNaN(n)&&(n=2)),r&&(s.style+=`;border:${r}px ${l||"solid"} ${o||"gray"}`),t.flag&&t.c){a.display="grid",n?(a["grid-gap"]=n+"px",a.padding=n+"px"):r&&(s.style+=";border-left:0;border-top:0");const h=[],c=[],d=[],p={};!function t(s){for(let e=0;e=50&&t.c&&!(a.display||"").includes("flex")&&J(e);for(const o in a)if(a[o]){const e=`;${o}:${a[o].replace(" !important","")}`;r&&(o.includes("flex")&&"flex-direction"!==o||"align-self"===o||o.includes("grid")||"-"===a[o][0]||o.includes("width")&&e.includes("%"))?(t.f+=e,"width"===o&&(s.style+=";width:100%")):s.style+=e}s.style=s.style.substr(1)||void 0},K.prototype.onText=function(t){if(!this.pre){let s,e="";for(let i=0,n=t.length;i"===this.content[this.i]||s&&">"===this.content[this.i+1])&&(t&&this.handler[t](this.content.substring(this.start,this.i)),this.i+=s?2:1,this.start=this.i,this.handler.onOpenTag(s),"script"===this.handler.tagName?(this.i=this.content.indexOf("="a"&&t<="z"||t>="A"&&t<="Z")this.start!==this.i&&this.handler.onText(this.content.substring(this.start,this.i)),this.start=++this.i,this.state=this.tagName;else if("/"===t||"!"===t||"?"===t){this.start!==this.i&&this.handler.onText(this.content.substring(this.start,this.i));const s=this.content[this.i+2];if("/"===t&&(s>="a"&&s<="z"||s>="A"&&s<="Z"))return this.i+=2,this.start=this.i,void(this.state=this.endTag);let e="--\x3e";"!"===t&&"-"===this.content[this.i+2]&&"-"===this.content[this.i+3]||(e=">"),this.i=this.content.indexOf(e,this.i),-1!==this.i&&(this.i+=e.length,this.start=this.i)}else this.i++},Q.prototype.tagName=function(){if(M[this.content[this.i]]){for(this.handler.onTagName(this.content.substring(this.start,this.i));M[this.content[++this.i]];);this.i"===t||"/"===t){if(this.handler.onCloseTag(this.content.substring(this.start,this.i)),">"!==t&&(this.i=this.content.indexOf(">",this.i),-1===this.i))return;this.start=++this.i,this.state=this.text}else this.i++};const W=[];const X=z({name:"u-parse",data:()=>({nodes:[]}),props:{containerStyle:{type:String,default:""},content:{type:String,default:""},copyLink:{type:[Boolean,String],default:!0},domain:String,errorImg:{type:String,default:""},lazyLoad:{type:[Boolean,String],default:!1},loadingImg:{type:String,default:""},pauseVideo:{type:[Boolean,String],default:!0},previewImg:{type:[Boolean,String],default:!0},scrollTable:[Boolean,String],selectable:[Boolean,String],setTitle:{type:[Boolean,String],default:!0},showImgMenu:{type:[Boolean,String],default:!0},tagStyle:Object,useAnchor:[Boolean,Number]},emits:["load","ready","imgTap","linkTap","play","error"],components:{node:D},watch:{content(t){this.setContent(t)}},created(){this.plugins=[];for(let t=W.length;t--;)this.plugins.push(new W[t](this))},mounted(){this.content&&!this.nodes.length&&this.setContent(this.content)},beforeDestroy(){this._hook("onDetached")},methods:{in(t,s,e){t&&s&&e&&(this._in={page:t,selector:s,scrollTop:e})},navigateTo(t,s){return new Promise(((e,i)=>{if(!this.useAnchor)return void i(Error("Anchor is disabled"));s=s||parseInt(this.useAnchor)||0;const n=N().in(this._in?this._in.page:this).select((this._in?this._in.selector:"._root")+(t?` #${t}`:"")).boundingClientRect();this._in?n.select(this._in.selector).scrollOffset().select(this._in.selector).boundingClientRect():n.selectViewport().scrollOffset(),n.exec((t=>{if(!t[0])return void i(Error("Label not found"));const n=t[1].scrollTop+t[0].top-(t[2]?t[2].top:0)+s;this._in?this._in.page[this._in.scrollTop]=n:L({scrollTop:n,duration:300}),e()}))}))},getText(t){let s="";return function t(e){for(let i=0;i"0"&&n.name[1]<"7";e&&s&&"\n"!==s[s.length-1]&&(s+="\n"),n.children&&t(n.children),e&&"\n"!==s[s.length-1]?s+="\n":"td"!==n.name&&"th"!==n.name||(s+="\t")}}}(t||this.nodes),s},getRect(){return new Promise(((t,s)=>{N().in(this).select("#_root").boundingClientRect().exec((e=>e[0]?t(e[0]):s(Error("Root label not found"))))}))},pauseMedia(){for(let t=(this._videos||[]).length;t--;)this._videos[t].pause()},setPlaybackRate(t){this.playbackRate=t;for(let s=(this._videos||[]).length;s--;)this._videos[s].playbackRate(t)},setContent(t,s){s&&this.imgList||(this.imgList=[]);const e=new K(this).parse(t);if(this.$set(this,"nodes",s?(this.nodes||[]).concat(e):e),this._videos=[],this.$nextTick((()=>{this._hook("onLoad"),this.$emit("load")})),this.lazyLoad||this.imgList._unloadimgs{e&&e.height||(e={}),e.height===t?this.$emit("ready",e):(t=e.height,setTimeout((()=>{this.getRect().then(s).catch(s)}),350))};this.getRect().then(s).catch(s)}else this.imgList._unloadimgs||this.getRect().then((t=>{this.$emit("ready",t)})).catch((()=>{this.$emit("ready",{})}))},_hook(t){for(let s=W.length;s--;)this.plugins[s][t]&&this.plugins[s][t]()}}},[["render",function(t,s,e,i,n,h){const c=a("node"),d=v;return r(),o(d,{id:"_root",class:m((e.selectable?"_select ":"")+"_root"),style:u(e.containerStyle)},{default:l((()=>[n.nodes[0]?(r(),o(c,{key:1,childs:n.nodes,opts:[e.lazyLoad,e.loadingImg,e.errorImg,e.showImgMenu,e.selectable],name:"span"},null,8,["childs","opts"])):O(t.$slots,"default",{key:0},void 0,!0)])),_:3},8,["class","style"])}],["__scopeId","data-v-0aa9b049"]]),Y=S({__name:"agreement",setup(t){const s=C(null);return I((t=>{j(t.key).then((t=>{s.value=t.data,$({title:t.data.title})}))})),(t,e)=>{const i=R(A("u-parse"),X),n=v;return s.value?(r(),o(n,{key:0,class:"p-[30rpx]"},{default:l((()=>[f(i,{content:s.value.content},null,8,["content"])])),_:1})):p("v-if",!0)}}});export{Y as default}; diff --git a/niucloud/public/wap/assets/app-pages-auth-bind.ec336bac.js b/niucloud/public/wap/assets/app-pages-auth-bind.ec336bac.js new file mode 100644 index 0000000..589b135 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-auth-bind.ec336bac.js @@ -0,0 +1 @@ +import{V as e,W as t,X as a,q as l,t as i,i as o,j as r,w as s,k as n,I as c,J as u,p as d,T as h,K as p,L as b,x as m,N as f,d as k,Y as g,c as C,r as x,a as _,Z as y,n as S,m as v,_ as D,$ as z,h as $,a0 as j,a1 as w}from"./index-c1dbaba4.js";import{_ as B}from"./u-input.d53f0aa0.js";import{_ as V,a as G}from"./u-form.612a076f.js";import{_ as P}from"./sms-code.vue_vue_type_script_setup_true_lang.7b751354.js";import{_ as I}from"./u-icon.d4bf195f.js";import{_ as L}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as N}from"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import{_ as T}from"./u-button.78b6f378.js";import"./u-line.980a961a.js";import"./u-modal.fc188b5a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const H=L({name:"u-checkbox",mixins:[t,a,{props:{name:{type:[String,Number,Boolean],default:e.checkbox.name},shape:{type:String,default:e.checkbox.shape},size:{type:[String,Number],default:e.checkbox.size},checked:{type:Boolean,default:e.checkbox.checked},disabled:{type:[String,Boolean],default:e.checkbox.disabled},activeColor:{type:String,default:e.checkbox.activeColor},inactiveColor:{type:String,default:e.checkbox.inactiveColor},iconSize:{type:[String,Number],default:e.checkbox.iconSize},iconColor:{type:String,default:e.checkbox.iconColor},label:{type:[String,Number],default:e.checkbox.label},labelSize:{type:[String,Number],default:e.checkbox.labelSize},labelColor:{type:String,default:e.checkbox.labelColor},labelDisabled:{type:[String,Boolean],default:e.checkbox.labelDisabled}}}],data:()=>({isChecked:!1,parentData:{iconSize:12,labelDisabled:null,disabled:null,shape:"square",activeColor:null,inactiveColor:null,size:18,modelValue:null,iconColor:null,placement:"row",borderBottom:!1,iconPlacement:"left"}}),computed:{elDisabled(){return""!==this.disabled?this.disabled:null!==this.parentData.disabled&&this.parentData.disabled},elLabelDisabled(){return""!==this.labelDisabled?this.labelDisabled:null!==this.parentData.labelDisabled&&this.parentData.labelDisabled},elSize(){return this.size?this.size:this.parentData.size?this.parentData.size:21},elIconSize(){return this.iconSize?this.iconSize:this.parentData.iconSize?this.parentData.iconSize:12},elActiveColor(){return this.activeColor?this.activeColor:this.parentData.activeColor?this.parentData.activeColor:"#2979ff"},elInactiveColor(){return this.inactiveColor?this.inactiveColor:this.parentData.inactiveColor?this.parentData.inactiveColor:"#c8c9cc"},elLabelColor(){return this.labelColor?this.labelColor:this.parentData.labelColor?this.parentData.labelColor:"#606266"},elShape(){return this.shape?this.shape:this.parentData.shape?this.parentData.shape:"circle"},elLabelSize(){return uni.$u.addUnit(this.labelSize?this.labelSize:this.parentData.labelSize?this.parentData.labelSize:"15")},elIconColor(){const e=this.iconColor?this.iconColor:this.parentData.iconColor?this.parentData.iconColor:"#ffffff";return this.elDisabled?this.isChecked?this.elInactiveColor:"transparent":this.isChecked?e:"transparent"},iconClasses(){let e=[];return e.push("u-checkbox__icon-wrap--"+this.elShape),this.elDisabled&&e.push("u-checkbox__icon-wrap--disabled"),this.isChecked&&this.elDisabled&&e.push("u-checkbox__icon-wrap--disabled--checked"),e},iconWrapStyle(){const e={};return e.backgroundColor=this.isChecked&&!this.elDisabled?this.elActiveColor:"#ffffff",e.borderColor=this.isChecked&&!this.elDisabled?this.elActiveColor:this.elInactiveColor,e.width=uni.$u.addUnit(this.elSize),e.height=uni.$u.addUnit(this.elSize),"right"===this.parentData.iconPlacement&&(e.marginRight=0),e},checkboxStyle(){const e={};return this.parentData.borderBottom&&"row"===this.parentData.placement&&uni.$u.error("检测到您将borderBottom设置为true,需要同时将u-checkbox-group的placement设置为column才有效"),this.parentData.borderBottom&&"column"===this.parentData.placement&&(e.paddingBottom="8px"),uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))}},mounted(){this.init()},methods:{init(){this.updateParentData(),this.parent||uni.$u.error("u-checkbox必须搭配u-checkbox-group组件使用");const e=this.parentData.modelValue;this.checked?this.isChecked=!0:uni.$u.test.array(e)&&(this.isChecked=e.some((e=>e===this.name)))},updateParentData(){this.getParentData("u-checkbox-group")},wrapperClickHandler(e){"right"===this.parentData.iconPlacement&&this.iconClickHandler(e)},iconClickHandler(e){this.preventEvent(e),this.elDisabled||this.setRadioCheckedStatus()},labelClickHandler(e){this.preventEvent(e),this.elLabelDisabled||this.elDisabled||this.setRadioCheckedStatus()},emitEvent(){this.$emit("change",this.isChecked),this.$nextTick((()=>{uni.$u.formValidate(this,"change")}))},setRadioCheckedStatus(){this.isChecked=!this.isChecked,this.emitEvent(),"function"==typeof this.parent.unCheckedOther&&this.parent.unCheckedOther(this)}},watch:{checked(){this.isChecked=this.checked}}},[["render",function(e,t,a,k,g,C){const x=l(i("u-icon"),I),_=m,y=f;return o(),r(_,{class:c(["u-checkbox",[`u-checkbox-label--${g.parentData.iconPlacement}`,g.parentData.borderBottom&&"column"===g.parentData.placement&&"u-border-bottom"]]),style:d([C.checkboxStyle]),onClick:u(C.wrapperClickHandler,["stop"])},{default:s((()=>[n(_,{class:c(["u-checkbox__icon-wrap",C.iconClasses]),onClick:u(C.iconClickHandler,["stop"]),style:d([C.iconWrapStyle])},{default:s((()=>[h(e.$slots,"icon",{},(()=>[n(x,{class:"u-checkbox__icon-wrap__icon",name:"checkbox-mark",size:C.elIconSize,color:C.elIconColor},null,8,["size","color"])]),!0)])),_:3},8,["onClick","class","style"]),n(y,{onClick:u(C.labelClickHandler,["stop"]),style:d({color:C.elDisabled?C.elInactiveColor:C.elLabelColor,fontSize:C.elLabelSize,lineHeight:C.elLabelSize})},{default:s((()=>[p(b(e.label),1)])),_:1},8,["onClick","style"])])),_:3},8,["style","onClick","class"])}],["__scopeId","data-v-fb07f37a"]]);const A=L({name:"u-checkbox-group",mixins:[t,a,{props:{name:{type:String,default:e.checkboxGroup.name},modelValue:{type:Array,default:e.checkboxGroup.value},shape:{type:String,default:e.checkboxGroup.shape},disabled:{type:Boolean,default:e.checkboxGroup.disabled},activeColor:{type:String,default:e.checkboxGroup.activeColor},inactiveColor:{type:String,default:e.checkboxGroup.inactiveColor},size:{type:[String,Number],default:e.checkboxGroup.size},placement:{type:String,default:e.checkboxGroup.placement},labelSize:{type:[String,Number],default:e.checkboxGroup.labelSize},labelColor:{type:[String],default:e.checkboxGroup.labelColor},labelDisabled:{type:Boolean,default:e.checkboxGroup.labelDisabled},iconColor:{type:String,default:e.checkboxGroup.iconColor},iconSize:{type:[String,Number],default:e.checkboxGroup.iconSize},iconPlacement:{type:String,default:e.checkboxGroup.iconPlacement},borderBottom:{type:Boolean,default:e.checkboxGroup.borderBottom}}}],computed:{parentData(){return[this.modelValue,this.disabled,this.inactiveColor,this.activeColor,this.size,this.labelDisabled,this.shape,this.iconSize,this.borderBottom,this.placement]},bemClass(){return this.bem("checkbox-group",["placement"])}},watch:{parentData:{handler(){this.children.length&&this.children.map((e=>{"function"==typeof e.init&&e.init()}))},deep:!0}},data:()=>({}),created(){this.children=[]},emits:["update:modelValue","change"],methods:{unCheckedOther(e){const t=[];this.children.map((e=>{e.isChecked&&t.push(e.name)})),this.$emit("change",t),this.$emit("update:modelValue",t)}}},[["render",function(e,t,a,l,i,n){const u=m;return o(),r(u,{class:c(["u-checkbox-group",n.bemClass])},{default:s((()=>[h(e.$slots,"default",{},void 0,!0)])),_:3},8,["class"])}],["__scopeId","data-v-f5bb36e2"]]),U=k({__name:"bind",setup(e){const t=g(),a=C((()=>t.info)),c=C((()=>w().login)),u=x(!1),d=x(!1),h=_({mobile:"",mobile_code:"",mobile_key:""});uni.getStorageSync("openid")&&Object.assign(h,{openid:uni.getStorageSync("openid")}),uni.getStorageSync("pid")&&Object.assign(h,{pid:uni.getStorageSync("pid")});const k={mobile:[{type:"string",required:!0,message:y("mobilePlaceholder"),trigger:["blur","change"]},{validator:(e,t)=>uni.$u.test.mobile(t),message:y("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:!0,message:y("codePlaceholder"),trigger:["blur","change"]}},I=()=>{d.value=!d.value},L=x(null),U=()=>{L.value.validate().then((()=>{if(u.value)return;u.value=!0;(a.value?D:z)(h).then((e=>{a.value?(t.getMemberInfo(),$({url:"/app/pages/member/personal",mode:"redirectTo"})):(t.setToken(e.data.token),j().handleLoginBack())})).catch((()=>{u.value=!1}))}))};return(e,t)=>{const g=m,C=l(i("u-input"),B),x=l(i("u-form-item"),V),_=l(i("sms-code"),P),D=l(i("u-checkbox"),H),z=l(i("u-checkbox-group"),A),$=f,j=l(i("app-link"),N),w=l(i("u-button"),T),E=l(i("u-form"),G);return o(),r(g,{class:"w-screen h-screen flex flex-col"},{default:s((()=>[n(g,{class:"flex-1"},{default:s((()=>[n(g,{class:"h-[100rpx]"}),n(g,{class:"px-[60rpx] pt-[100rpx] mb-[100rpx]"},{default:s((()=>[n(g,{class:"font-bold text-lg"},{default:s((()=>[p(b(S(y)("bindMobile")),1)])),_:1})])),_:1}),n(g,{class:"px-[60rpx]"},{default:s((()=>[n(E,{labelPosition:"left",model:h,errorType:"toast",rules:k,ref_key:"formRef",ref:L},{default:s((()=>[n(x,{label:"",prop:"mobile","border-bottom":!0},{default:s((()=>[n(C,{modelValue:h.mobile,"onUpdate:modelValue":t[0]||(t[0]=e=>h.mobile=e),border:"none",clearable:"",placeholder:S(y)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1}),n(g,{class:"mt-[40rpx]"},{default:s((()=>[n(x,{label:"",prop:"mobile_code","border-bottom":!0},{default:s((()=>[n(C,{modelValue:h.mobile_code,"onUpdate:modelValue":t[2]||(t[2]=e=>h.mobile_code=e),border:"none",type:"password",clearable:"",placeholder:S(y)("codePlaceholder")},{suffix:s((()=>[n(_,{mobile:h.mobile,type:"bind_mobile",modelValue:h.mobile_key,"onUpdate:modelValue":t[1]||(t[1]=e=>h.mobile_key=e)},null,8,["mobile","modelValue"])])),_:1},8,["modelValue","placeholder"])])),_:1})])),_:1}),!S(a)&&S(c).agreement_show?(o(),r(g,{key:0,class:"flex items-start mt-[30rpx]"},{default:s((()=>[n(z,null,{default:s((()=>[n(D,{checked:d.value,shape:"shape",size:"14",onChange:I,customStyle:{marginTop:"4rpx"}},null,8,["checked"])])),_:1}),n(g,{class:"text-xs text-gray-400 flex flex-wrap"},{default:s((()=>[p(b(S(y)("agreeTips"))+" ",1),n(j,{url:"/app/pages/auth/agreement?key=service"},{default:s((()=>[n($,{class:"text-primary"},{default:s((()=>[p("《"+b(S(y)("userAgreement"))+"》",1)])),_:1})])),_:1}),n(j,{url:"/app/pages/auth/agreement?key=privacy"},{default:s((()=>[n($,{class:"text-primary"},{default:s((()=>[p("《"+b(S(y)("privacyAgreement"))+"》",1)])),_:1})])),_:1})])),_:1})])),_:1})):v("v-if",!0),n(g,{class:"mt-[60rpx]"},{default:s((()=>[n(w,{type:"primary",loading:u.value,loadingText:S(y)("logining"),onClick:U},{default:s((()=>[p(b(S(y)("bind")),1)])),_:1},8,["loading","loadingText"])])),_:1})])),_:1},8,["model"])])),_:1})])),_:1})])),_:1})}}});export{U as default}; diff --git a/niucloud/public/wap/assets/app-pages-auth-login.d5c56b6d.js b/niucloud/public/wap/assets/app-pages-auth-login.d5c56b6d.js new file mode 100644 index 0000000..01edc00 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-auth-login.d5c56b6d.js @@ -0,0 +1 @@ +import{d as e,a as l,Y as a,a1 as r,r as o,c as t,i as s,j as u,w as n,k as i,K as p,L as d,n as m,F as c,H as g,G as b,m as _,l as f,v as x,a2 as y,a3 as h,a0 as v,x as j,q as k,t as w,N as V,Z as P,I as S}from"./index-c1dbaba4.js";import{_ as q}from"./u-input.d53f0aa0.js";import{_ as T,a as U}from"./u-form.612a076f.js";import{_ as L}from"./sms-code.vue_vue_type_script_setup_true_lang.7b751354.js";import{_ as A}from"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import{_ as C}from"./u-button.78b6f378.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-modal.fc188b5a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const O=e({__name:"login",setup(e){const O=l({username:"",password:"",mobile:"",mobile_code:"",mobile_key:""});uni.getStorageSync("openid")&&Object.assign(O,{openid:uni.getStorageSync("openid")}),uni.getStorageSync("pid")&&Object.assign(O,{pid:uni.getStorageSync("pid")});const R=a(),Y=r(),Z=o(!1),B=o(""),E=t((()=>{const e=[];return Y.login.is_username&&e.push({type:"username",title:P("usernameLogin")}),Y.login.is_mobile&&e.push({type:"mobile",title:P("mobileLogin")}),B.value=e[0]?e[0].type:"",e})),F=t((()=>({username:{type:"string",required:"username"==B.value,message:P("usernamePlaceholder"),trigger:["blur","change"]},password:{type:"string",required:"username"==B.value,message:P("passwordPlaceholder"),trigger:["blur","change"]},mobile:[{type:"string",required:"mobile"==B.value,message:P("mobilePlaceholder"),trigger:["blur","change"]},{validator:(e,l)=>"mobile"!=B.value||uni.$u.test.mobile(l),message:P("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:"mobile"==B.value,message:P("codePlaceholder"),trigger:["blur","change"]}}))),G=o(null),H=()=>{G.value.validate().then((()=>{if(Z.value)return;Z.value=!0;("username"==B.value?y:h)(O).then((e=>{R.setToken(e.data.token),v().handleLoginBack()})).catch((()=>{Z.value=!1}))}))};return(e,l)=>{const a=j,r=k(w("u-input"),q),o=k(w("u-form-item"),T),t=k(w("sms-code"),L),y=V,h=k(w("app-link"),A),v=k(w("u-button"),C),R=k(w("u-form"),U);return s(),u(a,{class:"w-screen h-screen flex flex-col"},{default:n((()=>[i(a,{class:"flex-1"},{default:n((()=>[i(a,{class:"h-[100rpx]"}),i(a,{class:"px-[60rpx] pt-[100rpx] mb-[100rpx]"},{default:n((()=>[i(a,{class:"font-bold text-xl"},{default:n((()=>[p(d(m(P)("login")),1)])),_:1})])),_:1}),m(E).length>1?(s(),u(a,{key:0,class:"px-[60rpx] text-sm flex mb-[50rpx] font-bold leading-none"},{default:n((()=>[(s(!0),c(b,null,g(m(E),((e,l)=>(s(),c(b,null,[i(a,{class:S({"text-gray-300":e.type!=B.value}),onClick:l=>B.value=e.type},{default:n((()=>[p(d(e.title),1)])),_:2},1032,["class","onClick"]),f(i(a,{class:"mx-[30rpx] border-solid border-0 border-r-[2px] border-gray-300"},null,512),[[x,0==l]])],64)))),256))])),_:1})):_("v-if",!0),i(a,{class:"px-[60rpx]"},{default:n((()=>[i(R,{labelPosition:"left",model:O,errorType:"toast",rules:m(F),ref_key:"formRef",ref:G},{default:n((()=>[f(i(a,null,{default:n((()=>[i(o,{label:"",prop:"username","border-bottom":!0},{default:n((()=>[i(r,{modelValue:O.username,"onUpdate:modelValue":l[0]||(l[0]=e=>O.username=e),border:"none",clearable:"",placeholder:m(P)("usernamePlaceholder")},null,8,["modelValue","placeholder"])])),_:1}),i(a,{class:"mt-[40rpx]"},{default:n((()=>[i(o,{label:"",prop:"password","border-bottom":!0},{default:n((()=>[i(r,{modelValue:O.password,"onUpdate:modelValue":l[1]||(l[1]=e=>O.password=e),border:"none",type:"password",clearable:"",placeholder:m(P)("passwordPlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1})])),_:1},512),[[x,"username"==B.value]]),f(i(a,null,{default:n((()=>[i(o,{label:"",prop:"mobile","border-bottom":!0},{default:n((()=>[i(r,{modelValue:O.mobile,"onUpdate:modelValue":l[2]||(l[2]=e=>O.mobile=e),border:"none",clearable:"",placeholder:m(P)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1}),i(a,{class:"mt-[40rpx]"},{default:n((()=>[i(o,{label:"",prop:"mobile_code","border-bottom":!0},{default:n((()=>[i(r,{modelValue:O.mobile_code,"onUpdate:modelValue":l[4]||(l[4]=e=>O.mobile_code=e),border:"none",type:"password",clearable:"",placeholder:m(P)("codePlaceholder")},{suffix:n((()=>[i(t,{mobile:O.mobile,type:"login",modelValue:O.mobile_key,"onUpdate:modelValue":l[3]||(l[3]=e=>O.mobile_key=e)},null,8,["mobile","modelValue"])])),_:1},8,["modelValue","placeholder"])])),_:1})])),_:1})])),_:1},512),[[x,"mobile"==B.value]]),i(a,{class:"flex text-xs justify-between mt-[20rpx] text-gray-400"},{default:n((()=>[i(h,{url:"/app/pages/auth/register"},{default:n((()=>[p(d(m(P)("noAccount"))+" ",1),i(y,{class:"text-primary"},{default:n((()=>[p(d(m(P)("toRegister")),1)])),_:1})])),_:1}),i(h,{url:"/app/pages/auth/resetpwd"},{default:n((()=>[p(d(m(P)("resetpwd")),1)])),_:1})])),_:1}),i(a,{class:"mt-[80rpx]"},{default:n((()=>[i(v,{type:"primary",loading:Z.value,loadingText:m(P)("logining"),onClick:H},{default:n((()=>[p(d(m(P)("login")),1)])),_:1},8,["loading","loadingText"])])),_:1})])),_:1},8,["model","rules"])])),_:1})])),_:1}),m(Y).login.agreement_show?(s(),u(a,{key:0,class:"text-xs py-[50rpx] flex justify-center w-full"},{default:n((()=>[p(d(m(P)("agreeTips"))+" ",1),i(h,{url:"/app/pages/auth/agreement?key=service"},{default:n((()=>[i(y,{class:"text-primary"},{default:n((()=>[p(d(m(P)("userAgreement")),1)])),_:1})])),_:1}),p(" "+d(m(P)("and"))+" ",1),i(h,{url:"/app/pages/auth/agreement?key=privacy"},{default:n((()=>[i(y,{class:"text-primary"},{default:n((()=>[p(d(m(P)("privacyAgreement")),1)])),_:1})])),_:1})])),_:1})):_("v-if",!0)])),_:1})}}});export{O as default}; diff --git a/niucloud/public/wap/assets/app-pages-auth-register.903e4e2d.js b/niucloud/public/wap/assets/app-pages-auth-register.903e4e2d.js new file mode 100644 index 0000000..b96dba8 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-auth-register.903e4e2d.js @@ -0,0 +1 @@ +import{d as e,a as l,a4 as a,Y as r,a1 as o,r as s,c as t,i as d,j as u,w as i,k as p,K as n,L as m,n as c,F as b,H as _,G as g,m as f,l as h,v as x,a5 as y,a6 as v,a0 as w,x as V,q as j,t as k,M as P,N as q,Z as U,I as T}from"./index-c1dbaba4.js";import{_ as A}from"./u-input.d53f0aa0.js";import{_ as C,a as L}from"./u-form.612a076f.js";import{u as R,_ as E}from"./sms-code.vue_vue_type_script_setup_true_lang.7b751354.js";import{_ as F}from"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import{_ as O}from"./u-button.78b6f378.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-modal.fc188b5a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const Y=e({__name:"register",setup(e){const Y=l({username:"",password:"",confirm_password:"",mobile:"",mobile_code:"",mobile_key:"",captcha_key:"",captcha_code:""});a("openid")&&Object.assign(Y,{openid:a("openid")}),a("pid")&&Object.assign(Y,{pid:a("pid")});const Z=R(Y);Z.refresh();const B=r(),G=o(),H=s(!1),I=s(""),K=t((()=>{const e=[];return G.login.is_username&&e.push({type:"username",title:U("usernameRegister")}),G.login.is_mobile&&!G.login.is_bind_mobile&&e.push({type:"mobile",title:U("mobileRegister")}),I.value=e[0]?e[0].type:"",e})),M=t((()=>({username:{type:"string",required:"username"==I.value,message:U("usernamePlaceholder"),trigger:["blur","change"]},password:{type:"string",required:"username"==I.value,message:U("passwordPlaceholder"),trigger:["blur","change"]},confirm_password:[{type:"string",required:"username"==I.value,message:U("confirmPasswordPlaceholder"),trigger:["blur","change"]},{validator:(e,l)=>l==Y.password,message:U("confirmPasswordError"),trigger:["change","blur"]}],mobile:[{type:"string",required:"mobile"==I.value||G.login.is_bind_mobile,message:U("mobilePlaceholder"),trigger:["blur","change"]},{validator:(e,l)=>"mobile"!=I.value&&!G.login.is_bind_mobile||uni.$u.test.mobile(l),message:U("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:"mobile"==I.value||G.login.is_bind_mobile,message:U("codePlaceholder"),trigger:["blur","change"]},captcha_code:{type:"string",required:"username"==I.value,message:U("captchaPlaceholder"),trigger:["blur","change"]}}))),N=s(null),X=()=>{N.value.validate().then((()=>{if(H.value)return;H.value=!0;("username"==I.value?y:v)(Y).then((e=>{B.setToken(e.data.token),w().handleLoginBack()})).catch((()=>{H.value=!1,Z.refresh()}))}))};return(e,l)=>{const a=V,r=j(k("u-input"),A),o=j(k("u-form-item"),C),s=j(k("sms-code"),E),t=P,y=q,v=j(k("app-link"),F),w=j(k("u-button"),O),R=j(k("u-form"),L);return d(),u(a,{class:"w-screen h-screen flex flex-col"},{default:i((()=>[p(a,{class:"flex-1"},{default:i((()=>[p(a,{class:"h-[100rpx]"}),p(a,{class:"px-[60rpx] pt-[100rpx] mb-[100rpx]"},{default:i((()=>[p(a,{class:"font-bold text-xl"},{default:i((()=>[n(m(c(U)("register")),1)])),_:1})])),_:1}),c(K).length>1?(d(),u(a,{key:0,class:"px-[60rpx] text-sm flex mb-[50rpx] font-bold leading-none"},{default:i((()=>[(d(!0),b(g,null,_(c(K),((e,l)=>(d(),b(g,null,[p(a,{class:T({"text-gray-300":e.type!=I.value}),onClick:l=>I.value=e.type},{default:i((()=>[n(m(e.title),1)])),_:2},1032,["class","onClick"]),h(p(a,{class:"mx-[30rpx] border-solid border-0 border-r-[2px] border-gray-300"},null,512),[[x,0==l]])],64)))),256))])),_:1})):f("v-if",!0),p(a,{class:"px-[60rpx]"},{default:i((()=>[p(R,{labelPosition:"left",model:Y,errorType:"toast",rules:c(M),ref_key:"formRef",ref:N},{default:i((()=>[h(p(a,null,{default:i((()=>[p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"username","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.username,"onUpdate:modelValue":l[0]||(l[0]=e=>Y.username=e),border:"none",clearable:"",placeholder:c(U)("usernamePlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"password","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.password,"onUpdate:modelValue":l[1]||(l[1]=e=>Y.password=e),border:"none",type:"password",clearable:"",placeholder:c(U)("passwordPlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"confirm_password","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.confirm_password,"onUpdate:modelValue":l[2]||(l[2]=e=>Y.confirm_password=e),border:"none",type:"password",clearable:"",placeholder:c(U)("confirmPasswordPlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1})])),_:1},512),[[x,"username"==I.value]]),h(p(a,null,{default:i((()=>[p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"mobile","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.mobile,"onUpdate:modelValue":l[3]||(l[3]=e=>Y.mobile=e),border:"none",clearable:"",placeholder:c(U)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"code","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.mobile_code,"onUpdate:modelValue":l[5]||(l[5]=e=>Y.mobile_code=e),border:"none",type:"password",clearable:"",placeholder:c(U)("codePlaceholder")},{suffix:i((()=>[p(s,{mobile:Y.mobile,type:"register",modelValue:Y.mobile_key,"onUpdate:modelValue":l[4]||(l[4]=e=>Y.mobile_key=e)},null,8,["mobile","modelValue"])])),_:1},8,["modelValue","placeholder"])])),_:1})])),_:1})])),_:1},512),[[x,"mobile"==I.value||c(G).login.is_bind_mobile]]),h(p(a,null,{default:i((()=>[p(a,{class:"mt-[30rpx]"},{default:i((()=>[p(o,{label:"",prop:"captcha_code","border-bottom":!0},{default:i((()=>[p(r,{modelValue:Y.captcha_code,"onUpdate:modelValue":l[7]||(l[7]=e=>Y.captcha_code=e),border:"none",clearable:"",placeholder:c(U)("captchaPlaceholder")},{suffix:i((()=>[p(t,{src:c(Z).image.value,class:"h-[48rpx] ml-[20rpx]",mode:"heightFix",onClick:l[6]||(l[6]=e=>c(Z).refresh())},null,8,["src"])])),_:1},8,["modelValue","placeholder"])])),_:1})])),_:1})])),_:1},512),[[x,"username"==I.value]]),p(a,{class:"flex text-xs justify-between mt-[20rpx] text-gray-400"},{default:i((()=>[p(v,{url:"/app/pages/auth/login"},{default:i((()=>[n(m(c(U)("haveAccount"))+",",1),p(y,{class:"text-primary"},{default:i((()=>[n(m(c(U)("toLogin")),1)])),_:1})])),_:1})])),_:1}),p(a,{class:"mt-[80rpx]"},{default:i((()=>[p(w,{type:"primary",loading:H.value,loadingText:c(U)("registering"),onClick:X},{default:i((()=>[n(m(c(U)("register")),1)])),_:1},8,["loading","loadingText"])])),_:1})])),_:1},8,["model","rules"])])),_:1})])),_:1}),c(G).login.agreement_show?(d(),u(a,{key:0,class:"text-xs py-[50rpx] flex justify-center w-full"},{default:i((()=>[n(m(c(U)("registerAgreeTips"))+" ",1),p(v,{url:"/app/pages/auth/agreement?key=service"},{default:i((()=>[p(y,{class:"text-primary"},{default:i((()=>[n(m(c(U)("userAgreement")),1)])),_:1})])),_:1}),n(" "+m(c(U)("and"))+" ",1),p(v,{url:"/app/pages/auth/agreement?key=privacy"},{default:i((()=>[p(y,{class:"text-primary"},{default:i((()=>[n(m(c(U)("privacyAgreement")),1)])),_:1})])),_:1})])),_:1})):f("v-if",!0)])),_:1})}}});export{Y as default}; diff --git a/niucloud/public/wap/assets/app-pages-auth-resetpwd.b5cafe6a.js b/niucloud/public/wap/assets/app-pages-auth-resetpwd.b5cafe6a.js new file mode 100644 index 0000000..cf1aa45 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-auth-resetpwd.b5cafe6a.js @@ -0,0 +1 @@ +import{d as e,a as o,r as l,Z as r,i as a,j as s,w as d,k as t,K as m,L as p,n as i,a7 as u,h as n,x as c,q as b,t as f}from"./index-c1dbaba4.js";import{_}from"./u-input.d53f0aa0.js";import{_ as g,a as h}from"./u-form.612a076f.js";import{_ as x}from"./sms-code.vue_vue_type_script_setup_true_lang.7b751354.js";import{_ as w}from"./u-button.78b6f378.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-modal.fc188b5a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const y=e({__name:"resetpwd",setup(e){const y=o({mobile:"",mobile_code:"",mobile_key:"",password:"",confirm_password:""}),V=l(!1),j=l(null),P={password:{type:"string",required:!0,message:r("passwordPlaceholder"),trigger:["blur","change"]},confirm_password:[{type:"string",required:!0,message:r("confirmPasswordPlaceholder"),trigger:["blur","change"]},{validator:(e,o)=>o==y.password,message:r("confirmPasswordError"),trigger:["change","blur"]}],mobile:[{type:"string",required:!0,message:r("mobilePlaceholder"),trigger:["blur","change"]},{validator:(e,o)=>uni.$u.test.mobile(o),message:r("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:!0,message:r("codePlaceholder"),trigger:["blur","change"]}},v=()=>{j.value.validate().then((()=>{V.value||(V.value=!0,u(y).then((e=>{n({url:"/app/pages/auth/login",mode:"redirectTo"})})).catch((()=>{V.value=!1})))}))};return(e,o)=>{const l=c,u=b(f("u-input"),_),n=b(f("u-form-item"),g),k=b(f("sms-code"),x),q=b(f("u-button"),w),U=b(f("u-form"),h);return a(),s(l,{class:"w-screen h-screen flex flex-col"},{default:d((()=>[t(l,{class:"flex-1"},{default:d((()=>[t(l,{class:"h-[100rpx]"}),t(l,{class:"px-[60rpx] pt-[100rpx] mb-[100rpx]"},{default:d((()=>[t(l,{class:"font-bold text-xl"},{default:d((()=>[m(p(i(r)("findPassword")),1)])),_:1})])),_:1}),t(l,{class:"px-[60rpx]"},{default:d((()=>[t(U,{labelPosition:"left",model:y,errorType:"toast",rules:P,ref_key:"formRef",ref:j},{default:d((()=>[t(l,{class:"mt-[30rpx]"},{default:d((()=>[t(n,{label:"",prop:"mobile","border-bottom":!0},{default:d((()=>[t(u,{modelValue:y.mobile,"onUpdate:modelValue":o[0]||(o[0]=e=>y.mobile=e),border:"none",clearable:"",placeholder:i(r)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),t(l,{class:"mt-[30rpx]"},{default:d((()=>[t(n,{label:"",prop:"code","border-bottom":!0},{default:d((()=>[t(u,{modelValue:y.mobile_code,"onUpdate:modelValue":o[2]||(o[2]=e=>y.mobile_code=e),border:"none",type:"password",clearable:"",placeholder:i(r)("codePlaceholder")},{suffix:d((()=>[t(k,{mobile:y.mobile,type:"find_pass",modelValue:y.mobile_key,"onUpdate:modelValue":o[1]||(o[1]=e=>y.mobile_key=e)},null,8,["mobile","modelValue"])])),_:1},8,["modelValue","placeholder"])])),_:1})])),_:1}),t(l,{class:"mt-[30rpx]"},{default:d((()=>[t(n,{label:"",prop:"password","border-bottom":!0},{default:d((()=>[t(u,{modelValue:y.password,"onUpdate:modelValue":o[3]||(o[3]=e=>y.password=e),border:"none",type:"password",clearable:"",placeholder:i(r)("passwordPlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),t(l,{class:"mt-[30rpx]"},{default:d((()=>[t(n,{label:"",prop:"confirm_password","border-bottom":!0},{default:d((()=>[t(u,{modelValue:y.confirm_password,"onUpdate:modelValue":o[4]||(o[4]=e=>y.confirm_password=e),border:"none",type:"password",clearable:"",placeholder:i(r)("confirmPasswordPlaceholder")},null,8,["modelValue","placeholder"])])),_:1})])),_:1}),t(l,{class:"mt-[80rpx]"},{default:d((()=>[t(q,{type:"primary",loading:V.value,loadingText:i(r)("confirm"),onClick:v},{default:d((()=>[m(p(i(r)("confirm")),1)])),_:1},8,["loading","loadingText"])])),_:1})])),_:1},8,["model"])])),_:1})])),_:1})])),_:1})}}});export{y as default}; diff --git a/niucloud/public/wap/assets/app-pages-index-close.bf0c324d.js b/niucloud/public/wap/assets/app-pages-index-close.bf0c324d.js new file mode 100644 index 0000000..c5578bf --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-index-close.bf0c324d.js @@ -0,0 +1 @@ +import{_ as e}from"./u-empty.c3b684cc.js";import{d as s,i as t,j as a,w as o,k as r,n as c,q as i,t as n,x as l,y as p,Z as u}from"./index-c1dbaba4.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";const m=s({__name:"close",setup:s=>(s,m)=>{const x=i(n("u-empty"),e),f=l;return t(),a(f,{class:"w-screen h-screen flex flex-col items-center justify-center"},{default:o((()=>[r(x,{icon:c(p)("static/resource/images/site/close.png"),text:c(u)("siteClose")},null,8,["icon","text"])])),_:1})}});export{m as default}; diff --git a/niucloud/public/wap/assets/app-pages-index-develop.54fb24e8.js b/niucloud/public/wap/assets/app-pages-index-develop.54fb24e8.js new file mode 100644 index 0000000..1ee630f --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-index-develop.54fb24e8.js @@ -0,0 +1 @@ +import{d as e,a,i as t,j as l,w as s,k as o,K as r,L as i,n as p,aa as d,Z as n,x as u,N as c,q as m,t as x}from"./index-c1dbaba4.js";import{_ as f}from"./u-input.d53f0aa0.js";import{_}from"./u-button.78b6f378.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-loading-icon.4b2cb429.js";const b={sdkConfigs:{maps:{qqmap:{key:"6ZDBZ-CLSLX-66747-7MVM4-HLK47-XMBXU"}}},router:{mode:"history",base:"/wap/"}},g=e({__name:"develop",setup(e){const g=a({siteId:"",baseUrl:`${location.origin}/api/`,imgUrl:""}),h=()=>{if(0==g.siteId.length)return void d({title:n("siteIdPlaceholder"),icon:"none"});if(!/^[0-9]+$/.test(g.siteId))return void d({title:n("pleaseEnterNumber"),icon:"none"});uni.setStorageSync("wap_site_id",g.siteId);let e=uni.getStorageSync("develop_before_path")||"/app/pages/index/index";"/app/pages/index/develop"==e&&(e="/app/pages/index/index"),e=e.replace("/",""),uni.removeStorageSync("develop_before_path"),location.href=`${location.origin}${b.router.base}${e}`};return(e,a)=>{const d=u,b=c,v=m(x("u-input"),f),I=m(x("u-button"),_);return t(),l(d,{class:"mt-[80rpx] px-[60rpx]"},{default:s((()=>[o(d,{class:"font-bold text-xl mb-[80rpx]"},{default:s((()=>[r(i(p(n)("developTitle")),1)])),_:1}),o(d,{class:"mb-[40rpx] flex flex-col"},{default:s((()=>[o(b,{class:"mb-[10rpx]"},{default:s((()=>[r(i(p(n)("baseUrl")),1)])),_:1}),o(b,{class:"text-sm"},{default:s((()=>[r(i(g.baseUrl),1)])),_:1})])),_:1}),o(d,{class:"mb-[40rpx] flex flex-col"},{default:s((()=>[o(b,{class:"mb-[10rpx]"},{default:s((()=>[r(i(p(n)("imgUrl")),1)])),_:1}),o(b,{class:"text-sm"},{default:s((()=>[r(i(g.imgUrl),1)])),_:1})])),_:1}),o(d,{class:"mb-[40rpx] flex flex-col"},{default:s((()=>[o(b,{class:"mb-[20rpx]"},{default:s((()=>[r(i(p(n)("siteId")),1)])),_:1}),o(v,{modelValue:g.siteId,"onUpdate:modelValue":a[0]||(a[0]=e=>g.siteId=e),clearable:"",placeholder:p(n)("siteIdPlaceholder")},null,8,["modelValue","placeholder"])])),_:1}),o(I,{type:"primary",onClick:h,class:"mt-[80rpx]"},{default:s((()=>[r(i(p(n)("confirm")),1)])),_:1})])),_:1})}}});export{g as default}; diff --git a/niucloud/public/wap/assets/app-pages-index-diy.517d24c5.js b/niucloud/public/wap/assets/app-pages-index-diy.517d24c5.js new file mode 100644 index 0000000..b18df82 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-index-diy.517d24c5.js @@ -0,0 +1 @@ +import{d as a,r as e,u as l,a as t,c as o,o as r,b as s,s as p,e as i,g as u,f as d,i as g,j as n,w as m,k as f,l as v,v as c,m as b,n as _,p as h,q as j,t as x,x as y,y as S}from"./index-c1dbaba4.js";import{_ as w}from"./u-loading-page.8a915b31.js";import{_ as k,a as M}from"./index.9ca226e6.js";import{u as C}from"./useShare.ef6065d7.js";import{_ as D}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-loading-icon.4b2cb429.js";import"./u-transition.24c0ace1.js";import"./u-icon.d4bf195f.js";import"./u-image.86f8f5db.js";import"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import"./u-avatar.85887529.js";import"./u-popup.c9f22720.js";import"./u-safe-bottom.f0120e94.js";import"./u-tabbar.7b503373.js";import"./wechat.de0a8524.js";const R=D(a({__name:"diy",setup(a){const{setShare:D,onShareAppMessage:R,onShareTimeline:B}=C();R(),B();const U=e(!0),I=l(),J=e(0),N=t({pageMode:"diy",title:"",global:{},value:[]}),O=o((()=>"decorate"==I.mode?I:N)),T=e(0),q=e("");return r((a=>{I.mode=a.mode||"","decorate"==I.mode&&(U.value=!1),T.value=a.id||"",q.value=a.name||""})),s((()=>{J.value++,p()})),i((()=>{"decorate"==I.mode?I.init():u({id:T.value,name:q.value}).then((a=>{if(a.data.value){let e=a.data;N.pageMode=e.mode,N.title=e.title;let l=JSON.parse(e.value);N.global=l.global,N.value=l.value,N.value.forEach(((a,e)=>{a.pageStyle="",a.pageBgColor&&(a.pageStyle+="background-color:"+a.pageBgColor+";"),a.margin&&(a.pageStyle+="padding-top:"+2*a.margin.top+"rpx;",a.pageStyle+="padding-bottom:"+2*a.margin.bottom+"rpx;",a.pageStyle+="padding-right:"+2*a.margin.both+"rpx;",a.pageStyle+="padding-left:"+2*a.margin.both+"rpx;")})),d({title:N.title})}let e=a.data.share?JSON.parse(a.data.share):null;D(e),U.value=!1}))})),(a,e)=>{const l=j(x("u-loading-page"),w),t=j(x("diy-group"),k),o=y,r=j(x("fixed-group"),M);return g(),n(o,null,{default:m((()=>[f(l,{loading:U.value,loadingText:"","bg-color":"#f7f7f7"},null,8,["loading"]),v(f(o,null,{default:m((()=>[b(" 自定义模板渲染 "),"fixed"!=_(O).pageMode?(g(),n(o,{key:0,class:"diy-template-wrap bg-index",style:h({backgroundColor:_(O).global.pageBgColor,minHeight:"calc(100vh - 50px)",backgroundImage:_(O).global.bgUrl?"url("+_(S)(_(O).global.bgUrl)+")":""})},{default:m((()=>[f(t,{data:_(O),pullDownRefresh:J.value},null,8,["data","pullDownRefresh"])])),_:1},8,["style"])):b("v-if",!0),b(" 固定模板渲染 "),"fixed"==_(O).pageMode?(g(),n(o,{key:1,class:"fixed-template-wrap"},{default:m((()=>[f(r,{data:_(O),pullDownRefresh:J.value},null,8,["data","pullDownRefresh"])])),_:1})):b("v-if",!0)])),_:1},512),[[c,!U.value]])])),_:1})}}}),[["__scopeId","data-v-bc8cebed"]]);export{R as default}; diff --git a/niucloud/public/wap/assets/app-pages-index-index.8a6b63fc.js b/niucloud/public/wap/assets/app-pages-index-index.8a6b63fc.js new file mode 100644 index 0000000..1dd432d --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-index-index.8a6b63fc.js @@ -0,0 +1 @@ +import{d as a,r as e,u as l,a as o,c as t,o as r,b as s,s as p,e as i,g,f as u,h as d,i as n,j as m,w as f,k as c,l as b,v,m as _,n as h,p as x,q as j,t as y,x as S,y as w}from"./index-c1dbaba4.js";import{_ as k}from"./u-loading-page.8a915b31.js";import{_ as D,a as M}from"./index.9ca226e6.js";import{u as C}from"./useShare.ef6065d7.js";import{_ as I}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-loading-icon.4b2cb429.js";import"./u-transition.24c0ace1.js";import"./u-icon.d4bf195f.js";import"./u-image.86f8f5db.js";import"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import"./u-avatar.85887529.js";import"./u-popup.c9f22720.js";import"./u-safe-bottom.f0120e94.js";import"./u-tabbar.7b503373.js";import"./wechat.de0a8524.js";const R=I(a({__name:"index",setup(a){const{setShare:I,onShareAppMessage:R,onShareTimeline:B}=C();I(),R(),B();const U=e(!0),E=l(),N=e(0),T=o({pageMode:"diy",title:"",global:{},value:[]}),X=t((()=>"decorate"==E.mode?E:T));return r((a=>{E.mode=a.mode||"","decorate"==E.mode&&(U.value=!1)})),s((()=>{N.value++,p()})),i((()=>{"decorate"==E.mode?E.init():g({name:"DIY_INDEX"}).then((a=>{let e=a.data;if(e.value){T.pageMode=e.mode,T.title=e.title;let a=JSON.parse(e.value);T.global=a.global,T.value=a.value,T.value.forEach(((a,e)=>{a.pageStyle="",a.pageBgColor&&(a.pageStyle+="background-color:"+a.pageBgColor+";"),a.margin&&(a.pageStyle+="padding-top:"+2*a.margin.top+"rpx;",a.pageStyle+="padding-bottom:"+2*a.margin.bottom+"rpx;",a.pageStyle+="padding-right:"+2*a.margin.both+"rpx;",a.pageStyle+="padding-left:"+2*a.margin.both+"rpx;")})),u({title:T.title})}else e.page&&d({url:e.page});U.value=!1}))})),(a,e)=>{const l=j(y("u-loading-page"),k),o=j(y("diy-group"),D),t=S,r=j(y("fixed-group"),M);return n(),m(t,null,{default:f((()=>[c(l,{loading:U.value,loadingText:"","bg-color":"#f7f7f7"},null,8,["loading"]),b(c(t,null,{default:f((()=>[_(" 自定义模板渲染 "),"fixed"!=h(X).pageMode?(n(),m(t,{key:0,class:"diy-template-wrap bg-index",style:x({backgroundColor:h(X).global.pageBgColor,minHeight:"calc(100vh - 50px)",backgroundImage:h(X).global.bgUrl?"url("+h(w)(h(X).global.bgUrl)+")":""})},{default:f((()=>[c(o,{data:h(X),pullDownRefresh:N.value},null,8,["data","pullDownRefresh"])])),_:1},8,["style"])):_("v-if",!0),_(" 固定模板渲染 "),"fixed"==h(X).pageMode?(n(),m(t,{key:1,class:"fixed-template-wrap"},{default:f((()=>[c(r,{data:h(X),pullDownRefresh:N.value},null,8,["data","pullDownRefresh"])])),_:1})):_("v-if",!0)])),_:1},512),[[v,!U.value]])])),_:1})}}}),[["__scopeId","data-v-2d1684b9"]]);export{R as default}; diff --git a/niucloud/public/wap/assets/app-pages-index-nosite.379f5802.js b/niucloud/public/wap/assets/app-pages-index-nosite.379f5802.js new file mode 100644 index 0000000..2df57d6 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-index-nosite.379f5802.js @@ -0,0 +1 @@ +import{_ as e}from"./u-empty.c3b684cc.js";import{d as s,i as t,j as a,w as n,k as o,n as i,q as r,t as c,x as p,y as u,Z as l}from"./index-c1dbaba4.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";const m=s({__name:"nosite",setup:s=>(s,m)=>{const x=r(c("u-empty"),e),f=p;return t(),a(f,{class:"w-screen h-screen flex flex-col items-center justify-center"},{default:n((()=>[o(x,{icon:i(u)("static/resource/images/site/close.png"),text:i(l)("noSite")},null,8,["icon","text"])])),_:1})}});export{m as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-account.fb9e9cc2.js b/niucloud/public/wap/assets/app-pages-member-account.fb9e9cc2.js new file mode 100644 index 0000000..d8e0ff8 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-account.fb9e9cc2.js @@ -0,0 +1 @@ +import{d as a,r as e,o as t,i as A,j as s,w as u,k as l,F as o,H as n,G as r,n as i,K as c,L as d,av as g,aw as p,a_ as m,x,N as f,q as B,t as G,Z as Q,h as y,M as h}from"./index-c1dbaba4.js";import{_ as v}from"./u-icon.d4bf195f.js";import{u as b,M as T}from"./useMescroll.fa1d1d16.js";import"./_plugin-vue_export-helper.1b428a4d.js";const w=a({__name:"account",setup(a){const{mescrollInit:w,downCallback:M,getMescroll:P}=b(p,g),U=e([]),O=e(!1),k=e("bank"),F=e(null),S=e("get");t((a=>{a.type&&(k.value=a.type),a.mode&&(S.value=a.mode)}));const Z=a=>{O.value=!1;let e={page:a.num,limit:a.size,account_type:k.value};m(e).then((e=>{const t=e.data.data;1==a.num&&(U.value=[]),U.value=U.value.concat(t),a.endSuccess(t.length),O.value=!0})).catch((()=>{O.value=!0,a.endErr()}))};return(a,e)=>{const t=x,g=h,p=f,m=B(G("u-icon"),v);return A(),s(t,{class:"w-screen h-screen bg-page"},{default:u((()=>[l(T,{ref_key:"mescrollRef",ref:F,onInit:i(w),onDown:i(M),onUp:Z},{default:u((()=>[l(t,{class:"h-[20rpx]"}),(A(!0),o(r,null,n(U.value,((a,e)=>(A(),s(t,{class:"p-[30rpx] bg-white mx-[32rpx] my-[20rpx] rounded flex",key:e,onClick:e=>{return t=a,void("get"==S.value?y({url:"/app/pages/member/account_edit",param:{id:t.account_id,type:k.value,mode:S.value}}):y({url:"/app/pages/member/apply_cash_out",param:{account_id:t.account_id,type:k.value}}));var t}},{default:u((()=>[l(t,{class:"w-[100rpx] h-[100rpx] flex items-center justify-center mr-[10rpx]"},{default:u((()=>["bank"==a.account_type?(A(),s(g,{key:0,src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAACnVJREFUeF7tWXtQVNcZ/91FQQZZdhcXfKCCqFXQuKBV0YSHqWJ9AbU+qkZQG+uEyu66i0maB5jEaSetBdvG1vrCRhM1bQS1SUw6gn0kJhkDpqLNQ10jLApEHmrCuuyeznfWRZZd3L03/MOw38zOPfee8517vt/5fY9zV0AfF6GP2w8/AH4G9HEE/C7QxwngD4J+F/C7QB9HwO8CfZwA/iwgyQWuQznBBmGxAKGdwd4u41e0070Ndhtd7z2zUT+DYKN7GWzt14PDAtZOXfIjgLULYNaziuGfQ0A73QPMxtt2wdGG0H6vzwaB2kI7omyjoMZkMFgRav8MTGZFP+Eu7PZ23gaz8nGMWRHArGABVtht7QiQfY08Q2VXxosGwAzlVkDQAggR6z7bx87EjrEzcKtfkFhVIBjAcAYMZeJ1uYbwDWR4BnmG4s4TiALAjPBfAuwpKSvYFTsVBRPnSFF16ExigFKq8R2vvQmdMVwSAGYoVwHCq1IsqA4bjIXJOWgL6CdFHYhljt3vCWEsDfr8CudUPjOgFqpDArBMyhp2x07F899l96fbgQFS3uxBp/l2AAoL7aIBMEN1GUCMlGXkTsnE0agJUlSBgQCmdKxX2hz3tf4NnfER0S5QA4VGBplbBPV1NTNm58IUovR1uOu4IQC+10MACMJWaA3PigbADOV6QNgpxYKL8gg8Omu9FFWHzlg7MFS6uoumTJaOvE3vSgBAtRvAOinLeH2kBoaEBVJUHTqT7UCodHUXzf7BocjNvS0agFqoPhWAiQMy56HfpAmwXb2Gb0te5/MEps5EYMpMWMrehrXqv24r3ayZhwPRiZIsSNVEISV9mItuVUMDyi5/KX4+AR9Ba5zWVdFrFriOsBg7AigAYlBlBfprJuLb/YfQnJPL5wqvOMYBaExI9QjA7LSfgtKgFCktWIQMTSzONTZAERSEkaFyPs2a995ByYVqcVMK7DfQ5ueLBsAM5QpAOEiKQ9jXXL8p6zG0lb7F2/SMtbTiusI9QZiD5ZiSniduoZ1GN732BBTBQYjZtwum1lZUrVyNSYPU2PLhByg88764ee1sETblH5cAgIpKRy1RPbz8GNe/oRwFe3MLZwOxoq3sbTRlruJ9MkUY7yM5NiwOh9bkISU+CvvLL8BU39rtohUhjvKYrjROE6NG5W9X4eqtVkTv3cUZULliNaLlciS89iqqGurFAWBlkcjPd1Py6gJ1UL3PgKQQ3QbIi7bCeu48GjUp/OXOZ636Z/g99dtMXyEgegQH4bllzyJi41pER8iR87uT3Kh9G9P5ffMdC9Kee4MbfPSpRR3G03Plqh3QLUxE0doUvvOll75AZuwYbvz+i9WoqLmGouQ0mFpb0GyxICYsDJnHy3B0QQYHjNhB7e1VnziYwnAOeqPGE2IPBOAmlGFtEIj3AYqSVxCcvdzF/5WlBzAg44fc/wkM6r+95WUMLNjM3/WDec9gd8mT3GAy6srOdWj5xgLdngpu9PYTlRyIgmXTeTtzWixGquUQsopQYkhH9sNx3CACodnShtJLX/J2+eKlHAiS7PHxvE0xgZ6frq0BY4yDojn4Fw4QGH4PvdGjLz4QgBoo58sgnKAXOYPdne070ar7Bad6ZNNlnhHqozUdAbJOCOdxof1qDZKKTuHj4tU4XV2DklMXsG/jHGw5fIZT3NlOnRDFXSTmZ3tQ/uISKAcGQbFyB67sWYdolTvdSxdmIGPUaO4GmbGjUTAtCfp/VqC48iyY1tCxyS6BUmDLoM0/IpoBZihfAgTOb+duE7UtpW/x9EdUp4B4t+I/HAxyDwKHYsWVwyfwQn1gh6E0B+10yalqaGIiEBMph0Z/gPu5IIC3iSEEFrkLZ4vFAsWf/uCy7oofL0PKsChknSjjbtA5JjgBIBak/vXwfT1mjYH+aZMEAFRUNc0mRTI2tPBJbjiJteo87hT/kRtPwVBevJW3qRYgd3jzZCU+mzQFtMOFhz5A1ZUGlD69iO922UeX+DOif8VLS1D64SUOTPG6VM4UU30LCh9PQtXNeuhOl7usOycuHsXJaWi+a+FpsTNIzizhGiSFi9AZ4rqLmA90ATNUzQDCxIVbx+iVST9BeWSsFFWAEkKSuPqfmHBlzeM8HuS8+06n9wo7oTNsEA3ADaiSbIDIZHv/NXHzDGgOpM84EkTNgHhx53+K+mlRwxG9b5cj8DmFCWugN5SIBqAOKiMDfi1h+ahSDMG81O6PDuTflBmKj3+Cc6ZGnh61CxK4K1AmcAr5OUX+pg0/548o7WnUES5LIrpTcVQyZ67nAokFxEGvvygaADNUbwLIkgJAd5+/KOdTpKcASDGBhHyegiOlx+LjlRipDkXO3Hgog4N4AKRIT7vrzP/7Zs/l+Z0kZ3w8qhod8xA4rtTnjy9DZ3ygH3YbA8xQ1QBwPYn4iMb6qYtxYuh4t9G061QIVZy/1tF3ztTAawK6UlAk4ZXjPV8uTkmDVpPIix+qBokBlPYyRrna1XLXwoshF2HYD70x50HL9giAGeHjANYtbbzh8P30jagNdo+dBEBJXrpLaUysIPoTIwgAhTwImhFqpP3tCDeaAhulSdpd2n2HoaWIlofxe2cf+b2H8jgXOuMO0QDUQrVOAOgbgGgxhagwY/YTHvVyZsVzY8nnnf5P91T8EP0zpsZi/6fVyJgWy098ZGTlisc4EFQBUgokZjhPhalRw3nAI8OJFW4ACJgCrfGsaADqoNrLgDWirQdwZMRD0CU6avuu4qzvie4U8JwVYeeS2NTUihabhZexuoTJKEpO5UYTGFQAUdAjV6C4QFdnGUzGu0R/oBY6Y5Q3G7pxAdX/6EucN2VP/fma+TgYneBRlYoiCoL6vac5A4gRVBJn/eoYrw4pGAovb+N1ABlHtT35PFV1hdNn8DYdjQkYnSaRF0NNbW0cFA/yBnTGpd5scAPgOgZG2BF4w5tid/2pj27A56GDPHYXLk/iRtLOUzVI/p+d5ijSiBWTotW8Tf5PhQ35eFchV6A+chFyAToMdfOBxAidcZs3O9wAMCM8C2CUAkVLc/9gxM2/fyDpOgEZTP5PQiBQ0HPeUxDUJKqBkYz7fGdxRn9KdeQKTr93PvdAf8BuT8amzf/yZoQHAFSE2iZvip763xs8FtnTvbKu+6nHMGCYuArQ82RCA4beisLSwrve7HADoBaqMwLg9vHQ20TUvzV+Fl4ZM8OXoZ7H9NQXYIa/Q2/06VO0CwAM6FcHlVWqBRmPZOPj8OHS1GUAksUdgLp9kSA8D63hRV8W4gLANShSAyBzPX/6Msu9MUMzXf50EaFJHwMZoOkJ+vPXzoXOeNKXBXRlQGCd4wgs6Ri3Kmk5TkWO9uW97mOIAQ/bAbp+N9kGndHo6xSegqDkf4G2jUsG/STLODsg7S8EQIAZEP4MrWGLmPd7LIS+AIIGQJEkZqLOYwseSudfYL8KCav/R+QYs6h51BiMMAxGsKwRKjsdyHyTTv/5+6bgGOX1s7iYyXrjWD8AvXHXenLNfgb0JJq9cS4/A3rjrvXkmv0M6Ek0e+Ncfgb0xl3ryTX7GdCTaPbGufo8A/4PpckqfWjPHTQAAAAASUVORK5CYII=",mode:"widthFix",class:"w-[80rpx]"})):(A(),s(p,{key:1,class:"iconfont iconzhifubaoxuanzhong text-[#188dfb] text-[80rpx]"}))])),_:2},1024),l(t,null,{default:u((()=>[l(t,null,{default:u((()=>[c(d("bank"==a.account_type?a.bank_name:i(Q)("alipayAccountNo")),1)])),_:2},1024),"bank"==a.account_type?(A(),s(t,{key:0,class:"text-sm text-gray-subtitle mt-[10rpx]"},{default:u((()=>[c(d(i(Q)("endNumber"))+" "+d(a.account_no.substring(a.account_no.length-4))+d(i(Q)("bankCard")),1)])),_:2},1024)):(A(),s(t,{key:1,class:"text-sm text-gray-subtitle mt-[10rpx]"},{default:u((()=>[c(d(a.account_no),1)])),_:2},1024))])),_:2},1024)])),_:2},1032,["onClick"])))),128)),l(t,{class:"p-[30rpx] bg-white mx-[32rpx] my-[20rpx] rounded flex",onClick:e[0]||(e[0]=a=>i(y)({url:"/app/pages/member/account_edit",param:{type:k.value,mode:S.value}}))},{default:u((()=>[l(m,{name:"plus",color:"#333",size:"16"}),l(p,{class:"text-sm ml-[10rpx] flex-1"},{default:u((()=>[c(d("bank"==k.value?i(Q)("addBankCard"):i(Q)("addAlipayAccount")),1)])),_:1}),l(m,{name:"arrow-right",color:"#333",size:"14"})])),_:1})])),_:1},8,["onInit","onDown"])])),_:1})}}});export{w as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-account_edit.38b457ae.js b/niucloud/public/wap/assets/app-pages-member-account_edit.38b457ae.js new file mode 100644 index 0000000..7cf28ea --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-account_edit.38b457ae.js @@ -0,0 +1 @@ +import{d as e,r as a,a as l,c as t,o,am as n,i as r,F as c,k as u,w as d,G as s,K as p,L as m,n as i,m as b,j as _,b1 as f,b2 as h,h as x,b3 as y,x as k,q as g,t as v,ap as V,Z as j}from"./index-c1dbaba4.js";import{_ as P}from"./u-input.d53f0aa0.js";import{_ as A,a as N}from"./u-form.612a076f.js";import{_ as T}from"./u-button.78b6f378.js";import{_ as C}from"./u-modal.fc188b5a.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const R=e({__name:"account_edit",setup(e){const R=a(!1),w=a(null),U=a("get"),q=a(!1),B=l({account_id:0,account_type:"bank",bank_name:"",realname:"",account_no:""}),W=t((()=>({realname:{type:"string",required:!0,message:"bank"==B.account_type?j("bankRealnamePlaceholder"):j("alipayRealnamePlaceholder"),trigger:["blur","change"]},bank_name:{type:"string",required:"bank"==B.account_type,message:j("bankNamePlaceholder"),trigger:["blur","change"]},account_no:{type:"string",required:!0,message:"bank"==B.account_type?j("bankAccountNoPlaceholder"):j("alipayAccountNoPlaceholder"),trigger:["blur","change"]}})));o((e=>{e.type&&(B.account_type=e.type),e.mode&&(U.value=e.mode),e.id&&(B.account_id=e.id,n({account_id:e.id}).then((e=>{e.data&&Object.keys(B).forEach((a=>{null!=e.data[a]&&(B[a]=e.data[a])}))})))}));const Z=()=>{const e=B.account_id?f:h;w.value.validate().then((()=>{R.value||(R.value=!0,e(B).then((e=>{"get"==U.value?x({url:"/app/pages/member/account",param:{type:B.account_type,mode:U.value}}):x({url:"/app/pages/member/apply_cash_out",param:{account_id:e.data,type:B.account_type}})})).catch((()=>{R.value=!1})))}))},E=()=>{y(B.account_id).then((()=>{x({url:"/app/pages/member/account",mode:"redirectTo"})}))};return(e,a)=>{const l=k,t=g(v("u-input"),P),o=g(v("u-form-item"),A),n=g(v("u-form"),N),f=g(v("u-button"),T),h=V,x=g(v("u-modal"),C);return r(),c(s,null,[u(h,{"scroll-y":"true",class:"w-screen h-screen bg-page"},{default:d((()=>[u(l,{class:"h-[30rpx]"}),u(l,{class:"p-[30rpx] bg-white mx-[32rpx] rounded"},{default:d((()=>["bank"==B.account_type?(r(),c(s,{key:0},[u(l,{class:"text-center text-base font-bold mt-[50rpx]"},{default:d((()=>[p(m(i(j)("addBankCard")),1)])),_:1}),u(l,{class:"text-center text-sm mt-[10rpx]"},{default:d((()=>[p(m(i(j)("addBankCardTips")),1)])),_:1}),u(l,{class:"mt-[50rpx]"},{default:d((()=>[u(n,{labelPosition:"left",model:B,labelWidth:"200rpx",errorType:"toast",rules:i(W),ref_key:"formRef",ref:w},{default:d((()=>[u(l,{class:"mt-[10rpx]"},{default:d((()=>[u(o,{label:i(j)("bankRealname"),prop:"realname","border-bottom":!0},{default:d((()=>[u(t,{modelValue:B.realname,"onUpdate:modelValue":a[0]||(a[0]=e=>B.realname=e),border:"none",clearable:"",placeholder:i(j)("bankRealnamePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),u(l,{class:"mt-[10rpx]"},{default:d((()=>[u(o,{label:i(j)("bankName"),prop:"bank_name","border-bottom":!0},{default:d((()=>[u(t,{modelValue:B.bank_name,"onUpdate:modelValue":a[1]||(a[1]=e=>B.bank_name=e),border:"none",clearable:"",placeholder:i(j)("bankNamePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),u(l,{class:"mt-[10rpx]"},{default:d((()=>[u(o,{label:i(j)("bankAccountNo"),prop:"account_no","border-bottom":!0},{default:d((()=>[u(t,{modelValue:B.account_no,"onUpdate:modelValue":a[2]||(a[2]=e=>B.account_no=e),border:"none",clearable:"",placeholder:i(j)("bankAccountNoPlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1})])),_:1},8,["model","rules"])])),_:1})],64)):b("v-if",!0),"alipay"==B.account_type?(r(),c(s,{key:1},[u(l,{class:"text-center text-base font-bold mt-[50rpx]"},{default:d((()=>[p(m(i(j)("addAlipayAccount")),1)])),_:1}),u(l,{class:"text-center text-sm mt-[10rpx]"},{default:d((()=>[p(m(i(j)("addAlipayAccountTips")),1)])),_:1}),u(l,{class:"mt-[50rpx]"},{default:d((()=>[u(n,{labelPosition:"left",model:B,labelWidth:"200rpx",errorType:"toast",rules:i(W),ref_key:"formRef",ref:w},{default:d((()=>[u(l,{class:"mt-[10rpx]"},{default:d((()=>[u(o,{label:i(j)("alipayRealname"),prop:"realname","border-bottom":!0},{default:d((()=>[u(t,{modelValue:B.realname,"onUpdate:modelValue":a[3]||(a[3]=e=>B.realname=e),border:"none",clearable:"",placeholder:i(j)("alipayRealnamePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),u(l,{class:"mt-[10rpx]"},{default:d((()=>[u(o,{label:i(j)("alipayAccountNo"),prop:"account_no","border-bottom":!0},{default:d((()=>[u(t,{modelValue:B.account_no,"onUpdate:modelValue":a[4]||(a[4]=e=>B.account_no=e),border:"none",clearable:"",placeholder:i(j)("alipayAccountNoPlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1})])),_:1},8,["model","rules"])])),_:1})],64)):b("v-if",!0),u(l,{class:"mt-[100rpx]"},{default:d((()=>[u(f,{text:i(j)("save"),type:"primary",shape:"circle",loading:R.value,onClick:Z},null,8,["text","loading"]),B.account_id?(r(),_(l,{key:0,class:"mt-[30rpx]"},{default:d((()=>[u(f,{text:i(j)("delete"),type:"primary",shape:"circle",plain:!0,loading:R.value,onClick:a[5]||(a[5]=e=>q.value=!0)},null,8,["text","loading"])])),_:1})):b("v-if",!0)])),_:1})])),_:1})])),_:1}),u(x,{show:q.value,content:i(j)("deleteConfirm"),confirmText:i(j)("confirm"),cancelText:i(j)("cancel"),showCancelButton:!0,onConfirm:E,onCancel:a[6]||(a[6]=e=>q.value=!1)},null,8,["show","content","confirmText","cancelText"])],64)}}});export{R as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-address.ea99cb78.js b/niucloud/public/wap/assets/app-pages-member-address.ea99cb78.js new file mode 100644 index 0000000..d9a0fc8 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-address.ea99cb78.js @@ -0,0 +1 @@ +import{V as t,W as e,X as s,q as a,t as i,i as r,j as n,w as l,k as o,T as u,F as d,G as c,H as h,I as p,p as f,K as b,L as m,N as _,x as g,ap as y,m as x,d as w,r as v,Z as S,o as C,b4 as k,l as $,v as z,n as T,h as X,b5 as A,y as R,b6 as B}from"./index-c1dbaba4.js";import{_ as D,a as I}from"./u-tabbar.7b503373.js";import{_ as P}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as Y}from"./u-icon.d4bf195f.js";import{_ as M}from"./u-empty.c3b684cc.js";import{_ as j}from"./u-button.78b6f378.js";import"./u-safe-bottom.f0120e94.js";import"./u-loading-icon.4b2cb429.js";const L=P({name:"u-tabs",mixins:[e,s,{props:{duration:{type:Number,default:t.tabs.duration},list:{type:Array,default:t.tabs.list},lineColor:{type:String,default:t.tabs.lineColor},activeStyle:{type:[String,Object],default:t.tabs.activeStyle},inactiveStyle:{type:[String,Object],default:t.tabs.inactiveStyle},lineWidth:{type:[String,Number],default:t.tabs.lineWidth},lineHeight:{type:[String,Number],default:t.tabs.lineHeight},lineBgSize:{type:String,default:t.tabs.lineBgSize},itemStyle:{type:[String,Object],default:t.tabs.itemStyle},scrollable:{type:Boolean,default:t.tabs.scrollable},current:{type:[Number,String],default:t.tabs.current},keyName:{type:String,default:t.tabs.keyName}}}],data:()=>({firstTime:!0,scrollLeft:0,scrollViewWidth:0,lineOffsetLeft:0,tabsRect:{left:0},innerCurrent:0,moving:!1}),watch:{current:{immediate:!0,handler(t,e){t!==this.innerCurrent&&(this.innerCurrent=t,this.$nextTick((()=>{this.resize()})))}},list(){this.$nextTick((()=>{this.resize()}))}},computed:{textStyle(){return t=>{const e={},s=t===this.innerCurrent?uni.$u.addStyle(this.activeStyle):uni.$u.addStyle(this.inactiveStyle);return this.list[t].disabled&&(e.color="#c8c9cc"),uni.$u.deepMerge(s,e)}},propsBadge:()=>uni.$u.props.badge},async mounted(){this.init()},emits:["click","change"],methods:{setLineLeft(){const t=this.list[this.innerCurrent];if(!t)return;let e=this.list.slice(0,this.innerCurrent).reduce(((t,e)=>t+e.rect.width),0);const s=uni.$u.getPx(this.lineWidth);this.lineOffsetLeft=e+(t.rect.width-s)/2,this.firstTime&&setTimeout((()=>{this.firstTime=!1}),10)},animation(t,e=0){},clickHandler(t,e){this.$emit("click",{...t,index:e}),t.disabled||(this.innerCurrent=e,this.resize(),this.$emit("change",{...t,index:e}))},init(){uni.$u.sleep().then((()=>{this.resize()}))},setScrollLeft(){const t=this.list[this.innerCurrent],e=this.list.slice(0,this.innerCurrent).reduce(((t,e)=>t+e.rect.width),0),s=uni.$u.sys().windowWidth;let a=e-(this.tabsRect.width-t.rect.width)/2-(s-this.tabsRect.right)/2+this.tabsRect.left/2;a=Math.min(a,this.scrollViewWidth-this.tabsRect.width),this.scrollLeft=Math.max(0,a)},resize(){0!==this.list.length&&Promise.all([this.getTabsRect(),this.getAllItemRect()]).then((([t,e=[]])=>{this.tabsRect=t,this.scrollViewWidth=0,e.map(((t,e)=>{this.scrollViewWidth+=t.width,this.list[e].rect=t})),this.setLineLeft(),this.setScrollLeft()}))},getTabsRect(){return new Promise((t=>{this.queryRect("u-tabs__wrapper__scroll-view").then((e=>t(e)))}))},getAllItemRect(){return new Promise((t=>{const e=this.list.map(((t,e)=>this.queryRect(`u-tabs__wrapper__nav__item-${e}`,!0)));Promise.all(e).then((e=>t(e)))}))},queryRect(t,e){return new Promise((e=>{this.$uGetRect(`.${t}`).then((t=>{e(t)}))}))}}},[["render",function(t,e,s,x,w,v){const S=_,C=a(i("u-badge"),D),k=g,$=y;return r(),n(k,{class:"u-tabs"},{default:l((()=>[o(k,{class:"u-tabs__wrapper"},{default:l((()=>[u(t.$slots,"left",{},void 0,!0),o(k,{class:"u-tabs__wrapper__scroll-view-wrapper"},{default:l((()=>[o($,{"scroll-x":t.scrollable,"scroll-left":w.scrollLeft,"scroll-with-animation":"",class:"u-tabs__wrapper__scroll-view","show-scrollbar":!1,ref:"u-tabs__wrapper__scroll-view"},{default:l((()=>[o(k,{class:"u-tabs__wrapper__nav",ref:"u-tabs__wrapper__nav"},{default:l((()=>[(r(!0),d(c,null,h(t.list,((e,s)=>(r(),n(k,{class:p(["u-tabs__wrapper__nav__item",[`u-tabs__wrapper__nav__item-${s}`,e.disabled&&"u-tabs__wrapper__nav__item--disabled"]]),key:s,onClick:t=>v.clickHandler(e,s),ref_for:!0,ref:`u-tabs__wrapper__nav__item-${s}`,style:f([t.$u.addStyle(t.itemStyle),{flex:t.scrollable?"":1}])},{default:l((()=>[o(S,{class:p([[e.disabled&&"u-tabs__wrapper__nav__item__text--disabled"],"u-tabs__wrapper__nav__item__text"]),style:f([v.textStyle(s)])},{default:l((()=>[b(m(e[t.keyName]),1)])),_:2},1032,["class","style"]),o(C,{show:!(!e.badge||!(e.badge.show||e.badge.isDot||e.badge.value)),isDot:e.badge&&e.badge.isDot||v.propsBadge.isDot,value:e.badge&&e.badge.value||v.propsBadge.value,max:e.badge&&e.badge.max||v.propsBadge.max,type:e.badge&&e.badge.type||v.propsBadge.type,showZero:e.badge&&e.badge.showZero||v.propsBadge.showZero,bgColor:e.badge&&e.badge.bgColor||v.propsBadge.bgColor,color:e.badge&&e.badge.color||v.propsBadge.color,shape:e.badge&&e.badge.shape||v.propsBadge.shape,numberType:e.badge&&e.badge.numberType||v.propsBadge.numberType,inverted:e.badge&&e.badge.inverted||v.propsBadge.inverted,customStyle:"margin-left: 4px;"},null,8,["show","isDot","value","max","type","showZero","bgColor","color","shape","numberType","inverted"])])),_:2},1032,["onClick","style","class"])))),128)),o(k,{class:"u-tabs__wrapper__nav__line",ref:"u-tabs__wrapper__nav__line",style:f([{width:t.$u.addUnit(t.lineWidth),transform:`translate(${w.lineOffsetLeft}px)`,transitionDuration:`${w.firstTime?0:t.duration}ms`,height:t.$u.addUnit(t.lineHeight),background:t.lineColor,backgroundSize:t.lineBgSize}])},null,8,["style"])])),_:1},512)])),_:1},8,["scroll-x","scroll-left"])])),_:1}),u(t.$slots,"right",{},void 0,!0)])),_:3})])),_:3})}],["__scopeId","data-v-580effc0"]]);const W={methods:{getTouchPoint:t=>t?t.touches&&t.touches[0]?{x:t.touches[0].pageX,y:t.touches[0].pageY}:t.changedTouches&&t.changedTouches[0]?{x:t.changedTouches[0].pageX,y:t.changedTouches[0].pageY}:{x:t.clientX||0,y:t.clientY||0}:{x:0,y:0},resetTouchStatus(){this.direction="",this.deltaX=0,this.deltaY=0,this.offsetX=0,this.offsetY=0},touchStart(t){this.resetTouchStatus();const e=this.getTouchPoint(t);this.startX=e.x,this.startY=e.y},touchMove(t){const e=this.getTouchPoint(t);var s,a;this.deltaX=e.x-this.startX,this.deltaY=e.y-this.startY,this.offsetX=Math.abs(this.deltaX),this.offsetY=Math.abs(this.deltaY),this.direction=this.direction||(s=this.offsetX,a=this.offsetY,s>a&&s>10?"horizontal":a>s&&a>10?"vertical":"")}}},O={props:{show:{type:Boolean,default:t.swipeActionItem.show},name:{type:[String,Number],default:t.swipeActionItem.name},disabled:{type:Boolean,default:t.swipeActionItem.disabled},autoClose:{type:Boolean,default:t.swipeActionItem.autoClose},threshold:{type:Number,default:t.swipeActionItem.threshold},options:{type:Array,default:()=>uni.$u.props.swipeActionItem.rightOptions},duration:{type:[String,Number],default:t.swipeActionItem.duration}}};function H(t){return t.toString().indexOf("s")>=0?t:t>30?t+"ms":t+"s"}function N(t,e,s){e.getState(),s.selectAllComponents(".u-swipe-action-item__right__button"),e.requestAnimationFrame((function(){e.setStyle({transition:"none",transform:"translateX("+t+"px)","-webkit-transform":"translateX("+t+"px)"})}))}function q(t,e){var s=t.getState();e.selectAllComponents(".u-swipe-action-item__right__button");var a=H(s.duration),i=-s.buttonsWidth;t.requestAnimationFrame((function(){t.setStyle({transition:"transform "+a,transform:"translateX("+i+"px)","-webkit-transform":"translateX("+i+"px)"})})),F("open",t,e)}function F(t,e,s){e.getState().status=t,s.callMethod("setState",t)}function V(t,e){var s=t.getState(),a=e.selectAllComponents(".u-swipe-action-item__right__button"),i=a.length,r=H(s.duration);t.requestAnimationFrame((function(){t.setStyle({transition:"transform "+r,transform:"translateX(0px)","-webkit-transform":"translateX(0px)"});for(var e=i-1;e>=0;e--)a[e].setStyle({transition:"transform "+r,transform:"translateX(0px)","-webkit-transform":"translateX(0px)"})})),F("close",t,e)}const Z={touchstart:function(t,e){var s=t.instance.getState();if(!s.disabled){var a=t.touches;a&&a.length>1||(s.moving=!0,s.startX=a[0].pageX,s.startY=a[0].pageY,e.callMethod("closeOther"))}},touchmove:function(t,e){var s=t.instance,a=s.getState();if(!a.disabled&&a.moving){var i=t.touches,r=i[0].pageX,n=i[0].pageY,l=r-a.startX,o=n-a.startY,u=a.buttonsWidth;(Math.abs(l)>Math.abs(o)||Math.abs(l)>a.threshold)&&(t.preventDefault&&t.preventDefault(),t.stopPropagation&&t.stopPropagation()),Math.abs(l)u&&(l=u),N(-u+l,s,e)):(l>0&&(l=0),Math.abs(l)>u&&(l=-u),N(l,s,e)))}},touchend:function(t,e){var s=t.instance,a=s.getState();if(a.moving&&!a.disabled){var i=t.changedTouches?t.changedTouches[0]:{},r=i.pageX;i.pageY;var n=r-a.startX;if("open"===a.status){if(n<0)return;if(0===n)return V(s,e);Math.abs(n)0)return;Math.abs(n){t.$wxs||(t.$wxs=[]),t.$wxs.push("wxs"),t.mixins||(t.mixins=[]),t.mixins.push({beforeCreate(){this.wxs=Z}})},U={name:"u-swipe-action-item",emits:["click"],mixins:[e,s,O,W],mixins:[e,s,O,W,{methods:{closeHandler(){this.status="close"},setState(t){this.status=t},closeOther(){this.parent&&this.parent.closeOther(this)}}}],data:()=>({size:{},parentData:{autoClose:!0},status:"close"}),watch:{wxsInit(t,e){this.queryRect()}},computed:{wxsInit(){return[this.disabled,this.autoClose,this.threshold,this.options,this.duration]}},mounted(){this.init()},methods:{init(){this.updateParentData(),uni.$u.sleep().then((()=>{this.queryRect()}))},updateParentData(){this.getParentData("u-swipe-action")},queryRect(){this.$uGetRect(".u-swipe-action-item__right__button",!0).then((t=>{this.size={buttons:t,show:this.show,disabled:this.disabled,threshold:this.threshold,duration:this.duration}}))},buttonClickHandler(t,e){this.$emit("click",{index:e,name:this.name})}}};G(U);const E=P(U,[["render",function(t,e,s,p,y,w){const v=a(i("u-icon"),Y),S=_,C=g;return r(),n(C,{class:"u-swipe-action-item",ref:"u-swipe-action-item"},{default:l((()=>[o(C,{class:"u-swipe-action-item__right"},{default:l((()=>[u(t.$slots,"button",{},(()=>[(r(!0),d(c,null,h(t.options,((e,s)=>(r(),n(C,{key:s,class:"u-swipe-action-item__right__button",ref_for:!0,ref:`u-swipe-action-item__right__button-${s}`,style:f([{alignItems:e.style&&e.style.borderRadius?"center":"stretch"}]),onClick:t=>w.buttonClickHandler(e,s)},{default:l((()=>[o(C,{class:"u-swipe-action-item__right__button__wrapper",style:f([{backgroundColor:e.style&&e.style.backgroundColor?e.style.backgroundColor:"#C7C6CD",borderRadius:e.style&&e.style.borderRadius?e.style.borderRadius:"0",padding:e.style&&e.style.borderRadius?"0":"0 15px"},e.style])},{default:l((()=>[e.icon?(r(),n(v,{key:0,name:e.icon,color:e.style&&e.style.color?e.style.color:"#ffffff",size:e.iconSize?t.$u.addUnit(e.iconSize):e.style&&e.style.fontSize?1.2*t.$u.getPx(e.style.fontSize):17,customStyle:{marginRight:e.text?"2px":0}},null,8,["name","color","size","customStyle"])):x("v-if",!0),e.text?(r(),n(S,{key:1,class:"u-swipe-action-item__right__button__wrapper__text u-line-1",style:f([{color:e.style&&e.style.color?e.style.color:"#ffffff",fontSize:e.style&&e.style.fontSize?e.style.fontSize:"16px",lineHeight:e.style&&e.style.fontSize?e.style.fontSize:"16px"}])},{default:l((()=>[b(m(e.text),1)])),_:2},1032,["style"])):x("v-if",!0)])),_:2},1032,["style"])])),_:2},1032,["style","onClick"])))),128))]),!0)])),_:3}),o(C,{class:"u-swipe-action-item__content",onTouchstart:t.wxs.touchstart,onTouchmove:t.wxs.touchmove,onTouchend:t.wxs.touchend,status:y.status,"change:status":t.wxs.statusChange,size:y.size,"change:size":t.wxs.sizeChange},{default:l((()=>[u(t.$slots,"default",{},void 0,!0)])),_:3},8,["onTouchstart","onTouchmove","onTouchend","status","change:status","size","change:size"])])),_:3},512)}],["__scopeId","data-v-19c3dfd5"]]);const K=P({name:"u-swipe-action",mixins:[e,s,{props:{autoClose:{type:Boolean,default:t.swipeAction.autoClose}}}],data:()=>({}),provide(){return{swipeAction:this}},computed:{parentData(){return[this.autoClose]}},watch:{parentData(){this.children.length&&this.children.map((t=>{"function"==typeof t.updateParentData&&t.updateParentData()}))}},created(){this.children=[]},methods:{closeOther(t){this.autoClose&&this.children.map(((e,s)=>{t!==e&&e.closeHandler()}))}}},[["render",function(t,e,s,a,i,o){const d=g;return r(),n(d,{class:"u-swipe-action"},{default:l((()=>[u(t.$slots,"default")])),_:3})}]]),J=P(w({__name:"address",setup(t){const e=v(!0),s=v(0),u=v([{name:S("address"),key:"address"},{name:S("locationAddress"),key:"location_address"}]),p=v([]),f=v([]),w=v("");C((t=>{w.value=t.type||"",t.type&&(s.value="address"==t.type?0:1)})),k({}).then((({data:t})=>{const s=[],a=[];t.forEach((t=>{"address"==t.type?s.push(t):a.push(t)})),p.value=s,f.value=a,e.value=!1})).catch((()=>{e.value=!1}));const D=t=>{s.value=t.index},P=()=>{const t=`/app/pages/member/${u.value[s.value].key}_edit`;X({url:t,param:{type:w.value}})},Y=t=>{const e=`/app/pages/member/${u.value[s.value].key}_edit`;X({url:e,param:{id:t,type:w.value}})},W=v([{text:S("delete"),style:{backgroundColor:"#F56C6C"}}]),O=t=>{const e=uni.getStorageSync("selectAddressCallback");e&&(e.address_id=t.id,uni.setStorage({key:"selectAddressCallback",data:e,success(){X({url:e.back})}}))},H=t=>{const e=s.value?f:p,a=e.value[t.index];B(a.id).then((()=>{e.value.splice(t.index,1)})).catch()};return(t,v)=>{const C=a(i("u-tabs"),L),k=g,X=_,B=a(i("u-swipe-action-item"),E),N=a(i("u-empty"),M),q=a(i("u-swipe-action"),K),F=a(i("u-button"),j),V=a(i("u-tabbar"),I),Z=y;return e.value?x("v-if",!0):(r(),n(Z,{key:0,"scroll-y":"true"},{default:l((()=>[w.value?x("v-if",!0):(r(),n(k,{key:0,class:"border-0 !border-b !border-[#eee] border-solid"},{default:l((()=>[o(C,{list:u.value,onClick:D,current:s.value,itemStyle:"width:50%;height:88rpx;box-sizing: border-box;"},null,8,["list","current"])])),_:1})),o(q,null,{default:l((()=>[$(o(k,{class:"p-[30rpx]"},{default:l((()=>[(r(!0),d(c,null,h(p.value,(t=>(r(),n(B,{options:W.value,onClick:H},{default:l((()=>[o(k,{class:"border-0 !border-b !border-[#f5f5f5] border-solid pb-[30rpx] flex items-center"},{default:l((()=>[o(k,{class:"flex-1",onClick:e=>O(t)},{default:l((()=>[o(k,{class:"font-bold my-[10rpx] text-sm"},{default:l((()=>[b(m(t.full_address),1)])),_:2},1024),o(k,{class:"text-sm flex items-center"},{default:l((()=>[b(m(t.name)+" ",1),o(X,{class:"text-[26rpx] text-gray-subtitle"},{default:l((()=>[b(m(T(A)(t.mobile)),1)])),_:2},1024),1==t.is_default?(r(),n(k,{key:0,class:"bg-primary text-white text-xs px-[10rpx] leading-none flex items-center h-[32rpx] ml-[10rpx] rounded"},{default:l((()=>[b(m(T(S)("default")),1)])),_:1})):x("v-if",!0)])),_:2},1024)])),_:2},1032,["onClick"]),o(X,{class:"iconfont iconbianji",onClick:e=>Y(t.id)},null,8,["onClick"])])),_:2},1024)])),_:2},1032,["options"])))),256)),p.value.length?x("v-if",!0):(r(),n(k,{key:0,class:"pt-[20vh]"},{default:l((()=>[o(N,{mode:"address",icon:T(R)("static/resource/images/empty.png")},null,8,["icon"])])),_:1}))])),_:1},512),[[z,0==s.value]]),$(o(k,{class:"p-[30rpx]"},{default:l((()=>[(r(!0),d(c,null,h(f.value,(t=>(r(),n(B,{options:W.value,onClick:H},{default:l((()=>[o(k,{class:"border-0 !border-b !border-[#f5f5f5] border-solid pb-[30rpx] flex items-center"},{default:l((()=>[o(k,{class:"flex-1",onClick:e=>O(t)},{default:l((()=>[o(k,{class:"font-bold my-[10rpx] text-sm"},{default:l((()=>[b(m(t.full_address),1)])),_:2},1024),o(k,{class:"text-sm flex items-center"},{default:l((()=>[b(m(t.name)+" ",1),o(X,{class:"text-[26rpx] text-gray-subtitle"},{default:l((()=>[b(m(T(A)(t.mobile)),1)])),_:2},1024),1==t.is_default?(r(),n(k,{key:0,class:"bg-primary text-white text-xs px-[10rpx] leading-none flex items-center h-[32rpx] ml-[10rpx] rounded"},{default:l((()=>[b(m(T(S)("default")),1)])),_:1})):x("v-if",!0)])),_:2},1024)])),_:2},1032,["onClick"]),o(X,{class:"iconfont iconbianji",onClick:e=>Y(t.id)},null,8,["onClick"])])),_:2},1024)])),_:2},1032,["options"])))),256)),f.value.length?x("v-if",!0):(r(),n(k,{key:0,class:"pt-[15vh]"},{default:l((()=>[o(N,{mode:"address",icon:T(R)("static/resource/images/empty.png")},null,8,["icon"])])),_:1}))])),_:1},512),[[z,1==s.value]])])),_:1}),o(V,{fixed:!0,safeAreaInsetBottom:!0,border:!1},{default:l((()=>[o(k,{class:"p-[24rpx] pt-0 w-full"},{default:l((()=>[o(F,{type:"primary",shape:"circle",text:T(S)("createAddress"),onClick:P},null,8,["text"])])),_:1})])),_:1})])),_:1}))}}}),[["__scopeId","data-v-e74c975b"]]);export{J as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-address_edit.57cbd4fb.js b/niucloud/public/wap/assets/app-pages-member-address_edit.57cbd4fb.js new file mode 100644 index 0000000..c70de92 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-address_edit.57cbd4fb.js @@ -0,0 +1 @@ +import{_ as e}from"./u-input.d53f0aa0.js";import{d as a,r as l,a as t,b7 as i,ab as r,b8 as s,q as d,t as o,i as c,j as u,w as n,k as p,K as m,I as v,L as f,m as _,l as b,F as y,G as h,H as x,v as g,x as k,ap as j,o as V,b9 as C,c as P,n as w,ba as $,bb as q,h as A,Z as U}from"./index-c1dbaba4.js";import{_ as I,a as E}from"./u-form.612a076f.js";import{_ as R}from"./u-switch.d5ecdabf.js";import{_ as T}from"./u-button.78b6f378.js";import{_ as Z}from"./u-popup.c9f22720.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-loading-icon.4b2cb429.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const z=a({__name:"area-select",props:{areaId:{type:Number,default:0}},emits:["complete"],setup(e,{expose:a,emit:V}){const C=e,P=l(!1),w=t({province:[],city:[],district:[]}),$=l("province"),q=t({province:null,city:null,district:null});i(0).then((({data:e})=>{w.province=e})).catch(),r((()=>C.areaId),((e,a)=>{e&&!a&&s(e).then((({data:e})=>{e.province&&(q.province=e.province),e.city&&(q.city=e.city),e.district&&(q.district=e.district)})).catch()})),r((()=>q.province),(()=>{i(q.province.id).then((({data:e})=>{if(w.city=e,$.value="city",q.city){let a=!1;for(let l=0;lq.city),(e=>{e?i(q.city.id).then((({data:e})=>{if(w.district=e,$.value="district",q.district){let a=!1;for(let l=0;lq.district),(e=>{e&&($.value="district",V("complete",q),P.value=!1)}),{deep:!0});return a({open:()=>{P.value=!0}}),(e,a)=>{const l=k,t=j,i=d(o("u-popup"),Z);return c(),u(i,{show:P.value,onClose:a[3]||(a[3]=e=>P.value=!1),mode:"bottom",round:10,closeable:!0},{default:n((()=>[p(l,{class:"text-center p-[30rpx]"},{default:n((()=>[m("请选择地区")])),_:1}),p(l,{class:"flex p-[30rpx] text-sm font-semibold"},{default:n((()=>[w.province.length?(c(),u(l,{key:0,class:v(["pr-[50rpx]",{"text-[red]":"province"==$.value}]),onClick:a[0]||(a[0]=e=>$.value="province")},{default:n((()=>[q.province?(c(),u(l,{key:0},{default:n((()=>[m(f(q.province.name),1)])),_:1})):(c(),u(l,{key:1},{default:n((()=>[m("请选择")])),_:1}))])),_:1},8,["class"])):_("v-if",!0),w.city.length?(c(),u(l,{key:1,class:v(["pr-[50rpx]",{"text-[red]":"city"==$.value}]),onClick:a[1]||(a[1]=e=>$.value="city")},{default:n((()=>[q.city?(c(),u(l,{key:0},{default:n((()=>[m(f(q.city.name),1)])),_:1})):(c(),u(l,{key:1},{default:n((()=>[m("请选择")])),_:1}))])),_:1},8,["class"])):_("v-if",!0),w.district.length?(c(),u(l,{key:2,class:v(["pr-[50rpx]",{"text-[red]":"district"==$.value}]),onClick:a[2]||(a[2]=e=>$.value="district")},{default:n((()=>[q.district?(c(),u(l,{key:0},{default:n((()=>[m(f(q.district.name),1)])),_:1})):(c(),u(l,{key:1},{default:n((()=>[m("请选择")])),_:1}))])),_:1},8,["class"])):_("v-if",!0)])),_:1}),p(t,{"scroll-y":"true",class:"h-[50vh]"},{default:n((()=>[p(l,{class:"flex p-[30rpx] pt-0 text-sm"},{default:n((()=>[w.province.length?b((c(),u(l,{key:0},{default:n((()=>[(c(!0),y(h,null,x(w.province,(e=>(c(),u(l,{class:v(["leading-loose",{"text-[red]":q.province&&q.province.id==e.id}]),onClick:a=>q.province=e},{default:n((()=>[m(f(e.name),1)])),_:2},1032,["class","onClick"])))),256))])),_:1},512)),[[g,"province"==$.value]]):_("v-if",!0),w.city.length?b((c(),u(l,{key:1},{default:n((()=>[(c(!0),y(h,null,x(w.city,(e=>(c(),u(l,{class:v(["leading-loose",{"text-[red]":q.city&&q.city.id==e.id}]),onClick:a=>q.city=e},{default:n((()=>[m(f(e.name),1)])),_:2},1032,["class","onClick"])))),256))])),_:1},512)),[[g,"city"==$.value]]):_("v-if",!0),w.district.length?b((c(),u(l,{key:2},{default:n((()=>[(c(!0),y(h,null,x(w.district,(e=>(c(),u(l,{class:v(["leading-loose",{"text-[red]":q.district&&q.district.id==e.id}]),onClick:a=>q.district=e},{default:n((()=>[m(f(e.name),1)])),_:2},1032,["class","onClick"])))),256))])),_:1},512)),[[g,"district"==$.value]]):_("v-if",!0)])),_:1})])),_:1})])),_:1},8,["show"])}}}),F=a({__name:"address_edit",setup(a){const t=l({id:0,name:"",mobile:"",province_id:0,city_id:0,district_id:0,address:"",full_address:"",is_default:0,area:"",type:"address"}),i=l(),r=l(null),s=l("");V((e=>{e.id&&C(e.id).then((({data:e})=>{e&&Object.assign(t.value,e)})).catch(),s.value=e.type||""}));const v=P((()=>({name:{type:"string",required:!0,message:U("namePlaceholder"),trigger:["blur","change"]},mobile:[{type:"string",required:!0,message:U("mobilePlaceholder"),trigger:["blur","change"]},{validator:()=>uni.$u.test.mobile(t.value.mobile),message:U("mobileError")}],area:{validator:()=>!uni.$u.test.isEmpty(t.value.area),message:U("selectAreaPlaceholder")},address:{type:"string",required:!0,message:U("addressPlaceholder"),trigger:["blur","change"]}}))),_=()=>{i.value.open()},b=e=>{t.value.province_id=e.province.id||0,t.value.city_id=e.city.id||0,t.value.district_id=e.district.id||0,t.value.area=`${e.province.name||""}${e.city.name||""}${e.district.name||""}`},x=l(!1),g=()=>{const e=t.value.id?$:q;r.value.validate().then((()=>{x.value||(x.value=!0,t.value.full_address=t.value.area+t.value.address,e(t.value).then((e=>{x.value=!1,setTimeout((()=>{A({url:"/app/pages/member/address",param:{type:s.value}})}),1e3)})).catch((()=>{x.value=!1})))}))};return(a,l)=>{const s=d(o("u-input"),e),j=d(o("u-form-item"),I),V=k,C=d(o("u-switch"),R),P=d(o("u-button"),T),$=d(o("u-form"),E),q=d(o("area-select"),z);return c(),y(h,null,[p(V,{class:"px-[30rpx]"},{default:n((()=>[p($,{labelPosition:"left",model:t.value,labelWidth:"200rpx",errorType:"toast",rules:w(v),ref_key:"formRef",ref:r},{default:n((()=>[p(V,{class:"mt-[10rpx]"},{default:n((()=>[p(j,{label:w(U)("name"),prop:"name","border-bottom":!0},{default:n((()=>[p(s,{modelValue:t.value.name,"onUpdate:modelValue":l[0]||(l[0]=e=>t.value.name=e),border:"none",clearable:"",placeholder:w(U)("namePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),p(V,{class:"mt-[10rpx]"},{default:n((()=>[p(j,{label:w(U)("mobile"),prop:"mobile","border-bottom":!0},{default:n((()=>[p(s,{modelValue:t.value.mobile,"onUpdate:modelValue":l[1]||(l[1]=e=>t.value.mobile=e),border:"none",clearable:"",placeholder:w(U)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),p(V,{class:"mt-[10rpx]"},{default:n((()=>[p(j,{label:w(U)("selectArea"),prop:"area","border-bottom":!0,onClick:_},{default:n((()=>[t.value.area?(c(),u(V,{key:1,class:"text-[30rpx]"},{default:n((()=>[m(f(t.value.area),1)])),_:1})):(c(),u(V,{key:0,class:"text-gray-placeholder text-[30rpx]"},{default:n((()=>[m(f(w(U)("selectAreaPlaceholder")),1)])),_:1}))])),_:1},8,["label"])])),_:1}),p(V,{class:"mt-[10rpx]"},{default:n((()=>[p(j,{label:w(U)("address"),prop:"address","border-bottom":!0},{default:n((()=>[p(s,{modelValue:t.value.address,"onUpdate:modelValue":l[2]||(l[2]=e=>t.value.address=e),border:"none",clearable:"",placeholder:w(U)("addressPlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),p(V,{class:"mt-[10rpx]"},{default:n((()=>[p(j,{label:w(U)("defaultAddress"),prop:"name","border-bottom":!0},{default:n((()=>[p(C,{modelValue:t.value.is_default,"onUpdate:modelValue":l[3]||(l[3]=e=>t.value.is_default=e),size:"20",activeValue:1,inactiveValue:0},null,8,["modelValue"])])),_:1},8,["label"])])),_:1}),p(V,{class:"mt-[40rpx]"},{default:n((()=>[p(P,{type:"primary",shape:"circle",text:w(U)("save"),onClick:g,loading:x.value},null,8,["text","loading"])])),_:1})])),_:1},8,["model","rules"])])),_:1}),p(q,{ref_key:"areaRef",ref:i,onComplete:b,"area-id":t.value.district_id},null,8,["area-id"])],64)}}});export{F as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-apply_cash_out.13a8c093.js b/niucloud/public/wap/assets/app-pages-member-apply_cash_out.13a8c093.js new file mode 100644 index 0000000..203ad42 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-apply_cash_out.13a8c093.js @@ -0,0 +1 @@ +import{d as e,r as a,Y as t,a as l,c as n,ab as s,o,aa as c,Z as p,ai as i,aj as u,i as r,F as d,j as y,w as f,k as x,K as A,L as m,n as g,m as _,G as b,ak as h,al as k,am as T,an as B,h as O,x as v,N as w,ao as G,M as Q,q as F,t as C,ap as M,y as P}from"./index-c1dbaba4.js";import{_ as U}from"./u-button.78b6f378.js";import{_ as S}from"./u-loading-page.8a915b31.js";import"./u-loading-icon.4b2cb429.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-icon.d4bf195f.js";import"./u-transition.24c0ace1.js";const Y=e({__name:"apply_cash_out",setup(e){const Y=a(!0),Z=a(!1),j=t(),E=l({apply_money:"",transfer_type:"",account_type:"money",account_id:0}),H=n((()=>j.info?j.info[E.account_type]:0));s((()=>E.transfer_type),(e=>{switch(e){case"bank":E.account_id=R.value?R.value.account_id:0;break;case"alipay":E.account_id=X.value?X.value.account_id:0;break;default:E.account_id=0}}),{immediate:!0});const V=l({is_auto_transfer:0,is_auto_verify:0,is_open:0,min:0,rate:0,transfer_type:[]});let L={};o((async e=>{L=e,uni.getStorageSync("cashOutAccountType")&&(E.account_type=uni.getStorageSync("cashOutAccountType")),["money","commission"].includes(E.account_type)?await u().then((e=>{for(let a in e.data)V[a]=e.data[a];V.transfer_type.includes("wechat")&&j.info&&!j.info.wx_openid&&!j.info.weapp_openid&&V.transfer_type.splice(0,1),V.transfer_type.includes("bank")&&D(),V.transfer_type.includes("alipay")&&z(),E.transfer_type=V.transfer_type[0],Y.value=!1})):c({title:p("abnormalOperation"),icon:"none",success(){setTimeout((()=>{i({delta:1})}),1500)}})}));const I=()=>{E.apply_money=h(H)},N=()=>{E.apply_money=""},X=a(null),z=()=>{const e={account_type:"alipay",account_id:0};let a=k;L.type&&"alipay"==L.type&&L.account_id&&(a=T,e.account_id=L.account_id),a(e).then((e=>{e.data&&e.data.account_id&&(X.value=e.data)}))},R=a(null),D=()=>{const e={account_type:"bank",account_id:0};let a=k;L.type&&"bank"==L.type&&L.account_id&&(a=T,e.account_id=L.account_id),a(e).then((e=>{e.data&&e.data.account_id&&(R.value=e.data)}))},W=()=>{if(E.transfer_type?uni.$u.test.isEmpty(E.apply_money)?(c({title:p("applyMoneyPlaceholder"),icon:"none"}),0):uni.$u.test.amount(E.apply_money)?parseFloat(E.apply_money)>parseFloat(H.value)?(c({title:p("applyMoneyExceed"),icon:"none"}),0):!(parseFloat(E.apply_money){O({url:"/app/pages/member/cash_out"})})).catch((()=>{Z.value=!1}))}};return(e,a)=>{const t=v,l=w,n=G,s=Q,o=F(C("u-button"),U),c=M,i=F(C("u-loading-page"),S);return r(),d(b,null,[Y.value?_("v-if",!0):(r(),y(c,{key:0,"scroll-y":"true",class:"w-screen h-screen bg-page"},{default:f((()=>[x(t,null,{default:f((()=>[x(t,{class:"p-[30rpx] bg-white"},{default:f((()=>[x(t,null,{default:f((()=>[A(m(g(p)("cashOutMoneyTip")),1)])),_:1}),x(t,{class:"flex py-[20rpx] items-baseline border-0 border-b-[2rpx] border-solid border-gray-200"},{default:f((()=>[x(l,{class:"text-[60rpx]"},{default:f((()=>[A(m(g(p)("currency")),1)])),_:1}),x(n,{type:"digit",class:"h-[70rpx] leading-[70rpx] pl-[10rpx] flex-1 font-bold text-[60rpx]",modelValue:E.apply_money,"onUpdate:modelValue":a[0]||(a[0]=e=>E.apply_money=e)},null,8,["modelValue"]),E.apply_money?(r(),y(s,{key:0,onClick:N,src:g(P)("static/resource/images/member/apply_withdrawal/close.png"),class:"w-[40rpx] h-[40rpx]",mode:"widthFix"},null,8,["src"])):_("v-if",!0)])),_:1}),x(t,{class:"pt-[20rpx]"},{default:f((()=>[x(l,{class:"text-gray-400 text-[28rpx]"},{default:f((()=>[A(m(g(p)("money"))+":"+m(g(p)("currency"))+m(g(h)(g(H))),1)])),_:1}),x(l,{class:"pl-[10rpx] text-[28rpx] text-primary",onClick:I},{default:f((()=>[A(m(g(p)("allTx")),1)])),_:1})])),_:1}),x(t,null,{default:f((()=>[x(l,{class:"text-[24rpx] text-gray-400"},{default:f((()=>[A(m(g(p)("minWithdrawal"))+m(g(p)("currency"))+m(g(h)(V.min)),1)])),_:1}),x(l,{class:"text-[24rpx] text-gray-400"},{default:f((()=>[A(","+m(g(p)("commissionTo"))+m(V.rate+"%"),1)])),_:1})])),_:1})])),_:1}),x(t,{class:"px-[30rpx] bg-white mt-[30rpx]"},{default:f((()=>[_(" 提现到微信 "),V.transfer_type.includes("wechat")&&g(j).info&&(g(j).info.wx_openid||g(j).info.weapp_openid)?(r(),y(t,{key:0,class:"py-[30rpx] flex"},{default:f((()=>[x(t,null,{default:f((()=>[x(l,{class:"iconfont iconweixin1 text-[#43c93e] text-[70rpx]"})])),_:1}),x(t,{class:"flex-1 px-[20rpx]"},{default:f((()=>[x(t,null,{default:f((()=>[A(m(g(p)("cashOutToWechat")),1)])),_:1}),x(t,{class:"text-[#bbb] text-[26rpx] mt-[16rpx]"},{default:f((()=>[A(m(g(p)("cashOutToWechatTips")),1)])),_:1})])),_:1}),x(t,{class:"flex items-center",onClick:a[1]||(a[1]=e=>E.transfer_type="wechat")},{default:f((()=>["wechat"==E.transfer_type?(r(),y(l,{key:0,class:"iconfont iconduigou text-[40rpx] text-primary"})):(r(),y(l,{key:1,class:"iconfont iconcheckbox_nol text-[40rpx] text-[#bbb]"}))])),_:1})])),_:1})):_("v-if",!0),_(" 提现到支付宝 "),V.transfer_type.includes("alipay")?(r(),y(t,{key:1,class:"py-[30rpx] flex"},{default:f((()=>[x(t,null,{default:f((()=>[x(l,{class:"iconfont iconzhifubaoxuanzhong text-[#188dfb] text-[70rpx]"})])),_:1}),x(t,{class:"flex-1 px-[20rpx]"},{default:f((()=>[x(t,null,{default:f((()=>[A(m(g(p)("cashOutToAlipay")),1)])),_:1}),x(t,{class:"text-[#bbb] text-[26rpx] mt-[16rpx]"},{default:f((()=>[X.value?(r(),y(t,{key:0},{default:f((()=>[A(m(g(p)("cashOutTo"))+m(g(p)("alipayAccountNo"))+m(X.value.account_no)+" ",1),x(l,{class:"text-black",onClick:a[2]||(a[2]=e=>g(O)({url:"/app/pages/member/account",param:{type:"alipay",mode:"select"}}))},{default:f((()=>[A(m(g(p)("replace")),1)])),_:1})])),_:1})):(r(),y(t,{key:1},{default:f((()=>[A(m(g(p)("cashOutToAlipayTips")),1)])),_:1}))])),_:1})])),_:1}),x(t,{class:"flex items-center"},{default:f((()=>[X.value?(r(),y(t,{key:1,onClick:a[4]||(a[4]=e=>E.transfer_type="alipay")},{default:f((()=>["alipay"==E.transfer_type?(r(),y(l,{key:0,class:"iconfont iconduigou text-[40rpx] text-primary"})):(r(),y(l,{key:1,class:"iconfont iconcheckbox_nol text-[40rpx] text-[#bbb]"}))])),_:1})):(r(),y(o,{key:0,plain:!0,type:"primary",shape:"circle","custom-style":{height:"56rpx"},onClick:a[3]||(a[3]=e=>g(O)({url:"/app/pages/member/account",param:{type:"alipay",mode:"select"}}))},{default:f((()=>[A(m(g(p)("toAdd")),1)])),_:1}))])),_:1})])),_:1})):_("v-if",!0),_(" 提现到银行卡 "),V.transfer_type.includes("bank")?(r(),y(t,{key:2,class:"py-[30rpx] flex"},{default:f((()=>[x(t,{class:"w-[70rpx] flex justify-center"},{default:f((()=>[x(s,{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAACnVJREFUeF7tWXtQVNcZ/91FQQZZdhcXfKCCqFXQuKBV0YSHqWJ9AbU+qkZQG+uEyu66i0maB5jEaSetBdvG1vrCRhM1bQS1SUw6gn0kJhkDpqLNQ10jLApEHmrCuuyeznfWRZZd3L03/MOw38zOPfee8517vt/5fY9zV0AfF6GP2w8/AH4G9HEE/C7QxwngD4J+F/C7QB9HwO8CfZwA/iwgyQWuQznBBmGxAKGdwd4u41e0070Ndhtd7z2zUT+DYKN7GWzt14PDAtZOXfIjgLULYNaziuGfQ0A73QPMxtt2wdGG0H6vzwaB2kI7omyjoMZkMFgRav8MTGZFP+Eu7PZ23gaz8nGMWRHArGABVtht7QiQfY08Q2VXxosGwAzlVkDQAggR6z7bx87EjrEzcKtfkFhVIBjAcAYMZeJ1uYbwDWR4BnmG4s4TiALAjPBfAuwpKSvYFTsVBRPnSFF16ExigFKq8R2vvQmdMVwSAGYoVwHCq1IsqA4bjIXJOWgL6CdFHYhljt3vCWEsDfr8CudUPjOgFqpDArBMyhp2x07F899l96fbgQFS3uxBp/l2AAoL7aIBMEN1GUCMlGXkTsnE0agJUlSBgQCmdKxX2hz3tf4NnfER0S5QA4VGBplbBPV1NTNm58IUovR1uOu4IQC+10MACMJWaA3PigbADOV6QNgpxYKL8gg8Omu9FFWHzlg7MFS6uoumTJaOvE3vSgBAtRvAOinLeH2kBoaEBVJUHTqT7UCodHUXzf7BocjNvS0agFqoPhWAiQMy56HfpAmwXb2Gb0te5/MEps5EYMpMWMrehrXqv24r3ayZhwPRiZIsSNVEISV9mItuVUMDyi5/KX4+AR9Ba5zWVdFrFriOsBg7AigAYlBlBfprJuLb/YfQnJPL5wqvOMYBaExI9QjA7LSfgtKgFCktWIQMTSzONTZAERSEkaFyPs2a995ByYVqcVMK7DfQ5ueLBsAM5QpAOEiKQ9jXXL8p6zG0lb7F2/SMtbTiusI9QZiD5ZiSniduoZ1GN732BBTBQYjZtwum1lZUrVyNSYPU2PLhByg88764ee1sETblH5cAgIpKRy1RPbz8GNe/oRwFe3MLZwOxoq3sbTRlruJ9MkUY7yM5NiwOh9bkISU+CvvLL8BU39rtohUhjvKYrjROE6NG5W9X4eqtVkTv3cUZULliNaLlciS89iqqGurFAWBlkcjPd1Py6gJ1UL3PgKQQ3QbIi7bCeu48GjUp/OXOZ636Z/g99dtMXyEgegQH4bllzyJi41pER8iR87uT3Kh9G9P5ffMdC9Kee4MbfPSpRR3G03Plqh3QLUxE0doUvvOll75AZuwYbvz+i9WoqLmGouQ0mFpb0GyxICYsDJnHy3B0QQYHjNhB7e1VnziYwnAOeqPGE2IPBOAmlGFtEIj3AYqSVxCcvdzF/5WlBzAg44fc/wkM6r+95WUMLNjM3/WDec9gd8mT3GAy6srOdWj5xgLdngpu9PYTlRyIgmXTeTtzWixGquUQsopQYkhH9sNx3CACodnShtJLX/J2+eKlHAiS7PHxvE0xgZ6frq0BY4yDojn4Fw4QGH4PvdGjLz4QgBoo58sgnKAXOYPdne070ar7Bad6ZNNlnhHqozUdAbJOCOdxof1qDZKKTuHj4tU4XV2DklMXsG/jHGw5fIZT3NlOnRDFXSTmZ3tQ/uISKAcGQbFyB67sWYdolTvdSxdmIGPUaO4GmbGjUTAtCfp/VqC48iyY1tCxyS6BUmDLoM0/IpoBZihfAgTOb+duE7UtpW/x9EdUp4B4t+I/HAxyDwKHYsWVwyfwQn1gh6E0B+10yalqaGIiEBMph0Z/gPu5IIC3iSEEFrkLZ4vFAsWf/uCy7oofL0PKsChknSjjbtA5JjgBIBak/vXwfT1mjYH+aZMEAFRUNc0mRTI2tPBJbjiJteo87hT/kRtPwVBevJW3qRYgd3jzZCU+mzQFtMOFhz5A1ZUGlD69iO922UeX+DOif8VLS1D64SUOTPG6VM4UU30LCh9PQtXNeuhOl7usOycuHsXJaWi+a+FpsTNIzizhGiSFi9AZ4rqLmA90ATNUzQDCxIVbx+iVST9BeWSsFFWAEkKSuPqfmHBlzeM8HuS8+06n9wo7oTNsEA3ADaiSbIDIZHv/NXHzDGgOpM84EkTNgHhx53+K+mlRwxG9b5cj8DmFCWugN5SIBqAOKiMDfi1h+ahSDMG81O6PDuTflBmKj3+Cc6ZGnh61CxK4K1AmcAr5OUX+pg0/548o7WnUES5LIrpTcVQyZ67nAokFxEGvvygaADNUbwLIkgJAd5+/KOdTpKcASDGBhHyegiOlx+LjlRipDkXO3Hgog4N4AKRIT7vrzP/7Zs/l+Z0kZ3w8qhod8xA4rtTnjy9DZ3ygH3YbA8xQ1QBwPYn4iMb6qYtxYuh4t9G061QIVZy/1tF3ztTAawK6UlAk4ZXjPV8uTkmDVpPIix+qBokBlPYyRrna1XLXwoshF2HYD70x50HL9giAGeHjANYtbbzh8P30jagNdo+dBEBJXrpLaUysIPoTIwgAhTwImhFqpP3tCDeaAhulSdpd2n2HoaWIlofxe2cf+b2H8jgXOuMO0QDUQrVOAOgbgGgxhagwY/YTHvVyZsVzY8nnnf5P91T8EP0zpsZi/6fVyJgWy098ZGTlisc4EFQBUgokZjhPhalRw3nAI8OJFW4ACJgCrfGsaADqoNrLgDWirQdwZMRD0CU6avuu4qzvie4U8JwVYeeS2NTUihabhZexuoTJKEpO5UYTGFQAUdAjV6C4QFdnGUzGu0R/oBY6Y5Q3G7pxAdX/6EucN2VP/fma+TgYneBRlYoiCoL6vac5A4gRVBJn/eoYrw4pGAovb+N1ABlHtT35PFV1hdNn8DYdjQkYnSaRF0NNbW0cFA/yBnTGpd5scAPgOgZG2BF4w5tid/2pj27A56GDPHYXLk/iRtLOUzVI/p+d5ijSiBWTotW8Tf5PhQ35eFchV6A+chFyAToMdfOBxAidcZs3O9wAMCM8C2CUAkVLc/9gxM2/fyDpOgEZTP5PQiBQ0HPeUxDUJKqBkYz7fGdxRn9KdeQKTr93PvdAf8BuT8amzf/yZoQHAFSE2iZvip763xs8FtnTvbKu+6nHMGCYuArQ82RCA4beisLSwrve7HADoBaqMwLg9vHQ20TUvzV+Fl4ZM8OXoZ7H9NQXYIa/Q2/06VO0CwAM6FcHlVWqBRmPZOPj8OHS1GUAksUdgLp9kSA8D63hRV8W4gLANShSAyBzPX/6Msu9MUMzXf50EaFJHwMZoOkJ+vPXzoXOeNKXBXRlQGCd4wgs6Ri3Kmk5TkWO9uW97mOIAQ/bAbp+N9kGndHo6xSegqDkf4G2jUsG/STLODsg7S8EQIAZEP4MrWGLmPd7LIS+AIIGQJEkZqLOYwseSudfYL8KCav/R+QYs6h51BiMMAxGsKwRKjsdyHyTTv/5+6bgGOX1s7iYyXrjWD8AvXHXenLNfgb0JJq9cS4/A3rjrvXkmv0M6Ek0e+Ncfgb0xl3ryTX7GdCTaPbGufo8A/4PpckqfWjPHTQAAAAASUVORK5CYII=",mode:"widthFix",class:"w-[60rpx]"})])),_:1}),x(t,{class:"flex-1 px-[20rpx]"},{default:f((()=>[x(t,null,{default:f((()=>[A(m(g(p)("cashOutToBank")),1)])),_:1}),x(t,{class:"text-[#bbb] text-[26rpx] mt-[16rpx]"},{default:f((()=>[R.value?(r(),y(t,{key:0},{default:f((()=>[A(m(g(p)("cashOutTo"))+m(R.value.bank_name)+m(g(p)("debitCard"))+m(R.value.account_no.substring(R.value.account_no.length-4))+" ",1),x(l,{class:"text-black",onClick:a[5]||(a[5]=e=>g(O)({url:"/app/pages/member/account",param:{type:"bank",mode:"select"}}))},{default:f((()=>[A(m(g(p)("replace")),1)])),_:1})])),_:1})):(r(),y(t,{key:1},{default:f((()=>[A(m(g(p)("cashOutToBankTips")),1)])),_:1}))])),_:1})])),_:1}),x(t,{class:"flex items-center"},{default:f((()=>[R.value?(r(),y(t,{key:1,onClick:a[7]||(a[7]=e=>E.transfer_type="bank")},{default:f((()=>["bank"==E.transfer_type?(r(),y(l,{key:0,class:"iconfont iconduigou text-[40rpx] text-primary"})):(r(),y(l,{key:1,class:"iconfont iconcheckbox_nol text-[40rpx] text-[#bbb]"}))])),_:1})):(r(),y(o,{key:0,plain:!0,type:"primary",shape:"circle","custom-style":{height:"56rpx"},onClick:a[6]||(a[6]=e=>g(O)({url:"/app/pages/member/account",param:{type:"bank",mode:"select"}}))},{default:f((()=>[A(m(g(p)("toAdd")),1)])),_:1}))])),_:1})])),_:1})):_("v-if",!0)])),_:1}),x(t,{class:"px-[32rpx]"},{default:f((()=>[x(o,{type:"primary",shape:"circle",text:g(p)("cashOut"),class:"mt-[60rpx] mb-[40rpx]",disabled:""==E.apply_money||0==E.apply_money,loading:Z.value,onClick:W},null,8,["text","disabled","loading"])])),_:1}),x(t,{class:"mt-[40rpx] text-center text-sm",onClick:a[8]||(a[8]=e=>g(O)({url:"/app/pages/member/cash_out"}))},{default:f((()=>[A(m(g(p)("cashOutList")),1)])),_:1})])),_:1})])),_:1})),x(i,{loading:Y.value,"bg-color":"#e8e8e8","loading-text":""},null,8,["loading"])],64)}}});export{Y as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-balance.7d44e8f5.js b/niucloud/public/wap/assets/app-pages-member-balance.7d44e8f5.js new file mode 100644 index 0000000..8db60f7 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-balance.7d44e8f5.js @@ -0,0 +1 @@ +import{W as e,X as a,E as t,i as l,j as o,w as r,T as s,d as n,ah as u,r as i,ar as c,h as d,q as p,t as m,k as y,K as f,L as _,n as x,Z as v,ak as g,F as b,G as h,H as S,y as k,m as w,aa as C,x as I,ap as j,Y as E,a as P,e as T,as as F,aj as A,l as R,v as V,p as $,aq as H,at as O,N as U,I as z}from"./index-c1dbaba4.js";import{_ as B}from"./u-loading-page.8a915b31.js";import{_ as D}from"./u-button.78b6f378.js";import{p as K,_ as L}from"./u-input.d53f0aa0.js";import{_ as W}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as q}from"./u-popup.c9f22720.js";import{_ as X}from"./u-image.86f8f5db.js";import{_ as Y}from"./u-icon.d4bf195f.js";import{p as Z,g as G}from"./pay.fc2de8ec.js";import{w as N}from"./wechat.de0a8524.js";import"./u-loading-icon.4b2cb429.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const J=W({name:"u--input",mixins:[e,K,a],components:{uvInput:L}},[["render",function(e,a,n,u,i,c){const d=t("uvInput");return l(),o(d,{modelValue:e.modelValue,"onUpdate:modelValue":a[0]||(a[0]=a=>e.$emit("update:modelValue",a)),type:e.type,fixed:e.fixed,disabled:e.disabled,disabledColor:e.disabledColor,clearable:e.clearable,password:e.password,maxlength:e.maxlength,placeholder:e.placeholder,placeholderClass:e.placeholderClass,placeholderStyle:e.placeholderStyle,showWordLimit:e.showWordLimit,confirmType:e.confirmType,confirmHold:e.confirmHold,holdKeyboard:e.holdKeyboard,focus:e.focus,autoBlur:e.autoBlur,disableDefaultPadding:e.disableDefaultPadding,cursor:e.cursor,cursorSpacing:e.cursorSpacing,selectionStart:e.selectionStart,selectionEnd:e.selectionEnd,adjustPosition:e.adjustPosition,inputAlign:e.inputAlign,fontSize:e.fontSize,color:e.color,prefixIcon:e.prefixIcon,suffixIcon:e.suffixIcon,suffixIconStyle:e.suffixIconStyle,prefixIconStyle:e.prefixIconStyle,border:e.border,readonly:e.readonly,shape:e.shape,customStyle:e.customStyle,formatter:e.formatter,ignoreCompositionEvent:e.ignoreCompositionEvent},{default:r((()=>[s(e.$slots,"prefix",{slot:"prefix"}),s(e.$slots,"suffix",{slot:"suffix"})])),_:3},8,["modelValue","type","fixed","disabled","disabledColor","clearable","password","maxlength","placeholder","placeholderClass","placeholderStyle","showWordLimit","confirmType","confirmHold","holdKeyboard","focus","autoBlur","disableDefaultPadding","cursor","cursorSpacing","selectionStart","selectionEnd","adjustPosition","inputAlign","fontSize","color","prefixIcon","suffixIcon","suffixIconStyle","prefixIconStyle","border","readonly","shape","customStyle","formatter","ignoreCompositionEvent"])}]]),M=W(n({__name:"pay",emits:["close"],setup(e,{expose:a,emit:t}){u()&&N.init();const s=i(!1),n=i(!1),E=i(null),P=i(""),T=()=>{var e,a;uni.$u.test.isEmpty(P.value)?C({title:v("pay.notHavePayType"),icon:"none"}):n.value||(n.value=!0,Z({trade_type:null==(e=E.value)?void 0:e.trade_type,trade_id:null==(a=E.value)?void 0:a.trade_id,type:P.value}).then((e=>{var a,t,l,o,r,s;switch(P.value){case"wechatpay":u()?(e.data.timestamp=e.data.timeStamp,delete e.data.timeStamp,N.pay({...e.data,success:()=>{F()},cancel:()=>{n.value=!1}})):(uni.setStorageSync("paymenting",{trade_type:null==(a=E.value)?void 0:a.trade_type,trade_id:null==(t=E.value)?void 0:t.trade_id}),location.href=e.data.h5_url);break;case"alipay":u()?d({url:"/app/pages/pay/browser",param:{trade_type:null==(l=E.value)?void 0:l.trade_type,trade_id:null==(o=E.value)?void 0:o.trade_id,alipay:encodeURIComponent(e.data.url)},mode:"redirectTo"}):(uni.setStorageSync("paymenting",{trade_type:null==(r=E.value)?void 0:r.trade_type,trade_id:null==(s=E.value)?void 0:s.trade_id}),location.href=e.data.url);break;default:F()}})).catch((()=>{n.value=!1})))};c("checkIsReturnAfterPayment",(()=>{const e=uni.getStorageSync("paymenting");uni.getStorageSync("paymenting")&&d({url:"/app/pages/pay/result",param:{trade_type:e.trade_type,trade_id:e.trade_id},mode:"redirectTo",success(){uni.removeStorageSync("paymenting")}})}));const F=()=>{var e,a;d({url:"/app/pages/pay/result",param:{trade_type:null==(e=E.value)?void 0:e.trade_type,trade_id:null==(a=E.value)?void 0:a.trade_id},mode:"redirectTo"})},A=()=>{uni.removeStorageSync("paymenting"),s.value=!1,t("close")};return a({open:(e,a,t="")=>{uni.setStorageSync("payReturn",encodeURIComponent(t)),G(e,a).then((e=>{let{data:a}=e;E.value=a,uni.$u.test.isEmpty(a)?C({title:v("pay.notObtainedInfo"),icon:"none"}):0!=a.money?0==a.status?(P.value=a.pay_type_list[0]?a.pay_type_list[0].key:"",s.value=!0):C({title:v("pay.paymentDocuments")+a.status_name,icon:"none"}):F()})).catch((()=>{}))}}),(e,a)=>{const t=I,u=p(m("u-image"),X),i=p(m("u-icon"),Y),c=j,d=p(m("u-button"),D),C=p(m("u-popup"),q);return l(),o(C,{show:s.value,round:10,onClose:A,closeable:!0,bgColor:"#fff",zIndex:"10081",closeOnClickOverlay:!1},{default:r((()=>[E.value?(l(),o(t,{key:0,class:"flex flex-col h-[75vh]"},{default:r((()=>[y(t,{class:"head"},{default:r((()=>[y(t,{class:"text-center py-[26rpx]"},{default:r((()=>[f(_(x(v)("pay.payTitle")),1)])),_:1}),y(t,{class:"flex items-end justify-center w-full text-xl font-bold py-[20rpx]"},{default:r((()=>[y(t,{class:"text-base mr-[4rpx]"},{default:r((()=>[f(_(x(v)("currency")),1)])),_:1}),f(" "+_(x(g)(E.value.money)),1)])),_:1})])),_:1}),y(c,{"scroll-y":"true",class:"flex-1 pt-[20rpx]"},{default:r((()=>[y(t,{class:"flex text-sm px-[30rpx] py-[20rpx]"},{default:r((()=>[y(t,{class:"text-gray-500"},{default:r((()=>[f(_(x(v)("pay.orderInfo")),1)])),_:1}),y(t,{class:"text-right flex-1 pl-[30rpx] truncate"},{default:r((()=>[f(_(E.value.body),1)])),_:1})])),_:1}),y(t,{class:"mx-[30rpx] py-[10rpx] px-[30rpx] bg-white rounded-md bg-page"},{default:r((()=>[E.value.pay_type_list.length?(l(!0),b(h,{key:0},S(E.value.pay_type_list,((e,a)=>(l(),o(t,{class:"pay-item py-[18rpx] flex items-center border-0 border-b border-solid border-[#eee]",key:a,onClick:a=>P.value=e.key},{default:r((()=>[y(u,{src:x(k)(e.icon),width:"50rpx",height:"50rpx"},null,8,["src"]),y(t,{class:"flex-1 px-[20rpx] text-sm font-bold"},{default:r((()=>[f(_(e.name),1)])),_:2},1024),e.key==P.value?(l(),o(i,{key:0,name:"checkbox-mark",color:"var(--primary-color)"})):w("v-if",!0)])),_:2},1032,["onClick"])))),128)):(l(),o(t,{key:1,class:"py-[20rpx] text-center text-sm text-gray-subtitle"},{default:r((()=>[f(_(x(v)("pay.notHavePayType")),1)])),_:1}))])),_:1})])),_:1}),y(t,{class:"p-[30rpx]"},{default:r((()=>[y(d,{type:"primary",loading:n.value,text:x(v)("pay.confirmPay"),shape:"circle",onClick:T},null,8,["loading","text"])])),_:1})])),_:1})):w("v-if",!0)])),_:1},8,["show"])}}}),[["__scopeId","data-v-1a623d68"]]),Q=W(n({__name:"balance",setup(e){const a=E(),t=i(!1),s=()=>{t.value=!0},n=()=>{t.value=!1},u=i([20,30,50,100,200,300]),c=i(""),j=i(!1),K=i(null),L=P({is_auto_transfer:0,is_auto_verify:0,is_open:0,min:0,rate:0,transfer_type:[]}),W=i(!0);T((()=>{F("checkIsReturnAfterPayment"),A().then((e=>{for(let a in e.data)L[a]=e.data[a];W.value=!1}))}));const X=()=>{uni.$u.test.isEmpty(c.value)?C({title:v("rechargeAmountPlaceholder"),icon:"none"}):!uni.$u.test.amount(c.value)||c.value<=0?C({title:v("rechargeAmountError"),icon:"none"}):j.value||(j.value=!0,O({recharge_money:c.value}).then((e=>{var a;null==(a=K.value)||a.open(e.data.trade_type,e.data.trade_id)})).catch((()=>{j.value=!1})))},Y=()=>{uni.setStorageSync("cashOutAccountType","money"),d({url:"/app/pages/member/apply_cash_out"})};return(e,i)=>{const C=p(m("u-loading-page"),B),E=I,P=U,T=p(m("u-button"),D),F=p(m("u--input"),J),A=p(m("u-popup"),q),O=p(m("pay"),M);return l(),b(h,null,[y(C,{loading:W.value,loadingText:""},null,8,["loading"]),R(y(E,{class:"account-info-wrap"},{default:r((()=>[y(E,{class:"account-info-head",style:$({background:"url("+x(k)("static/resource/images/member/balance_bg.png")+") no-repeat 95% 30% / auto 250rpx, linear-gradient(314deg, #FE7849 0%, #FF1959 100%)"})},{default:r((()=>[y(E,{class:"name"},{default:r((()=>[f(_(x(v)("balanceInfo")),1)])),_:1}),y(E,{class:"content"},{default:r((()=>[y(E,{class:"money"},{default:r((()=>[f(_(x(a).info?x(g)((parseFloat(x(a).info.balance)+parseFloat(x(a).info.money)).toString()):"0.00"),1)])),_:1}),y(E,{class:"text"},{default:r((()=>[f(_(x(v)("accountBalance")),1)])),_:1}),y(E,{class:"money-wrap"},{default:r((()=>[y(E,{class:"money-item",onClick:i[0]||(i[0]=e=>x(d)({url:"/app/pages/member/detailed_account",param:{type:"balance"}}))},{default:r((()=>[y(E,{class:"money"},{default:r((()=>{var e;return[f(_(x(g)(null==(e=x(a).info)?void 0:e.balance)||"0.00"),1)]})),_:1}),y(E,{class:"text leading-none"},{default:r((()=>[f(_(x(v)("balance")),1)])),_:1})])),_:1}),y(E,{class:"money-item",onClick:i[1]||(i[1]=e=>x(d)({url:"/app/pages/member/detailed_account",param:{type:"money"}}))},{default:r((()=>[y(E,{class:"money"},{default:r((()=>{var e;return[f(_(x(g)(null==(e=x(a).info)?void 0:e.money)||"0.00"),1)]})),_:1}),y(E,{class:"text leading-none"},{default:r((()=>[f(_(x(v)("money")),1)])),_:1})])),_:1})])),_:1})])),_:1})])),_:1},8,["style"]),y(E,{class:"account-info-btn"},{default:r((()=>[y(T,{type:"primary",shape:"circle",class:"btn",customStyle:{backgroundColor:"#FE4E50",color:"#fff",borderColor:"#FE4E50",width:"calc(100vw - 64rpx)"},onClick:s},{default:r((()=>[H("img",{class:"max-w-[36rpx] max-h-[36rpx] mr-1",src:x(k)("static/resource/images/member/reset.png"),alt:""},null,8,["src"]),y(P,null,{default:r((()=>[f(_(x(v)("recharge")),1)])),_:1})])),_:1},8,["customStyle"]),1==L.is_open?(l(),o(T,{key:0,type:"primary",plain:!0,shape:"circle",class:"btn",customStyle:{backgroundColor:"#fff",color:"#FE4E50",borderColor:"#FE4E50",width:"calc(100vw - 64rpx)"},onClick:Y},{default:r((()=>[H("img",{class:"max-w-[36rpx] max-h-[36rpx] mr-1",src:x(k)("static/resource/images/member/withdraw_deposit.png"),alt:""},null,8,["src"]),y(P,null,{default:r((()=>[f(_(x(v)("cashOut")),1)])),_:1})])),_:1},8,["customStyle"])):w("v-if",!0)])),_:1}),w(" 充值 "),y(A,{show:t.value,mode:"center",round:10,onClose:n,closeable:!0},{default:r((()=>[y(E,{class:"w-80 px-3 pb-4 pt-7 box-border"},{default:r((()=>[y(F,{placeholder:x(v)("rechargeAmountPlaceholder"),modelValue:c.value,"onUpdate:modelValue":i[2]||(i[2]=e=>c.value=e),border:"bottom",type:"number",clearable:""},null,8,["placeholder","modelValue"]),y(E,{class:"top-up-wrap flex flex-wrap justify-around mt-3"},{default:r((()=>[(l(!0),b(h,null,S(u.value,((e,a)=>(l(),o(E,{key:a,class:z(["top-up-item w-22 box-border border-1 text-center rounded mt-2 py-3 px-4 border-gray-400 border-solid",{"border-primary text-primary":c.value==e}]),onClick:a=>c.value=e},{default:r((()=>[y(P,null,{default:r((()=>[f(_(e)+_(x(v)("yuan")),1)])),_:2},1024)])),_:2},1032,["class","onClick"])))),128))])),_:1}),y(E,{class:"mt-5 px-2"},{default:r((()=>[y(T,{type:"primary",shape:"circle",loading:j.value,text:x(v)("clickRecharge"),onClick:X},null,8,["loading","text"])])),_:1}),y(E,{class:"mt-[20rpx] text-center text-sm",onClick:i[3]||(i[3]=e=>x(d)({url:"/app/pages/member/recharge_record"}))},{default:r((()=>[f(_(x(v)("rechargeRecord")),1)])),_:1})])),_:1})])),_:1},8,["show"]),y(O,{ref_key:"payRef",ref:K,onClose:i[4]||(i[4]=e=>j.value=!1)},null,512)])),_:1},512),[[V,!W.value]])],64)}}}),[["__scopeId","data-v-b51df219"]]);export{Q as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-cash_out.3ae1a965.js b/niucloud/public/wap/assets/app-pages-member-cash_out.3ae1a965.js new file mode 100644 index 0000000..d671b2e --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-cash_out.3ae1a965.js @@ -0,0 +1 @@ +import{d as e,r as a,i as s,j as t,w as l,k as n,F as o,H as r,n as c,G as u,m,av as p,aw as i,aC as _,x as d,K as f,L as y,Z as v,I as h,h as g}from"./index-c1dbaba4.js";import{u as k,M as w}from"./useMescroll.fa1d1d16.js";import{M as j}from"./mescroll-empty.e0697f9d.js";import{_ as x}from"./_plugin-vue_export-helper.1b428a4d.js";const I=x(e({__name:"cash_out",setup(e){const{mescrollInit:x,downCallback:I,getMescroll:T}=k(i,p);let b=a([]),C=a(null),M=a(!1),S=uni.getStorageSync("cashOutAccountType");const z=e=>{switch(e){case 1:return v("toBeReviewed");case 2:return v("toBeTransfer");case 3:return v("transfer");case-2:return v("cancelApply")}},A=e=>{let s=a({});M.value=!1,s.value.page=e.num,s.value.page_size=e.size,s.value.account_type=S,_(s.value).then((a=>{let s=a.data.data;e.endSuccess(s.length),1==e.num&&(b.value=[]),b.value=b.value.concat(s),M.value=!0})).catch((()=>{M.value=!0,e.endErr()}))};return(e,a)=>{const p=d;return s(),t(p,{class:"member-record-list"},{default:l((()=>[n(w,{ref_key:"mescrollRef",ref:C,onInit:c(x),onDown:c(I),onUp:A},{default:l((()=>[(s(!0),o(u,null,r(c(b),((e,a)=>(s(),t(p,{key:e.id,class:"member-record-item",onClick:a=>{g({url:"/app/pages/member/cash_out_detail",param:{id:e.id}})}},{default:l((()=>[n(p,{class:"name"},{default:l((()=>[f(y(e.transfer_type_name),1)])),_:2},1024),n(p,{class:"desc"},{default:l((()=>[f(y(c(v)("applyTime"))+": "+y(e.create_time),1)])),_:2},1024),n(p,{class:"desc"},{default:l((()=>[f(y(-1!=e.status?z(e.status):e.refuse_reason),1)])),_:2},1024),n(p,{class:h(["money",e.apply_money>0?"text-active":""])},{default:l((()=>[f(y(e.apply_money>0?"+"+e.apply_money:e.apply_money),1)])),_:2},1032,["class"]),n(p,{class:"state"},{default:l((()=>[f(y(e.status_name),1)])),_:2},1024)])),_:2},1032,["onClick"])))),128)),!c(b).length&&c(M)?(s(),t(j,{key:0,option:{tip:"commission"==c(S)?c(v)("commissemptyTip"):c(v)("emptyTip")}},null,8,["option"])):m("v-if",!0)])),_:1},8,["onInit","onDown"])])),_:1})}}}),[["__scopeId","data-v-83442e73"]]);export{I as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-cash_out_detail.a8680ca4.js b/niucloud/public/wap/assets/app-pages-member-cash_out_detail.a8680ca4.js new file mode 100644 index 0000000..749c09e --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-cash_out_detail.a8680ca4.js @@ -0,0 +1 @@ +import{d as a,r as e,o as l,aD as s,i as t,j as u,w as _,k as f,K as r,L as c,n as d,m as n,N as i,x as o,Z as p}from"./index-c1dbaba4.js";import{_ as v}from"./_plugin-vue_export-helper.1b428a4d.js";const m=v(a({__name:"cash_out_detail",setup(a){let v=e({}),m=e(!1);l((a=>{let e=a.id||"";b(e)}));const b=a=>{m.value=!1,s(a).then((a=>{v.value=a.data,m.value=!0})).catch((()=>{m.value=!0}))};return(a,e)=>{const l=i,s=o;return t(),u(s,{class:"member-record-detail"},{default:_((()=>[f(s,{class:"money-wrap"},{default:_((()=>[f(l,null,{default:_((()=>[r("-"+c(d(v).apply_money),1)])),_:1}),f(l,null,{default:_((()=>[r(c(d(v).status_name),1)])),_:1})])),_:1}),n(" 状态0待审核1.待转账2已转账 -1拒绝' "),f(s,{class:"item"},{default:_((()=>[f(s,{class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("cashOutNo")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).cash_out_no),1)])),_:1})])),_:1}),f(s,{class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("serviceMoney")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r("¥"+c(d(v).service_money),1)])),_:1})])),_:1}),f(s,{class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("createTime")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).create_time),1)])),_:1})])),_:1}),d(v).status?(t(),u(s,{key:0,class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("auditTime")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).audit_time),1)])),_:1})])),_:1})):n("v-if",!0),d(v).transfer_bank?(t(),u(s,{key:1,class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("transferBank")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).transfer_bank),1)])),_:1})])),_:1})):n("v-if",!0),f(s,{class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("transferAccount")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).transfer_account),1)])),_:1})])),_:1}),-1==d(v).status&&d(v).refuse_reason?(t(),u(s,{key:2,class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("refuseReason")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).refuse_reason),1)])),_:1})])),_:1})):n("v-if",!0),2==d(v).status?(t(),u(s,{key:3,class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("transferTypeName")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).transfer_type_name),1)])),_:1})])),_:1})):n("v-if",!0),2==d(v).status?(t(),u(s,{key:4,class:"line-wrap"},{default:_((()=>[f(l,{class:"label"},{default:_((()=>[r(c(d(p)("transferTime")),1)])),_:1}),f(l,{class:"value"},{default:_((()=>[r(c(d(v).transfer_time),1)])),_:1})])),_:1})):n("v-if",!0)])),_:1})])),_:1})}}}),[["__scopeId","data-v-97d1e74f"]]);export{m as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-commission.167fdbed.js b/niucloud/public/wap/assets/app-pages-member-commission.167fdbed.js new file mode 100644 index 0000000..06750b6 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-commission.167fdbed.js @@ -0,0 +1 @@ +import{d as a,Y as s,i as e,j as o,w as t,k as n,K as c,L as l,n as i,p as m,aq as r,h as u,x as p,N as d,q as _,t as f,y,Z as g,ak as b}from"./index-c1dbaba4.js";import{_ as x}from"./u-button.78b6f378.js";import{_ as h}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-loading-icon.4b2cb429.js";import"./u-icon.d4bf195f.js";const w=h(a({__name:"commission",setup(a){const h=s(),w=()=>{uni.setStorageSync("cashOutAccountType","commission"),u({url:"/app/pages/member/apply_cash_out"})};return(a,s)=>{const k=p,v=d,j=_(f("u-button"),x);return e(),o(k,{class:"account-info-wrap"},{default:t((()=>[n(k,{class:"account-info-head",style:m({background:"url("+i(y)("static/resource/images/member/balance_bg.png")+") no-repeat 95% 30% / auto 250rpx, linear-gradient(314deg, #FE7849 0%, #FF1959 100%)"})},{default:t((()=>[n(k,{class:"name"},{default:t((()=>[c(l(i(g)("commissionInfo")),1)])),_:1}),n(k,{class:"content"},{default:t((()=>[n(k,{class:"money",onClick:s[0]||(s[0]=a=>i(u)({url:"/app/pages/member/detailed_account",param:{type:"commission"}}))},{default:t((()=>[c(l(i(h).info?i(b)(i(h).info.commission):0),1)])),_:1}),n(k,{class:"text",onClick:s[1]||(s[1]=a=>i(u)({url:"/app/pages/member/detailed_account",param:{type:"commission"}}))},{default:t((()=>[c(l(i(g)("accountCommission")),1)])),_:1}),n(k,{class:"money-wrap"},{default:t((()=>[n(k,{class:"money-item"},{default:t((()=>[n(k,{class:"money"},{default:t((()=>{var a;return[c(l(i(b)(null==(a=i(h).info)?void 0:a.commission_get)||"0.00"),1)]})),_:1}),n(k,{class:"text"},{default:t((()=>[c(l(i(g)("commission")),1)])),_:1})])),_:1}),n(k,{class:"money-item"},{default:t((()=>[n(k,{class:"money"},{default:t((()=>{var a;return[c(l(i(b)(null==(a=i(h).info)?void 0:a.commission_cash_outing)||"0.00"),1)]})),_:1}),n(k,{class:"text"},{default:t((()=>[c(l(i(g)("money")),1)])),_:1})])),_:1})])),_:1})])),_:1})])),_:1},8,["style"]),n(k,{class:"account-info-btn"},{default:t((()=>[n(j,{type:"primary",plain:!0,shape:"circle",class:"btn",customStyle:{backgroundColor:"#fff",color:"#FE4E50",borderColor:"#FE4E50",width:"calc(100vw - 64rpx)"},onClick:w},{default:t((()=>[r("img",{class:"max-w-[36rpx] max-h-[36rpx] mr-1",src:i(y)("static/resource/images/member/withdraw_deposit.png"),alt:""},null,8,["src"]),n(v,null,{default:t((()=>[c(l(i(g)("cashOut")),1)])),_:1})])),_:1},8,["customStyle"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-f1bb2396"]]);export{w as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-detailed_account.cc5692fc.js b/niucloud/public/wap/assets/app-pages-member-detailed_account.cc5692fc.js new file mode 100644 index 0000000..b1e0681 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-detailed_account.cc5692fc.js @@ -0,0 +1 @@ +import{d as a,r as e,o as s,i as t,j as l,w as o,k as n,F as c,H as u,G as m,n as r,m as i,av as d,aw as p,x as _,K as f,L as v,I as y,Z as g,az as k,aA as b,aB as h}from"./index-c1dbaba4.js";import{u as j,M as w}from"./useMescroll.fa1d1d16.js";import{M as x}from"./mescroll-empty.e0697f9d.js";import{_ as I}from"./_plugin-vue_export-helper.1b428a4d.js";const M=I(a({__name:"detailed_account",setup(a){const{mescrollInit:I,downCallback:M,getMescroll:z}=j(p,d),D=e("");s((a=>{D.value=a.type||"balance"}));const T=e([]),A=e(!1),B=e(null),C=a=>{A.value=!1;let e={page:a.num,page_size:a.size},s=a=>{};"balance"==D.value?s=k:"money"==D.value?s=b:"commission"==D.value&&(s=h),s(e).then((e=>{let s=e.data.data;a.endSuccess(s.length),1==a.num&&(T.value=[]),T.value=T.value.concat(s),A.value=!0})).catch((()=>{A.value=!0,a.endErr()}))};return(a,e)=>{const s=_;return t(),l(s,{class:"member-record-list"},{default:o((()=>[n(w,{ref_key:"mescrollRef",ref:B,onInit:r(I),onDown:r(M),onUp:C,top:""},{default:o((()=>[(t(!0),c(m,null,u(T.value,((a,e)=>(t(),l(s,{key:a.id,class:"member-record-item"},{default:o((()=>[n(s,{class:"name"},{default:o((()=>[f(v(a.from_type_name),1)])),_:2},1024),a.memo?(t(),l(s,{key:0,class:"desc"},{default:o((()=>[f(v(a.memo),1)])),_:2},1024)):i("v-if",!0),n(s,{class:"desc"},{default:o((()=>[f(v(a.create_time),1)])),_:2},1024),n(s,{class:y(["money",a.account_data>0?"text-active":""])},{default:o((()=>[f(v(a.account_data>0?"+"+a.account_data:a.account_data),1)])),_:2},1032,["class"])])),_:2},1024)))),128)),!T.value.length&&A.value?(t(),l(x,{key:0,option:{tip:"commission"==D.value?r(g)("commissemptyTip"):r(g)("emptyTip")}},null,8,["option"])):i("v-if",!0)])),_:1},8,["onInit","onDown"])])),_:1})}}}),[["__scopeId","data-v-9a34403f"]]);export{M as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-index.600dbb8e.js b/niucloud/public/wap/assets/app-pages-member-index.600dbb8e.js new file mode 100644 index 0000000..3ded492 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-index.600dbb8e.js @@ -0,0 +1 @@ +import{d as a,r as e,u as l,a as o,c as t,o as p,b as r,s,e as i,g,f as d,h as u,Y as n,i as m,j as f,w as b,k as c,l as v,v as _,m as x,n as y,p as j,q as h,t as k,x as w,y as M}from"./index-c1dbaba4.js";import{_ as S}from"./u-loading-page.8a915b31.js";import{_ as D,a as I}from"./index.9ca226e6.js";import{_ as R}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-loading-icon.4b2cb429.js";import"./u-transition.24c0ace1.js";import"./u-icon.d4bf195f.js";import"./u-image.86f8f5db.js";import"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import"./u-avatar.85887529.js";import"./u-popup.c9f22720.js";import"./u-safe-bottom.f0120e94.js";import"./u-tabbar.7b503373.js";const B=R(a({__name:"index",setup(a){const R=e(!0),B=l(),C=e(0),E=o({pageMode:"diy",title:"",global:{},value:[]}),U=t((()=>"decorate"==B.mode?B:E));return p((a=>{B.mode=a.mode||"","decorate"==B.mode&&(R.value=!1)})),r((()=>{C.value++,s()})),i((()=>{"decorate"==B.mode?B.init():g({name:"DIY_MEMBER_INDEX"}).then((a=>{let e=a.data;if(e.value){E.pageMode=e.mode,E.title=e.title;let a=JSON.parse(e.value);E.global=a.global,E.value=a.value,E.value.forEach(((a,e)=>{a.pageStyle="",a.pageBgColor&&(a.pageStyle+="background-color:"+a.pageBgColor+";"),a.margin&&(a.pageStyle+="padding-top:"+2*a.margin.top+"rpx;",a.pageStyle+="padding-bottom:"+2*a.margin.bottom+"rpx;",a.pageStyle+="padding-right:"+2*a.margin.both+"rpx;",a.pageStyle+="padding-left:"+2*a.margin.both+"rpx;")})),d({title:E.title})}else e.page&&u({url:e.page});R.value=!1})),n().getMemberInfo()})),(a,e)=>{const l=h(k("u-loading-page"),S),o=h(k("diy-group"),D),t=w,p=h(k("fixed-group"),I);return m(),f(t,null,{default:b((()=>[c(l,{loading:R.value,loadingText:"","bg-color":"#f7f7f7"},null,8,["loading"]),v(c(t,null,{default:b((()=>[x(" 自定义模板渲染 "),"fixed"!=y(U).pageMode?(m(),f(t,{key:0,class:"diy-template-wrap bg-index",style:j({backgroundColor:y(U).global.pageBgColor,minHeight:"calc(100vh - 50px)",backgroundImage:y(U).global.bgUrl?"url("+y(M)(y(U).global.bgUrl)+")":""})},{default:b((()=>[c(o,{data:y(U),pullDownRefresh:C.value},null,8,["data","pullDownRefresh"])])),_:1},8,["style"])):x("v-if",!0),x(" 固定模板渲染 "),"fixed"==y(U).pageMode?(m(),f(t,{key:1,class:"fixed-template-wrap"},{default:b((()=>[c(p,{data:y(U),pullDownRefresh:C.value},null,8,["data","pullDownRefresh"])])),_:1})):x("v-if",!0)])),_:1},512),[[_,!R.value]])])),_:1})}}}),[["__scopeId","data-v-1f57c7d4"]]);export{B as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-location_address_edit.b589688e.js b/niucloud/public/wap/assets/app-pages-member-location_address_edit.b589688e.js new file mode 100644 index 0000000..f148b44 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-location_address_edit.b589688e.js @@ -0,0 +1 @@ +import{d as e,r as a,o as l,b9 as r,c as s,i as t,j as d,w as u,m as o,k as i,n as m,K as n,L as c,aa as p,Z as b,ba as v,bb as f,h as _,bc as h,x as g,q as x,t as y,ap as V}from"./index-c1dbaba4.js";import{_ as j}from"./u-input.d53f0aa0.js";import{_ as w,a as P}from"./u-form.612a076f.js";import{_ as k}from"./u-icon.d4bf195f.js";import{_ as $}from"./u-switch.d5ecdabf.js";import{_ as q}from"./u-button.78b6f378.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-loading-icon.4b2cb429.js";const A=e({__name:"location_address_edit",setup(e){const A=a(""),C=a({id:0,name:"",mobile:"",lat:"",lng:"",address:"",address_name:"学府街",full_address:"",is_default:0,area:"",type:"location_address"});l((e=>{e.id&&r(e.id).then((({data:e})=>{e&&(Object.assign(C.value,e),C.value.area=C.value.full_address.replace(C.value.address,"").replace(C.value.address_name,""))})).catch(),A.value=e.type||""}));const U=a(null),E=s((()=>({address:{type:"string",required:!0,message:b("addressError"),trigger:["blur","change"]},name:{type:"string",required:!0,message:b("namePlaceholder"),trigger:["blur","change"]},mobile:[{type:"string",required:!0,message:b("mobilePlaceholder"),trigger:["blur","change"]},{validator:()=>uni.$u.test.mobile(C.value.mobile),message:b("mobileError")}]}))),T=a(!1),z=()=>{if(uni.$u.test.isEmpty(C.value.area))return void p({title:b("selectAddressPlaceholder"),icon:"none"});const e=C.value.id?v:f;U.value.validate().then((()=>{T.value||(T.value=!0,C.value.full_address=`${C.value.area}${C.value.address_name}${C.value.address}`,e(C.value).then((e=>{T.value=!1,setTimeout((()=>{_({url:"/app/pages/member/address",param:{type:A.value}})}),1e3)})).catch((()=>{T.value=!1})))}))},B=()=>{h({success:e=>{e.latitude&&(C.value.lat=e.latitude),e.longitude&&(C.value.lng=e.longitude),e.address&&(C.value.area=e.address),e.name&&(C.value.address_name=e.name)}})};return(e,a)=>{const l=g,r=x(y("u-input"),j),s=x(y("u-form-item"),w),p=x(y("u-icon"),k),v=x(y("u-switch"),$),f=x(y("u-button"),q),_=x(y("u-form"),P),h=V;return t(),d(h,{"scroll-y":"true",class:"bg-page h-screen"},{default:u((()=>[o(' \r\n\t\t \r\n\t\t '),i(l,{class:"h-[30rpx]"}),i(l,{class:"m-[30rpx] mt-0 p-[30rpx] pt-[10rpx] rounded-md bg-white"},{default:u((()=>[i(_,{labelPosition:"left",model:C.value,labelWidth:"200rpx",errorType:"toast",rules:m(E),ref_key:"formRef",ref:U},{default:u((()=>[i(l,{class:"mt-[10rpx]"},{default:u((()=>[i(s,{label:m(b)("name"),prop:"name","border-bottom":!0},{default:u((()=>[i(r,{modelValue:C.value.name,"onUpdate:modelValue":a[0]||(a[0]=e=>C.value.name=e),border:"none",clearable:"",placeholder:m(b)("namePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),i(l,{class:"mt-[10rpx]"},{default:u((()=>[i(s,{label:m(b)("mobile"),prop:"mobile","border-bottom":!0},{default:u((()=>[i(r,{modelValue:C.value.mobile,"onUpdate:modelValue":a[1]||(a[1]=e=>C.value.mobile=e),border:"none",clearable:"",placeholder:m(b)("mobilePlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),i(l,{class:"mt-[10rpx]"},{default:u((()=>[i(s,{label:m(b)("deliveryAddress"),prop:"address_name","border-bottom":!0},{default:u((()=>[i(l,{class:"flex justify-between flex-1",onClick:B},{default:u((()=>[i(l,{class:"text-[#c3c4d5] text-[15px]"},{default:u((()=>[n(c(C.value.area?C.value.address_name:m(b)("selectAddressPlaceholder")),1)])),_:1}),i(p,{name:"arrow-right",color:"#c3c4d5"})])),_:1})])),_:1},8,["label"])])),_:1}),i(l,{class:"mt-[10rpx]"},{default:u((()=>[i(s,{label:m(b)("address"),prop:"address","border-bottom":!0},{default:u((()=>[i(r,{modelValue:C.value.address,"onUpdate:modelValue":a[2]||(a[2]=e=>C.value.address=e),border:"none",clearable:"",placeholder:m(b)("addressPlaceholder")},null,8,["modelValue","placeholder"])])),_:1},8,["label"])])),_:1}),i(l,{class:"mt-[10rpx]"},{default:u((()=>[i(s,{label:m(b)("defaultAddress"),prop:"name","border-bottom":!0},{default:u((()=>[i(v,{modelValue:C.value.is_default,"onUpdate:modelValue":a[3]||(a[3]=e=>C.value.is_default=e),size:"20",activeValue:1,inactiveValue:0},null,8,["modelValue"])])),_:1},8,["label"])])),_:1}),i(l,{class:"mt-[40rpx]"},{default:u((()=>[i(f,{type:"primary",shape:"circle",text:m(b)("save"),onClick:z,loading:T.value},null,8,["text","loading"])])),_:1})])),_:1},8,["model","rules"])])),_:1})])),_:1})}}});export{A as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-personal.a85f7d01.js b/niucloud/public/wap/assets/app-pages-member-personal.a85f7d01.js new file mode 100644 index 0000000..1ab8ad3 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-personal.a85f7d01.js @@ -0,0 +1 @@ +import{aQ as e,aR as t,aS as a,V as i,W as n,X as r,B as s,q as l,t as o,i as u,j as c,w as d,k as m,F as h,G as f,H as p,p as y,K as g,L as _,m as v,J as x,T as $,I as b,M as k,N as C,x as w,aT as I,aU as S,d as D,Y as M,c as T,a as O,r as H,n as P,aa as j,Z as V,aV as B,aW as F,ao as z,y as N,aX as A}from"./index-c1dbaba4.js";import{_ as L}from"./u-avatar.85887529.js";import{_ as R}from"./u-icon.d4bf195f.js";import{_ as Y}from"./u-loading-icon.4b2cb429.js";import{_ as U}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as W,a as Z,b as J}from"./u-action-sheet.2061582e.js";import{_ as X}from"./u-button.78b6f378.js";import{_ as q}from"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import{_ as E}from"./u-modal.fc188b5a.js";import{_ as Q}from"./u-popup.c9f22720.js";import"./u-line.980a961a.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";function G(e,t){return["[object Object]","[object File]"].includes(Object.prototype.toString.call(e))?Object.keys(e).reduce(((a,i)=>(t.includes(i)||(a[i]=e[i]),a)),{}):{}}function K(e){return e.tempFiles.map((e=>({...G(e,["path"]),url:e.path,size:e.size,name:e.name,type:e.type})))}function ee({accept:i,multiple:n,capture:r,compressed:s,maxDuration:l,sizeType:o,camera:u,maxCount:c}){return new Promise(((d,m)=>{switch(i){case"image":a({count:n?Math.min(c,9):1,sourceType:r,sizeType:o,success:e=>d(function(e){return e.tempFiles.map((e=>({...G(e,["path"]),type:"image",url:e.path,thumb:e.path,size:e.size,name:e.name})))}(e)),fail:m});break;case"video":t({sourceType:r,compressed:s,maxDuration:l,camera:u,success:e=>d(function(e){return[{...G(e,["tempFilePath","thumbTempFilePath","errMsg"]),type:"video",url:e.tempFilePath,thumb:e.thumbTempFilePath,size:e.size,name:e.name}]}(e)),fail:m});break;case"file":e({count:n?c:1,type:i,success:e=>d(K(e)),fail:m});break;default:e({count:n?c:1,type:"all",success:e=>d(K(e)),fail:m})}}))}const te=U({name:"u-upload",mixins:[n,r,{watch:{accept:{immediate:!0,handler(e){"all"!==e&&"media"!==e||uni.$u.error("只有微信小程序才支持把accept配置为all、media之一")}}}},{props:{accept:{type:String,default:i.upload.accept},capture:{type:[String,Array],default:i.upload.capture},compressed:{type:Boolean,default:i.upload.compressed},camera:{type:String,default:i.upload.camera},maxDuration:{type:Number,default:i.upload.maxDuration},uploadIcon:{type:String,default:i.upload.uploadIcon},uploadIconColor:{type:String,default:i.upload.uploadIconColor},useBeforeRead:{type:Boolean,default:i.upload.useBeforeRead},afterRead:{type:Function,default:null},beforeRead:{type:Function,default:null},previewFullImage:{type:Boolean,default:i.upload.previewFullImage},maxCount:{type:[String,Number],default:i.upload.maxCount},disabled:{type:Boolean,default:i.upload.disabled},imageMode:{type:String,default:i.upload.imageMode},name:{type:String,default:i.upload.name},sizeType:{type:Array,default:i.upload.sizeType},multiple:{type:Boolean,default:i.upload.multiple},deletable:{type:Boolean,default:i.upload.deletable},maxSize:{type:[String,Number],default:i.upload.maxSize},fileList:{type:Array,default:i.upload.fileList},uploadText:{type:String,default:i.upload.uploadText},width:{type:[String,Number],default:i.upload.width},height:{type:[String,Number],default:i.upload.height},previewImage:{type:Boolean,default:i.upload.previewImage}}}],data:()=>({lists:[],isInCount:!0}),watch:{fileList:{handler(){this.formatFileList()},immediate:!0,deep:!0}},emits:["error","beforeRead","oversize","afterRead","delete","clickPreview"],methods:{formatFileList(){const{fileList:e=[],maxCount:t}=this,a=e.map((e=>Object.assign(Object.assign({},e),{isImage:"image"===this.accept||uni.$u.test.image(e.url||e.thumb),isVideo:"video"===this.accept||uni.$u.test.video(e.url||e.thumb),deletable:"boolean"==typeof e.deletable?e.deletable:this.deletable})));this.lists=a,this.isInCount=a.length{this.onBeforeRead(t?e:e[0])})).catch((e=>{this.$emit("error",e)}))},onBeforeRead(e){const{beforeRead:t,useBeforeRead:a}=this;let i=!0;uni.$u.test.func(t)&&(i=t(e,this.getDetail())),a&&(i=new Promise(((t,a)=>{this.$emit("beforeRead",Object.assign(Object.assign({file:e},this.getDetail()),{callback:e=>{e?t():a()}}))}))),i&&(uni.$u.test.promise(i)?i.then((t=>this.onAfterRead(t||e))):this.onAfterRead(e))},getDetail(e){return{name:this.name,index:null==e?this.fileList.length:e}},onAfterRead(e){const{maxSize:t,afterRead:a}=this;(Array.isArray(e)?e.some((e=>e.size>t)):e.size>t)?this.$emit("oversize",Object.assign({file:e},this.getDetail())):("function"==typeof a&&a(e,this.getDetail()),this.$emit("afterRead",Object.assign({file:e},this.getDetail())))},deleteItem(e){this.$emit("delete",Object.assign(Object.assign({},this.getDetail(e)),{file:this.fileList[e]}))},onPreviewImage(e){e.isImage&&this.previewFullImage&&s({urls:this.lists.filter((e=>"image"===this.accept||uni.$u.test.image(e.url||e.thumb))).map((e=>e.url||e.thumb)),current:e.url||e.thumb,fail(){uni.$u.toast("预览图片失败")}})},onPreviewVideo(e){if(!this.data.previewFullImage)return;const{index:t}=e.currentTarget.dataset,{lists:a}=this.data;wx.previewMedia({sources:a.filter((e=>isVideoFile(e))).map((e=>Object.assign(Object.assign({},e),{type:"video"}))),current:t,fail(){uni.$u.toast("预览视频失败")}})},onClickPreview(e){const{index:t}=e.currentTarget.dataset,a=this.data.lists[t];this.$emit("clickPreview",Object.assign(Object.assign({},a),this.getDetail(t)))}}},[["render",function(e,t,a,i,n,r){const s=k,I=l(o("u-icon"),R),S=C,D=w,M=l(o("u-loading-icon"),Y);return u(),c(D,{class:"u-upload",style:y([e.$u.addStyle(e.customStyle)])},{default:d((()=>[m(D,{class:"u-upload__wrap"},{default:d((()=>[e.previewImage?(u(!0),h(f,{key:0},p(n.lists,((t,a)=>(u(),c(D,{class:"u-upload__wrap__preview",key:a},{default:d((()=>[t.isImage||t.type&&"image"===t.type?(u(),c(s,{key:0,src:t.thumb||t.url,mode:e.imageMode,class:"u-upload__wrap__preview__image",onClick:e=>r.onPreviewImage(t),style:y([{width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)}])},null,8,["src","mode","onClick","style"])):(u(),c(D,{key:1,class:"u-upload__wrap__preview__other"},{default:d((()=>[m(I,{color:"#80CBF9",size:"26",name:t.isVideo||t.type&&"video"===t.type?"movie":"folder"},null,8,["name"]),m(S,{class:"u-upload__wrap__preview__other__text"},{default:d((()=>[g(_(t.isVideo||t.type&&"video"===t.type?"视频":"文件"),1)])),_:2},1024)])),_:2},1024)),"uploading"===t.status||"failed"===t.status?(u(),c(D,{key:2,class:"u-upload__status"},{default:d((()=>[m(D,{class:"u-upload__status__icon"},{default:d((()=>["failed"===t.status?(u(),c(I,{key:0,name:"close-circle",color:"#ffffff",size:"25"})):(u(),c(M,{key:1,size:"22",mode:"circle",color:"#ffffff"}))])),_:2},1024),t.message?(u(),c(S,{key:0,class:"u-upload__status__message"},{default:d((()=>[g(_(t.message),1)])),_:2},1024)):v("v-if",!0)])),_:2},1024)):v("v-if",!0),"uploading"!==t.status&&(e.deletable||t.deletable)?(u(),c(D,{key:3,class:"u-upload__deletable",onClick:x((e=>r.deleteItem(a)),["stop"])},{default:d((()=>[m(D,{class:"u-upload__deletable__icon"},{default:d((()=>[m(I,{name:"close",color:"#ffffff",size:"10"})])),_:1})])),_:2},1032,["onClick"])):v("v-if",!0),"success"===t.status?(u(),c(D,{key:4,class:"u-upload__success"},{default:d((()=>[m(D,{class:"u-upload__success__icon"},{default:d((()=>[m(I,{name:"checkmark",color:"#ffffff",size:"12"})])),_:1})])),_:1})):v("v-if",!0)])),_:2},1024)))),128)):v("v-if",!0),n.isInCount?(u(),h(f,{key:1},[e.$slots.default||e.$slots.$default?(u(),c(D,{key:0,onClick:r.chooseFile},{default:d((()=>[$(e.$slots,"default",{},void 0,!0)])),_:3},8,["onClick"])):(u(),c(D,{key:1,class:b(["u-upload__button",[e.disabled&&"u-upload__button--disabled"]]),"hover-class":e.disabled?"":"u-upload__button--hover","hover-stay-time":"150",onClick:r.chooseFile,style:y([{width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)}])},{default:d((()=>[m(I,{name:e.uploadIcon,size:"26",color:e.uploadIconColor},null,8,["name","color"]),e.uploadText?(u(),c(S,{key:0,class:"u-upload__button__text"},{default:d((()=>[g(_(e.uploadText),1)])),_:1})):v("v-if",!0)])),_:1},8,["hover-class","onClick","class","style"]))],64)):v("v-if",!0)])),_:3})])),_:3},8,["style"])}],["__scopeId","data-v-1941ac11"]]);const ae=U({name:"u-toolbar",mixins:[n,r,{props:{show:{type:Boolean,default:i.toolbar.show},cancelText:{type:String,default:i.toolbar.cancelText},confirmText:{type:String,default:i.toolbar.confirmText},cancelColor:{type:String,default:i.toolbar.cancelColor},confirmColor:{type:String,default:i.toolbar.confirmColor},title:{type:String,default:i.toolbar.title}}}],methods:{cancel(){this.$emit("cancel")},confirm(){this.$emit("confirm")}}},[["render",function(e,t,a,i,n,r){const s=C,l=w;return e.show?(u(),c(l,{key:0,class:"u-toolbar",onTouchmove:x(e.noop,["stop","prevent"])},{default:d((()=>[m(l,{class:"u-toolbar__cancel__wrapper","hover-class":"u-hover-class"},{default:d((()=>[m(s,{class:"u-toolbar__wrapper__cancel",onClick:r.cancel,style:y({color:e.cancelColor})},{default:d((()=>[g(_(e.cancelText),1)])),_:1},8,["onClick","style"])])),_:1}),e.title?(u(),c(s,{key:0,class:"u-toolbar__title u-line-1"},{default:d((()=>[g(_(e.title),1)])),_:1})):v("v-if",!0),m(l,{class:"u-toolbar__confirm__wrapper","hover-class":"u-hover-class"},{default:d((()=>[m(s,{class:"u-toolbar__wrapper__confirm",onClick:r.confirm,style:y({color:e.confirmColor})},{default:d((()=>[g(_(e.confirmText),1)])),_:1},8,["onClick","style"])])),_:1})])),_:1},8,["onTouchmove"])):v("v-if",!0)}],["__scopeId","data-v-88cf1536"]]);const ie=U({name:"u-picker",mixins:[n,r,{props:{show:{type:Boolean,default:i.picker.show},showToolbar:{type:Boolean,default:i.picker.showToolbar},title:{type:String,default:i.picker.title},columns:{type:Array,default:i.picker.columns},loading:{type:Boolean,default:i.picker.loading},itemHeight:{type:[String,Number],default:i.picker.itemHeight},cancelText:{type:String,default:i.picker.cancelText},confirmText:{type:String,default:i.picker.confirmText},cancelColor:{type:String,default:i.picker.cancelColor},confirmColor:{type:String,default:i.picker.confirmColor},visibleItemCount:{type:[String,Number],default:i.picker.visibleItemCount},keyName:{type:String,default:i.picker.keyName},closeOnClickOverlay:{type:Boolean,default:i.picker.closeOnClickOverlay},defaultIndex:{type:Array,default:i.picker.defaultIndex},immediateChange:{type:Boolean,default:i.picker.immediateChange}}}],data:()=>({lastIndex:[],innerIndex:[],innerColumns:[],columnIndex:0}),watch:{defaultIndex:{immediate:!0,handler(e){this.setIndexs(e,!0)}},columns:{immediate:!0,deep:!0,handler(e){this.setColumns(e)}}},emits:["close","cancel","confirm","change"],methods:{getItemText(e){return uni.$u.test.object(e)?e[this.keyName]:e},closeHandler(){this.closeOnClickOverlay&&this.$emit("close")},cancel(){this.$emit("cancel")},confirm(){this.$emit("confirm",{indexs:this.innerIndex,value:this.innerColumns.map(((e,t)=>e[this.innerIndex[t]])),values:this.innerColumns})},changeHandler(e){const{value:t}=e.detail;let a=0,i=0;for(let r=0;re[t[a]])),index:a,indexs:t,values:n,columnIndex:i})},setIndexs(e,t){this.innerIndex=uni.$u.deepClone(e),t&&this.setLastIndex(e)},setLastIndex(e){this.lastIndex=uni.$u.deepClone(e)},setColumnValues(e,t){this.innerColumns.splice(e,1,t);let a=uni.$u.deepClone(this.innerIndex);for(let i=0;ithis.columnIndex&&(a[i]=0);this.setIndexs(a)},getColumnValues(e){return(async()=>{await uni.$u.sleep()})(),this.innerColumns[e]},setColumns(e){this.innerColumns=uni.$u.deepClone(e),0===this.innerIndex.length&&(this.innerIndex=new Array(e.length).fill(0))},getIndexs(){return this.innerIndex},getValues(){return(async()=>{await uni.$u.sleep()})(),this.innerColumns.map(((e,t)=>e[this.innerIndex[t]]))}}},[["render",function(e,t,a,i,n,r){const s=l(o("u-toolbar"),ae),x=C,$=I,b=S,k=l(o("u-loading-icon"),Y),D=w,M=l(o("u-popup"),Q);return u(),c(M,{show:e.show,onClose:r.closeHandler},{default:d((()=>[m(D,{class:"u-picker"},{default:d((()=>[e.showToolbar?(u(),c(s,{key:0,cancelColor:e.cancelColor,confirmColor:e.confirmColor,cancelText:e.cancelText,confirmText:e.confirmText,title:e.title,onCancel:r.cancel,onConfirm:r.confirm},null,8,["cancelColor","confirmColor","cancelText","confirmText","title","onCancel","onConfirm"])):v("v-if",!0),m(b,{class:"u-picker__view",indicatorStyle:`height: ${e.$u.addUnit(e.itemHeight)}`,value:n.innerIndex,immediateChange:e.immediateChange,style:y({height:`${e.$u.addUnit(e.visibleItemCount*e.itemHeight)}`}),onChange:r.changeHandler},{default:d((()=>[(u(!0),h(f,null,p(n.innerColumns,((t,a)=>(u(),c($,{key:a,class:"u-picker__view__column"},{default:d((()=>[e.$u.test.array(t)?(u(!0),h(f,{key:0},p(t,((t,i)=>(u(),c(x,{class:"u-picker__view__column__item u-line-1",key:i,style:y({height:e.$u.addUnit(e.itemHeight),lineHeight:e.$u.addUnit(e.itemHeight),fontWeight:i===n.innerIndex[a]?"bold":"normal"})},{default:d((()=>[g(_(r.getItemText(t)),1)])),_:2},1032,["style"])))),128)):v("v-if",!0)])),_:2},1024)))),128))])),_:1},8,["indicatorStyle","value","immediateChange","style","onChange"]),e.loading?(u(),c(D,{key:1,class:"u-picker--loading"},{default:d((()=>[m(k,{mode:"circle"})])),_:1})):v("v-if",!0)])),_:1})])),_:1},8,["show","onClose"])}],["__scopeId","data-v-6971b6c7"]]),ne={props:{show:{type:Boolean,default:i.datetimePicker.show},showToolbar:{type:Boolean,default:i.datetimePicker.showToolbar},modelValue:{type:[String,Number],default:i.datetimePicker.value},title:{type:String,default:i.datetimePicker.title},mode:{type:String,default:i.datetimePicker.mode},maxDate:{type:Number,default:i.datetimePicker.maxDate},minDate:{type:Number,default:i.datetimePicker.minDate},minHour:{type:Number,default:i.datetimePicker.minHour},maxHour:{type:Number,default:i.datetimePicker.maxHour},minMinute:{type:Number,default:i.datetimePicker.minMinute},maxMinute:{type:Number,default:i.datetimePicker.maxMinute},filter:{type:[Function,null],default:i.datetimePicker.filter},formatter:{type:[Function,null],default:i.datetimePicker.formatter},loading:{type:Boolean,default:i.datetimePicker.loading},itemHeight:{type:[String,Number],default:i.datetimePicker.itemHeight},cancelText:{type:String,default:i.datetimePicker.cancelText},confirmText:{type:String,default:i.datetimePicker.confirmText},cancelColor:{type:String,default:i.datetimePicker.cancelColor},confirmColor:{type:String,default:i.datetimePicker.confirmColor},visibleItemCount:{type:[String,Number],default:i.datetimePicker.visibleItemCount},closeOnClickOverlay:{type:Boolean,default:i.datetimePicker.closeOnClickOverlay},defaultIndex:{type:Array,default:i.datetimePicker.defaultIndex}}};var re=1e3,se=6e4,le=36e5,oe="millisecond",ue="second",ce="minute",de="hour",me="day",he="week",fe="month",pe="quarter",ye="year",ge="date",_e="Invalid Date",ve=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,xe=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g;const $e={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],a=e%100;return"["+e+(t[(a-20)%10]||t[a]||t[0])+"]"}};var be=function(e,t,a){var i=String(e);return!i||i.length>=t?e:""+Array(t+1-i.length).join(a)+e};const ke={s:be,z:function(e){var t=-e.utcOffset(),a=Math.abs(t),i=Math.floor(a/60),n=a%60;return(t<=0?"+":"-")+be(i,2,"0")+":"+be(n,2,"0")},m:function e(t,a){if(t.date()1)return e(s[0])}else{var l=t.name;we[l]=t,n=l}return!i&&n&&(Ce=n),n||!i&&Ce},De=function(e,t){if(Ie(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new Te(a)},Me=ke;Me.l=Se,Me.i=Ie,Me.w=function(e,t){return De(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var Te=function(){function e(e){this.$L=Se(e.locale,null,!0),this.parse(e)}var t=e.prototype;return t.parse=function(e){this.$d=function(e){var t=e.date,a=e.utc;if(null===t)return new Date(NaN);if(Me.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var i=t.match(ve);if(i){var n=i[2]-1||0,r=(i[7]||"0").substring(0,3);return a?new Date(Date.UTC(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,r)):new Date(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,r)}}return new Date(t)}(e),this.$x=e.x||{},this.init()},t.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},t.$utils=function(){return Me},t.isValid=function(){return!(this.$d.toString()===_e)},t.isSame=function(e,t){var a=De(e);return this.startOf(t)<=a&&a<=this.endOf(t)},t.isAfter=function(e,t){return De(e)({columns:[],innerDefaultIndex:[],innerFormatter:(e,t)=>t}),watch:{show(e,t){e&&this.updateColumnValue(this.innerValue)},propsChange(){this.init()}},computed:{propsChange(){return[this.mode,this.maxDate,this.minDate,this.minHour,this.maxHour,this.minMinute,this.maxMinute,this.filter]}},mounted(){this.init()},emits:["close","cancel","confirm","change","update:modelValue"],methods:{init(){this.innerValue=this.correctValue(this.modelValue),this.updateColumnValue(this.innerValue)},setFormatter(e){this.innerFormatter=e},close(){this.closeOnClickOverlay&&this.$emit("close")},cancel(){this.$emit("cancel")},confirm(){this.$emit("confirm",{value:this.innerValue,mode:this.mode}),this.$emit("update:modelValue",this.innerValue)},intercept(e,t){let a=e.match(/\d+/g);return a.length>1?(uni.$u.error("请勿在过滤或格式化函数时添加数字"),0):t&&4==a[0].length?a[0]:a[0].length>2?(uni.$u.error("请勿在过滤或格式化函数时添加数字"),0):a[0]},change(e){const{indexs:t,values:a}=e;let i="";if("time"===this.mode)i=`${this.intercept(a[0][t[0]])}:${this.intercept(a[1][t[1]])}`;else{const e=parseInt(this.intercept(a[0][t[0]],"year")),n=parseInt(this.intercept(a[1][t[1]]));let r=parseInt(a[2]?this.intercept(a[2][t[2]]):1),s=0,l=0;const o=De(`${e}-${n}`).daysInMonth();"year-month"===this.mode&&(r=1),r=Math.min(o,r),"datetime"===this.mode&&(s=parseInt(this.intercept(a[3][t[3]])),l=parseInt(this.intercept(a[4][t[4]]))),i=Number(new Date(e,n-1,r,s,l))}i=this.correctValue(i),this.innerValue=i,this.updateColumnValue(i),this.$emit("change",{value:i,picker:this.$refs.picker,mode:this.mode})},updateColumnValue(e){this.innerValue=e,this.updateColumns(),this.updateIndexs(e)},updateIndexs(e){let t=[];const a=this.formatter||this.innerFormatter,i=uni.$u.padZero;if("time"===this.mode){const i=e.split(":");t=[a("hour",i[0]),a("minute",i[1])]}else t=[a("year",`${De(e).year()}`),a("month",i(De(e).month()+1))],"date"===this.mode&&t.push(a("day",i(De(e).date()))),"datetime"===this.mode&&t.push(a("day",i(De(e).date())),a("hour",i(De(e).hour())),a("minute",i(De(e).minute())));const n=this.columns.map(((e,a)=>Math.max(0,e.findIndex((e=>e===t[a])))));this.innerDefaultIndex=n},updateColumns(){const e=this.formatter||this.innerFormatter,t=this.getOriginColumns().map((t=>t.values.map((a=>e(t.type,a)))));this.columns=t},getOriginColumns(){return this.getRanges().map((({type:e,range:t})=>{let a=function(e,t){let a=-1;const i=Array(e<0?0:e);for(;++a{let i=t[0]+a;return i="year"===e?`${i}`:uni.$u.padZero(i),i}));return this.filter&&(a=this.filter(e,a)),{type:e,values:a}}))},generateArray:(e,t)=>Array.from(new Array(t+1).keys()).slice(e),correctValue(e){const t="time"!==this.mode;if(t&&!uni.$u.test.date(e)?e=this.minDate:t||e||(e=`${uni.$u.padZero(this.minHour)}:${uni.$u.padZero(this.minMinute)}`),t)return e=De(e).isBefore(De(this.minDate))?this.minDate:e,e=De(e).isAfter(De(this.maxDate))?this.maxDate:e;{if(-1===String(e).indexOf(":"))return uni.$u.error("时间错误,请传递如12:24的格式");let[t,a]=e.split(":");return t=uni.$u.padZero(uni.$u.range(this.minHour,this.maxHour,Number(t))),a=uni.$u.padZero(uni.$u.range(this.minMinute,this.maxMinute,Number(a))),`${t}:${a}`}},getRanges(){if("time"===this.mode)return[{type:"hour",range:[this.minHour,this.maxHour]},{type:"minute",range:[this.minMinute,this.maxMinute]}];const{maxYear:e,maxDate:t,maxMonth:a,maxHour:i,maxMinute:n}=this.getBoundary("max",this.innerValue),{minYear:r,minDate:s,minMonth:l,minHour:o,minMinute:u}=this.getBoundary("min",this.innerValue),c=[{type:"year",range:[r,e]},{type:"month",range:[l,a]},{type:"day",range:[s,t]},{type:"hour",range:[o,i]},{type:"minute",range:[u,n]}];return"date"===this.mode&&c.splice(3,2),"year-month"===this.mode&&c.splice(2,3),c},getBoundary(e,t){const a=new Date(t),i=new Date(this[`${e}Date`]),n=De(i).year();let r=1,s=1,l=0,o=0;return"max"===e&&(r=12,s=De(a).daysInMonth(),l=23,o=59),De(a).year()===n&&(r=De(i).month()+1,De(a).month()+1===r&&(s=De(i).date(),De(a).date()===s&&(l=De(i).hour(),De(a).hour()===l&&(o=De(i).minute())))),{[`${e}Year`]:n,[`${e}Month`]:r,[`${e}Date`]:s,[`${e}Hour`]:l,[`${e}Minute`]:o}}}},[["render",function(e,t,a,i,n,r){const s=l(o("u-picker"),ie);return u(),c(s,{ref:"picker",show:e.show,closeOnClickOverlay:e.closeOnClickOverlay,columns:n.columns,title:e.title,itemHeight:e.itemHeight,showToolbar:e.showToolbar,visibleItemCount:e.visibleItemCount,defaultIndex:n.innerDefaultIndex,cancelText:e.cancelText,confirmText:e.confirmText,cancelColor:e.cancelColor,confirmColor:e.confirmColor,onClose:r.close,onCancel:r.cancel,onConfirm:r.confirm,onChange:r.change},null,8,["show","closeOnClickOverlay","columns","title","itemHeight","showToolbar","visibleItemCount","defaultIndex","cancelText","confirmText","cancelColor","confirmColor","onClose","onCancel","onConfirm","onChange"])}],["__scopeId","data-v-e4f68153"]]),Pe=U(D({__name:"personal",setup(e){const t=M(),a=T((()=>t.info)),i=O({modal:!1,value:a.nickname||""}),n=e=>{i.value=e.detail.value},r=()=>{uni.$u.test.isEmpty(i.value)?j({title:V("nicknamePlaceholder"),icon:"none"}):B({field:"nickname",value:i.value}).then((e=>{t.info.nickname=i.value,i.modal=!1}))},s=H(!1),h=T((()=>[{name:V("man"),value:1},{name:V("woman"),value:2}])),f=e=>{B({field:"sex",value:e.value}).then((a=>{t.info.sex_name=e.name}))},p=e=>{F({filePath:e.file.url,name:"file"}).then((e=>{B({field:"headimg",value:e.data.url}).then((()=>{t.info.headimg=e.data.url}))})).catch((()=>{}))},y=H(!1),x=e=>{B({field:"birthday",value:uni.$u.date(e.value,"yyyy-mm-dd")}).then((()=>{t.info.birthday=uni.$u.date(e.value||e.value+1,"yyyy-mm-dd"),y.value=!1}))};return(e,t)=>{const $=l(o("u-avatar"),L),b=w,k=l(o("u-upload"),te),C=l(o("u-cell"),W),I=l(o("u-button"),X),S=l(o("app-link"),q),D=l(o("u-cell-group"),Z),M=z,T=l(o("u-modal"),E),O=l(o("u-action-sheet"),J),H=l(o("u-datetime-picker"),He);return P(a)?(u(),c(b,{key:0,class:"w-full h-screen bg-page"},{default:d((()=>[m(b,{class:"flex flex-col items-center pt-[30rpx]"},{default:d((()=>[m(k,{onAfterRead:p,maxCount:1},{default:d((()=>[m($,{src:P(N)(P(a).headimg),size:"60",leftIcon:"none"},null,8,["src"]),m(b,{class:"text-primary text-sm mt-[10rpx]"},{default:d((()=>[g(_(P(V)("updateHeadimg")),1)])),_:1})])),_:1})])),_:1}),m(b,{class:"m-[30rpx] bg-white rounded-md overflow-hidden px-[20rpx] py-[10rpx]"},{default:d((()=>[m(D,{border:!1},{default:d((()=>[m(C,{title:P(V)("nickname"),"is-link":!0,value:P(a).nickname,onClick:t[0]||(t[0]=e=>i.modal=!0)},null,8,["title","value"]),m(C,{title:P(V)("sex"),"is-link":!0,value:P(a).sex_name||P(V)("unknown"),onClick:t[1]||(t[1]=e=>s.value=!0)},null,8,["title","value"]),m(C,{title:P(V)("mobile")},{value:d((()=>[P(a).mobile?(u(),c(b,{key:0},{default:d((()=>[g(_(P(A)(P(a).mobile)),1)])),_:1})):v("v-if",!0),m(b,null,{default:d((()=>[m(S,{url:"/app/pages/auth/bind"},{default:d((()=>[m(I,{type:"primary",plain:!0,text:P(V)("bindMobile"),shape:"circle",size:"mini"},null,8,["text"])])),_:1})])),_:1})])),_:1},8,["title"]),m(C,{title:P(V)("birthday"),"is-link":!0,value:P(a).birthday||P(V)("unknown"),onClick:t[2]||(t[2]=e=>y.value=!0)},null,8,["title","value"])])),_:1})])),_:1}),m(T,{show:i.modal,closeOnClickOverlay:!0,onClose:t[4]||(t[4]=e=>i.modal=!1),"show-cancel-button":!0,onCancel:t[5]||(t[5]=e=>i.modal=!1),title:P(V)("updateNickname")},{confirmButton:d((()=>[m(b,{class:"mt-[10rpx]"},{default:d((()=>[m(I,{type:"primary",text:P(V)("confirm"),shape:"circle",onClick:r},null,8,["text"])])),_:1})])),default:d((()=>[m(b,{class:"w-full mt-[20rpx] border-0 border-b border-gray-300 border-solid py-[20rpx]"},{default:d((()=>[m(M,{type:"nickname",modelValue:i.value,"onUpdate:modelValue":t[3]||(t[3]=e=>i.value=e),placeholder:P(V)("nicknamePlaceholder"),onBlur:n},null,8,["modelValue","placeholder"])])),_:1})])),_:1},8,["show","title"]),m(O,{actions:P(h),show:s.value,closeOnClickOverlay:!0,safeAreaInsetBottom:!0,onClose:t[6]||(t[6]=e=>s.value=!1),onSelect:f},null,8,["actions","show"]),m(H,{show:y.value,mode:"date","confirm-text":P(V)("confirm"),maxDate:(new Date).valueOf(),minDate:0,"cancel-text":P(V)("cancel"),onCancel:t[7]||(t[7]=e=>y.value=!1),onConfirm:x},null,8,["show","confirm-text","maxDate","cancel-text"])])),_:1})):v("v-if",!0)}}}),[["__scopeId","data-v-032d98ac"]]);export{Pe as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-point.5a763cbd.js b/niucloud/public/wap/assets/app-pages-member-point.5a763cbd.js new file mode 100644 index 0000000..55d17f8 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-point.5a763cbd.js @@ -0,0 +1 @@ +import{d as e,r as a,i as t,j as s,w as l,k as r,F as o,H as n,n as u,G as c,m as p,av as d,aw as i,aZ as m,x as f,I as _,K as x,L as v}from"./index-c1dbaba4.js";import{u as g,M as b}from"./useMescroll.fa1d1d16.js";import{M as h}from"./mescroll-empty.e0697f9d.js";import"./_plugin-vue_export-helper.1b428a4d.js";const y=e({__name:"point",setup(e){const{mescrollInit:y,downCallback:w,getMescroll:j}=g(i,d);let k=a([]),I=a(null),M=a(!1);const z=e=>{let t=a({});M.value=!1,t.value.page=e.num,t.value.page_size=e.size,m(t.value).then((a=>{let t=a.data.data;e.endSuccess(t.length),1==e.num&&(k.value=[]),k.value=k.value.concat(t),M.value=!0})).catch((()=>{M.value=!0,e.endErr()}))};return(e,a)=>{const d=f;return t(),s(d,{class:"bg-gray-100 min-h-[100vh]"},{default:l((()=>[r(b,{ref_key:"mescrollRef",ref:I,onInit:u(y),onDown:u(w),onUp:z},{default:l((()=>[(t(!0),o(c,null,n(u(k),((e,a)=>(t(),s(d,{key:e.id,class:_(["bg-white relative p-[10px]",{"border-solid border-t-0 border-l-0 border-r-0 border-b-[1px] border-gray-200":u(k).length-1!=a}])},{default:l((()=>[r(d,{class:"text-[14px]"},{default:l((()=>[x(v(e.from_type_name),1)])),_:2},1024),r(d,{class:"text-[12px] text-gray-400 mt-[10px]"},{default:l((()=>[x(v(e.create_time),1)])),_:2},1024),r(d,{class:"text-[14px] absolute top-[50%] transform -translate-y-[50%] right-[10px]"},{default:l((()=>[x(v(e.account_data),1)])),_:2},1024)])),_:2},1032,["class"])))),128)),!u(k).length&&u(M)?(t(),s(h,{key:0})):p("v-if",!0)])),_:1},8,["onInit","onDown"])])),_:1})}}});export{y as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-recharge_record.338cbf7e.js b/niucloud/public/wap/assets/app-pages-member-recharge_record.338cbf7e.js new file mode 100644 index 0000000..e1588fd --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-recharge_record.338cbf7e.js @@ -0,0 +1 @@ +import{d as e,r as a,i as s,j as t,w as r,k as l,F as o,H as n,G as u,n as c,m,av as d,aw as i,ax as _,x as p,K as f,L as v,Z as g,h}from"./index-c1dbaba4.js";import{u as k,M as y}from"./useMescroll.fa1d1d16.js";import{M as x}from"./mescroll-empty.e0697f9d.js";import{_ as j}from"./_plugin-vue_export-helper.1b428a4d.js";const w=j(e({__name:"recharge_record",setup(e){const{mescrollInit:j,downCallback:w,getMescroll:b}=k(i,d),I=a([]),M=a(!1),C=a(null),z=e=>{M.value=!1;let a={page:e.num,page_size:e.size};_(a).then((a=>{let s=a.data.data;e.endSuccess(s.length),1==e.num&&(I.value=[]),I.value=I.value.concat(s),M.value=!0})).catch((()=>{M.value=!0,e.endErr()}))};return(e,a)=>{const d=p;return s(),t(d,{class:"member-record-list"},{default:r((()=>[l(y,{ref_key:"mescrollRef",ref:C,onInit:c(j),onDown:c(w),onUp:z,top:""},{default:r((()=>[(s(!0),o(u,null,n(I.value,((e,a)=>(s(),t(d,{key:e.order_id,class:"member-record-item",onClick:a=>{h({url:"/app/pages/member/recharge_record_detail",param:{id:e.order_id}})}},{default:r((()=>[l(d,{class:"name"},{default:r((()=>[f(v(e.item[0].item_name),1)])),_:2},1024),l(d,{class:"desc"},{default:r((()=>[f(v(e.create_time),1)])),_:2},1024),l(d,{class:"money text-active"},{default:r((()=>[f("+"+v(e.order_money),1)])),_:2},1024),e.order_status_info?(s(),t(d,{key:0,class:"status"},{default:r((()=>[f(v(e.order_status_info.name),1)])),_:2},1024)):m("v-if",!0)])),_:2},1032,["onClick"])))),128)),!I.value.length&&M.value?(s(),t(x,{key:0,option:{tip:c(g)("emptyTip")}},null,8,["option"])):m("v-if",!0)])),_:1},8,["onInit","onDown"])])),_:1})}}}),[["__scopeId","data-v-348403de"]]);export{w as default}; diff --git a/niucloud/public/wap/assets/app-pages-member-recharge_record_detail.2d425e40.js b/niucloud/public/wap/assets/app-pages-member-recharge_record_detail.2d425e40.js new file mode 100644 index 0000000..de5533d --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-member-recharge_record_detail.2d425e40.js @@ -0,0 +1 @@ +import{d as a,r as e,o as s,ay as l,l as t,v as r,n as _,i as d,j as u,w as o,k as c,K as n,L as f,m as i,N as m,x as p,Z as v}from"./index-c1dbaba4.js";import{_ as y}from"./_plugin-vue_export-helper.1b428a4d.js";const w=y(a({__name:"recharge_record_detail",setup(a){let y=e({}),w=e(!1);s((a=>{let e=a.id||"";b(e)}));const b=a=>{w.value=!1,l(a).then((a=>{y.value=a.data,w.value=!0})).catch((()=>{w.value=!0}))};return(a,e)=>{const s=m,l=p;return t((d(),u(l,{class:"member-record-detail"},{default:o((()=>[c(l,{class:"money-wrap"},{default:o((()=>[c(s,null,{default:o((()=>[n("¥"+f(_(y).order_money),1)])),_:1}),_(y).order_status_info?(d(),u(s,{key:0},{default:o((()=>[n(f(_(y).order_status_info.name),1)])),_:1})):i("v-if",!0)])),_:1}),c(l,{class:"item"},{default:o((()=>[_(y).item?(d(),u(l,{key:0,class:"line-wrap"},{default:o((()=>[c(s,{class:"label"},{default:o((()=>[n(f(_(y).item[0].item_name),1)])),_:1}),c(s,{class:"value"},{default:o((()=>[n("¥"+f(_(y).order_money),1)])),_:1})])),_:1})):i("v-if",!0),c(l,{class:"line-wrap"},{default:o((()=>[c(s,{class:"label"},{default:o((()=>[n(f(_(v)("orderNo")),1)])),_:1}),c(s,{class:"value"},{default:o((()=>[n(f(_(y).order_no),1)])),_:1})])),_:1}),c(l,{class:"line-wrap"},{default:o((()=>[c(s,{class:"label"},{default:o((()=>[n(f(_(v)("createTime")),1)])),_:1}),c(s,{class:"value"},{default:o((()=>[n(f(_(y).create_time),1)])),_:1})])),_:1})])),_:1})])),_:1},512)),[[r,_(w)]])}}}),[["__scopeId","data-v-01380275"]]);export{w as default}; diff --git a/niucloud/public/wap/assets/app-pages-pay-browser.629f7f33.js b/niucloud/public/wap/assets/app-pages-pay-browser.629f7f33.js new file mode 100644 index 0000000..cd54d1f --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-pay-browser.629f7f33.js @@ -0,0 +1 @@ +import{d as a,o as e,ah as s,i as t,j as r,w as i,k as p,n,K as d,M as o,x as c,y as l}from"./index-c1dbaba4.js";const x=a({__name:"browser",setup:a=>(e((a=>{!s()&&a.alipay&&(uni.setStorageSync("paymenting",{trade_type:a.trade_type,trade_id:a.trade_id}),location.href=a.alipay)})),(a,e)=>{const s=o,x=c;return t(),r(x,{class:"w-screen h-screen bg-[#424040] text-right"},{default:i((()=>[p(s,{src:n(l)("static/resource/images/pay/invite_friends_share.png"),mode:"heightFix",class:"pt-[30rpx] pr-[30rpx] h-[200rpx]"},null,8,["src"]),p(x,{class:"text-white font-bold pt-[30rpx] pr-[30rpx]"},{default:i((()=>[d("点击右上角跳转到浏览器打开")])),_:1})])),_:1})})});export{x as default}; diff --git a/niucloud/public/wap/assets/app-pages-pay-result.3a3816fe.js b/niucloud/public/wap/assets/app-pages-pay-result.3a3816fe.js new file mode 100644 index 0000000..8f32683 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-pay-result.3a3816fe.js @@ -0,0 +1 @@ +import{d as t,r as a,o as e,f as s,Z as l,i as o,F as u,j as r,w as n,k as i,I as c,K as p,L as m,n as d,m as f,G as x,h as y,bd as _,N as v,x as j,q as h,t as b,ak as g}from"./index-c1dbaba4.js";import{_ as w}from"./u-button.78b6f378.js";import{_ as T}from"./u-loading-icon.4b2cb429.js";import{_ as S}from"./u-modal.fc188b5a.js";import{g as k}from"./pay.fc2de8ec.js";import"./u-icon.d4bf195f.js";import"./_plugin-vue_export-helper.1b428a4d.js";import"./u-line.980a961a.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const C=t({__name:"result",setup(t){const C=a(null),F=a(!1);let z="",I=0,P=0;e((t=>{z=t.trade_type,I=t.trade_id,R()}));const R=()=>{k(z,I).then((t=>{if(!uni.$u.test.isEmpty(t.data)){if(1==t.data.status&&P<5)return F.value=!0,P++,void setTimeout((()=>{R()}),1e3);C.value=t.data,F.value=!1,s({title:2==C.value.status?l("pay.paySuccess"):l("pay.payFail")})}})).catch((()=>{}))},Z=()=>{var t;const a=decodeURIComponent(uni.getStorageSync("payReturn"));y(a?{url:a,mode:"redirectTo"}:{url:_(),param:{code:null==(t=C.value)?void 0:t.out_trade_no},mode:"redirectTo"})};return(t,a)=>{const e=v,s=j,y=h(b("u-button"),w),_=h(b("u-loading-icon"),T),k=h(b("u-modal"),S);return o(),u(x,null,[C.value?(o(),r(s,{key:0,class:"w-screen h-screen flex flex-col items-center"},{default:n((()=>[i(s,{class:"flex-1 flex flex-col items-center w-full pt-[100rpx]"},{default:n((()=>[i(e,{class:c(["iconfont text-2xl",2==C.value.status?"text-primary iconduigou":"iconzhifushibai text-red"])},null,8,["class"]),i(s,{class:"text-sm"},{default:n((()=>[p(m(2==C.value.status?d(l)("pay.paySuccess"):d(l)("pay.payFail")),1)])),_:1}),i(s,{class:"text-xl font-bold pt-[30rpx]"},{default:n((()=>[i(e,{class:"text-base"},{default:n((()=>[p(m(d(l)("currency")),1)])),_:1}),i(e,null,{default:n((()=>[p(m(d(g)(C.value.money)),1)])),_:1})])),_:1})])),_:1}),i(s,{class:"pb-[200rpx] w-[240rpx]"},{default:n((()=>[i(y,{type:"primary",text:2==C.value.status?d(l)("complete"):d(l)("close"),plain:!0,onClick:Z},null,8,["text"])])),_:1})])),_:1})):f("v-if",!0),i(k,{show:F.value,showCancelButton:!0,confirmText:d(l)("pay.completePay"),cancelText:d(l)("pay.incompletePay"),onCancel:Z},{default:n((()=>[i(s,{class:"py-[20rpx]"},{default:n((()=>[i(_,{text:d(l)("pay.getting"),textSize:"16",mode:"circle",vertical:!0},null,8,["text"])])),_:1})])),_:1},8,["show","confirmText","cancelText"])],64)}}});export{C as default}; diff --git a/niucloud/public/wap/assets/app-pages-setting-index.f27b0554.js b/niucloud/public/wap/assets/app-pages-setting-index.f27b0554.js new file mode 100644 index 0000000..d1be3a9 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-setting-index.f27b0554.js @@ -0,0 +1 @@ +import{d as e,Y as a,r as t,a as l,c as s,i as n,j as o,w as r,k as i,n as u,m as p,bf as d,ad as c,x as m,q as g,t as f,Z as v,ah as h,bg as x}from"./index-c1dbaba4.js";import{_,a as b,b as k}from"./u-action-sheet.2061582e.js";import{_ as w}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-icon.d4bf195f.js";import"./u-line.980a961a.js";import"./u-loading-icon.4b2cb429.js";import"./u-popup.c9f22720.js";import"./u-transition.24c0ace1.js";import"./u-safe-bottom.f0120e94.js";const j=w(e({__name:"index",setup(e){const w=a(),j=t("1.0.1"),y=l({"zh-Hans":{name:"简体中文",fontSize:"14",value:"zh-Hans"},en:{name:"English",fontSize:"14",value:"en"}}),z=t(!1),C=s((()=>{const e=x();return y[e].name})),S=e=>{d.loadLocaleMessages("/"+c(),e.value)};return(e,a)=>{const t=m,l=g(f("u-cell"),_),s=g(f("u-cell-group"),b),d=g(f("u-action-sheet"),k);return n(),o(t,{class:"w-full h-screen bg-page"},{default:r((()=>[i(t,{class:"h-[30rpx]"}),i(t,{class:"m-[30rpx] bg-white rounded-md overflow-hidden px-[20rpx] py-[10rpx]"},{default:r((()=>[i(s,{border:!1},{default:r((()=>[i(l,{title:u(v)("personalSettings"),"is-link":!0,url:"/app/pages/member/personal"},null,8,["title"]),i(l,{title:u(v)("switchLang"),"is-link":!0,value:u(C),onClick:a[0]||(a[0]=e=>z.value=!0)},null,8,["title","value"]),i(l,{title:u(v)("version"),value:j.value},null,8,["title","value"])])),_:1})])),_:1}),i(t,{class:"m-[30rpx] bg-white rounded-md overflow-hidden px-[20rpx] py-[10rpx]"},{default:r((()=>[i(s,{border:!1},{default:r((()=>[i(l,{title:u(v)("userAgreement"),"is-link":!0,url:"/app/pages/auth/agreement?key=service"},null,8,["title"]),i(l,{title:u(v)("privacyAgreement"),"is-link":!0,url:"/app/pages/auth/agreement?key=privacy"},null,8,["title"])])),_:1})])),_:1}),u(h)()?p("v-if",!0):(n(),o(t,{key:0,class:"m-[30rpx] bg-white rounded-md overflow-hidden px-[20rpx]"},{default:r((()=>[i(s,{border:!1},{default:r((()=>[i(l,{title:u(v)("logout"),class:"text-center",onClick:a[1]||(a[1]=e=>u(w).logout(!0))},null,8,["title"])])),_:1})])),_:1})),i(d,{actions:y,show:z.value,closeOnClickOverlay:!0,safeAreaInsetBottom:!0,onClose:a[2]||(a[2]=e=>z.value=!1),onSelect:S},null,8,["actions","show"])])),_:1})}}}),[["__scopeId","data-v-f734da60"]]);export{j as default}; diff --git a/niucloud/public/wap/assets/app-pages-webview-index.453dc9d2.js b/niucloud/public/wap/assets/app-pages-webview-index.453dc9d2.js new file mode 100644 index 0000000..79b4711 --- /dev/null +++ b/niucloud/public/wap/assets/app-pages-webview-index.453dc9d2.js @@ -0,0 +1 @@ +import{d as a,r as s,o as e,i as o,j as t,w as n,k as r,ai as c,q as l,t as u,bh as i,x as d}from"./index-c1dbaba4.js";import{_ as p}from"./u-icon.d4bf195f.js";import{_}from"./_plugin-vue_export-helper.1b428a4d.js";const m=_(a({__name:"index",setup(a){const _=s("");e((a=>{_.value=decodeURIComponent(a.src)}));const m=()=>{c({delta:1})};return(a,s)=>{const e=l(u("u-icon"),p),c=i,f=d;return o(),t(f,null,{default:n((()=>[r(e,{name:"arrow-left",class:"navigate-back",onClick:m}),r(c,{src:_.value},null,8,["src"])])),_:1})}}}),[["__scopeId","data-v-31a9d715"]]);export{m as default}; diff --git a/niucloud/public/wap/assets/balance-137ab4f2.css b/niucloud/public/wap/assets/balance-137ab4f2.css new file mode 100644 index 0000000..5b5c19d --- /dev/null +++ b/niucloud/public/wap/assets/balance-137ab4f2.css @@ -0,0 +1 @@ +.pay-item[data-v-1a623d68]:last-child{border:none}.account-info-wrap[data-v-b51df219]{--tw-bg-opacity: 1;background-color:rgba(245,246,250,var(--tw-bg-opacity));min-height:100vh}.account-info-wrap .account-info-head[data-v-b51df219]{height:10rem;position:relative}.account-info-wrap .account-info-head .name[data-v-b51df219]{font-size:1.125rem;line-height:1.75rem;margin-left:1rem;margin-bottom:.75rem;padding-top:1.75rem;--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.account-info-wrap .account-info-head .content[data-v-b51df219]{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));border-radius:.5rem;padding:1.25rem;position:absolute;left:.75rem;right:.75rem}.account-info-wrap .account-info-head .content .money[data-v-b51df219]{font-weight:700;font-size:1.66rem;line-height:1.75rem}.account-info-wrap .account-info-head .content .text[data-v-b51df219]{font-size:.75rem;line-height:1rem;margin-top:.5rem;--tw-text-opacity: 1;color:rgba(100,116,139,var(--tw-text-opacity))}.account-info-wrap .account-info-head .content .money-wrap[data-v-b51df219]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;margin-top:1.25rem}.account-info-wrap .account-info-head .content .money-wrap .money-item[data-v-b51df219]{-webkit-box-flex:1;-ms-flex:1 1 0%;-webkit-flex:1 1 0%;flex:1 1 0%}.account-info-wrap .account-info-head .content .money-wrap .money[data-v-b51df219]{font-size:1.125rem;line-height:1.75rem}.account-info-wrap .account-info-head .content .money-wrap .text[data-v-b51df219]{margin-top:.25rem}.account-info-wrap .account-info-btn[data-v-b51df219]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;margin-top:6rem;margin-left:.75rem;margin-right:.75rem}.account-info-wrap .account-info-btn .btn[data-v-b51df219]:first-of-type{border-radius:.25rem;margin-right:.25rem}.account-info-wrap .account-info-btn .btn[data-v-b51df219]:last-of-type{border-radius:.25rem;margin-left:.25rem} diff --git a/niucloud/public/wap/assets/bind-12c3cc42.css b/niucloud/public/wap/assets/bind-12c3cc42.css new file mode 100644 index 0000000..30522af --- /dev/null +++ b/niucloud/public/wap/assets/bind-12c3cc42.css @@ -0,0 +1 @@ +uni-view[data-v-fb07f37a],uni-scroll-view[data-v-fb07f37a],uni-swiper-item[data-v-fb07f37a]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-checkbox[data-v-fb07f37a]{display:flex;overflow:hidden;flex-direction:row;align-items:center;margin-bottom:5px;margin-top:5px}.u-checkbox-label--left[data-v-fb07f37a]{flex-direction:row}.u-checkbox-label--right[data-v-fb07f37a]{flex-direction:row-reverse;justify-content:space-between}.u-checkbox__icon-wrap[data-v-fb07f37a]{box-sizing:border-box;transition-property:border-color,background-color,color;transition-duration:.2s;color:#606266;display:flex;flex-direction:row;align-items:center;justify-content:center;color:transparent;text-align:center;margin-right:6px;font-size:6px;border-width:1px;border-color:#c8c9cc;border-style:solid}.u-checkbox__icon-wrap--circle[data-v-fb07f37a]{border-radius:100%}.u-checkbox__icon-wrap--square[data-v-fb07f37a]{border-radius:3px}.u-checkbox__icon-wrap--checked[data-v-fb07f37a]{color:#fff;background-color:red;border-color:#2979ff}.u-checkbox__icon-wrap--disabled[data-v-fb07f37a]{background-color:#ebedf0!important}.u-checkbox__icon-wrap--disabled--checked[data-v-fb07f37a]{color:#c8c9cc!important}.u-checkbox__label[data-v-fb07f37a]{word-wrap:break-word;margin-left:5px;margin-right:12px;color:#606266;font-size:15px}.u-checkbox__label--disabled[data-v-fb07f37a]{color:#c8c9cc}uni-view[data-v-f5bb36e2],uni-scroll-view[data-v-f5bb36e2],uni-swiper-item[data-v-f5bb36e2]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-checkbox-group--row[data-v-f5bb36e2]{display:flex;flex-flow:row wrap}.u-checkbox-group--column[data-v-f5bb36e2]{display:flex;flex-direction:column} diff --git a/niucloud/public/wap/assets/cash_out-6641fdc6.css b/niucloud/public/wap/assets/cash_out-6641fdc6.css new file mode 100644 index 0000000..fa2b5cd --- /dev/null +++ b/niucloud/public/wap/assets/cash_out-6641fdc6.css @@ -0,0 +1 @@ +.member-record-list[data-v-83442e73]{min-height:100vh}.member-record-list .member-record-item[data-v-83442e73]{--tw-border-opacity: 1;border-color:rgba(236,235,236,var(--tw-border-opacity));border-style:solid;border-top-width:0px;border-left-width:0px;border-right-width:0px;border-bottom-width:1px;margin-left:1rem;margin-right:1rem;padding-top:.75rem;padding-bottom:.75rem;position:relative}.member-record-list .member-record-item .name[data-v-83442e73]{font-size:.875rem;line-height:1.25rem}.member-record-list .member-record-item .desc[data-v-83442e73]{font-size:.75rem;line-height:1rem;margin-top:.25rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity))}.member-record-list .member-record-item .text-active[data-v-83442e73]{color:#ff0d3e}.member-record-list .member-record-item .money[data-v-83442e73]{font-weight:700;font-size:1rem;line-height:1.5rem;position:absolute;right:.75rem;top:1rem}.member-record-list .member-record-item .state[data-v-83442e73]{font-size:.75rem;line-height:1rem;position:absolute;right:.75rem;top:2.75rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity))} diff --git a/niucloud/public/wap/assets/cash_out_detail-a3745c74.css b/niucloud/public/wap/assets/cash_out_detail-a3745c74.css new file mode 100644 index 0000000..96a5862 --- /dev/null +++ b/niucloud/public/wap/assets/cash_out_detail-a3745c74.css @@ -0,0 +1 @@ +uni-page-body[data-v-97d1e74f]{background-color:#f5f6fa;padding-top:1rem}body[data-v-97d1e74f]{background-color:#f5f6fa}.member-record-detail[data-v-97d1e74f]{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));border-radius:.375rem;margin:1rem;margin-top:0;padding:1.5rem 1rem}.member-record-detail .money-wrap[data-v-97d1e74f]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;margin-bottom:1.5rem}.member-record-detail .money-wrap uni-text[data-v-97d1e74f]:first-of-type{font-weight:700;font-size:1.875rem;line-height:2.25rem;margin-top:.25rem}.member-record-detail .money-wrap uni-text[data-v-97d1e74f]:last-of-type{font-size:.875rem;line-height:1.25rem;margin-top:.75rem}.member-record-detail .line-wrap[data-v-97d1e74f]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;font-size:.875rem;line-height:1.25rem;margin-top:.75rem}.member-record-detail .line-wrap .label[data-v-97d1e74f]{--tw-text-opacity: 1;color:rgba(135,135,135,var(--tw-text-opacity))}.member-record-detail .line-wrap .value[data-v-97d1e74f]{--tw-text-opacity: 1;color:rgba(34,34,34,var(--tw-text-opacity))} diff --git a/niucloud/public/wap/assets/commission-7291a308.css b/niucloud/public/wap/assets/commission-7291a308.css new file mode 100644 index 0000000..f7e97d7 --- /dev/null +++ b/niucloud/public/wap/assets/commission-7291a308.css @@ -0,0 +1 @@ +.account-info-wrap[data-v-f1bb2396]{--tw-bg-opacity: 1;background-color:rgba(245,246,250,var(--tw-bg-opacity));min-height:100vh}.account-info-wrap .account-info-head[data-v-f1bb2396]{height:10rem;position:relative}.account-info-wrap .account-info-head .name[data-v-f1bb2396]{font-size:1.125rem;line-height:1.75rem;margin-left:1rem;margin-bottom:.75rem;padding-top:1.75rem;--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.account-info-wrap .account-info-head .content[data-v-f1bb2396]{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));border-radius:.5rem;padding:1.25rem;position:absolute;left:.75rem;right:.75rem}.account-info-wrap .account-info-head .content .money[data-v-f1bb2396]{font-weight:700;font-size:1.66rem;line-height:1.75rem}.account-info-wrap .account-info-head .content .text[data-v-f1bb2396]{font-size:.75rem;line-height:1rem;margin-top:.5rem;--tw-text-opacity: 1;color:rgba(100,116,139,var(--tw-text-opacity))}.account-info-wrap .account-info-head .content .money-wrap[data-v-f1bb2396]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;margin-top:1.25rem}.account-info-wrap .account-info-head .content .money-wrap .money-item[data-v-f1bb2396]{-webkit-box-flex:1;-ms-flex:1 1 0%;-webkit-flex:1 1 0%;flex:1 1 0%}.account-info-wrap .account-info-head .content .money-wrap .money[data-v-f1bb2396]{font-size:1.125rem;line-height:1.75rem}.account-info-wrap .account-info-head .content .money-wrap .text[data-v-f1bb2396]{margin-top:.25rem}.account-info-wrap .account-info-btn[data-v-f1bb2396]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;margin-top:6rem;margin-left:.75rem;margin-right:.75rem}.account-info-wrap .account-info-btn .btn[data-v-f1bb2396]:first-of-type{border-radius:.25rem;margin-right:.25rem}.account-info-wrap .account-info-btn .btn[data-v-f1bb2396]:last-of-type{border-radius:.25rem;margin-left:.25rem} diff --git a/niucloud/public/wap/assets/custom-b4304d3e.ttf b/niucloud/public/wap/assets/custom-b4304d3e.ttf new file mode 100644 index 0000000..6483758 Binary files /dev/null and b/niucloud/public/wap/assets/custom-b4304d3e.ttf differ diff --git a/niucloud/public/wap/assets/detailed_account-3f8eb1f2.css b/niucloud/public/wap/assets/detailed_account-3f8eb1f2.css new file mode 100644 index 0000000..71f66a1 --- /dev/null +++ b/niucloud/public/wap/assets/detailed_account-3f8eb1f2.css @@ -0,0 +1 @@ +.member-record-list[data-v-9a34403f]{min-height:100vh}.member-record-list .member-record-item[data-v-9a34403f]{--tw-border-opacity: 1;border-color:rgba(236,235,236,var(--tw-border-opacity));border-style:solid;border-top-width:0px;border-left-width:0px;border-right-width:0px;border-bottom-width:1px;margin-left:1rem;margin-right:1rem;padding-top:.75rem;padding-bottom:.75rem;position:relative}.member-record-list .member-record-item .name[data-v-9a34403f]{font-size:.875rem;line-height:1.25rem}.member-record-list .member-record-item .desc[data-v-9a34403f]{font-size:.75rem;line-height:1rem;margin-top:.25rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity))}.member-record-list .member-record-item .text-active[data-v-9a34403f]{color:#ff0d3e}.member-record-list .member-record-item .money[data-v-9a34403f]{font-weight:700;font-size:1rem;line-height:1.5rem;position:absolute;right:.75rem;top:1rem}.member-record-list .member-record-item .state[data-v-9a34403f]{font-size:.75rem;line-height:1rem;position:absolute;right:.75rem;top:2.75rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity))} diff --git a/niucloud/public/wap/assets/diy-b90cb215.css b/niucloud/public/wap/assets/diy-b90cb215.css new file mode 100644 index 0000000..7124b7f --- /dev/null +++ b/niucloud/public/wap/assets/diy-b90cb215.css @@ -0,0 +1 @@ +.bg-index[data-v-bc8cebed]{width:100%;height:100%;box-sizing:border-box;background-size:100%!important;background-repeat:no-repeat!important} diff --git a/niucloud/public/wap/assets/index-25bda3ed.css b/niucloud/public/wap/assets/index-25bda3ed.css new file mode 100644 index 0000000..a5a99eb --- /dev/null +++ b/niucloud/public/wap/assets/index-25bda3ed.css @@ -0,0 +1 @@ +uni-page-body[data-v-f734da60]{background:var(--page-bg-color)}body[data-v-f734da60]{background:var(--page-bg-color)}[data-v-f734da60] .u-cell-group__wrapper .u-cell__body{padding-left:0;padding-right:0}[data-v-f734da60] .u-cell-group__wrapper .u-cell:last-child .u-line{display:none} diff --git a/niucloud/public/wap/assets/index-471d618d.css b/niucloud/public/wap/assets/index-471d618d.css new file mode 100644 index 0000000..473524d --- /dev/null +++ b/niucloud/public/wap/assets/index-471d618d.css @@ -0,0 +1 @@ +.bg-index[data-v-2d1684b9]{width:100%;height:100%;box-sizing:border-box;background-size:100%!important;background-repeat:no-repeat!important} diff --git a/niucloud/public/wap/assets/index-55003c0b.css b/niucloud/public/wap/assets/index-55003c0b.css new file mode 100644 index 0000000..c39f499 --- /dev/null +++ b/niucloud/public/wap/assets/index-55003c0b.css @@ -0,0 +1 @@ +*{margin:0;-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%}body,uni-page-body{background-color:var(--UI-BG-0);color:var(--UI-FG-0)}body{overflow-x:hidden;font-size:16px}uni-app,uni-page,uni-page-wrapper,uni-page-body{display:block;box-sizing:border-box;width:100%}uni-page-wrapper{position:relative}#app,uni-app,uni-page,uni-page-wrapper{height:100%}.uni-mask{position:fixed;z-index:999;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.5)}.uni-fade-enter-active,.uni-fade-leave-active{transition-duration:.25s;transition-property:opacity;transition-timing-function:ease}.uni-fade-enter-from,.uni-fade-leave-active{opacity:0}.uni-loading,uni-button[loading]:before{background-color:transparent;background-image:url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=);background-repeat:no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}html{--primary-color: #007aff;--UI-BG: #fff;--UI-BG-1: #f7f7f7;--UI-BG-2: #fff;--UI-BG-3: #f7f7f7;--UI-BG-4: #4c4c4c;--UI-BG-5: #fff;--UI-FG: #000;--UI-FG-0: rgba(0, 0, 0, .9);--UI-FG-HALF: rgba(0, 0, 0, .9);--UI-FG-1: rgba(0, 0, 0, .5);--UI-FG-2: rgba(0, 0, 0, .3);--UI-FG-3: rgba(0, 0, 0, .1)}body:after{position:fixed;content:"";left:-1000px;top:-1000px;animation:shadow-preload .1s;animation-delay:3s}@keyframes shadow-preload{0%{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}to{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}}.uni-async-error{position:absolute;left:0;right:0;top:0;bottom:0;color:#999;padding:100px 10px;text-align:center}.uni-async-loading{box-sizing:border-box;width:100%;padding:50px;text-align:center}.uni-async-loading .uni-loading{width:30px;height:30px}uni-page-head{display:block;box-sizing:border-box}.uni-page-head{position:fixed;left:var(--window-left);right:var(--window-right);height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top));padding:7px 3px;padding-top:calc(7px + constant(safe-area-inset-top));padding-top:calc(7px + env(safe-area-inset-top));display:flex;overflow:hidden;justify-content:space-between;box-sizing:border-box;z-index:998;color:#fff;background-color:#000;transition-property:all}.uni-page-head *{box-sizing:border-box}.uni-page-head .uni-btn-icon{overflow:hidden;min-width:1em;font-style:normal}.uni-page-head-titlePenetrate,.uni-page-head-titlePenetrate .uni-page-head-bd,.uni-page-head-titlePenetrate .uni-page-head-bd *{pointer-events:none}.uni-page-head-titlePenetrate *{pointer-events:auto}.uni-page-head.uni-page-head-transparent .uni-page-head-ft>div{justify-content:center}.uni-page-head~.uni-placeholder{width:100%;height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top))}.uni-placeholder-titlePenetrate{pointer-events:none}.uni-page-head-hd{display:flex;align-items:center;font-size:16px}.uni-page-head-bd{position:absolute;left:70px;right:70px;min-width:0;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.uni-page-head-btn{position:relative;width:auto;margin:0 2px;word-break:keep-all;white-space:pre;cursor:pointer}.uni-page-head-btn svg{margin-top:-2px}.uni-page-head-transparent .uni-page-head-btn{display:flex;align-items:center;width:32px;height:32px;border-radius:50%;background-color:rgba(0,0,0,.5)}.uni-page-head-btn-red-dot:after{content:attr(badge-text);position:absolute;right:0;top:0;background-color:red;color:#fff;width:18px;height:18px;line-height:18px;border-radius:18px;overflow:hidden;transform:scale(.5) translate(40%,-40%);transform-origin:100% 0}.uni-page-head-btn-red-dot[badge-text]:after{font-size:12px;width:auto;min-width:18px;max-width:42px;text-align:center;padding:0 3px;transform:scale(.7) translate(40%,-40%)}.uni-page-head-btn-select svg{vertical-align:middle;margin-left:2px;transform:rotate(270deg) scale(.8)}.uni-page-head-search{position:relative;display:flex;flex:1;margin:0 2px;line-height:30px;font-size:15px}.uni-page-head-search-input{width:100%;height:100%;padding-left:34px;text-align:left}.uni-page-head-search-placeholder{position:absolute;max-width:100%;height:100%;padding-left:34px;overflow:hidden;word-break:keep-all;white-space:pre}.uni-page-head-search-placeholder-right{right:0}.uni-page-head-search-placeholder-center{left:50%;transform:translate(-50%)}.uni-page-head-search-icon{position:absolute;top:0;left:2px;width:30px;height:30px;display:flex;justify-content:center;align-items:center}.uni-page-head-ft{display:flex;align-items:center;flex-direction:row-reverse;font-size:13px}.uni-page-head__title{font-weight:700;font-size:16px;line-height:30px;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.uni-page-head__title .uni-loading{width:16px;height:16px;margin-top:-3px}.uni-page-head__title .uni-page-head__title_image{width:auto;height:26px;vertical-align:middle}.uni-page-head-shadow{overflow:visible}.uni-page-head-shadow:after{content:"";position:absolute;left:0;right:0;top:100%;height:5px;background-size:100% 100%}.uni-page-head-shadow-grey:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}.uni-page-head-shadow-blue:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-blue.png)}.uni-page-head-shadow-green:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-green.png)}.uni-page-head-shadow-orange:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-orange.png)}.uni-page-head-shadow-red:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-red.png)}.uni-page-head-shadow-yellow:after{background-image:url(https://cdn.dcloud.net.cn/img/shadow-yellow.png)}uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px);height:calc(100% - 44px - constant(safe-area-inset-top));height:calc(100% - 44px - env(safe-area-inset-top))}uni-tabbar{display:block;box-sizing:border-box;width:100%;z-index:998}.uni-tabbar{display:flex;z-index:998;box-sizing:border-box}.uni-tabbar-top,.uni-tabbar-bottom,.uni-tabbar-top .uni-tabbar,.uni-tabbar-bottom .uni-tabbar{position:fixed;left:var(--window-left);right:var(--window-right)}.uni-app--showlayout+.uni-tabbar-top,.uni-app--showlayout+.uni-tabbar-bottom,.uni-app--showlayout+.uni-tabbar-top .uni-tabbar,.uni-app--showlayout+.uni-tabbar-bottom .uni-tabbar{left:var(--window-margin);right:var(--window-margin)}.uni-tabbar-bottom .uni-tabbar{bottom:0;padding-bottom:0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.uni-tabbar~.uni-placeholder{width:100%;margin-bottom:0;margin-bottom:constant(safe-area-inset-bottom);margin-bottom:env(safe-area-inset-bottom)}.uni-tabbar *{box-sizing:border-box}.uni-tabbar__item{display:flex;justify-content:center;align-items:center;flex-direction:column;flex:1;font-size:0;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.uni-tabbar__bd{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.uni-tabbar__icon{position:relative;display:inline-block;margin-top:5px}.uni-tabbar__icon.uni-tabbar__icon__diff{margin-top:0;width:34px;height:34px}.uni-tabbar__icon img{width:100%;height:100%}.uni-tabbar__iconfont{font-family:UniTabbarIconFont}.uni-tabbar__label{position:relative;text-align:center;font-size:10px}.uni-tabbar-border{position:absolute;left:0;top:0;width:100%;height:1px;transform:scaleY(.5)}.uni-tabbar__reddot{position:absolute;top:2px;right:0;width:12px;height:12px;border-radius:50%;background-color:#f43530;color:#fff;transform:translate(40%)}.uni-tabbar__badge{width:auto;height:16px;line-height:16px;border-radius:16px;min-width:16px;padding:0 2px;font-size:12px;text-align:center;white-space:nowrap}.uni-tabbar__mid{display:flex;justify-content:center;position:absolute;bottom:0;background-size:100% 100%}.uni-app--showtabbar uni-page-wrapper{display:block;height:calc(100% - var(--tab-bar-height));height:calc(100% - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - var(--tab-bar-height) - env(safe-area-inset-bottom))}.uni-app--showtabbar uni-page-wrapper:after{content:"";display:block;width:100%;height:var(--tab-bar-height);height:calc(var(--tab-bar-height) + constant(safe-area-inset-bottom));height:calc(var(--tab-bar-height) + env(safe-area-inset-bottom))}.uni-app--showtabbar uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px - var(--tab-bar-height));height:calc(100% - 44px - constant(safe-area-inset-top) - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - 44px - env(safe-area-inset-top) - var(--tab-bar-height) - env(safe-area-inset-bottom))}uni-page-refresh{position:absolute;top:0;width:100%;height:40px;display:block;box-sizing:border-box}.uni-page-refresh{position:absolute;top:-45px;left:50%;transform:translate3d(-50%,0,0);width:40px;height:40px;justify-content:center;align-items:center;background:#fff;border-radius:50%;box-shadow:0 1px 6px rgba(0,0,0,.118),0 1px 4px rgba(0,0,0,.118);display:none;z-index:997}.uni-page-refresh-inner{display:flex;align-items:center;justify-content:center;line-height:0;width:40px;height:40px;border-radius:50%}.uni-page-refresh--pulling .uni-page-refresh,.uni-page-refresh--aborting .uni-page-refresh,.uni-page-refresh--reached .uni-page-refresh,.uni-page-refresh--refreshing .uni-page-refresh,.uni-page-refresh--restoring .uni-page-refresh{display:flex}.uni-page-refresh--pulling .uni-page-refresh__spinner,.uni-page-refresh--aborting .uni-page-refresh__spinner,.uni-page-refresh--reached .uni-page-refresh__spinner,.uni-page-refresh--refreshing .uni-page-refresh__icon,.uni-page-refresh--restoring .uni-page-refresh__icon{display:none}.uni-page-refresh--refreshing .uni-page-refresh__spinner{transform-origin:center center;animation:uni-page-refresh-rotate 2s linear infinite}.uni-page-refresh--refreshing .uni-page-refresh__path{stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;animation:uni-page-refresh-dash 1.5s ease-in-out infinite,uni-page-refresh-colorful 6s ease-in-out infinite}@keyframes uni-page-refresh-rotate{to{transform:rotate(360deg)}}@keyframes uni-page-refresh-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}uni-page-head{display:none!important}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/c/font_3952239_o3at4uhxn3.woff2?t=1705285469560) format("woff2"),url(//at.alicdn.com/t/c/font_3952239_o3at4uhxn3.woff?t=1705285469560) format("woff"),url(//at.alicdn.com/t/c/font_3952239_o3at4uhxn3.ttf?t=1705285469560) format("truetype")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.iconxiangqing:before{content:"\e61f"}.iconpinglun:before{content:"\e60b"}.iconfenxiao:before{content:"\e61b"}.iconyongjin:before{content:"\e6e3"}.icondasuozi:before{content:"\e608"}.icon24gl-questionCircle:before{content:"\e97f"}.iconshimingrenzheng-xian:before{content:"\e89c"}.icondianhua:before{content:"\e6be"}.iconshangjiantou:before{content:"\e604"}.iconxiajiantou:before{content:"\e602"}.icondaohang:before{content:"\e6bd"}.iconzanwuwuliuxinxi:before{content:"\e674"}.iconzhaoxiangji:before{content:"\e664"}.icongouwuche1:before{content:"\e682"}.iconshoucang_shoucang:before{content:"\e607"}.icona-shoucang-weishoucang:before{content:"\e6f2"}.iconbianji:before{content:"\e6ee"}.iconjiahao2fill:before{content:"\e728"}.iconkaidian:before{content:"\e6fb"}.icongouwuche:before{content:"\e699"}.iconliebiaoxingshi:before{content:"\e742"}.iconshangpinliebiao:before{content:"\e61c"}.iconjiahao1:before{content:"\e84f"}.iconjianhao:before{content:"\e850"}.iconfenxiang1:before{content:"\e64d"}.iconshaixuan:before{content:"\e888"}.iconWechat-Moments:before{content:"\e7a8"}.iconlink-filling:before{content:"\e898"}.iconkefu1:before{content:"\e88f"}.iconico:before{content:"\e646"}.iconquanbudingdan:before{content:"\e601"}.iconqiuzhirenyuan:before{content:"\e66d"}.iconxialajiantouxiao:before{content:"\e87e"}.iconxinyongqia:before{content:"\e785"}.iconmendian:before{content:"\e60a"}.iconico_yuyueguanli_yuyuebiangeng:before{content:"\e94a"}.iconanniu-jiantouxiangyou_o:before{content:"\eb8c"}.iconlianjie-tianchong:before{content:"\e658"}.icondianhua-xianxingyuankuang:before{content:"\e8bc"}.iconshuangxiang:before{content:"\e669"}.iconchuang1:before{content:"\e61a"}.iconfangzi:before{content:"\e8ff"}.iconpeople:before{content:"\e617"}.iconlouceng:before{content:"\e642"}.iconshuliang:before{content:"\e61e"}.iconxingxing:before{content:"\e60d"}.iconjiantouarrow492:before{content:"\e6b0"}.iconrili:before{content:"\e696"}.iconguanbi:before{content:"\e609"}.iconzhixiang:before{content:"\e72f"}.iconfuzhi:before{content:"\e622"}.iconshijian:before{content:"\e6c8"}.iconzuobiaofill:before{content:"\e768"}.iconxuanze1:before{content:"\e616"}.iconyuandianfengefu:before{content:"\e603"}.iconxuanze:before{content:"\e629"}.iconxiazai17:before{content:"\e613"}.iconxiazai19:before{content:"\e614"}.icondache:before{content:"\e615"}.iconshouye:before{content:"\e606"}.iconjiantouxia:before{content:"\e67e"}.iconjiantoushang:before{content:"\e619"}.iconjiantou3:before{content:"\e605"}.iconxiangyoujiantou:before{content:"\e620"}.iconcheckbox_nol:before{content:"\e626"}.iconweixin1:before{content:"\e878"}.iconyinlian:before{content:"\e68b"}.iconzhifubaoxuanzhong:before{content:"\e802"}.iconshuaxin:before{content:"\e631"}.iconkefu:before{content:"\e612"}.iconfenxiang:before{content:"\e610"}.icondianzan:before{content:"\ec7f"}.iconhuiyuanjiage:before{content:"\e611"}.iconxiazai:before{content:"\e69c"}.icondunpai:before{content:"\e80b"}.icona-shejianchangguan:before{content:"\e647"}.iconduigou:before{content:"\e632"}.iconzhifushibai:before{content:"\e663"}.iconweixinzhifu2:before{content:"\e62b"}.iconalipay:before{content:"\e618"}.iconbalance:before{content:"\e73b"}.iconwode-xian:before{content:"\e60f"}.iconwodezixun:before{content:"\e645"}.iconshouye-zhihui:before{content:"\e61d"}.iconshezhi:before{content:"\e600"}.u-line-1{display:-webkit-box!important;overflow:hidden;text-overflow:ellipsis;word-break:break-all;-webkit-line-clamp:1;-webkit-box-orient:vertical!important}.u-line-2{display:-webkit-box!important;overflow:hidden;text-overflow:ellipsis;word-break:break-all;-webkit-line-clamp:2;-webkit-box-orient:vertical!important}.u-line-3{display:-webkit-box!important;overflow:hidden;text-overflow:ellipsis;word-break:break-all;-webkit-line-clamp:3;-webkit-box-orient:vertical!important}.u-line-4{display:-webkit-box!important;overflow:hidden;text-overflow:ellipsis;word-break:break-all;-webkit-line-clamp:4;-webkit-box-orient:vertical!important}.u-line-5{display:-webkit-box!important;overflow:hidden;text-overflow:ellipsis;word-break:break-all;-webkit-line-clamp:5;-webkit-box-orient:vertical!important}.u-border{border-width:.5px!important;border-color:#dadbde!important;border-style:solid}.u-border-top{border-top-width:.5px!important;border-color:#dadbde!important;border-top-style:solid}.u-border-left{border-left-width:.5px!important;border-color:#dadbde!important;border-left-style:solid}.u-border-right{border-right-width:.5px!important;border-color:#dadbde!important;border-right-style:solid}.u-border-bottom{border-bottom-width:.5px!important;border-color:#dadbde!important;border-bottom-style:solid}.u-border-top-bottom{border-top-width:.5px!important;border-bottom-width:.5px!important;border-color:#dadbde!important;border-top-style:solid;border-bottom-style:solid}.u-reset-button{padding:0;background-color:transparent;font-size:inherit;line-height:inherit;color:inherit}.u-reset-button:after{border:none}.u-hover-class{opacity:.7}.u-flex,.u-flex-row,.u-flex-x{display:flex;flex-direction:row}.u-flex-y,.u-flex-column{display:flex;flex-direction:column}.u-flex-x-center{display:flex;flex-direction:row;justify-content:center}.u-flex-xy-center{display:flex;flex-direction:row;justify-content:center;align-items:center}.u-flex-y-center{display:flex;flex-direction:row;align-items:center}.u-flex-x-left{display:flex;flex-direction:row}.u-flex-x-reverse,.u-flex-row-reverse{flex-direction:row-reverse}.u-flex-y-reverse,.u-flex-column-reverse{flex-direction:column-reverse}.u-flex.u-flex-reverse,.u-flex-row.u-flex-reverse,.u-flex-x.u-flex-reverse{flex-direction:row-reverse}.u-flex-column.u-flex-reverse,.u-flex-y.u-flex-reverse{flex-direction:column-reverse}.u-flex-fill{flex:1 1 auto}.u-margin-top-auto,.u-m-t-auto{margin-top:auto!important}.u-margin-right-auto,.u-m-r-auto{margin-right:auto!important}.u-margin-bottom-auto,.u-m-b-auto{margin-bottom:auto!important}.u-margin-left-auto,.u-m-l-auto{margin-left:auto!important}.u-margin-center-auto,.u-m-c-auto{margin-left:auto!important;margin-right:auto!important}.u-margin-middle-auto,.u-m-m-auto{margin-top:auto!important;margin-bottom:auto!important}.u-flex-wrap{flex-wrap:wrap}.u-flex-wrap-reverse{flex-wrap:wrap-reverse}.u-flex-start{justify-content:flex-start}.u-flex-center{justify-content:center}.u-flex-end{justify-content:flex-end}.u-flex-between{justify-content:space-between}.u-flex-around{justify-content:space-around}.u-flex-items-start{align-items:flex-start}.u-flex-items-center{align-items:center}.u-flex-items-end{align-items:flex-end}.u-flex-items-baseline{align-items:baseline}.u-flex-items-stretch{align-items:stretch}.u-flex-self-start{align-self:flex-start}.u-flex-self-center{align-self:center}.u-flex-self-end{align-self:flex-end}.u-flex-self-baseline{align-self:baseline}.u-flex-self-stretch{align-self:stretch}.u-flex-content-start{align-content:flex-start}.u-flex-content-center{align-content:center}.u-flex-content-end{align-content:flex-end}.u-flex-content-between{align-content:space-between}.u-flex-content-around{align-content:space-around}.u-flex-middle{justify-content:center;align-items:center;align-self:center;align-content:center}.u-flex-grow{flex-grow:1}.u-flex-shrink{flex-shrink:1}.u-margin-0,.u-m-0{margin:0!important}.u-padding-0,.u-p-0{padding:0!important}.u-m-l-0{margin-left:0!important}.u-p-l-0{padding-left:0!important}.u-margin-left-0{margin-left:0!important}.u-padding-left-0{padding-left:0!important}.u-m-t-0{margin-top:0!important}.u-p-t-0{padding-top:0!important}.u-margin-top-0{margin-top:0!important}.u-padding-top-0{padding-top:0!important}.u-m-r-0{margin-right:0!important}.u-p-r-0{padding-right:0!important}.u-margin-right-0{margin-right:0!important}.u-padding-right-0{padding-right:0!important}.u-m-b-0{margin-bottom:0!important}.u-p-b-0{padding-bottom:0!important}.u-margin-bottom-0{margin-bottom:0!important}.u-padding-bottom-0{padding-bottom:0!important}.u-margin-2,.u-m-2{margin:.0625rem!important}.u-padding-2,.u-p-2{padding:.0625rem!important}.u-m-l-2{margin-left:.0625rem!important}.u-p-l-2{padding-left:.0625rem!important}.u-margin-left-2{margin-left:.0625rem!important}.u-padding-left-2{padding-left:.0625rem!important}.u-m-t-2{margin-top:.0625rem!important}.u-p-t-2{padding-top:.0625rem!important}.u-margin-top-2{margin-top:.0625rem!important}.u-padding-top-2{padding-top:.0625rem!important}.u-m-r-2{margin-right:.0625rem!important}.u-p-r-2{padding-right:.0625rem!important}.u-margin-right-2{margin-right:.0625rem!important}.u-padding-right-2{padding-right:.0625rem!important}.u-m-b-2{margin-bottom:.0625rem!important}.u-p-b-2{padding-bottom:.0625rem!important}.u-margin-bottom-2{margin-bottom:.0625rem!important}.u-padding-bottom-2{padding-bottom:.0625rem!important}.u-margin-4,.u-m-4{margin:.125rem!important}.u-padding-4,.u-p-4{padding:.125rem!important}.u-m-l-4{margin-left:.125rem!important}.u-p-l-4{padding-left:.125rem!important}.u-margin-left-4{margin-left:.125rem!important}.u-padding-left-4{padding-left:.125rem!important}.u-m-t-4{margin-top:.125rem!important}.u-p-t-4{padding-top:.125rem!important}.u-margin-top-4{margin-top:.125rem!important}.u-padding-top-4{padding-top:.125rem!important}.u-m-r-4{margin-right:.125rem!important}.u-p-r-4{padding-right:.125rem!important}.u-margin-right-4{margin-right:.125rem!important}.u-padding-right-4{padding-right:.125rem!important}.u-m-b-4{margin-bottom:.125rem!important}.u-p-b-4{padding-bottom:.125rem!important}.u-margin-bottom-4{margin-bottom:.125rem!important}.u-padding-bottom-4{padding-bottom:.125rem!important}.u-margin-5,.u-m-5{margin:.15625rem!important}.u-padding-5,.u-p-5{padding:.15625rem!important}.u-m-l-5{margin-left:.15625rem!important}.u-p-l-5{padding-left:.15625rem!important}.u-margin-left-5{margin-left:.15625rem!important}.u-padding-left-5{padding-left:.15625rem!important}.u-m-t-5{margin-top:.15625rem!important}.u-p-t-5{padding-top:.15625rem!important}.u-margin-top-5{margin-top:.15625rem!important}.u-padding-top-5{padding-top:.15625rem!important}.u-m-r-5{margin-right:.15625rem!important}.u-p-r-5{padding-right:.15625rem!important}.u-margin-right-5{margin-right:.15625rem!important}.u-padding-right-5{padding-right:.15625rem!important}.u-m-b-5{margin-bottom:.15625rem!important}.u-p-b-5{padding-bottom:.15625rem!important}.u-margin-bottom-5{margin-bottom:.15625rem!important}.u-padding-bottom-5{padding-bottom:.15625rem!important}.u-margin-6,.u-m-6{margin:.1875rem!important}.u-padding-6,.u-p-6{padding:.1875rem!important}.u-m-l-6{margin-left:.1875rem!important}.u-p-l-6{padding-left:.1875rem!important}.u-margin-left-6{margin-left:.1875rem!important}.u-padding-left-6{padding-left:.1875rem!important}.u-m-t-6{margin-top:.1875rem!important}.u-p-t-6{padding-top:.1875rem!important}.u-margin-top-6{margin-top:.1875rem!important}.u-padding-top-6{padding-top:.1875rem!important}.u-m-r-6{margin-right:.1875rem!important}.u-p-r-6{padding-right:.1875rem!important}.u-margin-right-6{margin-right:.1875rem!important}.u-padding-right-6{padding-right:.1875rem!important}.u-m-b-6{margin-bottom:.1875rem!important}.u-p-b-6{padding-bottom:.1875rem!important}.u-margin-bottom-6{margin-bottom:.1875rem!important}.u-padding-bottom-6{padding-bottom:.1875rem!important}.u-margin-8,.u-m-8{margin:.25rem!important}.u-padding-8,.u-p-8{padding:.25rem!important}.u-m-l-8{margin-left:.25rem!important}.u-p-l-8{padding-left:.25rem!important}.u-margin-left-8{margin-left:.25rem!important}.u-padding-left-8{padding-left:.25rem!important}.u-m-t-8{margin-top:.25rem!important}.u-p-t-8{padding-top:.25rem!important}.u-margin-top-8{margin-top:.25rem!important}.u-padding-top-8{padding-top:.25rem!important}.u-m-r-8{margin-right:.25rem!important}.u-p-r-8{padding-right:.25rem!important}.u-margin-right-8{margin-right:.25rem!important}.u-padding-right-8{padding-right:.25rem!important}.u-m-b-8{margin-bottom:.25rem!important}.u-p-b-8{padding-bottom:.25rem!important}.u-margin-bottom-8{margin-bottom:.25rem!important}.u-padding-bottom-8{padding-bottom:.25rem!important}.u-margin-10,.u-m-10{margin:.3125rem!important}.u-padding-10,.u-p-10{padding:.3125rem!important}.u-m-l-10{margin-left:.3125rem!important}.u-p-l-10{padding-left:.3125rem!important}.u-margin-left-10{margin-left:.3125rem!important}.u-padding-left-10{padding-left:.3125rem!important}.u-m-t-10{margin-top:.3125rem!important}.u-p-t-10{padding-top:.3125rem!important}.u-margin-top-10{margin-top:.3125rem!important}.u-padding-top-10{padding-top:.3125rem!important}.u-m-r-10{margin-right:.3125rem!important}.u-p-r-10{padding-right:.3125rem!important}.u-margin-right-10{margin-right:.3125rem!important}.u-padding-right-10{padding-right:.3125rem!important}.u-m-b-10{margin-bottom:.3125rem!important}.u-p-b-10{padding-bottom:.3125rem!important}.u-margin-bottom-10{margin-bottom:.3125rem!important}.u-padding-bottom-10{padding-bottom:.3125rem!important}.u-margin-12,.u-m-12{margin:.375rem!important}.u-padding-12,.u-p-12{padding:.375rem!important}.u-m-l-12{margin-left:.375rem!important}.u-p-l-12{padding-left:.375rem!important}.u-margin-left-12{margin-left:.375rem!important}.u-padding-left-12{padding-left:.375rem!important}.u-m-t-12{margin-top:.375rem!important}.u-p-t-12{padding-top:.375rem!important}.u-margin-top-12{margin-top:.375rem!important}.u-padding-top-12{padding-top:.375rem!important}.u-m-r-12{margin-right:.375rem!important}.u-p-r-12{padding-right:.375rem!important}.u-margin-right-12{margin-right:.375rem!important}.u-padding-right-12{padding-right:.375rem!important}.u-m-b-12{margin-bottom:.375rem!important}.u-p-b-12{padding-bottom:.375rem!important}.u-margin-bottom-12{margin-bottom:.375rem!important}.u-padding-bottom-12{padding-bottom:.375rem!important}.u-margin-14,.u-m-14{margin:.4375rem!important}.u-padding-14,.u-p-14{padding:.4375rem!important}.u-m-l-14{margin-left:.4375rem!important}.u-p-l-14{padding-left:.4375rem!important}.u-margin-left-14{margin-left:.4375rem!important}.u-padding-left-14{padding-left:.4375rem!important}.u-m-t-14{margin-top:.4375rem!important}.u-p-t-14{padding-top:.4375rem!important}.u-margin-top-14{margin-top:.4375rem!important}.u-padding-top-14{padding-top:.4375rem!important}.u-m-r-14{margin-right:.4375rem!important}.u-p-r-14{padding-right:.4375rem!important}.u-margin-right-14{margin-right:.4375rem!important}.u-padding-right-14{padding-right:.4375rem!important}.u-m-b-14{margin-bottom:.4375rem!important}.u-p-b-14{padding-bottom:.4375rem!important}.u-margin-bottom-14{margin-bottom:.4375rem!important}.u-padding-bottom-14{padding-bottom:.4375rem!important}.u-margin-15,.u-m-15{margin:.46875rem!important}.u-padding-15,.u-p-15{padding:.46875rem!important}.u-m-l-15{margin-left:.46875rem!important}.u-p-l-15{padding-left:.46875rem!important}.u-margin-left-15{margin-left:.46875rem!important}.u-padding-left-15{padding-left:.46875rem!important}.u-m-t-15{margin-top:.46875rem!important}.u-p-t-15{padding-top:.46875rem!important}.u-margin-top-15{margin-top:.46875rem!important}.u-padding-top-15{padding-top:.46875rem!important}.u-m-r-15{margin-right:.46875rem!important}.u-p-r-15{padding-right:.46875rem!important}.u-margin-right-15{margin-right:.46875rem!important}.u-padding-right-15{padding-right:.46875rem!important}.u-m-b-15{margin-bottom:.46875rem!important}.u-p-b-15{padding-bottom:.46875rem!important}.u-margin-bottom-15{margin-bottom:.46875rem!important}.u-padding-bottom-15{padding-bottom:.46875rem!important}.u-margin-16,.u-m-16{margin:.5rem!important}.u-padding-16,.u-p-16{padding:.5rem!important}.u-m-l-16{margin-left:.5rem!important}.u-p-l-16{padding-left:.5rem!important}.u-margin-left-16{margin-left:.5rem!important}.u-padding-left-16{padding-left:.5rem!important}.u-m-t-16{margin-top:.5rem!important}.u-p-t-16{padding-top:.5rem!important}.u-margin-top-16{margin-top:.5rem!important}.u-padding-top-16{padding-top:.5rem!important}.u-m-r-16{margin-right:.5rem!important}.u-p-r-16{padding-right:.5rem!important}.u-margin-right-16{margin-right:.5rem!important}.u-padding-right-16{padding-right:.5rem!important}.u-m-b-16{margin-bottom:.5rem!important}.u-p-b-16{padding-bottom:.5rem!important}.u-margin-bottom-16{margin-bottom:.5rem!important}.u-padding-bottom-16{padding-bottom:.5rem!important}.u-margin-18,.u-m-18{margin:.5625rem!important}.u-padding-18,.u-p-18{padding:.5625rem!important}.u-m-l-18{margin-left:.5625rem!important}.u-p-l-18{padding-left:.5625rem!important}.u-margin-left-18{margin-left:.5625rem!important}.u-padding-left-18{padding-left:.5625rem!important}.u-m-t-18{margin-top:.5625rem!important}.u-p-t-18{padding-top:.5625rem!important}.u-margin-top-18{margin-top:.5625rem!important}.u-padding-top-18{padding-top:.5625rem!important}.u-m-r-18{margin-right:.5625rem!important}.u-p-r-18{padding-right:.5625rem!important}.u-margin-right-18{margin-right:.5625rem!important}.u-padding-right-18{padding-right:.5625rem!important}.u-m-b-18{margin-bottom:.5625rem!important}.u-p-b-18{padding-bottom:.5625rem!important}.u-margin-bottom-18{margin-bottom:.5625rem!important}.u-padding-bottom-18{padding-bottom:.5625rem!important}.u-margin-20,.u-m-20{margin:.625rem!important}.u-padding-20,.u-p-20{padding:.625rem!important}.u-m-l-20{margin-left:.625rem!important}.u-p-l-20{padding-left:.625rem!important}.u-margin-left-20{margin-left:.625rem!important}.u-padding-left-20{padding-left:.625rem!important}.u-m-t-20{margin-top:.625rem!important}.u-p-t-20{padding-top:.625rem!important}.u-margin-top-20{margin-top:.625rem!important}.u-padding-top-20{padding-top:.625rem!important}.u-m-r-20{margin-right:.625rem!important}.u-p-r-20{padding-right:.625rem!important}.u-margin-right-20{margin-right:.625rem!important}.u-padding-right-20{padding-right:.625rem!important}.u-m-b-20{margin-bottom:.625rem!important}.u-p-b-20{padding-bottom:.625rem!important}.u-margin-bottom-20{margin-bottom:.625rem!important}.u-padding-bottom-20{padding-bottom:.625rem!important}.u-margin-22,.u-m-22{margin:.6875rem!important}.u-padding-22,.u-p-22{padding:.6875rem!important}.u-m-l-22{margin-left:.6875rem!important}.u-p-l-22{padding-left:.6875rem!important}.u-margin-left-22{margin-left:.6875rem!important}.u-padding-left-22{padding-left:.6875rem!important}.u-m-t-22{margin-top:.6875rem!important}.u-p-t-22{padding-top:.6875rem!important}.u-margin-top-22{margin-top:.6875rem!important}.u-padding-top-22{padding-top:.6875rem!important}.u-m-r-22{margin-right:.6875rem!important}.u-p-r-22{padding-right:.6875rem!important}.u-margin-right-22{margin-right:.6875rem!important}.u-padding-right-22{padding-right:.6875rem!important}.u-m-b-22{margin-bottom:.6875rem!important}.u-p-b-22{padding-bottom:.6875rem!important}.u-margin-bottom-22{margin-bottom:.6875rem!important}.u-padding-bottom-22{padding-bottom:.6875rem!important}.u-margin-24,.u-m-24{margin:.75rem!important}.u-padding-24,.u-p-24{padding:.75rem!important}.u-m-l-24{margin-left:.75rem!important}.u-p-l-24{padding-left:.75rem!important}.u-margin-left-24{margin-left:.75rem!important}.u-padding-left-24{padding-left:.75rem!important}.u-m-t-24{margin-top:.75rem!important}.u-p-t-24{padding-top:.75rem!important}.u-margin-top-24{margin-top:.75rem!important}.u-padding-top-24{padding-top:.75rem!important}.u-m-r-24{margin-right:.75rem!important}.u-p-r-24{padding-right:.75rem!important}.u-margin-right-24{margin-right:.75rem!important}.u-padding-right-24{padding-right:.75rem!important}.u-m-b-24{margin-bottom:.75rem!important}.u-p-b-24{padding-bottom:.75rem!important}.u-margin-bottom-24{margin-bottom:.75rem!important}.u-padding-bottom-24{padding-bottom:.75rem!important}.u-margin-25,.u-m-25{margin:.78125rem!important}.u-padding-25,.u-p-25{padding:.78125rem!important}.u-m-l-25{margin-left:.78125rem!important}.u-p-l-25{padding-left:.78125rem!important}.u-margin-left-25{margin-left:.78125rem!important}.u-padding-left-25{padding-left:.78125rem!important}.u-m-t-25{margin-top:.78125rem!important}.u-p-t-25{padding-top:.78125rem!important}.u-margin-top-25{margin-top:.78125rem!important}.u-padding-top-25{padding-top:.78125rem!important}.u-m-r-25{margin-right:.78125rem!important}.u-p-r-25{padding-right:.78125rem!important}.u-margin-right-25{margin-right:.78125rem!important}.u-padding-right-25{padding-right:.78125rem!important}.u-m-b-25{margin-bottom:.78125rem!important}.u-p-b-25{padding-bottom:.78125rem!important}.u-margin-bottom-25{margin-bottom:.78125rem!important}.u-padding-bottom-25{padding-bottom:.78125rem!important}.u-margin-26,.u-m-26{margin:.8125rem!important}.u-padding-26,.u-p-26{padding:.8125rem!important}.u-m-l-26{margin-left:.8125rem!important}.u-p-l-26{padding-left:.8125rem!important}.u-margin-left-26{margin-left:.8125rem!important}.u-padding-left-26{padding-left:.8125rem!important}.u-m-t-26{margin-top:.8125rem!important}.u-p-t-26{padding-top:.8125rem!important}.u-margin-top-26{margin-top:.8125rem!important}.u-padding-top-26{padding-top:.8125rem!important}.u-m-r-26{margin-right:.8125rem!important}.u-p-r-26{padding-right:.8125rem!important}.u-margin-right-26{margin-right:.8125rem!important}.u-padding-right-26{padding-right:.8125rem!important}.u-m-b-26{margin-bottom:.8125rem!important}.u-p-b-26{padding-bottom:.8125rem!important}.u-margin-bottom-26{margin-bottom:.8125rem!important}.u-padding-bottom-26{padding-bottom:.8125rem!important}.u-margin-28,.u-m-28{margin:.875rem!important}.u-padding-28,.u-p-28{padding:.875rem!important}.u-m-l-28{margin-left:.875rem!important}.u-p-l-28{padding-left:.875rem!important}.u-margin-left-28{margin-left:.875rem!important}.u-padding-left-28{padding-left:.875rem!important}.u-m-t-28{margin-top:.875rem!important}.u-p-t-28{padding-top:.875rem!important}.u-margin-top-28{margin-top:.875rem!important}.u-padding-top-28{padding-top:.875rem!important}.u-m-r-28{margin-right:.875rem!important}.u-p-r-28{padding-right:.875rem!important}.u-margin-right-28{margin-right:.875rem!important}.u-padding-right-28{padding-right:.875rem!important}.u-m-b-28{margin-bottom:.875rem!important}.u-p-b-28{padding-bottom:.875rem!important}.u-margin-bottom-28{margin-bottom:.875rem!important}.u-padding-bottom-28{padding-bottom:.875rem!important}.u-margin-30,.u-m-30{margin:.9375rem!important}.u-padding-30,.u-p-30{padding:.9375rem!important}.u-m-l-30{margin-left:.9375rem!important}.u-p-l-30{padding-left:.9375rem!important}.u-margin-left-30{margin-left:.9375rem!important}.u-padding-left-30{padding-left:.9375rem!important}.u-m-t-30{margin-top:.9375rem!important}.u-p-t-30{padding-top:.9375rem!important}.u-margin-top-30{margin-top:.9375rem!important}.u-padding-top-30{padding-top:.9375rem!important}.u-m-r-30{margin-right:.9375rem!important}.u-p-r-30{padding-right:.9375rem!important}.u-margin-right-30{margin-right:.9375rem!important}.u-padding-right-30{padding-right:.9375rem!important}.u-m-b-30{margin-bottom:.9375rem!important}.u-p-b-30{padding-bottom:.9375rem!important}.u-margin-bottom-30{margin-bottom:.9375rem!important}.u-padding-bottom-30{padding-bottom:.9375rem!important}.u-margin-32,.u-m-32{margin:1rem!important}.u-padding-32,.u-p-32{padding:1rem!important}.u-m-l-32{margin-left:1rem!important}.u-p-l-32{padding-left:1rem!important}.u-margin-left-32{margin-left:1rem!important}.u-padding-left-32{padding-left:1rem!important}.u-m-t-32{margin-top:1rem!important}.u-p-t-32{padding-top:1rem!important}.u-margin-top-32{margin-top:1rem!important}.u-padding-top-32{padding-top:1rem!important}.u-m-r-32{margin-right:1rem!important}.u-p-r-32{padding-right:1rem!important}.u-margin-right-32{margin-right:1rem!important}.u-padding-right-32{padding-right:1rem!important}.u-m-b-32{margin-bottom:1rem!important}.u-p-b-32{padding-bottom:1rem!important}.u-margin-bottom-32{margin-bottom:1rem!important}.u-padding-bottom-32{padding-bottom:1rem!important}.u-margin-34,.u-m-34{margin:1.0625rem!important}.u-padding-34,.u-p-34{padding:1.0625rem!important}.u-m-l-34{margin-left:1.0625rem!important}.u-p-l-34{padding-left:1.0625rem!important}.u-margin-left-34{margin-left:1.0625rem!important}.u-padding-left-34{padding-left:1.0625rem!important}.u-m-t-34{margin-top:1.0625rem!important}.u-p-t-34{padding-top:1.0625rem!important}.u-margin-top-34{margin-top:1.0625rem!important}.u-padding-top-34{padding-top:1.0625rem!important}.u-m-r-34{margin-right:1.0625rem!important}.u-p-r-34{padding-right:1.0625rem!important}.u-margin-right-34{margin-right:1.0625rem!important}.u-padding-right-34{padding-right:1.0625rem!important}.u-m-b-34{margin-bottom:1.0625rem!important}.u-p-b-34{padding-bottom:1.0625rem!important}.u-margin-bottom-34{margin-bottom:1.0625rem!important}.u-padding-bottom-34{padding-bottom:1.0625rem!important}.u-margin-35,.u-m-35{margin:1.09375rem!important}.u-padding-35,.u-p-35{padding:1.09375rem!important}.u-m-l-35{margin-left:1.09375rem!important}.u-p-l-35{padding-left:1.09375rem!important}.u-margin-left-35{margin-left:1.09375rem!important}.u-padding-left-35{padding-left:1.09375rem!important}.u-m-t-35{margin-top:1.09375rem!important}.u-p-t-35{padding-top:1.09375rem!important}.u-margin-top-35{margin-top:1.09375rem!important}.u-padding-top-35{padding-top:1.09375rem!important}.u-m-r-35{margin-right:1.09375rem!important}.u-p-r-35{padding-right:1.09375rem!important}.u-margin-right-35{margin-right:1.09375rem!important}.u-padding-right-35{padding-right:1.09375rem!important}.u-m-b-35{margin-bottom:1.09375rem!important}.u-p-b-35{padding-bottom:1.09375rem!important}.u-margin-bottom-35{margin-bottom:1.09375rem!important}.u-padding-bottom-35{padding-bottom:1.09375rem!important}.u-margin-36,.u-m-36{margin:1.125rem!important}.u-padding-36,.u-p-36{padding:1.125rem!important}.u-m-l-36{margin-left:1.125rem!important}.u-p-l-36{padding-left:1.125rem!important}.u-margin-left-36{margin-left:1.125rem!important}.u-padding-left-36{padding-left:1.125rem!important}.u-m-t-36{margin-top:1.125rem!important}.u-p-t-36{padding-top:1.125rem!important}.u-margin-top-36{margin-top:1.125rem!important}.u-padding-top-36{padding-top:1.125rem!important}.u-m-r-36{margin-right:1.125rem!important}.u-p-r-36{padding-right:1.125rem!important}.u-margin-right-36{margin-right:1.125rem!important}.u-padding-right-36{padding-right:1.125rem!important}.u-m-b-36{margin-bottom:1.125rem!important}.u-p-b-36{padding-bottom:1.125rem!important}.u-margin-bottom-36{margin-bottom:1.125rem!important}.u-padding-bottom-36{padding-bottom:1.125rem!important}.u-margin-38,.u-m-38{margin:1.1875rem!important}.u-padding-38,.u-p-38{padding:1.1875rem!important}.u-m-l-38{margin-left:1.1875rem!important}.u-p-l-38{padding-left:1.1875rem!important}.u-margin-left-38{margin-left:1.1875rem!important}.u-padding-left-38{padding-left:1.1875rem!important}.u-m-t-38{margin-top:1.1875rem!important}.u-p-t-38{padding-top:1.1875rem!important}.u-margin-top-38{margin-top:1.1875rem!important}.u-padding-top-38{padding-top:1.1875rem!important}.u-m-r-38{margin-right:1.1875rem!important}.u-p-r-38{padding-right:1.1875rem!important}.u-margin-right-38{margin-right:1.1875rem!important}.u-padding-right-38{padding-right:1.1875rem!important}.u-m-b-38{margin-bottom:1.1875rem!important}.u-p-b-38{padding-bottom:1.1875rem!important}.u-margin-bottom-38{margin-bottom:1.1875rem!important}.u-padding-bottom-38{padding-bottom:1.1875rem!important}.u-margin-40,.u-m-40{margin:1.25rem!important}.u-padding-40,.u-p-40{padding:1.25rem!important}.u-m-l-40{margin-left:1.25rem!important}.u-p-l-40{padding-left:1.25rem!important}.u-margin-left-40{margin-left:1.25rem!important}.u-padding-left-40{padding-left:1.25rem!important}.u-m-t-40{margin-top:1.25rem!important}.u-p-t-40{padding-top:1.25rem!important}.u-margin-top-40{margin-top:1.25rem!important}.u-padding-top-40{padding-top:1.25rem!important}.u-m-r-40{margin-right:1.25rem!important}.u-p-r-40{padding-right:1.25rem!important}.u-margin-right-40{margin-right:1.25rem!important}.u-padding-right-40{padding-right:1.25rem!important}.u-m-b-40{margin-bottom:1.25rem!important}.u-p-b-40{padding-bottom:1.25rem!important}.u-margin-bottom-40{margin-bottom:1.25rem!important}.u-padding-bottom-40{padding-bottom:1.25rem!important}.u-margin-42,.u-m-42{margin:1.3125rem!important}.u-padding-42,.u-p-42{padding:1.3125rem!important}.u-m-l-42{margin-left:1.3125rem!important}.u-p-l-42{padding-left:1.3125rem!important}.u-margin-left-42{margin-left:1.3125rem!important}.u-padding-left-42{padding-left:1.3125rem!important}.u-m-t-42{margin-top:1.3125rem!important}.u-p-t-42{padding-top:1.3125rem!important}.u-margin-top-42{margin-top:1.3125rem!important}.u-padding-top-42{padding-top:1.3125rem!important}.u-m-r-42{margin-right:1.3125rem!important}.u-p-r-42{padding-right:1.3125rem!important}.u-margin-right-42{margin-right:1.3125rem!important}.u-padding-right-42{padding-right:1.3125rem!important}.u-m-b-42{margin-bottom:1.3125rem!important}.u-p-b-42{padding-bottom:1.3125rem!important}.u-margin-bottom-42{margin-bottom:1.3125rem!important}.u-padding-bottom-42{padding-bottom:1.3125rem!important}.u-margin-44,.u-m-44{margin:1.375rem!important}.u-padding-44,.u-p-44{padding:1.375rem!important}.u-m-l-44{margin-left:1.375rem!important}.u-p-l-44{padding-left:1.375rem!important}.u-margin-left-44{margin-left:1.375rem!important}.u-padding-left-44{padding-left:1.375rem!important}.u-m-t-44{margin-top:1.375rem!important}.u-p-t-44{padding-top:1.375rem!important}.u-margin-top-44{margin-top:1.375rem!important}.u-padding-top-44{padding-top:1.375rem!important}.u-m-r-44{margin-right:1.375rem!important}.u-p-r-44{padding-right:1.375rem!important}.u-margin-right-44{margin-right:1.375rem!important}.u-padding-right-44{padding-right:1.375rem!important}.u-m-b-44{margin-bottom:1.375rem!important}.u-p-b-44{padding-bottom:1.375rem!important}.u-margin-bottom-44{margin-bottom:1.375rem!important}.u-padding-bottom-44{padding-bottom:1.375rem!important}.u-margin-45,.u-m-45{margin:1.40625rem!important}.u-padding-45,.u-p-45{padding:1.40625rem!important}.u-m-l-45{margin-left:1.40625rem!important}.u-p-l-45{padding-left:1.40625rem!important}.u-margin-left-45{margin-left:1.40625rem!important}.u-padding-left-45{padding-left:1.40625rem!important}.u-m-t-45{margin-top:1.40625rem!important}.u-p-t-45{padding-top:1.40625rem!important}.u-margin-top-45{margin-top:1.40625rem!important}.u-padding-top-45{padding-top:1.40625rem!important}.u-m-r-45{margin-right:1.40625rem!important}.u-p-r-45{padding-right:1.40625rem!important}.u-margin-right-45{margin-right:1.40625rem!important}.u-padding-right-45{padding-right:1.40625rem!important}.u-m-b-45{margin-bottom:1.40625rem!important}.u-p-b-45{padding-bottom:1.40625rem!important}.u-margin-bottom-45{margin-bottom:1.40625rem!important}.u-padding-bottom-45{padding-bottom:1.40625rem!important}.u-margin-46,.u-m-46{margin:1.4375rem!important}.u-padding-46,.u-p-46{padding:1.4375rem!important}.u-m-l-46{margin-left:1.4375rem!important}.u-p-l-46{padding-left:1.4375rem!important}.u-margin-left-46{margin-left:1.4375rem!important}.u-padding-left-46{padding-left:1.4375rem!important}.u-m-t-46{margin-top:1.4375rem!important}.u-p-t-46{padding-top:1.4375rem!important}.u-margin-top-46{margin-top:1.4375rem!important}.u-padding-top-46{padding-top:1.4375rem!important}.u-m-r-46{margin-right:1.4375rem!important}.u-p-r-46{padding-right:1.4375rem!important}.u-margin-right-46{margin-right:1.4375rem!important}.u-padding-right-46{padding-right:1.4375rem!important}.u-m-b-46{margin-bottom:1.4375rem!important}.u-p-b-46{padding-bottom:1.4375rem!important}.u-margin-bottom-46{margin-bottom:1.4375rem!important}.u-padding-bottom-46{padding-bottom:1.4375rem!important}.u-margin-48,.u-m-48{margin:1.5rem!important}.u-padding-48,.u-p-48{padding:1.5rem!important}.u-m-l-48{margin-left:1.5rem!important}.u-p-l-48{padding-left:1.5rem!important}.u-margin-left-48{margin-left:1.5rem!important}.u-padding-left-48{padding-left:1.5rem!important}.u-m-t-48{margin-top:1.5rem!important}.u-p-t-48{padding-top:1.5rem!important}.u-margin-top-48{margin-top:1.5rem!important}.u-padding-top-48{padding-top:1.5rem!important}.u-m-r-48{margin-right:1.5rem!important}.u-p-r-48{padding-right:1.5rem!important}.u-margin-right-48{margin-right:1.5rem!important}.u-padding-right-48{padding-right:1.5rem!important}.u-m-b-48{margin-bottom:1.5rem!important}.u-p-b-48{padding-bottom:1.5rem!important}.u-margin-bottom-48{margin-bottom:1.5rem!important}.u-padding-bottom-48{padding-bottom:1.5rem!important}.u-margin-50,.u-m-50{margin:1.5625rem!important}.u-padding-50,.u-p-50{padding:1.5625rem!important}.u-m-l-50{margin-left:1.5625rem!important}.u-p-l-50{padding-left:1.5625rem!important}.u-margin-left-50{margin-left:1.5625rem!important}.u-padding-left-50{padding-left:1.5625rem!important}.u-m-t-50{margin-top:1.5625rem!important}.u-p-t-50{padding-top:1.5625rem!important}.u-margin-top-50{margin-top:1.5625rem!important}.u-padding-top-50{padding-top:1.5625rem!important}.u-m-r-50{margin-right:1.5625rem!important}.u-p-r-50{padding-right:1.5625rem!important}.u-margin-right-50{margin-right:1.5625rem!important}.u-padding-right-50{padding-right:1.5625rem!important}.u-m-b-50{margin-bottom:1.5625rem!important}.u-p-b-50{padding-bottom:1.5625rem!important}.u-margin-bottom-50{margin-bottom:1.5625rem!important}.u-padding-bottom-50{padding-bottom:1.5625rem!important}.u-margin-52,.u-m-52{margin:1.625rem!important}.u-padding-52,.u-p-52{padding:1.625rem!important}.u-m-l-52{margin-left:1.625rem!important}.u-p-l-52{padding-left:1.625rem!important}.u-margin-left-52{margin-left:1.625rem!important}.u-padding-left-52{padding-left:1.625rem!important}.u-m-t-52{margin-top:1.625rem!important}.u-p-t-52{padding-top:1.625rem!important}.u-margin-top-52{margin-top:1.625rem!important}.u-padding-top-52{padding-top:1.625rem!important}.u-m-r-52{margin-right:1.625rem!important}.u-p-r-52{padding-right:1.625rem!important}.u-margin-right-52{margin-right:1.625rem!important}.u-padding-right-52{padding-right:1.625rem!important}.u-m-b-52{margin-bottom:1.625rem!important}.u-p-b-52{padding-bottom:1.625rem!important}.u-margin-bottom-52{margin-bottom:1.625rem!important}.u-padding-bottom-52{padding-bottom:1.625rem!important}.u-margin-54,.u-m-54{margin:1.6875rem!important}.u-padding-54,.u-p-54{padding:1.6875rem!important}.u-m-l-54{margin-left:1.6875rem!important}.u-p-l-54{padding-left:1.6875rem!important}.u-margin-left-54{margin-left:1.6875rem!important}.u-padding-left-54{padding-left:1.6875rem!important}.u-m-t-54{margin-top:1.6875rem!important}.u-p-t-54{padding-top:1.6875rem!important}.u-margin-top-54{margin-top:1.6875rem!important}.u-padding-top-54{padding-top:1.6875rem!important}.u-m-r-54{margin-right:1.6875rem!important}.u-p-r-54{padding-right:1.6875rem!important}.u-margin-right-54{margin-right:1.6875rem!important}.u-padding-right-54{padding-right:1.6875rem!important}.u-m-b-54{margin-bottom:1.6875rem!important}.u-p-b-54{padding-bottom:1.6875rem!important}.u-margin-bottom-54{margin-bottom:1.6875rem!important}.u-padding-bottom-54{padding-bottom:1.6875rem!important}.u-margin-55,.u-m-55{margin:1.71875rem!important}.u-padding-55,.u-p-55{padding:1.71875rem!important}.u-m-l-55{margin-left:1.71875rem!important}.u-p-l-55{padding-left:1.71875rem!important}.u-margin-left-55{margin-left:1.71875rem!important}.u-padding-left-55{padding-left:1.71875rem!important}.u-m-t-55{margin-top:1.71875rem!important}.u-p-t-55{padding-top:1.71875rem!important}.u-margin-top-55{margin-top:1.71875rem!important}.u-padding-top-55{padding-top:1.71875rem!important}.u-m-r-55{margin-right:1.71875rem!important}.u-p-r-55{padding-right:1.71875rem!important}.u-margin-right-55{margin-right:1.71875rem!important}.u-padding-right-55{padding-right:1.71875rem!important}.u-m-b-55{margin-bottom:1.71875rem!important}.u-p-b-55{padding-bottom:1.71875rem!important}.u-margin-bottom-55{margin-bottom:1.71875rem!important}.u-padding-bottom-55{padding-bottom:1.71875rem!important}.u-margin-56,.u-m-56{margin:1.75rem!important}.u-padding-56,.u-p-56{padding:1.75rem!important}.u-m-l-56{margin-left:1.75rem!important}.u-p-l-56{padding-left:1.75rem!important}.u-margin-left-56{margin-left:1.75rem!important}.u-padding-left-56{padding-left:1.75rem!important}.u-m-t-56{margin-top:1.75rem!important}.u-p-t-56{padding-top:1.75rem!important}.u-margin-top-56{margin-top:1.75rem!important}.u-padding-top-56{padding-top:1.75rem!important}.u-m-r-56{margin-right:1.75rem!important}.u-p-r-56{padding-right:1.75rem!important}.u-margin-right-56{margin-right:1.75rem!important}.u-padding-right-56{padding-right:1.75rem!important}.u-m-b-56{margin-bottom:1.75rem!important}.u-p-b-56{padding-bottom:1.75rem!important}.u-margin-bottom-56{margin-bottom:1.75rem!important}.u-padding-bottom-56{padding-bottom:1.75rem!important}.u-margin-58,.u-m-58{margin:1.8125rem!important}.u-padding-58,.u-p-58{padding:1.8125rem!important}.u-m-l-58{margin-left:1.8125rem!important}.u-p-l-58{padding-left:1.8125rem!important}.u-margin-left-58{margin-left:1.8125rem!important}.u-padding-left-58{padding-left:1.8125rem!important}.u-m-t-58{margin-top:1.8125rem!important}.u-p-t-58{padding-top:1.8125rem!important}.u-margin-top-58{margin-top:1.8125rem!important}.u-padding-top-58{padding-top:1.8125rem!important}.u-m-r-58{margin-right:1.8125rem!important}.u-p-r-58{padding-right:1.8125rem!important}.u-margin-right-58{margin-right:1.8125rem!important}.u-padding-right-58{padding-right:1.8125rem!important}.u-m-b-58{margin-bottom:1.8125rem!important}.u-p-b-58{padding-bottom:1.8125rem!important}.u-margin-bottom-58{margin-bottom:1.8125rem!important}.u-padding-bottom-58{padding-bottom:1.8125rem!important}.u-margin-60,.u-m-60{margin:1.875rem!important}.u-padding-60,.u-p-60{padding:1.875rem!important}.u-m-l-60{margin-left:1.875rem!important}.u-p-l-60{padding-left:1.875rem!important}.u-margin-left-60{margin-left:1.875rem!important}.u-padding-left-60{padding-left:1.875rem!important}.u-m-t-60{margin-top:1.875rem!important}.u-p-t-60{padding-top:1.875rem!important}.u-margin-top-60{margin-top:1.875rem!important}.u-padding-top-60{padding-top:1.875rem!important}.u-m-r-60{margin-right:1.875rem!important}.u-p-r-60{padding-right:1.875rem!important}.u-margin-right-60{margin-right:1.875rem!important}.u-padding-right-60{padding-right:1.875rem!important}.u-m-b-60{margin-bottom:1.875rem!important}.u-p-b-60{padding-bottom:1.875rem!important}.u-margin-bottom-60{margin-bottom:1.875rem!important}.u-padding-bottom-60{padding-bottom:1.875rem!important}.u-margin-62,.u-m-62{margin:1.9375rem!important}.u-padding-62,.u-p-62{padding:1.9375rem!important}.u-m-l-62{margin-left:1.9375rem!important}.u-p-l-62{padding-left:1.9375rem!important}.u-margin-left-62{margin-left:1.9375rem!important}.u-padding-left-62{padding-left:1.9375rem!important}.u-m-t-62{margin-top:1.9375rem!important}.u-p-t-62{padding-top:1.9375rem!important}.u-margin-top-62{margin-top:1.9375rem!important}.u-padding-top-62{padding-top:1.9375rem!important}.u-m-r-62{margin-right:1.9375rem!important}.u-p-r-62{padding-right:1.9375rem!important}.u-margin-right-62{margin-right:1.9375rem!important}.u-padding-right-62{padding-right:1.9375rem!important}.u-m-b-62{margin-bottom:1.9375rem!important}.u-p-b-62{padding-bottom:1.9375rem!important}.u-margin-bottom-62{margin-bottom:1.9375rem!important}.u-padding-bottom-62{padding-bottom:1.9375rem!important}.u-margin-64,.u-m-64{margin:2rem!important}.u-padding-64,.u-p-64{padding:2rem!important}.u-m-l-64{margin-left:2rem!important}.u-p-l-64{padding-left:2rem!important}.u-margin-left-64{margin-left:2rem!important}.u-padding-left-64{padding-left:2rem!important}.u-m-t-64{margin-top:2rem!important}.u-p-t-64{padding-top:2rem!important}.u-margin-top-64{margin-top:2rem!important}.u-padding-top-64{padding-top:2rem!important}.u-m-r-64{margin-right:2rem!important}.u-p-r-64{padding-right:2rem!important}.u-margin-right-64{margin-right:2rem!important}.u-padding-right-64{padding-right:2rem!important}.u-m-b-64{margin-bottom:2rem!important}.u-p-b-64{padding-bottom:2rem!important}.u-margin-bottom-64{margin-bottom:2rem!important}.u-padding-bottom-64{padding-bottom:2rem!important}.u-margin-65,.u-m-65{margin:2.03125rem!important}.u-padding-65,.u-p-65{padding:2.03125rem!important}.u-m-l-65{margin-left:2.03125rem!important}.u-p-l-65{padding-left:2.03125rem!important}.u-margin-left-65{margin-left:2.03125rem!important}.u-padding-left-65{padding-left:2.03125rem!important}.u-m-t-65{margin-top:2.03125rem!important}.u-p-t-65{padding-top:2.03125rem!important}.u-margin-top-65{margin-top:2.03125rem!important}.u-padding-top-65{padding-top:2.03125rem!important}.u-m-r-65{margin-right:2.03125rem!important}.u-p-r-65{padding-right:2.03125rem!important}.u-margin-right-65{margin-right:2.03125rem!important}.u-padding-right-65{padding-right:2.03125rem!important}.u-m-b-65{margin-bottom:2.03125rem!important}.u-p-b-65{padding-bottom:2.03125rem!important}.u-margin-bottom-65{margin-bottom:2.03125rem!important}.u-padding-bottom-65{padding-bottom:2.03125rem!important}.u-margin-66,.u-m-66{margin:2.0625rem!important}.u-padding-66,.u-p-66{padding:2.0625rem!important}.u-m-l-66{margin-left:2.0625rem!important}.u-p-l-66{padding-left:2.0625rem!important}.u-margin-left-66{margin-left:2.0625rem!important}.u-padding-left-66{padding-left:2.0625rem!important}.u-m-t-66{margin-top:2.0625rem!important}.u-p-t-66{padding-top:2.0625rem!important}.u-margin-top-66{margin-top:2.0625rem!important}.u-padding-top-66{padding-top:2.0625rem!important}.u-m-r-66{margin-right:2.0625rem!important}.u-p-r-66{padding-right:2.0625rem!important}.u-margin-right-66{margin-right:2.0625rem!important}.u-padding-right-66{padding-right:2.0625rem!important}.u-m-b-66{margin-bottom:2.0625rem!important}.u-p-b-66{padding-bottom:2.0625rem!important}.u-margin-bottom-66{margin-bottom:2.0625rem!important}.u-padding-bottom-66{padding-bottom:2.0625rem!important}.u-margin-68,.u-m-68{margin:2.125rem!important}.u-padding-68,.u-p-68{padding:2.125rem!important}.u-m-l-68{margin-left:2.125rem!important}.u-p-l-68{padding-left:2.125rem!important}.u-margin-left-68{margin-left:2.125rem!important}.u-padding-left-68{padding-left:2.125rem!important}.u-m-t-68{margin-top:2.125rem!important}.u-p-t-68{padding-top:2.125rem!important}.u-margin-top-68{margin-top:2.125rem!important}.u-padding-top-68{padding-top:2.125rem!important}.u-m-r-68{margin-right:2.125rem!important}.u-p-r-68{padding-right:2.125rem!important}.u-margin-right-68{margin-right:2.125rem!important}.u-padding-right-68{padding-right:2.125rem!important}.u-m-b-68{margin-bottom:2.125rem!important}.u-p-b-68{padding-bottom:2.125rem!important}.u-margin-bottom-68{margin-bottom:2.125rem!important}.u-padding-bottom-68{padding-bottom:2.125rem!important}.u-margin-70,.u-m-70{margin:2.1875rem!important}.u-padding-70,.u-p-70{padding:2.1875rem!important}.u-m-l-70{margin-left:2.1875rem!important}.u-p-l-70{padding-left:2.1875rem!important}.u-margin-left-70{margin-left:2.1875rem!important}.u-padding-left-70{padding-left:2.1875rem!important}.u-m-t-70{margin-top:2.1875rem!important}.u-p-t-70{padding-top:2.1875rem!important}.u-margin-top-70{margin-top:2.1875rem!important}.u-padding-top-70{padding-top:2.1875rem!important}.u-m-r-70{margin-right:2.1875rem!important}.u-p-r-70{padding-right:2.1875rem!important}.u-margin-right-70{margin-right:2.1875rem!important}.u-padding-right-70{padding-right:2.1875rem!important}.u-m-b-70{margin-bottom:2.1875rem!important}.u-p-b-70{padding-bottom:2.1875rem!important}.u-margin-bottom-70{margin-bottom:2.1875rem!important}.u-padding-bottom-70{padding-bottom:2.1875rem!important}.u-margin-72,.u-m-72{margin:2.25rem!important}.u-padding-72,.u-p-72{padding:2.25rem!important}.u-m-l-72{margin-left:2.25rem!important}.u-p-l-72{padding-left:2.25rem!important}.u-margin-left-72{margin-left:2.25rem!important}.u-padding-left-72{padding-left:2.25rem!important}.u-m-t-72{margin-top:2.25rem!important}.u-p-t-72{padding-top:2.25rem!important}.u-margin-top-72{margin-top:2.25rem!important}.u-padding-top-72{padding-top:2.25rem!important}.u-m-r-72{margin-right:2.25rem!important}.u-p-r-72{padding-right:2.25rem!important}.u-margin-right-72{margin-right:2.25rem!important}.u-padding-right-72{padding-right:2.25rem!important}.u-m-b-72{margin-bottom:2.25rem!important}.u-p-b-72{padding-bottom:2.25rem!important}.u-margin-bottom-72{margin-bottom:2.25rem!important}.u-padding-bottom-72{padding-bottom:2.25rem!important}.u-margin-74,.u-m-74{margin:2.3125rem!important}.u-padding-74,.u-p-74{padding:2.3125rem!important}.u-m-l-74{margin-left:2.3125rem!important}.u-p-l-74{padding-left:2.3125rem!important}.u-margin-left-74{margin-left:2.3125rem!important}.u-padding-left-74{padding-left:2.3125rem!important}.u-m-t-74{margin-top:2.3125rem!important}.u-p-t-74{padding-top:2.3125rem!important}.u-margin-top-74{margin-top:2.3125rem!important}.u-padding-top-74{padding-top:2.3125rem!important}.u-m-r-74{margin-right:2.3125rem!important}.u-p-r-74{padding-right:2.3125rem!important}.u-margin-right-74{margin-right:2.3125rem!important}.u-padding-right-74{padding-right:2.3125rem!important}.u-m-b-74{margin-bottom:2.3125rem!important}.u-p-b-74{padding-bottom:2.3125rem!important}.u-margin-bottom-74{margin-bottom:2.3125rem!important}.u-padding-bottom-74{padding-bottom:2.3125rem!important}.u-margin-75,.u-m-75{margin:2.34375rem!important}.u-padding-75,.u-p-75{padding:2.34375rem!important}.u-m-l-75{margin-left:2.34375rem!important}.u-p-l-75{padding-left:2.34375rem!important}.u-margin-left-75{margin-left:2.34375rem!important}.u-padding-left-75{padding-left:2.34375rem!important}.u-m-t-75{margin-top:2.34375rem!important}.u-p-t-75{padding-top:2.34375rem!important}.u-margin-top-75{margin-top:2.34375rem!important}.u-padding-top-75{padding-top:2.34375rem!important}.u-m-r-75{margin-right:2.34375rem!important}.u-p-r-75{padding-right:2.34375rem!important}.u-margin-right-75{margin-right:2.34375rem!important}.u-padding-right-75{padding-right:2.34375rem!important}.u-m-b-75{margin-bottom:2.34375rem!important}.u-p-b-75{padding-bottom:2.34375rem!important}.u-margin-bottom-75{margin-bottom:2.34375rem!important}.u-padding-bottom-75{padding-bottom:2.34375rem!important}.u-margin-76,.u-m-76{margin:2.375rem!important}.u-padding-76,.u-p-76{padding:2.375rem!important}.u-m-l-76{margin-left:2.375rem!important}.u-p-l-76{padding-left:2.375rem!important}.u-margin-left-76{margin-left:2.375rem!important}.u-padding-left-76{padding-left:2.375rem!important}.u-m-t-76{margin-top:2.375rem!important}.u-p-t-76{padding-top:2.375rem!important}.u-margin-top-76{margin-top:2.375rem!important}.u-padding-top-76{padding-top:2.375rem!important}.u-m-r-76{margin-right:2.375rem!important}.u-p-r-76{padding-right:2.375rem!important}.u-margin-right-76{margin-right:2.375rem!important}.u-padding-right-76{padding-right:2.375rem!important}.u-m-b-76{margin-bottom:2.375rem!important}.u-p-b-76{padding-bottom:2.375rem!important}.u-margin-bottom-76{margin-bottom:2.375rem!important}.u-padding-bottom-76{padding-bottom:2.375rem!important}.u-margin-78,.u-m-78{margin:2.4375rem!important}.u-padding-78,.u-p-78{padding:2.4375rem!important}.u-m-l-78{margin-left:2.4375rem!important}.u-p-l-78{padding-left:2.4375rem!important}.u-margin-left-78{margin-left:2.4375rem!important}.u-padding-left-78{padding-left:2.4375rem!important}.u-m-t-78{margin-top:2.4375rem!important}.u-p-t-78{padding-top:2.4375rem!important}.u-margin-top-78{margin-top:2.4375rem!important}.u-padding-top-78{padding-top:2.4375rem!important}.u-m-r-78{margin-right:2.4375rem!important}.u-p-r-78{padding-right:2.4375rem!important}.u-margin-right-78{margin-right:2.4375rem!important}.u-padding-right-78{padding-right:2.4375rem!important}.u-m-b-78{margin-bottom:2.4375rem!important}.u-p-b-78{padding-bottom:2.4375rem!important}.u-margin-bottom-78{margin-bottom:2.4375rem!important}.u-padding-bottom-78{padding-bottom:2.4375rem!important}.u-margin-80,.u-m-80{margin:2.5rem!important}.u-padding-80,.u-p-80{padding:2.5rem!important}.u-m-l-80{margin-left:2.5rem!important}.u-p-l-80{padding-left:2.5rem!important}.u-margin-left-80{margin-left:2.5rem!important}.u-padding-left-80{padding-left:2.5rem!important}.u-m-t-80{margin-top:2.5rem!important}.u-p-t-80{padding-top:2.5rem!important}.u-margin-top-80{margin-top:2.5rem!important}.u-padding-top-80{padding-top:2.5rem!important}.u-m-r-80{margin-right:2.5rem!important}.u-p-r-80{padding-right:2.5rem!important}.u-margin-right-80{margin-right:2.5rem!important}.u-padding-right-80{padding-right:2.5rem!important}.u-m-b-80{margin-bottom:2.5rem!important}.u-p-b-80{padding-bottom:2.5rem!important}.u-margin-bottom-80{margin-bottom:2.5rem!important}.u-padding-bottom-80{padding-bottom:2.5rem!important}.u-primary-light{color:var(--primary-color-light)}.u-warning-light{color:#fdf6ec}.u-success-light{color:#f5fff0}.u-error-light{color:#fef0f0}.u-info-light{color:#f4f4f5}.u-primary-light-bg{background-color:var(--primary-color-light)}.u-warning-light-bg{background-color:#fdf6ec}.u-success-light-bg{background-color:#f5fff0}.u-error-light-bg{background-color:#fef0f0}.u-info-light-bg{background-color:#f4f4f5}.u-primary-dark{color:var(--primary-color-dark)}.u-warning-dark{color:#f1a532}.u-success-dark{color:#53c21d}.u-error-dark{color:#e45656}.u-info-dark{color:#767a82}.u-primary-dark-bg{background-color:var(--primary-color-dark)}.u-warning-dark-bg{background-color:#f1a532}.u-success-dark-bg{background-color:#53c21d}.u-error-dark-bg{background-color:#e45656}.u-info-dark-bg{background-color:#767a82}.u-primary-disabled{color:var(--primary-color-disabled)}.u-warning-disabled{color:#f9d39b}.u-success-disabled{color:#a9e08f}.u-error-disabled{color:#f7b2b2}.u-info-disabled{color:#c4c6c9}.u-primary{color:var(--primary-color)}.u-warning{color:#f9ae3d}.u-success{color:#5ac725}.u-error{color:#f56c6c}.u-info{color:#909399}.u-primary-bg{background-color:var(--primary-color)}.u-warning-bg{background-color:#f9ae3d}.u-success-bg{background-color:#5ac725}.u-error-bg{background-color:#f56c6c}.u-info-bg{background-color:#909399}.u-main-color{color:#303133}.u-content-color{color:#606266}.u-tips-color{color:#909193}.u-light-color{color:#c0c4cc}.u-safe-area-inset-top{padding-top:0;padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top)}.u-safe-area-inset-right{padding-right:0;padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right)}.u-safe-area-inset-bottom{padding-bottom:0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.u-safe-area-inset-left{padding-left:0;padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left)}uni-toast{z-index:10090}uni-toast .uni-toast{z-index:10090}::-webkit-scrollbar{display:none;width:0!important;height:0!important;-webkit-appearance:none;background:transparent}:root,uni-page-body{--primary-color: #007aff;--primary-color-dark: #398ade;--primary-color-disabled: #9acafc;--primary-color-light: #ecf5ff;--page-bg-color: #f7f7f7}@font-face{font-family:myFont;src:url(/wap/assets/custom-b4304d3e.ttf) format("truetype")}.price-font{font-family:myFont,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Segoe UI,Arial,Roboto,PingFang SC,Hiragino Sans GB,Microsoft Yahei,"sans-serif"}uni-page-body{line-height:1.8;font-family:PingFang SC,Roboto Medium,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Segoe UI,Arial,Roboto,PingFang SC,Hiragino Sans GB,Microsoft Yahei,"sans-serif";font-size:.875rem;color:#303133}uni-input,.uni-input{font-size:.875rem}uni-button{font-size:.875rem;border-radius:.3125rem;line-height:2.8}uni-button:after{border:none!important}.\!bg-\[\#ff4500\]{--tw-bg-opacity: 1 !important;background-color:rgba(255,69,0,var(--tw-bg-opacity))!important}.bg-page{background-color:var(--page-bg-color)}.bg-white{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.bg-primary{background-color:var(--primary-color)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgba(243,244,246,var(--tw-bg-opacity))}.bg-\[\#424040\]{--tw-bg-opacity: 1;background-color:rgba(66,64,64,var(--tw-bg-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgba(229,231,235,var(--tw-border-opacity))}.border-white{--tw-border-opacity: 1;border-color:rgba(255,255,255,var(--tw-border-opacity))}.border-\[\#eee\]{--tw-border-opacity: 1;border-color:rgba(238,238,238,var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgba(209,213,219,var(--tw-border-opacity))}.\!border-\[\#eee\]{--tw-border-opacity: 1 !important;border-color:rgba(238,238,238,var(--tw-border-opacity))!important}.\!border-\[\#f5f5f5\]{--tw-border-opacity: 1 !important;border-color:rgba(245,245,245,var(--tw-border-opacity))!important}.border-gray-400{--tw-border-opacity: 1;border-color:rgba(156,163,175,var(--tw-border-opacity))}.border-primary{border-color:var(--primary-color)}.rounded-md{border-radius:.375rem}.rounded-\[24rpx\]{border-radius:.75rem}.rounded-full{border-radius:9999px}.rounded{border-radius:.25rem}.rounded-bl-none{border-bottom-left-radius:0}.border-solid{border-style:solid}.border-0{border-width:0px}.border-1{border-width:1px}.border-t-0{border-top-width:0px}.border-l-0{border-left-width:0px}.border-r-0{border-right-width:0px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-l{border-left-width:1px}.border-b-0{border-bottom-width:0px}.border-b-\[2rpx\]{border-bottom-width:.0625rem}.border-r-\[2px\]{border-right-width:2px}.\!border-b{border-bottom-width:1px!important}.border-b-\[1px\]{border-bottom-width:1px}.box-border{box-sizing:border-box}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.font-bold{font-weight:700}.font-semibold{font-weight:600}.h-10{height:2.5rem}.h-full{height:100%}.h-screen{height:100vh}.h-\[60rpx\]{height:1.875rem}.h-\[44rpx\]{height:1.375rem}.h-\[30rpx\]{height:.9375rem}.h-\[500rpx\]{height:15.625rem}.\!h-\[80rpx\]{height:2.5rem!important}.h-\[100rpx\]{height:3.125rem}.h-\[48rpx\]{height:1.5rem}.h-\[20rpx\]{height:.625rem}.h-\[32rpx\]{height:1rem}.h-\[70rpx\]{height:2.1875rem}.h-\[40rpx\]{height:1.25rem}.h-\[88rpx\]{height:2.75rem}.h-\[200rpx\]{height:6.25rem}.h-\[50vh\]{height:50vh}.h-\[140rpx\]{height:4.375rem}.h-\[75vh\]{height:75vh}.h-\[76rpx\]{height:2.375rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.66rem;line-height:1.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-2xl{font-size:1.75rem;line-height:2.25rem}.text-\[30rpx\]{font-size:.9375rem;line-height:1}.text-\[24rpx\]{font-size:.75rem;line-height:1}.text-\[1\.6rem\]{font-size:1.6rem;line-height:1}.text-\[80rpx\]{font-size:2.5rem;line-height:1}.text-\[26rpx\]{font-size:.8125rem;line-height:1}.text-\[60rpx\]{font-size:1.875rem;line-height:1}.text-\[28rpx\]{font-size:.875rem;line-height:1}.text-\[70rpx\]{font-size:2.1875rem;line-height:1}.text-\[40rpx\]{font-size:1.25rem;line-height:1}.text-\[15px\]{font-size:15px;line-height:1}.text-\[14px\]{font-size:14px;line-height:1}.text-\[12px\]{font-size:12px;line-height:1}.leading-\[1\.3\]{line-height:1.3}.leading-\[1\.6\]{line-height:1.6}.leading-normal{line-height:1.5}.leading-0{line-height:0rem}.leading-none{line-height:1}.leading-\[80rpx\]{line-height:2.5rem}.leading-\[70rpx\]{line-height:2.1875rem}.leading-8{line-height:2rem}.leading-loose{line-height:2}.m-\[30rpx\]{margin:.9375rem}.m-0{margin:0}.\!mx-\[30rpx\]{margin-left:.9375rem!important;margin-right:.9375rem!important}.mx-\[30rpx\]{margin-left:.9375rem;margin-right:.9375rem}.mx-\[32rpx\]{margin-left:1rem;margin-right:1rem}.my-\[20rpx\]{margin-top:.625rem;margin-bottom:.625rem}.my-\[10rpx\]{margin-top:.3125rem;margin-bottom:.3125rem}.mb-\[20rpx\]{margin-bottom:.625rem}.ml-\[20rpx\]{margin-left:.625rem}.mt-\[8rpx\]{margin-top:.25rem}.mr-\[20rpx\]{margin-right:.625rem}.ml-\[32rpx\]{margin-left:1rem}.mr-\[52rpx\]{margin-right:1.625rem}.ml-\[22rpx\]{margin-left:.6875rem}.mt-\[10rpx\]{margin-top:.3125rem}.ml-\[10rpx\]{margin-left:.3125rem}.mb-0{margin-bottom:0}.-mr-\[8rpx\]{margin-right:-.25rem}.-ml-\[8rpx\]{margin-left:-.25rem}.ml-\[30rpx\]{margin-left:.9375rem}.\!mb-\[40rpx\]{margin-bottom:1.25rem!important}.ml-\[16rpx\]{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-\[8rpx\]{margin-right:.25rem}.mb-\[100rpx\]{margin-bottom:3.125rem}.mt-\[40rpx\]{margin-top:1.25rem}.mt-\[30rpx\]{margin-top:.9375rem}.mt-\[60rpx\]{margin-top:1.875rem}.mb-\[50rpx\]{margin-bottom:1.5625rem}.mt-\[20rpx\]{margin-top:.625rem}.mt-\[80rpx\]{margin-top:2.5rem}.mb-\[80rpx\]{margin-bottom:2.5rem}.mb-\[40rpx\]{margin-bottom:1.25rem}.mb-\[10rpx\]{margin-bottom:.3125rem}.mr-\[10rpx\]{margin-right:.3125rem}.mt-\[50rpx\]{margin-top:1.5625rem}.mt-\[100rpx\]{margin-top:3.125rem}.mt-\[16rpx\]{margin-top:.5rem}.mr-1{margin-right:.25rem}.mt-3{margin-top:.75rem}.mt-2{margin-top:.5rem}.mt-5{margin-top:1.25rem}.mt-0{margin-top:0}.mt-\[10px\]{margin-top:10px}.mt-\[18rpx\]{margin-top:.5625rem}.mr-\[4rpx\]{margin-right:.125rem}.max-h-\[36rpx\]{max-height:1.125rem}.max-w-\[130rpx\]{max-width:4.0625rem}.max-w-\[200rpx\]{max-width:6.25rem}.max-w-\[300rpx\]{max-width:9.375rem}.max-w-\[36rpx\]{max-width:1.125rem}.min-h-\[100vh\]{min-height:100vh}.overflow-hidden{overflow:hidden}.p-\[20rpx\]{padding:.625rem}.p-2{padding:.5rem}.p-\[30rpx\]{padding:.9375rem}.p-\[24rpx\]{padding:.75rem}.p-\[10px\]{padding:10px}.p-0{padding:0}.py-\[30rpx\]{padding-top:.9375rem;padding-bottom:.9375rem}.px-\[32rpx\]{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-\[60rpx\]{padding-left:1.875rem;padding-right:1.875rem}.py-\[50rpx\]{padding-top:1.5625rem;padding-bottom:1.5625rem}.px-\[10rpx\]{padding-left:.3125rem;padding-right:.3125rem}.px-\[30rpx\]{padding-left:.9375rem;padding-right:.9375rem}.py-\[20rpx\]{padding-top:.625rem;padding-bottom:.625rem}.px-\[20rpx\]{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-\[10rpx\]{padding-top:.3125rem;padding-bottom:.3125rem}.py-\[26rpx\]{padding-top:.8125rem;padding-bottom:.8125rem}.py-\[18rpx\]{padding-top:.5625rem;padding-bottom:.5625rem}.pt-1\.5{padding-top:.375rem}.pt-\[20rpx\]{padding-top:.625rem}.pt-\[34rpx\]{padding-top:1.0625rem}.pl-\[28rpx\]{padding-left:.875rem}.pr-\[22rpx\]{padding-right:.6875rem}.pt-\[100rpx\]{padding-top:3.125rem}.pb-\[30rpx\]{padding-bottom:.9375rem}.pt-\[20vh\]{padding-top:20vh}.pt-\[15vh\]{padding-top:15vh}.pt-0{padding-top:0}.pl-\[10rpx\]{padding-left:.3125rem}.pb-4{padding-bottom:1rem}.pt-7{padding-top:1.75rem}.pt-\[10rpx\]{padding-top:.3125rem}.pt-\[30rpx\]{padding-top:.9375rem}.pr-\[30rpx\]{padding-right:.9375rem}.pb-\[200rpx\]{padding-bottom:6.25rem}.pr-\[50rpx\]{padding-right:1.5625rem}.pb-\[20rpx\]{padding-bottom:.625rem}.pt-\[40rpx\]{padding-top:1.25rem}.pl-\[30rpx\]{padding-left:.9375rem}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-top-\[10rpx\]{top:-.3125rem}.-right-\[24rpx\]{right:-.75rem}.right-0{right:0px}.top-2{top:.5rem}.top-\[50\%\]{top:50%}.right-\[10px\]{right:10px}.right-3{right:.75rem}.top-11{top:2.75rem}.text-center{text-align:center}.text-right{text-align:right}.text-\[\#999\]{--tw-text-opacity: 1;color:rgba(153,153,153,var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.text-\[\#222222\]{--tw-text-opacity: 1;color:rgba(34,34,34,var(--tw-text-opacity))}.text-\[\#696B70\]{--tw-text-opacity: 1;color:rgba(105,107,112,var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgba(156,163,175,var(--tw-text-opacity))}.text-primary{color:var(--primary-color)}.text-gray-300{--tw-text-opacity: 1;color:rgba(209,213,219,var(--tw-text-opacity))}.text-\[\#188dfb\]{--tw-text-opacity: 1;color:rgba(24,141,251,var(--tw-text-opacity))}.text-gray-subtitle{--tw-text-opacity: 1;color:rgba(117,117,117,var(--tw-text-opacity))}.text-gray-placeholder{--tw-text-opacity: 1;color:rgba(192,196,204,var(--tw-text-opacity))}.text-\[\#43c93e\]{--tw-text-opacity: 1;color:rgba(67,201,62,var(--tw-text-opacity))}.text-\[\#bbb\]{--tw-text-opacity: 1;color:rgba(187,187,187,var(--tw-text-opacity))}.text-black{--tw-text-opacity: 1;color:rgba(22,22,22,var(--tw-text-opacity))}.text-\[\#c3c4d5\]{--tw-text-opacity: 1;color:rgba(195,196,213,var(--tw-text-opacity))}.text-red{--tw-text-opacity: 1;color:rgba(237,27,38,var(--tw-text-opacity))}.text-\[red\]{--tw-text-opacity: 1;color:rgba(255,0,0,var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgba(107,114,128,var(--tw-text-opacity))}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.w-10{width:2.5rem}.w-full{width:100%}.\!w-auto{width:auto!important}.w-screen{width:100vw}.w-80{width:20rem}.w-22{width:5.375rem}.w-\[430rpx\]{width:13.4375rem}.w-\[30rpx\]{width:.9375rem}.w-\[600rpx\]{width:18.75rem}.w-\[100rpx\]{width:3.125rem}.w-\[80rpx\]{width:2.5rem}.w-\[40rpx\]{width:1.25rem}.w-\[70rpx\]{width:2.1875rem}.w-\[60rpx\]{width:1.875rem}.w-\[240rpx\]{width:7.5rem}.w-\[140rpx\]{width:4.375rem}.transform{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate: 0;--tw-rotate-x: 0;--tw-rotate-y: 0;--tw-rotate-z: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-scale-z: 1;transform:translate(var(--tw-translate-x)) translateY(var(--tw-translate-y)) translateZ(var(--tw-translate-z)) rotate(var(--tw-rotate)) rotateX(var(--tw-rotate-x)) rotateY(var(--tw-rotate-y)) rotate(var(--tw-rotate-z)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) scaleZ(var(--tw-scale-z))}.scale-80{--tw-scale-x: .8;--tw-scale-y: .8;--tw-scale-z: .8}.-translate-y-\[50\%\]{--tw-translate-y: -50%}.transition,.transition\(\){transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.blur{--tw-blur: blur(8px)} diff --git a/niucloud/public/wap/assets/index-7cabbaaa.css b/niucloud/public/wap/assets/index-7cabbaaa.css new file mode 100644 index 0000000..815e7e4 --- /dev/null +++ b/niucloud/public/wap/assets/index-7cabbaaa.css @@ -0,0 +1 @@ +.using-hidden[data-v-2b4a4991]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;white-space:break-spaces}.multi-hidden[data-v-2b4a4991]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.graphic-nav-fixed[data-v-d51849eb] .uni-scroll-view-content{display:flex;flex-wrap:wrap}.graphic-nav-singleSlide[data-v-d51849eb] .uni-scroll-view-content{display:flex}uni-view[data-v-7109316b],uni-scroll-view[data-v-7109316b],uni-swiper-item[data-v-7109316b]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-notice[data-v-7109316b]{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.u-notice__left-icon[data-v-7109316b]{align-items:center;margin-right:5px}.u-notice__right-icon[data-v-7109316b]{margin-left:5px;align-items:center}.u-notice__swiper[data-v-7109316b]{height:16px;display:flex;flex-direction:row;align-items:center;flex:1}.u-notice__swiper__item[data-v-7109316b]{display:flex;flex-direction:row;align-items:center;overflow:hidden}.u-notice__swiper__item__text[data-v-7109316b]{font-size:14px;color:#f9ae3d}uni-view[data-v-8086f62b],uni-scroll-view[data-v-8086f62b],uni-swiper-item[data-v-8086f62b]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-notice[data-v-8086f62b]{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.u-notice__left-icon[data-v-8086f62b]{align-items:center;margin-right:5px}.u-notice__right-icon[data-v-8086f62b]{margin-left:5px;align-items:center}.u-notice__content[data-v-8086f62b]{text-align:right;flex:1;display:flex;flex-direction:row;flex-wrap:nowrap;overflow:hidden}.u-notice__content__text[data-v-8086f62b]{font-size:14px;color:#f9ae3d;padding-left:100%;word-break:keep-all;white-space:nowrap;animation:u-loop-animation-8086f62b 10s linear infinite both;display:flex;flex-direction:row}@keyframes u-loop-animation-8086f62b{0%{transform:translateZ(0)}to{transform:translate3d(-100%,0,0)}}uni-view[data-v-7b451c96],uni-scroll-view[data-v-7b451c96],uni-swiper-item[data-v-7b451c96]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-notice-bar[data-v-7b451c96]{overflow:hidden;padding:9px 12px;flex:1}.using-hidden[data-v-0b7426ad]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;white-space:break-spaces}.multi-hidden[data-v-0b7426ad]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rubik-cube[data-v-a4d7422f]{overflow:hidden;display:flex;flex-wrap:wrap;justify-content:space-between}.rubik-cube .item[data-v-a4d7422f]{text-align:center;line-height:0;overflow:hidden}.rubik-cube .item uni-image[data-v-a4d7422f]{width:100%;max-width:100%;height:100%}.rubik-cube .item.row1-of2[data-v-a4d7422f]{box-sizing:border-box;margin-top:0!important;margin-bottom:0!important}.rubik-cube .item.row1-of2[data-v-a4d7422f]:nth-child(1){margin-left:0!important}.rubik-cube .item.row1-of2[data-v-a4d7422f]:nth-child(2){margin-right:0!important}.rubik-cube .item.row1-of3[data-v-a4d7422f]{box-sizing:border-box;margin-top:0!important;margin-bottom:0!important}.rubik-cube .item.row1-of3[data-v-a4d7422f]:nth-child(1){margin-left:0!important}.rubik-cube .item.row1-of3[data-v-a4d7422f]:nth-child(3){margin-right:0!important}.rubik-cube .item.row1-of4[data-v-a4d7422f]{box-sizing:border-box;margin-top:0!important;margin-bottom:0!important}.rubik-cube .item.row1-of4[data-v-a4d7422f]:nth-child(1){margin-left:0!important}.rubik-cube .item.row1-of4[data-v-a4d7422f]:nth-child(4){margin-right:0!important}.rubik-cube .item.row2-lt-of2-rt[data-v-a4d7422f]{display:inline-block;box-sizing:border-box}.rubik-cube .item.row2-lt-of2-rt[data-v-a4d7422f]:nth-child(1){margin-left:0!important;margin-top:0!important}.rubik-cube .item.row2-lt-of2-rt[data-v-a4d7422f]:nth-child(2){margin-right:0!important;margin-top:0!important}.rubik-cube .item.row2-lt-of2-rt[data-v-a4d7422f]:nth-child(3){margin-left:0!important;margin-bottom:0!important}.rubik-cube .item.row2-lt-of2-rt[data-v-a4d7422f]:nth-child(4){margin-right:0!important;margin-bottom:0!important}.rubik-cube .template-left[data-v-a4d7422f],.rubik-cube .template-right[data-v-a4d7422f]{box-sizing:border-box}.rubik-cube .template-left .item.row1-lt-of2-rt[data-v-a4d7422f]:nth-child(1){margin-bottom:0}.rubik-cube .template-right .item.row1-lt-of2-rt[data-v-a4d7422f]:nth-child(2){margin-bottom:0!important}.rubik-cube.row1-lt-of2-rt .template-right[data-v-a4d7422f]{display:flex;flex-direction:column;justify-content:space-between}.rubik-cube .item.row1-tp-of2-bm[data-v-a4d7422f]:nth-child(1){width:100%;box-sizing:border-box;margin-top:0!important;margin-left:0!important;margin-right:0!important}.rubik-cube .item.row1-tp-of2-bm[data-v-a4d7422f]:nth-child(2){box-sizing:border-box;margin-left:0!important;margin-bottom:0!important}.rubik-cube .item.row1-tp-of2-bm[data-v-a4d7422f]:nth-child(3){box-sizing:border-box;margin-right:0!important;margin-bottom:0!important}.rubik-cube .template-left .item.row1-lt-of1-tp-of2-bm[data-v-a4d7422f]{width:100%;box-sizing:border-box}.rubik-cube .template-bottom[data-v-a4d7422f]{display:flex;align-items:center;justify-content:space-between}.rubik-cube .template-bottom .item[data-v-a4d7422f]:nth-child(2){margin-right:0!important}.using-hidden[data-v-18e69c46]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;white-space:break-spaces}.multi-hidden[data-v-18e69c46]{word-break:break-all;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}uni-view[data-v-b5faebd4],uni-scroll-view[data-v-b5faebd4],uni-swiper-item[data-v-b5faebd4]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-tabbar-item[data-v-b5faebd4]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;width:100%;height:100%}.u-tabbar-item__icon[data-v-b5faebd4]{display:flex;flex-direction:row;position:relative;width:4.6875rem;justify-content:center}.u-tabbar-item__text[data-v-b5faebd4]{margin-top:2px;font-size:12px;color:#606266}.tab-bar-placeholder[data-v-77456ed4]{padding-bottom:calc(constant(safe-area-inset-bottom) + 3.5rem);padding-bottom:calc(env(safe-area-inset-bottom) + 3.5rem)}.draggable-element.decorate[data-v-459b73fc]:hover:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:.125rem solid var(--primary-color);z-index:10;pointer-events:none;cursor:move;border-style:dotted}.draggable-element.decorate.selected[data-v-459b73fc]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:.125rem solid var(--primary-color);z-index:10;pointer-events:none;cursor:move} diff --git a/niucloud/public/wap/assets/index-9b35ec57.css b/niucloud/public/wap/assets/index-9b35ec57.css new file mode 100644 index 0000000..4abe467 --- /dev/null +++ b/niucloud/public/wap/assets/index-9b35ec57.css @@ -0,0 +1 @@ +.bg-index[data-v-1f57c7d4]{width:100%;height:100%;box-sizing:border-box;background-size:100%!important;background-repeat:no-repeat!important} diff --git a/niucloud/public/wap/assets/index-9e578843.css b/niucloud/public/wap/assets/index-9e578843.css new file mode 100644 index 0000000..f0cfc23 --- /dev/null +++ b/niucloud/public/wap/assets/index-9e578843.css @@ -0,0 +1 @@ +.navigate-back[data-v-31a9d715]{position:absolute;top:1.0625rem;left:1.0625rem;z-index:999;font-size:16px} diff --git a/niucloud/public/wap/assets/index-c1dbaba4.js b/niucloud/public/wap/assets/index-c1dbaba4.js new file mode 100644 index 0000000..e6dc312 --- /dev/null +++ b/niucloud/public/wap/assets/index-c1dbaba4.js @@ -0,0 +1,22 @@ +const match = location.href.match(/\/wap\/(\d*)\//);var e=Object.defineProperty,t=(t,n,o)=>(((t,n,o)=>{n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o})(t,"symbol"!=typeof n?n+"":n,o),o);!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver((e=>{for(const n of e)if("childList"===n.type)for(const e of n.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)})).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerpolicy&&(t.referrerPolicy=e.referrerpolicy),"use-credentials"===e.crossorigin?t.credentials="include":"anonymous"===e.crossorigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();const n={},o=function(e,t,o){if(!t||0===t.length)return e();const r=document.getElementsByTagName("link");return Promise.all(t.map((e=>{if((e=function(e){return"/wap/"+e}(e))in n)return;n[e]=!0;const t=e.endsWith(".css"),i=t?'[rel="stylesheet"]':"";if(!!o)for(let n=r.length-1;n>=0;n--){const o=r[n];if(o.href===e&&(!t||"stylesheet"===o.rel))return}else if(document.querySelector(`link[href="${e}"]${i}`))return;const a=document.createElement("link");return a.rel=t?"stylesheet":"modulepreload",t||(a.as="script",a.crossOrigin=""),a.href=e,document.head.appendChild(a),t?new Promise(((t,n)=>{a.addEventListener("load",t),a.addEventListener("error",(()=>n(new Error(`Unable to preload CSS for ${e}`))))})):void 0}))).then((()=>e()))},r=Object.freeze(Object.defineProperty({__proto__:null,default:{"pages.index.index":"Index","pages.article.list":"Information Center","pages.article.detail":"Information detail","pages.member.index":"My","pages.auth.login":"Login","pages.auth.register":"Register","pages.auth.resetpwd":"Retrieve password","pages.setting.index":"Settings","pages.auth.bind":"Bind Mobile"}},Symbol.toStringTag,{value:"Module"})),i=Object.freeze(Object.defineProperty({__proto__:null,default:{"pages.index.index":"","pages.index.close":"站点已关闭","pages.index.nosite":"站点不存在","pages.index.develop":"开发环境配置","pages.index.diy":"","pages.article.list":"资讯中心","pages.article.detail":"文章详情","pages.auth.agreement":"协议","pages.auth.bind":"绑定手机号","pages.auth.login":"登录","pages.auth.register":"注册","pages.auth.resetpwd":"找回密码","pages.member.account":"会员账户","pages.member.account_edit":"编辑会员账户","pages.member.address":"收货地址","pages.member.address_edit":"编辑收货地址","pages.member.apply_cash_out":"申请提现","pages.member.balance":"我的余额","pages.member.cash_out":"提现记录","pages.member.cash_out_detail":"提现详情","pages.member.commission":"我的佣金","pages.member.detailed_account":"流水明细","pages.member.index":"","pages.member.personal":"个人资料","pages.pay.browser":"支付","pages.pay.result":"支付结果","pages.setting.index":"设置","pages.webview.index":""}},Symbol.toStringTag,{value:"Module"}));function a(e,t){const n=Object.create(null),o=e.split(",");for(let r=0;r!!n[e.toLowerCase()]:e=>!!n[e]}function s(e){if(M(e)){const t={};for(let n=0;n{if(e){const n=e.split(c);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function d(e){let t="";if(N(e))t=e;else if(M(e))for(let n=0;ng(e,t)))}const y=e=>N(e)?e:null==e?"":M(e)||D(e)&&(e.toString===F||!B(e.toString))?JSON.stringify(e,v,2):String(e),v=(e,t)=>t&&t.__v_isRef?v(e,t.value):L(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n])=>(e[`${t} =>`]=n,e)),{})}:O(t)?{[`Set(${t.size})`]:[...t.values()]}:!D(t)||M(t)||H(t)?t:String(t),b={},_=[],w=()=>{},x=()=>!1,A=/^on[^a-z]/,E=e=>A.test(e),S=e=>e.startsWith("onUpdate:"),T=Object.assign,k=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},C=Object.prototype.hasOwnProperty,P=(e,t)=>C.call(e,t),M=Array.isArray,L=e=>"[object Map]"===z(e),O=e=>"[object Set]"===z(e),I=e=>"[object Date]"===z(e),B=e=>"function"==typeof e,N=e=>"string"==typeof e,j=e=>"symbol"==typeof e,D=e=>null!==e&&"object"==typeof e,R=e=>D(e)&&B(e.then)&&B(e.catch),F=Object.prototype.toString,z=e=>F.call(e),q=e=>z(e).slice(8,-1),H=e=>"[object Object]"===z(e),U=e=>N(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,V=a(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),W=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},$=/-(\w)/g,Q=W((e=>e.replace($,((e,t)=>t?t.toUpperCase():"")))),X=/\B([A-Z])/g,Y=W((e=>e.replace(X,"-$1").toLowerCase())),G=W((e=>e.charAt(0).toUpperCase()+e.slice(1))),J=W((e=>e?`on${G(e)}`:"")),K=(e,t)=>!Object.is(e,t),Z=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},te=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ne=e=>{const t=N(e)?Number(e):NaN;return isNaN(t)?e:t};let oe;const re=()=>oe||(oe="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}),ie=["ad","ad-content-page","ad-draw","audio","button","camera","canvas","checkbox","checkbox-group","cover-image","cover-view","editor","form","functional-page-navigator","icon","image","input","label","live-player","live-pusher","map","movable-area","movable-view","navigator","official-account","open-data","picker","picker-view","picker-view-column","progress","radio","radio-group","rich-text","scroll-view","slider","swiper","swiper-item","switch","text","textarea","video","view","web-view"].map((e=>"uni-"+e));const ae="\n",se=44,le=50,ce="UNI_LOCALE",ue=["%","%"],pe=/^([a-z-]+:)?\/\//i,de=/^data:.*,.*/,fe="WEB_INVOKE_APPSERVICE",he="onShow",ge="onHide",me="onLaunch",ye="onError",ve="onThemeChange",be="onPageNotFound",_e="onUnhandledRejection",we="onLoad",xe="onUnload",Ae="onInit",Ee="onSaveExitState",Se="onResize",Te="onBackPress",ke="onPageScroll",Ce="onTabItemTap",Pe="onReachBottom",Me="onPullDownRefresh",Le="onShareTimeline",Oe="onAddToFavorites",Ie="onShareAppMessage",Be="onNavigationBarButtonTap",Ne="onNavigationBarChange",je="onNavigationBarSearchInputClicked",De="onNavigationBarSearchInputChanged",Re="onNavigationBarSearchInputConfirmed",Fe="onNavigationBarSearchInputFocusChanged",ze="onAppEnterForeground",qe="onAppEnterBackground",He="onWebInvokeAppService";function Ue(e){return e&&(e.appContext?e.proxy:e)}function Ve(e){if(!e)return;let t=e.type.name;for(;t&&(n=Y(t),-1!==ie.indexOf("uni-"+n.replace("v-uni-","")));)t=(e=e.parent).type.name;var n;return e.proxy}function We(e){return 1===e.nodeType}function $e(e){return 0===e.indexOf("/")}function Qe(e){return $e(e)?e:"/"+e}function Xe(e){return $e(e)?e.slice(1):e}const Ye=(e,t)=>{let n;for(let o=0;o(e&&(n=e.apply(t,o),e=null),n)}function Ke(e,t){e=e||{},N(t)&&(t={errMsg:t}),/:ok$/.test(t.errMsg)?B(e.success)&&e.success(t):B(e.fail)&&e.fail(t),B(e.complete)&&e.complete(t)}function Ze(e){return Q(e.substring(5))}const et=Je((()=>{const e=HTMLElement.prototype,t=e.setAttribute;e.setAttribute=function(e,n){if(e.startsWith("data-")&&this.tagName.startsWith("UNI-")){(this.__uniDataset||(this.__uniDataset={}))[Ze(e)]=n}t.call(this,e,n)};const n=e.removeAttribute;e.removeAttribute=function(e){this.__uniDataset&&e.startsWith("data-")&&this.tagName.startsWith("UNI-")&&delete this.__uniDataset[Ze(e)],n.call(this,e)}}));function tt(e){return T({},e.dataset,e.__uniDataset)}const nt=new RegExp("\"[^\"]+\"|'[^']+'|url\\([^)]+\\)|(\\d*\\.?\\d+)[r|u]px","g");function ot(e){return{passive:e}}function rt(e){const{id:t,offsetTop:n,offsetLeft:o}=e;return{id:t,dataset:tt(e),offsetTop:n,offsetLeft:o}}function it(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}function at(e={}){const t={};return Object.keys(e).forEach((n=>{try{t[n]=it(e[n])}catch(o){t[n]=e[n]}})),t}const st=/\+/g;function lt(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe.apply(this,arguments)),t)};return i.cancel=function(){n(r)},i}class ut{constructor(e,t){this.id=e,this.listener={},this.emitCache=[],t&&Object.keys(t).forEach((e=>{this.on(e,t[e])}))}emit(e,...t){const n=this.listener[e];if(!n)return this.emitCache.push({eventName:e,args:t});n.forEach((e=>{e.fn.apply(e.fn,t)})),this.listener[e]=n.filter((e=>"once"!==e.type))}on(e,t){this._addListener(e,"on",t),this._clearCache(e)}once(e,t){this._addListener(e,"once",t),this._clearCache(e)}off(e,t){const n=this.listener[e];if(n)if(t)for(let o=0;o{if(B(e._component.onError))return t(e)})),mt=function(){};mt.prototype={on:function(e,t,n){var o=this.e||(this.e={});return(o[e]||(o[e]=[])).push({fn:t,ctx:n}),this},once:function(e,t,n){var o=this;function r(){o.off(e,r),t.apply(n,arguments)}return r._=t,this.on(e,r,n)},emit:function(e){for(var t=[].slice.call(arguments,1),n=((this.e||(this.e={}))[e]||[]).slice(),o=0,r=n.length;o{let a=e[i];r[i]=(()=>{if(H(a))return bt(a,t,n);if(M(a))return a.map((e=>H(e)?bt(e,t,n):e));if(N(a)&&a.startsWith("@")){const t=a.replace("@","");let n=o[t]||a;switch(i){case"titleColor":n="black"===n?"#000000":"#ffffff";break;case"borderStyle":n=(e=n)&&e in vt?vt[e]:e}return n}var e;return a})()})),r):e}let _t;class wt{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=_t,!e&&_t&&(this.index=(_t.scopes||(_t.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=_t;try{return _t=this,e()}finally{_t=t}}}on(){_t=this}off(){_t=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t{const t=new Set(e);return t.w=0,t.n=0,t},St=e=>(e.w&Pt)>0,Tt=e=>(e.n&Pt)>0,kt=new WeakMap;let Ct=0,Pt=1;const Mt=30;let Lt;const Ot=Symbol(""),It=Symbol("");class Bt{constructor(e,t=null,n){this.fn=e,this.scheduler=t,this.active=!0,this.deps=[],this.parent=void 0,function(e,t=_t){t&&t.active&&t.effects.push(e)}(this,n)}run(){if(!this.active)return this.fn();let e=Lt,t=jt;for(;e;){if(e===this)return;e=e.parent}try{return this.parent=Lt,Lt=this,jt=!0,Pt=1<<++Ct,Ct<=Mt?(({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let o=0;o{("length"===n||n>=e)&&s.push(t)}))}else switch(void 0!==n&&s.push(a.get(n)),t){case"add":M(e)?U(n)&&s.push(a.get("length")):(s.push(a.get(Ot)),L(e)&&s.push(a.get(It)));break;case"delete":M(e)||(s.push(a.get(Ot)),L(e)&&s.push(a.get(It)));break;case"set":L(e)&&s.push(a.get(Ot))}if(1===s.length)s[0]&&Ut(s[0]);else{const e=[];for(const t of s)t&&e.push(...t);Ut(Et(e))}}function Ut(e,t){const n=M(e)?e:[...e];for(const o of n)o.computed&&Vt(o);for(const o of n)o.computed||Vt(o)}function Vt(e,t){(e!==Lt||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const Wt=a("__proto__,__v_isRef,__isVue"),$t=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(j)),Qt=Zt(),Xt=Zt(!1,!0),Yt=Zt(!0),Gt=Jt();function Jt(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Rn(this);for(let t=0,r=this.length;t{e[t]=function(...e){Rt();const n=Rn(this)[t].apply(this,e);return Ft(),n}})),e}function Kt(e){const t=Rn(this);return zt(t,0,e),t.hasOwnProperty(e)}function Zt(e=!1,t=!1){return function(n,o,r){if("__v_isReactive"===o)return!e;if("__v_isReadonly"===o)return e;if("__v_isShallow"===o)return t;if("__v_raw"===o&&r===(e?t?Pn:Cn:t?kn:Tn).get(n))return n;const i=M(n);if(!e){if(i&&P(Gt,o))return Reflect.get(Gt,o,r);if("hasOwnProperty"===o)return Kt}const a=Reflect.get(n,o,r);return(j(o)?$t.has(o):Wt(o))?a:(e||zt(n,0,o),t?a:Vn(a)?i&&U(o)?a:a.value:D(a)?e?On(a):Mn(a):a)}}function en(e=!1){return function(t,n,o,r){let i=t[n];if(Nn(i)&&Vn(i)&&!Vn(o))return!1;if(!e&&(jn(o)||Nn(o)||(i=Rn(i),o=Rn(o)),!M(t)&&Vn(i)&&!Vn(o)))return i.value=o,!0;const a=M(t)&&U(n)?Number(n)!0,deleteProperty:(e,t)=>!0},on=T({},tn,{get:Xt,set:en(!0)}),rn=e=>e,an=e=>Reflect.getPrototypeOf(e);function sn(e,t,n=!1,o=!1){const r=Rn(e=e.__v_raw),i=Rn(t);n||(t!==i&&zt(r,0,t),zt(r,0,i));const{has:a}=an(r),s=o?rn:n?qn:zn;return a.call(r,t)?s(e.get(t)):a.call(r,i)?s(e.get(i)):void(e!==r&&e.get(t))}function ln(e,t=!1){const n=this.__v_raw,o=Rn(n),r=Rn(e);return t||(e!==r&&zt(o,0,e),zt(o,0,r)),e===r?n.has(e):n.has(e)||n.has(r)}function cn(e,t=!1){return e=e.__v_raw,!t&&zt(Rn(e),0,Ot),Reflect.get(e,"size",e)}function un(e){e=Rn(e);const t=Rn(this);return an(t).has.call(t,e)||(t.add(e),Ht(t,"add",e,e)),this}function pn(e,t){t=Rn(t);const n=Rn(this),{has:o,get:r}=an(n);let i=o.call(n,e);i||(e=Rn(e),i=o.call(n,e));const a=r.call(n,e);return n.set(e,t),i?K(t,a)&&Ht(n,"set",e,t):Ht(n,"add",e,t),this}function dn(e){const t=Rn(this),{has:n,get:o}=an(t);let r=n.call(t,e);r||(e=Rn(e),r=n.call(t,e)),o&&o.call(t,e);const i=t.delete(e);return r&&Ht(t,"delete",e,void 0),i}function fn(){const e=Rn(this),t=0!==e.size,n=e.clear();return t&&Ht(e,"clear",void 0,void 0),n}function hn(e,t){return function(n,o){const r=this,i=r.__v_raw,a=Rn(i),s=t?rn:e?qn:zn;return!e&&zt(a,0,Ot),i.forEach(((e,t)=>n.call(o,s(e),s(t),r)))}}function gn(e,t,n){return function(...o){const r=this.__v_raw,i=Rn(r),a=L(i),s="entries"===e||e===Symbol.iterator&&a,l="keys"===e&&a,c=r[e](...o),u=n?rn:t?qn:zn;return!t&&zt(i,0,l?It:Ot),{next(){const{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:s?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function mn(e){return function(...t){return"delete"!==e&&this}}function yn(){const e={get(e){return sn(this,e)},get size(){return cn(this)},has:ln,add:un,set:pn,delete:dn,clear:fn,forEach:hn(!1,!1)},t={get(e){return sn(this,e,!1,!0)},get size(){return cn(this)},has:ln,add:un,set:pn,delete:dn,clear:fn,forEach:hn(!1,!0)},n={get(e){return sn(this,e,!0)},get size(){return cn(this,!0)},has(e){return ln.call(this,e,!0)},add:mn("add"),set:mn("set"),delete:mn("delete"),clear:mn("clear"),forEach:hn(!0,!1)},o={get(e){return sn(this,e,!0,!0)},get size(){return cn(this,!0)},has(e){return ln.call(this,e,!0)},add:mn("add"),set:mn("set"),delete:mn("delete"),clear:mn("clear"),forEach:hn(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((r=>{e[r]=gn(r,!1,!1),n[r]=gn(r,!0,!1),t[r]=gn(r,!1,!0),o[r]=gn(r,!0,!0)})),[e,n,t,o]}const[vn,bn,_n,wn]=yn();function xn(e,t){const n=t?e?wn:_n:e?bn:vn;return(t,o,r)=>"__v_isReactive"===o?!e:"__v_isReadonly"===o?e:"__v_raw"===o?t:Reflect.get(P(n,o)&&o in t?n:t,o,r)}const An={get:xn(!1,!1)},En={get:xn(!1,!0)},Sn={get:xn(!0,!1)},Tn=new WeakMap,kn=new WeakMap,Cn=new WeakMap,Pn=new WeakMap;function Mn(e){return Nn(e)?e:In(e,!1,tn,An,Tn)}function Ln(e){return In(e,!1,on,En,kn)}function On(e){return In(e,!0,nn,Sn,Cn)}function In(e,t,n,o,r){if(!D(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const a=(s=e).__v_skip||!Object.isExtensible(s)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(q(s));var s;if(0===a)return e;const l=new Proxy(e,2===a?o:n);return r.set(e,l),l}function Bn(e){return Nn(e)?Bn(e.__v_raw):!(!e||!e.__v_isReactive)}function Nn(e){return!(!e||!e.__v_isReadonly)}function jn(e){return!(!e||!e.__v_isShallow)}function Dn(e){return Bn(e)||Nn(e)}function Rn(e){const t=e&&e.__v_raw;return t?Rn(t):e}function Fn(e){return ee(e,"__v_skip",!0),e}const zn=e=>D(e)?Mn(e):e,qn=e=>D(e)?On(e):e;function Hn(e){jt&&Lt&&qt((e=Rn(e)).dep||(e.dep=Et()))}function Un(e,t){const n=(e=Rn(e)).dep;n&&Ut(n)}function Vn(e){return!(!e||!0!==e.__v_isRef)}function Wn(e){return Qn(e,!1)}function $n(e){return Qn(e,!0)}function Qn(e,t){return Vn(e)?e:new Xn(e,t)}class Xn{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Rn(e),this._value=t?e:zn(e)}get value(){return Hn(this),this._value}set value(e){const t=this.__v_isShallow||jn(e)||Nn(e);e=t?e:Rn(e),K(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:zn(e),Un(this))}}function Yn(e){return Vn(e)?e.value:e}const Gn={get:(e,t,n)=>Yn(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const r=e[t];return Vn(r)&&!Vn(n)?(r.value=n,!0):Reflect.set(e,t,n,o)}};function Jn(e){return Bn(e)?e:new Proxy(e,Gn)}class Kn{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return e=Rn(this._object),t=this._key,null===(n=kt.get(e))||void 0===n?void 0:n.get(t);var e,t,n}}function Zn(e,t,n){const o=e[t];return Vn(o)?o:new Kn(e,t,n)}var eo;class to{constructor(e,t,n,o){this._setter=t,this.dep=void 0,this.__v_isRef=!0,this[eo]=!1,this._dirty=!0,this.effect=new Bt(e,(()=>{this._dirty||(this._dirty=!0,Un(this))})),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=n}get value(){const e=Rn(this);return Hn(e),!e._dirty&&e._cacheable||(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}function no(e,t,n,o){let r;try{r=o?e(...o):e()}catch(i){ro(i,t,n)}return r}function oo(e,t,n,o){if(B(e)){const r=no(e,t,n,o);return r&&R(r)&&r.catch((e=>{ro(e,t,n)})),r}const r=[];for(let i=0;i>>1;_o(so[o])_o(e)-_o(t))),po=0;ponull==e.id?1/0:e.id,wo=(e,t)=>{const n=_o(e)-_o(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function xo(e){ao=!1,io=!0,so.sort(wo);try{for(lo=0;loN(e)?e.trim():e))),t&&(r=n.map(te))}let s,l=o[s=J(t)]||o[s=J(Q(t))];!l&&i&&(l=o[s=J(Y(t))]),l&&oo(l,e,6,Eo(e,l,r));const c=o[s+"Once"];if(c){if(e.emitted){if(e.emitted[s])return}else e.emitted={};e.emitted[s]=!0,oo(c,e,6,Eo(e,c,r))}}function Eo(e,t,n){if(1!==n.length)return n;if(B(t)){if(t.length<2)return n}else if(!t.find((e=>e.length>=2)))return n;const o=n[0];if(o&&P(o,"type")&&P(o,"timeStamp")&&P(o,"target")&&P(o,"currentTarget")&&P(o,"detail")){const t=e.proxy,o=t.$gcd(t,!0);o&&n.push(o)}return n}function So(e,t,n=!1){const o=t.emitsCache,r=o.get(e);if(void 0!==r)return r;const i=e.emits;let a={},s=!1;if(!B(e)){const o=e=>{const n=So(e,t,!0);n&&(s=!0,T(a,n))};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}return i||s?(M(i)?i.forEach((e=>a[e]=null)):T(a,i),D(e)&&o.set(e,a),a):(D(e)&&o.set(e,null),null)}function To(e,t){return!(!e||!E(t))&&(t=t.slice(2).replace(/Once$/,""),P(e,t[0].toLowerCase()+t.slice(1))||P(e,Y(t))||P(e,t))}let ko=null,Co=null;function Po(e){const t=ko;return ko=e,Co=e&&e.type.__scopeId||null,t}function Mo(e,t=ko,n){if(!t)return e;if(e._n)return e;const o=(...n)=>{o._d&&Oi(-1);const r=Po(t);let i;try{i=e(...n)}finally{Po(r),o._d&&Oi(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function Lo(e){const{type:t,vnode:n,proxy:o,withProxy:r,props:i,propsOptions:[a],slots:s,attrs:l,emit:c,render:u,renderCache:p,data:d,setupState:f,ctx:h,inheritAttrs:g}=e;let m,y;const v=Po(e);try{if(4&n.shapeFlag){const e=r||o;m=$i(u.call(e,e,p,i,f,d,h)),y=l}else{const e=t;0,m=$i(e.length>1?e(i,{attrs:l,slots:s,emit:c}):e(i,null)),y=t.props?l:Oo(l)}}catch(_){Ci.length=0,ro(_,e,1),m=Hi(Ti)}let b=m;if(y&&!1!==g){const e=Object.keys(y),{shapeFlag:t}=b;e.length&&7&t&&(a&&e.some(S)&&(y=Io(y,a)),b=Ui(b,y))}return n.dirs&&(b=Ui(b),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&(b.transition=n.transition),m=b,Po(v),m}const Oo=e=>{let t;for(const n in e)("class"===n||"style"===n||E(n))&&((t||(t={}))[n]=e[n]);return t},Io=(e,t)=>{const n={};for(const o in e)S(o)&&o.slice(9)in t||(n[o]=e[o]);return n};function Bo(e,t,n){const o=Object.keys(t);if(o.length!==Object.keys(e).length)return!0;for(let r=0;re.__isSuspense;function jo(e,t){if(Zi){let n=Zi.provides;const o=Zi.parent&&Zi.parent.provides;o===n&&(n=Zi.provides=Object.create(o)),n[e]=t,"app"===Zi.type.mpType&&Zi.appContext.app.provide(e,t)}else;}function Do(e,t,n=!1){const o=Zi||ko;if(o){const r=null==o.parent?o.vnode.appContext&&o.vnode.appContext.provides:o.parent.provides;if(r&&e in r)return r[e];if(arguments.length>1)return n&&B(t)?t.call(o.proxy):t}}function Ro(e,t){return qo(e,null,t)}const Fo={};function zo(e,t,n){return qo(e,t,n)}function qo(e,t,{immediate:n,deep:o,flush:r,onTrack:i,onTrigger:a}=b){const s=At()===(null==Zi?void 0:Zi.scope)?Zi:null;let l,c,u=!1,p=!1;if(Vn(e)?(l=()=>e.value,u=jn(e)):Bn(e)?(l=()=>e,o=!0):M(e)?(p=!0,u=e.some((e=>Bn(e)||jn(e))),l=()=>e.map((e=>Vn(e)?e.value:Bn(e)?Vo(e):B(e)?no(e,s,2):void 0))):l=B(e)?t?()=>no(e,s,2):()=>{if(!s||!s.isUnmounted)return c&&c(),oo(e,s,3,[f])}:w,t&&o){const e=l;l=()=>Vo(e())}let d,f=e=>{c=y.onStop=()=>{no(e,s,4)}};if(ia){if(f=w,t?n&&oo(t,s,3,[l(),p?[]:void 0,f]):l(),"sync"!==r)return w;{const e=fa();d=e.__watcherHandles||(e.__watcherHandles=[])}}let h=p?new Array(e.length).fill(Fo):Fo;const g=()=>{if(y.active)if(t){const e=y.run();(o||u||(p?e.some(((e,t)=>K(e,h[t]))):K(e,h)))&&(c&&c(),oo(t,s,3,[e,h===Fo?void 0:p&&h[0]===Fo?[]:h,f]),h=e)}else y.run()};let m;g.allowRecurse=!!t,"sync"===r?m=g:"post"===r?m=()=>_i(g,s&&s.suspense):(g.pre=!0,s&&(g.id=s.uid),m=()=>mo(g));const y=new Bt(l,m);t?n?g():h=y.run():"post"===r?_i(y.run.bind(y),s&&s.suspense):y.run();const v=()=>{y.stop(),s&&s.scope&&k(s.scope.effects,y)};return d&&d.push(v),v}function Ho(e,t,n){const o=this.proxy,r=N(e)?e.includes(".")?Uo(o,e):()=>o[e]:e.bind(o,o);let i;B(t)?i=t:(i=t.handler,n=t);const a=Zi;ta(this);const s=qo(r,i.bind(o),n);return a?ta(a):na(),s}function Uo(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e{Vo(e,t)}));else if(H(e))for(const n in e)Vo(e[n],t);return e}const Wo=[Function,Array],$o={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Wo,onEnter:Wo,onAfterEnter:Wo,onEnterCancelled:Wo,onBeforeLeave:Wo,onLeave:Wo,onAfterLeave:Wo,onLeaveCancelled:Wo,onBeforeAppear:Wo,onAppear:Wo,onAfterAppear:Wo,onAppearCancelled:Wo},Qo={name:"BaseTransition",props:$o,setup(e,{slots:t}){const n=ea(),o=function(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return wr((()=>{e.isMounted=!0})),Er((()=>{e.isUnmounting=!0})),e}();let r;return()=>{const i=t.default&&Zo(t.default(),!0);if(!i||!i.length)return;let a=i[0];if(i.length>1)for(const e of i)if(e.type!==Ti){a=e;break}const s=Rn(e),{mode:l}=s;if(o.isLeaving)return Go(a);const c=Jo(a);if(!c)return Go(a);const u=Yo(c,s,o,n);Ko(c,u);const p=n.subTree,d=p&&Jo(p);let f=!1;const{getTransitionKey:h}=c.type;if(h){const e=h();void 0===r?r=e:e!==r&&(r=e,f=!0)}if(d&&d.type!==Ti&&(!Di(c,d)||f)){const e=Yo(d,s,o,n);if(Ko(d,e),"out-in"===l)return o.isLeaving=!0,e.afterLeave=()=>{o.isLeaving=!1,!1!==n.update.active&&n.update()},Go(a);"in-out"===l&&c.type!==Ti&&(e.delayLeave=(e,t,n)=>{Xo(o,d)[String(d.key)]=d,e._leaveCb=()=>{t(),e._leaveCb=void 0,delete u.delayedLeave},u.delayedLeave=n})}return a}}};function Xo(e,t){const{leavingVNodes:n}=e;let o=n.get(t.type);return o||(o=Object.create(null),n.set(t.type,o)),o}function Yo(e,t,n,o){const{appear:r,mode:i,persisted:a=!1,onBeforeEnter:s,onEnter:l,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:p,onLeave:d,onAfterLeave:f,onLeaveCancelled:h,onBeforeAppear:g,onAppear:m,onAfterAppear:y,onAppearCancelled:v}=t,b=String(e.key),_=Xo(n,e),w=(e,t)=>{e&&oo(e,o,9,t)},x=(e,t)=>{const n=t[1];w(e,t),M(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},A={mode:i,persisted:a,beforeEnter(t){let o=s;if(!n.isMounted){if(!r)return;o=g||s}t._leaveCb&&t._leaveCb(!0);const i=_[b];i&&Di(e,i)&&i.el._leaveCb&&i.el._leaveCb(),w(o,[t])},enter(e){let t=l,o=c,i=u;if(!n.isMounted){if(!r)return;t=m||l,o=y||c,i=v||u}let a=!1;const s=e._enterCb=t=>{a||(a=!0,w(t?i:o,[e]),A.delayedLeave&&A.delayedLeave(),e._enterCb=void 0)};t?x(t,[e,s]):s()},leave(t,o){const r=String(e.key);if(t._enterCb&&t._enterCb(!0),n.isUnmounting)return o();w(p,[t]);let i=!1;const a=t._leaveCb=n=>{i||(i=!0,o(),w(n?h:f,[t]),t._leaveCb=void 0,_[r]===e&&delete _[r])};_[r]=e,d?x(d,[t,a]):a()},clone:e=>Yo(e,t,n,o)};return A}function Go(e){if(rr(e))return(e=Ui(e)).children=null,e}function Jo(e){return rr(e)?e.children?e.children[0]:void 0:e}function Ko(e,t){6&e.shapeFlag&&e.component?Ko(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Zo(e,t=!1,n){let o=[],r=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;function nr(e){B(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:r=200,timeout:i,suspensible:a=!0,onError:s}=e;let l,c=null,u=0;const p=()=>{let e;return c||(e=c=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),s)return new Promise(((t,n)=>{s(e,(()=>t((u++,c=null,p()))),(()=>n(e)),u+1)}));throw e})).then((t=>e!==c&&c?c:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),l=t,t))))};return er({name:"AsyncComponentWrapper",__asyncLoader:p,get __asyncResolved(){return l},setup(){const e=Zi;if(l)return()=>or(l,e);const t=t=>{c=null,ro(t,e,13,!o)};if(a&&e.suspense||ia)return p().then((t=>()=>or(t,e))).catch((e=>(t(e),()=>o?Hi(o,{error:e}):null)));const s=Wn(!1),u=Wn(),d=Wn(!!r);return r&&setTimeout((()=>{d.value=!1}),r),null!=i&&setTimeout((()=>{if(!s.value&&!u.value){const e=new Error(`Async component timed out after ${i}ms.`);t(e),u.value=e}}),i),p().then((()=>{s.value=!0,e.parent&&rr(e.parent.vnode)&&mo(e.parent.update)})).catch((e=>{t(e),u.value=e})),()=>s.value&&l?or(l,e):u.value&&o?Hi(o,{error:u.value}):n&&!d.value?Hi(n):void 0}})}function or(e,t){const{ref:n,props:o,children:r,ce:i}=t.vnode,a=Hi(e,o,r);return a.ref=n,a.ce=i,delete t.vnode.ce,a}const rr=e=>e.type.__isKeepAlive;class ir{constructor(e){this.max=e,this._cache=new Map,this._keys=new Set,this._max=parseInt(e,10)}get(e){const{_cache:t,_keys:n,_max:o}=this,r=t.get(e);if(r)n.delete(e),n.add(e);else if(n.add(e),o&&n.size>o){const e=n.values().next().value;this.pruneCacheEntry(t.get(e)),this.delete(e)}return r}set(e,t){this._cache.set(e,t)}delete(e){this._cache.delete(e),this._keys.delete(e)}forEach(e,t){this._cache.forEach(e.bind(t))}}const ar={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number],matchBy:{type:String,default:"name"},cache:Object},setup(e,{slots:t}){const n=ea(),o=n.ctx;if(!o.renderer)return()=>{const e=t.default&&t.default();return e&&1===e.length?e[0]:e};const r=e.cache||new ir(e.max);r.pruneCacheEntry=a;let i=null;function a(t){var o;!i||!Di(t,i)||"key"===e.matchBy&&t.key!==i.key?(fr(o=t),u(o,n,s,!0)):i&&fr(i)}const s=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:p}}}=o,d=p("div");function f(t){r.forEach(((n,o)=>{const i=gr(n,e.matchBy);!i||t&&t(i)||(r.delete(o),a(n))}))}o.activate=(e,t,n,o,r)=>{const i=e.component;if(i.ba){const e=i.isDeactivated;i.isDeactivated=!1,Z(i.ba),i.isDeactivated=e}c(e,t,n,0,s),l(i.vnode,e,t,n,i,s,o,e.slotScopeIds,r),_i((()=>{i.isDeactivated=!1,i.a&&Z(i.a);const t=e.props&&e.props.onVnodeMounted;t&&Gi(t,i.parent,e)}),s)},o.deactivate=e=>{const t=e.component;t.bda&&mr(t.bda),c(e,d,null,1,s),_i((()=>{t.bda&&yr(t.bda),t.da&&Z(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&Gi(n,t.parent,e),t.isDeactivated=!0}),s)},zo((()=>[e.include,e.exclude,e.matchBy]),(([e,t])=>{e&&f((t=>lr(e,t))),t&&f((e=>!lr(t,e)))}),{flush:"post",deep:!0});let h=null;const g=()=>{null!=h&&r.set(h,hr(n.subTree))};return wr(g),Ar(g),Er((()=>{r.forEach(((t,o)=>{r.delete(o),a(t);const{subTree:i,suspense:s}=n,l=hr(i);if(t.type!==l.type||"key"===e.matchBy&&t.key!==l.key);else{l.component.bda&&Z(l.component.bda),fr(l);const e=l.component.da;e&&_i(e,s)}}))})),()=>{if(h=null,!t.default)return null;const n=t.default(),o=n[0];if(n.length>1)return i=null,n;if(!ji(o)||!(4&o.shapeFlag)&&!No(o.type))return i=null,o;let a=hr(o);const s=a.type,l=gr(a,e.matchBy),{include:c,exclude:u}=e;if(c&&(!l||!lr(c,l))||u&&l&&lr(u,l))return i=a,o;const p=null==a.key?s:a.key,d=r.get(p);return a.el&&(a=Ui(a),No(o.type)&&(o.ssContent=a)),h=p,d&&(a.el=d.el,a.component=d.component,a.transition&&Ko(a,a.transition),a.shapeFlag|=512),a.shapeFlag|=256,i=a,No(o.type)?o:a}}},sr=ar;function lr(e,t){return M(e)?e.some((e=>lr(e,t))):N(e)?e.split(",").includes(t):!!e.test&&e.test(t)}function cr(e,t){pr(e,"a",t)}function ur(e,t){pr(e,"da",t)}function pr(e,t,n=Zi){const o=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(o.__called=!1,vr(t,o,n),n){let e=n.parent;for(;e&&e.parent;)rr(e.parent.vnode)&&dr(o,t,n,e),e=e.parent}}function dr(e,t,n,o){const r=vr(t,e,o,!0);Sr((()=>{k(o[t],r)}),n)}function fr(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function hr(e){return No(e.type)?e.ssContent:e}function gr(e,t){if("name"===t){const t=e.type;return ca(tr(e)?t.__asyncResolved||{}:t)}return String(e.key)}function mr(e){for(let t=0;te.__called=!1))}function vr(e,t,n=Zi,o=!1){if(n){if(r=e,pt.indexOf(r)>-1&&n.$pageInstance){if(n.type.__reserved)return;if(n!==n.$pageInstance&&(n=n.$pageInstance,function(e){return dt.indexOf(e)>-1}(e))){const o=n.proxy;oo(t.bind(o),n,e,we===e?[o.$page.options]:[])}}const i=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Rt(),ta(n);const r=oo(t,n,e,o);return na(),Ft(),r});return o?i.unshift(a):i.push(a),a}var r}const br=e=>(t,n=Zi)=>(!ia||"sp"===e)&&vr(e,((...e)=>t(...e)),n),_r=br("bm"),wr=br("m"),xr=br("bu"),Ar=br("u"),Er=br("bum"),Sr=br("um"),Tr=br("sp"),kr=br("rtg"),Cr=br("rtc");function Pr(e,t=Zi){vr("ec",e,t)}function Mr(e,t){const n=ko;if(null===n)return e;const o=la(n)||n.proxy,r=e.dirs||(e.dirs=[]);for(let i=0;it(e,n,void 0,i&&i[n])));else{const n=Object.keys(e);r=new Array(n.length);for(let o=0,a=n.length;o!ji(e)||e.type!==Ti&&!(e.type===Ei&&!zr(e.children))))?e:null}const qr=e=>e?oa(e)?la(e)||e.proxy:qr(e.parent):null,Hr=T(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>qr(e.parent),$root:e=>qr(e.root),$emit:e=>e.emit,$options:e=>Yr(e),$forceUpdate:e=>e.f||(e.f=()=>mo(e.update)),$nextTick:e=>e.n||(e.n=go.bind(e.proxy)),$watch:e=>Ho.bind(e)}),Ur=(e,t)=>e!==b&&!e.__isScriptSetup&&P(e,t),Vr={get({_:e},t){const{ctx:n,setupState:o,data:r,props:i,accessCache:a,type:s,appContext:l}=e;let c;if("$"!==t[0]){const s=a[t];if(void 0!==s)switch(s){case 1:return o[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Ur(o,t))return a[t]=1,o[t];if(r!==b&&P(r,t))return a[t]=2,r[t];if((c=e.propsOptions[0])&&P(c,t))return a[t]=3,i[t];if(n!==b&&P(n,t))return a[t]=4,n[t];Wr&&(a[t]=0)}}const u=Hr[t];let p,d;return u?("$attrs"===t&&zt(e,0,t),u(e)):(p=s.__cssModules)&&(p=p[t])?p:n!==b&&P(n,t)?(a[t]=4,n[t]):(d=l.config.globalProperties,P(d,t)?d[t]:void 0)},set({_:e},t,n){const{data:o,setupState:r,ctx:i}=e;return Ur(r,t)?(r[t]=n,!0):o!==b&&P(o,t)?(o[t]=n,!0):!P(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(i[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:r,propsOptions:i}},a){let s;return!!n[a]||e!==b&&P(e,a)||Ur(t,a)||(s=i[0])&&P(s,a)||P(o,a)||P(Hr,a)||P(r.config.globalProperties,a)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:P(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};let Wr=!0;function $r(e){const t=Yr(e),n=e.proxy,o=e.ctx;Wr=!1,t.beforeCreate&&Qr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:a,watch:s,provide:l,inject:c,created:u,beforeMount:p,mounted:d,beforeUpdate:f,updated:h,activated:g,deactivated:m,beforeDestroy:y,beforeUnmount:v,destroyed:b,unmounted:_,render:x,renderTracked:A,renderTriggered:E,errorCaptured:S,serverPrefetch:T,expose:k,inheritAttrs:C,components:P,directives:L,filters:O}=t;if(c&&function(e,t,n=w,o=!1){M(e)&&(e=Zr(e));for(const r in e){const n=e[r];let i;i=D(n)?"default"in n?Do(n.from||r,n.default,!0):Do(n.from||r):Do(n),Vn(i)&&o?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[r]=i}}(c,o,null,e.appContext.config.unwrapInjectedRef),a)for(const w in a){const e=a[w];B(e)&&(o[w]=e.bind(n))}if(r){const t=r.call(n,n);D(t)&&(e.data=Mn(t))}if(Wr=!0,i)for(const M in i){const e=i[M],t=B(e)?e.bind(n,n):B(e.get)?e.get.bind(n,n):w,r=!B(e)&&B(e.set)?e.set.bind(n):w,a=ua({get:t,set:r});Object.defineProperty(o,M,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(s)for(const w in s)Xr(s[w],o,n,w);if(l){const e=B(l)?l.call(n):l;Reflect.ownKeys(e).forEach((t=>{jo(t,e[t])}))}function I(e,t){M(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(u&&Qr(u,e,"c"),I(_r,p),I(wr,d),I(xr,f),I(Ar,h),I(cr,g),I(ur,m),I(Pr,S),I(Cr,A),I(kr,E),I(Er,v),I(Sr,_),I(Tr,T),M(k))if(k.length){const t=e.exposed||(e.exposed={});k.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});x&&e.render===w&&(e.render=x),null!=C&&(e.inheritAttrs=C),P&&(e.components=P),L&&(e.directives=L);const N=e.appContext.config.globalProperties.$applyOptions;N&&N(t,e,n)}function Qr(e,t,n){oo(M(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function Xr(e,t,n,o){const r=o.includes(".")?Uo(n,o):()=>n[o];if(N(e)){const n=t[e];B(n)&&zo(r,n)}else if(B(e))zo(r,e.bind(n));else if(D(e))if(M(e))e.forEach((e=>Xr(e,t,n,o)));else{const o=B(e.handler)?e.handler.bind(n):t[e.handler];B(o)&&zo(r,o,e)}}function Yr(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:a}}=e.appContext,s=i.get(t);let l;return s?l=s:r.length||n||o?(l={},r.length&&r.forEach((e=>Gr(l,e,a,!0))),Gr(l,t,a)):l=t,D(t)&&i.set(t,l),l}function Gr(e,t,n,o=!1){const{mixins:r,extends:i}=t;i&&Gr(e,i,n,!0),r&&r.forEach((t=>Gr(e,t,n,!0)));for(const a in t)if(o&&"expose"===a);else{const o=Jr[a]||n&&n[a];e[a]=o?o(e[a],t[a]):t[a]}return e}const Jr={data:Kr,props:ti,emits:ti,methods:ti,computed:ti,beforeCreate:ei,created:ei,beforeMount:ei,mounted:ei,beforeUpdate:ei,updated:ei,beforeDestroy:ei,beforeUnmount:ei,destroyed:ei,unmounted:ei,activated:ei,deactivated:ei,errorCaptured:ei,serverPrefetch:ei,components:ti,directives:ti,watch:function(e,t){if(!e)return t;if(!t)return e;const n=T(Object.create(null),e);for(const o in t)n[o]=ei(e[o],t[o]);return n},provide:Kr,inject:function(e,t){return ti(Zr(e),Zr(t))}};function Kr(e,t){return t?e?function(){return T(B(e)?e.call(this,this):e,B(t)?t.call(this,this):t)}:t:e}function Zr(e){if(M(e)){const t={};for(let n=0;n{l=!0;const[n,o]=ri(e,t,!0);T(a,n),o&&s.push(...o)};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}if(!i&&!l)return D(e)&&o.set(e,_),_;if(M(i))for(let u=0;u-1,n[1]=o<0||t-1||P(n,"default"))&&s.push(e)}}}const c=[a,s];return D(e)&&o.set(e,c),c}function ii(e){return"$"!==e[0]}function ai(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:null===e?"null":""}function si(e,t){return ai(e)===ai(t)}function li(e,t){return M(t)?t.findIndex((t=>si(t,e))):B(t)&&si(t,e)?0:-1}const ci=e=>"_"===e[0]||"$stable"===e,ui=e=>M(e)?e.map($i):[$i(e)],pi=(e,t,n)=>{if(t._n)return t;const o=Mo(((...e)=>ui(t(...e))),n);return o._c=!1,o},di=(e,t,n)=>{const o=e._ctx;for(const r in e){if(ci(r))continue;const n=e[r];if(B(n))t[r]=pi(0,n,o);else if(null!=n){const e=ui(n);t[r]=()=>e}}},fi=(e,t)=>{const n=ui(t);e.slots.default=()=>n},hi=(e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=Rn(t),ee(t,"_",n)):di(t,e.slots={})}else e.slots={},t&&fi(e,t);ee(e.slots,Ri,1)},gi=(e,t,n)=>{const{vnode:o,slots:r}=e;let i=!0,a=b;if(32&o.shapeFlag){const e=t._;e?n&&1===e?i=!1:(T(r,t),n||1!==e||delete r._):(i=!t.$stable,di(t,r)),a=t}else t&&(fi(e,t),a={default:1});if(i)for(const s in r)ci(s)||s in a||delete r[s]};function mi(){return{app:null,config:{isNativeTag:x,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let yi=0;function vi(e,t){return function(n,o=null){B(n)||(n=Object.assign({},n)),null==o||D(o)||(o=null);const r=mi(),i=new Set;let a=!1;const s=r.app={_uid:yi++,_component:n,_props:o,_container:null,_context:r,_instance:null,version:ha,get config(){return r.config},set config(e){},use:(e,...t)=>(i.has(e)||(e&&B(e.install)?(i.add(e),e.install(s,...t)):B(e)&&(i.add(e),e(s,...t))),s),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),s),component:(e,t)=>t?(r.components[e]=t,s):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,s):r.directives[e],mount(i,l,c){if(!a){const u=Hi(n,o);return u.appContext=r,l&&t?t(u,i):e(u,i,c),a=!0,s._container=i,i.__vue_app__=s,s._instance=u.component,la(u.component)||u.component.proxy}},unmount(){a&&(e(null,s._container),delete s._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,s)};return s}}function bi(e,t,n,o,r=!1){if(M(e))return void e.forEach(((e,i)=>bi(e,t&&(M(t)?t[i]:t),n,o,r)));if(tr(o)&&!r)return;const i=4&o.shapeFlag?la(o.component)||o.component.proxy:o.el,a=r?null:i,{i:s,r:l}=e,c=t&&t.r,u=s.refs===b?s.refs={}:s.refs,p=s.setupState;if(null!=c&&c!==l&&(N(c)?(u[c]=null,P(p,c)&&(p[c]=null)):Vn(c)&&(c.value=null)),B(l))no(l,s,12,[a,u]);else{const t=N(l),o=Vn(l);if(t||o){const s=()=>{if(e.f){const n=t?P(p,l)?p[l]:u[l]:l.value;r?M(n)&&k(n,i):M(n)?n.includes(i)||n.push(i):t?(u[l]=[i],P(p,l)&&(p[l]=u[l])):(l.value=[i],e.k&&(u[e.k]=l.value))}else t?(u[l]=a,P(p,l)&&(p[l]=a)):o&&(l.value=a,e.k&&(u[e.k]=a))};a?(s.id=-1,_i(s,n)):s()}}}const _i=function(e,t){var n;t&&t.pendingBranch?M(e)?t.effects.push(...e):t.effects.push(e):(M(n=e)?co.push(...n):uo&&uo.includes(n,n.allowRecurse?po+1:po)||co.push(n),yo())};function wi(e){return function(e,t){re().__VUE__=!0;const{insert:n,remove:o,patchProp:r,forcePatchProp:i,createElement:a,createText:s,createComment:l,setText:c,setElementText:u,parentNode:p,nextSibling:d,setScopeId:f=w,insertStaticContent:h}=e,g=(e,t,n,o=null,r=null,i=null,a=!1,s=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!Di(e,t)&&(o=J(e),U(e,r,i,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:c,ref:u,shapeFlag:p}=t;switch(c){case Si:m(e,t,n,o);break;case Ti:y(e,t,n,o);break;case ki:null==e&&v(t,n,o,a);break;case Ei:O(e,t,n,o,r,i,a,s,l);break;default:1&p?E(e,t,n,o,r,i,a,s,l):6&p?I(e,t,n,o,r,i,a,s,l):(64&p||128&p)&&c.process(e,t,n,o,r,i,a,s,l,te)}null!=u&&r&&bi(u,e&&e.ref,i,t||e,!t)},m=(e,t,o,r)=>{if(null==e)n(t.el=s(t.children),o,r);else{const n=t.el=e.el;t.children!==e.children&&c(n,t.children)}},y=(e,t,o,r)=>{null==e?n(t.el=l(t.children||""),o,r):t.el=e.el},v=(e,t,n,o)=>{[e.el,e.anchor]=h(e.children,t,n,o,e.el,e.anchor)},x=({el:e,anchor:t},o,r)=>{let i;for(;e&&e!==t;)i=d(e),n(e,o,r),e=i;n(t,o,r)},A=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=d(e),o(e),e=n;o(t)},E=(e,t,n,o,r,i,a,s,l)=>{a=a||"svg"===t.type,null==e?S(t,n,o,r,i,a,s,l):C(e,t,r,i,a,s,l)},S=(e,t,o,i,s,l,c,p)=>{let d,f;const{type:h,props:g,shapeFlag:m,transition:y,dirs:v}=e;if(d=e.el=a(e.type,l,g&&g.is,g),8&m?u(d,e.children):16&m&&k(e.children,d,null,i,s,l&&"foreignObject"!==h,c,p),v&&Lr(e,null,i,"created"),T(d,e,e.scopeId,c,i),g){for(const t in g)"value"===t||V(t)||r(d,t,null,g[t],l,e.children,i,s,G);"value"in g&&r(d,"value",null,g.value),(f=g.onVnodeBeforeMount)&&Gi(f,i,e)}Object.defineProperty(d,"__vueParentComponent",{value:i,enumerable:!1}),v&&Lr(e,null,i,"beforeMount");const b=(!s||s&&!s.pendingBranch)&&y&&!y.persisted;b&&y.beforeEnter(d),n(d,t,o),((f=g&&g.onVnodeMounted)||b||v)&&_i((()=>{f&&Gi(f,i,e),b&&y.enter(d),v&&Lr(e,null,i,"mounted")}),s)},T=(e,t,n,o,r)=>{if(n&&f(e,n),o)for(let i=0;i{for(let c=l;c{const c=t.el=e.el;let{patchFlag:p,dynamicChildren:d,dirs:f}=t;p|=16&e.patchFlag;const h=e.props||b,g=t.props||b;let m;n&&xi(n,!1),(m=g.onVnodeBeforeUpdate)&&Gi(m,n,t,e),f&&Lr(t,e,n,"beforeUpdate"),n&&xi(n,!0);const y=a&&"foreignObject"!==t.type;if(d?M(e.dynamicChildren,d,c,n,o,y,s):l||F(e,t,c,null,n,o,y,s,!1),p>0){if(16&p)L(c,t,h,g,n,o,a);else if(2&p&&h.class!==g.class&&r(c,"class",null,g.class,a),4&p&&r(c,"style",h.style,g.style,a),8&p){const s=t.dynamicProps;for(let t=0;t{m&&Gi(m,n,t,e),f&&Lr(t,e,n,"updated")}),o)},M=(e,t,n,o,r,i,a)=>{for(let s=0;s{if(n!==o){if(n!==b)for(const i in n)V(i)||i in o||r(e,i,n[i],null,l,t.children,a,s,G);for(const c in o){if(V(c))continue;const u=o[c],p=n[c];(u!==p&&"value"!==c||i&&i(e,c))&&r(e,c,p,u,l,t.children,a,s,G)}"value"in o&&r(e,"value",n.value,o.value)}},O=(e,t,o,r,i,a,l,c,u)=>{const p=t.el=e?e.el:s(""),d=t.anchor=e?e.anchor:s("");let{patchFlag:f,dynamicChildren:h,slotScopeIds:g}=t;g&&(c=c?c.concat(g):g),null==e?(n(p,o,r),n(d,o,r),k(t.children,o,d,i,a,l,c,u)):f>0&&64&f&&h&&e.dynamicChildren?(M(e.dynamicChildren,h,o,i,a,l,c),(null!=t.key||i&&t===i.subTree)&&Ai(e,t,!0)):F(e,t,o,d,i,a,l,c,u)},I=(e,t,n,o,r,i,a,s,l)=>{t.slotScopeIds=s,null==e?512&t.shapeFlag?r.ctx.activate(t,n,o,a,l):B(t,n,o,r,i,a,l):N(e,t,l)},B=(e,t,n,o,r,i,a)=>{const s=e.component=function(e,t,n){const o=e.type,r=(t?t.appContext:e.appContext)||Ji,i={uid:Ki++,vnode:e,type:o,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,scope:new wt(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ri(o,r),emitsOptions:So(o,r),emit:null,emitted:null,propsDefaults:b,inheritAttrs:o.inheritAttrs,ctx:b,data:b,props:b,attrs:b,slots:b,refs:b,setupState:b,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,bda:null,da:null,ba:null,a:null,rtg:null,rtc:null,ec:null,sp:null};i.ctx={_:i},i.root=t?t.root:i,i.emit=Ao.bind(null,i),i.$pageInstance=t&&t.$pageInstance,e.ce&&e.ce(i);return i}(e,o,r);if(rr(e)&&(s.ctx.renderer=te),function(e,t=!1){ia=t;const{props:n,children:o}=e.vnode,r=oa(e);(function(e,t,n,o=!1){const r={},i={};ee(i,Ri,1),e.propsDefaults=Object.create(null),ni(e,t,r,i);for(const a in e.propsOptions[0])a in r||(r[a]=void 0);n?e.props=o?r:Ln(r):e.type.props?e.props=r:e.props=i,e.attrs=i})(e,n,r,t),hi(e,o);const i=r?function(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Fn(new Proxy(e.ctx,Vr));const{setup:o}=n;if(o){const n=e.setupContext=o.length>1?function(e){const t=t=>{e.exposed=t||{}};let n;return{get attrs(){return n||(n=function(e){return new Proxy(e.attrs,{get:(t,n)=>(zt(e,0,"$attrs"),t[n])})}(e))},slots:e.slots,emit:e.emit,expose:t}}(e):null;ta(e),Rt();const r=no(o,e,0,[e.props,n]);if(Ft(),na(),R(r)){if(r.then(na,na),t)return r.then((n=>{aa(e,n,t)})).catch((t=>{ro(t,e,0)}));e.asyncDep=r}else aa(e,r,t)}else sa(e,t)}(e,t):void 0;ia=!1}(s),s.asyncDep){if(r&&r.registerDep(s,j),!e.el){const e=s.subTree=Hi(Ti);y(null,e,t,n)}}else j(s,e,t,n,r,i,a)},N=(e,t,n)=>{const o=t.component=e.component;if(function(e,t,n){const{props:o,children:r,component:i}=e,{props:a,children:s,patchFlag:l}=t,c=i.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!r&&!s||s&&s.$stable)||o!==a&&(o?!a||Bo(o,a,c):!!a);if(1024&l)return!0;if(16&l)return o?Bo(o,a,c):!!a;if(8&l){const e=t.dynamicProps;for(let t=0;tlo&&so.splice(t,1)}(o.update),o.update()}else t.el=e.el,o.vnode=t},j=(e,t,n,o,r,i,a)=>{const s=()=>{if(e.isMounted){let t,{next:n,bu:o,u:s,parent:l,vnode:c}=e,u=n;xi(e,!1),n?(n.el=c.el,D(e,n,a)):n=c,o&&Z(o),(t=n.props&&n.props.onVnodeBeforeUpdate)&&Gi(t,l,n,c),xi(e,!0);const d=Lo(e),f=e.subTree;e.subTree=d,g(f,d,p(f.el),J(f),e,r,i),n.el=d.el,null===u&&function({vnode:e,parent:t},n){for(;t&&t.subTree===e;)(e=t.vnode).el=n,t=t.parent}(e,d.el),s&&_i(s,r),(t=n.props&&n.props.onVnodeUpdated)&&_i((()=>Gi(t,l,n,c)),r)}else{let a;const{el:s,props:l}=t,{bm:c,m:u,parent:p}=e,d=tr(t);if(xi(e,!1),c&&Z(c),!d&&(a=l&&l.onVnodeBeforeMount)&&Gi(a,p,t),xi(e,!0),s&&oe){const n=()=>{e.subTree=Lo(e),oe(s,e.subTree,e,r,null)};d?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{const a=e.subTree=Lo(e);g(null,a,n,o,e,r,i),t.el=a.el}if(u&&_i(u,r),!d&&(a=l&&l.onVnodeMounted)){const e=t;_i((()=>Gi(a,p,e)),r)}const{ba:f,a:h}=e;(256&t.shapeFlag||p&&tr(p.vnode)&&256&p.vnode.shapeFlag)&&(f&&mr(f),h&&_i(h,r),f&&_i((()=>yr(f)),r)),e.isMounted=!0,t=n=o=null}},l=e.effect=new Bt(s,(()=>mo(c)),e.scope),c=e.update=()=>l.run();c.id=e.uid,xi(e,!0),c()},D=(e,t,n)=>{t.component=e;const o=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,o){const{props:r,attrs:i,vnode:{patchFlag:a}}=e,s=Rn(r),[l]=e.propsOptions;let c=!1;if(!(o||a>0)||16&a){let o;ni(e,t,r,i)&&(c=!0);for(const i in s)t&&(P(t,i)||(o=Y(i))!==i&&P(t,o))||(l?!n||void 0===n[i]&&void 0===n[o]||(r[i]=oi(l,s,i,void 0,e,!0)):delete r[i]);if(i!==s)for(const e in i)t&&P(t,e)||(delete i[e],c=!0)}else if(8&a){const n=e.vnode.dynamicProps;for(let o=0;o{const c=e&&e.children,p=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:h}=t;if(f>0){if(128&f)return void q(c,d,n,o,r,i,a,s,l);if(256&f)return void z(c,d,n,o,r,i,a,s,l)}8&h?(16&p&&G(c,r,i),d!==c&&u(n,d)):16&p?16&h?q(c,d,n,o,r,i,a,s,l):G(c,r,i,!0):(8&p&&u(n,""),16&h&&k(d,n,o,r,i,a,s,l))},z=(e,t,n,o,r,i,a,s,l)=>{t=t||_;const c=(e=e||_).length,u=t.length,p=Math.min(c,u);let d;for(d=0;du?G(e,r,i,!0,!1,p):k(t,n,o,r,i,a,s,l,p)},q=(e,t,n,o,r,i,a,s,l)=>{let c=0;const u=t.length;let p=e.length-1,d=u-1;for(;c<=p&&c<=d;){const o=e[c],u=t[c]=l?Qi(t[c]):$i(t[c]);if(!Di(o,u))break;g(o,u,n,null,r,i,a,s,l),c++}for(;c<=p&&c<=d;){const o=e[p],c=t[d]=l?Qi(t[d]):$i(t[d]);if(!Di(o,c))break;g(o,c,n,null,r,i,a,s,l),p--,d--}if(c>p){if(c<=d){const e=d+1,p=ed)for(;c<=p;)U(e[c],r,i,!0),c++;else{const f=c,h=c,m=new Map;for(c=h;c<=d;c++){const e=t[c]=l?Qi(t[c]):$i(t[c]);null!=e.key&&m.set(e.key,c)}let y,v=0;const b=d-h+1;let w=!1,x=0;const A=new Array(b);for(c=0;c=b){U(o,r,i,!0);continue}let u;if(null!=o.key)u=m.get(o.key);else for(y=h;y<=d;y++)if(0===A[y-h]&&Di(o,t[y])){u=y;break}void 0===u?U(o,r,i,!0):(A[u-h]=c+1,u>=x?x=u:w=!0,g(o,t[u],n,null,r,i,a,s,l),v++)}const E=w?function(e){const t=e.slice(),n=[0];let o,r,i,a,s;const l=e.length;for(o=0;o>1,e[n[s]]0&&(t[o]=n[i-1]),n[i]=o)}}i=n.length,a=n[i-1];for(;i-- >0;)n[i]=a,a=t[a];return n}(A):_;for(y=E.length-1,c=b-1;c>=0;c--){const e=h+c,p=t[e],d=e+1{const{el:a,type:s,transition:l,children:c,shapeFlag:u}=e;if(6&u)return void H(e.component.subTree,t,o,r);if(128&u)return void e.suspense.move(t,o,r);if(64&u)return void s.move(e,t,o,te);if(s===Ei){n(a,t,o);for(let e=0;el.enter(a)),i);else{const{leave:e,delayLeave:r,afterLeave:i}=l,s=()=>n(a,t,o),c=()=>{e(a,(()=>{s(),i&&i()}))};r?r(a,s,c):c()}else n(a,t,o)},U=(e,t,n,o=!1,r=!1)=>{const{type:i,props:a,ref:s,children:l,dynamicChildren:c,shapeFlag:u,patchFlag:p,dirs:d}=e;if(null!=s&&bi(s,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const f=1&u&&d,h=!tr(e);let g;if(h&&(g=a&&a.onVnodeBeforeUnmount)&&Gi(g,t,e),6&u)X(e.component,n,o);else{if(128&u)return void e.suspense.unmount(n,o);f&&Lr(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,r,te,o):c&&(i!==Ei||p>0&&64&p)?G(c,t,n,!1,!0):(i===Ei&&384&p||!r&&16&u)&&G(l,t,n),o&&W(e)}(h&&(g=a&&a.onVnodeUnmounted)||f)&&_i((()=>{g&&Gi(g,t,e),f&&Lr(e,null,t,"unmounted")}),n)},W=e=>{const{type:t,el:n,anchor:r,transition:i}=e;if(t===Ei)return void $(n,r);if(t===ki)return void A(e);const a=()=>{o(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){const{leave:t,delayLeave:o}=i,r=()=>t(n,a);o?o(e.el,a,r):r()}else a()},$=(e,t)=>{let n;for(;e!==t;)n=d(e),o(e),e=n;o(t)},X=(e,t,n)=>{const{bum:o,scope:r,update:i,subTree:a,um:s}=e;o&&Z(o),r.stop(),i&&(i.active=!1,U(a,e,t,n)),s&&_i(s,t),_i((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},G=(e,t,n,o=!1,r=!1,i=0)=>{for(let a=i;a6&e.shapeFlag?J(e.component.subTree):128&e.shapeFlag?e.suspense.next():d(e.anchor||e.el),K=(e,t,n)=>{null==e?t._vnode&&U(t._vnode,null,null,!0):g(t._vnode||null,e,t,null,null,null,n),vo(),bo(),t._vnode=e},te={p:g,um:U,m:H,r:W,mt:B,mc:k,pc:F,pbc:M,n:J,o:e};let ne,oe;t&&([ne,oe]=t(te));return{render:K,hydrate:ne,createApp:vi(K,ne)}}(e)}function xi({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Ai(e,t,n=!1){const o=e.children,r=t.children;if(M(o)&&M(r))for(let i=0;i0?Pi||_:null,Ci.pop(),Pi=Ci[Ci.length-1]||null,Li>0&&Pi&&Pi.push(e),e}function Bi(e,t,n,o,r,i){return Ii(qi(e,t,n,o,r,i,!0))}function Ni(e,t,n,o,r){return Ii(Hi(e,t,n,o,r,!0))}function ji(e){return!!e&&!0===e.__v_isVNode}function Di(e,t){return e.type===t.type&&e.key===t.key}const Ri="__vInternal",Fi=({key:e})=>null!=e?e:null,zi=({ref:e,ref_key:t,ref_for:n})=>null!=e?N(e)||Vn(e)||B(e)?{i:ko,r:e,k:t,f:!!n}:e:null;function qi(e,t=null,n=null,o=0,r=null,i=(e===Ei?0:1),a=!1,s=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Fi(t),ref:t&&zi(t),scopeId:Co,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:o,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ko};return s?(Xi(l,n),128&i&&e.normalize(l)):n&&(l.shapeFlag|=N(n)?8:16),Li>0&&!a&&Pi&&(l.patchFlag>0||6&i)&&32!==l.patchFlag&&Pi.push(l),l}const Hi=function(e,t=null,n=null,o=0,r=null,i=!1){e&&e!==Br||(e=Ti);if(ji(e)){const o=Ui(e,t,!0);return n&&Xi(o,n),Li>0&&!i&&Pi&&(6&o.shapeFlag?Pi[Pi.indexOf(e)]=o:Pi.push(o)),o.patchFlag|=-2,o}a=e,B(a)&&"__vccOpts"in a&&(e=e.__vccOpts);var a;if(t){t=function(e){return e?Dn(e)||Ri in e?T({},e):e:null}(t);let{class:e,style:n}=t;e&&!N(e)&&(t.class=d(e)),D(n)&&(Dn(n)&&!M(n)&&(n=T({},n)),t.style=s(n))}const l=N(e)?1:No(e)?128:(e=>e.__isTeleport)(e)?64:D(e)?4:B(e)?2:0;return qi(e,t,n,o,r,l,i,!0)};function Ui(e,t,n=!1){const{props:o,ref:r,patchFlag:i,children:a}=e,s=t?Yi(o||{},t):o;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:s,key:s&&Fi(s),ref:t&&t.ref?n&&r?M(r)?r.concat(zi(t)):[r,zi(t)]:zi(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ei?-1===i?16:16|i:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ui(e.ssContent),ssFallback:e.ssFallback&&Ui(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function Vi(e=" ",t=0){return Hi(Si,null,e,t)}function Wi(e="",t=!1){return t?(Mi(),Ni(Ti,null,e)):Hi(Ti,null,e)}function $i(e){return null==e||"boolean"==typeof e?Hi(Ti):M(e)?Hi(Ei,null,e.slice()):"object"==typeof e?Qi(e):Hi(Si,null,String(e))}function Qi(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:Ui(e)}function Xi(e,t){let n=0;const{shapeFlag:o}=e;if(null==t)t=null;else if(M(t))n=16;else if("object"==typeof t){if(65&o){const n=t.default;return void(n&&(n._c&&(n._d=!1),Xi(e,n()),n._c&&(n._d=!0)))}{n=32;const o=t._;o||Ri in t?3===o&&ko&&(1===ko.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=ko}}else B(t)?(t={default:t,_ctx:ko},n=32):(t=String(t),64&o?(n=16,t=[Vi(t)]):n=8);e.children=t,e.shapeFlag|=n}function Yi(...e){const t={};for(let n=0;nZi||ko,ta=e=>{Zi=e,e.scope.on()},na=()=>{Zi&&Zi.scope.off(),Zi=null};function oa(e){return 4&e.vnode.shapeFlag}let ra,ia=!1;function aa(e,t,n){B(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:D(t)&&(e.setupState=Jn(t)),sa(e,n)}function sa(e,t,n){const o=e.type;if(!e.render){if(!t&&ra&&!o.render){const t=o.template||Yr(e).template;if(t){const{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:i,compilerOptions:a}=o,s=T(T({isCustomElement:n,delimiters:i},r),a);o.render=ra(t,s)}}e.render=o.render||w}ta(e),Rt(),$r(e),Ft(),na()}function la(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Jn(Fn(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Hr?Hr[n](e):void 0,has:(e,t)=>t in e||t in Hr}))}function ca(e,t=!0){return B(e)?e.displayName||e.name:e.name||t&&e.__name}const ua=(e,t)=>function(e,t,n=!1){let o,r;const i=B(e);return i?(o=e,r=w):(o=e.get,r=e.set),new to(o,r,i||!r,n)}(e,0,ia);function pa(e,t,n){const o=arguments.length;return 2===o?D(t)&&!M(t)?ji(t)?Hi(e,null,[t]):Hi(e,t):Hi(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):3===o&&ji(n)&&(n=[n]),Hi(e,t,n))}const da=Symbol(""),fa=()=>Do(da),ha="3.2.47",ga="undefined"!=typeof document?document:null,ma=ga&&ga.createElement("template"),ya={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const r=t?ga.createElementNS("http://www.w3.org/2000/svg",e):ga.createElement(e,n?{is:n}:void 0);return"select"===e&&o&&null!=o.multiple&&r.setAttribute("multiple",o.multiple),r},createText:e=>ga.createTextNode(e),createComment:e=>ga.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ga.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,r,i){const a=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),r!==i&&(r=r.nextSibling););else{ma.innerHTML=o?`${e}`:e;const r=ma.content;if(o){const e=r.firstChild;for(;e.firstChild;)r.appendChild(e.firstChild);r.removeChild(e)}t.insertBefore(r,n)}return[a?a.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};const va=/\s*!important$/;function ba(e,t,n){if(M(n))n.forEach((n=>ba(e,t,n)));else if(null==n&&(n=""),n=Pa(n),t.startsWith("--"))e.setProperty(t,n);else{const o=function(e,t){const n=wa[t];if(n)return n;let o=Q(t);if("filter"!==o&&o in e)return wa[t]=o;o=G(o);for(let r=0;r<_a.length;r++){const n=_a[r]+o;if(n in e)return wa[t]=n}return t}(e,t);va.test(n)?e.setProperty(Y(o),n.replace(va,""),"important"):e[o]=n}}const _a=["Webkit","Moz","ms"],wa={};const{unit:xa,unitRatio:Aa,unitPrecision:Ea}={unit:"rem",unitRatio:10/320,unitPrecision:5},Sa=(Ta=xa,ka=Aa,Ca=Ea,e=>e.replace(nt,((e,t)=>{if(!t)return e;if(1===ka)return`${t}${Ta}`;const n=function(e,t){const n=Math.pow(10,t+1),o=Math.floor(e*n);return 10*Math.round(o/10)/n}(parseFloat(t)*ka,Ca);return 0===n?"0":`${n}${Ta}`})));var Ta,ka,Ca;const Pa=e=>N(e)?Sa(e):e,Ma="http://www.w3.org/1999/xlink";function La(e,t,n,o){e.addEventListener(t,n,o)}function Oa(e,t,n,o,r=null){const i=e._vei||(e._vei={}),a=i[t];if(o&&a)a.value=o;else{const[n,s]=function(e){let t;if(Ia.test(e)){let n;for(t={};n=e.match(Ia);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}const n=":"===e[2]?e.slice(3):Y(e.slice(2));return[n,t]}(t);if(o){const a=i[t]=function(e,t){const n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();const o=t&&t.proxy,r=o&&o.$nne,{value:i}=n;if(r&&M(i)){const n=Da(e,i);for(let o=0;oBa||(Na.then((()=>Ba=0)),Ba=Date.now());function Da(e,t){if(M(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>{const t=t=>!t._stopped&&e&&e(t);return t.__wwe=e.__wwe,t}))}return t}const Ra=/^on[a-z]/;const Fa="transition",za="animation",qa=(e,{slots:t})=>pa(Qo,function(e){const t={};for(const T in e)T in Ha||(t[T]=e[T]);if(!1===e.css)return t;const{name:n="v",type:o,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:l=i,appearActiveClass:c=a,appearToClass:u=s,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:f=`${n}-leave-to`}=e,h=function(e){if(null==e)return null;if(D(e))return[Wa(e.enter),Wa(e.leave)];{const t=Wa(e);return[t,t]}}(r),g=h&&h[0],m=h&&h[1],{onBeforeEnter:y,onEnter:v,onEnterCancelled:b,onLeave:_,onLeaveCancelled:w,onBeforeAppear:x=y,onAppear:A=v,onAppearCancelled:E=b}=t,S=(e,t,n)=>{Qa(e,t?u:s),Qa(e,t?c:a),n&&n()},k=(e,t)=>{e._isLeaving=!1,Qa(e,p),Qa(e,f),Qa(e,d),t&&t()},C=e=>(t,n)=>{const r=e?A:v,a=()=>S(t,e,n);Ua(r,[t,a]),Xa((()=>{Qa(t,e?l:i),$a(t,e?u:s),Va(r)||Ga(t,o,g,a)}))};return T(t,{onBeforeEnter(e){Ua(y,[e]),$a(e,i),$a(e,a)},onBeforeAppear(e){Ua(x,[e]),$a(e,l),$a(e,c)},onEnter:C(!1),onAppear:C(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>k(e,t);$a(e,p),document.body.offsetHeight,$a(e,d),Xa((()=>{e._isLeaving&&(Qa(e,p),$a(e,f),Va(_)||Ga(e,o,m,n))})),Ua(_,[e,n])},onEnterCancelled(e){S(e,!1),Ua(b,[e])},onAppearCancelled(e){S(e,!0),Ua(E,[e])},onLeaveCancelled(e){k(e),Ua(w,[e])}})}(e),t);qa.displayName="Transition";const Ha={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};qa.props=T({},$o,Ha);const Ua=(e,t=[])=>{M(e)?e.forEach((e=>e(...t))):e&&e(...t)},Va=e=>!!e&&(M(e)?e.some((e=>e.length>1)):e.length>1);function Wa(e){return ne(e)}function $a(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e._vtc||(e._vtc=new Set)).add(t)}function Qa(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function Xa(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Ya=0;function Ga(e,t,n,o){const r=e._endId=++Ya,i=()=>{r===e._endId&&o()};if(n)return setTimeout(i,n);const{type:a,timeout:s,propCount:l}=function(e,t){const n=window.getComputedStyle(e),o=e=>(n[e]||"").split(", "),r=o(`${Fa}Delay`),i=o(`${Fa}Duration`),a=Ja(r,i),s=o(`${za}Delay`),l=o(`${za}Duration`),c=Ja(s,l);let u=null,p=0,d=0;t===Fa?a>0&&(u=Fa,p=a,d=i.length):t===za?c>0&&(u=za,p=c,d=l.length):(p=Math.max(a,c),u=p>0?a>c?Fa:za:null,d=u?u===Fa?i.length:l.length:0);const f=u===Fa&&/\b(transform|all)(,|$)/.test(o(`${Fa}Property`).toString());return{type:u,timeout:p,propCount:d,hasTransform:f}}(e,t);if(!a)return o();const c=a+"end";let u=0;const p=()=>{e.removeEventListener(c,d),i()},d=t=>{t.target===e&&++u>=l&&p()};setTimeout((()=>{uKa(t)+Ka(e[n]))))}function Ka(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}const Za=e=>{const t=e.props["onUpdate:modelValue"]||!1;return M(t)?e=>Z(t,e):t};function es(e){e.target.composing=!0}function ts(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ns={created(e,{modifiers:{lazy:t,trim:n,number:o}},r){e._assign=Za(r);const i=o||r.props&&"number"===r.props.type;La(e,t?"change":"input",(t=>{if(t.target.composing)return;let o=e.value;n&&(o=o.trim()),i&&(o=te(o)),e._assign(o)})),n&&La(e,"change",(()=>{e.value=e.value.trim()})),t||(La(e,"compositionstart",es),La(e,"compositionend",ts),La(e,"change",ts))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:o,number:r}},i){if(e._assign=Za(i),e.composing)return;if(document.activeElement===e&&"range"!==e.type){if(n)return;if(o&&e.value.trim()===t)return;if((r||"number"===e.type)&&te(e.value)===t)return}const a=null==t?"":t;e.value!==a&&(e.value=a)}},os={deep:!0,created(e,t,n){e._assign=Za(n),La(e,"change",(()=>{const t=e._modelValue,n=ls(e),o=e.checked,r=e._assign;if(M(t)){const e=m(t,n),i=-1!==e;if(o&&!i)r(t.concat(n));else if(!o&&i){const n=[...t];n.splice(e,1),r(n)}}else if(O(t)){const e=new Set(t);o?e.add(n):e.delete(n),r(e)}else r(cs(e,o))}))},mounted:rs,beforeUpdate(e,t,n){e._assign=Za(n),rs(e,t,n)}};function rs(e,{value:t,oldValue:n},o){e._modelValue=t,M(t)?e.checked=m(t,o.props.value)>-1:O(t)?e.checked=t.has(o.props.value):t!==n&&(e.checked=g(t,cs(e,!0)))}const is={created(e,{value:t},n){e.checked=g(t,n.props.value),e._assign=Za(n),La(e,"change",(()=>{e._assign(ls(e))}))},beforeUpdate(e,{value:t,oldValue:n},o){e._assign=Za(o),t!==n&&(e.checked=g(t,o.props.value))}},as={deep:!0,created(e,{value:t,modifiers:{number:n}},o){const r=O(t);La(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?te(ls(e)):ls(e)));e._assign(e.multiple?r?new Set(t):t:t[0])})),e._assign=Za(o)},mounted(e,{value:t}){ss(e,t)},beforeUpdate(e,t,n){e._assign=Za(n)},updated(e,{value:t}){ss(e,t)}};function ss(e,t){const n=e.multiple;if(!n||M(t)||O(t)){for(let o=0,r=e.options.length;o-1:r.selected=t.has(i);else if(g(ls(r),t))return void(e.selectedIndex!==o&&(e.selectedIndex=o))}n||-1===e.selectedIndex||(e.selectedIndex=-1)}}function ls(e){return"_value"in e?e._value:e.value}function cs(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const us={created(e,t,n){ps(e,t,n,null,"created")},mounted(e,t,n){ps(e,t,n,null,"mounted")},beforeUpdate(e,t,n,o){ps(e,t,n,o,"beforeUpdate")},updated(e,t,n,o){ps(e,t,n,o,"updated")}};function ps(e,t,n,o,r){const i=function(e,t){switch(e){case"SELECT":return as;case"TEXTAREA":return ns;default:switch(t){case"checkbox":return os;case"radio":return is;default:return ns}}}(e.tagName,n.props&&n.props.type)[r];i&&i(e,t,n,o)}const ds=["ctrl","shift","alt","meta"],fs={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>ds.some((n=>e[`${n}Key`]&&!t.includes(n)))},hs=(e,t)=>(n,...o)=>{for(let e=0;e{ms(e,!1)})):ms(e,t))},beforeUnmount(e,{value:t}){ms(e,t)}};function ms(e,t){e.style.display=t?e._vod:"none"}const ys=T({patchProp:(e,t,n,o,r=!1,i,a,s,l)=>{if(0===t.indexOf("change:"))return function(e,t,n,o=null){if(!n||!o)return;const r=t.replace("change:",""),{attrs:i}=o,a=i[r],s=(e.__wxsProps||(e.__wxsProps={}))[r];if(s===a)return;e.__wxsProps[r]=a;const l=o.proxy;go((()=>{n(a,s,l.$gcd(l,!0),l.$gcd(l,!1))}))}(e,t,o,a);"class"===t?function(e,t,n){const{__wxsAddClass:o,__wxsRemoveClass:r}=e;r&&r.length&&(t=(t||"").split(/\s+/).filter((e=>-1===r.indexOf(e))).join(" "),r.length=0),o&&o.length&&(t=(t||"")+" "+o.join(" "));const i=e._vtc;i&&(t=(t?[t,...i]:[...i]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,o,r):"style"===t?function(e,t,n){const o=e.style,r=N(n);if(n&&!r){if(t&&!N(t))for(const e in t)null==n[e]&&ba(o,e,"");for(const e in n)ba(o,e,n[e])}else{const i=o.display;r?t!==n&&(o.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(o.display=i)}const{__wxsStyle:i}=e;if(i)for(const a in i)ba(o,a,i[a])}(e,n,o):E(t)?S(t)||Oa(e,t,0,o,a):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,o){if(o)return"innerHTML"===t||"textContent"===t||!!(t in e&&Ra.test(t)&&B(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if(Ra.test(t)&&N(n))return!1;return t in e}(e,t,o,r))?function(e,t,n,o,r,i,a){if("innerHTML"===t||"textContent"===t)return o&&a(o,r,i),void(e[t]=null==n?"":n);if("value"===t&&"PROGRESS"!==e.tagName&&!e.tagName.includes("-")){e._value=n;const o=null==n?"":n;return e.value===o&&"OPTION"!==e.tagName||(e.value=o),void(null==n&&e.removeAttribute(t))}let s=!1;if(""===n||null==n){const o=typeof e[t];"boolean"===o?n=h(n):null==n&&"string"===o?(n="",s=!0):"number"===o&&(n=0,s=!0)}try{e[t]=n}catch(l){}s&&e.removeAttribute(t)}(e,t,o,i,a,s,l):("true-value"===t?e._trueValue=o:"false-value"===t&&(e._falseValue=o),function(e,t,n,o,r){if(o&&t.startsWith("xlink:"))null==n?e.removeAttributeNS(Ma,t.slice(6,t.length)):e.setAttributeNS(Ma,t,n);else{const o=f(t);null==n||o&&!h(n)?e.removeAttribute(t):e.setAttribute(t,o?"":n)}}(e,t,o,r))},forcePatchProp:(e,t)=>0===t.indexOf("change:")||("class"===t&&e.__wxsClassChanged?(e.__wxsClassChanged=!1,!0):!("style"!==t||!e.__wxsStyleChanged)&&(e.__wxsStyleChanged=!1,!0))},ya);let vs;const bs=(...e)=>{const t=(vs||(vs=wi(ys))).createApp(...e),{mount:n}=t;return t.mount=e=>{const o=function(e){if(N(e)){return document.querySelector(e)}return e}(e);if(!o)return;const r=t._component;B(r)||r.render||r.template||(r.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t};const _s=["{","}"];const ws=/^(?:\d)+/,xs=/^(?:\w)+/;const As="zh-Hans",Es="zh-Hant",Ss="en",Ts="fr",ks="es",Cs=Object.prototype.hasOwnProperty,Ps=(e,t)=>Cs.call(e,t),Ms=new class{constructor(){this._caches=Object.create(null)}interpolate(e,t,n=_s){if(!t)return[e];let o=this._caches[e];return o||(o=function(e,[t,n]){const o=[];let r=0,i="";for(;r-1?As:e.indexOf("-hant")>-1?Es:(n=e,["-tw","-hk","-mo","-cht"].find((e=>-1!==n.indexOf(e)))?Es:As);var n;let o=[Ss,Ts,ks];t&&Object.keys(t).length>0&&(o=Object.keys(t));const r=function(e,t){return t.find((t=>0===e.indexOf(t)))}(e,o);return r||void 0}class Os{constructor({locale:e,fallbackLocale:t,messages:n,watcher:o,formater:r}){this.locale=Ss,this.fallbackLocale=Ss,this.message={},this.messages={},this.watchers=[],t&&(this.fallbackLocale=t),this.formater=r||Ms,this.messages=n||{},this.setLocale(e||Ss),o&&this.watchLocale(o)}setLocale(e){const t=this.locale;this.locale=Ls(e,this.messages)||this.fallbackLocale,this.messages[this.locale]||(this.messages[this.locale]={}),this.message=this.messages[this.locale],t!==this.locale&&this.watchers.forEach((e=>{e(this.locale,t)}))}getLocale(){return this.locale}watchLocale(e){const t=this.watchers.push(e)-1;return()=>{this.watchers.splice(t,1)}}add(e,t,n=!0){const o=this.messages[e];o?n?Object.assign(o,t):Object.keys(t).forEach((e=>{Ps(o,e)||(o[e]=t[e])})):this.messages[e]=t}f(e,t,n){return this.formater.interpolate(e,t,n).join("")}t(e,t,n){let o=this.message;return"string"==typeof t?(t=Ls(t,this.messages))&&(o=this.messages[t]):n=t,Ps(o,e)?this.formater.interpolate(o[e],n).join(""):(console.warn(`Cannot translate the value of keypath ${e}. Use the value of keypath as default.`),e)}}function Is(e,t={},n,o){"string"!=typeof e&&([e,t]=[t,e]),"string"!=typeof e&&(e="undefined"!=typeof uni&&af?af():"undefined"!=typeof global&&global.getLocale?global.getLocale():Ss),"string"!=typeof n&&(n="undefined"!=typeof __uniConfig&&__uniConfig.fallbackLocale||Ss);const r=new Os({locale:e,fallbackLocale:n,messages:t,watcher:o});let i=(e,t)=>{{let e=!1;i=function(t,n){const o=qm().$vm;return o&&(o.$locale,e||(e=!0,function(e,t){e.$watchLocale?e.$watchLocale((e=>{t.setLocale(e)})):e.$watch((()=>e.$locale),(e=>{t.setLocale(e)}))}(o,r))),r.t(t,n)}}return i(e,t)};return{i18n:r,f:(e,t,n)=>r.f(e,t,n),t:(e,t)=>i(e,t),add:(e,t,n=!0)=>r.add(e,t,n),watch:e=>r.watchLocale(e),getLocale:()=>r.getLocale(),setLocale:e=>r.setLocale(e)}}function Bs(e,t){return e.indexOf(t[0])>-1} +/*! + * vue-router v4.2.4 + * (c) 2023 Eduardo San Martin Morote + * @license MIT + */const Ns="undefined"!=typeof window;const js=Object.assign;function Ds(e,t){const n={};for(const o in t){const r=t[o];n[o]=Fs(r)?r.map(e):e(r)}return n}const Rs=()=>{},Fs=Array.isArray,zs=/\/$/,qs=e=>e.replace(zs,"");function Hs(e,t,n="/"){let o,r={},i="",a="";const s=t.indexOf("#");let l=t.indexOf("?");return s=0&&(l=-1),l>-1&&(o=t.slice(0,l),i=t.slice(l+1,s>-1?s:t.length),r=e(i)),s>-1&&(o=o||t.slice(0,s),a=t.slice(s,t.length)),o=function(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];".."!==r&&"."!==r||o.push("");let i,a,s=n.length-1;for(i=0;i1&&s--}return n.slice(0,s).join("/")+"/"+o.slice(i-(i===o.length?1:0)).join("/")}(null!=o?o:t,n),{fullPath:o+(i&&"?")+i+a,path:o,query:r,hash:a}}function Us(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function Vs(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ws(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!$s(e[n],t[n]))return!1;return!0}function $s(e,t){return Fs(e)?Qs(e,t):Fs(t)?Qs(t,e):e===t}function Qs(e,t){return Fs(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}var Xs,Ys,Gs,Js;(Ys=Xs||(Xs={})).pop="pop",Ys.push="push",(Js=Gs||(Gs={})).back="back",Js.forward="forward",Js.unknown="";const Ks=/^[^#]+#/;function Zs(e,t){return e.replace(Ks,"#")+t}const el=()=>({left:window.pageXOffset,top:window.pageYOffset});function tl(e){let t;if("el"in e){const n=e.el,o="string"==typeof n&&n.startsWith("#"),r="string"==typeof n?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=function(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.pageXOffset,null!=t.top?t.top:window.pageYOffset)}function nl(e,t){return(history.state?history.state.position-t:-1)+e}const ol=new Map;let rl=()=>location.protocol+"//"+location.host;function il(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let t=r.includes(e.slice(i))?e.slice(i).length:1,n=r.slice(t);return"/"!==n[0]&&(n="/"+n),Us(n,"")}return Us(n,e)+o+r}function al(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?el():null}}function sl(e){const t=function(e){const{history:t,location:n}=window,o={value:il(e,n)},r={value:t.state};function i(o,i,a){const s=e.indexOf("#"),l=s>-1?(n.host&&document.querySelector("base")?e:e.slice(s))+o:rl()+e+o;try{t[a?"replaceState":"pushState"](i,"",l),r.value=i}catch(c){console.error(c),n[a?"replace":"assign"](l)}}return r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:o,state:r,push:function(e,n){const a=js({},r.value,t.state,{forward:e,scroll:el()});i(a.current,a,!0),i(e,js({},al(o.value,e,null),{position:a.position+1},n),!1),o.value=e},replace:function(e,n){i(e,js({},t.state,al(r.value.back,e,r.value.forward,!0),n,{position:r.value.position}),!0),o.value=e}}}(e=function(e){if(!e)if(Ns){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),qs(e)}(e)),n=function(e,t,n,o){let r=[],i=[],a=null;const s=({state:i})=>{const s=il(e,location),l=n.value,c=t.value;let u=0;if(i){if(n.value=s,t.value=i,a&&a===l)return void(a=null);u=c?i.position-c.position:0}else o(s);r.forEach((e=>{e(n.value,l,{delta:u,type:Xs.pop,direction:u?u>0?Gs.forward:Gs.back:Gs.unknown})}))};function l(){const{history:e}=window;e.state&&e.replaceState(js({},e.state,{scroll:el()}),"")}return window.addEventListener("popstate",s),window.addEventListener("beforeunload",l,{passive:!0}),{pauseListeners:function(){a=n.value},listen:function(e){r.push(e);const t=()=>{const t=r.indexOf(e);t>-1&&r.splice(t,1)};return i.push(t),t},destroy:function(){for(const e of i)e();i=[],window.removeEventListener("popstate",s),window.removeEventListener("beforeunload",l)}}}(e,t.state,t.location,t.replace);const o=js({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:Zs.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function ll(e){return"string"==typeof e||"symbol"==typeof e}const cl={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ul=Symbol("");var pl,dl;function fl(e,t){return js(new Error,{type:e,[ul]:!0},t)}function hl(e,t){return e instanceof Error&&ul in e&&(null==t||!!(e.type&t))}(dl=pl||(pl={}))[dl.aborted=4]="aborted",dl[dl.cancelled=8]="cancelled",dl[dl.duplicated=16]="duplicated";const gl="[^/]+?",ml={sensitive:!1,strict:!1,start:!0,end:!0},yl=/[.+*?^${}()[\]/\\]/g;function vl(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function bl(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const wl={type:0,value:""},xl=/[a-zA-Z0-9_]/;function Al(e,t,n){const o=function(e,t){const n=js({},ml,t),o=[];let r=n.start?"^":"";const i=[];for(const l of e){const e=l.length?[]:[90];n.strict&&!l.length&&(r+="/");for(let t=0;t1&&("*"===s||"+"===s)&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:"*"===s||"+"===s,optional:"*"===s||"?"===s})):t("Invalid state to consume buffer"),c="")}function d(){c+=s}for(;l{i(d)}:Rs}function i(e){if(ll(e)){const t=o.get(e);t&&(o.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(i),t.alias.forEach(i))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&o.delete(e.record.name),e.children.forEach(i),e.alias.forEach(i))}}function a(e){let t=0;for(;t=0&&(e.record.path!==n[t].record.path||!Ml(e,n[t]));)t++;n.splice(t,0,e),e.record.name&&!kl(e)&&o.set(e.record.name,e)}return t=Pl({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>r(e))),{addRoute:r,resolve:function(e,t){let r,i,a,s={};if("name"in e&&e.name){if(r=o.get(e.name),!r)throw fl(1,{location:e});a=r.record.name,s=js(Sl(t.params,r.keys.filter((e=>!e.optional)).map((e=>e.name))),e.params&&Sl(e.params,r.keys.map((e=>e.name)))),i=r.stringify(s)}else if("path"in e)i=e.path,r=n.find((e=>e.re.test(i))),r&&(s=r.parse(i),a=r.record.name);else{if(r=t.name?o.get(t.name):n.find((e=>e.re.test(t.path))),!r)throw fl(1,{location:e,currentLocation:t});a=r.record.name,s=js({},t.params,e.params),i=r.stringify(s)}const l=[];let c=r;for(;c;)l.unshift(c.record),c=c.parent;return{name:a,path:i,params:s,matched:l,meta:Cl(l)}},removeRoute:i,getRoutes:function(){return n},getRecordMatcher:function(e){return o.get(e)}}}function Sl(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Tl(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]="object"==typeof n?n[o]:n;return t}function kl(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Cl(e){return e.reduce(((e,t)=>js(e,t.meta)),{})}function Pl(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function Ml(e,t){return t.children.some((t=>t===e||Ml(e,t)))}const Ll=/#/g,Ol=/&/g,Il=/\//g,Bl=/=/g,Nl=/\?/g,jl=/\+/g,Dl=/%5B/g,Rl=/%5D/g,Fl=/%5E/g,zl=/%60/g,ql=/%7B/g,Hl=/%7C/g,Ul=/%7D/g,Vl=/%20/g;function Wl(e){return encodeURI(""+e).replace(Hl,"|").replace(Dl,"[").replace(Rl,"]")}function $l(e){return Wl(e).replace(jl,"%2B").replace(Vl,"+").replace(Ll,"%23").replace(Ol,"%26").replace(zl,"`").replace(ql,"{").replace(Ul,"}").replace(Fl,"^")}function Ql(e){return null==e?"":function(e){return Wl(e).replace(Ll,"%23").replace(Nl,"%3F")}(e).replace(Il,"%2F")}function Xl(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}function Yl(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe&&$l(e))):[o&&$l(o)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Jl(e){const t={};for(const n in e){const o=e[n];void 0!==o&&(t[n]=Fs(o)?o.map((e=>null==e?null:""+e)):null==o?o:""+o)}return t}const Kl=Symbol(""),Zl=Symbol(""),ec=Symbol(""),tc=Symbol(""),nc=Symbol("");function oc(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function rc(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise(((a,s)=>{const l=e=>{var l;!1===e?s(fl(4,{from:n,to:t})):e instanceof Error?s(e):"string"==typeof(l=e)||l&&"object"==typeof l?s(fl(2,{from:t,to:e})):(i&&o.enterCallbacks[r]===i&&"function"==typeof e&&i.push(e),a())},c=e.call(o&&o.instances[r],t,n,l);let u=Promise.resolve(c);e.length<3&&(u=u.then(l)),u.catch((e=>s(e)))}))}function ic(e,t,n,o){const r=[];for(const a of e)for(const e in a.components){let s=a.components[e];if("beforeRouteEnter"===t||a.instances[e])if("object"==typeof(i=s)||"displayName"in i||"props"in i||"__vccOpts"in i){const i=(s.__vccOpts||s)[t];i&&r.push(rc(i,n,o,a,e))}else{let i=s();r.push((()=>i.then((r=>{if(!r)return Promise.reject(new Error(`Couldn't resolve component "${e}" at "${a.path}"`));const i=(s=r).__esModule||"Module"===s[Symbol.toStringTag]?r.default:r;var s;a.components[e]=i;const l=(i.__vccOpts||i)[t];return l&&rc(l,n,o,a,e)()}))))}}var i;return r}function ac(e){const t=Do(ec),n=Do(tc),o=ua((()=>t.resolve(Yn(e.to)))),r=ua((()=>{const{matched:e}=o.value,{length:t}=e,r=e[t-1],i=n.matched;if(!r||!i.length)return-1;const a=i.findIndex(Vs.bind(null,r));if(a>-1)return a;const s=lc(e[t-2]);return t>1&&lc(r)===s&&i[i.length-1].path!==s?i.findIndex(Vs.bind(null,e[t-2])):a})),i=ua((()=>r.value>-1&&function(e,t){for(const n in t){const o=t[n],r=e[n];if("string"==typeof o){if(o!==r)return!1}else if(!Fs(r)||r.length!==o.length||o.some(((e,t)=>e!==r[t])))return!1}return!0}(n.params,o.value.params))),a=ua((()=>r.value>-1&&r.value===n.matched.length-1&&Ws(n.params,o.value.params)));return{route:o,href:ua((()=>o.value.href)),isActive:i,isExactActive:a,navigate:function(n={}){return function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)?t[Yn(e.replace)?"replace":"push"](Yn(e.to)).catch(Rs):Promise.resolve()}}}const sc=er({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ac,setup(e,{slots:t}){const n=Mn(ac(e)),{options:o}=Do(ec),r=ua((()=>({[cc(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[cc(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive})));return()=>{const o=t.default&&t.default(n);return e.custom?o:pa("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}});function lc(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const cc=(e,t,n)=>null!=e?e:null!=t?t:n;function uc(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const pc=er({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=Do(nc),r=ua((()=>e.route||o.value)),i=Do(Zl,0),a=ua((()=>{let e=Yn(i);const{matched:t}=r.value;let n;for(;(n=t[e])&&!n.components;)e++;return e})),s=ua((()=>r.value.matched[a.value]));jo(Zl,ua((()=>a.value+1))),jo(Kl,s),jo(nc,r);const l=Wn();return zo((()=>[l.value,s.value,e.name]),(([e,t,n],[o,r,i])=>{t&&(t.instances[n]=e,r&&r!==t&&e&&e===o&&(t.leaveGuards.size||(t.leaveGuards=r.leaveGuards),t.updateGuards.size||(t.updateGuards=r.updateGuards))),!e||!t||r&&Vs(t,r)&&o||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const o=r.value,i=e.name,a=s.value,c=a&&a.components[i];if(!c)return uc(n.default,{Component:c,route:o});const u=a.props[i],p=u?!0===u?o.params:"function"==typeof u?u(o):u:null,d=pa(c,js({},p,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:l}));return uc(n.default,{Component:d,route:o})||d}}});function dc(e){const t=El(e.routes,e),n=e.parseQuery||Yl,o=e.stringifyQuery||Gl,r=e.history,i=oc(),a=oc(),s=oc(),l=$n(cl);let c=cl;Ns&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Ds.bind(null,(e=>""+e)),p=Ds.bind(null,Ql),d=Ds.bind(null,Xl);function f(e,i){if(i=js({},i||l.value),"string"==typeof e){const o=Hs(n,e,i.path),a=t.resolve({path:o.path},i),s=r.createHref(o.fullPath);return js(o,a,{params:d(a.params),hash:Xl(o.hash),redirectedFrom:void 0,href:s})}let a;if("path"in e)a=js({},e,{path:Hs(n,e.path,i.path).path});else{const t=js({},e.params);for(const e in t)null==t[e]&&delete t[e];a=js({},e,{params:p(t)}),i.params=p(i.params)}const s=t.resolve(a,i),c=e.hash||"";s.params=u(d(s.params));const f=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(o,js({},e,{hash:(h=c,Wl(h).replace(ql,"{").replace(Ul,"}").replace(Fl,"^")),path:s.path}));var h;const g=r.createHref(f);return js({fullPath:f,hash:c,query:o===Gl?Jl(e.query):e.query||{}},s,{redirectedFrom:void 0,href:g})}function h(e){return"string"==typeof e?Hs(n,e,l.value.path):js({},e)}function g(e,t){if(c!==e)return fl(8,{from:t,to:e})}function m(e){return v(e)}function y(e){const t=e.matched[e.matched.length-1];if(t&&t.redirect){const{redirect:n}=t;let o="function"==typeof n?n(e):n;return"string"==typeof o&&(o=o.includes("?")||o.includes("#")?o=h(o):{path:o},o.params={}),js({query:e.query,hash:e.hash,params:"path"in o?{}:e.params},o)}}function v(e,t){const n=c=f(e),r=l.value,i=e.state,a=e.force,s=!0===e.replace,u=y(n);if(u)return v(js(h(u),{state:"object"==typeof u?js({},i,u.state):i,force:a,replace:s}),t||n);const p=n;let d;return p.redirectedFrom=t,!a&&function(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&Vs(t.matched[o],n.matched[r])&&Ws(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}(o,r,n)&&(d=fl(16,{to:p,from:r}),L(r,r,!0,!1)),(d?Promise.resolve(d):w(p,r)).catch((e=>hl(e)?hl(e,2)?e:M(e):P(e,p,r))).then((e=>{if(e){if(hl(e,2))return v(js({replace:s},h(e.to),{state:"object"==typeof e.to?js({},i,e.to.state):i,force:a}),t||p)}else e=A(p,r,!0,s,i);return x(p,r,e),e}))}function b(e,t){const n=g(e,t);return n?Promise.reject(n):Promise.resolve()}function _(e){const t=B.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function w(e,t){let n;const[o,r,s]=function(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let a=0;aVs(e,i)))?o.push(i):n.push(i));const s=e.matched[a];s&&(t.matched.find((e=>Vs(e,s)))||r.push(s))}return[n,o,r]}(e,t);n=ic(o.reverse(),"beforeRouteLeave",e,t);for(const i of o)i.leaveGuards.forEach((o=>{n.push(rc(o,e,t))}));const l=b.bind(null,e,t);return n.push(l),j(n).then((()=>{n=[];for(const o of i.list())n.push(rc(o,e,t));return n.push(l),j(n)})).then((()=>{n=ic(r,"beforeRouteUpdate",e,t);for(const o of r)o.updateGuards.forEach((o=>{n.push(rc(o,e,t))}));return n.push(l),j(n)})).then((()=>{n=[];for(const o of s)if(o.beforeEnter)if(Fs(o.beforeEnter))for(const r of o.beforeEnter)n.push(rc(r,e,t));else n.push(rc(o.beforeEnter,e,t));return n.push(l),j(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=ic(s,"beforeRouteEnter",e,t),n.push(l),j(n)))).then((()=>{n=[];for(const o of a.list())n.push(rc(o,e,t));return n.push(l),j(n)})).catch((e=>hl(e,8)?e:Promise.reject(e)))}function x(e,t,n){s.list().forEach((o=>_((()=>o(e,t,n)))))}function A(e,t,n,o,i){const a=g(e,t);if(a)return a;const s=t===cl,c=Ns?history.state:{};n&&(o||s?r.replace(e.fullPath,js({scroll:s&&c&&c.scroll},i)):r.push(e.fullPath,i)),l.value=e,L(e,t,n,s),M()}let E;function S(){E||(E=r.listen(((e,t,n)=>{if(!N.listening)return;const o=f(e),i=y(o);if(i)return void v(js(i,{replace:!0}),o).catch(Rs);c=o;const a=l.value;var s,u;Ns&&(s=nl(a.fullPath,n.delta),u=el(),ol.set(s,u)),w(o,a).catch((e=>hl(e,12)?e:hl(e,2)?(v(e.to,o).then((e=>{hl(e,20)&&!n.delta&&n.type===Xs.pop&&r.go(-1,!1)})).catch(Rs),Promise.reject()):(n.delta&&r.go(-n.delta,!1),P(e,o,a)))).then((e=>{(e=e||A(o,a,!1))&&(n.delta&&!hl(e,8)?r.go(-n.delta,!1):n.type===Xs.pop&&hl(e,20)&&r.go(-1,!1)),x(o,a,e)})).catch(Rs)})))}let T,k=oc(),C=oc();function P(e,t,n){M(e);const o=C.list();return o.length?o.forEach((o=>o(e,t,n))):console.error(e),Promise.reject(e)}function M(e){return T||(T=!e,S(),k.list().forEach((([t,n])=>e?n(e):t())),k.reset()),e}function L(t,n,o,r){const{scrollBehavior:i}=e;if(!Ns||!i)return Promise.resolve();const a=!o&&function(e){const t=ol.get(e);return ol.delete(e),t}(nl(t.fullPath,0))||(r||!o)&&history.state&&history.state.scroll||null;return go().then((()=>i(t,n,a))).then((e=>e&&tl(e))).catch((e=>P(e,t,n)))}const O=e=>r.go(e);let I;const B=new Set,N={currentRoute:l,listening:!0,addRoute:function(e,n){let o,r;return ll(e)?(o=t.getRecordMatcher(e),r=n):r=e,t.addRoute(r,o)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map((e=>e.record))},resolve:f,options:e,push:m,replace:function(e){return m(js(h(e),{replace:!0}))},go:O,back:()=>O(-1),forward:()=>O(1),beforeEach:i.add,beforeResolve:a.add,afterEach:s.add,onError:C.add,isReady:function(){return T&&l.value!==cl?Promise.resolve():new Promise(((e,t)=>{k.add([e,t])}))},install(e){e.component("RouterLink",sc),e.component("RouterView",pc),e.config.globalProperties.$router=this,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>Yn(l)}),Ns&&!I&&l.value===cl&&(I=!0,m(r.location).catch((e=>{})));const t={};for(const o in cl)Object.defineProperty(t,o,{get:()=>l.value[o],enumerable:!0});e.provide(ec,this),e.provide(tc,Ln(t)),e.provide(nc,l);const n=e.unmount;B.add(e),e.unmount=function(){B.delete(e),B.size<1&&(c=cl,E&&E(),E=null,l.value=cl,I=!1,T=!1),n()}}};function j(e){return e.reduce(((e,t)=>e.then((()=>_(t)))),Promise.resolve())}return N}function fc(){return Do(tc)}const hc=Je((()=>"undefined"!=typeof __uniConfig&&__uniConfig.locales&&!!Object.keys(__uniConfig.locales).length));let gc;function mc(e){return Bs(e,ue)?bc().f(e,function(){const e=af(),t=__uniConfig.locales;return t[e]||t[__uniConfig.fallbackLocale]||t.en||{}}(),ue):e}function yc(e,t){if(1===t.length){if(e){const n=e=>N(e)&&Bs(e,ue),o=t[0];let r=[];if(M(e)&&(r=e.filter((e=>n(e[o])))).length)return r;const i=e[t[0]];if(n(i))return e}return}const n=t.shift();return yc(e&&e[n],t)}function vc(e,t){const n=yc(e,t);if(!n)return!1;const o=t[t.length-1];if(M(n))n.forEach((e=>vc(e,[o])));else{let e=n[o];Object.defineProperty(n,o,{get:()=>mc(e),set(t){e=t}})}return!0}function bc(){if(!gc){let e;if(e=navigator.cookieEnabled&&window.localStorage&&localStorage[ce]||__uniConfig.locale||navigator.language,gc=Is(e),hc()){const t=Object.keys(__uniConfig.locales||{});t.length&&t.forEach((e=>gc.add(e,__uniConfig.locales[e]))),gc.setLocale(e)}}return gc}function _c(e,t,n){return t.reduce(((t,o,r)=>(t[e+o]=n[r],t)),{})}const wc=Je((()=>{const e="uni.async.",t=["error"];bc().add(Ss,_c(e,t,["The connection timed out, click the screen to try again."]),!1),bc().add(ks,_c(e,t,["Se agotó el tiempo de conexión, haga clic en la pantalla para volver a intentarlo."]),!1),bc().add(Ts,_c(e,t,["La connexion a expiré, cliquez sur l'écran pour réessayer."]),!1),bc().add(As,_c(e,t,["连接服务器超时,点击屏幕重试"]),!1),bc().add(Es,_c(e,t,["連接服務器超時,點擊屏幕重試"]),!1)})),xc=Je((()=>{const e="uni.showToast.",t=["unpaired"];bc().add(Ss,_c(e,t,["Please note showToast must be paired with hideToast"]),!1),bc().add(ks,_c(e,t,["Tenga en cuenta que showToast debe estar emparejado con hideToast"]),!1),bc().add(Ts,_c(e,t,["Veuillez noter que showToast doit être associé à hideToast"]),!1),bc().add(As,_c(e,t,["请注意 showToast 与 hideToast 必须配对使用"]),!1),bc().add(Es,_c(e,t,["請注意 showToast 與 hideToast 必須配對使用"]),!1)})),Ac=Je((()=>{const e="uni.showLoading.",t=["unpaired"];bc().add(Ss,_c(e,t,["Please note showLoading must be paired with hideLoading"]),!1),bc().add(ks,_c(e,t,["Tenga en cuenta que showLoading debe estar emparejado con hideLoading"]),!1),bc().add(Ts,_c(e,t,["Veuillez noter que showLoading doit être associé à hideLoading"]),!1),bc().add(As,_c(e,t,["请注意 showLoading 与 hideLoading 必须配对使用"]),!1),bc().add(Es,_c(e,t,["請注意 showLoading 與 hideLoading 必須配對使用"]),!1)})),Ec=Je((()=>{const e="uni.chooseFile.",t=["notUserActivation"];bc().add(Ss,_c(e,t,["File chooser dialog can only be shown with a user activation"]),!1),bc().add(ks,_c(e,t,["El cuadro de diálogo del selector de archivos solo se puede mostrar con la activación del usuario"]),!1),bc().add(Ts,_c(e,t,["La boîte de dialogue du sélecteur de fichier ne peut être affichée qu'avec une activation par l'utilisateur"]),!1),bc().add(As,_c(e,t,["文件选择器对话框只能在由用户激活时显示"]),!1),bc().add(Es,_c(e,t,["文件選擇器對話框只能在由用戶激活時顯示"]),!1)})),Sc=Je((()=>{const e="uni.video.",t=["danmu","volume"];bc().add(Ss,_c(e,t,["Danmu","Volume"]),!1),bc().add(ks,_c(e,t,["Danmu","Volumen"]),!1),bc().add(Ts,_c(e,t,["Danmu","Le Volume"]),!1),bc().add(As,_c(e,t,["弹幕","音量"]),!1),bc().add(Es,_c(e,t,["彈幕","音量"]),!1)})),Tc=Je((()=>{const e="uni.chooseLocation.",t=["search","cancel"];bc().add(Ss,_c(e,t,["Find Place","Cancel"]),!1),bc().add(ks,_c(e,t,["Encontrar","Cancelar"]),!1),bc().add(Ts,_c(e,t,["Trouve","Annuler"]),!1),bc().add(As,_c(e,t,["搜索地点","取消"]),!1),bc().add(Es,_c(e,t,["搜索地點","取消"]),!1)}));function kc(e){if(hc())return t=e,[["titleText"],["searchInput","placeholder"],["buttons","text"]].map((e=>vc(t,e)));var t}function Cc(e){const t=new yt;return{on:(e,n)=>t.on(e,n),once:(e,n)=>t.once(e,n),off:(e,n)=>t.off(e,n),emit:(e,...n)=>t.emit(e,...n),subscribe(n,o,r=!1){t[r?"once":"on"](`${e}.${n}`,o)},unsubscribe(n,o){t.off(`${e}.${n}`,o)},subscribeHandler(n,o,r){t.emit(`${e}.${n}`,o,r)}}}const Pc="invokeViewApi",Mc="invokeServiceApi";let Lc=1;const Oc=Object.create(null);function Ic(e,t){return e+"."+t}function Bc(e,t,n){t=Ic(e,t),Oc[t]||(Oc[t]=n)}function Nc({id:e,name:t,args:n},o){t=Ic(o,t);const r=t=>{e&&Lb.publishHandler(Pc+"."+e,t)},i=Oc[t];i?i(n,r):r({})}const jc=T(Cc("service"),{invokeServiceMethod:(e,t,n)=>{const{subscribe:o,publishHandler:r}=Lb,i=n?Lc++:0;n&&o(Mc+"."+i,n,!0),r(Mc,{id:i,name:e,args:t})}}),Dc=350,Rc=10,Fc=ot(!0);let zc;function qc(){zc&&(clearTimeout(zc),zc=null)}let Hc=0,Uc=0;function Vc(e){if(qc(),1!==e.touches.length)return;const{pageX:t,pageY:n}=e.touches[0];Hc=t,Uc=n,zc=setTimeout((function(){const t=new CustomEvent("longpress",{bubbles:!0,cancelable:!0,target:e.target,currentTarget:e.currentTarget});t.touches=e.touches,t.changedTouches=e.changedTouches,e.target.dispatchEvent(t)}),Dc)}function Wc(e){if(!zc)return;if(1!==e.touches.length)return qc();const{pageX:t,pageY:n}=e.touches[0];return Math.abs(t-Hc)>Rc||Math.abs(n-Uc)>Rc?qc():void 0}function $c(e,t){const n=Number(e);return isNaN(n)?t:n}function Qc(){const e=__uniConfig.globalStyle||{},t=$c(e.rpxCalcMaxDeviceWidth,960),n=$c(e.rpxCalcBaseDeviceWidth,375);function o(){let e=function(){const e=/^Apple/.test(navigator.vendor)&&"number"==typeof window.orientation,t=e&&90===Math.abs(window.orientation);var n=e?Math[t?"max":"min"](screen.width,screen.height):screen.width;return Math.min(window.innerWidth,document.documentElement.clientWidth,n)||n}();e=e<=t?e:n,document.documentElement.style.fontSize=e/23.4375+"px"}o(),document.addEventListener("DOMContentLoaded",o),window.addEventListener("load",o),window.addEventListener("resize",o)}function Xc(){Qc(),et(),window.addEventListener("touchstart",Vc,Fc),window.addEventListener("touchmove",Wc,Fc),window.addEventListener("touchend",qc,Fc),window.addEventListener("touchcancel",qc,Fc)}function Yc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Gc,Jc,Kc=["top","left","right","bottom"],Zc={};function eu(){return Jc="CSS"in window&&"function"==typeof CSS.supports?CSS.supports("top: env(safe-area-inset-top)")?"env":CSS.supports("top: constant(safe-area-inset-top)")?"constant":"":""}function tu(){if(Jc="string"==typeof Jc?Jc:eu()){var e=[],t=!1;try{var n=Object.defineProperty({},"passive",{get:function(){t={passive:!0}}});window.addEventListener("test",null,n)}catch(s){}var o=document.createElement("div");r(o,{position:"absolute",left:"0",top:"0",width:"0",height:"0",zIndex:"-1",overflow:"hidden",visibility:"hidden"}),Kc.forEach((function(e){a(o,e)})),document.body.appendChild(o),i(),Gc=!0}else Kc.forEach((function(e){Zc[e]=0}));function r(e,t){var n=e.style;Object.keys(t).forEach((function(e){var o=t[e];n[e]=o}))}function i(t){t?e.push(t):e.forEach((function(e){e()}))}function a(e,n){var o=document.createElement("div"),a=document.createElement("div"),s=document.createElement("div"),l=document.createElement("div"),c={position:"absolute",width:"100px",height:"200px",boxSizing:"border-box",overflow:"hidden",paddingBottom:Jc+"(safe-area-inset-"+n+")"};r(o,c),r(a,c),r(s,{transition:"0s",animation:"none",width:"400px",height:"400px"}),r(l,{transition:"0s",animation:"none",width:"250%",height:"250%"}),o.appendChild(s),a.appendChild(l),e.appendChild(o),e.appendChild(a),i((function(){o.scrollTop=a.scrollTop=1e4;var e=o.scrollTop,r=a.scrollTop;function i(){this.scrollTop!==(this===o?e:r)&&(o.scrollTop=a.scrollTop=1e4,e=o.scrollTop,r=a.scrollTop,function(e){ou.length||setTimeout((function(){var e={};ou.forEach((function(t){e[t]=Zc[t]})),ou.length=0,ru.forEach((function(t){t(e)}))}),0);ou.push(e)}(n))}o.addEventListener("scroll",i,t),a.addEventListener("scroll",i,t)}));var u=getComputedStyle(o);Object.defineProperty(Zc,n,{configurable:!0,get:function(){return parseFloat(u.paddingBottom)}})}}function nu(e){return Gc||tu(),Zc[e]}var ou=[];var ru=[];const iu=Yc({get support(){return 0!=("string"==typeof Jc?Jc:eu()).length},get top(){return nu("top")},get left(){return nu("left")},get right(){return nu("right")},get bottom(){return nu("bottom")},onChange:function(e){eu()&&(Gc||tu(),"function"==typeof e&&ru.push(e))},offChange:function(e){var t=ru.indexOf(e);t>=0&&ru.splice(t,1)}}),au=hs((()=>{}),["prevent"]);function su(e,t){return parseInt((e.getPropertyValue(t).match(/\d+/)||["0"])[0])}function lu(){const e=su(document.documentElement.style,"--window-top");return e?e+iu.top:0}function cu(){const e=document.documentElement.style,t=lu(),n=su(e,"--window-bottom"),o=su(e,"--window-left"),r=su(e,"--window-right"),i=su(e,"--top-window-height");return{top:t,bottom:n?n+iu.bottom:0,left:o?o+iu.left:0,right:r?r+iu.right:0,topWindowHeight:i||0}}function uu(e){const t=document.documentElement.style;Object.keys(e).forEach((n=>{t.setProperty(n,e[n])}))}function pu(e){return uu(e)}function du(e){return Symbol(e)}function fu(e){return-1!==(e+="").indexOf("rpx")||-1!==e.indexOf("upx")}function hu(e,t=!1){if(t)return function(e){if(!fu(e))return e;return e.replace(/(\d+(\.\d+)?)[ru]px/g,((e,t)=>Md(parseFloat(t))+"px"))}(e);if(N(e)){const t=parseInt(e)||0;return fu(e)?Md(t):t}return e}const gu="M1.952 18.080q-0.32-0.352-0.416-0.88t0.128-0.976l0.16-0.352q0.224-0.416 0.64-0.528t0.8 0.176l6.496 4.704q0.384 0.288 0.912 0.272t0.88-0.336l17.312-14.272q0.352-0.288 0.848-0.256t0.848 0.352l-0.416-0.416q0.32 0.352 0.32 0.816t-0.32 0.816l-18.656 18.912q-0.32 0.352-0.8 0.352t-0.8-0.32l-7.936-8.064z",mu="M15.808 0.16q-4.224 0-7.872 2.176-3.552 2.112-5.632 5.728-2.144 3.744-2.144 8.128 0 4.192 2.144 7.872 2.112 3.52 5.632 5.632 3.68 2.144 7.872 2.144 4.384 0 8.128-2.144 3.616-2.080 5.728-5.632 2.176-3.648 2.176-7.872 0-4.384-2.176-8.128-2.112-3.616-5.728-5.728-3.744-2.176-8.128-2.176zM15.136 8.672h1.728q0.128 0 0.224 0.096t0.096 0.256l-0.384 10.24q0 0.064-0.048 0.112t-0.112 0.048h-1.248q-0.096 0-0.144-0.048t-0.048-0.112l-0.384-10.24q0-0.16 0.096-0.256t0.224-0.096zM16 23.328q-0.48 0-0.832-0.352t-0.352-0.848 0.352-0.848 0.832-0.352 0.832 0.352 0.352 0.848-0.352 0.848-0.832 0.352z",yu="M21.781 7.844l-9.063 8.594 9.063 8.594q0.25 0.25 0.25 0.609t-0.25 0.578q-0.25 0.25-0.578 0.25t-0.578-0.25l-9.625-9.125q-0.156-0.125-0.203-0.297t-0.047-0.359q0-0.156 0.047-0.328t0.203-0.297l9.625-9.125q0.25-0.25 0.578-0.25t0.578 0.25q0.25 0.219 0.25 0.578t-0.25 0.578z",vu="M17.25 16.156l7.375-7.313q0.281-0.281 0.281-0.641t-0.281-0.641q-0.25-0.25-0.625-0.25t-0.625 0.25l-7.375 7.344-7.313-7.344q-0.25-0.25-0.625-0.25t-0.625 0.25q-0.281 0.25-0.281 0.625t0.281 0.625l7.313 7.344-7.375 7.344q-0.281 0.25-0.281 0.625t0.281 0.625q0.125 0.125 0.281 0.188t0.344 0.063q0.156 0 0.328-0.063t0.297-0.188l7.375-7.344 7.375 7.406q0.125 0.156 0.297 0.219t0.328 0.063q0.188 0 0.344-0.078t0.281-0.203q0.281-0.25 0.281-0.609t-0.281-0.641l-7.375-7.406z",bu="M31.562 4.9966666659375q0.435 0.399 0.435 0.87 0.036 0.58-0.399 0.98l-18.61 19.917q-0.145 0.145-0.327 0.217-0.073 0.037-0.145 0.11-0.254 0.035-0.472 0.035-0.29 0-0.544-0.036l-0.145-0.072q-0.109-0.073-0.217-0.182l-0.11-0.072L0.363 16.2786666659375q-0.327-0.399-0.363-0.907 0-0.544 0.363-1.016 0.435-0.326 0.961-0.362 0.527-0.036 0.962 0.362l9.722 9.542L29.712 5.0326666659375q0.399-0.363 0.943-0.363 0.544-0.036 0.907 0.327z";function _u(e,t="#000",n=27){return Hi("svg",{width:n,height:n,viewBox:"0 0 32 32"},[Hi("path",{d:e,fill:t},null,8,["d","fill"])],8,["width","height"])}function wu(){{const{$pageInstance:e}=ea();return e&&e.proxy.$page.id}}function xu(e){const t=Ue(e);if(t.$page)return t.$page.id;if(t.$){const{$pageInstance:e}=t.$;return e&&e.proxy.$page.id}}function Au(){const e=ym(),t=e.length;if(t)return e[t-1]}function Eu(){const e=Au();if(e)return e.$page.meta}function Su(){const e=Eu();return e?e.id:-1}function Tu(){const e=Au();if(e)return e.$vm}const ku=["navigationBar","pullToRefresh"];function Cu(e,t){const n=JSON.parse(JSON.stringify(__uniConfig.globalStyle||{})),o=T({id:t},n,e);ku.forEach((t=>{o[t]=T({},n[t],e[t])}));const{navigationBar:r}=o;return r.titleText&&r.titleImage&&(r.titleText=""),o}function Pu(e,t,n){if(N(e))n=t,t=e,e=Tu();else if("number"==typeof e){const t=ym().find((t=>t.$page.id===e));e=t?t.$vm:Tu()}if(!e)return;const o=e.$[t];return o&&Ye(o,n)}function Mu(e){e.preventDefault()}let Lu,Ou=0;function Iu({onPageScroll:e,onReachBottom:t,onReachBottomDistance:n}){let o=!1,r=!1,i=!0;const a=()=>{function a(){if((()=>{const{scrollHeight:e}=document.documentElement,t=window.innerHeight,o=window.scrollY,i=o>0&&e>t&&o+t+n>=e,a=Math.abs(e-Ou)>n;return!i||r&&!a?(!i&&r&&(r=!1),!1):(Ou=e,r=!0,!0)})())return t&&t(),i=!1,setTimeout((function(){i=!0}),350),!0}e&&e(window.pageYOffset),t&&i&&(a()||(Lu=setTimeout(a,300))),o=!1};return function(){clearTimeout(Lu),o||requestAnimationFrame(a),o=!0}}function Bu(e,t){if(0===t.indexOf("/"))return t;if(0===t.indexOf("./"))return Bu(e,t.slice(2));const n=t.split("/"),o=n.length;let r=0;for(;r0?e.split("/"):[];return i.splice(i.length-r-1,r+1),Qe(i.concat(n).join("/"))}function Nu(e,t=!1){return t?__uniRoutes.find((t=>t.path===e||t.alias===e)):__uniRoutes.find((t=>t.path===e))}class ju{constructor(e){this.$bindClass=!1,this.$bindStyle=!1,this.$vm=e,this.$el=function(e,t=!1){const{vnode:n}=e;if(We(n.el))return t?n.el?[n.el]:[]:n.el;const{subTree:o}=e;if(16&o.shapeFlag){const e=o.children.filter((e=>e.el&&We(e.el)));if(e.length>0)return t?e.map((e=>e.el)):e[0].el}return t?n.el?[n.el]:[]:n.el}(e.$),this.$el.getAttribute&&(this.$bindClass=!!this.$el.getAttribute("class"),this.$bindStyle=!!this.$el.getAttribute("style"))}selectComponent(e){if(!this.$el||!e)return;const t=zu(this.$el.querySelector(e));return t?Du(t,!1):void 0}selectAllComponents(e){if(!this.$el||!e)return[];const t=[],n=this.$el.querySelectorAll(e);for(let o=0;o-1&&t.splice(n,1)}const n=this.$el.__wxsRemoveClass||(this.$el.__wxsRemoveClass=[]);return-1===n.indexOf(e)&&(n.push(e),this.forceUpdate("class")),this}hasClass(e){return this.$el&&this.$el.classList.contains(e)}getDataset(){return this.$el&&this.$el.dataset}callMethod(e,t={}){const n=this.$vm[e];B(n)?n(JSON.parse(JSON.stringify(t))):this.$vm.ownerId&&Lb.publishHandler("onWxsInvokeCallMethod",{nodeId:this.$el.__id,ownerId:this.$vm.ownerId,method:e,args:t})}requestAnimationFrame(e){return window.requestAnimationFrame(e)}getState(){return this.$el&&(this.$el.__wxsState||(this.$el.__wxsState={}))}triggerEvent(e,t={}){return this.$vm.$emit(e,t),this}getComputedStyle(e){if(this.$el){const t=window.getComputedStyle(this.$el);return e&&e.length?e.reduce(((e,n)=>(e[n]=t[n],e)),{}):t}return{}}setTimeout(e,t){return window.setTimeout(e,t)}clearTimeout(e){return window.clearTimeout(e)}getBoundingClientRect(){return this.$el.getBoundingClientRect()}}function Du(e,t=!0){if(t&&e&&(e=Ve(e.$)),e&&e.$el)return e.$el.__wxsComponentDescriptor||(e.$el.__wxsComponentDescriptor=new ju(e)),e.$el.__wxsComponentDescriptor}function Ru(e,t){return Du(e,t)}function Fu(e,t,n,o=!0){if(t){e.__instance||(e.__instance=!0,Object.defineProperty(e,"instance",{get:()=>Ru(n.proxy,!1)}));const r=function(e,t,n=!0){if(!t)return!1;if(n&&e.length<2)return!1;const o=Ve(t);if(!o)return!1;const r=o.$.type;return!(!r.$wxs&&!r.$renderjs)&&o}(t,n,o);if(r)return[e,Ru(r,!1)]}}function zu(e){if(e)return e.__vueParentComponent&&e.__vueParentComponent.proxy}function qu(e){for(;e&&0!==e.tagName.indexOf("UNI-");)e=e.parentElement;return e}function Hu(e,t=!1){const{type:n,timeStamp:o,target:r,currentTarget:i}=e,a={type:n,timeStamp:o,target:rt(t?r:qu(r)),detail:{},currentTarget:rt(i)};return e._stopped&&(a._stopped=!0),e.type.startsWith("touch")&&(a.touches=e.touches,a.changedTouches=e.changedTouches),function(e,t){T(e,{preventDefault:()=>t.preventDefault(),stopPropagation:()=>t.stopPropagation()})}(a,e),a}function Uu(e,t){return{force:1,identifier:0,clientX:e.clientX,clientY:e.clientY-t,pageX:e.pageX,pageY:e.pageY-t}}function Vu(e,t){const n=[];for(let o=0;o0===e.type.indexOf("mouse")||["contextmenu"].includes(e.type))(e))!function(e,t){const n=lu();e.pageX=t.pageX,e.pageY=t.pageY-n,e.clientX=t.clientX,e.clientY=t.clientY-n,e.touches=e.changedTouches=[Uu(t,n)]}(i,e);else if((e=>"undefined"!=typeof TouchEvent&&e instanceof TouchEvent||0===e.type.indexOf("touch")||["longpress"].indexOf(e.type)>=0)(e)){const t=lu();i.touches=Vu(e.touches,t),i.changedTouches=Vu(e.changedTouches,t)}else if((e=>!e.type.indexOf("key")&&e instanceof KeyboardEvent)(e)){["key","code"].forEach((t=>{Object.defineProperty(i,t,{get:()=>e[t]})}))}return Fu(i,t,n)||[i]},createNativeEvent:Hu},Symbol.toStringTag,{value:"Module"});function $u(e){!function(e){const t=e.globalProperties;T(t,Wu),t.$gcd=Ru}(e._context.config)}let Qu=1;function Xu(e){return(e||Su())+"."+Pc}const Yu=T(Cc("view"),{invokeOnCallback:(e,t)=>Ob.emit("api."+e,t),invokeViewMethod:(e,t,n,o)=>{const{subscribe:r,publishHandler:i}=Ob,a=o?Qu++:0;o&&r(Pc+"."+a,o,!0),i(Xu(n),{id:a,name:e,args:t},n)},invokeViewMethodKeepAlive:(e,t,n,o)=>{const{subscribe:r,unsubscribe:i,publishHandler:a}=Ob,s=Qu++,l=Pc+"."+s;return r(l,n),a(Xu(o),{id:s,name:e,args:t},o),()=>{i(l)}}});function Gu(e){Pu(Au(),Se,e),Ob.invokeOnCallback("onWindowResize",e)}function Ju(e){const t=Au();Pu(qm(),he,e),Pu(t,he)}function Ku(){Pu(qm(),ge),Pu(Au(),ge)}const Zu=[ke,Pe];function ep(){Zu.forEach((e=>Ob.subscribe(e,function(e){return(t,n)=>{Pu(parseInt(n),e,t)}}(e))))}function tp(){!function(){const{on:e}=Ob;e(Se,Gu),e(ze,Ju),e(qe,Ku)}(),ep()}function np(){if(this.$route){const e=this.$route.meta;return e.eventChannel||(e.eventChannel=new ut(this.$page.id)),e.eventChannel}}function op(e){e._context.config.globalProperties.getOpenerEventChannel=np}function rp(){return{path:"",query:{},scene:1001,referrerInfo:{appId:"",extraData:{}}}}function ip(e){return/^-?\d+[ur]px$/i.test(e)?e.replace(/(^-?\d+)[ur]px$/i,((e,t)=>`${Md(parseFloat(t))}px`)):/^-?[\d\.]+$/.test(e)?`${e}px`:e||""}function ap(e){const t=e.animation;if(!t||!t.actions||!t.actions.length)return;let n=0;const o=t.actions,r=t.actions.length;function i(){const t=o[n],a=t.option.transition,s=function(e){const t=["matrix","matrix3d","scale","scale3d","rotate3d","skew","translate","translate3d"],n=["scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skewX","skewY","translateX","translateY","translateZ"],o=["opacity","background-color"],r=["width","height","left","right","top","bottom"],i=e.animates,a=e.option,s=a.transition,l={},c=[];return i.forEach((e=>{let i=e.type,a=[...e.args];if(t.concat(n).includes(i))i.startsWith("rotate")||i.startsWith("skew")?a=a.map((e=>parseFloat(e)+"deg")):i.startsWith("translate")&&(a=a.map(ip)),n.indexOf(i)>=0&&(a.length=1),c.push(`${i}(${a.join(",")})`);else if(o.concat(r).includes(a[0])){i=a[0];const e=a[1];l[i]=r.includes(i)?ip(e):e}})),l.transform=l.webkitTransform=c.join(" "),l.transition=l.webkitTransition=Object.keys(l).map((e=>`${function(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`)).replace("webkit","-webkit")}(e)} ${s.duration}ms ${s.timingFunction} ${s.delay}ms`)).join(","),l.transformOrigin=l.webkitTransformOrigin=a.transformOrigin,l}(t);Object.keys(s).forEach((t=>{e.$el.style[t]=s[t]})),n+=1,n{i()}),0)}const sp={props:["animation"],watch:{animation:{deep:!0,handler(){ap(this)}}},mounted(){ap(this)}},lp=e=>{e.__reserved=!0;const{props:t,mixins:n}=e;return t&&t.animation||(n||(e.mixins=[])).push(sp),cp(e)},cp=e=>(e.__reserved=!0,e.compatConfig={MODE:3},er(e)),up={hoverClass:{type:String,default:"none"},hoverStopPropagation:{type:Boolean,default:!1},hoverStartTime:{type:[Number,String],default:50},hoverStayTime:{type:[Number,String],default:400}};function pp(e){const t=Wn(!1);let n,o,r=!1;function i(){requestAnimationFrame((()=>{clearTimeout(o),o=setTimeout((()=>{t.value=!1}),parseInt(e.hoverStayTime))}))}function a(o){o._hoverPropagationStopped||e.hoverClass&&"none"!==e.hoverClass&&!e.disabled&&(e.hoverStopPropagation&&(o._hoverPropagationStopped=!0),r=!0,n=setTimeout((()=>{t.value=!0,r||i()}),parseInt(e.hoverStartTime)))}function s(){r=!1,t.value&&i()}function l(){s(),window.removeEventListener("mouseup",l)}return{hovering:t,binding:{onTouchstartPassive:function(e){e.touches.length>1||a(e)},onMousedown:function(e){r||(a(e),window.addEventListener("mouseup",l))},onTouchend:function(){s()},onMouseup:function(){r&&l()},onTouchcancel:function(){r=!1,t.value=!1,clearTimeout(n)}}}}function dp(e,t){return N(t)&&(t=[t]),t.reduce(((t,n)=>(e[n]&&(t[n]=!0),t)),Object.create(null))}function fp(e){return e.__wwe=!0,e}function hp(e,t){return(n,o,r)=>{e.value&&t(n,function(e,t,n,o){const r=rt(n);return{type:o.type||e,timeStamp:t.timeStamp||0,target:r,currentTarget:r,detail:o}}(n,o,e.value,r||{}))}}const gp=du("uf"),mp=du("ul");function yp(e,t,n){const o=wu();n&&!e||H(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&Lb.on(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?Lb.on(r,t[r]):e&&Lb.on(`uni-${r}-${o}-${e}`,t[r])}))}function vp(e,t,n){const o=wu();n&&!e||H(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&Lb.off(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?Lb.off(r,t[r]):e&&Lb.off(`uni-${r}-${o}-${e}`,t[r])}))}const bp=lp({name:"Button",props:{id:{type:String,default:""},hoverClass:{type:String,default:"button-hover"},hoverStartTime:{type:[Number,String],default:20},hoverStayTime:{type:[Number,String],default:70},hoverStopPropagation:{type:Boolean,default:!1},disabled:{type:[Boolean,String],default:!1},formType:{type:String,default:""},openType:{type:String,default:""},loading:{type:[Boolean,String],default:!1},plain:{type:[Boolean,String],default:!1}},setup(e,{slots:t}){const n=Wn(null),o=Do(gp,!1),{hovering:r,binding:i}=pp(e);bc();const a=fp(((t,r)=>{if(e.disabled)return t.stopImmediatePropagation();r&&n.value.click();const i=e.formType;if(i){if(!o)return;"submit"===i?o.submit(t):"reset"===i&&o.reset(t)}else;})),s=Do(mp,!1);return s&&(s.addHandler(a),Er((()=>{s.removeHandler(a)}))),function(e,t){yp(e.id,t),zo((()=>e.id),((e,n)=>{vp(n,t,!0),yp(e,t,!0)})),Sr((()=>{vp(e.id,t)}))}(e,{"label-click":a}),()=>{const o=e.hoverClass,s=dp(e,"disabled"),l=dp(e,"loading"),c=dp(e,"plain"),u=o&&"none"!==o;return Hi("uni-button",Yi({ref:n,onClick:a,class:u&&r.value?o:""},u&&i,s,l,c),[t.default&&t.default()],16,["onClick"])}}});function _p(e){return e.$el}function wp(e){const{base:t}=__uniConfig.router;return 0===Qe(e).indexOf(t)?Qe(e):t+e}function xp(e){const{base:t,assets:n}=__uniConfig.router;if("./"===t&&(0===e.indexOf("./static/")||n&&0===e.indexOf("./"+n+"/"))&&(e=e.slice(1)),0===e.indexOf("/")){if(0!==e.indexOf("//"))return wp(e.slice(1));e="https:"+e}if(pe.test(e)||de.test(e)||0===e.indexOf("blob:"))return e;const o=ym();return o.length?wp(Bu(o[o.length-1].$page.route,e).slice(1)):e}const Ap=navigator.userAgent,Ep=/android/i.test(Ap),Sp=/iphone|ipad|ipod/i.test(Ap),Tp=Ap.match(/Windows NT ([\d|\d.\d]*)/i),kp=/Macintosh|Mac/i.test(Ap),Cp=/Linux|X11/i.test(Ap),Pp=kp&&navigator.maxTouchPoints>0;function Mp(){return/^Apple/.test(navigator.vendor)&&"number"==typeof window.orientation}function Lp(e){return e&&90===Math.abs(window.orientation)}function Op(e,t){return e?Math[t?"max":"min"](screen.width,screen.height):screen.width}function Ip(e){return Math.min(window.innerWidth,document.documentElement.clientWidth,e)||e}function Bp(e,t,n,o){Ob.invokeViewMethod("video."+e,{videoId:e,type:n,data:o},t)}function Np(e,t){const n={},{top:o,topWindowHeight:r}=cu();if(t.id&&(n.id=e.id),t.dataset&&(n.dataset=tt(e)),t.rect||t.size){const i=e.getBoundingClientRect();t.rect&&(n.left=i.left,n.right=i.right,n.top=i.top-o-r,n.bottom=i.bottom-o-r),t.size&&(n.width=i.width,n.height=i.height)}if(M(t.properties)&&t.properties.forEach((e=>{e=e.replace(/-([a-z])/g,(function(e,t){return t.toUpperCase()}))})),t.scrollOffset)if("UNI-SCROLL-VIEW"===e.tagName){const t=e.children[0].children[0];n.scrollLeft=t.scrollLeft,n.scrollTop=t.scrollTop,n.scrollHeight=t.scrollHeight,n.scrollWidth=t.scrollWidth}else n.scrollLeft=0,n.scrollTop=0,n.scrollHeight=0,n.scrollWidth=0;if(M(t.computedStyle)){const o=getComputedStyle(e);t.computedStyle.forEach((e=>{n[e]=o[e]}))}return t.context&&(n.contextInfo=function(e){return e.__uniContextInfo}(e)),n}function jp(e,t){return(e.matches||e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector||function(e){const t=this.parentElement.querySelectorAll(e);let n=t.length;for(;--n>=0&&t.item(n)!==this;);return n>-1}).call(e,t)}function Dp(e,t,n){const o=[];t.forEach((({component:t,selector:n,single:r,fields:i})=>{null===t?o.push(function(e){const t={};if(e.id&&(t.id=""),e.dataset&&(t.dataset={}),e.rect&&(t.left=0,t.right=0,t.top=0,t.bottom=0),e.size&&(t.width=document.documentElement.clientWidth,t.height=document.documentElement.clientHeight),e.scrollOffset){const e=document.documentElement,n=document.body;t.scrollLeft=e.scrollLeft||n.scrollLeft||0,t.scrollTop=e.scrollTop||n.scrollTop||0,t.scrollHeight=e.scrollHeight||n.scrollHeight||0,t.scrollWidth=e.scrollWidth||n.scrollWidth||0}return t}(i)):o.push(function(e,t,n,o,r){const i=function(e,t){return e?e.$el:t.$el}(t,e),a=i.parentElement;if(!a)return o?null:[];const{nodeType:s}=i,l=3===s||8===s;if(o){const e=l?a.querySelector(n):jp(i,n)?i:i.querySelector(n);return e?Np(e,r):null}{let e=[];const t=(l?a:i).querySelectorAll(n);return t&&t.length&&[].forEach.call(t,(t=>{e.push(Np(t,r))})),!l&&jp(i,n)&&e.unshift(Np(i,r)),e}}(e,t,n,r,i))})),n(o)}const Rp=["original","compressed"],Fp=["album","camera"],zp=["GET","OPTIONS","HEAD","POST","PUT","DELETE","TRACE","CONNECT","PATCH"];function qp(e,t){return e&&-1!==t.indexOf(e)?e:t[0]}function Hp(e,t){return!M(e)||0===e.length||e.find((e=>-1===t.indexOf(e)))?t:e}function Up(e){return function(){try{return e.apply(e,arguments)}catch(t){console.error(t)}}}let Vp=1;const Wp={};function $p(e,t,n,o=!1){return Wp[e]={name:t,keepAlive:o,callback:n},e}function Qp(e,t,n){if("number"==typeof e){const o=Wp[e];if(o)return o.keepAlive||delete Wp[e],o.callback(t,n)}return t}function Xp(e){for(const t in Wp)if(Wp[t].name===e)return!0;return!1}const Yp="success",Gp="fail",Jp="complete";function Kp(e,t={},{beforeAll:n,beforeSuccess:o}={}){H(t)||(t={});const{success:r,fail:i,complete:a}=function(e){const t={};for(const n in e){const o=e[n];B(o)&&(t[n]=Up(o),delete e[n])}return t}(t),s=B(r),l=B(i),c=B(a),u=Vp++;return $p(u,e,(u=>{(u=u||{}).errMsg=function(e,t){return e&&-1!==e.indexOf(":fail")?t+e.substring(e.indexOf(":fail")):t+":ok"}(u.errMsg,e),B(n)&&n(u),u.errMsg===e+":ok"?(B(o)&&o(u,t),s&&r(u)):l&&i(u),c&&a(u)})),u}const Zp="success",ed="fail",td="complete",nd={},od={};function rd(e,t){return function(n){return e(n,t)||n}}function id(e,t,n){let o=!1;for(let r=0;re(t),catch(){}}}function ad(e,t={}){return[Zp,ed,td].forEach((n=>{const o=e[n];if(!M(o))return;const r=t[n];t[n]=function(e){id(o,e,t).then((e=>B(r)&&r(e)||e))}})),t}function sd(e,t){const n=[];M(nd.returnValue)&&n.push(...nd.returnValue);const o=od[e];return o&&M(o.returnValue)&&n.push(...o.returnValue),n.forEach((e=>{t=e(t)||t})),t}function ld(e){const t=Object.create(null);Object.keys(nd).forEach((e=>{"returnValue"!==e&&(t[e]=nd[e].slice())}));const n=od[e];return n&&Object.keys(n).forEach((e=>{"returnValue"!==e&&(t[e]=(t[e]||[]).concat(n[e]))})),t}function cd(e,t,n,o){const r=ld(e);if(r&&Object.keys(r).length){if(M(r.invoke)){return id(r.invoke,n).then((n=>t(ad(ld(e),n),...o)))}return t(ad(r,n),...o)}return t(n,...o)}function ud(e,t){return(n={},...o)=>function(e){return!(!H(e)||![Yp,Gp,Jp].find((t=>B(e[t]))))}(n)?sd(e,cd(e,t,n,o)):sd(e,new Promise(((r,i)=>{cd(e,t,T(n,{success:r,fail:i}),o)})))}function pd(e,t,n,o){return Qp(e,T({errMsg:t+":fail"+(n?" "+n:"")},o))}function dd(e,t,n,o){if(o&&o.beforeInvoke){const e=o.beforeInvoke(t);if(N(e))return e}const r=function(e,t){const n=e[0];if(!t||!H(t.formatArgs)&&H(n))return;const o=t.formatArgs,r=Object.keys(o);for(let i=0;i{fd(o);const r=dd(0,[o],0,n);if(r)throw new Error(r);const i=!Xp(e);!function(e,t){$p(Vp++,e,t,!0)}(e,o),i&&(!function(e){Ob.on("api."+e,(t=>{for(const n in Wp){const o=Wp[n];o.name===e&&o.callback(t)}}))}(e),t())}}function gd(e,t,n){return o=>{fd(o);const r=dd(0,[o],0,n);if(r)throw new Error(r);!function(e,t){for(const n in Wp){const o=Wp[n];o.callback===t&&o.name===e&&delete Wp[n]}}(e=e.replace("off","on"),o);Xp(e)||(!function(e){Ob.off("api."+e)}(e),t())}}function md(e,t,n,o){return n=>{const r=Kp(e,n,o),i=dd(0,[n],0,o);return i?pd(r,e,i):t(n,{resolve:t=>function(e,t,n){return Qp(e,T(n||{},{errMsg:t+":ok"}))}(r,e,t),reject:(t,n)=>pd(r,e,function(e){return!e||N(e)?e:e.stack?(console.error(e.message+ae+e.stack),e.message):e}(t),n)})}}function yd(e,t,n){return hd(e,t,n)}function vd(e,t,n){return gd(e,t,n)}function bd(e,t,n,o){return ud(e,md(e,t,0,o))}function _d(e,t,n,o){return function(e,t,n,o){return(...e)=>{const n=dd(0,e,0,o);if(n)throw new Error(n);return t.apply(null,e)}}(0,t,0,o)}function wd(e,t,n,o){return ud(e,function(e,t,n,o){return md(e,t,0,o)}(e,t,0,o))}let xd=!1,Ad=0,Ed=0,Sd=960,Td=375,kd=750;function Cd(){const{platform:e,pixelRatio:t,windowWidth:n}=function(){const e=Mp(),t=Ip(Op(e,Lp(e)));return{platform:Sp?"ios":"other",pixelRatio:window.devicePixelRatio,windowWidth:t}}();Ad=n,Ed=t,xd="ios"===e}function Pd(e,t){const n=Number(e);return isNaN(n)?t:n}const Md=_d(0,((e,t)=>{if(0===Ad&&(Cd(),function(){const e=__uniConfig.globalStyle||{};Sd=Pd(e.rpxCalcMaxDeviceWidth,960),Td=Pd(e.rpxCalcBaseDeviceWidth,375),kd=Pd(e.rpxCalcBaseDeviceWidth,750)}()),0===(e=Number(e)))return 0;let n=t||Ad;n=e===kd||n<=Sd?n:Td;let o=e/750*n;return o<0&&(o=-o),o=Math.floor(o+1e-4),0===o&&(o=1!==Ed&&xd?.5:1),e<0?-o:o}));function Ld(e,t){Object.keys(t).forEach((n=>{B(t[n])&&(e[n]=function(e,t){const n=t?e?e.concat(t):M(t)?t:[t]:e;return n?function(e){const t=[];for(let n=0;n{N(e)&&H(t)?Ld(od[e]||(od[e]={}),t):H(e)&&Ld(nd,e)})),Id=new yt,Bd=_d(0,((e,t)=>(Id.on(e,t),()=>Id.off(e,t)))),Nd=_d(0,((e,t)=>{e?(M(e)||(e=[e]),e.forEach((e=>Id.off(e,t)))):Id.e={}})),jd=_d(0,((e,...t)=>{Id.emit(e,...t)})),Dd=[.5,.8,1,1.25,1.5,2];class Rd{constructor(e,t){this.id=e,this.pageId=t}play(){Bp(this.id,this.pageId,"play")}pause(){Bp(this.id,this.pageId,"pause")}stop(){Bp(this.id,this.pageId,"stop")}seek(e){Bp(this.id,this.pageId,"seek",{position:e})}sendDanmu(e){Bp(this.id,this.pageId,"sendDanmu",e)}playbackRate(e){~Dd.indexOf(e)||(e=1),Bp(this.id,this.pageId,"playbackRate",{rate:e})}requestFullScreen(e={}){Bp(this.id,this.pageId,"requestFullScreen",e)}exitFullScreen(){Bp(this.id,this.pageId,"exitFullScreen")}showStatusBar(){Bp(this.id,this.pageId,"showStatusBar")}hideStatusBar(){Bp(this.id,this.pageId,"hideStatusBar")}}const Fd=_d(0,((e,t)=>new Rd(e,xu(t||Tu())))),zd=(e,t,n,o)=>{!function(e,t,n,o,r){Ob.invokeViewMethod("map."+e,{type:n,data:o},t,r)}(e,t,n,o,(e=>{o&&((e,t)=>{const n=t.errMsg||"";new RegExp("\\:\\s*fail").test(n)?e.fail&&e.fail(t):e.success&&e.success(t),e.complete&&e.complete(t)})(o,e)}))};const qd={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgrey:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32",transparent:"#00000000"};function Hd(e){var t=null;if(null!=(t=/^#([0-9|A-F|a-f]{6})$/.exec(e=e||"#000000"))){return[parseInt(t[1].slice(0,2),16),parseInt(t[1].slice(2,4),16),parseInt(t[1].slice(4),16),255]}if(null!=(t=/^#([0-9|A-F|a-f]{3})$/.exec(e))){let e=t[1].slice(0,1),n=t[1].slice(1,2),o=t[1].slice(2,3);return e=parseInt(e+e,16),n=parseInt(n+n,16),o=parseInt(o+o,16),[e,n,o,255]}if(null!=(t=/^rgb\((.+)\)$/.exec(e)))return t[1].split(",").map((function(e){return Math.min(255,parseInt(e.trim()))})).concat(255);if(null!=(t=/^rgba\((.+)\)$/.exec(e)))return t[1].split(",").map((function(e,t){return 3===t?Math.floor(255*parseFloat(e.trim())):Math.min(255,parseInt(e.trim()))}));var n=e.toLowerCase();if(P(qd,n)){t=/^#([0-9|A-F|a-f]{6,8})$/.exec(qd[n]);const e=parseInt(t[1].slice(0,2),16),o=parseInt(t[1].slice(2,4),16),r=parseInt(t[1].slice(4,6),16);let i=parseInt(t[1].slice(6,8),16);return i=i>=0?i:255,[e,o,r,i]}return console.error("unsupported color:"+e),[0,0,0,255]}class Ud{constructor(e,t){this.type=e,this.data=t,this.colorStop=[]}addColorStop(e,t){this.colorStop.push([e,Hd(t)])}}class Vd{constructor(e,t){this.type="pattern",this.data=e,this.colorStop=t}}class Wd{constructor(e){this.width=e}}const $d={thresholds:[0],initialRatio:0,observeAll:!1},Qd=["top","right","bottom","left"];let Xd=1;function Yd(e={}){return Qd.map((t=>`${Number(e[t])||0}px`)).join(" ")}class Gd{constructor(e,t){this._pageId=xu(e),this._component=e,this._options=T({},$d,t)}relativeTo(e,t){return this._options.relativeToSelector=e,this._options.rootMargin=Yd(t),this}relativeToViewport(e){return this._options.relativeToSelector=void 0,this._options.rootMargin=Yd(e),this}observe(e,t){B(t)&&(this._options.selector=e,this._reqId=Xd++,function({reqId:e,component:t,options:n,callback:o},r){const i=_p(t);(i.__io||(i.__io={}))[e]=function(e,t,n){Yf();const o=t.relativeToSelector?e.querySelector(t.relativeToSelector):null,r=new IntersectionObserver((e=>{e.forEach((e=>{n({intersectionRatio:Jf(e),intersectionRect:Gf(e.intersectionRect),boundingClientRect:Gf(e.boundingClientRect),relativeRect:Gf(e.rootBounds),time:Date.now(),dataset:tt(e.target),id:e.target.id})}))}),{root:o,rootMargin:t.rootMargin,threshold:t.thresholds});if(t.observeAll){r.USE_MUTATION_OBSERVER=!0;const n=e.querySelectorAll(t.selector);for(let e=0;e((e=Ue(e))&&!xu(e)&&(t=e,e=null),new Gd(e||Tu(),t))));let Kd=0,Zd={};const ef={canvas:class{constructor(e,t){this.id=e,this.pageId=t,this.actions=[],this.path=[],this.subpath=[],this.drawingState=[],this.state={lineDash:[0,0],shadowOffsetX:0,shadowOffsetY:0,shadowBlur:0,shadowColor:[0,0,0,0],font:"10px sans-serif",fontSize:10,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif"}}draw(e=!1,t){var n=[...this.actions];this.actions=[],this.path=[],function(e,t,n,o,r){Ob.invokeViewMethod(`canvas.${e}`,{type:n,data:o},t,(e=>{r&&r(e)}))}(this.id,this.pageId,"actionsChanged",{actions:n,reserve:e},t)}createLinearGradient(e,t,n,o){return new Ud("linear",[e,t,n,o])}createCircularGradient(e,t,n){return new Ud("radial",[e,t,n])}createPattern(e,t){if(void 0===t)console.error("Failed to execute 'createPattern' on 'CanvasContext': 2 arguments required, but only 1 present.");else{if(!(["repeat","repeat-x","repeat-y","no-repeat"].indexOf(t)<0))return new Vd(e,t);console.error("Failed to execute 'createPattern' on 'CanvasContext': The provided type ('"+t+"') is not one of 'repeat', 'no-repeat', 'repeat-x', or 'repeat-y'.")}}measureText(e){let t=0;return t=function(e,t){const n=document.createElement("canvas").getContext("2d");return n.font=t,n.measureText(e).width||0}(e,this.state.font),new Wd(t)}save(){this.actions.push({method:"save",data:[]}),this.drawingState.push(this.state)}restore(){this.actions.push({method:"restore",data:[]}),this.state=this.drawingState.pop()||{lineDash:[0,0],shadowOffsetX:0,shadowOffsetY:0,shadowBlur:0,shadowColor:[0,0,0,0],font:"10px sans-serif",fontSize:10,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif"}}beginPath(){this.path=[],this.subpath=[],this.path.push({method:"beginPath",data:[]})}moveTo(e,t){this.path.push({method:"moveTo",data:[e,t]}),this.subpath=[[e,t]]}lineTo(e,t){0===this.path.length&&0===this.subpath.length?this.path.push({method:"moveTo",data:[e,t]}):this.path.push({method:"lineTo",data:[e,t]}),this.subpath.push([e,t])}quadraticCurveTo(e,t,n,o){this.path.push({method:"quadraticCurveTo",data:[e,t,n,o]}),this.subpath.push([n,o])}bezierCurveTo(e,t,n,o,r,i){this.path.push({method:"bezierCurveTo",data:[e,t,n,o,r,i]}),this.subpath.push([r,i])}arc(e,t,n,o,r,i=!1){this.path.push({method:"arc",data:[e,t,n,o,r,i]}),this.subpath.push([e,t])}rect(e,t,n,o){this.path.push({method:"rect",data:[e,t,n,o]}),this.subpath=[[e,t]]}arcTo(e,t,n,o,r){this.path.push({method:"arcTo",data:[e,t,n,o,r]}),this.subpath.push([n,o])}clip(){this.actions.push({method:"clip",data:[...this.path]})}closePath(){this.path.push({method:"closePath",data:[]}),this.subpath.length&&(this.subpath=[this.subpath.shift()])}clearActions(){this.actions=[],this.path=[],this.subpath=[]}getActions(){var e=[...this.actions];return this.clearActions(),e}set lineDashOffset(e){this.actions.push({method:"setLineDashOffset",data:[e]})}set globalCompositeOperation(e){this.actions.push({method:"setGlobalCompositeOperation",data:[e]})}set shadowBlur(e){this.actions.push({method:"setShadowBlur",data:[e]})}set shadowColor(e){this.actions.push({method:"setShadowColor",data:[e]})}set shadowOffsetX(e){this.actions.push({method:"setShadowOffsetX",data:[e]})}set shadowOffsetY(e){this.actions.push({method:"setShadowOffsetY",data:[e]})}set font(e){var t=this;this.state.font=e;var n=e.match(/^(([\w\-]+\s)*)(\d+r?px)(\/(\d+\.?\d*(r?px)?))?\s+(.*)/);if(n){var o=n[1].trim().split(/\s/),r=parseFloat(n[3]),i=n[7],a=[];o.forEach((function(e,n){["italic","oblique","normal"].indexOf(e)>-1?(a.push({method:"setFontStyle",data:[e]}),t.state.fontStyle=e):["bold","normal"].indexOf(e)>-1?(a.push({method:"setFontWeight",data:[e]}),t.state.fontWeight=e):0===n?(a.push({method:"setFontStyle",data:["normal"]}),t.state.fontStyle="normal"):1===n&&s()})),1===o.length&&s(),o=a.map((function(e){return e.data[0]})).join(" "),this.state.fontSize=r,this.state.fontFamily=i,this.actions.push({method:"setFont",data:[`${o} ${r}px ${i}`]})}else console.warn("Failed to set 'font' on 'CanvasContext': invalid format.");function s(){a.push({method:"setFontWeight",data:["normal"]}),t.state.fontWeight="normal"}}get font(){return this.state.font}set fillStyle(e){this.setFillStyle(e)}set strokeStyle(e){this.setStrokeStyle(e)}set globalAlpha(e){e=Math.floor(255*parseFloat(e)),this.actions.push({method:"setGlobalAlpha",data:[e]})}set textAlign(e){this.actions.push({method:"setTextAlign",data:[e]})}set lineCap(e){this.actions.push({method:"setLineCap",data:[e]})}set lineJoin(e){this.actions.push({method:"setLineJoin",data:[e]})}set lineWidth(e){this.actions.push({method:"setLineWidth",data:[e]})}set miterLimit(e){this.actions.push({method:"setMiterLimit",data:[e]})}set textBaseline(e){this.actions.push({method:"setTextBaseline",data:[e]})}},map:class{constructor(e,t){this.id=e,this.pageId=t}getCenterLocation(e){zd(this.id,this.pageId,"getCenterLocation",e)}moveToLocation(e){zd(this.id,this.pageId,"moveToLocation",e)}getScale(e){zd(this.id,this.pageId,"getScale",e)}getRegion(e){zd(this.id,this.pageId,"getRegion",e)}includePoints(e){zd(this.id,this.pageId,"includePoints",e)}translateMarker(e){zd(this.id,this.pageId,"translateMarker",e)}$getAppMap(){}addCustomLayer(e){zd(this.id,this.pageId,"addCustomLayer",e)}removeCustomLayer(e){zd(this.id,this.pageId,"removeCustomLayer",e)}addGroundOverlay(e){zd(this.id,this.pageId,"addGroundOverlay",e)}removeGroundOverlay(e){zd(this.id,this.pageId,"removeGroundOverlay",e)}updateGroundOverlay(e){zd(this.id,this.pageId,"updateGroundOverlay",e)}initMarkerCluster(e){zd(this.id,this.pageId,"initMarkerCluster",e)}addMarkers(e){zd(this.id,this.pageId,"addMarkers",e)}removeMarkers(e){zd(this.id,this.pageId,"removeMarkers",e)}moveAlong(e){zd(this.id,this.pageId,"moveAlong",e)}setLocMarkerIcon(e){zd(this.id,this.pageId,"setLocMarkerIcon",e)}openMapApp(e){zd(this.id,this.pageId,"openMapApp",e)}on(e){zd(this.id,this.pageId,"on",e)}},video:Rd,editor:class{constructor(e,t){this.id=e,this.pageId=t}format(e,t){this._exec("format",{name:e,value:t})}insertDivider(){this._exec("insertDivider")}insertImage(e){this._exec("insertImage",e)}insertText(e){this._exec("insertText",e)}setContents(e){this._exec("setContents",e)}getContents(e){this._exec("getContents",e)}clear(e){this._exec("clear",e)}removeFormat(e){this._exec("removeFormat",e)}undo(e){this._exec("undo",e)}redo(e){this._exec("redo",e)}blur(e){this._exec("blur",e)}getSelectionText(e){this._exec("getSelectionText",e)}scrollIntoView(e){this._exec("scrollIntoView",e)}_exec(e,t){!function(e,t,n,o){const r={options:o},i=o&&("success"in o||"fail"in o||"complete"in o);if(i){const e=String(Kd++);r.callbackId=e,Zd[e]=o}Ob.invokeViewMethod(`editor.${e}`,{type:n,data:r},t,(({callbackId:e,data:t})=>{i&&(Ke(Zd[e],t),delete Zd[e])}))}(this.id,this.pageId,e,t)}}};function tf(e){if(e&&e.contextInfo){const{id:t,type:n,page:o}=e.contextInfo,r=ef[n];e.context=new r(t,o),delete e.contextInfo}}class nf{constructor(e,t,n,o){this._selectorQuery=e,this._component=t,this._selector=n,this._single=o}boundingClientRect(e){return this._selectorQuery._push(this._selector,this._component,this._single,{id:!0,dataset:!0,rect:!0,size:!0},e),this._selectorQuery}fields(e,t){return this._selectorQuery._push(this._selector,this._component,this._single,e,t),this._selectorQuery}scrollOffset(e){return this._selectorQuery._push(this._selector,this._component,this._single,{id:!0,dataset:!0,scrollOffset:!0},e),this._selectorQuery}context(e){return this._selectorQuery._push(this._selector,this._component,this._single,{context:!0},e),this._selectorQuery}node(e){return this._selectorQuery}}class of{constructor(e){this._component=void 0,this._page=e,this._queue=[],this._queueCb=[]}exec(e){return Dp(this._page,this._queue,(t=>{const n=this._queueCb;t.forEach(((e,t)=>{M(e)?e.forEach(tf):tf(e);const o=n[t];B(o)&&o.call(this,e)})),B(e)&&e.call(this,t)})),this._nodesRef}in(e){return this._component=Ue(e),this}select(e){return this._nodesRef=new nf(this,this._component,e,!0)}selectAll(e){return this._nodesRef=new nf(this,this._component,e,!1)}selectViewport(){return this._nodesRef=new nf(this,null,"",!0)}_push(e,t,n,o,r){this._queue.push({component:t,selector:e,single:n,fields:o}),this._queueCb.push(r)}}const rf=_d(0,(e=>((e=Ue(e))&&!xu(e)&&(e=null),new of(e||Tu())))),af=_d(0,(()=>{const e=qm();return e&&e.$vm?e.$vm.$locale:bc().getLocale()})),sf=_d(0,(e=>{const t=qm();if(!t)return!1;return t.$vm.$locale!==e&&(t.$vm.$locale=e,navigator.cookieEnabled&&window.localStorage&&(localStorage[ce]=e),Ob.invokeOnCallback("onLocaleChange",{locale:e}),!0)})),lf={[_e]:[],[be]:[],[ye]:[],[he]:[],[ge]:[]};const cf=_d(0,(()=>T({},oh))),uf="onCompass",pf="removeStorage",df=["wgs84","gcj02"],ff={formatArgs:{type(e,t){e=(e||"").toLowerCase(),-1===df.indexOf(e)?t.type=df[0]:t.type=e},altitude(e,t){t.altitude=e||!1}}},hf=(Boolean,{formatArgs:{count(e,t){(!e||e<=0)&&(t.count=9)},sizeType(e,t){t.sizeType=Hp(e,Rp)},sourceType(e,t){t.sourceType=Hp(e,Fp)},extension(e,t){if(e instanceof Array&&0===e.length)return"param extension should not be empty.";e||(t.extension=["*"])}}}),gf={formatArgs:{sourceType(e,t){t.sourceType=Hp(e,Fp)},compressed:!0,maxDuration:60,camera:"back",extension(e,t){if(e instanceof Array&&0===e.length)return"param extension should not be empty.";e||(t.extension=["*"])}}},mf=(Boolean,["all","image","video"]),yf={formatArgs:{count(e,t){(!e||e<=0)&&(t.count=100)},sourceType(e,t){t.sourceType=Hp(e,Fp)},type(e,t){t.type=qp(e,mf)},extension(e,t){if(e instanceof Array&&0===e.length)return"param extension should not be empty.";e||(t.extension=[""])}}},vf={formatArgs:{urls(e,t){t.urls=e.map((e=>N(e)&&e?xp(e):""))},current(e,t){"number"==typeof e?t.current=e>0&&ee)),a={};i.forEach((e=>{const t=e.split("=");a[t[0]]=t[1]}));for(const s in t)if(P(t,s)){let e=t[s];null==e?e="":H(e)&&(e=JSON.stringify(e)),a[wf(s)]=wf(e)}return r=Object.keys(a).map((e=>`${e}=${a[e]}`)).join("&"),e+(r?"?"+r:"")+(o?"#"+o:"")}(e,t.data))},header(e,t){const n=t.header=e||{};t.method!==zp[0]&&(Object.keys(n).find((e=>"content-type"===e.toLowerCase()))||(n["Content-Type"]="application/json"))},dataType(e,t){t.dataType=(e||bf).toLowerCase()},responseType(e,t){t.responseType=(e||"").toLowerCase(),-1===_f.indexOf(t.responseType)&&(t.responseType="text")}}},Af={formatArgs:{header(e,t){t.header=e||{}}}},Ef={formatArgs:{filePath(e,t){e&&(t.filePath=xp(e))},header(e,t){t.header=e||{}},formData(e,t){t.formData=e||{}}}};const Sf={url:{type:String,required:!0}},Tf="navigateTo",kf="redirectTo",Cf="reLaunch",Pf="switchTab",Mf="preloadPage",Lf="unPreloadPage",Of=(Df(["slide-in-right","slide-in-left","slide-in-top","slide-in-bottom","fade-in","zoom-out","zoom-fade-out","pop-in","none"]),Df(["slide-out-right","slide-out-left","slide-out-top","slide-out-bottom","fade-out","zoom-in","zoom-fade-in","pop-out","none"]),zf(Tf)),If=zf(kf),Bf=zf(Cf),Nf=zf(Pf),jf={formatArgs:{delta(e,t){e=parseInt(e+"")||1,t.delta=Math.min(ym().length-1,e)}}};function Df(e){return{animationType:{type:String,validator(t){if(t&&-1===e.indexOf(t))return"`"+t+"` is not supported for `animationType` (supported values are: `"+e.join("`|`")+"`)"}},animationDuration:{type:Number}}}let Rf;function Ff(){Rf=""}function zf(e){return{formatArgs:{url:qf(e)},beforeAll:Ff}}function qf(e){return function(t,n){if(!t)return'Missing required args: "url"';const o=(t=function(e){if(0===e.indexOf("/"))return e;let t="";const n=ym();return n.length&&(t=n[n.length-1].$page.route),Bu(t,e)}(t)).split("?")[0],r=Nu(o,!0);if(!r)return"page `"+t+"` is not found";if(e===Tf||e===kf){if(r.meta.isTabBar)return`can not ${e} a tabbar page`}else if(e===Pf&&!r.meta.isTabBar)return"can not switch to no-tabBar page";if(e!==Pf&&e!==Mf||!r.meta.isTabBar||"appLaunch"===n.openType||(t=o),r.meta.isEntry&&(t=t.replace(r.alias,"/")),n.url=function(e){if(!N(e))return e;const t=e.indexOf("?");if(-1===t)return e;const n=e.slice(t+1).trim().replace(/^(\?|#|&)/,"");if(!n)return e;e=e.slice(0,t);const o=[];return n.split("&").forEach((e=>{const t=e.replace(/\+/g," ").split("="),n=t.shift(),r=t.length>0?t.join("="):"";o.push(n+"="+encodeURIComponent(r))})),o.length?e+"?"+o.join("&"):e}(t),e!==Lf)if(e!==Mf){if(Rf===t&&"appLaunch"!==n.openType)return`${Rf} locked`;__uniConfig.ready&&(Rf=t)}else if(r.meta.isTabBar){const e=ym(),t=r.path.slice(1);if(e.find((e=>e.route===t)))return"tabBar page `"+t+"` already exists"}}}const Hf="setNavigationBarTitle",Uf={formatArgs:{duration:300}},Vf=["success","loading","none","error"],Wf=(Boolean,{formatArgs:{title:"",icon(e,t){t.icon=qp(e,Vf)},image(e,t){t.image=e?xp(e):""},duration:1500,mask:!1}}),$f="startPullDownRefresh",Qf="stopPullDownRefresh",Xf="hideTabBar",Yf=function(){if("object"==typeof window)if("IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype)"isIntersecting"in window.IntersectionObserverEntry.prototype||Object.defineProperty(window.IntersectionObserverEntry.prototype,"isIntersecting",{get:function(){return this.intersectionRatio>0}});else{var e=function(e){for(var t=window.document,n=r(t);n;)n=r(t=n.ownerDocument);return t}(),t=[],n=null,o=null;a.prototype.THROTTLE_TIMEOUT=100,a.prototype.POLL_INTERVAL=null,a.prototype.USE_MUTATION_OBSERVER=!0,a._setupCrossOriginUpdater=function(){return n||(n=function(e,n){o=e&&n?p(e,n):{top:0,bottom:0,left:0,right:0,width:0,height:0},t.forEach((function(e){e._checkForIntersections()}))}),n},a._resetCrossOriginUpdater=function(){n=null,o=null},a.prototype.observe=function(e){if(!this._observationTargets.some((function(t){return t.element==e}))){if(!e||1!=e.nodeType)throw new Error("target must be an Element");this._registerInstance(),this._observationTargets.push({element:e,entry:null}),this._monitorIntersections(e.ownerDocument),this._checkForIntersections()}},a.prototype.unobserve=function(e){this._observationTargets=this._observationTargets.filter((function(t){return t.element!=e})),this._unmonitorIntersections(e.ownerDocument),0==this._observationTargets.length&&this._unregisterInstance()},a.prototype.disconnect=function(){this._observationTargets=[],this._unmonitorAllIntersections(),this._unregisterInstance()},a.prototype.takeRecords=function(){var e=this._queuedEntries.slice();return this._queuedEntries=[],e},a.prototype._initThresholds=function(e){var t=e||[0];return Array.isArray(t)||(t=[t]),t.sort().filter((function(e,t,n){if("number"!=typeof e||isNaN(e)||e<0||e>1)throw new Error("threshold must be a number between 0 and 1 inclusively");return e!==n[t-1]}))},a.prototype._parseRootMargin=function(e){var t=(e||"0px").split(/\s+/).map((function(e){var t=/^(-?\d*\.?\d+)(px|%)$/.exec(e);if(!t)throw new Error("rootMargin must be specified in pixels or percent");return{value:parseFloat(t[1]),unit:t[2]}}));return t[1]=t[1]||t[0],t[2]=t[2]||t[0],t[3]=t[3]||t[1],t},a.prototype._monitorIntersections=function(t){var n=t.defaultView;if(n&&-1==this._monitoringDocuments.indexOf(t)){var o=this._checkForIntersections,i=null,a=null;this.POLL_INTERVAL?i=n.setInterval(o,this.POLL_INTERVAL):(s(n,"resize",o,!0),s(t,"scroll",o,!0),this.USE_MUTATION_OBSERVER&&"MutationObserver"in n&&(a=new n.MutationObserver(o)).observe(t,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),this._monitoringDocuments.push(t),this._monitoringUnsubscribes.push((function(){var e=t.defaultView;e&&(i&&e.clearInterval(i),l(e,"resize",o,!0)),l(t,"scroll",o,!0),a&&a.disconnect()}));var c=this.root&&(this.root.ownerDocument||this.root)||e;if(t!=c){var u=r(t);u&&this._monitorIntersections(u.ownerDocument)}}},a.prototype._unmonitorIntersections=function(t){var n=this._monitoringDocuments.indexOf(t);if(-1!=n){var o=this.root&&(this.root.ownerDocument||this.root)||e;if(!this._observationTargets.some((function(e){var n=e.element.ownerDocument;if(n==t)return!0;for(;n&&n!=o;){var i=r(n);if((n=i&&i.ownerDocument)==t)return!0}return!1}))){var i=this._monitoringUnsubscribes[n];if(this._monitoringDocuments.splice(n,1),this._monitoringUnsubscribes.splice(n,1),i(),t!=o){var a=r(t);a&&this._unmonitorIntersections(a.ownerDocument)}}}},a.prototype._unmonitorAllIntersections=function(){var e=this._monitoringUnsubscribes.slice(0);this._monitoringDocuments.length=0,this._monitoringUnsubscribes.length=0;for(var t=0;t=0&&m>=0&&{top:l,bottom:u,left:d,right:h,width:g,height:m}||null),!y)break;v=v&&f(v)}return y}},a.prototype._getRootRect=function(){var t;if(this.root&&!h(this.root))t=c(this.root);else{var n=h(this.root)?this.root:e,o=n.documentElement,r=n.body;t={top:0,left:0,right:o.clientWidth||r.clientWidth,width:o.clientWidth||r.clientWidth,bottom:o.clientHeight||r.clientHeight,height:o.clientHeight||r.clientHeight}}return this._expandRectByRootMargin(t)},a.prototype._expandRectByRootMargin=function(e){var t=this._rootMarginValues.map((function(t,n){return"px"==t.unit?t.value:t.value*(n%2?e.width:e.height)/100})),n={top:e.top-t[0],right:e.right+t[1],bottom:e.bottom+t[2],left:e.left-t[3]};return n.width=n.right-n.left,n.height=n.bottom-n.top,n},a.prototype._hasCrossedThreshold=function(e,t){var n=e&&e.isIntersecting?e.intersectionRatio||0:-1,o=t.isIntersecting?t.intersectionRatio||0:-1;if(n!==o)for(var r=0;r{const o=new XMLHttpRequest;o.open("GET",e,!0),o.responseType="blob",o.onload=function(){t(this.response)},o.onerror=n,o.send()}))}function eh(e,t){let n;if(e instanceof File)n=e;else{t=t||e.type||"";const r=`${Date.now()}${function(e){const t=e.split("/")[1];return t?`.${t}`:""}(t)}`;try{n=new File([e],r,{type:t})}catch(o){n=e=e instanceof Blob?e:new Blob([e],{type:t}),n.name=n.name||r}}return n}function th(e){for(const n in Kf)if(P(Kf,n)){if(Kf[n]===e)return n}var t=(window.URL||window.webkitURL).createObjectURL(e);return Kf[t]=e,t}function nh(e){(window.URL||window.webkitURL).revokeObjectURL(e),delete Kf[e]}const oh=rp(),rh=rp();const ih=lp({name:"ResizeSensor",props:{initial:{type:Boolean,default:!1}},emits:["resize"],setup(e,{emit:t}){const n=Wn(null),o=function(e){return()=>{const{firstElementChild:t,lastElementChild:n}=e.value;t.scrollLeft=1e5,t.scrollTop=1e5,n.scrollLeft=1e5,n.scrollTop=1e5}}(n),r=function(e,t,n){const o=Mn({width:-1,height:-1});return zo((()=>T({},o)),(e=>t("resize",e))),()=>{const t=e.value;o.width=t.offsetWidth,o.height=t.offsetHeight,n()}}(n,t,o);return function(e,t,n,o){cr(o),wr((()=>{t.initial&&go(n);const r=e.value;r.offsetParent!==r.parentElement&&(r.parentElement.style.position="relative"),"AnimationEvent"in window||o()}))}(n,e,r,o),()=>Hi("uni-resize-sensor",{ref:n,onAnimationstartOnce:r},[Hi("div",{onScroll:r},[Hi("div",null,null)],40,["onScroll"]),Hi("div",{onScroll:r},[Hi("div",null,null)],40,["onScroll"])],40,["onAnimationstartOnce"])}});let ah;function sh(){}const lh={cursorSpacing:{type:[Number,String],default:0},showConfirmBar:{type:[Boolean,String],default:"auto"},adjustPosition:{type:[Boolean,String],default:!0},autoBlur:{type:[Boolean,String],default:!1}};function ch(e,t,n){function o(e){const t=ua((()=>0===String(navigator.vendor).indexOf("Apple")));e.addEventListener("focus",(()=>{clearTimeout(ah),document.addEventListener("click",sh,!1)}));e.addEventListener("blur",(()=>{t.value&&e.blur(),document.removeEventListener("click",sh,!1),t.value&&document.documentElement.scrollTo(document.documentElement.scrollLeft,document.documentElement.scrollTop)}))}zo((()=>t.value),(e=>e&&o(e)))}var uh=/^<([-A-Za-z0-9_]+)((?:\s+[a-zA-Z_:][-a-zA-Z0-9_:.]*(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,ph=/^<\/([-A-Za-z0-9_]+)[^>]*>/,dh=/([a-zA-Z_:][-a-zA-Z0-9_:.]*)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g,fh=bh("area,base,basefont,br,col,frame,hr,img,input,link,meta,param,embed,command,keygen,source,track,wbr"),hh=bh("a,address,article,applet,aside,audio,blockquote,button,canvas,center,dd,del,dir,div,dl,dt,fieldset,figcaption,figure,footer,form,frameset,h1,h2,h3,h4,h5,h6,header,hgroup,hr,iframe,isindex,li,map,menu,noframes,noscript,object,ol,output,p,pre,section,script,table,tbody,td,tfoot,th,thead,tr,ul,video"),gh=bh("abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var"),mh=bh("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr"),yh=bh("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected"),vh=bh("script,style");function bh(e){for(var t={},n=e.split(","),o=0;oe/t],heightFix:["offsetHeight","width",(e,t)=>e*t]},xh={aspectFit:["center center","contain"],aspectFill:["center center","cover"],widthFix:[,"100% 100%"],heightFix:[,"100% 100%"],top:["center top"],bottom:["center bottom"],center:["center center"],left:["left center"],right:["right center"],"top left":["left top"],"top right":["right top"],"bottom left":["left bottom"],"bottom right":["right bottom"]},Ah=lp({name:"Image",props:_h,setup(e,{emit:t}){const n=Wn(null),o=function(e,t){const n=Wn(""),o=ua((()=>{let e="auto",o="";const r=xh[t.mode];return r?(r[0]&&(o=r[0]),r[1]&&(e=r[1])):(o="0% 0%",e="100% 100%"),`background-image:${n.value?'url("'+n.value+'")':"none"};background-position:${o};background-size:${e};`})),r=Mn({rootEl:e,src:ua((()=>t.src?xp(t.src):"")),origWidth:0,origHeight:0,origStyle:{width:"",height:""},modeStyle:o,imgSrc:n});return wr((()=>{const t=e.value.style;r.origWidth=Number(t.width)||0,r.origHeight=Number(t.height)||0})),r}(n,e),r=hp(n,t),{fixSize:i}=function(e,t,n){const o=()=>{const{mode:o}=t,r=wh[o];if(!r)return;const{origWidth:i,origHeight:a}=n,s=i&&a?i/a:0;if(!s)return;const l=e.value,c=l[r[0]];c&&(l.style[r[1]]=function(e){Eh&&e>10&&(e=2*Math.round(e/2));return e}(r[2](c,s))+"px")},r=()=>{const{style:t}=e.value,{origStyle:{width:o,height:r}}=n;t.width=o,t.height=r};return zo((()=>t.mode),((e,t)=>{wh[t]&&r(),wh[e]&&o()})),{fixSize:o,resetSize:r}}(n,e,o);return function(e,t,n,o,r){let i,a;const s=(t=0,n=0,o="")=>{e.origWidth=t,e.origHeight=n,e.imgSrc=o},l=l=>{if(!l)return c(),void s();i=i||new Image,i.onload=e=>{const{width:u,height:p}=i;s(u,p,l),o(),i.draggable=t.draggable,a&&a.remove(),a=i,n.value.appendChild(i),c(),r("load",e,{width:u,height:p})},i.onerror=t=>{s(),c(),r("error",t,{errMsg:`GET ${e.src} 404 (Not Found)`})},i.src=l},c=()=>{i&&(i.onload=null,i.onerror=null,i=null)};zo((()=>e.src),(e=>l(e))),zo((()=>e.imgSrc),(e=>{!e&&a&&(a.remove(),a=null)})),wr((()=>l(e.src))),Er((()=>c()))}(o,e,n,i,r),()=>Hi("uni-image",{ref:n},[Hi("div",{style:o.modeStyle},null,4),wh[e.mode]?Hi(ih,{onResize:i},null,8,["onResize"]):Hi("span",null,null)],512)}});const Eh="Google Inc."===navigator.vendor;const Sh=ot(!0),Th=[];let kh,Ch=0;const Ph=e=>Th.forEach((t=>t.userAction=e));function Mh(e={userAction:!1}){if(!kh){["touchstart","touchmove","touchend","mousedown","mouseup"].forEach((e=>{document.addEventListener(e,(function(){!Ch&&Ph(!0),Ch++,setTimeout((()=>{! --Ch&&Ph(!1)}),0)}),Sh)})),kh=!0}Th.push(e)}const Lh=()=>!!Ch;function Oh(){const e=Mn({userAction:!1});return wr((()=>{Mh(e)})),Er((()=>{!function(e){const t=Th.indexOf(e);t>=0&&Th.splice(t,1)}(e)})),{state:e}}function Ih(){const e=Mn({attrs:{}});return wr((()=>{let t=ea();for(;t;){const n=t.type.__scopeId;n&&(e.attrs[n]=""),t=t.proxy&&"page"===t.proxy.$mpType?null:t.parent}})),{state:e}}function Bh(e,t){const n=document.activeElement;if(!n)return t({});const o={};["input","textarea"].includes(n.tagName.toLowerCase())&&(o.start=n.selectionStart,o.end=n.selectionEnd),t(o)}function Nh(e,t){return"number"===t&&isNaN(Number(e))&&(e=""),null===e?"":String(e)}const jh=["none","text","decimal","numeric","tel","search","email","url"],Dh=T({},{name:{type:String,default:""},modelValue:{type:[String,Number],default:""},value:{type:[String,Number],default:""},disabled:{type:[Boolean,String],default:!1},autoFocus:{type:[Boolean,String],default:!1},focus:{type:[Boolean,String],default:!1},cursor:{type:[Number,String],default:-1},selectionStart:{type:[Number,String],default:-1},selectionEnd:{type:[Number,String],default:-1},type:{type:String,default:"text"},password:{type:[Boolean,String],default:!1},placeholder:{type:String,default:""},placeholderStyle:{type:String,default:""},placeholderClass:{type:String,default:""},maxlength:{type:[Number,String],default:140},confirmType:{type:String,default:"done"},confirmHold:{type:Boolean,default:!1},ignoreCompositionEvent:{type:Boolean,default:!0},step:{type:String,default:"0.000000000000000001"},inputmode:{type:String,default:void 0,validator:e=>!!~jh.indexOf(e)}},lh),Rh=["input","focus","blur","update:value","update:modelValue","update:focus","compositionstart","compositionupdate","compositionend","keyboardheightchange"];function Fh(e,t,n,o){const r=ct((n=>{t.value=Nh(n,e.type)}),100,{setTimeout:setTimeout,clearTimeout:clearTimeout});zo((()=>e.modelValue),r),zo((()=>e.value),r);const i=function(e,t){let n,o,r=0;const i=function(...i){const a=Date.now();clearTimeout(n),o=()=>{o=null,r=a,e.apply(this,i)},a-r{r.cancel(),n("update:modelValue",t.value),n("update:value",t.value),o("input",e,t)}),100);return _r((()=>{r.cancel(),i.cancel()})),{trigger:o,triggerInput:(e,t,n)=>{r.cancel(),i(e,t),n&&i.flush()}}}function zh(e,t){Oh();const n=ua((()=>e.autoFocus||e.focus));function o(){if(!n.value)return;const e=t.value;e?e.focus():setTimeout(o,100)}zo((()=>e.focus),(e=>{e?o():function(){const e=t.value;e&&e.blur()}()})),wr((()=>{n.value&&go(o)}))}function qh(e,t,n,o){Bc(Su(),"getSelectedTextRange",Bh);const{fieldRef:r,state:i,trigger:a}=function(e,t,n){const o=Wn(null),r=hp(t,n),i=ua((()=>{const t=Number(e.selectionStart);return isNaN(t)?-1:t})),a=ua((()=>{const t=Number(e.selectionEnd);return isNaN(t)?-1:t})),s=ua((()=>{const t=Number(e.cursor);return isNaN(t)?-1:t})),l=ua((()=>{var t=Number(e.maxlength);return isNaN(t)?140:t})),c=Nh(e.modelValue,e.type)||Nh(e.value,e.type),u=Mn({value:c,valueOrigin:c,maxlength:l,focus:e.focus,composing:!1,selectionStart:i,selectionEnd:a,cursor:s});return zo((()=>u.focus),(e=>n("update:focus",e))),zo((()=>u.maxlength),(e=>u.value=u.value.slice(0,e))),{fieldRef:o,state:u,trigger:r}}(e,t,n),{triggerInput:s}=Fh(e,i,n,a);zh(e,r),ch(0,r);const{state:l}=Ih();!function(e,t){const n=Do(gp,!1);if(!n)return;const o=ea(),r={submit(){const n=o.proxy;return[n[e],N(t)?n[t]:t.value]},reset(){N(t)?o.proxy[t]="":t.value=""}};n.addField(r),Er((()=>{n.removeField(r)}))}("name",i),function(e,t,n,o,r,i){function a(){const n=e.value;n&&t.focus&&t.selectionStart>-1&&t.selectionEnd>-1&&"number"!==n.type&&(n.selectionStart=t.selectionStart,n.selectionEnd=t.selectionEnd)}function s(){const n=e.value;n&&t.focus&&t.selectionStart<0&&t.selectionEnd<0&&t.cursor>-1&&"number"!==n.type&&(n.selectionEnd=n.selectionStart=t.cursor)}function l(e){return"number"===e.type?null:e.selectionEnd}zo([()=>t.selectionStart,()=>t.selectionEnd],a),zo((()=>t.cursor),s),zo((()=>e.value),(function(){const c=e.value;if(!c)return;const u=function(e,o){e.stopPropagation(),B(i)&&!1===i(e,t)||(t.value=c.value,t.composing&&n.ignoreCompositionEvent||r(e,{value:c.value,cursor:l(c)},o))};function p(e){n.ignoreCompositionEvent||o(e.type,e,{value:e.data})}c.addEventListener("change",(e=>e.stopPropagation())),c.addEventListener("focus",(function(e){t.focus=!0,o("focus",e,{value:t.value}),a(),s()})),c.addEventListener("blur",(function(e){t.composing&&(t.composing=!1,u(e,!0)),t.focus=!1,o("blur",e,{value:t.value,cursor:l(e.target)})})),c.addEventListener("input",u),c.addEventListener("compositionstart",(e=>{e.stopPropagation(),t.composing=!0,p(e)})),c.addEventListener("compositionend",(e=>{e.stopPropagation(),t.composing&&(t.composing=!1,u(e)),p(e)})),c.addEventListener("compositionupdate",p)}))}(r,i,e,a,s,o);return{fieldRef:r,state:i,scopedAttrsState:l,fixDisabledColor:0===String(navigator.vendor).indexOf("Apple")&&CSS.supports("image-orientation:from-image"),trigger:a}}const Hh=lp({name:"Input",props:T({},Dh,{placeholderClass:{type:String,default:"input-placeholder"},textContentType:{type:String,default:""}}),emits:["confirm",...Rh],setup(e,{emit:t}){const n=["text","number","idcard","digit","password","tel"],o=["off","one-time-code"],r=ua((()=>{let t="";switch(e.type){case"text":"search"===e.confirmType&&(t="search");break;case"idcard":t="text";break;case"digit":t="number";break;default:t=~n.includes(e.type)?e.type:"text"}return e.password?"password":t})),i=ua((()=>{const t=o.indexOf(e.textContentType),n=o.indexOf(Y(e.textContentType));return o[-1!==t?t:-1!==n?n:0]}));let a,s=Wn("");const l=Wn(null),{fieldRef:c,state:u,scopedAttrsState:p,fixDisabledColor:d,trigger:f}=qh(e,l,t,((e,t)=>{const n=e.target;if("number"===r.value){if(a&&(n.removeEventListener("blur",a),a=null),n.validity&&!n.validity.valid){if((!s.value||!n.value)&&"-"===e.data||"-"===s.value[0]&&"deleteContentBackward"===e.inputType)return s.value="-",t.value="",a=()=>{s.value=n.value=""},n.addEventListener("blur",a),!1;if(s.value)if(-1!==s.value.indexOf(".")){if("."!==e.data&&"deleteContentBackward"===e.inputType){const e=s.value.indexOf(".");return s.value=n.value=t.value=s.value.slice(0,e),!0}}else if("."===e.data)return s.value+=".",a=()=>{s.value=n.value=s.value.slice(0,-1)},n.addEventListener("blur",a),!1;return s.value=t.value=n.value="-"===s.value?"":s.value,!1}s.value=n.value;const o=t.maxlength;if(o>0&&n.value.length>o)return n.value=n.value.slice(0,o),t.value=n.value,!1}}));zo((()=>u.value),(t=>{"number"!==e.type||"-"===s.value&&""===t||(s.value=t)}));const h=["number","digit"],g=ua((()=>h.includes(e.type)?e.step:""));function m(t){if("Enter"!==t.key)return;const n=t.target;t.stopPropagation(),f("confirm",t,{value:n.value}),!e.confirmHold&&n.blur()}return()=>{let t=e.disabled&&d?Hi("input",{key:"disabled-input",ref:c,value:u.value,tabindex:"-1",readonly:!!e.disabled,type:r.value,maxlength:u.maxlength,step:g.value,class:"uni-input-input",onFocus:e=>e.target.blur()},null,40,["value","readonly","type","maxlength","step","onFocus"]):Mr(Hi("input",{key:"input",ref:c,"onUpdate:modelValue":e=>u.value=e,disabled:!!e.disabled,type:r.value,maxlength:u.maxlength,step:g.value,enterkeyhint:e.confirmType,pattern:"number"===e.type?"[0-9]*":void 0,class:"uni-input-input",autocomplete:i.value,onKeyup:m,inputmode:e.inputmode},null,40,["onUpdate:modelValue","disabled","type","maxlength","step","enterkeyhint","pattern","autocomplete","onKeyup","inputmode"]),[[us,u.value]]);return Hi("uni-input",{ref:l},[Hi("div",{class:"uni-input-wrapper"},[Mr(Hi("div",Yi(p.attrs,{style:e.placeholderStyle,class:["uni-input-placeholder",e.placeholderClass]}),[e.placeholder],16),[[gs,!(u.value.length||"-"===s.value)]]),"search"===e.confirmType?Hi("form",{action:"",onSubmit:e=>e.preventDefault(),class:"uni-input-form"},[t],40,["onSubmit"]):t])],512)}}});const Uh=["class","style"],Vh=/^on[A-Z]+/,Wh=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n=[]}=e,o=ea(),r=$n({}),i=$n({}),a=$n({}),s=n.concat(Uh);return o.attrs=Mn(o.attrs),Ro((()=>{const e=(n=o.attrs,Object.keys(n).map((e=>[e,n[e]]))).reduce(((e,[n,o])=>(s.includes(n)?e.exclude[n]=o:Vh.test(n)?(t||(e.attrs[n]=o),e.listeners[n]=o):e.attrs[n]=o,e)),{exclude:{},attrs:{},listeners:{}});var n;r.value=e.attrs,i.value=e.listeners,a.value=e.exclude})),{$attrs:r,$listeners:i,$excludeAttrs:a}};function $h(e){const t=[];return M(e)&&e.forEach((e=>{ji(e)?e.type===Ei?t.push(...$h(e.children)):t.push(e):M(e)&&t.push(...$h(e))})),t}const Qh=lp({inheritAttrs:!1,name:"MovableArea",props:{scaleArea:{type:Boolean,default:!1}},setup(e,{slots:t}){const n=Wn(null),o=Wn(!1);let{setContexts:r,events:i}=function(e,t){const n=Wn(0),o=Wn(0),r=Mn({x:null,y:null}),i=Wn(null);let a=null,s=[];function l(t){t&&1!==t&&(e.scaleArea?s.forEach((function(e){e._setScale(t)})):a&&a._setScale(t))}function c(e,n=s){let o=t.value;function r(e){for(let t=0;t{let n=t.touches;if(n&&n.length>1){let t={x:n[1].pageX-n[0].pageX,y:n[1].pageY-n[0].pageY};if(i.value=Xh(t),r.x=t.x,r.y=t.y,!e.scaleArea){let e=c(n[0].target),t=c(n[1].target);a=e&&e===t?e:null}}})),p=fp((e=>{let t=e.touches;if(t&&t.length>1){e.preventDefault();let n={x:t[1].pageX-t[0].pageX,y:t[1].pageY-t[0].pageY};if(null!==r.x&&i.value&&i.value>0){l(Xh(n)/i.value)}r.x=n.x,r.y=n.y}})),d=fp((t=>{let n=t.touches;n&&n.length||t.changedTouches&&(r.x=0,r.y=0,i.value=null,e.scaleArea?s.forEach((function(e){e._endScale()})):a&&a._endScale())}));function f(){h(),s.forEach((function(e,t){e.setParent()}))}function h(){let e=window.getComputedStyle(t.value),r=t.value.getBoundingClientRect();n.value=r.width-["Left","Right"].reduce((function(t,n){const o="padding"+n;return t+parseFloat(e["border"+n+"Width"])+parseFloat(e[o])}),0),o.value=r.height-["Top","Bottom"].reduce((function(t,n){const o="padding"+n;return t+parseFloat(e["border"+n+"Width"])+parseFloat(e[o])}),0)}return jo("movableAreaWidth",n),jo("movableAreaHeight",o),{setContexts(e){s=e},events:{_onTouchstart:u,_onTouchmove:p,_onTouchend:d,_resize:f}}}(e,n);const{$listeners:a,$attrs:s,$excludeAttrs:l}=Wh(),c=a.value;["onTouchstart","onTouchmove","onTouchend"].forEach((e=>{let t=c[e],n=i[`_${e}`];c[e]=t?[].concat(t,n):n})),wr((()=>{i._resize(),o.value=!0}));let u=[];const p=[];function d(){const e=[];for(let t=0;tn===e.rootRef.value));o&&e.push(Fn(o))}r(e)}return jo("_isMounted",o),jo("movableAreaRootRef",n),jo("addMovableViewContext",(e=>{p.push(e),d()})),jo("removeMovableViewContext",(e=>{const t=p.indexOf(e);t>=0&&(p.splice(t,1),d())})),()=>{const e=t.default&&t.default();return u=$h(e),Hi("uni-movable-area",Yi({ref:n},s.value,l.value,c),[Hi(ih,{onResize:i._resize},null,8,["onResize"]),u],16)}}});function Xh(e){return Math.sqrt(e.x*e.x+e.y*e.y)}const Yh=function(e,t,n,o){e.addEventListener(t,(e=>{B(n)&&!1===n(e)&&((void 0===e.cancelable||e.cancelable)&&e.preventDefault(),e.stopPropagation())}),{passive:!1})};let Gh,Jh;function Kh(e,t,n){Er((()=>{document.removeEventListener("mousemove",Gh),document.removeEventListener("mouseup",Jh)}));let o=0,r=0,i=0,a=0;const s=function(e,n,s,l){if(!1===t({cancelable:e.cancelable,target:e.target,currentTarget:e.currentTarget,preventDefault:e.preventDefault.bind(e),stopPropagation:e.stopPropagation.bind(e),touches:e.touches,changedTouches:e.changedTouches,detail:{state:n,x:s,y:l,dx:s-o,dy:l-r,ddx:s-i,ddy:l-a,timeStamp:e.timeStamp}}))return!1};let l,c,u=null;Yh(e,"touchstart",(function(e){if(l=!0,1===e.touches.length&&!u)return u=e,o=i=e.touches[0].pageX,r=a=e.touches[0].pageY,s(e,"start",o,r)})),Yh(e,"mousedown",(function(e){if(c=!0,!l&&!u)return u=e,o=i=e.pageX,r=a=e.pageY,s(e,"start",o,r)})),Yh(e,"touchmove",(function(e){if(1===e.touches.length&&u){const t=s(e,"move",e.touches[0].pageX,e.touches[0].pageY);return i=e.touches[0].pageX,a=e.touches[0].pageY,t}}));const p=Gh=function(e){if(!l&&c&&u){const t=s(e,"move",e.pageX,e.pageY);return i=e.pageX,a=e.pageY,t}};document.addEventListener("mousemove",p),Yh(e,"touchend",(function(e){if(0===e.touches.length&&u)return l=!1,u=null,s(e,"end",e.changedTouches[0].pageX,e.changedTouches[0].pageY)}));const d=Jh=function(e){if(c=!1,!l&&u)return u=null,s(e,"end",e.pageX,e.pageY)};document.addEventListener("mouseup",d),Yh(e,"touchcancel",(function(e){if(u){l=!1;const t=u;return u=null,s(e,n?"cancel":"end",t.touches[0].pageX,t.touches[0].pageY)}}))}function Zh(e,t,n){return e>t-n&&ethis._t&&(e=this._t,this._lastDt=e);let t=this._x_v*e+.5*this._x_a*Math.pow(e,2)+this._x_s,n=this._y_v*e+.5*this._y_a*Math.pow(e,2)+this._y_s;return(this._x_a>0&&tthis._endPositionX)&&(t=this._endPositionX),(this._y_a>0&&nthis._endPositionY)&&(n=this._endPositionY),{x:t,y:n}},ng.prototype.ds=function(e){return void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3),e>this._t&&(e=this._t),{dx:this._x_v+this._x_a*e,dy:this._y_v+this._y_a*e}},ng.prototype.delta=function(){return{x:-1.5*Math.pow(this._x_v,2)/this._x_a||0,y:-1.5*Math.pow(this._y_v,2)/this._y_a||0}},ng.prototype.dt=function(){return-this._x_v/this._x_a},ng.prototype.done=function(){const e=Zh(this.s().x,this._endPositionX)||Zh(this.s().y,this._endPositionY)||this._lastDt===this._t;return this._lastDt=null,e},ng.prototype.setEnd=function(e,t){this._endPositionX=e,this._endPositionY=t},ng.prototype.reconfigure=function(e,t){this._m=e,this._f=1e3*t},og.prototype._solve=function(e,t){const n=this._c,o=this._m,r=this._k,i=n*n-4*o*r;if(0===i){const r=-n/(2*o),i=e,a=t/(r*e);return{x:function(e){return(i+a*e)*Math.pow(Math.E,r*e)},dx:function(e){const t=Math.pow(Math.E,r*e);return r*(i+a*e)*t+a*t}}}if(i>0){const r=(-n-Math.sqrt(i))/(2*o),a=(-n+Math.sqrt(i))/(2*o),s=(t-r*e)/(a-r),l=e-s;return{x:function(e){let t,n;return e===this._t&&(t=this._powER1T,n=this._powER2T),this._t=e,t||(t=this._powER1T=Math.pow(Math.E,r*e)),n||(n=this._powER2T=Math.pow(Math.E,a*e)),l*t+s*n},dx:function(e){let t,n;return e===this._t&&(t=this._powER1T,n=this._powER2T),this._t=e,t||(t=this._powER1T=Math.pow(Math.E,r*e)),n||(n=this._powER2T=Math.pow(Math.E,a*e)),l*r*t+s*a*n}}}const a=Math.sqrt(4*o*r-n*n)/(2*o),s=-n/2*o,l=e,c=(t-s*e)/a;return{x:function(e){return Math.pow(Math.E,s*e)*(l*Math.cos(a*e)+c*Math.sin(a*e))},dx:function(e){const t=Math.pow(Math.E,s*e),n=Math.cos(a*e),o=Math.sin(a*e);return t*(c*a*n-l*a*o)+s*t*(c*o+l*n)}}},og.prototype.x=function(e){return void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3),this._solution?this._endPosition+this._solution.x(e):0},og.prototype.dx=function(e){return void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3),this._solution?this._solution.dx(e):0},og.prototype.setEnd=function(e,t,n){if(n||(n=(new Date).getTime()),e!==this._endPosition||!eg(t,.1)){t=t||0;let o=this._endPosition;this._solution&&(eg(t,.1)&&(t=this._solution.dx((n-this._startTime)/1e3)),o=this._solution.x((n-this._startTime)/1e3),eg(t,.1)&&(t=0),eg(o,.1)&&(o=0),o+=this._endPosition),this._solution&&eg(o-e,.1)&&eg(t,.1)||(this._endPosition=e,this._solution=this._solve(o-this._endPosition,t),this._startTime=n)}},og.prototype.snap=function(e){this._startTime=(new Date).getTime(),this._endPosition=e,this._solution={x:function(){return 0},dx:function(){return 0}}},og.prototype.done=function(e){return e||(e=(new Date).getTime()),Zh(this.x(),this._endPosition,.1)&&eg(this.dx(),.1)},og.prototype.reconfigure=function(e,t,n){this._m=e,this._k=t,this._c=n,this.done()||(this._solution=this._solve(this.x()-this._endPosition,this.dx()),this._startTime=(new Date).getTime())},og.prototype.springConstant=function(){return this._k},og.prototype.damping=function(){return this._c},og.prototype.configuration=function(){return[{label:"Spring Constant",read:this.springConstant.bind(this),write:function(e,t){e.reconfigure(1,t,e.damping())}.bind(this,this),min:100,max:1e3},{label:"Damping",read:this.damping.bind(this),write:function(e,t){e.reconfigure(1,e.springConstant(),t)}.bind(this,this),min:1,max:500}]},rg.prototype.setEnd=function(e,t,n,o){const r=(new Date).getTime();this._springX.setEnd(e,o,r),this._springY.setEnd(t,o,r),this._springScale.setEnd(n,o,r),this._startTime=r},rg.prototype.x=function(){const e=((new Date).getTime()-this._startTime)/1e3;return{x:this._springX.x(e),y:this._springY.x(e),scale:this._springScale.x(e)}},rg.prototype.done=function(){const e=(new Date).getTime();return this._springX.done(e)&&this._springY.done(e)&&this._springScale.done(e)},rg.prototype.reconfigure=function(e,t,n){this._springX.reconfigure(e,t,n),this._springY.reconfigure(e,t,n),this._springScale.reconfigure(e,t,n)};function ig(e,t){return+((1e3*e-1e3*t)/1e3).toFixed(1)}const ag=lp({name:"MovableView",props:{direction:{type:String,default:"none"},inertia:{type:[Boolean,String],default:!1},outOfBounds:{type:[Boolean,String],default:!1},x:{type:[Number,String],default:0},y:{type:[Number,String],default:0},damping:{type:[Number,String],default:20},friction:{type:[Number,String],default:2},disabled:{type:[Boolean,String],default:!1},scale:{type:[Boolean,String],default:!1},scaleMin:{type:[Number,String],default:.5},scaleMax:{type:[Number,String],default:10},scaleValue:{type:[Number,String],default:1},animation:{type:[Boolean,String],default:!0}},emits:["change","scale"],setup(e,{slots:t,emit:n}){const o=Wn(null),r=hp(o,n),{setParent:i}=function(e,t,n){const o=Do("_isMounted",Wn(!1)),r=Do("addMovableViewContext",(()=>{})),i=Do("removeMovableViewContext",(()=>{}));let a,s,l=Wn(1),c=Wn(1),u=Wn(!1),p=Wn(0),d=Wn(0),f=null,h=null,g=!1,m=null,y=null;const v=new tg,b=new tg,_={historyX:[0,0],historyY:[0,0],historyT:[0,0]},w=ua((()=>{let t=Number(e.friction);return isNaN(t)||t<=0?2:t})),x=new ng(1,w.value);zo((()=>e.disabled),(()=>{W()}));const{_updateOldScale:A,_endScale:E,_setScale:S,scaleValueSync:T,_updateBoundary:k,_updateOffset:C,_updateWH:P,_scaleOffset:M,minX:L,minY:O,maxX:I,maxY:B,FAandSFACancel:N,_getLimitXY:j,_setTransform:D,_revise:R,dampingNumber:F,xMove:z,yMove:q,xSync:H,ySync:U,_STD:V}=function(e,t,n,o,r,i,a,s,l,c){const u=ua((()=>{let t=Number(e.scaleMin);return isNaN(t)?.5:t})),p=ua((()=>{let t=Number(e.scaleMax);return isNaN(t)?10:t})),d=Wn(Number(e.scaleValue)||1);zo(d,(e=>{D(e)})),zo(u,(()=>{j()})),zo(p,(()=>{j()})),zo((()=>e.scaleValue),(e=>{d.value=Number(e)||0}));const{_updateBoundary:f,_updateOffset:h,_updateWH:g,_scaleOffset:m,minX:y,minY:v,maxX:b,maxY:_}=function(e,t,n){const o=Do("movableAreaWidth",Wn(0)),r=Do("movableAreaHeight",Wn(0)),i=Do("movableAreaRootRef"),a={x:0,y:0},s={x:0,y:0},l=Wn(0),c=Wn(0),u=Wn(0),p=Wn(0),d=Wn(0),f=Wn(0);function h(){let e=0-a.x+s.x,t=o.value-l.value-a.x-s.x;u.value=Math.min(e,t),d.value=Math.max(e,t);let n=0-a.y+s.y,i=r.value-c.value-a.y-s.y;p.value=Math.min(n,i),f.value=Math.max(n,i)}function g(){a.x=cg(e.value,i.value),a.y=ug(e.value,i.value)}function m(o){o=o||t.value,o=n(o);let r=e.value.getBoundingClientRect();c.value=r.height/t.value,l.value=r.width/t.value;let i=c.value*o,a=l.value*o;s.x=(a-l.value)/2,s.y=(i-c.value)/2}return{_updateBoundary:h,_updateOffset:g,_updateWH:m,_scaleOffset:s,minX:u,minY:p,maxX:d,maxY:f}}(t,o,N),{FAandSFACancel:w,_getLimitXY:x,_animationTo:A,_setTransform:E,_revise:S,dampingNumber:T,xMove:k,yMove:C,xSync:P,ySync:M,_STD:L}=function(e,t,n,o,r,i,a,s,l,c,u,p,d,f){const h=ua((()=>{let e=Number(t.damping);return isNaN(e)?20:e})),g=ua((()=>"all"===t.direction||"horizontal"===t.direction)),m=ua((()=>"all"===t.direction||"vertical"===t.direction)),y=Wn(dg(t.x)),v=Wn(dg(t.y));zo((()=>t.x),(e=>{y.value=dg(e)})),zo((()=>t.y),(e=>{v.value=dg(e)})),zo(y,(e=>{S(e)})),zo(v,(e=>{T(e)}));const b=new rg(1,9*Math.pow(h.value,2)/40,h.value);function _(e,t){let n=!1;return e>r.value?(e=r.value,n=!0):ei.value?(t=i.value,n=!0):t1?"htouchmove":"vtouchmove"),z.value&&(n=t.detail.dx+a,_.historyX.shift(),_.historyX.push(n),q.value||null!==m||(m=Math.abs(t.detail.dx/t.detail.dy)<1)),q.value&&(o=t.detail.dy+s,_.historyY.shift(),_.historyY.push(o),z.value||null!==m||(m=Math.abs(t.detail.dy/t.detail.dx)<1)),_.historyT.shift(),_.historyT.push(t.detail.timeStamp),!m){t.preventDefault();let r="touch";nI.value&&(e.outOfBounds?(r="touch-out-of-bounds",n=I.value+v.x(n-I.value)):n=I.value),oB.value&&(e.outOfBounds?(r="touch-out-of-bounds",o=B.value+b.x(o-B.value)):o=B.value),lg((function(){D(n,o,l.value,r)}))}}}function Q(){if(!u.value&&!e.disabled&&g&&(n.value.style.willChange="auto",g=!1,!m&&!R("out-of-bounds")&&e.inertia)){const e=1e3*(_.historyX[1]-_.historyX[0])/(_.historyT[1]-_.historyT[0]),t=1e3*(_.historyY[1]-_.historyY[0])/(_.historyT[1]-_.historyT[0]),n=p.value,o=d.value;x.setV(e,t),x.setS(n,o);const r=x.delta().x,i=x.delta().y;let a=r+n,s=i+o;aI.value&&(a=I.value,s=o+(I.value-n)*i/r),sB.value&&(s=B.value,a=n+(B.value-o)*r/i),x.setEnd(a,s),h=pg(x,(function(){let e=x.s(),t=e.x,n=e.y;D(t,n,l.value,"friction")}),(function(){h.cancel()}))}e.outOfBounds||e.inertia||N()}function X(){if(!o.value)return;N();let t=e.scale?T.value:1;C(),P(t),k();let n=j(H.value+M.x,U.value+M.y),r=n.x,i=n.y;D(r,i,t,"",!0),A(t)}return wr((()=>{Kh(n.value,(e=>{switch(e.detail.state){case"start":W();break;case"move":$(e);break;case"end":Q()}})),X(),x.reconfigure(1,w.value),V.reconfigure(1,9*Math.pow(F.value,2)/40,F.value),n.value.style.transformOrigin="center";const e={rootRef:n,setParent:X,_endScale:E,_setScale:S};r(e),Sr((()=>{i(e)}))})),Sr((()=>{N()})),{setParent:X}}(e,r,o);return()=>Hi("uni-movable-view",{ref:o},[Hi(ih,{onResize:i},null,8,["onResize"]),t.default&&t.default()],512)}});let sg=!1;function lg(e){sg||(sg=!0,requestAnimationFrame((function(){e(),sg=!1})))}function cg(e,t){if(e===t)return 0;let n=e.offsetLeft;return e.offsetParent?n+=cg(e.offsetParent,t):0}function ug(e,t){if(e===t)return 0;let n=e.offsetTop;return e.offsetParent?n+=ug(e.offsetParent,t):0}function pg(e,t,n){let o={id:0,cancelled:!1};return function e(t,n,o,r){if(!t||!t.cancelled){o(n);let i=n.done();i||t.cancelled||(t.id=requestAnimationFrame(e.bind(null,t,n,o,r))),i&&r&&r(n)}}(o,e,t,n),{cancel:function(e){e&&e.id&&cancelAnimationFrame(e.id),e&&(e.cancelled=!0)}.bind(null,o),model:e}}function dg(e){return/\d+[ur]px$/i.test(e)?Md(parseFloat(e)):Number(e)||0}const fg=["navigate","redirect","switchTab","reLaunch","navigateBack"],hg=["slide-in-right","slide-in-left","slide-in-top","slide-in-bottom","fade-in","zoom-out","zoom-fade-out","pop-in","none"],gg=["slide-out-right","slide-out-left","slide-out-top","slide-out-bottom","fade-out","zoom-in","zoom-fade-in","pop-out","none"],mg={hoverClass:{type:String,default:"navigator-hover"},url:{type:String,default:""},openType:{type:String,default:"navigate",validator:e=>Boolean(~fg.indexOf(e))},delta:{type:Number,default:1},hoverStartTime:{type:[Number,String],default:50},hoverStayTime:{type:[Number,String],default:600},exists:{type:String,default:""},hoverStopPropagation:{type:Boolean,default:!1},animationType:{type:String,default:"",validator:e=>!e||hg.concat(gg).includes(e)},animationDuration:{type:[String,Number],default:300}};T({},mg,{renderLink:{type:Boolean,default:!0}});const yg=lp({name:"PickerView",props:{value:{type:Array,default:()=>[],validator:function(e){return M(e)&&e.filter((e=>"number"==typeof e)).length===e.length}},indicatorStyle:{type:String,default:""},indicatorClass:{type:String,default:""},maskStyle:{type:String,default:""},maskClass:{type:String,default:""}},emits:["change","pickstart","pickend","update:value"],setup(e,{slots:t,emit:n}){const o=Wn(null),r=Wn(null),i=hp(o,n),a=function(e){const t=Mn([...e.value]),n=Mn({value:t,height:34});return zo((()=>e.value),((e,t)=>{n.value.length=e.length,e.forEach(((e,t)=>{e!==n.value[t]&&n.value.splice(t,1,e)}))})),n}(e),s=Wn(null);wr((()=>{const e=s.value;e&&(a.height=e.$el.offsetHeight)}));let l=Wn([]),c=Wn([]);function u(e){let t=c.value;t=t.filter((e=>e.type!==Ti));let n=t.indexOf(e);return-1!==n?n:l.value.indexOf(e)}return jo("getPickerViewColumn",(function(e){return ua({get(){const t=u(e.vnode);return a.value[t]||0},set(t){const o=u(e.vnode);if(o<0)return;if(a.value[o]!==t){a.value[o]=t;const e=a.value.map((e=>e));n("update:value",e),i("change",{},{value:e})}}})})),jo("pickerViewProps",e),jo("pickerViewState",a),()=>{const e=t.default&&t.default();{const t=$h(e);l.value=t,go((()=>{c.value=t}))}return Hi("uni-picker-view",{ref:o},[Hi(ih,{ref:s,onResize:({height:e})=>a.height=e},null,8,["onResize"]),Hi("div",{ref:r,class:"uni-picker-view-wrapper"},[e],512)],512)}}});class vg{constructor(e){this._drag=e,this._dragLog=Math.log(e),this._x=0,this._v=0,this._startTime=0}set(e,t){this._x=e,this._v=t,this._startTime=(new Date).getTime()}setVelocityByEnd(e){this._v=(e-this._x)*this._dragLog/(Math.pow(this._drag,100)-1)}x(e){void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3);const t=e===this._dt&&this._powDragDt?this._powDragDt:this._powDragDt=Math.pow(this._drag,e);return this._dt=e,this._x+this._v*t/this._dragLog-this._v/this._dragLog}dx(e){void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3);const t=e===this._dt&&this._powDragDt?this._powDragDt:this._powDragDt=Math.pow(this._drag,e);return this._dt=e,this._v*t}done(){return Math.abs(this.dx())<3}reconfigure(e){const t=this.x(),n=this.dx();this._drag=e,this._dragLog=Math.log(e),this.set(t,n)}configuration(){const e=this;return[{label:"Friction",read:function(){return e._drag},write:function(t){e.reconfigure(t)},min:.001,max:.1,step:.001}]}}function bg(e,t,n){return e>t-n&&e0){const r=(-n-Math.sqrt(i))/(2*o),a=(-n+Math.sqrt(i))/(2*o),s=(t-r*e)/(a-r),l=e-s;return{x:function(e){let t,n;return e===this._t&&(t=this._powER1T,n=this._powER2T),this._t=e,t||(t=this._powER1T=Math.pow(Math.E,r*e)),n||(n=this._powER2T=Math.pow(Math.E,a*e)),l*t+s*n},dx:function(e){let t,n;return e===this._t&&(t=this._powER1T,n=this._powER2T),this._t=e,t||(t=this._powER1T=Math.pow(Math.E,r*e)),n||(n=this._powER2T=Math.pow(Math.E,a*e)),l*r*t+s*a*n}}}const a=Math.sqrt(4*o*r-n*n)/(2*o),s=-n/2*o,l=e,c=(t-s*e)/a;return{x:function(e){return Math.pow(Math.E,s*e)*(l*Math.cos(a*e)+c*Math.sin(a*e))},dx:function(e){const t=Math.pow(Math.E,s*e),n=Math.cos(a*e),o=Math.sin(a*e);return t*(c*a*n-l*a*o)+s*t*(c*o+l*n)}}}x(e){return void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3),this._solution?this._endPosition+this._solution.x(e):0}dx(e){return void 0===e&&(e=((new Date).getTime()-this._startTime)/1e3),this._solution?this._solution.dx(e):0}setEnd(e,t,n){if(n||(n=(new Date).getTime()),e!==this._endPosition||!_g(t,.4)){t=t||0;let o=this._endPosition;this._solution&&(_g(t,.4)&&(t=this._solution.dx((n-this._startTime)/1e3)),o=this._solution.x((n-this._startTime)/1e3),_g(t,.4)&&(t=0),_g(o,.4)&&(o=0),o+=this._endPosition),this._solution&&_g(o-e,.4)&&_g(t,.4)||(this._endPosition=e,this._solution=this._solve(o-this._endPosition,t),this._startTime=n)}}snap(e){this._startTime=(new Date).getTime(),this._endPosition=e,this._solution={x:function(){return 0},dx:function(){return 0}}}done(e){return e||(e=(new Date).getTime()),bg(this.x(),this._endPosition,.4)&&_g(this.dx(),.4)}reconfigure(e,t,n){this._m=e,this._k=t,this._c=n,this.done()||(this._solution=this._solve(this.x()-this._endPosition,this.dx()),this._startTime=(new Date).getTime())}springConstant(){return this._k}damping(){return this._c}configuration(){return[{label:"Spring Constant",read:this.springConstant.bind(this),write:function(e,t){e.reconfigure(1,t,e.damping())}.bind(this,this),min:100,max:1e3},{label:"Damping",read:this.damping.bind(this),write:function(e,t){e.reconfigure(1,e.springConstant(),t)}.bind(this,this),min:1,max:500}]}}class xg{constructor(e,t,n){this._extent=e,this._friction=t||new vg(.01),this._spring=n||new wg(1,90,20),this._startTime=0,this._springing=!1,this._springOffset=0}snap(e,t){this._springOffset=0,this._springing=!0,this._spring.snap(e),this._spring.setEnd(t)}set(e,t){this._friction.set(e,t),e>0&&t>=0?(this._springOffset=0,this._springing=!0,this._spring.snap(e),this._spring.setEnd(0)):e<-this._extent&&t<=0?(this._springOffset=0,this._springing=!0,this._spring.snap(e),this._spring.setEnd(-this._extent)):this._springing=!1,this._startTime=(new Date).getTime()}x(e){if(!this._startTime)return 0;if(e||(e=((new Date).getTime()-this._startTime)/1e3),this._springing)return this._spring.x()+this._springOffset;let t=this._friction.x(e),n=this.dx(e);return(t>0&&n>=0||t<-this._extent&&n<=0)&&(this._springing=!0,this._spring.setEnd(0,n),t<-this._extent?this._springOffset=-this._extent:this._springOffset=0,t=this._spring.x()+this._springOffset),t}dx(e){let t;return t=this._lastTime===e?this._lastDx:this._springing?this._spring.dx(e):this._friction.dx(e),this._lastTime=e,this._lastDx=t,t}done(){return this._springing?this._spring.done():this._friction.done()}setVelocityByEnd(e){this._friction.setVelocityByEnd(e)}configuration(){const e=this._friction.configuration();return e.push.apply(e,this._spring.configuration()),e}}class Ag{constructor(e,t){t=t||{},this._element=e,this._options=t,this._enableSnap=t.enableSnap||!1,this._itemSize=t.itemSize||0,this._enableX=t.enableX||!1,this._enableY=t.enableY||!1,this._shouldDispatchScrollEvent=!!t.onScroll,this._enableX?(this._extent=(t.scrollWidth||this._element.offsetWidth)-this._element.parentElement.offsetWidth,this._scrollWidth=t.scrollWidth):(this._extent=(t.scrollHeight||this._element.offsetHeight)-this._element.parentElement.offsetHeight,this._scrollHeight=t.scrollHeight),this._position=0,this._scroll=new xg(this._extent,t.friction,t.spring),this._onTransitionEnd=this.onTransitionEnd.bind(this),this.updatePosition()}onTouchStart(){this._startPosition=this._position,this._lastChangePos=this._startPosition,this._startPosition>0?this._startPosition/=.5:this._startPosition<-this._extent&&(this._startPosition=(this._startPosition+this._extent)/.5-this._extent),this._animation&&(this._animation.cancel(),this._scrolling=!1),this.updatePosition()}onTouchMove(e,t){let n=this._startPosition;this._enableX?n+=e:this._enableY&&(n+=t),n>0?n*=.5:n<-this._extent&&(n=.5*(n+this._extent)-this._extent),this._position=n,this.updatePosition(),this.dispatchScroll()}onTouchEnd(e,t,n){if(this._enableSnap&&this._position>-this._extent&&this._position<0){if(this._enableY&&(Math.abs(t)this._itemSize/2?e-(this._itemSize-Math.abs(t)):e-t,o<=0&&o>=-this._extent&&this._scroll.setVelocityByEnd(o)}this._lastTime=Date.now(),this._lastDelay=0,this._scrolling=!0,this._lastChangePos=this._position,this._lastIdx=Math.floor(Math.abs(this._position/this._itemSize)),this._animation=function(e,t,n){const o={id:0,cancelled:!1};return function e(t,n,o,r){if(!t||!t.cancelled){o(n);const i=n.done();i||t.cancelled||(t.id=requestAnimationFrame(e.bind(null,t,n,o,r))),i&&r&&r(n)}}(o,e,t,n),{cancel:function(e){e&&e.id&&cancelAnimationFrame(e.id),e&&(e.cancelled=!0)}.bind(null,o),model:e}}(this._scroll,(()=>{const e=Date.now(),t=(e-this._scroll._startTime)/1e3,n=this._scroll.x(t);this._position=n,this.updatePosition();const o=this._scroll.dx(t);this._shouldDispatchScrollEvent&&e-this._lastTime>this._lastDelay&&(this.dispatchScroll(),this._lastDelay=Math.abs(2e3/o),this._lastTime=e)}),(()=>{this._enableSnap&&(o<=0&&o>=-this._extent&&(this._position=o,this.updatePosition()),B(this._options.onSnap)&&this._options.onSnap(Math.floor(Math.abs(this._position)/this._itemSize))),this._shouldDispatchScrollEvent&&this.dispatchScroll(),this._scrolling=!1}))}onTransitionEnd(){this._element.style.webkitTransition="",this._element.style.transition="",this._element.removeEventListener("transitionend",this._onTransitionEnd),this._snapping&&(this._snapping=!1),this.dispatchScroll()}snap(){const e=this._itemSize,t=this._position%e,n=Math.abs(t)>this._itemSize/2?this._position-(e-Math.abs(t)):this._position-t;this._position!==n&&(this._snapping=!0,this.scrollTo(-n),B(this._options.onSnap)&&this._options.onSnap(Math.floor(Math.abs(this._position)/this._itemSize)))}scrollTo(e,t){this._animation&&(this._animation.cancel(),this._scrolling=!1),"number"==typeof e&&(this._position=-e),this._position<-this._extent?this._position=-this._extent:this._position>0&&(this._position=0);const n="transform "+(t||.2)+"s ease-out";this._element.style.webkitTransition="-webkit-"+n,this._element.style.transition=n,this.updatePosition(),this._element.addEventListener("transitionend",this._onTransitionEnd)}dispatchScroll(){if(B(this._options.onScroll)&&Math.round(Number(this._lastPos))!==Math.round(this._position)){this._lastPos=this._position;const e={target:{scrollLeft:this._enableX?-this._position:0,scrollTop:this._enableY?-this._position:0,scrollHeight:this._scrollHeight||this._element.offsetHeight,scrollWidth:this._scrollWidth||this._element.offsetWidth,offsetHeight:this._element.parentElement.offsetHeight,offsetWidth:this._element.parentElement.offsetWidth}};this._options.onScroll(e)}}update(e,t,n){let o=0;const r=this._position;this._enableX?(o=this._element.childNodes.length?(t||this._element.offsetWidth)-this._element.parentElement.offsetWidth:0,this._scrollWidth=t):(o=this._element.childNodes.length?(t||this._element.offsetHeight)-this._element.parentElement.offsetHeight:0,this._scrollHeight=t),"number"==typeof e&&(this._position=-e),this._position<-o?this._position=-o:this._position>0&&(this._position=0),this._itemSize=n||this._itemSize,this.updatePosition(),r!==this._position&&(this.dispatchScroll(),B(this._options.onSnap)&&this._options.onSnap(Math.floor(Math.abs(this._position)/this._itemSize))),this._extent=o,this._scroll._extent=o}updatePosition(){let e="";this._enableX?e="translateX("+this._position+"px) translateZ(0)":this._enableY&&(e="translateY("+this._position+"px) translateZ(0)"),this._element.style.webkitTransform=e,this._element.style.transform=e}isScrolling(){return this._scrolling||this._snapping}}let Eg=0;const Sg=lp({name:"PickerViewColumn",setup(e,{slots:t,emit:n}){const o=Wn(null),r=Wn(null),i=Do("getPickerViewColumn"),a=ea(),s=i?i(a):Wn(0),l=Do("pickerViewProps"),c=Do("pickerViewState"),u=Wn(34),p=Wn(null);wr((()=>{const e=p.value;u.value=e.$el.offsetHeight}));const d=ua((()=>(c.height-u.value)/2)),{state:f}=Ih(),h=function(e){const t="uni-picker-view-content-"+Eg++;return zo((()=>e.value),(function(){const n=document.createElement("style");n.innerText=`.uni-picker-view-content.${t}>*{height: ${e.value}px;overflow: hidden;}`,document.head.appendChild(n)})),t}(u);let g;const m=Mn({current:s.value,length:0});let y;function v(){g&&!y&&(y=!0,go((()=>{y=!1;let e=Math.min(m.current,m.length-1);e=Math.max(e,0),g.update(e*u.value,void 0,u.value)})))}zo((()=>s.value),(e=>{e!==m.current&&(m.current=e,v())})),zo((()=>m.current),(e=>s.value=e)),zo([()=>u.value,()=>m.length,()=>c.height],v);let b=0;function _(e){const t=b+e.deltaY;if(Math.abs(t)>10){b=0;let e=Math.min(m.current+(t<0?-1:1),m.length-1);m.current=e=Math.max(e,0),g.scrollTo(e*u.value)}else b=t;e.preventDefault()}function w({clientY:e}){const t=o.value;if(!g.isScrolling()){const n=e-t.getBoundingClientRect().top-c.height/2,o=u.value/2;if(!(Math.abs(n)<=o)){const e=Math.ceil((Math.abs(n)-o)/u.value),t=n<0?-e:e;let r=Math.min(m.current+t,m.length-1);m.current=r=Math.max(r,0),g.scrollTo(r*u.value)}}}const x=()=>{const e=o.value,t=r.value,{scroller:n,handleTouchStart:i,handleTouchMove:a,handleTouchEnd:s}=function(e,t){const n={trackingID:-1,maxDy:0,maxDx:0},o=new Ag(e,t);function r(e){const t=e,o=e;return"move"===t.detail.state||"end"===t.detail.state?{x:t.detail.dx,y:t.detail.dy}:{x:o.screenX-n.x,y:o.screenY-n.y}}return{scroller:o,handleTouchStart:function(e){const t=e,r=e;"start"===t.detail.state?(n.trackingID="touch",n.x=t.detail.x,n.y=t.detail.y):(n.trackingID="mouse",n.x=r.screenX,n.y=r.screenY),n.maxDx=0,n.maxDy=0,n.historyX=[0],n.historyY=[0],n.historyTime=[t.detail.timeStamp||r.timeStamp],n.listener=o,o.onTouchStart&&o.onTouchStart(),("boolean"!=typeof e.cancelable||e.cancelable)&&e.preventDefault()},handleTouchMove:function(e){const t=e,o=e;if(-1!==n.trackingID){("boolean"!=typeof e.cancelable||e.cancelable)&&e.preventDefault();const i=r(e);if(i){for(n.maxDy=Math.max(n.maxDy,Math.abs(i.y)),n.maxDx=Math.max(n.maxDx,Math.abs(i.x)),n.historyX.push(i.x),n.historyY.push(i.y),n.historyTime.push(t.detail.timeStamp||o.timeStamp);n.historyTime.length>10;)n.historyTime.shift(),n.historyX.shift(),n.historyY.shift();n.listener&&n.listener.onTouchMove&&n.listener.onTouchMove(i.x,i.y)}}},handleTouchEnd:function(e){if(-1!==n.trackingID){e.preventDefault();const t=r(e);if(t){const e=n.listener;n.trackingID=-1,n.listener=null;const o={x:0,y:0};if(n.historyTime.length>2)for(let t=n.historyTime.length-1,r=n.historyTime[t],i=n.historyX[t],a=n.historyY[t];t>0;){t--;const e=r-n.historyTime[t];if(e>30&&e<50){o.x=(i-n.historyX[t])/(e/1e3),o.y=(a-n.historyY[t])/(e/1e3);break}}n.historyTime=[],n.historyX=[],n.historyY=[],e&&e.onTouchEnd&&e.onTouchEnd(t.x,t.y,o)}}}}}(t,{enableY:!0,enableX:!1,enableSnap:!0,itemSize:u.value,friction:new vg(1e-4),spring:new wg(2,90,20),onSnap:e=>{isNaN(e)||e===m.current||(m.current=e)}});g=n,Kh(e,(e=>{switch(e.detail.state){case"start":i(e);break;case"move":a(e),e.stopPropagation();break;case"end":case"cancel":s(e)}}),!0),function(e){let t=0,n=0;e.addEventListener("touchstart",(e=>{const o=e.changedTouches[0];t=o.clientX,n=o.clientY})),e.addEventListener("touchend",(e=>{const o=e.changedTouches[0];if(Math.abs(o.clientX-t)<20&&Math.abs(o.clientY-n)<20){const t={bubbles:!0,cancelable:!0,target:e.target,currentTarget:e.currentTarget},n=new CustomEvent("click",t);["screenX","screenY","clientX","clientY","pageX","pageY"].forEach((e=>{n[e]=o[e]})),e.target.dispatchEvent(n)}}))}(e),v()};return wr(x),()=>{const e=t.default&&t.default();m.length=$h(e).length;const n=`${d.value}px 0`;return Hi("uni-picker-view-column",{ref:o},[Hi("div",{onWheel:_,onClick:w,class:"uni-picker-view-group"},[Hi("div",Yi(f.attrs,{class:["uni-picker-view-mask",l.maskClass],style:`background-size: 100% ${d.value}px;${l.maskStyle}`}),null,16),Hi("div",Yi(f.attrs,{class:["uni-picker-view-indicator",l.indicatorClass],style:l.indicatorStyle}),[Hi(ih,{ref:p,onResize:({height:e})=>u.value=e},null,8,["onResize"])],16),Hi("div",{ref:r,class:["uni-picker-view-content",h],style:{padding:n}},[e],6)],40,["onWheel","onClick"])],512)}}}),Tg={a:"",abbr:"",address:"",article:"",aside:"",b:"",bdi:"",bdo:["dir"],big:"",blockquote:"",br:"",caption:"",center:"",cite:"",code:"",col:["span","width"],colgroup:["span","width"],dd:"",del:"",div:"",dl:"",dt:"",em:"",fieldset:"",font:"",footer:"",h1:"",h2:"",h3:"",h4:"",h5:"",h6:"",header:"",hr:"",i:"",img:["alt","src","height","width"],ins:"",label:"",legend:"",li:"",mark:"",nav:"",ol:["start","type"],p:"",pre:"",q:"",rt:"",ruby:"",s:"",section:"",small:"",span:"",strong:"",sub:"",sup:"",table:["width"],tbody:"",td:["colspan","height","rowspan","width"],tfoot:"",th:["colspan","height","rowspan","width"],thead:"",tr:["colspan","height","rowspan","width"],tt:"",u:"",ul:""},kg={amp:"&",gt:">",lt:"<",nbsp:" ",quot:'"',apos:"'",ldquo:"“",rdquo:"”",yen:"¥",radic:"√",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",hellip:"…"};const Cg=(e,t,n)=>!n||M(n)&&!n.length?[]:n.map((n=>{if(H(n)){if(!P(n,"type")||"node"===n.type){let o={[e]:""};const r=n.name.toLowerCase();if(!P(Tg,r))return;return function(e,t){if(H(t))for(const n in t)if(P(t,n)){const o=t[n];"img"===e&&"src"===n&&(t[n]=xp(o))}}(r,n.attrs),o=T(o,function(e,t){if(["a","img"].includes(e.name)&&t)return{onClick:n=>{t(n,{node:e}),n.stopPropagation(),n.preventDefault(),n.returnValue=!1}}}(n,t),n.attrs),pa(n.name,o,Cg(e,t,n.children))}return"text"===n.type&&N(n.text)&&""!==n.text?Vi((n.text||"").replace(/&(([a-zA-Z]+)|(#x{0,1}[\da-zA-Z]+));/gi,(function(e,t){return P(kg,t)&&kg[t]?kg[t]:/^#[0-9]{1,4}$/.test(t)?String.fromCharCode(t.slice(1)):/^#x[0-9a-f]{1,4}$/i.test(t)?String.fromCharCode(0+t.slice(1)):e}))):void 0}}));function Pg(e){e=function(e){return e.replace(/<\?xml.*\?>\n/,"").replace(/\n/,"").replace(/\n/,"")}(e);const t=[],n={node:"root",children:[]};return function(e,t){var n,o,r,i=[],a=e;for(i.last=function(){return this[this.length-1]};e;){if(o=!0,i.last()&&vh[i.last()])e=e.replace(new RegExp("([\\s\\S]*?)]*>"),(function(e,n){return n=n.replace(/|/g,"$1$2"),t.chars&&t.chars(n),""})),c("",i.last());else if(0==e.indexOf("\x3c!--")?(n=e.indexOf("--\x3e"))>=0&&(t.comment&&t.comment(e.substring(4,n)),e=e.substring(n+3),o=!1):0==e.indexOf("=0&&i[o]!=n;o--);else var o=0;if(o>=0){for(var r=i.length-1;r>=o;r--)t.end&&t.end(i[r]);i.length=o}}c()}(e,{start:function(e,o,r){const i={name:e};if(0!==o.length&&(i.attrs=function(e){return e.reduce((function(e,t){let n=t.value;const o=t.name;return n.match(/ /)&&-1===["style","src"].indexOf(o)&&(n=n.split(" ")),e[o]?Array.isArray(e[o])?e[o].push(n):e[o]=[e[o],n]:e[o]=n,e}),{})}(o)),r){const e=t[0]||n;e.children||(e.children=[]),e.children.push(i)}else t.unshift(i)},end:function(e){const o=t.shift();if(o.name!==e&&console.error("invalid state: mismatch end tag"),0===t.length)n.children.push(o);else{const e=t[0];e.children||(e.children=[]),e.children.push(o)}},chars:function(e){const o={type:"text",text:e};if(0===t.length)n.children.push(o);else{const e=t[0];e.children||(e.children=[]),e.children.push(o)}},comment:function(e){const n={node:"comment",text:e},o=t[0];o.children||(o.children=[]),o.children.push(n)}}),n.children}const Mg=lp({name:"RichText",compatConfig:{MODE:3},props:{nodes:{type:[Array,String],default:function(){return[]}}},emits:["click","touchstart","touchmove","touchcancel","touchend","longpress","itemclick"],setup(e,{emit:t}){const n=ea(),o=n&&n.vnode.scopeId||"",r=Wn(null),i=Wn([]),a=hp(r,t);function s(e,t={}){a("itemclick",e,t)}return zo((()=>e.nodes),(function(){let t=e.nodes;N(t)&&(t=Pg(e.nodes)),i.value=Cg(o,s,t)}),{immediate:!0}),()=>pa("uni-rich-text",{ref:r},pa("div",{},i.value))}}),Lg=ot(!0),Og=lp({name:"ScrollView",compatConfig:{MODE:3},props:{scrollX:{type:[Boolean,String],default:!1},scrollY:{type:[Boolean,String],default:!1},upperThreshold:{type:[Number,String],default:50},lowerThreshold:{type:[Number,String],default:50},scrollTop:{type:[Number,String],default:0},scrollLeft:{type:[Number,String],default:0},scrollIntoView:{type:String,default:""},scrollWithAnimation:{type:[Boolean,String],default:!1},enableBackToTop:{type:[Boolean,String],default:!1},refresherEnabled:{type:[Boolean,String],default:!1},refresherThreshold:{type:Number,default:45},refresherDefaultStyle:{type:String,default:"back"},refresherBackground:{type:String,default:"#fff"},refresherTriggered:{type:[Boolean,String],default:!1}},emits:["scroll","scrolltoupper","scrolltolower","refresherrefresh","refresherrestore","refresherpulling","refresherabort","update:refresherTriggered"],setup(e,{emit:t,slots:n}){const o=Wn(null),r=Wn(null),i=Wn(null),a=Wn(null),s=Wn(null),l=hp(o,t),{state:c,scrollTopNumber:u,scrollLeftNumber:p}=function(e){const t=ua((()=>Number(e.scrollTop)||0)),n=ua((()=>Number(e.scrollLeft)||0)),o=Mn({lastScrollTop:t.value,lastScrollLeft:n.value,lastScrollToUpperTime:0,lastScrollToLowerTime:0,refresherHeight:0,refreshRotate:0,refreshState:""});return{state:o,scrollTopNumber:t,scrollLeftNumber:n}}(e);!function(e,t,n,o,r,i,a,s,l){let c=!1,u=0,p=!1,d=()=>{};const f=ua((()=>{let t=Number(e.upperThreshold);return isNaN(t)?50:t})),h=ua((()=>{let t=Number(e.lowerThreshold);return isNaN(t)?50:t}));function g(e,t){const n=a.value;let o=0,r="";if(e<0?e=0:"x"===t&&e>n.scrollWidth-n.offsetWidth?e=n.scrollWidth-n.offsetWidth:"y"===t&&e>n.scrollHeight-n.offsetHeight&&(e=n.scrollHeight-n.offsetHeight),"x"===t?o=n.scrollLeft-e:"y"===t&&(o=n.scrollTop-e),0===o)return;let i=s.value;i.style.transition="transform .3s ease-out",i.style.webkitTransition="-webkit-transform .3s ease-out","x"===t?r="translateX("+o+"px) translateZ(0)":"y"===t&&(r="translateY("+o+"px) translateZ(0)"),i.removeEventListener("transitionend",d),i.removeEventListener("webkitTransitionEnd",d),d=()=>_(e,t),i.addEventListener("transitionend",d),i.addEventListener("webkitTransitionEnd",d),"x"===t?n.style.overflowX="hidden":"y"===t&&(n.style.overflowY="hidden"),i.style.transform=r,i.style.webkitTransform=r}function m(n){const o=n.target;r("scroll",n,{scrollLeft:o.scrollLeft,scrollTop:o.scrollTop,scrollHeight:o.scrollHeight,scrollWidth:o.scrollWidth,deltaX:t.lastScrollLeft-o.scrollLeft,deltaY:t.lastScrollTop-o.scrollTop}),e.scrollY&&(o.scrollTop<=f.value&&t.lastScrollTop-o.scrollTop>0&&n.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",n,{direction:"top"}),t.lastScrollToUpperTime=n.timeStamp),o.scrollTop+o.offsetHeight+h.value>=o.scrollHeight&&t.lastScrollTop-o.scrollTop<0&&n.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",n,{direction:"bottom"}),t.lastScrollToLowerTime=n.timeStamp)),e.scrollX&&(o.scrollLeft<=f.value&&t.lastScrollLeft-o.scrollLeft>0&&n.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",n,{direction:"left"}),t.lastScrollToUpperTime=n.timeStamp),o.scrollLeft+o.offsetWidth+h.value>=o.scrollWidth&&t.lastScrollLeft-o.scrollLeft<0&&n.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",n,{direction:"right"}),t.lastScrollToLowerTime=n.timeStamp)),t.lastScrollTop=o.scrollTop,t.lastScrollLeft=o.scrollLeft}function y(t){e.scrollY&&(e.scrollWithAnimation?g(t,"y"):a.value.scrollTop=t)}function v(t){e.scrollX&&(e.scrollWithAnimation?g(t,"x"):a.value.scrollLeft=t)}function b(t){if(t){if(!/^[_a-zA-Z][-_a-zA-Z0-9:]*$/.test(t))return void console.error(`id error: scroll-into-view=${t}`);let n=i.value.querySelector("#"+t);if(n){let t=a.value.getBoundingClientRect(),o=n.getBoundingClientRect();if(e.scrollX){let n=o.left-t.left,r=a.value.scrollLeft+n;e.scrollWithAnimation?g(r,"x"):a.value.scrollLeft=r}if(e.scrollY){let n=o.top-t.top,r=a.value.scrollTop+n;e.scrollWithAnimation?g(r,"y"):a.value.scrollTop=r}}}}function _(t,n){s.value.style.transition="",s.value.style.webkitTransition="",s.value.style.transform="",s.value.style.webkitTransform="";let o=a.value;"x"===n?(o.style.overflowX=e.scrollX?"auto":"hidden",o.scrollLeft=t):"y"===n&&(o.style.overflowY=e.scrollY?"auto":"hidden",o.scrollTop=t),s.value.removeEventListener("transitionend",d),s.value.removeEventListener("webkitTransitionEnd",d)}function w(n){if(e.refresherEnabled){switch(n){case"refreshing":t.refresherHeight=e.refresherThreshold,c||(c=!0,r("refresherrefresh",{},{}),l("update:refresherTriggered",!0));break;case"restore":case"refresherabort":c=!1,t.refresherHeight=u=0,"restore"===n&&(p=!1,r("refresherrestore",{},{})),"refresherabort"===n&&p&&(p=!1,r("refresherabort",{},{}))}t.refreshState=n}}wr((()=>{go((()=>{y(n.value),v(o.value)})),b(e.scrollIntoView);let i=function(e){e.preventDefault(),e.stopPropagation(),m(e)},s={x:0,y:0},l=null,d=function(n){if(null===s)return;let o=n.touches[0].pageX,i=n.touches[0].pageY,d=a.value;if(Math.abs(o-s.x)>Math.abs(i-s.y))if(e.scrollX){if(0===d.scrollLeft&&o>s.x)return void(l=!1);if(d.scrollWidth===d.offsetWidth+d.scrollLeft&&os.y)l=!1,e.refresherEnabled&&!1!==n.cancelable&&n.preventDefault();else{if(d.scrollHeight===d.offsetHeight+d.scrollTop&&i0&&(p=!0,r("refresherpulling",n,{deltaY:o})));const a=t.refresherHeight/e.refresherThreshold;t.refreshRotate=360*(a>1?1:a)}},f=function(e){1===e.touches.length&&(s={x:e.touches[0].pageX,y:e.touches[0].pageY})},h=function(n){s=null,t.refresherHeight>=e.refresherThreshold?w("refreshing"):w("refresherabort")};a.value.addEventListener("touchstart",f,Lg),a.value.addEventListener("touchmove",d,ot(!1)),a.value.addEventListener("scroll",i,ot(!1)),a.value.addEventListener("touchend",h,Lg),Er((()=>{a.value.removeEventListener("touchstart",f),a.value.removeEventListener("touchmove",d),a.value.removeEventListener("scroll",i),a.value.removeEventListener("touchend",h)}))})),cr((()=>{e.scrollY&&(a.value.scrollTop=t.lastScrollTop),e.scrollX&&(a.value.scrollLeft=t.lastScrollLeft)})),zo(n,(e=>{y(e)})),zo(o,(e=>{v(e)})),zo((()=>e.scrollIntoView),(e=>{b(e)})),zo((()=>e.refresherTriggered),(e=>{!0===e?w("refreshing"):!1===e&&w("restore")}))}(e,c,u,p,l,o,r,a,t);const d=ua((()=>{let t="";return e.scrollX?t+="overflow-x:auto;":t+="overflow-x:hidden;",e.scrollY?t+="overflow-y:auto;":t+="overflow-y:hidden;",t}));return()=>{const{refresherEnabled:t,refresherBackground:l,refresherDefaultStyle:u}=e,{refresherHeight:p,refreshState:f,refreshRotate:h}=c;return Hi("uni-scroll-view",{ref:o},[Hi("div",{ref:i,class:"uni-scroll-view"},[Hi("div",{ref:r,style:d.value,class:"uni-scroll-view"},[Hi("div",{ref:a,class:"uni-scroll-view-content"},[t?Hi("div",{ref:s,style:{backgroundColor:l,height:p+"px"},class:"uni-scroll-view-refresher"},["none"!==u?Hi("div",{class:"uni-scroll-view-refresh"},[Hi("div",{class:"uni-scroll-view-refresh-inner"},["pulling"==f?Hi("svg",{key:"refresh__icon",style:{transform:"rotate("+h+"deg)"},fill:"#2BD009",class:"uni-scroll-view-refresh__icon",width:"24",height:"24",viewBox:"0 0 24 24"},[Hi("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"},null),Hi("path",{d:"M0 0h24v24H0z",fill:"none"},null)],4):null,"refreshing"==f?Hi("svg",{key:"refresh__spinner",class:"uni-scroll-view-refresh__spinner",width:"24",height:"24",viewBox:"25 25 50 50"},[Hi("circle",{cx:"50",cy:"50",r:"20",fill:"none",style:"color: #2bd009","stroke-width":"3"},null)]):null])]):null,"none"==u?n.refresher&&n.refresher():null],4):null,n.default&&n.default()],512)],4)],512)],512)}}});function Ig(e,t,n,o,r,i){function a(){c&&(clearTimeout(c),c=null)}let s,l,c=null,u=!0,p=0,d=1,f=null,h=!1,g=0,m="";const y=ua((()=>n.value.length>t.displayMultipleItems)),v=ua((()=>e.circular&&y.value));function b(r){Math.floor(2*p)===Math.floor(2*r)&&Math.ceil(2*p)===Math.ceil(2*r)||v.value&&function(o){if(!u)for(let r=n.value,i=r.length,a=o+t.displayMultipleItems,s=0;s=c.length&&(r-=c.length),r=s%1>.5||s<0?r-1:r,i("transition",{},{dx:e.vertical?0:r*l.offsetWidth,dy:e.vertical?r*l.offsetHeight:0})}function _(e){const o=n.value.length;if(!o)return-1;const r=(Math.round(e)%o+o)%o;if(v.value){if(o<=t.displayMultipleItems)return 0}else if(r>o-t.displayMultipleItems)return o-t.displayMultipleItems;return r}function w(){f=null}function x(){if(!f)return void(h=!1);const e=f,o=e.toPos,r=e.acc,a=e.endTime,c=e.source,u=a-Date.now();if(u<=0){b(o),f=null,h=!1,s=null;const e=n.value[t.current];if(e){const n=e.getItemId();i("animationfinish",{},{current:t.current,currentItemId:n,source:c})}return}b(o+r*u*u/2),l=requestAnimationFrame(x)}function A(e,o,r){w();const i=t.duration,a=n.value.length;let s=p;if(v.value)if(r<0){for(;se;)s-=a}else if(r>0){for(;s>e;)s-=a;for(;s+ae;)s-=a;s+a-ee.current,()=>e.currentItemId,()=>[...n.value]],(()=>{let o=-1;if(e.currentItemId)for(let t=0,r=n.value;te.vertical,()=>v.value,()=>t.displayMultipleItems,()=>[...n.value]],(function(){a(),f&&(b(f.toPos),f=null);const r=n.value;for(let t=0;t0&&d<1||(d=1)}const s=p;p=-2;const l=t.current;l>=0?(u=!1,t.userTracking?(b(s+l-g),g=l):(b(l),e.autoplay&&E())):(u=!0,b(-t.displayMultipleItems-1))})),zo((()=>t.interval),(()=>{c&&(a(),E())})),zo((()=>t.current),((e,o)=>{!function(e,o){const r=m;m="";const a=n.value;if(!r){const t=a.length;A(e,"",v.value&&o+(t-e)%t>t/2?1:0)}const s=a[e];if(s){const e=t.currentItemId=s.getItemId();i("change",{},{current:t.current,currentItemId:e,source:r})}}(e,o),r("update:current",e)})),zo((()=>t.currentItemId),(e=>{r("update:currentItemId",e)})),zo((()=>e.autoplay&&!t.userTracking),S),S(e.autoplay&&!t.userTracking),wr((()=>{let r=!1,i=0,s=0;function l(e){t.userTracking=!1;const n=i/Math.abs(i);let o=0;!e&&Math.abs(i)>.2&&(o=.5*n);const r=_(p+o);e?b(g):(m="touch",t.current=r,A(r,"touch",0!==o?o:0===r&&v.value&&p>=1?1:0))}Kh(o.value,(c=>{if(!e.disableTouch&&!u){if("start"===c.detail.state)return t.userTracking=!0,r=!1,a(),g=p,i=0,s=Date.now(),void w();if("end"===c.detail.state)return l(!1);if("cancel"===c.detail.state)return l(!0);if(t.userTracking){if(!r){r=!0;const n=Math.abs(c.detail.dx),o=Math.abs(c.detail.dy);if((n>=o&&e.vertical||n<=o&&!e.vertical)&&(t.userTracking=!1),!t.userTracking)return void(e.autoplay&&E())}return function(r){const a=s;s=Date.now();const l=n.value.length-t.displayMultipleItems;function c(e){return.5-.25/(e+.5)}function u(e,t){let n=g+e;i=.6*i+.4*t,v.value||(n<0||n>l)&&(n<0?n=-c(-n):n>l&&(n=l+c(n-l)),i=0),b(n)}const p=s-a||1,d=o.value;e.vertical?u(-r.dy/d.offsetHeight,-r.ddy/p):u(-r.dx/d.offsetWidth,-r.ddx/p)}(c.detail),!1}}}))})),Sr((()=>{a(),cancelAnimationFrame(l)})),{onSwiperDotClick:function(e){A(t.current=e,m="click",v.value?1:0)},circularEnabled:v,swiperEnabled:y}}const Bg=lp({name:"Swiper",props:{indicatorDots:{type:[Boolean,String],default:!1},vertical:{type:[Boolean,String],default:!1},autoplay:{type:[Boolean,String],default:!1},circular:{type:[Boolean,String],default:!1},interval:{type:[Number,String],default:5e3},duration:{type:[Number,String],default:500},current:{type:[Number,String],default:0},indicatorColor:{type:String,default:""},indicatorActiveColor:{type:String,default:""},previousMargin:{type:String,default:""},nextMargin:{type:String,default:""},currentItemId:{type:String,default:""},skipHiddenItemLayout:{type:[Boolean,String],default:!1},displayMultipleItems:{type:[Number,String],default:1},disableTouch:{type:[Boolean,String],default:!1},navigation:{type:[Boolean,String],default:!1},navigationColor:{type:String,default:"#fff"},navigationActiveColor:{type:String,default:"rgba(53, 53, 53, 0.6)"}},emits:["change","transition","animationfinish","update:current","update:currentItemId"],setup(e,{slots:t,emit:n}){const o=Wn(null),r=hp(o,n),i=Wn(null),a=Wn(null),s=function(e){return Mn({interval:ua((()=>{const t=Number(e.interval);return isNaN(t)?5e3:t})),duration:ua((()=>{const t=Number(e.duration);return isNaN(t)?500:t})),displayMultipleItems:ua((()=>{const t=Math.round(e.displayMultipleItems);return isNaN(t)?1:t})),current:Math.round(e.current)||0,currentItemId:e.currentItemId,userTracking:!1})}(e),l=ua((()=>{let t={};return(e.nextMargin||e.previousMargin)&&(t=e.vertical?{left:0,right:0,top:hu(e.previousMargin,!0),bottom:hu(e.nextMargin,!0)}:{top:0,bottom:0,left:hu(e.previousMargin,!0),right:hu(e.nextMargin,!0)}),t})),c=ua((()=>{const t=Math.abs(100/s.displayMultipleItems)+"%";return{width:e.vertical?"100%":t,height:e.vertical?t:"100%"}}));let u=[];const p=[],d=Wn([]);function f(){const e=[];for(let t=0;tn===e.rootRef.value));o&&e.push(Fn(o))}d.value=e}jo("addSwiperContext",(function(e){p.push(e),f()}));jo("removeSwiperContext",(function(e){const t=p.indexOf(e);t>=0&&(p.splice(t,1),f())}));const{onSwiperDotClick:h,circularEnabled:g,swiperEnabled:m}=Ig(e,s,d,a,n,r);let y=()=>null;return y=Ng(o,e,s,h,d,g,m),()=>{const n=t.default&&t.default();return u=$h(n),Hi("uni-swiper",{ref:o},[Hi("div",{ref:i,class:"uni-swiper-wrapper"},[Hi("div",{class:"uni-swiper-slides",style:l.value},[Hi("div",{ref:a,class:"uni-swiper-slide-frame",style:c.value},[n],4)],4),e.indicatorDots&&Hi("div",{class:["uni-swiper-dots",e.vertical?"uni-swiper-dots-vertical":"uni-swiper-dots-horizontal"]},[d.value.map(((t,n,o)=>Hi("div",{onClick:()=>h(n),class:{"uni-swiper-dot":!0,"uni-swiper-dot-active":n=s.current||n{let s=!1,l=!1,c=!1,u=Wn(!1);function p(e,n){const o=e.currentTarget;o&&(o.style.backgroundColor="over"===n?t.navigationActiveColor:"")}Ro((()=>{s="auto"===t.navigation,u.value=!0!==t.navigation||s,v()})),Ro((()=>{const e=r.value.length,t=!i.value;l=0===n.current&&t,c=n.current===e-1&&t||t&&n.current+n.displayMultipleItems>=e,a.value||(l=!0,c=!0,s&&(u.value=!0))}));const d={onMouseover:e=>p(e,"over"),onMouseout:e=>p(e,"out")};function f(e,t,a){if(e.stopPropagation(),a)return;const s=r.value.length;let l=n.current;switch(t){case"prev":l--,l<0&&i.value&&(l=s-1);break;case"next":l++,l>=s&&i.value&&(l=0)}o(l)}const h=()=>_u(yu,t.navigationColor,26);let g;const m=n=>{clearTimeout(g);const{clientX:o,clientY:r}=n,{left:i,right:a,top:s,bottom:l,width:c,height:p}=e.value.getBoundingClientRect();let d=!1;if(d=t.vertical?!(r-s

          {u.value=d}),300);u.value=d},y=()=>{u.value=!0};function v(){e.value&&(e.value.removeEventListener("mousemove",m),e.value.removeEventListener("mouseleave",y),s&&(e.value.addEventListener("mousemove",m),e.value.addEventListener("mouseleave",y)))}return wr(v),function(){const e={"uni-swiper-navigation-hide":u.value,"uni-swiper-navigation-vertical":t.vertical};return t.navigation?Hi(Ei,null,[Hi("div",Yi({class:["uni-swiper-navigation uni-swiper-navigation-prev",T({"uni-swiper-navigation-disabled":l},e)],onClick:e=>f(e,"prev",l)},d),[h()],16,["onClick"]),Hi("div",Yi({class:["uni-swiper-navigation uni-swiper-navigation-next",T({"uni-swiper-navigation-disabled":c},e)],onClick:e=>f(e,"next",c)},d),[h()],16,["onClick"])]):null}},jg=lp({name:"SwiperItem",props:{itemId:{type:String,default:""}},setup(e,{slots:t}){const n=Wn(null),o={rootRef:n,getItemId:()=>e.itemId,getBoundingClientRect:()=>n.value.getBoundingClientRect(),updatePosition(e,t){const o=t?"0":100*e+"%",r=t?100*e+"%":"0",i=n.value,a=`translate(${o},${r}) translateZ(0)`;i&&(i.style.webkitTransform=a,i.style.transform=a)}};return wr((()=>{const e=Do("addSwiperContext");e&&e(o)})),Sr((()=>{const e=Do("removeSwiperContext");e&&e(o)})),()=>Hi("uni-swiper-item",{ref:n,style:{position:"absolute",width:"100%",height:"100%"}},[t.default&&t.default()],512)}}),Dg={ensp:" ",emsp:" ",nbsp:" "};function Rg(e,t){return e.replace(/\\n/g,ae).split(ae).map((e=>function(e,{space:t,decode:n}){if(!e)return e;t&&Dg[t]&&(e=e.replace(/ /g,Dg[t]));if(!n)return e;return e.replace(/ /g,Dg.nbsp).replace(/ /g,Dg.ensp).replace(/ /g,Dg.emsp).replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'")}(e,t)))}const Fg=lp({name:"Text",props:{selectable:{type:[Boolean,String],default:!1},space:{type:String,default:""},decode:{type:[Boolean,String],default:!1}},setup:(e,{slots:t})=>()=>{const n=[];return t.default&&t.default().forEach((t=>{if(8&t.shapeFlag&&t.type!==Ti){const o=Rg(t.children,{space:e.space,decode:e.decode}),r=o.length-1;o.forEach(((e,t)=>{(0!==t||e)&&n.push(Vi(e)),t!==r&&n.push(Hi("br"))}))}else n.push(t)})),Hi("uni-text",{selectable:!!e.selectable||null},[Hi("span",null,n)],8,["selectable"])}}),zg=lp({name:"View",props:T({},up),setup(e,{slots:t}){const{hovering:n,binding:o}=pp(e);return()=>{const r=e.hoverClass;return r&&"none"!==r?Hi("uni-view",Yi({class:n.value?r:""},o),[t.default&&t.default()],16):Hi("uni-view",null,[t.default&&t.default()])}}});function qg(e,t){if(t||(t=e.id),t)return e.$options.name.toLowerCase()+"."+t}function Hg(e,t,n){e&&Bc(n||Su(),e,(({type:e,data:n},o)=>{t(e,n,o)}))}function Ug(e,t){e&&function(e,t){t=Ic(e,t),delete Oc[t]}(t||Su(),e)}function Vg(e,t,n,o){const r=ea().proxy;wr((()=>{Hg(t||qg(r),e,o),!n&&t||zo((()=>r.id),((t,n)=>{Hg(qg(r,t),e,o),Ug(n&&qg(r,n))}))})),Er((()=>{Ug(t||qg(r),o)}))}let Wg=0;function $g(e){const t=wu(),n=ea().proxy,o=n.$options.name.toLowerCase(),r=e||n.id||"context"+Wg++;return wr((()=>{n.$el.__uniContextInfo={id:r,type:o,page:t}})),`${o}.${r}`}function Qg(e,t,n,o){B(t)&&vr(e,t.bind(n),o)}function Xg(e,t,n){var o;const r=e.mpType||n.$mpType;if(r&&"component"!==r&&(Object.keys(e).forEach((o=>{if(function(e,t,n=!0){return!(n&&!B(t))&&(ft.indexOf(e)>-1||0===e.indexOf("on"))}(o,e[o],!1)){const r=e[o];M(r)?r.forEach((e=>Qg(o,e,n,t))):Qg(o,r,n,t)}})),"page"===r)){t.__isVisible=!0;try{Pu(n,we,t.attrs.__pageQuery),delete t.attrs.__pageQuery,"preloadPage"!==(null==(o=n.$page)?void 0:o.openType)&&Pu(n,he)}catch(i){console.error(i.message+ae+i.stack)}}}function Yg(e,t,n){Xg(e,t,n)}function Gg(e,t,n){return e[t]=n}function Jg(e){return function(t,n,o){if(!n)throw t;const r=e._instance;if(!r||!r.proxy)throw t;Pu(r.proxy,ye,t)}}function Kg(e,t){return e?[...new Set([].concat(e,t))]:t}function Zg(e){const t=e._context.config;var n;t.errorHandler=gt(e,Jg),n=t.optionMergeStrategies,ft.forEach((e=>{n[e]=Kg}));const o=t.globalProperties;o.$set=Gg,o.$applyOptions=Yg,function(e){ht.forEach((t=>t(e)))}(e)}const em=du("upm");function tm(){return Do(em)}function nm(e){const t=function(e){return Mn(function(e){{const{enablePullDownRefresh:t,navigationBar:n}=e;if(t){const t=function(e){return e.offset&&(e.offset=hu(e.offset)),e.height&&(e.height=hu(e.height)),e.range&&(e.range=hu(e.range)),e}(T({support:!0,color:"#2BD009",style:"circle",height:70,range:150,offset:0},e.pullToRefresh)),{type:o,style:r}=n;"custom"!==r&&"transparent"!==o&&(t.offset+=se+iu.top),e.pullToRefresh=t}}{const{navigationBar:t}=e,{titleSize:n,titleColor:o,backgroundColor:r}=t;t.titleText=t.titleText||"",t.type=t.type||"default",t.titleSize=n||"16px",t.titleColor=o||"#000000",t.backgroundColor=r||"#F8F8F8",kc(t)}if(history.state){const t=history.state.__type__;"redirectTo"!==t&&"reLaunch"!==t||0!==ym().length||(e.isEntry=!0,e.isQuit=!0)}return e}(JSON.parse(JSON.stringify(Cu(fc().meta,e)))))}(e);return jo(em,t),t}function om(){return fc()}function rm(){return history.state&&history.state.__id__||1}let im;function am(){var e;return im||(im=__uniConfig.tabBar&&Mn((e=__uniConfig.tabBar,hc()&&e.list&&e.list.forEach((e=>{vc(e,["text"])})),e))),im}const sm=window.CSS&&window.CSS.supports;function lm(e){return sm&&(sm(e)||sm.apply(window.CSS,e.split(":")))}const cm=lm("top:env(a)"),um=lm("top:constant(a)"),pm=lm("backdrop-filter:blur(10px)"),dm=(()=>cm?"env":um?"constant":"")();function fm(e){return dm?`calc(${e}px + ${dm}(safe-area-inset-bottom))`:`${e}px`}const hm="$$",gm=new Map;function mm(){return gm}function ym(){const e=[],t=gm.values();for(const n of t)n.$.__isTabBar?n.$.__isActive&&e.push(n):e.push(n);return e}function vm(e,t=!0){const n=gm.get(e);n.$.__isUnload=!0,Pu(n,xe),gm.delete(e),t&&function(e){const t=Am.get(e);t&&(Am.delete(e),Em.pruneCacheEntry(t))}(e)}let bm=rm();function _m(e){const t=tm();let n=e.fullPath;return e.meta.isEntry&&-1===n.indexOf(e.meta.route)&&(n="/"+e.meta.route+n.replace("/","")),function(e,t,n,o,r,i){const{id:a,route:s}=o,l=bt(o.navigationBar,__uniConfig.themeConfig,i).titleColor;return{id:a,path:Qe(s),route:s,fullPath:t,options:n,meta:o,openType:e,eventChannel:r,statusBarStyle:"#ffffff"===l?"light":"dark"}}("navigateTo",n,{},t)}function wm(e){const t=_m(e.$route);!function(e,t){e.route=t.route,e.$vm=e,e.$page=t,e.$mpType="page",t.meta.isTabBar&&(e.$.__isTabBar=!0,e.$.__isActive=!0)}(e,t),gm.set(xm(t.path,t.id),e)}function xm(e,t){return e+hm+t}const Am=new Map,Em={get:e=>Am.get(e),set(e,t){!function(e){const t=parseInt(e.split(hm)[1]);if(!t)return;Em.forEach(((e,n)=>{const o=parseInt(n.split(hm)[1]);if(o&&o>t){if(function(e){return"tabBar"===e.props.type}(e))return;Em.delete(n),Em.pruneCacheEntry(e),go((()=>{gm.forEach(((e,t)=>{e.$.isUnmounted&&gm.delete(t)}))}))}}))}(e),Am.set(e,t)},delete(e){Am.get(e)&&Am.delete(e)},forEach(e){Am.forEach(e)}};function Sm(e,t){!function(e){const t=km(e),{body:n}=document;Cm&&n.removeAttribute(Cm),t&&n.setAttribute(t,""),Cm=t}(e),function(e){let t=0,n=0;if("custom"!==e.navigationBar.style&&["default","float"].indexOf(e.navigationBar.type)>-1&&(t=se),e.isTabBar){const e=am();e.shown&&(n=parseInt(e.height))}var o;pu({"--window-top":(o=t,dm?`calc(${o}px + ${dm}(safe-area-inset-top))`:`${o}px`),"--window-bottom":fm(n)})}(t),function(e){const t="nvue-dir-"+__uniConfig.nvue["flex-direction"];e.isNVue?(document.body.setAttribute("nvue",""),document.body.setAttribute(t,"")):(document.body.removeAttribute("nvue"),document.body.removeAttribute(t))}(t),function(e,t){document.removeEventListener("touchmove",Mu),Pm&&document.removeEventListener("scroll",Pm);if(t.disableScroll)return document.addEventListener("touchmove",Mu);const{onPageScroll:n,onReachBottom:o}=e,r="transparent"===t.navigationBar.type;if(!n&&!o&&!r)return;const i={},a=e.proxy.$page.id;(n||r)&&(i.onPageScroll=function(e,t,n){return o=>{t&&Lb.publishHandler(ke,{scrollTop:o},e),n&&Lb.emit(e+"."+ke,{scrollTop:o})}}(a,n,r));o&&(i.onReachBottomDistance=t.onReachBottomDistance||le,i.onReachBottom=()=>Lb.publishHandler(Pe,{},a));Pm=Iu(i),requestAnimationFrame((()=>document.addEventListener("scroll",Pm)))}(e,t)}function Tm(e){const t=km(e);t&&function(e){const t=document.querySelector("uni-page-body");t&&t.setAttribute(e,"")}(t)}function km(e){return e.type.__scopeId}let Cm,Pm;function Mm(e){const t=dc({history:Om(),strict:!!__uniConfig.router.strict,routes:__uniRoutes,scrollBehavior:Lm});e.router=t,e.use(t)}const Lm=(e,t,n)=>{if(n)return n};function Om(){let{routerBase:e}=__uniConfig.router;"/"===e&&(e="");const t=sl(e);return t.listen(((e,t,n)=>{"back"===n.direction&&function(e=1){const t=ym(),n=t.length-1,o=n-e;for(let r=n;r>o;r--){const e=t[r].$page;vm(xm(e.path,e.id),!1)}}(Math.abs(n.delta))})),t}const Im={install(e){Zg(e),$u(e),op(e),e.config.warnHandler||(e.config.warnHandler=Bm),Mm(e)}};function Bm(e,t,n){if(t){if("PageMetaHead"===t.$.type.name)return;const e=t.$.parent;if(e&&"PageMeta"===e.type.name)return}const o=[`[Vue warn]: ${e}`];n.length&&o.push("\n",n),console.warn(...o)}const Nm={class:"uni-async-loading"},jm=Hi("i",{class:"uni-loading"},null,-1),Dm=cp({name:"AsyncLoading",render:()=>(Mi(),Ni("div",Nm,[jm]))});function Rm(){window.location.reload()}const Fm=cp({name:"AsyncError",setup(){wc();const{t:e}=bc();return()=>Hi("div",{class:"uni-async-error",onClick:Rm},[e("uni.async.error")],8,["onClick"])}});let zm;function qm(){return zm}function Hm(e){zm=e,Object.defineProperty(zm.$.ctx,"$children",{get:()=>ym().map((e=>e.$vm))});const t=zm.$.appContext.app;t.component(Dm.name)||t.component(Dm.name,Dm),t.component(Fm.name)||t.component(Fm.name,Fm),function(e){e.$vm=e,e.$mpType="app";const t=Wn(bc().getLocale());Object.defineProperty(e,"$locale",{get:()=>t.value,set(e){t.value=e}})}(zm),function(e,t){const n=e.$options||{};n.globalData=T(n.globalData||{},t),Object.defineProperty(e,"globalData",{get:()=>n.globalData,set(e){n.globalData=e}})}(zm),tp(),Xc()}function Um(e,{clone:t,init:n,setup:o,before:r}){t&&(e=T({},e)),r&&r(e);const i=e.setup;return e.setup=(e,t)=>{const r=ea();n(r.proxy);const a=o(r);if(i)return i(a||e,t)},e}function Vm(e,t){return e&&(e.__esModule||"Module"===e[Symbol.toStringTag])?Um(e.default,t):Um(e,t)}function Wm(e){return Vm(e,{clone:!0,init:wm,setup(e){e.$pageInstance=e;const t=om(),n=at(t.query);e.attrs.__pageQuery=n,e.proxy.$page.options=n;const o=tm();var r,i,a;return _r((()=>{Sm(e,o)})),wr((()=>{Tm(e);const{onReady:n}=e;n&&Z(n),Ym(t)})),pr((()=>{if(!e.__isVisible){Sm(e,o),e.__isVisible=!0;const{onShow:n}=e;n&&Z(n),go((()=>{Ym(t)}))}}),"ba",r),function(e,t){pr(e,"bda",t)}((()=>{if(e.__isVisible&&!e.__isUnload){e.__isVisible=!1;const{onHide:t}=e;t&&Z(t)}})),i=o.id,Lb.subscribe(Ic(i,Pc),a?a(Nc):Nc),Er((()=>{!function(e){Lb.unsubscribe(Ic(e,Pc)),Object.keys(Oc).forEach((t=>{0===t.indexOf(e+".")&&delete Oc[t]}))}(o.id)})),n}})}function $m(){const{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}=Ny(),r=90===Math.abs(Number(window.orientation))?"landscape":"portrait";Ob.emit(Se,{deviceOrientation:r,size:{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}})}function Qm(e){H(e.data)&&e.data.type===fe&&Ob.emit(He,e.data.data,e.data.pageId)}function Xm(){const{emit:e}=Ob;"visible"===document.visibilityState?e(ze,T({},rh)):e(qe)}function Ym(e){const{tabBarText:t,tabBarIndex:n,route:o}=e.meta;t&&Pu("onTabItemTap",{index:n,text:t,pagePath:o})}function Gm(e){e=e>0&&e<1/0?e:0;const t=Math.floor(e/3600),n=Math.floor(e%3600/60),o=Math.floor(e%3600%60),r=(t<10?"0":"")+t;let i=(n<10?"0":"")+n+":"+((o<10?"0":"")+o);return"00"!==r&&(i=r+":"+i),i}function Jm(e,t,n){const o=Mn({gestureType:"none",volumeOld:0,volumeNew:0,currentTimeOld:0,currentTimeNew:0}),r={x:0,y:0};return{state:o,onTouchstart:function(e){const t=e.targetTouches[0];r.x=t.pageX,r.y=t.pageY,o.gestureType="none",o.volumeOld=0,o.currentTimeOld=o.currentTimeNew=0},onTouchmove:function(i){function a(){i.stopPropagation(),i.preventDefault()}n.fullscreen&&a();const s=o.gestureType;if("stop"===s)return;const l=i.targetTouches[0],c=l.pageX,u=l.pageY,p=r,d=t.value;if("progress"===s?function(e){const n=t.value,r=n.duration;let i=e/600*r+o.currentTimeOld;i<0?i=0:i>r&&(i=r);o.currentTimeNew=i}(c-p.x):"volume"===s&&function(e){const n=t.value,r=o.volumeOld;let i;"number"==typeof r&&(i=r-e/200,i<0?i=0:i>1&&(i=1),n.volume=i,o.volumeNew=i)}(u-p.y),"none"===s)if(Math.abs(c-p.x)>Math.abs(u-p.y)){if(!e.enableProgressGesture)return void(o.gestureType="stop");o.gestureType="progress",o.currentTimeOld=o.currentTimeNew=d.currentTime,n.fullscreen||a()}else{if(!e.pageGesture)return void(o.gestureType="stop");o.gestureType="volume",o.volumeOld=d.volume,n.fullscreen||a()}},onTouchend:function(e){const n=t.value;"none"!==o.gestureType&&"stop"!==o.gestureType&&(e.stopPropagation(),e.preventDefault()),"progress"===o.gestureType&&o.currentTimeOld!==o.currentTimeNew&&(n.currentTime=o.currentTimeNew),o.gestureType="none"}}}const Km=lp({name:"Video",props:{id:{type:String,default:""},src:{type:String,default:""},duration:{type:[Number,String],default:""},controls:{type:[Boolean,String],default:!0},danmuList:{type:Array,default:()=>[]},danmuBtn:{type:[Boolean,String],default:!1},enableDanmu:{type:[Boolean,String],default:!1},autoplay:{type:[Boolean,String],default:!1},loop:{type:[Boolean,String],default:!1},muted:{type:[Boolean,String],default:!1},objectFit:{type:String,default:"contain"},poster:{type:String,default:""},direction:{type:[String,Number],default:""},showProgress:{type:Boolean,default:!0},initialTime:{type:[String,Number],default:0},showFullscreenBtn:{type:[Boolean,String],default:!0},pageGesture:{type:[Boolean,String],default:!1},enableProgressGesture:{type:[Boolean,String],default:!0},showPlayBtn:{type:[Boolean,String],default:!0},showCenterPlayBtn:{type:[Boolean,String],default:!0}},emits:["fullscreenchange","progress","loadedmetadata","waiting","error","play","pause","ended","timeupdate"],setup(e,{emit:t,attrs:n,slots:o}){const r=Wn(null),i=Wn(null),a=hp(r,t),{state:s}=Oh(),{$attrs:l}=Wh({excludeListeners:!0}),{t:c}=bc();Sc();const{videoRef:u,state:p,play:d,pause:f,seek:h,playbackRate:g,toggle:m,onDurationChange:y,onLoadedMetadata:v,onProgress:b,onWaiting:_,onVideoError:w,onPlay:x,onPause:A,onEnded:E,onTimeUpdate:S}=function(e,t,n){const o=Wn(null),r=ua((()=>xp(e.src))),i=Mn({start:!1,src:r,playing:!1,currentTime:0,duration:0,progress:0,buffered:0});function a(e){const t=e.target,n=t.buffered;n.length&&(i.buffered=n.end(n.length-1)/t.duration*100)}return zo((()=>r.value),(()=>{i.playing=!1,i.currentTime=0})),zo((()=>i.buffered),(e=>{n("progress",{},{buffered:e})})),{videoRef:o,state:i,play:function(){const e=o.value;i.start=!0,e.play()},pause:function(){o.value.pause()},seek:function(e){const t=o.value;"number"!=typeof(e=Number(e))||isNaN(e)||(t.currentTime=e)},playbackRate:function(e){o.value.playbackRate=e},toggle:function(){const e=o.value;i.playing?e.pause():e.play()},onDurationChange:function({target:e}){i.duration=e.duration},onLoadedMetadata:function(t){const o=Number(e.initialTime)||0,r=t.target;o>0&&(r.currentTime=o),n("loadedmetadata",t,{width:r.videoWidth,height:r.videoHeight,duration:r.duration}),a(t)},onProgress:a,onWaiting:function(e){n("waiting",e,{})},onVideoError:function(e){i.playing=!1,n("error",e,{})},onPlay:function(e){i.start=!0,i.playing=!0,n("play",e,{})},onPause:function(e){i.playing=!1,n("pause",e,{})},onEnded:function(e){i.playing=!1,n("ended",e,{})},onTimeUpdate:function(e){const t=e.target,o=i.currentTime=t.currentTime;n("timeupdate",e,{currentTime:o,duration:t.duration})}}}(e,0,a),{state:T,danmuRef:k,updateDanmu:C,toggleDanmu:P,sendDanmu:L}=function(e,t){const n=Wn(null),o=Mn({enable:Boolean(e.enableDanmu)});let r={time:0,index:-1};const i=M(e.danmuList)?JSON.parse(JSON.stringify(e.danmuList)):[];function a(e){const t=document.createElement("p");t.className="uni-video-danmu-item",t.innerText=e.text;let o=`bottom: ${100*Math.random()}%;color: ${e.color};`;t.setAttribute("style",o),n.value.appendChild(t),setTimeout((function(){o+="left: 0;-webkit-transform: translateX(-100%);transform: translateX(-100%);",t.setAttribute("style",o),setTimeout((function(){t.remove()}),4e3)}),17)}return i.sort((function(e,t){return(e.time||0)-(t.time||0)})),{state:o,danmuRef:n,updateDanmu:function(e){const n=e.target.currentTime,s=r,l={time:n,index:s.index};if(n>s.time)for(let r=s.index+1;r=(e.time||0)))break;l.index=r,t.playing&&o.enable&&a(e)}else if(n-1&&n<=(i[t].time||0);t--)l.index=t-1;r=l},toggleDanmu:function(){o.enable=!o.enable},sendDanmu:function(e){i.splice(r.index+1,0,{text:String(e.text),color:e.color,time:t.currentTime||0})}}}(e,p),{state:O,onFullscreenChange:I,emitFullscreenChange:B,toggleFullscreen:N,requestFullScreen:j,exitFullScreen:D}=function(e,t,n,o,r){const i=Mn({fullscreen:!1}),a=/^Apple/.test(navigator.vendor);function s(t){i.fullscreen=t,e("fullscreenchange",{},{fullScreen:t,direction:"vertical"})}function l(e){const i=r.value,l=t.value,c=n.value;let u;e?!document.fullscreenEnabled&&!document.webkitFullscreenEnabled||a&&!o.userAction?c.webkitEnterFullScreen?c.webkitEnterFullScreen():(u=!0,l.remove(),l.classList.add("uni-video-type-fullscreen"),document.body.appendChild(l)):l[document.fullscreenEnabled?"requestFullscreen":"webkitRequestFullscreen"]():document.fullscreenEnabled||document.webkitFullscreenEnabled?document.fullscreenElement?document.exitFullscreen():document.webkitFullscreenElement&&document.webkitExitFullscreen():c.webkitExitFullScreen?c.webkitExitFullScreen():(u=!0,l.remove(),l.classList.remove("uni-video-type-fullscreen"),i.appendChild(l)),u&&s(e)}function c(){l(!1)}return Er(c),{state:i,onFullscreenChange:function(e,t){t&&document.fullscreenEnabled||s(!(!document.fullscreenElement&&!document.webkitFullscreenElement))},emitFullscreenChange:s,toggleFullscreen:l,requestFullScreen:function(){l(!0)},exitFullScreen:c}}(a,i,u,s,r),{state:R,onTouchstart:F,onTouchend:z,onTouchmove:q}=Jm(e,u,O),{state:H,progressRef:U,ballRef:V,clickProgress:W,toggleControls:$}=function(e,t,n){const o=Wn(null),r=Wn(null),i=ua((()=>e.showCenterPlayBtn&&!t.start)),a=Wn(!0),s=ua((()=>!i.value&&e.controls&&a.value)),l=Mn({touching:!1,controlsTouching:!1,centerPlayBtnShow:i,controlsShow:s,controlsVisible:a});let c;function u(){c=setTimeout((()=>{l.controlsVisible=!1}),3e3)}function p(){c&&(clearTimeout(c),c=null)}return Er((()=>{c&&clearTimeout(c)})),zo((()=>l.controlsShow&&t.playing&&!l.controlsTouching),(e=>{e?u():p()})),zo([()=>t.currentTime,()=>{e.duration}],(function(){l.touching||(t.progress=t.currentTime/t.duration*100)})),wr((()=>{const e=ot(!1);let i,a,s,c=!0;const u=r.value;function p(e){const n=e.targetTouches[0],r=n.pageX,l=n.pageY;if(c&&Math.abs(r-i)100&&(p=100),t.progress=p,e.preventDefault(),e.stopPropagation()}function d(o){l.controlsTouching=!1,l.touching&&(u.removeEventListener("touchmove",p,e),c||(o.preventDefault(),o.stopPropagation(),n(t.duration*t.progress/100)),l.touching=!1)}u.addEventListener("touchstart",(n=>{l.controlsTouching=!0;const o=n.targetTouches[0];i=o.pageX,a=o.pageY,s=t.progress,c=!0,l.touching=!0,u.addEventListener("touchmove",p,e)})),u.addEventListener("touchend",d),u.addEventListener("touchcancel",d)})),{state:l,progressRef:o,ballRef:r,clickProgress:function(e){const r=o.value;let i=e.target,a=e.offsetX;for(;i&&i!==r;)a+=i.offsetLeft,i=i.parentNode;const s=r.offsetWidth;let l=0;a>=0&&a<=s&&(l=a/s,n(t.duration*l))},toggleControls:function(){l.controlsVisible=!l.controlsVisible},autoHideStart:u,autoHideEnd:p}}(e,p,h);return function(e,t,n,o,r,i,a){const s={play:e,pause:t,seek:n,sendDanmu:o,playbackRate:r,requestFullScreen:i,exitFullScreen:a};Vg(((e,t)=>{let n;switch(e){case"seek":n=t.position;break;case"sendDanmu":n=t;break;case"playbackRate":n=t.rate}e in s&&s[e](n)}),$g(),!0)}(d,f,h,L,g,j,D),()=>Hi("uni-video",{ref:r,id:e.id},[Hi("div",{ref:i,class:"uni-video-container",onTouchstart:F,onTouchend:z,onTouchmove:q,onFullscreenchange:hs(I,["stop"]),onWebkitfullscreenchange:hs((e=>I(e,!0)),["stop"])},[Hi("video",Yi({ref:u,style:{"object-fit":e.objectFit},muted:!!e.muted,loop:!!e.loop,src:p.src,poster:e.poster,autoplay:!!e.autoplay},l.value,{class:"uni-video-video","webkit-playsinline":!0,playsinline:!0,onClick:$,onDurationchange:y,onLoadedmetadata:v,onProgress:b,onWaiting:_,onError:w,onPlay:x,onPause:A,onEnded:E,onTimeupdate:e=>{S(e),C(e)},onWebkitbeginfullscreen:()=>B(!0),onX5videoenterfullscreen:()=>B(!0),onWebkitendfullscreen:()=>B(!1),onX5videoexitfullscreen:()=>B(!1)}),null,16,["muted","loop","src","poster","autoplay","webkit-playsinline","playsinline","onClick","onDurationchange","onLoadedmetadata","onProgress","onWaiting","onError","onPlay","onPause","onEnded","onTimeupdate","onWebkitbeginfullscreen","onX5videoenterfullscreen","onWebkitendfullscreen","onX5videoexitfullscreen"]),Mr(Hi("div",{class:"uni-video-bar uni-video-bar-full",onClick:hs((()=>{}),["stop"])},[Hi("div",{class:"uni-video-controls"},[Mr(Hi("div",{class:{"uni-video-control-button":!0,"uni-video-control-button-play":!p.playing,"uni-video-control-button-pause":p.playing},onClick:hs(m,["stop"])},null,10,["onClick"]),[[gs,e.showPlayBtn]]),Mr(Hi("div",{class:"uni-video-current-time"},[Gm(p.currentTime)],512),[[gs,e.showProgress]]),Mr(Hi("div",{ref:U,class:"uni-video-progress-container",onClick:hs(W,["stop"])},[Hi("div",{class:"uni-video-progress"},[Hi("div",{style:{width:p.buffered+"%"},class:"uni-video-progress-buffered"},null,4),Hi("div",{ref:V,style:{left:p.progress+"%"},class:"uni-video-ball"},[Hi("div",{class:"uni-video-inner"},null)],4)])],8,["onClick"]),[[gs,e.showProgress]]),Mr(Hi("div",{class:"uni-video-duration"},[Gm(Number(e.duration)||p.duration)],512),[[gs,e.showProgress]])]),Mr(Hi("div",{class:{"uni-video-danmu-button":!0,"uni-video-danmu-button-active":T.enable},onClick:hs(P,["stop"])},[c("uni.video.danmu")],10,["onClick"]),[[gs,e.danmuBtn]]),Mr(Hi("div",{class:{"uni-video-fullscreen":!0,"uni-video-type-fullscreen":O.fullscreen},onClick:hs((()=>N(!O.fullscreen)),["stop"])},null,10,["onClick"]),[[gs,e.showFullscreenBtn]])],8,["onClick"]),[[gs,H.controlsShow]]),Mr(Hi("div",{ref:k,style:"z-index: 0;",class:"uni-video-danmu"},null,512),[[gs,p.start&&T.enable]]),H.centerPlayBtnShow&&Hi("div",{class:"uni-video-cover",onClick:hs((()=>{}),["stop"])},[Hi("div",{class:"uni-video-cover-play-button",onClick:hs(d,["stop"])},null,8,["onClick"]),Hi("p",{class:"uni-video-cover-duration"},[Gm(Number(e.duration)||p.duration)])],8,["onClick"]),Hi("div",{class:{"uni-video-toast":!0,"uni-video-toast-volume":"volume"===R.gestureType}},[Hi("div",{class:"uni-video-toast-title"},[c("uni.video.volume")]),Hi("svg",{class:"uni-video-toast-icon",width:"200px",height:"200px",viewBox:"0 0 1024 1024",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},[Hi("path",{d:"M475.400704 201.19552l0 621.674496q0 14.856192-10.856448 25.71264t-25.71264 10.856448-25.71264-10.856448l-190.273536-190.273536-149.704704 0q-14.856192 0-25.71264-10.856448t-10.856448-25.71264l0-219.414528q0-14.856192 10.856448-25.71264t25.71264-10.856448l149.704704 0 190.273536-190.273536q10.856448-10.856448 25.71264-10.856448t25.71264 10.856448 10.856448 25.71264zm219.414528 310.837248q0 43.425792-24.28416 80.851968t-64.2816 53.425152q-5.71392 2.85696-14.2848 2.85696-14.856192 0-25.71264-10.570752t-10.856448-25.998336q0-11.999232 6.856704-20.284416t16.570368-14.2848 19.427328-13.142016 16.570368-20.284416 6.856704-32.569344-6.856704-32.569344-16.570368-20.284416-19.427328-13.142016-16.570368-14.2848-6.856704-20.284416q0-15.427584 10.856448-25.998336t25.71264-10.570752q8.57088 0 14.2848 2.85696 39.99744 15.427584 64.2816 53.139456t24.28416 81.137664zm146.276352 0q0 87.422976-48.56832 161.41824t-128.5632 107.707392q-7.428096 2.85696-14.2848 2.85696-15.427584 0-26.284032-10.856448t-10.856448-25.71264q0-22.284288 22.284288-33.712128 31.997952-16.570368 43.425792-25.141248 42.283008-30.855168 65.995776-77.423616t23.712768-99.136512-23.712768-99.136512-65.995776-77.423616q-11.42784-8.57088-43.425792-25.141248-22.284288-11.42784-22.284288-33.712128 0-14.856192 10.856448-25.71264t25.71264-10.856448q7.428096 0 14.856192 2.85696 79.99488 33.712128 128.5632 107.707392t48.56832 161.41824zm146.276352 0q0 131.42016-72.566784 241.41312t-193.130496 161.989632q-7.428096 2.85696-14.856192 2.85696-14.856192 0-25.71264-10.856448t-10.856448-25.71264q0-20.570112 22.284288-33.712128 3.999744-2.285568 12.85632-5.999616t12.85632-5.999616q26.284032-14.2848 46.854144-29.140992 70.281216-51.996672 109.707264-129.705984t39.426048-165.132288-39.426048-165.132288-109.707264-129.705984q-20.570112-14.856192-46.854144-29.140992-3.999744-2.285568-12.85632-5.999616t-12.85632-5.999616q-22.284288-13.142016-22.284288-33.712128 0-14.856192 10.856448-25.71264t25.71264-10.856448q7.428096 0 14.856192 2.85696 120.563712 51.996672 193.130496 161.989632t72.566784 241.41312z"},null)]),Hi("div",{class:"uni-video-toast-value"},[Hi("div",{style:{width:100*R.volumeNew+"%"},class:"uni-video-toast-value-content"},[Hi("div",{class:"uni-video-toast-volume-grids"},[Rr(10,(()=>Hi("div",{class:"uni-video-toast-volume-grids-item"},null)))])],4)])],2),Hi("div",{class:{"uni-video-toast":!0,"uni-video-toast-progress":"progress"===R.gestureType}},[Hi("div",{class:"uni-video-toast-title"},[Gm(R.currentTimeNew)," / ",Gm(p.duration)])],2),Hi("div",{class:"uni-video-slots"},[o.default&&o.default()])],40,["onTouchstart","onTouchend","onTouchmove","onFullscreenchange","onWebkitfullscreenchange"])],8,["id"])}}),Zm=({name:e,arg:t})=>{"postMessage"===e||uni[e](t)},ey=Je((()=>Ob.on(He,Zm))),ty=lp({inheritAttrs:!1,name:"WebView",props:{src:{type:String,default:""},fullscreen:{type:Boolean,default:!0}},setup(e){ey();const t=Wn(null),n=Wn(null),{$attrs:o,$excludeAttrs:r,$listeners:i}=Wh({excludeListeners:!0});let a;return(()=>{const r=document.createElement("iframe");Ro((()=>{for(const e in o.value)if(P(o.value,e)){const t=o.value[e];r[e]=t}})),Ro((()=>{r.src=xp(e.src)})),n.value=r,a=function(e,t,n){const o=()=>{var o,r;if(n){const{top:n,left:o,width:r,height:i}=e.value.getBoundingClientRect();Ge(t.value,{position:"absolute",display:"block",border:"0",top:n+"px",left:o+"px",width:r+"px",height:i+"px"})}else Ge(t.value,{width:(null==(o=e.value)?void 0:o.style.width)||"300px",height:(null==(r=e.value)?void 0:r.style.height)||"150px"})};return o}(t,n,e.fullscreen),e.fullscreen&&document.body.appendChild(r)})(),wr((()=>{var o;a(),!e.fullscreen&&(null==(o=t.value)||o.appendChild(n.value))})),cr((()=>{e.fullscreen&&(n.value.style.display="block")})),ur((()=>{e.fullscreen&&(n.value.style.display="none")})),Er((()=>{e.fullscreen&&document.body.removeChild(n.value)})),()=>Hi(Ei,null,[Hi("uni-web-view",Yi({class:e.fullscreen?"uni-webview--fullscreen":""},i.value,r.value,{ref:t}),[Hi(ih,{onResize:a},null,8,["onResize"])],16)])}});let ny=0;function oy(e,t,n,o){var r,i=document.createElement("script"),a=t.callback||"callback",s="__uni_jsonp_callback_"+ny++,l=t.timeout||3e4;function c(){clearTimeout(r),delete window[s],i.remove()}window[s]=e=>{B(n)&&n(e),c()},i.onerror=()=>{B(o)&&o(),c()},r=setTimeout((function(){B(o)&&o(),c()}),l),i.src=e+(e.indexOf("?")>=0?"&":"?")+a+"="+s,document.body.appendChild(i)}var ry=(e=>(e.QQ="qq",e.GOOGLE="google",e.AMAP="AMap",e.UNKNOWN="",e))(ry||{});function iy(){return __uniConfig.qqMapKey?{type:"qq",key:__uniConfig.qqMapKey}:__uniConfig.googleMapKey?{type:"google",key:__uniConfig.googleMapKey}:__uniConfig.aMapKey?{type:"AMap",key:__uniConfig.aMapKey,securityJsCode:__uniConfig.aMapSecurityJsCode,serviceHost:__uniConfig.aMapServiceHost}:{type:"",key:""}}let ay=!1,sy=!1;const ly=()=>sy?ay:(sy=!0,ay="AMap"===iy().type);function cy(e){function t(){const e=this.div;this.getPanes().floatPane.appendChild(e)}function n(){const e=this.div.parentNode;e&&e.removeChild(this.div)}function o(){const t=this.option;this.Text=new e.Text({text:t.content,anchor:"bottom-center",offset:new e.Pixel(0,t.offsetY-16),style:{padding:(t.padding||8)+"px","line-height":(t.fontSize||14)+"px","border-radius":(t.borderRadius||0)+"px","border-color":`${t.bgColor||"#fff"} transparent transparent`,"background-color":t.bgColor||"#fff","box-shadow":"0 2px 6px 0 rgba(114, 124, 245, .5)","text-align":"center","font-size":(t.fontSize||14)+"px",color:t.color||"#000"},position:t.position});(e.event||e.Event).addListener(this.Text,"click",(()=>{this.callback()})),this.Text.setMap(t.map)}function r(){this.Text&&this.option.map.remove(this.Text)}class i{constructor(e={},i){this.createAMapText=o,this.removeAMapText=r,this.onAdd=t,this.construct=t,this.onRemove=n,this.destroy=n,this.option=e||{};const a=this.visible=this.alwaysVisible="ALWAYS"===e.display;if(ly())this.callback=i,this.visible&&this.createAMapText();else{const t=e.map;this.position=e.position,this.index=1;const n=this.div=document.createElement("div"),o=n.style;o.position="absolute",o.whiteSpace="nowrap",o.transform="translateX(-50%) translateY(-100%)",o.zIndex="1",o.boxShadow=e.boxShadow||"none",o.display=a?"block":"none";const r=this.triangle=document.createElement("div");r.setAttribute("style","position: absolute;white-space: nowrap;border-width: 4px;border-style: solid;border-color: #fff transparent transparent;border-image: initial;font-size: 12px;padding: 0px;background-color: transparent;width: 0px;height: 0px;transform: translate(-50%, 100%);left: 50%;bottom: 0;"),this.setStyle(e),n.appendChild(r),t&&this.setMap(t)}}set onclick(e){this.div.onclick=e}get onclick(){return this.div.onclick}setOption(e){this.option=e,"ALWAYS"===e.display?this.alwaysVisible=this.visible=!0:this.alwaysVisible=!1,ly()?this.visible&&this.createAMapText():(this.setPosition(e.position),this.setStyle(e))}setStyle(e){const t=this.div,n=t.style;t.innerText=e.content||"",n.lineHeight=(e.fontSize||14)+"px",n.fontSize=(e.fontSize||14)+"px",n.padding=(e.padding||8)+"px",n.color=e.color||"#000",n.borderRadius=(e.borderRadius||0)+"px",n.backgroundColor=e.bgColor||"#fff",n.marginTop="-"+((e.top||0)+5)+"px",this.triangle.style.borderColor=`${e.bgColor||"#fff"} transparent transparent`}setPosition(e){this.position=e,this.draw()}draw(){const e=this.getProjection();if(!this.position||!this.div||!e)return;const t=e.fromLatLngToDivPixel(this.position),n=this.div.style;n.left=t.x+"px",n.top=t.y+"px"}changed(){this.div.style.display=this.visible?"block":"none"}}if(!ly()){const t=new(e.OverlayView||e.Overlay);i.prototype.setMap=t.setMap,i.prototype.getMap=t.getMap,i.prototype.getPanes=t.getPanes,i.prototype.getProjection=t.getProjection,i.prototype.map_changed=t.map_changed,i.prototype.set=t.set,i.prototype.get=t.get,i.prototype.setOptions=t.setValues,i.prototype.bindTo=t.bindTo,i.prototype.bindsTo=t.bindsTo,i.prototype.notify=t.notify,i.prototype.setValues=t.setValues,i.prototype.unbind=t.unbind,i.prototype.unbindAll=t.unbindAll,i.prototype.addListener=t.addListener}return i}let uy;const py={},dy="__map_callback__";function fy(e,t){const n=iy();if(!n.key)return void console.error("Map key not configured.");const o=py[n.type]=py[n.type]||[];if(uy)t(uy);else if(window[n.type]&&window[n.type].maps)uy=ly()?window[n.type]:window[n.type].maps,uy.Callout=uy.Callout||cy(uy),t(uy);else if(o.length)o.push(t);else{o.push(t);const r=window,i=dy+n.type;r[i]=function(){delete r[i],uy=ly()?window[n.type]:window[n.type].maps,uy.Callout=cy(uy),o.forEach((e=>e(uy))),o.length=0},ly()&&function(e){window._AMapSecurityConfig={securityJsCode:e.securityJsCode||"",serviceHost:e.serviceHost||""}}(n);const a=document.createElement("script");let s=hy(n.type);n.type===ry.QQ&&e.push("geometry"),e.length&&(s+=`libraries=${e.join("%2C")}&`),a.src=`${s}key=${n.key}&callback=${i}`,a.onerror=function(){console.error("Map load failed.")},document.body.appendChild(a)}}const hy=e=>({qq:"https://map.qq.com/api/js?v=2.exp&",google:"https://maps.googleapis.com/maps/api/js?",AMap:"https://webapi.amap.com/maps?v=2.0&"}[e]);const gy=cp({name:"MapMarker",props:{id:{type:[Number,String],default:""},latitude:{type:[Number,String],require:!0},longitude:{type:[Number,String],require:!0},title:{type:String,default:""},iconPath:{type:String,require:!0},rotate:{type:[Number,String],default:0},alpha:{type:[Number,String],default:1},width:{type:[Number,String],default:""},height:{type:[Number,String],default:""},callout:{type:Object,default:null},label:{type:Object,default:null},anchor:{type:Object,default:null},clusterId:{type:[Number,String],default:""},customCallout:{type:Object,default:null},ariaLabel:{type:String,default:""}},setup(e){const t=String(isNaN(Number(e.id))?"":e.id),n=Do("onMapReady"),o=function(e){const t="uni-map-marker-label-"+e,n=document.createElement("style");return n.id=t,document.head.appendChild(n),Sr((()=>{n.remove()})),function(e){const o=Object.assign({},e,{position:"absolute",top:"70px",borderStyle:"solid"}),r=document.createElement("div");return Object.keys(o).forEach((e=>{r.style[e]=o[e]||""})),n.innerText=`.${t}{${r.getAttribute("style")}}`,t}}(t);let r;function i(e){ly()?e.removeAMapText():e.setMap(null)}if(n(((n,a,s)=>{function l(e){const l=e.title,c=ly()?new a.LngLat(e.longitude,e.latitude):new a.LatLng(e.latitude,e.longitude),u=new Image;let p=0;u.onload=()=>{const d=e.anchor||{};let f,h,g,m,y="number"==typeof d.x?d.x:.5,v="number"==typeof d.y?d.y:1;e.iconPath&&(e.width||e.height)?(h=e.width||u.width/u.height*e.height,g=e.height||u.height/u.width*e.width):(h=u.width/2,g=u.height/2),p=g,m=g-(g-v*g),f="MarkerImage"in a?new a.MarkerImage(u.src,null,null,new a.Point(y*h,v*g),new a.Size(h,g)):"Icon"in a?new a.Icon({image:u.src,size:new a.Size(h,g),imageSize:new a.Size(h,g),imageOffset:new a.Pixel(y*h,v*g)}):{url:u.src,anchor:new a.Point(y,v),size:new a.Size(h,g)},r.setPosition(c),r.setIcon(f),"setRotation"in r&&r.setRotation(e.rotate||0);const b=e.label||{};let _;if("label"in r&&(r.label.setMap(null),delete r.label),b.content){const e={borderColor:b.borderColor,borderWidth:(Number(b.borderWidth)||0)+"px",padding:(Number(b.padding)||0)+"px",borderRadius:(Number(b.borderRadius)||0)+"px",backgroundColor:b.bgColor,color:b.color,fontSize:(b.fontSize||14)+"px",lineHeight:(b.fontSize||14)+"px",marginLeft:(Number(b.anchorX||b.x)||0)+"px",marginTop:(Number(b.anchorY||b.y)||0)+"px"};if("Label"in a)_=new a.Label({position:c,map:n,clickable:!1,content:b.content,style:e}),r.label=_;else if("setLabel"in r)if(ly()){const t=`

          \n ${b.content}\n
          `;r.setLabel({content:t,direction:"bottom-right"})}else{const t=o(e);r.setLabel({text:b.content,color:e.color,fontSize:e.fontSize,className:t})}}const w=e.callout||{};let x,A=r.callout;if(w.content||l){ly()&&w.content&&(w.content=w.content.replaceAll("\n","
          "));const o="0px 0px 3px 1px rgba(0,0,0,0.5)";let i=-p/2;if((e.width||e.height)&&(i+=14-p/2),x=w.content?{position:c,map:n,top:m,offsetY:i,content:w.content,color:w.color,fontSize:w.fontSize,borderRadius:w.borderRadius,bgColor:w.bgColor,padding:w.padding,boxShadow:w.boxShadow||o,display:w.display}:{position:c,map:n,top:m,offsetY:i,content:l,boxShadow:o},A)A.setOption(x);else if(ly()){const e=e=>{""!==e&&s("callouttap",{},{markerId:Number(e)})};A=r.callout=new a.Callout(x,e)}else A=r.callout=new a.Callout(x),A.div.onclick=function(e){""!==t&&s("callouttap",e,{markerId:Number(t)}),e.stopPropagation(),e.preventDefault()},iy().type===ry.GOOGLE&&(A.div.ontouchstart=function(e){e.stopPropagation()},A.div.onpointerdown=function(e){e.stopPropagation()})}else A&&(i(A),delete r.callout)},e.iconPath?u.src=xp(e.iconPath):console.error("Marker.iconPath is required.")}var c;c=e,r=new a.Marker({map:n,flat:!0,autoRotation:!1}),l(c),(a.event||a.Event).addListener(r,"click",(()=>{const e=r.callout;if(e&&!e.alwaysVisible)if(ly())e.visible=!e.visible,e.visible?r.callout.createAMapText():r.callout.removeAMapText();else if(e.set("visible",!e.visible),e.visible){const t=e.div,n=t.parentNode;n.removeChild(t),n.appendChild(t)}t&&s("markertap",{},{markerId:Number(t),latitude:c.latitude,longitude:c.longitude})})),zo(e,l)})),t){const e=Do("addMapChidlContext"),o=Do("removeMapChidlContext"),i={id:t,translate(e){n(((t,n,o)=>{const i=e.destination,a=e.duration,s=!!e.autoRotate;let l=Number(e.rotate)||0,c=0;"getRotation"in r&&(c=r.getRotation());const u=r.getPosition(),p=new n.LatLng(i.latitude,i.longitude),d=n.geometry.spherical.computeDistanceBetween(u,p)/1e3/(("number"==typeof a?a:1e3)/36e5),f=n.event||n.Event,h=f.addListener(r,"moving",(e=>{const t=e.latLng,n=r.label;n&&n.setPosition(t);const o=r.callout;o&&o.setPosition(t)})),g=f.addListener(r,"moveend",(()=>{g.remove(),h.remove(),r.lastPosition=u,r.setPosition(p);const t=r.label;t&&t.setPosition(p);const n=r.callout;n&&n.setPosition(p);const o=e.animationEnd;B(o)&&o()}));let m=0;s&&(r.lastPosition&&(m=n.geometry.spherical.computeHeading(r.lastPosition,u)),l=n.geometry.spherical.computeHeading(u,p)-m),"setRotation"in r&&r.setRotation(c+l),"moveTo"in r?r.moveTo(p,d):(r.setPosition(p),f.trigger(r,"moveend",{}))}))}};e(i),Sr((()=>o(i)))}return Sr((function(){r&&(r.label&&"setMap"in r.label&&r.label.setMap(null),r.callout&&i(r.callout),r.setMap(null))})),()=>null}});function my(e){if(!e)return{r:0,g:0,b:0,a:0};let t=e.slice(1);const n=t.length;if(![3,4,6,8].includes(n))return{r:0,g:0,b:0,a:0};3!==n&&4!==n||(t=t.replace(/(\w{1})/g,"$1$1"));let[o,r,i,a]=t.match(/(\w{2})/g);const s=parseInt(o,16),l=parseInt(r,16),c=parseInt(i,16);return a?{r:s,g:l,b:c,a:(`0x100${a}`-65536)/255}:{r:s,g:l,b:c,a:1}}const yy={points:{type:Array,require:!0},color:{type:String,default:"#000000"},width:{type:[Number,String],default:""},dottedLine:{type:[Boolean,String],default:!1},arrowLine:{type:[Boolean,String],default:!1},arrowIconPath:{type:String,default:""},borderColor:{type:String,default:"#000000"},borderWidth:{type:[Number,String],default:""},colorList:{type:Array,default:()=>[]},level:{type:String,default:""}},vy=cp({name:"MapPolyline",props:yy,setup(e){let t,n;function o(){t&&t.setMap(null),n&&n.setMap(null)}return Do("onMapReady")(((r,i)=>{function a(e){const o=[];e.points.forEach((e=>{const t=ly()?[e.longitude,e.latitude]:new i.LatLng(e.latitude,e.longitude);o.push(t)}));const a=Number(e.width)||1,{r:s,g:l,b:c,a:u}=my(e.color),{r:p,g:d,b:f,a:h}=my(e.borderColor),g={map:r,clickable:!1,path:o,strokeWeight:a,strokeColor:e.color||void 0,strokeDashStyle:e.dottedLine?"dash":"solid"},m=Number(e.borderWidth)||0,y={map:r,clickable:!1,path:o,strokeWeight:a+2*m,strokeColor:e.borderColor||void 0,strokeDashStyle:e.dottedLine?"dash":"solid"};"Color"in i?(g.strokeColor=new i.Color(s,l,c,u),y.strokeColor=new i.Color(p,d,f,h)):(g.strokeColor=`rgb(${s}, ${l}, ${c})`,g.strokeOpacity=u,y.strokeColor=`rgb(${p}, ${d}, ${f})`,y.strokeOpacity=h),m&&(n=new i.Polyline(y)),t=new i.Polyline(g)}a(e),zo(e,(function(e){o(),a(e)}))})),Sr(o),()=>null}}),by=cp({name:"MapCircle",props:{latitude:{type:[Number,String],require:!0},longitude:{type:[Number,String],require:!0},color:{type:String,default:"#000000"},fillColor:{type:String,default:"#00000000"},radius:{type:[Number,String],require:!0},strokeWidth:{type:[Number,String],default:""},level:{type:String,default:""}},setup(e){let t;function n(){t&&t.setMap(null)}return Do("onMapReady")(((o,r)=>{function i(e){const n=ly()?[e.longitude,e.latitude]:new r.LatLng(e.latitude,e.longitude),i={map:o,center:n,clickable:!1,radius:e.radius,strokeWeight:Number(e.strokeWidth)||1,strokeDashStyle:"solid"};if(ly())i.strokeColor=e.color,i.fillColor=e.fillColor||"#000",i.fillOpacity=1;else{const{r:t,g:n,b:o,a:a}=my(e.fillColor),{r:s,g:l,b:c,a:u}=my(e.color);"Color"in r?(i.fillColor=new r.Color(t,n,o,a),i.strokeColor=new r.Color(s,l,c,u)):(i.fillColor=`rgb(${t}, ${n}, ${o})`,i.fillOpacity=a,i.strokeColor=`rgb(${s}, ${l}, ${c})`,i.strokeOpacity=u)}t=new r.Circle(i),ly()&&o.add(t)}i(e),zo(e,(function(e){n(),i(e)}))})),Sr(n),()=>null}}),_y={id:{type:[Number,String],default:""},position:{type:Object,required:!0},iconPath:{type:String,required:!0},clickable:{type:[Boolean,String],default:""},trigger:{type:Function,required:!0}},wy=cp({name:"MapControl",props:_y,setup(e){const t=ua((()=>xp(e.iconPath))),n=ua((()=>{let t=`top:${e.position.top||0}px;left:${e.position.left||0}px;`;return e.position.width&&(t+=`width:${e.position.width}px;`),e.position.height&&(t+=`height:${e.position.height}px;`),t})),o=t=>{e.clickable&&e.trigger("controltap",t,{controlId:e.id})};return()=>Hi("div",{class:"uni-map-control"},[Hi("img",{src:t.value,style:n.value,class:"uni-map-control-icon",onClick:o},null,12,["src","onClick"])])}}),xy=wd("makePhoneCall",(({phoneNumber:e},{resolve:t})=>(window.location.href=`tel:${e}`,t()))),Ay="__DC_STAT_UUID",Ey=navigator.cookieEnabled&&(window.localStorage||window.sessionStorage)||{};let Sy;function Ty(){if(Sy=Sy||Ey[Ay],!Sy){Sy=Date.now()+""+Math.floor(1e7*Math.random());try{Ey[Ay]=Sy}catch(e){}}return Sy}function ky(){if(!0!==__uniConfig.darkmode)return N(__uniConfig.darkmode)?__uniConfig.darkmode:"light";try{return window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}catch(e){return"light"}}function Cy(){let e,t="0",n="",o="phone";const r=navigator.language;if(Sp){e="iOS";const o=Ap.match(/OS\s([\w_]+)\slike/);o&&(t=o[1].replace(/_/g,"."));const r=Ap.match(/\(([a-zA-Z]+);/);r&&(n=r[1])}else if(Ep){e="Android";const o=Ap.match(/Android[\s/]([\w\.]+)[;\s]/);o&&(t=o[1]);const r=Ap.match(/\((.+?)\)/),i=r?r[1].split(";"):Ap.split(" "),a=[/\bAndroid\b/i,/\bLinux\b/i,/\bU\b/i,/^\s?[a-z][a-z]$/i,/^\s?[a-z][a-z]-[a-z][a-z]$/i,/\bwv\b/i,/\/[\d\.,]+$/,/^\s?[\d\.,]+$/,/\bBrowser\b/i,/\bMobile\b/i];for(let e=0;e0){n=t.split("Build")[0].trim();break}let o;for(let e=0;e-1&&e.indexOf("MSIE")>-1,n=e.indexOf("Edge")>-1&&!t,o=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1;if(t){new RegExp("MSIE (\\d+\\.\\d+);").test(e);const t=parseFloat(RegExp.$1);return t>6?t:6}return n?-1:o?11:-1}());if("-1"!==l)s="IE";else{const e=["Version","Firefox","Chrome","Edge{0,1}"],t=["Safari","Firefox","Chrome","Edge"];for(let n=0;n{const e=window.devicePixelRatio,t=Mp(),n=Lp(t),o=Op(t,n),r=function(e,t){return e?Math[t?"min":"max"](screen.height,screen.width):screen.height}(t,n),i=Ip(o);let a=window.innerHeight;const s=iu.top,l={left:iu.left,right:i-iu.right,top:iu.top,bottom:a-iu.bottom,width:i-iu.left-iu.right,height:a-iu.top-iu.bottom},{top:c,bottom:u}=cu();return a-=c,a-=u,{windowTop:c,windowBottom:u,windowWidth:i,windowHeight:a,pixelRatio:e,screenWidth:o,screenHeight:r,statusBarHeight:s,safeArea:l,safeAreaInsets:{top:iu.top,right:iu.right,bottom:iu.bottom,left:iu.left},screenTop:r-a}}));let My,Ly=!0;function Oy(){Ly&&(My=Cy())}const Iy=_d(0,(()=>{Oy();const{deviceBrand:e,deviceModel:t,brand:n,model:o,platform:r,system:i,deviceOrientation:a,deviceType:s}=My;return{brand:n,deviceBrand:e,deviceModel:t,devicePixelRatio:window.devicePixelRatio,deviceId:Ty(),deviceOrientation:a,deviceType:s,model:o,platform:r,system:i}})),By=_d(0,(()=>{Oy();const{theme:e,language:t,browserName:n,browserVersion:o}=My;return{appId:__uniConfig.appId,appName:__uniConfig.appName,appVersion:__uniConfig.appVersion,appVersionCode:__uniConfig.appVersionCode,appLanguage:af?af():t,enableDebug:!1,hostSDKVersion:void 0,hostPackageName:void 0,hostFontSizeSetting:void 0,hostName:n,hostVersion:o,hostTheme:e,hostLanguage:t,language:t,SDKVersion:"",theme:e,version:""}})),Ny=_d(0,(()=>{Ly=!0,Oy(),Ly=!1;const e=Py(),t=Iy(),n=By();Ly=!0;const{ua:o,browserName:r,browserVersion:i,osname:a,osversion:s}=My,l=T(e,t,n,{ua:o,browserName:r,browserVersion:i,uniPlatform:"web",uniCompileVersion:__uniConfig.compilerVersion,uniRuntimeVersion:__uniConfig.compilerVersion,fontSizeSetting:void 0,osName:a.toLocaleLowerCase(),osVersion:s,osLanguage:void 0,osTheme:void 0});return delete l.screenTop,delete l.enableDebug,__uniConfig.darkmode||delete l.theme,function(e){let t={};return H(e)&&Object.keys(e).sort().forEach((n=>{const o=n;t[o]=e[o]})),Object.keys(t)?t:e}(l)})),jy=wd("getSystemInfo",((e,{resolve:t})=>t(Ny())));let Dy=null;const Ry=yd(uf,(()=>{zy()})),Fy=vd("offCompass",(()=>{qy()})),zy=wd("startCompass",((e,{resolve:t,reject:n})=>{if(window.DeviceOrientationEvent){if(!Dy){if(DeviceOrientationEvent.requestPermission)return void DeviceOrientationEvent.requestPermission().then((e=>{"granted"===e?(o(),t()):n(`${e}`)})).catch((e=>{n(`${e}`)}));o()}t()}else n();function o(){Dy=function(e){const t=360-(null!==e.alpha?e.alpha:360);Ob.invokeOnCallback(uf,{direction:t})},window.addEventListener("deviceorientation",Dy,!1)}})),qy=wd("stopCompass",((e,{resolve:t})=>{Dy&&(window.removeEventListener("deviceorientation",Dy,!1),Dy=null),t()}));const Hy=_d(0,((e,t)=>{const n=typeof t,o="string"===n?t:JSON.stringify({type:n,data:t});localStorage.setItem(e,o)})),Uy=wd("setStorage",(({key:e,data:t},{resolve:n,reject:o})=>{try{Hy(e,t),n()}catch(r){o(r.message)}}));function Vy(e){const t=localStorage&&localStorage.getItem(e);if(!N(t))throw new Error("data not found");let n=t;try{const e=function(e){const t=["object","string","number","boolean","undefined"];try{const n=N(e)?JSON.parse(e):e,o=n.type;if(t.indexOf(o)>=0){const e=Object.keys(n);if(2===e.length&&"data"in n){if(typeof n.data===o)return n.data;if("object"===o&&/^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/.test(n.data))return new Date(n.data)}else if(1===e.length)return""}}catch(n){}}(JSON.parse(t));void 0!==e&&(n=e)}catch(o){}return n}const Wy=_d(0,(e=>{try{return Vy(e)}catch(t){return""}})),$y=wd("getStorage",(({key:e},{resolve:t,reject:n})=>{try{t({data:Vy(e)})}catch(o){n(o.message)}})),Qy=_d(0,(e=>{localStorage&&localStorage.removeItem(e)})),Xy=wd(pf,(({key:e},{resolve:t})=>{Qy(e),t()})),Yy={image:{jpg:"jpeg",jpe:"jpeg",pbm:"x-portable-bitmap",pgm:"x-portable-graymap",pnm:"x-portable-anymap",ppm:"x-portable-pixmap",psd:"vnd.adobe.photoshop",pic:"x-pict",rgb:"x-rgb",svg:"svg+xml",svgz:"svg+xml",tif:"tiff",xif:"vnd.xiff",wbmp:"vnd.wap.wbmp",wdp:"vnd.ms-photo",xbm:"x-xbitmap",ico:"x-icon"},video:{"3g2":"3gpp2","3gp":"3gpp",avi:"x-msvideo",f4v:"x-f4v",flv:"x-flv",jpgm:"jpm",jpgv:"jpeg",m1v:"mpeg",m2v:"mpeg",mpe:"mpeg",mpg:"mpeg",mpg4:"mpeg",m4v:"x-m4v",mkv:"x-matroska",mov:"quicktime",qt:"quicktime",movie:"x-sgi-movie",mp4v:"mp4",ogv:"ogg",smv:"x-smv",wm:"x-ms-wm",wmv:"x-ms-wmv",wmx:"x-ms-wmx",wvx:"x-ms-wvx"}};function Gy({count:e,sourceType:t,type:n,extension:o}){const r=document.createElement("input");return r.type="file",Ge(r,{position:"absolute",visibility:"hidden",zIndex:"-999",width:"0",height:"0",top:"0",left:"0"}),r.accept=o.map((e=>{if("all"!==n){const t=e.replace(".","");return`${n}/${Yy[n][t]||t}`}return function(){const e=window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i);return!(!e||"micromessenger"!==e[0])}()?".":0===e.indexOf(".")?e:`.${e}`})).join(","),e&&e>1&&(r.multiple=!0),"all"!==n&&t instanceof Array&&1===t.length&&"camera"===t[0]&&r.setAttribute("capture","camera"),r}Mh();let Jy=null;const Ky=wd("chooseFile",(({count:e,sourceType:t,type:n,extension:o},{resolve:r,reject:i})=>{Ec();const{t:a}=bc();Jy&&(document.body.removeChild(Jy),Jy=null),Jy=Gy({count:e,sourceType:t,type:n,extension:o}),document.body.appendChild(Jy),Jy.addEventListener("change",(function(t){const n=t.target,o=[];if(n&&n.files){const t=n.files.length;for(let r=0;r(i=i||th(t),i)}),re))},tempFiles:o})})),Jy.click(),Lh()||console.warn(a("uni.chooseFile.notUserActivation"))}),0,yf);let Zy=null;const ev=wd("chooseImage",(({count:e,sourceType:t,extension:n},{resolve:o,reject:r})=>{Ec();const{t:i}=bc();Zy&&(document.body.removeChild(Zy),Zy=null),Zy=Gy({count:e,sourceType:t,extension:n,type:"image"}),document.body.appendChild(Zy),Zy.addEventListener("change",(function(t){const n=t.target,r=[];if(n&&n.files){const t=n.files.length;for(let o=0;o(i=i||th(t),i)}),oe))},tempFiles:r})})),Zy.click(),Lh()||console.warn(i("uni.chooseFile.notUserActivation"))}),0,hf),tv={esc:["Esc","Escape"],enter:["Enter"]},nv=Object.keys(tv);function ov(e,t,n){return t.onClose=(...e)=>(t.visible=!1,n.apply(null,e)),bs(er({setup:()=>()=>(Mi(),Ni(e,t,null,16))}))}function rv(e){let t=document.getElementById(e);return t||(t=document.createElement("div"),t.id=e,document.body.append(t)),t}function iv(e,{onEsc:t,onEnter:n}){const o=Wn(e.visible),{key:r,disable:i}=function(){const e=Wn(""),t=Wn(!1),n=n=>{if(t.value)return;const o=nv.find((e=>-1!==tv[e].indexOf(n.key)));o&&(e.value=o),go((()=>e.value=""))};return wr((()=>{document.addEventListener("keyup",n)})),Er((()=>{document.removeEventListener("keyup",n)})),{key:e,disable:t}}();return zo((()=>e.visible),(e=>o.value=e)),zo((()=>o.value),(e=>i.value=!e)),Ro((()=>{const{value:e}=r;"esc"===e?t&&t():"enter"===e&&n&&n()})),o}let av=0,sv="";function lv(e){let t=av;av+=e?1:-1,av=Math.max(0,av),av>0?0===t&&(sv=document.body.style.overflow,document.body.style.overflow="hidden"):(document.body.style.overflow=sv,sv="")}function cv(){wr((()=>lv(!0))),Sr((()=>lv(!1)))}const uv=cp({name:"ImageView",props:{src:{type:String,default:""}},setup(e){const t=Mn({direction:"none"});let n=1,o=0,r=0,i=0,a=0;function s({detail:e}){n=e.scale}function l(e){const t=e.target.getBoundingClientRect();o=t.width,r=t.height}function c(e){const t=e.target.getBoundingClientRect();i=t.width,a=t.height,p(e)}function u(e){const s=n*o>i,l=n*r>a;t.direction=s&&l?"all":s?"horizontal":l?"vertical":"none",p(e)}function p(e){"all"!==t.direction&&"horizontal"!==t.direction||e.stopPropagation()}return()=>{const n={position:"absolute",left:"0",top:"0",width:"100%",height:"100%"};return Hi(Qh,{style:n,onTouchstart:fp(c),onTouchmove:fp(p),onTouchend:fp(u)},{default:()=>[Hi(ag,{style:n,direction:t.direction,inertia:!0,scale:!0,"scale-min":"1","scale-max":"4",onScale:s},{default:()=>[Hi("img",{src:e.src,style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",maxHeight:"100%",maxWidth:"100%"},onLoad:l},null,40,["src","onLoad"])]},8,["style","direction","inertia","scale","onScale"])]},8,["style","onTouchstart","onTouchmove","onTouchend"])}}});function pv(e){let t="number"==typeof e.current?e.current:e.urls.indexOf(e.current);return t=t<0?0:t,t}const dv=cp({name:"ImagePreview",props:{urls:{type:Array,default:()=>[]},current:{type:[Number,String],default:0}},emits:["close"],setup(e,{emit:t}){cv();const n=Wn(null),o=Wn(pv(e));let r;function i(){r||go((()=>{t("close")}))}function a(e){o.value=e.detail.current}zo((()=>e.current),(()=>o.value=pv(e))),wr((()=>{const e=n.value;let t=0,o=0;e.addEventListener("mousedown",(e=>{r=!1,t=e.clientX,o=e.clientY})),e.addEventListener("mouseup",(e=>{(Math.abs(e.clientX-t)>20||Math.abs(e.clientY-o)>20)&&(r=!0)}))}));const s={position:"absolute","box-sizing":"border-box",top:"0",right:"0",width:"60px",height:"44px",padding:"6px","line-height":"32px","font-size":"26px",color:"white","text-align":"center",cursor:"pointer"};return()=>{let t;return Hi("div",{ref:n,style:{display:"block",position:"fixed",left:"0",top:"0",width:"100%",height:"100%",zIndex:999,background:"rgba(0,0,0,0.8)"},onClick:i},[Hi(Bg,{navigation:"auto",current:o.value,onChange:a,"indicator-dots":!1,autoplay:!1,style:{position:"absolute",left:"0",top:"0",width:"100%",height:"100%"}},(r=t=e.urls.map((e=>Hi(jg,null,{default:()=>[Hi(uv,{src:e},null,8,["src"])]}))),"function"==typeof r||"[object Object]"===Object.prototype.toString.call(r)&&!ji(r)?t:{default:()=>[t],_:1}),8,["current","onChange"]),Hi("div",{style:s},[_u(vu,"#ffffff",26)],4)],8,["onClick"]);var r}}});let fv,hv=null;const gv=()=>{hv=null,go((()=>{null==fv||fv.unmount(),fv=null}))},mv=wd("previewImage",((e,{resolve:t})=>{hv?T(hv,e):(hv=Mn(e),go((()=>{fv=ov(dv,hv,gv),fv.mount(rv("u-a-p"))}))),t()}),0,vf);let yv=null;const vv=wd("chooseVideo",(({sourceType:e,extension:t},{resolve:n,reject:o})=>{Ec();const{t:r}=bc();yv&&(document.body.removeChild(yv),yv=null),yv=Gy({sourceType:e,extension:t,type:"video"}),document.body.appendChild(yv),yv.addEventListener("change",(function(e){const t=e.target.files[0];let o="";const r={tempFilePath:o,tempFile:t,size:t.size,duration:0,width:0,height:0,name:t.name};Object.defineProperty(r,"tempFilePath",{get(){return o=o||th(this.tempFile),o}});const i=document.createElement("video");if(void 0!==i.onloadedmetadata){const e=th(t);i.onloadedmetadata=function(){nh(e),n(T(r,{duration:i.duration||0,width:i.videoWidth||0,height:i.videoHeight||0}))},setTimeout((()=>{i.onloadedmetadata=null,nh(e),n(r)}),300),i.src=e}else n(r)})),yv.click(),Lh()||console.warn(r("uni.chooseFile.notUserActivation"))}),0,gf),bv=bd("request",(({url:e,data:t,header:n,method:o,dataType:r,responseType:i,withCredentials:a,timeout:s=__uniConfig.networkTimeout.request},{resolve:l,reject:c})=>{let u=null;const p=function(e){const t=Object.keys(e).find((e=>"content-type"===e.toLowerCase()));if(!t)return;const n=e[t];if(0===n.indexOf("application/json"))return"json";if(0===n.indexOf("application/x-www-form-urlencoded"))return"urlencoded";return"string"}(n);if("GET"!==o)if(N(t)||t instanceof ArrayBuffer)u=t;else if("json"===p)try{u=JSON.stringify(t)}catch(g){u=t.toString()}else if("urlencoded"===p){const e=[];for(const n in t)P(t,n)&&e.push(encodeURIComponent(n)+"="+encodeURIComponent(t[n]));u=e.join("&")}else u=t.toString();const d=new XMLHttpRequest,f=new _v(d);d.open(o,e);for(const m in n)P(n,m)&&d.setRequestHeader(m,n[m]);const h=setTimeout((function(){d.onload=d.onabort=d.onerror=null,f.abort(),c("timeout")}),s);return d.responseType=i,d.onload=function(){clearTimeout(h);const e=d.status;let t="text"===i?d.responseText:d.response;if("text"===i&&"json"===r)try{t=JSON.parse(t)}catch(g){}l({data:t,statusCode:e,header:wv(d.getAllResponseHeaders()),cookies:[]})},d.onabort=function(){clearTimeout(h),c("abort")},d.onerror=function(){clearTimeout(h),c()},d.withCredentials=a,d.send(u),f}),0,xf);class _v{constructor(e){this._xhr=e}abort(){this._xhr&&(this._xhr.abort(),delete this._xhr)}onHeadersReceived(e){throw new Error("Method not implemented.")}offHeadersReceived(e){throw new Error("Method not implemented.")}}function wv(e){const t={};return e.split(ae).forEach((e=>{const n=e.match(/(\S+\s*):\s*(.*)/);n&&3===n.length&&(t[n[1]]=n[2])})),t}class xv{constructor(e){this._callbacks=[],this._xhr=e}onProgressUpdate(e){B(e)&&this._callbacks.push(e)}offProgressUpdate(e){const t=this._callbacks.indexOf(e);t>=0&&this._callbacks.splice(t,1)}abort(){this._xhr&&(this._xhr.abort(),delete this._xhr)}onHeadersReceived(e){throw new Error("Method not implemented.")}offHeadersReceived(e){throw new Error("Method not implemented.")}}const Av=bd("downloadFile",(({url:e,header:t,timeout:n=__uniConfig.networkTimeout.downloadFile},{resolve:o,reject:r})=>{var i,a=new XMLHttpRequest,s=new xv(a);return a.open("GET",e,!0),Object.keys(t).forEach((e=>{a.setRequestHeader(e,t[e])})),a.responseType="blob",a.onload=function(){clearTimeout(i);const t=a.status,n=this.response;let r;const s=a.getResponseHeader("content-disposition");if(s){const e=s.match(/filename="?(\S+)"?\b/);e&&(r=e[1])}n.name=r||function(e){const t=(e=e.split("#")[0].split("?")[0]).split("/");return t[t.length-1]}(e),o({statusCode:t,tempFilePath:th(n)})},a.onabort=function(){clearTimeout(i),r("abort")},a.onerror=function(){clearTimeout(i),r()},a.onprogress=function(e){s._callbacks.forEach((t=>{var n=e.loaded,o=e.total;t({progress:Math.round(n/o*100),totalBytesWritten:n,totalBytesExpectedToWrite:o})}))},a.send(),i=setTimeout((function(){a.onprogress=a.onload=a.onabort=a.onerror=null,s.abort(),r("timeout")}),n),s}),0,Af);class Ev{constructor(e){this._callbacks=[],this._xhr=e}onProgressUpdate(e){B(e)&&this._callbacks.push(e)}offProgressUpdate(e){const t=this._callbacks.indexOf(e);t>=0&&this._callbacks.splice(t,1)}abort(){this._isAbort=!0,this._xhr&&(this._xhr.abort(),delete this._xhr)}onHeadersReceived(e){throw new Error("Method not implemented.")}offHeadersReceived(e){throw new Error("Method not implemented.")}}const Sv=bd("uploadFile",(({url:e,file:t,filePath:n,name:o,files:r,header:i,formData:a,timeout:s=__uniConfig.networkTimeout.uploadFile},{resolve:l,reject:c})=>{var u=new Ev;return M(r)&&r.length||(r=[{name:o,file:t,uri:n}]),Promise.all(r.map((({file:e,uri:t})=>e instanceof Blob?Promise.resolve(eh(e)):Zf(t)))).then((function(t){var n,o=new XMLHttpRequest,p=new FormData;Object.keys(a).forEach((e=>{p.append(e,a[e])})),Object.values(r).forEach((({name:e},n)=>{const o=t[n];p.append(e||"file",o,o.name||`file-${Date.now()}`)})),o.open("POST",e),Object.keys(i).forEach((e=>{o.setRequestHeader(e,i[e])})),o.upload.onprogress=function(e){u._callbacks.forEach((t=>{var n=e.loaded,o=e.total;t({progress:Math.round(n/o*100),totalBytesSent:n,totalBytesExpectedToSend:o})}))},o.onerror=function(){clearTimeout(n),c()},o.onabort=function(){clearTimeout(n),c("abort")},o.onload=function(){clearTimeout(n);const e=o.status;l({statusCode:e,data:o.responseText||o.response})},u._isAbort?c("abort"):(n=setTimeout((function(){o.upload.onprogress=o.onload=o.onabort=o.onerror=null,u.abort(),c("timeout")}),s),o.send(p),u._xhr=o)})).catch((()=>{setTimeout((()=>{c("file error")}),0)})),u}),0,Ef),Tv=wd("getLocation",(({type:e,altitude:t,highAccuracyExpireTime:n,isHighAccuracy:o},{resolve:r,reject:i})=>{const a=iy();new Promise(((e,r)=>{navigator.geolocation?navigator.geolocation.getCurrentPosition((t=>e({coords:t.coords})),r,{enableHighAccuracy:o||t,timeout:n||1e5}):r(new Error("device nonsupport geolocation"))})).catch((e=>new Promise(((t,n)=>{a.type===ry.QQ?oy(`https://apis.map.qq.com/ws/location/v1/ip?output=jsonp&key=${a.key}`,{callback:"callback"},(e=>{if("result"in e&&e.result.location){const n=e.result.location;t({coords:{latitude:n.lat,longitude:n.lng},skip:!0})}else n(new Error(e.message||JSON.stringify(e)))}),(()=>n(new Error("network error")))):a.type===ry.GOOGLE?bv({method:"POST",url:`https://www.googleapis.com/geolocation/v1/geolocate?key=${a.key}`,success(e){const o=e.data;"location"in o?t({coords:{latitude:o.location.lat,longitude:o.location.lng,accuracy:o.accuracy},skip:!0}):n(new Error(o.error&&o.error.message||JSON.stringify(e)))},fail(){n(new Error("network error"))}}):a.type===ry.AMAP?fy([],(()=>{window.AMap.plugin("AMap.Geolocation",(()=>{new window.AMap.Geolocation({enableHighAccuracy:!0,timeout:1e4}).getCurrentPosition(((e,o)=>{"complete"===e?t({coords:{latitude:o.position.lat,longitude:o.position.lng,accuracy:o.accuracy},skip:!0}):n(new Error(o.message))}))}))})):n(e)})))).then((({coords:t,skip:n})=>{(function(e,t,n){const o=iy();return e&&"WGS84"===e.toUpperCase()||["google"].includes(o.type)||n?Promise.resolve(t):"qq"===o.type?new Promise((e=>{oy(`https://apis.map.qq.com/jsapi?qt=translate&type=1&points=${t.longitude},${t.latitude}&key=${o.key}&output=jsonp&pf=jsapi&ref=jsapi`,{callback:"cb"},(n=>{if("detail"in n&&"points"in n.detail&&n.detail.points.length){const{lng:o,lat:r}=n.detail.points[0];e({longitude:o,latitude:r,altitude:t.altitude,accuracy:t.accuracy,altitudeAccuracy:t.altitudeAccuracy,heading:t.heading,speed:t.speed})}else e(t)}),(()=>e(t)))})):"AMap"===o.type?new Promise((e=>{fy([],(()=>{window.AMap.convertFrom([t.longitude,t.latitude],"gps",((n,o)=>{if("ok"===o.info&&o.locations.length){const{lat:n,lng:r}=o.locations[0];e({longitude:r,latitude:n,altitude:t.altitude,accuracy:t.accuracy,altitudeAccuracy:t.altitudeAccuracy,heading:t.heading,speed:t.speed})}else e(t)}))}))})):Promise.reject(new Error("translate coordinate system faild"))})(e,t,n).then((e=>{r({latitude:e.latitude,longitude:e.longitude,accuracy:e.accuracy,speed:e.altitude||0,altitude:e.altitude||0,verticalAccuracy:e.altitudeAccuracy||0,horizontalAccuracy:e.accuracy||0})})).catch((e=>{i(e.message)}))})).catch((e=>{i(e.message||JSON.stringify(e))}))}),0,ff);const kv=cp({name:"LoctaionPicker",props:{latitude:{type:Number},longitude:{type:Number}},emits:["close"],setup(e,{emit:t}){cv(),Tc();const{t:n}=bc(),o=function(e){const t=Mn({latitude:0,longitude:0,keyword:"",searching:!1});function n(){e.latitude&&e.longitude&&(t.latitude=e.latitude,t.longitude=e.longitude)}return zo([()=>e.latitude,()=>e.longitude],n),n(),t}(e),{list:r,listState:i,loadMore:a,reset:s,getList:l}=function(e){const t=__uniConfig.qqMapKey,n=Mn([]),o=Wn(-1),r=ua((()=>n[o.value])),i=Mn({loading:!0,pageSize:20,pageIndex:1,hasNextPage:!0,nextPage:null,selectedIndex:o,selected:r}),a=Wn(""),s=ua((()=>a.value?`region(${a.value},1,${e.latitude},${e.longitude})`:`nearby(${e.latitude},${e.longitude},5000)`));function l(e){e.forEach((e=>{n.push({name:e.title||e.name,address:e.address,distance:e._distance||e.distance,latitude:e.location.lat,longitude:e.location.lng})}))}function c(){i.loading=!0;const o=iy();if(o.type===ry.GOOGLE){if(i.pageIndex>1&&i.nextPage)return void i.nextPage();new google.maps.places.PlacesService(document.createElement("div"))[e.searching?"textSearch":"nearbySearch"]({location:{lat:e.latitude,lng:e.longitude},query:e.keyword,radius:5e3},((e,t,o)=>{i.loading=!1,e&&e.length&&e.forEach((e=>{n.push({name:e.name||"",address:e.vicinity||e.formatted_address||"",distance:0,latitude:e.geometry.location.lat(),longitude:e.geometry.location.lng()})})),o&&(o.hasNextPage?i.nextPage=()=>{o.nextPage()}:i.hasNextPage=!1)}))}else o.type===ry.QQ?oy(e.searching?`https://apis.map.qq.com/ws/place/v1/search?output=jsonp&key=${t}&boundary=${s.value}&keyword=${e.keyword}&page_size=${i.pageSize}&page_index=${i.pageIndex}`:`https://apis.map.qq.com/ws/geocoder/v1/?output=jsonp&key=${t}&location=${e.latitude},${e.longitude}&get_poi=1&poi_options=page_size=${i.pageSize};page_index=${i.pageIndex}`,{callback:"callback"},(t=>{if(i.loading=!1,e.searching&&"data"in t&&t.data.length)l(t.data);else if("result"in t){const e=t.result;a.value=e.ad_info?e.ad_info.adcode:"",e.pois&&l(e.pois)}n.length===i.pageSize*i.pageIndex&&(i.hasNextPage=!1)}),(()=>{i.loading=!1})):o.type===ry.AMAP&&window.AMap.plugin("AMap.PlaceSearch",(function(){const t=new window.AMap.PlaceSearch({city:"全国",pageSize:10,pageIndex:i.pageIndex}),n=e.searching?e.keyword:"",o=e.searching?5e4:5e3;t.searchNearBy(n,[e.longitude,e.latitude],o,(function(e,t){"error"===e?console.error(t):"no_data"===e?i.hasNextPage=!1:l(t.poiList.pois)})),i.loading=!1}))}return{listState:i,list:n,loadMore:function(){!i.loading&&i.hasNextPage&&(i.pageIndex++,c())},reset:function(){i.selectedIndex=-1,i.pageIndex=1,i.hasNextPage=!0,i.nextPage=null,n.splice(0,n.length)},getList:c}}(o),c=ct((()=>{s(),o.keyword&&l()}),1e3,{setTimeout:setTimeout,clearTimeout:clearTimeout});function u(e){o.keyword=e.detail.value,c()}function p(){t("close",T({},i.selected))}function d(){t("close")}function f(e){const t=e.detail.centerLocation;t&&g(t)}function h(){Tv({type:"gcj02",success:g,fail:()=>{}})}function g({latitude:e,longitude:t}){o.latitude=e,o.longitude=t,o.searching||(s(),l())}return zo((()=>o.searching),(e=>{s(),e||l()})),o.latitude&&o.longitude||h(),()=>{const e=r.map(((e,t)=>{return Hi("div",{key:t,class:{"list-item":!0,selected:i.selectedIndex===t},onClick:()=>{i.selectedIndex=t,o.latitude=e.latitude,o.longitude=e.longitude}},[_u(bu,"#007aff",24),Hi("div",{class:"list-item-title"},[e.name]),Hi("div",{class:"list-item-detail"},[(n=e.distance,n>100?`${n>1e3?(n/1e3).toFixed(1)+"k":n.toFixed(0)}m | `:n>0?"<100m | ":""),e.address])],10,["onClick"]);var n}));return i.loading&&e.unshift(Hi("div",{class:"list-loading"},[Hi("i",{class:"uni-loading"},null)])),Hi("div",{class:"uni-system-choose-location"},[Hi(Mb,{latitude:o.latitude,longitude:o.longitude,class:"map","show-location":!0,libraries:["places"],onUpdated:l,onRegionchange:f},{default:()=>[Hi("div",{class:"map-location",style:'background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAACcCAMAAAC3Fl5oAAAB3VBMVEVMaXH/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/EhL/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/Dw//AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/GRn/NTX/Dw//Fhb/AAD/AAD/AAD/GRn/GRn/Y2P/AAD/AAD/ExP/Ghr/AAD/AAD/MzP/GRn/AAD/Hh7/AAD/RUX/AAD/AAD/AAD/AAD/AAD/AAD/Dg7/AAD/HR3/Dw//FRX/SUn/AAD/////kJD/DQ3/Zmb/+/v/wMD/mJj/6en/vb3/1NT//Pz/ODj/+fn/3Nz/nJz/j4//9/f/7e3/9vb/7Oz/2Nj/x8f/Ozv/+Pj/3d3/nZ3/2dn//f3/6Oj/2tr/v7//09P/vr7/mZn/l5cdSvP3AAAAe3RSTlMAAhLiZgTb/vztB/JMRhlp6lQW86g8mQ4KFPs3UCH5U8huwlesWtTYGI7RsdVeJGfTW5rxnutLsvXWF8vQNdo6qQbuz7D4hgVIx2xtw8GC1TtZaIw0i84P98tU0/fsj7PKaAgiZZxeVfo8Z52eg1P0nESrENnjXVPUgw/uuSmDAAADsUlEQVR42u3aZ3cTRxgF4GtbYleSLdnGcsENG2ODjbExEHrvhAQCIb1Bem+QdkeuuFMNBBJIfmuOckzZI8/srHYmH3Lm+QNXK632LTvQ03Tu/IWeU/tTGTKT2n+q58L5c00wpXJd47DHEt5w47pKxLbhdLdPKb/7dBYxVLxw1GcI/2h1BcpzKNFHLX2JQ4gumaiitqpEEhEdOMJI9h5AFC3feYzI+7IF2tpSLEOqDXpObPRYFm/jCWho/4Ble7MdoT7fzhhq9yHEz28wltU1UPrJZ0wd66HwicfYvEFIfePTAP8tSLTupBHvtGJFH9bSkNrNWEHzERrT34xSH9Ogr1CijkbVAUH1KRqVqkdQAw07iIAaGlcTqI+/0LjeJJ5J0IIEnkpXMdzs4sTtW9dnZq7fuj2xOMtwVWk88RHDjBYejYvnjD8qjOpfQsUqhvj7oSjxcJIhVj3pyKqpNjYvVjQ/RrXq5YABKi3MCYm5BSrtWO5v11DlmlC4RpU1WRS9SJU7QukOVbpQ9JLu549+Dd0AUOlTbkGEuk85vxLAK5QbuytC3R2j3HoAjZSbFxrmKTcCoJdSk0LLJKV6gSaPMqNTQsvUKGW8JrxKqUWhaZFSeWyh1LTQNE2pHF6mzOy40DQ+S5mLimJcENoKlOnBWsr8KbRNUGYt5LXgd6HtD3lNQIoyN4S2G5RJIUOZm0LbTcqsBqVmhLYZSlkPsP4VWf+Rrd+m1v9o9h8Vv5p42C1R5qL1x7WRglOgVN52yfwNOBu76P+lLPoYidu23KPciIHGa07ZeIW1jvcNtI7q5vexCPGYCmf+m/Y9a3sAwQ5bI9T7ukPgPcn9GToEao+xk1OixJT+GIsvNAbx6eAgPq0xiF+KtkpYKhRXCQ8eFFcJhSWGu3rZ8jJkCM8kz9K4TUnrC6mAgzTsB9tLwQ2W15qfosQ2GrQNpZr7aczbzVjBZsvLcaC1g0bsbIVEnU8DOr6H1KDH2LwtUBi0/JII6Dxm9zUXkH+XMWzfh1Dte1i2Pe3QkC77Zel7aehpO8wyHG6Dtt0NjKxhN6I4uSli/TqJiJJDUQ4NDCURXTrXRy1XcumyD24M+AzhD1RXIIZsl/LoyZmurJHDM7s8lvB2FQ/PmPJ6PseAXP5HGMYAAC7ABbgAF+ACXIALcAEuwAW4ABfgAlyAC3ABLsAFuID/d8Cx4NEt8/byOf0wLnis8zjMq9/Kp7bWw4JOj8u8TlhRl+G/Mp2wpOX48GffvvZ1CyL4B53LAS6zb08EAAAAAElFTkSuQmCC")'},null),Hi("div",{class:"map-move",onClick:h},[_u("M13.3334375 16 q0.033125 1.1334375 0.783125 1.8834375 q0.75 0.75 1.8834375 0.75 q1.1334375 0 1.8834375 -0.75 q0.75 -0.75 0.75 -1.8834375 q0 -1.1334375 -0.75 -1.8834375 q-0.75 -0.75 -1.8834375 -0.75 q-1.1334375 0 -1.8834375 0.75 q-0.75 0.75 -0.783125 1.8834375 ZM30.9334375 14.9334375 l-1.1334375 0 q-0.5 -5.2 -4.0165625 -8.716875 q-3.516875 -3.5165625 -8.716875 -4.0165625 l0 -1.1334375 q0 -0.4665625 -0.3 -0.7665625 q-0.3 -0.3 -0.7665625 -0.3 q-0.4665625 0 -0.7665625 0.3 q-0.3 0.3 -0.3 0.7665625 l0 1.1334375 q-5.2 0.5 -8.716875 4.0165625 q-3.5165625 3.516875 -4.0165625 8.716875 l-1.1334375 0 q-0.4665625 0 -0.7665625 0.3 q-0.3 0.3 -0.3 0.7665625 q0 0.4665625 0.3 0.7665625 q0.3 0.3 0.7665625 0.3 l1.1334375 0 q0.5 5.2 4.0165625 8.716875 q3.516875 3.5165625 8.716875 4.0165625 l0 1.1334375 q0 0.4665625 0.3 0.7665625 q0.3 0.3 0.7665625 0.3 q0.4665625 0 0.7665625 -0.3 q0.3 -0.3 0.3 -0.7665625 l0 -1.1334375 q5.2 -0.5 8.716875 -4.0165625 q3.5165625 -3.516875 4.0165625 -8.716875 l1.1334375 0 q0.4665625 0 0.7665625 -0.3 q0.3 -0.3 0.3 -0.7665625 q0 -0.4665625 -0.3 -0.7665625 q-0.3 -0.3 -0.7665625 -0.3 ZM17.0665625 27.6665625 l0 -2.0665625 q0 -0.4665625 -0.3 -0.7665625 q-0.3 -0.3 -0.7665625 -0.3 q-0.4665625 0 -0.7665625 0.3 q-0.3 0.3 -0.3 0.7665625 l0 2.0665625 q-4.3 -0.4665625 -7.216875 -3.383125 q-2.916875 -2.916875 -3.3834375 -7.216875 l2.0665625 0 q0.4665625 0 0.7665625 -0.3 q0.3 -0.3 0.3 -0.7665625 q0 -0.4665625 -0.3 -0.7665625 q-0.3 -0.3 -0.7665625 -0.3 l-2.0665625 0 q0.4665625 -4.3 3.3834375 -7.216875 q2.9165625 -2.916875 7.216875 -3.3834375 l0 2.0665625 q0 0.4665625 0.3 0.7665625 q0.3 0.3 0.7665625 0.3 q0.4665625 0 0.7665625 -0.3 q0.3 -0.3 0.3 -0.7665625 l0 -2.0665625 q4.3 0.4665625 7.216875 3.3834375 q2.9165625 2.9165625 3.383125 7.216875 l-2.0665625 0 q-0.4665625 0 -0.7665625 0.3 q-0.3 0.3 -0.3 0.7665625 q0 0.4665625 0.3 0.7665625 q0.3 0.3 0.7665625 0.3 l2.0665625 0 q-0.4665625 4.3 -3.383125 7.216875 q-2.916875 2.9165625 -7.216875 3.383125 Z","#000000",24)],8,["onClick"])],_:1},8,["latitude","longitude","show-location","onUpdated","onRegionchange"]),Hi("div",{class:"nav"},[Hi("div",{class:"nav-btn back",onClick:d},[_u(vu,"#ffffff",26)],8,["onClick"]),Hi("div",{class:{"nav-btn":!0,confirm:!0,disable:!i.selected},onClick:p},[_u(bu,"#ffffff",26)],10,["onClick"])]),Hi("div",{class:"menu"},[Hi("div",{class:"search"},[Hi(Hh,{value:o.keyword,class:"search-input",placeholder:n("uni.chooseLocation.search"),onFocus:()=>o.searching=!0,onInput:u},null,8,["value","placeholder","onFocus","onInput"]),o.searching&&Hi("div",{class:"search-btn",onClick:()=>{o.searching=!1,o.keyword=""}},[n("uni.chooseLocation.cancel")],8,["onClick"])]),Hi(Og,{"scroll-y":!0,class:"list",onScrolltolower:a},(t=e,"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!ji(t)?e:{default:()=>[e],_:2}),8,["scroll-y","onScrolltolower"])])]);var t}}});let Cv=null;const Pv=wd("chooseLocation",((e,{resolve:t,reject:n})=>{Cv?n("cancel"):(Cv=Mn(e),go((()=>{const e=ov(kv,Cv,(o=>{Cv=null,go((()=>{e.unmount()})),o?t(o):n("cancel")}));e.mount(rv("u-a-c"))})))})),Mv=wd("navigateBack",((e,{resolve:t,reject:n})=>{let o=!0;return!0===Pu(Te,{from:e.from||"navigateBack"})&&(o=!1),o?(qm().$router.go(-e.delta),t()):n(Te)}),0,jf);function Lv({type:e,url:t,tabBarText:n,events:o},r){const i=qm().$router,{path:a,query:s}=function(e){const[t,n]=e.split("?",2);return{path:t,query:lt(n||"")}}(t);return new Promise(((t,l)=>{const c=function(e,t){return{__id__:t||++bm,__type__:e}}(e,r);i["navigateTo"===e?"push":"replace"]({path:a,query:s,state:c,force:!0}).then((r=>{if(hl(r))return l(r.message);if("switchTab"===e&&(i.currentRoute.value.meta.tabBarText=n),"navigateTo"===e){const e=i.currentRoute.value.meta;return e.eventChannel?o&&(Object.keys(o).forEach((t=>{e.eventChannel._addListener(t,"on",o[t])})),e.eventChannel._clearCache()):e.eventChannel=new ut(c.__id__,o),t({eventChannel:e.eventChannel})}return t()}))}))}const Ov=wd(Tf,(({url:e,events:t},{resolve:n,reject:o})=>Lv({type:Tf,url:e,events:t}).then(n).catch(o)),0,Of);const Iv=wd(kf,(({url:e},{resolve:t,reject:n})=>(function(){const e=Au();if(!e)return;const t=e.$page;vm(xm(t.path,t.id))}(),Lv({type:kf,url:e}).then(t).catch(n))),0,If);const Bv=wd(Cf,(({url:e},{resolve:t,reject:n})=>(function(){const e=mm().keys();for(const t of e)vm(t)}(),Lv({type:Cf,url:e}).then(t).catch(n))),0,Bf);function Nv(e,t){return e===t.fullPath||"/"===e&&t.meta.isEntry}const jv=wd(Pf,(({url:e,tabBarText:t},{resolve:n,reject:o})=>(function(){const e=Tu();if(!e)return;const t=mm(),n=t.keys();for(const o of n){const e=t.get(o);e.$.__isTabBar?e.$.__isActive=!1:vm(o)}e.$.__isTabBar&&(e.$.__isVisible=!1,Pu(e,ge))}(),Lv({type:Pf,url:e,tabBarText:t},function(e){const t=mm().values();for(const n of t){const t=n.$page;if(Nv(e,t))return n.$.__isActive=!0,t.id}}(e)).then(n).catch(o))),0,Nf);function Dv(e){__uniConfig.darkmode&&Ob.on(ve,e)}function Rv(e){let t={};return __uniConfig.darkmode&&(t=bt(e,__uniConfig.themeConfig,ky())),__uniConfig.darkmode?t:e}const Fv={title:{type:String,default:""},icon:{default:"success",validator:e=>-1!==Vf.indexOf(e)},image:{type:String,default:""},duration:{type:Number,default:1500},mask:{type:Boolean,default:!1},visible:{type:Boolean}},zv="uni-toast__icon",qv={light:"#fff",dark:"rgba(255,255,255,0.9)"},Hv=e=>qv[e],Uv=er({name:"Toast",props:Fv,setup(e){xc(),Ac();const{Icon:t}=function(e){const t=Wn(Hv(ky())),n=({theme:e})=>t.value=Hv(e);Ro((()=>{var t;e.visible?Dv(n):(t=n,Ob.off(ve,t))}));const o=ua((()=>{switch(e.icon){case"success":return Hi(_u(gu,t.value,38),{class:zv});case"error":return Hi(_u(mu,t.value,38),{class:zv});case"loading":return Hi("i",{class:[zv,"uni-loading"]},null,2);default:return null}}));return{Icon:o}}(e),n=iv(e,{});return()=>{const{mask:o,duration:r,title:i,image:a}=e;return Hi(qa,{name:"uni-fade"},{default:()=>[Mr(Hi("uni-toast",{"data-duration":r},[o?Hi("div",{class:"uni-mask",style:"background: transparent;",onTouchmove:au},null,40,["onTouchmove"]):"",a||t.value?Hi("div",{class:"uni-toast"},[a?Hi("img",{src:a,class:zv},null,10,["src"]):t.value,Hi("p",{class:"uni-toast__content"},[i])]):Hi("div",{class:"uni-sample-toast"},[Hi("p",{class:"uni-simple-toast__text"},[i])])],8,["data-duration"]),[[gs,n.value]])]})}}});let Vv,Wv,$v="";const Qv=xt();function Xv(e){Vv?T(Vv,e):(Vv=Mn(T(e,{visible:!1})),go((()=>{Qv.run((()=>{zo([()=>Vv.visible,()=>Vv.duration],(([e,t])=>{if(e){if(Wv&&clearTimeout(Wv),"onShowLoading"===$v)return;Wv=setTimeout((()=>{Gv("onHideToast")}),t)}else Wv&&clearTimeout(Wv)}))})),Ob.on("onHidePopup",(()=>Gv("onHidePopup"))),ov(Uv,Vv,(()=>{})).mount(rv("u-a-t"))}))),setTimeout((()=>{Vv.visible=!0}),10)}const Yv=wd("showToast",((e,{resolve:t,reject:n})=>{Xv(e),$v="onShowToast",t()}),0,Wf);function Gv(e){const{t:t}=bc();if(!$v)return;let n="";if("onHideToast"===e&&"onShowToast"!==$v?n=t("uni.showToast.unpaired"):"onHideLoading"===e&&"onShowLoading"!==$v&&(n=t("uni.showLoading.unpaired")),n)return console.warn(n);$v="",setTimeout((()=>{Vv.visible=!1}),10)}const Jv=wd("loadFontFace",(({family:e,source:t,desc:n},{resolve:o,reject:r})=>{(function(e,t,n){const o=document.fonts;if(o){const r=new FontFace(e,t,n);return r.load().then((()=>{o.add&&o.add(r)}))}return new Promise((o=>{const r=document.createElement("style"),i=[];if(n){const{style:e,weight:t,stretch:o,unicodeRange:r,variant:a,featureSettings:s}=n;e&&i.push(`font-style:${e}`),t&&i.push(`font-weight:${t}`),o&&i.push(`font-stretch:${o}`),r&&i.push(`unicode-range:${r}`),a&&i.push(`font-variant:${a}`),s&&i.push(`font-feature-settings:${s}`)}r.innerText=`@font-face{font-family:"${e}";src:${t};${i.join(";")}}`,document.head.appendChild(r),o()}))})(e,t,n).then((()=>{o()})).catch((e=>{r(`loadFontFace:fail ${e}`)}))}));function Kv(e){function t(){var t;t=e.navigationBar.titleText,document.title=t,Ob.emit(Ne,{titleText:t})}Ro(t),cr(t)}const Zv=wd(Hf,((e,{resolve:t,reject:n})=>{!function(e,t,n,o,r){if(!e)return r("page not found");const{navigationBar:i}=e;switch(t){case"setNavigationBarColor":const{frontColor:e,backgroundColor:t,animation:o}=n,{duration:r,timingFunc:a}=o;e&&(i.titleColor="#000000"===e?"#000000":"#ffffff"),t&&(i.backgroundColor=t),i.duration=r+"ms",i.timingFunc=a;break;case"showNavigationBarLoading":i.loading=!0;break;case"hideNavigationBarLoading":i.loading=!1;break;case Hf:const{title:s}=n;i.titleText=s}o()}(Eu(),Hf,e,t,n)})),eb=wd("pageScrollTo",(({scrollTop:e,selector:t,duration:n},{resolve:o})=>{!function(e,t,n){if(N(e)){const t=document.querySelector(e);if(t){const{height:o,top:r}=t.getBoundingClientRect();e=r+window.pageYOffset,n&&(e-=o)}}e<0&&(e=0);const o=document.documentElement,{clientHeight:r,scrollHeight:i}=o;if(e=Math.min(e,i-r),0===t)return void(o.scrollTop=document.body.scrollTop=e);if(window.scrollY===e)return;const a=t=>{if(t<=0)return void window.scrollTo(0,e);const n=e-window.scrollY;requestAnimationFrame((function(){window.scrollTo(0,window.scrollY+n/t*10),a(t-10)}))};a(t)}(t||e||0,n,!0),o()}),0,Uf),tb=wd($f,((e,{resolve:t})=>{Ob.invokeViewMethod($f,{},Su()),t()})),nb=wd(Qf,((e,{resolve:t})=>{Ob.invokeViewMethod(Qf,{},Su()),t()})),ob=["text","iconPath","iconfont","selectedIconPath","visible"],rb=["color","selectedColor","backgroundColor","borderStyle","midButton"],ib=["badge","redDot"];function ab(e,t,n){t.forEach((function(t){P(n,t)&&(e[t]=n[t])}))}function sb(e,t,n){const o=am();switch(e){case"showTabBar":o.shown=!0;break;case Xf:o.shown=!1;break;case"setTabBarItem":const{index:e}=t,n=o.list[e],r=n.pagePath;ab(n,ob,t);const{pagePath:i}=t;if(i){const t=Qe(i);t!==r&&function(e,t,n){const o=Nu(Qe(t));if(o){const{meta:e}=o;delete e.tabBarIndex,e.isQuit=e.isTabBar=!1}const r=Nu(Qe(n));if(r){const{meta:t}=r;t.tabBarIndex=e,t.isQuit=t.isTabBar=!0;const o=__uniConfig.tabBar;o&&o.list&&o.list[e]&&(o.list[e].pagePath=Xe(n))}}(e,r,t)}break;case"setTabBarStyle":ab(o,rb,t);break;case"showTabBarRedDot":ab(o.list[t.index],ib,{badge:"",redDot:!0});break;case"setTabBarBadge":ab(o.list[t.index],ib,{badge:t.text,redDot:!0});break;case"hideTabBarRedDot":case"removeTabBarBadge":ab(o.list[t.index],ib,{badge:"",redDot:!1})}n()}const lb=wd(Xf,((e,{resolve:t})=>{sb(Xf,e||{},t)})),cb=cp({name:"TabBar",setup(){const e=Wn([]),t=am(),n=Mn(Rv(t));!function(e,t){function n(){let n=[];n=e.list.filter((e=>!1!==e.visible)),t.value=n}Wn(T({type:"midButton"},e.midButton)),Ro(n)}(n,e),function(e){zo((()=>e.shown),(t=>{pu({"--window-bottom":fm(t?parseInt(e.height):0)})}))}(n);const o=function(e,t,n){return Ro((()=>{const o=e.meta;if(o.isTabBar){const e=o.route,r=n.value.findIndex((t=>t.pagePath===e));t.selectedIndex=r}})),(t,n)=>()=>{const{pagePath:o,text:r}=t;let i=Qe(o);i===__uniRoutes[0].alias&&(i="/"),e.path!==i?jv({from:"tabBar",url:i,tabBarText:r}):Pu("onTabItemTap",{index:n,text:r,pagePath:o})}}(fc(),n,e),{style:r,borderStyle:i,placeholderStyle:a}=function(e){const t=ua((()=>{let t=e.backgroundColor;const n=e.blurEffect;return t||pm&&n&&"none"!==n&&(t=fb[n]),{backgroundColor:t||ub,backdropFilter:"none"!==n?"blur(10px)":n}})),n=ua((()=>{const{borderStyle:t}=e;return{backgroundColor:hb[t]||t}})),o=ua((()=>({height:e.height})));return{style:t,borderStyle:n,placeholderStyle:o}}(n);return Dv((()=>{const e=Rv(t);n.backgroundColor=e.backgroundColor,n.borderStyle=e.borderStyle,n.color=e.color,n.selectedColor=e.selectedColor,n.blurEffect=e.blurEffect,e.list&&e.list.length&&e.list.forEach(((e,t)=>{n.list[t].iconPath=e.iconPath,n.list[t].selectedIconPath=e.selectedIconPath}))})),wr((()=>{n.iconfontSrc&&Jv({family:"UniTabbarIconFont",source:`url("${n.iconfontSrc}")`})})),()=>{const t=function(e,t,n){const{selectedIndex:o,selectedColor:r,color:i}=e;return n.value.map(((n,a)=>{const s=o===a;return function(e,t,n,o,r,i,a,s){return Hi("div",{key:a,class:"uni-tabbar__item",onClick:s(r,a)},[gb(e,t||"",n,o,r,i)],8,["onClick"])}(s?r:i,s&&n.selectedIconPath||n.iconPath||"",n.iconfont?s&&n.iconfont.selectedText||n.iconfont.text:void 0,n.iconfont?s&&n.iconfont.selectedColor||n.iconfont.color:void 0,n,e,a,t)}))}(n,o,e);return Hi("uni-tabbar",{class:"uni-tabbar-"+n.position},[Hi("div",{class:"uni-tabbar",style:r.value},[Hi("div",{class:"uni-tabbar-border",style:i.value},null,4),t],4),Hi("div",{class:"uni-placeholder",style:a.value},null,4)],2)}}});const ub="#f7f7fa",pb="rgb(0, 0, 0, 0.8)",db="rgb(250, 250, 250, 0.8)",fb={dark:pb,light:db,extralight:db},hb={white:"rgba(255, 255, 255, 0.33)",black:"rgba(0, 0, 0, 0.33)"};function gb(e,t,n,o,r,i){const{height:a}=i;return Hi("div",{class:"uni-tabbar__bd",style:{height:a}},[n?yb(n,o||pb,r,i):t&&mb(t,r,i),r.text&&vb(e,r,i),r.redDot&&bb(r.badge)],4)}function mb(e,t,n){const{type:o,text:r}=t,{iconWidth:i}=n;return Hi("div",{class:"uni-tabbar__icon"+(r?" uni-tabbar__icon__diff":""),style:{width:i,height:i}},["midButton"!==o&&Hi("img",{src:xp(e)},null,8,["src"])],6)}function yb(e,t,n,o){var r;const{type:i,text:a}=n,{iconWidth:s}=o,l="uni-tabbar__icon"+(a?" uni-tabbar__icon__diff":""),c={width:s,height:s},u={fontSize:(null==(r=n.iconfont)?void 0:r.fontSize)||s,color:t};return Hi("div",{class:l,style:c},["midButton"!==i&&Hi("div",{class:"uni-tabbar__iconfont",style:u},[e],4)],6)}function vb(e,t,n){const{iconPath:o,text:r}=t,{fontSize:i,spacing:a}=n;return Hi("div",{class:"uni-tabbar__label",style:{color:e,fontSize:i,lineHeight:o?"normal":1.8,marginTop:o?a:"inherit"}},[r],4)}function bb(e){return Hi("div",{class:"uni-tabbar__reddot"+(e?" uni-tabbar__badge":"")},[e],2)}const _b="0px",wb=cp({name:"Layout",setup(e,{emit:t}){const n=Wn(null);uu({"--status-bar-height":_b,"--top-window-height":_b,"--window-left":_b,"--window-right":_b,"--window-margin":_b,"--tab-bar-height":_b});const o=function(){const e=fc();return{routeKey:ua((()=>xm("/"+e.meta.route,rm()))),isTabBar:ua((()=>e.meta.isTabBar)),routeCache:Em}}(),{layoutState:r,windowState:i}=function(){om();{const e=Mn({marginWidth:0,leftWindowWidth:0,rightWindowWidth:0});return zo((()=>e.marginWidth),(e=>uu({"--window-margin":e+"px"}))),zo((()=>e.leftWindowWidth+e.marginWidth),(e=>{uu({"--window-left":e+"px"})})),zo((()=>e.rightWindowWidth+e.marginWidth),(e=>{uu({"--window-right":e+"px"})})),{layoutState:e,windowState:ua((()=>({})))}}}();!function(e,t){const n=om();function o(){const o=document.body.clientWidth,r=ym();let i={};if(r.length>0){i=r[r.length-1].$page.meta}else{const e=Nu(n.path,!0);e&&(i=e.meta)}const a=parseInt(String((P(i,"maxWidth")?i.maxWidth:__uniConfig.globalStyle.maxWidth)||Number.MAX_SAFE_INTEGER));let s=!1;s=o>a,s&&a?(e.marginWidth=(o-a)/2,go((()=>{const e=t.value;e&&e.setAttribute("style","max-width:"+a+"px;margin:0 auto;")}))):(e.marginWidth=0,go((()=>{const e=t.value;e&&e.removeAttribute("style")})))}zo([()=>n.path],o),wr((()=>{o(),window.addEventListener("resize",o)}))}(r,n);const a=function(e){const t=om(),n=am(),o=ua((()=>t.meta.isTabBar&&n.shown));return uu({"--tab-bar-height":n.height}),o}(),s=function(e){const t=Wn(!1);return ua((()=>({"uni-app--showtabbar":e&&e.value,"uni-app--maxwidth":t.value})))}(a);return()=>{const e=function(e,t,n,o,r,i){const a=function({routeKey:e,isTabBar:t,routeCache:n}){return Hi(pc,null,{default:Mo((({Component:o})=>[(Mi(),Ni(sr,{matchBy:"key",cache:n},[(Mi(),Ni(Nr(o),{type:t.value?"tabBar":"",key:e.value}))],1032,["cache"]))])),_:1})}(e);return a}(o),t=function(e){return Mr(Hi(cb,null,null,512),[[gs,e.value]])}(a);return Hi("uni-app",{ref:n,class:s.value},[e,t],2)}}});const xb="MAP_LOCATION",Ab=cp({name:"MapLocation",setup(){const e=Mn({latitude:0,longitude:0,rotate:0});{let t=function(t){e.rotate=t.direction},n=function(){Tv({type:"gcj02",success:t=>{e.latitude=t.latitude,e.longitude=t.longitude},complete:()=>{i=setTimeout(n,3e4)}})},o=function(){i&&clearTimeout(i),Fy(t)};const r=Do("onMapReady");let i;Ry(t),r(n),Sr(o);const a=Do("addMapChidlContext"),s=Do("removeMapChidlContext"),l={id:xb,state:e};a(l),Sr((()=>s(l)))}return()=>e.latitude?Hi(gy,Yi({anchor:{x:.5,y:.5},width:"44",height:"44",iconPath:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAACECAMAAABmmnOVAAAC01BMVEUAAAAAef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef96quGStdqStdpbnujMzMzCyM7Gyc7Ky83MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMwAef8GfP0yjfNWnOp0qOKKsdyYt9mju9aZt9mMstx1qeJYnekyjvIIfP0qivVmouaWttnMzMyat9lppOUujPQKffxhoOfNzc3Y2Njh4eHp6enu7u7y8vL19fXv7+/i4uLZ2dnOzs6auNgOf/sKff15quHR0dHx8fH9/f3////j4+N6quFdn+iywdPb29vw8PD+/v7c3NyywtLa2tr29vbS0tLd3d38/Pzf39/o6Ojc7f+q0v+HwP9rsf9dqv9Hnv9Vpv/q6urj8P+Vx/9Am/8Pgf8Iff/z8/OAvP95uf/n5+c5l//V6f+52v+y1//7+/vt7e0rkP/09PTQ0NDq9P8Whf+cy//W1tbe3t7A3v/m5ubs7OxOov/r6+vk5OQiaPjKAAAAknRSTlMACBZ9oB71/jiqywJBZATT6hBukRXv+zDCAVrkDIf4JbQsTb7eVeJLbwfa8Rh4G/OlPS/6/kxQ9/xdmZudoJxNVhng7B6wtWdzAtQOipcF1329wS44doK/BAkyP1pvgZOsrbnGXArAg34G2IsD1eMRe7bi7k5YnqFT9V0csyPedQyYD3p/Fje+hDpskq/MwpRBC6yKp2MAAAQdSURBVHja7Zn1exMxGIAPHbrhDsPdneHuNtzd3d3dIbjLh93o2o4i7TpgG1Jk0g0mMNwd/gTa5rq129reHnK5e/bk/TFNk/dJ7r5894XjGAwGg8GgTZasCpDIll1+hxw5vXLJLpEboTx5ZXbIhyzkl9fB28cqUaCgrBKFkI3CcjoUKYolihWXUSI7EihRUjaHXF52CVRKLoe8eZIdUOkyMknkRw6UlcehYAFHiXK+skgURk6Ul8OhQjFnCVRRBolKqRxQ5SzUHaqgNGSj7VCmalqJnDkoS5RF6ZCbroNvufQkUD6qEuXTdUA+3hQdqiEXVKfnUKOmK4latalJ1EEuoZZ6162HJ9x/4OChw0eOHj12/MTJU6dxG7XUu751tjNnz4ET5y9ctLZTSr0beKFLl89bpuUDrqgC1RqNWqsKuqqzNFw7e51S6u3tc+OmZUJ9kCHY6ECwOkRvab51iUrqXej2HYDQsHBjWgx3Ae7dppB6N2wEcF9jdMGDUIDGTaR2aNoM9FqjG7QmaN5CWgc/gIePjG559BigpZQOrYB/4jBfRGRUtDkmJjY6KjLCofkpD62lc2gDfMpWPIuLdwyV8XEpHgaddBZ+wBuSFcwJqSN2ovmZ/dfnOvCTxqGtwzq8SEjv4EhISn48eWgnhUP7DvDSvgzxrs6vV6+FLiro2EkCic4QKkzwJsH1KYreCp0eQhfyDl1B/w4P/xa5JVJ4U03QjbRD9x7wXlgH5IE3wmMBHXoSlugFAcI6f/AkkSi8q6HQm6xDn77wEQ8djTwSj3tqAMguRTe4ikeOQyJ4YV+KfkQl+oNW5GbY4gWOWgbwJ+kwAD6Fi90MK2ZsrIeBBCUGwRXbqJ+/iJMQliIEBhOU6AJhtlG/IpHE2bqrYQg5h6HA4yQiRqwEfkGCdTCMmMRw+IbPDCQaHCsCYAQxiZHw3TbmD/ESOHgHwShiEqPhp/gggYkSztIxxCRawy/bmEniJaJtfwiEscQkxkFgRqJESqQwwHhiEuMBp3Vm8RK/cZoHEzKXhCK2QxEPpiJe0YlKCFaKCNv/cYBNUsBRPlkJSc0U+dM7E9H0ThGJbgZT/iR7yj+VqMS06Qr4+OFm2JdCxIa8lugzkJs5K6MfxAaYPUcBpYG5khZJEkUUSb7DPCnKRfPBXj6M8FwuegoLpCgXcQszVjhbJFUJUee2hBhLoYTIcYtB57KY+opSMdVqwatSlZVj05aV//CwJLMX2DluaUcwhXm4ali2XOoLjxUrPV26zFtF4f5p0Gp310+z13BUWNvbehEXona6iAtX/zVZmtfN4WixfsNky4S6gCCVVq3RPLdfSfpv3MRRZfPoLc6Xs/5bt3EyMGzE9h07/Xft2t15z6i9+zgGg8FgMBgMBoPBYDAYDAYj8/APG67Rie8pUDsAAAAASUVORK5CYII="},e),null,16,["iconPath"]):null}}),Eb=cp({name:"MapPolygon",props:{dashArray:{type:Array,default:()=>[0,0]},points:{type:Array,required:!0},strokeWidth:{type:Number,default:1},strokeColor:{type:String,default:"#000000"},fillColor:{type:String,default:"#00000000"},zIndex:{type:Number,default:0}},setup(e){let t;return Do("onMapReady")(((n,o,r)=>{function i(){const{points:r,strokeWidth:i,strokeColor:a,dashArray:s,fillColor:l,zIndex:c}=e,u=r.map((e=>{const{latitude:t,longitude:n}=e;return ly()?[n,t]:new o.LatLng(t,n)})),{r:p,g:d,b:f,a:h}=my(l),{r:g,g:m,b:y,a:v}=my(a),b={clickable:!0,cursor:"crosshair",editable:!1,map:n,fillColor:"",path:u,strokeColor:"",strokeDashStyle:s.some((e=>e>0))?"dash":"solid",strokeWeight:i,visible:!0,zIndex:c};o.Color?(b.fillColor=new o.Color(p,d,f,h),b.strokeColor=new o.Color(g,m,y,v)):(b.fillColor=`rgb(${p}, ${d}, ${f})`,b.fillOpacity=h,b.strokeColor=`rgb(${g}, ${m}, ${y})`,b.strokeOpacity=v),t?t.setOptions(b):t=new o.Polygon(b)}i(),zo(e,i)})),Sr((()=>{t.setMap(null)})),()=>null}});function Sb(e){const t=[];return M(e)&&e.forEach((e=>{e&&e.latitude&&e.longitude&&t.push({latitude:e.latitude,longitude:e.longitude})})),t}function Tb(e,t,n){return ly()?function(e,t,n){return new e.LngLat(n,t)}(e,t,n):function(e,t,n){return new e.LatLng(t,n)}(e,t,n)}function kb(e){return"getLat"in e?e.getLat():e.lat()}function Cb(e){return"getLng"in e?e.getLng():e.lng()}function Pb(e,t,n){const o=hp(t,n),r=Wn(null);let i,a;const s=Mn({latitude:Number(e.latitude),longitude:Number(e.longitude),includePoints:Sb(e.includePoints)}),l=[];let c,u;function p(e){c?e(a,i,o):l.push(e)}const d=[];function f(e){u?e():l.push(e)}const h={};function g(){const e=a.getCenter();return{scale:a.getZoom(),centerLocation:{latitude:kb(e),longitude:Cb(e)}}}function m(){if(ly()){const e=[];s.includePoints.forEach((t=>{e.push([t.longitude,t.latitude])}));const t=new i.Bounds(...e);a.setBounds(t)}else{const e=new i.LatLngBounds;s.includePoints.forEach((({latitude:t,longitude:n})=>{const o=new i.LatLng(t,n);e.extend(o)})),a.fitBounds(e)}}function y(){const t=r.value,l=Tb(i,s.latitude,s.longitude),c=i.event||i.Event,p=new i.Map(t,{center:l,zoom:Number(e.scale),disableDoubleClickZoom:!0,mapTypeControl:!1,zoomControl:!1,scaleControl:!1,panControl:!1,fullscreenControl:!1,streetViewControl:!1,keyboardShortcuts:!1,minZoom:5,maxZoom:18,draggable:!0});zo((()=>e.scale),(e=>{p.setZoom(Number(e)||16)})),f((()=>{s.includePoints.length&&(m(),function(){const e=Tb(i,s.latitude,s.longitude);a.setCenter(e)}())}));const h=c.addListener(p,"bounds_changed",(()=>{h.remove(),u=!0,d.forEach((e=>e())),d.length=0}));c.addListener(p,"click",(()=>{o("tap",{},{}),o("click",{},{})})),c.addListener(p,"dragstart",(()=>{o("regionchange",{},{type:"begin",causedBy:"gesture"})})),c.addListener(p,"dragend",(()=>{o("regionchange",{},T({type:"end",causedBy:"drag"},g()))}));const y=()=>{n("update:scale",p.getZoom()),o("regionchange",{},T({type:"end",causedBy:"scale"},g()))};return c.addListener(p,"zoom_changed",y),c.addListener(p,"zoomend",y),c.addListener(p,"center_changed",(()=>{const e=p.getCenter(),t=kb(e),o=Cb(e);n("update:latitude",t),n("update:longitude",o)})),p}zo([()=>e.latitude,()=>e.longitude],(([e,t])=>{const n=Number(e),o=Number(t);if((n!==s.latitude||o!==s.longitude)&&(s.latitude=n,s.longitude=o,a)){const e=Tb(i,s.latitude,s.longitude);a.setCenter(e)}})),zo((()=>e.includePoints),(e=>{s.includePoints=Sb(e),u&&m()}),{deep:!0});try{Vg(((e,t={})=>{switch(e){case"getCenterLocation":p((()=>{const n=a.getCenter();Ke(t,{latitude:kb(n),longitude:Cb(n),errMsg:`${e}:ok`})}));break;case"moveToLocation":{let n=Number(t.latitude),o=Number(t.longitude);if(!n||!o){const e=h[xb];e&&(n=e.state.latitude,o=e.state.longitude)}if(n&&o){if(s.latitude=n,s.longitude=o,a){const e=Tb(i,n,o);a.setCenter(e)}p((()=>{Ke(t,`${e}:ok`)}))}else Ke(t,`${e}:fail`)}break;case"translateMarker":p((()=>{const n=h[t.markerId];if(n){try{n.translate(t)}catch(o){Ke(t,`${e}:fail ${o.message}`)}Ke(t,`${e}:ok`)}else Ke(t,`${e}:fail not found`)}));break;case"includePoints":s.includePoints=Sb(t.includePoints),(u||ly())&&m(),f((()=>{Ke(t,`${e}:ok`)}));break;case"getRegion":f((()=>{const n=a.getBounds(),o=n.getSouthWest(),r=n.getNorthEast();Ke(t,{southwest:{latitude:kb(o),longitude:Cb(o)},northeast:{latitude:kb(r),longitude:Cb(r)},errMsg:`${e}:ok`})}));break;case"getScale":p((()=>{Ke(t,{scale:a.getZoom(),errMsg:`${e}:ok`})}))}}),$g(),!0)}catch(v){}return wr((()=>{fy(e.libraries,(e=>{i=e,a=y(),c=!0,l.forEach((e=>e(a,i,o))),l.length=0,o("updated",{},{})}))})),jo("onMapReady",p),jo("addMapChidlContext",(function(e){h[e.id]=e})),jo("removeMapChidlContext",(function(e){delete h[e.id]})),{state:s,mapRef:r,trigger:o}}const Mb=lp({name:"Map",props:{id:{type:String,default:""},latitude:{type:[String,Number],default:0},longitude:{type:[String,Number],default:0},scale:{type:[String,Number],default:16},markers:{type:Array,default:()=>[]},includePoints:{type:Array,default:()=>[]},polyline:{type:Array,default:()=>[]},circles:{type:Array,default:()=>[]},controls:{type:Array,default:()=>[]},showLocation:{type:[Boolean,String],default:!1},libraries:{type:Array,default:()=>[]},polygons:{type:Array,default:()=>[]}},emits:["markertap","labeltap","callouttap","controltap","regionchange","tap","click","updated","update:scale","update:latitude","update:longitude"],setup(e,{emit:t,slots:n}){const o=Wn(null),{mapRef:r,trigger:i}=Pb(e,o,t);return()=>Hi("uni-map",{ref:o,id:e.id},[Hi("div",{ref:r,style:"width: 100%; height: 100%; position: relative; overflow: hidden"},null,512),e.markers.map((e=>Hi(gy,Yi({key:e.id},e),null,16))),e.polyline.map((e=>Hi(vy,e,null,16))),e.circles.map((e=>Hi(by,e,null,16))),e.controls.map((e=>Hi(wy,Yi(e,{trigger:i}),null,16,["trigger"]))),e.showLocation&&Hi(Ab,null,null),e.polygons.map((e=>Hi(Eb,e,null,16))),Hi("div",{style:"position: absolute;top: 0;width: 100%;height: 100%;overflow: hidden;pointer-events: none;"},[n.default&&n.default()])],8,["id"])}}),Lb=T(jc,{publishHandler(e,t,n){Ob.subscribeHandler(e,t,n)}}),Ob=T(Yu,{publishHandler(e,t,n){Lb.subscribeHandler(e,t,n)}}),Ib=cp({name:"PageHead",setup(){const e=Wn(null),t=tm(),n=Mn(Rv(t.navigationBar)),{clazz:o,style:r}=function(e){const t=ua((()=>{const{type:t,titlePenetrate:n,shadowColorType:o}=e,r={"uni-page-head":!0,"uni-page-head-transparent":"transparent"===t,"uni-page-head-titlePenetrate":"YES"===n,"uni-page-head-shadow":!!o};return o&&(r[`uni-page-head-shadow-${o}`]=!0),r})),n=ua((()=>({backgroundColor:e.backgroundColor,color:e.titleColor,transitionDuration:e.duration,transitionTimingFunction:e.timingFunc})));return{clazz:t,style:n}}(n);return Dv((()=>{const e=Rv(t.navigationBar);n.backgroundColor=e.backgroundColor,n.titleColor=e.titleColor})),()=>{const i=function(e,t){if(!t)return Hi("div",{class:"uni-page-head-btn",onClick:Nb},[_u(yu,"transparent"===e.type?"#fff":e.titleColor,27)],8,["onClick"])}(n,t.isQuit),a=n.type||"default",s="transparent"!==a&&"float"!==a&&Hi("div",{class:{"uni-placeholder":!0,"uni-placeholder-titlePenetrate":n.titlePenetrate}},null,2);return Hi("uni-page-head",{"uni-page-head-type":a},[Hi("div",{ref:e,class:o.value,style:r.value},[Hi("div",{class:"uni-page-head-hd"},[i]),Bb(n),Hi("div",{class:"uni-page-head-ft"},[])],6),s],8,["uni-page-head-type"])}}});function Bb(e,t){return function({type:e,loading:t,titleSize:n,titleText:o,titleImage:r}){return Hi("div",{class:"uni-page-head-bd"},[Hi("div",{style:{fontSize:n,opacity:"transparent"===e?0:1},class:"uni-page-head__title"},[t?Hi("i",{class:"uni-loading"},null):r?Hi("img",{src:r,class:"uni-page-head__title_image"},null,8,["src"]):o],4)])}(e)}function Nb(){1===ym().length?Bv({url:"/"}):Mv({from:"backbutton",success(){}})}const jb={name:"PageRefresh",setup(){const{pullToRefresh:e}=tm();return{offset:e.offset,color:e.color}}},Db=(e,t)=>{const n=e.__vccOpts||e;for(const[o,r]of t)n[o]=r;return n},Rb={class:"uni-page-refresh-inner"},Fb=["fill"],zb=[qi("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"},null,-1),qi("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1)],qb={class:"uni-page-refresh__spinner",width:"24",height:"24",viewBox:"25 25 50 50"},Hb=["stroke"];const Ub=Db(jb,[["render",function(e,t,n,o,r,i){return Mi(),Bi("uni-page-refresh",null,[qi("div",{style:s({"margin-top":o.offset+"px"}),class:"uni-page-refresh"},[qi("div",Rb,[(Mi(),Bi("svg",{fill:o.color,class:"uni-page-refresh__icon",width:"24",height:"24",viewBox:"0 0 24 24"},zb,8,Fb)),(Mi(),Bi("svg",qb,[qi("circle",{stroke:o.color,class:"uni-page-refresh__path",cx:"50",cy:"50",r:"20",fill:"none","stroke-width":"4","stroke-miterlimit":"10"},null,8,Hb)]))])],4)])}]]);function Vb(e,t,n){const o=Array.prototype.slice.call(e.changedTouches).filter((e=>e.identifier===t))[0];return!!o&&(e.deltaY=o.pageY-n,!0)}const Wb="pulling",$b="reached",Qb="aborting",Xb="refreshing",Yb="restoring";function Gb(e){const{id:t,pullToRefresh:n}=tm(),{range:o,height:r}=n;let i,a,s,l,c,u,p,d;Vg((()=>{d||(d=Xb,m(),setTimeout((()=>{w()}),50))}),$f,!1,t),Vg((()=>{d===Xb&&(y(),d=Yb,m(),function(e){if(!a)return;s.transition="-webkit-transform 0.3s",s.transform+=" scale(0.01)";const t=function(){n&&clearTimeout(n),a.removeEventListener("webkitTransitionEnd",t),s.transition="",s.transform="translate3d(-50%, 0, 0)",e()};a.addEventListener("webkitTransitionEnd",t);const n=setTimeout(t,350)}((()=>{y(),d=f=h=null})))}),Qf,!1,t),wr((()=>{i=e.value.$el,a=i.querySelector(".uni-page-refresh"),s=a.style,l=a.querySelector(".uni-page-refresh-inner").style}));let f=null,h=null;function g(e){d&&i&&i.classList[e]("uni-page-refresh--"+d)}function m(){g("add")}function y(){g("remove")}const v=fp((e=>{const t=e.changedTouches[0];c=t.identifier,u=t.pageY,p=!([Qb,Xb,Yb].indexOf(d)>=0)})),b=fp((e=>{if(!p)return;if(!Vb(e,c,u))return;let{deltaY:t}=e;if(0!==(document.documentElement.scrollTop||document.body.scrollTop))return void(c=null);if(t<0&&!d)return;e.preventDefault(),null===f&&(h=t,d=Wb,m()),t-=h,t<0&&(t=0),f=t;(t>=o&&d!==$b||t1?t=1:t*=t*t;const n=Math.round(e/(o/r))||0;l.transform="rotate("+360*t+"deg)",s.clip="rect("+(45-n)+"px,45px,45px,-5px)",s.transform="translate3d(-50%, "+n+"px, 0)"}(t)})),_=fp((e=>{Vb(e,c,u)&&null!==d&&(d===Wb?(y(),d=Qb,m(),function(e){if(!a)return;if(s.transform){s.transition="-webkit-transform 0.3s",s.transform="translate3d(-50%, 0, 0)";const t=function(){n&&clearTimeout(n),a.removeEventListener("webkitTransitionEnd",t),s.transition="",e()};a.addEventListener("webkitTransitionEnd",t);const n=setTimeout(t,350)}else e()}((()=>{y(),d=f=h=null}))):d===$b&&(y(),d=Xb,m(),w()))}));function w(){a&&(s.transition="-webkit-transform 0.2s",s.transform="translate3d(-50%, "+r+"px, 0)",Pu(t,Me))}return{onTouchstartPassive:v,onTouchmove:b,onTouchend:_,onTouchcancel:_}}const Jb=cp({name:"PageBody",setup(e,t){const n=tm(),o=Wn(null),r=n.enablePullDownRefresh?Gb(o):null;return()=>{const e=function(e,t){if(!t.enablePullDownRefresh)return null;return Hi(Ub,{ref:e},null,512)}(o,n);return Hi(Ei,null,[e,Hi("uni-page-wrapper",r,[Hi("uni-page-body",null,[Fr(t.slots,"default")])],16)])}}});const Kb=cp({name:"Page",setup(e,t){const n=nm(rm()),o=n.navigationBar;return Kv(n),()=>Hi("uni-page",{"data-page":n.route},"custom"!==o.style?[Hi(Ib),Zb(t)]:[Zb(t)])}});function Zb(e){return Mi(),Ni(Jb,{key:0},{default:Mo((()=>[Fr(e.slots,"page")])),_:3})}const e_={loading:"AsyncLoading",error:"AsyncError",delay:200,timeout:6e4,suspensible:!0};window.uni={},window.wx={},window.rpx2px=Md;const t_=Object.assign({"./locale/en.json":r,"./locale/zh-Hans.json":i}),n_=Object.assign;window.__uniConfig=n_({globalStyle:{backgroundColor:"#F8F8F8",backgroundColorTop:"#F8F8F8",backgroundColorBottom:"#F8F8F8",navigationBar:{backgroundColor:"#ffffff",titleText:"",type:"default",titleColor:"#000000"},isNVue:!1},tabBar:{position:"bottom",color:"#999",selectedColor:"#007aff",borderStyle:"black",blurEffect:"none",fontSize:"10px",iconWidth:"24px",spacing:"3px",height:"50px",list:[{pagePath:"app/pages/index/index"},{pagePath:"app/pages/member/index"}],selectedIndex:0,shown:!0},uniIdRouter:{},easycom:{custom:{"^u-(.*)":"uview-plus/components/u-$1/u-$1.vue","diy-(.*)":"@/app/components/diy/$1/index.vue","fixed-(.*)":"@/app/components/fixed/$1/index.vue"}},compilerVersion:"3.8.7"},{appId:"__UNI__ED923AB",appName:"",appVersion:"1.0.0",appVersionCode:"100",async:e_,debug:!1,networkTimeout:{request:6e4,connectSocket:6e4,uploadFile:6e4,downloadFile:6e4},sdkConfigs:{maps:{qqmap:{key:"6ZDBZ-CLSLX-66747-7MVM4-HLK47-XMBXU"}}},qqMapKey:"6ZDBZ-CLSLX-66747-7MVM4-HLK47-XMBXU",googleMapKey:void 0,aMapKey:void 0,aMapSecurityJsCode:void 0,aMapServiceHost:void 0,nvue:{"flex-direction":"column"},locale:"",fallbackLocale:"zh-Hans",locales:Object.keys(t_).reduce(((e,t)=>{const n=t.replace(/\.\/locale\/(uni-app.)?(.*).json/,"$2");return n_(e[n]||(e[n]={}),t_[t].default),e}),{}),router:{mode:"history",base: match ? `/wap/${match[1]}/` : "/wap/",assets:"assets",routerBase: match ? `/wap/${match[1]}/` : "/wap/"},darkmode:!1,themeConfig:{}}),window.__uniLayout=window.__uniLayout||{};const o_={delay:e_.delay,timeout:e_.timeout,suspensible:e_.suspensible};e_.loading&&(o_.loadingComponent={name:"SystemAsyncLoading",render:()=>Hi(Ir(e_.loading))}),e_.error&&(o_.errorComponent={name:"SystemAsyncError",render:()=>Hi(Ir(e_.error))});const r_=()=>o((()=>import("./app-pages-index-index.8a6b63fc.js")),["assets/app-pages-index-index.8a6b63fc.js","assets/u-loading-page.8a915b31.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-loading-page-2116306f.css","assets/index.9ca226e6.js","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-image.86f8f5db.js","assets/u-image-f70fd559.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-avatar.85887529.js","assets/u-avatar-0d8f8309.css","assets/u-popup.c9f22720.js","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-tabbar.7b503373.js","assets/u-tabbar-063ed93b.css","assets/index-7cabbaaa.css","assets/useShare.ef6065d7.js","assets/wechat.de0a8524.js","assets/index-471d618d.css"]).then((e=>Wm(e.default||e))),i_=nr(n_({loader:r_},o_)),a_=()=>o((()=>import("./app-pages-auth-agreement.83156e79.js")),["assets/app-pages-auth-agreement.83156e79.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/agreement-ca06a3ce.css"]).then((e=>Wm(e.default||e))),s_=nr(n_({loader:a_},o_)),l_=()=>o((()=>import("./app-pages-auth-bind.ec336bac.js")),["assets/app-pages-auth-bind.ec336bac.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js","assets/u-modal.fc188b5a.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css","assets/sms-code-9b208b13.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css","assets/bind-12c3cc42.css"]).then((e=>Wm(e.default||e))),c_=nr(n_({loader:l_},o_)),u_=()=>o((()=>import("./app-pages-auth-login.d5c56b6d.js")),["assets/app-pages-auth-login.d5c56b6d.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js","assets/u-modal.fc188b5a.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css","assets/sms-code-9b208b13.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css"]).then((e=>Wm(e.default||e))),p_=nr(n_({loader:u_},o_)),d_=()=>o((()=>import("./app-pages-auth-register.903e4e2d.js")),["assets/app-pages-auth-register.903e4e2d.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js","assets/u-modal.fc188b5a.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css","assets/sms-code-9b208b13.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css"]).then((e=>Wm(e.default||e))),f_=nr(n_({loader:d_},o_)),h_=()=>o((()=>import("./app-pages-auth-resetpwd.b5cafe6a.js")),["assets/app-pages-auth-resetpwd.b5cafe6a.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js","assets/u-modal.fc188b5a.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css","assets/sms-code-9b208b13.css","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css"]).then((e=>Wm(e.default||e))),g_=nr(n_({loader:h_},o_)),m_=()=>o((()=>import("./app-pages-index-diy.517d24c5.js")),["assets/app-pages-index-diy.517d24c5.js","assets/u-loading-page.8a915b31.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-loading-page-2116306f.css","assets/index.9ca226e6.js","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-image.86f8f5db.js","assets/u-image-f70fd559.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-avatar.85887529.js","assets/u-avatar-0d8f8309.css","assets/u-popup.c9f22720.js","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-tabbar.7b503373.js","assets/u-tabbar-063ed93b.css","assets/index-7cabbaaa.css","assets/useShare.ef6065d7.js","assets/wechat.de0a8524.js","assets/diy-b90cb215.css"]).then((e=>Wm(e.default||e))),y_=nr(n_({loader:m_},o_)),v_=()=>o((()=>import("./app-pages-index-close.bf0c324d.js")),["assets/app-pages-index-close.bf0c324d.js","assets/u-empty.c3b684cc.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-empty-5067ac67.css"]).then((e=>Wm(e.default||e))),b_=nr(n_({loader:v_},o_)),__=()=>o((()=>import("./app-pages-index-nosite.379f5802.js")),["assets/app-pages-index-nosite.379f5802.js","assets/u-empty.c3b684cc.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-empty-5067ac67.css"]).then((e=>Wm(e.default||e))),w_=nr(n_({loader:__},o_)),x_=()=>o((()=>import("./app-pages-member-apply_cash_out.13a8c093.js")),["assets/app-pages-member-apply_cash_out.13a8c093.js","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-button-4e9253f5.css","assets/u-loading-page.8a915b31.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-loading-page-2116306f.css"]).then((e=>Wm(e.default||e))),A_=nr(n_({loader:x_},o_)),E_=()=>o((()=>import("./app-pages-member-commission.167fdbed.js")),["assets/app-pages-member-commission.167fdbed.js","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-button-4e9253f5.css","assets/commission-7291a308.css"]).then((e=>Wm(e.default||e))),S_=nr(n_({loader:E_},o_)),T_=()=>o((()=>import("./app-pages-member-balance.7d44e8f5.js")),["assets/app-pages-member-balance.7d44e8f5.js","assets/u-loading-page.8a915b31.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-loading-page-2116306f.css","assets/u-button.78b6f378.js","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-button-4e9253f5.css","assets/u-input.d53f0aa0.js","assets/u-input-2dabccde.css","assets/u-popup.c9f22720.js","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-image.86f8f5db.js","assets/u-image-f70fd559.css","assets/pay.fc2de8ec.js","assets/wechat.de0a8524.js","assets/balance-137ab4f2.css"]).then((e=>Wm(e.default||e))),k_=nr(n_({loader:T_},o_)),C_=()=>o((()=>import("./app-pages-member-recharge_record.338cbf7e.js")),["assets/app-pages-member-recharge_record.338cbf7e.js","assets/useMescroll.fa1d1d16.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/useMescroll-194d164a.css","assets/mescroll-empty.e0697f9d.js","assets/mescroll-empty-ba01dc20.css","assets/recharge_record-f3e047d4.css"]).then((e=>Wm(e.default||e))),P_=nr(n_({loader:C_},o_)),M_=()=>o((()=>import("./app-pages-member-recharge_record_detail.2d425e40.js")),["assets/app-pages-member-recharge_record_detail.2d425e40.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/recharge_record_detail-71ec6cee.css"]).then((e=>Wm(e.default||e))),L_=nr(n_({loader:M_},o_)),O_=()=>o((()=>import("./app-pages-member-detailed_account.cc5692fc.js")),["assets/app-pages-member-detailed_account.cc5692fc.js","assets/useMescroll.fa1d1d16.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/useMescroll-194d164a.css","assets/mescroll-empty.e0697f9d.js","assets/mescroll-empty-ba01dc20.css","assets/detailed_account-3f8eb1f2.css"]).then((e=>Wm(e.default||e))),I_=nr(n_({loader:O_},o_)),B_=()=>o((()=>import("./app-pages-member-cash_out.3ae1a965.js")),["assets/app-pages-member-cash_out.3ae1a965.js","assets/useMescroll.fa1d1d16.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/useMescroll-194d164a.css","assets/mescroll-empty.e0697f9d.js","assets/mescroll-empty-ba01dc20.css","assets/cash_out-6641fdc6.css"]).then((e=>Wm(e.default||e))),N_=nr(n_({loader:B_},o_)),j_=()=>o((()=>import("./app-pages-member-cash_out_detail.a8680ca4.js")),["assets/app-pages-member-cash_out_detail.a8680ca4.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/cash_out_detail-a3745c74.css"]).then((e=>Wm(e.default||e))),D_=nr(n_({loader:j_},o_)),R_=()=>o((()=>import("./app-pages-member-index.600dbb8e.js")),["assets/app-pages-member-index.600dbb8e.js","assets/u-loading-page.8a915b31.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-loading-page-2116306f.css","assets/index.9ca226e6.js","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-image.86f8f5db.js","assets/u-image-f70fd559.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-avatar.85887529.js","assets/u-avatar-0d8f8309.css","assets/u-popup.c9f22720.js","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-tabbar.7b503373.js","assets/u-tabbar-063ed93b.css","assets/index-7cabbaaa.css","assets/index-9b35ec57.css"]).then((e=>Wm(e.default||e))),F_=nr(n_({loader:R_},o_)),z_=()=>o((()=>import("./app-pages-member-personal.a85f7d01.js")),["assets/app-pages-member-personal.a85f7d01.js","assets/u-avatar.85887529.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-avatar-0d8f8309.css","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-action-sheet.2061582e.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-action-sheet-e3392aa2.css","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css","assets/app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js","assets/u-modal.fc188b5a.js","assets/u-modal-b7ee2981.css","assets/personal-2bc25507.css"]).then((e=>Wm(e.default||e))),q_=nr(n_({loader:z_},o_)),H_=()=>o((()=>import("./app-pages-member-point.5a763cbd.js")),["assets/app-pages-member-point.5a763cbd.js","assets/useMescroll.fa1d1d16.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/useMescroll-194d164a.css","assets/mescroll-empty.e0697f9d.js","assets/mescroll-empty-ba01dc20.css"]).then((e=>Wm(e.default||e))),U_=nr(n_({loader:H_},o_)),V_=()=>o((()=>import("./app-pages-member-account.fb9e9cc2.js")),["assets/app-pages-member-account.fb9e9cc2.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/useMescroll.fa1d1d16.js","assets/useMescroll-194d164a.css"]).then((e=>Wm(e.default||e))),W_=nr(n_({loader:V_},o_)),$_=()=>o((()=>import("./app-pages-member-account_edit.38b457ae.js")),["assets/app-pages-member-account_edit.38b457ae.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-button-4e9253f5.css","assets/u-modal.fc188b5a.js","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css"]).then((e=>Wm(e.default||e))),Q_=nr(n_({loader:$_},o_)),X_=()=>o((()=>import("./app-pages-member-address.ea99cb78.js")),["assets/app-pages-member-address.ea99cb78.js","assets/u-tabbar.7b503373.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-tabbar-063ed93b.css","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-empty.c3b684cc.js","assets/u-empty-5067ac67.css","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-button-4e9253f5.css","assets/address-c15ec70e.css"]).then((e=>Wm(e.default||e))),Y_=nr(n_({loader:X_},o_)),G_=()=>o((()=>import("./app-pages-member-address_edit.57cbd4fb.js")),["assets/app-pages-member-address_edit.57cbd4fb.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/u-switch.d5ecdabf.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-switch-71a4dc97.css","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css"]).then((e=>Wm(e.default||e))),J_=nr(n_({loader:G_},o_)),K_=()=>o((()=>import("./app-pages-member-location_address_edit.b589688e.js")),["assets/app-pages-member-location_address_edit.b589688e.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-form.612a076f.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-form-c93addfb.css","assets/u-switch.d5ecdabf.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-switch-71a4dc97.css","assets/u-button.78b6f378.js","assets/u-button-4e9253f5.css"]).then((e=>Wm(e.default||e))),Z_=nr(n_({loader:K_},o_)),ew=()=>o((()=>import("./app-pages-pay-browser.629f7f33.js")),[]).then((e=>Wm(e.default||e))),tw=nr(n_({loader:ew},o_)),nw=()=>o((()=>import("./app-pages-pay-result.3a3816fe.js")),["assets/app-pages-pay-result.3a3816fe.js","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-loading-icon-4a706ea2.css","assets/u-icon.d4bf195f.js","assets/u-icon-3406a03e.css","assets/u-button-4e9253f5.css","assets/u-modal.fc188b5a.js","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-modal-b7ee2981.css","assets/pay.fc2de8ec.js"]).then((e=>Wm(e.default||e))),ow=nr(n_({loader:nw},o_)),rw=()=>o((()=>import("./app-pages-setting-index.f27b0554.js")),["assets/app-pages-setting-index.f27b0554.js","assets/u-action-sheet.2061582e.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-line.980a961a.js","assets/u-line-90cc8525.css","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-popup.c9f22720.js","assets/u-transition.24c0ace1.js","assets/u-transition-e532dbd1.css","assets/u-safe-bottom.f0120e94.js","assets/u-safe-bottom-fd70ea8a.css","assets/u-popup-b896d01d.css","assets/u-action-sheet-e3392aa2.css","assets/index-25bda3ed.css"]).then((e=>Wm(e.default||e))),iw=nr(n_({loader:rw},o_)),aw=()=>o((()=>import("./app-pages-webview-index.453dc9d2.js")),["assets/app-pages-webview-index.453dc9d2.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/index-9e578843.css"]).then((e=>Wm(e.default||e))),sw=nr(n_({loader:aw},o_)),lw=()=>o((()=>import("./app-pages-index-develop.54fb24e8.js")),["assets/app-pages-index-develop.54fb24e8.js","assets/u-input.d53f0aa0.js","assets/u-icon.d4bf195f.js","assets/_plugin-vue_export-helper.1b428a4d.js","assets/u-icon-3406a03e.css","assets/u-input-2dabccde.css","assets/u-button.78b6f378.js","assets/u-loading-icon.4b2cb429.js","assets/u-loading-icon-4a706ea2.css","assets/u-button-4e9253f5.css"]).then((e=>Wm(e.default||e))),cw=nr(n_({loader:lw},o_));function uw(e,t){return Mi(),Ni(Kb,null,{page:Mo((()=>[Hi(e,n_({},t,{ref:"page"}),null,512)])),_:1})}function pw(e,t){return N(e)?t:e}window.__uniRoutes=[{path:"/",alias:"/app/pages/index/index",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(i_,t)}},loader:r_,meta:{isQuit:!0,isEntry:!0,isTabBar:!0,tabBarIndex:0,enablePullDownRefresh:!0,navigationBar:{titleText:"%pages.index.index%",type:"default"},isNVue:!1}},{path:"/app/pages/auth/agreement",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(s_,t)}},loader:a_,meta:{navigationBar:{titleText:"%pages.auth.agreement%",type:"default"},isNVue:!1}},{path:"/app/pages/auth/bind",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(c_,t)}},loader:l_,meta:{navigationBar:{titleText:"%pages.auth.bind%",type:"default"},isNVue:!1}},{path:"/app/pages/auth/login",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(p_,t)}},loader:u_,meta:{navigationBar:{titleText:"%pages.auth.login%",type:"default"},isNVue:!1}},{path:"/app/pages/auth/register",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(f_,t)}},loader:d_,meta:{navigationBar:{titleText:"%pages.auth.register%",type:"default"},isNVue:!1}},{path:"/app/pages/auth/resetpwd",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(g_,t)}},loader:h_,meta:{navigationBar:{titleText:"%pages.auth.resetpwd%",type:"default"},isNVue:!1}},{path:"/app/pages/index/diy",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(y_,t)}},loader:m_,meta:{enablePullDownRefresh:!0,navigationBar:{titleText:"%pages.index.diy%",type:"default"},isNVue:!1}},{path:"/app/pages/index/close",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(b_,t)}},loader:v_,meta:{navigationBar:{titleText:"%pages.index.close%",type:"default"},isNVue:!1}},{path:"/app/pages/index/nosite",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(w_,t)}},loader:__,meta:{navigationBar:{titleText:"%pages.index.nosite%",type:"default"},isNVue:!1}},{path:"/app/pages/member/apply_cash_out",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(A_,t)}},loader:x_,meta:{navigationBar:{titleText:"%pages.member.apply_cash_out%",type:"default"},isNVue:!1}},{path:"/app/pages/member/commission",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(S_,t)}},loader:E_,meta:{navigationBar:{titleText:"%pages.member.commission%",type:"default"},isNVue:!1}},{path:"/app/pages/member/balance",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(k_,t)}},loader:T_,meta:{navigationBar:{titleText:"%pages.member.balance%",type:"default"},isNVue:!1}},{path:"/app/pages/member/recharge_record",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(P_,t)}},loader:C_,meta:{navigationBar:{titleText:"%pages.member.recharge_record%",type:"default"},isNVue:!1}},{path:"/app/pages/member/recharge_record_detail",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(L_,t)}},loader:M_,meta:{navigationBar:{titleText:"%pages.member.recharge_record_detail%",type:"default"},isNVue:!1}},{path:"/app/pages/member/detailed_account",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(I_,t)}},loader:O_,meta:{navigationBar:{titleText:"%pages.member.detailed_account%",type:"default"},isNVue:!1}},{path:"/app/pages/member/cash_out",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(N_,t)}},loader:B_,meta:{navigationBar:{titleText:"%pages.member.cash_out%",type:"default"},isNVue:!1}},{path:"/app/pages/member/cash_out_detail",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(D_,t)}},loader:j_,meta:{navigationBar:{titleText:"%pages.member.cash_out_detail%",type:"default"},isNVue:!1}},{path:"/app/pages/member/index",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(F_,t)}},loader:R_,meta:{isQuit:!0,isTabBar:!0,tabBarIndex:1,enablePullDownRefresh:!0,navigationBar:{titleText:"%pages.member.index%",type:"default"},isNVue:!1}},{path:"/app/pages/member/personal",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(q_,t)}},loader:z_,meta:{navigationBar:{titleText:"%pages.member.personal%",type:"default"},isNVue:!1}},{path:"/app/pages/member/point",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(U_,t)}},loader:H_,meta:{navigationBar:{titleText:"%pages.member.point%",type:"default"},isNVue:!1}},{path:"/app/pages/member/account",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(W_,t)}},loader:V_,meta:{navigationBar:{titleText:"%pages.member.account%",type:"default"},isNVue:!1}},{path:"/app/pages/member/account_edit",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(Q_,t)}},loader:$_,meta:{navigationBar:{titleText:"%pages.member.account_edit%",type:"default"},isNVue:!1}},{path:"/app/pages/member/address",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(Y_,t)}},loader:X_,meta:{navigationBar:{titleText:"%pages.member.address%",type:"default"},isNVue:!1}},{path:"/app/pages/member/address_edit",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(J_,t)}},loader:G_,meta:{navigationBar:{titleText:"%pages.member.address_edit%",type:"default"},isNVue:!1}},{path:"/app/pages/member/location_address_edit",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(Z_,t)}},loader:K_,meta:{navigationBar:{titleText:"%pages.member.address_edit%",type:"default"},isNVue:!1}},{path:"/app/pages/pay/browser",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(tw,t)}},loader:ew,meta:{navigationBar:{titleText:"%pages.pay.browser%",type:"default"},isNVue:!1}},{path:"/app/pages/pay/result",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(ow,t)}},loader:nw,meta:{navigationBar:{titleText:"%pages.pay.result%",type:"default"},isNVue:!1}},{path:"/app/pages/setting/index",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(iw,t)}},loader:rw,meta:{navigationBar:{titleText:"%pages.setting.index%",type:"default"},isNVue:!1}},{path:"/app/pages/webview/index",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(sw,t)}},loader:aw,meta:{navigationBar:{titleText:"%pages.webview.index%",type:"default"},isNVue:!1}},{path:"/app/pages/index/develop",component:{setup(){const e=qm(),t=e&&e.$route&&e.$route.query||{};return()=>uw(cw,t)}},loader:lw,meta:{navigationBar:{titleText:"%pages.index.develop%",type:"default"},isNVue:!1}}].map((e=>(e.meta.route=(e.alias||e.path).slice(1),e)));const dw=e=>(t,n=ea())=>{!ia&&vr(e,t,n)},fw=dw(he),hw=dw(ge),gw=dw(me),mw=dw(we),yw=dw(ke),vw=dw(Pe),bw=dw(Me),_w=dw(Le),ww=dw(Ie),xw="undefined"!=typeof window,Aw="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag,Ew=e=>Aw?Symbol(e):e,Sw=(e,t,n)=>Tw({l:e,k:t,s:n}),Tw=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),kw=e=>"number"==typeof e&&isFinite(e),Cw=e=>"[object Date]"===Hw(e),Pw=e=>"[object RegExp]"===Hw(e),Mw=e=>Uw(e)&&0===Object.keys(e).length;function Lw(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Ow=Object.assign;function Iw(e){return e.replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}const Bw=Object.prototype.hasOwnProperty;function Nw(e,t){return Bw.call(e,t)}const jw=Array.isArray,Dw=e=>"function"==typeof e,Rw=e=>"string"==typeof e,Fw=e=>"boolean"==typeof e,zw=e=>null!==e&&"object"==typeof e,qw=Object.prototype.toString,Hw=e=>qw.call(e),Uw=e=>"[object Object]"===Hw(e),Vw={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,__EXTEND_POINT__:15};function Ww(e,t,n={}){const{domain:o,messages:r,args:i}=n,a=new SyntaxError(String(e));return a.code=e,t&&(a.location=t),a.domain=o,a}function $w(e){throw e}function Qw(e,t,n){const o={start:e,end:t};return null!=n&&(o.source=n),o}const Xw=" ",Yw="\r",Gw="\n",Jw=String.fromCharCode(8232),Kw=String.fromCharCode(8233);function Zw(e){const t=e;let n=0,o=1,r=1,i=0;const a=e=>t[e]===Yw&&t[e+1]===Gw,s=e=>t[e]===Kw,l=e=>t[e]===Jw,c=e=>a(e)||(e=>t[e]===Gw)(e)||s(e)||l(e),u=e=>a(e)||s(e)||l(e)?Gw:t[e];function p(){return i=0,c(n)&&(o++,r=0),a(n)&&n++,n++,r++,t[n]}return{index:()=>n,line:()=>o,column:()=>r,peekOffset:()=>i,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+i),next:p,peek:function(){return a(n+i)&&i++,i++,t[n+i]},reset:function(){n=0,o=1,r=1,i=0},resetPeek:function(e=0){i=e},skipToPeek:function(){const e=n+i;for(;e!==n;)p();i=0}}}const ex=void 0,tx="'",nx="tokenizer";function ox(e,t={}){const n=!1!==t.location,o=Zw(e),r=()=>o.index(),i=()=>{return e=o.line(),t=o.column(),n=o.index(),{line:e,column:t,offset:n};var e,t,n},a=i(),s=r(),l={currentType:14,offset:s,startLoc:a,endLoc:a,lastType:14,lastOffset:s,lastStartLoc:a,lastEndLoc:a,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function p(e,t,n,...o){const r=c();if(t.column+=n,t.offset+=n,u){const n=Ww(e,Qw(r.startLoc,t),{domain:nx,args:o});u(n)}}function d(e,t,o){e.endLoc=i(),e.currentType=t;const r={type:t};return n&&(r.loc=Qw(e.startLoc,e.endLoc)),null!=o&&(r.value=o),r}const f=e=>d(e,14);function h(e,t){return e.currentChar()===t?(e.next(),t):(p(Vw.EXPECTED_TOKEN,i(),0,t),"")}function g(e){let t="";for(;e.currentPeek()===Xw||e.currentPeek()===Gw;)t+=e.currentPeek(),e.peek();return t}function m(e){const t=g(e);return e.skipToPeek(),t}function y(e){if(e===ex)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function v(e,t){const{currentType:n}=t;if(2!==n)return!1;g(e);const o=function(e){if(e===ex)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),o}function b(e){g(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function _(e,t=!0){const n=(t=!1,o="",r=!1)=>{const i=e.currentPeek();return"{"===i?"%"!==o&&t:"@"!==i&&i?"%"===i?(e.peek(),n(t,"%",!0)):"|"===i?!("%"!==o&&!r)||!(o===Xw||o===Gw):i===Xw?(e.peek(),n(!0,Xw,r)):i!==Gw||(e.peek(),n(!0,Gw,r)):"%"===o||t},o=n();return t&&e.resetPeek(),o}function w(e,t){const n=e.currentChar();return n===ex?ex:t(n)?(e.next(),n):null}function x(e){return w(e,(e=>{const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}))}function A(e){return w(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57}))}function E(e){return w(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}))}function S(e){let t="",n="";for(;t=A(e);)n+=t;return n}function T(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if("%"===n){if(!_(e))break;t+=n,e.next()}else if(n===Xw||n===Gw)if(_(e))t+=n,e.next();else{if(b(e))break;t+=n,e.next()}else t+=n,e.next()}return t}function k(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return C(e,t,4);case"U":return C(e,t,6);default:return p(Vw.UNKNOWN_ESCAPE_SEQUENCE,i(),0,t),""}}function C(e,t,n){h(e,t);let o="";for(let r=0;r=1&&p(Vw.NOT_ALLOW_NEST_PLACEHOLDER,i(),0),e.next(),n=d(t,2,"{"),m(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&p(Vw.EMPTY_PLACEHOLDER,i(),0),e.next(),n=d(t,3,"}"),t.braceNest--,t.braceNest>0&&m(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&p(Vw.UNTERMINATED_CLOSING_BRACE,i(),0),n=L(e,t)||f(t),t.braceNest=0,n;default:let o=!0,r=!0,a=!0;if(b(e))return t.braceNest>0&&p(Vw.UNTERMINATED_CLOSING_BRACE,i(),0),n=d(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return p(Vw.UNTERMINATED_CLOSING_BRACE,i(),0),t.braceNest=0,O(e,t);if(o=function(e,t){const{currentType:n}=t;if(2!==n)return!1;g(e);const o=y(e.currentPeek());return e.resetPeek(),o}(e,t))return n=d(t,5,function(e){m(e);let t="",n="";for(;t=x(e);)n+=t;return e.currentChar()===ex&&p(Vw.UNTERMINATED_CLOSING_BRACE,i(),0),n}(e)),m(e),n;if(r=v(e,t))return n=d(t,6,function(e){m(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${S(e)}`):t+=S(e),e.currentChar()===ex&&p(Vw.UNTERMINATED_CLOSING_BRACE,i(),0),t}(e)),m(e),n;if(a=function(e,t){const{currentType:n}=t;if(2!==n)return!1;g(e);const o=e.currentPeek()===tx;return e.resetPeek(),o}(e,t))return n=d(t,7,function(e){m(e),h(e,"'");let t="",n="";const o=e=>e!==tx&&e!==Gw;for(;t=w(e,o);)n+="\\"===t?k(e):t;const r=e.currentChar();return r===Gw||r===ex?(p(Vw.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,i(),0),r===Gw&&(e.next(),h(e,"'")),n):(h(e,"'"),n)}(e)),m(e),n;if(!o&&!r&&!a)return n=d(t,13,function(e){m(e);let t="",n="";const o=e=>"{"!==e&&"}"!==e&&e!==Xw&&e!==Gw;for(;t=w(e,o);)n+=t;return n}(e)),p(Vw.INVALID_TOKEN_IN_PLACEHOLDER,i(),0,n.value),m(e),n}return n}function L(e,t){const{currentType:n}=t;let o=null;const r=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||r!==Gw&&r!==Xw||p(Vw.INVALID_LINKED_FORMAT,i(),0),r){case"@":return e.next(),o=d(t,8,"@"),t.inLinked=!0,o;case".":return m(e),e.next(),d(t,9,".");case":":return m(e),e.next(),d(t,10,":");default:return b(e)?(o=d(t,1,P(e)),t.braceNest=0,t.inLinked=!1,o):function(e,t){const{currentType:n}=t;if(8!==n)return!1;g(e);const o="."===e.currentPeek();return e.resetPeek(),o}(e,t)||function(e,t){const{currentType:n}=t;if(8!==n&&12!==n)return!1;g(e);const o=":"===e.currentPeek();return e.resetPeek(),o}(e,t)?(m(e),L(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;g(e);const o=y(e.currentPeek());return e.resetPeek(),o}(e,t)?(m(e),d(t,12,function(e){let t="",n="";for(;t=x(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(10!==n)return!1;const o=()=>{const t=e.currentPeek();return"{"===t?y(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===Xw||!t)&&(t===Gw?(e.peek(),o()):y(t))},r=o();return e.resetPeek(),r}(e,t)?(m(e),"{"===r?M(e,t)||o:d(t,11,function(e){const t=(n=!1,o)=>{const r=e.currentChar();return"{"!==r&&"%"!==r&&"@"!==r&&"|"!==r&&r?r===Xw?o:r===Gw?(o+=r,e.next(),t(n,o)):(o+=r,e.next(),t(!0,o)):o};return t(!1,"")}(e))):(8===n&&p(Vw.INVALID_LINKED_FORMAT,i(),0),t.braceNest=0,t.inLinked=!1,O(e,t))}}function O(e,t){let n={type:14};if(t.braceNest>0)return M(e,t)||f(t);if(t.inLinked)return L(e,t)||f(t);switch(e.currentChar()){case"{":return M(e,t)||f(t);case"}":return p(Vw.UNBALANCED_CLOSING_BRACE,i(),0),e.next(),d(t,3,"}");case"@":return L(e,t)||f(t);default:if(b(e))return n=d(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;const{isModulo:o,hasSpace:r}=function(e){const t=g(e),n="%"===e.currentPeek()&&"{"===e.peek();return e.resetPeek(),{isModulo:n,hasSpace:t.length>0}}(e);if(o)return r?d(t,0,T(e)):d(t,4,function(e){m(e);const t=e.currentChar();return"%"!==t&&p(Vw.EXPECTED_TOKEN,i(),0,t),e.next(),"%"}(e));if(_(e))return d(t,0,T(e))}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:a}=l;return l.lastType=e,l.lastOffset=t,l.lastStartLoc=n,l.lastEndLoc=a,l.offset=r(),l.startLoc=i(),o.currentChar()===ex?d(l,14):O(o,l)},currentOffset:r,currentPosition:i,context:c}}const rx="parser",ix=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function ax(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function sx(e={}){const t=!1!==e.location,{onError:n}=e;function o(e,t,o,r,...i){const a=e.currentPosition();if(a.offset+=r,a.column+=r,n){const e=Ww(t,Qw(o,a),{domain:rx,args:i});n(e)}}function r(e,n,o){const r={type:e,start:n,end:n};return t&&(r.loc={start:o,end:o}),r}function i(e,n,o,r){e.end=n,r&&(e.type=r),t&&e.loc&&(e.loc.end=o)}function a(e,t){const n=e.context(),o=r(3,n.offset,n.startLoc);return o.value=t,i(o,e.currentOffset(),e.currentPosition()),o}function s(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:a}=n,s=r(5,o,a);return s.index=parseInt(t,10),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function l(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:a}=n,s=r(4,o,a);return s.key=t,e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function c(e,t){const n=e.context(),{lastOffset:o,lastStartLoc:a}=n,s=r(9,o,a);return s.value=t.replace(ix,ax),e.nextToken(),i(s,e.currentOffset(),e.currentPosition()),s}function u(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let a=e.nextToken();if(9===a.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:a,lastStartLoc:s}=n,l=r(8,a,s);return 12!==t.type?(o(e,Vw.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,0),l.value="",i(l,a,s),{nextConsumeToken:t,node:l}):(null==t.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,0,lx(t)),l.value=t.value||"",i(l,e.currentOffset(),e.currentPosition()),{node:l})}(e);n.modifier=t.node,a=t.nextConsumeToken||e.nextToken()}switch(10!==a.type&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(a)),a=e.nextToken(),2===a.type&&(a=e.nextToken()),a.type){case 11:null==a.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(a)),n.key=function(e,t){const n=e.context(),o=r(7,n.offset,n.startLoc);return o.value=t,i(o,e.currentOffset(),e.currentPosition()),o}(e,a.value||"");break;case 5:null==a.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(a)),n.key=l(e,a.value||"");break;case 6:null==a.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(a)),n.key=s(e,a.value||"");break;case 7:null==a.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(a)),n.key=c(e,a.value||"");break;default:o(e,Vw.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc,0);const u=e.context(),p=r(7,u.offset,u.startLoc);return p.value="",i(p,u.offset,u.startLoc),n.key=p,i(n,u.offset,u.startLoc),{nextConsumeToken:a,node:n}}return i(n,e.currentOffset(),e.currentPosition()),{node:n}}function p(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let p=null;do{const r=p||e.nextToken();switch(p=null,r.type){case 0:null==r.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(r)),n.items.push(a(e,r.value||""));break;case 6:null==r.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(r)),n.items.push(s(e,r.value||""));break;case 5:null==r.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(r)),n.items.push(l(e,r.value||""));break;case 7:null==r.value&&o(e,Vw.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,lx(r)),n.items.push(c(e,r.value||""));break;case 8:const i=u(e);n.items.push(i.node),p=i.nextConsumeToken||null}}while(14!==t.currentType&&1!==t.currentType);return i(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function d(e){const t=e.context(),{offset:n,startLoc:a}=t,s=p(e);return 14===t.currentType?s:function(e,t,n,a){const s=e.context();let l=0===a.items.length;const c=r(1,t,n);c.cases=[],c.cases.push(a);do{const t=p(e);l||(l=0===t.items.length),c.cases.push(t)}while(14!==s.currentType);return l&&o(e,Vw.MUST_HAVE_MESSAGES_IN_PLURAL,n,0),i(c,e.currentOffset(),e.currentPosition()),c}(e,n,a,s)}return{parse:function(n){const a=ox(n,Ow({},e)),s=a.context(),l=r(0,s.offset,s.startLoc);return t&&l.loc&&(l.loc.source=n),l.body=d(a),14!==s.currentType&&o(a,Vw.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,0,n[s.offset]||""),i(l,a.currentOffset(),a.currentPosition()),l}}}function lx(e){if(14===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function cx(e,t){for(let n=0;nn,helper:e=>(n.helpers.add(e),e)}}(e);n.helper("normalize"),e.body&&ux(e.body,n);const o=n.context();e.helpers=Array.from(o.helpers)}function dx(e,t){const{helper:n}=e;switch(t.type){case 0:!function(e,t){t.body?dx(e,t.body):e.push("null")}(e,t);break;case 1:!function(e,t){const{helper:n,needIndent:o}=e;if(t.cases.length>1){e.push(`${n("plural")}([`),e.indent(o());const r=t.cases.length;for(let n=0;n{const n=Rw(t.mode)?t.mode:"normal",o=Rw(t.filename)?t.filename:"message.intl",r=!!t.sourceMap,i=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",a=t.needIndent?t.needIndent:"arrow"!==n,s=e.helpers||[],l=function(e,t){const{sourceMap:n,filename:o,breakLineCode:r,needIndent:i}=t,a={source:e.loc.source,filename:o,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:i,indentLevel:0};function s(e,t){a.code+=e}function l(e,t=!0){const n=t?r:"";s(i?n+" ".repeat(e):n)}return{context:()=>a,push:s,indent:function(e=!0){const t=++a.indentLevel;e&&l(t)},deindent:function(e=!0){const t=--a.indentLevel;e&&l(t)},newline:function(){l(a.indentLevel)},helper:e=>`_${e}`,needIndent:()=>a.needIndent}}(e,{mode:n,filename:o,sourceMap:r,breakLineCode:i,needIndent:a});l.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),l.indent(a),s.length>0&&(l.push(`const { ${s.map((e=>`${e}: _${e}`)).join(", ")} } = ctx`),l.newline()),l.push("return "),dx(l,e),l.deindent(a),l.push("}");const{code:c,map:u}=l.context();return{ast:e,code:c,map:u?u.toJSON():void 0}}; +/*! + * core-base v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */ +const hx=[];hx[0]={w:[0],i:[3,0],"[":[4],o:[7]},hx[1]={w:[1],".":[2],"[":[4],o:[7]},hx[2]={w:[2],i:[3,0],0:[3,0]},hx[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},hx[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},hx[5]={"'":[4,0],o:8,l:[5,0]},hx[6]={'"':[4,0],o:8,l:[6,0]};const gx=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function mx(e){if(null==e)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function yx(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(n=t,gx.test(n)?function(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}const vx=new Map;function bx(e,t){return zw(e)?e[t]:null}const _x=e=>e,wx=e=>"",xx="text",Ax=e=>0===e.length?"":e.join(""),Ex=e=>null==e?"":jw(e)||Uw(e)&&e.toString===qw?JSON.stringify(e,null,2):String(e);function Sx(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function Tx(e={}){const t=e.locale,n=function(e){const t=kw(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(kw(e.named.count)||kw(e.named.n))?kw(e.named.count)?e.named.count:kw(e.named.n)?e.named.n:t:t}(e),o=zw(e.pluralRules)&&Rw(t)&&Dw(e.pluralRules[t])?e.pluralRules[t]:Sx,r=zw(e.pluralRules)&&Rw(t)&&Dw(e.pluralRules[t])?Sx:void 0,i=e.list||[],a=e.named||{};kw(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,a);function s(t){const n=Dw(e.messages)?e.messages(t):!!zw(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):wx)}const l=Uw(e.processor)&&Dw(e.processor.normalize)?e.processor.normalize:Ax,c=Uw(e.processor)&&Dw(e.processor.interpolate)?e.processor.interpolate:Ex,u={list:e=>i[e],named:e=>a[e],plural:e=>e[o(n,e.length,r)],linked:(t,...n)=>{const[o,r]=n;let i="text",a="";1===n.length?zw(o)?(a=o.modifier||a,i=o.type||i):Rw(o)&&(a=o||a):2===n.length&&(Rw(o)&&(a=o||a),Rw(r)&&(i=r||i));let l=s(t)(u);return"vnode"===i&&jw(l)&&a&&(l=l[0]),a?(c=a,e.modifiers?e.modifiers[c]:_x)(l,i):l;var c},message:s,type:Uw(e.processor)&&Rw(e.processor.type)?e.processor.type:xx,interpolate:c,normalize:l};return u}function kx(e,t,n){return[...new Set([n,...jw(t)?t:zw(t)?Object.keys(t):Rw(t)?[t]:[n]])]}function Cx(e,t,n){const o=Rw(n)?n:Bx,r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let i=r.__localeChainCache.get(o);if(!i){i=[];let e=[n];for(;jw(e);)e=Px(i,e,t);const a=jw(t)||!Uw(t)?t:t.default?t.default:null;e=Rw(a)?[a]:a,jw(e)&&Px(i,e,!1),r.__localeChainCache.set(o,i)}return i}function Px(e,t,n){let o=!0;for(let r=0;r`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let Dx,Rx,Fx;let zx=0;function qx(e={}){const t=Rw(e.version)?e.version:Ox,n=Rw(e.locale)?e.locale:Bx,o=jw(e.fallbackLocale)||Uw(e.fallbackLocale)||Rw(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:n,r=Uw(e.messages)?e.messages:{[n]:{}},i=Uw(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},a=Uw(e.numberFormats)?e.numberFormats:{[n]:{}},s=Ow({},e.modifiers||{},{upper:(e,t)=>"text"===t&&Rw(e)?e.toUpperCase():"vnode"===t&&zw(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&Rw(e)?e.toLowerCase():"vnode"===t&&zw(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&Rw(e)?jx(e):"vnode"===t&&zw(e)&&"__v_isVNode"in e?jx(e.children):e}),l=e.pluralRules||{},c=Dw(e.missing)?e.missing:null,u=!Fw(e.missingWarn)&&!Pw(e.missingWarn)||e.missingWarn,p=!Fw(e.fallbackWarn)&&!Pw(e.fallbackWarn)||e.fallbackWarn,d=!!e.fallbackFormat,f=!!e.unresolving,h=Dw(e.postTranslation)?e.postTranslation:null,g=Uw(e.processor)?e.processor:null,m=!Fw(e.warnHtmlMessage)||e.warnHtmlMessage,y=!!e.escapeParameter,v=Dw(e.messageCompiler)?e.messageCompiler:Dx,b=Dw(e.messageResolver)?e.messageResolver:Rx||bx,_=Dw(e.localeFallbacker)?e.localeFallbacker:Fx||kx,w=zw(e.fallbackContext)?e.fallbackContext:void 0,x=Dw(e.onWarn)?e.onWarn:Lw,A=e,E=zw(A.__datetimeFormatters)?A.__datetimeFormatters:new Map,S=zw(A.__numberFormatters)?A.__numberFormatters:new Map,T=zw(A.__meta)?A.__meta:{};zx++;const k={version:t,cid:zx,locale:n,fallbackLocale:o,messages:r,modifiers:s,pluralRules:l,missing:c,missingWarn:u,fallbackWarn:p,fallbackFormat:d,unresolving:f,postTranslation:h,processor:g,warnHtmlMessage:m,escapeParameter:y,messageCompiler:v,messageResolver:b,localeFallbacker:_,fallbackContext:w,onWarn:x,__meta:T};return k.datetimeFormats=i,k.numberFormats=a,k.__datetimeFormatters=E,k.__numberFormatters=S,k}function Hx(e,t,n,o,r){const{missing:i,onWarn:a}=e;if(null!==i){const o=i(e,n,t,r);return Rw(o)?o:t}return t}function Ux(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}const Vx=e=>e;let Wx=Object.create(null);let $x=Vw.__EXTEND_POINT__;const Qx=()=>++$x,Xx={INVALID_ARGUMENT:$x,INVALID_DATE_ARGUMENT:Qx(),INVALID_ISO_DATE_ARGUMENT:Qx(),__EXTEND_POINT__:Qx()};function Yx(e){return Ww(e,null,void 0)}const Gx=()=>"",Jx=e=>Dw(e);function Kx(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:r,messageCompiler:i,fallbackLocale:a,messages:s}=e,[l,c]=tA(...t),u=Fw(c.missingWarn)?c.missingWarn:e.missingWarn,p=Fw(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,d=Fw(c.escapeParameter)?c.escapeParameter:e.escapeParameter,f=!!c.resolvedMessage,h=Rw(c.default)||Fw(c.default)?Fw(c.default)?i?l:()=>l:c.default:n?i?l:()=>l:"",g=n||""!==h,m=Rw(c.locale)?c.locale:e.locale;d&&function(e){jw(e.list)?e.list=e.list.map((e=>Rw(e)?Iw(e):e)):zw(e.named)&&Object.keys(e.named).forEach((t=>{Rw(e.named[t])&&(e.named[t]=Iw(e.named[t]))}))}(c);let[y,v,b]=f?[l,m,s[m]||{}]:Zx(e,l,m,a,p,u),_=y,w=l;if(f||Rw(_)||Jx(_)||g&&(_=h,w=_),!(f||(Rw(_)||Jx(_))&&Rw(v)))return r?Ix:l;let x=!1;const A=Jx(_)?_:eA(e,l,v,_,w,(()=>{x=!0}));if(x)return _;const E=function(e,t,n,o){const{modifiers:r,pluralRules:i,messageResolver:a,fallbackLocale:s,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,p=o=>{let r=a(n,o);if(null==r&&u){const[,,e]=Zx(u,o,t,s,l,c);r=a(e,o)}if(Rw(r)){let n=!1;const i=eA(e,o,t,r,o,(()=>{n=!0}));return n?Gx:i}return Jx(r)?r:Gx},d={locale:t,modifiers:r,pluralRules:i,messages:p};e.processor&&(d.processor=e.processor);o.list&&(d.list=o.list);o.named&&(d.named=o.named);kw(o.plural)&&(d.pluralIndex=o.plural);return d}(e,v,b,c),S=function(e,t,n){const o=t(n);return o}(0,A,Tx(E));return o?o(S,l):S}function Zx(e,t,n,o,r,i){const{messages:a,onWarn:s,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let p,d={},f=null;for(let h=0;ho;return e.locale=n,e.key=t,e}const l=a(o,function(e,t,n,o,r,i){return{warnHtmlMessage:r,onError:e=>{throw i&&i(e),e},onCacheKey:e=>Sw(t,n,e)}}(0,n,r,0,s,i));return l.locale=n,l.key=t,l.source=o,l}function tA(...e){const[t,n,o]=e,r={};if(!Rw(t)&&!kw(t)&&!Jx(t))throw Yx(Xx.INVALID_ARGUMENT);const i=kw(t)?String(t):(Jx(t),t);return kw(n)?r.plural=n:Rw(n)?r.default=n:Uw(n)&&!Mw(n)?r.named=n:jw(n)&&(r.list=n),kw(o)?r.plural=o:Rw(o)?r.default=o:Uw(o)&&Ow(r,o),[i,r]}function nA(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:r,onWarn:i,localeFallbacker:a}=e,{__datetimeFormatters:s}=e,[l,c,u,p]=rA(...t);Fw(u.missingWarn)?u.missingWarn:e.missingWarn;Fw(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const d=!!u.part,f=Rw(u.locale)?u.locale:e.locale,h=a(e,r,f);if(!Rw(l)||""===l)return new Intl.DateTimeFormat(f,p).format(c);let g,m={},y=null;for(let _=0;_{oA.includes(e)?s[e]=n[e]:i[e]=n[e]})),Rw(o)?i.locale=o:Uw(o)&&(s=o),Uw(r)&&(s=r),[i.key||"",a,i,s]}function iA(e,t,n){const o=e;for(const r in n){const e=`${t}__${r}`;o.__datetimeFormatters.has(e)&&o.__datetimeFormatters.delete(e)}}function aA(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:r,onWarn:i,localeFallbacker:a}=e,{__numberFormatters:s}=e,[l,c,u,p]=lA(...t);Fw(u.missingWarn)?u.missingWarn:e.missingWarn;Fw(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const d=!!u.part,f=Rw(u.locale)?u.locale:e.locale,h=a(e,r,f);if(!Rw(l)||""===l)return new Intl.NumberFormat(f,p).format(c);let g,m={},y=null;for(let _=0;_{sA.includes(e)?a[e]=n[e]:i[e]=n[e]})),Rw(o)?i.locale=o:Uw(o)&&(a=o),Uw(r)&&(a=r),[i.key||"",s,i,a]}function cA(e,t,n){const o=e;for(const r in n){const e=`${t}__${r}`;o.__numberFormatters.has(e)&&o.__numberFormatters.delete(e)}} +/*! + * vue-i18n v9.2.2 + * (c) 2022 kazuya kawaguchi + * Released under the MIT License. + */const uA="9.2.2";let pA=Vw.__EXTEND_POINT__;const dA=()=>++pA,fA={UNEXPECTED_RETURN_TYPE:pA,INVALID_ARGUMENT:dA(),MUST_BE_CALL_SETUP_TOP:dA(),NOT_INSLALLED:dA(),NOT_AVAILABLE_IN_LEGACY_MODE:dA(),REQUIRED_VALUE:dA(),INVALID_VALUE:dA(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:dA(),NOT_INSLALLED_WITH_PROVIDE:dA(),UNEXPECTED_ERROR:dA(),NOT_COMPATIBLE_LEGACY_VUE_I18N:dA(),BRIDGE_SUPPORT_VUE_2_ONLY:dA(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:dA(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:dA(),__EXTEND_POINT__:dA()};function hA(e,...t){return Ww(e,null,void 0)}const gA=Ew("__transrateVNode"),mA=Ew("__datetimeParts"),yA=Ew("__numberParts"),vA=Ew("__setPluralRules");Ew("__intlifyMeta");const bA=Ew("__injectWithOption");function _A(e){if(!zw(e))return e;for(const t in e)if(Nw(e,t))if(t.includes(".")){const n=t.split("."),o=n.length-1;let r=e;for(let e=0;e{if("locale"in e&&"resource"in e){const{locale:t,resource:n}=e;t?(a[t]=a[t]||{},AA(n,a[t])):AA(n,a)}else Rw(e)&&AA(JSON.parse(e),a)})),null==r&&i)for(const s in a)Nw(a,s)&&_A(a[s]);return a}const xA=e=>!zw(e)||jw(e);function AA(e,t){if(xA(e)||xA(t))throw hA(fA.INVALID_VALUE);for(const n in e)Nw(e,n)&&(xA(e[n])||xA(t[n])?t[n]=e[n]:AA(e[n],t[n]))}function EA(e,t,n){let o=zw(t.messages)?t.messages:{};"__i18nGlobal"in n&&(o=wA(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const r=Object.keys(o);if(r.length&&r.forEach((t=>{e.mergeLocaleMessage(t,o[t])})),zw(t.datetimeFormats)){const n=Object.keys(t.datetimeFormats);n.length&&n.forEach((n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])}))}if(zw(t.numberFormats)){const n=Object.keys(t.numberFormats);n.length&&n.forEach((n=>{e.mergeNumberFormat(n,t.numberFormats[n])}))}}function SA(e){return Hi(Si,null,e,0)}let TA=0;function kA(e){return(t,n,o,r)=>e(n,o,ea()||void 0,r)}function CA(e={},t){const{__root:n}=e,o=void 0===n;let r=!Fw(e.inheritLocale)||e.inheritLocale;const i=Wn(n&&r?n.locale.value:Rw(e.locale)?e.locale:Bx),a=Wn(n&&r?n.fallbackLocale.value:Rw(e.fallbackLocale)||jw(e.fallbackLocale)||Uw(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:i.value),s=Wn(wA(i.value,e)),l=Wn(Uw(e.datetimeFormats)?e.datetimeFormats:{[i.value]:{}}),c=Wn(Uw(e.numberFormats)?e.numberFormats:{[i.value]:{}});let u=n?n.missingWarn:!Fw(e.missingWarn)&&!Pw(e.missingWarn)||e.missingWarn,p=n?n.fallbackWarn:!Fw(e.fallbackWarn)&&!Pw(e.fallbackWarn)||e.fallbackWarn,d=n?n.fallbackRoot:!Fw(e.fallbackRoot)||e.fallbackRoot,f=!!e.fallbackFormat,h=Dw(e.missing)?e.missing:null,g=Dw(e.missing)?kA(e.missing):null,m=Dw(e.postTranslation)?e.postTranslation:null,y=n?n.warnHtmlMessage:!Fw(e.warnHtmlMessage)||e.warnHtmlMessage,v=!!e.escapeParameter;const b=n?n.modifiers:Uw(e.modifiers)?e.modifiers:{};let _,w=e.pluralRules||n&&n.pluralRules;_=(()=>{const t={version:uA,locale:i.value,fallbackLocale:a.value,messages:s.value,modifiers:b,pluralRules:w,missing:null===g?void 0:g,missingWarn:u,fallbackWarn:p,fallbackFormat:f,unresolving:!0,postTranslation:null===m?void 0:m,warnHtmlMessage:y,escapeParameter:v,messageResolver:e.messageResolver,__meta:{framework:"vue"}};t.datetimeFormats=l.value,t.numberFormats=c.value,t.__datetimeFormatters=Uw(_)?_.__datetimeFormatters:void 0,t.__numberFormatters=Uw(_)?_.__numberFormatters:void 0;return qx(t)})(),Ux(_,i.value,a.value);const x=ua({get:()=>i.value,set:e=>{i.value=e,_.locale=i.value}}),A=ua({get:()=>a.value,set:e=>{a.value=e,_.fallbackLocale=a.value,Ux(_,i.value,e)}}),E=ua((()=>s.value)),S=ua((()=>l.value)),T=ua((()=>c.value));const k=(e,t,o,r,u,p)=>{let f;if(i.value,a.value,s.value,l.value,c.value,f=e(_),kw(f)&&f===Ix){const[e,o]=t();return n&&d?r(n):u(e)}if(p(f))return f;throw hA(fA.UNEXPECTED_RETURN_TYPE)};function C(...e){return k((t=>Reflect.apply(Kx,null,[t,...e])),(()=>tA(...e)),"translate",(t=>Reflect.apply(t.t,t,[...e])),(e=>e),(e=>Rw(e)))}const P={normalize:function(e){return e.map((e=>Rw(e)||kw(e)||Fw(e)?SA(String(e)):e))},interpolate:e=>e,type:"vnode"};function M(e){return s.value[e]||{}}TA++,n&&xw&&(zo(n.locale,(e=>{r&&(i.value=e,_.locale=e,Ux(_,i.value,a.value))})),zo(n.fallbackLocale,(e=>{r&&(a.value=e,_.fallbackLocale=e,Ux(_,i.value,a.value))})));const L={id:TA,locale:x,fallbackLocale:A,get inheritLocale(){return r},set inheritLocale(e){r=e,e&&n&&(i.value=n.locale.value,a.value=n.fallbackLocale.value,Ux(_,i.value,a.value))},get availableLocales(){return Object.keys(s.value).sort()},messages:E,get modifiers(){return b},get pluralRules(){return w||{}},get isGlobal(){return o},get missingWarn(){return u},set missingWarn(e){u=e,_.missingWarn=u},get fallbackWarn(){return p},set fallbackWarn(e){p=e,_.fallbackWarn=p},get fallbackRoot(){return d},set fallbackRoot(e){d=e},get fallbackFormat(){return f},set fallbackFormat(e){f=e,_.fallbackFormat=f},get warnHtmlMessage(){return y},set warnHtmlMessage(e){y=e,_.warnHtmlMessage=e},get escapeParameter(){return v},set escapeParameter(e){v=e,_.escapeParameter=e},t:C,getLocaleMessage:M,setLocaleMessage:function(e,t){s.value[e]=t,_.messages=s.value},mergeLocaleMessage:function(e,t){s.value[e]=s.value[e]||{},AA(t,s.value[e]),_.messages=s.value},getPostTranslationHandler:function(){return Dw(m)?m:null},setPostTranslationHandler:function(e){m=e,_.postTranslation=e},getMissingHandler:function(){return h},setMissingHandler:function(e){null!==e&&(g=kA(e)),h=e,_.missing=g},[vA]:function(e){w=e,_.pluralRules=w}};return L.datetimeFormats=S,L.numberFormats=T,L.rt=function(...e){const[t,n,o]=e;if(o&&!zw(o))throw hA(fA.INVALID_ARGUMENT);return C(t,n,Ow({resolvedMessage:!0},o||{}))},L.te=function(e,t){const n=M(Rw(t)?t:i.value);return null!==_.messageResolver(n,e)},L.tm=function(e){const t=function(e){let t=null;const n=Cx(_,a.value,i.value);for(let o=0;oReflect.apply(nA,null,[t,...e])),(()=>rA(...e)),"datetime format",(t=>Reflect.apply(t.d,t,[...e])),(()=>Nx),(e=>Rw(e)))},L.n=function(...e){return k((t=>Reflect.apply(aA,null,[t,...e])),(()=>lA(...e)),"number format",(t=>Reflect.apply(t.n,t,[...e])),(()=>Nx),(e=>Rw(e)))},L.getDateTimeFormat=function(e){return l.value[e]||{}},L.setDateTimeFormat=function(e,t){l.value[e]=t,_.datetimeFormats=l.value,iA(_,e,t)},L.mergeDateTimeFormat=function(e,t){l.value[e]=Ow(l.value[e]||{},t),_.datetimeFormats=l.value,iA(_,e,t)},L.getNumberFormat=function(e){return c.value[e]||{}},L.setNumberFormat=function(e,t){c.value[e]=t,_.numberFormats=c.value,cA(_,e,t)},L.mergeNumberFormat=function(e,t){c.value[e]=Ow(c.value[e]||{},t),_.numberFormats=c.value,cA(_,e,t)},L[bA]=e.__injectWithOption,L[gA]=function(...e){return k((t=>{let n;const o=t;try{o.processor=P,n=Reflect.apply(Kx,null,[o,...e])}finally{o.processor=null}return n}),(()=>tA(...e)),"translate",(t=>t[gA](...e)),(e=>[SA(e)]),(e=>jw(e)))},L[mA]=function(...e){return k((t=>Reflect.apply(nA,null,[t,...e])),(()=>rA(...e)),"datetime format",(t=>t[mA](...e)),(()=>[]),(e=>Rw(e)||jw(e)))},L[yA]=function(...e){return k((t=>Reflect.apply(aA,null,[t,...e])),(()=>lA(...e)),"number format",(t=>t[yA](...e)),(()=>[]),(e=>Rw(e)||jw(e)))},L}function PA(e={},t){{const t=CA(function(e){const t=Rw(e.locale)?e.locale:Bx,n=Rw(e.fallbackLocale)||jw(e.fallbackLocale)||Uw(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:t,o=Dw(e.missing)?e.missing:void 0,r=!Fw(e.silentTranslationWarn)&&!Pw(e.silentTranslationWarn)||!e.silentTranslationWarn,i=!Fw(e.silentFallbackWarn)&&!Pw(e.silentFallbackWarn)||!e.silentFallbackWarn,a=!Fw(e.fallbackRoot)||e.fallbackRoot,s=!!e.formatFallbackMessages,l=Uw(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Dw(e.postTranslation)?e.postTranslation:void 0,p=!Rw(e.warnHtmlInMessage)||"off"!==e.warnHtmlInMessage,d=!!e.escapeParameterHtml,f=!Fw(e.sync)||e.sync;let h=e.messages;if(Uw(e.sharedMessages)){const t=e.sharedMessages;h=Object.keys(t).reduce(((e,n)=>{const o=e[n]||(e[n]={});return Ow(o,t[n]),e}),h||{})}const{__i18n:g,__root:m,__injectWithOption:y}=e,v=e.datetimeFormats,b=e.numberFormats;return{locale:t,fallbackLocale:n,messages:h,flatJson:e.flatJson,datetimeFormats:v,numberFormats:b,missing:o,missingWarn:r,fallbackWarn:i,fallbackRoot:a,fallbackFormat:s,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:p,escapeParameter:d,messageResolver:e.messageResolver,inheritLocale:f,__i18n:g,__root:m,__injectWithOption:y}}(e)),n={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get formatter(){return{interpolate:()=>[]}},set formatter(e){},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return Fw(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=Fw(e)?!e:e},get silentFallbackWarn(){return Fw(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=Fw(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(e){t.warnHtmlMessage="off"!==e},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(e){},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...e){const[n,o,r]=e,i={};let a=null,s=null;if(!Rw(n))throw hA(fA.INVALID_ARGUMENT);const l=n;return Rw(o)?i.locale=o:jw(o)?a=o:Uw(o)&&(s=o),jw(r)?a=r:Uw(r)&&(s=r),Reflect.apply(t.t,t,[l,a||s||{},i])},rt:(...e)=>Reflect.apply(t.rt,t,[...e]),tc(...e){const[n,o,r]=e,i={plural:1};let a=null,s=null;if(!Rw(n))throw hA(fA.INVALID_ARGUMENT);const l=n;return Rw(o)?i.locale=o:kw(o)?i.plural=o:jw(o)?a=o:Uw(o)&&(s=o),Rw(r)?i.locale=r:jw(r)?a=r:Uw(r)&&(s=r),Reflect.apply(t.t,t,[l,a||s||{},i])},te:(e,n)=>t.te(e,n),tm:e=>t.tm(e),getLocaleMessage:e=>t.getLocaleMessage(e),setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d:(...e)=>Reflect.apply(t.d,t,[...e]),getDateTimeFormat:e=>t.getDateTimeFormat(e),setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n:(...e)=>Reflect.apply(t.n,t,[...e]),getNumberFormat:e=>t.getNumberFormat(e),setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)},getChoiceIndex:(e,t)=>-1,__onComponentInstanceCreated(t){const{componentInstanceCreatedListener:o}=e;o&&o(t,n)}};return n}}const MA={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>"parent"===e||"global"===e,default:"parent"},i18n:{type:Object}};function LA(e){return Ei}const OA={name:"i18n-t",props:Ow({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>kw(e)||!isNaN(e)}},MA),setup(e,t){const{slots:n,attrs:o}=t,r=e.i18n||qA({useScope:e.scope,__useComponent:!0});return()=>{const i=Object.keys(n).filter((e=>"_"!==e)),a={};e.locale&&(a.locale=e.locale),void 0!==e.plural&&(a.plural=Rw(e.plural)?+e.plural:e.plural);const s=function({slots:e},t){if(1===t.length&&"default"===t[0])return(e.default?e.default():[]).reduce(((e,t)=>[...e,...jw(t.children)?t.children:[t]]),[]);return t.reduce(((t,n)=>{const o=e[n];return o&&(t[n]=o()),t}),{})}(t,i),l=r[gA](e.keypath,s,a),c=Ow({},o);return pa(Rw(e.tag)||zw(e.tag)?e.tag:LA(),c,l)}}};function IA(e,t,n,o){const{slots:r,attrs:i}=t;return()=>{const t={part:!0};let a={};e.locale&&(t.locale=e.locale),Rw(e.format)?t.key=e.format:zw(e.format)&&(Rw(e.format.key)&&(t.key=e.format.key),a=Object.keys(e.format).reduce(((t,o)=>n.includes(o)?Ow({},t,{[o]:e.format[o]}):t),{}));const s=o(e.value,t,a);let l=[t.key];jw(s)?l=s.map(((e,t)=>{const n=r[e.type],o=n?n({[e.type]:e.value,index:t,parts:s}):[e.value];var i;return jw(i=o)&&!Rw(i[0])&&(o[0].key=`${e.type}-${t}`),o})):Rw(s)&&(l=[s]);const c=Ow({},i);return pa(Rw(e.tag)||zw(e.tag)?e.tag:LA(),c,l)}}const BA={name:"i18n-n",props:Ow({value:{type:Number,required:!0},format:{type:[String,Object]}},MA),setup(e,t){const n=e.i18n||qA({useScope:"parent",__useComponent:!0});return IA(e,t,sA,((...e)=>n[yA](...e)))}},NA={name:"i18n-d",props:Ow({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},MA),setup(e,t){const n=e.i18n||qA({useScope:"parent",__useComponent:!0});return IA(e,t,oA,((...e)=>n[mA](...e)))}};function jA(e){if(Rw(e))return{path:e};if(Uw(e)){if(!("path"in e))throw hA(fA.REQUIRED_VALUE);return e}throw hA(fA.INVALID_VALUE)}function DA(e){const{path:t,locale:n,args:o,choice:r,plural:i}=e,a={},s=o||{};return Rw(n)&&(a.locale=n),kw(r)&&(a.plural=r),kw(i)&&(a.plural=i),[t,s,a]}function RA(e,t,...n){const o=Uw(n[0])?n[0]:{},r=!!o.useI18nComponentName;(!Fw(o.globalInstall)||o.globalInstall)&&(e.component(r?"i18n":OA.name,OA),e.component(BA.name,BA),e.component(NA.name,NA)),e.directive("t",function(e){const t=t=>{const{instance:n,modifiers:o,value:r}=t;if(!n||!n.$)throw hA(fA.UNEXPECTED_ERROR);const i=function(e,t){const n=e;if("composition"===e.mode)return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return null!=o?o.__composer:e.global.__composer}}(e,n.$),a=jA(r);return[Reflect.apply(i.t,i,[...DA(a)]),i]};return{created:(n,o)=>{const[r,i]=t(o);xw&&e.global===i&&(n.__i18nWatcher=zo(i.locale,(()=>{o.instance&&o.instance.$forceUpdate()}))),n.__composer=i,n.textContent=r},unmounted:e=>{xw&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){const n=e.__composer,o=jA(t);e.textContent=Reflect.apply(n.t,n,[...DA(o)])}},getSSRProps:e=>{const[n]=t(e);return{textContent:n}}}}(t))}function FA(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[vA](t.pluralizationRules||e.pluralizationRules);const n=wA(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach((t=>e.mergeLocaleMessage(t,n[t]))),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach((n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n]))),t.numberFormats&&Object.keys(t.numberFormats).forEach((n=>e.mergeNumberFormat(n,t.numberFormats[n]))),e}const zA=Ew("global-vue-i18n");function qA(e={}){const t=ea();if(null==t)throw hA(fA.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&null!=t.appContext.app&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw hA(fA.NOT_INSLALLED);const n=function(e){{const t=Do(e.isCE?zA:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw hA(e.isCE?fA.NOT_INSLALLED_WITH_PROVIDE:fA.UNEXPECTED_ERROR);return t}}(t),o=function(e){return"composition"===e.mode?e.global:e.global.__composer}(n),r=function(e){return e.type}(t),i=function(e,t){return Mw(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}(e,r);if("legacy"===n.mode&&!e.__useComponent){if(!n.allowComposition)throw hA(fA.NOT_AVAILABLE_IN_LEGACY_MODE);return function(e,t,n,o={}){const r="local"===t,i=$n(null);if(r&&e.proxy&&!e.proxy.$options.i18n&&!e.proxy.$options.__i18n)throw hA(fA.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const a=!Fw(o.inheritLocale)||o.inheritLocale,s=Wn(r&&a?n.locale.value:Rw(o.locale)?o.locale:Bx),l=Wn(r&&a?n.fallbackLocale.value:Rw(o.fallbackLocale)||jw(o.fallbackLocale)||Uw(o.fallbackLocale)||!1===o.fallbackLocale?o.fallbackLocale:s.value),c=Wn(wA(s.value,o)),u=Wn(Uw(o.datetimeFormats)?o.datetimeFormats:{[s.value]:{}}),p=Wn(Uw(o.numberFormats)?o.numberFormats:{[s.value]:{}}),d=r?n.missingWarn:!Fw(o.missingWarn)&&!Pw(o.missingWarn)||o.missingWarn,f=r?n.fallbackWarn:!Fw(o.fallbackWarn)&&!Pw(o.fallbackWarn)||o.fallbackWarn,h=r?n.fallbackRoot:!Fw(o.fallbackRoot)||o.fallbackRoot,g=!!o.fallbackFormat,m=Dw(o.missing)?o.missing:null,y=Dw(o.postTranslation)?o.postTranslation:null,v=r?n.warnHtmlMessage:!Fw(o.warnHtmlMessage)||o.warnHtmlMessage,b=!!o.escapeParameter,_=r?n.modifiers:Uw(o.modifiers)?o.modifiers:{},w=o.pluralRules||r&&n.pluralRules;function x(){return[s.value,l.value,c.value,u.value,p.value]}const A=ua({get:()=>i.value?i.value.locale.value:s.value,set:e=>{i.value&&(i.value.locale.value=e),s.value=e}}),E=ua({get:()=>i.value?i.value.fallbackLocale.value:l.value,set:e=>{i.value&&(i.value.fallbackLocale.value=e),l.value=e}}),S=ua((()=>i.value?i.value.messages.value:c.value)),T=ua((()=>u.value)),k=ua((()=>p.value));function C(){return i.value?i.value.getPostTranslationHandler():y}function P(e){i.value&&i.value.setPostTranslationHandler(e)}function M(){return i.value?i.value.getMissingHandler():m}function L(e){i.value&&i.value.setMissingHandler(e)}function O(e){return x(),e()}function I(...e){return i.value?O((()=>Reflect.apply(i.value.t,null,[...e]))):O((()=>""))}function B(...e){return i.value?Reflect.apply(i.value.rt,null,[...e]):""}function N(...e){return i.value?O((()=>Reflect.apply(i.value.d,null,[...e]))):O((()=>""))}function j(...e){return i.value?O((()=>Reflect.apply(i.value.n,null,[...e]))):O((()=>""))}function D(e){return i.value?i.value.tm(e):{}}function R(e,t){return!!i.value&&i.value.te(e,t)}function F(e){return i.value?i.value.getLocaleMessage(e):{}}function z(e,t){i.value&&(i.value.setLocaleMessage(e,t),c.value[e]=t)}function q(e,t){i.value&&i.value.mergeLocaleMessage(e,t)}function H(e){return i.value?i.value.getDateTimeFormat(e):{}}function U(e,t){i.value&&(i.value.setDateTimeFormat(e,t),u.value[e]=t)}function V(e,t){i.value&&i.value.mergeDateTimeFormat(e,t)}function W(e){return i.value?i.value.getNumberFormat(e):{}}function $(e,t){i.value&&(i.value.setNumberFormat(e,t),p.value[e]=t)}function Q(e,t){i.value&&i.value.mergeNumberFormat(e,t)}const X={get id(){return i.value?i.value.id:-1},locale:A,fallbackLocale:E,messages:S,datetimeFormats:T,numberFormats:k,get inheritLocale(){return i.value?i.value.inheritLocale:a},set inheritLocale(e){i.value&&(i.value.inheritLocale=e)},get availableLocales(){return i.value?i.value.availableLocales:Object.keys(c.value)},get modifiers(){return i.value?i.value.modifiers:_},get pluralRules(){return i.value?i.value.pluralRules:w},get isGlobal(){return!!i.value&&i.value.isGlobal},get missingWarn(){return i.value?i.value.missingWarn:d},set missingWarn(e){i.value&&(i.value.missingWarn=e)},get fallbackWarn(){return i.value?i.value.fallbackWarn:f},set fallbackWarn(e){i.value&&(i.value.missingWarn=e)},get fallbackRoot(){return i.value?i.value.fallbackRoot:h},set fallbackRoot(e){i.value&&(i.value.fallbackRoot=e)},get fallbackFormat(){return i.value?i.value.fallbackFormat:g},set fallbackFormat(e){i.value&&(i.value.fallbackFormat=e)},get warnHtmlMessage(){return i.value?i.value.warnHtmlMessage:v},set warnHtmlMessage(e){i.value&&(i.value.warnHtmlMessage=e)},get escapeParameter(){return i.value?i.value.escapeParameter:b},set escapeParameter(e){i.value&&(i.value.escapeParameter=e)},t:I,getPostTranslationHandler:C,setPostTranslationHandler:P,getMissingHandler:M,setMissingHandler:L,rt:B,d:N,n:j,tm:D,te:R,getLocaleMessage:F,setLocaleMessage:z,mergeLocaleMessage:q,getDateTimeFormat:H,setDateTimeFormat:U,mergeDateTimeFormat:V,getNumberFormat:W,setNumberFormat:$,mergeNumberFormat:Q};function Y(e){e.locale.value=s.value,e.fallbackLocale.value=l.value,Object.keys(c.value).forEach((t=>{e.mergeLocaleMessage(t,c.value[t])})),Object.keys(u.value).forEach((t=>{e.mergeDateTimeFormat(t,u.value[t])})),Object.keys(p.value).forEach((t=>{e.mergeNumberFormat(t,p.value[t])})),e.escapeParameter=b,e.fallbackFormat=g,e.fallbackRoot=h,e.fallbackWarn=f,e.missingWarn=d,e.warnHtmlMessage=v}return _r((()=>{if(null==e.proxy||null==e.proxy.$i18n)throw hA(fA.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const n=i.value=e.proxy.$i18n.__composer;"global"===t?(s.value=n.locale.value,l.value=n.fallbackLocale.value,c.value=n.messages.value,u.value=n.datetimeFormats.value,p.value=n.numberFormats.value):r&&Y(n)})),X}(t,i,o,e)}if("global"===i)return EA(o,e,r),o;if("parent"===i){let r=function(e,t,n=!1){let o=null;const r=t.root;let i=t.parent;for(;null!=i;){const t=e;if("composition"===e.mode)o=t.__getInstance(i);else{const e=t.__getInstance(i);null!=e&&(o=e.__composer,n&&o&&!o[bA]&&(o=null))}if(null!=o)break;if(r===i)break;i=i.parent}return o}(n,t,e.__useComponent);return null==r&&(r=o),r}const a=n;let s=a.__getInstance(t);if(null==s){const n=Ow({},e);"__i18n"in r&&(n.__i18n=r.__i18n),o&&(n.__root=o),s=CA(n),function(e,t,n){wr((()=>{}),t),Sr((()=>{e.__deleteInstance(t)}),t)}(a,t),a.__setInstance(t,s)}return s}const HA=["locale","fallbackLocale","availableLocales"],UA=["t","rt","d","n","tm"];Dx=function(e,t={}){{const n=(t.onCacheKey||Vx)(e),o=Wx[n];if(o)return o;let r=!1;const i=t.onError||$w;t.onError=e=>{r=!0,i(e)};const{code:a}=function(e,t={}){const n=Ow({},t),o=sx(n).parse(e);return px(o,n),fx(o,n)}(e,t),s=new Function(`return ${a}`)();return r?s:Wx[n]=s}},Rx=function(e,t){if(!zw(e))return null;let n=vx.get(t);if(n||(n=function(e){const t=[];let n,o,r,i,a,s,l,c=-1,u=0,p=0;const d=[];function f(){const t=e[c+1];if(5===u&&"'"===t||6===u&&'"'===t)return c++,r="\\"+t,d[0](),!0}for(d[0]=()=>{void 0===o?o=r:o+=r},d[1]=()=>{void 0!==o&&(t.push(o),o=void 0)},d[2]=()=>{d[0](),p++},d[3]=()=>{if(p>0)p--,u=4,d[0]();else{if(p=0,void 0===o)return!1;if(o=yx(o),!1===o)return!1;d[1]()}};null!==u;)if(c++,n=e[c],"\\"!==n||!f()){if(i=mx(n),l=hx[u],a=l[i]||l.l||8,8===a)return;if(u=a[0],void 0!==a[1]&&(s=d[a[1]],s&&(r=n,!1===s())))return;if(7===u)return t}}(t),n&&vx.set(t,n)),!n)return null;const o=n.length;let r=e,i=0;for(;i{const n=e[t];return n?"function"==typeof n?n():Promise.resolve(n):new Promise(((e,n)=>{("function"==typeof queueMicrotask?queueMicrotask:setTimeout)(n.bind(null,new Error("Unknown variable dynamic import: "+t)))}))};const WA={requestFail:"请求失败",notInDomainList:"不在request 合法域名列表中",baseUrlError:" 接口请求错误,请检查VITE_APP_BASE_URL参数配置或者伪静态配置",currency:"¥",getSmsCode:"获取验证码",smsCodeChangeText:"秒后重新获取",captchaTitle:"请完成验证",confirm:"确认",cancel:"取消",save:"保存",delete:"删除",captchaPlaceholder:"请输入验证码",mobilePlaceholder:"请输入手机号码",mobileError:"请输入正确的手机号",codePlaceholder:"请输入手机验证码",memberCenter:"个人中心",userAgreement:"用户协议",privacyAgreement:"隐私协议",nickname:"昵称",nicknamePlaceholder:"请输入昵称",headimg:"头像",headimgPlaceholder:"请设置头像",getAvatarNickname:"获取您的昵称头像",getAvatarNicknameTips:"获取用户头像、昵称完善个人资料,主要用于向用户提供具有辨识度的用户中心界面",point:"积分",balance:"余额",login:"登录",register:"注册",complete:"完成",close:"关闭",pay:{orderInfo:"订单信息",confirmPay:"确认支付",payTitle:"确认付款",notHavePayType:"没有可用的支付方式",notObtainedInfo:"未获取到支付信息",paymentDocuments:"该支付单据",paySuccess:"支付成功",payFail:"支付失败",completePay:"已完成支付",incompletePay:"未完成支付",getting:"获取支付结果中"},myBalance:"我的余额",myPoint:"我的积分",customerService:"联系客服",siteClose:"站点已关闭",noSite:"站点不存在",scenic:"景点",seeMore:"查看更多",way:"线路",hotel:"酒店",rise:"起",cardReserve:"项目预约",card:"办理次卡",memberName:"会员名称",memberCode:"会员码",reserve:"预约",reserveSuccess:"预约成功",cardLink:"次卡",myLink:"我的",siteStatus:"站点状态",reserveBtn:"去抢购",cardBtn:"办理",soldOut:"已售",unpaidOrder:"待支付",waitingOrder:"待使用",remainOrder:"已完成",allOrder:"全部订单",myOrder:"我的订单",orderNo:"订单号",actualPayment:"实付款",orderClose:"关闭订单",orderFinish:"订单完成",orderDetail:"详情",wxPrivacyPopup:{title:"用户隐私保护提示",descBefore:"感谢您使用本小程序,在使用前您应当阅读并同意",descAfter:"当点击同意并继续时,即表示您已理解并同意该条款内容,该条款将对您产生法律约束力;如您不同意,将无法继续使用小程序相关功能。",disagree:"不同意",agree:"同意并继续",contractName:"用户隐私保护指引",disagreeDesc:"未同意隐私协议,无法使用相关功能"},starLevel:"星级",star:"星"},$A={index:"Index"};let QA=function(e={},t){const n=!Fw(e.legacy)||e.legacy,o=!Fw(e.globalInjection)||e.globalInjection,r=!n||!!e.allowComposition,i=new Map,[a,s]=function(e,t,n){const o=xt();{const n=t?o.run((()=>PA(e))):o.run((()=>CA(e)));if(null==n)throw hA(fA.UNEXPECTED_ERROR);return[o,n]}}(e,n),l=Ew("");{const e={get mode(){return n?"legacy":"composition"},get allowComposition(){return r},async install(t,...r){t.__VUE_I18N_SYMBOL__=l,t.provide(t.__VUE_I18N_SYMBOL__,e),!n&&o&&function(e,t){const n=Object.create(null);HA.forEach((e=>{const o=Object.getOwnPropertyDescriptor(t,e);if(!o)throw hA(fA.UNEXPECTED_ERROR);const r=Vn(o.value)?{get:()=>o.value.value,set(e){o.value.value=e}}:{get:()=>o.get&&o.get()};Object.defineProperty(n,e,r)})),e.config.globalProperties.$i18n=n,UA.forEach((n=>{const o=Object.getOwnPropertyDescriptor(t,n);if(!o||!o.value)throw hA(fA.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${n}`,o)}))}(t,e.global),RA(t,e,...r),n&&t.mixin(function(e,t,n){return{beforeCreate(){const o=ea();if(!o)throw hA(fA.UNEXPECTED_ERROR);const r=this.$options;if(r.i18n){const n=r.i18n;r.__i18n&&(n.__i18n=r.__i18n),n.__root=t,this===this.$root?this.$i18n=FA(e,n):(n.__injectWithOption=!0,this.$i18n=PA(n))}else r.__i18n?this===this.$root?this.$i18n=FA(e,r):this.$i18n=PA({__i18n:r.__i18n,__injectWithOption:!0,__root:t}):this.$i18n=e;r.__i18nGlobal&&EA(t,r,r),e.__onComponentInstanceCreated(this.$i18n),n.__setInstance(o,this.$i18n),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$tc=(...e)=>this.$i18n.tc(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e)},mounted(){},unmounted(){const e=ea();if(!e)throw hA(fA.UNEXPECTED_ERROR);delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__deleteInstance(e),delete this.$i18n}}}(s,s.__composer,e));const i=t.unmount;t.unmount=()=>{e.dispose(),i()}},get global(){return s},dispose(){a.stop()},__instances:i,__getInstance:function(e){return i.get(e)||null},__setInstance:function(e,t){i.set(e,t)},__deleteInstance:function(e){i.delete(e)}};return e}}({locale:af(),globalInjection:!0,messages:{"zh-Hans":WA,en:$A}});const XA=new class{constructor(e){t(this,"i18n"),t(this,"loadLocale",[]),t(this,"path",""),t(this,"getFileKey",(e=>{const t=e.split("/");let n="app"==t[1]?t[1]:t[2],o="/"==e?"pages.index.index":e.replace("/","").replaceAll("/","."),r="";return"app"==n?(r=o.replace("app.",""),o=o.replace("app.","")):(r=o.replace("addon.",""),o=o.replace(`addon.${n}.`,"")),{file:o,fileKey:r,route:n}})),this.i18n=e}setI18nLanguage(e,t=""){this.i18n.mode,this.i18n.global.locale=e,t&&(this.path=t),sf(e)}async loadLocaleMessages(e,t){try{const{route:n,file:r,fileKey:i}=this.getFileKey(e);if(this.loadLocale.includes(`${i}.${t}`))return this.setI18nLanguage(t,r),go();this.loadLocale.push(`${i}.${t}`);const a=await("app"==n?VA(Object.assign({"../app/locale/en/pages.setting.index.json":()=>o((()=>import("./app-locale-en-pages.setting.index.7f2a9cf4.js")),[]),"../app/locale/zh-Hans/pages.article.detail.json":()=>o((()=>import("./app-locale-zh-Hans-pages.article.detail.7b286748.js")),[]),"../app/locale/zh-Hans/pages.article.list.json":()=>o((()=>import("./app-locale-zh-Hans-pages.article.list.079553e7.js")),[]),"../app/locale/zh-Hans/pages.auth.bind.json":()=>o((()=>import("./app-locale-zh-Hans-pages.auth.bind.356a10db.js")),[]),"../app/locale/zh-Hans/pages.auth.login.json":()=>o((()=>import("./app-locale-zh-Hans-pages.auth.login.0404bd09.js")),[]),"../app/locale/zh-Hans/pages.auth.register.json":()=>o((()=>import("./app-locale-zh-Hans-pages.auth.register.a5ee0e14.js")),[]),"../app/locale/zh-Hans/pages.auth.resetpwd.json":()=>o((()=>import("./app-locale-zh-Hans-pages.auth.resetpwd.75e76a8e.js")),[]),"../app/locale/zh-Hans/pages.index.develop.json":()=>o((()=>import("./app-locale-zh-Hans-pages.index.develop.ce9b7062.js")),[]),"../app/locale/zh-Hans/pages.member.account.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.account.a20f7aba.js")),[]),"../app/locale/zh-Hans/pages.member.account_edit.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.account_edit.10181839.js")),[]),"../app/locale/zh-Hans/pages.member.address.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.address.634e4db8.js")),[]),"../app/locale/zh-Hans/pages.member.address_edit.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.address_edit.de036147.js")),[]),"../app/locale/zh-Hans/pages.member.apply_cash_out.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.apply_cash_out.7f44b3a1.js")),[]),"../app/locale/zh-Hans/pages.member.balance.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.balance.0a372d3c.js")),[]),"../app/locale/zh-Hans/pages.member.cash_out.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.cash_out.e9b5df1c.js")),[]),"../app/locale/zh-Hans/pages.member.cash_out_detail.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.cash_out_detail.587d5494.js")),[]),"../app/locale/zh-Hans/pages.member.commission.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.commission.c54dbf6f.js")),[]),"../app/locale/zh-Hans/pages.member.detailed_account.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.detailed_account.d74ec38a.js")),[]),"../app/locale/zh-Hans/pages.member.location_address_edit.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.location_address_edit.bca4dc8d.js")),[]),"../app/locale/zh-Hans/pages.member.personal.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.personal.ee5ae624.js")),[]),"../app/locale/zh-Hans/pages.member.recharge_record.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.recharge_record.20315090.js")),[]),"../app/locale/zh-Hans/pages.member.recharge_record_detail.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.recharge_record_detail.0c628f5f.js")),[]),"../app/locale/zh-Hans/pages.member.withdrawal_detail.json":()=>o((()=>import("./app-locale-zh-Hans-pages.member.withdrawal_detail.c63044ba.js")),[]),"../app/locale/zh-Hans/pages.setting.index.json":()=>o((()=>import("./app-locale-zh-Hans-pages.setting.index.81e854bb.js")),[])}),`../${n}/locale/${t}/${r}.json`):VA(Object.assign({}),`../addon/${n}/locale/${t}/${r}.json`));let s={};return Object.keys(a.default).forEach((e=>{s[`${i}.${e}`]=a.default[e]})),this.i18n.global.mergeLocaleMessage(t,s),this.setI18nLanguage(t,r),go()}catch(n){return console.log(n),this.setI18nLanguage(t),go()}}}(QA),YA={pages:[{path:"app/pages/index/index",style:{navigationBarTitleText:"%pages.index.index%",enablePullDownRefresh:!0}},{path:"app/pages/auth/agreement",style:{navigationBarTitleText:"%pages.auth.agreement%"}},{path:"app/pages/auth/bind",style:{navigationBarTitleText:"%pages.auth.bind%"}},{path:"app/pages/auth/login",style:{navigationBarTitleText:"%pages.auth.login%"}},{path:"app/pages/auth/register",style:{navigationBarTitleText:"%pages.auth.register%"}},{path:"app/pages/auth/resetpwd",style:{navigationBarTitleText:"%pages.auth.resetpwd%"}},{path:"app/pages/index/diy",style:{navigationBarTitleText:"%pages.index.diy%",enablePullDownRefresh:!0}},{path:"app/pages/index/close",style:{navigationBarTitleText:"%pages.index.close%"}},{path:"app/pages/index/nosite",style:{navigationBarTitleText:"%pages.index.nosite%"}},{path:"app/pages/member/apply_cash_out",style:{navigationBarTitleText:"%pages.member.apply_cash_out%"},needLogin:!0},{path:"app/pages/member/commission",style:{navigationBarTitleText:"%pages.member.commission%"},needLogin:!0},{path:"app/pages/member/balance",style:{navigationBarTitleText:"%pages.member.balance%"},needLogin:!0},{path:"app/pages/member/recharge_record",style:{navigationBarTitleText:"%pages.member.recharge_record%"},needLogin:!0},{path:"app/pages/member/recharge_record_detail",style:{navigationBarTitleText:"%pages.member.recharge_record_detail%"},needLogin:!0},{path:"app/pages/member/detailed_account",style:{navigationBarTitleText:"%pages.member.detailed_account%"}},{path:"app/pages/member/cash_out",style:{navigationBarTitleText:"%pages.member.cash_out%"}},{path:"app/pages/member/cash_out_detail",style:{navigationBarTitleText:"%pages.member.cash_out_detail%"}},{path:"app/pages/member/index",style:{navigationBarTitleText:"%pages.member.index%",enablePullDownRefresh:!0}},{path:"app/pages/member/personal",style:{navigationBarTitleText:"%pages.member.personal%"},needLogin:!0},{path:"app/pages/member/point",style:{navigationBarTitleText:"%pages.member.point%"},needLogin:!0},{path:"app/pages/member/account",style:{navigationBarTitleText:"%pages.member.account%"},needLogin:!0},{path:"app/pages/member/account_edit",style:{navigationBarTitleText:"%pages.member.account_edit%"},needLogin:!0},{path:"app/pages/member/address",style:{navigationBarTitleText:"%pages.member.address%"},needLogin:!0},{path:"app/pages/member/address_edit",style:{navigationBarTitleText:"%pages.member.address_edit%"},needLogin:!0},{path:"app/pages/member/location_address_edit",style:{navigationBarTitleText:"%pages.member.address_edit%"},needLogin:!0},{path:"app/pages/pay/browser",style:{navigationBarTitleText:"%pages.pay.browser%"}},{path:"app/pages/pay/result",style:{navigationBarTitleText:"%pages.pay.result%"}},{path:"app/pages/setting/index",style:{navigationBarTitleText:"%pages.setting.index%"},needLogin:!0},{path:"app/pages/webview/index",style:{navigationBarTitleText:"%pages.webview.index%"}},{path:"app/pages/index/develop",style:{navigationBarTitleText:"%pages.index.develop%"}}],globalStyle:{navigationBarTextStyle:"black",navigationBarTitleText:"",navigationBarBackgroundColor:"#ffffff",backgroundColor:"#F8F8F8",backgroundColorTop:"#F8F8F8",backgroundColorBottom:"#F8F8F8"},tabBar:{list:[{pagePath:"app/pages/index/index"},{pagePath:"app/pages/member/index"}]},uniIdRouter:{},easycom:{custom:{"^u-(.*)":"uview-plus/components/u-$1/u-$1.vue","diy-(.*)":"@/app/components/diy/$1/index.vue","fixed-(.*)":"@/app/components/fixed/$1/index.vue"}}};function GA(){return"/"+YA.pages[0].path}var JA=!1; +/*! + * pinia v2.0.36 + * (c) 2023 Eduardo San Martin Morote + * @license MIT + */let KA;const ZA=e=>KA=e,eE=Symbol();function tE(e){return e&&"object"==typeof e&&"[object Object]"===Object.prototype.toString.call(e)&&"function"!=typeof e.toJSON}var nE,oE;(oE=nE||(nE={})).direct="direct",oE.patchObject="patch object",oE.patchFunction="patch function";const rE="undefined"!=typeof window;function iE(){const e=xt(!0),t=e.run((()=>Wn({})));let n=[],o=[];const r=Fn({install(e){ZA(r),r._a=e,e.provide(eE,r),e.config.globalProperties.$pinia=r,o.forEach((e=>n.push(e))),o=[]},use(e){return this._a||JA?n.push(e):o.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const aE=()=>{};function sE(e,t,n,o=aE){e.push(t);const r=()=>{const n=e.indexOf(t);n>-1&&(e.splice(n,1),o())};var i;return!n&&At()&&(i=r,_t&&_t.cleanups.push(i)),r}function lE(e,...t){e.slice().forEach((e=>{e(...t)}))}function cE(e,t){e instanceof Map&&t instanceof Map&&t.forEach(((t,n)=>e.set(n,t))),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],r=e[n];tE(r)&&tE(o)&&e.hasOwnProperty(n)&&!Vn(o)&&!Bn(o)?e[n]=cE(r,o):e[n]=o}return e}const uE=Symbol();const{assign:pE}=Object;function dE(e,t,n,o){const{state:r,actions:i,getters:a}=t,s=n.state.value[e];let l;return l=fE(e,(function(){s||(n.state.value[e]=r?r():{});const t=function(e){const t=M(e)?new Array(e.length):{};for(const n in e)t[n]=Zn(e,n);return t}(n.state.value[e]);return pE(t,i,Object.keys(a||{}).reduce(((t,o)=>(t[o]=Fn(ua((()=>{ZA(n);const t=n._s.get(e);return a[o].call(t,t)}))),t)),{}))}),t,n,o,!0),l}function fE(e,t,n={},o,r,i){let a;const s=pE({actions:{}},n),l={deep:!0};let c,u,p,d=Fn([]),f=Fn([]);const h=o.state.value[e];let g;function m(t){let n;c=u=!1,"function"==typeof t?(t(o.state.value[e]),n={type:nE.patchFunction,storeId:e,events:p}):(cE(o.state.value[e],t),n={type:nE.patchObject,payload:t,storeId:e,events:p});const r=g=Symbol();go().then((()=>{g===r&&(c=!0)})),u=!0,lE(d,n,o.state.value[e])}i||h||(o.state.value[e]={}),Wn({});const y=i?function(){const{state:e}=n,t=e?e():{};this.$patch((e=>{pE(e,t)}))}:aE;function v(t,n){return function(){ZA(o);const r=Array.from(arguments),i=[],a=[];let s;lE(f,{args:r,name:t,store:b,after:function(e){i.push(e)},onError:function(e){a.push(e)}});try{s=n.apply(this&&this.$id===e?this:b,r)}catch(l){throw lE(a,l),l}return s instanceof Promise?s.then((e=>(lE(i,e),e))).catch((e=>(lE(a,e),Promise.reject(e)))):(lE(i,s),s)}}const b=Mn({_p:o,$id:e,$onAction:sE.bind(null,f),$patch:m,$reset:y,$subscribe(t,n={}){const r=sE(d,t,n.detached,(()=>i())),i=a.run((()=>zo((()=>o.state.value[e]),(o=>{("sync"===n.flush?u:c)&&t({storeId:e,type:nE.direct,events:p},o)}),pE({},l,n))));return r},$dispose:function(){a.stop(),d=[],f=[],o._s.delete(e)}});o._s.set(e,b);const _=o._e.run((()=>(a=xt(),a.run((()=>t())))));for(const A in _){const t=_[A];if(Vn(t)&&(!Vn(x=t)||!x.effect)||Bn(t))i||(!h||tE(w=t)&&w.hasOwnProperty(uE)||(Vn(t)?t.value=h[A]:cE(t,h[A])),o.state.value[e][A]=t);else if("function"==typeof t){const e=v(A,t);_[A]=e,s.actions[A]=t}}var w,x;return pE(b,_),pE(Rn(b),_),Object.defineProperty(b,"$state",{get:()=>o.state.value[e],set:e=>{m((t=>{pE(t,e)}))}}),o._p.forEach((e=>{pE(b,a.run((()=>e({store:b,app:o._a,pinia:o,options:s}))))})),h&&i&&n.hydrate&&n.hydrate(b.$state,h),c=!0,u=!0,b}function hE(e,t,n){let o,r;const i="function"==typeof t;function a(e,n){const a=ea();(e=e||a&&Do(eE,null))&&ZA(e),(e=KA)._s.has(o)||(i?fE(o,t,r,e):dE(o,r,e));return e._s.get(o)}return"string"==typeof e?(o=e,r=i?n:t):(r=e,o=e.id),a.$id=o,a}let gE="Store";function mE(e,t){return Array.isArray(t)?t.reduce(((t,n)=>(t[n]=function(){return e(this.$pinia)[n]},t)),{}):Object.keys(t).reduce(((n,o)=>(n[o]=function(){const n=e(this.$pinia),r=t[o];return"function"==typeof r?r.call(this,n):n[r]},n)),{})}const yE=mE;const vE=Object.freeze(Object.defineProperty({__proto__:null,get MutationType(){return nE},PiniaVuePlugin:function(e){e.mixin({beforeCreate(){const e=this.$options;if(e.pinia){const t=e.pinia;if(!this._provided){const e={};Object.defineProperty(this,"_provided",{get:()=>e,set:t=>Object.assign(e,t)})}this._provided[eE]=t,this.$pinia||(this.$pinia=t),t._a=this,rE&&ZA(t)}else!this.$pinia&&e.parent&&e.parent.$pinia&&(this.$pinia=e.parent.$pinia)},destroyed(){delete this._pStores}})},acceptHMRUpdate:function(e,t){return()=>{}},createPinia:iE,defineStore:hE,getActivePinia:()=>ea()&&Do(eE)||KA,mapActions:function(e,t){return Array.isArray(t)?t.reduce(((t,n)=>(t[n]=function(...t){return e(this.$pinia)[n](...t)},t)),{}):Object.keys(t).reduce(((n,o)=>(n[o]=function(...n){return e(this.$pinia)[t[o]](...n)},n)),{})},mapGetters:yE,mapState:mE,mapStores:function(...e){return e.reduce(((e,t)=>(e[t.$id+gE]=function(){return t(this.$pinia)},e)),{})},mapWritableState:function(e,t){return Array.isArray(t)?t.reduce(((t,n)=>(t[n]={get(){return e(this.$pinia)[n]},set(t){return e(this.$pinia)[n]=t}},t)),{}):Object.keys(t).reduce(((n,o)=>(n[o]={get(){return e(this.$pinia)[t[o]]},set(n){return e(this.$pinia)[t[o]]=n}},n)),{})},setActivePinia:ZA,setMapStoreSuffix:function(e){gE=e},skipHydrate:function(e){return Object.defineProperty(e,uE,{})},storeToRefs:function(e){{e=Rn(e);const t={};for(const n in e){const o=e[n];(Vn(o)||Bn(o))&&(t[n]=Zn(e,n))}return t}}},Symbol.toStringTag,{value:"Module"})),bE=hE("diy",{state:()=>({mode:"",pageMode:"diy",currentIndex:-99,global:{title:"",pageBgColor:"",bottomTabBarSwitch:!0,bgUrl:""},value:[]}),getters:{},actions:{init(){var e=JSON.stringify({type:"init",load:!0});window.parent.postMessage(e,"*"),window.addEventListener("message",(e=>{try{let t=JSON.parse(e.data);this.currentIndex=t.currentIndex,this.pageMode=t.pageMode,t.global&&(this.global=t.global),t.value&&(this.value=t.value),this.value&&this.value.forEach(((e,t)=>{e.pageStyle="",e.pageBgColor&&(e.pageStyle+="background-color:"+e.pageBgColor+";"),e.margin&&(e.pageStyle+="padding-top:"+2*e.margin.top+"rpx;",e.pageStyle+="padding-bottom:"+2*e.margin.bottom+"rpx;",e.pageStyle+="padding-right:"+2*e.margin.both+"rpx;",e.pageStyle+="padding-left:"+2*e.margin.both+"rpx;")}))}catch(t){console.log("uniapp接受数据错误",t)}}),!1)},postMessage(e,t){if(this.currentIndex=e,t)var n=JSON.stringify({type:"data",index:this.currentIndex,global:Rn(this.global),value:Rn(this.value),component:Rn(t)});window.parent.postMessage(n,"*")},changeCurrentIndex(e,t=null){if(""!=this.mode&&this.currentIndex!=e){this.currentIndex=e;var n=JSON.stringify({type:"change",index:e,component:Rn(t)});window.parent.postMessage(n,"*")}}}});function _E(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){if(this instanceof e){var n=[null];return n.push.apply(n,arguments),new(Function.bind.apply(t,n))}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:function(){return e[t]}})})),n}var wE,xE="undefined"!=typeof Symbol&&Symbol,AE=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var o=Object.getOwnPropertySymbols(e);if(1!==o.length||o[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var r=Object.getOwnPropertyDescriptor(e,t);if(42!==r.value||!0!==r.enumerable)return!1}return!0},EE={foo:{}},SE=Object,TE=Array.prototype.slice,kE=Object.prototype.toString,CE=function(e){var t=this;if("function"!=typeof t||"[object Function]"!==kE.call(t))throw new TypeError("Function.prototype.bind called on incompatible "+t);for(var n,o=TE.call(arguments,1),r=Math.max(0,t.length-o.length),i=[],a=0;a1&&"boolean"!=typeof t)throw new IE('"allowMissing" argument must be a boolean');if(null===ZE(/^%?[^%]*%?$/,e))throw new LE("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=KE(e,0,1),n=KE(e,-1);if("%"===t&&"%"!==n)throw new LE("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new LE("invalid intrinsic syntax, expected opening `%`");var o=[];return JE(e,eS,(function(e,t,n,r){o[o.length]=n?JE(r,tS,"$1"):t||e})),o}(e),o=n.length>0?n[0]:"",r=nS("%"+o+"%",t),i=r.name,a=r.value,s=!1,l=r.alias;l&&(o=l[0],GE(n,YE([0,1],l)));for(var c=1,u=!0;c=n.length){var h=NE(a,p);a=(u=!!h)&&"get"in h&&!("originalValue"in h.get)?h.get:a[p]}else u=XE(a,p),a=a[p];u&&!s&&(UE[i]=a)}}return a},rS={};!function(e){var t=PE,n=oS,o=n("%Function.prototype.apply%"),r=n("%Function.prototype.call%"),i=n("%Reflect.apply%",!0)||t.call(r,o),a=n("%Object.getOwnPropertyDescriptor%",!0),s=n("%Object.defineProperty%",!0),l=n("%Math.max%");if(s)try{s({},"a",{value:1})}catch(sP){s=null}e.exports=function(e){var n=i(t,r,arguments);a&&s&&(a(n,"length").configurable&&s(n,"length",{value:1+l(0,e.length-(arguments.length-1))}));return n};var c=function(){return i(t,o,arguments)};s?s(e.exports,"apply",{value:c}):e.exports.apply=c}({get exports(){return rS},set exports(e){rS=e}});var iS=oS,aS=rS,sS=aS(iS("String.prototype.indexOf"));const lS=_E(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));var cS="function"==typeof Map&&Map.prototype,uS=Object.getOwnPropertyDescriptor&&cS?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,pS=cS&&uS&&"function"==typeof uS.get?uS.get:null,dS=cS&&Map.prototype.forEach,fS="function"==typeof Set&&Set.prototype,hS=Object.getOwnPropertyDescriptor&&fS?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,gS=fS&&hS&&"function"==typeof hS.get?hS.get:null,mS=fS&&Set.prototype.forEach,yS="function"==typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,vS="function"==typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,bS="function"==typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,_S=Boolean.prototype.valueOf,wS=Object.prototype.toString,xS=Function.prototype.toString,AS=String.prototype.match,ES=String.prototype.slice,SS=String.prototype.replace,TS=String.prototype.toUpperCase,kS=String.prototype.toLowerCase,CS=RegExp.prototype.test,PS=Array.prototype.concat,MS=Array.prototype.join,LS=Array.prototype.slice,OS=Math.floor,IS="function"==typeof BigInt?BigInt.prototype.valueOf:null,BS=Object.getOwnPropertySymbols,NS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol.prototype.toString:null,jS="function"==typeof Symbol&&"object"==typeof Symbol.iterator,DS="function"==typeof Symbol&&Symbol.toStringTag&&(typeof Symbol.toStringTag===jS||"symbol")?Symbol.toStringTag:null,RS=Object.prototype.propertyIsEnumerable,FS=("function"==typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function zS(e,t){if(e===1/0||e===-1/0||e!=e||e&&e>-1e3&&e<1e3||CS.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof e){var o=e<0?-OS(-e):OS(e);if(o!==e){var r=String(o),i=ES.call(t,r.length+1);return SS.call(r,n,"$&_")+"."+SS.call(SS.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return SS.call(t,n,"$&_")}var qS=lS,HS=qS.custom,US=XS(HS)?HS:null;function VS(e,t,n){var o="double"===(n.quoteStyle||t)?'"':"'";return o+e+o}function WS(e){return SS.call(String(e),/"/g,""")}function $S(e){return!("[object Array]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}function QS(e){return!("[object RegExp]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}function XS(e){if(jS)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!NS)return!1;try{return NS.call(e),!0}catch(sP){}return!1}var YS=Object.prototype.hasOwnProperty||function(e){return e in this};function GS(e,t){return YS.call(e,t)}function JS(e){return wS.call(e)}function KS(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,o=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,o="... "+n+" more character"+(n>1?"s":"");return ZS(ES.call(e,0,t.maxStringLength),t)+o}return VS(SS.call(SS.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,eT),"single",t)}function eT(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+TS.call(t.toString(16))}function tT(e){return"Object("+e+")"}function nT(e){return e+" { ? }"}function oT(e,t,n,o){return e+" ("+t+") {"+(o?rT(n,o):MS.call(n,", "))+"}"}function rT(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+MS.call(e,","+n)+"\n"+t.prev}function iT(e,t){var n=$S(e),o=[];if(n){o.length=e.length;for(var r=0;r-1?aS(n):n},lT=function e(t,n,o,r){var i=n||{};if(GS(i,"quoteStyle")&&"single"!==i.quoteStyle&&"double"!==i.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(GS(i,"maxStringLength")&&("number"==typeof i.maxStringLength?i.maxStringLength<0&&i.maxStringLength!==1/0:null!==i.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=!GS(i,"customInspect")||i.customInspect;if("boolean"!=typeof a&&"symbol"!==a)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(GS(i,"indent")&&null!==i.indent&&"\t"!==i.indent&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(GS(i,"numericSeparator")&&"boolean"!=typeof i.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var s=i.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return ZS(t,i);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var l=String(t);return s?zS(t,l):l}if("bigint"==typeof t){var c=String(t)+"n";return s?zS(t,c):c}var u=void 0===i.depth?5:i.depth;if(void 0===o&&(o=0),o>=u&&u>0&&"object"==typeof t)return $S(t)?"[Array]":"[Object]";var p=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=MS.call(Array(e.indent+1)," ")}return{base:n,prev:MS.call(Array(t+1),n)}}(i,o);if(void 0===r)r=[];else if(KS(r,t)>=0)return"[Circular]";function d(t,n,a){if(n&&(r=LS.call(r)).push(n),a){var s={depth:i.depth};return GS(i,"quoteStyle")&&(s.quoteStyle=i.quoteStyle),e(t,s,o+1,r)}return e(t,i,o+1,r)}if("function"==typeof t&&!QS(t)){var f=function(e){if(e.name)return e.name;var t=AS.call(xS.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),h=iT(t,d);return"[Function"+(f?": "+f:" (anonymous)")+"]"+(h.length>0?" { "+MS.call(h,", ")+" }":"")}if(XS(t)){var g=jS?SS.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):NS.call(t);return"object"!=typeof t||jS?g:tT(g)}if(function(e){if(!e||"object"!=typeof e)return!1;if("undefined"!=typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"==typeof e.nodeName&&"function"==typeof e.getAttribute}(t)){for(var m="<"+kS.call(String(t.nodeName)),y=t.attributes||[],v=0;v"}if($S(t)){if(0===t.length)return"[]";var b=iT(t,d);return p&&!function(e){for(var t=0;t=0)return!1;return!0}(b)?"["+rT(b,p)+"]":"[ "+MS.call(b,", ")+" ]"}if(function(e){return!("[object Error]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}(t)){var _=iT(t,d);return"cause"in Error.prototype||!("cause"in t)||RS.call(t,"cause")?0===_.length?"["+String(t)+"]":"{ ["+String(t)+"] "+MS.call(_,", ")+" }":"{ ["+String(t)+"] "+MS.call(PS.call("[cause]: "+d(t.cause),_),", ")+" }"}if("object"==typeof t&&a){if(US&&"function"==typeof t[US]&&qS)return qS(t,{depth:u-o});if("symbol"!==a&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!pS||!e||"object"!=typeof e)return!1;try{pS.call(e);try{gS.call(e)}catch(m){return!0}return e instanceof Map}catch(sP){}return!1}(t)){var w=[];return dS&&dS.call(t,(function(e,n){w.push(d(n,t,!0)+" => "+d(e,t))})),oT("Map",pS.call(t),w,p)}if(function(e){if(!gS||!e||"object"!=typeof e)return!1;try{gS.call(e);try{pS.call(e)}catch(t){return!0}return e instanceof Set}catch(sP){}return!1}(t)){var x=[];return mS&&mS.call(t,(function(e){x.push(d(e,t))})),oT("Set",gS.call(t),x,p)}if(function(e){if(!yS||!e||"object"!=typeof e)return!1;try{yS.call(e,yS);try{vS.call(e,vS)}catch(m){return!0}return e instanceof WeakMap}catch(sP){}return!1}(t))return nT("WeakMap");if(function(e){if(!vS||!e||"object"!=typeof e)return!1;try{vS.call(e,vS);try{yS.call(e,yS)}catch(m){return!0}return e instanceof WeakSet}catch(sP){}return!1}(t))return nT("WeakSet");if(function(e){if(!bS||!e||"object"!=typeof e)return!1;try{return bS.call(e),!0}catch(sP){}return!1}(t))return nT("WeakRef");if(function(e){return!("[object Number]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}(t))return tT(d(Number(t)));if(function(e){if(!e||"object"!=typeof e||!IS)return!1;try{return IS.call(e),!0}catch(sP){}return!1}(t))return tT(d(IS.call(t)));if(function(e){return!("[object Boolean]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}(t))return tT(_S.call(t));if(function(e){return!("[object String]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}(t))return tT(d(String(t)));if(!function(e){return!("[object Date]"!==JS(e)||DS&&"object"==typeof e&&DS in e)}(t)&&!QS(t)){var A=iT(t,d),E=FS?FS(t)===Object.prototype:t instanceof Object||t.constructor===Object,S=t instanceof Object?"":"null prototype",T=!E&&DS&&Object(t)===t&&DS in t?ES.call(JS(t),8,-1):S?"Object":"",k=(E||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(T||S?"["+MS.call(PS.call([],T||[],S||[]),": ")+"] ":"");return 0===A.length?k+"{}":p?k+"{"+rT(A,p)+"}":k+"{ "+MS.call(A,", ")+" }"}return String(t)},cT=aT("%TypeError%"),uT=aT("%WeakMap%",!0),pT=aT("%Map%",!0),dT=sT("WeakMap.prototype.get",!0),fT=sT("WeakMap.prototype.set",!0),hT=sT("WeakMap.prototype.has",!0),gT=sT("Map.prototype.get",!0),mT=sT("Map.prototype.set",!0),yT=sT("Map.prototype.has",!0),vT=function(e,t){for(var n,o=e;null!==(n=o.next);o=n)if(n.key===t)return o.next=n.next,n.next=e.next,e.next=n,n},bT=String.prototype.replace,_T=/%20/g,wT="RFC3986",xT={default:wT,formatters:{RFC1738:function(e){return bT.call(e,_T,"+")},RFC3986:function(e){return String(e)}},RFC1738:"RFC1738",RFC3986:wT},AT=xT,ET=Object.prototype.hasOwnProperty,ST=Array.isArray,TT=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),kT=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},o=0;o1;){var t=e.pop(),n=t.obj[t.prop];if(ST(n)){for(var o=[],r=0;r=48&&l<=57||l>=65&&l<=90||l>=97&&l<=122||r===AT.RFC1738&&(40===l||41===l)?a+=i.charAt(s):l<128?a+=TT[l]:l<2048?a+=TT[192|l>>6]+TT[128|63&l]:l<55296||l>=57344?a+=TT[224|l>>12]+TT[128|l>>6&63]+TT[128|63&l]:(s+=1,l=65536+((1023&l)<<10|1023&i.charCodeAt(s)),a+=TT[240|l>>18]+TT[128|l>>12&63]+TT[128|l>>6&63]+TT[128|63&l])}return a},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(ST(e)){for(var n=[],o=0;o0?v.join(",")||null:void 0}];else if(BT(l))A=l;else{var S=Object.keys(v);A=c?S.sort(c):S}for(var T=r&&BT(v)&&1===v.length?n+"[]":n,k=0;k-1?e.split(","):e},XT=function(e,t,n,o){if(e){var r=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,i=/(\[[^[\]]*])/g,a=n.depth>0&&/(\[[^[\]]*])/.exec(r),s=a?r.slice(0,a.index):r,l=[];if(s){if(!n.plainObjects&&UT.call(Object.prototype,s)&&!n.allowPrototypes)return;l.push(s)}for(var c=0;n.depth>0&&null!==(a=i.exec(r))&&c=0;--i){var a,s=e[i];if("[]"===s&&n.parseArrays)a=[].concat(r);else{a=n.plainObjects?Object.create(null):{};var l="["===s.charAt(0)&&"]"===s.charAt(s.length-1)?s.slice(1,-1):s,c=parseInt(l,10);n.parseArrays||""!==l?!isNaN(c)&&s!==l&&String(c)===l&&c>=0&&n.parseArrays&&c<=n.arrayLimit?(a=[])[c]=r:"__proto__"!==l&&(a[l]=r):a={0:r}}r=a}return r}(l,t,n,o)}},YT={formats:xT,parse:function(e,t){var n=function(e){if(!e)return WT;if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t=void 0===e.charset?WT.charset:e.charset;return{allowDots:void 0===e.allowDots?WT.allowDots:!!e.allowDots,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:WT.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:WT.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:WT.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:WT.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:WT.comma,decoder:"function"==typeof e.decoder?e.decoder:WT.decoder,delimiter:"string"==typeof e.delimiter||HT.isRegExp(e.delimiter)?e.delimiter:WT.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:WT.depth,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:WT.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:WT.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:WT.plainObjects,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:WT.strictNullHandling}}(t);if(""===e||null==e)return n.plainObjects?Object.create(null):{};for(var o="string"==typeof e?function(e,t){var n,o={__proto__:null},r=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,i=t.parameterLimit===1/0?void 0:t.parameterLimit,a=r.split(t.delimiter,i),s=-1,l=t.charset;if(t.charsetSentinel)for(n=0;n-1&&(u=VT(u)?[u]:u),UT.call(o,c)?o[c]=HT.combine(o[c],u):o[c]=u}return o}(e,n):e,r=n.plainObjects?Object.create(null):{},i=Object.keys(o),a=0;a0?f+d:""}};const GT=new class{constructor(){t(this,"baseUrl"),t(this,"config",{url:"",header:{}}),this.baseUrl=`${location.origin}/api/`,"/"!=this.baseUrl.substr(-1)&&(this.baseUrl+="/");try{this.config.header["site-id"]=Hk(""),this.config.header.channel=Fk()}catch(sP){}}requestInterceptors(){try{Ik()&&(this.config.header.token=Ik()),this.config.header.channel=Fk(),this.config.header["site-id"]=Hk("")}catch(sP){}}get(e,t={},n={}){return this.request("GET",e,t,n)}post(e,t={},n={}){return this.request("POST",e,t,n)}put(e,t={},n={}){return this.request("PUT",e,t,n)}delete(e,t={}){return this.request("DELETE",e,{},t)}upload(e,t={},n={}){this.requestInterceptors();const o=Object.assign(uni.$u.deepClone(this.config),n,{url:this.baseUrl+e,...t});return new Promise(((e,t)=>{Sv({...o,success:n=>{const o=JSON.parse(n.data);1==o.code?(this.config.showSuccessMessage&&Yv({title:o.msg,icon:"none"}),e(o)):(0==o.code||400==o.code?!1!==this.config.showErrorMessage&&Yv({title:o.msg,icon:"none"}):this.handleAuthError(o.code),t(o))},fail:e=>{t(e)}})}))}request(e,t,n,o={}){this.requestInterceptors();const r=Object.assign(uni.$u.deepClone(this.config),o,{url:this.baseUrl+t,method:e});return"GET"==r.method.toUpperCase()?r.url+="?"+YT.stringify(n):r.data=n,new Promise(((e,t)=>{bv({...r,success:n=>{const r=n.data;1==r.code?(o.showSuccessMessage&&Yv({title:r.msg,icon:"none"}),e(r)):(0==r.code||400==r.code?!1!==o.showErrorMessage&&Yv({title:r.msg,icon:"none"}):this.handleAuthError(r.code),t(r))},fail:e=>{t(e)},complete:e=>{this.handleRequestFail(e)}})}))}handleAuthError(e){if(401===e)Ck().logout()}handleRequestFail(e){if(e.errMsg&&"request:ok"==e.errMsg&&"string"==typeof e.data){const e=(isUrl(this.baseUrl)?this.baseUrl:location.origin+this.baseUrl)+Uk("baseUrlError");Yv({icon:"none",title:e})}else"request:fail"!=e.errMsg?e.errMsg&&"request:fail url not in domain list"==e.errMsg&&Yv({icon:"none",title:this.baseUrl+Uk("notInDomainList")}):Yv({icon:"none",title:this.baseUrl+Uk("requestFail")})}};function JT(e){return GT.get("member/account/point",e)}function KT(e){return GT.get("member/account/balance",e)}function ZT(e){return GT.get("member/account/money",e)}function ek(e){return GT.put(`member/modify/${e.field}`,e,{showErrorMessage:!0})}function tk(e){return GT.post("order/recharge",e,{showErrorMessage:!0})}function nk(e){return GT.get("order/recharge",e,{showErrorMessage:!0})}function ok(e){return GT.get(`order/recharge/${e}`,{},{showErrorMessage:!0})}function rk(e){return GT.put("member/mobile",e,{showErrorMessage:!0})}function ik(){return GT.get("member/cash_out/config")}function ak(e){return GT.post("member/cash_out/apply",e,{showSuccessMessage:!0,showErrorMessage:!0})}function sk(e){return GT.get(`member/cashout_account/${e.account_id}`,{})}function lk(e){return GT.get("member/cashout_account/firstinfo",e)}function ck(e){return GT.get("member/cashout_account",e)}function uk(e){return GT.get("member/cash_out",e)}function pk(e){return GT.get(`member/cash_out/${e}`)}function dk(e){return GT.post("member/cashout_account",e,{showSuccessMessage:!0,showErrorMessage:!0})}function fk(e){return GT.put(`member/cashout_account/${e.account_id}`,e,{showSuccessMessage:!0,showErrorMessage:!0})}function hk(e){return GT.delete(`member/cashout_account/${e}`,{showSuccessMessage:!0,showErrorMessage:!0})}function gk(e){return GT.get("member/account/commission",e)}function mk(e){return GT.get("member/address",{params:e})}function yk(e){return GT.get(`member/address/${e}`)}function vk(e){return GT.post("member/address",e,{showErrorMessage:!0,showSuccessMessage:!0})}function bk(e){return GT.put(`member/address/${e.id}`,e,{showErrorMessage:!0,showSuccessMessage:!0})}function _k(e){return GT.delete(`member/address/${e}`,{showErrorMessage:!0,showSuccessMessage:!0})}function wk(e){return GT.get("login",e,{showErrorMessage:!0})}function xk(e){return GT.post("login/mobile",e,{showErrorMessage:!0})}function Ak(e){let t="register";return e.pid&&(t+=`?pid=${e.pid}`),GT.post(t,e,{showErrorMessage:!0})}function Ek(e){let t="register/mobile";return e.pid&&(t+=`?pid=${e.pid}`),GT.post(t,e,{showErrorMessage:!0})}function Sk(e){return GT.post("wechat/login",e,{showErrorMessage:!1})}function Tk(e){let t="bind";return e.pid&&(t+=`?pid=${e.pid}`),GT.post(t,e,{showErrorMessage:!0})}function kk(e){return GT.post("member/log",e,{showErrorMessage:!1})}const Ck=hE("member",{state:()=>({token:uni.getStorageSync("wapToken"),info:null}),actions:{async setToken(e){this.token=e,function(e){uni.setStorageSync("wapToken",e)}(e),await this.getMemberInfo()},async getMemberInfo(){this.token&&await GT.get("member/member").then((e=>{this.info=e.data})).catch((async()=>{await this.logout()}))},async logout(e=!1){this.token&&(this.token="",this.info=null,await GT.put("auth/logout").then((()=>{Bk(),e&&Pk({url:"/app/pages/index/index"})})).catch((()=>{Bk(),e&&Pk({url:"/app/pages/index/index"})})))}}}),Pk=e=>{if("decorate"==bE().mode)return;let{url:t,mode:n,param:o,success:r,fail:i,complete:a}=e;n=n||"navigateTo";switch(YA.tabBar.list.map((e=>`/${e.pagePath}`)).includes(t)&&(n="switchTab"),"switchTab"!=n&&o&&Object.keys(o).length&&(t+=uni.$u.queryParams(o)),n){case"switchTab":jv({url:t,success:()=>{r&&r()},fail:()=>{i&&i()},complete:()=>{a&&a()}});break;case"navigateTo":Ov({url:t,success:()=>{r&&r()},fail:()=>{i&&i()},complete:()=>{a&&a()}});break;case"reLaunch":Bv({url:t,success:()=>{r&&r()},fail:()=>{i&&i()},complete:()=>{a&&a()}});break;case"redirectTo":Iv({url:t,success:()=>{r&&r()},fail:()=>{i&&i()},complete:()=>{a&&a()}})}},Mk=e=>{"decorate"!=bE().mode&&null!=e&&1!=Object.keys(e).length&&e.url&&(-1!=e.url.indexOf("http")||-1!=e.url.indexOf("http")?window.location.href=e.url:Pk({url:e.url}))},Lk=()=>{const e=ym(),t=e[e.length-1];return t?t.route:""},Ok=()=>{const e=ym();let t=e[e.length-1].route,n=e[e.length-1].$page.options,o={};for(let r in n)o[r]=n[r];return{path:"/"+t,params:o}};function Ik(){return Ck().token}function Bk(){uni.removeStorageSync("wapToken")}function Nk(e){const t={},[n,o]=e.split("?");return o&&o.split("&").forEach((e=>{let[n,o]=e.split("=");t[n]=o})),{path:n,query:t}}function jk(e){return-1!=(t=e).indexOf("http://")||-1!=t.indexOf("https://")?e:`${location.origin}/${e}`;var t}function Dk(e){return e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}function Rk(){let e=navigator.userAgent.toLowerCase();return!!/micromessenger/.test(e)}function Fk(){return Rk()?"wechat":"h5"}function zk(e){return isNaN(parseFloat(e))?e:parseFloat(e).toFixed(2)}function qk(e){return e.substring(0,3)+"****"+e.substr(e.length-4)}function Hk(e){const t=location.href.match(/\/wap\/(\d*)\//);return t?t[1]:e}const Uk=e=>{const t=Lk();XA.loadLocaleMessages(`/${t}`,af());const n=`${XA.getFileKey(`/${t}`).fileKey}.${e}`;return QA.global.t(n)!=n?QA.global.t(n):QA.global.t(e)},Vk={install(e){e.use(QA)}};function Wk(){return GT.get("captcha",{},{showErrorMessage:!0})}function $k(e){return GT.post("wechat/sync",e)}function Qk(e){return GT.get(`agreement/${e}`)}function Xk(e){return GT.post("password/reset",e,{showErrorMessage:!0})}function Yk(e){return GT.post(`send/mobile/${e.type}`,e,{showErrorMessage:!0})}function Gk(e){return GT.get("wechat/jssdkconfig",e,{showErrorMessage:!1})}function Jk(e){return GT.upload("file/image",e,{showErrorMessage:!0})}function Kk(e=0){return GT.get(`area/list_by_pid/${e}`)}function Zk(e){return GT.get(`area/code/${e}`)}function eC(e){return GT.get("wap_index",e)}function tC(e){return GT.get("diy/diy",e)}function nC(e){return GT.get("diy/share",e)}const oC=hE("config",{state:()=>({login:{is_username:0,is_mobile:0,is_auth_register:0,is_bind_mobile:0,agreement_show:0},tabbar:null,addon:"app"}),actions:{async getLoginConfig(){await GT.get("login/config").then((e=>{this.login.is_username=parseInt(e.data.is_username),this.login.is_mobile=parseInt(e.data.is_mobile),this.login.is_auth_register=parseInt(e.data.is_auth_register),this.login.is_bind_mobile=parseInt(e.data.is_bind_mobile),this.login.agreement_show=parseInt(e.data.agreement_show)})).catch((()=>{}))},async getTabbarConfig(e=""){var t;e!=this.addon&&(e||(e=this.addon),await(t={key:e},GT.get("diy/tabbar",t)).then((e=>{this.tabbar=e.data})).catch((()=>{})))}}});function rC(){return{setLoginBack:e=>{uni.setStorage({key:"loginBack",data:e}),setTimeout((()=>{const e=oC();Rk()&&uni.getStorageSync("openid")&&e.login.is_bind_mobile?Pk({url:"/app/pages/auth/bind",mode:"redirectTo"}):Pk({url:"/app/pages/auth/login",mode:"redirectTo"})}))},handleLoginBack:()=>{uni.getStorage({key:"loginBack",success:e=>{Pk(e?e.data:{url:"/app/pages/index/index"})},fail:e=>{Pk({url:"/app/pages/index/index"})}})},authLogin:e=>{let t=null;t=Sk,t({code:e}).then((e=>{e.data.token?Ck().setToken(e.data.token):uni.setStorageSync("openid",e.data.openid)}))},getAuthCode:(e="snsapi_base")=>{let t=`${location.origin}${location.pathname}`,n=Nk(location.href).query;var o;n.code&&delete n.code,Object.keys(n).length&&(t+=uni.$u.queryParams(n)),(o={url:t,scopes:e},GT.get("wechat/codeurl",o,{showErrorMessage:!1})).then((e=>{location.href=e.data.url}))}}}const iC=rC();function aC(e){(function(){const e=[];return YA.pages.forEach((t=>{t.needLogin&&e.push(`/${t.path}`)})),YA.subPackages&&YA.subPackages.forEach((t=>{t.pages.forEach((n=>{n.needLogin&&e.push(`/${t.root}/${n.path}`)}))})),e})().includes(e.path)&&!Ik()&&setTimeout((()=>{iC.setLoginBack({url:e.path,param:e.query||{}})}),100)}const sC=e=>{let t=e.split("/"),n="addon"==t[1]?t[2]:"app";const o=oC();o.addon=n,o.getTabbarConfig()},lC=hE("system",{state:()=>({site:null}),actions:{async getSitenfo(){await GT.get("site").then((e=>{this.site=e.data,3==this.site.status&&Pk({url:"/pages/index/close",mode:"reLaunch"})})).catch((e=>{Pk({url:"/pages/index/nosite",mode:"reLaunch"})}))}}}),cC=er({__name:"App",setup:e=>(gw((async e=>{(()=>{const e=cf();e.path=`/${e.path}`,sC(e.path),XA.loadLocaleMessages(e.path,af()),aC(e),e.query&&e.query.mid&&uni.setStorageSync("pid",e.query.mid),Ik()&&kk({route:e.path,params:JSON.stringify(e.query||{}),pre_route:""})})(),["navigateTo","redirectTo","reLaunch","switchTab"].forEach((e=>{Od(e,{invoke(e){var t;const n=Nk(e.url);sC(n.path),XA.loadLocaleMessages(n.path,af()),aC(n),Ik()&&kk({route:n.path,params:JSON.stringify(n.query),pre_route:null==(t=ym()[0])?void 0:t.route})}})})),"ios"==Ny().platform&&uni.setStorageSync("initUrl",location.href),window.parent.postMessage(JSON.stringify({type:"appOnLaunch",message:"初始化加载完成"}),"*"),window.addEventListener("message",(e=>{try{"appOnReady"==JSON.parse(e.data).type&&window.parent.postMessage(JSON.stringify({type:"appOnReady",message:"加载完成"}),"*")}catch(sP){console.log("uniapp app接受数据错误",sP)}}),!1);const t=oC();if(await t.getLoginConfig(),lC().getSitenfo(),lb(),Ik()){const e=Ck();await e.setToken(Ik())}if(!Ik()){const t=rC();Rk()&&(e.query.code?t.authLogin(e.query.code):t.getAuthCode("snsapi_userinfo"))}})),fw((()=>{})),hw((()=>{})),()=>{})});Vm(cC,{init:Hm,setup(e){const t=om(),n=()=>{var n;n=e,Object.keys(lf).forEach((e=>{lf[e].forEach((t=>{vr(e,t,n)}))}));const{onLaunch:o,onShow:r,onPageNotFound:i,onError:a}=e,s=function({path:e,query:t}){return T(oh,{path:e,query:t}),T(rh,oh),T({},oh)}({path:t.path.slice(1)||__uniRoutes[0].meta.route,query:at(t.query)});if(o&&Z(o,s),r&&Z(r,s),!t.matched.length){const e={notFound:!0,openType:"appLaunch",path:t.path,query:{},scene:1001};i&&Z(i,e)}a&&(e.appContext.config.errorHandler=e=>{Z(a,e)})};return Do(ec).isReady().then(n),wr((()=>{window.addEventListener("resize",ct($m,50,{setTimeout:setTimeout,clearTimeout:clearTimeout})),window.addEventListener("message",Qm),document.addEventListener("visibilitychange",Xm),function(){let e=null;try{e=window.matchMedia("(prefers-color-scheme: dark)")}catch(t){}if(e){let t=e=>{Ob.emit(ve,{theme:e.matches?"dark":"light"})};e.addEventListener?e.addEventListener("change",t):e.addListener(t)}}()})),t.query},before(e){e.mpType="app";const{setup:t}=e,n=()=>(Mi(),Ni(wb));e.setup=(e,o)=>{const r=t&&t(e,o);return B(r)?n:r},e.render=n}});const uC={props:{customStyle:{type:[Object,String],default:()=>({})},customClass:{type:String,default:""},url:{type:String,default:""},linkType:{type:String,default:"navigateTo"}},data:()=>({}),onLoad(){this.$u.getRect=this.$uGetRect},created(){this.$u.getRect=this.$uGetRect},computed:{$u:()=>uni.$u.deepMerge(uni.$u,{props:void 0,http:void 0,mixin:void 0}),bem:()=>function(e,t,n){const o=`u-${e}--`,r={};return t&&t.map((e=>{r[o+this[e]]=!0})),n&&n.map((e=>{this[e]?r[o+e]=this[e]:delete r[o+e]})),Object.keys(r)}},methods:{openPage(e="url"){const t=this[e];t&&this.$u.route({type:this.linkType,url:t})},$uGetRect(e,t){return new Promise((n=>{rf().in(this)[t?"selectAll":"select"](e).boundingClientRect((e=>{t&&Array.isArray(e)&&e.length&&n(e),!t&&e&&n(e)})).exec()}))},getParentData(e=""){this.parent||(this.parent={}),this.parent=uni.$u.$parent.call(this,e),this.parent.children&&-1===this.parent.children.indexOf(this)&&this.parent.children.push(this),this.parent&&this.parentData&&Object.keys(this.parentData).map((e=>{this.parentData[e]=this.parent[e]}))},preventEvent(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()},noop(e){this.preventEvent(e)}},onReachBottom(){jd("uOnReachBottom")},beforeDestroy(){if(this.parent&&uni.$u.test.array(this.parent.children)){const e=this.parent.children;e.map(((t,n)=>{t===this&&e.splice(n,1)}))}}},pC={},{toString:dC}=Object.prototype;function fC(e){return"[object Array]"===dC.call(e)}function hC(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),fC(e))for(let n=0,o=e.length;n{null!=t&&(fC(t)?n=`${n}[]`:t=[t],hC(t,(t=>{!function(e){return"[object Date]"===dC.call(e)}(t)?function(e){return null!==e&&"object"==typeof e}(t)&&(t=JSON.stringify(t)):t=t.toISOString(),e.push(`${yC(n)}=${yC(t)}`)})))})),n=e.join("&")}var o;if(n){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+n}return e}const bC=(e,t)=>{const n={};return e.forEach((e=>{mC(t[e])||(n[e]=t[e])})),n},_C=e=>(e=>new Promise(((t,n)=>{const o=vC((r=e.baseURL,i=e.url,r&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(i)?function(e,t){return t?`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}(r,i):i),e.params);var r,i;const a={url:o,header:e.header,complete:r=>{e.fullPath=o,r.config=e;try{"string"==typeof r.data&&(r.data=JSON.parse(r.data))}catch(sP){}!function(e,t,n){const{validateStatus:o}=n.config,r=n.statusCode;!r||o&&!o(r)?t(n):e(n)}(t,n,r)}};let s;if("UPLOAD"===e.method){delete a.header["content-type"],delete a.header["Content-Type"];const t={filePath:e.filePath,name:e.name},n=["files","file","timeout","formData"];s=Sv({...a,...t,...bC(n,e)})}else if("DOWNLOAD"===e.method)mC(e.timeout)||(a.timeout=e.timeout),s=Av(a);else{const t=["data","method","timeout","dataType","responseType","withCredentials"];s=bv({...a,...bC(t,e)})}e.getTask&&e.getTask(s,e)})))(e);function wC(){this.handlers=[]}wC.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},wC.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},wC.prototype.forEach=function(e){this.handlers.forEach((t=>{null!==t&&e(t)}))};const xC=(e,t,n)=>{const o={};return e.forEach((e=>{mC(n[e])?mC(t[e])||(o[e]=t[e]):o[e]=n[e]})),o},AC={baseURL:"",header:{},method:"GET",dataType:"json",responseType:"text",custom:{},timeout:6e4,withCredentials:!1,validateStatus:function(e){return e>=200&&e<300}};var EC=function(){function e(e,t){return null!=t&&e instanceof t}var t,n,o;try{t=Map}catch(s){t=function(){}}try{n=Set}catch(s){n=function(){}}try{o=Promise}catch(s){o=function(){}}function r(i,s,l,c,u){"object"==typeof s&&(l=s.depth,c=s.prototype,u=s.includeNonEnumerable,s=s.circular);var p=[],d=[],f="undefined"!=typeof Buffer;return void 0===s&&(s=!0),void 0===l&&(l=1/0),function i(l,h){if(null===l)return null;if(0===h)return l;var g,m;if("object"!=typeof l)return l;if(e(l,t))g=new t;else if(e(l,n))g=new n;else if(e(l,o))g=new o((function(e,t){l.then((function(t){e(i(t,h-1))}),(function(e){t(i(e,h-1))}))}));else if(r.__isArray(l))g=[];else if(r.__isRegExp(l))g=new RegExp(l.source,a(l)),l.lastIndex&&(g.lastIndex=l.lastIndex);else if(r.__isDate(l))g=new Date(l.getTime());else{if(f&&Buffer.isBuffer(l))return Buffer.from?g=Buffer.from(l):(g=new Buffer(l.length),l.copy(g)),g;e(l,Error)?g=Object.create(l):void 0===c?(m=Object.getPrototypeOf(l),g=Object.create(m)):(g=Object.create(c),m=c)}if(s){var y=p.indexOf(l);if(-1!=y)return d[y];p.push(l),d.push(g)}for(var v in e(l,t)&&l.forEach((function(e,t){var n=i(t,h-1),o=i(e,h-1);g.set(n,o)})),e(l,n)&&l.forEach((function(e){var t=i(e,h-1);g.add(t)})),l){Object.getOwnPropertyDescriptor(l,v)&&(g[v]=i(l[v],h-1));try{if("undefined"===Object.getOwnPropertyDescriptor(l,v).set)continue;g[v]=i(l[v],h-1)}catch(sP){if(sP instanceof TypeError)continue;if(sP instanceof ReferenceError)continue}}if(Object.getOwnPropertySymbols){var b=Object.getOwnPropertySymbols(l);for(v=0;v{uni.$u.routeIntercept(n,e)}))&&this.openPage(n)}else this.openPage(n)}openPage(e){const{url:t,type:n,delta:o,animationType:r,animationDuration:i}=e;"navigateTo"!=e.type&&"to"!=e.type||Ov({url:t,animationType:r,animationDuration:i}),"redirectTo"!=e.type&&"redirect"!=e.type||Iv({url:t}),"switchTab"!=e.type&&"tab"!=e.type||jv({url:t}),"reLaunch"!=e.type&&"launch"!=e.type||Bv({url:t}),"navigateBack"!=e.type&&"back"!=e.type||Mv({delta:o})}}).route;function TC(e,t=!0){if((e=String(e).toLowerCase())&&/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(e)){if(4===e.length){let t="#";for(let n=1;n<4;n+=1)t+=e.slice(n,n+1).concat(e.slice(n,n+1));e=t}const n=[];for(let t=1;t<7;t+=2)n.push(parseInt(`0x${e.slice(t,t+2)}`));return t?`rgb(${n[0]},${n[1]},${n[2]})`:n}if(/^(rgb|RGB)/.test(e)){return e.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(",").map((e=>Number(e)))}return e}function kC(e){const t=e;if(/^(rgb|RGB)/.test(t)){const e=t.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(",");let n="#";for(let t=0;t=0},range:function(e,t){return e>=t[0]&&e<=t[1]},rangeLength:function(e,t){return e.length>=t[0]&&e.length<=t[1]},empty:MC,isEmpty:MC,jsonString:function(e){if("string"==typeof e)try{const t=JSON.parse(e);return!("object"!=typeof t||!t)}catch(sP){return!1}return!1},landline:function(e){return/^\d{3,4}-\d{7,8}(-\d{3,4})?$/.test(e)},object:LC,array:function(e){return"function"==typeof Array.isArray?Array.isArray(e):"[object Array]"===Object.prototype.toString.call(e)},code:function(e,t=6){return new RegExp(`^\\d{${t}}$`).test(e)},func:OC,promise:function(e){return LC(e)&&OC(e.then)&&OC(e.catch)},video:function(e){return/\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i.test(e)},image:function(e){const t=e.split("?")[0];return/\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i.test(t)},regExp:function(e){return e&&"[object RegExp]"===Object.prototype.toString.call(e)},string:function(e){return"string"==typeof e}};let BC,NC=null;function jC(e,t=15){return+parseFloat(Number(e).toPrecision(t))}function DC(e){const t=e.toString().split(/[eE]/),n=(t[0].split(".")[1]||"").length-+(t[1]||0);return n>0?n:0}function RC(e){if(-1===e.toString().indexOf("e"))return Number(e.toString().replace(".",""));const t=DC(e);return t>0?jC(Number(e)*Math.pow(10,t)):Number(e)}function FC(e){(e>Number.MAX_SAFE_INTEGER||e{i=t(i,e)})),i}function qC(...e){if(e.length>2)return zC(e,qC);const[t,n]=e,o=RC(t),r=RC(n),i=DC(t)+DC(n),a=o*r;return FC(a),a/Math.pow(10,i)}function HC(...e){if(e.length>2)return zC(e,HC);const[t,n]=e,o=RC(t),r=RC(n);return FC(o),FC(r),qC(o/r,jC(Math.pow(10,DC(n)-DC(t))))}function UC(e){if([null,void 0,NaN,!1].includes(e))return e;if("object"!=typeof e&&"function"!=typeof e)return e;const t=IC.array(e)?[]:{};for(const n in e)e.hasOwnProperty(n)&&(t[n]="object"==typeof e[n]?UC(e[n]):e[n]);return t}function VC(e=null,t="yyyy-mm-dd"){let n;n=e?/^\d{10}$/.test(e.toString().trim())?new Date(1e3*e):"string"==typeof e&&/^\d+$/.test(e.trim())?new Date(Number(e)):new Date("string"==typeof e?e.replace(/-/g,"/"):e):new Date;const o={y:n.getFullYear().toString(),m:(n.getMonth()+1).toString().padStart(2,"0"),d:n.getDate().toString().padStart(2,"0"),h:n.getHours().toString().padStart(2,"0"),M:n.getMinutes().toString().padStart(2,"0"),s:n.getSeconds().toString().padStart(2,"0")};for(const r in o){const[e]=new RegExp(`${r}+`).exec(t)||[];if(e){const n="y"===r&&2===e.length?2:0;t=t.replace(e,o[r].slice(n))}}return t}function WC(e,t="both"){return e=String(e),"both"==t?e.replace(/^\s+|\s+$/g,""):"left"==t?e.replace(/^\s*/,""):"right"==t?e.replace(/(\s*$)/g,""):"all"==t?e.replace(/\s+/g,""):e}String.prototype.padStart||(String.prototype.padStart=function(e,t=" "){if("[object String]"!==Object.prototype.toString.call(t))throw new TypeError("fillString must be String");const n=this;if(n.length>=e)return String(n);const o=e-n.length;let r=Math.ceil(o/t.length);for(;r>>=1;)t+=t,1===r&&(t+=t);return t.slice(0,o)+n});const $C={range:function(e=0,t=0,n=0){return Math.max(e,Math.min(t,Number(n)))},getPx:function(e,t=!1){return IC.number(e)?t?`${e}px`:Number(e):/(rpx|upx)$/.test(e)?t?`${Md(parseInt(e))}px`:Number(Md(parseInt(e))):t?`${parseInt(e)}px`:parseInt(e)},sleep:function(e=30){return new Promise((t=>{setTimeout((()=>{t()}),e)}))},os:function(){return Ny().platform.toLowerCase()},sys:function(){return Ny()},random:function(e,t){if(e>=0&&t>0&&t>=e){const n=t-e+1;return Math.floor(Math.random()*n+e)}return 0},guid:function(e=32,t=!0,n=null){const o="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),r=[];if(n=n||o.length,e)for(let i=0;iMath.random()-.5))},timeFormat:VC,timeFrom:function(e=null,t="yyyy-mm-dd"){null==e&&(e=Number(new Date)),10==(e=parseInt(e)).toString().length&&(e*=1e3);let n=(new Date).getTime()-e;n=parseInt(n/1e3);let o="";switch(!0){case n<300:o="刚刚";break;case n>=300&&n<3600:o=`${parseInt(n/60)}分钟前`;break;case n>=3600&&n<86400:o=`${parseInt(n/3600)}小时前`;break;case n>=86400&&n<2592e3:o=`${parseInt(n/86400)}天前`;break;default:o=!1===t?n>=2592e3&&n<31536e3?`${parseInt(n/2592e3)}个月前`:`${parseInt(n/31536e3)}年前`:VC(e,t)}return o},trim:WC,queryParams:function(e={},t=!0,n="brackets"){const o=t?"?":"",r=[];-1==["indices","brackets","repeat","comma"].indexOf(n)&&(n="brackets");for(const i in e){const t=e[i];if(!(["",void 0,null].indexOf(t)>=0))if(t.constructor===Array)switch(n){case"indices":for(let n=0;n{r.push(`${i}[]=${e}`)}));break;case"repeat":t.forEach((e=>{r.push(`${i}=${e}`)}));break;case"comma":let e="";t.forEach((t=>{e+=(e?",":"")+t})),r.push(`${i}=${e}`)}else r.push(`${i}=${t}`)}return r.length?o+r.join("&"):""},toast:function(e,t=2e3){Yv({title:String(e),icon:"none",duration:t})},type2icon:function(e="success",t=!1){-1==["primary","info","error","warning","success"].indexOf(e)&&(e="success");let n="";switch(e){case"primary":case"info":n="info-circle";break;case"error":n="close-circle";break;case"warning":n="error-circle";break;default:n="checkmark-circle"}return t&&(n+="-fill"),n},priceFormat:function(e,t=0,n=".",o=","){e=`${e}`.replace(/[^0-9+-Ee.]/g,"");const r=isFinite(+e)?+e:0,i=isFinite(+t)?Math.abs(t):0,a=void 0===o?",":o,s=void 0===n?".":n;let l="";l=(i?function(e,t){const n=Math.pow(10,t);let o=HC(Math.round(Math.abs(qC(e,n))),n);return e<0&&0!==o&&(o=qC(o,-1)),o}(r,i)+"":`${Math.round(r)}`).split(".");const c=/(-?\d+)(\d{3})/;for(;c.test(l[0]);)l[0]=l[0].replace(c,`$1${a}$2`);return(l[1]||"").length30?`${e}ms`:`${e}s`:/ms$/.test(e)?n:/s$/.test(e)?n>30?n:1e3*n:n},padZero:function(e){return`00${e}`.slice(-2)},formValidate:function(e,t){const n=uni.$u.$parent.call(e,"u-form-item"),o=uni.$u.$parent.call(e,"u-form");n&&o&&o.validateField(n.prop,(()=>{}),t)},getProperty:function(e,t){if(e){if("string"!=typeof t||""===t)return"";if(-1!==t.indexOf(".")){const n=t.split(".");let o=e[n[0]]||{};for(let e=1;e1;){const r=t[0];e[r]&&"object"==typeof e[r]||(e[r]={}),t.shift(),o(e[r],t,n)}else e[t[0]]=n};if("string"!=typeof t||""===t);else if(-1!==t.indexOf(".")){const r=t.split(".");o(e,r,n)}else e[t]=n},page:function(){const e=ym();return`/${e[e.length-1].route||""}`},pages:function(){return ym()},setConfig:function({props:e={},config:t={},color:n={},zIndex:o={}}){const{deepMerge:r}=uni.$u;uni.$u.config=r(uni.$u.config,t),uni.$u.props=r(uni.$u.props,e),uni.$u.color=r(uni.$u.color,n),uni.$u.zIndex=r(uni.$u.zIndex,o)}},QC={v:"3",version:"3",type:["primary","success","info","error","warning"],color:{"u-primary":"#2979ff","u-warning":"#ff9900","u-success":"#19be6b","u-error":"#fa3534","u-info":"#909399","u-main-color":"#303133","u-content-color":"#606266","u-tips-color":"#909399","u-light-color":"#c0c4cc"},unit:"px"},XC={calendar:{title:"日期选择",showTitle:!0,showSubtitle:!0,mode:"single",startText:"开始",endText:"结束",customList:()=>[],color:"#3c9cff",minDate:0,maxDate:0,defaultDate:null,maxCount:Number.MAX_SAFE_INTEGER,rowHeight:56,formatter:null,showLunar:!1,showMark:!0,confirmText:"确定",confirmDisabledText:"确定",show:!1,closeOnClickOverlay:!1,readonly:!1,showConfirm:!0,maxRange:Number.MAX_SAFE_INTEGER,rangePrompt:"",showRangePrompt:!0,allowSameDay:!1,round:0,monthNum:3}},YC={datetimePicker:{show:!1,showToolbar:!0,value:"",title:"",mode:"datetime",maxDate:new Date((new Date).getFullYear()+10,0,1).getTime(),minDate:new Date((new Date).getFullYear()-10,0,1).getTime(),minHour:0,maxHour:23,minMinute:0,maxMinute:59,filter:null,formatter:null,loading:!1,itemHeight:44,cancelText:"取消",confirmText:"确认",cancelColor:"#909193",confirmColor:"#3c9cff",visibleItemCount:5,closeOnClickOverlay:!1,defaultIndex:()=>[]}},{color:GC}=QC,JC={icon:{name:"",color:GC["u-content-color"],size:"16px",bold:!1,index:"",hoverClass:"",customPrefix:"uicon",label:"",labelPos:"right",labelSize:"15px",labelColor:GC["u-content-color"],space:"3px",imgMode:"",width:"",height:"",top:0,stop:!1}},{color:KC}=QC,ZC={link:{color:KC["u-primary"],fontSize:15,underLine:!1,href:"",mpTips:"链接已复制,请在浏览器打开",lineColor:"",text:""}},{color:eP}=QC,tP={primary:"#3c9cff",info:"#909399",default:"#909399",warning:"#f9ae3d",error:"#f56c6c",success:"#5ac725",mainColor:"#303133",contentColor:"#606266",tipsColor:"#909399",lightColor:"#c0c4cc",borderColor:"#e4e7ed"},nP={actionSheet:{show:!1,title:"",description:"",actions:()=>[],index:"",cancelText:"",closeOnClickAction:!0,safeAreaInsetBottom:!0,openType:"",closeOnClickOverlay:!0,round:0},album:{urls:()=>[],keyName:"",singleSize:180,multipleSize:70,space:6,singleMode:"scaleToFill",multipleMode:"aspectFill",maxCount:9,previewFullImage:!0,rowCount:3,showMore:!0},alert:{title:"",type:"warning",description:"",closable:!1,showIcon:!1,effect:"light",center:!1,fontSize:14},avatar:{src:"",shape:"circle",size:40,mode:"scaleToFill",text:"",bgColor:"#c0c4cc",color:"#ffffff",fontSize:18,icon:"",mpAvatar:!1,randomBgColor:!1,defaultUrl:"",colorIndex:"",name:""},avatarGroup:{urls:()=>[],maxCount:5,shape:"circle",mode:"scaleToFill",showMore:!0,size:40,keyName:"",gap:.5,extraValue:0},backtop:{mode:"circle",icon:"arrow-upward",text:"",duration:100,scrollTop:0,top:400,bottom:100,right:20,zIndex:9,iconStyle:()=>({color:"#909399",fontSize:"19px"})},badge:{isDot:!1,value:"",show:!0,max:999,type:"error",showZero:!1,bgColor:null,color:null,shape:"circle",numberType:"overflow",offset:()=>[],inverted:!1,absolute:!1},button:{hairline:!1,type:"info",size:"normal",shape:"square",plain:!1,disabled:!1,loading:!1,loadingText:"",loadingMode:"spinner",loadingSize:15,openType:"",formType:"",appParameter:"",hoverStopPropagation:!0,lang:"en",sessionFrom:"",sendMessageTitle:"",sendMessagePath:"",sendMessageImg:"",showMessageCard:!1,dataName:"",throttleTime:0,hoverStartTime:0,hoverStayTime:200,text:"",icon:"",iconColor:"",color:""},...XC,carKeyboard:{random:!1},cell:{customClass:"",title:"",label:"",value:"",icon:"",disabled:!1,border:!0,center:!1,url:"",linkType:"navigateTo",clickable:!1,isLink:!1,required:!1,arrowDirection:"",iconStyle:{},rightIconStyle:{},rightIcon:"arrow-right",titleStyle:{},size:"",stop:!0,name:""},cellGroup:{title:"",border:!0,customStyle:{}},checkbox:{name:"",shape:"",size:"",checkbox:!1,disabled:"",activeColor:"",inactiveColor:"",iconSize:"",iconColor:"",label:"",labelSize:"",labelColor:"",labelDisabled:""},checkboxGroup:{name:"",value:()=>[],shape:"square",disabled:!1,activeColor:"#2979ff",inactiveColor:"#c8c9cc",size:18,placement:"row",labelSize:14,labelColor:"#303133",labelDisabled:!1,iconColor:"#ffffff",iconSize:12,iconPlacement:"left",borderBottom:!1},circleProgress:{percentage:30},code:{seconds:60,startText:"获取验证码",changeText:"X秒重新获取",endText:"重新获取",keepRunning:!1,uniqueKey:""},codeInput:{adjustPosition:!0,maxlength:6,dot:!1,mode:"box",hairline:!1,space:10,value:"",focus:!1,bold:!1,color:"#606266",fontSize:18,size:35,disabledKeyboard:!1,borderColor:"#c9cacc",disabledDot:!0},col:{span:12,offset:0,justify:"start",align:"stretch",textAlign:"left"},collapse:{value:null,accordion:!1,border:!0},collapseItem:{title:"",value:"",label:"",disabled:!1,isLink:!0,clickable:!0,border:!0,align:"left",name:"",icon:"",duration:300},columnNotice:{text:"",icon:"volume",mode:"",color:"#f9ae3d",bgColor:"#fdf6ec",fontSize:14,speed:80,step:!1,duration:1500,disableTouch:!0},countDown:{time:0,format:"HH:mm:ss",autoStart:!0,millisecond:!1},countTo:{startVal:0,endVal:0,duration:2e3,autoplay:!0,decimals:0,useEasing:!0,decimal:".",color:"#606266",fontSize:22,bold:!1,separator:""},...YC,divider:{dashed:!1,hairline:!0,dot:!1,textPosition:"center",text:"",textSize:14,textColor:"#909399",lineColor:"#dcdfe6"},empty:{icon:"",text:"",textColor:"#c0c4cc",textSize:14,iconColor:"#c0c4cc",iconSize:90,mode:"data",width:160,height:160,show:!0,marginTop:0},form:{model:()=>({}),rules:()=>({}),errorType:"message",borderBottom:!0,labelPosition:"left",labelWidth:45,labelAlign:"left",labelStyle:()=>({})},formItem:{label:"",prop:"",borderBottom:"",labelWidth:"",rightIcon:"",leftIcon:"",required:!1,leftIconStyle:""},gap:{bgColor:"transparent",height:20,marginTop:0,marginBottom:0,customStyle:{}},grid:{col:3,border:!1,align:"left"},gridItem:{name:null,bgColor:"transparent"},...JC,image:{src:"",mode:"aspectFill",width:"300",height:"225",shape:"square",radius:0,lazyLoad:!0,showMenuByLongpress:!0,loadingIcon:"photo",errorIcon:"error-circle",showLoading:!0,showError:!0,fade:!0,webp:!1,duration:500,bgColor:"#f3f4f6"},indexAnchor:{text:"",color:"#606266",size:14,bgColor:"#dedede",height:32},indexList:{inactiveColor:"#606266",activeColor:"#5677fc",indexList:()=>[],sticky:!0,customNavHeight:0},input:{value:"",type:"text",fixed:!1,disabled:!1,disabledColor:"#f5f7fa",clearable:!1,password:!1,maxlength:-1,placeholder:null,placeholderClass:"input-placeholder",placeholderStyle:"color: #c0c4cc",showWordLimit:!1,confirmType:"done",confirmHold:!1,holdKeyboard:!1,focus:!1,autoBlur:!1,disableDefaultPadding:!1,cursor:-1,cursorSpacing:30,selectionStart:-1,selectionEnd:-1,adjustPosition:!0,inputAlign:"left",fontSize:"15px",color:"#303133",prefixIcon:"",prefixIconStyle:"",suffixIcon:"",suffixIconStyle:"",border:"surround",readonly:!1,shape:"square",formatter:null},keyboard:{mode:"number",dotDisabled:!1,tooltip:!0,showTips:!0,tips:"",showCancel:!0,showConfirm:!0,random:!1,safeAreaInsetBottom:!0,closeOnClickOverlay:!0,show:!1,overlay:!0,zIndex:10075,cancelText:"取消",confirmText:"确定",autoChange:!1},line:{color:"#d6d7d9",length:"100%",direction:"row",hairline:!0,margin:0,dashed:!1},lineProgress:{activeColor:"#19be6b",inactiveColor:"#ececec",percentage:0,showText:!0,height:12},...ZC,list:{showScrollbar:!1,lowerThreshold:50,upperThreshold:0,scrollTop:0,offsetAccuracy:10,enableFlex:!1,pagingEnabled:!1,scrollable:!0,scrollIntoView:"",scrollWithAnimation:!1,enableBackToTop:!1,height:0,width:0,preLoadScreen:1},listItem:{anchor:""},...{loadingIcon:{show:!0,color:eP["u-tips-color"],textColor:eP["u-tips-color"],vertical:!1,mode:"spinner",size:24,textSize:15,text:"",timingFunction:"ease-in-out",duration:1200,inactiveColor:""}},loadingPage:{loadingText:"正在加载",image:"",loadingMode:"circle",loading:!1,bgColor:"#ffffff",color:"#C8C8C8",fontSize:19,iconSize:28,loadingColor:"#C8C8C8"},loadmore:{status:"loadmore",bgColor:"transparent",icon:!0,fontSize:14,iconSize:17,color:"#606266",loadingIcon:"spinner",loadmoreText:"加载更多",loadingText:"正在加载...",nomoreText:"没有更多了",isDot:!1,iconColor:"#b7b7b7",marginTop:10,marginBottom:10,height:"auto",line:!1,lineColor:"#E6E8EB",dashed:!1},modal:{show:!1,title:"",content:"",confirmText:"确认",cancelText:"取消",showConfirmButton:!0,showCancelButton:!1,confirmColor:"#2979ff",cancelColor:"#606266",buttonReverse:!1,zoom:!0,asyncClose:!1,closeOnClickOverlay:!1,negativeTop:0,width:"650rpx",confirmButtonShape:""},...{navbar:{safeAreaInsetTop:!0,placeholder:!1,fixed:!0,border:!1,leftIcon:"arrow-left",leftText:"",rightText:"",rightIcon:"",title:"",bgColor:"#ffffff",titleWidth:"400rpx",height:"44px",leftIconSize:20,leftIconColor:tP.mainColor,autoBack:!1,titleStyle:""}},noNetwork:{tips:"哎呀,网络信号丢失",zIndex:"",image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAABLKADAAQAAAABAAABLAAAAADYYILnAABAAElEQVR4Ae29CZhkV3kefNeq6m2W7tn3nl0aCbHIAgmQPGB+sLCNzSID9g9PYrAf57d/+4+DiW0cy8QBJ06c2In/PLFDHJ78+MGCGNsYgyxwIwktwEijAc1ohtmnZ+2Z7p5eq6vu9r/vuXWrq25VdVV1V3dXVX9Hmj73nv285963vvOd75yraeIEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQaD8E9PbrkvRopSMwMBBYRs+5O/yJS68cPnzYXel4tFP/jXbqjPRFEAiCQNe6Bw/6gdFn9Oy9Q90LLG2DgBBW2wyldIQIPPPCte2a5q3jtR+4ff/4wuBuXotrDwSEsNpjHKUXQODppy+udYJMEUEZgbd94DvnNwlA7YGAEFZ7jOOK78Xp06eTTkq7sxwQhmXuf/754VXl4iSstRAQwmqt8ZLWlkHg0UcD49qYfUjXfLtMtOZ7npExJu4iqZWLl7DWQUAIq3XGSlpaAYHD77q8xwuCOSUoXw8Sl0eMux977DGzQjES3AIICGG1wCBJEysj8PXnz230XXdr5RQFMYbRvWnv6w8UhMhliyGwYghr4Pjg3oEXL34ey9zyC9tiD2ml5h47dr1LN7S6CMjz/A3PvHh1Z6UyJby5EVgRhKUe7Kz/JU0LfvrJo5f+Y3MPibSuFgQGBgasYSd9l6GDsup0WS/T/9RTp9fXmU2SNwECdQ92E7S57iaMeJnPQLK6ixkDLfjlb7546RfrLkQyNBcC3dsP6oHWMd9G+V3JgwPHh7rnm1/yLQ8CbU9Y33zp0j+nZFUMb/DHmB7+SHGY3LUKAk8cObtD00xlHDrfNge+Z2ozU3c9dvx4Yr5lSL6lR6CtCWvg6OAPw9z538ZhhZRl6XrwhW8du1KX/iNejtwvPQIDR8+vSRqJ/obU7GupjdNdh2gW0ZDypJBFR6BtB2rg2OVtuub9JcmpHIpBoK1xfffLzx4f7C0XL2HNiYDp6bs9z23Ypn1fC1Y/9PCFDc3ZW2lVHIG2JKzTp4Ok7nv/G6Q054MIvda+bNb74pEgKGtwGAdL7pcfAa8vOKEZ2kyjWuLr7uDh+/qvN6o8KWdxEWhLwroyeek/g4zuqwU6kNrhyZcu/UktaSXN8iNwuL9/RuvVXtJ9PbPQ1vhmcP6t9+47u9ByJP/SIdB2hDVw9MJHQFYfrQdCph84evFX68kjaZcPAZJWwjMXRFpJ2zr91tfuvrh8vZCa54NA2xGWrunvmg8QWCJ/N4ir7fCYDxatkOeBB7an501agXbygVdvv9IK/ZQ2FiPQdi9osGbH+zRNf7y4m9Xu9Me7N9nv0HXdr5ZS4psHgXpJC9P/wDRTx0Vn1TxjWG9LGrbaUm/Fi5meSvcrkxf/Cg/ow9XqAUk91v3qHT97r6471dJKfHMi8Oyzgx1Z03t1YAQVT2MwgsC3u+yXHzi0faQ5eyGtqgWBtpOw2Ol9+/TM+sTOn8L08MtzgQCy+tOHXr3jA0JWc6HU/HF5Scssr4jXcYqfP6V/T8iq+ceyWgvbUsKKOn38eJAYyl56TAuCEr2WYei//9Crd/5GlFb81kdASVopSFrerKRlaoZj9HR+700H10+0fg+lB21NWBxe2lhNHsUpDZr27mi4dV379R9+za4/iO7Fbx8ECknLCPTsTDJ17O33bJpqnx6u7J60PWFxeAcCbMV56dJfQKf1bkMLfuGh1+76zMoe9vbuPUnLsb2DtmOe5HSxvXsrvWtLBEhaTx29+Ma27Jx0ShAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQaEsEVoQdVluO3BJ06ptHL34b1XRjp4Ch6Rq24+kmjG4Nwwg+9uA9u/73EjRBqhAEihAoe3xwUQq5WTYEzp0b3ZnV/Ncf6O/9AvY9wlh/6dy3X7ncN512Zw9BVLXjuAP4np44vnQtkZoEgVkEhLBmsWiKqwsXpjbPBOn3gRfenwnc+7GBe+zsjclvonFDS9nA9Iy/u3x9+vAP3735VPk4CRUEFhcBIazFxbfm0k9fHD7k+v4nQFaPQIrx8Gmyx/GJ0J/t7ez7mw0b9MmaC2pQQgh0/ZSm4g5TwueWWtqLt0HuVy4CQljLPPYnB0depTn+b3t+8B4t0AdBUv93h2H9xc6da0aXs2m+r1WQsLRnl7NdUvfKRkAIa5nG//r1oGtsZvjTgev/kqYHF/TA+AXoqv4npJemOEiQU1Eo2l+G0movBK1UBBPU7s9E1+ILAkuNgKwSLjXiqO/khVtvARH8dxDBRkMzPrF/V+9/BlG5y9CUqlXinHv9mRPXtvuus88L9H3JPv2zD2yXExCqAicJBIFWRwAvv3Xqwq0/Pnn+lv/K+ZvfPH3p9p5W75O0fxaBp793ce3AwIDMWmYhafiVgNtwSMsXeHp4eNXJC8Nf0PAdRCiuf/XgrnWUqsqotcvnl9DmRkCdweX4b9N7+m/ih+mbMraLM14yJVwcXItKpT1VRve+ArC3Qqn+3gM7132jKEGZm6tXg86J7OhDfuA/iHwPUpfUZSfu2L59tXxEoQxeyxkEgjKeOnLxHb4RqC+NY5H3+2953d4XlrNN7Vq3ENYij+yZwbG9jpt9GkBPQ5H9zgP9607OVeWp87cOQtn9zwJf+xDMNFfj+jryPqXpxj8c2Nn7P+SXey70lidu4IXzb0DNB4tr9751+HV7zxSHyd1CERDCWiiCc+QPjUCnsaqmZ62O5IN7N/VUNP48ee7mAZDTf4Tt049iUG4Guv4ZfNLos9UIbo7qJWoJEHjy+bP7fNsoOcnW0A0/aacef8PdG28sQTNWTBVCWIs01OfPj66BpfqTmq732UnjgT1bei+Vq4pTv7HM8Ceg2/o1qLQug7T+FaaM3IqTLZdewpoHgYEjV9fphvOj+OShWa5V+CxvZtpzv/LwG/aNl4uXsPoRwI+4uEYjAJ2GmdG8L0FK2mYa+tsrkdXZy+P7x2ZuHdW14P+BLdank9q6Qwd3rf+ckFWjR6Tx5Q2cP58K9Jm3VCIr1ogt48lO237r3//96YofeG18y9q7RFklXITxPXV+5DchKb3ZDMy37Nu5tuxG4R9cHH6b42QfAzlds+3EPXu2rfrBIjRFilwkBIIR7SHoJDurFU89ZOd680Gke6JaWomvjoBIWNUxqivFD87fej0e0n8Fwvr0/t1rnyqX+QfnRz7g+8FX8Rv8vL3auF/IqhxKzR2WCPxXqKeq3krDTdj2ierpJEUtCIgOqxaUakwzNBR0D09yiqePHOjveyOkpxLr9VMXb73V97S/h3nDXx7Y2fdPkAYbncW1IgIDxy5vM7LZt/hgrnLtxyaBrJNxv/72N+6tuNhSLp+EVUZACKsyNnXHvHL+1qcgNf2KbSXu2bt9dcmS9qlzo/fARgcmCtpzB3b1/Vg5QiuslLowENyDWDn8cSjl98PgdBviu03N+rl9/WufLEwr18uDwLdevLTF1YK3xnVZ2HI1bUxrT7z5zTuXdRP78qCyeLUKYTUI25OXbm4JPO00TBj+6I7+db8ZL3ZwMOiYdG4dA1lN9HWte2iuI2NAVPapC8O/CGPR34Ip/AZIbIMo7yX8G9QMbcS09P+2b1vf5XgdrXaPfiYns9oeLLEd8D1/B7Dp0E1jGP042pXQj7RKf546cmGzp+tv1TRf6YQD35/QO3seP3xow5IfC9QqmM23naJ0ny9ysXwgq98BWc0kVhv/Nhalbqe8kd/Fr8MOSEr3zEVWrwyO3I29hl+E9LUHGf+nAXI6sGPdd8uV2YphIKnE5IyL6bLxk7cn3bdkHHefrpvJAExMZ1uBZmqeNzXtfzUzk/m/ens7LjV7Px+8d9e1579/44l0duZtge+Np5zEEw8c2pBu9na3YvtEwmrAqNE8IZvNHsep5//yjl3r/0O8yFOXbv0QCO05gP0JGIL+fjw+uj91YeRh/Dp/PtCDM7Zpfmjvjt6Xo7hW9ycmJjaYduf7Hdf/8HTGfa3rG9rYxLSWnsloPg7fijZV8oFM2Ja2a9t6EJd7bCztvHP7us4rrdD/r3/7ct9I99jEI4cOiQ3dIg2YEFYDgOUJDFj1e8TqX7cT4kImXuQr5279A4DeBEX8ayvprU4N3rovcALot/TH13T0fXDTJn0qXk4r3k9OTm4y7a6PzjjORzOOvn1kbEqbnEprPhRzwAKzwFLHk05hv6Yd6N+o3R6beG50aPSdr3qV6IJKkVp5ITIlXOCYn4Yexr0w/DO6YXymHFlR0e5r7tsM3fxgJbI6fW1ivTeT+SsYmr54cFff+5Cu5X+hb94Merp6/J/PusGvTE6724eGJ7RpSFOkKPCUZvBPBccoHBet3Rwe13rX9tw/PjXzZ5hKvr8SfhWKkeA2REAIa4GD6p0feRdWBnvxjv2PckVhVfBf4A29uG/X2i+Ui2eYn8n8NryuDr3jPfWSFV5k44UT137eshIP2K7/64cObbheqZ6lCp+Ydt8TBO7vTM5od1+/NR4SFVhoLpKKt410lnE8LTMzo3V2dLznxLkhYgQ9obiVjEDln7mVjEodfYcpw+MAsftg/7qSDbAnb97sCSb0Yei2fqOcbovVqKNnNO8HmAE9Cv3Wp+uoWjt27HpXNqH9WTKR+kBHKqEFbvo5y3N/avfu4g23R45f3WGa1k9ZicTd0zPTf/f6O7f8dT311Jp2fHzmgJlI/N70jPPe4bEZ6Kg4qw0lqlrLiNKBiLWerpTW25PUbkPXZViW62ecHz+4d8PXojTirzwEyhq8rTwYFtRjvpX/rlwJ+iSXugPbMuyKBOHo3geRJtuT7PujcmVUCuPJlhnL/9NUqvMD2eyM5sxMaIlE4n7XML907tyNjcxHQjty4sZv66Z1xEok/xNW5n4uZSf+8sT5m++vVO58wkEu5sR09pd9w/rWyET2vReujiqygrSopn/zKZN5qMeirotKeTyolm7p/+X06Wvr51ue5Gt9BISwFjiGsLl6N6SrvylXDNTK70D4mX071pwtF88w6Jd/DG/1E1u26NOV0pQL71y3/8PJVOcHMzPTWkcCH2YGOaTTaS2RTN6f1fQvvvDK1bdnbO2JZCr1SeRfn05Pa1PTU0gXJBKW+ecnzlxvCGndhFQ1NRP8bcY1/vjS9bF1V26MwHwsVKiXa3etYVw1TNhYJ3TDjQCO42jJVMcez7J+t9YyJF37ISCEtahjGjxkGDr2DJZ31D8h5vUQJL5RPkXlUMM07u3qSGidICvkzzuSlmlZb0olrK9hD9v9JCrPC196JoPMAolFg6CV+PPj54YeyWecx8Vk2v1Q0rSfhFT18LnBmzBRyNalp5qrSuq7kiAsh4SFa7oZ9M0wzI+cPHOjZPo9V1kS1z4ICGEt4lhiCvZrSa2jol7qzPXJPk6nIGbVbWfUvcr7hO9MP97ZVXpggOu6ajplYStj7l1XvbRMXbPAbp6HzSSBlkraNknrvfVCcPt2sHYi7f3pTDb47KUbYxuvKqkKpYBXKBnV869c3WgbDEixAck0FGFFfEzJzbIsO9C1TyrcymWWsLZGIHoW2rqTzdo5dXyykz0NC8l779i5vu4zwM+eHVntGP5jqVTq/6AkVc5NZ3wNH2lVxNWZNIukMSjiNd9z0+CHp5DXAdX4SAg203w8GB5IATtODHzdK8C15kEjhXvNS9rWA11dnfcMDY9prscss48RySakrOLWqODCoIKAgkuVgsS0urtD60haeV1YYVbbtjUn6/74HXvW/11huFy3PwKzT1r797Upe3jq4sib9u9Y+wxe+vh7W1N7jx49v6ZzbffnQD4/Cj1Pfjx54XiBls6GVuTUc9mQsOIO9mPQFdkIRlz4fy5JLm2ZMOqTcJaXIqpcqnixVe+rdbZ3dbc2OT0D0wZIibHSksmklslknvx+//q3PiKnXcTQae/b+LPQ3r1t0969cOL6G7o6E09qgZegdMJBpVQ1DbKCpyUt6oPKz/4NEJalCAuZFIuEVBJd+jgLh4rvAiFqUVGkhJZMWFp3Z0obGSu/d5gSnWmavuO6h+/cvYHSobgVgoAYjrb4QPMUiGtj1/79jBMkLBwiTlMASlYzTkhWCJyTrGAyMOFkst/BoYMmuIIyGJYcMXMMdNwHPhYN1qWS1t6ZLGaKZL8yzFXTr15BooLLMugHMBRNKgW+It8y9TEcJGt4rvcRFCCEVQbFdg0Swmrxkb0+cf2XOzq73kgdFieEXF2jdEUJKQH6SVWQrNjtZDKlpTPp38U58iUbthk/Ph7sN6zg/xudSGvD4xkq6otcnnjyF0XRRTflkyC0IIJE1JG0QbqGNpMNp5xFhRTcZDNoj66988SFm5vv3LX+WkGUXLYxAuXnCW3c4XbqGs9hwjv+a9lsuN+ahOJSCoLjNDAFvVUll0p1aNPp6adTweSflEszPO48oFn+4yOTmR+6enOshKyYhzWpf/jDuuf6x2aV/qNRaPG/1d0gUXWCA0uu7GhMmkqmerEc8KOVU0lMuyFQ+Ylut562YX9Sncmf7Ojo3BDZWbGLtMkiUVXSWTFNuMqWuYG530f7+/tnGFboxsfdd9mm8XdDo9O7rg6NFq0CFqZr5DWlK9qV0fZqGvZchSuPlevB2VmG/hOV4yWm3RAQwmrhEcW64qu4ykfJho52Vp3J8quBYQooqWDKADftBd6HD+5efyoKj/zR8ew/hWXY56/cnFh7a3RCTTGjuMX0SVB9qzu1qfQM+jO3dBW1g6uVSHv/qVNX10Vh4rc3AkJYLTy+WA/8ou9kJjo7bOh+DLVFZ64TEbCyBktxI5PJZj56R//Gx+NdH5vM4vuI+p8NXh9LjU1iw3EZhXc8TyPuuV9wDaaCfBjTM06N0hVWQmHBDzvSDZ5tvqYR7ZAymh8BIazmH6OKLbzv0KZvJEz3ZzEFnEolaEtV2XEaCLKadrIz//TQnk1/EU85NuH8th8Yf4j9gMZUOrNkZEVZCnsbtTU9KW18GqcKFyjh420sd2+j33pg3F8uTsLaDwEhrBYf04O7N/2t7/o/C2FoGnsIy/YGlvAwSfCvZzLOe+8oR1ZT3u/5uvHJC9dGtJlMrfqjslXVHwjpat2aLi2rjFFLjUSrFUjlO0juddXSSXx7ICCE1QbjiHO0/hofbPgwpnDTOR2V6hWNQqGUx34890noet5yaO+Gko3Y45PO7/uB/lvnrwxrWdha1absbgxo1FWtwplXqYSJY5Nn5lU3bLHQmGA/yko0plVSSjMjIITVzKNTR9sO7dv8RSeb/T9BWmMkKv4D+YzBXuljV7yxd+zfte6VeHGKrHTz4+cv38JWmyUmKzSGG5z7VndoE7kz3uPtq+Welvhwm39weVjOyaoFsBZPI4TV4gNY2Pw79mz8KyebeRIH+VEZTaX0sf27+v794TKmCxNTzr/2NOPj5wZBVjjdYSklq6jN69dyKuhqmWztivYob+RTSkPbe/xMdlMUJn77IiCE1W5jq+s4dYEO6mzsYAmvi/+CrH7LDYxPcBq4HGTFVcG1ULLT5orS1ULIkoSFI2cMHKG8obiXcteOCAhhtdmo6gaOh4EWWlkyYU9gvHswXfgV19d/7+LVkSWfBrItJJhObL/p7elQR8fUZnEV70XxPc01sM+xrzhU7toRgZIHuh07uZL6xA3LBaYB+Ar8rBsfz34YX1j+D5eu317QNGy2xPquSE4mDuXb2IujY2AgytNE67RiKFshzuwCR5s9ZSMlsK0QEMJqq+GkBKOF5yFzRoidK5BoFCeMjM/8mG+a//Xy0Li55KYLBRiTrGjwOQ1br4VMBQuKVJeQKVPxMLlvPwSEsNpsTEECmBLSgbHUpwD1YGwse59l2p+9fmuig4fiNZIowrqq/6Xeqm9Vh9JbjcOKvqFtACX7gV8kTVZvkaRoRQSEsFpx1OZoM2iKxxuHLtDcsZlgLzYZfv7m7XSv+r7fIm234XSP/8o5ktWqzqSyZr89PoXPYDTYkZvziw0NLluKayoEyq4iNVULpTF1IaDjHHZmoAW4aep9geN8fiLt998cGYdtVp7K6iqzXGJFUCAi7jdkuapsBJKcPBwgyP8YRyV7B04Q3dDbpY3jg6gupoMNla5U41BbUN9n0sr1ScKaHwEhrOYfo7paCAW0WiWknihhW/0Tabf/6tDtxpIVSIhGnz1dSXUkDL8fSHKi4/lWPId9Kp3Vxqegp8J/m9f14D6DQ/nmb281FwgkZ1Dj7bnSSFx7ICCE1R7jmO8FJJr8jCvjeNrIxFjDJBpKVaSlXhwDw384MyucBoLAGEfHI5ptO6n1YAq4FjorH9IWjUOnFlF3pj62aui3whbI33ZGQAir/UY3XCVEvzgdw/8NcSyGUhSlpVWQrFg2p39xp0JYLyIohaXxdZ2FGofG6yi85/QS32F0Asu8URgu1+2JgCjd22xcsVElPC85169Gaa1YTkRWJKpSqooBiQQzONvq9sRULKKxtzzAEJw1api2EFZjoW3K0oSwmnJY5tcoSD09HanEDztubnfO/IopyUWC6sUmZUpW5aSqkgwgK04DxxaZrFivacCaIdAuH9zaM1rSDgloOwSEsNpoSMenvU93dXb+EE5taFivKElRqd67qrNmsqIF+yjMF/i56MV2JqadYKxXMDXM6+4Wu04pf/kQEMJaPuwbWvPticwj4Il/NnTrdl7JrqaDC5wTUle1GmdWWVCw1+JotjA6PgnThsIdQrXknF8arkJi/+R355dbcrUaArU9ha3WqxXW3tHR9C5dN//T9eEJ3aGdUwP7T0V7F86Mr0VW4mF6o2NTS/ilaB2HDmb8wA2+08AuS1FNjIAQVhMPTi1NgwRkGKbxRxMz3uaJSRzVUkumOtLwo6Zc7aOkVdEhynN9NQ1cyuNqeEqD67mX9TXGyxXbJhFthYAQVosP58S0909czfqJqzdGODVqaG/IUbCWr2p0yukfp4FUtDfeir1yl8IPUGjPHFy/fqJyKolpJwSEsFp4NEfT6Z3YBvOp8MvMc0hAi9hHNQ1cBrJil5TUZxhfXsTuSdFNhoAQVpMNSD3NMTzzU1PZYAM/ProYkg3UV5rHT8lXmA7SwnwEq4FLLVkRI04HM+n0LdvzvlEPZpK2tREQwmrR8ZucCd7hePr7rw2N5PfxLUZXON1zHKz4kb0KnIttP6Njk8tyaimbwXPrsW/yq3v3bhoqaJZctjkCQlgtOMCYCnU4GedTI+NpQ32XbxH7QOmKG5nzdIWZJz8HNkKygqI9TmSL2JSiovGVn0A39c8WBcpN2yMghNWCQ4zPc0HRbr6GEs6chJFnmfl3knZO4/hmII1B6fiFG9br0s6qAeXPp2WUrhzHeXH/jr6n5pNf8rQuAkJYLTZ2kK7Wul7w6zeGx9DyUsZovOodOizosTg1TM9k1Wogpa7lIisOF+w48E/7E5B1Y/cgtdizsBKbK6c1tNioT6X9n3MDcyePOo7OoJqrC6S0+ZIYV+GSOHxvc18PJCxXG4ed13I727axqTp9yk9rX1jutkj9S4+ASFhLj/m8axwdDdbgELxfGsLpoZyqVXPVU1QugVJUV0dC27p+FaaBWWxknq6ceAljTNMiAf/BoUMbJpewWqmqSRAQCatJBqKWZpgJ731Zx9pJM4aK0hXe5vlKVFEbKFlxs3PvqpSSqpbzKztRm+gnEkktnU6/2GFMfa4wXK5XDgJCWC0y1iAR6/Z49iOjY7C5qkG6mk+3SFQGlEP8FFdnygrNFqBsn1OxP5+K5pGHbcBhqhT8fqu/v39mHkVIljZAQAirRQYx7Wj3Zj3tddQjVVJ4l50CMjHe8mqOTJCCvmoTyIrENXx7Uinbm4Gs2PZUqkObnp76i0N7N36tWl8kvn0RaGnCGhgILKPn3B3+xKVXDh8+nPseX3sOlpt13+P4uonv71WeDqLr1ampFB8S1JrulNaHc9rTMxltcpofOeWns0rTLkeIZUHRnpm5YibMf7kc9UudzYNAyyrd8ZLpWvfgQT8w+oyevXeo++bBtaEtQd9s1/ffRsV3I6eDJCp+nourgH04UZQnhIYfWm1o8xdUGCU8/E/bil89sH3dlQUVJplbHoGWJaxnXri2HTvd1nEEcCBS3z++MLi75UejQgcmJjL92ax/gNJPo6QekhVXAbdvXI3D+XQ1Bcxiu02zTAEjKFIdHTQS/S8Hd2/4YhQm/spFoCUJ6+mnL651gkwRQRmBt33gO+c3teNQYin/oG6aKX5rcKEukqqoWN+Ij5vy81v8UATDG0WGC21jlJ96K6wKPpWd8H8jChN/ZSPQcoR1+vTppJPS7iw3bIZl7n/++eFV5eJaOczX9Z2YvM1LPxWpocBHKv8qHHdMqSphGUqqahaThfj40ITBcbLnsDj6oXvu2bS4n96JVy73TYtASxHWo48GxrUx+5Cu+XY5RH3PMzLGxF0ktXLxrRoGNVPPfNtOolIrgElLGYH2wbZqcipdIFVFlDbfGhqfj9bskCaHHS/7gTt3r73Y+BqkxFZFoKUI6/C7Lu/Bl1jmlKB8PUhcHjHufuyxx/g5lbZw+BL7bX4EoiZqyS0T0uM0j1+82QSl+ua+bhxj7GjD2LicwWkLzaarigbKsmDJ7gcTmezMBw/t3ixntUfAiK8QaBmzhq8/f26j77pbaxo3w+jetPf1B5D2RE3pmzyR4/nH+Mti4Wx1dUrCHO0lSVGqskFUnakkpn6mhu086jgYHkWTW3Wbo4Tli6L5gqYHE47vfeDufVv+YflaIjU3KwItIWEdO3a9Szc0ElDNDqcLbHjmxas7a87QxAnX9ljfxcr+Mzs29ykpi1O8iJjoR/cm5o7dnUl89LRLW93dyWmVIip+Kp7pmlWqIvQ8Mga9Gslm3Efu3LX+K008HNK0ZUSgplnGMrZPGxgYsIKeXa/TA61jPu0w0+7xBx/cd3M+eZspD0wbDgWm+RXP13cODY/jWGKuGAb48jG+agNpilbqlKZoWDqDY2AyjtNUlupzYZlKpXgaxIVMNv0zd+/d+uxcaSVuZSPQ/IT13TN34QRvZW81n6HSDdMLUqmjh9tgd//Fi8OHEl3JL3Z2dh3MzGA7XU664llVWRz/QhLjNYmsmaWp/DjCjqIDdlaZTOZZ1/A+fGj7hjP5OLkQBMog0NSE9cSRszuswNhdpt31BRnazM3U9IuPHDrUuG+419eChqU+cvzqjp7u5P9KJpMPpqc51Zv9QntLkFQBEqZluVCw/7nhaP9i376+8YIouRQEyiLQtIQ1cPT8GjOw7vE8tyFtxBrb2MBXdh579FF99g0vC0nzB548ebNHT2l/aFmJj1BPBYyav9EFLaQ+jdPAVNL8/pZ13a8qiJLLOhAAjvrTRy/d0enbF+69d0tzHFhWR/vnk7Rple6mp+9uFFkRGF8LVj/08IUN8wGp2fIcPLh+4sCu9R+F3ucj0MLf4vaVVnChqYWmdaQS2jpY2vd0djh86Vqh7c3Yxm8dudTPxaW0lrn7yJEjZW0Tm7HdC2lT0xKW1xecgHE3FDWNcb7uDh6+r/96Y0prjlIO7ur7TOD5b3ayzt9ylY0Gl83qKFXZsCXrXdOlrV3djf2LBr556JOshLDmMWhPPXV6vav5O5jVxYLUhNl3iIbV8yiqpbI0bQcP85C2Xu0l3dczC0XUN4Pzb71339mFltOM+Q/0rzu5f2fvu1zH+QDOt3uZ0pbVRMRFouJK5qqeTkhVqyBdtdUmhGV5JI4cudrpd5kHiyp3tTU/8s6r+4rC2vCmaQmLWJO0Ep65INJK2tbpt75298U2HLuiLh3oX/95L+0/kHUyvwTieiUJHVEimVzy1UKeWMqv2pCoKEVFRNXT1aHawnBx80eAZj7TwcxdAc5Gi5fiaNnNT37nCk4xaV/X1IRF2B94YHt63qQVaCcfePX2K+07fMU9U7qtHev+xE/7r3cc70O+6w1gxuV0dHZiusgvJS/O7IskRXLs6KCxqj+B26t9a3uUREWi4plbQlTFYzXvu+7tB3EIUGel/L6e3TNw5NS8zYAqldss4YvzBC9C7559drAja3qvDoyg6pwCP+KBZaVOPPjazS1vMLpQKE9fuPnawDB+EqehPwzWuAuSl8LPg90WVxhJJPWQCUmPBAWTBEz1TFUGpqO3wYYvIPgr2az35a2b1/50V6f1e1NTlVcvEzB0xRekj67usu5FmS2/crvQcaol/zeeObfTSOj91dIq28PxiaOHDx9quy8LtQxhcZBqIS0Dhkl2l/3yA4e2j1Qb2JUUD1Iyz1waOQib0vsxKXsAFvH3wMB0JySwtZC+DBPTN5BOCEnhrI1BuKe9l6tIzsVCiD6E0DOabrwI2elZ09aP7N3aNxjheXvK+a1OENa0EFYEyYL9rz072Ju03ZpNQKj7Xd899cKhNrA9LASvZTY/s9GcHoK0XsrakLS8UklLxyl+/rj+/Qfu2367sJNyTS7SuZfneO7ffweBGScu3NwAqWgrTvTc5jjBZmw87tMCfRXYKQWOgula4OiBOQUZ7DZuhrAGdQXxV0zPuCaGnkv3VPGHOpPw7+QPR62OM5HhdNddGOeX2kmCbSnC4mDlSStVTFr4eLljdHV+702vWz9R66Cu5HS5h5hmHvz3QiOxwJTRo2BGgY06dm7OVhewYGAY6s75oD+ZDs4JPY9JyqSCQ7ABqftd5VFM3/j2Ja4mtsWpJQSq6ZXu5UZTKeJnsHpohiYPRqBn04nkS2+CQWW59BK2dAjwS0Y4IHDz2ERWG8Gnwm7iK9W3sFmbvrqGPzw6gW8eTmvTM07XmTPX28KYd7EQ3rjnvv1QFHbPt3zT9DcMPHd+13zzN1s+/hC2rKOo7NjeQdsxT5LEWrYjbdLw05eHtwWe9jl0542u62HZHZIVpalY/yIlP5X3MHYddLLZfy4fmYiBhNuB509vw+rG3tKY+kOwGHLi7W/cS91jS7v4s9TSnZHGLx8CICH9lXNDX+zpWfXuycnaBV2e3e567nAm4973qv0bzy1fD5qr5oEB7KXt0u7B3Loh7yhWVfypbOalh9+wr6U3mbfklLC5Hi1pDRE4ef7Wj+EEiZ+amqpvJT2bzWjJRLIPR3n9riA5i4DZg720DSIrlsrvHXSZ9p7ZGlrzSgirNcetqVp9/vz5FJTqj6JRejTdq6eBMzNpHP9s//QrF4bvrydfO6f1JrCX1mvcXlo98Kembjotr3wXwmrnp36J+pYNeh5JdqRem83O77gxkpxtW3bgOZ/g1HKJmt3U1Rw+3D+zrc89aunagnWzpq6PdxujLz388L4F78tdbtCEsJZ7BFq8/sHBoMPX/I9hyrGgnuDUUZzrnnz7yQu3HlxQQW2Ued++fZmJ1e5LoPB5k5ZpWCPXz+08du+99zrtAI0QVjuM4jL2YcIZeh+2+9wF49MFtYJSlgmHE0g/JlLWLJQPg7RmhtyXsJ18eja0tivsXhj6xy9ve/mRR5TRcG2ZmjyViN9NPkDN3Dz1FW5z9XM4i+s1ME1YcFNpUIrVLHzJzHnwjl0bn1twgW1UwPHjxxPXpztejR0HFTc+F3YXRwxdfdM9W08D0zrs4wtLaM5rkbCac1xaolWOvurhZIPIih0OdVm2haNTfqUlAFjCRnJP4HBn+iUqz6tVa2nGpTe/etsP2o2s2G8hrGqjL/FlEQC5GHghfplSUSMdvwaEA/9+4vjpa3c2stx2KIsfUek2dr+EuXNF2xEjSJx98w/tbFt7NiGsdniSl6EPp84O3W/Z1oPzXRms1GRKWdCJdeCIlJ+vlGYlh997r+70+EPH8NHJEtLCauCph+7bmj81ox1xEsJqx1Fdij4Zxi9AT2KSYBrtslgxhOD2gWOyz7AstFzx6zFHj1mGobYUYAgC9cHge3ddK5uhjQKFsNpoMJeqK6+8cm0X6noXiWUxHA8WxAdWNyQM45HFKL8dyiRpueM7jllmMGpnjO+1w9fNaxmXxiogaqlR0jQdAkeOBPjczrnOiQ6jw88ESSOA6KT7iQzOHEvavu1pZsLQg4QPP/DdZG9Xx/vWrOr+mfR03SvtNffdxleAQIgvTzjBT0w409Mpu2faufZy+vDhw5WPMa25dEnYqggIYbXqyNXY7i/jCyvdfmaVb5hdVsLp9LJGp43j1/1A7/RdvdMwPRzEboRnLVHe9vEvL3eXBOB4ZMta22H+TiqV2LJQ26u5u6Bju44Z3J7O/Lvp6cwPmBanOwQ4uNHRTWMK21bSvh1Mm642nTWCtKkH07rnTE72aOO0XZq7bIltVQSEsFp15HLthg5J/+aJE12m3tVjOPYq1/dW4cTjHnwMYhXOce8xDd3y/PJW6OpMdsTRVy4iK/rKMR/jwvz825VIHFzT3fkx13UW/dnhRy3GJyeeHEs7n1XNibUPFvY6vtGDw5vV9w0Vofn81qGhZfDhi3HX8SfQ/3HPMse9CWcCX0gel2OIFJIt+2fRH7qWRaYJG85NxldGzV4tGayFSLQ24+q9ULyu9gJfMU5ELTn6wUISTl03NHz1KzyiJLqmX657OLLdSJgoXTO7cBxyN172blier4YCvBsFdSNXV2dC35tKJrbzfPfFdjwvC/qs9MSMxxNRsSqmT6LhUDQHE+jUBE7UnATXTuLsrRn01K2l/x6+qItiR3TNG8V59KNB0DGSfNXGUXwJY2Gm+osNhpSvEBDCasIHgVLTt75/aQ0MnXpBNb2QgNYEntfr4wu/nBYpKQLtxtdwAh0SBX3VDe7nM/Ha5vf1Fb/CURS2bCTAWWuxR229qRsbQQQbUed61LfW14JVKKsTJ5sk8WUcHbtlNANyTOhgcmAGKH7p3m1FWpqtuZCu+LByVdKHVMjpKEQrBwIW9tnpXOIH+QTDSH/D9f0bmCLewDn1I4HmwtAypPDZ/oe9oXKf/aMPsWxSs/RR13FHrURiZE1gDR86tKHEdCDMKX+XCwEhrOVCvqBeHNaW6ui11/mWDtLQ1kEiWodXE4rwYgepAPssTPCMOjIdAk94TZ8pMZjch8HjDorGFUTUAwlkh64be0A9/ZCatiDZWtOyE7ClQmIdJICJFYhA+TRV4Fo5/QIHiUvrTEbkVRCxiJfsSBbfYk87OTExXxdazY5yUgiRKfpHQ1YSkONmAZY+gV4NIeVFfCXoLNA5h/Plb5LzWAyzF+IVXdNnvO/6GcsyhjC1vmWZ7s2pO3fdOqzriy9asnJxZREoerDLppDAhiIAEtCfO3F5rW0a6z1PX4/nf53nG5RqqrpieSnULEVh8cx4E7ugH78H8tG9eP/24oVezY+pkpA8b/abhPF8le75BqdsXUtaFeaTlTI2IByEoU1l8oq1mkokcZHElIRoWmpejMMCMyCvQXyy7JjjuUcgOl4tLCzCMpTHgFpcgkViX/dH/ax2Szf8m2Yqc/MN+1r7BM/C/rfCtRDWEozSkbMjq7NTY5t13dqE6dhG3wsSqlp+C9DDi0ifLrqmT1f6BgUaPjiHN0lJAGAfvpWcI4XjiHIMF6ocO/EjmMa9HeelQ1LT1PRpoce/sJwOTCQtc+kfGQp6Uxl+9JWtmL+jNEaJ0gKBgbsygR58B4sHfwV5aliVWg3vCHv6ymHcdG868IzrVsK6pnd71+/dsmXxbD3m3/W2ybn0T1/bQFe5I8euX+9ybuqbXMPbDA7ZCKV4uMOecyz+9OfmWvj9x9zEw6JW+JuOX298WhE6qtwLEV3TL1tb/AWj7sqwfqaro/sdmcyM+vBp2XzzDEzaBiQsNH+e+eeTjQ+ohwqnG0BYhfVzNYKrkOmpyauYYH8KvD8G6RPBszrC6Jq+ystl0ghzXEZjR5+O4+iZwTh+eG7Yqa5rq/3hGzzTSkXKn4YgIITVABjBP+ZzP7i8ydasrZCetuCHvIvFRs92SEdlpnCYE2LOQi12OA7RNf1yjrphHIyE9yOXPnfNMDg70DpdTf8DWDKs5rRvMVwChAWrUgh21HzllD0NrigqlxKVC7bKQuOOWeGiuI7OTkhb6T8C/Xw3xkel9cXxj6eIxiY3Hhx3X9dHsWJwDaa3l1+zd9Mt/F4tUk/ijWnP+/DBb8++LWqvnh0c7NDGta0pO7kl6zpb8AJzEUr91kYEFdeBRCt69Nm4+AsSl6jwjVGckY6VwPwUpLhLURx9xliWvxFHi/w+zB0SWCnLsVpxnoXesSI2ngp4zmRJXPgf/0IleGH51R6uwjeX5MR76qtITh7+8N9Cp4GF7Sm8Zl1s35pVXVomm/5c1vG+Wm284njHJeJq44/FjixUAld8w7uijW6+xo3MhW2S6+oIVHumqpewglJ87+LFtcFUcqur+1vxwPcZJqYPMOyhXw6GKI4+4/GwQpjCBhe+6XDIpFb06PM+np5hhS5eXzw9bLJ2pBLGv4Fe36BU4kA6IQGw8MUY6MJywVeqDs54Z69zrWdY7jI3G1ZtUiSV6zzDI3IqLLew/wu9jspl+yywrA1pEed5QceXPT3jBb/DLrA5ua5UHZ/4eMTbFx+fwvE3DJO8fANrjlctL7giJhRx9MrfR89R+VgJ1Y6currONuwd0FNsxwtV02mPlWGLy1TxlPHf6Hh8PH9xesvw9yRM+5PIRT2ZIgVKKZxWUY/PT8aTFPji0i3m4Ed1hDWV/7uY9bNGtiGqAyorJRWSqCgdkrQiR5KddrwPlsq8xfhG6efvx8dvtiQczDdmmPaldDBxSVYeZ3GJXxUMWzxq5d4fPz7Ym7X1HTAL2A7NqtJHEQ3qtCPjw3LoxB/v+OMZ5VVzR5aHWRuErYA+y4uu6fM+Xl9J/lh7bFvbY+vmv0bWos9tsXAWSLIiaSnyApHxJz6SbFSFuXTw8i86r5vVRW1m+6IHmUREAuI0lcREP5q2ztWPrO9/YK54xsXHI56+cePvj3qBfimZNS+J5FWMcrjptThsRd4dPX9+DcwEd5iQphwozfkCwJKaLv9ewHYKeicfSudwShcnJDBBOD3MTwGRO0cqLIj73jQTaejDBYaPHTBgJ/i5+HyYijd95sFhRzkzB7yL2IrCtGwezj9nOQVTUlfPwiicifnu5J0qHHd8mXHIG6ZD7JQqIk9kJK6QwAokMWRUhMaSeJ0vcfaiXNhs7PyuwpYV51Vh+EM/Pu2M9GckpyiOuZm2Wvtom+Y4me8xPbvIIujzPu6Wbvyt1ejL3U7Sv/v754ZHsORwaX3KGdwiJhO5pzY+Mivk/urVq52jTnIXlEc78LKu8qAMx/G8kHhyOicosz0ovM3IrIDKb15HSvDoOoqv+hMLYCOWI8ash0vmufryZVcqLz4u8fym3ov1xT/EVp4UDUTn4/iS0xW+sZTMojASmLqGp64iH4FRXJQ2TKj+lv7JVRTVxwQkm9APyaboGnGMzSVR6VR87ipsVT645ovOzi5tamb6zzB1/nqzjz+s9YetwLioZW5C8jq08K9+1IxS8yQsfF6ap1WL2BK8VOaJc6NbPcPrx7wJ++hmHQUPvOaQgMJ3ETtVlERDP0wVsQ19uPgcLQyt/Dc+p4jlL6k/1xa2qVyh5ApEzEoErm/DsPOTXV3de6anq36roFyRdYWVbVSshHJEMt98saIXfIu9koplYZL6m/hUz7kS/Jt0/PE8+Jj6X/Y6k+fv2tA1BKIvB/OC8WnGAmp5dpqx3XW36fjgYK/upXbhFd+BrRlqn16MfkrspkoC4hnirYjbUVWzs4rHx8uL3cerjwt0TA4RcBcsuX8Rn97q54okVsCKJJ9YkSvy1gJR4aOtnAr6OJP+L13d+BKBKMEzHhAfgDh6yzD+vqHjTDDvYpAxLqwEfVdbE9bpIEi6V27tdLP+LnzPrWS/XrRTnz5d4e79+LNY7r4kP+Z7Jv7z1LyPL0B4Tb+ci9cXLy+eJ54e8Rw//rqqcUR+HOrgYVprJbBl5E2w63oI64J7k8mUDZLGhmAXs19ucVkxP8gKQu4ptCxbMy2TW3KAGI4u1P207ztH3CDx/7bL+Cdse8h1Zy5ev7Dp8uHD7blJuy0J69TV8XW6l92Dl3cbLG6g98idbhDgdANcY1ZY9o2N4mpNr96GRf1Da3Wui0RW69F1bWslvp81LD2xDTOGu9DhQzBc7AcYfYlkAqo6A6ozqHNBYJTESGitTGShsp0qQSxT4AcoPJQw0LBlEPhBFakHDjoLvY+XgVIyg7WK77tG8n9pvpHXBbXL+OMBd7FN6KLu+uf27esbX9RHdIkLbxvCGhgYsDb3v2a7obt7YHakpKmYiqgE2ioqJbzIOszXcSov/DAzRRNehyJKvPx4+igv/ZLKEaCkoZxUFMYXE1I8f7Xyq/UHp9CkAlfbCF3NdlhS7IQguA0N2wiJYy1ktC5IISb1Okr5jSYruy2SGlYkIkKLSC3yy/WrUWGzSnjaTUX/QEhYQuNewLCdwBFKRkpOuAfr4sBnwwfDg6B0MHagORhBHNqHw5WxTwYav6lAt/42MBLfrYZXHO9w3Ftr/B0Hp0pY+tkD29ddAz5ln8NGjddSlNPyhHV8aKjbzAS7Dd3egRcvgRHJWyrHASw9Pyp+vlSxEluH0jWAGQF9VVZMpxHVRZ/xSKQU4PR5Xy0+/sLQZCFS9DN/XKtSeh5WrL2x+sMyZv+W67+vwz5eC7oDx12rm9pakNg639B68XL3Qh+2Bm94DySxHhg0daBHSQhiCbyyyMS9SDi8RhEHyYP1qD9qak0S4VGn5VYrSTRKEkKHWYYiHuQmCYb/YKYLqS+3H5LYckxJmz6qhSYJ5yNgzgtuclESpncBfN8Fj3lgJdCSGpHcGECoxrouMoHjzO+4evLLMB1VKxJV8Wyj8Q80Ix043jnTu32hlTdkh08Yn7UWcnio9Qs3pzZm0lN7LCOxIdIZxbuQ1+lAVFFxJB7aMeUIiPkiPRPjo2v6dPF4FVjHnxi/oQK0Az/bymf5uI7ayGLj6eM63nrbF5VNXzV7nv3HViQL3JAEaSV1z0iBNJIgJBCYkSKJYbdjEiSHw7a0BI5s6QBBbINUswMUsQ6E11UojZGccA9dcZDBdQY+TgyFTgkiEKYyIBvstAQzIRk8cBJ+A2j4gZFDFWAqjAp3V5IhQYYwwUJ57ByS0QINzMYK8FyrRxt3KNbXb2qG/UVNT5wDyCt6/A0boGbdqzPA4tD21SPquWihPy1FWHjQzYs3xnZkM95ePIZd8RccBx1xez/UPowp46I4+uVcLD9/8Plq0Gfy6Jp+uez5uqPyY+UtNN5DuVQc06drpv4bIDXsjtsMpdkOSC79QK4Xog3PzwF4IBNCBiIhpBSpoE8jioqWaM2KCRuOqwLXgIQItKIe0lCYD/lZjoqgGIo0+J++SsmMKA8eqQ21qHuUh2PfzQHN6vgG6vVK8GfmQhcbr3Yff+AEi3rtdCtNF8u/eIWD2ATXx4Mg0XH1Vr/hm7sDQw8PvyvTrriKWocEE0C6oM/kJRJHrAykgj6WGlq+JUifu6YfS6pu4/UVa6AgQcXKi78ApekhcWFBwMstEkTX9MvVHw+Lt2ex+4+Pg62CxgsHEwZbAdgWIJfA+ICkfDRYtyAwWWB7Ay8F8VT/KB0bOJ4Gx/CQfUKSwZGrJJs8iZHYgB0zMB+zk8hopQ8hEcEog2ERASIBAOL5fIrVIKLxXKtzKPZLgZUckvGf+/nH5HsK0+Uz3316zeAjj3D23Lwu90w0ZwNpiZ72UnvwfO/AXIFnXfLBxLOsHn6yiLqmr3oQ04LHX9hq6TFHI6txrlYWkHj98UT1lh8vryR/rIKq6aO204drdP8hRWF3itmLUw42QnW1CSTSA2IAIXkWOBYKLWw8wjVqNkEaFqjFwLQNJhWI4ZiFoiq6QX0SbsEo6HMoWVFCYprwjw6FP65BXCSoXJwiOwpnFK9A6yiWkQhRDwA9XAfpwLS/AqnqSKP7jwapquiznXFXMn6x8Yg/X/HySvLHKqiaPlZfvf0H6BloAM/v3tpzHkJwUx59Uxb4GE5Lfnt2ZGS16SX3+F5mq4llfegtwnaSR6J5EC8hPUV6IDaS6aDnoZ5DpYe6AtdgOr4pyhXLNPH0KKCo/DDP7N+S+mI6qHzbQr7AbdgW+iylWn0l5cf6E29ftfSN6L9lGl04x30tOtMHklmLhxpClW9BL4S1T+i2uNPRp+0FflD0AN9A9LHnmHGBBfJCE3QL9ALiguoJqiu+64gDzWGIIAlhzhaSDsMV/yjJi3BxyY9khP9BXBSzEMY/AFORGMmM1yyKZfmm+ZKuJf4uMHV1THEj+o+S864E7zYd/8Dliqp2MamvPbt9uw4dY/M4DnXTuMuXx/scK9iHLcbryzfKwvOJBSGNPl10Tb8WV0xYyMFymDdXXv46Kq+ueChJQI4WlSUqf8StOf5CNdXqr9afxe8/Gm6AoLAqGKyCGLSG350ACFzKM2FvaeOseEhFOsjItdQ2S6wYYmkOdl2+CfLBvmpIV55vYY2Qn6uAxAWC40zbhxSmWArcQj0TSIiSU37mx0kgVesgLereOSz8E5EWJa6Qzyh1hZEcO7xY4Ct9WLfNvwa+5xA2h6uGP6vMPxMsZ8WNf0Gf+cOCw9usq51a5+kNG9Sn1IjJsjoO0LI7EpVra/vxhPdFs7JyjYriohlbTAKGxO1C6oJEljseOLqmTxfPX66OucJK66OUNzuDjK7p05UIbGwX25I/vrj4BYrnD0uZ/Rtvfzz9fPsPIkgkbL0DZNMFRVEHFEY2ZCBTcwMLdfCsCCVN4SwpE9YG+ARNgD24IDHYSYB1yNCYDkLRFoC8oOUG40AKQx5IYyAmlQ6SF7dDoSof0hbJiApzqLs43aPc5UG+AvVQ/4T7nGQFQiJ5kdbAkmgH2Sz0FaWB4gLrad22v4nmuvPt/yzCc1+V4t0e4z93r8PYwDCvNANxLSthkai0jmCf5+jq6y6Y4SkjTfoKprgWufj9Dg3AozBmiK7pl3H8WDH3u0YfLY6u6c/HVS2vSvsxoygyTF2q/qNenEyjJ5NJPYGPRidME1M1/JYqwyoNq32Ihu4J0z5M+WA2DoqwEI9wfmEaEhQJzPNsKNOh0jJwrfRVJqbnNOrC6IGwQFzgHiKrpCuq2kE+FizrMXWE7IWCEKemg7hSiimOQchNIC3EchqpHlBO95TshQThkwF5TL9k+Mm/MZLGzVo3AlQdLzagDle1vCYd/wU9/5Z5ZcyZPnNow/J8ZHZZCGtsbKw3rdn7nIzTx42o0WfP1cPKuYJ6XPFs5q7p8zmKx5v8cdcxDeMPOR1fj+gh4X10TV/dukiC+nJPeLy8eH1hrtm/UVvpKxcrP2oL/dlcs1eQ9PCeo73wGcp+R2Xyvlp74vH19B9EkoA2CYKUlcQqJCQj6vkoyBjh/IurcJiy4Zxy2FMptRBO7sK3kClR0UYUZAX+wMqfC1ICiYHMYBsKSQsSFKaAUEqZLoiK00ASFsgpN0UEUWE6yOkiiArE6NmUb91OWwAAEuNJREFUszCNxA0c/uBoF04W86YOarWQAYjGmHBBEIkUiXEqib025hNmInWknv6zKo77Sh3/RvcfSx5Xl4O4yr5Y7NxiuEEQFT4uvs8yrF5VvosX28LLS185vsiRHkc9YPiJtrCbJIzHyx3gJdfpl80flZWPR6qIxJghus7xjSqj4E9UNn2VvN76Csqq6XIR+48OYEeGlcAaXhLfQwxNQcgQEI9IErOOxBUuCuDLz9Arm5iyOTaYy7Jty8hAb2VCm43ZmwnwQTbgFpAWyA4SGEKhaMdgYNpngKAcpeMCAfFjYGE4yAqco3RZ0LorUqOkxVkf6AgzvFBPFbISSsOUD+WRrWijpcwbmI4Gomj4yxAIv4bPVU+q9sfxk/EP36UlfP49N3vNWr/m9CZdX/zzjDDofAoW3XHVr9NPHdB8p2+uORl/mjFLUktMbBTtkSJbpLCRxYyD5OpJps/4+DJuvq5IIgoLqfi3pLzcRuloM7QSzKImsBSWG80LVKkxkSvOkFHaCjL5QvrPN9rwvaSVtEg2ICmQCNRQkGjwnlOpNktMxdds+GxcRFrIyCmhTQMEUJjl4qwtzPbAOVC8o0DUZroGiMmBpEUfRBZ4DvRUJC4/1GOpij1ML9XU0PJdFxIZGsOpJkkOQ0YdFh5CPodKl0WfRqQkVUhTIEf1iN4GkdJU4Rx/xsJfHkpfMv4cd+IAUJb1+YdkfSU7NXp6+/bti7qquKiEdfVq0Gl2TO2DonYzAcUTCv0slCB8FuGia/q8j7iAPl30aNIPHVKq55w+00MvjFLo05WmV8H5P9XLzydVF/H0xbGl9UGfjm226B98po2u6fO+0f3H9M7SbT1h+FoS00ybSmm+5/RZHxzbwWvVHtSvNuLRR4BKl0vPtHRhWh1SESUsNBkH0qjvNiAx4MA1JDBc4yBmTPmwJArJCFM+dA1SE5XsmFIqRTzKUrZYkMio78IUkauFoW6Mcbin1GWrOR8nqOEUEUQFmuK3ZdEw6NFg92s9j3XLp0CIsAuS8VdPkcKhCZ9/KAc81x/c3NdzFjy6KHZc0YPNh7VhDg9jYnh4co9n2dvx1nLalys7Rimx2xLGigfEJBQ0Xr149FkBVb04BQiTlPAFbTiDxRGKM1pJf5AgarPKG0sQu413N07hkCANO5m0fSebtCwziW5DqMISHTRMJCDF23inYbmsauNCHq+Vn1ta5dErzKN8psP/RiIXVpAegKJQ30Y06AQSEXdAIpdL0wbTNsLpoSIeCwRJHZYBpTusIFAIlPC0iqL5AxoCcmLPQkkLdITRCc0dSFqQD1A51g4pLOXmhZCwDMO2BpH9q6ZtDoU4oKQIy5yEynFnv+mzw+0+/q3Sf5yT4aYs89zq1alLIK7wYeQANcCpgW5AOaqIARzxcudrXrMTz+cuFAxBI1Rw06eLKz3xsnDikt+Mmr9mWBlXrbySeJAlTt8MXJImXHRNv0zx2GpWZ3r0KKqzXHlRHH26+fQf+mkbg56ADjppUuihMJl7BEhGtmnj+4Phj1lEUAzjaQcgJkzcqPPmlI/yjdJV8Trf/+hbeYyP0uMS0zSVF8SEaSELxkhR6a7IC1IVHkNMBWEkCljxYQ7YXgWKrDCHw2ohJDDKSkr5Tst3TANBp7DdgkTFKSOpxYMtV2i3hXQoJjwbBo3L4oibAajdXmSbCl01PEvi6x3PetMvwfi3cv+xHpPRk8GZvo6Oq5y5FvZlvtfqQZ5v5igfH7iRdHqrn/H24McyEb6ejCUxkCwqEATi8JDNKtWRIxI6wrLj+aOyQgIqLT/KTZ+OLYnCFGHE60PdSgzIgVmcfrbt5evjYkB97VeNyv8plx/UYoChElhYgB7KtD3PAUWRpejIVNzNAjNzyDuYRqnrMF5dIx4CkTrlAJQRps2FhZIX5lqYwfFLOygTBeSmkUhDEgNvIC7MR5ML6JhozoCpn+858G1utbH4j7BRT0Z9VlZzbTyOKJCKeCjkqYbkFBJh+DXCPVcKuXKIFURlm8WBoZSFOBCYmk6i33ioT+Kw1CegEMspcFfe+M8+rRySNum/YUwm9I7TPT04NWOBDg/nwtz16xMbEp3mPswIOuI6G7wBSlynz1pQWZEIP0smIcEEWN3QsfJDn+nj9FFSPh73wilgdE2f+eOumo4pPqWI2kI/LKu4RVXLq7H/kJopRUFhnkj4joNT9KC/BlZgAIVD1I+cwASVUBgCIsF1KEQxJLpGPKHGP5LYrAs5ikREnmJ61KF4K5cG1+REVS6HC1JauGroYYcOrLWUEp6MSF0UpoZgK5hV2dgEzeNLYbMBnRQZEUPnOwGMT6GOp57Kg/0WTCMYjnsQHpDmlJFTR5IcNt/alvV1PdF5NsKcLSpGG03L6QcjnWDpeIXqgFYb//A9wGi1+fMPDeqY7nae6uvT530KKp+JebkhHJyX6Fqz33X83tCgRr1d6gXBH+XnFtEwDmEVMBfAtbK7UvHxVTb1gGLQokbFVBZMDtUJHmT+dsPxmqSRU2nkrxkWxhfbOfEVwLov4sIaonSRr1qZy6vy8xliPbn+qPjYHxSm6mJwdB357DfaVtJ/BMLeW0/ayVQSR6TA5AB7h8kwmFeRrFBUSFYkJk7GsM+F5SuiCQmFBEriCskHYcxfEM9ozBjBS/yaKD//rBzndjD3BHswAcmqwFdhOWGugCw5owwpEt9sxMlVGWQEK4GlcAOi1XAcL6eLICfdcMFmNDnH7xdO/YTCHTkxM2B6EiSPbuXmHrZO5eJy4Iu6lfo2Gu8orFfA+PM9UMjnHpBIx9v+/Q9Wm8nMfcMTE1d7u7vP4Ec6fzy1wqOGP3xI63JHjgT2/rsy/boTbMP0pe78dVUWS5wjK0VUjIqNN3kA62ZYeIcfxofXDFNFUZBTT4W6m71mWBlXrb4yWSoEYWh0jVIUdJEmzA6o18mRDN7dCplCEkK8IiP4WRAU9OO8j5wimZB3SAhKYlJEphLkJCaSEP7PEdxsfVG5UWFxP6qPPngTlvBED6IWLN8dTPmg8ocFPPRXWBdlFWqqCEmLlhAgLRtKdLaAkpQNfRUM6DUQGOUiTimNEaT7FvRVw/F6K91XG4/mHf9KPaovvJ36jzfSS1mpc6mUdhnvhZL4a0GjZsKBKK+n0+kt0AHvztCAsIzjeeAeUKVPF1l101cBWCICxcGmcPalUeHRnyguIsJYej79fFnpKxdjrKhu+spVK69Ke+OW6SXlh7Xk/8b7D5umJKY6nUiQAEmp5ZKoD5Ay8kTFzcAsJIrL+ZREYCWAaU4ubXRNP8wfpuSuGubHMwCJhSuGPCiYJIMw5GV6xkfY0Wd+WoPiBAlEhvnzNluw3SKZYTkQHIQ5J1RQDg7Lw/QQGUIdFp4wcC9KgQ/7KkxjucEHROVmc3ZaCFfEjMxUvlPvBZ0WhT1Q1zG06hQKyGPA9qEh4bPRJuO/0p//WvoPyXpa77BPr9L1mn64QiJRT0vlP3jg1oyn0/th1dnN6VOkQyh8wVRuPpLUH9GHi+sckD4vLaj43NSHLwfv8cKjbGxdgc97JUpFpIRbpovKYHTUltkpHYkyEqNYf1gWfZU+Vn+JiMZERS4qKyTAMv1hmwoItLT/aL6OL9cn8A4mknhDkR5CUuh43ExhAXjnIQVxRQ9UwnU1JM73meHISINzlY/1Ir3jwNQBtui5IpU3K2mFZbEUEhgJiHlZhkqI8rws7hPFxBHlZ5romu1CGRSv2HyQEQiLPkwefJcSk2o0mU+F8Z46KswbKd8qvRUWiq7BsuoYlF/q+Jd839p4/KNnFHhw+Fbc819r/y3dHO7qsk9D2lLPBvEq59SLXC6CYSCq1OTk5F48g+FxLyQSvvyzhFK8taaYL1ACiYdkkSOg/HVO4irmAySLlR8+yHy5wnaWysTF7YmnRxdyecMXFDcxx3KjNCUEGUtb2r4Iixwh5qebxEG58v2Hkh0ERqlLp5kClNLkngLSyF8XExrZi089SYbFm9DRg1FCbEKyoxQE8sqFkTOgTwrDVIPCP/k8qpRcGrxMEXmxnpwjUeXbhjpgA2bBNsp0HPQWOiwNOnddw5YcNIdSFyzTlUKehEbrLDxDNn7osjCXPw5FO22qgPfKHn/pf8XxxxetvSvYlX8BxBVKCdGDmPPDhz0W+Oijjxof//jHt+Hh2oko/qKqFx4l0BJQmQIwS3RNn/fxZXqGFbq4nQzimI9tKFs+S1S1KJ9XoQkEfUQwtKg98fSzefMMwmx5F28/IqK2RLjM2b54/gX0H0v6+IiDZSVgHJogfYWNzDMUpCtsUkKg4pKIUJAsnNTlkjNWzfBCPMOhi8JAiCSqPBmyMFVQ1OdctQwLywNZ5cPCpDl80D6IhjzBASQF0sUeREpSJCyE4ceSpJXbEO2612AHepaTSRn/YrtEAD3n8xV/ntv4+S96nyGRO9gccQZmEPiBK3bRi5kPHcG+v2T32n2+53bxNY8oQyWIB0SR9OmqxMeTh5lm/8azx8srEbCQNSqTpUTX+eagwCiPqiWeQAXO/olHV2tPaYUFjWCxsQJjt7MV564K6iOB2Xj1adNGa3PqDMFl4XwSSnAQCUIibqFPlwtTwbiOkoSR+JvLx3KYv9BXaSrlLyifSegQBNMFTAWhiIeFArRZnoX+8Y2EzKhbnuNlYO9wFpZXkwoH5Kmj/6qOFTz+0n8+Y4Y/2pVIcJqY35+YJ6wjEN33ZzL9kPY3hWjx6Sv+RcByLIQAZZYQJSn2C944FRF/QkvjQ31XZDcV04GVPOGl+WdJEhVGbaNPV3d7Va7ZP83U/1ACgzTjkg4gjUFvHhGWkrPAPnnBLNeFSEKKfAbzOu9yBAUdVj6cZURpZuU3XOUILioD93x2IEnxxFGc9c6M+M93cHSNZVzHquBQDeMn4x898wQ2us7pgGvAbyU8/z5e5EupVEqtJirCgp4KHxVI7sbrQIYKHyKF3+yvIvEEX8FsQNk9qXwgBpgQwNo7p9OKrukzfdzF08+WTmYrV35YF+tU8bEpYImInGtLVH+8PkzZ8iQcVpjrawXCLOHH5uo/9JmWjbXHJMQcNhVW8bOklbsumnJw7Q+cgtVK2mJxAUNNKKncp54KHuzAwnjCE01B1UIHA1A80ik/IkdIfTj6mE8MXh2sSKZhdHUd+IcDykwFLj4eMv7Fv+il75c8/xEmeHaojD+jZ4LgbsPVVvO5iutg4oSAFCCiAqVp/jrUKRU8mzVexsube05ff3tiD0Q1wkP/ojrYgeiaftiheHsjLKL4GrudTxYvb0H9h94bpzeAwCD4cAqJf5SmlBjFH5D8ChVC1Q8KyIkrjtgbE64y4lqtINJHel5Hq4q4ZdsYzsWBWaU+rkFWtFzQbiNNnWciNbT/qD4+Hitq/FdE/3mWzmvQU+W4hZZPenQuRHRNfylcvfVjpUqz0Tj6dNE1/fm4euufTx1z5am3/hr6z6lj9A9ElneKwPJ3IYEVEpqKys0YFeUhoDBP4TV/+bjVIkfqKuu8/ixC/+tqR73111V4DYnrrb+G8a+h1tkk9dY/m7MxV7XUzwdP3ApBgCYG6Co+L6/+kcB4X0g0ERFFzwXjojBc5q8ZhqOKtWEoROmLEwSWBIHowVySyqSS5kIABEYhisRFEov8SgRWGD6K9OMgq8IwBIkTBBYXASGsxcW3pUoHgfF5iIiLPv9x+03kuLxMqaqsUj1KJL4gsFgICGEtFrJtUG6OwDhtJHHhqLOl+dBAG0AnXRAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBIGVhMD/D0fV/fpMMM+gAAAAAElFTkSuQmCC"},noticeBar:{text:()=>[],direction:"row",step:!1,icon:"volume",mode:"",color:"#f9ae3d",bgColor:"#fdf6ec",speed:80,fontSize:14,duration:2e3,disableTouch:!0,url:"",linkType:"navigateTo"},notify:{top:0,type:"primary",color:"#ffffff",bgColor:"",message:"",duration:3e3,fontSize:15,safeAreaInsetTop:!1},...{numberBox:{name:"",value:0,min:1,max:Number.MAX_SAFE_INTEGER,step:1,integer:!1,disabled:!1,disabledInput:!1,asyncChange:!1,inputWidth:35,showMinus:!0,showPlus:!0,decimalLength:null,longPress:!0,color:"#323233",buttonSize:30,bgColor:"#EBECEE",cursorSpacing:100,disableMinus:!1,disablePlus:!1,iconStyle:""}},numberKeyboard:{mode:"number",dotDisabled:!1,random:!1},overlay:{show:!1,zIndex:10070,duration:300,opacity:.5},parse:{copyLink:!0,errorImg:"",lazyLoad:!1,loadingImg:"",pauseVideo:!0,previewImg:!0,setTitle:!0,showImgMenu:!0},picker:{show:!1,showToolbar:!0,title:"",columns:()=>[],loading:!1,itemHeight:44,cancelText:"取消",confirmText:"确定",cancelColor:"#909193",confirmColor:"#3c9cff",visibleItemCount:5,keyName:"text",closeOnClickOverlay:!1,defaultIndex:()=>[],immediateChange:!1},popup:{show:!1,overlay:!0,mode:"bottom",duration:300,closeable:!1,overlayStyle:()=>{},closeOnClickOverlay:!0,zIndex:10075,safeAreaInsetBottom:!0,safeAreaInsetTop:!1,closeIconPos:"top-right",round:0,zoom:!0,bgColor:"",overlayOpacity:.5},radio:{name:"",shape:"",disabled:"",labelDisabled:"",activeColor:"",inactiveColor:"",iconSize:"",labelSize:"",label:"",labelColor:"",size:"",iconColor:"",placement:""},radioGroup:{value:"",disabled:!1,shape:"circle",activeColor:"#2979ff",inactiveColor:"#c8c9cc",name:"",size:18,placement:"row",label:"",labelColor:"#303133",labelSize:14,labelDisabled:!1,iconColor:"#ffffff",iconSize:12,borderBottom:!1,iconPlacement:"left"},rate:{value:1,count:5,disabled:!1,size:18,inactiveColor:"#b2b2b2",activeColor:"#FA3534",gutter:4,minCount:1,allowHalf:!1,activeIcon:"star-fill",inactiveIcon:"star",touchable:!0},readMore:{showHeight:400,toggle:!1,closeText:"展开阅读全文",openText:"收起",color:"#2979ff",fontSize:14,textIndent:"2em",name:""},row:{gutter:0,justify:"start",align:"center"},rowNotice:{text:"",icon:"volume",mode:"",color:"#f9ae3d",bgColor:"#fdf6ec",fontSize:14,speed:80},scrollList:{indicatorWidth:50,indicatorBarWidth:20,indicator:!0,indicatorColor:"#f2f2f2",indicatorActiveColor:"#3c9cff",indicatorStyle:""},search:{shape:"round",bgColor:"#f2f2f2",placeholder:"请输入关键字",clearabled:!0,focus:!1,showAction:!0,actionStyle:()=>({}),actionText:"搜索",inputAlign:"left",inputStyle:()=>({}),disabled:!1,borderColor:"transparent",searchIconColor:"#909399",searchIconSize:22,color:"#606266",placeholderColor:"#909399",searchIcon:"search",margin:"0",animation:!1,value:"",maxlength:"-1",height:32,label:null},section:{title:"",subTitle:"更多",right:!0,fontSize:15,bold:!0,color:"#303133",subColor:"#909399",showLine:!0,lineColor:"",arrow:!0},skeleton:{loading:!0,animate:!0,rows:0,rowsWidth:"100%",rowsHeight:18,title:!0,titleWidth:"50%",titleHeight:18,avatar:!1,avatarSize:32,avatarShape:"circle"},slider:{value:0,blockSize:18,min:0,max:100,step:1,activeColor:"#2979ff",inactiveColor:"#c0c4cc",blockColor:"#ffffff",showValue:!1,disabled:!1,blockStyle:()=>{}},statusBar:{bgColor:"transparent"},steps:{direction:"row",current:0,activeColor:"#3c9cff",inactiveColor:"#969799",activeIcon:"",inactiveIcon:"",dot:!1},stepsItem:{title:"",desc:"",iconSize:17,error:!1},sticky:{offsetTop:0,customNavHeight:0,disabled:!1,bgColor:"transparent",zIndex:"",index:""},subsection:{list:[],current:0,activeColor:"#3c9cff",inactiveColor:"#303133",mode:"button",fontSize:12,bold:!0,bgColor:"#eeeeef",keyName:"name"},swipeAction:{autoClose:!0},swipeActionItem:{show:!1,name:"",disabled:!1,threshold:20,autoClose:!0,options:[],duration:300},swiper:{list:()=>[],indicator:!1,indicatorActiveColor:"#FFFFFF",indicatorInactiveColor:"rgba(255, 255, 255, 0.35)",indicatorStyle:"",indicatorMode:"line",autoplay:!0,current:0,currentItemId:"",interval:3e3,duration:300,circular:!1,previousMargin:0,nextMargin:0,acceleration:!1,displayMultipleItems:1,easingFunction:"default",keyName:"url",imgMode:"aspectFill",height:130,bgColor:"#f3f4f6",radius:4,loading:!1,showTitle:!1},swiperIndicator:{length:0,current:0,indicatorActiveColor:"",indicatorInactiveColor:"",indicatorMode:"line"},switch:{loading:!1,disabled:!1,size:25,activeColor:"#2979ff",inactiveColor:"#ffffff",value:!1,activeValue:!0,inactiveValue:!1,asyncChange:!1,space:0},tabbar:{value:null,safeAreaInsetBottom:!0,border:!0,zIndex:1,activeColor:"#1989fa",inactiveColor:"#7d7e80",fixed:!0,placeholder:!0},tabbarItem:{name:null,icon:"",badge:null,dot:!1,text:"",badgeStyle:"top: 6px;right:2px;"},tabs:{duration:300,list:()=>[],lineColor:"#3c9cff",activeStyle:()=>({color:"#303133"}),inactiveStyle:()=>({color:"#606266"}),lineWidth:20,lineHeight:3,lineBgSize:"cover",itemStyle:()=>({height:"44px"}),scrollable:!0,current:0,keyName:"name"},tag:{type:"primary",disabled:!1,size:"medium",shape:"square",text:"",bgColor:"",color:"",borderColor:"",closeColor:"#C6C7CB",name:"",plainFill:!1,plain:!1,closable:!1,show:!0,icon:""},text:{type:"",show:!0,text:"",prefixIcon:"",suffixIcon:"",mode:"",href:"",format:"",call:!1,openType:"",bold:!1,block:!1,lines:"",color:"#303133",size:15,iconStyle:()=>({fontSize:"15px"}),decoration:"none",margin:0,lineHeight:"",align:"left",wordWrap:"normal"},textarea:{value:"",placeholder:"",placeholderClass:"textarea-placeholder",placeholderStyle:"color: #c0c4cc",height:70,confirmType:"done",disabled:!1,count:!1,focus:!1,autoHeight:!1,fixed:!1,cursorSpacing:0,cursor:"",showConfirmBar:!0,selectionStart:-1,selectionEnd:-1,adjustPosition:!0,disableDefaultPadding:!1,holdKeyboard:!1,maxlength:140,border:"surround",formatter:null},toast:{zIndex:10090,loading:!1,text:"",icon:"",type:"",loadingMode:"",show:"",overlay:!1,position:"center",params:()=>{},duration:2e3,isTab:!1,url:"",callback:null,back:!1},toolbar:{show:!0,cancelText:"取消",confirmText:"确认",cancelColor:"#909193",confirmColor:"#3c9cff",title:""},tooltip:{text:"",copyText:"",size:14,color:"#606266",bgColor:"transparent",direction:"top",zIndex:10071,showCopy:!0,buttons:()=>[],overlay:!0,showToast:!0},transition:{show:!1,mode:"fade",duration:"300",timingFunction:"ease-out"},...{upload:{accept:"image",capture:()=>["album","camera"],compressed:!0,camera:"back",maxDuration:60,uploadIcon:"camera-fill",uploadIconColor:"#D3D4D6",useBeforeRead:!1,previewFullImage:!0,maxCount:52,disabled:!1,imageMode:"aspectFill",name:"",sizeType:()=>["original","compressed"],multiple:!1,deletable:!0,maxSize:Number.MAX_VALUE,fileList:()=>[],uploadText:"",width:80,height:80,previewImage:!0}}};let oP="none";oP="vue3",oP="h5";const rP={route:SC,date:$C.timeFormat,colorGradient:CC.colorGradient,hexToRgb:CC.hexToRgb,rgbToHex:CC.rgbToHex,colorToRgba:CC.colorToRgba,test:IC,type:["primary","success","error","warning","info"],http:new class{constructor(e={}){var t;t=e,"[object Object]"!==Object.prototype.toString.call(t)&&(e={},console.warn("设置全局参数必须接收一个Object")),this.config=EC({...AC,...e}),this.interceptors={request:new wC,response:new wC}}setConfig(e){this.config=e(this.config)}middleware(e){e=((e,t={})=>{const n=t.method||e.method||"GET";let o={baseURL:e.baseURL||"",method:n,url:t.url||"",params:t.params||{},custom:{...e.custom||{},...t.custom||{}},header:gC(e.header||{},t.header||{})};if(o={...o,...xC(["getTask","validateStatus"],e,t)},"DOWNLOAD"===n)mC(t.timeout)?mC(e.timeout)||(o.timeout=e.timeout):o.timeout=t.timeout;else if("UPLOAD"===n)delete o.header["content-type"],delete o.header["Content-Type"],["files","file","filePath","name","timeout","formData"].forEach((e=>{mC(t[e])||(o[e]=t[e])})),mC(o.timeout)&&!mC(e.timeout)&&(o.timeout=e.timeout);else{const n=["data","timeout","dataType","responseType","withCredentials"];o={...o,...xC(n,e,t)}}return o})(this.config,e);const t=[_C,void 0];let n=Promise.resolve(e);for(this.interceptors.request.forEach((e=>{t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((e=>{t.push(e.fulfilled,e.rejected)}));t.length;)n=n.then(t.shift(),t.shift());return n}request(e={}){return this.middleware(e)}get(e,t={}){return this.middleware({url:e,method:"GET",...t})}post(e,t,n={}){return this.middleware({url:e,data:t,method:"POST",...n})}put(e,t,n={}){return this.middleware({url:e,data:t,method:"PUT",...n})}delete(e,t,n={}){return this.middleware({url:e,data:t,method:"DELETE",...n})}connect(e,t,n={}){return this.middleware({url:e,data:t,method:"CONNECT",...n})}head(e,t,n={}){return this.middleware({url:e,data:t,method:"HEAD",...n})}options(e,t,n={}){return this.middleware({url:e,data:t,method:"OPTIONS",...n})}trace(e,t,n={}){return this.middleware({url:e,data:t,method:"TRACE",...n})}upload(e,t={}){return t.url=e,t.method="UPLOAD",this.middleware(t)}download(e,t={}){return t.url=e,t.method="DOWNLOAD",this.middleware(t)}},config:QC,zIndex:{toast:10090,noNetwork:10080,popup:10075,mask:10070,navbar:980,topTips:975,sticky:970,indexListSticky:965},debounce:function(e,t=500,n=!1){if(null!==NC&&clearTimeout(NC),n){const n=!NC;NC=setTimeout((()=>{NC=null}),t),n&&"function"==typeof e&&e()}else NC=setTimeout((()=>{"function"==typeof e&&e()}),t)},throttle:function(e,t=500,n=!0){n?BC||(BC=!0,"function"==typeof e&&e(),setTimeout((()=>{BC=!1}),t)):BC||(BC=!0,setTimeout((()=>{BC=!1,"function"==typeof e&&e()}),t))},mixin:uC,mpMixin:pC,props:nP,...$C,color:tP,platform:"h5"};uni.$u=rP;const iP={install:e=>{e.config.globalProperties.$u=rP,e.config.globalProperties.$nextTick=e=>{e()},e.mixin(uC)}},aP=e=>{const t=Hk(0);return(t?`site${t}.`:"")+e};(function(){const e=bs(cC);return e.use(iE()),e.use(Vk),e.use(iP),function(){const e=Hy,t=Uy,n=$y,o=Wy,r=Xy,i=Qy;uni.setStorage=e=>{e.key=aP(e.key),t(e)},uni.setStorageSync=(t,n)=>{e(aP(t),n)},uni.getStorage=e=>{e.key=aP(e.key),n(e)},uni.getStorageSync=e=>o(aP(e)),uni.removeStorage=e=>{e.key=aP(e.key),r(e)},uni.removeStorageSync=e=>i(aP(e))}(),{app:e,Pinia:vE}})().app.use(Im).mount("#app");export{Tk as $,Fd as A,mv as B,Ov as C,jv as D,Ir as E,Bi as F,Ei as G,Rr as H,d as I,hs as J,Vi as K,y as L,Ah as M,Fg as N,Km as O,Mg as P,Ny as Q,rf as R,eb as S,Fr as T,Qk as U,nP as V,pC as W,uC as X,Ck as Y,Uk as Z,rk as _,Mn as a,tb as a$,rC as a0,oC as a1,wk as a2,xk as a3,Wy as a4,Ak as a5,Ek as a6,Xk as a7,Yk as a8,Wk as a9,ZT as aA,gk as aB,uk as aC,pk as aD,wr as aE,eC as aF,jg as aG,Bg as aH,Nk as aI,$k as aJ,bp as aK,jy as aL,Md as aM,Ik as aN,Mk as aO,go as aP,Ky as aQ,vv as aR,ev as aS,Sg as aT,yg as aU,ek as aV,Jk as aW,qk as aX,xy as aY,JT as aZ,ck as a_,Yv as aa,zo as ab,Ok as ac,Lk as ad,nC as ae,ww as af,_w as ag,Rk as ah,Mv as ai,ik as aj,zk as ak,lk as al,sk as am,ak as an,Hh as ao,Og as ap,qi as aq,Bd as ar,jd as as,tk as at,Gk as au,vw as av,yw as aw,nk as ax,ok as ay,KT as az,bw as b,Nd as b0,fk as b1,dk as b2,hk as b3,mk as b4,Dk as b5,_k as b6,Kk as b7,Zk as b8,yk as b9,bk as ba,vk as bb,Pv as bc,GA as bd,GT as be,XA as bf,af as bg,ty as bh,ym as bi,ua as c,er as d,fw as e,Zv as f,tC as g,Pk as h,Mi as i,Ni as j,Hi as k,Mr as l,Wi as m,Yn as n,mw as o,s as p,pw as q,Wn as r,nb as s,Nr as t,bE as u,gs as v,Mo as w,zg as x,jk as y,Jd as z}; diff --git a/niucloud/public/wap/assets/index.9ca226e6.js b/niucloud/public/wap/assets/index.9ca226e6.js new file mode 100644 index 0000000..3119ef9 --- /dev/null +++ b/niucloud/public/wap/assets/index.9ca226e6.js @@ -0,0 +1,8 @@ +import{_ as e}from"./u-icon.d4bf195f.js";import{W as t,X as o,E as n,i as r,j as i,w as a,T as l,d as s,u,c as d,r as c,ab as p,aE as m,aF as h,q as f,t as g,F as v,G as b,H as y,I as x,n as w,y as _,k as C,m as S,K as k,L as D,p as R,h as E,x as T,M as I,N,aG as O,aH as A,ap as W,Y as z,aI as P,ah as B,aJ as H,ak as M,Z as j,a0 as F,V as X,aK as $,aL as Y,aM as L,ad as G,aN as U,aO as q,a1 as V,aP as K}from"./index-c1dbaba4.js";import{p as Z,_ as J}from"./u-image.86f8f5db.js";import{_ as Q}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as ee}from"./app-link.vue_vue_type_script_setup_true_lang.e42fbc9b.js";import{_ as te}from"./u-avatar.85887529.js";import{_ as oe}from"./u-popup.c9f22720.js";import{_ as ne,a as re}from"./u-tabbar.7b503373.js";const ie=Q({name:"u--image",mixins:[t,Z,o],components:{uvImage:J},emits:["click","error","load"]},[["render",function(e,t,o,s,u,d){const c=n("uvImage");return r(),i(c,{src:e.src,mode:e.mode,width:e.width,height:e.height,shape:e.shape,radius:e.radius,lazyLoad:e.lazyLoad,showMenuByLongpress:e.showMenuByLongpress,loadingIcon:e.loadingIcon,errorIcon:e.errorIcon,showLoading:e.showLoading,showError:e.showError,fade:e.fade,webp:e.webp,duration:e.duration,bgColor:e.bgColor,customStyle:e.customStyle,onClick:t[0]||(t[0]=t=>e.$emit("click")),onError:t[1]||(t[1]=t=>e.$emit("error")),onLoad:t[2]||(t[2]=t=>e.$emit("load"))},{loading:a((()=>[l(e.$slots,"loading")])),error:a((()=>[l(e.$slots,"error")])),_:3},8,["src","mode","width","height","shape","radius","lazyLoad","showMenuByLongpress","loadingIcon","errorIcon","showLoading","showError","fade","webp","duration","bgColor","customStyle"])}]]),ae=Q(s({__name:"index",props:["component","index","pullDownRefreshCount"],setup(t){const o=t,n=u(),l=d((()=>"decorate"==n.mode?n.value[o.index]:o.component)),s=d((()=>{var e="";return l.value.componentBgColor&&(e+="background-color:"+l.value.componentBgColor+";"),l.value.topRounded&&(e+="border-top-left-radius:"+2*l.value.topRounded+"rpx;"),l.value.topRounded&&(e+="border-top-right-radius:"+2*l.value.topRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*l.value.bottomRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*l.value.bottomRounded+"rpx;"),e})),I=c([]);p((()=>o.pullDownRefreshCount),((e,t)=>{})),m((()=>{N(),"decorate"==n.mode&&p((()=>l.value),((e,t)=>{e&&"AddonList"==e.componentName&&N()}))}));const N=()=>{"decorate"==n.mode&&l.value.list.forEach(((e,t)=>{""==e.icon&&(e.icon="static/resource/images/diy/figure.png"),""==e.title&&(e.title="应用名称")})),0==l.value.list.length?h({}).then((e=>{I.value=e.data})):I.value=l.value.list};return(t,o)=>{const n=f(g("u-icon"),e),l=f(g("u--image"),ie),u=T;return r(),i(u,{style:R(w(s))},{default:a((()=>[(r(!0),v(b,null,y(I.value,((e,t)=>(r(),i(u,{key:e.id,class:x(["item flex align-center p-[20rpx] mb-[20rpx]",{"border-solid border-t-0 border-l-0 border-r-0 border-b border-gray-200":I.value.length-1!==t}]),onClick:t=>{return o=e.url,void E({url:o});var o}},{default:a((()=>[e.icon?(r(),i(l,{key:0,width:"120rpx",height:"120rpx",src:w(_)(e.icon),class:"rounded-md overflow-hidden",model:"aspectFill"},{error:a((()=>[C(n,{name:"photo",color:"#999",size:"60"})])),_:2},1032,["src"])):S("v-if",!0),C(u,{class:"flex-1 flex flex-col justify-center ml-[20rpx]"},{default:a((()=>[C(u,{class:"text-sm leading-[1.3] using-hidden"},{default:a((()=>[k(D(e.title),1)])),_:2},1024),C(u,{class:"text-xs text-[#999] mt-[8rpx] leading-[1.6] multi-hidden"},{default:a((()=>[k(D(e.desc),1)])),_:2},1024)])),_:2},1024)])),_:2},1032,["class","onClick"])))),128))])),_:1},8,["style"])}}}),[["__scopeId","data-v-2b4a4991"]]),le=Q(s({__name:"index",props:["component","index","pullDownRefresh"],setup(t){const o=t,n=u(),l=d((()=>"decorate"==n.mode?n.value[o.index]:o.component)),s=d((()=>{var e="";return l.value.componentBgColor&&(e+="background-color:"+l.value.componentBgColor+";"),l.value.topRounded&&(e+="border-top-left-radius:"+2*l.value.topRounded+"rpx;"),l.value.topRounded&&(e+="border-top-right-radius:"+2*l.value.topRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*l.value.bottomRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*l.value.bottomRounded+"rpx;"),e}));p((()=>o.pullDownRefresh),((e,t)=>{}));const h=c(0),E=e=>{h.value=e.detail.current},z=(e,t)=>{let o=l.value.pageCount*l.value.rowCount,n=!0;return n=e>=[(t-1)*o]&&e<[t*o],n},P=c("");m((()=>{B(),"decorate"==n.mode&&p((()=>l.value),((e,t)=>{e&&"GraphicNav"==e.componentName&&B()}))}));const B=()=>{var e;"decorate"==n.mode&&l.value.list.forEach(((e,t)=>{""==e.imageUrl&&(e.imageUrl="static/resource/images/diy/figure.png")})),e=0,"graphic"==l.value.mode?e=(49+l.value.imageSize)*l.value.pageCount:"img"==l.value.mode?e=(22+l.value.imageSize)*l.value.pageCount:"text"==l.value.mode&&(e=43*l.value.pageCount),P.value=2*e+"rpx"};return(t,o)=>{const n=I,u=N,d=T,c=f(g("u-icon"),e),p=f(g("app-link"),ee),m=O,h=A,B=W;return r(),i(d,{style:R(w(s))},{default:a((()=>[w(l).navTitle?(r(),v("div",{key:0,class:"py-[30rpx] px-[32rpx] text-[30rpx]",style:R({fontWeight:w(l).font.weight,color:w(l).font.color})},D(w(l).navTitle),5)):S("v-if",!0),"vertical"==w(l).layout?(r(),i(d,{key:1,class:"graphic-nav"},{default:a((()=>[(r(!0),v(b,null,y(w(l).list,((e,t)=>(r(),i(d,{class:"graphic-nav-item",key:e.id},{default:a((()=>[C(p,{data:e.link,"custom-class":["flex items-center justify-between py-3 px-4",0==t?"border-t-0":"border-t"]},{default:a((()=>["text"!=w(l).mode?(r(),i(d,{key:0,class:"graphic-img relative flex items-center w-10 h-10 mr-[20rpx]",style:R({width:2*w(l).imageSize+"rpx",height:2*w(l).imageSize+"rpx"})},{default:a((()=>[C(n,{src:w(_)(e.imageUrl),mode:"aspectFill",style:R({maxWidth:2*w(l).imageSize+"rpx",maxHeight:2*w(l).imageSize+"rpx",borderRadius:2*w(l).aroundRadius+"rpx"})},null,8,["src","style"]),e.label.control?(r(),i(u,{key:0,class:"tag absolute -top-[10rpx] -right-[24rpx] text-white rounded-[24rpx] rounded-bl-none transform scale-80 py-1 px-2 text-xs",style:R({color:e.label.textColor,backgroundImage:"linear-gradient("+e.label.bgColorStart+","+e.label.bgColorEnd+")"})},{default:a((()=>[k(D(e.label.text),1)])),_:2},1032,["style"])):S("v-if",!0)])),_:2},1032,["style"])):S("v-if",!0),"img"!=w(l).mode?(r(),i(u,{key:1,class:"graphic-text w-full truncate leading-normal",style:R({fontSize:2*w(l).font.size+"rpx",fontWeight:w(l).font.weight,color:w(l).font.color})},{default:a((()=>[k(D(e.title),1)])),_:2},1032,["style"])):S("v-if",!0),C(c,{name:"arrow-right",color:"#CACACA"})])),_:2},1032,["data","custom-class"])])),_:2},1024)))),128))])),_:1})):"horizontal"==w(l).layout&&"pageSlide"==w(l).showStyle?(r(),i(h,{key:2,class:"graphic-nav p-2 box-border relative",circular:"","indicator-dots":!1,style:R({height:P.value}),onChange:E},{default:a((()=>[(r(!0),v(b,null,y(Math.ceil(w(l).list.length/(w(l).pageCount*w(l).rowCount)),((e,t)=>(r(),i(m,{class:"graphic-nav-wrap flex flex-wrap"},{default:a((()=>[(r(!0),v(b,null,y(w(l).list,((t,o)=>(r(),v(b,null,[z(o,e)?(r(),i(d,{class:x(["graphic-nav-item",[w(l).mode]]),key:t.id,style:R({width:100/w(l).rowCount+"%"})},{default:a((()=>[C(p,{data:t.link,"custom-class":"flex flex-col items-center box-border py-2"},{default:a((()=>["text"!=w(l).mode?(r(),i(d,{key:0,class:"graphic-img relative flex items-center justify-center w-10 h-10",style:R({width:2*w(l).imageSize+"rpx",height:2*w(l).imageSize+"rpx"})},{default:a((()=>[C(n,{src:w(_)(t.imageUrl),mode:"aspectFill",style:R({maxWidth:2*w(l).imageSize+"rpx",maxHeight:2*w(l).imageSize+"rpx",borderRadius:2*w(l).aroundRadius+"rpx"})},null,8,["src","style"]),t.label.control?(r(),i(u,{key:0,class:"tag absolute -top-[10rpx] -right-[24rpx] text-white rounded-[24rpx] rounded-bl-none transform scale-80 py-1 px-2 text-xs",style:R({color:t.label.textColor,backgroundImage:"linear-gradient("+t.label.bgColorStart+","+t.label.bgColorEnd+")"})},{default:a((()=>[k(D(t.label.text),1)])),_:2},1032,["style"])):S("v-if",!0)])),_:2},1032,["style"])):S("v-if",!0),"img"!=w(l).mode?(r(),i(u,{key:1,class:x(["graphic-text w-full text-center truncate leading-normal",{"pt-1.5":"text"!=w(l).mode}]),style:R({fontSize:2*w(l).font.size+"rpx",fontWeight:w(l).font.weight,color:w(l).font.color})},{default:a((()=>[k(D(t.title),1)])),_:2},1032,["class","style"])):S("v-if",!0)])),_:2},1032,["data"])])),_:2},1032,["class","style"])):S("v-if",!0)],64)))),256))])),_:2},1024)))),256))])),_:1},8,["style"])):(r(),i(B,{key:3,"scroll-x":"singleSlide"==w(l).showStyle,class:x(["graphic-nav","graphic-nav-"+w(l).showStyle])},{default:a((()=>[(r(!0),v(b,null,y(w(l).list,((e,t)=>(r(),i(d,{class:x(["graphic-nav-item",{"flex-shrink-0":"singleSlide"==w(l).showStyle}]),key:e.id,style:R({width:100/w(l).rowCount+"%"})},{default:a((()=>[C(p,{data:e.link,"custom-class":"flex flex-col items-center box-border py-2"},{default:a((()=>["text"!=w(l).mode?(r(),i(d,{key:0,class:"graphic-img relative flex items-center justify-center w-10 h-10",style:R({width:2*w(l).imageSize+"rpx",height:2*w(l).imageSize+"rpx"})},{default:a((()=>[C(n,{src:w(_)(e.imageUrl),mode:"aspectFill",style:R({maxWidth:2*w(l).imageSize+"rpx",maxHeight:2*w(l).imageSize+"rpx",borderRadius:2*w(l).aroundRadius+"rpx"})},null,8,["src","style"]),e.label.control?(r(),i(u,{key:0,class:x(["tag absolute -top-[10rpx] -right-[24rpx] text-white rounded-[24rpx] rounded-bl-none transform scale-80 py-1 px-2 text-xs"]),style:R({color:e.label.textColor,backgroundImage:"linear-gradient("+e.label.bgColorStart+","+e.label.bgColorEnd+")"})},{default:a((()=>[k(D(e.label.text),1)])),_:2},1032,["style"])):S("v-if",!0)])),_:2},1032,["style"])):S("v-if",!0),"img"!=w(l).mode?(r(),i(u,{key:1,class:x(["graphic-text w-full text-center truncate leading-normal",{"pt-1.5":"text"!=w(l).mode}]),style:R({fontSize:2*w(l).font.size+"rpx",fontWeight:w(l).font.weight,color:w(l).font.color})},{default:a((()=>[k(D(e.title),1)])),_:2},1032,["class","style"])):S("v-if",!0)])),_:2},1032,["data"])])),_:2},1032,["class","style"])))),128))])),_:1},8,["scroll-x","class"]))])),_:1},8,["style"])}}}),[["__scopeId","data-v-d51849eb"]]),se=s({__name:"index",props:["component","index","pullDownRefresh"],setup(e){const t=e,o=u(),n=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),a=d((()=>{var e="";return e+="height:"+2*n.value.height+"rpx;",n.value.componentBgColor&&(e+="background-color:"+n.value.componentBgColor+";"),e}));return p((()=>t.pullDownRefresh),((e,t)=>{})),(e,t)=>{const o=T;return r(),i(o,{style:R(w(a))},null,8,["style"])}}}),ue=s({__name:"index",props:["component","index","pullDownRefresh"],setup(e){const t=e,o=u(),n=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),l=d((()=>{var e="";return n.value.componentBgColor&&(e+="background-color:"+n.value.componentBgColor+";"),n.value.topRounded&&(e+="border-top-left-radius:"+2*n.value.topRounded+"rpx;"),n.value.topRounded&&(e+="border-top-right-radius:"+2*n.value.topRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*n.value.bottomRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*n.value.bottomRounded+"rpx;"),e}));m((()=>{s(),p((()=>n.value),((e,t)=>{e&&"HotArea"==e.componentName&&s()}))}));const s=()=>{"decorate"==o.mode&&""==n.value.imageUrl&&(n.value.imageUrl="static/resource/images/diy/figure.png",n.value.imgWidth=690,n.value.imgHeight=330)};return p((()=>t.pullDownRefresh),((e,t)=>{})),(e,t)=>{const s=I,u=f(g("app-link"),ee),d=T;return r(),i(d,{style:R(w(l))},{default:a((()=>[C(d,{class:"simple-graph-wrap overflow-hidden relative leading-0"},{default:a((()=>[C(s,{style:R({height:w(n).imgHeight}),src:w(_)(w(n).imageUrl),mode:"widthFix","show-menu-by-longpress":!0,class:"w-full"},null,8,["style","src"]),"decorate"!=w(o).mode?(r(),v(b,{key:0},[S(" 热区功能 "),(r(!0),v(b,null,y(w(n).heatMapData,((e,t)=>(r(),i(u,{data:e.link,"custom-class":"absolute",key:t,style:R({width:e.width+"%",height:e.height+"%",left:e.left+"%",top:e.top+"%"})},null,8,["data","style"])))),128))],64)):S("v-if",!0)])),_:1})])),_:1},8,["style"])}}}),de=s({__name:"index",props:["component","index","pullDownRefresh"],setup(e){const t=e,o=u(),n=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),l=d((()=>{var e="";return n.value.componentBgColor&&(e+="background-color:"+n.value.componentBgColor+";"),e})),s=d((()=>{var e="";return n.value.topRounded&&(e+="border-top-left-radius:"+2*n.value.topRounded+"rpx;"),n.value.topRounded&&(e+="border-top-right-radius:"+2*n.value.topRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*n.value.bottomRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*n.value.bottomRounded+"rpx;"),e}));p((()=>t.pullDownRefresh),((e,t)=>{}));const h=d((()=>2*n.value.imageHeight+"rpx")),x=c(0),S=e=>{x.value=e.detail.current};m((()=>{k(),"decorate"==o.mode&&p((()=>n.value),((e,t)=>{e&&"ImageAds"==e.componentName&&k()}))}));const k=()=>{"decorate"==o.mode&&n.value.list.forEach(((e,t)=>{""==e.imageUrl&&(e.imageUrl="static/resource/images/diy/figure.png",e.imgWidth=690,e.imgHeight=330)}))};return(e,t)=>{const o=I,u=f(g("app-link"),ee),d=T,c=O,p=A;return r(),i(d,{class:"image-ads",style:R(w(l))},{default:a((()=>[1==w(n).list.length?(r(),i(d,{key:0,class:"leading-0 overflow-hidden",style:R(w(s))},{default:a((()=>[C(u,{data:w(n).list[0].link},{default:a((()=>[C(o,{src:w(_)(w(n).list[0].imageUrl),style:R({height:w(h)}),mode:"heightFix",class:"w-full","show-menu-by-longpress":!0},null,8,["src","style"])])),_:1},8,["data"])])),_:1},8,["style"])):(r(),i(p,{key:1,class:"swiper",style:R({height:w(h)}),autoplay:"true",circular:"true",onChange:S},{default:a((()=>[(r(!0),v(b,null,y(w(n).list,(e=>(r(),i(c,{class:"swiper-item",key:e.id,style:R(w(s))},{default:a((()=>[C(u,{data:e.link},{default:a((()=>[C(d,{class:"item",style:R({height:w(h)})},{default:a((()=>[C(o,{src:w(_)(e.imageUrl),mode:"scaleToFill",class:"w-full h-full","show-menu-by-longpress":!0},null,8,["src"])])),_:2},1032,["style"])])),_:2},1032,["data"])])),_:2},1032,["style"])))),128))])),_:1},8,["style"]))])),_:1},8,["style"])}}}),ce=Q(s({__name:"index",props:["component","index","pullDownRefresh"],setup(e){const t=e,o=u(),n=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),l=d((()=>{var e="";return n.value.componentBgColor&&(e+="background-color:"+n.value.componentBgColor+";"),n.value.bgUrl&&(e+="background-image:url("+_(n.value.bgUrl)+");",e+="background-size: 100%;",e+="background-repeat: no-repeat;"),n.value.topRounded&&(e+="border-top-left-radius:"+2*n.value.topRounded+"rpx;"),n.value.topRounded&&(e+="border-top-right-radius:"+2*n.value.topRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*n.value.bottomRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*n.value.bottomRounded+"rpx;"),e}));p((()=>t.pullDownRefresh),((e,t)=>{}));const s=z(),{query:m}=P(location.href);m.code&&B()&&H({code:m.code}).then((e=>{s.getMemberInfo()}));const h=d((()=>"decorate"==o.mode?{headimg:"",nickname:"昵称",balance:0,point:0,money:0,member_no:"NIU0000021"}:s.info)),v=d((()=>{if(h.value){let e=parseFloat(h.value.balance)+parseFloat(h.value.money);return M(e.toString())}return 0})),b=()=>{F().setLoginBack({url:"/app/pages/member/index"})};c(!1);const y=()=>{B()?F().getAuthCode("snsapi_userinfo"):E({url:"/app/pages/member/personal"})};return(e,t)=>{const o=f(g("u-avatar"),te),s=T,u=N,d=f(g("app-link"),ee);return r(),i(s,{style:R(w(l))},{default:a((()=>[C(s,{class:"pt-[34rpx] member-info"},{default:a((()=>[w(h)?(r(),i(s,{key:0,class:"flex ml-[32rpx] mr-[52rpx] items-center relative"},{default:a((()=>[S(" 唤起获取微信 "),C(o,{src:w(_)(w(h).headimg),size:"55",leftIcon:"none",onClick:y},null,8,["src"]),C(s,{class:"ml-[22rpx]"},{default:a((()=>[C(s,{class:"text-[#222222] truncate w-[430rpx] font-bold text-lg",style:R({color:w(n).textColor})},{default:a((()=>[k(D(w(h).nickname),1)])),_:1},8,["style"]),C(s,{class:"text-[#696B70] text-[24rpx] mt-[10rpx]",style:R({color:w(n).textColor})},{default:a((()=>[k("UID:"+D(w(h).member_no),1)])),_:1},8,["style"])])),_:1}),C(s,{class:"set-icon flex items-center absolute right-0 top-2"},{default:a((()=>[C(d,{url:"/app/pages/setting/index"},{default:a((()=>[C(u,{class:"iconfont iconshezhi text-[1.6rem] ml-[10rpx]",style:R({color:w(n).textColor})},null,8,["style"])])),_:1})])),_:1})])),_:1})):(r(),i(s,{key:1,class:"flex ml-[32rpx] mr-[52rpx] items-center relative",onClick:b},{default:a((()=>[C(o,{src:"",size:"55"}),C(s,{class:"ml-[22rpx]"},{default:a((()=>[C(s,{class:"text-[#222222] font-bold text-lg",style:R({color:w(n).textColor})},{default:a((()=>[k(D(w(j)("login"))+"/"+D(w(j)("register")),1)])),_:1},8,["style"])])),_:1}),C(s,{class:"set-icon flex items-center absolute right-0 top-2"},{default:a((()=>[C(d,{url:"/app/pages/setting/index"},{default:a((()=>[C(u,{class:"iconfont iconshezhi text-[1.6rem] ml-[10rpx]",style:R({color:w(n).textColor})},null,8,["style"])])),_:1})])),_:1})])),_:1})),C(s,{class:"flex m-[30rpx] mb-0 py-[30rpx] items-center"},{default:a((()=>[C(s,{class:"flex-1 text-center"},{default:a((()=>[C(s,{class:"font-bold"},{default:a((()=>[C(d,{url:w(h)?"/app/pages/member/balance":"","custom-style":{color:w(n).textColor}},{default:a((()=>[k(D(w(v)),1)])),_:1},8,["url","custom-style"])])),_:1}),C(s,{class:"text-sm mt-[10rpx]"},{default:a((()=>[C(d,{url:w(h)?"/app/pages/member/balance":"","custom-style":{color:w(n).textColor}},{default:a((()=>[k(D(w(j)("balance")),1)])),_:1},8,["url","custom-style"])])),_:1})])),_:1}),C(s,{class:"border-solid border-white border-l border-b-0 border-t-0 border-r-0 h-[60rpx]"}),C(s,{class:"flex-1 text-center"},{default:a((()=>[C(s,{class:"font-bold"},{default:a((()=>[C(d,{url:w(h)?"/app/pages/member/point":"","custom-style":{color:w(n).textColor}},{default:a((()=>{var e;return[k(D(parseInt(null==(e=w(h))?void 0:e.point)||0),1)]})),_:1},8,["url","custom-style"])])),_:1}),C(s,{class:"text-sm mt-[10rpx]"},{default:a((()=>[C(d,{url:w(h)?"/app/pages/member/point":"","custom-style":{color:w(n).textColor}},{default:a((()=>[k(D(w(j)("point")),1)])),_:1},8,["url","custom-style"])])),_:1})])),_:1})])),_:1})])),_:1})])),_:1},8,["style"])}}}),[["__scopeId","data-v-07fb20e0"]]);const pe=Q({mixins:[t,o,{props:{text:{type:[Array],default:X.columnNotice.text},icon:{type:String,default:X.columnNotice.icon},mode:{type:String,default:X.columnNotice.mode},color:{type:String,default:X.columnNotice.color},bgColor:{type:String,default:X.columnNotice.bgColor},fontSize:{type:[String,Number],default:X.columnNotice.fontSize},speed:{type:[String,Number],default:X.columnNotice.speed},step:{type:Boolean,default:X.columnNotice.step},duration:{type:[String,Number],default:X.columnNotice.duration},disableTouch:{type:Boolean,default:X.columnNotice.disableTouch}}}],watch:{text:{immediate:!0,handler(e,t){uni.$u.test.array(e)||uni.$u.error("noticebar组件direction为column时,要求text参数为数组形式")}}},computed:{textStyle(){let e={};return e.color=this.color,e.fontSize=uni.$u.addUnit(this.fontSize),e},vertical(){return"horizontal"!=this.mode}},data:()=>({index:0}),methods:{noticeChange(e){this.index=e.detail.current},clickHandler(){this.$emit("click",this.index)},close(){this.$emit("close")}}},[["render",function(t,o,n,s,u,d){const c=f(g("u-icon"),e),p=T,m=N,h=O,x=A;return r(),i(p,{class:"u-notice",onClick:d.clickHandler},{default:a((()=>[l(t.$slots,"icon",{},(()=>[t.icon?(r(),i(p,{key:0,class:"u-notice__left-icon"},{default:a((()=>[C(c,{name:t.icon,color:t.color,size:"19"},null,8,["name","color"])])),_:1})):S("v-if",!0)]),!0),C(x,{"disable-touch":t.disableTouch,vertical:!t.step,circular:"",interval:t.duration,autoplay:!0,class:"u-notice__swiper",onChange:d.noticeChange},{default:a((()=>[(r(!0),v(b,null,y(t.text,((e,t)=>(r(),i(h,{key:t,class:"u-notice__swiper__item"},{default:a((()=>[C(m,{class:"u-notice__swiper__item__text u-line-1",style:R([d.textStyle])},{default:a((()=>[k(D(e),1)])),_:2},1032,["style"])])),_:2},1024)))),128))])),_:1},8,["disable-touch","vertical","interval","onChange"]),["link","closable"].includes(t.mode)?(r(),i(p,{key:0,class:"u-notice__right-icon"},{default:a((()=>["link"===t.mode?(r(),i(c,{key:0,name:"arrow-right",size:17,color:t.color},null,8,["color"])):S("v-if",!0),"closable"===t.mode?(r(),i(c,{key:1,name:"close",size:16,color:t.color,onClick:d.close},null,8,["color","onClick"])):S("v-if",!0)])),_:1})):S("v-if",!0)])),_:3},8,["onClick"])}],["__scopeId","data-v-7109316b"]]);const me=Q({name:"u-row-notice",mixins:[t,o,{props:{text:{type:String,default:X.rowNotice.text},icon:{type:String,default:X.rowNotice.icon},mode:{type:String,default:X.rowNotice.mode},color:{type:String,default:X.rowNotice.color},bgColor:{type:String,default:X.rowNotice.bgColor},fontSize:{type:[String,Number],default:X.rowNotice.fontSize},speed:{type:[String,Number],default:X.rowNotice.speed}}}],data:()=>({animationDuration:"0",animationPlayState:"paused",nvueInit:!0,show:!0}),watch:{text:{immediate:!0,handler(e,t){this.vue(),uni.$u.test.string(e)||uni.$u.error("noticebar组件direction为row时,要求text参数为字符串形式")}},fontSize(){this.vue()},speed(){this.vue()}},computed:{textStyle(){let e={};return e.color=this.color,e.fontSize=uni.$u.addUnit(this.fontSize),e},animationStyle(){let e={};return e.animationDuration=this.animationDuration,e.animationPlayState=this.animationPlayState,e},innerText(){let e=[];const t=this.text.split("");for(let o=0;o{this.animationPlayState="running"}),10)},async nvue(){},loopAnimation(e,t){},getNvueRect(e){},clickHandler(e){this.$emit("click")},close(){this.$emit("close")}}},[["render",function(t,o,n,s,u,d){const c=f(g("u-icon"),e),p=T,m=N;return r(),i(p,{class:"u-notice",onClick:d.clickHandler},{default:a((()=>[l(t.$slots,"icon",{},(()=>[t.icon?(r(),i(p,{key:0,class:"u-notice__left-icon"},{default:a((()=>[C(c,{name:t.icon,color:t.color,size:"19"},null,8,["name","color"])])),_:1})):S("v-if",!0)]),!0),C(p,{class:"u-notice__content",ref:"u-notice__content"},{default:a((()=>[C(p,{ref:"u-notice__content__text",class:"u-notice__content__text",style:R([d.animationStyle])},{default:a((()=>[(r(!0),v(b,null,y(d.innerText,((e,t)=>(r(),i(m,{key:t,style:R([d.textStyle])},{default:a((()=>[k(D(e),1)])),_:2},1032,["style"])))),128))])),_:1},8,["style"])])),_:1},512),["link","closable"].includes(t.mode)?(r(),i(p,{key:0,class:"u-notice__right-icon"},{default:a((()=>["link"===t.mode?(r(),i(c,{key:0,name:"arrow-right",size:17,color:t.color},null,8,["color"])):S("v-if",!0),"closable"===t.mode?(r(),i(c,{key:1,onClick:d.close,name:"close",size:16,color:t.color},null,8,["onClick","color"])):S("v-if",!0)])),_:1})):S("v-if",!0)])),_:3},8,["onClick"])}],["__scopeId","data-v-8086f62b"]]);const he=Q({name:"u-notice-bar",mixins:[t,o,{props:{text:{type:[Array,String],default:X.noticeBar.text},direction:{type:String,default:X.noticeBar.direction},step:{type:Boolean,default:X.noticeBar.step},icon:{type:String,default:X.noticeBar.icon},mode:{type:String,default:X.noticeBar.mode},color:{type:String,default:X.noticeBar.color},bgColor:{type:String,default:X.noticeBar.bgColor},speed:{type:[String,Number],default:X.noticeBar.speed},fontSize:{type:[String,Number],default:X.noticeBar.fontSize},duration:{type:[String,Number],default:X.noticeBar.duration},disableTouch:{type:Boolean,default:X.noticeBar.disableTouch},url:{type:String,default:X.noticeBar.url},linkType:{type:String,default:X.noticeBar.linkType}}}],data:()=>({show:!0}),methods:{click(e){this.$emit("click",e),this.url&&this.linkType&&this.openPage()},close(){this.show=!1,this.$emit("close")}}},[["render",function(e,t,o,n,l,s){const u=f(g("u-column-notice"),pe),d=f(g("u-row-notice"),me),c=T;return l.show?(r(),i(c,{key:0,class:"u-notice-bar",style:R([{backgroundColor:e.bgColor},e.$u.addStyle(e.customStyle)])},{default:a((()=>["column"===e.direction||"row"===e.direction&&e.step?(r(),i(u,{key:0,color:e.color,bgColor:e.bgColor,text:e.text,mode:e.mode,step:e.step,icon:e.icon,"disable-touch":e.disableTouch,fontSize:e.fontSize,duration:e.duration,onClose:s.close,onClick:s.click},null,8,["color","bgColor","text","mode","step","icon","disable-touch","fontSize","duration","onClose","onClick"])):(r(),i(d,{key:1,color:e.color,bgColor:e.bgColor,text:e.text,mode:e.mode,fontSize:e.fontSize,speed:e.speed,url:e.url,linkType:e.linkType,icon:e.icon,onClose:s.close,onClick:s.click},null,8,["color","bgColor","text","mode","fontSize","speed","url","linkType","icon","onClose","onClick"]))])),_:1},8,["style"])):S("v-if",!0)}],["__scopeId","data-v-7b451c96"]]),fe=Q(s({__name:"index",props:["component","index","pullDownRefreshCount"],setup(e){const t=e,o=u(),n=c(!1),l=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),s=d((()=>{var e="";return l.value.componentBgColor&&(e+="background-color:"+l.value.componentBgColor+";"),l.value.topRounded&&(e+="border-top-left-radius:"+2*l.value.topRounded+"rpx;"),l.value.topRounded&&(e+="border-top-right-radius:"+2*l.value.topRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*l.value.bottomRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*l.value.bottomRounded+"rpx;"),e}));p((()=>t.pullDownRefreshCount),((e,t)=>{})),m((()=>{h(),"decorate"==o.mode&&p((()=>l.value),((e,t)=>{e&&"AddonList"==e.componentName&&h()}))}));const h=()=>{"decorate"==o.mode&&(l.value.list.title||(l.value.list.title="公告名称"))},v=()=>{if("decorate"==o.mode)return!1;"popup"==l.value.showType?n.value=!0:E({url:l.value.list.link.url})};return(e,t)=>{const o=I,u=f(g("u-notice-bar"),he),d=N,c=T,p=W,m=$,h=f(g("u-popup"),oe);return r(),i(c,{style:R(w(s)),class:"overflow-hidden"},{default:a((()=>[C(c,{class:"flex items-center pl-[28rpx] pr-[22rpx]",onClick:v},{default:a((()=>["system"==w(l).iconType?(r(),i(o,{key:0,src:w(_)(`addon/shop/diy/notice/${w(l).systemIcon}.png`),class:"h-[44rpx] max-w-[130rpx] -mr-[8rpx]",mode:"heightFix"},null,8,["src"])):(r(),i(o,{key:1,src:w(_)(w(l).imageUrl||""),class:"w-[30rpx] h-[30rpx] -mr-[8rpx]",mode:"aspectFit"},null,8,["src"])),C(u,{text:w(l).list.text,color:w(l).textColor,bgColor:w(l).componentBgColor,fontSize:2*w(l).fontSize+"rpx",speed:"50",icon:"",style:R({fontWeight:w(l).fontWeight})},null,8,["text","color","bgColor","fontSize","style"]),C(d,{class:"iconfont iconxiangyoujiantou -ml-[8rpx]",style:R({color:w(l).textColor,fontSize:2*w(l).fontSize+"rpx",fontWeight:w(l).fontWeight})},null,8,["style"])])),_:1}),C(h,{show:n.value,onClose:t[1]||(t[1]=e=>n.value=!1),closeable:!0,mode:"center",round:5},{default:a((()=>[C(c,{class:"py-[30rpx] text-sm leading-none border-0 border-solid border-b-[2rpx] border-[#eee]"},{default:a((()=>[C(d,{class:"ml-[30rpx]"},{default:a((()=>[k("公告内容")])),_:1})])),_:1}),C(p,{"scroll-y":"true",class:"px-6 py-3 w-[600rpx] h-[500rpx] text-sm"},{default:a((()=>[k(D(w(l).list.text),1)])),_:1}),C(m,{onClick:t[0]||(t[0]=e=>n.value=!1),class:"!mx-[30rpx] !mb-[40rpx] !w-auto !h-[80rpx] text-sm leading-[80rpx] rounded-full text-white !bg-[#ff4500]"},{default:a((()=>[k("我知道了")])),_:1})])),_:1},8,["show"])])),_:1},8,["style"])}}}),[["__scopeId","data-v-0b7426ad"]]),ge=Q(s({__name:"index",props:["component","index","pullDownRefresh"],setup(e){const t=e,o=u(),n=d((()=>"decorate"==o.mode?o.value[t.index]:t.component)),l=e=>L(e)+1,s=d((()=>{var e="";return n.value.componentBgColor&&(e+="background-color:"+n.value.componentBgColor+";"),n.value.topRounded&&(e+="border-top-left-radius:"+2*n.value.topRounded+"rpx;"),n.value.topRounded&&(e+="border-top-right-radius:"+2*n.value.topRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*n.value.bottomRounded+"rpx;"),n.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*n.value.bottomRounded+"rpx;"),e}));p((()=>t.pullDownRefresh),((e,t)=>{})),m((()=>{c(),p((()=>n.value),((e,t)=>{e&&"RubikCube"==e.componentName&&c()}))}));const c=()=>{"decorate"==o.mode&&n.value.list.forEach(((e,t)=>{""==e.imageUrl&&(e.imageUrl="static/resource/images/diy/figure.png",e.imgWidth=690,e.imgHeight=330)})),h()},h=()=>{var e={"row1-of2":{ratio:2,width:"calc((100% - "+l(2*n.value.imageGap)+"px) / 2)"},"row1-of3":{ratio:3,width:"calc((100% - "+l(4*n.value.imageGap)+"px) / 3)"},"row1-of4":{ratio:4,width:"calc((100% - "+l(6*n.value.imageGap)+"px) / 4)"}};n.value.list.forEach(((e,t)=>{e.pageItemStyle=((e,t)=>{var o="";return"right"==n.value.elementAngle||{"row1-lt-of2-rt":[["border-top-right-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-left-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-left-radius","border-top-right-radius"]],"row1-lt-of1-tp-of2-bm":[["border-top-right-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-left-radius","border-bottom-right-radius"],["border-radius"],["border-top-left-radius","border-bottom-left-radius","border-top-right-radius"]],"row1-tp-of2-bm":[["border-bottom-left-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-right-radius","border-top-right-radius"],["border-top-left-radius","border-bottom-left-radius","border-top-right-radius"]],"row2-lt-of2-rt":[["border-top-right-radius","border-bottom-left-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-right-radius","border-bottom-left-radius"],["border-top-left-radius","border-bottom-right-radius","border-top-right-radius"],["border-top-left-radius","border-bottom-left-radius","border-top-right-radius"]],"row1-of4":[["border-top-right-radius","border-bottom-right-radius"],["border-radius"],["border-radius"],["border-top-left-radius","border-bottom-left-radius"]],"row1-of3":[["border-top-right-radius","border-bottom-right-radius"],["border-radius"],["border-top-left-radius","border-bottom-left-radius"]],"row1-of2":[["border-top-right-radius","border-bottom-right-radius"],["border-top-left-radius","border-bottom-left-radius"]]}[e][t].forEach(((e,t)=>{o+="border-top-left-radius:"+2*n.value.topElementRounded+"rpx;",o+="border-top-right-radius:"+2*n.value.topElementRounded+"rpx;",o+="border-bottom-left-radius:"+2*n.value.bottomElementRounded+"rpx;",o+="border-bottom-right-radius:"+2*n.value.bottomElementRounded+"rpx;"})),o})(n.value.mode,t)})),e[n.value.mode]?f(e[n.value.mode]):"row2-lt-of2-rt"==n.value.mode?g():"row1-lt-of2-rt"==n.value.mode?k():"row1-tp-of2-bm"==n.value.mode?D():"row1-lt-of1-tp-of2-bm"==n.value.mode&&N()},f=e=>{Y({success:t=>{let o=0;n.value.list.forEach(((r,i)=>{var a=r.imgHeight/r.imgWidth;let s=t.windowWidth-l(2*n.value.margin.both);n.value.imageGap>0&&(s-=l(e.ratio*n.value.imageGap*2)),r.imgWidth=s/e.ratio,r.imgHeight=r.imgWidth*a,(0==o||o{t.widthStyle=e.width,t.imgHeight=o}))}})},g=()=>{Y({success:e=>{let t=0,o=0;n.value.list.forEach(((r,i)=>{var a=r.imgHeight/r.imgWidth;r.imgWidth=e.windowWidth,r.imgWidth-=l(4*n.value.margin.both),n.value.imageGap>0&&(r.imgWidth-=l(2*n.value.imageGap)),r.imgWidth=r.imgWidth/2,r.imgHeight=r.imgWidth*a,i<=1?(0==t||t1&&(0==o||o{e.imgWidth="calc((100% - "+l(2*n.value.imageGap)+"px) / 2)",e.widthStyle=e.imgWidth,r<=1?e.imgHeight=t:r>1&&(e.imgHeight=o)}))}})},k=()=>{let e=0;n.value.list[1].imgWidth,n.value.list[2].imgWidth,Y({success:t=>{n.value.list.forEach(((o,r)=>{if(0==r){var i=o.imgHeight/o.imgWidth;o.imgWidth=t.windowWidth-l(4*n.value.margin.both)-l(2*n.value.imageGap),o.imgWidth=o.imgWidth/2,o.imgHeight=o.imgWidth*i,e=(o.imgHeight-l(2*n.value.imageGap))/2,o.imgWidth+="px"}else o.imgWidth=n.value.list[0].imgWidth,o.imgHeight=e}))}})},D=()=>{var e=0;Y({success:t=>{n.value.list.forEach(((o,r)=>{var i=o.imgHeight/o.imgWidth;0==r?o.imgWidth=t.windowWidth-l(4*n.value.margin.both):r>0&&(o.imgWidth=t.windowWidth-l(4*n.value.margin.both)-l(2*n.value.imageGap),o.imgWidth=o.imgWidth/2),o.imgHeight=o.imgWidth*i,r>0&&(0==e||e{t.imgWidth+="px",t.widthStyle=t.imgWidth,o>0&&(t.imgHeight=e)}))}})},N=()=>{Y({success:e=>{n.value.list.forEach(((t,o)=>{if(0==o){var r=t.imgHeight/t.imgWidth;t.imgWidth=e.windowWidth-l(4*n.value.margin.both)-l(2*n.value.imageGap),t.imgWidth=t.imgWidth/2,t.imgHeight=t.imgWidth*r}else 1==o?(t.imgWidth=n.value.list[0].imgWidth,t.imgHeight=(n.value.list[0].imgHeight-l(2*n.value.imageGap))/2):o>1&&(t.imgWidth=(n.value.list[0].imgWidth-l(2*n.value.imageGap))/2,t.imgHeight=n.value.list[1].imgHeight)})),n.value.list.forEach(((e,t)=>{e.imgWidth+="px",e.imgHeight}))}})},O=e=>{if(Object.keys(e).length){if(!e.url)return;if("app/pages/member/index"==G()&&!U())return void F().setLoginBack({url:e.url});q(e)}else E(e)};return(e,t)=>{const l=I,u=T;return r(),i(u,{class:x(["rubik-cube",w(o).mode]),style:R(w(s))},{default:a((()=>[S(" 1左2右 "),"row1-lt-of2-rt"==w(n).mode?(r(),v(b,{key:0},[C(u,{class:"template-left"},{default:a((()=>[C(u,{onClick:t[0]||(t[0]=e=>O(w(n).list[0].link)),class:x(["item",w(n).mode]),style:R({marginRight:2*w(n).imageGap+"rpx",width:w(n).list[0].imgWidth,height:w(n).list[0].imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(w(n).list[0].imageUrl),mode:"scaleToFill",style:R(w(n).list[0].pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:1},8,["class","style"])])),_:1}),C(u,{class:"template-right"},{default:a((()=>[(r(!0),v(b,null,y(w(n).list,((e,t)=>(r(),v(b,{key:t},[t>0?(r(),i(u,{key:0,onClick:t=>O(e.link),class:x(["item",w(n).mode]),style:R({marginBottom:2*w(n).imageGap+"rpx",width:e.imgWidth,height:e.imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(e.imageUrl),mode:"scaleToFill",style:R(e.pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:2},1032,["onClick","class","style"])):S("v-if",!0)],64)))),128))])),_:1})],64)):"row1-lt-of1-tp-of2-bm"==w(n).mode?(r(),v(b,{key:1},[S(" 1左3右 "),C(u,{class:"template-left"},{default:a((()=>[C(u,{onClick:t[1]||(t[1]=e=>O(w(n).list[0].link)),class:x(["item",w(n).mode]),style:R({marginRight:2*w(n).imageGap+"rpx",width:w(n).list[0].imgWidth,height:w(n).list[0].imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(w(n).list[0].imageUrl),mode:"scaleToFill",style:R(w(n).list[0].pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:1},8,["class","style"])])),_:1}),C(u,{class:"template-right"},{default:a((()=>[C(u,{onClick:t[2]||(t[2]=e=>O(w(n).list[1].link)),class:x(["item",w(n).mode]),style:R({marginBottom:2*w(n).imageGap+"rpx",width:w(n).list[1].imgWidth,height:w(n).list[1].imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(w(n).list[1].imageUrl),mode:"scaleToFill",style:R(w(n).list[1].pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:1},8,["class","style"]),C(u,{class:"template-bottom"},{default:a((()=>[(r(!0),v(b,null,y(w(n).list,((e,t)=>(r(),v(b,{key:t},[t>1?(r(),i(u,{key:0,onClick:t=>O(e.link),class:x(["item",w(n).mode]),style:R({marginRight:2*w(n).imageGap+"rpx",width:e.imgWidth,height:e.imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(e.imageUrl),mode:"scaleToFill",style:R(e.pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:2},1032,["onClick","class","style"])):S("v-if",!0)],64)))),128))])),_:1})])),_:1})],64)):(r(!0),v(b,{key:2},y(w(n).list,((e,t)=>(r(),i(u,{class:x(["item",w(n).mode]),key:t,onClick:t=>O(e.link),style:R({marginRight:2*w(n).imageGap+"rpx",marginBottom:2*w(n).imageGap+"rpx",width:e.widthStyle,height:e.imgHeight+"px"})},{default:a((()=>[C(l,{src:w(_)(e.imageUrl),mode:"scaleToFill",style:R(e.pageItemStyle),"show-menu-by-longpress":!0},null,8,["src","style"])])),_:2},1032,["class","onClick","style"])))),128))])),_:1},8,["class","style"])}}}),[["__scopeId","data-v-a4d7422f"]]),ve=Q(s({__name:"index",props:["component","index","pullDownRefresh"],setup(t){const o=t,n=u(),l=d((()=>"decorate"==n.mode?n.value[o.index]:o.component)),s=d((()=>{var e="";return l.value.componentBgColor&&(e+="background-color:"+l.value.componentBgColor+";"),l.value.topRounded&&(e+="border-top-left-radius:"+2*l.value.topRounded+"rpx;"),l.value.topRounded&&(e+="border-top-right-radius:"+2*l.value.topRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-left-radius:"+2*l.value.bottomRounded+"rpx;"),l.value.bottomRounded&&(e+="border-bottom-right-radius:"+2*l.value.bottomRounded+"rpx;"),e}));return p((()=>o.pullDownRefresh),((e,t)=>{})),(t,o)=>{const n=T,u=f(g("app-link"),ee),d=N,c=f(g("u-icon"),e);return r(),i(n,{class:"diy-text",style:R(w(s))},{default:a((()=>["style-1"==w(l).style?(r(),i(n,{key:0,class:"p-[20rpx]"},{default:a((()=>[C(u,{data:w(l).link},{default:a((()=>[C(n,{style:R({fontSize:2*w(l).fontSize+"rpx",color:w(l).textColor,fontWeight:w(l).fontWeight,textAlign:w(l).textAlign})},{default:a((()=>[k(D(w(l).text),1)])),_:1},8,["style"])])),_:1},8,["data"])])),_:1})):S("v-if",!0),"style-2"==w(l).style?(r(),i(n,{key:1,class:"p-[20rpx] flex items-center"},{default:a((()=>[C(u,{data:w(l).link},{default:a((()=>[C(n,{class:"max-w-[200rpx] truncate",style:R({fontSize:2*w(l).fontSize+"rpx",color:w(l).textColor,fontWeight:w(l).fontWeight})},{default:a((()=>[k(D(w(l).text),1)])),_:1},8,["style"])])),_:1},8,["data"]),C(d,{class:"ml-[16rpx] max-w-[300rpx] truncate",style:R({color:w(l).subTitle.color,fontSize:2*w(l).subTitle.fontSize+"rpx"})},{default:a((()=>[k(D(w(l).subTitle.text),1)])),_:1},8,["style"]),w(l).more.isShow?(r(),i(n,{key:0,class:"ml-auto text-right",style:R({color:w(l).more.color})},{default:a((()=>[C(u,{data:w(l).more.link,"custom-class":"flex items-center"},{default:a((()=>[C(d,{class:"max-w-[200rpx] truncate text-[24rpx] mr-[8rpx]"},{default:a((()=>[k(D(w(l).more.text),1)])),_:1}),C(c,{name:"arrow-right",size:"12",style:R({color:w(l).more.color})},null,8,["style"])])),_:1},8,["data"])])),_:1},8,["style"])):S("v-if",!0)])),_:1})):S("v-if",!0)])),_:1},8,["style"])}}}),[["__scopeId","data-v-18e69c46"]]);const be=Q({name:"u-tabbar-item",mixins:[t,o,{props:{name:{type:[String,Number,null],default:X.tabbarItem.name},icon:{icon:String,default:X.tabbarItem.icon},badge:{type:[String,Number,null],default:X.tabbarItem.badge},dot:{type:Boolean,default:X.tabbarItem.dot},text:{type:String,default:X.tabbarItem.text},badgeStyle:{type:[Object,String],default:X.tabbarItem.badgeStyle}}}],data:()=>({isActive:!1,parentData:{value:null,activeColor:"",inactiveColor:""}}),options:{virtualHost:!0},created(){this.init()},methods:{init(){this.updateParentData(),this.parent||uni.$u.error("u-tabbar-item必须搭配u-tabbar组件使用");const e=this.parent.children.indexOf(this);this.isActive=(this.name||e)===this.parentData.value},updateParentData(){this.getParentData("u-tabbar")},updateFromParent(){this.init()},clickHandler(){this.$nextTick((()=>{const e=this.parent.children.indexOf(this),t=this.name||e;t!==this.parent.value&&this.parent.$emit("change",t),this.$emit("click",t)}))}}},[["render",function(t,o,n,s,u,d){const c=f(g("u-icon"),e),p=f(g("u-badge"),ne),m=T,h=N;return r(),i(m,{class:"u-tabbar-item",style:R([t.$u.addStyle(t.customStyle)]),onClick:d.clickHandler},{default:a((()=>[C(m,{class:"u-tabbar-item__icon"},{default:a((()=>[t.icon?(r(),i(c,{key:0,name:t.icon,color:u.isActive?u.parentData.activeColor:u.parentData.inactiveColor,size:20},null,8,["name","color"])):(r(),v(b,{key:1},[u.isActive?l(t.$slots,"active-icon",{key:0},void 0,!0):l(t.$slots,"inactive-icon",{key:1},void 0,!0)],64)),C(p,{absolute:"",offset:[0,t.dot?"34rpx":t.badge>9?"14rpx":"20rpx"],customStyle:t.badgeStyle,isDot:t.dot,value:t.badge||(t.dot?1:null),show:t.dot||t.badge>0},null,8,["offset","customStyle","isDot","value","show"])])),_:3}),l(t.$slots,"text",{},(()=>[C(h,{class:"u-tabbar-item__text",style:R({color:u.isActive?u.parentData.activeColor:u.parentData.inactiveColor})},{default:a((()=>[k(D(t.text),1)])),_:1},8,["style"])]),!0)])),_:3},8,["style","onClick"])}],["__scopeId","data-v-b5faebd4"]]),ye=Q(s({__name:"tabbar",props:{addon:{type:String,default:""}},setup(e){const t=e;if(t.addon){V().getTabbarConfig(t.addon)}const o=d((()=>V().tabbar)),n=d((()=>"/"+G())),l=e=>{E({url:`${e}`})};return(e,t)=>{const s=f(g("u-tabbar-item"),be),u=f(g("u-tabbar"),re),d=T;return w(o)&&Object.keys(w(o)).length?(r(),v(b,{key:0},[w(o)?(r(),i(u,{key:0,value:w(n),onChange:l,zIndex:"9999",fixed:!0,placeholder:!0,safeAreaInsetBottom:!0,"inactive-color":w(o).value.textColor,"active-color":w(o).value.textHoverColor},{default:a((()=>[(r(!0),v(b,null,y(w(o).value.list,(e=>(r(),v(b,null,[1==w(o).value.type?(r(),i(s,{key:0,style:R({"background-color":w(o).value.backgroundColor}),text:e.text,icon:w(_)(w(n)==e.link.url?e.iconSelectPath:e.iconPath),name:e.link.url},null,8,["style","text","icon","name"])):S("v-if",!0),2==w(o).value.type?(r(),i(s,{key:1,style:R({"background-color":w(o).value.backgroundColor}),icon:w(_)(w(n)==e.link.url?e.iconSelectPath:e.iconPath),name:e.link.url},null,8,["style","icon","name"])):S("v-if",!0),3==w(o).value.type?(r(),i(s,{key:2,style:R({"background-color":w(o).value.backgroundColor}),text:e.text,name:e.link.url},null,8,["style","text","name"])):S("v-if",!0)],64)))),256))])),_:1},8,["value","inactive-color","active-color"])):S("v-if",!0),C(d,{class:"tab-bar-placeholder"})],64)):S("v-if",!0)}}}),[["__scopeId","data-v-77456ed4"]]); +/**! + * Sortable 1.15.0 + * @author RubaXa + * @author owenm + * @license MIT + */ +function xe(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function we(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}function De(e){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(e)}var Re=De(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Ee=De(/Edge/i),Te=De(/firefox/i),Ie=De(/safari/i)&&!De(/chrome/i)&&!De(/android/i),Ne=De(/iP(ad|od|hone)/i),Oe=De(/chrome/i)&&De(/android/i),Ae={capture:!1,passive:!1};function We(e,t,o){e.addEventListener(t,o,!Re&&Ae)}function ze(e,t,o){e.removeEventListener(t,o,!Re&&Ae)}function Pe(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(o){return!1}return!1}}function Be(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function He(e,t,o,n){if(e){o=o||document;do{if(null!=t&&(">"===t[0]?e.parentNode===o&&Pe(e,t):Pe(e,t))||n&&e===o)return e;if(e===o)break}while(e=Be(e))}return null}var Me,je=/\s+/g;function Fe(e,t,o){if(e&&t)if(e.classList)e.classList[o?"add":"remove"](t);else{var n=(" "+e.className+" ").replace(je," ").replace(" "+t+" "," ");e.className=(n+(o?" "+t:"")).replace(je," ")}}function Xe(e,t,o){var n=e&&e.style;if(n){if(void 0===o)return document.defaultView&&document.defaultView.getComputedStyle?o=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(o=e.currentStyle),void 0===t?o:o[t];t in n||-1!==t.indexOf("webkit")||(t="-webkit-"+t),n[t]=o+("string"==typeof o?"":"px")}}function $e(e,t){var o="";if("string"==typeof e)o=e;else do{var n=Xe(e,"transform");n&&"none"!==n&&(o=n+" "+o)}while(!t&&(e=e.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(o)}function Ye(e,t,o){if(e){var n=e.getElementsByTagName(t),r=0,i=n.length;if(o)for(;r=i:r<=i))return n;if(n===Le())break;n=Je(n,!1)}return!1}function qe(e,t,o,n){for(var r=0,i=0,a=e.children;i2&&void 0!==arguments[2]?arguments[2]:{},n=o.evt,r=ke(o,st);lt.pluginEvent.bind(to)(e,t,we({dragEl:ct,parentEl:pt,ghostEl:mt,rootEl:ht,nextEl:ft,lastDownEl:gt,cloneEl:vt,cloneHidden:bt,dragStarted:Nt,putSortable:St,activeSortable:to.active,originalEvent:n,oldIndex:yt,oldDraggableIndex:wt,newIndex:xt,newDraggableIndex:_t,hideGhostForTarget:Zt,unhideGhostForTarget:Jt,cloneNowHidden:function(){bt=!0},cloneNowShown:function(){bt=!1},dispatchSortableEvent:function(e){dt({sortable:t,name:e,originalEvent:n})}},r))};function dt(e){!function(e){var t=e.sortable,o=e.rootEl,n=e.name,r=e.targetEl,i=e.cloneEl,a=e.toEl,l=e.fromEl,s=e.oldIndex,u=e.newIndex,d=e.oldDraggableIndex,c=e.newDraggableIndex,p=e.originalEvent,m=e.putSortable,h=e.extraEventProperties;if(t=t||o&&o[nt]){var f,g=t.options,v="on"+n.charAt(0).toUpperCase()+n.substr(1);!window.CustomEvent||Re||Ee?(f=document.createEvent("Event")).initEvent(n,!0,!0):f=new CustomEvent(n,{bubbles:!0,cancelable:!0}),f.to=a||o,f.from=l||o,f.item=r||o,f.clone=i,f.oldIndex=s,f.newIndex=u,f.oldDraggableIndex=d,f.newDraggableIndex=c,f.originalEvent=p,f.pullMode=m?m.lastPutMode:void 0;var b=we(we({},h),lt.getEventProperties(n,t));for(var y in b)f[y]=b[y];o&&o.dispatchEvent(f),g[v]&&g[v].call(t,f)}}(we({putSortable:St,cloneEl:vt,targetEl:ct,rootEl:ht,oldIndex:yt,oldDraggableIndex:wt,newIndex:xt,newDraggableIndex:_t},e))}var ct,pt,mt,ht,ft,gt,vt,bt,yt,xt,wt,_t,Ct,St,kt,Dt,Rt,Et,Tt,It,Nt,Ot,At,Wt,zt,Pt=!1,Bt=!1,Ht=[],Mt=!1,jt=!1,Ft=[],Xt=!1,$t=[],Yt="undefined"!=typeof document,Lt=Ne,Gt=Ee||Re?"cssFloat":"float",Ut=Yt&&!Oe&&!Ne&&"draggable"in document.createElement("div"),qt=function(){if(Yt){if(Re)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),Vt=function(e,t){var o=Xe(e),n=parseInt(o.width)-parseInt(o.paddingLeft)-parseInt(o.paddingRight)-parseInt(o.borderLeftWidth)-parseInt(o.borderRightWidth),r=qe(e,0,t),i=qe(e,1,t),a=r&&Xe(r),l=i&&Xe(i),s=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+Ge(r).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+Ge(i).width;if("flex"===o.display)return"column"===o.flexDirection||"column-reverse"===o.flexDirection?"vertical":"horizontal";if("grid"===o.display)return o.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(r&&a.float&&"none"!==a.float){var d="left"===a.float?"left":"right";return!i||"both"!==l.clear&&l.clear!==d?"horizontal":"vertical"}return r&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||s>=n&&"none"===o[Gt]||i&&"none"===o[Gt]&&s+u>n)?"vertical":"horizontal"},Kt=function(e){function t(e,o){return function(n,r,i,a){var l=n.options.group.name&&r.options.group.name&&n.options.group.name===r.options.group.name;if(null==e&&(o||l))return!0;if(null==e||!1===e)return!1;if(o&&"clone"===e)return e;if("function"==typeof e)return t(e(n,r,i,a),o)(n,r,i,a);var s=(o?n:r).options.group.name;return!0===e||"string"==typeof e&&e===s||e.join&&e.indexOf(s)>-1}}var o={},n=e.group;n&&"object"==_e(n)||(n={name:n}),o.name=n.name,o.checkPull=t(n.pull,!0),o.checkPut=t(n.put),o.revertClone=n.revertClone,e.group=o},Zt=function(){!qt&&mt&&Xe(mt,"display","none")},Jt=function(){!qt&&mt&&Xe(mt,"display","")};Yt&&!Oe&&document.addEventListener("click",(function(e){if(Bt)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),Bt=!1,!1}),!0);var Qt=function(e){if(ct){e=e.touches?e.touches[0]:e;var t=(r=e.clientX,i=e.clientY,Ht.some((function(e){var t=e[nt].options.emptyInsertThreshold;if(t&&!Ve(e)){var o=Ge(e),n=r>=o.left-t&&r<=o.right+t,l=i>=o.top-t&&i<=o.bottom+t;return n&&l?a=e:void 0}})),a);if(t){var o={};for(var n in e)e.hasOwnProperty(n)&&(o[n]=e[n]);o.target=o.rootEl=t,o.preventDefault=void 0,o.stopPropagation=void 0,t[nt]._onDragOver(o)}}var r,i,a},eo=function(e){ct&&ct.parentNode[nt]._isOutsideThisEl(e.target)};function to(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=Se({},t),e[nt]=this;var o={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Vt(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==to.supportPointer&&"PointerEvent"in window&&!Ie,emptyInsertThreshold:5};for(var n in lt.initializePlugins(this,e,o),o)!(n in t)&&(t[n]=o[n]);for(var r in Kt(t),this)"_"===r.charAt(0)&&"function"==typeof this[r]&&(this[r]=this[r].bind(this));this.nativeDraggable=!t.forceFallback&&Ut,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?We(e,"pointerdown",this._onTapStart):(We(e,"mousedown",this._onTapStart),We(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(We(e,"dragover",this),We(e,"dragenter",this)),Ht.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),Se(this,rt())}function oo(e,t,o,n,r,i,a,l){var s,u,d=e[nt],c=d.options.onMove;return!window.CustomEvent||Re||Ee?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=t,s.from=e,s.dragged=o,s.draggedRect=n,s.related=r||t,s.relatedRect=i||Ge(t),s.willInsertAfter=l,s.originalEvent=a,e.dispatchEvent(s),c&&(u=c.call(d,s,a)),u}function no(e){e.draggable=!1}function ro(){Xt=!1}function io(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,o=t.length,n=0;o--;)n+=t.charCodeAt(o);return n.toString(36)}function ao(e){return setTimeout(e,0)}function lo(e){return clearTimeout(e)}to.prototype={constructor:to,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(Ot=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,ct):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,o=this.el,n=this.options,r=n.preventOnFilter,i=e.type,a=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,l=(a||e).target,s=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||l,u=n.filter;if(function(e){$t.length=0;var t=e.getElementsByTagName("input"),o=t.length;for(;o--;){var n=t[o];n.checked&&$t.push(n)}}(o),!ct&&!(/mousedown|pointerdown/.test(i)&&0!==e.button||n.disabled)&&!s.isContentEditable&&(this.nativeDraggable||!Ie||!l||"SELECT"!==l.tagName.toUpperCase())&&!((l=He(l,n.draggable,o,!1))&&l.animated||gt===l)){if(yt=Ke(l),wt=Ke(l,n.draggable),"function"==typeof u){if(u.call(this,e,l,this))return dt({sortable:t,rootEl:s,name:"filter",targetEl:l,toEl:o,fromEl:o}),ut("filter",t,{evt:e}),void(r&&e.cancelable&&e.preventDefault())}else if(u&&(u=u.split(",").some((function(n){if(n=He(s,n.trim(),o,!1))return dt({sortable:t,rootEl:n,name:"filter",targetEl:l,fromEl:o,toEl:o}),ut("filter",t,{evt:e}),!0}))))return void(r&&e.cancelable&&e.preventDefault());n.handle&&!He(s,n.handle,o,!1)||this._prepareDragStart(e,a,l)}}},_prepareDragStart:function(e,t,o){var n,r=this,i=r.el,a=r.options,l=i.ownerDocument;if(o&&!ct&&o.parentNode===i){var s=Ge(o);if(ht=i,pt=(ct=o).parentNode,ft=ct.nextSibling,gt=o,Ct=a.group,to.dragged=ct,kt={target:ct,clientX:(t||e).clientX,clientY:(t||e).clientY},Tt=kt.clientX-s.left,It=kt.clientY-s.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,ct.style["will-change"]="all",n=function(){ut("delayEnded",r,{evt:e}),to.eventCanceled?r._onDrop():(r._disableDelayedDragEvents(),!Te&&r.nativeDraggable&&(ct.draggable=!0),r._triggerDragStart(e,t),dt({sortable:r,name:"choose",originalEvent:e}),Fe(ct,a.chosenClass,!0))},a.ignore.split(",").forEach((function(e){Ye(ct,e.trim(),no)})),We(l,"dragover",Qt),We(l,"mousemove",Qt),We(l,"touchmove",Qt),We(l,"mouseup",r._onDrop),We(l,"touchend",r._onDrop),We(l,"touchcancel",r._onDrop),Te&&this.nativeDraggable&&(this.options.touchStartThreshold=4,ct.draggable=!0),ut("delayStart",this,{evt:e}),!a.delay||a.delayOnTouchOnly&&!t||this.nativeDraggable&&(Ee||Re))n();else{if(to.eventCanceled)return void this._onDrop();We(l,"mouseup",r._disableDelayedDrag),We(l,"touchend",r._disableDelayedDrag),We(l,"touchcancel",r._disableDelayedDrag),We(l,"mousemove",r._delayedDragTouchMoveHandler),We(l,"touchmove",r._delayedDragTouchMoveHandler),a.supportPointer&&We(l,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(n,a.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){ct&&no(ct),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;ze(e,"mouseup",this._disableDelayedDrag),ze(e,"touchend",this._disableDelayedDrag),ze(e,"touchcancel",this._disableDelayedDrag),ze(e,"mousemove",this._delayedDragTouchMoveHandler),ze(e,"touchmove",this._delayedDragTouchMoveHandler),ze(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?We(document,"pointermove",this._onTouchMove):We(document,t?"touchmove":"mousemove",this._onTouchMove):(We(ct,"dragend",this),We(ht,"dragstart",this._onDragStart));try{document.selection?ao((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(o){}},_dragStarted:function(e,t){if(Pt=!1,ht&&ct){ut("dragStarted",this,{evt:t}),this.nativeDraggable&&We(document,"dragover",eo);var o=this.options;!e&&Fe(ct,o.dragClass,!1),Fe(ct,o.ghostClass,!0),to.active=this,e&&this._appendGhost(),dt({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Dt){this._lastX=Dt.clientX,this._lastY=Dt.clientY,Zt();for(var e=document.elementFromPoint(Dt.clientX,Dt.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Dt.clientX,Dt.clientY))!==t;)t=e;if(ct.parentNode[nt]._isOutsideThisEl(e),t)do{if(t[nt]){if(t[nt]._onDragOver({clientX:Dt.clientX,clientY:Dt.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=t.parentNode);Jt()}},_onTouchMove:function(e){if(kt){var t=this.options,o=t.fallbackTolerance,n=t.fallbackOffset,r=e.touches?e.touches[0]:e,i=mt&&$e(mt,!0),a=mt&&i&&i.a,l=mt&&i&&i.d,s=Lt&&zt&&Ze(zt),u=(r.clientX-kt.clientX+n.x)/(a||1)+(s?s[0]-Ft[0]:0)/(a||1),d=(r.clientY-kt.clientY+n.y)/(l||1)+(s?s[1]-Ft[1]:0)/(l||1);if(!to.active&&!Pt){if(o&&Math.max(Math.abs(r.clientX-this._lastX),Math.abs(r.clientY-this._lastY))n.right+r||e.clientX<=n.right&&e.clientY>n.bottom&&e.clientX>=n.left:e.clientX>n.right&&e.clientY>n.top||e.clientX<=n.right&&e.clientY>n.bottom+r}(e,r,this)&&!f.animated){if(f===ct)return N(!1);if(f&&i===e.target&&(a=f),a&&(o=Ge(a)),!1!==oo(ht,i,ct,t,a,o,e,!!a))return I(),f&&f.nextSibling?i.insertBefore(ct,f.nextSibling):i.appendChild(ct),pt=i,O(),N(!0)}else if(f&&function(e,t,o){var n=Ge(qe(o.el,0,o.options,!0)),r=10;return t?e.clientXd+u*i/2:sc-Wt)return-At}else if(s>d+u*(1-r)/2&&sc-u*i/2))return s>d+u/2?1:-1;return 0}(e,a,o,r,w?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,jt,Ot===a),0!==v){var k=Ke(ct);do{k-=v,y=pt.children[k]}while(y&&("none"===Xe(y,"display")||y===mt))}if(0===v||y===a)return N(!1);Ot=a,At=v;var D=a.nextElementSibling,R=!1,E=oo(ht,i,ct,t,a,o,e,R=1===v);if(!1!==E)return 1!==E&&-1!==E||(R=1===E),Xt=!0,setTimeout(ro,30),I(),R&&!D?i.appendChild(ct):a.parentNode.insertBefore(ct,R?D:a),C&&tt(C,0,S-C.scrollTop),pt=ct.parentNode,void 0===b||jt||(Wt=Math.abs(b-Ge(a)[_])),O(),N(!0)}if(i.contains(ct))return N(!1)}return!1}function T(l,s){ut(l,m,we({evt:e,isOwner:d,axis:r?"vertical":"horizontal",revert:n,dragRect:t,targetRect:o,canSort:c,fromSortable:p,target:a,completed:N,onMove:function(o,n){return oo(ht,i,ct,t,o,Ge(o),e,n)},changed:O},s))}function I(){T("dragOverAnimationCapture"),m.captureAnimationState(),m!==p&&p.captureAnimationState()}function N(t){return T("dragOverCompleted",{insertion:t}),t&&(d?u._hideClone():u._showClone(m),m!==p&&(Fe(ct,St?St.options.ghostClass:u.options.ghostClass,!1),Fe(ct,l.ghostClass,!0)),St!==m&&m!==to.active?St=m:m===to.active&&St&&(St=null),p===m&&(m._ignoreWhileAnimating=a),m.animateAll((function(){T("dragOverAnimationComplete"),m._ignoreWhileAnimating=null})),m!==p&&(p.animateAll(),p._ignoreWhileAnimating=null)),(a===ct&&!ct.animated||a===i&&!a.animated)&&(Ot=null),l.dragoverBubble||e.rootEl||a===document||(ct.parentNode[nt]._isOutsideThisEl(e.target),!t&&Qt(e)),!l.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),h=!0}function O(){xt=Ke(ct),_t=Ke(ct,l.draggable),dt({sortable:m,name:"change",toEl:i,newIndex:xt,newDraggableIndex:_t,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){ze(document,"mousemove",this._onTouchMove),ze(document,"touchmove",this._onTouchMove),ze(document,"pointermove",this._onTouchMove),ze(document,"dragover",Qt),ze(document,"mousemove",Qt),ze(document,"touchmove",Qt)},_offUpEvents:function(){var e=this.el.ownerDocument;ze(e,"mouseup",this._onDrop),ze(e,"touchend",this._onDrop),ze(e,"pointerup",this._onDrop),ze(e,"touchcancel",this._onDrop),ze(document,"selectstart",this)},_onDrop:function(e){var t=this.el,o=this.options;xt=Ke(ct),_t=Ke(ct,o.draggable),ut("drop",this,{evt:e}),pt=ct&&ct.parentNode,xt=Ke(ct),_t=Ke(ct,o.draggable),to.eventCanceled||(Pt=!1,jt=!1,Mt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),lo(this.cloneId),lo(this._dragStartId),this.nativeDraggable&&(ze(document,"drop",this),ze(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Ie&&Xe(document.body,"user-select",""),Xe(ct,"transform",""),e&&(Nt&&(e.cancelable&&e.preventDefault(),!o.dropBubble&&e.stopPropagation()),mt&&mt.parentNode&&mt.parentNode.removeChild(mt),(ht===pt||St&&"clone"!==St.lastPutMode)&&vt&&vt.parentNode&&vt.parentNode.removeChild(vt),ct&&(this.nativeDraggable&&ze(ct,"dragend",this),no(ct),ct.style["will-change"]="",Nt&&!Pt&&Fe(ct,St?St.options.ghostClass:this.options.ghostClass,!1),Fe(ct,this.options.chosenClass,!1),dt({sortable:this,name:"unchoose",toEl:pt,newIndex:null,newDraggableIndex:null,originalEvent:e}),ht!==pt?(xt>=0&&(dt({rootEl:pt,name:"add",toEl:pt,fromEl:ht,originalEvent:e}),dt({sortable:this,name:"remove",toEl:pt,originalEvent:e}),dt({rootEl:pt,name:"sort",toEl:pt,fromEl:ht,originalEvent:e}),dt({sortable:this,name:"sort",toEl:pt,originalEvent:e})),St&&St.save()):xt!==yt&&xt>=0&&(dt({sortable:this,name:"update",toEl:pt,originalEvent:e}),dt({sortable:this,name:"sort",toEl:pt,originalEvent:e})),to.active&&(null!=xt&&-1!==xt||(xt=yt,_t=wt),dt({sortable:this,name:"end",toEl:pt,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){ut("nulling",this),ht=ct=pt=mt=ft=vt=gt=bt=kt=Dt=Nt=xt=_t=yt=wt=Ot=At=St=Ct=to.dragged=to.ghost=to.clone=to.active=null,$t.forEach((function(e){e.checked=!0})),$t.length=Rt=Et=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":ct&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move");e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],o=this.el.children,n=0,r=o.length,i=this.options;n-1&&e%1==0&&e<=tn}(e.length)&&!function(e){if(!Mo(e))return!1;var t=Wo(e);return t==Ko||t==Zo||t==Vo||t==Jo}(e)}function nn(e,t,o){if(!Mo(o))return!1;var n=typeof t;return!!("number"==n?on(o)&&function(e,t){var o=typeof e;return!!(t=null==t?Qo:t)&&("number"==o||"symbol"!=o&&en.test(e))&&e>-1&&e%1==0&&e"decorate"==o.mode?o:t.data)),l=d((()=>V().addon));return m((()=>{if("decorate"==o.mode){var e=document.getElementById("componentList");const t=to.create(e,{group:"draggable-element",animation:200,onEnd:e=>{let n=o.value[e.oldIndex];o.value.splice(e.oldIndex,1),o.value.splice(e.newIndex,0,n),K((()=>{t.sort(un(o.value.length).map((e=>e.toString()))),o.postMessage(e.newIndex,o.value[e.newIndex])}))}})}})),(e,s)=>{const u=f(g("diy-addon-list"),ae),d=f(g("diy-graphic-nav"),le),c=f(g("diy-horz-blank"),se),p=f(g("diy-hot-area"),ue),m=f(g("diy-image-ads"),de),h=f(g("diy-member-info"),ce),_=f(g("diy-notice"),fe),k=f(g("diy-rubik-cube"),ge),D=f(g("diy-text"),ve),E=T,I=f(g("tabbar"),ye);return r(),i(E,{class:"diy-group",id:"componentList"},{default:a((()=>[(r(!0),v(b,null,y(w(n).value,((e,n)=>(r(),i(E,{key:e.id,onClick:t=>w(o).changeCurrentIndex(n,e),class:x(["draggable-element relative",{selected:w(o).currentIndex==n,decorate:"decorate"==w(o).mode}]),style:R(e.pageStyle)},{default:a((()=>["AddonList"==e.componentName?(r(),i(u,{key:0,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"GraphicNav"==e.componentName?(r(),i(d,{key:1,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"HorzBlank"==e.componentName?(r(),i(c,{key:2,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"HotArea"==e.componentName?(r(),i(p,{key:3,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"ImageAds"==e.componentName?(r(),i(m,{key:4,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"MemberInfo"==e.componentName?(r(),i(h,{key:5,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"Notice"==e.componentName?(r(),i(_,{key:6,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"RubikCube"==e.componentName?(r(),i(k,{key:7,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0),"Text"==e.componentName?(r(),i(D,{key:8,component:e,index:n,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["component","index","pullDownRefreshCount"])):S("v-if",!0)])),_:2},1032,["onClick","class","style"])))),128)),""==w(o).mode&&w(n).global.bottomTabBarSwitch?(r(),v(b,{key:0},[C(E,{class:"pt-[20rpx]"}),C(I,{addon:w(l)},null,8,["addon"])],64)):S("v-if",!0)])),_:1})}}}),[["__scopeId","data-v-459b73fc"]]),cn=s({__name:"index",props:["data","pullDownRefresh"],setup(e){const t=e;return(e,o)=>{const n=f(g("diy-group"),dn),l=T;return r(),i(l,null,{default:a((()=>[k(" 固定模板示例,我也可以装修 "),S(" 自定义模板渲染 "),C(n,{data:t.data,pullDownRefresh:t.pullDownRefresh},null,8,["data","pullDownRefresh"])])),_:1})}}}),pn=Q(s({__name:"index",props:["data","pullDownRefreshCount"],setup(e){const t=e;return(e,o)=>{const n=f(g("fixed-demo-index"),cn),l=T;return r(),i(l,{class:"fixed-group"},{default:a((()=>["demo-index"==t.data.global.component?(r(),i(n,{key:0,data:t.data,pullDownRefreshCount:t.pullDownRefreshCount},null,8,["data","pullDownRefreshCount"])):S("v-if",!0)])),_:1})}}}),[["__scopeId","data-v-aba3c6f6"]]);export{dn as _,pn as a}; diff --git a/niucloud/public/wap/assets/mescroll-empty-ba01dc20.css b/niucloud/public/wap/assets/mescroll-empty-ba01dc20.css new file mode 100644 index 0000000..ff936a7 --- /dev/null +++ b/niucloud/public/wap/assets/mescroll-empty-ba01dc20.css @@ -0,0 +1 @@ +.mescroll-empty[data-v-f99af0bf]{box-sizing:border-box;width:100%;padding:3.125rem 1.5625rem;text-align:center}.mescroll-empty.empty-fixed[data-v-f99af0bf]{z-index:99;position:absolute;top:3.125rem;left:0}.mescroll-empty .empty-icon[data-v-f99af0bf]{width:8.75rem;height:8.75rem}.mescroll-empty .empty-tip[data-v-f99af0bf]{margin-top:.625rem;font-size:.75rem;color:gray}.mescroll-empty .empty-btn[data-v-f99af0bf]{display:inline-block;margin-top:1.25rem;min-width:6.25rem;padding:.5625rem;font-size:.875rem;border:.03125rem solid #e04b28;border-radius:1.875rem;color:#e04b28}.mescroll-empty .empty-btn[data-v-f99af0bf]:active{opacity:.75} diff --git a/niucloud/public/wap/assets/mescroll-empty.e0697f9d.js b/niucloud/public/wap/assets/mescroll-empty.e0697f9d.js new file mode 100644 index 0000000..4922a4c --- /dev/null +++ b/niucloud/public/wap/assets/mescroll-empty.e0697f9d.js @@ -0,0 +1 @@ +import{i as t,j as i,w as e,k as o,m as n,K as p,L as s,I as l,p as c,M as r,x as a}from"./index-c1dbaba4.js";import{m,G as u}from"./useMescroll.fa1d1d16.js";import{_ as y}from"./_plugin-vue_export-helper.1b428a4d.js";const f=y({props:{option:{type:Object,default:()=>({})}},computed:{icon(){if(null!=this.option.icon)return this.option.icon;{let t=m.getType();return this.option.i18n?this.option.i18n[t].icon:u.i18n[t].up.empty.icon||u.up.empty.icon}},tip(){if(null!=this.option.tip)return this.option.tip;{let t=m.getType();return this.option.i18n?this.option.i18n[t].tip:u.i18n[t].up.empty.tip||u.up.empty.tip}},btnText(){if(this.option.i18n){let t=m.getType();return this.option.i18n[t].btnText}return this.option.btnText}},methods:{emptyClick(){this.$emit("emptyclick")}}},[["render",function(m,u,y,f,d,h){const x=r,k=a;return t(),i(k,{class:l(["mescroll-empty",{"empty-fixed":y.option.fixed}]),style:c({"z-index":y.option.zIndex,top:y.option.top})},{default:e((()=>[o(k,null,{default:e((()=>[h.icon?(t(),i(x,{key:0,class:"empty-icon",src:h.icon,mode:"widthFix"},null,8,["src"])):n("v-if",!0)])),_:1}),h.tip?(t(),i(k,{key:0,class:"empty-tip"},{default:e((()=>[p(s(h.tip),1)])),_:1})):n("v-if",!0),h.btnText?(t(),i(k,{key:1,class:"empty-btn",onClick:h.emptyClick},{default:e((()=>[p(s(h.btnText),1)])),_:1},8,["onClick"])):n("v-if",!0)])),_:1},8,["class","style"])}],["__scopeId","data-v-f99af0bf"]]);export{f as M}; diff --git a/niucloud/public/wap/assets/pay.fc2de8ec.js b/niucloud/public/wap/assets/pay.fc2de8ec.js new file mode 100644 index 0000000..bcc9dd4 --- /dev/null +++ b/niucloud/public/wap/assets/pay.fc2de8ec.js @@ -0,0 +1 @@ +import{be as r}from"./index-c1dbaba4.js";function o(o){return r.post("pay",o,{showErrorMessage:!0})}function s(o,s){return r.get(`pay/info/${o}/${s}`,{},{showErrorMessage:!0})}export{s as g,o as p}; diff --git a/niucloud/public/wap/assets/personal-2bc25507.css b/niucloud/public/wap/assets/personal-2bc25507.css new file mode 100644 index 0000000..7de150a --- /dev/null +++ b/niucloud/public/wap/assets/personal-2bc25507.css @@ -0,0 +1 @@ +uni-view[data-v-1941ac11],uni-scroll-view[data-v-1941ac11],uni-swiper-item[data-v-1941ac11]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-upload[data-v-1941ac11]{display:flex;flex-direction:column;flex:1}.u-upload__wrap[data-v-1941ac11]{display:flex;flex-direction:row;flex-wrap:wrap;flex:1}.u-upload__wrap__preview[data-v-1941ac11]{border-radius:2px;margin:0 8px 8px 0;position:relative;overflow:hidden;display:flex;flex-direction:row}.u-upload__wrap__preview__image[data-v-1941ac11]{width:80px;height:80px}.u-upload__wrap__preview__other[data-v-1941ac11]{width:80px;height:80px;background-color:#f2f2f2;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.u-upload__wrap__preview__other__text[data-v-1941ac11]{font-size:11px;color:#909193;margin-top:2px}.u-upload__deletable[data-v-1941ac11]{position:absolute;top:0;right:0;background-color:#373737;height:14px;width:14px;display:flex;flex-direction:row;border-bottom-left-radius:100px;align-items:center;justify-content:center;z-index:3}.u-upload__deletable__icon[data-v-1941ac11]{position:absolute;transform:scale(.7);top:0px;right:0px;top:1px;right:0}.u-upload__success[data-v-1941ac11]{position:absolute;bottom:0;right:0;display:flex;flex-direction:row;border-style:solid;border-top-color:transparent;border-left-color:transparent;border-bottom-color:#5ac725;border-right-color:#5ac725;border-width:9px;align-items:center;justify-content:center}.u-upload__success__icon[data-v-1941ac11]{position:absolute;transform:scale(.7);bottom:-10px;right:-10px}.u-upload__status[data-v-1941ac11]{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.5);display:flex;flex-direction:column;align-items:center;justify-content:center}.u-upload__status__icon[data-v-1941ac11]{position:relative;z-index:1}.u-upload__status__message[data-v-1941ac11]{font-size:12px;color:#fff;margin-top:5px}.u-upload__button[data-v-1941ac11]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:80px;height:80px;background-color:#f4f5f7;border-radius:2px;margin:0 8px 8px 0;box-sizing:border-box}.u-upload__button__text[data-v-1941ac11]{font-size:11px;color:#909193;margin-top:2px}.u-upload__button--hover[data-v-1941ac11]{background-color:#e6e7e9}.u-upload__button--disabled[data-v-1941ac11]{opacity:.5}uni-view[data-v-88cf1536],uni-scroll-view[data-v-88cf1536],uni-swiper-item[data-v-88cf1536]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-toolbar[data-v-88cf1536]{height:42px;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.u-toolbar__wrapper__cancel[data-v-88cf1536]{color:#909193;font-size:15px;padding:0 15px}.u-toolbar__title[data-v-88cf1536]{color:#303133;padding:0 1.875rem;font-size:16px;flex:1;text-align:center}.u-toolbar__wrapper__confirm[data-v-88cf1536]{color:var(--primary-color);font-size:15px;padding:0 15px}uni-view[data-v-6971b6c7],uni-scroll-view[data-v-6971b6c7],uni-swiper-item[data-v-6971b6c7]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-picker[data-v-6971b6c7]{position:relative}.u-picker__view__column[data-v-6971b6c7]{display:flex;flex-direction:row;flex:1;justify-content:center}.u-picker__view__column__item[data-v-6971b6c7]{display:flex;flex-direction:row;justify-content:center;align-items:center;font-size:16px;text-align:center;display:block;color:#303133}.u-picker__view__column__item--disabled[data-v-6971b6c7]{cursor:not-allowed;opacity:.35}.u-picker--loading[data-v-6971b6c7]{position:absolute;top:0;right:0;left:0;bottom:0;display:flex;flex-direction:row;justify-content:center;align-items:center;background-color:rgba(255,255,255,.87);z-index:1000}uni-view[data-v-e4f68153],uni-scroll-view[data-v-e4f68153],uni-swiper-item[data-v-e4f68153]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}uni-page-body[data-v-032d98ac]{background:var(--page-bg-color)}body[data-v-032d98ac]{background:var(--page-bg-color)}[data-v-032d98ac] .u-cell-group__wrapper .u-cell__body{padding-left:0;padding-right:0}[data-v-032d98ac] .u-cell-group__wrapper .u-cell:last-child .u-line{display:none}[data-v-032d98ac] uni-button{border:none} diff --git a/niucloud/public/wap/assets/recharge_record-f3e047d4.css b/niucloud/public/wap/assets/recharge_record-f3e047d4.css new file mode 100644 index 0000000..2acd534 --- /dev/null +++ b/niucloud/public/wap/assets/recharge_record-f3e047d4.css @@ -0,0 +1 @@ +.member-record-list[data-v-348403de]{min-height:100vh}.member-record-list .member-record-item[data-v-348403de]{--tw-border-opacity: 1;border-color:rgba(236,235,236,var(--tw-border-opacity));border-style:solid;border-top-width:0px;border-left-width:0px;border-right-width:0px;border-bottom-width:1px;margin-left:1rem;margin-right:1rem;padding-top:.75rem;padding-bottom:.75rem;position:relative}.member-record-list .member-record-item .name[data-v-348403de]{font-size:.875rem;line-height:1.25rem}.member-record-list .member-record-item .desc[data-v-348403de]{font-size:.75rem;line-height:1rem;margin-top:.25rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity));height:2rem;line-height:2rem}.member-record-list .member-record-item .text-active[data-v-348403de]{color:#ff0d3e}.member-record-list .member-record-item .money[data-v-348403de]{font-weight:700;font-size:1rem;line-height:1.5rem;position:absolute;right:.75rem;top:1rem}.member-record-list .member-record-item .state[data-v-348403de]{font-size:.75rem;line-height:1rem;position:absolute;right:.75rem;top:2.75rem;--tw-text-opacity: 1;color:rgba(141,140,141,var(--tw-text-opacity))}.member-record-list .member-record-item .status[data-v-348403de]{font-size:.875rem;line-height:1.25rem;position:absolute;right:.75rem;top:2.75rem} diff --git a/niucloud/public/wap/assets/recharge_record_detail-71ec6cee.css b/niucloud/public/wap/assets/recharge_record_detail-71ec6cee.css new file mode 100644 index 0000000..2a7f8c0 --- /dev/null +++ b/niucloud/public/wap/assets/recharge_record_detail-71ec6cee.css @@ -0,0 +1 @@ +uni-page-body[data-v-01380275]{background-color:#f5f6fa;padding-top:1rem}body[data-v-01380275]{background-color:#f5f6fa}.member-record-detail[data-v-01380275]{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));border-radius:.375rem;margin:1rem;margin-top:0;padding:1.5rem 1rem}.member-record-detail .money-wrap[data-v-01380275]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;margin-bottom:1.5rem}.member-record-detail .money-wrap uni-text[data-v-01380275]:first-of-type{font-weight:700;font-size:1.875rem;line-height:2.25rem;margin-top:.25rem}.member-record-detail .money-wrap uni-text[data-v-01380275]:last-of-type{font-size:.875rem;line-height:1.25rem;margin-top:.75rem}.member-record-detail .line-wrap[data-v-01380275]{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;font-size:.875rem;line-height:1.25rem;margin-top:.75rem}.member-record-detail .line-wrap .label[data-v-01380275]{--tw-text-opacity: 1;color:rgba(135,135,135,var(--tw-text-opacity))}.member-record-detail .line-wrap .value[data-v-01380275]{--tw-text-opacity: 1;color:rgba(34,34,34,var(--tw-text-opacity))} diff --git a/niucloud/public/wap/assets/sms-code-9b208b13.css b/niucloud/public/wap/assets/sms-code-9b208b13.css new file mode 100644 index 0000000..ce74e97 --- /dev/null +++ b/niucloud/public/wap/assets/sms-code-9b208b13.css @@ -0,0 +1 @@ +uni-view[data-v-198ccd63],uni-scroll-view[data-v-198ccd63],uni-swiper-item[data-v-198ccd63]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start} diff --git a/niucloud/public/wap/assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js b/niucloud/public/wap/assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js new file mode 100644 index 0000000..91826f6 --- /dev/null +++ b/niucloud/public/wap/assets/sms-code.vue_vue_type_script_setup_true_lang.7b751354.js @@ -0,0 +1 @@ +import{V as e,W as t,X as a,i as s,j as n,w as i,m as c,x as o,r,Z as u,c as l,a8 as h,a9 as d,d as m,a as p,q as g,t as f,F as v,k as x,K as y,L as T,n as _,I as C,G as S,aa as b,M as k}from"./index-c1dbaba4.js";import{_ as w}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as N}from"./u-input.d53f0aa0.js";import{_ as E}from"./u-modal.fc188b5a.js";const G=w({name:"u-code",mixins:[t,a,{props:{seconds:{type:[String,Number],default:e.code.seconds},startText:{type:String,default:e.code.startText},changeText:{type:String,default:e.code.changeText},endText:{type:String,default:e.code.endText},keepRunning:{type:Boolean,default:e.code.keepRunning},uniqueKey:{type:String,default:e.code.uniqueKey}}}],data(){return{secNum:this.seconds,timer:null,canGetCode:!0}},mounted(){this.checkKeepRunning()},watch:{seconds:{immediate:!0,handler(e){this.secNum=e}}},methods:{checkKeepRunning(){let e=Number(uni.getStorageSync(this.uniqueKey+"_$uCountDownTimestamp"));if(!e)return this.changeEvent(this.startText);let t=Math.floor(+new Date/1e3);this.keepRunning&&e&&e>t?(this.secNum=e-t,uni.removeStorageSync(this.uniqueKey+"_$uCountDownTimestamp"),this.start()):this.changeEvent(this.startText)},start(){this.timer&&(clearInterval(this.timer),this.timer=null),this.$emit("start"),this.canGetCode=!1,this.changeEvent(this.changeText.replace(/x|X/,this.secNum)),this.setTimeToStorage(),this.timer=setInterval((()=>{--this.secNum?this.changeEvent(this.changeText.replace(/x|X/,this.secNum)):(clearInterval(this.timer),this.timer=null,this.changeEvent(this.endText),this.secNum=this.seconds,this.$emit("end"),this.canGetCode=!0)}),1e3)},reset(){this.canGetCode=!0,clearInterval(this.timer),this.secNum=this.seconds,this.changeEvent(this.endText)},changeEvent(e){this.$emit("change",e)},setTimeToStorage(){if(this.keepRunning&&this.timer&&this.secNum>0&&this.secNum<=this.seconds){let e=Math.floor(+new Date/1e3);uni.setStorage({key:this.uniqueKey+"_$uCountDownTimestamp",data:e+Number(this.secNum)})}}},beforeDestroy(){this.setTimeToStorage(),clearTimeout(this.timer),this.timer=null}},[["render",function(e,t,a,r,u,l){const h=o;return s(),n(h,{class:"u-code"},{default:i((()=>[c(" 此组件功能由js完成,无需写html逻辑 ")])),_:1})}],["__scopeId","data-v-198ccd63"]]);function $(e){const t=r("");return{image:t,refresh:async()=>{try{const a=await d();e.captcha_key=a.data.captcha_key,e.captcha_code="",t.value=a.data.img.replace(/\r\n/g,"")}catch(a){}}}}const K=m({__name:"sms-code",props:{mobile:String,type:String,modelValue:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const a=e,n=l({get:()=>a.modelValue,set(e){t("update:modelValue",e)}}),c=r(null),d=function(e){const t=r(u("getSmsCode")),a="X"+u("smsCodeChangeText"),s=l((()=>!e.value||e.value.canGetCode));return{tips:t,seconds:90,canGetCode:s,send:async t=>{if(!s.value)return;e.value.start();let a=!1;return await h(t).then((t=>{1==t.code?a=t.data.key:(e.value.reset(),a=!1)})).catch((t=>{a=!1,e.value.reset()})),a},codeChange:e=>{t.value=e},changeText:a}}(c),m=r(!1),w=p({mobile:"",captcha_code:"",captcha_key:"",type:a.type}),K=$(w),V=async()=>{if(c.value.canGetCode){if(w.mobile=a.mobile,uni.$u.test.isEmpty(w.mobile))return void b({title:u("mobilePlaceholder"),icon:"none"});if(!uni.$u.test.mobile(w.mobile))return void b({title:u("mobileError"),icon:"none"});await K.refresh(),m.value=!0}},R=async()=>{if(uni.$u.test.isEmpty(w.captcha_code))return void b({title:u("captchaPlaceholder"),icon:"none"});const e=await d.send(w);e?(n.value=e,m.value=!1):!1===e&&K.refresh()};return(e,t)=>{const a=o,n=g(f("u-code"),G),r=g(f("u-input"),N),l=k,h=g(f("u-modal"),E);return s(),v(S,null,[x(a,{class:C({"text-primary":_(d).canGetCode.value,"text-gray-300":!_(d).canGetCode.value}),onClick:V},{default:i((()=>[y(T(_(d).tips.value),1)])),_:1},8,["class"]),x(n,{seconds:_(d).seconds,"change-text":_(d).changeText,ref_key:"smsRef",ref:c,onChange:_(d).codeChange},null,8,["seconds","change-text","onChange"]),x(h,{show:m.value,title:_(u)("captchaTitle"),"confirm-text":_(u)("confirm"),"cancel-text":_(u)("cancel"),"show-cancel-button":!0,onCancel:t[2]||(t[2]=e=>m.value=!1),onConfirm:R},{default:i((()=>[x(a,{class:"flex mt-[20rpx]"},{default:i((()=>[x(r,{placeholder:_(u)("captchaPlaceholder"),border:"surround",modelValue:w.captcha_code,"onUpdate:modelValue":t[0]||(t[0]=e=>w.captcha_code=e)},null,8,["placeholder","modelValue"]),x(l,{src:_(K).image.value,class:"h-[76rpx] ml-[20rpx]",mode:"heightFix",onClick:t[1]||(t[1]=e=>_(K).refresh())},null,8,["src"])])),_:1})])),_:1},8,["show","title","confirm-text","cancel-text"])],64)}}});export{K as _,$ as u}; diff --git a/niucloud/public/wap/assets/u-action-sheet-e3392aa2.css b/niucloud/public/wap/assets/u-action-sheet-e3392aa2.css new file mode 100644 index 0000000..72b884e --- /dev/null +++ b/niucloud/public/wap/assets/u-action-sheet-e3392aa2.css @@ -0,0 +1 @@ +uni-view[data-v-ce3eecec],uni-scroll-view[data-v-ce3eecec],uni-swiper-item[data-v-ce3eecec]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-cell__body[data-v-ce3eecec]{display:flex;flex-direction:row;box-sizing:border-box;padding:10px 15px;font-size:15px;color:#303133;align-items:center}.u-cell__body__content[data-v-ce3eecec]{display:flex;flex-direction:row;align-items:center;flex:1}.u-cell__body--large[data-v-ce3eecec]{padding-top:13px;padding-bottom:13px}.u-cell__left-icon-wrap[data-v-ce3eecec],.u-cell__right-icon-wrap[data-v-ce3eecec]{display:flex;flex-direction:row;align-items:center;font-size:16px}.u-cell__left-icon-wrap[data-v-ce3eecec]{margin-right:4px}.u-cell__right-icon-wrap[data-v-ce3eecec]{margin-left:4px;transition:transform .3s}.u-cell__right-icon-wrap--up[data-v-ce3eecec]{transform:rotate(-90deg)}.u-cell__right-icon-wrap--down[data-v-ce3eecec]{transform:rotate(90deg)}.u-cell__title[data-v-ce3eecec]{flex:1}.u-cell__title-text[data-v-ce3eecec]{font-size:15px;line-height:22px;color:#303133}.u-cell__title-text--large[data-v-ce3eecec]{font-size:16px}.u-cell__label[data-v-ce3eecec]{margin-top:5px;font-size:12px;color:#909193;line-height:18px}.u-cell__label--large[data-v-ce3eecec]{font-size:14px}.u-cell__value[data-v-ce3eecec]{text-align:right;font-size:14px;line-height:24px;color:#606266}.u-cell__value--large[data-v-ce3eecec]{font-size:15px}.u-cell--clickable[data-v-ce3eecec]{background-color:#f3f4f6}.u-cell--disabled[data-v-ce3eecec]{color:#c8c9cc;cursor:not-allowed}.u-cell--center[data-v-ce3eecec]{align-items:center}uni-view[data-v-bfc8927a],uni-scroll-view[data-v-bfc8927a],uni-swiper-item[data-v-bfc8927a]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-cell-group[data-v-bfc8927a]{flex:1}.u-cell-group__title[data-v-bfc8927a]{padding:16px 16px 8px}.u-cell-group__title__text[data-v-bfc8927a]{font-size:15px;line-height:16px;color:#303133}.u-cell-group__wrapper[data-v-bfc8927a]{position:relative}uni-view[data-v-148cef11],uni-scroll-view[data-v-148cef11],uni-swiper-item[data-v-148cef11]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}uni-view[data-v-37c6ec45],uni-scroll-view[data-v-37c6ec45],uni-swiper-item[data-v-37c6ec45]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-reset-button[data-v-37c6ec45]{width:100%}.u-action-sheet[data-v-37c6ec45]{text-align:center}.u-action-sheet__header[data-v-37c6ec45]{position:relative;padding:12px 30px}.u-action-sheet__header__title[data-v-37c6ec45]{font-size:16px;color:#303133;font-weight:700;text-align:center}.u-action-sheet__header__icon-wrap[data-v-37c6ec45]{position:absolute;right:15px;top:15px}.u-action-sheet__description[data-v-37c6ec45]{font-size:13px;color:#909193;margin:18px 15px;text-align:center}.u-action-sheet__item-wrap__item[data-v-37c6ec45]{padding:15px;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-direction:column}.u-action-sheet__item-wrap__item__name[data-v-37c6ec45]{font-size:16px;color:#303133;text-align:center}.u-action-sheet__item-wrap__item__subname[data-v-37c6ec45]{font-size:13px;color:#c0c4cc;margin-top:10px;text-align:center}.u-action-sheet__cancel-text[data-v-37c6ec45]{font-size:16px;color:#606266;text-align:center;padding:16px}.u-action-sheet--hover[data-v-37c6ec45]{background-color:#f2f3f5} diff --git a/niucloud/public/wap/assets/u-action-sheet.2061582e.js b/niucloud/public/wap/assets/u-action-sheet.2061582e.js new file mode 100644 index 0000000..893100a --- /dev/null +++ b/niucloud/public/wap/assets/u-action-sheet.2061582e.js @@ -0,0 +1 @@ +import{_ as e}from"./u-icon.d4bf195f.js";import{V as t,W as l,X as a,q as i,t as s,i as o,j as n,w as c,k as r,I as u,T as d,m as p,p as _,K as m,L as y,x as f,N as g,J as h,F as S,G as b,H as k}from"./index-c1dbaba4.js";import{_ as v}from"./u-line.980a961a.js";import{_ as $}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as C}from"./u-loading-icon.4b2cb429.js";import{_ as B}from"./u-popup.c9f22720.js";const T={props:{lang:String,sessionFrom:String,sendMessageTitle:String,sendMessagePath:String,sendMessageImg:String,showMessageCard:Boolean,appParameter:String,formType:String,openType:String}},x={props:{openType:String},methods:{onGetUserInfo(e){this.$emit("getuserinfo",e.detail)},onContact(e){this.$emit("contact",e.detail)},onGetPhoneNumber(e){this.$emit("getphonenumber",e.detail)},onError(e){this.$emit("error",e.detail)},onLaunchApp(e){this.$emit("launchapp",e.detail)},onOpenSetting(e){this.$emit("opensetting",e.detail)}}};const w=$({name:"u-cell",data:()=>({}),mixins:[l,a,{props:{title:{type:[String,Number],default:t.cell.title},label:{type:[String,Number],default:t.cell.label},value:{type:[String,Number],default:t.cell.value},icon:{type:String,default:t.cell.icon},disabled:{type:Boolean,default:t.cell.disabled},border:{type:Boolean,default:t.cell.border},center:{type:Boolean,default:t.cell.center},url:{type:String,default:t.cell.url},linkType:{type:String,default:t.cell.linkType},clickable:{type:Boolean,default:t.cell.clickable},isLink:{type:Boolean,default:t.cell.isLink},required:{type:Boolean,default:t.cell.required},rightIcon:{type:String,default:t.cell.rightIcon},arrowDirection:{type:String,default:t.cell.arrowDirection},iconStyle:{type:[Object,String],default:()=>uni.$u.props.cell.iconStyle},rightIconStyle:{type:[Object,String],default:()=>uni.$u.props.cell.rightIconStyle},titleStyle:{type:[Object,String],default:()=>uni.$u.props.cell.titleStyle},size:{type:String,default:t.cell.size},stop:{type:Boolean,default:t.cell.stop},name:{type:[Number,String],default:t.cell.name}}}],computed:{titleTextStyle(){return uni.$u.addStyle(this.titleStyle)}},emits:["click"],methods:{clickHandler(e){this.disabled||(this.$emit("click",{name:this.name}),this.openPage(),this.stop&&this.preventEvent(e))}}},[["render",function(t,l,a,h,S,b){const k=i(s("u-icon"),e),$=f,C=g,B=i(s("u-line"),v);return o(),n($,{class:u(["u-cell",[t.customClass]]),style:_([t.$u.addStyle(t.customStyle)]),"hover-class":t.disabled||!t.clickable&&!t.isLink?"":"u-cell--clickable","hover-stay-time":250,onClick:b.clickHandler},{default:c((()=>[r($,{class:u(["u-cell__body",[t.center&&"u-cell--center","large"===t.size&&"u-cell__body--large"]])},{default:c((()=>[r($,{class:"u-cell__body__content"},{default:c((()=>[r($,{class:"u-cell__left-icon-wrap"},{default:c((()=>[d(t.$slots,"icon",{},(()=>[t.icon?(o(),n(k,{key:0,name:t.icon,"custom-style":t.iconStyle,size:"large"===t.size?22:18},null,8,["name","custom-style","size"])):p("v-if",!0)]),!0)])),_:3}),r($,{class:"u-cell__title"},{default:c((()=>[d(t.$slots,"title",{},(()=>[t.title?(o(),n(C,{key:0,class:u(["u-cell__title-text",[t.disabled&&"u-cell--disabled","large"===t.size&&"u-cell__title-text--large"]]),style:_([b.titleTextStyle])},{default:c((()=>[m(y(t.title),1)])),_:1},8,["style","class"])):p("v-if",!0)]),!0),d(t.$slots,"label",{},(()=>[t.label?(o(),n(C,{key:0,class:u(["u-cell__label",[t.disabled&&"u-cell--disabled","large"===t.size&&"u-cell__label--large"]])},{default:c((()=>[m(y(t.label),1)])),_:1},8,["class"])):p("v-if",!0)]),!0)])),_:3})])),_:3}),d(t.$slots,"value",{},(()=>[t.$u.test.empty(t.value)?p("v-if",!0):(o(),n(C,{key:0,class:u(["u-cell__value",[t.disabled&&"u-cell--disabled","large"===t.size&&"u-cell__value--large"]])},{default:c((()=>[m(y(t.value),1)])),_:1},8,["class"]))]),!0),r($,{class:u(["u-cell__right-icon-wrap",[`u-cell__right-icon-wrap--${t.arrowDirection}`]])},{default:c((()=>[d(t.$slots,"right-icon",{},(()=>[t.isLink?(o(),n(k,{key:0,name:t.rightIcon,"custom-style":t.rightIconStyle,color:t.disabled?"#c8c9cc":"info",size:"large"===t.size?18:16},null,8,["name","custom-style","color","size"])):p("v-if",!0)]),!0)])),_:3},8,["class"])])),_:3},8,["class"]),t.border?(o(),n(B,{key:0})):p("v-if",!0)])),_:3},8,["class","style","hover-class","onClick"])}],["__scopeId","data-v-ce3eecec"]]);const I=$({name:"u-cell-group",mixins:[l,a,{props:{title:{type:String,default:t.cellGroup.title},border:{type:Boolean,default:t.cellGroup.border}}}]},[["render",function(e,t,l,a,h,S){const b=g,k=f,$=i(s("u-line"),v);return o(),n(k,{style:_([e.$u.addStyle(e.customStyle)]),class:u([[e.customClass],"u-cell-group"])},{default:c((()=>[e.title?(o(),n(k,{key:0,class:"u-cell-group__title"},{default:c((()=>[d(e.$slots,"title",{},(()=>[r(b,{class:"u-cell-group__title__text"},{default:c((()=>[m(y(e.title),1)])),_:1})]),!0)])),_:3})):p("v-if",!0),r(k,{class:"u-cell-group__wrapper"},{default:c((()=>[e.border?(o(),n($,{key:0})):p("v-if",!0),d(e.$slots,"default",{},void 0,!0)])),_:3})])),_:3},8,["style","class"])}],["__scopeId","data-v-bfc8927a"]]);const z=$({name:"u-gap",mixins:[l,a,{props:{bgColor:{type:String,default:t.gap.bgColor},height:{type:[String,Number],default:t.gap.height},marginTop:{type:[String,Number],default:t.gap.marginTop},marginBottom:{type:[String,Number],default:t.gap.marginBottom}}}],computed:{gapStyle(){const e={backgroundColor:this.bgColor,height:uni.$u.addUnit(this.height),marginTop:uni.$u.addUnit(this.marginTop),marginBottom:uni.$u.addUnit(this.marginBottom)};return uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))}}},[["render",function(e,t,l,a,i,s){const c=f;return o(),n(c,{class:"u-gap",style:_([s.gapStyle])},null,8,["style"])}],["__scopeId","data-v-148cef11"]]);const O=$({name:"u-action-sheet",mixins:[x,T,a,{props:{show:{type:Boolean,default:t.actionSheet.show},title:{type:String,default:t.actionSheet.title},description:{type:String,default:t.actionSheet.description},actions:{type:Array,default:t.actionSheet.actions},cancelText:{type:String,default:t.actionSheet.cancelText},closeOnClickAction:{type:Boolean,default:t.actionSheet.closeOnClickAction},safeAreaInsetBottom:{type:Boolean,default:t.actionSheet.safeAreaInsetBottom},openType:{type:String,default:t.actionSheet.openType},closeOnClickOverlay:{type:Boolean,default:t.actionSheet.closeOnClickOverlay},round:{type:[Boolean,String,Number],default:t.actionSheet.round}}}],data:()=>({}),computed:{itemStyle(){return e=>{let t={};return this.actions[e].color&&(t.color=this.actions[e].color),this.actions[e].fontSize&&(t.fontSize=uni.$u.addUnit(this.actions[e].fontSize)),this.actions[e].disabled&&(t.color="#c0c4cc"),t}}},methods:{closeHandler(){this.closeOnClickOverlay&&this.$emit("close")},cancel(){this.$emit("close")},selectHandler(e){const t=this.actions[e];!t||t.disabled||t.loading||(this.$emit("select",t),this.closeOnClickAction&&this.$emit("close"))}}},[["render",function(t,l,a,u,$,T){const x=g,w=i(s("u-icon"),e),I=f,O=i(s("u-line"),v),j=i(s("u-loading-icon"),C),A=i(s("u-gap"),z),N=i(s("u-popup"),B);return o(),n(N,{show:t.show,mode:"bottom",onClose:T.closeHandler,safeAreaInsetBottom:t.safeAreaInsetBottom,round:t.round},{default:c((()=>[r(I,{class:"u-action-sheet"},{default:c((()=>[t.title?(o(),n(I,{key:0,class:"u-action-sheet__header"},{default:c((()=>[r(x,{class:"u-action-sheet__header__title u-line-1"},{default:c((()=>[m(y(t.title),1)])),_:1}),r(I,{class:"u-action-sheet__header__icon-wrap",onClick:h(T.cancel,["stop"])},{default:c((()=>[r(w,{name:"close",size:"17",color:"#c8c9cc",bold:""})])),_:1},8,["onClick"])])),_:1})):p("v-if",!0),t.description?(o(),n(x,{key:1,class:"u-action-sheet__description",style:_([{marginTop:`${t.title&&t.description?0:"18px"}`}])},{default:c((()=>[m(y(t.description),1)])),_:1},8,["style"])):p("v-if",!0),d(t.$slots,"default",{},(()=>[t.description?(o(),n(O,{key:0})):p("v-if",!0),r(I,{class:"u-action-sheet__item-wrap"},{default:c((()=>[(o(!0),S(b,null,k(t.actions,((e,l)=>(o(),n(I,{key:l},{default:c((()=>[r(I,{class:"u-action-sheet__item-wrap__item",onClick:h((e=>T.selectHandler(l)),["stop"]),"hover-class":e.disabled||e.loading?"":"u-action-sheet--hover","hover-stay-time":150},{default:c((()=>[e.loading?(o(),n(j,{key:1,"custom-class":"van-action-sheet__loading",size:"18",mode:"circle"})):(o(),S(b,{key:0},[r(x,{class:"u-action-sheet__item-wrap__item__name",style:_([T.itemStyle(l)])},{default:c((()=>[m(y(e.name),1)])),_:2},1032,["style"]),e.subname?(o(),n(x,{key:0,class:"u-action-sheet__item-wrap__item__subname"},{default:c((()=>[m(y(e.subname),1)])),_:2},1024)):p("v-if",!0)],64))])),_:2},1032,["onClick","hover-class"]),l!==t.actions.length-1?(o(),n(O,{key:0})):p("v-if",!0)])),_:2},1024)))),128))])),_:1})]),!0),t.cancelText?(o(),n(A,{key:2,bgColor:"#eaeaec",height:"6"})):p("v-if",!0),r(I,{"hover-class":"u-action-sheet--hover"},{default:c((()=>[t.cancelText?(o(),n(x,{key:0,onTouchmove:l[0]||(l[0]=h((()=>{}),["stop","prevent"])),"hover-stay-time":150,class:"u-action-sheet__cancel-text",onClick:T.cancel},{default:c((()=>[m(y(t.cancelText),1)])),_:1},8,["onClick"])):p("v-if",!0)])),_:1})])),_:3})])),_:3},8,["show","onClose","safeAreaInsetBottom","round"])}],["__scopeId","data-v-37c6ec45"]]);export{w as _,I as a,O as b}; diff --git a/niucloud/public/wap/assets/u-avatar-0d8f8309.css b/niucloud/public/wap/assets/u-avatar-0d8f8309.css new file mode 100644 index 0000000..f75c5d9 --- /dev/null +++ b/niucloud/public/wap/assets/u-avatar-0d8f8309.css @@ -0,0 +1 @@ +uni-view[data-v-a339e5f1],uni-scroll-view[data-v-a339e5f1],uni-swiper-item[data-v-a339e5f1]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-link[data-v-a339e5f1]{line-height:1;display:flex;flex-direction:row;flex-wrap:wrap;flex:1}uni-view[data-v-b9da4249],uni-scroll-view[data-v-b9da4249],uni-swiper-item[data-v-b9da4249]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-text[data-v-b9da4249]{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;flex:1;width:100%}.u-text__price[data-v-b9da4249]{font-size:14px;color:#606266}.u-text__value[data-v-b9da4249]{font-size:14px;display:flex;flex-direction:row;color:#606266;flex-wrap:wrap;text-overflow:ellipsis;align-items:center}.u-text__value--primary[data-v-b9da4249]{color:var(--primary-color)}.u-text__value--warning[data-v-b9da4249]{color:#f9ae3d}.u-text__value--success[data-v-b9da4249]{color:#5ac725}.u-text__value--info[data-v-b9da4249]{color:#909399}.u-text__value--error[data-v-b9da4249]{color:#f56c6c}.u-text__value--main[data-v-b9da4249]{color:#303133}.u-text__value--content[data-v-b9da4249]{color:#606266}.u-text__value--tips[data-v-b9da4249]{color:#909193}.u-text__value--light[data-v-b9da4249]{color:#c0c4cc}uni-view[data-v-03b4cb4d],uni-scroll-view[data-v-03b4cb4d],uni-swiper-item[data-v-03b4cb4d]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-avatar[data-v-03b4cb4d]{display:flex;flex-direction:row;align-items:center;justify-content:center}.u-avatar--circle[data-v-03b4cb4d]{border-radius:100px}.u-avatar--square[data-v-03b4cb4d]{border-radius:4px}.u-avatar__image--circle[data-v-03b4cb4d]{border-radius:100px}.u-avatar__image--square[data-v-03b4cb4d]{border-radius:4px} diff --git a/niucloud/public/wap/assets/u-avatar.85887529.js b/niucloud/public/wap/assets/u-avatar.85887529.js new file mode 100644 index 0000000..92a5efd --- /dev/null +++ b/niucloud/public/wap/assets/u-avatar.85887529.js @@ -0,0 +1 @@ +import{_ as A}from"./u-icon.d4bf195f.js";import{V as e,W as t,X as a,i as n,j as i,w as l,K as o,L as r,J as s,p as u,N as c,aY as d,q as f,t as p,I as m,m as y,k as g,x,aK as h,E as S,T as b,F as v,G as k,M as I}from"./index-c1dbaba4.js";import{_ as N}from"./_plugin-vue_export-helper.1b428a4d.js";const R=N({name:"u-link",mixins:[t,a,{props:{color:{type:String,default:e.link.color},fontSize:{type:[String,Number],default:e.link.fontSize},underLine:{type:Boolean,default:e.link.underLine},href:{type:String,default:e.link.href},mpTips:{type:String,default:e.link.mpTips},lineColor:{type:String,default:e.link.lineColor},text:{type:String,default:e.link.text}}}],computed:{linkStyle(){return{color:this.color,fontSize:uni.$u.addUnit(this.fontSize),lineHeight:uni.$u.addUnit(uni.$u.getPx(this.fontSize)+2),textDecoration:this.underLine?"underline":"none"}}},methods:{openLink(){window.open(this.href),this.$emit("click")}}},[["render",function(A,e,t,a,d,f){const p=c;return n(),i(p,{class:"u-link",onClick:s(f.openLink,["stop"]),style:u([f.linkStyle,A.$u.addStyle(A.customStyle)])},{default:l((()=>[o(r(A.text),1)])),_:1},8,["onClick","style"])}],["__scopeId","data-v-a339e5f1"]]),B={computed:{value(){const{text:A,mode:e,format:t,href:a}=this;return"price"===e?(/^\d+(\.\d+)?$/.test(A)||uni.$u.error("金额模式下,text参数需要为金额格式"),uni.$u.test.func(t)?t(A):uni.$u.priceFormat(A,2)):"date"===e?(!uni.$u.test.date(A)&&uni.$u.error("日期模式下,text参数需要为日期或时间戳格式"),uni.$u.test.func(t)?t(A):t?uni.$u.timeFormat(A,t):uni.$u.timeFormat(A,"yyyy-mm-dd")):"phone"===e?uni.$u.test.func(t)?t(A):"encrypt"===t?`${A.substr(0,3)}****${A.substr(7)}`:A:"name"===e?("string"!=typeof A&&uni.$u.error("姓名模式下,text参数需要为字符串格式"),uni.$u.test.func(t)?t(A):"encrypt"===t?this.formatName(A):A):"link"===e?(!uni.$u.test.url(a)&&uni.$u.error("超链接模式下,href参数需要为URL格式"),A):A}},methods:{formatName(A){let e="";if(2===A.length)e=A.substr(0,1)+"*";else if(A.length>2){let t="";for(let e=0,a=A.length-2;e!1,isMp:()=>!1},data:()=>({}),methods:{clickHandler(){this.call&&"phone"===this.mode&&d({phoneNumber:this.text}),this.$emit("click")}}},[["render",function(e,t,a,s,d,S){const b=c,v=f(p("u-icon"),A),k=x,I=f(p("u-link"),R),N=h;return e.show?(n(),i(k,{key:0,class:m(["u-text",[]]),style:u({margin:e.margin,justifyContent:"left"===e.align?"flex-start":"center"===e.align?"center":"flex-end"}),onClick:S.clickHandler},{default:l((()=>["price"===e.mode?(n(),i(b,{key:0,class:m(["u-text__price",e.type&&`u-text__value--${e.type}`]),style:u([S.valueStyle])},{default:l((()=>[o("¥")])),_:1},8,["class","style"])):y("v-if",!0),e.prefixIcon?(n(),i(k,{key:1,class:"u-text__prefix-icon"},{default:l((()=>[g(v,{name:e.prefixIcon,customStyle:e.$u.addStyle(e.iconStyle)},null,8,["name","customStyle"])])),_:1})):y("v-if",!0),"link"===e.mode?(n(),i(I,{key:2,text:e.value,href:e.href,underLine:""},null,8,["text","href"])):e.openType&&S.isMp?(n(),i(N,{key:3,class:"u-reset-button u-text__value",style:u([S.valueStyle]),"data-index":e.index,openType:e.openType,onGetuserinfo:e.onGetUserInfo,onContact:e.onContact,onGetphonenumber:e.onGetPhoneNumber,onError:e.onError,onLaunchapp:e.onLaunchApp,onOpensetting:e.onOpenSetting,lang:e.lang,"session-from":e.sessionFrom,"send-message-title":e.sendMessageTitle,"send-message-path":e.sendMessagePath,"send-message-img":e.sendMessageImg,"show-message-card":e.showMessageCard,"app-parameter":e.appParameter},{default:l((()=>[o(r(e.value),1)])),_:1},8,["style","data-index","openType","onGetuserinfo","onContact","onGetphonenumber","onError","onLaunchapp","onOpensetting","lang","session-from","send-message-title","send-message-path","send-message-img","show-message-card","app-parameter"])):(n(),i(b,{key:4,class:m(["u-text__value",[e.type&&`u-text__value--${e.type}`,e.lines&&`u-line-${e.lines}`]]),style:u([S.valueStyle])},{default:l((()=>[o(r(e.value),1)])),_:1},8,["style","class"])),e.suffixIcon?(n(),i(k,{key:5,class:"u-text__suffix-icon"},{default:l((()=>[g(v,{name:e.suffixIcon,customStyle:e.$u.addStyle(e.iconStyle)},null,8,["name","customStyle"])])),_:1})):y("v-if",!0)])),_:1},8,["style","onClick"])):y("v-if",!0)}],["__scopeId","data-v-b9da4249"]])}},[["render",function(A,e,t,a,l,o){const r=S("uvText");return n(),i(r,{type:A.type,show:A.show,text:A.text,prefixIcon:A.prefixIcon,suffixIcon:A.suffixIcon,mode:A.mode,href:A.href,format:A.format,call:A.call,openType:A.openType,bold:A.bold,block:A.block,lines:A.lines,color:A.color,decoration:A.decoration,size:A.size,iconStyle:A.iconStyle,margin:A.margin,lineHeight:A.lineHeight,align:A.align,wordWrap:A.wordWrap,customStyle:A.customStyle},null,8,["type","show","text","prefixIcon","suffixIcon","mode","href","format","call","openType","bold","block","lines","color","decoration","size","iconStyle","margin","lineHeight","align","wordWrap","customStyle"])}]]),G={props:{src:{type:String,default:e.avatar.src},shape:{type:String,default:e.avatar.shape},size:{type:[String,Number],default:e.avatar.size},mode:{type:String,default:e.avatar.mode},text:{type:String,default:e.avatar.text},bgColor:{type:String,default:e.avatar.bgColor},color:{type:String,default:e.avatar.color},fontSize:{type:[String,Number],default:e.avatar.fontSize},icon:{type:String,default:e.avatar.icon},mpAvatar:{type:Boolean,default:e.avatar.mpAvatar},randomBgColor:{type:Boolean,default:e.avatar.randomBgColor},defaultUrl:{type:String,default:e.avatar.defaultUrl},colorIndex:{type:[String,Number],validator:A=>uni.$u.test.range(A,[0,19])||""===A,default:e.avatar.colorIndex},name:{type:String,default:e.avatar.name}}};const M=N({name:"u-avatar",mixins:[t,a,G],data(){return{colors:["#ffb34b","#f2bba9","#f7a196","#f18080","#88a867","#bfbf39","#89c152","#94d554","#f19ec2","#afaae4","#e1b0df","#c38cc1","#72dcdc","#9acdcb","#77b1cc","#448aca","#86cefa","#98d1ee","#73d1f1","#80a7dc"],avatarUrl:this.src,allowMp:!1}},watch:{src:{immediate:!0,handler(A){this.avatarUrl=A,A||this.errorHandler()}}},computed:{imageStyle:()=>({})},created(){this.init()},methods:{init(){},isImg(){return-1!==this.src.indexOf("/")},errorHandler(){this.avatarUrl=this.defaultUrl||"data:image/jpg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjREMEQwRkY0RjgwNDExRUE5OTY2RDgxODY3NkJFODMxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjREMEQwRkY1RjgwNDExRUE5OTY2RDgxODY3NkJFODMxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NEQwRDBGRjJGODA0MTFFQTk5NjZEODE4Njc2QkU4MzEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NEQwRDBGRjNGODA0MTFFQTk5NjZEODE4Njc2QkU4MzEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYGCAsMCgoLCgoMEAwMDAwMDBAMDg8QDw4MExMUFBMTHBsbGxwfHx8fHx8fHx8fAQcHBw0MDRgQEBgaFREVGh8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx//wAARCADIAMgDAREAAhEBAxEB/8QAcQABAQEAAwEBAAAAAAAAAAAAAAUEAQMGAgcBAQAAAAAAAAAAAAAAAAAAAAAQAAIBAwICBgkDBQAAAAAAAAABAhEDBCEFMVFBYXGREiKBscHRMkJSEyOh4XLxYjNDFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8A/fAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHbHFyZ/Dam+yLA+Z2L0Pjtyj2poD4AAAAAAAAAAAAAAAAAAAAAAAAKWFs9y6lcvvwQeqj8z9wFaziY1n/HbUX9XF97A7QAGXI23EvJ1goyfzR0YEfN269jeZ+a03pNe0DIAAAAAAAAAAAAAAAAAAAACvtO3RcVkXlWutuL9YFYAAAAAOJRjKLjJVi9GmB5/csH/mu1h/in8PU+QGMAAAAAAAAAAAAAAAAAAaMDG/6MmMH8C80+xAelSSVFolwQAAAAAAAHVlWI37ErUulaPk+hgeYnCUJuElSUXRrrQHAAAAAAAAAAAAAAAAABa2Oz4bM7r4zdF2ICmAAAAAAAAAg7zZ8GX41wuJP0rRgYAAAAAAAAAAAAAAAAAD0m2R8ODaXU33tsDSAAAAAAAAAlb9HyWZcnJd9PcBHAAAAAAAAAAAAAAAAAPS7e64Vn+KA0AAAAAAAAAJm+v8Ftf3ewCKAAAAAAAAAAAAAAAAAX9muqeGo9NttP06+0DcAAAAAAAAAjb7dTu2ra+VOT9P8AQCWAAAAAAAAAAAAAAAAAUNmyPt5Ltv4bui/kuAF0AAAAAAADiUlGLlJ0SVW+oDzOXfd/Ind6JPRdS0QHSAAAAAAAAAAAAAAAAAE2nVaNcGB6Lbs6OTao9LsF51z60BrAAAAAABJ3jOVHjW3r/sa9QEgAAAAAAAAAAAAAAAAAAAPu1duWriuW34ZR4MC9hbnZyEoy8l36XwfYBsAAADaSq9EuLAlZ+7xSdrGdW9Hc5dgEdtt1erfFgAAAAAAAAAAAAAAAAADVjbblX6NR8MH80tEBRs7HYivyzlN8lovaBPzduvY0m6eK10TXtAyAarO55lpJK54orolr+4GqO/Xaea1FvqbXvA+Z77kNeW3GPbV+4DJfzcm/pcm3H6Vou5AdAFLC2ed2Pjv1txa8sV8T6wOL+yZEKu1JXFy4MDBOE4ScZxcZLinoB8gAAAAAAAAAAAB242LeyJ+C3GvN9C7QLmJtePYpKS+5c+p8F2IDYAANJqj1T4oCfk7Nj3G5Wn9qXJax7gJ93Z82D8sVNc4v30A6Xg5i42Z+iLfqARwcyT0sz9MWvWBps7LlTf5Grce9/oBTxdtxseklHxT+uWr9AGoAB138ezfj4bsFJdD6V2MCPm7RdtJzs1uW1xXzL3gTgAAAAAAAAADRhYc8q74I6RWs5ckB6GxYtWLat21SK731sDsAAAAAAAAAAAAAAAASt021NO/YjrxuQXT1oCOAAAAAAABzGLlJRSq26JAelwsWONYjbXxcZvmwO8AAAAAAAAAAAAAAAAAAef3TEWPkVivx3NY9T6UBiAAAAAABo2+VmGXblddIJ8eivRUD0oAAAAAAAAAAAAAAAAAAAYt4tKeFKVNYNSXfRgefAAAAAAAAr7VuSSWPedKaW5v1MCsAAAAAAAAAAAAAAAAAAIe6bj96Ts2n+JPzSXzP3ATgAAAAAAAAFbbt1UUrOQ9FpC4/UwK6aaqtU+DAAAAAAAAAAAAAAA4lKMIuUmoxWrb4ARNx3R3q2rLpa4Sl0y/YCcAAAAAAAAAAANmFud7G8r89r6X0dgFvGzLGRGtuWvTF6NAdwAAAAAAAAAAAy5W442PVN+K59EePp5ARMvOv5MvO6QXCC4AZwAAAAAAAAAAAAAcxlKLUotprg1owN+PvORborq+7Hnwl3gUbO74VzRydt8pKn68ANcJwmqwkpLmnUDkAAAAfNy9atqtyagut0AxXt5xIV8Fbj6lRd7Am5G65V6qUvtwfyx94GMAAAAAAAAAAAAAAAAAAAOU2nVOj5gdsc3LiqRvTpyqwOxbnnrhdfpSfrQB7pnv/AGvuS9gHXPMy5/Fem1yq0v0A6W29XqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf//Z"},clickHandler(){this.$emit("click",this.name)}}},[["render",function(e,t,a,o,r,s){const c=f(p("u-icon"),A),d=f(p("u--text"),w),y=I,g=x;return n(),i(g,{class:m(["u-avatar",[`u-avatar--${e.shape}`]]),style:u([{backgroundColor:e.text||e.icon?e.randomBgColor?r.colors[""!==e.colorIndex?e.colorIndex:e.$u.random(0,19)]:e.bgColor:"transparent",width:e.$u.addUnit(e.size),height:e.$u.addUnit(e.size)},e.$u.addStyle(e.customStyle)]),onClick:s.clickHandler},{default:l((()=>[b(e.$slots,"default",{},(()=>[e.mpAvatar&&r.allowMp?(n(),v(k,{key:0},[],64)):e.icon?(n(),i(c,{key:1,name:e.icon,size:e.fontSize,color:e.color},null,8,["name","size","color"])):e.text?(n(),i(d,{key:2,text:e.text,size:e.fontSize,color:e.color,align:"center",customStyle:"justify-content: center"},null,8,["text","size","color"])):(n(),i(y,{key:3,class:m(["u-avatar__image",[`u-avatar__image--${e.shape}`]]),src:r.avatarUrl||e.defaultUrl,mode:e.mode,onError:s.errorHandler,style:u([{width:e.$u.addUnit(e.size),height:e.$u.addUnit(e.size)}])},null,8,["class","src","mode","onError","style"]))]),!0)])),_:3},8,["class","style","onClick"])}],["__scopeId","data-v-03b4cb4d"]]);export{M as _}; diff --git a/niucloud/public/wap/assets/u-button-4e9253f5.css b/niucloud/public/wap/assets/u-button-4e9253f5.css new file mode 100644 index 0000000..0add0cf --- /dev/null +++ b/niucloud/public/wap/assets/u-button-4e9253f5.css @@ -0,0 +1 @@ +uni-view[data-v-6b0695bb],uni-scroll-view[data-v-6b0695bb],uni-swiper-item[data-v-6b0695bb]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-button[data-v-6b0695bb]{width:100%}.u-button__text[data-v-6b0695bb]{white-space:nowrap;line-height:1}.u-button[data-v-6b0695bb]:before{position:absolute;top:50%;left:50%;width:100%;height:100%;border:inherit;border-radius:inherit;transform:translate(-50%,-50%);opacity:0;content:" ";background-color:#000;border-color:#000}.u-button--active[data-v-6b0695bb]:before{opacity:.15}.u-button__icon+.u-button__text[data-v-6b0695bb]:not(:empty),.u-button__loading-text[data-v-6b0695bb]{margin-left:4px}.u-button--plain.u-button--primary[data-v-6b0695bb]{color:var(--primary-color)}.u-button--plain.u-button--info[data-v-6b0695bb]{color:#909399}.u-button--plain.u-button--success[data-v-6b0695bb]{color:#5ac725}.u-button--plain.u-button--error[data-v-6b0695bb],.u-button--plain.u-button--warning[data-v-6b0695bb]{color:#f56c6c}.u-button[data-v-6b0695bb]{height:40px;position:relative;align-items:center;justify-content:center;display:flex;box-sizing:border-box;flex-direction:row}.u-button__text[data-v-6b0695bb]{font-size:15px}.u-button__loading-text[data-v-6b0695bb]{font-size:15px;margin-left:4px}.u-button--large[data-v-6b0695bb]{width:100%;height:50px;padding:0 15px}.u-button--normal[data-v-6b0695bb]{padding:0 12px;font-size:14px}.u-button--small[data-v-6b0695bb]{min-width:60px;height:30px;padding:0 8px;font-size:12px}.u-button--mini[data-v-6b0695bb]{height:22px;font-size:10px;min-width:50px;padding:0 8px}.u-button--disabled[data-v-6b0695bb]{opacity:.5}.u-button--info[data-v-6b0695bb]{color:#323233;background-color:#fff;border-color:#ebedf0;border-width:1px;border-style:solid}.u-button--success[data-v-6b0695bb]{color:#fff;background-color:#5ac725;border-color:#5ac725;border-width:1px;border-style:solid}.u-button--primary[data-v-6b0695bb]{color:#fff;background-color:var(--primary-color);border-color:var(--primary-color);border-width:1px;border-style:solid}.u-button--error[data-v-6b0695bb]{color:#fff;background-color:#f56c6c;border-color:#f56c6c;border-width:1px;border-style:solid}.u-button--warning[data-v-6b0695bb]{color:#fff;background-color:#f9ae3d;border-color:#f9ae3d;border-width:1px;border-style:solid}.u-button--block[data-v-6b0695bb]{display:flex;flex-direction:row;width:100%}.u-button--circle[data-v-6b0695bb]{border-radius:100px}.u-button--square[data-v-6b0695bb]{border-radius:3px}.u-button__icon[data-v-6b0695bb]{min-width:1em;line-height:inherit!important;vertical-align:top}.u-button--plain[data-v-6b0695bb]{background-color:#fff}.u-button--hairline[data-v-6b0695bb]{border-width:.5px!important} diff --git a/niucloud/public/wap/assets/u-button.78b6f378.js b/niucloud/public/wap/assets/u-button.78b6f378.js new file mode 100644 index 0000000..9fe9b55 --- /dev/null +++ b/niucloud/public/wap/assets/u-button.78b6f378.js @@ -0,0 +1 @@ +import{_ as e}from"./u-loading-icon.4b2cb429.js";import{V as t,W as o,X as n,q as a,t as i,i as s,j as r,w as l,F as p,G as u,k as d,p as g,K as h,L as m,m as c,T as b,I as f,N as y,aK as S}from"./index-c1dbaba4.js";import{_ as x}from"./u-icon.d4bf195f.js";import{_ as T}from"./_plugin-vue_export-helper.1b428a4d.js";const v=T({name:"u-button",mixins:[o,n,{props:{hairline:{type:Boolean,default:t.button.hairline},type:{type:String,default:t.button.type},size:{type:String,default:t.button.size},shape:{type:String,default:t.button.shape},plain:{type:Boolean,default:t.button.plain},disabled:{type:Boolean,default:t.button.disabled},loading:{type:Boolean,default:t.button.loading},loadingText:{type:[String,Number],default:t.button.loadingText},loadingMode:{type:String,default:t.button.loadingMode},loadingSize:{type:[String,Number],default:t.button.loadingSize},openType:{type:String,default:t.button.openType},formType:{type:String,default:t.button.formType},appParameter:{type:String,default:t.button.appParameter},hoverStopPropagation:{type:Boolean,default:t.button.hoverStopPropagation},lang:{type:String,default:t.button.lang},sessionFrom:{type:String,default:t.button.sessionFrom},sendMessageTitle:{type:String,default:t.button.sendMessageTitle},sendMessagePath:{type:String,default:t.button.sendMessagePath},sendMessageImg:{type:String,default:t.button.sendMessageImg},showMessageCard:{type:Boolean,default:t.button.showMessageCard},dataName:{type:String,default:t.button.dataName},throttleTime:{type:[String,Number],default:t.button.throttleTime},hoverStartTime:{type:[String,Number],default:t.button.hoverStartTime},hoverStayTime:{type:[String,Number],default:t.button.hoverStayTime},text:{type:[String,Number],default:t.button.text},icon:{type:String,default:t.button.icon},iconColor:{type:String,default:t.button.icon},color:{type:String,default:t.button.color}}}],data:()=>({}),computed:{bemClass(){return this.color?this.bem("button",["shape","size"],["disabled","plain","hairline"]):this.bem("button",["type","shape","size"],["disabled","plain","hairline"])},loadingColor(){return this.plain?this.color?this.color:uni.$u.config.color[`u-${this.type}`]:"info"===this.type?"#c9c9c9":"rgb(200, 200, 200)"},iconColorCom(){return this.iconColor?this.iconColor:this.plain?this.color?this.color:this.type:"info"===this.type?"#000000":"#ffffff"},baseColor(){let e={};return this.color&&(e.color=this.plain?this.color:"white",this.plain||(e["background-color"]=this.color),-1!==this.color.indexOf("gradient")?(e.borderTopWidth=0,e.borderRightWidth=0,e.borderBottomWidth=0,e.borderLeftWidth=0,this.plain||(e.backgroundImage=this.color)):(e.borderColor=this.color,e.borderWidth="1px",e.borderStyle="solid")),e},nvueTextStyle(){let e={};return"info"===this.type&&(e.color="#323233"),this.color&&(e.color=this.plain?this.color:"white"),e.fontSize=this.textSize+"px",e},textSize(){let e=14,{size:t}=this;return"large"===t&&(e=16),"normal"===t&&(e=14),"small"===t&&(e=12),"mini"===t&&(e=10),e}},emits:["click","getphonenumber","getuserinfo","error","opensetting","launchapp"],methods:{clickHandler(){this.disabled||this.loading||uni.$u.throttle((()=>{this.$emit("click")}),this.throttleTime)},getphonenumber(e){this.$emit("getphonenumber",e)},getuserinfo(e){this.$emit("getuserinfo",e)},error(e){this.$emit("error",e)},opensetting(e){this.$emit("opensetting",e)},launchapp(e){this.$emit("launchapp",e)}}},[["render",function(t,o,n,T,v,z){const C=a(i("u-loading-icon"),e),_=y,M=a(i("u-icon"),x),k=S;return s(),r(k,{"hover-start-time":Number(t.hoverStartTime),"hover-stay-time":Number(t.hoverStayTime),"form-type":t.formType,"open-type":t.openType,"app-parameter":t.appParameter,"hover-stop-propagation":t.hoverStopPropagation,"send-message-title":t.sendMessageTitle,"send-message-path":t.sendMessagePath,lang:t.lang,"data-name":t.dataName,"session-from":t.sessionFrom,"send-message-img":t.sendMessageImg,"show-message-card":t.showMessageCard,onGetphonenumber:z.getphonenumber,onGetuserinfo:z.getuserinfo,onError:z.error,onOpensetting:z.opensetting,onLaunchapp:z.launchapp,"hover-class":t.disabled||t.loading?"":"u-button--active",class:f(["u-button u-reset-button",z.bemClass]),style:g([z.baseColor,t.$u.addStyle(t.customStyle)]),onClick:z.clickHandler},{default:l((()=>[t.loading?(s(),p(u,{key:0},[d(C,{mode:t.loadingMode,size:1.15*t.loadingSize,color:z.loadingColor},null,8,["mode","size","color"]),d(_,{class:"u-button__loading-text",style:g([{fontSize:z.textSize+"px"}])},{default:l((()=>[h(m(t.loadingText||t.text),1)])),_:1},8,["style"])],64)):(s(),p(u,{key:1},[t.icon?(s(),r(M,{key:0,name:t.icon,color:z.iconColorCom,size:1.35*z.textSize,customStyle:{marginRight:"2px"}},null,8,["name","color","size"])):c("v-if",!0),b(t.$slots,"default",{},(()=>[d(_,{class:"u-button__text",style:g([{fontSize:z.textSize+"px"}])},{default:l((()=>[h(m(t.text),1)])),_:1},8,["style"])]),!0)],64))])),_:3},8,["hover-start-time","hover-stay-time","form-type","open-type","app-parameter","hover-stop-propagation","send-message-title","send-message-path","lang","data-name","session-from","send-message-img","show-message-card","onGetphonenumber","onGetuserinfo","onError","onOpensetting","onLaunchapp","hover-class","style","onClick","class"])}],["__scopeId","data-v-6b0695bb"]]);export{v as _}; diff --git a/niucloud/public/wap/assets/u-empty-5067ac67.css b/niucloud/public/wap/assets/u-empty-5067ac67.css new file mode 100644 index 0000000..85d406c --- /dev/null +++ b/niucloud/public/wap/assets/u-empty-5067ac67.css @@ -0,0 +1 @@ +uni-view[data-v-bdfabab8],uni-scroll-view[data-v-bdfabab8],uni-swiper-item[data-v-bdfabab8]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-empty[data-v-bdfabab8]{display:flex;flex-direction:row;flex-direction:column;justify-content:center;align-items:center}.u-empty__text[data-v-bdfabab8],.u-slot-wrap[data-v-bdfabab8]{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-top:.625rem} diff --git a/niucloud/public/wap/assets/u-empty.c3b684cc.js b/niucloud/public/wap/assets/u-empty.c3b684cc.js new file mode 100644 index 0000000..c60c7c7 --- /dev/null +++ b/niucloud/public/wap/assets/u-empty.c3b684cc.js @@ -0,0 +1 @@ +import{_ as t}from"./u-icon.d4bf195f.js";import{V as e,W as i,X as o,q as s,t as a,i as n,j as r,w as d,p as l,k as m,K as p,L as u,T as y,m as c,M as f,N as h,x as S}from"./index-c1dbaba4.js";import{_ as g}from"./_plugin-vue_export-helper.1b428a4d.js";const x=g({name:"u-empty",mixins:[i,o,{props:{icon:{type:String,default:e.empty.icon},text:{type:String,default:e.empty.text},textColor:{type:String,default:e.empty.textColor},textSize:{type:[String,Number],default:e.empty.textSize},iconColor:{type:String,default:e.empty.iconColor},iconSize:{type:[String,Number],default:e.empty.iconSize},mode:{type:String,default:e.empty.mode},width:{type:[String,Number],default:e.empty.width},height:{type:[String,Number],default:e.empty.height},show:{type:Boolean,default:e.empty.show},marginTop:{type:[String,Number],default:e.empty.marginTop}}}],data:()=>({icons:{car:"购物车为空",page:"页面不存在",search:"没有搜索结果",address:"没有收货地址",wifi:"没有WiFi",order:"订单为空",coupon:"没有优惠券",favor:"暂无收藏",permission:"无权限",history:"无历史记录",news:"无新闻列表",message:"消息列表为空",list:"列表为空",data:"数据为空",comment:"暂无评论"}}),computed:{emptyStyle(){const t={};return t.marginTop=uni.$u.addUnit(this.marginTop),uni.$u.deepMerge(uni.$u.addStyle(this.customStyle),t)},textStyle(){const t={};return t.color=this.textColor,t.fontSize=uni.$u.addUnit(this.textSize),t},isSrc(){return this.icon.indexOf("/")>=0}}},[["render",function(e,i,o,g,x,_){const w=s(a("u-icon"),t),$=f,z=h,b=S;return e.show?(n(),r(b,{key:0,class:"u-empty",style:l([_.emptyStyle])},{default:d((()=>[_.isSrc?(n(),r($,{key:1,style:l({width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)}),src:e.icon,mode:"widthFix"},null,8,["style","src"])):(n(),r(w,{key:0,name:"message"===e.mode?"chat":`empty-${e.mode}`,size:e.iconSize,color:e.iconColor,"margin-top":"14"},null,8,["name","size","color"])),m(z,{class:"u-empty__text",style:l([_.textStyle])},{default:d((()=>[p(u(e.text?e.text:x.icons[e.mode]),1)])),_:1},8,["style"]),e.$slots.default||e.$slots.$default?(n(),r(b,{key:2,class:"u-empty__wrap"},{default:d((()=>[y(e.$slots,"default",{},void 0,!0)])),_:3})):c("v-if",!0)])),_:3},8,["style"])):c("v-if",!0)}],["__scopeId","data-v-bdfabab8"]]);export{x as _}; diff --git a/niucloud/public/wap/assets/u-form-c93addfb.css b/niucloud/public/wap/assets/u-form-c93addfb.css new file mode 100644 index 0000000..669424e --- /dev/null +++ b/niucloud/public/wap/assets/u-form-c93addfb.css @@ -0,0 +1 @@ +uni-view[data-v-a180cd81],uni-scroll-view[data-v-a180cd81],uni-swiper-item[data-v-a180cd81]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-form-item[data-v-a180cd81]{display:flex;flex-direction:column;font-size:14px;color:#303133}.u-form-item__body[data-v-a180cd81]{display:flex;flex-direction:row;padding:10px 0}.u-form-item__body__left[data-v-a180cd81]{display:flex;flex-direction:row;align-items:center}.u-form-item__body__left__content[data-v-a180cd81]{position:relative;display:flex;flex-direction:row;align-items:center;padding-right:.3125rem;flex:1}.u-form-item__body__left__content__icon[data-v-a180cd81]{margin-right:.25rem}.u-form-item__body__left__content__required[data-v-a180cd81]{position:absolute;left:-9px;color:#f56c6c;line-height:20px;font-size:20px;top:3px}.u-form-item__body__left__content__label[data-v-a180cd81]{display:flex;flex-direction:row;align-items:center;flex:1;color:#303133;font-size:15px}.u-form-item__body__right[data-v-a180cd81]{flex:1}.u-form-item__body__right__content[data-v-a180cd81]{display:flex;flex-direction:row;align-items:center;flex:1}.u-form-item__body__right__content__slot[data-v-a180cd81]{flex:1;display:flex;flex-direction:row;align-items:center}.u-form-item__body__right__content__icon[data-v-a180cd81]{margin-left:.3125rem;color:#c0c4cc;font-size:.9375rem}.u-form-item__body__right__message[data-v-a180cd81]{font-size:12px;line-height:12px;color:#f56c6c} diff --git a/niucloud/public/wap/assets/u-form.612a076f.js b/niucloud/public/wap/assets/u-form.612a076f.js new file mode 100644 index 0000000..fd41923 --- /dev/null +++ b/niucloud/public/wap/assets/u-form.612a076f.js @@ -0,0 +1 @@ +import{V as e,W as t,X as r,q as n,t as i,i as s,j as a,w as o,k as l,p as u,m as f,T as d,K as c,L as p,N as m,x as y}from"./index-c1dbaba4.js";import{_ as h}from"./u-icon.d4bf195f.js";import{_ as g}from"./u-line.980a961a.js";import{_ as b}from"./_plugin-vue_export-helper.1b428a4d.js";const _=b({name:"u-form-item",mixins:[t,r,{props:{label:{type:String,default:e.formItem.label},prop:{type:String,default:e.formItem.prop},borderBottom:{type:[String,Boolean],default:e.formItem.borderBottom},labelWidth:{type:[String,Number],default:e.formItem.labelWidth},rightIcon:{type:String,default:e.formItem.rightIcon},leftIcon:{type:String,default:e.formItem.leftIcon},required:{type:Boolean,default:e.formItem.required},leftIconStyle:{type:[String,Object],default:e.formItem.leftIconStyle}}}],data:()=>({message:"",parentData:{labelPosition:"left",labelAlign:"left",labelStyle:{},labelWidth:45,errorType:"message"}}),computed:{propsLine:()=>uni.$u.props.line},mounted(){this.init()},methods:{init(){this.updateParentData(),this.parent||uni.$u.error("u-form-item需要结合u-form组件使用")},updateParentData(){this.getParentData("u-form")},clearValidate(){this.message=null},resetField(){const e=uni.$u.getProperty(this.parent.originalModel,this.prop);uni.$u.setProperty(this.parent.model,this.prop,e),this.message=null},clickHandler(){this.$emit("click")}}},[["render",function(e,t,r,b,_,q){const v=m,w=n(i("u-icon"),h),x=y,P=n(i("u-line"),g);return s(),a(x,{class:"u-form-item"},{default:o((()=>[l(x,{class:"u-form-item__body",onClick:q.clickHandler,style:u([e.$u.addStyle(e.customStyle),{flexDirection:"left"===_.parentData.labelPosition?"row":"column"}])},{default:o((()=>[f(' 微信小程序中,将一个参数设置空字符串,结果会变成字符串"true" '),d(e.$slots,"label",{},(()=>[f(" {{required}} "),e.required||e.leftIcon||e.label?(s(),a(x,{key:0,class:"u-form-item__body__left",style:u({width:e.$u.addUnit(e.labelWidth||_.parentData.labelWidth),marginBottom:"left"===_.parentData.labelPosition?0:"5px"})},{default:o((()=>[f(" 为了块对齐 "),l(x,{class:"u-form-item__body__left__content"},{default:o((()=>[f(" nvue不支持伪元素before "),e.required?(s(),a(v,{key:0,class:"u-form-item__body__left__content__required"},{default:o((()=>[c("*")])),_:1})):f("v-if",!0),e.leftIcon?(s(),a(x,{key:1,class:"u-form-item__body__left__content__icon"},{default:o((()=>[l(w,{name:e.leftIcon,"custom-style":e.leftIconStyle},null,8,["name","custom-style"])])),_:1})):f("v-if",!0),l(v,{class:"u-form-item__body__left__content__label",style:u([_.parentData.labelStyle,{justifyContent:"left"===_.parentData.labelAlign?"flex-start":"center"===_.parentData.labelAlign?"center":"flex-end"}])},{default:o((()=>[c(p(e.label),1)])),_:1},8,["style"])])),_:1})])),_:1},8,["style"])):f("v-if",!0)]),!0),l(x,{class:"u-form-item__body__right"},{default:o((()=>[l(x,{class:"u-form-item__body__right__content"},{default:o((()=>[l(x,{class:"u-form-item__body__right__content__slot"},{default:o((()=>[d(e.$slots,"default",{},void 0,!0)])),_:3}),e.$slots.right?(s(),a(x,{key:0,class:"item__body__right__content__icon"},{default:o((()=>[d(e.$slots,"right",{},void 0,!0)])),_:3})):f("v-if",!0)])),_:3})])),_:3})])),_:3},8,["onClick","style"]),d(e.$slots,"error",{},(()=>[_.message&&"message"===_.parentData.errorType?(s(),a(v,{key:0,class:"u-form-item__body__right__message",style:u({marginLeft:e.$u.addUnit("top"===_.parentData.labelPosition?0:e.labelWidth||_.parentData.labelWidth)})},{default:o((()=>[c(p(_.message),1)])),_:1},8,["style"])):f("v-if",!0)]),!0),e.borderBottom?(s(),a(P,{key:0,color:_.message&&"border-bottom"===_.parentData.errorType?e.$u.color.error:q.propsLine.color,customStyle:`margin-top: ${_.message&&"message"===_.parentData.errorType?"5px":0}`},null,8,["color","customStyle"])):f("v-if",!0)])),_:3})}],["__scopeId","data-v-a180cd81"]]),q={props:{model:{type:Object,default:e.form.model},rules:{type:[Object,Function,Array],default:e.form.rules},errorType:{type:String,default:e.form.errorType},borderBottom:{type:Boolean,default:e.form.borderBottom},labelPosition:{type:String,default:e.form.labelPosition},labelWidth:{type:[String,Number],default:e.form.labelWidth},labelAlign:{type:String,default:e.form.labelAlign},labelStyle:{type:Object,default:e.form.labelStyle}}},v=/%[sdj%]/g;let w=function(){};function x(e){if(!e||!e.length)return null;const t={};return e.forEach((e=>{const{field:r}=e;t[r]=t[r]||[],t[r].push(e)})),t}function P(){for(var e=arguments.length,t=new Array(e),r=0;r{if("%%"===e)return"%";if(n>=s)return e;switch(e){case"%s":return String(t[n++]);case"%d":return Number(t[n++]);case"%j":try{return JSON.stringify(t[n++])}catch(r){return"[Circular]"}break;default:return e}}));for(let r=t[n];n{const s=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push.apply(t,e[r])})),t}(e);$(s,r,(function(e){return n(e),e.length?i({errors:e,fields:x(e)}):t()}))}));return t.catch((e=>e)),t}let i=t.firstFields||[];!0===i&&(i=Object.keys(e));const s=Object.keys(e),a=s.length;let o=0;const l=[],u=new Promise(((t,u)=>{const f=function(e){if(l.push.apply(l,e),o++,o===a)return n(l),l.length?u({errors:l,fields:x(l)}):t()};s.length||(n(l),t()),s.forEach((t=>{const n=e[t];-1!==i.indexOf(t)?$(n,r,f):function(e,t,r){const n=[];let i=0;const s=e.length;function a(e){n.push.apply(n,e),i++,i===s&&r(n)}e.forEach((e=>{t(e,a)}))}(n,r,f)}))}));return u.catch((e=>e)),u}function F(e){return function(t){return t&&t.message?(t.field=t.field||e.fullField,t):{message:"function"==typeof t?t():t,field:t.field||e.fullField}}}function A(e,t){if(t)for(const r in t)if(t.hasOwnProperty(r)){const n=t[r];"object"==typeof n&&"object"==typeof e[r]?e[r]={...e[r],...n}:e[r]=n}return e}function S(e,t,r,n,i,s){!e.required||r.hasOwnProperty(e.field)&&!O(t,s||e.type)||n.push(P(i.messages.required,e.fullField))}"undefined"!=typeof process&&process.env;const k={email:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,url:new RegExp("^(?!mailto:)(?:(?:http|https|ftp)://|//)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[0-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))|localhost)(?::\\d{2,5})?(?:(/|\\?|#)[^\\s]*)?$","i"),hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i};var D={integer:function(e){return/^(-)?\d+$/.test(e)},float:function(e){return/^(-)?\d+(\.\d+)?$/.test(e)},array:function(e){return Array.isArray(e)},regexp:function(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(t){return!1}},date:function(e){return"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear},number:function(e){return!isNaN(e)&&"number"==typeof+e},object:function(e){return"object"==typeof e&&!D.array(e)},method:function(e){return"function"==typeof e},email:function(e){return"string"==typeof e&&!!e.match(k.email)&&e.length<255},url:function(e){return"string"==typeof e&&!!e.match(k.url)},hex:function(e){return"string"==typeof e&&!!e.match(k.hex)}};const I="enum";const E={required:S,whitespace:function(e,t,r,n,i){(/^\s+$/.test(t)||""===t)&&n.push(P(i.messages.whitespace,e.fullField))},type:function(e,t,r,n,i){if(e.required&&void 0===t)return void S(e,t,r,n,i);const s=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(s)>-1?D[s](t)||n.push(P(i.messages.types[s],e.fullField,e.type)):s&&typeof t!==e.type&&n.push(P(i.messages.types[s],e.fullField,e.type))},range:function(e,t,r,n,i){const s="number"==typeof e.len,a="number"==typeof e.min,o="number"==typeof e.max,l=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;let u=t,f=null;const d="number"==typeof t,c="string"==typeof t,p=Array.isArray(t);if(d?f="number":c?f="string":p&&(f="array"),!f)return!1;p&&(u=t.length),c&&(u=t.replace(l,"_").length),s?u!==e.len&&n.push(P(i.messages[f].len,e.fullField,e.len)):a&&!o&&ue.max?n.push(P(i.messages[f].max,e.fullField,e.max)):a&&o&&(ue.max)&&n.push(P(i.messages[f].range,e.fullField,e.min,e.max))},enum:function(e,t,r,n,i){e[I]=Array.isArray(e[I])?e[I]:[],-1===e[I].indexOf(t)&&n.push(P(i.messages[I],e.fullField,e[I].join(", ")))},pattern:function(e,t,r,n,i){if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(P(i.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(P(i.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};function T(e,t,r,n,i){const s=e.type,a=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t,s)&&!e.required)return r();E.required(e,t,n,a,i,s),O(t,s)||E.type(e,t,n,a,i)}r(a)}const R={string:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t,"string")&&!e.required)return r();E.required(e,t,n,s,i,"string"),O(t,"string")||(E.type(e,t,n,s,i),E.range(e,t,n,s,i),E.pattern(e,t,n,s,i),!0===e.whitespace&&E.whitespace(e,t,n,s,i))}r(s)},method:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&E.type(e,t,n,s,i)}r(s)},number:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&(E.type(e,t,n,s,i),E.range(e,t,n,s,i))}r(s)},boolean:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&E.type(e,t,n,s,i)}r(s)},regexp:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),O(t)||E.type(e,t,n,s,i)}r(s)},integer:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&(E.type(e,t,n,s,i),E.range(e,t,n,s,i))}r(s)},float:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&(E.type(e,t,n,s,i),E.range(e,t,n,s,i))}r(s)},array:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t,"array")&&!e.required)return r();E.required(e,t,n,s,i,"array"),O(t,"array")||(E.type(e,t,n,s,i),E.range(e,t,n,s,i))}r(s)},object:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&E.type(e,t,n,s,i)}r(s)},enum:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i),void 0!==t&&E.enum(e,t,n,s,i)}r(s)},pattern:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t,"string")&&!e.required)return r();E.required(e,t,n,s,i),O(t,"string")||E.pattern(e,t,n,s,i)}r(s)},date:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();if(E.required(e,t,n,s,i),!O(t)){let r;r="number"==typeof t?new Date(t):t,E.type(e,r,n,s,i),r&&E.range(e,r.getTime(),n,s,i)}}r(s)},url:T,hex:T,email:T,required:function(e,t,r,n,i){const s=[],a=Array.isArray(t)?"array":typeof t;E.required(e,t,n,s,i,a),r(s)},any:function(e,t,r,n,i){const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(O(t)&&!e.required)return r();E.required(e,t,n,s,i)}r(s)}};function W(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){const e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}const B=W();function C(e){this.rules=null,this._messages=B,this.define(e)}C.prototype={messages:function(e){return e&&(this._messages=A(W(),e)),this._messages},define:function(e){if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");let t,r;for(t in this.rules={},e)e.hasOwnProperty(t)&&(r=e[t],this.rules[t]=Array.isArray(r)?r:[r])},validate:function(e,t,r){const n=this;void 0===t&&(t={}),void 0===r&&(r=function(){});let i,s,a=e,o=t,l=r;if("function"==typeof o&&(l=o,o={}),!this.rules||0===Object.keys(this.rules).length)return l&&l(),Promise.resolve();if(o.messages){let e=this.messages();e===B&&(e=W()),A(e,o.messages),o.messages=e}else o.messages=this.messages();const u={};(o.keys||Object.keys(this.rules)).forEach((t=>{i=n.rules[t],s=a[t],i.forEach((r=>{let i=r;"function"==typeof i.transform&&(a===e&&(a={...a}),s=a[t]=i.transform(s)),i="function"==typeof i?{validator:i}:{...i},i.validator=n.getValidationMethod(i),i.field=t,i.fullField=i.fullField||t,i.type=n.getType(i),i.validator&&(u[t]=u[t]||[],u[t].push({rule:i,value:s,source:a,field:t}))}))}));const f={};return j(u,o,((e,t)=>{const{rule:r}=e;let n,i=!("object"!==r.type&&"array"!==r.type||"object"!=typeof r.fields&&"object"!=typeof r.defaultField);function s(e,t){return{...t,fullField:`${r.fullField}.${e}`}}function a(n){void 0===n&&(n=[]);let a=n;if(Array.isArray(a)||(a=[a]),!o.suppressWarning&&a.length&&C.warning("async-validator:",a),a.length&&r.message&&(a=[].concat(r.message)),a=a.map(F(r)),o.first&&a.length)return f[r.field]=1,t(a);if(i){if(r.required&&!e.value)return a=r.message?[].concat(r.message).map(F(r)):o.error?[o.error(r,P(o.messages.required,r.field))]:[],t(a);let n={};if(r.defaultField)for(const t in e.value)e.value.hasOwnProperty(t)&&(n[t]=r.defaultField);n={...n,...e.rule.fields};for(const e in n)if(n.hasOwnProperty(e)){const t=Array.isArray(n[e])?n[e]:[n[e]];n[e]=t.map(s.bind(null,e))}const i=new C(n);i.messages(o.messages),e.rule.options&&(e.rule.options.messages=o.messages,e.rule.options.error=o.error),i.validate(e.value,e.rule.options||o,(e=>{const r=[];a&&a.length&&r.push.apply(r,a),e&&e.length&&r.push.apply(r,e),t(r.length?r:null)}))}else t(a)}i=i&&(r.required||!r.required&&e.value),r.field=e.field,r.asyncValidator?n=r.asyncValidator(r,e.value,a,e.source,o):r.validator&&(n=r.validator(r,e.value,a,e.source,o),!0===n?a():!1===n?a(r.message||`${r.field} fails`):n instanceof Array?a(n):n instanceof Error&&a(n.message)),n&&n.then&&n.then((()=>a()),(e=>a(e)))}),(e=>{!function(e){let t,r=[],n={};function i(e){if(Array.isArray(e)){let t;r=(t=r).concat.apply(t,e)}else r.push(e)}for(t=0;t({formRules:{},validator:{},originalModel:null}),watch:{rules:{immediate:!0,handler(e){this.setRules(e)}},propsChange(e){var t;(null==(t=this.children)?void 0:t.length)&&this.children.map((e=>{"function"==typeof e.updateParentData&&e.updateParentData()}))},model:{immediate:!0,handler(e){this.originalModel||(this.originalModel=uni.$u.deepClone(e))}}},computed:{propsChange(){return[this.errorType,this.borderBottom,this.labelPosition,this.labelWidth,this.labelAlign,this.labelStyle]}},created(){this.children=[]},methods:{setRules(e){0!==Object.keys(e).length&&(this.formRules=e,this.validator=new C(e))},resetFields(){this.resetModel()},resetModel(e){this.children.map((e=>{const t=null==e?void 0:e.prop,r=uni.$u.getProperty(this.originalModel,t);uni.$u.setProperty(this.model,t,r)}))},clearValidate(e){e=[].concat(e),this.children.map((t=>{(void 0===e[0]||e.includes(t.prop))&&(t.message=null)}))},async validateField(e,t,r=null){this.$nextTick((()=>{const n=[];e=[].concat(e),this.children.map((t=>{const i=[];if(e.includes(t.prop)){const e=uni.$u.getProperty(this.model,t.prop),s=t.prop.split("."),a=s[s.length-1],o=this.formRules[t.prop];if(!o)return;const l=[].concat(o);for(let u=0;u{var s;uni.$u.test.array(e)&&(n.push(...e),i.push(...e)),t.message=(null==(s=i[0])?void 0:s.message)?i[0].message:null}))}}})),"function"==typeof t&&t(n)}))},validate(e){return new Promise(((e,t)=>{this.$nextTick((()=>{const r=this.children.map((e=>e.prop));this.validateField(r,(r=>{r.length?("toast"===this.errorType&&uni.$u.toast(r[0].message),t(r)):e(!0)}))}))}))}}},[["render",function(e,t,r,n,i,l){const u=y;return s(),a(u,{class:"u-form"},{default:o((()=>[d(e.$slots,"default")])),_:3})}]]);export{_,M as a}; diff --git a/niucloud/public/wap/assets/u-icon-3406a03e.css b/niucloud/public/wap/assets/u-icon-3406a03e.css new file mode 100644 index 0000000..8807b21 --- /dev/null +++ b/niucloud/public/wap/assets/u-icon-3406a03e.css @@ -0,0 +1 @@ +uni-view[data-v-890c3ce2],uni-scroll-view[data-v-890c3ce2],uni-swiper-item[data-v-890c3ce2]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}@font-face{font-family:uicon-iconfont;src:url(https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf) format("truetype")}.u-icon[data-v-890c3ce2]{display:flex;align-items:center}.u-icon--left[data-v-890c3ce2]{flex-direction:row-reverse;align-items:center}.u-icon--right[data-v-890c3ce2]{flex-direction:row;align-items:center}.u-icon--top[data-v-890c3ce2]{flex-direction:column-reverse;justify-content:center}.u-icon--bottom[data-v-890c3ce2]{flex-direction:column;justify-content:center}.u-icon__icon[data-v-890c3ce2]{font-family:uicon-iconfont;position:relative;display:flex;flex-direction:row;align-items:center}.u-icon__icon--primary[data-v-890c3ce2]{color:var(--primary-color)}.u-icon__icon--success[data-v-890c3ce2]{color:#5ac725}.u-icon__icon--error[data-v-890c3ce2]{color:#f56c6c}.u-icon__icon--warning[data-v-890c3ce2]{color:#f9ae3d}.u-icon__icon--info[data-v-890c3ce2]{color:#909399}.u-icon__img[data-v-890c3ce2]{height:auto;will-change:transform}.u-icon__label[data-v-890c3ce2]{line-height:1} diff --git a/niucloud/public/wap/assets/u-icon.d4bf195f.js b/niucloud/public/wap/assets/u-icon.d4bf195f.js new file mode 100644 index 0000000..78fccc7 --- /dev/null +++ b/niucloud/public/wap/assets/u-icon.d4bf195f.js @@ -0,0 +1 @@ +import{V as i,W as o,X as c,i as n,j as l,w as e,p as u,I as t,K as r,L as a,m as s,M as f,N as d,x as p}from"./index-c1dbaba4.js";import{_ as m}from"./_plugin-vue_export-helper.1b428a4d.js";const h={"uicon-level":"","uicon-column-line":"","uicon-checkbox-mark":"","uicon-folder":"","uicon-movie":"","uicon-star-fill":"","uicon-star":"","uicon-phone-fill":"","uicon-phone":"","uicon-apple-fill":"","uicon-chrome-circle-fill":"","uicon-backspace":"","uicon-attach":"","uicon-cut":"","uicon-empty-car":"","uicon-empty-coupon":"","uicon-empty-address":"","uicon-empty-favor":"","uicon-empty-permission":"","uicon-empty-news":"","uicon-empty-search":"","uicon-github-circle-fill":"","uicon-rmb":"","uicon-person-delete-fill":"","uicon-reload":"","uicon-order":"","uicon-server-man":"","uicon-search":"","uicon-fingerprint":"","uicon-more-dot-fill":"","uicon-scan":"","uicon-share-square":"","uicon-map":"","uicon-map-fill":"","uicon-tags":"","uicon-tags-fill":"","uicon-bookmark-fill":"","uicon-bookmark":"","uicon-eye":"","uicon-eye-fill":"","uicon-mic":"","uicon-mic-off":"","uicon-calendar":"","uicon-calendar-fill":"","uicon-trash":"","uicon-trash-fill":"","uicon-play-left":"","uicon-play-right":"","uicon-minus":"","uicon-plus":"","uicon-info":"","uicon-info-circle":"","uicon-info-circle-fill":"","uicon-question":"","uicon-error":"","uicon-close":"","uicon-checkmark":"","uicon-android-circle-fill":"","uicon-android-fill":"","uicon-ie":"","uicon-IE-circle-fill":"","uicon-google":"","uicon-google-circle-fill":"","uicon-setting-fill":"","uicon-setting":"","uicon-minus-square-fill":"","uicon-plus-square-fill":"","uicon-heart":"","uicon-heart-fill":"","uicon-camera":"","uicon-camera-fill":"","uicon-more-circle":"","uicon-more-circle-fill":"","uicon-chat":"","uicon-chat-fill":"","uicon-bag-fill":"","uicon-bag":"","uicon-error-circle-fill":"","uicon-error-circle":"","uicon-close-circle":"","uicon-close-circle-fill":"","uicon-checkmark-circle":"","uicon-checkmark-circle-fill":"","uicon-question-circle-fill":"","uicon-question-circle":"","uicon-share":"","uicon-share-fill":"","uicon-shopping-cart":"","uicon-shopping-cart-fill":"","uicon-bell":"","uicon-bell-fill":"","uicon-list":"","uicon-list-dot":"","uicon-zhihu":"","uicon-zhihu-circle-fill":"","uicon-zhifubao":"","uicon-zhifubao-circle-fill":"","uicon-weixin-circle-fill":"","uicon-weixin-fill":"","uicon-twitter-circle-fill":"","uicon-twitter":"","uicon-taobao-circle-fill":"","uicon-taobao":"","uicon-weibo-circle-fill":"","uicon-weibo":"","uicon-qq-fill":"","uicon-qq-circle-fill":"","uicon-moments-circel-fill":"","uicon-moments":"","uicon-qzone":"","uicon-qzone-circle-fill":"","uicon-baidu-circle-fill":"","uicon-baidu":"","uicon-facebook-circle-fill":"","uicon-facebook":"","uicon-car":"","uicon-car-fill":"","uicon-warning-fill":"","uicon-warning":"","uicon-clock-fill":"","uicon-clock":"","uicon-edit-pen":"","uicon-edit-pen-fill":"","uicon-email":"","uicon-email-fill":"","uicon-minus-circle":"","uicon-minus-circle-fill":"","uicon-plus-circle":"","uicon-plus-circle-fill":"","uicon-file-text":"","uicon-file-text-fill":"","uicon-pushpin":"","uicon-pushpin-fill":"","uicon-grid":"","uicon-grid-fill":"","uicon-play-circle":"","uicon-play-circle-fill":"","uicon-pause-circle-fill":"","uicon-pause":"","uicon-pause-circle":"","uicon-eye-off":"","uicon-eye-off-outline":"","uicon-gift-fill":"","uicon-gift":"","uicon-rmb-circle-fill":"","uicon-rmb-circle":"","uicon-kefu-ermai":"","uicon-server-fill":"","uicon-coupon-fill":"","uicon-coupon":"","uicon-integral":"","uicon-integral-fill":"","uicon-home-fill":"","uicon-home":"","uicon-hourglass-half-fill":"","uicon-hourglass":"","uicon-account":"","uicon-plus-people-fill":"","uicon-minus-people-fill":"","uicon-account-fill":"","uicon-thumb-down-fill":"","uicon-thumb-down":"","uicon-thumb-up":"","uicon-thumb-up-fill":"","uicon-lock-fill":"","uicon-lock-open":"","uicon-lock-opened-fill":"","uicon-lock":"","uicon-red-packet-fill":"","uicon-photo-fill":"","uicon-photo":"","uicon-volume-off-fill":"","uicon-volume-off":"","uicon-volume-fill":"","uicon-volume":"","uicon-red-packet":"","uicon-download":"","uicon-arrow-up-fill":"","uicon-arrow-down-fill":"","uicon-play-left-fill":"","uicon-play-right-fill":"","uicon-rewind-left-fill":"","uicon-rewind-right-fill":"","uicon-arrow-downward":"","uicon-arrow-leftward":"","uicon-arrow-rightward":"","uicon-arrow-upward":"","uicon-arrow-down":"","uicon-arrow-right":"","uicon-arrow-left":"","uicon-arrow-up":"","uicon-skip-back-left":"","uicon-skip-forward-right":"","uicon-rewind-right":"","uicon-rewind-left":"","uicon-arrow-right-double":"","uicon-arrow-left-double":"","uicon-wifi-off":"","uicon-wifi":"","uicon-empty-data":"","uicon-empty-history":"","uicon-empty-list":"","uicon-empty-page":"","uicon-empty-order":"","uicon-man":"","uicon-woman":"","uicon-man-add":"","uicon-man-add-fill":"","uicon-man-delete":"","uicon-man-delete-fill":"","uicon-zh":"","uicon-en":""};const g=m({name:"u-icon",data:()=>({}),emits:["click"],mixins:[o,c,{props:{name:{type:String,default:i.icon.name},color:{type:String,default:i.icon.color},size:{type:[String,Number],default:i.icon.size},bold:{type:Boolean,default:i.icon.bold},index:{type:[String,Number],default:i.icon.index},hoverClass:{type:String,default:i.icon.hoverClass},customPrefix:{type:String,default:i.icon.customPrefix},label:{type:[String,Number],default:i.icon.label},labelPos:{type:String,default:i.icon.labelPos},labelSize:{type:[String,Number],default:i.icon.labelSize},labelColor:{type:String,default:i.icon.labelColor},space:{type:[String,Number],default:i.icon.space},imgMode:{type:String,default:i.icon.imgMode},width:{type:[String,Number],default:i.icon.width},height:{type:[String,Number],default:i.icon.height},top:{type:[String,Number],default:i.icon.top},stop:{type:Boolean,default:i.icon.stop}}}],computed:{uClasses(){let i=[];return i.push(this.customPrefix+"-"+this.name),this.color&&uni.$u.config.type.includes(this.color)&&i.push("u-icon__icon--"+this.color),i},iconStyle(){let i={};return i={fontSize:uni.$u.addUnit(this.size),lineHeight:uni.$u.addUnit(this.size),fontWeight:this.bold?"bold":"normal",top:uni.$u.addUnit(this.top)},this.color&&!uni.$u.config.type.includes(this.color)&&(i.color=this.color),i},isImg(){return-1!==this.name.indexOf("/")},imgStyle(){let i={};return i.width=this.width?uni.$u.addUnit(this.width):uni.$u.addUnit(this.size),i.height=this.height?uni.$u.addUnit(this.height):uni.$u.addUnit(this.size),i},icon(){return h["uicon-"+this.name]||this.name}},methods:{clickHandler(i){this.$emit("click",this.index),this.stop&&this.preventEvent(i)}}},[["render",function(i,o,c,m,h,g){const b=f,y=d,w=p;return n(),l(w,{class:t(["u-icon",["u-icon--"+i.labelPos]]),onClick:g.clickHandler},{default:e((()=>[g.isImg?(n(),l(b,{key:0,class:"u-icon__img",src:i.name,mode:i.imgMode,style:u([g.imgStyle,i.$u.addStyle(i.customStyle)])},null,8,["src","mode","style"])):(n(),l(y,{key:1,class:t(["u-icon__icon",g.uClasses]),style:u([g.iconStyle,i.$u.addStyle(i.customStyle)]),"hover-class":i.hoverClass},{default:e((()=>[r(a(g.icon),1)])),_:1},8,["class","style","hover-class"])),s(' 这里进行空字符串判断,如果仅仅是v-if="label",可能会出现传递0的时候,结果也无法显示 '),""!==i.label?(n(),l(y,{key:2,class:"u-icon__label",style:u({color:i.labelColor,fontSize:i.$u.addUnit(i.labelSize),marginLeft:"right"==i.labelPos?i.$u.addUnit(i.space):0,marginTop:"bottom"==i.labelPos?i.$u.addUnit(i.space):0,marginRight:"left"==i.labelPos?i.$u.addUnit(i.space):0,marginBottom:"top"==i.labelPos?i.$u.addUnit(i.space):0})},{default:e((()=>[r(a(i.label),1)])),_:1},8,["style"])):s("v-if",!0)])),_:1},8,["onClick","class"])}],["__scopeId","data-v-890c3ce2"]]);export{g as _}; diff --git a/niucloud/public/wap/assets/u-image-f70fd559.css b/niucloud/public/wap/assets/u-image-f70fd559.css new file mode 100644 index 0000000..9b31d28 --- /dev/null +++ b/niucloud/public/wap/assets/u-image-f70fd559.css @@ -0,0 +1 @@ +uni-view[data-v-466b6710],uni-scroll-view[data-v-466b6710],uni-swiper-item[data-v-466b6710]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-image[data-v-466b6710]{position:relative;transition:opacity .5s ease-in-out}.u-image__image[data-v-466b6710]{width:100%;height:100%}.u-image__loading[data-v-466b6710],.u-image__error[data-v-466b6710]{position:absolute;top:0px;left:0px;width:100%;height:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;background-color:#f3f4f6;color:#909193;font-size:1.4375rem} diff --git a/niucloud/public/wap/assets/u-image.86f8f5db.js b/niucloud/public/wap/assets/u-image.86f8f5db.js new file mode 100644 index 0000000..580b817 --- /dev/null +++ b/niucloud/public/wap/assets/u-image.86f8f5db.js @@ -0,0 +1 @@ +import{V as e,W as i,X as t,q as a,t as o,i as r,j as d,w as s,k as n,p as l,m as h,T as u,M as g,x as m}from"./index-c1dbaba4.js";import{_ as p}from"./u-icon.d4bf195f.js";import{_ as c}from"./u-transition.24c0ace1.js";import{_ as y}from"./_plugin-vue_export-helper.1b428a4d.js";const w={props:{src:{type:String,default:e.image.src},mode:{type:String,default:e.image.mode},width:{type:[String,Number],default:e.image.width},height:{type:[String,Number],default:e.image.height},shape:{type:String,default:e.image.shape},radius:{type:[String,Number],default:e.image.radius},lazyLoad:{type:Boolean,default:e.image.lazyLoad},showMenuByLongpress:{type:Boolean,default:e.image.showMenuByLongpress},loadingIcon:{type:String,default:e.image.loadingIcon},errorIcon:{type:String,default:e.image.errorIcon},showLoading:{type:Boolean,default:e.image.showLoading},showError:{type:Boolean,default:e.image.showError},fade:{type:Boolean,default:e.image.fade},webp:{type:Boolean,default:e.image.webp},duration:{type:[String,Number],default:e.image.duration},bgColor:{type:String,default:e.image.bgColor}}};const f=y({name:"u-image",mixins:[i,t,w],data(){return{isError:!1,loading:!0,opacity:1,durationTime:this.duration,backgroundStyle:{},show:!1}},watch:{src:{immediate:!0,handler(e){e?(this.isError=!1,this.loading=!0):this.isError=!0}}},computed:{wrapStyle(){let e={};return e.width=this.$u.addUnit(this.width),e.height=this.$u.addUnit(this.height),e.borderRadius="circle"==this.shape?"10000px":uni.$u.addUnit(this.radius),e.overflow=this.radius>0?"hidden":"visible",uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))}},mounted(){this.show=!0},emits:["click","error","load"],methods:{onClick(){this.$emit("click")},onErrorHandler(e){this.loading=!1,this.isError=!0,this.$emit("error",e)},onLoadHandler(e){this.loading=!1,this.isError=!1,this.$emit("load",e),this.removeBgColor()},removeBgColor(){this.backgroundStyle={backgroundColor:"transparent"}}}},[["render",function(e,i,t,y,w,f){const b=g,$=a(o("u-icon"),p),_=m,S=a(o("u-transition"),c);return r(),d(S,{mode:"fade",show:w.show,duration:e.fade?1e3:0},{default:s((()=>[n(_,{class:"u-image",onClick:f.onClick,style:l([f.wrapStyle,w.backgroundStyle])},{default:s((()=>[w.isError?h("v-if",!0):(r(),d(b,{key:0,src:e.src,mode:e.mode,onError:f.onErrorHandler,onLoad:f.onLoadHandler,"show-menu-by-longpress":e.showMenuByLongpress,"lazy-load":e.lazyLoad,class:"u-image__image",style:l({borderRadius:"circle"==e.shape?"10000px":e.$u.addUnit(e.radius),width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)})},null,8,["src","mode","onError","onLoad","show-menu-by-longpress","lazy-load","style"])),e.showLoading&&w.loading?(r(),d(_,{key:1,class:"u-image__loading",style:l({borderRadius:"circle"==e.shape?"50%":e.$u.addUnit(e.radius),backgroundColor:this.bgColor,width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)})},{default:s((()=>[u(e.$slots,"loading",{},(()=>[n($,{name:e.loadingIcon,width:e.width,height:e.height},null,8,["name","width","height"])]),!0)])),_:3},8,["style"])):h("v-if",!0),e.showError&&w.isError&&!w.loading?(r(),d(_,{key:2,class:"u-image__error",style:l({borderRadius:"circle"==e.shape?"50%":e.$u.addUnit(e.radius),width:e.$u.addUnit(e.width),height:e.$u.addUnit(e.height)})},{default:s((()=>[u(e.$slots,"error",{},(()=>[n($,{name:e.errorIcon,width:e.width,height:e.height},null,8,["name","width","height"])]),!0)])),_:3},8,["style"])):h("v-if",!0)])),_:3},8,["onClick","style"])])),_:3},8,["show","duration"])}],["__scopeId","data-v-466b6710"]]);export{f as _,w as p}; diff --git a/niucloud/public/wap/assets/u-input-2dabccde.css b/niucloud/public/wap/assets/u-input-2dabccde.css new file mode 100644 index 0000000..96c1f8f --- /dev/null +++ b/niucloud/public/wap/assets/u-input-2dabccde.css @@ -0,0 +1 @@ +uni-view[data-v-afd9dafc],uni-scroll-view[data-v-afd9dafc],uni-swiper-item[data-v-afd9dafc]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-input[data-v-afd9dafc]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex:1}.u-input--radius[data-v-afd9dafc],.u-input--square[data-v-afd9dafc]{border-radius:4px}.u-input--no-radius[data-v-afd9dafc]{border-radius:0}.u-input--circle[data-v-afd9dafc]{border-radius:100px}.u-input__content[data-v-afd9dafc]{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.u-input__content__field-wrapper[data-v-afd9dafc]{position:relative;display:flex;flex-direction:row;margin:0;flex:1}.u-input__content__field-wrapper__field[data-v-afd9dafc]{line-height:26px;text-align:left;color:#303133;height:24px;font-size:15px;flex:1}.u-input__content__clear[data-v-afd9dafc]{width:20px;height:20px;border-radius:100px;background-color:#c6c7cb;display:flex;flex-direction:row;align-items:center;justify-content:center;transform:scale(.82);margin-left:4px}.u-input__content__subfix-icon[data-v-afd9dafc]{margin-left:4px}.u-input__content__prefix-icon[data-v-afd9dafc]{margin-right:4px} diff --git a/niucloud/public/wap/assets/u-input.d53f0aa0.js b/niucloud/public/wap/assets/u-input.d53f0aa0.js new file mode 100644 index 0000000..cb72758 --- /dev/null +++ b/niucloud/public/wap/assets/u-input.d53f0aa0.js @@ -0,0 +1 @@ +import{_ as e}from"./u-icon.d4bf195f.js";import{V as t,W as n,X as o,q as i,t as a,i as l,j as r,w as u,k as s,T as p,m as d,p as c,I as f,x as h,ao as y}from"./index-c1dbaba4.js";import{_ as m}from"./_plugin-vue_export-helper.1b428a4d.js";const g={props:{modelValue:{type:[String,Number],default:t.input.value},type:{type:String,default:t.input.type},fixed:{type:Boolean,default:t.input.fixed},disabled:{type:Boolean,default:t.input.disabled},disabledColor:{type:String,default:t.input.disabledColor},clearable:{type:Boolean,default:t.input.clearable},password:{type:Boolean,default:t.input.password},maxlength:{type:[String,Number],default:t.input.maxlength},placeholder:{type:String,default:t.input.placeholder},placeholderClass:{type:String,default:t.input.placeholderClass},placeholderStyle:{type:[String,Object],default:t.input.placeholderStyle},showWordLimit:{type:Boolean,default:t.input.showWordLimit},confirmType:{type:String,default:t.input.confirmType},confirmHold:{type:Boolean,default:t.input.confirmHold},holdKeyboard:{type:Boolean,default:t.input.holdKeyboard},focus:{type:Boolean,default:t.input.focus},autoBlur:{type:Boolean,default:t.input.autoBlur},disableDefaultPadding:{type:Boolean,default:t.input.disableDefaultPadding},cursor:{type:[String,Number],default:t.input.cursor},cursorSpacing:{type:[String,Number],default:t.input.cursorSpacing},selectionStart:{type:[String,Number],default:t.input.selectionStart},selectionEnd:{type:[String,Number],default:t.input.selectionEnd},adjustPosition:{type:Boolean,default:t.input.adjustPosition},inputAlign:{type:String,default:t.input.inputAlign},fontSize:{type:[String,Number],default:t.input.fontSize},color:{type:String,default:t.input.color},prefixIcon:{type:String,default:t.input.prefixIcon},prefixIconStyle:{type:[String,Object],default:t.input.prefixIconStyle},suffixIcon:{type:String,default:t.input.suffixIcon},suffixIconStyle:{type:[String,Object],default:t.input.suffixIconStyle},border:{type:String,default:t.input.border},readonly:{type:Boolean,default:t.input.readonly},shape:{type:String,default:t.input.shape},formatter:{type:[Function,null],default:t.input.formatter},ignoreCompositionEvent:{type:Boolean,default:!0}}};const S=m({name:"u-input",mixins:[n,o,g],data:()=>({innerValue:"",focused:!1,firstChange:!0,changeFromInner:!1,innerFormatter:e=>e}),watch:{modelValue:{immediate:!0,handler(e,t){this.innerValue=e,!1===this.firstChange&&!1===this.changeFromInner&&this.valueChange(),this.firstChange=!1,this.changeFromInner=!1}}},computed:{isShowClear(){const{clearable:e,readonly:t,focused:n,innerValue:o}=this;return!!e&&!t&&!!n&&""!==o},inputClass(){let e=[],{border:t,disabled:n,shape:o}=this;return"surround"===t&&(e=e.concat(["u-border","u-input--radius"])),e.push(`u-input--${o}`),"bottom"===t&&(e=e.concat(["u-border-bottom","u-input--no-radius"])),e.join(" ")},wrapperStyle(){const e={};return this.disabled&&(e.backgroundColor=this.disabledColor),"none"===this.border?e.padding="0":(e.paddingTop="6px",e.paddingBottom="6px",e.paddingLeft="9px",e.paddingRight="9px"),uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))},inputStyle(){return{color:this.color,fontSize:uni.$u.addUnit(this.fontSize),textAlign:this.inputAlign}}},emits:["update:modelValue","focus","blur","change","confirm","clear","keyboardheightchange"],methods:{setFormatter(e){this.innerFormatter=e},onInput(e){let{value:t=""}=e.detail||{};const n=(this.formatter||this.innerFormatter)(t);this.innerValue=t,this.$nextTick((()=>{this.innerValue=n,this.valueChange()}))},onBlur(e){this.$emit("blur",e.detail.value),uni.$u.sleep(50).then((()=>{this.focused=!1})),uni.$u.formValidate(this,"blur")},onFocus(e){this.focused=!0,this.$emit("focus")},onConfirm(e){this.$emit("confirm",this.innerValue)},onkeyboardheightchange(){this.$emit("keyboardheightchange")},valueChange(){const e=this.innerValue;this.$nextTick((()=>{this.$emit("update:modelValue",e),this.changeFromInner=!0,this.$emit("change",e),uni.$u.formValidate(this,"change")}))},onClear(){this.innerValue="",this.$nextTick((()=>{this.valueChange(),this.$emit("clear")}))},clickHandler(){}}},[["render",function(t,n,o,m,g,S){const b=i(a("u-icon"),e),x=h,_=y;return l(),r(x,{class:f(["u-input",S.inputClass]),style:c([S.wrapperStyle])},{default:u((()=>[s(x,{class:"u-input__content"},{default:u((()=>[t.prefixIcon||t.$slots.prefix?(l(),r(x,{key:0,class:"u-input__content__prefix-icon"},{default:u((()=>[p(t.$slots,"prefix",{},(()=>[s(b,{name:t.prefixIcon,size:"18",customStyle:t.prefixIconStyle},null,8,["name","customStyle"])]),!0)])),_:3})):d("v-if",!0),s(x,{class:"u-input__content__field-wrapper",onClick:S.clickHandler},{default:u((()=>[d(" 根据uni-app的input组件文档,H5和APP中只要声明了password参数(无论true还是false),type均失效,此时\n\t\t\t\t\t为了防止type=number时,又存在password属性,type无效,此时需要设置password为undefined\n\t\t\t\t "),s(_,{class:"u-input__content__field-wrapper__field",style:c([S.inputStyle]),type:t.type,focus:t.focus,cursor:t.cursor,value:g.innerValue,"auto-blur":t.autoBlur,disabled:t.disabled||t.readonly,maxlength:t.maxlength,placeholder:t.placeholder,"placeholder-style":t.placeholderStyle,"placeholder-class":t.placeholderClass,"confirm-type":t.confirmType,"confirm-hold":t.confirmHold,"hold-keyboard":t.holdKeyboard,"cursor-spacing":t.cursorSpacing,"adjust-position":t.adjustPosition,"selection-end":t.selectionEnd,"selection-start":t.selectionStart,password:t.password||"password"===t.type||void 0,ignoreCompositionEvent:t.ignoreCompositionEvent,onInput:S.onInput,onBlur:S.onBlur,onFocus:S.onFocus,onConfirm:S.onConfirm,onKeyboardheightchange:S.onkeyboardheightchange},null,8,["style","type","focus","cursor","value","auto-blur","disabled","maxlength","placeholder","placeholder-style","placeholder-class","confirm-type","confirm-hold","hold-keyboard","cursor-spacing","adjust-position","selection-end","selection-start","password","ignoreCompositionEvent","onInput","onBlur","onFocus","onConfirm","onKeyboardheightchange"])])),_:1},8,["onClick"]),S.isShowClear?(l(),r(x,{key:1,class:"u-input__content__clear",onClick:S.onClear},{default:u((()=>[s(b,{name:"close",size:"11",color:"#ffffff",customStyle:"line-height: 12px"})])),_:1},8,["onClick"])):d("v-if",!0),t.suffixIcon||t.$slots.suffix?(l(),r(x,{key:2,class:"u-input__content__subfix-icon"},{default:u((()=>[p(t.$slots,"suffix",{},(()=>[s(b,{name:t.suffixIcon,size:"18",customStyle:t.suffixIconStyle},null,8,["name","customStyle"])]),!0)])),_:3})):d("v-if",!0)])),_:3})])),_:3},8,["class","style"])}],["__scopeId","data-v-afd9dafc"]]);export{S as _,g as p}; diff --git a/niucloud/public/wap/assets/u-line-90cc8525.css b/niucloud/public/wap/assets/u-line-90cc8525.css new file mode 100644 index 0000000..05f6b88 --- /dev/null +++ b/niucloud/public/wap/assets/u-line-90cc8525.css @@ -0,0 +1 @@ +uni-view[data-v-45e31c7a],uni-scroll-view[data-v-45e31c7a],uni-swiper-item[data-v-45e31c7a]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-line[data-v-45e31c7a]{vertical-align:middle} diff --git a/niucloud/public/wap/assets/u-line.980a961a.js b/niucloud/public/wap/assets/u-line.980a961a.js new file mode 100644 index 0000000..e30b926 --- /dev/null +++ b/niucloud/public/wap/assets/u-line.980a961a.js @@ -0,0 +1 @@ +import{V as e,W as t,X as i,i as n,j as r,p as l,x as s}from"./index-c1dbaba4.js";import{_ as a}from"./_plugin-vue_export-helper.1b428a4d.js";const d=a({name:"u-line",mixins:[t,i,{props:{color:{type:String,default:e.line.color},length:{type:[String,Number],default:e.line.length},direction:{type:String,default:e.line.direction},hairline:{type:Boolean,default:e.line.hairline},margin:{type:[String,Number],default:e.line.margin},dashed:{type:Boolean,default:e.line.dashed}}}],computed:{lineStyle(){const e={};return e.margin=this.margin,"row"===this.direction?(e.borderBottomWidth="1px",e.borderBottomStyle=this.dashed?"dashed":"solid",e.width=uni.$u.addUnit(this.length),this.hairline&&(e.transform="scaleY(0.5)")):(e.borderLeftWidth="1px",e.borderLeftStyle=this.dashed?"dashed":"solid",e.height=uni.$u.addUnit(this.length),this.hairline&&(e.transform="scaleX(0.5)")),e.borderColor=this.color,uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))}}},[["render",function(e,t,i,a,d,o){const h=s;return n(),r(h,{class:"u-line",style:l([o.lineStyle])},null,8,["style"])}],["__scopeId","data-v-45e31c7a"]]);export{d as _}; diff --git a/niucloud/public/wap/assets/u-loading-icon-4a706ea2.css b/niucloud/public/wap/assets/u-loading-icon-4a706ea2.css new file mode 100644 index 0000000..53a9891 --- /dev/null +++ b/niucloud/public/wap/assets/u-loading-icon-4a706ea2.css @@ -0,0 +1 @@ +uni-view[data-v-adfb58a0],uni-scroll-view[data-v-adfb58a0],uni-swiper-item[data-v-adfb58a0]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-loading-icon[data-v-adfb58a0]{flex-direction:row;align-items:center;justify-content:center;color:#c8c9cc}.u-loading-icon__text[data-v-adfb58a0]{margin-left:4px;color:#606266;font-size:14px;line-height:20px}.u-loading-icon__spinner[data-v-adfb58a0]{width:30px;height:30px;position:relative;box-sizing:border-box;max-width:100%;max-height:100%;animation:u-rotate-adfb58a0 1s linear infinite}.u-loading-icon__spinner--semicircle[data-v-adfb58a0]{border-width:2px;border-color:transparent;border-radius:100px;border-style:solid}.u-loading-icon__spinner--circle[data-v-adfb58a0]{border-radius:100px;border-width:2px;border-top-color:#e5e5e5;border-right-color:#e5e5e5;border-bottom-color:#e5e5e5;border-left-color:#e5e5e5;border-style:solid}.u-loading-icon--vertical[data-v-adfb58a0]{flex-direction:column}[data-v-adfb58a0]:host{font-size:0px;line-height:1}.u-loading-icon__spinner--spinner[data-v-adfb58a0]{animation-timing-function:steps(12)}.u-loading-icon__text[data-v-adfb58a0]:empty{display:none}.u-loading-icon--vertical .u-loading-icon__text[data-v-adfb58a0]{margin:6px 0 0;color:#606266}.u-loading-icon__dot[data-v-adfb58a0]{position:absolute;top:0;left:0;width:100%;height:100%}.u-loading-icon__dot[data-v-adfb58a0]:before{display:block;width:2px;height:25%;margin:0 auto;background-color:currentColor;border-radius:40%;content:" "}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(1){transform:rotate(30deg);opacity:1}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(2){transform:rotate(60deg);opacity:.9375}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(3){transform:rotate(90deg);opacity:.875}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(4){transform:rotate(120deg);opacity:.8125}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(5){transform:rotate(150deg);opacity:.75}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(6){transform:rotate(180deg);opacity:.6875}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(7){transform:rotate(210deg);opacity:.625}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(8){transform:rotate(240deg);opacity:.5625}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(9){transform:rotate(270deg);opacity:.5}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(10){transform:rotate(300deg);opacity:.4375}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(11){transform:rotate(330deg);opacity:.375}.u-loading-icon__dot[data-v-adfb58a0]:nth-of-type(12){transform:rotate(360deg);opacity:.3125}@keyframes u-rotate-adfb58a0{0%{transform:rotate(0)}to{transform:rotate(1turn)}} diff --git a/niucloud/public/wap/assets/u-loading-icon.4b2cb429.js b/niucloud/public/wap/assets/u-loading-icon.4b2cb429.js new file mode 100644 index 0000000..63ba301 --- /dev/null +++ b/niucloud/public/wap/assets/u-loading-icon.4b2cb429.js @@ -0,0 +1 @@ +import{V as e,W as o,X as t,bi as i,i as n,j as a,w as r,I as l,p as d,F as s,G as c,H as u,m as g,K as f,L as m,x as p,N as y}from"./index-c1dbaba4.js";import{_ as h}from"./_plugin-vue_export-helper.1b428a4d.js";const v=h({name:"u-loading-icon",mixins:[o,t,{props:{show:{type:Boolean,default:e.loadingIcon.show},color:{type:String,default:e.loadingIcon.color},textColor:{type:String,default:e.loadingIcon.textColor},vertical:{type:Boolean,default:e.loadingIcon.vertical},mode:{type:String,default:e.loadingIcon.mode},size:{type:[String,Number],default:e.loadingIcon.size},textSize:{type:[String,Number],default:e.loadingIcon.textSize},text:{type:[String,Number],default:e.loadingIcon.text},timingFunction:{type:String,default:e.loadingIcon.timingFunction},duration:{type:[String,Number],default:e.loadingIcon.duration},inactiveColor:{type:String,default:e.loadingIcon.inactiveColor}}}],data:()=>({array12:Array.from({length:12}),aniAngel:360,webviewHide:!1,loading:!1}),computed:{otherBorderColor(){const e=uni.$u.colorGradient(this.color,"#ffffff",100)[80];return"circle"===this.mode?this.inactiveColor?this.inactiveColor:e:"transparent"}},watch:{show(e){}},mounted(){this.init()},methods:{init(){setTimeout((()=>{}),20)},addEventListenerToWebview(){const e=i(),o=e[e.length-1].$getAppWebview();o.addEventListener("hide",(()=>{this.webviewHide=!0})),o.addEventListener("show",(()=>{this.webviewHide=!1}))}}},[["render",function(e,o,t,i,h,v){const w=p,_=y;return e.show?(n(),a(w,{key:0,class:l(["u-loading-icon",[e.vertical&&"u-loading-icon--vertical"]]),style:d([e.$u.addStyle(e.customStyle)])},{default:r((()=>[h.webviewHide?g("v-if",!0):(n(),a(w,{key:0,class:l(["u-loading-icon__spinner",[`u-loading-icon__spinner--${e.mode}`]]),ref:"ani",style:d({color:e.color,width:e.$u.addUnit(e.size),height:e.$u.addUnit(e.size),borderTopColor:e.color,borderBottomColor:v.otherBorderColor,borderLeftColor:v.otherBorderColor,borderRightColor:v.otherBorderColor,"animation-duration":`${e.duration}ms`,"animation-timing-function":"semicircle"===e.mode||"circle"===e.mode?e.timingFunction:""})},{default:r((()=>["spinner"===e.mode?(n(!0),s(c,{key:0},u(h.array12,((e,o)=>(n(),a(w,{key:o,class:"u-loading-icon__dot"})))),128)):g("v-if",!0)])),_:1},8,["class","style"])),e.text?(n(),a(_,{key:1,class:"u-loading-icon__text",style:d({fontSize:e.$u.addUnit(e.textSize),color:e.textColor})},{default:r((()=>[f(m(e.text),1)])),_:1},8,["style"])):g("v-if",!0)])),_:1},8,["style","class"])):g("v-if",!0)}],["__scopeId","data-v-adfb58a0"]]);export{v as _}; diff --git a/niucloud/public/wap/assets/u-loading-page-2116306f.css b/niucloud/public/wap/assets/u-loading-page-2116306f.css new file mode 100644 index 0000000..3981db3 --- /dev/null +++ b/niucloud/public/wap/assets/u-loading-page-2116306f.css @@ -0,0 +1 @@ +uni-view[data-v-bb97457c],uni-scroll-view[data-v-bb97457c],uni-swiper-item[data-v-bb97457c]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-loading-page[data-v-bb97457c]{display:flex;flex-direction:column;flex:1;align-items:center;justify-content:center}.u-loading-page__warpper[data-v-bb97457c]{margin-top:-150px;justify-content:center;align-items:center;color:#c8c8c8;font-size:19px;display:flex;flex-direction:column}.u-loading-page__warpper__loading-icon[data-v-bb97457c]{margin-bottom:10px}.u-loading-page__warpper__loading-icon__img[data-v-bb97457c]{width:40px;height:40px}.u-loading-page__warpper__text[data-v-bb97457c]{font-size:19px;color:#c8c8c8} diff --git a/niucloud/public/wap/assets/u-loading-page.8a915b31.js b/niucloud/public/wap/assets/u-loading-page.8a915b31.js new file mode 100644 index 0000000..8476bd6 --- /dev/null +++ b/niucloud/public/wap/assets/u-loading-page.8a915b31.js @@ -0,0 +1 @@ +import{V as a,W as o,X as e,q as i,t,i as l,j as n,w as d,k as g,p as s,T as r,K as u,L as p,M as c,x as _,N as f}from"./index-c1dbaba4.js";import{_ as m}from"./u-loading-icon.4b2cb429.js";import{_ as y}from"./u-transition.24c0ace1.js";import{_ as S}from"./_plugin-vue_export-helper.1b428a4d.js";const x=S({name:"u-loading-page",mixins:[o,e,{props:{loadingText:{type:[String,Number],default:a.loadingPage.loadingText},image:{type:String,default:a.loadingPage.image},loadingMode:{type:String,default:a.loadingPage.loadingMode},loading:{type:Boolean,default:a.loadingPage.loading},bgColor:{type:String,default:a.loadingPage.bgColor},color:{type:String,default:a.loadingPage.color},fontSize:{type:[String,Number],default:a.loadingPage.fontSize},iconSize:{type:[String,Number],default:a.loadingPage.fontSize},loadingColor:{type:String,default:a.loadingPage.loadingColor}}}],data:()=>({}),methods:{}},[["render",function(a,o,e,S,x,z){const b=c,h=i(t("u-loading-icon"),m),w=_,P=f,C=i(t("u-transition"),y);return l(),n(C,{show:a.loading,"custom-style":{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:a.bgColor,display:"flex"}},{default:d((()=>[g(w,{class:"u-loading-page"},{default:d((()=>[g(w,{class:"u-loading-page__warpper"},{default:d((()=>[g(w,{class:"u-loading-page__warpper__loading-icon"},{default:d((()=>[a.image?(l(),n(b,{key:0,src:a.image,class:"u-loading-page__warpper__loading-icon__img",mode:"widthFit",style:s({width:a.$u.addUnit(a.iconSize),height:a.$u.addUnit(a.iconSize)})},null,8,["src","style"])):(l(),n(h,{key:1,mode:a.loadingMode,size:a.$u.addUnit(a.iconSize),color:a.loadingColor},null,8,["mode","size","color"]))])),_:1}),r(a.$slots,"default",{},(()=>[g(P,{class:"u-loading-page__warpper__text",style:s({fontSize:a.$u.addUnit(a.fontSize),color:a.color})},{default:d((()=>[u(p(a.loadingText),1)])),_:1},8,["style"])]),!0)])),_:3})])),_:3})])),_:3},8,["show","custom-style"])}],["__scopeId","data-v-bb97457c"]]);export{x as _}; diff --git a/niucloud/public/wap/assets/u-modal-b7ee2981.css b/niucloud/public/wap/assets/u-modal-b7ee2981.css new file mode 100644 index 0000000..8a8648e --- /dev/null +++ b/niucloud/public/wap/assets/u-modal-b7ee2981.css @@ -0,0 +1 @@ +uni-view[data-v-4425533b],uni-scroll-view[data-v-4425533b],uni-swiper-item[data-v-4425533b]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-modal[data-v-4425533b]{width:20.3125rem;border-radius:6px;overflow:hidden}.u-modal__title[data-v-4425533b]{font-size:16px;font-weight:700;color:#606266;text-align:center;padding-top:25px}.u-modal__content[data-v-4425533b]{padding:12px 25px 25px;display:flex;flex-direction:row;justify-content:center}.u-modal__content__text[data-v-4425533b]{font-size:15px;color:#606266;flex:1}.u-modal__button-group[data-v-4425533b]{display:flex;flex-direction:row}.u-modal__button-group--confirm-button[data-v-4425533b]{flex-direction:column;padding:0 25px 15px}.u-modal__button-group__wrapper[data-v-4425533b]{flex:1;display:flex;flex-direction:row;justify-content:center;align-items:center;height:48px}.u-modal__button-group__wrapper--confirm[data-v-4425533b],.u-modal__button-group__wrapper--only-cancel[data-v-4425533b]{border-bottom-right-radius:6px}.u-modal__button-group__wrapper--cancel[data-v-4425533b],.u-modal__button-group__wrapper--only-confirm[data-v-4425533b]{border-bottom-left-radius:6px}.u-modal__button-group__wrapper--hover[data-v-4425533b]{background-color:#f3f4f6}.u-modal__button-group__wrapper__text[data-v-4425533b]{color:#606266;font-size:16px;text-align:center} diff --git a/niucloud/public/wap/assets/u-modal.fc188b5a.js b/niucloud/public/wap/assets/u-modal.fc188b5a.js new file mode 100644 index 0000000..339220a --- /dev/null +++ b/niucloud/public/wap/assets/u-modal.fc188b5a.js @@ -0,0 +1 @@ +import{V as o,W as t,X as e,q as l,t as a,i as n,j as s,w as r,k as u,p as i,K as c,L as d,m,T as p,F as _,G as f,I as y,N as h,x as w}from"./index-c1dbaba4.js";import{_ as g}from"./u-line.980a961a.js";import{_ as C}from"./u-loading-icon.4b2cb429.js";import{_ as v}from"./u-popup.c9f22720.js";import{_ as B}from"./_plugin-vue_export-helper.1b428a4d.js";const k=B({name:"u-modal",mixins:[t,e,{props:{show:{type:Boolean,default:o.modal.show},title:{type:[String],default:o.modal.title},content:{type:String,default:o.modal.content},confirmText:{type:String,default:o.modal.confirmText},cancelText:{type:String,default:o.modal.cancelText},showConfirmButton:{type:Boolean,default:o.modal.showConfirmButton},showCancelButton:{type:Boolean,default:o.modal.showCancelButton},confirmColor:{type:String,default:o.modal.confirmColor},cancelColor:{type:String,default:o.modal.cancelColor},buttonReverse:{type:Boolean,default:o.modal.buttonReverse},zoom:{type:Boolean,default:o.modal.zoom},asyncClose:{type:Boolean,default:o.modal.asyncClose},closeOnClickOverlay:{type:Boolean,default:o.modal.closeOnClickOverlay},negativeTop:{type:[String,Number],default:o.modal.negativeTop},width:{type:[String,Number],default:o.modal.width},confirmButtonShape:{type:String,default:o.modal.confirmButtonShape}}}],data:()=>({loading:!1}),watch:{show(o){o&&this.loading&&(this.loading=!1)}},methods:{confirmHandler(){this.asyncClose&&(this.loading=!0),this.$emit("confirm")},cancelHandler(){this.$emit("cancel")},clickHandler(){this.closeOnClickOverlay&&this.$emit("close")}}},[["render",function(o,t,e,B,k,b){const x=h,S=w,O=l(a("u-line"),g),T=l(a("u-loading-icon"),C),$=l(a("u-popup"),v);return n(),s($,{mode:"center",zoom:o.zoom,show:o.show,customStyle:{borderRadius:"6px",overflow:"hidden",marginTop:`-${o.$u.addUnit(o.negativeTop)}`},closeOnClickOverlay:o.closeOnClickOverlay,safeAreaInsetBottom:!1,duration:400,onClick:b.clickHandler},{default:r((()=>[u(S,{class:"u-modal",style:i({width:o.$u.addUnit(o.width)})},{default:r((()=>[o.title?(n(),s(x,{key:0,class:"u-modal__title"},{default:r((()=>[c(d(o.title),1)])),_:1})):m("v-if",!0),u(S,{class:"u-modal__content",style:i({paddingTop:(o.title?12:25)+"px"})},{default:r((()=>[p(o.$slots,"default",{},(()=>[u(x,{class:"u-modal__content__text"},{default:r((()=>[c(d(o.content),1)])),_:1})]),!0)])),_:3},8,["style"]),o.$slots.confirmButton?(n(),s(S,{key:1,class:"u-modal__button-group--confirm-button"},{default:r((()=>[p(o.$slots,"confirmButton",{},void 0,!0)])),_:3})):(n(),_(f,{key:2},[u(O),u(S,{class:"u-modal__button-group",style:i({flexDirection:o.buttonReverse?"row-reverse":"row"})},{default:r((()=>[o.showCancelButton?(n(),s(S,{key:0,class:y(["u-modal__button-group__wrapper u-modal__button-group__wrapper--cancel",[o.showCancelButton&&!o.showConfirmButton&&"u-modal__button-group__wrapper--only-cancel"]]),"hover-stay-time":150,"hover-class":"u-modal__button-group__wrapper--hover",onClick:b.cancelHandler},{default:r((()=>[u(x,{class:"u-modal__button-group__wrapper__text",style:i({color:o.cancelColor})},{default:r((()=>[c(d(o.cancelText),1)])),_:1},8,["style"])])),_:1},8,["class","onClick"])):m("v-if",!0),o.showConfirmButton&&o.showCancelButton?(n(),s(O,{key:1,direction:"column"})):m("v-if",!0),o.showConfirmButton?(n(),s(S,{key:2,class:y(["u-modal__button-group__wrapper u-modal__button-group__wrapper--confirm",[!o.showCancelButton&&o.showConfirmButton&&"u-modal__button-group__wrapper--only-confirm"]]),"hover-stay-time":150,"hover-class":"u-modal__button-group__wrapper--hover",onClick:b.confirmHandler},{default:r((()=>[k.loading?(n(),s(T,{key:0})):(n(),s(x,{key:1,class:"u-modal__button-group__wrapper__text",style:i({color:o.confirmColor})},{default:r((()=>[c(d(o.confirmText),1)])),_:1},8,["style"]))])),_:1},8,["class","onClick"])):m("v-if",!0)])),_:1},8,["style"])],64))])),_:3},8,["style"])])),_:3},8,["zoom","show","customStyle","closeOnClickOverlay","onClick"])}],["__scopeId","data-v-4425533b"]]);export{k as _}; diff --git a/niucloud/public/wap/assets/u-popup-b896d01d.css b/niucloud/public/wap/assets/u-popup-b896d01d.css new file mode 100644 index 0000000..a71ce04 --- /dev/null +++ b/niucloud/public/wap/assets/u-popup-b896d01d.css @@ -0,0 +1 @@ +uni-view[data-v-1ce16a4a],uni-scroll-view[data-v-1ce16a4a],uni-swiper-item[data-v-1ce16a4a]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-overlay[data-v-1ce16a4a]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7)}.u-status-bar[data-v-df170e56]{width:100%}uni-view[data-v-ca966c1e],uni-scroll-view[data-v-ca966c1e],uni-swiper-item[data-v-ca966c1e]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-popup[data-v-ca966c1e]{flex:1}.u-popup__content[data-v-ca966c1e]{background-color:#fff;position:relative}.u-popup__content--round-top[data-v-ca966c1e]{border-radius:0 0 10px 10px}.u-popup__content--round-left[data-v-ca966c1e]{border-radius:0 10px 10px 0}.u-popup__content--round-right[data-v-ca966c1e]{border-radius:10px 0 0 10px}.u-popup__content--round-bottom[data-v-ca966c1e]{border-radius:10px 10px 0 0}.u-popup__content--round-center[data-v-ca966c1e]{border-radius:10px}.u-popup__content__close[data-v-ca966c1e]{position:absolute}.u-popup__content__close--hover[data-v-ca966c1e]{opacity:.4}.u-popup__content__close--top-left[data-v-ca966c1e]{top:15px;left:15px}.u-popup__content__close--top-right[data-v-ca966c1e]{top:15px;right:15px}.u-popup__content__close--bottom-left[data-v-ca966c1e]{bottom:15px;left:15px}.u-popup__content__close--bottom-right[data-v-ca966c1e]{right:15px;bottom:15px} diff --git a/niucloud/public/wap/assets/u-popup.c9f22720.js b/niucloud/public/wap/assets/u-popup.c9f22720.js new file mode 100644 index 0000000..255a580 --- /dev/null +++ b/niucloud/public/wap/assets/u-popup.c9f22720.js @@ -0,0 +1 @@ +import{_ as t}from"./u-transition.24c0ace1.js";import{V as e,W as o,X as s,q as a,t as i,i as r,j as n,w as l,T as u,p as d,x as p,m as c,k as y,J as m,I as f}from"./index-c1dbaba4.js";import{_ as h}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as v}from"./u-icon.d4bf195f.js";import{_ as g}from"./u-safe-bottom.f0120e94.js";const b=h({name:"u-overlay",mixins:[o,s,{props:{show:{type:Boolean,default:e.overlay.show},zIndex:{type:[String,Number],default:e.overlay.zIndex},duration:{type:[String,Number],default:e.overlay.duration},opacity:{type:[String,Number],default:e.overlay.opacity}}}],computed:{overlayStyle(){const t={position:"fixed",top:0,left:0,right:0,zIndex:this.zIndex,bottom:0,"background-color":`rgba(0, 0, 0, ${this.opacity})`};return uni.$u.deepMerge(t,uni.$u.addStyle(this.customStyle))}},methods:{clickHandler(){this.$emit("click")}}},[["render",function(e,o,s,d,p,c){const y=a(i("u-transition"),t);return r(),n(y,{show:e.show,"custom-class":"u-overlay",duration:e.duration,"custom-style":c.overlayStyle,onClick:c.clickHandler},{default:l((()=>[u(e.$slots,"default",{},void 0,!0)])),_:3},8,["show","duration","custom-style","onClick"])}],["__scopeId","data-v-1ce16a4a"]]);const _=h({name:"u-status-bar",mixins:[o,s,{props:{bgColor:{type:String,default:e.statusBar.bgColor}}}],data:()=>({}),computed:{style(){const t={};return t.height=uni.$u.addUnit(uni.$u.sys().statusBarHeight,"px"),t.backgroundColor=this.bgColor,uni.$u.deepMerge(t,uni.$u.addStyle(this.customStyle))}}},[["render",function(t,e,o,s,a,i){const c=p;return r(),n(c,{style:d([i.style]),class:"u-status-bar"},{default:l((()=>[u(t.$slots,"default",{},void 0,!0)])),_:3},8,["style"])}],["__scopeId","data-v-df170e56"]]);const S=h({name:"u-popup",mixins:[o,s,{props:{show:{type:Boolean,default:e.popup.show},overlay:{type:Boolean,default:e.popup.overlay},mode:{type:String,default:e.popup.mode},duration:{type:[String,Number],default:e.popup.duration},closeable:{type:Boolean,default:e.popup.closeable},overlayStyle:{type:[Object,String],default:e.popup.overlayStyle},closeOnClickOverlay:{type:Boolean,default:e.popup.closeOnClickOverlay},zIndex:{type:[String,Number],default:e.popup.zIndex},safeAreaInsetBottom:{type:Boolean,default:e.popup.safeAreaInsetBottom},safeAreaInsetTop:{type:Boolean,default:e.popup.safeAreaInsetTop},closeIconPos:{type:String,default:e.popup.closeIconPos},round:{type:[Boolean,String,Number],default:e.popup.round},zoom:{type:Boolean,default:e.popup.zoom},bgColor:{type:String,default:e.popup.bgColor},overlayOpacity:{type:[Number,String],default:e.popup.overlayOpacity}}}],data(){return{overlayDuration:this.duration+50}},watch:{show(t,e){}},computed:{transitionStyle(){const t={zIndex:this.zIndex,position:"fixed",display:"flex"};return t[this.mode]=0,"left"===this.mode||"right"===this.mode?uni.$u.deepMerge(t,{bottom:0,top:0}):"top"===this.mode||"bottom"===this.mode?uni.$u.deepMerge(t,{left:0,right:0}):"center"===this.mode?uni.$u.deepMerge(t,{alignItems:"center","justify-content":"center",top:0,left:0,right:0,bottom:0}):void 0},contentStyle(){const t={};if(uni.$u.sys(),"center"!==this.mode&&(t.flex=1),this.bgColor&&(t.backgroundColor=this.bgColor),this.round){const e=uni.$u.addUnit(this.round);"top"===this.mode?(t.borderBottomLeftRadius=e,t.borderBottomRightRadius=e):"bottom"===this.mode?(t.borderTopLeftRadius=e,t.borderTopRightRadius=e):"center"===this.mode&&(t.borderRadius=e)}return uni.$u.deepMerge(t,uni.$u.addStyle(this.customStyle))},position(){return"center"===this.mode?this.zoom?"fade-zoom":"fade":"left"===this.mode?"slide-left":"right"===this.mode?"slide-right":"bottom"===this.mode?"slide-up":"top"===this.mode?"slide-down":void 0}},methods:{overlayClick(){this.closeOnClickOverlay&&this.$emit("close")},close(t){this.$emit("close")},afterEnter(){this.$emit("open")},clickHandler(){"center"===this.mode&&this.overlayClick(),this.$emit("click")}}},[["render",function(e,o,s,h,S,k){const C=a(i("u-overlay"),b),I=a(i("u-status-bar"),_),$=a(i("u-icon"),v),x=p,w=a(i("u-safe-bottom"),g),B=a(i("u-transition"),t);return r(),n(x,{class:"u-popup"},{default:l((()=>[e.overlay?(r(),n(C,{key:0,show:e.show,onClick:k.overlayClick,duration:S.overlayDuration,customStyle:e.overlayStyle,opacity:e.overlayOpacity},null,8,["show","onClick","duration","customStyle","opacity"])):c("v-if",!0),y(B,{show:e.show,customStyle:k.transitionStyle,mode:k.position,duration:e.duration,onAfterEnter:k.afterEnter,onClick:k.clickHandler},{default:l((()=>[y(x,{class:"u-popup__content",style:d([k.contentStyle]),onClick:m(e.noop,["stop"])},{default:l((()=>[e.safeAreaInsetTop?(r(),n(I,{key:0})):c("v-if",!0),u(e.$slots,"default",{},void 0,!0),e.closeable?(r(),n(x,{key:1,onClick:m(k.close,["stop"]),class:f(["u-popup__content__close",["u-popup__content__close--"+e.closeIconPos]]),"hover-class":"u-popup__content__close--hover","hover-stay-time":"150"},{default:l((()=>[y($,{name:"close",color:"#909399",size:"18",bold:""})])),_:1},8,["onClick","class"])):c("v-if",!0),e.safeAreaInsetBottom?(r(),n(w,{key:2})):c("v-if",!0)])),_:3},8,["style","onClick"])])),_:3},8,["show","customStyle","mode","duration","onAfterEnter","onClick"])])),_:3})}],["__scopeId","data-v-ca966c1e"]]);export{S as _}; diff --git a/niucloud/public/wap/assets/u-safe-bottom-fd70ea8a.css b/niucloud/public/wap/assets/u-safe-bottom-fd70ea8a.css new file mode 100644 index 0000000..f5ded2c --- /dev/null +++ b/niucloud/public/wap/assets/u-safe-bottom-fd70ea8a.css @@ -0,0 +1 @@ +.u-safe-bottom[data-v-6e02536d]{width:100%} diff --git a/niucloud/public/wap/assets/u-safe-bottom.f0120e94.js b/niucloud/public/wap/assets/u-safe-bottom.f0120e94.js new file mode 100644 index 0000000..9c0e19e --- /dev/null +++ b/niucloud/public/wap/assets/u-safe-bottom.f0120e94.js @@ -0,0 +1 @@ +import{W as e,X as s,i as t,j as a,I as o,p as u,x as r}from"./index-c1dbaba4.js";import{_ as n}from"./_plugin-vue_export-helper.1b428a4d.js";const i=n({name:"u-safe-bottom",mixins:[e,s,{props:{}}],data:()=>({safeAreaBottomHeight:0,isNvue:!1}),computed:{style(){return uni.$u.deepMerge({},uni.$u.addStyle(this.customStyle))}},mounted(){}},[["render",function(e,s,n,i,m,l){const p=r;return t(),a(p,{class:o(["u-safe-bottom",[!m.isNvue&&"u-safe-area-inset-bottom"]]),style:u([l.style])},null,8,["style","class"])}],["__scopeId","data-v-6e02536d"]]);export{i as _}; diff --git a/niucloud/public/wap/assets/u-switch-71a4dc97.css b/niucloud/public/wap/assets/u-switch-71a4dc97.css new file mode 100644 index 0000000..228d2cc --- /dev/null +++ b/niucloud/public/wap/assets/u-switch-71a4dc97.css @@ -0,0 +1 @@ +uni-view[data-v-a17af18d],uni-scroll-view[data-v-a17af18d],uni-swiper-item[data-v-a17af18d]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-switch[data-v-a17af18d]{display:flex;flex-direction:row;box-sizing:border-box;position:relative;background-color:#fff;border-width:1px;border-radius:100px;transition:background-color .4s;border-color:rgba(0,0,0,.12);border-style:solid;justify-content:flex-end;align-items:center;overflow:hidden}.u-switch__node[data-v-a17af18d]{display:flex;flex-direction:row;align-items:center;justify-content:center;background-color:#fff;border-radius:100px;box-shadow:1px 1px 1px rgba(0,0,0,.25);transition-property:transform;transition-duration:.4s;transition-timing-function:cubic-bezier(.3,1.05,.4,1.05)}.u-switch__bg[data-v-a17af18d]{position:absolute;background-color:#fff;transition-property:transform;transition-duration:.4s;border-radius:0 100px 100px 0;transition-timing-function:ease}.u-switch--disabled[data-v-a17af18d]{opacity:.6} diff --git a/niucloud/public/wap/assets/u-switch.d5ecdabf.js b/niucloud/public/wap/assets/u-switch.d5ecdabf.js new file mode 100644 index 0000000..1865fcb --- /dev/null +++ b/niucloud/public/wap/assets/u-switch.d5ecdabf.js @@ -0,0 +1 @@ +import{V as e,W as t,X as i,q as a,t as s,i as l,j as o,w as n,k as c,p as u,I as d,x as r}from"./index-c1dbaba4.js";import{_ as h}from"./u-loading-icon.4b2cb429.js";import{_ as m}from"./_plugin-vue_export-helper.1b428a4d.js";const f=m({name:"u-switch",mixins:[t,i,{props:{loading:{type:Boolean,default:e.switch.loading},disabled:{type:Boolean,default:e.switch.disabled},size:{type:[String,Number],default:e.switch.size},activeColor:{type:String,default:e.switch.activeColor},inactiveColor:{type:String,default:e.switch.inactiveColor},modelValue:{type:[Boolean,String,Number],default:e.switch.value},activeValue:{type:[String,Number,Boolean],default:e.switch.activeValue},inactiveValue:{type:[String,Number,Boolean],default:e.switch.inactiveValue},asyncChange:{type:Boolean,default:e.switch.asyncChange},space:{type:[String,Number],default:e.switch.space}}}],watch:{modelValue:{immediate:!0,handler(e){e!==this.inactiveValue&&e!==this.activeValue&&uni.$u.error("v-model绑定的值必须为inactiveValue、activeValue二者之一")}}},data:()=>({bgColor:"#ffffff"}),computed:{isActive(){return this.modelValue===this.activeValue},switchStyle(){let e={};return e.width=uni.$u.addUnit(2*this.size+2),e.height=uni.$u.addUnit(Number(this.size)+2),this.customInactiveColor&&(e.borderColor="rgba(0, 0, 0, 0)"),e.backgroundColor=this.isActive?this.activeColor:this.inactiveColor,e},nodeStyle(){let e={};e.width=uni.$u.addUnit(this.size-this.space),e.height=uni.$u.addUnit(this.size-this.space);const t=this.isActive?uni.$u.addUnit(this.space):uni.$u.addUnit(this.size);return e.transform=`translateX(-${t})`,e},bgStyle(){let e={};return e.width=uni.$u.addUnit(2*Number(this.size)-this.size/2),e.height=uni.$u.addUnit(this.size),e.backgroundColor=this.inactiveColor,e.transform=`scale(${this.isActive?0:1})`,e},customInactiveColor(){return"#fff"!==this.inactiveColor&&"#ffffff"!==this.inactiveColor}},emits:["update:modelValue","change"],methods:{clickHandler(){if(!this.disabled&&!this.loading){const e=this.isActive?this.inactiveValue:this.activeValue;this.asyncChange||this.$emit("update:modelValue",e),this.$nextTick((()=>{this.$emit("change",e)}))}}}},[["render",function(e,t,i,m,f,v){const g=r,p=a(s("u-loading-icon"),h);return l(),o(g,{class:d(["u-switch",[e.disabled&&"u-switch--disabled"]]),style:u([v.switchStyle,e.$u.addStyle(e.customStyle)]),onClick:v.clickHandler},{default:n((()=>[c(g,{class:"u-switch__bg",style:u([v.bgStyle])},null,8,["style"]),c(g,{class:d(["u-switch__node",[e.modelValue&&"u-switch__node--on"]]),style:u([v.nodeStyle]),ref:"u-switch__node"},{default:n((()=>[c(p,{show:e.loading,mode:"circle",timingFunction:"linear",color:e.modelValue?e.activeColor:"#AAABAD",size:.6*e.size},null,8,["show","color","size"])])),_:1},8,["class","style"])])),_:1},8,["class","style","onClick"])}],["__scopeId","data-v-a17af18d"]]);export{f as _}; diff --git a/niucloud/public/wap/assets/u-tabbar-063ed93b.css b/niucloud/public/wap/assets/u-tabbar-063ed93b.css new file mode 100644 index 0000000..b0996b6 --- /dev/null +++ b/niucloud/public/wap/assets/u-tabbar-063ed93b.css @@ -0,0 +1 @@ +uni-view[data-v-99cd5b85],uni-scroll-view[data-v-99cd5b85],uni-swiper-item[data-v-99cd5b85]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-badge[data-v-99cd5b85]{border-radius:100px;display:flex;flex-direction:row;line-height:11px;text-align:center;font-size:11px;color:#fff}.u-badge--dot[data-v-99cd5b85]{height:8px;width:8px}.u-badge--inverted[data-v-99cd5b85]{font-size:13px}.u-badge--not-dot[data-v-99cd5b85]{padding:2px 5px}.u-badge--horn[data-v-99cd5b85]{border-bottom-left-radius:0}.u-badge--primary[data-v-99cd5b85]{background-color:var(--primary-color)}.u-badge--primary--inverted[data-v-99cd5b85]{color:var(--primary-color)}.u-badge--error[data-v-99cd5b85]{background-color:#f56c6c}.u-badge--error--inverted[data-v-99cd5b85]{color:#f56c6c}.u-badge--success[data-v-99cd5b85]{background-color:#5ac725}.u-badge--success--inverted[data-v-99cd5b85]{color:#5ac725}.u-badge--info[data-v-99cd5b85]{background-color:#909399}.u-badge--info--inverted[data-v-99cd5b85]{color:#909399}.u-badge--warning[data-v-99cd5b85]{background-color:#f9ae3d}.u-badge--warning--inverted[data-v-99cd5b85]{color:#f9ae3d}uni-view[data-v-b564ac71],uni-scroll-view[data-v-b564ac71],uni-swiper-item[data-v-b564ac71]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-tabbar[data-v-b564ac71]{display:flex;flex-direction:column;flex:1;justify-content:center}.u-tabbar__content[data-v-b564ac71]{display:flex;flex-direction:column;background-color:#fff}.u-tabbar__content__item-wrapper[data-v-b564ac71]{height:50px;display:flex;flex-direction:row;justify-content:space-around}.u-tabbar--fixed[data-v-b564ac71]{position:fixed;bottom:0;left:0;right:0} diff --git a/niucloud/public/wap/assets/u-tabbar.7b503373.js b/niucloud/public/wap/assets/u-tabbar.7b503373.js new file mode 100644 index 0000000..46f6c02 --- /dev/null +++ b/niucloud/public/wap/assets/u-tabbar.7b503373.js @@ -0,0 +1 @@ +import{V as e,W as t,X as a,i as o,j as l,w as r,K as s,L as u,I as d,p as i,m as n,N as h,q as b,t as p,k as c,J as f,T as g,x as m}from"./index-c1dbaba4.js";import{_ as y}from"./_plugin-vue_export-helper.1b428a4d.js";import{_ as v}from"./u-safe-bottom.f0120e94.js";const _=y({name:"u-badge",mixins:[t,{props:{isDot:{type:Boolean,default:e.badge.isDot},value:{type:[Number,String],default:e.badge.value},modelValue:{type:[Number,String],default:e.badge.modelValue},show:{type:Boolean,default:e.badge.show},max:{type:[Number,String],default:e.badge.max},type:{type:String,default:e.badge.type},showZero:{type:Boolean,default:e.badge.showZero},bgColor:{type:[String,null],default:e.badge.bgColor},color:{type:[String,null],default:e.badge.color},shape:{type:String,default:e.badge.shape},numberType:{type:String,default:e.badge.numberType},offset:{type:Array,default:e.badge.offset},inverted:{type:Boolean,default:e.badge.inverted},absolute:{type:Boolean,default:e.badge.absolute}}},a],computed:{boxStyle:()=>({}),badgeStyle(){const e={};if(this.color&&(e.color=this.color),this.bgColor&&!this.inverted&&(e.backgroundColor=this.bgColor),this.absolute&&(e.position="absolute",this.offset.length)){const t=this.offset[0],a=this.offset[1]||t;e.top=uni.$u.addUnit(t),e.right=uni.$u.addUnit(a)}return e},showValue(){switch(this.numberType){case"overflow":return Number(this.value)>Number(this.max)?this.max+"+":this.value;case"ellipsis":return Number(this.value)>Number(this.max)?"...":this.value;case"limit":return Number(this.value)>999?Number(this.value)>=9999?Math.floor(this.value/1e4*100)/100+"w":Math.floor(this.value/1e3*100)/100+"k":this.value;default:return Number(this.value)}}}},[["render",function(e,t,a,b,p,c){const f=h;return e.show&&(0!==Number(e.value)||e.showZero||e.isDot)?(o(),l(f,{key:0,class:d([[e.isDot?"u-badge--dot":"u-badge--not-dot",e.inverted&&"u-badge--inverted","horn"===e.shape&&"u-badge--horn",`u-badge--${e.type}${e.inverted?"--inverted":""}`],"u-badge"]),style:i([e.$u.addStyle(e.customStyle),c.badgeStyle])},{default:r((()=>[s(u(e.isDot?"":c.showValue),1)])),_:1},8,["class","style"])):n("v-if",!0)}],["__scopeId","data-v-99cd5b85"]]);const x=y({name:"u-tabbar",mixins:[t,a,{props:{value:{type:[String,Number,null],default:e.tabbar.value},safeAreaInsetBottom:{type:Boolean,default:e.tabbar.safeAreaInsetBottom},border:{type:Boolean,default:e.tabbar.border},zIndex:{type:[String,Number],default:e.tabbar.zIndex},activeColor:{type:String,default:e.tabbar.activeColor},inactiveColor:{type:String,default:e.tabbar.inactiveColor},fixed:{type:Boolean,default:e.tabbar.fixed},placeholder:{type:Boolean,default:e.tabbar.placeholder}}}],data:()=>({placeholderHeight:0}),computed:{tabbarStyle(){const e={zIndex:this.zIndex};return uni.$u.deepMerge(e,uni.$u.addStyle(this.customStyle))},updateChild(){return[this.value,this.activeColor,this.inactiveColor]},updatePlaceholder(){return[this.fixed,this.placeholder]}},watch:{updateChild(){this.updateChildren()},updatePlaceholder(){this.setPlaceholderHeight()}},created(){this.children=[]},mounted(){this.setPlaceholderHeight()},methods:{updateChildren(){this.children.length&&this.children.map((e=>e.updateFromParent()))},async setPlaceholderHeight(){this.fixed&&this.placeholder&&(await uni.$u.sleep(20),this.$uGetRect(".u-tabbar__content").then((({height:e=50})=>{this.placeholderHeight=e})))}}},[["render",function(e,t,a,s,u,h){const y=m,_=b(p("u-safe-bottom"),v);return o(),l(y,{class:"u-tabbar"},{default:r((()=>[c(y,{class:d(["u-tabbar__content",[e.border&&"u-border-top",e.fixed&&"u-tabbar--fixed"]]),ref:"u-tabbar__content",onTouchmove:f(e.noop,["stop","prevent"]),style:i([h.tabbarStyle])},{default:r((()=>[c(y,{class:"u-tabbar__content__item-wrapper"},{default:r((()=>[g(e.$slots,"default",{},void 0,!0)])),_:3}),e.safeAreaInsetBottom?(o(),l(_,{key:0})):n("v-if",!0)])),_:3},8,["onTouchmove","class","style"]),e.placeholder?(o(),l(y,{key:0,class:"u-tabbar__placeholder",style:i({height:u.placeholderHeight+"px"})},null,8,["style"])):n("v-if",!0)])),_:3})}],["__scopeId","data-v-b564ac71"]]);export{_,x as a}; diff --git a/niucloud/public/wap/assets/u-transition-e532dbd1.css b/niucloud/public/wap/assets/u-transition-e532dbd1.css new file mode 100644 index 0000000..61443be --- /dev/null +++ b/niucloud/public/wap/assets/u-transition-e532dbd1.css @@ -0,0 +1 @@ +uni-view[data-v-bb806228],uni-scroll-view[data-v-bb806228],uni-swiper-item[data-v-bb806228]{display:flex;flex-direction:column;flex-shrink:0;flex-grow:0;flex-basis:auto;align-items:stretch;align-content:flex-start}.u-fade-enter-active[data-v-bb806228],.u-fade-leave-active[data-v-bb806228]{transition-property:opacity}.u-fade-enter[data-v-bb806228],.u-fade-leave-to[data-v-bb806228]{opacity:0}.u-fade-zoom-enter[data-v-bb806228],.u-fade-zoom-leave-to[data-v-bb806228]{transform:scale(.95);opacity:0}.u-fade-zoom-enter-active[data-v-bb806228],.u-fade-zoom-leave-active[data-v-bb806228]{transition-property:transform,opacity}.u-fade-down-enter-active[data-v-bb806228],.u-fade-down-leave-active[data-v-bb806228],.u-fade-left-enter-active[data-v-bb806228],.u-fade-left-leave-active[data-v-bb806228],.u-fade-right-enter-active[data-v-bb806228],.u-fade-right-leave-active[data-v-bb806228],.u-fade-up-enter-active[data-v-bb806228],.u-fade-up-leave-active[data-v-bb806228]{transition-property:opacity,transform}.u-fade-up-enter[data-v-bb806228],.u-fade-up-leave-to[data-v-bb806228]{transform:translate3d(0,100%,0);opacity:0}.u-fade-down-enter[data-v-bb806228],.u-fade-down-leave-to[data-v-bb806228]{transform:translate3d(0,-100%,0);opacity:0}.u-fade-left-enter[data-v-bb806228],.u-fade-left-leave-to[data-v-bb806228]{transform:translate3d(-100%,0,0);opacity:0}.u-fade-right-enter[data-v-bb806228],.u-fade-right-leave-to[data-v-bb806228]{transform:translate3d(100%,0,0);opacity:0}.u-slide-down-enter-active[data-v-bb806228],.u-slide-down-leave-active[data-v-bb806228],.u-slide-left-enter-active[data-v-bb806228],.u-slide-left-leave-active[data-v-bb806228],.u-slide-right-enter-active[data-v-bb806228],.u-slide-right-leave-active[data-v-bb806228],.u-slide-up-enter-active[data-v-bb806228],.u-slide-up-leave-active[data-v-bb806228]{transition-property:transform}.u-slide-up-enter[data-v-bb806228],.u-slide-up-leave-to[data-v-bb806228]{transform:translate3d(0,100%,0)}.u-slide-down-enter[data-v-bb806228],.u-slide-down-leave-to[data-v-bb806228]{transform:translate3d(0,-100%,0)}.u-slide-left-enter[data-v-bb806228],.u-slide-left-leave-to[data-v-bb806228]{transform:translate3d(-100%,0,0)}.u-slide-right-enter[data-v-bb806228],.u-slide-right-leave-to[data-v-bb806228]{transform:translate3d(100%,0,0)}.u-zoom-enter-active[data-v-bb806228],.u-zoom-leave-active[data-v-bb806228]{transition-property:transform}.u-zoom-enter[data-v-bb806228],.u-zoom-leave-to[data-v-bb806228]{transform:scale(.95)} diff --git a/niucloud/public/wap/assets/u-transition.24c0ace1.js b/niucloud/public/wap/assets/u-transition.24c0ace1.js new file mode 100644 index 0000000..d8d7159 --- /dev/null +++ b/niucloud/public/wap/assets/u-transition.24c0ace1.js @@ -0,0 +1 @@ +import{V as t,aP as e,W as i,X as s,i as n,j as a,w as o,T as r,I as l,p as u,m as d,x as h}from"./index-c1dbaba4.js";import{_ as c}from"./_plugin-vue_export-helper.1b428a4d.js";const m={props:{show:{type:Boolean,default:t.transition.show},mode:{type:String,default:t.transition.mode},duration:{type:[String,Number],default:t.transition.duration},timingFunction:{type:String,default:t.transition.timingFunction}}},v=t=>({enter:`u-${t}-enter u-${t}-enter-active`,"enter-to":`u-${t}-enter-to u-${t}-enter-active`,leave:`u-${t}-leave u-${t}-leave-active`,"leave-to":`u-${t}-leave-to u-${t}-leave-active`});const p=c({name:"u-transition",data:()=>({inited:!1,viewStyle:{},status:"",transitionEnded:!1,display:!1,classes:""}),emits:["click","beforeEnter","enter","afterEnter","beforeLeave","leave","afterLeave"],computed:{mergeStyle(){const{viewStyle:t,customStyle:e}=this;return{transitionDuration:`${this.duration}ms`,transitionTimingFunction:this.timingFunction,...uni.$u.addStyle(e),...t}}},mixins:[i,s,{methods:{clickHandler(){this.$emit("click")},async vueEnter(){const t=v(this.mode);this.status="enter",this.$emit("beforeEnter"),this.inited=!0,this.display=!0,this.classes=t.enter,await e(),await uni.$u.sleep(20),this.$emit("enter"),this.transitionEnded=!1,this.$emit("afterEnter"),this.classes=t["enter-to"]},async vueLeave(){if(!this.display)return;const t=v(this.mode);this.status="leave",this.$emit("beforeLeave"),this.classes=t.leave,await e(),this.transitionEnded=!1,this.$emit("leave"),setTimeout(this.onTransitionEnd,this.duration),this.classes=t["leave-to"]},onTransitionEnd(){this.transitionEnded||(this.transitionEnded=!0,this.$emit("leave"===this.status?"afterLeave":"afterEnter"),!this.show&&this.display&&(this.display=!1,this.inited=!1))}}},m],watch:{show:{handler(t){t?this.vueEnter():this.vueLeave()},immediate:!0}}},[["render",function(t,e,i,s,c,m){const v=h;return c.inited?(n(),a(v,{key:0,class:l(["u-transition",c.classes]),ref:"u-transition",onClick:t.clickHandler,style:u([m.mergeStyle]),onTouchmove:t.noop},{default:o((()=>[r(t.$slots,"default",{},void 0,!0)])),_:3},8,["onClick","class","style","onTouchmove"])):d("v-if",!0)}],["__scopeId","data-v-bb806228"]]);export{p as _}; diff --git a/niucloud/public/wap/assets/uni.af41fdd3.css b/niucloud/public/wap/assets/uni.af41fdd3.css new file mode 100644 index 0000000..8bfb37a --- /dev/null +++ b/niucloud/public/wap/assets/uni.af41fdd3.css @@ -0,0 +1 @@ +uni-button{position:relative;display:block;margin-left:auto;margin-right:auto;padding-left:14px;padding-right:14px;box-sizing:border-box;font-size:18px;text-align:center;text-decoration:none;line-height:2.55555556;border-radius:5px;-webkit-tap-highlight-color:transparent;overflow:hidden;color:#000;background-color:#f8f8f8;cursor:pointer}uni-button[hidden]{display:none!important}uni-button:after{content:" ";width:200%;height:200%;position:absolute;top:0;left:0;border:1px solid rgba(0,0,0,.2);transform:scale(.5);transform-origin:0 0;box-sizing:border-box;border-radius:10px}uni-button[native]{padding-left:0;padding-right:0}uni-button[native] .uni-button-cover-view-wrapper{border:inherit;border-color:inherit;border-radius:inherit;background-color:inherit}uni-button[native] .uni-button-cover-view-inner{padding-left:14px;padding-right:14px}uni-button uni-cover-view{line-height:inherit;white-space:inherit}uni-button[type=default]{color:#000;background-color:#f8f8f8}uni-button[type=primary]{color:#fff;background-color:#007aff}uni-button[type=warn]{color:#fff;background-color:#e64340}uni-button[disabled]{color:rgba(255,255,255,.6);cursor:not-allowed}uni-button[disabled][type=default],uni-button[disabled]:not([type]){color:rgba(0,0,0,.3);background-color:#f7f7f7}uni-button[disabled][type=primary]{background-color:rgba(0,122,255,.6)}uni-button[disabled][type=warn]{background-color:#ec8b89}uni-button[type=primary][plain]{color:#007aff;border:1px solid #007aff;background-color:transparent}uni-button[type=primary][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=primary][plain]:after{border-width:0}uni-button[type=default][plain]{color:#353535;border:1px solid #353535;background-color:transparent}uni-button[type=default][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=default][plain]:after{border-width:0}uni-button[plain]{color:#353535;border:1px solid #353535;background-color:transparent}uni-button[plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[plain]:after{border-width:0}uni-button[plain][native] .uni-button-cover-view-inner{padding:0}uni-button[type=warn][plain]{color:#e64340;border:1px solid #e64340;background-color:transparent}uni-button[type=warn][plain][disabled]{color:rgba(0,0,0,.2);border-color:rgba(0,0,0,.2)}uni-button[type=warn][plain]:after{border-width:0}uni-button[size=mini]{display:inline-block;line-height:2.3;font-size:13px;padding:0 1.34em}uni-button[size=mini][native]{padding:0}uni-button[size=mini][native] .uni-button-cover-view-inner{padding:0 1.34em}uni-button[loading]:not([disabled]){cursor:progress}uni-button[loading]:before{content:" ";display:inline-block;width:18px;height:18px;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}uni-button[loading][type=primary]{color:rgba(255,255,255,.6);background-color:#0062cc}uni-button[loading][type=primary][plain]{color:#007aff;background-color:transparent}uni-button[loading][type=default]{color:rgba(0,0,0,.6);background-color:#dedede}uni-button[loading][type=default][plain]{color:#353535;background-color:transparent}uni-button[loading][type=warn]{color:rgba(255,255,255,.6);background-color:#ce3c39}uni-button[loading][type=warn][plain]{color:#e64340;background-color:transparent}uni-button[loading][native]:before{content:none}.button-hover{color:rgba(0,0,0,.6);background-color:#dedede}.button-hover[plain]{color:rgba(53,53,53,.6);border-color:rgba(53,53,53,.6);background-color:transparent}.button-hover[type=primary]{color:rgba(255,255,255,.6);background-color:#0062cc}.button-hover[type=primary][plain]{color:rgba(0,122,255,.6);border-color:rgba(0,122,255,.6);background-color:transparent}.button-hover[type=default]{color:rgba(0,0,0,.6);background-color:#dedede}.button-hover[type=default][plain]{color:rgba(53,53,53,.6);border-color:rgba(53,53,53,.6);background-color:transparent}.button-hover[type=warn]{color:rgba(255,255,255,.6);background-color:#ce3c39}.button-hover[type=warn][plain]{color:rgba(230,67,64,.6);border-color:rgba(230,67,64,.6);background-color:transparent}uni-image{width:320px;height:240px;display:inline-block;overflow:hidden;position:relative}uni-image[hidden]{display:none}uni-image>div{width:100%;height:100%;background-repeat:no-repeat}uni-image>img{-webkit-touch-callout:none;user-select:none;display:block;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}uni-image>.uni-image-will-change{will-change:transform}uni-input{display:block;font-size:16px;line-height:1.4em;height:1.4em;min-height:1.4em;overflow:hidden}uni-input[hidden]{display:none}.uni-input-wrapper,.uni-input-placeholder,.uni-input-form,.uni-input-input{outline:none;border:none;padding:0;margin:0;text-decoration:inherit}.uni-input-wrapper,.uni-input-form{display:flex;position:relative;width:100%;height:100%;flex-direction:column;justify-content:center}.uni-input-placeholder,.uni-input-input{width:100%}.uni-input-placeholder{position:absolute;top:auto!important;left:0;color:gray;overflow:hidden;text-overflow:clip;white-space:pre;word-break:keep-all;pointer-events:none;line-height:inherit}.uni-input-input{position:relative;display:block;height:100%;background:none;color:inherit;opacity:1;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;text-indent:inherit;text-transform:inherit;text-shadow:inherit}.uni-input-input[type=search]::-webkit-search-cancel-button,.uni-input-input[type=search]::-webkit-search-decoration{display:none}.uni-input-input::-webkit-outer-spin-button,.uni-input-input::-webkit-inner-spin-button{appearance:none;margin:0}.uni-input-input[type=number]{-moz-appearance:textfield}.uni-input-input:disabled{-webkit-text-fill-color:currentcolor}uni-movable-area{display:block;position:relative;width:10px;height:10px}uni-movable-area[hidden]{display:none}uni-movable-view{display:inline-block;width:10px;height:10px;top:0px;left:0px;position:absolute;cursor:grab}uni-movable-view[hidden]{display:none}uni-picker-view-column{flex:1;position:relative;height:100%;overflow:hidden}uni-picker-view-column[hidden]{display:none}.uni-picker-view-group{height:100%;overflow:hidden}.uni-picker-view-mask{transform:translateZ(0)}.uni-picker-view-indicator,.uni-picker-view-mask{position:absolute;left:0;width:100%;z-index:3;pointer-events:none}.uni-picker-view-mask{top:0;height:100%;margin:0 auto;background-image:linear-gradient(180deg,hsla(0,0%,100%,.95),hsla(0,0%,100%,.6)),linear-gradient(0deg,hsla(0,0%,100%,.95),hsla(0,0%,100%,.6));background-position:top,bottom;background-size:100% 102px;background-repeat:no-repeat;transform:translateZ(0)}.uni-picker-view-indicator{height:34px;top:50%;transform:translateY(-50%)}.uni-picker-view-content{position:absolute;top:0;left:0;width:100%;will-change:transform;padding:102px 0;cursor:pointer}.uni-picker-view-content>*{height:34px;overflow:hidden}.uni-picker-view-indicator:before{top:0;border-top:1px solid #e5e5e5;transform-origin:0 0;transform:scaleY(.5)}.uni-picker-view-indicator:after{bottom:0;border-bottom:1px solid #e5e5e5;transform-origin:0 100%;transform:scaleY(.5)}.uni-picker-view-indicator:after,.uni-picker-view-indicator:before{content:" ";position:absolute;left:0;right:0;height:1px;color:#e5e5e5}uni-picker-view{display:block}.uni-picker-view-wrapper{display:flex;position:relative;overflow:hidden;height:100%}uni-picker-view[hidden]{display:none}@keyframes once-show{0%{top:0}}uni-resize-sensor,uni-resize-sensor>div{position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden}uni-resize-sensor{display:block;z-index:-1;visibility:hidden;animation:once-show 1ms}uni-resize-sensor>div>div{position:absolute;left:0;top:0}uni-resize-sensor>div:first-child>div{width:100000px;height:100000px}uni-resize-sensor>div:last-child>div{width:200%;height:200%}uni-scroll-view{display:block;width:100%}uni-scroll-view[hidden]{display:none}.uni-scroll-view{position:relative;-webkit-overflow-scrolling:touch;width:100%;height:100%;max-height:inherit}.uni-scroll-view-content{width:100%;height:100%}.uni-scroll-view-refresher{position:relative;overflow:hidden}.uni-scroll-view-refresh{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:row;justify-content:center;align-items:center}.uni-scroll-view-refresh-inner{display:flex;align-items:center;justify-content:center;line-height:0;width:40px;height:40px;border-radius:50%;background-color:#fff;box-shadow:0 1px 6px rgba(0,0,0,.118),0 1px 4px rgba(0,0,0,.118)}.uni-scroll-view-refresh__spinner{transform-origin:center center;animation:uni-scroll-view-refresh-rotate 2s linear infinite}.uni-scroll-view-refresh__spinner>circle{stroke:currentColor;stroke-linecap:round;animation:uni-scroll-view-refresh-dash 2s linear infinite}@keyframes uni-scroll-view-refresh-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes uni-scroll-view-refresh-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}uni-swiper-item{display:block;overflow:hidden;will-change:transform;position:absolute;width:100%;height:100%;cursor:grab}uni-swiper-item[hidden]{display:none}uni-swiper{display:block;height:150px}uni-swiper[hidden]{display:none}.uni-swiper-wrapper{overflow:hidden;position:relative;width:100%;height:100%;transform:translateZ(0)}.uni-swiper-slides{position:absolute;left:0;top:0;right:0;bottom:0}.uni-swiper-slide-frame{position:absolute;left:0;top:0;width:100%;height:100%;will-change:transform}.uni-swiper-dots{position:absolute;font-size:0}.uni-swiper-dots-horizontal{left:50%;bottom:10px;text-align:center;white-space:nowrap;transform:translate(-50%)}.uni-swiper-dots-horizontal .uni-swiper-dot{margin-right:8px}.uni-swiper-dots-horizontal .uni-swiper-dot:last-child{margin-right:0}.uni-swiper-dots-vertical{right:10px;top:50%;text-align:right;transform:translateY(-50%)}.uni-swiper-dots-vertical .uni-swiper-dot{display:block;margin-bottom:9px}.uni-swiper-dots-vertical .uni-swiper-dot:last-child{margin-bottom:0}.uni-swiper-dot{display:inline-block;width:8px;height:8px;cursor:pointer;transition-property:background-color;transition-timing-function:ease;background:rgba(0,0,0,.3);border-radius:50%}.uni-swiper-dot-active{background-color:#000}.uni-swiper-navigation{width:26px;height:26px;cursor:pointer;position:absolute;top:50%;margin-top:-13px;display:flex;align-items:center;transition:all .2s;border-radius:50%;opacity:1}.uni-swiper-navigation-disabled{opacity:.35;cursor:not-allowed}.uni-swiper-navigation-hide{opacity:0;cursor:auto;pointer-events:none}.uni-swiper-navigation-prev{left:10px}.uni-swiper-navigation-prev svg{margin-left:-1px;left:10px}.uni-swiper-navigation-prev.uni-swiper-navigation-vertical{top:18px;left:50%;margin-left:-13px}.uni-swiper-navigation-prev.uni-swiper-navigation-vertical svg{transform:rotate(90deg);margin-left:auto;margin-top:-2px}.uni-swiper-navigation-next{right:10px}.uni-swiper-navigation-next svg{transform:rotate(180deg)}.uni-swiper-navigation-next.uni-swiper-navigation-vertical{top:auto;bottom:5px;left:50%;margin-left:-13px}.uni-swiper-navigation-next.uni-swiper-navigation-vertical svg{margin-top:2px;transform:rotate(270deg)}uni-text[selectable]{cursor:auto;user-select:text}uni-text{white-space:pre-line}uni-view{display:block}uni-view[hidden]{display:none}uni-map{position:relative;width:300px;height:150px;display:block}uni-map[hidden]{display:none}.amap-marker-label{padding:0;border:none;background-color:transparent}.amap-marker>.amap-icon>img{left:0!important;top:0!important}.uni-map-control{position:absolute;width:0;height:0;top:0;left:0;z-index:999}.uni-map-control-icon{position:absolute;max-width:initial}.uni-system-choose-location{display:block;position:fixed;left:0;top:0;width:100%;height:100%;background:#f8f8f8;z-index:999}.uni-system-choose-location .map{position:absolute;top:0;left:0;width:100%;height:300px}.uni-system-choose-location .map-location{position:absolute;left:50%;bottom:50%;width:32px;height:52px;margin-left:-16px;cursor:pointer;background-size:100%}.uni-system-choose-location .map-move{position:absolute;bottom:50px;right:10px;width:40px;height:40px;box-sizing:border-box;line-height:40px;background-color:#fff;border-radius:50%;pointer-events:auto;cursor:pointer;box-shadow:0 0 5px 1px rgba(0,0,0,.3)}.uni-system-choose-location .map-move>svg{display:block;width:100%;height:100%;box-sizing:border-box;padding:8px}.uni-system-choose-location .nav{position:absolute;top:0;left:0;width:100%;height:44px;background-color:transparent;background-image:linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,0))}.uni-system-choose-location .nav-btn{position:absolute;box-sizing:border-box;top:0;left:0;width:60px;height:44px;padding:6px;line-height:32px;font-size:26px;color:#fff;text-align:center;cursor:pointer}.uni-system-choose-location .nav-btn.confirm{left:auto;right:0}.uni-system-choose-location .nav-btn.disable{opacity:.4}.uni-system-choose-location .nav-btn>svg{display:block;width:100%;height:100%;border-radius:2px;box-sizing:border-box;padding:3px}.uni-system-choose-location .nav-btn.confirm>svg{background-color:#007aff;padding:5px}.uni-system-choose-location .menu{position:absolute;top:300px;left:0;width:100%;bottom:0;background-color:#fff}.uni-system-choose-location .search{display:flex;flex-direction:row;height:50px;padding:8px;line-height:34px;box-sizing:border-box;background-color:#fff}.uni-system-choose-location .search-input{flex:1;height:100%;border-radius:5px;padding:0 5px;background:#ebebeb}.uni-system-choose-location .search-btn{margin-left:5px;color:#007aff;font-size:17px;text-align:center}.uni-system-choose-location .list{position:absolute;top:50px;left:0;width:100%;bottom:0;padding-bottom:10px}.uni-system-choose-location .list-loading{display:flex;height:50px;justify-content:center;align-items:center}.uni-system-choose-location .list-item{position:relative;padding:10px 40px 10px 10px;cursor:pointer}.uni-system-choose-location .list-item>svg{display:none;position:absolute;top:50%;right:10px;width:30px;height:30px;margin-top:-15px;box-sizing:border-box;padding:5px}.uni-system-choose-location .list-item.selected>svg{display:block}.uni-system-choose-location .list-item:not(:last-child):after{position:absolute;content:"";height:1px;left:10px;bottom:0;width:100%;background-color:#d3d3d3}.uni-system-choose-location .list-item-title{font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.uni-system-choose-location .list-item-detail{font-size:12px;color:gray;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media screen and (min-width: 800px){.uni-system-choose-location .map{top:0;height:100%}.uni-system-choose-location .map-move{bottom:10px;right:320px}.uni-system-choose-location .menu{top:54px;left:auto;right:10px;width:300px;bottom:10px;max-height:600px;box-shadow:0 0 20px 5px rgba(0,0,0,.3)}}uni-toast{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;display:block;box-sizing:border-box;pointer-events:none;font-size:16px}.uni-sample-toast{position:fixed;z-index:999;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;max-width:80%}.uni-simple-toast__text{display:inline-block;vertical-align:middle;color:#fff;background-color:rgba(17,17,17,.7);padding:10px 20px;border-radius:5px;font-size:13px;text-align:center;max-width:100%;word-break:break-all;white-space:normal}uni-toast .uni-mask{pointer-events:auto}.uni-toast{position:fixed;z-index:999;width:8em;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(17,17,17,.7);text-align:center;border-radius:5px;color:#fff}.uni-toast *{box-sizing:border-box}.uni-toast__icon{margin:20px 0 0;width:38px!important;height:38px!important;vertical-align:baseline!important}.uni-icon_toast{margin:15px 0 0}.uni-icon_toast.uni-icon-success-no-circle:before{color:#fff;font-size:55px}.uni-icon_toast.uni-loading{margin:20px 0 0;width:38px;height:38px;vertical-align:baseline}.uni-toast__content{margin:0 0 15px}uni-video{width:300px;height:225px;display:inline-block;line-height:0;overflow:hidden;position:relative}uni-video[hidden]{display:none}.uni-video-container{width:100%;height:100%;background-color:#000;display:inline-block;position:absolute;top:0;left:0;overflow:hidden;object-position:inherit}.uni-video-container.uni-video-type-fullscreen{position:fixed;z-index:999}.uni-video-video{width:100%;height:100%;object-position:inherit}.uni-video-cover{position:absolute;top:0;left:0;bottom:0;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:rgba(1,1,1,.5);z-index:1}.uni-video-slots{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.uni-video-cover-play-button{width:40px;height:40px;background-size:50%;background-repeat:no-repeat;background-position:50% 50%;cursor:pointer}.uni-video-cover-duration{color:#fff;font-size:16px;line-height:1;margin-top:10px}.uni-video-bar{height:44px;background-color:rgba(0,0,0,.5);overflow:hidden;position:absolute;bottom:0;right:0;display:flex;align-items:center;padding:0 10px;z-index:0;transform:translateZ(0)}.uni-video-bar.uni-video-bar-full{left:0}.uni-video-controls{display:flex;flex-grow:1;margin:0 8.5px}.uni-video-control-button{width:13px;height:15px;padding:14.5px 12.5px;margin-left:-8.5px;box-sizing:content-box;cursor:pointer}.uni-video-control-button:after{content:"";display:block;width:100%;height:100%;background-size:100%;background-position:50% 50%;background-repeat:no-repeat}.uni-video-control-button.uni-video-control-button-play:after,.uni-video-cover-play-button{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAeCAYAAAAy2w7YAAAAAXNSR0IArs4c6QAAAWhJREFUSA1j+P///0cgBoHjQGzCQCsAtgJB/AMy5wCxGNXtQ9iBwvoA5BUCMQvVLEQxHpNzDSjkRhXLMM3GKrIeKKpEkYVYjcUu+AMo3ALE3GRZiN1MvKKPgbIRJFuG10j8koeA0gZEW4jfLIKyf4EqpgOxMEELCRpFnIJ3QGU5QMyM00LizCFa1SWgSkeslhFtBGkKVwGVy6FYSJp+klR/A6quB2JOkIWMIK0oNlOf8xBoZDE9LAI7nYn6HsBq4l96WHQEaLUpAyiOaASeAM2NgvuPBpaACt82IEYtfKls0UagecpwXyAzqGTRdaA57sjmYrAptAjUsCkGYlYMg9EFyLQI1IiZB8Ti6Obh5JNh0QmgHlOcBuKSIMGi50C18UDMiMssvOJEWPQLqKYbiHnxGkRIkoBF24DyaoTMIEoeh0W3geI+RBlArCI0iz4D+RVAzEasfqLVAQ19AcSg5LoYiKWI1kiiQgCMBLnEEcfDSgAAAABJRU5ErkJggg==)}.uni-video-control-button.uni-video-control-button-pause:after{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAAAXNSR0IArs4c6QAAAFlJREFUSA3tksEKACAIQ7X//5zq98wOgQayum8QaGweHhMzG/6OujzKAymn+0LMqivu1XznWmX8/echTIyMyAgTwA72iIwwAexgj8gIE8CO3aMRbDPMaEy5BRGaKcZv8YxRAAAAAElFTkSuQmCC)}.uni-video-current-time,.uni-video-duration{height:14.5px;line-height:14.5px;margin-top:15px;margin-bottom:14.5px;font-size:12px;color:#cbcbcb}.uni-video-progress-container{flex-grow:2;position:relative}.uni-video-progress{height:2px;margin:21px 12px;background-color:rgba(255,255,255,.4);position:relative;cursor:pointer}.uni-video-progress-buffered{position:absolute;left:0;top:0;width:0;height:100%;transition:width .1s;background-color:rgba(255,255,255,.8)}.uni-video-ball{width:16px;height:16px;padding:14px;position:absolute;top:-21px;box-sizing:content-box;left:0%;margin-left:-22px}.uni-video-inner{width:100%;height:100%;background-color:#fff;border-radius:50%}.uni-video-danmu-button{white-space:nowrap;line-height:1;padding:2px 10px;border:1px solid #fff;border-radius:5px;font-size:13px;color:#fff;margin:0 8.5px;cursor:pointer}.uni-video-danmu-button.uni-video-danmu-button-active{border-color:#48c23d;color:#48c23d}.uni-video-fullscreen{width:17px;height:17px;padding:8.5px;box-sizing:content-box;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiCAYAAAA6RwvCAAAAAXNSR0IArs4c6QAAAQRJREFUWAnt1d0NwiAQB/CmS7hHX5zFxLF0Ah2hE/lg7BT4PyMJUj6Oyt299BIioZT7ARYG59wLpTXmoXOMGO/QecxtwyWW4o42AupGALkFdX1MkHxE3Q7jIbQPqNthQogpJoZkMLRlsn/gFMQEk4OoY0oQVUwNoobhQFQwgMxUKFkt0C8+Zy61d8SeR5iHWCLOwF/MCb8Tp//ex3QFsE1HlCfKFUX2OijNFMnPKD7k76YcBoL402Zh8B77+MjlXrVvwfglXA32b0MrRgxCE2nBiEJaMOIQLkYFwsGoQWoYVUgJow4pYD4Weq4ayBqfwDYQmnUK0301kITujuawu65/l2B5A4z3Qe+Ut7EBAAAAAElFTkSuQmCC);background-size:50%;background-position:50% 50%;background-repeat:no-repeat;cursor:pointer}.uni-video-fullscreen.uni-video-type-fullscreen{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiCAYAAAA6RwvCAAABBElEQVRYhcXWwQ3CMAwF0O+qOzAKQzAAl0pMxQQwQhmGKwcERxbgc4lEVdHUbm3zJR8qJemTo6YByS3JO8kjyQbGkHQpkOz4zcmK8YQ0BWDCkOxL+UDKombMYKwfZAkmDGLFhEIsmHCIFpMC0WDSIHOYVEgNkw6pYPIhE5j/QCoYF0g7eEkPYGej+cX82x/l6aIAIOb9CcrajrjFE/IAQGP1IgIRcYVsVs32+vx+nC9nWq6dAZDhOaPHBEDGh54O4w0pa9oxEZBFmCjIBGb6Qh4JMWGiIWpMBkSFyYLMYjIhNUw7N9GQi2aQiLxJHspjV+rl1hFrRp25uV2MRGQRBsAewPUD/HhJVOOuCzwAAAAASUVORK5CYII=)}.uni-video-danmu{position:absolute;top:0;left:0;bottom:0;width:100%;margin-top:14px;margin-bottom:44px;font-size:14px;line-height:14px;overflow:visible}.uni-video-danmu-item{line-height:1;position:absolute;color:#fff;white-space:nowrap;left:100%;transform:translate(0);transition-property:left,transform;transition-duration:3s;transition-timing-function:linear}.uni-video-toast{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:5px;background-color:rgba(255,255,255,.8);color:#000;display:none}.uni-video-toast.uni-video-toast-volume{width:100px;height:100px;display:block}.uni-video-toast-volume .uni-video-toast-title{width:100%;font-size:12px;line-height:16px;text-align:center;margin-top:10px;display:block}.uni-video-toast-volume .uni-video-toast-icon{fill:#000;width:50%;height:50%;margin-left:25%;display:block}.uni-video-toast-volume .uni-video-toast-value{width:80px;height:5px;margin-top:5px;margin-left:10px}.uni-video-toast-volume .uni-video-toast-value>.uni-video-toast-value-content{overflow:hidden}.uni-video-toast-volume-grids{width:80px;height:5px}.uni-video-toast-volume-grids-item{float:left;width:7.1px;height:5px;background-color:#000}.uni-video-toast-volume-grids-item:not(:first-child){margin-left:1px}.uni-video-toast.uni-video-toast-progress{display:block;background-color:rgba(0,0,0,.8);color:#fff;font-size:14px;line-height:18px;padding:6px}uni-web-view{display:flex}uni-web-view.uni-webview--fullscreen{position:absolute;left:0;right:0;top:0;bottom:0} diff --git a/niucloud/public/wap/assets/useMescroll-194d164a.css b/niucloud/public/wap/assets/useMescroll-194d164a.css new file mode 100644 index 0000000..7344a78 --- /dev/null +++ b/niucloud/public/wap/assets/useMescroll-194d164a.css @@ -0,0 +1 @@ +.mescroll-totop[data-v-335a2c6e]{z-index:9990;position:fixed!important;right:.625rem;bottom:3.75rem;width:2.25rem;height:auto;border-radius:50%;opacity:0;transition:opacity .5s;margin-bottom:var(--window-bottom)}@supports (bottom: constant(safe-area-inset-bottom)) or (bottom: env(safe-area-inset-bottom)){.mescroll-totop-safearea[data-v-335a2c6e]{margin-bottom:calc(var(--window-bottom) + constant(safe-area-inset-bottom));margin-bottom:calc(var(--window-bottom) + env(safe-area-inset-bottom))}}.mescroll-totop-in[data-v-335a2c6e]{opacity:1}.mescroll-totop-out[data-v-335a2c6e]{opacity:0;pointer-events:none}.mescroll-body[data-v-92f590ab]{position:relative;height:auto;overflow:hidden;box-sizing:border-box}.mescroll-body.mescorll-sticky[data-v-92f590ab]{overflow:unset!important}@supports (bottom: constant(safe-area-inset-bottom)) or (bottom: env(safe-area-inset-bottom)){.mescroll-safearea[data-v-92f590ab]{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}}.mescroll-downwarp[data-v-92f590ab]{position:absolute;top:-100%;left:0;width:100%;height:100%;text-align:center}.mescroll-downwarp .downwarp-content[data-v-92f590ab]{position:absolute;left:0;bottom:0;width:100%;min-height:1.875rem;padding:.625rem 0;text-align:center}.mescroll-downwarp .downwarp-tip[data-v-92f590ab]{display:inline-block;font-size:.875rem;vertical-align:middle;margin-left:.5rem}.mescroll-downwarp .downwarp-progress[data-v-92f590ab]{display:inline-block;width:1rem;height:1rem;border-radius:50%;border:.0625rem solid gray;border-bottom-color:transparent!important;vertical-align:middle}.mescroll-downwarp .mescroll-rotate[data-v-92f590ab]{animation:mescrollDownRotate-92f590ab .6s linear infinite}@keyframes mescrollDownRotate-92f590ab{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mescroll-upwarp[data-v-92f590ab]{box-sizing:border-box;min-height:3.4375rem;padding:.9375rem 0;text-align:center;clear:both}.mescroll-upwarp .upwarp-tip[data-v-92f590ab],.mescroll-upwarp .upwarp-nodata[data-v-92f590ab]{display:inline-block;font-size:.875rem;vertical-align:middle}.mescroll-upwarp .upwarp-tip[data-v-92f590ab]{margin-left:.5rem}.mescroll-upwarp .upwarp-progress[data-v-92f590ab]{display:inline-block;width:1rem;height:1rem;border-radius:50%;border:.0625rem solid gray;border-bottom-color:transparent!important;vertical-align:middle}.mescroll-upwarp .mescroll-rotate[data-v-92f590ab]{animation:mescrollUpRotate-92f590ab .6s linear infinite}@keyframes mescrollUpRotate-92f590ab{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/niucloud/public/wap/assets/useMescroll.fa1d1d16.js b/niucloud/public/wap/assets/useMescroll.fa1d1d16.js new file mode 100644 index 0000000..2c1ae35 --- /dev/null +++ b/niucloud/public/wap/assets/useMescroll.fa1d1d16.js @@ -0,0 +1 @@ +import{a$ as o,s as t,i as e,j as n,I as s,p as i,m as l,M as r,aM as p,Q as c,R as a,S as h,ar as d,b0 as u,E as w,w as g,k as f,K as m,L as y,T as S,l as D,v as T,x}from"./index-c1dbaba4.js";import{_ as U}from"./_plugin-vue_export-helper.1b428a4d.js";function b(o,t){let e=this;e.version="1.3.7",e.options=o||{},e.isScrollBody=t||!1,e.isDownScrolling=!1,e.isUpScrolling=!1;let n=e.options.down&&e.options.down.callback;e.initDownScroll(),e.initUpScroll(),setTimeout((function(){(e.optDown.use||e.optDown.native)&&e.optDown.auto&&n&&(e.optDown.autoShowLoading?e.triggerDownScroll():e.optDown.callback&&e.optDown.callback(e)),e.isUpAutoLoad||setTimeout((function(){e.optUp.use&&e.optUp.auto&&!e.isUpAutoLoad&&e.triggerUpScroll()}),100)}),30)}b.prototype.extendDownScroll=function(o){b.extend(o,{use:!0,auto:!0,native:!1,autoShowLoading:!1,isLock:!1,offset:80,startTop:100,inOffsetRate:1,outOffsetRate:.2,bottomOffset:20,minAngle:45,textInOffset:"下拉刷新",textOutOffset:"释放更新",textLoading:"加载中 ...",textSuccess:"加载成功",textErr:"加载失败",beforeEndDelay:0,bgColor:"transparent",textColor:"gray",inited:null,inOffset:null,outOffset:null,onMoving:null,beforeLoading:null,showLoading:null,afterLoading:null,beforeEndDownScroll:null,endDownScroll:null,afterEndDownScroll:null,callback:function(o){o.resetUpScroll()}})},b.prototype.extendUpScroll=function(o){b.extend(o,{use:!0,auto:!0,isLock:!1,isBoth:!0,callback:null,page:{num:0,size:10,time:null},noMoreSize:5,offset:150,textLoading:"加载中 ...",textNoMore:"-- END --",bgColor:"transparent",textColor:"gray",inited:null,showLoading:null,showNoMore:null,hideUpScroll:null,errDistance:60,toTop:{src:null,offset:1e3,duration:300,btnClick:null,onShow:null,zIndex:9990,left:null,right:20,bottom:120,safearea:!1,width:72,radius:"50%"},empty:{use:!0,icon:null,tip:"~ 暂无相关数据 ~",btnText:"",btnClick:null,onShow:null,fixed:!1,top:"100rpx",zIndex:99},onScroll:!1})},b.extend=function(o,t){if(!o)return t;for(let e in t)if(null==o[e]){let n=t[e];o[e]=null!=n&&"object"==typeof n?b.extend({},n):n}else"object"==typeof o[e]&&b.extend(o[e],t[e]);return o},b.prototype.hasColor=function(o){if(!o)return!1;let t=o.toLowerCase();return"#fff"!=t&&"#ffffff"!=t&&"transparent"!=t&&"white"!=t},b.prototype.initDownScroll=function(){let o=this;o.optDown=o.options.down||{},!o.optDown.textColor&&o.hasColor(o.optDown.bgColor)&&(o.optDown.textColor="#fff"),o.extendDownScroll(o.optDown),o.isScrollBody&&o.optDown.native?o.optDown.use=!1:o.optDown.native=!1,o.downHight=0,o.optDown.use&&o.optDown.inited&&setTimeout((function(){o.optDown.inited(o)}),0)},b.prototype.touchstartEvent=function(o){this.optDown.use&&(this.startPoint=this.getPoint(o),this.startTop=this.getScrollTop(),this.startAngle=0,this.lastPoint=this.startPoint,this.maxTouchmoveY=this.getBodyHeight()-this.optDown.bottomOffset,this.inTouchend=!1)},b.prototype.touchmoveEvent=function(o){if(!this.optDown.use)return;let t=this,e=t.getScrollTop(),n=t.getPoint(o);if(n.y-t.startPoint.y>0&&(t.isScrollBody&&e<=0||!t.isScrollBody&&(e<=0||e<=t.optDown.startTop&&e===t.startTop))&&!t.inTouchend&&!t.isDownScrolling&&!t.optDown.isLock&&(!t.isUpScrolling||t.isUpScrolling&&t.optUp.isBoth)){if(t.startAngle||(t.startAngle=t.getAngle(t.lastPoint,n)),t.startAngle0&&n.y>=t.maxTouchmoveY)return t.inTouchend=!0,void t.touchendEvent();t.preventDefault(o);let e=n.y-t.lastPoint.y;t.downHight0?e*t.optDown.outOffsetRate:e),t.downHight=Math.round(t.downHight);let s=t.downHight/t.optDown.offset;t.optDown.onMoving&&t.optDown.onMoving(t,s,t.downHight)}t.lastPoint=n},b.prototype.touchendEvent=function(o){if(this.optDown.use)if(this.isMoveDown)this.downHight>=this.optDown.offset?this.triggerDownScroll():(this.downHight=0,this.endDownScrollCall(this)),this.movetype=0,this.isMoveDown=!1;else if(!this.isScrollBody&&this.getScrollTop()===this.startTop){if(this.getPoint(o).y-this.startPoint.y<0){this.getAngle(this.getPoint(o),this.startPoint)>80&&this.triggerUpScroll(!0)}}},b.prototype.getPoint=function(o){return o?o.touches&&o.touches[0]?{x:o.touches[0].pageX,y:o.touches[0].pageY}:o.changedTouches&&o.changedTouches[0]?{x:o.changedTouches[0].pageX,y:o.changedTouches[0].pageY}:{x:o.clientX,y:o.clientY}:{x:0,y:0}},b.prototype.getAngle=function(o,t){let e=Math.abs(o.x-t.x),n=Math.abs(o.y-t.y),s=Math.sqrt(e*e+n*n),i=0;return 0!==s&&(i=Math.asin(n/s)/Math.PI*180),i},b.prototype.triggerDownScroll=function(){this.optDown.beforeLoading&&this.optDown.beforeLoading(this)||(this.showDownScroll(),!this.optDown.native&&this.optDown.callback&&this.optDown.callback(this))},b.prototype.showDownScroll=function(){this.isDownScrolling=!0,this.optDown.native?(o(),this.showDownLoadingCall(0)):(this.downHight=this.optDown.offset,this.showDownLoadingCall(this.downHight))},b.prototype.showDownLoadingCall=function(o){this.optDown.showLoading&&this.optDown.showLoading(this,o),this.optDown.afterLoading&&this.optDown.afterLoading(this,o)},b.prototype.onPullDownRefresh=function(){this.isDownScrolling=!0,this.showDownLoadingCall(0),this.optDown.callback&&this.optDown.callback(this)},b.prototype.endDownScroll=function(){if(this.optDown.native)return this.isDownScrolling=!1,this.endDownScrollCall(this),void t();let o=this,e=function(){o.downHight=0,o.isDownScrolling=!1,o.endDownScrollCall(o),o.isScrollBody||(o.setScrollHeight(0),o.scrollTo(0,0))},n=0;o.optDown.beforeEndDownScroll&&(n=o.optDown.beforeEndDownScroll(o),null==o.isDownEndSuccess&&(n=0)),"number"==typeof n&&n>0?setTimeout(e,n):e()},b.prototype.endDownScrollCall=function(){this.optDown.endDownScroll&&this.optDown.endDownScroll(this),this.optDown.afterEndDownScroll&&this.optDown.afterEndDownScroll(this)},b.prototype.lockDownScroll=function(o){null==o&&(o=!0),this.optDown.isLock=o},b.prototype.lockUpScroll=function(o){null==o&&(o=!0),this.optUp.isLock=o},b.prototype.initUpScroll=function(){let o=this;o.optUp=o.options.up||{use:!1},!o.optUp.textColor&&o.hasColor(o.optUp.bgColor)&&(o.optUp.textColor="#fff"),o.extendUpScroll(o.optUp),!1!==o.optUp.use&&(o.optUp.hasNext=!0,o.startNum=o.optUp.page.num+1,o.optUp.inited&&setTimeout((function(){o.optUp.inited(o)}),0))},b.prototype.onReachBottom=function(){this.isScrollBody&&!this.isUpScrolling&&!this.optUp.isLock&&this.optUp.hasNext&&this.triggerUpScroll()},b.prototype.onPageScroll=function(o){this.isScrollBody&&(this.setScrollTop(o.scrollTop),o.scrollTop>=this.optUp.toTop.offset?this.showTopBtn():this.hideTopBtn())},b.prototype.scroll=function(o,t){this.setScrollTop(o.scrollTop),this.setScrollHeight(o.scrollHeight),null==this.preScrollY&&(this.preScrollY=0),this.isScrollUp=o.scrollTop-this.preScrollY>0,this.preScrollY=o.scrollTop,this.isScrollUp&&this.triggerUpScroll(!0),o.scrollTop>=this.optUp.toTop.offset?this.showTopBtn():this.hideTopBtn(),this.optUp.onScroll&&t&&t()},b.prototype.triggerUpScroll=function(o){if(!this.isUpScrolling&&this.optUp.use&&this.optUp.callback){if(!0===o){let o=!1;if(!this.optUp.hasNext||this.optUp.isLock||this.isDownScrolling||this.getScrollBottom()<=this.optUp.offset&&(o=!0),!1===o)return}this.showUpScroll(),this.optUp.page.num++,this.isUpAutoLoad=!0,this.num=this.optUp.page.num,this.size=this.optUp.page.size,this.time=this.optUp.page.time,this.optUp.callback(this)}},b.prototype.showUpScroll=function(){this.isUpScrolling=!0,this.optUp.showLoading&&this.optUp.showLoading(this)},b.prototype.showNoMore=function(){this.optUp.hasNext=!1,this.optUp.showNoMore&&this.optUp.showNoMore(this)},b.prototype.hideUpScroll=function(){this.optUp.hideUpScroll&&this.optUp.hideUpScroll(this)},b.prototype.endUpScroll=function(o){null!=o&&(o?this.showNoMore():this.hideUpScroll()),this.isUpScrolling=!1},b.prototype.resetUpScroll=function(o){if(this.optUp&&this.optUp.use){let t=this.optUp.page;this.prePageNum=t.num,this.prePageTime=t.time,t.num=this.startNum,t.time=null,this.isDownScrolling||!1===o||(null==o?(this.removeEmpty(),this.showUpScroll()):this.showDownScroll()),this.isUpAutoLoad=!0,this.num=t.num,this.size=t.size,this.time=t.time,this.optUp.callback&&this.optUp.callback(this)}},b.prototype.setPageNum=function(o){this.optUp.page.num=o-1},b.prototype.setPageSize=function(o){this.optUp.page.size=o},b.prototype.endByPage=function(o,t,e){let n;this.optUp.use&&null!=t&&(n=this.optUp.page.numo?"number"==typeof o?o+"rpx":o:0,toTopClick(){this.$emit("input",!1),this.$emit("click")}}},[["render",function(o,t,p,c,a,h){const d=r;return h.mOption.src?(e(),n(d,{key:0,class:s(["mescroll-totop",[p.value?"mescroll-totop-in":"mescroll-totop-out",{"mescroll-totop-safearea":h.mOption.safearea}]]),style:i({"z-index":h.mOption.zIndex,left:h.left,right:h.right,bottom:h.addUnit(h.mOption.bottom),width:h.addUnit(h.mOption.width),"border-radius":h.addUnit(h.mOption.radius)}),src:h.mOption.src,mode:"widthFix",onClick:h.toTopClick},null,8,["class","style","src","onClick"])):l("v-if",!0)}],["__scopeId","data-v-335a2c6e"]]),H={data:()=>({wxsProp:{optDown:{},scrollTop:0,bodyHeight:0,isDownScrolling:!1,isUpScrolling:!1,isScrollBody:!0,isUpBoth:!0,t:0},callProp:{callType:"",t:0}}),methods:{wxsCall(o){"setWxsProp"===o.type?this.wxsProp={optDown:this.mescroll.optDown,scrollTop:this.mescroll.getScrollTop(),bodyHeight:this.mescroll.getBodyHeight(),isDownScrolling:this.mescroll.isDownScrolling,isUpScrolling:this.mescroll.isUpScrolling,isUpBoth:this.mescroll.optUp.isBoth,isScrollBody:this.mescroll.isScrollBody,t:Date.now()}:"setLoadType"===o.type?(this.downLoadType=o.downLoadType,this.$set(this.mescroll,"downLoadType",this.downLoadType),this.$set(this.mescroll,"isDownEndSuccess",null)):"triggerDownScroll"===o.type?this.mescroll.triggerDownScroll():"endDownScroll"===o.type?this.mescroll.endDownScroll():"triggerUpScroll"===o.type&&this.mescroll.triggerUpScroll(!0)}},mounted(){this.mescroll.optDown.afterLoading=()=>{this.callProp={callType:"showLoading",t:Date.now()}},this.mescroll.optDown.afterEndDownScroll=()=>{this.callProp={callType:"endDownScroll",t:Date.now()};let o=300+(this.mescroll.optDown.beforeEndDelay||0);setTimeout((()=>{4!==this.downLoadType&&0!==this.downLoadType||(this.callProp={callType:"clearTransform",t:Date.now()}),this.$set(this.mescroll,"downLoadType",this.downLoadType)}),o)},this.wxsCall({type:"setWxsProp"})}};var P={};function O(o,t){if(P.isMoveDown)P.downHight>=P.optDown.offset?(P.downHight=P.optDown.offset,P.callMethod(t,{type:"triggerDownScroll"})):(P.downHight=0,P.callMethod(t,{type:"endDownScroll"})),P.movetype=0,P.isMoveDown=!1;else if(!P.isScrollBody&&P.getScrollTop()===P.startTop){if(P.getPoint(o).y-P.startPoint.y<0)P.getAngle(P.getPoint(o),P.startPoint)>80&&P.callMethod(t,{type:"triggerUpScroll"})}P.callMethod(t,{type:"setWxsProp"})}P.onMoving=function(o,t,e){o.requestAnimationFrame((function(){o.selectComponent(".mescroll-wxs-content").setStyle({"will-change":"transform",transform:"translateY("+e+"px)",transition:""});var n=o.selectComponent(".mescroll-wxs-progress");n&&n.setStyle({transform:"rotate("+360*t+"deg)"})}))},P.showLoading=function(o){P.downHight=P.optDown.offset,o.requestAnimationFrame((function(){o.selectComponent(".mescroll-wxs-content").setStyle({"will-change":"auto",transform:"translateY("+P.downHight+"px)",transition:"transform 300ms"})}))},P.endDownScroll=function(o){P.downHight=0,P.isDownScrolling=!1,o.requestAnimationFrame((function(){o.selectComponent(".mescroll-wxs-content").setStyle({"will-change":"auto",transform:"translateY(0)",transition:"transform 300ms"})}))},P.clearTransform=function(o){o.requestAnimationFrame((function(){o.selectComponent(".mescroll-wxs-content").setStyle({"will-change":"",transform:"",transition:""})}))},P.disabled=function(){return!P.optDown||!P.optDown.use||P.optDown.native},P.getPoint=function(o){return o?o.touches&&o.touches[0]?{x:o.touches[0].pageX,y:o.touches[0].pageY}:o.changedTouches&&o.changedTouches[0]?{x:o.changedTouches[0].pageX,y:o.changedTouches[0].pageY}:{x:o.clientX,y:o.clientY}:{x:0,y:0}},P.getAngle=function(o,t){var e=Math.abs(o.x-t.x),n=Math.abs(o.y-t.y),s=Math.sqrt(e*e+n*n),i=0;return 0!==s&&(i=Math.asin(n/s)/Math.PI*180),i},P.getScrollTop=function(){return P.scrollTop||0},P.getBodyHeight=function(){return P.bodyHeight||0},P.callMethod=function(o,t){o&&o.callMethod("wxsCall",t)};const k={propObserver:function(o){P.optDown=o.optDown,P.scrollTop=o.scrollTop,P.bodyHeight=o.bodyHeight,P.isDownScrolling=o.isDownScrolling,P.isUpScrolling=o.isUpScrolling,P.isUpBoth=o.isUpBoth,P.isScrollBody=o.isScrollBody,P.startTop=o.scrollTop},callObserver:function(o,t,e){P.disabled()||o.callType&&("showLoading"===o.callType?P.showLoading(e):"endDownScroll"===o.callType?P.endDownScroll(e):"clearTransform"===o.callType&&P.clearTransform(e))},touchstartEvent:function(o,t){P.downHight=0,P.startPoint=P.getPoint(o),P.startTop=P.getScrollTop(),P.startAngle=0,P.lastPoint=P.startPoint,P.maxTouchmoveY=P.getBodyHeight()-P.optDown.bottomOffset,P.inTouchend=!1,P.callMethod(t,{type:"setWxsProp"})},touchmoveEvent:function(o,t){var e=!0;if(P.disabled())return e;var n=P.getScrollTop(),s=P.getPoint(o);if(s.y-P.startPoint.y>0&&(P.isScrollBody&&n<=0||!P.isScrollBody&&(n<=0||n<=P.optDown.startTop&&n===P.startTop))&&!P.inTouchend&&!P.isDownScrolling&&!P.optDown.isLock&&(!P.isUpScrolling||P.isUpScrolling&&P.isUpBoth)){if(P.startAngle||(P.startAngle=P.getAngle(P.lastPoint,s)),P.startAngle0&&s.y>=P.maxTouchmoveY)return P.inTouchend=!0,O(o,t),e;e=!1;var i=s.y-P.lastPoint.y;P.downHight0?i*P.optDown.outOffsetRate:i),P.downHight=Math.round(P.downHight);var l=P.downHight/P.optDown.offset;P.onMoving(t,l,P.downHight)}return P.lastPoint=s,e},touchendEvent:O},C=o=>{o.$wxs||(o.$wxs=[]),o.$wxs.push("wxsBiz"),o.mixins||(o.mixins=[]),o.mixins.push({beforeCreate(){this.wxsBiz=k}})};var M={};function E(o){M.optDown=o.optDown,M.scrollTop=o.scrollTop,M.isDownScrolling=o.isDownScrolling,M.isUpScrolling=o.isUpScrolling,M.isUpBoth=o.isUpBoth}window&&!window.$mescrollRenderInit&&(window.$mescrollRenderInit=!0,window.addEventListener("touchstart",(function(o){M.disabled()||(M.startPoint=M.getPoint(o))}),{passive:!0}),window.addEventListener("touchmove",(function(o){if(!M.disabled()&&(!(M.getScrollTop()>0)&&M.getPoint(o).y-M.startPoint.y>0&&!M.isDownScrolling&&!M.optDown.isLock&&(!M.isUpScrolling||M.isUpScrolling&&M.isUpBoth))){for(var t=o.target,e=!1;t&&t.tagName&&"UNI-PAGE-BODY"!==t.tagName&&"BODY"!=t.tagName;){var n=t.classList;if(n&&n.contains("mescroll-render-touch")){e=!0;break}t=t.parentNode}e&&o.cancelable&&!o.defaultPrevented&&o.preventDefault()}}),{passive:!1})),M.getScrollTop=function(){return M.scrollTop||0},M.disabled=function(){return!M.optDown||!M.optDown.use||M.optDown.native},M.getPoint=function(o){return o?o.touches&&o.touches[0]?{x:o.touches[0].pageX,y:o.touches[0].pageY}:o.changedTouches&&o.changedTouches[0]?{x:o.changedTouches[0].pageX,y:o.changedTouches[0].pageY}:{x:o.clientX,y:o.clientY}:{x:0,y:0}};const N={mixins:[{data:()=>({propObserver:E})}]},z=o=>{o.$renderjs||(o.$renderjs=[]),o.$renderjs.push("renderBiz"),o.mixins||(o.mixins=[]),o.mixins.push({beforeCreate(){this.renderBiz=this},mounted(){this.$ownerInstance=this.$gcd(this,!0)}}),o.mixins.push(N)},Y={name:"mescroll-body",mixins:[H],components:{MescrollTop:B},props:{down:Object,up:Object,i18n:Object,top:[String,Number],topbar:[Boolean,String],bottom:[String,Number],safearea:Boolean,height:[String,Number],bottombar:{type:Boolean,default:!0},sticky:Boolean},data:()=>({mescroll:{optDown:{},optUp:{}},downHight:0,downRate:0,downLoadType:0,upLoadType:0,isShowEmpty:!1,isShowToTop:!1,windowHeight:0,windowBottom:0,statusBarHeight:0}),computed:{minHeight(){return this.toPx(this.height||"100%")+"px"},numTop(){return this.toPx(this.top)},padTop(){return this.numTop+"px"},numBottom(){return this.toPx(this.bottom)},padBottom(){return this.numBottom+"px"},isDownReset(){return 3===this.downLoadType||4===this.downLoadType},transition(){return this.isDownReset?"transform 300ms":""},translateY(){return this.downHight>0?"translateY("+this.downHight+"px)":""},isDownLoading(){return 3===this.downLoadType},downRotate(){return"rotate("+360*this.downRate+"deg)"},downText(){if(!this.mescroll)return"";switch(this.downLoadType){case 1:default:return this.mescroll.optDown.textInOffset;case 2:return this.mescroll.optDown.textOutOffset;case 3:return this.mescroll.optDown.textLoading;case 4:return this.mescroll.isDownEndSuccess?this.mescroll.optDown.textSuccess:0==this.mescroll.isDownEndSuccess?this.mescroll.optDown.textErr:this.mescroll.optDown.textInOffset}}},methods:{toPx(o){if("string"==typeof o)if(-1!==o.indexOf("px"))if(-1!==o.indexOf("rpx"))o=o.replace("rpx","");else{if(-1===o.indexOf("upx"))return Number(o.replace("px",""));o=o.replace("upx","")}else if(-1!==o.indexOf("%")){let t=Number(o.replace("%",""))/100;return this.windowHeight*t}return o?p(Number(o)):0},emptyClick(){this.$emit("emptyclick",this.mescroll)},toTopClick(){this.mescroll.scrollTo(0,this.mescroll.optUp.toTop.duration),this.$emit("topclick",this.mescroll)}},created(){let o=this,t={down:{inOffset(){o.downLoadType=1},outOffset(){o.downLoadType=2},onMoving(t,e,n){o.downHight=n,o.downRate=e},showLoading(t,e){o.downLoadType=3,o.downHight=e},beforeEndDownScroll:t=>(o.downLoadType=4,t.optDown.beforeEndDelay),endDownScroll(){o.downLoadType=4,o.downHight=0,o.downResetTimer&&(clearTimeout(o.downResetTimer),o.downResetTimer=null),o.downResetTimer=setTimeout((()=>{4===o.downLoadType&&(o.downLoadType=0)}),300)},callback:function(t){o.$emit("down",t)}},up:{showLoading(){o.upLoadType=1},showNoMore(){o.upLoadType=2},hideUpScroll(t){o.upLoadType=t.optUp.hasNext?0:3},empty:{onShow(t){o.isShowEmpty=t}},toTop:{onShow(t){o.isShowToTop=t}},callback:function(t){o.$emit("up",t)}}},e=L.getType(),n={type:e};b.extend(n,o.i18n),b.extend(n,v.i18n),b.extend(t,n[e]),b.extend(t,{down:v.down,up:v.up});let s=JSON.parse(JSON.stringify({down:o.down,up:o.up}));b.extend(s,t),o.mescroll=new b(s,!0),o.mescroll.i18n=n,o.$emit("init",o.mescroll);const i=c();i.windowHeight&&(o.windowHeight=i.windowHeight),i.windowBottom&&(o.windowBottom=i.windowBottom),i.statusBarHeight&&(o.statusBarHeight=i.statusBarHeight),o.mescroll.setBodyHeight(i.windowHeight),o.mescroll.resetScrollTo(((t,e)=>{"string"==typeof t?setTimeout((()=>{let n;-1==t.indexOf("#")&&-1==t.indexOf(".")?n="#"+t:(n=t,-1!=t.indexOf(">>>")&&(n=t.split(">>>")[1].trim())),a().select(n).boundingClientRect((function(t){if(t){let n=t.top;n+=o.mescroll.getScrollTop(),h({scrollTop:n,duration:e})}else console.error(n+" does not exist")})).exec()}),30):h({scrollTop:t,duration:e})})),o.up&&o.up.toTop&&null!=o.up.toTop.safearea||(o.mescroll.optUp.toTop.safearea=o.safearea),d("setMescrollGlobalOption",(t=>{if(!t)return;let e=t.i18n?t.i18n.type:null;if(e&&o.mescroll.i18n.type!=e&&(o.mescroll.i18n.type=e,L.setType(e),b.extend(t,o.mescroll.i18n[e])),t.down){let e=b.extend({},t.down);o.mescroll.optDown=b.extend(e,o.mescroll.optDown)}if(t.up){let e=b.extend({},t.up);o.mescroll.optUp=b.extend(e,o.mescroll.optUp)}}))},destroyed(){u("setMescrollGlobalOption")}};C(Y),z(Y);const A=U(Y,[["render",function(o,t,r,p,c,a){const h=x,d=w("mescroll-empty"),u=w("mescroll-top");return e(),n(h,{class:s(["mescroll-body mescroll-render-touch",{"mescorll-sticky":r.sticky}]),style:i({minHeight:a.minHeight,"padding-top":a.padTop,"padding-bottom":a.padBottom}),onTouchstart:o.wxsBiz.touchstartEvent,onTouchmove:o.wxsBiz.touchmoveEvent,onTouchend:o.wxsBiz.touchendEvent,onTouchcancel:o.wxsBiz.touchendEvent,"change:prop":o.wxsBiz.propObserver,prop:o.wxsProp},{default:g((()=>[l(" 状态栏 "),r.topbar&&c.statusBarHeight?(e(),n(h,{key:0,class:"mescroll-topbar",style:i({height:c.statusBarHeight+"px",background:r.topbar})},null,8,["style"])):l("v-if",!0),f(h,{class:"mescroll-body-content mescroll-wxs-content",style:i({transform:a.translateY,transition:a.transition}),"change:prop":o.wxsBiz.callObserver,prop:o.callProp},{default:g((()=>[l(" 下拉加载区域 (支付宝小程序子组件传参给子子组件仍报单项数据流的异常,暂时不通过mescroll-down组件实现)"),l(' '),c.mescroll.optDown.use?(e(),n(h,{key:0,class:"mescroll-downwarp",style:i({background:c.mescroll.optDown.bgColor,color:c.mescroll.optDown.textColor})},{default:g((()=>[f(h,{class:"downwarp-content"},{default:g((()=>[f(h,{class:s(["downwarp-progress mescroll-wxs-progress",{"mescroll-rotate":a.isDownLoading}]),style:i({"border-color":c.mescroll.optDown.textColor,transform:a.downRotate})},null,8,["class","style"]),f(h,{class:"downwarp-tip"},{default:g((()=>[m(y(a.downText),1)])),_:1})])),_:1})])),_:1},8,["style"])):l("v-if",!0),l(" 列表内容 "),S(o.$slots,"default",{},void 0,!0),l(" 空布局 "),c.isShowEmpty?(e(),n(d,{key:1,option:c.mescroll.optUp.empty,onEmptyclick:a.emptyClick},null,8,["option","onEmptyclick"])):l("v-if",!0),l(" 上拉加载区域 (下拉刷新时不显示, 支付宝小程序子组件传参给子子组件仍报单项数据流的异常,暂时不通过mescroll-up组件实现)"),l(' '),c.mescroll.optUp.use&&!a.isDownLoading&&3!==c.upLoadType?(e(),n(h,{key:2,class:"mescroll-upwarp",style:i({background:c.mescroll.optUp.bgColor,color:c.mescroll.optUp.textColor})},{default:g((()=>[l(" 加载中 (此处不能用v-if,否则android小程序快速上拉可能会不断触发上拉回调) "),D(f(h,null,{default:g((()=>[f(h,{class:"upwarp-progress mescroll-rotate",style:i({"border-color":c.mescroll.optUp.textColor})},null,8,["style"]),f(h,{class:"upwarp-tip"},{default:g((()=>[m(y(c.mescroll.optUp.textLoading),1)])),_:1})])),_:1},512),[[T,1===c.upLoadType]]),l(" 无数据 "),2===c.upLoadType?(e(),n(h,{key:0,class:"upwarp-nodata"},{default:g((()=>[m(y(c.mescroll.optUp.textNoMore),1)])),_:1})):l("v-if",!0)])),_:1},8,["style"])):l("v-if",!0)])),_:3},8,["style","change:prop","prop"]),l(" 底部是否偏移TabBar的高度(默认仅在H5端的tab页生效) "),r.bottombar&&c.windowBottom>0?(e(),n(h,{key:1,class:"mescroll-bottombar",style:i({height:c.windowBottom+"px"})},null,8,["style"])):l("v-if",!0),l(" 适配iPhoneX "),r.safearea?(e(),n(h,{key:2,class:"mescroll-safearea"})):l("v-if",!0),l(" 回到顶部按钮 (fixed元素需写在transform外面,防止降级为absolute)"),f(u,{modelValue:c.isShowToTop,"onUpdate:modelValue":t[0]||(t[0]=o=>c.isShowToTop=o),option:c.mescroll.optUp.toTop,onClick:a.toTopClick},null,8,["modelValue","option","onClick"]),l(" renderjs的数据载体,不可写在mescroll-downwarp内部,避免use为false时,载体丢失,无法更新数据 "),f(h,{"change:prop":o.renderBiz.propObserver,prop:o.wxsProp},null,8,["change:prop","prop"])])),_:3},8,["class","style","onTouchstart","onTouchmove","onTouchend","onTouchcancel","change:prop","prop"])}],["__scopeId","data-v-92f590ab"]]);function R(o,t,e){let n=null;return e&&e((()=>{n&&n.onPullDownRefresh()})),o&&o((o=>{n&&n.onPageScroll(o)})),t&&t((()=>{n&&n.onReachBottom()})),{getMescroll:()=>n,mescrollInit:o=>{n=o},downCallback:()=>{n.optUp.use?n.resetUpScroll():setTimeout((()=>{n.endSuccess()}),500)},upCallback:()=>{setTimeout((()=>{n.endErr()}),500)}}}export{v as G,A as M,L as m,R as u}; diff --git a/niucloud/public/wap/assets/useShare.ef6065d7.js b/niucloud/public/wap/assets/useShare.ef6065d7.js new file mode 100644 index 0000000..cf116b3 --- /dev/null +++ b/niucloud/public/wap/assets/useShare.ef6065d7.js @@ -0,0 +1 @@ +import{Y as e,ab as a,ac as t,y as i,ad as l,ae as r,af as n,ag as s,ah as o}from"./index-c1dbaba4.js";import{w as p}from"./wechat.de0a8524.js";const c=()=>{var c={title:"",link:""},h={};const m=()=>{o()&&p.share(c)},u=async(n={})=>{let s=e();if(a((()=>s.info),(()=>{u(n)})),await(async()=>{o()&&await p.init()})(),n&&n.wechat&&n.weapp){let e=t().params;s.info&&(e.mid=s.info.member_id);let a=[];for(let t in e)a.push(t+"="+e[t]);let r=location.origin+location.pathname+(a.length>0?"?"+a.join("&"):"");c={title:n.wechat.title||"",link:n.wechat.link||r,desc:n.wechat.desc||"",imgUrl:n.wechat.url?i(n.wechat.url):""},m(),h={title:n.weapp.title||"",query:n.weapp.path||"/"+l()+(a.length>0?"?"+a.join("&"):""),imageUrl:n.weapp.url?i(n.weapp.url):""}}else r({route:"/"+l(),params:JSON.stringify(t().params)}).then((e=>{let a=e.data,t=a.wechat;if(t){let e=location.origin+location.pathname+(a.query?"?"+a.query:"");c={link:e,title:t.title,desc:t.desc,imgUrl:t.url?i(t.url):""}}m();let l=a.weapp;l&&(h={query:a.url,title:l.title,imageUrl:l.url?i(l.url):""})}))};return{setShare:u,onShareAppMessage:(e={})=>{n((()=>({...h,...e})))},onShareTimeline:(e={})=>{s((()=>({...h,...e})))}}};export{c as u}; diff --git a/niucloud/public/wap/assets/wechat.de0a8524.js b/niucloud/public/wap/assets/wechat.de0a8524.js new file mode 100644 index 0000000..cb99cbd --- /dev/null +++ b/niucloud/public/wap/assets/wechat.de0a8524.js @@ -0,0 +1 @@ +import{au as e,Q as n}from"./index-c1dbaba4.js";var i,t={};i=window,{get exports(){return t},set exports(e){t=e}}.exports=function(e,n){if(!e.jWeixin){var i,t={config:"preVerifyJSAPI",onMenuShareTimeline:"menu:share:timeline",onMenuShareAppMessage:"menu:share:appmessage",onMenuShareQQ:"menu:share:qq",onMenuShareWeibo:"menu:share:weiboApp",onMenuShareQZone:"menu:share:QZone",previewImage:"imagePreview",getLocation:"geoLocation",openProductSpecificView:"openProductViewWithPid",addCard:"batchAddCard",openCard:"batchViewCard",chooseWXPay:"getBrandWCPayRequest",openEnterpriseRedPacket:"getRecevieBizHongBaoRequest",startSearchBeacons:"startMonitoringBeacons",stopSearchBeacons:"stopMonitoringBeacons",onSearchBeacons:"onBeaconsInRange",consumeAndShareCard:"consumedShareCard",openAddress:"editAddress"},o=function(){var e={};for(var n in t)e[t[n]]=n;return e}(),r=e.document,a=r.title,c=navigator.userAgent.toLowerCase(),s=navigator.platform.toLowerCase(),d=!(!s.match("mac")&&!s.match("win")),u=-1!=c.indexOf("wxdebugger"),l=-1!=c.indexOf("micromessenger"),p=-1!=c.indexOf("android"),f=-1!=c.indexOf("iphone")||-1!=c.indexOf("ipad"),g=(i=c.match(/micromessenger\/(\d+\.\d+\.\d+)/)||c.match(/micromessenger\/(\d+\.\d+)/))?i[1]:"",m={initStartTime:B(),initEndTime:0,preVerifyStartTime:0,preVerifyEndTime:0},h={version:1,appId:"",initTime:0,preVerifyTime:0,networkType:"",isPreVerifyOk:1,systemType:f?1:p?2:-1,clientVersion:g,url:encodeURIComponent(location.href)},S={},v={_completes:[]},y={state:0,data:{}};O((function(){m.initEndTime=B()}));var I=!1,w=[],_={config:function(n){L("config",S=n);var i=!1!==S.check;O((function(){if(i)M(t.config,{verifyJsApiList:C(S.jsApiList),verifyOpenTagList:C(S.openTagList)},function(){v._complete=function(e){m.preVerifyEndTime=B(),y.state=1,y.data=e},v.success=function(e){h.isPreVerifyOk=0},v.fail=function(e){v._fail?v._fail(e):y.state=-1};var e=v._completes;return e.push((function(){!function(){if(!(d||u||S.debug||g<"6.0.2"||h.systemType<0)){var e=new Image;h.appId=S.appId,h.initTime=m.initEndTime-m.initStartTime,h.preVerifyTime=m.preVerifyEndTime-m.preVerifyStartTime,_.getNetworkType({isInnerInvoke:!0,success:function(n){h.networkType=n.networkType;var i="https://open.weixin.qq.com/sdk/report?v="+h.version+"&o="+h.isPreVerifyOk+"&s="+h.systemType+"&c="+h.clientVersion+"&a="+h.appId+"&n="+h.networkType+"&i="+h.initTime+"&p="+h.preVerifyTime+"&u="+h.url;e.src=i}})}}()})),v.complete=function(n){for(var i=0,t=e.length;i{const{data:n}=e;t.config({debug:!1,appId:n.appId,timestamp:n.timestamp,nonceStr:n.nonceStr,signature:n.signature,jsApiList:["chooseWXPay","updateAppMessageShareData","updateTimelineShareData"]})}))}pay(e){t.ready((()=>{t.chooseWXPay(e)}))}share(e){t.ready((()=>{t.updateAppMessageShareData(e),t.updateTimelineShareData(e)}))}};export{o as w}; diff --git a/niucloud/public/wap/index.html b/niucloud/public/wap/index.html new file mode 100644 index 0000000..1a4d445 --- /dev/null +++ b/niucloud/public/wap/index.html @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + +
          + + + diff --git a/niucloud/public/web/200.html b/niucloud/public/web/200.html new file mode 100644 index 0000000..96c233c --- /dev/null +++ b/niucloud/public/web/200.html @@ -0,0 +1,6 @@ + + + + +
          + \ No newline at end of file diff --git a/niucloud/public/web/404.html b/niucloud/public/web/404.html new file mode 100644 index 0000000..96c233c --- /dev/null +++ b/niucloud/public/web/404.html @@ -0,0 +1,6 @@ + + + + +
          + \ No newline at end of file diff --git a/niucloud/public/web/_nuxt/_plugin-vue_export-helper.c27b6911.js b/niucloud/public/web/_nuxt/_plugin-vue_export-helper.c27b6911.js new file mode 100644 index 0000000..6b46a69 --- /dev/null +++ b/niucloud/public/web/_nuxt/_plugin-vue_export-helper.c27b6911.js @@ -0,0 +1 @@ +const r=(o,s)=>{const c=o.__vccOpts||o;for(const[t,n]of s)c[t]=n;return c};export{r as _}; diff --git a/niucloud/public/web/_nuxt/agreement.d9efaa28.js b/niucloud/public/web/_nuxt/agreement.d9efaa28.js new file mode 100644 index 0000000..7c842ff --- /dev/null +++ b/niucloud/public/web/_nuxt/agreement.d9efaa28.js @@ -0,0 +1 @@ +import{E as y,__tla as f}from"./el-empty.ed8ce84e.js";import{f as p,x as d,aK as h,aL as k,aM as x,o as l,k as n,u as e,Z as v,l as o,t as g,c as L,y as M,q,__tla as C}from"./entry.60adbc61.js";import{__tla as E}from"./index.59e0a5b1.js";let _,H=Promise.all([(()=>{try{return f}catch{}})(),(()=>{try{return C}catch{}})(),(()=>{try{return E}catch{}})()]).then(async()=>{let r,s,c,i;r={class:"w-full pt-6 min-h-[100%] flex flex-col justify-center"},s={key:0,class:"main-container"},c={class:"text-center"},i=["innerHTML"],_=p({__name:"agreement",setup(N){const t=d(null),u=h();return k(u.query.key).then(({data:a})=>{t.value=a,x({title:a.title})}).catch(a=>{}),(a,T)=>{const m=y;return l(),n("div",r,[e(t)?(l(),n(v,{key:0},[e(t).title&&e(t).content?(l(),n("div",s,[o("h2",c,g(e(t).title),1),o("div",{innerHTML:e(t).content},null,8,i)])):(l(),L(m,{key:1,description:("t"in a?a.t:e(q))("protocolNotConfigured")},null,8,["description"]))],64)):M("",!0)])}}})});export{H as __tla,_ as default}; diff --git a/niucloud/public/web/_nuxt/article.detail.83f94799.js b/niucloud/public/web/_nuxt/article.detail.83f94799.js new file mode 100644 index 0000000..164d0ee --- /dev/null +++ b/niucloud/public/web/_nuxt/article.detail.83f94799.js @@ -0,0 +1 @@ +const t="\u6587\u7AE0",e={title:t};export{e as default,t as title}; diff --git a/niucloud/public/web/_nuxt/article.list.83f94799.js b/niucloud/public/web/_nuxt/article.list.83f94799.js new file mode 100644 index 0000000..164d0ee --- /dev/null +++ b/niucloud/public/web/_nuxt/article.list.83f94799.js @@ -0,0 +1 @@ +const t="\u6587\u7AE0",e={title:t};export{e as default,t as title}; diff --git a/niucloud/public/web/_nuxt/auth.7e6731df.js b/niucloud/public/web/_nuxt/auth.7e6731df.js new file mode 100644 index 0000000..7eb1892 --- /dev/null +++ b/niucloud/public/web/_nuxt/auth.7e6731df.js @@ -0,0 +1 @@ +import{a as r,b as _,e,__tla as l}from"./entry.60adbc61.js";import{u as o,__tla as s}from"./useLogin.368406ce.js";let t,i=Promise.all([(()=>{try{return l}catch{}})(),(()=>{try{return s}catch{}})()]).then(async()=>{t=r((a,n)=>{if(!_())return o().setLoginBack(a),e("/auth/login")})});export{i as __tla,t as default}; diff --git a/niucloud/public/web/_nuxt/auth.bind.ab578615.js b/niucloud/public/web/_nuxt/auth.bind.ab578615.js new file mode 100644 index 0000000..e87d806 --- /dev/null +++ b/niucloud/public/web/_nuxt/auth.bind.ab578615.js @@ -0,0 +1 @@ +const e="\u7ED1\u5B9A",s="\u7ED1\u5B9A\u4E2D",a="\u8BF7\u8F93\u5165\u8D26\u53F7",r="\u8BF7\u8F93\u5165\u5BC6\u7801",o="\u8BF7\u518D\u6B21\u786E\u8BA4\u5BC6\u7801",i="\u4E24\u6B21\u8F93\u5165\u7684\u5BC6\u7801\u4E0D\u4E00\u81F4",d="\u5FD8\u8BB0\u5BC6\u7801",n="\u5DF2\u6709\u8D26\u53F7",l="\u53BB\u767B\u5F55",c="\u548C",m="\u7ED1\u5B9A\u4EE3\u8868\u60A8\u540C\u610F",t="\u8D26\u53F7\u7ED1\u5B9A",b="\u624B\u673A\u53F7\u7ED1\u5B9A",P="\u8BF7\u8F93\u5165\u624B\u673A\u53F7",g="\u624B\u673A\u53F7\u7ED1\u5B9A",h={bind:e,binding:s,usernamePlaceholder:a,passwordPlaceholder:r,confirmPasswordPlaceholder:o,confirmPasswordError:i,resetpwd:d,haveAccount:n,toLogin:l,and:c,bindAgreeTips:m,usernameRegister:t,mobileRegister:b,mobilePlaceholder:P,mobileBind:g};export{c as and,e as bind,m as bindAgreeTips,s as binding,i as confirmPasswordError,o as confirmPasswordPlaceholder,h as default,n as haveAccount,g as mobileBind,P as mobilePlaceholder,b as mobileRegister,r as passwordPlaceholder,d as resetpwd,l as toLogin,a as usernamePlaceholder,t as usernameRegister}; diff --git a/niucloud/public/web/_nuxt/auth.login.69459761.js b/niucloud/public/web/_nuxt/auth.login.69459761.js new file mode 100644 index 0000000..965e46a --- /dev/null +++ b/niucloud/public/web/_nuxt/auth.login.69459761.js @@ -0,0 +1 @@ +const e="\u767B\u5F55\u4E2D",a="\u8BF7\u8F93\u5165\u8D26\u53F7",s="\u8BF7\u8F93\u5165\u5BC6\u7801",o="\u5FD8\u8BB0\u5BC6\u7801",l="\u8FD8\u6CA1\u6709\u8D26\u53F7",n="\u53BB\u6CE8\u518C",r="\u548C",i="\u767B\u5F55\u4EE3\u8868\u60A8\u540C\u610F",d="\u5BC6\u7801\u767B\u5F55",g="\u9A8C\u8BC1\u7801\u767B\u5F55",c="\u8BF7\u8F93\u5165\u624B\u673A\u53F7",t={logining:e,usernamePlaceholder:a,passwordPlaceholder:s,resetpwd:o,noAccount:l,toRegister:n,and:r,agreeTips:i,usernameLogin:d,mobileLogin:g,mobilePlaceholder:c};export{i as agreeTips,r as and,t as default,e as logining,g as mobileLogin,c as mobilePlaceholder,l as noAccount,s as passwordPlaceholder,o as resetpwd,n as toRegister,d as usernameLogin,a as usernamePlaceholder}; diff --git a/niucloud/public/web/_nuxt/auth.register.18779c1c.js b/niucloud/public/web/_nuxt/auth.register.18779c1c.js new file mode 100644 index 0000000..d485b83 --- /dev/null +++ b/niucloud/public/web/_nuxt/auth.register.18779c1c.js @@ -0,0 +1 @@ +const e="\u6CE8\u518C\u4E2D",r="\u8BF7\u8F93\u5165\u8D26\u53F7",s="\u8BF7\u8F93\u5165\u5BC6\u7801",a="\u8BF7\u518D\u6B21\u786E\u8BA4\u5BC6\u7801",o="\u4E24\u6B21\u8F93\u5165\u7684\u5BC6\u7801\u4E0D\u4E00\u81F4",i="\u5FD8\u8BB0\u5BC6\u7801",l="\u5DF2\u6709\u8D26\u53F7",d="\u53BB\u767B\u5F55",c="\u548C",n="\u6CE8\u518C\u4EE3\u8868\u60A8\u540C\u610F",t="\u8D26\u53F7\u6CE8\u518C",g="\u624B\u673A\u53F7\u6CE8\u518C",m="\u8BF7\u8F93\u5165\u624B\u673A\u53F7",P={registering:e,usernamePlaceholder:r,passwordPlaceholder:s,confirmPasswordPlaceholder:a,confirmPasswordError:o,resetpwd:i,haveAccount:l,toLogin:d,and:c,registerAgreeTips:n,usernameRegister:t,mobileRegister:g,mobilePlaceholder:m};export{c as and,o as confirmPasswordError,a as confirmPasswordPlaceholder,P as default,l as haveAccount,m as mobilePlaceholder,g as mobileRegister,s as passwordPlaceholder,n as registerAgreeTips,e as registering,i as resetpwd,d as toLogin,r as usernamePlaceholder,t as usernameRegister}; diff --git a/niucloud/public/web/_nuxt/balance.29f03df7.css b/niucloud/public/web/_nuxt/balance.29f03df7.css new file mode 100644 index 0000000..d162fe9 --- /dev/null +++ b/niucloud/public/web/_nuxt/balance.29f03df7.css @@ -0,0 +1 @@ +.box-card[data-v-b1569c87]{border:none!important}.text-color[data-v-b1569c87]{color:var(--jjext-color-brand)} diff --git a/niucloud/public/web/_nuxt/balance.c54f6ff3.js b/niucloud/public/web/_nuxt/balance.c54f6ff3.js new file mode 100644 index 0000000..e71535d --- /dev/null +++ b/niucloud/public/web/_nuxt/balance.c54f6ff3.js @@ -0,0 +1 @@ +import{_ as C,E as S,v as k,__tla as E}from"./el-loading.5f1a5791.js";import{E as I,a as O,b as P,__tla as T}from"./el-select.6d0e4b59.js";import{f as U,a1 as B,o as p,k as m,S as q,m as r,w as i,l as s,t as A,u as e,bv as D,q as n,__tla as L}from"./entry.60adbc61.js";import{__tla as N}from"./el-popper.f96f4ae9.js";import{__tla as Q}from"./el-input.9a624f32.js";import{_ as F}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as G}from"./use-form-item.9fe2eb56.js";import{__tla as H}from"./index.f6314314.js";import{__tla as J}from"./index.59e0a5b1.js";import{__tla as K}from"./debounce.cf505dd3.js";import{__tla as M}from"./vnode.a078d472.js";let u,R=Promise.all([(()=>{try{return E}catch{}})(),(()=>{try{return T}catch{}})(),(()=>{try{return L}catch{}})(),(()=>{try{return N}catch{}})(),(()=>{try{return Q}catch{}})(),(()=>{try{return G}catch{}})(),(()=>{try{return H}catch{}})(),(()=>{try{return J}catch{}})(),(()=>{try{return K}catch{}})(),(()=>{try{return M}catch{}})()]).then(async()=>{const d={class:"w-full h-full bg-page pt-6"},f={class:"main-container flex justify-between"},h={class:"card-header"},g={class:"px-6"},y={class:"mt-[16px] flex justify-end"},b=U({__name:"balance",setup(V){const a=B({page:1,limit:10,total:0,loading:!0,data:[]}),c=(t=1)=>{a.loading=!0,a.page=t,D({page:a.page,limit:a.limit}).then(l=>{a.loading=!1,a.data=l.data.data,a.total=l.data.total}).catch(()=>{a.loading=!1})};return c(),(t,l)=>{const v=C,_=I,w=O,x=P,z=S,j=k;return p(),m("div",d,[q((p(),m("div",f,[r(v),r(z,{class:"box-card flex-1 ml-4",shadow:"never"},{header:i(()=>[s("div",h,[s("span",null,A(("t"in t?t.t:e(n))("myBalance")),1)])]),default:i(()=>[s("div",g,[r(w,{data:a.data,stripe:""},{default:i(()=>[r(_,{prop:"account_type_name",label:("t"in t?t.t:e(n))("accountType"),width:"180"},null,8,["label"]),r(_,{prop:"account_data",label:("t"in t?t.t:e(n))("changeInAmount"),width:"120"},null,8,["label"]),r(_,{prop:"from_type_name",label:("t"in t?t.t:e(n))("modeOfOccurrence"),width:"180"},null,8,["label"]),r(_,{prop:"memo",label:("t"in t?t.t:e(n))("remark"),width:"180"},null,8,["label"]),r(_,{prop:"create_time",label:("t"in t?t.t:e(n))("occurrenceTime")},null,8,["label"])]),_:1},8,["data"]),s("div",y,[r(x,{"current-page":a.page,"onUpdate:currentPage":l[0]||(l[0]=o=>a.page=o),"page-size":a.limit,"onUpdate:pageSize":l[1]||(l[1]=o=>a.limit=o),layout:"total, sizes, prev, pager, next, jumper",total:a.total,onSizeChange:l[2]||(l[2]=o=>c()),onCurrentChange:c},null,8,["current-page","page-size","total"])])])]),_:1})])),[[j,a.loading]])])}}});u=F(b,[["__scopeId","data-v-b1569c87"]])});export{R as __tla,u as default}; diff --git a/niucloud/public/web/_nuxt/bind.0b1cde87.js b/niucloud/public/web/_nuxt/bind.0b1cde87.js new file mode 100644 index 0000000..4de86c3 --- /dev/null +++ b/niucloud/public/web/_nuxt/bind.0b1cde87.js @@ -0,0 +1 @@ +import{E as j,__tla as z}from"./el-input.9a624f32.js";import{E as F,a as L,__tla as T}from"./el-overlay.ae79e505.js";import{u as A,_ as D,t as G,__tla as H}from"./test.03e3af90.js";import{E as J,__tla as K}from"./el-button.946140c1.js";import{f as M,h as N,i as h,x as u,a1 as O,aa as Q,o as S,k as W,l as c,t as y,u as i,m as r,w as s,p as $,ae as X,af as Y,q as o,__tla as Z}from"./entry.60adbc61.js";import{u as ee,__tla as ae}from"./useLogin.368406ce.js";import{_ as le}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as te}from"./use-form-item.9fe2eb56.js";import{__tla as re}from"./index.f6314314.js";import{__tla as oe}from"./index.59e0a5b1.js";import{__tla as ie}from"./vnode.a078d472.js";import{__tla as se}from"./throttle.95940245.js";import{__tla as _e}from"./debounce.cf505dd3.js";let g,ne=Promise.all([(()=>{try{return z}catch{}})(),(()=>{try{return T}catch{}})(),(()=>{try{return H}catch{}})(),(()=>{try{return K}catch{}})(),(()=>{try{return Z}catch{}})(),(()=>{try{return ae}catch{}})(),(()=>{try{return te}catch{}})(),(()=>{try{return re}catch{}})(),(()=>{try{return oe}catch{}})(),(()=>{try{return ie}catch{}})(),(()=>{try{return se}catch{}})(),(()=>{try{return _e}catch{}})()]).then(async()=>{const v={class:"w-full h-full bg-page flex items-center justify-center"},x={class:"flex bg-white"},k={class:"bg-white w-[380px] p-[30px]"},V={class:"flex items-end mb-[30px] mt-[15px]"},w={class:"mr-[20px] text-base cursor-pointer leading-none font-bold"},P=M({__name:"bind",setup(me){const f=N(),E=h(()=>f.info),_=u(!1),l=O({mobile:"",mobile_code:"",mobile_key:"",openid:Q("openId").value}),q=h(()=>({mobile:[{type:"string",required:!0,message:o("mobilePlaceholder"),trigger:["blur","change"]},{validator(e,a,n){return G.mobile(a)},message:o("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:!0,message:o("codePlaceholder"),trigger:["blur","change"]}})),d=u(),C=async()=>{var e;await((e=d.value)==null?void 0:e.validate(async(a,n)=>{if(a){if(_.value)return;_.value=!0,(E.value?X:Y)(l).then(t=>{f.setToken(t.data.token),ee().handleLoginBack()}).catch(()=>{_.value=!1,p.refresh()})}}))},p=A(l);p.refresh();const b=u(null),U=async()=>{var e;await((e=d.value)==null?void 0:e.validateField("mobile",async(a,n)=>{var t;a&&((t=b.value)==null||t.send())}))};return(e,a)=>{const n=j,t=F,B=D,I=J,R=L;return S(),W("div",v,[c("div",x,[c("div",k,[c("div",V,[c("div",w,y(("t"in e?e.t:i(o))("mobileBind")),1)]),r(R,{model:l,ref_key:"formRef",ref:d,rules:i(q),"validate-on-rule-change":!1},{default:s(()=>[c("div",null,[r(t,{prop:"mobile"},{default:s(()=>[r(n,{modelValue:l.mobile,"onUpdate:modelValue":a[0]||(a[0]=m=>l.mobile=m),placeholder:("t"in e?e.t:i(o))("mobilePlaceholder"),clearable:""},null,8,["modelValue","placeholder"])]),_:1}),r(t,{prop:"mobile_code"},{default:s(()=>[r(n,{modelValue:l.mobile_code,"onUpdate:modelValue":a[2]||(a[2]=m=>l.mobile_code=m),placeholder:("t"in e?e.t:i(o))("codePlaceholder")},{suffix:s(()=>[r(B,{mobile:l.mobile,type:"login",modelValue:l.mobile_key,"onUpdate:modelValue":a[1]||(a[1]=m=>l.mobile_key=m),onClick:U,ref_key:"smsCodeRef",ref:b},null,8,["mobile","modelValue"])]),_:1},8,["modelValue","placeholder"])]),_:1})]),r(t,null,{default:s(()=>[r(I,{type:"primary",class:"mt-[20px] w-full",size:"large",onClick:C,loading:_.value},{default:s(()=>[$(y(_.value?("t"in e?e.t:i(o))("binding"):("t"in e?e.t:i(o))("bind")),1)]),_:1},8,["loading"])]),_:1})]),_:1},8,["model","rules"])])])])}}});g=le(P,[["__scopeId","data-v-a143dbf5"]])});export{ne as __tla,g as default}; diff --git a/niucloud/public/web/_nuxt/bind.ce26e328.css b/niucloud/public/web/_nuxt/bind.ce26e328.css new file mode 100644 index 0000000..3909318 --- /dev/null +++ b/niucloud/public/web/_nuxt/bind.ce26e328.css @@ -0,0 +1 @@ +[data-v-a143dbf5] .el-form-item .el-input__wrapper{border-bottom:1px solid var(--el-input-border-color);border-radius:0;box-shadow:unset!important;padding:8px 0}[data-v-a143dbf5] .el-form-item .el-input__wrapper.is-focus{border-bottom:1px solid var(--el-input-focus-border-color)}[data-v-a143dbf5] .el-form-item.is-error .el-input__wrapper{border-bottom:1px solid var(--el-color-danger)}[data-v-a143dbf5] .el-form-item__error{padding-top:5px} diff --git a/niucloud/public/web/_nuxt/center.0e9c31f4.css b/niucloud/public/web/_nuxt/center.0e9c31f4.css new file mode 100644 index 0000000..f80982a --- /dev/null +++ b/niucloud/public/web/_nuxt/center.0e9c31f4.css @@ -0,0 +1 @@ +.el-upload{--el-upload-dragger-padding-horizontal:40px;--el-upload-dragger-padding-vertical:10px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center;outline:0}.el-upload__input{display:none}.el-upload__tip{color:var(--el-text-color-regular);font-size:12px;margin-top:7px}.el-upload iframe{left:0;opacity:0;position:absolute;top:0;z-index:-1}.el-upload--picture-card{--el-upload-picture-card-size:148px;align-items:center;background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;height:var(--el-upload-picture-card-size);justify-content:center;vertical-align:top;width:var(--el-upload-picture-card-size)}.el-upload--picture-card i{color:var(--el-text-color-secondary);font-size:28px}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{color:var(--el-color-primary)}.el-upload:focus,.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);border-radius:6px;box-sizing:border-box;cursor:pointer;overflow:hidden;padding:var(--el-upload-dragger-padding-horizontal) var(--el-upload-dragger-padding-vertical);position:relative;text-align:center}.el-upload-dragger .el-icon--upload{color:var(--el-text-color-placeholder);font-size:67px;line-height:50px;margin-bottom:16px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);font-size:14px;text-align:center}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary);padding:calc(var(--el-upload-dragger-padding-horizontal) - 1px) calc(var(--el-upload-dragger-padding-vertical) - 1px)}.el-upload-list{list-style:none;margin:10px 0 0;padding:0;position:relative}.el-upload-list__item{border-radius:4px;box-sizing:border-box;color:var(--el-text-color-regular);font-size:14px;margin-bottom:5px;position:relative;transition:all .5s cubic-bezier(.55,0,.1,1);width:100%}.el-upload-list__item .el-progress{position:absolute;top:20px;width:100%}.el-upload-list__item .el-progress__text{position:absolute;right:0;top:-13px}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{color:var(--el-text-color-regular);cursor:pointer;display:none;opacity:.75;position:absolute;right:5px;top:50%;transform:translateY(-50%);transition:opacity var(--el-transition-duration)}.el-upload-list__item .el-icon--close:hover{color:var(--el-color-primary);opacity:1}.el-upload-list__item .el-icon--close-tip{color:var(--el-color-primary);cursor:pointer;display:none;font-size:12px;font-style:normal;opacity:1;position:absolute;right:5px;top:1px}.el-upload-list__item:hover{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{display:inline-flex;flex-direction:column;justify-content:center;margin-left:4px;width:calc(100% - 30px)}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:focus,.el-upload-list__item.is-success .el-upload-list__item-name:hover{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:active,.el-upload-list__item.is-success:not(.focusing):focus{outline-width:0}.el-upload-list__item.is-success:active .el-icon--close-tip,.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip{display:none}.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:hover .el-upload-list__item-status-label{display:none;opacity:0}.el-upload-list__item-name{align-items:center;color:var(--el-text-color-regular);display:inline-flex;font-size:var(--el-font-size-base);padding:0 4px;text-align:center;transition:color var(--el-transition-duration)}.el-upload-list__item-name .el-icon{color:var(--el-text-color-secondary);margin-right:6px}.el-upload-list__item-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-upload-list__item-status-label{align-items:center;display:none;height:100%;justify-content:center;line-height:inherit;position:absolute;right:5px;top:0;transition:opacity var(--el-transition-duration)}.el-upload-list__item-delete{color:var(--el-text-color-regular);display:none;font-size:12px;position:absolute;right:10px;top:0}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{--el-upload-list-picture-card-size:148px;display:inline-flex;flex-wrap:wrap;margin:0}.el-upload-list--picture-card .el-upload-list__item{background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;display:inline-flex;height:var(--el-upload-list-picture-card-size);margin:0 8px 8px 0;overflow:hidden;padding:0;width:var(--el-upload-list-picture-card-size)}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{display:block;opacity:0}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{height:100%;object-fit:contain;width:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{background:var(--el-color-success);height:24px;right:-15px;text-align:center;top:-6px;transform:rotate(45deg);width:40px}.el-upload-list--picture-card .el-upload-list__item-status-label i{font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{align-items:center;background-color:var(--el-overlay-color-lighter);color:#fff;cursor:default;display:inline-flex;font-size:20px;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity var(--el-transition-duration);width:100%}.el-upload-list--picture-card .el-upload-list__item-actions span{cursor:pointer;display:none}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:1rem}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{color:inherit;font-size:inherit;position:static}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{bottom:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:126px}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{align-items:center;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);border-radius:6px;box-sizing:border-box;display:flex;margin-top:10px;overflow:hidden;padding:10px;z-index:0}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{display:inline-flex;opacity:0}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{align-items:center;background-color:var(--el-color-white);display:inline-flex;height:70px;justify-content:center;object-fit:contain;position:relative;width:70px;z-index:1}.el-upload-list--picture .el-upload-list__item-status-label{background:var(--el-color-success);height:26px;position:absolute;right:-17px;text-align:center;top:-7px;transform:rotate(45deg);width:46px}.el-upload-list--picture .el-upload-list__item-status-label i{font-size:12px;margin-top:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{cursor:default;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:10}.el-upload-cover:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-upload-cover img{display:block;height:100%;width:100%}.el-upload-cover__label{background:var(--el-color-success);height:24px;right:-15px;text-align:center;top:-6px;transform:rotate(45deg);width:40px}.el-upload-cover__label i{color:#fff;font-size:12px;margin-top:11px;transform:rotate(-45deg)}.el-upload-cover__progress{display:inline-block;position:static;vertical-align:middle;width:243px}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{height:100%;left:0;position:absolute;top:0;width:100%}.el-upload-cover__interact{background-color:var(--el-overlay-color-light);bottom:0;height:100%;left:0;position:absolute;text-align:center;width:100%}.el-upload-cover__interact .btn{color:#fff;cursor:pointer;display:inline-block;font-size:14px;margin-top:60px;transition:var(--el-transition-md-fade);vertical-align:middle}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;display:block;font-size:24px;line-height:inherit;margin:0 auto 5px}.el-upload-cover__title{background-color:#fff;bottom:0;color:var(--el-text-color-primary);font-size:14px;font-weight:400;height:36px;left:0;line-height:36px;margin:0;overflow:hidden;padding:0 10px;position:absolute;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.el-upload-cover+.el-upload__inner{opacity:0;position:relative;z-index:1}.el-progress{align-items:center;display:flex;line-height:1;position:relative}.el-progress__text{color:var(--el-text-color-regular);font-size:14px;line-height:1;margin-left:5px;min-width:50px}.el-progress__text i{display:block;vertical-align:middle}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{left:0;margin:0;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:100%}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{display:inline-block;vertical-align:middle}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{display:block;margin-right:0;padding-right:0}.el-progress--text-inside .el-progress-bar{margin-right:0;padding-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{box-sizing:border-box;flex-grow:1}.el-progress-bar__outer{background-color:var(--el-border-color-lighter);border-radius:100px;height:6px;overflow:hidden;position:relative;vertical-align:middle}.el-progress-bar__inner{background-color:var(--el-color-primary);border-radius:100px;height:100%;left:0;line-height:1;position:absolute;text-align:right;top:0;transition:width .6s ease;white-space:nowrap}.el-progress-bar__inner:after{content:"";display:inline-block;height:100%;vertical-align:middle}.el-progress-bar__inner--indeterminate{animation:indeterminate 3s infinite;transform:translateZ(0)}.el-progress-bar__innerText{color:#fff;display:inline-block;font-size:12px;margin:0 5px;vertical-align:middle}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}.box-card[data-v-d2ca1de7]{border:none!important}[data-v-d2ca1de7] .form-wrap .el-form-item{align-items:center} diff --git a/niucloud/public/web/_nuxt/center.eadc75da.js b/niucloud/public/web/_nuxt/center.eadc75da.js new file mode 100644 index 0000000..f3f62e0 --- /dev/null +++ b/niucloud/public/web/_nuxt/center.eadc75da.js @@ -0,0 +1,6 @@ +import{_ as Et,E as St,v as Tt,__tla as Ct}from"./el-loading.5f1a5791.js";import{J as H,ah as w,f as B,B as I,i as T,aO as Lt,aP as de,aQ as Ut,aR as pe,aq as fe,aN as Pt,Q as me,o as h,k as R,C as b,u as e,l as E,E as N,r as L,t as O,y as $,c as D,w as k,at as Dt,U as q,D as M,F as ve,ai as Y,aS as C,am as Bt,x as G,Z as Ot,$ as jt,aT as ye,T as V,m as F,aU as At,as as Nt,aV as qt,aW as Ht,aX as It,a0 as Vt,H as ee,aY as Wt,aZ as Mt,a_ as Kt,L as he,A as Xt,O as zt,P as Jt,a$ as Qt,b0 as ge,aC as te,h as Zt,a1 as Yt,j as Gt,S as ea,p as be,b1 as ke,b2 as _e,q as A,ad as ta,b as aa,aH as sa,b3 as la,__tla as ra}from"./entry.60adbc61.js";import{t as ae,i as we,d as oa,__tla as na}from"./index.f6314314.js";import{u as X,__tla as ia}from"./use-form-item.9fe2eb56.js";import{c as ua,E as ca,a as da,b as pa,__tla as fa}from"./el-overlay.ae79e505.js";import{E as ma,__tla as va}from"./el-input.9a624f32.js";import{E as ya,__tla as ha}from"./el-button.946140c1.js";import{_ as ga,__tla as ba}from"./default_headimg.1ff33930.js";import{_ as ka}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as _a}from"./el-popper.f96f4ae9.js";import{__tla as wa}from"./index.59e0a5b1.js";import{__tla as xa}from"./vnode.a078d472.js";let xe,$a=Promise.all([(()=>{try{return Ct}catch{}})(),(()=>{try{return ra}catch{}})(),(()=>{try{return na}catch{}})(),(()=>{try{return ia}catch{}})(),(()=>{try{return fa}catch{}})(),(()=>{try{return va}catch{}})(),(()=>{try{return ha}catch{}})(),(()=>{try{return ba}catch{}})(),(()=>{try{return _a}catch{}})(),(()=>{try{return wa}catch{}})(),(()=>{try{return xa}catch{}})()]).then(async()=>{var $e=1,Re=4;function Fe(l){return ua(l,$e|Re)}const Ee=H({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:l=>l>=0&&l<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:{type:Boolean,default:!1},duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:w(String),default:"round"},textInside:{type:Boolean,default:!1},width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:w([String,Array,Function]),default:""},format:{type:w(Function),default:l=>`${l}%`}}),Se=["aria-valuenow"],Te={viewBox:"0 0 100 100"},Ce=["d","stroke","stroke-width"],Le=["d","stroke","opacity","stroke-linecap","stroke-width"],Ue={key:0},Pe=B({name:"ElProgress"}),De=B({...Pe,props:Ee,setup(l){const s=l,r={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},a=I("progress"),p=T(()=>({width:`${s.percentage}%`,animationDuration:`${s.duration}s`,backgroundColor:U(s.percentage)})),f=T(()=>(s.strokeWidth/s.width*100).toFixed(1)),m=T(()=>["circle","dashboard"].includes(s.type)?Number.parseInt(`${50-Number.parseFloat(f.value)/2}`,10):0),d=T(()=>{const i=m.value,P=s.type==="dashboard";return` + M 50 50 + m 0 ${P?"":"-"}${i} + a ${i} ${i} 0 1 1 0 ${P?"-":""}${i*2} + a ${i} ${i} 0 1 1 0 ${P?"":"-"}${i*2} + `}),v=T(()=>2*Math.PI*m.value),u=T(()=>s.type==="dashboard"?.75:1),x=T(()=>`${-1*v.value*(1-u.value)/2}px`),y=T(()=>({strokeDasharray:`${v.value*u.value}px, ${v.value}px`,strokeDashoffset:x.value})),o=T(()=>({strokeDasharray:`${v.value*u.value*(s.percentage/100)}px, ${v.value}px`,strokeDashoffset:x.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),t=T(()=>{let i;return s.color?i=U(s.percentage):i=r[s.status]||r.default,i}),n=T(()=>s.status==="warning"?Lt:s.type==="line"?s.status==="success"?de:Ut:s.status==="success"?pe:fe),g=T(()=>s.type==="line"?12+s.strokeWidth*.4:s.width*.111111+2),_=T(()=>s.format(s.percentage));function c(i){const P=100/i.length;return i.map((S,j)=>me(S)?{color:S,percentage:(j+1)*P}:S).sort((S,j)=>S.percentage-j.percentage)}const U=i=>{var P;const{color:S}=s;if(Pt(S))return S(i);if(me(S))return S;{const j=c(S);for(const K of j)if(K.percentage>i)return K.color;return(P=j[j.length-1])==null?void 0:P.color}};return(i,P)=>(h(),R("div",{class:b([e(a).b(),e(a).m(i.type),e(a).is(i.status),{[e(a).m("without-text")]:!i.showText,[e(a).m("text-inside")]:i.textInside}]),role:"progressbar","aria-valuenow":i.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[i.type==="line"?(h(),R("div",{key:0,class:b(e(a).b("bar"))},[E("div",{class:b(e(a).be("bar","outer")),style:N({height:`${i.strokeWidth}px`})},[E("div",{class:b([e(a).be("bar","inner"),{[e(a).bem("bar","inner","indeterminate")]:i.indeterminate}]),style:N(e(p))},[(i.showText||i.$slots.default)&&i.textInside?(h(),R("div",{key:0,class:b(e(a).be("bar","innerText"))},[L(i.$slots,"default",{percentage:i.percentage},()=>[E("span",null,O(e(_)),1)])],2)):$("v-if",!0)],6)],6)],2)):(h(),R("div",{key:1,class:b(e(a).b("circle")),style:N({height:`${i.width}px`,width:`${i.width}px`})},[(h(),R("svg",Te,[E("path",{class:b(e(a).be("circle","track")),d:e(d),stroke:`var(${e(a).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-width":e(f),fill:"none",style:N(e(y))},null,14,Ce),E("path",{class:b(e(a).be("circle","path")),d:e(d),stroke:e(t),fill:"none",opacity:i.percentage?1:0,"stroke-linecap":i.strokeLinecap,"stroke-width":e(f),style:N(e(o))},null,14,Le)]))],6)),(i.showText||i.$slots.default)&&!i.textInside?(h(),R("div",{key:2,class:b(e(a).e("text")),style:N({fontSize:`${e(g)}px`})},[L(i.$slots,"default",{percentage:i.percentage},()=>[i.status?(h(),D(e(q),{key:1},{default:k(()=>[(h(),D(Dt(e(n))))]),_:1})):(h(),R("span",Ue,O(e(_)),1))])],6)):$("v-if",!0)],10,Se))}});var Be=M(De,[["__file","/home/runner/work/element-plus/element-plus/packages/components/progress/src/progress.vue"]]);const Oe=ve(Be),se=Symbol("uploadContextKey"),je="ElUpload";class Ae extends Error{constructor(s,r,a,p){super(s),this.name="UploadAjaxError",this.status=r,this.method=a,this.url=p}}function le(l,s,r){let a;return r.response?a=`${r.response.error||r.response}`:r.responseText?a=`${r.responseText}`:a=`fail to ${s.method} ${l} ${r.status}`,new Ae(a,r.status,s.method,l)}function Ne(l){const s=l.responseText||l.response;if(!s)return s;try{return JSON.parse(s)}catch{return s}}const qe=l=>{typeof XMLHttpRequest>"u"&&ae(je,"XMLHttpRequest is undefined");const s=new XMLHttpRequest,r=l.action;s.upload&&s.upload.addEventListener("progress",f=>{const m=f;m.percent=f.total>0?f.loaded/f.total*100:0,l.onProgress(m)});const a=new FormData;if(l.data)for(const[f,m]of Object.entries(l.data))Array.isArray(m)?a.append(f,...m):a.append(f,m);a.append(l.filename,l.file,l.file.name),s.addEventListener("error",()=>{l.onError(le(r,l,s))}),s.addEventListener("load",()=>{if(s.status<200||s.status>=300)return l.onError(le(r,l,s));l.onSuccess(Ne(s))}),s.open(l.method,r,!0),l.withCredentials&&"withCredentials"in s&&(s.withCredentials=!0);const p=l.headers||{};if(p instanceof Headers)p.forEach((f,m)=>s.setRequestHeader(m,f));else for(const[f,m]of Object.entries(p))we(m)||s.setRequestHeader(f,String(m));return s.send(a),s},re=["text","picture","picture-card"];let He=1;const z=()=>Date.now()+He++,oe=H({action:{type:String,default:"#"},headers:{type:w(Object)},method:{type:String,default:"post"},data:{type:Object,default:()=>Y({})},multiple:{type:Boolean,default:!1},name:{type:String,default:"file"},drag:{type:Boolean,default:!1},withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},type:{type:String,default:"select"},fileList:{type:w(Array),default:()=>Y([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:re,default:"text"},httpRequest:{type:w(Function),default:qe},disabled:Boolean,limit:Number}),Ie=H({...oe,beforeUpload:{type:w(Function),default:C},beforeRemove:{type:w(Function)},onRemove:{type:w(Function),default:C},onChange:{type:w(Function),default:C},onPreview:{type:w(Function),default:C},onSuccess:{type:w(Function),default:C},onProgress:{type:w(Function),default:C},onError:{type:w(Function),default:C},onExceed:{type:w(Function),default:C}}),Ve=H({files:{type:w(Array),default:()=>Y([])},disabled:{type:Boolean,default:!1},handlePreview:{type:w(Function),default:C},listType:{type:String,values:re,default:"text"}}),We={remove:l=>!!l},Me=["onKeydown"],Ke=["src"],Xe=["onClick"],ze=["onClick"],Je=["onClick"],Qe=B({name:"ElUploadList"}),Ze=B({...Qe,props:Ve,emits:We,setup(l,{emit:s}){const{t:r}=Bt(),a=I("upload"),p=I("icon"),f=I("list"),m=X(),d=G(!1),v=u=>{s("remove",u)};return(u,x)=>(h(),D(Ht,{tag:"ul",class:b([e(a).b("list"),e(a).bm("list",u.listType),e(a).is("disabled",e(m))]),name:e(f).b()},{default:k(()=>[(h(!0),R(Ot,null,jt(u.files,y=>(h(),R("li",{key:y.uid||y.name,class:b([e(a).be("list","item"),e(a).is(y.status),{focusing:d.value}]),tabindex:"0",onKeydown:ye(o=>!e(m)&&v(y),["delete"]),onFocus:x[0]||(x[0]=o=>d.value=!0),onBlur:x[1]||(x[1]=o=>d.value=!1),onClick:x[2]||(x[2]=o=>d.value=!1)},[L(u.$slots,"default",{file:y},()=>[u.listType==="picture"||y.status!=="uploading"&&u.listType==="picture-card"?(h(),R("img",{key:0,class:b(e(a).be("list","item-thumbnail")),src:y.url,alt:""},null,10,Ke)):$("v-if",!0),y.status==="uploading"||u.listType!=="picture-card"?(h(),R("div",{key:1,class:b(e(a).be("list","item-info"))},[E("a",{class:b(e(a).be("list","item-name")),onClick:V(o=>u.handlePreview(y),["prevent"])},[F(e(q),{class:b(e(p).m("document"))},{default:k(()=>[F(e(At))]),_:1},8,["class"]),E("span",{class:b(e(a).be("list","item-file-name"))},O(y.name),3)],10,Xe),y.status==="uploading"?(h(),D(e(Oe),{key:0,type:u.listType==="picture-card"?"circle":"line","stroke-width":u.listType==="picture-card"?6:2,percentage:Number(y.percentage),style:N(u.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):$("v-if",!0)],2)):$("v-if",!0),E("label",{class:b(e(a).be("list","item-status-label"))},[u.listType==="text"?(h(),D(e(q),{key:0,class:b([e(p).m("upload-success"),e(p).m("circle-check")])},{default:k(()=>[F(e(de))]),_:1},8,["class"])):["picture-card","picture"].includes(u.listType)?(h(),D(e(q),{key:1,class:b([e(p).m("upload-success"),e(p).m("check")])},{default:k(()=>[F(e(pe))]),_:1},8,["class"])):$("v-if",!0)],2),e(m)?$("v-if",!0):(h(),D(e(q),{key:2,class:b(e(p).m("close")),onClick:o=>v(y)},{default:k(()=>[F(e(fe))]),_:2},1032,["class","onClick"])),$(" Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn"),$(" This is a bug which needs to be fixed "),$(" TODO: Fix the incorrect navigation interaction "),e(m)?$("v-if",!0):(h(),R("i",{key:3,class:b(e(p).m("close-tip"))},O(e(r)("el.upload.deleteTip")),3)),u.listType==="picture-card"?(h(),R("span",{key:4,class:b(e(a).be("list","item-actions"))},[E("span",{class:b(e(a).be("list","item-preview")),onClick:o=>u.handlePreview(y)},[F(e(q),{class:b(e(p).m("zoom-in"))},{default:k(()=>[F(e(Nt))]),_:1},8,["class"])],10,ze),e(m)?$("v-if",!0):(h(),R("span",{key:0,class:b(e(a).be("list","item-delete")),onClick:o=>v(y)},[F(e(q),{class:b(e(p).m("delete"))},{default:k(()=>[F(e(qt))]),_:1},8,["class"])],10,Je))],2)):$("v-if",!0)])],42,Me))),128)),L(u.$slots,"append")]),_:3},8,["class","name"]))}});var ne=M(Ze,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-list.vue"]]);const Ye=H({disabled:{type:Boolean,default:!1}}),Ge={file:l=>It(l)},et=["onDrop","onDragover"],ie="ElUploadDrag",tt=B({name:ie}),at=B({...tt,props:Ye,emits:Ge,setup(l,{emit:s}){const r=Vt(se);r||ae(ie,"usage: ");const a=I("upload"),p=G(!1),f=X(),m=v=>{if(f.value)return;p.value=!1,v.stopPropagation();const u=Array.from(v.dataTransfer.files),x=r.accept.value;if(!x){s("file",u);return}const y=u.filter(o=>{const{type:t,name:n}=o,g=n.includes(".")?`.${n.split(".").pop()}`:"",_=t.replace(/\/.*$/,"");return x.split(",").map(c=>c.trim()).filter(c=>c).some(c=>c.startsWith(".")?g===c:/\/\*$/.test(c)?_===c.replace(/\/\*$/,""):/^[^/]+\/[^/]+$/.test(c)?t===c:!1)});s("file",y)},d=()=>{f.value||(p.value=!0)};return(v,u)=>(h(),R("div",{class:b([e(a).b("dragger"),e(a).is("dragover",p.value)]),onDrop:V(m,["prevent"]),onDragover:V(d,["prevent"]),onDragleave:u[0]||(u[0]=V(x=>p.value=!1,["prevent"]))},[L(v.$slots,"default")],42,et))}});var st=M(at,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-dragger.vue"]]);const lt=H({...oe,beforeUpload:{type:w(Function),default:C},onRemove:{type:w(Function),default:C},onStart:{type:w(Function),default:C},onSuccess:{type:w(Function),default:C},onProgress:{type:w(Function),default:C},onError:{type:w(Function),default:C},onExceed:{type:w(Function),default:C}}),rt=["onKeydown"],ot=["name","multiple","accept"],nt=B({name:"ElUploadContent",inheritAttrs:!1}),it=B({...nt,props:lt,setup(l,{expose:s}){const r=l,a=I("upload"),p=X(),f=ee({}),m=ee(),d=t=>{if(t.length===0)return;const{autoUpload:n,limit:g,fileList:_,multiple:c,onStart:U,onExceed:i}=r;if(g&&_.length+t.length>g){i(t,_);return}c||(t=t.slice(0,1));for(const P of t){const S=P;S.uid=z(),U(S),n&&v(S)}},v=async t=>{if(m.value.value="",!r.beforeUpload)return u(t);let n,g={};try{const c=r.beforeUpload(t);g=Wt(r.data)?Fe(r.data):r.data,n=await c}catch{n=!1}if(n===!1){r.onRemove(t);return}let _=t;n instanceof Blob&&(n instanceof File?_=n:_=new File([n],t.name,{type:t.type})),u(Object.assign(_,{uid:t.uid}),g)},u=(t,n)=>{const{headers:g,data:_,method:c,withCredentials:U,name:i,action:P,onProgress:S,onSuccess:j,onError:K,httpRequest:Ft}=r,{uid:J}=t,Q={headers:g||{},withCredentials:U,file:t,data:n??_,method:c,filename:i,action:P,onProgress:W=>{S(W,t)},onSuccess:W=>{j(W,t),delete f.value[J]},onError:W=>{K(W,t),delete f.value[J]}},Z=Ft(Q);f.value[J]=Z,Z instanceof Promise&&Z.then(Q.onSuccess,Q.onError)},x=t=>{const n=t.target.files;n&&d(Array.from(n))},y=()=>{p.value||(m.value.value="",m.value.click())},o=()=>{y()};return s({abort:t=>{Mt(f.value).filter(t?([n])=>String(t.uid)===n:()=>!0).forEach(([n,g])=>{g instanceof XMLHttpRequest&&g.abort(),delete f.value[n]})},upload:v}),(t,n)=>(h(),R("div",{class:b([e(a).b(),e(a).m(t.listType),e(a).is("drag",t.drag)]),tabindex:"0",onClick:y,onKeydown:ye(V(o,["self"]),["enter","space"])},[t.drag?(h(),D(st,{key:0,disabled:e(p),onFile:d},{default:k(()=>[L(t.$slots,"default")]),_:3},8,["disabled"])):L(t.$slots,"default",{key:1}),E("input",{ref_key:"inputRef",ref:m,class:b(e(a).e("input")),name:t.name,multiple:t.multiple,accept:t.accept,type:"file",onChange:x,onClick:n[0]||(n[0]=V(()=>{},["stop"]))},null,42,ot)],42,rt))}});var ue=M(it,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-content.vue"]]);const ce="ElUpload",ut=l=>{var s;(s=l.url)!=null&&s.startsWith("blob:")&&URL.revokeObjectURL(l.url)},ct=(l,s)=>{const r=Kt(l,"fileList",void 0,{passive:!0}),a=o=>r.value.find(t=>t.uid===o.uid);function p(o){var t;(t=s.value)==null||t.abort(o)}function f(o=["ready","uploading","success","fail"]){r.value=r.value.filter(t=>!o.includes(t.status))}const m=(o,t)=>{const n=a(t);n&&(console.error(o),n.status="fail",r.value.splice(r.value.indexOf(n),1),l.onError(o,n,r.value),l.onChange(n,r.value))},d=(o,t)=>{const n=a(t);n&&(l.onProgress(o,n,r.value),n.status="uploading",n.percentage=Math.round(o.percent))},v=(o,t)=>{const n=a(t);n&&(n.status="success",n.response=o,l.onSuccess(o,n,r.value),l.onChange(n,r.value))},u=o=>{we(o.uid)&&(o.uid=z());const t={name:o.name,percentage:0,status:"ready",size:o.size,raw:o,uid:o.uid};if(l.listType==="picture-card"||l.listType==="picture")try{t.url=URL.createObjectURL(o)}catch(n){oa(ce,n.message),l.onError(n,t,r.value)}r.value=[...r.value,t],l.onChange(t,r.value)},x=async o=>{const t=o instanceof File?a(o):o;t||ae(ce,"file to be removed not found");const n=g=>{p(g);const _=r.value;_.splice(_.indexOf(g),1),l.onRemove(g,_),ut(g)};l.beforeRemove?await l.beforeRemove(t,r.value)!==!1&&n(t):n(t)};function y(){r.value.filter(({status:o})=>o==="ready").forEach(({raw:o})=>{var t;return o&&((t=s.value)==null?void 0:t.upload(o))})}return he(()=>l.listType,o=>{o!=="picture-card"&&o!=="picture"||(r.value=r.value.map(t=>{const{raw:n,url:g}=t;if(!g&&n)try{t.url=URL.createObjectURL(n)}catch(_){l.onError(_,t,r.value)}return t}))}),he(r,o=>{for(const t of o)t.uid||(t.uid=z()),t.status||(t.status="success")},{immediate:!0,deep:!0}),{uploadFiles:r,abort:p,clearFiles:f,handleError:m,handleProgress:d,handleStart:u,handleSuccess:v,handleRemove:x,submit:y}},dt=B({name:"ElUpload"}),pt=B({...dt,props:Ie,setup(l,{expose:s}){const r=l,a=Xt(),p=X(),f=ee(),{abort:m,submit:d,clearFiles:v,uploadFiles:u,handleStart:x,handleError:y,handleRemove:o,handleSuccess:t,handleProgress:n}=ct(r,f),g=T(()=>r.listType==="picture-card"),_=T(()=>({...r,fileList:u.value,onStart:x,onProgress:n,onSuccess:t,onError:y,onRemove:o}));return zt(()=>{u.value.forEach(({url:c})=>{c!=null&&c.startsWith("blob:")&&URL.revokeObjectURL(c)})}),Jt(se,{accept:Qt(r,"accept")}),s({abort:m,submit:d,clearFiles:v,handleStart:x,handleRemove:o}),(c,U)=>(h(),R("div",null,[e(g)&&c.showFileList?(h(),D(ne,{key:0,disabled:e(p),"list-type":c.listType,files:e(u),"handle-preview":c.onPreview,onRemove:e(o)},ge({append:k(()=>[F(ue,te({ref_key:"uploadRef",ref:f},e(_)),{default:k(()=>[e(a).trigger?L(c.$slots,"trigger",{key:0}):$("v-if",!0),!e(a).trigger&&e(a).default?L(c.$slots,"default",{key:1}):$("v-if",!0)]),_:3},16)]),_:2},[c.$slots.file?{name:"default",fn:k(({file:i})=>[L(c.$slots,"file",{file:i})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):$("v-if",!0),!e(g)||e(g)&&!c.showFileList?(h(),D(ue,te({key:1,ref_key:"uploadRef",ref:f},e(_)),{default:k(()=>[e(a).trigger?L(c.$slots,"trigger",{key:0}):$("v-if",!0),!e(a).trigger&&e(a).default?L(c.$slots,"default",{key:1}):$("v-if",!0)]),_:3},16)):$("v-if",!0),c.$slots.trigger?L(c.$slots,"default",{key:2}):$("v-if",!0),L(c.$slots,"tip"),!e(g)&&c.showFileList?(h(),D(ne,{key:3,disabled:e(p),"list-type":c.listType,files:e(u),"handle-preview":c.onPreview,onRemove:e(o)},ge({_:2},[c.$slots.file?{name:"default",fn:k(({file:i})=>[L(c.$slots,"file",{file:i})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):$("v-if",!0)]))}});var ft=M(pt,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload.vue"]]);const mt=ve(ft),vt={class:"w-full h-full bg-page pt-6"},yt={class:"main-container flex justify-between"},ht={class:"card-header"},gt={key:0,class:"pr-15"},bt={class:"w-full flex justify-between content-center items-center"},kt={key:0,class:"w-[80px] h-[80px]",src:ga,alt:""},_t=["src"],wt={class:"cursor-pointer text-color"},xt={class:"w-full flex justify-between content-center"},$t={class:"dialog-footer"},Rt=B({__name:"center",setup(l){const s=Zt(),r=G(!0),a=Yt({modal:!1,value:""}),p=T(()=>{var d;return a.value=(d=s.info)==null?void 0:d.nickname,s.info&&(r.value=!1),s.info});Gt();const f=T(()=>{const d={};return d.token=aa(),d["site-id"]=sa.get("siteId")||1,{action:`${la.options.baseURL}/file/image`,limit:1,headers:d,onSuccess:(v,u,x)=>{var o,t;let y=(t=(o=u==null?void 0:u.response)==null?void 0:o.data)==null?void 0:t.url;v.code==200?_e({field:"headimg",value:y}).then(()=>{s.info.headimg=y}):(u.status="fail",ke({message:v.msg,type:"error"}))}}}),m=()=>{if(!a.value){ke.error("\u4F1A\u5458\u6635\u79F0\u4E0D\u80FD\u4E3A\u7A7A");return}_e({field:"nickname",value:a.value}).then(d=>{a.modal=!1})};return(d,v)=>{const u=Et,x=mt,y=ca,o=da,t=St,n=ma,g=ya,_=pa,c=Tt;return h(),R("div",vt,[E("div",yt,[F(u),ea((h(),D(t,{class:"box-card flex-1 ml-4",shadow:"never"},{header:k(()=>[E("div",ht,[E("span",null,O(("t"in d?d.t:e(A))("personageInfo")),1)])]),default:k(()=>[e(p)?(h(),R("div",gt,[F(o,{model:e(p),class:"form-wrap","label-width":"120px"},{default:k(()=>[F(y,{label:("t"in d?d.t:e(A))("memberHeadimg")},{default:k(()=>[E("div",bt,[e(p).headimg?(h(),R("img",{key:1,src:("img"in d?d.img:e(ta))(e(p).headimg),class:"w-[80px] h-[80px]",alt:""},null,8,_t)):(h(),R("img",kt)),F(x,te({class:"avatar-uploader","show-file-list":!1},e(f)),{default:k(()=>[E("span",wt,O(("t"in d?d.t:e(A))("edit")),1)]),_:1},16)])]),_:1},8,["label"]),F(y,{label:("t"in d?d.t:e(A))("nickname")},{default:k(()=>[E("div",xt,[E("span",null,O(a.value),1),E("span",{class:"cursor-pointer text-color",onClick:v[0]||(v[0]=U=>a.modal=!0)},O(("t"in d?d.t:e(A))("edit")),1)])]),_:1},8,["label"])]),_:1},8,["model"])])):$("",!0)]),_:1})),[[c,r.value]]),F(_,{modelValue:a.modal,"onUpdate:modelValue":v[3]||(v[3]=U=>a.modal=U),title:("t"in d?d.t:e(A))("nickname")},{footer:k(()=>[E("span",$t,[F(g,{onClick:v[2]||(v[2]=U=>a.modal=!1)},{default:k(()=>[be(O(("t"in d?d.t:e(A))("cancel")),1)]),_:1}),F(g,{type:"primary",onClick:m},{default:k(()=>[be(O(("t"in d?d.t:e(A))("confirm")),1)]),_:1})])]),default:k(()=>[F(o,{model:e(p)},{default:k(()=>[F(y,null,{default:k(()=>[F(n,{modelValue:a.value,"onUpdate:modelValue":v[1]||(v[1]=U=>a.value=U),autocomplete:"off"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])])}}});xe=ka(Rt,[["__scopeId","data-v-d2ca1de7"]])});export{$a as __tla,xe as default}; diff --git a/niucloud/public/web/_nuxt/close.fd3f8eba.js b/niucloud/public/web/_nuxt/close.fd3f8eba.js new file mode 100644 index 0000000..7926cef --- /dev/null +++ b/niucloud/public/web/_nuxt/close.fd3f8eba.js @@ -0,0 +1 @@ +import{E as i,__tla as l}from"./el-empty.ed8ce84e.js";import{f as c,o as n,k as _,m as o,u as a,q as m,ad as u,__tla as p}from"./entry.60adbc61.js";import{__tla as f}from"./index.59e0a5b1.js";let s,g=Promise.all([(()=>{try{return l}catch{}})(),(()=>{try{return p}catch{}})(),(()=>{try{return f}catch{}})()]).then(async()=>{let e;e={class:"w-screen h-screen flex flex-col items-center justify-center"},s=c({__name:"close",setup(d){return(t,h)=>{const r=i;return n(),_("div",e,[o(r,{description:("t"in t?t.t:a(m))("siteClose"),image:("img"in t?t.img:a(u))("static/resource/images/site/close.png"),"image-size":"300px"},null,8,["description","image"])])}}})});export{g as __tla,s as default}; diff --git a/niucloud/public/web/_nuxt/common.07263123.js b/niucloud/public/web/_nuxt/common.07263123.js new file mode 100644 index 0000000..c308e6c --- /dev/null +++ b/niucloud/public/web/_nuxt/common.07263123.js @@ -0,0 +1 @@ +const e="\u767B\u5F55",o="\u6CE8\u518C",a="\u83B7\u53D6\u77ED\u4FE1\u9A8C\u8BC1\u7801",r="\u79D2\u540E\u91CD\u65B0\u83B7\u53D6",s="\u8BF7\u5148\u5B8C\u6210\u5B89\u5168\u9A8C\u8BC1",t="\u786E\u8BA4",c="\u53D6\u6D88",l="\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801",i="\u8BF7\u8F93\u5165\u624B\u673A\u53F7\u7801",n="\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u624B\u673A\u53F7",d="\u8BF7\u8F93\u5165\u624B\u673A\u9A8C\u8BC1\u7801",m="\u7528\u6237\u534F\u8BAE",g="\u9690\u79C1\u534F\u8BAE",h="\u672A\u914D\u7F6E\u534F\u8BAE",p="\u7AD9\u70B9\u5DF2\u5173\u95ED",C="\u7AD9\u70B9\u4E0D\u5B58\u5728",u={400:"\u9519\u8BEF\u7684\u8BF7\u6C42",401:"\u8BF7\u91CD\u65B0\u767B\u5F55",403:"\u62D2\u7EDD\u8BBF\u95EE",404:"\u8BF7\u6C42\u9519\u8BEF",405:"\u8BF7\u6C42\u65B9\u6CD5\u672A\u5141\u8BB8",408:"\u8BF7\u6C42\u8D85\u65F6",409:"\u8BF7\u6C42\u8DE8\u57DF",500:"\u670D\u52A1\u5668\u7AEF\u51FA\u9519\uFF0C\u9519\u8BEF\u539F\u56E0\uFF1A",501:"\u7F51\u7EDC\u672A\u5B9E\u73B0",502:"\u7F51\u7EDC\u9519\u8BEF",503:"\u670D\u52A1\u4E0D\u53EF\u7528",504:"\u7F51\u7EDC\u8D85\u65F6",505:"http\u7248\u672C\u4E0D\u652F\u6301\u8BE5\u8BF7\u6C42",unknownError:"\u672A\u77E5\u9519\u8BEF",timeout:"\u7F51\u7EDC\u8BF7\u6C42\u8D85\u65F6\uFF01"},P={login:e,register:o,getSmsCode:a,smsCodeChangeText:r,captchaTitle:s,confirm:t,cancel:c,captchaPlaceholder:l,mobilePlaceholder:i,mobileError:n,codePlaceholder:d,userAgreement:m,privacyAgreement:g,protocolNotConfigured:h,siteClose:p,noSite:C,request:u};export{c as cancel,l as captchaPlaceholder,s as captchaTitle,d as codePlaceholder,t as confirm,P as default,a as getSmsCode,e as login,n as mobileError,i as mobilePlaceholder,C as noSite,g as privacyAgreement,h as protocolNotConfigured,o as register,u as request,p as siteClose,r as smsCodeChangeText,m as userAgreement}; diff --git a/niucloud/public/web/_nuxt/common.f1878efd.js b/niucloud/public/web/_nuxt/common.f1878efd.js new file mode 100644 index 0000000..a65179a --- /dev/null +++ b/niucloud/public/web/_nuxt/common.f1878efd.js @@ -0,0 +1 @@ +const o={};export{o as default}; diff --git a/niucloud/public/web/_nuxt/community.f4aea720.jpg b/niucloud/public/web/_nuxt/community.f4aea720.jpg new file mode 100644 index 0000000..2e327b2 Binary files /dev/null and b/niucloud/public/web/_nuxt/community.f4aea720.jpg differ diff --git a/niucloud/public/web/_nuxt/container.4f8ff4b4.js b/niucloud/public/web/_nuxt/container.4f8ff4b4.js new file mode 100644 index 0000000..477e6dd --- /dev/null +++ b/niucloud/public/web/_nuxt/container.4f8ff4b4.js @@ -0,0 +1 @@ +import{E as l,__tla as _}from"./el-main.2d80fc5e.js";import{o,c,w as n,r as f,__tla as m}from"./entry.60adbc61.js";import{_ as u}from"./_plugin-vue_export-helper.c27b6911.js";let t,d=Promise.all([(()=>{try{return _}catch{}})(),(()=>{try{return m}catch{}})()]).then(async()=>{const a={};function r(s,i){const e=l;return o(),c(e,{class:"w-screen h-screen"},{default:n(()=>[f(s.$slots,"default")]),_:3})}t=u(a,[["render",r]])});export{d as __tla,t as default}; diff --git a/niucloud/public/web/_nuxt/debounce.cf505dd3.js b/niucloud/public/web/_nuxt/debounce.cf505dd3.js new file mode 100644 index 0000000..007ee36 --- /dev/null +++ b/niucloud/public/web/_nuxt/debounce.cf505dd3.js @@ -0,0 +1 @@ +import{c0 as R,aJ as _,c1 as S,__tla as U}from"./entry.60adbc61.js";let M,z=Promise.all([(()=>{try{return U}catch{}})()]).then(async()=>{var O=/\s/;function W(t){for(var r=t.length;r--&&O.test(t.charAt(r)););return r}var A=/^\s+/;function D(t){return t&&t.slice(0,W(t)+1).replace(A,"")}var g=0/0,I=/^[-+]0x[0-9a-f]+$/i,J=/^0b[01]+$/i,P=/^0o[0-7]+$/i,j=parseInt;function x(t){if(typeof t=="number")return t;if(R(t))return g;if(_(t)){var r=typeof t.valueOf=="function"?t.valueOf():t;t=_(r)?r+"":r}if(typeof t!="string")return t===0?t:+t;t=D(t);var a=J.test(t);return a||P.test(t)?j(t.slice(2),a?2:8):I.test(t)?g:+t}var k=function(){return S.Date.now()};const p=k;var q="Expected a function",B=Math.max,C=Math.min;M=function(t,r,a){var o,c,m,f,e,u,s=0,$=!1,v=!1,h=!0;if(typeof t!="function")throw new TypeError(q);r=x(r)||0,_(a)&&($=!!a.leading,v="maxWait"in a,m=v?B(x(a.maxWait)||0,r):m,h="trailing"in a?!!a.trailing:h);function y(i){var n=o,l=c;return o=c=void 0,s=i,f=t.apply(l,n),f}function F(i){return s=i,e=setTimeout(d,r),$?y(i):f}function H(i){var n=i-u,l=i-s,E=r-n;return v?C(E,m-l):E}function b(i){var n=i-u,l=i-s;return u===void 0||n>=r||n<0||v&&l>=m}function d(){var i=p();if(b(i))return w(i);e=setTimeout(d,H(i))}function w(i){return e=void 0,h&&o?y(i):(o=c=void 0,f)}function L(){e!==void 0&&clearTimeout(e),s=0,o=u=c=e=void 0}function N(){return e===void 0?f:w(p())}function T(){var i=p(),n=b(i);if(o=arguments,c=this,u=i,n){if(e===void 0)return F(u);if(v)return clearTimeout(e),e=setTimeout(d,r),y(u)}return e===void 0&&(e=setTimeout(d,r)),f}return T.cancel=L,T.flush=N,T}});export{z as __tla,M as d}; diff --git a/niucloud/public/web/_nuxt/default.2ce86264.css b/niucloud/public/web/_nuxt/default.2ce86264.css new file mode 100644 index 0000000..583198f --- /dev/null +++ b/niucloud/public/web/_nuxt/default.2ce86264.css @@ -0,0 +1 @@ +[data-v-76c838c8] .el-menu--horizontal{border-bottom:none}.el-menu-item[data-v-76c838c8]{padding-left:0}.el-menu-item[data-v-76c838c8],.el-menu-item.is-active[data-v-76c838c8]{border:none!important;color:#000!important}.el-menu-item.is-active span[data-v-76c838c8]:first-of-type{position:relative;z-index:1}.el-menu-item.is-active span[data-v-76c838c8]:last-of-type{background-image:linear-gradient(to bottom right,#fff,var(--el-color-primary));border-radius:100px;bottom:15px;height:16px;position:absolute;right:27px;width:16px;z-index:0}.el-menu-item[data-v-76c838c8]:hover{color:var(--el-menu-hover-text-color)!important}.el-menu-item[data-v-76c838c8]:focus,.el-menu-item[data-v-76c838c8]:hover{background-color:transparent!important}.el-header[data-v-1d797e87]{--el-header-padding:0}.el-main[data-v-1d797e87]{--el-main-padding:0} diff --git a/niucloud/public/web/_nuxt/default.4860372c.js b/niucloud/public/web/_nuxt/default.4860372c.js new file mode 100644 index 0000000..54aa5e3 --- /dev/null +++ b/niucloud/public/web/_nuxt/default.4860372c.js @@ -0,0 +1 @@ +import{a as ot,b as pt,E as _t,__tla as ut}from"./el-main.2d80fc5e.js";import{f as y,h as it,i as mt,j as dt,o as r,k as i,l as t,m as s,w as a,u as m,t as o,c as x,p as n,q as w,e as ft,s as xt,v as ht,x as vt,y as d,z as yt,r as wt,__tla as gt}from"./entry.60adbc61.js";import{_ as g,__tla as kt}from"./nuxt-link.404211f0.js";import{E as bt,a as jt,__tla as qt}from"./el-popper.f96f4ae9.js";import{E as zt,__tla as At}from"./el-button.946140c1.js";import{_ as k}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as Et}from"./index.f6314314.js";import{__tla as Ct}from"./index.59e0a5b1.js";import{__tla as It}from"./vnode.a078d472.js";import{__tla as St}from"./use-form-item.9fe2eb56.js";let b,Bt=Promise.all([(()=>{try{return ut}catch{}})(),(()=>{try{return gt}catch{}})(),(()=>{try{return kt}catch{}})(),(()=>{try{return qt}catch{}})(),(()=>{try{return At}catch{}})(),(()=>{try{return Et}catch{}})(),(()=>{try{return Ct}catch{}})(),(()=>{try{return It}catch{}})(),(()=>{try{return St}catch{}})()]).then(async()=>{const j=""+new URL("logo.58dc7b81.jpg",import.meta.url).href,c=p=>(xt("data-v-76c838c8"),p=p(),ht(),p),q={class:"flex h-full min-w-[1200px]"},z={class:"flex items-center ml-[20px]"},A=c(()=>t("div",{class:"w-[132px] mr-[10px]"},[t("img",{src:j})],-1)),E=c(()=>t("div",{class:"hidden text-[14px] text-[#A6B0C8] xl:block"},[n("|"),t("span",{class:"ml-[10px]"},"\u4E00\u6B3E\u5FEB\u901F\u5F00\u53D1SAAS\u901A\u7528\u7BA1\u7406\u7CFB\u7EDF\u540E\u53F0\u6846\u67B6")],-1)),C={class:"mx-auto flex-shrink"},I=c(()=>t("span",{class:"text-base mx-4"},"\u9996\u9875",-1)),S=c(()=>t("span",null,null,-1)),B=c(()=>t("span",{class:"text-base mx-4"},"\u6587\u7AE0",-1)),F=c(()=>t("span",null,null,-1)),G=c(()=>t("span",{class:"text-base mx-4"},"\u793E\u533A",-1)),L=c(()=>t("span",null,null,-1)),P={class:"flex items-center justify-end mr-[20px] ml-auto whitespace-pre"},R={key:0},T={class:"cursor-pointer"},U=c(()=>t("span",{class:"mx-2"},"|",-1)),V=y({__name:"index",setup(p){const e=it(),_=mt(()=>e.info),f=()=>{e.logout(),ft("/auth/login")},l=dt();return(u,Ft)=>{const h=g,v=bt,ct=jt,nt=zt;return r(),i("div",q,[t("div",z,[s(h,{to:"/"},{default:a(()=>[A]),_:1}),E]),t("div",C,[s(ct,{"default-active":m(l).route,class:"h-full",mode:"horizontal",ellipsis:!1,router:!0},{default:a(()=>[s(v,{index:"/",route:"/"},{default:a(()=>[I,S]),_:1}),s(v,{index:"/article/list",route:"/article/list"},{default:a(()=>[B,F]),_:1}),s(v,{route:"/"},{default:a(()=>[G,L]),_:1})]),_:1},8,["default-active"])]),t("div",P,[m(_)?(r(),i("div",R,[s(h,{to:"/member/center"},{default:a(()=>[t("span",T,o(m(_).nickname),1)]),_:1}),U,t("span",{class:"cursor-pointer",onClick:f},"\u9000\u51FA")])):(r(),x(h,{key:1,to:"/auth/login"},{default:a(()=>[s(nt,{type:"primary",link:""},{default:a(()=>[n(o(("t"in u?u.t:m(w))("login"))+" / "+o(("t"in u?u.t:m(w))("register")),1)]),_:1})]),_:1}))])])}}}),$=k(V,[["__scopeId","data-v-76c838c8"]]),D={class:"flex h-[220px] min-w-[1200px] bg-[#3F4045]"},H={class:"mt-[70px] w-full"},J={class:"text-center text-[#999]"},K=t("span",null,"\u53CB\u60C5\u94FE\u63A5\uFF1A",-1),M=t("span",{class:"mr-[10px]"},"\u5B9D\u5854",-1),N=t("span",{class:"mr-[10px]"},"\u5F00\u6E90\u4E2D\u56FD",-1),O=t("span",{class:"mr-[10px]"},"\u963F\u91CC\u4E91",-1),Q=t("span",{class:"mr-[10px]"},"\u7801\u4E91Gitee",-1),W=t("span",{class:"mr-[10px]"},"\u817E\u8BAF\u4E91",-1),X=t("span",{class:"mr-[10px]"},"\u5FAE\u4FE1\u516C\u4F17\u5E73\u53F0",-1),Y=t("span",{class:"mr-[10px]"},"Thinkphp",-1),Z={key:0,class:"text-center mt-[20px] text-[#999]"},tt={class:"mr-2"},at={class:"mr-2"},st={key:0,class:"mr-2"},et={key:1,class:"mr-2"},lt=y({__name:"index",setup(p){const e=vt(null);return yt().then(({data:_})=>{e.value=_}),(_,f)=>{const l=g;return r(),i("div",D,[t("div",H,[t("p",J,[K,s(l,{to:"https://www.bt.cn"},{default:a(()=>[M,n("| ")]),_:1}),s(l,{to:"https://www.oschina.net"},{default:a(()=>[N,n("| ")]),_:1}),s(l,{to:"https://www.aliyun.com"},{default:a(()=>[O,n("| ")]),_:1}),s(l,{to:"https://gitee.com/"},{default:a(()=>[Q,n("| ")]),_:1}),s(l,{to:"https://cloud.tencent.com/"},{default:a(()=>[W,n("| ")]),_:1}),s(l,{to:"https://mp.weixin.qq.com"},{default:a(()=>[X,n("| ")]),_:1}),s(l,{to:"http://www.thinkphp.cn"},{default:a(()=>[Y]),_:1})]),e.value?(r(),i("p",Z,[e.value.gov_record?(r(),x(l,{key:0,to:e.value.gov_url},{default:a(()=>[t("span",tt,"\u516C\u5B89\u5907\u6848\u53F7:"+o(e.value.gov_record),1)]),_:1},8,["to"])):d("",!0),e.value.icp?(r(),x(l,{key:1,to:"https://beian.miit.gov.cn/"},{default:a(()=>[t("span",at,"\u5907\u6848\u53F7:"+o(e.value.icp),1)]),_:1})):d("",!0),s(l,{to:e.value.copyright_link},{default:a(()=>[e.value.company_name?(r(),i("span",st,o(e.value.company_name),1)):d("",!0),e.value.copyright_desc?(r(),i("span",et,"\xA9"+o(e.value.copyright_desc),1)):d("",!0)]),_:1},8,["to"])])):d("",!0)])])}}}),rt=y({__name:"default",setup(p){return(e,_)=>{const f=ot,l=pt,u=_t;return r(),x(u,{class:"w-screen h-screen"},{default:a(()=>[s(f,{class:"shadow z-1"},{default:a(()=>[s($)]),_:1}),s(l,{class:"p-0 min-w-[1200px]"},{default:a(()=>[wt(e.$slots,"default",{},void 0,!0),s(lt)]),_:3})]),_:3})}}});b=k(rt,[["__scopeId","data-v-1d797e87"]])});export{Bt as __tla,b as default}; diff --git a/niucloud/public/web/_nuxt/default_headimg.1ff33930.js b/niucloud/public/web/_nuxt/default_headimg.1ff33930.js new file mode 100644 index 0000000..370f07e --- /dev/null +++ b/niucloud/public/web/_nuxt/default_headimg.1ff33930.js @@ -0,0 +1 @@ +import{__tla as a}from"./entry.60adbc61.js";let t,e=Promise.all([(()=>{try{return a}catch{}})()]).then(async()=>{t=""+new URL("default_headimg.621b1a94.png",import.meta.url).href});export{t as _,e as __tla}; diff --git a/niucloud/public/web/_nuxt/default_headimg.621b1a94.png b/niucloud/public/web/_nuxt/default_headimg.621b1a94.png new file mode 100644 index 0000000..f4f8cb3 Binary files /dev/null and b/niucloud/public/web/_nuxt/default_headimg.621b1a94.png differ diff --git a/niucloud/public/web/_nuxt/el-button.2689f638.css b/niucloud/public/web/_nuxt/el-button.2689f638.css new file mode 100644 index 0000000..5356377 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-button.2689f638.css @@ -0,0 +1 @@ +.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:hsla(0,0%,100%,.5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-color-info);--el-button-active-color:var(--el-text-color-primary);align-items:center;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);border-radius:var(--el-border-radius-base);box-sizing:border-box;color:var(--el-button-text-color);cursor:pointer;display:inline-flex;font-size:var(--el-font-size-base);font-weight:var(--el-button-font-weight);height:32px;justify-content:center;line-height:1;outline:0;padding:8px 15px;text-align:center;transition:.1s;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.el-button:focus,.el-button:hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color);color:var(--el-button-hover-text-color);outline:0}.el-button:active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:0}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:0}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{background-color:var(--el-button-disabled-bg-color);background-image:none;border-color:var(--el-button-disabled-border-color);color:var(--el-button-disabled-text-color);cursor:not-allowed}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{background-color:var(--el-mask-color-extra-light);border-radius:inherit;bottom:-1px;content:"";left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px;z-index:1}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-circle{border-radius:50%;padding:8px}.el-button.is-text{background-color:transparent;border:0 solid transparent;color:var(--el-button-text-color)}.el-button.is-text.is-disabled{background-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-text:not(.is-disabled):focus,.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:focus,.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{background:0 0;border-color:transparent;color:var(--el-button-text-color);height:auto;padding:2px}.el-button.is-link:focus,.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-link:not(.is-disabled):active,.el-button.is-link:not(.is-disabled):focus,.el-button.is-link:not(.is-disabled):hover{background-color:transparent;border-color:transparent}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color)}.el-button--text{background:0 0;border-color:transparent;color:var(--el-color-primary);padding-left:0;padding-right:0}.el-button--text.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button--text:not(.is-disabled):focus,.el-button--text:not(.is-disabled):hover{background-color:transparent;border-color:transparent;color:var(--el-color-primary-light-3)}.el-button--text:not(.is-disabled):active{background-color:transparent;border-color:transparent;color:var(--el-color-primary-dark-2)}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-link,.el-button--primary.is-plain,.el-button--primary.is-text{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:active,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:hover{background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8);color:var(--el-color-primary-light-5)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-link,.el-button--success.is-plain,.el-button--success.is-text{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:active,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:active,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:hover{background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8);color:var(--el-color-success-light-5)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-link,.el-button--warning.is-plain,.el-button--warning.is-text{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:active,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:hover{background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8);color:var(--el-color-warning-light-5)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-link,.el-button--danger.is-plain,.el-button--danger.is-text{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:active,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:hover{background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8);color:var(--el-color-danger-light-5)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-link,.el-button--info.is-plain,.el-button--info.is-text{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:active,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:active,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:hover{background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8);color:var(--el-color-info-light-5)}.el-button--large{--el-button-size:40px;border-radius:var(--el-border-radius-base);font-size:var(--el-font-size-base);height:var(--el-button-size);padding:12px 19px}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{padding:12px;width:var(--el-button-size)}.el-button--small{--el-button-size:24px;border-radius:calc(var(--el-border-radius-base) - 1px);font-size:12px;height:var(--el-button-size);padding:5px 11px}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{padding:5px;width:var(--el-button-size)} diff --git a/niucloud/public/web/_nuxt/el-button.946140c1.js b/niucloud/public/web/_nuxt/el-button.946140c1.js new file mode 100644 index 0000000..82d34c5 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-button.946140c1.js @@ -0,0 +1 @@ +import{i as k,a0 as R,bp as W,x as X,A as Y,bs as oo,J as eo,bt as to,bn as w,bu as ao,B as $,f as v,o as m,k as _,Z as ro,r as h,c as B,w as z,at as I,C as x,u as t,U as E,y as A,E as lo,D as C,P as so,a1 as no,a$ as G,F as io,G as co,__tla as uo}from"./entry.60adbc61.js";import{u as po,T as bo,__tla as mo}from"./index.f6314314.js";import{b as fo,a as ko,u as T,__tla as go}from"./use-form-item.9fe2eb56.js";let U,yo=Promise.all([(()=>{try{return uo}catch{}})(),(()=>{try{return mo}catch{}})(),(()=>{try{return go}catch{}})()]).then(async()=>{const V=Symbol("buttonGroupContextKey"),D=(a,n)=>{po({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},k(()=>a.type==="text"));const r=R(V,void 0),l=W("button"),{form:s}=fo(),o=ko(k(()=>r==null?void 0:r.size)),c=T(),f=X(),b=Y(),d=k(()=>a.type||(r==null?void 0:r.type)||""),g=k(()=>{var e,i,u;return(u=(i=a.autoInsertSpace)!=null?i:(e=l.value)==null?void 0:e.autoInsertSpace)!=null?u:!1}),y=k(()=>{var e;const i=(e=b.default)==null?void 0:e.call(b);if(g.value&&(i==null?void 0:i.length)===1){const u=i[0];if((u==null?void 0:u.type)===oo){const Q=u.children;return/^\p{Unified_Ideograph}{2}$/u.test(Q.trim())}}return!1});return{_disabled:c,_size:o,_type:d,_ref:f,shouldAddSpace:y,handleClick:e=>{a.nativeType==="reset"&&(s==null||s.resetFields()),n("click",e)}}},F=["default","primary","success","warning","info","danger","text",""],P=["button","submit","reset"],S=eo({size:to,disabled:Boolean,type:{type:String,values:F,default:""},icon:{type:w},nativeType:{type:String,values:P,default:"button"},loading:Boolean,loadingIcon:{type:w,default:()=>ao},plain:Boolean,text:Boolean,link:Boolean,bg:Boolean,autofocus:Boolean,round:Boolean,circle:Boolean,color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0}}),J={click:a=>a instanceof MouseEvent};function p(a,n=20){return a.mix("#141414",n).toString()}function K(a){const n=T(),r=$("button");return k(()=>{let l={};const s=a.color;if(s){const o=new bo(s),c=a.dark?o.tint(20).toString():p(o,20);if(a.plain)l=r.cssVarBlock({"bg-color":a.dark?p(o,90):o.tint(90).toString(),"text-color":s,"border-color":a.dark?p(o,50):o.tint(50).toString(),"hover-text-color":`var(${r.cssVarName("color-white")})`,"hover-bg-color":s,"hover-border-color":s,"active-bg-color":c,"active-text-color":`var(${r.cssVarName("color-white")})`,"active-border-color":c}),n.value&&(l[r.cssVarBlockName("disabled-bg-color")]=a.dark?p(o,90):o.tint(90).toString(),l[r.cssVarBlockName("disabled-text-color")]=a.dark?p(o,50):o.tint(50).toString(),l[r.cssVarBlockName("disabled-border-color")]=a.dark?p(o,80):o.tint(80).toString());else{const f=a.dark?p(o,30):o.tint(30).toString(),b=o.isDark()?`var(${r.cssVarName("color-white")})`:`var(${r.cssVarName("color-black")})`;if(l=r.cssVarBlock({"bg-color":s,"text-color":b,"border-color":s,"hover-bg-color":f,"hover-text-color":b,"hover-border-color":f,"active-bg-color":c,"active-border-color":c}),n.value){const d=a.dark?p(o,50):o.tint(50).toString();l[r.cssVarBlockName("disabled-bg-color")]=d,l[r.cssVarBlockName("disabled-text-color")]=a.dark?"rgba(255, 255, 255, 0.5)":`var(${r.cssVarName("color-white")})`,l[r.cssVarBlockName("disabled-border-color")]=d}}}return l})}const M=["aria-disabled","disabled","autofocus","type"],Z=v({name:"ElButton"}),j=v({...Z,props:S,emits:J,setup(a,{expose:n,emit:r}){const l=a,s=K(l),o=$("button"),{_ref:c,_size:f,_type:b,_disabled:d,shouldAddSpace:g,handleClick:y}=D(l,r);return n({ref:c,size:f,type:b,disabled:d,shouldAddSpace:g}),(e,i)=>(m(),_("button",{ref_key:"_ref",ref:c,class:x([t(o).b(),t(o).m(t(b)),t(o).m(t(f)),t(o).is("disabled",t(d)),t(o).is("loading",e.loading),t(o).is("plain",e.plain),t(o).is("round",e.round),t(o).is("circle",e.circle),t(o).is("text",e.text),t(o).is("link",e.link),t(o).is("has-bg",e.bg)]),"aria-disabled":t(d)||e.loading,disabled:t(d)||e.loading,autofocus:e.autofocus,type:e.nativeType,style:lo(t(s)),onClick:i[0]||(i[0]=(...u)=>t(y)&&t(y)(...u))},[e.loading?(m(),_(ro,{key:0},[e.$slots.loading?h(e.$slots,"loading",{key:0}):(m(),B(t(E),{key:1,class:x(t(o).is("loading"))},{default:z(()=>[(m(),B(I(e.loadingIcon)))]),_:1},8,["class"]))],64)):e.icon||e.$slots.icon?(m(),B(t(E),{key:1},{default:z(()=>[e.icon?(m(),B(I(e.icon),{key:0})):h(e.$slots,"icon",{key:1})]),_:3})):A("v-if",!0),e.$slots.default?(m(),_("span",{key:2,class:x({[t(o).em("text","expand")]:t(g)})},[h(e.$slots,"default")],2)):A("v-if",!0)],14,M))}});var q=C(j,[["__file","/home/runner/work/element-plus/element-plus/packages/components/button/src/button.vue"]]);const H={size:S.size,type:S.type},L=v({name:"ElButtonGroup"}),O=v({...L,props:H,setup(a){const n=a;so(V,no({size:G(n,"size"),type:G(n,"type")}));const r=$("button");return(l,s)=>(m(),_("div",{class:x(`${t(r).b("group")}`)},[h(l.$slots,"default")],2))}});var N=C(O,[["__file","/home/runner/work/element-plus/element-plus/packages/components/button/src/button-group.vue"]]);U=io(q,{ButtonGroup:N}),co(N)});export{U as E,yo as __tla}; diff --git a/niucloud/public/web/_nuxt/el-empty.3c7fc497.css b/niucloud/public/web/_nuxt/el-empty.3c7fc497.css new file mode 100644 index 0000000..fea4494 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-empty.3c7fc497.css @@ -0,0 +1 @@ +.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:var(--el-empty-padding);text-align:center}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;vertical-align:top;width:100%}.el-empty__image svg{fill:currentColor;color:var(--el-svg-monochrome-grey);height:100%;vertical-align:top;width:100%}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);margin:0}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)} diff --git a/niucloud/public/web/_nuxt/el-empty.ed8ce84e.js b/niucloud/public/web/_nuxt/el-empty.ed8ce84e.js new file mode 100644 index 0000000..508047e --- /dev/null +++ b/niucloud/public/web/_nuxt/el-empty.ed8ce84e.js @@ -0,0 +1 @@ +import{f as i,B as d,o,k as n,l,u as a,D as u,J as U,am as W,i as y,b9 as X,r as p,m as Y,C as c,E as l0,t as a0,y as t0,F as e0,__tla as s0}from"./entry.60adbc61.js";import{u as r0,__tla as o0}from"./index.59e0a5b1.js";let g,n0=Promise.all([(()=>{try{return s0}catch{}})(),(()=>{try{return o0}catch{}})()]).then(async()=>{const k={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},v=["id"],$=["stop-color"],h=["stop-color"],w=["id"],x=["stop-color"],C=["stop-color"],_=["id"],B={id:"Illustrations",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},N={id:"B-type",transform:"translate(-1268.000000, -535.000000)"},V={id:"Group-2",transform:"translate(1268.000000, 535.000000)"},R=["fill"],G=["fill"],b={id:"Group-Copy",transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},E=["fill"],S=["fill"],z=["fill"],I=["fill"],M=["fill"],D={id:"Rectangle-Copy-17",transform:"translate(53.000000, 45.000000)"},F=["fill","xlink:href"],J=["fill","mask"],O=["fill"],P=i({name:"ImgEmpty"}),T=i({...P,setup(f){const t=d("empty"),e=r0();return(r,m)=>(o(),n("svg",k,[l("defs",null,[l("linearGradient",{id:`linearGradient-1-${a(e)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[l("stop",{"stop-color":`var(${a(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,$),l("stop",{"stop-color":`var(${a(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,h)],8,v),l("linearGradient",{id:`linearGradient-2-${a(e)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[l("stop",{"stop-color":`var(${a(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,x),l("stop",{"stop-color":`var(${a(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,C)],8,w),l("rect",{id:`path-3-${a(e)}`,x:"0",y:"0",width:"17",height:"36"},null,8,_)]),l("g",B,[l("g",N,[l("g",V,[l("path",{id:"Oval-Copy-2",d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${a(t).cssVarBlockName("fill-color-3")})`},null,8,R),l("polygon",{id:"Rectangle-Copy-14",fill:`var(${a(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,G),l("g",b,[l("polygon",{id:"Rectangle-Copy-10",fill:`var(${a(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,E),l("polygon",{id:"Rectangle-Copy-11",fill:`var(${a(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,S),l("rect",{id:"Rectangle-Copy-12",fill:`url(#linearGradient-1-${a(e)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,z),l("polygon",{id:"Rectangle-Copy-13",fill:`var(${a(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,I)]),l("rect",{id:"Rectangle-Copy-15",fill:`url(#linearGradient-2-${a(e)})`,x:"13",y:"45",width:"40",height:"36"},null,8,M),l("g",D,[l("use",{id:"Mask",fill:`var(${a(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${a(e)}`},null,8,F),l("polygon",{id:"Rectangle-Copy",fill:`var(${a(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${a(e)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,J)]),l("polygon",{id:"Rectangle-Copy-18",fill:`var(${a(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,O)])])])]))}});var Z=u(T,[["__file","/home/runner/work/element-plus/element-plus/packages/components/empty/src/img-empty.vue"]]);const j=U({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),q=["src"],A={key:1},H=i({name:"ElEmpty"}),K=i({...H,props:j,setup(f){const t=f,{t:e}=W(),r=d("empty"),m=y(()=>t.description||e("el.table.emptyText")),Q=y(()=>({width:X(t.imageSize)}));return(s,i0)=>(o(),n("div",{class:c(a(r).b())},[l("div",{class:c(a(r).e("image")),style:l0(a(Q))},[s.image?(o(),n("img",{key:0,src:s.image,ondragstart:"return false"},null,8,q)):p(s.$slots,"image",{key:1},()=>[Y(Z)])],6),l("div",{class:c(a(r).e("description"))},[s.$slots.description?p(s.$slots,"description",{key:0}):(o(),n("p",A,a0(a(m)),1))],2),s.$slots.default?(o(),n("div",{key:0,class:c(a(r).e("bottom"))},[p(s.$slots,"default")],2)):t0("v-if",!0)],2))}});var L=u(K,[["__file","/home/runner/work/element-plus/element-plus/packages/components/empty/src/empty.vue"]]);g=e0(L)});export{g as E,n0 as __tla}; diff --git a/niucloud/public/web/_nuxt/el-input.399a025a.css b/niucloud/public/web/_nuxt/el-input.399a025a.css new file mode 100644 index 0000000..3d59ed6 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-input.399a025a.css @@ -0,0 +1 @@ +.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);display:inline-block;font-size:var(--el-font-size-base);position:relative;vertical-align:bottom;width:100%}.el-textarea__inner{-webkit-appearance:none;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;box-sizing:border-box;color:var(--el-input-text-color,var(--el-text-color-regular));display:block;font-family:inherit;font-size:inherit;line-height:1.5;padding:5px 11px;position:relative;resize:vertical;transition:var(--el-transition-box-shadow);width:100%}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:0}.el-textarea .el-input__count{background:var(--el-fill-color-blank);bottom:5px;color:var(--el-color-info);font-size:12px;line-height:14px;position:absolute;right:10px}.el-textarea.is-disabled .el-textarea__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-height:var(--el-component-size);box-sizing:border-box;display:inline-flex;font-size:var(--el-font-size-base);line-height:var(--el-input-height);position:relative;vertical-align:middle;width:100%}.el-input::-webkit-scrollbar{width:6px;z-index:11}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner,.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{align-items:center;color:var(--el-color-info);display:inline-flex;font-size:12px;height:100%}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);display:inline-block;line-height:normal;padding-left:8px}.el-input__wrapper{align-items:center;background-color:var(--el-input-bg-color,var(--el-fill-color-blank));background-image:none;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;display:inline-flex;flex-grow:1;justify-content:center;padding:1px 11px;transform:translateZ(0);transition:var(--el-transition-box-shadow)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 32px) - 2px);-webkit-appearance:none;background:0 0;border:none;box-sizing:border-box;color:var(--el-input-text-color,var(--el-text-color-regular));flex-grow:1;font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);outline:0;padding:0;width:100%}.el-input__inner:focus{outline:0}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__prefix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:inline-flex;flex-shrink:0;flex-wrap:nowrap;height:100%;pointer-events:none;text-align:center;transition:all var(--el-transition-duration);white-space:nowrap}.el-input__prefix-inner{align-items:center;display:inline-flex;justify-content:center;pointer-events:all}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));display:inline-flex;flex-shrink:0;flex-wrap:nowrap;height:100%;pointer-events:none;text-align:center;transition:all var(--el-transition-duration);white-space:nowrap}.el-input__suffix-inner{align-items:center;display:inline-flex;justify-content:center;pointer-events:all}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{align-items:center;display:flex;height:inherit;justify-content:center;line-height:inherit;margin-left:8px;transition:all var(--el-transition-duration)}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color,) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{-webkit-text-fill-color:var(--el-disabled-text-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small .el-input__inner{--el-input-inner-height:calc(var(--el-input-height, 24px) - 2px)}.el-input-group{align-items:stretch;display:inline-flex;width:100%}.el-input-group__append,.el-input-group__prepend{align-items:center;background-color:var(--el-fill-color-light);border-radius:var(--el-input-border-radius);color:var(--el-color-info);display:inline-flex;justify-content:center;min-height:100%;padding:0 20px;position:relative;white-space:nowrap}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:0}.el-input-group__append .el-button,.el-input-group__append .el-select,.el-input-group__prepend .el-button,.el-input-group__prepend .el-select{display:inline-block;margin:0 -20px}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-input__wrapper,.el-input-group__append div.el-select:hover .el-input__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-input__wrapper,.el-input-group__prepend div.el-select:hover .el-input__wrapper{background-color:transparent;border-color:transparent;color:inherit}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{border-bottom-right-radius:0;border-right:0;border-top-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group__append{border-left:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--prepend>.el-input__wrapper,.el-input-group__append{border-bottom-left-radius:0;border-top-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input .el-input__wrapper{border-bottom-right-radius:0;border-top-right-radius:0;box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper,.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper:focus{box-shadow:1px 0 0 0 var(--el-input-focus-border-color) inset,1px 0 0 0 var(--el-input-focus-border-color),0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important;z-index:2}.el-input-group--prepend .el-input-group__prepend .el-select .el-input.is-focus .el-input__wrapper:focus{outline:0}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--prepend .el-input-group__prepend .el-select:hover .el-input__wrapper{box-shadow:1px 0 0 0 var(--el-input-hover-border-color) inset,1px 0 0 0 var(--el-input-hover-border-color),0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important;z-index:1}.el-input-group--append>.el-input__wrapper{border-bottom-right-radius:0;border-top-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input .el-input__wrapper{border-bottom-left-radius:0;border-top-left-radius:0;box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select .el-input.is-focus .el-input__wrapper{box-shadow:-1px 0 0 0 var(--el-input-focus-border-color),-1px 0 0 0 var(--el-input-focus-border-color) inset,0 1px 0 0 var(--el-input-focus-border-color) inset,0 -1px 0 0 var(--el-input-focus-border-color) inset!important;z-index:2}.el-input-group--append .el-input-group__append .el-select:hover .el-input__inner{box-shadow:none!important}.el-input-group--append .el-input-group__append .el-select:hover .el-input__wrapper{box-shadow:-1px 0 0 0 var(--el-input-hover-border-color),-1px 0 0 0 var(--el-input-hover-border-color) inset,0 1px 0 0 var(--el-input-hover-border-color) inset,0 -1px 0 0 var(--el-input-hover-border-color) inset!important;z-index:1} diff --git a/niucloud/public/web/_nuxt/el-input.9a624f32.js b/niucloud/public/web/_nuxt/el-input.9a624f32.js new file mode 100644 index 0000000..7e42a08 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-input.9a624f32.js @@ -0,0 +1,9 @@ +import{c2 as X,c1 as A,aJ as Ot,bH as Wo,b7 as Ro,bI as Uo,b6 as ge,bA as ee,c3 as Do,b4 as At,by as Lo,c4 as we,c5 as te,bB as Ko,c6 as P,ag as T,bc as qo,i as b,c7 as Zo,R as Jo,x as B,K as Ct,J as Qo,bt as Yo,ah as je,bn as It,ai as Go,Q as _e,f as Et,aA as Xo,A as er,B as Pt,H as Se,c8 as tr,c9 as ar,ca as or,N as rr,L as ze,ap as $,M as nr,a$ as sr,S as lr,W as ir,o as m,k as j,y as h,Z as ke,C as x,u as n,r as ae,l as F,c as z,w as D,at as oe,U as L,aC as Oe,m as ur,aQ as cr,T as pr,aS as fr,t as re,E as dr,D as vr,aY as Tt,F as yr,__tla as br}from"./entry.60adbc61.js";import{b as mr,c as hr,a as xr,u as gr,__tla as wr}from"./use-form-item.9fe2eb56.js";import{i as jr,d as Bt,__tla as _r}from"./index.f6314314.js";let $t,Ae,Ft,Mt,C,K,Vt,Ce,Nt,Ie,Ee,Pe,Ht,Te,Wt,Rt,Be,$e,Ut,ne,Fe,Dt,Lt,Kt,Me,qt,Ve,se,Ne,le,He,ie,Sr=Promise.all([(()=>{try{return br}catch{}})(),(()=>{try{return wr}catch{}})(),(()=>{try{return _r}catch{}})()]).then(async()=>{var Zt=X(A,"WeakMap");const ue=Zt;var We=Object.create,Jt=function(){function e(){}return function(o){if(!Ot(o))return{};if(We)return We(o);e.prototype=o;var t=new e;return e.prototype=void 0,t}}();const Qt=Jt;Ut=function(e,o){var t=-1,a=e.length;for(o||(o=Array(a));++t-1&&e%1==0&&e<=Yt},se=function(e){return e!=null&&ie(e.length)&&!Uo(e)};var Gt=Object.prototype;function ce(e){var o=e&&e.constructor,t=typeof o=="function"&&o.prototype||Gt;return e===t}function Xt(e,o){for(var t=-1,a=Array(e);++t{if(!T)return!1;const t={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(o)],a=qo(e,t);return["scroll","auto","overlay"].some(s=>a.includes(s))},Ht=(e,o)=>{if(!T)return;let t=e;for(;t;){if([window,document,document.documentElement].includes(t))return window;if(lt(t,o))return t;t=t.parentNode}return t};let q;qt=e=>{var o;if(!T)return 0;if(q!==void 0)return q;const t=document.createElement("div");t.className=`${e}-scrollbar__wrap`,t.style.visibility="hidden",t.style.width="100px",t.style.position="absolute",t.style.top="-9999px",document.body.appendChild(t);const a=t.offsetWidth;t.style.overflow="scroll";const s=document.createElement("div");s.style.width="100%",t.appendChild(s);const l=s.offsetWidth;return(o=t.parentNode)==null||o.removeChild(t),q=a-l,q},$t=function(e,o){if(!T)return;if(!o){e.scrollTop=0;return}const t=[];let a=o.offsetParent;for(;a!==null&&e!==a&&e.contains(a);)t.push(a),a=a.offsetParent;const s=o.offsetTop+t.reduce((c,d)=>c+d.offsetTop,0),l=s+o.offsetHeight,u=e.scrollTop,v=u+e.clientHeight;sv&&(e.scrollTop=l-e.clientHeight)};let it,ut,ct;K="update:modelValue",Ft="change",it=()=>T&&/firefox/i.test(window.navigator.userAgent),Ae=e=>/([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi.test(e),ut=["class","style"],ct=/^on[A-Z]/,Ve=(e={})=>{const{excludeListeners:o=!1,excludeKeys:t}=e,a=b(()=>((t==null?void 0:t.value)||[]).concat(ut)),s=Jo();return s?b(()=>{var l;return Zo(Object.entries((l=s.proxy)==null?void 0:l.$attrs).filter(([u])=>!a.value.includes(u)&&!(o&&ct.test(u))))}):b(()=>({}))};function bo(e){const o=B();function t(){if(e.value==null)return;const{selectionStart:s,selectionEnd:l,value:u}=e.value;if(s==null||l==null)return;const v=u.slice(0,Math.max(0,s)),c=u.slice(Math.max(0,l));o.value={selectionStart:s,selectionEnd:l,value:u,beforeTxt:v,afterTxt:c}}function a(){if(e.value==null||o.value==null)return;const{value:s}=e.value,{beforeTxt:l,afterTxt:u,selectionStart:v}=o.value;if(l==null||u==null||v==null)return;let c=s.length;if(s.endsWith(u))c=s.length-u.length;else if(s.startsWith(l))c=l.length;else{const d=l[v-1],_=s.indexOf(d,v-1);_!==-1&&(c=_+1)}e.value.setSelectionRange(c,c)}return[t,a]}let g;const mo=` + height:0 !important; + visibility:hidden !important; + ${it()?"":"overflow:hidden !important;"} + position:absolute !important; + z-index:-1000 !important; + top:0 !important; + right:0 !important; +`,ho=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing"];function xo(e){const o=window.getComputedStyle(e),t=o.getPropertyValue("box-sizing"),a=Number.parseFloat(o.getPropertyValue("padding-bottom"))+Number.parseFloat(o.getPropertyValue("padding-top")),s=Number.parseFloat(o.getPropertyValue("border-bottom-width"))+Number.parseFloat(o.getPropertyValue("border-top-width"));return{contextStyle:ho.map(l=>`${l}:${o.getPropertyValue(l)}`).join(";"),paddingSize:a,borderSize:s,boxSizing:t}}function pt(e,o=1,t){var a;g||(g=document.createElement("textarea"),document.body.appendChild(g));const{paddingSize:s,borderSize:l,boxSizing:u,contextStyle:v}=xo(e);g.setAttribute("style",`${v};${mo}`),g.value=e.value||e.placeholder||"";let c=g.scrollHeight;const d={};u==="border-box"?c=c+l:u==="content-box"&&(c=c-s),g.value="";const _=g.scrollHeight-s;if(Ct(o)){let y=_*o;u==="border-box"&&(y=y+s+l),c=Math.max(y,c),d.minHeight=`${y}px`}if(Ct(t)){let y=_*t;u==="border-box"&&(y=y+s+l),c=Math.min(y,c)}return d.height=`${c}px`,(a=g.parentNode)==null||a.removeChild(g),g=void 0,d}const go=Qo({id:{type:String,default:void 0},size:Yo,disabled:Boolean,modelValue:{type:je([String,Number,Object]),default:""},type:{type:String,default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:je([Boolean,Object]),default:!1},autocomplete:{type:String,default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},showWordLimit:{type:Boolean,default:!1},suffixIcon:{type:It},prefixIcon:{type:It},containerRole:{type:String,default:void 0},label:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:je([Object,Array,String]),default:()=>Go({})}}),wo={[K]:e=>_e(e),input:e=>_e(e),change:e=>_e(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent},jo=["role"],_o=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],So=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],zo=Et({name:"ElInput",inheritAttrs:!1}),ko=Et({...zo,props:go,emits:wo,setup(e,{expose:o,emit:t}){const a=e,s=Xo(),l=er(),u=b(()=>{const r={};return a.containerRole==="combobox"&&(r["aria-haspopup"]=s["aria-haspopup"],r["aria-owns"]=s["aria-owns"],r["aria-expanded"]=s["aria-expanded"]),r}),v=b(()=>[a.type==="textarea"?dt.b():i.b(),i.m(Ao.value),i.is("disabled",I.value),i.is("exceed",Eo.value),{[i.b("group")]:l.prepend||l.append,[i.bm("group","append")]:l.append,[i.bm("group","prepend")]:l.prepend,[i.m("prefix")]:l.prefix||a.prefixIcon,[i.m("suffix")]:l.suffix||a.suffixIcon||a.clearable||a.showPassword,[i.bm("suffix","password-clear")]:Y.value&&be.value},s.class]),c=b(()=>[i.e("wrapper"),i.is("focus",V.value)]),d=Ve({excludeKeys:b(()=>Object.keys(u.value))}),{form:_,formItem:y}=mr(),{inputId:ft}=hr(a,{formItemContext:y}),Ao=xr(),I=gr(),i=Pt("input"),dt=Pt("textarea"),Z=Se(),S=Se(),V=B(!1),ye=B(!1),N=B(!1),J=B(!1),vt=B(),Q=Se(a.inputStyle),H=b(()=>Z.value||S.value),yt=b(()=>{var r;return(r=_==null?void 0:_.statusIcon)!=null?r:!1}),W=b(()=>(y==null?void 0:y.validateState)||""),bt=b(()=>W.value&&tr[W.value]),Co=b(()=>J.value?ar:or),Io=b(()=>[s.style,a.inputStyle]),mt=b(()=>[a.inputStyle,Q.value,{resize:a.resize}]),k=b(()=>jr(a.modelValue)?"":String(a.modelValue)),Y=b(()=>a.clearable&&!I.value&&!a.readonly&&!!k.value&&(V.value||ye.value)),be=b(()=>a.showPassword&&!I.value&&!a.readonly&&!!k.value&&(!!k.value||V.value)),E=b(()=>a.showWordLimit&&!!d.value.maxlength&&(a.type==="text"||a.type==="textarea")&&!I.value&&!a.readonly&&!a.showPassword),me=b(()=>k.value.length),Eo=b(()=>!!E.value&&me.value>Number(d.value.maxlength)),Po=b(()=>!!l.suffix||!!a.suffixIcon||Y.value||a.showPassword||E.value||!!W.value&&yt.value),[To,Bo]=bo(Z);rr(S,r=>{if($o(),!E.value||a.resize!=="both")return;const p=r[0],{width:w}=p.contentRect;vt.value={right:`calc(100% - ${w+15+6}px)`}});const R=()=>{const{type:r,autosize:p}=a;if(!(!T||r!=="textarea"||!S.value))if(p){const w=Tt(p)?p.minRows:void 0,xe=Tt(p)?p.maxRows:void 0,kt=pt(S.value,w,xe);Q.value={overflowY:"hidden",...kt},$(()=>{S.value.offsetHeight,Q.value=kt})}else Q.value={minHeight:pt(S.value).minHeight}},$o=(r=>{let p=!1;return()=>{var w;p||!a.autosize||((w=S.value)==null?void 0:w.offsetParent)===null||(r(),p=!0)}})(R),U=()=>{const r=H.value;!r||r.value===k.value||(r.value=k.value)},he=async r=>{To();let{value:p}=r.target;if(a.formatter&&(p=a.parser?a.parser(p):p,p=a.formatter(p)),!N.value){if(p===k.value){U();return}t(K,p),t("input",p),await $(),U(),Bo()}},ht=r=>{t("change",r.target.value)},xt=r=>{t("compositionstart",r),N.value=!0},gt=r=>{var p;t("compositionupdate",r);const w=(p=r.target)==null?void 0:p.value,xe=w[w.length-1]||"";N.value=!Ae(xe)},wt=r=>{t("compositionend",r),N.value&&(N.value=!1,he(r))},Fo=()=>{J.value=!J.value,G()},G=async()=>{var r;await $(),(r=H.value)==null||r.focus()},Mo=()=>{var r;return(r=H.value)==null?void 0:r.blur()},jt=r=>{V.value=!0,t("focus",r)},_t=r=>{var p;V.value=!1,t("blur",r),a.validateEvent&&((p=y==null?void 0:y.validate)==null||p.call(y,"blur").catch(w=>Bt()))},Vo=r=>{ye.value=!1,t("mouseleave",r)},No=r=>{ye.value=!0,t("mouseenter",r)},St=r=>{t("keydown",r)},Ho=()=>{var r;(r=H.value)==null||r.select()},zt=()=>{t(K,""),t("change",""),t("clear"),t("input","")};return ze(()=>a.modelValue,()=>{var r;$(()=>R()),a.validateEvent&&((r=y==null?void 0:y.validate)==null||r.call(y,"change").catch(p=>Bt()))}),ze(k,()=>U()),ze(()=>a.type,async()=>{await $(),U(),R()}),nr(()=>{!a.formatter&&a.parser,U(),$(R)}),o({input:Z,textarea:S,ref:H,textareaStyle:mt,autosize:sr(a,"autosize"),focus:G,blur:Mo,select:Ho,clear:zt,resizeTextarea:R}),(r,p)=>lr((m(),j("div",Oe(n(u),{class:n(v),style:n(Io),role:r.containerRole,onMouseenter:No,onMouseleave:Vo}),[h(" input "),r.type!=="textarea"?(m(),j(ke,{key:0},[h(" prepend slot "),r.$slots.prepend?(m(),j("div",{key:0,class:x(n(i).be("group","prepend"))},[ae(r.$slots,"prepend")],2)):h("v-if",!0),F("div",{class:x(n(c))},[h(" prefix slot "),r.$slots.prefix||r.prefixIcon?(m(),j("span",{key:0,class:x(n(i).e("prefix"))},[F("span",{class:x(n(i).e("prefix-inner")),onClick:G},[ae(r.$slots,"prefix"),r.prefixIcon?(m(),z(n(L),{key:0,class:x(n(i).e("icon"))},{default:D(()=>[(m(),z(oe(r.prefixIcon)))]),_:1},8,["class"])):h("v-if",!0)],2)],2)):h("v-if",!0),F("input",Oe({id:n(ft),ref_key:"input",ref:Z,class:n(i).e("inner")},n(d),{type:r.showPassword?J.value?"text":"password":r.type,disabled:n(I),formatter:r.formatter,parser:r.parser,readonly:r.readonly,autocomplete:r.autocomplete,tabindex:r.tabindex,"aria-label":r.label,placeholder:r.placeholder,style:r.inputStyle,form:a.form,onCompositionstart:xt,onCompositionupdate:gt,onCompositionend:wt,onInput:he,onFocus:jt,onBlur:_t,onChange:ht,onKeydown:St}),null,16,_o),h(" suffix slot "),n(Po)?(m(),j("span",{key:1,class:x(n(i).e("suffix"))},[F("span",{class:x(n(i).e("suffix-inner")),onClick:G},[!n(Y)||!n(be)||!n(E)?(m(),j(ke,{key:0},[ae(r.$slots,"suffix"),r.suffixIcon?(m(),z(n(L),{key:0,class:x(n(i).e("icon"))},{default:D(()=>[(m(),z(oe(r.suffixIcon)))]),_:1},8,["class"])):h("v-if",!0)],64)):h("v-if",!0),n(Y)?(m(),z(n(L),{key:1,class:x([n(i).e("icon"),n(i).e("clear")]),onMousedown:pr(n(fr),["prevent"]),onClick:zt},{default:D(()=>[ur(n(cr))]),_:1},8,["class","onMousedown"])):h("v-if",!0),n(be)?(m(),z(n(L),{key:2,class:x([n(i).e("icon"),n(i).e("password")]),onClick:Fo},{default:D(()=>[(m(),z(oe(n(Co))))]),_:1},8,["class"])):h("v-if",!0),n(E)?(m(),j("span",{key:3,class:x(n(i).e("count"))},[F("span",{class:x(n(i).e("count-inner"))},re(n(me))+" / "+re(n(d).maxlength),3)],2)):h("v-if",!0),n(W)&&n(bt)&&n(yt)?(m(),z(n(L),{key:4,class:x([n(i).e("icon"),n(i).e("validateIcon"),n(i).is("loading",n(W)==="validating")])},{default:D(()=>[(m(),z(oe(n(bt))))]),_:1},8,["class"])):h("v-if",!0)],2)],2)):h("v-if",!0)],2),h(" append slot "),r.$slots.append?(m(),j("div",{key:1,class:x(n(i).be("group","append"))},[ae(r.$slots,"append")],2)):h("v-if",!0)],64)):(m(),j(ke,{key:1},[h(" textarea "),F("textarea",Oe({id:n(ft),ref_key:"textarea",ref:S,class:n(dt).e("inner")},n(d),{tabindex:r.tabindex,disabled:n(I),readonly:r.readonly,autocomplete:r.autocomplete,style:n(mt),"aria-label":r.label,placeholder:r.placeholder,form:a.form,onCompositionstart:xt,onCompositionupdate:gt,onCompositionend:wt,onInput:he,onFocus:jt,onBlur:_t,onChange:ht,onKeydown:St}),null,16,So),n(E)?(m(),j("span",{key:0,style:dr(vt.value),class:x(n(i).e("count"))},re(n(me))+" / "+re(n(d).maxlength),7)):h("v-if",!0)],64))],16,jo)),[[ir,r.type!=="hidden"]])}});var Oo=vr(ko,[["__file","/home/runner/work/element-plus/element-plus/packages/components/input/src/input.vue"]]);Mt=yr(Oo)});export{$t as A,Ae as B,Ft as C,Mt as E,C as S,K as U,Sr as __tla,Vt as a,Ce as b,Nt as c,Ie as d,Ee as e,Pe as f,Ht as g,Te as h,Wt as i,Rt as j,Be as k,$e as l,Ut as m,ne as n,Fe as o,Dt as p,Lt as q,Kt as r,Me as s,qt as t,Ve as u,se as v,Ne as w,le as x,He as y,ie as z}; diff --git a/niucloud/public/web/_nuxt/el-loading.2bf1cb08.css b/niucloud/public/web/_nuxt/el-loading.2bf1cb08.css new file mode 100644 index 0000000..e81e23b --- /dev/null +++ b/niucloud/public/web/_nuxt/el-loading.2bf1cb08.css @@ -0,0 +1 @@ +.el-menu-vertical-demo[data-v-131a88f9]{border:none!important}.el-menu-vertical-demo .el-menu-item[data-v-131a88f9]{border-bottom:1px solid #f1f1f1}.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);background-color:var(--el-card-bg-color);border:1px solid var(--el-card-border-color);border-radius:var(--el-card-border-radius);color:var(--el-text-color-primary);overflow:hidden;transition:var(--el-transition-duration)}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{box-shadow:var(--el-box-shadow-light)}.el-card__header{border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box;padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding)}.el-card__body{padding:var(--el-card-padding)}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{background-color:var(--el-mask-color);bottom:0;left:0;margin:0;position:absolute;right:0;top:0;transition:opacity var(--el-transition-duration);z-index:2000}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size))/2);position:absolute;text-align:center;top:50%;width:100%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);font-size:14px;margin:3px 0}.el-loading-spinner .circular{animation:loading-rotate 2s linear infinite;display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size)}.el-loading-spinner .path{stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--el-color-primary);stroke-linecap:round;animation:loading-dash 1.5s ease-in-out infinite}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(1turn)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}} diff --git a/niucloud/public/web/_nuxt/el-loading.5f1a5791.js b/niucloud/public/web/_nuxt/el-loading.5f1a5791.js new file mode 100644 index 0000000..5cda648 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-loading.5f1a5791.js @@ -0,0 +1 @@ +import{J as te,ah as le,f as k,B as se,o as A,k as R,C as B,u as f,r as q,p as oe,t as re,y as ie,l as g,E as ue,D as de,F as ce,x as D,a1 as me,cc as ve,bi as be,cd as pe,an as fe,bm as y,w as v,S as ge,m as x,W as ye,X as xe,bf as C,ag as he,ap as F,Q as G,bc as h,bd as H,aY as J,aG as _e,ce as we,j as ke,c as Ce,s as $e,v as Le,__tla as Ae}from"./entry.60adbc61.js";import{E as Be,a as Se,__tla as Ve}from"./el-popper.f96f4ae9.js";import{_ as Ee}from"./_plugin-vue_export-helper.c27b6911.js";let M,Q,W,Ie=Promise.all([(()=>{try{return Ae}catch{}})(),(()=>{try{return Ve}catch{}})()]).then(async()=>{const X=te({header:{type:String,default:""},bodyStyle:{type:le([String,Object,Array]),default:""},shadow:{type:String,values:["always","hover","never"],default:"always"}}),Y=k({name:"ElCard"}),Z=k({...Y,props:X,setup(a){const e=se("card");return(n,t)=>(A(),R("div",{class:B([f(e).b(),f(e).is(`${n.shadow}-shadow`)])},[n.$slots.header||n.header?(A(),R("div",{key:0,class:B(f(e).e("header"))},[q(n.$slots,"header",{},()=>[oe(re(n.header),1)])],2)):ie("v-if",!0),g("div",{class:B(f(e).e("body")),style:ue(n.bodyStyle)},[q(n.$slots,"default")],6)],2))}});var K=de(Z,[["__file","/home/runner/work/element-plus/element-plus/packages/components/card/src/card.vue"]]);M=ce(K);function U(a){let e;const n=D(!1),t=me({...a,originalPosition:"",originalOverflow:"",visible:!1});function s(o){t.text=o}function l(){const o=t.parent,r=c.ns;if(!o.vLoadingAddClassList){let i=o.getAttribute("loading-number");i=Number.parseInt(i)-1,i?o.setAttribute("loading-number",i.toString()):(C(o,r.bm("parent","relative")),o.removeAttribute("loading-number")),C(o,r.bm("parent","hidden"))}u(),d.unmount()}function u(){var o,r;(r=(o=c.$el)==null?void 0:o.parentNode)==null||r.removeChild(c.$el)}function m(){var o;a.beforeClose&&!a.beforeClose()||(n.value=!0,clearTimeout(e),e=window.setTimeout(p,400),t.visible=!1,(o=a.closed)==null||o.call(a))}function p(){if(!n.value)return;const o=t.parent;n.value=!1,o.vLoadingAddClassList=void 0,l()}const d=ve(k({name:"ElLoading",setup(o,{expose:r}){const{ns:i}=pe("loading"),ee=fe();return r({ns:i,zIndex:ee}),()=>{const z=t.spinner||t.svg,ae=y("svg",{class:"circular",viewBox:t.svgViewBox?t.svgViewBox:"0 0 50 50",...z?{innerHTML:z}:{}},[y("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),ne=t.text?y("p",{class:i.b("text")},[t.text]):void 0;return y(xe,{name:i.b("fade"),onAfterLeave:p},{default:v(()=>[ge(x("div",{style:{backgroundColor:t.background||""},class:[i.b("mask"),t.customClass,t.fullscreen?"is-fullscreen":""]},[y("div",{class:i.b("spinner")},[ae,ne])]),[[ye,t.visible]])])})}}})),c=d.mount(document.createElement("div"));return{...be(t),setText:s,removeElLoadingChild:u,close:m,handleAfterLeave:p,vm:c,get $el(){return c.$el}}}let _,S,V,E,$,w,L,I,b,P,N,O,T,j;S=function(a={}){if(!he)return;const e=V(a);if(e.fullscreen&&_)return _;const n=U({...e,closed:()=>{var s;(s=e.closed)==null||s.call(e),e.fullscreen&&(_=void 0)}});E(e,e.parent,n),$(e,e.parent,n),e.parent.vLoadingAddClassList=()=>$(e,e.parent,n);let t=e.parent.getAttribute("loading-number");return t?t=`${Number.parseInt(t)+1}`:t="1",e.parent.setAttribute("loading-number",t),e.parent.appendChild(n.$el),F(()=>n.visible.value=e.visible),e.fullscreen&&(_=n),n},V=a=>{var e,n,t,s;let l;return G(a.target)?l=(e=document.querySelector(a.target))!=null?e:document.body:l=a.target||document.body,{parent:l===document.body||a.body?document.body:l,background:a.background||"",svg:a.svg||"",svgViewBox:a.svgViewBox||"",spinner:a.spinner||!1,text:a.text||"",fullscreen:l===document.body&&((n=a.fullscreen)!=null?n:!0),lock:(t=a.lock)!=null?t:!1,customClass:a.customClass||"",visible:(s=a.visible)!=null?s:!0,target:l}},E=async(a,e,n)=>{const{nextZIndex:t}=n.vm.zIndex,s={};if(a.fullscreen)n.originalPosition.value=h(document.body,"position"),n.originalOverflow.value=h(document.body,"overflow"),s.zIndex=t();else if(a.parent===document.body){n.originalPosition.value=h(document.body,"position"),await F();for(const l of["top","left"]){const u=l==="top"?"scrollTop":"scrollLeft";s[l]=`${a.target.getBoundingClientRect()[l]+document.body[u]+document.documentElement[u]-Number.parseInt(h(document.body,`margin-${l}`),10)}px`}for(const l of["height","width"])s[l]=`${a.target.getBoundingClientRect()[l]}px`}else n.originalPosition.value=h(e,"position");for(const[l,u]of Object.entries(s))n.$el.style[l]=u},$=(a,e,n)=>{const t=n.vm.ns;["absolute","fixed","sticky"].includes(n.originalPosition.value)?C(e,t.bm("parent","relative")):H(e,t.bm("parent","relative")),a.fullscreen&&a.lock?H(e,t.bm("parent","hidden")):C(e,t.bm("parent","hidden"))},w=Symbol("ElLoading"),L=(a,e)=>{var n,t,s,l;const u=e.instance,m=r=>J(e.value)?e.value[r]:void 0,p=r=>{const i=G(r)&&(u==null?void 0:u[r])||r;return i&&D(i)},d=r=>p(m(r)||a.getAttribute(`element-loading-${we(r)}`)),c=(n=m("fullscreen"))!=null?n:e.modifiers.fullscreen,o={text:d("text"),svg:d("svg"),svgViewBox:d("svgViewBox"),spinner:d("spinner"),background:d("background"),customClass:d("customClass"),fullscreen:c,target:(t=m("target"))!=null?t:c?void 0:a,body:(s=m("body"))!=null?s:e.modifiers.body,lock:(l=m("lock"))!=null?l:e.modifiers.lock};a[w]={options:o,instance:S(o)}},I=(a,e)=>{for(const n of Object.keys(e))_e(e[n])&&(e[n].value=a[n])},W={mounted(a,e){e.value&&L(a,e)},updated(a,e){const n=a[w];e.oldValue!==e.value&&(e.value&&!e.oldValue?L(a,e):e.value&&e.oldValue?J(e.value)&&I(e.value,n.options):n==null||n.instance.close())},unmounted(a){var e;(e=a[w])==null||e.instance.close()}},b=a=>($e("data-v-131a88f9"),a=a(),Le(),a),P=b(()=>g("span",null,"\u6B22\u8FCE\u9875",-1)),N=b(()=>g("span",null,"\u4E2A\u4EBA\u4FE1\u606F",-1)),O=b(()=>g("span",null,"\u6211\u7684\u4F59\u989D",-1)),T=b(()=>g("span",null,"\u6211\u7684\u79EF\u5206",-1)),j=k({__name:"index",setup(a){const e=ke();return(n,t)=>{const s=Be,l=Se;return A(),Ce(l,{"default-active":f(e).route,ellipsis:!1,router:!0,class:"el-menu-vertical-demo w-[200px]"},{default:v(()=>[x(s,{index:"/member",route:"/member",class:"divide-y"},{default:v(()=>[P]),_:1}),x(s,{index:"/member/center",route:"/member/center",class:"divide-y"},{default:v(()=>[N]),_:1}),x(s,{index:"/member/balance",route:"/member/balance",class:"divide-y"},{default:v(()=>[O]),_:1}),x(s,{index:"/member/point",route:"/member/point",class:"divide-y"},{default:v(()=>[T]),_:1})]),_:1},8,["default-active"])}}}),Q=Ee(j,[["__scopeId","data-v-131a88f9"]])});export{M as E,Q as _,Ie as __tla,W as v}; diff --git a/niucloud/public/web/_nuxt/el-main.2d80fc5e.js b/niucloud/public/web/_nuxt/el-main.2d80fc5e.js new file mode 100644 index 0000000..c54181f --- /dev/null +++ b/niucloud/public/web/_nuxt/el-main.2d80fc5e.js @@ -0,0 +1 @@ +import{f as s,A as G,B as c,i as d,o as i,k as u,r as p,C as m,u as n,D as h,E as _,F as j,G as f,__tla as N}from"./entry.60adbc61.js";let E,b,$,P=Promise.all([(()=>{try{return N}catch{}})()]).then(async()=>{const B=s({name:"ElContainer"}),F=s({...B,props:{direction:{type:String}},setup(r){const t=r,e=G(),a=c("container"),o=d(()=>t.direction==="vertical"?!0:t.direction==="horizontal"?!1:e&&e.default?e.default().some(l=>{const g=l.type.name;return g==="ElHeader"||g==="ElFooter"}):!1);return(l,g)=>(i(),u("section",{class:m([n(a).b(),n(a).is("vertical",n(o))])},[p(l.$slots,"default")],2))}});var S=h(F,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/container.vue"]]);const A=s({name:"ElAside"}),H=s({...A,props:{width:{type:String,default:null}},setup(r){const t=r,e=c("aside"),a=d(()=>t.width?e.cssVarBlock({width:t.width}):{});return(o,l)=>(i(),u("aside",{class:m(n(e).b()),style:_(n(a))},[p(o.$slots,"default")],6))}});var k=h(H,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/aside.vue"]]);const V=s({name:"ElFooter"}),C=s({...V,props:{height:{type:String,default:null}},setup(r){const t=r,e=c("footer"),a=d(()=>t.height?e.cssVarBlock({height:t.height}):{});return(o,l)=>(i(),u("footer",{class:m(n(e).b()),style:_(n(a))},[p(o.$slots,"default")],6))}});var v=h(C,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/footer.vue"]]);const M=s({name:"ElHeader"}),x=s({...M,props:{height:{type:String,default:null}},setup(r){const t=r,e=c("header"),a=d(()=>t.height?e.cssVarBlock({height:t.height}):{});return(o,l)=>(i(),u("header",{class:m(n(e).b()),style:_(n(a))},[p(o.$slots,"default")],6))}});var y=h(x,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/header.vue"]]);const z=s({name:"ElMain"}),D=s({...z,setup(r){const t=c("main");return(e,a)=>(i(),u("main",{class:m(n(t).b())},[p(e.$slots,"default")],2))}});var w=h(D,[["__file","/home/runner/work/element-plus/element-plus/packages/components/container/src/main.vue"]]);E=j(S,{Aside:k,Footer:v,Header:y,Main:w}),f(k),f(v),b=f(y),$=f(w)});export{E,P as __tla,b as a,$ as b}; diff --git a/niucloud/public/web/_nuxt/el-main.36617317.css b/niucloud/public/web/_nuxt/el-main.36617317.css new file mode 100644 index 0000000..3b89992 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-main.36617317.css @@ -0,0 +1 @@ +.el-container{box-sizing:border-box;display:flex;flex:1;flex-basis:auto;flex-direction:row;min-width:0}.el-container.is-vertical{flex-direction:column}.el-aside{box-sizing:border-box;flex-shrink:0;overflow:auto;width:var(--el-aside-width,300px)}.el-footer{--el-footer-padding:0 20px;--el-footer-height:60px;box-sizing:border-box;flex-shrink:0;height:var(--el-footer-height);padding:var(--el-footer-padding)}.el-header{--el-header-padding:0 20px;--el-header-height:60px;box-sizing:border-box;flex-shrink:0;height:var(--el-header-height);padding:var(--el-header-padding)}.el-main{--el-main-padding:20px;box-sizing:border-box;display:block;flex:1;flex-basis:auto;overflow:auto;padding:var(--el-main-padding)} diff --git a/niucloud/public/web/_nuxt/el-overlay.abd91397.css b/niucloud/public/web/_nuxt/el-overlay.abd91397.css new file mode 100644 index 0000000..f4558d0 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-overlay.abd91397.css @@ -0,0 +1 @@ +.el-form{--el-form-label-font-size:var(--el-font-size-base)}.el-form--label-left .el-form-item__label{justify-content:flex-start}.el-form--label-top .el-form-item{display:block}.el-form--label-top .el-form-item .el-form-item__label{display:block;height:auto;line-height:22px;margin-bottom:8px;text-align:left}.el-form--inline .el-form-item{display:inline-flex;margin-right:32px;vertical-align:middle}.el-form--inline.el-form--label-top{display:flex;flex-wrap:wrap}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-form--large.el-form--label-top .el-form-item .el-form-item__label{line-height:22px;margin-bottom:12px}.el-form--default.el-form--label-top .el-form-item .el-form-item__label{line-height:22px;margin-bottom:8px}.el-form--small.el-form--label-top .el-form-item .el-form-item__label{line-height:20px;margin-bottom:4px}.el-form-item{--font-size:14px;display:flex;margin-bottom:18px}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item__label-wrap{display:flex}.el-form-item__label{align-items:flex-start;box-sizing:border-box;color:var(--el-text-color-regular);display:inline-flex;flex:0 0 auto;font-size:var(--el-form-label-font-size);height:32px;justify-content:flex-end;line-height:32px;padding:0 12px 0 0}.el-form-item__content{align-items:center;display:flex;flex:1;flex-wrap:wrap;font-size:var(--font-size);line-height:32px;min-width:0;position:relative}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);font-size:12px;left:0;line-height:1;padding-top:2px;position:absolute;top:100%}.el-form-item__error--inline{display:inline-block;left:auto;margin-left:10px;position:relative;top:auto}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before{color:var(--el-color-danger);content:"*";margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after{color:var(--el-color-danger);content:"*";margin-left:4px}.el-form-item.is-error .el-input__wrapper,.el-form-item.is-error .el-select-v2__wrapper,.el-form-item.is-error .el-select-v2__wrapper:focus,.el-form-item.is-error .el-textarea__inner,.el-form-item.is-error .el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-input-group__prepend .el-input__wrapper{box-shadow:inset 0 0 0 1px transparent}.el-form-item.is-error .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{background:var(--el-popup-modal-bg-color);height:100%;left:0;opacity:var(--el-popup-modal-opacity);position:fixed;top:0;width:100%}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:20px;--el-dialog-border-radius:var(--el-border-radius-small);background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;margin:var(--el-dialog-margin-top,15vh) auto 50px;position:relative;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:0!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;height:100%;margin-bottom:0;overflow:auto}.el-dialog__wrapper{bottom:0;left:0;margin:0;overflow:auto;position:fixed;right:0;top:0}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;user-select:none}.el-dialog__header{margin-right:16px;padding:var(--el-dialog-padding-primary);padding-bottom:10px}.el-dialog__headerbtn{background:0 0;border:none;cursor:pointer;font-size:var(--el-message-close-size,16px);height:54px;outline:0;padding:0;position:absolute;right:0;top:6px;width:54px}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{color:var(--el-text-color-primary);font-size:var(--el-dialog-title-font-size);line-height:var(--el-dialog-font-line-height)}.el-dialog__body{color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size);padding:calc(var(--el-dialog-padding-primary) + 10px) var(--el-dialog-padding-primary)}.el-dialog__footer{box-sizing:border-box;padding:var(--el-dialog-padding-primary);padding-top:10px;text-align:right}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{padding:25px calc(var(--el-dialog-padding-primary) + 5px) 30px;text-align:initial}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-overlay-dialog{bottom:0;left:0;overflow:auto;position:fixed;right:0;top:0}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes dialog-fade-out{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20px,0)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-overlay{background-color:var(--el-overlay-color-lighter);bottom:0;height:100%;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:2000}.el-overlay .el-overlay-root{height:0} diff --git a/niucloud/public/web/_nuxt/el-overlay.ae79e505.js b/niucloud/public/web/_nuxt/el-overlay.ae79e505.js new file mode 100644 index 0000000..6d76297 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-overlay.ae79e505.js @@ -0,0 +1,12 @@ +import{t as ht,d as wa,f as Me,a as Pe,F as Fa,u as bt,E as ja,__tla as qa}from"./index.f6314314.js";import{b4 as wt,b5 as Ft,b6 as jt,aJ as Aa,b7 as xa,aN as Ce,M as me,b8 as Oa,O as Re,b9 as ce,aG as Ea,B as ee,ba as ka,ag as qt,bb as At,L as T,bc as Sa,bd as _a,be as Ma,bf as Pa,aS as Ie,J as te,bg as xt,ah as re,aX as Ca,Q as Be,bh as $e,x as D,i as _,f as Y,P as Le,a1 as Ot,bi as Et,o as G,k as fe,r as N,C as W,u,D as ge,a0 as ne,bj as Ra,N as Ia,m as J,Z as Ba,ap as De,A as kt,bk as $a,bl as ze,w as X,c as he,at as St,E as be,p as La,t as Ne,y as de,l as ae,aW as Da,F as _t,G as za,bm as Na,bn as Wa,am as Va,U as Ua,bo as Ya,an as Xa,bp as Ga,R as Ja,bq as Za,br as Mt,S as Ta,aC as Ha,b0 as Qa,W as Ka,X as eo,aw as to,__tla as ro}from"./entry.60adbc61.js";import{a as Pt,__tla as no}from"./use-form-item.9fe2eb56.js";import{u as We,__tla as ao}from"./index.59e0a5b1.js";import{c as we,k as Ct,a as Ve,b as Rt,s as oo,d as so,e as lo,f as io,h as It,i as uo,j as Ue,n as Fe,l as Bt,m as co,o as fo,p as po,q as vo,S as yo,r as mo,t as go,U as $t,__tla as ho}from"./el-input.9a624f32.js";import{P as Ye,__tla as bo}from"./vnode.a078d472.js";let Lt,Dt,zt,oe,wo=Promise.all([(()=>{try{return qa}catch{}})(),(()=>{try{return ro}catch{}})(),(()=>{try{return no}catch{}})(),(()=>{try{return ao}catch{}})(),(()=>{try{return ho}catch{}})(),(()=>{try{return bo}catch{}})()]).then(async()=>{function Nt(e,r){for(var t=-1,n=e==null?0:e.length;++tr=>{e.forEach(t=>{Ce(t)?t(r):t.value=r})},an=(e,r,t)=>{let n={offsetX:0,offsetY:0};const a=l=>{const m=l.clientX,h=l.clientY,{offsetX:c,offsetY:y}=n,d=e.value.getBoundingClientRect(),q=d.left,v=d.top,b=d.width,i=d.height,x=document.documentElement.clientWidth,p=document.documentElement.clientHeight,f=-q+c,j=-v+y,M=x-q-b+c,A=p-v-i+y,C=$=>{const O=Math.min(Math.max(c+$.clientX-m,f),M),I=Math.min(Math.max(y+$.clientY-h,j),A);n={offsetX:O,offsetY:I},e.value.style.transform=`translate(${ce(O)}, ${ce(I)})`},E=()=>{document.removeEventListener("mousemove",C),document.removeEventListener("mouseup",E)};document.addEventListener("mousemove",C),document.addEventListener("mouseup",E)},o=()=>{r.value&&e.value&&r.value.addEventListener("mousedown",a)},s=()=>{r.value&&e.value&&r.value.removeEventListener("mousedown",a)};me(()=>{Oa(()=>{t.value?o():s()})}),Re(()=>{s()})},on=(e,r={})=>{Ea(e)||ht("[useLockscreen]","You need to pass a ref param to this function");const t=r.ns||ee("popup"),n=ka(()=>t.bm("parent","hidden"));if(!qt||At(document.body,n.value))return;let a=0,o=!1,s="0";const l=()=>{setTimeout(()=>{Pa(document==null?void 0:document.body,n.value),o&&document&&(document.body.style.width=s)},200)};T(e,m=>{if(!m){l();return}o=!At(document.body,n.value),o&&(s=document.body.style.width),a=go(t.namespace.value);const h=document.documentElement.clientHeight0&&(h||c==="scroll")&&o&&(document.body.style.width=`calc(100% - ${a}px)`),_a(document.body,n.value)}),Ma(()=>l())},tt=e=>{if(!e)return{onClick:Ie,onMousedown:Ie,onMouseup:Ie};let r=!1,t=!1;return{onClick:n=>{r&&t&&e(n),r=t=!1},onMousedown:n=>{r=n.target===n.currentTarget},onMouseup:n=>{t=n.target===n.currentTarget}}},sn=te({size:{type:String,values:xt},disabled:Boolean}),ln=te({...sn,model:Object,rules:{type:re(Object)},labelPosition:{type:String,values:["left","right","top"],default:"right"},requireAsteriskPosition:{type:String,values:["left","right"],default:"left"},labelWidth:{type:[String,Number],default:""},labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:{type:Boolean,default:!1},scrollToError:Boolean,scrollIntoViewOptions:{type:[Object,Boolean]}}),un={validate:(e,r,t)=>(Ca(e)||Be(e))&&$e(r)&&Be(t)};function cn(){const e=D([]),r=_(()=>{if(!e.value.length)return"0";const o=Math.max(...e.value);return o?`${o}px`:""});function t(o){const s=e.value.indexOf(o);return s===-1&&r.value,s}function n(o,s){if(o&&s){const l=t(s);e.value.splice(l,1,o)}else o&&e.value.push(o)}function a(o){const s=t(o);s>-1&&e.value.splice(s,1)}return{autoLabelWidth:r,registerLabelWidth:n,deregisterLabelWidth:a}}const pe=(e,r)=>{const t=je(r);return t.length>0?e.filter(n=>n.prop&&t.includes(n.prop)):e},fn="ElForm",dn=Y({name:fn}),pn=Y({...dn,props:ln,emits:un,setup(e,{expose:r,emit:t}){const n=e,a=[],o=Pt(),s=ee("form"),l=_(()=>{const{labelPosition:p,inline:f}=n;return[s.b(),s.m(o.value||"default"),{[s.m(`label-${p}`)]:p,[s.m("inline")]:f}]}),m=p=>{a.push(p)},h=p=>{p.prop&&a.splice(a.indexOf(p),1)},c=(p=[])=>{n.model&&pe(a,p).forEach(f=>f.resetField())},y=(p=[])=>{pe(a,p).forEach(f=>f.clearValidate())},d=_(()=>!!n.model),q=p=>{if(a.length===0)return[];const f=pe(a,p);return f.length?f:[]},v=async p=>i(void 0,p),b=async(p=[])=>{if(!d.value)return!1;const f=q(p);if(f.length===0)return!0;let j={};for(const M of f)try{await M.validate("")}catch(A){j={...j,...A}}return Object.keys(j).length===0?!0:Promise.reject(j)},i=async(p=[],f)=>{const j=!Ce(f);try{const M=await b(p);return M===!0&&(f==null||f(M)),M}catch(M){if(M instanceof Error)throw M;const A=M;return n.scrollToError&&x(Object.keys(A)[0]),f==null||f(!1,A),j&&Promise.reject(A)}},x=p=>{var f;const j=pe(a,p)[0];j&&((f=j.$el)==null||f.scrollIntoView(n.scrollIntoViewOptions))};return T(()=>n.rules,()=>{n.validateOnRuleChange&&v().catch(p=>wa())},{deep:!0}),Le(Me,Ot({...Et(n),emit:t,resetFields:c,clearValidate:y,validateField:i,addField:m,removeField:h,...cn()})),r({validate:v,validateField:i,resetFields:c,clearValidate:y,scrollToField:x}),(p,f)=>(G(),fe("form",{class:W(u(l))},[N(p.$slots,"default")],2))}});var vn=ge(pn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form.vue"]]);function Z(){return Z=Object.assign?Object.assign.bind():function(e){for(var r=1;r"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function ve(e,r,t){return mn()?ve=Reflect.construct.bind():ve=function(n,a,o){var s=[null];s.push.apply(s,a);var l=Function.bind.apply(n,s),m=new l;return o&&se(m,o.prototype),m},ve.apply(null,arguments)}function gn(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Ae(e){var r=typeof Map=="function"?new Map:void 0;return Ae=function(t){if(t===null||!gn(t))return t;if(typeof t!="function")throw new TypeError("Super expression must either be null or a function");if(typeof r<"u"){if(r.has(t))return r.get(t);r.set(t,n)}function n(){return ve(t,arguments,qe(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),se(n,t)},Ae(e)}var hn=/%[sdj%]/g,bn=function(){};typeof process<"u"&&process.env;function xe(e){if(!e||!e.length)return null;var r={};return e.forEach(function(t){var n=t.field;r[n]=r[n]||[],r[n].push(t)}),r}function z(e){for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n=o)return l;switch(l){case"%s":return String(t[a++]);case"%d":return Number(t[a++]);case"%j":try{return JSON.stringify(t[a++])}catch{return"[Circular]"}break;default:return l}});return s}return e}function wn(e){return e==="string"||e==="url"||e==="hex"||e==="email"||e==="date"||e==="pattern"}function P(e,r){return!!(e==null||r==="array"&&Array.isArray(e)&&!e.length||wn(r)&&typeof e=="string"&&!e)}function Fn(e,r,t){var n=[],a=0,o=e.length;function s(l){n.push.apply(n,l||[]),a++,a===o&&t(n)}e.forEach(function(l){r(l,s)})}function rt(e,r,t){var n=0,a=e.length;function o(s){if(s&&s.length){t(s);return}var l=n;n=n+1,l()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},le={integer:function(e){return le.number(e)&&parseInt(e,10)===e},float:function(e){return le.number(e)&&!le.integer(e)},array:function(e){return Array.isArray(e)},regexp:function(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch{return!1}},date:function(e){return typeof e.getTime=="function"&&typeof e.getMonth=="function"&&typeof e.getYear=="function"&&!isNaN(e.getTime())},number:function(e){return isNaN(e)?!1:typeof e=="number"},object:function(e){return typeof e=="object"&&!le.array(e)},method:function(e){return typeof e=="function"},email:function(e){return typeof e=="string"&&e.length<=320&&!!e.match(lt.email)},url:function(e){return typeof e=="string"&&e.length<=2048&&!!e.match(En())},hex:function(e){return typeof e=="string"&&!!e.match(lt.hex)}},kn=function(e,r,t,n,a){if(e.required&&r===void 0){st(e,r,t,n,a);return}var o=["integer","float","array","regexp","object","method","email","number","date","url","hex"],s=e.type;o.indexOf(s)>-1?le[s](r)||n.push(z(a.messages.types[s],e.fullField,e.type)):s&&typeof r!==e.type&&n.push(z(a.messages.types[s],e.fullField,e.type))},Sn=function(e,r,t,n,a){var o=typeof e.len=="number",s=typeof e.min=="number",l=typeof e.max=="number",m=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,h=r,c=null,y=typeof r=="number",d=typeof r=="string",q=Array.isArray(r);if(y?c="number":d?c="string":q&&(c="array"),!c)return!1;q&&(h=r.length),d&&(h=r.replace(m,"_").length),o?h!==e.len&&n.push(z(a.messages[c].len,e.fullField,e.len)):s&&!l&&he.max?n.push(z(a.messages[c].max,e.fullField,e.max)):s&&l&&(he.max)&&n.push(z(a.messages[c].range,e.fullField,e.min,e.max))},H="enum",_n=function(e,r,t,n,a){e[H]=Array.isArray(e[H])?e[H]:[],e[H].indexOf(r)===-1&&n.push(z(a.messages[H],e.fullField,e[H].join(", ")))},Mn=function(e,r,t,n,a){if(e.pattern){if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(r)||n.push(z(a.messages.pattern.mismatch,e.fullField,r,e.pattern));else if(typeof e.pattern=="string"){var o=new RegExp(e.pattern);o.test(r)||n.push(z(a.messages.pattern.mismatch,e.fullField,r,e.pattern))}}},F={required:st,whitespace:On,type:kn,range:Sn,enum:_n,pattern:Mn},Pn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r,"string")&&!e.required)return t();F.required(e,r,n,o,a,"string"),P(r,"string")||(F.type(e,r,n,o,a),F.range(e,r,n,o,a),F.pattern(e,r,n,o,a),e.whitespace===!0&&F.whitespace(e,r,n,o,a))}t(o)},Cn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&F.type(e,r,n,o,a)}t(o)},Rn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(r===""&&(r=void 0),P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&(F.type(e,r,n,o,a),F.range(e,r,n,o,a))}t(o)},In=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&F.type(e,r,n,o,a)}t(o)},Bn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),P(r)||F.type(e,r,n,o,a)}t(o)},$n=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&(F.type(e,r,n,o,a),F.range(e,r,n,o,a))}t(o)},Ln=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&(F.type(e,r,n,o,a),F.range(e,r,n,o,a))}t(o)},Dn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(r==null&&!e.required)return t();F.required(e,r,n,o,a,"array"),r!=null&&(F.type(e,r,n,o,a),F.range(e,r,n,o,a))}t(o)},zn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&F.type(e,r,n,o,a)}t(o)},Nn="enum",Wn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a),r!==void 0&&F[Nn](e,r,n,o,a)}t(o)},Vn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r,"string")&&!e.required)return t();F.required(e,r,n,o,a),P(r,"string")||F.pattern(e,r,n,o,a)}t(o)},Un=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r,"date")&&!e.required)return t();if(F.required(e,r,n,o,a),!P(r,"date")){var l;r instanceof Date?l=r:l=new Date(r),F.type(e,l,n,o,a),l&&F.range(e,l.getTime(),n,o,a)}}t(o)},Yn=function(e,r,t,n,a){var o=[],s=Array.isArray(r)?"array":typeof r;F.required(e,r,n,o,a,s),t(o)},Oe=function(e,r,t,n,a){var o=e.type,s=[],l=e.required||!e.required&&n.hasOwnProperty(e.field);if(l){if(P(r,o)&&!e.required)return t();F.required(e,r,n,s,a,o),P(r,o)||F.type(e,r,n,s,a)}t(s)},Xn=function(e,r,t,n,a){var o=[],s=e.required||!e.required&&n.hasOwnProperty(e.field);if(s){if(P(r)&&!e.required)return t();F.required(e,r,n,o,a)}t(o)},ie={string:Pn,method:Cn,number:Rn,boolean:In,regexp:Bn,integer:$n,float:Ln,array:Dn,object:zn,enum:Wn,pattern:Vn,date:Un,url:Oe,hex:Oe,email:Oe,required:Yn,any:Xn};function Ee(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}var ke=Ee(),ue=function(){function e(t){this.rules=null,this._messages=ke,this.define(t)}var r=e.prototype;return r.define=function(t){var n=this;if(!t)throw new Error("Cannot configure a schema with no rules");if(typeof t!="object"||Array.isArray(t))throw new Error("Rules must be an object");this.rules={},Object.keys(t).forEach(function(a){var o=t[a];n.rules[a]=Array.isArray(o)?o:[o]})},r.messages=function(t){return t&&(this._messages=ot(Ee(),t)),this._messages},r.validate=function(t,n,a){var o=this;n===void 0&&(n={}),a===void 0&&(a=function(){});var s=t,l=n,m=a;if(typeof l=="function"&&(m=l,l={}),!this.rules||Object.keys(this.rules).length===0)return m&&m(null,s),Promise.resolve(s);function h(v){var b=[],i={};function x(f){if(Array.isArray(f)){var j;b=(j=b).concat.apply(j,f)}else b.push(f)}for(var p=0;p");const a=ee("form"),o=D(),s=D(0),l=()=>{var c;if((c=o.value)!=null&&c.firstElementChild){const y=window.getComputedStyle(o.value.firstElementChild).width;return Math.ceil(Number.parseFloat(y))}else return 0},m=(c="update")=>{De(()=>{r.default&&e.isAutoWidth&&(c==="update"?s.value=l():c==="remove"&&(t==null||t.deregisterLabelWidth(s.value)))})},h=()=>m("update");return me(()=>{h()}),Re(()=>{m("remove")}),Ra(()=>h()),T(s,(c,y)=>{e.updateAll&&(t==null||t.registerLabelWidth(c,y))}),Ia(_(()=>{var c,y;return(y=(c=o.value)==null?void 0:c.firstElementChild)!=null?y:null}),h),()=>{var c,y;if(!r)return null;const{isAutoWidth:d}=e;if(d){const q=t==null?void 0:t.autoLabelWidth,v=n==null?void 0:n.hasLabel,b={};if(v&&q&&q!=="auto"){const i=Math.max(0,Number.parseInt(q,10)-s.value),x=t.labelPosition==="left"?"marginRight":"marginLeft";i&&(b[x]=`${i}px`)}return J("div",{ref:o,class:[a.be("item","label-wrap")],style:b},[(c=r.default)==null?void 0:c.call(r)])}else return J(Ba,{ref:o},[(y=r.default)==null?void 0:y.call(r)])}}});const Tn=["role","aria-labelledby"],Hn=Y({name:"ElFormItem"}),Qn=Y({...Hn,props:Jn,setup(e,{expose:r}){const t=e,n=kt(),a=ne(Me,void 0),o=ne(Pe,void 0),s=Pt(void 0,{formItem:!1}),l=ee("form-item"),m=We().value,h=D([]),c=D(""),y=$a(c,100),d=D(""),q=D();let v,b=!1;const i=_(()=>{if((a==null?void 0:a.labelPosition)==="top")return{};const g=ce(t.labelWidth||(a==null?void 0:a.labelWidth)||"");return g?{width:g}:{}}),x=_(()=>{if((a==null?void 0:a.labelPosition)==="top"||a!=null&&a.inline)return{};if(!t.label&&!t.labelWidth&&$)return{};const g=ce(t.labelWidth||(a==null?void 0:a.labelWidth)||"");return!t.label&&!n.label?{marginLeft:g}:{}}),p=_(()=>[l.b(),l.m(s.value),l.is("error",c.value==="error"),l.is("validating",c.value==="validating"),l.is("success",c.value==="success"),l.is("required",V.value||t.required),l.is("no-asterisk",a==null?void 0:a.hideRequiredAsterisk),(a==null?void 0:a.requireAsteriskPosition)==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:a==null?void 0:a.statusIcon}]),f=_(()=>$e(t.inlineMessage)?t.inlineMessage:(a==null?void 0:a.inlineMessage)||!1),j=_(()=>[l.e("error"),{[l.em("error","inline")]:f.value}]),M=_(()=>t.prop?Be(t.prop)?t.prop:t.prop.join("."):""),A=_(()=>!!(t.label||n.label)),C=_(()=>t.for||h.value.length===1?h.value[0]:void 0),E=_(()=>!C.value&&A.value),$=!!o,O=_(()=>{const g=a==null?void 0:a.model;if(!(!g||!t.prop))return ze(g,t.prop).value}),I=_(()=>{const{required:g}=t,w=[];t.rules&&w.push(...je(t.rules));const B=a==null?void 0:a.rules;if(B&&t.prop){const L=ze(B,t.prop).value;L&&w.push(...je(L))}if(g!==void 0){const L=w.map((U,K)=>[U,K]).filter(([U])=>Object.keys(U).includes("required"));if(L.length>0)for(const[U,K]of L)U.required!==g&&(w[K]={...U,required:g});else w.push({required:g})}return w}),R=_(()=>I.value.length>0),S=g=>I.value.filter(w=>!w.trigger||!g?!0:Array.isArray(w.trigger)?w.trigger.includes(g):w.trigger===g).map(({trigger:w,...B})=>B),V=_(()=>I.value.some(g=>g.required)),va=_(()=>{var g;return y.value==="error"&&t.showMessage&&((g=a==null?void 0:a.showMessage)!=null?g:!0)}),yt=_(()=>`${t.label||""}${(a==null?void 0:a.labelSuffix)||""}`),Q=g=>{c.value=g},ya=g=>{var w,B;const{errors:L,fields:U}=g;(!L||!U)&&console.error(g),Q("error"),d.value=L?(B=(w=L==null?void 0:L[0])==null?void 0:w.message)!=null?B:`${t.prop} is required`:"",a==null||a.emit("validate",t.prop,!1,d.value)},ma=()=>{Q("success"),a==null||a.emit("validate",t.prop,!0,"")},ga=async g=>{const w=M.value;return new ue({[w]:g}).validate({[w]:O.value},{firstFields:!0}).then(()=>(ma(),!0)).catch(B=>(ya(B),Promise.reject(B)))},mt=async(g,w)=>{if(b||!t.prop)return!1;const B=Ce(w);if(!R.value)return w==null||w(!1),!1;const L=S(g);return L.length===0?(w==null||w(!0),!0):(Q("validating"),ga(L).then(()=>(w==null||w(!0),!0)).catch(U=>{const{fields:K}=U;return w==null||w(!1,K),B?!1:Promise.reject(K)}))},Se=()=>{Q(""),d.value="",b=!1},gt=async()=>{const g=a==null?void 0:a.model;if(!g||!t.prop)return;const w=ze(g,t.prop);b=!0,w.value=et(v),await De(),Se(),b=!1},ha=g=>{h.value.includes(g)||h.value.push(g)},ba=g=>{h.value=h.value.filter(w=>w!==g)};T(()=>t.error,g=>{d.value=g||"",Q(g?"error":"")},{immediate:!0}),T(()=>t.validateStatus,g=>Q(g||""));const _e=Ot({...Et(t),$el:q,size:s,validateState:c,labelId:m,inputIds:h,isGroup:E,hasLabel:A,addInputId:ha,removeInputId:ba,resetField:gt,clearValidate:Se,validate:mt});return Le(Pe,_e),me(()=>{t.prop&&(a==null||a.addField(_e),v=et(O.value))}),Re(()=>{a==null||a.removeField(_e)}),r({size:s,validateMessage:d,validateState:c,validate:mt,clearValidate:Se,resetField:gt}),(g,w)=>{var B;return G(),fe("div",{ref_key:"formItemRef",ref:q,class:W(u(p)),role:u(E)?"group":void 0,"aria-labelledby":u(E)?u(m):void 0},[J(u(Zn),{"is-auto-width":u(i).width==="auto","update-all":((B=u(a))==null?void 0:B.labelWidth)==="auto"},{default:X(()=>[u(A)?(G(),he(St(u(C)?"label":"div"),{key:0,id:u(m),for:u(C),class:W(u(l).e("label")),style:be(u(i))},{default:X(()=>[N(g.$slots,"label",{label:u(yt)},()=>[La(Ne(u(yt)),1)])]),_:3},8,["id","for","class","style"])):de("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),ae("div",{class:W(u(l).e("content")),style:be(u(x))},[N(g.$slots,"default"),J(Da,{name:`${u(l).namespace.value}-zoom-in-top`},{default:X(()=>[u(va)?N(g.$slots,"error",{key:0,error:d.value},()=>[ae("div",{class:W(u(j))},Ne(d.value),3)]):de("v-if",!0)]),_:3},8,["name"])],6)],10,Tn)}}});var ut=ge(Qn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/form/src/form-item.vue"]]);let ct,ft,dt;Dt=_t(vn,{FormItem:ut}),Lt=za(ut),ct=te({mask:{type:Boolean,default:!0},customMaskEvent:{type:Boolean,default:!1},overlayClass:{type:re([String,Array,Object])},zIndex:{type:re([String,Number])}}),ft={click:e=>e instanceof MouseEvent},dt="overlay";var Kn=Y({name:"ElOverlay",props:ct,emits:ft,setup(e,{slots:r,emit:t}){const n=ee(dt),a=m=>{t("click",m)},{onClick:o,onMousedown:s,onMouseup:l}=tt(e.customMaskEvent?void 0:a);return()=>e.mask?J("div",{class:[n.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:o,onMousedown:s,onMouseup:l},[N(r,"default")],Ye.STYLE|Ye.CLASS|Ye.PROPS,["onClick","onMouseup","onMousedown"]):Na("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[N(r,"default")])}});const ea=Kn,pt=Symbol("dialogInjectionKey"),vt=te({center:{type:Boolean,default:!1},alignCenter:{type:Boolean,default:!1},closeIcon:{type:Wa},customClass:{type:String,default:""},draggable:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},showClose:{type:Boolean,default:!0},title:{type:String,default:""}}),ta={close:()=>!0},ra=["aria-label"],na=["id"],aa=Y({name:"ElDialogContent"}),oa=Y({...aa,props:vt,emits:ta,setup(e){const r=e,{t}=Va(),{Close:n}=Ya,{dialogRef:a,headerRef:o,bodyId:s,ns:l,style:m}=ne(pt),{focusTrapRef:h}=ne(Fa),c=nn(h,a),y=_(()=>r.draggable);return an(a,o,y),(d,q)=>(G(),fe("div",{ref:u(c),class:W([u(l).b(),u(l).is("fullscreen",d.fullscreen),u(l).is("draggable",u(y)),u(l).is("align-center",d.alignCenter),{[u(l).m("center")]:d.center},d.customClass]),style:be(u(m)),tabindex:"-1"},[ae("header",{ref_key:"headerRef",ref:o,class:W(u(l).e("header"))},[N(d.$slots,"header",{},()=>[ae("span",{role:"heading",class:W(u(l).e("title"))},Ne(d.title),3)]),d.showClose?(G(),fe("button",{key:0,"aria-label":u(t)("el.dialog.close"),class:W(u(l).e("headerbtn")),type:"button",onClick:q[0]||(q[0]=v=>d.$emit("close"))},[J(u(Ua),{class:W(u(l).e("close"))},{default:X(()=>[(G(),he(St(d.closeIcon||u(n))))]),_:1},8,["class"])],10,ra)):de("v-if",!0)],2),ae("div",{id:u(s),class:W(u(l).e("body"))},[N(d.$slots,"default")],10,na),d.$slots.footer?(G(),fe("footer",{key:0,class:W(u(l).e("footer"))},[N(d.$slots,"footer")],2)):de("v-if",!0)],6))}});var sa=ge(oa,[["__file","/home/runner/work/element-plus/element-plus/packages/components/dialog/src/dialog-content.vue"]]);const la=te({...vt,appendToBody:{type:Boolean,default:!1},beforeClose:{type:re(Function)},destroyOnClose:{type:Boolean,default:!1},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:{type:Boolean,default:!1},modalClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:{type:Boolean,default:!1}}),ia={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[$t]:e=>$e(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},ua=(e,r)=>{const t=Ja().emit,{nextZIndex:n}=Xa();let a="";const o=We(),s=We(),l=D(!1),m=D(!1),h=D(!1),c=D(e.zIndex||n());let y,d;const q=Ga("namespace",Za),v=_(()=>{const S={},V=`--${q.value}-dialog`;return e.fullscreen||(e.top&&(S[`${V}-margin-top`]=e.top),e.width&&(S[`${V}-width`]=ce(e.width))),S}),b=_(()=>e.alignCenter?{display:"flex"}:{});function i(){t("opened")}function x(){t("closed"),t($t,!1),e.destroyOnClose&&(h.value=!1)}function p(){t("close")}function f(){d==null||d(),y==null||y(),e.openDelay&&e.openDelay>0?{stop:y}=Mt(()=>C(),e.openDelay):C()}function j(){y==null||y(),d==null||d(),e.closeDelay&&e.closeDelay>0?{stop:d}=Mt(()=>E(),e.closeDelay):E()}function M(){function S(V){V||(m.value=!0,l.value=!1)}e.beforeClose?e.beforeClose(S):j()}function A(){e.closeOnClickModal&&M()}function C(){qt&&(l.value=!0)}function E(){l.value=!1}function $(){t("openAutoFocus")}function O(){t("closeAutoFocus")}function I(S){var V;((V=S.detail)==null?void 0:V.focusReason)==="pointer"&&S.preventDefault()}e.lockScroll&&on(l);function R(){e.closeOnPressEscape&&M()}return T(()=>e.modelValue,S=>{S?(m.value=!1,f(),h.value=!0,c.value=e.zIndex?c.value++:n(),De(()=>{t("open"),r.value&&(r.value.scrollTop=0)})):l.value&&j()}),T(()=>e.fullscreen,S=>{r.value&&(S?(a=r.value.style.transform,r.value.style.transform=""):r.value.style.transform=a)}),me(()=>{e.modelValue&&(l.value=!0,h.value=!0,f())}),{afterEnter:i,afterLeave:x,beforeLeave:p,handleClose:M,onModalClick:A,close:j,doClose:E,onOpenAutoFocus:$,onCloseAutoFocus:O,onCloseRequested:R,onFocusoutPrevented:I,titleId:o,bodyId:s,closed:m,style:v,overlayDialogStyle:b,rendered:h,visible:l,zIndex:c}},ca=["aria-label","aria-labelledby","aria-describedby"],fa=Y({name:"ElDialog",inheritAttrs:!1}),da=Y({...fa,props:la,emits:ia,setup(e,{expose:r}){const t=e,n=kt();bt({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},_(()=>!!n.title)),bt({scope:"el-dialog",from:"custom-class",replacement:"class",version:"2.3.0",ref:"https://element-plus.org/en-US/component/dialog.html#attributes",type:"Attribute"},_(()=>!!t.customClass));const a=ee("dialog"),o=D(),s=D(),l=D(),{visible:m,titleId:h,bodyId:c,style:y,overlayDialogStyle:d,rendered:q,zIndex:v,afterEnter:b,afterLeave:i,beforeLeave:x,handleClose:p,onModalClick:f,onOpenAutoFocus:j,onCloseAutoFocus:M,onCloseRequested:A,onFocusoutPrevented:C}=ua(t,o);Le(pt,{dialogRef:o,headerRef:s,bodyId:c,ns:a,rendered:q,style:y});const E=tt(f),$=_(()=>t.draggable&&!t.fullscreen);return r({visible:m,dialogContentRef:l}),(O,I)=>(G(),he(to,{to:"body",disabled:!O.appendToBody},[J(eo,{name:"dialog-fade",onAfterEnter:u(b),onAfterLeave:u(i),onBeforeLeave:u(x),persisted:""},{default:X(()=>[Ta(J(u(ea),{"custom-mask-event":"",mask:O.modal,"overlay-class":O.modalClass,"z-index":u(v)},{default:X(()=>[ae("div",{role:"dialog","aria-modal":"true","aria-label":O.title||void 0,"aria-labelledby":O.title?void 0:u(h),"aria-describedby":u(c),class:W(`${u(a).namespace.value}-overlay-dialog`),style:be(u(d)),onClick:I[0]||(I[0]=(...R)=>u(E).onClick&&u(E).onClick(...R)),onMousedown:I[1]||(I[1]=(...R)=>u(E).onMousedown&&u(E).onMousedown(...R)),onMouseup:I[2]||(I[2]=(...R)=>u(E).onMouseup&&u(E).onMouseup(...R))},[J(u(ja),{loop:"",trapped:u(m),"focus-start-el":"container",onFocusAfterTrapped:u(j),onFocusAfterReleased:u(M),onFocusoutPrevented:u(C),onReleaseRequested:u(A)},{default:X(()=>[u(q)?(G(),he(sa,Ha({key:0,ref_key:"dialogContentRef",ref:l},O.$attrs,{"custom-class":O.customClass,center:O.center,"align-center":O.alignCenter,"close-icon":O.closeIcon,draggable:u($),fullscreen:O.fullscreen,"show-close":O.showClose,title:O.title,onClose:u(p)}),Qa({header:X(()=>[O.$slots.title?N(O.$slots,"title",{key:1}):N(O.$slots,"header",{key:0,close:u(p),titleId:u(h),titleClass:u(a).e("title")})]),default:X(()=>[N(O.$slots,"default")]),_:2},[O.$slots.footer?{name:"footer",fn:X(()=>[N(O.$slots,"footer")])}:void 0]),1040,["custom-class","center","align-center","close-icon","draggable","fullscreen","show-close","title","onClose"])):de("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,ca)]),_:3},8,["mask","overlay-class","z-index"]),[[Ka,u(m)]])]),_:3},8,["onAfterEnter","onAfterLeave","onBeforeLeave"])],8,["disabled"]))}});var pa=ge(da,[["__file","/home/runner/work/element-plus/element-plus/packages/components/dialog/src/dialog.vue"]]);zt=_t(pa)});export{Lt as E,wo as __tla,Dt as a,zt as b,oe as c}; diff --git a/niucloud/public/web/_nuxt/el-popper.c80d9727.css b/niucloud/public/web/_nuxt/el-popper.c80d9727.css new file mode 100644 index 0000000..a9cc229 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-popper.c80d9727.css @@ -0,0 +1 @@ +.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:var(--el-transition-md-fade)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:var(--el-transition-md-fade)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:var(--el-transition-md-fade)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{background-color:var(--el-menu-bg-color);border-right:1px solid var(--el-menu-border-color);box-sizing:border-box;list-style:none;margin:0;padding-left:0;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title{padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level)*var(--el-menu-level-padding));white-space:nowrap}.el-menu--horizontal{border-bottom:1px solid var(--el-menu-border-color);border-right:none;display:flex;flex-wrap:nowrap}.el-menu--horizontal>.el-menu-item{align-items:center;border-bottom:2px solid transparent;color:var(--el-menu-text-color);display:inline-flex;height:100%;justify-content:center;margin:0}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-menu-item:not(.is-disabled):focus,.el-menu--horizontal>.el-menu-item:not(.is-disabled):hover{background-color:#fff}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:0}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{border-bottom:2px solid transparent;color:var(--el-menu-text-color);height:100%}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-bg-color-overlay)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{align-items:center;background-color:var(--el-menu-bg-color);color:var(--el-menu-text-color);display:flex;height:var(--el-menu-horizontal-sub-item-height);padding:0 10px}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):focus,.el-menu--horizontal .el-menu-item:not(.is-disabled):hover{background-color:var(--el-menu-hover-bg-color);color:var(--el-menu-hover-text-color);outline:0}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding)*2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{margin:0;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span{display:inline-block;height:0;overflow:hidden;visibility:hidden;width:0}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--popup{border:none;border-radius:var(--el-border-radius-small);box-shadow:var(--el-box-shadow-light);min-width:200px;padding:5px 0;z-index:100}.el-menu .el-icon{flex-shrink:0}.el-menu-item{align-items:center;box-sizing:border-box;color:var(--el-menu-text-color);cursor:pointer;display:flex;font-size:var(--el-menu-item-font-size);height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);list-style:none;padding:0 var(--el-menu-base-level-padding);position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);white-space:nowrap}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:focus,.el-menu-item:hover{outline:0}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{background:0 0!important;cursor:not-allowed;opacity:.25}.el-menu-item [class^=el-icon]{font-size:18px;margin-right:5px;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{align-items:center;box-sizing:border-box;display:inline-flex;height:100%;left:0;padding:0 var(--el-menu-base-level-padding);position:absolute;top:0;width:100%}.el-sub-menu{list-style:none;margin:0;padding-left:0}.el-sub-menu__title{align-items:center;box-sizing:border-box;color:var(--el-menu-text-color);cursor:pointer;display:flex;font-size:var(--el-menu-item-font-size);height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);list-style:none;padding:0 var(--el-menu-base-level-padding);padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width));position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);white-space:nowrap}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:focus,.el-sub-menu__title:hover{outline:0}.el-sub-menu__title.is-disabled{background:0 0!important;cursor:not-allowed;opacity:.25}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-menu-item,.el-sub-menu.is-disabled .el-sub-menu__title{background:0 0!important;cursor:not-allowed;opacity:.25}.el-sub-menu .el-icon{font-size:18px;margin-right:5px;text-align:center;vertical-align:middle;width:var(--el-menu-icon-width)}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{font-size:12px;margin-right:0;margin-top:-6px;position:absolute;right:var(--el-menu-base-level-padding);top:50%;transition:transform var(--el-transition-duration);width:inherit}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{color:var(--el-text-color-secondary);font-size:12px;line-height:normal;padding:7px 0 7px var(--el-menu-base-level-padding)}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{opacity:0;transition:var(--el-transition-duration-fast)}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);word-wrap:break-word;border-radius:var(--el-popper-border-radius);font-size:12px;line-height:20px;min-width:10px;padding:5px 11px;position:absolute;visibility:visible;z-index:2000}.el-popper.is-dark{color:var(--el-bg-color)}.el-popper.is-dark,.el-popper.is-dark .el-popper__arrow:before{background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark .el-popper__arrow:before{right:0}.el-popper.is-light,.el-popper.is-light .el-popper__arrow:before{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light)}.el-popper.is-light .el-popper__arrow:before{right:0}.el-popper.is-pure{padding:0}.el-popper__arrow,.el-popper__arrow:before{height:10px;position:absolute;width:10px;z-index:-1}.el-popper__arrow:before{background:var(--el-text-color-primary);box-sizing:border-box;content:" ";transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent!important;border-top-color:transparent!important}.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent!important;border-right-color:transparent!important}.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent!important;border-left-color:transparent!important}.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent!important;border-top-color:transparent!important} diff --git a/niucloud/public/web/_nuxt/el-popper.f96f4ae9.js b/niucloud/public/web/_nuxt/el-popper.f96f4ae9.js new file mode 100644 index 0000000..f9b1ba1 --- /dev/null +++ b/niucloud/public/web/_nuxt/el-popper.f96f4ae9.js @@ -0,0 +1 @@ +import{cf as ao,ah as $,i as M,aN as nt,L as W,M as we,R as ot,ag as He,bh as so,u as c,H as ga,x as _,O as Oe,c7 as io,cg as ha,b_ as ya,ch as ba,J,K as xa,P as ve,f as z,r as Z,D as re,B as X,a0 as ae,o as q,k as me,C as Pe,E as wa,aS as Pt,S as Rt,ci as Oa,aY as lo,Z as rt,bs as ka,b$ as Ma,m as De,cj as uo,aD as at,c as ce,w as ee,aC as Ne,y as ze,an as Sa,F as Bt,ax as te,aX as Ca,a$ as Re,W as po,X as _t,aw as Ea,ck as Aa,cl as Ta,cm as Ia,t as co,cn as Pa,bd as st,bf as jt,bb as Ra,bQ as Ba,Y as _a,a1 as Lt,bm as U,Q as Be,U as fo,bn as it,br as vo,b8 as ja,N as La,co as $a,ai as Fa,ap as Ha,bS as Da,l as $t,p as Na,G as Ft,__tla as za}from"./entry.60adbc61.js";import{i as mo,a as go,E as Wa,T as qa,u as Ua,t as lt,__tla as Va}from"./index.f6314314.js";import{a as Ka,u as Za,__tla as Xa}from"./index.59e0a5b1.js";import{f as Ya,__tla as Ga}from"./vnode.a078d472.js";let ho,yo,ut,We,Ht,pt,Dt,Qa=Promise.all([(()=>{try{return za}catch{}})(),(()=>{try{return Va}catch{}})(),(()=>{try{return Xa}catch{}})(),(()=>{try{return Ga}catch{}})()]).then(async()=>{const qe=function(e,t,...n){let o;t.includes("mouse")||t.includes("click")?o="MouseEvents":t.includes("key")?o="KeyboardEvent":o="HTMLEvents";const r=document.createEvent(o);return r.initEvent(t,...n),e.dispatchEvent(r),e},ue=(e,t,{checkForDefaultPrevented:n=!0}={})=>o=>{const r=e==null?void 0:e(o);if(n===!1||!r)return t==null?void 0:t(o)};function bo(e){return e===void 0}const xo=ao({type:$(Boolean),default:null}),wo=ao({type:$(Function)}),Nt=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,o=[t],r={[e]:xo,[n]:wo};return{useModelToggle:({indicator:s,toggleReason:i,shouldHideWhenRouteChanges:u,shouldProceed:a,onShow:l,onHide:d})=>{const f=ot(),{emit:g}=f,m=f.props,w=M(()=>nt(m[n])),h=M(()=>m[e]===null),C=k=>{s.value!==!0&&(s.value=!0,i&&(i.value=k),nt(l)&&l(k))},p=k=>{s.value!==!1&&(s.value=!1,i&&(i.value=k),nt(d)&&d(k))},S=k=>{if(m.disabled===!0||nt(a)&&!a())return;const T=w.value&&He;T&&g(t,!0),(h.value||!T)&&C(k)},E=k=>{if(m.disabled===!0||!He)return;const T=w.value&&He;T&&g(t,!1),(h.value||!T)&&p(k)},O=k=>{so(k)&&(m.disabled&&k?w.value&&g(t,!1):s.value!==k&&(k?C():p()))},I=()=>{s.value?E():S()};return W(()=>m[e],O),u&&f.appContext.config.globalProperties.$route!==void 0&&W(()=>({...f.proxy.$route}),()=>{u.value&&s.value&&E()}),we(()=>{O(m[e])}),{hide:E,show:S,toggle:I,hasUpdateHandler:w}},useModelToggleProps:r,useModelToggleEmits:o}};Nt("modelValue");let V,Y,G,K,Ue,ke,ge,Me,zt,dt,Se,Wt,ct,qt,Ut,Vt,Kt,Zt,Xt,Yt,Gt,Qt,Jt;V="top",Y="bottom",G="right",K="left",Ue="auto",ke=[V,Y,G,K],ge="start",Me="end",zt="clippingParents",dt="viewport",Se="popper",Wt="reference",ct=ke.reduce(function(e,t){return e.concat([t+"-"+ge,t+"-"+Me])},[]),We=[].concat(ke,[Ue]).reduce(function(e,t){return e.concat([t,t+"-"+ge,t+"-"+Me])},[]),qt="beforeRead",Ut="read",Vt="afterRead",Kt="beforeMain",Zt="main",Xt="afterMain",Yt="beforeWrite",Gt="write",Qt="afterWrite",Jt=[qt,Ut,Vt,Kt,Zt,Xt,Yt,Gt,Qt];function se(e){return e?(e.nodeName||"").toLowerCase():null}function ne(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Ce(e){var t=ne(e).Element;return e instanceof t||e instanceof Element}function Q(e){var t=ne(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function ft(e){if(typeof ShadowRoot>"u")return!1;var t=ne(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Oo(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var o=t.styles[n]||{},r=t.attributes[n]||{},s=t.elements[n];!Q(s)||!se(s)||(Object.assign(s.style,o),Object.keys(r).forEach(function(i){var u=r[i];u===!1?s.removeAttribute(i):s.setAttribute(i,u===!0?"":u)}))})}function ko(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(o){var r=t.elements[o],s=t.attributes[o]||{},i=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:n[o]),u=i.reduce(function(a,l){return a[l]="",a},{});!Q(r)||!se(r)||(Object.assign(r.style,u),Object.keys(s).forEach(function(a){r.removeAttribute(a)}))})}}var en={name:"applyStyles",enabled:!0,phase:"write",fn:Oo,effect:ko,requires:["computeStyles"]};function ie(e){return e.split("-")[0]}var he=Math.max,Ve=Math.min,Ee=Math.round;function Ae(e,t){t===void 0&&(t=!1);var n=e.getBoundingClientRect(),o=1,r=1;if(Q(e)&&t){var s=e.offsetHeight,i=e.offsetWidth;i>0&&(o=Ee(n.width)/i||1),s>0&&(r=Ee(n.height)/s||1)}return{width:n.width/o,height:n.height/r,top:n.top/r,right:n.right/o,bottom:n.bottom/r,left:n.left/o,x:n.left/o,y:n.top/r}}function vt(e){var t=Ae(e),n=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:o}}function tn(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&ft(n)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}function pe(e){return ne(e).getComputedStyle(e)}function Mo(e){return["table","td","th"].indexOf(se(e))>=0}function fe(e){return((Ce(e)?e.ownerDocument:e.document)||window.document).documentElement}function Ke(e){return se(e)==="html"?e:e.assignedSlot||e.parentNode||(ft(e)?e.host:null)||fe(e)}function nn(e){return!Q(e)||pe(e).position==="fixed"?null:e.offsetParent}function So(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&Q(e)){var o=pe(e);if(o.position==="fixed")return null}var r=Ke(e);for(ft(r)&&(r=r.host);Q(r)&&["html","body"].indexOf(se(r))<0;){var s=pe(r);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return r;r=r.parentNode}return null}function _e(e){for(var t=ne(e),n=nn(e);n&&Mo(n)&&pe(n).position==="static";)n=nn(n);return n&&(se(n)==="html"||se(n)==="body"&&pe(n).position==="static")?t:n||So(e)||t}function mt(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function je(e,t,n){return he(e,Ve(t,n))}function Co(e,t,n){var o=je(e,t,n);return o>n?n:o}function on(){return{top:0,right:0,bottom:0,left:0}}function rn(e){return Object.assign({},on(),e)}function an(e,t){return t.reduce(function(n,o){return n[o]=e,n},{})}var Eo=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,rn(typeof e!="number"?e:an(e,ke))};function Ao(e){var t,n=e.state,o=e.name,r=e.options,s=n.elements.arrow,i=n.modifiersData.popperOffsets,u=ie(n.placement),a=mt(u),l=[K,G].indexOf(u)>=0,d=l?"height":"width";if(!(!s||!i)){var f=Eo(r.padding,n),g=vt(s),m=a==="y"?V:K,w=a==="y"?Y:G,h=n.rects.reference[d]+n.rects.reference[a]-i[a]-n.rects.popper[d],C=i[a]-n.rects.reference[a],p=_e(s),S=p?a==="y"?p.clientHeight||0:p.clientWidth||0:0,E=h/2-C/2,O=f[m],I=S-g[d]-f[w],k=S/2-g[d]/2+E,T=je(O,k,I),R=a;n.modifiersData[o]=(t={},t[R]=T,t.centerOffset=T-k,t)}}function To(e){var t=e.state,n=e.options,o=n.element,r=o===void 0?"[data-popper-arrow]":o;r!=null&&(typeof r=="string"&&(r=t.elements.popper.querySelector(r),!r)||!tn(t.elements.popper,r)||(t.elements.arrow=r))}var Io={name:"arrow",enabled:!0,phase:"main",fn:Ao,effect:To,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Te(e){return e.split("-")[1]}var Po={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Ro(e){var t=e.x,n=e.y,o=window,r=o.devicePixelRatio||1;return{x:Ee(t*r)/r||0,y:Ee(n*r)/r||0}}function sn(e){var t,n=e.popper,o=e.popperRect,r=e.placement,s=e.variation,i=e.offsets,u=e.position,a=e.gpuAcceleration,l=e.adaptive,d=e.roundOffsets,f=e.isFixed,g=i.x,m=g===void 0?0:g,w=i.y,h=w===void 0?0:w,C=typeof d=="function"?d({x:m,y:h}):{x:m,y:h};m=C.x,h=C.y;var p=i.hasOwnProperty("x"),S=i.hasOwnProperty("y"),E=K,O=V,I=window;if(l){var k=_e(n),T="clientHeight",R="clientWidth";if(k===ne(n)&&(k=fe(n),pe(k).position!=="static"&&u==="absolute"&&(T="scrollHeight",R="scrollWidth")),k=k,r===V||(r===K||r===G)&&s===Me){O=Y;var L=f&&k===I&&I.visualViewport?I.visualViewport.height:k[T];h-=L-o.height,h*=a?1:-1}if(r===K||(r===V||r===Y)&&s===Me){E=G;var P=f&&k===I&&I.visualViewport?I.visualViewport.width:k[R];m-=P-o.width,m*=a?1:-1}}var v=Object.assign({position:u},l&&Po),x=d===!0?Ro({x:m,y:h}):{x:m,y:h};if(m=x.x,h=x.y,a){var y;return Object.assign({},v,(y={},y[O]=S?"0":"",y[E]=p?"0":"",y.transform=(I.devicePixelRatio||1)<=1?"translate("+m+"px, "+h+"px)":"translate3d("+m+"px, "+h+"px, 0)",y))}return Object.assign({},v,(t={},t[O]=S?h+"px":"",t[E]=p?m+"px":"",t.transform="",t))}function Bo(e){var t=e.state,n=e.options,o=n.gpuAcceleration,r=o===void 0?!0:o,s=n.adaptive,i=s===void 0?!0:s,u=n.roundOffsets,a=u===void 0?!0:u,l={placement:ie(t.placement),variation:Te(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,sn(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:a})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,sn(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:a})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var ln={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Bo,data:{}},Ze={passive:!0};function _o(e){var t=e.state,n=e.instance,o=e.options,r=o.scroll,s=r===void 0?!0:r,i=o.resize,u=i===void 0?!0:i,a=ne(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&l.forEach(function(d){d.addEventListener("scroll",n.update,Ze)}),u&&a.addEventListener("resize",n.update,Ze),function(){s&&l.forEach(function(d){d.removeEventListener("scroll",n.update,Ze)}),u&&a.removeEventListener("resize",n.update,Ze)}}var un={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:_o,data:{}},jo={left:"right",right:"left",bottom:"top",top:"bottom"};function Xe(e){return e.replace(/left|right|bottom|top/g,function(t){return jo[t]})}var Lo={start:"end",end:"start"};function pn(e){return e.replace(/start|end/g,function(t){return Lo[t]})}function gt(e){var t=ne(e),n=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:n,scrollTop:o}}function ht(e){return Ae(fe(e)).left+gt(e).scrollLeft}function $o(e){var t=ne(e),n=fe(e),o=t.visualViewport,r=n.clientWidth,s=n.clientHeight,i=0,u=0;return o&&(r=o.width,s=o.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(i=o.offsetLeft,u=o.offsetTop)),{width:r,height:s,x:i+ht(e),y:u}}function Fo(e){var t,n=fe(e),o=gt(e),r=(t=e.ownerDocument)==null?void 0:t.body,s=he(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),i=he(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),u=-o.scrollLeft+ht(e),a=-o.scrollTop;return pe(r||n).direction==="rtl"&&(u+=he(n.clientWidth,r?r.clientWidth:0)-s),{width:s,height:i,x:u,y:a}}function yt(e){var t=pe(e),n=t.overflow,o=t.overflowX,r=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+o)}function dn(e){return["html","body","#document"].indexOf(se(e))>=0?e.ownerDocument.body:Q(e)&&yt(e)?e:dn(Ke(e))}function Le(e,t){var n;t===void 0&&(t=[]);var o=dn(e),r=o===((n=e.ownerDocument)==null?void 0:n.body),s=ne(o),i=r?[s].concat(s.visualViewport||[],yt(o)?o:[]):o,u=t.concat(i);return r?u:u.concat(Le(Ke(i)))}function bt(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Ho(e){var t=Ae(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function cn(e,t){return t===dt?bt($o(e)):Ce(t)?Ho(t):bt(Fo(fe(e)))}function Do(e){var t=Le(Ke(e)),n=["absolute","fixed"].indexOf(pe(e).position)>=0,o=n&&Q(e)?_e(e):e;return Ce(o)?t.filter(function(r){return Ce(r)&&tn(r,o)&&se(r)!=="body"}):[]}function No(e,t,n){var o=t==="clippingParents"?Do(e):[].concat(t),r=[].concat(o,[n]),s=r[0],i=r.reduce(function(u,a){var l=cn(e,a);return u.top=he(l.top,u.top),u.right=Ve(l.right,u.right),u.bottom=Ve(l.bottom,u.bottom),u.left=he(l.left,u.left),u},cn(e,s));return i.width=i.right-i.left,i.height=i.bottom-i.top,i.x=i.left,i.y=i.top,i}function fn(e){var t=e.reference,n=e.element,o=e.placement,r=o?ie(o):null,s=o?Te(o):null,i=t.x+t.width/2-n.width/2,u=t.y+t.height/2-n.height/2,a;switch(r){case V:a={x:i,y:t.y-n.height};break;case Y:a={x:i,y:t.y+t.height};break;case G:a={x:t.x+t.width,y:u};break;case K:a={x:t.x-n.width,y:u};break;default:a={x:t.x,y:t.y}}var l=r?mt(r):null;if(l!=null){var d=l==="y"?"height":"width";switch(s){case ge:a[l]=a[l]-(t[d]/2-n[d]/2);break;case Me:a[l]=a[l]+(t[d]/2-n[d]/2);break}}return a}function $e(e,t){t===void 0&&(t={});var n=t,o=n.placement,r=o===void 0?e.placement:o,s=n.boundary,i=s===void 0?zt:s,u=n.rootBoundary,a=u===void 0?dt:u,l=n.elementContext,d=l===void 0?Se:l,f=n.altBoundary,g=f===void 0?!1:f,m=n.padding,w=m===void 0?0:m,h=rn(typeof w!="number"?w:an(w,ke)),C=d===Se?Wt:Se,p=e.rects.popper,S=e.elements[g?C:d],E=No(Ce(S)?S:S.contextElement||fe(e.elements.popper),i,a),O=Ae(e.elements.reference),I=fn({reference:O,element:p,strategy:"absolute",placement:r}),k=bt(Object.assign({},p,I)),T=d===Se?k:O,R={top:E.top-T.top+h.top,bottom:T.bottom-E.bottom+h.bottom,left:E.left-T.left+h.left,right:T.right-E.right+h.right},L=e.modifiersData.offset;if(d===Se&&L){var P=L[r];Object.keys(R).forEach(function(v){var x=[G,Y].indexOf(v)>=0?1:-1,y=[V,Y].indexOf(v)>=0?"y":"x";R[v]+=P[y]*x})}return R}function zo(e,t){t===void 0&&(t={});var n=t,o=n.placement,r=n.boundary,s=n.rootBoundary,i=n.padding,u=n.flipVariations,a=n.allowedAutoPlacements,l=a===void 0?We:a,d=Te(o),f=d?u?ct:ct.filter(function(w){return Te(w)===d}):ke,g=f.filter(function(w){return l.indexOf(w)>=0});g.length===0&&(g=f);var m=g.reduce(function(w,h){return w[h]=$e(e,{placement:h,boundary:r,rootBoundary:s,padding:i})[ie(h)],w},{});return Object.keys(m).sort(function(w,h){return m[w]-m[h]})}function Wo(e){if(ie(e)===Ue)return[];var t=Xe(e);return[pn(e),t,pn(t)]}function qo(e){var t=e.state,n=e.options,o=e.name;if(!t.modifiersData[o]._skip){for(var r=n.mainAxis,s=r===void 0?!0:r,i=n.altAxis,u=i===void 0?!0:i,a=n.fallbackPlacements,l=n.padding,d=n.boundary,f=n.rootBoundary,g=n.altBoundary,m=n.flipVariations,w=m===void 0?!0:m,h=n.allowedAutoPlacements,C=t.options.placement,p=ie(C),S=p===C,E=a||(S||!w?[Xe(C)]:Wo(C)),O=[C].concat(E).reduce(function(oe,de){return oe.concat(ie(de)===Ue?zo(t,{placement:de,boundary:d,rootBoundary:f,padding:l,flipVariations:w,allowedAutoPlacements:h}):de)},[]),I=t.rects.reference,k=t.rects.popper,T=new Map,R=!0,L=O[0],P=0;P=0,H=F?"width":"height",B=$e(t,{placement:v,boundary:d,rootBoundary:f,altBoundary:g,padding:l}),b=F?y?G:K:y?Y:V;I[H]>k[H]&&(b=Xe(b));var D=Xe(b),A=[];if(s&&A.push(B[x]<=0),u&&A.push(B[b]<=0,B[D]<=0),A.every(function(oe){return oe})){L=v,R=!1;break}T.set(v,A)}if(R)for(var j=w?3:1,N=function(oe){var de=O.find(function(et){var Fe=T.get(et);if(Fe)return Fe.slice(0,oe).every(function(Ie){return Ie})});if(de)return L=de,"break"},be=j;be>0;be--){var le=N(be);if(le==="break")break}t.placement!==L&&(t.modifiersData[o]._skip=!0,t.placement=L,t.reset=!0)}}var Uo={name:"flip",enabled:!0,phase:"main",fn:qo,requiresIfExists:["offset"],data:{_skip:!1}};function vn(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function mn(e){return[V,G,Y,K].some(function(t){return e[t]>=0})}function Vo(e){var t=e.state,n=e.name,o=t.rects.reference,r=t.rects.popper,s=t.modifiersData.preventOverflow,i=$e(t,{elementContext:"reference"}),u=$e(t,{altBoundary:!0}),a=vn(i,o),l=vn(u,r,s),d=mn(a),f=mn(l);t.modifiersData[n]={referenceClippingOffsets:a,popperEscapeOffsets:l,isReferenceHidden:d,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":f})}var Ko={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Vo};function Zo(e,t,n){var o=ie(e),r=[K,V].indexOf(o)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,i=s[0],u=s[1];return i=i||0,u=(u||0)*r,[K,G].indexOf(o)>=0?{x:u,y:i}:{x:i,y:u}}function Xo(e){var t=e.state,n=e.options,o=e.name,r=n.offset,s=r===void 0?[0,0]:r,i=We.reduce(function(d,f){return d[f]=Zo(f,t.rects,s),d},{}),u=i[t.placement],a=u.x,l=u.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=a,t.modifiersData.popperOffsets.y+=l),t.modifiersData[o]=i}var Yo={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Xo};function Go(e){var t=e.state,n=e.name;t.modifiersData[n]=fn({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}var gn={name:"popperOffsets",enabled:!0,phase:"read",fn:Go,data:{}};function Qo(e){return e==="x"?"y":"x"}function Jo(e){var t=e.state,n=e.options,o=e.name,r=n.mainAxis,s=r===void 0?!0:r,i=n.altAxis,u=i===void 0?!1:i,a=n.boundary,l=n.rootBoundary,d=n.altBoundary,f=n.padding,g=n.tether,m=g===void 0?!0:g,w=n.tetherOffset,h=w===void 0?0:w,C=$e(t,{boundary:a,rootBoundary:l,padding:f,altBoundary:d}),p=ie(t.placement),S=Te(t.placement),E=!S,O=mt(p),I=Qo(O),k=t.modifiersData.popperOffsets,T=t.rects.reference,R=t.rects.popper,L=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,P=typeof L=="number"?{mainAxis:L,altAxis:L}:Object.assign({mainAxis:0,altAxis:0},L),v=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,x={x:0,y:0};if(k){if(s){var y,F=O==="y"?V:K,H=O==="y"?Y:G,B=O==="y"?"height":"width",b=k[O],D=b+C[F],A=b-C[H],j=m?-R[B]/2:0,N=S===ge?T[B]:R[B],be=S===ge?-R[B]:-T[B],le=t.elements.arrow,oe=m&&le?vt(le):{width:0,height:0},de=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:on(),et=de[F],Fe=de[H],Ie=je(0,T[B],oe[B]),ua=E?T[B]/2-j-Ie-et-P.mainAxis:N-Ie-et-P.mainAxis,pa=E?-T[B]/2+j+Ie+Fe+P.mainAxis:be+Ie+Fe+P.mainAxis,Tt=t.elements.arrow&&_e(t.elements.arrow),da=Tt?O==="y"?Tt.clientTop||0:Tt.clientLeft||0:0,Yn=(y=v==null?void 0:v[O])!=null?y:0,ca=b+ua-Yn-da,fa=b+pa-Yn,Gn=je(m?Ve(D,ca):D,b,m?he(A,fa):A);k[O]=Gn,x[O]=Gn-b}if(u){var Qn,va=O==="x"?V:K,ma=O==="x"?Y:G,xe=k[I],tt=I==="y"?"height":"width",Jn=xe+C[va],eo=xe-C[ma],It=[V,K].indexOf(p)!==-1,to=(Qn=v==null?void 0:v[I])!=null?Qn:0,no=It?Jn:xe-T[tt]-R[tt]-to+P.altAxis,oo=It?xe+T[tt]+R[tt]-to-P.altAxis:eo,ro=m&&It?Co(no,xe,oo):je(m?no:Jn,xe,m?oo:eo);k[I]=ro,x[I]=ro-xe}t.modifiersData[o]=x}}var er={name:"preventOverflow",enabled:!0,phase:"main",fn:Jo,requiresIfExists:["offset"]};function tr(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function nr(e){return e===ne(e)||!Q(e)?gt(e):tr(e)}function or(e){var t=e.getBoundingClientRect(),n=Ee(t.width)/e.offsetWidth||1,o=Ee(t.height)/e.offsetHeight||1;return n!==1||o!==1}function rr(e,t,n){n===void 0&&(n=!1);var o=Q(t),r=Q(t)&&or(t),s=fe(t),i=Ae(e,r),u={scrollLeft:0,scrollTop:0},a={x:0,y:0};return(o||!o&&!n)&&((se(t)!=="body"||yt(s))&&(u=nr(t)),Q(t)?(a=Ae(t,!0),a.x+=t.clientLeft,a.y+=t.clientTop):s&&(a.x=ht(s))),{x:i.left+u.scrollLeft-a.x,y:i.top+u.scrollTop-a.y,width:i.width,height:i.height}}function ar(e){var t=new Map,n=new Set,o=[];e.forEach(function(s){t.set(s.name,s)});function r(s){n.add(s.name);var i=[].concat(s.requires||[],s.requiresIfExists||[]);i.forEach(function(u){if(!n.has(u)){var a=t.get(u);a&&r(a)}}),o.push(s)}return e.forEach(function(s){n.has(s.name)||r(s)}),o}function sr(e){var t=ar(e);return Jt.reduce(function(n,o){return n.concat(t.filter(function(r){return r.phase===o}))},[])}function ir(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function lr(e){var t=e.reduce(function(n,o){var r=n[o.name];return n[o.name]=r?Object.assign({},r,o,{options:Object.assign({},r.options,o.options),data:Object.assign({},r.data,o.data)}):o,n},{});return Object.keys(t).map(function(n){return t[n]})}var hn={placement:"bottom",modifiers:[],strategy:"absolute"};function yn(){for(var e=arguments.length,t=new Array(e),n=0;n{const o={name:"updateState",enabled:!0,phase:"write",fn:({state:a})=>{const l=dr(a);Object.assign(i.value,l)},requires:["computeStyles"]},r=M(()=>{const{onFirstUpdate:a,placement:l,strategy:d,modifiers:f}=c(n);return{onFirstUpdate:a,placement:l||"bottom",strategy:d||"absolute",modifiers:[...f||[],o,{name:"applyStyles",enabled:!1}]}}),s=ga(),i=_({styles:{popper:{position:c(r).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),u=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return W(r,a=>{const l=c(s);l&&l.setOptions(a)},{deep:!0}),W([e,t],([a,l])=>{u(),!(!a||!l)&&(s.value=Dt(a,l,c(r)))}),Oe(()=>{u()}),{state:M(()=>{var a;return{...((a=c(s))==null?void 0:a.state)||{}}}),styles:M(()=>c(i).styles),attributes:M(()=>c(i).attributes),update:()=>{var a;return(a=c(s))==null?void 0:a.update()},forceUpdate:()=>{var a;return(a=c(s))==null?void 0:a.forceUpdate()},instanceRef:M(()=>c(s))}};function dr(e){const t=Object.keys(e.elements),n=io(t.map(r=>[r,e.styles[r]||{}])),o=io(t.map(r=>[r,e.attributes[r]]));return{styles:n,attributes:o}}function xn(){let e;const t=(o,r)=>{n(),e=window.setTimeout(o,r)},n=()=>window.clearTimeout(e);return ha(()=>n()),{registerTimeout:t,cancelTimeout:n}}let wn,wt,On,kn,Mn,Ot,Sn,Cn,Ye,kt,En,Mt,An,Tn;wt=()=>{const e=ba(),t=Ka(),n=M(()=>`${e.value}-popper-container-${t.prefix}`),o=M(()=>`#${n.value}`);return{id:n,selector:o}},On=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},kn=()=>{const{id:e,selector:t}=wt();return ya(()=>{He&&!wn&&!document.body.querySelector(t.value)&&(wn=On(e.value))}),{id:e,selector:t}},Mn=J({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0}}),Ht=({showAfter:e,hideAfter:t,autoClose:n,open:o,close:r})=>{const{registerTimeout:s}=xn(),{registerTimeout:i,cancelTimeout:u}=xn();return{onOpen:a=>{s(()=>{o(a);const l=c(n);xa(l)&&l>0&&i(()=>{r(a)},l)},c(e))},onClose:a=>{u(),s(()=>{r(a)},c(t))}}},Ot=Symbol("elForwardRef"),Sn=e=>{ve(Ot,{setForwardRef:t=>{e.value=t}})},Cn=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),Ye=Symbol("popper"),kt=Symbol("popperContent"),En=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],Mt=J({role:{type:String,values:En,default:"tooltip"}}),An=z({name:"ElPopper",inheritAttrs:!1}),Tn=z({...An,props:Mt,setup(e,{expose:t}){const n=e,o=_(),r=_(),s=_(),i=_(),u=M(()=>n.role),a={triggerRef:o,popperInstanceRef:r,contentRef:s,referenceRef:i,role:u};return t(a),ve(Ye,a),(l,d)=>Z(l.$slots,"default")}});var cr=re(Tn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/popper.vue"]]);const In=J({arrowOffset:{type:Number,default:5}}),fr=z({name:"ElPopperArrow",inheritAttrs:!1}),vr=z({...fr,props:In,setup(e,{expose:t}){const n=e,o=X("popper"),{arrowOffset:r,arrowRef:s,arrowStyle:i}=ae(kt,void 0);return W(()=>n.arrowOffset,u=>{r.value=u}),Oe(()=>{s.value=void 0}),t({arrowRef:s}),(u,a)=>(q(),me("span",{ref_key:"arrowRef",ref:s,class:Pe(c(o).e("arrow")),style:wa(c(i)),"data-popper-arrow":""},null,6))}});var mr=re(vr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/arrow.vue"]]);const gr="ElOnlyChild",hr=z({name:gr,setup(e,{slots:t,attrs:n}){var o;const r=ae(Ot),s=Cn((o=r==null?void 0:r.setForwardRef)!=null?o:Pt);return()=>{var i;const u=(i=t.default)==null?void 0:i.call(t,n);if(!u||u.length>1)return null;const a=Pn(u);return a?Rt(Oa(a,n),[[s]]):null}}});function Pn(e){if(!e)return null;const t=e;for(const n of t){if(lo(n))switch(n.type){case Ma:continue;case ka:case"svg":return Rn(n);case rt:return Pn(n.children);default:return n}return Rn(n)}return null}function Rn(e){const t=X("only-child");return De("span",{class:t.e("content")},[e])}const Bn=J({virtualRef:{type:$(Object)},virtualTriggering:Boolean,onMouseenter:{type:$(Function)},onMouseleave:{type:$(Function)},onClick:{type:$(Function)},onKeydown:{type:$(Function)},onFocus:{type:$(Function)},onBlur:{type:$(Function)},onContextmenu:{type:$(Function)},id:String,open:Boolean}),yr=z({name:"ElPopperTrigger",inheritAttrs:!1}),br=z({...yr,props:Bn,setup(e,{expose:t}){const n=e,{role:o,triggerRef:r}=ae(Ye,void 0);Sn(r);const s=M(()=>u.value?n.id:void 0),i=M(()=>{if(o&&o.value==="tooltip")return n.open&&n.id?n.id:void 0}),u=M(()=>{if(o&&o.value!=="tooltip")return o.value}),a=M(()=>u.value?`${n.open}`:void 0);let l;return we(()=>{W(()=>n.virtualRef,d=>{d&&(r.value=uo(d))},{immediate:!0}),W(r,(d,f)=>{l==null||l(),l=void 0,at(d)&&(["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"].forEach(g=>{var m;const w=n[g];w&&(d.addEventListener(g.slice(2).toLowerCase(),w),(m=f==null?void 0:f.removeEventListener)==null||m.call(f,g.slice(2).toLowerCase(),w))}),l=W([s,i,u,a],g=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((m,w)=>{mo(g[w])?d.removeAttribute(m):d.setAttribute(m,g[w])})},{immediate:!0})),at(f)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(g=>f.removeAttribute(g))},{immediate:!0})}),Oe(()=>{l==null||l(),l=void 0}),t({triggerRef:r}),(d,f)=>d.virtualTriggering?ze("v-if",!0):(q(),ce(c(hr),Ne({key:0},d.$attrs,{"aria-controls":c(s),"aria-describedby":c(i),"aria-expanded":c(a),"aria-haspopup":c(u)}),{default:ee(()=>[Z(d.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var xr=re(br,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/trigger.vue"]]);const wr=["fixed","absolute"],Or=J({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:$(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:We,default:"bottom"},popperOptions:{type:$(Object),default:()=>({})},strategy:{type:String,values:wr,default:"absolute"}}),_n=J({...Or,id:String,style:{type:$([String,Array,Object])},className:{type:$([String,Array,Object])},effect:{type:String,default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:{type:Boolean,default:!1},trapping:{type:Boolean,default:!1},popperClass:{type:$([String,Array,Object])},popperStyle:{type:$([String,Array,Object])},referenceEl:{type:$(Object)},triggerTargetEl:{type:$(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},ariaLabel:{type:String,default:void 0},virtualTriggering:Boolean,zIndex:Number}),kr={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},Mr=(e,t=[])=>{const{placement:n,strategy:o,popperOptions:r}=e,s={placement:n,strategy:o,...r,modifiers:[...Cr(e),...t]};return Er(s,r==null?void 0:r.modifiers),s},Sr=e=>{if(He)return uo(e)};function Cr(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:o}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5,fallbackPlacements:o}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function Er(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const Ar=0,Tr=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:o,role:r}=ae(Ye,void 0),s=_(),i=_(),u=M(()=>({name:"eventListeners",enabled:!!e.visible})),a=M(()=>{var p;const S=c(s),E=(p=c(i))!=null?p:Ar;return{name:"arrow",enabled:!bo(S),options:{element:S,padding:E}}}),l=M(()=>({onFirstUpdate:()=>{w()},...Mr(e,[c(a),c(u)])})),d=M(()=>Sr(e.referenceEl)||c(o)),{attributes:f,state:g,styles:m,update:w,forceUpdate:h,instanceRef:C}=pr(d,n,l);return W(C,p=>t.value=p),we(()=>{W(()=>{var p;return(p=c(d))==null?void 0:p.getBoundingClientRect()},()=>{w()})}),{attributes:f,arrowRef:s,contentRef:n,instanceRef:C,state:g,styles:m,role:r,forceUpdate:h,update:w}},Ir=(e,{attributes:t,styles:n,role:o})=>{const{nextZIndex:r}=Sa(),s=X("popper"),i=M(()=>c(t).popper),u=_(e.zIndex||r()),a=M(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),l=M(()=>[{zIndex:c(u)},e.popperStyle||{},c(n).popper]),d=M(()=>o.value==="dialog"?"false":void 0),f=M(()=>c(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:i,contentClass:a,contentStyle:l,contentZIndex:u,updateZIndex:()=>{u.value=e.zIndex||r()}}},Pr=(e,t)=>{const n=_(!1),o=_();return{focusStartRef:o,trapped:n,onFocusAfterReleased:r=>{var s;((s=r.detail)==null?void 0:s.focusReason)!=="pointer"&&(o.value="first",t("blur"))},onFocusAfterTrapped:()=>{t("focus")},onFocusInTrap:r=>{e.visible&&!n.value&&(r.target&&(o.value=r.target),n.value=!0)},onFocusoutPrevented:r=>{e.trapping||(r.detail.focusReason==="pointer"&&r.preventDefault(),n.value=!1)},onReleaseRequested:()=>{n.value=!1,t("close")}}},Rr=z({name:"ElPopperContent"}),Br=z({...Rr,props:_n,emits:kr,setup(e,{expose:t,emit:n}){const o=e,{focusStartRef:r,trapped:s,onFocusAfterReleased:i,onFocusAfterTrapped:u,onFocusInTrap:a,onFocusoutPrevented:l,onReleaseRequested:d}=Pr(o,n),{attributes:f,arrowRef:g,contentRef:m,styles:w,instanceRef:h,role:C,update:p}=Tr(o),{ariaModal:S,arrowStyle:E,contentAttrs:O,contentClass:I,contentStyle:k,updateZIndex:T}=Ir(o,{styles:w,attributes:f,role:C}),R=ae(go,void 0),L=_();ve(kt,{arrowStyle:E,arrowRef:g,arrowOffset:L}),R&&(R.addInputId||R.removeInputId)&&ve(go,{...R,addInputId:Pt,removeInputId:Pt});let P;const v=(y=!0)=>{p(),y&&T()},x=()=>{v(!1),o.visible&&o.focusOnShow?s.value=!0:o.visible===!1&&(s.value=!1)};return we(()=>{W(()=>o.triggerTargetEl,(y,F)=>{P==null||P(),P=void 0;const H=c(y||m.value),B=c(F||m.value);at(H)&&(P=W([C,()=>o.ariaLabel,S,()=>o.id],b=>{["role","aria-label","aria-modal","id"].forEach((D,A)=>{mo(b[A])?H.removeAttribute(D):H.setAttribute(D,b[A])})},{immediate:!0})),B!==H&&at(B)&&["role","aria-label","aria-modal","id"].forEach(b=>{B.removeAttribute(b)})},{immediate:!0}),W(()=>o.visible,x,{immediate:!0})}),Oe(()=>{P==null||P(),P=void 0}),t({popperContentRef:m,popperInstanceRef:h,updatePopper:v,contentStyle:k}),(y,F)=>(q(),me("div",Ne({ref_key:"contentRef",ref:m},c(O),{style:c(k),class:c(I),tabindex:"-1",onMouseenter:F[0]||(F[0]=H=>y.$emit("mouseenter",H)),onMouseleave:F[1]||(F[1]=H=>y.$emit("mouseleave",H))}),[De(c(Wa),{trapped:c(s),"trap-on-focus-in":!0,"focus-trap-el":c(m),"focus-start-el":c(r),onFocusAfterTrapped:c(u),onFocusAfterReleased:c(i),onFocusin:c(a),onFocusoutPrevented:c(l),onReleaseRequested:c(d)},{default:ee(()=>[Z(y.$slots,"default")]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16))}});var _r=re(Br,[["__file","/home/runner/work/element-plus/element-plus/packages/components/popper/src/content.vue"]]);let jn,Ge,St,Ln,$n,Fn,Hn,Dn,Nn,ye,zn,Wn;jn=Bt(cr),Ge=Symbol("elTooltip"),pt=J({...Mn,..._n,appendTo:{type:$([String,Object])},content:{type:String,default:""},rawContent:{type:Boolean,default:!1},persistent:Boolean,ariaLabel:String,visible:{type:$(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean}),St=J({...Bn,disabled:Boolean,trigger:{type:$([String,Array]),default:"hover"},triggerKeys:{type:$(Array),default:()=>[te.enter,te.space]}}),{useModelToggleProps:Ln,useModelToggleEmits:$n,useModelToggle:Fn}=Nt("visible"),Hn=J({...Mt,...Ln,...pt,...St,...In,showArrow:{type:Boolean,default:!0}}),Dn=[...$n,"before-show","before-hide","show","hide","open","close"],Nn=(e,t)=>Ca(e)?e.includes(t):e===t,ye=(e,t,n)=>o=>{Nn(c(e),t)&&n(o)},zn=z({name:"ElTooltipTrigger"}),Wn=z({...zn,props:St,setup(e,{expose:t}){const n=e,o=X("tooltip"),{controlled:r,id:s,open:i,onOpen:u,onClose:a,onToggle:l}=ae(Ge,void 0),d=_(null),f=()=>{if(c(r)||n.disabled)return!0},g=Re(n,"trigger"),m=ue(f,ye(g,"hover",u)),w=ue(f,ye(g,"hover",a)),h=ue(f,ye(g,"click",O=>{O.button===0&&l(O)})),C=ue(f,ye(g,"focus",u)),p=ue(f,ye(g,"focus",a)),S=ue(f,ye(g,"contextmenu",O=>{O.preventDefault(),l(O)})),E=ue(f,O=>{const{code:I}=O;n.triggerKeys.includes(I)&&(O.preventDefault(),l(O))});return t({triggerRef:d}),(O,I)=>(q(),ce(c(xr),{id:c(s),"virtual-ref":O.virtualRef,open:c(i),"virtual-triggering":O.virtualTriggering,class:Pe(c(o).e("trigger")),onBlur:c(p),onClick:c(h),onContextmenu:c(S),onFocus:c(C),onMouseenter:c(m),onMouseleave:c(w),onKeydown:c(E)},{default:ee(()=>[Z(O.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var jr=re(Wn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/trigger.vue"]]);const Lr=z({name:"ElTooltipContent",inheritAttrs:!1}),$r=z({...Lr,props:pt,setup(e,{expose:t}){const n=e,{selector:o}=wt(),r=X("tooltip"),s=_(null),i=_(!1),{controlled:u,id:a,open:l,trigger:d,onClose:f,onOpen:g,onShow:m,onHide:w,onBeforeShow:h,onBeforeHide:C}=ae(Ge,void 0),p=M(()=>n.transition||`${r.namespace.value}-fade-in-linear`),S=M(()=>n.persistent);Oe(()=>{i.value=!0});const E=M(()=>c(S)?!0:c(l)),O=M(()=>n.disabled?!1:c(l)),I=M(()=>n.appendTo||o.value),k=M(()=>{var b;return(b=n.style)!=null?b:{}}),T=M(()=>!c(l)),R=()=>{w()},L=()=>{if(c(u))return!0},P=ue(L,()=>{n.enterable&&c(d)==="hover"&&g()}),v=ue(L,()=>{c(d)==="hover"&&f()}),x=()=>{var b,D;(D=(b=s.value)==null?void 0:b.updatePopper)==null||D.call(b),h==null||h()},y=()=>{C==null||C()},F=()=>{m(),B=Aa(M(()=>{var b;return(b=s.value)==null?void 0:b.popperContentRef}),()=>{c(u)||c(d)!=="hover"&&f()})},H=()=>{n.virtualTriggering||f()};let B;return W(()=>c(l),b=>{b||(B==null||B())},{flush:"post"}),W(()=>n.content,()=>{var b,D;(D=(b=s.value)==null?void 0:b.updatePopper)==null||D.call(b)}),t({contentRef:s}),(b,D)=>(q(),ce(Ea,{disabled:!b.teleported,to:c(I)},[De(_t,{name:c(p),onAfterLeave:R,onBeforeEnter:x,onAfterEnter:F,onBeforeLeave:y},{default:ee(()=>[c(E)?Rt((q(),ce(c(_r),Ne({key:0,id:c(a),ref_key:"contentRef",ref:s},b.$attrs,{"aria-label":b.ariaLabel,"aria-hidden":c(T),"boundaries-padding":b.boundariesPadding,"fallback-placements":b.fallbackPlacements,"gpu-acceleration":b.gpuAcceleration,offset:b.offset,placement:b.placement,"popper-options":b.popperOptions,strategy:b.strategy,effect:b.effect,enterable:b.enterable,pure:b.pure,"popper-class":b.popperClass,"popper-style":[b.popperStyle,c(k)],"reference-el":b.referenceEl,"trigger-target-el":b.triggerTargetEl,visible:c(O),"z-index":b.zIndex,onMouseenter:c(P),onMouseleave:c(v),onBlur:H,onClose:c(f)}),{default:ee(()=>[i.value?ze("v-if",!0):Z(b.$slots,"default",{key:0})]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","onMouseenter","onMouseleave","onClose"])),[[po,c(O)]]):ze("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"]))}});var Fr=re($r,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/content.vue"]]);const Hr=["innerHTML"],Dr={key:1},Nr=z({name:"ElTooltip"}),zr=z({...Nr,props:Hn,emits:Dn,setup(e,{expose:t,emit:n}){const o=e;kn();const r=Za(),s=_(),i=_(),u=()=>{var p;const S=c(s);S&&((p=S.popperInstanceRef)==null||p.update())},a=_(!1),l=_(),{show:d,hide:f,hasUpdateHandler:g}=Fn({indicator:a,toggleReason:l}),{onOpen:m,onClose:w}=Ht({showAfter:Re(o,"showAfter"),hideAfter:Re(o,"hideAfter"),autoClose:Re(o,"autoClose"),open:d,close:f}),h=M(()=>so(o.visible)&&!g.value);ve(Ge,{controlled:h,id:r,open:Ta(a),trigger:Re(o,"trigger"),onOpen:p=>{m(p)},onClose:p=>{w(p)},onToggle:p=>{c(a)?w(p):m(p)},onShow:()=>{n("show",l.value)},onHide:()=>{n("hide",l.value)},onBeforeShow:()=>{n("before-show",l.value)},onBeforeHide:()=>{n("before-hide",l.value)},updatePopper:u}),W(()=>o.disabled,p=>{p&&a.value&&(a.value=!1)});const C=()=>{var p,S;const E=(S=(p=i.value)==null?void 0:p.contentRef)==null?void 0:S.popperContentRef;return E&&E.contains(document.activeElement)};return Ia(()=>a.value&&f()),t({popperRef:s,contentRef:i,isFocusInsideContent:C,updatePopper:u,onOpen:m,onClose:w,hide:f}),(p,S)=>(q(),ce(c(jn),{ref_key:"popperRef",ref:s,role:p.role},{default:ee(()=>[De(jr,{disabled:p.disabled,trigger:p.trigger,"trigger-keys":p.triggerKeys,"virtual-ref":p.virtualRef,"virtual-triggering":p.virtualTriggering},{default:ee(()=>[p.$slots.default?Z(p.$slots,"default",{key:0}):ze("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering"]),De(Fr,{ref_key:"contentRef",ref:i,"aria-label":p.ariaLabel,"boundaries-padding":p.boundariesPadding,content:p.content,disabled:p.disabled,effect:p.effect,enterable:p.enterable,"fallback-placements":p.fallbackPlacements,"hide-after":p.hideAfter,"gpu-acceleration":p.gpuAcceleration,offset:p.offset,persistent:p.persistent,"popper-class":p.popperClass,"popper-style":p.popperStyle,placement:p.placement,"popper-options":p.popperOptions,pure:p.pure,"raw-content":p.rawContent,"reference-el":p.referenceEl,"trigger-target-el":p.triggerTargetEl,"show-after":p.showAfter,strategy:p.strategy,teleported:p.teleported,transition:p.transition,"virtual-triggering":p.virtualTriggering,"z-index":p.zIndex,"append-to":p.appendTo},{default:ee(()=>[Z(p.$slots,"content",{},()=>[p.rawContent?(q(),me("span",{key:0,innerHTML:p.content},null,8,Hr)):(q(),me("span",Dr,co(p.content),1))]),p.showArrow?(q(),ce(c(mr),{key:0,"arrow-offset":p.arrowOffset},null,8,["arrow-offset"])):ze("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to"])]),_:3},8,["role"]))}});var Wr=re(zr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tooltip/src/tooltip.vue"]]);let qn,Un;ut=Bt(Wr),qn=z({name:"ElCollapseTransition"}),Un=z({...qn,setup(e){const t=X("collapse-transition"),n={beforeEnter(o){o.dataset||(o.dataset={}),o.dataset.oldPaddingTop=o.style.paddingTop,o.dataset.oldPaddingBottom=o.style.paddingBottom,o.style.maxHeight=0,o.style.paddingTop=0,o.style.paddingBottom=0},enter(o){o.dataset.oldOverflow=o.style.overflow,o.scrollHeight!==0?(o.style.maxHeight=`${o.scrollHeight}px`,o.style.paddingTop=o.dataset.oldPaddingTop,o.style.paddingBottom=o.dataset.oldPaddingBottom):(o.style.maxHeight=0,o.style.paddingTop=o.dataset.oldPaddingTop,o.style.paddingBottom=o.dataset.oldPaddingBottom),o.style.overflow="hidden"},afterEnter(o){o.style.maxHeight="",o.style.overflow=o.dataset.oldOverflow},beforeLeave(o){o.dataset||(o.dataset={}),o.dataset.oldPaddingTop=o.style.paddingTop,o.dataset.oldPaddingBottom=o.style.paddingBottom,o.dataset.oldOverflow=o.style.overflow,o.style.maxHeight=`${o.scrollHeight}px`,o.style.overflow="hidden"},leave(o){o.scrollHeight!==0&&(o.style.maxHeight=0,o.style.paddingTop=0,o.style.paddingBottom=0)},afterLeave(o){o.style.maxHeight="",o.style.overflow=o.dataset.oldOverflow,o.style.paddingTop=o.dataset.oldPaddingTop,o.style.paddingBottom=o.dataset.oldPaddingBottom}};return(o,r)=>(q(),ce(_t,Ne({name:c(t).b()},Pa(n)),{default:ee(()=>[Z(o.$slots,"default")]),_:3},16,["name"]))}});var Qe=re(Un,[["__file","/home/runner/work/element-plus/element-plus/packages/components/collapse-transition/src/collapse-transition.vue"]]);Qe.install=e=>{e.component(Qe.name,Qe)};const qr=Qe;let Ur=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){const e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener("keydown",n=>{let o=!1;switch(n.code){case te.down:{this.gotoSubIndex(this.subIndex+1),o=!0;break}case te.up:{this.gotoSubIndex(this.subIndex-1),o=!0;break}case te.tab:{qe(e,"mouseleave");break}case te.enter:case te.space:{o=!0,n.currentTarget.click();break}}return o&&(n.preventDefault(),n.stopPropagation()),!1})})}},Vr=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute("tabindex","0");const t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new Ur(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",e=>{let t=!1;switch(e.code){case te.down:{qe(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break}case te.up:{qe(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break}case te.tab:{qe(e.currentTarget,"mouseleave");break}case te.enter:case te.space:{t=!0,e.currentTarget.click();break}}t&&e.preventDefault()})}},Kr=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){const t=this.domNode.childNodes;Array.from(t).forEach(n=>{n.nodeType===1&&new Vr(n,e)})}};const Zr=z({name:"ElMenuCollapseTransition",setup(){const e=X("menu");return{listeners:{onBeforeEnter:t=>t.style.opacity="0.2",onEnter(t,n){st(t,`${e.namespace.value}-opacity-transition`),t.style.opacity="1",n()},onAfterEnter(t){jt(t,`${e.namespace.value}-opacity-transition`),t.style.opacity=""},onBeforeLeave(t){t.dataset||(t.dataset={}),Ra(t,e.m("collapse"))?(jt(t,e.m("collapse")),t.dataset.oldOverflow=t.style.overflow,t.dataset.scrollWidth=t.clientWidth.toString(),st(t,e.m("collapse"))):(st(t,e.m("collapse")),t.dataset.oldOverflow=t.style.overflow,t.dataset.scrollWidth=t.clientWidth.toString(),jt(t,e.m("collapse"))),t.style.width=`${t.scrollWidth}px`,t.style.overflow="hidden"},onLeave(t){st(t,"horizontal-collapse-transition"),t.style.width=`${t.dataset.scrollWidth}px`}}}}});function Xr(e,t,n,o,r,s){return q(),ce(_t,Ne({mode:"out-in"},e.listeners),{default:ee(()=>[Z(e.$slots,"default")]),_:3},16)}var Yr=re(Zr,[["render",Xr],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-collapse-transition.vue"]]);function Vn(e,t){const n=M(()=>{let o=e.parent;const r=[t.value];for(;o.type.name!=="ElMenu";)o.props.index&&r.unshift(o.props.index),o=o.parent;return r});return{parentMenu:M(()=>{let o=e.parent;for(;o&&!["ElMenu","ElSubMenu"].includes(o.type.name);)o=o.parent;return o}),indexPath:n}}function Gr(e){return M(()=>{const t=e.backgroundColor;return t?new qa(t).shade(20).toString():""})}const Kn=(e,t)=>{const n=X("menu");return M(()=>n.cssVarBlock({"text-color":e.textColor||"","hover-text-color":e.textColor||"","bg-color":e.backgroundColor||"","hover-bg-color":Gr(e).value||"","active-color":e.activeTextColor||"",level:`${t}`}))},Qr=J({index:{type:String,required:!0},showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},popperClass:String,disabled:Boolean,popperAppendToBody:{type:Boolean,default:void 0},teleported:{type:Boolean,default:void 0},popperOffset:{type:Number,default:6},expandCloseIcon:{type:it},expandOpenIcon:{type:it},collapseCloseIcon:{type:it},collapseOpenIcon:{type:it}}),Je="ElSubMenu";var Ct=z({name:Je,props:Qr,setup(e,{slots:t,expose:n}){Ua({from:"popper-append-to-body",replacement:"teleported",scope:Je,version:"2.3.0",ref:"https://element-plus.org/en-US/component/menu.html#submenu-attributes"},M(()=>e.popperAppendToBody!==void 0));const o=ot(),{indexPath:r,parentMenu:s}=Vn(o,M(()=>e.index)),i=X("menu"),u=X("sub-menu"),a=ae("rootMenu");a||lt(Je,"can not inject root menu");const l=ae(`subMenu:${s.value.uid}`);l||lt(Je,"can not inject sub menu");const d=_({}),f=_({});let g;const m=_(!1),w=_(),h=_(null),C=M(()=>v.value==="horizontal"&&S.value?"bottom-start":"right-start"),p=M(()=>v.value==="horizontal"&&S.value||v.value==="vertical"&&!a.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?k.value?e.expandOpenIcon:e.expandCloseIcon:Ba:e.collapseCloseIcon&&e.collapseOpenIcon?k.value?e.collapseOpenIcon:e.collapseCloseIcon:_a),S=M(()=>l.level===0),E=M(()=>{var A;const j=(A=e.teleported)!=null?A:e.popperAppendToBody;return j===void 0?S.value:j}),O=M(()=>a.props.collapse?`${i.namespace.value}-zoom-in-left`:`${i.namespace.value}-zoom-in-top`),I=M(()=>v.value==="horizontal"&&S.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","left-start","bottom-start","bottom-end","top-start","top-end"]),k=M(()=>a.openedMenus.includes(e.index)),T=M(()=>{let A=!1;return Object.values(d.value).forEach(j=>{j.active&&(A=!0)}),Object.values(f.value).forEach(j=>{j.active&&(A=!0)}),A}),R=M(()=>a.props.backgroundColor||""),L=M(()=>a.props.activeTextColor||""),P=M(()=>a.props.textColor||""),v=M(()=>a.props.mode),x=Lt({index:e.index,indexPath:r,active:T}),y=M(()=>v.value!=="horizontal"?{color:P.value}:{borderBottomColor:T.value?a.props.activeTextColor?L.value:"":"transparent",color:T.value?L.value:P.value}),F=()=>{var A,j,N;return(N=(j=(A=h.value)==null?void 0:A.popperRef)==null?void 0:j.popperInstanceRef)==null?void 0:N.destroy()},H=A=>{A||F()},B=()=>{a.props.menuTrigger==="hover"&&a.props.mode==="horizontal"||a.props.collapse&&a.props.mode==="vertical"||e.disabled||a.handleSubMenuClick({index:e.index,indexPath:r.value,active:T.value})},b=(A,j=e.showTimeout)=>{var N;A.type!=="focus"&&(a.props.menuTrigger==="click"&&a.props.mode==="horizontal"||!a.props.collapse&&a.props.mode==="vertical"||e.disabled||(l.mouseInChild.value=!0,g==null||g(),{stop:g}=vo(()=>{a.openMenu(e.index,r.value)},j),E.value&&((N=s.value.vnode.el)==null||N.dispatchEvent(new MouseEvent("mouseenter")))))},D=(A=!1)=>{var j,N;a.props.menuTrigger==="click"&&a.props.mode==="horizontal"||!a.props.collapse&&a.props.mode==="vertical"||(g==null||g(),l.mouseInChild.value=!1,{stop:g}=vo(()=>!m.value&&a.closeMenu(e.index,r.value),e.hideTimeout),E.value&&A&&((j=o.parent)==null?void 0:j.type.name)==="ElSubMenu"&&((N=l.handleMouseleave)==null||N.call(l,!0)))};W(()=>a.props.collapse,A=>H(!!A));{const A=N=>{f.value[N.index]=N},j=N=>{delete f.value[N.index]};ve(`subMenu:${o.uid}`,{addSubMenu:A,removeSubMenu:j,handleMouseleave:D,mouseInChild:m,level:l.level+1})}return n({opened:k}),we(()=>{a.addSubMenu(x),l.addSubMenu(x)}),Oe(()=>{l.removeSubMenu(x),a.removeSubMenu(x)}),()=>{var A;const j=[(A=t.title)==null?void 0:A.call(t),U(fo,{class:u.e("icon-arrow"),style:{transform:k.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&a.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>Be(p.value)?U(o.appContext.components[p.value]):U(p.value)})],N=Kn(a.props,l.level+1),be=a.isMenuPopup?U(ut,{ref:h,visible:k.value,effect:"light",pure:!0,offset:e.popperOffset,showArrow:!1,persistent:!0,popperClass:e.popperClass,placement:C.value,teleported:E.value,fallbackPlacements:I.value,transition:O.value,gpuAcceleration:!1},{content:()=>{var le;return U("div",{class:[i.m(v.value),i.m("popup-container"),e.popperClass],onMouseenter:oe=>b(oe,100),onMouseleave:()=>D(!0),onFocus:oe=>b(oe,100)},[U("ul",{class:[i.b(),i.m("popup"),i.m(`popup-${C.value}`)],style:N.value},[(le=t.default)==null?void 0:le.call(t)])])},default:()=>U("div",{class:u.e("title"),style:[y.value,{backgroundColor:R.value}],onClick:B},j)}):U(rt,{},[U("div",{class:u.e("title"),style:[y.value,{backgroundColor:R.value}],ref:w,onClick:B},j),U(qr,{},{default:()=>{var le;return Rt(U("ul",{role:"menu",class:[i.b(),i.m("inline")],style:N.value},[(le=t.default)==null?void 0:le.call(t)]),[[po,k.value]])}})]);return U("li",{class:[u.b(),u.is("active",T.value),u.is("opened",k.value),u.is("disabled",e.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:k.value,onMouseenter:b,onMouseleave:()=>D(!0),onFocus:b},[be])}}});const Jr=J({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:$(Array),default:()=>Fa([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperEffect:{type:String,values:["dark","light"],default:"dark"}}),Et=e=>Array.isArray(e)&&e.every(t=>Be(t));var ea=z({name:"ElMenu",props:Jr,emits:{close:(e,t)=>Be(e)&&Et(t),open:(e,t)=>Be(e)&&Et(t),select:(e,t,n,o)=>Be(e)&&Et(t)&&lo(n)&&(o===void 0||o instanceof Promise)},setup(e,{emit:t,slots:n,expose:o}){const r=ot(),s=r.appContext.config.globalProperties.$router,i=_(),u=X("menu"),a=X("sub-menu"),l=_(-1),d=_(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),f=_(e.defaultActive),g=_({}),m=_({}),w=M(()=>e.mode==="horizontal"||e.mode==="vertical"&&e.collapse),h=()=>{const v=f.value&&g.value[f.value];!v||e.mode==="horizontal"||e.collapse||v.indexPath.forEach(x=>{const y=m.value[x];y&&C(x,y.indexPath)})},C=(v,x)=>{d.value.includes(v)||(e.uniqueOpened&&(d.value=d.value.filter(y=>x.includes(y))),d.value.push(v),t("open",v,x))},p=v=>{const x=d.value.indexOf(v);x!==-1&&d.value.splice(x,1)},S=(v,x)=>{p(v),t("close",v,x)},E=({index:v,indexPath:x})=>{d.value.includes(v)?S(v,x):C(v,x)},O=v=>{(e.mode==="horizontal"||e.collapse)&&(d.value=[]);const{index:x,indexPath:y}=v;if(!(x===void 0||y===void 0))if(e.router&&s){const F=v.route||x,H=s.push(F).then(B=>(B||(f.value=x),B));t("select",x,y,{index:x,indexPath:y,route:F},H)}else f.value=x,t("select",x,y,{index:x,indexPath:y})},I=v=>{const x=g.value,y=x[v]||f.value&&x[f.value]||x[e.defaultActive];y?f.value=y.index:f.value=v},k=()=>{var v,x;if(!i.value)return-1;const y=Array.from((x=(v=i.value)==null?void 0:v.childNodes)!=null?x:[]).filter(j=>j.nodeName!=="#text"||j.nodeValue),F=64,H=Number.parseInt(getComputedStyle(i.value).paddingLeft,10),B=Number.parseInt(getComputedStyle(i.value).paddingRight,10),b=i.value.clientWidth-H-B;let D=0,A=0;return y.forEach((j,N)=>{D+=j.offsetWidth||0,D<=b-F&&(A=N+1)}),A===y.length?-1:A},T=(v,x=33.34)=>{let y;return()=>{y&&clearTimeout(y),y=setTimeout(()=>{v()},x)}};let R=!0;const L=()=>{const v=()=>{l.value=-1,Ha(()=>{l.value=k()})};R?v():T(v)(),R=!1};W(()=>e.defaultActive,v=>{g.value[v]||(f.value=""),I(v)}),W(()=>e.collapse,v=>{v&&(d.value=[])}),W(g.value,h);let P;ja(()=>{e.mode==="horizontal"&&e.ellipsis?P=La(i,L).stop:P==null||P()});{const v=y=>{m.value[y.index]=y},x=y=>{delete m.value[y.index]};ve("rootMenu",Lt({props:e,openedMenus:d,items:g,subMenus:m,activeIndex:f,isMenuPopup:w,addMenuItem:y=>{g.value[y.index]=y},removeMenuItem:y=>{delete g.value[y.index]},addSubMenu:v,removeSubMenu:x,openMenu:C,closeMenu:S,handleMenuItemClick:O,handleSubMenuClick:E})),ve(`subMenu:${r.uid}`,{addSubMenu:v,removeSubMenu:x,mouseInChild:_(!1),level:0})}return we(()=>{e.mode==="horizontal"&&new Kr(r.vnode.el,u.namespace.value)}),o({open:v=>{const{indexPath:x}=m.value[v];x.forEach(y=>C(y,x))},close:p,handleResize:L}),()=>{var v,x;let y=(x=(v=n.default)==null?void 0:v.call(n))!=null?x:[];const F=[];if(e.mode==="horizontal"&&i.value){const b=Ya(y),D=l.value===-1?b:b.slice(0,l.value),A=l.value===-1?[]:b.slice(l.value);A!=null&&A.length&&e.ellipsis&&(y=D,F.push(U(Ct,{index:"sub-menu-more",class:a.e("hide-arrow")},{title:()=>U(fo,{class:a.e("icon-more")},{default:()=>U($a)}),default:()=>A})))}const H=Kn(e,0),B=U("ul",{key:String(e.collapse),role:"menubar",ref:i,style:H.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m("collapse")]:e.collapse}},[...y,...F]);return e.collapseTransition&&e.mode==="vertical"?U(Yr,()=>B):B}}});const ta=J({index:{type:$([String,null]),default:null},route:{type:$([String,Object])},disabled:Boolean}),na={click:e=>Be(e.index)&&Array.isArray(e.indexPath)},At="ElMenuItem",oa=z({name:At,components:{ElTooltip:ut},props:ta,emits:na,setup(e,{emit:t}){const n=ot(),o=ae("rootMenu"),r=X("menu"),s=X("menu-item");o||lt(At,"can not inject root menu");const{parentMenu:i,indexPath:u}=Vn(n,Re(e,"index")),a=ae(`subMenu:${i.value.uid}`);a||lt(At,"can not inject sub menu");const l=M(()=>e.index===o.activeIndex),d=Lt({index:e.index,indexPath:u,active:l}),f=()=>{e.disabled||(o.handleMenuItemClick({index:e.index,indexPath:u.value,route:e.route}),t("click",d))};return we(()=>{a.addSubMenu(d),o.addMenuItem(d)}),Oe(()=>{a.removeSubMenu(d),o.removeMenuItem(d)}),{parentMenu:i,rootMenu:o,active:l,nsMenu:r,nsMenuItem:s,handleClick:f}}});function ra(e,t,n,o,r,s){const i=Da("el-tooltip");return q(),me("li",{class:Pe([e.nsMenuItem.b(),e.nsMenuItem.is("active",e.active),e.nsMenuItem.is("disabled",e.disabled)]),role:"menuitem",tabindex:"-1",onClick:t[0]||(t[0]=(...u)=>e.handleClick&&e.handleClick(...u))},[e.parentMenu.type.name==="ElMenu"&&e.rootMenu.props.collapse&&e.$slots.title?(q(),ce(i,{key:0,effect:e.rootMenu.props.popperEffect,placement:"right","fallback-placements":["left"],persistent:""},{content:ee(()=>[Z(e.$slots,"title")]),default:ee(()=>[$t("div",{class:Pe(e.nsMenu.be("tooltip","trigger"))},[Z(e.$slots,"default")],2)]),_:3},8,["effect"])):(q(),me(rt,{key:1},[Z(e.$slots,"default"),Z(e.$slots,"title")],64))],2)}var Zn=re(oa,[["render",ra],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item.vue"]]);const aa={title:String},sa="ElMenuItemGroup",ia=z({name:sa,props:aa,setup(){return{ns:X("menu-item-group")}}});function la(e,t,n,o,r,s){return q(),me("li",{class:Pe(e.ns.b())},[$t("div",{class:Pe(e.ns.e("title"))},[e.$slots.title?Z(e.$slots,"title",{key:1}):(q(),me(rt,{key:0},[Na(co(e.title),1)],64))],2),$t("ul",null,[Z(e.$slots,"default")])],2)}var Xn=re(ia,[["render",la],["__file","/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item-group.vue"]]);yo=Bt(ea,{MenuItem:Zn,MenuItemGroup:Xn,SubMenu:Ct}),ho=Ft(Zn),Ft(Xn),Ft(Ct)});export{ho as E,Qa as __tla,yo as a,ut as b,We as c,Ht as d,pt as u,Dt as y}; diff --git a/niucloud/public/web/_nuxt/el-select.6d0e4b59.js b/niucloud/public/web/_nuxt/el-select.6d0e4b59.js new file mode 100644 index 0000000..3c9855e --- /dev/null +++ b/niucloud/public/web/_nuxt/el-select.6d0e4b59.js @@ -0,0 +1 @@ +import{bx as ta,aJ as nl,by as la,bz as $l,b5 as al,b4 as Xe,b6 as ol,bA as pu,bB as vu,bC as na,bD as Vl,bE as aa,bF as Te,bG as oa,bH as hu,bI as fu,bJ as mu,bK as gu,bL as bu,bg as rl,J as Ae,D as xe,f as G,a0 as fe,B as Z,x as E,i as N,O as Dl,ay as Ht,a$ as ra,o as R,c as Q,w as Y,S as Me,l as U,C as z,u as C,E as Ce,W as gt,X as sl,ag as Qe,k as I,m as ve,Z as We,ah as il,K as Oe,b9 as sa,L as ee,N as Ft,ap as re,P as bt,a1 as It,M as Ue,bj as ia,r as Ne,at as ot,y as le,aY as yt,F as xt,aD as yu,bt as Kl,Q as Bt,bh as ul,a3 as jl,R as me,aX as wt,bM as Ct,A as ua,aG as Wt,bN as cl,p as dl,t as se,bi as $t,G as Vt,aq as ca,T as Ke,U as Je,bn as St,am as He,H as da,aN as rt,bO as Dt,bP as ql,ax as xu,aQ as wu,bQ as pa,bR as Cu,bS as ge,bT as Gl,$ as st,aT as Fe,bU as Su,b0 as ku,ai as va,b8 as kt,bV as Eu,bW as ha,bX as Ou,bm as W,V as Lu,Y as Ul,bY as Kt,bZ as Nu,b_ as fa,a2 as Yl,bd as ma,bb as pl,bf as Xl,an as Ru,bc as ga,bl as Tu,bu as Mu,b$ as zu,__tla as _u}from"./entry.60adbc61.js";import{b as ba,u as Pu,c as Au,d as Hu,y as Fu,__tla as Iu}from"./el-popper.f96f4ae9.js";import{v as vl,w as hl,d as Bu,e as Wu,x as ya,r as xa,j as wa,o as Ql,S as jt,y as Ca,k as Sa,z as $u,c as Vu,a as ka,m as Du,p as Ku,i as ju,q as qu,U as Ie,A as Gu,B as Uu,C as Ea,E as Oa,__tla as Yu}from"./el-input.9a624f32.js";import{u as Xu,b as fl,a as qt,c as La,__tla as Qu}from"./use-form-item.9fe2eb56.js";import{t as Na,d as ml,u as Ju,__tla as Zu}from"./index.f6314314.js";import{d as Et,__tla as ec}from"./debounce.cf505dd3.js";let Ra,Ta,Ma,tc=Promise.all([(()=>{try{return _u}catch{}})(),(()=>{try{return Iu}catch{}})(),(()=>{try{return Yu}catch{}})(),(()=>{try{return Qu}catch{}})(),(()=>{try{return Zu}catch{}})(),(()=>{try{return ec}catch{}})()]).then(async()=>{function gl(e){return e}function za(e,t,l){switch(l.length){case 0:return e.call(t);case 1:return e.call(t,l[0]);case 2:return e.call(t,l[0],l[1]);case 3:return e.call(t,l[0],l[1],l[2])}return e.apply(t,l)}var _a=800,Pa=16,Aa=Date.now;function Ha(e){var t=0,l=0;return function(){var n=Aa(),a=Pa-(n-l);if(l=n,a>0){if(++t>=_a)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function Fa(e){return function(){return e}}var Ia=ta?function(e,t){return ta(e,"toString",{configurable:!0,enumerable:!1,value:Fa(t),writable:!0})}:gl,Ba=Ha(Ia);const Jl=Ba;var Zl=Math.max;function en(e,t,l){return t=Zl(t===void 0?e.length-1:t,0),function(){for(var n=arguments,a=-1,o=Zl(n.length-t,0),r=Array(o);++a1?l[a-1]:void 0,r=a>2?l[2]:void 0;for(o=e.length>3&&typeof o=="function"?(a--,o):void 0,r&&$a(l[0],l[1],r)&&(o=a<3?void 0:o,a=1),t=Object(t);++n0&&l(s)?t>1?bl(s,t-1,l,n,a):Bu(a,s):n||(a[a.length]=s)}return a}function Ka(e){var t=e==null?0:e.length;return t?bl(e,1):[]}function ja(e){return Jl(en(e,void 0,Ka),e+"")}var qa="[object Object]",Ga=Function.prototype,Ua=Object.prototype,ln=Ga.toString,Ya=Ua.hasOwnProperty,Xa=ln.call(Object);function Qa(e){if(!ol(e)||pu(e)!=qa)return!1;var t=Wu(e);if(t===null)return!0;var l=Ya.call(t,"constructor")&&t.constructor;return typeof l=="function"&&l instanceof l&&ln.call(l)==Xa}var Ja="__lodash_hash_undefined__";function Za(e){return this.__data__.set(e,Ja),this}function eo(e){return this.__data__.has(e)}function Gt(e){var t=-1,l=e==null?0:e.length;for(this.__data__=new vu;++ts))return!1;var u=o.get(e),p=o.get(t);if(u&&p)return u==t&&p==e;var h=-1,b=!0,x=l&ao?new Gt:void 0;for(o.set(e,t),o.set(t,e);++he.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),sr=e=>bu[e||"default"],ir=e=>["",...rl].includes(e),ur=e=>({focus:()=>{var t,l;(l=(t=e.value)==null?void 0:t.focus)==null||l.call(t)}}),it=4,cr={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},dr=({move:e,size:t,bar:l})=>({[l.size]:t,transform:`translate${l.axis}(${e}%)`}),fn=Symbol("scrollbarContextKey"),pr=Ae({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),vr="Thumb",hr=G({__name:"thumb",props:pr,setup(e){const t=e,l=fe(fn),n=Z("scrollbar");l||Na(vr,"can not inject scrollbar context");const a=E(),o=E(),r=E({}),s=E(!1);let i=!1,u=!1,p=Qe?document.onselectstart:null;const h=N(()=>cr[t.vertical?"vertical":"horizontal"]),b=N(()=>dr({size:t.size,move:t.move,bar:h.value})),x=N(()=>a.value[h.value.offset]**2/l.wrapElement[h.value.scrollSize]/t.ratio/o.value[h.value.offset]),g=k=>{var S;if(k.stopPropagation(),k.ctrlKey||[1,2].includes(k.button))return;(S=window.getSelection())==null||S.removeAllRanges(),v(k);const T=k.currentTarget;T&&(r.value[h.value.axis]=T[h.value.offset]-(k[h.value.client]-T.getBoundingClientRect()[h.value.direction]))},d=k=>{if(!o.value||!a.value||!l.wrapElement)return;const S=Math.abs(k.target.getBoundingClientRect()[h.value.direction]-k[h.value.client]),T=o.value[h.value.offset]/2,F=(S-T)*100*x.value/a.value[h.value.offset];l.wrapElement[h.value.scroll]=F*l.wrapElement[h.value.scrollSize]/100},v=k=>{k.stopImmediatePropagation(),i=!0,document.addEventListener("mousemove",y),document.addEventListener("mouseup",c),p=document.onselectstart,document.onselectstart=()=>!1},y=k=>{if(!a.value||!o.value||i===!1)return;const S=r.value[h.value.axis];if(!S)return;const T=(a.value.getBoundingClientRect()[h.value.direction]-k[h.value.client])*-1,F=o.value[h.value.offset]-S,P=(T-F)*100*x.value/a.value[h.value.offset];l.wrapElement[h.value.scroll]=P*l.wrapElement[h.value.scrollSize]/100},c=()=>{i=!1,r.value[h.value.axis]=0,document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",c),M(),u&&(s.value=!1)},m=()=>{u=!1,s.value=!!t.size},f=()=>{u=!0,s.value=i};Dl(()=>{M(),document.removeEventListener("mouseup",c)});const M=()=>{document.onselectstart!==p&&(document.onselectstart=p)};return Ht(ra(l,"scrollbarElement"),"mousemove",m),Ht(ra(l,"scrollbarElement"),"mouseleave",f),(k,S)=>(R(),Q(sl,{name:C(n).b("fade"),persisted:""},{default:Y(()=>[Me(U("div",{ref_key:"instance",ref:a,class:z([C(n).e("bar"),C(n).is(C(h).key)]),onMousedown:d},[U("div",{ref_key:"thumb",ref:o,class:z(C(n).e("thumb")),style:Ce(C(b)),onMousedown:g},null,38)],34),[[gt,k.always||s.value]])]),_:1},8,["name"]))}});var mn=xe(hr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/thumb.vue"]]);const fr=Ae({always:{type:Boolean,default:!0},width:String,height:String,ratioX:{type:Number,default:1},ratioY:{type:Number,default:1}}),mr=G({__name:"bar",props:fr,setup(e,{expose:t}){const l=e,n=E(0),a=E(0);return t({handleScroll:o=>{if(o){const r=o.offsetHeight-it,s=o.offsetWidth-it;a.value=o.scrollTop*100/r*l.ratioY,n.value=o.scrollLeft*100/s*l.ratioX}}}),(o,r)=>(R(),I(We,null,[ve(mn,{move:n.value,ratio:o.ratioX,size:o.width,always:o.always},null,8,["move","ratio","size","always"]),ve(mn,{move:a.value,ratio:o.ratioY,size:o.height,vertical:"",always:o.always},null,8,["move","ratio","size","always"])],64))}});var gr=xe(mr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/bar.vue"]]);const br=Ae({height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:{type:Boolean,default:!1},wrapStyle:{type:il([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20}}),yr={scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(Oe)},xr="ElScrollbar",wr=G({name:xr}),Cr=G({...wr,props:br,emits:yr,setup(e,{expose:t,emit:l}){const n=e,a=Z("scrollbar");let o,r;const s=E(),i=E(),u=E(),p=E("0"),h=E("0"),b=E(),x=E(1),g=E(1),d=N(()=>{const S={};return n.height&&(S.height=sa(n.height)),n.maxHeight&&(S.maxHeight=sa(n.maxHeight)),[n.wrapStyle,S]}),v=N(()=>[n.wrapClass,a.e("wrap"),{[a.em("wrap","hidden-default")]:!n.native}]),y=N(()=>[a.e("view"),n.viewClass]),c=()=>{var S;i.value&&((S=b.value)==null||S.handleScroll(i.value),l("scroll",{scrollTop:i.value.scrollTop,scrollLeft:i.value.scrollLeft}))};function m(S,T){yt(S)?i.value.scrollTo(S):Oe(S)&&Oe(T)&&i.value.scrollTo(S,T)}const f=S=>{Oe(S)&&(i.value.scrollTop=S)},M=S=>{Oe(S)&&(i.value.scrollLeft=S)},k=()=>{if(!i.value)return;const S=i.value.offsetHeight-it,T=i.value.offsetWidth-it,F=S**2/i.value.scrollHeight,P=T**2/i.value.scrollWidth,q=Math.max(F,n.minSize),$=Math.max(P,n.minSize);x.value=F/(S-F)/(q/(S-q)),g.value=P/(T-P)/($/(T-$)),h.value=q+itn.noresize,S=>{S?(o==null||o(),r==null||r()):({stop:o}=Ft(u,k),r=Ht("resize",k))},{immediate:!0}),ee(()=>[n.maxHeight,n.height],()=>{n.native||re(()=>{var S;k(),i.value&&((S=b.value)==null||S.handleScroll(i.value))})}),bt(fn,It({scrollbarElement:s,wrapElement:i})),Ue(()=>{n.native||re(()=>{k()})}),ia(()=>k()),t({wrapRef:i,update:k,scrollTo:m,setScrollTop:f,setScrollLeft:M,handleScroll:c}),(S,T)=>(R(),I("div",{ref_key:"scrollbarRef",ref:s,class:z(C(a).b())},[U("div",{ref_key:"wrapRef",ref:i,class:z(C(v)),style:Ce(C(d)),onScroll:c},[(R(),Q(ot(S.tag),{ref_key:"resizeRef",ref:u,class:z(C(y)),style:Ce(S.viewStyle)},{default:Y(()=>[Ne(S.$slots,"default")]),_:3},8,["class","style"]))],38),S.native?le("v-if",!0):(R(),Q(gr,{key:0,ref_key:"barRef",ref:b,height:h.value,width:p.value,always:S.always,"ratio-x":g.value,"ratio-y":x.value},null,8,["height","width","always","ratio-x","ratio-y"]))],2))}});var Sr=xe(Cr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/scrollbar/src/scrollbar.vue"]]);const Cl=xt(Sr),Ye=new Map;let gn;Qe&&(document.addEventListener("mousedown",e=>gn=e),document.addEventListener("mouseup",e=>{for(const t of Ye.values())for(const{documentHandler:l}of t)l(e,gn)}));function bn(e,t){let l=[];return Array.isArray(t.arg)?l=t.arg:yu(t.arg)&&l.push(t.arg),function(n,a){const o=t.instance.popperRef,r=n.target,s=a==null?void 0:a.target,i=!t||!t.instance,u=!r||!s,p=e.contains(r)||e.contains(s),h=e===r,b=l.length&&l.some(g=>g==null?void 0:g.contains(r))||l.length&&l.includes(s),x=o&&(o.contains(r)||o.contains(s));i||u||p||h||b||x||t.value(n,a)}}const yn={beforeMount(e,t){Ye.has(e)||Ye.set(e,[]),Ye.get(e).push({documentHandler:bn(e,t),bindingFn:t.value})},updated(e,t){Ye.has(e)||Ye.set(e,[]);const l=Ye.get(e),n=l.findIndex(o=>o.bindingFn===t.oldValue),a={documentHandler:bn(e,t),bindingFn:t.value};n>=0?l.splice(n,1,a):l.push(a)},unmounted(e){Ye.delete(e)}};var xn=!1,Ze,Sl,kl,Qt,Jt,wn,Zt,El,Ol,Ll,Cn,Nl,Rl,Sn,kn;function Re(){if(!xn){xn=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),l=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(Nl=/\b(iPhone|iP[ao]d)/.exec(e),Rl=/\b(iP[ao]d)/.exec(e),Ll=/Android/i.exec(e),Sn=/FBAN\/\w+;/i.exec(e),kn=/Mobile/i.exec(e),Cn=!!/Win64/.exec(e),t){Ze=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Ze&&document&&document.documentMode&&(Ze=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);wn=n?parseFloat(n[1])+4:Ze,Sl=t[2]?parseFloat(t[2]):NaN,kl=t[3]?parseFloat(t[3]):NaN,Qt=t[4]?parseFloat(t[4]):NaN,Qt?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),Jt=t&&t[1]?parseFloat(t[1]):NaN):Jt=NaN}else Ze=Sl=kl=Jt=Qt=NaN;if(l){if(l[1]){var a=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);Zt=a?parseFloat(a[1].replace("_",".")):!0}else Zt=!1;El=!!l[2],Ol=!!l[3]}else Zt=El=Ol=!1}}var Tl={ie:function(){return Re()||Ze},ieCompatibilityMode:function(){return Re()||wn>Ze},ie64:function(){return Tl.ie()&&Cn},firefox:function(){return Re()||Sl},opera:function(){return Re()||kl},webkit:function(){return Re()||Qt},safari:function(){return Tl.webkit()},chrome:function(){return Re()||Jt},windows:function(){return Re()||El},osx:function(){return Re()||Zt},linux:function(){return Re()||Ol},iphone:function(){return Re()||Nl},mobile:function(){return Re()||Nl||Rl||Ll||kn},nativeApp:function(){return Re()||Sn},android:function(){return Re()||Ll},ipad:function(){return Re()||Rl}},kr=Tl,el=!!(typeof window<"u"&&window.document&&window.document.createElement),Er={canUseDOM:el,canUseWorkers:typeof Worker<"u",canUseEventListeners:el&&!!(window.addEventListener||window.attachEvent),canUseViewport:el&&!!window.screen,isInWorker:!el},En=Er,On;En.canUseDOM&&(On=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function Or(e,t){if(!En.canUseDOM||t&&!("addEventListener"in document))return!1;var l="on"+e,n=l in document;if(!n){var a=document.createElement("div");a.setAttribute(l,"return;"),n=typeof a[l]=="function"}return!n&&On&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}var Lr=Or,Ln=10,Nn=40,Rn=800;function Tn(e){var t=0,l=0,n=0,a=0;return"detail"in e&&(l=e.detail),"wheelDelta"in e&&(l=-e.wheelDelta/120),"wheelDeltaY"in e&&(l=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=l,l=0),n=t*Ln,a=l*Ln,"deltaY"in e&&(a=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||a)&&e.deltaMode&&(e.deltaMode==1?(n*=Nn,a*=Nn):(n*=Rn,a*=Rn)),n&&!t&&(t=n<1?-1:1),a&&!l&&(l=a<1?-1:1),{spinX:t,spinY:l,pixelX:n,pixelY:a}}Tn.getEventType=function(){return kr.firefox()?"DOMMouseScroll":Lr("wheel")?"wheel":"mousewheel"};var Nr=Tn;const Rr=function(e,t){if(e&&e.addEventListener){const l=function(n){const a=Nr(n);t&&Reflect.apply(t,this,[n,a])};e.addEventListener("wheel",l,{passive:!0})}},Tr={beforeMount(e,t){Rr(e,t.value)}},Mn={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object]},indeterminate:Boolean,disabled:Boolean,checked:Boolean,name:{type:String,default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},controls:{type:String,default:void 0},border:Boolean,size:Kl,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0}},zn={[Ie]:e=>Bt(e)||Oe(e)||ul(e),change:e=>Bt(e)||Oe(e)||ul(e)},ut=Symbol("checkboxGroupContextKey"),Mr=({model:e,isChecked:t})=>{const l=fe(ut,void 0),n=N(()=>{var a,o;const r=(a=l==null?void 0:l.max)==null?void 0:a.value,s=(o=l==null?void 0:l.min)==null?void 0:o.value;return!jl(r)&&e.value.length>=r&&!t.value||!jl(s)&&e.value.length<=s&&t.value});return{isDisabled:Xu(N(()=>(l==null?void 0:l.disabled.value)||n.value)),isLimitDisabled:n}},zr=(e,{model:t,isLimitExceeded:l,hasOwnLabel:n,isDisabled:a,isLabeledByFormItem:o})=>{const r=fe(ut,void 0),{formItem:s}=fl(),{emit:i}=me();function u(g){var d,v;return g===e.trueLabel||g===!0?(d=e.trueLabel)!=null?d:!0:(v=e.falseLabel)!=null?v:!1}function p(g,d){i("change",u(g),d)}function h(g){if(l.value)return;const d=g.target;i("change",u(d.checked),g)}async function b(g){l.value||!n.value&&!a.value&&o.value&&(g.composedPath().some(d=>d.tagName==="LABEL")||(t.value=u([!1,e.falseLabel].includes(t.value)),await re(),p(t.value,g)))}const x=N(()=>(r==null?void 0:r.validateEvent)||e.validateEvent);return ee(()=>e.modelValue,()=>{x.value&&(s==null||s.validate("change").catch(g=>ml()))}),{handleChange:h,onClickRoot:b}},_r=e=>{const t=E(!1),{emit:l}=me(),n=fe(ut,void 0),a=N(()=>jl(n)===!1),o=E(!1);return{model:N({get(){var r,s;return a.value?(r=n==null?void 0:n.modelValue)==null?void 0:r.value:(s=e.modelValue)!=null?s:t.value},set(r){var s,i;a.value&&wt(r)?(o.value=((s=n==null?void 0:n.max)==null?void 0:s.value)!==void 0&&r.length>(n==null?void 0:n.max.value),o.value===!1&&((i=n==null?void 0:n.changeEvent)==null||i.call(n,r))):(l(Ie,r),t.value=r)}}),isGroup:a,isLimitExceeded:o}},Pr=(e,t,{model:l})=>{const n=fe(ut,void 0),a=E(!1),o=N(()=>{const u=l.value;return ul(u)?u:wt(u)?yt(e.label)?u.map(Ct).some(p=>Xt(p,e.label)):u.map(Ct).includes(e.label):u!=null?u===e.trueLabel:!!u}),r=qt(N(()=>{var u;return(u=n==null?void 0:n.size)==null?void 0:u.value}),{prop:!0}),s=qt(N(()=>{var u;return(u=n==null?void 0:n.size)==null?void 0:u.value})),i=N(()=>!!(t.default||e.label));return{checkboxButtonSize:r,isChecked:o,isFocused:a,checkboxSize:s,hasOwnLabel:i}},Ar=(e,{model:t})=>{function l(){wt(t.value)&&!t.value.includes(e.label)?t.value.push(e.label):t.value=e.trueLabel||!0}e.checked&&l()},_n=(e,t)=>{const{formItem:l}=fl(),{model:n,isGroup:a,isLimitExceeded:o}=_r(e),{isFocused:r,isChecked:s,checkboxButtonSize:i,checkboxSize:u,hasOwnLabel:p}=Pr(e,t,{model:n}),{isDisabled:h}=Mr({model:n,isChecked:s}),{inputId:b,isLabeledByFormItem:x}=La(e,{formItemContext:l,disableIdGeneration:p,disableIdManagement:a}),{handleChange:g,onClickRoot:d}=zr(e,{model:n,isLimitExceeded:o,hasOwnLabel:p,isDisabled:h,isLabeledByFormItem:x});return Ar(e,{model:n}),{inputId:b,isLabeledByFormItem:x,isChecked:s,isDisabled:h,isFocused:r,checkboxButtonSize:i,checkboxSize:u,hasOwnLabel:p,model:n,handleChange:g,onClickRoot:d}},Hr=["tabindex","role","aria-checked"],Fr=["id","aria-hidden","name","tabindex","disabled","true-value","false-value"],Ir=["id","aria-hidden","disabled","value","name","tabindex"],Br=G({name:"ElCheckbox"}),Wr=G({...Br,props:Mn,emits:zn,setup(e){const t=e,l=ua(),{inputId:n,isLabeledByFormItem:a,isChecked:o,isDisabled:r,isFocused:s,checkboxSize:i,hasOwnLabel:u,model:p,handleChange:h,onClickRoot:b}=_n(t,l),x=Z("checkbox"),g=N(()=>[x.b(),x.m(i.value),x.is("disabled",r.value),x.is("bordered",t.border),x.is("checked",o.value)]),d=N(()=>[x.e("input"),x.is("disabled",r.value),x.is("checked",o.value),x.is("indeterminate",t.indeterminate),x.is("focus",s.value)]);return(v,y)=>(R(),Q(ot(!C(u)&&C(a)?"span":"label"),{class:z(C(g)),"aria-controls":v.indeterminate?v.controls:null,onClick:C(b)},{default:Y(()=>[U("span",{class:z(C(d)),tabindex:v.indeterminate?0:void 0,role:v.indeterminate?"checkbox":void 0,"aria-checked":v.indeterminate?"mixed":void 0},[v.trueLabel||v.falseLabel?Me((R(),I("input",{key:0,id:C(n),"onUpdate:modelValue":y[0]||(y[0]=c=>Wt(p)?p.value=c:null),class:z(C(x).e("original")),type:"checkbox","aria-hidden":v.indeterminate?"true":"false",name:v.name,tabindex:v.tabindex,disabled:C(r),"true-value":v.trueLabel,"false-value":v.falseLabel,onChange:y[1]||(y[1]=(...c)=>C(h)&&C(h)(...c)),onFocus:y[2]||(y[2]=c=>s.value=!0),onBlur:y[3]||(y[3]=c=>s.value=!1)},null,42,Fr)),[[cl,C(p)]]):Me((R(),I("input",{key:1,id:C(n),"onUpdate:modelValue":y[4]||(y[4]=c=>Wt(p)?p.value=c:null),class:z(C(x).e("original")),type:"checkbox","aria-hidden":v.indeterminate?"true":"false",disabled:C(r),value:v.label,name:v.name,tabindex:v.tabindex,onChange:y[5]||(y[5]=(...c)=>C(h)&&C(h)(...c)),onFocus:y[6]||(y[6]=c=>s.value=!0),onBlur:y[7]||(y[7]=c=>s.value=!1)},null,42,Ir)),[[cl,C(p)]]),U("span",{class:z(C(x).e("inner"))},null,2)],10,Hr),C(u)?(R(),I("span",{key:0,class:z(C(x).e("label"))},[Ne(v.$slots,"default"),v.$slots.default?le("v-if",!0):(R(),I(We,{key:0},[dl(se(v.label),1)],64))],2)):le("v-if",!0)]),_:3},8,["class","aria-controls","onClick"]))}});var $r=xe(Wr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox.vue"]]);const Vr=["name","tabindex","disabled","true-value","false-value"],Dr=["name","tabindex","disabled","value"],Kr=G({name:"ElCheckboxButton"}),jr=G({...Kr,props:Mn,emits:zn,setup(e){const t=e,l=ua(),{isFocused:n,isChecked:a,isDisabled:o,checkboxButtonSize:r,model:s,handleChange:i}=_n(t,l),u=fe(ut,void 0),p=Z("checkbox"),h=N(()=>{var x,g,d,v;const y=(g=(x=u==null?void 0:u.fill)==null?void 0:x.value)!=null?g:"";return{backgroundColor:y,borderColor:y,color:(v=(d=u==null?void 0:u.textColor)==null?void 0:d.value)!=null?v:"",boxShadow:y?`-1px 0 0 0 ${y}`:void 0}}),b=N(()=>[p.b("button"),p.bm("button",r.value),p.is("disabled",o.value),p.is("checked",a.value),p.is("focus",n.value)]);return(x,g)=>(R(),I("label",{class:z(C(b))},[x.trueLabel||x.falseLabel?Me((R(),I("input",{key:0,"onUpdate:modelValue":g[0]||(g[0]=d=>Wt(s)?s.value=d:null),class:z(C(p).be("button","original")),type:"checkbox",name:x.name,tabindex:x.tabindex,disabled:C(o),"true-value":x.trueLabel,"false-value":x.falseLabel,onChange:g[1]||(g[1]=(...d)=>C(i)&&C(i)(...d)),onFocus:g[2]||(g[2]=d=>n.value=!0),onBlur:g[3]||(g[3]=d=>n.value=!1)},null,42,Vr)),[[cl,C(s)]]):Me((R(),I("input",{key:1,"onUpdate:modelValue":g[4]||(g[4]=d=>Wt(s)?s.value=d:null),class:z(C(p).be("button","original")),type:"checkbox",name:x.name,tabindex:x.tabindex,disabled:C(o),value:x.label,onChange:g[5]||(g[5]=(...d)=>C(i)&&C(i)(...d)),onFocus:g[6]||(g[6]=d=>n.value=!0),onBlur:g[7]||(g[7]=d=>n.value=!1)},null,42,Dr)),[[cl,C(s)]]),x.$slots.default||x.label?(R(),I("span",{key:2,class:z(C(p).be("button","inner")),style:Ce(C(a)?C(h):void 0)},[Ne(x.$slots,"default",{},()=>[dl(se(x.label),1)])],6)):le("v-if",!0)],2))}});var Pn=xe(jr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox-button.vue"]]);const qr=Ae({modelValue:{type:il(Array),default:()=>[]},disabled:Boolean,min:Number,max:Number,size:Kl,label:String,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0}}),Gr={[Ie]:e=>wt(e),change:e=>wt(e)},Ur=G({name:"ElCheckboxGroup"}),Yr=G({...Ur,props:qr,emits:Gr,setup(e,{emit:t}){const l=e,n=Z("checkbox"),{formItem:a}=fl(),{inputId:o,isLabeledByFormItem:r}=La(l,{formItemContext:a}),s=async u=>{t(Ie,u),await re(),t("change",u)},i=N({get(){return l.modelValue},set(u){s(u)}});return bt(ut,{...or($t(l),["size","min","max","disabled","validateEvent","fill","textColor"]),modelValue:i,changeEvent:s}),ee(()=>l.modelValue,()=>{l.validateEvent&&(a==null||a.validate("change").catch(u=>ml()))}),(u,p)=>{var h;return R(),Q(ot(u.tag),{id:C(o),class:z(C(n).b("group")),role:"group","aria-label":C(r)?void 0:u.label||"checkbox-group","aria-labelledby":C(r)?(h=C(a))==null?void 0:h.labelId:void 0},{default:Y(()=>[Ne(u.$slots,"default")]),_:3},8,["id","class","aria-label","aria-labelledby"])}}});var An=xe(Yr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/checkbox/src/checkbox-group.vue"]]);const ct=xt($r,{CheckboxButton:Pn,CheckboxGroup:An});Vt(Pn),Vt(An);const Hn=Ae({closable:Boolean,type:{type:String,values:["success","info","warning","danger",""],default:""},hit:Boolean,disableTransitions:Boolean,color:{type:String,default:""},size:{type:String,values:rl,default:""},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),Xr={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},Qr=G({name:"ElTag"}),Jr=G({...Qr,props:Hn,emits:Xr,setup(e,{emit:t}){const l=e,n=qt(),a=Z("tag"),o=N(()=>{const{type:i,hit:u,effect:p,closable:h,round:b}=l;return[a.b(),a.is("closable",h),a.m(i),a.m(n.value),a.m(p),a.is("hit",u),a.is("round",b)]}),r=i=>{t("close",i)},s=i=>{t("click",i)};return(i,u)=>i.disableTransitions?(R(),I("span",{key:0,class:z(C(o)),style:Ce({backgroundColor:i.color}),onClick:s},[U("span",{class:z(C(a).e("content"))},[Ne(i.$slots,"default")],2),i.closable?(R(),Q(C(Je),{key:0,class:z(C(a).e("close")),onClick:Ke(r,["stop"])},{default:Y(()=>[ve(C(ca))]),_:1},8,["class","onClick"])):le("v-if",!0)],6)):(R(),Q(sl,{key:1,name:`${C(a).namespace.value}-zoom-in-center`,appear:""},{default:Y(()=>[U("span",{class:z(C(o)),style:Ce({backgroundColor:i.color}),onClick:s},[U("span",{class:z(C(a).e("content"))},[Ne(i.$slots,"default")],2),i.closable?(R(),Q(C(Je),{key:0,class:z(C(a).e("close")),onClick:Ke(r,["stop"])},{default:Y(()=>[ve(C(ca))]),_:1},8,["class","onClick"])):le("v-if",!0)],6)]),_:3},8,["name"]))}});var Zr=xe(Jr,[["__file","/home/runner/work/element-plus/element-plus/packages/components/tag/src/tag.vue"]]);const es=xt(Zr),Fn=Symbol("elPaginationKey"),ts=Ae({disabled:Boolean,currentPage:{type:Number,default:1},prevText:{type:String},prevIcon:{type:St}}),ls={click:e=>e instanceof MouseEvent},ns=["disabled","aria-label","aria-disabled"],as={key:0},os=G({name:"ElPaginationPrev"}),rs=G({...os,props:ts,emits:ls,setup(e){const t=e,{t:l}=He(),n=N(()=>t.disabled||t.currentPage<=1);return(a,o)=>(R(),I("button",{type:"button",class:"btn-prev",disabled:C(n),"aria-label":a.prevText||C(l)("el.pagination.prev"),"aria-disabled":C(n),onClick:o[0]||(o[0]=r=>a.$emit("click",r))},[a.prevText?(R(),I("span",as,se(a.prevText),1)):(R(),Q(C(Je),{key:1},{default:Y(()=>[(R(),Q(ot(a.prevIcon)))]),_:1}))],8,ns))}});var ss=xe(rs,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/prev.vue"]]);const is=Ae({disabled:Boolean,currentPage:{type:Number,default:1},pageCount:{type:Number,default:50},nextText:{type:String},nextIcon:{type:St}}),us=["disabled","aria-label","aria-disabled"],cs={key:0},ds=G({name:"ElPaginationNext"}),ps=G({...ds,props:is,emits:["click"],setup(e){const t=e,{t:l}=He(),n=N(()=>t.disabled||t.currentPage===t.pageCount||t.pageCount===0);return(a,o)=>(R(),I("button",{type:"button",class:"btn-next",disabled:C(n),"aria-label":a.nextText||C(l)("el.pagination.next"),"aria-disabled":C(n),onClick:o[0]||(o[0]=r=>a.$emit("click",r))},[a.nextText?(R(),I("span",cs,se(a.nextText),1)):(R(),Q(C(Je),{key:1},{default:Y(()=>[(R(),Q(ot(a.nextIcon)))]),_:1}))],8,us))}});var vs=xe(ps,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/next.vue"]]);const In=Symbol("ElSelectGroup"),tl=Symbol("ElSelect");function hs(e,t){const l=fe(tl),n=fe(In,{disabled:!1}),a=N(()=>Object.prototype.toString.call(e.value).toLowerCase()==="[object object]"),o=N(()=>l.props.multiple?h(l.props.modelValue,e.value):b(e.value,l.props.modelValue)),r=N(()=>{if(l.props.multiple){const d=l.props.modelValue||[];return!o.value&&d.length>=l.props.multipleLimit&&l.props.multipleLimit>0}else return!1}),s=N(()=>e.label||(a.value?"":e.value)),i=N(()=>e.value||e.label||""),u=N(()=>e.disabled||t.groupDisabled||r.value),p=me(),h=(d=[],v)=>{if(a.value){const y=l.props.valueKey;return d&&d.some(c=>Ct(Te(c,y))===Te(v,y))}else return d&&d.includes(v)},b=(d,v)=>{if(a.value){const{valueKey:y}=l.props;return Te(d,y)===Te(v,y)}else return d===v},x=()=>{!e.disabled&&!n.disabled&&(l.hoverIndex=l.optionsArray.indexOf(p.proxy))};ee(()=>s.value,()=>{!e.created&&!l.props.remote&&l.setSelected()}),ee(()=>e.value,(d,v)=>{const{remote:y,valueKey:c}=l.props;if(Object.is(d,v)||(l.onOptionDestroy(v,p.proxy),l.onOptionCreate(p.proxy)),!e.created&&!y){if(c&&typeof d=="object"&&typeof v=="object"&&d[c]===v[c])return;l.setSelected()}}),ee(()=>n.disabled,()=>{t.groupDisabled=n.disabled},{immediate:!0});const{queryChange:g}=Ct(l);return ee(g,d=>{const{query:v}=C(d),y=new RegExp(rr(v),"i");t.visible=y.test(s.value)||e.created,t.visible||l.filteredOptionsCount--},{immediate:!0}),{select:l,currentLabel:s,currentValue:i,itemSelected:o,isDisabled:u,hoverItem:x}}const fs=G({name:"ElOption",componentName:"ElOption",props:{value:{required:!0,type:[String,Number,Boolean,Object]},label:[String,Number],created:Boolean,disabled:{type:Boolean,default:!1}},setup(e){const t=Z("select"),l=It({index:-1,groupDisabled:!1,visible:!0,hitState:!1,hover:!1}),{currentLabel:n,itemSelected:a,isDisabled:o,select:r,hoverItem:s}=hs(e,l),{visible:i,hover:u}=$t(l),p=me().proxy;r.onOptionCreate(p),Dl(()=>{const b=p.value,{selected:x}=r,g=(r.props.multiple?x:[x]).some(d=>d.value===p.value);re(()=>{r.cachedOptions.get(b)===p&&!g&&r.cachedOptions.delete(b)}),r.onOptionDestroy(b,p)});function h(){e.disabled!==!0&&l.groupDisabled!==!0&&r.handleOptionSelect(p,!0)}return{ns:t,currentLabel:n,itemSelected:a,isDisabled:o,select:r,hoverItem:s,visible:i,hover:u,selectOptionClick:h,states:l}}});function ms(e,t,l,n,a,o){return Me((R(),I("li",{class:z([e.ns.be("dropdown","item"),e.ns.is("disabled",e.isDisabled),{selected:e.itemSelected,hover:e.hover}]),onMouseenter:t[0]||(t[0]=(...r)=>e.hoverItem&&e.hoverItem(...r)),onClick:t[1]||(t[1]=Ke((...r)=>e.selectOptionClick&&e.selectOptionClick(...r),["stop"]))},[Ne(e.$slots,"default",{},()=>[U("span",null,se(e.currentLabel),1)])],34)),[[gt,e.visible]])}var Ml=xe(fs,[["render",ms],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/option.vue"]]);const gs=G({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=fe(tl),t=Z("select"),l=N(()=>e.props.popperClass),n=N(()=>e.props.multiple),a=N(()=>e.props.fitInputWidth),o=E("");function r(){var s;o.value=`${(s=e.selectWrapper)==null?void 0:s.offsetWidth}px`}return Ue(()=>{r(),Ft(e.selectWrapper,r)}),{ns:t,minWidth:o,popperClass:l,isMultiple:n,isFitInputWidth:a}}});function bs(e,t,l,n,a,o){return R(),I("div",{class:z([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:Ce({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[Ne(e.$slots,"default")],6)}var ys=xe(gs,[["render",bs],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/select-dropdown.vue"]]);function xs(e){const{t}=He();return It({options:new Map,cachedOptions:new Map,createdLabel:null,createdSelected:!1,selected:e.multiple?[]:{},inputLength:20,inputWidth:0,optionsCount:0,filteredOptionsCount:0,visible:!1,softFocus:!1,selectedLabel:"",hoverIndex:-1,query:"",previousQuery:null,inputHovering:!1,cachedPlaceHolder:"",currentPlaceholder:t("el.select.placeholder"),menuVisibleOnFocus:!1,isOnComposition:!1,isSilentBlur:!1,prefixWidth:11,tagInMultiLine:!1,mouseEnter:!1})}const ws=(e,t,l)=>{const{t:n}=He(),a=Z("select");Ju({from:"suffixTransition",replacement:"override style scheme",version:"2.3.0",scope:"props",ref:"https://element-plus.org/en-US/component/select.html#select-attributes"},N(()=>e.suffixTransition===!1));const o=E(null),r=E(null),s=E(null),i=E(null),u=E(null),p=E(null),h=E(null),b=E(-1),x=da({query:""}),g=da(""),d=E([]);let v=0;const{form:y,formItem:c}=fl(),m=N(()=>!e.filterable||e.multiple||!t.visible),f=N(()=>e.disabled||(y==null?void 0:y.disabled)),M=N(()=>{const w=e.multiple?Array.isArray(e.modelValue)&&e.modelValue.length>0:e.modelValue!==void 0&&e.modelValue!==null&&e.modelValue!=="";return e.clearable&&!f.value&&t.inputHovering&&w}),k=N(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),S=N(()=>a.is("reverse",k.value&&t.visible&&e.suffixTransition)),T=N(()=>e.remote?300:0),F=N(()=>e.loading?e.loadingText||n("el.select.loading"):e.remote&&t.query===""&&t.options.size===0?!1:e.filterable&&t.query&&t.options.size>0&&t.filteredOptionsCount===0?e.noMatchText||n("el.select.noMatch"):t.options.size===0?e.noDataText||n("el.select.noData"):null),P=N(()=>{const w=Array.from(t.options.values()),L=[];return d.value.forEach(H=>{const D=w.findIndex(de=>de.currentLabel===H);D>-1&&L.push(w[D])}),L.length?L:w}),q=N(()=>Array.from(t.cachedOptions.values())),$=N(()=>{const w=P.value.filter(L=>!L.created).some(L=>L.currentLabel===t.query);return e.filterable&&e.allowCreate&&t.query!==""&&!w}),ne=qt(),ae=N(()=>["small"].includes(ne.value)?"small":"default"),he=N({get(){return t.visible&&F.value!==!1},set(w){t.visible=w}});ee([()=>f.value,()=>ne.value,()=>y==null?void 0:y.size],()=>{re(()=>{X()})}),ee(()=>e.placeholder,w=>{t.cachedPlaceHolder=t.currentPlaceholder=w}),ee(()=>e.modelValue,(w,L)=>{e.multiple&&(X(),w&&w.length>0||r.value&&t.query!==""?t.currentPlaceholder="":t.currentPlaceholder=t.cachedPlaceHolder,e.filterable&&!e.reserveKeyword&&(t.query="",O(t.query))),J(),e.filterable&&!e.multiple&&(t.inputLength=20),!Xt(w,L)&&e.validateEvent&&(c==null||c.validate("change").catch(H=>ml()))},{flush:"post",deep:!0}),ee(()=>t.visible,w=>{var L,H,D,de,pe;w?((H=(L=i.value)==null?void 0:L.updatePopper)==null||H.call(L),e.filterable&&(t.filteredOptionsCount=t.optionsCount,t.query=e.remote?"":t.selectedLabel,(de=(D=s.value)==null?void 0:D.focus)==null||de.call(D),e.multiple?(pe=r.value)==null||pe.focus():t.selectedLabel&&(t.currentPlaceholder=`${t.selectedLabel}`,t.selectedLabel=""),O(t.query),!e.multiple&&!e.remote&&(x.value.query="",Dt(x),Dt(g)))):(e.filterable&&(rt(e.filterMethod)&&e.filterMethod(""),rt(e.remoteMethod)&&e.remoteMethod("")),r.value&&r.value.blur(),t.query="",t.previousQuery=null,t.selectedLabel="",t.inputLength=20,t.menuVisibleOnFocus=!1,ue(),re(()=>{r.value&&r.value.value===""&&t.selected.length===0&&(t.currentPlaceholder=t.cachedPlaceHolder)}),e.multiple||(t.selected&&(e.filterable&&e.allowCreate&&t.createdSelected&&t.createdLabel?t.selectedLabel=t.createdLabel:t.selectedLabel=t.selected.currentLabel,e.filterable&&(t.query=t.selectedLabel)),e.filterable&&(t.currentPlaceholder=t.cachedPlaceHolder))),l.emit("visible-change",w)}),ee(()=>t.options.entries(),()=>{var w,L,H;if(!Qe)return;(L=(w=i.value)==null?void 0:w.updatePopper)==null||L.call(w),e.multiple&&X();const D=((H=p.value)==null?void 0:H.querySelectorAll("input"))||[];Array.from(D).includes(document.activeElement)||J(),e.defaultFirstOption&&(e.filterable||e.remote)&&t.filteredOptionsCount&&j()},{flush:"post"}),ee(()=>t.hoverIndex,w=>{Oe(w)&&w>-1?b.value=P.value[w]||{}:b.value={},P.value.forEach(L=>{L.hover=b.value===L})});const X=()=>{re(()=>{var w,L;if(!o.value)return;const H=o.value.$el.querySelector("input");v=v||(H.clientHeight>0?H.clientHeight+2:0);const D=u.value,de=sr(ne.value||(y==null?void 0:y.size)),pe=de===v||v<=0?de:v;H.offsetParent!==null&&(H.style.height=`${(t.selected.length===0?pe:Math.max(D?D.clientHeight+(D.clientHeight>pe?6:0):0,pe))-2}px`),t.tagInMultiLine=Number.parseFloat(H.style.height)>=pe,t.visible&&F.value!==!1&&((L=(w=i.value)==null?void 0:w.updatePopper)==null||L.call(w))})},O=async w=>{if(!(t.previousQuery===w||t.isOnComposition)){if(t.previousQuery===null&&(rt(e.filterMethod)||rt(e.remoteMethod))){t.previousQuery=w;return}t.previousQuery=w,re(()=>{var L,H;t.visible&&((H=(L=i.value)==null?void 0:L.updatePopper)==null||H.call(L))}),t.hoverIndex=-1,e.multiple&&e.filterable&&re(()=>{const L=r.value.value.length*15+20;t.inputLength=e.collapseTags?Math.min(50,L):L,_(),X()}),e.remote&&rt(e.remoteMethod)?(t.hoverIndex=-1,e.remoteMethod(w)):rt(e.filterMethod)?(e.filterMethod(w),Dt(g)):(t.filteredOptionsCount=t.optionsCount,x.value.query=w,Dt(x),Dt(g)),e.defaultFirstOption&&(e.filterable||e.remote)&&t.filteredOptionsCount&&(await re(),j())}},_=()=>{t.currentPlaceholder!==""&&(t.currentPlaceholder=r.value.value?"":t.cachedPlaceHolder)},j=()=>{const w=P.value.filter(D=>D.visible&&!D.disabled&&!D.states.groupDisabled),L=w.find(D=>D.created),H=w[0];t.hoverIndex=ht(P.value,L||H)},J=()=>{var w;if(e.multiple)t.selectedLabel="";else{const H=oe(e.modelValue);(w=H.props)!=null&&w.created?(t.createdLabel=H.props.value,t.createdSelected=!0):t.createdSelected=!1,t.selectedLabel=H.currentLabel,t.selected=H,e.filterable&&(t.query=t.selectedLabel);return}const L=[];Array.isArray(e.modelValue)&&e.modelValue.forEach(H=>{L.push(oe(H))}),t.selected=L,re(()=>{X()})},oe=w=>{let L;const H=ql(w).toLowerCase()==="object",D=ql(w).toLowerCase()==="null",de=ql(w).toLowerCase()==="undefined";for(let Ge=t.cachedOptions.size-1;Ge>=0;Ge--){const _e=q.value[Ge];if(H?Te(_e.value,e.valueKey)===Te(w,e.valueKey):_e.value===w){L={value:w,currentLabel:_e.currentLabel,isDisabled:_e.isDisabled};break}}if(L)return L;const pe=H?w.label:!D&&!de?w:"",Be={value:w,currentLabel:pe};return e.multiple&&(Be.hitState=!1),Be},ue=()=>{setTimeout(()=>{const w=e.valueKey;e.multiple?t.selected.length>0?t.hoverIndex=Math.min.apply(null,t.selected.map(L=>P.value.findIndex(H=>Te(H,w)===Te(L,w)))):t.hoverIndex=-1:t.hoverIndex=P.value.findIndex(L=>V(L)===V(t.selected))},300)},we=()=>{var w,L;be(),(L=(w=i.value)==null?void 0:w.updatePopper)==null||L.call(w),e.multiple&&X()},be=()=>{var w;t.inputWidth=(w=o.value)==null?void 0:w.$el.offsetWidth},Ee=()=>{e.filterable&&t.query!==t.selectedLabel&&(t.query=t.selectedLabel,O(t.query))},ye=Et(()=>{Ee()},T.value),ce=Et(w=>{O(w.target.value)},T.value),ze=w=>{Xt(e.modelValue,w)||l.emit(Ea,w)},je=w=>{if(w.target.value.length<=0&&!nt()){const L=e.modelValue.slice();L.pop(),l.emit(Ie,L),ze(L)}w.target.value.length===1&&e.modelValue.length===0&&(t.currentPlaceholder=t.cachedPlaceHolder)},pt=(w,L)=>{const H=t.selected.indexOf(L);if(H>-1&&!f.value){const D=e.modelValue.slice();D.splice(H,1),l.emit(Ie,D),ze(D),l.emit("remove-tag",L.value)}w.stopPropagation()},vt=w=>{w.stopPropagation();const L=e.multiple?[]:"";if(!Bt(L))for(const H of t.selected)H.isDisabled&&L.push(H.value);l.emit(Ie,L),ze(L),t.hoverIndex=-1,t.visible=!1,l.emit("clear")},tt=(w,L)=>{var H;if(e.multiple){const D=(e.modelValue||[]).slice(),de=ht(D,w.value);de>-1?D.splice(de,1):(e.multipleLimit<=0||D.length{qe(w)})},ht=(w=[],L)=>{if(!yt(L))return w.indexOf(L);const H=e.valueKey;let D=-1;return w.some((de,pe)=>Ct(Te(de,H))===Te(L,H)?(D=pe,!0):!1),D},lt=()=>{t.softFocus=!0;const w=r.value||o.value;w&&(w==null||w.focus())},qe=w=>{var L,H,D,de,pe;const Be=Array.isArray(w)?w[0]:w;let Ge=null;if(Be!=null&&Be.value){const _e=P.value.filter(Wl=>Wl.value===Be.value);_e.length>0&&(Ge=_e[0].$el)}if(i.value&&Ge){const _e=(de=(D=(H=(L=i.value)==null?void 0:L.popperRef)==null?void 0:H.contentRef)==null?void 0:D.querySelector)==null?void 0:de.call(D,`.${a.be("dropdown","wrap")}`);_e&&Gu(_e,Ge)}(pe=h.value)==null||pe.handleScroll()},Nt=w=>{t.optionsCount++,t.filteredOptionsCount++,t.options.set(w.value,w),t.cachedOptions.set(w.value,w)},Rt=(w,L)=>{t.options.get(w)===L&&(t.optionsCount--,t.filteredOptionsCount--,t.options.delete(w))},Tt=w=>{w.code!==xu.backspace&&nt(!1),t.inputLength=r.value.value.length*15+20,X()},nt=w=>{if(!Array.isArray(t.selected))return;const L=t.selected[t.selected.length-1];if(L)return w===!0||w===!1?(L.hitState=w,w):(L.hitState=!L.hitState,L.hitState)},Mt=w=>{const L=w.target.value;if(w.type==="compositionend")t.isOnComposition=!1,re(()=>O(L));else{const H=L[L.length-1]||"";t.isOnComposition=!Uu(H)}},zt=()=>{re(()=>qe(t.selected))},_t=w=>{t.softFocus?t.softFocus=!1:((e.automaticDropdown||e.filterable)&&(e.filterable&&!t.visible&&(t.menuVisibleOnFocus=!0),t.visible=!0),l.emit("focus",w))},De=()=>{var w,L,H;t.visible=!1,(w=o.value)==null||w.blur(),(H=(L=s.value)==null?void 0:L.blur)==null||H.call(L)},ft=w=>{re(()=>{t.isSilentBlur?t.isSilentBlur=!1:l.emit("blur",w)}),t.softFocus=!1},Pt=w=>{vt(w)},mt=()=>{t.visible=!1},At=w=>{t.visible&&(w.preventDefault(),w.stopPropagation(),t.visible=!1)},A=w=>{var L;w&&!t.mouseEnter||f.value||(t.menuVisibleOnFocus?t.menuVisibleOnFocus=!1:(!i.value||!i.value.isFocusInsideContent())&&(t.visible=!t.visible),t.visible&&((L=r.value||o.value)==null||L.focus()))},B=()=>{t.visible?P.value[t.hoverIndex]&&tt(P.value[t.hoverIndex],void 0):A()},V=w=>yt(w.value)?Te(w.value,e.valueKey):w.value,K=N(()=>P.value.filter(w=>w.visible).every(w=>w.disabled)),te=N(()=>t.selected.slice(0,e.maxCollapseTags)),ie=N(()=>t.selected.slice(e.maxCollapseTags)),ke=w=>{if(!t.visible){t.visible=!0;return}if(!(t.options.size===0||t.filteredOptionsCount===0)&&!t.isOnComposition&&!K.value){w==="next"?(t.hoverIndex++,t.hoverIndex===t.options.size&&(t.hoverIndex=0)):w==="prev"&&(t.hoverIndex--,t.hoverIndex<0&&(t.hoverIndex=t.options.size-1));const L=P.value[t.hoverIndex];(L.disabled===!0||L.states.groupDisabled===!0||!L.visible)&&ke(w),re(()=>qe(b.value))}};return{optionList:d,optionsArray:P,selectSize:ne,handleResize:we,debouncedOnInputChange:ye,debouncedQueryChange:ce,deletePrevTag:je,deleteTag:pt,deleteSelected:vt,handleOptionSelect:tt,scrollToOption:qe,readonly:m,resetInputHeight:X,showClose:M,iconComponent:k,iconReverse:S,showNewOption:$,collapseTagSize:ae,setSelected:J,managePlaceholder:_,selectDisabled:f,emptyText:F,toggleLastOptionHitState:nt,resetInputState:Tt,handleComposition:Mt,onOptionCreate:Nt,onOptionDestroy:Rt,handleMenuEnter:zt,handleFocus:_t,blur:De,handleBlur:ft,handleClearClick:Pt,handleClose:mt,handleKeydownEscape:At,toggleMenu:A,selectOption:B,getValueKey:V,navigateOptions:ke,dropMenuVisible:he,queryChange:x,groupQueryChange:g,showTagList:te,collapseTagList:ie,reference:o,input:r,iOSInput:s,tooltipRef:i,tags:u,selectWrapper:p,scrollbar:h,handleMouseEnter:()=>{t.mouseEnter=!0},handleMouseLeave:()=>{t.mouseEnter=!1}}};var Cs=G({name:"ElOptions",emits:["update-options"],setup(e,{slots:t,emit:l}){let n=[];function a(o,r){if(o.length!==r.length)return!1;for(const[s]of o.entries())if(o[s]!=r[s])return!1;return!0}return()=>{var o,r;const s=(o=t.default)==null?void 0:o.call(t),i=[];function u(p){Array.isArray(p)&&p.forEach(h=>{var b,x,g,d;const v=(b=(h==null?void 0:h.type)||{})==null?void 0:b.name;v==="ElOptionGroup"?u(!Bt(h.children)&&!Array.isArray(h.children)&&rt((x=h.children)==null?void 0:x.default)?(g=h.children)==null?void 0:g.default():h.children):v==="ElOption"?i.push((d=h.props)==null?void 0:d.label):Array.isArray(h.children)&&u(h.children)})}return s.length&&u((r=s[0])==null?void 0:r.children),a(i,n)||(n=i,l("update-options",i)),s}}});const Bn="ElSelect",Ss=G({name:Bn,componentName:Bn,components:{ElInput:Oa,ElSelectMenu:ys,ElOption:Ml,ElOptions:Cs,ElTag:es,ElScrollbar:Cl,ElTooltip:ba,ElIcon:Je},directives:{ClickOutside:yn},props:{name:String,id:String,modelValue:{type:[Array,String,Number,Boolean,Object],default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:{type:String,validator:ir},effect:{type:String,default:"light"},disabled:Boolean,clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperOptions:{type:Object,default:()=>({})},remote:Boolean,loadingText:String,noMatchText:String,noDataText:String,remoteMethod:Function,filterMethod:Function,multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:{type:Boolean,default:!1},maxCollapseTags:{type:Number,default:1},teleported:Pu.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:St,default:wu},fitInputWidth:{type:Boolean,default:!1},suffixIcon:{type:St,default:pa},tagType:{...Hn.type,default:"info"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:{type:Boolean,default:!1},suffixTransition:{type:Boolean,default:!0},placement:{type:String,values:Au,default:"bottom-start"}},emits:[Ie,Ea,"remove-tag","clear","visible-change","focus","blur"],setup(e,t){const l=Z("select"),n=Z("input"),{t:a}=He(),o=xs(e),{optionList:r,optionsArray:s,selectSize:i,readonly:u,handleResize:p,collapseTagSize:h,debouncedOnInputChange:b,debouncedQueryChange:x,deletePrevTag:g,deleteTag:d,deleteSelected:v,handleOptionSelect:y,scrollToOption:c,setSelected:m,resetInputHeight:f,managePlaceholder:M,showClose:k,selectDisabled:S,iconComponent:T,iconReverse:F,showNewOption:P,emptyText:q,toggleLastOptionHitState:$,resetInputState:ne,handleComposition:ae,onOptionCreate:he,onOptionDestroy:X,handleMenuEnter:O,handleFocus:_,blur:j,handleBlur:J,handleClearClick:oe,handleClose:ue,handleKeydownEscape:we,toggleMenu:be,selectOption:Ee,getValueKey:ye,navigateOptions:ce,dropMenuVisible:ze,reference:je,input:pt,iOSInput:vt,tooltipRef:tt,tags:ht,selectWrapper:lt,scrollbar:qe,queryChange:Nt,groupQueryChange:Rt,handleMouseEnter:Tt,handleMouseLeave:nt,showTagList:Mt,collapseTagList:zt}=ws(e,o,t),{focus:_t}=ur(je),{inputWidth:De,selected:ft,inputLength:Pt,filteredOptionsCount:mt,visible:At,softFocus:A,selectedLabel:B,hoverIndex:V,query:K,inputHovering:te,currentPlaceholder:ie,menuVisibleOnFocus:ke,isOnComposition:w,isSilentBlur:L,options:H,cachedOptions:D,optionsCount:de,prefixWidth:pe,tagInMultiLine:Be}=$t(o),Ge=N(()=>{const Pe=[l.b()],at=C(i);return at&&Pe.push(l.m(at)),e.disabled&&Pe.push(l.m("disabled")),Pe}),_e=N(()=>({maxWidth:`${C(De)-32}px`,width:"100%"})),Wl=N(()=>({maxWidth:`${C(De)>123?C(De)-123:C(De)-75}px`}));bt(tl,It({props:e,options:H,optionsArray:s,cachedOptions:D,optionsCount:de,filteredOptionsCount:mt,hoverIndex:V,handleOptionSelect:y,onOptionCreate:he,onOptionDestroy:X,selectWrapper:lt,selected:ft,setSelected:m,queryChange:Nt,groupQueryChange:Rt})),Ue(()=>{o.cachedPlaceHolder=ie.value=e.placeholder||(()=>a("el.select.placeholder")),e.multiple&&Array.isArray(e.modelValue)&&e.modelValue.length>0&&(ie.value=""),Ft(lt,p),e.remote&&e.multiple&&f(),re(()=>{const Pe=je.value&&je.value.$el;if(Pe&&(De.value=Pe.getBoundingClientRect().width,t.slots.prefix)){const at=Pe.querySelector(`.${n.e("prefix")}`);pe.value=Math.max(at.getBoundingClientRect().width+5,30)}}),m()}),e.multiple&&!Array.isArray(e.modelValue)&&t.emit(Ie,[]),!e.multiple&&Array.isArray(e.modelValue)&&t.emit(Ie,"");const du=N(()=>{var Pe,at;return(at=(Pe=tt.value)==null?void 0:Pe.popperRef)==null?void 0:at.contentRef});return{isIOS:Cu,onOptionsRendered:Pe=>{r.value=Pe},tagInMultiLine:Be,prefixWidth:pe,selectSize:i,readonly:u,handleResize:p,collapseTagSize:h,debouncedOnInputChange:b,debouncedQueryChange:x,deletePrevTag:g,deleteTag:d,deleteSelected:v,handleOptionSelect:y,scrollToOption:c,inputWidth:De,selected:ft,inputLength:Pt,filteredOptionsCount:mt,visible:At,softFocus:A,selectedLabel:B,hoverIndex:V,query:K,inputHovering:te,currentPlaceholder:ie,menuVisibleOnFocus:ke,isOnComposition:w,isSilentBlur:L,options:H,resetInputHeight:f,managePlaceholder:M,showClose:k,selectDisabled:S,iconComponent:T,iconReverse:F,showNewOption:P,emptyText:q,toggleLastOptionHitState:$,resetInputState:ne,handleComposition:ae,handleMenuEnter:O,handleFocus:_,blur:j,handleBlur:J,handleClearClick:oe,handleClose:ue,handleKeydownEscape:we,toggleMenu:be,selectOption:Ee,getValueKey:ye,navigateOptions:ce,dropMenuVisible:ze,focus:_t,reference:je,input:pt,iOSInput:vt,tooltipRef:tt,popperPaneRef:du,tags:ht,selectWrapper:lt,scrollbar:qe,wrapperKls:Ge,selectTagsStyle:_e,nsSelect:l,tagTextStyle:Wl,handleMouseEnter:Tt,handleMouseLeave:nt,showTagList:Mt,collapseTagList:zt}}}),ks=["disabled","autocomplete"],Es=["disabled"],Os={style:{height:"100%",display:"flex","justify-content":"center","align-items":"center"}};function Ls(e,t,l,n,a,o){const r=ge("el-tag"),s=ge("el-tooltip"),i=ge("el-icon"),u=ge("el-input"),p=ge("el-option"),h=ge("el-options"),b=ge("el-scrollbar"),x=ge("el-select-menu"),g=Gl("click-outside");return Me((R(),I("div",{ref:"selectWrapper",class:z(e.wrapperKls),onMouseenter:t[21]||(t[21]=(...d)=>e.handleMouseEnter&&e.handleMouseEnter(...d)),onMouseleave:t[22]||(t[22]=(...d)=>e.handleMouseLeave&&e.handleMouseLeave(...d)),onClick:t[23]||(t[23]=Ke((...d)=>e.toggleMenu&&e.toggleMenu(...d),["stop"]))},[ve(s,{ref:"tooltipRef",visible:e.dropMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-options":e.popperOptions,"fallback-placements":["bottom-start","top-start","right","left"],effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,onShow:e.handleMenuEnter},{default:Y(()=>[U("div",{class:"select-trigger",onMouseenter:t[19]||(t[19]=d=>e.inputHovering=!0),onMouseleave:t[20]||(t[20]=d=>e.inputHovering=!1)},[e.multiple?(R(),I("div",{key:0,ref:"tags",class:z([e.nsSelect.e("tags"),e.nsSelect.is("disabled",e.selectDisabled)]),style:Ce(e.selectTagsStyle)},[e.collapseTags&&e.selected.length?(R(),Q(sl,{key:0,onAfterLeave:e.resetInputHeight},{default:Y(()=>[U("span",{class:z([e.nsSelect.b("tags-wrapper"),{"has-prefix":e.prefixWidth&&e.selected.length}])},[(R(!0),I(We,null,st(e.showTagList,d=>(R(),Q(r,{key:e.getValueKey(d),closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,hit:d.hitState,type:e.tagType,"disable-transitions":"",onClose:v=>e.deleteTag(v,d)},{default:Y(()=>[U("span",{class:z(e.nsSelect.e("tags-text")),style:Ce(e.tagTextStyle)},se(d.currentLabel),7)]),_:2},1032,["closable","size","hit","type","onClose"]))),128)),e.selected.length>e.maxCollapseTags?(R(),Q(r,{key:0,closable:!1,size:e.collapseTagSize,type:e.tagType,"disable-transitions":""},{default:Y(()=>[e.collapseTagsTooltip?(R(),Q(s,{key:0,disabled:e.dropMenuVisible,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom",teleported:e.teleported},{default:Y(()=>[U("span",{class:z(e.nsSelect.e("tags-text"))},"+ "+se(e.selected.length-e.maxCollapseTags),3)]),content:Y(()=>[U("div",{class:z(e.nsSelect.e("collapse-tags"))},[(R(!0),I(We,null,st(e.collapseTagList,d=>(R(),I("div",{key:e.getValueKey(d),class:z(e.nsSelect.e("collapse-tag"))},[ve(r,{class:"in-tooltip",closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,hit:d.hitState,type:e.tagType,"disable-transitions":"",style:{margin:"2px"},onClose:v=>e.deleteTag(v,d)},{default:Y(()=>[U("span",{class:z(e.nsSelect.e("tags-text")),style:Ce({maxWidth:e.inputWidth-75+"px"})},se(d.currentLabel),7)]),_:2},1032,["closable","size","hit","type","onClose"])],2))),128))],2)]),_:1},8,["disabled","effect","teleported"])):(R(),I("span",{key:1,class:z(e.nsSelect.e("tags-text"))},"+ "+se(e.selected.length-e.maxCollapseTags),3))]),_:1},8,["size","type"])):le("v-if",!0)],2)]),_:1},8,["onAfterLeave"])):le("v-if",!0),e.collapseTags?le("v-if",!0):(R(),Q(sl,{key:1,onAfterLeave:e.resetInputHeight},{default:Y(()=>[U("span",{class:z([e.nsSelect.b("tags-wrapper"),{"has-prefix":e.prefixWidth&&e.selected.length}])},[(R(!0),I(We,null,st(e.selected,d=>(R(),Q(r,{key:e.getValueKey(d),closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,hit:d.hitState,type:e.tagType,"disable-transitions":"",onClose:v=>e.deleteTag(v,d)},{default:Y(()=>[U("span",{class:z(e.nsSelect.e("tags-text")),style:Ce({maxWidth:e.inputWidth-75+"px"})},se(d.currentLabel),7)]),_:2},1032,["closable","size","hit","type","onClose"]))),128))],2)]),_:1},8,["onAfterLeave"])),e.filterable?Me((R(),I("input",{key:2,ref:"input","onUpdate:modelValue":t[0]||(t[0]=d=>e.query=d),type:"text",class:z([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize),e.nsSelect.is("disabled",e.selectDisabled)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:Ce({marginLeft:e.prefixWidth&&!e.selected.length||e.tagInMultiLine?`${e.prefixWidth}px`:"",flexGrow:1,width:`${e.inputLength/(e.inputWidth-32)}%`,maxWidth:`${e.inputWidth-42}px`}),onFocus:t[1]||(t[1]=(...d)=>e.handleFocus&&e.handleFocus(...d)),onBlur:t[2]||(t[2]=(...d)=>e.handleBlur&&e.handleBlur(...d)),onKeyup:t[3]||(t[3]=(...d)=>e.managePlaceholder&&e.managePlaceholder(...d)),onKeydown:[t[4]||(t[4]=(...d)=>e.resetInputState&&e.resetInputState(...d)),t[5]||(t[5]=Fe(Ke(d=>e.navigateOptions("next"),["prevent"]),["down"])),t[6]||(t[6]=Fe(Ke(d=>e.navigateOptions("prev"),["prevent"]),["up"])),t[7]||(t[7]=Fe((...d)=>e.handleKeydownEscape&&e.handleKeydownEscape(...d),["esc"])),t[8]||(t[8]=Fe(Ke((...d)=>e.selectOption&&e.selectOption(...d),["stop","prevent"]),["enter"])),t[9]||(t[9]=Fe((...d)=>e.deletePrevTag&&e.deletePrevTag(...d),["delete"])),t[10]||(t[10]=Fe(d=>e.visible=!1,["tab"]))],onCompositionstart:t[11]||(t[11]=(...d)=>e.handleComposition&&e.handleComposition(...d)),onCompositionupdate:t[12]||(t[12]=(...d)=>e.handleComposition&&e.handleComposition(...d)),onCompositionend:t[13]||(t[13]=(...d)=>e.handleComposition&&e.handleComposition(...d)),onInput:t[14]||(t[14]=(...d)=>e.debouncedQueryChange&&e.debouncedQueryChange(...d))},null,46,ks)),[[Su,e.query]]):le("v-if",!0)],6)):le("v-if",!0),le(" fix: https://github.com/element-plus/element-plus/issues/11415 "),e.isIOS&&!e.multiple&&e.filterable&&e.readonly?(R(),I("input",{key:1,ref:"iOSInput",class:z([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize),e.nsSelect.em("input","iOS")]),disabled:e.selectDisabled,type:"text"},null,10,Es)):le("v-if",!0),ve(u,{id:e.id,ref:"reference",modelValue:e.selectedLabel,"onUpdate:modelValue":t[15]||(t[15]=d=>e.selectedLabel=d),type:"text",placeholder:typeof e.currentPlaceholder=="function"?e.currentPlaceholder():e.currentPlaceholder,name:e.name,autocomplete:e.autocomplete,size:e.selectSize,disabled:e.selectDisabled,readonly:e.readonly,"validate-event":!1,class:z([e.nsSelect.is("focus",e.visible)]),tabindex:e.multiple&&e.filterable?-1:void 0,onFocus:e.handleFocus,onBlur:e.handleBlur,onInput:e.debouncedOnInputChange,onPaste:e.debouncedOnInputChange,onCompositionstart:e.handleComposition,onCompositionupdate:e.handleComposition,onCompositionend:e.handleComposition,onKeydown:[t[16]||(t[16]=Fe(Ke(d=>e.navigateOptions("next"),["stop","prevent"]),["down"])),t[17]||(t[17]=Fe(Ke(d=>e.navigateOptions("prev"),["stop","prevent"]),["up"])),Fe(Ke(e.selectOption,["stop","prevent"]),["enter"]),Fe(e.handleKeydownEscape,["esc"]),t[18]||(t[18]=Fe(d=>e.visible=!1,["tab"]))]},ku({suffix:Y(()=>[e.iconComponent&&!e.showClose?(R(),Q(i,{key:0,class:z([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:Y(()=>[(R(),Q(ot(e.iconComponent)))]),_:1},8,["class"])):le("v-if",!0),e.showClose&&e.clearIcon?(R(),Q(i,{key:1,class:z([e.nsSelect.e("caret"),e.nsSelect.e("icon")]),onClick:e.handleClearClick},{default:Y(()=>[(R(),Q(ot(e.clearIcon)))]),_:1},8,["class","onClick"])):le("v-if",!0)]),_:2},[e.$slots.prefix?{name:"prefix",fn:Y(()=>[U("div",Os,[Ne(e.$slots,"prefix")])])}:void 0]),1032,["id","modelValue","placeholder","name","autocomplete","size","disabled","readonly","class","tabindex","onFocus","onBlur","onInput","onPaste","onCompositionstart","onCompositionupdate","onCompositionend","onKeydown"])],32)]),content:Y(()=>[ve(x,null,{default:Y(()=>[Me(ve(b,{ref:"scrollbar",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:z([e.nsSelect.is("empty",!e.allowCreate&&!!e.query&&e.filteredOptionsCount===0)])},{default:Y(()=>[e.showNewOption?(R(),Q(p,{key:0,value:e.query,created:!0},null,8,["value"])):le("v-if",!0),ve(h,{onUpdateOptions:e.onOptionsRendered},{default:Y(()=>[Ne(e.$slots,"default")]),_:3},8,["onUpdateOptions"])]),_:3},8,["wrap-class","view-class","class"]),[[gt,e.options.size>0&&!e.loading]]),e.emptyText&&(!e.allowCreate||e.loading||e.allowCreate&&e.options.size===0)?(R(),I(We,{key:0},[e.$slots.empty?Ne(e.$slots,"empty",{key:0}):(R(),I("p",{key:1,class:z(e.nsSelect.be("dropdown","empty"))},se(e.emptyText),3))],64)):le("v-if",!0)]),_:3})]),_:3},8,["visible","placement","teleported","popper-class","popper-options","effect","transition","persistent","onShow"])],34)),[[g,e.handleClose,e.popperPaneRef]])}var Ns=xe(Ss,[["render",Ls],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/select.vue"]]);const Rs=G({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:{type:Boolean,default:!1}},setup(e){const t=Z("select"),l=E(!0),n=me(),a=E([]);bt(In,It({...$t(e)}));const o=fe(tl);Ue(()=>{a.value=r(n.subTree)});const r=i=>{const u=[];return Array.isArray(i.children)&&i.children.forEach(p=>{var h;p.type&&p.type.name==="ElOption"&&p.component&&p.component.proxy?u.push(p.component.proxy):(h=p.children)!=null&&h.length&&u.push(...r(p))}),u},{groupQueryChange:s}=Ct(o);return ee(s,()=>{l.value=a.value.some(i=>i.visible===!0)},{flush:"post"}),{visible:l,ns:t}}});function Ts(e,t,l,n,a,o){return Me((R(),I("ul",{class:z(e.ns.be("group","wrap"))},[U("li",{class:z(e.ns.be("group","title"))},se(e.label),3),U("li",null,[U("ul",{class:z(e.ns.b("group"))},[Ne(e.$slots,"default")],2)])],2)),[[gt,e.visible]])}var Wn=xe(Rs,[["render",Ts],["__file","/home/runner/work/element-plus/element-plus/packages/components/select/src/option-group.vue"]]);const Ms=xt(Ns,{Option:Ml,OptionGroup:Wn}),zs=Vt(Ml);Vt(Wn);const zl=()=>fe(Fn,{}),_s=Ae({pageSize:{type:Number,required:!0},pageSizes:{type:il(Array),default:()=>va([10,20,30,40,50,100])},popperClass:{type:String},disabled:Boolean,size:{type:String,values:rl}}),Ps=G({name:"ElPaginationSizes"}),As=G({...Ps,props:_s,emits:["page-size-change"],setup(e,{emit:t}){const l=e,{t:n}=He(),a=Z("pagination"),o=zl(),r=E(l.pageSize);ee(()=>l.pageSizes,(u,p)=>{if(!Xt(u,p)&&Array.isArray(u)){const h=u.includes(l.pageSize)?l.pageSize:l.pageSizes[0];t("page-size-change",h)}}),ee(()=>l.pageSize,u=>{r.value=u});const s=N(()=>l.pageSizes);function i(u){var p;u!==r.value&&(r.value=u,(p=o.handleSizeChange)==null||p.call(o,Number(u)))}return(u,p)=>(R(),I("span",{class:z(C(a).e("sizes"))},[ve(C(Ms),{"model-value":r.value,disabled:u.disabled,"popper-class":u.popperClass,size:u.size,"validate-event":!1,onChange:i},{default:Y(()=>[(R(!0),I(We,null,st(C(s),h=>(R(),Q(C(zs),{key:h,value:h,label:h+C(n)("el.pagination.pagesize")},null,8,["value","label"]))),128))]),_:1},8,["model-value","disabled","popper-class","size"])],2))}});var Hs=xe(As,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/sizes.vue"]]);const Fs=Ae({size:{type:String,values:rl}}),Is=["disabled"],Bs=G({name:"ElPaginationJumper"}),Ws=G({...Bs,props:Fs,setup(e){const{t}=He(),l=Z("pagination"),{pageCount:n,disabled:a,currentPage:o,changeEvent:r}=zl(),s=E(),i=N(()=>{var h;return(h=s.value)!=null?h:o==null?void 0:o.value});function u(h){s.value=h?+h:""}function p(h){h=Math.trunc(+h),r==null||r(h),s.value=void 0}return(h,b)=>(R(),I("span",{class:z(C(l).e("jump")),disabled:C(a)},[U("span",{class:z([C(l).e("goto")])},se(C(t)("el.pagination.goto")),3),ve(C(Oa),{size:h.size,class:z([C(l).e("editor"),C(l).is("in-pagination")]),min:1,max:C(n),disabled:C(a),"model-value":C(i),"validate-event":!1,label:C(t)("el.pagination.page"),type:"number","onUpdate:modelValue":u,onChange:p},null,8,["size","class","max","disabled","model-value","label"]),U("span",{class:z([C(l).e("classifier")])},se(C(t)("el.pagination.pageClassifier")),3)],10,Is))}});var $s=xe(Ws,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/jumper.vue"]]);const Vs=Ae({total:{type:Number,default:1e3}}),Ds=["disabled"],Ks=G({name:"ElPaginationTotal"}),js=G({...Ks,props:Vs,setup(e){const{t}=He(),l=Z("pagination"),{disabled:n}=zl();return(a,o)=>(R(),I("span",{class:z(C(l).e("total")),disabled:C(n)},se(C(t)("el.pagination.total",{total:a.total})),11,Ds))}});var qs=xe(js,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/total.vue"]]);const Gs=Ae({currentPage:{type:Number,default:1},pageCount:{type:Number,required:!0},pagerCount:{type:Number,default:7},disabled:Boolean}),Us=["onKeyup"],Ys=["aria-current","aria-label","tabindex"],Xs=["tabindex","aria-label"],Qs=["aria-current","aria-label","tabindex"],Js=["tabindex","aria-label"],Zs=["aria-current","aria-label","tabindex"],ei=G({name:"ElPaginationPager"}),ti=G({...ei,props:Gs,emits:["change"],setup(e,{emit:t}){const l=e,n=Z("pager"),a=Z("icon"),{t:o}=He(),r=E(!1),s=E(!1),i=E(!1),u=E(!1),p=E(!1),h=E(!1),b=N(()=>{const c=l.pagerCount,m=(c-1)/2,f=Number(l.currentPage),M=Number(l.pageCount);let k=!1,S=!1;M>c&&(f>c-m&&(k=!0),fl.disabled?-1:0);kt(()=>{const c=(l.pagerCount-1)/2;r.value=!1,s.value=!1,l.pageCount>l.pagerCount&&(l.currentPage>l.pagerCount-c&&(r.value=!0),l.currentPageM&&(f=M)),f!==k&&t("change",f)}return(c,m)=>(R(),I("ul",{class:z(C(n).b()),onClick:y,onKeyup:Fe(v,["enter"])},[c.pageCount>0?(R(),I("li",{key:0,class:z([[C(n).is("active",c.currentPage===1),C(n).is("disabled",c.disabled)],"number"]),"aria-current":c.currentPage===1,"aria-label":C(o)("el.pagination.currentPage",{pager:1}),tabindex:C(x)}," 1 ",10,Ys)):le("v-if",!0),r.value?(R(),I("li",{key:1,class:z(["more","btn-quickprev",C(a).b(),C(n).is("disabled",c.disabled)]),tabindex:C(x),"aria-label":C(o)("el.pagination.prevPages",{pager:c.pagerCount-2}),onMouseenter:m[0]||(m[0]=f=>g(!0)),onMouseleave:m[1]||(m[1]=f=>i.value=!1),onFocus:m[2]||(m[2]=f=>d(!0)),onBlur:m[3]||(m[3]=f=>p.value=!1)},[(i.value||p.value)&&!c.disabled?(R(),Q(C(Eu),{key:0})):(R(),Q(C(ha),{key:1}))],42,Xs)):le("v-if",!0),(R(!0),I(We,null,st(C(b),f=>(R(),I("li",{key:f,class:z([[C(n).is("active",c.currentPage===f),C(n).is("disabled",c.disabled)],"number"]),"aria-current":c.currentPage===f,"aria-label":C(o)("el.pagination.currentPage",{pager:f}),tabindex:C(x)},se(f),11,Qs))),128)),s.value?(R(),I("li",{key:2,class:z(["more","btn-quicknext",C(a).b(),C(n).is("disabled",c.disabled)]),tabindex:C(x),"aria-label":C(o)("el.pagination.nextPages",{pager:c.pagerCount-2}),onMouseenter:m[4]||(m[4]=f=>g()),onMouseleave:m[5]||(m[5]=f=>u.value=!1),onFocus:m[6]||(m[6]=f=>d()),onBlur:m[7]||(m[7]=f=>h.value=!1)},[(u.value||h.value)&&!c.disabled?(R(),Q(C(Ou),{key:0})):(R(),Q(C(ha),{key:1}))],42,Js)):le("v-if",!0),c.pageCount>1?(R(),I("li",{key:3,class:z([[C(n).is("active",c.currentPage===c.pageCount),C(n).is("disabled",c.disabled)],"number"]),"aria-current":c.currentPage===c.pageCount,"aria-label":C(o)("el.pagination.currentPage",{pager:c.pageCount}),tabindex:C(x)},se(c.pageCount),11,Zs)):le("v-if",!0)],42,Us))}});var li=xe(ti,[["__file","/home/runner/work/element-plus/element-plus/packages/components/pagination/src/components/pager.vue"]]);const Le=e=>typeof e!="number",ni=Ae({total:Number,pageSize:Number,defaultPageSize:Number,currentPage:Number,defaultCurrentPage:Number,pageCount:Number,pagerCount:{type:Number,validator:e=>Oe(e)&&Math.trunc(e)===e&&e>4&&e<22&&e%2===1,default:7},layout:{type:String,default:["prev","pager","next","jumper","->","total"].join(", ")},pageSizes:{type:il(Array),default:()=>va([10,20,30,40,50,100])},popperClass:{type:String,default:""},prevText:{type:String,default:""},prevIcon:{type:St,default:()=>Lu},nextText:{type:String,default:""},nextIcon:{type:St,default:()=>Ul},small:Boolean,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean}),ai={"update:current-page":e=>Oe(e),"update:page-size":e=>Oe(e),"size-change":e=>Oe(e),"current-change":e=>Oe(e),"prev-click":e=>Oe(e),"next-click":e=>Oe(e)},$n="ElPagination";var oi=G({name:$n,props:ni,emits:ai,setup(e,{emit:t,slots:l}){const{t:n}=He(),a=Z("pagination"),o=me().vnode.props||{},r="onUpdate:currentPage"in o||"onUpdate:current-page"in o||"onCurrentChange"in o,s="onUpdate:pageSize"in o||"onUpdate:page-size"in o||"onSizeChange"in o,i=N(()=>{if(Le(e.total)&&Le(e.pageCount)||!Le(e.currentPage)&&!r)return!1;if(e.layout.includes("sizes")){if(Le(e.pageCount)){if(!Le(e.total)&&!Le(e.pageSize)&&!s)return!1}else if(!s)return!1}return!0}),u=E(Le(e.defaultPageSize)?10:e.defaultPageSize),p=E(Le(e.defaultCurrentPage)?1:e.defaultCurrentPage),h=N({get(){return Le(e.pageSize)?u.value:e.pageSize},set(m){Le(e.pageSize)&&(u.value=m),s&&(t("update:page-size",m),t("size-change",m))}}),b=N(()=>{let m=0;return Le(e.pageCount)?Le(e.total)||(m=Math.max(1,Math.ceil(e.total/h.value))):m=e.pageCount,m}),x=N({get(){return Le(e.currentPage)?p.value:e.currentPage},set(m){let f=m;m<1?f=1:m>b.value&&(f=b.value),Le(e.currentPage)&&(p.value=f),r&&(t("update:current-page",f),t("current-change",f))}});ee(b,m=>{x.value>m&&(x.value=m)});function g(m){x.value=m}function d(m){h.value=m;const f=b.value;x.value>f&&(x.value=f)}function v(){e.disabled||(x.value-=1,t("prev-click",x.value))}function y(){e.disabled||(x.value+=1,t("next-click",x.value))}function c(m,f){m&&(m.props||(m.props={}),m.props.class=[m.props.class,f].join(" "))}return bt(Fn,{pageCount:b,disabled:N(()=>e.disabled),currentPage:x,changeEvent:g,handleSizeChange:d}),()=>{var m,f;if(!i.value)return ml($n,n("el.pagination.deprecationWarning")),null;if(!e.layout||e.hideOnSinglePage&&b.value<=1)return null;const M=[],k=[],S=W("div",{class:a.e("rightwrapper")},k),T={prev:W(ss,{disabled:e.disabled,currentPage:x.value,prevText:e.prevText,prevIcon:e.prevIcon,onClick:v}),jumper:W($s,{size:e.small?"small":"default"}),pager:W(li,{currentPage:x.value,pageCount:b.value,pagerCount:e.pagerCount,onChange:g,disabled:e.disabled}),next:W(vs,{disabled:e.disabled,currentPage:x.value,pageCount:b.value,nextText:e.nextText,nextIcon:e.nextIcon,onClick:y}),sizes:W(Hs,{pageSize:h.value,pageSizes:e.pageSizes,popperClass:e.popperClass,disabled:e.disabled,size:e.small?"small":"default"}),slot:(f=(m=l==null?void 0:l.default)==null?void 0:m.call(l))!=null?f:null,total:W(qs,{total:Le(e.total)?0:e.total})},F=e.layout.split(",").map(q=>q.trim());let P=!1;return F.forEach(q=>{if(q==="->"){P=!0;return}P?k.push(T[q]):M.push(T[q])}),c(M[0],a.is("first")),c(M[M.length-1],a.is("last")),P&&k.length>0&&(c(k[0],a.is("first")),c(k[k.length-1],a.is("last")),M.push(S)),W("div",{class:[a.b(),a.is("background",e.background),{[a.m("small")]:e.small}]},M)}}});Ma=xt(oi);var ri=/["'&<>]/,si=ii;function ii(e){var t=""+e,l=ri.exec(t);if(!l)return t;var n,a="",o=0,r=0;for(o=l.index;otypeof u=="string"?Te(s,u):u(s,i,e))):(t!=="$key"&&yt(s)&&"$value"in s&&(s=s.$value),[yt(s)?Te(s,t):s])},r=function(s,i){if(n)return n(s.value,i.value);for(let u=0,p=s.key.length;ui.key[u])return 1}return 0};return e.map((s,i)=>({value:s,index:i,key:o?o(s,i):null})).sort((s,i)=>{let u=r(s,i);return u||(u=s.index-i.index),u*+l}).map(s=>s.value)},Vn=function(e,t){let l=null;return e.columns.forEach(n=>{n.id===t&&(l=n)}),l},ci=function(e,t){let l=null;for(let n=0;n{if(!e)throw new Error("Row is required when get row identity");if(typeof t=="string"){if(!t.includes("."))return`${e[t]}`;const l=t.split(".");let n=e;for(const a of l)n=n[a];return`${n}`}else if(typeof t=="function")return t.call(null,e)},et=function(e,t){const l={};return(e||[]).forEach((n,a)=>{l[Se(n,t)]={row:n,index:a}}),l};function di(e,t){const l={};let n;for(n in e)l[n]=e[n];for(n in t)if(Kt(t,n)){const a=t[n];typeof a<"u"&&(l[n]=a)}return l}function Pl(e){return e===""||e!==void 0&&(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function Kn(e){return e===""||e!==void 0&&(e=Pl(e),Number.isNaN(e)&&(e=80)),e}function pi(e){return typeof e=="number"?e:typeof e=="string"?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function vi(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,l)=>(...n)=>t(l(...n)))}function Ot(e,t,l){let n=!1;const a=e.indexOf(t),o=a!==-1,r=s=>{s==="add"?e.push(t):e.splice(a,1),n=!0,wt(t.children)&&t.children.forEach(i=>{Ot(e,i,l??!o)})};return ul(l)?l&&!o?r("add"):!l&&o&&r("remove"):r(o?"remove":"add"),n}function hi(e,t,l="children",n="hasChildren"){const a=r=>!(Array.isArray(r)&&r.length);function o(r,s,i){t(r,s,i),s.forEach(u=>{if(u[n]){t(u,null,i+1);return}const p=u[l];a(p)||o(u,p,i+1)})}e.forEach(r=>{if(r[n]){t(r,null,0);return}const s=r[l];a(s)||o(r,s,0)})}let $e;function fi(e,t,l,n,a){a=hn({enterable:!0,showArrow:!0},a);const o=e==null?void 0:e.dataset.prefix,r=e==null?void 0:e.querySelector(`.${o}-scrollbar__wrap`);function s(){const v=a.effect==="light",y=document.createElement("div");return y.className=[`${o}-popper`,v?"is-light":"is-dark",a.popperClass||""].join(" "),l=si(l),y.innerHTML=l,y.style.zIndex=String(n()),e==null||e.appendChild(y),y}function i(){const v=document.createElement("div");return v.className=`${o}-popper__arrow`,v}function u(){p&&p.update()}$e==null||$e(),$e=()=>{try{p&&p.destroy(),x&&(e==null||e.removeChild(x)),t.removeEventListener("mouseenter",h),t.removeEventListener("mouseleave",b),r==null||r.removeEventListener("scroll",$e),$e=void 0}catch{}};let p=null,h=u,b=$e;a.enterable&&({onOpen:h,onClose:b}=Hu({showAfter:a.showAfter,hideAfter:a.hideAfter,open:u,close:$e}));const x=s();x.onmouseenter=h,x.onmouseleave=b;const g=[];if(a.offset&&g.push({name:"offset",options:{offset:[0,a.offset]}}),a.showArrow){const v=x.appendChild(i());g.push({name:"arrow",options:{element:v,padding:10}})}const d=a.popperOptions||{};return p=Fu(t,x,{placement:a.placement||"top",strategy:"fixed",...d,modifiers:d.modifiers?g.concat(d.modifiers):g}),t.addEventListener("mouseenter",h),t.addEventListener("mouseleave",b),r==null||r.addEventListener("scroll",$e),p}function jn(e){return e.children?er(e.children,jn):[e]}function qn(e,t){return e+t.colSpan}const Gn=(e,t,l,n)=>{let a=0,o=e;const r=l.states.columns.value;if(n){const i=jn(n[e]);a=r.slice(0,r.indexOf(i[0])).reduce(qn,0),o=a+i.reduce(qn,0)-1}else a=e;let s;switch(t){case"left":o=r.length-l.states.rightFixedLeafColumnsLength.value&&(s="right");break;default:o=r.length-l.states.rightFixedLeafColumnsLength.value&&(s="right")}return s?{direction:s,start:a,after:o}:{}},Al=(e,t,l,n,a,o=0)=>{const r=[],{direction:s,start:i,after:u}=Gn(t,l,n,a);if(s){const p=s==="left";r.push(`${e}-fixed-column--${s}`),p&&u+o===n.states.fixedLeafColumnsLength.value-1?r.push("is-last-column"):!p&&i-o===n.states.columns.value.length-n.states.rightFixedLeafColumnsLength.value&&r.push("is-first-column")}return r};function Un(e,t){return e+(t.realWidth===null||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const Hl=(e,t,l,n)=>{const{direction:a,start:o=0,after:r=0}=Gn(e,t,l,n);if(!a)return;const s={},i=a==="left",u=l.states.columns.value;return i?s.left=u.slice(0,o).reduce(Un,0):s.right=u.slice(r+1).reverse().reduce(Un,0),s},dt=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function mi(e){const t=me(),l=E(!1),n=E([]);return{updateExpandRows:()=>{const a=e.data.value||[],o=e.rowKey.value;if(l.value)n.value=a.slice();else if(o){const r=et(n.value,o);n.value=a.reduce((s,i)=>{const u=Se(i,o);return r[u]&&s.push(i),s},[])}else n.value=[]},toggleRowExpansion:(a,o)=>{Ot(n.value,a,o)&&t.emit("expand-change",a,n.value.slice())},setExpandRowKeys:a=>{t.store.assertRowKey();const o=e.data.value||[],r=e.rowKey.value,s=et(o,r);n.value=a.reduce((i,u)=>{const p=s[u];return p&&i.push(p.row),i},[])},isRowExpanded:a=>{const o=e.rowKey.value;return o?!!et(n.value,o)[Se(a,o)]:n.value.includes(a)},states:{expandRows:n,defaultExpandAll:l}}}function gi(e){const t=me(),l=E(null),n=E(null),a=s=>{t.store.assertRowKey(),l.value=s,r(s)},o=()=>{l.value=null},r=s=>{const{data:i,rowKey:u}=e;let p=null;u.value&&(p=(C(i)||[]).find(h=>Se(h,u.value)===s)),n.value=p,t.emit("current-change",n.value,null)};return{setCurrentRowKey:a,restoreCurrentRowKey:o,setCurrentRowByKey:r,updateCurrentRow:s=>{const i=n.value;if(s&&s!==i){n.value=s,t.emit("current-change",n.value,i);return}!s&&i&&(n.value=null,t.emit("current-change",null,i))},updateCurrentRowData:()=>{const s=e.rowKey.value,i=e.data.value||[],u=n.value;if(!i.includes(u)&&u){if(s){const p=Se(u,s);r(p)}else n.value=null;n.value===null&&t.emit("current-change",null,u)}else l.value&&(r(l.value),o())},states:{_currentRowKey:l,currentRow:n}}}function bi(e){const t=E([]),l=E({}),n=E(16),a=E(!1),o=E({}),r=E("hasChildren"),s=E("children"),i=me(),u=N(()=>{if(!e.rowKey.value)return{};const y=e.data.value||[];return h(y)}),p=N(()=>{const y=e.rowKey.value,c=Object.keys(o.value),m={};return c.length&&c.forEach(f=>{if(o.value[f].length){const M={children:[]};o.value[f].forEach(k=>{const S=Se(k,y);M.children.push(S),k[r.value]&&!m[S]&&(m[S]={children:[]})}),m[f]=M}}),m}),h=y=>{const c=e.rowKey.value,m={};return hi(y,(f,M,k)=>{const S=Se(f,c);Array.isArray(M)?m[S]={children:M.map(T=>Se(T,c)),level:k}:a.value&&(m[S]={children:[],lazy:!0,level:k})},s.value,r.value),m},b=(y=!1,c=(m=>(m=i.store)==null?void 0:m.states.defaultExpandAll.value)())=>{var m;const f=u.value,M=p.value,k=Object.keys(f),S={};if(k.length){const T=C(l),F=[],P=($,ne)=>{if(y)return t.value?c||t.value.includes(ne):!!(c||$!=null&&$.expanded);{const ae=c||t.value&&t.value.includes(ne);return!!($!=null&&$.expanded||ae)}};k.forEach($=>{const ne=T[$],ae={...f[$]};if(ae.expanded=P(ne,$),ae.lazy){const{loaded:he=!1,loading:X=!1}=ne||{};ae.loaded=!!he,ae.loading=!!X,F.push($)}S[$]=ae});const q=Object.keys(M);a.value&&q.length&&F.length&&q.forEach($=>{const ne=T[$],ae=M[$].children;if(F.includes($)){if(S[$].children.length!==0)throw new Error("[ElTable]children must be an empty array.");S[$].children=ae}else{const{loaded:he=!1,loading:X=!1}=ne||{};S[$]={lazy:!0,loaded:!!he,loading:!!X,expanded:P(ne,$),children:ae,level:""}}})}l.value=S,(m=i.store)==null||m.updateTableScrollY()};ee(()=>t.value,()=>{b(!0)}),ee(()=>u.value,()=>{b()}),ee(()=>p.value,()=>{b()});const x=y=>{t.value=y,b()},g=(y,c)=>{i.store.assertRowKey();const m=e.rowKey.value,f=Se(y,m),M=f&&l.value[f];if(f&&M&&"expanded"in M){const k=M.expanded;c=typeof c>"u"?!M.expanded:c,l.value[f].expanded=c,k!==c&&i.emit("expand-change",y,c),i.store.updateTableScrollY()}},d=y=>{i.store.assertRowKey();const c=e.rowKey.value,m=Se(y,c),f=l.value[m];a.value&&f&&"loaded"in f&&!f.loaded?v(y,m,f):g(y,void 0)},v=(y,c,m)=>{const{load:f}=i.props;f&&!l.value[c].loaded&&(l.value[c].loading=!0,f(y,m,M=>{if(!Array.isArray(M))throw new TypeError("[ElTable] data must be an array");l.value[c].loading=!1,l.value[c].loaded=!0,l.value[c].expanded=!0,M.length&&(o.value[c]=M),i.emit("expand-change",y,!0)}))};return{loadData:v,loadOrToggle:d,toggleTreeExpansion:g,updateTreeExpandKeys:x,updateTreeData:b,normalize:h,states:{expandRowKeys:t,treeData:l,indent:n,lazy:a,lazyTreeNodeMap:o,lazyColumnIdentifier:r,childrenColumnName:s}}}const yi=(e,t)=>{const l=t.sortingColumn;return!l||typeof l.sortable=="string"?e:ui(e,t.sortProp,t.sortOrder,l.sortMethod,l.sortBy)},ll=e=>{const t=[];return e.forEach(l=>{l.children?t.push.apply(t,ll(l.children)):t.push(l)}),t};function xi(){var e;const t=me(),{size:l}=$t((e=t.proxy)==null?void 0:e.$props),n=E(null),a=E([]),o=E([]),r=E(!1),s=E([]),i=E([]),u=E([]),p=E([]),h=E([]),b=E([]),x=E([]),g=E([]),d=[],v=E(0),y=E(0),c=E(0),m=E(!1),f=E([]),M=E(!1),k=E(!1),S=E(null),T=E({}),F=E(null),P=E(null),q=E(null),$=E(null),ne=E(null);ee(a,()=>t.state&&O(!1),{deep:!0});const ae=()=>{if(!n.value)throw new Error("[ElTable] prop row-key is required")},he=A=>{var B;(B=A.children)==null||B.forEach(V=>{V.fixed=A.fixed,he(V)})},X=()=>{s.value.forEach(te=>{he(te)}),p.value=s.value.filter(te=>te.fixed===!0||te.fixed==="left"),h.value=s.value.filter(te=>te.fixed==="right"),p.value.length>0&&s.value[0]&&s.value[0].type==="selection"&&!s.value[0].fixed&&(s.value[0].fixed=!0,p.value.unshift(s.value[0]));const A=s.value.filter(te=>!te.fixed);i.value=[].concat(p.value).concat(A).concat(h.value);const B=ll(A),V=ll(p.value),K=ll(h.value);v.value=B.length,y.value=V.length,c.value=K.length,u.value=[].concat(V).concat(B).concat(K),r.value=p.value.length>0||h.value.length>0},O=(A,B=!1)=>{A&&X(),B?t.state.doLayout():t.state.debouncedUpdateLayout()},_=A=>f.value.includes(A),j=()=>{m.value=!1,f.value.length&&(f.value=[],t.emit("selection-change",[]))},J=()=>{let A;if(n.value){A=[];const B=et(f.value,n.value),V=et(a.value,n.value);for(const K in B)Kt(B,K)&&!V[K]&&A.push(B[K].row)}else A=f.value.filter(B=>!a.value.includes(B));if(A.length){const B=f.value.filter(V=>!A.includes(V));f.value=B,t.emit("selection-change",B.slice())}},oe=()=>(f.value||[]).slice(),ue=(A,B=void 0,V=!0)=>{if(Ot(f.value,A,B)){const K=(f.value||[]).slice();V&&t.emit("select",K,A),t.emit("selection-change",K)}},we=()=>{var A,B;const V=k.value?!m.value:!(m.value||f.value.length);m.value=V;let K=!1,te=0;const ie=(B=(A=t==null?void 0:t.store)==null?void 0:A.states)==null?void 0:B.rowKey.value;a.value.forEach((ke,w)=>{const L=w+te;S.value?S.value.call(null,ke,L)&&Ot(f.value,ke,V)&&(K=!0):Ot(f.value,ke,V)&&(K=!0),te+=ye(Se(ke,ie))}),K&&t.emit("selection-change",f.value?f.value.slice():[]),t.emit("select-all",f.value)},be=()=>{const A=et(f.value,n.value);a.value.forEach(B=>{const V=Se(B,n.value),K=A[V];K&&(f.value[K.index]=B)})},Ee=()=>{var A,B,V;if(((A=a.value)==null?void 0:A.length)===0){m.value=!1;return}let K;n.value&&(K=et(f.value,n.value));const te=function(L){return K?!!K[Se(L,n.value)]:f.value.includes(L)};let ie=!0,ke=0,w=0;for(let L=0,H=(a.value||[]).length;L{var B;if(!t||!t.store)return 0;const{treeData:V}=t.store.states;let K=0;const te=(B=V.value[A])==null?void 0:B.children;return te&&(K+=te.length,te.forEach(ie=>{K+=ye(ie)})),K},ce=(A,B)=>{Array.isArray(A)||(A=[A]);const V={};return A.forEach(K=>{T.value[K.id]=B,V[K.columnKey||K.id]=B}),V},ze=(A,B,V)=>{P.value&&P.value!==A&&(P.value.order=null),P.value=A,q.value=B,$.value=V},je=()=>{let A=C(o);Object.keys(T.value).forEach(B=>{const V=T.value[B];if(!V||V.length===0)return;const K=Vn({columns:u.value},B);K&&K.filterMethod&&(A=A.filter(te=>V.some(ie=>K.filterMethod.call(null,ie,te,K))))}),F.value=A},pt=()=>{a.value=yi(F.value,{sortingColumn:P.value,sortProp:q.value,sortOrder:$.value})},vt=(A=void 0)=>{A&&A.filter||je(),pt()},tt=A=>{const{tableHeaderRef:B}=t.refs;if(!B)return;const V=Object.assign({},B.filterPanels),K=Object.keys(V);if(K.length)if(typeof A=="string"&&(A=[A]),Array.isArray(A)){const te=A.map(ie=>ci({columns:u.value},ie));K.forEach(ie=>{const ke=te.find(w=>w.id===ie);ke&&(ke.filteredValue=[])}),t.store.commit("filterChange",{column:te,values:[],silent:!0,multi:!0})}else K.forEach(te=>{const ie=u.value.find(ke=>ke.id===te);ie&&(ie.filteredValue=[])}),T.value={},t.store.commit("filterChange",{column:{},values:[],silent:!0})},ht=()=>{P.value&&(ze(null,null,null),t.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:lt,toggleRowExpansion:qe,updateExpandRows:Nt,states:Rt,isRowExpanded:Tt}=mi({data:a,rowKey:n}),{updateTreeExpandKeys:nt,toggleTreeExpansion:Mt,updateTreeData:zt,loadOrToggle:_t,states:De}=bi({data:a,rowKey:n}),{updateCurrentRowData:ft,updateCurrentRow:Pt,setCurrentRowKey:mt,states:At}=gi({data:a,rowKey:n});return{assertRowKey:ae,updateColumns:X,scheduleLayout:O,isSelected:_,clearSelection:j,cleanSelection:J,getSelectionRows:oe,toggleRowSelection:ue,_toggleAllSelection:we,toggleAllSelection:null,updateSelectionByRowKey:be,updateAllSelected:Ee,updateFilters:ce,updateCurrentRow:Pt,updateSort:ze,execFilter:je,execSort:pt,execQuery:vt,clearFilter:tt,clearSort:ht,toggleRowExpansion:qe,setExpandRowKeysAdapter:A=>{lt(A),nt(A)},setCurrentRowKey:mt,toggleRowExpansionAdapter:(A,B)=>{u.value.some(({type:V})=>V==="expand")?qe(A,B):Mt(A,B)},isRowExpanded:Tt,updateExpandRows:Nt,updateCurrentRowData:ft,loadOrToggle:_t,updateTreeData:zt,states:{tableSize:l,rowKey:n,data:a,_data:o,isComplex:r,_columns:s,originColumns:i,columns:u,fixedColumns:p,rightFixedColumns:h,leafColumns:b,fixedLeafColumns:x,rightFixedLeafColumns:g,updateOrderFns:d,leafColumnsLength:v,fixedLeafColumnsLength:y,rightFixedLeafColumnsLength:c,isAllSelected:m,selection:f,reserveSelection:M,selectOnIndeterminate:k,selectable:S,filters:T,filteredData:F,sortingColumn:P,sortProp:q,sortOrder:$,hoverRow:ne,...Rt,...De,...At}}}function Fl(e,t){return e.map(l=>{var n;return l.id===t.id?t:((n=l.children)!=null&&n.length&&(l.children=Fl(l.children,t)),l)})}function Il(e){e.forEach(t=>{var l,n;t.no=(l=t.getColumnIndex)==null?void 0:l.call(t),(n=t.children)!=null&&n.length&&Il(t.children)}),e.sort((t,l)=>t.no-l.no)}function wi(){const e=me(),t=xi();return{ns:Z("table"),...t,mutations:{setData(l,n){const a=C(l._data)!==n;l.data.value=n,l._data.value=n,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),C(l.reserveSelection)?(e.store.assertRowKey(),e.store.updateSelectionByRowKey()):a?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(l,n,a,o){const r=C(l._columns);let s=[];a?(a&&!a.children&&(a.children=[]),a.children.push(n),s=Fl(r,a)):(r.push(n),s=r),Il(s),l._columns.value=s,l.updateOrderFns.push(o),n.type==="selection"&&(l.selectable.value=n.selectable,l.reserveSelection.value=n.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},updateColumnOrder(l,n){var a;((a=n.getColumnIndex)==null?void 0:a.call(n))!==n.no&&(Il(l._columns.value),e.$ready&&e.store.updateColumns())},removeColumn(l,n,a,o){const r=C(l._columns)||[];if(a)a.children.splice(a.children.findIndex(i=>i.id===n.id),1),re(()=>{var i;((i=a.children)==null?void 0:i.length)===0&&delete a.children}),l._columns.value=Fl(r,a);else{const i=r.indexOf(n);i>-1&&(r.splice(i,1),l._columns.value=r)}const s=l.updateOrderFns.indexOf(o);s>-1&&l.updateOrderFns.splice(s,1),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(l,n){const{prop:a,order:o,init:r}=n;if(a){const s=C(l.columns).find(i=>i.property===a);s&&(s.order=o,e.store.updateSort(s,a,o),e.store.commit("changeSortCondition",{init:r}))}},changeSortCondition(l,n){const{sortingColumn:a,sortProp:o,sortOrder:r}=l,s=C(a),i=C(o),u=C(r);u===null&&(l.sortingColumn.value=null,l.sortProp.value=null);const p={filter:!0};e.store.execQuery(p),(!n||!(n.silent||n.init))&&e.emit("sort-change",{column:s,prop:i,order:u}),e.store.updateTableScrollY()},filterChange(l,n){const{column:a,values:o,silent:r}=n,s=e.store.updateFilters(a,o);e.store.execQuery(),r||e.emit("filter-change",s),e.store.updateTableScrollY()},toggleAllSelection(){e.store.toggleAllSelection()},rowSelectedChanged(l,n){e.store.toggleRowSelection(n),e.store.updateAllSelected()},setHoverRow(l,n){l.hoverRow.value=n},setCurrentRow(l,n){e.store.updateCurrentRow(n)}},commit:function(l,...n){const a=e.store.mutations;if(a[l])a[l].apply(e,[e.store.states].concat(n));else throw new Error(`Action not found: ${l}`)},updateTableScrollY:function(){re(()=>e.layout.updateScrollY.apply(e.layout))}}}const Lt={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy",data:"data",["treeProps.hasChildren"]:{key:"lazyColumnIdentifier",default:"hasChildren"},["treeProps.children"]:{key:"childrenColumnName",default:"children"}};function Ci(e,t){if(!e)throw new Error("Table is required.");const l=wi();return l.toggleAllSelection=Et(l._toggleAllSelection,10),Object.keys(Lt).forEach(n=>{Yn(Xn(t,n),n,l)}),Si(l,t),l}function Si(e,t){Object.keys(Lt).forEach(l=>{ee(()=>Xn(t,l),n=>{Yn(n,l,e)})})}function Yn(e,t,l){let n=e,a=Lt[t];typeof Lt[t]=="object"&&(a=a.key,n=n||Lt[t].default),l.states[a].value=n}function Xn(e,t){if(t.includes(".")){const l=t.split(".");let n=e;return l.forEach(a=>{n=n[a]}),n}else return e[t]}class ki{constructor(t){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=E(null),this.scrollX=E(!1),this.scrollY=E(!1),this.bodyWidth=E(null),this.fixedWidth=E(null),this.rightFixedWidth=E(null),this.gutterWidth=0;for(const l in t)Kt(t,l)&&(Wt(this[l])?this[l].value=t[l]:this[l]=t[l]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){if(this.height.value===null)return!1;const t=this.table.refs.scrollBarRef;if(this.table.vnode.el&&(t!=null&&t.wrapRef)){let l=!0;const n=this.scrollY.value;return l=t.wrapRef.scrollHeight>t.wrapRef.clientHeight,this.scrollY.value=l,n!==l}return!1}setHeight(t,l="height"){if(!Qe)return;const n=this.table.vnode.el;if(t=pi(t),this.height.value=Number(t),!n&&(t||t===0))return re(()=>this.setHeight(t,l));typeof t=="number"?(n.style[l]=`${t}px`,this.updateElsHeight()):typeof t=="string"&&(n.style[l]=t,this.updateElsHeight())}setMaxHeight(t){this.setHeight(t,"max-height")}getFlattenColumns(){const t=[];return this.table.store.states.columns.value.forEach(l=>{l.isColumnGroup?t.push.apply(t,l.columns):t.push(l)}),t}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(t){if(!t)return!0;let l=t;for(;l.tagName!=="DIV";){if(getComputedStyle(l).display==="none")return!0;l=l.parentElement}return!1}updateColumnsWidth(){if(!Qe)return;const t=this.fit,l=this.table.vnode.el.clientWidth;let n=0;const a=this.getFlattenColumns(),o=a.filter(i=>typeof i.width!="number");if(a.forEach(i=>{typeof i.width=="number"&&i.realWidth&&(i.realWidth=null)}),o.length>0&&t){if(a.forEach(i=>{n+=Number(i.width||i.minWidth||80)}),n<=l){this.scrollX.value=!1;const i=l-n;if(o.length===1)o[0].realWidth=Number(o[0].minWidth||80)+i;else{const u=o.reduce((b,x)=>b+Number(x.minWidth||80),0),p=i/u;let h=0;o.forEach((b,x)=>{if(x===0)return;const g=Math.floor(Number(b.minWidth||80)*p);h+=g,b.realWidth=Number(b.minWidth||80)+g}),o[0].realWidth=Number(o[0].minWidth||80)+i-h}}else this.scrollX.value=!0,o.forEach(i=>{i.realWidth=Number(i.minWidth)});this.bodyWidth.value=Math.max(n,l),this.table.state.resizeState.value.width=this.bodyWidth.value}else a.forEach(i=>{!i.width&&!i.minWidth?i.realWidth=80:i.realWidth=Number(i.width||i.minWidth),n+=i.realWidth}),this.scrollX.value=n>l,this.bodyWidth.value=n;const r=this.store.states.fixedColumns.value;if(r.length>0){let i=0;r.forEach(u=>{i+=Number(u.realWidth||u.width)}),this.fixedWidth.value=i}const s=this.store.states.rightFixedColumns.value;if(s.length>0){let i=0;s.forEach(u=>{i+=Number(u.realWidth||u.width)}),this.rightFixedWidth.value=i}this.notifyObservers("columns")}addObserver(t){this.observers.push(t)}removeObserver(t){const l=this.observers.indexOf(t);l!==-1&&this.observers.splice(l,1)}notifyObservers(t){this.observers.forEach(l=>{var n,a;switch(t){case"columns":(n=l.state)==null||n.onColumnsChange(this);break;case"scrollable":(a=l.state)==null||a.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${t}.`)}})}}const{CheckboxGroup:Ei}=ct,Oi=G({name:"ElTableFilterPanel",components:{ElCheckbox:ct,ElCheckboxGroup:Ei,ElScrollbar:Cl,ElTooltip:ba,ElIcon:Je,ArrowDown:pa,ArrowUp:Nu},directives:{ClickOutside:yn},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function}},setup(e){const t=me(),{t:l}=He(),n=Z("table-filter"),a=t==null?void 0:t.parent;a.filterPanels.value[e.column.id]||(a.filterPanels.value[e.column.id]=t);const o=E(!1),r=E(null),s=N(()=>e.column&&e.column.filters),i=N({get:()=>{var f;return(((f=e.column)==null?void 0:f.filteredValue)||[])[0]},set:f=>{u.value&&(typeof f<"u"&&f!==null?u.value.splice(0,1,f):u.value.splice(0,1))}}),u=N({get(){return e.column?e.column.filteredValue||[]:[]},set(f){e.column&&e.upDataColumn("filteredValue",f)}}),p=N(()=>e.column?e.column.filterMultiple:!0),h=f=>f.value===i.value,b=()=>{o.value=!1},x=f=>{f.stopPropagation(),o.value=!o.value},g=()=>{o.value=!1},d=()=>{c(u.value),b()},v=()=>{u.value=[],c(u.value),b()},y=f=>{i.value=f,c(typeof f<"u"&&f!==null?u.value:[]),b()},c=f=>{e.store.commit("filterChange",{column:e.column,values:f}),e.store.updateAllSelected()};ee(o,f=>{e.column&&e.upDataColumn("filterOpened",f)},{immediate:!0});const m=N(()=>{var f,M;return(M=(f=r.value)==null?void 0:f.popperRef)==null?void 0:M.contentRef});return{tooltipVisible:o,multiple:p,filteredValue:u,filterValue:i,filters:s,handleConfirm:d,handleReset:v,handleSelect:y,isActive:h,t:l,ns:n,showFilterPanel:x,hideFilterPanel:g,popperPaneRef:m,tooltip:r}}}),Li={key:0},Ni=["disabled"],Ri=["label","onClick"];function Ti(e,t,l,n,a,o){const r=ge("el-checkbox"),s=ge("el-checkbox-group"),i=ge("el-scrollbar"),u=ge("arrow-up"),p=ge("arrow-down"),h=ge("el-icon"),b=ge("el-tooltip"),x=Gl("click-outside");return R(),Q(b,{ref:"tooltip",visible:e.tooltipVisible,offset:0,placement:e.placement,"show-arrow":!1,"stop-popper-mouse-event":!1,teleported:"",effect:"light",pure:"","popper-class":e.ns.b(),persistent:""},{content:Y(()=>[e.multiple?(R(),I("div",Li,[U("div",{class:z(e.ns.e("content"))},[ve(i,{"wrap-class":e.ns.e("wrap")},{default:Y(()=>[ve(s,{modelValue:e.filteredValue,"onUpdate:modelValue":t[0]||(t[0]=g=>e.filteredValue=g),class:z(e.ns.e("checkbox-group"))},{default:Y(()=>[(R(!0),I(We,null,st(e.filters,g=>(R(),Q(r,{key:g.value,label:g.value},{default:Y(()=>[dl(se(g.text),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","class"])]),_:1},8,["wrap-class"])],2),U("div",{class:z(e.ns.e("bottom"))},[U("button",{class:z({[e.ns.is("disabled")]:e.filteredValue.length===0}),disabled:e.filteredValue.length===0,type:"button",onClick:t[1]||(t[1]=(...g)=>e.handleConfirm&&e.handleConfirm(...g))},se(e.t("el.table.confirmFilter")),11,Ni),U("button",{type:"button",onClick:t[2]||(t[2]=(...g)=>e.handleReset&&e.handleReset(...g))},se(e.t("el.table.resetFilter")),1)],2)])):(R(),I("ul",{key:1,class:z(e.ns.e("list"))},[U("li",{class:z([e.ns.e("list-item"),{[e.ns.is("active")]:e.filterValue===void 0||e.filterValue===null}]),onClick:t[3]||(t[3]=g=>e.handleSelect(null))},se(e.t("el.table.clearFilter")),3),(R(!0),I(We,null,st(e.filters,g=>(R(),I("li",{key:g.value,class:z([e.ns.e("list-item"),e.ns.is("active",e.isActive(g))]),label:g.value,onClick:d=>e.handleSelect(g.value)},se(g.text),11,Ri))),128))],2))]),default:Y(()=>[Me((R(),I("span",{class:z([`${e.ns.namespace.value}-table__column-filter-trigger`,`${e.ns.namespace.value}-none-outline`]),onClick:t[4]||(t[4]=(...g)=>e.showFilterPanel&&e.showFilterPanel(...g))},[ve(h,null,{default:Y(()=>[e.column.filterOpened?(R(),Q(u,{key:0})):(R(),Q(p,{key:1}))]),_:1})],2)),[[x,e.hideFilterPanel,e.popperPaneRef]])]),_:1},8,["visible","placement","popper-class"])}var Mi=xe(Oi,[["render",Ti],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/filter-panel.vue"]]);function Qn(e){const t=me();fa(()=>{l.value.addObserver(t)}),Ue(()=>{n(l.value),a(l.value)}),ia(()=>{n(l.value),a(l.value)}),Yl(()=>{l.value.removeObserver(t)});const l=N(()=>{const o=e.layout;if(!o)throw new Error("Can not find table layout.");return o}),n=o=>{var r;const s=((r=e.vnode.el)==null?void 0:r.querySelectorAll("colgroup > col"))||[];if(!s.length)return;const i=o.getFlattenColumns(),u={};i.forEach(p=>{u[p.id]=p});for(let p=0,h=s.length;p{var r,s;const i=((r=e.vnode.el)==null?void 0:r.querySelectorAll("colgroup > col[name=gutter]"))||[];for(let p=0,h=i.length;p{d.stopPropagation()},o=(d,v)=>{!v.filters&&v.sortable?g(d,v,!1):v.filterable&&!v.sortable&&a(d),n==null||n.emit("header-click",v,d)},r=(d,v)=>{n==null||n.emit("header-contextmenu",v,d)},s=E(null),i=E(!1),u=E({}),p=(d,v)=>{if(Qe&&!(v.children&&v.children.length>0)&&s.value&&e.border){i.value=!0;const y=n;t("set-drag-visible",!0);const c=(y==null?void 0:y.vnode.el).getBoundingClientRect().left,m=l.vnode.el.querySelector(`th.${v.id}`),f=m.getBoundingClientRect(),M=f.left-c+30;ma(m,"noclick"),u.value={startMouseLeft:d.clientX,startLeft:f.right-c,startColumnLeft:f.left-c,tableLeft:c};const k=y==null?void 0:y.refs.resizeProxy;k.style.left=`${u.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const S=F=>{const P=F.clientX-u.value.startMouseLeft,q=u.value.startLeft+P;k.style.left=`${Math.max(M,q)}px`},T=()=>{if(i.value){const{startColumnLeft:F,startLeft:P}=u.value,q=Number.parseInt(k.style.left,10)-F;v.width=v.realWidth=q,y==null||y.emit("header-dragend",v.width,P-F,v,d),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",i.value=!1,s.value=null,u.value={},t("set-drag-visible",!1)}document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",T),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{Xl(m,"noclick")},0)};document.addEventListener("mousemove",S),document.addEventListener("mouseup",T)}},h=(d,v)=>{var y;if(v.children&&v.children.length>0)return;const c=(y=d.target)==null?void 0:y.closest("th");if(!(!v||!v.resizable)&&!i.value&&e.border){const m=c.getBoundingClientRect(),f=document.body.style;m.width>12&&m.right-d.pageX<8?(f.cursor="col-resize",pl(c,"is-sortable")&&(c.style.cursor="col-resize"),s.value=v):i.value||(f.cursor="",pl(c,"is-sortable")&&(c.style.cursor="pointer"),s.value=null)}},b=()=>{Qe&&(document.body.style.cursor="")},x=({order:d,sortOrders:v})=>{if(d==="")return v[0];const y=v.indexOf(d||null);return v[y>v.length-2?0:y+1]},g=(d,v,y)=>{var c;d.stopPropagation();const m=v.order===y?null:y||x(v),f=(c=d.target)==null?void 0:c.closest("th");if(f&&pl(f,"noclick")){Xl(f,"noclick");return}if(!v.sortable)return;const M=e.store.states;let k=M.sortProp.value,S;const T=M.sortingColumn.value;(T!==v||T===v&&T.order===null)&&(T&&(T.order=null),M.sortingColumn.value=v,k=v.property),m?S=v.order=m:S=v.order=null,M.sortProp.value=k,M.sortOrder.value=S,n==null||n.store.commit("changeSortCondition")};return{handleHeaderClick:o,handleHeaderContextMenu:r,handleMouseDown:p,handleMouseMove:h,handleMouseOut:b,handleSortClick:g,handleFilterClick:a}}function _i(e){const t=fe(Ve),l=Z("table");return{getHeaderRowStyle:n=>{const a=t==null?void 0:t.props.headerRowStyle;return typeof a=="function"?a.call(null,{rowIndex:n}):a},getHeaderRowClass:n=>{const a=[],o=t==null?void 0:t.props.headerRowClassName;return typeof o=="string"?a.push(o):typeof o=="function"&&a.push(o.call(null,{rowIndex:n})),a.join(" ")},getHeaderCellStyle:(n,a,o,r)=>{var s;let i=(s=t==null?void 0:t.props.headerCellStyle)!=null?s:{};typeof i=="function"&&(i=i.call(null,{rowIndex:n,columnIndex:a,row:o,column:r}));const u=Hl(a,r.fixed,e.store,o);return dt(u,"left"),dt(u,"right"),Object.assign({},i,u)},getHeaderCellClass:(n,a,o,r)=>{const s=Al(l.b(),a,r.fixed,e.store,o),i=[r.id,r.order,r.headerAlign,r.className,r.labelClassName,...s];r.children||i.push("is-leaf"),r.sortable&&i.push("is-sortable");const u=t==null?void 0:t.props.headerCellClassName;return typeof u=="string"?i.push(u):typeof u=="function"&&i.push(u.call(null,{rowIndex:n,columnIndex:a,row:o,column:r})),i.push(l.e("cell")),i.filter(p=>!!p).join(" ")}}}const Jn=e=>{const t=[];return e.forEach(l=>{l.children?(t.push(l),t.push.apply(t,Jn(l.children))):t.push(l)}),t},Pi=e=>{let t=1;const l=(a,o)=>{if(o&&(a.level=o.level+1,t{l(s,a),r+=s.colSpan}),a.colSpan=r}else a.colSpan=1};e.forEach(a=>{a.level=1,l(a,void 0)});const n=[];for(let a=0;a{a.children?(a.rowSpan=1,a.children.forEach(o=>o.isSubColumn=!0)):a.rowSpan=t-a.level+1,n[a.level-1].push(a)}),n};function Ai(e){const t=fe(Ve),l=N(()=>Pi(e.store.states.originColumns.value));return{isGroup:N(()=>{const n=l.value.length>1;return n&&t&&(t.state.isGroup.value=!0),n}),toggleAllSelection:n=>{n.stopPropagation(),t==null||t.store.commit("toggleAllSelection")},columnRows:l}}var Hi=G({name:"ElTableHeader",components:{ElCheckbox:ct},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e,{emit:t}){const l=me(),n=fe(Ve),a=Z("table"),o=E({}),{onColumnsChange:r,onScrollableChange:s}=Qn(n);Ue(async()=>{await re(),await re();const{prop:k,order:S}=e.defaultSort;n==null||n.store.commit("sort",{prop:k,order:S,init:!0})});const{handleHeaderClick:i,handleHeaderContextMenu:u,handleMouseDown:p,handleMouseMove:h,handleMouseOut:b,handleSortClick:x,handleFilterClick:g}=zi(e,t),{getHeaderRowStyle:d,getHeaderRowClass:v,getHeaderCellStyle:y,getHeaderCellClass:c}=_i(e),{isGroup:m,toggleAllSelection:f,columnRows:M}=Ai(e);return l.state={onColumnsChange:r,onScrollableChange:s},l.filterPanels=o,{ns:a,filterPanels:o,onColumnsChange:r,onScrollableChange:s,columnRows:M,getHeaderRowClass:v,getHeaderRowStyle:d,getHeaderCellClass:c,getHeaderCellStyle:y,handleHeaderClick:i,handleHeaderContextMenu:u,handleMouseDown:p,handleMouseMove:h,handleMouseOut:b,handleSortClick:x,handleFilterClick:g,isGroup:m,toggleAllSelection:f}},render(){const{ns:e,isGroup:t,columnRows:l,getHeaderCellStyle:n,getHeaderCellClass:a,getHeaderRowClass:o,getHeaderRowStyle:r,handleHeaderClick:s,handleHeaderContextMenu:i,handleMouseDown:u,handleMouseMove:p,handleSortClick:h,handleMouseOut:b,store:x,$parent:g}=this;let d=1;return W("thead",{class:{[e.is("group")]:t}},l.map((v,y)=>W("tr",{class:o(y),key:y,style:r(y)},v.map((c,m)=>(c.rowSpan>d&&(d=c.rowSpan),W("th",{class:a(y,m,v,c),colspan:c.colSpan,key:`${c.id}-thead`,rowspan:c.rowSpan,style:n(y,m,v,c),onClick:f=>s(f,c),onContextmenu:f=>i(f,c),onMousedown:f=>u(f,c),onMousemove:f=>p(f,c),onMouseout:b},[W("div",{class:["cell",c.filteredValue&&c.filteredValue.length>0?"highlight":""]},[c.renderHeader?c.renderHeader({column:c,$index:m,store:x,_self:g}):c.label,c.sortable&&W("span",{onClick:f=>h(f,c),class:"caret-wrapper"},[W("i",{onClick:f=>h(f,c,"ascending"),class:"sort-caret ascending"}),W("i",{onClick:f=>h(f,c,"descending"),class:"sort-caret descending"})]),c.filterable&&W(Mi,{store:x,placement:c.filterPlacement||"bottom-start",column:c,upDataColumn:(f,M)=>{c[f]=M}})])]))))))}});function Fi(e){const t=fe(Ve),l=E(""),n=E(W("div")),{nextZIndex:a}=Ru(),o=(h,b,x)=>{var g;const d=t,v=_l(h);let y;const c=(g=d==null?void 0:d.vnode.el)==null?void 0:g.dataset.prefix;v&&(y=Dn({columns:e.store.states.columns.value},v,c),y&&(d==null||d.emit(`cell-${x}`,b,y,v,h))),d==null||d.emit(`row-${x}`,b,y,h)},r=(h,b)=>{o(h,b,"dblclick")},s=(h,b)=>{e.store.commit("setCurrentRow",b),o(h,b,"click")},i=(h,b)=>{o(h,b,"contextmenu")},u=Et(h=>{e.store.commit("setHoverRow",h)},30),p=Et(()=>{e.store.commit("setHoverRow",null)},30);return{handleDoubleClick:r,handleClick:s,handleContextMenu:i,handleMouseEnter:u,handleMouseLeave:p,handleCellMouseEnter:(h,b,x)=>{var g;const d=t,v=_l(h),y=(g=d==null?void 0:d.vnode.el)==null?void 0:g.dataset.prefix;if(v){const k=Dn({columns:e.store.states.columns.value},v,y),S=d.hoverState={cell:v,column:k,row:b};d==null||d.emit("cell-mouse-enter",S.row,S.column,S.cell,h)}if(!x)return;const c=h.target.querySelector(".cell");if(!(pl(c,`${y}-tooltip`)&&c.childNodes.length))return;const m=document.createRange();m.setStart(c,0),m.setEnd(c,c.childNodes.length);const f=Math.round(m.getBoundingClientRect().width),M=(Number.parseInt(ga(c,"paddingLeft"),10)||0)+(Number.parseInt(ga(c,"paddingRight"),10)||0);(f+M>c.offsetWidth||c.scrollWidth>c.offsetWidth)&&fi(t==null?void 0:t.refs.tableWrapper,v,v.innerText||v.textContent,a,x)},handleCellMouseLeave:h=>{if(!_l(h))return;const b=t==null?void 0:t.hoverState;t==null||t.emit("cell-mouse-leave",b==null?void 0:b.row,b==null?void 0:b.column,b==null?void 0:b.cell,h)},tooltipContent:l,tooltipTrigger:n}}function Ii(e){const t=fe(Ve),l=Z("table");return{getRowStyle:(n,a)=>{const o=t==null?void 0:t.props.rowStyle;return typeof o=="function"?o.call(null,{row:n,rowIndex:a}):o||null},getRowClass:(n,a)=>{const o=[l.e("row")];t!=null&&t.props.highlightCurrentRow&&n===e.store.states.currentRow.value&&o.push("current-row"),e.stripe&&a%2===1&&o.push(l.em("row","striped"));const r=t==null?void 0:t.props.rowClassName;return typeof r=="string"?o.push(r):typeof r=="function"&&o.push(r.call(null,{row:n,rowIndex:a})),o},getCellStyle:(n,a,o,r)=>{const s=t==null?void 0:t.props.cellStyle;let i=s??{};typeof s=="function"&&(i=s.call(null,{rowIndex:n,columnIndex:a,row:o,column:r}));const u=Hl(a,e==null?void 0:e.fixed,e.store);return dt(u,"left"),dt(u,"right"),Object.assign({},i,u)},getCellClass:(n,a,o,r,s)=>{const i=Al(l.b(),a,e==null?void 0:e.fixed,e.store,void 0,s),u=[r.id,r.align,r.className,...i],p=t==null?void 0:t.props.cellClassName;return typeof p=="string"?u.push(p):typeof p=="function"&&u.push(p.call(null,{rowIndex:n,columnIndex:a,row:o,column:r})),u.push(l.e("cell")),u.filter(h=>!!h).join(" ")},getSpan:(n,a,o,r)=>{let s=1,i=1;const u=t==null?void 0:t.props.spanMethod;if(typeof u=="function"){const p=u({row:n,column:a,rowIndex:o,columnIndex:r});Array.isArray(p)?(s=p[0],i=p[1]):typeof p=="object"&&(s=p.rowspan,i=p.colspan)}return{rowspan:s,colspan:i}},getColspanRealWidth:(n,a,o)=>{if(a<1)return n[o].realWidth;const r=n.map(({realWidth:s,width:i})=>s||i).slice(o,o+a);return Number(r.reduce((s,i)=>Number(s)+Number(i),-1))}}}function Bi(e){const t=fe(Ve),l=Z("table"),{handleDoubleClick:n,handleClick:a,handleContextMenu:o,handleMouseEnter:r,handleMouseLeave:s,handleCellMouseEnter:i,handleCellMouseLeave:u,tooltipContent:p,tooltipTrigger:h}=Fi(e),{getRowStyle:b,getRowClass:x,getCellStyle:g,getCellClass:d,getSpan:v,getColspanRealWidth:y}=Ii(e),c=N(()=>e.store.states.columns.value.findIndex(({type:k})=>k==="default")),m=(k,S)=>{const T=t.props.rowKey;return T?Se(k,T):S},f=(k,S,T,F=!1)=>{const{tooltipEffect:P,tooltipOptions:q,store:$}=e,{indent:ne,columns:ae}=$.states,he=x(k,S);let X=!0;return T&&(he.push(l.em("row",`level-${T.level}`)),X=T.display),W("tr",{style:[X?null:{display:"none"},b(k,S)],class:he,key:m(k,S),onDblclick:O=>n(O,k),onClick:O=>a(O,k),onContextmenu:O=>o(O,k),onMouseenter:()=>r(S),onMouseleave:s},ae.value.map((O,_)=>{const{rowspan:j,colspan:J}=v(k,O,S,_);if(!j||!J)return null;const oe={...O};oe.realWidth=y(ae.value,J,_);const ue={store:e.store,_self:e.context||t,column:oe,row:k,$index:S,cellIndex:_,expanded:F};_===c.value&&T&&(ue.treeNode={indent:T.level*ne.value,level:T.level},typeof T.expanded=="boolean"&&(ue.treeNode.expanded=T.expanded,"loading"in T&&(ue.treeNode.loading=T.loading),"noLazyChildren"in T&&(ue.treeNode.noLazyChildren=T.noLazyChildren)));const we=`${S},${_}`,be=oe.columnKey||oe.rawColumnKey||"",Ee=M(_,O,ue),ye=O.showOverflowTooltip&&hn({effect:P},q,O.showOverflowTooltip);return W("td",{style:g(S,_,k,O),class:d(S,_,k,O,J-1),key:`${be}${we}`,rowspan:j,colspan:J,onMouseenter:ce=>i(ce,k,ye),onMouseleave:u},[Ee])}))},M=(k,S,T)=>S.renderCell(T);return{wrappedRowRender:(k,S)=>{const T=e.store,{isRowExpanded:F,assertRowKey:P}=T,{treeData:q,lazyTreeNodeMap:$,childrenColumnName:ne,rowKey:ae}=T.states,he=T.states.columns.value;if(he.some(({type:X})=>X==="expand")){const X=F(k),O=f(k,S,void 0,X),_=t.renderExpanded;return X?_?[[O,W("tr",{key:`expanded-row__${O.key}`},[W("td",{colspan:he.length,class:`${l.e("cell")} ${l.e("expanded-cell")}`},[_({row:k,$index:S,store:T,expanded:X})])])]]:(console.error("[Element Error]renderExpanded is required."),O):[[O]]}else if(Object.keys(q.value).length){P();const X=Se(k,ae.value);let O=q.value[X],_=null;O&&(_={expanded:O.expanded,level:O.level,display:!0},typeof O.lazy=="boolean"&&(typeof O.loaded=="boolean"&&O.loaded&&(_.noLazyChildren=!(O.children&&O.children.length)),_.loading=O.loading));const j=[f(k,S,_)];if(O){let J=0;const oe=(we,be)=>{we&&we.length&&be&&we.forEach(Ee=>{const ye={display:be.display&&be.expanded,level:be.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ce=Se(Ee,ae.value);if(ce==null)throw new Error("For nested data item, row-key is required.");if(O={...q.value[ce]},O&&(ye.expanded=O.expanded,O.level=O.level||ye.level,O.display=!!(O.expanded&&ye.display),typeof O.lazy=="boolean"&&(typeof O.loaded=="boolean"&&O.loaded&&(ye.noLazyChildren=!(O.children&&O.children.length)),ye.loading=O.loading)),J++,j.push(f(Ee,S+J,ye)),O){const ze=$.value[ce]||Ee[ne.value];oe(ze,O)}})};O.display=!0;const ue=$.value[X]||k[ne.value];oe(ue,O)}return j}else return f(k,S,void 0)},tooltipContent:p,tooltipTrigger:h}}var Wi=G({name:"ElTableBody",props:{store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,tooltipOptions:{type:Object},context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean},setup(e){const t=me(),l=fe(Ve),n=Z("table"),{wrappedRowRender:a,tooltipContent:o,tooltipTrigger:r}=Bi(e),{onColumnsChange:s,onScrollableChange:i}=Qn(l);return ee(e.store.states.hoverRow,(u,p)=>{if(!e.store.states.isComplex.value||!Qe)return;let h=window.requestAnimationFrame;h||(h=b=>window.setTimeout(b,16)),h(()=>{const b=t==null?void 0:t.vnode.el,x=Array.from((b==null?void 0:b.children)||[]).filter(v=>v==null?void 0:v.classList.contains(`${n.e("row")}`)),g=x[p],d=x[u];g&&Xl(g,"hover-row"),d&&ma(d,"hover-row")})}),Yl(()=>{var u;(u=$e)==null||u()}),{ns:n,onColumnsChange:s,onScrollableChange:i,wrappedRowRender:a,tooltipContent:o,tooltipTrigger:r}},render(){const{wrappedRowRender:e,store:t}=this,l=t.states.data.value||[];return W("tbody",{},[l.reduce((n,a)=>n.concat(e(a,n.length)),[])])}});function Bl(e){const t=e.tableLayout==="auto";let l=e.columns||[];t&&l.every(a=>a.width===void 0)&&(l=[]);const n=a=>{const o={key:`${e.tableLayout}_${a.id}`,style:{},name:void 0};return t?o.style={width:`${a.width}px`}:o.name=a.id,o};return W("colgroup",{},l.map(a=>W("col",n(a))))}Bl.props=["columns","tableLayout"];function $i(){const e=fe(Ve),t=e==null?void 0:e.store,l=N(()=>t.states.fixedLeafColumnsLength.value),n=N(()=>t.states.rightFixedColumns.value.length),a=N(()=>t.states.columns.value.length),o=N(()=>t.states.fixedColumns.value.length),r=N(()=>t.states.rightFixedColumns.value.length);return{leftFixedLeafCount:l,rightFixedLeafCount:n,columnsCount:a,leftFixedCount:o,rightFixedCount:r,columns:t.states.columns}}function Vi(e){const{columns:t}=$i(),l=Z("table");return{getCellClasses:(n,a)=>{const o=n[a],r=[l.e("cell"),o.id,o.align,o.labelClassName,...Al(l.b(),a,o.fixed,e.store)];return o.className&&r.push(o.className),o.children||r.push(l.is("leaf")),r},getCellStyles:(n,a)=>{const o=Hl(a,n.fixed,e.store);return dt(o,"left"),dt(o,"right"),o},columns:t}}var Di=G({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const{getCellClasses:t,getCellStyles:l,columns:n}=Vi(e);return{ns:Z("table"),getCellClasses:t,getCellStyles:l,columns:n}},render(){const{columns:e,getCellStyles:t,getCellClasses:l,summaryMethod:n,sumText:a,ns:o}=this,r=this.store.states.data.value;let s=[];return n?s=n({columns:e,data:r}):e.forEach((i,u)=>{if(u===0){s[u]=a;return}const p=r.map(g=>Number(g[i.property])),h=[];let b=!0;p.forEach(g=>{if(!Number.isNaN(+g)){b=!1;const d=`${g}`.split(".")[1];h.push(d?d.length:0)}});const x=Math.max.apply(null,h);b?s[u]="":s[u]=p.reduce((g,d)=>{const v=Number(d);return Number.isNaN(+v)?g:Number.parseFloat((g+d).toFixed(Math.min(x,20)))},0)}),W("table",{class:o.e("footer"),cellspacing:"0",cellpadding:"0",border:"0"},[Bl({columns:e}),W("tbody",[W("tr",{},[...e.map((i,u)=>W("td",{key:u,colspan:i.colSpan,rowspan:i.rowSpan,class:l(e,u),style:t(i,u)},[W("div",{class:["cell",i.labelClassName]},[s[u]])]))])])])}});function Ki(e){return{setCurrentRow:t=>{e.commit("setCurrentRow",t)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(t,l)=>{e.toggleRowSelection(t,l,!1),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:t=>{e.clearFilter(t)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(t,l)=>{e.toggleRowExpansionAdapter(t,l)},clearSort:()=>{e.clearSort()},sort:(t,l)=>{e.commit("sort",{prop:t,order:l})}}}function ji(e,t,l,n){const a=E(!1),o=E(null),r=E(!1),s=O=>{r.value=O},i=E({width:null,height:null,headerHeight:null}),u=E(!1),p={display:"inline-block",verticalAlign:"middle"},h=E(),b=E(0),x=E(0),g=E(0),d=E(0);kt(()=>{t.setHeight(e.height)}),kt(()=>{t.setMaxHeight(e.maxHeight)}),ee(()=>[e.currentRowKey,l.states.rowKey],([O,_])=>{!C(_)||!C(O)||l.setCurrentRowKey(`${O}`)},{immediate:!0}),ee(()=>e.data,O=>{n.store.commit("setData",O)},{immediate:!0,deep:!0}),kt(()=>{e.expandRowKeys&&l.setExpandRowKeysAdapter(e.expandRowKeys)});const v=()=>{n.store.commit("setHoverRow",null),n.hoverState&&(n.hoverState=null)},y=(O,_)=>{const{pixelX:j,pixelY:J}=_;Math.abs(j)>=Math.abs(J)&&(n.refs.bodyWrapper.scrollLeft+=_.pixelX/5)},c=N(()=>e.height||e.maxHeight||l.states.fixedColumns.value.length>0||l.states.rightFixedColumns.value.length>0),m=N(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),f=()=>{c.value&&t.updateElsHeight(),t.updateColumnsWidth(),requestAnimationFrame(T)};Ue(async()=>{await re(),l.updateColumns(),F(),requestAnimationFrame(f);const O=n.vnode.el,_=n.refs.headerWrapper;e.flexible&&O&&O.parentElement&&(O.parentElement.style.minWidth="0"),i.value={width:h.value=O.offsetWidth,height:O.offsetHeight,headerHeight:e.showHeader&&_?_.offsetHeight:null},l.states.columns.value.forEach(j=>{j.filteredValue&&j.filteredValue.length&&n.store.commit("filterChange",{column:j,values:j.filteredValue,silent:!0})}),n.$ready=!0});const M=(O,_)=>{if(!O)return;const j=Array.from(O.classList).filter(J=>!J.startsWith("is-scrolling-"));j.push(t.scrollX.value?_:"is-scrolling-none"),O.className=j.join(" ")},k=O=>{const{tableWrapper:_}=n.refs;M(_,O)},S=O=>{const{tableWrapper:_}=n.refs;return!!(_&&_.classList.contains(O))},T=function(){if(!n.refs.scrollBarRef)return;if(!t.scrollX.value){const be="is-scrolling-none";S(be)||k(be);return}const O=n.refs.scrollBarRef.wrapRef;if(!O)return;const{scrollLeft:_,offsetWidth:j,scrollWidth:J}=O,{headerWrapper:oe,footerWrapper:ue}=n.refs;oe&&(oe.scrollLeft=_),ue&&(ue.scrollLeft=_);const we=J-j-1;_>=we?k("is-scrolling-right"):k(_===0?"is-scrolling-left":"is-scrolling-middle")},F=()=>{n.refs.scrollBarRef&&(n.refs.scrollBarRef.wrapRef&&Ht(n.refs.scrollBarRef.wrapRef,"scroll",T,{passive:!0}),e.fit?Ft(n.vnode.el,P):Ht(window,"resize",P),Ft(n.refs.bodyWrapper,()=>{var O,_;P(),(_=(O=n.refs)==null?void 0:O.scrollBarRef)==null||_.update()}))},P=()=>{var O,_,j;const J=n.vnode.el;if(!n.$ready||!J)return;let oe=!1;const{width:ue,height:we,headerHeight:be}=i.value,Ee=h.value=J.offsetWidth;ue!==Ee&&(oe=!0);const ye=J.offsetHeight;(e.height||c.value)&&we!==ye&&(oe=!0);const ce=e.tableLayout==="fixed"?n.refs.headerWrapper:(O=n.refs.tableHeaderRef)==null?void 0:O.$el;e.showHeader&&(ce==null?void 0:ce.offsetHeight)!==be&&(oe=!0),b.value=((_=n.refs.tableWrapper)==null?void 0:_.scrollHeight)||0,g.value=(ce==null?void 0:ce.scrollHeight)||0,d.value=((j=n.refs.footerWrapper)==null?void 0:j.offsetHeight)||0,x.value=b.value-g.value-d.value,oe&&(i.value={width:Ee,height:ye,headerHeight:e.showHeader&&(ce==null?void 0:ce.offsetHeight)||0},f())},q=qt(),$=N(()=>{const{bodyWidth:O,scrollY:_,gutterWidth:j}=t;return O.value?`${O.value-(_.value?j:0)}px`:""}),ne=N(()=>e.maxHeight?"fixed":e.tableLayout),ae=N(()=>{if(e.data&&e.data.length)return null;let O="100%";e.height&&x.value&&(O=`${x.value}px`);const _=h.value;return{width:_?`${_}px`:"",height:O}}),he=N(()=>e.height?{height:Number.isNaN(Number(e.height))?e.height:`${e.height}px`}:e.maxHeight?{maxHeight:Number.isNaN(Number(e.maxHeight))?e.maxHeight:`${e.maxHeight}px`}:{}),X=N(()=>{if(e.height)return{height:"100%"};if(e.maxHeight){if(Number.isNaN(Number(e.maxHeight)))return{maxHeight:`calc(${e.maxHeight} - ${g.value+d.value}px)`};{const O=e.maxHeight;if(b.value>=Number(O))return{maxHeight:`${b.value-g.value-d.value}px`}}}return{}});return{isHidden:a,renderExpanded:o,setDragVisible:s,isGroup:u,handleMouseLeave:v,handleHeaderFooterMousewheel:y,tableSize:q,emptyBlockStyle:ae,handleFixedMousewheel:(O,_)=>{const j=n.refs.bodyWrapper;if(Math.abs(_.spinY)>0){const J=j.scrollTop;_.pixelY<0&&J!==0&&O.preventDefault(),_.pixelY>0&&j.scrollHeight-j.clientHeight>J&&O.preventDefault(),j.scrollTop+=Math.ceil(_.pixelY/5)}else j.scrollLeft+=Math.ceil(_.pixelX/5)},resizeProxyVisible:r,bodyWidth:$,resizeState:i,doLayout:f,tableBodyStyles:m,tableLayout:ne,scrollbarViewStyle:p,tableInnerStyle:he,scrollbarStyle:X}}function qi(e){const t=E(),l=()=>{const n=e.vnode.el.querySelector(".hidden-columns"),a={childList:!0,subtree:!0},o=e.store.states.updateOrderFns;t.value=new MutationObserver(()=>{o.forEach(r=>r())}),t.value.observe(n,a)};Ue(()=>{l()}),Yl(()=>{var n;(n=t.value)==null||n.disconnect()})}var Gi={data:{type:Array,default:()=>[]},size:Kl,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children"})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:{type:Boolean,default:!1},flexible:Boolean};const Ui=()=>{const e=E(),t=(n,a)=>{const o=e.value;o&&o.scrollTo(n,a)},l=(n,a)=>{const o=e.value;o&&Oe(a)&&["Top","Left"].includes(n)&&o[`setScroll${n}`](a)};return{scrollBarRef:e,scrollTo:t,setScrollTop:n=>l("Top",n),setScrollLeft:n=>l("Left",n)}};let Yi=1;const Xi=G({name:"ElTable",directives:{Mousewheel:Tr},components:{TableHeader:Hi,TableBody:Wi,TableFooter:Di,ElScrollbar:Cl,hColgroup:Bl},props:Gi,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change"],setup(e){const{t}=He(),l=Z("table"),n=me();bt(Ve,n);const a=Ci(n,e);n.store=a;const o=new ki({store:n.store,table:n,fit:e.fit,showHeader:e.showHeader});n.layout=o;const r=N(()=>(a.states.data.value||[]).length===0),{setCurrentRow:s,getSelectionRows:i,toggleRowSelection:u,clearSelection:p,clearFilter:h,toggleAllSelection:b,toggleRowExpansion:x,clearSort:g,sort:d}=Ki(a),{isHidden:v,renderExpanded:y,setDragVisible:c,isGroup:m,handleMouseLeave:f,handleHeaderFooterMousewheel:M,tableSize:k,emptyBlockStyle:S,handleFixedMousewheel:T,resizeProxyVisible:F,bodyWidth:P,resizeState:q,doLayout:$,tableBodyStyles:ne,tableLayout:ae,scrollbarViewStyle:he,tableInnerStyle:X,scrollbarStyle:O}=ji(e,o,a,n),{scrollBarRef:_,scrollTo:j,setScrollLeft:J,setScrollTop:oe}=Ui(),ue=Et($,50),we=`${l.namespace.value}-table_${Yi++}`;n.tableId=we,n.state={isGroup:m,resizeState:q,doLayout:$,debouncedUpdateLayout:ue};const be=N(()=>e.sumText||t("el.table.sumText")),Ee=N(()=>e.emptyText||t("el.table.emptyText"));return qi(n),{ns:l,layout:o,store:a,handleHeaderFooterMousewheel:M,handleMouseLeave:f,tableId:we,tableSize:k,isHidden:v,isEmpty:r,renderExpanded:y,resizeProxyVisible:F,resizeState:q,isGroup:m,bodyWidth:P,tableBodyStyles:ne,emptyBlockStyle:S,debouncedUpdateLayout:ue,handleFixedMousewheel:T,setCurrentRow:s,getSelectionRows:i,toggleRowSelection:u,clearSelection:p,clearFilter:h,toggleAllSelection:b,toggleRowExpansion:x,clearSort:g,doLayout:$,sort:d,t,setDragVisible:c,context:n,computedSumText:be,computedEmptyText:Ee,tableLayout:ae,scrollbarViewStyle:he,tableInnerStyle:X,scrollbarStyle:O,scrollBarRef:_,scrollTo:j,setScrollLeft:J,setScrollTop:oe}}}),Qi=["data-prefix"],Ji={ref:"hiddenColumns",class:"hidden-columns"};function Zi(e,t,l,n,a,o){const r=ge("hColgroup"),s=ge("table-header"),i=ge("table-body"),u=ge("el-scrollbar"),p=ge("table-footer"),h=Gl("mousewheel");return R(),I("div",{ref:"tableWrapper",class:z([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:Ce(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:t[0]||(t[0]=b=>e.handleMouseLeave())},[U("div",{class:z(e.ns.e("inner-wrapper")),style:Ce(e.tableInnerStyle)},[U("div",Ji,[Ne(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?Me((R(),I("div",{key:0,ref:"headerWrapper",class:z(e.ns.e("header-wrapper"))},[U("table",{ref:"tableHeader",class:z(e.ns.e("header")),style:Ce(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[ve(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),ve(s,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])],6)],2)),[[h,e.handleHeaderFooterMousewheel]]):le("v-if",!0),U("div",{ref:"bodyWrapper",class:z(e.ns.e("body-wrapper"))},[ve(u,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn},{default:Y(()=>[U("table",{ref:"tableBody",class:z(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:Ce({width:e.bodyWidth,tableLayout:e.tableLayout})},[ve(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(R(),Q(s,{key:0,ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])):le("v-if",!0),ve(i,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.tooltipEffect,"tooltip-options":e.tooltipOptions,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","tooltip-options","row-style","store","stripe"])],6),e.isEmpty?(R(),I("div",{key:0,ref:"emptyBlock",style:Ce(e.emptyBlockStyle),class:z(e.ns.e("empty-block"))},[U("span",{class:z(e.ns.e("empty-text"))},[Ne(e.$slots,"empty",{},()=>[dl(se(e.computedEmptyText),1)])],2)],6)):le("v-if",!0),e.$slots.append?(R(),I("div",{key:1,ref:"appendWrapper",class:z(e.ns.e("append-wrapper"))},[Ne(e.$slots,"append")],2)):le("v-if",!0)]),_:3},8,["view-style","wrap-style","always"])],2),e.showSummary?Me((R(),I("div",{key:1,ref:"footerWrapper",class:z(e.ns.e("footer-wrapper"))},[ve(p,{border:e.border,"default-sort":e.defaultSort,store:e.store,style:Ce(e.tableBodyStyles),"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","style","sum-text","summary-method"])],2)),[[gt,!e.isEmpty],[h,e.handleHeaderFooterMousewheel]]):le("v-if",!0),e.border||e.isGroup?(R(),I("div",{key:2,class:z(e.ns.e("border-left-patch"))},null,2)):le("v-if",!0)],6),Me(U("div",{ref:"resizeProxy",class:z(e.ns.e("column-resize-proxy"))},null,2),[[gt,e.resizeProxyVisible]])],46,Qi)}var eu=xe(Xi,[["render",Zi],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/table.vue"]]);const tu={selection:"table-column--selection",expand:"table__expand-column"},lu={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},nu=e=>tu[e]||"",au={selection:{renderHeader({store:e}){function t(){return e.states.data.value&&e.states.data.value.length===0}return W(ct,{disabled:t(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":e.toggleAllSelection,modelValue:e.states.isAllSelected.value})},renderCell({row:e,column:t,store:l,$index:n}){return W(ct,{disabled:t.selectable?!t.selectable.call(null,e,n):!1,size:l.states.tableSize.value,onChange:()=>{l.commit("rowSelectedChanged",e)},onClick:a=>a.stopPropagation(),modelValue:l.isSelected(e)})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let l=t+1;const n=e.index;return typeof n=="number"?l=t+n:typeof n=="function"&&(l=n(t)),W("div",{},[l])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({row:e,store:t,expanded:l}){const{ns:n}=t,a=[n.e("expand-icon")];return l&&a.push(n.em("expand-icon","expanded")),W("div",{class:a,onClick:function(o){o.stopPropagation(),t.toggleRowExpansion(e)}},{default:()=>[W(Je,null,{default:()=>[W(Ul)]})]})},sortable:!1,resizable:!1}};function ou({row:e,column:t,$index:l}){var n;const a=t.property,o=a&&Tu(e,a).value;return t&&t.formatter?t.formatter(e,t,o,l):((n=o==null?void 0:o.toString)==null?void 0:n.call(o))||""}function ru({row:e,treeNode:t,store:l},n=!1){const{ns:a}=l;if(!t)return n?[W("span",{class:a.e("placeholder")})]:null;const o=[],r=function(s){s.stopPropagation(),!t.loading&&l.loadOrToggle(e)};if(t.indent&&o.push(W("span",{class:a.e("indent"),style:{"padding-left":`${t.indent}px`}})),typeof t.expanded=="boolean"&&!t.noLazyChildren){const s=[a.e("expand-icon"),t.expanded?a.em("expand-icon","expanded"):""];let i=Ul;t.loading&&(i=Mu),o.push(W("div",{class:s,onClick:r},{default:()=>[W(Je,{class:{[a.is("loading")]:t.loading}},{default:()=>[W(i)]})]}))}else o.push(W("span",{class:a.e("placeholder")}));return o}function Zn(e,t){return e.reduce((l,n)=>(l[n]=n,l),t)}function su(e,t){const l=me();return{registerComplexWatchers:()=>{const n=["fixed"],a={realWidth:"width",realMinWidth:"minWidth"},o=Zn(n,a);Object.keys(o).forEach(r=>{const s=a[r];Kt(t,s)&&ee(()=>t[s],i=>{let u=i;s==="width"&&r==="realWidth"&&(u=Pl(i)),s==="minWidth"&&r==="realMinWidth"&&(u=Kn(i)),l.columnConfig.value[s]=u,l.columnConfig.value[r]=u;const p=s==="fixed";e.value.store.scheduleLayout(p)})})},registerNormalWatchers:()=>{const n=["label","filters","filterMultiple","sortable","index","formatter","className","labelClassName","showOverflowTooltip"],a={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},o=Zn(n,a);Object.keys(o).forEach(r=>{const s=a[r];Kt(t,s)&&ee(()=>t[s],i=>{l.columnConfig.value[r]=i})})}}}function iu(e,t,l){const n=me(),a=E(""),o=E(!1),r=E(),s=E(),i=Z("table");kt(()=>{r.value=e.align?`is-${e.align}`:null,r.value}),kt(()=>{s.value=e.headerAlign?`is-${e.headerAlign}`:r.value,s.value});const u=N(()=>{let v=n.vnode.vParent||n.parent;for(;v&&!v.tableId&&!v.columnId;)v=v.vnode.vParent||v.parent;return v}),p=N(()=>{const{store:v}=n.parent;if(!v)return!1;const{treeData:y}=v.states,c=y.value;return c&&Object.keys(c).length>0}),h=E(Pl(e.width)),b=E(Kn(e.minWidth)),x=v=>(h.value&&(v.width=h.value),b.value&&(v.minWidth=b.value),!h.value&&b.value&&(v.width=void 0),v.minWidth||(v.minWidth=80),v.realWidth=Number(v.width===void 0?v.minWidth:v.width),v),g=v=>{const y=v.type,c=au[y]||{};Object.keys(c).forEach(f=>{const M=c[f];f!=="className"&&M!==void 0&&(v[f]=M)});const m=nu(y);if(m){const f=`${C(i.namespace)}-${m}`;v.className=v.className?`${v.className} ${f}`:f}return v},d=v=>{Array.isArray(v)?v.forEach(c=>y(c)):y(v);function y(c){var m;((m=c==null?void 0:c.type)==null?void 0:m.name)==="ElTableColumn"&&(c.vParent=n)}};return{columnId:a,realAlign:r,isSubColumn:o,realHeaderAlign:s,columnOrTableParent:u,setColumnWidth:x,setColumnForcedProps:g,setColumnRenders:v=>{e.renderHeader||v.type!=="selection"&&(v.renderHeader=c=>{n.columnConfig.value.label;const m=t.header;return m?m(c):v.label});let y=v.renderCell;return v.type==="expand"?(v.renderCell=c=>W("div",{class:"cell"},[y(c)]),l.value.renderExpanded=c=>t.default?t.default(c):t.default):(y=y||ou,v.renderCell=c=>{let m=null;if(t.default){const F=t.default(c);m=F.some(P=>P.type!==zu)?F:y(c)}else m=y(c);const{columns:f}=l.value.store.states,M=f.value.findIndex(F=>F.type==="default"),k=p.value&&c.cellIndex===M,S=ru(c,k),T={class:"cell",style:{}};return v.showOverflowTooltip&&(T.class=`${T.class} ${C(i.namespace)}-tooltip`,T.style={width:`${(c.column.realWidth||Number(c.column.width))-1}px`}),d(m),W("div",T,[S,m])}),v},getPropsData:(...v)=>v.reduce((y,c)=>(Array.isArray(c)&&c.forEach(m=>{y[m]=e[m]}),y),{}),getColumnElIndex:(v,y)=>Array.prototype.indexOf.call(v,y),updateColumnOrder:()=>{l.value.store.commit("updateColumnOrder",n.columnConfig.value)}}}var uu={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showOverflowTooltip:[Boolean,Object],fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let cu=1;var ea=G({name:"ElTableColumn",components:{ElCheckbox:ct},props:uu,setup(e,{slots:t}){const l=me(),n=E({}),a=N(()=>{let m=l.parent;for(;m&&!m.tableId;)m=m.parent;return m}),{registerNormalWatchers:o,registerComplexWatchers:r}=su(a,e),{columnId:s,isSubColumn:i,realHeaderAlign:u,columnOrTableParent:p,setColumnWidth:h,setColumnForcedProps:b,setColumnRenders:x,getPropsData:g,getColumnElIndex:d,realAlign:v,updateColumnOrder:y}=iu(e,t,a),c=p.value;s.value=`${c.tableId||c.columnId}_column_${cu++}`,fa(()=>{i.value=a.value!==c;const m=e.type||"default",f=e.sortable===""?!0:e.sortable,M={...lu[m],id:s.value,type:m,property:e.prop||e.property,align:v,headerAlign:u,showOverflowTooltip:e.showOverflowTooltip,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:f,index:e.index,rawColumnKey:l.vnode.key};let k=g(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement"]);k=di(M,k),k=vi(x,h,b)(k),n.value=k,o(),r()}),Ue(()=>{var m;const f=p.value,M=i.value?f.vnode.el.children:(m=f.refs.hiddenColumns)==null?void 0:m.children,k=()=>d(M||[],l.vnode.el);n.value.getColumnIndex=k,k()>-1&&a.value.store.commit("insertColumn",n.value,i.value?f.columnConfig.value:null,y)}),Dl(()=>{a.value.store.commit("removeColumn",n.value,i.value?c.columnConfig.value:null,y)}),l.columnId=s.value,l.columnConfig=n},render(){var e,t,l;try{const n=(t=(e=this.$slots).default)==null?void 0:t.call(e,{row:{},column:{},$index:-1}),a=[];if(Array.isArray(n))for(const o of n)((l=o.type)==null?void 0:l.name)==="ElTableColumn"||o.shapeFlag&2?a.push(o):o.type===We&&Array.isArray(o.children)&&o.children.forEach(r=>{(r==null?void 0:r.patchFlag)!==1024&&!Bt(r==null?void 0:r.children)&&a.push(r)});return W("div",a)}catch{return W("div",[])}}});Ta=xt(eu,{TableColumn:ea}),Ra=Vt(ea)});export{Ra as E,tc as __tla,Ta as a,Ma as b}; diff --git a/niucloud/public/web/_nuxt/el-select.b2660191.css b/niucloud/public/web/_nuxt/el-select.b2660191.css new file mode 100644 index 0000000..f90e8da --- /dev/null +++ b/niucloud/public/web/_nuxt/el-select.b2660191.css @@ -0,0 +1 @@ +.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{background-color:#fff;border:1px solid var(--el-border-color-lighter);border-radius:2px;box-shadow:var(--el-box-shadow-light);box-sizing:border-box}.el-table-filter__list{list-style:none;margin:0;min-width:100px;padding:5px 0}.el-table-filter__list-item{cursor:pointer;font-size:var(--el-font-size-base);line-height:36px;padding:0 10px}.el-table-filter__list-item:hover{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{background:0 0;border:none;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button:focus{outline:0}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{align-items:center;display:flex;height:unset;margin-bottom:12px;margin-left:5px;margin-right:5px}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);align-items:center;color:var(--el-checkbox-text-color);cursor:pointer;display:inline-flex;font-size:var(--el-font-size-base);font-weight:var(--el-checkbox-font-weight);height:32px;margin-right:30px;position:relative;-webkit-user-select:none;user-select:none;white-space:nowrap}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border:var(--el-border);border-radius:var(--el-border-radius-base);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox input:focus-visible+.el-checkbox__inner{border-radius:var(--el-checkbox-border-radius);outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px}.el-checkbox__input{cursor:pointer;display:inline-flex;outline:0;position:relative;white-space:nowrap}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-icon-color);cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{transform:rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-checked-icon-color);content:"";display:block;height:2px;left:0;position:absolute;right:0;top:5px;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{background-color:var(--el-checkbox-bg-color);border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;display:inline-block;height:var(--el-checkbox-input-height);position:relative;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);width:var(--el-checkbox-input-width);z-index:var(--el-index-normal)}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{border:1px solid var(--el-checkbox-checked-icon-color);border-left:0;border-top:0;box-sizing:content-box;content:"";height:7px;left:4px;position:absolute;top:1px;transform:rotate(45deg) scaleY(0);transform-origin:center;transition:transform .15s ease-in 50ms;width:3px}.el-checkbox__original{height:0;margin:0;opacity:0;outline:0;position:absolute;width:0;z-index:-1}.el-checkbox__label{display:inline-block;font-size:var(--el-checkbox-font-size);line-height:1;padding-left:8px}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox:last-of-type{margin-right:0}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);--el-tag-text-color:var(--el-color-primary);--el-icon-size:14px;align-items:center;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);border-radius:var(--el-tag-border-radius);border-style:solid;border-width:1px;box-sizing:border-box;color:var(--el-tag-text-color);display:inline-flex;font-size:var(--el-tag-font-size);height:24px;justify-content:center;line-height:1;padding:0 9px;white-space:nowrap}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color)}.el-tag .el-tag__close:hover{background-color:var(--el-tag-hover-color);color:var(--el-color-white)}.el-tag .el-icon{border-radius:50%;cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size)}.el-tag .el-tag__close{margin-left:6px}.el-tag--dark{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3);--el-tag-text-color:var(--el-color-white)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info,.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning{--el-tag-text-color:var(--el-color-white)}.el-tag--plain{--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary);--el-tag-bg-color:var(--el-fill-color-blank)}.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0,0,0,.15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0,0,0,.15);background-color:var(--el-table-bg-color);box-sizing:border-box;color:var(--el-table-text-color);font-size:14px;height:-moz-fit-content;height:fit-content;max-width:100%;overflow:hidden;position:relative;width:100%}.el-table__inner-wrapper{display:flex;flex-direction:column;height:100%;position:relative}.el-table__inner-wrapper:before{bottom:0;height:1px;left:0;width:100%}.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell,.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell{border-bottom-color:transparent}.el-table__empty-block{align-items:center;display:flex;justify-content:center;left:0;min-height:60px;position:sticky;text-align:center;width:100%}.el-table__empty-text{color:var(--el-text-color-secondary);line-height:60px;width:50%}.el-table__expand-column .cell{padding:0;text-align:center;-webkit-user-select:none;user-select:none}.el-table__expand-icon{color:var(--el-text-color-regular);cursor:pointer;font-size:12px;height:20px;position:relative;transition:transform var(--el-transition-duration-fast) ease-in-out}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table thead{color:var(--el-table-header-text-color);font-weight:500}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;min-width:0;padding:8px 0;position:relative;text-align:left;text-overflow:ellipsis;vertical-align:middle;z-index:1}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;padding:0;width:15px}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;line-height:23px;overflow:hidden;padding:0 12px;text-overflow:ellipsis;white-space:normal;word-break:break-all}.el-table .cell.el-tooltip{min-width:50px;white-space:nowrap}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:14px}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:12px}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color);-webkit-user-select:none;user-select:none}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{background:#ff4d51;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:5px;vertical-align:middle;width:8px}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table__footer-wrapper{border-top:var(--el-table-border)}.el-table--border .el-table__inner-wrapper:after,.el-table--border:after,.el-table--border:before,.el-table__inner-wrapper:before{background-color:var(--el-table-border-color);content:"";position:absolute;z-index:3}.el-table--border .el-table__inner-wrapper:after{height:1px;left:0;top:0;width:100%}.el-table--border:before{height:100%;left:0;top:-1px;width:1px}.el-table--border:after{height:100%;right:0;top:-1px;width:1px}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right,.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background:var(--el-bg-color);position:sticky!important;z-index:2}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{bottom:-1px;box-shadow:none;content:"";overflow-x:hidden;overflow-y:hidden;pointer-events:none;position:absolute;top:0;touch-action:none;width:10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{box-shadow:none;right:-10px}.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch,.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch{background:#fff;position:sticky!important;right:0;z-index:2}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body,.el-table__footer,.el-table__header{border-collapse:separate;table-layout:fixed}.el-table__footer-wrapper,.el-table__header-wrapper{overflow:hidden}.el-table__footer-wrapper tbody td.el-table__cell,.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__body-wrapper .el-table-column--selection>.cell,.el-table__header-wrapper .el-table-column--selection>.cell{align-items:center;display:inline-flex;height:23px}.el-table__body-wrapper .el-table-column--selection .el-checkbox,.el-table__header-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;overflow:hidden;position:relative}.el-table__body-wrapper .el-scrollbar__bar{z-index:2}.el-table .caret-wrapper{align-items:center;cursor:pointer;display:inline-flex;flex-direction:column;height:14px;overflow:initial;position:relative;vertical-align:middle;width:24px}.el-table .sort-caret{border:5px solid transparent;height:0;left:7px;position:absolute;width:0}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{position:absolute;visibility:hidden;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__column-resize-proxy{border-left:var(--el-table-border);bottom:0;left:200px;position:absolute;top:0;width:0;z-index:10}.el-table__column-filter-trigger{cursor:pointer;display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);font-size:14px;vertical-align:middle}.el-table__border-left-patch{height:100%;top:0;width:1px}.el-table__border-bottom-patch,.el-table__border-left-patch{background-color:var(--el-table-border-color);left:0;position:absolute;z-index:3}.el-table__border-bottom-patch{height:1px}.el-table__border-right-patch{background-color:var(--el-table-border-color);height:100%;position:absolute;top:0;width:1px;z-index:3}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;height:12px;line-height:12px;margin-right:8px;text-align:center;width:12px}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;overflow:hidden;position:relative}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));border-radius:inherit;cursor:pointer;display:block;height:0;opacity:var(--el-scrollbar-opacity,.3);position:relative;transition:var(--el-transition-duration) background-color;width:0}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{border-radius:4px;bottom:2px;position:absolute;right:2px;z-index:1}.el-scrollbar__bar.is-vertical{top:2px;width:6px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-item-gap:16px;align-items:center;color:var(--el-pagination-text-color);display:flex;font-size:var(--el-pagination-font-size);font-weight:400;white-space:nowrap}.el-pagination .el-input__inner{-moz-appearance:textfield;text-align:center}.el-pagination .el-select .el-input{width:128px}.el-pagination button{align-items:center;background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;display:flex;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pagination button *{pointer-events:none}.el-pagination button:focus{outline:0}.el-pagination button.is-active,.el-pagination button:hover{color:var(--el-pagination-hover-color)}.el-pagination button.is-active{cursor:default;font-weight:700}.el-pagination button.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pagination button.is-disabled,.el-pagination button:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pagination button:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700;width:inherit}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{color:var(--el-text-color-regular);font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{align-items:center;color:var(--el-text-color-regular);display:flex;font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{box-sizing:border-box;text-align:center}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{align-items:center;display:flex;flex:1;justify-content:flex-end}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{background-color:var(--el-pagination-button-bg-color);margin:0 4px}.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.is-disabled,.el-pagination.is-background .el-pager li:disabled{background-color:var(--el-disabled-bg-color);color:var(--el-text-color-placeholder)}.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active{background-color:var(--el-fill-color-dark);color:var(--el-text-color-secondary)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li{font-size:var(--el-pagination-font-size-small);height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select .el-input{width:100px}.el-pager{font-size:0;list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.el-pager,.el-pager li{align-items:center;display:flex}.el-pager li{background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:0}.el-pager li.is-active,.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pager li.is-disabled,.el-pager li:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-select-dropdown__item{box-sizing:border-box;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-base);height:34px;line-height:34px;overflow:hidden;padding:0 32px 0 20px;position:relative;text-overflow:ellipsis;white-space:nowrap}.el-select-dropdown__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.selected{color:var(--el-color-primary);font-weight:700}.el-select-group{margin:0;padding:0}.el-select-group__wrap{list-style:none;margin:0;padding:0;position:relative}.el-select-group__wrap:not(:last-of-type){padding-bottom:24px}.el-select-group__wrap:not(:last-of-type):after{bottom:12px;content:"";display:block}.el-select-group__split-dash,.el-select-group__wrap:not(:last-of-type):after{background:var(--el-border-color-light);height:1px;left:20px;position:absolute;right:20px}.el-select-group__title{color:var(--el-color-info);font-size:12px;line-height:30px;padding-left:20px}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select-dropdown{border-radius:var(--el-border-radius-base);box-sizing:border-box;z-index:calc(var(--el-index-top) + 1)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected{background-color:var(--el-bg-color-overlay);color:var(--el-color-primary)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.hover{background-color:var(--el-fill-color-light)}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected:after{background-color:var(--el-color-primary);background-position:50%;background-repeat:no-repeat;border-right:none;border-top:none;content:"";height:12px;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;position:absolute;right:20px;top:50%;transform:translateY(-50%);width:12px}.el-select-dropdown.is-multiple .el-select-dropdown__item.selected.is-disabled:after{background-color:var(--el-text-color-disabled)}.el-select-dropdown .el-select-dropdown__option-item.is-selected:after{background-color:var(--el-color-primary);background-position:50%;background-repeat:no-repeat;border-right:none;border-top:none;content:"";height:12px;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;mask-size:100% 100%;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") no-repeat;-webkit-mask-size:100% 100%;position:absolute;right:20px;top:50%;transform:translateY(-50%);width:12px}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown .el-select-dropdown__item.is-disabled:hover{background-color:unset}.el-select-dropdown .el-select-dropdown__item.is-disabled.selected{color:var(--el-text-color-disabled)}.el-select-dropdown__empty{color:var(--el-text-color-secondary);font-size:var(--el-select-font-size);margin:0;padding:10px 0;text-align:center}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{box-sizing:border-box;list-style:none;margin:0;padding:6px 0}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;display:inline-block;line-height:32px;position:relative;vertical-align:middle}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper,.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-left-color:transparent;border-top-color:transparent}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:transparent;border-right-color:transparent}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:transparent;border-left-color:transparent}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-right-color:transparent;border-top-color:transparent}.el-select .el-select-tags-wrapper.has-prefix{margin-left:6px}.el-select--large{line-height:40px}.el-select--large .el-select-tags-wrapper.has-prefix{margin-left:8px}.el-select--small{line-height:24px}.el-select--small .el-select-tags-wrapper.has-prefix{margin-left:4px}.el-select .el-select__tags>span{display:inline-block}.el-select:hover:not(.el-select--disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-border-color-hover) inset}.el-select .el-select__tags-text{display:inline-block;line-height:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-select .el-input__wrapper{cursor:pointer}.el-select .el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select .el-input__inner{cursor:pointer}.el-select .el-input{display:flex}.el-select .el-input .el-select__caret{color:var(--el-select-input-color);cursor:pointer;font-size:var(--el-select-input-font-size);transform:rotate(0);transition:transform var(--el-transition-duration)}.el-select .el-input .el-select__caret.is-reverse{transform:rotate(-180deg)}.el-select .el-input .el-select__caret.is-show-close{border-radius:var(--el-border-radius-circle);color:var(--el-select-input-color);font-size:var(--el-select-font-size);text-align:center;transform:rotate(0);transition:var(--el-transition-color)}.el-select .el-input .el-select__caret.is-show-close:hover{color:var(--el-select-close-hover-color)}.el-select .el-input .el-select__caret.el-icon{height:inherit;position:relative;z-index:2}.el-select .el-input.is-disabled .el-input__wrapper{cursor:not-allowed}.el-select .el-input.is-disabled .el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select .el-input.is-disabled .el-input__inner,.el-select .el-input.is-disabled .el-select__caret{cursor:not-allowed}.el-select .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-select-input-focus-border-color) inset!important}.el-select__input{-webkit-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--el-select-multiple-input-color);font-size:var(--el-select-font-size);height:28px;margin-left:15px;outline:0;padding:0}.el-select__input.is-disabled{cursor:not-allowed}.el-select__input--iOS{left:0;position:absolute;top:0;z-index:6}.el-select__input.is-small{height:14px}.el-select__close{color:var(--el-select-input-color);cursor:pointer;font-size:var(--el-select-input-font-size);line-height:18px;position:absolute;right:25px;top:8px;z-index:var(--el-index-top)}.el-select__close:hover{color:var(--el-select-close-hover-color)}.el-select__tags{align-items:center;cursor:pointer;display:flex;flex-wrap:wrap;line-height:normal;position:absolute;top:50%;transform:translateY(-50%);white-space:normal;z-index:var(--el-index-normal)}.el-select__tags .el-tag{border-color:transparent;box-sizing:border-box;margin:2px 6px 2px 0}.el-select__tags .el-tag:last-child{margin-right:0}.el-select__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:#fff;right:-7px;top:0}.el-select__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__tags.is-disabled{cursor:not-allowed}.el-select__collapse-tags{align-items:center;cursor:pointer;display:flex;flex-wrap:wrap;white-space:normal;z-index:var(--el-index-normal)}.el-select__collapse-tags .el-tag{border-color:transparent;box-sizing:border-box;margin:2px 6px 2px 0}.el-select__collapse-tags .el-tag:last-child{margin-right:0}.el-select__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:#fff;right:-7px;top:0}.el-select__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-select__collapse-tags .el-tag .el-icon-close:before{display:block;transform:translateY(.5px)}.el-select__collapse-tags .el-tag--info{background-color:var(--el-fill-color)}.el-select__collapse-tag{display:flex;height:inherit;line-height:inherit} diff --git a/niucloud/public/web/_nuxt/entry.1653e94f.css b/niucloud/public/web/_nuxt/entry.1653e94f.css new file mode 100644 index 0000000..e19c36c --- /dev/null +++ b/niucloud/public/web/_nuxt/entry.1653e94f.css @@ -0,0 +1 @@ +@charset "UTF-8";*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}::moz-focus-inner{border-style:none;padding:0}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}a{color:inherit;text-decoration:inherit}body{font-family:inherit;line-height:inherit;margin:0}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}h2{font-size:inherit;font-weight:inherit}img{border-style:solid;display:block;height:auto;max-width:100%;vertical-align:middle}h2,p{margin:0}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.bg-page{background-color:var(--el-bg-color-page)}.bg-white{background-color:var(--el-color-white)}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249,250,251,var(--tw-bg-opacity))}.bg-\[\#3F4045\]{--tw-bg-opacity:1;background-color:rgba(63,64,69,var(--tw-bg-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209,213,219,var(--tw-border-opacity))}.border-\[solid\]{--tw-border-opacity:1;border-color:rgba(solid,var(--tw-border-opacity))}.border-\[\#508BFE\]{--tw-border-opacity:1;border-color:rgba(80,139,254,var(--tw-border-opacity))}.rounded-\[5px\]{border-radius:5px}.rounded-full{border-radius:9999px}.border-solid{border-style:solid}.border,.border-\[1px\]{border-width:1px}.border-b-1{border-bottom-width:1px}.border-r{border-right-width:1px}.box-content{box-sizing:content-box}.cursor-pointer{cursor:pointer}.block{display:block}.flex{display:flex}.hidden{display:none}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.content-center{align-content:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.font-bold{font-weight:700}.h-full{height:100%}.h-screen{height:100vh}.h-\[150px\]{height:150px}.h-\[120px\]{height:120px}.h-\[30px\]{height:30px}.h-\[100px\]{height:100px}.h-\[40px\]{height:40px}.h-\[80px\]{height:80px}.h-\[65px\]{height:65px}.h-\[220px\]{height:220px}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xs{font-size:.75rem;line-height:1rem}.text-\[24px\]{font-size:24px;line-height:1}.text-\[40px\]{font-size:40px;line-height:1}.text-\[16px\]{font-size:16px;line-height:1}.text-\[20px\]{font-size:20px;line-height:1}.text-\[14px\]{font-size:14px;line-height:1}.leading-none{line-height:1}.leading-\[22px\]{line-height:22px}.leading-\[40px\]{line-height:40px}.my-\[30px\]{margin-bottom:30px;margin-top:30px}.mx-auto{margin-left:auto;margin-right:auto}.mx-4{margin-left:1rem;margin-right:1rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mt-\[20px\]{margin-top:20px}.mb-\[50px\]{margin-bottom:50px}.mr-3{margin-right:.75rem}.ml-1{margin-left:.25rem}.mt-\[50px\]{margin-top:50px}.mb-\[10px\]{margin-bottom:10px}.mb-\[20px\]{margin-bottom:20px}.mt-2{margin-top:.5rem}.mb-2{margin-bottom:.5rem}.mr-5{margin-right:1.25rem}.mb-\[30px\]{margin-bottom:30px}.mt-\[15px\]{margin-top:15px}.mr-\[20px\]{margin-right:20px}.mt-\[5px\]{margin-top:5px}.mt-\[30px\]{margin-top:30px}.mt-\[100px\]{margin-top:100px}.mr-\[10px\]{margin-right:10px}.ml-\[20px\]{margin-left:20px}.ml-4{margin-left:1rem}.mt-\[16px\]{margin-top:16px}.mt-1{margin-top:.25rem}.mt-8{margin-top:2rem}.mt-\[70px\]{margin-top:70px}.mr-2{margin-right:.5rem}.ml-\[10px\]{margin-left:10px}.ml-auto{margin-left:auto}.min-h-\[100\%\]{min-height:100%}.min-w-\[1200px\]{min-width:1200px}.p-\[30px\]{padding:30px}.p-\[10px\]{padding:10px}.p-0{padding:0}.py-\[20px\]{padding-bottom:20px;padding-top:20px}.py-\[100px\]{padding-bottom:100px;padding-top:100px}.py-\[50rpx\]{padding-bottom:50rpx;padding-top:50rpx}.py-0{padding-bottom:0;padding-top:0}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-\[5px\]{padding-bottom:5px;padding-top:5px}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pb-\[200px\]{padding-bottom:200px}.pt-\[60px\]{padding-top:60px}.pr-15{padding-right:3.75rem}.pb-5{padding-bottom:1.25rem}.absolute{position:absolute}.relative{position:relative}.inset-0{bottom:0;left:0;right:0;top:0}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/.1),0 1px 2px -1px rgb(0 0 0/.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.text-center{text-align:center}.text-gray-500{--tw-text-opacity:1;color:rgba(107,114,128,var(--tw-text-opacity))}.text-\[\#999\]{--tw-text-opacity:1;color:rgba(153,153,153,var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgba(75,85,99,var(--tw-text-opacity))}.text-primary{color:var(--el-color-primary)}.text-\[\#666666\],.text-\[\#666\]{--tw-text-opacity:1;color:rgba(102,102,102,var(--tw-text-opacity))}.text-\[\#333\]{--tw-text-opacity:1;color:rgba(51,51,51,var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgba(156,163,175,var(--tw-text-opacity))}.text-\[\#A6B0C8\]{--tw-text-opacity:1;color:rgba(166,176,200,var(--tw-text-opacity))}.overflow-ellipsis{text-overflow:ellipsis}.whitespace-pre{white-space:pre}.w-full{width:100%}.w-screen{width:100vw}.w-\[50px\]{width:50px}.w-\[150px\]{width:150px}.w-\[1030px\]{width:1030px}.w-\[380px\]{width:380px}.w-\[330px\]{width:330px}.w-\[120px\]{width:120px}.w-\[280px\]{width:280px}.w-\[30px\]{width:30px}.w-\[80px\]{width:80px}.w-\[65px\]{width:65px}.w-\[200px\]{width:200px}.w-\[132px\]{width:132px}.z-1{z-index:1}.blur{--tw-blur:blur(8px)}@media (min-width:1280px){.xl\:block{display:block}}:root{--el-color-primary-rgb:64,158,255;--el-color-success-rgb:103,194,58;--el-color-warning-rgb:230,162,60;--el-color-danger-rgb:245,108,108;--el-color-error-rgb:245,108,108;--el-color-info-rgb:144,147,153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","\5fae\8f6f\96c5\9ed1",Arial,sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645,.045,.355,1);--el-transition-function-fast-bezier:cubic-bezier(.23,1,.32,1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier),opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--el-color-white:#fff;--el-color-black:#000;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px rgba(0,0,0,.04),0px 8px 20px rgba(0,0,0,.08);--el-box-shadow-light:0px 0px 12px rgba(0,0,0,.12);--el-box-shadow-lighter:0px 0px 6px rgba(0,0,0,.12);--el-box-shadow-dark:0px 16px 48px 16px rgba(0,0,0,.08),0px 12px 32px rgba(0,0,0,.12),0px 8px 16px -8px rgba(0,0,0,.16);--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:rgba(0,0,0,.8);--el-overlay-color-light:rgba(0,0,0,.7);--el-overlay-color-lighter:rgba(0,0,0,.5);--el-mask-color:hsla(0,0%,100%,.9);--el-mask-color-extra-light:hsla(0,0%,100%,.3);--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color);color-scheme:light}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:var(--el-transition-md-fade)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:var(--el-transition-md-fade)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:var(--el-transition-md-fade)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon-loading{animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.el-icon{--color:inherit;fill:currentColor;align-items:center;color:var(--color);display:inline-flex;font-size:inherit;height:1em;justify-content:center;line-height:1em;position:relative;width:1em}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;display:inline-block;position:relative;vertical-align:middle;width:-moz-fit-content;width:fit-content}.el-badge__content{align-items:center;background-color:var(--el-badge-bg-color);border:1px solid var(--el-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);display:inline-flex;font-size:var(--el-badge-font-size);height:var(--el-badge-size);justify-content:center;padding:0 var(--el-badge-padding);white-space:nowrap}.el-badge__content.is-fixed{position:absolute;right:calc(1px + var(--el-badge-size)/2);top:0;transform:translateY(-50%) translate(100%);z-index:var(--el-index-normal)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{border-radius:50%;height:8px;padding:0;right:0;width:8px}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:15px 19px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);align-items:center;background-color:var(--el-message-bg-color);border-color:var(--el-message-border-color);border-radius:var(--el-border-radius-base);border-style:var(--el-border-style);border-width:var(--el-border-width);box-sizing:border-box;display:flex;left:50%;max-width:calc(100% - 32px);padding:var(--el-message-padding);position:fixed;top:20px;transform:translate(-50%);transition:opacity var(--el-transition-duration),transform .4s,top .4s;width:-moz-fit-content;width:fit-content}.el-message.is-center{justify-content:center}.el-message.is-closable .el-message__content{padding-right:31px}.el-message p{margin:0}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:anywhere}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message__icon{margin-right:10px}.el-message .el-message__badge{position:absolute;right:-8px;top:-8px}.el-message__content{font-size:14px;line-height:1;padding:0}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{color:var(--el-message-close-icon-color);cursor:pointer;font-size:var(--el-message-close-size);position:absolute;right:19px;top:50%;transform:translateY(-50%)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0;transform:translate(-50%,-100%)}.main-container{margin:0 auto;width:1200px} diff --git a/niucloud/public/web/_nuxt/entry.60adbc61.js b/niucloud/public/web/_nuxt/entry.60adbc61.js new file mode 100644 index 0000000..46f3f61 --- /dev/null +++ b/niucloud/public/web/_nuxt/entry.60adbc61.js @@ -0,0 +1,5 @@ +var mJ=Object.defineProperty;var gJ=(Pt,It,zn)=>It in Pt?mJ(Pt,It,{enumerable:!0,configurable:!0,writable:!0,value:zn}):Pt[It]=zn;var x2=(Pt,It,zn)=>(gJ(Pt,typeof It!="symbol"?It+"":It,zn),zn);let uu,fu,h0,st,v0,$n,m0,pu,C2,Tt,M2,jn,Ae,hn,i1,Un,qt,ye,Te,Hr,c1,kr,u1,Er,vn,f1,Re,me,Ar,L2,Se,it,Wn,p1,d1,h1,du,hu,vu,mu,gu,wu,Sr,v1,_u,yu,Le,m1,mn,H2,g0,bu,Vr,oe,w0,Tr,Or,g1,ct,zu,w1,_1,xu,ne,_e,Cu,Mu,qn,Lu,Hu,ku,Eu,Au,gn,Ot,y1,wn,b1,z1,x1,C1,_0,pt,y0,M1,L1,Br,H1,k1,Su,E1,k2,Pr,E2,Ge,Vu,b0,Tu,Oe,z0,_n,A1,S1,V1,T1,Ir,Gt,Fr,Nr,O1,Rr,B1,P1,I1,F1,N1,Ou,fe,Bu,Pu,R1,D1,$1,Iu,Fu,Nu,j1,U1,W1,pe,q1,x0,G1,Ru,Du,$u,Dr,ju,K1,Uu,Y1,C0,Wu,qu,Je,J1,Gu,$r,M0,X1,Kt,Z1,jr,Ku,Yu,Ur,Q1,Wr,et,L0,H0,k0,el,yn,tl,nl,rl,Ju,ol,al,Xu,ll,sl,Yt,qr,E0,il,Mt,bn,Zu,A0,Gr,Qu,cl,ke,A2,ul,Gn,fl,Kr,pl,Yr,De,dl,S0,Z,hl,_,p,we,e8,g,Jr,Xe,S2,t8,Xr,J,n8,Bt,de,V2,r8,wJ=(async()=>{function Pt(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;o!!n[o.toLowerCase()]:o=>!!n[o]}$n=function(e){if(ne(e)){const t={};for(let n=0;n{if(n){const r=n.split(zn);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}st=function(e){let t="";if(ye(e))t=e;else if(ne(e))for(let n=0;nV0(n,t))}let Zr,xe,xn,gl,wl,Kn,T0,Ie,O0,_l,Cn,T2,Qr,yl,Yn,eo,to,Mn,no,B0,Jn,O2,bl,dt,zl,B2,P2,Xn,Ln,I2,P0,ro;Xr=e=>ye(e)?e:e==null?"":ne(e)||_e(e)&&(e.toString===to||!oe(e.toString))?JSON.stringify(e,Zr,2):String(e),Zr=(e,t)=>t&&t.__v_isRef?Zr(e,t.value):Cn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o])=>(n[`${r} =>`]=o,n),{})}:T2(t)?{[`Set(${t.size})`]:[...t.values()]}:_e(t)&&!ne(t)&&!no(t)?String(t):t,xe={},xn=[],ct=()=>{},gl=()=>!1,wl=/^on[^a-z]/,Kn=e=>wl.test(e),T0=e=>e.startsWith("onUpdate:"),Ie=Object.assign,O0=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},_l=Object.prototype.hasOwnProperty,pe=(e,t)=>_l.call(e,t),ne=Array.isArray,Cn=e=>Mn(e)==="[object Map]",T2=e=>Mn(e)==="[object Set]",Qr=e=>Mn(e)==="[object Date]",yl=e=>Mn(e)==="[object RegExp]",oe=e=>typeof e=="function",ye=e=>typeof e=="string",Yn=e=>typeof e=="symbol",_e=e=>e!==null&&typeof e=="object",eo=e=>_e(e)&&oe(e.then)&&oe(e.catch),to=Object.prototype.toString,Mn=e=>to.call(e),R1=e=>Mn(e).slice(8,-1),no=e=>Mn(e)==="[object Object]",B0=e=>ye(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Jn=Pt(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),O2=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},bl=/-(\w)/g,dt=O2(e=>e.replace(bl,(t,n)=>n?n.toUpperCase():"")),zl=/\B([A-Z])/g,Yt=O2(e=>e.replace(zl,"-$1").toLowerCase()),B2=O2(e=>e.charAt(0).toUpperCase()+e.slice(1)),P2=O2(e=>e?`on${B2(e)}`:""),Xn=(e,t)=>!Object.is(e,t),Ln=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},P0=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ro=e=>{const t=ye(e)?Number(e):NaN;return isNaN(t)?e:t};let xl;const c8=()=>xl||(xl=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});let ut;class Cl{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ut,!t&&ut&&(this.index=(ut.scopes||(ut.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=ut;try{return ut=this,t()}finally{ut=n}}}on(){ut=this}off(){ut=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Ml=e=>(e.w&Jt)>0,Ll=e=>(e.n&Jt)>0,f8=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(u==="length"||u>=s)&&i.push(c)})}else switch(n!==void 0&&i.push(l.get(n)),t){case"add":ne(e)?B0(n)&&i.push(l.get("length")):(i.push(l.get(Hn)),Cn(e)&&i.push(l.get(so)));break;case"delete":ne(e)||(i.push(l.get(Hn)),Cn(e)&&i.push(l.get(so)));break;case"set":Cn(e)&&i.push(l.get(Hn));break}if(i.length===1)i[0]&&co(i[0]);else{const s=[];for(const c of i)c&&s.push(...c);co(ao(s))}}function co(e,t){const n=ne(e)?e:[...e];for(const r of n)r.computed&&Al(r);for(const r of n)r.computed||Al(r)}function Al(e,t){(e!==_t||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function d8(e,t){var n;return(n=I0.get(e))===null||n===void 0?void 0:n.get(t)}const h8=Pt("__proto__,__v_isRef,__isVue"),Sl=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Yn)),v8=uo(),m8=uo(!1,!0),g8=uo(!0),Vl=w8();function w8(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=fe(this);for(let a=0,l=this.length;a{e[t]=function(...n){Zn();const r=fe(this)[t].apply(this,n);return Qn(),r}}),e}function _8(e){const t=fe(this);return tt(t,"has",e),t.hasOwnProperty(e)}function uo(e=!1,t=!1){return function(n,r,o){if(r==="__v_isReactive")return!e;if(r==="__v_isReadonly")return e;if(r==="__v_isShallow")return t;if(r==="__v_raw"&&o===(e?t?B8:Dl:t?Rl:Nl).get(n))return n;const a=ne(n);if(!e){if(a&&pe(Vl,r))return Reflect.get(Vl,r,o);if(r==="hasOwnProperty")return _8}const l=Reflect.get(n,r,o);return(Yn(r)?Sl.has(r):h8(r))||(e||tt(n,"get",r),t)?l:Le(l)?a&&B0(r)?l:l.value:_e(l)?e?A0(l):it(l):l}}const y8=Tl(),b8=Tl(!0);function Tl(e=!1){return function(t,n,r,o){let a=t[n];if(kn(a)&&Le(a)&&!Le(r))return!1;if(!e&&(!U0(r)&&!kn(r)&&(a=fe(a),r=fe(r)),!ne(t)&&Le(a)&&!Le(r)))return a.value=r,!0;const l=ne(t)&&B0(n)?Number(n)e,F0=e=>Reflect.getPrototypeOf(e);function N0(e,t,n=!1,r=!1){e=e.__v_raw;const o=fe(e),a=fe(t);n||(t!==a&&tt(o,"get",t),tt(o,"get",a));const{has:l}=F0(o),i=r?fo:n?vo:N2;if(l.call(o,t))return i(e.get(t));if(l.call(o,a))return i(e.get(a));e!==o&&e.get(t)}function R0(e,t=!1){const n=this.__v_raw,r=fe(n),o=fe(e);return t||(e!==o&&tt(r,"has",e),tt(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function D0(e,t=!1){return e=e.__v_raw,!t&&tt(fe(e),"iterate",Hn),Reflect.get(e,"size",e)}function Bl(e){e=fe(e);const t=fe(this);return F0(t).has.call(t,e)||(t.add(e),Ft(t,"add",e,e)),this}function Pl(e,t){t=fe(t);const n=fe(this),{has:r,get:o}=F0(n);let a=r.call(n,e);a||(e=fe(e),a=r.call(n,e));const l=o.call(n,e);return n.set(e,t),a?Xn(t,l)&&Ft(n,"set",e,t):Ft(n,"add",e,t),this}function Il(e){const t=fe(this),{has:n,get:r}=F0(t);let o=n.call(t,e);o||(e=fe(e),o=n.call(t,e)),r&&r.call(t,e);const a=t.delete(e);return o&&Ft(t,"delete",e,void 0),a}function Fl(){const e=fe(this),t=e.size!==0,n=e.clear();return t&&Ft(e,"clear",void 0,void 0),n}function $0(e,t){return function(n,r){const o=this,a=o.__v_raw,l=fe(a),i=t?fo:e?vo:N2;return!e&&tt(l,"iterate",Hn),a.forEach((s,c)=>n.call(r,i(s),i(c),o))}}function j0(e,t,n){return function(...r){const o=this.__v_raw,a=fe(o),l=Cn(a),i=e==="entries"||e===Symbol.iterator&&l,s=e==="keys"&&l,c=o[e](...r),u=n?fo:t?vo:N2;return!t&&tt(a,"iterate",s?so:Hn),{next(){const{value:f,done:v}=c.next();return v?{value:f,done:v}:{value:i?[u(f[0]),u(f[1])]:u(f),done:v}},[Symbol.iterator](){return this}}}}function Zt(e){return function(...t){return e==="delete"?!1:this}}function H8(){const e={get(o){return N0(this,o)},get size(){return D0(this)},has:R0,add:Bl,set:Pl,delete:Il,clear:Fl,forEach:$0(!1,!1)},t={get(o){return N0(this,o,!1,!0)},get size(){return D0(this)},has:R0,add:Bl,set:Pl,delete:Il,clear:Fl,forEach:$0(!1,!0)},n={get(o){return N0(this,o,!0)},get size(){return D0(this,!0)},has(o){return R0.call(this,o,!0)},add:Zt("add"),set:Zt("set"),delete:Zt("delete"),clear:Zt("clear"),forEach:$0(!0,!1)},r={get(o){return N0(this,o,!0,!0)},get size(){return D0(this,!0)},has(o){return R0.call(this,o,!0)},add:Zt("add"),set:Zt("set"),delete:Zt("delete"),clear:Zt("clear"),forEach:$0(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=j0(o,!1,!1),n[o]=j0(o,!0,!1),t[o]=j0(o,!1,!0),r[o]=j0(o,!0,!0)}),[e,n,t,r]}const[k8,E8,A8,S8]=H8();function po(e,t){const n=t?e?S8:A8:e?E8:k8;return(r,o,a)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(pe(n,o)&&o in r?n:r,o,a)}const V8={get:po(!1,!1)},T8={get:po(!1,!0)},O8={get:po(!0,!1)},Nl=new WeakMap,Rl=new WeakMap,Dl=new WeakMap,B8=new WeakMap;function P8(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function I8(e){return e.__v_skip||!Object.isExtensible(e)?0:P8(R1(e))}it=function(e){return kn(e)?e:ho(e,!1,Ol,V8,Nl)};function $l(e){return ho(e,!1,L8,T8,Rl)}A0=function(e){return ho(e,!0,M8,O8,Dl)};function ho(e,t,n,r,o){if(!_e(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const a=o.get(e);if(a)return a;const l=I8(e);if(l===0)return e;const i=new Proxy(e,l===2?r:n);return o.set(e,i),i}function Qt(e){return kn(e)?Qt(e.__v_raw):!!(e&&e.__v_isReactive)}function kn(e){return!!(e&&e.__v_isReadonly)}function U0(e){return!!(e&&e.__v_isShallow)}function jl(e){return Qt(e)||kn(e)}fe=function(e){const t=e&&e.__v_raw;return t?fe(t):e},wn=function(e){return I2(e,"__v_skip",!0),e};const N2=e=>_e(e)?it(e):e,vo=e=>_e(e)?A0(e):e;function Ul(e){Xt&&_t&&(e=fe(e),El(e.dep||(e.dep=ao())))}function mo(e,t){e=fe(e);const n=e.dep;n&&co(n)}Le=function(e){return!!(e&&e.__v_isRef===!0)},de=function(e){return Wl(e,!1)},C2=function(e){return Wl(e,!0)};function Wl(e,t){return Le(e)?e:new F8(e,t)}class F8{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:fe(t),this._value=n?t:N2(t)}get value(){return Ul(this),this._value}set value(t){const n=this.__v_isShallow||U0(t)||kn(t);t=n?t:fe(t),Xn(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:N2(t),mo(this))}}Pu=function(e){mo(e)},J=function(e){return Le(e)?e.value:e};const N8={get:(e,t,n)=>J(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Le(o)&&!Le(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function ql(e){return Qt(e)?e:new Proxy(e,N8)}Y1=function(e){const t=ne(e)?new Array(e.length):{};for(const n in e)t[n]=L2(e,n);return t};class R8{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return d8(fe(this._object),this._key)}}L2=function(e,t,n){const r=e[t];return Le(r)?r:new R8(e,t,n)};var Gl;class D8{constructor(t,n,r,o){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this[Gl]=!1,this._dirty=!0,this.effect=new io(t,()=>{this._dirty||(this._dirty=!0,mo(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=r}get value(){const t=fe(this);return Ul(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}Gl="__v_isReadonly",G1=function(e,t,n=!1){let r,o;const a=oe(e);return a?(r=e,o=ct):(r=e.get,o=e.set),new D8(r,o,a||!o,n)};function $8(e,...t){}function en(e,t,n,r){let o;try{o=r?e(...r):e()}catch(a){e2(a,t,n)}return o}function ht(e,t,n,r){if(oe(e)){const a=en(e,t,n,r);return a&&eo(a)&&a.catch(l=>{e2(l,t,n)}),a}const o=[];for(let a=0;a>>1;D2(Ke[r])Lt&&Ke.splice(t,1)}function Jl(e){ne(e)?t2.push(...e):(!Nt||!Nt.includes(e,e.allowRecurse?En+1:En))&&t2.push(e),Yl()}function Xl(e,t=R2?Lt+1:0){for(;tD2(n)-D2(r)),En=0;Ene.id==null?1/0:e.id,q8=(e,t)=>{const n=D2(e)-D2(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Zl(e){go=!1,R2=!0,Ke.sort(q8);const t=ct;try{for(Lt=0;Ltye(b)?b.trim():b)),f&&(o=n.map(P0))}let i,s=r[i=P2(t)]||r[i=P2(dt(t))];!s&&a&&(s=r[i=P2(Yt(t))]),s&&ht(s,e,6,o);const c=r[i+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,ht(c,e,6,o)}}function Ql(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const a=e.emits;let l={},i=!1;if(!oe(e)){const s=c=>{const u=Ql(c,t,!0);u&&(i=!0,Ie(l,u))};!n&&t.mixins.length&&t.mixins.forEach(s),e.extends&&s(e.extends),e.mixins&&e.mixins.forEach(s)}return!a&&!i?(_e(e)&&r.set(e,null),null):(ne(a)?a.forEach(s=>l[s]=null):Ie(l,a),_e(e)&&r.set(e,l),l)}function G0(e,t){return!e||!Kn(t)?!1:(t=t.slice(2).replace(/Once$/,""),pe(e,t[0].toLowerCase()+t.slice(1))||pe(e,Yt(t))||pe(e,t))}let Ue=null,K0=null;function Y0(e){const t=Ue;return Ue=e,K0=e&&e.type.__scopeId||null,t}t8=function(e){K0=e},n8=function(){K0=null},Bt=function(e,t=Ue,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&I4(-1);const a=Y0(t);let l;try{l=e(...o)}finally{Y0(a),r._d&&I4(1)}return l};return r._n=!0,r._c=!0,r._d=!0,r};function _o(e){const{type:t,vnode:n,proxy:r,withProxy:o,props:a,propsOptions:[l],slots:i,attrs:s,emit:c,render:u,renderCache:f,data:v,setupState:b,ctx:C,inheritAttrs:k}=e;let A,w;const m=Y0(e);try{if(n.shapeFlag&4){const L=o||r;A=gt(u.call(L,L,f,a,b,v,C)),w=s}else{const L=t;A=gt(L.length>1?L(a,{attrs:s,slots:i,emit:c}):L(a,null)),w=t.props?s:Y8(s)}}catch(L){a2.length=0,e2(L,e,1),A=we(Ge)}let M=A;if(w&&k!==!1){const L=Object.keys(w),{shapeFlag:H}=M;L.length&&H&7&&(l&&L.some(T0)&&(w=J8(w,l)),M=Mt(M,w))}return n.dirs&&(M=Mt(M),M.dirs=M.dirs?M.dirs.concat(n.dirs):n.dirs),n.transition&&(M.transition=n.transition),A=M,Y0(m),A}function K8(e){let t;for(let n=0;n{let t;for(const n in e)(n==="class"||n==="style"||Kn(n))&&((t||(t={}))[n]=e[n]);return t},J8=(e,t)=>{const n={};for(const r in e)(!T0(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function X8(e,t,n){const{props:r,children:o,component:a}=e,{props:l,children:i,patchFlag:s}=t,c=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&s>=0){if(s&1024)return!0;if(s&16)return r?e4(r,l,c):!!l;if(s&8){const u=t.dynamicProps;for(let f=0;fe.__isSuspense,Z8={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,a,l,i,s,c){e==null?Q8(t,n,r,o,a,l,i,s,c):e5(e,t,n,r,o,l,i,s,c)},hydrate:t5,create:bo,normalize:n5},n4=Z8;function $2(e,t){const n=e.props&&e.props[t];oe(n)&&n()}function Q8(e,t,n,r,o,a,l,i,s){const{p:c,o:{createElement:u}}=s,f=u("div"),v=e.suspense=bo(e,o,r,t,f,n,a,l,i,s);c(null,v.pendingBranch=e.ssContent,f,null,r,v,a,l),v.deps>0?($2(e,"onPending"),$2(e,"onFallback"),c(null,e.ssFallback,t,n,r,null,a,l),n2(v,e.ssFallback)):v.resolve()}function e5(e,t,n,r,o,a,l,i,{p:s,um:c,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const v=t.ssContent,b=t.ssFallback,{activeBranch:C,pendingBranch:k,isInFallback:A,isHydrating:w}=f;if(k)f.pendingBranch=v,yt(v,k)?(s(k,v,f.hiddenContainer,null,o,f,a,l,i),f.deps<=0?f.resolve():A&&(s(C,b,n,r,o,null,a,l,i),n2(f,b))):(f.pendingId++,w?(f.isHydrating=!1,f.activeBranch=k):c(k,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),A?(s(null,v,f.hiddenContainer,null,o,f,a,l,i),f.deps<=0?f.resolve():(s(C,b,n,r,o,null,a,l,i),n2(f,b))):C&&yt(v,C)?(s(C,v,n,r,o,f,a,l,i),f.resolve(!0)):(s(null,v,f.hiddenContainer,null,o,f,a,l,i),f.deps<=0&&f.resolve()));else if(C&&yt(v,C))s(C,v,n,r,o,f,a,l,i),n2(f,v);else if($2(t,"onPending"),f.pendingBranch=v,f.pendingId++,s(null,v,f.hiddenContainer,null,o,f,a,l,i),f.deps<=0)f.resolve();else{const{timeout:m,pendingId:M}=f;m>0?setTimeout(()=>{f.pendingId===M&&f.fallback(b)},m):m===0&&f.fallback(b)}}function bo(e,t,n,r,o,a,l,i,s,c,u=!1){const{p:f,m:v,um:b,n:C,o:{parentNode:k,remove:A}}=c,w=e.props?ro(e.props.timeout):void 0,m={vnode:e,parent:t,parentComponent:n,isSVG:l,container:r,hiddenContainer:o,anchor:a,deps:0,pendingId:0,timeout:typeof w=="number"?w:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:u,isUnmounted:!1,effects:[],resolve(M=!1){const{vnode:L,activeBranch:H,pendingBranch:T,pendingId:S,effects:O,parentComponent:N,container:D}=m;if(m.isHydrating)m.isHydrating=!1;else if(!M){const Q=H&&T.transition&&T.transition.mode==="out-in";Q&&(H.transition.afterLeave=()=>{S===m.pendingId&&v(T,D,U,0)});let{anchor:U}=m;H&&(U=C(H),b(H,N,m,!0)),Q||v(T,D,U,0)}n2(m,T),m.pendingBranch=null,m.isInFallback=!1;let W=m.parent,$=!1;for(;W;){if(W.pendingBranch){W.effects.push(...O),$=!0;break}W=W.parent}$||Jl(O),m.effects=[],$2(L,"onResolve")},fallback(M){if(!m.pendingBranch)return;const{vnode:L,activeBranch:H,parentComponent:T,container:S,isSVG:O}=m;$2(L,"onFallback");const N=C(H),D=()=>{m.isInFallback&&(f(null,M,S,N,T,null,O,i,s),n2(m,M))},W=M.transition&&M.transition.mode==="out-in";W&&(H.transition.afterLeave=D),m.isInFallback=!0,b(H,T,null,!0),W||D()},move(M,L,H){m.activeBranch&&v(m.activeBranch,M,L,H),m.container=M},next(){return m.activeBranch&&C(m.activeBranch)},registerDep(M,L){const H=!!m.pendingBranch;H&&m.deps++;const T=M.vnode.el;M.asyncDep.catch(S=>{e2(S,M,0)}).then(S=>{if(M.isUnmounted||m.isUnmounted||m.pendingId!==M.suspenseId)return;M.asyncResolved=!0;const{vnode:O}=M;Ro(M,S,!1),T&&(O.el=T);const N=!T&&M.subTree.el;L(M,O,k(T||M.subTree.el),T?null:C(M.subTree),m,l,s),N&&A(N),yo(M,O.el),H&&--m.deps===0&&m.resolve()})},unmount(M,L){m.isUnmounted=!0,m.activeBranch&&b(m.activeBranch,n,M,L),m.pendingBranch&&b(m.pendingBranch,n,M,L)}};return m}function t5(e,t,n,r,o,a,l,i,s){const c=t.suspense=bo(t,r,n,e.parentNode,document.createElement("div"),null,o,a,l,i,!0),u=s(e,c.pendingBranch=t.ssContent,n,c,a,l);return c.deps===0&&c.resolve(),u}function n5(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=r4(r?n.default:n),e.ssFallback=r?r4(n.fallback):we(Ge)}function r4(e){let t;if(oe(e)){const n=l2&&e._c;n&&(e._d=!1,g()),e=e(),n&&(e._d=!0,t=mt,P4())}return ne(e)&&(e=K8(e)),e=gt(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function o4(e,t){t&&t.pendingBranch?ne(e)?t.effects.push(...e):t.effects.push(e):Jl(e)}function n2(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,o=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=o,yo(r,o))}qt=function(e,t){if(Ee){let n=Ee.provides;const r=Ee.parent&&Ee.parent.provides;r===n&&(n=Ee.provides=Object.create(r)),n[e]=t}},Se=function(e,t,n=!1){const r=Ee||Ue;if(r){const o=r.parent==null?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides;if(o&&e in o)return o[e];if(arguments.length>1)return n&&oe(t)?t.call(r.proxy):t}},V1=function(e,t){return zo(e,null,t)};const J0={};Ae=function(e,t,n){return zo(e,t,n)};function zo(e,t,{immediate:n,deep:r,flush:o,onTrack:a,onTrigger:l}=xe){const i=oo()===(Ee==null?void 0:Ee.scope)?Ee:null;let s,c=!1,u=!1;if(Le(e)?(s=()=>e.value,c=U0(e)):Qt(e)?(s=()=>e,r=!0):ne(e)?(u=!0,c=e.some(M=>Qt(M)||U0(M)),s=()=>e.map(M=>{if(Le(M))return M.value;if(Qt(M))return An(M);if(oe(M))return en(M,i,2)})):oe(e)?t?s=()=>en(e,i,2):s=()=>{if(!(i&&i.isUnmounted))return f&&f(),ht(e,i,3,[v])}:s=ct,t&&r){const M=s;s=()=>An(M())}let f,v=M=>{f=w.onStop=()=>{en(M,i,4)}},b;if(s2)if(v=ct,t?n&&ht(t,i,3,[s(),u?[]:void 0,v]):s(),o==="sync"){const M=F5();b=M.__watcherHandles||(M.__watcherHandles=[])}else return ct;let C=u?new Array(e.length).fill(J0):J0;const k=()=>{if(w.active)if(t){const M=w.run();(r||c||(u?M.some((L,H)=>Xn(L,C[H])):Xn(M,C)))&&(f&&f(),ht(t,i,3,[M,C===J0?void 0:u&&C[0]===J0?[]:C,v]),C=M)}else w.run()};k.allowRecurse=!!t;let A;o==="sync"?A=k:o==="post"?A=()=>We(k,i&&i.suspense):(k.pre=!0,i&&(k.id=i.uid),A=()=>W0(k));const w=new io(s,A);t?n?k():C=w.run():o==="post"?We(w.run.bind(w),i&&i.suspense):w.run();const m=()=>{w.stop(),i&&i.scope&&O0(i.scope.effects,w)};return b&&b.push(m),m}function r5(e,t,n){const r=this.proxy,o=ye(e)?e.includes(".")?a4(r,e):()=>r[e]:e.bind(r,r);let a;oe(t)?a=t:(a=t.handler,n=t);const l=Ee;On(this);const i=zo(o,a.bind(r),n);return l?On(l):rn(),i}function a4(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o{An(n,t)});else if(no(e))for(const n in e)An(e[n],t);return e}function l4(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return hn(()=>{e.isMounted=!0}),Un(()=>{e.isUnmounting=!0}),e}const vt=[Function,Array],o5={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:vt,onEnter:vt,onAfterEnter:vt,onEnterCancelled:vt,onBeforeLeave:vt,onLeave:vt,onAfterLeave:vt,onLeaveCancelled:vt,onBeforeAppear:vt,onAppear:vt,onAfterAppear:vt,onAppearCancelled:vt},setup(e,{slots:t}){const n=Te(),r=l4();let o;return()=>{const a=t.default&&Co(t.default(),!0);if(!a||!a.length)return;let l=a[0];if(a.length>1){for(const k of a)if(k.type!==Ge){l=k;break}}const i=fe(e),{mode:s}=i;if(r.isLeaving)return xo(l);const c=c4(l);if(!c)return xo(l);const u=j2(c,i,r,n);r2(c,u);const f=n.subTree,v=f&&c4(f);let b=!1;const{getTransitionKey:C}=c.type;if(C){const k=C();o===void 0?o=k:k!==o&&(o=k,b=!0)}if(v&&v.type!==Ge&&(!yt(c,v)||b)){const k=j2(v,i,r,n);if(r2(v,k),s==="out-in")return r.isLeaving=!0,k.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},xo(l);s==="in-out"&&c.type!==Ge&&(k.delayLeave=(A,w,m)=>{const M=i4(r,v);M[String(v.key)]=v,A._leaveCb=()=>{w(),A._leaveCb=void 0,delete u.delayedLeave},u.delayedLeave=m})}return l}}},s4=o5;function i4(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function j2(e,t,n,r){const{appear:o,mode:a,persisted:l=!1,onBeforeEnter:i,onEnter:s,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:f,onLeave:v,onAfterLeave:b,onLeaveCancelled:C,onBeforeAppear:k,onAppear:A,onAfterAppear:w,onAppearCancelled:m}=t,M=String(e.key),L=i4(n,e),H=(O,N)=>{O&&ht(O,r,9,N)},T=(O,N)=>{const D=N[1];H(O,N),ne(O)?O.every(W=>W.length<=1)&&D():O.length<=1&&D()},S={mode:a,persisted:l,beforeEnter(O){let N=i;if(!n.isMounted)if(o)N=k||i;else return;O._leaveCb&&O._leaveCb(!0);const D=L[M];D&&yt(e,D)&&D.el._leaveCb&&D.el._leaveCb(),H(N,[O])},enter(O){let N=s,D=c,W=u;if(!n.isMounted)if(o)N=A||s,D=w||c,W=m||u;else return;let $=!1;const Q=O._enterCb=U=>{$||($=!0,U?H(W,[O]):H(D,[O]),S.delayedLeave&&S.delayedLeave(),O._enterCb=void 0)};N?T(N,[O,Q]):Q()},leave(O,N){const D=String(e.key);if(O._enterCb&&O._enterCb(!0),n.isUnmounting)return N();H(f,[O]);let W=!1;const $=O._leaveCb=Q=>{W||(W=!0,N(),Q?H(C,[O]):H(b,[O]),O._leaveCb=void 0,L[D]===e&&delete L[D])};L[D]=e,v?T(v,[O,$]):$()},clone(O){return j2(O,t,n,r)}};return S}function xo(e){if(U2(e))return e=Mt(e),e.children=null,e}function c4(e){return U2(e)?e.children?e.children[0]:void 0:e}function r2(e,t){e.shapeFlag&6&&e.component?r2(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Co(e,t=!1,n){let r=[],o=0;for(let a=0;a1)for(let a=0;a!!e.type.__asyncLoader;pl=function(e){oe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,timeout:a,suspensible:l=!0,onError:i}=e;let s=null,c,u=0;const f=()=>(u++,s=null,v()),v=()=>{let b;return s||(b=s=t().catch(C=>{if(C=C instanceof Error?C:new Error(String(C)),i)return new Promise((k,A)=>{i(C,()=>k(f()),()=>A(C),u+1)});throw C}).then(C=>b!==s&&s?s:(C&&(C.__esModule||C[Symbol.toStringTag]==="Module")&&(C=C.default),c=C,C)))};return De({name:"AsyncComponentWrapper",__asyncLoader:v,get __asyncResolved(){return c},setup(){const b=Ee;if(c)return()=>Mo(c,b);const C=m=>{s=null,e2(m,b,13,!r)};if(l&&b.suspense||s2)return v().then(m=>()=>Mo(m,b)).catch(m=>(C(m),()=>r?we(r,{error:m}):null));const k=de(!1),A=de(),w=de(!!o);return o&&setTimeout(()=>{w.value=!1},o),a!=null&&setTimeout(()=>{if(!k.value&&!A.value){const m=new Error(`Async component timed out after ${a}ms.`);C(m),A.value=m}},a),v().then(()=>{k.value=!0,b.parent&&U2(b.parent.vnode)&&W0(b.parent.update)}).catch(m=>{C(m),A.value=m}),()=>{if(k.value&&c)return Mo(c,b);if(A.value&&r)return we(r,{error:A.value});if(n&&!w.value)return we(n)}}})};function Mo(e,t){const{ref:n,props:r,children:o,ce:a}=t.vnode,l=we(e,r,o);return l.ref=n,l.ce=a,delete t.vnode.ce,l}const U2=e=>e.type.__isKeepAlive,a5={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Te(),r=n.ctx;if(!r.renderer)return()=>{const m=t.default&&t.default();return m&&m.length===1?m[0]:m};const o=new Map,a=new Set;let l=null;const i=n.suspense,{renderer:{p:s,m:c,um:u,o:{createElement:f}}}=r,v=f("div");r.activate=(m,M,L,H,T)=>{const S=m.component;c(m,M,L,0,i),s(S.vnode,m,M,L,S,i,H,m.slotScopeIds,T),We(()=>{S.isDeactivated=!1,S.a&&Ln(S.a);const O=m.props&&m.props.onVnodeMounted;O&&nt(O,S.parent,m)},i)},r.deactivate=m=>{const M=m.component;c(m,v,null,1,i),We(()=>{M.da&&Ln(M.da);const L=m.props&&m.props.onVnodeUnmounted;L&&nt(L,M.parent,m),M.isDeactivated=!0},i)};function b(m){Lo(m),u(m,n,i,!0)}function C(m){o.forEach((M,L)=>{const H=Do(M.type);H&&(!m||!m(H))&&k(L)})}function k(m){const M=o.get(m);!l||!yt(M,l)?b(M):l&&Lo(l),o.delete(m),a.delete(m)}Ae(()=>[e.include,e.exclude],([m,M])=>{m&&C(L=>W2(m,L)),M&&C(L=>!W2(M,L))},{flush:"post",deep:!0});let A=null;const w=()=>{A!=null&&o.set(A,Ho(n.subTree))};return hn(w),C0(w),Un(()=>{o.forEach(m=>{const{subTree:M,suspense:L}=n,H=Ho(M);if(m.type===H.type&&m.key===H.key){Lo(H);const T=H.component.da;T&&We(T,L);return}b(m)})}),()=>{if(A=null,!t.default)return null;const m=t.default(),M=m[0];if(m.length>1)return l=null,m;if(!Tt(M)||!(M.shapeFlag&4)&&!(M.shapeFlag&128))return l=null,M;let L=Ho(M);const H=L.type,T=Do(Sn(L)?L.type.__asyncResolved||{}:H),{include:S,exclude:O,max:N}=e;if(S&&(!T||!W2(S,T))||O&&T&&W2(O,T))return l=L,M;const D=L.key==null?H:L.key,W=o.get(D);return L.el&&(L=Mt(L),M.shapeFlag&128&&(M.ssContent=L)),A=D,W?(L.el=W.el,L.component=W.component,L.transition&&r2(L,L.transition),L.shapeFlag|=512,a.delete(D),a.add(D)):(a.add(D),N&&a.size>parseInt(N,10)&&k(a.values().next().value)),L.shapeFlag|=256,l=L,t4(M.type)?M:L}}},l5=a5;function W2(e,t){return ne(e)?e.some(n=>W2(n,t)):ye(e)?e.split(",").includes(t):yl(e)?e.test(t):!1}function u4(e,t){f4(e,"a",t)}Gr=function(e,t){f4(e,"da",t)};function f4(e,t,n=Ee){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(X0(t,r,n),n){let o=n.parent;for(;o&&o.parent;)U2(o.parent.vnode)&&s5(r,t,n,o),o=o.parent}}function s5(e,t,n,r){const o=X0(t,e,r,!0);Wn(()=>{O0(r[t],o)},n)}function Lo(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ho(e){return e.shapeFlag&128?e.ssContent:e}function X0(e,t,n=Ee,r=!1){if(n){const o=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...l)=>{if(n.isUnmounted)return;Zn(),On(n);const i=ht(t,n,e,l);return rn(),Qn(),i});return r?o.unshift(a):o.push(a),a}}let Ht,p4,d4,h4,v4;Ht=e=>(t,n=Ee)=>(!s2||e==="sp")&&X0(e,(...r)=>t(...r),n),x0=Ht("bm"),hn=Ht("m"),p4=Ht("bu"),C0=Ht("u"),Un=Ht("bum"),Wn=Ht("um"),d4=Ht("sp"),h4=Ht("rtg"),v4=Ht("rtc");function m4(e,t=Ee){X0("ec",e,t)}Hr=function(e,t){const n=Ue;if(n===null)return e;const r=ar(n)||n.proxy,o=e.dirs||(e.dirs=[]);for(let a=0;at(l,i,void 0,a&&a[i]));else{const l=Object.keys(e);o=new Array(l.length);for(let i=0,s=l.length;i{const a=r.fn(...o);return a&&(a.key=r.key),a}:r.fn)}return e},S2=function(e,t,n={},r,o){if(Ue.isCE||Ue.parent&&Sn(Ue.parent)&&Ue.parent.isCE)return t!=="default"&&(n.name=t),we("slot",n,r&&r());let a=e[t];a&&a._c&&(a._d=!1),g();const l=a&&_4(a(n)),i=et(Re,{key:n.key||l&&l.key||`_${t}`},l||(r?r():[]),l&&e._===1?64:-2);return!o&&i.scopeId&&(i.slotScopeIds=[i.scopeId+"-s"]),a&&a._c&&(a._d=!0),i};function _4(e){return e.some(t=>Tt(t)?!(t.type===Ge||t.type===Re&&!_4(t.children)):!0)?e:null}Qu=function(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:P2(r)]=e[r];return n};const Ao=e=>e?R4(e)?ar(e)||e.proxy:Ao(e.parent):null,q2=Ie(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ao(e.parent),$root:e=>Ao(e.root),$emit:e=>e.emit,$options:e=>To(e),$forceUpdate:e=>e.f||(e.f=()=>W0(e.update)),$nextTick:e=>e.n||(e.n=pt.bind(e.proxy)),$watch:e=>r5.bind(e)}),So=(e,t)=>e!==xe&&!e.__isScriptSetup&&pe(e,t),c5={get({_:e},t){const{ctx:n,setupState:r,data:o,props:a,accessCache:l,type:i,appContext:s}=e;let c;if(t[0]!=="$"){const b=l[t];if(b!==void 0)switch(b){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return a[t]}else{if(So(r,t))return l[t]=1,r[t];if(o!==xe&&pe(o,t))return l[t]=2,o[t];if((c=e.propsOptions[0])&&pe(c,t))return l[t]=3,a[t];if(n!==xe&&pe(n,t))return l[t]=4,n[t];Vo&&(l[t]=0)}}const u=q2[t];let f,v;if(u)return t==="$attrs"&&tt(e,"get",t),u(e);if((f=i.__cssModules)&&(f=f[t]))return f;if(n!==xe&&pe(n,t))return l[t]=4,n[t];if(v=s.config.globalProperties,pe(v,t))return v[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:a}=e;return So(o,t)?(o[t]=n,!0):r!==xe&&pe(r,t)?(r[t]=n,!0):pe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(a[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:a}},l){let i;return!!n[l]||e!==xe&&pe(e,l)||So(t,l)||(i=a[0])&&pe(i,l)||pe(r,l)||pe(q2,l)||pe(o.config.globalProperties,l)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:pe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};let Vo=!0;function u5(e){const t=To(e),n=e.proxy,r=e.ctx;Vo=!1,t.beforeCreate&&y4(t.beforeCreate,e,"bc");const{data:o,computed:a,methods:l,watch:i,provide:s,inject:c,created:u,beforeMount:f,mounted:v,beforeUpdate:b,updated:C,activated:k,deactivated:A,beforeDestroy:w,beforeUnmount:m,destroyed:M,unmounted:L,render:H,renderTracked:T,renderTriggered:S,errorCaptured:O,serverPrefetch:N,expose:D,inheritAttrs:W,components:$,directives:Q,filters:U}=t;if(c&&f5(c,r,null,e.appContext.config.unwrapInjectedRef),l)for(const te in l){const ue=l[te];oe(ue)&&(r[te]=ue.bind(n))}if(o){const te=o.call(n,n);_e(te)&&(e.data=it(te))}if(Vo=!0,a)for(const te in a){const ue=a[te],qe=oe(ue)?ue.bind(n,n):oe(ue.get)?ue.get.bind(n,n):ct,at=!oe(ue)&&oe(ue.set)?ue.set.bind(n):ct,lt=Z({get:qe,set:at});Object.defineProperty(r,te,{enumerable:!0,configurable:!0,get:()=>lt.value,set:Ye=>lt.value=Ye})}if(i)for(const te in i)b4(i[te],r,n,te);if(s){const te=oe(s)?s.call(n):s;Reflect.ownKeys(te).forEach(ue=>{qt(ue,te[ue])})}u&&y4(u,e,"c");function ae(te,ue){ne(ue)?ue.forEach(qe=>te(qe.bind(n))):ue&&te(ue.bind(n))}if(ae(x0,f),ae(hn,v),ae(p4,b),ae(C0,C),ae(u4,k),ae(Gr,A),ae(m4,O),ae(v4,T),ae(h4,S),ae(Un,m),ae(Wn,L),ae(d4,N),ne(D))if(D.length){const te=e.exposed||(e.exposed={});D.forEach(ue=>{Object.defineProperty(te,ue,{get:()=>n[ue],set:qe=>n[ue]=qe})})}else e.exposed||(e.exposed={});H&&e.render===ct&&(e.render=H),W!=null&&(e.inheritAttrs=W),$&&(e.components=$),Q&&(e.directives=Q)}function f5(e,t,n=ct,r=!1){ne(e)&&(e=Oo(e));for(const o in e){const a=e[o];let l;_e(a)?"default"in a?l=Se(a.from||o,a.default,!0):l=Se(a.from||o):l=Se(a),Le(l)&&r?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>l.value,set:i=>l.value=i}):t[o]=l}}function y4(e,t,n){ht(ne(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function b4(e,t,n,r){const o=r.includes(".")?a4(n,r):()=>n[r];if(ye(e)){const a=t[e];oe(a)&&Ae(o,a)}else if(oe(e))Ae(o,e.bind(n));else if(_e(e))if(ne(e))e.forEach(a=>b4(a,t,n,r));else{const a=oe(e.handler)?e.handler.bind(n):t[e.handler];oe(a)&&Ae(o,a,e)}}function To(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:a,config:{optionMergeStrategies:l}}=e.appContext,i=a.get(t);let s;return i?s=i:!o.length&&!n&&!r?s=t:(s={},o.length&&o.forEach(c=>Z0(s,c,l,!0)),Z0(s,t,l)),_e(t)&&a.set(t,s),s}function Z0(e,t,n,r=!1){const{mixins:o,extends:a}=t;a&&Z0(e,a,n,!0),o&&o.forEach(l=>Z0(e,l,n,!0));for(const l in t)if(!(r&&l==="expose")){const i=p5[l]||n&&n[l];e[l]=i?i(e[l],t[l]):t[l]}return e}const p5={data:z4,props:Vn,emits:Vn,methods:Vn,computed:Vn,beforeCreate:Ze,created:Ze,beforeMount:Ze,mounted:Ze,beforeUpdate:Ze,updated:Ze,beforeDestroy:Ze,beforeUnmount:Ze,destroyed:Ze,unmounted:Ze,activated:Ze,deactivated:Ze,errorCaptured:Ze,serverPrefetch:Ze,components:Vn,directives:Vn,watch:h5,provide:z4,inject:d5};function z4(e,t){return t?e?function(){return Ie(oe(e)?e.call(this,this):e,oe(t)?t.call(this,this):t)}:t:e}function d5(e,t){return Vn(Oo(e),Oo(t))}function Oo(e){if(ne(e)){const t={};for(let n=0;n0)&&!(l&16)){if(l&8){const u=e.vnode.dynamicProps;for(let f=0;f{s=!0;const[v,b]=C4(f,t,!0);Ie(l,v),b&&i.push(...b)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!a&&!s)return _e(e)&&r.set(e,xn),xn;if(ne(a))for(let u=0;u-1,b[1]=k<0||C-1||pe(b,"default"))&&i.push(f)}}}const c=[l,i];return _e(e)&&r.set(e,c),c}function M4(e){return e[0]!=="$"}function L4(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function H4(e,t){return L4(e)===L4(t)}function k4(e,t){return ne(t)?t.findIndex(n=>H4(n,e)):oe(t)&&H4(t,e)?0:-1}const E4=e=>e[0]==="_"||e==="$stable",Po=e=>ne(e)?e.map(gt):[gt(e)],g5=(e,t,n)=>{if(t._n)return t;const r=Bt((...o)=>Po(t(...o)),n);return r._c=!1,r},A4=(e,t,n)=>{const r=e._ctx;for(const o in e){if(E4(o))continue;const a=e[o];if(oe(a))t[o]=g5(o,a,r);else if(a!=null){const l=Po(a);t[o]=()=>l}}},S4=(e,t)=>{const n=Po(t);e.slots.default=()=>n},w5=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=fe(t),I2(t,"_",n)):A4(t,e.slots={})}else e.slots={},t&&S4(e,t);I2(e.slots,rr,1)},_5=(e,t,n)=>{const{vnode:r,slots:o}=e;let a=!0,l=xe;if(r.shapeFlag&32){const i=t._;i?n&&i===1?a=!1:(Ie(o,t),!n&&i===1&&delete o._):(a=!t.$stable,A4(t,o)),l=t}else t&&(S4(e,t),l={default:1});if(a)for(const i in o)!E4(i)&&!(i in l)&&delete o[i]};function V4(){return{app:null,config:{isNativeTag:gl,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let y5=0;function b5(e,t){return function(n,r=null){oe(n)||(n=Object.assign({},n)),r!=null&&!_e(r)&&(r=null);const o=V4(),a=new Set;let l=!1;const i=o.app={_uid:y5++,_component:n,_props:r,_container:null,_context:o,_instance:null,version:W4,get config(){return o.config},set config(s){},use(s,...c){return a.has(s)||(s&&oe(s.install)?(a.add(s),s.install(i,...c)):oe(s)&&(a.add(s),s(i,...c))),i},mixin(s){return o.mixins.includes(s)||o.mixins.push(s),i},component(s,c){return c?(o.components[s]=c,i):o.components[s]},directive(s,c){return c?(o.directives[s]=c,i):o.directives[s]},mount(s,c,u){if(!l){const f=we(n,r);return f.appContext=o,c&&t?t(f,s):e(f,s,u),l=!0,i._container=s,s.__vue_app__=i,ar(f.component)||f.component.proxy}},unmount(){l&&(e(null,i._container),delete i._container.__vue_app__)},provide(s,c){return o.provides[s]=c,i}};return i}}function Q0(e,t,n,r,o=!1){if(ne(e)){e.forEach((v,b)=>Q0(v,t&&(ne(t)?t[b]:t),n,r,o));return}if(Sn(r)&&!o)return;const a=r.shapeFlag&4?ar(r.component)||r.component.proxy:r.el,l=o?null:a,{i,r:s}=e,c=t&&t.r,u=i.refs===xe?i.refs={}:i.refs,f=i.setupState;if(c!=null&&c!==s&&(ye(c)?(u[c]=null,pe(f,c)&&(f[c]=null)):Le(c)&&(c.value=null)),oe(s))en(s,i,12,[l,u]);else{const v=ye(s),b=Le(s);if(v||b){const C=()=>{if(e.f){const k=v?pe(f,s)?f[s]:u[s]:s.value;o?ne(k)&&O0(k,a):ne(k)?k.includes(a)||k.push(a):v?(u[s]=[a],pe(f,s)&&(f[s]=u[s])):(s.value=[a],e.k&&(u[e.k]=s.value))}else v?(u[s]=l,pe(f,s)&&(f[s]=l)):b&&(s.value=l,e.k&&(u[e.k]=l))};l?(C.id=-1,We(C,n)):C()}}}let tn=!1;const er=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",tr=e=>e.nodeType===8;function z5(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:a,parentNode:l,remove:i,insert:s,createComment:c}}=e,u=(w,m)=>{if(!m.hasChildNodes()){n(null,w,m),q0(),m._vnode=w;return}tn=!1,f(m.firstChild,w,null,null,null),q0(),m._vnode=w,tn&&console.error("Hydration completed but contains mismatches.")},f=(w,m,M,L,H,T=!1)=>{const S=tr(w)&&w.data==="[",O=()=>k(w,m,M,L,H,S),{type:N,ref:D,shapeFlag:W,patchFlag:$}=m;let Q=w.nodeType;m.el=w,$===-2&&(T=!1,m.dynamicChildren=null);let U=null;switch(N){case Kt:Q!==3?m.children===""?(s(m.el=o(""),l(w),w),U=w):U=O():(w.data!==m.children&&(tn=!0,w.data=m.children),U=a(w));break;case Ge:Q!==8||S?U=O():U=a(w);break;case o2:if(S&&(w=a(w),Q=w.nodeType),Q===1||Q===3){U=w;const ae=!m.children.length;for(let te=0;te{T=T||!!m.dynamicChildren;const{type:S,props:O,patchFlag:N,shapeFlag:D,dirs:W}=m,$=S==="input"&&W||S==="option";if($||N!==-1){if(W&&kt(m,null,M,"created"),O)if($||!T||N&48)for(const U in O)($&&U.endsWith("value")||Kn(U)&&!Jn(U))&&r(w,U,null,O[U],!1,void 0,M);else O.onClick&&r(w,"onClick",null,O.onClick,!1,void 0,M);let Q;if((Q=O&&O.onVnodeBeforeMount)&&nt(Q,M,m),W&&kt(m,null,M,"beforeMount"),((Q=O&&O.onVnodeMounted)||W)&&o4(()=>{Q&&nt(Q,M,m),W&&kt(m,null,M,"mounted")},L),D&16&&!(O&&(O.innerHTML||O.textContent))){let U=b(w.firstChild,m,w,M,L,H,T);for(;U;){tn=!0;const ae=U;U=U.nextSibling,i(ae)}}else D&8&&w.textContent!==m.children&&(tn=!0,w.textContent=m.children)}return w.nextSibling},b=(w,m,M,L,H,T,S)=>{S=S||!!m.dynamicChildren;const O=m.children,N=O.length;for(let D=0;D{const{slotScopeIds:S}=m;S&&(H=H?H.concat(S):S);const O=l(w),N=b(a(w),m,O,M,L,H,T);return N&&tr(N)&&N.data==="]"?a(m.anchor=N):(tn=!0,s(m.anchor=c("]"),O,N),N)},k=(w,m,M,L,H,T)=>{if(tn=!0,m.el=null,T){const N=A(w);for(;;){const D=a(w);if(D&&D!==N)i(D);else break}}const S=a(w),O=l(w);return i(w),n(null,m,O,S,M,L,er(O),H),S},A=w=>{let m=0;for(;w;)if(w=a(w),w&&tr(w)&&(w.data==="["&&m++,w.data==="]")){if(m===0)return a(w);m--}return w};return[u,f]}const We=o4;function x5(e){return T4(e)}function C5(e){return T4(e,z5)}function T4(e,t){const n=c8();n.__VUE__=!0;const{insert:r,remove:o,patchProp:a,createElement:l,createText:i,createComment:s,setText:c,setElementText:u,parentNode:f,nextSibling:v,setScopeId:b=ct,insertStaticContent:C}=e,k=(z,d,h,x=null,B=null,P=null,R=!1,F=null,E=!!d.dynamicChildren)=>{if(z===d)return;z&&!yt(z,d)&&(x=j(z),je(z,B,P,!0),z=null),d.patchFlag===-2&&(E=!1,d.dynamicChildren=null);const{type:V,ref:Y,shapeFlag:K}=d;switch(V){case Kt:A(z,d,h,x);break;case Ge:w(z,d,h,x);break;case o2:z==null&&m(d,h,x,R);break;case Re:$(z,d,h,x,B,P,R,F,E);break;default:K&1?H(z,d,h,x,B,P,R,F,E):K&6?Q(z,d,h,x,B,P,R,F,E):(K&64||K&128)&&V.process(z,d,h,x,B,P,R,F,E,ce)}Y!=null&&B&&Q0(Y,z&&z.ref,P,d||z,!d)},A=(z,d,h,x)=>{if(z==null)r(d.el=i(d.children),h,x);else{const B=d.el=z.el;d.children!==z.children&&c(B,d.children)}},w=(z,d,h,x)=>{z==null?r(d.el=s(d.children||""),h,x):d.el=z.el},m=(z,d,h,x)=>{[z.el,z.anchor]=C(z.children,d,h,x,z.el,z.anchor)},M=({el:z,anchor:d},h,x)=>{let B;for(;z&&z!==d;)B=v(z),r(z,h,x),z=B;r(d,h,x)},L=({el:z,anchor:d})=>{let h;for(;z&&z!==d;)h=v(z),o(z),z=h;o(d)},H=(z,d,h,x,B,P,R,F,E)=>{R=R||d.type==="svg",z==null?T(d,h,x,B,P,R,F,E):N(z,d,B,P,R,F,E)},T=(z,d,h,x,B,P,R,F)=>{let E,V;const{type:Y,props:K,shapeFlag:ee,transition:re,dirs:ie}=z;if(E=z.el=l(z.type,P,K&&K.is,K),ee&8?u(E,z.children):ee&16&&O(z.children,E,null,x,B,P&&Y!=="foreignObject",R,F),ie&&kt(z,null,x,"created"),S(E,z,z.scopeId,R,x),K){for(const ze in K)ze!=="value"&&!Jn(ze)&&a(E,ze,null,K[ze],P,z.children,x,B,G);"value"in K&&a(E,"value",null,K.value),(V=K.onVnodeBeforeMount)&&nt(V,x,z)}ie&&kt(z,null,x,"beforeMount");const He=(!B||B&&!B.pendingBranch)&&re&&!re.persisted;He&&re.beforeEnter(E),r(E,d,h),((V=K&&K.onVnodeMounted)||He||ie)&&We(()=>{V&&nt(V,x,z),He&&re.enter(E),ie&&kt(z,null,x,"mounted")},B)},S=(z,d,h,x,B)=>{if(h&&b(z,h),x)for(let P=0;P{for(let V=E;V{const F=d.el=z.el;let{patchFlag:E,dynamicChildren:V,dirs:Y}=d;E|=z.patchFlag&16;const K=z.props||xe,ee=d.props||xe;let re;h&&Tn(h,!1),(re=ee.onVnodeBeforeUpdate)&&nt(re,h,d,z),Y&&kt(d,z,h,"beforeUpdate"),h&&Tn(h,!0);const ie=B&&d.type!=="foreignObject";if(V?D(z.dynamicChildren,V,F,h,x,ie,P):R||qe(z,d,F,null,h,x,ie,P,!1),E>0){if(E&16)W(F,d,K,ee,h,x,B);else if(E&2&&K.class!==ee.class&&a(F,"class",null,ee.class,B),E&4&&a(F,"style",K.style,ee.style,B),E&8){const He=d.dynamicProps;for(let ze=0;ze{re&&nt(re,h,d,z),Y&&kt(d,z,h,"updated")},x)},D=(z,d,h,x,B,P,R)=>{for(let F=0;F{if(h!==x){if(h!==xe)for(const F in h)!Jn(F)&&!(F in x)&&a(z,F,h[F],null,R,d.children,B,P,G);for(const F in x){if(Jn(F))continue;const E=x[F],V=h[F];E!==V&&F!=="value"&&a(z,F,V,E,R,d.children,B,P,G)}"value"in x&&a(z,"value",h.value,x.value)}},$=(z,d,h,x,B,P,R,F,E)=>{const V=d.el=z?z.el:i(""),Y=d.anchor=z?z.anchor:i("");let{patchFlag:K,dynamicChildren:ee,slotScopeIds:re}=d;re&&(F=F?F.concat(re):re),z==null?(r(V,h,x),r(Y,h,x),O(d.children,h,Y,B,P,R,F,E)):K>0&&K&64&&ee&&z.dynamicChildren?(D(z.dynamicChildren,ee,h,B,P,R,F),(d.key!=null||B&&d===B.subTree)&&Io(z,d,!0)):qe(z,d,h,Y,B,P,R,F,E)},Q=(z,d,h,x,B,P,R,F,E)=>{d.slotScopeIds=F,z==null?d.shapeFlag&512?B.ctx.activate(d,h,x,R,E):U(d,h,x,B,P,R,E):ae(z,d,E)},U=(z,d,h,x,B,P,R)=>{const F=z.component=V5(z,x,B);if(U2(z)&&(F.ctx.renderer=ce),T5(F),F.asyncDep){if(B&&B.registerDep(F,te),!z.el){const E=F.subTree=we(Ge);w(null,E,d,h)}return}te(F,z,d,h,B,P,R)},ae=(z,d,h)=>{const x=d.component=z.component;if(X8(z,d,h))if(x.asyncDep&&!x.asyncResolved){ue(x,d,h);return}else x.next=d,W8(x.update),x.update();else d.el=z.el,x.vnode=d},te=(z,d,h,x,B,P,R)=>{const F=()=>{if(z.isMounted){let{next:Y,bu:K,u:ee,parent:re,vnode:ie}=z,He=Y,ze;Tn(z,!1),Y?(Y.el=ie.el,ue(z,Y,R)):Y=ie,K&&Ln(K),(ze=Y.props&&Y.props.onVnodeBeforeUpdate)&&nt(ze,re,Y,ie),Tn(z,!0);const Pe=_o(z),Ct=z.subTree;z.subTree=Pe,k(Ct,Pe,f(Ct.el),j(Ct),z,B,P),Y.el=Pe.el,He===null&&yo(z,Pe.el),ee&&We(ee,B),(ze=Y.props&&Y.props.onVnodeUpdated)&&We(()=>nt(ze,re,Y,ie),B)}else{let Y;const{el:K,props:ee}=d,{bm:re,m:ie,parent:He}=z,ze=Sn(d);if(Tn(z,!1),re&&Ln(re),!ze&&(Y=ee&&ee.onVnodeBeforeMount)&&nt(Y,He,d),Tn(z,!0),K&&le){const Pe=()=>{z.subTree=_o(z),le(K,z.subTree,z,B,null)};ze?d.type.__asyncLoader().then(()=>!z.isUnmounted&&Pe()):Pe()}else{const Pe=z.subTree=_o(z);k(null,Pe,h,x,z,B,P),d.el=Pe.el}if(ie&&We(ie,B),!ze&&(Y=ee&&ee.onVnodeMounted)){const Pe=d;We(()=>nt(Y,He,Pe),B)}(d.shapeFlag&256||He&&Sn(He.vnode)&&He.vnode.shapeFlag&256)&&z.a&&We(z.a,B),z.isMounted=!0,d=h=x=null}},E=z.effect=new io(F,()=>W0(V),z.scope),V=z.update=()=>E.run();V.id=z.uid,Tn(z,!0),V()},ue=(z,d,h)=>{d.component=z;const x=z.vnode.props;z.vnode=d,z.next=null,m5(z,d.props,x,h),_5(z,d.children,h),Zn(),Xl(),Qn()},qe=(z,d,h,x,B,P,R,F,E=!1)=>{const V=z&&z.children,Y=z?z.shapeFlag:0,K=d.children,{patchFlag:ee,shapeFlag:re}=d;if(ee>0){if(ee&128){lt(V,K,h,x,B,P,R,F,E);return}else if(ee&256){at(V,K,h,x,B,P,R,F,E);return}}re&8?(Y&16&&G(V,B,P),K!==V&&u(h,K)):Y&16?re&16?lt(V,K,h,x,B,P,R,F,E):G(V,B,P,!0):(Y&8&&u(h,""),re&16&&O(K,h,x,B,P,R,F,E))},at=(z,d,h,x,B,P,R,F,E)=>{z=z||xn,d=d||xn;const V=z.length,Y=d.length,K=Math.min(V,Y);let ee;for(ee=0;eeY?G(z,B,P,!0,!1,K):O(d,h,x,B,P,R,F,E,K)},lt=(z,d,h,x,B,P,R,F,E)=>{let V=0;const Y=d.length;let K=z.length-1,ee=Y-1;for(;V<=K&&V<=ee;){const re=z[V],ie=d[V]=E?nn(d[V]):gt(d[V]);if(yt(re,ie))k(re,ie,h,null,B,P,R,F,E);else break;V++}for(;V<=K&&V<=ee;){const re=z[K],ie=d[ee]=E?nn(d[ee]):gt(d[ee]);if(yt(re,ie))k(re,ie,h,null,B,P,R,F,E);else break;K--,ee--}if(V>K){if(V<=ee){const re=ee+1,ie=reee)for(;V<=K;)je(z[V],B,P,!0),V++;else{const re=V,ie=V,He=new Map;for(V=ie;V<=ee;V++){const ft=d[V]=E?nn(d[V]):gt(d[V]);ft.key!=null&&He.set(ft.key,V)}let ze,Pe=0;const Ct=ee-ie+1;let z2=!1,su=0;const d0=new Array(Ct);for(V=0;V=Ct){je(ft,B,P,!0);continue}let Vt;if(ft.key!=null)Vt=He.get(ft.key);else for(ze=ie;ze<=ee;ze++)if(d0[ze-ie]===0&&yt(ft,d[ze])){Vt=ze;break}Vt===void 0?je(ft,B,P,!0):(d0[Vt-ie]=V+1,Vt>=su?su=Vt:z2=!0,k(ft,d[Vt],h,null,B,P,R,F,E),Pe++)}const iu=z2?M5(d0):xn;for(ze=iu.length-1,V=Ct-1;V>=0;V--){const ft=ie+V,Vt=d[ft],cu=ft+1{const{el:P,type:R,transition:F,children:E,shapeFlag:V}=z;if(V&6){Ye(z.component.subTree,d,h,x);return}if(V&128){z.suspense.move(d,h,x);return}if(V&64){R.move(z,d,h,ce);return}if(R===Re){r(P,d,h);for(let Y=0;YF.enter(P),B);else{const{leave:Y,delayLeave:K,afterLeave:ee}=F,re=()=>r(P,d,h),ie=()=>{Y(P,()=>{re(),ee&&ee()})};K?K(P,re,ie):ie()}else r(P,d,h)},je=(z,d,h,x=!1,B=!1)=>{const{type:P,props:R,ref:F,children:E,dynamicChildren:V,shapeFlag:Y,patchFlag:K,dirs:ee}=z;if(F!=null&&Q0(F,null,h,z,!0),Y&256){d.ctx.deactivate(z);return}const re=Y&1&&ee,ie=!Sn(z);let He;if(ie&&(He=R&&R.onVnodeBeforeUnmount)&&nt(He,d,z),Y&6)I(z.component,h,x);else{if(Y&128){z.suspense.unmount(h,x);return}re&&kt(z,null,d,"beforeUnmount"),Y&64?z.type.remove(z,d,h,B,ce,x):V&&(P!==Re||K>0&&K&64)?G(V,d,h,!1,!0):(P===Re&&K&384||!B&&Y&16)&&G(E,d,h),x&&wt(z)}(ie&&(He=R&&R.onVnodeUnmounted)||re)&&We(()=>{He&&nt(He,d,z),re&&kt(z,null,d,"unmounted")},h)},wt=z=>{const{type:d,el:h,anchor:x,transition:B}=z;if(d===Re){xt(h,x);return}if(d===o2){L(z);return}const P=()=>{o(h),B&&!B.persisted&&B.afterLeave&&B.afterLeave()};if(z.shapeFlag&1&&B&&!B.persisted){const{leave:R,delayLeave:F}=B,E=()=>R(h,P);F?F(z.el,P,E):E()}else P()},xt=(z,d)=>{let h;for(;z!==d;)h=v(z),o(z),z=h;o(d)},I=(z,d,h)=>{const{bum:x,scope:B,update:P,subTree:R,um:F}=z;x&&Ln(x),B.stop(),P&&(P.active=!1,je(R,z,d,h)),F&&We(F,d),We(()=>{z.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&z.asyncDep&&!z.asyncResolved&&z.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},G=(z,d,h,x=!1,B=!1,P=0)=>{for(let R=P;Rz.shapeFlag&6?j(z.component.subTree):z.shapeFlag&128?z.suspense.next():v(z.anchor||z.el),X=(z,d,h)=>{z==null?d._vnode&&je(d._vnode,null,null,!0):k(d._vnode||null,z,d,null,null,null,h),Xl(),q0(),d._vnode=z},ce={p:k,um:je,m:Ye,r:wt,mt:U,mc:O,pc:qe,pbc:D,n:j,o:e};let ve,le;return t&&([ve,le]=t(ce)),{render:X,hydrate:ve,createApp:b5(X,ve)}}function Tn({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Io(e,t,n=!1){const r=e.children,o=t.children;if(ne(r)&&ne(o))for(let a=0;a>1,e[n[i]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,l=n[a-1];a-- >0;)n[a]=l,l=t[l];return n}const L5=e=>e.__isTeleport,G2=e=>e&&(e.disabled||e.disabled===""),O4=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Fo=(e,t)=>{const n=e&&e.to;return ye(n)?t?t(n):null:n},H5={__isTeleport:!0,process(e,t,n,r,o,a,l,i,s,c){const{mc:u,pc:f,pbc:v,o:{insert:b,querySelector:C,createText:k,createComment:A}}=c,w=G2(t.props);let{shapeFlag:m,children:M,dynamicChildren:L}=t;if(e==null){const H=t.el=k(""),T=t.anchor=k("");b(H,n,r),b(T,n,r);const S=t.target=Fo(t.props,C),O=t.targetAnchor=k("");S&&(b(O,S),l=l||O4(S));const N=(D,W)=>{m&16&&u(M,D,W,o,a,l,i,s)};w?N(n,T):S&&N(S,O)}else{t.el=e.el;const H=t.anchor=e.anchor,T=t.target=e.target,S=t.targetAnchor=e.targetAnchor,O=G2(e.props),N=O?n:T,D=O?H:S;if(l=l||O4(T),L?(v(e.dynamicChildren,L,N,o,a,l,i),Io(e,t,!0)):s||f(e,t,N,D,o,a,l,i,!1),w)O||nr(t,n,H,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const W=t.target=Fo(t.props,C);W&&nr(t,W,null,c,0)}else O&&nr(t,T,S,c,1)}B4(t)},remove(e,t,n,r,{um:o,o:{remove:a}},l){const{shapeFlag:i,children:s,anchor:c,targetAnchor:u,target:f,props:v}=e;if(f&&a(u),(l||!G2(v))&&(a(c),i&16))for(let b=0;b0?mt||xn:null,P4(),l2>0&&mt&&mt.push(e),e}_=function(e,t,n,r,o,a){return F4(p(e,t,n,r,o,a,!0))},et=function(e,t,n,r,o){return F4(we(e,t,n,r,o,!0))},Tt=function(e){return e?e.__v_isVNode===!0:!1};function yt(e,t){return e.type===t.type&&e.key===t.key}const rr="__vInternal",N4=({key:e})=>e??null,or=({ref:e,ref_key:t,ref_for:n})=>e!=null?ye(e)||Le(e)||oe(e)?{i:Ue,r:e,k:t,f:!!n}:e:null;p=function(e,t=null,n=null,r=0,o=null,a=e===Re?0:1,l=!1,i=!1){const s={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&N4(t),ref:t&&or(t),scopeId:K0,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Ue};return i?(No(s,n),a&128&&e.normalize(s)):n&&(s.shapeFlag|=ye(n)?8:16),l2>0&&!l&&mt&&(s.patchFlag>0||a&6)&&s.patchFlag!==32&&mt.push(s),s},we=E5;function E5(e,t=null,n=null,r=0,o=null,a=!1){if((!e||e===g4)&&(e=Ge),Tt(e)){const i=Mt(e,t,!0);return n&&No(i,n),l2>0&&!a&&mt&&(i.shapeFlag&6?mt[mt.indexOf(e)]=i:mt.push(i)),i.patchFlag|=-2,i}if(P5(e)&&(e=e.__vccOpts),t){t=dl(t);let{class:i,style:s}=t;i&&!ye(i)&&(t.class=st(i)),_e(s)&&(jl(s)&&!ne(s)&&(s=Ie({},s)),t.style=$n(s))}const l=ye(e)?1:t4(e)?128:L5(e)?64:_e(e)?4:oe(e)?2:0;return p(e,t,n,r,o,l,a,!0)}dl=function(e){return e?jl(e)||rr in e?Ie({},e):e:null},Mt=function(e,t,n=!1){const{props:r,ref:o,patchFlag:a,children:l}=e,i=t?Sr(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:i,key:i&&N4(i),ref:t&&t.ref?n&&o?ne(o)?o.concat(or(t)):[o,or(t)]:or(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Re?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Mt(e.ssContent),ssFallback:e.ssFallback&&Mt(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}},Jr=function(e=" ",t=0){return we(Kt,null,e,t)},d1=function(e,t){const n=we(o2,null,e);return n.staticCount=t,n},V2=function(e="",t=!1){return t?(g(),et(Ge,null,e)):we(Ge,null,e)};function gt(e){return e==null||typeof e=="boolean"?we(Ge):ne(e)?we(Re,null,e.slice()):typeof e=="object"?nn(e):we(Kt,null,String(e))}function nn(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Mt(e)}function No(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(ne(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),No(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!(rr in t)?t._ctx=Ue:o===3&&Ue&&(Ue.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else oe(t)?(t={default:t,_ctx:Ue},n=32):(t=String(t),r&64?(n=16,t=[Jr(t)]):n=8);e.children=t,e.shapeFlag|=n}Sr=function(...e){const t={};for(let n=0;nEe||Ue,On=e=>{Ee=e,e.scope.on()},rn=()=>{Ee&&Ee.scope.off(),Ee=null};function R4(e){return e.vnode.shapeFlag&4}let s2=!1;function T5(e,t=!1){s2=t;const{props:n,children:r}=e.vnode,o=R4(e);v5(e,n,o,t),w5(e,r);const a=o?O5(e,t):void 0;return s2=!1,a}function O5(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=wn(new Proxy(e.ctx,c5));const{setup:r}=n;if(r){const o=e.setupContext=r.length>1?j4(e):null;On(e),Zn();const a=en(r,e,0,[e.props,o]);if(Qn(),rn(),eo(a)){if(a.then(rn,rn),t)return a.then(l=>{Ro(e,l,t)}).catch(l=>{e2(l,e,0)});e.asyncDep=a}else Ro(e,a,t)}else $4(e,t)}function Ro(e,t,n){oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:_e(t)&&(e.setupState=ql(t)),$4(e,n)}let D4;function $4(e,t,n){const r=e.type;if(!e.render){if(!t&&D4&&!r.render){const o=r.template||To(e).template;if(o){const{isCustomElement:a,compilerOptions:l}=e.appContext.config,{delimiters:i,compilerOptions:s}=r,c=Ie(Ie({isCustomElement:a,delimiters:i},l),s);r.render=D4(o,c)}}e.render=r.render||ct}On(e),Zn(),u5(e),Qn(),rn()}function B5(e){return new Proxy(e.attrs,{get(t,n){return tt(e,"get","$attrs"),t[n]}})}function j4(e){const t=r=>{e.exposed=r||{}};let n;return{get attrs(){return n||(n=B5(e))},slots:e.slots,emit:e.emit,expose:t}}function ar(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(ql(wn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in q2)return q2[n](e)},has(t,n){return n in t||n in q2}}))}function Do(e,t=!0){return oe(e)?e.displayName||e.name:e.name||t&&e.__name}function P5(e){return oe(e)&&"__vccOpts"in e}Z=(e,t)=>G1(e,t,s2),fu=function(){return U4().slots},gu=function(){return U4().attrs};function U4(){const e=Te();return e.setupContext||(e.setupContext=j4(e))}Je=function(e,t,n){const r=arguments.length;return r===2?_e(t)&&!ne(t)?Tt(t)?we(e,null,[t]):we(e,t):we(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Tt(n)&&(n=[n]),we(e,t,n))};const I5=Symbol(""),F5=()=>Se(I5),W4="3.2.47",N5="http://www.w3.org/2000/svg",Bn=typeof document<"u"?document:null,q4=Bn&&Bn.createElement("template"),R5={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t?Bn.createElementNS(N5,e):Bn.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>Bn.createTextNode(e),createComment:e=>Bn.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Bn.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,a){const l=n?n.previousSibling:t.lastChild;if(o&&(o===a||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===a||!(o=o.nextSibling)););else{q4.innerHTML=r?`${e}`:e;const i=q4.content;if(r){const s=i.firstChild;for(;s.firstChild;)i.appendChild(s.firstChild);i.removeChild(s)}t.insertBefore(i,n)}return[l?l.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function D5(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function $5(e,t,n){const r=e.style,o=ye(n);if(n&&!o){if(t&&!ye(t))for(const a in t)n[a]==null&&$o(r,a,"");for(const a in n)$o(r,a,n[a])}else{const a=r.display;o?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=a)}}const G4=/\s*!important$/;function $o(e,t,n){if(ne(n))n.forEach(r=>$o(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=j5(e,t);G4.test(n)?e.setProperty(Yt(r),n.replace(G4,""),"important"):e[r]=n}}const K4=["Webkit","Moz","ms"],jo={};function j5(e,t){const n=jo[t];if(n)return n;let r=dt(t);if(r!=="filter"&&r in e)return jo[t]=r;r=B2(r);for(let o=0;oUo||(Y5.then(()=>Uo=0),Uo=Date.now());function X5(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;ht(Z5(r,n.value),t,5,[r])};return n.value=e,n.attached=J5(),n}function Z5(e,t){if(ne(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const X4=/^on[a-z]/,Q5=(e,t,n,r,o=!1,a,l,i,s)=>{t==="class"?D5(e,r,o):t==="style"?$5(e,n,r):Kn(t)?T0(t)||G5(e,t,n,r,l):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):ef(e,t,r,o))?W5(e,t,r,a,l,i,s):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),U5(e,t,r,o))};function ef(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&X4.test(t)&&oe(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||X4.test(t)&&ye(n)?!1:t in e}let Rt,i2;Rt="transition",i2="animation",vn=(e,{slots:t})=>Je(s4,es(e),t),vn.displayName="Transition";const Z4={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},tf=vn.props=Ie({},s4.props,Z4),In=(e,t=[])=>{ne(e)?e.forEach(n=>n(...t)):e&&e(...t)},Q4=e=>e?ne(e)?e.some(t=>t.length>1):e.length>1:!1;function es(e){const t={};for(const $ in e)$ in Z4||(t[$]=e[$]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:a=`${n}-enter-from`,enterActiveClass:l=`${n}-enter-active`,enterToClass:i=`${n}-enter-to`,appearFromClass:s=a,appearActiveClass:c=l,appearToClass:u=i,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:v=`${n}-leave-active`,leaveToClass:b=`${n}-leave-to`}=e,C=nf(o),k=C&&C[0],A=C&&C[1],{onBeforeEnter:w,onEnter:m,onEnterCancelled:M,onLeave:L,onLeaveCancelled:H,onBeforeAppear:T=w,onAppear:S=m,onAppearCancelled:O=M}=t,N=($,Q,U)=>{on($,Q?u:i),on($,Q?c:l),U&&U()},D=($,Q)=>{$._isLeaving=!1,on($,f),on($,b),on($,v),Q&&Q()},W=$=>(Q,U)=>{const ae=$?S:m,te=()=>N(Q,$,U);In(ae,[Q,te]),ts(()=>{on(Q,$?s:a),Dt(Q,$?u:i),Q4(ae)||ns(Q,r,k,te)})};return Ie(t,{onBeforeEnter($){In(w,[$]),Dt($,a),Dt($,l)},onBeforeAppear($){In(T,[$]),Dt($,s),Dt($,c)},onEnter:W(!1),onAppear:W(!0),onLeave($,Q){$._isLeaving=!0;const U=()=>D($,Q);Dt($,f),ls(),Dt($,v),ts(()=>{$._isLeaving&&(on($,f),Dt($,b),Q4(L)||ns($,r,A,U))}),In(L,[$,U])},onEnterCancelled($){N($,!1),In(M,[$])},onAppearCancelled($){N($,!0),In(O,[$])},onLeaveCancelled($){D($),In(H,[$])}})}function nf(e){if(e==null)return null;if(_e(e))return[Wo(e.enter),Wo(e.leave)];{const t=Wo(e);return[t,t]}}function Wo(e){return ro(e)}function Dt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function on(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function ts(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let rf=0;function ns(e,t,n,r){const o=e._endId=++rf,a=()=>{o===e._endId&&r()};if(n)return setTimeout(a,n);const{type:l,timeout:i,propCount:s}=rs(e,t);if(!l)return r();const c=l+"end";let u=0;const f=()=>{e.removeEventListener(c,v),a()},v=b=>{b.target===e&&++u>=s&&f()};setTimeout(()=>{u(n[C]||"").split(", "),o=r(`${Rt}Delay`),a=r(`${Rt}Duration`),l=os(o,a),i=r(`${i2}Delay`),s=r(`${i2}Duration`),c=os(i,s);let u=null,f=0,v=0;t===Rt?l>0&&(u=Rt,f=l,v=a.length):t===i2?c>0&&(u=i2,f=c,v=s.length):(f=Math.max(l,c),u=f>0?l>c?Rt:i2:null,v=u?u===Rt?a.length:s.length:0);const b=u===Rt&&/\b(transform|all)(,|$)/.test(r(`${Rt}Property`).toString());return{type:u,timeout:f,propCount:v,hasTransform:b}}function os(e,t){for(;e.lengthas(n)+as(e[r])))}function as(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function ls(){return document.body.offsetHeight}const ss=new WeakMap,is=new WeakMap,cs={name:"TransitionGroup",props:Ie({},tf,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Te(),r=l4();let o,a;return C0(()=>{if(!o.length)return;const l=e.moveClass||`${e.name||"v"}-move`;if(!sf(o[0].el,n.vnode.el,l))return;o.forEach(of),o.forEach(af);const i=o.filter(lf);ls(),i.forEach(s=>{const c=s.el,u=c.style;Dt(c,l),u.transform=u.webkitTransform=u.transitionDuration="";const f=c._moveCb=v=>{v&&v.target!==c||(!v||/transform$/.test(v.propertyName))&&(c.removeEventListener("transitionend",f),c._moveCb=null,on(c,l))};c.addEventListener("transitionend",f)})}),()=>{const l=fe(e),i=es(l);let s=l.tag||Re;o=a,a=t.default?Co(t.default()):[];for(let c=0;cdelete e.mode;cs.props,xu=cs;function of(e){const t=e.el;t._moveCb&&t._moveCb(),t._enterCb&&t._enterCb()}function af(e){is.set(e,e.el.getBoundingClientRect())}function lf(e){const t=ss.get(e),n=is.get(e),r=t.left-n.left,o=t.top-n.top;if(r||o){const a=e.el.style;return a.transform=a.webkitTransform=`translate(${r}px,${o}px)`,a.transitionDuration="0s",e}}function sf(e,t,n){const r=e.cloneNode();e._vtc&&e._vtc.forEach(l=>{l.split(/\s+/).forEach(i=>i&&r.classList.remove(i))}),n.split(/\s+/).forEach(l=>l&&r.classList.add(l)),r.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(r);const{hasTransform:a}=rs(r);return o.removeChild(r),a}const lr=e=>{const t=e.props["onUpdate:modelValue"]||!1;return ne(t)?n=>Ln(t,n):t};function cf(e){e.target.composing=!0}function us(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}Nu={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e._assign=lr(o);const a=r||o.props&&o.props.type==="number";Pn(e,t?"change":"input",l=>{if(l.target.composing)return;let i=e.value;n&&(i=i.trim()),a&&(i=P0(i)),e._assign(i)}),n&&Pn(e,"change",()=>{e.value=e.value.trim()}),t||(Pn(e,"compositionstart",cf),Pn(e,"compositionend",us),Pn(e,"change",us))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:r,number:o}},a){if(e._assign=lr(a),e.composing||document.activeElement===e&&e.type!=="range"&&(n||r&&e.value.trim()===t||(o||e.type==="number")&&P0(e.value)===t))return;const l=t??"";e.value!==l&&(e.value=l)}},Bu={deep:!0,created(e,t,n){e._assign=lr(n),Pn(e,"change",()=>{const r=e._modelValue,o=uf(e),a=e.checked,l=e._assign;if(ne(r)){const i=ml(r,o),s=i!==-1;if(a&&!s)l(r.concat(o));else if(!a&&s){const c=[...r];c.splice(i,1),l(c)}}else if(T2(r)){const i=new Set(r);a?i.add(o):i.delete(o),l(i)}else l(ps(e,a))})},mounted:fs,beforeUpdate(e,t,n){e._assign=lr(n),fs(e,t,n)}};function fs(e,{value:t,oldValue:n},r){e._modelValue=t,ne(t)?e.checked=ml(t,r.props.value)>-1:T2(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=V0(t,ps(e,!0)))}function uf(e){return"_value"in e?e._value:e.value}function ps(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}let ds,hs,vs;ds=["ctrl","shift","alt","meta"],hs={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>ds.some(n=>e[`${n}Key`]&&!t.includes(n))},c1=(e,t)=>(n,...r)=>{for(let o=0;on=>{if(!("key"in n))return;const r=Yt(n.key);if(t.some(o=>o===r||vs[o]===r))return e(n)},Er={beforeMount(e,{value:t},{transition:n}){e._vod=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):K2(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),K2(e,!0),r.enter(e)):r.leave(e,()=>{K2(e,!1)}):K2(e,t))},beforeUnmount(e,{value:t}){K2(e,t)}};function K2(e,t){e.style.display=t?e._vod:"none"}const ms=Ie({patchProp:Q5},R5);let Y2,gs=!1;function ws(){return Y2||(Y2=x5(ms))}function ff(){return Y2=gs?Y2:C5(ms),gs=!0,Y2}let qo,_s;qo=(...e)=>{ws().render(...e)},ll=(...e)=>{const t=ws().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=ys(r);if(!o)return;const a=t._component;!oe(a)&&!a.render&&!a.template&&(a.template=o.innerHTML),o.innerHTML="";const l=n(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),l},t},_s=(...e)=>{const t=ff().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=ys(r);if(o)return n(o,!0,o instanceof SVGElement)},t};function ys(e){return ye(e)?document.querySelector(e):e}const pf=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,df=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,hf=/^\s*["[{]|^\s*-?\d[\d.]{0,14}\s*$/;function vf(e,t){if(e!=="__proto__"&&!(e==="constructor"&&t&&typeof t=="object"&&"prototype"in t))return t}function bs(e,t={}){if(typeof e!="string")return e;const n=e.toLowerCase().trim();if(n==="true")return!0;if(n==="false")return!1;if(n==="null")return null;if(n==="nan")return Number.NaN;if(n==="infinity")return Number.POSITIVE_INFINITY;if(n!=="undefined"){if(!hf.test(e)){if(t.strict)throw new SyntaxError("Invalid JSON");return e}try{return pf.test(e)||df.test(e)?JSON.parse(e,vf):JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}}const mf=/#/g,gf=/&/g,wf=/=/g,zs=/\+/g,_f=/%5e/gi,yf=/%60/gi,bf=/%7c/gi,zf=/%20/gi;function xf(e){return encodeURI(""+e).replace(bf,"|")}function Go(e){return xf(typeof e=="string"?e:JSON.stringify(e)).replace(zs,"%2B").replace(zf,"+").replace(mf,"%23").replace(gf,"%26").replace(yf,"`").replace(_f,"^")}function Ko(e){return Go(e).replace(wf,"%3D")}function xs(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function Cf(e){return xs(e.replace(zs," "))}ul=function(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const o=xs(r[1]);if(o==="__proto__"||o==="constructor")continue;const a=Cf(r[2]||"");typeof t[o]<"u"?Array.isArray(t[o])?t[o].push(a):t[o]=[t[o],a]:t[o]=a}return t};function Mf(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${Ko(e)}=${Go(n)}`).join("&"):`${Ko(e)}=${Go(t)}`:Ko(e)}function Lf(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>Mf(t,e[t])).join("&")}const Hf=/^\w{2,}:([/\\]{1,2})/,kf=/^\w{2,}:([/\\]{2})?/,Ef=/^([/\\]\s*){2,}[^/\\]/;Gn=function(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?Hf.test(e):kf.test(e)||(t.acceptRelative?Ef.test(e):!1)};const Af=/\/$|\/\?/;function Yo(e="",t=!1){return t?Af.test(e):e.endsWith("/")}Kr=function(e="",t=!1){if(!t)return(Yo(e)?e.slice(0,-1):e)||"/";if(!Yo(e,!0))return e||"/";const[n,...r]=e.split("?");return(n.slice(0,-1)||"/")+(r.length>0?`?${r.join("?")}`:"")},fl=function(e="",t=!1){if(!t)return e.endsWith("/")?e:e+"/";if(Yo(e,!0))return e||"/";const[n,...r]=e.split("?");return n+"/"+(r.length>0?`?${r.join("?")}`:"")};function Sf(e=""){return e.startsWith("/")}function Vf(e=""){return(Sf(e)?e.slice(1):e)||"/"}function Tf(e,t){if(Ms(t)||Gn(e))return e;const n=Kr(t);return e.startsWith(n)?e:J2(n,e)}function Cs(e,t){if(Ms(t))return e;const n=Kr(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function Of(e,t){const n=A2(e),r={...ul(n.search),...t};return n.search=Lf(r),Pf(n)}function Ms(e){return!e||e==="/"}function Bf(e){return e&&e!=="/"}function J2(e,...t){let n=e||"";for(const r of t.filter(o=>Bf(o)))n=n?fl(n)+Vf(r):r;return n}A2=function(e="",t){if(!Gn(e,{acceptRelative:!0}))return t?A2(t+e):Ls(e);const[n="",r,o=""]=(e.replace(/\\/g,"/").match(/([^/:]+:)?\/\/([^/@]+@)?(.*)/)||[]).splice(1),[a="",l=""]=(o.match(/([^#/?]*)(.*)?/)||[]).splice(1),{pathname:i,search:s,hash:c}=Ls(l.replace(/\/(?=[A-Za-z]:)/,""));return{protocol:n,auth:r?r.slice(0,Math.max(0,r.length-1)):"",host:a,pathname:i,search:s,hash:c}};function Ls(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Pf(e){const t=e.pathname+(e.search?(e.search.startsWith("?")?"":"?")+e.search:"")+e.hash;return e.protocol?e.protocol+"//"+(e.auth?e.auth+"@":"")+e.host+t:t}class If extends Error{constructor(){super(...arguments),this.name="FetchError"}}function Ff(e,t,n){let r="";t&&(r=t.message),e&&n?r=`${r} (${n.status} ${n.statusText} (${e.toString()}))`:e&&(r=`${r} (${e.toString()})`);const o=new If(r);return Object.defineProperty(o,"request",{get(){return e}}),Object.defineProperty(o,"response",{get(){return n}}),Object.defineProperty(o,"data",{get(){return n&&n._data}}),Object.defineProperty(o,"status",{get(){return n&&n.status}}),Object.defineProperty(o,"statusText",{get(){return n&&n.statusText}}),Object.defineProperty(o,"statusCode",{get(){return n&&n.status}}),Object.defineProperty(o,"statusMessage",{get(){return n&&n.statusText}}),o}const Nf=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function Hs(e="GET"){return Nf.has(e.toUpperCase())}function Rf(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const Df=new Set(["image/svg","application/xml","application/xhtml","application/html"]),$f=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function jf(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return $f.test(t)?"json":Df.has(t)||t.startsWith("text/")?"text":"blob"}const Uf=new Set([408,409,425,429,500,502,503,504]);function ks(e){const{fetch:t,Headers:n}=e;function r(l){const i=l.error&&l.error.name==="AbortError"||!1;if(l.options.retry!==!1&&!i){let c;typeof l.options.retry=="number"?c=l.options.retry:c=Hs(l.options.method)?0:1;const u=l.response&&l.response.status||500;if(c>0&&Uf.has(u))return o(l.request,{...l.options,retry:c-1})}const s=Ff(l.request,l.error,l.response);throw Error.captureStackTrace&&Error.captureStackTrace(s,o),s}const o=async function(l,i={}){const s={request:l,options:{...e.defaults,...i},response:void 0,error:void 0};s.options.onRequest&&await s.options.onRequest(s),typeof s.request=="string"&&(s.options.baseURL&&(s.request=Tf(s.request,s.options.baseURL)),(s.options.query||s.options.params)&&(s.request=Of(s.request,{...s.options.params,...s.options.query})),s.options.body&&Hs(s.options.method)&&Rf(s.options.body)&&(s.options.body=typeof s.options.body=="string"?s.options.body:JSON.stringify(s.options.body),s.options.headers=new n(s.options.headers),s.options.headers.has("content-type")||s.options.headers.set("content-type","application/json"),s.options.headers.has("accept")||s.options.headers.set("accept","application/json"))),s.response=await t(s.request,s.options).catch(async u=>(s.error=u,s.options.onRequestError&&await s.options.onRequestError(s),r(s)));const c=(s.options.parseResponse?"json":s.options.responseType)||jf(s.response.headers.get("content-type")||"");if(c==="json"){const u=await s.response.text(),f=s.options.parseResponse||bs;s.response._data=f(u)}else c==="stream"?s.response._data=s.response.body:s.response._data=await s.response[c]();return s.options.onResponse&&await s.options.onResponse(s),s.response.status>=400&&s.response.status<600?(s.options.onResponseError&&await s.options.onResponseError(s),r(s)):s.response},a=function(l,i){return o(l,i).then(s=>s._data)};return a.raw=o,a.native=t,a.create=(l={})=>ks({...e,defaults:{...e.defaults,...l}}),a}const Es=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),Wf=Es.fetch||(()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!"))),qf=Es.Headers,Gf=ks({fetch:Wf,Headers:qf}),Kf=Gf,Yf=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},sr=Yf().app,Jf=()=>sr.baseURL,Xf=()=>sr.buildAssetsDir,Zf=(...e)=>J2(As(),Xf(),...e),As=(...e)=>{const t=sr.cdnURL||sr.baseURL;return e.length?J2(t,...e):t};globalThis.__buildAssetsURL=Zf,globalThis.__publicAssetsURL=As;function Jo(e,t={},n){for(const r in e){const o=e[r],a=n?`${n}:${r}`:r;typeof o=="object"&&o!==null?Jo(o,t,a):typeof o=="function"&&(t[a]=o)}return t}const Qf={run:e=>e()},e9=()=>Qf,Ss=typeof console.createTask<"u"?console.createTask:e9;function t9(e,t){const n=t.shift(),r=Ss(n);return e.reduce((o,a)=>o.then(()=>r.run(()=>a(...t))),Promise.resolve())}function n9(e,t){const n=t.shift(),r=Ss(n);return Promise.all(e.map(o=>r.run(()=>o(...t))))}function Xo(e,t){for(const n of[...e])n(t)}class r9{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const o=t;let a;for(;this._deprecatedHooks[t];)a=this._deprecatedHooks[t],t=a.to;if(a&&!r.allowDeprecated){let l=a.message;l||(l=`${o} hook has been deprecated`+(a.to?`, please use ${a.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(l)||(console.warn(l),this._deprecatedMessages.add(l))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,o=(...a)=>(typeof r=="function"&&r(),r=void 0,o=void 0,n(...a));return r=this.hook(t,o),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const o of r)this.hook(t,o)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=Jo(t),r=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of r.splice(0,r.length))o()}}removeHooks(t){const n=Jo(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(t9,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith(n9,t,...n)}callHookWith(t,n,...r){const o=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&Xo(this._before,o);const a=t(n in this._hooks?[...this._hooks[n]]:[],r);return a instanceof Promise?a.finally(()=>{this._after&&o&&Xo(this._after,o)}):(this._after&&o&&Xo(this._after,o),a)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Vs(){return new r9}function o9(){let e,t=!1;const n=r=>{if(e&&e!==r)throw new Error("Context conflict")};return{use:()=>{if(e===void 0)throw new Error("Context is not available");return e},tryUse:()=>e,set:(r,o)=>{o||n(r),e=r,t=!0},unset:()=>{e=void 0,t=!1},call:(r,o)=>{n(r),e=r;try{return o()}finally{t||(e=void 0)}},async callAsync(r,o){e=r;const a=()=>{e=r},l=()=>e===r?a:void 0;Zo.add(l);try{const i=o();return t||(e=void 0),await i}finally{Zo.delete(l)}}}}function a9(){const e={};return{get(t){return e[t]||(e[t]=o9()),e[t],e[t]}}}const ir=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Ts="__unctx__",l9=ir[Ts]||(ir[Ts]=a9()),s9=e=>l9.get(e),Os="__unctx_async_handlers__",Zo=ir[Os]||(ir[Os]=new Set);function Qo(e){const t=[];for(const o of Zo){const a=o();a&&t.push(a)}const n=()=>{for(const o of t)o()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(o=>{throw n(),o})),[r,n]}const Bs=s9("nuxt-app"),i9="__nuxt_plugin";function c9(e){let t=0;const n={provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.4.1"},get vue(){return n.vueApp.version}},payload:it({data:{},state:{},_errors:{},...window.__NUXT__??{}}),static:{data:{}},isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let a=!1;return()=>{if(!a&&(a=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:{},_payloadRevivers:{},...e};n.hooks=Vs(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(a,l)=>{const i="$"+a;ur(n,i,l),ur(n.vueApp.config.globalProperties,i,l)},ur(n.vueApp,"$nuxt",n),ur(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",l=>{n.callHook("app:chunkError",{error:l.payload})});const a=n.hook("app:error",(...l)=>{console.error("[nuxt] error caught during app initialization",...l)});n.hook("app:mounted",a)}const r=it(n.payload.config),o=new Proxy(r,{get(a,l){return l in a?a[l]:a.public[l]},set(a,l,i){return l==="public"||l==="app"?!1:(a[l]=i,a.public[l]=i,!0)}});return n.provide("config",o),n}async function u9(e,t){if(typeof t!="function")return;const{provide:n}=await $t(e,t,[e])||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}async function f9(e,t){for(const n of t)await u9(e,n)}function p9(e){const t=[];for(const n of e){if(typeof n!="function")continue;let r=n;n.length>1&&(r=o=>n(o,o.provide)),t.push(r)}return t.sort((n,r)=>{var o,a;return(((o=n.meta)==null?void 0:o.order)||cr.default)-(((a=r.meta)==null?void 0:a.order)||cr.default)}),t}const cr={pre:-20,default:0,post:20};function Et(e,t){var r;if(typeof e=="function")return Et({setup:e},t);const n=o=>{if(e.hooks&&o.hooks.addHooks(e.hooks),e.setup)return e.setup(o)};return n.meta={name:(t==null?void 0:t.name)||e.name||((r=e.setup)==null?void 0:r.name),order:(t==null?void 0:t.order)||e.order||cr[e.enforce||"default"]||cr.default},n[i9]=!0,n}function $t(e,t,n){const r=()=>n?t(...n):t();return Bs.set(e),r()}ke=function(){const e=Bs.tryUse();if(!e){const t=Te();if(!t)throw new Error("nuxt instance unavailable");return t.appContext.app.$nuxt}return e};function c2(){return ke().$config}function ur(e,t,n){Object.defineProperty(e,t,{get:()=>n})}const ea={},d9=Et({name:"nuxt:global-components",setup(e){for(const t in ea)e.vueApp.component(t,ea[t]),e.vueApp.component("Lazy"+t,ea[t])}});function h9(e){return Array.isArray(e)?e:[e]}const Ps=["title","script","style","noscript"],v9=["base","meta","link","style","script","noscript"],m9=["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"],g9=["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"],w9=["tagPosition","tagPriority","tagDuplicateStrategy","innerHTML","textContent"];function Is(e){let t=9;for(let n=0;n>>9)+65536).toString(16).substring(1,8).toLowerCase()}function ta(e){return Is(`${e.tag}:${e.textContent||e.innerHTML||""}:${Object.entries(e.props).map(([t,n])=>`${t}:${String(n)}`).join(",")}`)}function _9(e){let t=9;for(const n of e)for(let r=0;r>>9)+65536).toString(16).substring(1,8).toLowerCase()}function Fs(e,t){const{props:n,tag:r}=e;if(g9.includes(r))return r;if(r==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const o=["id"];r==="meta"&&o.push("name","property","http-equiv");for(const a of o)if(typeof n[a]<"u"){const l=String(n[a]);return t&&!t(l)?!1:`${r}:${a}:${l}`}return!1}const Ns=(e,t)=>e==null?t||null:typeof e=="function"?e(t):e,fr=(e,t=!1,n)=>{const{tag:r,$el:o}=e;o&&(Object.entries(r.props).forEach(([a,l])=>{l=String(l);const i=`attr:${a}`;if(a==="class"){if(!l)return;for(const s of l.split(" ")){const c=`${i}:${s}`;n&&n(e,c,()=>o.classList.remove(s)),o.classList.contains(s)||o.classList.add(s)}return}n&&!a.startsWith("data-h-")&&n(e,i,()=>o.removeAttribute(a)),(t||o.getAttribute(a)!==l)&&o.setAttribute(a,l)}),Ps.includes(r.tag)&&(r.textContent&&r.textContent!==o.textContent?o.textContent=r.textContent:r.innerHTML&&r.innerHTML!==o.innerHTML&&(o.innerHTML=r.innerHTML)))};let X2=!1;async function y9(e,t={}){var v,b;const n={shouldRender:!0};if(await e.hooks.callHook("dom:beforeRender",n),!n.shouldRender)return;const r=t.document||e.resolvedOptions.document||window.document,o=(await e.resolveTags()).map(i);if(e.resolvedOptions.experimentalHashHydration&&(X2=X2||e._hash||!1,X2)){const C=_9(o.map(k=>k.tag._h));if(X2===C)return;X2=C}const a=e._popSideEffectQueue();e.headEntries().map(C=>C._sde).forEach(C=>{Object.entries(C).forEach(([k,A])=>{a[k]=A})});const l=(C,k,A)=>{k=`${C.renderId}:${k}`,C.entry&&(C.entry._sde[k]=A),delete a[k]};function i(C){const k=e.headEntries().find(w=>w._i===C._e),A={renderId:!C.key&&C._d?C._d:ta(C),$el:null,shouldRender:!0,tag:C,entry:k,markSideEffect:(w,m)=>l(A,w,m)};return A}const s=[],c={body:[],head:[]},u=C=>{e._elMap[C.renderId]=C.$el,s.push(C),l(C,"el",()=>{var k;(k=C.$el)==null||k.remove(),delete e._elMap[C.renderId]})};for(const C of o){if(await e.hooks.callHook("dom:beforeRenderTag",C),!C.shouldRender)continue;const{tag:k}=C;if(k.tag==="title"){r.title=k.textContent||"",s.push(C);continue}if(k.tag==="htmlAttrs"||k.tag==="bodyAttrs"){C.$el=r[k.tag==="htmlAttrs"?"documentElement":"body"],fr(C,!1,l),s.push(C);continue}if(C.$el=e._elMap[C.renderId],!C.$el&&k.key&&(C.$el=r.querySelector(`${(v=k.tagPosition)!=null&&v.startsWith("body")?"body":"head"} > ${k.tag}[data-h-${k._h}]`)),C.$el){C.tag._d&&fr(C),u(C);continue}c[(b=k.tagPosition)!=null&&b.startsWith("body")?"body":"head"].push(C)}const f={bodyClose:void 0,bodyOpen:void 0,head:void 0};Object.entries(c).forEach(([C,k])=>{var w;if(!k.length)return;const A=(w=r==null?void 0:r[C])==null?void 0:w.children;if(A){for(const m of[...A].reverse()){const M=m.tagName.toLowerCase();if(!v9.includes(M))continue;const L=m.getAttributeNames().reduce((O,N)=>({...O,[N]:m.getAttribute(N)}),{}),H={tag:M,props:L};m.innerHTML&&(H.innerHTML=m.innerHTML);const T=ta(H);let S=k.findIndex(O=>(O==null?void 0:O.renderId)===T);if(S===-1){const O=Fs(H);S=k.findIndex(N=>(N==null?void 0:N.tag._d)&&N.tag._d===O)}if(S!==-1){const O=k[S];O.$el=m,fr(O),u(O),delete k[S]}}k.forEach(m=>{const M=m.tag.tagPosition||"head";f[M]=f[M]||r.createDocumentFragment(),m.$el||(m.$el=r.createElement(m.tag.tag),fr(m,!0)),f[M].appendChild(m.$el),u(m)})}}),f.head&&r.head.appendChild(f.head),f.bodyOpen&&r.body.insertBefore(f.bodyOpen,r.body.firstChild),f.bodyClose&&r.body.appendChild(f.bodyClose);for(const C of s)await e.hooks.callHook("dom:renderTag",C);Object.values(a).forEach(C=>C())}let na=null;async function b9(e,t={}){function n(){return na=null,y9(e,t)}const r=t.delayFn||(o=>setTimeout(o,10));return na=na||new Promise(o=>r(()=>o(n())))}const z9=e=>({hooks:{"entries:updated":function(t){if(typeof(e==null?void 0:e.document)>"u"&&typeof window>"u")return;let n=e==null?void 0:e.delayFn;!n&&typeof requestAnimationFrame<"u"&&(n=requestAnimationFrame),b9(t,{document:(e==null?void 0:e.document)||window.document,delayFn:n})}}});function x9(e){var t;return((t=e==null?void 0:e.head.querySelector('meta[name="unhead:ssr"]'))==null?void 0:t.getAttribute("content"))||!1}const Rs={critical:2,high:9,low:12,base:-1,title:1,meta:10};function Ds(e){if(typeof e.tagPriority=="number")return e.tagPriority;if(e.tag==="meta"){if(e.props.charset)return-2;if(e.props["http-equiv"]==="content-security-policy")return 0}const t=e.tagPriority||e.tag;return t in Rs?Rs[t]:10}const C9=[{prefix:"before:",offset:-1},{prefix:"after:",offset:1}];function M9(){return{hooks:{"tags:resolve":e=>{const t=n=>{var r;return(r=e.tags.find(o=>o._d===n))==null?void 0:r._p};for(const{prefix:n,offset:r}of C9)for(const o of e.tags.filter(a=>typeof a.tagPriority=="string"&&a.tagPriority.startsWith(n))){const a=t(o.tagPriority.replace(n,""));typeof a<"u"&&(o._p=a+r)}e.tags.sort((n,r)=>n._p-r._p).sort((n,r)=>Ds(n)-Ds(r))}}}}const L9=()=>({hooks:{"tags:resolve":e=>{const{tags:t}=e;let n=t.findIndex(o=>o.tag==="titleTemplate");const r=t.findIndex(o=>o.tag==="title");if(r!==-1&&n!==-1){const o=Ns(t[n].textContent,t[r].textContent);o!==null?t[r].textContent=o||t[r].textContent:delete t[r]}else if(n!==-1){const o=Ns(t[n].textContent);o!==null&&(t[n].textContent=o,t[n].tag="title",n=-1)}n!==-1&&delete t[n],e.tags=t.filter(Boolean)}}}),H9=()=>({hooks:{"tag:normalise":function({tag:e}){typeof e.props.body<"u"&&(e.tagPosition="bodyClose",delete e.props.body)}}}),k9=["link","style","script","noscript"],E9=()=>({hooks:{"tag:normalise":({tag:e,resolvedOptions:t})=>{t.experimentalHashHydration===!0&&(e._h=ta(e)),e.key&&k9.includes(e.tag)&&(e._h=Is(e.key),e.props[`data-h-${e._h}`]="")}}}),$s=["script","link","bodyAttrs"],A9=()=>{const e=(t,n)=>{const r={},o={};Object.entries(n.props).forEach(([l,i])=>{l.startsWith("on")&&typeof i=="function"?o[l]=i:r[l]=i});let a;return t==="dom"&&n.tag==="script"&&typeof r.src=="string"&&typeof o.onload<"u"&&(a=r.src,delete r.src),{props:r,eventHandlers:o,delayedSrc:a}};return{hooks:{"ssr:render":function(t){t.tags=t.tags.map(n=>(!$s.includes(n.tag)||!Object.entries(n.props).find(([r,o])=>r.startsWith("on")&&typeof o=="function")||(n.props=e("ssr",n).props),n))},"dom:beforeRenderTag":function(t){if(!$s.includes(t.tag.tag)||!Object.entries(t.tag.props).find(([a,l])=>a.startsWith("on")&&typeof l=="function"))return;const{props:n,eventHandlers:r,delayedSrc:o}=e("dom",t.tag);Object.keys(r).length&&(t.tag.props=n,t.tag._eventHandlers=r,t.tag._delayedSrc=o)},"dom:renderTag":function(t){const n=t.$el;if(!t.tag._eventHandlers||!n)return;const r=t.tag.tag==="bodyAttrs"&&typeof window<"u"?window:n;Object.entries(t.tag._eventHandlers).forEach(([o,a])=>{const l=`${t.tag._d||t.tag._p}:${o}`,i=o.slice(2).toLowerCase(),s=`data-h-${i}`;if(t.markSideEffect(l,()=>{}),n.hasAttribute(s))return;const c=a;n.setAttribute(s,""),r.addEventListener(i,c),t.entry&&(t.entry._sde[l]=()=>{r.removeEventListener(i,c),n.removeAttribute(s)})}),t.tag._delayedSrc&&n.setAttribute("src",t.tag._delayedSrc)}}}},S9=["templateParams","htmlAttrs","bodyAttrs"],V9=()=>({hooks:{"tag:normalise":function({tag:e}){["hid","vmid","key"].forEach(n=>{e.props[n]&&(e.key=e.props[n],delete e.props[n])});const t=e.key?`${e.tag}:${e.key}`:Fs(e);t&&(e._d=t)},"tags:resolve":function(e){const t={};e.tags.forEach(r=>{const o=r._d||r._p,a=t[o];if(a){let l=r==null?void 0:r.tagDuplicateStrategy;if(!l&&S9.includes(r.tag)&&(l="merge"),l==="merge"){const s=a.props;["class","style"].forEach(c=>{r.props[c]&&s[c]&&(c==="style"&&!s[c].endsWith(";")&&(s[c]+=";"),r.props[c]=`${s[c]} ${r.props[c]}`)}),t[o].props={...s,...r.props};return}else if(r._e===a._e){a._duped=a._duped||[],r._d=`${a._d}:${a._duped.length+1}`,a._duped.push(r);return}const i=Object.keys(r.props).length;if((i===0||i===1&&typeof r.props["data-h-key"]<"u")&&!r.innerHTML&&!r.textContent){delete t[o];return}}t[o]=r});const n=[];Object.values(t).forEach(r=>{const o=r._duped;delete r._duped,n.push(r),o&&n.push(...o)}),e.tags=n}}});function pr(e,t){function n(o){if(["s","pageTitle"].includes(o))return t.pageTitle;let a;return o.includes(".")?a=o.split(".").reduce((l,i)=>l&&l[i]||void 0,t):a=t[o],typeof a<"u"?a||"":!1}let r=e;try{r=decodeURI(e)}catch{}return(r.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(o=>{const a=n(o.slice(1));typeof a=="string"&&(e=e.replaceAll(new RegExp(`\\${o}(\\W|$)`,"g"),`${a}$1`).trim())}),t.separator&&(e.endsWith(t.separator)&&(e=e.slice(0,-t.separator.length).trim()),e.startsWith(t.separator)&&(e=e.slice(t.separator.length).trim()),e=e.replace(new RegExp(`\\${t.separator}\\s*\\${t.separator}`,"g"),t.separator)),e}function T9(){return{hooks:{"tags:resolve":e=>{var a;const{tags:t}=e,n=(a=t.find(l=>l.tag==="title"))==null?void 0:a.textContent,r=t.findIndex(l=>l.tag==="templateParams"),o=r!==-1?t[r].props:{};o.pageTitle=o.pageTitle||n||"";for(const l of t)if(["titleTemplate","title"].includes(l.tag)&&typeof l.textContent=="string")l.textContent=pr(l.textContent,o);else if(l.tag==="meta"&&typeof l.props.content=="string")l.props.content=pr(l.props.content,o);else if(l.tag==="link"&&typeof l.props.href=="string")l.props.href=pr(l.props.href,o);else if(l.tag==="script"&&["application/json","application/ld+json"].includes(l.props.type)&&typeof l.innerHTML=="string")try{l.innerHTML=JSON.stringify(JSON.parse(l.innerHTML),(i,s)=>typeof s=="string"?pr(s,o):s)}catch{}e.tags=t.filter(l=>l.tag!=="templateParams")}}}}const O9=typeof window<"u";let js;const B9=e=>js=e,P9=()=>js;async function I9(e,t){const n={tag:e,props:{}};return e==="templateParams"?(n.props=t,n):["title","titleTemplate"].includes(e)?(n.textContent=t instanceof Promise?await t:t,n):typeof t=="string"?["script","noscript","style"].includes(e)?(e==="script"&&(/^(https?:)?\/\//.test(t)||t.startsWith("/"))?n.props.src=t:n.innerHTML=t,n):!1:(n.props=await N9(e,{...t}),n.props.children&&(n.props.innerHTML=n.props.children),delete n.props.children,Object.keys(n.props).filter(r=>w9.includes(r)).forEach(r=>{(!["innerHTML","textContent"].includes(r)||Ps.includes(n.tag))&&(n[r]=n.props[r]),delete n.props[r]}),["innerHTML","textContent"].forEach(r=>{if(n.tag==="script"&&typeof n[r]=="string"&&["application/ld+json","application/json"].includes(n.props.type))try{n[r]=JSON.parse(n[r])}catch{n[r]=""}typeof n[r]=="object"&&(n[r]=JSON.stringify(n[r]))}),n.props.class&&(n.props.class=F9(n.props.class)),n.props.content&&Array.isArray(n.props.content)?n.props.content.map(r=>({...n,props:{...n.props,content:r}})):n)}function F9(e){return typeof e=="object"&&!Array.isArray(e)&&(e=Object.keys(e).filter(t=>e[t])),(Array.isArray(e)?e.join(" "):e).split(" ").filter(t=>t.trim()).filter(Boolean).join(" ")}async function N9(e,t){for(const n of Object.keys(t)){const r=n.startsWith("data-");t[n]instanceof Promise&&(t[n]=await t[n]),String(t[n])==="true"?t[n]=r?"true":"":String(t[n])==="false"&&(r?t[n]="false":delete t[n])}return t}const R9=10;async function D9(e){const t=[];return Object.entries(e.resolvedInput).filter(([n,r])=>typeof r<"u"&&m9.includes(n)).forEach(([n,r])=>{const o=h9(r);t.push(...o.map(a=>I9(n,a)).flat())}),(await Promise.all(t)).flat().filter(Boolean).map((n,r)=>(n._e=e._i,n._p=(e._i<[V9(),M9(),T9(),L9(),E9(),A9(),H9()],j9=(e={})=>[z9({document:e==null?void 0:e.document,delayFn:e==null?void 0:e.domDelayFn})];function U9(e={}){const t=W9({...e,plugins:[...j9(e),...(e==null?void 0:e.plugins)||[]]});return e.experimentalHashHydration&&t.resolvedOptions.document&&(t._hash=x9(t.resolvedOptions.document)),B9(t),t}function W9(e={}){let t=[],n={},r=0;const o=Vs();e!=null&&e.hooks&&o.addHooks(e.hooks),e.plugins=[...$9(),...(e==null?void 0:e.plugins)||[]],e.plugins.forEach(i=>i.hooks&&o.addHooks(i.hooks)),e.document=e.document||(O9?document:void 0);const a=()=>o.callHook("entries:updated",l),l={resolvedOptions:e,headEntries(){return t},get hooks(){return o},use(i){i.hooks&&o.addHooks(i.hooks)},push(i,s){const c={_i:r++,input:i,_sde:{}};return s!=null&&s.mode&&(c._m=s==null?void 0:s.mode),s!=null&&s.transform&&(c._t=s==null?void 0:s.transform),t.push(c),a(),{dispose(){t=t.filter(u=>u._i!==c._i?!0:(n={...n,...u._sde||{}},u._sde={},a(),!1))},patch(u){t=t.map(f=>(f._i===c._i&&(c.input=f.input=u,a()),f))}}},async resolveTags(){const i={tags:[],entries:[...t]};await o.callHook("entries:resolve",i);for(const s of i.entries){const c=s._t||(u=>u);if(s.resolvedInput=c(s.resolvedInput||s.input),s.resolvedInput)for(const u of await D9(s)){const f={tag:u,entry:s,resolvedOptions:l.resolvedOptions};await o.callHook("tag:normalise",f),i.tags.push(f.tag)}}return await o.callHook("tags:resolve",i),i.tags},_popSideEffectQueue(){const i={...n};return n={},i},_elMap:{}};return l.hooks.callHook("init",l),l}function q9(e){return typeof e=="function"?e():J(e)}function dr(e,t=""){if(e instanceof Promise)return e;const n=q9(e);return!e||!n?n:Array.isArray(n)?n.map(r=>dr(r,t)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([r,o])=>r==="titleTemplate"||r.startsWith("on")?[r,J(o)]:[r,dr(o,r)])):n}const G9=W4.startsWith("3"),K9=typeof window<"u",Us="usehead";function ra(){return Te()&&Se(Us)||P9()}function Y9(e){return{install(t){G9&&(t.config.globalProperties.$unhead=e,t.config.globalProperties.$head=e,t.provide(Us,e))}}.install}function J9(e={}){const t=U9({...e,domDelayFn:n=>setTimeout(()=>pt(()=>n()),10),plugins:[X9(),...(e==null?void 0:e.plugins)||[]]});return t.install=Y9(t),t}const X9=()=>({hooks:{"entries:resolve":function(e){for(const t of e.entries)t.resolvedInput=dr(t.input)}}});function Z9(e,t={}){const n=ra(),r=de(!1),o=de({});V1(()=>{o.value=r.value?{}:dr(e)});const a=n.push(o.value,t);return Ae(o,l=>{a.patch(l)}),Te()&&(Un(()=>{a.dispose()}),Gr(()=>{r.value=!0}),u4(()=>{r.value=!1})),a}function Q9(e,t={}){return ra().push(e,t)}Vr=function(e,t={}){var r;const n=ra();if(n){const o=K9||!!((r=n.resolvedOptions)!=null&&r.document);return t.mode==="server"&&o||t.mode==="client"&&!o?void 0:o?Z9(e,t):Q9(e,t)}};const ep={meta:[{name:"viewport",content:"width=device-width, initial-scale=1"},{charset:"utf-8"}],link:[],style:[],script:[],noscript:[]},tp=!1,oa=!1,np=!1,rp="__nuxt",op=!1,ap=Et({name:"nuxt:head",setup(e){const t=J9();t.push(ep),e.vueApp.use(t);{let n=!0;const r=()=>{n=!1,t.hooks.callHook("entries:updated",t)};t.hooks.hook("dom:beforeRender",o=>{o.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",r),e.hooks.hook("app:suspense:resolve",r)}}}),u2=typeof window<"u";function lp(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const be=Object.assign;function aa(e,t){const n={};for(const r in t){const o=t[r];n[r]=bt(o)?o.map(e):e(o)}return n}const Z2=()=>{},bt=Array.isArray,sp=/\/$/,ip=e=>e.replace(sp,"");function la(e,t,n="/"){let r,o={},a="",l="";const i=t.indexOf("#");let s=t.indexOf("?");return i=0&&(s=-1),s>-1&&(r=t.slice(0,s),a=t.slice(s+1,i>-1?i:t.length),o=e(a)),i>-1&&(r=r||t.slice(0,i),l=t.slice(i,t.length)),r=pp(r??t,n),{fullPath:r+(a&&"?")+a+l,path:r,query:o,hash:l}}function cp(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Ws(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function up(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&f2(t.matched[r],n.matched[o])&&qs(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function f2(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function qs(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!fp(e[n],t[n]))return!1;return!0}function fp(e,t){return bt(e)?Gs(e,t):bt(t)?Gs(t,e):e===t}function Gs(e,t){return bt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function pp(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/");let o=n.length-1,a,l;for(a=0;a1&&o--;else break;return n.slice(0,o).join("/")+"/"+r.slice(a-(a===r.length?1:0)).join("/")}var Q2;(function(e){e.pop="pop",e.push="push"})(Q2||(Q2={}));var e0;(function(e){e.back="back",e.forward="forward",e.unknown=""})(e0||(e0={}));function dp(e){if(!e)if(u2){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),ip(e)}const hp=/^[^#]+#/;function vp(e,t){return e.replace(hp,"#")+t}function mp(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const hr=()=>({left:window.pageXOffset,top:window.pageYOffset});function gp(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=mp(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function Ks(e,t){return(history.state?history.state.position-t:-1)+e}const sa=new Map;function wp(e,t){sa.set(e,t)}function _p(e){const t=sa.get(e);return sa.delete(e),t}let yp=()=>location.protocol+"//"+location.host;function Ys(e,t){const{pathname:n,search:r,hash:o}=t,a=e.indexOf("#");if(a>-1){let l=o.includes(e.slice(a))?e.slice(a).length:1,i=o.slice(l);return i[0]!=="/"&&(i="/"+i),Ws(i,"")}return Ws(n,e)+r+o}function bp(e,t,n,r){let o=[],a=[],l=null;const i=({state:v})=>{const b=Ys(e,location),C=n.value,k=t.value;let A=0;if(v){if(n.value=b,t.value=v,l&&l===C){l=null;return}A=k?v.position-k.position:0}else r(b);o.forEach(w=>{w(n.value,C,{delta:A,type:Q2.pop,direction:A?A>0?e0.forward:e0.back:e0.unknown})})};function s(){l=n.value}function c(v){o.push(v);const b=()=>{const C=o.indexOf(v);C>-1&&o.splice(C,1)};return a.push(b),b}function u(){const{history:v}=window;v.state&&v.replaceState(be({},v.state,{scroll:hr()}),"")}function f(){for(const v of a)v();a=[],window.removeEventListener("popstate",i),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",i),window.addEventListener("beforeunload",u),{pauseListeners:s,listen:c,destroy:f}}function Js(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?hr():null}}function zp(e){const{history:t,location:n}=window,r={value:Ys(e,n)},o={value:t.state};o.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(s,c,u){const f=e.indexOf("#"),v=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+s:yp()+e+s;try{t[u?"replaceState":"pushState"](c,"",v),o.value=c}catch(b){console.error(b),n[u?"replace":"assign"](v)}}function l(s,c){const u=be({},t.state,Js(o.value.back,s,o.value.forward,!0),c,{position:o.value.position});a(s,u,!0),r.value=s}function i(s,c){const u=be({},o.value,t.state,{forward:s,scroll:hr()});a(u.current,u,!0);const f=be({},Js(r.value,s,null),{position:u.position+1},c);a(s,f,!1),r.value=s}return{location:r,state:o,push:i,replace:l}}function Xs(e){e=dp(e);const t=zp(e),n=bp(e,t.state,t.location,t.replace);function r(a,l=!0){l||n.pauseListeners(),history.go(a)}const o=be({location:"",base:e,go:r,createHref:vp.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function xp(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Xs(e)}function Cp(e){return typeof e=="string"||e&&typeof e=="object"}function Zs(e){return typeof e=="string"||typeof e=="symbol"}const an={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},Qs=Symbol("");var e6;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(e6||(e6={}));function p2(e,t){return be(new Error,{type:e,[Qs]:!0},t)}function jt(e,t){return e instanceof Error&&Qs in e&&(t==null||!!(e.type&t))}const t6="[^/]+?",Mp={sensitive:!1,strict:!1,start:!0,end:!0},Lp=/[.+*?^${}()[\]/\\]/g;function Hp(e,t){const n=be({},Mp,t),r=[];let o=n.start?"^":"";const a=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(o+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function Ep(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const Ap={type:0,value:""},Sp=/[a-zA-Z0-9_]/;function Vp(e){if(!e)return[[]];if(e==="/")return[[Ap]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(b){throw new Error(`ERR (${n})/"${c}": ${b}`)}let n=0,r=n;const o=[];let a;function l(){a&&o.push(a),a=[]}let i=0,s,c="",u="";function f(){c&&(n===0?a.push({type:0,value:c}):n===1||n===2||n===3?(a.length>1&&(s==="*"||s==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:c,regexp:u,repeatable:s==="*"||s==="+",optional:s==="*"||s==="?"})):t("Invalid state to consume buffer"),c="")}function v(){c+=s}for(;i{l(m)}:Z2}function l(u){if(Zs(u)){const f=r.get(u);f&&(r.delete(u),n.splice(n.indexOf(f),1),f.children.forEach(l),f.alias.forEach(l))}else{const f=n.indexOf(u);f>-1&&(n.splice(f,1),u.record.name&&r.delete(u.record.name),u.children.forEach(l),u.alias.forEach(l))}}function i(){return n}function s(u){let f=0;for(;f=0&&(u.record.path!==n[f].record.path||!l6(u,n[f]));)f++;n.splice(f,0,u),u.record.name&&!o6(u)&&r.set(u.record.name,u)}function c(u,f){let v,b={},C,k;if("name"in u&&u.name){if(v=r.get(u.name),!v)throw p2(1,{location:u});k=v.record.name,b=be(r6(f.params,v.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&r6(u.params,v.keys.map(m=>m.name))),C=v.stringify(b)}else if("path"in u)C=u.path,v=n.find(m=>m.re.test(C)),v&&(b=v.parse(C),k=v.record.name);else{if(v=f.name?r.get(f.name):n.find(m=>m.re.test(f.path)),!v)throw p2(1,{location:u,currentLocation:f});k=v.record.name,b=be({},f.params,u.params),C=v.stringify(b)}const A=[];let w=v;for(;w;)A.unshift(w.record),w=w.parent;return{name:k,path:C,params:b,matched:A,meta:Ip(A)}}return e.forEach(u=>a(u)),{addRoute:a,resolve:c,removeRoute:l,getRoutes:i,getRecordMatcher:o}}function r6(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function Bp(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Pp(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Pp(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="boolean"?n:n[r];return t}function o6(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ip(e){return e.reduce((t,n)=>be(t,n.meta),{})}function a6(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function l6(e,t){return t.children.some(n=>n===e||l6(e,n))}const s6=/#/g,Fp=/&/g,Np=/\//g,Rp=/=/g,Dp=/\?/g,i6=/\+/g,$p=/%5B/g,jp=/%5D/g,c6=/%5E/g,Up=/%60/g,u6=/%7B/g,Wp=/%7C/g,f6=/%7D/g,qp=/%20/g;function ia(e){return encodeURI(""+e).replace(Wp,"|").replace($p,"[").replace(jp,"]")}function Gp(e){return ia(e).replace(u6,"{").replace(f6,"}").replace(c6,"^")}function ca(e){return ia(e).replace(i6,"%2B").replace(qp,"+").replace(s6,"%23").replace(Fp,"%26").replace(Up,"`").replace(u6,"{").replace(f6,"}").replace(c6,"^")}function Kp(e){return ca(e).replace(Rp,"%3D")}function Yp(e){return ia(e).replace(s6,"%23").replace(Dp,"%3F")}function Jp(e){return e==null?"":Yp(e).replace(Np,"%2F")}function vr(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function Xp(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&ca(o)):[r&&ca(r)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function Zp(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=bt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const Qp=Symbol(""),d6=Symbol(""),ua=Symbol(""),fa=Symbol(""),pa=Symbol("");function t0(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e,reset:n}}function ln(e,t,n,r,o){const a=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((l,i)=>{const s=f=>{f===!1?i(p2(4,{from:n,to:t})):f instanceof Error?i(f):Cp(f)?i(p2(2,{from:t,to:f})):(a&&r.enterCallbacks[o]===a&&typeof f=="function"&&a.push(f),l())},c=e.call(r&&r.instances[o],t,n,s);let u=Promise.resolve(c);e.length<3&&(u=u.then(s)),u.catch(f=>i(f))})}function da(e,t,n,r){const o=[];for(const a of e)for(const l in a.components){let i=a.components[l];if(!(t!=="beforeRouteEnter"&&!a.instances[l]))if(ed(i)){const s=(i.__vccOpts||i)[t];s&&o.push(ln(s,n,r,a,l))}else{let s=i();o.push(()=>s.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${l}" at "${a.path}"`));const u=lp(c)?c.default:c;a.components[l]=u;const f=(u.__vccOpts||u)[t];return f&&ln(f,n,r,a,l)()}))}}return o}function ed(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function h6(e){const t=Se(ua),n=Se(fa),r=Z(()=>t.resolve(J(e.to))),o=Z(()=>{const{matched:s}=r.value,{length:c}=s,u=s[c-1],f=n.matched;if(!u||!f.length)return-1;const v=f.findIndex(f2.bind(null,u));if(v>-1)return v;const b=v6(s[c-2]);return c>1&&v6(u)===b&&f[f.length-1].path!==b?f.findIndex(f2.bind(null,s[c-2])):v}),a=Z(()=>o.value>-1&&od(n.params,r.value.params)),l=Z(()=>o.value>-1&&o.value===n.matched.length-1&&qs(n.params,r.value.params));function i(s={}){return rd(s)?t[J(e.replace)?"replace":"push"](J(e.to)).catch(Z2):Promise.resolve()}return{route:r,href:Z(()=>r.value.href),isActive:a,isExactActive:l,navigate:i}}const td=De({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:h6,setup(e,{slots:t}){const n=it(h6(e)),{options:r}=Se(ua),o=Z(()=>({[m6(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[m6(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const a=t.default&&t.default(n);return e.custom?a:Je("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},a)}}}),nd=td;function rd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function od(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!bt(o)||o.length!==r.length||r.some((a,l)=>a!==o[l]))return!1}return!0}function v6(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const m6=(e,t,n)=>e??t??n,ad=De({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Se(pa),o=Z(()=>e.route||r.value),a=Se(d6,0),l=Z(()=>{let c=J(a);const{matched:u}=o.value;let f;for(;(f=u[c])&&!f.components;)c++;return c}),i=Z(()=>o.value.matched[l.value]);qt(d6,Z(()=>l.value+1)),qt(Qp,i),qt(pa,o);const s=de();return Ae(()=>[s.value,i.value,e.name],([c,u,f],[v,b,C])=>{u&&(u.instances[f]=c,b&&b!==u&&c&&c===v&&(u.leaveGuards.size||(u.leaveGuards=b.leaveGuards),u.updateGuards.size||(u.updateGuards=b.updateGuards))),c&&u&&(!b||!f2(u,b)||!v)&&(u.enterCallbacks[f]||[]).forEach(k=>k(c))},{flush:"post"}),()=>{const c=o.value,u=e.name,f=i.value,v=f&&f.components[u];if(!v)return g6(n.default,{Component:v,route:c});const b=f.props[u],C=b?b===!0?c.params:typeof b=="function"?b(c):b:null,k=Je(v,be({},C,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(f.instances[u]=null)},ref:s}));return g6(n.default,{Component:k,route:c})||k}}});function g6(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const w6=ad;function ld(e){const t=Op(e.routes,e),n=e.parseQuery||Xp,r=e.stringifyQuery||p6,o=e.history,a=t0(),l=t0(),i=t0(),s=C2(an);let c=an;u2&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=aa.bind(null,I=>""+I),f=aa.bind(null,Jp),v=aa.bind(null,vr);function b(I,G){let j,X;return Zs(I)?(j=t.getRecordMatcher(I),X=G):X=I,t.addRoute(X,j)}function C(I){const G=t.getRecordMatcher(I);G&&t.removeRoute(G)}function k(){return t.getRoutes().map(I=>I.record)}function A(I){return!!t.getRecordMatcher(I)}function w(I,G){if(G=be({},G||s.value),typeof I=="string"){const z=la(n,I,G.path),d=t.resolve({path:z.path},G),h=o.createHref(z.fullPath);return be(z,d,{params:v(d.params),hash:vr(z.hash),redirectedFrom:void 0,href:h})}let j;if("path"in I)j=be({},I,{path:la(n,I.path,G.path).path});else{const z=be({},I.params);for(const d in z)z[d]==null&&delete z[d];j=be({},I,{params:f(I.params)}),G.params=f(G.params)}const X=t.resolve(j,G),ce=I.hash||"";X.params=u(v(X.params));const ve=cp(r,be({},I,{hash:Gp(ce),path:X.path})),le=o.createHref(ve);return be({fullPath:ve,hash:ce,query:r===p6?Zp(I.query):I.query||{}},X,{redirectedFrom:void 0,href:le})}function m(I){return typeof I=="string"?la(n,I,s.value.path):be({},I)}function M(I,G){if(c!==I)return p2(8,{from:G,to:I})}function L(I){return S(I)}function H(I){return L(be(m(I),{replace:!0}))}function T(I){const G=I.matched[I.matched.length-1];if(G&&G.redirect){const{redirect:j}=G;let X=typeof j=="function"?j(I):j;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),be({query:I.query,hash:I.hash,params:"path"in X?{}:I.params},X)}}function S(I,G){const j=c=w(I),X=s.value,ce=I.state,ve=I.force,le=I.replace===!0,z=T(j);if(z)return S(be(m(z),{state:typeof z=="object"?be({},ce,z.state):ce,force:ve,replace:le}),G||j);const d=j;d.redirectedFrom=G;let h;return!ve&&up(r,X,j)&&(h=p2(16,{to:d,from:X}),lt(X,X,!0,!1)),(h?Promise.resolve(h):N(d,X)).catch(x=>jt(x)?jt(x,2)?x:at(x):ue(x,d,X)).then(x=>{if(x){if(jt(x,2))return S(be({replace:le},m(x.to),{state:typeof x.to=="object"?be({},ce,x.to.state):ce,force:ve}),G||d)}else x=W(d,X,!0,le,ce);return D(d,X,x),x})}function O(I,G){const j=M(I,G);return j?Promise.reject(j):Promise.resolve()}function N(I,G){let j;const[X,ce,ve]=sd(I,G);j=da(X.reverse(),"beforeRouteLeave",I,G);for(const z of X)z.leaveGuards.forEach(d=>{j.push(ln(d,I,G))});const le=O.bind(null,I,G);return j.push(le),d2(j).then(()=>{j=[];for(const z of a.list())j.push(ln(z,I,G));return j.push(le),d2(j)}).then(()=>{j=da(ce,"beforeRouteUpdate",I,G);for(const z of ce)z.updateGuards.forEach(d=>{j.push(ln(d,I,G))});return j.push(le),d2(j)}).then(()=>{j=[];for(const z of I.matched)if(z.beforeEnter&&!G.matched.includes(z))if(bt(z.beforeEnter))for(const d of z.beforeEnter)j.push(ln(d,I,G));else j.push(ln(z.beforeEnter,I,G));return j.push(le),d2(j)}).then(()=>(I.matched.forEach(z=>z.enterCallbacks={}),j=da(ve,"beforeRouteEnter",I,G),j.push(le),d2(j))).then(()=>{j=[];for(const z of l.list())j.push(ln(z,I,G));return j.push(le),d2(j)}).catch(z=>jt(z,8)?z:Promise.reject(z))}function D(I,G,j){for(const X of i.list())X(I,G,j)}function W(I,G,j,X,ce){const ve=M(I,G);if(ve)return ve;const le=G===an,z=u2?history.state:{};j&&(X||le?o.replace(I.fullPath,be({scroll:le&&z&&z.scroll},ce)):o.push(I.fullPath,ce)),s.value=I,lt(I,G,j,le),at()}let $;function Q(){$||($=o.listen((I,G,j)=>{if(!xt.listening)return;const X=w(I),ce=T(X);if(ce){S(be(ce,{replace:!0}),X).catch(Z2);return}c=X;const ve=s.value;u2&&wp(Ks(ve.fullPath,j.delta),hr()),N(X,ve).catch(le=>jt(le,12)?le:jt(le,2)?(S(le.to,X).then(z=>{jt(z,20)&&!j.delta&&j.type===Q2.pop&&o.go(-1,!1)}).catch(Z2),Promise.reject()):(j.delta&&o.go(-j.delta,!1),ue(le,X,ve))).then(le=>{le=le||W(X,ve,!1),le&&(j.delta&&!jt(le,8)?o.go(-j.delta,!1):j.type===Q2.pop&&jt(le,20)&&o.go(-1,!1)),D(X,ve,le)}).catch(Z2)}))}let U=t0(),ae=t0(),te;function ue(I,G,j){at(I);const X=ae.list();return X.length?X.forEach(ce=>ce(I,G,j)):console.error(I),Promise.reject(I)}function qe(){return te&&s.value!==an?Promise.resolve():new Promise((I,G)=>{U.add([I,G])})}function at(I){return te||(te=!I,Q(),U.list().forEach(([G,j])=>I?j(I):G()),U.reset()),I}function lt(I,G,j,X){const{scrollBehavior:ce}=e;if(!u2||!ce)return Promise.resolve();const ve=!j&&_p(Ks(I.fullPath,0))||(X||!j)&&history.state&&history.state.scroll||null;return pt().then(()=>ce(I,G,ve)).then(le=>le&&gp(le)).catch(le=>ue(le,I,G))}const Ye=I=>o.go(I);let je;const wt=new Set,xt={currentRoute:s,listening:!0,addRoute:b,removeRoute:C,hasRoute:A,getRoutes:k,resolve:w,options:e,push:L,replace:H,go:Ye,back:()=>Ye(-1),forward:()=>Ye(1),beforeEach:a.add,beforeResolve:l.add,afterEach:i.add,onError:ae.add,isReady:qe,install(I){const G=this;I.component("RouterLink",nd),I.component("RouterView",w6),I.config.globalProperties.$router=G,Object.defineProperty(I.config.globalProperties,"$route",{enumerable:!0,get:()=>J(s)}),u2&&!je&&s.value===an&&(je=!0,L(o.location).catch(ce=>{}));const j={};for(const ce in an)j[ce]=Z(()=>s.value[ce]);I.provide(ua,G),I.provide(fa,it(j)),I.provide(pa,s);const X=I.unmount;wt.add(I),I.unmount=function(){wt.delete(I),wt.size<1&&(c=an,$&&$(),$=null,s.value=an,je=!1,te=!1),X()}}};return xt}function d2(e){return e.reduce((t,n)=>t.then(()=>n()),Promise.resolve())}function sd(e,t){const n=[],r=[],o=[],a=Math.max(t.matched.length,e.matched.length);for(let l=0;lf2(c,i))?r.push(i):n.push(i));const s=e.matched[l];s&&(t.matched.find(c=>f2(c,s))||o.push(s))}return[n,r,o]}function _6(){return Se(fa)}const id=decodeURIComponent,cd=encodeURIComponent,ud=/; */,mr=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;function fd(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");let n={},r=t||{},o=e.split(ud),a=r.decode||id;for(let l=0;lt.reduce((n,r)=>va(n,r,"",e),{})}const hd=dd();class ma extends Error{constructor(){super(...arguments),this.statusCode=500,this.fatal=!1,this.unhandled=!1,this.statusMessage=void 0}toJSON(){const t={message:this.message,statusCode:wa(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=b6(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}ma.__h3_error__=!0;function ga(e){if(typeof e=="string")return new ma(e);if(vd(e))return e;const t=new ma(e.message??e.statusMessage,e.cause?{cause:e.cause}:void 0);if("stack"in e)try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=wa(e.statusCode,t.statusCode):e.status&&(t.statusCode=wa(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;b6(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function vd(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const md=/[^\u0009\u0020-\u007E]/g;function b6(e=""){return e.replace(md,"")}function wa(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}function gd(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r]=e;if(!n||typeof n!="string")throw new TypeError("[nuxt] [useState] key must be a string: "+n);if(r!==void 0&&typeof r!="function")throw new Error("[nuxt] [useState] init must be a function: "+r);const o="$s"+n,a=ke(),l=L2(a.payload.state,o);if(l.value===void 0&&r){const i=r();if(Le(i))return a.payload.state[o]=i,i;l.value=i}return l}let z6,n0,Fn,x6,C6,gr,_a,M6,L6,ya,H6,ba,za;mn=()=>{var e;return(e=ke())==null?void 0:e.$router},g0=()=>Te()?Se("_route",ke()._route):ke()._route,Ar=e=>e,z6=()=>{try{if(ke()._processingMiddleware)return!0}catch{return!0}return!1},Yr=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:e.path||"/",r=(t==null?void 0:t.external)||Gn(n,{acceptRelative:!0});if(r&&!(t!=null&&t.external))throw new Error("Navigating to external URL is not allowed by default. Use `navigateTo (url, { external: true })`.");if(r&&A2(n).protocol==="script:")throw new Error("Cannot navigate to an URL with script protocol.");const o=z6();if(!r&&o)return e;const a=mn();return r?(t!=null&&t.replace?location.replace(n):location.href=n,Promise.resolve()):t!=null&&t.replace?a.replace(e):a.push(e)},n0=()=>L2(ke().payload,"error"),Fn=e=>{const t=gr(e);try{ke().callHook("app:error",t);const n=n0();n.value=n.value||t}catch{throw t}return t},x6=async(e={})=>{const t=ke(),n=n0();t.callHook("app:error:cleared",e),e.redirect&&await mn().replace(e.redirect),n.value=null},C6=e=>!!(e&&typeof e=="object"&&"__nuxt_error"in e),gr=e=>{const t=ga(e);return t.__nuxt_error=!0,t},_a=[],M6="modulepreload",L6=function(e,t){return e.startsWith(".")?new URL(e,t).href:e},ya={},H6=function(e,t,n){if(!t||t.length===0)return e();const r=document.getElementsByTagName("link");return Promise.all(t.map(o=>{if(o=L6(o,n),o in ya)return;ya[o]=!0;const a=o.endsWith(".css"),l=a?'[rel="stylesheet"]':"";if(n)for(let s=r.length-1;s>=0;s--){const c=r[s];if(c.href===o&&(!a||c.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${l}`))return;const i=document.createElement("link");if(i.rel=a?"stylesheet":M6,a||(i.as="script",i.crossOrigin=""),i.href=o,document.head.appendChild(i),a)return new Promise((s,c)=>{i.addEventListener("load",s),i.addEventListener("error",()=>c(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>e())},me=(...e)=>H6(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),ba=[{path:"/",component:()=>me(()=>import("./index.ac04ba3c.js").then(async e=>(await e.__tla,e)),["./index.ac04ba3c.js","./vnode.a078d472.js","./throttle.95940245.js","./debounce.cf505dd3.js","./nuxt-link.404211f0.js","./_plugin-vue_export-helper.c27b6911.js","./index.91aee260.css"],import.meta.url)},{path:"/auth/login",component:()=>me(()=>import("./login.6456b4ef.js").then(async e=>(await e.__tla,e)),["./login.6456b4ef.js","./test.03e3af90.js","./el-button.946140c1.js","./index.f6314314.js","./use-form-item.9fe2eb56.js","./index.59e0a5b1.js","./el-button.2689f638.css","./throttle.95940245.js","./debounce.cf505dd3.js","./el-input.9a624f32.js","./el-input.399a025a.css","./el-overlay.ae79e505.js","./vnode.a078d472.js","./el-overlay.abd91397.css","./test.7448703b.css","./nuxt-link.404211f0.js","./useLogin.368406ce.js","./_plugin-vue_export-helper.c27b6911.js","./login.747d8ddb.css"],import.meta.url),meta:{layout:"container"}},{path:"/auth/register",component:()=>me(()=>import("./register.582433a7.js").then(async e=>(await e.__tla,e)),["./register.582433a7.js","./test.03e3af90.js","./el-button.946140c1.js","./index.f6314314.js","./use-form-item.9fe2eb56.js","./index.59e0a5b1.js","./el-button.2689f638.css","./throttle.95940245.js","./debounce.cf505dd3.js","./el-input.9a624f32.js","./el-input.399a025a.css","./el-overlay.ae79e505.js","./vnode.a078d472.js","./el-overlay.abd91397.css","./test.7448703b.css","./nuxt-link.404211f0.js","./useLogin.368406ce.js","./_plugin-vue_export-helper.c27b6911.js","./register.32033270.css"],import.meta.url),meta:{layout:"container"}},{path:"/auth/bind",component:()=>me(()=>import("./bind.0b1cde87.js").then(async e=>(await e.__tla,e)),["./bind.0b1cde87.js","./el-input.9a624f32.js","./use-form-item.9fe2eb56.js","./index.f6314314.js","./index.59e0a5b1.js","./el-input.399a025a.css","./el-overlay.ae79e505.js","./vnode.a078d472.js","./el-overlay.abd91397.css","./test.03e3af90.js","./el-button.946140c1.js","./el-button.2689f638.css","./throttle.95940245.js","./debounce.cf505dd3.js","./test.7448703b.css","./useLogin.368406ce.js","./_plugin-vue_export-helper.c27b6911.js","./bind.ce26e328.css"],import.meta.url),meta:{layout:"container"}},{path:"/auth/agreement",component:()=>me(()=>import("./agreement.d9efaa28.js").then(async e=>(await e.__tla,e)),["./agreement.d9efaa28.js","./el-empty.ed8ce84e.js","./index.59e0a5b1.js","./el-empty.3c7fc497.css"],import.meta.url)},{path:"/member",component:()=>me(()=>import("./index.66837b9f.js").then(async e=>(await e.__tla,e)),["./index.66837b9f.js","./el-loading.5f1a5791.js","./el-popper.f96f4ae9.js","./index.f6314314.js","./index.59e0a5b1.js","./vnode.a078d472.js","./el-popper.c80d9727.css","./_plugin-vue_export-helper.c27b6911.js","./el-loading.2bf1cb08.css","./nuxt-link.404211f0.js","./default_headimg.1ff33930.js","./index.8b8e685c.css"],import.meta.url),meta:{middleware:["auth"]}},{path:"/member/center",component:()=>me(()=>import("./center.eadc75da.js").then(async e=>(await e.__tla,e)),["./center.eadc75da.js","./el-loading.5f1a5791.js","./el-popper.f96f4ae9.js","./index.f6314314.js","./index.59e0a5b1.js","./vnode.a078d472.js","./el-popper.c80d9727.css","./_plugin-vue_export-helper.c27b6911.js","./el-loading.2bf1cb08.css","./use-form-item.9fe2eb56.js","./el-overlay.ae79e505.js","./el-input.9a624f32.js","./el-input.399a025a.css","./el-overlay.abd91397.css","./el-button.946140c1.js","./el-button.2689f638.css","./default_headimg.1ff33930.js","./center.0e9c31f4.css"],import.meta.url),meta:{middleware:["auth"]}},{path:"/member/balance",component:()=>me(()=>import("./balance.c54f6ff3.js").then(async e=>(await e.__tla,e)),["./balance.c54f6ff3.js","./el-loading.5f1a5791.js","./el-popper.f96f4ae9.js","./index.f6314314.js","./index.59e0a5b1.js","./vnode.a078d472.js","./el-popper.c80d9727.css","./_plugin-vue_export-helper.c27b6911.js","./el-loading.2bf1cb08.css","./el-select.6d0e4b59.js","./el-input.9a624f32.js","./use-form-item.9fe2eb56.js","./el-input.399a025a.css","./debounce.cf505dd3.js","./el-select.b2660191.css","./balance.29f03df7.css"],import.meta.url),meta:{middleware:["auth"]}},{path:"/member/point",component:()=>me(()=>import("./point.3a7865d8.js").then(async e=>(await e.__tla,e)),["./point.3a7865d8.js","./el-loading.5f1a5791.js","./el-popper.f96f4ae9.js","./index.f6314314.js","./index.59e0a5b1.js","./vnode.a078d472.js","./el-popper.c80d9727.css","./_plugin-vue_export-helper.c27b6911.js","./el-loading.2bf1cb08.css","./el-select.6d0e4b59.js","./el-input.9a624f32.js","./use-form-item.9fe2eb56.js","./el-input.399a025a.css","./debounce.cf505dd3.js","./el-select.b2660191.css","./point.c9b2d345.css"],import.meta.url),meta:{middleware:["auth"]}},{path:"/site/close",component:()=>me(()=>import("./close.fd3f8eba.js").then(async e=>(await e.__tla,e)),["./close.fd3f8eba.js","./el-empty.ed8ce84e.js","./index.59e0a5b1.js","./el-empty.3c7fc497.css"],import.meta.url),meta:{layout:"container"}},{path:"/site/nosite",component:()=>me(()=>import("./nosite.89852ac3.js").then(async e=>(await e.__tla,e)),["./nosite.89852ac3.js","./el-empty.ed8ce84e.js","./index.59e0a5b1.js","./el-empty.3c7fc497.css"],import.meta.url),meta:{layout:"container"}}],za=Object.assign({});for(const e in za){const t=e.split("/")[2];ba.push(...za[e].default.map(n=>(n.meta=n.meta?Object.assign(n.meta,{addon:t}):{addon:t},n)))}const wd={routes:e=>ba,strict:!1},_d={scrollBehavior(e,t,n){const r=ke();let o=n||void 0;if(!o&&t&&e&&e.meta.scrollToTop!==!1&&yd(t,e)&&(o={left:0,top:0}),e.path===t.path){if(t.hash&&!e.hash)return{left:0,top:0};if(e.hash)return{el:e.hash,top:k6(e.hash)}}const a=i=>!!(i.meta.pageTransition??oa),l=a(t)&&a(e)?"page:transition:finish":"page:finish";return new Promise(i=>{r.hooks.hookOnce(l,async()=>{await pt(),e.hash&&(o={el:e.hash,top:k6(e.hash)}),i(o)})})}};function k6(e){try{const t=document.querySelector(e);if(t)return parseFloat(getComputedStyle(t).scrollMarginTop)}catch{}return 0}function yd(e,t){const n=e.matched[0]===t.matched[0];return!!(!n||n&&JSON.stringify(e.params)!==JSON.stringify(t.params))}const bd={},Ut={...bd,..._d,...wd},zd=Ar(async e=>{var i;let t,n;if(!((i=e.meta)!=null&&i.validate))return;const r=ke(),o=mn();if([t,n]=Qo(()=>Promise.resolve(e.meta.validate(e))),t=await t,n(),t===!0)return;const a=gr({statusCode:404,statusMessage:`Page Not Found: ${e.fullPath}`}),l=o.beforeResolve(s=>{if(l(),s===e){const c=o.afterEach(async()=>{c(),await $t(r,Fn,[a]),window.history.pushState({},"",e.fullPath)});return!1}})}),xd=()=>null;function Cd(...e){var v;const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);let[n,r,o={}]=e;if(typeof n!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof r!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");o.server=o.server??!0,o.default=o.default??xd,o.lazy=o.lazy??!1,o.immediate=o.immediate??!0;const a=ke(),l=()=>a.isHydrating?a.payload.data[n]:a.static.data[n],i=()=>l()!==void 0;a._asyncData[n]||(a._asyncData[n]={data:de(l()??((v=o.default)==null?void 0:v.call(o))??null),pending:de(!i()),error:L2(a.payload._errors,n)});const s={...a._asyncData[n]};s.refresh=s.execute=(b={})=>{if(a._asyncDataPromises[n]){if(b.dedupe===!1)return a._asyncDataPromises[n];a._asyncDataPromises[n].cancelled=!0}if(b._initial&&i())return l();s.pending.value=!0;const C=new Promise((k,A)=>{try{k(r(a))}catch(w){A(w)}}).then(k=>{if(C.cancelled)return a._asyncDataPromises[n];let A=k;o.transform&&(A=o.transform(k)),o.pick&&(A=Md(A,o.pick)),s.data.value=A,s.error.value=null}).catch(k=>{var A;if(C.cancelled)return a._asyncDataPromises[n];s.error.value=k,s.data.value=J(((A=o.default)==null?void 0:A.call(o))??null)}).finally(()=>{C.cancelled||(s.pending.value=!1,a.payload.data[n]=s.data.value,s.error.value&&(a.payload._errors[n]=gr(s.error.value)),delete a._asyncDataPromises[n])});return a._asyncDataPromises[n]=C,a._asyncDataPromises[n]};const c=()=>s.refresh({_initial:!0}),u=o.server!==!1&&a.payload.serverRendered;{const b=Te();if(b&&!b._nuxtOnBeforeMountCbs){b._nuxtOnBeforeMountCbs=[];const k=b._nuxtOnBeforeMountCbs;b&&(x0(()=>{k.forEach(A=>{A()}),k.splice(0,k.length)}),Wn(()=>k.splice(0,k.length)))}u&&a.isHydrating&&i()?s.pending.value=!1:b&&(a.payload.serverRendered&&a.isHydrating||o.lazy)&&o.immediate?b._nuxtOnBeforeMountCbs.push(c):o.immediate&&c(),o.watch&&Ae(o.watch,()=>s.refresh());const C=a.hook("app:data:refresh",k=>{if(!k||k.includes(n))return s.refresh()});b&&Wn(C)}const f=Promise.resolve(a._asyncDataPromises[n]).then(()=>s);return Object.assign(f,s),f}function Md(e,t){const n={};for(const r of t)n[r]=e[r];return n}const Ld={ignoreUnknown:!1,respectType:!1,respectFunctionNames:!1,respectFunctionProperties:!1,unorderedObjects:!0,unorderedArrays:!1,unorderedSets:!1};function Hd(e,t={}){t={...Ld,...t};const n=E6(t);return n.dispatch(e),n.toString()}function E6(e){const t=[];let n=[];const r=o=>{t.push(o)};return{toString(){return t.join("")},getContext(){return n},dispatch(o){return e.replacer&&(o=e.replacer(o)),this["_"+(o===null?"null":typeof o)](o)},_object(o){const a=/\[object (.*)]/i,l=Object.prototype.toString.call(o),i=a.exec(l),s=i?i[1].toLowerCase():"unknown:["+l.toLowerCase()+"]";let c=null;if((c=n.indexOf(o))>=0)return this.dispatch("[CIRCULAR:"+c+"]");if(n.push(o),typeof Buffer<"u"&&Buffer.isBuffer&&Buffer.isBuffer(o))return r("buffer:"),r(o.toString("utf8"));if(s!=="object"&&s!=="function"&&s!=="asyncfunction")if(this["_"+s])this["_"+s](o);else{if(e.ignoreUnknown)return r("["+s+"]");throw new Error('Unknown object type "'+s+'"')}else{let u=Object.keys(o);e.unorderedObjects&&(u=u.sort()),e.respectType!==!1&&!A6(o)&&u.splice(0,0,"prototype","__proto__","letructor"),e.excludeKeys&&(u=u.filter(function(f){return!e.excludeKeys(f)})),r("object:"+u.length+":");for(const f of u)this.dispatch(f),r(":"),e.excludeValues||this.dispatch(o[f]),r(",")}},_array(o,a){if(a=typeof a<"u"?a:e.unorderedArrays!==!1,r("array:"+o.length+":"),!a||o.length<=1){for(const s of o)this.dispatch(s);return}const l=[],i=o.map(s=>{const c=E6(e);return c.dispatch(s),l.push(c.getContext()),c.toString()});return n=[...n,...l],i.sort(),this._array(i,!1)},_date(o){return r("date:"+o.toJSON())},_symbol(o){return r("symbol:"+o.toString())},_error(o){return r("error:"+o.toString())},_boolean(o){return r("bool:"+o.toString())},_string(o){r("string:"+o.length+":"),r(o.toString())},_function(o){r("fn:"),A6(o)?this.dispatch("[native]"):this.dispatch(o.toString()),e.respectFunctionNames!==!1&&this.dispatch("function-name:"+String(o.name)),e.respectFunctionProperties&&this._object(o)},_number(o){return r("number:"+o.toString())},_xml(o){return r("xml:"+o.toString())},_null(){return r("Null")},_undefined(){return r("Undefined")},_regexp(o){return r("regex:"+o.toString())},_uint8array(o){return r("uint8array:"),this.dispatch(Array.prototype.slice.call(o))},_uint8clampedarray(o){return r("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(o))},_int8array(o){return r("int8array:"),this.dispatch(Array.prototype.slice.call(o))},_uint16array(o){return r("uint16array:"),this.dispatch(Array.prototype.slice.call(o))},_int16array(o){return r("int16array:"),this.dispatch(Array.prototype.slice.call(o))},_uint32array(o){return r("uint32array:"),this.dispatch(Array.prototype.slice.call(o))},_int32array(o){return r("int32array:"),this.dispatch(Array.prototype.slice.call(o))},_float32array(o){return r("float32array:"),this.dispatch(Array.prototype.slice.call(o))},_float64array(o){return r("float64array:"),this.dispatch(Array.prototype.slice.call(o))},_arraybuffer(o){return r("arraybuffer:"),this.dispatch(new Uint8Array(o))},_url(o){return r("url:"+o.toString())},_map(o){r("map:");const a=[...o];return this._array(a,e.unorderedSets!==!1)},_set(o){r("set:");const a=[...o];return this._array(a,e.unorderedSets!==!1)},_file(o){return r("file:"),this.dispatch([o.name,o.size,o.type,o.lastModfied])},_blob(){if(e.ignoreUnknown)return r("[blob]");throw new Error(`Hashing Blob objects is currently not supported +Use "options.replacer" or "options.ignoreUnknown" +`)},_domwindow(){return r("domwindow")},_bigint(o){return r("bigint:"+o.toString())},_process(){return r("process")},_timer(){return r("timer")},_pipe(){return r("pipe")},_tcp(){return r("tcp")},_udp(){return r("udp")},_tty(){return r("tty")},_statwatcher(){return r("statwatcher")},_securecontext(){return r("securecontext")},_connection(){return r("connection")},_zlib(){return r("zlib")},_context(){return r("context")},_nodescript(){return r("nodescript")},_httpparser(){return r("httpparser")},_dataview(){return r("dataview")},_signal(){return r("signal")},_fsevent(){return r("fsevent")},_tlswrap(){return r("tlswrap")}}}function A6(e){return typeof e!="function"?!1:/^function\s+\w*\s*\(\s*\)\s*{\s+\[native code]\s+}$/i.exec(Function.prototype.toString.call(e))!=null}class h2{constructor(t,n){t=this.words=t||[],this.sigBytes=n!==void 0?n:t.length*4}toString(t){return(t||kd).stringify(this)}concat(t){if(this.clamp(),this.sigBytes%4)for(let n=0;n>>2]>>>24-n%4*8&255;this.words[this.sigBytes+n>>>2]|=r<<24-(this.sigBytes+n)%4*8}else for(let n=0;n>>2]=t.words[n>>>2];return this.sigBytes+=t.sigBytes,this}clamp(){this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4)}clone(){return new h2([...this.words])}}const kd={stringify(e){const t=[];for(let n=0;n>>2]>>>24-n%4*8&255;t.push((r>>>4).toString(16),(r&15).toString(16))}return t.join("")}},Ed={stringify(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[];for(let r=0;r>>2]>>>24-r%4*8&255,a=e.words[r+1>>>2]>>>24-(r+1)%4*8&255,l=e.words[r+2>>>2]>>>24-(r+2)%4*8&255,i=o<<16|a<<8|l;for(let s=0;s<4&&r*8+s*6>>6*(3-s)&63))}return n.join("")}},Ad={parse(e){const t=e.length,n=[];for(let r=0;r>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new h2(n,t)}},Sd={parse(e){return Ad.parse(unescape(encodeURIComponent(e)))}};class Vd{constructor(){this._minBufferSize=0,this.blockSize=16,this.reset()}reset(){this._data=new h2,this._nDataBytes=0}_append(t){typeof t=="string"&&(t=Sd.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes}_doProcessBlock(t,n){}_process(t){let n,r=this._data.sigBytes/(this.blockSize*4);t?r=Math.ceil(r):r=Math.max((r|0)-this._minBufferSize,0);const o=r*this.blockSize,a=Math.min(o*4,this._data.sigBytes);if(o){for(let l=0;l>>7)^(M<<14|M>>>18)^M>>>3,H=Nn[v-2],T=(H<<15|H>>>17)^(H<<13|H>>>19)^H>>>10;Nn[v]=L+Nn[v-7]+T+Nn[v-16]}const b=s&c^~s&u,C=o&a^o&l^a&l,k=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),A=(s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25),w=f+A+b+Bd[v]+Nn[v],m=k+C;f=u,u=c,c=s,s=i+w|0,i=l,l=a,a=o,o=w+m|0}r[0]=r[0]+o|0,r[1]=r[1]+a|0,r[2]=r[2]+l|0,r[3]=r[3]+i|0,r[4]=r[4]+s|0,r[5]=r[5]+c|0,r[6]=r[6]+u|0,r[7]=r[7]+f|0}finalize(t){super.finalize(t);const n=this._nDataBytes*8,r=this._data.sigBytes*8;return this._data.words[r>>>5]|=128<<24-r%32,this._data.words[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),this._data.words[(r+64>>>9<<4)+15]=n,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}}function Id(e){return new Pd().finalize(e).toString(Ed)}function Fd(e,t={}){const n=typeof e=="string"?e:Hd(e,t);return Id(n).slice(0,10)}function Nd(e,t,n){const[r={},o]=typeof t=="string"?[{},t]:[t,n],a=r.key||Fd([o,J(r.baseURL),typeof e=="string"?e:"",J(r.params||r.query)]);if(!a||typeof a!="string")throw new TypeError("[nuxt] [useFetch] key must be a string: "+a);if(!e)throw new Error("[nuxt] [useFetch] request is missing.");const l=a===o?"$f"+a:a,i=Z(()=>{let M=e;return typeof M=="function"&&(M=M()),J(M)});if(!r.baseURL&&typeof i.value=="string"&&i.value.startsWith("//"))throw new Error('[nuxt] [useFetch] the request URL must not start with "//".');const{server:s,lazy:c,default:u,transform:f,pick:v,watch:b,immediate:C,...k}=r,A=it({...k,cache:typeof r.cache=="boolean"?void 0:r.cache}),w={server:s,lazy:c,default:u,transform:f,pick:v,immediate:C,watch:b===!1?[]:[A,i,...b||[]]};let m;return Cd(l,()=>{var M;return(M=m==null?void 0:m.abort)==null||M.call(m),m=typeof AbortController<"u"?new AbortController:{},typeof i.value=="string"&&i.value.startsWith("/"),(r.$fetch||globalThis.$fetch)(i.value,{signal:m.signal,...A})},w)}const Rd={path:"/",watch:!0,decode:e=>bs(decodeURIComponent(e)),encode:e=>encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))};qn=function(e,t){var a;const n={...Rd,...t},r=Dd(n)||{},o=de(r[e]??((a=n.default)==null?void 0:a.call(n)));{const l=()=>{jd(e,o.value,n)};n.watch?Ae(o,l,{deep:n.watch!=="shallow"}):l()}return o};function Dd(e={}){return fd(document.cookie,e)}function $d(e,t,n={}){return t==null?y6(e,t,{...n,maxAge:-1}):y6(e,t,n)}function jd(e,t,n={}){document.cookie=$d(e,t,n)}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");const Ud=-1,Wd=-2,qd=-3,Gd=-4,Kd=-5,Yd=-6;function Jd(e,t){return Xd(JSON.parse(e),t)}function Xd(e,t){if(typeof e=="number")return o(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function o(a,l=!1){if(a===Ud)return;if(a===qd)return NaN;if(a===Gd)return 1/0;if(a===Kd)return-1/0;if(a===Yd)return-0;if(l)throw new Error("Invalid input");if(a in r)return r[a];const i=n[a];if(!i||typeof i!="object")r[a]=i;else if(Array.isArray(i))if(typeof i[0]=="string"){const s=i[0],c=t==null?void 0:t[s];if(c)return r[a]=c(o(i[1]));switch(s){case"Date":r[a]=new Date(i[1]);break;case"Set":const u=new Set;r[a]=u;for(let b=1;ba||(delete o[n],null))),o[n]}const V6="js";function Zd(e,t={}){const n=new URL(e,"http://localhost");if(n.search)throw new Error("Payload URL cannot contain search params: "+e);if(n.host!=="localhost"||Gn(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=t.hash||(t.fresh?Date.now():"");return J2(c2().app.baseURL,n.pathname,r?`_payload.${r}.${V6}`:`_payload.${V6}`)}async function Qd(e){try{return op?th(await fetch(e).then(t=>t.text())):await me(()=>import(e).then(async t=>(await t.__tla,t)),[],import.meta.url).then(t=>t.default||t)}catch(t){console.warn("[nuxt] Cannot load payload ",e,t)}return null}function eh(){return!!ke().payload.prerenderedAt}function th(e){return Jd(e,ke()._payloadRevivers)}function nh(e={}){const t=e.path||window.location.pathname;let n={};try{n=JSON.parse(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires)T6=e,O6=Symbol();function xa(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var r0;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(r0||(r0={}));function oh(){const e=_0(!0),t=e.run(()=>de({}));let n=[],r=[];const o=wn({install(a){wr(o),o._a=a,a.provide(O6,o),a.config.globalProperties.$pinia=o,r.forEach(l=>n.push(l)),r=[]},use(a){return!this._a&&!rh?r.push(a):n.push(a),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}const B6=()=>{};function P6(e,t,n,r=B6){e.push(t);const o=()=>{const a=e.indexOf(t);a>-1&&(e.splice(a,1),r())};return!n&&oo()&&Dr(o),o}function v2(e,...t){e.slice().forEach(n=>{n(...t)})}function Ca(e,t){e instanceof Map&&t instanceof Map&&t.forEach((n,r)=>e.set(r,n)),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],o=e[n];xa(o)&&xa(r)&&e.hasOwnProperty(n)&&!Le(r)&&!Qt(r)?e[n]=Ca(o,r):e[n]=r}return e}const ah=Symbol();function lh(e){return!xa(e)||!e.hasOwnProperty(ah)}const{assign:sn}=Object;function sh(e){return!!(Le(e)&&e.effect)}function ih(e,t,n,r){const{state:o,actions:a,getters:l}=t,i=n.state.value[e];let s;function c(){i||(n.state.value[e]=o?o():{});const u=Y1(n.state.value[e]);return sn(u,a,Object.keys(l||{}).reduce((f,v)=>(f[v]=wn(Z(()=>{wr(n);const b=n._s.get(e);return l[v].call(b,b)})),f),{}))}return s=I6(e,c,t,n,r,!0),s}function I6(e,t,n={},r,o,a){let l;const i=sn({actions:{}},n),s={deep:!0};let c,u,f=wn([]),v=wn([]),b;const C=r.state.value[e];!a&&!C&&(r.state.value[e]={}),de({});let k;function A(S){let O;c=u=!1,typeof S=="function"?(S(r.state.value[e]),O={type:r0.patchFunction,storeId:e,events:b}):(Ca(r.state.value[e],S),O={type:r0.patchObject,payload:S,storeId:e,events:b});const N=k=Symbol();pt().then(()=>{k===N&&(c=!0)}),u=!0,v2(f,O,r.state.value[e])}const w=a?function(){const{state:S}=n,O=S?S():{};this.$patch(N=>{sn(N,O)})}:B6;function m(){l.stop(),f=[],v=[],r._s.delete(e)}function M(S,O){return function(){wr(r);const N=Array.from(arguments),D=[],W=[];function $(ae){D.push(ae)}function Q(ae){W.push(ae)}v2(v,{args:N,name:S,store:H,after:$,onError:Q});let U;try{U=O.apply(this&&this.$id===e?this:H,N)}catch(ae){throw v2(W,ae),ae}return U instanceof Promise?U.then(ae=>(v2(D,ae),ae)).catch(ae=>(v2(W,ae),Promise.reject(ae))):(v2(D,U),U)}}const L={_p:r,$id:e,$onAction:P6.bind(null,v),$patch:A,$reset:w,$subscribe(S,O={}){const N=P6(f,S,O.detached,()=>D()),D=l.run(()=>Ae(()=>r.state.value[e],W=>{(O.flush==="sync"?u:c)&&S({storeId:e,type:r0.direct,events:b},W)},sn({},s,O)));return N},$dispose:m},H=it(L);r._s.set(e,H);const T=r._e.run(()=>(l=_0(),l.run(()=>t())));for(const S in T){const O=T[S];if(Le(O)&&!sh(O)||Qt(O))a||(C&&lh(O)&&(Le(O)?O.value=C[S]:Ca(O,C[S])),r.state.value[e][S]=O);else if(typeof O=="function"){const N=M(S,O);T[S]=N,i.actions[S]=O}}return sn(H,T),sn(fe(H),T),Object.defineProperty(H,"$state",{get:()=>r.state.value[e],set:S=>{A(O=>{sn(O,S)})}}),r._p.forEach(S=>{sn(H,l.run(()=>S({store:H,app:r._a,pinia:r,options:i})))}),C&&a&&n.hydrate&&n.hydrate(H.$state,C),c=!0,u=!0,H}function _r(e,t,n){let r,o;const a=typeof t=="function";typeof e=="string"?(r=e,o=a?n:t):(o=e,r=e.id);function l(i,s){const c=Te();return i=i||c&&Se(O6,null),i&&wr(i),i=T6,i._s.has(r)||(a?I6(r,t,o,i):ih(r,o,i)),i._s.get(r)}return l.$id=r,l}class ch{set(t){try{window.localStorage.setItem(t.key,JSON.stringify(t.data)),typeof t.success=="function"&&t.success()}catch(n){typeof t.fail=="function"&&t.fail(n)}}get(t){try{const n=window.localStorage.getItem(t);return JSON.parse(n)}catch{return null}}remove(t){typeof t=="string"?window.localStorage.removeItem(t):t.forEach(n=>{window.localStorage.removeItem(n)})}clear(){window.localStorage.clear()}}m1=new ch;function uh(){return Oe.get("member/member")}Tu=function(e){return Oe.put(`member/modify/${e.field}`,e)},Yu=function(e){return Oe.get("member/account/point",e)},Ku=function(e){return Oe.get("member/account/balance",e)},Eu=function(e){return Oe.put("member/mobile",e)},hu=function(e){return Oe.get("login",e)},vu=function(e){return Oe.post("login/mobile",e)};function fh(){return Oe.get("login/config")}function ph(){return Oe.put("auth/logout")}Lu=function(e){let t="register";return e.pid&&(t+=`?pid=${e.pid}`),Oe.post(t,e)},Hu=function(e){let t="register/mobile";return e.pid&&(t+=`?pid=${e.pid}`),Oe.post(t,e)},Au=function(e){let t="bind";return e.pid&&(t+=`?pid=${e.pid}`),Oe.post(t,e)},du=function(){return Oe.post("wechat/scanlogin")},mu=function(e){return Oe.get("checkscan",e)},S0=_r("member",{state:()=>({token:qn("token").value,info:null}),actions:{async setToken(e){this.token=e,qn("token").value=e,await this.getMemberInfo()},async getMemberInfo(){this.token&&await uh().then(e=>{this.info=e.data}).catch(e=>{this.logout()})},logout(){this.token&&(this.token="",this.info=null,qn("token").value=null,ph().then().catch())}}}),E2=function(){return S0().token};function dh(e){return e.indexOf("http://")!=-1||e.indexOf("https://")!=-1}ku=function(e){const t=c2();return dh(e)?e:`${t.public.VITE_IMG_DOMAIN||location.origin}/${e}`};const Ma=(e,t)=>{const n=e[t];return n?typeof n=="function"?n():Promise.resolve(n):new Promise((r,o)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(o.bind(null,new Error("Unknown variable dynamic import: "+t)))})};class F6{constructor(t){x2(this,"i18n");x2(this,"loadLocale",[]);x2(this,"file","");x2(this,"getFileKey",(t,n)=>{const r=n=="/"?"index":n.replace("/","").replaceAll("/",".");return`${t}.${r}`});this.i18n=t}setI18nLanguage(t){this.i18n.mode==="legacy"?this.i18n.global.locale=t:this.i18n.global.locale=t;let n=document.querySelector("html");n&&n.setAttribute("lang",t)}async loadLocaleMessages(t,n,r){try{const o=n=="/"?"index":n.replace("/","").replaceAll("/",".");if(this.loadLocale.includes(`${t}/${r}/${o}`))return pt();if(this.loadLocale.push(`${t}/${r}/${o}`),t!="app"&&this.loadLocale.includes(`${t}/${r}/pages`)){const s=await Ma(Object.assign({}),`../addon/${t}/lang/${r}/pages.json`);this.i18n.global.mergeLocaleMessage(r,s),this.loadLocale.push(`${t}/${r}/pages`)}const a=await(t=="app"?Ma(Object.assign({"../app/lang/en/common.json":()=>me(()=>import("./common.f1878efd.js"),[],import.meta.url),"../app/lang/en/index.json":()=>me(()=>import("./index.ad2eb3b5.js"),[],import.meta.url),"../app/lang/en/pages.json":()=>me(()=>Promise.resolve().then(()=>JY),void 0,import.meta.url),"../app/lang/zh-cn/article.detail.json":()=>me(()=>import("./article.detail.83f94799.js"),[],import.meta.url),"../app/lang/zh-cn/article.list.json":()=>me(()=>import("./article.list.83f94799.js"),[],import.meta.url),"../app/lang/zh-cn/auth.bind.json":()=>me(()=>import("./auth.bind.ab578615.js"),[],import.meta.url),"../app/lang/zh-cn/auth.login.json":()=>me(()=>import("./auth.login.69459761.js"),[],import.meta.url),"../app/lang/zh-cn/auth.register.json":()=>me(()=>import("./auth.register.18779c1c.js"),[],import.meta.url),"../app/lang/zh-cn/common.json":()=>me(()=>import("./common.07263123.js"),[],import.meta.url),"../app/lang/zh-cn/index.json":()=>me(()=>import("./index.24fdde3c.js"),[],import.meta.url),"../app/lang/zh-cn/member.balance.json":()=>me(()=>import("./member.balance.37fd278d.js"),[],import.meta.url),"../app/lang/zh-cn/member.center.json":()=>me(()=>import("./member.center.dedfc2f3.js"),[],import.meta.url),"../app/lang/zh-cn/member.json":()=>me(()=>import("./member.3f5cb712.js"),[],import.meta.url),"../app/lang/zh-cn/member.point.json":()=>me(()=>import("./member.point.6e212e8a.js"),[],import.meta.url),"../app/lang/zh-cn/pages.json":()=>me(()=>Promise.resolve().then(()=>YY),void 0,import.meta.url)}),`../app/lang/${r}/${o}.json`):Ma(Object.assign({}),`../addon/${t}/lang/${r}/${o}.json`)),l=this.getFileKey(t,n);let i={};return Object.keys(a.default).forEach(s=>{i[`${l}.${s}`]=a.default[s]}),this.i18n.global.mergeLocaleMessage(r,i),this.setI18nLanguage(r),pt()}catch{return this.setI18nLanguage(r),pt()}}}Xe=function(e){const t=ke().$getI18n(),n=_6(),r=`${new F6(t).getFileKey((n==null?void 0:n.meta.addon)||"app",(n==null?void 0:n.path)||"")}.${e}`;return t.global.t(r)!=r?t.global.t(r):t.global.t(e)};var N6;let R6,D6,$6,Rn;gn=typeof window<"u",R6=e=>typeof e<"u",Uu=e=>typeof e=="boolean",D6=e=>typeof e=="function",jn=e=>typeof e=="number",$6=e=>typeof e=="string",Rn=()=>{},$1=gn&&((N6=window==null?void 0:window.navigator)==null?void 0:N6.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function m2(e){return typeof e=="function"?e():J(e)}function j6(e,t){function n(...r){return new Promise((o,a)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(a)})}return n}function hh(e,t={}){let n,r,o=Rn;const a=l=>{clearTimeout(l),o(),o=Rn};return l=>{const i=m2(e),s=m2(t.maxWait);return n&&a(n),i<=0||s!==void 0&&s<=0?(r&&(a(r),r=null),Promise.resolve(l())):new Promise((c,u)=>{o=t.rejectOnCancel?u:c,s&&!r&&(r=setTimeout(()=>{n&&a(n),r=null,c(l())},s)),n=setTimeout(()=>{r&&a(r),r=null,c(l())},i)})}}function vh(e,t=!0,n=!0,r=!1){let o=0,a,l=!0,i=Rn,s;const c=()=>{a&&(clearTimeout(a),a=void 0,i(),i=Rn)};return u=>{const f=m2(e),v=Date.now()-o,b=()=>s=u();return c(),f<=0?(o=Date.now(),b()):(v>f&&(n||!l)?(o=Date.now(),b()):t&&(s=new Promise((C,k)=>{i=r?k:C,a=setTimeout(()=>{o=Date.now(),l=!0,C(b()),c()},Math.max(0,f-v))})),!n&&!a&&(a=setTimeout(()=>l=!0,f)),l=!1,s)}}function mh(e){return e}E0=function(e){return oo()?(Dr(e),!0):!1};function gh(e,t=200,n={}){return j6(hh(t,n),e)}Wu=function(e,t=200,n={}){const r=de(e.value),o=gh(()=>{r.value=e.value},t,n);return Ae(e,()=>o()),r},wu=function(e,t=200,n=!1,r=!0,o=!1){return j6(vh(t,n,r,o),e)};function wh(e,t=!0){Te()?hn(e):t?e():pt(e)}X1=function(e,t,n={}){const{immediate:r=!0}=n,o=de(!1);let a=null;function l(){a&&(clearTimeout(a),a=null)}function i(){o.value=!1,l()}function s(...c){l(),o.value=!0,a=setTimeout(()=>{o.value=!1,a=null,e(...c)},m2(t))}return r&&(o.value=!0,gn&&s()),E0(i),{isPending:A0(o),start:s,stop:i}},bn=function(e){var t;const n=m2(e);return(t=n==null?void 0:n.$el)!=null?t:n};const La=gn?window:void 0;k2=function(...e){let t,n,r,o;if($6(e[0])||Array.isArray(e[0])?([n,r,o]=e,t=La):[t,n,r,o]=e,!t)return Rn;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(u=>u()),a.length=0},i=(u,f,v,b)=>(u.addEventListener(f,v,b),()=>u.removeEventListener(f,v,b)),s=Ae(()=>[bn(t),m2(o)],([u,f])=>{l(),u&&a.push(...n.flatMap(v=>r.map(b=>i(u,v,b,f))))},{immediate:!0,flush:"post"}),c=()=>{s(),l()};return E0(c),c};let U6=!1;Zu=function(e,t,n={}){const{window:r=La,ignore:o=[],capture:a=!0,detectIframe:l=!1}=n;if(!r)return;$1&&!U6&&(U6=!0,Array.from(r.document.body.children).forEach(u=>u.addEventListener("click",Rn)));let i=!0;const s=u=>o.some(f=>{if(typeof f=="string")return Array.from(r.document.querySelectorAll(f)).some(v=>v===u.target||u.composedPath().includes(v));{const v=bn(f);return v&&(u.target===v||u.composedPath().includes(v))}}),c=[k2(r,"click",u=>{const f=bn(e);if(!(!f||f===u.target||u.composedPath().includes(f))){if(u.detail===0&&(i=!s(u)),!i){i=!0;return}t(u)}},{passive:!0,capture:a}),k2(r,"pointerdown",u=>{const f=bn(e);f&&(i=!u.composedPath().includes(f)&&!s(u))},{passive:!0}),l&&k2(r,"blur",u=>{var f;const v=bn(e);((f=r.document.activeElement)==null?void 0:f.tagName)==="IFRAME"&&!(v!=null&&v.contains(r.document.activeElement))&&t(u)})].filter(Boolean);return()=>c.forEach(u=>u())};function _h(e,t=!1){const n=de(),r=()=>n.value=!!e();return r(),wh(r,t),n}function yh(e){return JSON.parse(JSON.stringify(e))}const W6=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},q6="__vueuse_ssr_handlers__";W6[q6]=W6[q6]||{};var G6=Object.getOwnPropertySymbols,bh=Object.prototype.hasOwnProperty,zh=Object.prototype.propertyIsEnumerable,xh=(e,t)=>{var n={};for(var r in e)bh.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&G6)for(var r of G6(e))t.indexOf(r)<0&&zh.call(e,r)&&(n[r]=e[r]);return n};i1=function(e,t,n={}){const r=n,{window:o=La}=r,a=xh(r,["window"]);let l;const i=_h(()=>o&&"ResizeObserver"in o),s=()=>{l&&(l.disconnect(),l=void 0)},c=Ae(()=>bn(e),f=>{s(),i.value&&o&&f&&(l=new ResizeObserver(t),l.observe(f,a))},{immediate:!0,flush:"post"}),u=()=>{s(),c()};return E0(u),{isSupported:i,stop:u}};var K6;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(K6||(K6={}));var Ch=Object.defineProperty,Y6=Object.getOwnPropertySymbols,Mh=Object.prototype.hasOwnProperty,Lh=Object.prototype.propertyIsEnumerable,J6=(e,t,n)=>t in e?Ch(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Hh=(e,t)=>{for(var n in t||(t={}))Mh.call(t,n)&&J6(e,n,t[n]);if(Y6)for(var n of Y6(t))Lh.call(t,n)&&J6(e,n,t[n]);return e};Hh({linear:mh},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]}),Mu=function(e,t,n,r={}){var o,a,l;const{clone:i=!1,passive:s=!1,eventName:c,deep:u=!1,defaultValue:f}=r,v=Te(),b=n||(v==null?void 0:v.emit)||((o=v==null?void 0:v.$emit)==null?void 0:o.bind(v))||((l=(a=v==null?void 0:v.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(v==null?void 0:v.proxy));let C=c;t||(t="modelValue"),C=c||C||`update:${t.toString()}`;const k=w=>i?D6(i)?i(w):yh(w):w,A=()=>R6(e[t])?k(e[t]):f;if(s){const w=A(),m=de(w);return Ae(()=>e[t],M=>m.value=k(M)),Ae(m,M=>{(M!==e[t]||u)&&b(C,M)},{deep:u}),m}else return Z({get(){return A()},set(w){b(C,w)}})};var kh=typeof global=="object"&&global&&global.Object===Object&&global;el=kh;var Eh=typeof self=="object"&&self&&self.Object===Object&&self,Ah=el||Eh||Function("return this")();H0=Ah;var Sh=H0.Symbol;_n=Sh;var X6=Object.prototype,Vh=X6.hasOwnProperty,Th=X6.toString,o0=_n?_n.toStringTag:void 0;function Oh(e){var t=Vh.call(e,o0),n=e[o0];try{e[o0]=void 0;var r=!0}catch{}var o=Th.call(e);return r&&(t?e[o0]=n:delete e[o0]),o}var Bh=Object.prototype,Ph=Bh.toString;function Ih(e){return Ph.call(e)}var Fh="[object Null]",Nh="[object Undefined]",Z6=_n?_n.toStringTag:void 0;Ir=function(e){return e==null?e===void 0?Nh:Fh:Z6&&Z6 in Object(e)?Oh(e):Ih(e)},A1=function(e){return e!=null&&typeof e=="object"};var Rh="[object Symbol]";L0=function(e){return typeof e=="symbol"||A1(e)&&Ir(e)==Rh},F1=function(e,t){for(var n=-1,r=e==null?0:e.length,o=Array(r);++n-1&&e%1==0&&e-1}function Sv(e,t){var n=this.__data__,r=yr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}yn=function(e){var t=-1,n=e==null?0:e.length;for(this.clear();++te===void 0,v1=e=>typeof Element>"u"?!1:e instanceof Element,ri=e=>ye(e)?!Number.isNaN(Number(e)):!1,Pr=e=>Object.keys(e),Cu=e=>Object.entries(e),qu=(e,t,n)=>({get value(){return Rr(e,t,n)},set value(r){Kv(e,t,r)}}),Ea=(e="")=>e.split(" ").filter(t=>!!t.trim()),Ru=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},$u=(e,t)=>{!e||!t.trim()||e.classList.add(...Ea(t))},ju=(e,t)=>{!e||!t.trim()||e.classList.remove(...Ea(t))},Du=(e,t)=>{var n;if(!gn||!e||!t)return"";let r=dt(t);r==="float"&&(r="cssFloat");try{const o=e.style[r];if(o)return o;const a=(n=document.defaultView)==null?void 0:n.getComputedStyle(e,"");return a?a[r]:""}catch{return e.style[r]}},T1=function(e,t="px"){if(!e)return"";if(jn(e)||ri(e))return`${e}${t}`;if(ye(e))return e};var Yv={name:"AddLocation"},y=(e,t)=>{let n=e.__vccOpts||e;for(let[r,o]of t)n[r]=o;return n},Jv={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Xv=p("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),Zv=p("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),Qv=p("path",{fill:"currentColor",d:"M544 384h96a32 32 0 1 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96v-96a32 32 0 0 1 64 0v96z"},null,-1),em=[Xv,Zv,Qv];function tm(e,t,n,r,o,a){return g(),_("svg",Jv,em)}var nm=y(Yv,[["render",tm],["__file","add-location.vue"]]),rm={name:"Aim"},om={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},am=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),lm=p("path",{fill:"currentColor",d:"M512 96a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V128a32 32 0 0 1 32-32zm0 576a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V704a32 32 0 0 1 32-32zM96 512a32 32 0 0 1 32-32h192a32 32 0 0 1 0 64H128a32 32 0 0 1-32-32zm576 0a32 32 0 0 1 32-32h192a32 32 0 1 1 0 64H704a32 32 0 0 1-32-32z"},null,-1),sm=[am,lm];function im(e,t,n,r,o,a){return g(),_("svg",om,sm)}var cm=y(rm,[["render",im],["__file","aim.vue"]]),um={name:"AlarmClock"},fm={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},pm=p("path",{fill:"currentColor",d:"M512 832a320 320 0 1 0 0-640 320 320 0 0 0 0 640zm0 64a384 384 0 1 1 0-768 384 384 0 0 1 0 768z"},null,-1),dm=p("path",{fill:"currentColor",d:"m292.288 824.576 55.424 32-48 83.136a32 32 0 1 1-55.424-32l48-83.136zm439.424 0-55.424 32 48 83.136a32 32 0 1 0 55.424-32l-48-83.136zM512 512h160a32 32 0 1 1 0 64H480a32 32 0 0 1-32-32V320a32 32 0 0 1 64 0v192zM90.496 312.256A160 160 0 0 1 312.32 90.496l-46.848 46.848a96 96 0 0 0-128 128L90.56 312.256zm835.264 0A160 160 0 0 0 704 90.496l46.848 46.848a96 96 0 0 1 128 128l46.912 46.912z"},null,-1),hm=[pm,dm];function vm(e,t,n,r,o,a){return g(),_("svg",fm,hm)}var mm=y(um,[["render",vm],["__file","alarm-clock.vue"]]),gm={name:"Apple"},wm={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_m=p("path",{fill:"currentColor",d:"M599.872 203.776a189.44 189.44 0 0 1 64.384-4.672l2.624.128c31.168 1.024 51.2 4.096 79.488 16.32 37.632 16.128 74.496 45.056 111.488 89.344 96.384 115.264 82.752 372.8-34.752 521.728-7.68 9.728-32 41.6-30.72 39.936a426.624 426.624 0 0 1-30.08 35.776c-31.232 32.576-65.28 49.216-110.08 50.048-31.36.64-53.568-5.312-84.288-18.752l-6.528-2.88c-20.992-9.216-30.592-11.904-47.296-11.904-18.112 0-28.608 2.88-51.136 12.672l-6.464 2.816c-28.416 12.224-48.32 18.048-76.16 19.2-74.112 2.752-116.928-38.08-180.672-132.16-96.64-142.08-132.608-349.312-55.04-486.4 46.272-81.92 129.92-133.632 220.672-135.04 32.832-.576 60.288 6.848 99.648 22.72 27.136 10.88 34.752 13.76 37.376 14.272 16.256-20.16 27.776-36.992 34.56-50.24 13.568-26.304 27.2-59.968 40.704-100.8a32 32 0 1 1 60.8 20.224c-12.608 37.888-25.408 70.4-38.528 97.664zm-51.52 78.08c-14.528 17.792-31.808 37.376-51.904 58.816a32 32 0 1 1-46.72-43.776l12.288-13.248c-28.032-11.2-61.248-26.688-95.68-26.112-70.4 1.088-135.296 41.6-171.648 105.792C121.6 492.608 176 684.16 247.296 788.992c34.816 51.328 76.352 108.992 130.944 106.944 52.48-2.112 72.32-34.688 135.872-34.688 63.552 0 81.28 34.688 136.96 33.536 56.448-1.088 75.776-39.04 126.848-103.872 107.904-136.768 107.904-362.752 35.776-449.088-72.192-86.272-124.672-84.096-151.68-85.12-41.472-4.288-81.6 12.544-113.664 25.152z"},null,-1),ym=[_m];function bm(e,t,n,r,o,a){return g(),_("svg",wm,ym)}var zm=y(gm,[["render",bm],["__file","apple.vue"]]),xm={name:"ArrowDownBold"},Cm={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Mm=p("path",{fill:"currentColor",d:"M104.704 338.752a64 64 0 0 1 90.496 0l316.8 316.8 316.8-316.8a64 64 0 0 1 90.496 90.496L557.248 791.296a64 64 0 0 1-90.496 0L104.704 429.248a64 64 0 0 1 0-90.496z"},null,-1),Lm=[Mm];function Hm(e,t,n,r,o,a){return g(),_("svg",Cm,Lm)}var km=y(xm,[["render",Hm],["__file","arrow-down-bold.vue"]]),Em={name:"ArrowDown"},Am={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sm=p("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.592 30.592 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.592 30.592 0 0 0-42.752 0z"},null,-1),Vm=[Sm];function Tm(e,t,n,r,o,a){return g(),_("svg",Am,Vm)}let oi,ai,li,si;D1=y(Em,[["render",Tm],["__file","arrow-down.vue"]]),oi={name:"ArrowLeftBold"},ai={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},li=p("path",{fill:"currentColor",d:"M685.248 104.704a64 64 0 0 1 0 90.496L368.448 512l316.8 316.8a64 64 0 0 1-90.496 90.496L232.704 557.248a64 64 0 0 1 0-90.496l362.048-362.048a64 64 0 0 1 90.496 0z"},null,-1),si=[li];function Om(e,t,n,r,o,a){return g(),_("svg",ai,si)}var Bm=y(oi,[["render",Om],["__file","arrow-left-bold.vue"]]),Pm={name:"ArrowLeft"},Im={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Fm=p("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"},null,-1),Nm=[Fm];function Rm(e,t,n,r,o,a){return g(),_("svg",Im,Nm)}let ii,ci,ui,fi;u1=y(Pm,[["render",Rm],["__file","arrow-left.vue"]]),ii={name:"ArrowRightBold"},ci={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ui=p("path",{fill:"currentColor",d:"M338.752 104.704a64 64 0 0 0 0 90.496l316.8 316.8-316.8 316.8a64 64 0 0 0 90.496 90.496l362.048-362.048a64 64 0 0 0 0-90.496L429.248 104.704a64 64 0 0 0-90.496 0z"},null,-1),fi=[ui];function Dm(e,t,n,r,o,a){return g(),_("svg",ci,fi)}var $m=y(ii,[["render",Dm],["__file","arrow-right-bold.vue"]]),jm={name:"ArrowRight"},Um={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Wm=p("path",{fill:"currentColor",d:"M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"},null,-1),qm=[Wm];function Gm(e,t,n,r,o,a){return g(),_("svg",Um,qm)}let pi,di,hi,vi;f1=y(jm,[["render",Gm],["__file","arrow-right.vue"]]),pi={name:"ArrowUpBold"},di={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},hi=p("path",{fill:"currentColor",d:"M104.704 685.248a64 64 0 0 0 90.496 0l316.8-316.8 316.8 316.8a64 64 0 0 0 90.496-90.496L557.248 232.704a64 64 0 0 0-90.496 0L104.704 594.752a64 64 0 0 0 0 90.496z"},null,-1),vi=[hi];function Km(e,t,n,r,o,a){return g(),_("svg",di,vi)}var Ym=y(pi,[["render",Km],["__file","arrow-up-bold.vue"]]),Jm={name:"ArrowUp"},Xm={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Zm=p("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0z"},null,-1),Qm=[Zm];function e7(e,t,n,r,o,a){return g(),_("svg",Xm,Qm)}let mi,gi,wi,_i;q1=y(Jm,[["render",e7],["__file","arrow-up.vue"]]),mi={name:"Avatar"},gi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wi=p("path",{fill:"currentColor",d:"M628.736 528.896A416 416 0 0 1 928 928H96a415.872 415.872 0 0 1 299.264-399.104L512 704l116.736-175.104zM720 304a208 208 0 1 1-416 0 208 208 0 0 1 416 0z"},null,-1),_i=[wi];function t7(e,t,n,r,o,a){return g(),_("svg",gi,_i)}var n7=y(mi,[["render",t7],["__file","avatar.vue"]]),r7={name:"Back"},o7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},a7=p("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64z"},null,-1),l7=p("path",{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312L237.248 512z"},null,-1),s7=[a7,l7];function i7(e,t,n,r,o,a){return g(),_("svg",o7,s7)}var c7=y(r7,[["render",i7],["__file","back.vue"]]),u7={name:"Baseball"},f7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},p7=p("path",{fill:"currentColor",d:"M195.2 828.8a448 448 0 1 1 633.6-633.6 448 448 0 0 1-633.6 633.6zm45.248-45.248a384 384 0 1 0 543.104-543.104 384 384 0 0 0-543.104 543.104z"},null,-1),d7=p("path",{fill:"currentColor",d:"M497.472 96.896c22.784 4.672 44.416 9.472 64.896 14.528a256.128 256.128 0 0 0 350.208 350.208c5.056 20.48 9.856 42.112 14.528 64.896A320.128 320.128 0 0 1 497.472 96.896zM108.48 491.904a320.128 320.128 0 0 1 423.616 423.68c-23.04-3.648-44.992-7.424-65.728-11.52a256.128 256.128 0 0 0-346.496-346.432 1736.64 1736.64 0 0 1-11.392-65.728z"},null,-1),h7=[p7,d7];function v7(e,t,n,r,o,a){return g(),_("svg",f7,h7)}var m7=y(u7,[["render",v7],["__file","baseball.vue"]]),g7={name:"Basketball"},w7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_7=p("path",{fill:"currentColor",d:"M778.752 788.224a382.464 382.464 0 0 0 116.032-245.632 256.512 256.512 0 0 0-241.728-13.952 762.88 762.88 0 0 1 125.696 259.584zm-55.04 44.224a699.648 699.648 0 0 0-125.056-269.632 256.128 256.128 0 0 0-56.064 331.968 382.72 382.72 0 0 0 181.12-62.336zm-254.08 61.248A320.128 320.128 0 0 1 557.76 513.6a715.84 715.84 0 0 0-48.192-48.128 320.128 320.128 0 0 1-379.264 88.384 382.4 382.4 0 0 0 110.144 229.696 382.4 382.4 0 0 0 229.184 110.08zM129.28 481.088a256.128 256.128 0 0 0 331.072-56.448 699.648 699.648 0 0 0-268.8-124.352 382.656 382.656 0 0 0-62.272 180.8zm106.56-235.84a762.88 762.88 0 0 1 258.688 125.056 256.512 256.512 0 0 0-13.44-241.088A382.464 382.464 0 0 0 235.84 245.248zm318.08-114.944c40.576 89.536 37.76 193.92-8.448 281.344a779.84 779.84 0 0 1 66.176 66.112 320.832 320.832 0 0 1 282.112-8.128 382.4 382.4 0 0 0-110.144-229.12 382.4 382.4 0 0 0-229.632-110.208zM828.8 828.8a448 448 0 1 1-633.6-633.6 448 448 0 0 1 633.6 633.6z"},null,-1),y7=[_7];function b7(e,t,n,r,o,a){return g(),_("svg",w7,y7)}var z7=y(g7,[["render",b7],["__file","basketball.vue"]]),x7={name:"BellFilled"},C7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},M7=p("path",{fill:"currentColor",d:"M640 832a128 128 0 0 1-256 0h256zm192-64H134.4a38.4 38.4 0 0 1 0-76.8H192V448c0-154.88 110.08-284.16 256.32-313.6a64 64 0 1 1 127.36 0A320.128 320.128 0 0 1 832 448v243.2h57.6a38.4 38.4 0 0 1 0 76.8H832z"},null,-1),L7=[M7];function H7(e,t,n,r,o,a){return g(),_("svg",C7,L7)}var k7=y(x7,[["render",H7],["__file","bell-filled.vue"]]),E7={name:"Bell"},A7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},S7=p("path",{fill:"currentColor",d:"M512 64a64 64 0 0 1 64 64v64H448v-64a64 64 0 0 1 64-64z"},null,-1),V7=p("path",{fill:"currentColor",d:"M256 768h512V448a256 256 0 1 0-512 0v320zm256-640a320 320 0 0 1 320 320v384H192V448a320 320 0 0 1 320-320z"},null,-1),T7=p("path",{fill:"currentColor",d:"M96 768h832q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm352 128h128a64 64 0 0 1-128 0z"},null,-1),O7=[S7,V7,T7];function B7(e,t,n,r,o,a){return g(),_("svg",A7,O7)}var P7=y(E7,[["render",B7],["__file","bell.vue"]]),I7={name:"Bicycle"},F7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},N7=d1('',5),R7=[N7];function D7(e,t,n,r,o,a){return g(),_("svg",F7,R7)}var $7=y(I7,[["render",D7],["__file","bicycle.vue"]]),j7={name:"BottomLeft"},U7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},W7=p("path",{fill:"currentColor",d:"M256 768h416a32 32 0 1 1 0 64H224a32 32 0 0 1-32-32V352a32 32 0 0 1 64 0v416z"},null,-1),q7=p("path",{fill:"currentColor",d:"M246.656 822.656a32 32 0 0 1-45.312-45.312l544-544a32 32 0 0 1 45.312 45.312l-544 544z"},null,-1),G7=[W7,q7];function K7(e,t,n,r,o,a){return g(),_("svg",U7,G7)}var Y7=y(j7,[["render",K7],["__file","bottom-left.vue"]]),J7={name:"BottomRight"},X7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Z7=p("path",{fill:"currentColor",d:"M352 768a32 32 0 1 0 0 64h448a32 32 0 0 0 32-32V352a32 32 0 0 0-64 0v416H352z"},null,-1),Q7=p("path",{fill:"currentColor",d:"M777.344 822.656a32 32 0 0 0 45.312-45.312l-544-544a32 32 0 0 0-45.312 45.312l544 544z"},null,-1),eg=[Z7,Q7];function tg(e,t,n,r,o,a){return g(),_("svg",X7,eg)}var ng=y(J7,[["render",tg],["__file","bottom-right.vue"]]),rg={name:"Bottom"},og={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ag=p("path",{fill:"currentColor",d:"M544 805.888V168a32 32 0 1 0-64 0v637.888L246.656 557.952a30.72 30.72 0 0 0-45.312 0 35.52 35.52 0 0 0 0 48.064l288 306.048a30.72 30.72 0 0 0 45.312 0l288-306.048a35.52 35.52 0 0 0 0-48 30.72 30.72 0 0 0-45.312 0L544 805.824z"},null,-1),lg=[ag];function sg(e,t,n,r,o,a){return g(),_("svg",og,lg)}var ig=y(rg,[["render",sg],["__file","bottom.vue"]]),cg={name:"Bowl"},ug={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},fg=p("path",{fill:"currentColor",d:"M714.432 704a351.744 351.744 0 0 0 148.16-256H161.408a351.744 351.744 0 0 0 148.16 256h404.864zM288 766.592A415.68 415.68 0 0 1 96 416a32 32 0 0 1 32-32h768a32 32 0 0 1 32 32 415.68 415.68 0 0 1-192 350.592V832a64 64 0 0 1-64 64H352a64 64 0 0 1-64-64v-65.408zM493.248 320h-90.496l254.4-254.4a32 32 0 1 1 45.248 45.248L493.248 320zm187.328 0h-128l269.696-155.712a32 32 0 0 1 32 55.424L680.576 320zM352 768v64h320v-64H352z"},null,-1),pg=[fg];function dg(e,t,n,r,o,a){return g(),_("svg",ug,pg)}var hg=y(cg,[["render",dg],["__file","bowl.vue"]]),vg={name:"Box"},mg={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},gg=p("path",{fill:"currentColor",d:"M317.056 128 128 344.064V896h768V344.064L706.944 128H317.056zm-14.528-64h418.944a32 32 0 0 1 24.064 10.88l206.528 236.096A32 32 0 0 1 960 332.032V928a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V332.032a32 32 0 0 1 7.936-21.12L278.4 75.008A32 32 0 0 1 302.528 64z"},null,-1),wg=p("path",{fill:"currentColor",d:"M64 320h896v64H64z"},null,-1),_g=p("path",{fill:"currentColor",d:"M448 327.872V640h128V327.872L526.08 128h-28.16L448 327.872zM448 64h128l64 256v352a32 32 0 0 1-32 32H416a32 32 0 0 1-32-32V320l64-256z"},null,-1),yg=[gg,wg,_g];function bg(e,t,n,r,o,a){return g(),_("svg",mg,yg)}var zg=y(vg,[["render",bg],["__file","box.vue"]]),xg={name:"Briefcase"},Cg={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Mg=p("path",{fill:"currentColor",d:"M320 320V128h384v192h192v192H128V320h192zM128 576h768v320H128V576zm256-256h256.064V192H384v128z"},null,-1),Lg=[Mg];function Hg(e,t,n,r,o,a){return g(),_("svg",Cg,Lg)}var kg=y(xg,[["render",Hg],["__file","briefcase.vue"]]),Eg={name:"BrushFilled"},Ag={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sg=p("path",{fill:"currentColor",d:"M608 704v160a96 96 0 0 1-192 0V704h-96a128 128 0 0 1-128-128h640a128 128 0 0 1-128 128h-96zM192 512V128.064h640V512H192z"},null,-1),Vg=[Sg];function Tg(e,t,n,r,o,a){return g(),_("svg",Ag,Vg)}var Og=y(Eg,[["render",Tg],["__file","brush-filled.vue"]]),Bg={name:"Brush"},Pg={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ig=p("path",{fill:"currentColor",d:"M896 448H128v192a64 64 0 0 0 64 64h192v192h256V704h192a64 64 0 0 0 64-64V448zm-770.752-64c0-47.552 5.248-90.24 15.552-128 14.72-54.016 42.496-107.392 83.2-160h417.28l-15.36 70.336L736 96h211.2c-24.832 42.88-41.92 96.256-51.2 160a663.872 663.872 0 0 0-6.144 128H960v256a128 128 0 0 1-128 128H704v160a32 32 0 0 1-32 32H352a32 32 0 0 1-32-32V768H192A128 128 0 0 1 64 640V384h61.248zm64 0h636.544c-2.048-45.824.256-91.584 6.848-137.216 4.48-30.848 10.688-59.776 18.688-86.784h-96.64l-221.12 141.248L561.92 160H256.512c-25.856 37.888-43.776 75.456-53.952 112.832-8.768 32.064-13.248 69.12-13.312 111.168z"},null,-1),Fg=[Ig];function Ng(e,t,n,r,o,a){return g(),_("svg",Pg,Fg)}var Rg=y(Bg,[["render",Ng],["__file","brush.vue"]]),Dg={name:"Burger"},$g={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jg=p("path",{fill:"currentColor",d:"M160 512a32 32 0 0 0-32 32v64a32 32 0 0 0 30.08 32H864a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32H160zm736-58.56A96 96 0 0 1 960 544v64a96 96 0 0 1-51.968 85.312L855.36 833.6a96 96 0 0 1-89.856 62.272H258.496A96 96 0 0 1 168.64 833.6l-52.608-140.224A96 96 0 0 1 64 608v-64a96 96 0 0 1 64-90.56V448a384 384 0 1 1 768 5.44zM832 448a320 320 0 0 0-640 0h640zM512 704H188.352l40.192 107.136a32 32 0 0 0 29.952 20.736h507.008a32 32 0 0 0 29.952-20.736L835.648 704H512z"},null,-1),Ug=[jg];function Wg(e,t,n,r,o,a){return g(),_("svg",$g,Ug)}var qg=y(Dg,[["render",Wg],["__file","burger.vue"]]),Gg={name:"Calendar"},Kg={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Yg=p("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64H128zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0v32zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64zm0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64z"},null,-1),Jg=[Yg];function Xg(e,t,n,r,o,a){return g(),_("svg",Kg,Jg)}var Zg=y(Gg,[["render",Xg],["__file","calendar.vue"]]),Qg={name:"CameraFilled"},ew={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},tw=p("path",{fill:"currentColor",d:"M160 224a64 64 0 0 0-64 64v512a64 64 0 0 0 64 64h704a64 64 0 0 0 64-64V288a64 64 0 0 0-64-64H748.416l-46.464-92.672A64 64 0 0 0 644.736 96H379.328a64 64 0 0 0-57.216 35.392L275.776 224H160zm352 435.2a115.2 115.2 0 1 0 0-230.4 115.2 115.2 0 0 0 0 230.4zm0 140.8a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),nw=[tw];function rw(e,t,n,r,o,a){return g(),_("svg",ew,nw)}var ow=y(Qg,[["render",rw],["__file","camera-filled.vue"]]),aw={name:"Camera"},lw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},sw=p("path",{fill:"currentColor",d:"M896 256H128v576h768V256zm-199.424-64-32.064-64h-304.96l-32 64h369.024zM96 192h160l46.336-92.608A64 64 0 0 1 359.552 64h304.96a64 64 0 0 1 57.216 35.328L768.192 192H928a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32zm416 512a160 160 0 1 0 0-320 160 160 0 0 0 0 320zm0 64a224 224 0 1 1 0-448 224 224 0 0 1 0 448z"},null,-1),iw=[sw];function cw(e,t,n,r,o,a){return g(),_("svg",lw,iw)}var uw=y(aw,[["render",cw],["__file","camera.vue"]]),fw={name:"CaretBottom"},pw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},dw=p("path",{fill:"currentColor",d:"m192 384 320 384 320-384z"},null,-1),hw=[dw];function vw(e,t,n,r,o,a){return g(),_("svg",pw,hw)}var mw=y(fw,[["render",vw],["__file","caret-bottom.vue"]]),gw={name:"CaretLeft"},ww={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_w=p("path",{fill:"currentColor",d:"M672 192 288 511.936 672 832z"},null,-1),yw=[_w];function bw(e,t,n,r,o,a){return g(),_("svg",ww,yw)}var zw=y(gw,[["render",bw],["__file","caret-left.vue"]]),xw={name:"CaretRight"},Cw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Mw=p("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"},null,-1),Lw=[Mw];function Hw(e,t,n,r,o,a){return g(),_("svg",Cw,Lw)}var kw=y(xw,[["render",Hw],["__file","caret-right.vue"]]),Ew={name:"CaretTop"},Aw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sw=p("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"},null,-1),Vw=[Sw];function Tw(e,t,n,r,o,a){return g(),_("svg",Aw,Vw)}var Ow=y(Ew,[["render",Tw],["__file","caret-top.vue"]]),Bw={name:"Cellphone"},Pw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Iw=p("path",{fill:"currentColor",d:"M256 128a64 64 0 0 0-64 64v640a64 64 0 0 0 64 64h512a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64H256zm0-64h512a128 128 0 0 1 128 128v640a128 128 0 0 1-128 128H256a128 128 0 0 1-128-128V192A128 128 0 0 1 256 64zm128 128h256a32 32 0 1 1 0 64H384a32 32 0 0 1 0-64zm128 640a64 64 0 1 1 0-128 64 64 0 0 1 0 128z"},null,-1),Fw=[Iw];function Nw(e,t,n,r,o,a){return g(),_("svg",Pw,Fw)}var Rw=y(Bw,[["render",Nw],["__file","cellphone.vue"]]),Dw={name:"ChatDotRound"},$w={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jw=p("path",{fill:"currentColor",d:"m174.72 855.68 135.296-45.12 23.68 11.84C388.096 849.536 448.576 864 512 864c211.84 0 384-166.784 384-352S723.84 160 512 160 128 326.784 128 512c0 69.12 24.96 139.264 70.848 199.232l22.08 28.8-46.272 115.584zm-45.248 82.56A32 32 0 0 1 89.6 896l58.368-145.92C94.72 680.32 64 596.864 64 512 64 299.904 256 96 512 96s448 203.904 448 416-192 416-448 416a461.056 461.056 0 0 1-206.912-48.384l-175.616 58.56z"},null,-1),Uw=p("path",{fill:"currentColor",d:"M512 563.2a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm192 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm-384 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4z"},null,-1),Ww=[jw,Uw];function qw(e,t,n,r,o,a){return g(),_("svg",$w,Ww)}var Gw=y(Dw,[["render",qw],["__file","chat-dot-round.vue"]]),Kw={name:"ChatDotSquare"},Yw={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Jw=p("path",{fill:"currentColor",d:"M273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88L273.536 736zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),Xw=p("path",{fill:"currentColor",d:"M512 499.2a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm192 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4zm-384 0a51.2 51.2 0 1 1 0-102.4 51.2 51.2 0 0 1 0 102.4z"},null,-1),Zw=[Jw,Xw];function Qw(e,t,n,r,o,a){return g(),_("svg",Yw,Zw)}var e_=y(Kw,[["render",Qw],["__file","chat-dot-square.vue"]]),t_={name:"ChatLineRound"},n_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},r_=p("path",{fill:"currentColor",d:"m174.72 855.68 135.296-45.12 23.68 11.84C388.096 849.536 448.576 864 512 864c211.84 0 384-166.784 384-352S723.84 160 512 160 128 326.784 128 512c0 69.12 24.96 139.264 70.848 199.232l22.08 28.8-46.272 115.584zm-45.248 82.56A32 32 0 0 1 89.6 896l58.368-145.92C94.72 680.32 64 596.864 64 512 64 299.904 256 96 512 96s448 203.904 448 416-192 416-448 416a461.056 461.056 0 0 1-206.912-48.384l-175.616 58.56z"},null,-1),o_=p("path",{fill:"currentColor",d:"M352 576h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm32-192h256q32 0 32 32t-32 32H384q-32 0-32-32t32-32z"},null,-1),a_=[r_,o_];function l_(e,t,n,r,o,a){return g(),_("svg",n_,a_)}var s_=y(t_,[["render",l_],["__file","chat-line-round.vue"]]),i_={name:"ChatLineSquare"},c_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},u_=p("path",{fill:"currentColor",d:"M160 826.88 273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),f_=p("path",{fill:"currentColor",d:"M352 512h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm0-192h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32z"},null,-1),p_=[u_,f_];function d_(e,t,n,r,o,a){return g(),_("svg",c_,p_)}var h_=y(i_,[["render",d_],["__file","chat-line-square.vue"]]),v_={name:"ChatRound"},m_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},g_=p("path",{fill:"currentColor",d:"m174.72 855.68 130.048-43.392 23.424 11.392C382.4 849.984 444.352 864 512 864c223.744 0 384-159.872 384-352 0-192.832-159.104-352-384-352S128 319.168 128 512a341.12 341.12 0 0 0 69.248 204.288l21.632 28.8-44.16 110.528zm-45.248 82.56A32 32 0 0 1 89.6 896l56.512-141.248A405.12 405.12 0 0 1 64 512C64 299.904 235.648 96 512 96s448 203.904 448 416-173.44 416-448 416c-79.68 0-150.848-17.152-211.712-46.72l-170.88 56.96z"},null,-1),w_=[g_];function __(e,t,n,r,o,a){return g(),_("svg",m_,w_)}var y_=y(v_,[["render",__],["__file","chat-round.vue"]]),b_={name:"ChatSquare"},z_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},x_=p("path",{fill:"currentColor",d:"M273.536 736H800a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64v570.88L273.536 736zM296 800 147.968 918.4A32 32 0 0 1 96 893.44V256a128 128 0 0 1 128-128h576a128 128 0 0 1 128 128v416a128 128 0 0 1-128 128H296z"},null,-1),C_=[x_];function M_(e,t,n,r,o,a){return g(),_("svg",z_,C_)}var L_=y(b_,[["render",M_],["__file","chat-square.vue"]]),H_={name:"Check"},k_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},E_=p("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"},null,-1),A_=[E_];function S_(e,t,n,r,o,a){return g(),_("svg",k_,A_)}let yi,bi,zi,xi;g1=y(H_,[["render",S_],["__file","check.vue"]]),yi={name:"Checked"},bi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},zi=p("path",{fill:"currentColor",d:"M704 192h160v736H160V192h160.064v64H704v-64zM311.616 537.28l-45.312 45.248L447.36 763.52l316.8-316.8-45.312-45.184L447.36 673.024 311.616 537.28zM384 192V96h256v96H384z"},null,-1),xi=[zi];function V_(e,t,n,r,o,a){return g(),_("svg",bi,xi)}var T_=y(yi,[["render",V_],["__file","checked.vue"]]),O_={name:"Cherry"},B_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},P_=p("path",{fill:"currentColor",d:"M261.056 449.6c13.824-69.696 34.88-128.96 63.36-177.728 23.744-40.832 61.12-88.64 112.256-143.872H320a32 32 0 0 1 0-64h384a32 32 0 1 1 0 64H554.752c14.912 39.168 41.344 86.592 79.552 141.76 47.36 68.48 84.8 106.752 106.304 114.304a224 224 0 1 1-84.992 14.784c-22.656-22.912-47.04-53.76-73.92-92.608-38.848-56.128-67.008-105.792-84.352-149.312-55.296 58.24-94.528 107.52-117.76 147.2-23.168 39.744-41.088 88.768-53.568 147.072a224.064 224.064 0 1 1-64.96-1.6zM288 832a160 160 0 1 0 0-320 160 160 0 0 0 0 320zm448-64a160 160 0 1 0 0-320 160 160 0 0 0 0 320z"},null,-1),I_=[P_];function F_(e,t,n,r,o,a){return g(),_("svg",B_,I_)}var N_=y(O_,[["render",F_],["__file","cherry.vue"]]),R_={name:"Chicken"},D_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},$_=p("path",{fill:"currentColor",d:"M349.952 716.992 478.72 588.16a106.688 106.688 0 0 1-26.176-19.072 106.688 106.688 0 0 1-19.072-26.176L304.704 671.744c.768 3.072 1.472 6.144 2.048 9.216l2.048 31.936 31.872 1.984c3.136.64 6.208 1.28 9.28 2.112zm57.344 33.152a128 128 0 1 1-216.32 114.432l-1.92-32-32-1.92a128 128 0 1 1 114.432-216.32L416.64 469.248c-2.432-101.44 58.112-239.104 149.056-330.048 107.328-107.328 231.296-85.504 316.8 0 85.44 85.44 107.328 209.408 0 316.8-91.008 90.88-228.672 151.424-330.112 149.056L407.296 750.08zm90.496-226.304c49.536 49.536 233.344-7.04 339.392-113.088 78.208-78.208 63.232-163.072 0-226.304-63.168-63.232-148.032-78.208-226.24 0C504.896 290.496 448.32 474.368 497.792 523.84zM244.864 708.928a64 64 0 1 0-59.84 59.84l56.32-3.52 3.52-56.32zm8.064 127.68a64 64 0 1 0 59.84-59.84l-56.32 3.52-3.52 56.32z"},null,-1),j_=[$_];function U_(e,t,n,r,o,a){return g(),_("svg",D_,j_)}var W_=y(R_,[["render",U_],["__file","chicken.vue"]]),q_={name:"ChromeFilled"},G_={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},K_=p("path",{fill:"currentColor",d:"M938.67 512.01c0-44.59-6.82-87.6-19.54-128H682.67a212.372 212.372 0 0 1 42.67 128c.06 38.71-10.45 76.7-30.42 109.87l-182.91 316.8c235.65-.01 426.66-191.02 426.66-426.67z"},null,-1),Y_=p("path",{fill:"currentColor",d:"M576.79 401.63a127.92 127.92 0 0 0-63.56-17.6c-22.36-.22-44.39 5.43-63.89 16.38s-35.79 26.82-47.25 46.02a128.005 128.005 0 0 0-2.16 127.44l1.24 2.13a127.906 127.906 0 0 0 46.36 46.61 127.907 127.907 0 0 0 63.38 17.44c22.29.2 44.24-5.43 63.68-16.33a127.94 127.94 0 0 0 47.16-45.79v-.01l1.11-1.92a127.984 127.984 0 0 0 .29-127.46 127.957 127.957 0 0 0-46.36-46.91z"},null,-1),J_=p("path",{fill:"currentColor",d:"M394.45 333.96A213.336 213.336 0 0 1 512 298.67h369.58A426.503 426.503 0 0 0 512 85.34a425.598 425.598 0 0 0-171.74 35.98 425.644 425.644 0 0 0-142.62 102.22l118.14 204.63a213.397 213.397 0 0 1 78.67-94.21zm117.56 604.72H512zm-97.25-236.73a213.284 213.284 0 0 1-89.54-86.81L142.48 298.6c-36.35 62.81-57.13 135.68-57.13 213.42 0 203.81 142.93 374.22 333.95 416.55h.04l118.19-204.71a213.315 213.315 0 0 1-122.77-21.91z"},null,-1),X_=[K_,Y_,J_];function Z_(e,t,n,r,o,a){return g(),_("svg",G_,X_)}var Q_=y(q_,[["render",Z_],["__file","chrome-filled.vue"]]),ey={name:"CircleCheckFilled"},ty={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ny=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null,-1),ry=[ny];function oy(e,t,n,r,o,a){return g(),_("svg",ty,ry)}var ay=y(ey,[["render",oy],["__file","circle-check-filled.vue"]]),ly={name:"CircleCheck"},sy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},iy=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),cy=p("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752l265.344-265.408z"},null,-1),uy=[iy,cy];function fy(e,t,n,r,o,a){return g(),_("svg",sy,uy)}let Ci,Mi,Li,Hi;Tr=y(ly,[["render",fy],["__file","circle-check.vue"]]),Ci={name:"CircleCloseFilled"},Mi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Li=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"},null,-1),Hi=[Li];function py(e,t,n,r,o,a){return g(),_("svg",Mi,Hi)}var Aa=y(Ci,[["render",py],["__file","circle-close-filled.vue"]]),dy={name:"CircleClose"},hy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},vy=p("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"},null,-1),my=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),gy=[vy,my];function wy(e,t,n,r,o,a){return g(),_("svg",hy,gy)}let ki,Ei,Ai,Si;Or=y(dy,[["render",wy],["__file","circle-close.vue"]]),ki={name:"CirclePlusFilled"},Ei={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ai=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"},null,-1),Si=[Ai];function _y(e,t,n,r,o,a){return g(),_("svg",Ei,Si)}var yy=y(ki,[["render",_y],["__file","circle-plus-filled.vue"]]),by={name:"CirclePlus"},zy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},xy=p("path",{fill:"currentColor",d:"M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),Cy=p("path",{fill:"currentColor",d:"M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"},null,-1),My=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),Ly=[xy,Cy,My];function Hy(e,t,n,r,o,a){return g(),_("svg",zy,Ly)}var ky=y(by,[["render",Hy],["__file","circle-plus.vue"]]),Ey={name:"Clock"},Ay={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sy=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),Vy=p("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32z"},null,-1),Ty=p("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32z"},null,-1),Oy=[Sy,Vy,Ty];function By(e,t,n,r,o,a){return g(),_("svg",Ay,Oy)}var Py=y(Ey,[["render",By],["__file","clock.vue"]]),Iy={name:"CloseBold"},Fy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ny=p("path",{fill:"currentColor",d:"M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z"},null,-1),Ry=[Ny];function Dy(e,t,n,r,o,a){return g(),_("svg",Fy,Ry)}var $y=y(Iy,[["render",Dy],["__file","close-bold.vue"]]),jy={name:"Close"},Uy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Wy=p("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"},null,-1),qy=[Wy];function Gy(e,t,n,r,o,a){return g(),_("svg",Uy,qy)}let Vi,Ti,Oi,Bi;y0=y(jy,[["render",Gy],["__file","close.vue"]]),Vi={name:"Cloudy"},Ti={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Oi=p("path",{fill:"currentColor",d:"M598.4 831.872H328.192a256 256 0 0 1-34.496-510.528A352 352 0 1 1 598.4 831.872zm-271.36-64h272.256a288 288 0 1 0-248.512-417.664L335.04 381.44l-34.816 3.584a192 192 0 0 0 26.88 382.848z"},null,-1),Bi=[Oi];function Ky(e,t,n,r,o,a){return g(),_("svg",Ti,Bi)}var Yy=y(Vi,[["render",Ky],["__file","cloudy.vue"]]),Jy={name:"CoffeeCup"},Xy={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Zy=p("path",{fill:"currentColor",d:"M768 192a192 192 0 1 1-8 383.808A256.128 256.128 0 0 1 512 768H320A256 256 0 0 1 64 512V160a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v32zm0 64v256a128 128 0 1 0 0-256zM96 832h640a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64zm32-640v320a192 192 0 0 0 192 192h192a192 192 0 0 0 192-192V192H128z"},null,-1),Qy=[Zy];function eb(e,t,n,r,o,a){return g(),_("svg",Xy,Qy)}var tb=y(Jy,[["render",eb],["__file","coffee-cup.vue"]]),nb={name:"Coffee"},rb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ob=p("path",{fill:"currentColor",d:"M822.592 192h14.272a32 32 0 0 1 31.616 26.752l21.312 128A32 32 0 0 1 858.24 384h-49.344l-39.04 546.304A32 32 0 0 1 737.92 960H285.824a32 32 0 0 1-32-29.696L214.912 384H165.76a32 32 0 0 1-31.552-37.248l21.312-128A32 32 0 0 1 187.136 192h14.016l-6.72-93.696A32 32 0 0 1 226.368 64h571.008a32 32 0 0 1 31.936 34.304L822.592 192zm-64.128 0 4.544-64H260.736l4.544 64h493.184zm-548.16 128H820.48l-10.688-64H214.208l-10.688 64h6.784zm68.736 64 36.544 512H708.16l36.544-512H279.04z"},null,-1),ab=[ob];function lb(e,t,n,r,o,a){return g(),_("svg",rb,ab)}var sb=y(nb,[["render",lb],["__file","coffee.vue"]]),ib={name:"Coin"},cb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ub=p("path",{fill:"currentColor",d:"m161.92 580.736 29.888 58.88C171.328 659.776 160 681.728 160 704c0 82.304 155.328 160 352 160s352-77.696 352-160c0-22.272-11.392-44.16-31.808-64.32l30.464-58.432C903.936 615.808 928 657.664 928 704c0 129.728-188.544 224-416 224S96 833.728 96 704c0-46.592 24.32-88.576 65.92-123.264z"},null,-1),fb=p("path",{fill:"currentColor",d:"m161.92 388.736 29.888 58.88C171.328 467.84 160 489.792 160 512c0 82.304 155.328 160 352 160s352-77.696 352-160c0-22.272-11.392-44.16-31.808-64.32l30.464-58.432C903.936 423.808 928 465.664 928 512c0 129.728-188.544 224-416 224S96 641.728 96 512c0-46.592 24.32-88.576 65.92-123.264z"},null,-1),pb=p("path",{fill:"currentColor",d:"M512 544c-227.456 0-416-94.272-416-224S284.544 96 512 96s416 94.272 416 224-188.544 224-416 224zm0-64c196.672 0 352-77.696 352-160S708.672 160 512 160s-352 77.696-352 160 155.328 160 352 160z"},null,-1),db=[ub,fb,pb];function hb(e,t,n,r,o,a){return g(),_("svg",cb,db)}var vb=y(ib,[["render",hb],["__file","coin.vue"]]),mb={name:"ColdDrink"},gb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wb=p("path",{fill:"currentColor",d:"M768 64a192 192 0 1 1-69.952 370.88L480 725.376V896h96a32 32 0 1 1 0 64H320a32 32 0 1 1 0-64h96V725.376L76.8 273.536a64 64 0 0 1-12.8-38.4v-10.688a32 32 0 0 1 32-32h71.808l-65.536-83.84a32 32 0 0 1 50.432-39.424l96.256 123.264h337.728A192.064 192.064 0 0 1 768 64zM656.896 192.448H800a32 32 0 0 1 32 32v10.624a64 64 0 0 1-12.8 38.4l-80.448 107.2a128 128 0 1 0-81.92-188.16v-.064zm-357.888 64 129.472 165.76a32 32 0 0 1-50.432 39.36l-160.256-205.12H144l304 404.928 304-404.928H299.008z"},null,-1),_b=[wb];function yb(e,t,n,r,o,a){return g(),_("svg",gb,_b)}var bb=y(mb,[["render",yb],["__file","cold-drink.vue"]]),zb={name:"CollectionTag"},xb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Cb=p("path",{fill:"currentColor",d:"M256 128v698.88l196.032-156.864a96 96 0 0 1 119.936 0L768 826.816V128H256zm-32-64h576a32 32 0 0 1 32 32v797.44a32 32 0 0 1-51.968 24.96L531.968 720a32 32 0 0 0-39.936 0L243.968 918.4A32 32 0 0 1 192 893.44V96a32 32 0 0 1 32-32z"},null,-1),Mb=[Cb];function Lb(e,t,n,r,o,a){return g(),_("svg",xb,Mb)}var Hb=y(zb,[["render",Lb],["__file","collection-tag.vue"]]),kb={name:"Collection"},Eb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ab=p("path",{fill:"currentColor",d:"M192 736h640V128H256a64 64 0 0 0-64 64v544zm64-672h608a32 32 0 0 1 32 32v672a32 32 0 0 1-32 32H160l-32 57.536V192A128 128 0 0 1 256 64z"},null,-1),Sb=p("path",{fill:"currentColor",d:"M240 800a48 48 0 1 0 0 96h592v-96H240zm0-64h656v160a64 64 0 0 1-64 64H240a112 112 0 0 1 0-224zm144-608v250.88l96-76.8 96 76.8V128H384zm-64-64h320v381.44a32 32 0 0 1-51.968 24.96L480 384l-108.032 86.4A32 32 0 0 1 320 445.44V64z"},null,-1),Vb=[Ab,Sb];function Tb(e,t,n,r,o,a){return g(),_("svg",Eb,Vb)}var Ob=y(kb,[["render",Tb],["__file","collection.vue"]]),Bb={name:"Comment"},Pb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ib=p("path",{fill:"currentColor",d:"M736 504a56 56 0 1 1 0-112 56 56 0 0 1 0 112zm-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112zm-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112zM128 128v640h192v160l224-160h352V128H128z"},null,-1),Fb=[Ib];function Nb(e,t,n,r,o,a){return g(),_("svg",Pb,Fb)}var Rb=y(Bb,[["render",Nb],["__file","comment.vue"]]),Db={name:"Compass"},$b={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jb=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),Ub=p("path",{fill:"currentColor",d:"M725.888 315.008C676.48 428.672 624 513.28 568.576 568.64c-55.424 55.424-139.968 107.904-253.568 157.312a12.8 12.8 0 0 1-16.896-16.832c49.536-113.728 102.016-198.272 157.312-253.632 55.36-55.296 139.904-107.776 253.632-157.312a12.8 12.8 0 0 1 16.832 16.832z"},null,-1),Wb=[jb,Ub];function qb(e,t,n,r,o,a){return g(),_("svg",$b,Wb)}var Gb=y(Db,[["render",qb],["__file","compass.vue"]]),Kb={name:"Connection"},Yb={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Jb=p("path",{fill:"currentColor",d:"M640 384v64H448a128 128 0 0 0-128 128v128a128 128 0 0 0 128 128h320a128 128 0 0 0 128-128V576a128 128 0 0 0-64-110.848V394.88c74.56 26.368 128 97.472 128 181.056v128a192 192 0 0 1-192 192H448a192 192 0 0 1-192-192V576a192 192 0 0 1 192-192h192z"},null,-1),Xb=p("path",{fill:"currentColor",d:"M384 640v-64h192a128 128 0 0 0 128-128V320a128 128 0 0 0-128-128H256a128 128 0 0 0-128 128v128a128 128 0 0 0 64 110.848v70.272A192.064 192.064 0 0 1 64 448V320a192 192 0 0 1 192-192h320a192 192 0 0 1 192 192v128a192 192 0 0 1-192 192H384z"},null,-1),Zb=[Jb,Xb];function Qb(e,t,n,r,o,a){return g(),_("svg",Yb,Zb)}var ez=y(Kb,[["render",Qb],["__file","connection.vue"]]),tz={name:"Coordinate"},nz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},rz=p("path",{fill:"currentColor",d:"M480 512h64v320h-64z"},null,-1),oz=p("path",{fill:"currentColor",d:"M192 896h640a64 64 0 0 0-64-64H256a64 64 0 0 0-64 64zm64-128h512a128 128 0 0 1 128 128v64H128v-64a128 128 0 0 1 128-128zm256-256a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),az=[rz,oz];function lz(e,t,n,r,o,a){return g(),_("svg",nz,az)}var sz=y(tz,[["render",lz],["__file","coordinate.vue"]]),iz={name:"CopyDocument"},cz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uz=p("path",{fill:"currentColor",d:"M768 832a128 128 0 0 1-128 128H192A128 128 0 0 1 64 832V384a128 128 0 0 1 128-128v64a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64h64z"},null,-1),fz=p("path",{fill:"currentColor",d:"M384 128a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64H384zm0-64h448a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H384a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64z"},null,-1),pz=[uz,fz];function dz(e,t,n,r,o,a){return g(),_("svg",cz,pz)}var hz=y(iz,[["render",dz],["__file","copy-document.vue"]]),vz={name:"Cpu"},mz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},gz=p("path",{fill:"currentColor",d:"M320 256a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H320zm0-64h384a128 128 0 0 1 128 128v384a128 128 0 0 1-128 128H320a128 128 0 0 1-128-128V320a128 128 0 0 1 128-128z"},null,-1),wz=p("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm160 0a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm-320 0a32 32 0 0 1 32 32v128h-64V96a32 32 0 0 1 32-32zm160 896a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zm160 0a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zm-320 0a32 32 0 0 1-32-32V800h64v128a32 32 0 0 1-32 32zM64 512a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm0-160a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm0 320a32 32 0 0 1 32-32h128v64H96a32 32 0 0 1-32-32zm896-160a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32zm0-160a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32zm0 320a32 32 0 0 1-32 32H800v-64h128a32 32 0 0 1 32 32z"},null,-1),_z=[gz,wz];function yz(e,t,n,r,o,a){return g(),_("svg",mz,_z)}var bz=y(vz,[["render",yz],["__file","cpu.vue"]]),zz={name:"CreditCard"},xz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Cz=p("path",{fill:"currentColor",d:"M896 324.096c0-42.368-2.496-55.296-9.536-68.48a52.352 52.352 0 0 0-22.144-22.08c-13.12-7.04-26.048-9.536-68.416-9.536H228.096c-42.368 0-55.296 2.496-68.48 9.536a52.352 52.352 0 0 0-22.08 22.144c-7.04 13.12-9.536 26.048-9.536 68.416v375.808c0 42.368 2.496 55.296 9.536 68.48a52.352 52.352 0 0 0 22.144 22.08c13.12 7.04 26.048 9.536 68.416 9.536h567.808c42.368 0 55.296-2.496 68.48-9.536a52.352 52.352 0 0 0 22.08-22.144c7.04-13.12 9.536-26.048 9.536-68.416V324.096zm64 0v375.808c0 57.088-5.952 77.76-17.088 98.56-11.136 20.928-27.52 37.312-48.384 48.448-20.864 11.136-41.6 17.088-98.56 17.088H228.032c-57.088 0-77.76-5.952-98.56-17.088a116.288 116.288 0 0 1-48.448-48.384c-11.136-20.864-17.088-41.6-17.088-98.56V324.032c0-57.088 5.952-77.76 17.088-98.56 11.136-20.928 27.52-37.312 48.384-48.448 20.864-11.136 41.6-17.088 98.56-17.088H795.84c57.088 0 77.76 5.952 98.56 17.088 20.928 11.136 37.312 27.52 48.448 48.384 11.136 20.864 17.088 41.6 17.088 98.56z"},null,-1),Mz=p("path",{fill:"currentColor",d:"M64 320h896v64H64v-64zm0 128h896v64H64v-64zm128 192h256v64H192z"},null,-1),Lz=[Cz,Mz];function Hz(e,t,n,r,o,a){return g(),_("svg",xz,Lz)}var kz=y(zz,[["render",Hz],["__file","credit-card.vue"]]),Ez={name:"Crop"},Az={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sz=p("path",{fill:"currentColor",d:"M256 768h672a32 32 0 1 1 0 64H224a32 32 0 0 1-32-32V96a32 32 0 0 1 64 0v672z"},null,-1),Vz=p("path",{fill:"currentColor",d:"M832 224v704a32 32 0 1 1-64 0V256H96a32 32 0 0 1 0-64h704a32 32 0 0 1 32 32z"},null,-1),Tz=[Sz,Vz];function Oz(e,t,n,r,o,a){return g(),_("svg",Az,Tz)}var Bz=y(Ez,[["render",Oz],["__file","crop.vue"]]),Pz={name:"DArrowLeft"},Iz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Fz=p("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.592 30.592 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672l331.648-340.224zm256 0a29.12 29.12 0 0 1 41.728 0 30.592 30.592 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.592 30.592 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672l331.648-340.224z"},null,-1),Nz=[Fz];function Rz(e,t,n,r,o,a){return g(),_("svg",Iz,Nz)}let Pi,Ii,Fi,Ni;j1=y(Pz,[["render",Rz],["__file","d-arrow-left.vue"]]),Pi={name:"DArrowRight"},Ii={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Fi=p("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.592 30.592 0 0 1 0-42.752L764.736 512 452.864 192a30.592 30.592 0 0 1 0-42.688zm-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.592 30.592 0 0 1 0-42.752L508.736 512 196.864 192a30.592 30.592 0 0 1 0-42.688z"},null,-1),Ni=[Fi];function Dz(e,t,n,r,o,a){return g(),_("svg",Ii,Ni)}let Ri,Di,$i,ji;W1=y(Pi,[["render",Dz],["__file","d-arrow-right.vue"]]),Ri={name:"DCaret"},Di={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},$i=p("path",{fill:"currentColor",d:"m512 128 288 320H224l288-320zM224 576h576L512 896 224 576z"},null,-1),ji=[$i];function $z(e,t,n,r,o,a){return g(),_("svg",Di,ji)}var jz=y(Ri,[["render",$z],["__file","d-caret.vue"]]),Uz={name:"DataAnalysis"},Wz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qz=p("path",{fill:"currentColor",d:"m665.216 768 110.848 192h-73.856L591.36 768H433.024L322.176 960H248.32l110.848-192H160a32 32 0 0 1-32-32V192H64a32 32 0 0 1 0-64h896a32 32 0 1 1 0 64h-64v544a32 32 0 0 1-32 32H665.216zM832 192H192v512h640V192zM352 448a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0v-64a32 32 0 0 1 32-32zm160-64a32 32 0 0 1 32 32v128a32 32 0 0 1-64 0V416a32 32 0 0 1 32-32zm160-64a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V352a32 32 0 0 1 32-32z"},null,-1),Gz=[qz];function Kz(e,t,n,r,o,a){return g(),_("svg",Wz,Gz)}var Yz=y(Uz,[["render",Kz],["__file","data-analysis.vue"]]),Jz={name:"DataBoard"},Xz={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Zz=p("path",{fill:"currentColor",d:"M32 128h960v64H32z"},null,-1),Qz=p("path",{fill:"currentColor",d:"M192 192v512h640V192H192zm-64-64h768v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V128z"},null,-1),ex=p("path",{fill:"currentColor",d:"M322.176 960H248.32l144.64-250.56 55.424 32L322.176 960zm453.888 0h-73.856L576 741.44l55.424-32L776.064 960z"},null,-1),tx=[Zz,Qz,ex];function nx(e,t,n,r,o,a){return g(),_("svg",Xz,tx)}var rx=y(Jz,[["render",nx],["__file","data-board.vue"]]),ox={name:"DataLine"},ax={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},lx=p("path",{fill:"currentColor",d:"M359.168 768H160a32 32 0 0 1-32-32V192H64a32 32 0 0 1 0-64h896a32 32 0 1 1 0 64h-64v544a32 32 0 0 1-32 32H665.216l110.848 192h-73.856L591.36 768H433.024L322.176 960H248.32l110.848-192zM832 192H192v512h640V192zM342.656 534.656a32 32 0 1 1-45.312-45.312L444.992 341.76l125.44 94.08L679.04 300.032a32 32 0 1 1 49.92 39.936L581.632 524.224 451.008 426.24 342.656 534.592z"},null,-1),sx=[lx];function ix(e,t,n,r,o,a){return g(),_("svg",ax,sx)}var cx=y(ox,[["render",ix],["__file","data-line.vue"]]),ux={name:"DeleteFilled"},fx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},px=p("path",{fill:"currentColor",d:"M352 192V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64H96a32 32 0 0 1 0-64h256zm64 0h192v-64H416v64zM192 960a32 32 0 0 1-32-32V256h704v672a32 32 0 0 1-32 32H192zm224-192a32 32 0 0 0 32-32V416a32 32 0 0 0-64 0v320a32 32 0 0 0 32 32zm192 0a32 32 0 0 0 32-32V416a32 32 0 0 0-64 0v320a32 32 0 0 0 32 32z"},null,-1),dx=[px];function hx(e,t,n,r,o,a){return g(),_("svg",fx,dx)}var vx=y(ux,[["render",hx],["__file","delete-filled.vue"]]),mx={name:"DeleteLocation"},gx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wx=p("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),_x=p("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),yx=p("path",{fill:"currentColor",d:"M384 384h256q32 0 32 32t-32 32H384q-32 0-32-32t32-32z"},null,-1),bx=[wx,_x,yx];function zx(e,t,n,r,o,a){return g(),_("svg",gx,bx)}var xx=y(mx,[["render",zx],["__file","delete-location.vue"]]),Cx={name:"Delete"},Mx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Lx=p("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V256zm448-64v-64H416v64h192zM224 896h576V256H224v640zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32zm192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32z"},null,-1),Hx=[Lx];function kx(e,t,n,r,o,a){return g(),_("svg",Mx,Hx)}let Ui,Wi,qi,Gi;_1=y(Cx,[["render",kx],["__file","delete.vue"]]),Ui={name:"Dessert"},Wi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qi=p("path",{fill:"currentColor",d:"M128 416v-48a144 144 0 0 1 168.64-141.888 224.128 224.128 0 0 1 430.72 0A144 144 0 0 1 896 368v48a384 384 0 0 1-352 382.72V896h-64v-97.28A384 384 0 0 1 128 416zm287.104-32.064h193.792a143.808 143.808 0 0 1 58.88-132.736 160.064 160.064 0 0 0-311.552 0 143.808 143.808 0 0 1 58.88 132.8zm-72.896 0a72 72 0 1 0-140.48 0h140.48zm339.584 0h140.416a72 72 0 1 0-140.48 0zM512 736a320 320 0 0 0 318.4-288.064H193.6A320 320 0 0 0 512 736zM384 896.064h256a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64z"},null,-1),Gi=[qi];function Ex(e,t,n,r,o,a){return g(),_("svg",Wi,Gi)}var Ax=y(Ui,[["render",Ex],["__file","dessert.vue"]]),Sx={name:"Discount"},Vx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Tx=p("path",{fill:"currentColor",d:"M224 704h576V318.336L552.512 115.84a64 64 0 0 0-81.024 0L224 318.336V704zm0 64v128h576V768H224zM593.024 66.304l259.2 212.096A32 32 0 0 1 864 303.168V928a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V303.168a32 32 0 0 1 11.712-24.768l259.2-212.096a128 128 0 0 1 162.112 0z"},null,-1),Ox=p("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),Bx=[Tx,Ox];function Px(e,t,n,r,o,a){return g(),_("svg",Vx,Bx)}var Ix=y(Sx,[["render",Px],["__file","discount.vue"]]),Fx={name:"DishDot"},Nx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Rx=p("path",{fill:"currentColor",d:"m384.064 274.56.064-50.688A128 128 0 0 1 512.128 96c70.528 0 127.68 57.152 127.68 127.68v50.752A448.192 448.192 0 0 1 955.392 768H68.544A448.192 448.192 0 0 1 384 274.56zM96 832h832a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64zm32-128h768a384 384 0 1 0-768 0zm447.808-448v-32.32a63.68 63.68 0 0 0-63.68-63.68 64 64 0 0 0-64 63.936V256h127.68z"},null,-1),Dx=[Rx];function $x(e,t,n,r,o,a){return g(),_("svg",Nx,Dx)}var jx=y(Fx,[["render",$x],["__file","dish-dot.vue"]]),Ux={name:"Dish"},Wx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qx=p("path",{fill:"currentColor",d:"M480 257.152V192h-96a32 32 0 0 1 0-64h256a32 32 0 1 1 0 64h-96v65.152A448 448 0 0 1 955.52 768H68.48A448 448 0 0 1 480 257.152zM128 704h768a384 384 0 1 0-768 0zM96 832h832a32 32 0 1 1 0 64H96a32 32 0 1 1 0-64z"},null,-1),Gx=[qx];function Kx(e,t,n,r,o,a){return g(),_("svg",Wx,Gx)}var Yx=y(Ux,[["render",Kx],["__file","dish.vue"]]),Jx={name:"DocumentAdd"},Xx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Zx=p("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640V384zm-26.496-64L640 154.496V320h165.504zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm320 512V448h64v128h128v64H544v128h-64V640H352v-64h128z"},null,-1),Qx=[Zx];function eC(e,t,n,r,o,a){return g(),_("svg",Xx,Qx)}var tC=y(Jx,[["render",eC],["__file","document-add.vue"]]),nC={name:"DocumentChecked"},rC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oC=p("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm318.4 582.144 180.992-180.992L704.64 510.4 478.4 736.64 320 578.304l45.248-45.312L478.4 646.144z"},null,-1),aC=[oC];function lC(e,t,n,r,o,a){return g(),_("svg",rC,aC)}var sC=y(nC,[["render",lC],["__file","document-checked.vue"]]),iC={name:"DocumentCopy"},cC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uC=p("path",{fill:"currentColor",d:"M128 320v576h576V320H128zm-32-64h640a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32zM960 96v704a32 32 0 0 1-32 32h-96v-64h64V128H384v64h-64V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32zM256 672h320v64H256v-64zm0-192h320v64H256v-64z"},null,-1),fC=[uC];function pC(e,t,n,r,o,a){return g(),_("svg",cC,fC)}var dC=y(iC,[["render",pC],["__file","document-copy.vue"]]),hC={name:"DocumentDelete"},vC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mC=p("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm308.992 546.304-90.496-90.624 45.248-45.248 90.56 90.496 90.496-90.432 45.248 45.248-90.496 90.56 90.496 90.496-45.248 45.248-90.496-90.496-90.56 90.496-45.248-45.248 90.496-90.496z"},null,-1),gC=[mC];function wC(e,t,n,r,o,a){return g(),_("svg",vC,gC)}var _C=y(hC,[["render",wC],["__file","document-delete.vue"]]),yC={name:"DocumentRemove"},bC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},zC=p("path",{fill:"currentColor",d:"M805.504 320 640 154.496V320h165.504zM832 384H576V128H192v768h640V384zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm192 512h320v64H352v-64z"},null,-1),xC=[zC];function CC(e,t,n,r,o,a){return g(),_("svg",bC,xC)}var MC=y(yC,[["render",CC],["__file","document-remove.vue"]]),LC={name:"Document"},HC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},kC=p("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640V384zm-26.496-64L640 154.496V320h165.504zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm160 448h384v64H320v-64zm0-192h160v64H320v-64zm0 384h384v64H320v-64z"},null,-1),EC=[kC];function AC(e,t,n,r,o,a){return g(),_("svg",HC,EC)}let Ki,Yi,Ji,Xi;w1=y(LC,[["render",AC],["__file","document.vue"]]),Ki={name:"Download"},Yi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ji=p("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64v450.304z"},null,-1),Xi=[Ji];function SC(e,t,n,r,o,a){return g(),_("svg",Yi,Xi)}var VC=y(Ki,[["render",SC],["__file","download.vue"]]),TC={name:"Drizzling"},OC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},BC=p("path",{fill:"currentColor",d:"m739.328 291.328-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 97.28 78.72 175.936 175.808 175.936h400a192 192 0 0 0 35.776-380.672zM959.552 480a256 256 0 0 1-256 256h-400A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 959.552 480zM288 800h64v64h-64v-64zm192 0h64v64h-64v-64zm-96 96h64v64h-64v-64zm192 0h64v64h-64v-64zm96-96h64v64h-64v-64z"},null,-1),PC=[BC];function IC(e,t,n,r,o,a){return g(),_("svg",OC,PC)}var FC=y(TC,[["render",IC],["__file","drizzling.vue"]]),NC={name:"EditPen"},RC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},DC=p("path",{fill:"currentColor",d:"m199.04 672.64 193.984 112 224-387.968-193.92-112-224 388.032zm-23.872 60.16 32.896 148.288 144.896-45.696L175.168 732.8zM455.04 229.248l193.92 112 56.704-98.112-193.984-112-56.64 98.112zM104.32 708.8l384-665.024 304.768 175.936L409.152 884.8h.064l-248.448 78.336L104.32 708.8zm384 254.272v-64h448v64h-448z"},null,-1),$C=[DC];function jC(e,t,n,r,o,a){return g(),_("svg",RC,$C)}var UC=y(NC,[["render",jC],["__file","edit-pen.vue"]]),WC={name:"Edit"},qC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},GC=p("path",{fill:"currentColor",d:"M832 512a32 32 0 1 1 64 0v352a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h352a32 32 0 0 1 0 64H192v640h640V512z"},null,-1),KC=p("path",{fill:"currentColor",d:"m469.952 554.24 52.8-7.552L847.104 222.4a32 32 0 1 0-45.248-45.248L477.44 501.44l-7.552 52.8zm422.4-422.4a96 96 0 0 1 0 135.808l-331.84 331.84a32 32 0 0 1-18.112 9.088L436.8 623.68a32 32 0 0 1-36.224-36.224l15.104-105.6a32 32 0 0 1 9.024-18.112l331.904-331.84a96 96 0 0 1 135.744 0z"},null,-1),YC=[GC,KC];function JC(e,t,n,r,o,a){return g(),_("svg",qC,YC)}var XC=y(WC,[["render",JC],["__file","edit.vue"]]),ZC={name:"ElemeFilled"},QC={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},eM=p("path",{fill:"currentColor",d:"M176 64h672c61.824 0 112 50.176 112 112v672a112 112 0 0 1-112 112H176A112 112 0 0 1 64 848V176c0-61.824 50.176-112 112-112zm150.528 173.568c-152.896 99.968-196.544 304.064-97.408 456.96a330.688 330.688 0 0 0 456.96 96.64c9.216-5.888 17.6-11.776 25.152-18.56a18.24 18.24 0 0 0 4.224-24.32L700.352 724.8a47.552 47.552 0 0 0-65.536-14.272A234.56 234.56 0 0 1 310.592 641.6C240 533.248 271.104 387.968 379.456 316.48a234.304 234.304 0 0 1 276.352 15.168c1.664.832 2.56 2.56 3.392 4.224 5.888 8.384 3.328 19.328-5.12 25.216L456.832 489.6a47.552 47.552 0 0 0-14.336 65.472l16 24.384c5.888 8.384 16.768 10.88 25.216 5.056l308.224-199.936a19.584 19.584 0 0 0 6.72-23.488v-.896c-4.992-9.216-10.048-17.6-15.104-26.88-99.968-151.168-304.064-194.88-456.96-95.744zM786.88 504.704l-62.208 40.32c-8.32 5.888-10.88 16.768-4.992 25.216L760 632.32c5.888 8.448 16.768 11.008 25.152 5.12l31.104-20.16a55.36 55.36 0 0 0 16-76.48l-20.224-31.04a19.52 19.52 0 0 0-25.152-5.12z"},null,-1),tM=[eM];function nM(e,t,n,r,o,a){return g(),_("svg",QC,tM)}var rM=y(ZC,[["render",nM],["__file","eleme-filled.vue"]]),oM={name:"Eleme"},aM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},lM=p("path",{fill:"currentColor",d:"M300.032 188.8c174.72-113.28 408-63.36 522.24 109.44 5.76 10.56 11.52 20.16 17.28 30.72v.96a22.4 22.4 0 0 1-7.68 26.88l-352.32 228.48c-9.6 6.72-22.08 3.84-28.8-5.76l-18.24-27.84a54.336 54.336 0 0 1 16.32-74.88l225.6-146.88c9.6-6.72 12.48-19.2 5.76-28.8-.96-1.92-1.92-3.84-3.84-4.8a267.84 267.84 0 0 0-315.84-17.28c-123.84 81.6-159.36 247.68-78.72 371.52a268.096 268.096 0 0 0 370.56 78.72 54.336 54.336 0 0 1 74.88 16.32l17.28 26.88c5.76 9.6 3.84 21.12-4.8 27.84-8.64 7.68-18.24 14.4-28.8 21.12a377.92 377.92 0 0 1-522.24-110.4c-113.28-174.72-63.36-408 111.36-522.24zm526.08 305.28a22.336 22.336 0 0 1 28.8 5.76l23.04 35.52a63.232 63.232 0 0 1-18.24 87.36l-35.52 23.04c-9.6 6.72-22.08 3.84-28.8-5.76l-46.08-71.04c-6.72-9.6-3.84-22.08 5.76-28.8l71.04-46.08z"},null,-1),sM=[lM];function iM(e,t,n,r,o,a){return g(),_("svg",aM,sM)}var cM=y(oM,[["render",iM],["__file","eleme.vue"]]),uM={name:"ElementPlus"},fM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},pM=p("path",{fill:"currentColor",d:"M839.7 734.7c0 33.3-17.9 41-17.9 41S519.7 949.8 499.2 960c-10.2 5.1-20.5 5.1-30.7 0 0 0-314.9-184.3-325.1-192-5.1-5.1-10.2-12.8-12.8-20.5V368.6c0-17.9 20.5-28.2 20.5-28.2L466 158.6c12.8-5.1 25.6-5.1 38.4 0 0 0 279 161.3 309.8 179.2 17.9 7.7 28.2 25.6 25.6 46.1-.1-5-.1 317.5-.1 350.8zM714.2 371.2c-64-35.8-217.6-125.4-217.6-125.4-7.7-5.1-20.5-5.1-30.7 0L217.6 389.1s-17.9 10.2-17.9 23v297c0 5.1 5.1 12.8 7.7 17.9 7.7 5.1 256 148.5 256 148.5 7.7 5.1 17.9 5.1 25.6 0 15.4-7.7 250.9-145.9 250.9-145.9s12.8-5.1 12.8-30.7v-74.2l-276.5 169v-64c0-17.9 7.7-30.7 20.5-46.1L745 535c5.1-7.7 10.2-20.5 10.2-30.7v-66.6l-279 169v-69.1c0-15.4 5.1-30.7 17.9-38.4l220.1-128zM919 135.7c0-5.1-5.1-7.7-7.7-7.7h-58.9V66.6c0-5.1-5.1-5.1-10.2-5.1l-30.7 5.1c-5.1 0-5.1 2.6-5.1 5.1V128h-56.3c-5.1 0-5.1 5.1-7.7 5.1v38.4h69.1v64c0 5.1 5.1 5.1 10.2 5.1l30.7-5.1c5.1 0 5.1-2.6 5.1-5.1v-56.3h64l-2.5-38.4z"},null,-1),dM=[pM];function hM(e,t,n,r,o,a){return g(),_("svg",fM,dM)}var vM=y(uM,[["render",hM],["__file","element-plus.vue"]]),mM={name:"Expand"},gM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wM=p("path",{fill:"currentColor",d:"M128 192h768v128H128V192zm0 256h512v128H128V448zm0 256h768v128H128V704zm576-352 192 160-192 128V352z"},null,-1),_M=[wM];function yM(e,t,n,r,o,a){return g(),_("svg",gM,_M)}var bM=y(mM,[["render",yM],["__file","expand.vue"]]),zM={name:"Failed"},xM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},CM=p("path",{fill:"currentColor",d:"m557.248 608 135.744-135.744-45.248-45.248-135.68 135.744-135.808-135.68-45.248 45.184L466.752 608l-135.68 135.68 45.184 45.312L512 653.248l135.744 135.744 45.248-45.248L557.312 608zM704 192h160v736H160V192h160v64h384v-64zm-320 0V96h256v96H384z"},null,-1),MM=[CM];function LM(e,t,n,r,o,a){return g(),_("svg",xM,MM)}var HM=y(zM,[["render",LM],["__file","failed.vue"]]),kM={name:"Female"},EM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},AM=p("path",{fill:"currentColor",d:"M512 640a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),SM=p("path",{fill:"currentColor",d:"M512 640q32 0 32 32v256q0 32-32 32t-32-32V672q0-32 32-32z"},null,-1),VM=p("path",{fill:"currentColor",d:"M352 800h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32z"},null,-1),TM=[AM,SM,VM];function OM(e,t,n,r,o,a){return g(),_("svg",EM,TM)}var BM=y(kM,[["render",OM],["__file","female.vue"]]),PM={name:"Files"},IM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},FM=p("path",{fill:"currentColor",d:"M128 384v448h768V384H128zm-32-64h832a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32zm64-128h704v64H160zm96-128h512v64H256z"},null,-1),NM=[FM];function RM(e,t,n,r,o,a){return g(),_("svg",IM,NM)}var DM=y(PM,[["render",RM],["__file","files.vue"]]),$M={name:"Film"},jM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},UM=p("path",{fill:"currentColor",d:"M160 160v704h704V160H160zm-32-64h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32z"},null,-1),WM=p("path",{fill:"currentColor",d:"M320 288V128h64v352h256V128h64v160h160v64H704v128h160v64H704v128h160v64H704v160h-64V544H384v352h-64V736H128v-64h192V544H128v-64h192V352H128v-64h192z"},null,-1),qM=[UM,WM];function GM(e,t,n,r,o,a){return g(),_("svg",jM,qM)}var KM=y($M,[["render",GM],["__file","film.vue"]]),YM={name:"Filter"},JM={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},XM=p("path",{fill:"currentColor",d:"M384 523.392V928a32 32 0 0 0 46.336 28.608l192-96A32 32 0 0 0 640 832V523.392l280.768-343.104a32 32 0 1 0-49.536-40.576l-288 352A32 32 0 0 0 576 512v300.224l-128 64V512a32 32 0 0 0-7.232-20.288L195.52 192H704a32 32 0 1 0 0-64H128a32 32 0 0 0-24.768 52.288L384 523.392z"},null,-1),ZM=[XM];function QM(e,t,n,r,o,a){return g(),_("svg",JM,ZM)}var eL=y(YM,[["render",QM],["__file","filter.vue"]]),tL={name:"Finished"},nL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},rL=p("path",{fill:"currentColor",d:"M280.768 753.728 691.456 167.04a32 32 0 1 1 52.416 36.672L314.24 817.472a32 32 0 0 1-45.44 7.296l-230.4-172.8a32 32 0 0 1 38.4-51.2l203.968 152.96zM736 448a32 32 0 1 1 0-64h192a32 32 0 1 1 0 64H736zM608 640a32 32 0 0 1 0-64h319.936a32 32 0 1 1 0 64H608zM480 832a32 32 0 1 1 0-64h447.936a32 32 0 1 1 0 64H480z"},null,-1),oL=[rL];function aL(e,t,n,r,o,a){return g(),_("svg",nL,oL)}var lL=y(tL,[["render",aL],["__file","finished.vue"]]),sL={name:"FirstAidKit"},iL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},cL=p("path",{fill:"currentColor",d:"M192 256a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H192zm0-64h640a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H192A128 128 0 0 1 64 768V320a128 128 0 0 1 128-128z"},null,-1),uL=p("path",{fill:"currentColor",d:"M544 512h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96v-96a32 32 0 0 1 64 0v96zM352 128v64h320v-64H352zm-32-64h384a32 32 0 0 1 32 32v128a32 32 0 0 1-32 32H320a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),fL=[cL,uL];function pL(e,t,n,r,o,a){return g(),_("svg",iL,fL)}var dL=y(sL,[["render",pL],["__file","first-aid-kit.vue"]]),hL={name:"Flag"},vL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mL=p("path",{fill:"currentColor",d:"M288 128h608L736 384l160 256H288v320h-96V64h96v64z"},null,-1),gL=[mL];function wL(e,t,n,r,o,a){return g(),_("svg",vL,gL)}var _L=y(hL,[["render",wL],["__file","flag.vue"]]),yL={name:"Fold"},bL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},zL=p("path",{fill:"currentColor",d:"M896 192H128v128h768V192zm0 256H384v128h512V448zm0 256H128v128h768V704zM320 384 128 512l192 128V384z"},null,-1),xL=[zL];function CL(e,t,n,r,o,a){return g(),_("svg",bL,xL)}var ML=y(yL,[["render",CL],["__file","fold.vue"]]),LL={name:"FolderAdd"},HL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},kL=p("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm384 416V416h64v128h128v64H544v128h-64V608H352v-64h128z"},null,-1),EL=[kL];function AL(e,t,n,r,o,a){return g(),_("svg",HL,EL)}var SL=y(LL,[["render",AL],["__file","folder-add.vue"]]),VL={name:"FolderChecked"},TL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},OL=p("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm414.08 502.144 180.992-180.992L736.32 494.4 510.08 720.64l-158.4-158.336 45.248-45.312L510.08 630.144z"},null,-1),BL=[OL];function PL(e,t,n,r,o,a){return g(),_("svg",TL,BL)}var IL=y(VL,[["render",PL],["__file","folder-checked.vue"]]),FL={name:"FolderDelete"},NL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},RL=p("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm370.752 448-90.496-90.496 45.248-45.248L512 530.752l90.496-90.496 45.248 45.248L557.248 576l90.496 90.496-45.248 45.248L512 621.248l-90.496 90.496-45.248-45.248L466.752 576z"},null,-1),DL=[RL];function $L(e,t,n,r,o,a){return g(),_("svg",NL,DL)}var jL=y(FL,[["render",$L],["__file","folder-delete.vue"]]),UL={name:"FolderOpened"},WL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qL=p("path",{fill:"currentColor",d:"M878.08 448H241.92l-96 384h636.16l96-384zM832 384v-64H485.76L357.504 192H128v448l57.92-231.744A32 32 0 0 1 216.96 384H832zm-24.96 512H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h287.872l128.384 128H864a32 32 0 0 1 32 32v96h23.04a32 32 0 0 1 31.04 39.744l-112 448A32 32 0 0 1 807.04 896z"},null,-1),GL=[qL];function KL(e,t,n,r,o,a){return g(),_("svg",WL,GL)}var YL=y(UL,[["render",KL],["__file","folder-opened.vue"]]),JL={name:"FolderRemove"},XL={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ZL=p("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32zm256 416h320v64H352v-64z"},null,-1),QL=[ZL];function eH(e,t,n,r,o,a){return g(),_("svg",XL,QL)}var tH=y(JL,[["render",eH],["__file","folder-remove.vue"]]),nH={name:"Folder"},rH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oH=p("path",{fill:"currentColor",d:"M128 192v640h768V320H485.76L357.504 192H128zm-32-64h287.872l128.384 128H928a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32z"},null,-1),aH=[oH];function lH(e,t,n,r,o,a){return g(),_("svg",rH,aH)}var sH=y(nH,[["render",lH],["__file","folder.vue"]]),iH={name:"Food"},cH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uH=p("path",{fill:"currentColor",d:"M128 352.576V352a288 288 0 0 1 491.072-204.224 192 192 0 0 1 274.24 204.48 64 64 0 0 1 57.216 74.24C921.6 600.512 850.048 710.656 736 756.992V800a96 96 0 0 1-96 96H384a96 96 0 0 1-96-96v-43.008c-114.048-46.336-185.6-156.48-214.528-330.496A64 64 0 0 1 128 352.64zm64-.576h64a160 160 0 0 1 320 0h64a224 224 0 0 0-448 0zm128 0h192a96 96 0 0 0-192 0zm439.424 0h68.544A128.256 128.256 0 0 0 704 192c-15.36 0-29.952 2.688-43.52 7.616 11.328 18.176 20.672 37.76 27.84 58.304A64.128 64.128 0 0 1 759.424 352zM672 768H352v32a32 32 0 0 0 32 32h256a32 32 0 0 0 32-32v-32zm-342.528-64h365.056c101.504-32.64 165.76-124.928 192.896-288H136.576c27.136 163.072 91.392 255.36 192.896 288z"},null,-1),fH=[uH];function pH(e,t,n,r,o,a){return g(),_("svg",cH,fH)}var dH=y(iH,[["render",pH],["__file","food.vue"]]),hH={name:"Football"},vH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mH=p("path",{fill:"currentColor",d:"M512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896zm0-64a384 384 0 1 0 0-768 384 384 0 0 0 0 768z"},null,-1),gH=p("path",{fill:"currentColor",d:"M186.816 268.288c16-16.384 31.616-31.744 46.976-46.08 17.472 30.656 39.808 58.112 65.984 81.28l-32.512 56.448a385.984 385.984 0 0 1-80.448-91.648zm653.696-5.312a385.92 385.92 0 0 1-83.776 96.96l-32.512-56.384a322.923 322.923 0 0 0 68.48-85.76c15.552 14.08 31.488 29.12 47.808 45.184zM465.984 445.248l11.136-63.104a323.584 323.584 0 0 0 69.76 0l11.136 63.104a387.968 387.968 0 0 1-92.032 0zm-62.72-12.8A381.824 381.824 0 0 1 320 396.544l32-55.424a319.885 319.885 0 0 0 62.464 27.712l-11.2 63.488zm300.8-35.84a381.824 381.824 0 0 1-83.328 35.84l-11.2-63.552A319.885 319.885 0 0 0 672 341.184l32 55.424zm-520.768 364.8a385.92 385.92 0 0 1 83.968-97.28l32.512 56.32c-26.88 23.936-49.856 52.352-67.52 84.032-16-13.44-32.32-27.712-48.96-43.072zm657.536.128a1442.759 1442.759 0 0 1-49.024 43.072 321.408 321.408 0 0 0-67.584-84.16l32.512-56.32c33.216 27.456 61.696 60.352 84.096 97.408zM465.92 578.752a387.968 387.968 0 0 1 92.032 0l-11.136 63.104a323.584 323.584 0 0 0-69.76 0l-11.136-63.104zm-62.72 12.8 11.2 63.552a319.885 319.885 0 0 0-62.464 27.712L320 627.392a381.824 381.824 0 0 1 83.264-35.84zm300.8 35.84-32 55.424a318.272 318.272 0 0 0-62.528-27.712l11.2-63.488c29.44 8.64 57.28 20.736 83.264 35.776z"},null,-1),wH=[mH,gH];function _H(e,t,n,r,o,a){return g(),_("svg",vH,wH)}var yH=y(hH,[["render",_H],["__file","football.vue"]]),bH={name:"ForkSpoon"},zH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},xH=p("path",{fill:"currentColor",d:"M256 410.304V96a32 32 0 0 1 64 0v314.304a96 96 0 0 0 64-90.56V96a32 32 0 0 1 64 0v223.744a160 160 0 0 1-128 156.8V928a32 32 0 1 1-64 0V476.544a160 160 0 0 1-128-156.8V96a32 32 0 0 1 64 0v223.744a96 96 0 0 0 64 90.56zM672 572.48C581.184 552.128 512 446.848 512 320c0-141.44 85.952-256 192-256s192 114.56 192 256c0 126.848-69.184 232.128-160 252.48V928a32 32 0 1 1-64 0V572.48zM704 512c66.048 0 128-82.56 128-192s-61.952-192-128-192-128 82.56-128 192 61.952 192 128 192z"},null,-1),CH=[xH];function MH(e,t,n,r,o,a){return g(),_("svg",zH,CH)}var LH=y(bH,[["render",MH],["__file","fork-spoon.vue"]]),HH={name:"Fries"},kH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},EH=p("path",{fill:"currentColor",d:"M608 224v-64a32 32 0 0 0-64 0v336h26.88A64 64 0 0 0 608 484.096V224zm101.12 160A64 64 0 0 0 672 395.904V384h64V224a32 32 0 1 0-64 0v160h37.12zm74.88 0a92.928 92.928 0 0 1 91.328 110.08l-60.672 323.584A96 96 0 0 1 720.32 896H303.68a96 96 0 0 1-94.336-78.336L148.672 494.08A92.928 92.928 0 0 1 240 384h-16V224a96 96 0 0 1 188.608-25.28A95.744 95.744 0 0 1 480 197.44V160a96 96 0 0 1 188.608-25.28A96 96 0 0 1 800 224v160h-16zM670.784 512a128 128 0 0 1-99.904 48H453.12a128 128 0 0 1-99.84-48H352v-1.536a128.128 128.128 0 0 1-9.984-14.976L314.88 448H240a28.928 28.928 0 0 0-28.48 34.304L241.088 640h541.824l29.568-157.696A28.928 28.928 0 0 0 784 448h-74.88l-27.136 47.488A132.405 132.405 0 0 1 672 510.464V512h-1.216zM480 288a32 32 0 0 0-64 0v196.096A64 64 0 0 0 453.12 496H480V288zm-128 96V224a32 32 0 0 0-64 0v160h64-37.12A64 64 0 0 1 352 395.904zm-98.88 320 19.072 101.888A32 32 0 0 0 303.68 832h416.64a32 32 0 0 0 31.488-26.112L770.88 704H253.12z"},null,-1),AH=[EH];function SH(e,t,n,r,o,a){return g(),_("svg",kH,AH)}var VH=y(HH,[["render",SH],["__file","fries.vue"]]),TH={name:"FullScreen"},OH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},BH=p("path",{fill:"currentColor",d:"m160 96.064 192 .192a32 32 0 0 1 0 64l-192-.192V352a32 32 0 0 1-64 0V96h64v.064zm0 831.872V928H96V672a32 32 0 1 1 64 0v191.936l192-.192a32 32 0 1 1 0 64l-192 .192zM864 96.064V96h64v256a32 32 0 1 1-64 0V160.064l-192 .192a32 32 0 1 1 0-64l192-.192zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64v-.064z"},null,-1),PH=[BH];function IH(e,t,n,r,o,a){return g(),_("svg",OH,PH)}let Zi,Qi,e3,t3;b1=y(TH,[["render",IH],["__file","full-screen.vue"]]),Zi={name:"GobletFull"},Qi={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},e3=p("path",{fill:"currentColor",d:"M256 320h512c0-78.592-12.608-142.4-36.928-192h-434.24C269.504 192.384 256 256.256 256 320zm503.936 64H264.064a256.128 256.128 0 0 0 495.872 0zM544 638.4V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.4A320 320 0 0 1 192 320c0-85.632 21.312-170.944 64-256h512c42.688 64.32 64 149.632 64 256a320 320 0 0 1-288 318.4z"},null,-1),t3=[e3];function FH(e,t,n,r,o,a){return g(),_("svg",Qi,t3)}var NH=y(Zi,[["render",FH],["__file","goblet-full.vue"]]),RH={name:"GobletSquareFull"},DH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},$H=p("path",{fill:"currentColor",d:"M256 270.912c10.048 6.72 22.464 14.912 28.992 18.624a220.16 220.16 0 0 0 114.752 30.72c30.592 0 49.408-9.472 91.072-41.152l.64-.448c52.928-40.32 82.368-55.04 132.288-54.656 55.552.448 99.584 20.8 142.72 57.408l1.536 1.28V128H256v142.912zm.96 76.288C266.368 482.176 346.88 575.872 512 576c157.44.064 237.952-85.056 253.248-209.984a952.32 952.32 0 0 1-40.192-35.712c-32.704-27.776-63.36-41.92-101.888-42.24-31.552-.256-50.624 9.28-93.12 41.6l-.576.448c-52.096 39.616-81.024 54.208-129.792 54.208-54.784 0-100.48-13.376-142.784-37.056zM480 638.848C250.624 623.424 192 442.496 192 319.68V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v224c0 122.816-58.624 303.68-288 318.912V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.848z"},null,-1),jH=[$H];function UH(e,t,n,r,o,a){return g(),_("svg",DH,jH)}var WH=y(RH,[["render",UH],["__file","goblet-square-full.vue"]]),qH={name:"GobletSquare"},GH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},KH=p("path",{fill:"currentColor",d:"M544 638.912V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.848C250.624 623.424 192 442.496 192 319.68V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v224c0 122.816-58.624 303.68-288 318.912zM256 319.68c0 149.568 80 256.192 256 256.256C688.128 576 768 469.568 768 320V128H256v191.68z"},null,-1),YH=[KH];function JH(e,t,n,r,o,a){return g(),_("svg",GH,YH)}var XH=y(qH,[["render",JH],["__file","goblet-square.vue"]]),ZH={name:"Goblet"},QH={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ek=p("path",{fill:"currentColor",d:"M544 638.4V896h96a32 32 0 1 1 0 64H384a32 32 0 1 1 0-64h96V638.4A320 320 0 0 1 192 320c0-85.632 21.312-170.944 64-256h512c42.688 64.32 64 149.632 64 256a320 320 0 0 1-288 318.4zM256 320a256 256 0 1 0 512 0c0-78.592-12.608-142.4-36.928-192h-434.24C269.504 192.384 256 256.256 256 320z"},null,-1),tk=[ek];function nk(e,t,n,r,o,a){return g(),_("svg",QH,tk)}var rk=y(ZH,[["render",nk],["__file","goblet.vue"]]),ok={name:"GoldMedal"},ak={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},lk=p("path",{fill:"currentColor",d:"m772.13 452.84 53.86-351.81c1.32-10.01-1.17-18.68-7.49-26.02S804.35 64 795.01 64H228.99v-.01h-.06c-9.33 0-17.15 3.67-23.49 11.01s-8.83 16.01-7.49 26.02l53.87 351.89C213.54 505.73 193.59 568.09 192 640c2 90.67 33.17 166.17 93.5 226.5S421.33 957.99 512 960c90.67-2 166.17-33.17 226.5-93.5 60.33-60.34 91.49-135.83 93.5-226.5-1.59-71.94-21.56-134.32-59.87-187.16zM640.01 128h117.02l-39.01 254.02c-20.75-10.64-40.74-19.73-59.94-27.28-5.92-3-11.95-5.8-18.08-8.41V128h.01zM576 128v198.76c-13.18-2.58-26.74-4.43-40.67-5.55-8.07-.8-15.85-1.2-23.33-1.2-10.54 0-21.09.66-31.64 1.96a359.844 359.844 0 0 0-32.36 4.79V128h128zm-192 0h.04v218.3c-6.22 2.66-12.34 5.5-18.36 8.56-19.13 7.54-39.02 16.6-59.66 27.16L267.01 128H384zm308.99 692.99c-48 48-108.33 73-180.99 75.01-72.66-2.01-132.99-27.01-180.99-75.01S258.01 712.66 256 640c2.01-72.66 27.01-132.99 75.01-180.99 19.67-19.67 41.41-35.47 65.22-47.41 38.33-15.04 71.15-23.92 98.44-26.65 5.07-.41 10.2-.7 15.39-.88.63-.01 1.28-.03 1.91-.03.66 0 1.35.03 2.02.04 5.11.17 10.15.46 15.13.86 27.4 2.71 60.37 11.65 98.91 26.79 23.71 11.93 45.36 27.69 64.96 47.29 48 48 73 108.33 75.01 180.99-2.01 72.65-27.01 132.98-75.01 180.98z"},null,-1),sk=p("path",{fill:"currentColor",d:"M544 480H416v64h64v192h-64v64h192v-64h-64z"},null,-1),ik=[lk,sk];function ck(e,t,n,r,o,a){return g(),_("svg",ak,ik)}var uk=y(ok,[["render",ck],["__file","gold-medal.vue"]]),fk={name:"GoodsFilled"},pk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},dk=p("path",{fill:"currentColor",d:"M192 352h640l64 544H128l64-544zm128 224h64V448h-64v128zm320 0h64V448h-64v128zM384 288h-64a192 192 0 1 1 384 0h-64a128 128 0 1 0-256 0z"},null,-1),hk=[dk];function vk(e,t,n,r,o,a){return g(),_("svg",pk,hk)}var mk=y(fk,[["render",vk],["__file","goods-filled.vue"]]),gk={name:"Goods"},wk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_k=p("path",{fill:"currentColor",d:"M320 288v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4h131.072a32 32 0 0 1 31.808 28.8l57.6 576a32 32 0 0 1-31.808 35.2H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320zm64 0h256v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4zm-64 64H217.92l-51.2 512h690.56l-51.264-512H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96z"},null,-1),yk=[_k];function bk(e,t,n,r,o,a){return g(),_("svg",wk,yk)}var zk=y(gk,[["render",bk],["__file","goods.vue"]]),xk={name:"Grape"},Ck={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Mk=p("path",{fill:"currentColor",d:"M544 195.2a160 160 0 0 1 96 60.8 160 160 0 1 1 146.24 254.976 160 160 0 0 1-128 224 160 160 0 1 1-292.48 0 160 160 0 0 1-128-224A160 160 0 1 1 384 256a160 160 0 0 1 96-60.8V128h-64a32 32 0 0 1 0-64h192a32 32 0 0 1 0 64h-64v67.2zM512 448a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm-256 0a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128 224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128 224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128-224a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm128-224a96 96 0 1 0 0-192 96 96 0 0 0 0 192z"},null,-1),Lk=[Mk];function Hk(e,t,n,r,o,a){return g(),_("svg",Ck,Lk)}var kk=y(xk,[["render",Hk],["__file","grape.vue"]]),Ek={name:"Grid"},Ak={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Sk=p("path",{fill:"currentColor",d:"M640 384v256H384V384h256zm64 0h192v256H704V384zm-64 512H384V704h256v192zm64 0V704h192v192H704zm-64-768v192H384V128h256zm64 0h192v192H704V128zM320 384v256H128V384h192zm0 512H128V704h192v192zm0-768v192H128V128h192z"},null,-1),Vk=[Sk];function Tk(e,t,n,r,o,a){return g(),_("svg",Ak,Vk)}var Ok=y(Ek,[["render",Tk],["__file","grid.vue"]]),Bk={name:"Guide"},Pk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ik=p("path",{fill:"currentColor",d:"M640 608h-64V416h64v192zm0 160v160a32 32 0 0 1-32 32H416a32 32 0 0 1-32-32V768h64v128h128V768h64zM384 608V416h64v192h-64zm256-352h-64V128H448v128h-64V96a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32v160z"},null,-1),Fk=p("path",{fill:"currentColor",d:"m220.8 256-71.232 80 71.168 80H768V256H220.8zm-14.4-64H800a32 32 0 0 1 32 32v224a32 32 0 0 1-32 32H206.4a32 32 0 0 1-23.936-10.752l-99.584-112a32 32 0 0 1 0-42.496l99.584-112A32 32 0 0 1 206.4 192zm678.784 496-71.104 80H266.816V608h547.2l71.168 80zm-56.768-144H234.88a32 32 0 0 0-32 32v224a32 32 0 0 0 32 32h593.6a32 32 0 0 0 23.936-10.752l99.584-112a32 32 0 0 0 0-42.496l-99.584-112A32 32 0 0 0 828.48 544z"},null,-1),Nk=[Ik,Fk];function Rk(e,t,n,r,o,a){return g(),_("svg",Pk,Nk)}var Dk=y(Bk,[["render",Rk],["__file","guide.vue"]]),$k={name:"Handbag"},jk={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},Uk=p("path",{fill:"currentColor",d:"M887.01 264.99c-6-5.99-13.67-8.99-23.01-8.99H704c-1.34-54.68-20.01-100.01-56-136s-81.32-54.66-136-56c-54.68 1.34-100.01 20.01-136 56s-54.66 81.32-56 136H160c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.67-8.99 23.01v640c0 9.35 2.99 17.02 8.99 23.01S150.66 960 160 960h704c9.35 0 17.02-2.99 23.01-8.99S896 937.34 896 928V288c0-9.35-2.99-17.02-8.99-23.01zM421.5 165.5c24.32-24.34 54.49-36.84 90.5-37.5 35.99.68 66.16 13.18 90.5 37.5s36.84 54.49 37.5 90.5H384c.68-35.99 13.18-66.16 37.5-90.5zM832 896H192V320h128v128h64V320h256v128h64V320h128v576z"},null,-1),Wk=[Uk];function qk(e,t,n,r,o,a){return g(),_("svg",jk,Wk)}var Gk=y($k,[["render",qk],["__file","handbag.vue"]]),Kk={name:"Headset"},Yk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Jk=p("path",{fill:"currentColor",d:"M896 529.152V512a384 384 0 1 0-768 0v17.152A128 128 0 0 1 320 640v128a128 128 0 1 1-256 0V512a448 448 0 1 1 896 0v256a128 128 0 1 1-256 0V640a128 128 0 0 1 192-110.848zM896 640a64 64 0 0 0-128 0v128a64 64 0 0 0 128 0V640zm-768 0v128a64 64 0 0 0 128 0V640a64 64 0 1 0-128 0z"},null,-1),Xk=[Jk];function Zk(e,t,n,r,o,a){return g(),_("svg",Yk,Xk)}var Qk=y(Kk,[["render",Zk],["__file","headset.vue"]]),eE={name:"HelpFilled"},tE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},nE=p("path",{fill:"currentColor",d:"M926.784 480H701.312A192.512 192.512 0 0 0 544 322.688V97.216A416.064 416.064 0 0 1 926.784 480zm0 64A416.064 416.064 0 0 1 544 926.784V701.312A192.512 192.512 0 0 0 701.312 544h225.472zM97.28 544h225.472A192.512 192.512 0 0 0 480 701.312v225.472A416.064 416.064 0 0 1 97.216 544zm0-64A416.064 416.064 0 0 1 480 97.216v225.472A192.512 192.512 0 0 0 322.688 480H97.216z"},null,-1),rE=[nE];function oE(e,t,n,r,o,a){return g(),_("svg",tE,rE)}var aE=y(eE,[["render",oE],["__file","help-filled.vue"]]),lE={name:"Help"},sE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},iE=p("path",{fill:"currentColor",d:"m759.936 805.248-90.944-91.008A254.912 254.912 0 0 1 512 768a254.912 254.912 0 0 1-156.992-53.76l-90.944 91.008A382.464 382.464 0 0 0 512 896c94.528 0 181.12-34.176 247.936-90.752zm45.312-45.312A382.464 382.464 0 0 0 896 512c0-94.528-34.176-181.12-90.752-247.936l-91.008 90.944C747.904 398.4 768 452.864 768 512c0 59.136-20.096 113.6-53.76 156.992l91.008 90.944zm-45.312-541.184A382.464 382.464 0 0 0 512 128c-94.528 0-181.12 34.176-247.936 90.752l90.944 91.008A254.912 254.912 0 0 1 512 256c59.136 0 113.6 20.096 156.992 53.76l90.944-91.008zm-541.184 45.312A382.464 382.464 0 0 0 128 512c0 94.528 34.176 181.12 90.752 247.936l91.008-90.944A254.912 254.912 0 0 1 256 512c0-59.136 20.096-113.6 53.76-156.992l-91.008-90.944zm417.28 394.496a194.56 194.56 0 0 0 22.528-22.528C686.912 602.56 704 559.232 704 512a191.232 191.232 0 0 0-67.968-146.56A191.296 191.296 0 0 0 512 320a191.232 191.232 0 0 0-146.56 67.968C337.088 421.44 320 464.768 320 512a191.232 191.232 0 0 0 67.968 146.56C421.44 686.912 464.768 704 512 704c47.296 0 90.56-17.088 124.032-45.44zM512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),cE=[iE];function uE(e,t,n,r,o,a){return g(),_("svg",sE,cE)}var fE=y(lE,[["render",uE],["__file","help.vue"]]),pE={name:"Hide"},dE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},hE=p("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4-6.4-6.4-12.8-9.6-22.4-9.6-9.6 0-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176C44.8 438.4 0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4 0 9.6 3.2 16 9.6 22.4 6.4 6.4 12.8 9.6 22.4 9.6 9.6 0 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4Zm-646.4 528c-76.8-70.4-128-128-153.6-172.8 28.8-48 80-105.6 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4Zm140.8-96c-12.8-22.4-19.2-48-19.2-76.8 0-44.8 16-83.2 48-112 32-28.8 67.2-48 112-48 28.8 0 54.4 6.4 73.6 19.2L371.2 588.8ZM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6-28.8 48-80 105.6-153.6 172.8-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176C979.199 585.6 1024 528 1024 512s-48.001-73.6-134.401-176Z"},null,-1),vE=p("path",{fill:"currentColor",d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112-32 28.8-67.2 48-112 48Z"},null,-1),mE=[hE,vE];function gE(e,t,n,r,o,a){return g(),_("svg",dE,mE)}let n3,r3,o3,a3;al=y(pE,[["render",gE],["__file","hide.vue"]]),n3={name:"Histogram"},r3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},o3=p("path",{fill:"currentColor",d:"M416 896V128h192v768H416zm-288 0V448h192v448H128zm576 0V320h192v576H704z"},null,-1),a3=[o3];function wE(e,t,n,r,o,a){return g(),_("svg",r3,a3)}var _E=y(n3,[["render",wE],["__file","histogram.vue"]]),yE={name:"HomeFilled"},bE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},zE=p("path",{fill:"currentColor",d:"M512 128 128 447.936V896h255.936V640H640v256h255.936V447.936z"},null,-1),xE=[zE];function CE(e,t,n,r,o,a){return g(),_("svg",bE,xE)}var ME=y(yE,[["render",CE],["__file","home-filled.vue"]]),LE={name:"HotWater"},HE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},kE=p("path",{fill:"currentColor",d:"M273.067 477.867h477.866V409.6H273.067v68.267zm0 68.266v51.2A187.733 187.733 0 0 0 460.8 785.067h102.4a187.733 187.733 0 0 0 187.733-187.734v-51.2H273.067zm-34.134-204.8h546.134a34.133 34.133 0 0 1 34.133 34.134v221.866a256 256 0 0 1-256 256H460.8a256 256 0 0 1-256-256V375.467a34.133 34.133 0 0 1 34.133-34.134zM512 34.133a34.133 34.133 0 0 1 34.133 34.134v170.666a34.133 34.133 0 0 1-68.266 0V68.267A34.133 34.133 0 0 1 512 34.133zM375.467 102.4a34.133 34.133 0 0 1 34.133 34.133v102.4a34.133 34.133 0 0 1-68.267 0v-102.4a34.133 34.133 0 0 1 34.134-34.133zm273.066 0a34.133 34.133 0 0 1 34.134 34.133v102.4a34.133 34.133 0 1 1-68.267 0v-102.4a34.133 34.133 0 0 1 34.133-34.133zM170.667 921.668h682.666a34.133 34.133 0 1 1 0 68.267H170.667a34.133 34.133 0 1 1 0-68.267z"},null,-1),EE=[kE];function AE(e,t,n,r,o,a){return g(),_("svg",HE,EE)}var SE=y(LE,[["render",AE],["__file","hot-water.vue"]]),VE={name:"House"},TE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},OE=p("path",{fill:"currentColor",d:"M192 413.952V896h640V413.952L512 147.328 192 413.952zM139.52 374.4l352-293.312a32 32 0 0 1 40.96 0l352 293.312A32 32 0 0 1 896 398.976V928a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V398.976a32 32 0 0 1 11.52-24.576z"},null,-1),BE=[OE];function PE(e,t,n,r,o,a){return g(),_("svg",TE,BE)}var IE=y(VE,[["render",PE],["__file","house.vue"]]),FE={name:"IceCreamRound"},NE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},RE=p("path",{fill:"currentColor",d:"m308.352 489.344 226.304 226.304a32 32 0 0 0 45.248 0L783.552 512A192 192 0 1 0 512 240.448L308.352 444.16a32 32 0 0 0 0 45.248zm135.744 226.304L308.352 851.392a96 96 0 0 1-135.744-135.744l135.744-135.744-45.248-45.248a96 96 0 0 1 0-135.808L466.752 195.2A256 256 0 0 1 828.8 557.248L625.152 760.96a96 96 0 0 1-135.808 0l-45.248-45.248zM398.848 670.4 353.6 625.152 217.856 760.896a32 32 0 0 0 45.248 45.248L398.848 670.4zm248.96-384.64a32 32 0 0 1 0 45.248L466.624 512a32 32 0 1 1-45.184-45.248l180.992-181.056a32 32 0 0 1 45.248 0zm90.496 90.496a32 32 0 0 1 0 45.248L557.248 602.496A32 32 0 1 1 512 557.248l180.992-180.992a32 32 0 0 1 45.312 0z"},null,-1),DE=[RE];function $E(e,t,n,r,o,a){return g(),_("svg",NE,DE)}var jE=y(FE,[["render",$E],["__file","ice-cream-round.vue"]]),UE={name:"IceCreamSquare"},WE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qE=p("path",{fill:"currentColor",d:"M416 640h256a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32H352a32 32 0 0 0-32 32v448a32 32 0 0 0 32 32h64zm192 64v160a96 96 0 0 1-192 0V704h-64a96 96 0 0 1-96-96V160a96 96 0 0 1 96-96h320a96 96 0 0 1 96 96v448a96 96 0 0 1-96 96h-64zm-64 0h-64v160a32 32 0 1 0 64 0V704z"},null,-1),GE=[qE];function KE(e,t,n,r,o,a){return g(),_("svg",WE,GE)}var YE=y(UE,[["render",KE],["__file","ice-cream-square.vue"]]),JE={name:"IceCream"},XE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ZE=p("path",{fill:"currentColor",d:"M128.64 448a208 208 0 0 1 193.536-191.552 224 224 0 0 1 445.248 15.488A208.128 208.128 0 0 1 894.784 448H896L548.8 983.68a32 32 0 0 1-53.248.704L128 448h.64zm64.256 0h286.208a144 144 0 0 0-286.208 0zm351.36 0h286.272a144 144 0 0 0-286.272 0zm-294.848 64 271.808 396.608L778.24 512H249.408zM511.68 352.64a207.872 207.872 0 0 1 189.184-96.192 160 160 0 0 0-314.752 5.632c52.608 12.992 97.28 46.08 125.568 90.56z"},null,-1),QE=[ZE];function eA(e,t,n,r,o,a){return g(),_("svg",XE,QE)}var tA=y(JE,[["render",eA],["__file","ice-cream.vue"]]),nA={name:"IceDrink"},rA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oA=p("path",{fill:"currentColor",d:"M512 448v128h239.68l16.064-128H512zm-64 0H256.256l16.064 128H448V448zm64-255.36V384h247.744A256.128 256.128 0 0 0 512 192.64zm-64 8.064A256.448 256.448 0 0 0 264.256 384H448V200.704zm64-72.064A320.128 320.128 0 0 1 825.472 384H896a32 32 0 1 1 0 64h-64v1.92l-56.96 454.016A64 64 0 0 1 711.552 960H312.448a64 64 0 0 1-63.488-56.064L192 449.92V448h-64a32 32 0 0 1 0-64h70.528A320.384 320.384 0 0 1 448 135.04V96a96 96 0 0 1 96-96h128a32 32 0 1 1 0 64H544a32 32 0 0 0-32 32v32.64zM743.68 640H280.32l32.128 256h399.104l32.128-256z"},null,-1),aA=[oA];function lA(e,t,n,r,o,a){return g(),_("svg",rA,aA)}var sA=y(nA,[["render",lA],["__file","ice-drink.vue"]]),iA={name:"IceTea"},cA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uA=p("path",{fill:"currentColor",d:"M197.696 259.648a320.128 320.128 0 0 1 628.608 0A96 96 0 0 1 896 352v64a96 96 0 0 1-71.616 92.864l-49.408 395.072A64 64 0 0 1 711.488 960H312.512a64 64 0 0 1-63.488-56.064l-49.408-395.072A96 96 0 0 1 128 416v-64a96 96 0 0 1 69.696-92.352zM264.064 256h495.872a256.128 256.128 0 0 0-495.872 0zm495.424 256H264.512l48 384h398.976l48-384zM224 448h576a32 32 0 0 0 32-32v-64a32 32 0 0 0-32-32H224a32 32 0 0 0-32 32v64a32 32 0 0 0 32 32zm160 192h64v64h-64v-64zm192 64h64v64h-64v-64zm-128 64h64v64h-64v-64zm64-192h64v64h-64v-64z"},null,-1),fA=[uA];function pA(e,t,n,r,o,a){return g(),_("svg",cA,fA)}var dA=y(iA,[["render",pA],["__file","ice-tea.vue"]]),hA={name:"InfoFilled"},vA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mA=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"},null,-1),gA=[mA];function wA(e,t,n,r,o,a){return g(),_("svg",vA,gA)}var Sa=y(hA,[["render",wA],["__file","info-filled.vue"]]),_A={name:"Iphone"},yA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},bA=p("path",{fill:"currentColor",d:"M224 768v96.064a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V768H224zm0-64h576V160a64 64 0 0 0-64-64H288a64 64 0 0 0-64 64v544zm32 288a96 96 0 0 1-96-96V128a96 96 0 0 1 96-96h512a96 96 0 0 1 96 96v768a96 96 0 0 1-96 96H256zm304-144a48 48 0 1 1-96 0 48 48 0 0 1 96 0z"},null,-1),zA=[bA];function xA(e,t,n,r,o,a){return g(),_("svg",yA,zA)}var CA=y(_A,[["render",xA],["__file","iphone.vue"]]),MA={name:"Key"},LA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},HA=p("path",{fill:"currentColor",d:"M448 456.064V96a32 32 0 0 1 32-32.064L672 64a32 32 0 0 1 0 64H512v128h160a32 32 0 0 1 0 64H512v128a256 256 0 1 1-64 8.064zM512 896a192 192 0 1 0 0-384 192 192 0 0 0 0 384z"},null,-1),kA=[HA];function EA(e,t,n,r,o,a){return g(),_("svg",LA,kA)}var AA=y(MA,[["render",EA],["__file","key.vue"]]),SA={name:"KnifeFork"},VA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},TA=p("path",{fill:"currentColor",d:"M256 410.56V96a32 32 0 0 1 64 0v314.56A96 96 0 0 0 384 320V96a32 32 0 0 1 64 0v224a160 160 0 0 1-128 156.8V928a32 32 0 1 1-64 0V476.8A160 160 0 0 1 128 320V96a32 32 0 0 1 64 0v224a96 96 0 0 0 64 90.56zm384-250.24V544h126.72c-3.328-78.72-12.928-147.968-28.608-207.744-14.336-54.528-46.848-113.344-98.112-175.872zM640 608v320a32 32 0 1 1-64 0V64h64c85.312 89.472 138.688 174.848 160 256 21.312 81.152 32 177.152 32 288H640z"},null,-1),OA=[TA];function BA(e,t,n,r,o,a){return g(),_("svg",VA,OA)}var PA=y(SA,[["render",BA],["__file","knife-fork.vue"]]),IA={name:"Lightning"},FA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},NA=p("path",{fill:"currentColor",d:"M288 671.36v64.128A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 736 734.016v-64.768a192 192 0 0 0 3.328-377.92l-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 91.968 70.464 167.36 160.256 175.232z"},null,-1),RA=p("path",{fill:"currentColor",d:"M416 736a32 32 0 0 1-27.776-47.872l128-224a32 32 0 1 1 55.552 31.744L471.168 672H608a32 32 0 0 1 27.776 47.872l-128 224a32 32 0 1 1-55.68-31.744L552.96 736H416z"},null,-1),DA=[NA,RA];function $A(e,t,n,r,o,a){return g(),_("svg",FA,DA)}var jA=y(IA,[["render",$A],["__file","lightning.vue"]]),UA={name:"Link"},WA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qA=p("path",{fill:"currentColor",d:"M715.648 625.152 670.4 579.904l90.496-90.56c75.008-74.944 85.12-186.368 22.656-248.896-62.528-62.464-173.952-52.352-248.96 22.656L444.16 353.6l-45.248-45.248 90.496-90.496c100.032-99.968 251.968-110.08 339.456-22.656 87.488 87.488 77.312 239.424-22.656 339.456l-90.496 90.496zm-90.496 90.496-90.496 90.496C434.624 906.112 282.688 916.224 195.2 828.8c-87.488-87.488-77.312-239.424 22.656-339.456l90.496-90.496 45.248 45.248-90.496 90.56c-75.008 74.944-85.12 186.368-22.656 248.896 62.528 62.464 173.952 52.352 248.96-22.656l90.496-90.496 45.248 45.248zm0-362.048 45.248 45.248L398.848 670.4 353.6 625.152 625.152 353.6z"},null,-1),GA=[qA];function KA(e,t,n,r,o,a){return g(),_("svg",WA,GA)}var YA=y(UA,[["render",KA],["__file","link.vue"]]),JA={name:"List"},XA={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ZA=p("path",{fill:"currentColor",d:"M704 192h160v736H160V192h160v64h384v-64zM288 512h448v-64H288v64zm0 256h448v-64H288v64zm96-576V96h256v96H384z"},null,-1),QA=[ZA];function eS(e,t,n,r,o,a){return g(),_("svg",XA,QA)}var tS=y(JA,[["render",eS],["__file","list.vue"]]),nS={name:"Loading"},rS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oS=p("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32zm0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32zm448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32zm-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32zM195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248zm452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248zM828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0zm-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0z"},null,-1),aS=[oS];function lS(e,t,n,r,o,a){return g(),_("svg",rS,aS)}let l3,s3,i3,c3;jr=y(nS,[["render",lS],["__file","loading.vue"]]),l3={name:"LocationFilled"},s3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},i3=p("path",{fill:"currentColor",d:"M512 928c23.936 0 117.504-68.352 192.064-153.152C803.456 661.888 864 535.808 864 416c0-189.632-155.84-320-352-320S160 226.368 160 416c0 120.32 60.544 246.4 159.936 359.232C394.432 859.84 488 928 512 928zm0-435.2a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 140.8a204.8 204.8 0 1 1 0-409.6 204.8 204.8 0 0 1 0 409.6z"},null,-1),c3=[i3];function sS(e,t,n,r,o,a){return g(),_("svg",s3,c3)}var iS=y(l3,[["render",sS],["__file","location-filled.vue"]]),cS={name:"LocationInformation"},uS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},fS=p("path",{fill:"currentColor",d:"M288 896h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),pS=p("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),dS=p("path",{fill:"currentColor",d:"M512 512a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm0 64a160 160 0 1 1 0-320 160 160 0 0 1 0 320z"},null,-1),hS=[fS,pS,dS];function vS(e,t,n,r,o,a){return g(),_("svg",uS,hS)}var mS=y(cS,[["render",vS],["__file","location-information.vue"]]),gS={name:"Location"},wS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_S=p("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),yS=p("path",{fill:"currentColor",d:"M512 512a96 96 0 1 0 0-192 96 96 0 0 0 0 192zm0 64a160 160 0 1 1 0-320 160 160 0 0 1 0 320z"},null,-1),bS=[_S,yS];function zS(e,t,n,r,o,a){return g(),_("svg",wS,bS)}var xS=y(gS,[["render",zS],["__file","location.vue"]]),CS={name:"Lock"},MS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},LS=p("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"},null,-1),HS=p("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"},null,-1),kS=[LS,HS];function ES(e,t,n,r,o,a){return g(),_("svg",MS,kS)}var AS=y(CS,[["render",ES],["__file","lock.vue"]]),SS={name:"Lollipop"},VS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},TS=p("path",{fill:"currentColor",d:"M513.28 448a64 64 0 1 1 76.544 49.728A96 96 0 0 0 768 448h64a160 160 0 0 1-320 0h1.28zm-126.976-29.696a256 256 0 1 0 43.52-180.48A256 256 0 0 1 832 448h-64a192 192 0 0 0-381.696-29.696zm105.664 249.472L285.696 874.048a96 96 0 0 1-135.68-135.744l206.208-206.272a320 320 0 1 1 135.744 135.744zm-54.464-36.032a321.92 321.92 0 0 1-45.248-45.248L195.2 783.552a32 32 0 1 0 45.248 45.248l197.056-197.12z"},null,-1),OS=[TS];function BS(e,t,n,r,o,a){return g(),_("svg",VS,OS)}var PS=y(SS,[["render",BS],["__file","lollipop.vue"]]),IS={name:"MagicStick"},FS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},NS=p("path",{fill:"currentColor",d:"M512 64h64v192h-64V64zm0 576h64v192h-64V640zM160 480v-64h192v64H160zm576 0v-64h192v64H736zM249.856 199.04l45.248-45.184L430.848 289.6 385.6 334.848 249.856 199.104zM657.152 606.4l45.248-45.248 135.744 135.744-45.248 45.248L657.152 606.4zM114.048 923.2 68.8 877.952l316.8-316.8 45.248 45.248-316.8 316.8zM702.4 334.848 657.152 289.6l135.744-135.744 45.248 45.248L702.4 334.848z"},null,-1),RS=[NS];function DS(e,t,n,r,o,a){return g(),_("svg",FS,RS)}var $S=y(IS,[["render",DS],["__file","magic-stick.vue"]]),jS={name:"Magnet"},US={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},WS=p("path",{fill:"currentColor",d:"M832 320V192H704v320a192 192 0 1 1-384 0V192H192v128h128v64H192v128a320 320 0 0 0 640 0V384H704v-64h128zM640 512V128h256v384a384 384 0 1 1-768 0V128h256v384a128 128 0 1 0 256 0z"},null,-1),qS=[WS];function GS(e,t,n,r,o,a){return g(),_("svg",US,qS)}var KS=y(jS,[["render",GS],["__file","magnet.vue"]]),YS={name:"Male"},JS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},XS=p("path",{fill:"currentColor",d:"M399.5 849.5a225 225 0 1 0 0-450 225 225 0 0 0 0 450zm0 56.25a281.25 281.25 0 1 1 0-562.5 281.25 281.25 0 0 1 0 562.5zm253.125-787.5h225q28.125 0 28.125 28.125T877.625 174.5h-225q-28.125 0-28.125-28.125t28.125-28.125z"},null,-1),ZS=p("path",{fill:"currentColor",d:"M877.625 118.25q28.125 0 28.125 28.125v225q0 28.125-28.125 28.125T849.5 371.375v-225q0-28.125 28.125-28.125z"},null,-1),QS=p("path",{fill:"currentColor",d:"M604.813 458.9 565.1 419.131l292.613-292.668 39.825 39.824z"},null,-1),eV=[XS,ZS,QS];function tV(e,t,n,r,o,a){return g(),_("svg",JS,eV)}var nV=y(YS,[["render",tV],["__file","male.vue"]]),rV={name:"Management"},oV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},aV=p("path",{fill:"currentColor",d:"M576 128v288l96-96 96 96V128h128v768H320V128h256zm-448 0h128v768H128V128z"},null,-1),lV=[aV];function sV(e,t,n,r,o,a){return g(),_("svg",oV,lV)}var iV=y(rV,[["render",sV],["__file","management.vue"]]),cV={name:"MapLocation"},uV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},fV=p("path",{fill:"currentColor",d:"M800 416a288 288 0 1 0-576 0c0 118.144 94.528 272.128 288 456.576C705.472 688.128 800 534.144 800 416zM512 960C277.312 746.688 160 565.312 160 416a352 352 0 0 1 704 0c0 149.312-117.312 330.688-352 544z"},null,-1),pV=p("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256zm345.6 192L960 960H672v-64H352v64H64l102.4-256h691.2zm-68.928 0H235.328l-76.8 192h706.944l-76.8-192z"},null,-1),dV=[fV,pV];function hV(e,t,n,r,o,a){return g(),_("svg",uV,dV)}var vV=y(cV,[["render",hV],["__file","map-location.vue"]]),mV={name:"Medal"},gV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wV=p("path",{fill:"currentColor",d:"M512 896a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),_V=p("path",{fill:"currentColor",d:"M576 128H448v200a286.72 286.72 0 0 1 64-8c19.52 0 40.832 2.688 64 8V128zm64 0v219.648c24.448 9.088 50.56 20.416 78.4 33.92L757.44 128H640zm-256 0H266.624l39.04 253.568c27.84-13.504 53.888-24.832 78.336-33.92V128zM229.312 64h565.376a32 32 0 0 1 31.616 36.864L768 480c-113.792-64-199.104-96-256-96-56.896 0-142.208 32-256 96l-58.304-379.136A32 32 0 0 1 229.312 64z"},null,-1),yV=[wV,_V];function bV(e,t,n,r,o,a){return g(),_("svg",gV,yV)}var zV=y(mV,[["render",bV],["__file","medal.vue"]]),xV={name:"Memo"},CV={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},MV=p("path",{fill:"currentColor",d:"M480 320h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32z"},null,-1),LV=p("path",{fill:"currentColor",d:"M887.01 72.99C881.01 67 873.34 64 864 64H160c-9.35 0-17.02 3-23.01 8.99C131 78.99 128 86.66 128 96v832c0 9.35 2.99 17.02 8.99 23.01S150.66 960 160 960h704c9.35 0 17.02-2.99 23.01-8.99S896 937.34 896 928V96c0-9.35-3-17.02-8.99-23.01zM192 896V128h96v768h-96zm640 0H352V128h480v768z"},null,-1),HV=p("path",{fill:"currentColor",d:"M480 512h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32zm0 192h192c21.33 0 32-10.67 32-32s-10.67-32-32-32H480c-21.33 0-32 10.67-32 32s10.67 32 32 32z"},null,-1),kV=[MV,LV,HV];function EV(e,t,n,r,o,a){return g(),_("svg",CV,kV)}var AV=y(xV,[["render",EV],["__file","memo.vue"]]),SV={name:"Menu"},VV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},TV=p("path",{fill:"currentColor",d:"M160 448a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32H160zm448 0a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32H608zM160 896a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32H160zm448 0a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32H608z"},null,-1),OV=[TV];function BV(e,t,n,r,o,a){return g(),_("svg",VV,OV)}var PV=y(SV,[["render",BV],["__file","menu.vue"]]),IV={name:"MessageBox"},FV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},NV=p("path",{fill:"currentColor",d:"M288 384h448v64H288v-64zm96-128h256v64H384v-64zM131.456 512H384v128h256V512h252.544L721.856 192H302.144L131.456 512zM896 576H704v128H320V576H128v256h768V576zM275.776 128h472.448a32 32 0 0 1 28.608 17.664l179.84 359.552A32 32 0 0 1 960 519.552V864a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V519.552a32 32 0 0 1 3.392-14.336l179.776-359.552A32 32 0 0 1 275.776 128z"},null,-1),RV=[NV];function DV(e,t,n,r,o,a){return g(),_("svg",FV,RV)}var $V=y(IV,[["render",DV],["__file","message-box.vue"]]),jV={name:"Message"},UV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},WV=p("path",{fill:"currentColor",d:"M128 224v512a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V224H128zm0-64h768a64 64 0 0 1 64 64v512a128 128 0 0 1-128 128H192A128 128 0 0 1 64 736V224a64 64 0 0 1 64-64z"},null,-1),qV=p("path",{fill:"currentColor",d:"M904 224 656.512 506.88a192 192 0 0 1-289.024 0L120 224h784zm-698.944 0 210.56 240.704a128 128 0 0 0 192.704 0L818.944 224H205.056z"},null,-1),GV=[WV,qV];function KV(e,t,n,r,o,a){return g(),_("svg",UV,GV)}var YV=y(jV,[["render",KV],["__file","message.vue"]]),JV={name:"Mic"},XV={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ZV=p("path",{fill:"currentColor",d:"M480 704h160a64 64 0 0 0 64-64v-32h-96a32 32 0 0 1 0-64h96v-96h-96a32 32 0 0 1 0-64h96v-96h-96a32 32 0 0 1 0-64h96v-32a64 64 0 0 0-64-64H384a64 64 0 0 0-64 64v32h96a32 32 0 0 1 0 64h-96v96h96a32 32 0 0 1 0 64h-96v96h96a32 32 0 0 1 0 64h-96v32a64 64 0 0 0 64 64h96zm64 64v128h192a32 32 0 1 1 0 64H288a32 32 0 1 1 0-64h192V768h-96a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64h256a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128h-96z"},null,-1),QV=[ZV];function eT(e,t,n,r,o,a){return g(),_("svg",XV,QV)}var tT=y(JV,[["render",eT],["__file","mic.vue"]]),nT={name:"Microphone"},rT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oT=p("path",{fill:"currentColor",d:"M512 128a128 128 0 0 0-128 128v256a128 128 0 1 0 256 0V256a128 128 0 0 0-128-128zm0-64a192 192 0 0 1 192 192v256a192 192 0 1 1-384 0V256A192 192 0 0 1 512 64zm-32 832v-64a288 288 0 0 1-288-288v-32a32 32 0 0 1 64 0v32a224 224 0 0 0 224 224h64a224 224 0 0 0 224-224v-32a32 32 0 1 1 64 0v32a288 288 0 0 1-288 288v64h64a32 32 0 1 1 0 64H416a32 32 0 1 1 0-64h64z"},null,-1),aT=[oT];function lT(e,t,n,r,o,a){return g(),_("svg",rT,aT)}var sT=y(nT,[["render",lT],["__file","microphone.vue"]]),iT={name:"MilkTea"},cT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uT=p("path",{fill:"currentColor",d:"M416 128V96a96 96 0 0 1 96-96h128a32 32 0 1 1 0 64H512a32 32 0 0 0-32 32v32h320a96 96 0 0 1 11.712 191.296l-39.68 581.056A64 64 0 0 1 708.224 960H315.776a64 64 0 0 1-63.872-59.648l-39.616-581.056A96 96 0 0 1 224 128h192zM276.48 320l39.296 576h392.448l4.8-70.784a224.064 224.064 0 0 1 30.016-439.808L747.52 320H276.48zM224 256h576a32 32 0 1 0 0-64H224a32 32 0 0 0 0 64zm493.44 503.872 21.12-309.12a160 160 0 0 0-21.12 309.12z"},null,-1),fT=[uT];function pT(e,t,n,r,o,a){return g(),_("svg",cT,fT)}var dT=y(iT,[["render",pT],["__file","milk-tea.vue"]]),hT={name:"Minus"},vT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mT=p("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64z"},null,-1),gT=[mT];function wT(e,t,n,r,o,a){return g(),_("svg",vT,gT)}var _T=y(hT,[["render",wT],["__file","minus.vue"]]),yT={name:"Money"},bT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},zT=p("path",{fill:"currentColor",d:"M256 640v192h640V384H768v-64h150.976c14.272 0 19.456 1.472 24.64 4.288a29.056 29.056 0 0 1 12.16 12.096c2.752 5.184 4.224 10.368 4.224 24.64v493.952c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H233.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096c-2.688-5.184-4.224-10.368-4.224-24.576V640h64z"},null,-1),xT=p("path",{fill:"currentColor",d:"M768 192H128v448h640V192zm64-22.976v493.952c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H105.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096C65.536 682.432 64 677.248 64 663.04V169.024c0-14.272 1.472-19.456 4.288-24.64a29.056 29.056 0 0 1 12.096-12.16C85.568 129.536 90.752 128 104.96 128h685.952c14.272 0 19.456 1.472 24.64 4.288a29.056 29.056 0 0 1 12.16 12.096c2.752 5.184 4.224 10.368 4.224 24.64z"},null,-1),CT=p("path",{fill:"currentColor",d:"M448 576a160 160 0 1 1 0-320 160 160 0 0 1 0 320zm0-64a96 96 0 1 0 0-192 96 96 0 0 0 0 192z"},null,-1),MT=[zT,xT,CT];function LT(e,t,n,r,o,a){return g(),_("svg",bT,MT)}var HT=y(yT,[["render",LT],["__file","money.vue"]]),kT={name:"Monitor"},ET={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},AT=p("path",{fill:"currentColor",d:"M544 768v128h192a32 32 0 1 1 0 64H288a32 32 0 1 1 0-64h192V768H192A128 128 0 0 1 64 640V256a128 128 0 0 1 128-128h640a128 128 0 0 1 128 128v384a128 128 0 0 1-128 128H544zM192 192a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V256a64 64 0 0 0-64-64H192z"},null,-1),ST=[AT];function VT(e,t,n,r,o,a){return g(),_("svg",ET,ST)}var TT=y(kT,[["render",VT],["__file","monitor.vue"]]),OT={name:"MoonNight"},BT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},PT=p("path",{fill:"currentColor",d:"M384 512a448 448 0 0 1 215.872-383.296A384 384 0 0 0 213.76 640h188.8A448.256 448.256 0 0 1 384 512zM171.136 704a448 448 0 0 1 636.992-575.296A384 384 0 0 0 499.328 704h-328.32z"},null,-1),IT=p("path",{fill:"currentColor",d:"M32 640h960q32 0 32 32t-32 32H32q-32 0-32-32t32-32zm128 128h384a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm160 127.68 224 .256a32 32 0 0 1 32 32V928a32 32 0 0 1-32 32l-224-.384a32 32 0 0 1-32-32v-.064a32 32 0 0 1 32-32z"},null,-1),FT=[PT,IT];function NT(e,t,n,r,o,a){return g(),_("svg",BT,FT)}var RT=y(OT,[["render",NT],["__file","moon-night.vue"]]),DT={name:"Moon"},$T={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jT=p("path",{fill:"currentColor",d:"M240.448 240.448a384 384 0 1 0 559.424 525.696 448 448 0 0 1-542.016-542.08 390.592 390.592 0 0 0-17.408 16.384zm181.056 362.048a384 384 0 0 0 525.632 16.384A448 448 0 1 1 405.056 76.8a384 384 0 0 0 16.448 525.696z"},null,-1),UT=[jT];function WT(e,t,n,r,o,a){return g(),_("svg",$T,UT)}var qT=y(DT,[["render",WT],["__file","moon.vue"]]),GT={name:"MoreFilled"},KT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},YT=p("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224z"},null,-1),JT=[YT];function XT(e,t,n,r,o,a){return g(),_("svg",KT,JT)}let u3,f3,p3,d3;U1=y(GT,[["render",XT],["__file","more-filled.vue"]]),u3={name:"More"},f3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},p3=p("path",{fill:"currentColor",d:"M176 416a112 112 0 1 0 0 224 112 112 0 0 0 0-224m0 64a48 48 0 1 1 0 96 48 48 0 0 1 0-96zm336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96zm336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224zm0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96z"},null,-1),d3=[p3];function ZT(e,t,n,r,o,a){return g(),_("svg",f3,d3)}let h3,v3,m3,g3;cl=y(u3,[["render",ZT],["__file","more.vue"]]),h3={name:"MostlyCloudy"},v3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},m3=p("path",{fill:"currentColor",d:"M737.216 357.952 704 349.824l-11.776-32a192.064 192.064 0 0 0-367.424 23.04l-8.96 39.04-39.04 8.96A192.064 192.064 0 0 0 320 768h368a207.808 207.808 0 0 0 207.808-208 208.32 208.32 0 0 0-158.592-202.048zm15.168-62.208A272.32 272.32 0 0 1 959.744 560a271.808 271.808 0 0 1-271.552 272H320a256 256 0 0 1-57.536-505.536 256.128 256.128 0 0 1 489.92-30.72z"},null,-1),g3=[m3];function QT(e,t,n,r,o,a){return g(),_("svg",v3,g3)}var eO=y(h3,[["render",QT],["__file","mostly-cloudy.vue"]]),tO={name:"Mouse"},nO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},rO=p("path",{fill:"currentColor",d:"M438.144 256c-68.352 0-92.736 4.672-117.76 18.112-20.096 10.752-35.52 26.176-46.272 46.272C260.672 345.408 256 369.792 256 438.144v275.712c0 68.352 4.672 92.736 18.112 117.76 10.752 20.096 26.176 35.52 46.272 46.272C345.408 891.328 369.792 896 438.144 896h147.712c68.352 0 92.736-4.672 117.76-18.112 20.096-10.752 35.52-26.176 46.272-46.272C763.328 806.592 768 782.208 768 713.856V438.144c0-68.352-4.672-92.736-18.112-117.76a110.464 110.464 0 0 0-46.272-46.272C678.592 260.672 654.208 256 585.856 256H438.144zm0-64h147.712c85.568 0 116.608 8.96 147.904 25.6 31.36 16.768 55.872 41.344 72.576 72.64C823.104 321.536 832 352.576 832 438.08v275.84c0 85.504-8.96 116.544-25.6 147.84a174.464 174.464 0 0 1-72.64 72.576C702.464 951.104 671.424 960 585.92 960H438.08c-85.504 0-116.544-8.96-147.84-25.6a174.464 174.464 0 0 1-72.64-72.704c-16.768-31.296-25.664-62.336-25.664-147.84v-275.84c0-85.504 8.96-116.544 25.6-147.84a174.464 174.464 0 0 1 72.768-72.576c31.232-16.704 62.272-25.6 147.776-25.6z"},null,-1),oO=p("path",{fill:"currentColor",d:"M512 320q32 0 32 32v128q0 32-32 32t-32-32V352q0-32 32-32zm32-96a32 32 0 0 1-64 0v-64a32 32 0 0 0-32-32h-96a32 32 0 0 1 0-64h96a96 96 0 0 1 96 96v64z"},null,-1),aO=[rO,oO];function lO(e,t,n,r,o,a){return g(),_("svg",nO,aO)}var sO=y(tO,[["render",lO],["__file","mouse.vue"]]),iO={name:"Mug"},cO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},uO=p("path",{fill:"currentColor",d:"M736 800V160H160v640a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64zm64-544h63.552a96 96 0 0 1 96 96v224a96 96 0 0 1-96 96H800v128a128 128 0 0 1-128 128H224A128 128 0 0 1 96 800V128a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v128zm0 64v288h63.552a32 32 0 0 0 32-32V352a32 32 0 0 0-32-32H800z"},null,-1),fO=[uO];function pO(e,t,n,r,o,a){return g(),_("svg",cO,fO)}var dO=y(iO,[["render",pO],["__file","mug.vue"]]),hO={name:"MuteNotification"},vO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},mO=p("path",{fill:"currentColor",d:"m241.216 832 63.616-64H768V448c0-42.368-10.24-82.304-28.48-117.504l46.912-47.232C815.36 331.392 832 387.84 832 448v320h96a32 32 0 1 1 0 64H241.216zm-90.24 0H96a32 32 0 1 1 0-64h96V448a320.128 320.128 0 0 1 256-313.6V128a64 64 0 1 1 128 0v6.4a319.552 319.552 0 0 1 171.648 97.088l-45.184 45.44A256 256 0 0 0 256 448v278.336L151.04 832zM448 896h128a64 64 0 0 1-128 0z"},null,-1),gO=p("path",{fill:"currentColor",d:"M150.72 859.072a32 32 0 0 1-45.44-45.056l704-708.544a32 32 0 0 1 45.44 45.056l-704 708.544z"},null,-1),wO=[mO,gO];function _O(e,t,n,r,o,a){return g(),_("svg",vO,wO)}var yO=y(hO,[["render",_O],["__file","mute-notification.vue"]]),bO={name:"Mute"},zO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},xO=p("path",{fill:"currentColor",d:"m412.16 592.128-45.44 45.44A191.232 191.232 0 0 1 320 512V256a192 192 0 1 1 384 0v44.352l-64 64V256a128 128 0 1 0-256 0v256c0 30.336 10.56 58.24 28.16 80.128zm51.968 38.592A128 128 0 0 0 640 512v-57.152l64-64V512a192 192 0 0 1-287.68 166.528l47.808-47.808zM314.88 779.968l46.144-46.08A222.976 222.976 0 0 0 480 768h64a224 224 0 0 0 224-224v-32a32 32 0 1 1 64 0v32a288 288 0 0 1-288 288v64h64a32 32 0 1 1 0 64H416a32 32 0 1 1 0-64h64v-64c-61.44 0-118.4-19.2-165.12-52.032zM266.752 737.6A286.976 286.976 0 0 1 192 544v-32a32 32 0 0 1 64 0v32c0 56.832 21.184 108.8 56.064 148.288L266.752 737.6z"},null,-1),CO=p("path",{fill:"currentColor",d:"M150.72 859.072a32 32 0 0 1-45.44-45.056l704-708.544a32 32 0 0 1 45.44 45.056l-704 708.544z"},null,-1),MO=[xO,CO];function LO(e,t,n,r,o,a){return g(),_("svg",zO,MO)}var HO=y(bO,[["render",LO],["__file","mute.vue"]]),kO={name:"NoSmoking"},EO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},AO=p("path",{fill:"currentColor",d:"M440.256 576H256v128h56.256l-64 64H224a32 32 0 0 1-32-32V544a32 32 0 0 1 32-32h280.256l-64 64zm143.488 128H704V583.744L775.744 512H928a32 32 0 0 1 32 32v192a32 32 0 0 1-32 32H519.744l64-64zM768 576v128h128V576H768zm-29.696-207.552 45.248 45.248-497.856 497.856-45.248-45.248zM256 64h64v320h-64zM128 192h64v192h-64zM64 512h64v256H64z"},null,-1),SO=[AO];function VO(e,t,n,r,o,a){return g(),_("svg",EO,SO)}var TO=y(kO,[["render",VO],["__file","no-smoking.vue"]]),OO={name:"Notebook"},BO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},PO=p("path",{fill:"currentColor",d:"M192 128v768h640V128H192zm-32-64h704a32 32 0 0 1 32 32v832a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),IO=p("path",{fill:"currentColor",d:"M672 128h64v768h-64zM96 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm0 192h128q32 0 32 32t-32 32H96q-32 0-32-32t32-32z"},null,-1),FO=[PO,IO];function NO(e,t,n,r,o,a){return g(),_("svg",BO,FO)}var RO=y(OO,[["render",NO],["__file","notebook.vue"]]),DO={name:"Notification"},$O={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jO=p("path",{fill:"currentColor",d:"M512 128v64H256a64 64 0 0 0-64 64v512a64 64 0 0 0 64 64h512a64 64 0 0 0 64-64V512h64v256a128 128 0 0 1-128 128H256a128 128 0 0 1-128-128V256a128 128 0 0 1 128-128h256z"},null,-1),UO=p("path",{fill:"currentColor",d:"M768 384a128 128 0 1 0 0-256 128 128 0 0 0 0 256zm0 64a192 192 0 1 1 0-384 192 192 0 0 1 0 384z"},null,-1),WO=[jO,UO];function qO(e,t,n,r,o,a){return g(),_("svg",$O,WO)}var GO=y(DO,[["render",qO],["__file","notification.vue"]]),KO={name:"Odometer"},YO={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},JO=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),XO=p("path",{fill:"currentColor",d:"M192 512a320 320 0 1 1 640 0 32 32 0 1 1-64 0 256 256 0 1 0-512 0 32 32 0 0 1-64 0z"},null,-1),ZO=p("path",{fill:"currentColor",d:"M570.432 627.84A96 96 0 1 1 509.568 608l60.992-187.776A32 32 0 1 1 631.424 440l-60.992 187.776zM502.08 734.464a32 32 0 1 0 19.84-60.928 32 32 0 0 0-19.84 60.928z"},null,-1),QO=[JO,XO,ZO];function eB(e,t,n,r,o,a){return g(),_("svg",YO,QO)}var tB=y(KO,[["render",eB],["__file","odometer.vue"]]),nB={name:"OfficeBuilding"},rB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},oB=p("path",{fill:"currentColor",d:"M192 128v704h384V128H192zm-32-64h448a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),aB=p("path",{fill:"currentColor",d:"M256 256h256v64H256v-64zm0 192h256v64H256v-64zm0 192h256v64H256v-64zm384-128h128v64H640v-64zm0 128h128v64H640v-64zM64 832h896v64H64v-64z"},null,-1),lB=p("path",{fill:"currentColor",d:"M640 384v448h192V384H640zm-32-64h256a32 32 0 0 1 32 32v512a32 32 0 0 1-32 32H608a32 32 0 0 1-32-32V352a32 32 0 0 1 32-32z"},null,-1),sB=[oB,aB,lB];function iB(e,t,n,r,o,a){return g(),_("svg",rB,sB)}var cB=y(nB,[["render",iB],["__file","office-building.vue"]]),uB={name:"Open"},fB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},pB=p("path",{fill:"currentColor",d:"M329.956 257.138a254.862 254.862 0 0 0 0 509.724h364.088a254.862 254.862 0 0 0 0-509.724H329.956zm0-72.818h364.088a327.68 327.68 0 1 1 0 655.36H329.956a327.68 327.68 0 1 1 0-655.36z"},null,-1),dB=p("path",{fill:"currentColor",d:"M694.044 621.227a109.227 109.227 0 1 0 0-218.454 109.227 109.227 0 0 0 0 218.454zm0 72.817a182.044 182.044 0 1 1 0-364.088 182.044 182.044 0 0 1 0 364.088z"},null,-1),hB=[pB,dB];function vB(e,t,n,r,o,a){return g(),_("svg",fB,hB)}var mB=y(uB,[["render",vB],["__file","open.vue"]]),gB={name:"Operation"},wB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_B=p("path",{fill:"currentColor",d:"M389.44 768a96.064 96.064 0 0 1 181.12 0H896v64H570.56a96.064 96.064 0 0 1-181.12 0H128v-64h261.44zm192-288a96.064 96.064 0 0 1 181.12 0H896v64H762.56a96.064 96.064 0 0 1-181.12 0H128v-64h453.44zm-320-288a96.064 96.064 0 0 1 181.12 0H896v64H442.56a96.064 96.064 0 0 1-181.12 0H128v-64h133.44z"},null,-1),yB=[_B];function bB(e,t,n,r,o,a){return g(),_("svg",wB,yB)}var zB=y(gB,[["render",bB],["__file","operation.vue"]]),xB={name:"Opportunity"},CB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},MB=p("path",{fill:"currentColor",d:"M384 960v-64h192.064v64H384zm448-544a350.656 350.656 0 0 1-128.32 271.424C665.344 719.04 640 763.776 640 813.504V832H320v-14.336c0-48-19.392-95.36-57.216-124.992a351.552 351.552 0 0 1-128.448-344.256c25.344-136.448 133.888-248.128 269.76-276.48A352.384 352.384 0 0 1 832 416zm-544 32c0-132.288 75.904-224 192-224v-64c-154.432 0-256 122.752-256 288h64z"},null,-1),LB=[MB];function HB(e,t,n,r,o,a){return g(),_("svg",CB,LB)}var kB=y(xB,[["render",HB],["__file","opportunity.vue"]]),EB={name:"Orange"},AB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},SB=p("path",{fill:"currentColor",d:"M544 894.72a382.336 382.336 0 0 0 215.936-89.472L577.024 622.272c-10.24 6.016-21.248 10.688-33.024 13.696v258.688zm261.248-134.784A382.336 382.336 0 0 0 894.656 544H635.968c-3.008 11.776-7.68 22.848-13.696 33.024l182.976 182.912zM894.656 480a382.336 382.336 0 0 0-89.408-215.936L622.272 446.976c6.016 10.24 10.688 21.248 13.696 33.024h258.688zm-134.72-261.248A382.336 382.336 0 0 0 544 129.344v258.688c11.776 3.008 22.848 7.68 33.024 13.696l182.912-182.976zM480 129.344a382.336 382.336 0 0 0-215.936 89.408l182.912 182.976c10.24-6.016 21.248-10.688 33.024-13.696V129.344zm-261.248 134.72A382.336 382.336 0 0 0 129.344 480h258.688c3.008-11.776 7.68-22.848 13.696-33.024L218.752 264.064zM129.344 544a382.336 382.336 0 0 0 89.408 215.936l182.976-182.912A127.232 127.232 0 0 1 388.032 544H129.344zm134.72 261.248A382.336 382.336 0 0 0 480 894.656V635.968a127.232 127.232 0 0 1-33.024-13.696L264.064 805.248zM512 960a448 448 0 1 1 0-896 448 448 0 0 1 0 896zm0-384a64 64 0 1 0 0-128 64 64 0 0 0 0 128z"},null,-1),VB=[SB];function TB(e,t,n,r,o,a){return g(),_("svg",AB,VB)}var OB=y(EB,[["render",TB],["__file","orange.vue"]]),BB={name:"Paperclip"},PB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},IB=p("path",{fill:"currentColor",d:"M602.496 240.448A192 192 0 1 1 874.048 512l-316.8 316.8A256 256 0 0 1 195.2 466.752L602.496 59.456l45.248 45.248L240.448 512A192 192 0 0 0 512 783.552l316.8-316.8a128 128 0 1 0-181.056-181.056L353.6 579.904a32 32 0 1 0 45.248 45.248l294.144-294.144 45.312 45.248L444.096 670.4a96 96 0 1 1-135.744-135.744l294.144-294.208z"},null,-1),FB=[IB];function NB(e,t,n,r,o,a){return g(),_("svg",PB,FB)}var RB=y(BB,[["render",NB],["__file","paperclip.vue"]]),DB={name:"PartlyCloudy"},$B={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},jB=p("path",{fill:"currentColor",d:"M598.4 895.872H328.192a256 256 0 0 1-34.496-510.528A352 352 0 1 1 598.4 895.872zm-271.36-64h272.256a288 288 0 1 0-248.512-417.664L335.04 445.44l-34.816 3.584a192 192 0 0 0 26.88 382.848z"},null,-1),UB=p("path",{fill:"currentColor",d:"M139.84 501.888a256 256 0 1 1 417.856-277.12c-17.728 2.176-38.208 8.448-61.504 18.816A192 192 0 1 0 189.12 460.48a6003.84 6003.84 0 0 0-49.28 41.408z"},null,-1),WB=[jB,UB];function qB(e,t,n,r,o,a){return g(),_("svg",$B,WB)}var GB=y(DB,[["render",qB],["__file","partly-cloudy.vue"]]),KB={name:"Pear"},YB={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},JB=p("path",{fill:"currentColor",d:"M542.336 258.816a443.255 443.255 0 0 0-9.024 25.088 32 32 0 1 1-60.8-20.032l1.088-3.328a162.688 162.688 0 0 0-122.048 131.392l-17.088 102.72-20.736 15.36C256.192 552.704 224 610.88 224 672c0 120.576 126.4 224 288 224s288-103.424 288-224c0-61.12-32.192-119.296-89.728-161.92l-20.736-15.424-17.088-102.72a162.688 162.688 0 0 0-130.112-133.12zm-40.128-66.56c7.936-15.552 16.576-30.08 25.92-43.776 23.296-33.92 49.408-59.776 78.528-77.12a32 32 0 1 1 32.704 55.04c-20.544 12.224-40.064 31.552-58.432 58.304a316.608 316.608 0 0 0-9.792 15.104 226.688 226.688 0 0 1 164.48 181.568l12.8 77.248C819.456 511.36 864 587.392 864 672c0 159.04-157.568 288-352 288S160 831.04 160 672c0-84.608 44.608-160.64 115.584-213.376l12.8-77.248a226.624 226.624 0 0 1 213.76-189.184z"},null,-1),XB=[JB];function ZB(e,t,n,r,o,a){return g(),_("svg",YB,XB)}var QB=y(KB,[["render",ZB],["__file","pear.vue"]]),eP={name:"PhoneFilled"},tP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},nP=p("path",{fill:"currentColor",d:"M199.232 125.568 90.624 379.008a32 32 0 0 0 6.784 35.2l512.384 512.384a32 32 0 0 0 35.2 6.784l253.44-108.608a32 32 0 0 0 10.048-52.032L769.6 633.92a32 32 0 0 0-36.928-5.952l-130.176 65.088-271.488-271.552 65.024-130.176a32 32 0 0 0-5.952-36.928L251.2 115.52a32 32 0 0 0-51.968 10.048z"},null,-1),rP=[nP];function oP(e,t,n,r,o,a){return g(),_("svg",tP,rP)}var aP=y(eP,[["render",oP],["__file","phone-filled.vue"]]),lP={name:"Phone"},sP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},iP=p("path",{fill:"currentColor",d:"M79.36 432.256 591.744 944.64a32 32 0 0 0 35.2 6.784l253.44-108.544a32 32 0 0 0 9.984-52.032l-153.856-153.92a32 32 0 0 0-36.928-6.016l-69.888 34.944L358.08 394.24l35.008-69.888a32 32 0 0 0-5.952-36.928L233.152 133.568a32 32 0 0 0-52.032 10.048L72.512 397.056a32 32 0 0 0 6.784 35.2zm60.48-29.952 81.536-190.08L325.568 316.48l-24.64 49.216-20.608 41.216 32.576 32.64 271.552 271.552 32.64 32.64 41.216-20.672 49.28-24.576 104.192 104.128-190.08 81.472L139.84 402.304zM512 320v-64a256 256 0 0 1 256 256h-64a192 192 0 0 0-192-192zm0-192V64a448 448 0 0 1 448 448h-64a384 384 0 0 0-384-384z"},null,-1),cP=[iP];function uP(e,t,n,r,o,a){return g(),_("svg",sP,cP)}var fP=y(lP,[["render",uP],["__file","phone.vue"]]),pP={name:"PictureFilled"},dP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},hP=p("path",{fill:"currentColor",d:"M96 896a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h832a32 32 0 0 1 32 32v704a32 32 0 0 1-32 32H96zm315.52-228.48-68.928-68.928a32 32 0 0 0-45.248 0L128 768.064h778.688l-242.112-290.56a32 32 0 0 0-49.216 0L458.752 665.408a32 32 0 0 1-47.232 2.112zM256 384a96 96 0 1 0 192.064-.064A96 96 0 0 0 256 384z"},null,-1),vP=[hP];function mP(e,t,n,r,o,a){return g(),_("svg",dP,vP)}var gP=y(pP,[["render",mP],["__file","picture-filled.vue"]]),wP={name:"PictureRounded"},_P={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},yP=p("path",{fill:"currentColor",d:"M512 128a384 384 0 1 0 0 768 384 384 0 0 0 0-768zm0-64a448 448 0 1 1 0 896 448 448 0 0 1 0-896z"},null,-1),bP=p("path",{fill:"currentColor",d:"M640 288q64 0 64 64t-64 64q-64 0-64-64t64-64zM214.656 790.656l-45.312-45.312 185.664-185.6a96 96 0 0 1 123.712-10.24l138.24 98.688a32 32 0 0 0 39.872-2.176L906.688 422.4l42.624 47.744L699.52 693.696a96 96 0 0 1-119.808 6.592l-138.24-98.752a32 32 0 0 0-41.152 3.456l-185.664 185.6z"},null,-1),zP=[yP,bP];function xP(e,t,n,r,o,a){return g(),_("svg",_P,zP)}var CP=y(wP,[["render",xP],["__file","picture-rounded.vue"]]),MP={name:"Picture"},LP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},HP=p("path",{fill:"currentColor",d:"M160 160v704h704V160H160zm-32-64h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32z"},null,-1),kP=p("path",{fill:"currentColor",d:"M384 288q64 0 64 64t-64 64q-64 0-64-64t64-64zM185.408 876.992l-50.816-38.912L350.72 556.032a96 96 0 0 1 134.592-17.856l1.856 1.472 122.88 99.136a32 32 0 0 0 44.992-4.864l216-269.888 49.92 39.936-215.808 269.824-.256.32a96 96 0 0 1-135.04 14.464l-122.88-99.072-.64-.512a32 32 0 0 0-44.8 5.952L185.408 876.992z"},null,-1),EP=[HP,kP];function AP(e,t,n,r,o,a){return g(),_("svg",LP,EP)}var SP=y(MP,[["render",AP],["__file","picture.vue"]]),VP={name:"PieChart"},TP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},OP=p("path",{fill:"currentColor",d:"M448 68.48v64.832A384.128 384.128 0 0 0 512 896a384.128 384.128 0 0 0 378.688-320h64.768A448.128 448.128 0 0 1 64 512 448.128 448.128 0 0 1 448 68.48z"},null,-1),BP=p("path",{fill:"currentColor",d:"M576 97.28V448h350.72A384.064 384.064 0 0 0 576 97.28zM512 64V33.152A448 448 0 0 1 990.848 512H512V64z"},null,-1),PP=[OP,BP];function IP(e,t,n,r,o,a){return g(),_("svg",TP,PP)}var FP=y(VP,[["render",IP],["__file","pie-chart.vue"]]),NP={name:"Place"},RP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},DP=p("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512z"},null,-1),$P=p("path",{fill:"currentColor",d:"M512 512a32 32 0 0 1 32 32v256a32 32 0 1 1-64 0V544a32 32 0 0 1 32-32z"},null,-1),jP=p("path",{fill:"currentColor",d:"M384 649.088v64.96C269.76 732.352 192 771.904 192 800c0 37.696 139.904 96 320 96s320-58.304 320-96c0-28.16-77.76-67.648-192-85.952v-64.96C789.12 671.04 896 730.368 896 800c0 88.32-171.904 160-384 160s-384-71.68-384-160c0-69.696 106.88-128.96 256-150.912z"},null,-1),UP=[DP,$P,jP];function WP(e,t,n,r,o,a){return g(),_("svg",RP,UP)}var qP=y(NP,[["render",WP],["__file","place.vue"]]),GP={name:"Platform"},KP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},YP=p("path",{fill:"currentColor",d:"M448 832v-64h128v64h192v64H256v-64h192zM128 704V128h768v576H128z"},null,-1),JP=[YP];function XP(e,t,n,r,o,a){return g(),_("svg",KP,JP)}var ZP=y(GP,[["render",XP],["__file","platform.vue"]]),QP={name:"Plus"},eI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},tI=p("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"},null,-1),nI=[tI];function rI(e,t,n,r,o,a){return g(),_("svg",eI,nI)}var oI=y(QP,[["render",rI],["__file","plus.vue"]]),aI={name:"Pointer"},lI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},sI=p("path",{fill:"currentColor",d:"M511.552 128c-35.584 0-64.384 28.8-64.384 64.448v516.48L274.048 570.88a94.272 94.272 0 0 0-112.896-3.456 44.416 44.416 0 0 0-8.96 62.208L332.8 870.4A64 64 0 0 0 384 896h512V575.232a64 64 0 0 0-45.632-61.312l-205.952-61.76A96 96 0 0 1 576 360.192V192.448C576 156.8 547.2 128 511.552 128zM359.04 556.8l24.128 19.2V192.448a128.448 128.448 0 1 1 256.832 0v167.744a32 32 0 0 0 22.784 30.656l206.016 61.76A128 128 0 0 1 960 575.232V896a64 64 0 0 1-64 64H384a128 128 0 0 1-102.4-51.2L101.056 668.032A108.416 108.416 0 0 1 128 512.512a158.272 158.272 0 0 1 185.984 8.32L359.04 556.8z"},null,-1),iI=[sI];function cI(e,t,n,r,o,a){return g(),_("svg",lI,iI)}var uI=y(aI,[["render",cI],["__file","pointer.vue"]]),fI={name:"Position"},pI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},dI=p("path",{fill:"currentColor",d:"m249.6 417.088 319.744 43.072 39.168 310.272L845.12 178.88 249.6 417.088zm-129.024 47.168a32 32 0 0 1-7.68-61.44l777.792-311.04a32 32 0 0 1 41.6 41.6l-310.336 775.68a32 32 0 0 1-61.44-7.808L512 516.992l-391.424-52.736z"},null,-1),hI=[dI];function vI(e,t,n,r,o,a){return g(),_("svg",pI,hI)}var mI=y(fI,[["render",vI],["__file","position.vue"]]),gI={name:"Postcard"},wI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_I=p("path",{fill:"currentColor",d:"M160 224a32 32 0 0 0-32 32v512a32 32 0 0 0 32 32h704a32 32 0 0 0 32-32V256a32 32 0 0 0-32-32H160zm0-64h704a96 96 0 0 1 96 96v512a96 96 0 0 1-96 96H160a96 96 0 0 1-96-96V256a96 96 0 0 1 96-96z"},null,-1),yI=p("path",{fill:"currentColor",d:"M704 320a64 64 0 1 1 0 128 64 64 0 0 1 0-128zM288 448h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32zm0 128h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),bI=[_I,yI];function zI(e,t,n,r,o,a){return g(),_("svg",wI,bI)}var xI=y(gI,[["render",zI],["__file","postcard.vue"]]),CI={name:"Pouring"},MI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},LI=p("path",{fill:"currentColor",d:"m739.328 291.328-35.2-6.592-12.8-33.408a192.064 192.064 0 0 0-365.952 23.232l-9.92 40.896-41.472 7.04a176.32 176.32 0 0 0-146.24 173.568c0 97.28 78.72 175.936 175.808 175.936h400a192 192 0 0 0 35.776-380.672zM959.552 480a256 256 0 0 1-256 256h-400A239.808 239.808 0 0 1 63.744 496.192a240.32 240.32 0 0 1 199.488-236.8 256.128 256.128 0 0 1 487.872-30.976A256.064 256.064 0 0 1 959.552 480zM224 800a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32zm192 0a32 32 0 0 1 32 32v96a32 32 0 1 1-64 0v-96a32 32 0 0 1 32-32z"},null,-1),HI=[LI];function kI(e,t,n,r,o,a){return g(),_("svg",MI,HI)}var EI=y(CI,[["render",kI],["__file","pouring.vue"]]),AI={name:"Present"},SI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},VI=p("path",{fill:"currentColor",d:"M480 896V640H192v-64h288V320H192v576h288zm64 0h288V320H544v256h288v64H544v256zM128 256h768v672a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V256z"},null,-1),TI=p("path",{fill:"currentColor",d:"M96 256h832q32 0 32 32t-32 32H96q-32 0-32-32t32-32z"},null,-1),OI=p("path",{fill:"currentColor",d:"M416 256a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),BI=p("path",{fill:"currentColor",d:"M608 256a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),PI=[VI,TI,OI,BI];function II(e,t,n,r,o,a){return g(),_("svg",SI,PI)}var FI=y(AI,[["render",II],["__file","present.vue"]]),NI={name:"PriceTag"},RI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},DI=p("path",{fill:"currentColor",d:"M224 318.336V896h576V318.336L552.512 115.84a64 64 0 0 0-81.024 0L224 318.336zM593.024 66.304l259.2 212.096A32 32 0 0 1 864 303.168V928a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V303.168a32 32 0 0 1 11.712-24.768l259.2-212.096a128 128 0 0 1 162.112 0z"},null,-1),$I=p("path",{fill:"currentColor",d:"M512 448a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),jI=[DI,$I];function UI(e,t,n,r,o,a){return g(),_("svg",RI,jI)}var WI=y(NI,[["render",UI],["__file","price-tag.vue"]]),qI={name:"Printer"},GI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},KI=p("path",{fill:"currentColor",d:"M256 768H105.024c-14.272 0-19.456-1.472-24.64-4.288a29.056 29.056 0 0 1-12.16-12.096C65.536 746.432 64 741.248 64 727.04V379.072c0-42.816 4.48-58.304 12.8-73.984 8.384-15.616 20.672-27.904 36.288-36.288 15.68-8.32 31.168-12.8 73.984-12.8H256V64h512v192h68.928c42.816 0 58.304 4.48 73.984 12.8 15.616 8.384 27.904 20.672 36.288 36.288 8.32 15.68 12.8 31.168 12.8 73.984v347.904c0 14.272-1.472 19.456-4.288 24.64a29.056 29.056 0 0 1-12.096 12.16c-5.184 2.752-10.368 4.224-24.64 4.224H768v192H256V768zm64-192v320h384V576H320zm-64 128V512h512v192h128V379.072c0-29.376-1.408-36.48-5.248-43.776a23.296 23.296 0 0 0-10.048-10.048c-7.232-3.84-14.4-5.248-43.776-5.248H187.072c-29.376 0-36.48 1.408-43.776 5.248a23.296 23.296 0 0 0-10.048 10.048c-3.84 7.232-5.248 14.4-5.248 43.776V704h128zm64-448h384V128H320v128zm-64 128h64v64h-64v-64zm128 0h64v64h-64v-64z"},null,-1),YI=[KI];function JI(e,t,n,r,o,a){return g(),_("svg",GI,YI)}var XI=y(qI,[["render",JI],["__file","printer.vue"]]),ZI={name:"Promotion"},QI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},eF=p("path",{fill:"currentColor",d:"m64 448 832-320-128 704-446.08-243.328L832 192 242.816 545.472 64 448zm256 512V657.024L512 768 320 960z"},null,-1),tF=[eF];function nF(e,t,n,r,o,a){return g(),_("svg",QI,tF)}var rF=y(ZI,[["render",nF],["__file","promotion.vue"]]),oF={name:"QuartzWatch"},aF={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},lF=p("path",{fill:"currentColor",d:"M422.02 602.01v-.03c-6.68-5.99-14.35-8.83-23.01-8.51-8.67.32-16.17 3.66-22.5 10.02-6.33 6.36-9.5 13.7-9.5 22.02s3 15.82 8.99 22.5c8.68 8.68 19.02 11.35 31.01 8s19.49-10.85 22.5-22.5c3.01-11.65.51-22.15-7.49-31.49v-.01zM384 512c0-9.35-3-17.02-8.99-23.01-6-5.99-13.66-8.99-23.01-8.99-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.66 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.67 8.99-23.01zm6.53-82.49c11.65 3.01 22.15.51 31.49-7.49h.04c5.99-6.68 8.83-14.34 8.51-23.01-.32-8.67-3.66-16.16-10.02-22.5-6.36-6.33-13.7-9.5-22.02-9.5s-15.82 3-22.5 8.99c-8.68 8.69-11.35 19.02-8 31.01 3.35 11.99 10.85 19.49 22.5 22.5zm242.94 0c11.67-3.03 19.01-10.37 22.02-22.02 3.01-11.65.51-22.15-7.49-31.49h.01c-6.68-5.99-14.18-8.99-22.5-8.99s-15.66 3.16-22.02 9.5c-6.36 6.34-9.7 13.84-10.02 22.5-.32 8.66 2.52 16.33 8.51 23.01 9.32 8.02 19.82 10.52 31.49 7.49zM512 640c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.67 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.66 8.99-23.01s-3-17.02-8.99-23.01c-6-5.99-13.66-8.99-23.01-8.99zm183.01-151.01c-6-5.99-13.66-8.99-23.01-8.99s-17.02 3-23.01 8.99c-5.99 6-8.99 13.66-8.99 23.01s3 17.02 8.99 23.01c6 5.99 13.66 8.99 23.01 8.99s17.02-3 23.01-8.99c5.99-6 8.99-13.67 8.99-23.01 0-9.35-3-17.02-8.99-23.01z"},null,-1),sF=p("path",{fill:"currentColor",d:"M832 512c-2-90.67-33.17-166.17-93.5-226.5-20.43-20.42-42.6-37.49-66.5-51.23V64H352v170.26c-23.9 13.74-46.07 30.81-66.5 51.24-60.33 60.33-91.49 135.83-93.5 226.5 2 90.67 33.17 166.17 93.5 226.5 20.43 20.43 42.6 37.5 66.5 51.24V960h320V789.74c23.9-13.74 46.07-30.81 66.5-51.24 60.33-60.34 91.49-135.83 93.5-226.5zM416 128h192v78.69c-29.85-9.03-61.85-13.93-96-14.69-34.15.75-66.15 5.65-96 14.68V128zm192 768H416v-78.68c29.85 9.03 61.85 13.93 96 14.68 34.15-.75 66.15-5.65 96-14.68V896zm-96-128c-72.66-2.01-132.99-27.01-180.99-75.01S258.01 584.66 256 512c2.01-72.66 27.01-132.99 75.01-180.99S439.34 258.01 512 256c72.66 2.01 132.99 27.01 180.99 75.01S765.99 439.34 768 512c-2.01 72.66-27.01 132.99-75.01 180.99S584.66 765.99 512 768z"},null,-1),iF=p("path",{fill:"currentColor",d:"M512 320c-9.35 0-17.02 3-23.01 8.99-5.99 6-8.99 13.66-8.99 23.01 0 9.35 3 17.02 8.99 23.01 6 5.99 13.67 8.99 23.01 8.99 9.35 0 17.02-3 23.01-8.99 5.99-6 8.99-13.66 8.99-23.01 0-9.35-3-17.02-8.99-23.01-6-5.99-13.66-8.99-23.01-8.99zm112.99 273.5c-8.66-.32-16.33 2.52-23.01 8.51-7.98 9.32-10.48 19.82-7.49 31.49s10.49 19.17 22.5 22.5 22.35.66 31.01-8v.04c5.99-6.68 8.99-14.18 8.99-22.5s-3.16-15.66-9.5-22.02-13.84-9.7-22.5-10.02z"},null,-1),cF=[lF,sF,iF];function uF(e,t,n,r,o,a){return g(),_("svg",aF,cF)}var fF=y(oF,[["render",uF],["__file","quartz-watch.vue"]]),pF={name:"QuestionFilled"},dF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},hF=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592 0-42.944-14.08-76.736-42.24-101.376-28.16-25.344-65.472-37.312-111.232-37.312zm-12.672 406.208a54.272 54.272 0 0 0-38.72 14.784 49.408 49.408 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.848 54.848 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.968 51.968 0 0 0-15.488-38.016 55.936 55.936 0 0 0-39.424-14.784z"},null,-1),vF=[hF];function mF(e,t,n,r,o,a){return g(),_("svg",dF,vF)}var gF=y(pF,[["render",mF],["__file","question-filled.vue"]]),wF={name:"Rank"},_F={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},yF=p("path",{fill:"currentColor",d:"m186.496 544 41.408 41.344a32 32 0 1 1-45.248 45.312l-96-96a32 32 0 0 1 0-45.312l96-96a32 32 0 1 1 45.248 45.312L186.496 480h290.816V186.432l-41.472 41.472a32 32 0 1 1-45.248-45.184l96-96.128a32 32 0 0 1 45.312 0l96 96.064a32 32 0 0 1-45.248 45.184l-41.344-41.28V480H832l-41.344-41.344a32 32 0 0 1 45.248-45.312l96 96a32 32 0 0 1 0 45.312l-96 96a32 32 0 0 1-45.248-45.312L832 544H541.312v293.44l41.344-41.28a32 32 0 1 1 45.248 45.248l-96 96a32 32 0 0 1-45.312 0l-96-96a32 32 0 1 1 45.312-45.248l41.408 41.408V544H186.496z"},null,-1),bF=[yF];function zF(e,t,n,r,o,a){return g(),_("svg",_F,bF)}var xF=y(wF,[["render",zF],["__file","rank.vue"]]),CF={name:"ReadingLamp"},MF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},LF=p("path",{fill:"currentColor",d:"M352 896h320q32 0 32 32t-32 32H352q-32 0-32-32t32-32zm-44.672-768-99.52 448h608.384l-99.52-448H307.328zm-25.6-64h460.608a32 32 0 0 1 31.232 25.088l113.792 512A32 32 0 0 1 856.128 640H167.872a32 32 0 0 1-31.232-38.912l113.792-512A32 32 0 0 1 281.664 64z"},null,-1),HF=p("path",{fill:"currentColor",d:"M672 576q32 0 32 32v128q0 32-32 32t-32-32V608q0-32 32-32zm-192-.064h64V960h-64z"},null,-1),kF=[LF,HF];function EF(e,t,n,r,o,a){return g(),_("svg",MF,kF)}var AF=y(CF,[["render",EF],["__file","reading-lamp.vue"]]),SF={name:"Reading"},VF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},TF=p("path",{fill:"currentColor",d:"m512 863.36 384-54.848v-638.72L525.568 222.72a96 96 0 0 1-27.136 0L128 169.792v638.72l384 54.848zM137.024 106.432l370.432 52.928a32 32 0 0 0 9.088 0l370.432-52.928A64 64 0 0 1 960 169.792v638.72a64 64 0 0 1-54.976 63.36l-388.48 55.488a32 32 0 0 1-9.088 0l-388.48-55.488A64 64 0 0 1 64 808.512v-638.72a64 64 0 0 1 73.024-63.36z"},null,-1),OF=p("path",{fill:"currentColor",d:"M480 192h64v704h-64z"},null,-1),BF=[TF,OF];function PF(e,t,n,r,o,a){return g(),_("svg",VF,BF)}var IF=y(SF,[["render",PF],["__file","reading.vue"]]),FF={name:"RefreshLeft"},NF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},RF=p("path",{fill:"currentColor",d:"M289.088 296.704h92.992a32 32 0 0 1 0 64H232.96a32 32 0 0 1-32-32V179.712a32 32 0 0 1 64 0v50.56a384 384 0 0 1 643.84 282.88 384 384 0 0 1-383.936 384 384 384 0 0 1-384-384h64a320 320 0 1 0 640 0 320 320 0 0 0-555.712-216.448z"},null,-1),DF=[RF];function $F(e,t,n,r,o,a){return g(),_("svg",NF,DF)}let w3,_3,y3,b3;H1=y(FF,[["render",$F],["__file","refresh-left.vue"]]),w3={name:"RefreshRight"},_3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},y3=p("path",{fill:"currentColor",d:"M784.512 230.272v-50.56a32 32 0 1 1 64 0v149.056a32 32 0 0 1-32 32H667.52a32 32 0 1 1 0-64h92.992A320 320 0 1 0 524.8 833.152a320 320 0 0 0 320-320h64a384 384 0 0 1-384 384 384 384 0 0 1-384-384 384 384 0 0 1 643.712-282.88z"},null,-1),b3=[y3];function jF(e,t,n,r,o,a){return g(),_("svg",_3,b3)}let z3,x3,C3,M3;k1=y(w3,[["render",jF],["__file","refresh-right.vue"]]),z3={name:"Refresh"},x3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},C3=p("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"},null,-1),M3=[C3];function UF(e,t,n,r,o,a){return g(),_("svg",x3,M3)}var WF=y(z3,[["render",UF],["__file","refresh.vue"]]),qF={name:"Refrigerator"},GF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},KF=p("path",{fill:"currentColor",d:"M256 448h512V160a32 32 0 0 0-32-32H288a32 32 0 0 0-32 32v288zm0 64v352a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V512H256zm32-448h448a96 96 0 0 1 96 96v704a96 96 0 0 1-96 96H288a96 96 0 0 1-96-96V160a96 96 0 0 1 96-96zm32 224h64v96h-64v-96zm0 288h64v96h-64v-96z"},null,-1),YF=[KF];function JF(e,t,n,r,o,a){return g(),_("svg",GF,YF)}var XF=y(qF,[["render",JF],["__file","refrigerator.vue"]]),ZF={name:"RemoveFilled"},QF={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},eN=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zM288 512a38.4 38.4 0 0 0 38.4 38.4h371.2a38.4 38.4 0 0 0 0-76.8H326.4A38.4 38.4 0 0 0 288 512z"},null,-1),tN=[eN];function nN(e,t,n,r,o,a){return g(),_("svg",QF,tN)}var rN=y(ZF,[["render",nN],["__file","remove-filled.vue"]]),oN={name:"Remove"},aN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},lN=p("path",{fill:"currentColor",d:"M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),sN=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),iN=[lN,sN];function cN(e,t,n,r,o,a){return g(),_("svg",aN,iN)}var uN=y(oN,[["render",cN],["__file","remove.vue"]]),fN={name:"Right"},pN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},dN=p("path",{fill:"currentColor",d:"M754.752 480H160a32 32 0 1 0 0 64h594.752L521.344 777.344a32 32 0 0 0 45.312 45.312l288-288a32 32 0 0 0 0-45.312l-288-288a32 32 0 1 0-45.312 45.312L754.752 480z"},null,-1),hN=[dN];function vN(e,t,n,r,o,a){return g(),_("svg",pN,hN)}var mN=y(fN,[["render",vN],["__file","right.vue"]]),gN={name:"ScaleToOriginal"},wN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},_N=p("path",{fill:"currentColor",d:"M813.176 180.706a60.235 60.235 0 0 1 60.236 60.235v481.883a60.235 60.235 0 0 1-60.236 60.235H210.824a60.235 60.235 0 0 1-60.236-60.235V240.94a60.235 60.235 0 0 1 60.236-60.235h602.352zm0-60.235H210.824A120.47 120.47 0 0 0 90.353 240.94v481.883a120.47 120.47 0 0 0 120.47 120.47h602.353a120.47 120.47 0 0 0 120.471-120.47V240.94a120.47 120.47 0 0 0-120.47-120.47zm-120.47 180.705a30.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118zm-361.412 0a30.118 30.118 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.118 30.118 0 0 0-30.118-30.118zM512 361.412a30.118 30.118 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.118 30.118 0 0 0 512 361.412zM512 512a30.118 30.118 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.118 30.118 0 0 0 512 512z"},null,-1),yN=[_N];function bN(e,t,n,r,o,a){return g(),_("svg",wN,yN)}let L3,H3,k3,E3,A3,S3;z1=y(gN,[["render",bN],["__file","scale-to-original.vue"]]),L3={name:"School"},H3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},k3=p("path",{fill:"currentColor",d:"M224 128v704h576V128H224zm-32-64h640a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32z"},null,-1),E3=p("path",{fill:"currentColor",d:"M64 832h896v64H64zm256-640h128v96H320z"},null,-1),A3=p("path",{fill:"currentColor",d:"M384 832h256v-64a128 128 0 1 0-256 0v64zm128-256a192 192 0 0 1 192 192v128H320V768a192 192 0 0 1 192-192zM320 384h128v96H320zm256-192h128v96H576zm0 192h128v96H576z"},null,-1),S3=[k3,E3,A3];function zN(e,t,n,r,o,a){return g(),_("svg",H3,S3)}var xN=y(L3,[["render",zN],["__file","school.vue"]]),CN={name:"Scissor"},MN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},LN=p("path",{fill:"currentColor",d:"m512.064 578.368-106.88 152.768a160 160 0 1 1-23.36-78.208L472.96 522.56 196.864 128.256a32 32 0 1 1 52.48-36.736l393.024 561.344a160 160 0 1 1-23.36 78.208l-106.88-152.704zm54.4-189.248 208.384-297.6a32 32 0 0 1 52.48 36.736l-221.76 316.672-39.04-55.808zm-376.32 425.856a96 96 0 1 0 110.144-157.248 96 96 0 0 0-110.08 157.248zm643.84 0a96 96 0 1 0-110.08-157.248 96 96 0 0 0 110.08 157.248z"},null,-1),HN=[LN];function kN(e,t,n,r,o,a){return g(),_("svg",MN,HN)}var EN=y(CN,[["render",kN],["__file","scissor.vue"]]),AN={name:"Search"},SN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},VN=p("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704z"},null,-1),TN=[VN];function ON(e,t,n,r,o,a){return g(),_("svg",SN,TN)}var BN=y(AN,[["render",ON],["__file","search.vue"]]),PN={name:"Select"},IN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},FN=p("path",{fill:"currentColor",d:"M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04-316.8-316.8a64 64 0 0 1 0-90.496z"},null,-1),NN=[FN];function RN(e,t,n,r,o,a){return g(),_("svg",IN,NN)}var DN=y(PN,[["render",RN],["__file","select.vue"]]),$N={name:"Sell"},jN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},UN=p("path",{fill:"currentColor",d:"M704 288h131.072a32 32 0 0 1 31.808 28.8L886.4 512h-64.384l-16-160H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96H217.92l-51.2 512H512v64H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4zm-64 0v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4h256zm201.408 483.84L768 698.496V928a32 32 0 1 1-64 0V698.496l-73.344 73.344a32 32 0 1 1-45.248-45.248l128-128a32 32 0 0 1 45.248 0l128 128a32 32 0 1 1-45.248 45.248z"},null,-1),WN=[UN];function qN(e,t,n,r,o,a){return g(),_("svg",jN,WN)}var GN=y($N,[["render",qN],["__file","sell.vue"]]),KN={name:"SemiSelect"},YN={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},JN=p("path",{fill:"currentColor",d:"M128 448h768q64 0 64 64t-64 64H128q-64 0-64-64t64-64z"},null,-1),XN=[JN];function ZN(e,t,n,r,o,a){return g(),_("svg",YN,XN)}var QN=y(KN,[["render",ZN],["__file","semi-select.vue"]]),eR={name:"Service"},tR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},nR=p("path",{fill:"currentColor",d:"M864 409.6a192 192 0 0 1-37.888 349.44A256.064 256.064 0 0 1 576 960h-96a32 32 0 1 1 0-64h96a192.064 192.064 0 0 0 181.12-128H736a32 32 0 0 1-32-32V416a32 32 0 0 1 32-32h32c10.368 0 20.544.832 30.528 2.432a288 288 0 0 0-573.056 0A193.235 193.235 0 0 1 256 384h32a32 32 0 0 1 32 32v320a32 32 0 0 1-32 32h-32a192 192 0 0 1-96-358.4 352 352 0 0 1 704 0zM256 448a128 128 0 1 0 0 256V448zm640 128a128 128 0 0 0-128-128v256a128 128 0 0 0 128-128z"},null,-1),rR=[nR];function oR(e,t,n,r,o,a){return g(),_("svg",tR,rR)}var aR=y(eR,[["render",oR],["__file","service.vue"]]),lR={name:"SetUp"},sR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},iR=p("path",{fill:"currentColor",d:"M224 160a64 64 0 0 0-64 64v576a64 64 0 0 0 64 64h576a64 64 0 0 0 64-64V224a64 64 0 0 0-64-64H224zm0-64h576a128 128 0 0 1 128 128v576a128 128 0 0 1-128 128H224A128 128 0 0 1 96 800V224A128 128 0 0 1 224 96z"},null,-1),cR=p("path",{fill:"currentColor",d:"M384 416a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),uR=p("path",{fill:"currentColor",d:"M480 320h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32zm160 416a64 64 0 1 0 0-128 64 64 0 0 0 0 128zm0 64a128 128 0 1 1 0-256 128 128 0 0 1 0 256z"},null,-1),fR=p("path",{fill:"currentColor",d:"M288 640h256q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),pR=[iR,cR,uR,fR];function dR(e,t,n,r,o,a){return g(),_("svg",sR,pR)}var hR=y(lR,[["render",dR],["__file","set-up.vue"]]),vR={name:"Setting"},mR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},gR=p("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357.12 357.12 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a351.616 351.616 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357.12 357.12 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294.113 294.113 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293.12 293.12 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294.113 294.113 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288.282 288.282 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293.12 293.12 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a287.616 287.616 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384zm0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256z"},null,-1),wR=[gR];function _R(e,t,n,r,o,a){return g(),_("svg",mR,wR)}var yR=y(vR,[["render",_R],["__file","setting.vue"]]),bR={name:"Share"},zR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},xR=p("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"},null,-1),CR=[xR];function MR(e,t,n,r,o,a){return g(),_("svg",zR,CR)}var LR=y(bR,[["render",MR],["__file","share.vue"]]),HR={name:"Ship"},kR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ER=p("path",{fill:"currentColor",d:"M512 386.88V448h405.568a32 32 0 0 1 30.72 40.768l-76.48 267.968A192 192 0 0 1 687.168 896H336.832a192 192 0 0 1-184.64-139.264L75.648 488.768A32 32 0 0 1 106.368 448H448V117.888a32 32 0 0 1 47.36-28.096l13.888 7.616L512 96v2.88l231.68 126.4a32 32 0 0 1-2.048 57.216L512 386.88zm0-70.272 144.768-65.792L512 171.84v144.768zM512 512H148.864l18.24 64H856.96l18.24-64H512zM185.408 640l28.352 99.2A128 128 0 0 0 336.832 832h350.336a128 128 0 0 0 123.072-92.8l28.352-99.2H185.408z"},null,-1),AR=[ER];function SR(e,t,n,r,o,a){return g(),_("svg",kR,AR)}var VR=y(HR,[["render",SR],["__file","ship.vue"]]),TR={name:"Shop"},OR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},BR=p("path",{fill:"currentColor",d:"M704 704h64v192H256V704h64v64h384v-64zm188.544-152.192C894.528 559.616 896 567.616 896 576a96 96 0 1 1-192 0 96 96 0 1 1-192 0 96 96 0 1 1-192 0 96 96 0 1 1-192 0c0-8.384 1.408-16.384 3.392-24.192L192 128h640l60.544 423.808z"},null,-1),PR=[BR];function IR(e,t,n,r,o,a){return g(),_("svg",OR,PR)}var FR=y(TR,[["render",IR],["__file","shop.vue"]]),NR={name:"ShoppingBag"},RR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},DR=p("path",{fill:"currentColor",d:"M704 320v96a32 32 0 0 1-32 32h-32V320H384v128h-32a32 32 0 0 1-32-32v-96H192v576h640V320H704zm-384-64a192 192 0 1 1 384 0h160a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32h160zm64 0h256a128 128 0 1 0-256 0z"},null,-1),$R=p("path",{fill:"currentColor",d:"M192 704h640v64H192z"},null,-1),jR=[DR,$R];function UR(e,t,n,r,o,a){return g(),_("svg",RR,jR)}var WR=y(NR,[["render",UR],["__file","shopping-bag.vue"]]),qR={name:"ShoppingCartFull"},GR={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},KR=p("path",{fill:"currentColor",d:"M432 928a48 48 0 1 1 0-96 48 48 0 0 1 0 96zm320 0a48 48 0 1 1 0-96 48 48 0 0 1 0 96zM96 128a32 32 0 0 1 0-64h160a32 32 0 0 1 31.36 25.728L320.64 256H928a32 32 0 0 1 31.296 38.72l-96 448A32 32 0 0 1 832 768H384a32 32 0 0 1-31.36-25.728L229.76 128H96zm314.24 576h395.904l82.304-384H333.44l76.8 384z"},null,-1),YR=p("path",{fill:"currentColor",d:"M699.648 256 608 145.984 516.352 256h183.296zm-140.8-151.04a64 64 0 0 1 98.304 0L836.352 320H379.648l179.2-215.04z"},null,-1),JR=[KR,YR];function XR(e,t,n,r,o,a){return g(),_("svg",GR,JR)}var ZR=y(qR,[["render",XR],["__file","shopping-cart-full.vue"]]),QR={name:"ShoppingCart"},eD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},tD=p("path",{fill:"currentColor",d:"M432 928a48 48 0 1 1 0-96 48 48 0 0 1 0 96zm320 0a48 48 0 1 1 0-96 48 48 0 0 1 0 96zM96 128a32 32 0 0 1 0-64h160a32 32 0 0 1 31.36 25.728L320.64 256H928a32 32 0 0 1 31.296 38.72l-96 448A32 32 0 0 1 832 768H384a32 32 0 0 1-31.36-25.728L229.76 128H96zm314.24 576h395.904l82.304-384H333.44l76.8 384z"},null,-1),nD=[tD];function rD(e,t,n,r,o,a){return g(),_("svg",eD,nD)}var oD=y(QR,[["render",rD],["__file","shopping-cart.vue"]]),aD={name:"ShoppingTrolley"},lD={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},sD=p("path",{fill:"currentColor",d:"M368 833c-13.3 0-24.5 4.5-33.5 13.5S321 866.7 321 880s4.5 24.5 13.5 33.5 20.2 13.8 33.5 14.5c13.3-.7 24.5-5.5 33.5-14.5S415 893.3 415 880s-4.5-24.5-13.5-33.5S381.3 833 368 833zm439-193c7.4 0 13.8-2.2 19.5-6.5S836 623.3 838 616l112-448c2-10-.2-19.2-6.5-27.5S929 128 919 128H96c-9.3 0-17 3-23 9s-9 13.7-9 23 3 17 9 23 13.7 9 23 9h96v576h672c9.3 0 17-3 23-9s9-13.7 9-23-3-17-9-23-13.7-9-23-9H256v-64h551zM256 192h622l-96 384H256V192zm432 641c-13.3 0-24.5 4.5-33.5 13.5S641 866.7 641 880s4.5 24.5 13.5 33.5 20.2 13.8 33.5 14.5c13.3-.7 24.5-5.5 33.5-14.5S735 893.3 735 880s-4.5-24.5-13.5-33.5S701.3 833 688 833z"},null,-1),iD=[sD];function cD(e,t,n,r,o,a){return g(),_("svg",lD,iD)}var uD=y(aD,[["render",cD],["__file","shopping-trolley.vue"]]),fD={name:"Smoking"},pD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},dD=p("path",{fill:"currentColor",d:"M256 576v128h640V576H256zm-32-64h704a32 32 0 0 1 32 32v192a32 32 0 0 1-32 32H224a32 32 0 0 1-32-32V544a32 32 0 0 1 32-32z"},null,-1),hD=p("path",{fill:"currentColor",d:"M704 576h64v128h-64zM256 64h64v320h-64zM128 192h64v192h-64zM64 512h64v256H64z"},null,-1),vD=[dD,hD];function mD(e,t,n,r,o,a){return g(),_("svg",pD,vD)}var gD=y(fD,[["render",mD],["__file","smoking.vue"]]),wD={name:"Soccer"},_D={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},yD=p("path",{fill:"currentColor",d:"M418.496 871.04 152.256 604.8c-16.512 94.016-2.368 178.624 42.944 224 44.928 44.928 129.344 58.752 223.296 42.24zm72.32-18.176a573.056 573.056 0 0 0 224.832-137.216 573.12 573.12 0 0 0 137.216-224.832L533.888 171.84a578.56 578.56 0 0 0-227.52 138.496A567.68 567.68 0 0 0 170.432 532.48l320.384 320.384zM871.04 418.496c16.512-93.952 2.688-178.368-42.24-223.296-44.544-44.544-128.704-58.048-222.592-41.536L871.04 418.496zM149.952 874.048c-112.96-112.96-88.832-408.96 111.168-608.96C461.056 65.152 760.96 36.928 874.048 149.952c113.024 113.024 86.784 411.008-113.152 610.944-199.936 199.936-497.92 226.112-610.944 113.152zm452.544-497.792 22.656-22.656a32 32 0 0 1 45.248 45.248l-22.656 22.656 45.248 45.248A32 32 0 1 1 647.744 512l-45.248-45.248L557.248 512l45.248 45.248a32 32 0 1 1-45.248 45.248L512 557.248l-45.248 45.248L512 647.744a32 32 0 1 1-45.248 45.248l-45.248-45.248-22.656 22.656a32 32 0 1 1-45.248-45.248l22.656-22.656-45.248-45.248A32 32 0 1 1 376.256 512l45.248 45.248L466.752 512l-45.248-45.248a32 32 0 1 1 45.248-45.248L512 466.752l45.248-45.248L512 376.256a32 32 0 0 1 45.248-45.248l45.248 45.248z"},null,-1),bD=[yD];function zD(e,t,n,r,o,a){return g(),_("svg",_D,bD)}var xD=y(wD,[["render",zD],["__file","soccer.vue"]]),CD={name:"SoldOut"},MD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},LD=p("path",{fill:"currentColor",d:"M704 288h131.072a32 32 0 0 1 31.808 28.8L886.4 512h-64.384l-16-160H704v96a32 32 0 1 1-64 0v-96H384v96a32 32 0 0 1-64 0v-96H217.92l-51.2 512H512v64H131.328a32 32 0 0 1-31.808-35.2l57.6-576a32 32 0 0 1 31.808-28.8H320v-22.336C320 154.688 405.504 64 512 64s192 90.688 192 201.664v22.4zm-64 0v-22.336C640 189.248 582.272 128 512 128c-70.272 0-128 61.248-128 137.664v22.4h256zm201.408 476.16a32 32 0 1 1 45.248 45.184l-128 128a32 32 0 0 1-45.248 0l-128-128a32 32 0 1 1 45.248-45.248L704 837.504V608a32 32 0 1 1 64 0v229.504l73.408-73.408z"},null,-1),HD=[LD];function kD(e,t,n,r,o,a){return g(),_("svg",MD,HD)}var ED=y(CD,[["render",kD],["__file","sold-out.vue"]]),AD={name:"SortDown"},SD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},VD=p("path",{fill:"currentColor",d:"M576 96v709.568L333.312 562.816A32 32 0 1 0 288 608l297.408 297.344A32 32 0 0 0 640 882.688V96a32 32 0 0 0-64 0z"},null,-1),TD=[VD];function OD(e,t,n,r,o,a){return g(),_("svg",SD,TD)}var BD=y(AD,[["render",OD],["__file","sort-down.vue"]]),PD={name:"SortUp"},ID={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},FD=p("path",{fill:"currentColor",d:"M384 141.248V928a32 32 0 1 0 64 0V218.56l242.688 242.688A32 32 0 1 0 736 416L438.592 118.656A32 32 0 0 0 384 141.248z"},null,-1),ND=[FD];function RD(e,t,n,r,o,a){return g(),_("svg",ID,ND)}var DD=y(PD,[["render",RD],["__file","sort-up.vue"]]),$D={name:"Sort"},jD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},UD=p("path",{fill:"currentColor",d:"M384 96a32 32 0 0 1 64 0v786.752a32 32 0 0 1-54.592 22.656L95.936 608a32 32 0 0 1 0-45.312h.128a32 32 0 0 1 45.184 0L384 805.632V96zm192 45.248a32 32 0 0 1 54.592-22.592L928.064 416a32 32 0 0 1 0 45.312h-.128a32 32 0 0 1-45.184 0L640 218.496V928a32 32 0 1 1-64 0V141.248z"},null,-1),WD=[UD];function qD(e,t,n,r,o,a){return g(),_("svg",jD,WD)}var GD=y($D,[["render",qD],["__file","sort.vue"]]),KD={name:"Stamp"},YD={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},JD=p("path",{fill:"currentColor",d:"M624 475.968V640h144a128 128 0 0 1 128 128H128a128 128 0 0 1 128-128h144V475.968a192 192 0 1 1 224 0zM128 896v-64h768v64H128z"},null,-1),XD=[JD];function ZD(e,t,n,r,o,a){return g(),_("svg",YD,XD)}var QD=y(KD,[["render",ZD],["__file","stamp.vue"]]),e$={name:"StarFilled"},t$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},n$=p("path",{fill:"currentColor",d:"M283.84 867.84 512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"},null,-1),r$=[n$];function o$(e,t,n,r,o,a){return g(),_("svg",t$,r$)}var a$=y(e$,[["render",o$],["__file","star-filled.vue"]]),l$={name:"Star"},s$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},i$=p("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"},null,-1),c$=[i$];function u$(e,t,n,r,o,a){return g(),_("svg",s$,c$)}var f$=y(l$,[["render",u$],["__file","star.vue"]]),p$={name:"Stopwatch"},d$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},h$=p("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"},null,-1),v$=p("path",{fill:"currentColor",d:"M672 234.88c-39.168 174.464-80 298.624-122.688 372.48-64 110.848-202.624 30.848-138.624-80C453.376 453.44 540.48 355.968 672 234.816z"},null,-1),m$=[h$,v$];function g$(e,t,n,r,o,a){return g(),_("svg",d$,m$)}var w$=y(p$,[["render",g$],["__file","stopwatch.vue"]]),_$={name:"SuccessFilled"},y$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},b$=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null,-1),z$=[b$];function x$(e,t,n,r,o,a){return g(),_("svg",y$,z$)}var Va=y(_$,[["render",x$],["__file","success-filled.vue"]]),C$={name:"Sugar"},M$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},L$=p("path",{fill:"currentColor",d:"m801.728 349.184 4.48 4.48a128 128 0 0 1 0 180.992L534.656 806.144a128 128 0 0 1-181.056 0l-4.48-4.48-19.392 109.696a64 64 0 0 1-108.288 34.176L78.464 802.56a64 64 0 0 1 34.176-108.288l109.76-19.328-4.544-4.544a128 128 0 0 1 0-181.056l271.488-271.488a128 128 0 0 1 181.056 0l4.48 4.48 19.392-109.504a64 64 0 0 1 108.352-34.048l142.592 143.04a64 64 0 0 1-34.24 108.16l-109.248 19.2zm-548.8 198.72h447.168v2.24l60.8-60.8a63.808 63.808 0 0 0 18.752-44.416h-426.88l-89.664 89.728a64.064 64.064 0 0 0-10.24 13.248zm0 64c2.752 4.736 6.144 9.152 10.176 13.248l135.744 135.744a64 64 0 0 0 90.496 0L638.4 611.904H252.928zm490.048-230.976L625.152 263.104a64 64 0 0 0-90.496 0L416.768 380.928h326.208zM123.712 757.312l142.976 142.976 24.32-137.6a25.6 25.6 0 0 0-29.696-29.632l-137.6 24.256zm633.6-633.344-24.32 137.472a25.6 25.6 0 0 0 29.632 29.632l137.28-24.064-142.656-143.04z"},null,-1),H$=[L$];function k$(e,t,n,r,o,a){return g(),_("svg",M$,H$)}var E$=y(C$,[["render",k$],["__file","sugar.vue"]]),A$={name:"SuitcaseLine"},S$={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},V$=p("path",{fill:"currentColor",d:"M922.5 229.5c-24.32-24.34-54.49-36.84-90.5-37.5H704v-64c-.68-17.98-7.02-32.98-19.01-44.99S658.01 64.66 640 64H384c-17.98.68-32.98 7.02-44.99 19.01S320.66 110 320 128v64H192c-35.99.68-66.16 13.18-90.5 37.5C77.16 253.82 64.66 283.99 64 320v448c.68 35.99 13.18 66.16 37.5 90.5s54.49 36.84 90.5 37.5h640c35.99-.68 66.16-13.18 90.5-37.5s36.84-54.49 37.5-90.5V320c-.68-35.99-13.18-66.16-37.5-90.5zM384 128h256v64H384v-64zM256 832h-64c-17.98-.68-32.98-7.02-44.99-19.01S128.66 786.01 128 768V448h128v384zm448 0H320V448h384v384zm192-64c-.68 17.98-7.02 32.98-19.01 44.99S850.01 831.34 832 832h-64V448h128v320zm0-384H128v-64c.69-17.98 7.02-32.98 19.01-44.99S173.99 256.66 192 256h640c17.98.69 32.98 7.02 44.99 19.01S895.34 301.99 896 320v64z"},null,-1),T$=[V$];function O$(e,t,n,r,o,a){return g(),_("svg",S$,T$)}var B$=y(A$,[["render",O$],["__file","suitcase-line.vue"]]),P$={name:"Suitcase"},I$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},F$=p("path",{fill:"currentColor",d:"M128 384h768v-64a64 64 0 0 0-64-64H192a64 64 0 0 0-64 64v64zm0 64v320a64 64 0 0 0 64 64h640a64 64 0 0 0 64-64V448H128zm64-256h640a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H192A128 128 0 0 1 64 768V320a128 128 0 0 1 128-128z"},null,-1),N$=p("path",{fill:"currentColor",d:"M384 128v64h256v-64H384zm0-64h256a64 64 0 0 1 64 64v64a64 64 0 0 1-64 64H384a64 64 0 0 1-64-64v-64a64 64 0 0 1 64-64z"},null,-1),R$=[F$,N$];function D$(e,t,n,r,o,a){return g(),_("svg",I$,R$)}var $$=y(P$,[["render",D$],["__file","suitcase.vue"]]),j$={name:"Sunny"},U$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},W$=p("path",{fill:"currentColor",d:"M512 704a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512zm0-704a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32zm0 768a32 32 0 0 1 32 32v64a32 32 0 1 1-64 0v-64a32 32 0 0 1 32-32zM195.2 195.2a32 32 0 0 1 45.248 0l45.248 45.248a32 32 0 1 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248zm543.104 543.104a32 32 0 0 1 45.248 0l45.248 45.248a32 32 0 0 1-45.248 45.248l-45.248-45.248a32 32 0 0 1 0-45.248zM64 512a32 32 0 0 1 32-32h64a32 32 0 0 1 0 64H96a32 32 0 0 1-32-32zm768 0a32 32 0 0 1 32-32h64a32 32 0 1 1 0 64h-64a32 32 0 0 1-32-32zM195.2 828.8a32 32 0 0 1 0-45.248l45.248-45.248a32 32 0 0 1 45.248 45.248L240.448 828.8a32 32 0 0 1-45.248 0zm543.104-543.104a32 32 0 0 1 0-45.248l45.248-45.248a32 32 0 0 1 45.248 45.248l-45.248 45.248a32 32 0 0 1-45.248 0z"},null,-1),q$=[W$];function G$(e,t,n,r,o,a){return g(),_("svg",U$,q$)}var K$=y(j$,[["render",G$],["__file","sunny.vue"]]),Y$={name:"Sunrise"},J$={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},X$=p("path",{fill:"currentColor",d:"M32 768h960a32 32 0 1 1 0 64H32a32 32 0 1 1 0-64zm129.408-96a352 352 0 0 1 701.184 0h-64.32a288 288 0 0 0-572.544 0h-64.32zM512 128a32 32 0 0 1 32 32v96a32 32 0 0 1-64 0v-96a32 32 0 0 1 32-32zm407.296 168.704a32 32 0 0 1 0 45.248l-67.84 67.84a32 32 0 1 1-45.248-45.248l67.84-67.84a32 32 0 0 1 45.248 0zm-814.592 0a32 32 0 0 1 45.248 0l67.84 67.84a32 32 0 1 1-45.248 45.248l-67.84-67.84a32 32 0 0 1 0-45.248z"},null,-1),Z$=[X$];function Q$(e,t,n,r,o,a){return g(),_("svg",J$,Z$)}var ej=y(Y$,[["render",Q$],["__file","sunrise.vue"]]),tj={name:"Sunset"},nj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},rj=p("path",{fill:"currentColor",d:"M82.56 640a448 448 0 1 1 858.88 0h-67.2a384 384 0 1 0-724.288 0H82.56zM32 704h960q32 0 32 32t-32 32H32q-32 0-32-32t32-32zm256 128h448q32 0 32 32t-32 32H288q-32 0-32-32t32-32z"},null,-1),oj=[rj];function aj(e,t,n,r,o,a){return g(),_("svg",nj,oj)}var lj=y(tj,[["render",aj],["__file","sunset.vue"]]),sj={name:"SwitchButton"},ij={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},cj=p("path",{fill:"currentColor",d:"M352 159.872V230.4a352 352 0 1 0 320 0v-70.528A416.128 416.128 0 0 1 512 960a416 416 0 0 1-160-800.128z"},null,-1),uj=p("path",{fill:"currentColor",d:"M512 64q32 0 32 32v320q0 32-32 32t-32-32V96q0-32 32-32z"},null,-1),fj=[cj,uj];function pj(e,t,n,r,o,a){return g(),_("svg",ij,fj)}var dj=y(sj,[["render",pj],["__file","switch-button.vue"]]),hj={name:"SwitchFilled"},vj={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},mj=p("path",{fill:"currentColor",d:"M247.47 358.4v.04c.07 19.17 7.72 37.53 21.27 51.09s31.92 21.2 51.09 21.27c39.86 0 72.41-32.6 72.41-72.4s-32.6-72.36-72.41-72.36-72.36 32.55-72.36 72.36z"},null,-1),gj=p("path",{fill:"currentColor",d:"M492.38 128H324.7c-52.16 0-102.19 20.73-139.08 57.61a196.655 196.655 0 0 0-57.61 139.08V698.7c-.01 25.84 5.08 51.42 14.96 75.29s24.36 45.56 42.63 63.83 39.95 32.76 63.82 42.65a196.67 196.67 0 0 0 75.28 14.98h167.68c3.03 0 5.46-2.43 5.46-5.42V133.42c.6-2.99-1.83-5.42-5.46-5.42zm-56.11 705.88H324.7c-17.76.13-35.36-3.33-51.75-10.18s-31.22-16.94-43.61-29.67c-25.3-25.35-39.81-59.1-39.81-95.32V324.69c-.13-17.75 3.33-35.35 10.17-51.74a131.695 131.695 0 0 1 29.64-43.62c25.39-25.3 59.14-39.81 95.36-39.81h111.57v644.36zm402.12-647.67a196.655 196.655 0 0 0-139.08-57.61H580.48c-3.03 0-4.82 2.43-4.82 4.82v757.16c-.6 2.99 1.79 5.42 5.42 5.42h118.23a196.69 196.69 0 0 0 139.08-57.61A196.655 196.655 0 0 0 896 699.31V325.29a196.69 196.69 0 0 0-57.61-139.08zm-111.3 441.92c-42.83 0-77.82-34.99-77.82-77.82s34.98-77.82 77.82-77.82c42.83 0 77.82 34.99 77.82 77.82s-34.99 77.82-77.82 77.82z"},null,-1),wj=[mj,gj];function _j(e,t,n,r,o,a){return g(),_("svg",vj,wj)}var yj=y(hj,[["render",_j],["__file","switch-filled.vue"]]),bj={name:"Switch"},zj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},xj=p("path",{fill:"currentColor",d:"M118.656 438.656a32 32 0 0 1 0-45.248L416 96l4.48-3.776A32 32 0 0 1 461.248 96l3.712 4.48a32.064 32.064 0 0 1-3.712 40.832L218.56 384H928a32 32 0 1 1 0 64H141.248a32 32 0 0 1-22.592-9.344zM64 608a32 32 0 0 1 32-32h786.752a32 32 0 0 1 22.656 54.592L608 928l-4.48 3.776a32.064 32.064 0 0 1-40.832-49.024L805.632 640H96a32 32 0 0 1-32-32z"},null,-1),Cj=[xj];function Mj(e,t,n,r,o,a){return g(),_("svg",zj,Cj)}var Lj=y(bj,[["render",Mj],["__file","switch.vue"]]),Hj={name:"TakeawayBox"},kj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Ej=p("path",{fill:"currentColor",d:"M832 384H192v448h640V384zM96 320h832V128H96v192zm800 64v480a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V384H64a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h896a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32h-64zM416 512h192a32 32 0 0 1 0 64H416a32 32 0 0 1 0-64z"},null,-1),Aj=[Ej];function Sj(e,t,n,r,o,a){return g(),_("svg",kj,Aj)}var Vj=y(Hj,[["render",Sj],["__file","takeaway-box.vue"]]),Tj={name:"Ticket"},Oj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Bj=p("path",{fill:"currentColor",d:"M640 832H64V640a128 128 0 1 0 0-256V192h576v160h64V192h256v192a128 128 0 1 0 0 256v192H704V672h-64v160zm0-416v192h64V416h-64z"},null,-1),Pj=[Bj];function Ij(e,t,n,r,o,a){return g(),_("svg",Oj,Pj)}var Fj=y(Tj,[["render",Ij],["__file","ticket.vue"]]),Nj={name:"Tickets"},Rj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Dj=p("path",{fill:"currentColor",d:"M192 128v768h640V128H192zm-32-64h704a32 32 0 0 1 32 32v832a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm160 448h384v64H320v-64zm0-192h192v64H320v-64zm0 384h384v64H320v-64z"},null,-1),$j=[Dj];function jj(e,t,n,r,o,a){return g(),_("svg",Rj,$j)}var Uj=y(Nj,[["render",jj],["__file","tickets.vue"]]),Wj={name:"Timer"},qj={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Gj=p("path",{fill:"currentColor",d:"M512 896a320 320 0 1 0 0-640 320 320 0 0 0 0 640zm0 64a384 384 0 1 1 0-768 384 384 0 0 1 0 768z"},null,-1),Kj=p("path",{fill:"currentColor",d:"M512 320a32 32 0 0 1 32 32l-.512 224a32 32 0 1 1-64 0L480 352a32 32 0 0 1 32-32z"},null,-1),Yj=p("path",{fill:"currentColor",d:"M448 576a64 64 0 1 0 128 0 64 64 0 1 0-128 0zm96-448v128h-64V128h-96a32 32 0 0 1 0-64h256a32 32 0 1 1 0 64h-96z"},null,-1),Jj=[Gj,Kj,Yj];function Xj(e,t,n,r,o,a){return g(),_("svg",qj,Jj)}var Zj=y(Wj,[["render",Xj],["__file","timer.vue"]]),Qj={name:"ToiletPaper"},eU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},tU=p("path",{fill:"currentColor",d:"M595.2 128H320a192 192 0 0 0-192 192v576h384V352c0-90.496 32.448-171.2 83.2-224zM736 64c123.712 0 224 128.96 224 288S859.712 640 736 640H576v320H64V320A256 256 0 0 1 320 64h416zM576 352v224h160c84.352 0 160-97.28 160-224s-75.648-224-160-224-160 97.28-160 224z"},null,-1),nU=p("path",{fill:"currentColor",d:"M736 448c-35.328 0-64-43.008-64-96s28.672-96 64-96 64 43.008 64 96-28.672 96-64 96z"},null,-1),rU=[tU,nU];function oU(e,t,n,r,o,a){return g(),_("svg",eU,rU)}var aU=y(Qj,[["render",oU],["__file","toilet-paper.vue"]]),lU={name:"Tools"},sU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},iU=p("path",{fill:"currentColor",d:"M764.416 254.72a351.68 351.68 0 0 1 86.336 149.184H960v192.064H850.752a351.68 351.68 0 0 1-86.336 149.312l54.72 94.72-166.272 96-54.592-94.72a352.64 352.64 0 0 1-172.48 0L371.136 936l-166.272-96 54.72-94.72a351.68 351.68 0 0 1-86.336-149.312H64v-192h109.248a351.68 351.68 0 0 1 86.336-149.312L204.8 160l166.208-96h.192l54.656 94.592a352.64 352.64 0 0 1 172.48 0L652.8 64h.128L819.2 160l-54.72 94.72zM704 499.968a192 192 0 1 0-384 0 192 192 0 0 0 384 0z"},null,-1),cU=[iU];function uU(e,t,n,r,o,a){return g(),_("svg",sU,cU)}var fU=y(lU,[["render",uU],["__file","tools.vue"]]),pU={name:"TopLeft"},dU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},hU=p("path",{fill:"currentColor",d:"M256 256h416a32 32 0 1 0 0-64H224a32 32 0 0 0-32 32v448a32 32 0 0 0 64 0V256z"},null,-1),vU=p("path",{fill:"currentColor",d:"M246.656 201.344a32 32 0 0 0-45.312 45.312l544 544a32 32 0 0 0 45.312-45.312l-544-544z"},null,-1),mU=[hU,vU];function gU(e,t,n,r,o,a){return g(),_("svg",dU,mU)}var wU=y(pU,[["render",gU],["__file","top-left.vue"]]),_U={name:"TopRight"},yU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},bU=p("path",{fill:"currentColor",d:"M768 256H353.6a32 32 0 1 1 0-64H800a32 32 0 0 1 32 32v448a32 32 0 0 1-64 0V256z"},null,-1),zU=p("path",{fill:"currentColor",d:"M777.344 201.344a32 32 0 0 1 45.312 45.312l-544 544a32 32 0 0 1-45.312-45.312l544-544z"},null,-1),xU=[bU,zU];function CU(e,t,n,r,o,a){return g(),_("svg",yU,xU)}var MU=y(_U,[["render",CU],["__file","top-right.vue"]]),LU={name:"Top"},HU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},kU=p("path",{fill:"currentColor",d:"M572.235 205.282v600.365a30.118 30.118 0 1 1-60.235 0V205.282L292.382 438.633a28.913 28.913 0 0 1-42.646 0 33.43 33.43 0 0 1 0-45.236l271.058-288.045a28.913 28.913 0 0 1 42.647 0L834.5 393.397a33.43 33.43 0 0 1 0 45.176 28.913 28.913 0 0 1-42.647 0l-219.618-233.23z"},null,-1),EU=[kU];function AU(e,t,n,r,o,a){return g(),_("svg",HU,EU)}var SU=y(LU,[["render",AU],["__file","top.vue"]]),VU={name:"TrendCharts"},TU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},OU=p("path",{fill:"currentColor",d:"M128 896V128h768v768H128zm291.712-327.296 128 102.4 180.16-201.792-47.744-42.624-139.84 156.608-128-102.4-180.16 201.792 47.744 42.624 139.84-156.608zM816 352a48 48 0 1 0-96 0 48 48 0 0 0 96 0z"},null,-1),BU=[OU];function PU(e,t,n,r,o,a){return g(),_("svg",TU,BU)}var IU=y(VU,[["render",PU],["__file","trend-charts.vue"]]),FU={name:"TrophyBase"},NU={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},RU=p("path",{fill:"currentColor",d:"M918.4 201.6c-6.4-6.4-12.8-9.6-22.4-9.6H768V96c0-9.6-3.2-16-9.6-22.4C752 67.2 745.6 64 736 64H288c-9.6 0-16 3.2-22.4 9.6C259.2 80 256 86.4 256 96v96H128c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 16-9.6 22.4 3.2 108.8 25.6 185.6 64 224 34.4 34.4 77.56 55.65 127.65 61.99 10.91 20.44 24.78 39.25 41.95 56.41 40.86 40.86 91 65.47 150.4 71.9V768h-96c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4c6.4 6.4 12.8 9.6 22.4 9.6h256c9.6 0 16-3.2 22.4-9.6 6.4-6.4 9.6-12.8 9.6-22.4s-3.2-16-9.6-22.4c-6.4-6.4-12.8-9.6-22.4-9.6h-96V637.26c59.4-7.71 109.54-30.01 150.4-70.86 17.2-17.2 31.51-36.06 42.81-56.55 48.93-6.51 90.02-27.7 126.79-61.85 38.4-38.4 60.8-112 64-224 0-6.4-3.2-16-9.6-22.4zM256 438.4c-19.2-6.4-35.2-19.2-51.2-35.2-22.4-22.4-35.2-70.4-41.6-147.2H256v182.4zm390.4 80C608 553.6 566.4 576 512 576s-99.2-19.2-134.4-57.6C342.4 480 320 438.4 320 384V128h384v256c0 54.4-19.2 99.2-57.6 134.4zm172.8-115.2c-16 16-32 25.6-51.2 35.2V256h92.8c-6.4 76.8-19.2 124.8-41.6 147.2zM768 896H256c-9.6 0-16 3.2-22.4 9.6-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4c6.4 6.4 12.8 9.6 22.4 9.6h512c9.6 0 16-3.2 22.4-9.6 6.4-6.4 9.6-12.8 9.6-22.4s-3.2-16-9.6-22.4c-6.4-6.4-12.8-9.6-22.4-9.6z"},null,-1),DU=[RU];function $U(e,t,n,r,o,a){return g(),_("svg",NU,DU)}var jU=y(FU,[["render",$U],["__file","trophy-base.vue"]]),UU={name:"Trophy"},WU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qU=p("path",{fill:"currentColor",d:"M480 896V702.08A256.256 256.256 0 0 1 264.064 512h-32.64a96 96 0 0 1-91.968-68.416L93.632 290.88a76.8 76.8 0 0 1 73.6-98.88H256V96a32 32 0 0 1 32-32h448a32 32 0 0 1 32 32v96h88.768a76.8 76.8 0 0 1 73.6 98.88L884.48 443.52A96 96 0 0 1 792.576 512h-32.64A256.256 256.256 0 0 1 544 702.08V896h128a32 32 0 1 1 0 64H352a32 32 0 1 1 0-64h128zm224-448V128H320v320a192 192 0 1 0 384 0zm64 0h24.576a32 32 0 0 0 30.656-22.784l45.824-152.768A12.8 12.8 0 0 0 856.768 256H768v192zm-512 0V256h-88.768a12.8 12.8 0 0 0-12.288 16.448l45.824 152.768A32 32 0 0 0 231.424 448H256z"},null,-1),GU=[qU];function KU(e,t,n,r,o,a){return g(),_("svg",WU,GU)}var YU=y(UU,[["render",KU],["__file","trophy.vue"]]),JU={name:"TurnOff"},XU={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},ZU=p("path",{fill:"currentColor",d:"M329.956 257.138a254.862 254.862 0 0 0 0 509.724h364.088a254.862 254.862 0 0 0 0-509.724H329.956zm0-72.818h364.088a327.68 327.68 0 1 1 0 655.36H329.956a327.68 327.68 0 1 1 0-655.36z"},null,-1),QU=p("path",{fill:"currentColor",d:"M329.956 621.227a109.227 109.227 0 1 0 0-218.454 109.227 109.227 0 0 0 0 218.454zm0 72.817a182.044 182.044 0 1 1 0-364.088 182.044 182.044 0 0 1 0 364.088z"},null,-1),eW=[ZU,QU];function tW(e,t,n,r,o,a){return g(),_("svg",XU,eW)}var nW=y(JU,[["render",tW],["__file","turn-off.vue"]]),rW={name:"Umbrella"},oW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},aW=p("path",{fill:"currentColor",d:"M320 768a32 32 0 1 1 64 0 64 64 0 0 0 128 0V512H64a448 448 0 1 1 896 0H576v256a128 128 0 1 1-256 0zm570.688-320a384.128 384.128 0 0 0-757.376 0h757.376z"},null,-1),lW=[aW];function sW(e,t,n,r,o,a){return g(),_("svg",oW,lW)}var iW=y(rW,[["render",sW],["__file","umbrella.vue"]]),cW={name:"Unlock"},uW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},fW=p("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"},null,-1),pW=p("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm178.304-295.296A192.064 192.064 0 0 0 320 320v64h352l96 38.4V448H256V320a256 256 0 0 1 493.76-95.104l-59.456 23.808z"},null,-1),dW=[fW,pW];function hW(e,t,n,r,o,a){return g(),_("svg",uW,dW)}var vW=y(cW,[["render",hW],["__file","unlock.vue"]]),mW={name:"UploadFilled"},gW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wW=p("path",{fill:"currentColor",d:"M544 864V672h128L512 480 352 672h128v192H320v-1.6c-5.376.32-10.496 1.6-16 1.6A240 240 0 0 1 64 624c0-123.136 93.12-223.488 212.608-237.248A239.808 239.808 0 0 1 512 192a239.872 239.872 0 0 1 235.456 194.752c119.488 13.76 212.48 114.112 212.48 237.248a240 240 0 0 1-240 240c-5.376 0-10.56-1.28-16-1.6v1.6H544z"},null,-1),_W=[wW];function yW(e,t,n,r,o,a){return g(),_("svg",gW,_W)}var bW=y(mW,[["render",yW],["__file","upload-filled.vue"]]),zW={name:"Upload"},xW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},CW=p("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64zm384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248L544 253.696z"},null,-1),MW=[CW];function LW(e,t,n,r,o,a){return g(),_("svg",xW,MW)}var HW=y(zW,[["render",LW],["__file","upload.vue"]]),kW={name:"UserFilled"},EW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},AW=p("path",{fill:"currentColor",d:"M288 320a224 224 0 1 0 448 0 224 224 0 1 0-448 0zm544 608H160a32 32 0 0 1-32-32v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 0 1-32 32z"},null,-1),SW=[AW];function VW(e,t,n,r,o,a){return g(),_("svg",EW,SW)}var TW=y(kW,[["render",VW],["__file","user-filled.vue"]]),OW={name:"User"},BW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},PW=p("path",{fill:"currentColor",d:"M512 512a192 192 0 1 0 0-384 192 192 0 0 0 0 384zm0 64a256 256 0 1 1 0-512 256 256 0 0 1 0 512zm320 320v-96a96 96 0 0 0-96-96H288a96 96 0 0 0-96 96v96a32 32 0 1 1-64 0v-96a160 160 0 0 1 160-160h448a160 160 0 0 1 160 160v96a32 32 0 1 1-64 0z"},null,-1),IW=[PW];function FW(e,t,n,r,o,a){return g(),_("svg",BW,IW)}var NW=y(OW,[["render",FW],["__file","user.vue"]]),RW={name:"Van"},DW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},$W=p("path",{fill:"currentColor",d:"M128.896 736H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32v96h164.544a32 32 0 0 1 31.616 27.136l54.144 352A32 32 0 0 1 922.688 736h-91.52a144 144 0 1 1-286.272 0H415.104a144 144 0 1 1-286.272 0zm23.36-64a143.872 143.872 0 0 1 239.488 0H568.32c17.088-25.6 42.24-45.376 71.744-55.808V256H128v416h24.256zm655.488 0h77.632l-19.648-128H704v64.896A144 144 0 0 1 807.744 672zm48.128-192-14.72-96H704v96h151.872zM688 832a80 80 0 1 0 0-160 80 80 0 0 0 0 160zm-416 0a80 80 0 1 0 0-160 80 80 0 0 0 0 160z"},null,-1),jW=[$W];function UW(e,t,n,r,o,a){return g(),_("svg",DW,jW)}var WW=y(RW,[["render",UW],["__file","van.vue"]]),qW={name:"VideoCameraFilled"},GW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},KW=p("path",{fill:"currentColor",d:"m768 576 192-64v320l-192-64v96a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V480a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v96zM192 768v64h384v-64H192zm192-480a160 160 0 0 1 320 0 160 160 0 0 1-320 0zm64 0a96 96 0 1 0 192.064-.064A96 96 0 0 0 448 288zm-320 32a128 128 0 1 1 256.064.064A128 128 0 0 1 128 320zm64 0a64 64 0 1 0 128 0 64 64 0 0 0-128 0z"},null,-1),YW=[KW];function JW(e,t,n,r,o,a){return g(),_("svg",GW,YW)}var XW=y(qW,[["render",JW],["__file","video-camera-filled.vue"]]),ZW={name:"VideoCamera"},QW={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},eq=p("path",{fill:"currentColor",d:"M704 768V256H128v512h576zm64-416 192-96v512l-192-96v128a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V224a32 32 0 0 1 32-32h640a32 32 0 0 1 32 32v128zm0 71.552v176.896l128 64V359.552l-128 64zM192 320h192v64H192v-64z"},null,-1),tq=[eq];function nq(e,t,n,r,o,a){return g(),_("svg",QW,tq)}var rq=y(ZW,[["render",nq],["__file","video-camera.vue"]]),oq={name:"VideoPause"},aq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},lq=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm-96-544q32 0 32 32v256q0 32-32 32t-32-32V384q0-32 32-32zm192 0q32 0 32 32v256q0 32-32 32t-32-32V384q0-32 32-32z"},null,-1),sq=[lq];function iq(e,t,n,r,o,a){return g(),_("svg",aq,sq)}var cq=y(oq,[["render",iq],["__file","video-pause.vue"]]),uq={name:"VideoPlay"},fq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},pq=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm-48-247.616L668.608 512 464 375.616v272.768zm10.624-342.656 249.472 166.336a48 48 0 0 1 0 79.872L474.624 718.272A48 48 0 0 1 400 678.336V345.6a48 48 0 0 1 74.624-39.936z"},null,-1),dq=[pq];function hq(e,t,n,r,o,a){return g(),_("svg",fq,dq)}var vq=y(uq,[["render",hq],["__file","video-play.vue"]]),mq={name:"View"},gq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},wq=p("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352zm0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288zm0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448zm0 64a160.192 160.192 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160z"},null,-1),_q=[wq];function yq(e,t,n,r,o,a){return g(),_("svg",gq,_q)}let V3,T3,O3,B3;ol=y(mq,[["render",yq],["__file","view.vue"]]),V3={name:"WalletFilled"},T3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},O3=p("path",{fill:"currentColor",d:"M688 512a112 112 0 1 0 0 224h208v160H128V352h768v160H688zm32 160h-32a48 48 0 0 1 0-96h32a48 48 0 0 1 0 96zm-80-544 128 160H384l256-160z"},null,-1),B3=[O3];function bq(e,t,n,r,o,a){return g(),_("svg",T3,B3)}var zq=y(V3,[["render",bq],["__file","wallet-filled.vue"]]),xq={name:"Wallet"},Cq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Mq=p("path",{fill:"currentColor",d:"M640 288h-64V128H128v704h384v32a32 32 0 0 0 32 32H96a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32h512a32 32 0 0 1 32 32v192z"},null,-1),Lq=p("path",{fill:"currentColor",d:"M128 320v512h768V320H128zm-32-64h832a32 32 0 0 1 32 32v576a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32z"},null,-1),Hq=p("path",{fill:"currentColor",d:"M704 640a64 64 0 1 1 0-128 64 64 0 0 1 0 128z"},null,-1),kq=[Mq,Lq,Hq];function Eq(e,t,n,r,o,a){return g(),_("svg",Cq,kq)}var Aq=y(xq,[["render",Eq],["__file","wallet.vue"]]),Sq={name:"WarnTriangleFilled"},Vq={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"enable-background":"new 0 0 1024 1024"},viewBox:"0 0 1024 1024"},Tq=p("path",{fill:"currentColor",d:"M928.99 755.83 574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z"},null,-1),Oq=[Tq];function Bq(e,t,n,r,o,a){return g(),_("svg",Vq,Oq)}var Pq=y(Sq,[["render",Bq],["__file","warn-triangle-filled.vue"]]),Iq={name:"WarningFilled"},Fq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},Nq=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"},null,-1),Rq=[Nq];function Dq(e,t,n,r,o,a){return g(),_("svg",Fq,Rq)}let P3,I3,F3,N3;w0=y(Iq,[["render",Dq],["__file","warning-filled.vue"]]),P3={name:"Warning"},I3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},F3=p("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768zm48-176a48 48 0 1 1-96 0 48 48 0 0 1 96 0zm-48-464a32 32 0 0 1 32 32v288a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32z"},null,-1),N3=[F3];function $q(e,t,n,r,o,a){return g(),_("svg",I3,N3)}var jq=y(P3,[["render",$q],["__file","warning.vue"]]),Uq={name:"Watch"},Wq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},qq=p("path",{fill:"currentColor",d:"M512 768a256 256 0 1 0 0-512 256 256 0 0 0 0 512zm0 64a320 320 0 1 1 0-640 320 320 0 0 1 0 640z"},null,-1),Gq=p("path",{fill:"currentColor",d:"M480 352a32 32 0 0 1 32 32v160a32 32 0 0 1-64 0V384a32 32 0 0 1 32-32z"},null,-1),Kq=p("path",{fill:"currentColor",d:"M480 512h128q32 0 32 32t-32 32H480q-32 0-32-32t32-32zm128-256V128H416v128h-64V64h320v192h-64zM416 768v128h192V768h64v192H352V768h64z"},null,-1),Yq=[qq,Gq,Kq];function Jq(e,t,n,r,o,a){return g(),_("svg",Wq,Yq)}var Xq=y(Uq,[["render",Jq],["__file","watch.vue"]]),Zq={name:"Watermelon"},Qq={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},eG=p("path",{fill:"currentColor",d:"m683.072 600.32-43.648 162.816-61.824-16.512 53.248-198.528L576 493.248l-158.4 158.4-45.248-45.248 158.4-158.4-55.616-55.616-198.528 53.248-16.512-61.824 162.816-43.648L282.752 200A384 384 0 0 0 824 741.248L683.072 600.32zm231.552 141.056a448 448 0 1 1-632-632l632 632z"},null,-1),tG=[eG];function nG(e,t,n,r,o,a){return g(),_("svg",Qq,tG)}var rG=y(Zq,[["render",nG],["__file","watermelon.vue"]]),oG={name:"WindPower"},aG={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},lG=p("path",{fill:"currentColor",d:"M160 64q32 0 32 32v832q0 32-32 32t-32-32V96q0-32 32-32zm416 354.624 128-11.584V168.96l-128-11.52v261.12zm-64 5.824V151.552L320 134.08V160h-64V64l616.704 56.064A96 96 0 0 1 960 215.68v144.64a96 96 0 0 1-87.296 95.616L256 512V224h64v217.92l192-17.472zm256-23.232 98.88-8.96A32 32 0 0 0 896 360.32V215.68a32 32 0 0 0-29.12-31.872l-98.88-8.96v226.368z"},null,-1),sG=[lG];function iG(e,t,n,r,o,a){return g(),_("svg",aG,sG)}var cG=y(oG,[["render",iG],["__file","wind-power.vue"]]),uG={name:"ZoomIn"},fG={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},pG=p("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zm-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96z"},null,-1),dG=[pG];function hG(e,t,n,r,o,a){return g(),_("svg",fG,dG)}let R3,D3,$3,j3;L1=y(uG,[["render",hG],["__file","zoom-in.vue"]]),R3={name:"ZoomOut"},D3={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},$3=p("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zM352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64z"},null,-1),j3=[$3];function vG(e,t,n,r,o,a){return g(),_("svg",D3,j3)}M1=y(R3,[["render",vG],["__file","zoom-out.vue"]]);let U3,Ta,W3,q3,Oa,G3;U3=Object.freeze(Object.defineProperty({__proto__:null,AddLocation:nm,Aim:cm,AlarmClock:mm,Apple:zm,ArrowDown:D1,ArrowDownBold:km,ArrowLeft:u1,ArrowLeftBold:Bm,ArrowRight:f1,ArrowRightBold:$m,ArrowUp:q1,ArrowUpBold:Ym,Avatar:n7,Back:c7,Baseball:m7,Basketball:z7,Bell:P7,BellFilled:k7,Bicycle:$7,Bottom:ig,BottomLeft:Y7,BottomRight:ng,Bowl:hg,Box:zg,Briefcase:kg,Brush:Rg,BrushFilled:Og,Burger:qg,Calendar:Zg,Camera:uw,CameraFilled:ow,CaretBottom:mw,CaretLeft:zw,CaretRight:kw,CaretTop:Ow,Cellphone:Rw,ChatDotRound:Gw,ChatDotSquare:e_,ChatLineRound:s_,ChatLineSquare:h_,ChatRound:y_,ChatSquare:L_,Check:g1,Checked:T_,Cherry:N_,Chicken:W_,ChromeFilled:Q_,CircleCheck:Tr,CircleCheckFilled:ay,CircleClose:Or,CircleCloseFilled:Aa,CirclePlus:ky,CirclePlusFilled:yy,Clock:Py,Close:y0,CloseBold:$y,Cloudy:Yy,Coffee:sb,CoffeeCup:tb,Coin:vb,ColdDrink:bb,Collection:Ob,CollectionTag:Hb,Comment:Rb,Compass:Gb,Connection:ez,Coordinate:sz,CopyDocument:hz,Cpu:bz,CreditCard:kz,Crop:Bz,DArrowLeft:j1,DArrowRight:W1,DCaret:jz,DataAnalysis:Yz,DataBoard:rx,DataLine:cx,Delete:_1,DeleteFilled:vx,DeleteLocation:xx,Dessert:Ax,Discount:Ix,Dish:Yx,DishDot:jx,Document:w1,DocumentAdd:tC,DocumentChecked:sC,DocumentCopy:dC,DocumentDelete:_C,DocumentRemove:MC,Download:VC,Drizzling:FC,Edit:XC,EditPen:UC,Eleme:cM,ElemeFilled:rM,ElementPlus:vM,Expand:bM,Failed:HM,Female:BM,Files:DM,Film:KM,Filter:eL,Finished:lL,FirstAidKit:dL,Flag:_L,Fold:ML,Folder:sH,FolderAdd:SL,FolderChecked:IL,FolderDelete:jL,FolderOpened:YL,FolderRemove:tH,Food:dH,Football:yH,ForkSpoon:LH,Fries:VH,FullScreen:b1,Goblet:rk,GobletFull:NH,GobletSquare:XH,GobletSquareFull:WH,GoldMedal:uk,Goods:zk,GoodsFilled:mk,Grape:kk,Grid:Ok,Guide:Dk,Handbag:Gk,Headset:Qk,Help:fE,HelpFilled:aE,Hide:al,Histogram:_E,HomeFilled:ME,HotWater:SE,House:IE,IceCream:tA,IceCreamRound:jE,IceCreamSquare:YE,IceDrink:sA,IceTea:dA,InfoFilled:Sa,Iphone:CA,Key:AA,KnifeFork:PA,Lightning:jA,Link:YA,List:tS,Loading:jr,Location:xS,LocationFilled:iS,LocationInformation:mS,Lock:AS,Lollipop:PS,MagicStick:$S,Magnet:KS,Male:nV,Management:iV,MapLocation:vV,Medal:zV,Memo:AV,Menu:PV,Message:YV,MessageBox:$V,Mic:tT,Microphone:sT,MilkTea:dT,Minus:_T,Money:HT,Monitor:TT,Moon:qT,MoonNight:RT,More:cl,MoreFilled:U1,MostlyCloudy:eO,Mouse:sO,Mug:dO,Mute:HO,MuteNotification:yO,NoSmoking:TO,Notebook:RO,Notification:GO,Odometer:tB,OfficeBuilding:cB,Open:mB,Operation:zB,Opportunity:kB,Orange:OB,Paperclip:RB,PartlyCloudy:GB,Pear:QB,Phone:fP,PhoneFilled:aP,Picture:SP,PictureFilled:gP,PictureRounded:CP,PieChart:FP,Place:qP,Platform:ZP,Plus:oI,Pointer:uI,Position:mI,Postcard:xI,Pouring:EI,Present:FI,PriceTag:WI,Printer:XI,Promotion:rF,QuartzWatch:fF,QuestionFilled:gF,Rank:xF,Reading:IF,ReadingLamp:AF,Refresh:WF,RefreshLeft:H1,RefreshRight:k1,Refrigerator:XF,Remove:uN,RemoveFilled:rN,Right:mN,ScaleToOriginal:z1,School:xN,Scissor:EN,Search:BN,Select:DN,Sell:GN,SemiSelect:QN,Service:aR,SetUp:hR,Setting:yR,Share:LR,Ship:VR,Shop:FR,ShoppingBag:WR,ShoppingCart:oD,ShoppingCartFull:ZR,ShoppingTrolley:uD,Smoking:gD,Soccer:xD,SoldOut:ED,Sort:GD,SortDown:BD,SortUp:DD,Stamp:QD,Star:f$,StarFilled:a$,Stopwatch:w$,SuccessFilled:Va,Sugar:E$,Suitcase:$$,SuitcaseLine:B$,Sunny:K$,Sunrise:ej,Sunset:lj,Switch:Lj,SwitchButton:dj,SwitchFilled:yj,TakeawayBox:Vj,Ticket:Fj,Tickets:Uj,Timer:Zj,ToiletPaper:aU,Tools:fU,Top:SU,TopLeft:wU,TopRight:MU,TrendCharts:IU,Trophy:YU,TrophyBase:jU,TurnOff:nW,Umbrella:iW,Unlock:vW,Upload:HW,UploadFilled:bW,User:NW,UserFilled:TW,Van:WW,VideoCamera:rq,VideoCameraFilled:XW,VideoPause:cq,VideoPlay:vq,View:ol,Wallet:Aq,WalletFilled:zq,WarnTriangleFilled:Pq,Warning:jq,WarningFilled:w0,Watch:Xq,Watermelon:rG,WindPower:cG,ZoomIn:L1,ZoomOut:M1},Symbol.toStringTag,{value:"Module"})),Ta="__epPropKey",Ot=e=>e,W3=e=>_e(e)&&!!e[Ta],qr=(e,t)=>{if(!_e(e)||W3(e))return e;const{values:n,required:r,default:o,type:a,validator:l}=e,i={type:a,required:!!r,validator:n||l?s=>{let c=!1,u=[];if(n&&(u=Array.from(n),pe(e,"default")&&u.push(o),c||(c=u.includes(s))),l&&(c||(c=l(s))),!c&&u.length>0){const f=[...new Set(u)].map(v=>JSON.stringify(v)).join(", ");$8(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${f}], got value ${JSON.stringify(s)}.`)}return c}:void 0,[Ta]:!0};return pe(e,"default")&&(i.default=o),i},M2=e=>rl(Object.entries(e).map(([t,n])=>[t,qr(n,t)])),J1=Ot([String,Object,Function]),Gu={Close:y0},q3={Close:y0,SuccessFilled:Va,InfoFilled:Sa,WarningFilled:w0,CircleCloseFilled:Aa},Oa={success:Va,warning:w0,error:Aa,info:Sa},Ju={validating:jr,success:Tr,error:Or},m0=(e,t)=>{if(e.install=n=>{for(const r of[e,...Object.values(t??{})])n.component(r.name,r)},t)for(const[n,r]of Object.entries(t))e[n]=r;return e},G3=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),pu=e=>(e.install=ct,e),E1={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},K1=["","default","small","large"],Ou={large:40,default:32,small:24},y1=e=>e;var mG={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};let K3,Y3,J3,Ba,X3,cn,Pa,Ia,Fa,Na,Ra,Da,l0;K3=e=>(t,n)=>Y3(t,n,J(e)),Y3=(e,t,n)=>Rr(n,e,e).replace(/\{(\w+)\}/g,(r,o)=>{var a;return`${(a=t==null?void 0:t[o])!=null?a:`{${o}}`}`}),J3=e=>{const t=Z(()=>J(e).name),n=Le(e)?e:de(e);return{lang:t,locale:n,t:K3(e)}},Ba=Symbol("localeContextKey"),x1=e=>{const t=e||Se(Ba,de());return J3(Z(()=>t.value||mG))},M0="el",X3="is-",cn=(e,t,n,r,o)=>{let a=`${e}-${t}`;return n&&(a+=`-${n}`),r&&(a+=`__${r}`),o&&(a+=`--${o}`),a},Pa=Symbol("namespaceContextKey"),il=e=>{const t=e||Se(Pa,de(M0));return Z(()=>J(t)||M0)},h0=(e,t)=>{const n=il(t);return{namespace:n,b:(r="")=>cn(n.value,e,r,"",""),e:r=>r?cn(n.value,e,"",r,""):"",m:r=>r?cn(n.value,e,"","",r):"",be:(r,o)=>r&&o?cn(n.value,e,r,o,""):"",em:(r,o)=>r&&o?cn(n.value,e,"",r,o):"",bm:(r,o)=>r&&o?cn(n.value,e,r,"",o):"",bem:(r,o,a)=>r&&o&&a?cn(n.value,e,r,o,a):"",is:(r,...o)=>{const a=o.length>=1?o[0]:!0;return r&&a?`${X3}${r}`:""},cssVar:r=>{const o={};for(const a in r)r[a]&&(o[`--${n.value}-${a}`]=r[a]);return o},cssVarName:r=>`--${n.value}-${r}`,cssVarBlock:r=>{const o={};for(const a in r)r[a]&&(o[`--${n.value}-${e}-${a}`]=r[a]);return o},cssVarBlockName:r=>`--${n.value}-${e}-${r}`}},Ia=de(0),Fa=2e3,Na=Symbol("zIndexContextKey"),C1=e=>{const t=e||Se(Na,void 0),n=Z(()=>{const o=J(t);return jn(o)?o:Fa}),r=Z(()=>n.value+Ia.value);return{initialZIndex:n,currentZIndex:r,nextZIndex:()=>(Ia.value++,r.value)}},Z1=qr({type:String,values:K1,required:!1}),Ra=Symbol("size"),Xu=()=>{const e=Se(Ra,{});return Z(()=>J(e.size)||"")},Da=Symbol(),l0=de(),$r=function(e,t=void 0){const n=Te()?Se(Da,l0):l0;return e?Z(()=>{var r,o;return(o=(r=n.value)==null?void 0:r[e])!=null?o:t}):n},sl=function(e,t){const n=$r(),r=h0(e,Z(()=>{var i;return((i=n.value)==null?void 0:i.namespace)||M0})),o=x1(Z(()=>{var i;return(i=n.value)==null?void 0:i.locale})),a=C1(Z(()=>{var i;return((i=n.value)==null?void 0:i.zIndex)||Fa})),l=Z(()=>{var i;return J(t)||((i=n.value)==null?void 0:i.size)||""});return Z3(Z(()=>J(n)||{})),{ns:r,locale:o,zIndex:a,size:l}};const Z3=(e,t,n=!1)=>{var r;const o=!!Te(),a=o?$r():void 0,l=(r=t==null?void 0:t.provide)!=null?r:o?qt:void 0;if(!l)return;const i=Z(()=>{const s=J(e);return a!=null&&a.value?gG(a.value,s):s});return l(Da,i),l(Ba,Z(()=>i.value.locale)),l(Pa,Z(()=>i.value.namespace)),l(Na,Z(()=>i.value.zIndex)),l(Ra,{size:Z(()=>i.value.size||"")}),(n||!l0.value)&&(l0.value=i.value),i},gG=(e,t)=>{var n;const r=[...new Set([...Pr(e),...Pr(t)])],o={};for(const a of r)o[a]=(n=t[a])!=null?n:e[a];return o},wG=M2({a11y:{type:Boolean,default:!0},locale:{type:Ot(Object)},size:Z1,button:{type:Ot(Object)},experimentalFeatures:{type:Ot(Object)},keyboardNavigation:{type:Boolean,default:!0},message:{type:Ot(Object)},zIndex:Number,namespace:{type:String,default:"el"}}),$a={},_G=De({name:"ElConfigProvider",props:wG,setup(e,{slots:t}){Ae(()=>e.message,r=>{Object.assign($a,r??{})},{immediate:!0,deep:!0});const n=Z3(e);return()=>S2(t,"default",{config:n==null?void 0:n.value})}}),yG=m0(_G);v0=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n};const bG=M2({size:{type:Ot([Number,String])},color:{type:String}}),zG=De({name:"ElIcon",inheritAttrs:!1}),xG=De({...zG,props:bG,setup(e){const t=e,n=h0("icon"),r=Z(()=>{const{size:o,color:a}=t;return!o&&!a?{}:{fontSize:p1(o)?void 0:T1(o),"--color":a}});return(o,a)=>(g(),_("i",Sr({class:J(n).b(),style:J(r)},o.$attrs),[S2(o.$slots,"default")],16))}});var CG=v0(xG,[["__file","/home/runner/work/element-plus/element-plus/packages/components/icon/src/icon.vue"]]);let Q3,ec,tc,nc;kr=m0(CG),Q3=M2({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"}}),ec=["textContent"],tc=De({name:"ElBadge"}),nc=De({...tc,props:Q3,setup(e,{expose:t}){const n=e,r=h0("badge"),o=Z(()=>n.isDot?"":jn(n.value)&&jn(n.max)?n.max(g(),_("div",{class:st(J(r).b())},[S2(a.$slots,"default"),we(vn,{name:`${J(r).namespace.value}-zoom-in-center`,persisted:""},{default:Bt(()=>[Hr(p("sup",{class:st([J(r).e("content"),J(r).em("content",a.type),J(r).is("fixed",!!a.$slots.default),J(r).is("dot",a.isDot)]),textContent:Xr(J(o))},null,10,ec),[[Er,!a.hidden&&(J(o)||a.isDot)]])]),_:1},8,["name"])],2))}});var MG=v0(nc,[["__file","/home/runner/work/element-plus/element-plus/packages/components/badge/src/badge.vue"]]);const LG=m0(MG),rc=["success","info","warning","error"],rt=y1({customClass:"",center:!1,dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:gn?document.body:void 0}),HG=M2({customClass:{type:String,default:rt.customClass},center:{type:Boolean,default:rt.center},dangerouslyUseHTMLString:{type:Boolean,default:rt.dangerouslyUseHTMLString},duration:{type:Number,default:rt.duration},icon:{type:J1,default:rt.icon},id:{type:String,default:rt.id},message:{type:Ot([String,Object,Function]),default:rt.message},onClose:{type:Ot(Function),required:!1},showClose:{type:Boolean,default:rt.showClose},type:{type:String,values:rc,default:rt.type},offset:{type:Number,default:rt.offset},zIndex:{type:Number,default:rt.zIndex},grouping:{type:Boolean,default:rt.grouping},repeatNum:{type:Number,default:rt.repeatNum}}),kG={destroy:()=>!0},zt=$l([]),EG=e=>{const t=zt.findIndex(o=>o.id===e),n=zt[t];let r;return t>0&&(r=zt[t-1]),{current:n,prev:r}},AG=e=>{const{prev:t}=EG(e);return t?t.vm.exposed.bottom.value:0},SG=(e,t)=>zt.findIndex(n=>n.id===e)>0?20:t,VG=["id"],TG=["innerHTML"],OG=De({name:"ElMessage"}),BG=De({...OG,props:HG,emits:kG,setup(e,{expose:t}){const n=e,{Close:r}=q3,{ns:o,zIndex:a}=sl("message"),{currentZIndex:l,nextZIndex:i}=a,s=de(),c=de(!1),u=de(0);let f;const v=Z(()=>n.type?n.type==="error"?"danger":n.type:"info"),b=Z(()=>{const S=n.type;return{[o.bm("icon",S)]:S&&Oa[S]}}),C=Z(()=>n.icon||Oa[n.type]||""),k=Z(()=>AG(n.id)),A=Z(()=>SG(n.id,n.offset)+k.value),w=Z(()=>u.value+A.value),m=Z(()=>({top:`${A.value}px`,zIndex:l.value}));function M(){n.duration!==0&&({stop:f}=X1(()=>{H()},n.duration))}function L(){f==null||f()}function H(){c.value=!1}function T({code:S}){S===E1.esc&&H()}return hn(()=>{M(),i(),c.value=!0}),Ae(()=>n.repeatNum,()=>{L(),M()}),k2(document,"keydown",T),i1(s,()=>{u.value=s.value.getBoundingClientRect().height}),t({visible:c,bottom:w,close:H}),(S,O)=>(g(),et(vn,{name:J(o).b("fade"),onBeforeLeave:S.onClose,onAfterLeave:O[0]||(O[0]=N=>S.$emit("destroy")),persisted:""},{default:Bt(()=>[Hr(p("div",{id:S.id,ref_key:"messageRef",ref:s,class:st([J(o).b(),{[J(o).m(S.type)]:S.type&&!S.icon},J(o).is("center",S.center),J(o).is("closable",S.showClose),S.customClass]),style:$n(J(m)),role:"alert",onMouseenter:L,onMouseleave:M},[S.repeatNum>1?(g(),et(J(LG),{key:0,value:S.repeatNum,type:J(v),class:st(J(o).e("badge"))},null,8,["value","type","class"])):V2("v-if",!0),J(C)?(g(),et(J(kr),{key:1,class:st([J(o).e("icon"),J(b)])},{default:Bt(()=>[(g(),et(Br(J(C))))]),_:1},8,["class"])):V2("v-if",!0),S2(S.$slots,"default",{},()=>[S.dangerouslyUseHTMLString?(g(),_(Re,{key:1},[V2(" Caution here, message could've been compromised, never use user's input as message "),p("p",{class:st(J(o).e("content")),innerHTML:S.message},null,10,TG)],2112)):(g(),_("p",{key:0,class:st(J(o).e("content"))},Xr(S.message),3))]),S.showClose?(g(),et(J(kr),{key:2,class:st(J(o).e("closeBtn")),onClick:c1(H,["stop"])},{default:Bt(()=>[we(J(r))]),_:1},8,["class","onClick"])):V2("v-if",!0)],46,VG),[[Er,c.value]])]),_:3},8,["name","onBeforeLeave"]))}});var PG=v0(BG,[["__file","/home/runner/work/element-plus/element-plus/packages/components/message/src/message.vue"]]);let IG=1;const oc=e=>{const t=!e||ye(e)||Tt(e)||oe(e)?{message:e}:e,n={...rt,...t};if(!n.appendTo)n.appendTo=document.body;else if(ye(n.appendTo)){let r=document.querySelector(n.appendTo);v1(r)||(r=document.body),n.appendTo=r}return n},FG=e=>{const t=zt.indexOf(e);if(t===-1)return;zt.splice(t,1);const{handler:n}=e;n.close()},NG=({appendTo:e,...t},n)=>{const r=`message_${IG++}`,o=t.onClose,a=document.createElement("div"),l={...t,id:r,onClose:()=>{o==null||o(),FG(c)},onDestroy:()=>{qo(null,a)}},i=we(PG,l,oe(l.message)||Tt(l.message)?{default:oe(l.message)?l.message:()=>l.message}:null);i.appContext=n||g2._context,qo(i,a),e.appendChild(a.firstElementChild);const s=i.component,c={id:r,vnode:i,vm:s,handler:{close:()=>{s.exposed.visible.value=!1}},props:i.component.props};return c},g2=(e={},t)=>{if(!gn)return{close:()=>{}};if(jn($a.max)&&zt.length>=$a.max)return{close:()=>{}};const n=oc(e);if(n.grouping&&zt.length){const o=zt.find(({vnode:a})=>{var l;return((l=a.props)==null?void 0:l.message)===n.message});if(o)return o.props.repeatNum+=1,o.props.type=n.type,o.handler}const r=NG(n,t);return zt.push(r),r.handler};rc.forEach(e=>{g2[e]=(t={},n)=>{const r=oc(t);return g2({...r,type:e},n)}});function RG(e){for(const t of zt)(!e||e===t.props.type)&&t.handler.close()}g2.closeAll=RG,g2._context=null,b0=G3(g2,"$message");class DG{constructor(){x2(this,"options",{baseURL:"",headers:{},watch:!1});this.options.onRequest=t=>{const n=c2();this.options.baseURL=n.public.VITE_APP_BASE_URL||`${location.origin}/api/`,this.options.headers[n.public.VITE_REQUEST_HEADER_SITEID_KEY]=qn("siteId").value||n.public.VITE_SITE_ID,this.options.headers[n.public.VITE_REQUEST_HEADER_CHANNEL_KEY]="pc",E2()&&(this.options.headers[n.public.VITE_REQUEST_HEADER_TOKEN_KEY]=E2())},this.options.onResponse=({response:t,options:n})=>{const{_data:r}=t;this.handleNetworkError(t),r.code!=null&&(r.code==1?n.showSuccessMessage&&b0({message:r.msg,type:"success"}):r.code==0?b0({message:r.msg,type:"error"}):this.handleAuthError(r.code))}}get(t,n={},r={}){return this.request(t,"GET",{query:n},r)}post(t,n={},r={}){return this.request(t,"POST",{body:n},r)}put(t,n={},r={}){return this.request(t,"PUT",{body:n},r)}delete(t,n={}){return this.request(t,"DELETE",{},n)}request(t,n,r={},o={}){return new Promise((a,l)=>{setTimeout(()=>{const i=c2();!this.options.baseURL&&(this.options.baseURL=i.public.VITE_APP_BASE_URL||`${location.origin}/api/`),this.options.baseURL.substr(-1)!="/"&&(this.options.baseURL+="/");for(const s in r.query)r.query[s]instanceof Array&&(r.query[s].forEach((c,u)=>{r.query[`${s}[${u}]`]=c}),delete r.query[s]);Nd(t,{...this.options,method:n,...o,...r},"$nIfBrkE4uq").then(s=>{const{data:{value:c},error:u}=s;c?c.code&&c.code==1||c.type&&c.type=="application/zip"?a(c):l(c):l(u)}).catch(s=>{l(s)})},this.options.baseURL?0:500)})}handleAuthError(t){switch(t){case 401:S0().logout();break}}handleNetworkError(t){if(t.status&&t.status!=200){let n="";switch(t.status){case 400:n=Xe("request.400");break;case 401:n=Xe("request.401");break;case 403:n=Xe("request.403");break;case 404:n=t.url+Xe("request.404");break;case 405:n=Xe("request.405");break;case 408:n=Xe("request.408");break;case 409:n=Xe("request.409");break;case 500:n=Xe("request.500");break;case 501:n=Xe("request.501");break;case 502:n=Xe("request.502");break;case 503:n=Xe("request.503");break;case 504:n=Xe("request.504");break;case 505:n=Xe("request.505");break}b0({message:n,type:"error"})}}}Oe=new DG,_u=function(){return Oe.get("captcha",{time:new Date().getTime()})},bu=function(e){return Oe.get(`agreement/${e}`)},yu=function(e){return Oe.post(`send/mobile/${e.type}`,e)},r8=function(){return Oe.get("copyright")};function $G(){return Oe.get("site")}const ac=_r("system",{state:()=>({lang:m1.get("lang")??"zh-cn",site:{front_end_name:"",site_name:""}}),actions:{async getSitenfo(){await $G().then(e=>{this.site=e.data,this.site.status==3&&Yr("/site/close",{replace:!0})}).catch(e=>{Yr("/site/nosite",{replace:!0})})}}}),jG=Ar((e,t)=>{new F6(ke().$getI18n()).loadLocaleMessages(e.meta.addon||"app",e.path,ac().lang)}),UG=[zd,jG],s0={auth:()=>me(()=>import("./auth.7e6731df.js").then(async e=>(await e.__tla,e)),["./auth.7e6731df.js","./useLogin.368406ce.js"],import.meta.url)};function WG(e,t){const{pathname:n,search:r,hash:o}=t,a=e.indexOf("#");if(a>-1){const l=o.includes(e.slice(a))?e.slice(a).length:1;let i=o.slice(l);return i[0]!=="/"&&(i="/"+i),Cs(i,"")}return Cs(n,e)+r+o}const qG=Et({name:"nuxt:router",enforce:"pre",async setup(e){var C,k;let t,n,r=c2().app.baseURL;Ut.hashMode&&!r.includes("#")&&(r+="#");const o=((C=Ut.history)==null?void 0:C.call(Ut,r))??(Ut.hashMode?xp(r):Xs(r)),a=((k=Ut.routes)==null?void 0:k.call(Ut,_a))??_a,l=WG(r,window.location),i=ld({...Ut,history:o,routes:a});e.vueApp.use(i);const s=C2(i.currentRoute.value);i.afterEach((A,w)=>{s.value=w}),Object.defineProperty(e.vueApp.config.globalProperties,"previousRoute",{get:()=>s.value});const c=C2(i.resolve(l)),u=()=>{c.value=i.currentRoute.value};e.hook("page:finish",u),i.afterEach((A,w)=>{var m,M,L,H;((M=(m=A.matched[0])==null?void 0:m.components)==null?void 0:M.default)===((H=(L=w.matched[0])==null?void 0:L.components)==null?void 0:H.default)&&u()});const f={};for(const A in c.value)f[A]=Z(()=>c.value[A]);e._route=it(f),e._middleware=e._middleware||{global:[],named:{}};const v=n0();try{[t,n]=Qo(()=>i.isReady()),await t,n()}catch(A){[t,n]=Qo(()=>$t(e,Fn,[A])),await t,n()}const b=gd("_layout");return i.beforeEach(async(A,w)=>{var M;A.meta=it(A.meta),e.isHydrating&&b.value&&!kn(A.meta.layout)&&(A.meta.layout=b.value),e._processingMiddleware=!0;const m=new Set([...UG,...e._middleware.global]);for(const L of A.matched){const H=L.meta.middleware;if(H)if(Array.isArray(H))for(const T of H)m.add(T);else m.add(H)}for(const L of m){const H=typeof L=="string"?e._middleware.named[L]||await((M=s0[L])==null?void 0:M.call(s0).then(S=>S.default||S)):L;if(!H)throw new Error(`Unknown route middleware: '${L}'.`);const T=await $t(e,H,[A,w]);if(!e.payload.serverRendered&&e.isHydrating&&(T===!1||T instanceof Error)){const S=T||ga({statusCode:404,statusMessage:`Page Not Found: ${l}`});return await $t(e,Fn,[S]),!1}if(T||T===!1)return T}}),i.onError(()=>{delete e._processingMiddleware}),i.afterEach(async(A,w,m)=>{delete e._processingMiddleware,!e.isHydrating&&v.value&&await $t(e,x6),A.matched.length===0&&await $t(e,Fn,[ga({statusCode:404,fatal:!1,statusMessage:`Page not found: ${A.fullPath}`})])}),e.hooks.hookOnce("app:created",async()=>{try{await i.replace({...i.resolve(l),name:void 0,force:!0})}catch(A){await $t(e,Fn,[A])}}),{provide:{router:i}}}},1),w2={container:()=>me(()=>import("./container.4f8ff4b4.js").then(async e=>(await e.__tla,e)),["./container.4f8ff4b4.js","./el-main.2d80fc5e.js","./el-main.36617317.css","./_plugin-vue_export-helper.c27b6911.js"],import.meta.url).then(e=>e.default||e),default:()=>me(()=>import("./default.4860372c.js").then(async e=>(await e.__tla,e)),["./default.4860372c.js","./el-main.2d80fc5e.js","./el-main.36617317.css","./nuxt-link.404211f0.js","./el-popper.f96f4ae9.js","./index.f6314314.js","./index.59e0a5b1.js","./vnode.a078d472.js","./el-popper.c80d9727.css","./el-button.946140c1.js","./use-form-item.9fe2eb56.js","./el-button.2689f638.css","./_plugin-vue_export-helper.c27b6911.js","./default.2ce86264.css"],import.meta.url).then(e=>e.default||e)},GG=Et({name:"nuxt:prefetch",setup(e){const t=mn();e.hooks.hook("app:mounted",()=>{t.beforeEach(async n=>{var o;const r=(o=n==null?void 0:n.meta)==null?void 0:o.layout;r&&typeof w2[r]=="function"&&await w2[r]()})}),e.hooks.hook("link:prefetch",n=>{var l,i,s,c;if(Gn(n))return;const r=t.resolve(n);if(!r)return;const o=(l=r==null?void 0:r.meta)==null?void 0:l.layout;let a=Array.isArray((i=r==null?void 0:r.meta)==null?void 0:i.middleware)?(s=r==null?void 0:r.meta)==null?void 0:s.middleware:[(c=r==null?void 0:r.meta)==null?void 0:c.middleware];a=a.filter(u=>typeof u=="string");for(const u of a)typeof s0[u]=="function"&&s0[u]();o&&typeof w2[o]=="function"&&w2[o]()})}}),KG=Et({name:"nuxt:chunk-reload",setup(e){const t=mn(),n=c2(),r=new Set;t.beforeEach(()=>{r.clear()}),e.hook("app:chunkError",({error:o})=>{r.add(o)}),t.onError((o,a)=>{if(r.has(o)){const l="href"in a&&a.href.startsWith("#")?n.app.baseURL+a.href:J2(n.app.baseURL,a.fullPath);nh({path:l,persistState:!0})}})}}),YG=Et({name:"nuxt:payload",setup(e){eh()&&(e.hooks.hook("link:prefetch",async t=>{A2(t).protocol||await S6(t)}),mn().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await S6(t.path);r&&Object.assign(e.static.data,r.data)}))}}),JG=Et(e=>{for(const[t,n]of Object.entries(U3))e.vueApp.component(t,n)}),ja=typeof window<"u",XG=typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol",un=e=>XG?Symbol(e):e,ZG=(e,t,n)=>QG({l:e,k:t,s:n}),QG=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Fe=e=>typeof e=="number"&&isFinite(e),eK=e=>Wa(e)==="[object Date]",fn=e=>Wa(e)==="[object RegExp]",zr=e=>se(e)&&Object.keys(e).length===0;function tK(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const $e=Object.assign;let lc;const i0=()=>lc||(lc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function sc(e){return e.replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}const nK=Object.prototype.hasOwnProperty;function Ua(e,t){return nK.call(e,t)}const Ce=Array.isArray,Ve=e=>typeof e=="function",q=e=>typeof e=="string",he=e=>typeof e=="boolean",Me=e=>e!==null&&typeof e=="object",ic=Object.prototype.toString,Wa=e=>ic.call(e),se=e=>Wa(e)==="[object Object]",rK=e=>e==null?"":Ce(e)||se(e)&&e.toString===ic?JSON.stringify(e,null,2):String(e),ge={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,__EXTEND_POINT__:15};function xr(e,t,n={}){const{domain:r,messages:o,args:a}=n,l=e,i=new SyntaxError(String(l));return i.code=e,t&&(i.location=t),i.domain=r,i}function oK(e){throw e}function aK(e,t,n){return{line:e,column:t,offset:n}}function qa(e,t,n){const r={start:e,end:t};return n!=null&&(r.source=n),r}const Wt=" ",lK="\r",Qe=` +`,sK=String.fromCharCode(8232),iK=String.fromCharCode(8233);function cK(e){const t=e;let n=0,r=1,o=1,a=0;const l=S=>t[S]===lK&&t[S+1]===Qe,i=S=>t[S]===Qe,s=S=>t[S]===iK,c=S=>t[S]===sK,u=S=>l(S)||i(S)||s(S)||c(S),f=()=>n,v=()=>r,b=()=>o,C=()=>a,k=S=>l(S)||s(S)||c(S)?Qe:t[S],A=()=>k(n),w=()=>k(n+a);function m(){return a=0,u(n)&&(r++,o=0),l(n)&&n++,n++,o++,t[n]}function M(){return l(n+a)&&a++,a++,t[n+a]}function L(){n=0,r=1,o=1,a=0}function H(S=0){a=S}function T(){const S=n+a;for(;S!==n;)m();a=0}return{index:f,line:v,column:b,peekOffset:C,charAt:k,currentChar:A,currentPeek:w,next:m,peek:M,reset:L,resetPeek:H,skipToPeek:T}}const pn=void 0,cc="'",uK="tokenizer";function fK(e,t={}){const n=t.location!==!1,r=cK(e),o=()=>r.index(),a=()=>aK(r.line(),r.column(),r.index()),l=a(),i=o(),s={currentType:14,offset:i,startLoc:l,endLoc:l,lastType:14,lastOffset:i,lastStartLoc:l,lastEndLoc:l,braceNest:0,inLinked:!1,text:""},c=()=>s,{onError:u}=t;function f(d,h,x,...B){const P=c();if(h.column+=x,h.offset+=x,u){const R=qa(P.startLoc,h),F=xr(d,R,{domain:uK,args:B});u(F)}}function v(d,h,x){d.endLoc=a(),d.currentType=h;const B={type:h};return n&&(B.loc=qa(d.startLoc,d.endLoc)),x!=null&&(B.value=x),B}const b=d=>v(d,14);function C(d,h){return d.currentChar()===h?(d.next(),h):(f(ge.EXPECTED_TOKEN,a(),0,h),"")}function k(d){let h="";for(;d.currentPeek()===Wt||d.currentPeek()===Qe;)h+=d.currentPeek(),d.peek();return h}function A(d){const h=k(d);return d.skipToPeek(),h}function w(d){if(d===pn)return!1;const h=d.charCodeAt(0);return h>=97&&h<=122||h>=65&&h<=90||h===95}function m(d){if(d===pn)return!1;const h=d.charCodeAt(0);return h>=48&&h<=57}function M(d,h){const{currentType:x}=h;if(x!==2)return!1;k(d);const B=w(d.currentPeek());return d.resetPeek(),B}function L(d,h){const{currentType:x}=h;if(x!==2)return!1;k(d);const B=d.currentPeek()==="-"?d.peek():d.currentPeek(),P=m(B);return d.resetPeek(),P}function H(d,h){const{currentType:x}=h;if(x!==2)return!1;k(d);const B=d.currentPeek()===cc;return d.resetPeek(),B}function T(d,h){const{currentType:x}=h;if(x!==8)return!1;k(d);const B=d.currentPeek()===".";return d.resetPeek(),B}function S(d,h){const{currentType:x}=h;if(x!==9)return!1;k(d);const B=w(d.currentPeek());return d.resetPeek(),B}function O(d,h){const{currentType:x}=h;if(!(x===8||x===12))return!1;k(d);const B=d.currentPeek()===":";return d.resetPeek(),B}function N(d,h){const{currentType:x}=h;if(x!==10)return!1;const B=()=>{const R=d.currentPeek();return R==="{"?w(d.peek()):R==="@"||R==="%"||R==="|"||R===":"||R==="."||R===Wt||!R?!1:R===Qe?(d.peek(),B()):w(R)},P=B();return d.resetPeek(),P}function D(d){k(d);const h=d.currentPeek()==="|";return d.resetPeek(),h}function W(d){const h=k(d),x=d.currentPeek()==="%"&&d.peek()==="{";return d.resetPeek(),{isModulo:x,hasSpace:h.length>0}}function $(d,h=!0){const x=(P=!1,R="",F=!1)=>{const E=d.currentPeek();return E==="{"?R==="%"?!1:P:E==="@"||!E?R==="%"?!0:P:E==="%"?(d.peek(),x(P,"%",!0)):E==="|"?R==="%"||F?!0:!(R===Wt||R===Qe):E===Wt?(d.peek(),x(!0,Wt,F)):E===Qe?(d.peek(),x(!0,Qe,F)):!0},B=x();return h&&d.resetPeek(),B}function Q(d,h){const x=d.currentChar();return x===pn?pn:h(x)?(d.next(),x):null}function U(d){return Q(d,h=>{const x=h.charCodeAt(0);return x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===95||x===36})}function ae(d){return Q(d,h=>{const x=h.charCodeAt(0);return x>=48&&x<=57})}function te(d){return Q(d,h=>{const x=h.charCodeAt(0);return x>=48&&x<=57||x>=65&&x<=70||x>=97&&x<=102})}function ue(d){let h="",x="";for(;h=ae(d);)x+=h;return x}function qe(d){A(d);const h=d.currentChar();return h!=="%"&&f(ge.EXPECTED_TOKEN,a(),0,h),d.next(),"%"}function at(d){let h="";for(;;){const x=d.currentChar();if(x==="{"||x==="}"||x==="@"||x==="|"||!x)break;if(x==="%")if($(d))h+=x,d.next();else break;else if(x===Wt||x===Qe)if($(d))h+=x,d.next();else{if(D(d))break;h+=x,d.next()}else h+=x,d.next()}return h}function lt(d){A(d);let h="",x="";for(;h=U(d);)x+=h;return d.currentChar()===pn&&f(ge.UNTERMINATED_CLOSING_BRACE,a(),0),x}function Ye(d){A(d);let h="";return d.currentChar()==="-"?(d.next(),h+=`-${ue(d)}`):h+=ue(d),d.currentChar()===pn&&f(ge.UNTERMINATED_CLOSING_BRACE,a(),0),h}function je(d){A(d),C(d,"'");let h="",x="";const B=R=>R!==cc&&R!==Qe;for(;h=Q(d,B);)h==="\\"?x+=wt(d):x+=h;const P=d.currentChar();return P===Qe||P===pn?(f(ge.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),P===Qe&&(d.next(),C(d,"'")),x):(C(d,"'"),x)}function wt(d){const h=d.currentChar();switch(h){case"\\":case"'":return d.next(),`\\${h}`;case"u":return xt(d,h,4);case"U":return xt(d,h,6);default:return f(ge.UNKNOWN_ESCAPE_SEQUENCE,a(),0,h),""}}function xt(d,h,x){C(d,h);let B="";for(let P=0;PP!=="{"&&P!=="}"&&P!==Wt&&P!==Qe;for(;h=Q(d,B);)x+=h;return x}function G(d){let h="",x="";for(;h=U(d);)x+=h;return x}function j(d){const h=(x=!1,B)=>{const P=d.currentChar();return P==="{"||P==="%"||P==="@"||P==="|"||!P||P===Wt?B:P===Qe?(B+=P,d.next(),h(x,B)):(B+=P,d.next(),h(!0,B))};return h(!1,"")}function X(d){A(d);const h=C(d,"|");return A(d),h}function ce(d,h){let x=null;switch(d.currentChar()){case"{":return h.braceNest>=1&&f(ge.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),d.next(),x=v(h,2,"{"),A(d),h.braceNest++,x;case"}":return h.braceNest>0&&h.currentType===2&&f(ge.EMPTY_PLACEHOLDER,a(),0),d.next(),x=v(h,3,"}"),h.braceNest--,h.braceNest>0&&A(d),h.inLinked&&h.braceNest===0&&(h.inLinked=!1),x;case"@":return h.braceNest>0&&f(ge.UNTERMINATED_CLOSING_BRACE,a(),0),x=ve(d,h)||b(h),h.braceNest=0,x;default:let B=!0,P=!0,R=!0;if(D(d))return h.braceNest>0&&f(ge.UNTERMINATED_CLOSING_BRACE,a(),0),x=v(h,1,X(d)),h.braceNest=0,h.inLinked=!1,x;if(h.braceNest>0&&(h.currentType===5||h.currentType===6||h.currentType===7))return f(ge.UNTERMINATED_CLOSING_BRACE,a(),0),h.braceNest=0,le(d,h);if(B=M(d,h))return x=v(h,5,lt(d)),A(d),x;if(P=L(d,h))return x=v(h,6,Ye(d)),A(d),x;if(R=H(d,h))return x=v(h,7,je(d)),A(d),x;if(!B&&!P&&!R)return x=v(h,13,I(d)),f(ge.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,x.value),A(d),x;break}return x}function ve(d,h){const{currentType:x}=h;let B=null;const P=d.currentChar();switch((x===8||x===9||x===12||x===10)&&(P===Qe||P===Wt)&&f(ge.INVALID_LINKED_FORMAT,a(),0),P){case"@":return d.next(),B=v(h,8,"@"),h.inLinked=!0,B;case".":return A(d),d.next(),v(h,9,".");case":":return A(d),d.next(),v(h,10,":");default:return D(d)?(B=v(h,1,X(d)),h.braceNest=0,h.inLinked=!1,B):T(d,h)||O(d,h)?(A(d),ve(d,h)):S(d,h)?(A(d),v(h,12,G(d))):N(d,h)?(A(d),P==="{"?ce(d,h)||B:v(h,11,j(d))):(x===8&&f(ge.INVALID_LINKED_FORMAT,a(),0),h.braceNest=0,h.inLinked=!1,le(d,h))}}function le(d,h){let x={type:14};if(h.braceNest>0)return ce(d,h)||b(h);if(h.inLinked)return ve(d,h)||b(h);switch(d.currentChar()){case"{":return ce(d,h)||b(h);case"}":return f(ge.UNBALANCED_CLOSING_BRACE,a(),0),d.next(),v(h,3,"}");case"@":return ve(d,h)||b(h);default:if(D(d))return x=v(h,1,X(d)),h.braceNest=0,h.inLinked=!1,x;const{isModulo:B,hasSpace:P}=W(d);if(B)return P?v(h,0,at(d)):v(h,4,qe(d));if($(d))return v(h,0,at(d));break}return x}function z(){const{currentType:d,offset:h,startLoc:x,endLoc:B}=s;return s.lastType=d,s.lastOffset=h,s.lastStartLoc=x,s.lastEndLoc=B,s.offset=o(),s.startLoc=a(),r.currentChar()===pn?v(s,14):le(r,s)}return{nextToken:z,currentOffset:o,currentPosition:a,context:c}}const pK="parser",dK=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function hK(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const r=parseInt(t||n,16);return r<=55295||r>=57344?String.fromCodePoint(r):"\uFFFD"}}}function vK(e={}){const t=e.location!==!1,{onError:n}=e;function r(w,m,M,L,...H){const T=w.currentPosition();if(T.offset+=L,T.column+=L,n){const S=qa(M,T),O=xr(m,S,{domain:pK,args:H});n(O)}}function o(w,m,M){const L={type:w,start:m,end:m};return t&&(L.loc={start:M,end:M}),L}function a(w,m,M,L){w.end=m,L&&(w.type=L),t&&w.loc&&(w.loc.end=M)}function l(w,m){const M=w.context(),L=o(3,M.offset,M.startLoc);return L.value=m,a(L,w.currentOffset(),w.currentPosition()),L}function i(w,m){const M=w.context(),{lastOffset:L,lastStartLoc:H}=M,T=o(5,L,H);return T.index=parseInt(m,10),w.nextToken(),a(T,w.currentOffset(),w.currentPosition()),T}function s(w,m){const M=w.context(),{lastOffset:L,lastStartLoc:H}=M,T=o(4,L,H);return T.key=m,w.nextToken(),a(T,w.currentOffset(),w.currentPosition()),T}function c(w,m){const M=w.context(),{lastOffset:L,lastStartLoc:H}=M,T=o(9,L,H);return T.value=m.replace(dK,hK),w.nextToken(),a(T,w.currentOffset(),w.currentPosition()),T}function u(w){const m=w.nextToken(),M=w.context(),{lastOffset:L,lastStartLoc:H}=M,T=o(8,L,H);return m.type!==12?(r(w,ge.UNEXPECTED_EMPTY_LINKED_MODIFIER,M.lastStartLoc,0),T.value="",a(T,L,H),{nextConsumeToken:m,node:T}):(m.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,M.lastStartLoc,0,At(m)),T.value=m.value||"",a(T,w.currentOffset(),w.currentPosition()),{node:T})}function f(w,m){const M=w.context(),L=o(7,M.offset,M.startLoc);return L.value=m,a(L,w.currentOffset(),w.currentPosition()),L}function v(w){const m=w.context(),M=o(6,m.offset,m.startLoc);let L=w.nextToken();if(L.type===9){const H=u(w);M.modifier=H.node,L=H.nextConsumeToken||w.nextToken()}switch(L.type!==10&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(L)),L=w.nextToken(),L.type===2&&(L=w.nextToken()),L.type){case 11:L.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(L)),M.key=f(w,L.value||"");break;case 5:L.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(L)),M.key=s(w,L.value||"");break;case 6:L.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(L)),M.key=i(w,L.value||"");break;case 7:L.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(L)),M.key=c(w,L.value||"");break;default:r(w,ge.UNEXPECTED_EMPTY_LINKED_KEY,m.lastStartLoc,0);const H=w.context(),T=o(7,H.offset,H.startLoc);return T.value="",a(T,H.offset,H.startLoc),M.key=T,a(M,H.offset,H.startLoc),{nextConsumeToken:L,node:M}}return a(M,w.currentOffset(),w.currentPosition()),{node:M}}function b(w){const m=w.context(),M=m.currentType===1?w.currentOffset():m.offset,L=m.currentType===1?m.endLoc:m.startLoc,H=o(2,M,L);H.items=[];let T=null;do{const N=T||w.nextToken();switch(T=null,N.type){case 0:N.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(N)),H.items.push(l(w,N.value||""));break;case 6:N.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(N)),H.items.push(i(w,N.value||""));break;case 5:N.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(N)),H.items.push(s(w,N.value||""));break;case 7:N.value==null&&r(w,ge.UNEXPECTED_LEXICAL_ANALYSIS,m.lastStartLoc,0,At(N)),H.items.push(c(w,N.value||""));break;case 8:const D=v(w);H.items.push(D.node),T=D.nextConsumeToken||null;break}}while(m.currentType!==14&&m.currentType!==1);const S=m.currentType===1?m.lastOffset:w.currentOffset(),O=m.currentType===1?m.lastEndLoc:w.currentPosition();return a(H,S,O),H}function C(w,m,M,L){const H=w.context();let T=L.items.length===0;const S=o(1,m,M);S.cases=[],S.cases.push(L);do{const O=b(w);T||(T=O.items.length===0),S.cases.push(O)}while(H.currentType!==14);return T&&r(w,ge.MUST_HAVE_MESSAGES_IN_PLURAL,M,0),a(S,w.currentOffset(),w.currentPosition()),S}function k(w){const m=w.context(),{offset:M,startLoc:L}=m,H=b(w);return m.currentType===14?H:C(w,M,L,H)}function A(w){const m=fK(w,$e({},e)),M=m.context(),L=o(0,M.offset,M.startLoc);return t&&L.loc&&(L.loc.source=w),L.body=k(m),M.currentType!==14&&r(m,ge.UNEXPECTED_LEXICAL_ANALYSIS,M.lastStartLoc,0,w[M.offset]||""),a(L,m.currentOffset(),m.currentPosition()),L}return{parse:A}}function At(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"\u2026":t}function mK(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:r=>(n.helpers.add(r),r)}}function uc(e,t){for(let n=0;nl;function s(b,C){l.code+=b}function c(b,C=!0){const k=C?o:"";s(a?k+" ".repeat(b):k)}function u(b=!0){const C=++l.indentLevel;b&&c(C)}function f(b=!0){const C=--l.indentLevel;b&&c(C)}function v(){c(l.indentLevel)}return{context:i,push:s,indent:u,deindent:f,newline:v,helper:b=>`_${b}`,needIndent:()=>l.needIndent}}function _K(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),_2(e,t.key),t.modifier?(e.push(", "),_2(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function yK(e,t){const{helper:n,needIndent:r}=e;e.push(`${n("normalize")}([`),e.indent(r());const o=t.items.length;for(let a=0;a1){e.push(`${n("plural")}([`),e.indent(r());const o=t.cases.length;for(let a=0;a{const n=q(t.mode)?t.mode:"normal",r=q(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,l=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],s=wK(e,{mode:n,filename:r,sourceMap:o,breakLineCode:a,needIndent:l});s.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),s.indent(l),i.length>0&&(s.push(`const { ${i.map(f=>`${f}: _${f}`).join(", ")} } = ctx`),s.newline()),s.push("return "),_2(s,e),s.deindent(l),s.push("}");const{code:c,map:u}=s.context();return{ast:e,code:c,map:u?u.toJSON():void 0}};function CK(e,t={}){const n=$e({},t),r=vK(n).parse(e);return gK(r,n),xK(r,n)}const fc={I18nInit:"i18n:init",FunctionTranslate:"function:translate"},dn=[];dn[0]={w:[0],i:[3,0],["["]:[4],o:[7]},dn[1]={w:[1],["."]:[2],["["]:[4],o:[7]},dn[2]={w:[2],i:[3,0],[0]:[3,0]},dn[3]={i:[3,0],[0]:[3,0],w:[1,1],["."]:[2,1],["["]:[4,1],o:[7,1]},dn[4]={["'"]:[5,0],['"']:[6,0],["["]:[4,2],["]"]:[1,3],o:8,l:[4,0]},dn[5]={["'"]:[4,0],o:8,l:[5,0]},dn[6]={['"']:[4,0],o:8,l:[6,0]};const MK=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function LK(e){return MK.test(e)}function HK(e){const t=e.charCodeAt(0),n=e.charCodeAt(e.length-1);return t===n&&(t===34||t===39)?e.slice(1,-1):e}function kK(e){if(e==null)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function EK(e){const t=e.trim();return e.charAt(0)==="0"&&isNaN(parseInt(e))?!1:LK(t)?HK(t):"*"+t}function AK(e){const t=[];let n=-1,r=0,o=0,a,l,i,s,c,u,f;const v=[];v[0]=()=>{l===void 0?l=i:l+=i},v[1]=()=>{l!==void 0&&(t.push(l),l=void 0)},v[2]=()=>{v[0](),o++},v[3]=()=>{if(o>0)o--,r=4,v[0]();else{if(o=0,l===void 0||(l=EK(l),l===!1))return!1;v[1]()}};function b(){const C=e[n+1];if(r===5&&C==="'"||r===6&&C==='"')return n++,i="\\"+C,v[0](),!0}for(;r!==null;)if(n++,a=e[n],!(a==="\\"&&b())){if(s=kK(a),f=dn[r],c=f[s]||f.l||8,c===8||(r=c[0],c[1]!==void 0&&(u=v[c[1]],u&&(i=a,u()===!1))))return;if(r===7)return t}}const pc=new Map;function SK(e,t){return Me(e)?e[t]:null}function VK(e,t){if(!Me(e))return null;let n=pc.get(t);if(n||(n=AK(t),n&&pc.set(t,n)),!n)return null;const r=n.length;let o=e,a=0;for(;ae,OK=e=>"",BK="text",PK=e=>e.length===0?"":e.join(""),IK=rK;function dc(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function FK(e){const t=Fe(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Fe(e.named.count)||Fe(e.named.n))?Fe(e.named.count)?e.named.count:Fe(e.named.n)?e.named.n:t:t}function NK(e,t){t.count||(t.count=e),t.n||(t.n=e)}function RK(e={}){const t=e.locale,n=FK(e),r=Me(e.pluralRules)&&q(t)&&Ve(e.pluralRules[t])?e.pluralRules[t]:dc,o=Me(e.pluralRules)&&q(t)&&Ve(e.pluralRules[t])?dc:void 0,a=A=>A[r(n,A.length,o)],l=e.list||[],i=A=>l[A],s=e.named||{};Fe(e.pluralIndex)&&NK(n,s);const c=A=>s[A];function u(A){return(Ve(e.messages)?e.messages(A):Me(e.messages)?e.messages[A]:!1)||(e.parent?e.parent.message(A):OK)}const f=A=>e.modifiers?e.modifiers[A]:TK,v=se(e.processor)&&Ve(e.processor.normalize)?e.processor.normalize:PK,b=se(e.processor)&&Ve(e.processor.interpolate)?e.processor.interpolate:IK,C=se(e.processor)&&q(e.processor.type)?e.processor.type:BK,k={list:i,named:c,plural:a,linked:(A,...w)=>{const[m,M]=w;let L="text",H="";w.length===1?Me(m)?(H=m.modifier||H,L=m.type||L):q(m)&&(H=m||H):w.length===2&&(q(m)&&(H=m||H),q(M)&&(L=M||L));let T=u(A)(k);return L==="vnode"&&Ce(T)&&H&&(T=T[0]),H?f(H)(T,L):T},message:u,type:C,interpolate:b,normalize:v};return k}let c0=null;function DK(e){c0=e}function $K(e,t,n){c0&&c0.emit(fc.I18nInit,{timestamp:Date.now(),i18n:e,version:t,meta:n})}const jK=UK(fc.FunctionTranslate);function UK(e){return t=>c0&&c0.emit(e,t)}function WK(e,t,n){return[...new Set([n,...Ce(t)?t:Me(t)?Object.keys(t):q(t)?[t]:[n]])]}function hc(e,t,n){const r=q(n)?n:u0,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let a=o.__localeChainCache.get(r);if(!a){a=[];let l=[n];for(;Ce(l);)l=vc(a,l,t);const i=Ce(t)||!se(t)?t:t.default?t.default:null;l=q(i)?[i]:i,Ce(l)&&vc(a,l,!1),o.__localeChainCache.set(r,a)}return a}function vc(e,t,n){let r=!0;for(let o=0;o`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function YK(){return{upper:(e,t)=>t==="text"&&q(e)?e.toUpperCase():t==="vnode"&&Me(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&q(e)?e.toLowerCase():t==="vnode"&&Me(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&q(e)?gc(e):t==="vnode"&&Me(e)&&"__v_isVNode"in e?gc(e.children):e}}let wc;function JK(e){wc=e}let _c;function XK(e){_c=e}let yc;function ZK(e){yc=e}let bc=null;const zc=e=>{bc=e},QK=()=>bc;let xc=null;const Cc=e=>{xc=e},eY=()=>xc;let Mc=0;function tY(e={}){const t=q(e.version)?e.version:KK,n=q(e.locale)?e.locale:u0,r=Ce(e.fallbackLocale)||se(e.fallbackLocale)||q(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:n,o=se(e.messages)?e.messages:{[n]:{}},a=se(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},l=se(e.numberFormats)?e.numberFormats:{[n]:{}},i=$e({},e.modifiers||{},YK()),s=e.pluralRules||{},c=Ve(e.missing)?e.missing:null,u=he(e.missingWarn)||fn(e.missingWarn)?e.missingWarn:!0,f=he(e.fallbackWarn)||fn(e.fallbackWarn)?e.fallbackWarn:!0,v=!!e.fallbackFormat,b=!!e.unresolving,C=Ve(e.postTranslation)?e.postTranslation:null,k=se(e.processor)?e.processor:null,A=he(e.warnHtmlMessage)?e.warnHtmlMessage:!0,w=!!e.escapeParameter,m=Ve(e.messageCompiler)?e.messageCompiler:wc,M=Ve(e.messageResolver)?e.messageResolver:_c||SK,L=Ve(e.localeFallbacker)?e.localeFallbacker:yc||WK,H=Me(e.fallbackContext)?e.fallbackContext:void 0,T=Ve(e.onWarn)?e.onWarn:tK,S=e,O=Me(S.__datetimeFormatters)?S.__datetimeFormatters:new Map,N=Me(S.__numberFormatters)?S.__numberFormatters:new Map,D=Me(S.__meta)?S.__meta:{};Mc++;const W={version:t,cid:Mc,locale:n,fallbackLocale:r,messages:o,modifiers:i,pluralRules:s,missing:c,missingWarn:u,fallbackWarn:f,fallbackFormat:v,unresolving:b,postTranslation:C,processor:k,warnHtmlMessage:A,escapeParameter:w,messageCompiler:m,messageResolver:M,localeFallbacker:L,fallbackContext:H,onWarn:T,__meta:D};return W.datetimeFormats=a,W.numberFormats=l,W.__datetimeFormatters=O,W.__numberFormatters=N,__INTLIFY_PROD_DEVTOOLS__&&$K(W,t,D),W}function Ka(e,t,n,r,o){const{missing:a,onWarn:l}=e;if(a!==null){const i=a(e,n,t,o);return q(i)?i:t}else return t}function f0(e,t,n){const r=e;r.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}const nY=e=>e;let Lc=Object.create(null);function rY(e,t={}){{const n=(t.onCacheKey||nY)(e),r=Lc[n];if(r)return r;let o=!1;const a=t.onError||oK;t.onError=s=>{o=!0,a(s)};const{code:l}=CK(e,t),i=new Function(`return ${l}`)();return o?i:Lc[n]=i}}let Hc=ge.__EXTEND_POINT__;const Ya=()=>++Hc,y2={INVALID_ARGUMENT:Hc,INVALID_DATE_ARGUMENT:Ya(),INVALID_ISO_DATE_ARGUMENT:Ya(),__EXTEND_POINT__:Ya()};function b2(e){return xr(e,null,void 0)}const kc=()=>"",St=e=>Ve(e);function Ec(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:o,messageCompiler:a,fallbackLocale:l,messages:i}=e,[s,c]=Ja(...t),u=he(c.missingWarn)?c.missingWarn:e.missingWarn,f=he(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,v=he(c.escapeParameter)?c.escapeParameter:e.escapeParameter,b=!!c.resolvedMessage,C=q(c.default)||he(c.default)?he(c.default)?a?s:()=>s:c.default:n?a?s:()=>s:"",k=n||C!=="",A=q(c.locale)?c.locale:e.locale;v&&oY(c);let[w,m,M]=b?[s,A,i[A]||{}]:Ac(e,s,A,l,f,u),L=w,H=s;if(!b&&!(q(L)||St(L))&&k&&(L=C,H=L),!b&&(!(q(L)||St(L))||!q(m)))return o?Cr:s;let T=!1;const S=()=>{T=!0},O=St(L)?L:Sc(e,s,m,L,H,S);if(T)return L;const N=sY(e,m,M,c),D=RK(N),W=aY(e,O,D),$=r?r(W,s):W;if(__INTLIFY_PROD_DEVTOOLS__){const Q={timestamp:Date.now(),key:q(s)?s:St(L)?L.key:"",locale:m||(St(L)?L.locale:""),format:q(L)?L:St(L)?L.source:"",message:$};Q.meta=$e({},e.__meta,QK()||{}),jK(Q)}return $}function oY(e){Ce(e.list)?e.list=e.list.map(t=>q(t)?sc(t):t):Me(e.named)&&Object.keys(e.named).forEach(t=>{q(e.named[t])&&(e.named[t]=sc(e.named[t]))})}function Ac(e,t,n,r,o,a){const{messages:l,onWarn:i,messageResolver:s,localeFallbacker:c}=e,u=c(e,r,n);let f={},v,b=null;const C="translate";for(let k=0;kr;return c.locale=n,c.key=t,c}const s=l(r,lY(e,n,o,r,i,a));return s.locale=n,s.key=t,s.source=r,s}function aY(e,t,n){return t(n)}function Ja(...e){const[t,n,r]=e,o={};if(!q(t)&&!Fe(t)&&!St(t))throw b2(y2.INVALID_ARGUMENT);const a=Fe(t)?String(t):(St(t),t);return Fe(n)?o.plural=n:q(n)?o.default=n:se(n)&&!zr(n)?o.named=n:Ce(n)&&(o.list=n),Fe(r)?o.plural=r:q(r)?o.default=r:se(r)&&$e(o,r),[a,o]}function lY(e,t,n,r,o,a){return{warnHtmlMessage:o,onError:l=>{throw a&&a(l),l},onCacheKey:l=>ZG(t,n,l)}}function sY(e,t,n,r){const{modifiers:o,pluralRules:a,messageResolver:l,fallbackLocale:i,fallbackWarn:s,missingWarn:c,fallbackContext:u}=e,f={locale:t,modifiers:o,pluralRules:a,messages:v=>{let b=l(n,v);if(b==null&&u){const[,,C]=Ac(u,v,t,i,s,c);b=l(C,v)}if(q(b)){let C=!1;const k=Sc(e,v,t,b,v,()=>{C=!0});return C?kc:k}else return St(b)?b:kc}};return e.processor&&(f.processor=e.processor),r.list&&(f.list=r.list),r.named&&(f.named=r.named),Fe(r.plural)&&(f.pluralIndex=r.plural),f}function Vc(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o,onWarn:a,localeFallbacker:l}=e,{__datetimeFormatters:i}=e,[s,c,u,f]=Xa(...t),v=he(u.missingWarn)?u.missingWarn:e.missingWarn;he(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const b=!!u.part,C=q(u.locale)?u.locale:e.locale,k=l(e,o,C);if(!q(s)||s==="")return new Intl.DateTimeFormat(C,f).format(c);let A={},w,m=null;const M="datetime format";for(let T=0;T{Tc.includes(s)?l[s]=n[s]:a[s]=n[s]}),q(r)?a.locale=r:se(r)&&(l=r),se(o)&&(l=o),[a.key||"",i,a,l]}function Oc(e,t,n){const r=e;for(const o in n){const a=`${t}__${o}`;r.__datetimeFormatters.has(a)&&r.__datetimeFormatters.delete(a)}}function Bc(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:o,onWarn:a,localeFallbacker:l}=e,{__numberFormatters:i}=e,[s,c,u,f]=Za(...t),v=he(u.missingWarn)?u.missingWarn:e.missingWarn;he(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const b=!!u.part,C=q(u.locale)?u.locale:e.locale,k=l(e,o,C);if(!q(s)||s==="")return new Intl.NumberFormat(C,f).format(c);let A={},w,m=null;const M="number format";for(let T=0;T{Pc.includes(s)?l[s]=n[s]:a[s]=n[s]}),q(r)?a.locale=r:se(r)&&(l=r),se(o)&&(l=o),[a.key||"",i,a,l]}function Ic(e,t,n){const r=e;for(const o in n){const a=`${t}__${o}`;r.__numberFormatters.has(a)&&r.__numberFormatters.delete(a)}}typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(i0().__INTLIFY_PROD_DEVTOOLS__=!1);const iY="9.2.2";function cY(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(i0().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(i0().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(i0().__INTLIFY_PROD_DEVTOOLS__=!1)}let Fc=ge.__EXTEND_POINT__;const ot=()=>++Fc,Be={UNEXPECTED_RETURN_TYPE:Fc,INVALID_ARGUMENT:ot(),MUST_BE_CALL_SETUP_TOP:ot(),NOT_INSLALLED:ot(),NOT_AVAILABLE_IN_LEGACY_MODE:ot(),REQUIRED_VALUE:ot(),INVALID_VALUE:ot(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:ot(),NOT_INSLALLED_WITH_PROVIDE:ot(),UNEXPECTED_ERROR:ot(),NOT_COMPATIBLE_LEGACY_VUE_I18N:ot(),BRIDGE_SUPPORT_VUE_2_ONLY:ot(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:ot(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:ot(),__EXTEND_POINT__:ot()};function Ne(e,...t){return xr(e,null,void 0)}const Qa=un("__transrateVNode"),e1=un("__datetimeParts"),t1=un("__numberParts"),Nc=un("__setPluralRules");un("__intlifyMeta");const Rc=un("__injectWithOption");function n1(e){if(!Me(e))return e;for(const t in e)if(Ua(e,t))if(!t.includes("."))Me(e[t])&&n1(e[t]);else{const n=t.split("."),r=n.length-1;let o=e;for(let a=0;a{if("locale"in i&&"resource"in i){const{locale:s,resource:c}=i;s?(l[s]=l[s]||{},p0(c,l[s])):p0(c,l)}else q(i)&&p0(JSON.parse(i),l)}),o==null&&a)for(const i in l)Ua(l,i)&&n1(l[i]);return l}const Lr=e=>!Me(e)||Ce(e);function p0(e,t){if(Lr(e)||Lr(t))throw Ne(Be.INVALID_VALUE);for(const n in e)Ua(e,n)&&(Lr(e[n])||Lr(t[n])?t[n]=e[n]:p0(e[n],t[n]))}function Dc(e){return e.type}function $c(e,t,n){let r=Me(t.messages)?t.messages:{};"__i18nGlobal"in n&&(r=Mr(globalThis.locale.value,{messages:r,__i18n:n.__i18nGlobal}));const o=Object.keys(r);o.length&&o.forEach(a=>{e.mergeLocaleMessage(a,r[a])});{if(Me(t.datetimeFormats)){const a=Object.keys(t.datetimeFormats);a.length&&a.forEach(l=>{e.mergeDateTimeFormat(l,t.datetimeFormats[l])})}if(Me(t.numberFormats)){const a=Object.keys(t.numberFormats);a.length&&a.forEach(l=>{e.mergeNumberFormat(l,t.numberFormats[l])})}}}function jc(e){return we(Kt,null,e,0)}const Uc="__INTLIFY_META__";let Wc=0;function qc(e){return(t,n,r,o)=>e(n,r,Te()||void 0,o)}const uY=()=>{const e=Te();let t=null;return e&&(t=Dc(e)[Uc])?{[Uc]:t}:null};function r1(e={},t){const{__root:n}=e,r=n===void 0;let o=he(e.inheritLocale)?e.inheritLocale:!0;const a=de(n&&o?n.locale.value:q(e.locale)?e.locale:u0),l=de(n&&o?n.fallbackLocale.value:q(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a.value),i=de(Mr(a.value,e)),s=de(se(e.datetimeFormats)?e.datetimeFormats:{[a.value]:{}}),c=de(se(e.numberFormats)?e.numberFormats:{[a.value]:{}});let u=n?n.missingWarn:he(e.missingWarn)||fn(e.missingWarn)?e.missingWarn:!0,f=n?n.fallbackWarn:he(e.fallbackWarn)||fn(e.fallbackWarn)?e.fallbackWarn:!0,v=n?n.fallbackRoot:he(e.fallbackRoot)?e.fallbackRoot:!0,b=!!e.fallbackFormat,C=Ve(e.missing)?e.missing:null,k=Ve(e.missing)?qc(e.missing):null,A=Ve(e.postTranslation)?e.postTranslation:null,w=n?n.warnHtmlMessage:he(e.warnHtmlMessage)?e.warnHtmlMessage:!0,m=!!e.escapeParameter;const M=n?n.modifiers:se(e.modifiers)?e.modifiers:{};let L=e.pluralRules||n&&n.pluralRules,H;H=(()=>{r&&Cc(null);const E={version:iY,locale:a.value,fallbackLocale:l.value,messages:i.value,modifiers:M,pluralRules:L,missing:k===null?void 0:k,missingWarn:u,fallbackWarn:f,fallbackFormat:b,unresolving:!0,postTranslation:A===null?void 0:A,warnHtmlMessage:w,escapeParameter:m,messageResolver:e.messageResolver,__meta:{framework:"vue"}};E.datetimeFormats=s.value,E.numberFormats=c.value,E.__datetimeFormatters=se(H)?H.__datetimeFormatters:void 0,E.__numberFormatters=se(H)?H.__numberFormatters:void 0;const V=tY(E);return r&&Cc(V),V})(),f0(H,a.value,l.value);function T(){return[a.value,l.value,i.value,s.value,c.value]}const S=Z({get:()=>a.value,set:E=>{a.value=E,H.locale=a.value}}),O=Z({get:()=>l.value,set:E=>{l.value=E,H.fallbackLocale=l.value,f0(H,a.value,E)}}),N=Z(()=>i.value),D=Z(()=>s.value),W=Z(()=>c.value);function $(){return Ve(A)?A:null}function Q(E){A=E,H.postTranslation=E}function U(){return C}function ae(E){E!==null&&(k=qc(E)),C=E,H.missing=k}const te=(E,V,Y,K,ee,re)=>{T();let ie;if(__INTLIFY_PROD_DEVTOOLS__)try{zc(uY()),r||(H.fallbackContext=n?eY():void 0),ie=E(H)}finally{zc(null),r||(H.fallbackContext=void 0)}else ie=E(H);if(Fe(ie)&&ie===Cr){const[He,ze]=V();return n&&v?K(n):ee(He)}else{if(re(ie))return ie;throw Ne(Be.UNEXPECTED_RETURN_TYPE)}};function ue(...E){return te(V=>Reflect.apply(Ec,null,[V,...E]),()=>Ja(...E),"translate",V=>Reflect.apply(V.t,V,[...E]),V=>V,V=>q(V))}function qe(...E){const[V,Y,K]=E;if(K&&!Me(K))throw Ne(Be.INVALID_ARGUMENT);return ue(V,Y,$e({resolvedMessage:!0},K||{}))}function at(...E){return te(V=>Reflect.apply(Vc,null,[V,...E]),()=>Xa(...E),"datetime format",V=>Reflect.apply(V.d,V,[...E]),()=>mc,V=>q(V))}function lt(...E){return te(V=>Reflect.apply(Bc,null,[V,...E]),()=>Za(...E),"number format",V=>Reflect.apply(V.n,V,[...E]),()=>mc,V=>q(V))}function Ye(E){return E.map(V=>q(V)||Fe(V)||he(V)?jc(String(V)):V)}const je={normalize:Ye,interpolate:E=>E,type:"vnode"};function wt(...E){return te(V=>{let Y;const K=V;try{K.processor=je,Y=Reflect.apply(Ec,null,[K,...E])}finally{K.processor=null}return Y},()=>Ja(...E),"translate",V=>V[Qa](...E),V=>[jc(V)],V=>Ce(V))}function xt(...E){return te(V=>Reflect.apply(Bc,null,[V,...E]),()=>Za(...E),"number format",V=>V[t1](...E),()=>[],V=>q(V)||Ce(V))}function I(...E){return te(V=>Reflect.apply(Vc,null,[V,...E]),()=>Xa(...E),"datetime format",V=>V[e1](...E),()=>[],V=>q(V)||Ce(V))}function G(E){L=E,H.pluralRules=L}function j(E,V){const Y=q(V)?V:a.value,K=ve(Y);return H.messageResolver(K,E)!==null}function X(E){let V=null;const Y=hc(H,l.value,a.value);for(let K=0;K{o&&(a.value=E,H.locale=E,f0(H,a.value,l.value))}),Ae(n.fallbackLocale,E=>{o&&(l.value=E,H.fallbackLocale=E,f0(H,a.value,l.value))}));const F={id:Wc,locale:S,fallbackLocale:O,get inheritLocale(){return o},set inheritLocale(E){o=E,E&&n&&(a.value=n.locale.value,l.value=n.fallbackLocale.value,f0(H,a.value,l.value))},get availableLocales(){return Object.keys(i.value).sort()},messages:N,get modifiers(){return M},get pluralRules(){return L||{}},get isGlobal(){return r},get missingWarn(){return u},set missingWarn(E){u=E,H.missingWarn=u},get fallbackWarn(){return f},set fallbackWarn(E){f=E,H.fallbackWarn=f},get fallbackRoot(){return v},set fallbackRoot(E){v=E},get fallbackFormat(){return b},set fallbackFormat(E){b=E,H.fallbackFormat=b},get warnHtmlMessage(){return w},set warnHtmlMessage(E){w=E,H.warnHtmlMessage=E},get escapeParameter(){return m},set escapeParameter(E){m=E,H.escapeParameter=E},t:ue,getLocaleMessage:ve,setLocaleMessage:le,mergeLocaleMessage:z,getPostTranslationHandler:$,setPostTranslationHandler:Q,getMissingHandler:U,setMissingHandler:ae,[Nc]:G};return F.datetimeFormats=D,F.numberFormats=W,F.rt=qe,F.te=j,F.tm=ce,F.d=at,F.n=lt,F.getDateTimeFormat=d,F.setDateTimeFormat=h,F.mergeDateTimeFormat=x,F.getNumberFormat=B,F.setNumberFormat=P,F.mergeNumberFormat=R,F[Rc]=e.__injectWithOption,F[Qa]=wt,F[e1]=I,F[t1]=xt,F}function fY(e){const t=q(e.locale)?e.locale:u0,n=q(e.fallbackLocale)||Ce(e.fallbackLocale)||se(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,r=Ve(e.missing)?e.missing:void 0,o=he(e.silentTranslationWarn)||fn(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,a=he(e.silentFallbackWarn)||fn(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,l=he(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,s=se(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Ve(e.postTranslation)?e.postTranslation:void 0,f=q(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,v=!!e.escapeParameterHtml,b=he(e.sync)?e.sync:!0;let C=e.messages;if(se(e.sharedMessages)){const H=e.sharedMessages;C=Object.keys(H).reduce((T,S)=>{const O=T[S]||(T[S]={});return $e(O,H[S]),T},C||{})}const{__i18n:k,__root:A,__injectWithOption:w}=e,m=e.datetimeFormats,M=e.numberFormats,L=e.flatJson;return{locale:t,fallbackLocale:n,messages:C,flatJson:L,datetimeFormats:m,numberFormats:M,missing:r,missingWarn:o,fallbackWarn:a,fallbackRoot:l,fallbackFormat:i,modifiers:s,pluralRules:c,postTranslation:u,warnHtmlMessage:f,escapeParameter:v,messageResolver:e.messageResolver,inheritLocale:b,__i18n:k,__root:A,__injectWithOption:w}}function o1(e={},t){{const n=r1(fY(e)),r={id:n.id,get locale(){return n.locale.value},set locale(o){n.locale.value=o},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(o){n.fallbackLocale.value=o},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(o){},get missing(){return n.getMissingHandler()},set missing(o){n.setMissingHandler(o)},get silentTranslationWarn(){return he(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(o){n.missingWarn=he(o)?!o:o},get silentFallbackWarn(){return he(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(o){n.fallbackWarn=he(o)?!o:o},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(o){n.fallbackFormat=o},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(o){n.setPostTranslationHandler(o)},get sync(){return n.inheritLocale},set sync(o){n.inheritLocale=o},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(o){n.warnHtmlMessage=o!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(o){n.escapeParameter=o},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(o){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...o){const[a,l,i]=o,s={};let c=null,u=null;if(!q(a))throw Ne(Be.INVALID_ARGUMENT);const f=a;return q(l)?s.locale=l:Ce(l)?c=l:se(l)&&(u=l),Ce(i)?c=i:se(i)&&(u=i),Reflect.apply(n.t,n,[f,c||u||{},s])},rt(...o){return Reflect.apply(n.rt,n,[...o])},tc(...o){const[a,l,i]=o,s={plural:1};let c=null,u=null;if(!q(a))throw Ne(Be.INVALID_ARGUMENT);const f=a;return q(l)?s.locale=l:Fe(l)?s.plural=l:Ce(l)?c=l:se(l)&&(u=l),q(i)?s.locale=i:Ce(i)?c=i:se(i)&&(u=i),Reflect.apply(n.t,n,[f,c||u||{},s])},te(o,a){return n.te(o,a)},tm(o){return n.tm(o)},getLocaleMessage(o){return n.getLocaleMessage(o)},setLocaleMessage(o,a){n.setLocaleMessage(o,a)},mergeLocaleMessage(o,a){n.mergeLocaleMessage(o,a)},d(...o){return Reflect.apply(n.d,n,[...o])},getDateTimeFormat(o){return n.getDateTimeFormat(o)},setDateTimeFormat(o,a){n.setDateTimeFormat(o,a)},mergeDateTimeFormat(o,a){n.mergeDateTimeFormat(o,a)},n(...o){return Reflect.apply(n.n,n,[...o])},getNumberFormat(o){return n.getNumberFormat(o)},setNumberFormat(o,a){n.setNumberFormat(o,a)},mergeNumberFormat(o,a){n.mergeNumberFormat(o,a)},getChoiceIndex(o,a){return-1},__onComponentInstanceCreated(o){const{componentInstanceCreatedListener:a}=e;a&&a(o,r)}};return r}}const a1={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function pY({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,r)=>n=[...n,...Ce(r.children)?r.children:[r]],[]):t.reduce((n,r)=>{const o=e[r];return o&&(n[r]=o()),n},{})}function Gc(e){return Re}const Kc={name:"i18n-t",props:$e({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Fe(e)||!isNaN(e)}},a1),setup(e,t){const{slots:n,attrs:r}=t,o=e.i18n||l1({useScope:e.scope,__useComponent:!0});return()=>{const a=Object.keys(n).filter(f=>f!=="_"),l={};e.locale&&(l.locale=e.locale),e.plural!==void 0&&(l.plural=q(e.plural)?+e.plural:e.plural);const i=pY(t,a),s=o[Qa](e.keypath,i,l),c=$e({},r),u=q(e.tag)||Me(e.tag)?e.tag:Gc();return Je(u,c,s)}}};function dY(e){return Ce(e)&&!q(e[0])}function Yc(e,t,n,r){const{slots:o,attrs:a}=t;return()=>{const l={part:!0};let i={};e.locale&&(l.locale=e.locale),q(e.format)?l.key=e.format:Me(e.format)&&(q(e.format.key)&&(l.key=e.format.key),i=Object.keys(e.format).reduce((v,b)=>n.includes(b)?$e({},v,{[b]:e.format[b]}):v,{}));const s=r(e.value,l,i);let c=[l.key];Ce(s)?c=s.map((v,b)=>{const C=o[v.type],k=C?C({[v.type]:v.value,index:b,parts:s}):[v.value];return dY(k)&&(k[0].key=`${v.type}-${b}`),k}):q(s)&&(c=[s]);const u=$e({},a),f=q(e.tag)||Me(e.tag)?e.tag:Gc();return Je(f,u,c)}}const Jc={name:"i18n-n",props:$e({value:{type:Number,required:!0},format:{type:[String,Object]}},a1),setup(e,t){const n=e.i18n||l1({useScope:"parent",__useComponent:!0});return Yc(e,t,Pc,(...r)=>n[t1](...r))}},Xc={name:"i18n-d",props:$e({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},a1),setup(e,t){const n=e.i18n||l1({useScope:"parent",__useComponent:!0});return Yc(e,t,Tc,(...r)=>n[e1](...r))}};function hY(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const r=n.__getInstance(t);return r!=null?r.__composer:e.global.__composer}}function vY(e){const t=n=>{const{instance:r,modifiers:o,value:a}=n;if(!r||!r.$)throw Ne(Be.UNEXPECTED_ERROR);const l=hY(e,r.$),i=Zc(a);return[Reflect.apply(l.t,l,[...Qc(i)]),l]};return{created:(n,r)=>{const[o,a]=t(r);ja&&e.global===a&&(n.__i18nWatcher=Ae(a.locale,()=>{r.instance&&r.instance.$forceUpdate()})),n.__composer=a,n.textContent=o},unmounted:n=>{ja&&n.__i18nWatcher&&(n.__i18nWatcher(),n.__i18nWatcher=void 0,delete n.__i18nWatcher),n.__composer&&(n.__composer=void 0,delete n.__composer)},beforeUpdate:(n,{value:r})=>{if(n.__composer){const o=n.__composer,a=Zc(r);n.textContent=Reflect.apply(o.t,o,[...Qc(a)])}},getSSRProps:n=>{const[r]=t(n);return{textContent:r}}}}function Zc(e){if(q(e))return{path:e};if(se(e)){if(!("path"in e))throw Ne(Be.REQUIRED_VALUE,"path");return e}else throw Ne(Be.INVALID_VALUE)}function Qc(e){const{path:t,locale:n,args:r,choice:o,plural:a}=e,l={},i=r||{};return q(n)&&(l.locale=n),Fe(o)&&(l.plural=o),Fe(a)&&(l.plural=a),[t,i,l]}function mY(e,t,...n){const r=se(n[0])?n[0]:{},o=!!r.useI18nComponentName;(!he(r.globalInstall)||r.globalInstall)&&(e.component(o?"i18n":Kc.name,Kc),e.component(Jc.name,Jc),e.component(Xc.name,Xc)),e.directive("t",vY(t))}function gY(e,t,n){return{beforeCreate(){const r=Te();if(!r)throw Ne(Be.UNEXPECTED_ERROR);const o=this.$options;if(o.i18n){const a=o.i18n;o.__i18n&&(a.__i18n=o.__i18n),a.__root=t,this===this.$root?this.$i18n=eu(e,a):(a.__injectWithOption=!0,this.$i18n=o1(a))}else o.__i18n?this===this.$root?this.$i18n=eu(e,o):this.$i18n=o1({__i18n:o.__i18n,__injectWithOption:!0,__root:t}):this.$i18n=e;o.__i18nGlobal&&$c(t,o,o),e.__onComponentInstanceCreated(this.$i18n),n.__setInstance(r,this.$i18n),this.$t=(...a)=>this.$i18n.t(...a),this.$rt=(...a)=>this.$i18n.rt(...a),this.$tc=(...a)=>this.$i18n.tc(...a),this.$te=(a,l)=>this.$i18n.te(a,l),this.$d=(...a)=>this.$i18n.d(...a),this.$n=(...a)=>this.$i18n.n(...a),this.$tm=a=>this.$i18n.tm(a)},mounted(){},unmounted(){const r=Te();if(!r)throw Ne(Be.UNEXPECTED_ERROR);delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,n.__deleteInstance(r),delete this.$i18n}}}function eu(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Nc](t.pluralizationRules||e.pluralizationRules);const n=Mr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(r=>e.mergeLocaleMessage(r,n[r])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(r=>e.mergeDateTimeFormat(r,t.datetimeFormats[r])),t.numberFormats&&Object.keys(t.numberFormats).forEach(r=>e.mergeNumberFormat(r,t.numberFormats[r])),e}const wY=un("global-vue-i18n");function _Y(e={},t){const n=__VUE_I18N_LEGACY_API__&&he(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,r=he(e.globalInjection)?e.globalInjection:!0,o=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,a=new Map,[l,i]=yY(e,n),s=un("");function c(v){return a.get(v)||null}function u(v,b){a.set(v,b)}function f(v){a.delete(v)}{const v={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return o},async install(b,...C){b.__VUE_I18N_SYMBOL__=s,b.provide(b.__VUE_I18N_SYMBOL__,v),!n&&r&&EY(b,v.global),__VUE_I18N_FULL_INSTALL__&&mY(b,v,...C),__VUE_I18N_LEGACY_API__&&n&&b.mixin(gY(i,i.__composer,v));const k=b.unmount;b.unmount=()=>{v.dispose(),k()}},get global(){return i},dispose(){l.stop()},__instances:a,__getInstance:c,__setInstance:u,__deleteInstance:f};return v}}function l1(e={}){const t=Te();if(t==null)throw Ne(Be.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ne(Be.NOT_INSLALLED);const n=bY(t),r=xY(n),o=Dc(t),a=zY(e,o);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Ne(Be.NOT_AVAILABLE_IN_LEGACY_MODE);return LY(t,a,r,e)}if(a==="global")return $c(r,e,o),r;if(a==="parent"){let s=CY(n,t,e.__useComponent);return s==null&&(s=r),s}const l=n;let i=l.__getInstance(t);if(i==null){const s=$e({},e);"__i18n"in o&&(s.__i18n=o.__i18n),r&&(s.__root=r),i=r1(s),MY(l,t),l.__setInstance(t,i)}return i}function yY(e,t,n){const r=_0();{const o=__VUE_I18N_LEGACY_API__&&t?r.run(()=>o1(e)):r.run(()=>r1(e));if(o==null)throw Ne(Be.UNEXPECTED_ERROR);return[r,o]}}function bY(e){{const t=Se(e.isCE?wY:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ne(e.isCE?Be.NOT_INSLALLED_WITH_PROVIDE:Be.UNEXPECTED_ERROR);return t}}function zY(e,t){return zr(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function xY(e){return e.mode==="composition"?e.global:e.global.__composer}function CY(e,t,n=!1){let r=null;const o=t.root;let a=t.parent;for(;a!=null;){const l=e;if(e.mode==="composition")r=l.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){const i=l.__getInstance(a);i!=null&&(r=i.__composer,n&&r&&!r[Rc]&&(r=null))}if(r!=null||o===a)break;a=a.parent}return r}function MY(e,t,n){hn(()=>{},t),Wn(()=>{e.__deleteInstance(t)},t)}function LY(e,t,n,r={}){const o=t==="local",a=C2(null);if(o&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ne(Be.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const l=he(r.inheritLocale)?r.inheritLocale:!0,i=de(o&&l?n.locale.value:q(r.locale)?r.locale:u0),s=de(o&&l?n.fallbackLocale.value:q(r.fallbackLocale)||Ce(r.fallbackLocale)||se(r.fallbackLocale)||r.fallbackLocale===!1?r.fallbackLocale:i.value),c=de(Mr(i.value,r)),u=de(se(r.datetimeFormats)?r.datetimeFormats:{[i.value]:{}}),f=de(se(r.numberFormats)?r.numberFormats:{[i.value]:{}}),v=o?n.missingWarn:he(r.missingWarn)||fn(r.missingWarn)?r.missingWarn:!0,b=o?n.fallbackWarn:he(r.fallbackWarn)||fn(r.fallbackWarn)?r.fallbackWarn:!0,C=o?n.fallbackRoot:he(r.fallbackRoot)?r.fallbackRoot:!0,k=!!r.fallbackFormat,A=Ve(r.missing)?r.missing:null,w=Ve(r.postTranslation)?r.postTranslation:null,m=o?n.warnHtmlMessage:he(r.warnHtmlMessage)?r.warnHtmlMessage:!0,M=!!r.escapeParameter,L=o?n.modifiers:se(r.modifiers)?r.modifiers:{},H=r.pluralRules||o&&n.pluralRules;function T(){return[i.value,s.value,c.value,u.value,f.value]}const S=Z({get:()=>a.value?a.value.locale.value:i.value,set:h=>{a.value&&(a.value.locale.value=h),i.value=h}}),O=Z({get:()=>a.value?a.value.fallbackLocale.value:s.value,set:h=>{a.value&&(a.value.fallbackLocale.value=h),s.value=h}}),N=Z(()=>a.value?a.value.messages.value:c.value),D=Z(()=>u.value),W=Z(()=>f.value);function $(){return a.value?a.value.getPostTranslationHandler():w}function Q(h){a.value&&a.value.setPostTranslationHandler(h)}function U(){return a.value?a.value.getMissingHandler():A}function ae(h){a.value&&a.value.setMissingHandler(h)}function te(h){return T(),h()}function ue(...h){return a.value?te(()=>Reflect.apply(a.value.t,null,[...h])):te(()=>"")}function qe(...h){return a.value?Reflect.apply(a.value.rt,null,[...h]):""}function at(...h){return a.value?te(()=>Reflect.apply(a.value.d,null,[...h])):te(()=>"")}function lt(...h){return a.value?te(()=>Reflect.apply(a.value.n,null,[...h])):te(()=>"")}function Ye(h){return a.value?a.value.tm(h):{}}function je(h,x){return a.value?a.value.te(h,x):!1}function wt(h){return a.value?a.value.getLocaleMessage(h):{}}function xt(h,x){a.value&&(a.value.setLocaleMessage(h,x),c.value[h]=x)}function I(h,x){a.value&&a.value.mergeLocaleMessage(h,x)}function G(h){return a.value?a.value.getDateTimeFormat(h):{}}function j(h,x){a.value&&(a.value.setDateTimeFormat(h,x),u.value[h]=x)}function X(h,x){a.value&&a.value.mergeDateTimeFormat(h,x)}function ce(h){return a.value?a.value.getNumberFormat(h):{}}function ve(h,x){a.value&&(a.value.setNumberFormat(h,x),f.value[h]=x)}function le(h,x){a.value&&a.value.mergeNumberFormat(h,x)}const z={get id(){return a.value?a.value.id:-1},locale:S,fallbackLocale:O,messages:N,datetimeFormats:D,numberFormats:W,get inheritLocale(){return a.value?a.value.inheritLocale:l},set inheritLocale(h){a.value&&(a.value.inheritLocale=h)},get availableLocales(){return a.value?a.value.availableLocales:Object.keys(c.value)},get modifiers(){return a.value?a.value.modifiers:L},get pluralRules(){return a.value?a.value.pluralRules:H},get isGlobal(){return a.value?a.value.isGlobal:!1},get missingWarn(){return a.value?a.value.missingWarn:v},set missingWarn(h){a.value&&(a.value.missingWarn=h)},get fallbackWarn(){return a.value?a.value.fallbackWarn:b},set fallbackWarn(h){a.value&&(a.value.missingWarn=h)},get fallbackRoot(){return a.value?a.value.fallbackRoot:C},set fallbackRoot(h){a.value&&(a.value.fallbackRoot=h)},get fallbackFormat(){return a.value?a.value.fallbackFormat:k},set fallbackFormat(h){a.value&&(a.value.fallbackFormat=h)},get warnHtmlMessage(){return a.value?a.value.warnHtmlMessage:m},set warnHtmlMessage(h){a.value&&(a.value.warnHtmlMessage=h)},get escapeParameter(){return a.value?a.value.escapeParameter:M},set escapeParameter(h){a.value&&(a.value.escapeParameter=h)},t:ue,getPostTranslationHandler:$,setPostTranslationHandler:Q,getMissingHandler:U,setMissingHandler:ae,rt:qe,d:at,n:lt,tm:Ye,te:je,getLocaleMessage:wt,setLocaleMessage:xt,mergeLocaleMessage:I,getDateTimeFormat:G,setDateTimeFormat:j,mergeDateTimeFormat:X,getNumberFormat:ce,setNumberFormat:ve,mergeNumberFormat:le};function d(h){h.locale.value=i.value,h.fallbackLocale.value=s.value,Object.keys(c.value).forEach(x=>{h.mergeLocaleMessage(x,c.value[x])}),Object.keys(u.value).forEach(x=>{h.mergeDateTimeFormat(x,u.value[x])}),Object.keys(f.value).forEach(x=>{h.mergeNumberFormat(x,f.value[x])}),h.escapeParameter=M,h.fallbackFormat=k,h.fallbackRoot=C,h.fallbackWarn=b,h.missingWarn=v,h.warnHtmlMessage=m}return x0(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ne(Be.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const h=a.value=e.proxy.$i18n.__composer;t==="global"?(i.value=h.locale.value,s.value=h.fallbackLocale.value,c.value=h.messages.value,u.value=h.datetimeFormats.value,f.value=h.numberFormats.value):o&&d(h)}),z}const HY=["locale","fallbackLocale","availableLocales"],kY=["t","rt","d","n","tm"];function EY(e,t){const n=Object.create(null);HY.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o)throw Ne(Be.UNEXPECTED_ERROR);const a=Le(o.value)?{get(){return o.value.value},set(l){o.value.value=l}}:{get(){return o.get&&o.get()}};Object.defineProperty(n,r,a)}),e.config.globalProperties.$i18n=n,kY.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o||!o.value)throw Ne(Be.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${r}`,o)})}if(JK(rY),XK(VK),ZK(hc),cY(),__INTLIFY_PROD_DEVTOOLS__){const e=i0();e.__INTLIFY__=!0,DK(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const AY="\u767B\u5F55",SY="\u6CE8\u518C",VY="\u83B7\u53D6\u77ED\u4FE1\u9A8C\u8BC1\u7801",TY="\u79D2\u540E\u91CD\u65B0\u83B7\u53D6",OY="\u8BF7\u5148\u5B8C\u6210\u5B89\u5168\u9A8C\u8BC1",BY="\u786E\u8BA4",PY="\u53D6\u6D88",IY="\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801",FY="\u8BF7\u8F93\u5165\u624B\u673A\u53F7\u7801",NY="\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u624B\u673A\u53F7",RY="\u8BF7\u8F93\u5165\u624B\u673A\u9A8C\u8BC1\u7801",DY="\u7528\u6237\u534F\u8BAE",$Y="\u9690\u79C1\u534F\u8BAE",jY="\u672A\u914D\u7F6E\u534F\u8BAE",UY="\u7AD9\u70B9\u5DF2\u5173\u95ED",WY="\u7AD9\u70B9\u4E0D\u5B58\u5728",qY={400:"\u9519\u8BEF\u7684\u8BF7\u6C42",401:"\u8BF7\u91CD\u65B0\u767B\u5F55",403:"\u62D2\u7EDD\u8BBF\u95EE",404:"\u8BF7\u6C42\u9519\u8BEF",405:"\u8BF7\u6C42\u65B9\u6CD5\u672A\u5141\u8BB8",408:"\u8BF7\u6C42\u8D85\u65F6",409:"\u8BF7\u6C42\u8DE8\u57DF",500:"\u670D\u52A1\u5668\u7AEF\u51FA\u9519\uFF0C\u9519\u8BEF\u539F\u56E0\uFF1A",501:"\u7F51\u7EDC\u672A\u5B9E\u73B0",502:"\u7F51\u7EDC\u9519\u8BEF",503:"\u670D\u52A1\u4E0D\u53EF\u7528",504:"\u7F51\u7EDC\u8D85\u65F6",505:"http\u7248\u672C\u4E0D\u652F\u6301\u8BE5\u8BF7\u6C42",unknownError:"\u672A\u77E5\u9519\u8BEF",timeout:"\u7F51\u7EDC\u8BF7\u6C42\u8D85\u65F6\uFF01"},GY={login:AY,register:SY,getSmsCode:VY,smsCodeChangeText:TY,captchaTitle:OY,confirm:BY,cancel:PY,captchaPlaceholder:IY,mobilePlaceholder:FY,mobileError:NY,codePlaceholder:RY,userAgreement:DY,privacyAgreement:$Y,protocolNotConfigured:jY,siteClose:UY,noSite:WY,request:qY},KY={},tu={index:{index:"\u9996\u9875"},auth:{login:"\u767B\u5F55",register:"\u767B\u5F55",bind:"\u624B\u673A\u53F7\u7ED1\u5B9A"},member:{index:"\u6B22\u8FCE\u9875",center:"\u4E2A\u4EBA\u4E2D\u5FC3"},article:{list:"\u6587\u7AE0",detail:"\u6587\u7AE0"},site:{close:"\u7AD9\u70B9\u5DF2\u5173\u95ED",nosite:"\u7AD9\u70B9\u4E0D\u5B58\u5728"}},nu={pages:tu},YY=Object.freeze(Object.defineProperty({__proto__:null,default:nu,pages:tu},Symbol.toStringTag,{value:"Module"})),ru={index:"Index",code:{code:"Code"}},ou={pages:ru},JY=Object.freeze(Object.defineProperty({__proto__:null,default:ou,pages:ru},Symbol.toStringTag,{value:"Module"})),XY=Et(e=>{const t=_Y({globalInjection:!0,messages:{"zh-cn":Object.assign(GY,nu),en:Object.assign(KY,ou)},silentFallbackWarn:!0,silentTranslationWarn:!0});return e.vueApp.use(t),{provide:{getI18n:()=>t}}}),ZY=Et(e=>{e.vueApp.use(oh())}),QY=[d9,ap,qG,GG,KG,YG,JG,XY,ZY],eJ=De({name:"NuxtLoadingIndicator",props:{throttle:{type:Number,default:200},duration:{type:Number,default:2e3},height:{type:Number,default:3},color:{type:[String,Boolean],default:"repeating-linear-gradient(to right,#00dc82 0%,#34cdfe 50%,#0047e1 100%)"}},setup(e,{slots:t}){const n=tJ({duration:e.duration,throttle:e.throttle}),r=ke();return r.hook("page:start",n.start),r.hook("page:finish",n.finish),Un(n.clear),()=>Je("div",{class:"nuxt-loading-indicator",style:{position:"fixed",top:0,right:0,left:0,pointerEvents:"none",width:"auto",height:`${e.height}px`,opacity:n.isLoading.value?1:0,background:e.color||void 0,backgroundSize:`${100/n.progress.value*100}% auto`,transform:`scaleX(${n.progress.value}%)`,transformOrigin:"left",transition:"transform 0.1s, height 0.4s, opacity 0.4s",zIndex:999999}},t)}});function tJ(e){const t=de(0),n=de(!1),r=Z(()=>1e4/e.duration);let o=null,a=null;function l(){s(),t.value=0,e.throttle?a=setTimeout(()=>{n.value=!0,f()},e.throttle):(n.value=!0,f())}function i(){t.value=100,u()}function s(){clearInterval(o),clearTimeout(a),o=null,a=null}function c(v){t.value=Math.min(100,t.value+v)}function u(){s(),setTimeout(()=>{n.value=!1,setTimeout(()=>{t.value=0},400)},500)}function f(){o=setInterval(()=>{c(r.value)},100)}return{progress:t,isLoading:n,start:l,finish:i,clear:s}}const nJ=(e,t)=>t.path.replace(/(:\w+)\([^)]+\)/g,"$1").replace(/(:\w+)[?+*]/g,"$1").replace(/:\w+/g,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""}),rJ=(e,t)=>{const n=e.route.matched.find(o=>{var a;return((a=o.components)==null?void 0:a.default)===e.Component.type}),r=t??(n==null?void 0:n.meta.key)??(n&&nJ(e.route,n));return typeof r=="function"?r(e.route):r},oJ=(e,t)=>({default:()=>e?Je(l5,e===!0?{}:e,t):t}),aJ=De({name:"FragmentWrapper",setup(e,{slots:t}){return()=>{var n;return(n=t.default)==null?void 0:n.call(t)}}}),s1=(e,t,n)=>({default:()=>t?Je(e,t===!0?{}:t,n):Je(aJ,{},n)}),lJ=De({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t}){const n=ke();return()=>Je(w6,{name:e.name,route:e.route,...t},{default:r=>{if(!r.Component)return;const o=rJ(r,e.pageKey),a=n.deferHydration(),l=!!(e.transition??r.route.meta.pageTransition??oa),i=l&&iJ([e.transition,r.route.meta.pageTransition,oa,{onAfterLeave:()=>{n.callHook("page:transition:finish",r.Component)}}].filter(Boolean));return s1(vn,l&&i,oJ(e.keepalive??r.route.meta.keepalive??np,Je(n4,{onPending:()=>n.callHook("page:start",r.Component),onResolve:()=>{pt(()=>n.callHook("page:finish",r.Component).finally(a))}},{default:()=>Je(cJ,{key:o,routeProps:r,pageKey:o,hasTransition:l})}))).default()}})}});function sJ(e){return Array.isArray(e)?e:e?[e]:[]}function iJ(e){const t=e.map(n=>({...n,onAfterLeave:sJ(n.onAfterLeave)}));return hd(...t)}const cJ=De({name:"RouteProvider",props:["routeProps","pageKey","hasTransition"],setup(e){const t=e.pageKey,n=e.routeProps.route,r={};for(const o in e.routeProps.route)r[o]=Z(()=>t===e.pageKey?e.routeProps.route[o]:n[o]);return qt("_route",it(r)),()=>Je(e.routeProps.Component)}}),uJ=De({name:"LayoutLoader",inheritAttrs:!1,props:{name:String},async setup(e,t){const n=await w2[e.name]().then(r=>r.default||r);return()=>Je(n,t.attrs,t.slots)}}),fJ=De({name:"NuxtLayout",inheritAttrs:!1,props:{name:{type:[String,Boolean,Object],default:null}},setup(e,t){const n=Se("_route"),r=n===g0()?_6():n,o=Z(()=>J(e.name)??r.meta.layout??"default");return()=>{const a=o.value&&o.value in w2,l=r.meta.layoutTransition??tp;return s1(vn,a&&l,{default:()=>s1(uJ,a&&{key:o.value,name:o.value,...t.attrs},t.slots).default()}).default()}}});h1=_r("config",{state:()=>({login:{is_username:0,is_mobile:0,is_auth_register:0,is_bind_mobile:0,agreement_show:0}}),actions:{async getLoginConfig(){await fh().then(({data:e})=>{this.login.is_username=parseInt(e.is_username),this.login.is_mobile=parseInt(e.is_mobile),this.login.is_auth_register=parseInt(e.is_auth_register),this.login.is_bind_mobile=parseInt(e.is_bind_mobile),this.login.agreement_show=parseInt(e.agreement_show)}).catch(()=>{})}}});var pJ={name:"zh-cn",el:{colorpicker:{confirm:"\u786E\u5B9A",clear:"\u6E05\u7A7A"},datepicker:{now:"\u6B64\u523B",today:"\u4ECA\u5929",cancel:"\u53D6\u6D88",clear:"\u6E05\u7A7A",confirm:"\u786E\u5B9A",selectDate:"\u9009\u62E9\u65E5\u671F",selectTime:"\u9009\u62E9\u65F6\u95F4",startDate:"\u5F00\u59CB\u65E5\u671F",startTime:"\u5F00\u59CB\u65F6\u95F4",endDate:"\u7ED3\u675F\u65E5\u671F",endTime:"\u7ED3\u675F\u65F6\u95F4",prevYear:"\u524D\u4E00\u5E74",nextYear:"\u540E\u4E00\u5E74",prevMonth:"\u4E0A\u4E2A\u6708",nextMonth:"\u4E0B\u4E2A\u6708",year:"\u5E74",month1:"1 \u6708",month2:"2 \u6708",month3:"3 \u6708",month4:"4 \u6708",month5:"5 \u6708",month6:"6 \u6708",month7:"7 \u6708",month8:"8 \u6708",month9:"9 \u6708",month10:"10 \u6708",month11:"11 \u6708",month12:"12 \u6708",weeks:{sun:"\u65E5",mon:"\u4E00",tue:"\u4E8C",wed:"\u4E09",thu:"\u56DB",fri:"\u4E94",sat:"\u516D"},months:{jan:"\u4E00\u6708",feb:"\u4E8C\u6708",mar:"\u4E09\u6708",apr:"\u56DB\u6708",may:"\u4E94\u6708",jun:"\u516D\u6708",jul:"\u4E03\u6708",aug:"\u516B\u6708",sep:"\u4E5D\u6708",oct:"\u5341\u6708",nov:"\u5341\u4E00\u6708",dec:"\u5341\u4E8C\u6708"}},select:{loading:"\u52A0\u8F7D\u4E2D",noMatch:"\u65E0\u5339\u914D\u6570\u636E",noData:"\u65E0\u6570\u636E",placeholder:"\u8BF7\u9009\u62E9"},cascader:{noMatch:"\u65E0\u5339\u914D\u6570\u636E",loading:"\u52A0\u8F7D\u4E2D",placeholder:"\u8BF7\u9009\u62E9",noData:"\u6682\u65E0\u6570\u636E"},pagination:{goto:"\u524D\u5F80",pagesize:"\u6761/\u9875",total:"\u5171 {total} \u6761",pageClassifier:"\u9875",page:"\u9875",prev:"\u4E0A\u4E00\u9875",next:"\u4E0B\u4E00\u9875",currentPage:"\u7B2C {pager} \u9875",prevPages:"\u5411\u524D {pager} \u9875",nextPages:"\u5411\u540E {pager} \u9875",deprecationWarning:"\u4F60\u4F7F\u7528\u4E86\u4E00\u4E9B\u5DF2\u88AB\u5E9F\u5F03\u7684\u7528\u6CD5\uFF0C\u8BF7\u53C2\u8003 el-pagination \u7684\u5B98\u65B9\u6587\u6863"},messagebox:{title:"\u63D0\u793A",confirm:"\u786E\u5B9A",cancel:"\u53D6\u6D88",error:"\u8F93\u5165\u7684\u6570\u636E\u4E0D\u5408\u6CD5!"},upload:{deleteTip:"\u6309 delete \u952E\u53EF\u5220\u9664",delete:"\u5220\u9664",preview:"\u67E5\u770B\u56FE\u7247",continue:"\u7EE7\u7EED\u4E0A\u4F20"},table:{emptyText:"\u6682\u65E0\u6570\u636E",confirmFilter:"\u7B5B\u9009",resetFilter:"\u91CD\u7F6E",clearFilter:"\u5168\u90E8",sumText:"\u5408\u8BA1"},tree:{emptyText:"\u6682\u65E0\u6570\u636E"},transfer:{noMatch:"\u65E0\u5339\u914D\u6570\u636E",noData:"\u65E0\u6570\u636E",titles:["\u5217\u8868 1","\u5217\u8868 2"],filterPlaceholder:"\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9",noCheckedFormat:"\u5171 {total} \u9879",hasCheckedFormat:"\u5DF2\u9009 {checked}/{total} \u9879"},image:{error:"\u52A0\u8F7D\u5931\u8D25"},pageHeader:{title:"\u8FD4\u56DE"},popconfirm:{confirmButtonText:"\u786E\u5B9A",cancelButtonText:"\u53D6\u6D88"}}},dJ={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};hl=_r("app",{state:()=>({route:""}),actions:{}});const hJ=De({__name:"app",setup(e){{const o=location.href.match(/\/web\/(\d*)\//),a=qn("siteId");o?a.value=o[1]:a.value=null}const t=ac(),n=Z(()=>t.lang==="zh-cn"?pJ:dJ);h1().getLoginConfig(),t.getSitenfo(),E2()&&S0().setToken(E2());const r=g0();return Ae(r,(o,a)=>{hl().$patch(s=>{s.route=r.path});let l=r.path=="/"?"/index":r.path;l.slice(-1)=="/"&&(l=l.slice(0,-1)),l=l.lastIndexOf("/")?l:`${l}/index`;let i=l.replace("/","").replaceAll("/",".");setTimeout(()=>{Vr({title:Xe(`pages.${i}`)})},a?0:500)},{immediate:!0}),Vr({titleTemplate:o=>{const a=t.site.front_end_name||t.site.site_name;return o?`${o} - ${a}`:a}}),(o,a)=>{const l=eJ,i=lJ,s=fJ,c=yG;return g(),et(c,{locale:J(n)},{default:Bt(()=>[we(s,null,{default:Bt(()=>[we(l),we(i)]),_:1})]),_:1},8,["locale"])}}}),au={__name:"nuxt-root",setup(e){const t=pl(()=>me(()=>import("./error-component.73ddde8e.js").then(async s=>(await s.__tla,s)),[],import.meta.url).then(s=>s.default||s)),n=()=>null,r=ke(),o=r.deferHydration(),a=!1;qt("_route",g0()),r.hooks.callHookWith(s=>s.map(c=>c()),"vue:setup");const l=n0();m4((s,c,u)=>{if(r.hooks.callHook("vue:error",s,c,u).catch(f=>console.error("[nuxt] Error in `vue:error` hook",f)),C6(s)&&(s.fatal||s.unhandled))return $t(r,Fn,[s]),!1});const{islandContext:i}=!1;return(s,c)=>(g(),et(n4,{onResolve:J(o)},{default:Bt(()=>[J(l)?(g(),et(J(t),{key:0,error:J(l)},null,8,["error"])):J(i)?(g(),et(J(n),{key:1,context:J(i)},null,8,["context"])):J(a)?(g(),et(Br(J(a)),{key:2})):(g(),et(J(hJ),{key:3}))]),_:1},8,["onResolve"]))}};globalThis.$fetch||(globalThis.$fetch=Kf.create({baseURL:Jf()}));let lu;const vJ=p9(QY);lu=async function(){var n,r;const e=(n=window.__NUXT__)!=null&&n.serverRendered||((r=document.getElementById("__NUXT_DATA__"))==null?void 0:r.dataset.ssr)==="true"?_s(au):ll(au),t=c9({vueApp:e});try{await f9(t,vJ)}catch(o){await t.callHook("app:error",o),t.payload.error=t.payload.error||o}try{await t.hooks.callHook("app:created",e),await t.hooks.callHook("app:beforeMount",e),e.mount("#"+rp),await t.hooks.callHook("app:mounted",e),await pt()}catch(o){await t.callHook("app:error",o),t.payload.error=t.payload.error||o}},lu().catch(e=>{console.error("Error while mounting app:",e)})})();export{uu as $,fu as A,h0 as B,st as C,v0 as D,$n as E,m0 as F,pu as G,C2 as H,Tt as I,M2 as J,jn as K,Ae as L,hn as M,i1 as N,Un as O,qt as P,ye as Q,Te as R,Hr as S,c1 as T,kr as U,u1 as V,Er as W,vn as X,f1 as Y,Re as Z,me as _,wJ as __tla,Ar as a,L2 as a$,Se as a0,it as a1,Wn as a2,p1 as a3,d1 as a4,h1 as a5,du as a6,hu as a7,vu as a8,mu as a9,gu as aA,wu as aB,Sr as aC,v1 as aD,_u as aE,yu as aF,Le as aG,m1 as aH,mn as aI,H2 as aJ,g0 as aK,bu as aL,Vr as aM,oe as aN,w0 as aO,Tr as aP,Or as aQ,g1 as aR,ct as aS,zu as aT,w1 as aU,_1 as aV,xu as aW,ne as aX,_e as aY,Cu as aZ,Mu as a_,qn as aa,Lu as ab,Hu as ac,ku as ad,Eu as ae,Au as af,gn as ag,Ot as ah,y1 as ai,wn as aj,b1 as ak,z1 as al,x1 as am,C1 as an,_0 as ao,pt as ap,y0 as aq,M1 as ar,L1 as as,Br as at,H1 as au,k1 as av,Su as aw,E1 as ax,k2 as ay,Pr as az,E2 as b,Ge as b$,Vu as b0,b0 as b1,Tu as b2,Oe as b3,z0 as b4,_n as b5,A1 as b6,S1 as b7,V1 as b8,T1 as b9,Ir as bA,Gt as bB,Fr as bC,Nr as bD,O1 as bE,Rr as bF,B1 as bG,P1 as bH,I1 as bI,F1 as bJ,N1 as bK,Ou as bL,fe as bM,Bu as bN,Pu as bO,R1 as bP,D1 as bQ,$1 as bR,Iu as bS,Fu as bT,Nu as bU,j1 as bV,U1 as bW,W1 as bX,pe as bY,q1 as bZ,x0 as b_,G1 as ba,Ru as bb,Du as bc,$u as bd,Dr as be,ju as bf,K1 as bg,Uu as bh,Y1 as bi,C0 as bj,Wu as bk,qu as bl,Je as bm,J1 as bn,Gu as bo,$r as bp,M0 as bq,X1 as br,Kt as bs,Z1 as bt,jr as bu,Ku as bv,Yu as bw,Ur as bx,Q1 as by,Wr as bz,et as c,L0 as c0,H0 as c1,k0 as c2,el as c3,yn as c4,tl as c5,nl as c6,rl as c7,Ju as c8,ol as c9,al as ca,Xu as cb,ll as cc,sl as cd,Yt as ce,qr as cf,E0 as cg,il as ch,Mt as ci,bn as cj,Zu as ck,A0 as cl,Gr as cm,Qu as cn,cl as co,ke as cp,A2 as cq,ul as cr,Gn as cs,fl as ct,Kr as cu,pl as d,Yr as e,De as f,dl as g,S0 as h,Z as i,hl as j,_ as k,p as l,we as m,e8 as n,g as o,Jr as p,Xe as q,S2 as r,t8 as s,Xr as t,J as u,n8 as v,Bt as w,de as x,V2 as y,r8 as z}; diff --git a/niucloud/public/web/_nuxt/error-404.23f2309d.css b/niucloud/public/web/_nuxt/error-404.23f2309d.css new file mode 100644 index 0000000..d244340 --- /dev/null +++ b/niucloud/public/web/_nuxt/error-404.23f2309d.css @@ -0,0 +1 @@ +.spotlight[data-v-30d2164e]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-30d2164e]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-30d2164e]{background-color:#ffffff4d}.gradient-border[data-v-30d2164e]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-30d2164e]{background-color:#1414144d}.gradient-border[data-v-30d2164e]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82 50%,#36e4da 75%,#0047e1)}}.gradient-border[data-v-30d2164e]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-30d2164e]:hover:before{background-position:-50% 0;opacity:1}.bg-white[data-v-30d2164e]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.cursor-pointer[data-v-30d2164e]{cursor:pointer}.flex[data-v-30d2164e]{display:flex}.grid[data-v-30d2164e]{display:grid}.place-content-center[data-v-30d2164e]{place-content:center}.items-center[data-v-30d2164e]{align-items:center}.justify-center[data-v-30d2164e]{justify-content:center}.font-sans[data-v-30d2164e]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-30d2164e]{font-weight:500}.font-light[data-v-30d2164e]{font-weight:300}.text-8xl[data-v-30d2164e]{font-size:6rem;line-height:1}.text-xl[data-v-30d2164e]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-30d2164e]{line-height:1.25}.mb-8[data-v-30d2164e]{margin-bottom:2rem}.mb-16[data-v-30d2164e]{margin-bottom:4rem}.max-w-520px[data-v-30d2164e]{max-width:520px}.min-h-screen[data-v-30d2164e]{min-height:100vh}.overflow-hidden[data-v-30d2164e]{overflow:hidden}.px-8[data-v-30d2164e]{padding-left:2rem;padding-right:2rem}.py-2[data-v-30d2164e]{padding-bottom:.5rem;padding-top:.5rem}.px-4[data-v-30d2164e]{padding-left:1rem;padding-right:1rem}.fixed[data-v-30d2164e]{position:fixed}.left-0[data-v-30d2164e]{left:0}.right-0[data-v-30d2164e]{right:0}.text-center[data-v-30d2164e]{text-align:center}.text-black[data-v-30d2164e]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-30d2164e]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-full[data-v-30d2164e]{width:100%}.z-10[data-v-30d2164e]{z-index:10}.z-20[data-v-30d2164e]{z-index:20}@media (min-width:640px){.sm\:text-4xl[data-v-30d2164e]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-30d2164e]{font-size:1.25rem;line-height:1.75rem}.sm\:text-10xl[data-v-30d2164e]{font-size:10rem;line-height:1}.sm\:px-0[data-v-30d2164e]{padding-left:0;padding-right:0}.sm\:py-3[data-v-30d2164e]{padding-bottom:.75rem;padding-top:.75rem}.sm\:px-6[data-v-30d2164e]{padding-left:1.5rem;padding-right:1.5rem}}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-30d2164e]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\:text-white[data-v-30d2164e]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}} diff --git a/niucloud/public/web/_nuxt/error-404.931ab3b5.js b/niucloud/public/web/_nuxt/error-404.931ab3b5.js new file mode 100644 index 0000000..b0b36f7 --- /dev/null +++ b/niucloud/public/web/_nuxt/error-404.931ab3b5.js @@ -0,0 +1 @@ +import{_ as g,__tla as u}from"./nuxt-link.404211f0.js";import{aM as x,o as h,k as b,l as e,t as s,m as y,w,p as _,s as k,v as S,__tla as v}from"./entry.60adbc61.js";import{_ as z}from"./_plugin-vue_export-helper.c27b6911.js";let c,C=Promise.all([(()=>{try{return u}catch{}})(),(()=>{try{return v}catch{}})()]).then(async()=>{let a,i,r,n,l,d,m,f;a=t=>(k("data-v-30d2164e"),t=t(),S(),t),i={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},r=a(()=>e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),n={class:"max-w-520px text-center z-20"},l=["textContent"],d=["textContent"],m={class:"w-full flex items-center justify-center"},f={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const o=t;return x({title:`${o.statusCode} - ${o.statusMessage} | ${o.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(N,j)=>{const p=g;return h(),b("div",i,[r,e("div",n,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:s(t.statusCode)},null,8,l),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:s(t.description)},null,8,d),e("div",m,[y(p,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:w(()=>[_(s(t.backHome),1)]),_:1})])])])}}},c=z(f,[["__scopeId","data-v-30d2164e"]])});export{C as __tla,c as default}; diff --git a/niucloud/public/web/_nuxt/error-500.20baa901.js b/niucloud/public/web/_nuxt/error-500.20baa901.js new file mode 100644 index 0000000..2fa179f --- /dev/null +++ b/niucloud/public/web/_nuxt/error-500.20baa901.js @@ -0,0 +1 @@ +import{aM as f,o as g,k as h,l as e,t as m,s as b,v as x,__tla as c}from"./entry.60adbc61.js";import{_ as u}from"./_plugin-vue_export-helper.c27b6911.js";let p,w=Promise.all([(()=>{try{return c}catch{}})()]).then(async()=>{let i,o,a,r,n,l,d;i=t=>(b("data-v-32388612"),t=t(),x(),t),o={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},a=i(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),r={class:"max-w-520px text-center"},n=["textContent"],l=["textContent"],d={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const s=t;return f({title:`${s.statusCode} - ${s.statusMessage} | ${s.appName}`,script:[],style:[{children:'*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e0e0e0}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(14, 165, 233, .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{margin:0;font-family:inherit;line-height:inherit}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5}h1,p{margin:0}h1{font-size:inherit;font-weight:inherit}'}]}),(y,v)=>(g(),h("div",o,[a,e("div",r,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:m(t.statusCode)},null,8,n),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:m(t.description)},null,8,l)])]))}},p=u(d,[["__scopeId","data-v-32388612"]])});export{w as __tla,p as default}; diff --git a/niucloud/public/web/_nuxt/error-500.aa16ed4d.css b/niucloud/public/web/_nuxt/error-500.aa16ed4d.css new file mode 100644 index 0000000..6585a76 --- /dev/null +++ b/niucloud/public/web/_nuxt/error-500.aa16ed4d.css @@ -0,0 +1 @@ +.spotlight[data-v-32388612]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.bg-white[data-v-32388612]{--tw-bg-opacity:1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.grid[data-v-32388612]{display:grid}.place-content-center[data-v-32388612]{place-content:center}.font-sans[data-v-32388612]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-medium[data-v-32388612]{font-weight:500}.font-light[data-v-32388612]{font-weight:300}.h-1\/2[data-v-32388612]{height:50%}.text-8xl[data-v-32388612]{font-size:6rem;line-height:1}.text-xl[data-v-32388612]{font-size:1.25rem;line-height:1.75rem}.leading-tight[data-v-32388612]{line-height:1.25}.mb-8[data-v-32388612]{margin-bottom:2rem}.mb-16[data-v-32388612]{margin-bottom:4rem}.max-w-520px[data-v-32388612]{max-width:520px}.min-h-screen[data-v-32388612]{min-height:100vh}.overflow-hidden[data-v-32388612]{overflow:hidden}.px-8[data-v-32388612]{padding-left:2rem;padding-right:2rem}.fixed[data-v-32388612]{position:fixed}.left-0[data-v-32388612]{left:0}.right-0[data-v-32388612]{right:0}.-bottom-1\/2[data-v-32388612]{bottom:-50%}.text-center[data-v-32388612]{text-align:center}.text-black[data-v-32388612]{--tw-text-opacity:1;color:rgba(0,0,0,var(--tw-text-opacity))}.antialiased[data-v-32388612]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:640px){.sm\:text-4xl[data-v-32388612]{font-size:2.25rem;line-height:2.5rem}.sm\:text-10xl[data-v-32388612]{font-size:10rem;line-height:1}.sm\:px-0[data-v-32388612]{padding-left:0;padding-right:0}}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-32388612]{--tw-bg-opacity:1;background-color:rgba(0,0,0,var(--tw-bg-opacity))}.dark\:text-white[data-v-32388612]{--tw-text-opacity:1;color:rgba(255,255,255,var(--tw-text-opacity))}} diff --git a/niucloud/public/web/_nuxt/error-component.73ddde8e.js b/niucloud/public/web/_nuxt/error-component.73ddde8e.js new file mode 100644 index 0000000..5c86b64 --- /dev/null +++ b/niucloud/public/web/_nuxt/error-component.73ddde8e.js @@ -0,0 +1,3 @@ +import{o as m,c as g,n as h,g as E,u as e,d as l,_ as o,__tla as f}from"./entry.60adbc61.js";let i,x=Promise.all([(()=>{try{return f}catch{}})()]).then(async()=>{let s;s={__name:"nuxt-error-page",props:{error:Object},setup(u){const{error:a}=u;(a.stack||"").split(` +`).splice(1).map(t=>({text:t.replace("webpack:/","").replace(".vue",".js").trim(),internal:t.includes("node_modules")&&!t.includes(".cache")||t.includes("internal")||t.includes("new Promise")})).map(t=>`${t.text}`).join(` +`);const r=Number(a.statusCode||500),n=r===404,_=a.statusMessage??(n?"Page Not Found":"Internal Server Error"),c=a.message||a.toString(),p=void 0,d=n?l(()=>o(()=>import("./error-404.931ab3b5.js").then(async t=>(await t.__tla,t)),["./error-404.931ab3b5.js","./nuxt-link.404211f0.js","./entry.60adbc61.js","./entry.1653e94f.css","./_plugin-vue_export-helper.c27b6911.js","./error-404.23f2309d.css"],import.meta.url).then(t=>t.default||t)):l(()=>o(()=>import("./error-500.20baa901.js").then(async t=>(await t.__tla,t)),["./error-500.20baa901.js","./entry.60adbc61.js","./entry.1653e94f.css","./_plugin-vue_export-helper.c27b6911.js","./error-500.aa16ed4d.css"],import.meta.url).then(t=>t.default||t));return(t,P)=>(m(),g(e(d),h(E({statusCode:e(r),statusMessage:e(_),description:e(c),stack:e(p)})),null,16))}},i=s});export{x as __tla,i as default}; diff --git a/niucloud/public/web/_nuxt/index.24fdde3c.js b/niucloud/public/web/_nuxt/index.24fdde3c.js new file mode 100644 index 0000000..09e6508 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.24fdde3c.js @@ -0,0 +1 @@ +const t="\u9996\u9875",e={title:t};export{e as default,t as title}; diff --git a/niucloud/public/web/_nuxt/index.59e0a5b1.js b/niucloud/public/web/_nuxt/index.59e0a5b1.js new file mode 100644 index 0000000..e95f203 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.59e0a5b1.js @@ -0,0 +1 @@ +import{ch as o,i as c,u as i,R as u,a0 as _,__tla as m}from"./entry.60adbc61.js";let t,l,h=Promise.all([(()=>{try{return m}catch{}})()]).then(async()=>{let a,r;a={prefix:Math.floor(Math.random()*1e4),current:0},r=Symbol("elIdInjection"),t=()=>u()?_(r,a):a,l=s=>{const e=t(),n=o();return c(()=>i(s)||`${n.value}-id-${e.prefix}-${e.current++}`)}});export{h as __tla,t as a,l as u}; diff --git a/niucloud/public/web/_nuxt/index.66837b9f.js b/niucloud/public/web/_nuxt/index.66837b9f.js new file mode 100644 index 0000000..1f6ec2a --- /dev/null +++ b/niucloud/public/web/_nuxt/index.66837b9f.js @@ -0,0 +1 @@ +import{_ as L,E as M,v as Q,__tla as R}from"./el-loading.5f1a5791.js";import{J as U,ah as w,f as h,B as W,i as j,aN as X,K as Y,o as i,k as n,C as u,u as t,r as S,p as Z,t as r,y,l,E as tt,D as et,F as at,h as st,x as lt,j as rt,m as p,S as it,c as nt,w as b,q as c,ad as ot,__tla as ct}from"./entry.60adbc61.js";import{_ as ut,__tla as pt}from"./nuxt-link.404211f0.js";import{_ as mt,__tla as ft}from"./default_headimg.1ff33930.js";import{_ as _t}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as dt}from"./el-popper.f96f4ae9.js";import{__tla as vt}from"./index.f6314314.js";import{__tla as xt}from"./index.59e0a5b1.js";import{__tla as yt}from"./vnode.a078d472.js";let $,bt=Promise.all([(()=>{try{return R}catch{}})(),(()=>{try{return ct}catch{}})(),(()=>{try{return pt}catch{}})(),(()=>{try{return ft}catch{}})(),(()=>{try{return dt}catch{}})(),(()=>{try{return vt}catch{}})(),(()=>{try{return xt}catch{}})(),(()=>{try{return yt}catch{}})()]).then(async()=>{const E=U({decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},precision:{type:Number,default:0},formatter:Function,value:{type:w([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:w([String,Object,Array])}}),B=h({name:"ElStatistic"}),N=h({...B,props:E,setup(k,{expose:_}){const d=k,s=W("statistic"),e=j(()=>{const{value:a,formatter:m,precision:o,decimalSeparator:v,groupSeparator:g}=d;if(X(m))return m(a);if(!Y(a))return a;let[f,x=""]=String(a).split(".");return x=x.padEnd(o,"0").slice(0,o>0?o:0),f=f.replace(/\B(?=(\d{3})+(?!\d))/g,g),[f,x].join(x?v:"")});return _({displayValue:e}),(a,m)=>(i(),n("div",{class:u(t(s).b())},[a.$slots.title||a.title?(i(),n("div",{key:0,class:u(t(s).e("head"))},[S(a.$slots,"title",{},()=>[Z(r(a.title),1)])],2)):y("v-if",!0),l("div",{class:u(t(s).e("content"))},[a.$slots.prefix||a.prefix?(i(),n("div",{key:0,class:u(t(s).e("prefix"))},[S(a.$slots,"prefix",{},()=>[l("span",null,r(a.prefix),1)])],2)):y("v-if",!0),l("span",{class:u(t(s).e("number")),style:tt(a.valueStyle)},r(t(e)),7),a.$slots.suffix||a.suffix?(i(),n("div",{key:1,class:u(t(s).e("suffix"))},[S(a.$slots,"suffix",{},()=>[l("span",null,r(a.suffix),1)])],2)):y("v-if",!0)],2)],2))}});var C=et(N,[["__file","/home/runner/work/element-plus/element-plus/packages/components/statistic/src/statistic.vue"]]);const F=at(C),O={class:"w-full h-full bg-page pt-6"},P={class:"main-container flex justify-between"},q={class:"card-header"},A={key:0,class:"px-10 py-5"},D={class:"flex items-center border-gray-300 border-b-1 pb-5 px-5"},I={key:0,class:"w-[65px] h-[65px] rounded-full",src:mt,alt:""},J=["src"],K={class:"ml-4"},T={class:"text-base font-bold"},V={class:"text-xs"},z={class:"text-xs text-gray-400 mt-1"},G={class:"flex justify-between mt-8 statistic-wrap px-8"},H=h({__name:"index",setup(k){const _=st(),d=lt(!0),s=j(()=>(_.info&&(d.value=!1),_.info));return rt(),(e,a)=>{const m=L,o=F,v=ut,g=M,f=Q;return i(),n("div",O,[l("div",P,[p(m),it((i(),nt(g,{class:"box-card flex-1 ml-4",shadow:"never"},{header:b(()=>[l("div",q,[l("span",null,r(("t"in e?e.t:t(c))("welcomePage")),1)])]),default:b(()=>[t(s)?(i(),n("div",A,[l("div",D,[t(s).headimg?(i(),n("img",{key:1,src:("img"in e?e.img:t(ot))(t(s).headimg),class:"w-[65px] h-[65px] rounded-full",alt:""},null,8,J)):(i(),n("img",I)),l("div",K,[l("div",null,[l("span",T,r(t(s).nickname),1),l("span",V,"\uFF08"+r(("t"in e?e.t:t(c))("mobile"))+"\uFF1A"+r(t(s).mobile?t(s).mobile:("t"in e?e.t:t(c))("notBound"))+"\uFF09",1)]),l("p",z,r(("t"in e?e.t:t(c))("registrationTime"))+"\uFF1A"+r(t(s).create_time),1)])]),l("div",G,[p(v,{to:"/member/point"},{default:b(()=>[p(o,{title:("t"in e?e.t:t(c))("point"),value:t(s).point},null,8,["title","value"])]),_:1}),p(v,{to:"/member/balance"},{default:b(()=>[p(o,{title:("t"in e?e.t:t(c))("balance"),value:t(s).balance},null,8,["title","value"])]),_:1}),p(o,{title:("t"in e?e.t:t(c))("looseChange"),value:t(s).money},null,8,["title","value"])])])):y("",!0)]),_:1})),[[f,d.value]])])])}}});$=_t(H,[["__scopeId","data-v-538230b0"]])});export{bt as __tla,$ as default}; diff --git a/niucloud/public/web/_nuxt/index.8b8e685c.css b/niucloud/public/web/_nuxt/index.8b8e685c.css new file mode 100644 index 0000000..bf0886b --- /dev/null +++ b/niucloud/public/web/_nuxt/index.8b8e685c.css @@ -0,0 +1 @@ +.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{color:var(--el-statistic-title-color);font-size:var(--el-statistic-title-font-size);font-weight:var(--el-statistic-title-font-weight);line-height:20px;margin-bottom:4px}.el-statistic__content{color:var(--el-statistic-content-color);font-size:var(--el-statistic-content-font-size);font-weight:var(--el-statistic-content-font-weight)}.el-statistic__value{display:inline-block}.el-statistic__prefix{display:inline-block;margin-right:4px}.el-statistic__suffix{display:inline-block;margin-left:4px}[data-v-538230b0] .box-card{border:none!important}[data-v-538230b0] .box-card .el-card__header{border-color:#f1f1f1}[data-v-538230b0] .statistic-wrap .el-statistic__content,[data-v-538230b0] .statistic-wrap .el-statistic__head{text-align:center} diff --git a/niucloud/public/web/_nuxt/index.91aee260.css b/niucloud/public/web/_nuxt/index.91aee260.css new file mode 100644 index 0000000..a482489 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.91aee260.css @@ -0,0 +1 @@ +.el-carousel__item{display:inline-block;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.el-carousel__item,.el-carousel__item.is-active{z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item--card,.el-carousel__item.is-animating{transition:transform .4s ease-in-out}.el-carousel__item--card{width:50%}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:var(--el-index-normal)}.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask,.el-carousel__item--card.is-in-stage:hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:calc(var(--el-index-normal) + 1)}.el-carousel__mask{background-color:var(--el-color-white);height:100%;left:0;opacity:.24;position:absolute;top:0;transition:var(--el-transition-duration-fast);width:100%}.el-carousel{--el-carousel-arrow-font-size:12px;--el-carousel-arrow-size:36px;--el-carousel-arrow-background:rgba(31,45,61,.11);--el-carousel-arrow-hover-background:rgba(31,45,61,.23);--el-carousel-indicator-width:30px;--el-carousel-indicator-height:2px;--el-carousel-indicator-padding-horizontal:4px;--el-carousel-indicator-padding-vertical:12px;--el-carousel-indicator-out-color:var(--el-border-color-hover);position:relative}.el-carousel--horizontal{overflow-x:hidden}.el-carousel--vertical{overflow-y:hidden}.el-carousel__container{height:300px;position:relative}.el-carousel__arrow{align-items:center;background-color:var(--el-carousel-arrow-background);border:none;border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;font-size:var(--el-carousel-arrow-font-size);height:var(--el-carousel-arrow-size);justify-content:center;margin:0;outline:0;padding:0;position:absolute;text-align:center;top:50%;transform:translateY(-50%);transition:var(--el-transition-duration);width:var(--el-carousel-arrow-size);z-index:10}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:var(--el-carousel-arrow-hover-background)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{list-style:none;margin:0;padding:0;position:absolute;z-index:calc(var(--el-index-normal) + 1)}.el-carousel__indicators--horizontal{bottom:0;left:50%;transform:translate(-50%)}.el-carousel__indicators--vertical{right:0;top:50%;transform:translateY(-50%)}.el-carousel__indicators--outside{bottom:calc(var(--el-carousel-indicator-height) + var(--el-carousel-indicator-padding-vertical)*2);position:static;text-align:center;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:var(--el-carousel-indicator-out-color);opacity:.24}.el-carousel__indicators--labels{left:0;right:0;text-align:center;transform:none}.el-carousel__indicators--labels .el-carousel__button{color:#000;font-size:12px;height:auto;padding:2px 18px;width:auto}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{background-color:transparent;cursor:pointer}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{display:inline-block;padding:var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal)}.el-carousel__indicator--vertical{padding:var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)}.el-carousel__indicator--vertical .el-carousel__button{height:calc(var(--el-carousel-indicator-width)/2);width:var(--el-carousel-indicator-height)}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{background-color:#fff;border:none;cursor:pointer;display:block;height:var(--el-carousel-indicator-height);margin:0;opacity:.48;outline:0;padding:0;transition:var(--el-transition-duration);width:var(--el-carousel-indicator-width)}.carousel-arrow-left-enter-from,.carousel-arrow-left-leave-active{opacity:0;transform:translateY(-50%) translate(-10px)}.carousel-arrow-right-enter-from,.carousel-arrow-right-leave-active{opacity:0;transform:translateY(-50%) translate(10px)}.index-carousel[data-v-96f7931e]{background-image:url(./index_carousel.7d47a1e1.png);background-position:50%;background-size:cover}.index-carousel[data-v-96f7931e],.word[data-v-96f7931e]{background-repeat:no-repeat}.word[data-v-96f7931e]{background-image:url(./word-back.77d66d93.jpg);background-size:100%} diff --git a/niucloud/public/web/_nuxt/index.ac04ba3c.js b/niucloud/public/web/_nuxt/index.ac04ba3c.js new file mode 100644 index 0000000..98aac81 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.ac04ba3c.js @@ -0,0 +1 @@ +import{H as rA,I as ue,J as nA,K as ce,x as I,i as D,u as A,L as X,M as oA,N as ve,O as de,P as pe,Q as xe,R as iA,f as P,B as uA,o as C,k as g,l as c,c as cA,w as Z,S as O,C as M,T as G,m as S,U as vA,V as Ee,W as Y,X as dA,y as H,Y as Be,r as pA,E as xA,Z as me,$ as Qe,t as fe,D as EA,a0 as he,a1 as ye,a2 as be,a3 as we,F as Ie,G as Ve,a4 as K,s as Re,v as je,__tla as Ce}from"./entry.60adbc61.js";import{f as Fe,__tla as Ze}from"./vnode.a078d472.js";import{t as BA,__tla as Me}from"./throttle.95940245.js";import{_ as Se,__tla as ke}from"./nuxt-link.404211f0.js";import{_ as Ne}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as ge}from"./debounce.cf505dd3.js";let mA,De=Promise.all([(()=>{try{return Ce}catch{}})(),(()=>{try{return Ze}catch{}})(),(()=>{try{return Me}catch{}})(),(()=>{try{return ke}catch{}})(),(()=>{try{return ge}catch{}})()]).then(async()=>{const QA=(a,f,r)=>Fe(a.subTree).filter(e=>{var u;return ue(e)&&((u=e.type)==null?void 0:u.name)===f&&!!e.component}).map(e=>e.component.uid).map(e=>r[e]).filter(e=>!!e),fA=(a,f)=>{const r={},e=rA([]);return{children:e,addChild:u=>{r[u.uid]=u,e.value=QA(a,f,r)},removeChild:u=>{delete r[u],e.value=e.value.filter(E=>E.uid!==u)}}},hA=nA({initialIndex:{type:Number,default:0},height:{type:String,default:""},trigger:{type:String,values:["hover","click"],default:"hover"},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:3e3},indicatorPosition:{type:String,values:["","none","outside"],default:""},arrow:{type:String,values:["always","hover","never"],default:"hover"},type:{type:String,values:["","card"],default:""},loop:{type:Boolean,default:!0},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},pauseOnHover:{type:Boolean,default:!0}}),yA={change:(a,f)=>[a,f].every(ce)},$=Symbol("carouselContextKey"),AA=300,bA=(a,f,r)=>{const{children:e,addChild:u,removeChild:E}=fA(iA(),"ElCarouselItem"),n=I(-1),B=I(null),h=I(!1),m=I(),y=D(()=>a.arrow!=="never"&&!A(b)),V=D(()=>e.value.some(t=>t.props.label.toString().length>0)),Q=D(()=>a.type==="card"),b=D(()=>a.direction==="vertical"),R=BA(t=>{l(t)},AA,{trailing:!0}),w=BA(t=>{U(t)},AA);function j(){B.value&&(clearInterval(B.value),B.value=null)}function k(){a.interval<=0||!a.autoplay||B.value||(B.value=setInterval(()=>W(),a.interval))}const W=()=>{n.valueJ.props.name===t);q.length>0&&(t=e.value.indexOf(q[0]))}if(t=Number(t),Number.isNaN(t)||t!==Math.floor(t))return;const x=e.value.length,F=n.value;t<0?n.value=a.loop?x-1:0:t>=x?n.value=a.loop?0:x-1:n.value=t,F===n.value&&o(F),tA()}function o(t){e.value.forEach((x,F)=>{x.translateItem(F,n.value,t)})}function s(t,x){var F,q,J,aA;const T=A(e),lA=T.length;if(lA===0||!t.states.inStage)return!1;const le=x+1,se=x-1,sA=lA-1,re=T[sA].states.active,ne=T[0].states.active,oe=(q=(F=T[le])==null?void 0:F.states)==null?void 0:q.active,ie=(aA=(J=T[se])==null?void 0:J.states)==null?void 0:aA.active;return x===sA&&ne||oe?"left":x===0&&re||ie?"right":!1}function d(){h.value=!0,a.pauseOnHover&&j()}function N(){h.value=!1,k()}function v(t){A(b)||e.value.forEach((x,F)=>{t===s(x,F)&&(x.states.hover=!0)})}function i(){A(b)||e.value.forEach(t=>{t.states.hover=!1})}function p(t){n.value=t}function U(t){a.trigger==="hover"&&t!==n.value&&(n.value=t)}function z(){l(n.value-1)}function ae(){l(n.value+1)}function tA(){j(),k()}X(()=>n.value,(t,x)=>{o(x),x>-1&&f("change",t,x)}),X(()=>a.autoplay,t=>{t?k():j()}),X(()=>a.loop,()=>{l(n.value)}),X(()=>a.interval,()=>{tA()}),X(()=>e.value,()=>{e.value.length>0&&l(a.initialIndex)});const _=rA();return oA(()=>{_.value=ve(m.value,()=>{o()}),k()}),de(()=>{j(),m.value&&_.value&&_.value.stop()}),pe($,{root:m,isCardType:Q,isVertical:b,items:e,loop:a.loop,addItem:u,removeItem:E,setActiveItem:l}),{root:m,activeIndex:n,arrowDisplay:y,hasLabel:V,hover:h,isCardType:Q,items:e,handleButtonEnter:v,handleButtonLeave:i,handleIndicatorClick:p,handleMouseEnter:d,handleMouseLeave:N,setActiveItem:l,prev:z,next:ae,throttledArrowClick:R,throttledIndicatorHover:w}},wA=["onMouseenter","onClick"],IA={key:0},VA="ElCarousel",RA=P({name:VA}),jA=P({...RA,props:hA,emits:yA,setup(a,{expose:f,emit:r}){const e=a,{root:u,activeIndex:E,arrowDisplay:n,hasLabel:B,hover:h,isCardType:m,items:y,handleButtonEnter:V,handleButtonLeave:Q,handleIndicatorClick:b,handleMouseEnter:R,handleMouseLeave:w,setActiveItem:j,prev:k,next:W,throttledArrowClick:l,throttledIndicatorHover:o}=bA(e,r),s=uA("carousel"),d=D(()=>{const v=[s.b(),s.m(e.direction)];return A(m)&&v.push(s.m("card")),v}),N=D(()=>{const v=[s.e("indicators"),s.em("indicators",e.direction)];return A(B)&&v.push(s.em("indicators","labels")),(e.indicatorPosition==="outside"||A(m))&&v.push(s.em("indicators","outside")),v});return f({setActiveItem:j,prev:k,next:W}),(v,i)=>(C(),g("div",{ref_key:"root",ref:u,class:M(A(d)),onMouseenter:i[6]||(i[6]=G((...p)=>A(R)&&A(R)(...p),["stop"])),onMouseleave:i[7]||(i[7]=G((...p)=>A(w)&&A(w)(...p),["stop"]))},[c("div",{class:M(A(s).e("container")),style:xA({height:v.height})},[A(n)?(C(),cA(dA,{key:0,name:"carousel-arrow-left",persisted:""},{default:Z(()=>[O(c("button",{type:"button",class:M([A(s).e("arrow"),A(s).em("arrow","left")]),onMouseenter:i[0]||(i[0]=p=>A(V)("left")),onMouseleave:i[1]||(i[1]=(...p)=>A(Q)&&A(Q)(...p)),onClick:i[2]||(i[2]=G(p=>A(l)(A(E)-1),["stop"]))},[S(A(vA),null,{default:Z(()=>[S(A(Ee))]),_:1})],34),[[Y,(v.arrow==="always"||A(h))&&(e.loop||A(E)>0)]])]),_:1})):H("v-if",!0),A(n)?(C(),cA(dA,{key:1,name:"carousel-arrow-right",persisted:""},{default:Z(()=>[O(c("button",{type:"button",class:M([A(s).e("arrow"),A(s).em("arrow","right")]),onMouseenter:i[3]||(i[3]=p=>A(V)("right")),onMouseleave:i[4]||(i[4]=(...p)=>A(Q)&&A(Q)(...p)),onClick:i[5]||(i[5]=G(p=>A(l)(A(E)+1),["stop"]))},[S(A(vA),null,{default:Z(()=>[S(A(Be))]),_:1})],34),[[Y,(v.arrow==="always"||A(h))&&(e.loop||A(E)(C(),g("li",{key:U,class:M([A(s).e("indicator"),A(s).em("indicator",v.direction),A(s).is("active",U===A(E))]),onMouseenter:z=>A(o)(U),onClick:G(z=>A(b)(U),["stop"])},[c("button",{class:M(A(s).e("button"))},[A(B)?(C(),g("span",IA,fe(p.props.label),1)):H("v-if",!0)],2)],42,wA))),128))],2)):H("v-if",!0)],34))}});var CA=EA(jA,[["__file","/home/runner/work/element-plus/element-plus/packages/components/carousel/src/carousel.vue"]]);const FA=nA({name:{type:String,default:""},label:{type:[String,Number],default:""}}),ZA=(a,f)=>{const r=he($),e=iA(),u=.83,E=I(!1),n=I(0),B=I(1),h=I(!1),m=I(!1),y=I(!1),V=I(!1),{isCardType:Q,isVertical:b}=r;function R(l,o,s){const d=s-1,N=o-1,v=o+1,i=s/2;return o===0&&l===d?-1:o===d&&l===0?s:l=i?s+1:l>v&&l-o>=i?-2:l}function w(l,o){var s;const d=((s=r.root.value)==null?void 0:s.offsetWidth)||0;return y.value?d*((2-u)*(l-o)+1)/4:l{var d;const N=A(Q),v=(d=r.items.value.length)!=null?d:Number.NaN,i=l===o;!N&&!we(s)&&(V.value=i||l===s),!i&&v>2&&r.loop&&(l=R(l,o,v));const p=A(b);h.value=i,N?(y.value=Math.round(Math.abs(l-o))<=1,n.value=w(l,o),B.value=A(h)?1:u):n.value=j(l,o,p),m.value=!0};function W(){if(r&&A(Q)){const l=r.items.value.findIndex(({uid:o})=>o===e.uid);r.setActiveItem(l)}}return oA(()=>{r.addItem({props:a,states:ye({hover:E,translate:n,scale:B,active:h,ready:m,inStage:y,animating:V}),uid:e.uid,translateItem:k})}),be(()=>{r.removeItem(e.uid)}),{active:h,animating:V,hover:E,inStage:y,isVertical:b,translate:n,isCardType:Q,scale:B,ready:m,handleItemClick:W}},MA=P({name:"ElCarouselItem"}),SA=P({...MA,props:FA,setup(a){const f=a,r=uA("carousel"),{active:e,animating:u,hover:E,inStage:n,isVertical:B,translate:h,isCardType:m,scale:y,ready:V,handleItemClick:Q}=ZA(f),b=D(()=>{const R=`${`translate${A(B)?"Y":"X"}`}(${A(h)}px)`,w=`scale(${A(y)})`;return{transform:[R,w].join(" ")}});return(R,w)=>O((C(),g("div",{class:M([A(r).e("item"),A(r).is("active",A(e)),A(r).is("in-stage",A(n)),A(r).is("hover",A(E)),A(r).is("animating",A(u)),{[A(r).em("item","card")]:A(m)}]),style:xA(A(b)),onClick:w[0]||(w[0]=(...j)=>A(Q)&&A(Q)(...j))},[A(m)?O((C(),g("div",{key:0,class:M(A(r).e("mask"))},null,2)),[[Y,!A(e)]]):H("v-if",!0),pA(R.$slots,"default")],6)),[[Y,A(V)]])}});var eA=EA(SA,[["__file","/home/runner/work/element-plus/element-plus/packages/components/carousel/src/carousel-item.vue"]]);const kA=Ie(CA,{CarouselItem:eA}),NA=Ve(eA),gA="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAtAC0DAREAAhEBAxEB/8QAHQAAAQMFAQAAAAAAAAAAAAAACAQGCQACAwUHCv/EADoQAAEDAwEGAQkECwAAAAAAAAQCAwUBBgcIAAkSExQVERYXGSI4V4e31iEjU6ckJTFodZWWl7XV5f/EAB0BAAEEAwEBAAAAAAAAAAAAAAgEBQYHAAIDAQn/xABGEQABBAECBAIDCQwKAwAAAAACAQMEBQYABxESExQIIRUiNxYXGCNWhYa1tiQxQVJTlJWlprTV1jI4UWZnc3STltTT4+T/2gAMAwEAAhEDEQA/APcdqIzVF6eMO3hmGahD7ijbP8n+phosgcU4zygumEtdnkPl0qO305E20U7zKesyw4hHrqTtO9tMFl7l5tS4TBnx6yVdekulOltOvR2PRtRPtj6jbKo4XVbgGyHKvkbgkvqouo7lmRMYnQT7+RGdlswO1547JADrndTY0IeUnPUTkOSJlx++IqieapqPcTeuCnijHA6Vs5GBGjslhmCCNkClikNpeHJGIZjltPjvtLQ6y80tbbra0rQpSVUrUk3vB67HddjyN3cBYfYcNl5l50mnWXWiUHGnWzlibbjZiQGBihASKJIioqaqpvfAHQB1rCMmcbcAXG3G20MHANEIDAxaUSAhVCEhVUJFRUVUXSj0qP7puev5d/y9ufwQ/wDGLb384/8As1v79n9xso/2f/TrbY43r+IrtyPFY7vewL0xI5Kl0jazl3vg1AiZR9KegHnBmm2TowYxxaGOveZqOIt5l4zkBVeLYR5P4PM0psYmZLQZHR5kMRlZSV9K1ISTMiNqvcO17pm4xLdYESc7cDRx4QMGOo+gMudqjfGhnW7FTZVdjRK+50Vkzya6TDxInTCSAoLjIOKqCrpDytqQk5yt8zgSotuIdQh1paHGnEJcbcbVRaHELpRSFoWmtUqQpNaKSpNa0VStK0rWldhDISAiAxIDElEhJFEhIV4EJCvBUJFRUVFRFRU4L56u1FQkQhVFEkRUVF4oqKnFFRfwoqeaLq/bXXugN3m3sP5t+G3zdsHYhvCn7fMD+lH2MyLVY7yezfI/mf6+q9PfEeVse4c0e6cbvyZdAFo235lMLxndpFstwfrzMewVRRuEIYp7jeoy5w15XBThrxKp408WDM8PyXN969z6XFaiRdWnu7zqV2cUmRd7djJbBHXeL7rIcoc48fX4+acEXTlQ3lVj+A4jPuZrUCH7nMdZ67yGodVyqi8gcGwMuJcq8PV4eXmunZj3V3puyvdcfY+PMsW9dN2SrZz0dCADzLZRTcaERInLbUXGDD0oOCKQQvjeTWqGlUTRSq0TVoyXZfdDD6eTf5Lh1lUU8Mo4SZ8hyCTLJSpDcWOhIzLdc4uyHm2h5QX1jTjwTiqLqrPMQvJzVbU3sSbOfRwmozQyEM0ZbJ5xUVxkB9RsCNeJJ5CvDivlqGO/IvTZcWtDWTa+pW5I20IGdBjmbSuYpkxUlCXUOmHdHkIV4EQpxBLA9XOpGeSkQ4NTopFFUWmqDlx6ZulWbF7IW21lXKurGvfkHc1TRsJFn1DizQcjTgfeZEmnHUDpOtqr0d9AeaVFFUIerNnEJe4e4ELMJbMCLJbZGDMMXOtGmgjBC7GJsDVDEePOBcG3W1UD4oqcOt6DNZBdkZJB0jXteYGWLTekEwWHMp2+5IFJ5dUuLjICSbkmGJCkS8KlDMfQltBFuPtdrX1UYsZ4CGeIfZBm/wAWkbz0FHIw24bjLYZviNkMZolPiIy7GKcVxyMsxt1SOSrRK1aNH3aIzLR1uQ+7Y7gHW3DeCWNi1ewSdSLj93FJ404easxXReAXegQcBaQkQ4hj0PjGFAmZ0Nvn7oltAbvNvYfzb8Nvm7YOxDeFP2+YH9KPsZkWqx3k9m+R/M/19V6z23L4FhdEWnE3UYxaBGPPM/g9qrd7Qzc7Dd6Xj2E7aroXAjk9VSiX+Q9yPFulV+C08X26WkLcSfv1uexti5dNZL7tc+PmoZxV87sByWf3KdwL8deiqq31A6nAl5fVXh5bQ38Yj7cYi5lowDqvQGNjwsY6SY/cLVRukvTJtxOfyLlLl8vPzTjrnNn553X+Pp8O6rGPwdaNyx6CmwZ63bGpEywjZoroRiBzwreZIZSUI++M/RDiaOsOuNL8ULVSsnu9vPFjklc/T5BHz65qpJMlIrrO/wC8hvFHeB9gnY79kbRq0+2262pCvI4AmnAkRdNFfk+zFVKbnVjuNwJjSGjUqJXIw+2jgE24gOtxRMUNsiAkRfMSVF8l0sKyluycs3u09JM4MvW/LzlggaGythsyEzOy5zjIATb559v1cfIeXVgdC33v2UQmqqUp9nBnEvFZh1CYRTz+ix6jhPyFYiZCcaDXwo4uSHybjsWKC22Ao44Qth9/mVEVV10O62bvbISeHGrGzsH22+q/WA7IkyHVFptDdciqRGSqIIpF/YnFETQ9ah8U4zxVrx0OhY1sK0rDDl5s0qUGtOBjoJiQJGlhmR3zG44dhBDrLTi22lu0UpCFqSmtKVrTaydtMwyrL/Dzv7IynIrnIX4UBhmI7cWEmwcjNOwnTcbYKS44rYGYiRiCohEiKvFUTUUyyjpqTc3bZunq4NY2/JcN8IMZqMLphIAQJxGhFDIRVUFS4qiKqJqarYE9EVoDd5t7D+bfht83bB2Ibwp+3zA/pR9jMi1WO8ns3yP5n+vqvWKIltP8Noc04m6lE2+vHNMRYOb8LkipOZju+Lx5Ddsr0cSGcXz+GhHLd5HLRSquNaeKnjvNh7jzt/tz2NrVshyf3aZ+fGrmRIMn0eOSzu6+OmPx2enxVvmDqcxeXKK8F4asP4tH22xFzMEirUegcbH7sYekNdytVG6PxbDbrnN5FwLl4J58VTjofPOHufvwMQ/2+vr6Z2sn3N+Nb8pmn/I8f/imor6W2D/Fof0VZ/8AT057JvzdTFXha41kM4rpeL8/Es2tUKxb0GMpcDhzCIiopBFutMMEddVjkuvOtttucK1rSmla0ab7H/GA1SW7t85l60jdbNO3R/IKJ1ha0I7hTes01ZG44126Oc4ABGY8RESVURVtbZ7IHYQgrRpEsClMDC6dbYg53ROCjHIZxBAD6qjykRIIrwVVRPPWo1i+33oM/ikp/mhNluyX9XTxDf6SL+4PaT7ge1HbD/Pe/eW9S1bBtq9dAbvNvYfzb8Nvm7YOxDeFP2+YH9KPsZkWqx3k9m+R/M/19V6b2JMo6O7u0tYDsDLuUNOs2zDYgxKxL2ffV/47fVFXBC2LChvjyUJMTNHQZaLKSSK+OUO0WGQl5h1DbqVpo55liW9lLu3uLkeF4nuZAOdmuZOQrrH8cyZtJlbOyCc+25FnwoPJIhy2VaebcacNl9tQcAiBUVUlFdYBPwrF6u+usSkjHoKIZECztKklYlR6yM2YPRpEjmafYNDAwMBNs0ISRCRU0o7Futfx9E39R4d/2m3L0j4t/wAnvx+jM2/6mt+22V/G25/O8f8A/NpfFDbseDk4+ZhpXRhGS0UYNIxkiDdOIBjADg3kPilikNSqXGCB320OsutqSttxKVJrStKV2Ty3fFbPiyYM2HvnLhzGHY0qLIqM0dYkR3wJt5l5s4ai4062RAYEiiQqqKiouurAbNRnmpEd/bxl9hwHWXm5tADjTrZIYOAYvoomBIhCSKioqIqaFvUhkvHGSteehovHWQLJv4SLmjhpMqyrrgrqHjiCJcZ1hg56CPPbEefaQtxlohTa3EIUtCVJTWtLb2vxXJ8W8PG/zOTY5fY49LgMOxWr2nsKh2S03CdBxyO3YR45vNtmQiZtoQiSoJKiqiahOX3FRcbnbauVNrW2gMyXAeOunRZwMmcgCEXSjOuo2RIiqImqKqIqoiompoNgY0Q+mHk7GNj5jsebxvkiE8o7LuPtveYbuUvEdZ2iXAno79YwJ8XKj9PKxYJX6KcxzuRyH+aM68y5IsUyu/wi/gZRi8/0Ze1nddjO7WFN6HewpNfJ+5rCNLhu9WHLkM/HR3OTqdRvkdADFruaatyCtk1FvG7uul9HuI/WkR+p28hqU18bFdZfDkfZaP1HR5uXlLmAiFRJ9GTof9yX5k5d+vtrk+FZv58vP2Xwz+XdQX3m9t/k5+uL7+Kar0ZOh/3JfmTl36+2z4Vm/ny8/ZfDP5d1nvN7b/Jz9cX38U1XoydD/uS/MnLv19tnwrN/Pl5+y+Gfy7rPeb23+Tn64vv4pp12NoA0j42u+378srEvZbrtaSZloGV8vMmSPQyA/FySOhlrzPjSuDiV90YGQwrx9ZpXhTZnyDxG7zZRS2WPXuZd9T28VyFYQ/c9isXuIznDnb7iHRx5TXNwT12H2nE/AaaXVu1uCVE+LZ11F286E8L8V/0ncvdJ0OPKfSfsHWT4cf6LjZiv4RXRj7UjqwNf/9k=",DA="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAAAAAAAAAAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAtAC0DAREAAhEBAxEB/8QAGgAAAwEBAQEAAAAAAAAAAAAAAAYJCAcFCv/EACgQAAEFAAIBBAICAwEAAAAAAAMBAgQFBgcIAAkREhQTIRUxFyNRM//EABoBAAIDAQEAAAAAAAAAAAAAAAAHBAUIBgn/xAAoEQACAwABBAEFAAIDAAAAAAACAwEEBQYABxESEwgUFSExFkEXMjP/2gAMAwEAAhEDEQA/APv48Ojo8OjoVURFVV9kT9qq/wBIn/V8P7/OjrHPIvf3qVxdfmy+p5drCXkQ7o8+Hm6bSa0dcViohWTp2ap7SuAYLl+JYv23TBvR7HR/kx6Nd3Gfpy7y8tzl62Twu0Ge9cNrP1L2XjFaAvMgVevq3alpiziPIO+GEFEwUN8FEyv9bujwXFtFSvbyZsrKQaupXuX4UQ/ohY2nXeoSGf0QfJLImJiR8xPjmvN3qU9feNMLnNTgb6u5jvNdNCGiyuYsCRJw4QzBbZTr5smC+bnnxxlQMOvtK4FlPnvbHDFQQJ0iJ1PAvpZ7kcq5Dp5HI86zwihjIM9DX1qwOrk8gZNWvnSmwNfThpBJutVLTKtasMtN0myut1RyTu/xXHzal3LtJ5BZvMEa1Gm2QbC4IflZZ91yypIwXqtblC1rZgBD1Fhr3hk9A3WZfO6dlZa0rNDSVl02ovIjoNzWNs4YZiQbSG9VdFnxUN+GUByqozMe33/XmetnNnG19PJK3TvFmX7dErue6LFG1NV5omxUeMRDa7ZD3UyI8EBRPTMo2ovUql0UvrxbrpsQiyuVWEw5Yn8Tlz+waHt6mM/womOmDyt6l9Hh0dSM9UfsLytxvS5PirHxJeKx3KIS1+r5iIOWWJEimk/TnZiCWsHJm1xmQHOsborI5LGZVGbGpxPVJqrs/wCkjttw/lF7Z5ftuTvbfEjCxj8JEkC5zQV89fWsBbNSLKysxFWiBMGqi2EtvMGJRHSH708r3MivQxKAMzc/aElXuQTDCWsCL4201SiDaooVPzWCgJcxM+lcSmGdd+67dGeqOO4xzyx8Tx7zXIv6eFZTuSNZn6XYJpnzAIdbKjbbstodHXG/Kqw49S4RWBQf3JUuUx0hy57m9/8AvDt8s0obu8k4GvNvPq1+L42lexJyhQyV/a6E0ypv0LQekQ9tyDAj9vhSlJQuOp4n214Pn41WQzsnkZWq63M171Svfi5LB9vmrQ+LC6yS8z8YokSgfHyGxkSc4C5w6/cY9Re8/VXaY7K1Ujj/AJb2v8S7E2Q32cHL6ANxn6CbdUo5qyXiFWu2lLoKQBFM6FZ10hkRwGNifX0ZwDuRyvvP9P8A3ewtzXuL5Jw3Bm5G9VIaljWzWUtLSr0bxI+ITO1GFfzb7BhcPqWlk6GFLvlV3JOK43A+5XCNGhRQeVu6Mo/HNGXLpWhsVKrLFeGScwKZ0a9qsMyUrco4CRiFwF8vPOrrUHQqoiKqr7In7VV/pE/6vh/f50dSJ7EeqXScacrRMfxXkwco5DFy2P5f1MA5yxo8cslta+ty0+Kq17JECYcDC3Vi81XMsXjqIzUVyzV2j20+ke/yrh7tvl2wziW3uImOF5FhaxaxgJK2NrXruiLJLsoWwgo1YC2msJ3WzPgUShuWd662PuLz8SiO1Qzmed+6oikACThMppNDyqCUwhgrDplBtka4eJmWdNvXzTcgd+6rlvR8vZ/Mxeq+rjlyXH+CJHjStYC6p5hGl1g9BFMsmrt4TDObIIVpBun/AE0qY8aJDlnt6buTlcb+nO5wzL4Vparu72OwNnkfIxa1WOyjeQEjjHmtD4bdKwQRKwGROK/zfeNa56VUp/Fbmr3RRu3N6rTXwm+BUMrLIAO8Niuwom9FoCkk2FwUwczEx8sL+AVgsyfnjJ7bk/0v+Smcb8mFvN91M2lqYmM14RrNm46SX5vMwMdqf6JkdfZb/NseIE4Q33lCxZL5cWUy9jB4n9WXFS5PxUM/jnePCpgO5isKEI21B6iuWNn/ANK7f3GbqEJsrGQ5+iUKhLlcnR0dnsxsRkbBWdTgui+Zz74x8rM8yiZKBCP+rA/X3VSJEGjE2qo+8mB+7xKm59QftVk+xFxm52X668CWhScbx7RWtPodFXWQLKCdGNc5hrI9nEqri/dFU9fXAqa6kWXJMn5S13Mv8f8Apt7QbHbSlqI1u5vcSoI8oZU8yvNzLVU6thftIwS6i6jrdLNh0BZssu2tCFJX4AZWFGl3V5vQ5ZYqNpcT4u8iyAf49rdtLhaovETME4nLRYtEv2Uoa6a3yMKPYrZ+YN60Z1jjv9yHoOL+pPL2oyxjRLwlZS5yJYAc9hK0Wt0tNmZ88ZWKjwnBXWktIZmqijnPjO9/147/AKcuNZvLO8vC8nXBbs8bV7UdWbEEFo8bKvatauQFEixbLVRMvXMeDri6Ol/3R1reLwXevUiILMpr1FtCZiUjfuV6bWwUeJEhS9nxlE+YZIT0m9H+uPFmV6m4uEfOU2iJzbx9ntbyTMs4QJj9KutpxXIqawcZCq+Dn49p/GQ4yOawEkEiexgpskxFvO/ndDl2v3j3Hr1L2YPAuSaWNxZFR7EDlfhrp0TvVoD0gbGk2p909sxJMUxdcpNCgHqv7b8RxKPBs5ZVK9ueR5VS9rm5Ysm599XiwNdvt5mVVQf8Kw8xAmJtiBaZT1ObsTx9z96b9jsNZ1z0k7/AvKv2q88WdFS3TjjQz2/GH/6vVsWwA1SBzOjcP2MBjay2HLmR45pOnO2fJO3H1QVsTI7nZdf/AJE4h8VkGodNOeT5lcvZ8z6DEuqsn1PVyoPytpTapGlDWrUpOWZXKe0LdC9xK43/ABfb91EDQh/4i22PC/PtPgGjESNO3MeDCIS+GMACOivVrgjijbdRaTKaXUTef8pyc6XtNJdaibZymF01rJ/LbDpByzpZZo9PbBkhe6McFklu2xnnOsmcf3zL3c7h8wwu9F/YyslHbnY4nCcLLo5Neoohyqa/SmV8kr+11VXqbFGMNWyrNKa1da/iQvw2eFcZw9Hgdajcus5TR2ffRt2LrHHE3Hl7PiuLC+amdd4kMyJC6Hw1pF7sLrbuUymcw2cp8jkaaBn83QQQ11RT1gGRoUKIFPZoxDYn7e9yuKcxFeaQchJByEMUhHITY2NTkGpd2tq9Z0tTRsHZu3rbCa+w5k/sjIv5EREAsBgQWsRWsRARGGPRo082pXoUK6qlOqsVV66QgFrWP8gRj/cz5IinyRlJGUyRTMsHlb1L6nd6lXNuE416+32B1Ocna675jr52ZytEARxQhz4ZYEtt9OsmBKOO7PTn11pXwgo+dY2IIoAsCD7E2Lpj6WeBch5T3JzuR5GnXxqHCLNfV19BhLN5V3hYTOdXqkYEyNKvFqpZecjXq1WNYyWM+Ku5T94OR5mPxW1l3ajb9nfUynRrCJQuGrJTIssbAzAzUZ8T1rHy1rRARiB92LxB1+5y7zdR+MMrjtt1V2vLWAPVhn4l9U64BoczAs1fOFS3Muhz+1fXCCshXR6W+pa2yr1I6E06ME2JHfncjt/2A7zcs19vB7vYPDeRrtnW3htxSZm6tmp4rnfoo0dLCGyZwvw29nX7VWz6w+VyRy5q34tyXuVwTFpZ+jwjS3cski3OlM2Bt0lO8sivYOtU0ZUI+3kK9mulqpmVwURELDoC8SdqfUG3GauOxGTs+AuuuYmraxuNnnsYGj0R0RyDSTBsAxLI1oURPqPv7iqpgV0AstaSsSRJMhecjmfaH6beP6lLtpsVe4vc3WR9o3lArq2czMXMxJSuxWN1RdQDH5hzaVu8yzZFP5C1KlB62v4Hm/dTSqWOWUXcX4lSZ84ZEm1Vu2XiYiCU2FuJxDPxlasIripRM+2TBsL2shlMpnMNnKbI5Gng0Gbz8AFZT1FcFAxIMKMxGDENqe7nvX9kMcriHkGeQ8ghTEIR2INjY1OQal7a2rtjR1NKyy3eu2TljrD2l7EZT+oiI/QgsIFawgVrEQERjQFGjUzadehQrrq06igTXrqH1WtYR4EYj+zP+yIpkjKZI5IpmZYPK3qX0eHR0v6DJ5fWMrB6fO0uhZS2sS8qGXVZDs21lzAcr4VpBSYEyRZ8VyqoJQfgYaqvxenv5ZZuzr402yydO/mFepuz7pUbb6s2qNiPV9SxKDCW12xEQxR+wFH9jqJao0r0Ji7Ur24rvXZRFhK3fDYVPlble4l6NCf2Jj4KP9T0weVvUvo8Ojo8Ojo8Ojo8Ojr/2Q==",UA=""+new URL("community.f4aea720.jpg",import.meta.url).href,LA=""+new URL("wx.6a078824.jpg",import.meta.url).href,WA={},L=a=>(Re("data-v-96f7931e"),a=a(),je(),a),qA={class:"w-full"},TA=L(()=>c("div",{class:"h-full index-carousel"},null,-1)),XA={class:"word main-container pb-[200px] pt-[60px]"},GA=L(()=>c("div",{class:"word-title"},[c("p",{class:"text-[40px] text-[#666] font-bold text-center mb-[20px]"},"Niucloud\u6587\u6863\u7BA1\u7406"),c("p",{class:"text-[16px] text-[#666] text-center"},"\u65E0\u8BBA\u662F\u5FEB\u901F\u4E0A\u624B\uFF0C\u8FD8\u662F\u6DF1\u5165\u4E86\u89E3NIUCLOUD\uFF0C\u8FD9\u91CC\u90FD\u662F\u6700\u597D\u7684\u5730\u70B9")],-1)),HA={class:"flex justify-between mt-[100px]"},JA={class:"w-[280px]"},PA=K('

          \u5B98\u65B9\u6559\u7A0B

          \u8BE6\u5C3D\u7EC6\u81F4\u7684\u9010\u6B65\u5B98\u65B9\u6559\u7A0B\uFF0C\u5E2E\u52A9\u60A8\u7CFB\u7EDF\u5168\u9762\u7684\u63A5\u89E6NIUCLOUD\uFF0C\u5EFA\u8BAE\u5728\u4F7F\u7528\u524D\u9605\u8BFB\u3002

          ',2),OA=L(()=>c("div",{class:"flex justify-between items-center w-[280px] h-[40px] leading-[40px] rounded-[5px] border-[1px] border-[solid] border-[#508BFE]"},[c("span",{class:"block ml-[20px] text-[14px] text-[#333]"},"\u524D\u5F80\u6559\u7A0B"),c("span",{class:"block mr-[20px] text-[24px] text-[#333]"},"\u2192")],-1)),YA={class:"w-[280px]"},KA=K('

          API\u6587\u6863

          \u60A8\u53EF\u4EE5\u901A\u8FC7API\u6587\u6863\u4E86\u89E3niucloud\u7684\u6B63\u786E\u4F7F\u7528\u65B9\u6CD5\uFF0C\u4E5F\u53EF\u4EE5\u66F4\u52A0\u6DF1\u5165\u5730\u7406\u89E3niucloud\u7684\u8FD0\u884C\u903B\u8F91\u3002

          ',2),zA=L(()=>c("div",{class:"flex justify-between items-center w-[280px] h-[40px] leading-[40px] rounded-[5px] border-[1px] border-[solid] border-[#508BFE]"},[c("span",{class:"block ml-[20px] text-[14px] text-[#333]"},"\u524D\u5F80API\u6587\u6863"),c("span",{class:"block mr-[20px] text-[24px] text-[#333]"},"\u2192")],-1)),_A={class:"w-[280px]"},$A=K('

          \u95EE\u7B54\u793E\u533A

          \u4FBF\u6377\u5730\u6D4F\u89C8\u5176\u5B83\u7528\u6237\u5173\u4E8Eniucloud\u7684\u95EE\u9898\uFF0C\u5E76\u4ECE\u89E3\u7B54\u4E2D\u83B7\u53D6niucloud\u7684\u4F7F\u7528\u65B9\u6CD5\uFF0C\u5F53\u7136\u60A8\u53EF\u4EE5\u8FDB\u884C\u63D0\u95EE\u3002

          ',2),Ae=L(()=>c("div",{class:"flex justify-between items-center w-[280px] h-[40px] leading-[40px] rounded-[5px] border-[1px] border-[solid] border-[#508BFE]"},[c("span",{class:"block ml-[20px] text-[14px] text-[#333]"},"\u524D\u5F80\u95EE\u7B54\u793E\u533A"),c("span",{class:"block mr-[20px] text-[24px] text-[#333]"},"\u2192")],-1)),ee=K('

          \u5173\u6CE8\u516C\u4F17\u53F7

          \u60A8\u53EF\u4EE5\u626B\u63CF\u9875\u9762\u5E95\u90E8\u7684\u4E8C\u7EF4\u7801\u6765\u5173\u6CE8\u6211\u4EEC\u7684\u5B98\u65B9\u516C\u4F17\u53F7\uFF0C\u83B7\u5F97\u4E00\u624B\u54A8\u8BE2\u53CA\u4F7F\u7528\u6280\u5DE7\u3002

          ',1);function te(a,f){const r=NA,e=kA,u=Se;return C(),g("div",qA,[S(e,{height:"500px",arrow:"never"},{default:Z(()=>[S(r,null,{default:Z(()=>[TA]),_:1})]),_:1}),c("div",XA,[GA,c("div",HA,[c("div",JA,[PA,S(u,{to:"https://www.kancloud.cn/cui18734824089/niucloud-admin-develop/3148343",target:"_blank"},{default:Z(()=>[OA]),_:1})]),c("div",YA,[KA,S(u,{to:"https://www.niucloud.com/apidoc.html",target:"_blank"},{default:Z(()=>[zA]),_:1})]),c("div",_A,[$A,S(u,null,{default:Z(()=>[Ae]),_:1})]),ee])])])}mA=Ne(WA,[["render",te],["__scopeId","data-v-96f7931e"]])});export{De as __tla,mA as default}; diff --git a/niucloud/public/web/_nuxt/index.ad2eb3b5.js b/niucloud/public/web/_nuxt/index.ad2eb3b5.js new file mode 100644 index 0000000..b9ef385 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.ad2eb3b5.js @@ -0,0 +1 @@ +const t="Home",e={title:t};export{e as default,t as title}; diff --git a/niucloud/public/web/_nuxt/index.f6314314.js b/niucloud/public/web/_nuxt/index.f6314314.js new file mode 100644 index 0000000..224f2c6 --- /dev/null +++ b/niucloud/public/web/_nuxt/index.f6314314.js @@ -0,0 +1 @@ +import{L as K,u as k,M as X,ag as vt,O as Z,ax as yt,x as C,D as Zt,f as Yt,P as te,r as ee,ap as wt,Q as ne,__tla as re}from"./entry.60adbc61.js";let xt,Y,Mt,kt,Et,St,tt,At,Rt,ae=Promise.all([(()=>{try{return re}catch{}})()]).then(async()=>{tt=function(t){return t==null};class Ft extends Error{constructor(e){super(e),this.name="ElementPlusError"}}At=function(t,e){throw new Ft(`[${t}] ${e}`)},Et=function(t,e){},Rt=({from:t,replacement:e,scope:n,version:r,ref:a,type:o="API"},s)=>{K(()=>k(s),c=>{},{immediate:!0})};let x=[],O,et,E,S,nt,W,rt,j,$,A,M,R;O=t=>{const e=t;e.key===yt.esc&&x.forEach(n=>n(e))},et=t=>{X(()=>{x.length===0&&document.addEventListener("keydown",O),vt&&x.push(t)}),Z(()=>{x=x.filter(e=>e!==t),x.length===0&&vt&&document.removeEventListener("keydown",O)})},St=Symbol("formContextKey"),kt=Symbol("formItemContextKey"),E="focus-trap.focus-after-trapped",S="focus-trap.focus-after-released",nt="focus-trap.focusout-prevented",W={cancelable:!0,bubbles:!1},rt={cancelable:!0,bubbles:!1},j="focusAfterTrapped",$="focusAfterReleased",Y=Symbol("elFocusTrap"),A=C(),M=C(0),R=C(0);let F=0;const at=t=>{const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const a=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||a?NodeFilter.FILTER_SKIP:r.tabIndex>=0||r===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)e.push(n.currentNode);return e},ot=(t,e)=>{for(const n of t)if(!Ht(n,e))return n},Ht=(t,e)=>{if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(e&&t===e)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1},Lt=t=>{const e=at(t),n=ot(e,t),r=ot(e.reverse(),t);return[n,r]},Tt=t=>t instanceof HTMLInputElement&&"select"in t,m=(t,e)=>{if(t&&t.focus){const n=document.activeElement;t.focus({preventScroll:!0}),R.value=window.performance.now(),t!==n&&Tt(t)&&e&&t.select()}};function st(t,e){const n=[...t],r=t.indexOf(e);return r!==-1&&n.splice(r,1),n}const Nt=()=>{let t=[];return{push:e=>{const n=t[0];n&&e!==n&&n.pause(),t=st(t,e),t.unshift(e)},remove:e=>{var n,r;t=st(t,e),(r=(n=t[0])==null?void 0:n.resume)==null||r.call(n)}}},Pt=(t,e=!1)=>{const n=document.activeElement;for(const r of t)if(m(r,e),document.activeElement!==n)return},it=Nt(),It=()=>M.value>R.value,H=()=>{A.value="pointer",M.value=window.performance.now()},ct=()=>{A.value="keyboard",M.value=window.performance.now()},_t=()=>(X(()=>{F===0&&(document.addEventListener("mousedown",H),document.addEventListener("touchstart",H),document.addEventListener("keydown",ct)),F++}),Z(()=>{F--,F<=0&&(document.removeEventListener("mousedown",H),document.removeEventListener("touchstart",H),document.removeEventListener("keydown",ct))}),{focusReason:A,lastUserFocusTimestamp:M,lastAutomatedFocusTimestamp:R}),L=t=>new CustomEvent(nt,{...rt,detail:t}),qt=Yt({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[j,$,"focusin","focusout","focusout-prevented","release-requested"],setup(t,{emit:e}){const n=C();let r,a;const{focusReason:o}=_t();et(i=>{t.trapped&&!s.paused&&e("release-requested",i)});const s={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},c=i=>{if(!t.loop&&!t.trapped||s.paused)return;const{key:u,altKey:l,ctrlKey:d,metaKey:_,currentTarget:Qt,shiftKey:bt}=i,{loop:mt}=t,Xt=u===yt.tab&&!l&&!d&&!_,q=document.activeElement;if(Xt&&q){const G=Qt,[J,Q]=Lt(G);if(J&&Q){if(!bt&&q===Q){const y=L({focusReason:o.value});e("focusout-prevented",y),y.defaultPrevented||(i.preventDefault(),mt&&m(J,!0))}else if(bt&&[J,G].includes(q)){const y=L({focusReason:o.value});e("focusout-prevented",y),y.defaultPrevented||(i.preventDefault(),mt&&m(Q,!0))}}else if(q===G){const y=L({focusReason:o.value});e("focusout-prevented",y),y.defaultPrevented||i.preventDefault()}}};te(Y,{focusTrapRef:n,onKeydown:c}),K(()=>t.focusTrapEl,i=>{i&&(n.value=i)},{immediate:!0}),K([n],([i],[u])=>{i&&(i.addEventListener("keydown",c),i.addEventListener("focusin",P),i.addEventListener("focusout",I)),u&&(u.removeEventListener("keydown",c),u.removeEventListener("focusin",P),u.removeEventListener("focusout",I))});const h=i=>{e(j,i)},V=i=>e($,i),P=i=>{const u=k(n);if(!u)return;const l=i.target,d=i.relatedTarget,_=l&&u.contains(l);t.trapped||d&&u.contains(d)||(r=d),_&&e("focusin",i),!s.paused&&t.trapped&&(_?a=l:m(a,!0))},I=i=>{const u=k(n);if(!(s.paused||!u))if(t.trapped){const l=i.relatedTarget;!tt(l)&&!u.contains(l)&&setTimeout(()=>{if(!s.paused&&t.trapped){const d=L({focusReason:o.value});e("focusout-prevented",d),d.defaultPrevented||m(a,!0)}},0)}else{const l=i.target;l&&u.contains(l)||e("focusout",i)}};async function pt(){await wt();const i=k(n);if(i){it.push(s);const u=i.contains(document.activeElement)?r:document.activeElement;if(r=u,!i.contains(u)){const l=new Event(E,W);i.addEventListener(E,h),i.dispatchEvent(l),l.defaultPrevented||wt(()=>{let d=t.focusStartEl;ne(d)||(m(d),document.activeElement!==d&&(d="first")),d==="first"&&Pt(at(i),!0),(document.activeElement===u||d==="container")&&m(i)})}}}function gt(){const i=k(n);if(i){i.removeEventListener(E,h);const u=new CustomEvent(S,{...W,detail:{focusReason:o.value}});i.addEventListener(S,V),i.dispatchEvent(u),!u.defaultPrevented&&(o.value=="keyboard"||!It()||i.contains(document.activeElement))&&m(r??document.body),i.removeEventListener(S,h),it.remove(s)}}return X(()=>{t.trapped&&pt(),K(()=>t.trapped,i=>{i?pt():gt()})}),Z(()=>{t.trapped&>()}),{onKeydown:c}}});function Kt(t,e,n,r,a,o){return ee(t.$slots,"default",{handleKeydown:t.onKeydown})}xt=Zt(qt,[["render",Kt],["__file","/home/runner/work/element-plus/element-plus/packages/components/focus-trap/src/focus-trap.vue"]]);function f(t,e){Ct(t)&&(t="100%");var n=Ot(t);return t=e===360?t:Math.min(e,Math.max(0,parseFloat(t))),n&&(t=parseInt(String(t*e),10)/100),Math.abs(t-e)<1e-6?1:(e===360?t=(t<0?t%e+e:t%e)/parseFloat(String(e)):t=t%e/parseFloat(String(e)),t)}function T(t){return Math.min(1,Math.max(0,t))}function Ct(t){return typeof t=="string"&&t.indexOf(".")!==-1&&parseFloat(t)===1}function Ot(t){return typeof t=="string"&&t.indexOf("%")!==-1}function ut(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function N(t){return t<=1?"".concat(Number(t)*100,"%"):t}function w(t){return t.length===1?"0"+t:String(t)}function Wt(t,e,n){return{r:f(t,255)*255,g:f(e,255)*255,b:f(n,255)*255}}function ft(t,e,n){t=f(t,255),e=f(e,255),n=f(n,255);var r=Math.max(t,e,n),a=Math.min(t,e,n),o=0,s=0,c=(r+a)/2;if(r===a)s=0,o=0;else{var h=r-a;switch(s=c>.5?h/(2-r-a):h/(r+a),r){case t:o=(e-n)/h+(e1&&(n-=1),n<1/6?t+(e-t)*(6*n):n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function jt(t,e,n){var r,a,o;if(t=f(t,360),e=f(e,100),n=f(n,100),e===0)a=n,o=n,r=n;else{var s=n<.5?n*(1+e):n+e-n*e,c=2*n-s;r=D(c,s,t+1/3),a=D(c,s,t),o=D(c,s,t-1/3)}return{r:r*255,g:a*255,b:o*255}}function ht(t,e,n){t=f(t,255),e=f(e,255),n=f(n,255);var r=Math.max(t,e,n),a=Math.min(t,e,n),o=0,s=r,c=r-a,h=r===0?0:c/r;if(r===a)o=0;else{switch(r){case t:o=(e-n)/c+(e>16,g:(t&65280)>>8,b:t&255}}var B={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function zt(t){var e={r:0,g:0,b:0},n=1,r=null,a=null,o=null,s=!1,c=!1;return typeof t=="string"&&(t=Jt(t)),typeof t=="object"&&(b(t.r)&&b(t.g)&&b(t.b)?(e=Wt(t.r,t.g,t.b),s=!0,c=String(t.r).substr(-1)==="%"?"prgb":"rgb"):b(t.h)&&b(t.s)&&b(t.v)?(r=N(t.s),a=N(t.v),e=$t(t.h,r,a),s=!0,c="hsv"):b(t.h)&&b(t.s)&&b(t.l)&&(r=N(t.s),o=N(t.l),e=jt(t.h,r,o),s=!0,c="hsl"),Object.prototype.hasOwnProperty.call(t,"a")&&(n=t.a)),n=ut(n),{ok:s,format:t.format||c,r:Math.min(255,Math.max(e.r,0)),g:Math.min(255,Math.max(e.g,0)),b:Math.min(255,Math.max(e.b,0)),a:n}}var Vt="[-\\+]?\\d+%?",Gt="[-\\+]?\\d*\\.\\d+%?",v="(?:".concat(Gt,")|(?:").concat(Vt,")"),U="[\\s|\\(]+(".concat(v,")[,|\\s]+(").concat(v,")[,|\\s]+(").concat(v,")\\s*\\)?"),z="[\\s|\\(]+(".concat(v,")[,|\\s]+(").concat(v,")[,|\\s]+(").concat(v,")[,|\\s]+(").concat(v,")\\s*\\)?"),g={CSS_UNIT:new RegExp(v),rgb:new RegExp("rgb"+U),rgba:new RegExp("rgba"+z),hsl:new RegExp("hsl"+U),hsla:new RegExp("hsla"+z),hsv:new RegExp("hsv"+U),hsva:new RegExp("hsva"+z),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function Jt(t){if(t=t.trim().toLowerCase(),t.length===0)return!1;var e=!1;if(B[t])t=B[t],e=!0;else if(t==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var n=g.rgb.exec(t);return n?{r:n[1],g:n[2],b:n[3]}:(n=g.rgba.exec(t),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=g.hsl.exec(t),n?{h:n[1],s:n[2],l:n[3]}:(n=g.hsla.exec(t),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=g.hsv.exec(t),n?{h:n[1],s:n[2],v:n[3]}:(n=g.hsva.exec(t),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=g.hex8.exec(t),n?{r:p(n[1]),g:p(n[2]),b:p(n[3]),a:lt(n[4]),format:e?"name":"hex8"}:(n=g.hex6.exec(t),n?{r:p(n[1]),g:p(n[2]),b:p(n[3]),format:e?"name":"hex"}:(n=g.hex4.exec(t),n?{r:p(n[1]+n[1]),g:p(n[2]+n[2]),b:p(n[3]+n[3]),a:lt(n[4]+n[4]),format:e?"name":"hex8"}:(n=g.hex3.exec(t),n?{r:p(n[1]+n[1]),g:p(n[2]+n[2]),b:p(n[3]+n[3]),format:e?"name":"hex"}:!1)))))))))}function b(t){return!!g.CSS_UNIT.exec(String(t))}Mt=function(){function t(e,n){e===void 0&&(e=""),n===void 0&&(n={});var r;if(e instanceof t)return e;typeof e=="number"&&(e=Ut(e)),this.originalInput=e;var a=zt(e);this.originalInput=e,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=(r=n.format)!==null&&r!==void 0?r:a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}return t.prototype.isDark=function(){return this.getBrightness()<128},t.prototype.isLight=function(){return!this.isDark()},t.prototype.getBrightness=function(){var e=this.toRgb();return(e.r*299+e.g*587+e.b*114)/1e3},t.prototype.getLuminance=function(){var e=this.toRgb(),n,r,a,o=e.r/255,s=e.g/255,c=e.b/255;return o<=.03928?n=o/12.92:n=Math.pow((o+.055)/1.055,2.4),s<=.03928?r=s/12.92:r=Math.pow((s+.055)/1.055,2.4),c<=.03928?a=c/12.92:a=Math.pow((c+.055)/1.055,2.4),.2126*n+.7152*r+.0722*a},t.prototype.getAlpha=function(){return this.a},t.prototype.setAlpha=function(e){return this.a=ut(e),this.roundA=Math.round(100*this.a)/100,this},t.prototype.isMonochrome=function(){var e=this.toHsl().s;return e===0},t.prototype.toHsv=function(){var e=ht(this.r,this.g,this.b);return{h:e.h*360,s:e.s,v:e.v,a:this.a}},t.prototype.toHsvString=function(){var e=ht(this.r,this.g,this.b),n=Math.round(e.h*360),r=Math.round(e.s*100),a=Math.round(e.v*100);return this.a===1?"hsv(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsva(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},t.prototype.toHsl=function(){var e=ft(this.r,this.g,this.b);return{h:e.h*360,s:e.s,l:e.l,a:this.a}},t.prototype.toHslString=function(){var e=ft(this.r,this.g,this.b),n=Math.round(e.h*360),r=Math.round(e.s*100),a=Math.round(e.l*100);return this.a===1?"hsl(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsla(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},t.prototype.toHex=function(e){return e===void 0&&(e=!1),dt(this.r,this.g,this.b,e)},t.prototype.toHexString=function(e){return e===void 0&&(e=!1),"#"+this.toHex(e)},t.prototype.toHex8=function(e){return e===void 0&&(e=!1),Dt(this.r,this.g,this.b,this.a,e)},t.prototype.toHex8String=function(e){return e===void 0&&(e=!1),"#"+this.toHex8(e)},t.prototype.toHexShortString=function(e){return e===void 0&&(e=!1),this.a===1?this.toHexString(e):this.toHex8String(e)},t.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},t.prototype.toRgbString=function(){var e=Math.round(this.r),n=Math.round(this.g),r=Math.round(this.b);return this.a===1?"rgb(".concat(e,", ").concat(n,", ").concat(r,")"):"rgba(".concat(e,", ").concat(n,", ").concat(r,", ").concat(this.roundA,")")},t.prototype.toPercentageRgb=function(){var e=function(n){return"".concat(Math.round(f(n,255)*100),"%")};return{r:e(this.r),g:e(this.g),b:e(this.b),a:this.a}},t.prototype.toPercentageRgbString=function(){var e=function(n){return Math.round(f(n,255)*100)};return this.a===1?"rgb(".concat(e(this.r),"%, ").concat(e(this.g),"%, ").concat(e(this.b),"%)"):"rgba(".concat(e(this.r),"%, ").concat(e(this.g),"%, ").concat(e(this.b),"%, ").concat(this.roundA,")")},t.prototype.toName=function(){if(this.a===0)return"transparent";if(this.a<1)return!1;for(var e="#"+dt(this.r,this.g,this.b,!1),n=0,r=Object.entries(B);n=0,o=!n&&a&&(e.startsWith("hex")||e==="name");return o?e==="name"&&this.a===0?this.toName():this.toRgbString():(e==="rgb"&&(r=this.toRgbString()),e==="prgb"&&(r=this.toPercentageRgbString()),(e==="hex"||e==="hex6")&&(r=this.toHexString()),e==="hex3"&&(r=this.toHexString(!0)),e==="hex4"&&(r=this.toHex8String(!0)),e==="hex8"&&(r=this.toHex8String()),e==="name"&&(r=this.toName()),e==="hsl"&&(r=this.toHslString()),e==="hsv"&&(r=this.toHsvString()),r||this.toHexString())},t.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},t.prototype.clone=function(){return new t(this.toString())},t.prototype.lighten=function(e){e===void 0&&(e=10);var n=this.toHsl();return n.l+=e/100,n.l=T(n.l),new t(n)},t.prototype.brighten=function(e){e===void 0&&(e=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(e/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(e/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(e/100)))),new t(n)},t.prototype.darken=function(e){e===void 0&&(e=10);var n=this.toHsl();return n.l-=e/100,n.l=T(n.l),new t(n)},t.prototype.tint=function(e){return e===void 0&&(e=10),this.mix("white",e)},t.prototype.shade=function(e){return e===void 0&&(e=10),this.mix("black",e)},t.prototype.desaturate=function(e){e===void 0&&(e=10);var n=this.toHsl();return n.s-=e/100,n.s=T(n.s),new t(n)},t.prototype.saturate=function(e){e===void 0&&(e=10);var n=this.toHsl();return n.s+=e/100,n.s=T(n.s),new t(n)},t.prototype.greyscale=function(){return this.desaturate(100)},t.prototype.spin=function(e){var n=this.toHsl(),r=(n.h+e)%360;return n.h=r<0?360+r:r,new t(n)},t.prototype.mix=function(e,n){n===void 0&&(n=50);var r=this.toRgb(),a=new t(e).toRgb(),o=n/100,s={r:(a.r-r.r)*o+r.r,g:(a.g-r.g)*o+r.g,b:(a.b-r.b)*o+r.b,a:(a.a-r.a)*o+r.a};return new t(s)},t.prototype.analogous=function(e,n){e===void 0&&(e=6),n===void 0&&(n=30);var r=this.toHsl(),a=360/n,o=[this];for(r.h=(r.h-(a*e>>1)+720)%360;--e;)r.h=(r.h+a)%360,o.push(new t(r));return o},t.prototype.complement=function(){var e=this.toHsl();return e.h=(e.h+180)%360,new t(e)},t.prototype.monochromatic=function(e){e===void 0&&(e=6);for(var n=this.toHsv(),r=n.h,a=n.s,o=n.v,s=[],c=1/e;e--;)s.push(new t({h:r,s:a,v:o})),o=(o+c)%1;return s},t.prototype.splitcomplement=function(){var e=this.toHsl(),n=e.h;return[this,new t({h:(n+72)%360,s:e.s,l:e.l}),new t({h:(n+216)%360,s:e.s,l:e.l})]},t.prototype.onBackground=function(e){var n=this.toRgb(),r=new t(e).toRgb(),a=n.a+r.a*(1-n.a);return new t({r:(n.r*n.a+r.r*r.a*(1-n.a))/a,g:(n.g*n.a+r.g*r.a*(1-n.a))/a,b:(n.b*n.a+r.b*r.a*(1-n.a))/a,a})},t.prototype.triad=function(){return this.polyad(3)},t.prototype.tetrad=function(){return this.polyad(4)},t.prototype.polyad=function(e){for(var n=this.toHsl(),r=n.h,a=[this],o=360/e,s=1;s{try{return en}catch{}})(),(()=>{try{return rn}catch{}})(),(()=>{try{return sn}catch{}})(),(()=>{try{return un}catch{}})(),(()=>{try{return fn}catch{}})(),(()=>{try{return xn}catch{}})(),(()=>{try{return In}catch{}})(),(()=>{try{return Tn}catch{}})(),(()=>{try{return Mn}catch{}})(),(()=>{try{return Rn}catch{}})(),(()=>{try{return Ln}catch{}})(),(()=>{try{return kn}catch{}})(),(()=>{try{return Un}catch{}})()]).then(async()=>{var H={},jt=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},_t={},P={};let at;const Ot=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];P.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17},P.getSymbolTotalCodewords=function(t){return Ot[t]},P.getBCHDigit=function(t){let n=0;for(;t!==0;)n++,t>>>=1;return n},P.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');at=t},P.isKanjiModeEnabled=function(){return typeof at<"u"},P.toSJIS=function(t){return at(t)};var Z={};(function(t){t.L={bit:1},t.M={bit:0},t.Q={bit:3},t.H={bit:2};function n(o){if(typeof o!="string")throw new Error("Param is not a string");switch(o.toLowerCase()){case"l":case"low":return t.L;case"m":case"medium":return t.M;case"q":case"quartile":return t.Q;case"h":case"high":return t.H;default:throw new Error("Unknown EC Level: "+o)}}t.isValid=function(o){return o&&typeof o.bit<"u"&&o.bit>=0&&o.bit<4},t.from=function(o,e){if(t.isValid(o))return o;try{return n(o)}catch{return e}}})(Z);function bt(){this.buffer=[],this.length=0}bt.prototype={get:function(t){const n=Math.floor(t/8);return(this.buffer[n]>>>7-t%8&1)===1},put:function(t,n){for(let o=0;o>>n-o-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){const n=Math.floor(this.length/8);this.buffer.length<=n&&this.buffer.push(0),t&&(this.buffer[n]|=128>>>this.length%8),this.length++}};var Qt=bt;function J(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}J.prototype.set=function(t,n,o,e){const r=t*this.size+n;this.data[r]=o,e&&(this.reservedBit[r]=!0)},J.prototype.get=function(t,n){return this.data[t*this.size+n]},J.prototype.xor=function(t,n,o){this.data[t*this.size+n]^=o},J.prototype.isReserved=function(t,n){return this.reservedBit[t*this.size+n]};var $t=J,At={};(function(t){const n=P.getSymbolSize;t.getRowColCoords=function(o){if(o===1)return[];const e=Math.floor(o/7)+2,r=n(o),a=r===145?26:Math.ceil((r-13)/(2*e-2))*2,i=[r-7];for(let s=1;s=0&&e<=7},t.from=function(e){return t.isValid(e)?parseInt(e,10):void 0},t.getPenaltyN1=function(e){const r=e.size;let a=0,i=0,s=0,l=null,c=null;for(let p=0;p=5&&(a+=n.N1+(i-5)),l=h,i=1),h=e.get(A,p),h===c?s++:(s>=5&&(a+=n.N1+(s-5)),c=h,s=1)}i>=5&&(a+=n.N1+(i-5)),s>=5&&(a+=n.N1+(s-5))}return a},t.getPenaltyN2=function(e){const r=e.size;let a=0;for(let i=0;i=10&&(i===1488||i===93)&&a++,s=s<<1&2047|e.get(c,l),c>=10&&(s===1488||s===93)&&a++}return a*n.N3},t.getPenaltyN4=function(e){let r=0;const a=e.data.length;for(let i=0;i=0;){const a=r[0];for(let s=0;s0){const r=new Uint8Array(this.degree);return r.set(o,e),r}return o};var Wt=it,Pt={},S={},st={};st.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var M={};const Tt="[0-9]+",Xt="[A-Z $%*+\\-./:]+";let Y="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Y=Y.replace(/u/g,"\\u");const Gt="(?:(?![A-Z0-9 $%*+\\-./:]|"+Y+`)(?:.|[\r +]))+`;M.KANJI=new RegExp(Y,"g"),M.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),M.BYTE=new RegExp(Gt,"g"),M.NUMERIC=new RegExp(Tt,"g"),M.ALPHANUMERIC=new RegExp(Xt,"g");const te=new RegExp("^"+Y+"$"),ee=new RegExp("^"+Tt+"$"),ne=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");M.testKanji=function(t){return te.test(t)},M.testNumeric=function(t){return ee.test(t)},M.testAlphanumeric=function(t){return ne.test(t)},function(t){const n=st,o=M;t.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},t.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},t.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},t.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},t.MIXED={bit:-1},t.getCharCountIndicator=function(r,a){if(!r.ccBits)throw new Error("Invalid mode: "+r);if(!n.isValid(a))throw new Error("Invalid version: "+a);return a>=1&&a<10?r.ccBits[0]:a<27?r.ccBits[1]:r.ccBits[2]},t.getBestModeForData=function(r){return o.testNumeric(r)?t.NUMERIC:o.testAlphanumeric(r)?t.ALPHANUMERIC:o.testKanji(r)?t.KANJI:t.BYTE},t.toString=function(r){if(r&&r.id)return r.id;throw new Error("Invalid mode")},t.isValid=function(r){return r&&r.bit&&r.ccBits};function e(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"numeric":return t.NUMERIC;case"alphanumeric":return t.ALPHANUMERIC;case"kanji":return t.KANJI;case"byte":return t.BYTE;default:throw new Error("Unknown mode: "+r)}}t.from=function(r,a){if(t.isValid(r))return r;try{return e(r)}catch{return a}}}(S),function(t){const n=P,o=W,e=Z,r=S,a=st,i=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,s=n.getBCHDigit(i);function l(h,v,y){for(let u=1;u<=40;u++)if(v<=t.getCapacity(u,y,h))return u}function c(h,v){return r.getCharCountIndicator(h,v)+4}function p(h,v){let y=0;return h.forEach(function(u){const w=c(u.mode,v);y+=w+u.getBitsLength()}),y}function A(h,v){for(let y=1;y<=40;y++)if(p(h,y)<=t.getCapacity(y,v,r.MIXED))return y}t.from=function(h,v){return a.isValid(h)?parseInt(h,10):v},t.getCapacity=function(h,v,y){if(!a.isValid(h))throw new Error("Invalid QR Code version");typeof y>"u"&&(y=r.BYTE);const u=n.getSymbolTotalCodewords(h),w=o.getTotalCodewordsCount(h,v),f=(u-w)*8;if(y===r.MIXED)return f;const d=f-c(y,h);switch(y){case r.NUMERIC:return Math.floor(d/10*3);case r.ALPHANUMERIC:return Math.floor(d/11*2);case r.KANJI:return Math.floor(d/13);case r.BYTE:default:return Math.floor(d/8)}},t.getBestVersionForData=function(h,v){let y;const u=e.from(v,e.M);if(Array.isArray(h)){if(h.length>1)return A(h,u);if(h.length===0)return 1;y=h[0]}else y=h;return l(y.mode,y.getLength(),u)},t.getEncodedBits=function(h){if(!a.isValid(h)||h<7)throw new Error("Invalid QR Code version");let v=h<<12;for(;n.getBCHDigit(v)-s>=0;)v^=i<=0;)e^=Rt<0&&(o=this.data.substr(n),e=parseInt(o,10),t.put(e,r*3+1))};var ae=D;const ie=S,ut=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function V(t){this.mode=ie.ALPHANUMERIC,this.data=t}V.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)},V.prototype.getLength=function(){return this.data.length},V.prototype.getBitsLength=function(){return V.getBitsLength(this.data.length)},V.prototype.write=function(t){let n;for(n=0;n+2<=this.data.length;n+=2){let o=ut.indexOf(this.data[n])*45;o+=ut.indexOf(this.data[n+1]),t.put(o,11)}this.data.length%2&&t.put(ut.indexOf(this.data[n]),6)};var se=V,le=function(t){for(var n=[],o=t.length,e=0;e=55296&&r<=56319&&o>e+1){var a=t.charCodeAt(e+1);a>=56320&&a<=57343&&(r=(r-55296)*1024+a-56320+65536,e+=1)}if(r<128){n.push(r);continue}if(r<2048){n.push(r>>6|192),n.push(r&63|128);continue}if(r<55296||r>=57344&&r<65536){n.push(r>>12|224),n.push(r>>6&63|128),n.push(r&63|128);continue}if(r>=65536&&r<=1114111){n.push(r>>18|240),n.push(r>>12&63|128),n.push(r>>6&63|128),n.push(r&63|128);continue}n.push(239,191,189)}return new Uint8Array(n).buffer};const ue=le,ce=S;function F(t){this.mode=ce.BYTE,typeof t=="string"&&(t=ue(t)),this.data=new Uint8Array(t)}F.getBitsLength=function(t){return t*8},F.prototype.getLength=function(){return this.data.length},F.prototype.getBitsLength=function(){return F.getBitsLength(this.data.length)},F.prototype.write=function(t){for(let n=0,o=this.data.length;n=33088&&o<=40956)o-=33088;else if(o>=57408&&o<=60351)o-=49472;else throw new Error("Invalid SJIS character: "+this.data[n]+` +Make sure your charset is UTF-8`);o=(o>>>8&255)*192+(o&255),t.put(o,13)}};var ge=z,ct={},pe={get exports(){return ct},set exports(t){ct=t}};(function(t){var n={single_source_shortest_paths:function(o,e,r){var a={},i={};i[e]=0;var s=n.PriorityQueue.make();s.push(e,0);for(var l,c,p,A,h,v,y,u,w;!s.empty();){l=s.pop(),c=l.value,A=l.cost,h=o[c]||{};for(p in h)h.hasOwnProperty(p)&&(v=h[p],y=A+v,u=i[p],w=typeof i[p]>"u",(w||u>y)&&(i[p]=y,s.push(p,y),a[p]=c))}if(typeof r<"u"&&typeof i[r]>"u"){var f=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(f)}return a},extract_shortest_path_from_predecessor_list:function(o,e){for(var r=[],a=e;a;)r.push(a),o[a],a=o[a];return r.reverse(),r},find_path:function(o,e,r){var a=n.single_source_shortest_paths(o,e,r);return n.extract_shortest_path_from_predecessor_list(a,r)},PriorityQueue:{make:function(o){var e=n.PriorityQueue,r={},a;o=o||{};for(a in e)e.hasOwnProperty(a)&&(r[a]=e[a]);return r.queue=[],r.sorter=o.sorter||e.default_sorter,r},default_sorter:function(o,e){return o.cost-e.cost},push:function(o,e){var r={value:o,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};t.exports=n})(pe),function(t){const n=S,o=ae,e=se,r=fe,a=ge,i=M,s=P,l=ct;function c(f){return unescape(encodeURIComponent(f)).length}function p(f,d,g){const m=[];let _;for(;(_=f.exec(g))!==null;)m.push({data:_[0],index:_.index,mode:d,length:_[0].length});return m}function A(f){const d=p(i.NUMERIC,n.NUMERIC,f),g=p(i.ALPHANUMERIC,n.ALPHANUMERIC,f);let m,_;return s.isKanjiModeEnabled()?(m=p(i.BYTE,n.BYTE,f),_=p(i.KANJI,n.KANJI,f)):(m=p(i.BYTE_KANJI,n.BYTE,f),_=[]),d.concat(g,m,_).sort(function(E,x){return E.index-x.index}).map(function(E){return{data:E.data,mode:E.mode,length:E.length}})}function h(f,d){switch(d){case n.NUMERIC:return o.getBitsLength(f);case n.ALPHANUMERIC:return e.getBitsLength(f);case n.KANJI:return a.getBitsLength(f);case n.BYTE:return r.getBitsLength(f)}}function v(f){return f.reduce(function(d,g){const m=d.length-1>=0?d[d.length-1]:null;return m&&m.mode===g.mode?(d[d.length-1].data+=g.data,d):(d.push(g),d)},[])}function y(f){const d=[];for(let g=0;g=0&&s<=6&&(l===0||l===6)||l>=0&&l<=6&&(s===0||s===6)||s>=2&&s<=4&&l>=2&&l<=4?t.set(a+s,i+l,!0,!0):t.set(a+s,i+l,!1,!0))}}function Ce(t){const n=t.size;for(let o=8;o>s&1)===1,t.set(r,a,i,!0),t.set(a,r,i,!0)}function pt(t,n,o){const e=t.size,r=_e.getEncodedBits(n,o);let a,i;for(a=0;a<15;a++)i=(r>>a&1)===1,a<6?t.set(a,8,i,!0):a<8?t.set(a+1,8,i,!0):t.set(e-15+a,8,i,!0),a<8?t.set(8,e-a-1,i,!0):a<9?t.set(8,15-a-1+1,i,!0):t.set(8,15-a-1,i,!0);t.set(e-8,8,1,!0)}function xe(t,n){const o=t.size;let e=-1,r=o-1,a=7,i=0;for(let s=o-1;s>0;s-=2)for(s===6&&s--;;){for(let l=0;l<2;l++)if(!t.isReserved(r,s-l)){let c=!1;i>>a&1)===1),t.set(r,s-l,c),a--,a===-1&&(i++,a=7)}if(r+=e,r<0||o<=r){r-=e,e=-e;break}}}function Ie(t,n,o){const e=new me;o.forEach(function(l){e.put(l.mode.bit,4),e.put(l.getLength(),be.getCharCountIndicator(l.mode,t)),l.write(e)});const r=nt.getSymbolTotalCodewords(t),a=dt.getTotalCodewordsCount(t,n),i=(r-a)*8;for(e.getLengthInBits()+4<=i&&e.put(0,4);e.getLengthInBits()%8!==0;)e.putBit(0);const s=(i-e.getLengthInBits())/8;for(let l=0;l=7&&Ne(l,n),xe(l,i),isNaN(e)&&(e=ht.getBestMask(l,pt.bind(null,l,o))),ht.applyMask(e,l),pt(l,o,e),{modules:l,version:n,errorCorrectionLevel:o,maskPattern:e,segments:r}}_t.create=function(t,n){if(typeof t>"u"||t==="")throw new Error("No input text");let o=ft.M,e,r;return typeof n<"u"&&(o=ft.from(n.errorCorrectionLevel,ft.M),e=rt.from(n.version),r=ht.from(n.maskPattern),n.toSJISFunc&&nt.setToSJISFunction(n.toSJISFunc)),Te(t,e,o,r)};var Ut={},mt={};(function(t){function n(o){if(typeof o=="number"&&(o=o.toString()),typeof o!="string")throw new Error("Color should be defined as hex string");let e=o.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+o);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(a){return[a,a]}))),e.length===6&&e.push("F","F");const r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}t.getOptions=function(o){o||(o={}),o.color||(o.color={});const e=typeof o.margin>"u"||o.margin===null||o.margin<0?4:o.margin,r=o.width&&o.width>=21?o.width:void 0,a=o.scale||4;return{width:r,scale:r?4:a,margin:e,color:{dark:n(o.color.dark||"#000000ff"),light:n(o.color.light||"#ffffffff")},type:o.type,rendererOpts:o.rendererOpts||{}}},t.getScale=function(o,e){return e.width&&e.width>=o+e.margin*2?e.width/(o+e.margin*2):e.scale},t.getImageWidth=function(o,e){const r=t.getScale(o,e);return Math.floor((o+e.margin*2)*r)},t.qrToImageData=function(o,e,r){const a=e.modules.size,i=e.modules.data,s=t.getScale(a,r),l=Math.floor((a+r.margin*2)*s),c=r.margin*s,p=[r.color.light,r.color.dark];for(let A=0;A=c&&h>=c&&A"u"&&(!a||!a.getContext)&&(s=a,a=void 0),a||(l=e()),s=n.getOptions(s);const c=n.getImageWidth(r.modules.size,s),p=l.getContext("2d"),A=p.createImageData(c,c);return n.qrToImageData(A.data,r,s),o(p,l,c),p.putImageData(A,0,0),l},t.renderToDataURL=function(r,a,i){let s=i;typeof s>"u"&&(!a||!a.getContext)&&(s=a,a=void 0),s||(s={});const l=t.render(r,a,s),c=s.type||"image/png",p=s.rendererOpts||{};return l.toDataURL(c,p.quality)}}(Ut);var St={};const Me=mt;function Dt(t,n){const o=t.a/255,e=n+'="'+t.hex+'"';return o<1?e+" "+n+'-opacity="'+o.toFixed(2).slice(1)+'"':e}function yt(t,n,o){let e=t+n;return typeof o<"u"&&(e+=" "+o),e}function Re(t,n,o){let e="",r=0,a=!1,i=0;for(let s=0;s0&&l>0&&t[s-1]||(e+=a?yt("M",l+o,.5+c+o):yt("m",r,0),r=0,a=!1),l+1':"",l="',c='viewBox="0 0 '+i+" "+i+'"',p=''+s+l+` +`;return typeof o=="function"&&o(null,p),p};const Le=jt,wt=_t,Vt=Ut,ke=St;function vt(t,n,o,e,r){const a=[].slice.call(arguments,1),i=a.length,s=typeof a[i-1]=="function";if(!s&&!Le())throw new Error("Callback required as last argument");if(s){if(i<2)throw new Error("Too few arguments provided");i===2?(r=o,o=n,n=e=void 0):i===3&&(n.getContext&&typeof r>"u"?(r=e,e=void 0):(r=e,e=o,o=n,n=void 0))}else{if(i<1)throw new Error("Too few arguments provided");return i===1?(o=n,n=e=void 0):i===2&&!n.getContext&&(e=o,o=n,n=void 0),new Promise(function(l,c){try{const p=wt.create(o,e);l(t(p,n,e))}catch(p){c(p)}})}try{const l=wt.create(o,e);r(null,t(l,n,e))}catch(l){r(l)}}H.create=wt.create,H.toCanvas=vt.bind(null,Vt.render),H.toDataURL=vt.bind(null,Vt.renderToDataURL),H.toString=vt.bind(null,function(t,n,o){return ke.render(t,o)});const Ft=t=>(bn("data-v-5c62296d"),t=t(),An(),t),Ue={class:"w-full h-full bg-page flex items-center justify-center"},Se={class:"flex bg-white"},De={class:"flex flex-col items-center w-[330px] py-[100px] border-r"},Ve=Ft(()=>I("div",{class:"title font-bold text-xl"},"\u6253\u5F00\u624B\u673A\u5FAE\u4FE1",-1)),Fe=Ft(()=>I("div",{class:"tips text-sm mt-[5px]"},"\u70B9\u51FB\u53F3\u4E0A\u89D2\u6253\u5F00\u626B\u4E00\u626B",-1)),ze={class:"qrcode p-[10px] mt-[30px] border h-[120px] leading-none box-content"},He={class:"relative"},Je={key:0,class:"flex flex-col justify-center items-center absolute inset-0 bg-gray-50"},Ke={class:"text-xs text-gray-600"},Ye={class:"bg-white w-[380px] p-[30px]"},qe={class:"flex items-end my-[30px]"},je=["onClick"],Oe={class:"flex justify-between leading-none"},Qe={key:0,class:"text-xs py-[50rpx] flex justify-center w-full"},$e={class:"text-primary"},Ze={class:"text-primary"},We=hn({__name:"login",setup(t){const n=u=>{Cn({key:u}).then(w=>{let f=w.data;switch(f.status){case"wait":setTimeout(()=>{n(o.value.key)},1e3);break;case"success":f.login_data.token?(r.setToken(f.login_data.token),Yt().handleLoginBack()):(Bn("openId").value=f.login_data.openid,Nn("/auth/bind"));break;case"fail":o.value.pastDueContent=f.fail_reason,o.value.pastDue=!0;break}}).catch(w=>{o.value.pastDue=!0,o.value.pastDueContent=w.msg})},o=O({url:"",key:"",pastDue:!1,pastDueContent:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"}),e=async()=>{let u=await(await wn()).data;o.value.key=u.key,H.toDataURL(u.url,{errorCorrectionLevel:"L",margin:0,width:100}).then(w=>{o.value.url=w}),o.value.pastDue=!1,setTimeout(()=>{n(o.value.key)},1e3)};e();const r=dn(),a=gn();a.getLoginConfig();const i=zt(()=>{const u=[];return a.login.is_username&&u.push({type:"username",title:B("usernameLogin")}),a.login.is_mobile&&u.push({type:"mobile",title:B("mobileLogin")}),l.value=u[0]?u[0].type:"",u}),s=O(!1),l=O(""),c=pn({username:"",password:"",mobile:"",mobile_code:"",mobile_key:""}),p=O(),A=zt(()=>({username:{required:l.value=="username",message:B("usernamePlaceholder"),trigger:["blur","change"]},password:{required:l.value=="username",message:B("passwordPlaceholder"),trigger:["blur","change"]},mobile:[{required:l.value=="mobile",message:B("mobilePlaceholder"),trigger:["blur","change"]},{validator(u,w,f){return l.value!="mobile"?!0:tn.mobile(w)},message:B("mobileError"),trigger:["blur"]}],mobile_code:{required:l.value=="mobile",message:B("codePlaceholder"),trigger:["change"]}})),h=async()=>{var u;await((u=p.value)==null?void 0:u.validate(async(w,f)=>{if(w){if(s.value)return;s.value=!0,(l.value=="username"?vn:En)(c).then(async d=>{await r.setToken(d.data.token),Yt().handleLoginBack()}).catch(()=>{s.value=!1})}}))},v=O(null),y=async()=>{var u;await((u=p.value)==null?void 0:u.validateField("mobile",async(w,f)=>{var d;w&&((d=v.value)==null||d.send())}))};return(u,w)=>{const f=Xe,d=nn,g=on,m=Ge,_=ln,E=cn,x=an;return Q(),$("div",Ue,[I("div",Se,[I("div",De,[Ve,Fe,I("div",ze,[I("div",He,[N(f,{src:o.value.url,class:"w-[120px]"},null,8,["src"]),o.value.pastDue?(Q(),$("div",Je,[I("span",Ke,k(o.value.pastDueContent),1),I("span",{onClick:w[0]||(w[0]=C=>e()),class:"text-xs cursor-pointer text-color mt-2"},"\u70B9\u51FB\u5237\u65B0")])):Ht("",!0)])])]),I("div",Ye,[I("div",qe,[(Q(!0),$(mn,null,yn(b(i),C=>(Q(),$("div",{class:_n(["mr-[20px] text-base cursor-pointer leading-none",{"font-bold":l.value==C.type}]),onClick:q=>l.value=C.type},k(C.title),11,je))),256))]),N(x,{model:b(c),ref_key:"formRef",ref:p,rules:b(A),"validate-on-rule-change":!1},{default:T(()=>[Jt(I("div",null,[N(g,{prop:"username"},{default:T(()=>[N(d,{modelValue:b(c).username,"onUpdate:modelValue":w[1]||(w[1]=C=>b(c).username=C),placeholder:("t"in u?u.t:b(B))("usernamePlaceholder"),clearable:"","inline-message":!0},null,8,["modelValue","placeholder"])]),_:1}),N(g,{prop:"password"},{default:T(()=>[N(d,{modelValue:b(c).password,"onUpdate:modelValue":w[2]||(w[2]=C=>b(c).password=C),placeholder:("t"in u?u.t:b(B))("passwordPlaceholder"),type:"password",clearable:"","show-password":!0},null,8,["modelValue","placeholder"])]),_:1})],512),[[Kt,l.value=="username"]]),Jt(I("div",null,[N(g,{prop:"mobile"},{default:T(()=>[N(d,{modelValue:b(c).mobile,"onUpdate:modelValue":w[3]||(w[3]=C=>b(c).mobile=C),placeholder:("t"in u?u.t:b(B))("mobilePlaceholder"),clearable:""},null,8,["modelValue","placeholder"])]),_:1}),N(g,{prop:"mobile_code"},{default:T(()=>[N(d,{modelValue:b(c).mobile_code,"onUpdate:modelValue":w[5]||(w[5]=C=>b(c).mobile_code=C),placeholder:("t"in u?u.t:b(B))("codePlaceholder")},{suffix:T(()=>[N(m,{mobile:b(c).mobile,type:"login",modelValue:b(c).mobile_key,"onUpdate:modelValue":w[4]||(w[4]=C=>b(c).mobile_key=C),onClick:y,ref_key:"smsCodeRef",ref:v},null,8,["mobile","modelValue"])]),_:1},8,["modelValue","placeholder"])]),_:1})],512),[[Kt,l.value=="mobile"]]),I("div",Oe,[N(E,{to:"/auth/register"},{default:T(()=>[N(_,{type:"primary",link:""},{default:T(()=>[ot(k(("t"in u?u.t:b(B))("noAccount"))+"\uFF0C"+k(("t"in u?u.t:b(B))("toRegister")),1)]),_:1})]),_:1})]),N(g,null,{default:T(()=>[N(_,{type:"primary",class:"mt-[20px] w-full",size:"large",onClick:h,loading:s.value},{default:T(()=>[ot(k(s.value?("t"in u?u.t:b(B))("logining"):("t"in u?u.t:b(B))("login")),1)]),_:1},8,["loading"])]),_:1}),b(a).login.agreement_show?(Q(),$("div",Qe,[ot(k(("t"in u?u.t:b(B))("agreeTips"))+" ",1),N(E,{to:"/auth/agreement?key=service"},{default:T(()=>[I("span",$e,k(("t"in u?u.t:b(B))("userAgreement")),1)]),_:1}),ot(" "+k(("t"in u?u.t:b(B))("and"))+" ",1),N(E,{to:"/auth/agreement?key=privacy"},{default:T(()=>[I("span",Ze,k(("t"in u?u.t:b(B))("privacyAgreement")),1)]),_:1})])):Ht("",!0)]),_:1},8,["model","rules"])])])])}}});qt=Pn(We,[["__scopeId","data-v-5c62296d"]])});export{Sn as __tla,qt as default}; diff --git a/niucloud/public/web/_nuxt/login.747d8ddb.css b/niucloud/public/web/_nuxt/login.747d8ddb.css new file mode 100644 index 0000000..390d636 --- /dev/null +++ b/niucloud/public/web/_nuxt/login.747d8ddb.css @@ -0,0 +1 @@ +[data-v-5c62296d] .el-form-item .el-input__wrapper{border-bottom:1px solid var(--el-input-border-color);border-radius:0;box-shadow:unset!important;padding:8px 0}[data-v-5c62296d] .el-form-item .el-input__wrapper.is-focus{border-bottom:1px solid var(--el-input-focus-border-color)}[data-v-5c62296d] .el-form-item.is-error .el-input__wrapper{border-bottom:1px solid var(--el-color-danger)}[data-v-5c62296d] .el-form-item__error{padding-top:5px}.text-color[data-v-5c62296d]{color:var(--el-color-primary)} diff --git a/niucloud/public/web/_nuxt/logo.58dc7b81.jpg b/niucloud/public/web/_nuxt/logo.58dc7b81.jpg new file mode 100644 index 0000000..ec17c5e Binary files /dev/null and b/niucloud/public/web/_nuxt/logo.58dc7b81.jpg differ diff --git a/niucloud/public/web/_nuxt/member.3f5cb712.js b/niucloud/public/web/_nuxt/member.3f5cb712.js new file mode 100644 index 0000000..d7b8e3e --- /dev/null +++ b/niucloud/public/web/_nuxt/member.3f5cb712.js @@ -0,0 +1 @@ +const e="\u6B22\u8FCE\u9875",a="\u624B\u673A\u53F7",o="\u6CE8\u518C\u65F6\u95F4",n="\u79EF\u5206",s="\u4F59\u989D",t="\u96F6\u94B1",i="\u672A\u7ED1\u5B9A",l={welcomePage:e,mobile:a,registrationTime:o,point:n,balance:s,looseChange:t,notBound:i};export{s as balance,l as default,t as looseChange,a as mobile,i as notBound,n as point,o as registrationTime,e as welcomePage}; diff --git a/niucloud/public/web/_nuxt/member.balance.37fd278d.js b/niucloud/public/web/_nuxt/member.balance.37fd278d.js new file mode 100644 index 0000000..d01f44b --- /dev/null +++ b/niucloud/public/web/_nuxt/member.balance.37fd278d.js @@ -0,0 +1 @@ +const e="\u6211\u7684\u4F59\u989D",c="\u8D26\u6237\u7C7B\u578B",a="\u91D1\u989D\u53D8\u5316",n="\u53D1\u751F\u65B9\u5F0F",r="\u5907\u6CE8",o="\u53D1\u751F\u65F6\u95F4",m={myBalance:e,accountType:c,changeInAmount:a,modeOfOccurrence:n,remark:r,occurrenceTime:o};export{c as accountType,a as changeInAmount,m as default,n as modeOfOccurrence,e as myBalance,o as occurrenceTime,r as remark}; diff --git a/niucloud/public/web/_nuxt/member.center.dedfc2f3.js b/niucloud/public/web/_nuxt/member.center.dedfc2f3.js new file mode 100644 index 0000000..d5a29d6 --- /dev/null +++ b/niucloud/public/web/_nuxt/member.center.dedfc2f3.js @@ -0,0 +1 @@ +const e="\u4E2A\u4EBA\u4FE1\u606F",a="\u4F1A\u5458\u5934\u50CF",n="\u4FEE\u6539",m="\u4F1A\u5458\u6635\u79F0",c="\u53D6\u6D88",s="\u786E\u5B9A",o={personageInfo:e,memberHeadimg:a,edit:n,nickname:m,cancel:c,confirm:s};export{c as cancel,s as confirm,o as default,n as edit,a as memberHeadimg,m as nickname,e as personageInfo}; diff --git a/niucloud/public/web/_nuxt/member.point.6e212e8a.js b/niucloud/public/web/_nuxt/member.point.6e212e8a.js new file mode 100644 index 0000000..2819fdd --- /dev/null +++ b/niucloud/public/web/_nuxt/member.point.6e212e8a.js @@ -0,0 +1 @@ +const e="\u6211\u7684\u79EF\u5206",c="\u8D26\u6237\u7C7B\u578B",n="\u91D1\u989D\u53D8\u5316",a="\u53D1\u751F\u65B9\u5F0F",r="\u5907\u6CE8",o="\u53D1\u751F\u65F6\u95F4",m={myPoint:e,accountType:c,changeInAmount:n,modeOfOccurrence:a,remark:r,occurrenceTime:o};export{c as accountType,n as changeInAmount,m as default,a as modeOfOccurrence,e as myPoint,o as occurrenceTime,r as remark}; diff --git a/niucloud/public/web/_nuxt/nosite.89852ac3.js b/niucloud/public/web/_nuxt/nosite.89852ac3.js new file mode 100644 index 0000000..d44d259 --- /dev/null +++ b/niucloud/public/web/_nuxt/nosite.89852ac3.js @@ -0,0 +1 @@ +import{E as i,__tla as n}from"./el-empty.ed8ce84e.js";import{f as l,o as c,k as _,m,u as a,q as o,ad as u,__tla as p}from"./entry.60adbc61.js";import{__tla as f}from"./index.59e0a5b1.js";let s,g=Promise.all([(()=>{try{return n}catch{}})(),(()=>{try{return p}catch{}})(),(()=>{try{return f}catch{}})()]).then(async()=>{let e;e={class:"w-screen h-screen flex flex-col items-center justify-center"},s=l({__name:"nosite",setup(d){return(t,h)=>{const r=i;return c(),_("div",e,[m(r,{description:("t"in t?t.t:a(o))("noSite"),image:("img"in t?t.img:a(u))("static/resource/images/site/close.png"),"image-size":"300px"},null,8,["description","image"])])}}})});export{g as __tla,s as default}; diff --git a/niucloud/public/web/_nuxt/nuxt-link.404211f0.js b/niucloud/public/web/_nuxt/nuxt-link.404211f0.js new file mode 100644 index 0000000..4bd5511 --- /dev/null +++ b/niucloud/public/web/_nuxt/nuxt-link.404211f0.js @@ -0,0 +1 @@ +import{cp as y,aI as _,f as I,i as q,x,M as N,O as j,bm as C,bS as D,cq as E,cr as L,cs as V,e as M,ct as z,cu as H,__tla as $}from"./entry.60adbc61.js";let P,F=Promise.all([(()=>{try{return $}catch{}})()]).then(async()=>{const m=globalThis.requestIdleCallback||(t=>{const a=Date.now(),i={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-a))};return setTimeout(()=>{t(i)},1)}),S=globalThis.cancelIdleCallback||(t=>{clearTimeout(t)}),k=t=>{const a=y();a.isHydrating?a.hooks.hookOnce("app:suspense:resolve",()=>{m(t)}):m(t)};async function b(t,a=_()){const{path:i,matched:e}=a.resolve(t);if(!e.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(i)))return;const l=a._preloadPromises=a._preloadPromises||[];if(l.length>4)return Promise.all(l).then(()=>b(t,a));a._routePreloaded.add(i);const u=e.map(r=>{var n;return(n=r.components)==null?void 0:n.default}).filter(r=>typeof r=="function");for(const r of u){const n=Promise.resolve(r()).catch(()=>{}).finally(()=>l.splice(l.indexOf(n)));l.push(n)}await Promise.all(l)}const w=(...t)=>t.find(a=>a!==void 0),A="noopener noreferrer";function R(t){const a=t.componentName||"NuxtLink",i=(e,l)=>{if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;const u=t.trailingSlash==="append"?z:H;if(typeof e=="string")return u(e,!0);const r="path"in e?e.path:l(e).path;return{...e,name:void 0,path:u(r,!0)}};return I({name:a,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},setup(e,{slots:l}){const u=_(),r=q(()=>{const o=e.to||e.href||"";return i(o,u.resolve)}),n=q(()=>e.external||e.target&&e.target!=="_self"?!0:typeof r.value=="object"?!1:r.value===""||V(r.value,{acceptRelative:!0})),f=x(!1),v=x(null),T=o=>{var c;v.value=e.custom?(c=o==null?void 0:o.$el)==null?void 0:c.nextElementSibling:o==null?void 0:o.$el};if(e.prefetch!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!O()){const o=y();let c,s=null;N(()=>{const g=B();k(()=>{c=m(()=>{var p;(p=v==null?void 0:v.value)!=null&&p.tagName&&(s=g.observe(v.value,async()=>{s==null||s(),s=null;const h=typeof r.value=="string"?r.value:u.resolve(r.value).fullPath;await Promise.all([o.hooks.callHook("link:prefetch",h).catch(()=>{}),!n.value&&b(r.value,u).catch(()=>{})]),f.value=!0}))})})}),j(()=>{c&&S(c),s==null||s(),s=null})}return()=>{var p,h;if(!n.value){const d={ref:T,to:r.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(f.value&&(d.class=e.prefetchedClass||t.prefetchedClass),d.rel=e.rel),C(D("RouterLink"),d,l.default)}const o=typeof r.value=="object"?((p=u.resolve(r.value))==null?void 0:p.href)??null:r.value||null,c=e.target||null,s=e.noRel?null:w(e.rel,t.externalRelAttribute,o?A:"")||null,g=()=>M(o,{replace:e.replace});return e.custom?l.default?l.default({href:o,navigate:g,get route(){if(!o)return;const d=E(o);return{path:d.pathname,fullPath:d.pathname,get query(){return L(d.search)},hash:d.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:o}},rel:s,target:c,isExternal:n.value,isActive:!1,isExactActive:!1}):null:C("a",{ref:v,href:o,rel:s,target:c},(h=l.default)==null?void 0:h.call(l))}}})}P=R({componentName:"NuxtLink"});function B(){const t=y();if(t._observer)return t._observer;let a=null;const i=new Map,e=(l,u)=>(a||(a=new IntersectionObserver(r=>{for(const n of r){const f=i.get(n.target);(n.isIntersecting||n.intersectionRatio>0)&&f&&f()}})),i.set(l,u),a.observe(l),()=>{i.delete(l),a.unobserve(l),i.size===0&&(a.disconnect(),a=null)});return t._observer={observe:e}}function O(){const t=navigator.connection;return!!(t&&(t.saveData||/2g/.test(t.effectiveType)))}});export{P as _,F as __tla}; diff --git a/niucloud/public/web/_nuxt/point.3a7865d8.js b/niucloud/public/web/_nuxt/point.3a7865d8.js new file mode 100644 index 0000000..17884b9 --- /dev/null +++ b/niucloud/public/web/_nuxt/point.3a7865d8.js @@ -0,0 +1 @@ +import{_ as C,E as P,v as S,__tla as k}from"./el-loading.5f1a5791.js";import{E,a as I,b as O,__tla as T}from"./el-select.6d0e4b59.js";import{f as U,a1 as q,o as p,k as m,S as A,m as r,w as c,l as s,t as B,u as e,bw as D,q as n,__tla as L}from"./entry.60adbc61.js";import{__tla as N}from"./el-popper.f96f4ae9.js";import{__tla as Q}from"./el-input.9a624f32.js";import{_ as F}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as G}from"./use-form-item.9fe2eb56.js";import{__tla as H}from"./index.f6314314.js";import{__tla as J}from"./index.59e0a5b1.js";import{__tla as K}from"./debounce.cf505dd3.js";import{__tla as M}from"./vnode.a078d472.js";let u,R=Promise.all([(()=>{try{return k}catch{}})(),(()=>{try{return T}catch{}})(),(()=>{try{return L}catch{}})(),(()=>{try{return N}catch{}})(),(()=>{try{return Q}catch{}})(),(()=>{try{return G}catch{}})(),(()=>{try{return H}catch{}})(),(()=>{try{return J}catch{}})(),(()=>{try{return K}catch{}})(),(()=>{try{return M}catch{}})()]).then(async()=>{const d={class:"w-full h-full bg-page pt-6"},f={class:"main-container flex justify-between"},h={class:"card-header"},g={class:"px-6"},y={class:"mt-[16px] flex justify-end"},b=U({__name:"point",setup(V){const t=q({page:1,limit:10,total:0,loading:!0,data:[]}),i=(a=1)=>{t.loading=!0,t.page=a,D({page:t.page,limit:t.limit}).then(l=>{t.loading=!1,t.data=l.data.data,t.total=l.data.total}).catch(()=>{t.loading=!1})};return i(),(a,l)=>{const v=C,_=E,w=I,x=O,z=P,j=S;return p(),m("div",d,[A((p(),m("div",f,[r(v),r(z,{class:"box-card flex-1 ml-4",shadow:"never"},{header:c(()=>[s("div",h,[s("span",null,B(("t"in a?a.t:e(n))("myPoint")),1)])]),default:c(()=>[s("div",g,[r(w,{data:t.data,stripe:""},{default:c(()=>[r(_,{prop:"account_type_name",label:("t"in a?a.t:e(n))("accountType"),width:"180"},null,8,["label"]),r(_,{prop:"account_data",label:("t"in a?a.t:e(n))("changeInAmount"),width:"120"},null,8,["label"]),r(_,{prop:"from_type_name",label:("t"in a?a.t:e(n))("modeOfOccurrence"),width:"180"},null,8,["label"]),r(_,{prop:"memo",label:("t"in a?a.t:e(n))("remark"),width:"180"},null,8,["label"]),r(_,{prop:"create_time",label:("t"in a?a.t:e(n))("occurrenceTime")},null,8,["label"])]),_:1},8,["data"]),s("div",y,[r(x,{"current-page":t.page,"onUpdate:currentPage":l[0]||(l[0]=o=>t.page=o),"page-size":t.limit,"onUpdate:pageSize":l[1]||(l[1]=o=>t.limit=o),layout:"total, sizes, prev, pager, next, jumper",total:t.total,onSizeChange:l[2]||(l[2]=o=>i()),onCurrentChange:i},null,8,["current-page","page-size","total"])])])]),_:1})])),[[j,t.loading]])])}}});u=F(b,[["__scopeId","data-v-6c16e26a"]])});export{R as __tla,u as default}; diff --git a/niucloud/public/web/_nuxt/point.c9b2d345.css b/niucloud/public/web/_nuxt/point.c9b2d345.css new file mode 100644 index 0000000..515e9ce --- /dev/null +++ b/niucloud/public/web/_nuxt/point.c9b2d345.css @@ -0,0 +1 @@ +.box-card[data-v-6c16e26a]{border:none!important}.text-color[data-v-6c16e26a]{color:var(--jjext-color-brand)} diff --git a/niucloud/public/web/_nuxt/register.32033270.css b/niucloud/public/web/_nuxt/register.32033270.css new file mode 100644 index 0000000..5204d55 --- /dev/null +++ b/niucloud/public/web/_nuxt/register.32033270.css @@ -0,0 +1 @@ +[data-v-b1a08bb9] .el-form-item .el-input__wrapper{border-bottom:1px solid var(--el-input-border-color);border-radius:0;box-shadow:unset!important;padding:8px 0}[data-v-b1a08bb9] .el-form-item .el-input__wrapper.is-focus{border-bottom:1px solid var(--el-input-focus-border-color)}[data-v-b1a08bb9] .el-form-item.is-error .el-input__wrapper{border-bottom:1px solid var(--el-color-danger)}[data-v-b1a08bb9] .el-form-item__error{padding-top:5px} diff --git a/niucloud/public/web/_nuxt/register.582433a7.js b/niucloud/public/web/_nuxt/register.582433a7.js new file mode 100644 index 0000000..c98baf2 --- /dev/null +++ b/niucloud/public/web/_nuxt/register.582433a7.js @@ -0,0 +1 @@ +import{u as X,E as ee,_ as ae,t as le,__tla as re}from"./test.03e3af90.js";import{E as te,__tla as se}from"./el-input.9a624f32.js";import{E as oe,a as ie,__tla as ne}from"./el-overlay.ae79e505.js";import{E as ce,__tla as de}from"./el-button.946140c1.js";import{_ as me,__tla as ue}from"./nuxt-link.404211f0.js";import{f as pe,h as _e,a5 as ge,x as b,i as U,a1 as he,o as y,k as v,l as c,m as t,u as a,Z as fe,$ as be,w as i,S as A,W as V,p as w,t as u,y as ye,ab as ve,ac as we,ad as xe,C as ke,q as r,s as Ae,v as Ve,__tla as Pe}from"./entry.60adbc61.js";import{u as qe,__tla as Se}from"./useLogin.368406ce.js";import{_ as Ue}from"./_plugin-vue_export-helper.c27b6911.js";import{__tla as Ce}from"./throttle.95940245.js";import{__tla as Ee}from"./debounce.cf505dd3.js";import{__tla as Le}from"./use-form-item.9fe2eb56.js";import{__tla as Re}from"./index.f6314314.js";import{__tla as je}from"./index.59e0a5b1.js";import{__tla as ze}from"./vnode.a078d472.js";let C,Fe=Promise.all([(()=>{try{return re}catch{}})(),(()=>{try{return se}catch{}})(),(()=>{try{return ne}catch{}})(),(()=>{try{return de}catch{}})(),(()=>{try{return ue}catch{}})(),(()=>{try{return Pe}catch{}})(),(()=>{try{return Se}catch{}})(),(()=>{try{return Ce}catch{}})(),(()=>{try{return Ee}catch{}})(),(()=>{try{return Le}catch{}})(),(()=>{try{return Re}catch{}})(),(()=>{try{return je}catch{}})(),(()=>{try{return ze}catch{}})()]).then(async()=>{const P=h=>(Ae("data-v-b1a08bb9"),h=h(),Ve(),h),E={class:"w-full h-full bg-page flex items-center justify-center"},L={class:"flex bg-white"},R={class:"flex flex-col items-center w-[330px] py-[100px] border-r"},j=P(()=>c("div",{class:"title font-bold text-xl"},"\u6253\u5F00\u624B\u673A\u5FAE\u4FE1",-1)),z=P(()=>c("div",{class:"tips text-sm mt-[5px]"},"\u70B9\u51FB\u53F3\u4E0A\u89D2\u6253\u5F00\u626B\u4E00\u626B",-1)),F={class:"qrcode mt-[30px] border leading-none"},T={class:"bg-white w-[380px] p-[30px]"},B={class:"flex items-end my-[30px]"},G=["onClick"],H={class:"py-0 leading-none"},O={class:"flex justify-end leading-none"},Q={key:0,class:"text-xs py-[50rpx] flex justify-center w-full"},Y={class:"text-primary"},I={class:"text-primary"},J=pe({__name:"register",setup(h){const M=_e(),m=ge();m.getLoginConfig();const n=b(""),N=U(()=>{const e=[];return m.login.is_username&&e.push({type:"username",title:r("usernameRegister")}),m.login.is_mobile&&!m.login.is_bind_mobile&&e.push({type:"mobile",title:r("mobileRegister")}),n.value=e[0]?e[0].type:"",e}),g=b(!1),s=he({username:"",password:"",confirm_password:"",mobile:"",mobile_code:"",mobile_key:"",captcha_key:"",captcha_code:""}),W=U(()=>({username:{type:"string",required:n.value=="username",message:r("usernamePlaceholder"),trigger:["blur","change"]},password:{type:"string",required:n.value=="username",message:r("passwordPlaceholder"),trigger:["blur","change"]},confirm_password:[{type:"string",required:n.value=="username",message:r("confirmPasswordPlaceholder"),trigger:["blur","change"]},{validator(e,l,_){return l==s.password},message:r("confirmPasswordError"),trigger:["change","blur"]}],mobile:[{type:"string",required:n.value=="mobile"||m.login.is_bind_mobile,message:r("mobilePlaceholder"),trigger:["blur","change"]},{validator(e,l,_){return n.value!="mobile"&&!m.login.is_bind_mobile?!0:le.mobile(l)},message:r("mobileError"),trigger:["change","blur"]}],mobile_code:{type:"string",required:n.value=="mobile"||m.login.is_bind_mobile,message:r("codePlaceholder"),trigger:["blur","change"]},captcha_code:{type:"string",required:n.value=="username",message:r("captchaPlaceholder"),trigger:["blur","change"]}})),x=b(),Z=async()=>{var e;await((e=x.value)==null?void 0:e.validate(async(l,_)=>{if(l){if(g.value)return;g.value=!0,(n.value=="username"?ve:we)(s).then(d=>{M.setToken(d.data.token),qe().handleLoginBack()}).catch(()=>{g.value=!1,f.refresh()})}}))},f=X(s);f.refresh();const q=b(null),$=async()=>{var e;await((e=x.value)==null?void 0:e.validateField("mobile",async(l,_)=>{var d;l&&((d=q.value)==null||d.send())}))};return(e,l)=>{const _=ee,d=te,p=oe,D=ae,S=ce,k=me,K=ie;return y(),v("div",E,[c("div",L,[c("div",R,[j,z,c("div",F,[t(_,{src:("img"in e?e.img:a(xe))("https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=gQHU7zwAAAAAAAAAAS5odHRwOi8vd2VpeGluLnFxLmNvbS9xLzAySlJSbU1Sb0hiMlQxOEcwSGhBY1AAAgTSfStkAwRYAgAA"),class:"w-[120px]"},null,8,["src"])])]),c("div",T,[c("div",B,[(y(!0),v(fe,null,be(a(N),o=>(y(),v("div",{class:ke(["mr-[20px] text-base cursor-pointer leading-none",{"font-bold":a(n)==o.type}]),onClick:Te=>n.value=o.type},u(o.title),11,G))),256))]),t(K,{model:a(s),ref_key:"formRef",ref:x,rules:a(W),"validate-on-rule-change":!1},{default:i(()=>[A(c("div",null,[t(p,{prop:"username"},{default:i(()=>[t(d,{modelValue:a(s).username,"onUpdate:modelValue":l[0]||(l[0]=o=>a(s).username=o),placeholder:("t"in e?e.t:a(r))("usernamePlaceholder"),clearable:"","inline-message":!0},null,8,["modelValue","placeholder"])]),_:1}),t(p,{prop:"password"},{default:i(()=>[t(d,{modelValue:a(s).password,"onUpdate:modelValue":l[1]||(l[1]=o=>a(s).password=o),placeholder:("t"in e?e.t:a(r))("passwordPlaceholder"),type:"password",clearable:"","show-password":!0},null,8,["modelValue","placeholder"])]),_:1}),t(p,{prop:"confirm_password"},{default:i(()=>[t(d,{modelValue:a(s).confirm_password,"onUpdate:modelValue":l[2]||(l[2]=o=>a(s).confirm_password=o),placeholder:("t"in e?e.t:a(r))("confirmPasswordPlaceholder"),type:"password",clearable:"","show-password":!0},null,8,["modelValue","placeholder"])]),_:1})],512),[[V,a(n)=="username"]]),A(c("div",null,[t(p,{prop:"mobile"},{default:i(()=>[t(d,{modelValue:a(s).mobile,"onUpdate:modelValue":l[3]||(l[3]=o=>a(s).mobile=o),placeholder:("t"in e?e.t:a(r))("mobilePlaceholder"),clearable:""},null,8,["modelValue","placeholder"])]),_:1}),t(p,{prop:"mobile_code"},{default:i(()=>[t(d,{modelValue:a(s).mobile_code,"onUpdate:modelValue":l[5]||(l[5]=o=>a(s).mobile_code=o),placeholder:("t"in e?e.t:a(r))("codePlaceholder")},{suffix:i(()=>[t(D,{mobile:a(s).mobile,type:"login",modelValue:a(s).mobile_key,"onUpdate:modelValue":l[4]||(l[4]=o=>a(s).mobile_key=o),onClick:$,ref_key:"smsCodeRef",ref:q},null,8,["mobile","modelValue"])]),_:1},8,["modelValue","placeholder"])]),_:1})],512),[[V,a(n)=="mobile"||a(m).login.is_bind_mobile]]),A(c("div",null,[t(p,{prop:"captcha_code"},{default:i(()=>[t(d,{modelValue:a(s).captcha_code,"onUpdate:modelValue":l[7]||(l[7]=o=>a(s).captcha_code=o),placeholder:("t"in e?e.t:a(r))("captchaPlaceholder")},{suffix:i(()=>[c("div",H,[t(_,{src:a(f).image.value,class:"h-[30px] cursor-pointer",onClick:l[6]||(l[6]=o=>a(f).refresh())},null,8,["src"])])]),_:1},8,["modelValue","placeholder"])]),_:1})],512),[[V,a(n)=="username"]]),c("div",O,[t(k,{to:"/auth/login"},{default:i(()=>[t(S,{type:"primary",link:""},{default:i(()=>[w(u(("t"in e?e.t:a(r))("haveAccount"))+"\uFF0C"+u(("t"in e?e.t:a(r))("toLogin")),1)]),_:1})]),_:1})]),t(p,null,{default:i(()=>[t(S,{type:"primary",class:"mt-[20px] w-full",size:"large",onClick:Z,loading:a(g)},{default:i(()=>[w(u(a(g)?("t"in e?e.t:a(r))("registering"):("t"in e?e.t:a(r))("register")),1)]),_:1},8,["loading"])]),_:1}),a(m).login.agreement_show?(y(),v("div",Q,[w(u(("t"in e?e.t:a(r))("registerAgreeTips"))+" ",1),t(k,{to:"/auth/agreement?key=service"},{default:i(()=>[c("span",Y,u(("t"in e?e.t:a(r))("userAgreement")),1)]),_:1}),w(" "+u(("t"in e?e.t:a(r))("and"))+" ",1),t(k,{to:"/auth/agreement?key=privacy"},{default:i(()=>[c("span",I,u(("t"in e?e.t:a(r))("privacyAgreement")),1)]),_:1})])):ye("",!0)]),_:1},8,["model","rules"])])])])}}});C=Ue(J,[["__scopeId","data-v-b1a08bb9"]])});export{Fe as __tla,C as default}; diff --git a/niucloud/public/web/_nuxt/test.03e3af90.js b/niucloud/public/web/_nuxt/test.03e3af90.js new file mode 100644 index 0000000..150e61d --- /dev/null +++ b/niucloud/public/web/_nuxt/test.03e3af90.js @@ -0,0 +1 @@ +import{E as He,__tla as Je}from"./el-button.946140c1.js";import{ag as F,J as he,ah as se,ai as be,K as oe,f as K,aj as _e,ak as Me,al as qe,am as ke,B as we,an as We,x as v,ao as Ke,H as Ue,i as A,L as ie,ap as xe,M as ze,o as C,c as ue,m as u,w as m,l as w,C as x,u as a,E as ce,T as Qe,y as I,U as B,aq as et,k as L,Z as ae,V as tt,Y as at,ar as nt,as as lt,at as rt,au as st,av as ot,$ as it,S as ut,W as ct,r as ne,X as dt,aw as pt,D as Ae,ax as G,ay as H,az as ft,F as Ce,aA as vt,aB as mt,aC as gt,t as le,aD as yt,Q as ht,aE as bt,q as V,aF as _t,a1 as $e,p as de,aG as kt,__tla as wt}from"./entry.60adbc61.js";import{t as pe,__tla as xt}from"./throttle.95940245.js";import{u as zt,g as At,E as Ct,__tla as $t}from"./el-input.9a624f32.js";import{E as It,a as Nt,b as Ot,__tla as St}from"./el-overlay.ae79e505.js";let fe,Ie,Ne,ve,Et=Promise.all([(()=>{try{return Je}catch{}})(),(()=>{try{return wt}catch{}})(),(()=>{try{return xt}catch{}})(),(()=>{try{return $t}catch{}})(),(()=>{try{return St}catch{}})()]).then(async()=>{const Oe=(e,n)=>{if(!F||!e||!n)return!1;const r=e.getBoundingClientRect();let o;return n instanceof Element?o=n.getBoundingClientRect():o={top:0,right:window.innerWidth,bottom:window.innerHeight,left:0},r.topo.top&&r.right>o.left&&r.leftbe([])},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},hideOnClickModal:{type:Boolean,default:!1},teleported:{type:Boolean,default:!1},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2}}),Ee={close:()=>!0,switch:e=>oe(e)},Ze=["src"],Te=K({name:"ElImageViewer"}),je=K({...Te,props:Se,emits:Ee,setup(e,{expose:n,emit:r}){const o=e,$={CONTAIN:{name:"contain",icon:_e(Me)},ORIGINAL:{name:"original",icon:_e(qe)}},{t:g}=ke(),s=we("image-viewer"),{nextZIndex:Y}=We(),y=v(),c=v([]),h=Ke(),b=v(!0),_=v(o.initialIndex),k=Ue($.CONTAIN),p=v({scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}),d=A(()=>{const{urlList:t}=o;return t.length<=1}),f=A(()=>_.value===0),N=A(()=>_.value===o.urlList.length-1),O=A(()=>o.urlList[_.value]),D=A(()=>{const{scale:t,deg:l,offsetX:i,offsetY:z,enableTransition:Z}=p.value;let T=i/t,j=z/t;switch(l%360){case 90:case-270:[T,j]=[j,-T];break;case 180:case-180:[T,j]=[-T,-j];break;case 270:case-90:[T,j]=[-j,T];break}const X={transform:`scale(${t}) rotate(${l}deg) translate(${T}px, ${j}px)`,transition:Z?"transform .3s":""};return k.value.name===$.CONTAIN.name&&(X.maxWidth=X.maxHeight="100%"),X}),J=A(()=>oe(o.zIndex)?o.zIndex:Y());function R(){S(),r("close")}function P(){const t=pe(i=>{switch(i.code){case G.esc:o.closeOnPressEscape&&R();break;case G.space:q();break;case G.left:ee();break;case G.up:E("zoomIn");break;case G.right:te();break;case G.down:E("zoomOut");break}}),l=pe(i=>{const z=i.deltaY||i.deltaX;E(z<0?"zoomIn":"zoomOut",{zoomRate:o.zoomRate,enableTransition:!1})});h.run(()=>{H(document,"keydown",t),H(document,"wheel",l)})}function S(){h.stop()}function re(){b.value=!1}function U(t){b.value=!1,t.target.alt=g("el.image.error")}function Q(t){if(b.value||t.button!==0||!y.value)return;p.value.enableTransition=!1;const{offsetX:l,offsetY:i}=p.value,z=t.pageX,Z=t.pageY,T=pe(X=>{p.value={...p.value,offsetX:l+X.pageX-z,offsetY:i+X.pageY-Z}}),j=H(document,"mousemove",T);H(document,"mouseup",()=>{j()}),t.preventDefault()}function M(){p.value={scale:1,deg:0,offsetX:0,offsetY:0,enableTransition:!1}}function q(){if(b.value)return;const t=ft($),l=Object.values($),i=k.value.name,z=(l.findIndex(Z=>Z.name===i)+1)%t.length;k.value=$[t[z]],M()}function W(t){const l=o.urlList.length;_.value=(t+l)%l}function ee(){f.value&&!o.infinite||W(_.value-1)}function te(){N.value&&!o.infinite||W(_.value+1)}function E(t,l={}){if(b.value)return;const{zoomRate:i,rotateDeg:z,enableTransition:Z}={zoomRate:o.zoomRate,rotateDeg:90,enableTransition:!0,...l};switch(t){case"zoomOut":p.value.scale>.2&&(p.value.scale=Number.parseFloat((p.value.scale/i).toFixed(3)));break;case"zoomIn":p.value.scale<7&&(p.value.scale=Number.parseFloat((p.value.scale*i).toFixed(3)));break;case"clockwise":p.value.deg+=z;break;case"anticlockwise":p.value.deg-=z;break}p.value.enableTransition=Z}return ie(O,()=>{xe(()=>{const t=c.value[0];t!=null&&t.complete||(b.value=!0)})}),ie(_,t=>{M(),r("switch",t)}),ze(()=>{var t,l;P(),(l=(t=y.value)==null?void 0:t.focus)==null||l.call(t)}),n({setActiveItem:W}),(t,l)=>(C(),ue(pt,{to:"body",disabled:!t.teleported},[u(dt,{name:"viewer-fade",appear:""},{default:m(()=>[w("div",{ref_key:"wrapper",ref:y,tabindex:-1,class:x(a(s).e("wrapper")),style:ce({zIndex:a(J)})},[w("div",{class:x(a(s).e("mask")),onClick:l[0]||(l[0]=Qe(i=>t.hideOnClickModal&&R(),["self"]))},null,2),I(" CLOSE "),w("span",{class:x([a(s).e("btn"),a(s).e("close")]),onClick:R},[u(a(B),null,{default:m(()=>[u(a(et))]),_:1})],2),I(" ARROW "),a(d)?I("v-if",!0):(C(),L(ae,{key:0},[w("span",{class:x([a(s).e("btn"),a(s).e("prev"),a(s).is("disabled",!t.infinite&&a(f))]),onClick:ee},[u(a(B),null,{default:m(()=>[u(a(tt))]),_:1})],2),w("span",{class:x([a(s).e("btn"),a(s).e("next"),a(s).is("disabled",!t.infinite&&a(N))]),onClick:te},[u(a(B),null,{default:m(()=>[u(a(at))]),_:1})],2)],64)),I(" ACTIONS "),w("div",{class:x([a(s).e("btn"),a(s).e("actions")])},[w("div",{class:x(a(s).e("actions__inner"))},[u(a(B),{onClick:l[1]||(l[1]=i=>E("zoomOut"))},{default:m(()=>[u(a(nt))]),_:1}),u(a(B),{onClick:l[2]||(l[2]=i=>E("zoomIn"))},{default:m(()=>[u(a(lt))]),_:1}),w("i",{class:x(a(s).e("actions__divider"))},null,2),u(a(B),{onClick:q},{default:m(()=>[(C(),ue(rt(a(k).icon)))]),_:1}),w("i",{class:x(a(s).e("actions__divider"))},null,2),u(a(B),{onClick:l[3]||(l[3]=i=>E("anticlockwise"))},{default:m(()=>[u(a(st))]),_:1}),u(a(B),{onClick:l[4]||(l[4]=i=>E("clockwise"))},{default:m(()=>[u(a(ot))]),_:1})],2)],2),I(" CANVAS "),w("div",{class:x(a(s).e("canvas"))},[(C(!0),L(ae,null,it(t.urlList,(i,z)=>ut((C(),L("img",{ref_for:!0,ref:Z=>c.value[z]=Z,key:i,src:i,style:ce(a(D)),class:x(a(s).e("img")),onLoad:re,onError:U,onMousedown:Q},null,46,Ze)),[[ct,z===_.value]])),128))],2),ne(t.$slots,"default")],6)]),_:3})],8,["disabled"]))}});var Le=Ae(je,[["__file","/home/runner/work/element-plus/element-plus/packages/components/image-viewer/src/image-viewer.vue"]]);const Re=Ce(Le),Be=he({hideOnClickModal:{type:Boolean,default:!1},src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:{type:Boolean,default:!1},scrollContainer:{type:se([String,Object])},previewSrcList:{type:se(Array),default:()=>be([])},previewTeleported:{type:Boolean,default:!1},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2}}),Ve={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>oe(e),close:()=>!0,show:()=>!0},Ye=["src","loading"],De={key:0},Pe=K({name:"ElImage",inheritAttrs:!1}),Xe=K({...Pe,props:Be,emits:Ve,setup(e,{emit:n}){const r=e;let o="";const{t:$}=ke(),g=we("image"),s=vt(),Y=zt(),y=v(),c=v(!1),h=v(!0),b=v(!1),_=v(),k=v(),p=F&&"loading"in HTMLImageElement.prototype;let d,f;const N=A(()=>s.style),O=A(()=>{const{fit:t}=r;return F&&t?{objectFit:t}:{}}),D=A(()=>{const{previewSrcList:t}=r;return Array.isArray(t)&&t.length>0}),J=A(()=>{const{previewSrcList:t,initialIndex:l}=r;let i=l;return l>t.length-1&&(i=0),i}),R=A(()=>r.loading==="eager"?!1:!p&&r.loading==="lazy"||r.lazy),P=()=>{F&&(h.value=!0,c.value=!1,y.value=r.src)};function S(t){h.value=!1,c.value=!1,n("load",t)}function re(t){h.value=!1,c.value=!0,n("error",t)}function U(){Oe(_.value,k.value)&&(P(),q())}const Q=mt(U,200);async function M(){var t;if(!F)return;await xe();const{scrollContainer:l}=r;yt(l)?k.value=l:ht(l)&&l!==""?k.value=(t=document.querySelector(l))!=null?t:void 0:_.value&&(k.value=At(_.value)),k.value&&(d=H(k,"scroll",Q),setTimeout(()=>U(),100))}function q(){!F||!k.value||!Q||(d==null||d(),k.value=void 0)}function W(t){if(t.ctrlKey&&(t.deltaY<0||t.deltaY>0))return t.preventDefault(),!1}function ee(){D.value&&(f=H("wheel",W,{passive:!1}),o=document.body.style.overflow,document.body.style.overflow="hidden",b.value=!0,n("show"))}function te(){f==null||f(),document.body.style.overflow=o,b.value=!1,n("close")}function E(t){n("switch",t)}return ie(()=>r.src,()=>{R.value?(h.value=!0,c.value=!1,q(),M()):P()}),ze(()=>{R.value?M():P()}),(t,l)=>(C(),L("div",{ref_key:"container",ref:_,class:x([a(g).b(),t.$attrs.class]),style:ce(a(N))},[y.value!==void 0&&!c.value?(C(),L("img",gt({key:0},a(Y),{src:y.value,loading:t.loading,style:a(O),class:[a(g).e("inner"),a(D)&&a(g).e("preview"),h.value&&a(g).is("loading")],onClick:ee,onLoad:S,onError:re}),null,16,Ye)):I("v-if",!0),h.value||c.value?(C(),L("div",{key:1,class:x(a(g).e("wrapper"))},[h.value?ne(t.$slots,"placeholder",{key:0},()=>[w("div",{class:x(a(g).e("placeholder"))},null,2)]):c.value?ne(t.$slots,"error",{key:1},()=>[w("div",{class:x(a(g).e("error"))},le(a($)("el.image.error")),3)]):I("v-if",!0)],2)):I("v-if",!0),a(D)?(C(),L(ae,{key:2},[b.value?(C(),ue(a(Re),{key:0,"z-index":t.zIndex,"initial-index":a(J),infinite:t.infinite,"zoom-rate":t.zoomRate,"url-list":t.previewSrcList,"hide-on-click-modal":t.hideOnClickModal,teleported:t.previewTeleported,"close-on-press-escape":t.closeOnPressEscape,onClose:te,onSwitch:E},{default:m(()=>[t.$slots.viewer?(C(),L("div",De,[ne(t.$slots,"viewer")])):I("v-if",!0)]),_:3},8,["z-index","initial-index","infinite","zoom-rate","url-list","hide-on-click-modal","teleported","close-on-press-escape"])):I("v-if",!0)],64)):I("v-if",!0)],6))}});var Fe=Ae(Xe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/image/src/image.vue"]]);fe=Ce(Fe),ve=function(e){const n=v("");return{image:n,refresh:async()=>{try{await bt().then(r=>{r.code==1&&(e.captcha_key=r.data.captcha_key,e.captcha_code="",n.value=r.data.img.replace(/\r\n/g,""))})}catch{}}}};function Ge(){const e=v(!0),n=v(V("getSmsCode")),r=v(90);let o;const $=async Y=>{if(!e.value)return;e.value=!1;let y=!1;return await _t(Y).then(c=>{c.code==1?(g(),y=c.data.key):(s(),y=!1)}).catch(()=>{y=!1,s()}),y},g=()=>{o=setInterval(()=>{r.value>0?(r.value-=1,n.value=`${r.value}${V("smsCodeChangeText")}`):s()},1e3)},s=()=>{clearInterval(o),r.value=90,e.value=!0,n.value=V("getSmsCode")};return{send:$,text:n,canGetCode:e}}let me,ge,ye;me={class:"h-[30px]"},ge={class:"py-[5px] leading-none"},ye={class:"dialog-footer"},Ie=K({__name:"index",props:{mobile:String,type:{type:String,default:""},modelValue:{type:String,default:""}},emits:["update:modelValue","click"],setup(e,{expose:n,emit:r}){const o=e,$=A({get(){return o.modelValue},set(d){r("update:modelValue",d)}}),g=v(!1),s=$e({mobile:"",captcha_code:"",captcha_key:"",type:o.type}),Y=$e({captcha_code:{required:!0,message:V("captchaPlaceholder"),trigger:["blur","change"]}}),y=v(null),c=v(!1),h=ve(s);h.refresh();const b=Ge(),_=()=>{s.mobile=o.mobile,b.canGetCode.value&&(c.value=!0)},k=async()=>{var d;await((d=y.value)==null?void 0:d.validate(async(f,N)=>{if(f){g.value=!0;const O=await b.send(s);O?($.value=O,c.value=!1,g.value=!1):O===!1&&(h.refresh(),g.value=!1)}}))},p=()=>{r("click")};return n({send:_}),(d,f)=>{const N=He,O=fe,D=Ct,J=It,R=Nt,P=Ot;return C(),L(ae,null,[w("div",me,[u(N,{type:"primary",link:"",disabled:!a(b).canGetCode.value,onClick:p},{default:m(()=>[de(le(a(b).text.value),1)]),_:1},8,["disabled"])]),u(P,{modelValue:a(c),"onUpdate:modelValue":f[3]||(f[3]=S=>kt(c)?c.value=S:null),title:("t"in d?d.t:a(V))("captchaTitle"),width:"350px","append-to-body":!0,"align-center":!0},{footer:m(()=>[w("span",ye,[u(N,{onClick:f[2]||(f[2]=S=>c.value=!1)},{default:m(()=>[de(le(("t"in d?d.t:a(V))("cancel")),1)]),_:1}),u(N,{type:"primary",loading:a(g),onClick:k},{default:m(()=>[de(le(("t"in d?d.t:a(V))("confirm")),1)]),_:1},8,["loading"])])]),default:m(()=>[u(R,{model:a(s),ref_key:"formRef",ref:y,rules:a(Y)},{default:m(()=>[u(J,{prop:"captcha_code",style:{"margin-bottom":"0"}},{default:m(()=>[u(D,{modelValue:a(s).captcha_code,"onUpdate:modelValue":f[1]||(f[1]=S=>a(s).captcha_code=S),placeholder:("t"in d?d.t:a(V))("captchaPlaceholder")},{suffix:m(()=>[w("div",ge,[u(O,{src:a(h).image.value,class:"h-[30px] cursor-pointer",onClick:f[0]||(f[0]=S=>a(h).refresh())},null,8,["src"])])]),_:1},8,["modelValue","placeholder"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])],64)}}}),Ne={email(e){return/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(e)},mobile(e){return/^1[23456789]\d{9}$/.test(e)},url(e){return/^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/.test(e)},date(e){return e?(this.number(e)&&(e=+e),!/Invalid|NaN/.test(new Date(e).toString())):!1},dateISO(e){return/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(e)},number(e){return/^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/.test(e)},string(e){return typeof e=="string"},digits(e){return/^\d+$/.test(e)},idCard(e){return/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(e)},carNo(e){const n=/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/,r=/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;return e.length===7?r.test(e):e.length===8?n.test(e):!1},amount(e){return/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(e)},chinese(e){return/^[\u4e00-\u9fa5]+$/gi.test(e)},letter(e){return/^[a-zA-Z]*$/.test(e)},enOrNum(e){return/^[0-9a-zA-Z]*$/g.test(e)},contains(e,n){return e.indexOf(n)>=0},range(e,n){return e>=n[0]&&e<=n[1]},rangeLength(e,n){return e.length>=n[0]&&e.length<=n[1]},landline(e){return/^\d{3,4}-\d{7,8}(-\d{3,4})?$/.test(e)},empty(e){switch(typeof e){case"undefined":return!0;case"string":if(e.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g,"").length==0)return!0;break;case"boolean":if(!e)return!0;break;case"number":if(e===0||isNaN(e))return!0;break;case"object":if(e===null||e.length===0)return!0;for(const n in e)return!1;return!0}return!1},jsonString(e){if(typeof e=="string")try{const n=JSON.parse(e);return!!(typeof n=="object"&&n)}catch{return!1}return!1},array(e){return typeof Array.isArray=="function"?Array.isArray(e):Object.prototype.toString.call(e)==="[object Array]"},object(e){return Object.prototype.toString.call(e)==="[object Object]"},code(e,n=6){return new RegExp(`^\\d{${n}}$`).test(e)},func(e){return typeof e=="function"},promise(e){return this.object(e)&&this.func(e.then)&&this.func(e.catch)},image(e){const n=e.split("?")[0];return/\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i.test(n)},video(e){return/\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i.test(e)},regExp(e){return e&&Object.prototype.toString.call(e)==="[object RegExp]"}}});export{fe as E,Ie as _,Et as __tla,Ne as t,ve as u}; diff --git a/niucloud/public/web/_nuxt/test.7448703b.css b/niucloud/public/web/_nuxt/test.7448703b.css new file mode 100644 index 0000000..0411fc0 --- /dev/null +++ b/niucloud/public/web/_nuxt/test.7448703b.css @@ -0,0 +1 @@ +.el-image__error,.el-image__inner,.el-image__placeholder,.el-image__wrapper{height:100%;width:100%}.el-image{display:inline-block;overflow:hidden;position:relative}.el-image__inner{opacity:1;vertical-align:top}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{left:0;position:absolute;top:0}.el-image__error,.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{align-items:center;color:var(--el-text-color-placeholder);display:flex;font-size:14px;justify-content:center;vertical-align:middle}.el-image__preview{cursor:pointer}.el-image-viewer__wrapper{bottom:0;left:0;position:fixed;right:0;top:0}.el-image-viewer__btn{align-items:center;border-radius:50%;box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;opacity:.8;position:absolute;-webkit-user-select:none;user-select:none;z-index:1}.el-image-viewer__btn .el-icon{cursor:pointer;font-size:inherit}.el-image-viewer__close{font-size:40px;height:40px;right:40px;top:40px;width:40px}.el-image-viewer__canvas{align-items:center;display:flex;height:100%;justify-content:center;position:static;-webkit-user-select:none;user-select:none;width:100%}.el-image-viewer__actions{background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px;bottom:30px;height:44px;left:50%;padding:0 23px;transform:translate(-50%);width:282px}.el-image-viewer__actions__inner{align-items:center;color:#fff;cursor:default;display:flex;font-size:23px;height:100%;justify-content:space-around;text-align:justify;width:100%}.el-image-viewer__prev{left:40px}.el-image-viewer__next,.el-image-viewer__prev{background-color:var(--el-text-color-regular);border-color:#fff;color:#fff;font-size:24px;height:44px;top:50%;transform:translateY(-50%);width:44px}.el-image-viewer__next{right:40px;text-indent:2px}.el-image-viewer__close{background-color:var(--el-text-color-regular);border-color:#fff;color:#fff;font-size:24px;height:44px;width:44px}.el-image-viewer__mask{background:#000;height:100%;left:0;opacity:.5;position:absolute;top:0;width:100%}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes viewer-fade-out{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20px,0)}} diff --git a/niucloud/public/web/_nuxt/throttle.95940245.js b/niucloud/public/web/_nuxt/throttle.95940245.js new file mode 100644 index 0000000..1228dc1 --- /dev/null +++ b/niucloud/public/web/_nuxt/throttle.95940245.js @@ -0,0 +1 @@ +import{d as o,__tla as _}from"./debounce.cf505dd3.js";import{aJ as c,__tla as f}from"./entry.60adbc61.js";let e,g=Promise.all([(()=>{try{return _}catch{}})(),(()=>{try{return f}catch{}})()]).then(async()=>{var l="Expected a function";e=function(i,r,t){var a=!0,n=!0;if(typeof i!="function")throw new TypeError(l);return c(t)&&(a="leading"in t?!!t.leading:a,n="trailing"in t?!!t.trailing:n),o(i,r,{leading:a,maxWait:r,trailing:n})}});export{g as __tla,e as t}; diff --git a/niucloud/public/web/_nuxt/use-form-item.9fe2eb56.js b/niucloud/public/web/_nuxt/use-form-item.9fe2eb56.js new file mode 100644 index 0000000..b4ea8cf --- /dev/null +++ b/niucloud/public/web/_nuxt/use-form-item.9fe2eb56.js @@ -0,0 +1 @@ +import{f as I,a as _,__tla as z}from"./index.f6314314.js";import{i as v,R as x,x as o,cb as g,a0 as i,u as p,M as $,L as F,a$ as L,a2 as M,__tla as R}from"./entry.60adbc61.js";import{u as j,__tla as w}from"./index.59e0a5b1.js";let b,f,y,h,B=Promise.all([(()=>{try{return z}catch{}})(),(()=>{try{return R}catch{}})(),(()=>{try{return w}catch{}})()]).then(async()=>{let m;m=t=>{const a=x();return v(()=>{var e,r;return(r=(e=a==null?void 0:a.proxy)==null?void 0:e.$props)==null?void 0:r[t]})},b=(t,a={})=>{const e=o(void 0),r=a.prop?e:m("size"),s=a.global?e:g(),l=a.form?{size:void 0}:i(I,void 0),n=a.formItem?{size:void 0}:i(_,void 0);return v(()=>r.value||p(t)||(n==null?void 0:n.size)||(l==null?void 0:l.size)||s.value||"")},h=t=>{const a=m("disabled"),e=i(I,void 0);return v(()=>a.value||p(t)||(e==null?void 0:e.disabled)||!1)},f=()=>{const t=i(I,void 0),a=i(_,void 0);return{form:t,formItem:a}},y=(t,{formItemContext:a,disableIdGeneration:e,disableIdManagement:r})=>{e||(e=o(!1)),r||(r=o(!1));const s=o();let l;const n=v(()=>{var d;return!!(!t.label&&a&&a.inputIds&&((d=a.inputIds)==null?void 0:d.length)<=1)});return $(()=>{l=F([L(t,"id"),e],([d,c])=>{const u=d??(c?void 0:j().value);u!==s.value&&(a!=null&&a.removeInputId&&(s.value&&a.removeInputId(s.value),!(r!=null&&r.value)&&!c&&u&&a.addInputId(u)),s.value=u)},{immediate:!0})}),M(()=>{l&&l(),a!=null&&a.removeInputId&&s.value&&a.removeInputId(s.value)}),{isLabeledByFormItem:n,inputId:s}}});export{B as __tla,b as a,f as b,y as c,h as u}; diff --git a/niucloud/public/web/_nuxt/useLogin.368406ce.js b/niucloud/public/web/_nuxt/useLogin.368406ce.js new file mode 100644 index 0000000..4e2ecbc --- /dev/null +++ b/niucloud/public/web/_nuxt/useLogin.368406ce.js @@ -0,0 +1 @@ +import{aH as a,aI as e,__tla as n}from"./entry.60adbc61.js";let r,h=Promise.all([(()=>{try{return n}catch{}})()]).then(async()=>{r=function(){return{setLoginBack:t=>{a.set({key:"loginBack",data:{path:t.path,query:t.query}})},handleLoginBack:()=>{const t=a.get("loginBack");t?e().push({path:t.path,query:t.query}):e().push({path:"/"})}}}});export{h as __tla,r as u}; diff --git a/niucloud/public/web/_nuxt/vnode.a078d472.js b/niucloud/public/web/_nuxt/vnode.a078d472.js new file mode 100644 index 0000000..b30fbe8 --- /dev/null +++ b/niucloud/public/web/_nuxt/vnode.a078d472.js @@ -0,0 +1 @@ +import{aX as e,I as N,__tla as s}from"./entry.60adbc61.js";let r,T,L=Promise.all([(()=>{try{return s}catch{}})()]).then(async()=>{r=(_=>(_[_.TEXT=1]="TEXT",_[_.CLASS=2]="CLASS",_[_.STYLE=4]="STYLE",_[_.PROPS=8]="PROPS",_[_.FULL_PROPS=16]="FULL_PROPS",_[_.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",_[_.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",_[_.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",_[_.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",_[_.NEED_PATCH=512]="NEED_PATCH",_[_.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",_[_.HOISTED=-1]="HOISTED",_[_.BAIL=-2]="BAIL",_))(r||{}),T=_=>{const a=e(_)?_:[_],A=[];return a.forEach(S=>{var t;e(S)?A.push(...T(S)):N(S)&&e(S.children)?A.push(...T(S.children)):(A.push(S),N(S)&&(t=S.component)!=null&&t.subTree&&A.push(...T(S.component.subTree)))}),A}});export{r as P,L as __tla,T as f}; diff --git a/niucloud/public/web/_nuxt/word-back.77d66d93.jpg b/niucloud/public/web/_nuxt/word-back.77d66d93.jpg new file mode 100644 index 0000000..6d14661 Binary files /dev/null and b/niucloud/public/web/_nuxt/word-back.77d66d93.jpg differ diff --git a/niucloud/public/web/_nuxt/wx.6a078824.jpg b/niucloud/public/web/_nuxt/wx.6a078824.jpg new file mode 100644 index 0000000..de5f7d2 Binary files /dev/null and b/niucloud/public/web/_nuxt/wx.6a078824.jpg differ diff --git a/niucloud/public/web/favicon.ico b/niucloud/public/web/favicon.ico new file mode 100644 index 0000000..d770505 Binary files /dev/null and b/niucloud/public/web/favicon.ico differ diff --git a/niucloud/public/web/index.html b/niucloud/public/web/index.html new file mode 100644 index 0000000..f4ab75c --- /dev/null +++ b/niucloud/public/web/index.html @@ -0,0 +1,6 @@ + + + + +
          + \ No newline at end of file diff --git a/niucloud/route/app.php b/niucloud/route/app.php new file mode 100644 index 0000000..7f1409e --- /dev/null +++ b/niucloud/route/app.php @@ -0,0 +1,51 @@ + +// +---------------------------------------------------------------------- +use think\facade\Route; +use think\facade\Request; + +Route::domain('install.php', ':\app\install\controller'); +// 访问首页自动跳转到admin +Route::rule('/', function () { + if (Request::isMobile()) { + return redirect('/wap'); + } else { + return redirect('/admin'); + } +}); +// 管理后台 +Route::rule('admin', function () { + return view(app()->getRootPath() . 'public/admin/index.html'); +})->pattern(['any' => '\w+']); +// 站点端 +Route::rule('site', function () { + return view(app()->getRootPath() . 'public/admin/index.html'); +})->pattern(['any' => '\w+']); +// 站点管理端 +Route::rule('home', function () { + return view(app()->getRootPath() . 'public/admin/index.html'); +})->pattern(['any' => '\w+']); +// 装修端 +Route::rule('decorate/:any', function () { + return view(app()->getRootPath() . 'public/admin/index.html'); +})->pattern(['any' => '\w+']); +// 手机端 +Route::rule('wap', function () { + return view(app()->getRootPath() . 'public/wap/index.html'); +})->pattern(['any' => '\w+']); +// 电脑端 +Route::rule('web', function () { + return view(app()->getRootPath() . 'public/web/index.html'); +})->pattern(['any' => '\w+']); +//用于公众号授权证书 +Route::any('MP_verify_.txt', function ($name) { + header('Content-Type:text/plain; charset=utf-8'); + echo $name;exit(); +}); diff --git a/niucloud/think b/niucloud/think new file mode 100644 index 0000000..2429d22 --- /dev/null +++ b/niucloud/think @@ -0,0 +1,10 @@ +#!/usr/bin/env php +console->run(); \ No newline at end of file