// ==UserScript==
// @name 115不大助手 (full)
// @namespace com.cloud115.enhancer
// @version 0.8.7
// @author 生瓜太保
// @description Make 115 taerg again!
// @license GPLv3
// @icon https://cdnres.115.com/site/static/style_v11.2/frame/images/logo.svg
// @homepage https://greatest.deepsurf.us/zh-CN/scripts/474231-115不大助手?locale_override=1
// @supportURL https://greatest.deepsurf.us/zh-CN/scripts/474231-115不大助手?locale_override=1
// @match https://*.115.com/*
// @match https://115.com/*
// @match https://v.anxia.com/*
// @match https://anxia.com/*
// @match https://115cdn.com/*
// @match https://115vod.com/*
// @exclude https://q.115.com/*
// @exclude https://cdnassets.115.com/*
// @connect *
// @grant GM_addStyle
// @grant GM_deleteValue
// @grant GM_getValue
// @grant GM_info
// @grant GM_openInTab
// @grant GM_registerMenuCommand
// @grant GM_setClipboard
// @grant GM_setValue
// @grant GM_xmlhttpRequest
// @grant unsafeWindow
// @run-at document-body
// ==/UserScript==
(function () {
'use strict';
const d$1=new Set;const Et = async e=>{d$1.has(e)||(d$1.add(e),(t=>{typeof GM_addStyle=="function"?GM_addStyle(t):document.head.appendChild(document.createElement("style")).append(t);})(e));};
Et(' @charset "UTF-8";.ce-custom-url-help{position:fixed;top:0;left:0;z-index:10000;width:430px;height:100%;background:#fff;font-size:12px}.ce-custom-url-help .ce-custom-url-help-body{height:80%;overflow-y:auto;padding:20px 20px 300px}.ce-custom-url-help h1 a{float:right;color:#1e87f0;font-size:14px}.ce-custom-url-help h1 a:hover{color:#1e87f0;text-decoration:underline}.ce-custom-url-help table{width:100%;margin-bottom:20px}.ce-custom-url-help .ce-variable{cursor:pointer;color:#1e87f0;font-size:14px}.ce-custom-url-help .ce-variable:hover{color:#093d71}.ce-offline-config{max-height:70vh;overflow-y:auto}.ce-offline-config .ce-tips{margin-top:20px;margin-left:56px}.ce-offline-config .pure-form-message{margin-left:56px}.ce-offline-exporter{position:absolute;left:140px;top:62px;background:#f4f2ff;padding:6px 10px;border-radius:4px}.ce-offline-exporter button{margin-right:6px}.offline-exporter-config-form{width:550px;padding:10px}.swal2-input#swalDeleteFile{width:20px;padding:0;height:20px;margin:0;vertical-align:sub;cursor:pointer}body.ce-list-s #js-main{padding-top:40px}body.ce-list-s .ce-offline-exporter{top:92px}.ce-offline-searcher{position:absolute;left:140px;top:58px;background:#f4f2ff;padding:4px 10px;border-radius:4px}.ce-offline-searcher.loading form{opacity:.5;pointer-events:none;cursor:wait}.ce-offline-searcher fieldset{padding:0!important}.ce-offline-searcher .clearable-wrap{position:relative;width:320px}.ce-offline-searcher .clearable-wrap.is-empty .btn-clear{display:none}.ce-offline-searcher .clearable-wrap input{width:300px;padding-right:35px!important}.ce-offline-searcher .clearable-wrap .btn-clear{position:absolute;right:30px;top:4px;display:block}.ce-offline-searcher .form-item{display:inline-block;margin-right:10px;vertical-align:middle}.ce-offline-searcher .form-item input{padding:.3em}.ce-offline-searcher .form-item select{height:2em;padding:.1em .3em}.ce-offline-searcher .form-item label{margin-right:5px}.ce-offline-searcher .help-trigger{font-size:12px}.ce-offline-searcher .list{display:none}.ce-offline-searcher .stop-on-found{width:16px;height:16px;vertical-align:middle;cursor:pointer}.ce-offline-searcher .search-tips{position:fixed;top:146px;bottom:30px;left:0;width:100%;background:#fff;z-index:9999}.ce-offline-searcher .search-tips .tips-body{padding:20px;position:absolute;top:70px;left:50%;transform:translate(-50%,-50%);background:#f4f2ff;width:80%;border-radius:6px}.cloud115-eh-cleaner-trigger .btn-open{padding:0 6px;vertical-align:text-top;line-height:30px;border-radius:4px;background:#4faa4f}.ce-drawer{visibility:hidden}.ce-drawer.is-visible{visibility:visible}.ce-drawer.is-open .ce-drawer__overlay{opacity:.5}.ce-drawer.is-open .ce-drawer__content{transform:translate(0)}.ce-drawer__overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;z-index:200;opacity:0;transition-property:opacity;background-color:#000;user-select:none}.ce-drawer__content{position:fixed;top:0;right:0;bottom:0;height:100%;width:100%;z-index:9999;overflow:auto;transition-property:transform;display:flex;flex-direction:column;transform:translate(100%);box-shadow:0 2px 6px #777}.k-p-e{font-size:12px}.v-popper.v-popper--theme-dropdown{display:inline-block}.group-manager{width:750px;padding-top:8px}.group-manager a{font-size:12px;padding:4px 6px;margin-right:8px}.group-manager .group-label{color:#fff;font-size:12px;margin-right:10px;border-radius:4px;padding:2px 8px;background:#66acf9}.group-manager .label-readonly{color:#f40;padding:0 4px;border-radius:4px;vertical-align:middle;margin-right:6px;border:2px dashed #f40}.append-form{background:#fff;width:350px;padding:10px;border-radius:4px}.append-form input,.append-form textarea{width:100%}.group-form{background:#fff;padding:10px;border-radius:4px}.group-form .pure-control-group{margin-bottom:10px}.group-form input,.group-form textarea{width:80%}.group-form .filter-label{cursor:pointer;padding:0 4px;text-decoration:underline}.group-form input#groupLabel,.group-form input#groupUrl{display:inline-block}.group-form #groupValues{resize:vertical}.group-form .values{display:flex}.group-form .values textarea{width:98%;font-size:12px;line-height:22px}.group-form .values .v-input{flex:6}.group-form .values .v-help{flex:4}.groups-list{background:#fff;width:565px;padding:10px;border-radius:4px;box-shadow:0 0 4px #d8d8d8}.groups-list table th,.groups-list table td{padding:4px 6px}.groups-list ul li{border-bottom:1px solid #eee;padding:4px}.groups-list ul li:nth-last-child(1){border-bottom:none}.groups-list span{display:inline-block}.groups-list .p-index{width:30px}.groups-list .p-label{width:120px}.groups-list .p-actions button{margin-right:8px}.group-confirm-delete{padding:20px}.cloud115-eh-cleaner-help{font-size:12px;position:absolute;top:0;right:0;width:360px;padding:10px 10px 150px 8px;background:#fdffdf;overflow-y:auto}.cloud115-eh-cleaner-help ul{list-style:decimal}.pagination-container{margin:8px 0}.pagination-container li{margin-right:10px}.pagination-container li .paginate-buttons{padding:4px 8px;width:46px;text-align:center}.pagination-container li .paginate-buttons.active-page{color:#411cc8;font-weight:700}ul#componentContainer{padding-inline-start:0;list-style-type:none;display:inline-flex}ul#componentContainer a{text-decoration:none;display:flex;justify-content:center;align-items:center}.ce-file-list[data-v-a2b2b54c]{padding:20px 10px 50px 20px}.ce-file-list table[data-v-a2b2b54c]{font-size:12px}.ce-file-list table td[data-v-a2b2b54c]{word-break:break-all}.ce-button-group button{border:none;padding:2px 6px;border-radius:0;vertical-align:baseline}.ce-button-group button:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.ce-button-group button:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.ce-button-group button:not(:last-child){border-right:1px solid #f6f6f6}.ce-cleaner-config{max-height:500px;width:600px;overflow-y:auto;padding:14px}.ce-cleaner-config .pure-control-group label{width:230px!important}.ce-cleaner-config .ce-tips{margin-top:20px;margin-left:56px}.ce-cleaner-config .pure-form-message{margin-left:56px}.ce-empty-cleaner-trigger .btn-open{padding:0 6px;vertical-align:text-top;line-height:30px;border-radius:4px;background:#4faa4f}.ce-empty-cleaner-help[data-v-ce900ab5]{font-size:12px;position:absolute;top:0;right:0;width:360px;padding:10px 10px 150px 8px;background:#fdffdf;overflow-y:auto}.ce-empty-cleaner-help ul[data-v-ce900ab5]{list-style:decimal}#cloud115EmptyCleaner{margin-left:10px}.ce-empty-cleaner{position:relative}.ce-empty-cleaner .top-actions .pure-control-group label{width:auto;text-align:left}.ce-empty-cleaner .ec-logs{max-height:250px;overflow-y:auto;max-width:72%;background:#f4f4f4;padding:10px;line-height:22px;font-size:12px;margin-bottom:20px}.ce-empty-cleaner .ec-items{margin-bottom:30px}.ce-empty-cleaner .ec-items table{font-size:12px;width:72%}.ce-empty-cleaner .ec-items table .tr-deleted>td:not(:last-child){text-decoration:line-through}.ce-empty-cleaner .btn-global-clear{float:right}.ce-empty-cleaner-drawer{background:#fff;padding:10px 20px 200px;overflow-y:auto}.ce-empty-cleaner-drawer.loading{cursor:wait}.ce-empty-cleaner-drawer.loading button,.ce-empty-cleaner-drawer.loading input{cursor:no-drop;pointer-events:none}.input-small[data-v-f3bc02fe]{padding:2px 4px;width:auto}.ce-basic-config .pure-form-message{margin-left:82px}.ce-basic-config .avatar-preview{display:inline-block;vertical-align:middle;margin-left:10px}.ce-basic-config .pure-control-group input.input-small{padding:2px 4px;width:auto}.ce-clouddrive-config-item{margin-bottom:20px;border:1px solid #cbcbcb;border-radius:0;padding:4px}.ce-clouddrive-config-item.active{background:#fefcea}.ce-clouddrive-config-item input:not([type]){font-size:12px}.ce-clouddrive-config-item .button-error{float:right}.ce-clouddrive-config .cd-tips a{text-decoration:underline}.ce-clouddrive-config .cd-code{font-size:110%;cursor:pointer;user-select:none}.ce-list-config .pure-control-group label{width:16em!important}.ce-list-config .pure-form-message{margin-left:3em}.ce-search-config .pure-control-group label{width:15em!important}.ce-search-config .pure-form-message{margin-left:3em}.ce-tools-config{padding-bottom:100px}.ce-tools-config .pure-control-group label{width:15em!important}.ce-tools-config .pure-form-message{margin-left:3em}.menu-basic-config .pure-control-group label,.official-menu-config .pure-form label{width:170px!important;display:inline-block!important}.official-menu-config .pure-form label small{color:#999}.official-menu-config .pure-form legend .ce-label{cursor:pointer;font-size:12px;float:right}.official-menu-config .pure-form .ce-toggle{font-size:12px;cursor:pointer;color:#909399}.official-menu-config .pure-form .menu-key{opacity:0}.official-menu-config .pure-form .menu-item:hover .menu-key{opacity:1}.official-menu-config .pure-form .hidden .ce-toggle{color:#1890ff}.ce-field{background:#fff;margin-bottom:1px;padding:4px}.ce-field:hover{background:#fefcea}.ce-field label{display:inline-block!important}.ce-field input[type=checkbox],.ce-field input[type=radio]{width:18px;height:18px;cursor:pointer;vertical-align:middle}.ce-form legend{display:block;width:100%;padding:.3em 0;margin-bottom:.3em;color:#333;border-bottom:1px solid #e5e5e5}.menu-name-path-block{width:250px;max-height:405px;overflow-y:auto}.menu-name-path-block legend{text-align:center}.menu-name-path-block .ce-field label{width:180px}.menu-config-block .ce-search-sub{padding-left:20px;color:#909399}.menu-config-block span.btn-toggle-top{margin-left:8px;cursor:pointer;opacity:.3}.menu-config-block span.btn-toggle-top.active{opacity:1}.ce-menu-config input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer;vertical-align:middle}.ce-menu-config .btn-view-info{display:inline-block;margin-right:6px;vertical-align:middle;cursor:help}.menu-config-block{display:inline-block;border-radius:6px;margin:4px;vertical-align:top;padding:0 6px;background:#f9f9f9}.menu-config-block>form>legend{border:none;text-align:center;font-size:14px;color:#5092ff;padding:4px;margin-bottom:0}.menu-config-block>form>fieldset>div{background:#fff;margin-bottom:1px;padding:4px}.menu-config-block>form>fieldset>div:hover{background:#fefcea}.menu-config-block label{display:inline-block;width:120px;font-size:12px;line-height:20px;vertical-align:middle;cursor:pointer}.ce-custom-url{border-radius:4px;box-shadow:0 0 5px #eee;border:1px solid #eee;margin-bottom:20px;padding:0 10px;background:#fff}.ce-custom-url label{cursor:pointer}.ce-custom-url input:not([type]){font-size:12px}.ce-custom-url textarea{font-size:12px;resize:vertical}.ce-custom-url input[type=checkbox]{width:18px;height:18px;cursor:pointer}.ce-custom-url .ce-custom-url-index{font-size:14px;font-weight:700;margin-right:20px}.ce-custom-url legend .button-error{float:right}.ce-custom-url fieldset>div{margin-bottom:1px;padding:4px}.ce-custom-url fieldset>div:hover{background:#fefcea}.ce-custom-urls{padding-bottom:100px}.ce-custom-urls .item-icon img{vertical-align:middle}.ce-custom-urls .item-memo{display:inline-block;width:320px}.ce-play-urls{padding-bottom:100px}.ce-play-urls .item-icon img{vertical-align:middle}.ce-play-urls .item-memo{display:inline-block;width:340px}.ce-play-urls .extra-memo{font-size:12px;margin-left:10px}.ce-play-urls .extra-memo a{text-decoration:underline;color:#337ab7}.ce-anxia-config .pure-control-group label{width:9em}.ce-anxia-config .pure-form-message{margin-left:3em}.ce-share-config .pure-control-group label{width:15em!important}.ce-share-config .pure-form-message,.ce-share-config .ce-share-tool .pure-control-group{margin-left:3em}.ce-config-main .ce-intro{margin-left:35%;color:#7676ff}.ce-config-main .ce-intro small{color:#999}.ce-config-main .ce-config-main-body{padding:10px}.ce-config-main .ce-config-main-header{padding:10px;position:sticky;top:0;background:#fff;z-index:100000;box-shadow:0 1px 2px #e9e9e9}.ce-config-main .ce-config-main-header h1{display:inline;font-size:18px}.ce-config-main .ce-config-main-header .ce-config-main-close{float:right;vertical-align:top;color:#89929b;cursor:pointer;padding:2px 20px;border-radius:6px}.ce-config-main .ce-config-main-header .ce-config-main-close:hover{background:#fefcea;color:#0275ff}.ce-config-main .ce-offline-config{max-height:unset}.ce-goto-main{position:relative;margin-right:5px}.ce-goto-main.ce-goto-sug-shown .ce-goto-input-wrap{border-radius:6px 6px 0 0}.ce-goto-main.ce-goto-sug-shown .ce-goto-sug{display:block}.ce-goto-main .ce-goto-input-wrap{position:relative;overflow:hidden;border:1px solid #cfcccc;border-radius:6px}.ce-goto-main .ce-goto-input-wrap .ce-goto-input{border-radius:6px 6px 0 0;border:none;padding:4px 10px;width:100%;box-sizing:border-box;color:#2877f8;border-bottom:none}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn{position:absolute;border:none}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn:hover{color:#ff723e}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn[data-cmd]{top:5px;font-size:12px;background:#aeaeae;color:#fff;padding:0 4px;border-radius:4px;cursor:pointer}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn[data-cmd]:hover{background:#ff723e}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn[data-cmd][disabled]{background:#d7d7d7;cursor:not-allowed}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn[data-cmd=clear]{right:10px}.ce-goto-main .ce-goto-input-wrap .ce-goto-input-btn[data-cmd=toggle]{right:50px}.ce-goto-main .ce-goto-sug{display:none;position:absolute;background:#fff;width:100%;padding:10px 10px 10px 8px;max-height:250px;z-index:999999;overflow-y:auto;box-shadow:0 5px 8px #ededed;border-radius:0 0 6px 6px;border:1px solid #cfcccc;box-sizing:border-box;border-top:none}.ce-goto-main .ce-goto-sug .ce-goto-sug-item{padding:4px 10px;background:#f4f6fc;margin-bottom:4px;cursor:pointer;border-radius:4px;font-size:12px;color:#353535}.ce-goto-main .ce-goto-sug .ce-goto-sug-item:hover{background:#d7d7d7}.ce-goto-main .ce-goto-sug .ce-goto-sug-item.active{background:#f4e1cf;color:#2877f8}.ce-goto-main .ce-goto-sug .ce-goto-sug-item span.ce-goto-sug-prefix,.ce-goto-main .ce-goto-sug .ce-goto-sug-item span.ce-goto-sep{color:#a4a4a4}.ce-goto-main .ce-goto-sug .ce-goto-sug-item span.ce-goto-sug-index{display:inline-block;background:#6ab2ff;font-size:10px;min-width:20px;color:#fff;border-radius:4px;text-align:center;padding:0 2px;margin-right:4px} ');
const Ny=`/*!
Pure v3.0.0
Copyright 2013 Yahoo!
Licensed under the BSD License.
https://github.com/pure-css/pure/blob/master/LICENSE
*/.pure-button{display:inline-block;line-height:normal;white-space:nowrap;vertical-align:middle;text-align:center;cursor:pointer;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;box-sizing:border-box}.pure-button::-moz-focus-inner{padding:0;border:0}.pure-button-group{letter-spacing:-.31em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.pure-button-group{word-spacing:-.43em}.pure-button-group .pure-button{letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.pure-button{font-family:inherit;font-size:100%;padding:.5em 1em;color:#000c;border:none transparent;background-color:#e6e6e6;text-decoration:none;border-radius:2px}.pure-button-hover,.pure-button:focus,.pure-button:hover{background-image:linear-gradient(transparent,#0000000d 40%,#0000001a)}.pure-button:focus{outline:0}.pure-button-active,.pure-button:active{box-shadow:0 0 0 1px #00000026 inset,0 0 6px #0003 inset;border-color:#000}.pure-button-disabled,.pure-button-disabled:active,.pure-button-disabled:focus,.pure-button-disabled:hover,.pure-button[disabled]{border:none;background-image:none;opacity:.4;cursor:not-allowed;box-shadow:none;pointer-events:none}.pure-button-hidden{display:none}.pure-button-primary,.pure-button-selected,a.pure-button-primary,a.pure-button-selected{background-color:#0078e7;color:#fff}.pure-button-group .pure-button{margin:0;border-radius:0;border-right:1px solid rgba(0,0,0,.2)}.pure-button-group .pure-button:first-child{border-top-left-radius:2px;border-bottom-left-radius:2px}.pure-button-group .pure-button:last-child{border-top-right-radius:2px;border-bottom-right-radius:2px;border-right:none}`;Et(Ny);const Uy=`/*!
Pure v3.0.0
Copyright 2013 Yahoo!
Licensed under the BSD License.
https://github.com/pure-css/pure/blob/master/LICENSE
*/.pure-table{border-collapse:collapse;border-spacing:0;empty-cells:show;border:1px solid #cbcbcb}.pure-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.pure-table td,.pure-table th{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:.5em 1em}.pure-table thead{background-color:#e0e0e0;color:#000;text-align:left;vertical-align:bottom}.pure-table td{background-color:transparent}.pure-table-odd td{background-color:#f2f2f2}.pure-table-striped tr:nth-child(2n-1) td{background-color:#f2f2f2}.pure-table-bordered td{border-bottom:1px solid #cbcbcb}.pure-table-bordered tbody>tr:last-child>td{border-bottom-width:0}.pure-table-horizontal td,.pure-table-horizontal th{border-width:0 0 1px 0;border-bottom:1px solid #cbcbcb}.pure-table-horizontal tbody>tr:last-child>td{border-bottom-width:0}`;Et(Uy);const jy=`/*!
Pure v3.0.0
Copyright 2013 Yahoo!
Licensed under the BSD License.
https://github.com/pure-css/pure/blob/master/LICENSE
*/.pure-form input[type=color],.pure-form input[type=date],.pure-form input[type=datetime-local],.pure-form input[type=datetime],.pure-form input[type=email],.pure-form input[type=month],.pure-form input[type=number],.pure-form input[type=password],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=text],.pure-form input[type=time],.pure-form input[type=url],.pure-form input[type=week],.pure-form select,.pure-form textarea{padding:.5em .6em;display:inline-block;border:1px solid #ccc;box-shadow:inset 0 1px 3px #ddd;border-radius:4px;vertical-align:middle;box-sizing:border-box}.pure-form input:not([type]){padding:.5em .6em;display:inline-block;border:1px solid #ccc;box-shadow:inset 0 1px 3px #ddd;border-radius:4px;box-sizing:border-box}.pure-form input[type=color]{padding:.2em .5em}.pure-form input[type=color]:focus,.pure-form input[type=date]:focus,.pure-form input[type=datetime-local]:focus,.pure-form input[type=datetime]:focus,.pure-form input[type=email]:focus,.pure-form input[type=month]:focus,.pure-form input[type=number]:focus,.pure-form input[type=password]:focus,.pure-form input[type=search]:focus,.pure-form input[type=tel]:focus,.pure-form input[type=text]:focus,.pure-form input[type=time]:focus,.pure-form input[type=url]:focus,.pure-form input[type=week]:focus,.pure-form select:focus,.pure-form textarea:focus{outline:0;border-color:#129fea}.pure-form input:not([type]):focus{outline:0;border-color:#129fea}.pure-form input[type=checkbox]:focus,.pure-form input[type=file]:focus,.pure-form input[type=radio]:focus{outline:thin solid #129FEA;outline:1px auto #129FEA}.pure-form .pure-checkbox,.pure-form .pure-radio{margin:.5em 0;display:block}.pure-form input[type=color][disabled],.pure-form input[type=date][disabled],.pure-form input[type=datetime-local][disabled],.pure-form input[type=datetime][disabled],.pure-form input[type=email][disabled],.pure-form input[type=month][disabled],.pure-form input[type=number][disabled],.pure-form input[type=password][disabled],.pure-form input[type=search][disabled],.pure-form input[type=tel][disabled],.pure-form input[type=text][disabled],.pure-form input[type=time][disabled],.pure-form input[type=url][disabled],.pure-form input[type=week][disabled],.pure-form select[disabled],.pure-form textarea[disabled]{cursor:not-allowed;background-color:#eaeded;color:#cad2d3}.pure-form input:not([type])[disabled]{cursor:not-allowed;background-color:#eaeded;color:#cad2d3}.pure-form input[readonly],.pure-form select[readonly],.pure-form textarea[readonly]{background-color:#eee;color:#777;border-color:#ccc}.pure-form input:focus:invalid,.pure-form select:focus:invalid,.pure-form textarea:focus:invalid{color:#b94a48;border-color:#e9322d}.pure-form input[type=checkbox]:focus:invalid:focus,.pure-form input[type=file]:focus:invalid:focus,.pure-form input[type=radio]:focus:invalid:focus{outline-color:#e9322d}.pure-form select{height:2.25em;border:1px solid #ccc;background-color:#fff}.pure-form select[multiple]{height:auto}.pure-form label{margin:.5em 0 .2em}.pure-form fieldset{margin:0;padding:.35em 0 .75em;border:0}.pure-form legend{display:block;width:100%;padding:.3em 0;margin-bottom:.3em;color:#333;border-bottom:1px solid #e5e5e5}.pure-form-stacked input[type=color],.pure-form-stacked input[type=date],.pure-form-stacked input[type=datetime-local],.pure-form-stacked input[type=datetime],.pure-form-stacked input[type=email],.pure-form-stacked input[type=file],.pure-form-stacked input[type=month],.pure-form-stacked input[type=number],.pure-form-stacked input[type=password],.pure-form-stacked input[type=search],.pure-form-stacked input[type=tel],.pure-form-stacked input[type=text],.pure-form-stacked input[type=time],.pure-form-stacked input[type=url],.pure-form-stacked input[type=week],.pure-form-stacked label,.pure-form-stacked select,.pure-form-stacked textarea{display:block;margin:.25em 0}.pure-form-stacked input:not([type]){display:block;margin:.25em 0}.pure-form-aligned input,.pure-form-aligned select,.pure-form-aligned textarea,.pure-form-message-inline{display:inline-block;vertical-align:middle}.pure-form-aligned textarea{vertical-align:top}.pure-form-aligned .pure-control-group{margin-bottom:.5em}.pure-form-aligned .pure-control-group label{text-align:right;display:inline-block;vertical-align:middle;width:10em;margin:0 1em 0 0}.pure-form-aligned .pure-controls{margin:1.5em 0 0 11em}.pure-form .pure-input-rounded,.pure-form input.pure-input-rounded{border-radius:2em;padding:.5em 1em}.pure-form .pure-group fieldset{margin-bottom:10px}.pure-form .pure-group input,.pure-form .pure-group textarea{display:block;padding:10px;margin:0 0 -1px;border-radius:0;position:relative;top:-1px}.pure-form .pure-group input:focus,.pure-form .pure-group textarea:focus{z-index:3}.pure-form .pure-group input:first-child,.pure-form .pure-group textarea:first-child{top:1px;border-radius:4px 4px 0 0;margin:0}.pure-form .pure-group input:first-child:last-child,.pure-form .pure-group textarea:first-child:last-child{top:1px;border-radius:4px;margin:0}.pure-form .pure-group input:last-child,.pure-form .pure-group textarea:last-child{top:-2px;border-radius:0 0 4px 4px;margin:0}.pure-form .pure-group button{margin:.35em 0}.pure-form .pure-input-1{width:100%}.pure-form .pure-input-3-4{width:75%}.pure-form .pure-input-2-3{width:66%}.pure-form .pure-input-1-2{width:50%}.pure-form .pure-input-1-3{width:33%}.pure-form .pure-input-1-4{width:25%}.pure-form-message-inline{display:inline-block;padding-left:.3em;color:#666;vertical-align:middle;font-size:.875em}.pure-form-message{display:block;color:#666;font-size:.875em}@media only screen and (max-width :480px){.pure-form button[type=submit]{margin:.7em 0 0}.pure-form input:not([type]),.pure-form input[type=color],.pure-form input[type=date],.pure-form input[type=datetime-local],.pure-form input[type=datetime],.pure-form input[type=email],.pure-form input[type=month],.pure-form input[type=number],.pure-form input[type=password],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=text],.pure-form input[type=time],.pure-form input[type=url],.pure-form input[type=week],.pure-form label{margin-bottom:.3em;display:block}.pure-group input:not([type]),.pure-group input[type=color],.pure-group input[type=date],.pure-group input[type=datetime-local],.pure-group input[type=datetime],.pure-group input[type=email],.pure-group input[type=month],.pure-group input[type=number],.pure-group input[type=password],.pure-group input[type=search],.pure-group input[type=tel],.pure-group input[type=text],.pure-group input[type=time],.pure-group input[type=url],.pure-group input[type=week]{margin-bottom:0}.pure-form-aligned .pure-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.pure-form-aligned .pure-controls{margin:1.5em 0 0}.pure-form-message,.pure-form-message-inline{display:block;font-size:.75em;padding:.2em 0 .8em}}`;Et(jy);const zy=".resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:#000c;color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}";Et(zy);const Hy=".text-center{text-align:center}.text-bold{font-weight:700}.text-cross{text-decoration:line-through}.text-ul{text-decoration:underline}.text-ul-dot{text-decoration:underline dotted}.text-primary{color:#1890ff}.text-success{color:#13ce66}.text-warning{color:#ffba00}.text-danger{color:#ff4949}.text-info{color:#909399}.ce-label{padding:2px 4px;background:#909399;color:#fff;border-radius:4px}.ce-label.ce-label-primary{background:#1890ff}.ce-label.ce-label-warning{background:#ffba00}.ce-label.ce-label-danger{background:#ff4949}.ce-label.ce-label-success{background:#13ce66}.ce-label.ce-label-primary-plain{color:#409eff;background:#ecf5ff}.ce-tag-plain{padding:1px 4px;border:1px solid #1890ff;border-radius:4px}input.ce-checkbox{width:20px;height:20px;cursor:pointer}.ce-hidden{display:none!important}";Et(Hy);const Vy='@charset "UTF-8";.tabs-component .tabs-component-tabs{border:solid 1px #ddd;border-radius:6px;margin-bottom:5px}@media (min-width: 700px){.tabs-component .tabs-component-tabs{border:0;align-items:stretch;display:flex;justify-content:flex-start;margin-bottom:1px}}.tabs-component .tabs-component-tabs .tabs-component-tab{color:#999;font-size:14px;font-weight:600;margin-right:0;list-style:none;border-bottom:dotted 1px #ddd}.tabs-component .tabs-component-tabs .tabs-component-tab:hover{color:#666}.tabs-component .tabs-component-tabs .tabs-component-tab.is-disabled *{color:#cdcdcd;cursor:not-allowed!important}.tabs-component .tabs-component-tabs .tabs-component-tab.is-active{color:#000}.tabs-component .tabs-component-tabs .tabs-component-tab .tabs-component-tab-a{align-items:center;color:inherit;display:flex;padding:.75em 1em;text-decoration:none}@media (min-width: 700px){.tabs-component .tabs-component-tabs .tabs-component-tab{background-color:#fff;border:solid 1px #ddd;border-radius:3px 3px 0 0;margin-right:.5em;transform:translateY(2px);transition:transform .3s ease}.tabs-component .tabs-component-tabs .tabs-component-tab.is-active{border-bottom:solid 1px #fff;z-index:2;transform:translateY(2px)}}.tabs-component .tabs-component-panels{padding:1em 0}@media (min-width: 700px){.tabs-component .tabs-component-panels{background-color:#fff;border:solid 1px #ddd;border-radius:0 6px 6px;box-shadow:0 0 10px #0000000d;padding:1em}}.tabs-component .tabs-component-btn{cursor:pointer;background:#e1ecf4;border-radius:3px;border:1px solid #7aa7c7;padding:4px 8px;color:#39739d}.tabs-component .tabs-component-btn:hover{background-color:#b3d3ea;color:#2c5777}.tabs-component .tabs-component-btn:active{background-color:#a0c7e4;box-shadow:none;color:#2c5777}.ce-tips{background:#eee;border-radius:4px;padding:4px;font-size:12px;color:#595959;margin-bottom:10px}.ce-hr{border:0;height:1px;background-image:linear-gradient(to right,#0000,#ccc,#0000)}.ce-config input[type=checkbox]{width:18px;height:18px;cursor:pointer}.ce-config legend{font-size:16px;color:#1890ff}.ce-config-help{font-size:11px;cursor:pointer}.ce-ec-detail{text-align:left;font-size:14px}.ce-ec-detail span{color:#1890ff;display:inline-block;width:90px;text-align:right}.ce-textarea-trans{color:#7d7d7d;border:none;margin:0;padding:0}.swal2-container{z-index:99999999!important}.ce-swal-text-left .swal2-html-container{text-align:left!important}.swal2-checkbox input{width:20px;height:20px;cursor:pointer}';Et(Vy);const qy='@charset "UTF-8";div[class^=fp-].hidden-watermark{display:none!important}div.list-header[rel=list_header]{display:flex!important}div#exsame_list_content>ul{border-bottom:2px dashed #2778f8;padding-bottom:6px}';Et(qy);var Wy=typeof GM_addStyle<"u"?GM_addStyle:void 0,Ky=typeof GM_deleteValue<"u"?GM_deleteValue:void 0,ic=typeof GM_getValue<"u"?GM_getValue:void 0,Gy=typeof GM_info<"u"?GM_info:void 0,Ms=typeof GM_openInTab<"u"?GM_openInTab:void 0,vs=typeof GM_registerMenuCommand<"u"?GM_registerMenuCommand:void 0,Jy=typeof GM_setClipboard<"u"?GM_setClipboard:void 0,ru=typeof GM_setValue<"u"?GM_setValue:void 0,Ia=typeof GM_xmlhttpRequest<"u"?GM_xmlhttpRequest:void 0,Yy={name:"115不大助手",version:"0.8.7"},mt=(e=>(e.basic="basic_config",e.anxia="anxia_config",e.clouddrive="clouddrive_configs",e.list="list_config",e.enabledCustomUrlsForSearch="enabled_custom_urls_for_search",e.enabledCustomUrlsForPlay="enabled_custom_urls_for_play",e.menuCustomUrlsForSearch="menu_custom_urls_for_search",e.menuCustomUrlsForPlay="menu_custom_urls_for_play",e.menu="ce_menu_config",e.hiddenOfficialMenuKeys="hidden_official_menu_keys",e.offline="offlineExporterConfig",e.search="search_config",e.tools="tools_config",e.cleanerConfig="cleanerConfig",e.cleanerSuffixGroups="suffixGroups",e.cleanerKeywordGroups="keywordGroups",e.emptyCleanerConfig="emptyCleanerConfig",e.share="share",e))(mt||{});const sc=Object.values(mt),Vp=async(e,t)=>ic(e,t),Qy=async(e,t)=>ru(e,t),qp=async e=>Ky(e),Xy=async()=>{for(const e of sc)await qp(e);},Wp=async()=>{const e={};for(const t of sc)e[t]=await Vp(t,{});return e};async function Zy(){const e=await Wp(),t=Yy;e._meta={name:t.name,version:t.version,time:new Date().toLocaleString(),browser:navigator.userAgent},e._schema="pan115_enhancer_configs";const n=document.createElement("a");n.href=URL.createObjectURL(new Blob([JSON.stringify(e,null,2)],{type:"application/json"})),n.download=`${t.name}-v${t.version}-配置.json`,n.click();}async function eb(){return new Promise((e,t)=>{const n=document.createElement("input");n.type="file",n.accept="application/json",n.oncancel=()=>{t("取消选择文件!");},n.onchange=async()=>{const o=n.files&&n.files[0];if(!o){t("未选择文件!");return}const i=await new Promise((r,a)=>{const l=new FileReader;l.onload=()=>{try{r(JSON.parse(l.result));}catch(c){a(c);}},l.onerror=()=>{a(l.error);},l.readAsText(o);});if(i._schema!=="pan115_enhancer_configs"){t("这不是一个脚本配置文件!");return}const s=[];for(const r of sc)s.push(r),i[r]&&await Xe.set(r,i[r]);e({data:i,importedKeys:s});},n.click();})}const Xe={get:Vp,set:Qy,remove:qp,clear:Xy,getAll:Wp};function Da(e,...t){return new e(t[0])}async function qo(e,t,n){return new Promise(async(o,i)=>{if(typeof e!="function"){i("提供的参数`fulfill`不是一个Function!");return}let s=false;e(l=>{s=true,o(l);});let r=setInterval(async()=>{if(s){clearTimeout(a),clearInterval(r);return}e(l=>{clearTimeout(a),clearInterval(r),o(l);});},t),a=setTimeout(()=>{clearInterval(r),i("超时");},n);})}async function Mt(e){return new Promise(t=>{setTimeout(t,e);})}function lt(e,t,n){let o;return function(...i){const s=()=>{o=void 0,e.apply(this,i);};clearTimeout(o),o=setTimeout(s,t);}}function ci(e,t){t=t||window,t.postMessage(e);}function Zs(e,t=location.href){const n=new RegExp("(\\?|#|&)"+e+"=([^&#]*)(&|#|$)"),o=t.match(n);return o?o[2]:""}function di(){return Math.floor(Date.now()/1e3)}async function tb(e){const t=Symbol("pending");return await Promise.race([e.then(()=>true,()=>true),new Promise(o=>setTimeout(()=>o(t),0))])!==t}function Kp(e){const t=e.target;e.key==="a"&&(e.ctrlKey||e.metaKey)&&t.select();}function Gp(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement}function nb(e){e.addEventListener("keydown",t=>{const n=t.target;Gp(n)&&Kp(t);});}function Jp(e,t=.2,n=.5){e.style.transition=`opacity ${n}s`,e.style.opacity=t.toString(),setTimeout(()=>{e.remove();},500);}function ob(e,t){let n=document.querySelector(e);return n||(n=ze(t)),n}function ze(e){const t=document.createElement("div");if(t.innerHTML=e.trim(),t.childNodes.length!==1||!(t.firstChild instanceof HTMLElement))throw new Error("Invalid HTML string. It must contain exactly one root element.");return t.firstChild}function Yp(e,t=document,n=XPathResult.ORDERED_NODE_SNAPSHOT_TYPE){const o=[],i=document.evaluate(e,t,null,n,null);for(let s=0;s<i.snapshotLength;s++){const r=i.snapshotItem(s);r&&o.push(r);}return o}async function et(e,t=100,n=12e4,o=document){const i=await rc(e,t,n,o);if(i.length)return i[0];throw new Error(`未找到元素:${e}`)}async function rc(e,t=100,n=12e4,o=document){const i=e.indexOf("//")===0;function s(r){if(i){const a=Yp(e);a.length>0&&r(a);}else {const a=o.querySelectorAll(e);a.length&&r(Array.from(a));}}try{return await qo(s,t,n)}catch(r){throw console.warn("[find]",r),new Error(`查找元素超时:${e}`)}}async function Kn(e,t=100,n=12e4){const o=e.indexOf("//")===0;function i(s){if(o){const r=Yp(e);r.length>0&&s(unsafeWindow.$(r));}else {const r=unsafeWindow.$(e);r.length&&s(r);}}try{return await qo(i,t,n)}catch(s){throw console.warn("[findWithJQuery]",s),new Error(`查找元素超时:${e}`)}}async function ib(e,t,n){const o=await et(e),i=new MutationObserver(t);return n={attributes:false,childList:true,subtree:false,...n},i.observe(o,n),i}function Ue(e){return document.querySelector(e)}function sb(e){return Array.from(document.querySelectorAll(e))}const rb=["ts","wmv","3pg","mp4","mpg","m4v","iso","mkv","avi","dvd","wmv","i00","i01","i02","i03","i04","i05","i06","i07","i08","i09","i10","i11","i12","mpeg","mov","m2ts","bup","vob","rmvb","md0","md1","md2","md3","md4","md5","mdf","mds","nrg","flv","asf"],ab=["jpg","jpeg","png","gif","bmp","svg","webp","tiff","tif","ico","heic","heif","avif","jfif","pjpeg","pjp","apng","raw","cr2","nef","orf","sr2","dng"],lb=["mp3","wav","wma","ogg","ape","flac","aac","m4a","opus","mp2","ra","ram","au","3gp","amr","alac","dsd","dsf","dff","aiff","aif","caf","ac3","dts","tta","wv","mid","midi","kar"];var au=(e=>(e.video="video",e.audio="audio",e.image="image",e.other="other",e))(au||{});function Gr(e,t,n="text/plain"){const o=document.createElement("a");document.body.appendChild(o),o.setAttribute("style","display:none");const i=new Blob([e],{type:n}),s=window.URL.createObjectURL(i);o.href=s,o.download=t,o.click(),window.URL.revokeObjectURL(s);}function Wi(e,t=2){if(Number.isNaN(e)||(e=typeof e=="string"?parseInt(e):e,!e))return "0";const n=1024,o=t,i=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],s=Math.floor(Math.log(e)/Math.log(n));return parseFloat((e/Math.pow(n,s)).toFixed(o))+" "+i[s]}function Ad(e){const t=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],n=new RegExp(`^(\\d+(?:\\.\\d+)?)(${t.join("|")})$`,"i"),o=e.match(n);if(!o)throw new Error(`无效的文件大小!${e}`);const i=parseFloat(o[1]),s=o[2].toUpperCase(),r=t.indexOf(s);if(r<0)throw new Error(`无效的文件大小!${e}`);return i*Math.pow(1024,r)}function Qp(e){return e?rb.indexOf(e.toLowerCase())>-1:false}function Xp(e){return e?ab.indexOf(e.toLowerCase())>-1:false}function Zp(e){return e?lb.indexOf(e.toLowerCase())>-1:false}function ub(e){const t=e.lastIndexOf(".");if(t===-1)return {base:e,ext:""};const n=e.substring(0,t),o=e.substring(t+1);return {base:n,ext:o}}function cb(e){const{ext:t}=ub(e);return Qp(t)?"video":Zp(t)?"audio":Xp(t)?"image":"other"}var ot=(e=>(e.openConfig="openConfig",e.closeConfig="closeConfig",e.basicConfigChange="basicConfigChange",e.listConfigChange="listConfigChange",e.searchConfigChange="searchConfigChange",e.toolsConfigChange="toolsConfigChange",e.listRendered="listRendered",e.shareConfigChange="shareConfigChange",e.topDomChanged="topDomChange",e.officialMenuStyleChange="officialMenuStyleChange",e.renderMenus="renderMenus",e))(ot||{}),yt=(e=>(e.basic="basic",e.clouddrive="clouddrive",e.list="list",e.search="search",e.menus="menus",e.searchMenus="searchMenus",e.playMenus="playMenus",e.offline="offline",e.tools="tools",e.anxia="anxia",e.share="share",e.about="about",e))(yt||{});const _n={basic:"基础设置",clouddrive:"CloudDrive",list:"列表增强",search:"搜索增强",menus:"菜单设置",searchMenus:"搜索菜单",playMenus:"播放菜单",offline:"离线管理",tools:"工具",anxia:"在线播放",share:"分享增强",about:"关于"};class wn{static EVENT_CLOSE_MENU="__closeMenu";menuType=Ie.listItemHover;injectDecider;keyAttributeName="id";key="";label="";icon="";showIcon=true;title="";onClick=async(t,n)=>{};onMouseOver;onMouseOut;subItems=[];subItemsLocator;isDivider=false;menuItemTemplates={[Ie.dirContext]:{body:`<li id="{key}" class="ce-menu dir-context-menu">
<a href="javascript:;">{icon}<span>{label}</span></a>
</li>`,bodyForMulti:`<li id="{key}" class="ce-menu ce-menu-parent dir-context-menu">
{icon}<span class="ce-menu-trigger">{label}</span>
<div class="ce-menu-dropdown sub-items"></div>
</span>`,divider:'<li class="ce-menu-divider"></li>'},[Ie.dirContextSub]:{body:`<span id="{key}" class="ce-menu dir-context-menu-sub sub-item">
{icon}<span>{label}</span>
</span>`,divider:'<span class="ce-menu-divider"></span>'},[Ie.listItemContext]:{body:`<li id="{key}" class="ce-menu list-item-context-menu">
<a href="javascript:;">{icon}<span>{label}</span></a>
</li>`,bodyForMulti:`<li id="{key}" class="ce-menu ce-menu-parent list-item-context-menu">
{icon}<span class="ce-menu-trigger">{label}</span>
<div class="ce-menu-dropdown sub-items"></div>
</span>`,divider:'<li class="ce-menu-divider"></li>'},[Ie.listItemContextSub]:{body:'<span id="{key}" class="ce-menu list-item-context-menu-sub sub-item">{label}</span>',divider:'<span class="ce-menu-divider"></span>'},[Ie.listItemHover]:{body:`<a href="javascript:;" id="{key}" class="ce-menu list-item-hover-menu" style="">
{icon}<span>{label}</span>
</a>`,bodyForMulti:`<span class="ce-menu ce-menu-parent list-item-hover-menu">
{icon}<span class="ce-menu-trigger">{label}</span>
<div class="ce-menu-dropdown sub-items"></div>
</span>`,divider:'<a class="ce-menu-divider"></a>'},[Ie.listItemHoverSub]:{body:`<a href="javascript:;" id="{key}" class="ce-menu list-item-hover-menu-sub" style="">
{icon}<span>{label}</span>
</a>`,divider:'<a class="ce-menu-divider"></a>'},[Ie.selection]:{body:'<li id="{key}" class="ce-menu selection-menu">{icon}<span>{label}</span></li>',bodyForMulti:`<li class="ce-menu ce-menu-parent selection-menu">
{icon}<span class="ce-menu-trigger">{label}</span>
<div class="ce-menu-dropdown sub-items"></div>
</li>`,divider:'<li class="ce-menu-divider"></li>'},[Ie.selectionSub]:{body:`<a href="javascript:;" id="{key}" class="ce-menu selection-menu-sub" style="">
{icon}<span>{label}</span>
</a>`,divider:'<a class="ce-menu-divider"></a>'},[Ie.shareListItemHover]:{body:`<a href="javascript:;" id="{key}" class="ce-menu share-list-item-hover-menu list-item-hover-menu" style="">
{icon}<span>{label}</span>
</a>`,bodyForMulti:`<span class="ce-menu ce-menu-parent share-list-item-hover-menu list-item-hover-menu">
{icon}<span class="ce-menu-trigger">{label}</span>
<div class="ce-menu-dropdown sub-items"></div>
</span>`,divider:'<a class="ce-menu-divider"></a>'},[Ie.shareListItemHoverSub]:{body:`<a href="javascript:;" id="{key}" class="ce-menu share-list-item-hover-menu-sub list-item-hover-menu-sub" style="">
{icon}<span>{label}</span>
</a>`,divider:'<a class="ce-menu-divider"></a>'}};constructor(t){Object.assign(this,t);}async decideInject(t){return this.injectDecider?await this.injectDecider(this,t):true}async render(){if(!this.menuType)throw new Error("未指定菜单类型");const t=this.menuItemTemplates[this.menuType];if(!t)throw new Error(`未找到菜单模板:${this.menuType}`);if(this.isDivider){if(!t.divider)throw new Error("未定义模版的divider内容!");const r=document.createElement("div");return r.innerHTML=t.divider,r.firstElementChild}let n=t.body;if(this.subItems&&this.subItems.length>0){if(!t.bodyForMulti)throw new Error("未找到 bodyFormMulti 模版");n=t.bodyForMulti;}const o=document.createElement("div");let i="";this.icon&&this.showIcon&&(this.icon.match(/^(http|https|data:image)/)?i=`<img class="ce-menu-icon" src="${this.icon}" referrerpolicy="no-referrer" />`:this.icon.match(/^data-text:/)?i=`<i class="ce-menu-icon">${this.icon.replace(/^data-text:/,"")}</i>`:i=`<i class="ce-menu-icon ${this.icon}"></i>`),o.innerHTML=n.replace(/{key}/g,this.key).replace(/{label}/g,this.label).replace(/{icon}/g,i);const s=o.firstElementChild;if(i&&s.classList.add("ce-menu-has-icon"),s.setAttribute("title",this.title||""),this.onClick&&(s.addEventListener("click",async r=>{this.onClick&&this.onClick(this,r);}),s.addEventListener("auxclick",async r=>{this.onClick&&this.onClick(this,r);}),s.addEventListener("mousedown",r=>{r.stopPropagation();})),this.onMouseOver&&s.addEventListener("mouseover",async r=>{this.onMouseOver&&this.onMouseOver(this,r);}),this.onMouseOut&&s.addEventListener("mouseout",async r=>{this.onMouseOut&&this.onMouseOut(this,r);}),this.subItems&&this.subItems.length>0){const r=s.querySelector(".sub-items"),a=[];for(const l of this.subItems){const c=await l.render();a.push(c);}r?.append(...a);}return s}async closeMenu(){try{unsafeWindow.Core.FileMenu.HideRight();}catch(t){console.warn('[MenuItem.closeMenu] Failed to call "unsafeWindow.Core.FileMenu.HideRight()"',t);}document.dispatchEvent(new CustomEvent(wn.EVENT_CLOSE_MENU,{detail:{menu:this}}));}async decorateContainer(t){t.setAttribute("ce-done","");}}async function La(e,t){t.stopPropagation(),t.preventDefault();const n=t.target,o=$(n).closest(".ce-menu-parent"),i=o.find(".ce-menu-dropdown");o.addClass("ce-menu-dropdown-opened"),i.addClass("ce-menu-dropdown-active");}async function Ta(e,t){t.stopPropagation(),t.preventDefault();const n=t.target,o=$(n).closest(".ce-menu-parent"),i=o.find(".ce-menu-dropdown");o.removeClass("ce-menu-dropdown-opened"),i.removeClass("ce-menu-dropdown-active");}class db extends wn{isDivider=true}class er{items=[];siblingSelector="";position=yo.after;useObserver=true;observeTarget=document.body;disposeObserverAfterInjection=true;menuType=void 0;_observer;injectDecider;constructor(t){Object.assign(this,t),this.handleMessage();}async createObserver(){return new MutationObserver(async([n])=>{n.type==="childList"&&await this.handleChildListMutation(n);})}handleMessage(){window.addEventListener("message",async t=>{const{event:n,body:o={}}=t.data;if(n===ot.renderMenus&&o.type===this.menuType){const i=[];document.querySelectorAll("#js_data_list .list-contents > ul > li .file-opr:not([ce-done])").forEach(s=>{i.push(s);}),i.length&&await this.perform(i);}},false);}async observe(){if(this._observer=await this.createObserver(),!this._observer)return;const t=await this.getObserveTarget();t&&this.startObserver(t);}async startObserver(t){this._observer&&this._observer.observe(t,{childList:true});}async disposeObserver(){this.disposeObserverAfterInjection&&this._observer&&this._observer.disconnect();}async getObserveTarget(){return typeof this.observeTarget=="string"?await et(this.observeTarget,800,864e5*7):this.observeTarget}async isMutationMatch(t){const n=t.addedNodes[0];if(n&&n.nodeType!==Node.ELEMENT_NODE)return false;switch(this.menuType,Ie.dirContext,this.menuType){case Ie.listItemHover:case Ie.shareListItemHover:return true;case Ie.listItemContext:return n&&n.classList.contains("context-menu")&&!!n.querySelector('[val="report"]');case Ie.selection:return true;case Ie.dirContext:return n&&n.classList.contains("context-menu")&&!!n.querySelector('[val="upload"]');default:return false}}async handleChildListMutation(t){if(!await this.isMutationMatch(t))return;const n=await this.getContainersByMutation(t);await this.perform(n);}async perform(t){for(const n of t)await this.injectToContainer(n);}async getSibling(t){return t.querySelector(this.siblingSelector)}async getContainersByMutation(t){const n=t.addedNodes[0];return await this.getContainersByElement(n)}async getContainersByElement(t){let n=[];switch(this.menuType){case Ie.listItemHover:document.querySelectorAll("#js_data_list .list-contents > ul:not([ce-done]) > li .file-opr").forEach(o=>{n.push(o);});break;case Ie.shareListItemHover:document.querySelectorAll("ul#js-list:not([ce-done]) > li .file-opr").forEach(o=>{n.push(o);});break;case Ie.listItemContext:n=[t];break;case Ie.selection:document.querySelectorAll("#js_top_panel_box #js_operate_box").forEach(o=>{n.push(o);});break;case Ie.dirContext:n=[t];break}return n}async shouldInjectMenuItem(t,n){return await n.decideInject(t)?await this.decideInject(n,t):false}async decideInject(t,n){return this.injectDecider?await this.injectDecider(t,n):true}async injectToContainer(t){const n=await this.getSibling(t);if(!n)return;let o=this.items.slice();this.position===yo.after&&(o=o.reverse());for(let i=0;i<o.length;i++){const s=o[i];if(!await this.shouldInjectMenuItem(t,s))continue;const r=await s.render();this.position===yo.before?n.insertAdjacentElement("beforebegin",r):n.insertAdjacentElement("afterend",r),await s.decorateContainer(t);}}async isFileContainer(t){return !!t.getAttribute("file_id")}async isDirContainer(t){return !!t.getAttribute("cate_id")}async inject(){if(!(!this.menuType||!this.items.length||!this.siblingSelector))if(this.useObserver)await this.observe();else {const t=await this.getObserveTarget();if(!t)return;await this.injectToContainer(t);}}}async function fb(e,t){return !!$(t).closest("li").attr("file_id")}async function pb(e,t){return !!$(t).closest("li").attr("cate_id")}async function hb(e,t){const n=$(t).closest("li");if(n.attr("cate_id")||n.attr("iv")==="1")return true;const o=n.attr("ico");return o?Qp(o)||Zp(o)||Xp(o):false}function tr(e){return {copyFullName:true,copyPureName:true,copyId:true,copyPickCode:false,copySha1:true,copySha1WithName:true,copyUnixPath:true,copyWinPath:true,copyParentUnixPath:true,copyParentWinPath:true,viewInCloudDrive:true,...e}}function mb(e){return {enabled:true,rename:true,delete:true,play:true,copyNames:true,namePathConfig:tr(),search:false,move:true,copy:true,copyTo:true,viewProp:true,showSubFolderSize:true,showSubFolderSizeAndSort:false,exportList:false,viewInCloudDrive:true,topLevelMenus:["rename","delete","play"],...e}}class Jt extends wn{menuType=Ie.dirContext;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ta;}}class ac extends wn{menuType=Ie.dirContextSub}class gb extends er{menuType=Ie.dirContext;useObserver=true;observeTarget=document.body;disposeObserverAfterInjection=true}function wb(e){return {enabled:true,copyNames:true,namePathConfig:tr(),viewInCloudDrive:true,...e}}class nr extends wn{menuType=Ie.listItemContext;constructor(t){super(t);let n;const o=(r,a)=>{a.stopPropagation(),a.preventDefault(),clearTimeout(n);const l=a.target,c=$(l).closest(".ce-menu-parent"),u=c.find(".ce-menu-dropdown");c.addClass("ce-menu-dropdown-opened"),u.addClass("ce-menu-dropdown-active"),r.subItems&&r.subItemsLocator&&r.subItemsLocator(r,a);},i=(r,a)=>{a.stopPropagation(),a.preventDefault();const l=a.target;n=setTimeout(()=>{const c=$(l).closest(".ce-menu-parent"),u=c.find(".ce-menu-dropdown");c.removeClass("ce-menu-dropdown-opened"),u.removeClass("ce-menu-dropdown-active");},350);},s=(r,a)=>{const l=a.target;if(l.classList.contains("ce-menu-dropdown"))return;const c=$(l).closest(".ce-menu-parent"),u=c.find(".ce-menu-dropdown"),f=c[0].getBoundingClientRect();u.css({position:"fixed",left:f.right,top:f.top});};this.subItems?.length&&(this.onMouseOver=o,this.onMouseOut=i,this.subItemsLocator=s);}}class yb extends er{menuType=Ie.listItemContext}/*!
* sweetalert2 v11.22.4
* Released under the MIT License.
*/function eh(e,t,n){if(typeof e=="function"?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function bb(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function Pd(e,t){return e.get(eh(e,t))}function vb(e,t,n){bb(e,t),t.set(e,n);}function xb(e,t,n){return e.set(eh(e,t),n),n}const _b=100,De={},Cb=()=>{De.previousActiveElement instanceof HTMLElement?(De.previousActiveElement.focus(),De.previousActiveElement=null):document.body&&document.body.focus();},kb=e=>new Promise(t=>{if(!e)return t();const n=window.scrollX,o=window.scrollY;De.restoreFocusTimeout=setTimeout(()=>{Cb(),t();},_b),window.scrollTo(n,o);}),th="swal2-",Sb=["container","shown","height-auto","iosfix","popup","modal","no-backdrop","no-transition","toast","toast-shown","show","hide","close","title","html-container","actions","confirm","deny","cancel","footer","icon","icon-content","image","input","file","range","select","radio","checkbox","label","textarea","inputerror","input-label","validation-message","progress-steps","active-progress-step","progress-step","progress-step-line","loader","loading","styled","top","top-start","top-end","top-left","top-right","center","center-start","center-end","center-left","center-right","bottom","bottom-start","bottom-end","bottom-left","bottom-right","grow-row","grow-column","grow-fullscreen","rtl","timer-progress-bar","timer-progress-bar-container","scrollbar-measure","icon-success","icon-warning","icon-info","icon-question","icon-error","draggable","dragging"],H=Sb.reduce((e,t)=>(e[t]=th+t,e),{}),$b=["success","warning","info","question","error"],Jr=$b.reduce((e,t)=>(e[t]=th+t,e),{}),nh="SweetAlert2:",lc=e=>e.charAt(0).toUpperCase()+e.slice(1),Gt=e=>{console.warn(`${nh} ${typeof e=="object"?e.join(" "):e}`);},vi=e=>{console.error(`${nh} ${e}`);},Id=[],Eb=e=>{Id.includes(e)||(Id.push(e),Gt(e));},oh=(e,t=null)=>{Eb(`"${e}" is deprecated and will be removed in the next major release.${t?` Use "${t}" instead.`:""}`);},Ma=e=>typeof e=="function"?e():e,uc=e=>e&&typeof e.toPromise=="function",or=e=>uc(e)?e.toPromise():Promise.resolve(e),cc=e=>e&&Promise.resolve(e)===e,Yt=()=>document.body.querySelector(`.${H.container}`),ir=e=>{const t=Yt();return t?t.querySelector(e):null},yn=e=>ir(`.${e}`),Je=()=>yn(H.popup),es=()=>yn(H.icon),Ab=()=>yn(H["icon-content"]),ih=()=>yn(H.title),dc=()=>yn(H["html-container"]),sh=()=>yn(H.image),fc=()=>yn(H["progress-steps"]),Oa=()=>yn(H["validation-message"]),eo=()=>ir(`.${H.actions} .${H.confirm}`),ts=()=>ir(`.${H.actions} .${H.cancel}`),xi=()=>ir(`.${H.actions} .${H.deny}`),Pb=()=>yn(H["input-label"]),ns=()=>ir(`.${H.loader}`),sr=()=>yn(H.actions),rh=()=>yn(H.footer),Ba=()=>yn(H["timer-progress-bar"]),pc=()=>yn(H.close),Ib=`
a[href],
area[href],
input:not([disabled]),
select:not([disabled]),
textarea:not([disabled]),
button:not([disabled]),
iframe,
object,
embed,
[tabindex="0"],
[contenteditable],
audio[controls],
video[controls],
summary
`,hc=()=>{const e=Je();if(!e)return [];const t=e.querySelectorAll('[tabindex]:not([tabindex="-1"]):not([tabindex="0"])'),n=Array.from(t).sort((s,r)=>{const a=parseInt(s.getAttribute("tabindex")||"0"),l=parseInt(r.getAttribute("tabindex")||"0");return a>l?1:a<l?-1:0}),o=e.querySelectorAll(Ib),i=Array.from(o).filter(s=>s.getAttribute("tabindex")!=="-1");return [...new Set(n.concat(i))].filter(s=>rn(s))},mc=()=>go(document.body,H.shown)&&!go(document.body,H["toast-shown"])&&!go(document.body,H["no-backdrop"]),Ra=()=>{const e=Je();return e?go(e,H.toast):false},Db=()=>{const e=Je();return e?e.hasAttribute("data-loading"):false},bn=(e,t)=>{if(e.textContent="",t){const o=new DOMParser().parseFromString(t,"text/html"),i=o.querySelector("head");i&&Array.from(i.childNodes).forEach(r=>{e.appendChild(r);});const s=o.querySelector("body");s&&Array.from(s.childNodes).forEach(r=>{r instanceof HTMLVideoElement||r instanceof HTMLAudioElement?e.appendChild(r.cloneNode(true)):e.appendChild(r);});}},go=(e,t)=>{if(!t)return false;const n=t.split(/\s+/);for(let o=0;o<n.length;o++)if(!e.classList.contains(n[o]))return false;return true},Lb=(e,t)=>{Array.from(e.classList).forEach(n=>{!Object.values(H).includes(n)&&!Object.values(Jr).includes(n)&&!Object.values(t.showClass||{}).includes(n)&&e.classList.remove(n);});},hn=(e,t,n)=>{if(Lb(e,t),!t.customClass)return;const o=t.customClass[n];if(o){if(typeof o!="string"&&!o.forEach){Gt(`Invalid type of customClass.${n}! Expected string or iterable object, got "${typeof o}"`);return}Qe(e,o);}},Fa=(e,t)=>{if(!t)return null;switch(t){case "select":case "textarea":case "file":return e.querySelector(`.${H.popup} > .${H[t]}`);case "checkbox":return e.querySelector(`.${H.popup} > .${H.checkbox} input`);case "radio":return e.querySelector(`.${H.popup} > .${H.radio} input:checked`)||e.querySelector(`.${H.popup} > .${H.radio} input:first-child`);case "range":return e.querySelector(`.${H.popup} > .${H.range} input`);default:return e.querySelector(`.${H.popup} > .${H.input}`)}},ah=e=>{if(e.focus(),e.type!=="file"){const t=e.value;e.value="",e.value=t;}},lh=(e,t,n)=>{!e||!t||(typeof t=="string"&&(t=t.split(/\s+/).filter(Boolean)),t.forEach(o=>{Array.isArray(e)?e.forEach(i=>{n?i.classList.add(o):i.classList.remove(o);}):n?e.classList.add(o):e.classList.remove(o);}));},Qe=(e,t)=>{lh(e,t,true);},Pn=(e,t)=>{lh(e,t,false);},Do=(e,t)=>{const n=Array.from(e.children);for(let o=0;o<n.length;o++){const i=n[o];if(i instanceof HTMLElement&&go(i,t))return i}},ri=(e,t,n)=>{n===`${parseInt(n)}`&&(n=parseInt(n)),n||parseInt(n)===0?e.style.setProperty(t,typeof n=="number"?`${n}px`:n):e.style.removeProperty(t);},Pt=(e,t="flex")=>{e&&(e.style.display=t);},Ut=e=>{e&&(e.style.display="none");},gc=(e,t="block")=>{e&&new MutationObserver(()=>{rr(e,e.innerHTML,t);}).observe(e,{childList:true,subtree:true});},Dd=(e,t,n,o)=>{const i=e.querySelector(t);i&&i.style.setProperty(n,o);},rr=(e,t,n="flex")=>{t?Pt(e,n):Ut(e);},rn=e=>!!(e&&(e.offsetWidth||e.offsetHeight||e.getClientRects().length)),Tb=()=>!rn(eo())&&!rn(xi())&&!rn(ts()),lu=e=>e.scrollHeight>e.clientHeight,Mb=(e,t)=>{let n=e;for(;n&&n!==t;){if(lu(n))return true;n=n.parentElement;}return false},uh=e=>{const t=window.getComputedStyle(e),n=parseFloat(t.getPropertyValue("animation-duration")||"0"),o=parseFloat(t.getPropertyValue("transition-duration")||"0");return n>0||o>0},wc=(e,t=false)=>{const n=Ba();n&&rn(n)&&(t&&(n.style.transition="none",n.style.width="100%"),setTimeout(()=>{n.style.transition=`width ${e/1e3}s linear`,n.style.width="0%";},10));},Ob=()=>{const e=Ba();if(!e)return;const t=parseInt(window.getComputedStyle(e).width);e.style.removeProperty("transition"),e.style.width="100%";const n=parseInt(window.getComputedStyle(e).width),o=t/n*100;e.style.width=`${o}%`;},Bb=()=>typeof window>"u"||typeof document>"u",Rb=`
<div aria-labelledby="${H.title}" aria-describedby="${H["html-container"]}" class="${H.popup}" tabindex="-1">
<button type="button" class="${H.close}"></button>
<ul class="${H["progress-steps"]}"></ul>
<div class="${H.icon}"></div>
<img class="${H.image}" />
<h2 class="${H.title}" id="${H.title}"></h2>
<div class="${H["html-container"]}" id="${H["html-container"]}"></div>
<input class="${H.input}" id="${H.input}" />
<input type="file" class="${H.file}" />
<div class="${H.range}">
<input type="range" />
<output></output>
</div>
<select class="${H.select}" id="${H.select}"></select>
<div class="${H.radio}"></div>
<label class="${H.checkbox}">
<input type="checkbox" id="${H.checkbox}" />
<span class="${H.label}"></span>
</label>
<textarea class="${H.textarea}" id="${H.textarea}"></textarea>
<div class="${H["validation-message"]}" id="${H["validation-message"]}"></div>
<div class="${H.actions}">
<div class="${H.loader}"></div>
<button type="button" class="${H.confirm}"></button>
<button type="button" class="${H.deny}"></button>
<button type="button" class="${H.cancel}"></button>
</div>
<div class="${H.footer}"></div>
<div class="${H["timer-progress-bar-container"]}">
<div class="${H["timer-progress-bar"]}"></div>
</div>
</div>
`.replace(/(^|\n)\s*/g,""),Fb=()=>{const e=Yt();return e?(e.remove(),Pn([document.documentElement,document.body],[H["no-backdrop"],H["toast-shown"],H["has-column"]]),true):false},Yo=()=>{De.currentInstance.resetValidationMessage();},Nb=()=>{const e=Je(),t=Do(e,H.input),n=Do(e,H.file),o=e.querySelector(`.${H.range} input`),i=e.querySelector(`.${H.range} output`),s=Do(e,H.select),r=e.querySelector(`.${H.checkbox} input`),a=Do(e,H.textarea);t.oninput=Yo,n.onchange=Yo,s.onchange=Yo,r.onchange=Yo,a.oninput=Yo,o.oninput=()=>{Yo(),i.value=o.value;},o.onchange=()=>{Yo(),i.value=o.value;};},Ub=e=>typeof e=="string"?document.querySelector(e):e,jb=e=>{const t=Je();t.setAttribute("role",e.toast?"alert":"dialog"),t.setAttribute("aria-live",e.toast?"polite":"assertive"),e.toast||t.setAttribute("aria-modal","true");},zb=e=>{window.getComputedStyle(e).direction==="rtl"&&Qe(Yt(),H.rtl);},Hb=e=>{const t=Fb();if(Bb()){vi("SweetAlert2 requires document to initialize");return}const n=document.createElement("div");n.className=H.container,t&&Qe(n,H["no-transition"]),bn(n,Rb),n.dataset.swal2Theme=e.theme;const o=Ub(e.target);o.appendChild(n),e.topLayer&&(n.setAttribute("popover",""),n.showPopover()),jb(e),zb(o),Nb();},yc=(e,t)=>{e instanceof HTMLElement?t.appendChild(e):typeof e=="object"?Vb(e,t):e&&bn(t,e);},Vb=(e,t)=>{e.jquery?qb(t,e):bn(t,e.toString());},qb=(e,t)=>{if(e.textContent="",0 in t)for(let n=0;n in t;n++)e.appendChild(t[n].cloneNode(true));else e.appendChild(t.cloneNode(true));},Wb=(e,t)=>{const n=sr(),o=ns();!n||!o||(!t.showConfirmButton&&!t.showDenyButton&&!t.showCancelButton?Ut(n):Pt(n),hn(n,t,"actions"),Kb(n,o,t),bn(o,t.loaderHtml||""),hn(o,t,"loader"));};function Kb(e,t,n){const o=eo(),i=xi(),s=ts();!o||!i||!s||(Sl(o,"confirm",n),Sl(i,"deny",n),Sl(s,"cancel",n),Gb(o,i,s,n),n.reverseButtons&&(n.toast?(e.insertBefore(s,o),e.insertBefore(i,o)):(e.insertBefore(s,t),e.insertBefore(i,t),e.insertBefore(o,t))));}function Gb(e,t,n,o){if(!o.buttonsStyling){Pn([e,t,n],H.styled);return}Qe([e,t,n],H.styled),o.confirmButtonColor&&e.style.setProperty("--swal2-confirm-button-background-color",o.confirmButtonColor),o.denyButtonColor&&t.style.setProperty("--swal2-deny-button-background-color",o.denyButtonColor),o.cancelButtonColor&&n.style.setProperty("--swal2-cancel-button-background-color",o.cancelButtonColor),kl(e),kl(t),kl(n);}function kl(e){const t=window.getComputedStyle(e);if(t.getPropertyValue("--swal2-action-button-focus-box-shadow"))return;const n=t.backgroundColor.replace(/rgba?\((\d+), (\d+), (\d+).*/,"rgba($1, $2, $3, 0.5)");e.style.setProperty("--swal2-action-button-focus-box-shadow",t.getPropertyValue("--swal2-outline").replace(/ rgba\(.*/,` ${n}`));}function Sl(e,t,n){const o=lc(t);rr(e,n[`show${o}Button`],"inline-block"),bn(e,n[`${t}ButtonText`]||""),e.setAttribute("aria-label",n[`${t}ButtonAriaLabel`]||""),e.className=H[t],hn(e,n,`${t}Button`);}const Jb=(e,t)=>{const n=pc();n&&(bn(n,t.closeButtonHtml||""),hn(n,t,"closeButton"),rr(n,t.showCloseButton),n.setAttribute("aria-label",t.closeButtonAriaLabel||""));},Yb=(e,t)=>{const n=Yt();n&&(Qb(n,t.backdrop),Xb(n,t.position),Zb(n,t.grow),hn(n,t,"container"));};function Qb(e,t){typeof t=="string"?e.style.background=t:t||Qe([document.documentElement,document.body],H["no-backdrop"]);}function Xb(e,t){t&&(t in H?Qe(e,H[t]):(Gt('The "position" parameter is not valid, defaulting to "center"'),Qe(e,H.center)));}function Zb(e,t){t&&Qe(e,H[`grow-${t}`]);}var ct={innerParams:new WeakMap,domCache:new WeakMap};const ev=["input","file","range","select","radio","checkbox","textarea"],tv=(e,t)=>{const n=Je();if(!n)return;const o=ct.innerParams.get(e),i=!o||t.input!==o.input;ev.forEach(s=>{const r=Do(n,H[s]);r&&(iv(s,t.inputAttributes),r.className=H[s],i&&Ut(r));}),t.input&&(i&&nv(t),sv(t));},nv=e=>{if(!e.input)return;if(!bt[e.input]){vi(`Unexpected type of input! Expected ${Object.keys(bt).join(" | ")}, got "${e.input}"`);return}const t=ch(e.input);if(!t)return;const n=bt[e.input](t,e);Pt(t),e.inputAutoFocus&&setTimeout(()=>{ah(n);});},ov=e=>{for(let t=0;t<e.attributes.length;t++){const n=e.attributes[t].name;["id","type","value","style"].includes(n)||e.removeAttribute(n);}},iv=(e,t)=>{const n=Je();if(!n)return;const o=Fa(n,e);if(o){ov(o);for(const i in t)o.setAttribute(i,t[i]);}},sv=e=>{if(!e.input)return;const t=ch(e.input);t&&hn(t,e,"input");},bc=(e,t)=>{!e.placeholder&&t.inputPlaceholder&&(e.placeholder=t.inputPlaceholder);},ar=(e,t,n)=>{if(n.inputLabel){const o=document.createElement("label"),i=H["input-label"];o.setAttribute("for",e.id),o.className=i,typeof n.customClass=="object"&&Qe(o,n.customClass.inputLabel),o.innerText=n.inputLabel,t.insertAdjacentElement("beforebegin",o);}},ch=e=>{const t=Je();if(t)return Do(t,H[e]||H.input)},Yr=(e,t)=>{["string","number"].includes(typeof t)?e.value=`${t}`:cc(t)||Gt(`Unexpected type of inputValue! Expected "string", "number" or "Promise", got "${typeof t}"`);},bt={};bt.text=bt.email=bt.password=bt.number=bt.tel=bt.url=bt.search=bt.date=bt["datetime-local"]=bt.time=bt.week=bt.month=(e,t)=>(Yr(e,t.inputValue),ar(e,e,t),bc(e,t),e.type=t.input,e);bt.file=(e,t)=>(ar(e,e,t),bc(e,t),e);bt.range=(e,t)=>{const n=e.querySelector("input"),o=e.querySelector("output");return Yr(n,t.inputValue),n.type=t.input,Yr(o,t.inputValue),ar(n,e,t),e};bt.select=(e,t)=>{if(e.textContent="",t.inputPlaceholder){const n=document.createElement("option");bn(n,t.inputPlaceholder),n.value="",n.disabled=true,n.selected=true,e.appendChild(n);}return ar(e,e,t),e};bt.radio=e=>(e.textContent="",e);bt.checkbox=(e,t)=>{const n=Fa(Je(),"checkbox");n.value="1",n.checked=!!t.inputValue;const o=e.querySelector("span");return bn(o,t.inputPlaceholder||t.inputLabel),n};bt.textarea=(e,t)=>{Yr(e,t.inputValue),bc(e,t),ar(e,e,t);const n=o=>parseInt(window.getComputedStyle(o).marginLeft)+parseInt(window.getComputedStyle(o).marginRight);return setTimeout(()=>{if("MutationObserver"in window){const o=parseInt(window.getComputedStyle(Je()).width),i=()=>{if(!document.body.contains(e))return;const s=e.offsetWidth+n(e);s>o?Je().style.width=`${s}px`:ri(Je(),"width",t.width);};new MutationObserver(i).observe(e,{attributes:true,attributeFilter:["style"]});}}),e};const rv=(e,t)=>{const n=dc();n&&(gc(n),hn(n,t,"htmlContainer"),t.html?(yc(t.html,n),Pt(n,"block")):t.text?(n.textContent=t.text,Pt(n,"block")):Ut(n),tv(e,t));},av=(e,t)=>{const n=rh();n&&(gc(n),rr(n,t.footer,"block"),t.footer&&yc(t.footer,n),hn(n,t,"footer"));},lv=(e,t)=>{const n=ct.innerParams.get(e),o=es();if(!o)return;if(n&&t.icon===n.icon){Td(o,t),Ld(o,t);return}if(!t.icon&&!t.iconHtml){Ut(o);return}if(t.icon&&Object.keys(Jr).indexOf(t.icon)===-1){vi(`Unknown icon! Expected "success", "error", "warning", "info" or "question", got "${t.icon}"`),Ut(o);return}Pt(o),Td(o,t),Ld(o,t),Qe(o,t.showClass&&t.showClass.icon),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",dh);},Ld=(e,t)=>{for(const[n,o]of Object.entries(Jr))t.icon!==n&&Pn(e,o);Qe(e,t.icon&&Jr[t.icon]),dv(e,t),dh(),hn(e,t,"icon");},dh=()=>{const e=Je();if(!e)return;const t=window.getComputedStyle(e).getPropertyValue("background-color"),n=e.querySelectorAll("[class^=swal2-success-circular-line], .swal2-success-fix");for(let o=0;o<n.length;o++)n[o].style.backgroundColor=t;},uv=e=>`
${e.animation?'<div class="swal2-success-circular-line-left"></div>':""}
<span class="swal2-success-line-tip"></span> <span class="swal2-success-line-long"></span>
<div class="swal2-success-ring"></div>
${e.animation?'<div class="swal2-success-fix"></div>':""}
${e.animation?'<div class="swal2-success-circular-line-right"></div>':""}
`,cv=`
<span class="swal2-x-mark">
<span class="swal2-x-mark-line-left"></span>
<span class="swal2-x-mark-line-right"></span>
</span>
`,Td=(e,t)=>{if(!t.icon&&!t.iconHtml)return;let n=e.innerHTML,o="";t.iconHtml?o=Md(t.iconHtml):t.icon==="success"?(o=uv(t),n=n.replace(/ style=".*?"/g,"")):t.icon==="error"?o=cv:t.icon&&(o=Md({question:"?",warning:"!",info:"i"}[t.icon])),n.trim()!==o.trim()&&bn(e,o);},dv=(e,t)=>{if(t.iconColor){e.style.color=t.iconColor,e.style.borderColor=t.iconColor;for(const n of [".swal2-success-line-tip",".swal2-success-line-long",".swal2-x-mark-line-left",".swal2-x-mark-line-right"])Dd(e,n,"background-color",t.iconColor);Dd(e,".swal2-success-ring","border-color",t.iconColor);}},Md=e=>`<div class="${H["icon-content"]}">${e}</div>`,fv=(e,t)=>{const n=sh();if(n){if(!t.imageUrl){Ut(n);return}Pt(n,""),n.setAttribute("src",t.imageUrl),n.setAttribute("alt",t.imageAlt||""),ri(n,"width",t.imageWidth),ri(n,"height",t.imageHeight),n.className=H.image,hn(n,t,"image");}};let vc=false,fh=0,ph=0,hh=0,mh=0;const pv=e=>{e.addEventListener("mousedown",Qr),document.body.addEventListener("mousemove",Xr),e.addEventListener("mouseup",Zr),e.addEventListener("touchstart",Qr),document.body.addEventListener("touchmove",Xr),e.addEventListener("touchend",Zr);},hv=e=>{e.removeEventListener("mousedown",Qr),document.body.removeEventListener("mousemove",Xr),e.removeEventListener("mouseup",Zr),e.removeEventListener("touchstart",Qr),document.body.removeEventListener("touchmove",Xr),e.removeEventListener("touchend",Zr);},Qr=e=>{const t=Je();if(e.target===t||es().contains(e.target)){vc=true;const n=gh(e);fh=n.clientX,ph=n.clientY,hh=parseInt(t.style.insetInlineStart)||0,mh=parseInt(t.style.insetBlockStart)||0,Qe(t,"swal2-dragging");}},Xr=e=>{const t=Je();if(vc){let{clientX:n,clientY:o}=gh(e);t.style.insetInlineStart=`${hh+(n-fh)}px`,t.style.insetBlockStart=`${mh+(o-ph)}px`;}},Zr=()=>{const e=Je();vc=false,Pn(e,"swal2-dragging");},gh=e=>{let t=0,n=0;return e.type.startsWith("mouse")?(t=e.clientX,n=e.clientY):e.type.startsWith("touch")&&(t=e.touches[0].clientX,n=e.touches[0].clientY),{clientX:t,clientY:n}},mv=(e,t)=>{const n=Yt(),o=Je();if(!(!n||!o)){if(t.toast){ri(n,"width",t.width),o.style.width="100%";const i=ns();i&&o.insertBefore(i,es());}else ri(o,"width",t.width);ri(o,"padding",t.padding),t.color&&(o.style.color=t.color),t.background&&(o.style.background=t.background),Ut(Oa()),gv(o,t),t.draggable&&!t.toast?(Qe(o,H.draggable),pv(o)):(Pn(o,H.draggable),hv(o));}},gv=(e,t)=>{const n=t.showClass||{};e.className=`${H.popup} ${rn(e)?n.popup:""}`,t.toast?(Qe([document.documentElement,document.body],H["toast-shown"]),Qe(e,H.toast)):Qe(e,H.modal),hn(e,t,"popup"),typeof t.customClass=="string"&&Qe(e,t.customClass),t.icon&&Qe(e,H[`icon-${t.icon}`]);},wv=(e,t)=>{const n=fc();if(!n)return;const{progressSteps:o,currentProgressStep:i}=t;if(!o||o.length===0||i===void 0){Ut(n);return}Pt(n),n.textContent="",i>=o.length&&Gt("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),o.forEach((s,r)=>{const a=yv(s);if(n.appendChild(a),r===i&&Qe(a,H["active-progress-step"]),r!==o.length-1){const l=bv(t);n.appendChild(l);}});},yv=e=>{const t=document.createElement("li");return Qe(t,H["progress-step"]),bn(t,e),t},bv=e=>{const t=document.createElement("li");return Qe(t,H["progress-step-line"]),e.progressStepsDistance&&ri(t,"width",e.progressStepsDistance),t},vv=(e,t)=>{const n=ih();n&&(gc(n),rr(n,t.title||t.titleText,"block"),t.title&&yc(t.title,n),t.titleText&&(n.innerText=t.titleText),hn(n,t,"title"));},wh=(e,t)=>{mv(e,t),Yb(e,t),wv(e,t),lv(e,t),fv(e,t),vv(e,t),Jb(e,t),rv(e,t),Wb(e,t),av(e,t);const n=Je();typeof t.didRender=="function"&&n&&t.didRender(n),De.eventEmitter.emit("didRender",n);},xv=()=>rn(Je()),yh=()=>{var e;return (e=eo())===null||e===void 0?void 0:e.click()},_v=()=>{var e;return (e=xi())===null||e===void 0?void 0:e.click()},Cv=()=>{var e;return (e=ts())===null||e===void 0?void 0:e.click()},os=Object.freeze({cancel:"cancel",backdrop:"backdrop",close:"close",esc:"esc",timer:"timer"}),bh=e=>{e.keydownTarget&&e.keydownHandlerAdded&&(e.keydownTarget.removeEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=false);},kv=(e,t,n)=>{bh(e),t.toast||(e.keydownHandler=o=>$v(t,o,n),e.keydownTarget=t.keydownListenerCapture?window:Je(),e.keydownListenerCapture=t.keydownListenerCapture,e.keydownTarget.addEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=true);},uu=(e,t)=>{var n;const o=hc();if(o.length){e=e+t,e===-2&&(e=o.length-1),e===o.length?e=0:e===-1&&(e=o.length-1),o[e].focus();return}(n=Je())===null||n===void 0||n.focus();},vh=["ArrowRight","ArrowDown"],Sv=["ArrowLeft","ArrowUp"],$v=(e,t,n)=>{e&&(t.isComposing||t.keyCode===229||(e.stopKeydownPropagation&&t.stopPropagation(),t.key==="Enter"?Ev(t,e):t.key==="Tab"?Av(t):[...vh,...Sv].includes(t.key)?Pv(t.key):t.key==="Escape"&&Iv(t,e,n)));},Ev=(e,t)=>{if(!Ma(t.allowEnterKey))return;const n=Fa(Je(),t.input);if(e.target&&n&&e.target instanceof HTMLElement&&e.target.outerHTML===n.outerHTML){if(["textarea","file"].includes(t.input))return;yh(),e.preventDefault();}},Av=e=>{const t=e.target,n=hc();let o=-1;for(let i=0;i<n.length;i++)if(t===n[i]){o=i;break}e.shiftKey?uu(o,-1):uu(o,1),e.stopPropagation(),e.preventDefault();},Pv=e=>{const t=sr(),n=eo(),o=xi(),i=ts();if(!t||!n||!o||!i)return;const s=[n,o,i];if(document.activeElement instanceof HTMLElement&&!s.includes(document.activeElement))return;const r=vh.includes(e)?"nextElementSibling":"previousElementSibling";let a=document.activeElement;if(a){for(let l=0;l<t.children.length;l++){if(a=a[r],!a)return;if(a instanceof HTMLButtonElement&&rn(a))break}a instanceof HTMLButtonElement&&a.focus();}},Iv=(e,t,n)=>{e.preventDefault(),Ma(t.allowEscapeKey)&&n(os.esc);};var Ki={swalPromiseResolve:new WeakMap,swalPromiseReject:new WeakMap};const Dv=()=>{const e=Yt();Array.from(document.body.children).forEach(n=>{n.contains(e)||(n.hasAttribute("aria-hidden")&&n.setAttribute("data-previous-aria-hidden",n.getAttribute("aria-hidden")||""),n.setAttribute("aria-hidden","true"));});},xh=()=>{Array.from(document.body.children).forEach(t=>{t.hasAttribute("data-previous-aria-hidden")?(t.setAttribute("aria-hidden",t.getAttribute("data-previous-aria-hidden")||""),t.removeAttribute("data-previous-aria-hidden")):t.removeAttribute("aria-hidden");});},_h=typeof window<"u"&&!!window.GestureEvent,Lv=()=>{if(_h&&!go(document.body,H.iosfix)){const e=document.body.scrollTop;document.body.style.top=`${e*-1}px`,Qe(document.body,H.iosfix),Tv();}},Tv=()=>{const e=Yt();if(!e)return;let t;e.ontouchstart=n=>{t=Mv(n);},e.ontouchmove=n=>{t&&(n.preventDefault(),n.stopPropagation());};},Mv=e=>{const t=e.target,n=Yt(),o=dc();return !n||!o||Ov(e)||Bv(e)?false:t===n||!lu(n)&&t instanceof HTMLElement&&!Mb(t,o)&&t.tagName!=="INPUT"&&t.tagName!=="TEXTAREA"&&!(lu(o)&&o.contains(t))},Ov=e=>e.touches&&e.touches.length&&e.touches[0].touchType==="stylus",Bv=e=>e.touches&&e.touches.length>1,Rv=()=>{if(go(document.body,H.iosfix)){const e=parseInt(document.body.style.top,10);Pn(document.body,H.iosfix),document.body.style.top="",document.body.scrollTop=e*-1;}},Fv=()=>{const e=document.createElement("div");e.className=H["scrollbar-measure"],document.body.appendChild(e);const t=e.getBoundingClientRect().width-e.clientWidth;return document.body.removeChild(e),t};let Ti=null;const Nv=e=>{Ti===null&&(document.body.scrollHeight>window.innerHeight||e==="scroll")&&(Ti=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=`${Ti+Fv()}px`);},Uv=()=>{Ti!==null&&(document.body.style.paddingRight=`${Ti}px`,Ti=null);};function Ch(e,t,n,o){Ra()?Od(e,o):(kb(n).then(()=>Od(e,o)),bh(De)),_h?(t.setAttribute("style","display:none !important"),t.removeAttribute("class"),t.innerHTML=""):t.remove(),mc()&&(Uv(),Rv(),xh()),jv();}function jv(){Pn([document.documentElement,document.body],[H.shown,H["height-auto"],H["no-backdrop"],H["toast-shown"]]);}function Lo(e){e=Hv(e);const t=Ki.swalPromiseResolve.get(this),n=zv(this);this.isAwaitingPromise?e.isDismissed||(lr(this),t(e)):n&&t(e);}const zv=e=>{const t=Je();if(!t)return false;const n=ct.innerParams.get(e);if(!n||go(t,n.hideClass.popup))return false;Pn(t,n.showClass.popup),Qe(t,n.hideClass.popup);const o=Yt();return Pn(o,n.showClass.backdrop),Qe(o,n.hideClass.backdrop),Vv(e,t,n),true};function kh(e){const t=Ki.swalPromiseReject.get(this);lr(this),t&&t(e);}const lr=e=>{e.isAwaitingPromise&&(delete e.isAwaitingPromise,ct.innerParams.get(e)||e._destroy());},Hv=e=>typeof e>"u"?{isConfirmed:false,isDenied:false,isDismissed:true}:Object.assign({isConfirmed:false,isDenied:false,isDismissed:false},e),Vv=(e,t,n)=>{var o;const i=Yt(),s=uh(t);typeof n.willClose=="function"&&n.willClose(t),(o=De.eventEmitter)===null||o===void 0||o.emit("willClose",t),s?qv(e,t,i,n.returnFocus,n.didClose):Ch(e,i,n.returnFocus,n.didClose);},qv=(e,t,n,o,i)=>{De.swalCloseEventFinishedCallback=Ch.bind(null,e,n,o,i);const s=function(r){if(r.target===t){var a;(a=De.swalCloseEventFinishedCallback)===null||a===void 0||a.call(De),delete De.swalCloseEventFinishedCallback,t.removeEventListener("animationend",s),t.removeEventListener("transitionend",s);}};t.addEventListener("animationend",s),t.addEventListener("transitionend",s);},Od=(e,t)=>{setTimeout(()=>{var n;typeof t=="function"&&t.bind(e.params)(),(n=De.eventEmitter)===null||n===void 0||n.emit("didClose"),e._destroy&&e._destroy();});},Gi=e=>{let t=Je();if(t||new te,t=Je(),!t)return;const n=ns();Ra()?Ut(es()):Wv(t,e),Pt(n),t.setAttribute("data-loading","true"),t.setAttribute("aria-busy","true"),t.focus();},Wv=(e,t)=>{const n=sr(),o=ns();!n||!o||(!t&&rn(eo())&&(t=eo()),Pt(n),t&&(Ut(t),o.setAttribute("data-button-to-replace",t.className),n.insertBefore(o,t)),Qe([e,n],H.loading));},Kv=(e,t)=>{t.input==="select"||t.input==="radio"?Xv(e,t):["text","email","number","tel","textarea"].some(n=>n===t.input)&&(uc(t.inputValue)||cc(t.inputValue))&&(Gi(eo()),Zv(e,t));},Gv=(e,t)=>{const n=e.getInput();if(!n)return null;switch(t.input){case "checkbox":return Jv(n);case "radio":return Yv(n);case "file":return Qv(n);default:return t.inputAutoTrim?n.value.trim():n.value}},Jv=e=>e.checked?1:0,Yv=e=>e.checked?e.value:null,Qv=e=>e.files&&e.files.length?e.getAttribute("multiple")!==null?e.files:e.files[0]:null,Xv=(e,t)=>{const n=Je();if(!n)return;const o=i=>{t.input==="select"?e1(n,ea(i),t):t.input==="radio"&&t1(n,ea(i),t);};uc(t.inputOptions)||cc(t.inputOptions)?(Gi(eo()),or(t.inputOptions).then(i=>{e.hideLoading(),o(i);})):typeof t.inputOptions=="object"?o(t.inputOptions):vi(`Unexpected type of inputOptions! Expected object, Map or Promise, got ${typeof t.inputOptions}`);},Zv=(e,t)=>{const n=e.getInput();n&&(Ut(n),or(t.inputValue).then(o=>{n.value=t.input==="number"?`${parseFloat(o)||0}`:`${o}`,Pt(n),n.focus(),e.hideLoading();}).catch(o=>{vi(`Error in inputValue promise: ${o}`),n.value="",Pt(n),n.focus(),e.hideLoading();}));};function e1(e,t,n){const o=Do(e,H.select);if(!o)return;const i=(s,r,a)=>{const l=document.createElement("option");l.value=a,bn(l,r),l.selected=Sh(a,n.inputValue),s.appendChild(l);};t.forEach(s=>{const r=s[0],a=s[1];if(Array.isArray(a)){const l=document.createElement("optgroup");l.label=r,l.disabled=false,o.appendChild(l),a.forEach(c=>i(l,c[1],c[0]));}else i(o,a,r);}),o.focus();}function t1(e,t,n){const o=Do(e,H.radio);if(!o)return;t.forEach(s=>{const r=s[0],a=s[1],l=document.createElement("input"),c=document.createElement("label");l.type="radio",l.name=H.radio,l.value=r,Sh(r,n.inputValue)&&(l.checked=true);const u=document.createElement("span");bn(u,a),u.className=H.label,c.appendChild(l),c.appendChild(u),o.appendChild(c);});const i=o.querySelectorAll("input");i.length&&i[0].focus();}const ea=e=>{const t=[];return e instanceof Map?e.forEach((n,o)=>{let i=n;typeof i=="object"&&(i=ea(i)),t.push([o,i]);}):Object.keys(e).forEach(n=>{let o=e[n];typeof o=="object"&&(o=ea(o)),t.push([n,o]);}),t},Sh=(e,t)=>!!t&&t.toString()===e.toString(),n1=e=>{const t=ct.innerParams.get(e);e.disableButtons(),t.input?$h(e,"confirm"):_c(e,true);},o1=e=>{const t=ct.innerParams.get(e);e.disableButtons(),t.returnInputValueOnDeny?$h(e,"deny"):xc(e,false);},i1=(e,t)=>{e.disableButtons(),t(os.cancel);},$h=(e,t)=>{const n=ct.innerParams.get(e);if(!n.input){vi(`The "input" parameter is needed to be set when using returnInputValueOn${lc(t)}`);return}const o=e.getInput(),i=Gv(e,n);n.inputValidator?s1(e,i,t):o&&!o.checkValidity()?(e.enableButtons(),e.showValidationMessage(n.validationMessage||o.validationMessage)):t==="deny"?xc(e,i):_c(e,i);},s1=(e,t,n)=>{const o=ct.innerParams.get(e);e.disableInput(),Promise.resolve().then(()=>or(o.inputValidator(t,o.validationMessage))).then(s=>{e.enableButtons(),e.enableInput(),s?e.showValidationMessage(s):n==="deny"?xc(e,t):_c(e,t);});},xc=(e,t)=>{const n=ct.innerParams.get(e||void 0);n.showLoaderOnDeny&&Gi(xi()),n.preDeny?(e.isAwaitingPromise=true,Promise.resolve().then(()=>or(n.preDeny(t,n.validationMessage))).then(i=>{i===false?(e.hideLoading(),lr(e)):e.close({isDenied:true,value:typeof i>"u"?t:i});}).catch(i=>Eh(e||void 0,i))):e.close({isDenied:true,value:t});},Bd=(e,t)=>{e.close({isConfirmed:true,value:t});},Eh=(e,t)=>{e.rejectPromise(t);},_c=(e,t)=>{const n=ct.innerParams.get(e||void 0);n.showLoaderOnConfirm&&Gi(),n.preConfirm?(e.resetValidationMessage(),e.isAwaitingPromise=true,Promise.resolve().then(()=>or(n.preConfirm(t,n.validationMessage))).then(i=>{rn(Oa())||i===false?(e.hideLoading(),lr(e)):Bd(e,typeof i>"u"?t:i);}).catch(i=>Eh(e||void 0,i))):Bd(e,t);};function ta(){const e=ct.innerParams.get(this);if(!e)return;const t=ct.domCache.get(this);Ut(t.loader),Ra()?e.icon&&Pt(es()):r1(t),Pn([t.popup,t.actions],H.loading),t.popup.removeAttribute("aria-busy"),t.popup.removeAttribute("data-loading"),t.confirmButton.disabled=false,t.denyButton.disabled=false,t.cancelButton.disabled=false;}const r1=e=>{const t=e.popup.getElementsByClassName(e.loader.getAttribute("data-button-to-replace"));t.length?Pt(t[0],"inline-block"):Tb()&&Ut(e.actions);};function Ah(){const e=ct.innerParams.get(this),t=ct.domCache.get(this);return t?Fa(t.popup,e.input):null}function Ph(e,t,n){const o=ct.domCache.get(e);t.forEach(i=>{o[i].disabled=n;});}function Ih(e,t){const n=Je();if(!(!n||!e))if(e.type==="radio"){const o=n.querySelectorAll(`[name="${H.radio}"]`);for(let i=0;i<o.length;i++)o[i].disabled=t;}else e.disabled=t;}function Dh(){Ph(this,["confirmButton","denyButton","cancelButton"],false);}function Lh(){Ph(this,["confirmButton","denyButton","cancelButton"],true);}function Th(){Ih(this.getInput(),false);}function Mh(){Ih(this.getInput(),true);}function Oh(e){const t=ct.domCache.get(this),n=ct.innerParams.get(this);bn(t.validationMessage,e),t.validationMessage.className=H["validation-message"],n.customClass&&n.customClass.validationMessage&&Qe(t.validationMessage,n.customClass.validationMessage),Pt(t.validationMessage);const o=this.getInput();o&&(o.setAttribute("aria-invalid","true"),o.setAttribute("aria-describedby",H["validation-message"]),ah(o),Qe(o,H.inputerror));}function Bh(){const e=ct.domCache.get(this);e.validationMessage&&Ut(e.validationMessage);const t=this.getInput();t&&(t.removeAttribute("aria-invalid"),t.removeAttribute("aria-describedby"),Pn(t,H.inputerror));}const Mi={title:"",titleText:"",text:"",html:"",footer:"",icon:void 0,iconColor:void 0,iconHtml:void 0,template:void 0,toast:false,draggable:false,animation:true,theme:"light",showClass:{popup:"swal2-show",backdrop:"swal2-backdrop-show",icon:"swal2-icon-show"},hideClass:{popup:"swal2-hide",backdrop:"swal2-backdrop-hide",icon:"swal2-icon-hide"},customClass:{},target:"body",color:void 0,backdrop:true,heightAuto:true,allowOutsideClick:true,allowEscapeKey:true,allowEnterKey:true,stopKeydownPropagation:true,keydownListenerCapture:false,showConfirmButton:true,showDenyButton:false,showCancelButton:false,preConfirm:void 0,preDeny:void 0,confirmButtonText:"OK",confirmButtonAriaLabel:"",confirmButtonColor:void 0,denyButtonText:"No",denyButtonAriaLabel:"",denyButtonColor:void 0,cancelButtonText:"Cancel",cancelButtonAriaLabel:"",cancelButtonColor:void 0,buttonsStyling:true,reverseButtons:false,focusConfirm:true,focusDeny:false,focusCancel:false,returnFocus:true,showCloseButton:false,closeButtonHtml:"×",closeButtonAriaLabel:"Close this dialog",loaderHtml:"",showLoaderOnConfirm:false,showLoaderOnDeny:false,imageUrl:void 0,imageWidth:void 0,imageHeight:void 0,imageAlt:"",timer:void 0,timerProgressBar:false,width:void 0,padding:void 0,background:void 0,input:void 0,inputPlaceholder:"",inputLabel:"",inputValue:"",inputOptions:{},inputAutoFocus:true,inputAutoTrim:true,inputAttributes:{},inputValidator:void 0,returnInputValueOnDeny:false,validationMessage:void 0,grow:false,position:"center",progressSteps:[],currentProgressStep:void 0,progressStepsDistance:void 0,willOpen:void 0,didOpen:void 0,didRender:void 0,willClose:void 0,didClose:void 0,didDestroy:void 0,scrollbarPadding:true,topLayer:false},a1=["allowEscapeKey","allowOutsideClick","background","buttonsStyling","cancelButtonAriaLabel","cancelButtonColor","cancelButtonText","closeButtonAriaLabel","closeButtonHtml","color","confirmButtonAriaLabel","confirmButtonColor","confirmButtonText","currentProgressStep","customClass","denyButtonAriaLabel","denyButtonColor","denyButtonText","didClose","didDestroy","draggable","footer","hideClass","html","icon","iconColor","iconHtml","imageAlt","imageHeight","imageUrl","imageWidth","preConfirm","preDeny","progressSteps","returnFocus","reverseButtons","showCancelButton","showCloseButton","showConfirmButton","showDenyButton","text","title","titleText","theme","willClose"],l1={allowEnterKey:void 0},u1=["allowOutsideClick","allowEnterKey","backdrop","draggable","focusConfirm","focusDeny","focusCancel","returnFocus","heightAuto","keydownListenerCapture"],Rh=e=>Object.prototype.hasOwnProperty.call(Mi,e),Fh=e=>a1.indexOf(e)!==-1,Nh=e=>l1[e],c1=e=>{Rh(e)||Gt(`Unknown parameter "${e}"`);},d1=e=>{u1.includes(e)&&Gt(`The parameter "${e}" is incompatible with toasts`);},f1=e=>{const t=Nh(e);t&&oh(e,t);},Uh=e=>{e.backdrop===false&&e.allowOutsideClick&&Gt('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`'),e.theme&&!["light","dark","auto","minimal","borderless","embed-iframe","bulma","bulma-light","bulma-dark"].includes(e.theme)&&Gt(`Invalid theme "${e.theme}"`);for(const t in e)c1(t),e.toast&&d1(t),f1(t);};function jh(e){const t=Yt(),n=Je(),o=ct.innerParams.get(this);if(!n||go(n,o.hideClass.popup)){Gt("You're trying to update the closed or closing popup, that won't work. Use the update() method in preConfirm parameter or show a new popup.");return}const i=p1(e),s=Object.assign({},o,i);Uh(s),t.dataset.swal2Theme=s.theme,wh(this,s),ct.innerParams.set(this,s),Object.defineProperties(this,{params:{value:Object.assign({},this.params,e),writable:false,enumerable:true}});}const p1=e=>{const t={};return Object.keys(e).forEach(n=>{Fh(n)?t[n]=e[n]:Gt(`Invalid parameter to update: ${n}`);}),t};function zh(){const e=ct.domCache.get(this),t=ct.innerParams.get(this);if(!t){Hh(this);return}e.popup&&De.swalCloseEventFinishedCallback&&(De.swalCloseEventFinishedCallback(),delete De.swalCloseEventFinishedCallback),typeof t.didDestroy=="function"&&t.didDestroy(),De.eventEmitter.emit("didDestroy"),h1(this);}const h1=e=>{Hh(e),delete e.params,delete De.keydownHandler,delete De.keydownTarget,delete De.currentInstance;},Hh=e=>{e.isAwaitingPromise?($l(ct,e),e.isAwaitingPromise=true):($l(Ki,e),$l(ct,e),delete e.isAwaitingPromise,delete e.disableButtons,delete e.enableButtons,delete e.getInput,delete e.disableInput,delete e.enableInput,delete e.hideLoading,delete e.disableLoading,delete e.showValidationMessage,delete e.resetValidationMessage,delete e.close,delete e.closePopup,delete e.closeModal,delete e.closeToast,delete e.rejectPromise,delete e.update,delete e._destroy);},$l=(e,t)=>{for(const n in e)e[n].delete(t);};var m1=Object.freeze({__proto__:null,_destroy:zh,close:Lo,closeModal:Lo,closePopup:Lo,closeToast:Lo,disableButtons:Lh,disableInput:Mh,disableLoading:ta,enableButtons:Dh,enableInput:Th,getInput:Ah,handleAwaitingPromise:lr,hideLoading:ta,rejectPromise:kh,resetValidationMessage:Bh,showValidationMessage:Oh,update:jh});const g1=(e,t,n)=>{e.toast?w1(e,t,n):(b1(t),v1(t),x1(e,t,n));},w1=(e,t,n)=>{t.popup.onclick=()=>{e&&(y1(e)||e.timer||e.input)||n(os.close);};},y1=e=>!!(e.showConfirmButton||e.showDenyButton||e.showCancelButton||e.showCloseButton);let na=false;const b1=e=>{e.popup.onmousedown=()=>{e.container.onmouseup=function(t){e.container.onmouseup=()=>{},t.target===e.container&&(na=true);};};},v1=e=>{e.container.onmousedown=t=>{t.target===e.container&&t.preventDefault(),e.popup.onmouseup=function(n){e.popup.onmouseup=()=>{},(n.target===e.popup||n.target instanceof HTMLElement&&e.popup.contains(n.target))&&(na=true);};};},x1=(e,t,n)=>{t.container.onclick=o=>{if(na){na=false;return}o.target===t.container&&Ma(e.allowOutsideClick)&&n(os.backdrop);};},_1=e=>typeof e=="object"&&e.jquery,Rd=e=>e instanceof Element||_1(e),C1=e=>{const t={};return typeof e[0]=="object"&&!Rd(e[0])?Object.assign(t,e[0]):["title","html","icon"].forEach((n,o)=>{const i=e[o];typeof i=="string"||Rd(i)?t[n]=i:i!==void 0&&vi(`Unexpected type of ${n}! Expected "string" or "Element", got ${typeof i}`);}),t};function k1(...e){return new this(...e)}function S1(e){class t extends this{_main(o,i){return super._main(o,Object.assign({},e,i))}}return t}const $1=()=>De.timeout&&De.timeout.getTimerLeft(),Vh=()=>{if(De.timeout)return Ob(),De.timeout.stop()},qh=()=>{if(De.timeout){const e=De.timeout.start();return wc(e),e}},E1=()=>{const e=De.timeout;return e&&(e.running?Vh():qh())},A1=e=>{if(De.timeout){const t=De.timeout.increase(e);return wc(t,true),t}},P1=()=>!!(De.timeout&&De.timeout.isRunning());let Fd=false;const cu={};function I1(e="data-swal-template"){cu[e]=this,Fd||(document.body.addEventListener("click",D1),Fd=true);}const D1=e=>{for(let t=e.target;t&&t!==document;t=t.parentNode)for(const n in cu){const o=t.getAttribute(n);if(o){cu[n].fire({template:o});return}}};class L1{constructor(){this.events={};}_getHandlersByEventName(t){return typeof this.events[t]>"u"&&(this.events[t]=[]),this.events[t]}on(t,n){const o=this._getHandlersByEventName(t);o.includes(n)||o.push(n);}once(t,n){const o=(...i)=>{this.removeListener(t,o),n.apply(this,i);};this.on(t,o);}emit(t,...n){this._getHandlersByEventName(t).forEach(o=>{try{o.apply(this,n);}catch(i){console.error(i);}});}removeListener(t,n){const o=this._getHandlersByEventName(t),i=o.indexOf(n);i>-1&&o.splice(i,1);}removeAllListeners(t){this.events[t]!==void 0&&(this.events[t].length=0);}reset(){this.events={};}}De.eventEmitter=new L1;const T1=(e,t)=>{De.eventEmitter.on(e,t);},M1=(e,t)=>{De.eventEmitter.once(e,t);},O1=(e,t)=>{if(!e){De.eventEmitter.reset();return}t?De.eventEmitter.removeListener(e,t):De.eventEmitter.removeAllListeners(e);};var B1=Object.freeze({__proto__:null,argsToParams:C1,bindClickHandler:I1,clickCancel:Cv,clickConfirm:yh,clickDeny:_v,enableLoading:Gi,fire:k1,getActions:sr,getCancelButton:ts,getCloseButton:pc,getConfirmButton:eo,getContainer:Yt,getDenyButton:xi,getFocusableElements:hc,getFooter:rh,getHtmlContainer:dc,getIcon:es,getIconContent:Ab,getImage:sh,getInputLabel:Pb,getLoader:ns,getPopup:Je,getProgressSteps:fc,getTimerLeft:$1,getTimerProgressBar:Ba,getTitle:ih,getValidationMessage:Oa,increaseTimer:A1,isDeprecatedParameter:Nh,isLoading:Db,isTimerRunning:P1,isUpdatableParameter:Fh,isValidParameter:Rh,isVisible:xv,mixin:S1,off:O1,on:T1,once:M1,resumeTimer:qh,showLoading:Gi,stopTimer:Vh,toggleTimer:E1});class R1{constructor(t,n){this.callback=t,this.remaining=n,this.running=false,this.start();}start(){return this.running||(this.running=true,this.started=new Date,this.id=setTimeout(this.callback,this.remaining)),this.remaining}stop(){return this.started&&this.running&&(this.running=false,clearTimeout(this.id),this.remaining-=new Date().getTime()-this.started.getTime()),this.remaining}increase(t){const n=this.running;return n&&this.stop(),this.remaining+=t,n&&this.start(),this.remaining}getTimerLeft(){return this.running&&(this.stop(),this.start()),this.remaining}isRunning(){return this.running}}const Wh=["swal-title","swal-html","swal-footer"],F1=e=>{const t=typeof e.template=="string"?document.querySelector(e.template):e.template;if(!t)return {};const n=t.content;return W1(n),Object.assign(N1(n),U1(n),j1(n),z1(n),H1(n),V1(n),q1(n,Wh))},N1=e=>{const t={};return Array.from(e.querySelectorAll("swal-param")).forEach(o=>{fi(o,["name","value"]);const i=o.getAttribute("name"),s=o.getAttribute("value");!i||!s||(typeof Mi[i]=="boolean"?t[i]=s!=="false":typeof Mi[i]=="object"?t[i]=JSON.parse(s):t[i]=s);}),t},U1=e=>{const t={};return Array.from(e.querySelectorAll("swal-function-param")).forEach(o=>{const i=o.getAttribute("name"),s=o.getAttribute("value");!i||!s||(t[i]=new Function(`return ${s}`)());}),t},j1=e=>{const t={};return Array.from(e.querySelectorAll("swal-button")).forEach(o=>{fi(o,["type","color","aria-label"]);const i=o.getAttribute("type");!i||!["confirm","cancel","deny"].includes(i)||(t[`${i}ButtonText`]=o.innerHTML,t[`show${lc(i)}Button`]=true,o.hasAttribute("color")&&(t[`${i}ButtonColor`]=o.getAttribute("color")),o.hasAttribute("aria-label")&&(t[`${i}ButtonAriaLabel`]=o.getAttribute("aria-label")));}),t},z1=e=>{const t={},n=e.querySelector("swal-image");return n&&(fi(n,["src","width","height","alt"]),n.hasAttribute("src")&&(t.imageUrl=n.getAttribute("src")||void 0),n.hasAttribute("width")&&(t.imageWidth=n.getAttribute("width")||void 0),n.hasAttribute("height")&&(t.imageHeight=n.getAttribute("height")||void 0),n.hasAttribute("alt")&&(t.imageAlt=n.getAttribute("alt")||void 0)),t},H1=e=>{const t={},n=e.querySelector("swal-icon");return n&&(fi(n,["type","color"]),n.hasAttribute("type")&&(t.icon=n.getAttribute("type")),n.hasAttribute("color")&&(t.iconColor=n.getAttribute("color")),t.iconHtml=n.innerHTML),t},V1=e=>{const t={},n=e.querySelector("swal-input");n&&(fi(n,["type","label","placeholder","value"]),t.input=n.getAttribute("type")||"text",n.hasAttribute("label")&&(t.inputLabel=n.getAttribute("label")),n.hasAttribute("placeholder")&&(t.inputPlaceholder=n.getAttribute("placeholder")),n.hasAttribute("value")&&(t.inputValue=n.getAttribute("value")));const o=Array.from(e.querySelectorAll("swal-input-option"));return o.length&&(t.inputOptions={},o.forEach(i=>{fi(i,["value"]);const s=i.getAttribute("value");if(!s)return;const r=i.innerHTML;t.inputOptions[s]=r;})),t},q1=(e,t)=>{const n={};for(const o in t){const i=t[o],s=e.querySelector(i);s&&(fi(s,[]),n[i.replace(/^swal-/,"")]=s.innerHTML.trim());}return n},W1=e=>{const t=Wh.concat(["swal-param","swal-function-param","swal-button","swal-image","swal-icon","swal-input","swal-input-option"]);Array.from(e.children).forEach(n=>{const o=n.tagName.toLowerCase();t.includes(o)||Gt(`Unrecognized element <${o}>`);});},fi=(e,t)=>{Array.from(e.attributes).forEach(n=>{t.indexOf(n.name)===-1&&Gt([`Unrecognized attribute "${n.name}" on <${e.tagName.toLowerCase()}>.`,`${t.length?`Allowed attributes are: ${t.join(", ")}`:"To set the value, use HTML within the element."}`]);});},Kh=10,K1=e=>{const t=Yt(),n=Je();typeof e.willOpen=="function"&&e.willOpen(n),De.eventEmitter.emit("willOpen",n);const i=window.getComputedStyle(document.body).overflowY;Y1(t,n,e),setTimeout(()=>{G1(t,n);},Kh),mc()&&(J1(t,e.scrollbarPadding,i),Dv()),!Ra()&&!De.previousActiveElement&&(De.previousActiveElement=document.activeElement),typeof e.didOpen=="function"&&setTimeout(()=>e.didOpen(n)),De.eventEmitter.emit("didOpen",n),Pn(t,H["no-transition"]);},oa=e=>{const t=Je();if(e.target!==t)return;const n=Yt();t.removeEventListener("animationend",oa),t.removeEventListener("transitionend",oa),n.style.overflowY="auto";},G1=(e,t)=>{uh(t)?(e.style.overflowY="hidden",t.addEventListener("animationend",oa),t.addEventListener("transitionend",oa)):e.style.overflowY="auto";},J1=(e,t,n)=>{Lv(),t&&n!=="hidden"&&Nv(n),setTimeout(()=>{e.scrollTop=0;});},Y1=(e,t,n)=>{Qe(e,n.showClass.backdrop),n.animation?(t.style.setProperty("opacity","0","important"),Pt(t,"grid"),setTimeout(()=>{Qe(t,n.showClass.popup),t.style.removeProperty("opacity");},Kh)):Pt(t,"grid"),Qe([document.documentElement,document.body],H.shown),n.heightAuto&&n.backdrop&&!n.toast&&Qe([document.documentElement,document.body],H["height-auto"]);};var Nd={email:(e,t)=>/^[a-zA-Z0-9.+_'-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9-]+$/.test(e)?Promise.resolve():Promise.resolve(t||"Invalid email address"),url:(e,t)=>/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-z]{2,63}\b([-a-zA-Z0-9@:%_+.~#?&/=]*)$/.test(e)?Promise.resolve():Promise.resolve(t||"Invalid URL")};function Q1(e){e.inputValidator||(e.input==="email"&&(e.inputValidator=Nd.email),e.input==="url"&&(e.inputValidator=Nd.url));}function X1(e){(!e.target||typeof e.target=="string"&&!document.querySelector(e.target)||typeof e.target!="string"&&!e.target.appendChild)&&(Gt('Target parameter is not valid, defaulting to "body"'),e.target="body");}function Z1(e){Q1(e),e.showLoaderOnConfirm&&!e.preConfirm&&Gt(`showLoaderOnConfirm is set to true, but preConfirm is not defined.
showLoaderOnConfirm should be used together with preConfirm, see usage example:
https://sweetalert2.github.io/#ajax-request`),X1(e),typeof e.title=="string"&&(e.title=e.title.split(`
`).join("<br />")),Hb(e);}let Wn;var kr=new WeakMap;class xt{constructor(...t){if(vb(this,kr,void 0),typeof window>"u")return;Wn=this;const n=Object.freeze(this.constructor.argsToParams(t));this.params=n,this.isAwaitingPromise=false,xb(kr,this,this._main(Wn.params));}_main(t,n={}){if(Uh(Object.assign({},n,t)),De.currentInstance){const s=Ki.swalPromiseResolve.get(De.currentInstance),{isAwaitingPromise:r}=De.currentInstance;De.currentInstance._destroy(),r||s({isDismissed:true}),mc()&&xh();}De.currentInstance=Wn;const o=t0(t,n);Z1(o),Object.freeze(o),De.timeout&&(De.timeout.stop(),delete De.timeout),clearTimeout(De.restoreFocusTimeout);const i=n0(Wn);return wh(Wn,o),ct.innerParams.set(Wn,o),e0(Wn,i,o)}then(t){return Pd(kr,this).then(t)}finally(t){return Pd(kr,this).finally(t)}}const e0=(e,t,n)=>new Promise((o,i)=>{const s=r=>{e.close({isDismissed:true,dismiss:r});};Ki.swalPromiseResolve.set(e,o),Ki.swalPromiseReject.set(e,i),t.confirmButton.onclick=()=>{n1(e);},t.denyButton.onclick=()=>{o1(e);},t.cancelButton.onclick=()=>{i1(e,s);},t.closeButton.onclick=()=>{s(os.close);},g1(n,t,s),kv(De,n,s),Kv(e,n),K1(n),o0(De,n,s),i0(t,n),setTimeout(()=>{t.container.scrollTop=0;});}),t0=(e,t)=>{const n=F1(e),o=Object.assign({},Mi,t,n,e);return o.showClass=Object.assign({},Mi.showClass,o.showClass),o.hideClass=Object.assign({},Mi.hideClass,o.hideClass),o.animation===false&&(o.showClass={backdrop:"swal2-noanimation"},o.hideClass={}),o},n0=e=>{const t={popup:Je(),container:Yt(),actions:sr(),confirmButton:eo(),denyButton:xi(),cancelButton:ts(),loader:ns(),closeButton:pc(),validationMessage:Oa(),progressSteps:fc()};return ct.domCache.set(e,t),t},o0=(e,t,n)=>{const o=Ba();Ut(o),t.timer&&(e.timeout=new R1(()=>{n("timer"),delete e.timeout;},t.timer),t.timerProgressBar&&(Pt(o),hn(o,t,"timerProgressBar"),setTimeout(()=>{e.timeout&&e.timeout.running&&wc(t.timer);})));},i0=(e,t)=>{if(!t.toast){if(!Ma(t.allowEnterKey)){oh("allowEnterKey"),a0();return}s0(e)||r0(e,t)||uu(-1,1);}},s0=e=>{const t=Array.from(e.popup.querySelectorAll("[autofocus]"));for(const n of t)if(n instanceof HTMLElement&&rn(n))return n.focus(),true;return false},r0=(e,t)=>t.focusDeny&&rn(e.denyButton)?(e.denyButton.focus(),true):t.focusCancel&&rn(e.cancelButton)?(e.cancelButton.focus(),true):t.focusConfirm&&rn(e.confirmButton)?(e.confirmButton.focus(),true):false,a0=()=>{document.activeElement instanceof HTMLElement&&typeof document.activeElement.blur=="function"&&document.activeElement.blur();};xt.prototype.disableButtons=Lh;xt.prototype.enableButtons=Dh;xt.prototype.getInput=Ah;xt.prototype.disableInput=Mh;xt.prototype.enableInput=Th;xt.prototype.hideLoading=ta;xt.prototype.disableLoading=ta;xt.prototype.showValidationMessage=Oh;xt.prototype.resetValidationMessage=Bh;xt.prototype.close=Lo;xt.prototype.closePopup=Lo;xt.prototype.closeModal=Lo;xt.prototype.closeToast=Lo;xt.prototype.rejectPromise=kh;xt.prototype.update=jh;xt.prototype._destroy=zh;Object.assign(xt,B1);Object.keys(m1).forEach(e=>{xt[e]=function(...t){return Wn&&Wn[e]?Wn[e](...t):null};});xt.DismissReason=os;xt.version="11.22.4";const te=xt;te.default=te;typeof document<"u"&&(function(e,t){var n=e.createElement("style");if(e.getElementsByTagName("head")[0].appendChild(n),n.styleSheet)n.styleSheet.disabled||(n.styleSheet.cssText=t);else try{n.innerHTML=t;}catch{n.innerText=t;}})(document,':root{--swal2-outline: 0 0 0 3px rgba(100, 150, 200, 0.5);--swal2-container-padding: 0.625em;--swal2-backdrop: rgba(0, 0, 0, 0.4);--swal2-backdrop-transition: background-color 0.1s;--swal2-width: 32em;--swal2-padding: 0 0 1.25em;--swal2-border: none;--swal2-border-radius: 0.3125rem;--swal2-background: white;--swal2-color: #545454;--swal2-show-animation: swal2-show 0.3s;--swal2-hide-animation: swal2-hide 0.15s forwards;--swal2-icon-zoom: 1;--swal2-icon-animations: true;--swal2-title-padding: 0.8em 1em 0;--swal2-html-container-padding: 1em 1.6em 0.3em;--swal2-input-border: 1px solid #d9d9d9;--swal2-input-border-radius: 0.1875em;--swal2-input-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-background: transparent;--swal2-input-transition: border-color 0.2s, box-shadow 0.2s;--swal2-input-hover-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-focus-border: 1px solid #b4dbed;--swal2-input-focus-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px $swal2-outline-color;--swal2-progress-step-background: #add8e6;--swal2-validation-message-background: #f0f0f0;--swal2-validation-message-color: #666;--swal2-footer-border-color: #eee;--swal2-footer-background: transparent;--swal2-footer-color: inherit;--swal2-timer-progress-bar-background: rgba(0, 0, 0, 0.3);--swal2-close-button-position: initial;--swal2-close-button-inset: auto;--swal2-close-button-font-size: 2.5em;--swal2-close-button-color: #ccc;--swal2-close-button-transition: color 0.2s, box-shadow 0.2s;--swal2-close-button-outline: initial;--swal2-close-button-box-shadow: inset 0 0 0 3px transparent;--swal2-close-button-focus-box-shadow: inset var(--swal2-outline);--swal2-close-button-hover-transform: none;--swal2-actions-justify-content: center;--swal2-actions-width: auto;--swal2-actions-margin: 1.25em auto 0;--swal2-actions-padding: 0;--swal2-actions-border-radius: 0;--swal2-actions-background: transparent;--swal2-action-button-transition: background-color 0.2s, box-shadow 0.2s;--swal2-action-button-hover: black 10%;--swal2-action-button-active: black 10%;--swal2-confirm-button-box-shadow: none;--swal2-confirm-button-border-radius: 0.25em;--swal2-confirm-button-background-color: #7066e0;--swal2-confirm-button-color: #fff;--swal2-deny-button-box-shadow: none;--swal2-deny-button-border-radius: 0.25em;--swal2-deny-button-background-color: #dc3741;--swal2-deny-button-color: #fff;--swal2-cancel-button-box-shadow: none;--swal2-cancel-button-border-radius: 0.25em;--swal2-cancel-button-background-color: #6e7881;--swal2-cancel-button-color: #fff;--swal2-toast-show-animation: swal2-toast-show 0.5s;--swal2-toast-hide-animation: swal2-toast-hide 0.1s forwards;--swal2-toast-border: none;--swal2-toast-box-shadow: 0 0 1px hsl(0deg 0% 0% / 0.075), 0 1px 2px hsl(0deg 0% 0% / 0.075), 1px 2px 4px hsl(0deg 0% 0% / 0.075), 1px 3px 8px hsl(0deg 0% 0% / 0.075), 2px 4px 16px hsl(0deg 0% 0% / 0.075)}[data-swal2-theme=dark]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}@media(prefers-color-scheme: dark){[data-swal2-theme=auto]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto !important}body.swal2-no-backdrop .swal2-container{background-color:rgba(0,0,0,0) !important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:all}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px var(--swal2-backdrop)}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:rgba(0,0,0,0);pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%, -50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}@media print{body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow-y:scroll !important}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown) .swal2-container{position:static !important}}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start top top-end" "center-start center center-end" "bottom-start bottom-center bottom-end";grid-template-rows:minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);height:100%;padding:var(--swal2-container-padding);overflow-x:hidden;transition:var(--swal2-backdrop-transition);-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:var(--swal2-backdrop)}div:where(.swal2-container).swal2-backdrop-hide{background:rgba(0,0,0,0) !important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0, 1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0, 1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0, 1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;place-self:start center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;place-self:start end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;place-self:center center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;place-self:center end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;place-self:end center}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;place-self:end end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none !important}div:where(.swal2-container)[popover]{width:auto;border:0}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0, 100%);width:var(--swal2-width);max-width:100%;padding:var(--swal2-padding);border:var(--swal2-border);border-radius:var(--swal2-border-radius);background:var(--swal2-background);color:var(--swal2-color);font-family:inherit;font-size:1rem;container-name:swal2-popup}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable{cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable div:where(.swal2-icon){cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging{cursor:grabbing}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging div:where(.swal2-icon){cursor:grabbing}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:var(--swal2-title-padding);color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word;cursor:initial}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:var(--swal2-actions-justify-content);width:var(--swal2-actions-width);margin:var(--swal2-actions-margin);padding:var(--swal2-actions-padding);border-radius:var(--swal2-actions-border-radius);background:var(--swal2-actions-background)}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:var(--swal2-action-button-transition);border:none;box-shadow:0 0 0 3px rgba(0,0,0,0);font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){border-radius:var(--swal2-confirm-button-border-radius);background:initial;background-color:var(--swal2-confirm-button-background-color);box-shadow:var(--swal2-confirm-button-box-shadow);color:var(--swal2-confirm-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):hover{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):active{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny){border-radius:var(--swal2-deny-button-border-radius);background:initial;background-color:var(--swal2-deny-button-background-color);box-shadow:var(--swal2-deny-button-box-shadow);color:var(--swal2-deny-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):hover{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):active{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel){border-radius:var(--swal2-cancel-button-border-radius);background:initial;background-color:var(--swal2-cancel-button-background-color);box-shadow:var(--swal2-cancel-button-box-shadow);color:var(--swal2-cancel-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):hover{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):active{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):focus-visible{outline:none;box-shadow:var(--swal2-action-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-styled)[disabled]:not(.swal2-loading){opacity:.4}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){margin:1em 0 0;padding:1em 1em 0;border-top:1px solid var(--swal2-footer-border-color);background:var(--swal2-footer-background);color:var(--swal2-footer-color);font-size:1em;text-align:center;cursor:initial}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto !important;overflow:hidden;border-bottom-right-radius:var(--swal2-border-radius);border-bottom-left-radius:var(--swal2-border-radius)}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:var(--swal2-timer-progress-bar-background)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em;cursor:initial}div:where(.swal2-container) button:where(.swal2-close){position:var(--swal2-close-button-position);inset:var(--swal2-close-button-inset);z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:var(--swal2-close-button-transition);border:none;border-radius:var(--swal2-border-radius);outline:var(--swal2-close-button-outline);background:rgba(0,0,0,0);color:var(--swal2-close-button-color);font-family:monospace;font-size:var(--swal2-close-button-font-size);cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:var(--swal2-close-button-hover-transform);background:rgba(0,0,0,0);color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus-visible{outline:none;box-shadow:var(--swal2-close-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-html-container){z-index:1;justify-content:center;margin:0;padding:var(--swal2-html-container-padding);overflow:auto;color:inherit;font-size:1.125em;font-weight:normal;line-height:normal;text-align:center;word-wrap:break-word;word-break:break-word;cursor:initial}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:var(--swal2-input-transition);border:var(--swal2-input-border);border-radius:var(--swal2-input-border-radius);background:var(--swal2-input-background);box-shadow:var(--swal2-input-box-shadow);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474 !important;box-shadow:0 0 2px #f27474 !important}div:where(.swal2-container) input:where(.swal2-input):hover,div:where(.swal2-container) input:where(.swal2-file):hover,div:where(.swal2-container) textarea:where(.swal2-textarea):hover{box-shadow:var(--swal2-input-hover-box-shadow)}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:var(--swal2-input-focus-border);outline:none;box-shadow:var(--swal2-input-focus-box-shadow)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:var(--swal2-background)}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:var(--swal2-input-background);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:var(--swal2-input-background);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:var(--swal2-background);color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:var(--swal2-validation-message-background);color:var(--swal2-validation-message-color);font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message)::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:rgba(0,0,0,0);font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:var(--swal2-progress-step-background);color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:var(--swal2-progress-step-background)}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;zoom:var(--swal2-icon-zoom);border:.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}}div:where(.swal2-icon).swal2-warning{border-color:#f8bb86;color:#f8bb86}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}}div:where(.swal2-icon).swal2-info{border-color:#3fc3ee;color:#3fc3ee}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}}div:where(.swal2-icon).swal2-question{border-color:#87adbd;color:#87adbd}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-0.25em;left:-0.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:var(--swal2-show-animation)}.swal2-hide{animation:var(--swal2-hide-animation)}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}.swal2-toast{box-sizing:border-box;grid-column:1/4 !important;grid-row:1/4 !important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;border:var(--swal2-toast-border);background:var(--swal2-background);box-shadow:var(--swal2-toast-box-shadow);pointer-events:all}.swal2-toast>*{grid-column:2}.swal2-toast h2:where(.swal2-title){margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-toast .swal2-loading{justify-content:center}.swal2-toast input:where(.swal2-input){height:2em;margin:.5em;font-size:1em}.swal2-toast .swal2-validation-message{font-size:1em}.swal2-toast div:where(.swal2-footer){margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-toast button:where(.swal2-close){grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-toast div:where(.swal2-html-container){margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-toast div:where(.swal2-html-container):empty{padding:0}.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:bold}.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-toast div:where(.swal2-actions){justify-content:flex-start;height:auto;margin:0;margin-top:.5em;padding:0 .5em}.swal2-toast button:where(.swal2-styled){margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;border-radius:50%}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.8em;left:-0.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}@container swal2-popup style(--swal2-icon-animations:true){.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}}.swal2-toast.swal2-show{animation:var(--swal2-toast-show-animation)}.swal2-toast.swal2-hide{animation:var(--swal2-toast-hide-animation)}@keyframes swal2-show{0%{transform:scale(0.7)}45%{transform:scale(1.05)}80%{transform:scale(0.95)}100%{transform:scale(1)}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(0.5);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-0.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(0.4);opacity:0}50%{margin-top:1.625em;transform:scale(0.4);opacity:0}80%{margin-top:-0.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0deg);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}100%{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotateZ(45deg);opacity:0}25%{transform:rotateZ(-25deg);opacity:.4}50%{transform:rotateZ(15deg);opacity:.8}75%{transform:rotateZ(-5deg);opacity:1}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-toast-show{0%{transform:translateY(-0.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(0.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0deg)}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-0.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}');const Gh=mt.clouddrive;var To=(e=>(e.windows="windows",e.macos="macos",e.linux="linux",e.android="android",e))(To||{}),pi=(e=>(e.unknown="unknown",e.classic="classic",e.modern="modern",e))(pi||{}),Uo=(e=>(e.play="play",e.download="download",e))(Uo||{});function Cc(e){return {active:false,url:"http://localhost:19798",root:"/115",memo:"",platform:void 0,ver_lt_0816:false,...e}}async function Jh(){const e=[Cc()],t=await Xe.get(Gh,e);return t||e}async function Ud(e){e.some(t=>t.active)||(e[0].active=true),await Xe.set(Gh,e);}async function Qt(){return (await Jh()).find(t=>t.active)||Cc()}function l0(e){if(!document.execCommand)return false;const t=document.createElement("input");t.style.position="fixed",t.style.opacity="0",t.value=e,document.body.appendChild(t),t.select();try{return document.execCommand("Copy")}catch(n){console.warn("[copyViaCmd] execCommand",n);}finally{document.body.removeChild(t);}return false}function u0(e){prompt("请复制以下内容:",e);}function c0(e=navigator.userAgent){return e.indexOf("Safari")>-1&&e.indexOf("Chrome")<=-1}function gt(e){const t=()=>{l0(e)||(c0()?u0(e):Jy(e,"text/plain"));};navigator.clipboard?navigator.clipboard.writeText(e).then(()=>{}).catch(n=>{console.warn("[copyToClipboard] navigator.clipboard",n),t();}):t();}function Na(e="",t=""){return e+Date.now().toString()+Math.random().toString(36).substring(5)+t}function d0(e,t="NFD"){return e.normalize(t)}function f0(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Yh(e,t){return e=e.replace(/^[\/]+/g,""),"/"+e}function Qh(e){return e.startsWith("file://")}function p0(e){switch(e){case To.windows:return ["/","\\",":","*","?",'"',"<",">","|"];case To.macos:return ["/",":"];case To.linux:case To.android:return ["/","\0"];default:return ["/","\0"]}}function un(e,t,n=true){const o=p0(e.platform||To.linux);let i=Array.from(t).map(s=>{if(o.includes(s)){const r=s.charCodeAt(0)+65248;return String.fromCharCode(r)}else return s==="\r"||s===`
`?" ":s}).join("");for(;i.endsWith(".")||i.endsWith(" ");)i.endsWith(".")?i=i.replace(/\.+$/,""):i=i.replace(/\s+$/,"");return n&&(i=kc(e,i)),i}async function Ji(e,t,n=Uo.play,o=true,i=""){Array.isArray(t)?t=[...t].map(f=>un(e,f,true)).join("/"):t=kc(e,t);let{url:s,root:r}=e;if(!s)throw new Error("未设置CloudDrive地址!");(s.startsWith("/")||s.startsWith("\\"))&&(s=`file:///${s}`),Qh(s);const a=/^https?:\/\//.test(s);if(a&&!r)throw new Error("当协议为http/https时,必须设置CloudDrive资源根路径!");r&&(r=r.replace(/^(\/+)?/g,"/")),t=t.replace(/^(\/+)?/g,"/");const l=`${r}${t}`,c=n===Uo.play?"True":"False";let u="";return s=s.replace(/\/+$/,""),a?u=`${s}/static/${s.replace("://","/")}/${c}/${encodeURIComponent(l)}`:u=`${s}${l}`,i&&(u+=i),o&&(u+="?check_expire=True"),console.log("[Cloud115 Enhancer] buildCloudDriveUrl",u),u}async function du(e,t,n=true){let{url:o,root:i}=e;if(!o)throw new Error("未设置CloudDrive地址!");return Qh(o)?await Ji(e,t,Uo.play,n):await Ji(e,t,Uo.play,n,".clfsplaylist.m3u")}async function h0(e,t,n=pi.classic){let{url:o}=e;if(!o)throw new Error("未设置CloudDrive地址!");return o.startsWith("http")||(o=`http://${o}`),o=o.replace(/\/+$/,""),t=e.root.replace(/\/+$/,"")+t,t=t.replace(/^(\/+)?/g,"/"),t=kc(e,t),n===pi.modern?`${o}/?page=files&path=${encodeURIComponent(t)}`:`${o}/#${t}?a=1`}function kc(e,t){return e.platform===To.macos?d0(t,e.ver_lt_0816?"NFD":"NFC"):t}const Oi=te.mixin({toast:true,position:"top-end",showConfirmButton:false,timer:3e3,timerProgressBar:true,didOpen:e=>{e.addEventListener("mouseenter",te.stopTimer),e.addEventListener("mouseleave",te.resumeTimer);},customClass:{popup:"swal-toast"}});async function m0(e,t){e.addEventListener("keydown",n=>{const o=n.target;if(!Gp(o))return;let i=false;n.key==="Enter"&&(n.ctrlKey||n.metaKey)&&(i=true),i&&te.clickConfirm();});}async function Y(e){return te.fire({toast:true,position:"top-right",showConfirmButton:false,timer:3e3,timerProgressBar:true,didOpen:t=>{t.addEventListener("mouseenter",te.stopTimer),t.addEventListener("mouseleave",te.resumeTimer);},...e})}async function g0(e,t,n=false){const o=new Map;if(!e.length)return o;t=t||await Qt();let i=new Map;n||(Y({text:"正在获取上级目录路径...",timer:0}),te.showLoading());try{i=await q0(e),n||te.close();}catch(s){return console.error(s),n||Y({text:`获取上级目录路径失败: ${s}`,timer:1200,icon:"error"}),o}finally{n||te.hideLoading();}if(i.size===0)return o;for(let s=0;s<e.length;s++){const r=i.get(e[s].parentId)?.slice(1).join("/"),a=e[s].name,l=Yh(r+"/"+a),c=e[s].isFile?await Ji(t,l,Uo.play):await du(t,l);o.set(l,c);}return console.log("[buildCloudDriveUrlsForFileItems] pathToUrl:",o),o}async function w0(e,t,n=false){return new Promise(async(o,i)=>{const s=await Ji(e,t,void 0,n);Ia({method:"HEAD",url:s,onload:r=>o(r.status===200),onerror:r=>i(r)});})}async function y0(e,t,n,o,i){const r=`waitFileExist_${Na()} path: ${t}`;console.time(r);async function a(l){const c=await w0(e,t,n);c&&l(c);}try{await qo(a,o,i);}catch{throw new Error(`[waitFileExist] 检查文件存在超时!文件路径: ${t}`)}finally{console.timeEnd(r);}}function b0(e){return new Promise((t,n)=>{Ia({method:"HEAD",url:e.url,onload:o=>{parseInt(o.responseHeaders.match(/Content-Length:\s*(\d+)/i)?.[1]||"0")<5e3?t(pi.classic):t(pi.modern);},onerror:o=>{n(new Error(`获取CloudDrive页面版本失败: ${o.statusText}`));}});})}async function v0(e){let t=`#EXTM3U
`;for(const[n,o]of e)t+=`#EXTINF:0,${n}
${o}
`;return t}var Mo=(e=>(e.unix="/",e.windows="\\",e))(Mo||{});function ia(e,t="/"){return e.map((n,o)=>o===0?n:Ua(n,t)).join(t)}function Ua(e,t="/"){return e=e.replace(/[\\/]/g,t),t==="/"?e=e.replace(/\/+/g,t):e=e.replace(/\\+/g,t),e.length>1&&e.endsWith(t)&&(e=e.slice(0,-1)),e}function x0(e){return e.startsWith("/")}function _0(e){return e===""||e==="/"||e==="\\"}function fu(e,t,n="/"){if(x0(t))return t;const o=new URL(e,"http://example.com");o.pathname=C0(o.pathname,t);let i=decodeURIComponent(o.pathname);return Ua(i,n)}function C0(e,t){const n=e.endsWith("/")?e:e+"/",o=t.startsWith("/")?t.slice(1):t;return n+o}function Xh(e,t=/^\w+$/){const n=e.lastIndexOf(".");if(n===-1)return "";const o=e.slice(n+1);return t&&!t.test(o)?"":o}function Sc(e){return JSON.parse(JSON.stringify(e))}function k0(e){return Object.prototype.toString.call(e)==="[object Object]"}function jd(e){return k0(e)&&!Array.isArray(e)}function $c(...e){const t={};for(const n of e)for(const o in n)Object.prototype.hasOwnProperty.call(n,o)&&(jd(n[o])&&jd(t[o])?t[o]=$c(t[o],n[o]):t[o]=n[o]);return t}function S0(e){const t=new Map;for(const[n,o]of e)t.set(o,n);return t}function ja(e){const t=new URLSearchParams;let n;for(n in e)t.append(n,e[n].toString());return t.toString()}function $0(e,t=false){const n=[];for(const o in e){let i=e[o].toString();i=t?encodeURIComponent(i):i,n.push(`${o}=${i}`);}return n.join("&")}function E0(e){const t=new FormData;let n;for(n in e)t.append(n,e[n].toString());return t}const Zh=mt.anxia;var za=(e=>(e.anxia="v.anxia.com",e.vod="115vod.com",e))(za||{});const em={"3G":"标清",SD:"高清",HD:"超清",UD:"1080P",BD:"4K",YH:"原画"};function A0(e){return {defaultWebFull:false,defaultOpenPlayList:false,defaultDefinition:"",...e}}async function tm(){const e=A0(),t=await Xe.get(Zh,e);return {...e,...t}}async function P0(e){await Xe.set(Zh,e);}let nm;function I0(e){nm=e;}function Ot(){return nm}async function Nt(e){const t=new URLSearchParams({cid:e});return (await Ot().get("https://webapi.115.com/category/get?"+t.toString(),{timeout:12e4,withCredentials:true})).data}async function D0(e){const t={path:e};return (await Ot().get("https://webapi.115.com/files/getid?"+ja(t),{timeout:12e4,withCredentials:true})).data}async function Ec(e,t){const n=new URLSearchParams({pid:e,ignore_warn:"1"});return t.forEach((i,s)=>{n.append(`fid[${s}]`,i);}),(await Ot().post("https://webapi.115.com/rb/delete",n,{timeout:12e4,withCredentials:true})).data}async function El(e,t,n=1150,o=1e3){let i=0,s=0;for(;;){const r=t.slice(i,i+n);if((await Ec(e,r)).state&&(s+=r.length),i+=n,i>=t.length)break;await Mt(o);}return s}async function om(e,t){const n=new URLSearchParams({pid:e,cname:t});return (await Ot().post("https://webapi.115.com/files/add",n,{timeout:12e4,withCredentials:true})).data}async function im(e,t){const n=new URLSearchParams({pid:e});return t.forEach((i,s)=>{n.append(`fid[${s}]`,i);}),(await Ot().post("https://webapi.115.com/files/move",n,{timeout:12e4,withCredentials:true})).data}var Sn=(e=>(e[e.all=0]="all",e[e.video=4]="video",e[e.audio=3]="audio",e[e.image=2]="image",e[e.doc=1]="doc",e[e.app=6]="app",e[e.archive=5]="archive",e[e.file=99]="file",e))(Sn||{}),nn=(e=>(e.all="全部",e.video="视频",e.audio="音频",e.image="图片",e.doc="文档",e.app="应用",e.archive="压缩包",e.file="仅文件",e))(nn||{}),Ha=(e=>(e.userPtime="user_ptime",e.fileName="file_name",e.fileSize="file_size",e.fileType="file_type",e))(Ha||{}),pu=(e=>(e[e.normal=0]="normal",e[e.violation=1]="violation",e[e.auditing=2]="auditing",e))(pu||{}),sm=(e=>(e.file="1",e.folder="0",e))(sm||{});async function L0(e){/^\d+$/.test(e.target)&&(e.target=`U_1_${e.target}`);const t=ja(e);return (await Ot().post("https://uplb.115.com/3.0/sampleinitupload.php",t,{timeout:12e4,withCredentials:true})).data}async function T0(e,t){const n=await L0(t),o=new FormData;o.append("name",t.filename),o.append("key",n.object),o.append("policy",n.policy),o.append("OSSAccessKeyId",n.accessid),o.append("success_action_status","200"),o.append("callback",n.callback),o.append("signature",n.signature),o.append("file",e);const i=n.host.replace(/^http:/,"https:");return (await Ot().post(i,o,{timeout:18e5})).data}var Oo=(e=>(e[e.true=1]="true",e[e.false=0]="false",e))(Oo||{});class rm extends Error{}class Ac extends rm{constructor(t="搜索失败!"){super(t);}}class am extends Ac{constructor(t="搜索请求响应内容为空!"){super(t);}}class Pc extends rm{constructor(t="目录不存在!"){super(t);}}var lm=(e=>(e[e.exist=20004]="exist",e))(lm||{});const M0={10013:"超出任务大小限制",10018:"审核中...",10016:"文件内含违规内容"};async function jt(e=true){const t=kt();let n=t.GetCurWangPanCid?t.GetCurWangPanCid():"";return n===0&&(n="0"),n==="0"&&e?(t.Core.MinMessage.Show({text:'不支持"根目录"!',timeout:1e3}),""):n}function um(e={}){return {move:true,rename:true,delete:true,more:true,classList:"ce-temp-item",...e}}async function cm(e,t,n={}){const o=!t.sha1,i=o?"":Xh(t.file_name),s=o?"folder":i.toLowerCase(),r=o?"文件夹":i.toUpperCase()+"文件",a=o?"cate_id":"file_id";let l=$(`li.temp-el[${a}="${e}"]`);if(!l.length){const f=[];f.push(o?`<a class="name" href="javascript:;" cate="1" menu="open" aid="1" cid="${e}" rel="view_folder">
<span>${t.file_name}</span>
</a>`:`<a class="name" href="javascript:;" menu="view_file_one" rel="file" field="file_name">
<span>${t.file_name}</span>
</a>`),n.star&&f.push(`<a href="javascript:;" class="icon-star ${t.is_mark==="1"?"i-star-active":""}" menu="star" start_point="1" is_star="${t.is_mark}" data_title="星标">星标</a>`),n.remark&&f.push('<a href="javascript:;" class="icon-remarks" style="display: none;" menu="remark"></a>'),n.scores&&f.push('<div class="score-stars" menu="file_score"></div>');const p=n.labels?`<div class="labels-text" style="display: none;" rel="label_box">
<span style="cursor: pointer; display: none;" class="ic-ellipsis" rel="more_label">...</span>
</div>`:"",w=[];n.setTop&&w.push(`<a href="javascript:;" menu="setTop" rel="setTop">
<i class="icon-operate ifo-filesettop" menu="setTop"></i>
<span menu="setTop">置顶</span>
</a>`),n.move&&w.push(`<a href="javascript:;" menu="move">
<i class="icon-operate ifo-move" menu="move"></i>
<span menu="move">移动</span>
</a>`),n.rename&&w.push(`<a href="javascript:;" menu="edit_name">
<i class="icon-operate ifo-rename" menu="edit_name"></i>
<span menu="edit_name">重命名</span>
</a>`),n.delete&&w.push(`<a href="javascript:;" menu="delete">
<i class="icon-operate ifo-remove" menu="delete"></i>
<span menu="delete">删除</span>
</a>`);const m=[`<div class="file-name-wrap">
<i class="file-type tp-${s}" folder-type="shared"></i>
<span class="file-name" rel="file_name">
<em>
${f.join(`
`)}
</em>
</span>
${p}
</div>`,`<div class="file-size"><span>${o?"":t.size}</span></div>`,`<div class="file-typename"><span>${r}</span></div>`,`<div class="file-modified">${new Date(Number(t.utime)*1e3).toLocaleString()}</div>`,'<div class="file-directory"></div>',`<div class="file-opr" rel="menu">
${w.join(`
`)}
</div>`],y=`
<li rel="item" class="temp-el" file_type="${o?0:1}">
<s class="drag-flag" data-rel="drag" style="cursor: pointer;"></s>
<textarea style="display: none;" field="desc"></textarea>
<textarea style="display: none;" field="ext3"></textarea>
<input type="checkbox" value="${e}"/>
<div class="checkbox" menu="file_check_one"></div>
${m.join(`
`)}
</li>
`;l=$(y);}l.find("a.name > span").text(t.file_name),n.classList&&l.addClass(n.classList);const c=t.paths[t.paths.length-1].file_id;let u={rel:"item",c:"0",hdf:"0",title:t.file_name,file_type:o?0:1,pick_code:t.pick_code,is_share:t.is_share||"0",shared:t.is_share||"0",area_id:"1",p_id:c,score:t.score};o?u={...u,cate_id:e,cate_name:t.file_name}:u={...u,file_id:e,cid:c,iv:t.play_long?"1":"0",ico:i,sha1:t.sha1};for(let f in u)l.attr(f,u[f]);return l}function mn(e){const t=Ic(e);return _i(t)}function Ic(e){(e instanceof HTMLElement||!e.jquery)&&(e=$(e));const t=e.attr("file_size"),n=e.attr("iv")==="1",o=ko(),i=e.attr("file_id")||"",s=!!i,r=e.attr("c")||"",a=e.attr("fvs")||"",l={n:e.attr("title")||"",s:t?parseInt(t):0,pc:e.attr("pick_code")||"",t:e.attr("user_ptime")||"",te:"",tp:"",ico:e.attr("ico")||"",sha:e.attr("sha1")||"",iv:n,c:r?parseInt(r):0,fuuid:e.attr("fuuid"),fvs:a?parseInt(a):0};let c={n:l.n};if(!o)c={fid:i,cid:(s?e.attr("cid"):e.attr("cate_id"))||"",pid:s?"":e.attr("p_id")||"",...l};else if(c={fid:i,cid:(s?e.attr("cid"):e.attr("cate_id"))||"",...l},!s){const u=e.find(".file-directory a[cid]");if(u.length)c.pid=u.attr("cid");else throw console.warn("无法获取上级目录ID!",e),new Error("无法获取上级目录ID!")}return {...c,...l}}async function so(e){const t=F0(e);return dm(t)}function dm(e){const t=[];for(let n=0;n<e.length;n++){const o=_i(e[n]);t.push(o);}return t}function _i(e){const t=!!e.fid,n=e.iv===true||e.iv?.toString()==="1",o=t?cb(e.n):null,i={id:t?e.fid:e.cid,name:e.n,hash:e.sha,parentId:t?e.cid:e.pid,sizeRaw:e.s,sizeDesc:e.s?.toString(),sizeBytes:0,isFile:t,isDir:!t,transcoded:n,isVideo:n||o===au.video,isImage:o===au.image,pickCode:e.pc,playDuration:e.play_long};return typeof e.s=="number"?i.sizeBytes=e.s:typeof e.s=="string"&&/^\d+$/.test(e.s)&&(i.sizeBytes=parseInt(e.s)),i.sizeDesc=Wi(i.sizeBytes||0),i}function kt(){return unsafeWindow.TOP?unsafeWindow.TOP:unsafeWindow}function O0(){return unsafeWindow.top===unsafeWindow?unsafeWindow.Ext:unsafeWindow.top.Ext}async function B0(){const e=await jt();return R0(e,um({classList:"ce-temp-cur-dir"}))}async function R0(e,t={}){const n=await Nt(e);return await cm(e,n,t)}function is(){return window.top!==window?$(document):$('iframe[name="wangpan"], .wrap-view iframe:eq(0)').contents()}function Ci(){return is().find(".list-contents, .list-thumb")}function Dc(e){const t=Ci();return e?t.find("li.selected:not(.ce-temp-cur-dir)"):t.find("li:not(.ce-temp-cur-dir)")}function F0(e){const t=Dc(e),n=[];for(let o=0;o<t.length;o++){const i=t.eq(o),s=Ic(i);n.push(s);}return n}function hu(e="/"){const t=N0();return e+t.slice(1).join(e)}function N0(){const e=is(),t=[];return e.find("#js_top_header_file_path_box .top-file-path > .file-path").children().each(function(){t.push($(this).text().trim().replace(/[›]$/,""));}),t}function fm(){return is().find("#js_top_header_file_path_box .top-file-path > .file-path").children(":last")}async function U0(){const e=await jt();Ci().find("li.selected").each(function(){const n=$(this);n.attr("cate_id")!==e&&(n.find('input[type="checkbox"]').prop("checked",false),n.removeClass("selected"));});}async function Wo(e=false,t=0,n=true){const o=await jt();if(!o)return null;const i=Ci(),s=await B0();return e||s.hide(),i.find(`li[cate_id="${o}"]`).length||(i.is("ul")?n?i.parent().prepend(s):i.append(s):n?i.prepend(s):i.find("ul").prepend(s)),t>0&&setTimeout(()=>{s.remove();},t),s}async function j0(e,t,n){await U0(),kt().Core.FileMenu.DoEvent([e],t,null);}function z0(e,t=""){return `https://115.com/?ct=preview&ac=location&pickcode=${e}&sha1=${t}`}function Bn(e){return `https://115.com/?${new URLSearchParams({cid:e}).toString()}&offset=0&mode=wangpan`}function vn(e=location.href){return e.includes("ac=userfile")}function ko(e=location.href){return e.includes("ac=search")}function mu(e=location.href){return /(115|anxia|115cdn)\.com\/s\/\w+/.test(e)||/share\.115\.com/.test(e)}function pm(e,t=""){const n={aid:"1",cid:e.cid||"0",old_cid:e.cid||"",old_cid_name:t,search_value:encodeURIComponent(e.search_value),ct:"file",ac:"search",is_wl_tpl:"1"};return "https://115.com/?url="+encodeURIComponent(`/?${$0(n)}`)+"&submode=wangpan&mode=search"}function hm(e,t=za.vod){const n=new URLSearchParams({pickcode:e,share_id:"0"});return `https://${t}/?${n.toString()}`}function Lc(e){return /^https?:\/\//.test(e)&&(e=new URL(e).host),Object.values(za).includes(e)}async function mm(e){unsafeWindow.Main.ReInstance({type:e.type,offset:0,o:Ha.userPtime,asc:Oo.false,star:e.star,suffix:e.suffix});}function H0(){return Ci().find("li.selected")}function V0(){const e=H0();return e?Ic(e):null}const Al=new Map;async function Va(e,t=false){const n=e.name;if(t&&e.parentId&&Al.has(e.parentId)){const s=Al.get(e.parentId);if(s)return [...s,n]}const i=(await Nt(e.id)).paths.slice(1).map(s=>s.file_name);return e.parentId&&Al.set(e.parentId,i),[...i,n]}async function q0(e,t=100){const n=new Map;for(const s of e){const r=s.parentId;if(!r)throw new Error(`文件"${s.name}"没有父级目录ID!`);n.has(r)?n.get(r)?.push(s):n.set(r,[s]);}const o=[];for(const s of n.values())o.push(s[0]);const i=new Map;for(const s of o){const r=await Nt(s.id);await Mt(t),i.set(s.parentId,r.paths.map(a=>a.file_name));}return i}async function W0(e,t=100){const n=new Map;for(const s of e){const r=s.parentId;if(!r)throw new Error(`文件"${s.name}"没有父级目录ID!`);n.has(r)?n.get(r)?.push(s):n.set(r,[s]);}const o=[];for(const s of n.values())o.push(s[0]);const i=new Map;for(const s of o){const r=await Nt(s.id);await Mt(t),i.set(s.parentId,r.paths);}return i}async function K0(e,t){const n=new File([e],t.filename,{type:"text/plain"});return T0(n,t)}async function G0(e,t,n){const o=await g0(e),i=await v0(o);n=n||Na();let s=t;return /m3u8$/.test(n)||(n+=".m3u8"),await K0(i,{filename:n,target:s})}const Pl=new Map;async function Bi(e,t=false){if(e=Ua(e,Mo.unix),e=e.replace(/^[\/]+/,"").replace(/[\/]+$/,""),t&&Pl.has(e))return Pl.get(e);if(e===""||e==="/")return "0";const n=await D0(e);if(!n.state)throw new Error(`根据路径"${e}"获取目录ID失败: ${n.error}`);if(n.id&&n.id.toString()!=="0")return Pl.set(e,n.id.toString()),n.id.toString();throw new Pc(`根据路径"${e}"获取目录ID失败: 目录不存在!`)}async function J0(e){e=e.replace(/^\//,"").replace(/\/$/,"");const t={id:"",created:false,pathToId:new Map};if(e===""||e==="/")return t.id="0",t;const n=e.split("/").filter(s=>s);let o="0",i="";for(const s of n){i+="/"+s;let r="";try{r=await Bi(i,!0),t.pathToId.set(i,r);}catch(a){if(a instanceof Pc){const l=await om(o,s);if(!l.state)throw new Error(`创建目录"${s}"失败: ${l.errno} - ${l.error}`);r=l.cid.toString();}else throw a}o=r,t.pathToId.set(i,r);}return t.id=o,t}async function Y0(e,t,n=true){let o="";const i=await om(t,e);if(i.state)o=i.cid.toString();else {if(i.errno===lm.exist&&n){const s=await Nt(t);if(!s.pick_code)throw new Error(`获取目录"${t}"属性失败: ${s.errno} - ${s.error}`);const r=[...s.paths.slice(1).map(a=>a.file_name),s.file_name,e].join("/");return await Bi(r,true)}throw new Error(`创建目录"${e}"失败: ${i.errno} - ${i.error}`)}return o}const Tc=typeof Buffer=="function";typeof TextDecoder=="function"&&new TextDecoder;const zd=typeof TextEncoder=="function"?new TextEncoder:void 0,Q0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",ws=Array.prototype.slice.call(Q0);(e=>{let t={};return e.forEach((n,o)=>t[n]=o),t})(ws);const Vn=String.fromCharCode.bind(String);typeof Uint8Array.from=="function"&&Uint8Array.from.bind(Uint8Array);const X0=e=>e.replace(/=/g,"").replace(/[+\/]/g,t=>t=="+"?"-":"_"),Z0=e=>{let t,n,o,i,s="";const r=e.length%3;for(let a=0;a<e.length;){if((n=e.charCodeAt(a++))>255||(o=e.charCodeAt(a++))>255||(i=e.charCodeAt(a++))>255)throw new TypeError("invalid character found");t=n<<16|o<<8|i,s+=ws[t>>18&63]+ws[t>>12&63]+ws[t>>6&63]+ws[t&63];}return r?s.slice(0,r-3)+"===".substring(r):s},gm=typeof btoa=="function"?e=>btoa(e):Tc?e=>Buffer.from(e,"binary").toString("base64"):Z0,ex=Tc?e=>Buffer.from(e).toString("base64"):e=>{let n=[];for(let o=0,i=e.length;o<i;o+=4096)n.push(Vn.apply(null,e.subarray(o,o+4096)));return gm(n.join(""))},tx=e=>{if(e.length<2){var t=e.charCodeAt(0);return t<128?e:t<2048?Vn(192|t>>>6)+Vn(128|t&63):Vn(224|t>>>12&15)+Vn(128|t>>>6&63)+Vn(128|t&63)}else {var t=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return Vn(240|t>>>18&7)+Vn(128|t>>>12&63)+Vn(128|t>>>6&63)+Vn(128|t&63)}},nx=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,ox=e=>e.replace(nx,tx),Hd=Tc?e=>Buffer.from(e,"utf8").toString("base64"):zd?e=>ex(zd.encode(e)):e=>gm(ox(e)),Vd=(e,t=false)=>t?X0(Hd(e)):Hd(e);var Mc=(e=>(e.search="search",e.encode="encode",e.base64="base64",e.base64safe="base64safe",e.upper="upper",e.lower="lower",e.number="number",e.manual="manual",e))(Mc||{});const ix=[{label:"文件属性变量",items:[{key:"{dir_id}",label:"文件夹ID"},{key:"{file_id}",label:"文件ID"},{key:"{pick_code}",label:"提取码"},{key:"{pure_name}",label:"不含后缀的文件名"},{key:"{full_name}",label:"完整名称"},{key:"{file_suffix}",label:"文件后缀名"},{key:"{file_hash}",label:"文件hash"},{key:"{file_size}",label:"文件大小"},{key:"{file_path}",label:"文件路径"},{key:"{file_dir}",label:"文件目录路径"}]},{label:"高级变量",items:[{key:"{clouddrive_stream_url}",label:"CloudDrive链接(用于播放,目录链接是m3u)"},{key:"{clouddrive_down_url}",label:"CloudDrive文件链接"},{key:"{clouddrive_playlist_url}",label:"CloudDrive播放列表链接"},{key:"{user_agent}",label:"浏览器UA"}]},{label:"变量函数处理",memo:"支持多个函数,函数之间使用英文冒号分隔,如:{变量名:encode:base64}。调用顺序从左到右。",items:[{key:"{变量名:search}",label:"搜索链接"},{key:"{变量名:encode}",label:"url编码"},{key:"{变量名:base64}",label:"base64编码"},{key:"{变量名:base64safe}",label:"base64安全编码"},{key:"{变量名:upper}",label:"转大写"},{key:"{变量名:lower}",label:"转小写"},{key:"{变量名:number}",label:"转数字"},{key:"{变量名:manual}",label:"手动输入"}]}];var wm=(e=>(e.first="first",e.last="last",e))(wm||{});function sx(e,t,n){const{names:o,position:i}=t;let s=[];return i==="first"?s=[...o,...e]:s=[...e,...o],n?Array.from(new Set(s)):s}async function Os(e,t,n,o,i=false){let s=t.url;const r={dir_id:"id",file_id:"id",pick_code:"pickCode",full_name:"name",file_suffix:"suffix",file_hash:"hash",file_size:"sizeBytes"},a=e.isFile,l=/{(\w+)(:\w+(:\w+)?)?}/g,c=s.match(l);if(c){const u=["file_path","file_dir","clouddrive_stream_url","clouddrive_down_url","clouddrive_playlist_url"];for(const f of c){const p=f.replace(/[{}]/g,"").split(":")[0],w=f.replace(/[{}]/g,"").replace(/^[^:]+:/,"");let m=e[r[p]]?.toString()||"",y="",v=[];switch(u.includes(p)&&(v=await Va(e),i&&(v=v.map(E=>un(n,E,true))),y=v.join("/")),p){case "pure_name":a?m=e.name.replace(/\.[^.]+$/,""):m=e.name;break;case "file_path":m=y;break;case "file_dir":m=y.replace(/\/[^/]+$/,"");break;case "clouddrive_stream_url":a?m=await Ji(n,v,Uo.download):m=await du(n,v);break;case "clouddrive_down_url":m=await Ji(n,v,Uo.download);break;case "clouddrive_playlist_url":let E=[];a?E=v.slice(0,-1):E=v,m=await du(n,E);break;case "user_agent":m=navigator.userAgent;break}if(m=m.toString(),w){let E=w.split(":");o&&(E=sx(E,o,false)),console.log(`[buildCustomUrl] functions: ${w}, after merge: ${E.join(":")}`);for(const L of E)switch(L){case "search":m=pm({search_value:m});break;case "encode":m=encodeURIComponent(m);break;case "base64":m=Vd(m);break;case "base64safe":m=Vd(m,true);break;case "upper":m=m.toUpperCase();break;case "lower":m=m.toLowerCase();break;case "number":m=m.replace(/\D/g,"");break;case "manual":m=await rx(m);break}}s=s.replace(f,m);}}return t.mutation?await ax(s,e,t,n):s}async function rx(e){let{isConfirmed:t,value:n}=await te.fire({title:"手动输入",html:`<div>按下「Ctrl + 回车」或「Command + 回车」确认</div><hr class="ce-hr"/><div><textarea readonly class="ce-textarea-trans" style="width:92%;">原始: ${e}</textarea></div>`,input:"textarea",inputValue:e,showCancelButton:true,inputValidator:o=>o?null:"输入不能为空!",didOpen:o=>{nb(o),m0(o);},customClass:{popup:"ce-swal-text-left"}});if(!t)throw new Error("已取消手动输入。");if(n=n?.trim()||"",n==="")throw new Error("输入不能为空!");return e=n,e}async function ax(e,t,n,o){return await(typeof n.mutation=="function"?n.mutation:new Function("payload",n.mutation))({url:e,file:t,customUrl:n,cloudDriveConfig:o})}var to=(e=>(e.search="search",e.play="play",e))(to||{});const lx=mt.menuCustomUrlsForSearch,ux=mt.menuCustomUrlsForPlay,ym={search:lx,play:ux};async function ki(e){return await Xe.get(ym[e],[])}async function bm(e,t){await Xe.set(ym[e],t);}function Ct(e){return {enabled:true,key:"",label:"",icon:"",memo:"",extraMemo:"",url:"",openInBackground:false,...e}}const vm=mt.enabledCustomUrlsForSearch,xm=mt.enabledCustomUrlsForPlay;async function cx(e){await Xe.set(vm,e);}async function dx(e){await Xe.set(xm,e);}async function fx(){const e=wu,t=e.filter(i=>i.enabled).map(i=>i.key),n=await Xe.get(vm,t),o=[];return e.forEach(i=>{n.includes(i.key)&&o.push(i.key);}),o}async function px(){const e=gu,t=e.filter(i=>i.enabled).map(i=>i.key),n=await Xe.get(xm,t),o=[];return e.forEach(i=>{n.includes(i.key)&&o.push(i.key);}),o}async function ur(){const e=await fx();return wu.forEach(t=>{t.enabled=e.includes(t.key);}),wu}async function _m(){const e=await px();return gu.forEach(t=>{t.enabled=e.includes(t.key);}),gu}const qd="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABu0lEQVRYhe2WsVXDMBCG/xNNSrFBmAB3tBEZIJkAmCBog9gbGLNAwgQwQJ5MSecNYASVaayjcBIrEDvye06V/JVs/777fJJOBi666NxFoUapzQiunAJiAmC4uV2AuACJxKbq5yQAUhsJxhzMuj0SpxsQ2xuA1EbCuRyg28B4BQSpLhCi9SljvpeckUOQgqBrm90TBCkAS++NCOzmocmBlgpIbYZw/O3RJDYbxwe9s1UMUJ24qkIeAtBcAVfWyYgWTckBwGbjGIw6oXPTkOTtABB16WmvzId1RUl9QZMeABBtB4HlLLzxsNHVAWAnqY085um6/UIA/MYSNbo2ktqMvMui0RgOwB+7YcnHt5Yrn3Zjoh4AhHivA2IkZ6YRonomHj1/0uT9q/ZOOFulAD3Xbl6AxNKmKt+siwglz0Goy8/I7eu96gdAGwnHBgFr4E/Y2GYqqAqtu8Cmylbtll+ORvIbEThum7JggC2EzcYagm5Q9X1/gf0A/AJBqio7e18dBhH8PxCqf+fCkem46htg/fWWD+4eCKDtwhwN7p6w/lp+HvIHdcKuqg6u/elo8p4E4D8EB/eFiy46P/0C5gmePG6KKVsAAAAASUVORK5CYII=",hx="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAACAlJREFUaEPtmWuIXVcVx3/7vt9zJ5NOZ5JGkxQDEZroF7WxYGILGoWmLxXamtG0RUhoLSiW4hdFPxRFSytJLVpNRqTE2qq1WqiFGbWhNiCSIClU1EZj0ySTedz3uY+zZN19bjL3zn1NckcNeODAuTPn7L3/6/Ff/7W34Qq/zBW+fv4P4L/tweV4wAf4vVuf9V7O992wCuB6dw3QW3/3vPpZQODYsWM7t2zZ8nzP0Qb4wvHjx2/eunXri0C127C9AMRFJDfAdS17KGNMAsh3+rAbgKSIZJY94wp8YIxJAdl2Q3cCEBIRZwXWcslDGmPCQLl1gHYAzNTU1O3bt29/pr/ZNP8AEXvXRzRg9KFXhPY3g741PT39iR07djyrMy3+qt0MfVrfW7DU4LVHkX8cAX8QXBfExdxxGEwAfIMjq3ZeaAcgJSIL3W2ji3ehVoGnd0E0idQX6l3672oV3+rNsOMr4At4/7g8jxhjhoCmvGw34qiInOkKQK3uVuEHNyGRmAVSydu/GR8SjEIwDr4wUnHw3/1zC8JcnjeMMVcDZ3uF0DUi8s/OAMQutJSFgzuRWhmK8+DkkIpStoFQBOJpiK9GIkkQg/9j34CRTeDTWnhpnjDGrANO9QLwThF5szMAF6pleOJGyJ1BnBw4WSiVEVeTNwCuQDiEJNOQHoX4MAQimFAM3ycnPW8sP8mNMeuBk70AbBCRv3UEoOFTKcHXNuG8WSJ/tAiOgxEX/5oUiW0pqDgWWNBAMoUMj2CSV0EkAbUa/omfQiC87JAyxmwE/n75AJwCPLyOuRdKmFoVqdYsc0ZjpH/5ErUn7wF9x5kHKSPJGKRXwdAohNOIBPC/93Z877vTS/D+QmqAAPJkP7gWd76AiGA8atan9KtvgJNBfvUY7okjUJxDakWI+pHEECRHkdgI4o+CUyP8hefA31+CDxbADeOQL9TLilaWug0FkkdPWw8XFqCUofrtT9cBUVygpgJTKTc5AhpS4RRSFqJf/CFEV/VM8IECKHx4DMkXl6RK/NVZ8IcstZZykD1L9bE9yPw8bka9UUaCYdxkGpMahdgqYtcFYWgDfORbXUNqoABKH28B4LkhOj0PoZiVFRXH5kL2LPLX1yh//xHcbAa3qLrMhxsbwqRGSNy4GkwIYmvh1ic7ghgoAOe2MShZD9QlkJeH4V8rAC1iPisrlHIrRdBF52YoPHQn5PLUchncSgXxx0nfscqGkOuDPS9bhrpQvS86eaAAKnePQbFog3+RvAo+2wCgBcvTS7WqpV4nD5mzOI8/ROXPr1M7N0voHWWi74lAZBj8Mdj2eXj/HqurWgreQAFU93gAWrIg8HQDgOqfBjKt3lo/HCgXIDMDc6dwf3wXPpm1C/VHLID0RnhgGgIhr2tdIQ/U7hkDpyWEfOCfXAxgkbpTMPWQcmw4PXU95DKQX4CqCkM/KLWuvx4+9zMrR+pt9woBcO8bQ4rFeuw37Gz84DvYBYCG0us/gT9+F7LnYe4MZLJQrIIEIZSCh/8Aw2sguOIAxqFQuLg3obkQMPiemvOSuCGhG9K7Cs/fYjc1ijk4/xbMKACt2KZeoQlH4ctHITa08iHk7rsWk80gbgWMYFS8hQP49r+1CIAX+8UZmLoXVOwVsjD7NszOQEaFoA9CwxBKwt5nYHgdRJTFlARWKoQ0EX/xVeTlw5bnTQ3iUcz6a+GBF0H7AdX+KrtfeRDyp6BagfwczJ2F+TnIFMGNQGgEQgn47CSk19QrdZ2B2vQOg2EhlQPlEuTOIY/stDrGJ+CvYO5/AYbGrfuVdV66FQhCOQ+587BwDhYyUNA9qwSE0rD9Qdh4AwyNQThuv613d83W11QeHABNxlIesqctGL1CYUiOWeufOQInHrdtZ3EBFtTqs5DNQSUEgTQEEnDXJMRHIJq2rKOWv9BDL1WogwOgpbdRnCq60yEQCFpvTH3KVlGly/yMtXpmAXJlkBgEh2F0M3z065BQeR23i9eYv7CT0V5eDwiAmlt3Hjx2UW7XcKkW4JUJ63pVnzlNUg0ZTVQtVEMQTMGuJyA1DonVEIp6smFxr9y5N+gXwHoRaep6lnZnLRU2dxp+fy/4DJTm6/nBwhyoWq1ELEUGE3DbjzwZnbA8r17rYfWWQrYBaGp328Ht0RMvHtK18uC5bVYKaLLmz0M+A44mqoZHGq7bDZt31ZuZulINhm241a/+e+N+e+K1ItLU+Xftj5VSD38AnDKU5mxxcwMQ0pBJwi2TENNE1d9q9QbLNGzXXzvpsdA1wL969cRXiUjT3ktHAMrzCuB3X4KTv4VCHqpirZxYAzc9Cqmr7W+N9z4SteNclkZHgXO9ACREpO1O8JLBGzsUGvN/OgAnf2OF2Ye+CUPrIK5toyaqWn3xflD/Vm/JgSTQtN3fbqTAoUOHPrN79+7vdbOG/Z+qyKqtxsr3yj56aXOi9HgJidppzsnJyfsmJiYOth54tN2dBnR78e3eABpUqjRatmCUVTRBL1h9eYnaaU5jzJi3rdhzd1rHUIp4l4ic6A3CO8rSetBYa9P2+qWFS0vovBv4S7vjpm6j64HCJhE53htEk1EWvT6QxW8B3gDaHrj0mkEb0/H9+/ffvHfv3u/0BjK4Nw4cOHD/vn379GBRN5oqHUOrjykVpLZHaUD35/V5acPax0A9XtEYVGGl6lDPJ+a9507uvRixy5hbwTSESy/vLWPY+qu60MZ5cddFN+XHcmf5X3t/0Fb8j+O74gH8G0lHhV4uXv6RAAAAAElFTkSuQmCC",Wd="https://nplayer.com/assets/img/logo_main.png",gu=[Ct({enabled:true,key:"p_builtin_iina",label:"IINA",icon:"https://iina.io/images/iina-icon-60.png",memo:"调用IINA播放视频(使用CloudDrive链接)",url:"iina://weblink?url={clouddrive_stream_url:encode}"}),Ct({enabled:true,key:"p_builtin_vlc",label:"VLC",icon:"https://images.videolan.org/images/favicon.ico",memo:"调用VLC播放视频(使用CloudDrive链接)",extraMemo:'<a href="https://github.com/northsea4/vlc-protocol" target="_blank" rel="noreferer">安装VLC协议</a>',url:"vlc://{clouddrive_stream_url}"}),Ct({enabled:true,key:"p_builtin_mpv",label:"MPV",icon:"https://mpv.io/images/mpv-logo-128-0baae5aa.png",memo:"调用MPV播放视频(使用CloudDrive链接)",extraMemo:'<a href="https://github.com/akiirui/mpv-handler/blob/main/README.zh-Hans.md" target="_blank" rel="noreferer">安装MPV协议</a>',url:"mpv://{clouddrive_stream_url}"}),Ct({enabled:true,key:"p_builtin_potplayer",label:"PotPlayer",icon:"https://t1.daumcdn.net/potplayer/main/img/favicon.ico",memo:"调用PotPlayer播放视频(使用CloudDrive链接)",url:"potplayer://{clouddrive_stream_url}"}),Ct({enabled:true,key:"p_builtin_infuse",label:"Infuse",icon:hx,memo:"调用Infuse播放视频(使用CloudDrive链接)",url:"infuse://x-callback-url/play?url={clouddrive_stream_url:encode}"}),Ct({enabled:false,key:"p_builtin_nplayer_mac",label:"nPlayer-mac",icon:Wd,memo:"调用nPlayer(mac版)播放视频(使用CloudDrive链接)",url:"nplayer-mac://weblink?url={clouddrive_stream_url:encode}&new_window=1"}),Ct({enabled:false,key:"p_builtin_nplayer_win",label:"nPlayer-win",icon:Wd,memo:"调用nPlayer(非mac版)播放视频(使用CloudDrive链接)",url:"nplayer-{clouddrive_stream_url:encode}"}),Ct({enabled:true,key:"p_builtin_online",label:"在线播放",icon:"https://115.com/favicon.ico",memo:"115官方在线播放(转码)",url:"https://115vod.com/?pickcode={pick_code}&share_id=0"}),Ct({enabled:false,key:"p_builtin_115plus",label:"115plus",icon:"https://115.com/favicon.ico",memo:'调用"115+"脚本进行播放(Command/Ctrl播放全部层级)',extraMemo:'<a href="https://greatest.deepsurf.us/zh-CN/scripts/495474" target="_blank" rel="noreferer">安装"115+"脚本</a>'})],wu=[Ct({enabled:true,key:"s_builtin_115_pure_name",label:"115-不含后缀",icon:"https://115.com/favicon.ico",memo:"使用115搜索文件名(不含后缀)",url:"{pure_name:search}"}),Ct({enabled:false,key:"s_builtin_115_full_name",label:"115-完整名称",icon:"https://115.com/favicon.ico",memo:"使用115搜索文件名(完整名称)",url:"{full_name:search}"}),Ct({enabled:true,key:"s_builtin_115_sha",label:"115-sha1",icon:"https://115.com/favicon.ico",memo:"使用115搜索sha1相同的文件(仅适用于文件)",url:"{file_hash:search}"}),Ct({enabled:true,key:"s_builtin_google_pure_name",label:"Google-不含后缀",icon:"https://www.google.com/favicon.ico",memo:"使用Google搜索文件名(不含后缀)",url:"https://www.google.com/search?q={pure_name:encode}"}),Ct({enabled:false,key:"s_builtin_google_full_name",label:"Google-完整名称",icon:"https://www.google.com/favicon.ico",memo:"使用Google搜索文件名(完整名称)",url:"https://www.google.com/search?q={full_name:encode}"}),Ct({enabled:true,key:"s_builtin_bing_pure_name",label:"Bing-不含后缀",icon:qd,memo:"使用Bing搜索文件名(不含后缀)",url:"https://cn.bing.com/search?q={pure_name:encode}"}),Ct({enabled:false,key:"s_builtin_bing_full_name",label:"Bing-完整名称",icon:qd,memo:"使用Bing搜索文件名(完整名称)",url:"https://cn.bing.com/search?q={full_name:encode}"}),Ct({enabled:true,key:"s_builtin_115_pure_name_manual",label:"115-不含后缀-手动",icon:"https://115.com/favicon.ico",memo:"使用115搜索文件名(不含后缀),手动编辑后搜索",url:"{pure_name:manual:search}"})],mx="p_builtin_online",cr="s_builtin_115_pure_name";function Cm(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Il,Kd;function gx(){return Kd||(Kd=1,Il=class{constructor(t={}){this.points=t.points,this.duration=t.duration,this.blockDuration=t.blockDuration,this.execEvenly=t.execEvenly,this.execEvenlyMinDelayMs=t.execEvenlyMinDelayMs,this.keyPrefix=t.keyPrefix;}get points(){return this._points}set points(t){this._points=t>=0?t:4;}get duration(){return this._duration}set duration(t){this._duration=typeof t>"u"?1:t;}get msDuration(){return this.duration*1e3}get blockDuration(){return this._blockDuration}set blockDuration(t){this._blockDuration=typeof t>"u"?0:t;}get msBlockDuration(){return this.blockDuration*1e3}get execEvenly(){return this._execEvenly}set execEvenly(t){this._execEvenly=typeof t>"u"?false:!!t;}get execEvenlyMinDelayMs(){return this._execEvenlyMinDelayMs}set execEvenlyMinDelayMs(t){this._execEvenlyMinDelayMs=typeof t>"u"?Math.ceil(this.msDuration/this.points):t;}get keyPrefix(){return this._keyPrefix}set keyPrefix(t){if(typeof t>"u"&&(t="rlflx"),typeof t!="string")throw new Error("keyPrefix must be string");this._keyPrefix=t;}_getKeySecDuration(t={}){return t&&t.customDuration>=0?t.customDuration:this.duration}getKey(t){return this.keyPrefix.length>0?`${this.keyPrefix}:${t}`:t}parseKey(t){return t.substring(this.keyPrefix.length)}consume(){throw new Error("You have to implement the method 'consume'!")}penalty(){throw new Error("You have to implement the method 'penalty'!")}reward(){throw new Error("You have to implement the method 'reward'!")}get(){throw new Error("You have to implement the method 'get'!")}set(){throw new Error("You have to implement the method 'set'!")}block(){throw new Error("You have to implement the method 'block'!")}delete(){throw new Error("You have to implement the method 'delete'!")}}),Il}var Dl,Gd;function wx(){return Gd||(Gd=1,Dl=class{constructor(t,n,o=null){this.value=t,this.expiresAt=n,this.timeoutId=o;}get value(){return this._value}set value(t){this._value=parseInt(t);}get expiresAt(){return this._expiresAt}set expiresAt(t){!(t instanceof Date)&&Number.isInteger(t)&&(t=new Date(t)),this._expiresAt=t;}get timeoutId(){return this._timeoutId}set timeoutId(t){this._timeoutId=t;}}),Dl}var Ll,Jd;function Oc(){return Jd||(Jd=1,Ll=class{constructor(t,n,o,i){this.remainingPoints=typeof t>"u"?0:t,this.msBeforeNext=typeof n>"u"?0:n,this.consumedPoints=typeof o>"u"?0:o,this.isFirstInDuration=typeof i>"u"?false:i;}get msBeforeNext(){return this._msBeforeNext}set msBeforeNext(t){return this._msBeforeNext=t,this}get remainingPoints(){return this._remainingPoints}set remainingPoints(t){return this._remainingPoints=t,this}get consumedPoints(){return this._consumedPoints}set consumedPoints(t){return this._consumedPoints=t,this}get isFirstInDuration(){return this._isFirstInDuration}set isFirstInDuration(t){this._isFirstInDuration=!!t;}_getDecoratedProperties(){return {remainingPoints:this.remainingPoints,msBeforeNext:this.msBeforeNext,consumedPoints:this.consumedPoints,isFirstInDuration:this.isFirstInDuration}}[Symbol.for("nodejs.util.inspect.custom")](){return this._getDecoratedProperties()}toString(){return JSON.stringify(this._getDecoratedProperties())}toJSON(){return this._getDecoratedProperties()}}),Ll}var Tl,Yd;function yx(){if(Yd)return Tl;Yd=1;const e=wx(),t=Oc();return Tl=class{constructor(){this._storage={};}incrby(o,i,s){if(this._storage[o]){const r=this._storage[o].expiresAt?this._storage[o].expiresAt.getTime()-new Date().getTime():-1;return !this._storage[o].expiresAt||r>0?(this._storage[o].value=this._storage[o].value+i,new t(0,r,this._storage[o].value,false)):this.set(o,i,s)}return this.set(o,i,s)}set(o,i,s){const r=s*1e3;return this._storage[o]&&this._storage[o].timeoutId&&clearTimeout(this._storage[o].timeoutId),this._storage[o]=new e(i,r>0?new Date(Date.now()+r):null),r>0&&(this._storage[o].timeoutId=setTimeout(()=>{delete this._storage[o];},r),this._storage[o].timeoutId.unref&&this._storage[o].timeoutId.unref()),new t(0,r===0?-1:r,this._storage[o].value,true)}get(o){if(this._storage[o]){const i=this._storage[o].expiresAt?this._storage[o].expiresAt.getTime()-new Date().getTime():-1;return new t(0,i,this._storage[o].value,false)}return null}delete(o){return this._storage[o]?(this._storage[o].timeoutId&&clearTimeout(this._storage[o].timeoutId),delete this._storage[o],true):false}},Tl}var Ml,Qd;function bx(){if(Qd)return Ml;Qd=1;const e=gx(),t=yx(),n=Oc();class o extends e{constructor(s={}){super(s),this._memoryStorage=new t;}consume(s,r=1,a={}){return new Promise((l,c)=>{const u=this.getKey(s),f=this._getKeySecDuration(a);let p=this._memoryStorage.incrby(u,r,f);if(p.remainingPoints=Math.max(this.points-p.consumedPoints,0),p.consumedPoints>this.points)this.blockDuration>0&&p.consumedPoints<=this.points+r&&(p=this._memoryStorage.set(u,p.consumedPoints,this.blockDuration)),c(p);else if(this.execEvenly&&p.msBeforeNext>0&&!p.isFirstInDuration){let w=Math.ceil(p.msBeforeNext/(p.remainingPoints+2));w<this.execEvenlyMinDelayMs&&(w=p.consumedPoints*this.execEvenlyMinDelayMs),setTimeout(l,w,p);}else l(p);})}penalty(s,r=1,a={}){const l=this.getKey(s);return new Promise(c=>{const u=this._getKeySecDuration(a),f=this._memoryStorage.incrby(l,r,u);f.remainingPoints=Math.max(this.points-f.consumedPoints,0),c(f);})}reward(s,r=1,a={}){const l=this.getKey(s);return new Promise(c=>{const u=this._getKeySecDuration(a),f=this._memoryStorage.incrby(l,-r,u);f.remainingPoints=Math.max(this.points-f.consumedPoints,0),c(f);})}block(s,r){const a=r*1e3,l=this.points+1;return this._memoryStorage.set(this.getKey(s),l,r),Promise.resolve(new n(0,a===0?-1:a,l))}set(s,r,a){const l=(a>=0?a:this.duration)*1e3;return this._memoryStorage.set(this.getKey(s),r,a),Promise.resolve(new n(0,l===0?-1:l,r))}get(s){const r=this._memoryStorage.get(this.getKey(s));return r!==null&&(r.remainingPoints=Math.max(this.points-r.consumedPoints,0)),Promise.resolve(r)}delete(s){return Promise.resolve(this._memoryStorage.delete(this.getKey(s)))}}return Ml=o,Ml}var Ol,Xd;function vx(){if(Xd)return Ol;Xd=1;const e=bx(),t=Oc();return Ol={RateLimiterMemory:e,RateLimiterRes:t},Ol}var Bs=vx();/**
* @vue/shared v3.5.18
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**//*! #__NO_SIDE_EFFECTS__ */function Bc(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const st={},Ri=[],Yn=()=>{},xx=()=>false,qa=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Rc=e=>e.startsWith("onUpdate:"),zt=Object.assign,Fc=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1);},_x=Object.prototype.hasOwnProperty,Ze=(e,t)=>_x.call(e,t),Ee=Array.isArray,Fi=e=>dr(e)==="[object Map]",ss=e=>dr(e)==="[object Set]",Zd=e=>dr(e)==="[object Date]",Oe=e=>typeof e=="function",wt=e=>typeof e=="string",Nn=e=>typeof e=="symbol",rt=e=>e!==null&&typeof e=="object",Nc=e=>(rt(e)||Oe(e))&&Oe(e.then)&&Oe(e.catch),km=Object.prototype.toString,dr=e=>km.call(e),Cx=e=>dr(e).slice(8,-1),Sm=e=>dr(e)==="[object Object]",Uc=e=>wt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,xs=Bc(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Wa=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},kx=/-(\w)/g,In=Wa(e=>e.replace(kx,(t,n)=>n?n.toUpperCase():"")),Sx=/\B([A-Z])/g,Ko=Wa(e=>e.replace(Sx,"-$1").toLowerCase()),Ka=Wa(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bl=Wa(e=>e?`on${Ka(e)}`:""),Bo=(e,t)=>!Object.is(e,t),Nr=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t);},yu=(e,t,n,o=false)=>{Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:o,value:n});},sa=e=>{const t=parseFloat(e);return isNaN(t)?e:t},$x=e=>{const t=wt(e)?Number(e):NaN;return isNaN(t)?e:t};let ef;const Ga=()=>ef||(ef=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Qn(e){if(Ee(e)){const t={};for(let n=0;n<e.length;n++){const o=e[n],i=wt(o)?Ix(o):Qn(o);if(i)for(const s in i)t[s]=i[s];}return t}else if(wt(e)||rt(e))return e}const Ex=/;(?![^(]*\))/g,Ax=/:([^]+)/,Px=/\/\*[^]*?\*\//g;function Ix(e){const t={};return e.replace(Px,"").split(Ex).forEach(n=>{if(n){const o=n.split(Ax);o.length>1&&(t[o[0].trim()]=o[1].trim());}}),t}function Le(e){let t="";if(wt(e))t=e;else if(Ee(e))for(let n=0;n<e.length;n++){const o=Le(e[n]);o&&(t+=o+" ");}else if(rt(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}function Dx(e){if(!e)return null;let{class:t,style:n}=e;return t&&!wt(t)&&(e.class=Le(t)),n&&(e.style=Qn(n)),e}const Lx="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Tx=Bc(Lx);function $m(e){return !!e||e===""}function Mx(e,t){if(e.length!==t.length)return false;let n=true;for(let o=0;n&&o<e.length;o++)n=hi(e[o],t[o]);return n}function hi(e,t){if(e===t)return true;let n=Zd(e),o=Zd(t);if(n||o)return n&&o?e.getTime()===t.getTime():false;if(n=Nn(e),o=Nn(t),n||o)return e===t;if(n=Ee(e),o=Ee(t),n||o)return n&&o?Mx(e,t):false;if(n=rt(e),o=rt(t),n||o){if(!n||!o)return false;const i=Object.keys(e).length,s=Object.keys(t).length;if(i!==s)return false;for(const r in e){const a=e.hasOwnProperty(r),l=t.hasOwnProperty(r);if(a&&!l||!a&&l||!hi(e[r],t[r]))return false}}return String(e)===String(t)}function jc(e,t){return e.findIndex(n=>hi(n,t))}const Em=e=>!!(e&&e.__v_isRef===true),B=e=>wt(e)?e:e==null?"":Ee(e)||rt(e)&&(e.toString===km||!Oe(e.toString))?Em(e)?B(e.value):JSON.stringify(e,Am,2):String(e),Am=(e,t)=>Em(t)?Am(e,t.value):Fi(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,i],s)=>(n[Rl(o,s)+" =>"]=i,n),{})}:ss(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Rl(n))}:Nn(t)?Rl(t):rt(t)&&!Ee(t)&&!Sm(t)?String(t):t,Rl=(e,t="")=>{var n;return Nn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
* @vue/reactivity v3.5.18
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let tn;class Ox{constructor(t=false){this.detached=t,this._active=true,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=false,this.parent=tn,!t&&tn&&(this.index=(tn.scopes||(tn.scopes=[])).push(this)-1);}get active(){return this._active}pause(){if(this._active){this._isPaused=true;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause();}}resume(){if(this._active&&this._isPaused){this._isPaused=false;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume();}}run(t){if(this._active){const n=tn;try{return tn=this,t()}finally{tn=n;}}}on(){++this._on===1&&(this.prevScope=tn,tn=this);}off(){this._on>0&&--this._on===0&&(tn=this.prevScope,this.prevScope=void 0);}stop(t){if(this._active){this._active=false;let n,o;for(n=0,o=this.effects.length;n<o;n++)this.effects[n].stop();for(this.effects.length=0,n=0,o=this.cleanups.length;n<o;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){for(n=0,o=this.scopes.length;n<o;n++)this.scopes[n].stop(true);this.scopes.length=0;}if(!this.detached&&this.parent&&!t){const i=this.parent.scopes.pop();i&&i!==this&&(this.parent.scopes[this.index]=i,i.index=this.index);}this.parent=void 0;}}}function Bx(){return tn}let at;const Fl=new WeakSet;class Pm{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,tn&&tn.active&&tn.effects.push(this);}pause(){this.flags|=64;}resume(){this.flags&64&&(this.flags&=-65,Fl.has(this)&&(Fl.delete(this),this.trigger()));}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Dm(this);}run(){if(!(this.flags&1))return this.fn();this.flags|=2,tf(this),Lm(this);const t=at,n=Rn;at=this,Rn=true;try{return this.fn()}finally{Tm(this),at=t,Rn=n,this.flags&=-3;}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Vc(t);this.deps=this.depsTail=void 0,tf(this),this.onStop&&this.onStop(),this.flags&=-2;}}trigger(){this.flags&64?Fl.add(this):this.scheduler?this.scheduler():this.runIfDirty();}runIfDirty(){bu(this)&&this.run();}get dirty(){return bu(this)}}let Im=0,_s,Cs;function Dm(e,t=false){if(e.flags|=8,t){e.next=Cs,Cs=e;return}e.next=_s,_s=e;}function zc(){Im++;}function Hc(){if(--Im>0)return;if(Cs){let t=Cs;for(Cs=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n;}}let e;for(;_s;){let t=_s;for(_s=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger();}catch(o){e||(e=o);}t=n;}}if(e)throw e}function Lm(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t;}function Tm(e){let t,n=e.depsTail,o=n;for(;o;){const i=o.prevDep;o.version===-1?(o===n&&(n=i),Vc(o),Rx(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=i;}e.deps=t,e.depsTail=n;}function bu(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Mm(t.dep.computed)||t.dep.version!==t.version))return true;return !!e._dirty}function Mm(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Rs)||(e.globalVersion=Rs,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!bu(e))))return;e.flags|=2;const t=e.dep,n=at,o=Rn;at=e,Rn=true;try{Lm(e);const i=e.fn(e._value);(t.version===0||Bo(i,e._value))&&(e.flags|=128,e._value=i,t.version++);}catch(i){throw t.version++,i}finally{at=n,Rn=o,Tm(e),e.flags&=-3;}}function Vc(e,t=false){const{dep:n,prevSub:o,nextSub:i}=e;if(o&&(o.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)Vc(s,true);}!t&&!--n.sc&&n.map&&n.map.delete(n.key);}function Rx(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0);}let Rn=true;const Om=[];function bo(){Om.push(Rn),Rn=false;}function vo(){const e=Om.pop();Rn=e===void 0?true:e;}function tf(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=at;at=void 0;try{t();}finally{at=n;}}}let Rs=0;class Fx{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0;}}class qc{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=true;}track(t){if(!at||!Rn||at===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==at)n=this.activeLink=new Fx(at,this),at.deps?(n.prevDep=at.depsTail,at.depsTail.nextDep=n,at.depsTail=n):at.deps=at.depsTail=n,Bm(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=at.depsTail,n.nextDep=void 0,at.depsTail.nextDep=n,at.depsTail=n,at.deps===n&&(at.deps=o);}return n}trigger(t){this.version++,Rs++,this.notify(t);}notify(t){zc();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify();}finally{Hc();}}}function Bm(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)Bm(o);}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e;}}const ra=new WeakMap,ai=Symbol(""),vu=Symbol(""),Fs=Symbol("");function Bt(e,t,n){if(Rn&&at){let o=ra.get(e);o||ra.set(e,o=new Map);let i=o.get(n);i||(o.set(n,i=new qc),i.map=o,i.key=n),i.track();}}function co(e,t,n,o,i,s){const r=ra.get(e);if(!r){Rs++;return}const a=l=>{l&&l.trigger();};if(zc(),t==="clear")r.forEach(a);else {const l=Ee(e),c=l&&Uc(n);if(l&&n==="length"){const u=Number(o);r.forEach((f,p)=>{(p==="length"||p===Fs||!Nn(p)&&p>=u)&&a(f);});}else switch((n!==void 0||r.has(void 0))&&a(r.get(n)),c&&a(r.get(Fs)),t){case "add":l?c&&a(r.get("length")):(a(r.get(ai)),Fi(e)&&a(r.get(vu)));break;case "delete":l||(a(r.get(ai)),Fi(e)&&a(r.get(vu)));break;case "set":Fi(e)&&a(r.get(ai));break}}Hc();}function Nx(e,t){const n=ra.get(e);return n&&n.get(t)}function Pi(e){const t=Ye(e);return t===e?t:(Bt(t,"iterate",Fs),En(e)?t:t.map(Dt))}function Ja(e){return Bt(e=Ye(e),"iterate",Fs),e}const Ux={__proto__:null,[Symbol.iterator](){return Nl(this,Symbol.iterator,Dt)},concat(...e){return Pi(this).concat(...e.map(t=>Ee(t)?Pi(t):t))},entries(){return Nl(this,"entries",e=>(e[1]=Dt(e[1]),e))},every(e,t){return lo(this,"every",e,t,void 0,arguments)},filter(e,t){return lo(this,"filter",e,t,n=>n.map(Dt),arguments)},find(e,t){return lo(this,"find",e,t,Dt,arguments)},findIndex(e,t){return lo(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return lo(this,"findLast",e,t,Dt,arguments)},findLastIndex(e,t){return lo(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return lo(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ul(this,"includes",e)},indexOf(...e){return Ul(this,"indexOf",e)},join(e){return Pi(this).join(e)},lastIndexOf(...e){return Ul(this,"lastIndexOf",e)},map(e,t){return lo(this,"map",e,t,void 0,arguments)},pop(){return ps(this,"pop")},push(...e){return ps(this,"push",e)},reduce(e,...t){return nf(this,"reduce",e,t)},reduceRight(e,...t){return nf(this,"reduceRight",e,t)},shift(){return ps(this,"shift")},some(e,t){return lo(this,"some",e,t,void 0,arguments)},splice(...e){return ps(this,"splice",e)},toReversed(){return Pi(this).toReversed()},toSorted(e){return Pi(this).toSorted(e)},toSpliced(...e){return Pi(this).toSpliced(...e)},unshift(...e){return ps(this,"unshift",e)},values(){return Nl(this,"values",Dt)}};function Nl(e,t,n){const o=Ja(e),i=o[t]();return o!==e&&!En(e)&&(i._next=i.next,i.next=()=>{const s=i._next();return s.value&&(s.value=n(s.value)),s}),i}const jx=Array.prototype;function lo(e,t,n,o,i,s){const r=Ja(e),a=r!==e&&!En(e),l=r[t];if(l!==jx[t]){const f=l.apply(e,s);return a?Dt(f):f}let c=n;r!==e&&(a?c=function(f,p){return n.call(this,Dt(f),p,e)}:n.length>2&&(c=function(f,p){return n.call(this,f,p,e)}));const u=l.call(r,c,o);return a&&i?i(u):u}function nf(e,t,n,o){const i=Ja(e);let s=n;return i!==e&&(En(e)?n.length>3&&(s=function(r,a,l){return n.call(this,r,a,l,e)}):s=function(r,a,l){return n.call(this,r,Dt(a),l,e)}),i[t](s,...o)}function Ul(e,t,n){const o=Ye(e);Bt(o,"iterate",Fs);const i=o[t](...n);return (i===-1||i===false)&&Gc(n[0])?(n[0]=Ye(n[0]),o[t](...n)):i}function ps(e,t,n=[]){bo(),zc();const o=Ye(e)[t].apply(e,n);return Hc(),vo(),o}const zx=Bc("__proto__,__v_isRef,__isVue"),Rm=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Nn));function Hx(e){Nn(e)||(e=String(e));const t=Ye(this);return Bt(t,"has",e),t.hasOwnProperty(e)}class Fm{constructor(t=false,n=false){this._isReadonly=t,this._isShallow=n;}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const i=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return !i;if(n==="__v_isReadonly")return i;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(i?s?Zx:zm:s?jm:Um).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Ee(t);if(!i){let l;if(r&&(l=Ux[n]))return l;if(n==="hasOwnProperty")return Hx}const a=Reflect.get(t,n,At(t)?t:o);return (Nn(n)?Rm.has(n):zx(n))||(i||Bt(t,"get",n),s)?a:At(a)?r&&Uc(n)?a:a.value:rt(a)?i?Hm(a):Ya(a):a}}class Nm extends Fm{constructor(t=false){super(false,t);}set(t,n,o,i){let s=t[n];if(!this._isShallow){const l=jo(s);if(!En(o)&&!jo(o)&&(s=Ye(s),o=Ye(o)),!Ee(t)&&At(s)&&!At(o))return l?false:(s.value=o,true)}const r=Ee(t)&&Uc(n)?Number(n)<t.length:Ze(t,n),a=Reflect.set(t,n,o,At(t)?t:i);return t===Ye(i)&&(r?Bo(o,s)&&co(t,"set",n,o):co(t,"add",n,o)),a}deleteProperty(t,n){const o=Ze(t,n);t[n];const i=Reflect.deleteProperty(t,n);return i&&o&&co(t,"delete",n,void 0),i}has(t,n){const o=Reflect.has(t,n);return (!Nn(n)||!Rm.has(n))&&Bt(t,"has",n),o}ownKeys(t){return Bt(t,"iterate",Ee(t)?"length":ai),Reflect.ownKeys(t)}}class Vx extends Fm{constructor(t=false){super(true,t);}set(t,n){return true}deleteProperty(t,n){return true}}const qx=new Nm,Wx=new Vx,Kx=new Nm(true);const xu=e=>e,Sr=e=>Reflect.getPrototypeOf(e);function Gx(e,t,n){return function(...o){const i=this.__v_raw,s=Ye(i),r=Fi(s),a=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,c=i[e](...o),u=n?xu:t?aa:Dt;return !t&&Bt(s,"iterate",l?vu:ai),{next(){const{value:f,done:p}=c.next();return p?{value:f,done:p}:{value:a?[u(f[0]),u(f[1])]:u(f),done:p}},[Symbol.iterator](){return this}}}}function $r(e){return function(...t){return e==="delete"?false:e==="clear"?void 0:this}}function Jx(e,t){const n={get(i){const s=this.__v_raw,r=Ye(s),a=Ye(i);e||(Bo(i,a)&&Bt(r,"get",i),Bt(r,"get",a));const{has:l}=Sr(r),c=t?xu:e?aa:Dt;if(l.call(r,i))return c(s.get(i));if(l.call(r,a))return c(s.get(a));s!==r&&s.get(i);},get size(){const i=this.__v_raw;return !e&&Bt(Ye(i),"iterate",ai),Reflect.get(i,"size",i)},has(i){const s=this.__v_raw,r=Ye(s),a=Ye(i);return e||(Bo(i,a)&&Bt(r,"has",i),Bt(r,"has",a)),i===a?s.has(i):s.has(i)||s.has(a)},forEach(i,s){const r=this,a=r.__v_raw,l=Ye(a),c=t?xu:e?aa:Dt;return !e&&Bt(l,"iterate",ai),a.forEach((u,f)=>i.call(s,c(u),c(f),r))}};return zt(n,e?{add:$r("add"),set:$r("set"),delete:$r("delete"),clear:$r("clear")}:{add(i){!t&&!En(i)&&!jo(i)&&(i=Ye(i));const s=Ye(this);return Sr(s).has.call(s,i)||(s.add(i),co(s,"add",i,i)),this},set(i,s){!t&&!En(s)&&!jo(s)&&(s=Ye(s));const r=Ye(this),{has:a,get:l}=Sr(r);let c=a.call(r,i);c||(i=Ye(i),c=a.call(r,i));const u=l.call(r,i);return r.set(i,s),c?Bo(s,u)&&co(r,"set",i,s):co(r,"add",i,s),this},delete(i){const s=Ye(this),{has:r,get:a}=Sr(s);let l=r.call(s,i);l||(i=Ye(i),l=r.call(s,i)),a&&a.call(s,i);const c=s.delete(i);return l&&co(s,"delete",i,void 0),c},clear(){const i=Ye(this),s=i.size!==0,r=i.clear();return s&&co(i,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(i=>{n[i]=Gx(i,e,t);}),n}function Wc(e,t){const n=Jx(e,t);return (o,i,s)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?o:Reflect.get(Ze(n,i)&&i in o?n:o,i,s)}const Yx={get:Wc(false,false)},Qx={get:Wc(false,true)},Xx={get:Wc(true,false)};const Um=new WeakMap,jm=new WeakMap,zm=new WeakMap,Zx=new WeakMap;function e_(e){switch(e){case "Object":case "Array":return 1;case "Map":case "Set":case "WeakMap":case "WeakSet":return 2;default:return 0}}function t_(e){return e.__v_skip||!Object.isExtensible(e)?0:e_(Cx(e))}function Ya(e){return jo(e)?e:Kc(e,false,qx,Yx,Um)}function n_(e){return Kc(e,false,Kx,Qx,jm)}function Hm(e){return Kc(e,true,Wx,Xx,zm)}function Kc(e,t,n,o,i){if(!rt(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=t_(e);if(s===0)return e;const r=i.get(e);if(r)return r;const a=new Proxy(e,s===2?o:n);return i.set(e,a),a}function Ni(e){return jo(e)?Ni(e.__v_raw):!!(e&&e.__v_isReactive)}function jo(e){return !!(e&&e.__v_isReadonly)}function En(e){return !!(e&&e.__v_isShallow)}function Gc(e){return e?!!e.__v_raw:false}function Ye(e){const t=e&&e.__v_raw;return t?Ye(t):e}function o_(e){return !Ze(e,"__v_skip")&&Object.isExtensible(e)&&yu(e,"__v_skip",true),e}const Dt=e=>rt(e)?Ya(e):e,aa=e=>rt(e)?Hm(e):e;function At(e){return e?e.__v_isRef===true:false}function V(e){return i_(e,false)}function i_(e,t){return At(e)?e:new s_(e,t)}class s_{constructor(t,n){this.dep=new qc,this.__v_isRef=true,this.__v_isShallow=false,this._rawValue=n?t:Ye(t),this._value=n?t:Dt(t),this.__v_isShallow=n;}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||En(t)||jo(t);t=o?t:Ye(t),Bo(t,n)&&(this._rawValue=t,this._value=o?t:Dt(t),this.dep.trigger());}}function ee(e){return At(e)?e.value:e}const r_={get:(e,t,n)=>t==="__v_raw"?e:ee(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const i=e[t];return At(i)&&!At(n)?(i.value=n,true):Reflect.set(e,t,n,o)}};function Vm(e){return Ni(e)?e:new Proxy(e,r_)}function a_(e){const t=Ee(e)?new Array(e.length):{};for(const n in e)t[n]=qm(e,n);return t}class l_{constructor(t,n,o){this._object=t,this._key=n,this._defaultValue=o,this.__v_isRef=true,this._value=void 0;}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t;}get dep(){return Nx(Ye(this._object),this._key)}}class u_{constructor(t){this._getter=t,this.__v_isRef=true,this.__v_isReadonly=true,this._value=void 0;}get value(){return this._value=this._getter()}}function c_(e,t,n){return At(e)?e:Oe(e)?new u_(e):rt(e)&&arguments.length>1?qm(e,t,n):V(e)}function qm(e,t,n){const o=e[t];return At(o)?o:new l_(e,t,n)}class d_{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new qc(this),this.__v_isRef=true,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Rs-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o;}notify(){if(this.flags|=16,!(this.flags&8)&&at!==this)return Dm(this,true),true}get value(){const t=this.dep.track();return Mm(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t);}}function f_(e,t,n=false){let o,i;return Oe(e)?o=e:(o=e.get,i=e.set),new d_(o,i,n)}const Er={},la=new WeakMap;let ei;function p_(e,t=false,n=ei){if(n){let o=la.get(n);o||la.set(n,o=[]),o.push(e);}}function h_(e,t,n=st){const{immediate:o,deep:i,once:s,scheduler:r,augmentJob:a,call:l}=n,c=D=>i?D:En(D)||i===false||i===0?fo(D,1):fo(D);let u,f,p,w,m=false,y=false;if(At(e)?(f=()=>e.value,m=En(e)):Ni(e)?(f=()=>c(e),m=true):Ee(e)?(y=true,m=e.some(D=>Ni(D)||En(D)),f=()=>e.map(D=>{if(At(D))return D.value;if(Ni(D))return c(D);if(Oe(D))return l?l(D,2):D()})):Oe(e)?t?f=l?()=>l(e,2):e:f=()=>{if(p){bo();try{p();}finally{vo();}}const D=ei;ei=u;try{return l?l(e,3,[w]):e(w)}finally{ei=D;}}:f=Yn,t&&i){const D=f,O=i===true?1/0:i;f=()=>fo(D(),O);}const v=Bx(),E=()=>{u.stop(),v&&v.active&&Fc(v.effects,u);};if(s&&t){const D=t;t=(...O)=>{D(...O),E();};}let L=y?new Array(e.length).fill(Er):Er;const P=D=>{if(!(!(u.flags&1)||!u.dirty&&!D))if(t){const O=u.run();if(i||m||(y?O.some((W,z)=>Bo(W,L[z])):Bo(O,L))){p&&p();const W=ei;ei=u;try{const z=[O,L===Er?void 0:y&&L[0]===Er?[]:L,w];L=O,l?l(t,3,z):t(...z);}finally{ei=W;}}}else u.run();};return a&&a(P),u=new Pm(f),u.scheduler=r?()=>r(P,false):P,w=D=>p_(D,false,u),p=u.onStop=()=>{const D=la.get(u);if(D){if(l)l(D,4);else for(const O of D)O();la.delete(u);}},t?o?P(true):L=u.run():r?r(P.bind(null,true),true):u.run(),E.pause=u.pause.bind(u),E.resume=u.resume.bind(u),E.stop=E,E}function fo(e,t=1/0,n){if(t<=0||!rt(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,At(e))fo(e.value,t,n);else if(Ee(e))for(let o=0;o<e.length;o++)fo(e[o],t,n);else if(ss(e)||Fi(e))e.forEach(o=>{fo(o,t,n);});else if(Sm(e)){for(const o in e)fo(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&fo(e[o],t,n);}return e}/**
* @vue/runtime-core v3.5.18
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/function fr(e,t,n,o){try{return o?e(...o):e()}catch(i){pr(i,t,n);}}function no(e,t,n,o){if(Oe(e)){const i=fr(e,t,n,o);return i&&Nc(i)&&i.catch(s=>{pr(s,t,n);}),i}if(Ee(e)){const i=[];for(let s=0;s<e.length;s++)i.push(no(e[s],t,n,o));return i}}function pr(e,t,n,o=true){const i=t?t.vnode:null,{errorHandler:s,throwUnhandledErrorInProduction:r}=t&&t.appContext.config||st;if(t){let a=t.parent;const l=t.proxy,c=`https://vuejs.org/error-reference/#runtime-${n}`;for(;a;){const u=a.ec;if(u){for(let f=0;f<u.length;f++)if(u[f](e,l,c)===false)return}a=a.parent;}if(s){bo(),fr(s,null,10,[e,l,c]),vo();return}}m_(e,n,i,o,r);}function m_(e,t,n,o=true,i=false){if(i)throw e;console.error(e);}const qt=[];let qn=-1;const Ui=[];let Ao=null,Li=0;const Wm=Promise.resolve();let ua=null;function mi(e){const t=ua||Wm;return e?t.then(this?e.bind(this):e):t}function g_(e){let t=qn+1,n=qt.length;for(;t<n;){const o=t+n>>>1,i=qt[o],s=Ns(i);s<e||s===e&&i.flags&2?t=o+1:n=o;}return t}function Jc(e){if(!(e.flags&1)){const t=Ns(e),n=qt[qt.length-1];!n||!(e.flags&2)&&t>=Ns(n)?qt.push(e):qt.splice(g_(t),0,e),e.flags|=1,Km();}}function Km(){ua||(ua=Wm.then(Jm));}function _u(e){Ee(e)?Ui.push(...e):Ao&&e.id===-1?Ao.splice(Li+1,0,e):e.flags&1||(Ui.push(e),e.flags|=1),Km();}function of(e,t,n=qn+1){for(;n<qt.length;n++){const o=qt[n];if(o&&o.flags&2){if(e&&o.id!==e.uid)continue;qt.splice(n,1),n--,o.flags&4&&(o.flags&=-2),o(),o.flags&4||(o.flags&=-2);}}}function Gm(e){if(Ui.length){const t=[...new Set(Ui)].sort((n,o)=>Ns(n)-Ns(o));if(Ui.length=0,Ao){Ao.push(...t);return}for(Ao=t,Li=0;Li<Ao.length;Li++){const n=Ao[Li];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2;}Ao=null,Li=0;}}const Ns=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Jm(e){try{for(qn=0;qn<qt.length;qn++){const t=qt[qn];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),fr(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2));}}finally{for(;qn<qt.length;qn++){const t=qt[qn];t&&(t.flags&=-2);}qn=-1,qt.length=0,Gm(),ua=null,(qt.length||Ui.length)&&Jm();}}let Lt=null,Qa=null;function ca(e){const t=Lt;return Lt=e,Qa=e&&e.type.__scopeId||null,t}function w_(e){Qa=e;}function y_(){Qa=null;}const b_=e=>ge;function ge(e,t=Lt,n){if(!t||e._n)return e;const o=(...i)=>{o._d&&mf(-1);const s=ca(t);let r;try{r=e(...i);}finally{ca(s),o._d&&mf(1);}return r};return o._n=true,o._c=true,o._d=true,o}function q(e,t){if(Lt===null)return e;const n=tl(Lt),o=e.dirs||(e.dirs=[]);for(let i=0;i<t.length;i++){let[s,r,a,l=st]=t[i];s&&(Oe(s)&&(s={mounted:s,updated:s}),s.deep&&fo(r),o.push({dir:s,instance:n,value:r,oldValue:void 0,arg:a,modifiers:l}));}return e}function Qo(e,t,n,o){const i=e.dirs,s=t&&t.dirs;for(let r=0;r<i.length;r++){const a=i[r];s&&(a.oldValue=s[r].value);let l=a.dir[o];l&&(bo(),no(l,n,8,[e.el,a,e,t]),vo());}}const v_=Symbol("_vte"),x_=e=>e.__isTeleport;function Yc(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Yc(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t;}/*! #__NO_SIDE_EFFECTS__ */function xe(e,t){return Oe(e)?zt({name:e.name},t,{setup:e}):e}function Ym(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0];}function ks(e,t,n,o,i=false){if(Ee(e)){e.forEach((m,y)=>ks(m,t&&(Ee(t)?t[y]:t),n,o,i));return}if(ji(o)&&!i){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&ks(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?tl(o.component):o.el,r=i?null:s,{i:a,r:l}=e,c=t&&t.r,u=a.refs===st?a.refs={}:a.refs,f=a.setupState,p=Ye(f),w=f===st?()=>false:m=>Ze(p,m);if(c!=null&&c!==l&&(wt(c)?(u[c]=null,w(c)&&(f[c]=null)):At(c)&&(c.value=null)),Oe(l))fr(l,a,12,[r,u]);else {const m=wt(l),y=At(l);if(m||y){const v=()=>{if(e.f){const E=m?w(l)?f[l]:u[l]:l.value;i?Ee(E)&&Fc(E,s):Ee(E)?E.includes(s)||E.push(s):m?(u[l]=[s],w(l)&&(f[l]=u[l])):(l.value=[s],e.k&&(u[e.k]=l.value));}else m?(u[l]=r,w(l)&&(f[l]=r)):y&&(l.value=r,e.k&&(u[e.k]=r));};r?(v.id=-1,fn(v,n)):v();}}}Ga().requestIdleCallback;Ga().cancelIdleCallback;const ji=e=>!!e.type.__asyncLoader,Qm=e=>e.type.__isKeepAlive;function __(e,t){Xm(e,"a",t);}function C_(e,t){Xm(e,"da",t);}function Xm(e,t,n=Rt){const o=e.__wdc||(e.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent;}return e()});if(Xa(t,o,n),n){let i=n.parent;for(;i&&i.parent;)Qm(i.parent.vnode)&&k_(o,t,n,i),i=i.parent;}}function k_(e,t,n,o){const i=Xa(t,e,o,true);Si(()=>{Fc(o[t],i);},n);}function Xa(e,t,n=Rt,o=false){if(n){const i=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{bo();const a=gi(n),l=no(t,n,e,r);return a(),vo(),l});return o?i.unshift(s):i.push(s),s}}const So=e=>(t,n=Rt)=>{(!js||e==="sp")&&Xa(e,(...o)=>t(...o),n);},St=So("bm"),Ht=So("m"),S_=So("bu"),$_=So("u"),Zm=So("bum"),Si=So("um"),E_=So("sp"),A_=So("rtg"),P_=So("rtc");function I_(e,t=Rt){Xa("ec",e,t);}const Qc="components",D_="directives";function xo(e,t){return Xc(Qc,e,true,t)||e}const eg=Symbol.for("v-ndc");function Dn(e){return wt(e)?Xc(Qc,e,false)||e:e||eg}function L_(e){return Xc(D_,e)}function Xc(e,t,n=true,o=false){const i=Lt||Rt;if(i){const s=i.type;if(e===Qc){const a=_C(s,false);if(a&&(a===t||a===In(t)||a===Ka(In(t))))return s}const r=sf(i[e]||s[e],t)||sf(i.appContext[e],t);return !r&&o?s:r}}function sf(e,t){return e&&(e[t]||e[In(t)]||e[Ka(In(t))])}function je(e,t,n,o){let i;const s=n,r=Ee(e);if(r||wt(e)){const a=r&&Ni(e);let l=false,c=false;a&&(l=!En(e),c=jo(e),e=Ja(e)),i=new Array(e.length);for(let u=0,f=e.length;u<f;u++)i[u]=t(l?c?aa(Dt(e[u])):Dt(e[u]):e[u],u,void 0,s);}else if(typeof e=="number"){i=new Array(e);for(let a=0;a<e;a++)i[a]=t(a+1,a,void 0,s);}else if(rt(e))if(e[Symbol.iterator])i=Array.from(e,(a,l)=>t(a,l,void 0,s));else {const a=Object.keys(e);i=new Array(a.length);for(let l=0,c=a.length;l<c;l++){const u=a[l];i[l]=t(e[u],u,l,s);}}else i=[];return i}function T_(e,t){for(let n=0;n<t.length;n++){const o=t[n];if(Ee(o))for(let i=0;i<o.length;i++)e[o[i].name]=o[i].fn;else o&&(e[o.name]=o.key?(...i)=>{const s=o.fn(...i);return s&&(s.key=o.key),s}:o.fn);}return e}function Ge(e,t,n={},o,i){if(Lt.ce||Lt.parent&&ji(Lt.parent)&&Lt.parent.ce)return t!=="default"&&(n.name=t),_(),tt($e,null,[oe("slot",n,o&&o())],64);let s=e[t];s&&s._c&&(s._d=false),_();const r=s&&tg(s(n)),a=n.key||r&&r.key,l=tt($e,{key:(a&&!Nn(a)?a:`_${t}`)+(!r&&o?"_fb":"")},r||(o?o():[]),r&&e._===1?64:-2);return l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),s&&s._c&&(s._d=true),l}function tg(e){return e.some(t=>Qi(t)?!(t.type===Un||t.type===$e&&!tg(t.children)):true)?e:null}const Cu=e=>e?Eg(e)?tl(e):Cu(e.parent):null,Ss=zt(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=>Cu(e.parent),$root:e=>Cu(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>og(e),$forceUpdate:e=>e.f||(e.f=()=>{Jc(e.update);}),$nextTick:e=>e.n||(e.n=mi.bind(e.proxy)),$watch:e=>eC.bind(e)}),jl=(e,t)=>e!==st&&!e.__isScriptSetup&&Ze(e,t),M_={get({_:e},t){if(t==="__v_skip")return true;const{ctx:n,setupState:o,data:i,props:s,accessCache:r,type:a,appContext:l}=e;let c;if(t[0]!=="$"){const w=r[t];if(w!==void 0)switch(w){case 1:return o[t];case 2:return i[t];case 4:return n[t];case 3:return s[t]}else {if(jl(o,t))return r[t]=1,o[t];if(i!==st&&Ze(i,t))return r[t]=2,i[t];if((c=e.propsOptions[0])&&Ze(c,t))return r[t]=3,s[t];if(n!==st&&Ze(n,t))return r[t]=4,n[t];ku&&(r[t]=0);}}const u=Ss[t];let f,p;if(u)return t==="$attrs"&&Bt(e.attrs,"get",""),u(e);if((f=a.__cssModules)&&(f=f[t]))return f;if(n!==st&&Ze(n,t))return r[t]=4,n[t];if(p=l.config.globalProperties,Ze(p,t))return p[t]},set({_:e},t,n){const{data:o,setupState:i,ctx:s}=e;return jl(i,t)?(i[t]=n,true):o!==st&&Ze(o,t)?(o[t]=n,true):Ze(e.props,t)||t[0]==="$"&&t.slice(1)in e?false:(s[t]=n,true)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:i,propsOptions:s}},r){let a;return !!n[r]||e!==st&&Ze(e,r)||jl(t,r)||(a=s[0])&&Ze(a,r)||Ze(o,r)||Ze(Ss,r)||Ze(i.config.globalProperties,r)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Ze(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function rf(e){return Ee(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Tt(e){const t=$g();let n=e();return Pu(),Nc(n)&&(n=n.catch(o=>{throw gi(t),o})),[n,()=>gi(t)]}let ku=true;function O_(e){const t=og(e),n=e.proxy,o=e.ctx;ku=false,t.beforeCreate&&af(t.beforeCreate,e,"bc");const{data:i,computed:s,methods:r,watch:a,provide:l,inject:c,created:u,beforeMount:f,mounted:p,beforeUpdate:w,updated:m,activated:y,deactivated:v,beforeDestroy:E,beforeUnmount:L,destroyed:P,unmounted:D,render:O,renderTracked:W,renderTriggered:z,errorCaptured:ue,serverPrefetch:me,expose:ie,inheritAttrs:F,components:U,directives:Q,filters:le}=t;if(c&&B_(c,o,null),r)for(const _e in r){const Se=r[_e];Oe(Se)&&(o[_e]=Se.bind(n));}if(i){const _e=i.call(n,n);rt(_e)&&(e.data=Ya(_e));}if(ku=true,s)for(const _e in s){const Se=s[_e],Ne=Oe(Se)?Se.bind(n,n):Oe(Se.get)?Se.get.bind(n,n):Yn,dt=!Oe(Se)&&Oe(Se.set)?Se.set.bind(n):Yn,we=Ke({get:Ne,set:dt});Object.defineProperty(o,_e,{enumerable:true,configurable:true,get:()=>we.value,set:T=>we.value=T});}if(a)for(const _e in a)ng(a[_e],o,n,_e);if(l){const _e=Oe(l)?l.call(n):l;Reflect.ownKeys(_e).forEach(Se=>{bs(Se,_e[Se]);});}u&&af(u,e,"c");function ke(_e,Se){Ee(Se)?Se.forEach(Ne=>_e(Ne.bind(n))):Se&&_e(Se.bind(n));}if(ke(St,f),ke(Ht,p),ke(S_,w),ke($_,m),ke(__,y),ke(C_,v),ke(I_,ue),ke(P_,W),ke(A_,z),ke(Zm,L),ke(Si,D),ke(E_,me),Ee(ie))if(ie.length){const _e=e.exposed||(e.exposed={});ie.forEach(Se=>{Object.defineProperty(_e,Se,{get:()=>n[Se],set:Ne=>n[Se]=Ne,enumerable:true});});}else e.exposed||(e.exposed={});O&&e.render===Yn&&(e.render=O),F!=null&&(e.inheritAttrs=F),U&&(e.components=U),Q&&(e.directives=Q),me&&Ym(e);}function B_(e,t,n=Yn){Ee(e)&&(e=Su(e));for(const o in e){const i=e[o];let s;rt(i)?"default"in i?s=$s(i.from||o,i.default,true):s=$s(i.from||o):s=$s(i),At(s)?Object.defineProperty(t,o,{enumerable:true,configurable:true,get:()=>s.value,set:r=>s.value=r}):t[o]=s;}}function af(e,t,n){no(Ee(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n);}function ng(e,t,n,o){let i=o.includes(".")?gg(n,o):()=>n[o];if(wt(e)){const s=t[e];Oe(s)&&He(i,s);}else if(Oe(e))He(i,e.bind(n));else if(rt(e))if(Ee(e))e.forEach(s=>ng(s,t,n,o));else {const s=Oe(e.handler)?e.handler.bind(n):t[e.handler];Oe(s)&&He(i,s,e);}}function og(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:i,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,a=s.get(t);let l;return a?l=a:!i.length&&!n&&!o?l=t:(l={},i.length&&i.forEach(c=>da(l,c,r,true)),da(l,t,r)),rt(t)&&s.set(t,l),l}function da(e,t,n,o=false){const{mixins:i,extends:s}=t;s&&da(e,s,n,true),i&&i.forEach(r=>da(e,r,n,true));for(const r in t)if(!(o&&r==="expose")){const a=R_[r]||n&&n[r];e[r]=a?a(e[r],t[r]):t[r];}return e}const R_={data:lf,props:uf,emits:uf,methods:ys,computed:ys,beforeCreate:Vt,created:Vt,beforeMount:Vt,mounted:Vt,beforeUpdate:Vt,updated:Vt,beforeDestroy:Vt,beforeUnmount:Vt,destroyed:Vt,unmounted:Vt,activated:Vt,deactivated:Vt,errorCaptured:Vt,serverPrefetch:Vt,components:ys,directives:ys,watch:N_,provide:lf,inject:F_};function lf(e,t){return t?e?function(){return zt(Oe(e)?e.call(this,this):e,Oe(t)?t.call(this,this):t)}:t:e}function F_(e,t){return ys(Su(e),Su(t))}function Su(e){if(Ee(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Vt(e,t){return e?[...new Set([].concat(e,t))]:t}function ys(e,t){return e?zt(Object.create(null),e,t):t}function uf(e,t){return e?Ee(e)&&Ee(t)?[...new Set([...e,...t])]:zt(Object.create(null),rf(e),rf(t??{})):t}function N_(e,t){if(!e)return t;if(!t)return e;const n=zt(Object.create(null),e);for(const o in t)n[o]=Vt(e[o],t[o]);return n}function ig(){return {app:null,config:{isNativeTag:xx,performance:false,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 U_=0;function j_(e,t){return function(o,i=null){Oe(o)||(o=zt({},o)),i!=null&&!rt(i)&&(i=null);const s=ig(),r=new WeakSet,a=[];let l=false;const c=s.app={_uid:U_++,_component:o,_props:i,_container:null,_context:s,_instance:null,version:SC,get config(){return s.config},set config(u){},use(u,...f){return r.has(u)||(u&&Oe(u.install)?(r.add(u),u.install(c,...f)):Oe(u)&&(r.add(u),u(c,...f))),c},mixin(u){return s.mixins.includes(u)||s.mixins.push(u),c},component(u,f){return f?(s.components[u]=f,c):s.components[u]},directive(u,f){return f?(s.directives[u]=f,c):s.directives[u]},mount(u,f,p){if(!l){const w=c._ceVNode||oe(o,i);return w.appContext=s,p===true?p="svg":p===false&&(p=void 0),e(w,u,p),l=true,c._container=u,u.__vue_app__=c,tl(w.component)}},onUnmount(u){a.push(u);},unmount(){l&&(no(a,c._instance,16),e(null,c._container),delete c._container.__vue_app__);},provide(u,f){return s.provides[u]=f,c},runWithContext(u){const f=zi;zi=c;try{return u()}finally{zi=f;}}};return c}}let zi=null;function bs(e,t){if(Rt){let n=Rt.provides;const o=Rt.parent&&Rt.parent.provides;o===n&&(n=Rt.provides=Object.create(o)),n[e]=t;}}function $s(e,t,n=false){const o=$g();if(o||zi){let i=zi?zi._context.provides:o?o.parent==null||o.ce?o.vnode.appContext&&o.vnode.appContext.provides:o.parent.provides:void 0;if(i&&e in i)return i[e];if(arguments.length>1)return n&&Oe(t)?t.call(o&&o.proxy):t}}const sg={},rg=()=>Object.create(sg),ag=e=>Object.getPrototypeOf(e)===sg;function z_(e,t,n,o=false){const i={},s=rg();e.propsDefaults=Object.create(null),lg(e,t,i,s);for(const r in e.propsOptions[0])r in i||(i[r]=void 0);n?e.props=o?i:n_(i):e.type.props?e.props=i:e.props=s,e.attrs=s;}function H_(e,t,n,o){const{props:i,attrs:s,vnode:{patchFlag:r}}=e,a=Ye(i),[l]=e.propsOptions;let c=false;if((o||r>0)&&!(r&16)){if(r&8){const u=e.vnode.dynamicProps;for(let f=0;f<u.length;f++){let p=u[f];if(Za(e.emitsOptions,p))continue;const w=t[p];if(l)if(Ze(s,p))w!==s[p]&&(s[p]=w,c=true);else {const m=In(p);i[m]=$u(l,a,m,w,e,false);}else w!==s[p]&&(s[p]=w,c=true);}}}else {lg(e,t,i,s)&&(c=true);let u;for(const f in a)(!t||!Ze(t,f)&&((u=Ko(f))===f||!Ze(t,u)))&&(l?n&&(n[f]!==void 0||n[u]!==void 0)&&(i[f]=$u(l,a,f,void 0,e,true)):delete i[f]);if(s!==a)for(const f in s)(!t||!Ze(t,f))&&(delete s[f],c=true);}c&&co(e.attrs,"set","");}function lg(e,t,n,o){const[i,s]=e.propsOptions;let r=false,a;if(t)for(let l in t){if(xs(l))continue;const c=t[l];let u;i&&Ze(i,u=In(l))?!s||!s.includes(u)?n[u]=c:(a||(a={}))[u]=c:Za(e.emitsOptions,l)||(!(l in o)||c!==o[l])&&(o[l]=c,r=true);}if(s){const l=Ye(n),c=a||st;for(let u=0;u<s.length;u++){const f=s[u];n[f]=$u(i,l,f,c[f],e,!Ze(c,f));}}return r}function $u(e,t,n,o,i,s){const r=e[n];if(r!=null){const a=Ze(r,"default");if(a&&o===void 0){const l=r.default;if(r.type!==Function&&!r.skipFactory&&Oe(l)){const{propsDefaults:c}=i;if(n in c)o=c[n];else {const u=gi(i);o=c[n]=l.call(null,t),u();}}else o=l;i.ce&&i.ce._setProp(n,o);}r[0]&&(s&&!a?o=false:r[1]&&(o===""||o===Ko(n))&&(o=true));}return o}const V_=new WeakMap;function ug(e,t,n=false){const o=n?V_:t.propsCache,i=o.get(e);if(i)return i;const s=e.props,r={},a=[];let l=false;if(!Oe(e)){const u=f=>{l=true;const[p,w]=ug(f,t,true);zt(r,p),w&&a.push(...w);};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u);}if(!s&&!l)return rt(e)&&o.set(e,Ri),Ri;if(Ee(s))for(let u=0;u<s.length;u++){const f=In(s[u]);cf(f)&&(r[f]=st);}else if(s)for(const u in s){const f=In(u);if(cf(f)){const p=s[u],w=r[f]=Ee(p)||Oe(p)?{type:p}:zt({},p),m=w.type;let y=false,v=true;if(Ee(m))for(let E=0;E<m.length;++E){const L=m[E],P=Oe(L)&&L.name;if(P==="Boolean"){y=true;break}else P==="String"&&(v=false);}else y=Oe(m)&&m.name==="Boolean";w[0]=y,w[1]=v,(y||Ze(w,"default"))&&a.push(f);}}const c=[r,a];return rt(e)&&o.set(e,c),c}function cf(e){return e[0]!=="$"&&!xs(e)}const Zc=e=>e==="_"||e==="__"||e==="_ctx"||e==="$stable",ed=e=>Ee(e)?e.map(Ln):[Ln(e)],q_=(e,t,n)=>{if(t._n)return t;const o=ge((...i)=>ed(t(...i)),n);return o._c=false,o},cg=(e,t,n)=>{const o=e._ctx;for(const i in e){if(Zc(i))continue;const s=e[i];if(Oe(s))t[i]=q_(i,s,o);else if(s!=null){const r=ed(s);t[i]=()=>r;}}},dg=(e,t)=>{const n=ed(t);e.slots.default=()=>n;},fg=(e,t,n)=>{for(const o in t)(n||!Zc(o))&&(e[o]=t[o]);},W_=(e,t,n)=>{const o=e.slots=rg();if(e.vnode.shapeFlag&32){const i=t.__;i&&yu(o,"__",i,true);const s=t._;s?(fg(o,t,n),n&&yu(o,"_",s,true)):cg(t,o);}else t&&dg(e,t);},K_=(e,t,n)=>{const{vnode:o,slots:i}=e;let s=true,r=st;if(o.shapeFlag&32){const a=t._;a?n&&a===1?s=false:fg(i,t,n):(s=!t.$stable,cg(t,i)),r=t;}else t&&(dg(e,t),r={default:1});if(s)for(const a in i)!Zc(a)&&r[a]==null&&delete i[a];},fn=fC;function G_(e){return J_(e)}function J_(e,t){const n=Ga();n.__VUE__=true;const{insert:o,remove:i,patchProp:s,createElement:r,createText:a,createComment:l,setText:c,setElementText:u,parentNode:f,nextSibling:p,setScopeId:w=Yn,insertStaticContent:m}=e,y=(g,x,k,X=null,N=null,G=null,de=void 0,ce=null,ae=!!x.dynamicChildren)=>{if(g===x)return;g&&!Io(g,x)&&(X=Xt(g),T(g,N,G,true),g=null),x.patchFlag===-2&&(ae=false,x.dynamicChildren=null);const{type:se,ref:Ce,shapeFlag:he}=x;switch(se){case el:v(g,x,k,X);break;case Un:E(g,x,k,X);break;case Ur:g==null&&L(x,k,X,de);break;case $e:U(g,x,k,X,N,G,de,ce,ae);break;default:he&1?O(g,x,k,X,N,G,de,ce,ae):he&6?Q(g,x,k,X,N,G,de,ce,ae):(he&64||he&128)&&se.process(g,x,k,X,N,G,de,ce,ae,xn);}Ce!=null&&N?ks(Ce,g&&g.ref,G,x||g,!x):Ce==null&&g&&g.ref!=null&&ks(g.ref,null,G,g,true);},v=(g,x,k,X)=>{if(g==null)o(x.el=a(x.children),k,X);else {const N=x.el=g.el;x.children!==g.children&&c(N,x.children);}},E=(g,x,k,X)=>{g==null?o(x.el=l(x.children||""),k,X):x.el=g.el;},L=(g,x,k,X)=>{[g.el,g.anchor]=m(g.children,x,k,X,g.el,g.anchor);},P=({el:g,anchor:x},k,X)=>{let N;for(;g&&g!==x;)N=p(g),o(g,k,X),g=N;o(x,k,X);},D=({el:g,anchor:x})=>{let k;for(;g&&g!==x;)k=p(g),i(g),g=k;i(x);},O=(g,x,k,X,N,G,de,ce,ae)=>{x.type==="svg"?de="svg":x.type==="math"&&(de="mathml"),g==null?W(x,k,X,N,G,de,ce,ae):me(g,x,N,G,de,ce,ae);},W=(g,x,k,X,N,G,de,ce)=>{let ae,se;const{props:Ce,shapeFlag:he,transition:ne,dirs:Ae}=g;if(ae=g.el=r(g.type,G,Ce&&Ce.is,Ce),he&8?u(ae,g.children):he&16&&ue(g.children,ae,null,X,N,zl(g,G),de,ce),Ae&&Qo(g,null,X,"created"),z(ae,g,g.scopeId,de,X),Ce){for(const b in Ce)b!=="value"&&!xs(b)&&s(ae,b,null,Ce[b],G,X);"value"in Ce&&s(ae,"value",null,Ce.value,G),(se=Ce.onVnodeBeforeMount)&&zn(se,X,g);}Ae&&Qo(g,null,X,"beforeMount");const h=Y_(N,ne);h&&ne.beforeEnter(ae),o(ae,x,k),((se=Ce&&Ce.onVnodeMounted)||h||Ae)&&fn(()=>{se&&zn(se,X,g),h&&ne.enter(ae),Ae&&Qo(g,null,X,"mounted");},N);},z=(g,x,k,X,N)=>{if(k&&w(g,k),X)for(let G=0;G<X.length;G++)w(g,X[G]);if(N){let G=N.subTree;if(x===G||yg(G.type)&&(G.ssContent===x||G.ssFallback===x)){const de=N.vnode;z(g,de,de.scopeId,de.slotScopeIds,N.parent);}}},ue=(g,x,k,X,N,G,de,ce,ae=0)=>{for(let se=ae;se<g.length;se++){const Ce=g[se]=ce?Po(g[se]):Ln(g[se]);y(null,Ce,x,k,X,N,G,de,ce);}},me=(g,x,k,X,N,G,de)=>{const ce=x.el=g.el;let{patchFlag:ae,dynamicChildren:se,dirs:Ce}=x;ae|=g.patchFlag&16;const he=g.props||st,ne=x.props||st;let Ae;if(k&&Xo(k,false),(Ae=ne.onVnodeBeforeUpdate)&&zn(Ae,k,x,g),Ce&&Qo(x,g,k,"beforeUpdate"),k&&Xo(k,true),(he.innerHTML&&ne.innerHTML==null||he.textContent&&ne.textContent==null)&&u(ce,""),se?ie(g.dynamicChildren,se,ce,k,X,zl(x,N),G):de||Se(g,x,ce,null,k,X,zl(x,N),G,false),ae>0){if(ae&16)F(ce,he,ne,k,N);else if(ae&2&&he.class!==ne.class&&s(ce,"class",null,ne.class,N),ae&4&&s(ce,"style",he.style,ne.style,N),ae&8){const h=x.dynamicProps;for(let b=0;b<h.length;b++){const C=h[b],A=he[C],R=ne[C];(R!==A||C==="value")&&s(ce,C,A,R,N,k);}}ae&1&&g.children!==x.children&&u(ce,x.children);}else !de&&se==null&&F(ce,he,ne,k,N);((Ae=ne.onVnodeUpdated)||Ce)&&fn(()=>{Ae&&zn(Ae,k,x,g),Ce&&Qo(x,g,k,"updated");},X);},ie=(g,x,k,X,N,G,de)=>{for(let ce=0;ce<x.length;ce++){const ae=g[ce],se=x[ce],Ce=ae.el&&(ae.type===$e||!Io(ae,se)||ae.shapeFlag&198)?f(ae.el):k;y(ae,se,Ce,null,X,N,G,de,true);}},F=(g,x,k,X,N)=>{if(x!==k){if(x!==st)for(const G in x)!xs(G)&&!(G in k)&&s(g,G,x[G],null,N,X);for(const G in k){if(xs(G))continue;const de=k[G],ce=x[G];de!==ce&&G!=="value"&&s(g,G,ce,de,N,X);}"value"in k&&s(g,"value",x.value,k.value,N);}},U=(g,x,k,X,N,G,de,ce,ae)=>{const se=x.el=g?g.el:a(""),Ce=x.anchor=g?g.anchor:a("");let{patchFlag:he,dynamicChildren:ne,slotScopeIds:Ae}=x;Ae&&(ce=ce?ce.concat(Ae):Ae),g==null?(o(se,k,X),o(Ce,k,X),ue(x.children||[],k,Ce,N,G,de,ce,ae)):he>0&&he&64&&ne&&g.dynamicChildren?(ie(g.dynamicChildren,ne,k,N,G,de,ce),(x.key!=null||N&&x===N.subTree)&&pg(g,x,true)):Se(g,x,k,Ce,N,G,de,ce,ae);},Q=(g,x,k,X,N,G,de,ce,ae)=>{x.slotScopeIds=ce,g==null?x.shapeFlag&512?N.ctx.activate(x,k,X,de,ae):le(x,k,X,N,G,de,ae):ve(g,x,ae);},le=(g,x,k,X,N,G,de)=>{const ce=g.component=wC(g,X,N);if(Qm(g)&&(ce.ctx.renderer=xn),yC(ce,false,de),ce.asyncDep){if(N&&N.registerDep(ce,ke,de),!g.el){const ae=ce.subTree=oe(Un);E(null,ae,x,k),g.placeholder=ae.el;}}else ke(ce,g,x,k,N,G,de);},ve=(g,x,k)=>{const X=x.component=g.component;if(rC(g,x,k))if(X.asyncDep&&!X.asyncResolved){_e(X,x,k);return}else X.next=x,X.update();else x.el=g.el,X.vnode=x;},ke=(g,x,k,X,N,G,de)=>{const ce=()=>{if(g.isMounted){let{next:he,bu:ne,u:Ae,parent:h,vnode:b}=g;{const K=hg(g);if(K){he&&(he.el=b.el,_e(g,he,de)),K.asyncDep.then(()=>{g.isUnmounted||ce();});return}}let C=he,A;Xo(g,false),he?(he.el=b.el,_e(g,he,de)):he=b,ne&&Nr(ne),(A=he.props&&he.props.onVnodeBeforeUpdate)&&zn(A,h,he,b),Xo(g,true);const R=ff(g),M=g.subTree;g.subTree=R,y(M,R,f(M.el),Xt(M),g,N,G),he.el=R.el,C===null&&td(g,R.el),Ae&&fn(Ae,N),(A=he.props&&he.props.onVnodeUpdated)&&fn(()=>zn(A,h,he,b),N);}else {let he;const{el:ne,props:Ae}=x,{bm:h,m:b,parent:C,root:A,type:R}=g,M=ji(x);Xo(g,false),h&&Nr(h),!M&&(he=Ae&&Ae.onVnodeBeforeMount)&&zn(he,C,x),Xo(g,true);{A.ce&&A.ce._def.shadowRoot!==false&&A.ce._injectChildStyle(R);const K=g.subTree=ff(g);y(null,K,k,X,g,N,G),x.el=K.el;}if(b&&fn(b,N),!M&&(he=Ae&&Ae.onVnodeMounted)){const K=x;fn(()=>zn(he,C,K),N);}(x.shapeFlag&256||C&&ji(C.vnode)&&C.vnode.shapeFlag&256)&&g.a&&fn(g.a,N),g.isMounted=true,x=k=X=null;}};g.scope.on();const ae=g.effect=new Pm(ce);g.scope.off();const se=g.update=ae.run.bind(ae),Ce=g.job=ae.runIfDirty.bind(ae);Ce.i=g,Ce.id=g.uid,ae.scheduler=()=>Jc(Ce),Xo(g,true),se();},_e=(g,x,k)=>{x.component=g;const X=g.vnode.props;g.vnode=x,g.next=null,H_(g,x.props,X,k),K_(g,x.children,k),bo(),of(g),vo();},Se=(g,x,k,X,N,G,de,ce,ae=false)=>{const se=g&&g.children,Ce=g?g.shapeFlag:0,he=x.children,{patchFlag:ne,shapeFlag:Ae}=x;if(ne>0){if(ne&128){dt(se,he,k,X,N,G,de,ce,ae);return}else if(ne&256){Ne(se,he,k,X,N,G,de,ce,ae);return}}Ae&8?(Ce&16&&cn(se,N,G),he!==se&&u(k,he)):Ce&16?Ae&16?dt(se,he,k,X,N,G,de,ce,ae):cn(se,N,G,true):(Ce&8&&u(k,""),Ae&16&&ue(he,k,X,N,G,de,ce,ae));},Ne=(g,x,k,X,N,G,de,ce,ae)=>{g=g||Ri,x=x||Ri;const se=g.length,Ce=x.length,he=Math.min(se,Ce);let ne;for(ne=0;ne<he;ne++){const Ae=x[ne]=ae?Po(x[ne]):Ln(x[ne]);y(g[ne],Ae,k,null,N,G,de,ce,ae);}se>Ce?cn(g,N,G,true,false,he):ue(x,k,X,N,G,de,ce,ae,he);},dt=(g,x,k,X,N,G,de,ce,ae)=>{let se=0;const Ce=x.length;let he=g.length-1,ne=Ce-1;for(;se<=he&&se<=ne;){const Ae=g[se],h=x[se]=ae?Po(x[se]):Ln(x[se]);if(Io(Ae,h))y(Ae,h,k,null,N,G,de,ce,ae);else break;se++;}for(;se<=he&&se<=ne;){const Ae=g[he],h=x[ne]=ae?Po(x[ne]):Ln(x[ne]);if(Io(Ae,h))y(Ae,h,k,null,N,G,de,ce,ae);else break;he--,ne--;}if(se>he){if(se<=ne){const Ae=ne+1,h=Ae<Ce?x[Ae].el:X;for(;se<=ne;)y(null,x[se]=ae?Po(x[se]):Ln(x[se]),k,h,N,G,de,ce,ae),se++;}}else if(se>ne)for(;se<=he;)T(g[se],N,G,true),se++;else {const Ae=se,h=se,b=new Map;for(se=h;se<=ne;se++){const be=x[se]=ae?Po(x[se]):Ln(x[se]);be.key!=null&&b.set(be.key,se);}let C,A=0;const R=ne-h+1;let M=false,K=0;const J=new Array(R);for(se=0;se<R;se++)J[se]=0;for(se=Ae;se<=he;se++){const be=g[se];if(A>=R){T(be,N,G,true);continue}let Me;if(be.key!=null)Me=b.get(be.key);else for(C=h;C<=ne;C++)if(J[C-h]===0&&Io(be,x[C])){Me=C;break}Me===void 0?T(be,N,G,true):(J[Me-h]=se+1,Me>=K?K=Me:M=true,y(be,x[Me],k,null,N,G,de,ce,ae),A++);}const re=M?Q_(J):Ri;for(C=re.length-1,se=R-1;se>=0;se--){const be=h+se,Me=x[be],Be=x[be+1],We=be+1<Ce?Be.el||Be.placeholder:X;J[se]===0?y(null,Me,k,We,N,G,de,ce,ae):M&&(C<0||se!==re[C]?we(Me,k,We,2):C--);}}},we=(g,x,k,X,N=null)=>{const{el:G,type:de,transition:ce,children:ae,shapeFlag:se}=g;if(se&6){we(g.component.subTree,x,k,X);return}if(se&128){g.suspense.move(x,k,X);return}if(se&64){de.move(g,x,k,xn);return}if(de===$e){o(G,x,k);for(let he=0;he<ae.length;he++)we(ae[he],x,k,X);o(g.anchor,x,k);return}if(de===Ur){P(g,x,k);return}if(X!==2&&se&1&&ce)if(X===0)ce.beforeEnter(G),o(G,x,k),fn(()=>ce.enter(G),N);else {const{leave:he,delayLeave:ne,afterLeave:Ae}=ce,h=()=>{g.ctx.isUnmounted?i(G):o(G,x,k);},b=()=>{he(G,()=>{h(),Ae&&Ae();});};ne?ne(G,h,b):b();}else o(G,x,k);},T=(g,x,k,X=false,N=false)=>{const{type:G,props:de,ref:ce,children:ae,dynamicChildren:se,shapeFlag:Ce,patchFlag:he,dirs:ne,cacheIndex:Ae}=g;if(he===-2&&(N=false),ce!=null&&(bo(),ks(ce,null,k,g,true),vo()),Ae!=null&&(x.renderCache[Ae]=void 0),Ce&256){x.ctx.deactivate(g);return}const h=Ce&1&&ne,b=!ji(g);let C;if(b&&(C=de&&de.onVnodeBeforeUnmount)&&zn(C,x,g),Ce&6)ft(g.component,k,X);else {if(Ce&128){g.suspense.unmount(k,X);return}h&&Qo(g,null,x,"beforeUnmount"),Ce&64?g.type.remove(g,x,k,xn,X):se&&!se.hasOnce&&(G!==$e||he>0&&he&64)?cn(se,x,k,false,true):(G===$e&&he&384||!N&&Ce&16)&&cn(ae,x,k),X&&pe(g);}(b&&(C=de&&de.onVnodeUnmounted)||h)&&fn(()=>{C&&zn(C,x,g),h&&Qo(g,null,x,"unmounted");},k);},pe=g=>{const{type:x,el:k,anchor:X,transition:N}=g;if(x===$e){it(k,X);return}if(x===Ur){D(g);return}const G=()=>{i(k),N&&!N.persisted&&N.afterLeave&&N.afterLeave();};if(g.shapeFlag&1&&N&&!N.persisted){const{leave:de,delayLeave:ce}=N,ae=()=>de(k,G);ce?ce(g.el,G,ae):ae();}else G();},it=(g,x)=>{let k;for(;g!==x;)k=p(g),i(g),g=k;i(x);},ft=(g,x,k)=>{const{bum:X,scope:N,job:G,subTree:de,um:ce,m:ae,a:se,parent:Ce,slots:{__:he}}=g;df(ae),df(se),X&&Nr(X),Ce&&Ee(he)&&he.forEach(ne=>{Ce.renderCache[ne]=void 0;}),N.stop(),G&&(G.flags|=8,T(de,g,x,k)),ce&&fn(ce,x),fn(()=>{g.isUnmounted=true;},x),x&&x.pendingBranch&&!x.isUnmounted&&g.asyncDep&&!g.asyncResolved&&g.suspenseId===x.pendingId&&(x.deps--,x.deps===0&&x.resolve());},cn=(g,x,k,X=false,N=false,G=0)=>{for(let de=G;de<g.length;de++)T(g[de],x,k,X,N);},Xt=g=>{if(g.shapeFlag&6)return Xt(g.component.subTree);if(g.shapeFlag&128)return g.suspense.next();const x=p(g.anchor||g.el),k=x&&x[v_];return k?p(k):x};let ao=false;const Ai=(g,x,k)=>{g==null?x._vnode&&T(x._vnode,null,null,true):y(x._vnode||null,g,x,null,null,null,k),x._vnode=g,ao||(ao=true,of(),Gm(),ao=false);},xn={p:y,um:T,m:we,r:pe,mt:le,mc:ue,pc:Se,pbc:ie,n:Xt,o:e};return {render:Ai,hydrate:void 0,createApp:j_(Ai)}}function zl({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Xo({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5);}function Y_(e,t){return (!e||e&&!e.pendingBranch)&&t&&!t.persisted}function pg(e,t,n=false){const o=e.children,i=t.children;if(Ee(o)&&Ee(i))for(let s=0;s<o.length;s++){const r=o[s];let a=i[s];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=i[s]=Po(i[s]),a.el=r.el),!n&&a.patchFlag!==-2&&pg(r,a)),a.type===el&&(a.el=r.el),a.type===Un&&!a.el&&(a.el=r.el);}}function Q_(e){const t=e.slice(),n=[0];let o,i,s,r,a;const l=e.length;for(o=0;o<l;o++){const c=e[o];if(c!==0){if(i=n[n.length-1],e[i]<c){t[o]=i,n.push(o);continue}for(s=0,r=n.length-1;s<r;)a=s+r>>1,e[n[a]]<c?s=a+1:r=a;c<e[n[s]]&&(s>0&&(t[o]=n[s-1]),n[s]=o);}}for(s=n.length,r=n[s-1];s-- >0;)n[s]=r,r=t[r];return n}function hg(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:hg(t)}function df(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8;}const X_=Symbol.for("v-scx"),Z_=()=>$s(X_);function He(e,t,n){return mg(e,t,n)}function mg(e,t,n=st){const{immediate:o,deep:i,flush:s,once:r}=n,a=zt({},n),l=t&&o||!t&&s!=="post";let c;if(js){if(s==="sync"){const w=Z_();c=w.__watcherHandles||(w.__watcherHandles=[]);}else if(!l){const w=()=>{};return w.stop=Yn,w.resume=Yn,w.pause=Yn,w}}const u=Rt;a.call=(w,m,y)=>no(w,u,m,y);let f=false;s==="post"?a.scheduler=w=>{fn(w,u&&u.suspense);}:s!=="sync"&&(f=true,a.scheduler=(w,m)=>{m?w():Jc(w);}),a.augmentJob=w=>{t&&(w.flags|=4),f&&(w.flags|=2,u&&(w.id=u.uid,w.i=u));};const p=h_(e,t,a);return js&&(c?c.push(p):l&&p()),p}function eC(e,t,n){const o=this.proxy,i=wt(e)?e.includes(".")?gg(o,e):()=>o[e]:e.bind(o,o);let s;Oe(t)?s=t:(s=t.handler,n=t);const r=gi(this),a=mg(i,s.bind(o),n);return r(),a}function gg(e,t){const n=t.split(".");return ()=>{let o=e;for(let i=0;i<n.length&&o;i++)o=o[n[i]];return o}}const tC=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${In(t)}Modifiers`]||e[`${Ko(t)}Modifiers`];function nC(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||st;let i=n;const s=t.startsWith("update:"),r=s&&tC(o,t.slice(7));r&&(r.trim&&(i=n.map(u=>wt(u)?u.trim():u)),r.number&&(i=n.map(sa)));let a,l=o[a=Bl(t)]||o[a=Bl(In(t))];!l&&s&&(l=o[a=Bl(Ko(t))]),l&&no(l,e,6,i);const c=o[a+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=true,no(c,e,6,i);}}function wg(e,t,n=false){const o=t.emitsCache,i=o.get(e);if(i!==void 0)return i;const s=e.emits;let r={},a=false;if(!Oe(e)){const l=c=>{const u=wg(c,t,true);u&&(a=true,zt(r,u));};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l);}return !s&&!a?(rt(e)&&o.set(e,null),null):(Ee(s)?s.forEach(l=>r[l]=null):zt(r,s),rt(e)&&o.set(e,r),r)}function Za(e,t){return !e||!qa(t)?false:(t=t.slice(2).replace(/Once$/,""),Ze(e,t[0].toLowerCase()+t.slice(1))||Ze(e,Ko(t))||Ze(e,t))}function ff(e){const{type:t,vnode:n,proxy:o,withProxy:i,propsOptions:[s],slots:r,attrs:a,emit:l,render:c,renderCache:u,props:f,data:p,setupState:w,ctx:m,inheritAttrs:y}=e,v=ca(e);let E,L;try{if(n.shapeFlag&4){const D=i||o,O=D;E=Ln(c.call(O,D,u,f,w,p,m)),L=a;}else {const D=t;E=Ln(D.length>1?D(f,{attrs:a,slots:r,emit:l}):D(f,null)),L=t.props?a:iC(a);}}catch(D){Es.length=0,pr(D,e,1),E=oe(Un);}let P=E;if(L&&y!==false){const D=Object.keys(L),{shapeFlag:O}=P;D.length&&O&7&&(s&&D.some(Rc)&&(L=sC(L,s)),P=Xi(P,L,false,true));}return n.dirs&&(P=Xi(P,null,false,true),P.dirs=P.dirs?P.dirs.concat(n.dirs):n.dirs),n.transition&&Yc(P,n.transition),E=P,ca(v),E}function oC(e,t=true){let n;for(let o=0;o<e.length;o++){const i=e[o];if(Qi(i)){if(i.type!==Un||i.children==="v-if"){if(n)return;n=i;}}else return}return n}const iC=e=>{let t;for(const n in e)(n==="class"||n==="style"||qa(n))&&((t||(t={}))[n]=e[n]);return t},sC=(e,t)=>{const n={};for(const o in e)(!Rc(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function rC(e,t,n){const{props:o,children:i,component:s}=e,{props:r,children:a,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return true;if(n&&l>=0){if(l&1024)return true;if(l&16)return o?pf(o,r,c):!!r;if(l&8){const u=t.dynamicProps;for(let f=0;f<u.length;f++){const p=u[f];if(r[p]!==o[p]&&!Za(c,p))return true}}}else return (i||a)&&(!a||!a.$stable)?true:o===r?false:o?r?pf(o,r,c):true:!!r;return false}function pf(e,t,n){const o=Object.keys(t);if(o.length!==Object.keys(e).length)return true;for(let i=0;i<o.length;i++){const s=o[i];if(t[s]!==e[s]&&!Za(n,s))return true}return false}function td({vnode:e,parent:t},n){for(;t;){const o=t.subTree;if(o.suspense&&o.suspense.activeBranch===e&&(o.el=e.el),o===e)(e=t.vnode).el=n,t=t.parent;else break}}const yg=e=>e.__isSuspense;let Eu=0;const aC={name:"Suspense",__isSuspense:true,process(e,t,n,o,i,s,r,a,l,c){if(e==null)lC(t,n,o,i,s,r,a,l,c);else {if(s&&s.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}uC(e,t,n,o,i,r,a,l,c);}},hydrate:cC,normalize:dC},bg=aC;function Us(e,t){const n=e.props&&e.props[t];Oe(n)&&n();}function lC(e,t,n,o,i,s,r,a,l){const{p:c,o:{createElement:u}}=l,f=u("div"),p=e.suspense=vg(e,i,o,t,f,n,s,r,a,l);c(null,p.pendingBranch=e.ssContent,f,null,o,p,s,r),p.deps>0?(Us(e,"onPending"),Us(e,"onFallback"),c(null,e.ssFallback,t,n,o,null,s,r),Hi(p,e.ssFallback)):p.resolve(false,true);}function uC(e,t,n,o,i,s,r,a,{p:l,um:c,o:{createElement:u}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const p=t.ssContent,w=t.ssFallback,{activeBranch:m,pendingBranch:y,isInFallback:v,isHydrating:E}=f;if(y)f.pendingBranch=p,Io(p,y)?(l(y,p,f.hiddenContainer,null,i,f,s,r,a),f.deps<=0?f.resolve():v&&(E||(l(m,w,n,o,i,null,s,r,a),Hi(f,w)))):(f.pendingId=Eu++,E?(f.isHydrating=false,f.activeBranch=y):c(y,i,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),v?(l(null,p,f.hiddenContainer,null,i,f,s,r,a),f.deps<=0?f.resolve():(l(m,w,n,o,i,null,s,r,a),Hi(f,w))):m&&Io(p,m)?(l(m,p,n,o,i,f,s,r,a),f.resolve(true)):(l(null,p,f.hiddenContainer,null,i,f,s,r,a),f.deps<=0&&f.resolve()));else if(m&&Io(p,m))l(m,p,n,o,i,f,s,r,a),Hi(f,p);else if(Us(t,"onPending"),f.pendingBranch=p,p.shapeFlag&512?f.pendingId=p.component.suspenseId:f.pendingId=Eu++,l(null,p,f.hiddenContainer,null,i,f,s,r,a),f.deps<=0)f.resolve();else {const{timeout:L,pendingId:P}=f;L>0?setTimeout(()=>{f.pendingId===P&&f.fallback(w);},L):L===0&&f.fallback(w);}}function vg(e,t,n,o,i,s,r,a,l,c,u=false){const{p:f,m:p,um:w,n:m,o:{parentNode:y,remove:v}}=c;let E;const L=pC(e);L&&t&&t.pendingBranch&&(E=t.pendingId,t.deps++);const P=e.props?$x(e.props.timeout):void 0,D=s,O={vnode:e,parent:t,parentComponent:n,namespace:r,container:o,hiddenContainer:i,deps:0,pendingId:Eu++,timeout:typeof P=="number"?P:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:false,effects:[],resolve(W=false,z=false){const{vnode:ue,activeBranch:me,pendingBranch:ie,pendingId:F,effects:U,parentComponent:Q,container:le}=O;let ve=false;O.isHydrating?O.isHydrating=false:W||(ve=me&&ie.transition&&ie.transition.mode==="out-in",ve&&(me.transition.afterLeave=()=>{F===O.pendingId&&(p(ie,le,s===D?m(me):s,0),_u(U));}),me&&(y(me.el)===le&&(s=m(me)),w(me,Q,O,true)),ve||p(ie,le,s,0)),Hi(O,ie),O.pendingBranch=null,O.isInFallback=false;let ke=O.parent,_e=false;for(;ke;){if(ke.pendingBranch){ke.effects.push(...U),_e=true;break}ke=ke.parent;}!_e&&!ve&&_u(U),O.effects=[],L&&t&&t.pendingBranch&&E===t.pendingId&&(t.deps--,t.deps===0&&!z&&t.resolve()),Us(ue,"onResolve");},fallback(W){if(!O.pendingBranch)return;const{vnode:z,activeBranch:ue,parentComponent:me,container:ie,namespace:F}=O;Us(z,"onFallback");const U=m(ue),Q=()=>{O.isInFallback&&(f(null,W,ie,U,me,null,F,a,l),Hi(O,W));},le=W.transition&&W.transition.mode==="out-in";le&&(ue.transition.afterLeave=Q),O.isInFallback=true,w(ue,me,null,true),le||Q();},move(W,z,ue){O.activeBranch&&p(O.activeBranch,W,z,ue),O.container=W;},next(){return O.activeBranch&&m(O.activeBranch)},registerDep(W,z,ue){const me=!!O.pendingBranch;me&&O.deps++;const ie=W.vnode.el;W.asyncDep.catch(F=>{pr(F,W,0);}).then(F=>{if(W.isUnmounted||O.isUnmounted||O.pendingId!==W.suspenseId)return;W.asyncResolved=true;const{vnode:U}=W;Iu(W,F),ie&&(U.el=ie);const Q=!ie&&W.subTree.el;z(W,U,y(ie||W.subTree.el),ie?null:m(W.subTree),O,r,ue),Q&&v(Q),td(W,U.el),me&&--O.deps===0&&O.resolve();});},unmount(W,z){O.isUnmounted=true,O.activeBranch&&w(O.activeBranch,n,W,z),O.pendingBranch&&w(O.pendingBranch,n,W,z);}};return O}function cC(e,t,n,o,i,s,r,a,l){const c=t.suspense=vg(t,o,n,e.parentNode,document.createElement("div"),null,i,s,r,a,true),u=l(e,c.pendingBranch=t.ssContent,n,c,s,r);return c.deps===0&&c.resolve(false,true),u}function dC(e){const{shapeFlag:t,children:n}=e,o=t&32;e.ssContent=hf(o?n.default:n),e.ssFallback=o?hf(n.fallback):oe(Un);}function hf(e){let t;if(Oe(e)){const n=Yi&&e._c;n&&(e._d=false,_()),e=e(),n&&(e._d=true,t=sn,xg());}return Ee(e)&&(e=oC(e)),e=Ln(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function fC(e,t){t&&t.pendingBranch?Ee(e)?t.effects.push(...e):t.effects.push(e):_u(e);}function Hi(e,t){e.activeBranch=t;const{vnode:n,parentComponent:o}=e;let i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;n.el=i,o&&o.subTree===n&&(o.vnode.el=i,td(o,i));}function pC(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==false}const $e=Symbol.for("v-fgt"),el=Symbol.for("v-txt"),Un=Symbol.for("v-cmt"),Ur=Symbol.for("v-stc"),Es=[];let sn=null;function _(e=false){Es.push(sn=e?null:[]);}function xg(){Es.pop(),sn=Es[Es.length-1]||null;}let Yi=1;function mf(e,t=false){Yi+=e,e<0&&sn&&t&&(sn.hasOnce=true);}function _g(e){return e.dynamicChildren=Yi>0?sn||Ri:null,xg(),Yi>0&&sn&&sn.push(e),e}function S(e,t,n,o,i,s){return _g(d(e,t,n,o,i,s,true))}function tt(e,t,n,o,i){return _g(oe(e,t,n,o,i,true))}function Qi(e){return e?e.__v_isVNode===true:false}function Io(e,t){return e.type===t.type&&e.key===t.key}const Cg=({key:e})=>e??null,jr=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?wt(e)||At(e)||Oe(e)?{i:Lt,r:e,k:t,f:!!n}:e:null);function d(e,t=null,n=null,o=0,i=null,s=e===$e?0:1,r=false,a=false){const l={__v_isVNode:true,__v_skip:true,type:e,props:t,key:t&&Cg(t),ref:t&&jr(t),scopeId:Qa,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:o,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Lt};return a?(nd(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=wt(n)?8:16),Yi>0&&!r&&sn&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&sn.push(l),l}const oe=hC;function hC(e,t=null,n=null,o=0,i=null,s=false){if((!e||e===eg)&&(e=Un),Qi(e)){const a=Xi(e,t,true);return n&&nd(a,n),Yi>0&&!s&&sn&&(a.shapeFlag&6?sn[sn.indexOf(e)]=a:sn.push(a)),a.patchFlag=-2,a}if(CC(e)&&(e=e.__vccOpts),t){t=kg(t);let{class:a,style:l}=t;a&&!wt(a)&&(t.class=Le(a)),rt(l)&&(Gc(l)&&!Ee(l)&&(l=zt({},l)),t.style=Qn(l));}const r=wt(e)?1:yg(e)?128:x_(e)?64:rt(e)?4:Oe(e)?2:0;return d(e,t,n,o,i,r,s,true)}function kg(e){return e?Gc(e)||ag(e)?zt({},e):e:null}function Xi(e,t,n=false,o=false){const{props:i,ref:s,patchFlag:r,children:a,transition:l}=e,c=t?od(i||{},t):i,u={__v_isVNode:true,__v_skip:true,type:e.type,props:c,key:c&&Cg(c),ref:t&&t.ref?n&&s?Ee(s)?s.concat(jr(t)):[s,jr(t)]:jr(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==$e?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Xi(e.ssContent),ssFallback:e.ssFallback&&Xi(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&Yc(u,l.clone(u)),u}function I(e=" ",t=0){return oe(el,null,e,t)}function Sg(e,t){const n=oe(Ur,null,e);return n.staticCount=t,n}function fe(e="",t=false){return t?(_(),tt(Un,null,e)):oe(Un,null,e)}function Ln(e){return e==null||typeof e=="boolean"?oe(Un):Ee(e)?oe($e,null,e.slice()):Qi(e)?Po(e):oe(el,null,String(e))}function Po(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Xi(e)}function nd(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Ee(t))n=16;else if(typeof t=="object")if(o&65){const i=t.default;i&&(i._c&&(i._d=false),nd(e,i()),i._c&&(i._d=true));return}else {n=32;const i=t._;!i&&!ag(t)?t._ctx=Lt:i===3&&Lt&&(Lt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024));}else Oe(t)?(t={default:t,_ctx:Lt},n=32):(t=String(t),o&64?(n=16,t=[I(t)]):n=8);e.children=t,e.shapeFlag|=n;}function od(...e){const t={};for(let n=0;n<e.length;n++){const o=e[n];for(const i in o)if(i==="class")t.class!==o.class&&(t.class=Le([t.class,o.class]));else if(i==="style")t.style=Qn([t.style,o.style]);else if(qa(i)){const s=t[i],r=o[i];r&&s!==r&&!(Ee(s)&&s.includes(r))&&(t[i]=s?[].concat(s,r):r);}else i!==""&&(t[i]=o[i]);}return t}function zn(e,t,n,o=null){no(e,t,7,[n,o]);}const mC=ig();let gC=0;function wC(e,t,n){const o=e.type,i=(t?t.appContext:e.appContext)||mC,s={uid:gC++,vnode:e,type:o,parent:t,appContext:i,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Ox(true),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ug(o,i),emitsOptions:wg(o,i),emit:null,emitted:null,propsDefaults:st,inheritAttrs:o.inheritAttrs,ctx:st,data:st,props:st,attrs:st,slots:st,refs:st,setupState:st,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:false,isMounted:false,isUnmounted:false,isDeactivated:false,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return s.ctx={_:s},s.root=t?t.root:s,s.emit=nC.bind(null,s),e.ce&&e.ce(s),s}let Rt=null;const $g=()=>Rt||Lt;let fa,Au;{const e=Ga(),t=(n,o)=>{let i;return (i=e[n])||(i=e[n]=[]),i.push(o),s=>{i.length>1?i.forEach(r=>r(s)):i[0](s);}};fa=t("__VUE_INSTANCE_SETTERS__",n=>Rt=n),Au=t("__VUE_SSR_SETTERS__",n=>js=n);}const gi=e=>{const t=Rt;return fa(e),e.scope.on(),()=>{e.scope.off(),fa(t);}},Pu=()=>{Rt&&Rt.scope.off(),fa(null);};function Eg(e){return e.vnode.shapeFlag&4}let js=false;function yC(e,t=false,n=false){t&&Au(t);const{props:o,children:i}=e.vnode,s=Eg(e);z_(e,o,s,t),W_(e,i,n||t);const r=s?bC(e,t):void 0;return t&&Au(false),r}function bC(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,M_);const{setup:o}=n;if(o){bo();const i=e.setupContext=o.length>1?xC(e):null,s=gi(e),r=fr(o,e,0,[e.props,i]),a=Nc(r);if(vo(),s(),(a||e.sp)&&!ji(e)&&Ym(e),a){if(r.then(Pu,Pu),t)return r.then(l=>{Iu(e,l);}).catch(l=>{pr(l,e,0);});e.asyncDep=r;}else Iu(e,r);}else Ag(e);}function Iu(e,t,n){Oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:rt(t)&&(e.setupState=Vm(t)),Ag(e);}function Ag(e,t,n){const o=e.type;e.render||(e.render=o.render||Yn);{const i=gi(e);bo();try{O_(e);}finally{vo(),i();}}}const vC={get(e,t){return Bt(e,"get",""),e[t]}};function xC(e){const t=n=>{e.exposed=n||{};};return {attrs:new Proxy(e.attrs,vC),slots:e.slots,emit:e.emit,expose:t}}function tl(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Vm(o_(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ss)return Ss[n](e)},has(t,n){return n in t||n in Ss}})):e.proxy}function _C(e,t=true){return Oe(e)?e.displayName||e.name:e.name||t&&e.__name}function CC(e){return Oe(e)&&"__vccOpts"in e}const Ke=(e,t)=>f_(e,t,js);function kC(e,t,n){const o=arguments.length;return o===2?rt(t)&&!Ee(t)?Qi(t)?oe(e,null,[t]):oe(e,t):oe(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Qi(n)&&(n=[n]),oe(e,t,n))}const SC="3.5.18";/**
* @vue/runtime-dom v3.5.18
* (c) 2018-present Yuxi (Evan) You and Vue contributors
* @license MIT
**/let Du;const gf=typeof window<"u"&&window.trustedTypes;if(gf)try{Du=gf.createPolicy("vue",{createHTML:e=>e});}catch{}const Pg=Du?e=>Du.createHTML(e):e=>e,$C="http://www.w3.org/2000/svg",EC="http://www.w3.org/1998/Math/MathML",uo=typeof document<"u"?document:null,wf=uo&&uo.createElement("template"),AC={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 i=t==="svg"?uo.createElementNS($C,e):t==="mathml"?uo.createElementNS(EC,e):n?uo.createElement(e,{is:n}):uo.createElement(e);return e==="select"&&o&&o.multiple!=null&&i.setAttribute("multiple",o.multiple),i},createText:e=>uo.createTextNode(e),createComment:e=>uo.createComment(e),setText:(e,t)=>{e.nodeValue=t;},setElementText:(e,t)=>{e.textContent=t;},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>uo.querySelector(e),setScopeId(e,t){e.setAttribute(t,"");},insertStaticContent(e,t,n,o,i,s){const r=n?n.previousSibling:t.lastChild;if(i&&(i===s||i.nextSibling))for(;t.insertBefore(i.cloneNode(true),n),!(i===s||!(i=i.nextSibling)););else {wf.innerHTML=Pg(o==="svg"?`<svg>${e}</svg>`:o==="mathml"?`<math>${e}</math>`:e);const a=wf.content;if(o==="svg"||o==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l);}t.insertBefore(a,n);}return [r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},PC=Symbol("_vtc");function IC(e,t,n){const o=e[PC];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t;}const pa=Symbol("_vod"),Ig=Symbol("_vsh"),Wt={beforeMount(e,{value:t},{transition:n}){e[pa]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):hs(e,t);},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e);},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),hs(e,true),o.enter(e)):o.leave(e,()=>{hs(e,false);}):hs(e,t));},beforeUnmount(e,{value:t}){hs(e,t);}};function hs(e,t){e.style.display=t?e[pa]:"none",e[Ig]=!t;}const DC=Symbol(""),LC=/(^|;)\s*display\s*:/;function TC(e,t,n){const o=e.style,i=wt(n);let s=false;if(n&&!i){if(t)if(wt(t))for(const r of t.split(";")){const a=r.slice(0,r.indexOf(":")).trim();n[a]==null&&zr(o,a,"");}else for(const r in t)n[r]==null&&zr(o,r,"");for(const r in n)r==="display"&&(s=true),zr(o,r,n[r]);}else if(i){if(t!==n){const r=o[DC];r&&(n+=";"+r),o.cssText=n,s=LC.test(n);}}else t&&e.removeAttribute("style");pa in e&&(e[pa]=s?o.display:"",e[Ig]&&(o.display="none"));}const yf=/\s*!important$/;function zr(e,t,n){if(Ee(n))n.forEach(o=>zr(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else {const o=MC(e,t);yf.test(n)?e.setProperty(Ko(o),n.replace(yf,""),"important"):e[o]=n;}}const bf=["Webkit","Moz","ms"],Hl={};function MC(e,t){const n=Hl[t];if(n)return n;let o=In(t);if(o!=="filter"&&o in e)return Hl[t]=o;o=Ka(o);for(let i=0;i<bf.length;i++){const s=bf[i]+o;if(s in e)return Hl[t]=s}return t}const vf="http://www.w3.org/1999/xlink";function xf(e,t,n,o,i,s=Tx(t)){o&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(vf,t.slice(6,t.length)):e.setAttributeNS(vf,t,n):n==null||s&&!$m(n)?e.removeAttribute(t):e.setAttribute(t,s?"":Nn(n)?String(n):n);}function _f(e,t,n,o,i){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?Pg(n):n);return}const s=e.tagName;if(t==="value"&&s!=="PROGRESS"&&!s.includes("-")){const a=s==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(a!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let r=false;if(n===""||n==null){const a=typeof e[t];a==="boolean"?n=$m(n):n==null&&a==="string"?(n="",r=true):a==="number"&&(n=0,r=true);}try{e[t]=n;}catch{}r&&e.removeAttribute(i||t);}function po(e,t,n,o){e.addEventListener(t,n,o);}function OC(e,t,n,o){e.removeEventListener(t,n,o);}const Cf=Symbol("_vei");function BC(e,t,n,o,i=null){const s=e[Cf]||(e[Cf]={}),r=s[t];if(o&&r)r.value=o;else {const[a,l]=RC(t);if(o){const c=s[t]=UC(o,i);po(e,a,c,l);}else r&&(OC(e,a,r,l),s[t]=void 0);}}const kf=/(?:Once|Passive|Capture)$/;function RC(e){let t;if(kf.test(e)){t={};let o;for(;o=e.match(kf);)e=e.slice(0,e.length-o[0].length),t[o[0].toLowerCase()]=true;}return [e[2]===":"?e.slice(3):Ko(e.slice(2)),t]}let Vl=0;const FC=Promise.resolve(),NC=()=>Vl||(FC.then(()=>Vl=0),Vl=Date.now());function UC(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;no(jC(o,n.value),t,5,[o]);};return n.value=e,n.attached=NC(),n}function jC(e,t){if(Ee(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=true;},t.map(o=>i=>!i._stopped&&o&&o(i))}else return t}const Sf=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,zC=(e,t,n,o,i,s)=>{const r=i==="svg";t==="class"?IC(e,o,r):t==="style"?TC(e,n,o):qa(t)?Rc(t)||BC(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),true):t[0]==="^"?(t=t.slice(1),false):HC(e,t,o,r))?(_f(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&xf(e,t,o,r,s,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!wt(o))?_f(e,In(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),xf(e,t,o,r));};function HC(e,t,n,o){if(o)return !!(t==="innerHTML"||t==="textContent"||t in e&&Sf(t)&&Oe(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return false;if(t==="width"||t==="height"){const i=e.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return false}return Sf(t)&&wt(n)?false:t in e}const zo=e=>{const t=e.props["onUpdate:modelValue"]||false;return Ee(t)?n=>Nr(t,n):t};function VC(e){e.target.composing=true;}function $f(e){const t=e.target;t.composing&&(t.composing=false,t.dispatchEvent(new Event("input")));}const An=Symbol("_assign"),Ve={created(e,{modifiers:{lazy:t,trim:n,number:o}},i){e[An]=zo(i);const s=o||i.props&&i.props.type==="number";po(e,t?"change":"input",r=>{if(r.target.composing)return;let a=e.value;n&&(a=a.trim()),s&&(a=sa(a)),e[An](a);}),n&&po(e,"change",()=>{e.value=e.value.trim();}),t||(po(e,"compositionstart",VC),po(e,"compositionend",$f),po(e,"change",$f));},mounted(e,{value:t}){e.value=t??"";},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:o,trim:i,number:s}},r){if(e[An]=zo(r),e.composing)return;const a=(s||e.type==="number")&&!/^0\d/.test(e.value)?sa(e.value):e.value,l=t??"";a!==l&&(document.activeElement===e&&e.type!=="range"&&(o&&t===n||i&&e.value.trim()===l)||(e.value=l));}},ye={deep:true,created(e,t,n){e[An]=zo(n),po(e,"change",()=>{const o=e._modelValue,i=Zi(e),s=e.checked,r=e[An];if(Ee(o)){const a=jc(o,i),l=a!==-1;if(s&&!l)r(o.concat(i));else if(!s&&l){const c=[...o];c.splice(a,1),r(c);}}else if(ss(o)){const a=new Set(o);s?a.add(i):a.delete(i),r(a);}else r(Lg(e,s));});},mounted:Ef,beforeUpdate(e,t,n){e[An]=zo(n),Ef(e,t,n);}};function Ef(e,{value:t,oldValue:n},o){e._modelValue=t;let i;if(Ee(t))i=jc(t,o.props.value)>-1;else if(ss(t))i=t.has(o.props.value);else {if(t===n)return;i=hi(t,Lg(e,true));}e.checked!==i&&(e.checked=i);}const Dg={created(e,{value:t},n){e.checked=hi(t,n.props.value),e[An]=zo(n),po(e,"change",()=>{e[An](Zi(e));});},beforeUpdate(e,{value:t,oldValue:n},o){e[An]=zo(o),t!==n&&(e.checked=hi(t,o.props.value));}},gn={deep:true,created(e,{value:t,modifiers:{number:n}},o){const i=ss(t);po(e,"change",()=>{const s=Array.prototype.filter.call(e.options,r=>r.selected).map(r=>n?sa(Zi(r)):Zi(r));e[An](e.multiple?i?new Set(s):s:s[0]),e._assigning=true,mi(()=>{e._assigning=false;});}),e[An]=zo(o);},mounted(e,{value:t}){Af(e,t);},beforeUpdate(e,t,n){e[An]=zo(n);},updated(e,{value:t}){e._assigning||Af(e,t);}};function Af(e,t){const n=e.multiple,o=Ee(t);if(!(n&&!o&&!ss(t))){for(let i=0,s=e.options.length;i<s;i++){const r=e.options[i],a=Zi(r);if(n)if(o){const l=typeof a;l==="string"||l==="number"?r.selected=t.some(c=>String(c)===String(a)):r.selected=jc(t,a)>-1;}else r.selected=t.has(a);else if(hi(Zi(r),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1);}}function Zi(e){return "_value"in e?e._value:e.value}function Lg(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const qC={created(e,t,n){Ar(e,t,n,null,"created");},mounted(e,t,n){Ar(e,t,n,null,"mounted");},beforeUpdate(e,t,n,o){Ar(e,t,n,o,"beforeUpdate");},updated(e,t,n,o){Ar(e,t,n,o,"updated");}};function WC(e,t){switch(e){case "SELECT":return gn;case "TEXTAREA":return Ve;default:switch(t){case "checkbox":return ye;case "radio":return Dg;default:return Ve}}}function Ar(e,t,n,o,i){const r=WC(e.tagName,n.props&&n.props.type)[i];r&&r(e,t,n,o);}const KC=["ctrl","shift","alt","meta"],GC={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)=>KC.some(n=>e[`${n}Key`]&&!t.includes(n))},kn=(e,t)=>{const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=(i,...s)=>{for(let r=0;r<t.length;r++){const a=GC[t[r]];if(a&&a(i,t))return}return e(i,...s)})},JC={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Tg=(e,t)=>{const n=e._withKeys||(e._withKeys={}),o=t.join(".");return n[o]||(n[o]=i=>{if(!("key"in i))return;const s=Ko(i.key);if(t.some(r=>r===s||JC[r]===s))return e(i)})},YC=zt({patchProp:zC},AC);let Pf;function QC(){return Pf||(Pf=G_(YC))}const ro=(...e)=>{const t=QC().createApp(...e),{mount:n}=t;return t.mount=o=>{const i=ZC(o);if(!i)return;const s=t._component;!Oe(s)&&!s.render&&!s.template&&(s.template=i.innerHTML),i.nodeType===1&&(i.textContent="");const r=n(i,false,XC(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),r},t};function XC(e){if(e instanceof SVGElement)return "svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return "mathml"}function ZC(e){return wt(e)?document.querySelector(e):e}var Mg=(e=>(e.VideoPlay="VideoPlay",e))(Mg||{});const ek="https://greatest.deepsurf.us/zh-CN/scripts/495474",tk="115Plus";class nk{bc;_isInstalled=void 0;messageHandlers=new Set;constructor(){this.bc=new BroadcastChannel(tk),this.bc.addEventListener("message",this.handleMessage.bind(this));}handleMessage(t){this.messageHandlers.forEach(n=>n(t.data));}checkInstalled(){return kt().$('.top-side .n-button__content:contains("115+")').length>0}async checkInstalledAsync(){return await new Promise(t=>setTimeout(t,100)),this._isInstalled=this.checkInstalled(),this._isInstalled}get isInstalled(){return this._isInstalled}async refreshInstallStatus(){return this.checkInstalledAsync()}defaultHandleNotInstalled(){confirm("检测到未安装 115+ 脚本,是否现在安装?")&&window.open(ek,"_blank");}ensureInstalled(t){return this._isInstalled===void 0&&(this._isInstalled=this.checkInstalled()),[this._isInstalled,t||this.defaultHandleNotInstalled.bind(this)]}sendToPlus(t,n){this.bc.postMessage({type:t,data:JSON.stringify(n),url:window.top?.location.href});}onMessage(t){return this.messageHandlers.add(t),()=>{this.messageHandlers.delete(t);}}destroy(){this.bc.close(),this.messageHandlers.clear();}}const ok=new nk;function ik(){return ok}function sk(e){return new Bs.RateLimiterMemory({points:e?28:99999,duration:e?60:1,execEvenly:false})}function Og(e){return e.filter(t=>t.startsWith("https://115.com")).length}async function nl(e,t,n){if(e.length===1){Ms(e[0],{active:!t});return}const o=Og(e);n=n||sk(o>0);const i="open_urls";let s=false;te.fire({html:"正在打开链接...",showConfirmButton:false,showDenyButton:true,denyButtonText:"停止打开",allowEscapeKey:false,allowOutsideClick:false}).then(l=>{l.isDenied&&(s=true,te.close());});const r=[],a=async()=>{const l=e.length-r.length,{isDenied:c}=await te.fire({html:`已成功打开 ${r.length} 个链接。`+(l>0?`有 ${l} 个链接未打开`:""),icon:"success",timer:18e5,showDenyButton:r.length>0,denyButtonText:"关闭本次打开的全部页面"});if(c)for(const u of r)u.closed||u.close();};te.showLoading();for(let l=0;l<e.length;l++){if(s){te.close(),await a();return}const c=e[l];te.update({html:`正在打开第 ${l+1} 个链接... 进度: ${l+1} / ${e.length}`});const u=Ms(c,{active:!t});if(r.push(u),l===0&&await n.consume(i,1),l<e.length-1){let f=o>0?500:200;try{const w=await n.consume(i,1);console.log("[openUrls] RateLimiterRes",w),!w.remainingPoints&&w.msBeforeNext>0&&(f=w.msBeforeNext);}catch(w){if(w instanceof Bs.RateLimiterRes)console.warn("[openUrls] RateLimiterRes",w),f=w.msBeforeNext;else throw console.error("[openUrls]",w),new Error(`批量打开链接出错: ${w.toString()}`)}const p=(f/1e3).toFixed(1);te.update({html:`将在 ${p} 秒后打开第 ${l+2} 个链接... 进度: ${l+1} / ${e.length}`}),await Mt(f);}}te.hideLoading(),await a();}function wo(e){return {aid:1,cid:"",o:Ha.userPtime,asc:Oo.false,offset:0,show_dir:Oo.true,limit:115,natsort:Oo.false,format:"json",...e}}async function id(e){const t=ja(e),o=(await Ot().get("https://webapi.115.com/files?"+t,{timeout:12e4,withCredentials:true})).data;if(o.state)return o;throw new Error(o.error)}async function Vi(e,t=50){let n=[],o=0;for(;;){e.offset=o;const i=await id(e);if(!i.data||!i.data.length||(i.count>i.data.length&&e.limit!==i.data.length&&(console.warn(`[getFilesList] invalid limit(${e.limit}) detected! max limit is ${i.page_size}, correct it now!`),e.limit=i.page_size),n=[...n,...i.data],o+=e.limit,o>=i.count))break;await Mt(t);}return n}async function rk(e){if(!(await Nt(e)).play_long)throw new Error("该目录下没有可以播放的媒体文件![by_attr]");const o=(await Vi(wo({cid:e,limit:1150}))).find(i=>i.play_long&&i.play_long>0);if(!o)throw new Error("该目录下没有可以播放的媒体文件![by_files]");return _i(o)}let ak=[];function Lu(e,t){return t===Gn.alt&&e.altKey||t===Gn.ctrl&&e.ctrlKey||t===Gn.shift&&e.shiftKey||t===Gn.meta&&e.metaKey}function If(e){return e.includes("https://115.com")&&Zs("mode",e)==="search"}function Bg(e,t){const{keyToTriggerManual:n,keyToTriggerSearchScope:o,auxClickTriggerManual:i}=e;let s=t||"";const r=[],a=[];return i&&a.push("鼠标中键"),n&&a.push(Gn[n]),a.length&&r.push(`${a.join("或")}辅助键改搜索内容`),o&&r.push(`${Gn[o]}辅助键选搜索目录`),r.length&&(s+=`
提示: ${r.join(" / ")}`),s}async function lk(){return new Promise((e,t)=>{kt().Core.FileSelectDG.Open((o,i)=>{const s=o[o.length-1];console.log("[selectSearchScope] folder",s),s&&s.cid?e(s):t(new Error("未选择有效的文件夹"));},{select:1,nf:1,show_record:0,show_copy:1,btn_txt:"在该目录下搜索",select_txt:"搜索"});})}async function ol(e,t,n=mn,o,i=void 0){const s=[],r=await ut();n=n||mn;for(const a of t){i=i!==void 0?i:a.openInBackground;const l=Da(e,{key:`_ce_s_${a.key}`,label:a.label,icon:a.icon,title:Bg(r,a.memo),onClick:async(c,u)=>{u.stopPropagation(),u.preventDefault(),c instanceof ac&&await c.closeMenu(),await hr(c,a,u,r,n,o,i);}});s.push(l);}return s}async function hr(e,t,n,o,i=mn,s,r=void 0){try{const a=o.keyToTriggerManual,l=o.auxClickTriggerManual;let c;(a&&Lu(n,a)||l&&n.button===1)&&(c={names:[Mc.manual],position:o.injectManualFuncPosition});let f=!1,p=[];if(s&&[Ie.selection,Ie.selectionSub].includes(s))p=await so(!0),f=!0;else {const L=$(n.target).closest("li");p.push(await i(L[0]));}if(!p.length)throw new Error("没有选中任何文件!");const w=await Qt(),m=[],y=[],v=async L=>{try{const P=await Os(L,t,w,c);if(!P)y.push(`文件 id="${L.id}", name="${L.name}" 的链接构建失败: 无法构建有效的搜索链接!`);else return P}catch(P){return y.push(`文件 id="${L.id}", name="${L.name}" 的链接构建失败: ${P.message}`),""}};let E=0;for(const L of p){const P=await v(L);P&&(If(P)&&E++,m.push(P));}if(E>0){const L=o.keyToTriggerSearchScope;if(L&&Lu(n,L)){const P=await lk();if(P)for(let D=0;D<m.length;D++)If(m[D])&&(m[D]=m[D].replace(/(cid%3D)(\d+)/,"$1"+P.cid));else return}}if(console.warn("[search files] urls: %o, errors: %o",m,y),!m.length)throw new Error("没有有效的搜索链接!"+(y.length?`
错误信息:
${y.join(`
`)}`:""));await uk(m,!!r);}catch(a){console.error(a),Y({title:"搜索失败",text:a.toString(),icon:"error",timer:0,showCloseButton:true});}}async function uk(e,t){const n=Og(e),o=ck(n>0);await nl(e,t,o);}function ck(e){return new Bs.RateLimiterMemory({points:e?28:99999,duration:e?60:1,execEvenly:false})}async function Rg(e,t){if(console.log("[playDirOnAnxia]",e,t),!t)try{Y({title:"正在查找可播放的文件...",text:"请稍等...",icon:"info"}),te.showLoading(),t=await rk(e),console.log("[playDirOnAnxia] file",t);}catch(o){console.error(o),Y({title:"播放失败",text:o.toString(),icon:"error"});return}t||Y({title:"播放失败",text:"没有在该目录下找到可播放的文件![file_null]",icon:"error"});const n=hm(t.pickCode);window.open(n,"_blank","noopener noreferrer");}async function Fg(e,t,n,o){o.stopPropagation(),o.preventDefault();const i=t.keyToTriggerManual,s=t.auxClickTriggerManual,r=i&&Lu(o,i)||s&&o.button===1;try{let a;r&&(a={names:[Mc.manual],position:t.injectManualFuncPosition});const l=$(o.target).closest("li"),c=mn(l),u=await Qt(),f=await Os(c,e,u,a);if(c.isDir&&Lc(f)){Rg(c.id);return}if(e.key==="p_builtin_115plus"){if(c.isDir){const w=o.metaKey||o.ctrlKey;ha(void 0,c.id,w);}else ha([c]);return}if(/^(#|javascript:(?:;|void\(0\);?))$/.test(f))return;if(console.log("[play url]",f),!f)throw new Error("无法获取有效的播放链接!");window.open(f,"_blank","noopener noreferrer");}catch(a){console.error(a),Y({title:"播放失败",text:a.toString(),icon:"error"});}}async function sd(e){const t="_p_null_",n=[...await _m(),...ak],o=n.filter(l=>l.enabled),i=[...o,...(await ki(to.play)).filter(l=>l.enabled)],s=(l,c)=>l.find(u=>u.key===c);let r=s(o,e.defaultPlayer||"p_builtin_online");r||(r=s(n,"p_builtin_online")),r||(console.warn("[play with dropdown] default player not found"),r=Ct({key:t,url:"#",label:"播放",memo:"播放菜单数据异常!",enabled:true})),r={...r},r.key==="p_builtin_online"&&(r.label="播放");const a=i.findIndex(l=>l.key===r.key);return a>-1&&i.splice(a,1),{keyNull:t,noRealDefault:r.key===t,defaultPlayer:r,customUrlItems:i}}async function dk(e,t){const n=[],o=await ut();for(const i of t){const s=Da(e,{key:`_ce_p_${i.key}`,label:i.label,icon:i.icon,title:i.memo,onClick:async(r,a)=>{Fg(i,o,r,a);}});n.push(s);}return n}async function ha(e,t,n=false){console.log("[playByPlus]",e,t,n);const o=ik(),[i,s]=o.ensureInstalled();if(!i){s();return}const r=l=>{Y({title:l||"没有可播放的视频",icon:"warning"});};if(!e||!e.length){if(!t){r("未指定视频文件和目录ID");return}if(n){if(t==="0"){r("根目录不支持递归获取视频文件");return}const{isConfirmed:u}=await te.fire({title:"播放目录下全部层级的视频",text:"即将递归获取目录下的视频文件(最多1150)并播放,是否继续?",icon:"warning",showCancelButton:true});if(!u)return}const l=wo({cid:t,limit:1150});n&&(l.type=Sn.video);const c=await id(l);if(c.count)e=dm(c.data);else {r();return}}const a=e.filter(l=>l.transcoded).map(l=>({name:l.name,code:l.pickCode,size:l.sizeBytes,isDir:false}));if(!a.length){r();return}o.sendToPlus(Mg.VideoPlay,a);}var ht=(e=>(e[e.full=0]="full",e[e.pure=1]="pure",e[e.fullUnique=2]="fullUnique",e[e.pureUnique=3]="pureUnique",e[e.id=4]="id",e[e.pickCode=5]="pickCode",e[e.sha1=6]="sha1",e[e.sha1WithName=7]="sha1WithName",e))(ht||{});function mr(e,t,n){const o=[];for(const s of e){let r;switch(t){case 0:case 2:r=s.name;break;case 1:case 3:r=s.isDir?s.name:s.name.replace(/\.[^.]+$/,"");break;case 4:r=s.id;break;case 5:r=s.pickCode;break;case 6:r=s.hash;break;case 7:r=`${s.hash}//${s.name}`;break}r&&o.push(n?n(r):r);}return [2,3,6,7].includes(t)?Array.from(new Set(o)):o}var Mn=(e=>(e[e.unixPath=0]="unixPath",e[e.winPath=1]="winPath",e[e.unixParentPath=2]="unixParentPath",e[e.winParentPath=3]="winParentPath",e))(Mn||{});async function il(e,t,n){const o=n===1||n===3;let s=n===2||n===3?t.replace(/\/[^/]+$/,""):t;return s.startsWith("/")||(s="/"+s),o&&(s=s.replace(/\//g,"\\")),s}async function fk(e){return async(t,n)=>{const o=await jt(),r=is()[0].querySelectorAll("li[file_id].selected");if(!r.length){Y({title:"文件移动到同名目录",text:"当前目录没有选中文件",icon:"warning"});return}let a=`当前已选中${r.length}个文件,是否继续?`;a+=`<br><div style="text-align:left">
<b>处理逻辑:</b>
<p>0.「同名目录」取自纯文件名(不带后缀名)。</p>
<p>1.如果同名目录已存在,会直接使用已存在的目录。</p>
<p>2.同名目录相同的文件,会被移动到同一个目录里面。</p>
<p class="text-primary">示例: <span>movie.mp4</span> 的同名目录为 <span>movie</span></p>
</div>`;const{value:l}=await te.fire({title:"文件移动到同名目录",html:a,icon:"warning",showCancelButton:true,confirmButtonText:"继续",cancelButtonText:"取消"});if(l){te.fire({title:"文件移动到同名目录",html:"正在处理...",didOpen:()=>{te.showLoading();}});for(let c=0;c<r.length;c++){const u=r[c],f=mn($(u));if(!f.isFile)continue;const p=f.name,w=p.replace(/\.[^\.]+$/,""),m=`${c+1} / ${r.length} - `+Math.round(c/r.length*100)+"%";te.update({html:`${m} 正在为文件「${p}」创建目录「${w}」`});const y=await Y0(w,o,true);te.update({html:`创建目录「${w}」成功。id=${y}`}),te.update({html:`${m} 正在移动文件「${p}」到目录「${w}」`}),await im(y,[f.id]),await Mt(500);}te.hideLoading(),te.update({html:"处理完成。刷新列表后查看最新的文件数据。",icon:"success"});}}}function pk(e,t){const n=[];for(let o=1;o<e.length;o++)n.push(e[o].file_name);return n}async function Ng(e,t,n){const o=await W0(e),i=[];for(let s=0;s<e.length;s++){e[s].name=n?n(e[s].name):e[s].name;const r=o.get(e[s].parentId);if(!r)throw new Error(`无法获取文件 "${e[s].name}" 的上级目录路径!`);const a=pk(r).map(c=>n?n(c):c),l=ia([...a,e[s].name],Mo.unix);i.push(await il(e[s],l,t));}return i}let ql=pi.unknown;async function ma(e){const t=await Qt();ql===pi.unknown&&(ql=await b0(t));let n="";if(e.id==="0")n="/";else {let i=await Va(e,true);i=i.map(s=>un(t,s)),n=await il(e,i.join("/"),e.isDir?0:2);}const o=await h0(t,n,ql);console.log("url: ",o),window.open(o,"_blank","noopener noreferrer"),Y({title:"在CloudDrive2中查看",text:`已打开CloudDrive2链接: ${o}`,icon:"success"});}class _t{constructor(){this._dataLength=0,this._bufferLength=0,this._state=new Int32Array(4),this._buffer=new ArrayBuffer(68),this._buffer8=new Uint8Array(this._buffer,0,68),this._buffer32=new Uint32Array(this._buffer,0,17),this.start();}static hashStr(t,n=false){return this.onePassHasher.start().appendStr(t).end(n)}static hashAsciiStr(t,n=false){return this.onePassHasher.start().appendAsciiStr(t).end(n)}static _hex(t){const n=_t.hexChars,o=_t.hexOut;let i,s,r,a;for(a=0;a<4;a+=1)for(s=a*8,i=t[a],r=0;r<8;r+=2)o[s+1+r]=n.charAt(i&15),i>>>=4,o[s+0+r]=n.charAt(i&15),i>>>=4;return o.join("")}static _md5cycle(t,n){let o=t[0],i=t[1],s=t[2],r=t[3];o+=(i&s|~i&r)+n[0]-680876936|0,o=(o<<7|o>>>25)+i|0,r+=(o&i|~o&s)+n[1]-389564586|0,r=(r<<12|r>>>20)+o|0,s+=(r&o|~r&i)+n[2]+606105819|0,s=(s<<17|s>>>15)+r|0,i+=(s&r|~s&o)+n[3]-1044525330|0,i=(i<<22|i>>>10)+s|0,o+=(i&s|~i&r)+n[4]-176418897|0,o=(o<<7|o>>>25)+i|0,r+=(o&i|~o&s)+n[5]+1200080426|0,r=(r<<12|r>>>20)+o|0,s+=(r&o|~r&i)+n[6]-1473231341|0,s=(s<<17|s>>>15)+r|0,i+=(s&r|~s&o)+n[7]-45705983|0,i=(i<<22|i>>>10)+s|0,o+=(i&s|~i&r)+n[8]+1770035416|0,o=(o<<7|o>>>25)+i|0,r+=(o&i|~o&s)+n[9]-1958414417|0,r=(r<<12|r>>>20)+o|0,s+=(r&o|~r&i)+n[10]-42063|0,s=(s<<17|s>>>15)+r|0,i+=(s&r|~s&o)+n[11]-1990404162|0,i=(i<<22|i>>>10)+s|0,o+=(i&s|~i&r)+n[12]+1804603682|0,o=(o<<7|o>>>25)+i|0,r+=(o&i|~o&s)+n[13]-40341101|0,r=(r<<12|r>>>20)+o|0,s+=(r&o|~r&i)+n[14]-1502002290|0,s=(s<<17|s>>>15)+r|0,i+=(s&r|~s&o)+n[15]+1236535329|0,i=(i<<22|i>>>10)+s|0,o+=(i&r|s&~r)+n[1]-165796510|0,o=(o<<5|o>>>27)+i|0,r+=(o&s|i&~s)+n[6]-1069501632|0,r=(r<<9|r>>>23)+o|0,s+=(r&i|o&~i)+n[11]+643717713|0,s=(s<<14|s>>>18)+r|0,i+=(s&o|r&~o)+n[0]-373897302|0,i=(i<<20|i>>>12)+s|0,o+=(i&r|s&~r)+n[5]-701558691|0,o=(o<<5|o>>>27)+i|0,r+=(o&s|i&~s)+n[10]+38016083|0,r=(r<<9|r>>>23)+o|0,s+=(r&i|o&~i)+n[15]-660478335|0,s=(s<<14|s>>>18)+r|0,i+=(s&o|r&~o)+n[4]-405537848|0,i=(i<<20|i>>>12)+s|0,o+=(i&r|s&~r)+n[9]+568446438|0,o=(o<<5|o>>>27)+i|0,r+=(o&s|i&~s)+n[14]-1019803690|0,r=(r<<9|r>>>23)+o|0,s+=(r&i|o&~i)+n[3]-187363961|0,s=(s<<14|s>>>18)+r|0,i+=(s&o|r&~o)+n[8]+1163531501|0,i=(i<<20|i>>>12)+s|0,o+=(i&r|s&~r)+n[13]-1444681467|0,o=(o<<5|o>>>27)+i|0,r+=(o&s|i&~s)+n[2]-51403784|0,r=(r<<9|r>>>23)+o|0,s+=(r&i|o&~i)+n[7]+1735328473|0,s=(s<<14|s>>>18)+r|0,i+=(s&o|r&~o)+n[12]-1926607734|0,i=(i<<20|i>>>12)+s|0,o+=(i^s^r)+n[5]-378558|0,o=(o<<4|o>>>28)+i|0,r+=(o^i^s)+n[8]-2022574463|0,r=(r<<11|r>>>21)+o|0,s+=(r^o^i)+n[11]+1839030562|0,s=(s<<16|s>>>16)+r|0,i+=(s^r^o)+n[14]-35309556|0,i=(i<<23|i>>>9)+s|0,o+=(i^s^r)+n[1]-1530992060|0,o=(o<<4|o>>>28)+i|0,r+=(o^i^s)+n[4]+1272893353|0,r=(r<<11|r>>>21)+o|0,s+=(r^o^i)+n[7]-155497632|0,s=(s<<16|s>>>16)+r|0,i+=(s^r^o)+n[10]-1094730640|0,i=(i<<23|i>>>9)+s|0,o+=(i^s^r)+n[13]+681279174|0,o=(o<<4|o>>>28)+i|0,r+=(o^i^s)+n[0]-358537222|0,r=(r<<11|r>>>21)+o|0,s+=(r^o^i)+n[3]-722521979|0,s=(s<<16|s>>>16)+r|0,i+=(s^r^o)+n[6]+76029189|0,i=(i<<23|i>>>9)+s|0,o+=(i^s^r)+n[9]-640364487|0,o=(o<<4|o>>>28)+i|0,r+=(o^i^s)+n[12]-421815835|0,r=(r<<11|r>>>21)+o|0,s+=(r^o^i)+n[15]+530742520|0,s=(s<<16|s>>>16)+r|0,i+=(s^r^o)+n[2]-995338651|0,i=(i<<23|i>>>9)+s|0,o+=(s^(i|~r))+n[0]-198630844|0,o=(o<<6|o>>>26)+i|0,r+=(i^(o|~s))+n[7]+1126891415|0,r=(r<<10|r>>>22)+o|0,s+=(o^(r|~i))+n[14]-1416354905|0,s=(s<<15|s>>>17)+r|0,i+=(r^(s|~o))+n[5]-57434055|0,i=(i<<21|i>>>11)+s|0,o+=(s^(i|~r))+n[12]+1700485571|0,o=(o<<6|o>>>26)+i|0,r+=(i^(o|~s))+n[3]-1894986606|0,r=(r<<10|r>>>22)+o|0,s+=(o^(r|~i))+n[10]-1051523|0,s=(s<<15|s>>>17)+r|0,i+=(r^(s|~o))+n[1]-2054922799|0,i=(i<<21|i>>>11)+s|0,o+=(s^(i|~r))+n[8]+1873313359|0,o=(o<<6|o>>>26)+i|0,r+=(i^(o|~s))+n[15]-30611744|0,r=(r<<10|r>>>22)+o|0,s+=(o^(r|~i))+n[6]-1560198380|0,s=(s<<15|s>>>17)+r|0,i+=(r^(s|~o))+n[13]+1309151649|0,i=(i<<21|i>>>11)+s|0,o+=(s^(i|~r))+n[4]-145523070|0,o=(o<<6|o>>>26)+i|0,r+=(i^(o|~s))+n[11]-1120210379|0,r=(r<<10|r>>>22)+o|0,s+=(o^(r|~i))+n[2]+718787259|0,s=(s<<15|s>>>17)+r|0,i+=(r^(s|~o))+n[9]-343485551|0,i=(i<<21|i>>>11)+s|0,t[0]=o+t[0]|0,t[1]=i+t[1]|0,t[2]=s+t[2]|0,t[3]=r+t[3]|0;}start(){return this._dataLength=0,this._bufferLength=0,this._state.set(_t.stateIdentity),this}appendStr(t){const n=this._buffer8,o=this._buffer32;let i=this._bufferLength,s,r;for(r=0;r<t.length;r+=1){if(s=t.charCodeAt(r),s<128)n[i++]=s;else if(s<2048)n[i++]=(s>>>6)+192,n[i++]=s&63|128;else if(s<55296||s>56319)n[i++]=(s>>>12)+224,n[i++]=s>>>6&63|128,n[i++]=s&63|128;else {if(s=(s-55296)*1024+(t.charCodeAt(++r)-56320)+65536,s>1114111)throw new Error("Unicode standard supports code points up to U+10FFFF");n[i++]=(s>>>18)+240,n[i++]=s>>>12&63|128,n[i++]=s>>>6&63|128,n[i++]=s&63|128;}i>=64&&(this._dataLength+=64,_t._md5cycle(this._state,o),i-=64,o[0]=o[16]);}return this._bufferLength=i,this}appendAsciiStr(t){const n=this._buffer8,o=this._buffer32;let i=this._bufferLength,s,r=0;for(;;){for(s=Math.min(t.length-r,64-i);s--;)n[i++]=t.charCodeAt(r++);if(i<64)break;this._dataLength+=64,_t._md5cycle(this._state,o),i=0;}return this._bufferLength=i,this}appendByteArray(t){const n=this._buffer8,o=this._buffer32;let i=this._bufferLength,s,r=0;for(;;){for(s=Math.min(t.length-r,64-i);s--;)n[i++]=t[r++];if(i<64)break;this._dataLength+=64,_t._md5cycle(this._state,o),i=0;}return this._bufferLength=i,this}getState(){const t=this._state;return {buffer:String.fromCharCode.apply(null,Array.from(this._buffer8)),buflen:this._bufferLength,length:this._dataLength,state:[t[0],t[1],t[2],t[3]]}}setState(t){const n=t.buffer,o=t.state,i=this._state;let s;for(this._dataLength=t.length,this._bufferLength=t.buflen,i[0]=o[0],i[1]=o[1],i[2]=o[2],i[3]=o[3],s=0;s<n.length;s+=1)this._buffer8[s]=n.charCodeAt(s);}end(t=false){const n=this._bufferLength,o=this._buffer8,i=this._buffer32,s=(n>>2)+1;this._dataLength+=n;const r=this._dataLength*8;if(o[n]=128,o[n+1]=o[n+2]=o[n+3]=0,i.set(_t.buffer32Identity.subarray(s),s),n>55&&(_t._md5cycle(this._state,i),i.set(_t.buffer32Identity)),r<=4294967295)i[14]=r;else {const a=r.toString(16).match(/(.*?)(.{0,8})$/);if(a===null)return;const l=parseInt(a[2],16),c=parseInt(a[1],16)||0;i[14]=l,i[15]=c;}return _t._md5cycle(this._state,i),t?this._state:_t._hex(this._state)}}_t.stateIdentity=new Int32Array([1732584193,-271733879,-1732584194,271733878]);_t.buffer32Identity=new Int32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);_t.hexChars="0123456789abcdef";_t.hexOut=[];_t.onePassHasher=new _t;if(_t.hashStr("hello")!=="5d41402abc4b2a76b9719d911017c592")throw new Error("Md5 self test failed.");var Wl={exports:{}},Df;function hk(){return Df||(Df=1,(function(e){var t=(function(n){var o=1e7,i=7,s=9007199254740992,r=m(s),a="0123456789abcdefghijklmnopqrstuvwxyz",l=typeof BigInt=="function";function c(h,b,C,A){return typeof h>"u"?c[0]:typeof b<"u"?+b==10&&!C?ne(h):G(h,b,C,A):ne(h)}function u(h,b){this.value=h,this.sign=b,this.isSmall=false;}u.prototype=Object.create(c.prototype);function f(h){this.value=h,this.sign=h<0,this.isSmall=true;}f.prototype=Object.create(c.prototype);function p(h){this.value=h;}p.prototype=Object.create(c.prototype);function w(h){return -s<h&&h<s}function m(h){return h<1e7?[h]:h<1e14?[h%1e7,Math.floor(h/1e7)]:[h%1e7,Math.floor(h/1e7)%1e7,Math.floor(h/1e14)]}function y(h){v(h);var b=h.length;if(b<4&&dt(h,r)<0)switch(b){case 0:return 0;case 1:return h[0];case 2:return h[0]+h[1]*o;default:return h[0]+(h[1]+h[2]*o)*o}return h}function v(h){for(var b=h.length;h[--b]===0;);h.length=b+1;}function E(h){for(var b=new Array(h),C=-1;++C<h;)b[C]=0;return b}function L(h){return h>0?Math.floor(h):Math.ceil(h)}function P(h,b){var C=h.length,A=b.length,R=new Array(C),M=0,K=o,J,re;for(re=0;re<A;re++)J=h[re]+b[re]+M,M=J>=K?1:0,R[re]=J-M*K;for(;re<C;)J=h[re]+M,M=J===K?1:0,R[re++]=J-M*K;return M>0&&R.push(M),R}function D(h,b){return h.length>=b.length?P(h,b):P(b,h)}function O(h,b){var C=h.length,A=new Array(C),R=o,M,K;for(K=0;K<C;K++)M=h[K]-R+b,b=Math.floor(M/R),A[K]=M-b*R,b+=1;for(;b>0;)A[K++]=b%R,b=Math.floor(b/R);return A}u.prototype.add=function(h){var b=ne(h);if(this.sign!==b.sign)return this.subtract(b.negate());var C=this.value,A=b.value;return b.isSmall?new u(O(C,Math.abs(A)),this.sign):new u(D(C,A),this.sign)},u.prototype.plus=u.prototype.add,f.prototype.add=function(h){var b=ne(h),C=this.value;if(C<0!==b.sign)return this.subtract(b.negate());var A=b.value;if(b.isSmall){if(w(C+A))return new f(C+A);A=m(Math.abs(A));}return new u(O(A,Math.abs(C)),C<0)},f.prototype.plus=f.prototype.add,p.prototype.add=function(h){return new p(this.value+ne(h).value)},p.prototype.plus=p.prototype.add;function W(h,b){var C=h.length,A=b.length,R=new Array(C),M=0,K=o,J,re;for(J=0;J<A;J++)re=h[J]-M-b[J],re<0?(re+=K,M=1):M=0,R[J]=re;for(J=A;J<C;J++){if(re=h[J]-M,re<0)re+=K;else {R[J++]=re;break}R[J]=re;}for(;J<C;J++)R[J]=h[J];return v(R),R}function z(h,b,C){var A;return dt(h,b)>=0?A=W(h,b):(A=W(b,h),C=!C),A=y(A),typeof A=="number"?(C&&(A=-A),new f(A)):new u(A,C)}function ue(h,b,C){var A=h.length,R=new Array(A),M=-b,K=o,J,re;for(J=0;J<A;J++)re=h[J]+M,M=Math.floor(re/K),re%=K,R[J]=re<0?re+K:re;return R=y(R),typeof R=="number"?(C&&(R=-R),new f(R)):new u(R,C)}u.prototype.subtract=function(h){var b=ne(h);if(this.sign!==b.sign)return this.add(b.negate());var C=this.value,A=b.value;return b.isSmall?ue(C,Math.abs(A),this.sign):z(C,A,this.sign)},u.prototype.minus=u.prototype.subtract,f.prototype.subtract=function(h){var b=ne(h),C=this.value;if(C<0!==b.sign)return this.add(b.negate());var A=b.value;return b.isSmall?new f(C-A):ue(A,Math.abs(C),C>=0)},f.prototype.minus=f.prototype.subtract,p.prototype.subtract=function(h){return new p(this.value-ne(h).value)},p.prototype.minus=p.prototype.subtract,u.prototype.negate=function(){return new u(this.value,!this.sign)},f.prototype.negate=function(){var h=this.sign,b=new f(-this.value);return b.sign=!h,b},p.prototype.negate=function(){return new p(-this.value)},u.prototype.abs=function(){return new u(this.value,false)},f.prototype.abs=function(){return new f(Math.abs(this.value))},p.prototype.abs=function(){return new p(this.value>=0?this.value:-this.value)};function me(h,b){var C=h.length,A=b.length,R=C+A,M=E(R),K=o,J,re,be,Me,Be;for(be=0;be<C;++be){Me=h[be];for(var We=0;We<A;++We)Be=b[We],J=Me*Be+M[be+We],re=Math.floor(J/K),M[be+We]=J-re*K,M[be+We+1]+=re;}return v(M),M}function ie(h,b){var C=h.length,A=new Array(C),R=o,M=0,K,J;for(J=0;J<C;J++)K=h[J]*b+M,M=Math.floor(K/R),A[J]=K-M*R;for(;M>0;)A[J++]=M%R,M=Math.floor(M/R);return A}function F(h,b){for(var C=[];b-- >0;)C.push(0);return C.concat(h)}function U(h,b){var C=Math.max(h.length,b.length);if(C<=30)return me(h,b);C=Math.ceil(C/2);var A=h.slice(C),R=h.slice(0,C),M=b.slice(C),K=b.slice(0,C),J=U(R,K),re=U(A,M),be=U(D(R,A),D(K,M)),Me=D(D(J,F(W(W(be,J),re),C)),F(re,2*C));return v(Me),Me}function Q(h,b){return -0.012*h-.012*b+15e-6*h*b>0}u.prototype.multiply=function(h){var b=ne(h),C=this.value,A=b.value,R=this.sign!==b.sign,M;if(b.isSmall){if(A===0)return c[0];if(A===1)return this;if(A===-1)return this.negate();if(M=Math.abs(A),M<o)return new u(ie(C,M),R);A=m(M);}return Q(C.length,A.length)?new u(U(C,A),R):new u(me(C,A),R)},u.prototype.times=u.prototype.multiply;function le(h,b,C){return h<o?new u(ie(b,h),C):new u(me(b,m(h)),C)}f.prototype._multiplyBySmall=function(h){return w(h.value*this.value)?new f(h.value*this.value):le(Math.abs(h.value),m(Math.abs(this.value)),this.sign!==h.sign)},u.prototype._multiplyBySmall=function(h){return h.value===0?c[0]:h.value===1?this:h.value===-1?this.negate():le(Math.abs(h.value),this.value,this.sign!==h.sign)},f.prototype.multiply=function(h){return ne(h)._multiplyBySmall(this)},f.prototype.times=f.prototype.multiply,p.prototype.multiply=function(h){return new p(this.value*ne(h).value)},p.prototype.times=p.prototype.multiply;function ve(h){var b=h.length,C=E(b+b),A=o,R,M,K,J,re;for(K=0;K<b;K++){J=h[K],M=0-J*J;for(var be=K;be<b;be++)re=h[be],R=2*(J*re)+C[K+be]+M,M=Math.floor(R/A),C[K+be]=R-M*A;C[K+b]=M;}return v(C),C}u.prototype.square=function(){return new u(ve(this.value),false)},f.prototype.square=function(){var h=this.value*this.value;return w(h)?new f(h):new u(ve(m(Math.abs(this.value))),false)},p.prototype.square=function(h){return new p(this.value*this.value)};function ke(h,b){var C=h.length,A=b.length,R=o,M=E(b.length),K=b[A-1],J=Math.ceil(R/(2*K)),re=ie(h,J),be=ie(b,J),Me,Be,We,dn,Zt,_l,Cl;for(re.length<=C&&re.push(0),be.push(0),K=be[A-1],Be=C-A;Be>=0;Be--){for(Me=R-1,re[Be+A]!==K&&(Me=Math.floor((re[Be+A]*R+re[Be+A-1])/K)),We=0,dn=0,_l=be.length,Zt=0;Zt<_l;Zt++)We+=Me*be[Zt],Cl=Math.floor(We/R),dn+=re[Be+Zt]-(We-Cl*R),We=Cl,dn<0?(re[Be+Zt]=dn+R,dn=-1):(re[Be+Zt]=dn,dn=0);for(;dn!==0;){for(Me-=1,We=0,Zt=0;Zt<_l;Zt++)We+=re[Be+Zt]-R+be[Zt],We<0?(re[Be+Zt]=We+R,We=0):(re[Be+Zt]=We,We=1);dn+=We;}M[Be]=Me;}return re=Se(re,J)[0],[y(M),y(re)]}function _e(h,b){for(var C=h.length,A=b.length,R=[],M=[],K=o,J,re,be,Me,Be;C;){if(M.unshift(h[--C]),v(M),dt(M,b)<0){R.push(0);continue}re=M.length,be=M[re-1]*K+M[re-2],Me=b[A-1]*K+b[A-2],re>A&&(be=(be+1)*K),J=Math.ceil(be/Me);do{if(Be=ie(b,J),dt(Be,M)<=0)break;J--;}while(J);R.push(J),M=W(M,Be);}return R.reverse(),[y(R),y(M)]}function Se(h,b){var C=h.length,A=E(C),R=o,M,K,J,re;for(J=0,M=C-1;M>=0;--M)re=J*R+h[M],K=L(re/b),J=re-K*b,A[M]=K|0;return [A,J|0]}function Ne(h,b){var C,A=ne(b);if(l)return [new p(h.value/A.value),new p(h.value%A.value)];var R=h.value,M=A.value,K;if(M===0)throw new Error("Cannot divide by zero");if(h.isSmall)return A.isSmall?[new f(L(R/M)),new f(R%M)]:[c[0],h];if(A.isSmall){if(M===1)return [h,c[0]];if(M==-1)return [h.negate(),c[0]];var J=Math.abs(M);if(J<o){C=Se(R,J),K=y(C[0]);var re=C[1];return h.sign&&(re=-re),typeof K=="number"?(h.sign!==A.sign&&(K=-K),[new f(K),new f(re)]):[new u(K,h.sign!==A.sign),new f(re)]}M=m(J);}var be=dt(R,M);if(be===-1)return [c[0],h];if(be===0)return [c[h.sign===A.sign?1:-1],c[0]];R.length+M.length<=200?C=ke(R,M):C=_e(R,M),K=C[0];var Me=h.sign!==A.sign,Be=C[1],We=h.sign;return typeof K=="number"?(Me&&(K=-K),K=new f(K)):K=new u(K,Me),typeof Be=="number"?(We&&(Be=-Be),Be=new f(Be)):Be=new u(Be,We),[K,Be]}u.prototype.divmod=function(h){var b=Ne(this,h);return {quotient:b[0],remainder:b[1]}},p.prototype.divmod=f.prototype.divmod=u.prototype.divmod,u.prototype.divide=function(h){return Ne(this,h)[0]},p.prototype.over=p.prototype.divide=function(h){return new p(this.value/ne(h).value)},f.prototype.over=f.prototype.divide=u.prototype.over=u.prototype.divide,u.prototype.mod=function(h){return Ne(this,h)[1]},p.prototype.mod=p.prototype.remainder=function(h){return new p(this.value%ne(h).value)},f.prototype.remainder=f.prototype.mod=u.prototype.remainder=u.prototype.mod,u.prototype.pow=function(h){var b=ne(h),C=this.value,A=b.value,R,M,K;if(A===0)return c[1];if(C===0)return c[0];if(C===1)return c[1];if(C===-1)return b.isEven()?c[1]:c[-1];if(b.sign)return c[0];if(!b.isSmall)throw new Error("The exponent "+b.toString()+" is too large.");if(this.isSmall&&w(R=Math.pow(C,A)))return new f(L(R));for(M=this,K=c[1];A&true&&(K=K.times(M),--A),A!==0;)A/=2,M=M.square();return K},f.prototype.pow=u.prototype.pow,p.prototype.pow=function(h){var b=ne(h),C=this.value,A=b.value,R=BigInt(0),M=BigInt(1),K=BigInt(2);if(A===R)return c[1];if(C===R)return c[0];if(C===M)return c[1];if(C===BigInt(-1))return b.isEven()?c[1]:c[-1];if(b.isNegative())return new p(R);for(var J=this,re=c[1];(A&M)===M&&(re=re.times(J),--A),A!==R;)A/=K,J=J.square();return re},u.prototype.modPow=function(h,b){if(h=ne(h),b=ne(b),b.isZero())throw new Error("Cannot take modPow with modulus 0");var C=c[1],A=this.mod(b);for(h.isNegative()&&(h=h.multiply(c[-1]),A=A.modInv(b));h.isPositive();){if(A.isZero())return c[0];h.isOdd()&&(C=C.multiply(A).mod(b)),h=h.divide(2),A=A.square().mod(b);}return C},p.prototype.modPow=f.prototype.modPow=u.prototype.modPow;function dt(h,b){if(h.length!==b.length)return h.length>b.length?1:-1;for(var C=h.length-1;C>=0;C--)if(h[C]!==b[C])return h[C]>b[C]?1:-1;return 0}u.prototype.compareAbs=function(h){var b=ne(h),C=this.value,A=b.value;return b.isSmall?1:dt(C,A)},f.prototype.compareAbs=function(h){var b=ne(h),C=Math.abs(this.value),A=b.value;return b.isSmall?(A=Math.abs(A),C===A?0:C>A?1:-1):-1},p.prototype.compareAbs=function(h){var b=this.value,C=ne(h).value;return b=b>=0?b:-b,C=C>=0?C:-C,b===C?0:b>C?1:-1},u.prototype.compare=function(h){if(h===1/0)return -1;if(h===-1/0)return 1;var b=ne(h),C=this.value,A=b.value;return this.sign!==b.sign?b.sign?1:-1:b.isSmall?this.sign?-1:1:dt(C,A)*(this.sign?-1:1)},u.prototype.compareTo=u.prototype.compare,f.prototype.compare=function(h){if(h===1/0)return -1;if(h===-1/0)return 1;var b=ne(h),C=this.value,A=b.value;return b.isSmall?C==A?0:C>A?1:-1:C<0!==b.sign?C<0?-1:1:C<0?1:-1},f.prototype.compareTo=f.prototype.compare,p.prototype.compare=function(h){if(h===1/0)return -1;if(h===-1/0)return 1;var b=this.value,C=ne(h).value;return b===C?0:b>C?1:-1},p.prototype.compareTo=p.prototype.compare,u.prototype.equals=function(h){return this.compare(h)===0},p.prototype.eq=p.prototype.equals=f.prototype.eq=f.prototype.equals=u.prototype.eq=u.prototype.equals,u.prototype.notEquals=function(h){return this.compare(h)!==0},p.prototype.neq=p.prototype.notEquals=f.prototype.neq=f.prototype.notEquals=u.prototype.neq=u.prototype.notEquals,u.prototype.greater=function(h){return this.compare(h)>0},p.prototype.gt=p.prototype.greater=f.prototype.gt=f.prototype.greater=u.prototype.gt=u.prototype.greater,u.prototype.lesser=function(h){return this.compare(h)<0},p.prototype.lt=p.prototype.lesser=f.prototype.lt=f.prototype.lesser=u.prototype.lt=u.prototype.lesser,u.prototype.greaterOrEquals=function(h){return this.compare(h)>=0},p.prototype.geq=p.prototype.greaterOrEquals=f.prototype.geq=f.prototype.greaterOrEquals=u.prototype.geq=u.prototype.greaterOrEquals,u.prototype.lesserOrEquals=function(h){return this.compare(h)<=0},p.prototype.leq=p.prototype.lesserOrEquals=f.prototype.leq=f.prototype.lesserOrEquals=u.prototype.leq=u.prototype.lesserOrEquals,u.prototype.isEven=function(){return (this.value[0]&1)===0},f.prototype.isEven=function(){return (this.value&1)===0},p.prototype.isEven=function(){return (this.value&BigInt(1))===BigInt(0)},u.prototype.isOdd=function(){return (this.value[0]&1)===1},f.prototype.isOdd=function(){return (this.value&1)===1},p.prototype.isOdd=function(){return (this.value&BigInt(1))===BigInt(1)},u.prototype.isPositive=function(){return !this.sign},f.prototype.isPositive=function(){return this.value>0},p.prototype.isPositive=f.prototype.isPositive,u.prototype.isNegative=function(){return this.sign},f.prototype.isNegative=function(){return this.value<0},p.prototype.isNegative=f.prototype.isNegative,u.prototype.isUnit=function(){return false},f.prototype.isUnit=function(){return Math.abs(this.value)===1},p.prototype.isUnit=function(){return this.abs().value===BigInt(1)},u.prototype.isZero=function(){return false},f.prototype.isZero=function(){return this.value===0},p.prototype.isZero=function(){return this.value===BigInt(0)},u.prototype.isDivisibleBy=function(h){var b=ne(h);return b.isZero()?false:b.isUnit()?true:b.compareAbs(2)===0?this.isEven():this.mod(b).isZero()},p.prototype.isDivisibleBy=f.prototype.isDivisibleBy=u.prototype.isDivisibleBy;function we(h){var b=h.abs();if(b.isUnit())return false;if(b.equals(2)||b.equals(3)||b.equals(5))return true;if(b.isEven()||b.isDivisibleBy(3)||b.isDivisibleBy(5))return false;if(b.lesser(49))return true}function T(h,b){for(var C=h.prev(),A=C,R=0,M,K,J;A.isEven();)A=A.divide(2),R++;e:for(K=0;K<b.length;K++)if(!h.lesser(b[K])&&(J=t(b[K]).modPow(A,h),!(J.isUnit()||J.equals(C)))){for(M=R-1;M!=0;M--){if(J=J.square().mod(h),J.isUnit())return false;if(J.equals(C))continue e}return false}return true}u.prototype.isPrime=function(h){var b=we(this);if(b!==n)return b;var C=this.abs(),A=C.bitLength();if(A<=64)return T(C,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var R=Math.log(2)*A.toJSNumber(),M=Math.ceil(h===true?2*Math.pow(R,2):R),K=[],J=0;J<M;J++)K.push(t(J+2));return T(C,K)},p.prototype.isPrime=f.prototype.isPrime=u.prototype.isPrime,u.prototype.isProbablePrime=function(h,b){var C=we(this);if(C!==n)return C;for(var A=this.abs(),R=h===n?5:h,M=[],K=0;K<R;K++)M.push(t.randBetween(2,A.minus(2),b));return T(A,M)},p.prototype.isProbablePrime=f.prototype.isProbablePrime=u.prototype.isProbablePrime,u.prototype.modInv=function(h){for(var b=t.zero,C=t.one,A=ne(h),R=this.abs(),M,K,J;!R.isZero();)M=A.divide(R),K=b,J=A,b=C,A=R,C=K.subtract(M.multiply(C)),R=J.subtract(M.multiply(R));if(!A.isUnit())throw new Error(this.toString()+" and "+h.toString()+" are not co-prime");return b.compare(0)===-1&&(b=b.add(h)),this.isNegative()?b.negate():b},p.prototype.modInv=f.prototype.modInv=u.prototype.modInv,u.prototype.next=function(){var h=this.value;return this.sign?ue(h,1,this.sign):new u(O(h,1),this.sign)},f.prototype.next=function(){var h=this.value;return h+1<s?new f(h+1):new u(r,false)},p.prototype.next=function(){return new p(this.value+BigInt(1))},u.prototype.prev=function(){var h=this.value;return this.sign?new u(O(h,1),true):ue(h,1,this.sign)},f.prototype.prev=function(){var h=this.value;return h-1>-s?new f(h-1):new u(r,true)},p.prototype.prev=function(){return new p(this.value-BigInt(1))};for(var pe=[1];2*pe[pe.length-1]<=o;)pe.push(2*pe[pe.length-1]);var it=pe.length,ft=pe[it-1];function cn(h){return Math.abs(h)<=o}u.prototype.shiftLeft=function(h){var b=ne(h).toJSNumber();if(!cn(b))throw new Error(String(b)+" is too large for shifting.");if(b<0)return this.shiftRight(-b);var C=this;if(C.isZero())return C;for(;b>=it;)C=C.multiply(ft),b-=it-1;return C.multiply(pe[b])},p.prototype.shiftLeft=f.prototype.shiftLeft=u.prototype.shiftLeft,u.prototype.shiftRight=function(h){var b,C=ne(h).toJSNumber();if(!cn(C))throw new Error(String(C)+" is too large for shifting.");if(C<0)return this.shiftLeft(-C);for(var A=this;C>=it;){if(A.isZero()||A.isNegative()&&A.isUnit())return A;b=Ne(A,ft),A=b[1].isNegative()?b[0].prev():b[0],C-=it-1;}return b=Ne(A,pe[C]),b[1].isNegative()?b[0].prev():b[0]},p.prototype.shiftRight=f.prototype.shiftRight=u.prototype.shiftRight;function Xt(h,b,C){b=ne(b);for(var A=h.isNegative(),R=b.isNegative(),M=A?h.not():h,K=R?b.not():b,J=0,re=0,be=null,Me=null,Be=[];!M.isZero()||!K.isZero();)be=Ne(M,ft),J=be[1].toJSNumber(),A&&(J=ft-1-J),Me=Ne(K,ft),re=Me[1].toJSNumber(),R&&(re=ft-1-re),M=be[0],K=Me[0],Be.push(C(J,re));for(var We=C(A?1:0,R?1:0)!==0?t(-1):t(0),dn=Be.length-1;dn>=0;dn-=1)We=We.multiply(ft).add(t(Be[dn]));return We}u.prototype.not=function(){return this.negate().prev()},p.prototype.not=f.prototype.not=u.prototype.not,u.prototype.and=function(h){return Xt(this,h,function(b,C){return b&C})},p.prototype.and=f.prototype.and=u.prototype.and,u.prototype.or=function(h){return Xt(this,h,function(b,C){return b|C})},p.prototype.or=f.prototype.or=u.prototype.or,u.prototype.xor=function(h){return Xt(this,h,function(b,C){return b^C})},p.prototype.xor=f.prototype.xor=u.prototype.xor;var ao=1<<30,Ai=(o&-o)*(o&-o)|ao;function xn(h){var b=h.value,C=typeof b=="number"?b|ao:typeof b=="bigint"?b|BigInt(ao):b[0]+b[1]*o|Ai;return C&-C}function Z(h,b){if(b.compareTo(h)<=0){var C=Z(h,b.square(b)),A=C.p,R=C.e,M=A.multiply(b);return M.compareTo(h)<=0?{p:M,e:R*2+1}:{p:A,e:R*2}}return {p:t(1),e:0}}u.prototype.bitLength=function(){var h=this;return h.compareTo(t(0))<0&&(h=h.negate().subtract(t(1))),h.compareTo(t(0))===0?t(0):t(Z(h,t(2)).e).add(t(1))},p.prototype.bitLength=f.prototype.bitLength=u.prototype.bitLength;function g(h,b){return h=ne(h),b=ne(b),h.greater(b)?h:b}function x(h,b){return h=ne(h),b=ne(b),h.lesser(b)?h:b}function k(h,b){if(h=ne(h).abs(),b=ne(b).abs(),h.equals(b))return h;if(h.isZero())return b;if(b.isZero())return h;for(var C=c[1],A,R;h.isEven()&&b.isEven();)A=x(xn(h),xn(b)),h=h.divide(A),b=b.divide(A),C=C.multiply(A);for(;h.isEven();)h=h.divide(xn(h));do{for(;b.isEven();)b=b.divide(xn(b));h.greater(b)&&(R=b,b=h,h=R),b=b.subtract(h);}while(!b.isZero());return C.isUnit()?h:h.multiply(C)}function X(h,b){return h=ne(h).abs(),b=ne(b).abs(),h.divide(k(h,b)).multiply(b)}function N(h,b,C){h=ne(h),b=ne(b);var A=C||Math.random,R=x(h,b),M=g(h,b),K=M.subtract(R).add(1);if(K.isSmall)return R.add(Math.floor(A()*K));for(var J=ae(K,o).value,re=[],be=true,Me=0;Me<J.length;Me++){var Be=be?J[Me]+(Me+1<J.length?J[Me+1]/o:0):o,We=L(A()*Be);re.push(We),We<J[Me]&&(be=false);}return R.add(c.fromArray(re,o,false))}var G=function(h,b,C,A){C=C||a,h=String(h),A||(h=h.toLowerCase(),C=C.toLowerCase());var R=h.length,M,K=Math.abs(b),J={};for(M=0;M<C.length;M++)J[C[M]]=M;for(M=0;M<R;M++){var re=h[M];if(re!=="-"&&re in J&&J[re]>=K){if(re==="1"&&K===1)continue;throw new Error(re+" is not a valid digit in base "+b+".")}}b=ne(b);var be=[],Me=h[0]==="-";for(M=Me?1:0;M<h.length;M++){var re=h[M];if(re in J)be.push(ne(J[re]));else if(re==="<"){var Be=M;do M++;while(h[M]!==">"&&M<h.length);be.push(ne(h.slice(Be+1,M)));}else throw new Error(re+" is not a valid character")}return de(be,b,Me)};function de(h,b,C){var A=c[0],R=c[1],M;for(M=h.length-1;M>=0;M--)A=A.add(h[M].times(R)),R=R.times(b);return C?A.negate():A}function ce(h,b){return b=b||a,h<b.length?b[h]:"<"+h+">"}function ae(h,b){if(b=t(b),b.isZero()){if(h.isZero())return {value:[0],isNegative:false};throw new Error("Cannot convert nonzero numbers to base 0.")}if(b.equals(-1)){if(h.isZero())return {value:[0],isNegative:false};if(h.isNegative())return {value:[].concat.apply([],Array.apply(null,Array(-h.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:false};var C=Array.apply(null,Array(h.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return C.unshift([1]),{value:[].concat.apply([],C),isNegative:false}}var A=false;if(h.isNegative()&&b.isPositive()&&(A=true,h=h.abs()),b.isUnit())return h.isZero()?{value:[0],isNegative:false}:{value:Array.apply(null,Array(h.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:A};for(var R=[],M=h,K;M.isNegative()||M.compareAbs(b)>=0;){K=M.divmod(b),M=K.quotient;var J=K.remainder;J.isNegative()&&(J=b.minus(J).abs(),M=M.next()),R.push(J.toJSNumber());}return R.push(M.toJSNumber()),{value:R.reverse(),isNegative:A}}function se(h,b,C){var A=ae(h,b);return (A.isNegative?"-":"")+A.value.map(function(R){return ce(R,C)}).join("")}u.prototype.toArray=function(h){return ae(this,h)},f.prototype.toArray=function(h){return ae(this,h)},p.prototype.toArray=function(h){return ae(this,h)},u.prototype.toString=function(h,b){if(h===n&&(h=10),h!==10||b)return se(this,h,b);for(var C=this.value,A=C.length,R=String(C[--A]),M="0000000",K;--A>=0;)K=String(C[A]),R+=M.slice(K.length)+K;var J=this.sign?"-":"";return J+R},f.prototype.toString=function(h,b){return h===n&&(h=10),h!=10||b?se(this,h,b):String(this.value)},p.prototype.toString=f.prototype.toString,p.prototype.toJSON=u.prototype.toJSON=f.prototype.toJSON=function(){return this.toString()},u.prototype.valueOf=function(){return parseInt(this.toString(),10)},u.prototype.toJSNumber=u.prototype.valueOf,f.prototype.valueOf=function(){return this.value},f.prototype.toJSNumber=f.prototype.valueOf,p.prototype.valueOf=p.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function Ce(h){if(w(+h)){var b=+h;if(b===L(b))return l?new p(BigInt(b)):new f(b);throw new Error("Invalid integer: "+h)}var C=h[0]==="-";C&&(h=h.slice(1));var A=h.split(/e/i);if(A.length>2)throw new Error("Invalid integer: "+A.join("e"));if(A.length===2){var R=A[1];if(R[0]==="+"&&(R=R.slice(1)),R=+R,R!==L(R)||!w(R))throw new Error("Invalid integer: "+R+" is not a valid exponent.");var M=A[0],K=M.indexOf(".");if(K>=0&&(R-=M.length-K-1,M=M.slice(0,K)+M.slice(K+1)),R<0)throw new Error("Cannot include negative exponent part for integers");M+=new Array(R+1).join("0"),h=M;}var J=/^([0-9][0-9]*)$/.test(h);if(!J)throw new Error("Invalid integer: "+h);if(l)return new p(BigInt(C?"-"+h:h));for(var re=[],be=h.length,Me=i,Be=be-Me;be>0;)re.push(+h.slice(Be,be)),Be-=Me,Be<0&&(Be=0),be-=Me;return v(re),new u(re,C)}function he(h){if(l)return new p(BigInt(h));if(w(h)){if(h!==L(h))throw new Error(h+" is not an integer.");return new f(h)}return Ce(h.toString())}function ne(h){return typeof h=="number"?he(h):typeof h=="string"?Ce(h):typeof h=="bigint"?new p(h):h}for(var Ae=0;Ae<1e3;Ae++)c[Ae]=ne(Ae),Ae>0&&(c[-Ae]=ne(-Ae));return c.one=c[1],c.zero=c[0],c.minusOne=c[-1],c.max=g,c.min=x,c.gcd=k,c.lcm=X,c.isInstance=function(h){return h instanceof u||h instanceof f||h instanceof p},c.randBetween=N,c.fromArray=function(h,b,C){return de(h.map(ne),ne(b||10),C)},c})();e.hasOwnProperty("exports")&&(e.exports=t);})(Wl)),Wl.exports}var mk=hk();const Pr=Cm(mk);class gk{n;e;constructor(){this.n=Pr("8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683",16),this.e=Pr("10001",16);}a2hex(t){let n="",o;for(let i=0;i<t.length;i++)o=t[i].toString(16),o.length<2&&(o="0"+o),n+=o;return n}hex2a(t){let n="";for(let o=0;o<t.length;o+=2)n+=String.fromCharCode(parseInt(t.substr(o,2),16));return n}pkcs1pad2(t,n){if(n<t.length+11)return null;let o=[],i=t.length-1;for(;i>=0&&n>0;)o[--n]=t.charCodeAt(i--);for(o[--n]=0;n>2;)o[--n]=255;o[--n]=2,o[--n]=0;let s=this.a2hex(o);return Pr(s,16)}pkcs1unpad2(t){let n=t.toString(16);n.length%2!==0&&(n="0"+n);let o=this.hex2a(n),i=1;for(;o.charCodeAt(i)!==0;)i++;return o.slice(i+1)}encrypt(t){let i=this.pkcs1pad2(t,128)?.modPow(this.e,this.n)?.toString(16)||"";for(;i.length<256;)i="0"+i;return i}decrypt(t){const n=[];let o=0;for(;o<t.length;)n[o]=t.charCodeAt(o),o+=1;const s=Pr(this.a2hex(n),16).modPow(this.e,this.n);return this.pkcs1unpad2(s)}}class wk{rsa;kts;keyS;keyL;constructor(){this.rsa=new gk,this.kts=[240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245],this.keyS=[41,35,33,94],this.keyL=[120,6,173,76,51,134,93,24,76,1,63,70];}xor115Enc(t,n,o,i){let s,r,a,l,c,u,f,p;if(l=n%4,p=[],l!==0)for(s=r=0,c=l;c>=0?r<c:r>c;s=c>=0?++r:--r)p.push(t[s]^o[s%i]);for(s=a=u=l,f=n;u<=f?a<f:a>f;s=u<=f?++a:--a)p.push(t[s]^o[(s-l)%i]);return p}getkey(t,n){let o;return n!=null?(()=>{let i,s,r;for(r=[],o=i=0,s=t;s>=0?i<s:i>s;o=s>=0?++i:--i)r.push(n[o]+this.kts[t*o]&255^this.kts[t*(t-1-o)]);return r})():t===12?this.keyL.slice(0):this.keyS.slice(0)}asymEncode(t,n){let o,i,s,r,a;for(s=117,a="",o=i=0,r=Math.floor((n+s-1)/s);r>=0?i<r:i>r;o=r>=0?++i:--i)a+=this.rsa.encrypt(this.bytesToString(t.slice(o*s,Math.min((o+1)*s,n))));return window.btoa(this.rsa.hex2a(a))}asymDecode(t,n){let o,i,s,r,a;for(s=128,a="",o=i=0,r=Math.floor((n+s-1)/s);r>=0?i<r:i>r;o=r>=0?++i:--i)a+=this.rsa.decrypt(this.bytesToString(t.slice(o*s,Math.min((o+1)*s,n))));return this.stringToBytes(a)}symEncode(t,n,o,i){let s,r,a;return s=this.getkey(4,o),r=this.getkey(12,i),a=this.xor115Enc(t,n,s,4),a.reverse(),a=this.xor115Enc(a,n,r,12),a}symDecode(t,n,o,i){let s,r,a;return s=this.getkey(4,o),r=this.getkey(12,i),a=this.xor115Enc(t,n,r,12),a.reverse(),a=this.xor115Enc(a,n,s,4),a}bytesToString(t){let n,o,i,s;for(s="",o=0,i=t.length;o<i;o++)n=t[o],s+=String.fromCharCode(n);return s}stringToBytes(t){let n,o,i;for(i=[],n=0,o=t.length;n<o;n++)i.push(t.charCodeAt(n));return i}encode(t,n){const o=this.stringToBytes(_t.hashStr(`!@###@#${n}DFDR@#@#`));let i=this.stringToBytes(t);return i=this.symEncode(i,i.length,o,null),i=o.slice(0,16).concat(i),{data:this.asymEncode(i,i.length),key:o}}decode(t,n){let o=this.stringToBytes(window.atob(t));return o=this.asymDecode(o,o.length),this.bytesToString(this.symDecode(o.slice(16),o.length-16,n,o.slice(0,16)))}}async function yk(e){return new Promise((t,n)=>{const o=JSON.stringify({pickcode:e}),i=Math.floor(Date.now()).toString(),s=new wk,{data:r,key:a}=s.encode(o,i);Ia({method:"POST",url:`https://proapi.115.com/app/chrome/downurl?t=${i}`,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","User-Agent":navigator.userAgent,Accept:"application/json, text/javascript, */*; q=0.01"},data:`data=${encodeURIComponent(r)}`,responseType:"json",onload:l=>{const c=JSON.parse(l.responseText);if(c.state){const u=s.decode(c.data,a);if(u){const f=JSON.parse(u),p=Object.keys(f)[0],w=f[p];w.file_id=p;const m=l.responseHeaders.split(/[\r\n]+/).filter(y=>y.match(/set-cookie/i));m.length&&(m.forEach((y,v)=>{m[v]=y.replace(/set-cookie:[\s]*/i,"").split(";")[0];}),w.cookie=m.join("; ")),t(w);}else n({state:false,error:"解密失败"});}else n(c);},onerror:l=>{n(l);}});})}async function bk(e){return (await Ot().get(`https://webapi.115.com/files/get_repeat_sha?file_id=${e}`,{timeout:12e4,withCredentials:true})).data}function vk(e){return `https://115.com/?tab=sha1_repeat&select=1&file_id=${e}&mode=wangpan`}let xk=[];async function Ug(e){if(!ko()||!e.enableInSearch)return;const t=await et("#js_data_list"),n='<a href="javascript:;" menu="{key}" style=""><i class="{icon}" menu="{key}"></i><span menu="{key}">{label}</span></a>',o=(l,c,u)=>n.replace(/\{key\}/g,l).replace(/\{label\}/g,c).replace(/\{icon\}/g,u),i=[{label:"移动",body:o("move","移动","icon-operate ifo-move"),enabled:true},{label:"重命名",body:o("edit_name","重命名","icon-operate ifo-rename"),enabled:true},{label:"删除",body:o("delete","删除","icon-operate ifo-remove"),enabled:true},{label:"属性",body:o("attribute","属性","icon-operate ifo-property"),enabled:true}],s=l=>{let c="";for(const u of l)u.enabled&&(c+=u.body);return c},r=()=>{const l="ce-menu-init",c=document.querySelectorAll(`li[rel="item"]:not(.${l})`),u=s(i);for(let f=0;f<c.length;f++){const p=c[f];if(p.querySelector(".file-opr"))continue;const w=ze('<div class="file-opr" rel="menu"></div>');w.innerHTML=u,p.classList.add(l),p.appendChild(w);}};r(),new MutationObserver(async([l])=>{l.type==="childList"&&r();}).observe(t,{childList:true});}async function _k(){const e=await ut(),t=await sd(e);return new gr({key:"_play_with_x_d",label:t.defaultPlayer.label,icon:t.defaultPlayer?.icon||"",injectDecider:hb,title:t.defaultPlayer.memo,onClick:async(n,o)=>{t.noRealDefault||Fg(t.defaultPlayer,e,n,o);},subItems:[...await dk(as,t.customUrlItems)]})}function rs(e){const t=$(e.target).closest("li"),n=mn(t);return !n||!n.id?(Y({text:"无法获取当前文件信息",timer:1200}),null):n}async function Ck(e){const t=[...(await ur()).filter(o=>o.enabled),...xk.filter(o=>o.enabled),...(await ki(to.search)).filter(o=>o.enabled)];let n=t.find(o=>o.key===e.defaultSearch);return n||(n=t.find(o=>o.key===cr)),new gr({key:"_search_with_name_d",label:"搜索",icon:n?.icon||"",title:Bg(e,n?.memo||"使用名称搜索"),onClick:async(o,i)=>{i.stopPropagation(),i.preventDefault(),n&&await hr(o,n,i,e,void 0,Ie.listItemHover);},subItems:[...await ol(as,t)]})}async function kk(){return new as({key:"_lh_view_in_clouddrive",label:"在CloudDrive中查看",icon:"icon-operate ifo-exportdir",title:"在CloudDrive2 Web页面中查看",onClick:async(e,t)=>{t.stopPropagation(),t.preventDefault();const n=rs(t);n&&await ma(n);}})}async function Sk(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Ir("完整名称",ht.full)),t.copyPureName&&n.push(await Ir("不含后缀名称",ht.pure)),t.copyId&&n.push(await Ir("ID",ht.id)),t.copyPickCode&&n.push(await Ir("PickCode",ht.pickCode)),t.copySha1&&n.push(await Lf(false)),t.copySha1WithName&&n.push(await Lf(true)),t.copyUnixPath&&n.push(await Dr("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await Dr("路径(Windows)",Mn.winPath)),t.copyParentUnixPath&&n.push(await Dr("上级路径(Unix)",Mn.unixParentPath)),t.copyParentWinPath&&n.push(await Dr("上级路径(Windows)",Mn.winParentPath)),t.viewInCloudDrive&&n.push(await kk()),new gr({key:"_lh_copy_name_path",label:"名称路径",title:"复制文件名称路径",onClick:async(o,i)=>{},subItems:n})}async function Lf(e=true){return new as({key:"_lh_copy_sha1",label:"文件sha1"+(e?"(带文件名)":""),icon:"icon-operate ifo-copy",title:"复制文件sha1"+(e?"。格式为 xxx//yyy,xxx为sha1,yyy为文件名":""),onClick:async(t,n)=>{n.stopPropagation(),n.preventDefault();const o=rs(n);if(!o)return;if(o.isDir){Y({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const i=o.hash+(e?`//${o.name}`:"");gt(i),Y({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function Ir(e,t){return new as({key:`_lh_copy_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制${e}`,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const i=rs(o);if(!i)return;const s=await ut(),r=await Qt(),l=mr([i],t,c=>s.cloudDriveFormalization?un(r,c):c);gt(l.join(`
`)),Y({title:`复制${e}`,text:`已复制选中文件信息,复制类型:${e},CloudDrive文件名规范: ${s.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function Dr(e,t){return new as({key:`_lh_copy_path_${t}`,label:e,icon:"icon-operate ifo-copy",title:e,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const i=rs(o);if(!i)return;const s=await ut(),r=await Qt();let a=await Va(i);s.cloudDriveFormalization&&(a=a.map(u=>un(r,u,true)),i.name=un(r,i.name,true));let l=a.join("/");const c=await il(i,l,t);gt(c),Y({title:"复制路径",text:`已复制选中路径,复制类型:${e},CloudDrive文件名规范: ${s.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function $k(){return new gr({injectDecider:pb,key:"_open_in_new_tab",label:"新标签页",icon:"",title:"在新标签页打开",onClick:async(e,t)=>{t.stopPropagation(),t.preventDefault();const n=rs(t);if(!n)return;const o=Bn(n.id);window.open(o,"_blank","noopener noreferrer");}})}async function rd(e){te.fire({title:"查找重复文件",html:`正在查找文件:${e.name},请稍候...`,icon:"info",showConfirmButton:false,allowOutsideClick:false}),te.showLoading();try{const t=await bk(e.id);t.state?t.data.length>1?(te.update({html:"查找成功,将打开结果页面",icon:"success",showConfirmButton:!0}),Ms(vk(e.id),{active:!0}),Mt(5e3).then(()=>{te.close();})):te.update({html:"没有重复文件",icon:"warning",showConfirmButton:!0}):te.update({html:`查找失败!${t.code} - ${t.message}`,icon:"error",showConfirmButton:!0});}catch(t){te.update({html:`查找失败!${t.message}`,icon:"error",showConfirmButton:true});}finally{te.hideLoading();}}async function Ek(e){return new gr({injectDecider:fb,key:"_lh_find_repeat",label:"重复文件",icon:"",title:"查找重复文件,找到后会在新标签页中打开处理页面",onClick:async(t,n)=>{n.stopPropagation(),n.preventDefault();const o=rs(n);o&&await rd(o);}})}function Ak(e){return {enabled:true,openInNewTab:true,search:true,play:true,getDownloadUrl:true,copyNames:true,namePathConfig:tr(),findRepeat:false,exportList:false,viewInCloudDrive:true,...e}}class gr extends wn{menuType=Ie.listItemHover;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ta;}}class as extends wn{menuType=Ie.listItemHoverSub}class Pk extends er{menuType=Ie.listItemHover;useObserver=true;observeTarget="#js_data_list";disposeObserverAfterInjection=false;constructor(t){super(t),this.handleLoadAll();}async inject(){const t=document.querySelector("#js_data_list");if(t){const n=t.querySelectorAll(".list-contents > ul:not([ce-done]) > li .file-opr");n.length&&await this.perform(Array.from(n));}super.inject();}async handleLoadAll(){if(window.top===window.self)return;const t=document.querySelector("#js_pagination_box");if(!t){console.warn("[ListItemHoverMenuInjector.handleLoadAll] 未找到「#js_pagination_box」元素");return}function n(o){const i=document.querySelector("#js_data_list .list-contents > ul > li");i&&(i.querySelector(".ce-menu")||o(true));}t.addEventListener("click",async o=>{o.preventDefault(),o.stopPropagation();const i=o.target;let s=false;if((i.getAttribute("menu")==="load_all_file"||i.closest('[menu="load_all_file"]'))&&(s=true),!s)return;console.log("[ListItemHoverMenuInjector.handleLoadAll] 点击了「加载全部」按钮"),await qo(n,500,3e5),document.querySelector("#js_data_list .list-contents > ul")?.removeAttribute("ce-done");const a=document.querySelector("#js_data_list");if(a){const l=".list-contents > ul:not([ce-done]) > li .file-opr";if(!document.querySelector(l)){const u=await ut();await Ug(u);}const c=a.querySelectorAll(l);c.length&&await this.perform(Array.from(c));}});}async perform(t){await super.perform(t),document.querySelector("#js_data_list .list-contents > ul")?.setAttribute("ce-done","");}}var Tu=(e=>(e.background="background",e.active="active",e.undefined="undefined",e))(Tu||{});const Ik={background:"后台打开",active:"激活页面",undefined:"根据菜单定义"};function Dk(e){return {enabled:true,moveToSelfNameDir:true,openInNewTab:true,openParent:true,copyNames:true,namePathConfig:tr(),play:true,search:false,searchOpenType:"background",...e}}class sl extends wn{menuType=Ie.selection;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ta;}}class _o extends wn{menuType=Ie.selectionSub}class Lk extends db{}class Tk extends er{menuType=Ie.selection;useObserver=true;observeTarget="#js_top_panel_box #js_operate_box";disposeObserverAfterInjection=false}function jg(e){return {enabled:false,search:true,copyNames:true,namePathConfig:tr({copyWinPath:false,copyUnixPath:false,copyParentUnixPath:false,copyParentWinPath:false,viewInCloudDrive:false}),...e}}class zg extends wn{menuType=Ie.shareListItemHover;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ta;}}class ad extends wn{menuType=Ie.shareListItemHoverSub}class Mk extends er{menuType=Ie.shareListItemHover;useObserver=true;observeTarget="#js-list";disposeObserverAfterInjection=false;async inject(){const t=document.querySelector("#js-list");if(t){const n=t.querySelectorAll("ul#js-list:not([ce-done]) > li .file-opr");n.length&&await this.perform(Array.from(n));}super.inject();}}var Ie=(e=>(e.listItemHover="listItemHover",e.listItemHoverSub="listItemHoverSub",e.listItemContext="listItemContext",e.listItemContextSub="listItemContextSub",e.selection="selection",e.selectionSub="selectionSub",e.dirContext="dirContext",e.dirContextSub="dirContextSub",e.shareListItemHover="shareListItemHover",e.shareListItemHoverSub="shareListItemHoverSub",e))(Ie||{}),wi=(e=>(e.listItemHover="列表项悬浮菜单",e.listItemHoverSub="列表项悬浮子菜单",e.listItemContext="列表项右键菜单",e.listItemContextSub="列表项右键子菜单",e.selection="选中项菜单",e.selectionSub="选中项子菜单",e.dirContext="当前目录右键菜单",e.dirContextSub="当前目录右键子菜单",e.shareListItemHover="分享列表项悬浮菜单",e.shareListItemHoverSub="分享列表项悬浮子菜单",e))(wi||{}),yo=(e=>(e[e.after=0]="after",e[e.before=1]="before",e))(yo||{}),Gn=(e=>(e.none="none",e.alt="alt",e.ctrl="ctrl",e.shift="shift",e.meta="meta",e))(Gn||{});const Hg=mt.menu;function Ok(e){return {enabled:true,hideSelectionMenuLabel:false,enableInSearch:true,manageOfficialMenus:false,keyToTriggerManual:"none",auxClickTriggerManual:false,injectManualFuncPosition:wm.first,m3u8TempDir:".ce-m3u8-temp",defaultPlayer:mx,defaultSearch:cr,cloudDriveFormalization:false,listItemHover:Ak(e?.listItemHover),listItemContext:wb(e?.listItemContext),selection:Dk(e?.selection),dirContext:mb(e?.dirContext),shareListItemHover:jg(e?.shareListItemHover),...e}}async function ut(){const e=Ok(),t=await Xe.get(Hg,e);return $c(e,t)}async function ga(e){await Xe.set(Hg,e);}const Bk=["top","right","bottom","left"],Tf=["start","end"],Mf=Bk.reduce((e,t)=>e.concat(t,t+"-"+Tf[0],t+"-"+Tf[1]),[]),zs=Math.min,ti=Math.max,Rk={left:"right",right:"left",bottom:"top",top:"bottom"},Fk={start:"end",end:"start"};function Mu(e,t,n){return ti(e,zs(t,n))}function $i(e,t){return typeof e=="function"?e(t):e}function oo(e){return e.split("-")[0]}function Fn(e){return e.split("-")[1]}function Vg(e){return e==="x"?"y":"x"}function ld(e){return e==="y"?"height":"width"}const Nk=new Set(["top","bottom"]);function mo(e){return Nk.has(oo(e))?"y":"x"}function ud(e){return Vg(mo(e))}function qg(e,t,n){n===void 0&&(n=false);const o=Fn(e),i=ud(e),s=ld(i);let r=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=ya(r)),[r,ya(r)]}function Uk(e){const t=ya(e);return [wa(e),t,wa(t)]}function wa(e){return e.replace(/start|end/g,t=>Fk[t])}const Of=["left","right"],Bf=["right","left"],jk=["top","bottom"],zk=["bottom","top"];function Hk(e,t,n){switch(e){case "top":case "bottom":return n?t?Bf:Of:t?Of:Bf;case "left":case "right":return t?jk:zk;default:return []}}function Vk(e,t,n,o){const i=Fn(e);let s=Hk(oo(e),n==="start",o);return i&&(s=s.map(r=>r+"-"+i),t&&(s=s.concat(s.map(wa)))),s}function ya(e){return e.replace(/left|right|bottom|top/g,t=>Rk[t])}function qk(e){return {top:0,right:0,bottom:0,left:0,...e}}function Wg(e){return typeof e!="number"?qk(e):{top:e,right:e,bottom:e,left:e}}function As(e){const{x:t,y:n,width:o,height:i}=e;return {width:o,height:i,top:n,left:t,right:t+o,bottom:n+i,x:t,y:n}}function Rf(e,t,n){let{reference:o,floating:i}=e;const s=mo(t),r=ud(t),a=ld(r),l=oo(t),c=s==="y",u=o.x+o.width/2-i.width/2,f=o.y+o.height/2-i.height/2,p=o[a]/2-i[a]/2;let w;switch(l){case "top":w={x:u,y:o.y-i.height};break;case "bottom":w={x:u,y:o.y+o.height};break;case "right":w={x:o.x+o.width,y:f};break;case "left":w={x:o.x-i.width,y:f};break;default:w={x:o.x,y:o.y};}switch(Fn(t)){case "start":w[r]-=p*(n&&c?-1:1);break;case "end":w[r]+=p*(n&&c?-1:1);break}return w}const Wk=async(e,t,n)=>{const{placement:o="bottom",strategy:i="absolute",middleware:s=[],platform:r}=n,a=s.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let c=await r.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:f}=Rf(c,o,l),p=o,w={},m=0;for(let y=0;y<a.length;y++){const{name:v,fn:E}=a[y],{x:L,y:P,data:D,reset:O}=await E({x:u,y:f,initialPlacement:o,placement:p,strategy:i,middlewareData:w,rects:c,platform:r,elements:{reference:e,floating:t}});u=L??u,f=P??f,w={...w,[v]:{...w[v],...D}},O&&m<=50&&(m++,typeof O=="object"&&(O.placement&&(p=O.placement),O.rects&&(c=O.rects===true?await r.getElementRects({reference:e,floating:t,strategy:i}):O.rects),{x:u,y:f}=Rf(c,p,l)),y=-1);}return {x:u,y:f,placement:p,strategy:i,middlewareData:w}};async function rl(e,t){var n;t===void 0&&(t={});const{x:o,y:i,platform:s,rects:r,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:p=false,padding:w=0}=$i(t,e),m=Wg(w),v=a[p?f==="floating"?"reference":"floating":f],E=As(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(v)))==null||n?v:v.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),L=f==="floating"?{x:o,y:i,width:r.floating.width,height:r.floating.height}:r.reference,P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),D=await(s.isElement==null?void 0:s.isElement(P))?await(s.getScale==null?void 0:s.getScale(P))||{x:1,y:1}:{x:1,y:1},O=As(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:L,offsetParent:P,strategy:l}):L);return {top:(E.top-O.top+m.top)/D.y,bottom:(O.bottom-E.bottom+m.bottom)/D.y,left:(E.left-O.left+m.left)/D.x,right:(O.right-E.right+m.right)/D.x}}const Kk=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:o,placement:i,rects:s,platform:r,elements:a,middlewareData:l}=t,{element:c,padding:u=0}=$i(e,t)||{};if(c==null)return {};const f=Wg(u),p={x:n,y:o},w=ud(i),m=ld(w),y=await r.getDimensions(c),v=w==="y",E=v?"top":"left",L=v?"bottom":"right",P=v?"clientHeight":"clientWidth",D=s.reference[m]+s.reference[w]-p[w]-s.floating[m],O=p[w]-s.reference[w],W=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let z=W?W[P]:0;(!z||!await(r.isElement==null?void 0:r.isElement(W)))&&(z=a.floating[P]||s.floating[m]);const ue=D/2-O/2,me=z/2-y[m]/2-1,ie=zs(f[E],me),F=zs(f[L],me),U=ie,Q=z-y[m]-F,le=z/2-y[m]/2+ue,ve=Mu(U,le,Q),ke=!l.arrow&&Fn(i)!=null&&le!==ve&&s.reference[m]/2-(le<U?ie:F)-y[m]/2<0,_e=ke?le<U?le-U:le-Q:0;return {[w]:p[w]+_e,data:{[w]:ve,centerOffset:le-ve-_e,...ke&&{alignmentOffset:_e}},reset:ke}}});function Gk(e,t,n){return (e?[...n.filter(i=>Fn(i)===e),...n.filter(i=>Fn(i)!==e)]:n.filter(i=>oo(i)===i)).filter(i=>e?Fn(i)===e||(t?wa(i)!==i:false):true)}const Jk=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var n,o,i;const{rects:s,middlewareData:r,placement:a,platform:l,elements:c}=t,{crossAxis:u=false,alignment:f,allowedPlacements:p=Mf,autoAlignment:w=true,...m}=$i(e,t),y=f!==void 0||p===Mf?Gk(f||null,w,p):p,v=await rl(t,m),E=((n=r.autoPlacement)==null?void 0:n.index)||0,L=y[E];if(L==null)return {};const P=qg(L,s,await(l.isRTL==null?void 0:l.isRTL(c.floating)));if(a!==L)return {reset:{placement:y[0]}};const D=[v[oo(L)],v[P[0]],v[P[1]]],O=[...((o=r.autoPlacement)==null?void 0:o.overflows)||[],{placement:L,overflows:D}],W=y[E+1];if(W)return {data:{index:E+1,overflows:O},reset:{placement:W}};const z=O.map(ie=>{const F=Fn(ie.placement);return [ie.placement,F&&u?ie.overflows.slice(0,2).reduce((U,Q)=>U+Q,0):ie.overflows[0],ie.overflows]}).sort((ie,F)=>ie[1]-F[1]),me=((i=z.filter(ie=>ie[2].slice(0,Fn(ie[0])?2:3).every(F=>F<=0))[0])==null?void 0:i[0])||z[0][0];return me!==a?{data:{index:E+1,overflows:O},reset:{placement:me}}:{}}}},Yk=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,o;const{placement:i,middlewareData:s,rects:r,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:u=true,crossAxis:f=true,fallbackPlacements:p,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:y=true,...v}=$i(e,t);if((n=s.arrow)!=null&&n.alignmentOffset)return {};const E=oo(i),L=mo(a),P=oo(a)===a,D=await(l.isRTL==null?void 0:l.isRTL(c.floating)),O=p||(P||!y?[ya(a)]:Uk(a)),W=m!=="none";!p&&W&&O.push(...Vk(a,y,m,D));const z=[a,...O],ue=await rl(t,v),me=[];let ie=((o=s.flip)==null?void 0:o.overflows)||[];if(u&&me.push(ue[E]),f){const le=qg(i,r,D);me.push(ue[le[0]],ue[le[1]]);}if(ie=[...ie,{placement:i,overflows:me}],!me.every(le=>le<=0)){var F,U;const le=(((F=s.flip)==null?void 0:F.index)||0)+1,ve=z[le];if(ve&&(!(f==="alignment"?L!==mo(ve):false)||ie.every(Se=>mo(Se.placement)===L?Se.overflows[0]>0:true)))return {data:{index:le,overflows:ie},reset:{placement:ve}};let ke=(U=ie.filter(_e=>_e.overflows[0]<=0).sort((_e,Se)=>_e.overflows[1]-Se.overflows[1])[0])==null?void 0:U.placement;if(!ke)switch(w){case "bestFit":{var Q;const _e=(Q=ie.filter(Se=>{if(W){const Ne=mo(Se.placement);return Ne===L||Ne==="y"}return true}).map(Se=>[Se.placement,Se.overflows.filter(Ne=>Ne>0).reduce((Ne,dt)=>Ne+dt,0)]).sort((Se,Ne)=>Se[1]-Ne[1])[0])==null?void 0:Q[0];_e&&(ke=_e);break}case "initialPlacement":ke=a;break}if(i!==ke)return {reset:{placement:ke}}}return {}}}},Qk=new Set(["left","top"]);async function Xk(e,t){const{placement:n,platform:o,elements:i}=e,s=await(o.isRTL==null?void 0:o.isRTL(i.floating)),r=oo(n),a=Fn(n),l=mo(n)==="y",c=Qk.has(r)?-1:1,u=s&&l?-1:1,f=$i(t,e);let{mainAxis:p,crossAxis:w,alignmentAxis:m}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return a&&typeof m=="number"&&(w=a==="end"?m*-1:m),l?{x:w*u,y:p*c}:{x:p*c,y:w*u}}const Zk=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,o;const{x:i,y:s,placement:r,middlewareData:a}=t,l=await Xk(t,e);return r===((n=a.offset)==null?void 0:n.placement)&&(o=a.arrow)!=null&&o.alignmentOffset?{}:{x:i+l.x,y:s+l.y,data:{...l,placement:r}}}}},e2=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:o,placement:i}=t,{mainAxis:s=true,crossAxis:r=false,limiter:a={fn:v=>{let{x:E,y:L}=v;return {x:E,y:L}}},...l}=$i(e,t),c={x:n,y:o},u=await rl(t,l),f=mo(oo(i)),p=Vg(f);let w=c[p],m=c[f];if(s){const v=p==="y"?"top":"left",E=p==="y"?"bottom":"right",L=w+u[v],P=w-u[E];w=Mu(L,w,P);}if(r){const v=f==="y"?"top":"left",E=f==="y"?"bottom":"right",L=m+u[v],P=m-u[E];m=Mu(L,m,P);}const y=a.fn({...t,[p]:w,[f]:m});return {...y,data:{x:y.x-n,y:y.y-o,enabled:{[p]:s,[f]:r}}}}}},t2=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,o;const{placement:i,rects:s,platform:r,elements:a}=t,{apply:l=()=>{},...c}=$i(e,t),u=await rl(t,c),f=oo(i),p=Fn(i),w=mo(i)==="y",{width:m,height:y}=s.floating;let v,E;f==="top"||f==="bottom"?(v=f,E=p===(await(r.isRTL==null?void 0:r.isRTL(a.floating))?"start":"end")?"left":"right"):(E=f,v=p==="end"?"top":"bottom");const L=y-u.top-u.bottom,P=m-u.left-u.right,D=zs(y-u[v],L),O=zs(m-u[E],P),W=!t.middlewareData.shift;let z=D,ue=O;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(ue=P),(o=t.middlewareData.shift)!=null&&o.enabled.y&&(z=L),W&&!p){const ie=ti(u.left,0),F=ti(u.right,0),U=ti(u.top,0),Q=ti(u.bottom,0);w?ue=m-2*(ie!==0||F!==0?ie+F:ti(u.left,u.right)):z=y-2*(U!==0||Q!==0?U+Q:ti(u.top,u.bottom));}await l({...t,availableWidth:ue,availableHeight:z});const me=await r.getDimensions(a.floating);return m!==me.width||y!==me.height?{reset:{rects:true}}:{}}}};function $n(e){var t;return ((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Xn(e){return $n(e).getComputedStyle(e)}const Ff=Math.min,Ps=Math.max,ba=Math.round;function Kg(e){const t=Xn(e);let n=parseFloat(t.width),o=parseFloat(t.height);const i=e.offsetWidth,s=e.offsetHeight,r=ba(n)!==i||ba(o)!==s;return r&&(n=i,o=s),{width:n,height:o,fallback:r}}function Ho(e){return Jg(e)?(e.nodeName||"").toLowerCase():""}let Lr;function Gg(){if(Lr)return Lr;const e=navigator.userAgentData;return e&&Array.isArray(e.brands)?(Lr=e.brands.map((t=>t.brand+"/"+t.version)).join(" "),Lr):navigator.userAgent}function Zn(e){return e instanceof $n(e).HTMLElement}function Ro(e){return e instanceof $n(e).Element}function Jg(e){return e instanceof $n(e).Node}function Nf(e){return typeof ShadowRoot>"u"?false:e instanceof $n(e).ShadowRoot||e instanceof ShadowRoot}function al(e){const{overflow:t,overflowX:n,overflowY:o,display:i}=Xn(e);return /auto|scroll|overlay|hidden|clip/.test(t+o+n)&&!["inline","contents"].includes(i)}function n2(e){return ["table","td","th"].includes(Ho(e))}function Ou(e){const t=/firefox/i.test(Gg()),n=Xn(e),o=n.backdropFilter||n.WebkitBackdropFilter;return n.transform!=="none"||n.perspective!=="none"||!!o&&o!=="none"||t&&n.willChange==="filter"||t&&!!n.filter&&n.filter!=="none"||["transform","perspective"].some((i=>n.willChange.includes(i)))||["paint","layout","strict","content"].some((i=>{const s=n.contain;return s!=null&&s.includes(i)}))}function Yg(){return !/^((?!chrome|android).)*safari/i.test(Gg())}function cd(e){return ["html","body","#document"].includes(Ho(e))}function Qg(e){return Ro(e)?e:e.contextElement}const Xg={x:1,y:1};function qi(e){const t=Qg(e);if(!Zn(t))return Xg;const n=t.getBoundingClientRect(),{width:o,height:i,fallback:s}=Kg(t);let r=(s?ba(n.width):n.width)/o,a=(s?ba(n.height):n.height)/i;return r&&Number.isFinite(r)||(r=1),a&&Number.isFinite(a)||(a=1),{x:r,y:a}}function Hs(e,t,n,o){var i,s;t===void 0&&(t=false),n===void 0&&(n=false);const r=e.getBoundingClientRect(),a=Qg(e);let l=Xg;t&&(o?Ro(o)&&(l=qi(o)):l=qi(e));const c=a?$n(a):window,u=!Yg()&&n;let f=(r.left+(u&&((i=c.visualViewport)==null?void 0:i.offsetLeft)||0))/l.x,p=(r.top+(u&&((s=c.visualViewport)==null?void 0:s.offsetTop)||0))/l.y,w=r.width/l.x,m=r.height/l.y;if(a){const y=$n(a),v=o&&Ro(o)?$n(o):o;let E=y.frameElement;for(;E&&o&&v!==y;){const L=qi(E),P=E.getBoundingClientRect(),D=getComputedStyle(E);P.x+=(E.clientLeft+parseFloat(D.paddingLeft))*L.x,P.y+=(E.clientTop+parseFloat(D.paddingTop))*L.y,f*=L.x,p*=L.y,w*=L.x,m*=L.y,f+=P.x,p+=P.y,E=$n(E).frameElement;}}return {width:w,height:m,top:p,right:f+w,bottom:p+m,left:f,x:f,y:p}}function Fo(e){return ((Jg(e)?e.ownerDocument:e.document)||window.document).documentElement}function ll(e){return Ro(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Zg(e){return Hs(Fo(e)).left+ll(e).scrollLeft}function Vs(e){if(Ho(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Nf(e)&&e.host||Fo(e);return Nf(t)?t.host:t}function ew(e){const t=Vs(e);return cd(t)?t.ownerDocument.body:Zn(t)&&al(t)?t:ew(t)}function va(e,t){var n;t===void 0&&(t=[]);const o=ew(e),i=o===((n=e.ownerDocument)==null?void 0:n.body),s=$n(o);return i?t.concat(s,s.visualViewport||[],al(o)?o:[]):t.concat(o,va(o))}function Uf(e,t,n){return t==="viewport"?As((function(o,i){const s=$n(o),r=Fo(o),a=s.visualViewport;let l=r.clientWidth,c=r.clientHeight,u=0,f=0;if(a){l=a.width,c=a.height;const p=Yg();(p||!p&&i==="fixed")&&(u=a.offsetLeft,f=a.offsetTop);}return {width:l,height:c,x:u,y:f}})(e,n)):Ro(t)?As((function(o,i){const s=Hs(o,true,i==="fixed"),r=s.top+o.clientTop,a=s.left+o.clientLeft,l=Zn(o)?qi(o):{x:1,y:1};return {width:o.clientWidth*l.x,height:o.clientHeight*l.y,x:a*l.x,y:r*l.y}})(t,n)):As((function(o){const i=Fo(o),s=ll(o),r=o.ownerDocument.body,a=Ps(i.scrollWidth,i.clientWidth,r.scrollWidth,r.clientWidth),l=Ps(i.scrollHeight,i.clientHeight,r.scrollHeight,r.clientHeight);let c=-s.scrollLeft+Zg(o);const u=-s.scrollTop;return Xn(r).direction==="rtl"&&(c+=Ps(i.clientWidth,r.clientWidth)-a),{width:a,height:l,x:c,y:u}})(Fo(e)))}function jf(e){return Zn(e)&&Xn(e).position!=="fixed"?e.offsetParent:null}function zf(e){const t=$n(e);let n=jf(e);for(;n&&n2(n)&&Xn(n).position==="static";)n=jf(n);return n&&(Ho(n)==="html"||Ho(n)==="body"&&Xn(n).position==="static"&&!Ou(n))?t:n||(function(o){let i=Vs(o);for(;Zn(i)&&!cd(i);){if(Ou(i))return i;i=Vs(i);}return null})(e)||t}function o2(e,t,n){const o=Zn(t),i=Fo(t),s=Hs(e,true,n==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(o||!o&&n!=="fixed")if((Ho(t)!=="body"||al(i))&&(r=ll(t)),Zn(t)){const l=Hs(t,true);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop;}else i&&(a.x=Zg(i));return {x:s.left+r.scrollLeft-a.x,y:s.top+r.scrollTop-a.y,width:s.width,height:s.height}}const i2={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:o,strategy:i}=e;const s=n==="clippingAncestors"?(function(c,u){const f=u.get(c);if(f)return f;let p=va(c).filter((v=>Ro(v)&&Ho(v)!=="body")),w=null;const m=Xn(c).position==="fixed";let y=m?Vs(c):c;for(;Ro(y)&&!cd(y);){const v=Xn(y),E=Ou(y);(m?E||w:E||v.position!=="static"||!w||!["absolute","fixed"].includes(w.position))?w=v:p=p.filter((L=>L!==y)),y=Vs(y);}return u.set(c,p),p})(t,this._c):[].concat(n),r=[...s,o],a=r[0],l=r.reduce(((c,u)=>{const f=Uf(t,u,i);return c.top=Ps(f.top,c.top),c.right=Ff(f.right,c.right),c.bottom=Ff(f.bottom,c.bottom),c.left=Ps(f.left,c.left),c}),Uf(t,a,i));return {width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:n,strategy:o}=e;const i=Zn(n),s=Fo(n);if(n===s)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((i||!i&&o!=="fixed")&&((Ho(n)!=="body"||al(s))&&(r=ll(n)),Zn(n))){const c=Hs(n);a=qi(n),l.x=c.x+n.clientLeft,l.y=c.y+n.clientTop;}return {width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-r.scrollLeft*a.x+l.x,y:t.y*a.y-r.scrollTop*a.y+l.y}},isElement:Ro,getDimensions:function(e){return Zn(e)?Kg(e):e.getBoundingClientRect()},getOffsetParent:zf,getDocumentElement:Fo,getScale:qi,async getElementRects(e){let{reference:t,floating:n,strategy:o}=e;const i=this.getOffsetParent||zf,s=this.getDimensions;return {reference:o2(t,await i(n),o),floating:{x:0,y:0,...await s(n)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>Xn(e).direction==="rtl"},s2=(e,t,n)=>{const o=new Map,i={platform:i2,...n},s={...i.platform,_c:o};return Wk(e,t,{...i,platform:s})},li={disabled:false,distance:5,skidding:0,container:"body",boundary:void 0,instantMove:false,disposeTimeout:150,popperTriggers:[],strategy:"absolute",preventOverflow:true,flip:true,shift:true,overflowPadding:0,arrowPadding:0,arrowOverflow:true,autoHideOnMousedown:false,themes:{tooltip:{placement:"top",triggers:["hover","focus","touch"],hideTriggers:e=>[...e,"click"],delay:{show:200,hide:0},handleResize:false,html:false,loadingContent:"..."},dropdown:{placement:"bottom",triggers:["click"],delay:0,handleResize:true,autoHide:true},menu:{$extend:"dropdown",triggers:["hover","focus"],popperTriggers:["hover"],delay:{show:0,hide:400}}}};function qs(e,t){let n=li.themes[e]||{},o;do o=n[t],typeof o>"u"?n.$extend?n=li.themes[n.$extend]||{}:(n=null,o=li[t]):n=null;while(n);return o}function r2(e){const t=[e];let n=li.themes[e]||{};do n.$extend&&!n.$resetCss?(t.push(n.$extend),n=li.themes[n.$extend]||{}):n=null;while(n);return t.map(o=>`v-popper--theme-${o}`)}function Hf(e){const t=[e];let n=li.themes[e]||{};do n.$extend?(t.push(n.$extend),n=li.themes[n.$extend]||{}):n=null;while(n);return t}let Ws=false;if(typeof window<"u"){Ws=false;try{const e=Object.defineProperty({},"passive",{get(){Ws=!0;}});window.addEventListener("test",null,e);}catch{}}let tw=false;typeof window<"u"&&typeof navigator<"u"&&(tw=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const nw=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),Vf={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},qf={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function Wf(e,t){const n=e.indexOf(t);n!==-1&&e.splice(n,1);}function Kl(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e);}))}const Tn=[];let Zo=null;const Kf={};function Gf(e){let t=Kf[e];return t||(t=Kf[e]=[]),t}let Bu=function(){};typeof window<"u"&&(Bu=window.Element);function qe(e){return function(t){return qs(t.theme,e)}}const Gl="__floating-vue__popper",ow=()=>xe({name:"VPopper",provide(){return {[Gl]:{parentPopper:this}}},inject:{[Gl]:{default:null}},props:{theme:{type:String,required:true},targetNodes:{type:Function,required:true},referenceNode:{type:Function,default:null},popperNode:{type:Function,required:true},shown:{type:Boolean,default:false},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:qe("disabled")},positioningDisabled:{type:Boolean,default:qe("positioningDisabled")},placement:{type:String,default:qe("placement"),validator:e=>nw.includes(e)},delay:{type:[String,Number,Object],default:qe("delay")},distance:{type:[Number,String],default:qe("distance")},skidding:{type:[Number,String],default:qe("skidding")},triggers:{type:Array,default:qe("triggers")},showTriggers:{type:[Array,Function],default:qe("showTriggers")},hideTriggers:{type:[Array,Function],default:qe("hideTriggers")},popperTriggers:{type:Array,default:qe("popperTriggers")},popperShowTriggers:{type:[Array,Function],default:qe("popperShowTriggers")},popperHideTriggers:{type:[Array,Function],default:qe("popperHideTriggers")},container:{type:[String,Object,Bu,Boolean],default:qe("container")},boundary:{type:[String,Bu],default:qe("boundary")},strategy:{type:String,validator:e=>["absolute","fixed"].includes(e),default:qe("strategy")},autoHide:{type:[Boolean,Function],default:qe("autoHide")},handleResize:{type:Boolean,default:qe("handleResize")},instantMove:{type:Boolean,default:qe("instantMove")},eagerMount:{type:Boolean,default:qe("eagerMount")},popperClass:{type:[String,Array,Object],default:qe("popperClass")},computeTransformOrigin:{type:Boolean,default:qe("computeTransformOrigin")},autoMinSize:{type:Boolean,default:qe("autoMinSize")},autoSize:{type:[Boolean,String],default:qe("autoSize")},autoMaxSize:{type:Boolean,default:qe("autoMaxSize")},autoBoundaryMaxSize:{type:Boolean,default:qe("autoBoundaryMaxSize")},preventOverflow:{type:Boolean,default:qe("preventOverflow")},overflowPadding:{type:[Number,String],default:qe("overflowPadding")},arrowPadding:{type:[Number,String],default:qe("arrowPadding")},arrowOverflow:{type:Boolean,default:qe("arrowOverflow")},flip:{type:Boolean,default:qe("flip")},shift:{type:Boolean,default:qe("shift")},shiftCrossAxis:{type:Boolean,default:qe("shiftCrossAxis")},noAutoFocus:{type:Boolean,default:qe("noAutoFocus")},disposeTimeout:{type:Number,default:qe("disposeTimeout")}},emits:{show:()=>true,hide:()=>true,"update:shown":e=>true,"apply-show":()=>true,"apply-hide":()=>true,"close-group":()=>true,"close-directive":()=>true,"auto-hide":()=>true,resize:()=>true},data(){return {isShown:false,isMounted:false,skipTransition:false,classes:{showFrom:false,showTo:false,hideFrom:false,hideTo:true},result:{x:0,y:0,placement:"",strategy:this.strategy,arrow:{x:0,y:0,centerOffset:0},transformOrigin:null},randomId:`popper_${[Math.random(),Date.now()].map(e=>e.toString(36).substring(2,10)).join("_")}`,shownChildren:new Set,lastAutoHide:true,pendingHide:false,containsGlobalTarget:false,isDisposed:true,mouseDownContains:false}},computed:{popperId(){return this.ariaId!=null?this.ariaId:this.randomId},shouldMountContent(){return this.eagerMount||this.isMounted},slotData(){return {popperId:this.popperId,isShown:this.isShown,shouldMountContent:this.shouldMountContent,skipTransition:this.skipTransition,autoHide:typeof this.autoHide=="function"?this.lastAutoHide:this.autoHide,show:this.show,hide:this.hide,handleResize:this.handleResize,onResize:this.onResize,classes:{...this.classes,popperClass:this.popperClass},result:this.positioningDisabled?null:this.result,attrs:this.$attrs}},parentPopper(){var e;return (e=this[Gl])==null?void 0:e.parentPopper},hasPopperShowTriggerHover(){var e,t;return ((e=this.popperTriggers)==null?void 0:e.includes("hover"))||((t=this.popperShowTriggers)==null?void 0:t.includes("hover"))}},watch:{shown:"$_autoShowHide",disabled(e){e?this.dispose():this.init();},async container(){this.isShown&&(this.$_ensureTeleport(),await this.$_computePosition());},triggers:{handler:"$_refreshListeners",deep:true},positioningDisabled:"$_refreshListeners",...["placement","distance","skidding","boundary","strategy","overflowPadding","arrowPadding","preventOverflow","shift","shiftCrossAxis","flip"].reduce((e,t)=>(e[t]="$_computePosition",e),{})},created(){this.autoMinSize&&console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'),this.autoMaxSize&&console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.");},mounted(){this.init(),this.$_detachPopperNode();},activated(){this.$_autoShowHide();},deactivated(){this.hide();},beforeUnmount(){this.dispose();},methods:{show({event:e=null,skipDelay:t=false,force:n=false}={}){var o,i;(o=this.parentPopper)!=null&&o.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=false,(n||!this.disabled)&&(((i=this.parentPopper)==null?void 0:i.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.$_scheduleShow(e,t),this.$emit("show"),this.$_showFrameLocked=true,requestAnimationFrame(()=>{this.$_showFrameLocked=false;})),this.$emit("update:shown",true));},hide({event:e=null,skipDelay:t=false}={}){var n;if(!this.$_hideInProgress){if(this.shownChildren.size>0){this.pendingHide=true;return}if(this.hasPopperShowTriggerHover&&this.$_isAimingPopper()){this.parentPopper&&(this.parentPopper.lockedChild=this,clearTimeout(this.parentPopper.lockedChildTimer),this.parentPopper.lockedChildTimer=setTimeout(()=>{this.parentPopper.lockedChild===this&&(this.parentPopper.lockedChild.hide({skipDelay:t}),this.parentPopper.lockedChild=null);},1e3));return}((n=this.parentPopper)==null?void 0:n.lockedChild)===this&&(this.parentPopper.lockedChild=null),this.pendingHide=false,this.$_scheduleHide(e,t),this.$emit("hide"),this.$emit("update:shown",false);}},init(){var e;this.isDisposed&&(this.isDisposed=false,this.isMounted=false,this.$_events=[],this.$_preventShow=false,this.$_referenceNode=((e=this.referenceNode)==null?void 0:e.call(this))??this.$el,this.$_targetNodes=this.targetNodes().filter(t=>t.nodeType===t.ELEMENT_NODE),this.$_popperNode=this.popperNode(),this.$_innerNode=this.$_popperNode.querySelector(".v-popper__inner"),this.$_arrowNode=this.$_popperNode.querySelector(".v-popper__arrow-container"),this.$_swapTargetAttrs("title","data-original-title"),this.$_detachPopperNode(),this.triggers.length&&this.$_addEventListeners(),this.shown&&this.show());},dispose(){this.isDisposed||(this.isDisposed=true,this.$_removeEventListeners(),this.hide({skipDelay:true}),this.$_detachPopperNode(),this.isMounted=false,this.isShown=false,this.$_updateParentShownChildren(false),this.$_swapTargetAttrs("data-original-title","title"));},async onResize(){this.isShown&&(await this.$_computePosition(),this.$emit("resize"));},async $_computePosition(){if(this.isDisposed||this.positioningDisabled)return;const e={strategy:this.strategy,middleware:[]};(this.distance||this.skidding)&&e.middleware.push(Zk({mainAxis:this.distance,crossAxis:this.skidding}));const t=this.placement.startsWith("auto");if(t?e.middleware.push(Jk({alignment:this.placement.split("-")[1]??""})):e.placement=this.placement,this.preventOverflow&&(this.shift&&e.middleware.push(e2({padding:this.overflowPadding,boundary:this.boundary,crossAxis:this.shiftCrossAxis})),!t&&this.flip&&e.middleware.push(Yk({padding:this.overflowPadding,boundary:this.boundary}))),e.middleware.push(Kk({element:this.$_arrowNode,padding:this.arrowPadding})),this.arrowOverflow&&e.middleware.push({name:"arrowOverflow",fn:({placement:o,rects:i,middlewareData:s})=>{let r;const{centerOffset:a}=s.arrow;return o.startsWith("top")||o.startsWith("bottom")?r=Math.abs(a)>i.reference.width/2:r=Math.abs(a)>i.reference.height/2,{data:{overflow:r}}}}),this.autoMinSize||this.autoSize){const o=this.autoSize?this.autoSize:this.autoMinSize?"min":null;e.middleware.push({name:"autoSize",fn:({rects:i,placement:s,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return {};let l,c;return s.startsWith("top")||s.startsWith("bottom")?l=i.reference.width:c=i.reference.height,this.$_innerNode.style[o==="min"?"minWidth":o==="max"?"maxWidth":"width"]=l!=null?`${l}px`:null,this.$_innerNode.style[o==="min"?"minHeight":o==="max"?"maxHeight":"height"]=c!=null?`${c}px`:null,{data:{skip:true},reset:{rects:true}}}});}(this.autoMaxSize||this.autoBoundaryMaxSize)&&(this.$_innerNode.style.maxWidth=null,this.$_innerNode.style.maxHeight=null,e.middleware.push(t2({boundary:this.boundary,padding:this.overflowPadding,apply:({availableWidth:o,availableHeight:i})=>{this.$_innerNode.style.maxWidth=o!=null?`${o}px`:null,this.$_innerNode.style.maxHeight=i!=null?`${i}px`:null;}})));const n=await s2(this.$_referenceNode,this.$_popperNode,e);Object.assign(this.result,{x:n.x,y:n.y,placement:n.placement,strategy:n.strategy,arrow:{...n.middlewareData.arrow,...n.middlewareData.arrowOverflow}});},$_scheduleShow(e,t=false){if(this.$_updateParentShownChildren(true),this.$_hideInProgress=false,clearTimeout(this.$_scheduleTimer),Zo&&this.instantMove&&Zo.instantMove&&Zo!==this.parentPopper){Zo.$_applyHide(true),this.$_applyShow(true);return}t?this.$_applyShow():this.$_scheduleTimer=setTimeout(this.$_applyShow.bind(this),this.$_computeDelay("show"));},$_scheduleHide(e,t=false){if(this.shownChildren.size>0){this.pendingHide=true;return}this.$_updateParentShownChildren(false),this.$_hideInProgress=true,clearTimeout(this.$_scheduleTimer),this.isShown&&(Zo=this),t?this.$_applyHide():this.$_scheduleTimer=setTimeout(this.$_applyHide.bind(this),this.$_computeDelay("hide"));},$_computeDelay(e){const t=this.delay;return parseInt(t&&t[e]||t||0)},async $_applyShow(e=false){clearTimeout(this.$_disposeTimer),clearTimeout(this.$_scheduleTimer),this.skipTransition=e,!this.isShown&&(this.$_ensureTeleport(),await Kl(),await this.$_computePosition(),await this.$_applyShowEffect(),this.positioningDisabled||this.$_registerEventListeners([...va(this.$_referenceNode),...va(this.$_popperNode)],"scroll",()=>{this.$_computePosition();}));},async $_applyShowEffect(){if(this.$_hideInProgress)return;if(this.computeTransformOrigin){const t=this.$_referenceNode.getBoundingClientRect(),n=this.$_popperNode.querySelector(".v-popper__wrapper"),o=n.parentNode.getBoundingClientRect(),i=t.x+t.width/2-(o.left+n.offsetLeft),s=t.y+t.height/2-(o.top+n.offsetTop);this.result.transformOrigin=`${i}px ${s}px`;}this.isShown=true,this.$_applyAttrsToTarget({"aria-describedby":this.popperId,"data-popper-shown":""});const e=this.showGroup;if(e){let t;for(let n=0;n<Tn.length;n++)t=Tn[n],t.showGroup!==e&&(t.hide(),t.$emit("close-group"));}Tn.push(this),document.body.classList.add("v-popper--some-open");for(const t of Hf(this.theme))Gf(t).push(this),document.body.classList.add(`v-popper--some-open--${t}`);this.$emit("apply-show"),this.classes.showFrom=true,this.classes.showTo=false,this.classes.hideFrom=false,this.classes.hideTo=false,await Kl(),this.classes.showFrom=false,this.classes.showTo=true,this.noAutoFocus||this.$_popperNode.focus();},async $_applyHide(e=false){if(this.shownChildren.size>0){this.pendingHide=true,this.$_hideInProgress=false;return}if(clearTimeout(this.$_scheduleTimer),!this.isShown)return;this.skipTransition=e,Wf(Tn,this),Tn.length===0&&document.body.classList.remove("v-popper--some-open");for(const n of Hf(this.theme)){const o=Gf(n);Wf(o,this),o.length===0&&document.body.classList.remove(`v-popper--some-open--${n}`);}Zo===this&&(Zo=null),this.isShown=false,this.$_applyAttrsToTarget({"aria-describedby":void 0,"data-popper-shown":void 0}),clearTimeout(this.$_disposeTimer);const t=this.disposeTimeout;t!==null&&(this.$_disposeTimer=setTimeout(()=>{this.$_popperNode&&(this.$_detachPopperNode(),this.isMounted=false);},t)),this.$_removeEventListeners("scroll"),this.$emit("apply-hide"),this.classes.showFrom=false,this.classes.showTo=false,this.classes.hideFrom=true,this.classes.hideTo=false,await Kl(),this.classes.hideFrom=false,this.classes.hideTo=true;},$_autoShowHide(){this.shown?this.show():this.hide();},$_ensureTeleport(){if(this.isDisposed)return;let e=this.container;if(typeof e=="string"?e=window.document.querySelector(e):e===false&&(e=this.$_targetNodes[0].parentNode),!e)throw new Error("No container for popover: "+this.container);e.appendChild(this.$_popperNode),this.isMounted=true;},$_addEventListeners(){const e=n=>{this.isShown&&!this.$_hideInProgress||(n.usedByTooltip=true,!this.$_preventShow&&this.show({event:n}));};this.$_registerTriggerListeners(this.$_targetNodes,Vf,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],Vf,this.popperTriggers,this.popperShowTriggers,e);const t=n=>{n.usedByTooltip||this.hide({event:n});};this.$_registerTriggerListeners(this.$_targetNodes,qf,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],qf,this.popperTriggers,this.popperHideTriggers,t);},$_registerEventListeners(e,t,n){this.$_events.push({targetNodes:e,eventType:t,handler:n}),e.forEach(o=>o.addEventListener(t,n,Ws?{passive:true}:void 0));},$_registerTriggerListeners(e,t,n,o,i){let s=n;o!=null&&(s=typeof o=="function"?o(s):o),s.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,i);});},$_removeEventListeners(e){const t=[];this.$_events.forEach(n=>{const{targetNodes:o,eventType:i,handler:s}=n;!e||e===i?o.forEach(r=>r.removeEventListener(i,s)):t.push(n);}),this.$_events=t;},$_refreshListeners(){this.isDisposed||(this.$_removeEventListeners(),this.$_addEventListeners());},$_handleGlobalClose(e,t=false){this.$_showFrameLocked||(this.hide({event:e}),e.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),t&&(this.$_preventShow=true,setTimeout(()=>{this.$_preventShow=false;},300)));},$_detachPopperNode(){this.$_popperNode.parentNode&&this.$_popperNode.parentNode.removeChild(this.$_popperNode);},$_swapTargetAttrs(e,t){for(const n of this.$_targetNodes){const o=n.getAttribute(e);o&&(n.removeAttribute(e),n.setAttribute(t,o));}},$_applyAttrsToTarget(e){for(const t of this.$_targetNodes)for(const n in e){const o=e[n];o==null?t.removeAttribute(n):t.setAttribute(n,o);}},$_updateParentShownChildren(e){let t=this.parentPopper;for(;t;)e?t.shownChildren.add(this.randomId):(t.shownChildren.delete(this.randomId),t.pendingHide&&t.hide()),t=t.parentPopper;},$_isAimingPopper(){const e=this.$_referenceNode.getBoundingClientRect();if(Is>=e.left&&Is<=e.right&&Ds>=e.top&&Ds<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),n=Is-$o,o=Ds-Eo,i=t.left+t.width/2-$o+(t.top+t.height/2)-Eo+t.width+t.height,s=$o+n*i,r=Eo+o*i;return Tr($o,Eo,s,r,t.left,t.top,t.left,t.bottom)||Tr($o,Eo,s,r,t.left,t.top,t.right,t.top)||Tr($o,Eo,s,r,t.right,t.top,t.right,t.bottom)||Tr($o,Eo,s,r,t.left,t.bottom,t.right,t.bottom)}return false}},render(){return this.$slots.default(this.slotData)}});if(typeof document<"u"&&typeof window<"u"){if(tw){const e=Ws?{passive:true,capture:true}:true;document.addEventListener("touchstart",t=>Jf(t),e),document.addEventListener("touchend",t=>Yf(t,true),e);}else window.addEventListener("mousedown",e=>Jf(e),true),window.addEventListener("click",e=>Yf(e,false),true);window.addEventListener("resize",u2);}function Jf(e,t){for(let n=0;n<Tn.length;n++){const o=Tn[n];try{o.mouseDownContains=o.popperNode().contains(e.target);}catch{}}}function Yf(e,t){a2(e,t);}function a2(e,t){const n={};for(let o=Tn.length-1;o>=0;o--){const i=Tn[o];try{const s=i.containsGlobalTarget=i.mouseDownContains||i.popperNode().contains(e.target);i.pendingHide=!1,requestAnimationFrame(()=>{if(i.pendingHide=!1,!n[i.randomId]&&Qf(i,s,e)){if(i.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&s){let a=i.parentPopper;for(;a;)n[a.randomId]=!0,a=a.parentPopper;return}let r=i.parentPopper;for(;r&&Qf(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper;}});}catch{}}}function Qf(e,t,n){return n.closeAllPopover||n.closePopover&&t||l2(e,n)&&!t}function l2(e,t){if(typeof e.autoHide=="function"){const n=e.autoHide(t);return e.lastAutoHide=n,n}return e.autoHide}function u2(){for(let e=0;e<Tn.length;e++)Tn[e].$_computePosition();}let $o=0,Eo=0,Is=0,Ds=0;typeof window<"u"&&window.addEventListener("mousemove",e=>{$o=Is,Eo=Ds,Is=e.clientX,Ds=e.clientY;},Ws?{passive:true}:void 0);function Tr(e,t,n,o,i,s,r,a){const l=((r-i)*(t-s)-(a-s)*(e-i))/((a-s)*(n-e)-(r-i)*(o-t)),c=((n-e)*(t-s)-(o-t)*(e-i))/((a-s)*(n-e)-(r-i)*(o-t));return l>=0&&l<=1&&c>=0&&c<=1}const c2={extends:ow()},ul=(e,t)=>{const n=e.__vccOpts||e;for(const[o,i]of t)n[o]=i;return n};function d2(e,t,n,o,i,s){return _(),S("div",{ref:"reference",class:Le(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[Ge(e.$slots,"default",Dx(kg(e.slotData)))],2)}const f2=ul(c2,[["render",d2]]);function p2(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>0)return parseInt(e.substring(t+5,e.indexOf(".",t)),10);var n=e.indexOf("Trident/");if(n>0){var o=e.indexOf("rv:");return parseInt(e.substring(o+3,e.indexOf(".",o)),10)}var i=e.indexOf("Edge/");return i>0?parseInt(e.substring(i+5,e.indexOf(".",i)),10):-1}let Hr;function Ru(){Ru.init||(Ru.init=true,Hr=p2()!==-1);}var cl={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:false},ignoreWidth:{type:Boolean,default:false},ignoreHeight:{type:Boolean,default:false}},emits:["notify"],mounted(){Ru(),mi(()=>{this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitOnMount&&this.emitSize();});const e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",Hr&&this.$el.appendChild(e),e.data="about:blank",Hr||this.$el.appendChild(e);},beforeUnmount(){this.removeResizeHandlers();},methods:{compareAndNotify(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize());},emitSize(){this.$emit("notify",{width:this._w,height:this._h});},addResizeHandlers(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify();},removeResizeHandlers(){this._resizeObject&&this._resizeObject.onload&&(!Hr&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null);}}};const h2=b_();w_("data-v-b329ee4c");const m2={class:"resize-observer",tabindex:"-1"};y_();const g2=h2((e,t,n,o,i,s)=>(_(),tt("div",m2)));cl.render=g2;cl.__scopeId="data-v-b329ee4c";cl.__file="src/components/ResizeObserver.vue";const iw=(e="theme")=>({computed:{themeClass(){return r2(this[e])}}}),w2=xe({name:"VPopperContent",components:{ResizeObserver:cl},mixins:[iw()],props:{popperId:String,theme:String,shown:Boolean,mounted:Boolean,skipTransition:Boolean,autoHide:Boolean,handleResize:Boolean,classes:Object,result:Object},emits:["hide","resize"],methods:{toPx(e){return e!=null&&!isNaN(e)?`${e}px`:null}}}),y2=["id","aria-hidden","tabindex","data-popper-placement"],b2={ref:"inner",class:"v-popper__inner"},v2=d("div",{class:"v-popper__arrow-outer"},null,-1),x2=d("div",{class:"v-popper__arrow-inner"},null,-1),_2=[v2,x2];function C2(e,t,n,o,i,s){const r=xo("ResizeObserver");return _(),S("div",{id:e.popperId,ref:"popover",class:Le(["v-popper__popper",[e.themeClass,e.classes.popperClass,{"v-popper__popper--shown":e.shown,"v-popper__popper--hidden":!e.shown,"v-popper__popper--show-from":e.classes.showFrom,"v-popper__popper--show-to":e.classes.showTo,"v-popper__popper--hide-from":e.classes.hideFrom,"v-popper__popper--hide-to":e.classes.hideTo,"v-popper__popper--skip-transition":e.skipTransition,"v-popper__popper--arrow-overflow":e.result&&e.result.arrow.overflow,"v-popper__popper--no-positioning":!e.result}]]),style:Qn(e.result?{position:e.result.strategy,transform:`translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`}:void 0),"aria-hidden":e.shown?"false":"true",tabindex:e.autoHide?0:void 0,"data-popper-placement":e.result?e.result.placement:void 0,onKeyup:t[2]||(t[2]=Tg(a=>e.autoHide&&e.$emit("hide"),["esc"]))},[d("div",{class:"v-popper__backdrop",onClick:t[0]||(t[0]=a=>e.autoHide&&e.$emit("hide"))}),d("div",{class:"v-popper__wrapper",style:Qn(e.result?{transformOrigin:e.result.transformOrigin}:void 0)},[d("div",b2,[e.mounted?(_(),S($e,{key:0},[d("div",null,[Ge(e.$slots,"default")]),e.handleResize?(_(),tt(r,{key:0,onNotify:t[1]||(t[1]=a=>e.$emit("resize",a))})):fe("",true)],64)):fe("",true)],512),d("div",{ref:"arrow",class:"v-popper__arrow-container",style:Qn(e.result?{left:e.toPx(e.result.arrow.x),top:e.toPx(e.result.arrow.y)}:void 0)},_2,4)],4)],46,y2)}const sw=ul(w2,[["render",C2]]),rw={methods:{show(...e){return this.$refs.popper.show(...e)},hide(...e){return this.$refs.popper.hide(...e)},dispose(...e){return this.$refs.popper.dispose(...e)},onResize(...e){return this.$refs.popper.onResize(...e)}}};let Fu=function(){};typeof window<"u"&&(Fu=window.Element);const k2=xe({name:"VPopperWrapper",components:{Popper:f2,PopperContent:sw},mixins:[rw,iw("finalTheme")],props:{theme:{type:String,default:null},referenceNode:{type:Function,default:null},shown:{type:Boolean,default:false},showGroup:{type:String,default:null},ariaId:{default:null},disabled:{type:Boolean,default:void 0},positioningDisabled:{type:Boolean,default:void 0},placement:{type:String,default:void 0},delay:{type:[String,Number,Object],default:void 0},distance:{type:[Number,String],default:void 0},skidding:{type:[Number,String],default:void 0},triggers:{type:Array,default:void 0},showTriggers:{type:[Array,Function],default:void 0},hideTriggers:{type:[Array,Function],default:void 0},popperTriggers:{type:Array,default:void 0},popperShowTriggers:{type:[Array,Function],default:void 0},popperHideTriggers:{type:[Array,Function],default:void 0},container:{type:[String,Object,Fu,Boolean],default:void 0},boundary:{type:[String,Fu],default:void 0},strategy:{type:String,default:void 0},autoHide:{type:[Boolean,Function],default:void 0},handleResize:{type:Boolean,default:void 0},instantMove:{type:Boolean,default:void 0},eagerMount:{type:Boolean,default:void 0},popperClass:{type:[String,Array,Object],default:void 0},computeTransformOrigin:{type:Boolean,default:void 0},autoMinSize:{type:Boolean,default:void 0},autoSize:{type:[Boolean,String],default:void 0},autoMaxSize:{type:Boolean,default:void 0},autoBoundaryMaxSize:{type:Boolean,default:void 0},preventOverflow:{type:Boolean,default:void 0},overflowPadding:{type:[Number,String],default:void 0},arrowPadding:{type:[Number,String],default:void 0},arrowOverflow:{type:Boolean,default:void 0},flip:{type:Boolean,default:void 0},shift:{type:Boolean,default:void 0},shiftCrossAxis:{type:Boolean,default:void 0},noAutoFocus:{type:Boolean,default:void 0},disposeTimeout:{type:Number,default:void 0}},emits:{show:()=>true,hide:()=>true,"update:shown":e=>true,"apply-show":()=>true,"apply-hide":()=>true,"close-group":()=>true,"close-directive":()=>true,"auto-hide":()=>true,resize:()=>true},computed:{finalTheme(){return this.theme??this.$options.vPopperTheme}},methods:{getTargetNodes(){return Array.from(this.$el.children).filter(e=>e!==this.$refs.popperContent.$el)}}});function S2(e,t,n,o,i,s){const r=xo("PopperContent"),a=xo("Popper");return _(),tt(a,od({ref:"popper"},e.$props,{theme:e.finalTheme,"target-nodes":e.getTargetNodes,"popper-node":()=>e.$refs.popperContent.$el,class:[e.themeClass],onShow:t[0]||(t[0]=()=>e.$emit("show")),onHide:t[1]||(t[1]=()=>e.$emit("hide")),"onUpdate:shown":t[2]||(t[2]=l=>e.$emit("update:shown",l)),onApplyShow:t[3]||(t[3]=()=>e.$emit("apply-show")),onApplyHide:t[4]||(t[4]=()=>e.$emit("apply-hide")),onCloseGroup:t[5]||(t[5]=()=>e.$emit("close-group")),onCloseDirective:t[6]||(t[6]=()=>e.$emit("close-directive")),onAutoHide:t[7]||(t[7]=()=>e.$emit("auto-hide")),onResize:t[8]||(t[8]=()=>e.$emit("resize"))}),{default:ge(({popperId:l,isShown:c,shouldMountContent:u,skipTransition:f,autoHide:p,show:w,hide:m,handleResize:y,onResize:v,classes:E,result:L})=>[Ge(e.$slots,"default",{shown:c,show:w,hide:m}),oe(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:c,mounted:u,"skip-transition":f,"auto-hide":p,"handle-resize":y,classes:E,result:L,onHide:m,onResize:v},{default:ge(()=>[Ge(e.$slots,"popper",{shown:c,hide:m})]),_:2},1032,["popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:3},16,["theme","target-nodes","popper-node","class"])}const dd=ul(k2,[["render",S2]]),$2={...dd,name:"VDropdown",vPopperTheme:"dropdown"};({...dd});({...dd});const E2=xe({name:"VTooltipDirective",components:{Popper:ow(),PopperContent:sw},mixins:[rw],inheritAttrs:false,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>qs(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>qs(e.theme,"loadingContent")},targetNodes:{type:Function,required:true}},data(){return {asyncContent:null}},computed:{isContentAsync(){return typeof this.content=="function"},loading(){return this.isContentAsync&&this.asyncContent==null},finalContent(){return this.isContentAsync?this.loading?this.loadingContent:this.asyncContent:this.content}},watch:{content:{handler(){this.fetchContent(true);},immediate:true},async finalContent(){await this.$nextTick(),this.$refs.popper.onResize();}},created(){this.$_fetchId=0;},methods:{fetchContent(e){if(typeof this.content=="function"&&this.$_isShown&&(e||!this.$_loading&&this.asyncContent==null)){this.asyncContent=null,this.$_loading=true;const t=++this.$_fetchId,n=this.content(this);n.then?n.then(o=>this.onResult(t,o)):this.onResult(t,n);}},onResult(e,t){e===this.$_fetchId&&(this.$_loading=false,this.asyncContent=t);},onShow(){this.$_isShown=true,this.fetchContent();},onHide(){this.$_isShown=false;}}}),A2=["innerHTML"],P2=["textContent"];function I2(e,t,n,o,i,s){const r=xo("PopperContent"),a=xo("Popper");return _(),tt(a,od({ref:"popper"},e.$attrs,{theme:e.theme,"target-nodes":e.targetNodes,"popper-node":()=>e.$refs.popperContent.$el,onApplyShow:e.onShow,onApplyHide:e.onHide}),{default:ge(({popperId:l,isShown:c,shouldMountContent:u,skipTransition:f,autoHide:p,hide:w,handleResize:m,onResize:y,classes:v,result:E})=>[oe(r,{ref:"popperContent",class:Le({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:c,mounted:u,"skip-transition":f,"auto-hide":p,"handle-resize":m,classes:v,result:E,onHide:w,onResize:y},{default:ge(()=>[e.html?(_(),S("div",{key:0,innerHTML:e.finalContent},null,8,A2)):(_(),S("div",{key:1,textContent:B(e.finalContent)},null,8,P2))]),_:2},1032,["class","popper-id","theme","shown","mounted","skip-transition","auto-hide","handle-resize","classes","result","onHide","onResize"])]),_:1},16,["theme","target-nodes","popper-node","onApplyShow","onApplyHide"])}const D2=ul(E2,[["render",I2]]),aw="v-popper--has-tooltip";function L2(e,t){let n=e.placement;if(!n&&t)for(const o of nw)t[o]&&(n=o);return n||(n=qs(e.theme||"tooltip","placement")),n}function lw(e,t,n){let o;const i=typeof t;return i==="string"?o={content:t}:t&&i==="object"?o=t:o={content:false},o.placement=L2(o,n),o.targetNodes=()=>[e],o.referenceNode=()=>e,o}let Jl,Ks,T2=0;function M2(){if(Jl)return;Ks=V([]),Jl=ro({name:"VTooltipDirectiveApp",setup(){return {directives:Ks}},render(){return this.directives.map(t=>kC(D2,{...t.options,shown:t.shown||t.options.shown,key:t.id}))},devtools:{hide:true}});const e=document.createElement("div");document.body.appendChild(e),Jl.mount(e);}function O2(e,t,n){M2();const o=V(lw(e,t,n)),i=V(false),s={id:T2++,options:o,shown:i};return Ks.value.push(s),e.classList&&e.classList.add(aw),e.$_popper={options:o,item:s,show(){i.value=true;},hide(){i.value=false;}}}function uw(e){if(e.$_popper){const t=Ks.value.indexOf(e.$_popper.item);t!==-1&&Ks.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget;}e.classList&&e.classList.remove(aw);}function Xf(e,{value:t,modifiers:n}){const o=lw(e,t,n);if(!o.content||qs(o.theme||"tooltip","disabled"))uw(e);else {let i;e.$_popper?(i=e.$_popper,i.options.value=o):i=O2(e,t,n),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?i.show():i.hide());}}const B2={beforeMount:Xf,updated:Xf,beforeUnmount(e){uw(e);}},fd=B2,Ei=$2,R2={key:0,class:"ce-custom-url-help"},F2={class:"ce-custom-url-help-body"},N2={key:0},U2={class:"pure-table pure-table-bordered"},j2=["onClick"],z2=xe({__name:"CustomUrlHelp",setup(e){const t=V(ix),n=V(false);Ht(async()=>{window.addEventListener("message",i=>{const{event:s}=i.data;s==="customUrlHelp"&&(n.value=true);},false);});async function o(i){gt(i.key),Y({text:"已复制到剪贴板",icon:"success",timer:1e3});}return (i,s)=>n.value?(_(),S("div",R2,[d("div",F2,[d("h1",null,[s[1]||(s[1]=I(" 自定义菜单变量说明 ",-1)),d("a",{href:"javascript:void(0)",onClick:s[0]||(s[0]=r=>n.value=false)},"关闭")]),s[3]||(s[3]=d("hr",null,null,-1)),(_(true),S($e,null,je(t.value,(r,a)=>(_(),S("div",{key:a},[d("h2",null,B(r.label),1),r.memo?(_(),S("p",N2,B(r.memo),1)):fe("",true),d("table",U2,[s[2]||(s[2]=d("thead",null,[d("tr",null,[d("th",{width:"50%"},"变量"),d("th",{width:"50%"},"说明")])],-1)),d("tbody",null,[(_(true),S($e,null,je(r.items,(l,c)=>(_(),S("tr",{key:c},[d("td",null,[d("span",{class:"ce-variable",onClick:u=>o(l)},B(l.key),9,j2)]),d("td",null,B(l.label),1)]))),128))])])]))),128))])])):fe("",true)}}),Pe=(e,t)=>{const n=e.__vccOpts||e;for(const[o,i]of t)n[o]=i;return n},H2=Pe(z2,[["__file","CustomUrlHelp.vue"]]),V2='@charset "UTF-8";.ce-menu:not(.sub-item){background:#fffcea}.ce-menu img.ce-menu-icon{float:left;width:12px;height:12px;margin-right:4px}.ce-menu.list-item-hover-menu i.ce-menu-icon.icon-operate{scale:.75;margin-top:-4px}.ce-menu.list-item-hover-menu.ce-menu-parent{position:relative;float:left;cursor:pointer}.ce-menu.list-item-hover-menu.ce-menu-parent:after{content:"";position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background:#2777f8cc;pointer-events:none}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-trigger{padding:0 12px;color:#2777f8}.ce-menu.list-item-hover-menu.ce-menu-parent.ce-menu-has-icon .ce-menu-trigger{padding:0 12px 0 4px}.ce-menu.list-item-hover-menu.ce-menu-parent.ce-menu-has-icon>.ce-menu-icon{margin-right:0;margin-top:3px;width:16px;height:16px;margin-left:6px}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-dropdown{position:absolute;background:#fff;box-shadow:0 1px 5px #2777f866;z-index:99999999;left:0;padding:4px;border-radius:4px;display:none;text-align:center;width:160px}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-dropdown.ce-menu-dropdown-active{display:block}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-dropdown .list-item-hover-menu-sub{margin:2px 0;background:#eee;color:#2877f8;width:100%;border-radius:4px;padding:6px 12px;line-height:12px;box-sizing:border-box}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-dropdown .list-item-hover-menu-sub:hover{background-color:#f3e882}.ce-menu.list-item-hover-menu.ce-menu-parent .ce-menu-dropdown .list-item-hover-menu-sub:after{display:none}.ce-menu.selection-menu.ce-menu-parent{position:relative;float:left;cursor:pointer;padding:0 8px}.ce-menu.selection-menu.ce-menu-parent:after{content:"";position:absolute;top:50%;right:0;width:1px;height:14px;margin-top:-7px;background:#2777f8cc;pointer-events:none}.ce-menu.selection-menu.ce-menu-parent .ce-menu-trigger{color:#2777f8}.ce-menu.selection-menu.ce-menu-parent.ce-menu-has-icon{padding:0 10px 0 0}.ce-menu.selection-menu.ce-menu-parent.ce-menu-has-icon .ce-menu-trigger{padding:0}.ce-menu.selection-menu.ce-menu-parent.ce-menu-has-icon>.ce-menu-icon{margin-right:4px;margin-top:7px;width:16px;height:16px;margin-left:6px}.ce-menu.selection-menu.ce-menu-parent.ce-menu-dropdown-opened .ce-menu-trigger{color:#fff}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown{position:absolute;background:#fff;box-shadow:0 1px 5px #2777f866;z-index:99999999;top:30px;left:0;width:160px;padding:4px;border-radius:4px;display:none;text-align:left}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown.ce-menu-dropdown-active{display:block}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown .selection-menu-sub{color:#2877f8;border-radius:4px;text-align:left;display:block;width:100%;box-sizing:border-box;padding-left:4px;padding-right:4px;font-size:12px;background:transparent;cursor:pointer}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown .selection-menu-sub span{font-weight:400;float:inherit}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown .selection-menu-sub .ce-menu-icon:not(.icon-operate){float:unset}.ce-menu.selection-menu.ce-menu-parent .ce-menu-dropdown .selection-menu-sub:hover{background-color:#f3e882}.ce-menu.dir-context-menu>a img.ce-menu-icon{float:none;width:18px;height:18px;position:absolute;top:50%;left:14px;margin-top:-10px}.ce-menu.dir-context-menu>img.ce-menu-icon{position:absolute;left:14px;top:8px}.ce-menu.dir-context-menu.ce-menu-parent{position:relative;cursor:pointer;padding:6px 0}.ce-menu.dir-context-menu.ce-menu-parent:after{content:">";position:absolute;opacity:.5;right:10px;pointer-events:none}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-trigger{margin-left:43px;color:#2777f8}.ce-menu.dir-context-menu.ce-menu-parent.ce-menu-dropdown-opened{background:#f3e882}.ce-menu.dir-context-menu.ce-menu-parent.ce-menu-dropdown-opened .ce-menu-trigger{color:#1c0ccf}.ce-menu.dir-context-menu.ce-menu-parent.ce-menu-dropdown-opened:after{opacity:0}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-dropdown{position:absolute;background:#fff;box-shadow:0 1px 5px #2777f866;z-index:99999999;top:0;left:100%;width:160px;padding:4px;border-radius:4px;display:none;text-align:left}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-dropdown.ce-menu-dropdown-active{display:block}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-dropdown .dir-context-menu-sub{color:#2877f8;border-radius:4px;text-align:left;display:block;width:100%;box-sizing:border-box;padding:4px 8px;font-size:12px;background:transparent;cursor:pointer}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-dropdown .dir-context-menu-sub span{font-weight:400;float:inherit}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-dropdown .dir-context-menu-sub:hover{background-color:#f3e882}.ce-menu.dir-context-menu.ce-menu-parent .ce-menu-icon{width:18px;height:18px;margin-right:8px}.ce-menu.list-item-context-menu.ce-menu-parent{position:relative;cursor:pointer;padding:6px 0}.ce-menu.list-item-context-menu.ce-menu-parent:after{content:">";position:absolute;opacity:.5;right:10px;pointer-events:none}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-trigger{margin-left:43px;color:#2777f8}.ce-menu.list-item-context-menu.ce-menu-parent.ce-menu-dropdown-opened{background:#f3e882}.ce-menu.list-item-context-menu.ce-menu-parent.ce-menu-dropdown-opened .ce-menu-trigger{color:#1c0ccf}.ce-menu.list-item-context-menu.ce-menu-parent.ce-menu-dropdown-opened:after{opacity:0}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-dropdown{position:absolute;background:#fff;box-shadow:0 1px 5px #2777f866;z-index:99999999;top:0;left:100%;width:160px;padding:4px;border-radius:4px;display:none;text-align:left}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-dropdown.ce-menu-dropdown-active{display:block}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-dropdown .list-item-context-menu-sub{color:#2877f8;border-radius:4px;text-align:left;display:block;width:100%;box-sizing:border-box;padding:4px 8px;font-size:12px;background:transparent;cursor:pointer}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-dropdown .list-item-context-menu-sub span{font-weight:400;float:inherit}.ce-menu.list-item-context-menu.ce-menu-parent .ce-menu-dropdown .list-item-context-menu-sub:hover{background-color:#f3e882}.ce-menu-divider{height:1px!important;display:block!important;background-color:#edeeef!important}.ce-menu-divider:after{display:none!important}.list-item-hover-menu .ce-menu-divider{height:6px!important;background-color:transparent!important}div#js_operate_box.only-icon li[menu] span{display:none}div#js_operate_box.only-icon [menu=delete] i.icon-operate{filter:hue-rotate(120deg)}.list-contents{padding-bottom:300px}.header-name a.ce-open-dir-context-menu{cursor:pointer;background:#f2f4f8;border-radius:4px;padding:0 6px;color:#1890ff;margin-left:10px;line-height:32px}.header-name .ce-btn-create-dir{cursor:pointer;color:#4622ff;margin-left:10px;line-height:32px}.header-name .ce-btn-create-dir i{width:16px;height:16px;margin-right:4px;vertical-align:sub}.header-size a.ce-size-sort{cursor:pointer;background:#f2f4f8;border-radius:4px;padding:0 6px;color:#8c97a0;margin-left:10px}.header-size a.ce-size-sort i{display:none}.header-size a.ce-size-sort.by-desc{background-color:#fdc94a;color:#1a2734}.header-size a.ce-size-sort.by-desc i.icon-sort-desc{display:inline-block}.header-size a.ce-size-sort.by-asc{background-color:#fdc94a;color:#1a2734}.header-size a.ce-size-sort.by-asc i.icon-sort-asc{display:inline-block}.header-size a.ce-size-sort.ce-size-sort-ing{cursor:no-drop}.ce-label-open-cfg i{opacity:.5}.ce-label-open-cfg:hover i{opacity:1}';Et(V2);const q2={label:"当前目录右键菜单",key:"dcontext",hiddenStyles:[{selector:"div.context-menu.menu-upward#js_float_content li[val={key}]",css:"display: none !important;"}],items:[{label:"上传文件",key:"upload"},{label:"新建文件夹",key:"add_dir"}]},W2={label:"选中项菜单",key:"selection",hiddenStyles:[{selector:"div.list-operate.lo-right li[menu={key}]",css:"width: 0 !important; opacity: 0 !important; padding: 0 !important; margin: 0 !important;"}],items:[{label:"置顶",key:"setTop"},{label:"取消置顶",key:"calcelSetTop"},{label:"下载",key:"download"},{label:"移动",key:"move"},{label:"标签",key:"edit_file_label"},{label:"批量标签",key:"batch_edit_file_label"},{label:"重命名",key:"edit_name"},{label:"备注",key:"edit"},{label:"星标",key:"star"},{label:"删除",key:"delete"},{label:"分享",key:"public_share"},{label:"设置共享",key:"setShare"},{label:"取消共享",key:"cancelShare"},{label:"复制",key:"set_copy"},{label:"复制到...",key:"copy_list"},{label:"加密隐藏",key:"hide_file"},{label:"取消加密",key:"show_file"},{label:"评分",key:"file_score"},{label:"设为快捷入口",key:"set_category"},{label:"取消快捷入口",key:"unset_category"},{label:"显示时长",key:"show_play_long"},{label:"修改封面",key:"cover"},{label:"一键排重",key:"same"},{label:"导出目录树",key:"export_dir"},{label:"显示属性",key:"attribute"},{label:"转存至相册",key:"trans_to_album"}]},K2={label:"列表项右键菜单",key:"context",hiddenStyles:[{selector:"div.context-menu.menu-upward li[val={key}] a",css:"display: none !important;"}],items:[{label:"打开文件",key:"view"},{label:"打开文件夹",key:"open_dir"},{label:"下载文件",key:"download"},{label:"下载文件夹",key:"download_dir"},{label:"打包下载",key:"bale_download"},{label:"刷新",key:"refresh"},{label:"复制",key:"set_copy"},{label:"复制到...",key:"copy_list"},{label:"加密隐藏",key:"hide_file"},{label:"取消加密",key:"show_file"},{label:"评分",key:"file_score"},{label:"显示时长",key:"show_play_long"},{label:"取消时长",key:"hide_play_long"},{label:"添加到我听",key:"listen"},{label:"美化",key:"magic"},{label:"修改封面",key:"cover"},{label:"删除封面",key:"del_cover"},{label:"一键排重",key:"same"},{label:"移动",key:"move"},{label:"重命名",key:"edit_name"},{label:"备注",key:"edit"},{label:"显示属性",key:"attribute"},{label:"删除",key:"delete"},{label:"播放器播放",key:"player"},{label:"转存到相册",key:"trans_to_album"},{label:"举报",key:"report"}]},G2={label:"列表项悬浮菜单",key:"hover",hiddenStyles:[{selector:"div.file-opr[rel=menu] a[menu={key}]",css:"width: 0 !important; opacity: 0 !important; padding: 0 !important; margin: 0 !important; overflow: hidden !important;"},{selector:"div.context-menu li[menu={key}] a",css:"display: none !important;"}],items:[{label:"置顶",key:"setTop"},{label:"取消置顶",key:"calcelSetTop"},{label:"星标",key:"star"},{label:"下载文件",key:"download_one"},{label:"下载文件夹",key:"download_dir_one"},{label:"移动",key:"move"},{label:"标签",key:"edit_file_label"},{label:"重命名",key:"edit_name"},{label:"备注",key:"edit"},{label:"删除",key:"delete"},{label:"分享",key:"public_share"},{label:"取消加密",key:"show_file"},{label:"评分",key:"file_score"},{label:"设置共享",key:"setShare"},{label:"取消共享",key:"cancelShare"},{label:"复制",key:"set_copy"},{label:"显示时长",key:"show_play_long"},{label:"修改封面",key:"cover"},{label:"一键排重",key:"same"},{label:"导出目录树",key:"export_dir"},{label:"显示属性",key:"attribute"},{label:"转存至相册",key:"trans_to_album"},{label:"设为快捷入口",key:"set_category"},{label:"取消快捷入口",key:"unset_category"}]},cw=mt.hiddenOfficialMenuKeys;async function dw(){return await Xe.get(cw,[])}async function J2(e,t=false){await Xe.set(cw,e),t&&(unsafeWindow.postMessage({event:ot.officialMenuStyleChange},"*"),unsafeWindow.frames.wangpan?.postMessage({event:ot.officialMenuStyleChange},"*"));}async function Y2(e){const t=[];return e.forEach(n=>{n.items.forEach(o=>{o.hidden&&t.push(`${n.key}_${o.key}`);});}),t}async function fw(){const e=[W2,K2,G2,q2],t=await dw();return e.forEach(n=>{n.items.forEach(o=>{const i=`${n.key}_${o.key}`;t.includes(i)?o.hidden=true:o.hidden=false;});}),e}async function Q2(){const e=await fw(),t=[];return e.forEach(n=>{n.hiddenStyles.forEach(o=>{const i=[];n.items.forEach(s=>{s.hidden&&i.push(o.selector.replace("{key}",s.key));}),i.length&&t.push(i.join(`,
`)+" { "+o.css+" }");});}),t.join(`
`)}async function Zf(){const e="cloud115EnhancerOfficialMenuStyle",t=await Q2();let n=document.getElementById(e);if(n){n.innerHTML=t;return}n=document.createElement("style"),n.id=e,n.innerHTML=t,document.body.appendChild(n);}const pw=mt.list;var hw=(e=>(e.view="view",e.list="list",e.default="_",e))(hw||{});function X2(e){return {sizeSorter:true,sizeSorterDirAttrInterval:100,showFolderSizeButton:true,hoverShowFolderSize:false,showQuickViewButton:true,hoverShowQuickView:false,showInfoOnQuickView:true,showBatchFolderSizeButton:false,showSha1:false,clickSha1WithCtrlToFindRepeat:false,showOpenDirContextMenu:true,hoverShowDirContextMenu:false,showCreateDirButton:false,hideTopCreateButton:false,showCopyButtonOnPathBar:false,showGotoButtonOnPathBar:false,noUpdateDirAfterRename:false,noReloadAfterMove:false,claimSelectedAfterCreateDir:false,noGotoAfterCreateDir:false,fileSelectorDefaultView:"_",followHistoryState:false,showOnlyFileFilter:false,fileFilterExtensions:"",fixShortcut:false,enhanceLocationLinks:true,dragToQuickEntry:false,quickEntryAvoidCovered:false,hideSelectionMenuOnDrag:false,makeMoreImageViewable:false,...e}}async function ls(){const e=X2(),t=await Xe.get(pw,e);return {...e,...t}}async function Z2(e){await Xe.set(pw,e);}var On=(e=>(e[e.asc=0]="asc",e[e.desc=1]="desc",e))(On||{});const mw=`
== 基础操作 ==
快捷键 功能 说明
---------- ---------- -----------------------------------
C 重命名 选中文件后按C,选中多个文件时,只应用到第一个文件
D 删除 选中文件后按D
X 或 M 移动 选中文件后按X或M
S 分享 选中文件后按S
T 标签 选中文件后按T
B 备注 选中文件后按B
Esc 取消 取消选择或关闭右键菜单
Backspace 返回上级目录 需在未选择文件时按Backspace
Delete 删除 与D键功能相同
== 特殊操作 ==
快捷键 功能 macOS下的对应键位
---------- ---------- ------------------
Alt + P 打开传输 Control + P
Alt + I 打开星标 Control + I
Alt + O 打开云下载 Control + O
Alt + D 快捷星标 Control + D
Ctrl + A 全选 Command + A
Ctrl + C 复制到 Command + C
Alt + 左箭头 浏览器历史后退 Option + 左箭头
Alt + 右箭头 浏览器历史前进 Option + 右箭头
== 删除操作详解 ==
快捷键 功能 macOS下的对应键位
---------- ---------- ------------------
D 或 Delete 普通删除 D 或 Delete
Alt + Backspace 免提示删除 Control + Backspace/Delete
== 鼠标操作 ==
[以下快捷键不需要修复也可以使用,这里仅列出供参考]
Shift + 单击 区域选择
Alt + 单击 显示属性弹窗
`;async function eS(){if(window!==window.top)return;async function e(t){const n=kt();n&&n.Core?.FileConfig?.DataAPI&&t(true);}try{return await qo(e,250,3e4)}catch(t){throw new Error(`awaitDataAPI failed:${t.toString()}`)}}async function tS(e){if(!e.showOnlyFileFilter&&!e.fileFilterExtensions)return;const t=vn(),n=ko();!t&&!n||(nS(e,t),oS(e,t,n));}async function nS(e,t,n){if(!e.showOnlyFileFilter)return;const o=Sn.file,i=ze(`
<a href="javascript:;" menu="filter" val="${o}">
<i class="iofl-max"></i><span>仅文件</span>
</a>
`),r=await et(t?'#js_filter_box a[val="other"]':'#js_search_filter_popup a[val="other"]');r.parentNode?.insertBefore(i,r);}async function oS(e,t,n){const o=e.fileFilterExtensions.split(/\s*[,,]+\s*/).map(f=>f.trim().toLowerCase()).filter(f=>f!=="");if(!o.length)return;const i=await Kn("#js_filter_box, #js_search_filter_popup"),s=$('<div class="ce-filter-ext-wrap"></div>');let r,a;const l=f=>{r=new Promise(p=>{a=p;}).then(()=>{i.find(".selected")?.removeClass("selected"),s.find(`a[val="${f}"]`)?.addClass("selected");const p=Ue("#js_filter_type");p&&(p.textContent=`扩展名: ${f}`);});},c=async f=>{f.stopPropagation(),f.preventDefault();const w=f.currentTarget.getAttribute("val")||"";w&&(l(w),await mm(wo({show_dir:Oo.false,suffix:w})));},u=f=>{const p=ze(`
<a href="javascript:;" val="${f}" title="筛选扩展名: ${f}">${f}</a>
`);return p.addEventListener("click",c),p};window.addEventListener("message",async f=>{if(f.data.event===ot.listRendered){if(!r||!a)return;await tb(r)?i.find(".selected[menu]").length&&s.find(".selected")?.removeClass("selected"):a();}});for(const f of o){const p=u(f);s.append(p);}t?i.append(s):n&&i.find(".list-filter").append(s);}async function iS(e){if(window!==window.top||!e.fixShortcut)return;const t="js-main_mode";await rc('a[data-nav="file"]');let n=Ue("#"+t);if(n){console.warn(`[fixShortcut] #${t} found, skip`);return}n=ze(`
<div id="${t}" style="display:none;"><a data-nav="file" class="hover"></a></div>
`),document.body.appendChild(n),window.addEventListener("message",async o=>{if(o.data.event===ot.topDomChanged){const s=Ue("div.dialog-box.window-current > div.dialog-header > h3");if(s&&s.textContent?.includes("快捷键说明")){const r=Ue(".shortkey-info-dialog");if(!r){console.warn("[fixShortcut] .shortkey-info-dialog not found");return}if(r.classList.contains("ce-sid"))return;const a=r.innerHTML,l=ze(`
<pre>${mw.replace(/==/g,"=".repeat(28))}</pre>
`),c=ze(`
<button class="pure-button button-mini button-warning" style="margin-left: 10px;">
切换到官方快捷键说明
</button>
`);c.addEventListener("click",u=>{u.stopPropagation(),u.preventDefault(),r.classList.toggle("ce-sid-active"),r.classList.contains("ce-sid-active")?(c.textContent="切换到官方快捷键说明",r.replaceChildren(l)):(c.textContent="切换到增强版快捷键说明",r.innerHTML=a);}),s.appendChild(c),r.classList.add("ce-sid","ce-sid-active"),r.replaceChildren(l);}}});}async function sS(e){if(window!==window.top||!e.followHistoryState)return;const t=async n=>{const o=Zs("cid"),i=await jt(false);o!==i&&kt().wangpan.Main.Action.Handlers.GotoDir({cid:o});};window.addEventListener("popstate",t);}async function rS(e){Ue("div#js_data_list")?.addEventListener("mousedown",n=>{n.target.classList.contains("ce-inj")&&n.stopPropagation();});}async function aS(e){vn()&&e.dragToQuickEntry&&(ep(),ib("#js_file_category_box",lt(ep,200),{childList:true,subtree:true}),lS(e));}async function ep(){const t=(await et("#js_file_category_box")).querySelectorAll("#js_file_category_box a[cid]");for(let n=0;n<t.length;n++){const o=t[n];o.setAttribute("rel","item"),o.setAttribute("file_type","0"),o.setAttribute("title","可拖动文件到此目录进行移动操作");}}async function lS(e){const t=kt().wangpan?.Main;if(!t)return;const n="ce-show-quick-entry";if(e.hideSelectionMenuOnDrag||document.body.addEventListener("keydown",i=>{i.ctrlKey&&Ue("#js_operate_box")?.classList.toggle(n);}),e.hideSelectionMenuOnDrag){let i=0;const s=500;document.body.addEventListener("mousemove",r=>{const a=Date.now();if(a-i<s)return;i=a;const l=Ue(".popup-move-hint");l&&l.style.display!=="none"?Ue("#js_operate_box")?.classList.add(n):Ue("#js_operate_box")?.classList.remove(n);});}const o=t.List.WriteSelectText;t.List.WriteSelectText=i=>{o(i),Ue("#js_operate_box")?.classList.remove(n);};}async function uS(e){if(!e.makeMoreImageViewable)return;const t=["webp","tiff"],n=kt();n.UPLOAD_CONFIG&&n.UPLOAD_CONFIG[3].upload_type_limit.push(...t);}async function cS(e){if(!e.showCreateDirButton||!vn())return;if(e.hideTopCreateButton){const o=Ue('[data-dropdown-tab="create_new_add_dir"]');o&&(o.style.display="none");}const t=Ue(".header-name");if(!t||t.querySelector(".ce-btn-create-dir"))return;const n=ze(`
<a href="javascript:;" class="ce-btn-create-dir" menu="add_dir">
<i class="file-type tp-folder"></i><span>新建文件夹</span>
</a>
`);t.appendChild(n);}async function dS(e){if(vn()){const t="ce-list-page";document.body.classList.add(t),parent.document.body.classList.add(t);}}function fS(e,t=""){return `${t}code=${e.code} ${e.message}`}async function pS(e){pd(e.fileSelectorDefaultView);}function hS(){return unsafeWindow.localStorage.getItem("FS_view")||"_"}function pd(e){let t=hS();console.log(`[performSetSelectorView] 当前视图: ${t},目标视图: ${e}`);const n=()=>{pd(t),console.warn(`[performSetSelectorView] 回滚到之前的视图: ${t}`);};return unsafeWindow.localStorage.setItem("FS_view",e),n}async function mS(e){if(!e.noUpdateDirAfterRename||window!==window.top)return;let t=true,n="",o=false;const i=kt(),s=Core.FileReNameDG.Show;i.Core.FileReNameDG.__Show=s;const r=i.Core.Dir.Rename;i.Core.Dir.__Rename=r;const a=i.Core.FileConfig.DataAPI.UpdateDir;i.Core.Dir.__UpdateDir=a,i.Core.FileReNameDG.Show=async(...l)=>{n=l[0],o=true,s(...l);},i.Core.Dir.Rename=async(...l)=>{n=l[1],o=false,r(...l);},i.Core.FileConfig.DataAPI.UpdateDir=async l=>{if(t){const c=is();let u=`li[file_id="${n}"]`;const p=await jt()===l.cid;o||(u=`li[cate_id="${n}"]`);const w=async()=>{console.warn("[list handleNoUpdateDirAfterRename] $file is ce-temp-cur-dir"),Y({icon:"warning",text:"重命名的是当前目录,忽略「重命名后不刷新列表」选项"}),fm().attr("titletext",l.dir_name).find("span").text(l.dir_name);};if(p){await w();return}const m=c.find(u);if(m.length){if(m.hasClass("ce-temp-cur-dir")){await w();return}if(Y({icon:"info",text:"启用了「重命名后不刷新列表」选项,不会刷新文件列表"}),m.find(".file-modified span").text("刚刚"),!o){m.attr("cate_name",l.dir_name),m.attr("title",l.dir_name);const y=m.find(".file-name a.name");y.length?(y.attr("title",l.dir_name).text(l.dir_name),y.text(l.dir_name)):console.warn("[list handleNoUpdateDirAfterRename] $name not found");}}else console.warn("[list handleNoUpdateDirAfterRename] $file not found");}else a(l);},window.addEventListener("message",async l=>{if(l.data.event!==ot.topDomChanged)return;const u=Ue("div.dialog-box.window-current > div.dialog-header > h3");if(!u||!u.textContent?.includes("重命名"))return;const f=Ue("div.dialog-box.window-current .file-rename");if(!f){console.warn("[list handleNoUpdateDirAfterRename] .file-rename not found");return}let p=Ue("#cbNoUpdateDir");if(p)return;const w=ze(`
<div style="padding: 0px 20px;">
<label style="font-size: 18px; color: #1890ff;">
<input id="cbNoUpdateDir" type="checkbox" style="width: 22px; height: 22px; vertical-align: sub;"> 重命名后不刷新列表
</label>
<p style="font-size: 12px; color: #ff4949;">在使用当前目录增强菜单项「重命名文件夹」时会忽略该选项。</p>
</div>`);f.insertAdjacentElement("afterend",w),p=Ue("#cbNoUpdateDir"),p&&(p.checked=t,p.addEventListener("change",()=>{t=p.checked;}));});}async function gS(e){if(!e.noReloadAfterMove||window!==window.top)return;let t=true,n=[];const o=kt(),i=o.Core.FileMenu.DoEvent,s=o.Core.FileConfig.DataAPI.Reload;o.Core.FileConfig.DataAPI.Reload=async(...r)=>{if(t){Y({icon:"info",text:"启用了「移动后不刷新文本列表」选项,不会刷新文件列表"});for(let a=0;a<n.length;a++)Jp(n[a][0]);await Mt(500),o.wangpan.Main.List.RecheckFiles([]),o.wangpan.Main.List.updateDataListDom("");}else s(...r);},o.Core.FileMenu.DoEvent=async(...r)=>{n=r[0],i(...r);},window.addEventListener("message",async r=>{if(r.data.event!==ot.topDomChanged)return;const l="ce-no-update-dir-after-move",c=Ue("div.dialog-box.window-current > div.dialog-header > h3");if(!c||!c.textContent?.includes("打开要移动")){const p=Ue(`.${l}`);p&&(p.style.display="none");return}const u=Ue("div.dialog-box.window-current .select-footer");if(!u){console.warn("[list handleNoUpdateDirAfterMove] .select-footer not found");return}let f=Ue("#cbNoReload");if(f){const p=Ue(`.${l}`);p&&(p.style.display="block");}else {const p=ze(`<div class="${l}"/>`),w=`
<div style="padding: 6px 30px 0;">
<label style="font-size: 18px; color: #1890ff;">
<input id="cbNoReload" type="checkbox" style="width: 22px; height: 22px; vertical-align: sub;"> 移动后不刷新列表
</label>
<p style="font-size: 14px; color: #ff4949;">启用该功能并且执行过移动操作后,会影响列表的全选功能,此时如需全选,请先手动刷新列表!</p>
</div>`;p.innerHTML=w,u.insertAdjacentElement("afterend",p),f=Ue("#cbNoReload"),f&&(f.checked=t,f.addEventListener("change",()=>{t=f.checked;}));}});}async function wS(e){if(window!==window.top)return;let t=e.claimSelectedAfterCreateDir,n=e.noGotoAfterCreateDir;const o=kt(),i=o.Core.Dir.Create;o.Core.Dir.Create=async(a,l,c)=>{const u=await so(true);u.length,r(u);const f=async p=>{const w=di().toString(),m={file_name:p.file_name,utime:w,size:"",pick_code:"",file_category:sm.folder,paths:[{file_id:l,file_name:""}]},y=await cm(p.cid,m,um()),v=Dc(true);if(v.length===0){const E=Ci();E.is("ul")?E.append(y):E.find("ul").append(y);}else for(let E=0;E<v.length;E++)E?v.eq(E).remove():v.eq(E).replaceWith(y);await Mt(500),await s(y,p);};i(a,l,async p=>{if(t&&u.length){const w=u.map(m=>m.id);try{const m=await im(p.cid,w);console.log("[list handleCreateDir] moveFiles result:",m),m.state?Y({icon:"success",text:"移动选中的文件到新文件夹成功"}):te.fire({icon:"error",html:`移动选中的文件到新文件夹失败: ${fS(m)}`});}catch(m){console.error("[list handleCreateDir] moveFiles error:",m),te.fire({icon:"error",html:`移动选中文件到新文件夹时出错: ${m.toString()}`});}}c?c(p):n?(await f(p),await Mt(500),o.wangpan.Main.List.RecheckFiles([]),o.wangpan.Main.List.updateDataListDom("")):o.wangpan.Main.GotoDir(1,p.cid,0,"");});};const s=async(a,l)=>{kt().wangpan?.postMessage({event:ot.renderMenus,body:{type:Ie.listItemHover}});const u={id:l.cid,name:l.cname,isDir:true};await gw(e,a,u);},r=async a=>{const l=await et("div.dialog-box.window-current > div.dialog-header > h3");if(!l||!l.textContent?.includes("新建文件夹"))return;const c=Ue("div.dialog-box.window-current .dialog-action");if(!c){console.warn("[list handleCreateDir] .dialog-action not found");return}const u="cbClaim",f="cbBehavior";let p=Ue(`#${u}`),w=Ue(`#${f}`);if(!p||!w){const m=document.createElement("div"),y=`
<div class="ce-handle-create-dir">
<div style="${a.length?"":"display: none;"}">
<label style="color: #1890ff;">
<input id="${u}" type="checkbox" /> 移动选中文件到新文件夹
</label>
<p>创建新文件夹成功后,自动移动当前选中的文件或文件夹到新该文件夹下。</p>
</div>
<div>
<label style="color: #888;">
<input id="${f}" type="checkbox" /> 不跳转到新文件夹
</label>
</div>
</div>`;m.innerHTML=y,c.insertAdjacentElement("beforebegin",m),p=Ue(`#${u}`),p&&(p.checked=t,p.addEventListener("change",()=>{t=p.checked;})),w=Ue(`#${f}`),w&&(w.checked=n,w.addEventListener("change",()=>{n=w.checked;}));}};}async function yS(e){if(!e.enhanceLocationLinks)return;const n=[{pattern:/ac=sha1_repeat/,list:"#js-list",item:'li[rel="item"]',link:'[menu="toFileLocaltion"]',dirIdSrc:"item",dirIdAttr:"parentid",removeAttrs:["menu"],memo:"SHA1查重结果页"},{pattern:/ac=same_start/,list:"#exsame_list_content",item:'li[rel="repeat_list_item"]',link:'[btn="file_path"]',dirIdSrc:"item",dirIdAttr:"parent_id",removeAttrs:["btn"],memo:"一键去重详情页",defaultAction:1},{pattern:/ac=search/,list:"#js_data_list",item:'li[rel="item"]',link:'[menu="open"]',dirIdSrc:"link",dirIdAttr:"cid",removeAttrs:["menu"],memo:"搜索结果页"},{pattern:/ct=rb/,list:"#js_data_list",item:'li[rel="item"]',link:'[menu="toFileLocaltion"]',dirIdSrc:"item",dirIdAttr:"file_id",removeAttrs:["menu"],memo:"回收站"},{pattern:/ac=offline_new_tpl&offline=0/,list:"ul#js-warp",item:"li",link:'[task_popup="goto"] a',dirIdSrc:"item",dirIdAttr:"cid",memo:"最近上传"},{pattern:/ct=public_share&ac=save/,list:"#js-list",item:'li[rel="item"]',link:'[btn="openFileLocaltion"]',dirIdSrc:"link",dirIdAttr:"to_cid",removeAttrs:["btn"],memo:"最近接收"},{pattern:/\/lifetime/,list:"#js-warp",item:".lifefile-wrap",link:'a[btn="path-btn"]',getDirId:(a,l)=>l.closest(a.item).find(".file-name-info").attr(a.dirIdAttr),dirIdAttr:"parent_id",removeAttrs:["btn"],memo:"最近操作"}].find(a=>a.pattern.test(location.href));if(!n)return;console.log("[enhanceLocationLinks]",n,location.href);const o=await Kn(n.list),i="ce-url-done",s=a=>n.getDirId?n.getDirId(n,a):n.dirIdSrc==="link"?a.attr(n.dirIdAttr):a.closest(n.item).attr(n.dirIdAttr),r=a=>{if(a.hasClass(i))return;let l=s(a);l&&(a.attr("href",Bn(l)),a.addClass(i),n.removeAttrs&&n.removeAttrs.map(c=>{a.removeAttr(c);}));};o.on("mouseover",n.link,a=>{const l=$(a.currentTarget);r(l);}),o.on("click",`.${i}`,a=>{const c=$(a.currentTarget).attr("href");if(!c)return true;if(a.preventDefault(),a.stopPropagation(),a.ctrlKey||a.metaKey)Ms(c,{active:false});else {const{defaultAction:u=2}=n,f=kt();u===1?f.open(c,"_blank"):u===2&&(f.location.href=c);}return false});}async function bS(e,t,n){if(!e.showSha1||!n.hash)return;t.addClass("ce-show-sha1");const o=t.find(".file-name"),i="文件SHA1,点击复制"+(e.clickSha1WithCtrlToFindRepeat?" (Ctrl+点击 查找重复文件)":""),s=ze(`
<span class="ce-file-sha1 ce-inj" title="${i}">${n.hash}</span>
`),r=()=>{gt(n.hash),Y({title:"复制SHA1",text:"已复制文件SHA1",icon:"success",timer:1500});};s.addEventListener("click",async a=>{a.preventDefault(),a.stopPropagation(),e.clickSha1WithCtrlToFindRepeat&&(a.metaKey||a.ctrlKey)?rd(n):r();}),o.append(s);}async function gw(e,t,n){const o=[],i=await vS(e,t,n);i&&o.push(i);const s=await xS(e,t,n);if(s&&o.push(s),o.length){const r=t.find(".file-size");if(!r.length){console.warn("[injectToSizeCell] 未找到文件大小元素,跳过:",n,t);return}r.append(...o);}}async function vS(e,t,n){if(!e.showFolderSizeButton||!n.isDir)return null;const o=t.find(".file-size"),i=(e.hoverShowFolderSize?"点击或鼠标悬浮":"点击")+"获取该文件夹大小",s=ze(`
<span class="ce-btn-folder-size ce-inj" title="${i}">大小</span>
`);let r;const a=async l=>{l.preventDefault(),l.stopPropagation();try{const c=await Nt(n.id);o.find("span:eq(0)").text(c.size);const{folder_count:u=0,count:f=0}=c;let p=u>0?`目录${u}`:"";if(p+=f>0?(p!==""?",":"")+`文件${f}`:"",p!==""){let w=o.find(".ce-s-d");w.length||(w=$('<div class="ce-s-d"></div>'),o.append(w)),w.text(p);}t.addClass("ce-size-got"),Y({title:"获取大小",text:"已获取文件夹大小",icon:"success",timer:1500});}catch(c){console.error(c),Y({title:"获取大小失败",text:c.toString(),icon:"error"});return}};return s.addEventListener("click",async l=>{r&&clearTimeout(r),await a(l);}),e.hoverShowFolderSize&&(s.addEventListener("mouseenter",async l=>{r&&clearTimeout(r),r=setTimeout(async()=>{await a(l);},200);}),s.addEventListener("mouseleave",()=>{r&&clearTimeout(r);})),s}let Ls;async function tp(e,t,n,o){Ls&&clearTimeout(Ls),o.preventDefault(),o.stopPropagation();const i=pd(hw.list),r='快速查看 <span class="ce-label ce-label-warning">只读</span><a id="ce-qv-open" href="javascript:void(0)" style="font-size: 12px; margin-left: 10px; color: #00f; font-weight: normal;">新页面打开</a>',a=kt(),l=a.Core;l.FileSelectDG.Open(c=>{i();},{nf:0,title:r,init_cid:n.id,show_record:1,show_copy:1,btn_txt:"关闭",select_txt:"查看",not_select_file:"xxx"});try{(await et("#ce-qv-open",200,3e4,a.window.document)).addEventListener("click",()=>{const u=l.FileSelectDG.GetBackPaths(),f=u[u.length-1].cid;window.open(Bn(f),"_blank");});}catch(c){Y({icon:"error",text:`未找到"新页面打开"按钮!${c.toString()}`});}}async function xS(e,t,n){if(!e.showQuickViewButton||!n.isDir)return null;const o=ze(`
<span class="ce-btn-folder-size ce-inj" title="快速查看该目录子文件列表">查看</span>
`);return o.addEventListener("click",i=>{tp(e,t,n,i);}),e.hoverShowQuickView&&(o.addEventListener("mouseenter",async i=>{Ls=setTimeout(async()=>{await tp(e,t,n,i);},300);}),o.addEventListener("mouseleave",()=>{Ls&&clearTimeout(Ls);})),o}async function _S(e){if(!e.showBatchFolderSizeButton)return;const t="ce-injected-s",n="ce-s-ing",o=Ue(".header-size");if(!o||o.classList.contains(t))return;const i=o,s=ze(`
<a class="btn-sort ce-size-sort" title="显示当前目录下已加载的子文件夹的大小">
<span>大小</span>
</a>
`);s.addEventListener("click",async r=>{if(r.preventDefault(),r.stopPropagation(),!s.classList.contains(n))try{s.classList.add(n),await hd(!1,!1,!1);}catch(a){console.error(a),Y({title:"获取子文件夹大小失败",text:a.toString(),icon:"error"});}finally{s.classList.remove(n);}}),i.appendChild(s),i.classList.add(t);}async function CS(e){if(!e.sizeSorter)return;const t="ce-injected",n="ce-size-sort-ing",o=Ue(".header-size");if(!o||o.classList.contains(t))return;const i=o,s=ze(`
<a class="btn-sort ce-size-sort" title="显示当前目录下已加载的子文件夹的大小,然后按大小排序">
<span>排序</span>
<i icon_rel="file_size" class="icon-sort-asc"></i>
<i icon_rel="file_size" class="icon-sort-desc"></i>
</a>
`);s.addEventListener("click",async r=>{if(r.preventDefault(),r.stopPropagation(),s.classList.contains("el-size-sort-ing"))return;const a="by-desc",l="by-asc";try{s.classList.add(n);let c=On.desc;s.classList.contains(a)?c=On.asc:c=On.desc;const u=await jt(!1);await xa(u,c,!1,!1),c===On.asc?(s.classList.remove(a),s.classList.add(l)):(s.classList.remove(l),s.classList.add(a));}catch(c){console.error(c),Y({title:"排序失败",text:c.toString(),icon:"error"});}finally{s.classList.remove(n);}}),i.appendChild(s),i.classList.add(t);}async function hd(e,t,n=false){await ls();const o=await jt(false),i=Ci(),s=await so(false);console.log("[items]",s),Y({html:"正在获取子文件夹大小...",icon:"info",position:"top-end",timer:0}),te.showLoading();for(let r=0;r<s.length;r++){const a=s[r];if(!a.isDir)continue;const l=i.find(`li[cate_id="${a.id}"]`);if(!l.length)continue;const c=l.find(".file-size");if(!c.length){console.warn("[prepareItemSize] 未找到文件大小元素,跳过:",a);continue}const u=c.find("span:eq(0)");if(u.text()!==""&&!n)continue;const f=await Nt(a.id);te.update({html:`[${r+1} / ${s.length}] 正在获取子文件夹大小:${a.name}`}),u.text(f.size);const{folder_count:p=0,count:w=0}=f;let m=p>0?`目录${p}`:"";if(m+=w>0?(m!==""?",":"")+`文件${w}`:"",m!==""){let y=c.find(".ce-s-d");y.length||(y=$('<div class="ce-s-d"></div>'),c.append(y)),y.text(m);}l.addClass("ce-size-got");}return te.hideLoading(),e?await kS(o):Y({html:"已获取子文件夹大小",icon:"success",timer:1500,position:"top-end"}),o}async function xa(e,t,n,o){const i=Ci();i.find('li[file_type="0"]:not(.ce-size-got)').length>0&&await hd(n,o,false);const r=i.is("ul")?i:i.find("ul"),a=r.children("li").toArray();a.sort(function(c,u){const f=$(c),p=$(u),w=Ad(f.find(".file-size span:eq(0)").text()),m=Ad(p.find(".file-size span:eq(0)").text());return t===On.asc?w-m:m-w});const l=$("<ul></ul>");$.each(a,function(c,u){l.append(u);}),r.replaceWith(l),n?te.update({title:"排序完成",html:`已完成排序: ${t===On.asc?"小 > 大":"大 > 小"}`,icon:"success"}):Y({html:`已完成排序: ${t===On.asc?"小 > 大":"大 > 小"}`,icon:"success",timer:1500,position:"top-end"});}async function kS(e){te.fire({toast:true,title:"获取子文件夹大小",html:"获取子文件夹大小完成",icon:"success",showConfirmButton:true,confirmButtonText:"大 > 小",confirmButtonColor:"#3085d6",showDenyButton:true,denyButtonText:"小 > 大",denyButtonColor:"#d33",position:"top-end",showCloseButton:true,closeButtonAriaLabel:"关闭",preConfirm:async()=>(console.log("preConfirm"),xa(e,On.desc,true,true),false),preDeny:async()=>(console.log("preDeny"),xa(e,On.asc,true,true),false)});}async function SS(){const e=await ls();e.sizeSorter&&e.showBatchFolderSizeButton&&Wy(".list-header .header-size { min-width: 142px !important;}"),await Nu();const t=await et("#js_data_list");$S(),new MutationObserver(async([o])=>{o.type==="childList"&&(window.postMessage({event:ot.listRendered}),await Nu());}).observe(t,{childList:true});}async function $S(){if(window.top===window.self)return;const e=Ue("#js_pagination_box");if(!e){console.warn("[list.handleLoadAll] 未找到「#js_pagination_box」元素");return}function t(n){Ue("#js_data_list .list-contents > ul > li")&&n(true);}e.addEventListener("click",async n=>{n.preventDefault(),n.stopPropagation();const o=n.target;let i=false;if((o.getAttribute("menu")==="load_all_file"||o.closest('[menu="load_all_file"]'))&&(i=true),!i)return;console.log("[list.handleLoadAll] 点击了「加载全部」按钮"),await qo(t,500,3e5);const s=Ue("#js_data_list .list-contents > ul");s?.removeAttribute("ce-done2");const r=Ue("#js_data_list");r&&r.querySelectorAll(".list-contents > ul:not([ce-done2]) > li").length&&(s?.setAttribute("ce-done2",""),await Nu());});}async function Nu(){const e=await ls();CS(e),_S(e),cS(e),AS(e),ko();const t=Dc(false);for(let n=0;n<t.length;n++){const o=t.eq(n),i=mn(o);await ES(e,o,i);}}async function ES(e,t,n,o){await bS(e,t,n),await gw(e,t,n);}async function AS(e){if(!e.showOpenDirContextMenu||await jt(false)===""||ko())return;const n=Ue(".header-name");if(!n||n.classList.contains("ce-injected"))return;const o=n,i=document.createElement("a");i.classList.add("ce-open-dir-context-menu"),i.title="打开当前目录的功能菜单",i.innerHTML="<span>目录功能菜单</span>";let s;const r=async a=>{s&&clearTimeout(s),a.preventDefault(),a.stopPropagation();try{const l=kt(),c=await jt(!1),u=i.getBoundingClientRect();l.Core.FileMenu.FileRight("1",c,!1,u.x,u.y+8,void 0,!1);}catch(l){console.error(l);}};i.addEventListener("click",r),e.hoverShowDirContextMenu&&(i.addEventListener("mouseenter",async a=>{s=setTimeout(async()=>{await r(a);},300);}),i.addEventListener("mouseleave",()=>{s&&clearTimeout(s);})),o.appendChild(i),o.classList.add("ce-injected");}let PS=[];async function ww(e,t,n){n.stopPropagation(),n.preventDefault();try{const o=await Wo(!1,1e3);if(!o)return;const i=mn(o),s=await Qt(),r=await Os(i,e,s);if(e.key==="p_builtin_115plus"){const a=n.metaKey||n.ctrlKey;ha(void 0,i.id,a);return}if(Lc(r)){const l=(await so(!1)).find(c=>c.playDuration&&c.playDuration>0);Rg(i.id,l);return}if(console.log("[play url]",r),!r)throw new Error("无法获取有效的播放链接!");window.open(r,"_blank","noopener noreferrer");}catch(o){console.error(o),Y({title:"播放失败",text:o.toString(),icon:"error"});}}async function IS(e,t){const n=[];for(const o of t){const i=Da(e,{key:`_ce_p_${o.key}`,label:o.label,icon:o.icon,title:"播放当前目录"+(o.memo?` - ${o.memo}`:""),onClick:async(s,r)=>{ww(o,s,r);}});n.push(i);}return n}async function DS(){const e=await ut(),t=await sd(e),{memo:n=""}=t.defaultPlayer;return new Jt({key:"_play_with_x",label:t.defaultPlayer.label,icon:t.noRealDefault?"icon-operate ifo-video-play":t.defaultPlayer.icon,title:"播放当前目录"+(n?` - ${n}`:""),onClick:async(o,i)=>{await o.closeMenu(),!t.noRealDefault&&ww(t.defaultPlayer,o,i);},subItems:[...await IS(ac,t.customUrlItems)]})}async function LS(){return new Jt({key:"_rename_dir",label:"重命名文件夹",icon:"icon-operate ifo-rename",title:'重命名当前目录,支持"高级模式"',onClick:async(e,t)=>{await e.closeMenu();const n=await jt(true);if(!n)return;const i=fm().attr("titletext")?.trim();if(!i){Y({icon:"error",text:"无法获取当前目录名称"});return}unsafeWindow.Core.Dir.Rename("1",n,i);}})}async function TS(){return new Jt({key:"_dc_view_in_clouddrive",label:"在CloudDrive中查看",icon:"icon-operate ifo-exportdir",title:"在CloudDrive2 Web页面中查看",onClick:async(e,t)=>{t.stopPropagation(),t.preventDefault(),await e.closeMenu();const n=await jt(false);if(!n||n==="0"){await ma({id:"0",name:"根目录",isDir:true});return}const o=await Wo(false,1e3);if(!o)return;const i=mn(o);await ma(i);}})}async function MS(){return new Jt({key:"_move_dir",label:"移动文件夹",icon:"icon-operate ifo-move",title:"移动当前文件夹到其他位置",onClick:md("move")})}async function OS(){return new Jt({key:"_del_dir",label:"删除文件夹",icon:"icon-operate ifo-remove",title:"删除当前文件夹",onClick:async(e,t)=>{await e.closeMenu();const n=await Wo();if(!n)return;const o=is();unsafeWindow.Core.FileAPI.DeleteFile([n],i=>{n.remove(),o.find("#js_top_header_file_path_box .top-file-path > .file-path").children(":last").prev()[0].click();},true);}})}function md(e,t){return async(n,o)=>{await n.closeMenu();const i=await Wo();i&&await j0(i,e);}}async function BS(){return new Jt({key:"_copy_dir",label:"复制文件夹",icon:"icon-operate ifo-copy",title:"复制当前文件夹",onClick:md("set_copy")})}async function RS(){return new Jt({key:"_copy_dir_to",label:"复制文件夹到",icon:"icon-operate ifo-copyto",title:"复制当前文件夹到其他位置",onClick:md("copy_list")})}async function FS(e){const{namePathConfig:t}=e,n=[{b:t.copyFullName,v:()=>Yl("完整名称",ht.full)},{b:t.copyId,v:()=>Yl("ID",ht.id)},{b:t.copyPickCode,v:()=>Yl("PickCode",ht.pickCode)},{b:t.copyUnixPath,v:()=>np("路径(Unix)",Mn.unixPath)},{b:t.copyWinPath,v:()=>np("路径(Windows)",Mn.winPath)},{b:t.viewInCloudDrive,v:()=>TS()}],o=await Promise.all(n.filter(i=>i.b).map(i=>i.v()));return new Jt({key:"_dir_copy_names",label:"名称路径",icon:"icon-operate ifo-copy",title:"获取当前目录的名称、路径等信息",subItems:o})}async function NS(e,t){const n=[...(await ur()).filter(s=>s.enabled),...PS.filter(s=>s.enabled),...(await ki(to.search)).filter(s=>s.enabled)];let o=n.find(s=>s.key===t.defaultSearch);o||(o=n.find(s=>s.key===cr));const i=async s=>{const r=await Wo(false,1e3);if(!r)throw new Error("无法获取当前目录项");return mn(r)};return new Jt({key:"_d_search_with_name_d",label:"搜索",icon:o?.icon||"",title:o?.memo||"使用名称搜索",onClick:async(s,r)=>{r.stopPropagation(),r.preventDefault(),await s.closeMenu(),o&&await hr(s,o,r,t,i,Ie.dirContextSub);},subItems:[...await ol(ac,n,i,Ie.dirContextSub)]})}async function US(){return new Jt({key:"view_dir_attribute",label:"查看属性",icon:"icon-operate ifo-prop",onClick:async(e,t)=>{await e.closeMenu();const n=await Wo();n&&kt().Core.FileAPI.getAttribute(n,{showPlayLongChange:function(o,i,s){O0().CACHE.FileMain.List.ResetPlayLongText(o,i,s);}},function(){console.log("查看属性 ok");});}})}async function Yl(e,t){return new Jt({key:`_d_copy_self_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制当前目录的${e}`,onClick:async(n,o)=>{await n.closeMenu();const i=await Wo(false,1e3);if(!i)return;const s=mn(i),r=await ut(),a=await Qt(),c=mr([s],t,u=>r.cloudDriveFormalization?un(a,u):u);gt(c.join(`
`)),Y({title:`复制${e}`,text:`已复制当前目录的${e}`,icon:"success"});}})}async function np(e,t){return new Jt({key:`_d_copy_path_${t}`,label:e,icon:"icon-operate ifo-copy",title:"复制当前目录路径",onClick:async(n,o)=>{await n.closeMenu();const i=await Wo(false,1e3);if(!i)return;const s=mn(i),r=await ut(),a=await Qt(),c=await Ng([s],t,u=>r.cloudDriveFormalization?un(a,u):u);gt(c.join(`
`)),Y({title:`复制${e}`,text:`已复制当前目录的${e}`,icon:"success"});}})}async function jS(){return new Jt({key:"show_sub_folder_size",label:"子文件夹大小",title:"显示当前目录下已加载的所有子文件夹的大小",icon:"icon-operate ifo-prop",onClick:async(e,t)=>{await e.closeMenu(),await hd(false,false,false);}})}async function zS(){return new Jt({key:"show_sub_folder_size_sort",label:"子文件夹大小+排序",title:"显示当前目录下已加载的所有子文件夹的大小,并进行排序",icon:"icon-operate ifo-prop",onClick:async(e,t)=>{await e.closeMenu(),await xa("",On.desc,true,true);}})}async function HS(e){const{[Ie.dirContext]:t}=e;if(!t.enabled)return;const n=[...t.topLevelMenus,"play","copyNames","search"],o=[],i=[],s=new Map;t.rename&&s.set("rename",await LS()),t.delete&&s.set("delete",await OS()),t.play&&s.set("play",await DS()),t.copyNames&&s.set("copyNames",await FS(t)),t.search&&s.set("search",await NS(t,e)),t.move&&s.set("move",await MS()),t.viewProp&&s.set("viewProp",await US()),t.showSubFolderSize&&s.set("showSubFolderSize",await jS()),t.showSubFolderSizeAndSort&&s.set("showSubFolderSizeAndSort",await zS()),t.copy&&s.set("copy",await BS()),t.copyTo&&s.set("copyTo",await RS());const r=s.keys();for(const l of r){const c=s.get(l);c&&(n.includes(l)?o.push(c):i.push(c));}i.length>1?o.push(new Jt({key:"_dir_more",label:"更多",icon:"icon-operate ifo-open",subItems:i})):i.length===1&&o.push(i[0]),await new gb({items:o,siblingSelector:'[val="upload"]',position:yo.before}).inject(),$(".ce-menu-parent .ce-menu-trigger").on("mouseover",function(){$(this).find(".ce-menu-dropdown").show();}).on("mouseout",function(){$(this).find(".ce-menu-dropdown").hide();});}async function VS(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Ii("完整名称",ht.full)),t.copyPureName&&n.push(await Ii("不含后缀名称",ht.pure)),t.copyFullName&&n.push(await Ii("完整名称(去重)",ht.fullUnique)),t.copyPureName&&n.push(await Ii("不含后缀名称(去重)",ht.pureUnique)),t.copyId&&n.push(await Ii("ID",ht.id)),t.copyPickCode&&n.push(await Ii("PickCode",ht.pickCode)),t.copySha1&&n.push(await ip(false)),t.copySha1WithName&&n.push(await ip(true)),t.copyUnixPath&&n.push(await op("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await op("路径(Windows)",Mn.winPath)),t.viewInCloudDrive&&n.push(await qS()),new nr({key:"_lc_copy_names_paths",label:"名称路径",icon:"icon-operate ifo-copy",showIcon:false,title:"复制文件的名称路径",subItems:n})}function dl(){const e=V0();return !e||!e.n?(Y({text:"无法获取当前文件信息",timer:1200}),null):_i(e)}async function Ii(e,t){return new nr({key:`_lc_copy_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制${e}`,onClick:async(n,o)=>{await n.closeMenu();const i=dl();if(!i)return;const s=await ut(),r=await Qt(),l=mr([i],t,c=>s.cloudDriveFormalization?un(r,c):c);gt(l.join(`
`)),Y({title:`复制${e}`,text:`已复制${e},CloudDrive文件名规范: ${s.cloudDriveFormalization?"是":"否"}`,icon:"success"});}})}async function op(e,t){return new nr({key:`_lc_copy_path_${t}`,label:e,icon:"icon-operate ifo-copy",title:"复制路径",onClick:async(n,o)=>{await n.closeMenu();const i=dl();if(!i)return;const s=await ut(),r=await Qt();let a=await Va(i);s.cloudDriveFormalization&&(a=a.map(u=>un(r,u,true)),i.name=un(r,i.name,true));let l=a.join("/");const c=await il(i,l,t);gt(c),Y({title:"复制路径",text:`已复制文件路径,CloudDrive文件名规范: ${s.cloudDriveFormalization?"是":"否"}`,icon:"success"});}})}async function ip(e){return new nr({key:"_lc_copy_sha1",label:"文件sha1"+(e?"(带文件名)":""),icon:"icon-operate ifo-copy",title:"复制文件sha1"+(e?"。格式为 xxx//yyy,xxx为sha1,yyy为文件名":""),onClick:async(t,n)=>{await t.closeMenu();const o=dl();if(!o)return;if(o.isDir){Y({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const i=o.hash+(e?`//${o.name}`:"");gt(i),Y({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function qS(){return new nr({key:"_lc_view_in_clouddrive",label:"在CloudDrive中查看",icon:"icon-operate ifo-exportdir",title:"在CloudDrive2 Web页面中查看",onClick:async(e,t)=>{await e.closeMenu();const n=dl();n&&await ma(n);}})}async function WS(e){const{[Ie.listItemContext]:t}=e;if(!t.enabled)return;const n=[];t.copyNames&&n.push(await VS(t)),new yb({items:n,position:yo.after,siblingSelector:'[val="refresh"]',useObserver:true,observeTarget:document.body,disposeObserverAfterInjection:false}).inject();}async function KS(e){const{[Ie.listItemHover]:t}=e;if(!t.enabled)return;const n=[];t.openInNewTab&&n.push(await $k()),t.search&&n.push(await Ck(e)),t.play&&n.push(await _k()),t.copyNames&&n.push(await Sk(t)),t.findRepeat&&n.push(await Ek()),new Pk({items:n,position:yo.after,siblingSelector:'[menu="move"], [menu="delete"]'}).inject();}let GS=[];async function JS(e){const t=[];return !ko()&&e.moveToSelfNameDir&&t.push(await YS()),e.openInNewTab&&t.push(await QS()),e.openParent&&t.push(await XS()),t.length?new sl({key:"_s_batch",label:"批量操作",icon:"icon-operate ifo-batch",title:"对选中的文件进行批量操作",subItems:t}):null}async function YS(){return new _o({key:"_s_smart_mkdir",label:"同名目录",icon:"icon-operate ifo-move",title:"将选中的文件移动到同名目录",onClick:await fk()})}async function QS(){return new _o({key:"_s_open_in_new_tab",label:"打开目录",icon:"icon-operate ifo-opendir",title:"批量打开选中的目录",onClick:async(e,t)=>{const n=(await so(true)).filter(i=>i.isDir);if(!n.length){Y({title:"请选择目录",icon:"error"});return}const o=n.map(i=>Bn(i.id));await nl(o,true);}})}async function XS(){return new _o({key:"_s_open_parent",label:"打开所在目录",icon:"icon-operate ifo-opendir",title:"批量打开选中文件的所在目录",onClick:async(e,t)=>{const n=await so(true);if(!n.length){Y({title:"请选择文件",icon:"error"});return}const o=new Set;for(const s of n)s.parentId&&o.add(s.parentId);const i=Array.from(o).map(s=>Bn(s));await nl(i,true);}})}async function ZS(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Di("完整名称",ht.full)),t.copyPureName&&n.push(await Di("不含后缀名称",ht.pure)),t.copyFullName&&n.push(await Di("完整名称(去重)",ht.fullUnique)),t.copyPureName&&n.push(await Di("不含后缀名称(去重)",ht.pureUnique)),t.copyId&&n.push(await Di("ID",ht.id)),t.copyPickCode&&n.push(await Di("PickCode",ht.pickCode)),t.copySha1&&(n.push(await sp(false)),n.push(await sp(true))),t.copyUnixPath&&n.push(await rp("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await rp("路径(Windows)",Mn.winPath)),new sl({key:"_s_copy_names_paths",label:"名称路径",icon:"icon-operate ifo-copy",showIcon:false,title:"复制选中文件的名称路径",onClick:async(o,i)=>{},subItems:n})}async function sp(e,t){return new _o({key:"_s_copy_sha1"+(e?"_u":""),label:"📋 文件sha1"+(e?",去重":""),icon:"icon-operate ifo-copy",showIcon:false,title:"复制文件sha1。格式为 xxx//yyy,xxx为sha1,yyy为文件名",onClick:async(n,o)=>{const i=await so(true),s=new Set,r=[];for(const a of i)a.hash&&(e&&s.has(a.hash)||(s.add(a.hash),r.push(a.hash+`//${a.name}`)));gt(r.join(`
`)),Y({title:"复制文件sha1",text:`已复制选中文件sha1。数量:${r.length}`,icon:"success",timer:1e3});}})}async function Di(e,t){return new _o({key:`_s_copy_info_${t}`,label:`📋 ${e}`,icon:"icon-operate ifo-copy",showIcon:false,title:`复制${e}`,onClick:async(n,o)=>{const i=await so(true);if(!i.length)return;const s=await ut(),r=await Qt(),l=mr(i,t,c=>s.cloudDriveFormalization?un(r,c):c);gt(l.join(`
`)),Y({title:`复制${e}`,text:`已复制选中文件信息。数量:${l.length},复制类型:${e},CloudDrive文件名规范: ${s.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function rp(e,t){return new _o({key:`_s_copy_path_${t}`,label:`📂 ${e}`,icon:"icon-operate ifo-copy",showIcon:false,title:e,onClick:async(n,o)=>{const i=await so(true);if(!i.length)return;let s=[];Y({text:"正在获取已选文件路径...",timer:0}),te.showLoading();const r=await ut();try{const a=await Qt(),l=r.cloudDriveFormalization?c=>un(a,c):c=>c;s=await Ng(i,t,l),te.close();}catch(a){console.error(a),Y({text:`获取已选文件路径失败: ${a}`,timer:6e4,icon:"error"});return}finally{te.hideLoading();}gt(s.join(`
`)),Y({title:"复制路径",text:`已复制选中文件的路径。数量:${s.length},复制类型:${e},CloudDrive文件名规范: ${r.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function e$(e,t=za.vod){if(e=e.filter(s=>s.transcoded),!e.length){Y({title:"没有可播放的视频",icon:"error"});return}const n=Date.now().toString(),o=unsafeWindow.open(hm("xxx",t),n);await Mt(1e3);let i=10;for(;i>0;)o?.postMessage({event:"play",body:{id:n,files:e}},`https://${t}`),await Mt(1e3),i--;}async function t$(){const e=await ut(),t=await sd(e);return new sl({key:"_s_play_with_x_d",label:t.defaultPlayer.label,icon:t.defaultPlayer?.icon||"",title:t.defaultPlayer.memo,onClick:async(n,o)=>{console.log("[selectionMenuPlayWithDropdown] me",n),!t.noRealDefault&&yw(t.defaultPlayer,n,o);},subItems:[...await o$(_o,t.customUrlItems),new Lk({}),new _o({label:"关于选中播放",onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault(),Y({title:"关于选中播放",html:`
<p>点「在线播放」会打开115播放页面播放选中的视频。</p><br>
<p>如果是点击调用本地播放器播放:<p>
<p>原理: 生成m3u8文件,上传m3u8文件到115,调用播放该m3u8的CloudDrive2直链。<p>
<p>设定: m3u8默认放在网盘根目录下的「.ce-m3u8-temp」目录下,不会自动清理。<p>
<p>作为使用者需做的: 在CloudDrive2里设置「.ce-m3u8-temp」目录缓存时间为1秒。</p>
<p class="text-info" style="font-size:12px;">这个目录会在首次播放时自动创建,如果想提前设置目录缓存时间,可以自己创建。另外,可以在「设置 - 菜单设置 - 全局设置」中修改「M3U8临时目录」以设置目录位置。</p>
<br><p class="text-danger">导致播放失败的可能: CloudDrive2目录缓存工作异常,导致请求不到m3u8文件。</p>
`,showConfirmButton:true,width:600,timer:18e5});},icon:"data-text:❓"})]})}async function n$(e){if(e=e.trim(),!e)throw new Error("m3u8临时目录路径为空!");const t=await J0(e);if(t.id)return console.log("[ensureM3u8TempDir] result:",t),t.id;throw new Error("创建m3u8临时目录失败!")}async function yw(e,t,n){n.stopPropagation(),n.preventDefault();const o=await ut();try{let i=await so(!0);if(t.key==="_ce_p_p_builtin_online"||e.key==="p_builtin_online"){await e$(i);return}if(e.key==="p_builtin_115plus")return ha(i);if(i=i.filter(p=>p.isDir||p.isVideo),i.length===0){Y({title:"播放失败",text:"没有可以播放的目录或媒体文件!",icon:"error",timer:2e3});return}const s=await Qt();if(i.length===1){const p=await Os(i[0],e,s);window.open(p,"_blank","noopener noreferrer");return}const r=await n$(o.m3u8TempDir),a=await G0(i,r);console.log("[selection.buildPlayMenuItems generatePlaylistOn115]",a);const l=a.data,c={id:l.file_id,name:l.file_name,parentId:l.cid,sizeBytes:l.file_size,pickCode:l.pick_code,isDir:!1,isFile:!0},u=ia([o.m3u8TempDir,c.name],Mo.unix);Y({title:"检查m3u8文件",text:"正在检查m3u8文件是否已准备就绪...",icon:"info",timer:0}),te.showLoading(),await y0(s,u,!0,1e3,6e4),Y({icon:"success",text:"m3u8文件已准备就绪,即将开始播放..."});const f=await Os(c,e,s);window.open(f,"_blank","noopener noreferrer");}catch(i){console.error(i),Y({title:"播放失败",text:i.toString(),icon:"error",timer:6e4,showConfirmButton:true});}finally{te.hideLoading();}}async function o$(e,t){const n=[];for(const o of t){const i=Da(e,{key:`_ce_p_${o.key}`,label:o.label,icon:o.icon,title:o.memo,onClick:async(s,r)=>{yw(o,s,r);}});n.push(i);}return n}async function i$(e,t){const n=[...(await ur()).filter(s=>s.enabled),...GS.filter(s=>s.enabled),...(await ki(to.search)).filter(s=>s.enabled)];let o=n.find(s=>s.key===t.defaultSearch);o||(o=n.find(s=>s.key===cr));let i;return e.searchOpenType!==Tu.undefined&&(i=e.searchOpenType===Tu.background),new sl({key:"_s_search_d",label:"搜索",icon:o?.icon||"",title:"批量搜索"+(o?.memo?" - "+o.memo:""),onClick:async(s,r)=>{r.stopPropagation(),r.preventDefault(),o&&await hr(s,o,r,t,void 0,Ie.selection,i);},subItems:[...await ol(_o,n,void 0,Ie.selectionSub,i)]})}async function s$(e){if(!e.hideSelectionMenuLabel)return;const t=await et("#js_operate_box");new MutationObserver(async([o])=>{if(o.type==="childList"){const i=t.querySelectorAll("li[menu]");for(let s=0;s<i.length;s++){const r=i[s],a=r.textContent;r.setAttribute("title",a||"");}}}).observe(t,{childList:true}),t.classList.add("only-icon");}async function r$(e){const{[Ie.selection]:t}=e;if(!t.enabled)return;const n=[],o=await JS(t);o&&n.push(o),t.copyNames&&n.push(await ZS(t)),t.play&&n.push(await t$()),t.search&&n.push(await i$(t,e)),new Tk({items:n,position:yo.before,siblingSelector:"ul li"}).inject();}async function a$(e,t){if(t||(t=await ut()),!t||!t[Ie.shareListItemHover]?.enabled)return;const i=(r=>{let a="";for(const l of r)l.enabled&&(a+=l.body);return a})([{label:"_",body:'<a href="javascript:;" menu="_s_null_" style="display:none"><span>_</span></a>',enabled:true}]);(()=>{const r="ce-menu-init",a=sb(`#js-list li:not(.${r})`);for(let l=0;l<a.length;l++){const c=a[l];let u=c.querySelector(".file-opr");u?(c.classList.add(r),u.innerHTML+=i):(u=ze(`<div class="file-opr ${r}" rel="menu"></div>`),u.innerHTML=i,c.appendChild(u));}})();}async function bw(e){let t=e.pageWidth.trim();const n="ce-share-page-width";let o=ob(`#${n}`,`<style id="${n}"></style>`);t=/^\d+$/.test(t)?`${t}px`:t,o.innerHTML=t?`div.wrap-sharing { width: ${t} !important; }`:"",document.contains(o)||document.head.appendChild(o);const i=!!t&&!/px$/.test(t);l$(i);}function vw(){const e=Ue(".top-vflow");if(!e)return;const t=Ue('a[btn="save"]');if(!t)return;const n=t.getBoundingClientRect(),o=Ue("#save_directly");o&&(o.style.left=n.left-e.getBoundingClientRect().left+"px");}const ap=lt(vw,200);let Mr=false;function l$(e){setTimeout(vw,500),e&&!Mr?(window.addEventListener("resize",ap),Mr=true):!e&&Mr&&(window.removeEventListener("resize",ap),Mr=false);}async function u$(e){if(!e.autoConfirmPassword)return;let t=Zs("password");if(!t||(t=t.replace(/(\?.*)?$/,""),(await et(".form-decode .form-item input")).value!==t))return;(await et(".form-decode .submit a.button")).click(),Y({icon:"success",text:"自动确定访问码",timer:1e3,position:"top-right"});}async function c$(e){const t=await et("#js-list"),n=await ut(),o=s=>{Ql(e),a$(e,n);};new MutationObserver(o).observe(t,{childList:true}),t.addEventListener("mousedown",lt(s=>{Ql(e);},200));try{(await et('[btn="check_all"]')).addEventListener("mousedown",lt(r=>{Ql(e);},200));}catch(s){console.error(s);}}function Gs(e){e instanceof HTMLElement||(e=e[0]);const t=e.getAttribute("fid"),n=e.getAttribute("cid"),o=!!t;return {id:t||n,name:e.getAttribute("file_name"),sizeBytes:parseInt(e.getAttribute("file_size")||"0"),isFile:o,isDir:!o,snapId:e.getAttribute("snap_id"),parentId:o?n:"",hash:e.getAttribute("sha1")||"",checked:e.classList.contains("selected")}}function d$(e){const t={num:0,filesNum:0,filesSize:0,foldersNum:0,selectedNum:0,selectedFilesNum:0,selectedFilesSize:0,selectedFoldersNum:0};for(const n of e)t.num+=1,n.isFile?(t.filesNum+=1,t.filesSize+=n.sizeBytes):t.foldersNum+=1,n.checked&&(t.selectedNum+=1,n.isFile?(t.selectedFilesNum+=1,t.selectedFilesSize+=n.sizeBytes):t.selectedFoldersNum+=1);return t}async function Ql(e){if(!e.showListSummary)return;const t=await et(".list-header"),o=(await et("ul#js-list")).querySelectorAll("li"),i=Array.from(o).map(Gs),s=d$(i),r=t.querySelector(".header-name"),a=[];s.num&&a.push(`共${s.num}项`),s.filesNum&&a.push(`${s.filesNum}个文件,合计${Wi(s.filesSize)}`),s.foldersNum&&a.push(`${s.foldersNum}个目录`);const l=[];s.selectedNum&&(s.selectedFilesNum&&l.push(`${s.selectedFilesNum}个文件,合计${Wi(s.selectedFilesSize)}`),s.selectedFoldersNum&&l.push(`${s.selectedFoldersNum}个目录`));const c=`
<span class="ce-list-summary">
${a.join(", ")}
${l.length?`。已选中${l.join(",")}`:""}
</span>
`;let u=r.querySelector(".ce-list-summary");u?u.outerHTML=c:(u=ze(c),r.appendChild(u));}async function xw(e){const t="ce-share-page";document.body.classList.add(t),parent.document.body.classList.add(t);const n="ce-share-fresh";e.freshMode?document.body.classList.add(n):document.body.classList.remove(n);}async function f$(){window.addEventListener("message",async e=>{const t=e.data.event,n=e.data.body;t===ot.shareConfigChange&&(bw(n),xw(n));});}let p$=[];async function h$(e,t){const n=[...(await ur()).filter(i=>i.enabled),...p$.filter(i=>i.enabled),...(await ki(to.search)).filter(i=>i.enabled)];let o=n.find(i=>i.key===t.defaultSearch);return o||(o=n.find(i=>i.key===cr)),new zg({key:"_s_search_with_name_d",label:"搜索",icon:o?.icon||"",title:o?.memo||"搜索",onClick:async(i,s)=>{s.stopPropagation(),s.preventDefault(),o&&await hr(i,o,s,t,Gs,Ie.shareListItemHover);},subItems:[...await ol(ad,n,Gs)]})}async function Or(e,t){return new ad({key:`_s_lh_copy_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制${e}`,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const i=$(o.target).closest("li"),s=Gs(i[0]),r=await ut(),a=await Qt(),c=mr([s],t,u=>r.cloudDriveFormalization?un(a,u):u);gt(c.join(`
`)),Y({title:`复制${e}`,text:`已复制${e},CloudDrive文件名规范: ${r.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function lp(e){return new ad({key:"_s_lh_copy_sha1",label:"文件sha1"+(e?"(带文件名)":""),icon:"icon-operate ifo-copy",title:"复制文件sha1"+(e?"。格式为 xxx//yyy,xxx为sha1,yyy为文件名":""),onClick:async(t,n)=>{n.stopPropagation(),n.preventDefault();const o=$(n.target).closest("li"),i=Gs(o[0]);if(i.isDir){Y({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const s=i.hash+(e?`//${i.name}`:"");gt(s),Y({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function m$(e){const t=jg().namePathConfig,{namePathConfig:n=t}=e,o=[];return n.copyFullName&&o.push(await Or("完整名称",ht.full)),n.copyPureName&&o.push(await Or("不含后缀名称",ht.pure)),n.copyId&&o.push(await Or("ID",ht.id)),n.copyPickCode&&o.push(await Or("PickCode",ht.pickCode)),n.copySha1&&o.push(await lp(false)),n.copySha1WithName&&o.push(await lp(true)),new zg({key:"_s_lh_copy_name_path",label:"名称",title:"复制文件名称",subItems:o})}async function g$(e){const{[Ie.shareListItemHover]:t}=e;if(!t.enabled)return;const n=[];t.search&&n.push(await h$(t,e)),t.copyNames&&n.push(await m$(t)),new Mk({items:n,position:yo.after,siblingSelector:'[menu="_s_null_"], [btn="prosecute"]'}).inject();}async function w$(){const{host:e}=location;if(!e.includes("115.com")&&!mu())return;console.log("[Cloud115 Enhancer - menu] running..."),y$(),document.addEventListener(wn.EVENT_CLOSE_MENU,n=>{$("#"+n.detail.menu.key).closest(".context-menu").hide();});const t=await ut();t.enabled&&(b$(t),await Ug(t),window.top===window.self&&HS(t),WS(t),(vn()||ko())&&(KS(t),r$(t),s$(t)),mu()&&g$(t));}async function y$(){const e="ceCustomUrlHelp",t=document.createElement("div");t.id=e,document.body.appendChild(t);const n=ro(H2);n.component("VDropdown",Ei),n.mount(`#${e}`);}async function b$(e){e.manageOfficialMenus&&(Zf(),window.addEventListener("message",async t=>{t.data.event===ot.officialMenuStyleChange&&(console.log("[Cloud115 Enhancer - menu] officialMenuStyleChange",location.href),await Mt(1e3),console.log(await dw()),Zf());}));}var on=(e=>(e[e.any=-999]="any",e[e.failed=-1]="failed",e[e.illegal=0]="illegal",e[e.ing=1]="ing",e[e.success=2]="success",e))(on||{});const v$={[-1]:"失败",0:"违规",1:"下载中",2:"成功"};var en=(e=>(e.all="all",e.failed="failed",e.success="success",e.magnet="magnet",e.magnetEd2k="magnetEd2k",e))(en||{});const _w=mt.offline;var Vr=(e=>(e.name="name",e.nameRegex="nameRegex",e.infoHash="infoHash",e.url="url",e))(Vr||{});const x$={name:"名称",nameRegex:"名称正则",infoHash:"哈希",url:"链接"};var yi=(e=>(e.selection="ce-offline-selection",e.configChanged="ce-offline-config-changed",e.searchPageChanged="ce-offline-search-page-changed",e))(yi||{});function _$(e){return {onlyMagnetEd2k:false,enableOptimization:true,reqInterval:500,maxPage:0,showInfoHash:true,enableListManagement:true,fixGotoPage:false,enableSearcher:true,searchMaxPage:5,searchKeywordType:"name",searchStatus:on.any,searchStopOnFound:false,searchReqInterval:10,noGotoTaskPage:true,...e}}async function Vo(){const e=_$(),t=await Xe.get(_w,e);return {...e,...t}}async function Cw(e){await Xe.set(_w,e),window.postMessage({event:"ce-offline-config-changed",body:JSON.parse(JSON.stringify(e))},"*");}async function kw(e,t,n){const o=new URLSearchParams({page:e.toString(),uid:n.toString(),sign:t,time:di().toString()});return (await Ot().post("https://115.com/web/lixian/?ct=lixian&ac=task_lists",o,{withCredentials:true,timeout:6e4})).data}async function Sw(){return (await Ot().get(`https://115.com/?ct=offline&ac=space&_=${Date.now()}`,{timeout:3e4,withCredentials:true})).data}async function Uu(e,t,n,o){const i={uid:o.toString(),sign:t.sign,time:di().toString()};n&&(i.flag="1");const s=E0(i);return e.forEach((a,l)=>{s.append(`hash[${l}]`,a);}),(await Ot().post("https://115.com/web/lixian/?ct=lixian&ac=task_del",s,{timeout:12e4,withCredentials:true})).data}var C$={name:"115不大助手"};async function k$(e){const t=await et("#js-warp"),n=t.querySelectorAll("li[complete]");if(n.length>0)for(const i of Array.from(n))await up(i,e);A$(e),new MutationObserver(async([i])=>{if(i.type==="childList"){i.addedNodes.forEach(async a=>{await up(a,e);});const s=document.querySelector(".ce-checkbox-all input"),r=await fl();if(!r.length)s.checked=false,s.indeterminate=false;else {const a=t.querySelectorAll("li[complete]");s.checked=r.length===a.length,s.indeterminate=!s.checked;}await pl(r);}}).observe(t,{childList:true});}async function S$(e){const t=e;return {complete:t.getAttribute("complete"),cate_id:t.getAttribute("cate_id"),delete_id:t.getAttribute("delete_id"),status:t.getAttribute("status"),suffix:t.getAttribute("suffix"),name:t.getAttribute("name"),hash:t.getAttribute("hash")}}async function up(e,t){const n=e,o=await S$(e);P$(n,t,o),$$(n,t,o),E$(n,t,o);}async function $$(e,t,n){if(!t.showInfoHash||e.querySelector(".info-hash"))return;const o=e.querySelector(".file-name"),i=ze(`
<div class="info-hash" title="点击复制${n.hash}">${n.hash}</div>
`);o.after(i),i.addEventListener("click",()=>{gt(n.hash),Y({text:"已复制",icon:"success",timer:800});});const s=e.querySelector(".desc-tips");s&&s.style.display!=="none"&&e.classList.add("ce-task-trouble");}async function E$(e,t,n){const o=e.querySelector(".file-operate");if(o.querySelector(".ce-buttons"))return;const i=ze('<span class="ce-buttons"></span>'),s=ze(`
<a target="_blank" class="pure-button button-mini button-info">打开</a>
`);s.href=Bn(n.cate_id),s.title="在新标签页打开目录",i.append(s),o.prepend(i);}async function A$(e){if(!e.enableListManagement)return;const t=await et("#js-main .header-name");let n=t.querySelector(".ce-checkbox-all");n||(n=ze(`
<div class="ce-checkbox ce-checkbox-all">
<input type="checkbox"/>
</div>
`),t.prepend(n)),n.addEventListener("click",()=>{const o=n.querySelector("input").checked;document.querySelectorAll("#js-warp li").forEach(s=>{const r=s.querySelector("input");r.checked=o,s.classList.toggle("ce-selected",o);}),fl().then(s=>{pl(s);});});}async function P$(e,t,n){if(!t.enableListManagement||e.querySelector(".ce-checkbox"))return;const o=e.querySelector(".file-name-wrap"),i=ze(`
<div class="ce-checkbox">
<input type="checkbox" data-id="${n.hash}" />
</div>
`);o.prepend(i),e.classList.add("ce-show-checkbox"),i.addEventListener("click",async s=>{s.shiftKey?await D$(s,e):await I$(s,e);});}async function I$(e,t){t.classList.toggle("ce-selected");const n=document.querySelector(".ce-checkbox-all input"),o=await Ew();let i=0;for(const r of o)r.classList.contains("ce-selected")&&i++;const s=i===o.length;n.checked=s,n.indeterminate=!s&&i>0,fl().then(r=>{pl(r);});}async function D$(e,t){const n=await Ew(),o=n.indexOf(t);let i=-1;for(let u=0;u<o;u++)if(n[u].classList.contains("ce-selected")){i=u;break}if(i===-1){for(let u=n.length-1;u>o;u--)if(n[u].classList.contains("ce-selected")){i=u;break}}i=i===-1?o:i;const s=Math.min(i,o),r=Math.max(i,o);let a=0;for(let u=0;u<n.length;u++){const f=n[u],p=f.querySelector(".ce-checkbox input"),w=u>=s&&u<=r;p.checked=w,w&&a++,f.classList.toggle("ce-selected",w);}const l=s===0&&r===n.length-1,c=document.querySelector(".ce-checkbox-all input");c.checked=l,c.indeterminate=!l&&a>0,fl().then(u=>{pl(u);});}async function $w(e){const t={info_hash:e.getAttribute("hash"),status:Number(e.getAttribute("status")),name:e.getAttribute("name"),file_id:e.getAttribute("cate_id"),delete_file_id:e.getAttribute("delete_id"),url:e.querySelector(".file-operate [cp_href]")?.getAttribute("cp_href")||""};return t.name||(t.name=e.querySelector(".file-name").textContent.trim()),t}async function Ew(e){const t=document.querySelectorAll("#js-warp li"),n=[];return t.forEach(async o=>{const i=o;n.push(i);}),n}async function fl(){const e=document.querySelectorAll("#js-warp li"),t=[];return e.forEach(async n=>{const o=n;if(o.classList.contains("ce-selected")){const i=await $w(o);t.push(i);}}),t}async function pl(e){window.postMessage({event:yi.selection,body:e},"*");}async function ju(e){document.querySelectorAll("#js-warp li").forEach(async n=>{const o=n,i=o.getAttribute("hash");e.includes(i)&&Jp(o);});}async function L$(e,t,n,o){const i=[],s=n.maxPage||5;let r="",a=null,l="",c="",u="";n.name!==void 0&&(r=n.caseSensitive?n.name:n.name.toLowerCase()),n.nameRegex!==void 0&&(a=new RegExp(n.nameRegex)),n.infoHash!==void 0&&(l=n.caseSensitive?n.infoHash:n.infoHash.toLowerCase()),n.url!==void 0&&(c=n.caseSensitive?n.url:n.url.toLowerCase()),n.status!==void 0&&n.status!==on.any&&n.status.toString()!==""&&(u=n.status.toString());let f=n.stopOnFound||false;(l||c)&&(f=true);let p=-1;for(let w=1;w<=s&&!(p>-1&&w>p);w++){window.postMessage({event:yi.searchPageChanged,body:w},"*");const m=await kw(w,e,t);p===-1&&(p=m.page_count);const y=m.tasks;for(const v of y){const E=n.caseSensitive?v.name:v.name.toLowerCase(),L=n.caseSensitive?v.info_hash:v.info_hash.toLowerCase(),P=n.caseSensitive?v.url:v.url?.toLowerCase(),D=r&&n.fuzzyName?E.includes(r):false,O=a?a.test(E):false,W=l&&L===l,z=c&&P===c;if((u?u===v.status.toString():true)&&(D||O||W||z)&&(i.push(v),f))break}if(f&&i.length)break}return i}async function T$(){if(!(await Vo()).fixGotoPage)return;const t=await et("#js-page");if(!t){console.warn("[fixGotoPage] 找不到`#js-page`");return}const n=async r=>{if(r.key!=="Enter")return;const a=r.target,l=parseInt(a.value);if(isNaN(l)){a.select();return}parent.window.Core.OFFL5Plug.ChangePage(l);},o=async(r=false)=>{const a=t.querySelector('input[rel="page_jump"]');if(!a)return;const l=ze(`
<input rel="page_jump" type="text" style="background-color: #fefcea;" />
`);l.title=`这是 ${C$.name} 替换的输入框,如果想恢复原有的输入框,请在「离线设置」中关闭「修复输入页码跳转」选项`,l.addEventListener("keydown",n),a.insertAdjacentElement("beforebegin",l),a.remove(),r&&l.focus();},i=lt(async r=>{o(true);},50),s=new MutationObserver(async([r])=>{r.type==="childList"&&i(r);});o(false),s.observe(t,{childList:true});}async function M$(e){const t=kt();if(!e.noGotoTaskPage||window!==window.top||t.Core.OFFL5Plug)return;async function n(o){t.Core&&o(true);}try{await qo(n,250,3e4),t.Core.OFFL5Plug||t.$.getScript("https://cdnres.115.com/site/static/plug/offline_wl/offline5.0.js",()=>{t.Core.OFFL5Plug.AddClient({});});}catch(o){throw new Error(`[disableGotoTaskPage] wait Core failed:${o.message}`)}}const O$={class:"ce-config ce-offline-config"},B$={class:"pure-form pure-form-aligned offline-exporter-config-form"},R$={class:"pure-control-group"},F$={class:"pure-control-group"},N$={class:"pure-control-group"},U$={class:"pure-control-group"},j$={class:"pure-control-group"},z$={class:"pure-control-group"},H$={class:"pure-control-group"},V$=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>Vo()),t=await t,n(),t));return St(async()=>{}),He(o,lt(async i=>{await Cw(i),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),(i,s)=>(_(),S("div",O$,[d("form",B$,[d("fieldset",null,[d("div",R$,[s[7]||(s[7]=d("label",{for:"noGotoTaskPage"},"添加任务后不跳转",-1)),q(d("input",{id:"noGotoTaskPage",type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>o.value.noGotoTaskPage=r)},null,512),[[ye,o.value.noGotoTaskPage]]),s[8]||(s[8]=d("div",{class:"pure-form-message text-success"}," 官方的添加离线任务在添加任务后可能会跳转到任务列表页,开启此选项可以避免跳转。 ",-1))]),d("div",F$,[s[9]||(s[9]=d("label",{for:"enableListManagement"},"启用批量管理",-1)),q(d("input",{id:"enableListManagement",type:"checkbox","onUpdate:modelValue":s[1]||(s[1]=r=>o.value.enableListManagement=r)},null,512),[[ye,o.value.enableListManagement]]),s[10]||(s[10]=d("div",{class:"pure-form-message text-success"}," 可以选中多个任务进行操作,支持shift多选。 ",-1))]),d("div",N$,[s[11]||(s[11]=d("label",{for:"showInfoHash"},"显示链接哈希",-1)),q(d("input",{id:"showInfoHash",type:"checkbox","onUpdate:modelValue":s[2]||(s[2]=r=>o.value.showInfoHash=r)},null,512),[[ye,o.value.showInfoHash]]),s[12]||(s[12]=d("div",{class:"pure-form-message text-success"}," 显示离线任务的哈希文本,点击可以复制。 ",-1))]),d("div",U$,[s[13]||(s[13]=d("label",{for:"fixGotoPage"},"修复输入页码跳转",-1)),q(d("input",{id:"fixGotoPage",type:"checkbox","onUpdate:modelValue":s[3]||(s[3]=r=>o.value.fixGotoPage=r)},null,512),[[ye,o.value.fixGotoPage]]),s[14]||(s[14]=d("div",{class:"pure-form-message text-success"}," 如果官方的输入页码跳转功能异常,可开启此选项。 ",-1))]),s[21]||(s[21]=d("div",{class:"ce-tips"},"以下是导出链接相关选项",-1)),d("div",j$,[s[15]||(s[15]=d("label",{for:"onlyMagnetEd2k"},"只取磁力和ED2K链接",-1)),q(d("input",{id:"onlyMagnetEd2k",type:"checkbox","onUpdate:modelValue":s[4]||(s[4]=r=>o.value.onlyMagnetEd2k=r)},null,512),[[ye,o.value.onlyMagnetEd2k]]),s[16]||(s[16]=d("div",{class:"pure-form-message text-success"}," 导出链接时,只取磁力和ED2K链接,其他比如http链接会被略过。 ",-1))]),d("div",z$,[s[17]||(s[17]=d("label",{for:"enableOptimization"},"启用导出优化",-1)),q(d("input",{id:"enableOptimization",type:"checkbox","onUpdate:modelValue":s[5]||(s[5]=r=>o.value.enableOptimization=r)},null,512),[[ye,o.value.enableOptimization]]),s[18]||(s[18]=d("div",{class:"pure-form-message text-success"}," 据观察,离线记录列表是将未完成的记录放在最前面的。如果只需导出未完成链接, 当获取到一个已完成的记录时,便可以停止继续获取后面的记录,节省时间。 ",-1))]),d("div",H$,[s[19]||(s[19]=d("label",{for:"maxPage"},"最多导出页数",-1)),q(d("input",{id:"maxPage",type:"number","onUpdate:modelValue":s[6]||(s[6]=r=>o.value.maxPage=r),min:0},null,512),[[Ve,o.value.maxPage]]),s[20]||(s[20]=d("div",{class:"pure-form-message text-success"}," 0表示不限制,否则表示最多导出的页数。 ",-1))])])])]))}}),Aw=Pe(V$,[["__file","Config.vue"]]);function cp(e){return /^magnet:\?xt=urn:btih/.test(e)}function dp(e){return /^ed2k:\/\/\|file\|/.test(e)}function fp(e){return `magnet:?xt=urn:btih:${e.toUpperCase()}`}function Pw(e){const t=e.match(/([a-z\d]{32,40})/i);return t?t[1]:""}function q$(e,t=true){return (t?/^([a-z\d]{32})$|^([a-z\d]{40})$/i:/^[a-z\d]{32,40}$/i).test(e)}async function Iw(){const t=(await Ot().get("https://my.115.com/?ct=ajax&ac=nav",{timeout:3e4,withCredentials:true})).data;if(t.state)return t.data;throw new Error(t.error)}const W$={class:"ce-offline-exporter"},K$={key:0},Br=`\r
`,G$=xe({__name:"OflineExporter",setup(e){let t,n;const o=V([]);let i={};Ht(async()=>{i=await Vo(),t=await Iw(),console.log("[profile]",t),n=await Sw(),console.log("[space]",n),s(),await k$(i);});async function s(){window.addEventListener("message",m=>{const{event:y,body:v}=m.data;switch(y){case yi.selection:o.value=v;break;case yi.configChanged:i=v;break}},false);}async function r(m=false,y=""){const{isConfirmed:v,value:E}=await te.fire({title:"根据链接删除离线任务",html:`
<div>每行一个链接,支持磁力链接和ED2K链接</div>
<div>
<label class="swal2-checkbox" style="display: flex;">
<input type="checkbox" id="swalDeleteFile">
<span class="swal2-label">同时删除文件</span>
</label>
</div>
<div>
<textarea id="swalUrls" aria-label="每行一个链接" class="swal2-textarea" placeholder="每行一个链接" style="width:80%;"></textarea>
</div>
`,focusConfirm:false,didOpen:()=>{const D=document.getElementById("swalDeleteFile");D.checked=m;const O=document.getElementById("swalUrls");O.value=y,O.focus();},preConfirm:()=>{const D=document.getElementById("swalDeleteFile"),O=document.getElementById("swalUrls");return {deleteFile:D?D.checked:false,urls:O?O.value:""}},width:620,inputPlaceholder:"每行一个",inputAttributes:{"aria-label":"每行一个"},showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消"});if(!v)return;if(E===void 0){alert("请输入链接!");return}const L=[],P=E.urls.trim().split(`
`);for(let D=0;D<P.length;D++){const O=P[D].trim();if(cp(O)||dp(O)){const W=Pw(O);W&&L.push(W.toLowerCase());}}te.showLoading(),te.update({html:"正在删除..."}),await Uu(L,n,E.deleteFile,t.user_id),Y({icon:"success",title:"删除成功!请刷新页面查看最新的列表。",timer:3e4,position:"top-end"}),await ju(L);}async function a(){const m=o.value.map(L=>L.info_hash);if(!m.length)return;const{isConfirmed:y,value:v}=await te.fire({title:"批量删除",icon:"warning",html:`确定要删除选中的 ${m.length} 个离线记录吗?`,input:"checkbox",inputValue:0,inputPlaceholder:"同时删除文件",showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消"});if(!y)return;const E=!!v;te.showLoading(),te.update({html:"正在删除..."}),await Uu(m,n,E,t.user_id),Y({icon:"success",title:"删除成功",timer:800,position:"top-end"}),await ju(m),o.value=[];}async function l(m){const y=[m];i.onlyMagnetEd2k&&y.push(en.magnetEd2k),console.log("[filters]",y),await w(n.sign,t.user_id,y);}function c(m,y){if(!y.length||y.length===1&&y[0]==="all")return m;const v={[on.failed]:en.failed,[on.illegal]:en.failed,[on.ing]:en.failed,[on.success]:en.success};return m=m.filter(E=>{if(!E.url&&!E.info_hash)return false;const L=v[E.status];return y.includes(en.all)||L&&y.includes(L)?!(y.includes(en.magnetEd2k)&&(!q$(E.info_hash)||E.url&&!cp(E.url)&&!dp(E.url))):false}),m}async function u(m,y,v){let E=[],L=1,P=0;for(;;){te.update({html:`正在导出... 进度:第 ${L} 页`+(P?` / ${P}`:""),allowOutsideClick:false});const D=await kw(L,m,y);if(!D.tasks||!D.tasks.length)break;if(P===0&&i.maxPage>0?P=Math.min(D.page_count,i.maxPage):P=D.page_count,E=[...E,...c(D.tasks,v)],i.enableOptimization&&v.includes(en.failed)&&f(D.tasks)){console.warn("由于开启了导出优化,且检测到已获取的记录中至少有一个「已完成」的记录,将不再获取剩下的记录");break}if(L>=P)break;L++;}return E}function f(m){for(const y of m)if(y.status===on.success)return true;return false}async function p(){const m=[en.all];i.onlyMagnetEd2k&&m.push(en.magnetEd2k),console.log("[filters]",m);const y=o.value;if(!y.length)return;const v=[];y.forEach(E=>{!E.url&&E.info_hash&&(E.url=fp(E.info_hash)),v.push(E.url);}),v.length&&(gt(v.join(Br)),console.log("[links]",v),await te.fire({title:"导出成功",icon:"success",html:`成功导出 ${v.length} 个链接,请粘贴到文本文件。`,showDenyButton:true,denyButtonText:"保存到txt",allowEscapeKey:false,allowOutsideClick:false,preDeny:async()=>(console.log("[saveAs]"),Gr(v.join(Br),`115离线链接_数量${v.length}_${di()}.txt`),false)}));}async function w(m,y,v){te.fire({title:"导出离线链接",html:"正在导出...",didOpen:()=>{te.showLoading();}});const E=await u(m,y,v);if(te.hideLoading(),!E.length){await te.fire({title:"导出失败",icon:"error",html:"查询不到符合条件的离线记录!"});return}const L=[];if(E.forEach(P=>{!P.url&&P.info_hash&&(P.url=fp(P.info_hash)),L.push(P.url);}),!L.length){await te.fire({title:"导出失败",icon:"error",html:"未完成的离线记录中没有磁力或HTTP链接!"});return}gt(L.join(Br)),console.log("[links]",L),await te.fire({title:"导出成功",icon:"success",html:`成功导出 ${L.length} 个链接,请粘贴到文本文件。`,showDenyButton:true,denyButtonText:"保存到txt",allowEscapeKey:false,allowOutsideClick:false,preDeny:async()=>(console.log("[saveAs]"),Gr(L.join(Br),`115离线链接_数量${L.length}_${di()}.txt`),false)});}return (m,y)=>{const v=xo("VDropdown");return _(),S("span",W$,[o.value.length?(_(),S("span",K$,[d("button",{type:"button",class:"pure-button button-small button-error",onClick:a},[y[4]||(y[4]=I("删除(",-1)),d("span",null,B(o.value.length),1),y[5]||(y[5]=I(")",-1))]),y[6]||(y[6]=I(" ",-1))])):fe("",true),d("button",{type:"button",class:"pure-button button-mini button-error",onClick:y[0]||(y[0]=E=>r(false,"")),title:"填写链接以删除对应的离线任务"},"根据链接删除"),y[9]||(y[9]=I(" ",-1)),o.value.length?(_(),S("button",{key:1,type:"button",class:"pure-button button-mini button-warning",onClick:p,title:"导出选中任务的链接"},[y[7]||(y[7]=I("导出已选",-1)),d("span",null,"("+B(o.value.length)+")",1)])):fe("",true),d("button",{type:"button",class:"pure-button button-mini button-error",onClick:y[1]||(y[1]=E=>l(ee(en).failed)),title:"导出未完成链接"},"导出未完成"),d("button",{type:"button",class:"pure-button button-mini button-success",onClick:y[2]||(y[2]=E=>l(ee(en).success)),title:"导出已完成链接"},"导出已完成"),d("button",{type:"button",class:"pure-button button-mini button-warning",onClick:y[3]||(y[3]=E=>l(ee(en).all)),title:"导出全部链接"},"导出全部"),y[10]||(y[10]=I(" ",-1)),oe(v,{distance:5,"arrow-padding":10},{popper:ge(()=>[(_(),tt(bg,null,{default:ge(()=>[oe(Aw)]),_:1}))]),default:ge(()=>[y[8]||(y[8]=d("button",{type:"button",class:"pure-button button-mini"},"设置",-1))]),_:1,__:[8]})])}}}),J$=Pe(G$,[["__file","OflineExporter.vue"]]),Y$=["cate_id","delete_id","status","hash"],Q$={class:"file-name-wrap"},X$={class:"file-name"},Z$={task_popup:"goto",href:"javascript:;",class:"name"},eE={rel:"name"},tE={class:"desc-tips",rel:"file_down_violations"},nE={class:"txt-red",rel:"file_down_tips"},oE=["filename"],iE={class:"file-size"},sE={class:"file-process"},rE={rel:"progress"},aE={class:"file-operate",rel:"opt"},lE=["cp_href"],uE=xe({__name:"OfflineItem",props:{item:{},space:{},profile:{}},setup(e){const t=Ke(()=>s.item.percentDone?parseInt(s.item.percentDone.toString()):0),n=Ke(()=>{const{name:r,del_path:a}=s.item;let l=r.replace(/^.*\./,"");return a&&/\/$/.test(a)&&(l="folder"),/^[a-z\d]+$/i.test(l)||(l="unknown"),l}),o=Ke(()=>{const{err:r}=s.item;return r?M0[r]:""}),i=Ke(()=>s.item.can_appeal===1),s=e;return (r,a)=>(_(),S("li",{complete:"",cate_id:r.item.file_id,delete_id:r.item.delete_file_id,status:r.item.status,hash:r.item.info_hash},[d("div",Q$,[d("i",{class:Le(["file-type",`tp-${n.value}`])},null,2),d("div",X$,[d("em",null,[d("a",Z$,[d("span",eE,B(r.item.name),1)])])]),q(d("div",tE,[d("span",nE,B(o.value),1),q(d("a",{href:"javascript:;",class:"btn-link",filename:r.item.name,rel:"violations_down_btn"},"去申诉",8,oE),[[Wt,i.value]])],512),[[Wt,o.value]])]),d("div",iE,[d("span",null,B(ee(Wi)(r.item.size)),1)]),d("div",sE,[r.item.status===ee(on).failed?(_(),S($e,{key:0},[a[0]||(a[0]=d("i",{class:"icon-file-status ifst-failure"},null,-1)),a[1]||(a[1]=d("span",{rel:"progress"},"下载失败",-1))],64)):r.item.status===ee(on).success?(_(),S($e,{key:1},[a[2]||(a[2]=d("i",{class:"icon-file-status ifst-success"},null,-1)),a[3]||(a[3]=d("span",{rel:"progress"},"下载成功",-1))],64)):r.item.status===ee(on).ing?(_(),S($e,{key:2},[a[4]||(a[4]=d("i",{class:"icon-file-status ifst-downing"},null,-1)),d("span",rE,B(t.value)+"%",1)],64)):r.item.status===ee(on).illegal?(_(),S($e,{key:3},[a[5]||(a[5]=d("i",{class:"icon-file-status ifst-violation"},null,-1)),a[6]||(a[6]=d("span",{rel:"progress"},"违规",-1))],64)):(_(),S($e,{key:4},[a[7]||(a[7]=d("i",{class:"icon-file-status ifst-failure"},null,-1)),a[8]||(a[8]=d("span",{rel:"progress"},"[未知]",-1))],64))]),d("div",aE,[a[10]||(a[10]=d("a",{href:"javascript:;",task_popup:"goto"},[d("i",{class:"icon-operate ifo-opendir"}),d("s",null,"跳转到目录")],-1)),d("a",{href:"javascript:;",cp_href:r.item.url,task_popup:"copy"},a[9]||(a[9]=[d("i",{class:"icon-operate ifo-copy"},null,-1),d("s",null,"复制",-1)]),8,lE),a[11]||(a[11]=d("a",{href:"javascript:;",class:"btn-delete-offline"},[d("i",{class:"icon-operate ifo-remove"}),d("s",null,"删除")],-1))])],8,Y$))}}),cE=Pe(uE,[["__file","OfflineItem.vue"]]),dE={class:"ce-offline-list"},fE=xe({__name:"OfflineList",props:{items:{},space:{},profile:{}},setup(e){return (t,n)=>(_(),S("div",dE,[d("ul",null,[(_(true),S($e,null,je(t.items,(o,i)=>(_(),tt(cE,{Key:i,item:o,space:t.space,profile:t.profile},null,8,["Key","item","space","profile"]))),256))])]))}}),pE=Pe(fE,[["__file","OfflineList.vue"]]),hE={inline:"",class:"pure-form search-form",size:"small"},mE={class:"form-item",label:"关键词"},gE=["value"],wE={class:"form-item"},yE={class:"form-item",label:"状态"},bE=["value"],vE=["value"],xE={class:"form-item",label:"页数"},_E={class:"form-item"},CE={key:0,title:"根据「名称/名称正则」查找时,是否在找到一个结果时停止继续查找"},kE={key:0,class:"search-tips"},SE={class:"tips-body"},$E={key:0},EE=xe({__name:"OfflineSearcher",setup(e){let t,n;const o=V(),i=V({KeywordType:Vr.name,keyword:"",status:on.any,maxPage:5,stopOnFound:false});let s={...i.value};const r=V(null),a=V(false),l=V([]),c=V(null),u=V({content:"",subContent:"",visible:false});Ht(async()=>{t=await Iw(),n=await Sw(),o.value=await Vo(),i.value.KeywordType=o.value.searchKeywordType,i.value.status=o.value.searchStatus,i.value.maxPage=o.value.searchMaxPage,i.value.stopOnFound=o.value.searchStopOnFound,s={...i.value},document.body.addEventListener("click",W=>{D(W);}),f();}),He(i,lt(async W=>{console.log("[searchParams changed]",Sc(W)),w();},200),{deep:true});async function f(){window.addEventListener("message",W=>{const{event:z,body:ue}=W.data;switch(z){case yi.searchPageChanged:p(ue);break;case yi.configChanged:o.value={...ue};break}},false);}async function p(W){console.log("[handleSearchPageChanged]",W),await O({subContent:`正在搜索第 ${W} 页...`,visible:true});}async function w(){const W=await Vo();let z=0;s.KeywordType!==i.value.KeywordType&&(W.searchKeywordType=i.value.KeywordType,z++),s.status!==i.value.status&&(W.searchStatus=i.value.status,z++),s.maxPage!==i.value.maxPage&&(W.searchMaxPage=i.value.maxPage,z++),s.stopOnFound!==i.value.stopOnFound&&(W.searchStopOnFound=i.value.stopOnFound,z++),z&&(await Cw(W),console.log("[handleSearchParamsChange]",W),o.value={...W}),s={...i.value};}async function m(W){r.value?.select();}async function y(W){i.value.keyword="",r.value?.focus();}async function v(){l.value=[],i.value.keyword="",s={...i.value},await O({visible:false}),await L(false);try{parent.window.Core.OFFL5Plug.ChangePage(1);}catch(W){console.error(W);}}async function E(){l.value=[];let{keyword:W}=i.value;if(W=W.trim(),W===""){await mi(),r.value?.select(),Oi.fire({icon:"warning",title:"关键词不能为空!"});return}a.value=true,await O({content:"正在搜索...",subContent:"",visible:true});try{const z={status:i.value.status,maxPage:i.value.maxPage,fuzzyName:!0,caseSensitive:!1,stopOnFound:i.value.stopOnFound};z[i.value.KeywordType]=i.value.keyword,z.infoHash&&(z.infoHash=Pw(z.infoHash)),console.log("[search filter]",z);const ue=await L$(n.sign,t.user_id,z,o.value);l.value=ue,console.log("[search result]",ue),ue.length>0?await O({visible:!1}):await O({content:"没有符合条件的离线任务",subContent:"",visible:!0}),await L(!0);}catch(z){console.warn("[search error]",z),Oi.fire({icon:"error",title:z.toString()}),await O({content:"搜索失败!",subContent:z.toString(),visible:true});}finally{a.value=false;}}async function L(W=true){!l.value.length&&W&&Oi.fire({icon:"warning",html:"没有符合条件的离线任务"}),await mi();const z=c.value?.querySelector("ul");if(!z)return;const ue=document.querySelector("ul#js-warp");ue&&(ue.innerHTML=z.innerHTML),await P(),r.value?.focus();}async function P(){const W=l.value.length,z=document.querySelector("#js-page");if(!z)return;const ue=z.querySelector(".left-bvf span");ue.textContent=`共搜索到 ${W} 个结果`;const me=z.querySelector(".pagination .con");me.style.display="none";}async function D(W){let z=W.target;if(z.classList.contains("ifo-remove")&&(z=z.closest("a")),!z.classList.contains("btn-delete-offline"))return;const ue=z.closest("li"),me=await $w(ue),ie=[me.info_hash];let F={title:"删除离线记录",icon:"warning",html:`确定要删除「${me.name}」吗?`,showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消"};me.delete_file_id&&(F={...F,input:"checkbox",inputValue:0,inputPlaceholder:"同时删除文件"});const{isConfirmed:U,value:Q}=await te.fire(F);if(!U)return;const le=!!Q;te.showLoading(),te.update({html:"正在删除..."}),await Uu(ie,n,le,t.user_id),Y({icon:"success",title:"删除成功",timer:800,position:"top-end"}),await ju(ie);}async function O(W){u.value={...u.value,...W};}return (W,z)=>(_(),S("div",{class:Le(["ce-offline-searcher",{loading:a.value}])},[d("form",hE,[d("fieldset",null,[d("div",mE,[q(d("select",{"onUpdate:modelValue":z[0]||(z[0]=ue=>i.value.KeywordType=ue),size:"small",onChange:m},[(_(true),S($e,null,je(ee(x$),(ue,me)=>(_(),S("option",{key:me,value:me},B(ue),9,gE))),128))],544),[[gn,i.value.KeywordType]])]),d("div",wE,[d("div",{class:Le(["clearable-wrap",{"is-empty":i.value.keyword===""}])},[q(d("input",{ref_key:"refKeyword",ref:r,"onUpdate:modelValue":z[1]||(z[1]=ue=>i.value.keyword=ue),placeholder:"请输入关键词",clearable:"",onKeyup:Tg(E,["enter"])},null,544),[[Ve,i.value.keyword]]),d("button",{type:"button",class:"pure-button pure-button-default button-xsmall btn-clear",onClick:y},"×")],2)]),d("div",yE,[q(d("select",{"onUpdate:modelValue":z[2]||(z[2]=ue=>i.value.status=ue),placeholder:"请选择",clearable:"",style:{width:"90px"}},[d("option",{value:ee(on).any},"-状态-",8,bE),(_(true),S($e,null,je(ee(v$),(ue,me)=>(_(),S("option",{key:me,value:me},B(ue),9,vE))),128))],512),[[gn,i.value.status]])]),d("div",xE,[q(d("input",{type:"number","onUpdate:modelValue":z[3]||(z[3]=ue=>i.value.maxPage=ue),min:1,max:1e5,title:"最多查找页数"},null,512),[[Ve,i.value.maxPage]]),z[5]||(z[5]=d("small",null,"页",-1))]),d("div",_E,[[ee(Vr).name,ee(Vr).nameRegex].includes(i.value.KeywordType)?(_(),S("label",CE,[q(d("input",{type:"checkbox","onUpdate:modelValue":z[4]||(z[4]=ue=>i.value.stopOnFound=ue),class:"stop-on-found"},null,512),[[ye,i.value.stopOnFound]]),z[6]||(z[6]=I(" 找到即停 ",-1))])):fe("",true),d("button",{type:"button",class:"pure-button pure-button-primary button-small",onClick:E},"查找"),z[7]||(z[7]=I(" ",-1)),d("button",{type:"button",class:"pure-button pure-button-default button-xsmall",onClick:v,title:"清空关键词;重置列表到非查找状态"},"重置")])])]),d("div",{ref_key:"refList",ref:c,class:"list"},[oe(pE,{items:l.value,space:ee(n),profile:ee(t)},null,8,["items","space","profile"])],512),u.value.visible?(_(),S("div",kE,[d("div",SE,[d("h2",null,B(u.value.content),1),u.value.subContent?(_(),S("p",$E,B(u.value.subContent),1)):fe("",true)])])):fe("",true)],2))}}),AE=Pe(EE,[["__file","OfflineSearcher.vue"]]),PE='@charset "UTF-8";.cloud115-page-offline.ce-list-m .list-contents .file-name-wrap .desc-tips{left:75px}.cloud115-page-offline.ce-list-m li.ce-task-trouble .info-hash{left:210px!important}.cloud115-page-offline li .ce-buttons{float:left;margin-right:6px}.cloud115-page-offline .ce-checkbox{width:30px}.cloud115-page-offline .ce-checkbox input{display:block!important;width:20px;height:20px;cursor:pointer}.cloud115-page-offline #js-warp .info-hash{position:absolute;left:47px;top:25px;color:#ababab;cursor:pointer}.cloud115-page-offline #js-warp .info-hash.hover{color:#6ab2ff}.cloud115-page-offline #js-warp li.ce-selected:before{background:#ffe296!important}.cloud115-page-offline #js-warp li.ce-show-checkbox .info-hash{left:60px}.cloud115-page-offline #js-warp li.ce-show-checkbox .file-name{margin-left:15px}.cloud115-page-offline #js-warp li.ce-show-checkbox .file-type{left:25px!important}.cloud115-page-offline #js-warp li .ce-checkbox{width:30px;position:absolute;left:0}.cloud115-page-offline #js-warp li .ce-checkbox input{display:block!important;width:20px;height:20px;cursor:pointer}.cloud115-page-offline #js-warp li .desc-tips{position:absolute;left:60px;top:25px}.cloud115-page-offline.ce-offline-in-dialog .ce-offline-searcher,.cloud115-page-offline.ce-offline-in-dialog .ce-offline-exporter{left:100px}';Et(PE);async function IE(){const e=await Vo(),{host:t,search:n}=location;t==="115.com"&&M$(e),!(t!=="115.com"||!n.includes("offline=1"))&&(n.includes("file_dialog_iframe")&&document.body.classList.add("ce-offline-in-dialog"),await DE(),await LE(),T$());}async function DE(){console.log("[Cloud115 Enhancer] Injecting offline exporter...");const e="cloud115OfflineExporter",t=await Vo();document.body.classList.add("cloud115-page-offline"),t.enableListManagement&&document.body.classList.add("ce-list-m"),$("body").append(`<div id="${e}"/>`);const n=ro(J$);n.component("VDropdown",Ei),n.mount(`#${e}`);}async function LE(){console.log("[Cloud115 Enhancer] Injecting offline searcher...");const e="cloud115OfflineSearcher",t=await Vo();document.body.classList.add("cloud115-page-offline"),t.enableSearcher&&document.body.classList.add("ce-list-s"),$("body").append(`<div id="${e}"/>`);const n=ro(AE);n.component("VDropdown",Ei),n.mount(`#${e}`);}var Kt=(e=>(e.UNKNOWN="unknown",e.OPEN_CLEANER="openCleaner",e.CLOSE_CLEANER="closeCleaner",e.CLEANER_OPENED="cleanerOpened",e.INVOKE_FILTER="invokeFilter",e.OPEN_EMPTY_CLEANER="openEmptyCleaner",e.CLOSE_EMPTY_CLEANER="closeEmptyCleaner",e.EMPTY_CLEANER_OPENED="emptyCleanerOpened",e))(Kt||{});const TE={class:"cloud115-eh-cleaner-trigger"},ME=xe({__name:"Trigger",setup(e){V(false);const t=V(true);async function n(a){switch(a.data.type){case Kt.INVOKE_FILTER:await mm(a.data.payload);break;case Kt.CLEANER_OPENED:await r(a.data.payload);break}}Ht(async()=>{console.log("[CleanerTrigger onMounted]"),window.addEventListener("message",n);}),Si(()=>{console.log("[CleanerTrigger onUnmounted]"),window.removeEventListener("message",n);});async function o(){await s(),ci({type:Kt.OPEN_CLEANER},window.parent);}let i;async function s(){const a=Zs("cid");!a||a==="0"||(clearTimeout(i),i=setTimeout(async()=>{Y({icon:"error",text:"打开清理工具失败!"});},1e3));}async function r(a){console.log("成功打开Cleaner"),clearTimeout(i);}return (a,l)=>q((_(),S("span",TE,[Ge(a.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:o,title:"打开清理文件工具"},l[0]||(l[0]=[d("span",null,"清理文件",-1)]))])],512)),[[Wt,t.value]])}}),OE=Pe(ME,[["__file","Trigger.vue"]]);function gd(e={}){return {initialized:false,suffixGroup:"",keywordGroup:"",showEntryOnPathBar:true,pageSize:1150,reqInterval:100,deleteSize:1150,keywordDefaultCategory:"all",keywordDefaultResult:"all",cleanWithoutConfirm:false,...e}}async function wr(){const e=gd(),t=await Xe.get(mt.cleanerConfig,e);return {...e,...t,pageSize:1150,reqInterval:100,deleteSize:1150}}async function BE(e){return await Xe.set(mt.cleanerConfig,e)}async function wd(e){const t=await wr();return await BE({...t,...e})}var Fe=(e=>(e[e.suffix=0]="suffix",e[e.keyword=1]="keyword",e))(Fe||{}),nt=(e=>(e[e.filter=0]="filter",e[e.dirKeyword=1]="dirKeyword",e[e.fileKeyword=2]="fileKeyword",e[e.fileHash=3]="fileHash",e))(nt||{});const Dw={0:"筛选",1:"目录名关键词",2:"文件名关键词",3:"文件sha1"};var It=(e=>(e[e.append=0]="append",e[e.cover=1]="cover",e[e.clear=2]="clear",e[e.reset=3]="reset",e[e.assign=4]="assign",e))(It||{}),ho=(e=>(e.all="all",e.file="file",e.dir="dir",e))(ho||{});const RE={all:"全部",file:"文件",dir:"目录"};var No=(e=>(e.all="all",e.matched="matched",e.notMatched="unmatched",e))(No||{});const FE={all:"全部",matched:"有匹配",unmatched:"无匹配"};var $t=(e=>(e.none="",e.prepare="查询文件...",e.prepared="查询文件完成",e.prepareFailed="查询失败",e.deleting="删除文件中...",e.success="清理完成",e.failed="清理失败",e))($t||{});const NE=new Map([[Sn.all,nn.all],[Sn.video,nn.video],[Sn.audio,nn.audio],[Sn.image,nn.image],[Sn.doc,nn.doc],[Sn.app,nn.app],[Sn.archive,nn.archive]]),zu=S0(NE),UE=[["文件名关键词","广告abc","包含`广告abc`,不区分大小写"],["目录名关键词","#广告abc","在关键词前面加上`#`"],["策略-不可分割匹配",'"广告 abc"',"匹配`广告 abc啊`,不匹配`广告啊abc`,即空格部分也进行匹配,使用双引号包裹关键词。"],["文件sha1","7309dd0d50007e027180f02301ccba8ba0fd971f//文件xxx","关键词部分长度为40且只包含a-f0-9的文本会被视为sha1"],["策略-区分大小写","广告abc/s","在关键词后面加上`/s` (s 可理解为 sensitive 首字母)"],["策略-等于","广告abc.mp4/=","在关键词后面加上`/=`,不区分大小写"],["策略-等于且区分大小写","广告abc.mp4/==","在关键词后面加上`/==`,也可以用`/s,=` (多个策略使用英文逗号隔开)"],["策略-指定最大大小","广告abc.mp4/10","在关键词后面加上`/10`,该大小将覆盖所在分组的设定"],["策略-正则表达式","^abc/r","在关键词后面加上`/r`"],["添加备注","广告abc//备注内容","在策略后面加上`/备注内容`,`//`表示策略为空,有策略的示例: 广告abc/s/备注内容"]],jE="##",yd="#",zE="=",HE="==",VE="s",qE="r",Lw="#",WE=[{type:Fe.suffix,queryOnly:false,label:"默认",memo:"请谨慎使用!",size:5,values:["txt","url","html","htm","mht"]},{type:Fe.suffix,queryOnly:true,label:"🔍115筛选",memo:"仅用于查询",size:102400,values:["#视频","#音频","#图片","#文档","#应用","#压缩包"]}],KE=["#論壇文宣","#宣傳文本","最新地址","最新网址","论坛地址","永久地址","地址发布","扫码 安装","扫码 下载","免費 掃碼","澳门 赌场","皇冠 赌场","免费18禁手游","免费黄游手游","在线影城","秀场 小视频","裸秀 主播 免费看","第一会所 宣传","SIS 影视联盟",'"最 新 位 址 獲 取"','"社 區 最 新 情 報"','"聚 合 全 網 H 直 播"'],GE=["#論壇文宣","美女 裸聊","秀场 视频","澳门 赌场","皇冠 赌场","影视 联盟","2048 社区","1024 社区","会所 宣传","扫码 安装","社区 关注","免費 掃碼","找回家","防屏蔽","封殺00","秀场 小视频","裸秀 主播 免费看",'"Free Adult Movie"',"奔驰宝马","最新网址","最新免費","免费试用","美女荷官","凤凰娛樂","观看指南","女神在线","更多无水印","免费在线","国产精品","免費原版","獨家資源","成人光碟","最新AV","FDZone","发布器","QR-1024","在這等你","激情祼聊","看妹不用等","真人祼聊","zz.jpg","X8B9.COM.gif","第一会所 宣传","SIS 影视联盟","淘精網","激情咖啡","手機影城","免费手机看片","U視娛樂","加微信","我愛看片手機版","平台正式上線"],JE=[{type:Fe.keyword,queryOnly:false,label:"默认",memo:"请谨慎使用!",size:100,values:KE},{type:Fe.keyword,queryOnly:false,label:"⚠️大杀器⚠️",memo:"请谨慎使用!",size:100,values:GE},{type:Fe.keyword,queryOnly:true,label:"远程关键词示例",size:100,values:[],url:"https://gist.githubusercontent.com/northsea4/a6c1945eb12fe7a7ef125c323b83b3fc/raw?t={t}"},{type:Fe.keyword,queryOnly:true,label:"只查询示例",memo:"这是一个示例",size:10240,values:["奔驰宝马","美女荷官",'"最 新 位 址 獲 取"']}];function oi(e={}){return {id:Date.now().toString(),type:Fe.keyword,queryOnly:false,label:"",values:"",memo:"",size:0,sort:0,createdAt:0,updatedAt:0}}function YE(e,t){if(e=e.trim(),t===Fe.keyword)return nA(e);if(t!==Fe.suffix)return null;const n=XE(e);return {type:nt.filter,value:e,maxSize:-1,forDir:false,isFilter:n,pattern:n?ZE(e).toString():e,num:-1,fileIds:[],size:-1,status:$t.none}}function QE(e){return [$t.prepare,$t.deleting].includes(e.status)}function pp(e,t){const n=[];return QE(e)&&n.push("active"),(e.type===nt.filter||e.isFilter)&&n.push("is-filter"),e.type===nt.dirKeyword&&n.push("is-dir"),e.num&&n.push(`item-${No.matched}`),e.num===0&&n.push(`item-${No.notMatched}`),n}function XE(e){return new RegExp(`^${Lw}[\\S]{2,}`).test(e)}function ZE(e){const t=new RegExp(`^${Lw}`);let n=e.replace(t,"");const o=zu.get(n);if(!o)throw new Error(`"${e}"不是有效的筛选!`);return o}async function ni(e,t){let n;typeof e=="string"?n=e.split(/[\r\n]+/):n=e;const o=new Set;for(let s=0;s<n.length;s++){const r=n[s].trim();r.length>1&&o.add(r);}const i=[];return o.forEach(s=>{const r=YE(s,t);r&&i.push(r);}),i}function eA(e){return /(^'.+'$)|(^".+"$)/.test(e)}function hp(e,t){return e===""||!t.patternRegexp?false:(t.pattern,t.patternRegexp.test(e))}function mp(e,t,n){const o=Tw(e);o.num=0,o.size=0,o.fileIds=[];const i=new Set;let s=0;n.maxSize&&(s=n.maxSize*1024*1024),e.maxSize>=0&&(s=e.maxSize*1024*1024);for(let r=0;r<t.length;r++){const a=!!t[r].fid,l=a?t[r].fid:t[r].cid;if(!l||(e.type===nt.dirKeyword||e.type===nt.fileKeyword)&&(a&&e.type!==nt.fileKeyword||!a&&e.type!==nt.dirKeyword))continue;const c=parseFloat(t[r].s);s&&a&&c>s||e.type===nt.fileKeyword&&!hp(t[r].n,e)||e.type===nt.dirKeyword&&!hp(t[r].n,e)||e.type===nt.fileHash&&t[r].sha!==e.pattern.toUpperCase()||i.has(l)||(i.add(l),o.size+=c);}return o.fileIds=Array.from(i),o.num=o.fileIds.length,o}function Tw(e={}){return {type:nt.fileKeyword,value:"",pattern:"",patternRegexp:null,maxSize:-1,size:-1,fullMatch:false,caseSensitive:false,isRegexp:false,impartible:false,memo:"",...e}}function tA(e){if(e=e.trim().replace(/\/+$/,"").replace(/^\/+/,""),e==="")return null;const t={caseSensitive:false,fullMatch:false,maxSize:-1,isRegexp:false};let n=false;const o=e.split(/\s*,\s*/);for(let i=0;i<o.length;i++)o[i]=o[i].trim(),o[i]!==""&&(/^\d+$/.test(o[i])&&(t.maxSize=parseInt(o[i])),o[i]===zE&&(t.fullMatch=true),o[i]===HE&&(t.fullMatch=true,t.caseSensitive=true,n=true),o[i]===VE&&(t.caseSensitive=true,n=true),o[i]===qE&&(t.isRegexp=true));return t.isRegexp&&(t.caseSensitive=n?t.caseSensitive:false,t.fullMatch=false),t}function nA(e){const t=Tw();if(e=e.trim(),e===""||e.startsWith("//"))return null;if(/^[a-fA-F0-9]{40}(\/.*)?$/.test(e))return t.type=nt.fileHash,t.value=e,t.pattern=e.substring(0,40).toLowerCase(),t.memo=e.length>41?e.substring(41):void 0,t;const n=/^(#+)?([^\/]+)(\/[^\/]*)?(\/.+)?/,o=e.match(n);if(o){if(o[2]==="")return null;if(o[3]){const i=tA(o[3]);i&&(t.caseSensitive=i.caseSensitive,t.fullMatch=i.fullMatch,t.maxSize=i.maxSize,t.isRegexp=i.isRegexp);}if(t.value=e,t.pattern=o[2].trim(),o[1]===jE)return t.type=nt.filter,null;o[1]===yd?t.type=nt.dirKeyword:t.type=nt.fileKeyword,o[4]&&(t.memo=o[4].substring(1).trim());}return t.impartible=eA(t.pattern),t.impartible&&(t.pattern=t.pattern.replace(/^['"]|['"]$/g,"")),t.type===nt.dirKeyword&&(t.maxSize=-1),t.patternRegexp=oA(t),t}function oA(e){if(e.pattern===""||![nt.dirKeyword,nt.fileKeyword].includes(e.type))return null;let t="";if(e.caseSensitive||(t+="i"),e.isRegexp)return new RegExp(e.pattern,t);let n=f0(e.pattern);return e.fullMatch&&(n=`^${n}$`),e.impartible||(n=n.replace(/\s+/g,".*")),new RegExp(n,t)}function iA(e){const{type:t,pattern:n,isRegexp:o}=e;return t===nt.filter?zu.has(n)?{type:zu.get(n)}:/^\d$/.test(n)?{type:parseInt(n)}:{suffix:n}:o?{search_value:n.replace(/^\^/,"").replace(/\$$/,"")}:{search_value:n}}function ms(e,t,n){if(n){const o=ic(e,{});ru(e,{...o,...t});}else ru(e,t);}function sA(e={}){return $c({okStatus:[200],useFileReader:false,fileReader:{encoding:"utf-8",checkBlank:true}},e)}async function Mw(e,t={}){return new Promise((n,o)=>{const i=t.useFileReader?"blob":"text";Ia({method:"GET",url:e,responseType:i,nocache:!t.cache,onload:async s=>{if(t.okStatus&&!t.okStatus.includes(s.status)&&o(new Error(`请求失败!status=${s.status},statusText=${s.statusText}`)),t.useFileReader){let r=s.response,a=new FileReader;a.onload=l=>{console.log("[load] onload",l);let c=l.target?.result;typeof c=="string"?t.fileReader.checkBlank&&c===""?o(new Error("读取内容为空字符串")):n(c):o(new Error("读取结果不是字符串"));},a.readAsText(r,t.fileReader.encoding);return}n(s.response);},onerror:s=>{console.error("[load] onerror",s),o(`请求失败!status=${s?.status},statusText=${s?.statusText}`);}});})}async function rA(e){try{new URL(e.url);}catch{throw new Error(`无效的URL:${e.url}`)}e.url.replace("{t}",Date.now().toString());let t="";try{t=await Mw(e.url);}catch(n){throw new Error(`无法加载URL:${n.toString()}`)}if(t=t.trim(),t==="")throw new Error("URL返回内容为空!");e.values=t,e.lastSync=di();}const Ow=function(){return document.ontouchstart!==null?"click":"touchstart"},_a="__vue_click_away__",Bw=function(e,t,n){Rw(e);let o=n.context,i=t.value,s=false;setTimeout(function(){s=true;},0),e[_a]=function(r){if((!e||!e.contains(r.target))&&i&&s&&typeof i=="function")return i.call(o,r)},document.addEventListener(Ow(),e[_a],false);},Rw=function(e){document.removeEventListener(Ow(),e[_a],false),delete e[_a];},aA=function(e,t,n){t.value!==t.oldValue&&Bw(e,t,n);},lA={mounted:Bw,updated:aA,unmounted:Rw},uA=xe({__name:"Drawer",props:{isOpen:{type:Boolean,default:false},maxWidth:{default:"600px"},speed:{default:100},bgColor:{default:"#fff"}},emits:["close"],setup(e,{emit:t}){const n=e,o=V(false),i=V(false),s=l=>{const c=document.querySelector("body");c.style.overflow=l?"hidden":"";},r=l=>{l.target.classList.contains("ce-drawer__overlay")&&(i.value||a("close"));},a=t;return Ht(()=>{o.value=n.isOpen;}),He(()=>n.isOpen,l=>{i.value=true,l?(s(true),o.value=true):(s(false),setTimeout(()=>o.value=false,n.speed)),setTimeout(()=>i.value=false,n.speed);}),(l,c)=>(_(),S("div",null,[d("div",{class:Le(["ce-drawer",{"is-open":l.isOpen,"is-visible":o.value}])},[d("div",{class:"ce-drawer__overlay",style:Qn({transitionDuration:`${l.speed}ms`})},null,4),q((_(),S("div",{class:"ce-drawer__content",style:Qn({maxWidth:l.maxWidth,transitionDuration:`${l.speed}ms`,backgroundColor:l.bgColor})},[Ge(l.$slots,"default")],4)),[[ee(lA),r]])],2)]))}}),Js=Pe(uA,[["__file","Drawer.vue"]]),cA={class:"k-p-e"},dA={class:"ce-tag-plain"},fA={class:"text-primary"},pA={class:"text-success"},hA={key:0,class:"ce-hr"},mA=xe({__name:"KeywordPatternExamples",setup(e){return (t,n)=>(_(),S("div",cA,[n[2]||(n[2]=d("h4",{style:{"margin-bottom":"6px"}},"关键词说明(前4种类型已满足大部分需求场景)",-1)),(_(true),S($e,null,je(ee(UE),(o,i)=>(_(),S("div",{key:i},[d("div",null,[d("span",dA,B(o[0]),1),n[0]||(n[0]=I(" ",-1)),d("span",fA,B(o[1]),1),n[1]||(n[1]=I(" ",-1)),d("span",pA,B(o[2]),1)]),i===3?(_(),S("hr",hA)):fe("",true)]))),128))]))}}),Fw=Pe(mA,[["__file","KeywordPatternExamples.vue"]]),gA={class:"group-manager"},wA={key:0,class:"label-readonly",title:"当前分组只可用于查询"},yA={key:1,class:"label-readonly",title:"当前分组特征为远程文本"},bA=["title"],vA={class:"groups-list"},xA={key:0,class:"text-danger"},_A={class:"pure-table pure-table-bordered"},CA={align:"center"},kA=["onClick"],SA={class:"group-confirm-delete"},$A=["onClick"],EA=["onClick"],AA={class:"pure-form pure-form-stacked group-form"},PA={class:"pure-control-group"},IA={class:"pure-control-group"},DA={key:0,class:"pure-control-group"},LA={class:"pure-form-message"},TA={class:"pure-control-group"},MA={class:"pure-form-message"},OA={key:0,class:"text-info"},BA={key:1,class:"text-info"},RA=["onClick"],FA={class:"values"},NA={class:"v-input"},UA={class:"v-help"},jA={class:"pure-control-group"},zA={class:"pure-control-group"},HA=xe({__name:"GroupManager",props:{type:{},storageKey:{},config:{}},emits:["change"],setup(e,{emit:t}){const n=e,o=t,i=V(false),s=V(oi({type:n.type})),r=V([]),a=V(false),l=V(oi({type:n.type})),c=V(false),u=V(null),f=[nn.video,nn.audio,nn.image,nn.doc,nn.app,nn.archive];He(r,async ie=>{console.log("[groups change]",ie),ms(n.storageKey,ie,false),ie.length||(a.value=false,c.value=false);},{deep:true});let p=false;Ht(async()=>{if(!p){p=true,r.value=ic(n.storageKey,[]),console.log("[groups]",r.value);const{suffixGroup:ie,keywordGroup:F}=n.config;if(r.value.length){const U=r.value.find(Q=>Q.id===(n.type===Fe.suffix?ie:F));console.log("[group last choosen]",U),s.value=U||r.value[0],o("change",s.value);}else n.type===Fe.suffix&&!ie&&(await D(),ms(mt.cleanerConfig,{suffixGroup:s.value.id},true)),n.type===Fe.keyword&&!F&&(await D(),ms(mt.cleanerConfig,{keywordGroup:s.value.id},true));}}),Si(async()=>{});async function w(ie){const F=`#${ie}`;l.value.values.includes(F)||(l.value.values+=(`
`+F).trim()+`
`);}async function m(){i.value=false;}async function y(){c.value=false;}async function v(){c.value=true,a.value=false;}async function E(){u.value.show();}async function L(){u.value.hide();}async function P(){l.value.createdAt&&(l.value=oi({type:n.type})),l.value.size=5,n.type===Fe.keyword&&(l.value.size=100),i.value=true;}async function D(){let ie=[];n.type===Fe.suffix?ie=WE:ie=JE;for(let F=0;F<ie.length;F++){const U={...oi({type:ie[F].type}),...ie[F]};l.value=U,l.value.type=U.type,l.value.queryOnly=U.queryOnly,l.value.size=U.size,l.value.label=U.label,l.value.memo=U.memo,l.value.createdAt=0,l.value.updatedAt=0,Array.isArray(U.values)?l.value.values=U.values.join(`
`):l.value.values=U.values,await z(),await L();}r.value.length&&await ue(r.value[0]);}async function O(ie,F=false){if(!F){const{isConfirmed:Q}=await te.fire({html:`确定删除"${s.value.label}"?`,icon:"question"});if(!Q)return}let U=-1;for(let Q=0;Q<r.value.length;Q++)if(r.value[Q].id===s.value.id){U=Q;break}r.value.splice(U,1),r.value.length?s.value=r.value[0]:s.value=oi({type:n.type}),o("change",s.value),await Y({icon:"success",title:"删除成功!",timer:1500});}async function W(ie){l.value=ie,i.value=true;}async function z(){let ie=[];try{ie=await ni(l.value.values,l.value.type);}catch(ve){await te.fire({icon:"error",text:ve.message});return}if(l.value.label=l.value.label.trim(),l.value.memo=l.value.memo.trim(),l.value.label===""){await Y({icon:"warning",text:"请输入标题!"});return}let F=-1;for(let ve=0;ve<r.value.length;ve++)if(r.value[ve].id===l.value.id&&l.value.id){F=ve;break}const U=di();l.value.updatedAt=U,l.value.createdAt||(l.value.createdAt=U);let Q=[];for(let ve=0;ve<ie.length;ve++)Q.push(ie[ve].value);l.value.values=Q.join(`
`).trim(),console.log("[saveGroup]",l.value,F),F===-1?(r.value.push(l.value),Y({icon:"success",text:"添加成功"})):(r.value[F]=l.value,Y({icon:"success",text:"更新成功"}));const le=!s.value.createdAt;le&&(s.value=l.value),(l.value.id===s.value.id||le)&&o("change",l.value),await m();}async function ue(ie){s.value=ie;const{id:F}=s.value;n.type===Fe.suffix&&(n.config.suffixGroup=F,ms(mt.cleanerConfig,{suffixGroup:F},true)),n.type===Fe.keyword&&(n.config.keywordGroup=F,ms(mt.cleanerConfig,{keywordGroup:F},true)),o("change",ie);}async function me(ie,F=false){try{await rA(ie);}catch(U){console.error(U),Y({icon:"error",text:U.message});return}F?(l.value=ie,await z()):Y({icon:"success",text:"读取成功"});}return (ie,F)=>{const U=xo("VDropdown");return _(),S("div",gA,[s.value.queryOnly?(_(),S("span",wA," 🔍 只查询 ")):fe("",true),s.value.url?(_(),S("span",yA," 🔗 远程 ")):fe("",true),s.value.createdAt?(_(),S("span",{key:2,class:"group-label",title:`当前使用的分组: ${s.value.label}`},[d("span",null,[F[11]||(F[11]=d("small",null,"分组:",-1)),I(" "+B(s.value.label),1)])],8,bA)):fe("",true),s.value.url?(_(),S("a",{key:3,href:"javascript:void(0)",class:"pure-button button-success",onClick:F[0]||(F[0]=Q=>me(s.value,true))}," ↓ 同步关键词")):fe("",true),d("a",{href:"javascript:void(0)",class:"pure-button",onClick:F[1]||(F[1]=Q=>W(s.value))}," ✎ 编辑 "),F[36]||(F[36]=I(" ",-1)),d("a",{href:"javascript:void(0)",class:"pure-button button-small",onClick:P},"+ 新增分组"),oe(U,{ref_key:"list",ref:u,onHide:y,onShow:v,distance:5},{popper:ge(()=>[d("div",vA,[r.value.length?fe("",!0):(_(),S("h3",xA,[F[12]||(F[12]=I(" 还没有添加任何分组。你可以: ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:P},"添加"),F[13]||(F[13]=I(" ",-1)),F[14]||(F[14]=d("span",{class:"text-info"},"或",-1)),F[15]||(F[15]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:D},"使用脚本内置"),F[16]||(F[16]=d("br",null,null,-1)),F[17]||(F[17]=d("br",null,null,-1))])),d("table",_A,[F[21]||(F[21]=d("thead",null,[d("tr",null,[d("th",{width:"25"},"#"),d("th",{width:"70"},"只查询"),d("th",{width:"150"},"名称"),d("th",{width:"150"},"备注"),d("th",{width:"70"},[I("大小"),d("small",null,"MB")]),d("th",{width:"220"},"操作")])],-1)),d("tbody",null,[(_(!0),S($e,null,je(r.value,(Q,le)=>(_(),S("tr",{key:le},[d("td",null,B(le+1),1),d("td",CA,B(Q.queryOnly?"是":"否"),1),d("td",null,B(Q.label),1),d("td",null,B(Q.memo),1),d("td",null,B(Q.size),1),d("td",null,[d("button",{type:"button",class:"pure-button button-xsmall text-primary",onClick:ve=>ue(Q)},"载入",8,kA),F[19]||(F[19]=I(" ",-1)),oe(U,null,{popper:ge(()=>[d("div",SA,[d("button",{type:"button",class:"pure-button button-error",onClick:ve=>O(Q,!0)},"确定",8,$A)])]),default:ge(()=>[F[18]||(F[18]=d("button",{type:"button",class:"pure-button button-xsmall text-danger"},"删除",-1))]),_:2,__:[18]},1024),F[20]||(F[20]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:ve=>W(Q)},"编辑",8,EA)])]))),128))])])])]),default:ge(()=>[d("a",{href:"javascript:void(0)",class:"pure-button button-small",onClick:E},"≡ 分组列表")]),_:1},512),oe(Js,{"is-open":i.value,onClose:F[10]||(F[10]=Q=>i.value=false),"max-width":"1030px",speed:100,"bg-color":"#fff"},{default:ge(()=>[d("form",AA,[d("fieldset",null,[d("div",PA,[F[22]||(F[22]=d("label",{for:"groupLabel",class:"text-primary"},"* 标题",-1)),q(d("input",{type:"text","onUpdate:modelValue":F[2]||(F[2]=Q=>l.value.label=Q),id:"groupLabel",class:"pure-input-1-2",placeholder:"分组标题"},null,512),[[Ve,l.value.label]]),F[23]||(F[23]=I(" ",-1)),l.value.queryOnly?(_(),S("button",{key:0,type:"button",class:"pure-button button-small button-warning",onClick:F[3]||(F[3]=Q=>l.value.queryOnly=!1)},"已设置为仅用于查询 | 点击取消设置")):fe("",!0),l.value.queryOnly?fe("",!0):(_(),S("button",{key:1,type:"button",class:"pure-button button-small pure-button-primary",onClick:F[4]||(F[4]=Q=>l.value.queryOnly=!0)},"设置为仅用于查询"))]),d("div",IA,[F[24]||(F[24]=d("label",{for:"groupMemo",class:"text-primary"},"备注",-1)),q(d("input",{type:"text","onUpdate:modelValue":F[5]||(F[5]=Q=>l.value.memo=Q),id:"groupMemo",placeholder:"分组备注"},null,512),[[Ve,l.value.memo]])]),n.type===ee(Fe).keyword?(_(),S("div",DA,[F[27]||(F[27]=d("label",{for:"groupUrl",class:"text-primary"},"远程链接",-1)),d("div",LA,[F[25]||(F[25]=d("span",null,"纯文本, utf-8编码",-1)),F[26]||(F[26]=I(" ",-1)),l.value.url?(_(),S("button",{key:0,type:"button",class:"pure-button button-small button-success",onClick:F[6]||(F[6]=Q=>me(l.value,!1))}," 读取 ")):fe("",!0)]),q(d("input",{type:"text","onUpdate:modelValue":F[7]||(F[7]=Q=>l.value.url=Q),id:"groupUrl",placeholder:"远程链接"},null,512),[[Ve,l.value.url]])])):fe("",!0),d("div",TA,[F[32]||(F[32]=d("label",{for:"groupValues",class:"text-primary"},"* 特征列表",-1)),d("div",MA,[n.type===ee(Fe).keyword?(_(),S("span",OA,[F[28]||(F[28]=I(" 默认只匹配文件名。前面带",-1)),d("b",null,B(ee(yd)),1),F[29]||(F[29]=I("则只匹配目录名。 ",-1))])):fe("",!0),n.type===ee(Fe).suffix?(_(),S("span",BA,[F[30]||(F[30]=I(" 支持115自带筛选: ",-1)),(_(),S($e,null,je(f,(Q,le)=>d("span",{class:"filter-label text-success",key:le,onClick:ve=>w(Q)}," #"+B(Q),9,RA)),64)),F[31]||(F[31]=d("small",{class:"text-primary"},"(点击添加)",-1))])):fe("",!0)]),d("div",FA,[d("div",NA,[q(d("textarea",{id:"groupValues","onUpdate:modelValue":F[8]||(F[8]=Q=>l.value.values=Q),rows:"14",placeholder:"每行一个"},null,512),[[Ve,l.value.values]])]),d("div",UA,[oe(Fw)])])]),d("div",jA,[F[33]||(F[33]=d("label",{for:"groupMemo",class:"text-primary"},"* 文件大小",-1)),F[34]||(F[34]=d("div",{class:"pure-form-message"},[I("只清理小于该大小的文件,单位"),d("b",null,"MB")],-1)),q(d("input",{type:"number","onUpdate:modelValue":F[9]||(F[9]=Q=>l.value.size=Q),class:"pure-input-1-4",placeholder:"文件大小小于该数值才清理"},null,512),[[Ve,l.value.size]])]),d("div",zA,[d("button",{type:"button",class:"pure-button pure-button-primary",onClick:z},B(l.value.createdAt?"更新":"添加"),1),F[35]||(F[35]=I(" ",-1)),d("button",{type:"button",class:"pure-button",onClick:m},"取消")])])])]),_:1},8,["is-open"])])}}}),gp=Pe(HA,[["__file","GroupManager.vue"]]),VA={class:"cloud115-eh-cleaner-help"},qA=xe({__name:"Help",setup(e){return (t,n)=>(_(),S("div",VA,[d("div",null,[n[3]||(n[3]=Sg('<h2>免责声明</h2><div><p>该工具仅作为学习测试用途,使用该工具造成的任何结果由使用人承担。</p></div><hr><h2>说明</h2><ul style="color:#f40;"><li class="text-primary">始于清理,但不止于清理!</li><li>* 仅对当前选中的目录及其子目录生效。</li><li>* 通过<b class="text-primary">新增分组 / 分组列表</b>管理你的清理特征。</li><li>* 建议整理自己的特征,也欢迎在交流中分享你的特征。</li><li>* <b class="text-primary">只查询</b>按钮,只会进行查询。</li><li>* <b class="text-primary">一键清理</b>是先查询,再进行删除!</li><li>* 由于搜索接口限制,如果某个关键词结果数量超过1万,可能会清理不完全,可以多执行几次清理。</li><li>* <b>清理期间,请保持当前页面处于激活状态!</b></li><li>* <b>请谨慎操作!请谨慎操作!请谨慎操作!</b></li></ul><hr><h3>按 后缀名 清理</h3><div><p>1. 点击<b class="text-primary">分组列表</b>,选择一个分组;</p><p>2. 确认后缀名和文件大小限制等的设定;</p><p>3. 点击<b class="text-primary">一键清理</b>按钮,耐心等待。</p></div><hr><h3>按 关键词 清理</h3>',10)),d("div",null,[n[0]||(n[0]=d("p",{class:"text-danger"},[I("目录名关键词使用"),d("b",null,"搜索"),I("接口查找匹配,只能逐个关键词进行处理,请尽量使用简单的关键词,否则可能会匹配不到。")],-1)),n[1]||(n[1]=d("p",{class:"text-danger"},[I("文件名关键词使用"),d("b",null,"列表"),I("接口查找匹配,速度较快,且支持更灵活的关键词。")],-1)),n[2]||(n[2]=d("br",null,null,-1)),oe(Fw)])])]))}}),WA=Pe(qA,[["__file","Help.vue"]]),KA={key:0},GA={key:1},JA={key:2},YA={key:3},QA={key:4},XA={key:5},ZA={key:6},eP={key:7},tP={key:8},nP={key:9},oP=xe({__name:"Pager",props:{totalItems:{type:Number,required:true},itemsPerPage:{type:Number,default:10,validator:e=>{if(e<=0){const t="itemsPerPage attribute must be greater than 0.";throw console.error(t),new TypeError(t)}return true}},currentPage:{type:Number,default:1,validator:e=>{const t="currentPage attribute must be greater than 0.";if(e<=0)throw console.error(t),new TypeError(t);return true}},modelValue:{type:Number,required:true,validator:e=>{const t="v-model is required and must be greater than 0.";if(e<=0)throw console.error(t),new TypeError(t);return true}},maxPagesShown:{type:Number,default:5,validator:e=>{const t="maxPagesShown attribute must be greater than 0.";if(e<=0)throw console.error(t),new TypeError(t);return true}},dir:{type:String,default:"ltr",validator:e=>{const t='dir attribute must be either "ltr" or "rtl".';if(e!=="ltr"&&e!=="rtl")throw console.error(t),new TypeError(t);return true}},type:{type:String,default:"button",validator:e=>{const t=["link","button"],n="type attribute must be one of the following: "+t.join(", ");if(t.indexOf(e)===-1)throw console.error(n),new TypeError(n);return true}},onClick:{type:Function,default:()=>{}},prevButtonContent:{type:String,default:"<"},nextButtonContent:{type:String,default:">"},hidePrevNext:{type:Boolean,default:false},hidePrevNextWhenEnds:{type:Boolean,default:false},showBreakpointButtons:{type:Boolean,default:true},disableBreakpointButtons:{type:Boolean,default:false},startingBreakpointContent:{type:String,default:"..."},endingBreakpointButtonContent:{type:String,default:"..."},showJumpButtons:{type:Boolean,default:false},linkUrl:{type:String,default:"#"},backwardJumpButtonContent:{type:String,default:"<<"},forwardJumpButtonContent:{type:String,default:">>"},disablePagination:{type:Boolean,default:false},showEndingButtons:{type:Boolean,default:false},firstPageContent:{type:String,default:"First"},lastPageContent:{type:String,default:"Last"},backButtonClass:{type:String,default:"back-button"},nextButtonClass:{type:String,default:"next-button"},firstButtonClass:{type:String,default:"first-button"},lastButtonClass:{type:String,default:"last-button"},numberButtonsClass:{type:String,default:"number-buttons"},startingBreakpointButtonClass:{type:String,default:"starting-breakpoint-button"},endingBreakPointButtonClass:{type:String,default:"ending-breakpoint-button"},firstPageButtonClass:{type:String,default:"first-page-button"},lastPageButtonClass:{type:String,default:"last-page-button"},paginateButtonsClass:{type:String,default:"paginate-buttons pure-button"},disabledPaginateButtonsClass:{type:String,default:"disabled-paginate-buttons"},activePageClass:{type:String,default:"active-page"},paginationContainerClass:{type:String,default:"pagination-container"},disabledBreakPointButtonClass:{type:String,default:"disabled-breakpoint-button"},backwardJumpButtonClass:{type:String,default:"backward-jump-button"},forwardJumpButtonClass:{type:String,default:"forward-jump-button"},disabledBackwardJumpButtonClass:{type:String,default:"disabled-backward-jump-button"},disabledBackButtonClass:{type:String,default:"disabled-back-button"},disabledFirstButtonClass:{type:String,default:"disabled-first-button"},disabledLastButtonClass:{type:String,default:"disabled-last-button"},disabledNextButtonClass:{type:String,default:"disabled-next-button"},disabledForwardJumpButtonClass:{type:String,default:"disabled-forward-jump-button"}},emits:["update:modelValue","click"],setup(e,{emit:t}){const n=e;if(n.currentPage&&!n.modelValue)throw new Error("currentPage/current-page is now deprecated, use v-model instead to set the current page.");if(!n.modelValue)throw new TypeError("v-model is required for the paginate component.");const o=c_(n,"modelValue"),i=t,s=P=>{P!==o.value&&(P>l.value||P<1||n.disablePagination||(i("update:modelValue",P),i("click",P)));},r=P=>P,a=P=>n.type!=="link"?"":n.linkUrl.replace("[page]",P.toString()),l=Ke(()=>Math.ceil(n.totalItems/n.itemsPerPage)),c=Ke(()=>{let P,D;if(l.value<=n.maxPagesShown)P=1,D=l.value;else {let W=Math.floor(n.maxPagesShown/2),z=Math.ceil(n.maxPagesShown/2)-1;o.value<=W?(P=1,D=n.maxPagesShown):o.value+z>=l.value?(P=l.value-n.maxPagesShown+1,D=l.value):(P=o.value-W,D=o.value+z);}let O=Array.from(Array(D+1-P).keys()).map(W=>P+W);return n.dir==="rtl"&&(O=O.reverse()),{totalItems:n.totalItems,currentPage:o.value,itemsPerPage:n.itemsPerPage,totalPages:l,startPage:P,endPage:D,pages:O}}),u=Ke(()=>n.dir==="rtl"),f=Ke(()=>u.value?!n.hidePrevNextWhenEnds||o.value!==l.value:!n.hidePrevNextWhenEnds||o.value!==1),p=Ke(()=>u.value?!n.hidePrevNextWhenEnds||o.value!==1:!n.hidePrevNextWhenEnds||o.value!==l.value),w=Ke(()=>u.value?c.value.pages[0]<l.value-1:c.value.pages[0]>=3),m=Ke(()=>u.value?c.value.pages[c.value.pages.length-1]>=3:c.value.pages[c.value.pages.length-1]<l.value-1),y=Ke(()=>u.value?c.value.pages[0]<l.value:c.value.pages[0]>=2),v=Ke(()=>u.value?c.value.pages[c.value.pages.length-1]>=2:c.value.pages[c.value.pages.length-1]<l.value),E=Ke(()=>o.value!==1),L=Ke(()=>o.value!==l.value);if(n.type==="link"&&n.linkUrl==="#")throw console.error("linkUrl attribute is required if type attribute is 'link'"),new TypeError("linkUrl attribute is required if type attribute is 'link'");if(n.type==="link"&&!n.linkUrl.includes("[page]"))throw console.error("linkUrl attribute must contain '[page]' substring"),new TypeError("linkUrl attribute must contain '[page]' substring");return (P,D)=>(_(),S("ul",{id:"componentContainer",class:Le(e.paginationContainerClass)},[e.showEndingButtons&&E.value?(_(),S("li",KA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?l.value:1),onClick:D[0]||(D[0]=kn(O=>s(u.value?l.value:1),["prevent"])),class:Le([e.firstPageButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"first-page-button",{},()=>[I(B(e.firstPageContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showJumpButtons&&w.value?(_(),S("li",GA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value+Math.ceil(e.maxPagesShown/2):o.value-Math.ceil(e.maxPagesShown/2)),onClick:D[1]||(D[1]=kn(O=>s(u.value?o.value+Math.ceil(e.maxPagesShown/2):o.value-Math.ceil(e.maxPagesShown/2)),["prevent"])),class:Le([e.backwardJumpButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledBackwardJumpButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"backward-jump-button",{},()=>[I(B(e.backwardJumpButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),!e.hidePrevNext&&f.value?(_(),S("li",JA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value+1:o.value-1),onClick:D[2]||(D[2]=kn(O=>s(u.value?o.value+1:o.value-1),["prevent"])),class:Le([e.backButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledBackButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"prev-button",{},()=>[I(B(e.prevButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showBreakpointButtons&&y.value?(_(),S("li",YA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?l.value:1),onClick:D[3]||(D[3]=kn(O=>s(u.value?l.value:1),["prevent"])),class:Le([e.firstButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledFirstButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[I(B(u.value?r(l.value):r(1)),1)]),_:1},8,["href","class","disabled"]))])):fe("",true),e.showBreakpointButtons&&w.value?(_(),S("li",QA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(e.disableBreakpointButtons?o.value:u.value?o.value+Math.ceil(e.maxPagesShown/2):o.value-Math.ceil(e.maxPagesShown/2)),onClick:D[4]||(D[4]=kn(O=>s(e.disableBreakpointButtons?o.value:u.value?o.value+Math.ceil(e.maxPagesShown/2):o.value-Math.ceil(e.maxPagesShown/2)),["prevent"])),disabled:e.disableBreakpointButtons||e.disablePagination,class:Le([e.startingBreakpointButtonClass,e.paginateButtonsClass,e.disableBreakpointButtons||e.disablePagination?`${e.disabledPaginateButtonsClass} ${e.disabledBreakPointButtonClass}`:""])},{default:ge(()=>[Ge(P.$slots,"starting-breakpoint-button",{},()=>[I(B(e.startingBreakpointContent),1)])]),_:3},8,["href","disabled","class"]))])):fe("",true),(_(true),S($e,null,je(c.value.pages,(O,W)=>(_(),S("li",{key:W},[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(O),onClick:kn(()=>s(O),["prevent"]),class:Le([e.paginateButtonsClass,e.numberButtonsClass,O===o.value?e.activePageClass:"",e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[I(B(r(O)),1)]),_:2},1032,["href","onClick","class","disabled"]))]))),128)),e.showBreakpointButtons&&m.value?(_(),S("li",XA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(e.disableBreakpointButtons?o.value:u.value?o.value-Math.ceil(e.maxPagesShown/2):o.value+Math.ceil(e.maxPagesShown/2)),onClick:D[5]||(D[5]=kn(O=>s(e.disableBreakpointButtons?o.value:u.value?o.value-Math.ceil(e.maxPagesShown/2):o.value+Math.ceil(e.maxPagesShown/2)),["prevent"])),disabled:e.disableBreakpointButtons||e.disablePagination,class:Le([e.endingBreakPointButtonClass,e.paginateButtonsClass,e.disableBreakpointButtons||e.disablePagination?`${e.disabledPaginateButtonsClass} ${e.disabledBreakPointButtonClass}`:""])},{default:ge(()=>[Ge(P.$slots,"ending-breakpoint-button",{},()=>[I(B(e.endingBreakpointButtonContent),1)])]),_:3},8,["href","disabled","class"]))])):fe("",true),e.showBreakpointButtons&&v.value?(_(),S("li",ZA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?1:l.value),onClick:D[6]||(D[6]=kn(O=>s(u.value?1:l.value),["prevent"])),class:Le([e.lastButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledLastButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[I(B(u.value?r(1):r(l.value)),1)]),_:1},8,["href","class","disabled"]))])):fe("",true),!e.hidePrevNext&&p.value?(_(),S("li",eP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value-1:o.value+1),onClick:D[7]||(D[7]=kn(O=>s(u.value?o.value-1:o.value+1),["prevent"])),class:Le([e.paginateButtonsClass,e.nextButtonClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledNextButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"next-button",{},()=>[I(B(e.nextButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showJumpButtons&&m.value?(_(),S("li",tP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value-Math.ceil(e.maxPagesShown/2):o.value+Math.ceil(e.maxPagesShown/2)),onClick:D[8]||(D[8]=kn(O=>s(u.value?o.value-Math.ceil(e.maxPagesShown/2):o.value+Math.ceil(e.maxPagesShown/2)),["prevent"])),class:Le([e.forwardJumpButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledForwardJumpButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"forward-jump-button",{},()=>[I(B(e.forwardJumpButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showEndingButtons&&L.value?(_(),S("li",nP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?1:l.value),onClick:D[9]||(D[9]=kn(O=>s(u.value?1:l.value),["prevent"])),class:Le([e.lastPageButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(P.$slots,"last-page-button",{},()=>[I(B(e.lastPageContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true)],2))}}),wp=Pe(oP,[["__file","Pager.vue"]]),iP=xe({__name:"Divider",props:{paddingY:{default:10},color:{default:"#eee"},transparent:{type:Boolean,default:false}},setup(e){const t=e,n=Ke(()=>{const o=t.transparent?"transparent":t.color,i=`${t.paddingY}px`;return {marginTop:i,height:i,borderTop:`1px solid ${o}`}});return (o,i)=>(_(),S("div",{class:"ce-divider",style:Qn(n.value)},[Ge(o.$slots,"default")],4))}}),yp=Pe(iP,[["__file","Divider.vue"]]),sP={class:"ce-file-list"},rP={class:"text-small text-info"},aP={class:"text-primary"},lP={class:"text-danger"},uP={class:"item-meta"},cP={key:0,class:"ce-label"},dP={key:1,class:"ce-label"},fP={key:2,class:"ce-label"},pP={key:3,class:"ce-label"},hP={key:4,class:"ce-label"},mP={key:5,class:"ce-label ce-label-danger"},gP={key:6,class:"ce-label ce-label-danger"},wP={key:7,class:"text-info"},yP={class:"text-success"},bP={class:"pure-table pure-table-bordered"},vP={class:"text-small"},xP={class:"text-success"},_P=xe({__name:"FileList",props:{group:{},pattern:{},files:{}},setup(e){const t=e,n=V([]),o=V(0),i=V(15),s=V(5),r=V(1);St(async()=>{o.value=t.pattern.fileIds?.length||0,a();});function a(c=1){const u=[],{fileIds:f=[]}=t.pattern,p=i.value*(c-1),w=f.slice(p,p+i.value);for(const m of w){const y=t.files.get(m);if(y){const v=_i(y);u.push(v);}}n.value=u;}function l(c){a(c);}return (c,u)=>(_(),S("div",sP,[d("div",null,[d("div",rP,[u[2]||(u[2]=d("small",null,"原始:",-1)),u[3]||(u[3]=I()),d("span",aP,B(c.pattern.value),1),u[4]||(u[4]=I(", ",-1)),u[5]||(u[5]=d("small",null,"类型:",-1)),u[6]||(u[6]=I()),d("span",lP,B(ee(Dw)[c.pattern.type]),1),d("div",null," fullMatch: "+B(c.pattern.fullMatch)+", caseSensitive: "+B(c.pattern.caseSensitive)+", impartible: "+B(c.pattern.impartible)+", isRegexp: "+B(c.pattern.isRegexp)+", maxSize: "+B(c.pattern.maxSize)+", patternRegexp: "+B(c.pattern.patternRegexp),1)]),u[8]||(u[8]=d("hr",null,null,-1)),d("div",uP,[c.pattern.fullMatch?(_(),S("span",cP,"全等")):fe("",true),c.pattern.caseSensitive?(_(),S("span",dP,"区分大小写")):fe("",true),c.pattern.impartible?(_(),S("span",fP,"匹配空格")):fe("",true),c.pattern.isRegexp?(_(),S("span",pP,"正则")):fe("",true),c.pattern.type===ee(nt).fileHash?(_(),S("span",hP,"sha1")):fe("",true),c.pattern.maxSize===0?(_(),S("span",mP,"任意大小")):fe("",true),c.pattern.maxSize>0?(_(),S("span",gP,"不大于"+B(c.pattern.maxSize)+"MB",1)):fe("",true),c.pattern.memo?(_(),S("div",wP,[u[7]||(u[7]=d("small",null,"备注:",-1)),I(" "+B(c.pattern.memo),1)])):fe("",true)])]),u[10]||(u[10]=d("br",null,null,-1)),d("div",null,[o.value>i.value?(_(),tt(wp,{key:0,"total-items":o.value,"items-per-page":i.value,"max-pages-shown":s.value,modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=f=>r.value=f),onClick:l},null,8,["total-items","items-per-page","max-pages-shown","modelValue"])):fe("",true),d("span",yP,"数量: "+B(o.value),1),oe(yp,{transparent:"","padding-y":5}),d("table",bP,[u[9]||(u[9]=d("thead",null,[d("tr",null,[d("th",null,"#"),d("th",{width:"30"},"类型"),d("th",null,"ID"),d("th",{width:"250"},"名称"),d("th",null,"大小"),d("th",{width:"305"},"SHA1")])],-1)),d("tbody",null,[(_(true),S($e,null,je(n.value,(f,p)=>(_(),S("tr",{key:p},[d("td",null,B(i.value*(r.value-1)+p+1),1),d("td",null,B(f.isDir?"目录":"文件"),1),d("td",null,B(f.id),1),d("td",null,B(f.name),1),d("td",null,B(f.sizeDesc),1),d("td",vP,B(f.hash),1)]))),128))])]),oe(yp,{transparent:"","padding-y":5}),o.value>i.value?(_(),tt(wp,{key:1,"total-items":o.value,"items-per-page":i.value,"max-pages-shown":s.value,modelValue:r.value,"onUpdate:modelValue":u[1]||(u[1]=f=>r.value=f),onClick:l},null,8,["total-items","items-per-page","max-pages-shown","modelValue"])):fe("",true),d("span",xP,"数量: "+B(o.value),1)])]))}}),CP=Pe(_P,[["__scopeId","data-v-a2b2b54c"],["__file","FileList.vue"]]);function kP(e,t){return Object.entries(e).map(([n,o])=>({label:o,value:n,checked:t?t(n):false}))}const SP={class:"ce-button-group"},$P=["onClick"],EP=xe({__name:"index",props:{modelValue:{type:[String,Number,Boolean,Array]},multiple:{type:Boolean,default:false},options:{},mapping:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,i=Ke(()=>{let a=[];const l=c=>n.multiple?n.modelValue.includes(c):n.modelValue===c;return n.mapping?a=kP(n.mapping,l):n.options&&(a=Sc(n.options).map(c=>({...c,checked:l(c.value)}))),a}),s=V(n.modelValue);function r(a){n.multiple?(a.checked=!a.checked,s.value=i.value.filter(l=>l.checked).map(l=>l.value)):(i.value.forEach(l=>{l.checked=l.value===a.value;}),s.value=a.value),o("update:modelValue",s.value);}return (a,l)=>(_(),S("span",SP,[(_(true),S($e,null,je(i.value,c=>(_(),S("button",{key:c.value?.toString(),type:"button",class:Le(["pure-button",{"pure-button-primary":c.checked}]),onClick:u=>r(c)},B(c.label),11,$P))),128))]))}}),Ca=Pe(EP,[["__file","index.vue"]]),AP={class:"ce-config ce-cleaner-config"},PP={class:"pure-form pure-form-aligned"},IP={class:"pure-control-group"},DP={class:"pure-control-group"},LP={class:"pure-control-group"},TP={class:"pure-control-group"},MP=xe({__name:"Config",setup(e){const t={[ho.all]:"全部",[ho.file]:"文件",[ho.dir]:"目录"},n={[No.all]:"全部",[No.matched]:"有匹配",[No.notMatched]:"无匹配"},o=V(gd());let i=false;return St(async()=>{o.value=await wr(),i=true,He(o,lt(async s=>{i&&(await wd({showEntryOnPathBar:s.showEntryOnPathBar,keywordDefaultCategory:s.keywordDefaultCategory,keywordDefaultResult:s.keywordDefaultResult,cleanWithoutConfirm:s.cleanWithoutConfirm}),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}));},500),{deep:true});}),(s,r)=>(_(),S("div",AP,[r[11]||(r[11]=d("h2",null,"文件清理工具设置",-1)),d("form",PP,[d("fieldset",null,[r[5]||(r[5]=d("legend",null,"基础设置",-1)),d("div",IP,[r[4]||(r[4]=d("label",{for:"showEntryOnPathBar"},'在路径栏显示"清理文件"入口按钮',-1)),q(d("input",{id:"showEntryOnPathBar",type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=a=>o.value.showEntryOnPathBar=a)},null,512),[[ye,o.value.showEntryOnPathBar]])])]),d("fieldset",null,[r[8]||(r[8]=d("legend",null,"按关键词清理设置",-1)),d("div",DP,[r[6]||(r[6]=d("label",{for:"defaultKeywordCategory"},'默认"关键词类别"',-1)),oe(Ca,{modelValue:o.value.keywordDefaultCategory,"onUpdate:modelValue":r[1]||(r[1]=a=>o.value.keywordDefaultCategory=a),mapping:t},null,8,["modelValue"])]),d("div",LP,[r[7]||(r[7]=d("label",{for:"defaultResultFilter"},'默认"结果筛选"',-1)),oe(Ca,{modelValue:o.value.keywordDefaultResult,"onUpdate:modelValue":r[2]||(r[2]=a=>o.value.keywordDefaultResult=a),mapping:n},null,8,["modelValue"])])]),d("fieldset",null,[r[10]||(r[10]=d("legend",null,"高级设置",-1)),d("div",TP,[r[9]||(r[9]=d("label",{for:"cleanWithoutConfirm"},'点击"一键清理"时不需确认',-1)),q(d("input",{id:"cleanWithoutConfirm",type:"checkbox","onUpdate:modelValue":r[3]||(r[3]=a=>o.value.cleanWithoutConfirm=a)},null,512),[[ye,o.value.cleanWithoutConfirm]])])])])]))}}),OP=Pe(MP,[["__file","Config.vue"]]),BP=xe({__name:"GoTop",props:{label:{default:"回到顶部"},container:{default:"body"}},setup(e){const t=e;async function n(){t.container instanceof HTMLElement?t.container.scrollTo(0,0):document.querySelector(t.container)?.scrollTo(0,0);}return (o,i)=>Ge(o.$slots,"default",{},()=>[d("button",{type:"button",class:"pure-button button-small",onClick:n},B(o.label),1)])}}),Nw=Pe(BP,[["__file","GoTop.vue"]]),RP=".v-popper__arrow-container{display:none}.ce-cleaner-x .btn-open{padding:0 6px;vertical-align:text-top;line-height:30px;border-radius:4px;background:#4faa4f;display:none}.ce-cleaner-x .actions-bar{padding-bottom:10px;width:72%}.ce-cleaner-x .actions-bar .title{font-size:18px;font-weight:700;color:#15110c}.ce-cleaner-x .actions-bar .close{margin-left:20px;margin-right:10px;color:#f40}.ce-cleaner-x .actions-bar i.tp-folder{width:18px;height:18px;vertical-align:sub}.ce-cleaner-x .actions-bar .ce-path{font-size:14px;margin-top:4px}.ce-cleaner-x .actions-bar .ce-path a:hover{text-decoration:underline}";Et(RP);const FP='@charset "UTF-8";#cloud115Cleaner{margin-left:10px}.cloud115-eh-cleaner{position:relative}.cloud115-eh-cleaner-drawer{background:#fff;padding:10px 20px 200px;overflow-y:auto}.cloud115-eh-cleaner-drawer.loading{cursor:wait}.cloud115-eh-cleaner-drawer.loading button,.cloud115-eh-cleaner-drawer.loading input{cursor:no-drop;pointer-events:none}.cloud115-eh-cleaner-drawer .config-toggle{display:inline-block;background:#eee;border-radius:4px;opacity:.2;padding:2px 4px;cursor:pointer}.cloud115-eh-cleaner-drawer .config-toggle.hover{opacity:.7}.cloud115-eh-cleaner-drawer .by-box .by-header{padding-bottom:10px}.cloud115-eh-cleaner-drawer .by-box .by-header .title{font-size:16px;margin-right:8px;color:#0078e6;font-weight:400}.cloud115-eh-cleaner-drawer .by-box .by-header .filter-size{width:100px;font-size:14px;font-weight:700;color:#0078e6;text-indent:6px;border-radius:4px;border:1px solid #919399;text-align:center}.cloud115-eh-cleaner-drawer .by-box .pure-button-group{display:inline-block}.cloud115-eh-cleaner-drawer .by-box .pure-button-group .pure-button{vertical-align:inherit}.cloud115-eh-cleaner-drawer .by-box .pattern-groups{width:750px;text-align:right}.cloud115-eh-cleaner-drawer .by-box .pattern-groups a{font-size:12px;padding:0 4px;margin-right:8px}.cloud115-eh-cleaner-drawer .by-box table tr.active{background:#f7ffc3}.cloud115-eh-cleaner-drawer .by-box table tr.is-dir .pattern{color:#f40}.cloud115-eh-cleaner-drawer .by-box table tr th,.cloud115-eh-cleaner-drawer .by-box table tr td{padding:.5em;font-size:12px}.cloud115-eh-cleaner-drawer .by-box table tr .item-meta{font-size:11px}.cloud115-eh-cleaner-drawer .by-box table tr .item-meta .ce-label{background:#e6e6e6;color:#818181;margin:0 2px;font-size:10px}.cloud115-eh-cleaner-drawer .by-box table tr .item-meta .ce-label.ce-label-danger{background:#cbc8ff;color:#fff}.cloud115-eh-cleaner-drawer .by-box table tr .item-meta .ce-label:first-child{margin-left:4px}.cloud115-eh-cleaner-drawer .by-box table td button:not(:last-child){margin-right:8px}.cloud115-eh-cleaner-drawer .by-box table td a{color:#2877f8}.cloud115-eh-cleaner-drawer .by-box table td .tp-folder{width:16px;height:16px;vertical-align:sub}.cloud115-eh-cleaner-drawer .by-box table.table-matched tr.item-unmatched,.cloud115-eh-cleaner-drawer .by-box table.table-unmatched tr.item-matched{display:none}.by-keyword.kw-cate-dir tbody tr:not(.is-dir),.by-keyword.kw-cate-file tbody tr.is-dir{opacity:.5;pointer-events:none;cursor:no-drop}.fixed-header-table{width:68%;border-collapse:collapse}.fixed-header-table thead{position:sticky;top:0;background-color:#f2f2f2;z-index:1}.fixed-header-table tbody{display:block;max-height:450px;overflow-y:auto;overflow-x:hidden}.fixed-header-table thead,.fixed-header-table tbody tr{display:table;width:100%;table-layout:fixed}.fixed-header-table th,.fixed-header-table td{padding:10px;border:1px solid #ddd}td.item-index{width:29px}td.item-val{width:308px}td.item-num{width:106px}td.item-size{width:89px}td.item-actions{width:166px}td.item-status{width:204px}';Et(FP);const NP={type:"button",class:"pure-button button-success"},UP=xe({__name:"DirSelector",props:{label:{default:"切换目录"},purpose:{default:"操作"},confirmLabel:{default:"选择该目录"},onlyDir:{type:Boolean,default:true},showRecord:{type:Boolean,default:true},showCopy:{type:Boolean,default:true}},emits:["select"],setup(e,{emit:t}){const n=e,o=t;async function i(){unsafeWindow.parent.Core.FileSelectDG.Open(async(s,r)=>{console.log("[Core.FileSelectDG.Open]",s,r),o("select",{items:s,xx:r});},{select:1,nf:n.onlyDir?1:0,show_record:n.showRecord?1:0,show_copy:n.showCopy?1:0,btn_txt:n.confirmLabel,select_txt:n.purpose});}return (s,r)=>(_(),S("span",{onClick:i},[Ge(s.$slots,"default",{},()=>[d("button",NP,B(s.label),1)])]))}}),Ys=Pe(UP,[["__file","DirSelector.vue"]]);function jP(e){return {offset:0,limit:1150,aid:1,cid:"",format:"json",o:Ha.userPtime,asc:Oo.false,search_value:"",...e}}async function zP(e){const t=ja(e),n=await Ot().get("https://webapi.115.com/files/search?"+t,{timeout:12e4,withCredentials:true});if(n.data==="")throw new am;const o=n.data;if(o.state)return o;throw new Ac(o.error)}async function HP(e,t=200,n=false){let o=[],i=0,s=e.limit;const r=1e4,a=115,l=r-r%s;let c=s;for(;;){if(n){if(i>=l&&i<r){const f=r-l;c=Math.min(f,c);}i>=r&&(c=a);}e.offset=i,e.limit=c;const u=await zP(e);if(!u.data||!u.data.length||(o=[...o,...u.data],i+=c,i>=u.count))break;await Mt(t);}return o}const VP={class:"cloud115-eh-cleaner ce-cleaner-x"},qP={class:"header actions-bar"},WP={class:"close"},KP={class:"ce-path ce-label ce-label-primary-plain"},GP=["href"],JP={class:"by-box by-suffix"},YP={class:"by-header"},QP={class:"pure-button-group",role:"group"},XP=["disabled"],ZP={class:"pure-table pure-table-bordered"},eI=["onClick"],tI=["onClick"],nI=["onClick"],oI=["onClick"],iI={class:"by-header"},sI={class:"pure-button-group",role:"group"},rI=["disabled"],aI={class:"item-index"},lI={class:"item-val"},uI=["href"],cI={class:"file-type tp-folder"},dI={class:"item-meta"},fI={key:0,class:"ce-label"},pI={key:1,class:"ce-label"},hI={key:2,class:"ce-label"},mI={key:3,class:"ce-label"},gI={key:4,class:"ce-label"},wI={key:5,class:"ce-label ce-label-danger"},yI={key:6,class:"ce-label ce-label-danger"},bI={key:7,class:"text-info"},vI={key:0,class:"text-small text-info"},xI={class:"text-primary"},_I={class:"text-danger"},CI={class:"item-num"},kI={class:"item-size"},SI={class:"item-actions"},$I=["onClick"],EI=["onClick"],AI=["onClick"],PI={class:"item-status"},II={class:"footer actions-bar"},DI={class:"ce-path ce-label ce-label-primary-plain"},LI=["href"],TI=xe({__name:"Cleaner",setup(e){const t=V(false),n=V(true),o=V(oi({type:Fe.suffix})),i=V(oi({type:Fe.keyword})),s=V({maxSize:5,matchName:false}),r=V({maxSize:100,matchName:true,keywordCategory:ho.all,resultCategory:No.all}),a=V([]),l=V([]),c=V(false),u=V(gd()),f=V(false),p=V(""),w=V([]),m=V(null),y=V(false),v=Ke(()=>p.value?Bn(p.value):"");async function E(){y.value=!y.value;}const L=V(false),P=new Map,D=V({});async function O(Z){for(const g of Z){const x=g.fid||g.cid;x&&!P.has(x)&&P.set(x,g);}}async function W(Z,g){D.value.files=P,D.value.group=Z,D.value.pattern=g,L.value=true;}async function z(Z){Z.data.type===Kt.OPEN_CLEANER&&(me(Z.data.payload),ci({type:Kt.CLEANER_OPENED},Z.source));}St(async()=>{u.value=await wr(),f.value=true,await ue();}),Ht(async()=>{u.value.initialized||(u.value.initialized=true,await wd({initialized:true})),window.addEventListener("message",z);}),Si(()=>{window.removeEventListener("message",z);});async function ue(){const{keywordDefaultCategory:Z,keywordDefaultResult:g}=u.value;r.value.keywordCategory=Z||ho.all,r.value.resultCategory=g||No.all;}async function me(Z){t.value=true;const g=await jt();if(g==="0"||g===""){await ie(),await te.fire({icon:"warning",html:"<h2>不允许在根目录使用该工具!</h2>"});return}p.value&&p.value!==g&&console.warn("目录变化,重置"),m.value=await Nt(g),w.value=[...m.value.paths.slice(1).map(x=>x.file_name),m.value.file_name],p.value=g;}async function ie(){t.value=false;}async function F(Z){console.log("[onSelectDir]",Z);const{items:g}=Z,x=g[g.length-1];await le(It.reset),await ve(It.reset),p.value=x.cid,m.value=await Nt(x.cid),w.value=[...m.value.paths.slice(1).map(k=>k.file_name),m.value.file_name];}async function U(Z){const g={};Z.isFilter?g.type=Z.pattern:g.suffix=Z.pattern;let x=unsafeWindow.frames[0];for(let k=0;k<unsafeWindow.frames.length;k++)if(unsafeWindow.frames[k].name==="wangpan"){x=unsafeWindow.frames[k];break}ci({type:Kt.INVOKE_FILTER,payload:g},x),await ie(),Y({icon:"info",text:`已调用115筛选: ${Z.value}`,timer:2500});}async function Q(Z,g){const{value:x}=await te.fire({input:"textarea",title:Z,html:"每行一个,最短两个字符。"+(g===Fe.keyword?`<br>默认只匹配文件名,不匹配目录名。<br>使用 "<b>${yd}目录名关键词</b>" 格式指定只匹配目录名的关键词。`:""),width:620,inputPlaceholder:"每行一个,最短两个字符",inputAttributes:{"aria-label":"每行一个,最短两个字符"},showCancelButton:true});return x!==void 0?x.trim():""}async function le(Z,g){let x="",k=[];switch(Z){case It.assign:x=g.trim(),x.trim()===""?a.value=[]:(k=await ni(x,Fe.suffix),a.value=k);break;case It.append:x=await Q("添加后缀",Fe.suffix),k=await ni(x,Fe.suffix);const X=[];a.value.forEach(N=>X.push(N.value.toLowerCase())),k.forEach(N=>{X.includes(N.value.toLowerCase())||a.value.push(N);});break;case It.cover:x=await Q("覆盖后缀",Fe.suffix),x.trim()!==""&&(k=await ni(x,Fe.suffix),a.value=k);break;case It.clear:a.value=[];break;case It.reset:a.value.forEach(N=>{N.num=-1,N.fileIds=[],N.status=$t.none,N.size=-1;});break}}async function ve(Z,g){let x="",k=[];switch(Z){case It.assign:x=g.trim(),x.trim()===""?l.value=[]:(k=await ni(x,Fe.keyword),l.value=k);break;case It.append:x=await Q("添加关键词",Fe.keyword),k=await ni(x,Fe.keyword);const X=[];l.value.forEach(N=>X.push(N.value.toLowerCase())),k.forEach(N=>{X.includes(N.value.toLowerCase())||l.value.push(N);});break;case It.cover:x=await Q("覆盖关键词",Fe.keyword),x.trim()!==""&&(k=await ni(x,Fe.keyword),l.value=k);break;case It.clear:l.value=[];break;case It.reset:l.value.forEach(N=>{N.num=-1,N.fileIds=[],N.status=$t.none,N.size=-1;});break}}async function ke(Z){if(console.log("[cleanBySuffix]",Z),await le(It.reset),!a.value.length){await te.fire({icon:"warning",text:"请先设置后缀!"});return}if(T=[],!Z){const{isConfirmed:g}=await te.fire({icon:"warning",html:'请在清理前确认"后缀和大小限制的设置"是否符合预期!',confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!g)return}c.value=true;try{for(let g=0;g<a.value.length;g++){const x=a.value[g];await _e(x,Z,!1,!0,!1);}Z||(c.value=!0,await ft(Fe.suffix));}catch(g){console.error(g),te.fire({title:"按后缀名清理 - 发生错误",html:g.toString()});}finally{c.value=false,Z||te.fire({title:"按后缀名清理 - 完成"});}}async function _e(Z,g,x,k,X){if(console.log("[cleanBySuffixSingle]",Z,g),!g&&!k){const{isConfirmed:N}=await te.fire({icon:"warning",html:`确认执行条件 "后缀: <b class="text-primary">${Z.pattern}</b>, 不大于: <b>${s.value.maxSize}</b> MB" 的清理?`,confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!N)return}try{if(!x){c.value=!0,Z.fileIds=[],Z.size=-1,Z.num=-1,Z.status=$t.prepare;const N=await cn(Z);await O(N),Z.status=$t.prepared;const{fileIds:G=[],size:de}=mp(Z,N,s.value);Z.fileIds=G,Z.size=de,Z.num=G.length,c.value=!1;}if(!g)if(Z.num&&Z.num>0){Z.status=$t.deleting,c.value=!0;const N=Z.fileIds?.length||0;X?await El(p.value,Z.fileIds||[],u.value.deleteSize,1e3):it(Fe.suffix,Z.fileIds||[],!1),c.value=!1,N>0?Z.status=$t.success+` / 数量 <= ${N}`:Z.status=$t.failed;}else Z.status=$t.success+" / 无";}catch(N){console.error(N),c.value=false,await te.fire({title:"cleanBySuffixSingle - 发生错误",html:N.toString()});}}async function Se(){const Z=[nt.fileKeyword,nt.fileHash];return l.value.some(g=>Z.includes(g.type))}async function Ne(Z,g){if(console.log("[cleanByKeyword]",Z,g),await ve(It.reset),!l.value.length){await te.fire({icon:"warning",text:"请先设置关键词!"});return}if(pe=[],!Z&&!u.value.cleanWithoutConfirm){const x={icon:"warning",html:'请在清理前确认"关键词和大小限制的设置"是否符合预期!',confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"},{isConfirmed:k,value:X}=await te.fire(x);if(!k)return}c.value=true,console.time("cleanByKeyword");try{let x;await Se()&&(x=await dt(),await O(x));const k=g||r.value.keywordCategory;for(let X=0;X<l.value.length;X++){const N=l.value[X];if(k!==ho.all){const G=N.type===nt.dirKeyword;if(k===ho.dir&&!G||k===ho.file&&G)continue}await we(N,Z,!1,!0,x,!1);}Z||(c.value=!0,await ft(Fe.keyword));}catch(x){console.error(x),te.fire({title:"按关键词清理 - 发生错误",html:x.toString()});}finally{console.timeEnd("cleanByKeyword"),Z||te.fire({title:"按关键词清理 - 完成"});}c.value=false;}async function dt(){const Z=p.value,g=wo({cid:Z,limit:1150,type:Sn.file,record_open_time:0});return await Vi(g)}async function we(Z,g,x,k,X,N){if(console.log("[cleanByKeywordSingle]",Z,g),!g&&!k){const{isConfirmed:G}=await te.fire({icon:"warning",html:`确认执行条件 "关键词: <b class="text-primary">${Z.pattern}</b>, 不大于: <b class="text-primary">${r.value.maxSize}</b> MB" 的清理?`,confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!G)return}try{if(!x){c.value=!0,Z.fileIds=[],Z.size=-1,Z.num=-1,Z.status=$t.prepare;let G=[];Z.type!==nt.dirKeyword&&X!==void 0?G=X:(G=await Xt(Z),await O(G)),Z.status=$t.prepared;const{fileIds:de,size:ce,num:ae}=mp(Z,G,r.value);Z.fileIds=de,Z.size=ce,Z.num=ae,c.value=!1;}if(!g)if(Z.num&&Z.num>0){Z.status=$t.deleting,c.value=!0;const G=Z.fileIds?.length||0;N?await El(p.value,Z.fileIds||[],u.value.deleteSize,1e3):it(Fe.keyword,Z.fileIds||[],!1),c.value=!1,G>0?Z.status=$t.success+` / 数量 <= ${G}`:Z.status=$t.failed;}else Z.status=$t.success+" / 无";}catch(G){console.error(G),c.value=false;let de=true;const ce={title:"cleanByKeywordSingle - 发生错误",html:G.toString()};G instanceof Ac&&(Z.status=$t.prepareFailed+` / ${G.message}`,G instanceof am&&(ce.timer=2e3,de=false)),de?await te.fire(ce):te.fire(ce);}}let T=[],pe=[];function it(Z,g,x){Z===Fe.suffix?T=[...T,...g]:pe=[...pe,...g];}async function ft(Z){const g=Z===Fe.suffix?T:pe;if(!g.length)return;const x=Array.from(new Set(g));console.log("[deleteFiles] num=",x.length),await El(p.value,x,1150,1e3);}async function cn(Z){const g=p.value,x=wo({cid:g,limit:u.value.pageSize});Z.isFilter?x.type=Z.pattern:x.suffix=Z.value;const k=await Vi(x);return console.log("[files]",k),k}async function Xt(Z){const g=p.value,x=jP({search_value:Z.pattern,cid:g,limit:u.value.pageSize}),k=await HP(x,u.value.reqInterval,true);return console.log("[files]",k),k}function ao(Z){return pm({...iA(Z),cid:p.value},w.value[w.value.length-1])}async function Ai(Z){console.log("[onSuffixGroupChange]",Z),o.value=Z,s.value.maxSize=Z.size,await le(It.assign,Z.values);}async function xn(Z){console.log("[onKeywordGroupChange]",Z),i.value=Z,r.value.maxSize=Z.size,await ve(It.assign,Z.values);}return (Z,g)=>{const x=xo("VDropdown");return q((_(),S("span",VP,[Ge(Z.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:me},g[10]||(g[10]=[d("span",null,"清理文件",-1)]))]),oe(Js,{"is-open":t.value,speed:300,"max-width":"calc(100vw - 72px)",onClose:g[9]||(g[9]=k=>t.value=false)},{default:ge(()=>[q(d("div",{class:Le(["cloud115-eh-cleaner-drawer",{loading:c.value}])},[oe(WA),d("div",qP,[g[15]||(g[15]=d("span",{class:"title"},"文件清理工具",-1)),d("span",WP,[d("button",{type:"button",class:"pure-button button-error",onClick:ie},"关闭"),g[12]||(g[12]=I(" ",-1)),oe(Ys,{purpose:"清理文件",onSelect:F}),g[13]||(g[13]=I(" ",-1)),oe(x,{triggers:["click"],distance:5},{popper:ge(()=>[oe(OP)]),default:ge(()=>[g[11]||(g[11]=d("button",{type:"button",class:"pure-button"},"⚙ 设置",-1))]),_:1,__:[11]})]),d("div",KP,[d("a",{target:"_blank",href:v.value,title:"打开目录"},[g[14]||(g[14]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),I(" "+B(w.value.join(" / ")),1)],8,GP)])]),d("div",JP,[d("div",YP,[g[16]||(g[16]=d("span",{class:"title"},[I("按"),d("b",null,"后缀名"),I("清理")],-1)),g[17]||(g[17]=I(" ",-1)),d("div",QP,[d("button",{type:"button",class:"pure-button",onClick:g[0]||(g[0]=k=>ke(!0))},"只查询"),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:g[1]||(g[1]=k=>ke(!1)),disabled:o.value.queryOnly}," 一键清理 ",8,XP)]),g[18]||(g[18]=I(" ",-1)),g[19]||(g[19]=d("span",{class:"ce-label"},"不大于",-1)),g[20]||(g[20]=I(" ",-1)),q(d("input",{type:"number","onUpdate:modelValue":g[2]||(g[2]=k=>s.value.maxSize=k),class:"filter-size"},null,512),[[Ve,s.value.maxSize]]),g[21]||(g[21]=I(" MB ",-1)),g[22]||(g[22]=d("small",null,"(0表示不限制)",-1)),f.value?(_(),tt(gp,{key:0,type:ee(Fe).suffix,"storage-key":"suffixGroups",onChange:Ai,config:u.value},null,8,["type","config"])):fe("",!0)]),d("table",ZP,[g[25]||(g[25]=d("thead",null,[d("tr",null,[d("th",{width:"25"},"#"),d("th",{width:"100"},"后缀名"),d("th",{width:"95"},"文件数量"),d("th",{width:"80"},"合计大小"),d("th",{width:"200"},"操作"),d("th",{width:"200"},"状态")])],-1)),d("tbody",null,[(_(!0),S($e,null,je(a.value,(k,X)=>(_(),S("tr",{key:X,class:Le(ee(pp)(k))},[d("td",null,B(X+1),1),d("td",null,[d("a",{href:"javascript:void(0)",class:"pattern",onClick:N=>U(k),title:"筛选"},B(k.value),9,eI)]),d("td",null,B(k.num&&k.num>=0?k.num:""),1),d("td",null,B(k.size>0?ee(Wi)(k.size):""),1),d("td",null,[d("button",{type:"button",class:"pure-button button-xsmall",onClick:N=>_e(k,!0,!1,!0)},"查询",8,tI),g[23]||(g[23]=I(" ",-1)),k.num&&k.num>0&&!o.value.queryOnly?(_(),S("button",{key:0,type:"button",class:"pure-button button-warning button-xsmall",onClick:N=>_e(k,!1,!0,!1,!0)},"清理",8,nI)):fe("",!0),g[24]||(g[24]=I(" ",-1)),k.num&&k.num>0?(_(),S("button",{key:1,type:"button",class:"pure-button button-warning button-xsmall",onClick:N=>W(o.value,k)},"≡ 详情",8,oI)):fe("",!0)]),d("td",null,B(k.status),1)],2))),128))])])]),g[55]||(g[55]=d("br",null,null,-1)),oe(Js,{"is-open":L.value,onClose:g[3]||(g[3]=k=>L.value=!1),"max-width":"1030px",speed:100,"bg-color":"#fff"},{default:ge(()=>[L.value?(_(),tt(CP,{key:0,files:D.value.files,group:D.value.group,pattern:D.value.pattern},null,8,["files","group","pattern"])):fe("",!0)]),_:1},8,["is-open"]),d("div",{class:Le(["by-box by-keyword",[`kw-cate-${r.value.keywordCategory}`]])},[d("div",iI,[g[26]||(g[26]=d("span",{class:"title"},[I("按"),d("b",null,"关键词"),I("清理")],-1)),g[27]||(g[27]=I(" ",-1)),d("div",sI,[d("button",{type:"button",class:"pure-button",onClick:g[4]||(g[4]=k=>Ne(!0))},"只查询"),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:g[5]||(g[5]=k=>Ne(!1)),disabled:i.value.queryOnly}," 一键清理 ",8,rI)]),g[28]||(g[28]=I(" ",-1)),g[29]||(g[29]=d("span",{class:"ce-label"},"不大于",-1)),g[30]||(g[30]=I(" ",-1)),q(d("input",{type:"number","onUpdate:modelValue":g[6]||(g[6]=k=>r.value.maxSize=k),class:"filter-size"},null,512),[[Ve,r.value.maxSize]]),g[31]||(g[31]=I(" MB ",-1)),g[32]||(g[32]=d("small",null,"(0表示不限制)",-1)),g[33]||(g[33]=I(" ",-1)),g[34]||(g[34]=d("span",{class:"ce-label"},"关键词类别",-1)),g[35]||(g[35]=I(" ",-1)),oe(Ca,{modelValue:r.value.keywordCategory,"onUpdate:modelValue":g[7]||(g[7]=k=>r.value.keywordCategory=k),mapping:ee(RE)},null,8,["modelValue","mapping"]),g[36]||(g[36]=I(" ",-1)),g[37]||(g[37]=d("span",{class:"ce-label"},"结果筛选",-1)),g[38]||(g[38]=I(" ",-1)),oe(Ca,{modelValue:r.value.resultCategory,"onUpdate:modelValue":g[8]||(g[8]=k=>r.value.resultCategory=k),mapping:ee(FE)},null,8,["modelValue","mapping"]),f.value?(_(),tt(gp,{key:0,type:ee(Fe).keyword,"storage-key":"keywordGroups",onChange:xn,config:u.value},null,8,["type","config"])):fe("",!0)]),d("table",{class:Le(["pure-table pure-table-bordered fixed-header-table",[`table-${r.value.resultCategory}`]])},[d("thead",null,[d("tr",null,[g[40]||(g[40]=d("th",{width:"25"},"#",-1)),d("th",{width:"280"},[g[39]||(g[39]=I(" 关键词 ",-1)),d("small",{class:"text-info",onClick:E},"显示调试信息")]),g[41]||(g[41]=d("th",{width:"95"},"文件/目录数量",-1)),g[42]||(g[42]=d("th",{width:"80"},"合计大小",-1)),g[43]||(g[43]=d("th",{width:"150"},"操作",-1)),g[44]||(g[44]=d("th",{width:"200"},"状态",-1))])]),d("tbody",null,[(_(!0),S($e,null,je(l.value,(k,X)=>(_(),S("tr",{key:X,class:Le(ee(pp)(k,r.value))},[d("td",aI,B(X+1),1),d("td",lI,[d("a",{href:ao(k),target:"_blank",class:"pattern",title:"搜索"},[q(d("i",cI,null,512),[[Wt,k.type===ee(nt).dirKeyword]]),I(" "+B(k.pattern),1)],8,uI),d("span",dI,[k.fullMatch?(_(),S("span",fI,"全等")):fe("",!0),k.caseSensitive?(_(),S("span",pI,"区分大小写")):fe("",!0),k.impartible?(_(),S("span",hI,"匹配空格")):fe("",!0),k.isRegexp?(_(),S("span",mI,"正则")):fe("",!0),k.type===ee(nt).fileHash?(_(),S("span",gI,"sha1")):fe("",!0),k.maxSize===0?(_(),S("span",wI,"任意大小")):fe("",!0),k.maxSize>0?(_(),S("span",yI,"不大于"+B(k.maxSize)+"MB",1)):fe("",!0),k.memo?(_(),S("div",bI,[g[45]||(g[45]=d("small",null,"备注:",-1)),I(" "+B(k.memo),1)])):fe("",!0)]),y.value?(_(),S("div",vI,[g[46]||(g[46]=d("small",null,"raw:",-1)),g[47]||(g[47]=I()),d("span",xI,B(k.value),1),g[48]||(g[48]=I(", ",-1)),g[49]||(g[49]=d("small",null,"type:",-1)),g[50]||(g[50]=I()),d("span",_I,B(ee(Dw)[k.type]),1),d("div",null," fullMatch: "+B(k.fullMatch)+", caseSensitive: "+B(k.caseSensitive)+", impartible: "+B(k.impartible)+", isRegexp: "+B(k.isRegexp)+", maxSize: "+B(k.maxSize)+", patternRegexp: "+B(k.patternRegexp?.toString()),1)])):fe("",!0)]),d("td",CI,B(k.num&&k.num>=0?k.num:""),1),d("td",kI,B(k.size>0?ee(Wi)(k.size):""),1),d("td",SI,[k.type!==ee(nt).fileKeyword?(_(),S("button",{key:0,type:"button",class:"pure-button button-xsmall",onClick:N=>we(k,!0,!1,!0)},"查询",8,$I)):fe("",!0),k.type!==ee(nt).fileKeyword&&k.num&&k.num>0&&!i.value.queryOnly?(_(),S("button",{key:1,type:"button",class:"pure-button button-warning button-xsmall",onClick:N=>we(k,!1,!0,!1,void 0,!0)},"清理",8,EI)):fe("",!0),k.num&&k.num>0?(_(),S("button",{key:2,type:"button",class:"pure-button button-xsmall",onClick:N=>W(i.value,k)},"≡ 详情",8,AI)):fe("",!0)]),d("td",PI,B(k.status),1)],2))),128))])],2)],2),g[56]||(g[56]=d("br",null,null,-1)),d("div",II,[g[52]||(g[52]=d("span",{class:"title"},"文件清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:ie},"关闭")]),g[53]||(g[53]=I(" ",-1)),oe(Ys,{purpose:"清理文件",onSelect:F}),g[54]||(g[54]=I(" ",-1)),oe(Nw,{container:".cloud115-eh-cleaner-drawer"}),d("div",DI,[d("a",{target:"_blank",href:v.value,title:"打开目录"},[g[51]||(g[51]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),I(" "+B(w.value.join(" / ")),1)],8,LI)])])],2),[[Wt,t.value]])]),_:1},8,["is-open"])],512)),[[Wt,n.value]])}}}),MI=Pe(TI,[["__file","Cleaner.vue"]]),OI={class:"ce-empty-cleaner-trigger"},BI=xe({__name:"Trigger",setup(e){V(false);const t=V(true);async function n(a){switch(a.data.type){case Kt.EMPTY_CLEANER_OPENED:await r(a.data.payload);break}}Ht(async()=>{window.addEventListener("message",n);}),Si(()=>{window.removeEventListener("message",n);});async function o(){await s(),ci({type:Kt.OPEN_EMPTY_CLEANER},window.parent);}let i;async function s(){const a=Zs("cid");!a||a==="0"||(clearTimeout(i),i=setTimeout(async()=>{Y({icon:"error",text:"打开清理空文件夹工具失败!"+location.href});},1e3));}async function r(a){console.log("成功打开EmptyCleaner"),clearTimeout(i);}return (a,l)=>q((_(),S("span",OI,[Ge(a.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:o,title:"打开清理空文件夹工具"},l[0]||(l[0]=[d("span",null,"空文件夹",-1)]))])],512)),[[Wt,t.value]])}}),RI=Pe(BI,[["__file","Trigger.vue"]]);async function FI(e,t){if(e=typeof e=="string"?e:e.join(","),!t){if(e.includes(","))throw new Error("target参数不能为空!");t=e;}t=t.startsWith("U_1_")?t:`U_1_${t}`;const n=new URLSearchParams({file_ids:e,target:t});return (await Ot().post("https://webapi.115.com/files/export_dir",n,{timeout:12e4,withCredentials:true})).data}async function NI(e,t=1e3,n=12e4){const o=new URLSearchParams({export_id:e.toString()}),i=async()=>(await Ot().get("https://webapi.115.com/files/export_dir?"+o.toString(),{timeout:12e4,withCredentials:true})).data;async function s(r){const a=await i();a.data&&a.data.pick_code&&r(a);}try{return await qo(s,t,n)}catch(r){throw new Error(`导出目录树结果获取失败:${r.message}`)}}const UI=/^(?:\| )+\|-/;async function*jI(e){const t=["/"],n=e.trim().split(`
`);let o=0;for(const i of n){const s=UI.exec(i);if(s===null)continue;const a=s[0].length,l=a/2-1,c=i.slice(a);l>=t.length?t.push(c):t[l]=c,o+=1;const u=t.slice(0,l+1).join("/");yield {index:o,name:c,path:Yh(u)};}}function Xl(e={}){return {name:"",path:"",id:"",url:"",checked:false,deleted:false,disabled:false,repeated:false,ensured:false,...e}}function Zl(){return {suffixes:new Set,treeNameCounter:{},treeNameToPaths:{},repeatedPaths:new Set,maybeDirs:{},filesNameCounter:{},violationFiles:[]}}let zI=class{logs=[];_dirId="";_dirPath="";_dirAttr=null;_treeText="";_keepTree=false;_treeFile=null;_tailData=Zl();_emptyItems=new Map;_checkedRepeatedPaths=new Set;_pendingPaths=new Set;logSubscribers=[];emptyItemSubscribers=[];treeFileSubscribers=[];constructor(t,n=false){t&&this.setDirId(t),this._keepTree=n;}addLogSubscriber(t){this.logSubscribers.push(t);}addEmptyItemSubscriber(t){this.emptyItemSubscribers.push(t);}addTreeFileSubscriber(t){this.treeFileSubscribers.push(t);}async setDirId(t){this._dirId=t,this._dirAttr=await Nt(t);const n=[...this._dirAttr.paths.slice(1).map(o=>o.file_name),this._dirAttr.file_name];this._dirPath=n.join("/");}async setKeepTree(t){this._keepTree=t;}getTreeFile(){return this._treeFile}async isReady(){return !!this._dirPath}async run(){if(!await this.isReady()){this.log(`运行异常!未获取到目录路径,目录ID=${this._dirId}`);return}if(this._dirAttr?.folder_count===0){this.log(`目录(id=${this._dirId}) "${this._dirPath}" 没有子目录,无需清理`);return}const t=Date.now();await this.exportTree(),await this.parseTree(),await this.queryFiles(),await this.handleMaybeDirs(),await this.detectEmpty(),await this.checkRealEmpty();const n=((Date.now()-t)/1e3).toFixed(2);this.log(`清理空目录检测阶段完成,合计耗时 ${n} 秒`),console.log("emptyItems:",this._emptyItems);}async exportTree(){const t=Date.now();this.log(`========导出目录树(目录ID=${this._dirId}, 路径=${this._dirPath})========`);const n=await FI(this._dirId);console.log("exportTree",n),this.log("已发起导出处理,等待导出完成...");const o=await NI(n.data.export_id,2e3);console.log("exportTree",o),this.log(`导出目录树成功,PickCode为${o.data.pick_code}`);const i=await yk(o.data.pick_code);console.log("downloadItem",i),this.log("正在读取目录树文件内容...");let s=true;try{this._treeText=await this._readFile(i),this.log("目录树文件内容读取完成");}catch(a){this.log(`读取目录树文件内容失败,${a.toString()}`),s=false;}if(this._keepTree)this.onTreeFileGenerated(i),this.log(`目录树文件保留,不会被删除。文件: ${i.file_name}`);else {const a=await Ec(this._dirId,[i.file_id]);console.log("deleteResult",a),this.log("目录树文件已删除");}const r=((Date.now()-t)/1e3).toFixed(2);s?this.log(`导出目录树完成,耗时 ${r} 秒`):this.log(`导出目录树失败,耗时 ${r} 秒`),this.log("=".repeat(60));}async _readFile(t){const n=sA({okStatus:[200,206],useFileReader:true,fileReader:{checkBlank:true,encoding:"utf-16le"}});return await Mw(t.url.url,n)}async parseTree(){const t=Date.now();this.log("解析目录树...");const n=Zl(),o=[],i=this._dirPath.split("/").slice(0,-1).join("/");console.log("[parseTree] parentPath:",i);for await(const r of jI(this._treeText)){const a=i+r.path;o.includes(a)&&n.repeatedPaths.add(a),o.push(a);}for(let r=0;r<o.length;r++){if(o[r+1]&&o[r+1].startsWith(o[r]+"/"))continue;let a=o[r].split("/").pop();if(!a)a=o[r];else {const l=Xh(a,/^\w+$/);if(l)n.suffixes.add(l.toLowerCase());else {const c=o[r].replace(/\/[^\/]+$/,"");n.maybeDirs[c]||(n.maybeDirs[c]=new Set),n.maybeDirs[c].add(a);}}n.treeNameToPaths[a]||(n.treeNameToPaths[a]=[]),n.treeNameToPaths[a].push(o[r]),n.treeNameCounter[a]||(n.treeNameCounter[a]=0),n.treeNameCounter[a]+=1;}console.log("[parseTree] result:",n);const s=((Date.now()-t)/1e3).toFixed(2);this.log(`解析目录树完成,耗时 ${s} 秒`),this.log("=".repeat(60)),this._tailData=n;}async queryFiles(){const t=Date.now(),n=this._tailData;this.log("获取文件列表...");const o=wo({type:Sn.file,limit:1150,cid:this._dirId});try{const s=Date.now(),r=await Vi(o),a=((Date.now()-s)/1e3).toFixed(2);this.log(`获取文件列表成功,文件数量:${r.length}。耗时 ${a} 秒`);for(const l of r)l.c===pu.violation?(console.warn(`违规: id=${l.fid}, pc=${l.pc}, cid=${l.cid}, name=${l.n}`),this._tailData.violationFiles.push(_i(l))):l.c===pu.auditing&&console.warn(`审核中: id=${l.fid}, pc=${l.pc}, cid=${l.cid}, name=${l.n}`),n.treeNameCounter[l.n]&&n.treeNameCounter[l.n]--,n.filesNameCounter[l.n]||(n.filesNameCounter[l.n]=0),n.filesNameCounter[l.n]++;}catch(s){console.error("[queryFiles] getFiles error! error:",s),this.log(`获取文件列表失败!错误: ${s.toString()}`);}const i=((Date.now()-t)/1e3).toFixed(2);this.log(`获取文件列表完成。耗时 ${i} 秒`),this.log("=".repeat(60));}async handleMaybeDirs(){const t=Date.now(),n=this._tailData;this.log("========根据上级路径排除无后缀文件========");const o=this._tailData.violationFiles.length>0,i=Object.keys(n.maybeDirs).length;let s=0;for(const[a,l]of Object.entries(n.maybeDirs)){let c="";try{c=await Bi(a,!1);}catch(f){console.error(`[handleMaybeDirs] getDirIdByPath error! path: ${a}, error:`,f),this.log(`[${s+1} / ${i}] 根据上级路径(cid=${a}) 获取目录ID失败!错误: ${f.toString()}`);continue}const u=wo({limit:1150,cid:c});try{const f=Date.now();this.log(`[${s+1} / ${i}] 正在获取上级路径 "${a}" 的文件列表...`);const p=await Vi(u),w=((Date.now()-f)/1e3).toFixed(2);this.log(`[${s+1} / ${i}] 获取上级路径 "${a}" 的文件列表成功,文件数量:${p.length}。耗时 ${w} 秒`);for(const m of p)if(l.has(m.n)){if(m.fid)this.log(`[${s+1} / ${i}] 上级路径 "${a}" 下的 "${m.n}" 是一个文件`),n.treeNameCounter[m.n]&&n.treeNameCounter[m.n]--;else if(!n.filesNameCounter[m.n]&&!o){const y=a+"/"+m.n;this.log(`[${s+1} / ${i}] 路径 "${y}" 是一个目录,该目录名称无对应的文件,且由于无违规文件,因此可确认为空目录`);const v=Xl({id:m.cid,name:m.n,path:y,url:Bn(m.cid),ensured:!0});await this.addEmptyItem(v);}}}catch(f){console.error(`[handleMaybeDirs] getFiles error! cid: ${c}, error:`,f),this.log(`[${s+1} / ${i}] 获取上级路径(cid=${c}) "${a}" 的文件列表失败!错误: ${f.toString()}`);}s++;}const r=((Date.now()-t)/1e3).toFixed(2);this.log(`根据上级路径排除无后缀文件完成。耗时 ${r} 秒`),this.log("=".repeat(60));}async detectEmpty(){const t=Date.now(),n=this._tailData;this.log("========开始检测路径========");const o=this._tailData.violationFiles.length>0;let i=0,s=Object.keys(n.treeNameCounter).length;for(const[a,l]of Object.entries(n.treeNameCounter)){if(!l){i++;continue}const c=n.treeNameToPaths[a];this.log(`[${i+1} / ${s}] 名称 "${a}" 有 ${l} 个路径需要检测`);for(let u=0;u<c.length;u++){const f=c[u];if(this._emptyItems.has(f)){console.log(`[detectEmpty] path "${f}" already exists in _emptyItems`);continue}if(n.repeatedPaths.has(f)){await this.checkDirContainsRepeated(a,f);continue}this.log(`[${i+1} / ${s}] 正在检测名称 "${a}" 第 ${u+1}/${l} 个路径: ${f}`);try{const p=await Bi(f,!1);if(p){this.log(`检测到该末端路径 "${f}" 是一个空目录(ID: ${p})`);const w=Xl({id:p,name:a,path:f,url:Bn(p),ensured:!o});await this.addEmptyItem(w);}}catch(p){p instanceof Pc?this.log(`路径 "${f}" 不是一个目录`):(console.error(`[detectEmpty] getDirIdByPath failed! path: ${f}, error:`,p),this.log(`获取路径 "${f}" 的ID失败!错误: ${p.toString()}`));}}i++;}const r=((Date.now()-t)/1e3).toFixed(2);this.log(`检测路径完成,耗时 ${r} 秒`),this.log("=".repeat(60));}async checkDirContainsRepeated(t,n){if(this._checkedRepeatedPaths.has(n))return;this.log(`名称 "${t}" 路径 "${n}" 存在重复,将对其所在的目录进行检测`);const o=fu(n,"..",Mo.unix);console.log("[checkDirContainsRepeated] parentPath:",o);let i="";try{if(i=await Bi(o,!1),!i){this.log(`❌ 根据路径"${o}"获取目录ID失败: 目录不存在!`);return}}catch(r){console.error(`[checkDirContainsRepeated] getDirIdByPath error! path: ${o}, error:`,r),this.log(`获取路径 "${o}" 的ID失败!错误: ${r.toString()}`);return}const s=wo({limit:1150,cid:i});try{const r=Date.now();this.log(`正在获取目录(id=${i})的文件列表...`);const a=await Vi(s),l=((Date.now()-r)/1e3).toFixed(2);this.log(`获取目录(id=${i})的文件列表成功,文件数量:${a.length}。耗时 ${l} 秒`);for(const c of a)if(!(c.fid||c.n!==t))try{const u=await Nt(c.cid);if(u.file_name){if(u.folder_count===0&&u.count===0){this.log(`目录(id=${i})的子目录(id=${c.cid})为空`);const f=Xl({id:c.cid,name:u.file_name,path:[...u.paths.map(p=>p.file_name).slice(1),u.file_name].join("/"),url:Bn(c.cid),repeated:!0,ensured:!0,attr:u});await this.addEmptyItem(f);}else this.log(`目录(id=${i})的子目录(id=${c.cid})不为空`);this._checkedRepeatedPaths.add(n);}else this.log(`❌ 获取目录(id=${c.cid})属性失败!`);}catch(u){console.error(`[checkDirContainsRepeated] getAttr error! cid: ${c.cid}, error:`,u),this.log(`获取目录(id=${c.cid})属性失败!异常: ${u.toString()}`);}}catch(r){console.error(`[checkDirContainsRepeated] getFiles error! cid: ${i}, error:`,r),this.log(`获取目录(id=${i})的文件列表失败!错误: ${r.toString()}`);}}async checkRealEmpty(){const t=Date.now();this.log("========确认是否真的为空目录========");for(const o of this._emptyItems.values())if(!o.ensured)try{const i=await Nt(o.id);o.ensured=!0,o.attr=i,i.count===0&&i.folder_count===0?this.log(`目录(id=${o.id}) "${o.path}" 确认为空`):(o.disabled=!0,o.memo="目录不为空,请手动检查和处理",this.log(`目录(id=${o.id}) "${o.path}" 确认不为空,请手动检查和处理`));}catch(i){console.error(`[checkRealEmpty] getAttr error! cid: ${o.id}, error:`,i),this.log(`获取目录(id=${o.id}) "${o.path}" 属性失败!异常: ${i.toString()}`),o.disabled=true,o.memo="确认是否为空目录失败,请手动检查和处理";}const n=((Date.now()-t)/1e3).toFixed(2);this.log(`确认是否真的为空目录完成,耗时 ${n} 秒`),this.log("=".repeat(60));}async onTreeFileGenerated(t){this._treeFile=t;for(const n of this.treeFileSubscribers)n(t);}async addEmptyItem(t){if(this._emptyItems.has(t.path)){console.log(`[addEmptyItem] path(id=${t.id}) "${t.path}" already exists in _emptyItems`);return}this._emptyItems.set(t.path,t);for(const n of this.emptyItemSubscribers)n(t);}async getEmptyItems(){return Array.from(this._emptyItems.values())}async log(t){t=`[${new Date().toLocaleString()}] ${t}`,this.logs.push(t);for(const n of this.logSubscribers)n(t);}async reset(){this.logs=[],this._emptyItems=new Map,this._tailData=Zl(),this._treeFile=null,this._checkedRepeatedPaths=new Set,this._pendingPaths=new Set;}};const HI={},VI={class:"ce-empty-cleaner-help"};function qI(e,t){return _(),S("div",VI,t[0]||(t[0]=[Sg('<div data-v-ce900ab5><h2 data-v-ce900ab5>免责声明</h2><div data-v-ce900ab5><p data-v-ce900ab5>该工具仅作为学习测试用途,使用该工具造成的任何结果由使用人承担。</p></div><hr data-v-ce900ab5><h2 data-v-ce900ab5>说明</h2><ul style="color:#00f;" data-v-ce900ab5><li class="text-danger text-bold" data-v-ce900ab5> * <span style="font-size:120%;" data-v-ce900ab5>不要</span>直接清理一个巨大的文件夹!比如包含超过5万个文件夹。 太大的文件夹可能会导出目录树失败,且可能导致账号被系统风控。 </li><li data-v-ce900ab5>* 对于巨大的文件夹,可以分开清理下级文件夹。</li><li data-v-ce900ab5>* 只有违规文件的文件夹也会被检测到并列出,需要手动处理。</li><li data-v-ce900ab5>* 请谨慎操作!请谨慎操作!请谨慎操作!</li></ul><hr data-v-ce900ab5><h2 data-v-ce900ab5>流程</h2><ul style="color:#f40;" data-v-ce900ab5><li data-v-ce900ab5>1.确认当前显示的目录是否为需要进行清理的目录。</li><li data-v-ce900ab5>2.点击「检测空文件夹」按钮。</li><li data-v-ce900ab5>3.保持当前页面处于激活状态,留意日志区域的输出,耐心等待。</li><li data-v-ce900ab5>4.当看到「空文件夹检测已完成」的提示时,说明检测完成。</li><li data-v-ce900ab5>5.如果有空文件夹,会在空文件夹列表显示。</li><li data-v-ce900ab5>6.每个空文件夹都可以单独进行打开、获取详情、删除等操作。</li><li data-v-ce900ab5>7.批量删除: 勾选需要删除的空文件夹,点击「删除选中」进行删除。</li></ul><hr data-v-ce900ab5><h3 data-v-ce900ab5>原理和优劣</h3><div class="text-primary" data-v-ce900ab5> 本工具原理是导出目录树,然后查询文件,接着排除目录树中的文件,最后再判断目录树中剩余的项是否为空文件夹。 </div><ul data-v-ce900ab5><li class="text-bold text-success" data-v-ce900ab5>优点:</li><li class="text-success" data-v-ce900ab5>在子文件夹数量较多时,比逐层逐个查询文件列表要快得多。</li><li class="text-warning text-bold" data-v-ce900ab5>缺点:</li><li class="text-warning" data-v-ce900ab5>* 排除真实文件后,如剩余需判断项较多,耗时较长。</li><li class="text-warning" data-v-ce900ab5>* 不能判断大小为0且有空子文件夹的文件夹。</li></ul></div>',1)]))}const WI=Pe(HI,[["render",qI],["__scopeId","data-v-ce900ab5"],["__file","Help.vue"]]);async function KI(){return (await Ot().get("https://115.com/?ct=tool&ac=clear_empty_folder",{timeout:12e4,withCredentials:true})).data}async function ka(){const e=t=>{te.update({html:`清理失败!${t}`,showConfirmButton:true,allowOutsideClick:false});};try{const{isConfirmed:t,value:n}=await te.fire({title:"一键全局清理空文件夹",html:`<div>
<div class="text-warning">这是官方自带的功能,脚本只是调用对应的API。</div>
<h4>功能特点:</h4>
<p>1. 只能全局清理,不能指定只清理某个文件夹。</p>
<p>2. 被删除的空文件夹会被永久删除,没有回收站记录。</p>
<p>3. 清理时长跟文件夹(包括空的和非空的)数量成正比。</p>
<p>4. 可能很快就提示"清空成功",但在文件夹数量较多时,服务端可能仍在进行清理处理。</p>
<h4>一些建议:</h4>
<p>1. 先仔细阅读并理解上面所说的,这很重要!</p>
<p>2. 请谨慎操作!</p>
<h3>请输入 yes 确认清理:</h3>
</div>
`,width:620,showDenyButton:!0,denyButtonText:"取消",showConfirmButton:!0,confirmButtonText:"确定清理空文件夹",customClass:{popup:"ce-swal-text-left"},input:"text"});if(console.warn("isConfirmed",t,"value",n),!t||n!=="yes")return;te.fire({html:"正在清理,请稍候..."}),te.showLoading();const o=await KI();o.state?te.update({html:o.msg}):e(`清理失败!${o.msg}`);}catch(t){console.error(t),e(`清理失败!${t.toString()}`);}finally{te.hideLoading();}}const GI={class:"ce-empty-cleaner ce-cleaner-x"},JI={class:"header actions-bar"},YI={class:"ce-path ce-label ce-label-primary-plain"},QI=["href"],XI={class:"top-actions"},ZI=["disabled"],eD={class:"pure-form pure-form-aligned"},tD={class:"pure-control-group"},nD={key:0},oD={class:"text-primary"},iD={key:1},sD={class:"text-primary"},rD={key:0},aD=["href"],lD={key:0},uD={key:0},cD={class:"text-primary"},dD={class:"ec-items"},fD={class:"pure-table pure-table-bordered"},pD={width:"30"},hD=["disabled"],mD=["onUpdate:modelValue","onChange","disabled"],gD={key:0},wD={class:"ce-label ce-label-danger"},yD={key:0},bD={key:1},vD=["onClick","disabled"],xD=["onClick"],_D=["href"],CD={key:0},kD={class:"footer actions-bar"},SD={class:"ce-path ce-label ce-label-primary-plain"},$D=["href"],ED=xe({__name:"EmptyCleaner",setup(e){const t=V(false),n=V(true),o=V(false),i=V(""),s=V([]),r=V(null),a=V([]),l=V(false),c=V(null),u=V([]),f=V([]),p=V(null),w=V(null),m=Ke(()=>w.value?z0(w.value.pick_code):""),y=Ke(()=>i.value?Bn(i.value):"");let v;const E=V({keepTree:false});async function L(we){we.data.type===Kt.OPEN_EMPTY_CLEANER&&(P(we.data.payload),ci({type:Kt.EMPTY_CLEANER_OPENED},we.source));}Ht(async()=>{window.addEventListener("message",L),v=new zI(i.value),v.addLogSubscriber(ve),v.addEmptyItemSubscriber(ke),v.addTreeFileSubscriber(le);}),Si(()=>{window.removeEventListener("message",L);});async function P(we){t.value=true;const T=await jt();if(T==="0"||T===""){await dt(),await te.fire({icon:"warning",html:"<h2>不允许在根目录使用该工具!</h2>"});return}i.value&&i.value!==T&&console.warn("目录变化,重置"),r.value=await Nt(T),s.value=[...r.value.paths.slice(1).map(pe=>pe.file_name),r.value.file_name],i.value=T;}async function D(){l.value=false,u.value=[],f.value=[],a.value=[],w.value=null;}async function O(){try{o.value=!0,await D(),await v.reset(),await v.setKeepTree(E.value.keepTree),await v.setDirId(i.value),await v.run(),te.fire({title:"空文件夹检测已完成"});}catch(we){console.error(we),te.fire({title:"空文件夹检测失败",text:we.toString()});}finally{o.value=false;}}async function W(we){const T=f.value.join(`
`);if(we==="copy")gt(T),Y({text:"已复制清理空文件夹日志",timer:1200});else if(we==="download"){let pe=`清理空文件夹日志-${i.value}.txt`;Gr(T,pe);}}async function z(we,T,pe="path"){const it=T==="all"?a.value:u.value;let ft="";pe==="path"?ft=it.map(Xt=>Xt.path).join(`
`):pe==="full"&&(ft=JSON.stringify(it,null,2));const cn=pe==="path"?"路径":"数据";if(we==="copy")gt(ft),Y({text:`已复制${cn}到剪贴板`,timer:1200});else if(we==="download"){let Xt=`空文件夹${cn}-${i.value}-数量${it.length}`;Gr(ft,`${Xt}.${pe==="path"?"txt":"json"}`);}}async function ue(we){const pe=u.value.map(it=>it.url);await nl(pe,true);}async function me(we){console.log("[onSelectDir]",we);const{items:T}=we,pe=T[T.length-1];await D(),i.value=pe.cid,r.value=await Nt(pe.cid),s.value=[...r.value.paths.slice(1).map(it=>it.file_name),r.value.file_name];}async function ie(we,T){if(we.deleted){Y({text:"该目录已删除,不能再次删除!",showConfirmButton:true});return}o.value=true,await U([we.id])&&(we.deleted=true),o.value=false;}async function F(){if(!u.value.length)return;const we=u.value.filter(T=>!T.deleted).map(T=>T.id);if(!we.length){Y({text:"没有可删除的目录!",showConfirmButton:true});return}if(o.value=true,await U(we))for(const T of u.value)T.deleted=true;o.value=false;}async function U(we){try{const T=await Ec(i.value,we);if(T.state)return !0;Y({text:`删除失败: ${T.errno} - ${T.error}`});}catch(T){console.error(T),Y({text:`删除失败!${T.toString()}`});}return false}async function Q(we){o.value=true;try{const T=await Nt(we.id),pe=ft=>new Date(Number(ft)*1e3).toLocaleString(),{isConfirmed:it}=await te.fire({title:"目录属性",html:`<div class="ce-ec-detail">
<p><span>类型:</span> 文件夹</p>
<p><span>大小:</span> ${T.size}</p>
<p><span>创建时间:</span> ${pe(T.ptime)}</p>
<p><span>修改时间:</span> ${pe(T.utime)}</p>
<p><span>位置:</span> ${we.path}</p>
</div>
`,showDenyButton:!0,denyButtonText:"关闭",showConfirmButton:!0,confirmButtonText:"查看目录"});it&&window.open(we.url);}catch(T){Y({text:`获取目录属性失败!${T.toString()}`,timer:1e4,showConfirmButton:true});}finally{o.value=false;}}async function le(we){w.value=we;}async function ve(we){f.value.push(we),await mi(),p.value.scrollTop=p.value.scrollHeight;}async function ke(we){a.value.push(we);}async function _e(){console.log("[onAllCheckedChange]",l.value);for(const we of a.value)we.disabled||(we.checked=l.value);await Ne();}async function Se(we,T){console.log("[onCheckChange]",we,T),l.value=a.value.every(pe=>pe.checked),c.value.indeterminate=!l.value&&a.value.some(pe=>pe.checked),await Ne();}async function Ne(){u.value=a.value.filter(we=>we.checked);}async function dt(){t.value=false;}return (we,T)=>q((_(),S("span",GI,[Ge(we.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:P},T[15]||(T[15]=[d("span",null,"清理空文件夹",-1)]))]),oe(Js,{"is-open":t.value,speed:300,"max-width":"calc(100vw - 72px)",onClose:T[14]||(T[14]=pe=>t.value=false)},{default:ge(()=>[q(d("div",{class:Le(["ce-empty-cleaner-drawer",{loading:o.value}])},[oe(WI),d("div",JI,[T[17]||(T[17]=d("span",{class:"title"},"空文件夹清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:dt},"关闭")]),T[18]||(T[18]=I(" ",-1)),oe(Ys,{purpose:"清理空文件夹",onSelect:me}),d("button",{type:"button",class:"pure-button btn-global-clear",onClick:T[0]||(T[0]=(...pe)=>ee(ka)&&ee(ka)(...pe)),title:"不用怕误点击,点开后还需要确认呢"}," 一键全局清理空文件夹 "),d("div",YI,[d("a",{target:"_blank",href:y.value,title:"打开目录"},[T[16]||(T[16]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),I(" "+B(s.value.join(" / ")),1)],8,QI)])]),d("div",null,[d("div",XI,[d("div",null,[d("button",{type:"button",class:"pure-button pure-button-primary",onClick:O,disabled:o.value},"检测空文件夹",8,ZI)]),d("div",null,[d("form",eD,[d("fieldset",null,[d("div",tD,[r.value?(_(),S("label",nD,[T[19]||(T[19]=d("span",null,"文件夹数量:",-1)),T[20]||(T[20]=I(" ",-1)),d("b",oD,B(r.value?.folder_count),1)])):fe("",!0),r.value?(_(),S("label",iD,[T[21]||(T[21]=d("span",null,"文件数量:",-1)),T[22]||(T[22]=I(" ",-1)),d("b",sD,B(r.value?.count),1)])):fe("",!0),d("label",null,[q(d("input",{type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":T[1]||(T[1]=pe=>E.value.keepTree=pe)},null,512),[[ye,E.value.keepTree]]),T[24]||(T[24]=I(" ",-1)),T[25]||(T[25]=d("span",{title:"不会删除目录树文件"},"保留目录树文件",-1)),w.value?(_(),S("span",rD,[T[23]||(T[23]=I(" ",-1)),d("a",{href:m.value,class:"text-primary",target:"_blank"},"查看目录树文件",8,aD)])):fe("",!0)])])])])])]),d("h3",null,[T[28]||(T[28]=I(" 日志 ",-1)),f.value.length?(_(),S("span",lD,[T[26]||(T[26]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[2]||(T[2]=pe=>W("copy"))},"复制日志"),T[27]||(T[27]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[3]||(T[3]=pe=>W("download"))},"保存日志")])):fe("",!0)]),d("div",{ref_key:"refLogs",ref:p,class:"ec-logs"},[(_(!0),S($e,null,je(f.value,(pe,it)=>(_(),S("div",{key:it},B(pe),1))),128))],512),d("h3",null,[T[33]||(T[33]=I(" 空文件夹 ",-1)),a.value.length?(_(),S("span",uD,[d("span",cD," ( "+B(a.value.length)+" )",1),T[29]||(T[29]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[4]||(T[4]=pe=>z("copy","all","path"))},"复制路径"),T[30]||(T[30]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[5]||(T[5]=pe=>z("copy","all","full"))},"复制数据"),T[31]||(T[31]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[6]||(T[6]=pe=>z("download","all","path"))},"保存路径"),T[32]||(T[32]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[7]||(T[7]=pe=>z("download","all","full"))},"保存数据")])):fe("",!0)]),d("div",dD,[d("table",fD,[d("thead",null,[d("tr",null,[T[34]||(T[34]=d("th",{width:"25"},"#",-1)),d("th",pD,[q(d("input",{ref_key:"refAllChecked",ref:c,type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":T[8]||(T[8]=pe=>l.value=pe),onChange:_e,disabled:!a.value.length},null,40,hD),[[ye,l.value]])]),T[35]||(T[35]=d("th",{width:"140"},"ID",-1)),T[36]||(T[36]=d("th",null,"路径",-1)),T[37]||(T[37]=d("th",{width:"150"},"操作",-1))])]),d("tbody",null,[(_(!0),S($e,null,je(a.value,(pe,it)=>(_(),S("tr",{key:it,class:Le({"tr-deleted":pe.deleted})},[d("td",null,B(it+1),1),d("td",null,[q(d("input",{type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":ft=>pe.checked=ft,onChange:ft=>Se(pe,it),disabled:pe.disabled},null,40,mD),[[ye,pe.checked]])]),d("td",null,B(pe.id),1),d("td",null,[d("div",null,B(pe.path),1),pe.memo?(_(),S("div",gD,[d("span",wD,B(pe.memo),1)])):fe("",!0)]),d("td",null,[pe.deleted?(_(),S("div",yD,T[38]||(T[38]=[d("span",{class:"label-danger"},"已删除",-1)]))):(_(),S("div",bD,[d("button",{type:"button",class:"pure-button button-xsmall button-error",onClick:ft=>ie(pe,it),disabled:pe.disabled},"删除",8,vD),T[39]||(T[39]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:ft=>Q(pe)},"详情",8,xD),T[40]||(T[40]=I(" ",-1)),d("a",{class:"pure-button button-xsmall",href:pe.url,target:"_blank"},"打开",8,_D)]))])],2))),128))])]),u.value.length?(_(),S("div",CD,[T[41]||(T[41]=d("br",null,null,-1)),d("button",{type:"button",class:"pure-button button-error",onClick:F},"删除选中 ("+B(u.value.length)+")",1),T[42]||(T[42]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[9]||(T[9]=pe=>z("copy","checked","path"))},"复制已选路径"),T[43]||(T[43]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[10]||(T[10]=pe=>z("copy","checked","full"))},"复制已选数据"),T[44]||(T[44]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[11]||(T[11]=pe=>z("download","checked","path"))},"保存已选路径"),T[45]||(T[45]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:T[12]||(T[12]=pe=>z("download","checked","full"))},"保存已选数据"),T[46]||(T[46]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-success button-xsmall",onClick:T[13]||(T[13]=pe=>ue("checked"))},"打开已选")])):fe("",!0)])]),d("div",kD,[T[48]||(T[48]=d("span",{class:"title"},"空文件夹清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:dt},"关闭")]),T[49]||(T[49]=I(" ",-1)),oe(Ys,{purpose:"清理空文件夹",onSelect:me}),T[50]||(T[50]=I(" ",-1)),oe(Nw,{container:".ce-empty-cleaner-drawer"}),d("div",SD,[d("a",{target:"_blank",href:y.value,title:"打开目录"},[T[47]||(T[47]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),I(" "+B(s.value.join(" / ")),1)],8,$D)])])],2),[[Wt,t.value]])]),_:1},8,["is-open"])],512)),[[Wt,n.value]])}}),AD=Pe(ED,[["__file","EmptyCleaner.vue"]]),PD=".button-xsmall,.button-mini{font-size:12px;padding:.2em .5em}.button-small{font-size:85%}.button-large{font-size:110%}.button-xlarge{font-size:125%}.button-success,.button-error,.button-warning,.button-secondary{color:#fff;border-radius:2px;text-shadow:0 1px 1px rgba(0,0,0,.2)}.button-success{background:#1cb841}.button-error{background:#ca3c3c}.button-warning{background:#df7514}.button-secondary{background:#42b8dd}.pure-form select{height:2.5em;font-size:12px}.pure-form input:not([type]){padding:4px 6px}.pure-form input[type=number]{min-width:100px}";Et(PD);function ID(){return {showEntryOnPathBar:true}}async function Uw(){const e=ID(),t=await Xe.get(mt.emptyCleanerConfig,e);return {...e,...t}}async function DD(e){return await Xe.set(mt.emptyCleanerConfig,e)}async function LD(){const{host:e}=location,t=await wr(),n=await Uw();e==="115.com"&&(console.log("[Cleaner] running..."),vn()?(await TD(t),await MD(n)):(await OD(),await BD()));}async function TD(e){if(!e.showEntryOnPathBar)return;const t="cloud115Cleaner",n=await et("#js_path_add_dir"),o=ze(`<span id="${t}"/>`);n.insertAdjacentElement("afterend",o);const i=ro(OE);i.component("VDropdown",Ei),i.directive("tooltip",fd),i.mount(`#${t}`);}async function MD(e){if(!e.showEntryOnPathBar)return;const t="cloud115EmptyCleaner",n=await et("#js_path_add_dir"),o=ze(`<span id="${t}"/>`);n.insertAdjacentElement("afterend",o),ro(RI).mount(`#${t}`);}async function OD(e){const t="cloud115Cleaner",n=ze(`<div id="${t}"/>`);document.body.appendChild(n);const o=ro(MI);o.component("VDropdown",Ei),o.directive("tooltip",fd),o.mount(`#${t}`),vs("清理文件",async()=>{ci({type:Kt.OPEN_CLEANER},window.parent);});}async function BD(e){const t="cloud115EmptyCleaner",n=ze(`<div id="${t}"/>`);document.body.appendChild(n);const o=ro(AD);o.component("VDropdown",Ei),o.mount(`#${t}`),vs("清理空目录",async()=>{ci({type:Kt.OPEN_EMPTY_CLEANER},window.parent);});}function jw(e,t){return function(){return e.apply(t,arguments)}}const{toString:RD}=Object.prototype,{getPrototypeOf:bd}=Object,{iterator:hl,toStringTag:zw}=Symbol,ml=(e=>t=>{const n=RD.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),jn=e=>(e=e.toLowerCase(),t=>ml(t)===e),gl=e=>t=>typeof t===e,{isArray:us}=Array,Qs=gl("undefined");function yr(e){return e!==null&&!Qs(e)&&e.constructor!==null&&!Qs(e.constructor)&&an(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Hw=jn("ArrayBuffer");function FD(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Hw(e.buffer),t}const ND=gl("string"),an=gl("function"),Vw=gl("number"),br=e=>e!==null&&typeof e=="object",UD=e=>e===true||e===false,qr=e=>{if(ml(e)!=="object")return false;const t=bd(e);return (t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(zw in e)&&!(hl in e)},jD=e=>{if(!br(e)||yr(e))return false;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return false}},zD=jn("Date"),HD=jn("File"),VD=jn("Blob"),qD=jn("FileList"),WD=e=>br(e)&&an(e.pipe),KD=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||an(e.append)&&((t=ml(e))==="formdata"||t==="object"&&an(e.toString)&&e.toString()==="[object FormData]"))},GD=jn("URLSearchParams"),[JD,YD,QD,XD]=["ReadableStream","Request","Response","Headers"].map(jn),ZD=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function vr(e,t,{allOwnKeys:n=false}={}){if(e===null||typeof e>"u")return;let o,i;if(typeof e!="object"&&(e=[e]),us(e))for(o=0,i=e.length;o<i;o++)t.call(null,e[o],o,e);else {if(yr(e))return;const s=n?Object.getOwnPropertyNames(e):Object.keys(e),r=s.length;let a;for(o=0;o<r;o++)a=s[o],t.call(null,e[a],a,e);}}function qw(e,t){if(yr(e))return null;t=t.toLowerCase();const n=Object.keys(e);let o=n.length,i;for(;o-- >0;)if(i=n[o],t===i.toLowerCase())return i;return null}const si=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ww=e=>!Qs(e)&&e!==si;function Hu(){const{caseless:e}=Ww(this)&&this||{},t={},n=(o,i)=>{const s=e&&qw(t,i)||i;qr(t[s])&&qr(o)?t[s]=Hu(t[s],o):qr(o)?t[s]=Hu({},o):us(o)?t[s]=o.slice():t[s]=o;};for(let o=0,i=arguments.length;o<i;o++)arguments[o]&&vr(arguments[o],n);return t}const e5=(e,t,n,{allOwnKeys:o}={})=>(vr(t,(i,s)=>{n&&an(i)?e[s]=jw(i,n):e[s]=i;},{allOwnKeys:o}),e),t5=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),n5=(e,t,n,o)=>{e.prototype=Object.create(t.prototype,o),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n);},o5=(e,t,n,o)=>{let i,s,r;const a={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),s=i.length;s-- >0;)r=i[s],(!o||o(r,e,t))&&!a[r]&&(t[r]=e[r],a[r]=true);e=n!==false&&bd(e);}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},i5=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const o=e.indexOf(t,n);return o!==-1&&o===n},s5=e=>{if(!e)return null;if(us(e))return e;let t=e.length;if(!Vw(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},r5=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&bd(Uint8Array)),a5=(e,t)=>{const o=(e&&e[hl]).call(e);let i;for(;(i=o.next())&&!i.done;){const s=i.value;t.call(e,s[0],s[1]);}},l5=(e,t)=>{let n;const o=[];for(;(n=e.exec(t))!==null;)o.push(n);return o},u5=jn("HTMLFormElement"),c5=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,i){return o.toUpperCase()+i}),bp=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),d5=jn("RegExp"),Kw=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};vr(n,(i,s)=>{let r;(r=t(i,s,e))!==false&&(o[s]=r||i);}),Object.defineProperties(e,o);},f5=e=>{Kw(e,(t,n)=>{if(an(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return false;const o=e[n];if(an(o)){if(t.enumerable=false,"writable"in t){t.writable=false;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")});}});},p5=(e,t)=>{const n={},o=i=>{i.forEach(s=>{n[s]=true;});};return us(e)?o(e):o(String(e).split(t)),n},h5=()=>{},m5=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function g5(e){return !!(e&&an(e.append)&&e[zw]==="FormData"&&e[hl])}const w5=e=>{const t=new Array(10),n=(o,i)=>{if(br(o)){if(t.indexOf(o)>=0)return;if(yr(o))return o;if(!("toJSON"in o)){t[i]=o;const s=us(o)?[]:{};return vr(o,(r,a)=>{const l=n(r,i+1);!Qs(l)&&(s[a]=l);}),t[i]=void 0,s}}return o};return n(e,0)},y5=jn("AsyncFunction"),b5=e=>e&&(br(e)||an(e))&&an(e.then)&&an(e.catch),Gw=((e,t)=>e?setImmediate:t?((n,o)=>(si.addEventListener("message",({source:i,data:s})=>{i===si&&s===n&&o.length&&o.shift()();},false),i=>{o.push(i),si.postMessage(n,"*");}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",an(si.postMessage)),v5=typeof queueMicrotask<"u"?queueMicrotask.bind(si):typeof process<"u"&&process.nextTick||Gw,x5=e=>e!=null&&an(e[hl]),j={isArray:us,isArrayBuffer:Hw,isBuffer:yr,isFormData:KD,isArrayBufferView:FD,isString:ND,isNumber:Vw,isBoolean:UD,isObject:br,isPlainObject:qr,isEmptyObject:jD,isReadableStream:JD,isRequest:YD,isResponse:QD,isHeaders:XD,isUndefined:Qs,isDate:zD,isFile:HD,isBlob:VD,isRegExp:d5,isFunction:an,isStream:WD,isURLSearchParams:GD,isTypedArray:r5,isFileList:qD,forEach:vr,merge:Hu,extend:e5,trim:ZD,stripBOM:t5,inherits:n5,toFlatObject:o5,kindOf:ml,kindOfTest:jn,endsWith:i5,toArray:s5,forEachEntry:a5,matchAll:l5,isHTMLForm:u5,hasOwnProperty:bp,hasOwnProp:bp,reduceDescriptors:Kw,freezeMethods:f5,toObjectSet:p5,toCamelCase:c5,noop:h5,toFiniteNumber:m5,findKey:qw,global:si,isContextDefined:Ww,isSpecCompliantForm:g5,toJSONObject:w5,isAsyncFn:y5,isThenable:b5,setImmediate:Gw,asap:v5,isIterable:x5};function Re(e,t,n,o,i){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),o&&(this.request=o),i&&(this.response=i,this.status=i.status?i.status:null);}j.inherits(Re,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:j.toJSONObject(this.config),code:this.code,status:this.status}}});const Jw=Re.prototype,Yw={};["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=>{Yw[e]={value:e};});Object.defineProperties(Re,Yw);Object.defineProperty(Jw,"isAxiosError",{value:true});Re.from=(e,t,n,o,i,s)=>{const r=Object.create(Jw);return j.toFlatObject(e,r,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),Re.call(r,e.message,t,n,o,i),r.cause=e,r.name=e.name,s&&Object.assign(r,s),r};const _5=null;function Vu(e){return j.isPlainObject(e)||j.isArray(e)}function Qw(e){return j.endsWith(e,"[]")?e.slice(0,-2):e}function vp(e,t,n){return e?e.concat(t).map(function(i,s){return i=Qw(i),!n&&s?"["+i+"]":i}).join(n?".":""):t}function C5(e){return j.isArray(e)&&!e.some(Vu)}const k5=j.toFlatObject(j,{},null,function(t){return /^is[A-Z]/.test(t)});function wl(e,t,n){if(!j.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=j.toFlatObject(n,{metaTokens:true,dots:false,indexes:false},false,function(y,v){return !j.isUndefined(v[y])});const o=n.metaTokens,i=n.visitor||u,s=n.dots,r=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&j.isSpecCompliantForm(t);if(!j.isFunction(i))throw new TypeError("visitor must be a function");function c(m){if(m===null)return "";if(j.isDate(m))return m.toISOString();if(j.isBoolean(m))return m.toString();if(!l&&j.isBlob(m))throw new Re("Blob is not supported. Use a Buffer instead.");return j.isArrayBuffer(m)||j.isTypedArray(m)?l&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function u(m,y,v){let E=m;if(m&&!v&&typeof m=="object"){if(j.endsWith(y,"{}"))y=o?y:y.slice(0,-2),m=JSON.stringify(m);else if(j.isArray(m)&&C5(m)||(j.isFileList(m)||j.endsWith(y,"[]"))&&(E=j.toArray(m)))return y=Qw(y),E.forEach(function(P,D){!(j.isUndefined(P)||P===null)&&t.append(r===true?vp([y],D,s):r===null?y:y+"[]",c(P));}),false}return Vu(m)?true:(t.append(vp(v,y,s),c(m)),false)}const f=[],p=Object.assign(k5,{defaultVisitor:u,convertValue:c,isVisitable:Vu});function w(m,y){if(!j.isUndefined(m)){if(f.indexOf(m)!==-1)throw Error("Circular reference detected in "+y.join("."));f.push(m),j.forEach(m,function(E,L){(!(j.isUndefined(E)||E===null)&&i.call(t,E,j.isString(L)?L.trim():L,y,p))===true&&w(E,y?y.concat(L):[L]);}),f.pop();}}if(!j.isObject(e))throw new TypeError("data must be an object");return w(e),t}function xp(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(o){return t[o]})}function vd(e,t){this._pairs=[],e&&wl(e,this,t);}const Xw=vd.prototype;Xw.append=function(t,n){this._pairs.push([t,n]);};Xw.toString=function(t){const n=t?function(o){return t.call(this,o,xp)}:xp;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function S5(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Zw(e,t,n){if(!t)return e;const o=n&&n.encode||S5;j.isFunction(n)&&(n={serialize:n});const i=n&&n.serialize;let s;if(i?s=i(t,n):s=j.isURLSearchParams(t)?t.toString():new vd(t,n).toString(o),s){const r=e.indexOf("#");r!==-1&&(e=e.slice(0,r)),e+=(e.indexOf("?")===-1?"?":"&")+s;}return e}class _p{constructor(){this.handlers=[];}use(t,n,o){return this.handlers.push({fulfilled:t,rejected:n,synchronous:o?o.synchronous:false,runWhen:o?o.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null);}clear(){this.handlers&&(this.handlers=[]);}forEach(t){j.forEach(this.handlers,function(o){o!==null&&t(o);});}}const ey={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false},$5=typeof URLSearchParams<"u"?URLSearchParams:vd,E5=typeof FormData<"u"?FormData:null,A5=typeof Blob<"u"?Blob:null,P5={isBrowser:true,classes:{URLSearchParams:$5,FormData:E5,Blob:A5},protocols:["http","https","file","blob","url","data"]},xd=typeof window<"u"&&typeof document<"u",qu=typeof navigator=="object"&&navigator||void 0,I5=xd&&(!qu||["ReactNative","NativeScript","NS"].indexOf(qu.product)<0),D5=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",L5=xd&&window.location.href||"http://localhost",T5=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:xd,hasStandardBrowserEnv:I5,hasStandardBrowserWebWorkerEnv:D5,navigator:qu,origin:L5},Symbol.toStringTag,{value:"Module"})),Ft={...T5,...P5};function M5(e,t){return wl(e,new Ft.classes.URLSearchParams,{visitor:function(n,o,i,s){return Ft.isNode&&j.isBuffer(n)?(this.append(o,n.toString("base64")),false):s.defaultVisitor.apply(this,arguments)},...t})}function O5(e){return j.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function B5(e){const t={},n=Object.keys(e);let o;const i=n.length;let s;for(o=0;o<i;o++)s=n[o],t[s]=e[s];return t}function ty(e){function t(n,o,i,s){let r=n[s++];if(r==="__proto__")return true;const a=Number.isFinite(+r),l=s>=n.length;return r=!r&&j.isArray(i)?i.length:r,l?(j.hasOwnProp(i,r)?i[r]=[i[r],o]:i[r]=o,!a):((!i[r]||!j.isObject(i[r]))&&(i[r]=[]),t(n,o,i[r],s)&&j.isArray(i[r])&&(i[r]=B5(i[r])),!a)}if(j.isFormData(e)&&j.isFunction(e.entries)){const n={};return j.forEachEntry(e,(o,i)=>{t(O5(o),i,n,0);}),n}return null}function R5(e,t,n){if(j.isString(e))try{return (t||JSON.parse)(e),j.trim(e)}catch(o){if(o.name!=="SyntaxError")throw o}return (n||JSON.stringify)(e)}const xr={transitional:ey,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",i=o.indexOf("application/json")>-1,s=j.isObject(t);if(s&&j.isHTMLForm(t)&&(t=new FormData(t)),j.isFormData(t))return i?JSON.stringify(ty(t)):t;if(j.isArrayBuffer(t)||j.isBuffer(t)||j.isStream(t)||j.isFile(t)||j.isBlob(t)||j.isReadableStream(t))return t;if(j.isArrayBufferView(t))return t.buffer;if(j.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",false),t.toString();let a;if(s){if(o.indexOf("application/x-www-form-urlencoded")>-1)return M5(t,this.formSerializer).toString();if((a=j.isFileList(t))||o.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return wl(a?{"files[]":t}:t,l&&new l,this.formSerializer)}}return s||i?(n.setContentType("application/json",false),R5(t)):t}],transformResponse:[function(t){const n=this.transitional||xr.transitional,o=n&&n.forcedJSONParsing,i=this.responseType==="json";if(j.isResponse(t)||j.isReadableStream(t))return t;if(t&&j.isString(t)&&(o&&!this.responseType||i)){const r=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(a){if(r)throw a.name==="SyntaxError"?Re.from(a,Re.ERR_BAD_RESPONSE,this,null,this.response):a}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ft.classes.FormData,Blob:Ft.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};j.forEach(["delete","get","head","post","put","patch"],e=>{xr.headers[e]={};});const F5=j.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"]),N5=e=>{const t={};let n,o,i;return e&&e.split(`
`).forEach(function(r){i=r.indexOf(":"),n=r.substring(0,i).trim().toLowerCase(),o=r.substring(i+1).trim(),!(!n||t[n]&&F5[n])&&(n==="set-cookie"?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o);}),t},Cp=Symbol("internals");function gs(e){return e&&String(e).trim().toLowerCase()}function Wr(e){return e===false||e==null?e:j.isArray(e)?e.map(Wr):String(e)}function U5(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let o;for(;o=n.exec(e);)t[o[1]]=o[2];return t}const j5=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function eu(e,t,n,o,i){if(j.isFunction(o))return o.call(this,t,n);if(i&&(t=n),!!j.isString(t)){if(j.isString(o))return t.indexOf(o)!==-1;if(j.isRegExp(o))return o.test(t)}}function z5(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,o)=>n.toUpperCase()+o)}function H5(e,t){const n=j.toCamelCase(" "+t);["get","set","has"].forEach(o=>{Object.defineProperty(e,o+n,{value:function(i,s,r){return this[o].call(this,t,i,s,r)},configurable:true});});}let ln=class{constructor(t){t&&this.set(t);}set(t,n,o){const i=this;function s(a,l,c){const u=gs(l);if(!u)throw new Error("header name must be a non-empty string");const f=j.findKey(i,u);(!f||i[f]===void 0||c===true||c===void 0&&i[f]!==false)&&(i[f||l]=Wr(a));}const r=(a,l)=>j.forEach(a,(c,u)=>s(c,u,l));if(j.isPlainObject(t)||t instanceof this.constructor)r(t,n);else if(j.isString(t)&&(t=t.trim())&&!j5(t))r(N5(t),n);else if(j.isObject(t)&&j.isIterable(t)){let a={},l,c;for(const u of t){if(!j.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[c=u[0]]=(l=a[c])?j.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1];}r(a,n);}else t!=null&&s(n,t,o);return this}get(t,n){if(t=gs(t),t){const o=j.findKey(this,t);if(o){const i=this[o];if(!n)return i;if(n===true)return U5(i);if(j.isFunction(n))return n.call(this,i,o);if(j.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=gs(t),t){const o=j.findKey(this,t);return !!(o&&this[o]!==void 0&&(!n||eu(this,this[o],o,n)))}return false}delete(t,n){const o=this;let i=false;function s(r){if(r=gs(r),r){const a=j.findKey(o,r);a&&(!n||eu(o,o[a],a,n))&&(delete o[a],i=true);}}return j.isArray(t)?t.forEach(s):s(t),i}clear(t){const n=Object.keys(this);let o=n.length,i=false;for(;o--;){const s=n[o];(!t||eu(this,this[s],s,t,true))&&(delete this[s],i=true);}return i}normalize(t){const n=this,o={};return j.forEach(this,(i,s)=>{const r=j.findKey(o,s);if(r){n[r]=Wr(i),delete n[s];return}const a=t?z5(s):String(s).trim();a!==s&&delete n[s],n[a]=Wr(i),o[a]=true;}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return j.forEach(this,(o,i)=>{o!=null&&o!==false&&(n[i]=t&&j.isArray(o)?o.join(", "):o);}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return "AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(i=>o.set(i)),o}static accessor(t){const o=(this[Cp]=this[Cp]={accessors:{}}).accessors,i=this.prototype;function s(r){const a=gs(r);o[a]||(H5(i,r),o[a]=true);}return j.isArray(t)?t.forEach(s):s(t),this}};ln.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);j.reduceDescriptors(ln.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return {get:()=>e,set(o){this[n]=o;}}});j.freezeMethods(ln);function tu(e,t){const n=this||xr,o=t||n,i=ln.from(o.headers);let s=o.data;return j.forEach(e,function(a){s=a.call(n,s,i.normalize(),t?t.status:void 0);}),i.normalize(),s}function ny(e){return !!(e&&e.__CANCEL__)}function cs(e,t,n){Re.call(this,e??"canceled",Re.ERR_CANCELED,t,n),this.name="CanceledError";}j.inherits(cs,Re,{__CANCEL__:true});function oy(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new Re("Request failed with status code "+n.status,[Re.ERR_BAD_REQUEST,Re.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n));}function V5(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function q5(e,t){e=e||10;const n=new Array(e),o=new Array(e);let i=0,s=0,r;return t=t!==void 0?t:1e3,function(l){const c=Date.now(),u=o[s];r||(r=c),n[i]=l,o[i]=c;let f=s,p=0;for(;f!==i;)p+=n[f++],f=f%e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),c-r<t)return;const w=u&&c-u;return w?Math.round(p*1e3/w):void 0}}function W5(e,t){let n=0,o=1e3/t,i,s;const r=(c,u=Date.now())=>{n=u,i=null,s&&(clearTimeout(s),s=null),e(...c);};return [(...c)=>{const u=Date.now(),f=u-n;f>=o?r(c,u):(i=c,s||(s=setTimeout(()=>{s=null,r(i);},o-f)));},()=>i&&r(i)]}const Sa=(e,t,n=3)=>{let o=0;const i=q5(50,250);return W5(s=>{const r=s.loaded,a=s.lengthComputable?s.total:void 0,l=r-o,c=i(l),u=r<=a;o=r;const f={loaded:r,total:a,progress:a?r/a:void 0,bytes:l,rate:c||void 0,estimated:c&&a&&u?(a-r)/c:void 0,event:s,lengthComputable:a!=null,[t?"download":"upload"]:true};e(f);},n)},kp=(e,t)=>{const n=e!=null;return [o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},Sp=e=>(...t)=>j.asap(()=>e(...t)),K5=Ft.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Ft.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Ft.origin),Ft.navigator&&/(msie|trident)/i.test(Ft.navigator.userAgent)):()=>true,G5=Ft.hasStandardBrowserEnv?{write(e,t,n,o,i,s){const r=[e+"="+encodeURIComponent(t)];j.isNumber(n)&&r.push("expires="+new Date(n).toGMTString()),j.isString(o)&&r.push("path="+o),j.isString(i)&&r.push("domain="+i),s===true&&r.push("secure"),document.cookie=r.join("; ");},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5);}}:{write(){},read(){return null},remove(){}};function J5(e){return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Y5(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function iy(e,t,n){let o=!J5(t);return e&&(o||n==false)?Y5(e,t):t}const $p=e=>e instanceof ln?{...e}:e;function bi(e,t){t=t||{};const n={};function o(c,u,f,p){return j.isPlainObject(c)&&j.isPlainObject(u)?j.merge.call({caseless:p},c,u):j.isPlainObject(u)?j.merge({},u):j.isArray(u)?u.slice():u}function i(c,u,f,p){if(j.isUndefined(u)){if(!j.isUndefined(c))return o(void 0,c,f,p)}else return o(c,u,f,p)}function s(c,u){if(!j.isUndefined(u))return o(void 0,u)}function r(c,u){if(j.isUndefined(u)){if(!j.isUndefined(c))return o(void 0,c)}else return o(void 0,u)}function a(c,u,f){if(f in t)return o(c,u);if(f in e)return o(void 0,c)}const l={url:s,method:s,data:s,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,withXSRFToken:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:a,headers:(c,u,f)=>i($p(c),$p(u),f,true)};return j.forEach(Object.keys({...e,...t}),function(u){const f=l[u]||i,p=f(e[u],t[u],u);j.isUndefined(p)&&f!==a||(n[u]=p);}),n}const sy=e=>{const t=bi({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:i,xsrfCookieName:s,headers:r,auth:a}=t;t.headers=r=ln.from(r),t.url=Zw(iy(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),a&&r.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let l;if(j.isFormData(n)){if(Ft.hasStandardBrowserEnv||Ft.hasStandardBrowserWebWorkerEnv)r.setContentType(void 0);else if((l=r.getContentType())!==false){const[c,...u]=l?l.split(";").map(f=>f.trim()).filter(Boolean):[];r.setContentType([c||"multipart/form-data",...u].join("; "));}}if(Ft.hasStandardBrowserEnv&&(o&&j.isFunction(o)&&(o=o(t)),o||o!==false&&K5(t.url))){const c=i&&s&&G5.read(s);c&&r.set(i,c);}return t},Q5=typeof XMLHttpRequest<"u",X5=Q5&&function(e){return new Promise(function(n,o){const i=sy(e);let s=i.data;const r=ln.from(i.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=i,u,f,p,w,m;function y(){w&&w(),m&&m(),i.cancelToken&&i.cancelToken.unsubscribe(u),i.signal&&i.signal.removeEventListener("abort",u);}let v=new XMLHttpRequest;v.open(i.method.toUpperCase(),i.url,true),v.timeout=i.timeout;function E(){if(!v)return;const P=ln.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders()),O={data:!a||a==="text"||a==="json"?v.responseText:v.response,status:v.status,statusText:v.statusText,headers:P,config:e,request:v};oy(function(z){n(z),y();},function(z){o(z),y();},O),v=null;}"onloadend"in v?v.onloadend=E:v.onreadystatechange=function(){!v||v.readyState!==4||v.status===0&&!(v.responseURL&&v.responseURL.indexOf("file:")===0)||setTimeout(E);},v.onabort=function(){v&&(o(new Re("Request aborted",Re.ECONNABORTED,e,v)),v=null);},v.onerror=function(){o(new Re("Network Error",Re.ERR_NETWORK,e,v)),v=null;},v.ontimeout=function(){let D=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const O=i.transitional||ey;i.timeoutErrorMessage&&(D=i.timeoutErrorMessage),o(new Re(D,O.clarifyTimeoutError?Re.ETIMEDOUT:Re.ECONNABORTED,e,v)),v=null;},s===void 0&&r.setContentType(null),"setRequestHeader"in v&&j.forEach(r.toJSON(),function(D,O){v.setRequestHeader(O,D);}),j.isUndefined(i.withCredentials)||(v.withCredentials=!!i.withCredentials),a&&a!=="json"&&(v.responseType=i.responseType),c&&([p,m]=Sa(c,true),v.addEventListener("progress",p)),l&&v.upload&&([f,w]=Sa(l),v.upload.addEventListener("progress",f),v.upload.addEventListener("loadend",w)),(i.cancelToken||i.signal)&&(u=P=>{v&&(o(!P||P.type?new cs(null,e,v):P),v.abort(),v=null);},i.cancelToken&&i.cancelToken.subscribe(u),i.signal&&(i.signal.aborted?u():i.signal.addEventListener("abort",u)));const L=V5(i.url);if(L&&Ft.protocols.indexOf(L)===-1){o(new Re("Unsupported protocol "+L+":",Re.ERR_BAD_REQUEST,e));return}v.send(s||null);})},Z5=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,i;const s=function(c){if(!i){i=true,a();const u=c instanceof Error?c:this.reason;o.abort(u instanceof Re?u:new cs(u instanceof Error?u.message:u));}};let r=t&&setTimeout(()=>{r=null,s(new Re(`timeout ${t} of ms exceeded`,Re.ETIMEDOUT));},t);const a=()=>{e&&(r&&clearTimeout(r),r=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(s):c.removeEventListener("abort",s);}),e=null);};e.forEach(c=>c.addEventListener("abort",s));const{signal:l}=o;return l.unsubscribe=()=>j.asap(a),l}},eL=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let o=0,i;for(;o<n;)i=o+t,yield e.slice(o,i),o=i;},tL=async function*(e,t){for await(const n of nL(e))yield*eL(n,t);},nL=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:o}=await t.read();if(n)break;yield o;}}finally{await t.cancel();}},Ep=(e,t,n,o)=>{const i=tL(e,t);let s=0,r,a=l=>{r||(r=true,o&&o(l));};return new ReadableStream({async pull(l){try{const{done:c,value:u}=await i.next();if(c){a(),l.close();return}let f=u.byteLength;if(n){let p=s+=f;n(p);}l.enqueue(new Uint8Array(u));}catch(c){throw a(c),c}},cancel(l){return a(l),i.return()}},{highWaterMark:2})},yl=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ry=yl&&typeof ReadableStream=="function",oL=yl&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),ay=(e,...t)=>{try{return !!e(...t)}catch{return false}},iL=ry&&ay(()=>{let e=!1;const t=new Request(Ft.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Ap=64*1024,Wu=ry&&ay(()=>j.isReadableStream(new Response("").body)),$a={stream:Wu&&(e=>e.body)};yl&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!$a[t]&&($a[t]=j.isFunction(e[t])?n=>n[t]():(n,o)=>{throw new Re(`Response type '${t}' is not supported`,Re.ERR_NOT_SUPPORT,o)});});})(new Response);const sL=async e=>{if(e==null)return 0;if(j.isBlob(e))return e.size;if(j.isSpecCompliantForm(e))return (await new Request(Ft.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(j.isArrayBufferView(e)||j.isArrayBuffer(e))return e.byteLength;if(j.isURLSearchParams(e)&&(e=e+""),j.isString(e))return (await oL(e)).byteLength},rL=async(e,t)=>{const n=j.toFiniteNumber(e.getContentLength());return n??sL(t)},aL=yl&&(async e=>{let{url:t,method:n,data:o,signal:i,cancelToken:s,timeout:r,onDownloadProgress:a,onUploadProgress:l,responseType:c,headers:u,withCredentials:f="same-origin",fetchOptions:p}=sy(e);c=c?(c+"").toLowerCase():"text";let w=Z5([i,s&&s.toAbortSignal()],r),m;const y=w&&w.unsubscribe&&(()=>{w.unsubscribe();});let v;try{if(l&&iL&&n!=="get"&&n!=="head"&&(v=await rL(u,o))!==0){let O=new Request(t,{method:"POST",body:o,duplex:"half"}),W;if(j.isFormData(o)&&(W=O.headers.get("content-type"))&&u.setContentType(W),O.body){const[z,ue]=kp(v,Sa(Sp(l)));o=Ep(O.body,Ap,z,ue);}}j.isString(f)||(f=f?"include":"omit");const E="credentials"in Request.prototype;m=new Request(t,{...p,signal:w,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:o,duplex:"half",credentials:E?f:void 0});let L=await fetch(m,p);const P=Wu&&(c==="stream"||c==="response");if(Wu&&(a||P&&y)){const O={};["status","statusText","headers"].forEach(me=>{O[me]=L[me];});const W=j.toFiniteNumber(L.headers.get("content-length")),[z,ue]=a&&kp(W,Sa(Sp(a),!0))||[];L=new Response(Ep(L.body,Ap,z,()=>{ue&&ue(),y&&y();}),O);}c=c||"text";let D=await $a[j.findKey($a,c)||"text"](L,e);return !P&&y&&y(),await new Promise((O,W)=>{oy(O,W,{data:D,headers:ln.from(L.headers),status:L.status,statusText:L.statusText,config:e,request:m});})}catch(E){throw y&&y(),E&&E.name==="TypeError"&&/Load failed|fetch/i.test(E.message)?Object.assign(new Re("Network Error",Re.ERR_NETWORK,e,m),{cause:E.cause||E}):Re.from(E,E&&E.code,e,m)}}),Ku={http:_5,xhr:X5,fetch:aL};j.forEach(Ku,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t});}catch{}Object.defineProperty(e,"adapterName",{value:t});}});const Pp=e=>`- ${e}`,lL=e=>j.isFunction(e)||e===null||e===false,ly={getAdapter:e=>{e=j.isArray(e)?e:[e];const{length:t}=e;let n,o;const i={};for(let s=0;s<t;s++){n=e[s];let r;if(o=n,!lL(n)&&(o=Ku[(r=String(n)).toLowerCase()],o===void 0))throw new Re(`Unknown adapter '${r}'`);if(o)break;i[r||"#"+s]=o;}if(!o){const s=Object.entries(i).map(([a,l])=>`adapter ${a} `+(l===false?"is not supported by the environment":"is not available in the build"));let r=t?s.length>1?`since :
`+s.map(Pp).join(`
`):" "+Pp(s[0]):"as no adapter specified";throw new Re("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return o},adapters:Ku};function nu(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new cs(null,e)}function Ip(e){return nu(e),e.headers=ln.from(e.headers),e.data=tu.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",false),ly.getAdapter(e.adapter||xr.adapter)(e).then(function(o){return nu(e),o.data=tu.call(e,e.transformResponse,o),o.headers=ln.from(o.headers),o},function(o){return ny(o)||(nu(e),o&&o.response&&(o.response.data=tu.call(e,e.transformResponse,o.response),o.response.headers=ln.from(o.response.headers))),Promise.reject(o)})}const uy="1.11.0",bl={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{bl[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e};});const Dp={};bl.transitional=function(t,n,o){function i(s,r){return "[Axios v"+uy+"] Transitional option '"+s+"'"+r+(o?". "+o:"")}return (s,r,a)=>{if(t===false)throw new Re(i(r," has been removed"+(n?" in "+n:"")),Re.ERR_DEPRECATED);return n&&!Dp[r]&&(Dp[r]=true,console.warn(i(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,r,a):true}};bl.spelling=function(t){return (n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),true)};function uL(e,t,n){if(typeof e!="object")throw new Re("options must be an object",Re.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let i=o.length;for(;i-- >0;){const s=o[i],r=t[s];if(r){const a=e[s],l=a===void 0||r(a,s,e);if(l!==true)throw new Re("option "+s+" must be "+l,Re.ERR_BAD_OPTION_VALUE);continue}if(n!==true)throw new Re("Unknown option "+s,Re.ERR_BAD_OPTION)}}const Kr={assertOptions:uL,validators:bl},Hn=Kr.validators;let ui=class{constructor(t){this.defaults=t||{},this.interceptors={request:new _p,response:new _p};}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;const s=i.stack?i.stack.replace(/^.+\n/,""):"";try{o.stack?s&&!String(o.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(o.stack+=`
`+s):o.stack=s;}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=bi(this.defaults,n);const{transitional:o,paramsSerializer:i,headers:s}=n;o!==void 0&&Kr.assertOptions(o,{silentJSONParsing:Hn.transitional(Hn.boolean),forcedJSONParsing:Hn.transitional(Hn.boolean),clarifyTimeoutError:Hn.transitional(Hn.boolean)},false),i!=null&&(j.isFunction(i)?n.paramsSerializer={serialize:i}:Kr.assertOptions(i,{encode:Hn.function,serialize:Hn.function},true)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=true),Kr.assertOptions(n,{baseUrl:Hn.spelling("baseURL"),withXsrfToken:Hn.spelling("withXSRFToken")},true),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=s&&j.merge(s.common,s[n.method]);s&&j.forEach(["delete","get","head","post","put","patch","common"],m=>{delete s[m];}),n.headers=ln.concat(r,s);const a=[];let l=true;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(n)===false||(l=l&&y.synchronous,a.unshift(y.fulfilled,y.rejected));});const c=[];this.interceptors.response.forEach(function(y){c.push(y.fulfilled,y.rejected);});let u,f=0,p;if(!l){const m=[Ip.bind(this),void 0];for(m.unshift(...a),m.push(...c),p=m.length,u=Promise.resolve(n);f<p;)u=u.then(m[f++],m[f++]);return u}p=a.length;let w=n;for(f=0;f<p;){const m=a[f++],y=a[f++];try{w=m(w);}catch(v){y.call(this,v);break}}try{u=Ip.call(this,w);}catch(m){return Promise.reject(m)}for(f=0,p=c.length;f<p;)u=u.then(c[f++],c[f++]);return u}getUri(t){t=bi(this.defaults,t);const n=iy(t.baseURL,t.url,t.allowAbsoluteUrls);return Zw(n,t.params,t.paramsSerializer)}};j.forEach(["delete","get","head","options"],function(t){ui.prototype[t]=function(n,o){return this.request(bi(o||{},{method:t,url:n,data:(o||{}).data}))};});j.forEach(["post","put","patch"],function(t){function n(o){return function(s,r,a){return this.request(bi(a||{},{method:t,headers:o?{"Content-Type":"multipart/form-data"}:{},url:s,data:r}))}}ui.prototype[t]=n(),ui.prototype[t+"Form"]=n(true);});let cL=class cy{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(s){n=s;});const o=this;this.promise.then(i=>{if(!o._listeners)return;let s=o._listeners.length;for(;s-- >0;)o._listeners[s](i);o._listeners=null;}),this.promise.then=i=>{let s;const r=new Promise(a=>{o.subscribe(a),s=a;}).then(i);return r.cancel=function(){o.unsubscribe(s);},r},t(function(s,r,a){o.reason||(o.reason=new cs(s,r,a),n(o.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);}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o);};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return {token:new cy(function(i){t=i;}),cancel:t}}};function dL(e){return function(n){return e.apply(null,n)}}function fL(e){return j.isObject(e)&&e.isAxiosError===true}const Gu={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(Gu).forEach(([e,t])=>{Gu[t]=e;});function dy(e){const t=new ui(e),n=jw(ui.prototype.request,t);return j.extend(n,ui.prototype,t,{allOwnKeys:true}),j.extend(n,t,null,{allOwnKeys:true}),n.create=function(i){return dy(bi(e,i))},n}const vt=dy(xr);vt.Axios=ui;vt.CanceledError=cs;vt.CancelToken=cL;vt.isCancel=ny;vt.VERSION=uy;vt.toFormData=wl;vt.AxiosError=Re;vt.Cancel=vt.CanceledError;vt.all=function(t){return Promise.all(t)};vt.spread=dL;vt.isAxiosError=fL;vt.mergeConfig=bi;vt.AxiosHeaders=ln;vt.formToJSON=e=>ty(j.isHTMLForm(e)?new FormData(e):e);vt.getAdapter=ly.getAdapter;vt.HttpStatusCode=Gu;vt.default=vt;const{Axios:GR,AxiosError:pL,CanceledError:JR,isCancel:YR,CancelToken:QR,VERSION:XR,all:ZR,Cancel:eF,isAxiosError:tF,spread:nF,toFormData:oF,AxiosHeaders:iF,HttpStatusCode:sF,formToJSON:rF,getAdapter:aF,mergeConfig:lF}=vt;var ou,Lp;function hL(){if(Lp)return ou;Lp=1;const e=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);return ou=t=>!e.has(t&&t.code),ou}var mL=hL();const gL=Cm(mL),_d="axios-retry";function fy(e){const t=["ERR_CANCELED","ECONNABORTED"];return e.response||!e.code||t.includes(e.code)?false:gL(e)}const py=["get","head","options"],wL=py.concat(["put","delete"]);function Cd(e){return e.code!=="ECONNABORTED"&&(!e.response||e.response.status===429||e.response.status>=500&&e.response.status<=599)}function yL(e){return e.config?.method?Cd(e)&&py.indexOf(e.config.method)!==-1:false}function hy(e){return e.config?.method?Cd(e)&&wL.indexOf(e.config.method)!==-1:false}function my(e){return fy(e)||hy(e)}function kd(e=void 0){const t=e?.response?.headers["retry-after"];if(!t)return 0;let n=(Number(t)||0)*1e3;return n===0&&(n=(new Date(t).valueOf()||0)-Date.now()),Math.max(0,n)}function bL(e=0,t=void 0){return Math.max(0,kd(t))}function vL(e=0,t=void 0,n=100){const o=2**e*n,i=Math.max(o,kd(t)),s=i*.2*Math.random();return i+s}function xL(e=100){return (t=0,n=void 0)=>{const o=t*e;return Math.max(o,kd(n))}}const _L={retries:3,retryCondition:my,retryDelay:bL,shouldResetTimeout:false,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function CL(e,t){return {..._L,...t,...e[_d]}}function Tp(e,t,n=false){const o=CL(e,t||{});return o.retryCount=o.retryCount||0,(!o.lastRequestTime||n)&&(o.lastRequestTime=Date.now()),e[_d]=o,o}function kL(e,t){e.defaults.agent===t.agent&&delete t.agent,e.defaults.httpAgent===t.httpAgent&&delete t.httpAgent,e.defaults.httpsAgent===t.httpsAgent&&delete t.httpsAgent;}async function SL(e,t){const{retries:n,retryCondition:o}=e,i=(e.retryCount||0)<n&&o(t);if(typeof i=="object")try{return await i!==!1}catch{return false}return i}async function $L(e,t,n,o){t.retryCount+=1;const{retryDelay:i,shouldResetTimeout:s,onRetry:r}=t,a=i(t.retryCount,n);if(kL(e,o),!s&&o.timeout&&t.lastRequestTime){const l=Date.now()-t.lastRequestTime,c=o.timeout-l-a;if(c<=0)return Promise.reject(n);o.timeout=c;}return o.transformRequest=[l=>l],await r(t.retryCount,n,o),o.signal?.aborted?Promise.resolve(e(o)):new Promise(l=>{const c=()=>{clearTimeout(u),l(e(o));},u=setTimeout(()=>{l(e(o)),o.signal?.removeEventListener&&o.signal.removeEventListener("abort",c);},a);o.signal?.addEventListener&&o.signal.addEventListener("abort",c,{once:true});})}async function EL(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount);}const Go=(e,t)=>{const n=e.interceptors.request.use(i=>(Tp(i,t,true),i[_d]?.validateResponse&&(i.validateStatus=()=>false),i)),o=e.interceptors.response.use(null,async i=>{const{config:s}=i;if(!s)return Promise.reject(i);const r=Tp(s,t);return i.response&&r.validateResponse?.(i.response)?i.response:await SL(r,i)?$L(e,r,i,s):(await EL(r,i),Promise.reject(i))});return {requestInterceptorId:n,responseInterceptorId:o}};Go.isNetworkError=fy;Go.isSafeRequestError=yL;Go.isIdempotentRequestError=hy;Go.isNetworkOrIdempotentRequestError=my;Go.exponentialDelay=vL;Go.linearDelay=xL;Go.isRetryableError=Cd;const AL="pan115_api";var Ea=(e=>(e.evenly="evenly",e.asap="asap",e))(Ea||{});const gy={points:1,duration:1,execEvenly:true};function wy(e){return {clientId:AL,rateLimit:gy,msDelayAdjustment:30,...e}}function PL(e){const t=wy(e),n=vt.create({});Go(n,{retries:5,shouldResetTimeout:true,retryDelay:i=>(console.log(`[axios] Retry ${i}...`),i*1e3)});const o=new Bs.RateLimiterMemory(t.rateLimit);return n.interceptors.request.use(async i=>{try{const s=await o.consume(t.clientId);return i}catch(s){if(console.warn("[axios] RateLimiter:",s),s instanceof Bs.RateLimiterRes){const r=s.msBeforeNext+t.msDelayAdjustment;return console.log(`[axios] Delay ${r}ms for next request...`),await Mt(r),i}else throw new pL(s)}},i=>(console.warn("[axios] onRejected:",i),Promise.reject(i))),n}const yy=mt.basic;function IL(e){return {limiterDuration:1,limiterPoints:1,limitExecPolicy:Ea.evenly,showOfflineEntry:false,offlineEntryLabel:"云下载",offlineEntryIconCustomized:false,offlineEntryIcon:"",offlineDialogEntry:false,offlineDialogEntryLabel:"云下载窗口",offlineDialogEntryIconCustomized:false,offlineDialogEntryIcon:"",showAddOffline2:true,addOfflineLabel:"添加",addOfflineIconCustomized:false,addOfflineIcon:"",showFavEntry:false,favEntryLabel:"星标",hideMusicEntry:false,hideWatermark:true,fakeAccountEnabled:false,fakeAccountId:"",fakeAccountName:"",fakeAccountAvatar:"",fakeAccountVip:"",...e}}async function vl(){const e=IL(),t=await Xe.get(yy,e);return {...e,...t}}async function DL(e){await Xe.set(yy,e);}function Sd(e,t,n){return t?n?n.startsWith("<svg")?`<span class="ce-func-btn-icon-svg">${n}</span>`:`<img src="${n}" alt="自定义图标" class="ce-func-btn-icon" />`:"":e}async function LL(e){if(!e.offlineDialogEntry||!vn())return;console.log("[Cloud115 Enhancer] showOfflineDialogEntry");const t=await Kn("a#js_filter_btn"),n="background:#fffcea;",o="点击打开「云下载」页面",i=e.offlineDialogEntryLabel?`<span>${e.offlineDialogEntryLabel}</span>`:"",s=Sd('<i class="icon-operate ifo-linktask"></i>',e.offlineDialogEntryIconCustomized,e.offlineDialogEntryIcon),r=$(`<a href="javascript:;" class="button btn-line" title="${o}" style="${n}">
${s} ${i}
</a>`);t.after(r),r.on("click",()=>{try{kt().Core.FileDialogApi.OpenTransferTabDialog("offline_task");}catch(a){console.warn("[showOfflineDialogEntry]",a),Y({title:"打开云下载窗口失败",text:a.message,icon:"error"});}});}async function TL(e){if(!e.showOfflineEntry||!vn())return;console.log("[Cloud115 Enhancer] showOfflineEntry");const t=await Kn("a#js_filter_btn"),n="https://115.com/?ct=index&ac=offline_new_tpl&offline=1&tab=offline",o="background:#fffcea;",i="点击跳转到「云下载」页面",s=e.offlineEntryLabel?`<span>${e.offlineEntryLabel}</span>`:"",r=Sd('<i class="icon-operate ifo-linktask"></i>',e.offlineEntryIconCustomized,e.offlineEntryIcon),a=$(`<a href="javascript:;" class="button btn-line" title="${i}" tab_btn="wangpan" mode-tab="offline" style="${o}">
${r}
${s}
</a>`);t.after(a),a.on("click",()=>{try{kt().oofUtil.urlMaintain.changeMode("wangpan",{tab:"offline"});}catch(l){console.warn("[showOfflineEntry]",l),location.href=n;}});}async function ML(e){if(!vn())return;const{showAddOffline2:t,addOfflineLabel:n}=e,o=Ue('#js_top_panel_box .left-tvf > a[menu="offline_task"]');if(o){if(!t){o.style.display="none";return}const u=o.querySelector("span");u&&(u.textContent=n);return}if(!t)return;const i=await Kn("a#js_filter_btn"),s="background:#fffcea;",r="点击打开「添加云下载」对话框",a=e.addOfflineLabel?`<span>${e.addOfflineLabel}</span>`:"",l=Sd('<i class="icon-operate ifo-linktask"></i>',e.addOfflineIconCustomized,e.addOfflineIcon),c=$(`<a href="javascript:;" class="button btn-line" menu="offline_task" style="${s}" title="${r}">
${l}${a}
</a>`);i.after(c);}async function OL(e){if(!e.showFavEntry||!vn())return;console.log("[Cloud115 Enhancer] showFavEntry");const t=await Kn("a#js_filter_btn"),n="https://115.com/?tab=label&show_label=1&label_id=-1&mode=wangpan",o="background:#fffcea;",i="点击跳转到「星标」页面",s=e.favEntryLabel?`<span>${e.favEntryLabel}</span>`:"",r=$(`<a href="javascript:;" class="button btn-line" title="${i}" tab_btn="wangpan" mode-tab="{tab:'label',label_id:-1,show_label:1}" style="${o}">
<i class="icon-operate ifo-fav"></i>
${s}
</a>`);t.after(r),r.on("click",()=>{try{kt().oofUtil.urlMaintain.changeMode("wangpan",{tab:"label",label_id:-1,show_label:1});}catch(a){console.warn("[showFavEntry]",a),location.href=n;}});}async function BL(e){if(!e.hideMusicEntry||!vn())return;console.log("[Cloud115 Enhancer] hideMusicEntry"),await et("#js_top_panel_box");const t=Ue("a#top_btn_music_play");t&&(t.style.display="none");}async function RL(e){if(e.hideWatermark){console.log("[Cloud115 Enhancer] hideWatermark");try{const t=await et('div[class^="fp-"]');t.classList.add("hidden-watermark"),t.style.display="none";}catch(t){console.error("[Cloud115 Enhancer] hideWatermark",t.message);}}}async function FL(e){window.top===window.self&&(await Mt(1e3),Ju(e),window.addEventListener("message",async t=>{const n=t.data.event,o=t.data.body;n===ot.basicConfigChange&&(console.log("[Cloud115 Enhancer] basicConfigChange"),Ju(o));}));}let Ts=null;async function NL(){Ts&&clearTimeout(Ts),Ts=setTimeout(async()=>{const e=await vl();Ju(e);},5e3);}async function Ju(e){Ts&&clearTimeout(Ts);const t=async(n,o)=>{const i=await Kn('[rel="user_id"]',100);i.data("origin")||i.data("origin",i.text()),o?i.text(i.data("origin")):i.text(n.fakeAccountId);const s=await Kn('[rel="user_name"]',100);s.data("origin")||s.data("origin",$(s[0]).text()),o?s.text(s.data("origin")):s.text(n.fakeAccountName);const r=await Kn('img[rel="user_face"], .user-avatar img',100);r.data("origin")||r.data("origin",r.attr("src")),o?r.attr("src",r.data("origin")):(r.attr("rel","noreferrer"),r.attr("src",n.fakeAccountAvatar));const a=await Kn(".sign-vip-card",100);a.data("origin")||a.data("origin",$(a[0]).text()),o?a.text(a.data("origin")):a.text(n.fakeAccountVip);};try{e.fakeAccountEnabled?await t(e,!1):await t(e,!0);}catch(n){console.error(n);}finally{e.fakeAccountEnabled&&NL();}}const UL='@charset "UTF-8";.ce-func-btn-icon,.ce-func-btn-icon-svg svg{display:inline-block;width:20px;height:20px;vertical-align:middle;margin-right:4px}';Et(UL);async function jL(){const e=await vl(),{host:t}=location;/115\.com$/.test(t)&&(RL(e),TL(e),LL(e),ML(e),OL(e),BL(e),FL(e));}const by=Symbol("addTab"),vy=Symbol("updateTab"),xy=Symbol("deleteTab"),_y=Symbol("tabsProvider");function Rr(e,t){const n=$s(e,t);if(typeof n>"u")throw new Error(`Could not resolve ${e.description}`);return n}const zL=["data-tab-id","aria-hidden"],Cn=xe({__name:"Tab",props:{panelClass:{default:"tabs-component-panel"},id:{default:void 0},name:null,prefix:{default:""},suffix:{default:""},isDisabled:{type:Boolean,default:false},navItemClass:{default:void 0},navItemLinkClass:{default:void 0}},setup(e,{expose:t}){const n=e,o=V(false),i=Rr(_y),s=Rr(by),r=Rr(vy),a=Rr(xy),l=n.prefix+n.name+n.suffix,c=n.id?n.id:n.name.toLowerCase().replace(/ /g,"-"),u=c+"-pane",f=Ke(()=>"#"+(n.isDisabled?"":c));return He(()=>i.activeTabHash,()=>{o.value=f.value===i.activeTabHash;}),He(()=>Object.assign({},n),()=>{r(c,{name:n.name,header:n.prefix+n.name+n.suffix,isDisabled:n.isDisabled,hash:f.value,index:i.tabs.length,computedId:c,paneId:u,navItemClass:n.navItemClass,navItemLinkClass:n.navItemLinkClass});}),St(()=>{s({name:n.name,header:l,isDisabled:n.isDisabled,hash:f.value,index:i.tabs.length,computedId:c,paneId:u,navItemClass:n.navItemClass,navItemLinkClass:n.navItemLinkClass});}),Zm(()=>{a(c);}),t({header:l,computedId:c,paneId:u,hash:f,isActive:o}),(p,w)=>q((_(),S("section",{ref:"tab",id:u,"data-tab-id":ee(c),"aria-hidden":!o.value,class:Le(e.panelClass),role:"tabpanel",tabindex:"-1"},[Ge(p.$slots,"default")],10,zL)),[[Wt,o.value]])}});class HL{get(t){const n=localStorage.getItem(t);if(n===null)return null;const o=JSON.parse(n);return o?new Date(o.expires)<new Date?(localStorage.removeItem(t),null):o.value:null}set(t,n,o){const i=new Date().getTime(),s=new Date(i+o*6e4);localStorage.setItem(t,JSON.stringify({value:n,expires:s}));}}const Mp=new HL,VL=["id"],qL=["aria-controls","aria-selected","href","onClick","innerHTML"],WL=xe({__name:"Tabs",props:{id:{default:void 0},cacheLifetime:{default:5},options:{default:()=>({useUrlFragment:true,defaultTabHash:void 0,storageKey:void 0})},wrapperClass:{default:"tabs-component"},panelsWrapperClass:{default:"tabs-component-panels"},navClass:{default:"tabs-component-tabs"},navItemClass:{default:"tabs-component-tab"},navItemDisabledClass:{default:"is-disabled"},navItemActiveClass:{default:"is-active"},navItemInactiveClass:{default:"is-inactive"},navItemLinkClass:{default:"tabs-component-tab-a"},navItemLinkActiveClass:{default:"is-active"},navItemLinkInactiveClass:{default:"is-inactive"},navItemLinkDisabledClass:{default:"is-disabled"}},emits:["changed","clicked"],setup(e,{expose:t,emit:n}){const o=e,i=Ya({activeTabHash:"",lastActiveTabHash:"",tabs:[]});bs(_y,i),bs(by,l=>{i.tabs.push(l);}),bs(vy,(l,c)=>{const u=i.tabs.findIndex(f=>f.computedId===l);c.isActive=i.tabs[u].isActive,i.tabs[u]=c;}),bs(xy,l=>{const c=i.tabs.findIndex(u=>u.computedId===l);i.tabs.splice(c,1);});const s=Ke(()=>{let l;return o.options.storageKey&&(l=o.options.storageKey),!l&&o.id&&(l=`vue-tabs-component.${o.id}.cache.${window.location.host}${window.location.pathname}`),l||(l=`vue-tabs-component.cache.${window.location.host}${window.location.pathname}`),l}),r=(l,c)=>{c&&!o.options.useUrlFragment&&c.preventDefault();const u=a(l);if(u){if(c&&u.isDisabled){c.preventDefault();return}if(i.lastActiveTabHash===u.hash){n("clicked",{tab:u});return}i.tabs.forEach(f=>{f.isActive=f.hash===u.hash;}),n("changed",{tab:u}),i.lastActiveTabHash=i.activeTabHash=u.hash,!(o.cacheLifetime<=0)&&Mp.set(s.value,u.hash,o.cacheLifetime);}},a=l=>i.tabs.find(c=>c.hash===l);return Ht(()=>{if(i.tabs.length){if(window.addEventListener("hashchange",()=>r(window.location.hash)),a(window.location.hash)){r(window.location.hash);return}if(o.cacheLifetime>0){const l=Mp.get(s.value);if(l!==null&&a(l)){r(l);return}}if(o.options.defaultTabHash&&a("#"+o.options.defaultTabHash)){r("#"+o.options.defaultTabHash);return}r(i.tabs[0].hash);}}),t({...a_(i),selectTab:r,findTab:a}),(l,c)=>(_(),S("div",{class:Le(e.wrapperClass),id:e.id},[d("ul",{role:"tablist",class:Le(e.navClass)},[(_(true),S($e,null,je(i.tabs,(u,f)=>{var p,w;return _(),S("li",{key:f,class:Le([(p=u.navItemClass)!=null?p:e.navItemClass,u.isDisabled?e.navItemDisabledClass:"",u.isActive?e.navItemActiveClass:u.isDisabled?"":e.navItemInactiveClass]),role:"presentation"},[d("a",{role:"tab",class:Le([(w=u.navItemLinkClass)!=null?w:e.navItemLinkClass,u.isDisabled?e.navItemLinkDisabledClass:"",u.isActive?e.navItemLinkActiveClass:u.isDisabled?"":e.navItemLinkInactiveClass]),"aria-controls":u.paneId,"aria-selected":u.isActive,href:u.hash,onClick:m=>r(u.hash,m),innerHTML:u.header,tabindex:"0"},null,10,qL)],2)}),128))],2),d("div",{class:Le(e.panelsWrapperClass)},[Ge(l.$slots,"default")],2)],10,VL))}});function Yu(e,t,n,o){return e<t||e>n?o:e}const KL={class:"pure-control-group"},GL=["for"],JL=["id","checked"],YL={class:"pure-form-message text-success"},QL=["value"],XL=["for"],ZL=["id","checked"],eT=["value"],tT=["innerHTML"],nT="支持HTTP链接、base64数据或SVG XML",oT=xe({__name:"ButtonConfigGroup",props:{id:{},label:{},description:{},enabled:{type:Boolean},buttonLabel:{default:""},iconCustomized:{type:Boolean},icon:{default:""}},emits:["update:enabled","update:buttonLabel","update:iconCustomized","update:icon"],setup(e){const t=e;function n(i,s){return !i||!s?"":s.startsWith("<svg")?`<span class="ce-func-btn-icon-svg">${s}</span>`:`<img src="${s}" class="ce-func-btn-icon" alt="自定义图标" />`}const o=Ke(()=>n(t.iconCustomized,t.icon));return console.log("ButtonConfigGroup props:",t),(i,s)=>(_(),S("div",KL,[d("label",{for:i.id},B(i.label),9,GL),d("input",{id:i.id,type:"checkbox",checked:t.enabled,onChange:s[0]||(s[0]=r=>i.$emit("update:enabled",r.target.checked))},null,40,JL),d("div",YL,[I(B(i.description)+" 按钮文本为 ",1),d("input",{value:t.buttonLabel||"",onInput:s[1]||(s[1]=r=>i.$emit("update:buttonLabel",r.target.value)),class:"input-small",placeholder:"可以为空"},null,40,QL),s[4]||(s[4]=I(" , ",-1)),d("label",{for:`${i.id}_iconCustomized`,style:{width:"auto"}},"自定义图标",8,XL),d("input",{id:`${i.id}_iconCustomized`,type:"checkbox",checked:t.iconCustomized,onChange:s[2]||(s[2]=r=>i.$emit("update:iconCustomized",r.target.checked))},null,40,ZL),s[5]||(s[5]=I(" ",-1)),t.iconCustomized?(_(),S("input",{key:0,value:t.icon||"",onInput:s[3]||(s[3]=r=>i.$emit("update:icon",r.target.value)),class:"pure-input",placeholder:"支持HTTP链接、base64数据或SVG XML",title:nT},null,40,eT)):fe("",true),s[6]||(s[6]=I(" ",-1)),t.iconCustomized&&t.icon?(_(),S("span",{key:1,innerHTML:o.value},null,8,tT)):fe("",true)])]))}}),iu=Pe(oT,[["__scopeId","data-v-f3bc02fe"],["__file","ButtonConfigGroup.vue"]]),iT={class:"ce-config ce-basic-config"},sT={class:"pure-form pure-form-aligned"},rT={class:"pure-control-group"},aT=["value"],lT=["value"],uT={class:"pure-control-group"},cT={class:"pure-form-message text-success"},dT={class:"pure-control-group"},fT={class:"pure-control-group"},pT={class:"pure-control-group"},hT={class:"pure-control-group"},mT={class:"pure-control-group"},gT={class:"pure-control-group"},wT={class:"avatar-preview"},yT=["src"],bT={class:"pure-control-group"},vT=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>vl()),t=await t,n(),t)),i=true;St(async()=>{});function s(c){const u=(f,p)=>Math.floor(Yu(f,1,p,1));return c.limiterDuration=u(c.limiterDuration,300),c.limiterPoints=u(c.limiterPoints,3e3),c}He(o,lt(async c=>{s(c),await DL(c),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.basicConfigChange,body:Sc(c)});},500),{deep:true});async function r(c,u,f="warning"){const{isConfirmed:p}=await te.fire({title:c,text:u,icon:f,showCancelButton:true,confirmButtonText:"确认"});return p}async function a(){if(await r("导出配置","是否确认导出当前配置?"))try{await Zy(),Y({icon:"success",title:"导出成功"});}catch(c){te.fire(c.toString());}}async function l(){if(await r("导入配置","导入后将覆盖当前配置,是否继续?"))try{const c=await eb();console.log(c),Oi.fire({icon:"success",title:"导入成功,刷新页面后生效。将在5秒后自动刷新页面...",timer:5e3}),setTimeout(()=>{window.location.reload();},5e3);}catch(c){te.fire({title:"导入失败",html:c.toString()+'<br/><p class="text-danger">必须有字段 "_schema": "pan115_enhancer_configs" 。</p>'});}}return (c,u)=>(_(),S("div",iT,[d("form",sT,[d("fieldset",null,[u[47]||(u[47]=d("legend",null,"API",-1)),d("div",rT,[u[25]||(u[25]=d("label",null,"全局请求频率控制",-1)),ee(i)?fe("",true):(_(),S($e,{key:0},[q(d("select",{"onUpdate:modelValue":u[0]||(u[0]=f=>o.value.limitExecPolicy=f)},[d("option",{value:ee(Ea).asap},"尽快消耗",8,aT),d("option",{value:ee(Ea).evenly},"尽量均匀",8,lT)],512),[[gn,o.value.limitExecPolicy]]),u[24]||(u[24]=I(" 地 ",-1))],64)),u[26]||(u[26]=I(" 在 ",-1)),q(d("input",{id:"basic_limiterDuration",type:"number",min:"1",max:"300",step:"1","onUpdate:modelValue":u[1]||(u[1]=f=>o.value.limiterDuration=f)},null,512),[[Ve,o.value.limiterDuration]]),u[27]||(u[27]=I(" 秒内最多请求 ",-1)),q(d("input",{id:"basic_limiterQps",type:"number",min:"1",max:"3000",step:"1","onUpdate:modelValue":u[2]||(u[2]=f=>o.value.limiterPoints=f)},null,512),[[Ve,o.value.limiterPoints]]),u[28]||(u[28]=I(" 次 ",-1)),u[29]||(u[29]=d("div",{class:"pure-form-message text-success"},[I(" 默认 1 秒内最多 1 次。"),d("span",{class:"text-warning"},"请填写整数数值。")],-1))]),u[48]||(u[48]=d("legend",null,"UI优化",-1)),oe(iu,{id:"basic_showOfflineEntry",label:"显示云下载入口按钮",description:"在「网盘」页面顶部工具栏显示「云下载」入口按钮。",enabled:o.value.showOfflineEntry,"onUpdate:enabled":u[3]||(u[3]=f=>o.value.showOfflineEntry=f),buttonLabel:o.value.offlineEntryLabel,"onUpdate:buttonLabel":u[4]||(u[4]=f=>o.value.offlineEntryLabel=f),iconCustomized:o.value.offlineEntryIconCustomized,"onUpdate:iconCustomized":u[5]||(u[5]=f=>o.value.offlineEntryIconCustomized=f),icon:o.value.offlineEntryIcon,"onUpdate:icon":u[6]||(u[6]=f=>o.value.offlineEntryIcon=f)},null,8,["enabled","buttonLabel","iconCustomized","icon"]),oe(iu,{id:"basic_offlineDialogEntry",label:"云下载列表窗口按钮",description:"在「网盘」页面顶部工具栏显示打开云下载列表窗口的按钮。",enabled:o.value.offlineDialogEntry,"onUpdate:enabled":u[7]||(u[7]=f=>o.value.offlineDialogEntry=f),buttonLabel:o.value.offlineDialogEntryLabel,"onUpdate:buttonLabel":u[8]||(u[8]=f=>o.value.offlineDialogEntryLabel=f),iconCustomized:o.value.offlineDialogEntryIconCustomized,"onUpdate:iconCustomized":u[9]||(u[9]=f=>o.value.offlineDialogEntryIconCustomized=f),icon:o.value.offlineDialogEntryIcon,"onUpdate:icon":u[10]||(u[10]=f=>o.value.offlineDialogEntryIcon=f)},null,8,["enabled","buttonLabel","iconCustomized","icon"]),oe(iu,{id:"basic_showAddOffline",label:"显示添加云下载按钮",description:"在「网盘」页面顶部工具栏显示添加云下载按钮。",enabled:o.value.showAddOffline2,"onUpdate:enabled":u[11]||(u[11]=f=>o.value.showAddOffline2=f),buttonLabel:o.value.addOfflineLabel,"onUpdate:buttonLabel":u[12]||(u[12]=f=>o.value.addOfflineLabel=f),iconCustomized:o.value.addOfflineIconCustomized,"onUpdate:iconCustomized":u[13]||(u[13]=f=>o.value.addOfflineIconCustomized=f),icon:o.value.addOfflineIcon,"onUpdate:icon":u[14]||(u[14]=f=>o.value.addOfflineIcon=f)},null,8,["enabled","buttonLabel","iconCustomized","icon"]),d("div",uT,[u[31]||(u[31]=d("label",{for:"basic_showFavEntry"},"显示星标入口按钮",-1)),q(d("input",{id:"basic_showFavEntry",type:"checkbox","onUpdate:modelValue":u[15]||(u[15]=f=>o.value.showFavEntry=f)},null,512),[[ye,o.value.showFavEntry]]),d("div",cT,[u[30]||(u[30]=I(" 在「网盘」页面顶部工具栏显示「星标」入口按钮。 按钮文本为 ",-1)),q(d("input",{"onUpdate:modelValue":u[16]||(u[16]=f=>o.value.favEntryLabel=f),class:"input-small",placeholder:"可以为空"},null,512),[[Ve,o.value.favEntryLabel]])])]),d("div",dT,[u[32]||(u[32]=d("label",{for:"basic_hideMusicEntry"},'隐藏"我听"入口按钮',-1)),q(d("input",{id:"basic_hideMusicEntry",type:"checkbox","onUpdate:modelValue":u[17]||(u[17]=f=>o.value.hideMusicEntry=f)},null,512),[[ye,o.value.hideMusicEntry]]),u[33]||(u[33]=d("div",{class:"pure-form-message text-success"}," 在「网盘」页面顶部工具栏隐藏「我听」入口按钮。 ",-1))]),u[49]||(u[49]=d("legend",null,"配置管理",-1)),d("div",{class:"pure-control-group"},[d("button",{type:"button",class:"pure-button pure-button-primary",onClick:a},"导出配置"),u[34]||(u[34]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:l},"导入配置"),u[35]||(u[35]=d("br",null,null,-1)),u[36]||(u[36]=d("br",null,null,-1)),u[37]||(u[37]=d("div",{class:"text-success"},[d("b",null,"导入说明:"),I(" 如有导入部分配置的需求,可以自行编辑json配置文件,只保留需要的配置key(仅限第一级),但必须保留`_`开头的key。 ")],-1)),u[38]||(u[38]=d("br",null,null,-1))]),u[50]||(u[50]=d("legend",null,"隐私保护",-1)),d("div",fT,[u[39]||(u[39]=d("label",{for:"basic_hideWatermark"},"隐藏水印",-1)),q(d("input",{id:"basic_hideWatermark",type:"checkbox","onUpdate:modelValue":u[18]||(u[18]=f=>o.value.hideWatermark=f)},null,512),[[ye,o.value.hideWatermark]]),u[40]||(u[40]=d("div",{class:"pure-form-message text-success"}," 网页水印是肉眼看不到的,但通过一些处理可以看到,水印内容是你的账号标识。 如果你需要截图并发给别人,可以考虑开启隐藏。 ",-1))]),d("div",pT,[u[41]||(u[41]=d("label",{for:"basic_fakeAccountEnabled"},"隐藏身份",-1)),q(d("input",{id:"basic_fakeAccountEnabled",type:"checkbox","onUpdate:modelValue":u[19]||(u[19]=f=>o.value.fakeAccountEnabled=f)},null,512),[[ye,o.value.fakeAccountEnabled]]),u[42]||(u[42]=d("div",{class:"pure-form-message text-success"}," 修改左下角显示的账号信息,不会真的修改。编辑后即可生效,无需刷新页面。 ",-1))]),d("div",hT,[u[43]||(u[43]=d("label",null,"账号ID",-1)),q(d("input",{"onUpdate:modelValue":u[20]||(u[20]=f=>o.value.fakeAccountId=f),placeholder:"自定义账号ID",class:"pure-input-2-3"},null,512),[[Ve,o.value.fakeAccountId]])]),d("div",mT,[u[44]||(u[44]=d("label",null,"用户名",-1)),q(d("input",{"onUpdate:modelValue":u[21]||(u[21]=f=>o.value.fakeAccountName=f),placeholder:"自定义用户名",class:"pure-input-2-3"},null,512),[[Ve,o.value.fakeAccountName]])]),d("div",gT,[u[45]||(u[45]=d("label",null,"头像",-1)),q(d("input",{"onUpdate:modelValue":u[22]||(u[22]=f=>o.value.fakeAccountAvatar=f),placeholder:"支持网络图片地址或base64编码",class:"pure-input-2-3"},null,512),[[Ve,o.value.fakeAccountAvatar]]),d("span",wT,[o.value.fakeAccountAvatar?(_(),S("img",{key:0,src:o.value.fakeAccountAvatar,alt:"头像预览",width:"20",height:"20"},null,8,yT)):fe("",true)])]),d("div",bT,[u[46]||(u[46]=d("label",null,"VIP等级",-1)),q(d("input",{"onUpdate:modelValue":u[23]||(u[23]=f=>o.value.fakeAccountVip=f),placeholder:"自定义VIP等级",class:"pure-input-2-3"},null,512),[[Ve,o.value.fakeAccountVip]])])])])]))}}),xT=Pe(vT,[["__file","Config.vue"]]),_T={class:"pure-form pure-form-aligned"},CT=["disabled"],kT={class:"pure-control-group"},ST={class:"pure-control-group"},$T={class:"pure-control-group"},ET=["value"],AT={style:{width:"auto"}},PT={class:"text-success text-ul"},IT={class:"pure-control-group"},DT=xe({__name:"ConfigItem",props:{config:{},deletable:{type:Boolean}},emits:["change","delete","activate"],setup(e,{emit:t}){const n=e,o=t,i={content:"如果是macOS版,建议平台选「macos」,可以避免播放链接可能无效的问题,「版本小于 0.8.16」选项同理。"};St(async()=>{});async function s(){n.config.active=true,o("activate",n.config);}async function r(){o("delete");}return He(n.config,lt(async a=>{o("change",a);},500),{deep:true}),(a,l)=>{const c=L_("tooltip");return _(),S("div",{class:Le(["ce-clouddrive-config-item",{active:a.config.active}])},[d("form",_T,[d("fieldset",null,[d("legend",null,[d("button",{type:"button",class:Le(["pure-button button-small",[a.config.active?"button-success":"pure-button-primary"]]),onClick:s,disabled:a.config.active},B(a.config.active?"当前使用该配置":"使用该配置"),11,CT),a.deletable?(_(),S("button",{key:0,type:"button",class:"pure-button button-error button-small",onClick:r}," 删除 ")):fe("",true)]),d("div",kT,[l[5]||(l[5]=d("label",null,[d("span",{class:"text-danger"},"*"),I(" 地址")],-1)),q(d("input",{"onUpdate:modelValue":l[0]||(l[0]=u=>a.config.url=u),placeholder:"CloudDrive服务地址,如「http://localhost:19798」",class:"pure-input-2-3"},null,512),[[Ve,a.config.url]])]),d("div",ST,[l[6]||(l[6]=d("label",null,[d("span",{class:"text-danger"},"*"),I(" 资源根路径")],-1)),q(d("input",{"onUpdate:modelValue":l[1]||(l[1]=u=>a.config.root=u),placeholder:"即当前115账号在CloudDrive中的资源名称,如「115」",class:"pure-input-2-3"},null,512),[[Ve,a.config.root]])]),d("div",$T,[l[9]||(l[9]=d("label",null,[d("span",{class:"text-danger"},"*"),I(" 平台")],-1)),q(d("select",{"onUpdate:modelValue":l[2]||(l[2]=u=>a.config.platform=u)},[(_(true),S($e,null,je(ee(To),u=>(_(),S("option",{key:u,value:u},B(u),9,ET))),128))],512),[[gn,a.config.platform]]),l[10]||(l[10]=I(" ",-1)),d("label",AT,[q(d("input",{type:"checkbox","onUpdate:modelValue":l[3]||(l[3]=u=>a.config.ver_lt_0816=u)},null,512),[[ye,a.config.ver_lt_0816]]),l[7]||(l[7]=I(" 版本小于 0.8.16 ",-1))]),l[11]||(l[11]=I(" ",-1)),q((_(),S("span",PT,l[8]||(l[8]=[I("说明",-1)]))),[[c,i]])]),d("div",IT,[l[12]||(l[12]=d("label",null,"备注",-1)),q(d("input",{"onUpdate:modelValue":l[4]||(l[4]=u=>a.config.memo=u),placeholder:"备注信息",class:"pure-input-2-3"},null,512),[[Ve,a.config.memo]])])])])],2)}}}),LT=Pe(DT,[["__file","ConfigItem.vue"]]),TT={class:"ce-config ce-clouddrive-config"},MT={class:"ce-list"},OT={class:"ce-actions"},BT=["disabled"],RT=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>Jh()),t=await t,n(),t));St(async()=>{});async function i(){await Ud(o.value),Y({icon:"success",title:"设置已保存。",timer:800,position:"top-end"});}async function s(){o.value.push(Cc());}async function r(l,c){const{isConfirmed:u}=await te.fire({icon:"warning",html:`确定要删除第 ${c+1} 个配置「${l.url}」吗?`});u&&(o.value.splice(c,1),await i(),Y({icon:"success",title:`「${l.url}」已删除!`}));}async function a(l,c){l.forEach((u,f)=>{u.active=f===c;}),await Ud(l),Y({icon:"success",title:"设置已保存。",timer:800,position:"top-end"});}return (l,c)=>(_(),S("div",TT,[c[1]||(c[1]=d("div",{class:"ce-tips cd-tips"},[d("p",null,[d("a",{href:"https://www.clouddrive2.com/?ref=cloud115-enhancer",rel:"noreferer",target:"_blank",class:"text-bold text-primary"},"CloudDrive"),I(" 是一个强大的多云盘管理工具,为用户提供包含云盘本地挂载的一站式的多云盘解决方案。 ")]),d("p",null,"本脚本主要是借助CloudDrive实现原码视频播放的功能(具体可以在「播放菜单」面板中查看)。")],-1)),d("div",MT,[(_(true),S($e,null,je(o.value,(u,f)=>(_(),tt(LT,{key:f,config:u,index:f,deletable:o.value.length>1,onDelete:p=>r(u,f),onActivate:p=>a(o.value,f)},null,8,["config","index","deletable","onDelete","onActivate"]))),128))]),c[2]||(c[2]=d("div",{class:"ce-tips"},[d("p",{class:"text-primary"}," 暂时发现IINA是支持`file://`协议的,这时候播放器可以读取到同目录的字幕文件。 配置示例: 地址`file:///Users/you/,资源根路径`115`。 ")],-1)),c[3]||(c[3]=d("div",{class:"ce-tips"}," 编辑配置后,请记得点击「保存全部配置」。 ",-1)),d("div",OT,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:i,disabled:!o.value.length}," 保存全部配置 ",8,BT),c[0]||(c[0]=I(" ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:s}," + 添加配置 ")])]))}}),FT=Pe(RT,[["__file","Config.vue"]]),NT={class:"ce-config ce-list-config"},UT={class:"pure-form pure-form-aligned"},jT={class:"pure-control-group"},zT={class:"pure-control-group"},HT={class:"pure-control-group"},VT={class:"pure-control-group"},qT={class:"pure-control-group"},WT={class:"pure-control-group"},KT={class:"pure-control-group"},GT={class:"pure-control-group"},JT={class:"pure-control-group"},YT={class:"pure-control-group"},QT={class:"pure-control-group"},XT={class:"pure-control-group"},ZT={class:"pure-control-group"},eM={class:"pure-control-group"},tM={class:"pure-control-group"},nM={class:"pure-control-group"},oM={class:"pure-control-group"},iM={class:"pure-control-group"},sM={class:"pure-control-group"},rM={class:"pure-control-group"},aM={class:"pure-control-group"},lM={class:"pure-control-group"},uM={class:"pure-control-group"},Op="按下 Command/Ctrl 键点击文件sha1时触发查找重复文件",Bp="鼠标悬浮触发",Rp="鼠标悬浮触发",cM=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>ls()),t=await t,n(),t));St(async()=>{}),He(o,lt(async s=>{await Z2(s),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.listConfigChange,body:JSON.parse(JSON.stringify(s))});},500),{deep:true});async function i(){te.fire({title:"快捷键说明",html:`<pre style="font-size:12px;">${mw.replace(/==/g,"=".repeat(32))}</pre>`,showCloseButton:true,showConfirmButton:false,width:720,customClass:{popup:"ce-swal-text-left"}});}return (s,r)=>(_(),S("div",NT,[d("form",UT,[d("fieldset",null,[r[39]||(r[39]=d("legend",null,"文件大小相关",-1)),d("div",jT,[r[28]||(r[28]=d("label",{for:"sizeSorter"},"大小排序",-1)),q(d("input",{id:"sizeSorter",type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=a=>o.value.sizeSorter=a)},null,512),[[ye,o.value.sizeSorter]]),r[29]||(r[29]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「大小」列头部增加「排序」按钮,可以获取文件夹的大小,然后进行排序。"),d("div",null,"请注意该功能只会对当前加载的文件进行排序,如果有多页文件并需要对全部文件进行排序,请先点击「加载全部」后再使用该排序功能。")],-1))]),d("div",zT,[r[30]||(r[30]=d("label",{for:"showBatchFolderSizeButton"},"批量获取文件夹大小",-1)),q(d("input",{id:"showBatchFolderSizeButton",type:"checkbox","onUpdate:modelValue":r[1]||(r[1]=a=>o.value.showBatchFolderSizeButton=a)},null,512),[[ye,o.value.showBatchFolderSizeButton]]),r[31]||(r[31]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「大小」列头部增加「大小」按钮,可以获取文件夹的大小。"),d("div",null,"请注意该功能只会对当前加载的文件夹进行获取,如果有多页,请先点击「加载全部」后再使用该功能。")],-1))]),d("div",HT,[r[32]||(r[32]=d("label",{for:"showFolderSizeButton"},"显示文件夹获取大小按钮",-1)),q(d("input",{id:"showFolderSizeButton",type:"checkbox","onUpdate:modelValue":r[2]||(r[2]=a=>o.value.showFolderSizeButton=a)},null,512),[[ye,o.value.showFolderSizeButton]]),r[33]||(r[33]=I(" ",-1)),d("small",{onClick:r[3]||(r[3]=a=>o.value.hoverShowFolderSize=!o.value.hoverShowFolderSize),class:Le(["ce-label",{"ce-label-success":o.value.hoverShowFolderSize}])},B(o.value.hoverShowFolderSize?`✓ ${Bp}(已启用)`:`× ${Bp}(未启用)`),3),r[34]||(r[34]=d("div",{class:"pure-form-message text-success"}," 在官方的「大小」列增加「大小」按钮,点击按钮可以获取单个文件夹的大小。 ",-1))]),d("div",VT,[r[35]||(r[35]=d("label",{for:"showQuickViewButton"},[I(" 显示快速查看按钮 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),q(d("input",{id:"showQuickViewButton",type:"checkbox","onUpdate:modelValue":r[4]||(r[4]=a=>o.value.showQuickViewButton=a)},null,512),[[ye,o.value.showQuickViewButton]]),r[36]||(r[36]=I(" ",-1)),d("small",{onClick:r[5]||(r[5]=a=>o.value.hoverShowQuickView=!o.value.hoverShowQuickView),class:Le(["ce-label",{"ce-label-success":o.value.hoverShowQuickView}])},B(o.value.hoverShowQuickView?`✓ ${Rp}(已启用)`:`× ${Rp}(未启用)`),3),r[37]||(r[37]=d("div",{class:"pure-form-message text-success"}," 在官方的「大小」列增加「查看」按钮,点击按钮可以在当前页面小窗口快速查看目录文件列表。 ",-1))]),d("div",qT,[r[38]||(r[38]=d("label",{for:"showInfoOnQuickView"}," 快速查看里显示文件信息 ",-1)),q(d("input",{id:"showInfoOnQuickView",type:"checkbox","onUpdate:modelValue":r[6]||(r[6]=a=>o.value.showInfoOnQuickView=a)},null,512),[[ye,o.value.showInfoOnQuickView]])])]),d("fieldset",null,[r[54]||(r[54]=d("legend",null,"列表显示与操作",-1)),d("div",WT,[r[40]||(r[40]=d("label",{for:"showSha1"},"显示文件SHA1",-1)),q(d("input",{id:"showSha1",type:"checkbox","onUpdate:modelValue":r[7]||(r[7]=a=>o.value.showSha1=a)},null,512),[[ye,o.value.showSha1]]),r[41]||(r[41]=I(" ",-1)),d("small",{onClick:r[8]||(r[8]=a=>o.value.clickSha1WithCtrlToFindRepeat=!o.value.clickSha1WithCtrlToFindRepeat),class:Le(["ce-label",{"ce-label-success":o.value.clickSha1WithCtrlToFindRepeat}])},B(o.value.clickSha1WithCtrlToFindRepeat?`✓ ${Op}(已启用)`:`× ${Op}(未启用)`),3),r[42]||(r[42]=d("div",{class:"pure-form-message text-success"}," 在文件名下方显示文件SHA1,点击可以复制。 ",-1))]),d("div",KT,[r[43]||(r[43]=d("label",{for:"followHistoryState"}," 文件列表跟随页面前进后退 ",-1)),q(d("input",{id:"followHistoryState",type:"checkbox","onUpdate:modelValue":r[9]||(r[9]=a=>o.value.followHistoryState=a)},null,512),[[ye,o.value.followHistoryState]]),r[44]||(r[44]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-success"}," 默认情况下,点击浏览器的前进或后退,页面链接中的目录ID虽然会发生变化,但文件列表并没有随之更新。 这个功能尝试解决这个问题。 ")],-1))]),d("div",GT,[r[45]||(r[45]=d("label",{for:"showOnlyFileFilter"}," 显示「仅文件」筛选 ",-1)),q(d("input",{id:"showOnlyFileFilter",type:"checkbox","onUpdate:modelValue":r[10]||(r[10]=a=>o.value.showOnlyFileFilter=a)},null,512),[[ye,o.value.showOnlyFileFilter]]),r[46]||(r[46]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-success"}," 筛选当前目录下全部文件。 ")],-1))]),d("div",JT,[r[47]||(r[47]=d("label",{for:"fileFilterExtensions"}," 自定义筛选扩展名 ",-1)),q(d("input",{id:"fileFilterExtensions",type:"text","onUpdate:modelValue":r[11]||(r[11]=a=>o.value.fileFilterExtensions=a),placeholder:"例如: zip,rar,7z",style:{width:"60%"}},null,512),[[Ve,o.value.fileFilterExtensions]]),r[48]||(r[48]=d("div",{class:"pure-form-message text-success"}," 多个扩展名用英文逗号分隔,设置后在文件列表顶部筛选栏会显示对应的扩展名筛选按钮。 点击按钮可以筛选出当前目录下对应扩展名的文件。 ",-1))]),d("div",YT,[r[51]||(r[51]=d("label",{for:"fixShortcut"},[I(" 修复文件列表快捷键 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),q(d("input",{id:"fixShortcut",type:"checkbox","onUpdate:modelValue":r[12]||(r[12]=a=>o.value.fixShortcut=a)},null,512),[[ye,o.value.fixShortcut]]),d("div",{class:"pure-form-message text-success"},[r[49]||(r[49]=I(" 文件列表按下Ctrl+/显示了一些快捷键,但大部分并未生效,该功能尝试修复这些快捷键。 ",-1)),d("a",{href:"javascript:void(0)",onClick:i,class:"pure-button button-small"},"💡 更完整的快捷键说明"),r[50]||(r[50]=d("h3",{class:"text-danger"},"⚠️ 副作用: 不能使用Ctrl+C复制页面上的文本(不影响输入框里复制),如有此需求,请使用鼠标右键进行复制。",-1))])]),d("div",QT,[r[52]||(r[52]=d("label",{for:"enhanceLocationLinks"},' 优化"所在位置"链接 ',-1)),q(d("input",{id:"enhanceLocationLinks",type:"checkbox","onUpdate:modelValue":r[13]||(r[13]=a=>o.value.enhanceLocationLinks=a)},null,512),[[ye,o.value.enhanceLocationLinks]]),r[53]||(r[53]=d("div",{class:"pure-form-message text-success"},' 启用该选项后,可以复制链接,或通过"鼠标中键"或"Ctrl+单击"在新标签页中打开。 相关页面: 一键排重详情、SHA1查重结果页、搜索结果页、最近上传、最近接收和最近操作。 ',-1))])]),d("fieldset",null,[r[63]||(r[63]=d("legend",null,"目录操作增强",-1)),d("div",XT,[r[55]||(r[55]=d("label",{for:"showOpenDirContextMenu"},'显示"目录功能菜单"按钮',-1)),q(d("input",{id:"showOpenDirContextMenu",type:"checkbox","onUpdate:modelValue":r[14]||(r[14]=a=>o.value.showOpenDirContextMenu=a)},null,512),[[ye,o.value.showOpenDirContextMenu]]),r[56]||(r[56]=I(" ",-1)),d("small",{onClick:r[15]||(r[15]=a=>o.value.hoverShowDirContextMenu=!o.value.hoverShowDirContextMenu),class:Le(["ce-label",{"ce-label-success":o.value.hoverShowDirContextMenu}]),title:"鼠标悬浮在按钮代替点击操作"},B(o.value.hoverShowDirContextMenu?"✓ 鼠标悬浮触发(已启用)":"× 鼠标悬浮触发(未启用)"),3),r[57]||(r[57]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「文件名」列头部增加「目录功能菜单」按钮,点击即可打开当前目录的右键菜单。")],-1))]),d("div",ZT,[r[58]||(r[58]=d("label",{for:"showCreateDirButton"},'显示"新建文件夹"按钮',-1)),q(d("input",{id:"showCreateDirButton",type:"checkbox","onUpdate:modelValue":r[16]||(r[16]=a=>o.value.showCreateDirButton=a)},null,512),[[ye,o.value.showCreateDirButton]]),r[59]||(r[59]=I(" ",-1)),d("small",{onClick:r[17]||(r[17]=a=>o.value.hideTopCreateButton=!o.value.hideTopCreateButton),class:Le(["ce-label",{"ce-label-success":o.value.hideTopCreateButton}]),title:"隐藏顶部「新建」按钮"},B(o.value.hideTopCreateButton?"✓ 隐藏顶部「新建」按钮(已启用)":"× 隐藏顶部「新建」按钮(未启用)"),3),r[60]||(r[60]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「文件名」列头部增加「新建文件夹」按钮。可以隐藏顶部「新建」按钮,页面左侧的「新建」中也有新建文档按钮。")],-1))]),d("div",eM,[r[61]||(r[61]=d("label",{for:"claimSelectedAfterCreateDir"}," 移动选中文件到新文件夹 ",-1)),q(d("input",{id:"claimSelectedAfterCreateDir",type:"checkbox","onUpdate:modelValue":r[18]||(r[18]=a=>o.value.claimSelectedAfterCreateDir=a)},null,512),[[ye,o.value.claimSelectedAfterCreateDir]]),r[62]||(r[62]=d("div",{class:"pure-form-message text-success text-linethrough"},[d("b",null,"启用后如果先选中文件,然后创建新文件夹,将会自动把选中文件移动到新文件夹。"),I(" 该选项可以在创建文件夹对话框里临时修改。 ")],-1))])]),d("fieldset",null,[r[68]||(r[68]=d("legend",null,"路径栏增强",-1)),d("div",tM,[r[64]||(r[64]=d("label",{for:"showCopyButtonOnPathBar"},"在路径栏显示复制按钮",-1)),q(d("input",{id:"showCopyButtonOnPathBar",type:"checkbox","onUpdate:modelValue":r[19]||(r[19]=a=>o.value.showCopyButtonOnPathBar=a)},null,512),[[ye,o.value.showCopyButtonOnPathBar]]),r[65]||(r[65]=d("div",{class:"pure-form-message text-success"}," 点击后,复制当前路径到剪贴板。 ",-1))]),d("div",nM,[r[66]||(r[66]=d("label",{for:"showGotoButtonOnPathBar"},[I(" 在路径栏显示前往按钮 "),d("small",{class:"ce-label"},"DEV")],-1)),q(d("input",{id:"showGotoButtonOnPathBar",type:"checkbox","onUpdate:modelValue":r[20]||(r[20]=a=>o.value.showGotoButtonOnPathBar=a)},null,512),[[ye,o.value.showGotoButtonOnPathBar]]),r[67]||(r[67]=d("div",{class:"pure-form-message text-success"}," 点击后,路径栏下方会显示路径输入框,输入路径后按回车即可前往该路径。 ",-1))])]),d("fieldset",null,[r[75]||(r[75]=d("legend",null,"刷新行为",-1)),d("div",oM,[r[69]||(r[69]=d("label",{for:"noUpdateDirAfterRename"}," 重命名后不刷新文件列表 ",-1)),q(d("input",{id:"noUpdateDirAfterRename",type:"checkbox","onUpdate:modelValue":r[21]||(r[21]=a=>o.value.noUpdateDirAfterRename=a)},null,512),[[ye,o.value.noUpdateDirAfterRename]]),r[70]||(r[70]=d("div",{class:"pure-form-message text-success"}," 仅支持单个文件或目录的重命名。在使用当前目录增强菜单项「重命名文件夹」时会忽略该选项。 ",-1))]),d("div",iM,[r[71]||(r[71]=d("label",{for:"noReloadAfterMove"}," 移动后不刷新文件列表 ",-1)),q(d("input",{id:"noReloadAfterMove",type:"checkbox","onUpdate:modelValue":r[22]||(r[22]=a=>o.value.noReloadAfterMove=a)},null,512),[[ye,o.value.noReloadAfterMove]]),r[72]||(r[72]=d("div",{class:"pure-form-message text-success"},[d("b",null,"启用后如果进行了移动操作,列表的全选会受影响,如已选数量不准确。"),d("br"),d("b",{class:"text-danger"},"该功能主要目的是持续高效地在进行移动操作,如果在移动后还需要其他操作,请记得手动刷新列表!")],-1))]),d("div",sM,[r[73]||(r[73]=d("label",{for:"noGotoAfterCreateDir"},[I(" 新建文件夹后不跳转 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),q(d("input",{type:"checkbox",id:"noGotoAfterCreateDir","onUpdate:modelValue":r[23]||(r[23]=a=>o.value.noGotoAfterCreateDir=a)},null,512),[[ye,o.value.noGotoAfterCreateDir]]),r[74]||(r[74]=d("div",{class:"pure-form-message text-success"},[d("div",null,[I("新建文件夹后,默认会跳转到新文件夹。开启此功能后,新文件夹会直接渲染在列表中。可搭配"),d("b",null,'"移动选中文件到新文件夹"'),I("使用。")])],-1))])]),d("fieldset",null,[r[82]||(r[82]=d("legend",null,"拖拽行为",-1)),d("div",rM,[r[76]||(r[76]=d("label",{for:"dragToQuickEntry"}," 支持拖动文件到快捷入口 ",-1)),q(d("input",{id:"dragToQuickEntry",type:"checkbox","onUpdate:modelValue":r[24]||(r[24]=a=>o.value.dragToQuickEntry=a)},null,512),[[ye,o.value.dragToQuickEntry]]),r[77]||(r[77]=d("div",{class:"pure-form-message text-success"},[I(" 可以从文件列表拖动文件到快捷入口,实现移动操作。 "),d("b",{class:"text-danger"},"选中文件时,顶部菜单可能会遮挡快捷入口,可按`Ctrl`键临时隐藏顶部菜单,或者开启「拖动文件时隐藏顶部菜单」选项。")],-1))]),d("div",aM,[r[78]||(r[78]=d("label",{for:"hideSelectionMenuOnDrag"},[I(" 拖动文件时隐藏顶部菜单 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),q(d("input",{id:"hideSelectionMenuOnDrag",type:"checkbox","onUpdate:modelValue":r[25]||(r[25]=a=>o.value.hideSelectionMenuOnDrag=a)},null,512),[[ye,o.value.hideSelectionMenuOnDrag]]),r[79]||(r[79]=I(" ",-1)),r[80]||(r[80]=d("span",{class:"text-warning"},"该功能可能会影响页面性能,如发现该情况请先关闭并反馈🤝",-1)),r[81]||(r[81]=d("div",{class:"pure-form-message text-success"}," 选中文件时,顶部菜单可能会遮挡快捷入口等元素,开启此选项后,在拖动文件时会自动隐藏顶部菜单。 ",-1))])]),d("fieldset",null,[r[88]||(r[88]=d("legend",null,"其他功能",-1)),d("div",lM,[r[84]||(r[84]=d("label",{for:"fileSelectorDefaultView"},"文件选择器默认视图",-1)),q(d("select",{id:"fileSelectorDefaultView","onUpdate:modelValue":r[26]||(r[26]=a=>o.value.fileSelectorDefaultView=a)},r[83]||(r[83]=[d("option",{value:"view"},"大图标",-1),d("option",{value:"list"},"列表",-1),d("option",{value:"_"},"系统默认",-1)]),512),[[gn,o.value.fileSelectorDefaultView]]),r[85]||(r[85]=d("div",{class:"pure-form-message text-success"},[I(" 设置打开页面后初次使用的视图。 "),d("span",{class:"text-warning"},"如果在刷新页面前在选择器切换到了其他视图,该选项将不会生效,但刷新页面后会恢复。")],-1))]),d("div",uM,[r[86]||(r[86]=d("label",{for:"makeMoreImageViewable"}," 支持更多图片预览 ",-1)),q(d("input",{id:"makeMoreImageViewable",type:"checkbox","onUpdate:modelValue":r[27]||(r[27]=a=>o.value.makeMoreImageViewable=a)},null,512),[[ye,o.value.makeMoreImageViewable]]),r[87]||(r[87]=d("div",{class:"pure-form-message text-success"}," 支持一些官方有生成缩略图,但默认没有支持预览的图片格式,目前有webp,tiff。 ",-1))])])])]))}}),dM=Pe(cM,[["__file","Config.vue"]]),Cy=mt.search;function fM(e){return {showSelectTargetButtonOnPathBar:true,showSelectAllDir:false,resultWidth:"",...e}}async function ky(){const e=fM(),t=await Xe.get(Cy,e);return {...e,...t}}async function pM(e){await Xe.set(Cy,e);}const hM={class:"ce-config ce-search-config"},mM={class:"pure-form pure-form-aligned"},gM={class:"pure-control-group"},wM={class:"pure-control-group"},yM={class:"pure-control-group"},bM=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>ky()),t=await t,n(),t));return St(async()=>{}),He(o,lt(async i=>{await pM(i),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.searchConfigChange,body:JSON.parse(JSON.stringify(i))});},500),{deep:true}),(i,s)=>(_(),S("div",hM,[d("form",mM,[d("fieldset",null,[d("div",gM,[s[3]||(s[3]=d("label",{for:"showSelectTargetButtonOnPathBar"},'显示"选择目录"按钮',-1)),q(d("input",{id:"showSelectTargetButtonOnPathBar",type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>o.value.showSelectTargetButtonOnPathBar=r)},null,512),[[ye,o.value.showSelectTargetButtonOnPathBar]]),s[4]||(s[4]=d("div",{class:"pure-form-message text-success"},' 在路径栏显示"选择目录"按钮。即可以在搜索结果页直接选择其他目录进行搜索,而不必返回列表页进入目录后再搜索。 ',-1))]),d("div",wM,[s[5]||(s[5]=d("label",{for:"showSelectAllDir"},'显示"选中全部文件夹"按钮',-1)),q(d("input",{id:"showSelectAllDir",type:"checkbox","onUpdate:modelValue":s[1]||(s[1]=r=>o.value.showSelectAllDir=r)},null,512),[[ye,o.value.showSelectAllDir]]),s[6]||(s[6]=d("div",{class:"pure-form-message text-success"},' 在搜索结果文件列表顶部显示"选中全部文件夹"按钮。 ',-1))]),d("div",yM,[s[7]||(s[7]=d("label",{for:"resultWidth"},"搜索结果宽度",-1)),q(d("input",{id:"resultWidth",class:"input-small","onUpdate:modelValue":s[2]||(s[2]=r=>o.value.resultWidth=r)},null,512),[[Ve,o.value.resultWidth]]),s[8]||(s[8]=d("div",{class:"pure-form-message text-success"},[I(" 默认为空。支持 1000px、100%、90vw 等有效的 "),d("a",{href:"https://developer.mozilla.org/zh-CN/docs/Web/CSS/width",target:"_blank",rel:"noreferrer noopener"},"css width数值 🔗"),I("。 ")],-1))])])])]))}}),vM=Pe(bM,[["__file","Config.vue"]]);function xl(e,t,n=""){let o="";if(e.status===405&&(o=`[${t}][${n}] - 检测到 405 错误,一般是因为被服务器风控,请等待30分钟后再尝试。`),e.status>=400&&e.status<500&&(o=`[${t}][${n}] - 检测到 ${e.status} 错误,请检查请求参数是否正确。`),e.status>=500&&e.status<600&&(o=`[${t}][${n}] - 检测到 ${e.status} 错误,服务器内部错误,请稍后再试。`),o)throw console.error(`[${t}] ${e.status}!`,e),new Error(o)}async function xM(e){const t=`https://qrcodeapi.115.com/api/1.0/${e}/1.0/token/`,n=await fetch(t);return xl(n,"getQrcodeToken","获取二维码登录token失败"),n.json()}const _M={0:"等待扫码",1:"已扫码",2:"登录成功",[-1]:"已失效",[-2]:"已取消"};let Qu=new AbortController;async function CM(e){Qu.abort(e);}async function kM(e){const t=new URLSearchParams;t.append("uid",e.uid),t.append("time",e.time.toString()),t.append("sign",e.sign);const n="https://qrcodeapi.115.com/get/status/?"+t.toString();Qu=new AbortController;const o=await fetch(n,{signal:Qu.signal});return xl(o,"getQrcodeStatus","获取扫码状态失败"),o.json()}function SM(e){return {domain:"",hostOnly:false,httpOnly:true,name:"",path:"",sameSite:"",secure:false,session:false,storeId:"0",value:"",id:0,...e}}async function $M(e){let t=`UID=${e.UID}; CID=${e.CID}; SEID=${e.SEID}`;return e.KID&&(t+=`; KID=${e.KID}`),t}async function EM(e,t=[]){const n=[],o=Object.keys(e);let i=["115.com",...t];i=[...new Set(i)];const s={hostOnly:false,httpOnly:true,path:"/",sameSite:"unspecified",secure:false,session:false,storeId:"0"};let r=1;for(let a=0;a<o.length;a++){const l=o[a],c=[];for(const u of i)c.push(SM({...s,name:l,value:e[l],domain:u,id:r++}));n.push(...c);}return n}function AM(e){const{errno:t,error:n}=e;return `错误码: ${t}, 错误信息: ${n}`}async function PM(e,t){const n=new FormData;n.append("app",t),n.append("account",e);const o=`https://passportapi.115.com/app/1.0/${t}/1.0/login/qrcode/`,i=await fetch(o,{method:"POST",body:n});return xl(i,"postQrcodeResult","获取二维码登录结果失败"),i.json()}async function IM(e,t){const n=`https://qrcodeapi.115.com/api/1.0/web/1.0/qrcode?uid=${t}`,o=await fetch(n);return xl(o,"getQrcode","获取二维码图片失败"),o.blob()}var $d=(e=>(e.web="web",e.android="android",e._115android="115android",e.ios="ios",e._115ipad="115ipad",e.tv="tv",e.alipaymini="alipaymini",e.wechatmini="wechatmini",e.qandroid="qandroid",e._115ios="115ios",e.harmony="harmony",e.ipad="ipad",e.qios="qios",e.qipad="qipad",e.linux="linux",e.mac="mac",e.windows="windows",e))($d||{});const DM={web:"网页版",android:"115生活(Android端)","115android":"115(Android端)",ios:"115生活(iOS端)","115ipad":"115(iPad端)",tv:"115网盘(Android电视端)",alipaymini:"115生活(支付宝小程序)",wechatmini:"115生活(微信小程序)",qandroid:"115管理(Android端)","115ios":"115(iOS端)",harmony:"115(Harmony端) - 不能上传下载"};async function LM(e,t){return new Promise((n,o)=>{const i=new FileReader;i.onloadend=()=>{if(typeof i.result=="string"){if(t instanceof HTMLImageElement)t.src=i.result;else {const s=document.createElement("img");s.src=i.result,t.appendChild(s);}n();}else console.error("[renderQrcode]","reader.result is not string!"),o("reader.result is not string!");},i.onerror=s=>{console.error("[renderQrcode]",s),o(s);},i.readAsDataURL(e);})}async function TM(e){document.addEventListener("qrcodeStatusChange",t=>{const n=t.detail;e(n);});}async function MM(e){const t=new CustomEvent("qrcodeStatusChange",{detail:e});document.dispatchEvent(t);}async function OM(e,t,n=6e4){return new Promise(async(o,i)=>{console.log("[qrcodeLogin]",e,t,n);const s=await xM(e),r=await IM(e,s.data.uid);await LM(r,t);let a=true,l=setTimeout(()=>{a=false,i("[qrcode login] timeout!");},n),c="";for(;a;)try{const f=(await kM(s.data)).data.status;if(MM(f),f===0)console.log(`[qrcode login] status=${f} - waiting.`);else if(f===1)console.log(`[qrcode login] status=${f} - scanned.`);else if(f===2){console.log(`[qrcode login] status=${f} - signed.`);break}else if(f===-1){clearTimeout(l),c=`[qrcode login] status=${f} - expired.`;break}else if(f===-2){clearTimeout(l),c=`[qrcode login] status=${f} - canceled.`;break}}catch(u){console.error("[qrcode login]",u),c=u;break}clearTimeout(l),c?i(c):o(PM(s.data.uid,e));})}const Sy=mt.tools;function BM(e){return {scanApp:$d.alipaymini,...e}}async function RM(){const e=BM(),t=await Xe.get(Sy,e);return {...e,...t}}async function FM(e){await Xe.set(Sy,e);}const NM={class:"ce-tools-item"},UM={class:"pure-form pure-form-aligned"},jM={class:"pure-control-group"},zM=["disabled"],HM=["value"],VM=["disabled"],qM={key:0,class:"text-warning text-bold"},WM={key:1},KM={class:"pure-control-group"},GM=6e4,JM=xe({__name:"GetCookie",props:{app:{}},emits:["app-change"],setup(e,{emit:t}){const n=e,o=t,i=V(n.app),s=V(false),r=V(false),a=V(false),l=V(),c=V(),u=Ke(()=>c.value?_M[c.value]:""),f=Ke(()=>{const L=[$d.harmony],P={};for(const[D,O]of Object.entries(DM))L.includes(D)||(P[D]=O);return P});He(i,L=>{o("app-change",L),w();}),St(async()=>{}),Ht(async()=>{await TM(y);});async function p(){await w();try{const L=document.querySelector("#ceGetCookieQrcode"),P=await OM(i.value,L,GM);let D="";if(P.data?l.value=P.data:D=AM(P)||"未知错误",D)throw new Error(D)}catch(L){if(console.error(L),L.name==="AbortError")return;te.fire({icon:"error",title:"扫码失败",text:typeof L=="string"?L:L.toString()});}finally{s.value=false,r.value=false,c.value=void 0;}}async function w(){l.value=void 0,r.value=false,a.value=false,s.value=false,c.value=void 0,await E();}async function m(){r.value=true;}async function y(L){console.log("[handleStatusChange]",L),c.value=L;}async function v(L){const P=l.value?.cookie;if(!P)return;let D="";if(L==="text")D=await $M(P);else if(L==="json"){const O=await EM(P);D=JSON.stringify(O,null,2);}gt(D),Oi.fire({icon:"success",title:"已复制到剪贴板",timer:1500});}async function E(){await CM();}return (L,P)=>(_(),S("div",NM,[d("form",UM,[d("fieldset",null,[P[7]||(P[7]=d("legend",null,"扫码获取Cookie",-1)),d("div",jM,[q(d("select",{"onUpdate:modelValue":P[0]||(P[0]=D=>i.value=D),disabled:s.value},[(_(true),S($e,null,je(f.value,(D,O)=>(_(),S("option",{value:O,key:O},B(D),9,HM))),128))],8,zM),[[gn,i.value]]),P[5]||(P[5]=I(" ",-1)),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:p,disabled:s.value}," 开始 ",8,VM),P[6]||(P[6]=I(" ",-1)),u.value?(_(),S("span",qM,B(u.value),1)):fe("",true),l.value?(_(),S("span",WM,[P[3]||(P[3]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:P[1]||(P[1]=D=>v("text"))}," 复制文本格式Cookie "),P[4]||(P[4]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:P[2]||(P[2]=D=>v("json"))}," 复制JSON格式Cookie ")])):fe("",true)]),P[8]||(P[8]=d("div",{class:"text-danger"},"扫码登录后,所选设备之前的登录将会失效,所以请尽量选不常用的。",-1)),P[9]||(P[9]=d("div",{class:"text-primary"},"请注意,扫码得到的Cookie会跟随发起扫码的设备,如果发起扫码的设备退出登录,扫码得到的Cookie也会随之失效。",-1)),P[10]||(P[10]=d("div",{class:"text-success"},"如要避免上述问题,可以考虑使用手机验证码登录小程序并获取其Cookie。",-1)),q(d("div",KM,[d("img",{id:"ceGetCookieQrcode",alt:"qrcode",onLoad:m},null,32)],512),[[Wt,r.value]])])])]))}}),YM=Pe(JM,[["__file","GetCookie.vue"]]),QM={class:"ce-tools-item"},XM={class:"pure-form pure-form-aligned"},ZM={class:"pure-control-group"},eO={class:"pure-control-group"},tO={class:"pure-control-group"},nO={class:"pure-control-group"},oO=xe({__name:"Cleaner",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>wr()),t=await t,n(),t)),i=V(([t,n]=Tt(()=>Uw()),t=await t,n(),t));He(o,lt(async a=>{await wd({showEntryOnPathBar:a.showEntryOnPathBar}),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。"});},500),{deep:true}),He(i,lt(async a=>{await DD(a),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。"});},500),{deep:true});async function s(a,l){a&&(await r(),await Mt(1e3)),window.postMessage({event:ot.closeConfig}),postMessage({type:l==="FileCleaner"?Kt.OPEN_CLEANER:Kt.OPEN_EMPTY_CLEANER});}async function r(){return new Promise(async(a,l)=>{unsafeWindow.parent.Core.FileSelectDG.Open((c,u)=>{console.log("[Core.FileSelectDG.Open]",c,u);const f=c[c.length-1],p=unsafeWindow.parent.wangpan;try{p.Main.GotoDir(1,f.cid,0,""),a();}catch(w){te.fire({icon:"error",title:"打开文件夹失败",text:`请在文件列表页面中打开!不要在离线任务之类的页面打开。异常: ${w.toString()}`});}},{select:1,nf:1,show_record:0,show_copy:1,btn_txt:"打开清理工具",select_txt:"清理"});})}return (a,l)=>(_(),S("div",QM,[d("form",XM,[d("fieldset",null,[l[14]||(l[14]=d("legend",null,"文件清理",-1)),d("div",ZM,[l[7]||(l[7]=d("label",{for:"cleanerConfig_showEntryOnPathBar"},'在路径栏显示"清理文件"入口按钮',-1)),q(d("input",{id:"cleanerConfig_showEntryOnPathBar",type:"checkbox","onUpdate:modelValue":l[0]||(l[0]=c=>o.value.showEntryOnPathBar=c)},null,512),[[ye,o.value.showEntryOnPathBar]])]),d("div",eO,[l[8]||(l[8]=d("div",{class:"ce-tips"},"根据后缀、大小和名称等条件进行文件清理。请在「网盘」页中点击以下按钮。",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:l[1]||(l[1]=c=>s(false,"FileCleaner"))}," 清理当前文件夹 "),l[9]||(l[9]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:l[2]||(l[2]=c=>s(true,"FileCleaner"))}," 清理指定文件夹 ")]),l[15]||(l[15]=d("br",null,null,-1)),d("div",tO,[l[10]||(l[10]=d("label",{for:"emptyCleanConfig_emptyCleanConfig"},'在路径栏显示"空文件夹"入口按钮',-1)),q(d("input",{id:"emptyCleanConfig_emptyCleanConfig",type:"checkbox","onUpdate:modelValue":l[3]||(l[3]=c=>i.value.showEntryOnPathBar=c)},null,512),[[ye,i.value.showEntryOnPathBar]])]),d("div",nO,[l[11]||(l[11]=d("div",{class:"ce-tips"},"尽快找到空文件夹进行清理。请在「网盘」页中点击以下按钮。",-1)),d("button",{type:"button",class:"pure-button button-warning",onClick:l[4]||(l[4]=c=>s(false,"EmptyCleaner"))}," 清理当前文件夹下的空文件夹 "),l[12]||(l[12]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-warning",onClick:l[5]||(l[5]=c=>s(true,"EmptyCleaner"))}," 清理指定文件夹下的空文件夹 "),l[13]||(l[13]=I(" ",-1)),d("button",{type:"button",class:"pure-button btn-global-clear",onClick:l[6]||(l[6]=(...c)=>ee(ka)&&ee(ka)(...c)),title:"不用怕误点击,点开后还需要确认呢"}," 一键全局清理空文件夹 ")])])])]))}}),iO=Pe(oO,[["__file","Cleaner.vue"]]),sO={class:"ce-config ce-tools-config"},rO={class:"item"},aO=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>RM()),t=await t,n(),t));St(async()=>{}),He(o,lt(async s=>{await FM(s),window.postMessage({event:ot.toolsConfigChange,body:JSON.parse(JSON.stringify(s))});},100),{deep:true});async function i(s){o.value.scanApp=s;}return (s,r)=>(_(),S("div",sO,[d("div",rO,[oe(YM,{app:o.value.scanApp,onAppChange:i},null,8,["app"]),oe(iO)])]))}}),lO=Pe(aO,[["__file","Config.vue"]]),uO={class:"menu-config-block menu-basic-config"},cO={class:"pure-form pure-form-stacked"},dO={class:"pure-control-group"},fO={class:"pure-control-group"},pO={class:"pure-control-group"},hO={class:"pure-control-group"},mO={class:"pure-control-group"},gO=["value"],wO={class:"pure-control-group"},yO={class:"pure-control-group"},bO={class:"pure-control-group"},vO=xe({__name:"BasicConfig",props:{config:{}},setup(e){const t=e;async function n(i){const r={keyToTriggerManual:"在按下该按键时点击菜单项(搜索/播放),会触发手动输入模式,此时会打开一个输入框,修改文本后,点击「确定」或按下Ctrl+Enter,即可继续完成菜单项的操作。",auxClickTriggerManual:"启用后,使用鼠标中键点击菜单项,会触发手动输入模式,此时会打开一个输入框,修改文本后,点击「确定」或按下Ctrl+Enter,即可继续完成菜单项的操作。",m3u8TempDir:"「M3U8临时目录」用于临时存放生成的m3u8文件。在选中多个视频文件后,在顶部菜单栏会有一个「播放」菜单项,点击后会生成对应的m3u8文件,然后调用播放器播放这个m3u8以实现播放多个视频的效果。",cloudDriveFormalization:'<h2>使用CloudDrive的文件名规范</h2><p>启用后,在使用脚本功能复制文件名或路径时,将会根据CloudDrive的规范对文件名进行处理,请确保当前使用的CloudDrive配置设置了正确的"平台"。</p>'}[i];r&&te.fire({html:r,customClass:{popup:"ce-swal-text-left"}});}function o(i){console.log("[onSelectM3U8Dir]",i),t.config.m3u8TempDir=i.items[i.items.length-1].path.slice(1).map(s=>s.name).join("/");}return (i,s)=>(_(),S("div",uO,[d("form",cO,[d("fieldset",null,[s[21]||(s[21]=d("legend",null,"全局设置",-1)),d("div",dO,[s[12]||(s[12]=d("label",{for:"basic_enabled"},"启用",-1)),q(d("input",{id:"basic_enabled",type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>t.config.enabled=r)},null,512),[[ye,t.config.enabled]])]),d("div",fO,[s[13]||(s[13]=d("label",{for:"basic_hideSelectionMenuLabel"},"隐藏顶部菜单文本",-1)),q(d("input",{id:"basic_hideSelectionMenuLabel",type:"checkbox","onUpdate:modelValue":s[1]||(s[1]=r=>t.config.hideSelectionMenuLabel=r)},null,512),[[ye,t.config.hideSelectionMenuLabel]])]),d("div",pO,[s[14]||(s[14]=d("label",{for:"basic_enableInSearch"},"在搜索结果页中启用",-1)),q(d("input",{id:"basic_enableInSearch",type:"checkbox","onUpdate:modelValue":s[2]||(s[2]=r=>t.config.enableInSearch=r)},null,512),[[ye,t.config.enableInSearch]])]),d("div",hO,[s[15]||(s[15]=d("label",{for:"basic_manageOfficialMenus"},"控制官方菜单是否隐藏",-1)),q(d("input",{id:"basic_manageOfficialMenus",type:"checkbox","onUpdate:modelValue":s[3]||(s[3]=r=>t.config.manageOfficialMenus=r)},null,512),[[ye,t.config.manageOfficialMenus]])]),d("div",mO,[s[16]||(s[16]=d("label",{for:"basic_forceManualBeforeOpenOnKey"},"触发手动输入模式的辅助键",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:s[4]||(s[4]=r=>n("keyToTriggerManual"))},"说明"),q(d("select",{id:"basic_forceManualBeforeOpenOnKey","onUpdate:modelValue":s[5]||(s[5]=r=>t.config.keyToTriggerManual=r)},[(_(true),S($e,null,je(ee(Gn),(r,a)=>(_(),S("option",{key:a,value:a},B(r),9,gO))),128))],512),[[gn,t.config.keyToTriggerManual]])]),d("div",wO,[s[17]||(s[17]=d("label",{for:"basic_forceManualBeforeOpenOnKey"},"鼠标中键触发手动输入模式",-1)),q(d("input",{id:"basic_forceManualBeforeOpenOnKey",type:"checkbox","onUpdate:modelValue":s[6]||(s[6]=r=>t.config.auxClickTriggerManual=r)},null,512),[[ye,t.config.auxClickTriggerManual]]),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:s[7]||(s[7]=r=>n("auxClickTriggerManual"))},"说明")]),d("div",yO,[s[19]||(s[19]=d("label",{for:"basic_m3u8TempDirName"},"M3U8临时目录",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:s[8]||(s[8]=r=>n("m3u8TempDir"))},"说明"),q(d("input",{id:"basic_m3u8TempDirName","onUpdate:modelValue":s[9]||(s[9]=r=>t.config.m3u8TempDir=r)},null,512),[[Ve,t.config.m3u8TempDir]]),oe(Ys,{purpose:"作为M3U8临时目录",onSelect:o},{default:ge(()=>s[18]||(s[18]=[d("a",{class:"text-primary",href:"javascript:void(0)"},"选择目录",-1)])),_:1,__:[18]})]),d("div",bO,[s[20]||(s[20]=d("label",{for:"basic_cloudDriveFormalization"},"CloudDrive文件名规范",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:s[10]||(s[10]=r=>n("cloudDriveFormalization"))},"说明"),q(d("input",{id:"basic_cloudDriveFormalization",type:"checkbox","onUpdate:modelValue":s[11]||(s[11]=r=>t.config.cloudDriveFormalization=r)},null,512),[[ye,t.config.cloudDriveFormalization]])])])])]))}}),xO=Pe(vO,[["__file","BasicConfig.vue"]]),_O={class:"official-menu-config"},CO={class:"pure-form pure-form-stacked"},kO=["onClick"],SO={class:"menu-key"},$O=["onClick"],EO=xe({__name:"OfficialMenuConfig",setup(e){const t=V([]),n=V(false);St(async()=>{t.value=await fw(),console.log("official menu groups",t.value,location.href);}),Ht(()=>{document.body.addEventListener("click",()=>{n.value||(n.value=true);});}),He(t,lt(async s=>{if(!n.value)return;const r=await Y2(s);await J2(r,true),Y({icon:"success",title:"官方菜单设置已保存,已生效。",timer:1e3,position:"top-end"});},500),{deep:true});async function o(s){s.hidden=!s.hidden;}async function i(s){const{isConfirmed:r}=await te.fire({icon:"warning",html:`确认要重置分组「${s.label}」的隐藏状态吗?`,confirmButtonText:"确认",showDenyButton:true,denyButtonText:"关闭"});r&&s.items.forEach(a=>{a.hidden=false;});}return (s,r)=>(_(),S("div",_O,[r[0]||(r[0]=d("div",{class:"ce-tips"},[d("p",null,"开启「菜单设置 - 全局设置 - 控制官方菜单是否隐藏」后才会生效。"),d("p",{class:"text-primary"},"该功能作用为隐藏官方菜单。点击「隐藏」后刷新页面生效,如需取消请点击「取消隐藏」。")],-1)),(_(true),S($e,null,je(t.value,(a,l)=>(_(),S("div",{key:l,class:"menu-config-block"},[d("form",CO,[d("fieldset",null,[d("legend",null,[I(B(a.label)+" ",1),d("span",{class:"ce-label ce-label-warning",title:"取消该分组下全部的隐藏设置",onClick:c=>i(a)}," 重置 ",8,kO)]),(_(true),S($e,null,je(a.items,(c,u)=>(_(),S("div",{key:u,class:Le([{hidden:c.hidden},"menu-item"])},[d("label",null,[I(B(c.label)+" ",1),d("small",SO,B(c.key),1)]),d("span",{class:"ce-toggle",onClick:f=>o(c)},B(c.hidden?"取消隐藏":"隐藏"),9,$O)],2))),128))])])]))),128))]))}}),AO=Pe(EO,[["__file","OfficialMenuConfig.vue"]]);var pt=(e=>(e.input="text",e.number="number",e.password="password",e.textarea="textarea",e.checkbox="checkbox",e.select="select",e.radio="radio",e.date="date",e))(pt||{});function _r(e,t={}){return e.map(n=>({...t,...n}))}const PO=["for"],IO={class:"ce-field-extra ce-field-prefix"},DO=["type","id","name","required","placeholder"],LO=["id","name","required","placeholder"],TO=["value"],MO={key:2},OO=["value","required"],BO=["id","name","required"],RO={key:3},FO=["value","required"],NO=["id","name","required"],UO={class:"ce-field-extra ce-field-suffix"},jO=xe({__name:"CeField",props:{field:{},modelValue:{},formConfig:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,o=e,i=V(o.modelValue),s=Ke(()=>(o.formConfig.idPrefix||"")+o.field.name);return He(i,(r,a)=>{console.log(`[CeField] mutValue changed from ${a} to ${r}`),n("update:modelValue",r);}),(r,a)=>(_(),S("div",{class:Le(["ce-field",r.field.customClass||""])},[Ge(r.$slots,"label",{},()=>[d("label",{for:s.value},B(r.field.label),9,PO)]),d("span",IO,[Ge(r.$slots,"prefix")]),!r.field.type||r.field.type===ee(pt).input||r.field.type===ee(pt).number?q((_(),S("input",{key:0,type:r.field.type,id:s.value,name:r.field.name,"onUpdate:modelValue":a[0]||(a[0]=l=>i.value=l),required:r.field.required,placeholder:r.field.placeholder},null,8,DO)),[[qC,i.value]]):r.field.type===ee(pt).select?q((_(),S("select",{key:1,id:s.value,name:r.field.name,"onUpdate:modelValue":a[1]||(a[1]=l=>i.value=l),required:r.field.required,placeholder:r.field.placeholder},[(_(true),S($e,null,je(r.field.options,(l,c)=>(_(),S("option",{key:c,value:l.value},B(l.label),9,TO))),128))],8,LO)),[[gn,i.value]]):r.field.type===ee(pt).checkbox?(_(),S("span",MO,[r.field.options&&r.field.options.length>0?(_(true),S($e,{key:0},je(r.field.options,(l,c)=>(_(),S("label",{key:c},[q(d("input",{type:"checkbox",value:l.value,"onUpdate:modelValue":a[2]||(a[2]=u=>i.value=u),required:r.field.required},null,8,OO),[[ye,i.value]]),I(" "+B(l.label),1)]))),128)):q((_(),S("input",{key:1,type:"checkbox",id:s.value,name:r.field.name,"onUpdate:modelValue":a[3]||(a[3]=l=>i.value=l),required:r.field.required},null,8,BO)),[[ye,i.value]])])):r.field.type===ee(pt).radio?(_(),S("span",RO,[(_(true),S($e,null,je(r.field.options,(l,c)=>(_(),S("label",{key:c},[q(d("input",{type:"radio",value:l.value,"onUpdate:modelValue":a[4]||(a[4]=u=>i.value=u),required:r.field.required},null,8,FO),[[Dg,i.value]]),I(" "+B(l.label),1)]))),128))])):r.field.type===ee(pt).date?q((_(),S("input",{key:4,type:"date",id:s.value,name:r.field.name,"onUpdate:modelValue":a[5]||(a[5]=l=>i.value=l),required:r.field.required},null,8,NO)),[[Ve,i.value]]):fe("",true),d("span",UO,[Ge(r.$slots,"suffix")])],2))}}),zO=Pe(jO,[["__file","CeField.vue"]]),HO={class:"ce-form pure-form pure-form-stacked"},VO=xe({__name:"CeForm",props:{config:{},modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,o=e,i=(s,r)=>{console.log("[CeForm.handleFieldValueChange]",s,o.modelValue,r),n("update:modelValue",{...o.modelValue});};return (s,r)=>(_(),S("div",HO,[d("fieldset",null,[d("legend",null,[Ge(s.$slots,"header",{},()=>[I(B(s.config.label),1)])]),(_(true),S($e,null,je(s.config.fields,a=>Ge(s.$slots,a.name,{key:a.name,data:a},()=>[oe(zO,{field:a,modelValue:s.modelValue[a.name],"onUpdate:modelValue":l=>s.modelValue[a.name]=l,"form-config":s.config,onChange:l=>i(a.name,l)},{label:ge(()=>[Ge(s.$slots,`${a.name}_label`,{data:a})]),prefix:ge(()=>[Ge(s.$slots,`${a.name}_prefix`,{data:a})]),suffix:ge(()=>[Ge(s.$slots,`${a.name}_suffix`,{data:a})]),_:2},1032,["field","modelValue","onUpdate:modelValue","form-config","onChange"])])),128)),Ge(s.$slots,"footer")])]))}}),ds=Pe(VO,[["__file","CeForm.vue"]]),qO={class:"menu-name-path-block menu-config-block"},WO=xe({__name:"NamePathConfig",props:{modelValue:{},include:{},exclude:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,i=V(n.modelValue);He(i,l=>{o("update:modelValue",l);});const s=V([{label:"完整名称",name:"copyFullName",type:pt.checkbox,disabled:true},{label:"不含后缀的名称",name:"copyPureName",type:pt.checkbox},{label:"文件SHA1",name:"copySha1",type:pt.checkbox},{label:"文件SHA1(带文件名)",name:"copySha1WithName",type:pt.checkbox},{label:"文件ID",name:"copyId",type:pt.checkbox},{label:"文件PickCode",name:"copyPickCode",type:pt.checkbox},{label:"Unix风格路径",name:"copyUnixPath",type:pt.checkbox},{label:"Windows风格路径",name:"copyWinPath",type:pt.checkbox},{label:"父目录Unix风格路径",name:"copyParentUnixPath",type:pt.checkbox},{label:"父目录Windows风格路径",name:"copyParentWinPath",type:pt.checkbox},{label:"在CloudDrive2 Web页面查看",name:"viewInCloudDrive",type:pt.checkbox}]);function r(l){const{include:c=[],exclude:u=[]}=n;return c.length>0?c.includes(l):u.length>0?!u.includes(l):true}const a=V({label:"名称路径子菜单设置",fields:s.value.filter(l=>r(l.name)),idPrefix:"namePath_"});return (l,c)=>(_(),S("div",qO,[d("div",null,[oe(ds,{modelValue:i.value,"onUpdate:modelValue":c[0]||(c[0]=u=>i.value=u),config:a.value},null,8,["modelValue","config"])])]))}}),KO=Pe(WO,[["__file","NamePathConfig.vue"]]),GO={class:"menu-name-path-config-button"},JO=xe({__name:"NamePathConfigButton",props:{modelValue:{},include:{},exclude:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,i=V(n.modelValue);return He(i,s=>{o("update:modelValue",s);}),(s,r)=>{const a=xo("VDropdown");return _(),S("span",GO,[oe(a,{distance:5,triggers:["click"],placement:"left"},{popper:ge(()=>[oe(KO,{modelValue:i.value,"onUpdate:modelValue":r[0]||(r[0]=l=>i.value=l),include:n.include,exclude:n.exclude},null,8,["modelValue","include","exclude"])]),default:ge(()=>[Ge(s.$slots,"default",{},()=>[r[1]||(r[1]=d("span",{class:"text-bold text-info"},">>",-1))])]),_:3})])}}}),Cr=Pe(JO,[["__file","NamePathConfigButton.vue"]]);var Xs={name:"115不大助手"};async function YO(){if(window!==window.parent)return;new MutationObserver(async([t])=>{t.type==="childList"&&window.postMessage({event:ot.topDomChanged});}).observe(document.body,{childList:true});}async function QO(){const e=document.querySelector(".bottom-side .navigation-ceiling ul");if(!e){tB();return}const t=document.createElement("li"),n=document.createElement("a");n.href="javascript:;",n.style.textAlign="center",n.style.backgroundColor="#fefcea",n.style.padding="4px 10px 4px",n.addEventListener("click",async o=>{await io();}),n.title=`打开「${Xs.name}」设置`,n.innerHTML='<i class="isn-setting"></i><span>不大助手</span>',t.appendChild(n),e.insertBefore(t,e.firstChild);}async function XO(){return !!document.querySelector("#js-login-box")}async function ZO(){console.log("[handleLoginPage]"),await XO()&&(document.body.classList.add("ce-login-page"),eB());}async function eB(){console.log("[injectOpenConfigButtonOnLoginPage");const e=document.querySelector(".right-side a");if(!e){console.warn("[injectOpenConfigButtonOnLoginPage] '.right-side a' not found");return}const t=document.createElement("a");t.href="javascript:;",t.className="ce-entry",t.addEventListener("click",async o=>{await io();}),t.title=`打开「${Xs.name}」设置`,t.innerHTML=`<i class="isn-setting"></i><span>${Xs.name}</span>`,e.insertAdjacentElement("beforebegin",t);const n=document.createElement("a");n.href="javascript:;",n.className="ce-entry",n.addEventListener("click",async o=>{await io(yt.tools);}),n.title="打开扫码获取Cookie",n.innerHTML='<i class="isn-scan"></i><span>扫码获取Cookie</span>',e.insertAdjacentElement("beforebegin",n);}async function tB(){const e=document.querySelector(".sub-footer ul");if(!e)return;const t=document.createElement("li"),n=document.createElement("a");n.href="javascript:;",n.addEventListener("click",async o=>{await io();}),n.title=`打开「${Xs.name}」设置`,n.innerHTML=`<i class="isn-setting"></i><span>${Xs.name}</span>`,t.appendChild(n),e.insertBefore(t,e.firstChild);}async function io(e){window.postMessage({event:ot.openConfig,body:e});}const nB={class:"menu-config-block"},oB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},iB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=V(e.modelValue);He(o,l=>{i("update:modelValue",l);});const i=t,s=_r([{label:"启用",name:"enabled"},{label:"新标签页打开",name:"openInNewTab"},{label:"搜索",name:"search"},{label:"播放",name:"play"},{label:"名称路径",name:"copyNames"},{label:"查找重复文件",name:"findRepeat"}],{type:pt.checkbox}),r=V(s),a=V({label:wi.listItemHover,fields:r.value,idPrefix:"listItemHover_"});return (l,c)=>(_(),S("div",nB,[d("div",null,[oe(ds,{modelValue:o.value,"onUpdate:modelValue":c[3]||(c[3]=u=>o.value=u),config:a.value},{search_label:ge(({data:u})=>[d("label",{class:"text-primary",onClick:c[0]||(c[0]=f=>ee(io)(ee(yt).searchMenus))},B(u.label),1)]),play_label:ge(({data:u})=>[d("label",{class:"text-primary",onClick:c[1]||(c[1]=f=>ee(io)(ee(yt).playMenus))},B(u.label),1)]),copyNames_label:ge(({data:u})=>[oe(Cr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[2]||(c[2]=f=>o.value.namePathConfig=f)},{default:ge(()=>[d("label",oB,[I(B(u.label)+" ",1),c[4]||(c[4]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),sB=Pe(iB,[["__file","Config.vue"]]),rB={class:"menu-config-block"},aB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},lB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=V(e.modelValue),i=[];He(o,l=>{s("update:modelValue",l);});const s=t,r=V(_r([{label:"启用",name:"enabled"},{label:"名称路径",name:"copyNames"}],{type:pt.checkbox})),a=V({label:wi.listItemContext,fields:r.value,idPrefix:"listItemContext_"});return (l,c)=>(_(),S("div",rB,[d("div",null,[oe(ds,{modelValue:o.value,"onUpdate:modelValue":c[1]||(c[1]=u=>o.value=u),config:a.value},{copyNames_label:ge(({data:u})=>[oe(Cr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[0]||(c[0]=f=>o.value.namePathConfig=f),exclude:i},{default:ge(()=>[d("label",aB,[I(B(u.label)+" ",1),c[2]||(c[2]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),uB=Pe(lB,[["__file","Config.vue"]]),cB={class:"menu-config-block"},dB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},fB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=["viewInCloudDrive"],i=V(n.modelValue);He(i,c=>{s("update:modelValue",c);});const s=t;function r(c){return Object.entries(c).map(([u,f])=>({value:u,label:f}))}const a=V(_r([{label:"启用",name:"enabled"},{label:"移动到同名目录",name:"moveToSelfNameDir"},{label:"新标签页打开",name:"openInNewTab"},{label:"打开上级目录",name:"openParent"},{label:"名称路径",name:"copyNames"},{label:"播放",name:"play"},{label:"搜索",name:"search"},{label:"打开搜索页面方式",name:"searchOpenType",type:pt.select,options:r(Ik),customClass:"ce-search-sub"}],{type:pt.checkbox})),l=V({label:wi.selection,fields:a.value,idPrefix:"selection_"});return (c,u)=>(_(),S("div",cB,[d("div",null,[oe(ds,{modelValue:i.value,"onUpdate:modelValue":u[3]||(u[3]=f=>i.value=f),config:l.value},{search_label:ge(({data:f})=>[d("label",{class:"text-primary",onClick:u[0]||(u[0]=p=>ee(io)(ee(yt).searchMenus))},B(f.label),1)]),play_label:ge(({data:f})=>[d("label",{class:"text-primary",onClick:u[1]||(u[1]=p=>ee(io)(ee(yt).playMenus))},B(f.label),1)]),copyNames_label:ge(({data:f})=>[oe(Cr,{modelValue:i.value.namePathConfig,"onUpdate:modelValue":u[2]||(u[2]=p=>i.value.namePathConfig=p),exclude:o},{default:ge(()=>[d("label",dB,[I(B(f.label)+" ",1),u[4]||(u[4]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),pB=Pe(fB,[["__file","Config.vue"]]),hB={class:"menu-config-block"},mB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},gB=["onClick"],wB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=V(e.modelValue),i=["copyPureName","copySha1","copySha1WithName"];He(o,w=>{s("update:modelValue",w);});const s=t,r=_r([{label:"启用",name:"enabled"},{label:"重命名",name:"rename"},{label:"删除",name:"delete"},{label:"播放全部",name:"play"},{label:"名称路径",name:"copyNames"},{label:"搜索",name:"search"},{label:"移动",name:"move"},{label:"复制",name:"copy"},{label:"复制到",name:"copyTo"},{label:"查看属性",name:"viewProp"},{label:"子文件夹大小",name:"showSubFolderSize"},{label:"子文件夹大小+排序",name:"showSubFolderSizeAndSort"}],{type:pt.checkbox}),a=V(r),l=V({label:wi.dirContext,fields:a.value,idPrefix:"dirContext_"}),c=Ke(()=>{const w=["enabled","play","copyNames"];return Object.keys(o.value).filter(m=>!w.includes(m))}),u=Ke(()=>{const w=[];for(const m of Object.keys(o.value))w.push({name:m,prefix:`${m}_prefix`,suffix:`${m}_suffix`});return w}),f=w=>{o.value.topLevelMenus.includes(w.name)?o.value.topLevelMenus=o.value.topLevelMenus.filter(m=>m!==w.name):o.value.topLevelMenus.push(w.name);};async function p(){te.fire({html:`<b>当前目录右键菜单的打开方式:</b>
<br>1. 右键单击文件列表表头;
<br>2. 右键单击文件列表空白处;
<br>3.「文件名」列头部的「目录功能菜单」按钮。
<hr class="ce-hr">
<b>菜单显示层级:</b>
<br>1.「播放全部」和「名称路径」强制显示为一级菜单;
<br>2. 其他菜单可以通过点击 👁 图标设置是否显示为一级菜单。
`,customClass:{popup:"ce-swal-text-left"}});}return (w,m)=>(_(),S("div",hB,[d("div",null,[oe(ds,{modelValue:o.value,"onUpdate:modelValue":m[2]||(m[2]=y=>o.value=y),config:l.value},T_({header:ge(()=>[I(B(ee(wi).dirContext)+" ",1),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:p},"说明")]),play_label:ge(({data:y})=>[d("label",{class:"text-primary",onClick:m[0]||(m[0]=v=>ee(io)(ee(yt).playMenus))},B(y.label),1)]),copyNames_label:ge(({data:y})=>[oe(Cr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":m[1]||(m[1]=v=>o.value.namePathConfig=v),exclude:i},{default:ge(()=>[d("label",mB,[I(B(y.label)+" ",1),m[3]||(m[3]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:2},[je(u.value,y=>({name:y.suffix,fn:ge(({data:v})=>[c.value.includes(v.name)?(_(),S("span",{key:0,class:Le(["btn-toggle-top",{active:o.value.topLevelMenus.includes(v.name)}]),onClick:E=>f(v),title:"点亮表示显示为一级菜单,否则将显示在「更多」菜单中"},"👁",10,gB)):fe("",!0)])}))]),1032,["modelValue","config"])])]))}}),yB=Pe(wB,[["__file","Config.vue"]]),bB={class:"menu-config-block"},vB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},xB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=V(e.modelValue),i=["copyPickCode","copyUnixPath","copyWinPath","copyParentUnixPath","copyParentWinPath","viewInCloudDrive"];He(o,l=>{s("update:modelValue",l);});const s=t,r=V(_r([{label:"启用",name:"enabled"},{label:"搜索",name:"search"},{label:"名称",name:"copyNames"}],{type:pt.checkbox})),a=V({label:wi.shareListItemHover,fields:r.value,idPrefix:"shareListItemHover_"});return (l,c)=>(_(),S("div",bB,[d("div",null,[oe(ds,{modelValue:o.value,"onUpdate:modelValue":c[2]||(c[2]=u=>o.value=u),config:a.value},{search_label:ge(({data:u})=>[d("label",{class:"text-primary",onClick:c[0]||(c[0]=f=>ee(io)(ee(yt).searchMenus))},B(u.label),1)]),copyNames_label:ge(({data:u})=>[oe(Cr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[1]||(c[1]=f=>o.value.namePathConfig=f),exclude:i},{default:ge(()=>[d("label",vB,[I(B(u.label)+" ",1),c[3]||(c[3]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),_B=Pe(xB,[["__file","Config.vue"]]),CB={key:0,class:"ce-menu-config"},kB=xe({__name:"MenuConfig",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>ut()),t=await t,n(),t));return St(async()=>{}),He(o,lt(async i=>{const s=await ut();i.defaultPlayer=s.defaultPlayer,i.defaultSearch=s.defaultSearch,await ga(i),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),(i,s)=>o.value.enabled!==void 0?(_(),S("div",CB,[s[6]||(s[6]=d("div",{class:"ce-tips"},[d("p",null,"「搜索」功能菜单支持自定义,可在「搜索菜单」设置面板中添加和管理。 「播放」功能菜单支持自定义,可在「播放菜单」设置面板中添加和管理。")],-1)),oe(xO,{config:o.value},null,8,["config"]),oe(sB,{modelValue:o.value.listItemHover,"onUpdate:modelValue":s[0]||(s[0]=r=>o.value.listItemHover=r)},null,8,["modelValue"]),oe(uB,{modelValue:o.value.listItemContext,"onUpdate:modelValue":s[1]||(s[1]=r=>o.value.listItemContext=r)},null,8,["modelValue"]),oe(pB,{modelValue:o.value.selection,"onUpdate:modelValue":s[2]||(s[2]=r=>o.value.selection=r)},null,8,["modelValue"]),oe(yB,{modelValue:o.value.dirContext,"onUpdate:modelValue":s[3]||(s[3]=r=>o.value.dirContext=r)},null,8,["modelValue"]),oe(_B,{modelValue:o.value.shareListItemHover,"onUpdate:modelValue":s[4]||(s[4]=r=>o.value.shareListItemHover=r)},null,8,["modelValue"]),s[7]||(s[7]=d("hr",{class:"ce-hr"},null,-1)),d("div",null,[s[5]||(s[5]=d("h1",null,"官方菜单设置",-1)),d("div",null,[oe(AO)])])])):fe("",true)}}),SB=Pe(kB,[["__file","MenuConfig.vue"]]),$B={class:"ce-custom-url"},EB={class:"pure-form pure-form-aligned"},AB={class:"ce-custom-url-index"},PB={class:"pure-control-group"},IB={class:"pure-control-group"},DB={class:"pure-control-group"},LB={class:"pure-control-group"},TB={key:0,class:"item-icon"},MB=["src"],OB={class:"pure-control-group"},BB={class:"pure-control-group"},RB={class:"pure-control-group"},FB={key:0,class:"pure-control-group"},NB=xe({__name:"CustomUrl",props:{item:{},index:{}},emits:["delete"],setup(e,{emit:t}){const n=V(true),o=t;function i(){o("delete");}async function s(){n.value=!n.value,n.value&&Y({title:"已开启高级模式",text:"请谨慎修改,不正确的代码可能会导致脚本崩溃。",icon:"info",timer:2e3});}async function r(){window.postMessage({event:"customUrlHelp"},"*");}async function a(){await te.fire({title:"Mutation 说明",html:`
<div style="text-align:left;">
<p>自定义代码,用于生成最终的链接。</p><br>
<p>代码会被包含在一个async匿名函数中执行,最终应该返回一个链接字符串。</p>
<p>传入的参数名为「payload」,其结构如下:</p>
<p>- url: 之前自动处理得到的链接</p>
<p>- file:当前文件信息</p>
<p>- customUrl:当前自定义规则信息</p>
<p>- cloudDriveConfig:CloudDrive设置信息</p><br>
<p>示例:</p>
<pre style="text-align:left;font-size:12px;">
const {
url,
file,
customUrl,
cloudDriveConfig
} = payload
const sth = await fetch(\`https://api.sth.com/foo?bar=\${file.pc}\`)
return \`https://example.com/do?key=\${sth}\`
</pre>
</div>
`,width:480,position:"top-start",backdrop:false});}return (l,c)=>(_(),S("div",$B,[d("form",EB,[d("fieldset",null,[d("legend",null,[d("span",AB,"# "+B(l.index+1),1),d("button",{type:"button",class:"pure-button button-error button-small",onClick:i}," 删除 ")]),d("div",PB,[c[8]||(c[8]=d("label",null,"启用",-1)),q(d("input",{"onUpdate:modelValue":c[0]||(c[0]=u=>l.item.enabled=u),type:"checkbox",id:"customUrl_enabled"},null,512),[[ye,l.item.enabled]])]),d("div",IB,[c[9]||(c[9]=d("label",null,"唯一标识",-1)),q(d("input",{"onUpdate:modelValue":c[1]||(c[1]=u=>l.item.key=u),id:"customUrl_key",class:"pure-input-2-3",placeholder:"英文、数字或下划线"},null,512),[[Ve,l.item.key]])]),d("div",DB,[c[10]||(c[10]=d("label",null,"显示名称",-1)),q(d("input",{"onUpdate:modelValue":c[2]||(c[2]=u=>l.item.label=u),id:"customUrl_label",class:"pure-input-2-3",placeholder:"菜单文本,尽量简洁"},null,512),[[Ve,l.item.label]])]),d("div",LB,[c[11]||(c[11]=d("label",null,"图标",-1)),q(d("input",{"onUpdate:modelValue":c[3]||(c[3]=u=>l.item.icon=u),id:"customUrl_icon",class:"pure-input-2-3",placeholder:"图标class、图片链接或图片data:image"},null,512),[[Ve,l.item.icon]]),c[12]||(c[12]=I(" ",-1)),l.item.icon?(_(),S("span",TB,[d("img",{src:l.item.icon,referrerpolicy:"no-referrer",width:"25"},null,8,MB)])):fe("",true)]),d("div",OB,[d("label",{onDblclick:s}," 链接 ",32),q(d("textarea",{"onUpdate:modelValue":c[4]||(c[4]=u=>l.item.url=u),id:"customUrl_url",class:"pure-input-2-3",placeholder:"链接地址,支持变量,变量列表请点击右侧「查看变量」"},null,512),[[Ve,l.item.url]]),c[13]||(c[13]=I(" ",-1)),d("a",{href:"javascript:void(0)",class:"text-primary",onClick:r},"查看变量")]),d("div",BB,[c[14]||(c[14]=d("label",null,"后台打开",-1)),q(d("input",{"onUpdate:modelValue":c[5]||(c[5]=u=>l.item.openInBackground=u),id:"customUrl_openInBackground",type:"checkbox"},null,512),[[ye,l.item.openInBackground]])]),d("div",RB,[c[15]||(c[15]=d("label",null,"备注",-1)),q(d("input",{"onUpdate:modelValue":c[6]||(c[6]=u=>l.item.memo=u),id:"customUrl_memo",class:"pure-input-2-3"},null,512),[[Ve,l.item.memo]])]),n.value?(_(),S("div",FB,[c[16]||(c[16]=d("label",null,"Mutation",-1)),q(d("textarea",{"onUpdate:modelValue":c[7]||(c[7]=u=>l.item.mutation=u),id:"customUrl_mutation",class:"pure-input-2-3",placeholder:"自定义代码生成最终链接,具体请看右侧「查看说明」"},null,512),[[Ve,l.item.mutation]]),c[17]||(c[17]=I(" ",-1)),d("a",{href:"javascript:void(0)",class:"text-primary",onClick:a},"查看说明")])):fe("",true)])])]))}}),$y=Pe(NB,[["__file","CustomUrl.vue"]]),UB={class:"ce-config ce-search-urls ce-custom-urls"},jB={class:"pure-form"},zB=["value"],HB=["value"],VB={class:"ce-menu-urls-builtin"},qB={class:"pure-form pure-form-aligned"},WB={key:0,class:"item-icon"},KB=["src"],GB=["for"],JB=["id","onUpdate:modelValue"],YB={class:"text-info item-memo"},QB=["onClick"],XB={class:"ce-custom-urls-list"},ZB={class:"ce-custom-urls-actions"},e3=["disabled"],t3=xe({__name:"SearchUrls",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>ur()),t=await t,n(),t)),i=V(([t,n]=Tt(()=>ki(to.search)),t=await t,n(),t)),s=Ke(()=>[...o.value.filter(m=>m.enabled),...i.value.filter(m=>m.enabled)]),r=([t,n]=Tt(()=>ut()),t=await t,n(),t),a=V(r.defaultSearch||""),l=V(r.keyToTriggerSearchScope||Gn.none);St(async()=>{}),He(o,lt(async m=>{const y=[];m.forEach(v=>{v.enabled&&y.push(v.key);}),await cx(y),Y({icon:"success",title:"预置搜索菜单设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),He(a,lt(async m=>{const y=await ut();y.defaultSearch=m,await ga(y),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250)),He(l,lt(async m=>{const y=await ut();y.keyToTriggerSearchScope=m,await ga(y),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250));async function c(){const m=[];for(const y of i.value){if(!await u(y,m.length))return;if(m.includes(y.key)){Y({icon:"error",title:`第 ${m.length+1} 个记录的「唯一标识: ${y.key}」重复!`});return}m.push(y.key);}await bm(to.search,i.value),Y({icon:"success",title:"保存成功!"});}async function u(m,y){const v=/^\w+$/;return m.key=m.key.trim(),v.test(m.key)?(m.label=m.label.trim(),m.label===""?(Y({icon:"error",title:`第 ${y+1} 个记录的「显示名称」不能为空!`}),false):(m.url=m.url.trim(),m.url===""?(Y({icon:"error",title:`第 ${y+1} 个记录的「链接」不能为空!`}),false):(m.icon=m.icon.trim(),m.memo=m.memo.trim(),true))):(Y({icon:"error",title:`第 ${y+1} 个记录的「唯一标识」错误!只能包含字母、数字、下划线。`}),false)}async function f(){i.value.push(Ct({key:Na()}));}async function p(m,y){const{isConfirmed:v}=await te.fire({icon:"warning",html:`确定要删除第 ${y+1} 个记录「${m.label}」吗?`});v&&(i.value.splice(y,1),await c(),Y({icon:"success",title:`「${m.label}」已删除!`}));}async function w(m){const y=JSON.stringify(m,null,2),v=`ce-url-item-denifition-${m.key}`,{isConfirmed:E}=await te.fire({title:`「${m.label}」的定义`,html:`<h3>${m.memo}</h3>
<pre id="${v}" style="text-align:left;font-size:12px;"></pre>`,confirmButtonText:"复制",showCancelButton:true,position:"top-left",heightAuto:true,didOpen:()=>{document.getElementById(v).textContent=y;}});E&&(navigator.clipboard.writeText(y),Y({icon:"success",title:"已复制到剪贴板!"}));}return (m,y)=>(_(),S("div",UB,[d("form",jB,[d("fieldset",null,[y[2]||(y[2]=d("label",{class:"ce-label ce-label-primary"},"默认搜索",-1)),y[3]||(y[3]=I(" ",-1)),q(d("select",{"onUpdate:modelValue":y[0]||(y[0]=v=>a.value=v)},[(_(true),S($e,null,je(s.value,(v,E)=>(_(),S("option",{key:E,value:v.key},B(v.label),9,zB))),128))],512),[[gn,a.value]]),y[4]||(y[4]=I(" ",-1)),y[5]||(y[5]=d("label",{class:"ce-label ce-label-success"},"触发选择搜索目录的按键",-1)),y[6]||(y[6]=I(" ",-1)),q(d("select",{id:"basic_keyToTriggerSelectSearchScope","onUpdate:modelValue":y[1]||(y[1]=v=>l.value=v)},[(_(true),S($e,null,je(ee(Gn),(v,E)=>(_(),S("option",{key:E,value:E},B(v),9,HB))),128))],512),[[gn,l.value]])])]),d("h1",null,[y[7]||(y[7]=I("预置搜索菜单 ",-1)),q(d("small",null,"( "+B(o.value.length)+" )",513),[[Wt,o.value.length]])]),d("div",VB,[d("form",qB,[d("fieldset",null,[(_(true),S($e,null,je(o.value,(v,E)=>(_(),S("div",{key:E,class:"pure-control-group"},[v.icon?(_(),S("span",WB,[d("img",{src:v.icon,referrerpolicy:"no-referrer",width:"25"},null,8,KB)])):fe("",true),d("label",{for:`builtin_${v.key}`},B(v.label),9,GB),q(d("input",{id:`builtin_${v.key}`,type:"checkbox","onUpdate:modelValue":L=>v.enabled=L},null,8,JB),[[ye,v.enabled]]),y[8]||(y[8]=I(" ",-1)),d("span",YB,B(v.memo),1),y[9]||(y[9]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:L=>w(v)},"查看定义",8,QB)]))),128))])])]),d("h1",null,[y[10]||(y[10]=I("自定义搜索菜单 ",-1)),q(d("small",null,"( "+B(i.value.length)+" )",513),[[Wt,i.value.length]])]),d("div",XB,[(_(true),S($e,null,je(i.value,(v,E)=>(_(),tt($y,{key:E,item:v,index:E,onDelete:L=>p(v,E)},null,8,["item","index","onDelete"]))),128))]),d("div",ZB,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:c,disabled:!i.value.length}," 保存自定义搜索菜单 ",8,e3),y[11]||(y[11]=I(" ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:f}," + 添加自定义搜索菜单 ")])]))}}),n3=Pe(t3,[["__file","SearchUrls.vue"]]),o3={class:"ce-config ce-play-urls ce-custom-urls"},i3={class:"pure-form pure-form-aligned"},s3=["value"],r3={class:"ce-menu-urls-builtin"},a3={class:"pure-form pure-form-aligned"},l3={key:0,class:"item-icon"},u3=["src"],c3=["for"],d3=["id","onUpdate:modelValue"],f3={class:"text-info item-memo"},p3=["onClick"],h3=["innerHTML"],m3={class:"ce-custom-urls-list"},g3={class:"ce-custom-urls-actions"},w3=["disabled"],y3=xe({__name:"PlayUrls",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>_m()),t=await t,n(),t)),i=V(([t,n]=Tt(()=>ki(to.play)),t=await t,n(),t)),s=([t,n]=Tt(()=>ut()),t=await t,n(),t),r=V(s.defaultPlayer||""),a=Ke(()=>[...o.value.filter(w=>w.enabled),...i.value.filter(w=>w.enabled)]);St(async()=>{}),He(o,lt(async w=>{const m=[];w.forEach(y=>{y.enabled&&m.push(y.key);}),await dx(m),Y({icon:"success",title:"预置搜索菜单设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),He(r,lt(async w=>{const m=await ut();m.defaultPlayer=w,await ga(m),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250));async function l(){const w=[];for(const m of i.value){if(!await c(m,w.length))return;if(w.includes(m.key)){Y({icon:"error",title:`第 ${w.length+1} 个记录的「唯一标识: ${m.key}」重复!`});return}w.push(m.key);}await bm(to.play,i.value),Y({icon:"success",title:"保存成功!"});}async function c(w,m){const y=/^\w+$/;return w.key=w.key.trim(),y.test(w.key)?(w.label=w.label.trim(),w.label===""?(Y({icon:"error",title:`第 ${m+1} 个记录的「显示名称」不能为空!`}),false):(w.url=w.url.trim(),w.url===""?(Y({icon:"error",title:`第 ${m+1} 个记录的「链接」不能为空!`}),false):(w.icon=w.icon.trim(),w.memo=w.memo.trim(),true))):(Y({icon:"error",title:`第 ${m+1} 个记录的「唯一标识」错误!只能包含字母、数字、下划线。`}),false)}async function u(){i.value.push(Ct({key:Na()}));}async function f(w,m){const{isConfirmed:y}=await te.fire({icon:"warning",html:`确定要删除第 ${m+1} 个记录「${w.label}」吗?`});y&&(i.value.splice(m,1),await l(),Y({icon:"success",title:`「${w.label}」已删除!`}));}async function p(w){const m=JSON.stringify(w,null,2),y=`ce-url-item-denifition-${w.key}`,{isConfirmed:v}=await te.fire({title:`「${w.label}」的定义`,html:`<h3>${w.memo}</h3>
<pre id="${y}" style="text-align:left;font-size:12px;"></pre>`,confirmButtonText:"复制",showCancelButton:true,position:"top-left",heightAuto:true,didOpen:()=>{document.getElementById(y).innerText=m;}});v&&(navigator.clipboard.writeText(m),Y({icon:"success",title:"已复制到剪贴板!"}));}return (w,m)=>(_(),S("div",o3,[d("form",i3,[d("fieldset",null,[m[1]||(m[1]=d("span",{class:"ce-label ce-label-primary"},"默认播放菜单: ",-1)),m[2]||(m[2]=I(" ",-1)),q(d("select",{"onUpdate:modelValue":m[0]||(m[0]=y=>r.value=y)},[(_(true),S($e,null,je(a.value,(y,v)=>(_(),S("option",{key:v,value:y.key},B(y.label),9,s3))),128))],512),[[gn,r.value]])])]),d("h1",null,[m[3]||(m[3]=I("预置播放菜单 ",-1)),q(d("small",null,"( "+B(o.value.length)+" )",513),[[Wt,o.value.length]])]),m[8]||(m[8]=d("div",{class:"ce-tips"},[d("p",null,[I("支持常见的视频、音频和图片格式,也支持目录播放。预置播放菜单使用的链接变量是 "),d("b",null,"{clouddrive_stream_url}"),I(" , 会根据文件或目录自动使用相应的链接。")]),d("p",null,"调用本地播放器播放功能依赖CloudDrive,请先在「CloudDrive」设置面板中进行配置。")],-1)),d("div",r3,[d("form",a3,[d("fieldset",null,[(_(true),S($e,null,je(o.value,(y,v)=>(_(),S("div",{key:v,class:"pure-control-group"},[y.icon?(_(),S("span",l3,[d("img",{src:y.icon,referrerpolicy:"no-referrer",width:"25"},null,8,u3)])):fe("",true),d("label",{for:`builtin_${y.key}`},B(y.label),9,c3),q(d("input",{id:`builtin_${y.key}`,type:"checkbox","onUpdate:modelValue":E=>y.enabled=E},null,8,d3),[[ye,y.enabled]]),m[4]||(m[4]=I(" ",-1)),d("span",f3,B(y.memo),1),m[5]||(m[5]=I(" ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:E=>p(y)},"查看定义",8,p3),y.extraMemo?(_(),S("span",{key:1,innerHTML:y.extraMemo,class:"extra-memo"},null,8,h3)):fe("",true)]))),128))])])]),d("h1",null,[m[6]||(m[6]=I("自定义播放菜单 ",-1)),q(d("small",null,"( "+B(i.value.length)+" )",513),[[Wt,i.value.length]])]),d("div",m3,[(_(true),S($e,null,je(i.value,(y,v)=>(_(),tt($y,{key:v,item:y,index:v,onDelete:E=>f(y,v)},null,8,["item","index","onDelete"]))),128))]),m[9]||(m[9]=d("div",{class:"ce-tips"}," 编辑后,请记得点击「保存自定义播放菜单」。 ",-1)),d("div",g3,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:l,disabled:!i.value.length}," 保存自定义播放菜单 ",8,w3),m[7]||(m[7]=I(" ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:u}," + 添加自定义播放菜单 ")])]))}}),b3=Pe(y3,[["__file","PlayUrls.vue"]]),v3={class:"ce-config ce-anxia-config"},x3={class:"pure-form pure-form-aligned"},_3={class:"pure-control-group"},C3={class:"pure-control-group"},k3={class:"pure-control-group"},S3=["value"],$3=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>tm()),t=await t,n(),t));return St(async()=>{}),He(o,lt(async i=>{await P0(i),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.listConfigChange,body:JSON.parse(JSON.stringify(i))});},500),{deep:true}),(i,s)=>(_(),S("div",v3,[d("form",x3,[d("fieldset",null,[d("div",_3,[s[3]||(s[3]=d("label",{for:"defaultWebFull"},"自动网页全屏",-1)),q(d("input",{id:"defaultWebFull",type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>o.value.defaultWebFull=r)},null,512),[[ye,o.value.defaultWebFull]]),s[4]||(s[4]=d("div",{class:"pure-form-message text-success"},[d("div",null,"进入播放页后自动使播放器网页全屏。")],-1))]),d("div",C3,[s[5]||(s[5]=d("label",{for:"defaultOpenPlayList"},"自动展开播放列表",-1)),q(d("input",{id:"defaultOpenPlayList",type:"checkbox","onUpdate:modelValue":s[1]||(s[1]=r=>o.value.defaultOpenPlayList=r)},null,512),[[ye,o.value.defaultOpenPlayList]]),s[6]||(s[6]=d("div",{class:"pure-form-message text-success"},[d("div",null,"进入播放页后自动展开播放列表。")],-1))]),d("div",k3,[s[8]||(s[8]=d("label",{for:"defaultDefinition"},"默认清晰度",-1)),q(d("select",{id:"defaultDefinition","onUpdate:modelValue":s[2]||(s[2]=r=>o.value.defaultDefinition=r)},[s[7]||(s[7]=d("option",{value:""},"官方默认",-1)),(_(true),S($e,null,je(ee(em),(r,a)=>(_(),S("option",{key:a,value:a},B(r),9,S3))),128))],512),[[gn,o.value.defaultDefinition]]),s[9]||(s[9]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-warning"},"如果没有该清晰度,则会使用官方默认。")],-1))])])])]))}}),E3=Pe($3,[["__file","Config.vue"]]),Ey=mt.share;function A3(e){return {autoConfirmPassword:true,pageWidth:"",showListSummary:true,freshMode:false,...e}}async function Ay(){const e=A3(),t=await Xe.get(Ey,e);return {...e,...t}}async function P3(e){await Xe.set(Ey,e);}function Py(e={}){return {share_code:"",offset:0,limit:1150,receive_code:"",cid:"",...e}}function I3(e,t=true,n=false){const o=Py();let i=e.match(/((115|115cdn|anxia)\.com(\/s)?\/)?([a-z\d]{6,})(\?password=(\w{4,}))?/);if(!i)throw new Error("无法解析分享链接");const s=!!i[1];if(!s&&!n)throw new Error("无法解析分享链接: 缺少有效的域名或访问码");if(o.share_code=i[4],i[5])return o.receive_code=i[6],o;if(i=e.match(/(\?|&)password=(\w{4,})/),i&&(o.receive_code=i[2]),!o.receive_code&&t&&(i=e.match(/访问码(:|:)\s*(\w{4,})/),i&&(o.receive_code=i[2])),!s&&!o.receive_code)throw new Error("分享链接缺少访问码");return o}function D3(e){const t=Py(),n=e.match(/\/([a-z\d]{6,})(?:-(\w{4,}))?\//);if(!n)throw new Error("无法解析口令");return t.share_code=n[1],n[2]&&(t.receive_code=n[2]),t}function L3(e,t=true,n=false){try{return I3(e,t,n)}catch{}try{return D3(e)}catch{}throw new Error("无法解析分享链接或口令")}function T3(e,t=true,n=false){e=e.replace(/[,,]\s*(https:\/\/)/g,`
$1`);const o=[],i=e.split(`
`).map(r=>r.trim()).filter(r=>r);for(const r of i)try{const a=L3(r,t,n);o.push(a);}catch{}const s={};for(const r of o)r.share_code&&!s[r.share_code]&&(s[r.share_code]=r);return Object.values(s)}function M3(e){const{share_code:t,receive_code:n}=e;if(!t)throw new Error("分享链接缺少 share_code");let o=`https://115.com/s/${t}`;return n&&(o+=`?password=${n}`),o}const O3={class:"ce-tools-item ce-share-tool"},B3={class:"pure-form pure-form-aligned"},R3={class:"pure-control-group"},F3={key:0,style:{padding:"4px 0"}},N3={style:{width:"auto"}},U3={key:0,style:{padding:"6px","max-height":"300px","overflow-y":"auto",border:"1px solid #ccc"}},j3=xe({__name:"ShareTool",setup(e){const n=V(false),o=V(""),i=V(null),s=V([]);return St(async()=>{}),Ht(async()=>{}),He(o,lt(r=>{if(s.value=[],r=r.trim(),!!r)try{if(s.value=T3(r,!0,!0),console.log("[parseBatch]",s.value),!s.value.length)throw new Error("未找到有效的分享链接或口令");n.value;for(const a of s.value){const l=M3(a);Ms(l,{active:!0});}o.value="";}catch(a){console.error(a),Oi.fire({icon:"error",title:`解析分享内容失败:${a instanceof Error?a.message:String(a)}`}),i.value&&i.value.select();}},300),{immediate:true}),(r,a)=>(_(),S("div",O3,[d("form",B3,[d("fieldset",null,[a[5]||(a[5]=d("legend",null,"分享工具",-1)),d("div",R3,[a[4]||(a[4]=d("div",null,[d("b",null,"打开分享详情"),I(" - 粘贴分享内容,自动打开分享详情页面,支持链接和口令,支持多个")],-1)),q(d("textarea",{ref_key:"refShareText",ref:i,rows:"2","onUpdate:modelValue":a[0]||(a[0]=l=>o.value=l),placeholder:"请粘贴分享内容",style:{width:"80%"},onclick:"this.select()"},null,512),[[Ve,o.value]]),ee(true)?fe("",true):(_(),S("div",F3,[d("label",N3,[q(d("input",{type:"checkbox","onUpdate:modelValue":a[1]||(a[1]=l=>n.value=l)},null,512),[[ye,n.value]]),a[3]||(a[3]=I(" 调试模式",-1))]),d("button",{type:"button",onClick:a[2]||(a[2]=l=>o.value="")},"清空"),s.value&&s.value.length?(_(),S("div",U3,[d("pre",null,B(s.value),1)])):fe("",true)]))])])])]))}}),z3=Pe(j3,[["__file","ShareTool.vue"]]),H3={class:"ce-config ce-share-config"},V3={class:"pure-form pure-form-aligned"},q3={class:"pure-control-group"},W3={class:"pure-control-group"},K3={class:"pure-control-group"},G3={class:"pure-control-group"},J3=xe({__name:"Config",async setup(e){let t,n;const o=V(([t,n]=Tt(()=>Ay()),t=await t,n(),t));return St(async()=>{}),He(o,lt(async i=>{await P3(i),Y({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.shareConfigChange,body:JSON.parse(JSON.stringify(i))});},500),{deep:true}),(i,s)=>(_(),S("div",H3,[oe(z3),d("form",V3,[d("fieldset",null,[s[12]||(s[12]=d("legend",null,"分享设置",-1)),d("div",q3,[s[4]||(s[4]=d("label",{for:"autoAccess"},"自动确定访问码",-1)),q(d("input",{id:"autoAccess",type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>o.value.autoConfirmPassword=r)},null,512),[[ye,o.value.autoConfirmPassword]]),s[5]||(s[5]=d("div",{class:"pure-form-message text-success"}," 如果打开页面时已有访问码,则自动确定进入分享详情。 ",-1))]),d("div",W3,[s[6]||(s[6]=d("label",{for:"pageWidth"},"页面宽度",-1)),q(d("input",{id:"pageWidth",class:"input-small","onUpdate:modelValue":s[1]||(s[1]=r=>o.value.pageWidth=r)},null,512),[[Ve,o.value.pageWidth]]),s[7]||(s[7]=d("div",{class:"pure-form-message text-success"},[I(" 默认为空。支持 1000px、100%、90vw 等有效的 "),d("a",{href:"https://developer.mozilla.org/zh-CN/docs/Web/CSS/width",target:"_blank",rel:"noreferrer noopener"},"css width数值 🔗"),I("。 ")],-1))]),d("div",K3,[s[8]||(s[8]=d("label",{for:"showListSummary"},"显示列表概要",-1)),q(d("input",{id:"showListSummary",type:"checkbox","onUpdate:modelValue":s[2]||(s[2]=r=>o.value.showListSummary=r)},null,512),[[ye,o.value.showListSummary]]),s[9]||(s[9]=d("div",{class:"pure-form-message text-success"}," 在列表`名称`列头部显示当前列表的概要信息,如文件数量、文件合计大小、目录数量等。 ",-1))]),d("div",G3,[s[10]||(s[10]=d("label",{for:"freshMode"},"清爽模式",-1)),q(d("input",{id:"freshMode",type:"checkbox","onUpdate:modelValue":s[3]||(s[3]=r=>o.value.freshMode=r)},null,512),[[ye,o.value.freshMode]]),s[11]||(s[11]=d("div",{class:"pure-form-message text-success"},[I(" 隐藏顶部广告和底部警告。"),d("span",{class:"text-warning"},"请注意,这些区域的内容可能会发生变化,隐藏后可能会使你错过相关信息,比如新活动等。")],-1))])])])]))}}),Y3=Pe(J3,[["__file","Config.vue"]]);var Q3={name:"115不大助手",version:"0.8.7"};const X3=xe({__name:"FeedbackButton",setup(e){const t=Q3,n=Gy;function o(){let s=`脚本: ${t.name} - v${t.version}
`;return s+=`TM: ${n.version}
`,s+=`UA: ${navigator.userAgent}
`,s+=`我在使用脚本的 xxxxxx 功能时,出现了问题,希望你能帮我解决。
`,s+=`复现步骤: xxxxxx
`,s+=`问题截图:
`,s}function i(){let s=o();gt(s),Y({icon:"success",text:"已复制反馈模版,请添加详细的描述以便排查和解决问题。"});}return (s,r)=>(_(),S("button",{type:"button",class:"pure-button pure-button-success",onClick:i}," 复制反馈模版 "))}}),Z3=Pe(X3,[["__file","FeedbackButton.vue"]]);var e4={name:"115不大助手",version:"0.8.7",author:{name:"生瓜太保",email:"[email protected]"},greasyforkUrl:"https://greatest.deepsurf.us/zh-CN/scripts/474231-115%E4%B8%8D%E5%A4%A7%E5%8A%A9%E6%89%8B-full?locale_override=1"};const t4={class:"ce-about"},n4=["href"],o4=xe({__name:"About",setup(e){const t=e4;return (n,o)=>(_(),S("div",t4,[o[1]||(o[1]=d("p",null,"115不大助手(以下简称「脚本」),是一个仅用于学习编程的小脚本。",-1)),o[2]||(o[2]=d("br",null,null,-1)),o[3]||(o[3]=d("p",null,"脚本不会收集您的任何个人信息。",-1)),o[4]||(o[4]=d("p",null,"脚本仅借助了官方已有的功能,无任何破解行为。",-1)),o[5]||(o[5]=d("p",null,"脚本代码本身已包含全部依赖,无任何远程引用。",-1)),o[6]||(o[6]=d("br",null,null,-1)),o[7]||(o[7]=d("br",null,null,-1)),o[8]||(o[8]=d("br",null,null,-1)),d("div",null,[oe(Z3)]),o[9]||(o[9]=d("br",null,null,-1)),o[10]||(o[10]=d("hr",{class:"ce-hr"},null,-1)),d("div",null,[d("a",{href:ee(t).greasyforkUrl,class:"text-bold text-primary",target:"_blank",rel:"noreferrer noopener",title:"到Greasyfork查看"},[I(B(ee(t).name)+" ",1),d("small",null,"v"+B(ee(t).version),1)],8,n4),o[0]||(o[0]=I(" ",-1)),d("small",null,"by "+B(ee(t).author.name),1)])]))}}),i4=Pe(o4,[["__file","About.vue"]]);var s4={name:"115不大助手",version:"0.8.7",author:{name:"生瓜太保",email:"[email protected]"},greasyforkUrl:"https://greatest.deepsurf.us/zh-CN/scripts/474231-115%E4%B8%8D%E5%A4%A7%E5%8A%A9%E6%89%8B-full?locale_override=1"};const r4={class:"ce-config-main"},a4={class:"ce-config-main-header"},l4={class:"ce-intro"},u4=["href"],c4={class:"ce-config-main-body"},d4=xe({__name:"Config",setup(e){const t=s4,n=V(false),o=V(false),i=V();Ht(async()=>{window.addEventListener("message",c=>{const{event:u,body:f}=c.data;u===ot.openConfig&&(n.value||(n.value=true),s(f)),u===ot.closeConfig&&r();},false);});async function s(c){o.value=true,console.log("[openDrawer]",c),c&&(await mi(),i.value?.selectTab(`#${c}`));}async function r(){o.value=false;}async function a(...c){console.log("[tabClicked]",c);}async function l(...c){console.log("[tabChanged]",c);}return (c,u)=>(_(),tt(bg,null,{default:ge(()=>[d("div",r4,[oe(Js,{"is-open":o.value,onClose:r,"max-width":"1225px",speed:500},{default:ge(()=>[d("div",a4,[u[1]||(u[1]=d("h1",null,"设置",-1)),d("span",l4,[d("a",{href:ee(t).greasyforkUrl,class:"text-bold text-primary",target:"_blank",rel:"noreferrer noopener",title:"到Greasyfork查看"},[I(B(ee(t).name)+" ",1),d("small",null,"v"+B(ee(t).version),1)],8,u4),u[0]||(u[0]=I(" ",-1)),d("small",null,"by "+B(ee(t).author.name),1)]),d("div",{class:"ce-config-main-close",onClick:r},"关闭")]),d("div",c4,[oe(ee(WL),{ref_key:"refTabs",ref:i,options:{useUrlFragment:!1},onClicked:a,onChanged:l},{default:ge(()=>[oe(ee(Cn),{id:ee(yt).basic,name:ee(_n).basic},{default:ge(()=>[oe(xT)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).clouddrive,name:ee(_n).clouddrive},{default:ge(()=>[oe(FT)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).list,name:ee(_n).list},{default:ge(()=>[oe(dM)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).search,name:ee(_n).search},{default:ge(()=>[oe(vM)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).menus,name:ee(_n).menus},{default:ge(()=>[oe(SB)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).searchMenus,name:ee(_n).searchMenus},{default:ge(()=>[oe(n3)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).playMenus,name:ee(_n).playMenus},{default:ge(()=>[oe(b3)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).offline,name:ee(_n).offline},{default:ge(()=>[oe(Aw)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).tools,name:ee(_n).tools},{default:ge(()=>[oe(lO)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).anxia,name:ee(_n).anxia},{default:ge(()=>[oe(E3)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).share,name:ee(_n).share},{default:ge(()=>[oe(Y3)]),_:1},8,["id","name"]),oe(ee(Cn),{id:ee(yt).about,name:ee(_n).about},{default:ge(()=>[oe(i4)]),_:1},8,["id","name"])]),_:1},512)])]),_:1},8,["is-open"])])]),_:1}))}}),f4=Pe(d4,[["__file","Config.vue"]]),p4=".ce-login-page a.ce-entry{display:inline-block;background:#fefcea;padding:2px 6px;border-radius:4px;border:1px solid #234888;margin:0 4px}";Et(p4);async function h4(){const{host:e}=location;["115.com","anxia.com","115cdn.com","share.115.com","life.115.com"].includes(e)&&window.top===window.self&&(console.log(`[Cloud115 Enhancer - main] running in ${e}`),m4(),QO(),YO());}async function m4(){console.log("[Cloud115 Enhancer - main] injectUI");const e="cloud115ConfigMain",t=document.createElement("div");t.id=e,document.body.appendChild(t);const n=ro(f4);n.component("VDropdown",Ei),n.directive("tooltip",fd),n.mount(`#${e}`),vs("设置",async()=>{window.postMessage({event:ot.openConfig});}),vs("扫码获取Cookie",async()=>{window.postMessage({event:ot.openConfig,body:yt.tools});}),vs("解析分享文本",async()=>{window.postMessage({event:ot.openConfig,body:yt.share});}),ZO();}const g4='@charset "UTF-8";.ce-list-page .header-name div.desc{line-height:32px}.ce-filter-ext-wrap a{min-width:24px!important;max-width:50px!important;width:auto!important;height:20px;line-height:20px!important;padding:4px 6px;background:#ededed;font-size:14px!important}.list-contents ul li .ce-btn-folder-size{background:#f2f4f8;border-radius:6px;padding:4px;cursor:pointer}.list-contents ul li .ce-s-d{font-size:11px;color:#8f8f8f}.list-contents ul li .ce-file-sha1{position:absolute;top:20px;color:#999;cursor:pointer;font-size:90%}.list-contents ul li.ce-show-sha1 .file-name{height:40px}.list-contents ul li.ce-size-got .ce-btn-folder-size{opacity:.6;margin-left:6px}.list-contents ul li.ce-size-got .ce-btn-folder-size:hover{opacity:1}#js_top_header_file_path_box .ce-path-btn{background-color:#f4f6fc;height:32px}#js_top_header_file_path_box .ce-path-btn#ceGotoPath{margin-right:6px}#js_top_header_file_path_box.ce-goto-path-active{height:60px}#js_top_header_file_path_box.ce-goto-path-active div#js_path_add_dir{height:32px}#js_top_header_file_path_box #ceGotoPathApp{position:absolute;top:40px}#js_top_panel_box #js_operate_box.ce-show-quick-entry{display:none!important;animation:ce-hide-hint .3s ease-in-out}.shortkey-info-dialog.ce-sid-active{font-size:14px;padding:0;max-height:66vh;overflow-y:auto}.ce-handle-create-dir label{padding:6px 30px 0!important;font-size:18px}.ce-handle-create-dir input{width:22px;height:22px;vertical-align:sub}.ce-handle-create-dir p{font-size:14px;color:#ff4949;margin-bottom:10px;padding-left:30px}.ce-selector-page li.ce-decorated:hover .ce-file-inj-container{opacity:1}.ce-selector-page li.ce-decorated .file-name{top:2px!important}.ce-selector-page li.ce-decorated .ce-file-inj-container{padding:2px;border-radius:4px;position:absolute;left:70px;top:2px;font-size:12px;opacity:.4}.ce-selector-page li.ce-decorated .ce-file-sha1{cursor:pointer;color:#909399}.ce-selector-page li.ce-decorated .ce-file-size{margin-left:8px;font-weight:700;color:#1890ff}';Et(g4);function Co(e){return Array.isArray?Array.isArray(e):Ly(e)==="[object Array]"}function w4(e){if(typeof e=="string")return e;let t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function y4(e){return e==null?"":w4(e)}function Jn(e){return typeof e=="string"}function Iy(e){return typeof e=="number"}function b4(e){return e===true||e===false||v4(e)&&Ly(e)=="[object Boolean]"}function Dy(e){return typeof e=="object"}function v4(e){return Dy(e)&&e!==null}function pn(e){return e!=null}function su(e){return !e.trim().length}function Ly(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const x4="Incorrect 'index' type",_4=e=>`Invalid value for key ${e}`,C4=e=>`Pattern length exceeds max of ${e}.`,k4=e=>`Missing ${e} property in key`,S4=e=>`Property 'weight' in key '${e}' must be a positive integer`,Fp=Object.prototype.hasOwnProperty;class $4{constructor(t){this._keys=[],this._keyMap={};let n=0;t.forEach(o=>{let i=Ty(o);this._keys.push(i),this._keyMap[i.id]=i,n+=i.weight;}),this._keys.forEach(o=>{o.weight/=n;});}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function Ty(e){let t=null,n=null,o=null,i=1,s=null;if(Jn(e)||Co(e))o=e,t=Np(e),n=Xu(e);else {if(!Fp.call(e,"name"))throw new Error(k4("name"));const r=e.name;if(o=r,Fp.call(e,"weight")&&(i=e.weight,i<=0))throw new Error(S4(r));t=Np(r),n=Xu(r),s=e.getFn;}return {path:t,id:n,weight:i,src:o,getFn:s}}function Np(e){return Co(e)?e:e.split(".")}function Xu(e){return Co(e)?e.join("."):e}function E4(e,t){let n=[],o=false;const i=(s,r,a)=>{if(pn(s))if(!r[a])n.push(s);else {let l=r[a];const c=s[l];if(!pn(c))return;if(a===r.length-1&&(Jn(c)||Iy(c)||b4(c)))n.push(y4(c));else if(Co(c)){o=true;for(let u=0,f=c.length;u<f;u+=1)i(c[u],r,a+1);}else r.length&&i(c,r,a+1);}};return i(e,Jn(t)?t.split("."):t,0),o?n:n[0]}const A4={includeMatches:false,findAllMatches:false,minMatchCharLength:1},P4={isCaseSensitive:false,ignoreDiacritics:false,includeScore:false,keys:[],shouldSort:true,sortFn:(e,t)=>e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1},I4={location:0,threshold:.6,distance:100},D4={useExtendedSearch:false,getFn:E4,ignoreLocation:false,ignoreFieldNorm:false,fieldNormWeight:1};var Te={...P4,...A4,...I4,...D4};const L4=/[^ ]+/g;function T4(e=1,t=3){const n=new Map,o=Math.pow(10,t);return {get(i){const s=i.match(L4).length;if(n.has(s))return n.get(s);const r=1/Math.pow(s,.5*e),a=parseFloat(Math.round(r*o)/o);return n.set(s,a),a},clear(){n.clear();}}}class Ed{constructor({getFn:t=Te.getFn,fieldNormWeight:n=Te.fieldNormWeight}={}){this.norm=T4(n,3),this.getFn=t,this.isCreated=false,this.setIndexRecords();}setSources(t=[]){this.docs=t;}setIndexRecords(t=[]){this.records=t;}setKeys(t=[]){this.keys=t,this._keysMap={},t.forEach((n,o)=>{this._keysMap[n.id]=o;});}create(){this.isCreated||!this.docs.length||(this.isCreated=true,Jn(this.docs[0])?this.docs.forEach((t,n)=>{this._addString(t,n);}):this.docs.forEach((t,n)=>{this._addObject(t,n);}),this.norm.clear());}add(t){const n=this.size();Jn(t)?this._addString(t,n):this._addObject(t,n);}removeAt(t){this.records.splice(t,1);for(let n=t,o=this.size();n<o;n+=1)this.records[n].i-=1;}getValueForItemAtKeyId(t,n){return t[this._keysMap[n]]}size(){return this.records.length}_addString(t,n){if(!pn(t)||su(t))return;let o={v:t,i:n,n:this.norm.get(t)};this.records.push(o);}_addObject(t,n){let o={i:n,$:{}};this.keys.forEach((i,s)=>{let r=i.getFn?i.getFn(t):this.getFn(t,i.path);if(pn(r)){if(Co(r)){let a=[];const l=[{nestedArrIndex:-1,value:r}];for(;l.length;){const{nestedArrIndex:c,value:u}=l.pop();if(pn(u))if(Jn(u)&&!su(u)){let f={v:u,i:c,n:this.norm.get(u)};a.push(f);}else Co(u)&&u.forEach((f,p)=>{l.push({nestedArrIndex:p,value:f});});}o.$[s]=a;}else if(Jn(r)&&!su(r)){let a={v:r,n:this.norm.get(r)};o.$[s]=a;}}}),this.records.push(o);}toJSON(){return {keys:this.keys,records:this.records}}}function My(e,t,{getFn:n=Te.getFn,fieldNormWeight:o=Te.fieldNormWeight}={}){const i=new Ed({getFn:n,fieldNormWeight:o});return i.setKeys(e.map(Ty)),i.setSources(t),i.create(),i}function M4(e,{getFn:t=Te.getFn,fieldNormWeight:n=Te.fieldNormWeight}={}){const{keys:o,records:i}=e,s=new Ed({getFn:t,fieldNormWeight:n});return s.setKeys(o),s.setIndexRecords(i),s}function Fr(e,{errors:t=0,currentLocation:n=0,expectedLocation:o=0,distance:i=Te.distance,ignoreLocation:s=Te.ignoreLocation}={}){const r=t/e.length;if(s)return r;const a=Math.abs(o-n);return i?r+a/i:a?1:r}function O4(e=[],t=Te.minMatchCharLength){let n=[],o=-1,i=-1,s=0;for(let r=e.length;s<r;s+=1){let a=e[s];a&&o===-1?o=s:!a&&o!==-1&&(i=s-1,i-o+1>=t&&n.push([o,i]),o=-1);}return e[s-1]&&s-o>=t&&n.push([o,s-1]),n}const ii=32;function B4(e,t,n,{location:o=Te.location,distance:i=Te.distance,threshold:s=Te.threshold,findAllMatches:r=Te.findAllMatches,minMatchCharLength:a=Te.minMatchCharLength,includeMatches:l=Te.includeMatches,ignoreLocation:c=Te.ignoreLocation}={}){if(t.length>ii)throw new Error(C4(ii));const u=t.length,f=e.length,p=Math.max(0,Math.min(o,f));let w=s,m=p;const y=a>1||l,v=y?Array(f):[];let E;for(;(E=e.indexOf(t,m))>-1;){let z=Fr(t,{currentLocation:E,expectedLocation:p,distance:i,ignoreLocation:c});if(w=Math.min(z,w),m=E+u,y){let ue=0;for(;ue<u;)v[E+ue]=1,ue+=1;}}m=-1;let L=[],P=1,D=u+f;const O=1<<u-1;for(let z=0;z<u;z+=1){let ue=0,me=D;for(;ue<me;)Fr(t,{errors:z,currentLocation:p+me,expectedLocation:p,distance:i,ignoreLocation:c})<=w?ue=me:D=me,me=Math.floor((D-ue)/2+ue);D=me;let ie=Math.max(1,p-me+1),F=r?f:Math.min(p+me,f)+u,U=Array(F+2);U[F+1]=(1<<z)-1;for(let le=F;le>=ie;le-=1){let ve=le-1,ke=n[e.charAt(ve)];if(y&&(v[ve]=+!!ke),U[le]=(U[le+1]<<1|1)&ke,z&&(U[le]|=(L[le+1]|L[le])<<1|1|L[le+1]),U[le]&O&&(P=Fr(t,{errors:z,currentLocation:ve,expectedLocation:p,distance:i,ignoreLocation:c}),P<=w)){if(w=P,m=ve,m<=p)break;ie=Math.max(1,2*p-m);}}if(Fr(t,{errors:z+1,currentLocation:p,expectedLocation:p,distance:i,ignoreLocation:c})>w)break;L=U;}const W={isMatch:m>=0,score:Math.max(.001,P)};if(y){const z=O4(v,a);z.length?l&&(W.indices=z):W.isMatch=false;}return W}function R4(e){let t={};for(let n=0,o=e.length;n<o;n+=1){const i=e.charAt(n);t[i]=(t[i]||0)|1<<o-n-1;}return t}const Aa=String.prototype.normalize?(e=>e.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"")):(e=>e);class Oy{constructor(t,{location:n=Te.location,threshold:o=Te.threshold,distance:i=Te.distance,includeMatches:s=Te.includeMatches,findAllMatches:r=Te.findAllMatches,minMatchCharLength:a=Te.minMatchCharLength,isCaseSensitive:l=Te.isCaseSensitive,ignoreDiacritics:c=Te.ignoreDiacritics,ignoreLocation:u=Te.ignoreLocation}={}){if(this.options={location:n,threshold:o,distance:i,includeMatches:s,findAllMatches:r,minMatchCharLength:a,isCaseSensitive:l,ignoreDiacritics:c,ignoreLocation:u},t=l?t:t.toLowerCase(),t=c?Aa(t):t,this.pattern=t,this.chunks=[],!this.pattern.length)return;const f=(w,m)=>{this.chunks.push({pattern:w,alphabet:R4(w),startIndex:m});},p=this.pattern.length;if(p>ii){let w=0;const m=p%ii,y=p-m;for(;w<y;)f(this.pattern.substr(w,ii),w),w+=ii;if(m){const v=p-ii;f(this.pattern.substr(v),v);}}else f(this.pattern,0);}searchIn(t){const{isCaseSensitive:n,ignoreDiacritics:o,includeMatches:i}=this.options;if(t=n?t:t.toLowerCase(),t=o?Aa(t):t,this.pattern===t){let y={isMatch:true,score:0};return i&&(y.indices=[[0,t.length-1]]),y}const{location:s,distance:r,threshold:a,findAllMatches:l,minMatchCharLength:c,ignoreLocation:u}=this.options;let f=[],p=0,w=false;this.chunks.forEach(({pattern:y,alphabet:v,startIndex:E})=>{const{isMatch:L,score:P,indices:D}=B4(t,y,v,{location:s+E,distance:r,threshold:a,findAllMatches:l,minMatchCharLength:c,includeMatches:i,ignoreLocation:u});L&&(w=true),p+=P,L&&D&&(f=[...f,...D]);});let m={isMatch:w,score:w?p/this.chunks.length:1};return w&&i&&(m.indices=f),m}}class Jo{constructor(t){this.pattern=t;}static isMultiMatch(t){return Up(t,this.multiRegex)}static isSingleMatch(t){return Up(t,this.singleRegex)}search(){}}function Up(e,t){const n=e.match(t);return n?n[1]:null}class F4 extends Jo{constructor(t){super(t);}static get type(){return "exact"}static get multiRegex(){return /^="(.*)"$/}static get singleRegex(){return /^=(.*)$/}search(t){const n=t===this.pattern;return {isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class N4 extends Jo{constructor(t){super(t);}static get type(){return "inverse-exact"}static get multiRegex(){return /^!"(.*)"$/}static get singleRegex(){return /^!(.*)$/}search(t){const o=t.indexOf(this.pattern)===-1;return {isMatch:o,score:o?0:1,indices:[0,t.length-1]}}}class U4 extends Jo{constructor(t){super(t);}static get type(){return "prefix-exact"}static get multiRegex(){return /^\^"(.*)"$/}static get singleRegex(){return /^\^(.*)$/}search(t){const n=t.startsWith(this.pattern);return {isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}class j4 extends Jo{constructor(t){super(t);}static get type(){return "inverse-prefix-exact"}static get multiRegex(){return /^!\^"(.*)"$/}static get singleRegex(){return /^!\^(.*)$/}search(t){const n=!t.startsWith(this.pattern);return {isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class z4 extends Jo{constructor(t){super(t);}static get type(){return "suffix-exact"}static get multiRegex(){return /^"(.*)"\$$/}static get singleRegex(){return /^(.*)\$$/}search(t){const n=t.endsWith(this.pattern);return {isMatch:n,score:n?0:1,indices:[t.length-this.pattern.length,t.length-1]}}}class H4 extends Jo{constructor(t){super(t);}static get type(){return "inverse-suffix-exact"}static get multiRegex(){return /^!"(.*)"\$$/}static get singleRegex(){return /^!(.*)\$$/}search(t){const n=!t.endsWith(this.pattern);return {isMatch:n,score:n?0:1,indices:[0,t.length-1]}}}class By extends Jo{constructor(t,{location:n=Te.location,threshold:o=Te.threshold,distance:i=Te.distance,includeMatches:s=Te.includeMatches,findAllMatches:r=Te.findAllMatches,minMatchCharLength:a=Te.minMatchCharLength,isCaseSensitive:l=Te.isCaseSensitive,ignoreDiacritics:c=Te.ignoreDiacritics,ignoreLocation:u=Te.ignoreLocation}={}){super(t),this._bitapSearch=new Oy(t,{location:n,threshold:o,distance:i,includeMatches:s,findAllMatches:r,minMatchCharLength:a,isCaseSensitive:l,ignoreDiacritics:c,ignoreLocation:u});}static get type(){return "fuzzy"}static get multiRegex(){return /^"(.*)"$/}static get singleRegex(){return /^(.*)$/}search(t){return this._bitapSearch.searchIn(t)}}class Ry extends Jo{constructor(t){super(t);}static get type(){return "include"}static get multiRegex(){return /^'"(.*)"$/}static get singleRegex(){return /^'(.*)$/}search(t){let n=0,o;const i=[],s=this.pattern.length;for(;(o=t.indexOf(this.pattern,n))>-1;)n=o+s,i.push([o,n-1]);const r=!!i.length;return {isMatch:r,score:r?0:1,indices:i}}}const Zu=[F4,Ry,U4,j4,H4,z4,N4,By],jp=Zu.length,V4=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,q4="|";function W4(e,t={}){return e.split(q4).map(n=>{let o=n.trim().split(V4).filter(s=>s&&!!s.trim()),i=[];for(let s=0,r=o.length;s<r;s+=1){const a=o[s];let l=false,c=-1;for(;!l&&++c<jp;){const u=Zu[c];let f=u.isMultiMatch(a);f&&(i.push(new u(f,t)),l=true);}if(!l)for(c=-1;++c<jp;){const u=Zu[c];let f=u.isSingleMatch(a);if(f){i.push(new u(f,t));break}}}return i})}const K4=new Set([By.type,Ry.type]);class G4{constructor(t,{isCaseSensitive:n=Te.isCaseSensitive,ignoreDiacritics:o=Te.ignoreDiacritics,includeMatches:i=Te.includeMatches,minMatchCharLength:s=Te.minMatchCharLength,ignoreLocation:r=Te.ignoreLocation,findAllMatches:a=Te.findAllMatches,location:l=Te.location,threshold:c=Te.threshold,distance:u=Te.distance}={}){this.query=null,this.options={isCaseSensitive:n,ignoreDiacritics:o,includeMatches:i,minMatchCharLength:s,findAllMatches:a,ignoreLocation:r,location:l,threshold:c,distance:u},t=n?t:t.toLowerCase(),t=o?Aa(t):t,this.pattern=t,this.query=W4(this.pattern,this.options);}static condition(t,n){return n.useExtendedSearch}searchIn(t){const n=this.query;if(!n)return {isMatch:false,score:1};const{includeMatches:o,isCaseSensitive:i,ignoreDiacritics:s}=this.options;t=i?t:t.toLowerCase(),t=s?Aa(t):t;let r=0,a=[],l=0;for(let c=0,u=n.length;c<u;c+=1){const f=n[c];a.length=0,r=0;for(let p=0,w=f.length;p<w;p+=1){const m=f[p],{isMatch:y,indices:v,score:E}=m.search(t);if(y){if(r+=1,l+=E,o){const L=m.constructor.type;K4.has(L)?a=[...a,...v]:a.push(v);}}else {l=0,r=0,a.length=0;break}}if(r){let p={isMatch:true,score:l/r};return o&&(p.indices=a),p}}return {isMatch:false,score:1}}}const ec=[];function J4(...e){ec.push(...e);}function tc(e,t){for(let n=0,o=ec.length;n<o;n+=1){let i=ec[n];if(i.condition(e,t))return new i(e,t)}return new Oy(e,t)}const Pa={AND:"$and",OR:"$or"},nc={PATH:"$path",PATTERN:"$val"},oc=e=>!!(e[Pa.AND]||e[Pa.OR]),Y4=e=>!!e[nc.PATH],Q4=e=>!Co(e)&&Dy(e)&&!oc(e),zp=e=>({[Pa.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function Fy(e,t,{auto:n=true}={}){const o=i=>{let s=Object.keys(i);const r=Y4(i);if(!r&&s.length>1&&!oc(i))return o(zp(i));if(Q4(i)){const l=r?i[nc.PATH]:s[0],c=r?i[nc.PATTERN]:i[l];if(!Jn(c))throw new Error(_4(l));const u={keyId:Xu(l),pattern:c};return n&&(u.searcher=tc(c,t)),u}let a={children:[],operator:s[0]};return s.forEach(l=>{const c=i[l];Co(c)&&c.forEach(u=>{a.children.push(o(u));});}),a};return oc(e)||(e=zp(e)),o(e)}function X4(e,{ignoreFieldNorm:t=Te.ignoreFieldNorm}){e.forEach(n=>{let o=1;n.matches.forEach(({key:i,norm:s,score:r})=>{const a=i?i.weight:null;o*=Math.pow(r===0&&a?Number.EPSILON:r,(a||1)*(t?1:s));}),n.score=o;});}function Z4(e,t){const n=e.matches;t.matches=[],pn(n)&&n.forEach(o=>{if(!pn(o.indices)||!o.indices.length)return;const{indices:i,value:s}=o;let r={indices:i,value:s};o.key&&(r.key=o.key.src),o.idx>-1&&(r.refIndex=o.idx),t.matches.push(r);});}function eR(e,t){t.score=e.score;}function tR(e,t,{includeMatches:n=Te.includeMatches,includeScore:o=Te.includeScore}={}){const i=[];return n&&i.push(Z4),o&&i.push(eR),e.map(s=>{const{idx:r}=s,a={item:t[r],refIndex:r};return i.length&&i.forEach(l=>{l(s,a);}),a})}class fs{constructor(t,n={},o){this.options={...Te,...n},this.options.useExtendedSearch,this._keyStore=new $4(this.options.keys),this.setCollection(t,o);}setCollection(t,n){if(this._docs=t,n&&!(n instanceof Ed))throw new Error(x4);this._myIndex=n||My(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight});}add(t){pn(t)&&(this._docs.push(t),this._myIndex.add(t));}remove(t=()=>false){const n=[];for(let o=0,i=this._docs.length;o<i;o+=1){const s=this._docs[o];t(s,o)&&(this.removeAt(o),o-=1,i-=1,n.push(s));}return n}removeAt(t){this._docs.splice(t,1),this._myIndex.removeAt(t);}getIndex(){return this._myIndex}search(t,{limit:n=-1}={}){const{includeMatches:o,includeScore:i,shouldSort:s,sortFn:r,ignoreFieldNorm:a}=this.options;let l=Jn(t)?Jn(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return X4(l,{ignoreFieldNorm:a}),s&&l.sort(r),Iy(n)&&n>-1&&(l=l.slice(0,n)),tR(l,this._docs,{includeMatches:o,includeScore:i})}_searchStringList(t){const n=tc(t,this.options),{records:o}=this._myIndex,i=[];return o.forEach(({v:s,i:r,n:a})=>{if(!pn(s))return;const{isMatch:l,score:c,indices:u}=n.searchIn(s);l&&i.push({item:s,idx:r,matches:[{score:c,value:s,norm:a,indices:u}]});}),i}_searchLogical(t){const n=Fy(t,this.options),o=(a,l,c)=>{if(!a.children){const{keyId:f,searcher:p}=a,w=this._findMatches({key:this._keyStore.get(f),value:this._myIndex.getValueForItemAtKeyId(l,f),searcher:p});return w&&w.length?[{idx:c,item:l,matches:w}]:[]}const u=[];for(let f=0,p=a.children.length;f<p;f+=1){const w=a.children[f],m=o(w,l,c);if(m.length)u.push(...m);else if(a.operator===Pa.AND)return []}return u},i=this._myIndex.records,s={},r=[];return i.forEach(({$:a,i:l})=>{if(pn(a)){let c=o(n,a,l);c.length&&(s[l]||(s[l]={idx:l,item:a,matches:[]},r.push(s[l])),c.forEach(({matches:u})=>{s[l].matches.push(...u);}));}}),r}_searchObjectList(t){const n=tc(t,this.options),{keys:o,records:i}=this._myIndex,s=[];return i.forEach(({$:r,i:a})=>{if(!pn(r))return;let l=[];o.forEach((c,u)=>{l.push(...this._findMatches({key:c,value:r[u],searcher:n}));}),l.length&&s.push({idx:a,item:r,matches:l});}),s}_findMatches({key:t,value:n,searcher:o}){if(!pn(n))return [];let i=[];if(Co(n))n.forEach(({v:s,i:r,n:a})=>{if(!pn(s))return;const{isMatch:l,score:c,indices:u}=o.searchIn(s);l&&i.push({score:c,key:t,value:s,idx:r,norm:a,indices:u});});else {const{v:s,n:r}=n,{isMatch:a,score:l,indices:c}=o.searchIn(s);a&&i.push({score:l,key:t,value:s,norm:r,indices:c});}return i}}fs.version="7.1.0";fs.createIndex=My;fs.parseIndex=M4;fs.config=Te;fs.parseQuery=Fy;J4(G4);const nR={class:"ce-goto-input-wrap"},oR=["disabled"],iR=["disabled"],sR={class:"ce-goto-sug"},rR=["onMousedown","sid"],aR={class:"ce-goto-sug-index"},lR={class:"ce-goto-sug-prefix"},uR={class:"ce-goto-sug-name"},cR=xe({__name:"GotoPath",setup(e){const t=V(false),n=V(false),o=V(null),i=V(null),s=V(""),r=V([]),a=V(false),l=Ke(()=>s.value.trim().length>0);let c="";Ht(async()=>{t.value=true,i.value?.focus(),window.addEventListener("message",async U=>{if(U.data.event===ot.listRendered){const le=await jt(false);le!==c&&(r.value=[],await z(false)),c=le;}});});async function u(U){if(console.log("[handleKeydown]",U.key),Kp(U),U.key==="Enter"){D.value>-1?me():await ie(s.value);return}if(U.key==="Escape"){await F();return}["ArrowUp","ArrowDown"].includes(U.key)?O(U):f(U);}const f=lt(async U=>{p();},200);async function p(){try{r.value=[],await z(!1);const U={keyword:"",parentId:await jt(!1),parentPath:hu(),isSubOfCurrent:!0};console.log("[getSug] searchData:",U);const Q=await L(U,!1);if(console.log("[searchData] items:",Q),!Q.length){Y({icon:"warning",text:"没有匹配的建议",timer:1500,position:"top-right"});return}const le=await w(Q,U);console.log("[searchData] sugs:",le),r.value=le,D.value=-1,await z(le.length>0);}catch(U){console.warn(U),await z(false),Y({icon:"error",text:U.toString(),timer:2e3,position:"top-right"});}}async function w(U,Q){const le=[];for(let Se=0;Se<U.length;Se++){const Ne=U[Se];le.push({id:Ne.id,prefix:Q.parentPath==="/"?"":Q.parentPath,name:Ne.name,active:false});}const ve=s.value.trim();if(!ve)return le;const ke=/^(\.\/)?[^\/]+/.test(ve),_e=fu(ve,"../");if(console.log("[toSug] isSubOfCurrent:",ke,"kwParentPath:",_e),ke||_e===Q.parentPath){const Se=new fs(le,{keys:["name"],threshold:.6,includeScore:true});let Ne=ve;if(_e===Q.parentPath){const T=ve.split(/[\\/]/).filter(Boolean);Ne=T[T.length-1];}const dt=Se.search(Ne);console.log("[toSug] fuse res:",dt);let we=false;return dt.forEach(T=>{T.score===void 0?(console.warn("[toSug] r.score is undefined:",T),we=true,T.score=0):T.score!==void 0&&isNaN(T.score)&&(console.warn("[toSug] r.score is NaN:",T),we=true,T.score=0);}),we&&dt.sort((T,pe)=>T.score-pe.score),dt.map(T=>T.item)}return le}const m=new Map,y=new Map;async function v(U){return m.get(U)||false}async function E(U,Q){m.set(U,Q);}async function L(U,Q){const le=y.get(U.parentPath);if(le)return console.log(`[getSubDirs] path "${U.parentPath}" is cached`),le.items;if(await v(U.parentPath))return console.warn(`[getSubDirs] path "${U.parentPath}" is loading`),[];await E(U.parentPath,true);try{const ve=wo({cid:U.parentId,limit:1150,show_dir:Oo.true}),ke=await id(ve);if(!ke.count)return [];const _e=[];for(let Se=0;Se<ke.data.length;Se++){const Ne=_i(ke.data[Se]);Ne.isDir&&_e.push(Ne);}return y.set(U.parentPath,{count:_e.length,dirPath:U.parentPath,dirId:U.parentId,items:_e}),_e}catch(ve){console.warn(ve);}finally{await E(U.parentPath,false);}return []}async function P(U,Q){console.log("[handleSugClick]",U,Q);const le=ia([U.prefix,U.name]);console.log("[handleSugClick] path:",le),await ie(le);}const D=V(-1);async function O(U){console.log("[navigateSug]",U.key),U.preventDefault(),U.stopPropagation();let Q=D.value;if(U.key==="ArrowUp")Q--;else if(U.key==="ArrowDown")Q++;else if(U.key==="Enter"){const ke=r.value[D.value];ke&&await P(ke,U);return}else return;Q<0?Q=0:Q>=r.value.length&&(Q=r.value.length-1),D.value=Q,r.value.forEach((ke,_e)=>{ke.active=_e===Q;});const le=r.value[Q];if(!le)return;o.value?.querySelector(`[sid="${le.id}"]`)?.scrollIntoView();}async function W(){s.value="",i.value?.focus(),await p();}async function z(U){a.value=U,U&&i.value?.focus();}async function ue(U){if(_0(U))return "0";const Q=hu();return U=Ua(U,Mo.unix),U=fu(Q,U,Mo.unix),await Bi(U,true)}async function me(){const U=r.value[D.value];if(!U)return;const Q=ia([U.prefix,U.name],Mo.unix);console.log("[gotoByCurrentSug] path:",Q),await ie(Q);}async function ie(U){if(!n.value){U=U.trim(),Y({text:"正在获取路径信息...",timer:0,position:"top-right"}),te.showLoading(),n.value=true;try{const Q=await ue(U);unsafeWindow.Main.GotoDir(1,Q,0,""),Y({icon:"success",text:"获取路径信息成功,现在打开...",timer:1e3,position:"top-right"}),i.value?.focus(),r.value=[],D.value=-1;}catch(Q){te.fire({icon:"error",title:"跳转失败",text:Q.message});}finally{te.hideLoading(),n.value=false;}}}async function F(){D.value>-1?(r.value.forEach(U=>U.active=false),D.value=-1,await z(false)):(document.querySelector("#ceGotoPathApp")?.style.setProperty("display","none"),document.querySelector(".ce-goto-path-active")?.classList.remove("ce-goto-path-active"),t.value=false);}return (U,Q)=>(_(),S("div",{ref_key:"refMain",ref:o,class:Le(["ce-goto-main",{"ce-goto-sug-shown":a.value}])},[d("div",nR,[q(d("input",{ref_key:"refInput",ref:i,"onUpdate:modelValue":Q[0]||(Q[0]=le=>s.value=le),class:"ce-goto-input",placeholder:"回车确认跳转 | Esc关闭 | 可搜索当前目录的子目录显示下拉列表,上下方向键选择",onKeydown:u},null,544),[[Ve,s.value]]),d("button",{type:"button",class:"ce-goto-input-btn","data-cmd":"clear",onClick:W,title:"清空输入框",disabled:!l.value},"清空",8,oR),d("button",{type:"button",class:"ce-goto-input-btn","data-cmd":"toggle",onClick:Q[1]||(Q[1]=le=>z(false)),title:"收起建议列表",disabled:!a.value},"收起",8,iR)]),d("div",sR,[(_(true),S($e,null,je(r.value,(le,ve)=>(_(),S("div",{key:ve,class:Le(["ce-goto-sug-item",{active:le.active}]),onMousedown:kn(ke=>P(le,ke),["left","stop","prevent"]),sid:le.id},[d("span",aR,B(ve+1),1),d("span",lR,B(le.prefix),1),Q[2]||(Q[2]=d("span",{class:"ce-goto-sep"},"/",-1)),d("span",uR,B(le.name),1)],42,rR))),128))])],2))}}),dR=Pe(cR,[["__file","GotoPath.vue"]]);async function fR(e){if(!vn())return;const t=await et("#js_top_header_file_path_box");e.showGotoButtonOnPathBar&&hR(e,t),e.showCopyButtonOnPathBar&&pR(e,t);}async function pR(e,t){const n="ceCopyPath";let o=t.querySelector(`#${n}`);const i=async()=>{const r=hu();gt(r),Y({icon:"success",text:"路径已复制",timer:1e3,position:"top-right"});};o||(o=await(async()=>{const r=ze(`<button type="button" class="pure-button button-mini ce-path-btn" id="${n}" title="复制路径">
<span>复制</span>
</button>`);return r.addEventListener("click",i),r})(),t.prepend(o));}async function hR(e,t){const n=t.querySelector(".top-file-path"),o="ceGotoPath";let i=t.querySelector(`#${o}`);const s=ro(dR),r="ceGotoPathApp",a=async()=>{await l();},l=async()=>{if(t.classList.toggle("ce-goto-path-active"),t.classList.contains("ce-goto-path-active"))await c();else {const p=t.querySelector(`#${r}`);p&&(p.style.display="none");}},c=async()=>{let p=t.querySelector(`#${r}`);p||(p=await f(),n.after(p)),p.querySelector(".ce-goto-main")?setTimeout(()=>{document.querySelector(".ce-goto-input")?.focus();},200):s.mount(p),p.style.display="block";},u=async()=>{const p=document.createElement("button");return p.className="pure-button button-mini ce-path-btn text-primary",p.id=o,p.title=`
【这是一个实验功能】
跳转到指定路径。使用:
- 空白、单个斜杠: 根目录
- 相对路径1: 开头不带斜杠,当前目录下的子路径
- 相对路径2: 开头带有../,当前目录的上级目录,可以多级
- 绝对路径: 开头带有斜杠,从根目录开始的路径
斜杠风格不限,支持模糊搜索当前目录的子目录。
回车键跳转,Esc键关闭输入框。`,p.innerHTML="<span>跳转</span>",p.addEventListener("click",a),p},f=async()=>ze(`<div id="${r}" style="width: 50%"/>`);i||(i=await u(),t.prepend(i));}async function mR(){if(!gR())return;const e=await ls();if($("body").addClass("ce-selector-page"),!e.showInfoOnQuickView)return;const t=await et("#js_file_list_ul");await Hp(e),new MutationObserver(async([o])=>{o.type==="childList"&&await Hp(e);}).observe(t,{childList:true});}function gR(e=location.href){return e.includes("ac=userfile")&&e.includes("ajax=1")}async function Hp(e){const t=yR();for(let n=0;n<t.length;n++){const o=t.eq(n),i=mn(o);i.isDir||await bR(e,o,i);}}function wR(){return $("#js_file_list_ul")}function yR(e){return wR().find("li:not(.ce-decorated)")}async function bR(e,t,n){const o=$('<div class="ce-file-inj-container"></div>');t.append(o),await vR(e,t,o,n),await xR(e,t,o,n),t.addClass("ce-decorated");}async function vR(e,t,n,o){if(!e.showSha1||!o.hash)return;t.addClass("ce-show-sha1"),t.find(".file-name");const i="文件SHA1,点击复制"+(e.clickSha1WithCtrlToFindRepeat?" (Ctrl+点击 查找重复文件)":""),s=ze(`
<span class="ce-file-sha1 ce-inj" title="${i}">${o.hash}</span>
`),r=()=>{gt(o.hash),Y({title:"复制SHA1",text:"已复制文件SHA1",icon:"success",timer:1500});};s.addEventListener("click",async a=>{a.preventDefault(),a.stopPropagation(),e.clickSha1WithCtrlToFindRepeat&&(a.metaKey||a.ctrlKey)?rd(o):r();}),n.append(s);}async function xR(e,t,n,o){const i=ze(`
<span class="ce-file-size ce-inj">${o.sizeDesc}</span>
`);n.append(i);}async function _R(){const e=await ls(),{host:t}=location;/115\.com$/.test(t)&&(console.log("[List] running...",e),(vn()||ko())&&SS(),mR(),fR(e),pS(e),setTimeout(async()=>{eS().then(()=>{mS(e),gS(e),wS(e);}).catch(n=>{console.error("awaitDataAPI error:",n);});},2e3),tS(e),iS(e),sS(e),rS(),aS(e),uS(e),yS(e),dS());}const CR='@charset "UTF-8";.ce-search-page .top-file-path .file-path{float:left}.ce-search-page .dir-tab.ce-btn-select{background:#fffcea;color:#2877f8;display:inline-block;height:32px;line-height:24px;font-size:12px;padding:4px 8px;box-sizing:border-box;border:1px solid #2877f8;border-radius:4px}.ce-search-page .dir-tab.ce-btn-select:hover{background:#ff0}.ce-search-page .list-header .header-size,.ce-search-page .list-header .header-typename,.ce-search-page .list-header .header-modified,.ce-search-page .list-header .header-directory{display:flex!important}.ce-search-page .list-header .header-typename .btn-sort{display:inline-flex!important;pointer-events:none}.ce-search-page .list-header .header-typename .btn-sort i{display:none!important}.ce-search-page .list-header .header-modified{pointer-events:none}.ce-search-page .list-header .header-modified [rel=time_title]{display:inline-flex!important}.ce-search-page .list-header .header-modified i.icon-operate,.ce-search-page .list-header .header-modified i[menu=sort_file]{display:none!important}';Et(CR);async function kR(e){const t=await et(".top-file-path");SR(e,t),$R(e,t);}async function SR(e,t){if(!e.showSelectTargetButtonOnPathBar)return;const n="ce-btn-select";let o=t.querySelector(`.${n}`);const i=async()=>{unsafeWindow.parent.Core.FileSelectDG.Open((r,a)=>{console.log("[Core.FileSelectDG.Open]",r,a);const l=r[r.length-1],c=ze(`
<a href="javascript:;" class="dir-tab" search_btn_file="${l.cid}" style="display: none;">
${l.cname}
</a>
`);t.querySelector(".file-path").append(c),c.click();},{select:1,nf:1,show_record:0,show_copy:1,btn_txt:"在该目录下搜索",select_txt:"搜索"});};o||(o=await(async()=>{const r=ze(`
<a href="javascript:;" class="dir-tab ${n}" title="选择指定目录进行搜索">选择目录</a>
`);return r.addEventListener("click",i),r})(),t.append(o));}async function $R(e,t){if(!e.showSelectAllDir)return;const n="ce-btn-select-dir";let o=t.querySelector(`.${n}`);const i=async r=>{r.preventDefault(),r.stopPropagation();const a=[],l=document.querySelectorAll('li[rel="item"][file_type="0"]');for(let c=0;c<l.length;c++)a.push($(l[c]));unsafeWindow.Main.List.RecheckFiles(a);};o||(o=await(async()=>{const a=ze(`
<button type="button" class="pure-button button-success button-small ${n}" title="仅会选中已加载的文件夹">选中全部文件夹</label>
`);return a.setAttribute("style","margin-left: 10px;"),a.addEventListener("click",i),a})(),t.append(o));}async function ER(e){let t=e.resultWidth.trim();if(t===""||window!==window.parent||new URL(window.location.href).searchParams.get("mode")!=="search")return;t=/^\d+$/.test(t)?`${t}px`:t;const o=await et("div.wrap-view");o&&(o.style.width=`${t}`);}async function AR(e){document.body.classList.add("ce-search-page"),parent.document.body.classList.add("ce-search-page");}async function PR(){const e=await ky();ER(e),ko()&&(console.log("[Search] running...",e),AR(),kR(e));}const IR="";Et(IR);async function DR(){console.log("[Tools] running...");}const LR="";Et(LR);async function TR(e){const t=async o=>{const i=ze(`<li pickcode="${o.pickCode}" style="padding:0px;"></li>`),s=ze(`
<a style="height:auto;text-decoration:none;padding:5px 0 5px 5px;">
<span style="word-break:break-all">${o.name}</span>
</a>
`);return s.href="/?hls=1&pickcode="+o.pickCode,s.setAttribute("title",o.name),i.appendChild(s),i};let n="";window.addEventListener("message",async o=>{if(o.data.event==="play"){const i=await et("ul#js-video_list"),s=o.data.body.id;if(n&&n===s)if(i.childElementCount){console.log(`[playSelected] same id: ${s} 但是播放列表已经渲染过了,忽略`);return}else console.warn(`[playSelected] same id: ${s} 但是播放列表为空,将会进行渲染`);n=s;const r=o.data.body.files;console.log(`[playSelected] id: ${s}, files: `,r);const a=await Promise.all(r.map(t));i?.append(...a);const l=document.querySelector(".video-playlist .vpl-container");l&&(l.style.display="block"),i?.querySelector("a")?.click();const u=document.querySelector("#js-video_container");u&&u.classList.remove("video-container-nolist");}});}async function MR(e){if(!e.defaultWebFull)return;const t=await et('[rel="web_fullscreen"]');t.querySelector('[rel="tooltips"]').innerText==="网页全屏"&&t.click();}async function OR(e){if(!e.defaultOpenPlayList)return;const t=await et("a#js_pl_control_expand");t.querySelector('[rel="tooltips"]').innerText==="展开播放列表"&&t.click();}async function BR(e){if(!e.defaultDefinition)return;const t=em[e.defaultDefinition],n=unsafeWindow.__HLS,o=n.setCurrentLevel;(async()=>{const s=await et('div[rel="level_menu"]'),r=await rc('a[btn="level"]',100,12e4,s);for(let a=0;a<r.length;a++){const l=r[a],c=l.classList.contains("current");if(l.textContent?.trim()===t&&!c){console.log("[setDefinition _first] 找到目标清晰度元素:",l),l.click();break}}})(),n.setCurrentLevel=s=>{const r=n.hls();if(!r||!r.levels){o(s);return}const a=[];r.levels.forEach(c=>{a.push({name:c.name,bitrate:c.bitrate});}),a.sort((c,u)=>c.bitrate-u.bitrate);let l=s;for(let c=0;c<a.length;c++)if(a[c].name===e.defaultDefinition){l=c;break}l!==s&&console.warn(`[level changed] ${s} -> ${l}`),o(l);};}async function RR(){const{host:e}=location;if(!Lc(e))return;console.log("[anxia] run");const t=await tm();MR(t),OR(t),TR(),BR(t);}const FR='@charset "UTF-8";.ce-share-page.ce-share-fresh .sharing-banner,.ce-share-page.ce-share-fresh .promptbar-caution{display:none!important}.ce-share-page .sharing-banner{max-width:1000px;margin:0 auto}.ce-share-page .ce-list-summary{background:#fefcea;color:#a37958;border-radius:4px;padding:0 6px;margin-left:10px}';Et(FR);async function NR(){const e=await Ay();mu()&&(console.log("[Share] running...",e),bw(e),u$(e),c$(e),xw(e),f$());}location.host==="115.com"&&(Number.isInteger||(Number.isInteger=e=>typeof e=="number"&&isFinite(e)&&Math.floor(e)===e),Number.parseFloat||(Number.parseFloat=e=>{const t=Number(e);return isNaN(t)?0:t}),Number.parseInt||(Number.parseInt=(e,t=10)=>{const n=parseInt(e,t);return isNaN(n)?0:n}),Number.isFinite||(Number.isFinite=e=>typeof e=="number"&&isFinite(e)),window.COMMONHEADERUSERINFO=window.COMMONHEADERUSERINFO||{});(async()=>{console.log("Cloud115 Enhancer launched!");const e=await vl(),t=Yu(e.limiterDuration,1,3e3,1),n=Yu(e.limiterPoints,1,300,1),o=t*500/n,i=wy({rateLimit:{...gy,duration:t,points:n,execEvenly:true,execEvenlyMinDelayMs:o}}),s=PL(i);I0(s),w$(),IE(),LD(),jL(),_R(),PR(),DR(),RR(),NR(),h4();})();
})();