115不大助手 (full)

Make 115 taerg again!

// ==UserScript==
// @name         115不大助手 (full)
// @namespace    com.cloud115.enhancer
// @version      0.8.9
// @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-config.ce-offline-config{max-height:70vh;overflow-y:auto}.ce-config.ce-offline-config .pure-control-group label{width:160px;text-align:left}.ce-config.ce-offline-config .ce-tips{margin-top:20px}.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,Gr=typeof GM_openInTab<"u"?GM_openInTab:void 0,xi=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,Da=typeof GM_xmlhttpRequest<"u"?GM_xmlhttpRequest:void 0,Yy={name:"115不大助手",version:"0.8.9"},gt=(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))(gt||{});const rc=Object.values(gt),qp=async(e,t)=>ic(e,t),Qy=async(e,t)=>ru(e,t),Wp=async e=>Ky(e),Xy=async()=>{for(const e of rc)await Wp(e);},Kp=async()=>{const e={};for(const t of rc)e[t]=await qp(t,{});return e};async function Zy(){const e=await Kp(),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 s=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(s._schema!=="pan115_enhancer_configs"){t("这不是一个脚本配置文件!");return}const i=[];for(const r of rc)i.push(r),s[r]&&await Xe.set(r,s[r]);e({data:s,importedKeys:i});},n.click();})}const Xe={get:qp,set:Qy,remove:Wp,clear:Xy,getAll:Kp};function Ta(e,...t){return new e(t[0])}async function qo(e,t,n){return new Promise(async(o,s)=>{if(typeof e!="function"){s("提供的参数`fulfill`不是一个Function!");return}let i=false;e(l=>{i=true,o(l);});let r=setInterval(async()=>{if(i){clearTimeout(a),clearInterval(r);return}e(l=>{clearTimeout(a),clearInterval(r),o(l);});},t),a=setTimeout(()=>{clearInterval(r),s("超时");},n);})}async function Mt(e){return new Promise(t=>{setTimeout(t,e);})}function lt(e,t,n){let o;return function(...s){const i=()=>{o=void 0,e.apply(this,s);};clearTimeout(o),o=setTimeout(i,t);}}function cs(e,t){t=t||window,t.postMessage(e);}function Zi(e,t=location.href){const n=new RegExp("(\\?|#|&)"+e+"=([^&#]*)(&|#|$)"),o=t.match(n);return o?o[2]:""}function ds(){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 Gp(e){const t=e.target;e.key==="a"&&(e.ctrlKey||e.metaKey)&&t.select();}function Jp(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement}function nb(e){e.addEventListener("keydown",t=>{const n=t.target;Jp(n)&&Gp(t);});}function Yp(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 Qp(e,t=document,n=XPathResult.ORDERED_NODE_SNAPSHOT_TYPE){const o=[],s=document.evaluate(e,t,null,n,null);for(let i=0;i<s.snapshotLength;i++){const r=s.snapshotItem(i);r&&o.push(r);}return o}async function et(e,t=100,n=12e4,o=document){const s=await ac(e,t,n,o);if(s.length)return s[0];throw new Error(`未找到元素:${e}`)}async function ac(e,t=100,n=12e4,o=document){const s=e.indexOf("//")===0;function i(r){if(s){const a=Qp(e);a.length>0&&r(a);}else {const a=o.querySelectorAll(e);a.length&&r(Array.from(a));}}try{return await qo(i,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 s(i){if(o){const r=Qp(e);r.length>0&&i(unsafeWindow.$(r));}else {const r=unsafeWindow.$(e);r.length&&i(r);}}try{return await qo(s,t,n)}catch(i){throw console.warn("[findWithJQuery]",i),new Error(`查找元素超时:${e}`)}}async function sb(e,t,n){const o=await et(e),s=new MutationObserver(t);return n={attributes:false,childList:true,subtree:false,...n},s.observe(o,n),s}function Ue(e){return document.querySelector(e)}function ib(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 Jr(e,t,n="text/plain"){const o=document.createElement("a");document.body.appendChild(o),o.setAttribute("style","display:none");const s=new Blob([e],{type:n}),i=window.URL.createObjectURL(s);o.href=i,o.download=t,o.click(),window.URL.revokeObjectURL(i);}function Ws(e,t=2){if(Number.isNaN(e)||(e=typeof e=="string"?parseInt(e):e,!e))return "0";const n=1024,o=t,s=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],i=Math.floor(Math.log(e)/Math.log(n));return parseFloat((e/Math.pow(n,i)).toFixed(o))+" "+s[i]}function Pd(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 s=parseFloat(o[1]),i=o[2].toUpperCase(),r=t.indexOf(i);if(r<0)throw new Error(`无效的文件大小!${e}`);return s*Math.pow(1024,r)}function Xp(e){return e?rb.indexOf(e.toLowerCase())>-1:false}function Zp(e){return e?ab.indexOf(e.toLowerCase())>-1:false}function eh(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 Xp(t)?"video":eh(t)?"audio":Zp(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 s="";this.icon&&this.showIcon&&(this.icon.match(/^(http|https|data:image)/)?s=`<img class="ce-menu-icon" src="${this.icon}" referrerpolicy="no-referrer" />`:this.icon.match(/^data-text:/)?s=`<i class="ce-menu-icon">${this.icon.replace(/^data-text:/,"")}</i>`:s=`<i class="ce-menu-icon ${this.icon}"></i>`),o.innerHTML=n.replace(/{key}/g,this.key).replace(/{label}/g,this.label).replace(/{icon}/g,s);const i=o.firstElementChild;if(s&&i.classList.add("ce-menu-has-icon"),i.setAttribute("title",this.title||""),this.onClick&&(i.addEventListener("click",async r=>{this.onClick&&this.onClick(this,r);}),i.addEventListener("auxclick",async r=>{this.onClick&&this.onClick(this,r);}),i.addEventListener("mousedown",r=>{r.stopPropagation();})),this.onMouseOver&&i.addEventListener("mouseover",async r=>{this.onMouseOver&&this.onMouseOver(this,r);}),this.onMouseOut&&i.addEventListener("mouseout",async r=>{this.onMouseOut&&this.onMouseOut(this,r);}),this.subItems&&this.subItems.length>0){const r=i.querySelector(".sub-items"),a=[];for(const l of this.subItems){const c=await l.render();a.push(c);}r?.append(...a);}return i}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"),s=o.find(".ce-menu-dropdown");o.addClass("ce-menu-dropdown-opened"),s.addClass("ce-menu-dropdown-active");}async function Ma(e,t){t.stopPropagation(),t.preventDefault();const n=t.target,o=$(n).closest(".ce-menu-parent"),s=o.find(".ce-menu-dropdown");o.removeClass("ce-menu-dropdown-opened"),s.removeClass("ce-menu-dropdown-active");}class db extends wn{isDivider=true}class er{items=[];siblingSelector="";position=bo.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 s=[];document.querySelectorAll("#js_data_list .list-contents > ul > li .file-opr:not([ce-done])").forEach(i=>{s.push(i);}),s.length&&await this.perform(s);}},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===bo.after&&(o=o.reverse());for(let s=0;s<o.length;s++){const i=o[s];if(!await this.shouldInjectMenuItem(t,i))continue;const r=await i.render();this.position===bo.before?n.insertAdjacentElement("beforebegin",r):n.insertAdjacentElement("afterend",r),await i.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?Xp(o)||eh(o)||Zp(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=Ma;}}class lc 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);},s=(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);},i=(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=s,this.subItemsLocator=i);}}class yb extends er{menuType=Ie.listItemContext}/*!
  * sweetalert2 v11.22.4
  * Released under the MIT License.
  */function th(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 Id(e,t){return e.get(th(e,t))}function vb(e,t,n){bb(e,t),t.set(e,n);}function xb(e,t,n){return e.set(th(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);}),nh="swal2-",$b=["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"],V=$b.reduce((e,t)=>(e[t]=nh+t,e),{}),Sb=["success","warning","info","question","error"],Yr=Sb.reduce((e,t)=>(e[t]=nh+t,e),{}),oh="SweetAlert2:",uc=e=>e.charAt(0).toUpperCase()+e.slice(1),Gt=e=>{console.warn(`${oh} ${typeof e=="object"?e.join(" "):e}`);},vs=e=>{console.error(`${oh} ${e}`);},Dd=[],Eb=e=>{Dd.includes(e)||(Dd.push(e),Gt(e));},sh=(e,t=null)=>{Eb(`"${e}" is deprecated and will be removed in the next major release.${t?` Use "${t}" instead.`:""}`);},Oa=e=>typeof e=="function"?e():e,cc=e=>e&&typeof e.toPromise=="function",or=e=>cc(e)?e.toPromise():Promise.resolve(e),dc=e=>e&&Promise.resolve(e)===e,Yt=()=>document.body.querySelector(`.${V.container}`),sr=e=>{const t=Yt();return t?t.querySelector(e):null},yn=e=>sr(`.${e}`),Je=()=>yn(V.popup),ei=()=>yn(V.icon),Ab=()=>yn(V["icon-content"]),ih=()=>yn(V.title),fc=()=>yn(V["html-container"]),rh=()=>yn(V.image),pc=()=>yn(V["progress-steps"]),Ba=()=>yn(V["validation-message"]),to=()=>sr(`.${V.actions} .${V.confirm}`),ti=()=>sr(`.${V.actions} .${V.cancel}`),xs=()=>sr(`.${V.actions} .${V.deny}`),Pb=()=>yn(V["input-label"]),ni=()=>sr(`.${V.loader}`),ir=()=>yn(V.actions),ah=()=>yn(V.footer),Ra=()=>yn(V["timer-progress-bar"]),hc=()=>yn(V.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
`,mc=()=>{const e=Je();if(!e)return [];const t=e.querySelectorAll('[tabindex]:not([tabindex="-1"]):not([tabindex="0"])'),n=Array.from(t).sort((i,r)=>{const a=parseInt(i.getAttribute("tabindex")||"0"),l=parseInt(r.getAttribute("tabindex")||"0");return a>l?1:a<l?-1:0}),o=e.querySelectorAll(Ib),s=Array.from(o).filter(i=>i.getAttribute("tabindex")!=="-1");return [...new Set(n.concat(s))].filter(i=>rn(i))},gc=()=>wo(document.body,V.shown)&&!wo(document.body,V["toast-shown"])&&!wo(document.body,V["no-backdrop"]),Fa=()=>{const e=Je();return e?wo(e,V.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"),s=o.querySelector("head");s&&Array.from(s.childNodes).forEach(r=>{e.appendChild(r);});const i=o.querySelector("body");i&&Array.from(i.childNodes).forEach(r=>{r instanceof HTMLVideoElement||r instanceof HTMLAudioElement?e.appendChild(r.cloneNode(true)):e.appendChild(r);});}},wo=(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},Tb=(e,t)=>{Array.from(e.classList).forEach(n=>{!Object.values(V).includes(n)&&!Object.values(Yr).includes(n)&&!Object.values(t.showClass||{}).includes(n)&&e.classList.remove(n);});},hn=(e,t,n)=>{if(Tb(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);}},Na=(e,t)=>{if(!t)return null;switch(t){case "select":case "textarea":case "file":return e.querySelector(`.${V.popup} > .${V[t]}`);case "checkbox":return e.querySelector(`.${V.popup} > .${V.checkbox} input`);case "radio":return e.querySelector(`.${V.popup} > .${V.radio} input:checked`)||e.querySelector(`.${V.popup} > .${V.radio} input:first-child`);case "range":return e.querySelector(`.${V.popup} > .${V.range} input`);default:return e.querySelector(`.${V.popup} > .${V.input}`)}},lh=e=>{if(e.focus(),e.type!=="file"){const t=e.value;e.value="",e.value=t;}},uh=(e,t,n)=>{!e||!t||(typeof t=="string"&&(t=t.split(/\s+/).filter(Boolean)),t.forEach(o=>{Array.isArray(e)?e.forEach(s=>{n?s.classList.add(o):s.classList.remove(o);}):n?e.classList.add(o):e.classList.remove(o);}));},Qe=(e,t)=>{uh(e,t,true);},Pn=(e,t)=>{uh(e,t,false);},To=(e,t)=>{const n=Array.from(e.children);for(let o=0;o<n.length;o++){const s=n[o];if(s instanceof HTMLElement&&wo(s,t))return s}},rs=(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");},wc=(e,t="block")=>{e&&new MutationObserver(()=>{rr(e,e.innerHTML,t);}).observe(e,{childList:true,subtree:true});},Td=(e,t,n,o)=>{const s=e.querySelector(t);s&&s.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)),Lb=()=>!rn(to())&&!rn(xs())&&!rn(ti()),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},ch=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},yc=(e,t=false)=>{const n=Ra();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=Ra();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="${V.title}" aria-describedby="${V["html-container"]}" class="${V.popup}" tabindex="-1">
   <button type="button" class="${V.close}"></button>
   <ul class="${V["progress-steps"]}"></ul>
   <div class="${V.icon}"></div>
   <img class="${V.image}" />
   <h2 class="${V.title}" id="${V.title}"></h2>
   <div class="${V["html-container"]}" id="${V["html-container"]}"></div>
   <input class="${V.input}" id="${V.input}" />
   <input type="file" class="${V.file}" />
   <div class="${V.range}">
     <input type="range" />
     <output></output>
   </div>
   <select class="${V.select}" id="${V.select}"></select>
   <div class="${V.radio}"></div>
   <label class="${V.checkbox}">
     <input type="checkbox" id="${V.checkbox}" />
     <span class="${V.label}"></span>
   </label>
   <textarea class="${V.textarea}" id="${V.textarea}"></textarea>
   <div class="${V["validation-message"]}" id="${V["validation-message"]}"></div>
   <div class="${V.actions}">
     <div class="${V.loader}"></div>
     <button type="button" class="${V.confirm}"></button>
     <button type="button" class="${V.deny}"></button>
     <button type="button" class="${V.cancel}"></button>
   </div>
   <div class="${V.footer}"></div>
   <div class="${V["timer-progress-bar-container"]}">
     <div class="${V["timer-progress-bar"]}"></div>
   </div>
 </div>
`.replace(/(^|\n)\s*/g,""),Fb=()=>{const e=Yt();return e?(e.remove(),Pn([document.documentElement,document.body],[V["no-backdrop"],V["toast-shown"],V["has-column"]]),true):false},Yo=()=>{De.currentInstance.resetValidationMessage();},Nb=()=>{const e=Je(),t=To(e,V.input),n=To(e,V.file),o=e.querySelector(`.${V.range} input`),s=e.querySelector(`.${V.range} output`),i=To(e,V.select),r=e.querySelector(`.${V.checkbox} input`),a=To(e,V.textarea);t.oninput=Yo,n.onchange=Yo,i.onchange=Yo,r.onchange=Yo,a.oninput=Yo,o.oninput=()=>{Yo(),s.value=o.value;},o.onchange=()=>{Yo(),s.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(),V.rtl);},Hb=e=>{const t=Fb();if(Bb()){vs("SweetAlert2 requires document to initialize");return}const n=document.createElement("div");n.className=V.container,t&&Qe(n,V["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();},bc=(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=ir(),o=ni();!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=to(),s=xs(),i=ti();!o||!s||!i||($l(o,"confirm",n),$l(s,"deny",n),$l(i,"cancel",n),Gb(o,s,i,n),n.reverseButtons&&(n.toast?(e.insertBefore(i,o),e.insertBefore(s,o)):(e.insertBefore(i,t),e.insertBefore(s,t),e.insertBefore(o,t))));}function Gb(e,t,n,o){if(!o.buttonsStyling){Pn([e,t,n],V.styled);return}Qe([e,t,n],V.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 $l(e,t,n){const o=uc(t);rr(e,n[`show${o}Button`],"inline-block"),bn(e,n[`${t}ButtonText`]||""),e.setAttribute("aria-label",n[`${t}ButtonAriaLabel`]||""),e.className=V[t],hn(e,n,`${t}Button`);}const Jb=(e,t)=>{const n=hc();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],V["no-backdrop"]);}function Xb(e,t){t&&(t in V?Qe(e,V[t]):(Gt('The "position" parameter is not valid, defaulting to "center"'),Qe(e,V.center)));}function Zb(e,t){t&&Qe(e,V[`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),s=!o||t.input!==o.input;ev.forEach(i=>{const r=To(n,V[i]);r&&(sv(i,t.inputAttributes),r.className=V[i],s&&Ut(r));}),t.input&&(s&&nv(t),iv(t));},nv=e=>{if(!e.input)return;if(!bt[e.input]){vs(`Unexpected type of input! Expected ${Object.keys(bt).join(" | ")}, got "${e.input}"`);return}const t=dh(e.input);if(!t)return;const n=bt[e.input](t,e);Pt(t),e.inputAutoFocus&&setTimeout(()=>{lh(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);}},sv=(e,t)=>{const n=Je();if(!n)return;const o=Na(n,e);if(o){ov(o);for(const s in t)o.setAttribute(s,t[s]);}},iv=e=>{if(!e.input)return;const t=dh(e.input);t&&hn(t,e,"input");},vc=(e,t)=>{!e.placeholder&&t.inputPlaceholder&&(e.placeholder=t.inputPlaceholder);},ar=(e,t,n)=>{if(n.inputLabel){const o=document.createElement("label"),s=V["input-label"];o.setAttribute("for",e.id),o.className=s,typeof n.customClass=="object"&&Qe(o,n.customClass.inputLabel),o.innerText=n.inputLabel,t.insertAdjacentElement("beforebegin",o);}},dh=e=>{const t=Je();if(t)return To(t,V[e]||V.input)},Qr=(e,t)=>{["string","number"].includes(typeof t)?e.value=`${t}`:dc(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)=>(Qr(e,t.inputValue),ar(e,e,t),vc(e,t),e.type=t.input,e);bt.file=(e,t)=>(ar(e,e,t),vc(e,t),e);bt.range=(e,t)=>{const n=e.querySelector("input"),o=e.querySelector("output");return Qr(n,t.inputValue),n.type=t.input,Qr(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=Na(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)=>{Qr(e,t.inputValue),vc(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),s=()=>{if(!document.body.contains(e))return;const i=e.offsetWidth+n(e);i>o?Je().style.width=`${i}px`:rs(Je(),"width",t.width);};new MutationObserver(s).observe(e,{attributes:true,attributeFilter:["style"]});}}),e};const rv=(e,t)=>{const n=fc();n&&(wc(n),hn(n,t,"htmlContainer"),t.html?(bc(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=ah();n&&(wc(n),rr(n,t.footer,"block"),t.footer&&bc(t.footer,n),hn(n,t,"footer"));},lv=(e,t)=>{const n=ct.innerParams.get(e),o=ei();if(!o)return;if(n&&t.icon===n.icon){Md(o,t),Ld(o,t);return}if(!t.icon&&!t.iconHtml){Ut(o);return}if(t.icon&&Object.keys(Yr).indexOf(t.icon)===-1){vs(`Unknown icon! Expected "success", "error", "warning", "info" or "question", got "${t.icon}"`),Ut(o);return}Pt(o),Md(o,t),Ld(o,t),Qe(o,t.showClass&&t.showClass.icon),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",fh);},Ld=(e,t)=>{for(const[n,o]of Object.entries(Yr))t.icon!==n&&Pn(e,o);Qe(e,t.icon&&Yr[t.icon]),dv(e,t),fh(),hn(e,t,"icon");},fh=()=>{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>
`,Md=(e,t)=>{if(!t.icon&&!t.iconHtml)return;let n=e.innerHTML,o="";t.iconHtml?o=Od(t.iconHtml):t.icon==="success"?(o=uv(t),n=n.replace(/ style=".*?"/g,"")):t.icon==="error"?o=cv:t.icon&&(o=Od({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"])Td(e,n,"background-color",t.iconColor);Td(e,".swal2-success-ring","border-color",t.iconColor);}},Od=e=>`<div class="${V["icon-content"]}">${e}</div>`,fv=(e,t)=>{const n=rh();if(n){if(!t.imageUrl){Ut(n);return}Pt(n,""),n.setAttribute("src",t.imageUrl),n.setAttribute("alt",t.imageAlt||""),rs(n,"width",t.imageWidth),rs(n,"height",t.imageHeight),n.className=V.image,hn(n,t,"image");}};let xc=false,ph=0,hh=0,mh=0,gh=0;const pv=e=>{e.addEventListener("mousedown",Xr),document.body.addEventListener("mousemove",Zr),e.addEventListener("mouseup",ea),e.addEventListener("touchstart",Xr),document.body.addEventListener("touchmove",Zr),e.addEventListener("touchend",ea);},hv=e=>{e.removeEventListener("mousedown",Xr),document.body.removeEventListener("mousemove",Zr),e.removeEventListener("mouseup",ea),e.removeEventListener("touchstart",Xr),document.body.removeEventListener("touchmove",Zr),e.removeEventListener("touchend",ea);},Xr=e=>{const t=Je();if(e.target===t||ei().contains(e.target)){xc=true;const n=wh(e);ph=n.clientX,hh=n.clientY,mh=parseInt(t.style.insetInlineStart)||0,gh=parseInt(t.style.insetBlockStart)||0,Qe(t,"swal2-dragging");}},Zr=e=>{const t=Je();if(xc){let{clientX:n,clientY:o}=wh(e);t.style.insetInlineStart=`${mh+(n-ph)}px`,t.style.insetBlockStart=`${gh+(o-hh)}px`;}},ea=()=>{const e=Je();xc=false,Pn(e,"swal2-dragging");},wh=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){rs(n,"width",t.width),o.style.width="100%";const s=ni();s&&o.insertBefore(s,ei());}else rs(o,"width",t.width);rs(o,"padding",t.padding),t.color&&(o.style.color=t.color),t.background&&(o.style.background=t.background),Ut(Ba()),gv(o,t),t.draggable&&!t.toast?(Qe(o,V.draggable),pv(o)):(Pn(o,V.draggable),hv(o));}},gv=(e,t)=>{const n=t.showClass||{};e.className=`${V.popup} ${rn(e)?n.popup:""}`,t.toast?(Qe([document.documentElement,document.body],V["toast-shown"]),Qe(e,V.toast)):Qe(e,V.modal),hn(e,t,"popup"),typeof t.customClass=="string"&&Qe(e,t.customClass),t.icon&&Qe(e,V[`icon-${t.icon}`]);},wv=(e,t)=>{const n=pc();if(!n)return;const{progressSteps:o,currentProgressStep:s}=t;if(!o||o.length===0||s===void 0){Ut(n);return}Pt(n),n.textContent="",s>=o.length&&Gt("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),o.forEach((i,r)=>{const a=yv(i);if(n.appendChild(a),r===s&&Qe(a,V["active-progress-step"]),r!==o.length-1){const l=bv(t);n.appendChild(l);}});},yv=e=>{const t=document.createElement("li");return Qe(t,V["progress-step"]),bn(t,e),t},bv=e=>{const t=document.createElement("li");return Qe(t,V["progress-step-line"]),e.progressStepsDistance&&rs(t,"width",e.progressStepsDistance),t},vv=(e,t)=>{const n=ih();n&&(wc(n),rr(n,t.title||t.titleText,"block"),t.title&&bc(t.title,n),t.titleText&&(n.innerText=t.titleText),hn(n,t,"title"));},yh=(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()),bh=()=>{var e;return (e=to())===null||e===void 0?void 0:e.click()},_v=()=>{var e;return (e=xs())===null||e===void 0?void 0:e.click()},Cv=()=>{var e;return (e=ti())===null||e===void 0?void 0:e.click()},oi=Object.freeze({cancel:"cancel",backdrop:"backdrop",close:"close",esc:"esc",timer:"timer"}),vh=e=>{e.keydownTarget&&e.keydownHandlerAdded&&(e.keydownTarget.removeEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=false);},kv=(e,t,n)=>{vh(e),t.toast||(e.keydownHandler=o=>Sv(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=mc();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();},xh=["ArrowRight","ArrowDown"],$v=["ArrowLeft","ArrowUp"],Sv=(e,t,n)=>{e&&(t.isComposing||t.keyCode===229||(e.stopKeydownPropagation&&t.stopPropagation(),t.key==="Enter"?Ev(t,e):t.key==="Tab"?Av(t):[...xh,...$v].includes(t.key)?Pv(t.key):t.key==="Escape"&&Iv(t,e,n)));},Ev=(e,t)=>{if(!Oa(t.allowEnterKey))return;const n=Na(Je(),t.input);if(e.target&&n&&e.target instanceof HTMLElement&&e.target.outerHTML===n.outerHTML){if(["textarea","file"].includes(t.input))return;bh(),e.preventDefault();}},Av=e=>{const t=e.target,n=mc();let o=-1;for(let s=0;s<n.length;s++)if(t===n[s]){o=s;break}e.shiftKey?uu(o,-1):uu(o,1),e.stopPropagation(),e.preventDefault();},Pv=e=>{const t=ir(),n=to(),o=xs(),s=ti();if(!t||!n||!o||!s)return;const i=[n,o,s];if(document.activeElement instanceof HTMLElement&&!i.includes(document.activeElement))return;const r=xh.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(),Oa(t.allowEscapeKey)&&n(oi.esc);};var Ks={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"));});},_h=()=>{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");});},Ch=typeof window<"u"&&!!window.GestureEvent,Tv=()=>{if(Ch&&!wo(document.body,V.iosfix)){const e=document.body.scrollTop;document.body.style.top=`${e*-1}px`,Qe(document.body,V.iosfix),Lv();}},Lv=()=>{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=fc();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(wo(document.body,V.iosfix)){const e=parseInt(document.body.style.top,10);Pn(document.body,V.iosfix),document.body.style.top="",document.body.scrollTop=e*-1;}},Fv=()=>{const e=document.createElement("div");e.className=V["scrollbar-measure"],document.body.appendChild(e);const t=e.getBoundingClientRect().width-e.clientWidth;return document.body.removeChild(e),t};let Ls=null;const Nv=e=>{Ls===null&&(document.body.scrollHeight>window.innerHeight||e==="scroll")&&(Ls=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=`${Ls+Fv()}px`);},Uv=()=>{Ls!==null&&(document.body.style.paddingRight=`${Ls}px`,Ls=null);};function kh(e,t,n,o){Fa()?Bd(e,o):(kb(n).then(()=>Bd(e,o)),vh(De)),Ch?(t.setAttribute("style","display:none !important"),t.removeAttribute("class"),t.innerHTML=""):t.remove(),gc()&&(Uv(),Rv(),_h()),jv();}function jv(){Pn([document.documentElement,document.body],[V.shown,V["height-auto"],V["no-backdrop"],V["toast-shown"]]);}function Lo(e){e=Hv(e);const t=Ks.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||wo(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 $h(e){const t=Ks.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 s=Yt(),i=ch(t);typeof n.willClose=="function"&&n.willClose(t),(o=De.eventEmitter)===null||o===void 0||o.emit("willClose",t),i?qv(e,t,s,n.returnFocus,n.didClose):kh(e,s,n.returnFocus,n.didClose);},qv=(e,t,n,o,s)=>{De.swalCloseEventFinishedCallback=kh.bind(null,e,n,o,s);const i=function(r){if(r.target===t){var a;(a=De.swalCloseEventFinishedCallback)===null||a===void 0||a.call(De),delete De.swalCloseEventFinishedCallback,t.removeEventListener("animationend",i),t.removeEventListener("transitionend",i);}};t.addEventListener("animationend",i),t.addEventListener("transitionend",i);},Bd=(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();});},Gs=e=>{let t=Je();if(t||new Y,t=Je(),!t)return;const n=ni();Fa()?Ut(ei()):Wv(t,e),Pt(n),t.setAttribute("data-loading","true"),t.setAttribute("aria-busy","true"),t.focus();},Wv=(e,t)=>{const n=ir(),o=ni();!n||!o||(!t&&rn(to())&&(t=to()),Pt(n),t&&(Ut(t),o.setAttribute("data-button-to-replace",t.className),n.insertBefore(o,t)),Qe([e,n],V.loading));},Kv=(e,t)=>{t.input==="select"||t.input==="radio"?Xv(e,t):["text","email","number","tel","textarea"].some(n=>n===t.input)&&(cc(t.inputValue)||dc(t.inputValue))&&(Gs(to()),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=s=>{t.input==="select"?e1(n,ta(s),t):t.input==="radio"&&t1(n,ta(s),t);};cc(t.inputOptions)||dc(t.inputOptions)?(Gs(to()),or(t.inputOptions).then(s=>{e.hideLoading(),o(s);})):typeof t.inputOptions=="object"?o(t.inputOptions):vs(`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=>{vs(`Error in inputValue promise: ${o}`),n.value="",Pt(n),n.focus(),e.hideLoading();}));};function e1(e,t,n){const o=To(e,V.select);if(!o)return;const s=(i,r,a)=>{const l=document.createElement("option");l.value=a,bn(l,r),l.selected=Sh(a,n.inputValue),i.appendChild(l);};t.forEach(i=>{const r=i[0],a=i[1];if(Array.isArray(a)){const l=document.createElement("optgroup");l.label=r,l.disabled=false,o.appendChild(l),a.forEach(c=>s(l,c[1],c[0]));}else s(o,a,r);}),o.focus();}function t1(e,t,n){const o=To(e,V.radio);if(!o)return;t.forEach(i=>{const r=i[0],a=i[1],l=document.createElement("input"),c=document.createElement("label");l.type="radio",l.name=V.radio,l.value=r,Sh(r,n.inputValue)&&(l.checked=true);const u=document.createElement("span");bn(u,a),u.className=V.label,c.appendChild(l),c.appendChild(u),o.appendChild(c);});const s=o.querySelectorAll("input");s.length&&s[0].focus();}const ta=e=>{const t=[];return e instanceof Map?e.forEach((n,o)=>{let s=n;typeof s=="object"&&(s=ta(s)),t.push([o,s]);}):Object.keys(e).forEach(n=>{let o=e[n];typeof o=="object"&&(o=ta(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?Eh(e,"confirm"):Cc(e,true);},o1=e=>{const t=ct.innerParams.get(e);e.disableButtons(),t.returnInputValueOnDeny?Eh(e,"deny"):_c(e,false);},s1=(e,t)=>{e.disableButtons(),t(oi.cancel);},Eh=(e,t)=>{const n=ct.innerParams.get(e);if(!n.input){vs(`The "input" parameter is needed to be set when using returnInputValueOn${uc(t)}`);return}const o=e.getInput(),s=Gv(e,n);n.inputValidator?i1(e,s,t):o&&!o.checkValidity()?(e.enableButtons(),e.showValidationMessage(n.validationMessage||o.validationMessage)):t==="deny"?_c(e,s):Cc(e,s);},i1=(e,t,n)=>{const o=ct.innerParams.get(e);e.disableInput(),Promise.resolve().then(()=>or(o.inputValidator(t,o.validationMessage))).then(i=>{e.enableButtons(),e.enableInput(),i?e.showValidationMessage(i):n==="deny"?_c(e,t):Cc(e,t);});},_c=(e,t)=>{const n=ct.innerParams.get(e||void 0);n.showLoaderOnDeny&&Gs(xs()),n.preDeny?(e.isAwaitingPromise=true,Promise.resolve().then(()=>or(n.preDeny(t,n.validationMessage))).then(s=>{s===false?(e.hideLoading(),lr(e)):e.close({isDenied:true,value:typeof s>"u"?t:s});}).catch(s=>Ah(e||void 0,s))):e.close({isDenied:true,value:t});},Rd=(e,t)=>{e.close({isConfirmed:true,value:t});},Ah=(e,t)=>{e.rejectPromise(t);},Cc=(e,t)=>{const n=ct.innerParams.get(e||void 0);n.showLoaderOnConfirm&&Gs(),n.preConfirm?(e.resetValidationMessage(),e.isAwaitingPromise=true,Promise.resolve().then(()=>or(n.preConfirm(t,n.validationMessage))).then(s=>{rn(Ba())||s===false?(e.hideLoading(),lr(e)):Rd(e,typeof s>"u"?t:s);}).catch(s=>Ah(e||void 0,s))):Rd(e,t);};function na(){const e=ct.innerParams.get(this);if(!e)return;const t=ct.domCache.get(this);Ut(t.loader),Fa()?e.icon&&Pt(ei()):r1(t),Pn([t.popup,t.actions],V.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"):Lb()&&Ut(e.actions);};function Ph(){const e=ct.innerParams.get(this),t=ct.domCache.get(this);return t?Na(t.popup,e.input):null}function Ih(e,t,n){const o=ct.domCache.get(e);t.forEach(s=>{o[s].disabled=n;});}function Dh(e,t){const n=Je();if(!(!n||!e))if(e.type==="radio"){const o=n.querySelectorAll(`[name="${V.radio}"]`);for(let s=0;s<o.length;s++)o[s].disabled=t;}else e.disabled=t;}function Th(){Ih(this,["confirmButton","denyButton","cancelButton"],false);}function Lh(){Ih(this,["confirmButton","denyButton","cancelButton"],true);}function Mh(){Dh(this.getInput(),false);}function Oh(){Dh(this.getInput(),true);}function Bh(e){const t=ct.domCache.get(this),n=ct.innerParams.get(this);bn(t.validationMessage,e),t.validationMessage.className=V["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",V["validation-message"]),lh(o),Qe(o,V.inputerror));}function Rh(){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,V.inputerror));}const Ms={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:"&times;",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"],Fh=e=>Object.prototype.hasOwnProperty.call(Ms,e),Nh=e=>a1.indexOf(e)!==-1,Uh=e=>l1[e],c1=e=>{Fh(e)||Gt(`Unknown parameter "${e}"`);},d1=e=>{u1.includes(e)&&Gt(`The parameter "${e}" is incompatible with toasts`);},f1=e=>{const t=Uh(e);t&&sh(e,t);},jh=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 zh(e){const t=Yt(),n=Je(),o=ct.innerParams.get(this);if(!n||wo(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 s=p1(e),i=Object.assign({},o,s);jh(i),t.dataset.swal2Theme=i.theme,yh(this,i),ct.innerParams.set(this,i),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=>{Nh(n)?t[n]=e[n]:Gt(`Invalid parameter to update: ${n}`);}),t};function Hh(){const e=ct.domCache.get(this),t=ct.innerParams.get(this);if(!t){Vh(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=>{Vh(e),delete e.params,delete De.keydownHandler,delete De.keydownTarget,delete De.currentInstance;},Vh=e=>{e.isAwaitingPromise?(Sl(ct,e),e.isAwaitingPromise=true):(Sl(Ks,e),Sl(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);},Sl=(e,t)=>{for(const n in e)e[n].delete(t);};var m1=Object.freeze({__proto__:null,_destroy:Hh,close:Lo,closeModal:Lo,closePopup:Lo,closeToast:Lo,disableButtons:Lh,disableInput:Oh,disableLoading:na,enableButtons:Th,enableInput:Mh,getInput:Ph,handleAwaitingPromise:lr,hideLoading:na,rejectPromise:$h,resetValidationMessage:Rh,showValidationMessage:Bh,update:zh});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(oi.close);};},y1=e=>!!(e.showConfirmButton||e.showDenyButton||e.showCancelButton||e.showCloseButton);let oa=false;const b1=e=>{e.popup.onmousedown=()=>{e.container.onmouseup=function(t){e.container.onmouseup=()=>{},t.target===e.container&&(oa=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))&&(oa=true);};};},x1=(e,t,n)=>{t.container.onclick=o=>{if(oa){oa=false;return}o.target===t.container&&Oa(e.allowOutsideClick)&&n(oi.backdrop);};},_1=e=>typeof e=="object"&&e.jquery,Fd=e=>e instanceof Element||_1(e),C1=e=>{const t={};return typeof e[0]=="object"&&!Fd(e[0])?Object.assign(t,e[0]):["title","html","icon"].forEach((n,o)=>{const s=e[o];typeof s=="string"||Fd(s)?t[n]=s:s!==void 0&&vs(`Unexpected type of ${n}! Expected "string" or "Element", got ${typeof s}`);}),t};function k1(...e){return new this(...e)}function $1(e){class t extends this{_main(o,s){return super._main(o,Object.assign({},e,s))}}return t}const S1=()=>De.timeout&&De.timeout.getTimerLeft(),qh=()=>{if(De.timeout)return Ob(),De.timeout.stop()},Wh=()=>{if(De.timeout){const e=De.timeout.start();return yc(e),e}},E1=()=>{const e=De.timeout;return e&&(e.running?qh():Wh())},A1=e=>{if(De.timeout){const t=De.timeout.increase(e);return yc(t,true),t}},P1=()=>!!(De.timeout&&De.timeout.isRunning());let Nd=false;const cu={};function I1(e="data-swal-template"){cu[e]=this,Nd||(document.body.addEventListener("click",D1),Nd=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 T1{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=(...s)=>{this.removeListener(t,o),n.apply(this,s);};this.on(t,o);}emit(t,...n){this._getHandlersByEventName(t).forEach(o=>{try{o.apply(this,n);}catch(s){console.error(s);}});}removeListener(t,n){const o=this._getHandlersByEventName(t),s=o.indexOf(n);s>-1&&o.splice(s,1);}removeAllListeners(t){this.events[t]!==void 0&&(this.events[t].length=0);}reset(){this.events={};}}De.eventEmitter=new T1;const L1=(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:bh,clickDeny:_v,enableLoading:Gs,fire:k1,getActions:ir,getCancelButton:ti,getCloseButton:hc,getConfirmButton:to,getContainer:Yt,getDenyButton:xs,getFocusableElements:mc,getFooter:ah,getHtmlContainer:fc,getIcon:ei,getIconContent:Ab,getImage:rh,getInputLabel:Pb,getLoader:ni,getPopup:Je,getProgressSteps:pc,getTimerLeft:S1,getTimerProgressBar:Ra,getTitle:ih,getValidationMessage:Ba,increaseTimer:A1,isDeprecatedParameter:Uh,isLoading:Db,isTimerRunning:P1,isUpdatableParameter:Nh,isValidParameter:Fh,isVisible:xv,mixin:$1,off:O1,on:L1,once:M1,resumeTimer:Wh,showLoading:Gs,stopTimer:qh,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 Kh=["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,Kh))},N1=e=>{const t={};return Array.from(e.querySelectorAll("swal-param")).forEach(o=>{fs(o,["name","value"]);const s=o.getAttribute("name"),i=o.getAttribute("value");!s||!i||(typeof Ms[s]=="boolean"?t[s]=i!=="false":typeof Ms[s]=="object"?t[s]=JSON.parse(i):t[s]=i);}),t},U1=e=>{const t={};return Array.from(e.querySelectorAll("swal-function-param")).forEach(o=>{const s=o.getAttribute("name"),i=o.getAttribute("value");!s||!i||(t[s]=new Function(`return ${i}`)());}),t},j1=e=>{const t={};return Array.from(e.querySelectorAll("swal-button")).forEach(o=>{fs(o,["type","color","aria-label"]);const s=o.getAttribute("type");!s||!["confirm","cancel","deny"].includes(s)||(t[`${s}ButtonText`]=o.innerHTML,t[`show${uc(s)}Button`]=true,o.hasAttribute("color")&&(t[`${s}ButtonColor`]=o.getAttribute("color")),o.hasAttribute("aria-label")&&(t[`${s}ButtonAriaLabel`]=o.getAttribute("aria-label")));}),t},z1=e=>{const t={},n=e.querySelector("swal-image");return n&&(fs(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&&(fs(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&&(fs(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(s=>{fs(s,["value"]);const i=s.getAttribute("value");if(!i)return;const r=s.innerHTML;t.inputOptions[i]=r;})),t},q1=(e,t)=>{const n={};for(const o in t){const s=t[o],i=e.querySelector(s);i&&(fs(i,[]),n[s.replace(/^swal-/,"")]=i.innerHTML.trim());}return n},W1=e=>{const t=Kh.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}>`);});},fs=(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."}`]);});},Gh=10,K1=e=>{const t=Yt(),n=Je();typeof e.willOpen=="function"&&e.willOpen(n),De.eventEmitter.emit("willOpen",n);const s=window.getComputedStyle(document.body).overflowY;Y1(t,n,e),setTimeout(()=>{G1(t,n);},Gh),gc()&&(J1(t,e.scrollbarPadding,s),Dv()),!Fa()&&!De.previousActiveElement&&(De.previousActiveElement=document.activeElement),typeof e.didOpen=="function"&&setTimeout(()=>e.didOpen(n)),De.eventEmitter.emit("didOpen",n),Pn(t,V["no-transition"]);},sa=e=>{const t=Je();if(e.target!==t)return;const n=Yt();t.removeEventListener("animationend",sa),t.removeEventListener("transitionend",sa),n.style.overflowY="auto";},G1=(e,t)=>{ch(t)?(e.style.overflowY="hidden",t.addEventListener("animationend",sa),t.addEventListener("transitionend",sa)):e.style.overflowY="auto";},J1=(e,t,n)=>{Tv(),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");},Gh)):Pt(t,"grid"),Qe([document.documentElement,document.body],V.shown),n.heightAuto&&n.backdrop&&!n.toast&&Qe([document.documentElement,document.body],V["height-auto"]);};var Ud={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=Ud.email),e.input==="url"&&(e.inputValidator=Ud.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 $r=new WeakMap;class xt{constructor(...t){if(vb(this,$r,void 0),typeof window>"u")return;Wn=this;const n=Object.freeze(this.constructor.argsToParams(t));this.params=n,this.isAwaitingPromise=false,xb($r,this,this._main(Wn.params));}_main(t,n={}){if(jh(Object.assign({},n,t)),De.currentInstance){const i=Ks.swalPromiseResolve.get(De.currentInstance),{isAwaitingPromise:r}=De.currentInstance;De.currentInstance._destroy(),r||i({isDismissed:true}),gc()&&_h();}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 s=n0(Wn);return yh(Wn,o),ct.innerParams.set(Wn,o),e0(Wn,s,o)}then(t){return Id($r,this).then(t)}finally(t){return Id($r,this).finally(t)}}const e0=(e,t,n)=>new Promise((o,s)=>{const i=r=>{e.close({isDismissed:true,dismiss:r});};Ks.swalPromiseResolve.set(e,o),Ks.swalPromiseReject.set(e,s),t.confirmButton.onclick=()=>{n1(e);},t.denyButton.onclick=()=>{o1(e);},t.cancelButton.onclick=()=>{s1(e,i);},t.closeButton.onclick=()=>{i(oi.close);},g1(n,t,i),kv(De,n,i),Kv(e,n),K1(n),o0(De,n,i),s0(t,n),setTimeout(()=>{t.container.scrollTop=0;});}),t0=(e,t)=>{const n=F1(e),o=Object.assign({},Ms,t,n,e);return o.showClass=Object.assign({},Ms.showClass,o.showClass),o.hideClass=Object.assign({},Ms.hideClass,o.hideClass),o.animation===false&&(o.showClass={backdrop:"swal2-noanimation"},o.hideClass={}),o},n0=e=>{const t={popup:Je(),container:Yt(),actions:ir(),confirmButton:to(),denyButton:xs(),cancelButton:ti(),loader:ni(),closeButton:hc(),validationMessage:Ba(),progressSteps:pc()};return ct.domCache.set(e,t),t},o0=(e,t,n)=>{const o=Ra();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&&yc(t.timer);})));},s0=(e,t)=>{if(!t.toast){if(!Oa(t.allowEnterKey)){sh("allowEnterKey"),a0();return}i0(e)||r0(e,t)||uu(-1,1);}},i0=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=Th;xt.prototype.getInput=Ph;xt.prototype.disableInput=Oh;xt.prototype.enableInput=Mh;xt.prototype.hideLoading=na;xt.prototype.disableLoading=na;xt.prototype.showValidationMessage=Bh;xt.prototype.resetValidationMessage=Rh;xt.prototype.close=Lo;xt.prototype.closePopup=Lo;xt.prototype.closeModal=Lo;xt.prototype.closeToast=Lo;xt.prototype.rejectPromise=$h;xt.prototype.update=zh;xt.prototype._destroy=Hh;Object.assign(xt,B1);Object.keys(m1).forEach(e=>{xt[e]=function(...t){return Wn&&Wn[e]?Wn[e](...t):null};});xt.DismissReason=oi;xt.version="11.22.4";const Y=xt;Y.default=Y;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 Jh=gt.clouddrive;var Mo=(e=>(e.windows="windows",e.macos="macos",e.linux="linux",e.android="android",e))(Mo||{}),ps=(e=>(e.unknown="unknown",e.classic="classic",e.modern="modern",e))(ps||{}),jo=(e=>(e.play="play",e.download="download",e))(jo||{});function kc(e){return {active:false,url:"http://localhost:19798",root:"/115",memo:"",platform:void 0,ver_lt_0816:false,...e}}async function Yh(){const e=[kc()],t=await Xe.get(Jh,e);return t||e}async function jd(e){e.some(t=>t.active)||(e[0].active=true),await Xe.set(Jh,e);}async function Qt(){return (await Yh()).find(t=>t.active)||kc()}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 ft(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 Ua(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 Qh(e,t){return e=e.replace(/^[\/]+/g,""),"/"+e}function Xh(e){return e.startsWith("file://")}function p0(e){switch(e){case Mo.windows:return ["/","\\",":","*","?",'"',"<",">","|"];case Mo.macos:return ["/",":"];case Mo.linux:case Mo.android:return ["/","\0"];default:return ["/","\0"]}}function un(e,t,n=true){const o=p0(e.platform||Mo.linux);let s=Array.from(t).map(i=>{if(o.includes(i)){const r=i.charCodeAt(0)+65248;return String.fromCharCode(r)}else return i==="\r"||i===`
`?" ":i}).join("");for(;s.endsWith(".")||s.endsWith(" ");)s.endsWith(".")?s=s.replace(/\.+$/,""):s=s.replace(/\s+$/,"");return n&&(s=$c(e,s)),s}async function Js(e,t,n=jo.play,o=true,s=""){Array.isArray(t)?t=[...t].map(f=>un(e,f,true)).join("/"):t=$c(e,t);let{url:i,root:r}=e;if(!i)throw new Error("未设置CloudDrive地址!");(i.startsWith("/")||i.startsWith("\\"))&&(i=`file:///${i}`),Xh(i);const a=/^https?:\/\//.test(i);if(a&&!r)throw new Error("当协议为http/https时,必须设置CloudDrive资源根路径!");r&&(r=r.replace(/^(\/+)?/g,"/")),t=t.replace(/^(\/+)?/g,"/");const l=`${r}${t}`,c=n===jo.play?"True":"False";let u="";return i=i.replace(/\/+$/,""),a?u=`${i}/static/${i.replace("://","/")}/${c}/${encodeURIComponent(l)}`:u=`${i}${l}`,s&&(u+=s),o&&(u+="?check_expire=True"),console.log("[Cloud115 Enhancer] buildCloudDriveUrl",u),u}async function du(e,t,n=true){let{url:o,root:s}=e;if(!o)throw new Error("未设置CloudDrive地址!");return Xh(o)?await Js(e,t,jo.play,n):await Js(e,t,jo.play,n,".clfsplaylist.m3u")}async function h0(e,t,n=ps.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=$c(e,t),n===ps.modern?`${o}/?page=files&path=${encodeURIComponent(t)}`:`${o}/#${t}?a=1`}function $c(e,t){return e.platform===Mo.macos?d0(t,e.ver_lt_0816?"NFD":"NFC"):t}const Os=Y.mixin({toast:true,position:"top-end",showConfirmButton:false,timer:3e3,timerProgressBar:true,didOpen:e=>{e.addEventListener("mouseenter",Y.stopTimer),e.addEventListener("mouseleave",Y.resumeTimer);},customClass:{popup:"swal-toast"}});async function m0(e,t){e.addEventListener("keydown",n=>{const o=n.target;if(!Jp(o))return;let s=false;n.key==="Enter"&&(n.ctrlKey||n.metaKey)&&(s=true),s&&Y.clickConfirm();});}async function Q(e){return Y.fire({toast:true,position:"top-right",showConfirmButton:false,timer:3e3,timerProgressBar:true,didOpen:t=>{t.addEventListener("mouseenter",Y.stopTimer),t.addEventListener("mouseleave",Y.resumeTimer);},...e})}async function g0(e,t,n=false){const o=new Map;if(!e.length)return o;t=t||await Qt();let s=new Map;n||(Q({text:"正在获取上级目录路径...",timer:0}),Y.showLoading());try{s=await q0(e),n||Y.close();}catch(i){return console.error(i),n||Q({text:`获取上级目录路径失败: ${i}`,timer:1200,icon:"error"}),o}finally{n||Y.hideLoading();}if(s.size===0)return o;for(let i=0;i<e.length;i++){const r=s.get(e[i].parentId)?.slice(1).join("/"),a=e[i].name,l=Qh(r+"/"+a),c=e[i].isFile?await Js(t,l,jo.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,s)=>{const i=await Js(e,t,void 0,n);Da({method:"HEAD",url:i,onload:r=>o(r.status===200),onerror:r=>s(r)});})}async function y0(e,t,n,o,s){const r=`waitFileExist_${Ua()} path: ${t}`;console.time(r);async function a(l){const c=await w0(e,t,n);c&&l(c);}try{await qo(a,o,s);}catch{throw new Error(`[waitFileExist] 检查文件存在超时!文件路径: ${t}`)}finally{console.timeEnd(r);}}function b0(e){return new Promise((t,n)=>{Da({method:"HEAD",url:e.url,onload:o=>{parseInt(o.responseHeaders.match(/Content-Length:\s*(\d+)/i)?.[1]||"0")<5e3?t(ps.classic):t(ps.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 Oo=(e=>(e.unix="/",e.windows="\\",e))(Oo||{});function ia(e,t="/"){return e.map((n,o)=>o===0?n:ja(n,t)).join(t)}function ja(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 s=decodeURIComponent(o.pathname);return ja(s,n)}function C0(e,t){const n=e.endsWith("/")?e:e+"/",o=t.startsWith("/")?t.slice(1):t;return n+o}function Zh(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 zd(e){return k0(e)&&!Array.isArray(e)}function Ec(...e){const t={};for(const n of e)for(const o in n)Object.prototype.hasOwnProperty.call(n,o)&&(zd(n[o])&&zd(t[o])?t[o]=Ec(t[o],n[o]):t[o]=n[o]);return t}function $0(e){const t=new Map;for(const[n,o]of e)t.set(o,n);return t}function za(e){const t=new URLSearchParams;let n;for(n in e)t.append(n,e[n].toString());return t.toString()}function S0(e,t=false){const n=[];for(const o in e){let s=e[o].toString();s=t?encodeURIComponent(s):s,n.push(`${o}=${s}`);}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 em=gt.anxia;var Ha=(e=>(e.anxia="v.anxia.com",e.vod="115vod.com",e))(Ha||{});const tm={"3G":"标清",SD:"高清",HD:"超清",UD:"1080P",BD:"4K",YH:"原画"};function A0(e){return {defaultWebFull:false,defaultOpenPlayList:false,defaultDefinition:"",...e}}async function nm(){const e=A0(),t=await Xe.get(em,e);return {...e,...t}}async function P0(e){await Xe.set(em,e);}let om;function I0(e){om=e;}function Ot(){return om}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?"+za(t),{timeout:12e4,withCredentials:true})).data}async function Ac(e,t){const n=new URLSearchParams({pid:e,ignore_warn:"1"});return t.forEach((s,i)=>{n.append(`fid[${i}]`,s);}),(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 s=0,i=0;for(;;){const r=t.slice(s,s+n);if((await Ac(e,r)).state&&(i+=r.length),s+=n,s>=t.length)break;await Mt(o);}return i}async function sm(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((s,i)=>{n.append(`fid[${i}]`,s);}),(await Ot().post("https://webapi.115.com/files/move",n,{timeout:12e4,withCredentials:true})).data}var $n=(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))($n||{}),nn=(e=>(e.all="全部",e.video="视频",e.audio="音频",e.image="图片",e.doc="文档",e.app="应用",e.archive="压缩包",e.file="仅文件",e))(nn||{}),Va=(e=>(e.userPtime="user_ptime",e.fileName="file_name",e.fileSize="file_size",e.fileType="file_type",e))(Va||{}),pu=(e=>(e[e.normal=0]="normal",e[e.violation=1]="violation",e[e.auditing=2]="auditing",e))(pu||{}),rm=(e=>(e.file="1",e.folder="0",e))(rm||{});async function T0(e){/^\d+$/.test(e.target)&&(e.target=`U_1_${e.target}`);const t=za(e);return (await Ot().post("https://uplb.115.com/3.0/sampleinitupload.php",t,{timeout:12e4,withCredentials:true})).data}async function L0(e,t){const n=await T0(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 s=n.host.replace(/^http:/,"https:");return (await Ot().post(s,o,{timeout:18e5})).data}var Bo=(e=>(e[e.true=1]="true",e[e.false=0]="false",e))(Bo||{});class am extends Error{}class Pc extends am{constructor(t="搜索失败!"){super(t);}}class lm extends Pc{constructor(t="搜索请求响应内容为空!"){super(t);}}class Ic extends am{constructor(t="目录不存在!"){super(t);}}var um=(e=>(e[e.exist=20004]="exist",e))(um||{});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 cm(e={}){return {move:true,rename:true,delete:true,more:true,classList:"ce-temp-item",...e}}async function dm(e,t,n={}){const o=!t.sha1,s=o?"":Zh(t.file_name),i=o?"folder":s.toLowerCase(),r=o?"文件夹":s.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 g=[`<div class="file-name-wrap">
        <i class="file-type tp-${i}" 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>`],b=`
      <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>
        ${g.join(`
`)}
      </li>
    `;l=$(b);}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:s,sha1:t.sha1};for(let f in u)l.attr(f,u[f]);return l}function mn(e){const t=Dc(e);return _s(t)}function Dc(e){(e instanceof HTMLElement||!e.jquery)&&(e=$(e));const t=e.attr("file_size"),n=e.attr("iv")==="1",o=$o(),s=e.attr("file_id")||"",i=!!s,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:s,cid:(i?e.attr("cid"):e.attr("cate_id"))||"",pid:i?"":e.attr("p_id")||"",...l};else if(c={fid:s,cid:(i?e.attr("cid"):e.attr("cate_id"))||"",...l},!i){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 ro(e){const t=F0(e);return fm(t)}function fm(e){const t=[];for(let n=0;n<e.length;n++){const o=_s(e[n]);t.push(o);}return t}function _s(e){const t=!!e.fid,n=e.iv===true||e.iv?.toString()==="1",o=t?cb(e.n):null,s={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"?s.sizeBytes=e.s:typeof e.s=="string"&&/^\d+$/.test(e.s)&&(s.sizeBytes=parseInt(e.s)),s.sizeDesc=Ws(s.sizeBytes||0),s}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,cm({classList:"ce-temp-cur-dir"}))}async function R0(e,t={}){const n=await Nt(e);return await dm(e,n,t)}function si(){return window.top!==window?$(document):$('iframe[name="wangpan"], .wrap-view iframe:eq(0)').contents()}function Cs(){return si().find(".list-contents, .list-thumb")}function Tc(e){const t=Cs();return e?t.find("li.selected:not(.ce-temp-cur-dir)"):t.find("li:not(.ce-temp-cur-dir)")}function F0(e){const t=Tc(e),n=[];for(let o=0;o<t.length;o++){const s=t.eq(o),i=Dc(s);n.push(i);}return n}function hu(e="/"){const t=N0();return e+t.slice(1).join(e)}function N0(){const e=si(),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 pm(){return si().find("#js_top_header_file_path_box .top-file-path > .file-path").children(":last")}async function U0(){const e=await jt();Cs().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 s=Cs(),i=await B0();return e||i.hide(),s.find(`li[cate_id="${o}"]`).length||(s.is("ul")?n?s.parent().prepend(i):s.append(i):n?s.prepend(i):s.find("ul").prepend(i)),t>0&&setTimeout(()=>{i.remove();},t),i}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 $o(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 hm(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(`/?${S0(n)}`)+"&submode=wangpan&mode=search"}function mm(e,t=Ha.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(Ha).includes(e)}async function gm(e){unsafeWindow.Main.ReInstance({type:e.type,offset:0,o:Va.userPtime,asc:Bo.false,star:e.star,suffix:e.suffix});}function H0(){return Cs().find("li.selected")}function V0(){const e=H0();return e?Dc(e):null}const Al=new Map;async function qa(e,t=false){const n=e.name;if(t&&e.parentId&&Al.has(e.parentId)){const i=Al.get(e.parentId);if(i)return [...i,n]}const s=(await Nt(e.id)).paths.slice(1).map(i=>i.file_name);return e.parentId&&Al.set(e.parentId,s),[...s,n]}async function q0(e,t=100){const n=new Map;for(const i of e){const r=i.parentId;if(!r)throw new Error(`文件"${i.name}"没有父级目录ID!`);n.has(r)?n.get(r)?.push(i):n.set(r,[i]);}const o=[];for(const i of n.values())o.push(i[0]);const s=new Map;for(const i of o){const r=await Nt(i.id);await Mt(t),s.set(i.parentId,r.paths.map(a=>a.file_name));}return s}async function W0(e,t=100){const n=new Map;for(const i of e){const r=i.parentId;if(!r)throw new Error(`文件"${i.name}"没有父级目录ID!`);n.has(r)?n.get(r)?.push(i):n.set(r,[i]);}const o=[];for(const i of n.values())o.push(i[0]);const s=new Map;for(const i of o){const r=await Nt(i.id);await Mt(t),s.set(i.parentId,r.paths);}return s}async function K0(e,t){const n=new File([e],t.filename,{type:"text/plain"});return L0(n,t)}async function G0(e,t,n){const o=await g0(e),s=await v0(o);n=n||Ua();let i=t;return /m3u8$/.test(n)||(n+=".m3u8"),await K0(s,{filename:n,target:i})}const Pl=new Map;async function Bs(e,t=false){if(e=ja(e,Oo.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 Ic(`根据路径"${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(i=>i);let o="0",s="";for(const i of n){s+="/"+i;let r="";try{r=await Bs(s,!0),t.pathToId.set(s,r);}catch(a){if(a instanceof Ic){const l=await sm(o,i);if(!l.state)throw new Error(`创建目录"${i}"失败: ${l.errno} - ${l.error}`);r=l.cid.toString();}else throw a}o=r,t.pathToId.set(s,r);}return t.id=o,t}async function Y0(e,t,n=true){let o="";const s=await sm(t,e);if(s.state)o=s.cid.toString();else {if(s.errno===um.exist&&n){const i=await Nt(t);if(!i.pick_code)throw new Error(`获取目录"${t}"属性失败: ${i.errno} - ${i.error}`);const r=[...i.paths.slice(1).map(a=>a.file_name),i.file_name,e].join("/");return await Bs(r,true)}throw new Error(`创建目录"${e}"失败: ${s.errno} - ${s.error}`)}return o}const Mc=typeof Buffer=="function";typeof TextDecoder=="function"&&new TextDecoder;const Hd=typeof TextEncoder=="function"?new TextEncoder:void 0,Q0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",yi=Array.prototype.slice.call(Q0);(e=>{let t={};return e.forEach((n,o)=>t[n]=o),t})(yi);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,s,i="";const r=e.length%3;for(let a=0;a<e.length;){if((n=e.charCodeAt(a++))>255||(o=e.charCodeAt(a++))>255||(s=e.charCodeAt(a++))>255)throw new TypeError("invalid character found");t=n<<16|o<<8|s,i+=yi[t>>18&63]+yi[t>>12&63]+yi[t>>6&63]+yi[t&63];}return r?i.slice(0,r-3)+"===".substring(r):i},wm=typeof btoa=="function"?e=>btoa(e):Mc?e=>Buffer.from(e,"binary").toString("base64"):Z0,ex=Mc?e=>Buffer.from(e).toString("base64"):e=>{let n=[];for(let o=0,s=e.length;o<s;o+=4096)n.push(Vn.apply(null,e.subarray(o,o+4096)));return wm(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),Vd=Mc?e=>Buffer.from(e,"utf8").toString("base64"):Hd?e=>ex(Hd.encode(e)):e=>wm(ox(e)),qd=(e,t=false)=>t?X0(Vd(e)):Vd(e);var Oc=(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))(Oc||{});const sx=[{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 ym=(e=>(e.first="first",e.last="last",e))(ym||{});function ix(e,t,n){const{names:o,position:s}=t;let i=[];return s==="first"?i=[...o,...e]:i=[...e,...o],n?Array.from(new Set(i)):i}async function Oi(e,t,n,o,s=false){let i=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=i.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 g=e[r[p]]?.toString()||"",b="",v=[];switch(u.includes(p)&&(v=await qa(e),s&&(v=v.map(S=>un(n,S,true))),b=v.join("/")),p){case "pure_name":a?g=e.name.replace(/\.[^.]+$/,""):g=e.name;break;case "file_path":g=b;break;case "file_dir":g=b.replace(/\/[^/]+$/,"");break;case "clouddrive_stream_url":a?g=await Js(n,v,jo.download):g=await du(n,v);break;case "clouddrive_down_url":g=await Js(n,v,jo.download);break;case "clouddrive_playlist_url":let S=[];a?S=v.slice(0,-1):S=v,g=await du(n,S);break;case "user_agent":g=navigator.userAgent;break}if(g=g.toString(),w){let S=w.split(":");o&&(S=ix(S,o,false)),console.log(`[buildCustomUrl] functions: ${w}, after merge: ${S.join(":")}`);for(const I of S)switch(I){case "search":g=hm({search_value:g});break;case "encode":g=encodeURIComponent(g);break;case "base64":g=qd(g);break;case "base64safe":g=qd(g,true);break;case "upper":g=g.toUpperCase();break;case "lower":g=g.toLowerCase();break;case "number":g=g.replace(/\D/g,"");break;case "manual":g=await rx(g);break}}i=i.replace(f,g);}}return t.mutation?await ax(i,e,t,n):i}async function rx(e){let{isConfirmed:t,value:n}=await Y.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 no=(e=>(e.search="search",e.play="play",e))(no||{});const lx=gt.menuCustomUrlsForSearch,ux=gt.menuCustomUrlsForPlay,bm={search:lx,play:ux};async function ks(e){return await Xe.get(bm[e],[])}async function vm(e,t){await Xe.set(bm[e],t);}function Ct(e){return {enabled:true,key:"",label:"",icon:"",memo:"",extraMemo:"",url:"",openInBackground:false,...e}}const xm=gt.enabledCustomUrlsForSearch,_m=gt.enabledCustomUrlsForPlay;async function cx(e){await Xe.set(xm,e);}async function dx(e){await Xe.set(_m,e);}async function fx(){const e=wu,t=e.filter(s=>s.enabled).map(s=>s.key),n=await Xe.get(xm,t),o=[];return e.forEach(s=>{n.includes(s.key)&&o.push(s.key);}),o}async function px(){const e=gu,t=e.filter(s=>s.enabled).map(s=>s.key),n=await Xe.get(_m,t),o=[];return e.forEach(s=>{n.includes(s.key)&&o.push(s.key);}),o}async function ur(){const e=await fx();return wu.forEach(t=>{t.enabled=e.includes(t.key);}),wu}async function Cm(){const e=await px();return gu.forEach(t=>{t.enabled=e.includes(t.key);}),gu}const Wd="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",Kd="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:Kd,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:Kd,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:Wd,memo:"使用Bing搜索文件名(不含后缀)",url:"https://cn.bing.com/search?q={pure_name:encode}"}),Ct({enabled:false,key:"s_builtin_bing_full_name",label:"Bing-完整名称",icon:Wd,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 km(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Il,Gd;function gx(){return Gd||(Gd=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,Jd;function wx(){return Jd||(Jd=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 Tl,Yd;function Bc(){return Yd||(Yd=1,Tl=class{constructor(t,n,o,s){this.remainingPoints=typeof t>"u"?0:t,this.msBeforeNext=typeof n>"u"?0:n,this.consumedPoints=typeof o>"u"?0:o,this.isFirstInDuration=typeof s>"u"?false:s;}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()}}),Tl}var Ll,Qd;function yx(){if(Qd)return Ll;Qd=1;const e=wx(),t=Bc();return Ll=class{constructor(){this._storage={};}incrby(o,s,i){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+s,new t(0,r,this._storage[o].value,false)):this.set(o,s,i)}return this.set(o,s,i)}set(o,s,i){const r=i*1e3;return this._storage[o]&&this._storage[o].timeoutId&&clearTimeout(this._storage[o].timeoutId),this._storage[o]=new e(s,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 s=this._storage[o].expiresAt?this._storage[o].expiresAt.getTime()-new Date().getTime():-1;return new t(0,s,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}},Ll}var Ml,Xd;function bx(){if(Xd)return Ml;Xd=1;const e=gx(),t=yx(),n=Bc();class o extends e{constructor(i={}){super(i),this._memoryStorage=new t;}consume(i,r=1,a={}){return new Promise((l,c)=>{const u=this.getKey(i),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(i,r=1,a={}){const l=this.getKey(i);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(i,r=1,a={}){const l=this.getKey(i);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(i,r){const a=r*1e3,l=this.points+1;return this._memoryStorage.set(this.getKey(i),l,r),Promise.resolve(new n(0,a===0?-1:a,l))}set(i,r,a){const l=(a>=0?a:this.duration)*1e3;return this._memoryStorage.set(this.getKey(i),r,a),Promise.resolve(new n(0,l===0?-1:l,r))}get(i){const r=this._memoryStorage.get(this.getKey(i));return r!==null&&(r.remainingPoints=Math.max(this.points-r.consumedPoints,0)),Promise.resolve(r)}delete(i){return Promise.resolve(this._memoryStorage.delete(this.getKey(i)))}}return Ml=o,Ml}var Ol,Zd;function vx(){if(Zd)return Ol;Zd=1;const e=bx(),t=Bc();return Ol={RateLimiterMemory:e,RateLimiterRes:t},Ol}var Bi=vx();/**
  * @vue/shared v3.5.18
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **//*! #__NO_SIDE_EFFECTS__ */function Rc(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const it={},Rs=[],Yn=()=>{},xx=()=>false,Wa=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Fc=e=>e.startsWith("onUpdate:"),zt=Object.assign,Nc=(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,Fs=e=>dr(e)==="[object Map]",ii=e=>dr(e)==="[object Set]",ef=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",Uc=e=>(rt(e)||Oe(e))&&Oe(e.then)&&Oe(e.catch),$m=Object.prototype.toString,dr=e=>$m.call(e),Cx=e=>dr(e).slice(8,-1),Sm=e=>dr(e)==="[object Object]",jc=e=>wt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,_i=Rc(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Ka=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},kx=/-(\w)/g,In=Ka(e=>e.replace(kx,(t,n)=>n?n.toUpperCase():"")),$x=/\B([A-Z])/g,Ko=Ka(e=>e.replace($x,"-$1").toLowerCase()),Ga=Ka(e=>e.charAt(0).toUpperCase()+e.slice(1)),Bl=Ka(e=>e?`on${Ga(e)}`:""),Ro=(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});},ra=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Sx=e=>{const t=wt(e)?Number(e):NaN;return isNaN(t)?e:t};let tf;const Ja=()=>tf||(tf=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],s=wt(o)?Ix(o):Qn(o);if(s)for(const i in s)t[i]=s[i];}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 Te(e){let t="";if(wt(e))t=e;else if(Ee(e))for(let n=0;n<e.length;n++){const o=Te(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=Te(t)),n&&(e.style=Qn(n)),e}const Tx="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Lx=Rc(Tx);function Em(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=hs(e[o],t[o]);return n}function hs(e,t){if(e===t)return  true;let n=ef(e),o=ef(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 s=Object.keys(e).length,i=Object.keys(t).length;if(s!==i)return  false;for(const r in e){const a=e.hasOwnProperty(r),l=t.hasOwnProperty(r);if(a&&!l||!a&&l||!hs(e[r],t[r]))return  false}}return String(e)===String(t)}function zc(e,t){return e.findIndex(n=>hs(n,t))}const Am=e=>!!(e&&e.__v_isRef===true),F=e=>wt(e)?e:e==null?"":Ee(e)||rt(e)&&(e.toString===$m||!Oe(e.toString))?Am(e)?F(e.value):JSON.stringify(e,Pm,2):String(e),Pm=(e,t)=>Am(t)?Pm(e,t.value):Fs(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,s],i)=>(n[Rl(o,i)+" =>"]=s,n),{})}:ii(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 s=this.parent.scopes.pop();s&&s!==this&&(this.parent.scopes[this.index]=s,s.index=this.index);}this.parent=void 0;}}}function Bx(){return tn}let at;const Fl=new WeakSet;class Im{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||Tm(this);}run(){if(!(this.flags&1))return this.fn();this.flags|=2,nf(this),Lm(this);const t=at,n=Rn;at=this,Rn=true;try{return this.fn()}finally{Mm(this),at=t,Rn=n,this.flags&=-3;}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)qc(t);this.deps=this.depsTail=void 0,nf(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 Dm=0,Ci,ki;function Tm(e,t=false){if(e.flags|=8,t){e.next=ki,ki=e;return}e.next=Ci,Ci=e;}function Hc(){Dm++;}function Vc(){if(--Dm>0)return;if(ki){let t=ki;for(ki=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n;}}let e;for(;Ci;){let t=Ci;for(Ci=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 Mm(e){let t,n=e.depsTail,o=n;for(;o;){const s=o.prevDep;o.version===-1?(o===n&&(n=s),qc(o),Rx(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=s;}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&&(Om(t.dep.computed)||t.dep.version!==t.version))return  true;return !!e._dirty}function Om(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ri)||(e.globalVersion=Ri,!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 s=e.fn(e._value);(t.version===0||Ro(s,e._value))&&(e.flags|=128,e._value=s,t.version++);}catch(s){throw t.version++,s}finally{at=n,Rn=o,Mm(e),e.flags&=-3;}}function qc(e,t=false){const{dep:n,prevSub:o,nextSub:s}=e;if(o&&(o.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)qc(i,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 Bm=[];function vo(){Bm.push(Rn),Rn=false;}function xo(){const e=Bm.pop();Rn=e===void 0?true:e;}function nf(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=at;at=void 0;try{t();}finally{at=n;}}}let Ri=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 Wc{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,Rm(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++,Ri++,this.notify(t);}notify(t){Hc();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify();}finally{Vc();}}}function Rm(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)Rm(o);}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e;}}const aa=new WeakMap,as=Symbol(""),vu=Symbol(""),Fi=Symbol("");function Bt(e,t,n){if(Rn&&at){let o=aa.get(e);o||aa.set(e,o=new Map);let s=o.get(n);s||(o.set(n,s=new Wc),s.map=o,s.key=n),s.track();}}function fo(e,t,n,o,s,i){const r=aa.get(e);if(!r){Ri++;return}const a=l=>{l&&l.trigger();};if(Hc(),t==="clear")r.forEach(a);else {const l=Ee(e),c=l&&jc(n);if(l&&n==="length"){const u=Number(o);r.forEach((f,p)=>{(p==="length"||p===Fi||!Nn(p)&&p>=u)&&a(f);});}else switch((n!==void 0||r.has(void 0))&&a(r.get(n)),c&&a(r.get(Fi)),t){case "add":l?c&&a(r.get("length")):(a(r.get(as)),Fs(e)&&a(r.get(vu)));break;case "delete":l||(a(r.get(as)),Fs(e)&&a(r.get(vu)));break;case "set":Fs(e)&&a(r.get(as));break}}Vc();}function Nx(e,t){const n=aa.get(e);return n&&n.get(t)}function Ps(e){const t=Ye(e);return t===e?t:(Bt(t,"iterate",Fi),En(e)?t:t.map(Dt))}function Ya(e){return Bt(e=Ye(e),"iterate",Fi),e}const Ux={__proto__:null,[Symbol.iterator](){return Nl(this,Symbol.iterator,Dt)},concat(...e){return Ps(this).concat(...e.map(t=>Ee(t)?Ps(t):t))},entries(){return Nl(this,"entries",e=>(e[1]=Dt(e[1]),e))},every(e,t){return uo(this,"every",e,t,void 0,arguments)},filter(e,t){return uo(this,"filter",e,t,n=>n.map(Dt),arguments)},find(e,t){return uo(this,"find",e,t,Dt,arguments)},findIndex(e,t){return uo(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return uo(this,"findLast",e,t,Dt,arguments)},findLastIndex(e,t){return uo(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return uo(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ul(this,"includes",e)},indexOf(...e){return Ul(this,"indexOf",e)},join(e){return Ps(this).join(e)},lastIndexOf(...e){return Ul(this,"lastIndexOf",e)},map(e,t){return uo(this,"map",e,t,void 0,arguments)},pop(){return pi(this,"pop")},push(...e){return pi(this,"push",e)},reduce(e,...t){return of(this,"reduce",e,t)},reduceRight(e,...t){return of(this,"reduceRight",e,t)},shift(){return pi(this,"shift")},some(e,t){return uo(this,"some",e,t,void 0,arguments)},splice(...e){return pi(this,"splice",e)},toReversed(){return Ps(this).toReversed()},toSorted(e){return Ps(this).toSorted(e)},toSpliced(...e){return Ps(this).toSpliced(...e)},unshift(...e){return pi(this,"unshift",e)},values(){return Nl(this,"values",Dt)}};function Nl(e,t,n){const o=Ya(e),s=o[t]();return o!==e&&!En(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.value&&(i.value=n(i.value)),i}),s}const jx=Array.prototype;function uo(e,t,n,o,s,i){const r=Ya(e),a=r!==e&&!En(e),l=r[t];if(l!==jx[t]){const f=l.apply(e,i);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&&s?s(u):u}function of(e,t,n,o){const s=Ya(e);let i=n;return s!==e&&(En(e)?n.length>3&&(i=function(r,a,l){return n.call(this,r,a,l,e)}):i=function(r,a,l){return n.call(this,r,Dt(a),l,e)}),s[t](i,...o)}function Ul(e,t,n){const o=Ye(e);Bt(o,"iterate",Fi);const s=o[t](...n);return (s===-1||s===false)&&Jc(n[0])?(n[0]=Ye(n[0]),o[t](...n)):s}function pi(e,t,n=[]){vo(),Hc();const o=Ye(e)[t].apply(e,n);return Vc(),xo(),o}const zx=Rc("__proto__,__v_isRef,__isVue"),Fm=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 Nm{constructor(t=false,n=false){this._isReadonly=t,this._isShallow=n;}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return !s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return o===(s?i?Zx:Hm:i?zm:jm).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Ee(t);if(!s){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)?Fm.has(n):zx(n))||(s||Bt(t,"get",n),i)?a:At(a)?r&&jc(n)?a:a.value:rt(a)?s?Vm(a):Qa(a):a}}class Um extends Nm{constructor(t=false){super(false,t);}set(t,n,o,s){let i=t[n];if(!this._isShallow){const l=zo(i);if(!En(o)&&!zo(o)&&(i=Ye(i),o=Ye(o)),!Ee(t)&&At(i)&&!At(o))return l?false:(i.value=o,true)}const r=Ee(t)&&jc(n)?Number(n)<t.length:Ze(t,n),a=Reflect.set(t,n,o,At(t)?t:s);return t===Ye(s)&&(r?Ro(o,i)&&fo(t,"set",n,o):fo(t,"add",n,o)),a}deleteProperty(t,n){const o=Ze(t,n);t[n];const s=Reflect.deleteProperty(t,n);return s&&o&&fo(t,"delete",n,void 0),s}has(t,n){const o=Reflect.has(t,n);return (!Nn(n)||!Fm.has(n))&&Bt(t,"has",n),o}ownKeys(t){return Bt(t,"iterate",Ee(t)?"length":as),Reflect.ownKeys(t)}}class Vx extends Nm{constructor(t=false){super(true,t);}set(t,n){return  true}deleteProperty(t,n){return  true}}const qx=new Um,Wx=new Vx,Kx=new Um(true);const xu=e=>e,Sr=e=>Reflect.getPrototypeOf(e);function Gx(e,t,n){return function(...o){const s=this.__v_raw,i=Ye(s),r=Fs(i),a=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,c=s[e](...o),u=n?xu:t?la:Dt;return !t&&Bt(i,"iterate",l?vu:as),{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 Er(e){return function(...t){return e==="delete"?false:e==="clear"?void 0:this}}function Jx(e,t){const n={get(s){const i=this.__v_raw,r=Ye(i),a=Ye(s);e||(Ro(s,a)&&Bt(r,"get",s),Bt(r,"get",a));const{has:l}=Sr(r),c=t?xu:e?la:Dt;if(l.call(r,s))return c(i.get(s));if(l.call(r,a))return c(i.get(a));i!==r&&i.get(s);},get size(){const s=this.__v_raw;return !e&&Bt(Ye(s),"iterate",as),Reflect.get(s,"size",s)},has(s){const i=this.__v_raw,r=Ye(i),a=Ye(s);return e||(Ro(s,a)&&Bt(r,"has",s),Bt(r,"has",a)),s===a?i.has(s):i.has(s)||i.has(a)},forEach(s,i){const r=this,a=r.__v_raw,l=Ye(a),c=t?xu:e?la:Dt;return !e&&Bt(l,"iterate",as),a.forEach((u,f)=>s.call(i,c(u),c(f),r))}};return zt(n,e?{add:Er("add"),set:Er("set"),delete:Er("delete"),clear:Er("clear")}:{add(s){!t&&!En(s)&&!zo(s)&&(s=Ye(s));const i=Ye(this);return Sr(i).has.call(i,s)||(i.add(s),fo(i,"add",s,s)),this},set(s,i){!t&&!En(i)&&!zo(i)&&(i=Ye(i));const r=Ye(this),{has:a,get:l}=Sr(r);let c=a.call(r,s);c||(s=Ye(s),c=a.call(r,s));const u=l.call(r,s);return r.set(s,i),c?Ro(i,u)&&fo(r,"set",s,i):fo(r,"add",s,i),this},delete(s){const i=Ye(this),{has:r,get:a}=Sr(i);let l=r.call(i,s);l||(s=Ye(s),l=r.call(i,s)),a&&a.call(i,s);const c=i.delete(s);return l&&fo(i,"delete",s,void 0),c},clear(){const s=Ye(this),i=s.size!==0,r=s.clear();return i&&fo(s,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Gx(s,e,t);}),n}function Kc(e,t){const n=Jx(e,t);return (o,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?o:Reflect.get(Ze(n,s)&&s in o?n:o,s,i)}const Yx={get:Kc(false,false)},Qx={get:Kc(false,true)},Xx={get:Kc(true,false)};const jm=new WeakMap,zm=new WeakMap,Hm=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 Qa(e){return zo(e)?e:Gc(e,false,qx,Yx,jm)}function n_(e){return Gc(e,false,Kx,Qx,zm)}function Vm(e){return Gc(e,true,Wx,Xx,Hm)}function Gc(e,t,n,o,s){if(!rt(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=t_(e);if(i===0)return e;const r=s.get(e);if(r)return r;const a=new Proxy(e,i===2?o:n);return s.set(e,a),a}function Ns(e){return zo(e)?Ns(e.__v_raw):!!(e&&e.__v_isReactive)}function zo(e){return !!(e&&e.__v_isReadonly)}function En(e){return !!(e&&e.__v_isShallow)}function Jc(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)?Qa(e):e,la=e=>rt(e)?Vm(e):e;function At(e){return e?e.__v_isRef===true:false}function W(e){return s_(e,false)}function s_(e,t){return At(e)?e:new i_(e,t)}class i_{constructor(t,n){this.dep=new Wc,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)||zo(t);t=o?t:Ye(t),Ro(t,n)&&(this._rawValue=t,this._value=o?t:Dt(t),this.dep.trigger());}}function te(e){return At(e)?e.value:e}const r_={get:(e,t,n)=>t==="__v_raw"?e:te(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const s=e[t];return At(s)&&!At(n)?(s.value=n,true):Reflect.set(e,t,n,o)}};function qm(e){return Ns(e)?e:new Proxy(e,r_)}function a_(e){const t=Ee(e)?new Array(e.length):{};for(const n in e)t[n]=Wm(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?Wm(e,t,n):W(e)}function Wm(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 Wc(this),this.__v_isRef=true,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ri-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 Tm(this,true),true}get value(){const t=this.dep.track();return Om(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,s;return Oe(e)?o=e:(o=e.get,s=e.set),new d_(o,s,n)}const Ar={},ua=new WeakMap;let es;function p_(e,t=false,n=es){if(n){let o=ua.get(n);o||ua.set(n,o=[]),o.push(e);}}function h_(e,t,n=it){const{immediate:o,deep:s,once:i,scheduler:r,augmentJob:a,call:l}=n,c=P=>s?P:En(P)||s===false||s===0?po(P,1):po(P);let u,f,p,w,g=false,b=false;if(At(e)?(f=()=>e.value,g=En(e)):Ns(e)?(f=()=>c(e),g=true):Ee(e)?(b=true,g=e.some(P=>Ns(P)||En(P)),f=()=>e.map(P=>{if(At(P))return P.value;if(Ns(P))return c(P);if(Oe(P))return l?l(P,2):P()})):Oe(e)?t?f=l?()=>l(e,2):e:f=()=>{if(p){vo();try{p();}finally{xo();}}const P=es;es=u;try{return l?l(e,3,[w]):e(w)}finally{es=P;}}:f=Yn,t&&s){const P=f,M=s===true?1/0:s;f=()=>po(P(),M);}const v=Bx(),S=()=>{u.stop(),v&&v.active&&Nc(v.effects,u);};if(i&&t){const P=t;t=(...M)=>{P(...M),S();};}let I=b?new Array(e.length).fill(Ar):Ar;const E=P=>{if(!(!(u.flags&1)||!u.dirty&&!P))if(t){const M=u.run();if(s||g||(b?M.some((z,U)=>Ro(z,I[U])):Ro(M,I))){p&&p();const z=es;es=u;try{const U=[M,I===Ar?void 0:b&&I[0]===Ar?[]:I,w];I=M,l?l(t,3,U):t(...U);}finally{es=z;}}}else u.run();};return a&&a(E),u=new Im(f),u.scheduler=r?()=>r(E,false):E,w=P=>p_(P,false,u),p=u.onStop=()=>{const P=ua.get(u);if(P){if(l)l(P,4);else for(const M of P)M();ua.delete(u);}},t?o?E(true):I=u.run():r?r(E.bind(null,true),true):u.run(),S.pause=u.pause.bind(u),S.resume=u.resume.bind(u),S.stop=S,S}function po(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))po(e.value,t,n);else if(Ee(e))for(let o=0;o<e.length;o++)po(e[o],t,n);else if(ii(e)||Fs(e))e.forEach(o=>{po(o,t,n);});else if(Sm(e)){for(const o in e)po(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&po(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(s){pr(s,t,n);}}function oo(e,t,n,o){if(Oe(e)){const s=fr(e,t,n,o);return s&&Uc(s)&&s.catch(i=>{pr(i,t,n);}),s}if(Ee(e)){const s=[];for(let i=0;i<e.length;i++)s.push(oo(e[i],t,n,o));return s}}function pr(e,t,n,o=true){const s=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:r}=t&&t.appContext.config||it;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(i){vo(),fr(i,null,10,[e,l,c]),xo();return}}m_(e,n,s,o,r);}function m_(e,t,n,o=true,s=false){if(s)throw e;console.error(e);}const qt=[];let qn=-1;const Us=[];let Po=null,Ts=0;const Km=Promise.resolve();let ca=null;function ms(e){const t=ca||Km;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,s=qt[o],i=Ni(s);i<e||i===e&&s.flags&2?t=o+1:n=o;}return t}function Yc(e){if(!(e.flags&1)){const t=Ni(e),n=qt[qt.length-1];!n||!(e.flags&2)&&t>=Ni(n)?qt.push(e):qt.splice(g_(t),0,e),e.flags|=1,Gm();}}function Gm(){ca||(ca=Km.then(Ym));}function _u(e){Ee(e)?Us.push(...e):Po&&e.id===-1?Po.splice(Ts+1,0,e):e.flags&1||(Us.push(e),e.flags|=1),Gm();}function sf(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 Jm(e){if(Us.length){const t=[...new Set(Us)].sort((n,o)=>Ni(n)-Ni(o));if(Us.length=0,Po){Po.push(...t);return}for(Po=t,Ts=0;Ts<Po.length;Ts++){const n=Po[Ts];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2;}Po=null,Ts=0;}}const Ni=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Ym(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,Jm(),ca=null,(qt.length||Us.length)&&Ym();}}let Tt=null,Xa=null;function da(e){const t=Tt;return Tt=e,Xa=e&&e.type.__scopeId||null,t}function w_(e){Xa=e;}function y_(){Xa=null;}const b_=e=>ge;function ge(e,t=Tt,n){if(!t||e._n)return e;const o=(...s)=>{o._d&&gf(-1);const i=da(t);let r;try{r=e(...s);}finally{da(i),o._d&&gf(1);}return r};return o._n=true,o._c=true,o._d=true,o}function K(e,t){if(Tt===null)return e;const n=nl(Tt),o=e.dirs||(e.dirs=[]);for(let s=0;s<t.length;s++){let[i,r,a,l=it]=t[s];i&&(Oe(i)&&(i={mounted:i,updated:i}),i.deep&&po(r),o.push({dir:i,instance:n,value:r,oldValue:void 0,arg:a,modifiers:l}));}return e}function Qo(e,t,n,o){const s=e.dirs,i=t&&t.dirs;for(let r=0;r<s.length;r++){const a=s[r];i&&(a.oldValue=i[r].value);let l=a.dir[o];l&&(vo(),oo(l,n,8,[e.el,a,e,t]),xo());}}const v_=Symbol("_vte"),x_=e=>e.__isTeleport;function Qc(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Qc(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 Qm(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0];}function $i(e,t,n,o,s=false){if(Ee(e)){e.forEach((g,b)=>$i(g,t&&(Ee(t)?t[b]:t),n,o,s));return}if(js(o)&&!s){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&$i(e,t,n,o.component.subTree);return}const i=o.shapeFlag&4?nl(o.component):o.el,r=s?null:i,{i:a,r:l}=e,c=t&&t.r,u=a.refs===it?a.refs={}:a.refs,f=a.setupState,p=Ye(f),w=f===it?()=>false:g=>Ze(p,g);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 g=wt(l),b=At(l);if(g||b){const v=()=>{if(e.f){const S=g?w(l)?f[l]:u[l]:l.value;s?Ee(S)&&Nc(S,i):Ee(S)?S.includes(i)||S.push(i):g?(u[l]=[i],w(l)&&(f[l]=u[l])):(l.value=[i],e.k&&(u[e.k]=l.value));}else g?(u[l]=r,w(l)&&(f[l]=r)):b&&(l.value=r,e.k&&(u[e.k]=r));};r?(v.id=-1,fn(v,n)):v();}}}Ja().requestIdleCallback;Ja().cancelIdleCallback;const js=e=>!!e.type.__asyncLoader,Xm=e=>e.type.__isKeepAlive;function __(e,t){Zm(e,"a",t);}function C_(e,t){Zm(e,"da",t);}function Zm(e,t,n=Rt){const o=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent;}return e()});if(Za(t,o,n),n){let s=n.parent;for(;s&&s.parent;)Xm(s.parent.vnode)&&k_(o,t,n,s),s=s.parent;}}function k_(e,t,n,o){const s=Za(t,e,o,true);$s(()=>{Nc(o[t],s);},n);}function Za(e,t,n=Rt,o=false){if(n){const s=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...r)=>{vo();const a=gs(n),l=oo(t,n,e,r);return a(),xo(),l});return o?s.unshift(i):s.push(i),i}}const So=e=>(t,n=Rt)=>{(!ji||e==="sp")&&Za(e,(...o)=>t(...o),n);},$t=So("bm"),Ht=So("m"),$_=So("bu"),S_=So("u"),eg=So("bum"),$s=So("um"),E_=So("sp"),A_=So("rtg"),P_=So("rtc");function I_(e,t=Rt){Za("ec",e,t);}const Xc="components",D_="directives";function _o(e,t){return Zc(Xc,e,true,t)||e}const tg=Symbol.for("v-ndc");function Dn(e){return wt(e)?Zc(Xc,e,false)||e:e||tg}function T_(e){return Zc(D_,e)}function Zc(e,t,n=true,o=false){const s=Tt||Rt;if(s){const i=s.type;if(e===Xc){const a=_C(i,false);if(a&&(a===t||a===In(t)||a===Ga(In(t))))return i}const r=rf(s[e]||i[e],t)||rf(s.appContext[e],t);return !r&&o?i:r}}function rf(e,t){return e&&(e[t]||e[In(t)]||e[Ga(In(t))])}function je(e,t,n,o){let s;const i=n,r=Ee(e);if(r||wt(e)){const a=r&&Ns(e);let l=false,c=false;a&&(l=!En(e),c=zo(e),e=Ya(e)),s=new Array(e.length);for(let u=0,f=e.length;u<f;u++)s[u]=t(l?c?la(Dt(e[u])):Dt(e[u]):e[u],u,void 0,i);}else if(typeof e=="number"){s=new Array(e);for(let a=0;a<e;a++)s[a]=t(a+1,a,void 0,i);}else if(rt(e))if(e[Symbol.iterator])s=Array.from(e,(a,l)=>t(a,l,void 0,i));else {const a=Object.keys(e);s=new Array(a.length);for(let l=0,c=a.length;l<c;l++){const u=a[l];s[l]=t(e[u],u,l,i);}}else s=[];return s}function L_(e,t){for(let n=0;n<t.length;n++){const o=t[n];if(Ee(o))for(let s=0;s<o.length;s++)e[o[s].name]=o[s].fn;else o&&(e[o.name]=o.key?(...s)=>{const i=o.fn(...s);return i&&(i.key=o.key),i}:o.fn);}return e}function Ge(e,t,n={},o,s){if(Tt.ce||Tt.parent&&js(Tt.parent)&&Tt.parent.ce)return t!=="default"&&(n.name=t),_(),tt(Se,null,[se("slot",n,o&&o())],64);let i=e[t];i&&i._c&&(i._d=false),_();const r=i&&ng(i(n)),a=n.key||r&&r.key,l=tt(Se,{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"]),i&&i._c&&(i._d=true),l}function ng(e){return e.some(t=>Qs(t)?!(t.type===Un||t.type===Se&&!ng(t.children)):true)?e:null}const Cu=e=>e?Ag(e)?nl(e):Cu(e.parent):null,Si=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=>sg(e),$forceUpdate:e=>e.f||(e.f=()=>{Yc(e.update);}),$nextTick:e=>e.n||(e.n=ms.bind(e.proxy)),$watch:e=>eC.bind(e)}),jl=(e,t)=>e!==it&&!e.__isScriptSetup&&Ze(e,t),M_={get({_:e},t){if(t==="__v_skip")return  true;const{ctx:n,setupState:o,data:s,props:i,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 s[t];case 4:return n[t];case 3:return i[t]}else {if(jl(o,t))return r[t]=1,o[t];if(s!==it&&Ze(s,t))return r[t]=2,s[t];if((c=e.propsOptions[0])&&Ze(c,t))return r[t]=3,i[t];if(n!==it&&Ze(n,t))return r[t]=4,n[t];ku&&(r[t]=0);}}const u=Si[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!==it&&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:s,ctx:i}=e;return jl(s,t)?(s[t]=n,true):o!==it&&Ze(o,t)?(o[t]=n,true):Ze(e.props,t)||t[0]==="$"&&t.slice(1)in e?false:(i[t]=n,true)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:s,propsOptions:i}},r){let a;return !!n[r]||e!==it&&Ze(e,r)||jl(t,r)||(a=i[0])&&Ze(a,r)||Ze(o,r)||Ze(Si,r)||Ze(s.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 af(e){return Ee(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Lt(e){const t=Eg();let n=e();return Pu(),Uc(n)&&(n=n.catch(o=>{throw gs(t),o})),[n,()=>gs(t)]}let ku=true;function O_(e){const t=sg(e),n=e.proxy,o=e.ctx;ku=false,t.beforeCreate&&lf(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:r,watch:a,provide:l,inject:c,created:u,beforeMount:f,mounted:p,beforeUpdate:w,updated:g,activated:b,deactivated:v,beforeDestroy:S,beforeUnmount:I,destroyed:E,unmounted:P,render:M,renderTracked:z,renderTriggered:U,errorCaptured:ie,serverPrefetch:pe,expose:ne,inheritAttrs:O,components:B,directives:q,filters:le}=t;if(c&&B_(c,o,null),r)for(const _e in r){const $e=r[_e];Oe($e)&&(o[_e]=$e.bind(n));}if(s){const _e=s.call(n,n);rt(_e)&&(e.data=Qa(_e));}if(ku=true,i)for(const _e in i){const $e=i[_e],Ne=Oe($e)?$e.bind(n,n):Oe($e.get)?$e.get.bind(n,n):Yn,dt=!Oe($e)&&Oe($e.set)?$e.set.bind(n):Yn,we=Ke({get:Ne,set:dt});Object.defineProperty(o,_e,{enumerable:true,configurable:true,get:()=>we.value,set:L=>we.value=L});}if(a)for(const _e in a)og(a[_e],o,n,_e);if(l){const _e=Oe(l)?l.call(n):l;Reflect.ownKeys(_e).forEach($e=>{vi($e,_e[$e]);});}u&&lf(u,e,"c");function ke(_e,$e){Ee($e)?$e.forEach(Ne=>_e(Ne.bind(n))):$e&&_e($e.bind(n));}if(ke($t,f),ke(Ht,p),ke($_,w),ke(S_,g),ke(__,b),ke(C_,v),ke(I_,ie),ke(P_,z),ke(A_,U),ke(eg,I),ke($s,P),ke(E_,pe),Ee(ne))if(ne.length){const _e=e.exposed||(e.exposed={});ne.forEach($e=>{Object.defineProperty(_e,$e,{get:()=>n[$e],set:Ne=>n[$e]=Ne,enumerable:true});});}else e.exposed||(e.exposed={});M&&e.render===Yn&&(e.render=M),O!=null&&(e.inheritAttrs=O),B&&(e.components=B),q&&(e.directives=q),pe&&Qm(e);}function B_(e,t,n=Yn){Ee(e)&&(e=$u(e));for(const o in e){const s=e[o];let i;rt(s)?"default"in s?i=Ei(s.from||o,s.default,true):i=Ei(s.from||o):i=Ei(s),At(i)?Object.defineProperty(t,o,{enumerable:true,configurable:true,get:()=>i.value,set:r=>i.value=r}):t[o]=i;}}function lf(e,t,n){oo(Ee(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n);}function og(e,t,n,o){let s=o.includes(".")?wg(n,o):()=>n[o];if(wt(e)){const i=t[e];Oe(i)&&He(s,i);}else if(Oe(e))He(s,e.bind(n));else if(rt(e))if(Ee(e))e.forEach(i=>og(i,t,n,o));else {const i=Oe(e.handler)?e.handler.bind(n):t[e.handler];Oe(i)&&He(s,i,e);}}function sg(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:r}}=e.appContext,a=i.get(t);let l;return a?l=a:!s.length&&!n&&!o?l=t:(l={},s.length&&s.forEach(c=>fa(l,c,r,true)),fa(l,t,r)),rt(t)&&i.set(t,l),l}function fa(e,t,n,o=false){const{mixins:s,extends:i}=t;i&&fa(e,i,n,true),s&&s.forEach(r=>fa(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:uf,props:cf,emits:cf,methods:bi,computed:bi,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:bi,directives:bi,watch:N_,provide:uf,inject:F_};function uf(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 bi($u(e),$u(t))}function $u(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 bi(e,t){return e?zt(Object.create(null),e,t):t}function cf(e,t){return e?Ee(e)&&Ee(t)?[...new Set([...e,...t])]:zt(Object.create(null),af(e),af(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,s=null){Oe(o)||(o=zt({},o)),s!=null&&!rt(s)&&(s=null);const i=ig(),r=new WeakSet,a=[];let l=false;const c=i.app={_uid:U_++,_component:o,_props:s,_container:null,_context:i,_instance:null,version:$C,get config(){return i.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 i.mixins.includes(u)||i.mixins.push(u),c},component(u,f){return f?(i.components[u]=f,c):i.components[u]},directive(u,f){return f?(i.directives[u]=f,c):i.directives[u]},mount(u,f,p){if(!l){const w=c._ceVNode||se(o,s);return w.appContext=i,p===true?p="svg":p===false&&(p=void 0),e(w,u,p),l=true,c._container=u,u.__vue_app__=c,nl(w.component)}},onUnmount(u){a.push(u);},unmount(){l&&(oo(a,c._instance,16),e(null,c._container),delete c._container.__vue_app__);},provide(u,f){return i.provides[u]=f,c},runWithContext(u){const f=zs;zs=c;try{return u()}finally{zs=f;}}};return c}}let zs=null;function vi(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 Ei(e,t,n=false){const o=Eg();if(o||zs){let s=zs?zs._context.provides:o?o.parent==null||o.ce?o.vnode.appContext&&o.vnode.appContext.provides:o.parent.provides:void 0;if(s&&e in s)return s[e];if(arguments.length>1)return n&&Oe(t)?t.call(o&&o.proxy):t}}const rg={},ag=()=>Object.create(rg),lg=e=>Object.getPrototypeOf(e)===rg;function z_(e,t,n,o=false){const s={},i=ag();e.propsDefaults=Object.create(null),ug(e,t,s,i);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);n?e.props=o?s:n_(s):e.type.props?e.props=s:e.props=i,e.attrs=i;}function H_(e,t,n,o){const{props:s,attrs:i,vnode:{patchFlag:r}}=e,a=Ye(s),[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(el(e.emitsOptions,p))continue;const w=t[p];if(l)if(Ze(i,p))w!==i[p]&&(i[p]=w,c=true);else {const g=In(p);s[g]=Su(l,a,g,w,e,false);}else w!==i[p]&&(i[p]=w,c=true);}}}else {ug(e,t,s,i)&&(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)&&(s[f]=Su(l,a,f,void 0,e,true)):delete s[f]);if(i!==a)for(const f in i)(!t||!Ze(t,f))&&(delete i[f],c=true);}c&&fo(e.attrs,"set","");}function ug(e,t,n,o){const[s,i]=e.propsOptions;let r=false,a;if(t)for(let l in t){if(_i(l))continue;const c=t[l];let u;s&&Ze(s,u=In(l))?!i||!i.includes(u)?n[u]=c:(a||(a={}))[u]=c:el(e.emitsOptions,l)||(!(l in o)||c!==o[l])&&(o[l]=c,r=true);}if(i){const l=Ye(n),c=a||it;for(let u=0;u<i.length;u++){const f=i[u];n[f]=Su(s,l,f,c[f],e,!Ze(c,f));}}return r}function Su(e,t,n,o,s,i){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}=s;if(n in c)o=c[n];else {const u=gs(s);o=c[n]=l.call(null,t),u();}}else o=l;s.ce&&s.ce._setProp(n,o);}r[0]&&(i&&!a?o=false:r[1]&&(o===""||o===Ko(n))&&(o=true));}return o}const V_=new WeakMap;function cg(e,t,n=false){const o=n?V_:t.propsCache,s=o.get(e);if(s)return s;const i=e.props,r={},a=[];let l=false;if(!Oe(e)){const u=f=>{l=true;const[p,w]=cg(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(!i&&!l)return rt(e)&&o.set(e,Rs),Rs;if(Ee(i))for(let u=0;u<i.length;u++){const f=In(i[u]);df(f)&&(r[f]=it);}else if(i)for(const u in i){const f=In(u);if(df(f)){const p=i[u],w=r[f]=Ee(p)||Oe(p)?{type:p}:zt({},p),g=w.type;let b=false,v=true;if(Ee(g))for(let S=0;S<g.length;++S){const I=g[S],E=Oe(I)&&I.name;if(E==="Boolean"){b=true;break}else E==="String"&&(v=false);}else b=Oe(g)&&g.name==="Boolean";w[0]=b,w[1]=v,(b||Ze(w,"default"))&&a.push(f);}}const c=[r,a];return rt(e)&&o.set(e,c),c}function df(e){return e[0]!=="$"&&!_i(e)}const ed=e=>e==="_"||e==="__"||e==="_ctx"||e==="$stable",td=e=>Ee(e)?e.map(Tn):[Tn(e)],q_=(e,t,n)=>{if(t._n)return t;const o=ge((...s)=>td(t(...s)),n);return o._c=false,o},dg=(e,t,n)=>{const o=e._ctx;for(const s in e){if(ed(s))continue;const i=e[s];if(Oe(i))t[s]=q_(s,i,o);else if(i!=null){const r=td(i);t[s]=()=>r;}}},fg=(e,t)=>{const n=td(t);e.slots.default=()=>n;},pg=(e,t,n)=>{for(const o in t)(n||!ed(o))&&(e[o]=t[o]);},W_=(e,t,n)=>{const o=e.slots=ag();if(e.vnode.shapeFlag&32){const s=t.__;s&&yu(o,"__",s,true);const i=t._;i?(pg(o,t,n),n&&yu(o,"_",i,true)):dg(t,o);}else t&&fg(e,t);},K_=(e,t,n)=>{const{vnode:o,slots:s}=e;let i=true,r=it;if(o.shapeFlag&32){const a=t._;a?n&&a===1?i=false:pg(s,t,n):(i=!t.$stable,dg(t,s)),r=t;}else t&&(fg(e,t),r={default:1});if(i)for(const a in s)!ed(a)&&r[a]==null&&delete s[a];},fn=fC;function G_(e){return J_(e)}function J_(e,t){const n=Ja();n.__VUE__=true;const{insert:o,remove:s,patchProp:i,createElement:r,createText:a,createComment:l,setText:c,setElementText:u,parentNode:f,nextSibling:p,setScopeId:w=Yn,insertStaticContent:g}=e,b=(m,x,k,Z=null,j=null,J=null,de=void 0,ce=null,ue=!!x.dynamicChildren)=>{if(m===x)return;m&&!Do(m,x)&&(Z=Xt(m),L(m,j,J,true),m=null),x.patchFlag===-2&&(ue=false,x.dynamicChildren=null);const{type:re,ref:Ce,shapeFlag:me}=x;switch(re){case tl:v(m,x,k,Z);break;case Un:S(m,x,k,Z);break;case Ur:m==null&&I(x,k,Z,de);break;case Se:B(m,x,k,Z,j,J,de,ce,ue);break;default:me&1?M(m,x,k,Z,j,J,de,ce,ue):me&6?q(m,x,k,Z,j,J,de,ce,ue):(me&64||me&128)&&re.process(m,x,k,Z,j,J,de,ce,ue,xn);}Ce!=null&&j?$i(Ce,m&&m.ref,J,x||m,!x):Ce==null&&m&&m.ref!=null&&$i(m.ref,null,J,m,true);},v=(m,x,k,Z)=>{if(m==null)o(x.el=a(x.children),k,Z);else {const j=x.el=m.el;x.children!==m.children&&c(j,x.children);}},S=(m,x,k,Z)=>{m==null?o(x.el=l(x.children||""),k,Z):x.el=m.el;},I=(m,x,k,Z)=>{[m.el,m.anchor]=g(m.children,x,k,Z,m.el,m.anchor);},E=({el:m,anchor:x},k,Z)=>{let j;for(;m&&m!==x;)j=p(m),o(m,k,Z),m=j;o(x,k,Z);},P=({el:m,anchor:x})=>{let k;for(;m&&m!==x;)k=p(m),s(m),m=k;s(x);},M=(m,x,k,Z,j,J,de,ce,ue)=>{x.type==="svg"?de="svg":x.type==="math"&&(de="mathml"),m==null?z(x,k,Z,j,J,de,ce,ue):pe(m,x,j,J,de,ce,ue);},z=(m,x,k,Z,j,J,de,ce)=>{let ue,re;const{props:Ce,shapeFlag:me,transition:oe,dirs:Ae}=m;if(ue=m.el=r(m.type,J,Ce&&Ce.is,Ce),me&8?u(ue,m.children):me&16&&ie(m.children,ue,null,Z,j,zl(m,J),de,ce),Ae&&Qo(m,null,Z,"created"),U(ue,m,m.scopeId,de,Z),Ce){for(const y in Ce)y!=="value"&&!_i(y)&&i(ue,y,null,Ce[y],J,Z);"value"in Ce&&i(ue,"value",null,Ce.value,J),(re=Ce.onVnodeBeforeMount)&&zn(re,Z,m);}Ae&&Qo(m,null,Z,"beforeMount");const h=Y_(j,oe);h&&oe.beforeEnter(ue),o(ue,x,k),((re=Ce&&Ce.onVnodeMounted)||h||Ae)&&fn(()=>{re&&zn(re,Z,m),h&&oe.enter(ue),Ae&&Qo(m,null,Z,"mounted");},j);},U=(m,x,k,Z,j)=>{if(k&&w(m,k),Z)for(let J=0;J<Z.length;J++)w(m,Z[J]);if(j){let J=j.subTree;if(x===J||bg(J.type)&&(J.ssContent===x||J.ssFallback===x)){const de=j.vnode;U(m,de,de.scopeId,de.slotScopeIds,j.parent);}}},ie=(m,x,k,Z,j,J,de,ce,ue=0)=>{for(let re=ue;re<m.length;re++){const Ce=m[re]=ce?Io(m[re]):Tn(m[re]);b(null,Ce,x,k,Z,j,J,de,ce);}},pe=(m,x,k,Z,j,J,de)=>{const ce=x.el=m.el;let{patchFlag:ue,dynamicChildren:re,dirs:Ce}=x;ue|=m.patchFlag&16;const me=m.props||it,oe=x.props||it;let Ae;if(k&&Xo(k,false),(Ae=oe.onVnodeBeforeUpdate)&&zn(Ae,k,x,m),Ce&&Qo(x,m,k,"beforeUpdate"),k&&Xo(k,true),(me.innerHTML&&oe.innerHTML==null||me.textContent&&oe.textContent==null)&&u(ce,""),re?ne(m.dynamicChildren,re,ce,k,Z,zl(x,j),J):de||$e(m,x,ce,null,k,Z,zl(x,j),J,false),ue>0){if(ue&16)O(ce,me,oe,k,j);else if(ue&2&&me.class!==oe.class&&i(ce,"class",null,oe.class,j),ue&4&&i(ce,"style",me.style,oe.style,j),ue&8){const h=x.dynamicProps;for(let y=0;y<h.length;y++){const C=h[y],D=me[C],N=oe[C];(N!==D||C==="value")&&i(ce,C,D,N,j,k);}}ue&1&&m.children!==x.children&&u(ce,x.children);}else !de&&re==null&&O(ce,me,oe,k,j);((Ae=oe.onVnodeUpdated)||Ce)&&fn(()=>{Ae&&zn(Ae,k,x,m),Ce&&Qo(x,m,k,"updated");},Z);},ne=(m,x,k,Z,j,J,de)=>{for(let ce=0;ce<x.length;ce++){const ue=m[ce],re=x[ce],Ce=ue.el&&(ue.type===Se||!Do(ue,re)||ue.shapeFlag&198)?f(ue.el):k;b(ue,re,Ce,null,Z,j,J,de,true);}},O=(m,x,k,Z,j)=>{if(x!==k){if(x!==it)for(const J in x)!_i(J)&&!(J in k)&&i(m,J,x[J],null,j,Z);for(const J in k){if(_i(J))continue;const de=k[J],ce=x[J];de!==ce&&J!=="value"&&i(m,J,ce,de,j,Z);}"value"in k&&i(m,"value",x.value,k.value,j);}},B=(m,x,k,Z,j,J,de,ce,ue)=>{const re=x.el=m?m.el:a(""),Ce=x.anchor=m?m.anchor:a("");let{patchFlag:me,dynamicChildren:oe,slotScopeIds:Ae}=x;Ae&&(ce=ce?ce.concat(Ae):Ae),m==null?(o(re,k,Z),o(Ce,k,Z),ie(x.children||[],k,Ce,j,J,de,ce,ue)):me>0&&me&64&&oe&&m.dynamicChildren?(ne(m.dynamicChildren,oe,k,j,J,de,ce),(x.key!=null||j&&x===j.subTree)&&hg(m,x,true)):$e(m,x,k,Ce,j,J,de,ce,ue);},q=(m,x,k,Z,j,J,de,ce,ue)=>{x.slotScopeIds=ce,m==null?x.shapeFlag&512?j.ctx.activate(x,k,Z,de,ue):le(x,k,Z,j,J,de,ue):ve(m,x,ue);},le=(m,x,k,Z,j,J,de)=>{const ce=m.component=wC(m,Z,j);if(Xm(m)&&(ce.ctx.renderer=xn),yC(ce,false,de),ce.asyncDep){if(j&&j.registerDep(ce,ke,de),!m.el){const ue=ce.subTree=se(Un);S(null,ue,x,k),m.placeholder=ue.el;}}else ke(ce,m,x,k,j,J,de);},ve=(m,x,k)=>{const Z=x.component=m.component;if(rC(m,x,k))if(Z.asyncDep&&!Z.asyncResolved){_e(Z,x,k);return}else Z.next=x,Z.update();else x.el=m.el,Z.vnode=x;},ke=(m,x,k,Z,j,J,de)=>{const ce=()=>{if(m.isMounted){let{next:me,bu:oe,u:Ae,parent:h,vnode:y}=m;{const G=mg(m);if(G){me&&(me.el=y.el,_e(m,me,de)),G.asyncDep.then(()=>{m.isUnmounted||ce();});return}}let C=me,D;Xo(m,false),me?(me.el=y.el,_e(m,me,de)):me=y,oe&&Nr(oe),(D=me.props&&me.props.onVnodeBeforeUpdate)&&zn(D,h,me,y),Xo(m,true);const N=pf(m),R=m.subTree;m.subTree=N,b(R,N,f(R.el),Xt(R),m,j,J),me.el=N.el,C===null&&nd(m,N.el),Ae&&fn(Ae,j),(D=me.props&&me.props.onVnodeUpdated)&&fn(()=>zn(D,h,me,y),j);}else {let me;const{el:oe,props:Ae}=x,{bm:h,m:y,parent:C,root:D,type:N}=m,R=js(x);Xo(m,false),h&&Nr(h),!R&&(me=Ae&&Ae.onVnodeBeforeMount)&&zn(me,C,x),Xo(m,true);{D.ce&&D.ce._def.shadowRoot!==false&&D.ce._injectChildStyle(N);const G=m.subTree=pf(m);b(null,G,k,Z,m,j,J),x.el=G.el;}if(y&&fn(y,j),!R&&(me=Ae&&Ae.onVnodeMounted)){const G=x;fn(()=>zn(me,C,G),j);}(x.shapeFlag&256||C&&js(C.vnode)&&C.vnode.shapeFlag&256)&&m.a&&fn(m.a,j),m.isMounted=true,x=k=Z=null;}};m.scope.on();const ue=m.effect=new Im(ce);m.scope.off();const re=m.update=ue.run.bind(ue),Ce=m.job=ue.runIfDirty.bind(ue);Ce.i=m,Ce.id=m.uid,ue.scheduler=()=>Yc(Ce),Xo(m,true),re();},_e=(m,x,k)=>{x.component=m;const Z=m.vnode.props;m.vnode=x,m.next=null,H_(m,x.props,Z,k),K_(m,x.children,k),vo(),sf(m),xo();},$e=(m,x,k,Z,j,J,de,ce,ue=false)=>{const re=m&&m.children,Ce=m?m.shapeFlag:0,me=x.children,{patchFlag:oe,shapeFlag:Ae}=x;if(oe>0){if(oe&128){dt(re,me,k,Z,j,J,de,ce,ue);return}else if(oe&256){Ne(re,me,k,Z,j,J,de,ce,ue);return}}Ae&8?(Ce&16&&cn(re,j,J),me!==re&&u(k,me)):Ce&16?Ae&16?dt(re,me,k,Z,j,J,de,ce,ue):cn(re,j,J,true):(Ce&8&&u(k,""),Ae&16&&ie(me,k,Z,j,J,de,ce,ue));},Ne=(m,x,k,Z,j,J,de,ce,ue)=>{m=m||Rs,x=x||Rs;const re=m.length,Ce=x.length,me=Math.min(re,Ce);let oe;for(oe=0;oe<me;oe++){const Ae=x[oe]=ue?Io(x[oe]):Tn(x[oe]);b(m[oe],Ae,k,null,j,J,de,ce,ue);}re>Ce?cn(m,j,J,true,false,me):ie(x,k,Z,j,J,de,ce,ue,me);},dt=(m,x,k,Z,j,J,de,ce,ue)=>{let re=0;const Ce=x.length;let me=m.length-1,oe=Ce-1;for(;re<=me&&re<=oe;){const Ae=m[re],h=x[re]=ue?Io(x[re]):Tn(x[re]);if(Do(Ae,h))b(Ae,h,k,null,j,J,de,ce,ue);else break;re++;}for(;re<=me&&re<=oe;){const Ae=m[me],h=x[oe]=ue?Io(x[oe]):Tn(x[oe]);if(Do(Ae,h))b(Ae,h,k,null,j,J,de,ce,ue);else break;me--,oe--;}if(re>me){if(re<=oe){const Ae=oe+1,h=Ae<Ce?x[Ae].el:Z;for(;re<=oe;)b(null,x[re]=ue?Io(x[re]):Tn(x[re]),k,h,j,J,de,ce,ue),re++;}}else if(re>oe)for(;re<=me;)L(m[re],j,J,true),re++;else {const Ae=re,h=re,y=new Map;for(re=h;re<=oe;re++){const be=x[re]=ue?Io(x[re]):Tn(x[re]);be.key!=null&&y.set(be.key,re);}let C,D=0;const N=oe-h+1;let R=false,G=0;const X=new Array(N);for(re=0;re<N;re++)X[re]=0;for(re=Ae;re<=me;re++){const be=m[re];if(D>=N){L(be,j,J,true);continue}let Me;if(be.key!=null)Me=y.get(be.key);else for(C=h;C<=oe;C++)if(X[C-h]===0&&Do(be,x[C])){Me=C;break}Me===void 0?L(be,j,J,true):(X[Me-h]=re+1,Me>=G?G=Me:R=true,b(be,x[Me],k,null,j,J,de,ce,ue),D++);}const ae=R?Q_(X):Rs;for(C=ae.length-1,re=N-1;re>=0;re--){const be=h+re,Me=x[be],Be=x[be+1],We=be+1<Ce?Be.el||Be.placeholder:Z;X[re]===0?b(null,Me,k,We,j,J,de,ce,ue):R&&(C<0||re!==ae[C]?we(Me,k,We,2):C--);}}},we=(m,x,k,Z,j=null)=>{const{el:J,type:de,transition:ce,children:ue,shapeFlag:re}=m;if(re&6){we(m.component.subTree,x,k,Z);return}if(re&128){m.suspense.move(x,k,Z);return}if(re&64){de.move(m,x,k,xn);return}if(de===Se){o(J,x,k);for(let me=0;me<ue.length;me++)we(ue[me],x,k,Z);o(m.anchor,x,k);return}if(de===Ur){E(m,x,k);return}if(Z!==2&&re&1&&ce)if(Z===0)ce.beforeEnter(J),o(J,x,k),fn(()=>ce.enter(J),j);else {const{leave:me,delayLeave:oe,afterLeave:Ae}=ce,h=()=>{m.ctx.isUnmounted?s(J):o(J,x,k);},y=()=>{me(J,()=>{h(),Ae&&Ae();});};oe?oe(J,h,y):y();}else o(J,x,k);},L=(m,x,k,Z=false,j=false)=>{const{type:J,props:de,ref:ce,children:ue,dynamicChildren:re,shapeFlag:Ce,patchFlag:me,dirs:oe,cacheIndex:Ae}=m;if(me===-2&&(j=false),ce!=null&&(vo(),$i(ce,null,k,m,true),xo()),Ae!=null&&(x.renderCache[Ae]=void 0),Ce&256){x.ctx.deactivate(m);return}const h=Ce&1&&oe,y=!js(m);let C;if(y&&(C=de&&de.onVnodeBeforeUnmount)&&zn(C,x,m),Ce&6)pt(m.component,k,Z);else {if(Ce&128){m.suspense.unmount(k,Z);return}h&&Qo(m,null,x,"beforeUnmount"),Ce&64?m.type.remove(m,x,k,xn,Z):re&&!re.hasOnce&&(J!==Se||me>0&&me&64)?cn(re,x,k,false,true):(J===Se&&me&384||!j&&Ce&16)&&cn(ue,x,k),Z&&he(m);}(y&&(C=de&&de.onVnodeUnmounted)||h)&&fn(()=>{C&&zn(C,x,m),h&&Qo(m,null,x,"unmounted");},k);},he=m=>{const{type:x,el:k,anchor:Z,transition:j}=m;if(x===Se){st(k,Z);return}if(x===Ur){P(m);return}const J=()=>{s(k),j&&!j.persisted&&j.afterLeave&&j.afterLeave();};if(m.shapeFlag&1&&j&&!j.persisted){const{leave:de,delayLeave:ce}=j,ue=()=>de(k,J);ce?ce(m.el,J,ue):ue();}else J();},st=(m,x)=>{let k;for(;m!==x;)k=p(m),s(m),m=k;s(x);},pt=(m,x,k)=>{const{bum:Z,scope:j,job:J,subTree:de,um:ce,m:ue,a:re,parent:Ce,slots:{__:me}}=m;ff(ue),ff(re),Z&&Nr(Z),Ce&&Ee(me)&&me.forEach(oe=>{Ce.renderCache[oe]=void 0;}),j.stop(),J&&(J.flags|=8,L(de,m,x,k)),ce&&fn(ce,x),fn(()=>{m.isUnmounted=true;},x),x&&x.pendingBranch&&!x.isUnmounted&&m.asyncDep&&!m.asyncResolved&&m.suspenseId===x.pendingId&&(x.deps--,x.deps===0&&x.resolve());},cn=(m,x,k,Z=false,j=false,J=0)=>{for(let de=J;de<m.length;de++)L(m[de],x,k,Z,j);},Xt=m=>{if(m.shapeFlag&6)return Xt(m.component.subTree);if(m.shapeFlag&128)return m.suspense.next();const x=p(m.anchor||m.el),k=x&&x[v_];return k?p(k):x};let lo=false;const As=(m,x,k)=>{m==null?x._vnode&&L(x._vnode,null,null,true):b(x._vnode||null,m,x,null,null,null,k),x._vnode=m,lo||(lo=true,sf(),Jm(),lo=false);},xn={p:b,um:L,m:we,r:he,mt:le,mc:ie,pc:$e,pbc:ne,n:Xt,o:e};return {render:As,hydrate:void 0,createApp:j_(As)}}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 hg(e,t,n=false){const o=e.children,s=t.children;if(Ee(o)&&Ee(s))for(let i=0;i<o.length;i++){const r=o[i];let a=s[i];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=s[i]=Io(s[i]),a.el=r.el),!n&&a.patchFlag!==-2&&hg(r,a)),a.type===tl&&(a.el=r.el),a.type===Un&&!a.el&&(a.el=r.el);}}function Q_(e){const t=e.slice(),n=[0];let o,s,i,r,a;const l=e.length;for(o=0;o<l;o++){const c=e[o];if(c!==0){if(s=n[n.length-1],e[s]<c){t[o]=s,n.push(o);continue}for(i=0,r=n.length-1;i<r;)a=i+r>>1,e[n[a]]<c?i=a+1:r=a;c<e[n[i]]&&(i>0&&(t[o]=n[i-1]),n[i]=o);}}for(i=n.length,r=n[i-1];i-- >0;)n[i]=r,r=t[r];return n}function mg(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:mg(t)}function ff(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8;}const X_=Symbol.for("v-scx"),Z_=()=>Ei(X_);function He(e,t,n){return gg(e,t,n)}function gg(e,t,n=it){const{immediate:o,deep:s,flush:i,once:r}=n,a=zt({},n),l=t&&o||!t&&i!=="post";let c;if(ji){if(i==="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,g,b)=>oo(w,u,g,b);let f=false;i==="post"?a.scheduler=w=>{fn(w,u&&u.suspense);}:i!=="sync"&&(f=true,a.scheduler=(w,g)=>{g?w():Yc(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 ji&&(c?c.push(p):l&&p()),p}function eC(e,t,n){const o=this.proxy,s=wt(e)?e.includes(".")?wg(o,e):()=>o[e]:e.bind(o,o);let i;Oe(t)?i=t:(i=t.handler,n=t);const r=gs(this),a=gg(s,i.bind(o),n);return r(),a}function wg(e,t){const n=t.split(".");return ()=>{let o=e;for(let s=0;s<n.length&&o;s++)o=o[n[s]];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||it;let s=n;const i=t.startsWith("update:"),r=i&&tC(o,t.slice(7));r&&(r.trim&&(s=n.map(u=>wt(u)?u.trim():u)),r.number&&(s=n.map(ra)));let a,l=o[a=Bl(t)]||o[a=Bl(In(t))];!l&&i&&(l=o[a=Bl(Ko(t))]),l&&oo(l,e,6,s);const c=o[a+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=true,oo(c,e,6,s);}}function yg(e,t,n=false){const o=t.emitsCache,s=o.get(e);if(s!==void 0)return s;const i=e.emits;let r={},a=false;if(!Oe(e)){const l=c=>{const u=yg(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 !i&&!a?(rt(e)&&o.set(e,null),null):(Ee(i)?i.forEach(l=>r[l]=null):zt(r,i),rt(e)&&o.set(e,r),r)}function el(e,t){return !e||!Wa(t)?false:(t=t.slice(2).replace(/Once$/,""),Ze(e,t[0].toLowerCase()+t.slice(1))||Ze(e,Ko(t))||Ze(e,t))}function pf(e){const{type:t,vnode:n,proxy:o,withProxy:s,propsOptions:[i],slots:r,attrs:a,emit:l,render:c,renderCache:u,props:f,data:p,setupState:w,ctx:g,inheritAttrs:b}=e,v=da(e);let S,I;try{if(n.shapeFlag&4){const P=s||o,M=P;S=Tn(c.call(M,P,u,f,w,p,g)),I=a;}else {const P=t;S=Tn(P.length>1?P(f,{attrs:a,slots:r,emit:l}):P(f,null)),I=t.props?a:sC(a);}}catch(P){Ai.length=0,pr(P,e,1),S=se(Un);}let E=S;if(I&&b!==false){const P=Object.keys(I),{shapeFlag:M}=E;P.length&&M&7&&(i&&P.some(Fc)&&(I=iC(I,i)),E=Xs(E,I,false,true));}return n.dirs&&(E=Xs(E,null,false,true),E.dirs=E.dirs?E.dirs.concat(n.dirs):n.dirs),n.transition&&Qc(E,n.transition),S=E,da(v),S}function oC(e,t=true){let n;for(let o=0;o<e.length;o++){const s=e[o];if(Qs(s)){if(s.type!==Un||s.children==="v-if"){if(n)return;n=s;}}else return}return n}const sC=e=>{let t;for(const n in e)(n==="class"||n==="style"||Wa(n))&&((t||(t={}))[n]=e[n]);return t},iC=(e,t)=>{const n={};for(const o in e)(!Fc(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function rC(e,t,n){const{props:o,children:s,component:i}=e,{props:r,children:a,patchFlag:l}=t,c=i.emitsOptions;if(t.dirs||t.transition)return  true;if(n&&l>=0){if(l&1024)return  true;if(l&16)return o?hf(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]&&!el(c,p))return  true}}}else return (s||a)&&(!a||!a.$stable)?true:o===r?false:o?r?hf(o,r,c):true:!!r;return  false}function hf(e,t,n){const o=Object.keys(t);if(o.length!==Object.keys(e).length)return  true;for(let s=0;s<o.length;s++){const i=o[s];if(t[i]!==e[i]&&!el(n,i))return  true}return  false}function nd({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 bg=e=>e.__isSuspense;let Eu=0;const aC={name:"Suspense",__isSuspense:true,process(e,t,n,o,s,i,r,a,l,c){if(e==null)lC(t,n,o,s,i,r,a,l,c);else {if(i&&i.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}uC(e,t,n,o,s,r,a,l,c);}},hydrate:cC,normalize:dC},vg=aC;function Ui(e,t){const n=e.props&&e.props[t];Oe(n)&&n();}function lC(e,t,n,o,s,i,r,a,l){const{p:c,o:{createElement:u}}=l,f=u("div"),p=e.suspense=xg(e,s,o,t,f,n,i,r,a,l);c(null,p.pendingBranch=e.ssContent,f,null,o,p,i,r),p.deps>0?(Ui(e,"onPending"),Ui(e,"onFallback"),c(null,e.ssFallback,t,n,o,null,i,r),Hs(p,e.ssFallback)):p.resolve(false,true);}function uC(e,t,n,o,s,i,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:g,pendingBranch:b,isInFallback:v,isHydrating:S}=f;if(b)f.pendingBranch=p,Do(p,b)?(l(b,p,f.hiddenContainer,null,s,f,i,r,a),f.deps<=0?f.resolve():v&&(S||(l(g,w,n,o,s,null,i,r,a),Hs(f,w)))):(f.pendingId=Eu++,S?(f.isHydrating=false,f.activeBranch=b):c(b,s,f),f.deps=0,f.effects.length=0,f.hiddenContainer=u("div"),v?(l(null,p,f.hiddenContainer,null,s,f,i,r,a),f.deps<=0?f.resolve():(l(g,w,n,o,s,null,i,r,a),Hs(f,w))):g&&Do(p,g)?(l(g,p,n,o,s,f,i,r,a),f.resolve(true)):(l(null,p,f.hiddenContainer,null,s,f,i,r,a),f.deps<=0&&f.resolve()));else if(g&&Do(p,g))l(g,p,n,o,s,f,i,r,a),Hs(f,p);else if(Ui(t,"onPending"),f.pendingBranch=p,p.shapeFlag&512?f.pendingId=p.component.suspenseId:f.pendingId=Eu++,l(null,p,f.hiddenContainer,null,s,f,i,r,a),f.deps<=0)f.resolve();else {const{timeout:I,pendingId:E}=f;I>0?setTimeout(()=>{f.pendingId===E&&f.fallback(w);},I):I===0&&f.fallback(w);}}function xg(e,t,n,o,s,i,r,a,l,c,u=false){const{p:f,m:p,um:w,n:g,o:{parentNode:b,remove:v}}=c;let S;const I=pC(e);I&&t&&t.pendingBranch&&(S=t.pendingId,t.deps++);const E=e.props?Sx(e.props.timeout):void 0,P=i,M={vnode:e,parent:t,parentComponent:n,namespace:r,container:o,hiddenContainer:s,deps:0,pendingId:Eu++,timeout:typeof E=="number"?E:-1,activeBranch:null,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:false,effects:[],resolve(z=false,U=false){const{vnode:ie,activeBranch:pe,pendingBranch:ne,pendingId:O,effects:B,parentComponent:q,container:le}=M;let ve=false;M.isHydrating?M.isHydrating=false:z||(ve=pe&&ne.transition&&ne.transition.mode==="out-in",ve&&(pe.transition.afterLeave=()=>{O===M.pendingId&&(p(ne,le,i===P?g(pe):i,0),_u(B));}),pe&&(b(pe.el)===le&&(i=g(pe)),w(pe,q,M,true)),ve||p(ne,le,i,0)),Hs(M,ne),M.pendingBranch=null,M.isInFallback=false;let ke=M.parent,_e=false;for(;ke;){if(ke.pendingBranch){ke.effects.push(...B),_e=true;break}ke=ke.parent;}!_e&&!ve&&_u(B),M.effects=[],I&&t&&t.pendingBranch&&S===t.pendingId&&(t.deps--,t.deps===0&&!U&&t.resolve()),Ui(ie,"onResolve");},fallback(z){if(!M.pendingBranch)return;const{vnode:U,activeBranch:ie,parentComponent:pe,container:ne,namespace:O}=M;Ui(U,"onFallback");const B=g(ie),q=()=>{M.isInFallback&&(f(null,z,ne,B,pe,null,O,a,l),Hs(M,z));},le=z.transition&&z.transition.mode==="out-in";le&&(ie.transition.afterLeave=q),M.isInFallback=true,w(ie,pe,null,true),le||q();},move(z,U,ie){M.activeBranch&&p(M.activeBranch,z,U,ie),M.container=z;},next(){return M.activeBranch&&g(M.activeBranch)},registerDep(z,U,ie){const pe=!!M.pendingBranch;pe&&M.deps++;const ne=z.vnode.el;z.asyncDep.catch(O=>{pr(O,z,0);}).then(O=>{if(z.isUnmounted||M.isUnmounted||M.pendingId!==z.suspenseId)return;z.asyncResolved=true;const{vnode:B}=z;Iu(z,O),ne&&(B.el=ne);const q=!ne&&z.subTree.el;U(z,B,b(ne||z.subTree.el),ne?null:g(z.subTree),M,r,ie),q&&v(q),nd(z,B.el),pe&&--M.deps===0&&M.resolve();});},unmount(z,U){M.isUnmounted=true,M.activeBranch&&w(M.activeBranch,n,z,U),M.pendingBranch&&w(M.pendingBranch,n,z,U);}};return M}function cC(e,t,n,o,s,i,r,a,l){const c=t.suspense=xg(t,o,n,e.parentNode,document.createElement("div"),null,s,i,r,a,true),u=l(e,c.pendingBranch=t.ssContent,n,c,i,r);return c.deps===0&&c.resolve(false,true),u}function dC(e){const{shapeFlag:t,children:n}=e,o=t&32;e.ssContent=mf(o?n.default:n),e.ssFallback=o?mf(n.fallback):se(Un);}function mf(e){let t;if(Oe(e)){const n=Ys&&e._c;n&&(e._d=false,_()),e=e(),n&&(e._d=true,t=sn,_g());}return Ee(e)&&(e=oC(e)),e=Tn(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 Hs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:o}=e;let s=t.el;for(;!s&&t.component;)t=t.component.subTree,s=t.el;n.el=s,o&&o.subTree===n&&(o.vnode.el=s,nd(o,s));}function pC(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==false}const Se=Symbol.for("v-fgt"),tl=Symbol.for("v-txt"),Un=Symbol.for("v-cmt"),Ur=Symbol.for("v-stc"),Ai=[];let sn=null;function _(e=false){Ai.push(sn=e?null:[]);}function _g(){Ai.pop(),sn=Ai[Ai.length-1]||null;}let Ys=1;function gf(e,t=false){Ys+=e,e<0&&sn&&t&&(sn.hasOnce=true);}function Cg(e){return e.dynamicChildren=Ys>0?sn||Rs:null,_g(),Ys>0&&sn&&sn.push(e),e}function A(e,t,n,o,s,i){return Cg(d(e,t,n,o,s,i,true))}function tt(e,t,n,o,s){return Cg(se(e,t,n,o,s,true))}function Qs(e){return e?e.__v_isVNode===true:false}function Do(e,t){return e.type===t.type&&e.key===t.key}const kg=({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:Tt,r:e,k:t,f:!!n}:e:null);function d(e,t=null,n=null,o=0,s=null,i=e===Se?0:1,r=false,a=false){const l={__v_isVNode:true,__v_skip:true,type:e,props:t,key:t&&kg(t),ref:t&&jr(t),scopeId:Xa,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:i,patchFlag:o,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:Tt};return a?(od(l,n),i&128&&e.normalize(l)):n&&(l.shapeFlag|=wt(n)?8:16),Ys>0&&!r&&sn&&(l.patchFlag>0||i&6)&&l.patchFlag!==32&&sn.push(l),l}const se=hC;function hC(e,t=null,n=null,o=0,s=null,i=false){if((!e||e===tg)&&(e=Un),Qs(e)){const a=Xs(e,t,true);return n&&od(a,n),Ys>0&&!i&&sn&&(a.shapeFlag&6?sn[sn.indexOf(e)]=a:sn.push(a)),a.patchFlag=-2,a}if(CC(e)&&(e=e.__vccOpts),t){t=$g(t);let{class:a,style:l}=t;a&&!wt(a)&&(t.class=Te(a)),rt(l)&&(Jc(l)&&!Ee(l)&&(l=zt({},l)),t.style=Qn(l));}const r=wt(e)?1:bg(e)?128:x_(e)?64:rt(e)?4:Oe(e)?2:0;return d(e,t,n,o,s,r,i,true)}function $g(e){return e?Jc(e)||lg(e)?zt({},e):e:null}function Xs(e,t,n=false,o=false){const{props:s,ref:i,patchFlag:r,children:a,transition:l}=e,c=t?sd(s||{},t):s,u={__v_isVNode:true,__v_skip:true,type:e.type,props:c,key:c&&kg(c),ref:t&&t.ref?n&&i?Ee(i)?i.concat(jr(t)):[i,jr(t)]:jr(t):i,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!==Se?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&&Xs(e.ssContent),ssFallback:e.ssFallback&&Xs(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&Qc(u,l.clone(u)),u}function T(e=" ",t=0){return se(tl,null,e,t)}function Sg(e,t){const n=se(Ur,null,e);return n.staticCount=t,n}function fe(e="",t=false){return t?(_(),tt(Un,null,e)):se(Un,null,e)}function Tn(e){return e==null||typeof e=="boolean"?se(Un):Ee(e)?se(Se,null,e.slice()):Qs(e)?Io(e):se(tl,null,String(e))}function Io(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Xs(e)}function od(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 s=t.default;s&&(s._c&&(s._d=false),od(e,s()),s._c&&(s._d=true));return}else {n=32;const s=t._;!s&&!lg(t)?t._ctx=Tt:s===3&&Tt&&(Tt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024));}else Oe(t)?(t={default:t,_ctx:Tt},n=32):(t=String(t),o&64?(n=16,t=[T(t)]):n=8);e.children=t,e.shapeFlag|=n;}function sd(...e){const t={};for(let n=0;n<e.length;n++){const o=e[n];for(const s in o)if(s==="class")t.class!==o.class&&(t.class=Te([t.class,o.class]));else if(s==="style")t.style=Qn([t.style,o.style]);else if(Wa(s)){const i=t[s],r=o[s];r&&i!==r&&!(Ee(i)&&i.includes(r))&&(t[s]=i?[].concat(i,r):r);}else s!==""&&(t[s]=o[s]);}return t}function zn(e,t,n,o=null){oo(e,t,7,[n,o]);}const mC=ig();let gC=0;function wC(e,t,n){const o=e.type,s=(t?t.appContext:e.appContext)||mC,i={uid:gC++,vnode:e,type:o,parent:t,appContext:s,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(s.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:cg(o,s),emitsOptions:yg(o,s),emit:null,emitted:null,propsDefaults:it,inheritAttrs:o.inheritAttrs,ctx:it,data:it,props:it,attrs:it,slots:it,refs:it,setupState:it,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 i.ctx={_:i},i.root=t?t.root:i,i.emit=nC.bind(null,i),e.ce&&e.ce(i),i}let Rt=null;const Eg=()=>Rt||Tt;let pa,Au;{const e=Ja(),t=(n,o)=>{let s;return (s=e[n])||(s=e[n]=[]),s.push(o),i=>{s.length>1?s.forEach(r=>r(i)):s[0](i);}};pa=t("__VUE_INSTANCE_SETTERS__",n=>Rt=n),Au=t("__VUE_SSR_SETTERS__",n=>ji=n);}const gs=e=>{const t=Rt;return pa(e),e.scope.on(),()=>{e.scope.off(),pa(t);}},Pu=()=>{Rt&&Rt.scope.off(),pa(null);};function Ag(e){return e.vnode.shapeFlag&4}let ji=false;function yC(e,t=false,n=false){t&&Au(t);const{props:o,children:s}=e.vnode,i=Ag(e);z_(e,o,i,t),W_(e,s,n||t);const r=i?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){vo();const s=e.setupContext=o.length>1?xC(e):null,i=gs(e),r=fr(o,e,0,[e.props,s]),a=Uc(r);if(xo(),i(),(a||e.sp)&&!js(e)&&Qm(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 Pg(e);}function Iu(e,t,n){Oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:rt(t)&&(e.setupState=qm(t)),Pg(e);}function Pg(e,t,n){const o=e.type;e.render||(e.render=o.render||Yn);{const s=gs(e);vo();try{O_(e);}finally{xo(),s();}}}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 nl(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(qm(o_(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Si)return Si[n](e)},has(t,n){return n in t||n in Si}})):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,ji);function kC(e,t,n){const o=arguments.length;return o===2?rt(t)&&!Ee(t)?Qs(t)?se(e,null,[t]):se(e,t):se(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Qs(n)&&(n=[n]),se(e,t,n))}const $C="3.5.18";/**
  * @vue/runtime-dom v3.5.18
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
  * @license MIT
  **/let Du;const wf=typeof window<"u"&&window.trustedTypes;if(wf)try{Du=wf.createPolicy("vue",{createHTML:e=>e});}catch{}const Ig=Du?e=>Du.createHTML(e):e=>e,SC="http://www.w3.org/2000/svg",EC="http://www.w3.org/1998/Math/MathML",co=typeof document<"u"?document:null,yf=co&&co.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 s=t==="svg"?co.createElementNS(SC,e):t==="mathml"?co.createElementNS(EC,e):n?co.createElement(e,{is:n}):co.createElement(e);return e==="select"&&o&&o.multiple!=null&&s.setAttribute("multiple",o.multiple),s},createText:e=>co.createTextNode(e),createComment:e=>co.createComment(e),setText:(e,t)=>{e.nodeValue=t;},setElementText:(e,t)=>{e.textContent=t;},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>co.querySelector(e),setScopeId(e,t){e.setAttribute(t,"");},insertStaticContent(e,t,n,o,s,i){const r=n?n.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(true),n),!(s===i||!(s=s.nextSibling)););else {yf.innerHTML=Ig(o==="svg"?`<svg>${e}</svg>`:o==="mathml"?`<math>${e}</math>`:e);const a=yf.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 ha=Symbol("_vod"),Dg=Symbol("_vsh"),Wt={beforeMount(e,{value:t},{transition:n}){e[ha]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):hi(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),hi(e,true),o.enter(e)):o.leave(e,()=>{hi(e,false);}):hi(e,t));},beforeUnmount(e,{value:t}){hi(e,t);}};function hi(e,t){e.style.display=t?e[ha]:"none",e[Dg]=!t;}const DC=Symbol(""),TC=/(^|;)\s*display\s*:/;function LC(e,t,n){const o=e.style,s=wt(n);let i=false;if(n&&!s){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"&&(i=true),zr(o,r,n[r]);}else if(s){if(t!==n){const r=o[DC];r&&(n+=";"+r),o.cssText=n,i=TC.test(n);}}else t&&e.removeAttribute("style");ha in e&&(e[ha]=i?o.display:"",e[Dg]&&(o.display="none"));}const bf=/\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);bf.test(n)?e.setProperty(Ko(o),n.replace(bf,""),"important"):e[o]=n;}}const vf=["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=Ga(o);for(let s=0;s<vf.length;s++){const i=vf[s]+o;if(i in e)return Hl[t]=i}return t}const xf="http://www.w3.org/1999/xlink";function _f(e,t,n,o,s,i=Lx(t)){o&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(xf,t.slice(6,t.length)):e.setAttributeNS(xf,t,n):n==null||i&&!Em(n)?e.removeAttribute(t):e.setAttribute(t,i?"":Nn(n)?String(n):n);}function Cf(e,t,n,o,s){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?Ig(n):n);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const a=i==="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=Em(n):n==null&&a==="string"?(n="",r=true):a==="number"&&(n=0,r=true);}try{e[t]=n;}catch{}r&&e.removeAttribute(s||t);}function ho(e,t,n,o){e.addEventListener(t,n,o);}function OC(e,t,n,o){e.removeEventListener(t,n,o);}const kf=Symbol("_vei");function BC(e,t,n,o,s=null){const i=e[kf]||(e[kf]={}),r=i[t];if(o&&r)r.value=o;else {const[a,l]=RC(t);if(o){const c=i[t]=UC(o,s);ho(e,a,c,l);}else r&&(OC(e,a,r,l),i[t]=void 0);}}const $f=/(?:Once|Passive|Capture)$/;function RC(e){let t;if($f.test(e)){t={};let o;for(;o=e.match($f);)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;oo(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=>s=>!s._stopped&&o&&o(s))}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,s,i)=>{const r=s==="svg";t==="class"?IC(e,o,r):t==="style"?LC(e,n,o):Wa(t)?Fc(t)||BC(e,t,n,o,i):(t[0]==="."?(t=t.slice(1),true):t[0]==="^"?(t=t.slice(1),false):HC(e,t,o,r))?(Cf(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&_f(e,t,o,r,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!wt(o))?Cf(e,In(t),o,i,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),_f(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 s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return  false}return Sf(t)&&wt(n)?false:t in e}const Ho=e=>{const t=e.props["onUpdate:modelValue"]||false;return Ee(t)?n=>Nr(t,n):t};function VC(e){e.target.composing=true;}function Ef(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}},s){e[An]=Ho(s);const i=o||s.props&&s.props.type==="number";ho(e,t?"change":"input",r=>{if(r.target.composing)return;let a=e.value;n&&(a=a.trim()),i&&(a=ra(a)),e[An](a);}),n&&ho(e,"change",()=>{e.value=e.value.trim();}),t||(ho(e,"compositionstart",VC),ho(e,"compositionend",Ef),ho(e,"change",Ef));},mounted(e,{value:t}){e.value=t??"";},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:o,trim:s,number:i}},r){if(e[An]=Ho(r),e.composing)return;const a=(i||e.type==="number")&&!/^0\d/.test(e.value)?ra(e.value):e.value,l=t??"";a!==l&&(document.activeElement===e&&e.type!=="range"&&(o&&t===n||s&&e.value.trim()===l)||(e.value=l));}},ye={deep:true,created(e,t,n){e[An]=Ho(n),ho(e,"change",()=>{const o=e._modelValue,s=Zs(e),i=e.checked,r=e[An];if(Ee(o)){const a=zc(o,s),l=a!==-1;if(i&&!l)r(o.concat(s));else if(!i&&l){const c=[...o];c.splice(a,1),r(c);}}else if(ii(o)){const a=new Set(o);i?a.add(s):a.delete(s),r(a);}else r(Lg(e,i));});},mounted:Af,beforeUpdate(e,t,n){e[An]=Ho(n),Af(e,t,n);}};function Af(e,{value:t,oldValue:n},o){e._modelValue=t;let s;if(Ee(t))s=zc(t,o.props.value)>-1;else if(ii(t))s=t.has(o.props.value);else {if(t===n)return;s=hs(t,Lg(e,true));}e.checked!==s&&(e.checked=s);}const Tg={created(e,{value:t},n){e.checked=hs(t,n.props.value),e[An]=Ho(n),ho(e,"change",()=>{e[An](Zs(e));});},beforeUpdate(e,{value:t,oldValue:n},o){e[An]=Ho(o),t!==n&&(e.checked=hs(t,o.props.value));}},gn={deep:true,created(e,{value:t,modifiers:{number:n}},o){const s=ii(t);ho(e,"change",()=>{const i=Array.prototype.filter.call(e.options,r=>r.selected).map(r=>n?ra(Zs(r)):Zs(r));e[An](e.multiple?s?new Set(i):i:i[0]),e._assigning=true,ms(()=>{e._assigning=false;});}),e[An]=Ho(o);},mounted(e,{value:t}){Pf(e,t);},beforeUpdate(e,t,n){e[An]=Ho(n);},updated(e,{value:t}){e._assigning||Pf(e,t);}};function Pf(e,t){const n=e.multiple,o=Ee(t);if(!(n&&!o&&!ii(t))){for(let s=0,i=e.options.length;s<i;s++){const r=e.options[s],a=Zs(r);if(n)if(o){const l=typeof a;l==="string"||l==="number"?r.selected=t.some(c=>String(c)===String(a)):r.selected=zc(t,a)>-1;}else r.selected=t.has(a);else if(hs(Zs(r),t)){e.selectedIndex!==s&&(e.selectedIndex=s);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1);}}function Zs(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){Pr(e,t,n,null,"created");},mounted(e,t,n){Pr(e,t,n,null,"mounted");},beforeUpdate(e,t,n,o){Pr(e,t,n,o,"beforeUpdate");},updated(e,t,n,o){Pr(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 Tg;default:return Ve}}}function Pr(e,t,n,o,s){const r=WC(e.tagName,n.props&&n.props.type)[s];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]=(s,...i)=>{for(let r=0;r<t.length;r++){const a=GC[t[r]];if(a&&a(s,t))return}return e(s,...i)})},JC={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Mg=(e,t)=>{const n=e._withKeys||(e._withKeys={}),o=t.join(".");return n[o]||(n[o]=s=>{if(!("key"in s))return;const i=Ko(s.key);if(t.some(r=>r===i||JC[r]===i))return e(s)})},YC=zt({patchProp:zC},AC);let If;function QC(){return If||(If=G_(YC))}const ao=(...e)=>{const t=QC().createApp(...e),{mount:n}=t;return t.mount=o=>{const s=ZC(o);if(!s)return;const i=t._component;!Oe(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const r=n(s,false,XC(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.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 Og=(e=>(e.VideoPlay="VideoPlay",e))(Og||{});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 sk(){return ok}function ik(e){return new Bi.RateLimiterMemory({points:e?28:99999,duration:e?60:1,execEvenly:false})}function Bg(e){return e.filter(t=>t.startsWith("https://115.com")).length}async function hr(e,t,n){if(e.length===1){Gr(e[0],{active:!t});return}const o=Bg(e);n=n||ik(o>0);const s="open_urls";let i=false;Y.fire({html:"正在打开链接...",showConfirmButton:false,showDenyButton:true,denyButtonText:"停止打开",allowEscapeKey:false,allowOutsideClick:false}).then(l=>{l.isDenied&&(i=true,Y.close());});const r=[],a=async()=>{const l=e.length-r.length,{isDenied:c}=await Y.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();};Y.showLoading();for(let l=0;l<e.length;l++){if(i){Y.close(),await a();return}const c=e[l];Y.update({html:`正在打开第 ${l+1} 个链接... 进度: ${l+1} / ${e.length}`});const u=Gr(c,{active:!t});if(r.push(u),l===0&&await n.consume(s,1),l<e.length-1){let f=o>0?500:200;try{const w=await n.consume(s,1);console.log("[openUrls] RateLimiterRes",w),!w.remainingPoints&&w.msBeforeNext>0&&(f=w.msBeforeNext);}catch(w){if(w instanceof Bi.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);Y.update({html:`将在 ${p} 秒后打开第 ${l+2} 个链接... 进度: ${l+1} / ${e.length}`}),await Mt(f);}}Y.hideLoading(),await a();}function yo(e){return {aid:1,cid:"",o:Va.userPtime,asc:Bo.false,offset:0,show_dir:Bo.true,limit:115,natsort:Bo.false,format:"json",...e}}async function id(e){const t=za(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 Vs(e,t=50){let n=[],o=0;for(;;){e.offset=o;const s=await id(e);if(!s.data||!s.data.length||(s.count>s.data.length&&e.limit!==s.data.length&&(console.warn(`[getFilesList] invalid limit(${e.limit}) detected! max limit is ${s.page_size}, correct it now!`),e.limit=s.page_size),n=[...n,...s.data],o+=e.limit,o>=s.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 Vs(yo({cid:e,limit:1150}))).find(s=>s.play_long&&s.play_long>0);if(!o)throw new Error("该目录下没有可以播放的媒体文件![by_files]");return _s(o)}let ak=[];function Tu(e,t){return t===Gn.alt&&e.altKey||t===Gn.ctrl&&e.ctrlKey||t===Gn.shift&&e.shiftKey||t===Gn.meta&&e.metaKey}function Df(e){return e.includes("https://115.com")&&Zi("mode",e)==="search"}function Rg(e,t){const{keyToTriggerManual:n,keyToTriggerSearchScope:o,auxClickTriggerManual:s}=e;let i=t||"";const r=[],a=[];return s&&a.push("鼠标中键"),n&&a.push(Gn[n]),a.length&&r.push(`${a.join("或")}辅助键改搜索内容`),o&&r.push(`${Gn[o]}辅助键选搜索目录`),r.length&&(i+=`
提示: ${r.join(" / ")}`),i}async function lk(){return new Promise((e,t)=>{kt().Core.FileSelectDG.Open((o,s)=>{const i=o[o.length-1];console.log("[selectSearchScope] folder",i),i&&i.cid?e(i):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,s=void 0){const i=[],r=await ut();n=n||mn;for(const a of t){s=s!==void 0?s:a.openInBackground;const l=Ta(e,{key:`_ce_s_${a.key}`,label:a.label,icon:a.icon,title:Rg(r,a.memo),onClick:async(c,u)=>{u.stopPropagation(),u.preventDefault(),c instanceof lc&&await c.closeMenu(),await mr(c,a,u,r,n,o,s);}});i.push(l);}return i}async function mr(e,t,n,o,s=mn,i,r=void 0){try{const a=o.keyToTriggerManual,l=o.auxClickTriggerManual;let c;(a&&Tu(n,a)||l&&n.button===1)&&(c={names:[Oc.manual],position:o.injectManualFuncPosition});let f=!1,p=[];if(i&&[Ie.selection,Ie.selectionSub].includes(i))p=await ro(!0),f=!0;else {const I=$(n.target).closest("li");p.push(await s(I[0]));}if(!p.length)throw new Error("没有选中任何文件!");const w=await Qt(),g=[],b=[],v=async I=>{try{const E=await Oi(I,t,w,c);if(!E)b.push(`文件 id="${I.id}", name="${I.name}" 的链接构建失败: 无法构建有效的搜索链接!`);else return E}catch(E){return b.push(`文件 id="${I.id}", name="${I.name}" 的链接构建失败: ${E.message}`),""}};let S=0;for(const I of p){const E=await v(I);E&&(Df(E)&&S++,g.push(E));}if(S>0){const I=o.keyToTriggerSearchScope;if(I&&Tu(n,I)){const E=await lk();if(E)for(let P=0;P<g.length;P++)Df(g[P])&&(g[P]=g[P].replace(/(cid%3D)(\d+)/,"$1"+E.cid));else return}}if(console.warn("[search files] urls: %o, errors: %o",g,b),!g.length)throw new Error("没有有效的搜索链接!"+(b.length?`
错误信息:
${b.join(`
`)}`:""));await uk(g,!!r);}catch(a){console.error(a),Q({title:"搜索失败",text:a.toString(),icon:"error",timer:0,showCloseButton:true});}}async function uk(e,t){const n=Bg(e),o=ck(n>0);await hr(e,t,o);}function ck(e){return new Bi.RateLimiterMemory({points:e?28:99999,duration:e?60:1,execEvenly:false})}async function Fg(e,t){if(console.log("[playDirOnAnxia]",e,t),!t)try{Q({title:"正在查找可播放的文件...",text:"请稍等...",icon:"info"}),Y.showLoading(),t=await rk(e),console.log("[playDirOnAnxia] file",t);}catch(o){console.error(o),Q({title:"播放失败",text:o.toString(),icon:"error"});return}t||Q({title:"播放失败",text:"没有在该目录下找到可播放的文件![file_null]",icon:"error"});const n=mm(t.pickCode);window.open(n,"_blank","noopener noreferrer");}async function Ng(e,t,n,o){o.stopPropagation(),o.preventDefault();const s=t.keyToTriggerManual,i=t.auxClickTriggerManual,r=s&&Tu(o,s)||i&&o.button===1;try{let a;r&&(a={names:[Oc.manual],position:t.injectManualFuncPosition});const l=$(o.target).closest("li"),c=mn(l),u=await Qt(),f=await Oi(c,e,u,a);if(c.isDir&&Lc(f)){Fg(c.id);return}if(e.key==="p_builtin_115plus"){if(c.isDir){const w=o.metaKey||o.ctrlKey;ma(void 0,c.id,w);}else ma([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),Q({title:"播放失败",text:a.toString(),icon:"error"});}}async function rd(e){const t="_p_null_",n=[...await Cm(),...ak],o=n.filter(l=>l.enabled),s=[...o,...(await ks(no.play)).filter(l=>l.enabled)],i=(l,c)=>l.find(u=>u.key===c);let r=i(o,e.defaultPlayer||"p_builtin_online");r||(r=i(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=s.findIndex(l=>l.key===r.key);return a>-1&&s.splice(a,1),{keyNull:t,noRealDefault:r.key===t,defaultPlayer:r,customUrlItems:s}}async function dk(e,t){const n=[],o=await ut();for(const s of t){const i=Ta(e,{key:`_ce_p_${s.key}`,label:s.label,icon:s.icon,title:s.memo,onClick:async(r,a)=>{Ng(s,o,r,a);}});n.push(i);}return n}async function ma(e,t,n=false){console.log("[playByPlus]",e,t,n);const o=sk(),[s,i]=o.ensureInstalled();if(!s){i();return}const r=l=>{Q({title:l||"没有可播放的视频",icon:"warning"});};if(!e||!e.length){if(!t){r("未指定视频文件和目录ID");return}if(n){if(t==="0"){r("根目录不支持递归获取视频文件");return}const{isConfirmed:u}=await Y.fire({title:"播放目录下全部层级的视频",text:"即将递归获取目录下的视频文件(最多1150)并播放,是否继续?",icon:"warning",showCancelButton:true});if(!u)return}const l=yo({cid:t,limit:1150});n&&(l.type=$n.video);const c=await id(l);if(c.count)e=fm(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(Og.VideoPlay,a);}var mt=(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))(mt||{});function gr(e,t,n){const o=[];for(const i of e){let r;switch(t){case 0:case 2:r=i.name;break;case 1:case 3:r=i.isDir?i.name:i.name.replace(/\.[^.]+$/,"");break;case 4:r=i.id;break;case 5:r=i.pickCode;break;case 6:r=i.hash;break;case 7:r=`${i.hash}//${i.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 sl(e,t,n){const o=n===1||n===3;let i=n===2||n===3?t.replace(/\/[^/]+$/,""):t;return i.startsWith("/")||(i="/"+i),o&&(i=i.replace(/\//g,"\\")),i}async function fk(e){return async(t,n)=>{const o=await jt(),r=si()[0].querySelectorAll("li[file_id].selected");if(!r.length){Q({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 Y.fire({title:"文件移动到同名目录",html:a,icon:"warning",showCancelButton:true,confirmButtonText:"继续",cancelButtonText:"取消"});if(l){Y.fire({title:"文件移动到同名目录",html:"正在处理...",didOpen:()=>{Y.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(/\.[^\.]+$/,""),g=`${c+1} / ${r.length} - `+Math.round(c/r.length*100)+"%";Y.update({html:`${g} 正在为文件「${p}」创建目录「${w}」`});const b=await Y0(w,o,true);Y.update({html:`创建目录「${w}」成功。id=${b}`}),Y.update({html:`${g} 正在移动文件「${p}」到目录「${w}」`}),await im(b,[f.id]),await Mt(500);}Y.hideLoading(),Y.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 Ug(e,t,n){const o=await W0(e),s=[];for(let i=0;i<e.length;i++){e[i].name=n?n(e[i].name):e[i].name;const r=o.get(e[i].parentId);if(!r)throw new Error(`无法获取文件 "${e[i].name}" 的上级目录路径!`);const a=pk(r).map(c=>n?n(c):c),l=ia([...a,e[i].name],Oo.unix);s.push(await sl(e[i],l,t));}return s}let ql=ps.unknown;async function ga(e){const t=await Qt();ql===ps.unknown&&(ql=await b0(t));let n="";if(e.id==="0")n="/";else {let s=await qa(e,true);s=s.map(i=>un(t,i)),n=await sl(e,s.join("/"),e.isDir?0:2);}const o=await h0(t,n,ql);console.log("url: ",o),window.open(o,"_blank","noopener noreferrer"),Q({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 s,i,r,a;for(a=0;a<4;a+=1)for(i=a*8,s=t[a],r=0;r<8;r+=2)o[i+1+r]=n.charAt(s&15),s>>>=4,o[i+0+r]=n.charAt(s&15),s>>>=4;return o.join("")}static _md5cycle(t,n){let o=t[0],s=t[1],i=t[2],r=t[3];o+=(s&i|~s&r)+n[0]-680876936|0,o=(o<<7|o>>>25)+s|0,r+=(o&s|~o&i)+n[1]-389564586|0,r=(r<<12|r>>>20)+o|0,i+=(r&o|~r&s)+n[2]+606105819|0,i=(i<<17|i>>>15)+r|0,s+=(i&r|~i&o)+n[3]-1044525330|0,s=(s<<22|s>>>10)+i|0,o+=(s&i|~s&r)+n[4]-176418897|0,o=(o<<7|o>>>25)+s|0,r+=(o&s|~o&i)+n[5]+1200080426|0,r=(r<<12|r>>>20)+o|0,i+=(r&o|~r&s)+n[6]-1473231341|0,i=(i<<17|i>>>15)+r|0,s+=(i&r|~i&o)+n[7]-45705983|0,s=(s<<22|s>>>10)+i|0,o+=(s&i|~s&r)+n[8]+1770035416|0,o=(o<<7|o>>>25)+s|0,r+=(o&s|~o&i)+n[9]-1958414417|0,r=(r<<12|r>>>20)+o|0,i+=(r&o|~r&s)+n[10]-42063|0,i=(i<<17|i>>>15)+r|0,s+=(i&r|~i&o)+n[11]-1990404162|0,s=(s<<22|s>>>10)+i|0,o+=(s&i|~s&r)+n[12]+1804603682|0,o=(o<<7|o>>>25)+s|0,r+=(o&s|~o&i)+n[13]-40341101|0,r=(r<<12|r>>>20)+o|0,i+=(r&o|~r&s)+n[14]-1502002290|0,i=(i<<17|i>>>15)+r|0,s+=(i&r|~i&o)+n[15]+1236535329|0,s=(s<<22|s>>>10)+i|0,o+=(s&r|i&~r)+n[1]-165796510|0,o=(o<<5|o>>>27)+s|0,r+=(o&i|s&~i)+n[6]-1069501632|0,r=(r<<9|r>>>23)+o|0,i+=(r&s|o&~s)+n[11]+643717713|0,i=(i<<14|i>>>18)+r|0,s+=(i&o|r&~o)+n[0]-373897302|0,s=(s<<20|s>>>12)+i|0,o+=(s&r|i&~r)+n[5]-701558691|0,o=(o<<5|o>>>27)+s|0,r+=(o&i|s&~i)+n[10]+38016083|0,r=(r<<9|r>>>23)+o|0,i+=(r&s|o&~s)+n[15]-660478335|0,i=(i<<14|i>>>18)+r|0,s+=(i&o|r&~o)+n[4]-405537848|0,s=(s<<20|s>>>12)+i|0,o+=(s&r|i&~r)+n[9]+568446438|0,o=(o<<5|o>>>27)+s|0,r+=(o&i|s&~i)+n[14]-1019803690|0,r=(r<<9|r>>>23)+o|0,i+=(r&s|o&~s)+n[3]-187363961|0,i=(i<<14|i>>>18)+r|0,s+=(i&o|r&~o)+n[8]+1163531501|0,s=(s<<20|s>>>12)+i|0,o+=(s&r|i&~r)+n[13]-1444681467|0,o=(o<<5|o>>>27)+s|0,r+=(o&i|s&~i)+n[2]-51403784|0,r=(r<<9|r>>>23)+o|0,i+=(r&s|o&~s)+n[7]+1735328473|0,i=(i<<14|i>>>18)+r|0,s+=(i&o|r&~o)+n[12]-1926607734|0,s=(s<<20|s>>>12)+i|0,o+=(s^i^r)+n[5]-378558|0,o=(o<<4|o>>>28)+s|0,r+=(o^s^i)+n[8]-2022574463|0,r=(r<<11|r>>>21)+o|0,i+=(r^o^s)+n[11]+1839030562|0,i=(i<<16|i>>>16)+r|0,s+=(i^r^o)+n[14]-35309556|0,s=(s<<23|s>>>9)+i|0,o+=(s^i^r)+n[1]-1530992060|0,o=(o<<4|o>>>28)+s|0,r+=(o^s^i)+n[4]+1272893353|0,r=(r<<11|r>>>21)+o|0,i+=(r^o^s)+n[7]-155497632|0,i=(i<<16|i>>>16)+r|0,s+=(i^r^o)+n[10]-1094730640|0,s=(s<<23|s>>>9)+i|0,o+=(s^i^r)+n[13]+681279174|0,o=(o<<4|o>>>28)+s|0,r+=(o^s^i)+n[0]-358537222|0,r=(r<<11|r>>>21)+o|0,i+=(r^o^s)+n[3]-722521979|0,i=(i<<16|i>>>16)+r|0,s+=(i^r^o)+n[6]+76029189|0,s=(s<<23|s>>>9)+i|0,o+=(s^i^r)+n[9]-640364487|0,o=(o<<4|o>>>28)+s|0,r+=(o^s^i)+n[12]-421815835|0,r=(r<<11|r>>>21)+o|0,i+=(r^o^s)+n[15]+530742520|0,i=(i<<16|i>>>16)+r|0,s+=(i^r^o)+n[2]-995338651|0,s=(s<<23|s>>>9)+i|0,o+=(i^(s|~r))+n[0]-198630844|0,o=(o<<6|o>>>26)+s|0,r+=(s^(o|~i))+n[7]+1126891415|0,r=(r<<10|r>>>22)+o|0,i+=(o^(r|~s))+n[14]-1416354905|0,i=(i<<15|i>>>17)+r|0,s+=(r^(i|~o))+n[5]-57434055|0,s=(s<<21|s>>>11)+i|0,o+=(i^(s|~r))+n[12]+1700485571|0,o=(o<<6|o>>>26)+s|0,r+=(s^(o|~i))+n[3]-1894986606|0,r=(r<<10|r>>>22)+o|0,i+=(o^(r|~s))+n[10]-1051523|0,i=(i<<15|i>>>17)+r|0,s+=(r^(i|~o))+n[1]-2054922799|0,s=(s<<21|s>>>11)+i|0,o+=(i^(s|~r))+n[8]+1873313359|0,o=(o<<6|o>>>26)+s|0,r+=(s^(o|~i))+n[15]-30611744|0,r=(r<<10|r>>>22)+o|0,i+=(o^(r|~s))+n[6]-1560198380|0,i=(i<<15|i>>>17)+r|0,s+=(r^(i|~o))+n[13]+1309151649|0,s=(s<<21|s>>>11)+i|0,o+=(i^(s|~r))+n[4]-145523070|0,o=(o<<6|o>>>26)+s|0,r+=(s^(o|~i))+n[11]-1120210379|0,r=(r<<10|r>>>22)+o|0,i+=(o^(r|~s))+n[2]+718787259|0,i=(i<<15|i>>>17)+r|0,s+=(r^(i|~o))+n[9]-343485551|0,s=(s<<21|s>>>11)+i|0,t[0]=o+t[0]|0,t[1]=s+t[1]|0,t[2]=i+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 s=this._bufferLength,i,r;for(r=0;r<t.length;r+=1){if(i=t.charCodeAt(r),i<128)n[s++]=i;else if(i<2048)n[s++]=(i>>>6)+192,n[s++]=i&63|128;else if(i<55296||i>56319)n[s++]=(i>>>12)+224,n[s++]=i>>>6&63|128,n[s++]=i&63|128;else {if(i=(i-55296)*1024+(t.charCodeAt(++r)-56320)+65536,i>1114111)throw new Error("Unicode standard supports code points up to U+10FFFF");n[s++]=(i>>>18)+240,n[s++]=i>>>12&63|128,n[s++]=i>>>6&63|128,n[s++]=i&63|128;}s>=64&&(this._dataLength+=64,_t._md5cycle(this._state,o),s-=64,o[0]=o[16]);}return this._bufferLength=s,this}appendAsciiStr(t){const n=this._buffer8,o=this._buffer32;let s=this._bufferLength,i,r=0;for(;;){for(i=Math.min(t.length-r,64-s);i--;)n[s++]=t.charCodeAt(r++);if(s<64)break;this._dataLength+=64,_t._md5cycle(this._state,o),s=0;}return this._bufferLength=s,this}appendByteArray(t){const n=this._buffer8,o=this._buffer32;let s=this._bufferLength,i,r=0;for(;;){for(i=Math.min(t.length-r,64-s);i--;)n[s++]=t[r++];if(s<64)break;this._dataLength+=64,_t._md5cycle(this._state,o),s=0;}return this._bufferLength=s,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,s=this._state;let i;for(this._dataLength=t.length,this._bufferLength=t.buflen,s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],i=0;i<n.length;i+=1)this._buffer8[i]=n.charCodeAt(i);}end(t=false){const n=this._bufferLength,o=this._buffer8,s=this._buffer32,i=(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,s.set(_t.buffer32Identity.subarray(i),i),n>55&&(_t._md5cycle(this._state,s),s.set(_t.buffer32Identity)),r<=4294967295)s[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;s[14]=l,s[15]=c;}return _t._md5cycle(this._state,s),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:{}},Tf;function hk(){return Tf||(Tf=1,(function(e){var t=(function(n){var o=1e7,s=7,i=9007199254740992,r=g(i),a="0123456789abcdefghijklmnopqrstuvwxyz",l=typeof BigInt=="function";function c(h,y,C,D){return typeof h>"u"?c[0]:typeof y<"u"?+y==10&&!C?oe(h):J(h,y,C,D):oe(h)}function u(h,y){this.value=h,this.sign=y,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 -i<h&&h<i}function g(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 b(h){v(h);var y=h.length;if(y<4&&dt(h,r)<0)switch(y){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 y=h.length;h[--y]===0;);h.length=y+1;}function S(h){for(var y=new Array(h),C=-1;++C<h;)y[C]=0;return y}function I(h){return h>0?Math.floor(h):Math.ceil(h)}function E(h,y){var C=h.length,D=y.length,N=new Array(C),R=0,G=o,X,ae;for(ae=0;ae<D;ae++)X=h[ae]+y[ae]+R,R=X>=G?1:0,N[ae]=X-R*G;for(;ae<C;)X=h[ae]+R,R=X===G?1:0,N[ae++]=X-R*G;return R>0&&N.push(R),N}function P(h,y){return h.length>=y.length?E(h,y):E(y,h)}function M(h,y){var C=h.length,D=new Array(C),N=o,R,G;for(G=0;G<C;G++)R=h[G]-N+y,y=Math.floor(R/N),D[G]=R-y*N,y+=1;for(;y>0;)D[G++]=y%N,y=Math.floor(y/N);return D}u.prototype.add=function(h){var y=oe(h);if(this.sign!==y.sign)return this.subtract(y.negate());var C=this.value,D=y.value;return y.isSmall?new u(M(C,Math.abs(D)),this.sign):new u(P(C,D),this.sign)},u.prototype.plus=u.prototype.add,f.prototype.add=function(h){var y=oe(h),C=this.value;if(C<0!==y.sign)return this.subtract(y.negate());var D=y.value;if(y.isSmall){if(w(C+D))return new f(C+D);D=g(Math.abs(D));}return new u(M(D,Math.abs(C)),C<0)},f.prototype.plus=f.prototype.add,p.prototype.add=function(h){return new p(this.value+oe(h).value)},p.prototype.plus=p.prototype.add;function z(h,y){var C=h.length,D=y.length,N=new Array(C),R=0,G=o,X,ae;for(X=0;X<D;X++)ae=h[X]-R-y[X],ae<0?(ae+=G,R=1):R=0,N[X]=ae;for(X=D;X<C;X++){if(ae=h[X]-R,ae<0)ae+=G;else {N[X++]=ae;break}N[X]=ae;}for(;X<C;X++)N[X]=h[X];return v(N),N}function U(h,y,C){var D;return dt(h,y)>=0?D=z(h,y):(D=z(y,h),C=!C),D=b(D),typeof D=="number"?(C&&(D=-D),new f(D)):new u(D,C)}function ie(h,y,C){var D=h.length,N=new Array(D),R=-y,G=o,X,ae;for(X=0;X<D;X++)ae=h[X]+R,R=Math.floor(ae/G),ae%=G,N[X]=ae<0?ae+G:ae;return N=b(N),typeof N=="number"?(C&&(N=-N),new f(N)):new u(N,C)}u.prototype.subtract=function(h){var y=oe(h);if(this.sign!==y.sign)return this.add(y.negate());var C=this.value,D=y.value;return y.isSmall?ie(C,Math.abs(D),this.sign):U(C,D,this.sign)},u.prototype.minus=u.prototype.subtract,f.prototype.subtract=function(h){var y=oe(h),C=this.value;if(C<0!==y.sign)return this.add(y.negate());var D=y.value;return y.isSmall?new f(C-D):ie(D,Math.abs(C),C>=0)},f.prototype.minus=f.prototype.subtract,p.prototype.subtract=function(h){return new p(this.value-oe(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,y=new f(-this.value);return y.sign=!h,y},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 pe(h,y){var C=h.length,D=y.length,N=C+D,R=S(N),G=o,X,ae,be,Me,Be;for(be=0;be<C;++be){Me=h[be];for(var We=0;We<D;++We)Be=y[We],X=Me*Be+R[be+We],ae=Math.floor(X/G),R[be+We]=X-ae*G,R[be+We+1]+=ae;}return v(R),R}function ne(h,y){var C=h.length,D=new Array(C),N=o,R=0,G,X;for(X=0;X<C;X++)G=h[X]*y+R,R=Math.floor(G/N),D[X]=G-R*N;for(;R>0;)D[X++]=R%N,R=Math.floor(R/N);return D}function O(h,y){for(var C=[];y-- >0;)C.push(0);return C.concat(h)}function B(h,y){var C=Math.max(h.length,y.length);if(C<=30)return pe(h,y);C=Math.ceil(C/2);var D=h.slice(C),N=h.slice(0,C),R=y.slice(C),G=y.slice(0,C),X=B(N,G),ae=B(D,R),be=B(P(N,D),P(G,R)),Me=P(P(X,O(z(z(be,X),ae),C)),O(ae,2*C));return v(Me),Me}function q(h,y){return  -0.012*h-.012*y+15e-6*h*y>0}u.prototype.multiply=function(h){var y=oe(h),C=this.value,D=y.value,N=this.sign!==y.sign,R;if(y.isSmall){if(D===0)return c[0];if(D===1)return this;if(D===-1)return this.negate();if(R=Math.abs(D),R<o)return new u(ne(C,R),N);D=g(R);}return q(C.length,D.length)?new u(B(C,D),N):new u(pe(C,D),N)},u.prototype.times=u.prototype.multiply;function le(h,y,C){return h<o?new u(ne(y,h),C):new u(pe(y,g(h)),C)}f.prototype._multiplyBySmall=function(h){return w(h.value*this.value)?new f(h.value*this.value):le(Math.abs(h.value),g(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 oe(h)._multiplyBySmall(this)},f.prototype.times=f.prototype.multiply,p.prototype.multiply=function(h){return new p(this.value*oe(h).value)},p.prototype.times=p.prototype.multiply;function ve(h){var y=h.length,C=S(y+y),D=o,N,R,G,X,ae;for(G=0;G<y;G++){X=h[G],R=0-X*X;for(var be=G;be<y;be++)ae=h[be],N=2*(X*ae)+C[G+be]+R,R=Math.floor(N/D),C[G+be]=N-R*D;C[G+y]=R;}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(g(Math.abs(this.value))),false)},p.prototype.square=function(h){return new p(this.value*this.value)};function ke(h,y){var C=h.length,D=y.length,N=o,R=S(y.length),G=y[D-1],X=Math.ceil(N/(2*G)),ae=ne(h,X),be=ne(y,X),Me,Be,We,dn,Zt,_l,Cl;for(ae.length<=C&&ae.push(0),be.push(0),G=be[D-1],Be=C-D;Be>=0;Be--){for(Me=N-1,ae[Be+D]!==G&&(Me=Math.floor((ae[Be+D]*N+ae[Be+D-1])/G)),We=0,dn=0,_l=be.length,Zt=0;Zt<_l;Zt++)We+=Me*be[Zt],Cl=Math.floor(We/N),dn+=ae[Be+Zt]-(We-Cl*N),We=Cl,dn<0?(ae[Be+Zt]=dn+N,dn=-1):(ae[Be+Zt]=dn,dn=0);for(;dn!==0;){for(Me-=1,We=0,Zt=0;Zt<_l;Zt++)We+=ae[Be+Zt]-N+be[Zt],We<0?(ae[Be+Zt]=We+N,We=0):(ae[Be+Zt]=We,We=1);dn+=We;}R[Be]=Me;}return ae=$e(ae,X)[0],[b(R),b(ae)]}function _e(h,y){for(var C=h.length,D=y.length,N=[],R=[],G=o,X,ae,be,Me,Be;C;){if(R.unshift(h[--C]),v(R),dt(R,y)<0){N.push(0);continue}ae=R.length,be=R[ae-1]*G+R[ae-2],Me=y[D-1]*G+y[D-2],ae>D&&(be=(be+1)*G),X=Math.ceil(be/Me);do{if(Be=ne(y,X),dt(Be,R)<=0)break;X--;}while(X);N.push(X),R=z(R,Be);}return N.reverse(),[b(N),b(R)]}function $e(h,y){var C=h.length,D=S(C),N=o,R,G,X,ae;for(X=0,R=C-1;R>=0;--R)ae=X*N+h[R],G=I(ae/y),X=ae-G*y,D[R]=G|0;return [D,X|0]}function Ne(h,y){var C,D=oe(y);if(l)return [new p(h.value/D.value),new p(h.value%D.value)];var N=h.value,R=D.value,G;if(R===0)throw new Error("Cannot divide by zero");if(h.isSmall)return D.isSmall?[new f(I(N/R)),new f(N%R)]:[c[0],h];if(D.isSmall){if(R===1)return [h,c[0]];if(R==-1)return [h.negate(),c[0]];var X=Math.abs(R);if(X<o){C=$e(N,X),G=b(C[0]);var ae=C[1];return h.sign&&(ae=-ae),typeof G=="number"?(h.sign!==D.sign&&(G=-G),[new f(G),new f(ae)]):[new u(G,h.sign!==D.sign),new f(ae)]}R=g(X);}var be=dt(N,R);if(be===-1)return [c[0],h];if(be===0)return [c[h.sign===D.sign?1:-1],c[0]];N.length+R.length<=200?C=ke(N,R):C=_e(N,R),G=C[0];var Me=h.sign!==D.sign,Be=C[1],We=h.sign;return typeof G=="number"?(Me&&(G=-G),G=new f(G)):G=new u(G,Me),typeof Be=="number"?(We&&(Be=-Be),Be=new f(Be)):Be=new u(Be,We),[G,Be]}u.prototype.divmod=function(h){var y=Ne(this,h);return {quotient:y[0],remainder:y[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/oe(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%oe(h).value)},f.prototype.remainder=f.prototype.mod=u.prototype.remainder=u.prototype.mod,u.prototype.pow=function(h){var y=oe(h),C=this.value,D=y.value,N,R,G;if(D===0)return c[1];if(C===0)return c[0];if(C===1)return c[1];if(C===-1)return y.isEven()?c[1]:c[-1];if(y.sign)return c[0];if(!y.isSmall)throw new Error("The exponent "+y.toString()+" is too large.");if(this.isSmall&&w(N=Math.pow(C,D)))return new f(I(N));for(R=this,G=c[1];D&true&&(G=G.times(R),--D),D!==0;)D/=2,R=R.square();return G},f.prototype.pow=u.prototype.pow,p.prototype.pow=function(h){var y=oe(h),C=this.value,D=y.value,N=BigInt(0),R=BigInt(1),G=BigInt(2);if(D===N)return c[1];if(C===N)return c[0];if(C===R)return c[1];if(C===BigInt(-1))return y.isEven()?c[1]:c[-1];if(y.isNegative())return new p(N);for(var X=this,ae=c[1];(D&R)===R&&(ae=ae.times(X),--D),D!==N;)D/=G,X=X.square();return ae},u.prototype.modPow=function(h,y){if(h=oe(h),y=oe(y),y.isZero())throw new Error("Cannot take modPow with modulus 0");var C=c[1],D=this.mod(y);for(h.isNegative()&&(h=h.multiply(c[-1]),D=D.modInv(y));h.isPositive();){if(D.isZero())return c[0];h.isOdd()&&(C=C.multiply(D).mod(y)),h=h.divide(2),D=D.square().mod(y);}return C},p.prototype.modPow=f.prototype.modPow=u.prototype.modPow;function dt(h,y){if(h.length!==y.length)return h.length>y.length?1:-1;for(var C=h.length-1;C>=0;C--)if(h[C]!==y[C])return h[C]>y[C]?1:-1;return 0}u.prototype.compareAbs=function(h){var y=oe(h),C=this.value,D=y.value;return y.isSmall?1:dt(C,D)},f.prototype.compareAbs=function(h){var y=oe(h),C=Math.abs(this.value),D=y.value;return y.isSmall?(D=Math.abs(D),C===D?0:C>D?1:-1):-1},p.prototype.compareAbs=function(h){var y=this.value,C=oe(h).value;return y=y>=0?y:-y,C=C>=0?C:-C,y===C?0:y>C?1:-1},u.prototype.compare=function(h){if(h===1/0)return  -1;if(h===-1/0)return 1;var y=oe(h),C=this.value,D=y.value;return this.sign!==y.sign?y.sign?1:-1:y.isSmall?this.sign?-1:1:dt(C,D)*(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 y=oe(h),C=this.value,D=y.value;return y.isSmall?C==D?0:C>D?1:-1:C<0!==y.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 y=this.value,C=oe(h).value;return y===C?0:y>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 y=oe(h);return y.isZero()?false:y.isUnit()?true:y.compareAbs(2)===0?this.isEven():this.mod(y).isZero()},p.prototype.isDivisibleBy=f.prototype.isDivisibleBy=u.prototype.isDivisibleBy;function we(h){var y=h.abs();if(y.isUnit())return  false;if(y.equals(2)||y.equals(3)||y.equals(5))return  true;if(y.isEven()||y.isDivisibleBy(3)||y.isDivisibleBy(5))return  false;if(y.lesser(49))return  true}function L(h,y){for(var C=h.prev(),D=C,N=0,R,G,X;D.isEven();)D=D.divide(2),N++;e:for(G=0;G<y.length;G++)if(!h.lesser(y[G])&&(X=t(y[G]).modPow(D,h),!(X.isUnit()||X.equals(C)))){for(R=N-1;R!=0;R--){if(X=X.square().mod(h),X.isUnit())return  false;if(X.equals(C))continue e}return  false}return  true}u.prototype.isPrime=function(h){var y=we(this);if(y!==n)return y;var C=this.abs(),D=C.bitLength();if(D<=64)return L(C,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var N=Math.log(2)*D.toJSNumber(),R=Math.ceil(h===true?2*Math.pow(N,2):N),G=[],X=0;X<R;X++)G.push(t(X+2));return L(C,G)},p.prototype.isPrime=f.prototype.isPrime=u.prototype.isPrime,u.prototype.isProbablePrime=function(h,y){var C=we(this);if(C!==n)return C;for(var D=this.abs(),N=h===n?5:h,R=[],G=0;G<N;G++)R.push(t.randBetween(2,D.minus(2),y));return L(D,R)},p.prototype.isProbablePrime=f.prototype.isProbablePrime=u.prototype.isProbablePrime,u.prototype.modInv=function(h){for(var y=t.zero,C=t.one,D=oe(h),N=this.abs(),R,G,X;!N.isZero();)R=D.divide(N),G=y,X=D,y=C,D=N,C=G.subtract(R.multiply(C)),N=X.subtract(R.multiply(N));if(!D.isUnit())throw new Error(this.toString()+" and "+h.toString()+" are not co-prime");return y.compare(0)===-1&&(y=y.add(h)),this.isNegative()?y.negate():y},p.prototype.modInv=f.prototype.modInv=u.prototype.modInv,u.prototype.next=function(){var h=this.value;return this.sign?ie(h,1,this.sign):new u(M(h,1),this.sign)},f.prototype.next=function(){var h=this.value;return h+1<i?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(M(h,1),true):ie(h,1,this.sign)},f.prototype.prev=function(){var h=this.value;return h-1>-i?new f(h-1):new u(r,true)},p.prototype.prev=function(){return new p(this.value-BigInt(1))};for(var he=[1];2*he[he.length-1]<=o;)he.push(2*he[he.length-1]);var st=he.length,pt=he[st-1];function cn(h){return Math.abs(h)<=o}u.prototype.shiftLeft=function(h){var y=oe(h).toJSNumber();if(!cn(y))throw new Error(String(y)+" is too large for shifting.");if(y<0)return this.shiftRight(-y);var C=this;if(C.isZero())return C;for(;y>=st;)C=C.multiply(pt),y-=st-1;return C.multiply(he[y])},p.prototype.shiftLeft=f.prototype.shiftLeft=u.prototype.shiftLeft,u.prototype.shiftRight=function(h){var y,C=oe(h).toJSNumber();if(!cn(C))throw new Error(String(C)+" is too large for shifting.");if(C<0)return this.shiftLeft(-C);for(var D=this;C>=st;){if(D.isZero()||D.isNegative()&&D.isUnit())return D;y=Ne(D,pt),D=y[1].isNegative()?y[0].prev():y[0],C-=st-1;}return y=Ne(D,he[C]),y[1].isNegative()?y[0].prev():y[0]},p.prototype.shiftRight=f.prototype.shiftRight=u.prototype.shiftRight;function Xt(h,y,C){y=oe(y);for(var D=h.isNegative(),N=y.isNegative(),R=D?h.not():h,G=N?y.not():y,X=0,ae=0,be=null,Me=null,Be=[];!R.isZero()||!G.isZero();)be=Ne(R,pt),X=be[1].toJSNumber(),D&&(X=pt-1-X),Me=Ne(G,pt),ae=Me[1].toJSNumber(),N&&(ae=pt-1-ae),R=be[0],G=Me[0],Be.push(C(X,ae));for(var We=C(D?1:0,N?1:0)!==0?t(-1):t(0),dn=Be.length-1;dn>=0;dn-=1)We=We.multiply(pt).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(y,C){return y&C})},p.prototype.and=f.prototype.and=u.prototype.and,u.prototype.or=function(h){return Xt(this,h,function(y,C){return y|C})},p.prototype.or=f.prototype.or=u.prototype.or,u.prototype.xor=function(h){return Xt(this,h,function(y,C){return y^C})},p.prototype.xor=f.prototype.xor=u.prototype.xor;var lo=1<<30,As=(o&-o)*(o&-o)|lo;function xn(h){var y=h.value,C=typeof y=="number"?y|lo:typeof y=="bigint"?y|BigInt(lo):y[0]+y[1]*o|As;return C&-C}function ee(h,y){if(y.compareTo(h)<=0){var C=ee(h,y.square(y)),D=C.p,N=C.e,R=D.multiply(y);return R.compareTo(h)<=0?{p:R,e:N*2+1}:{p:D,e:N*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(ee(h,t(2)).e).add(t(1))},p.prototype.bitLength=f.prototype.bitLength=u.prototype.bitLength;function m(h,y){return h=oe(h),y=oe(y),h.greater(y)?h:y}function x(h,y){return h=oe(h),y=oe(y),h.lesser(y)?h:y}function k(h,y){if(h=oe(h).abs(),y=oe(y).abs(),h.equals(y))return h;if(h.isZero())return y;if(y.isZero())return h;for(var C=c[1],D,N;h.isEven()&&y.isEven();)D=x(xn(h),xn(y)),h=h.divide(D),y=y.divide(D),C=C.multiply(D);for(;h.isEven();)h=h.divide(xn(h));do{for(;y.isEven();)y=y.divide(xn(y));h.greater(y)&&(N=y,y=h,h=N),y=y.subtract(h);}while(!y.isZero());return C.isUnit()?h:h.multiply(C)}function Z(h,y){return h=oe(h).abs(),y=oe(y).abs(),h.divide(k(h,y)).multiply(y)}function j(h,y,C){h=oe(h),y=oe(y);var D=C||Math.random,N=x(h,y),R=m(h,y),G=R.subtract(N).add(1);if(G.isSmall)return N.add(Math.floor(D()*G));for(var X=ue(G,o).value,ae=[],be=true,Me=0;Me<X.length;Me++){var Be=be?X[Me]+(Me+1<X.length?X[Me+1]/o:0):o,We=I(D()*Be);ae.push(We),We<X[Me]&&(be=false);}return N.add(c.fromArray(ae,o,false))}var J=function(h,y,C,D){C=C||a,h=String(h),D||(h=h.toLowerCase(),C=C.toLowerCase());var N=h.length,R,G=Math.abs(y),X={};for(R=0;R<C.length;R++)X[C[R]]=R;for(R=0;R<N;R++){var ae=h[R];if(ae!=="-"&&ae in X&&X[ae]>=G){if(ae==="1"&&G===1)continue;throw new Error(ae+" is not a valid digit in base "+y+".")}}y=oe(y);var be=[],Me=h[0]==="-";for(R=Me?1:0;R<h.length;R++){var ae=h[R];if(ae in X)be.push(oe(X[ae]));else if(ae==="<"){var Be=R;do R++;while(h[R]!==">"&&R<h.length);be.push(oe(h.slice(Be+1,R)));}else throw new Error(ae+" is not a valid character")}return de(be,y,Me)};function de(h,y,C){var D=c[0],N=c[1],R;for(R=h.length-1;R>=0;R--)D=D.add(h[R].times(N)),N=N.times(y);return C?D.negate():D}function ce(h,y){return y=y||a,h<y.length?y[h]:"<"+h+">"}function ue(h,y){if(y=t(y),y.isZero()){if(h.isZero())return {value:[0],isNegative:false};throw new Error("Cannot convert nonzero numbers to base 0.")}if(y.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 D=false;if(h.isNegative()&&y.isPositive()&&(D=true,h=h.abs()),y.isUnit())return h.isZero()?{value:[0],isNegative:false}:{value:Array.apply(null,Array(h.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:D};for(var N=[],R=h,G;R.isNegative()||R.compareAbs(y)>=0;){G=R.divmod(y),R=G.quotient;var X=G.remainder;X.isNegative()&&(X=y.minus(X).abs(),R=R.next()),N.push(X.toJSNumber());}return N.push(R.toJSNumber()),{value:N.reverse(),isNegative:D}}function re(h,y,C){var D=ue(h,y);return (D.isNegative?"-":"")+D.value.map(function(N){return ce(N,C)}).join("")}u.prototype.toArray=function(h){return ue(this,h)},f.prototype.toArray=function(h){return ue(this,h)},p.prototype.toArray=function(h){return ue(this,h)},u.prototype.toString=function(h,y){if(h===n&&(h=10),h!==10||y)return re(this,h,y);for(var C=this.value,D=C.length,N=String(C[--D]),R="0000000",G;--D>=0;)G=String(C[D]),N+=R.slice(G.length)+G;var X=this.sign?"-":"";return X+N},f.prototype.toString=function(h,y){return h===n&&(h=10),h!=10||y?re(this,h,y):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 y=+h;if(y===I(y))return l?new p(BigInt(y)):new f(y);throw new Error("Invalid integer: "+h)}var C=h[0]==="-";C&&(h=h.slice(1));var D=h.split(/e/i);if(D.length>2)throw new Error("Invalid integer: "+D.join("e"));if(D.length===2){var N=D[1];if(N[0]==="+"&&(N=N.slice(1)),N=+N,N!==I(N)||!w(N))throw new Error("Invalid integer: "+N+" is not a valid exponent.");var R=D[0],G=R.indexOf(".");if(G>=0&&(N-=R.length-G-1,R=R.slice(0,G)+R.slice(G+1)),N<0)throw new Error("Cannot include negative exponent part for integers");R+=new Array(N+1).join("0"),h=R;}var X=/^([0-9][0-9]*)$/.test(h);if(!X)throw new Error("Invalid integer: "+h);if(l)return new p(BigInt(C?"-"+h:h));for(var ae=[],be=h.length,Me=s,Be=be-Me;be>0;)ae.push(+h.slice(Be,be)),Be-=Me,Be<0&&(Be=0),be-=Me;return v(ae),new u(ae,C)}function me(h){if(l)return new p(BigInt(h));if(w(h)){if(h!==I(h))throw new Error(h+" is not an integer.");return new f(h)}return Ce(h.toString())}function oe(h){return typeof h=="number"?me(h):typeof h=="string"?Ce(h):typeof h=="bigint"?new p(h):h}for(var Ae=0;Ae<1e3;Ae++)c[Ae]=oe(Ae),Ae>0&&(c[-Ae]=oe(-Ae));return c.one=c[1],c.zero=c[0],c.minusOne=c[-1],c.max=m,c.min=x,c.gcd=k,c.lcm=Z,c.isInstance=function(h){return h instanceof u||h instanceof f||h instanceof p},c.randBetween=j,c.fromArray=function(h,y,C){return de(h.map(oe),oe(y||10),C)},c})();e.hasOwnProperty("exports")&&(e.exports=t);})(Wl)),Wl.exports}var mk=hk();const Ir=km(mk);class gk{n;e;constructor(){this.n=Ir("8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683",16),this.e=Ir("10001",16);}a2hex(t){let n="",o;for(let s=0;s<t.length;s++)o=t[s].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=[],s=t.length-1;for(;s>=0&&n>0;)o[--n]=t.charCodeAt(s--);for(o[--n]=0;n>2;)o[--n]=255;o[--n]=2,o[--n]=0;let i=this.a2hex(o);return Ir(i,16)}pkcs1unpad2(t){let n=t.toString(16);n.length%2!==0&&(n="0"+n);let o=this.hex2a(n),s=1;for(;o.charCodeAt(s)!==0;)s++;return o.slice(s+1)}encrypt(t){let s=this.pkcs1pad2(t,128)?.modPow(this.e,this.n)?.toString(16)||"";for(;s.length<256;)s="0"+s;return s}decrypt(t){const n=[];let o=0;for(;o<t.length;)n[o]=t.charCodeAt(o),o+=1;const i=Ir(this.a2hex(n),16).modPow(this.e,this.n);return this.pkcs1unpad2(i)}}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,s){let i,r,a,l,c,u,f,p;if(l=n%4,p=[],l!==0)for(i=r=0,c=l;c>=0?r<c:r>c;i=c>=0?++r:--r)p.push(t[i]^o[i%s]);for(i=a=u=l,f=n;u<=f?a<f:a>f;i=u<=f?++a:--a)p.push(t[i]^o[(i-l)%s]);return p}getkey(t,n){let o;return n!=null?(()=>{let s,i,r;for(r=[],o=s=0,i=t;i>=0?s<i:s>i;o=i>=0?++s:--s)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,s,i,r,a;for(i=117,a="",o=s=0,r=Math.floor((n+i-1)/i);r>=0?s<r:s>r;o=r>=0?++s:--s)a+=this.rsa.encrypt(this.bytesToString(t.slice(o*i,Math.min((o+1)*i,n))));return window.btoa(this.rsa.hex2a(a))}asymDecode(t,n){let o,s,i,r,a;for(i=128,a="",o=s=0,r=Math.floor((n+i-1)/i);r>=0?s<r:s>r;o=r>=0?++s:--s)a+=this.rsa.decrypt(this.bytesToString(t.slice(o*i,Math.min((o+1)*i,n))));return this.stringToBytes(a)}symEncode(t,n,o,s){let i,r,a;return i=this.getkey(4,o),r=this.getkey(12,s),a=this.xor115Enc(t,n,i,4),a.reverse(),a=this.xor115Enc(a,n,r,12),a}symDecode(t,n,o,s){let i,r,a;return i=this.getkey(4,o),r=this.getkey(12,s),a=this.xor115Enc(t,n,r,12),a.reverse(),a=this.xor115Enc(a,n,i,4),a}bytesToString(t){let n,o,s,i;for(i="",o=0,s=t.length;o<s;o++)n=t[o],i+=String.fromCharCode(n);return i}stringToBytes(t){let n,o,s;for(s=[],n=0,o=t.length;n<o;n++)s.push(t.charCodeAt(n));return s}encode(t,n){const o=this.stringToBytes(_t.hashStr(`!@###@#${n}DFDR@#@#`));let s=this.stringToBytes(t);return s=this.symEncode(s,s.length,o,null),s=o.slice(0,16).concat(s),{data:this.asymEncode(s,s.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}),s=Math.floor(Date.now()).toString(),i=new wk,{data:r,key:a}=i.encode(o,s);Da({method:"POST",url:`https://proapi.115.com/app/chrome/downurl?t=${s}`,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=i.decode(c.data,a);if(u){const f=JSON.parse(u),p=Object.keys(f)[0],w=f[p];w.file_id=p;const g=l.responseHeaders.split(/[\r\n]+/).filter(b=>b.match(/set-cookie/i));g.length&&(g.forEach((b,v)=>{g[v]=b.replace(/set-cookie:[\s]*/i,"").split(";")[0];}),w.cookie=g.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 jg(e){if(!$o()||!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),s=[{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}],i=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=i(s);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 rd(e);return new wr({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||Ng(t.defaultPlayer,e,n,o);},subItems:[...await dk(ai,t.customUrlItems)]})}function ri(e){const t=$(e.target).closest("li"),n=mn(t);return !n||!n.id?(Q({text:"无法获取当前文件信息",timer:1200}),null):n}async function Ck(e){const t=[...(await ur()).filter(o=>o.enabled),...xk.filter(o=>o.enabled),...(await ks(no.search)).filter(o=>o.enabled)];let n=t.find(o=>o.key===e.defaultSearch);return n||(n=t.find(o=>o.key===cr)),new wr({key:"_search_with_name_d",label:"搜索",icon:n?.icon||"",title:Rg(e,n?.memo||"使用名称搜索"),onClick:async(o,s)=>{s.stopPropagation(),s.preventDefault(),n&&await mr(o,n,s,e,void 0,Ie.listItemHover);},subItems:[...await ol(ai,t)]})}async function kk(){return new ai({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=ri(t);n&&await ga(n);}})}async function $k(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Dr("完整名称",mt.full)),t.copyPureName&&n.push(await Dr("不含后缀名称",mt.pure)),t.copyId&&n.push(await Dr("ID",mt.id)),t.copyPickCode&&n.push(await Dr("PickCode",mt.pickCode)),t.copySha1&&n.push(await Lf(false)),t.copySha1WithName&&n.push(await Lf(true)),t.copyUnixPath&&n.push(await Tr("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await Tr("路径(Windows)",Mn.winPath)),t.copyParentUnixPath&&n.push(await Tr("上级路径(Unix)",Mn.unixParentPath)),t.copyParentWinPath&&n.push(await Tr("上级路径(Windows)",Mn.winParentPath)),t.viewInCloudDrive&&n.push(await kk()),new wr({key:"_lh_copy_name_path",label:"名称路径",title:"复制文件名称路径",onClick:async(o,s)=>{},subItems:n})}async function Lf(e=true){return new ai({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=ri(n);if(!o)return;if(o.isDir){Q({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const s=o.hash+(e?`//${o.name}`:"");ft(s),Q({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function Dr(e,t){return new ai({key:`_lh_copy_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制${e}`,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const s=ri(o);if(!s)return;const i=await ut(),r=await Qt(),l=gr([s],t,c=>i.cloudDriveFormalization?un(r,c):c);ft(l.join(`
`)),Q({title:`复制${e}`,text:`已复制选中文件信息,复制类型:${e},CloudDrive文件名规范: ${i.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function Tr(e,t){return new ai({key:`_lh_copy_path_${t}`,label:e,icon:"icon-operate ifo-copy",title:e,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const s=ri(o);if(!s)return;const i=await ut(),r=await Qt();let a=await qa(s);i.cloudDriveFormalization&&(a=a.map(u=>un(r,u,true)),s.name=un(r,s.name,true));let l=a.join("/");const c=await sl(s,l,t);ft(c),Q({title:"复制路径",text:`已复制选中路径,复制类型:${e},CloudDrive文件名规范: ${i.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function Sk(){return new wr({injectDecider:pb,key:"_open_in_new_tab",label:"新标签页",icon:"",title:"在新标签页打开",onClick:async(e,t)=>{t.stopPropagation(),t.preventDefault();const n=ri(t);if(!n)return;const o=Bn(n.id);window.open(o,"_blank","noopener noreferrer");}})}async function ad(e){Y.fire({title:"查找重复文件",html:`正在查找文件:${e.name},请稍候...`,icon:"info",showConfirmButton:false,allowOutsideClick:false}),Y.showLoading();try{const t=await bk(e.id);t.state?t.data.length>1?(Y.update({html:"查找成功,将打开结果页面",icon:"success",showConfirmButton:!0}),Gr(vk(e.id),{active:!0}),Mt(5e3).then(()=>{Y.close();})):Y.update({html:"没有重复文件",icon:"warning",showConfirmButton:!0}):Y.update({html:`查找失败!${t.code} - ${t.message}`,icon:"error",showConfirmButton:!0});}catch(t){Y.update({html:`查找失败!${t.message}`,icon:"error",showConfirmButton:true});}finally{Y.hideLoading();}}async function Ek(e){return new wr({injectDecider:fb,key:"_lh_find_repeat",label:"重复文件",icon:"",title:"查找重复文件,找到后会在新标签页中打开处理页面",onClick:async(t,n)=>{n.stopPropagation(),n.preventDefault();const o=ri(n);o&&await ad(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 wr extends wn{menuType=Ie.listItemHover;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ma;}}class ai 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 s=document.querySelector("#js_data_list .list-contents > ul > li");s&&(s.querySelector(".ce-menu")||o(true));}t.addEventListener("click",async o=>{o.preventDefault(),o.stopPropagation();const s=o.target;let i=false;if((s.getAttribute("menu")==="load_all_file"||s.closest('[menu="load_all_file"]'))&&(i=true),!i)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 jg(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 Lu=(e=>(e.background="background",e.active="active",e.undefined="undefined",e))(Lu||{});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 il extends wn{menuType=Ie.selection;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ma;}}class Co extends wn{menuType=Ie.selectionSub}class Tk extends db{}class Lk extends er{menuType=Ie.selection;useObserver=true;observeTarget="#js_top_panel_box #js_operate_box";disposeObserverAfterInjection=false}function zg(e){return {enabled:false,search:true,copyNames:true,namePathConfig:tr({copyWinPath:false,copyUnixPath:false,copyParentUnixPath:false,copyParentWinPath:false,viewInCloudDrive:false}),...e}}class Hg extends wn{menuType=Ie.shareListItemHover;constructor(t){super(t),this.onMouseOver=La,this.onMouseOut=Ma;}}class ld 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||{}),ws=(e=>(e.listItemHover="列表项悬浮菜单",e.listItemHoverSub="列表项悬浮子菜单",e.listItemContext="列表项右键菜单",e.listItemContextSub="列表项右键子菜单",e.selection="选中项菜单",e.selectionSub="选中项子菜单",e.dirContext="当前目录右键菜单",e.dirContextSub="当前目录右键子菜单",e.shareListItemHover="分享列表项悬浮菜单",e.shareListItemHoverSub="分享列表项悬浮子菜单",e))(ws||{}),bo=(e=>(e[e.after=0]="after",e[e.before=1]="before",e))(bo||{}),Gn=(e=>(e.none="none",e.alt="alt",e.ctrl="ctrl",e.shift="shift",e.meta="meta",e))(Gn||{});const Vg=gt.menu;function Ok(e){return {enabled:true,hideSelectionMenuLabel:false,enableInSearch:true,manageOfficialMenus:false,keyToTriggerManual:"none",auxClickTriggerManual:false,injectManualFuncPosition:ym.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:zg(e?.shareListItemHover),...e}}async function ut(){const e=Ok(),t=await Xe.get(Vg,e);return Ec(e,t)}async function wa(e){await Xe.set(Vg,e);}const Bk=["top","right","bottom","left"],Mf=["start","end"],Of=Bk.reduce((e,t)=>e.concat(t,t+"-"+Mf[0],t+"-"+Mf[1]),[]),zi=Math.min,ts=Math.max,Rk={left:"right",right:"left",bottom:"top",top:"bottom"},Fk={start:"end",end:"start"};function Mu(e,t,n){return ts(e,zi(t,n))}function Ss(e,t){return typeof e=="function"?e(t):e}function so(e){return e.split("-")[0]}function Fn(e){return e.split("-")[1]}function qg(e){return e==="x"?"y":"x"}function ud(e){return e==="y"?"height":"width"}const Nk=new Set(["top","bottom"]);function go(e){return Nk.has(so(e))?"y":"x"}function cd(e){return qg(go(e))}function Wg(e,t,n){n===void 0&&(n=false);const o=Fn(e),s=cd(e),i=ud(s);let r=s==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(r=ba(r)),[r,ba(r)]}function Uk(e){const t=ba(e);return [ya(e),t,ya(t)]}function ya(e){return e.replace(/start|end/g,t=>Fk[t])}const Bf=["left","right"],Rf=["right","left"],jk=["top","bottom"],zk=["bottom","top"];function Hk(e,t,n){switch(e){case "top":case "bottom":return n?t?Rf:Bf:t?Bf:Rf;case "left":case "right":return t?jk:zk;default:return []}}function Vk(e,t,n,o){const s=Fn(e);let i=Hk(so(e),n==="start",o);return s&&(i=i.map(r=>r+"-"+s),t&&(i=i.concat(i.map(ya)))),i}function ba(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 Kg(e){return typeof e!="number"?qk(e):{top:e,right:e,bottom:e,left:e}}function Pi(e){const{x:t,y:n,width:o,height:s}=e;return {width:o,height:s,top:n,left:t,right:t+o,bottom:n+s,x:t,y:n}}function Ff(e,t,n){let{reference:o,floating:s}=e;const i=go(t),r=cd(t),a=ud(r),l=so(t),c=i==="y",u=o.x+o.width/2-s.width/2,f=o.y+o.height/2-s.height/2,p=o[a]/2-s[a]/2;let w;switch(l){case "top":w={x:u,y:o.y-s.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-s.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:s="absolute",middleware:i=[],platform:r}=n,a=i.filter(Boolean),l=await(r.isRTL==null?void 0:r.isRTL(t));let c=await r.getElementRects({reference:e,floating:t,strategy:s}),{x:u,y:f}=Ff(c,o,l),p=o,w={},g=0;for(let b=0;b<a.length;b++){const{name:v,fn:S}=a[b],{x:I,y:E,data:P,reset:M}=await S({x:u,y:f,initialPlacement:o,placement:p,strategy:s,middlewareData:w,rects:c,platform:r,elements:{reference:e,floating:t}});u=I??u,f=E??f,w={...w,[v]:{...w[v],...P}},M&&g<=50&&(g++,typeof M=="object"&&(M.placement&&(p=M.placement),M.rects&&(c=M.rects===true?await r.getElementRects({reference:e,floating:t,strategy:s}):M.rects),{x:u,y:f}=Ff(c,p,l)),b=-1);}return {x:u,y:f,placement:p,strategy:s,middlewareData:w}};async function rl(e,t){var n;t===void 0&&(t={});const{x:o,y:s,platform:i,rects:r,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:p=false,padding:w=0}=Ss(t,e),g=Kg(w),v=a[p?f==="floating"?"reference":"floating":f],S=Pi(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(v)))==null||n?v:v.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),I=f==="floating"?{x:o,y:s,width:r.floating.width,height:r.floating.height}:r.reference,E=await(i.getOffsetParent==null?void 0:i.getOffsetParent(a.floating)),P=await(i.isElement==null?void 0:i.isElement(E))?await(i.getScale==null?void 0:i.getScale(E))||{x:1,y:1}:{x:1,y:1},M=Pi(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:I,offsetParent:E,strategy:l}):I);return {top:(S.top-M.top+g.top)/P.y,bottom:(M.bottom-S.bottom+g.bottom)/P.y,left:(S.left-M.left+g.left)/P.x,right:(M.right-S.right+g.right)/P.x}}const Kk=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:o,placement:s,rects:i,platform:r,elements:a,middlewareData:l}=t,{element:c,padding:u=0}=Ss(e,t)||{};if(c==null)return {};const f=Kg(u),p={x:n,y:o},w=cd(s),g=ud(w),b=await r.getDimensions(c),v=w==="y",S=v?"top":"left",I=v?"bottom":"right",E=v?"clientHeight":"clientWidth",P=i.reference[g]+i.reference[w]-p[w]-i.floating[g],M=p[w]-i.reference[w],z=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let U=z?z[E]:0;(!U||!await(r.isElement==null?void 0:r.isElement(z)))&&(U=a.floating[E]||i.floating[g]);const ie=P/2-M/2,pe=U/2-b[g]/2-1,ne=zi(f[S],pe),O=zi(f[I],pe),B=ne,q=U-b[g]-O,le=U/2-b[g]/2+ie,ve=Mu(B,le,q),ke=!l.arrow&&Fn(s)!=null&&le!==ve&&i.reference[g]/2-(le<B?ne:O)-b[g]/2<0,_e=ke?le<B?le-B: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(s=>Fn(s)===e),...n.filter(s=>Fn(s)!==e)]:n.filter(s=>so(s)===s)).filter(s=>e?Fn(s)===e||(t?ya(s)!==s:false):true)}const Jk=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var n,o,s;const{rects:i,middlewareData:r,placement:a,platform:l,elements:c}=t,{crossAxis:u=false,alignment:f,allowedPlacements:p=Of,autoAlignment:w=true,...g}=Ss(e,t),b=f!==void 0||p===Of?Gk(f||null,w,p):p,v=await rl(t,g),S=((n=r.autoPlacement)==null?void 0:n.index)||0,I=b[S];if(I==null)return {};const E=Wg(I,i,await(l.isRTL==null?void 0:l.isRTL(c.floating)));if(a!==I)return {reset:{placement:b[0]}};const P=[v[so(I)],v[E[0]],v[E[1]]],M=[...((o=r.autoPlacement)==null?void 0:o.overflows)||[],{placement:I,overflows:P}],z=b[S+1];if(z)return {data:{index:S+1,overflows:M},reset:{placement:z}};const U=M.map(ne=>{const O=Fn(ne.placement);return [ne.placement,O&&u?ne.overflows.slice(0,2).reduce((B,q)=>B+q,0):ne.overflows[0],ne.overflows]}).sort((ne,O)=>ne[1]-O[1]),pe=((s=U.filter(ne=>ne[2].slice(0,Fn(ne[0])?2:3).every(O=>O<=0))[0])==null?void 0:s[0])||U[0][0];return pe!==a?{data:{index:S+1,overflows:M},reset:{placement:pe}}:{}}}},Yk=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,o;const{placement:s,middlewareData:i,rects:r,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:u=true,crossAxis:f=true,fallbackPlacements:p,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:b=true,...v}=Ss(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return {};const S=so(s),I=go(a),E=so(a)===a,P=await(l.isRTL==null?void 0:l.isRTL(c.floating)),M=p||(E||!b?[ba(a)]:Uk(a)),z=g!=="none";!p&&z&&M.push(...Vk(a,b,g,P));const U=[a,...M],ie=await rl(t,v),pe=[];let ne=((o=i.flip)==null?void 0:o.overflows)||[];if(u&&pe.push(ie[S]),f){const le=Wg(s,r,P);pe.push(ie[le[0]],ie[le[1]]);}if(ne=[...ne,{placement:s,overflows:pe}],!pe.every(le=>le<=0)){var O,B;const le=(((O=i.flip)==null?void 0:O.index)||0)+1,ve=U[le];if(ve&&(!(f==="alignment"?I!==go(ve):false)||ne.every($e=>go($e.placement)===I?$e.overflows[0]>0:true)))return {data:{index:le,overflows:ne},reset:{placement:ve}};let ke=(B=ne.filter(_e=>_e.overflows[0]<=0).sort((_e,$e)=>_e.overflows[1]-$e.overflows[1])[0])==null?void 0:B.placement;if(!ke)switch(w){case "bestFit":{var q;const _e=(q=ne.filter($e=>{if(z){const Ne=go($e.placement);return Ne===I||Ne==="y"}return  true}).map($e=>[$e.placement,$e.overflows.filter(Ne=>Ne>0).reduce((Ne,dt)=>Ne+dt,0)]).sort(($e,Ne)=>$e[1]-Ne[1])[0])==null?void 0:q[0];_e&&(ke=_e);break}case "initialPlacement":ke=a;break}if(s!==ke)return {reset:{placement:ke}}}return {}}}},Qk=new Set(["left","top"]);async function Xk(e,t){const{placement:n,platform:o,elements:s}=e,i=await(o.isRTL==null?void 0:o.isRTL(s.floating)),r=so(n),a=Fn(n),l=go(n)==="y",c=Qk.has(r)?-1:1,u=i&&l?-1:1,f=Ss(t,e);let{mainAxis:p,crossAxis:w,alignmentAxis:g}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return a&&typeof g=="number"&&(w=a==="end"?g*-1:g),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:s,y:i,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:s+l.x,y:i+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:s}=t,{mainAxis:i=true,crossAxis:r=false,limiter:a={fn:v=>{let{x:S,y:I}=v;return {x:S,y:I}}},...l}=Ss(e,t),c={x:n,y:o},u=await rl(t,l),f=go(so(s)),p=qg(f);let w=c[p],g=c[f];if(i){const v=p==="y"?"top":"left",S=p==="y"?"bottom":"right",I=w+u[v],E=w-u[S];w=Mu(I,w,E);}if(r){const v=f==="y"?"top":"left",S=f==="y"?"bottom":"right",I=g+u[v],E=g-u[S];g=Mu(I,g,E);}const b=a.fn({...t,[p]:w,[f]:g});return {...b,data:{x:b.x-n,y:b.y-o,enabled:{[p]:i,[f]:r}}}}}},t2=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,o;const{placement:s,rects:i,platform:r,elements:a}=t,{apply:l=()=>{},...c}=Ss(e,t),u=await rl(t,c),f=so(s),p=Fn(s),w=go(s)==="y",{width:g,height:b}=i.floating;let v,S;f==="top"||f==="bottom"?(v=f,S=p===(await(r.isRTL==null?void 0:r.isRTL(a.floating))?"start":"end")?"left":"right"):(S=f,v=p==="end"?"top":"bottom");const I=b-u.top-u.bottom,E=g-u.left-u.right,P=zi(b-u[v],I),M=zi(g-u[S],E),z=!t.middlewareData.shift;let U=P,ie=M;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(ie=E),(o=t.middlewareData.shift)!=null&&o.enabled.y&&(U=I),z&&!p){const ne=ts(u.left,0),O=ts(u.right,0),B=ts(u.top,0),q=ts(u.bottom,0);w?ie=g-2*(ne!==0||O!==0?ne+O:ts(u.left,u.right)):U=b-2*(B!==0||q!==0?B+q:ts(u.top,u.bottom));}await l({...t,availableWidth:ie,availableHeight:U});const pe=await r.getDimensions(a.floating);return g!==pe.width||b!==pe.height?{reset:{rects:true}}:{}}}};function Sn(e){var t;return ((t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Xn(e){return Sn(e).getComputedStyle(e)}const Nf=Math.min,Ii=Math.max,va=Math.round;function Gg(e){const t=Xn(e);let n=parseFloat(t.width),o=parseFloat(t.height);const s=e.offsetWidth,i=e.offsetHeight,r=va(n)!==s||va(o)!==i;return r&&(n=s,o=i),{width:n,height:o,fallback:r}}function Vo(e){return Yg(e)?(e.nodeName||"").toLowerCase():""}let Lr;function Jg(){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 Sn(e).HTMLElement}function Fo(e){return e instanceof Sn(e).Element}function Yg(e){return e instanceof Sn(e).Node}function Uf(e){return typeof ShadowRoot>"u"?false:e instanceof Sn(e).ShadowRoot||e instanceof ShadowRoot}function al(e){const{overflow:t,overflowX:n,overflowY:o,display:s}=Xn(e);return /auto|scroll|overlay|hidden|clip/.test(t+o+n)&&!["inline","contents"].includes(s)}function n2(e){return ["table","td","th"].includes(Vo(e))}function Ou(e){const t=/firefox/i.test(Jg()),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((s=>n.willChange.includes(s)))||["paint","layout","strict","content"].some((s=>{const i=n.contain;return i!=null&&i.includes(s)}))}function Qg(){return !/^((?!chrome|android).)*safari/i.test(Jg())}function dd(e){return ["html","body","#document"].includes(Vo(e))}function Xg(e){return Fo(e)?e:e.contextElement}const Zg={x:1,y:1};function qs(e){const t=Xg(e);if(!Zn(t))return Zg;const n=t.getBoundingClientRect(),{width:o,height:s,fallback:i}=Gg(t);let r=(i?va(n.width):n.width)/o,a=(i?va(n.height):n.height)/s;return r&&Number.isFinite(r)||(r=1),a&&Number.isFinite(a)||(a=1),{x:r,y:a}}function Hi(e,t,n,o){var s,i;t===void 0&&(t=false),n===void 0&&(n=false);const r=e.getBoundingClientRect(),a=Xg(e);let l=Zg;t&&(o?Fo(o)&&(l=qs(o)):l=qs(e));const c=a?Sn(a):window,u=!Qg()&&n;let f=(r.left+(u&&((s=c.visualViewport)==null?void 0:s.offsetLeft)||0))/l.x,p=(r.top+(u&&((i=c.visualViewport)==null?void 0:i.offsetTop)||0))/l.y,w=r.width/l.x,g=r.height/l.y;if(a){const b=Sn(a),v=o&&Fo(o)?Sn(o):o;let S=b.frameElement;for(;S&&o&&v!==b;){const I=qs(S),E=S.getBoundingClientRect(),P=getComputedStyle(S);E.x+=(S.clientLeft+parseFloat(P.paddingLeft))*I.x,E.y+=(S.clientTop+parseFloat(P.paddingTop))*I.y,f*=I.x,p*=I.y,w*=I.x,g*=I.y,f+=E.x,p+=E.y,S=Sn(S).frameElement;}}return {width:w,height:g,top:p,right:f+w,bottom:p+g,left:f,x:f,y:p}}function No(e){return ((Yg(e)?e.ownerDocument:e.document)||window.document).documentElement}function ll(e){return Fo(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function ew(e){return Hi(No(e)).left+ll(e).scrollLeft}function Vi(e){if(Vo(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Uf(e)&&e.host||No(e);return Uf(t)?t.host:t}function tw(e){const t=Vi(e);return dd(t)?t.ownerDocument.body:Zn(t)&&al(t)?t:tw(t)}function xa(e,t){var n;t===void 0&&(t=[]);const o=tw(e),s=o===((n=e.ownerDocument)==null?void 0:n.body),i=Sn(o);return s?t.concat(i,i.visualViewport||[],al(o)?o:[]):t.concat(o,xa(o))}function jf(e,t,n){return t==="viewport"?Pi((function(o,s){const i=Sn(o),r=No(o),a=i.visualViewport;let l=r.clientWidth,c=r.clientHeight,u=0,f=0;if(a){l=a.width,c=a.height;const p=Qg();(p||!p&&s==="fixed")&&(u=a.offsetLeft,f=a.offsetTop);}return {width:l,height:c,x:u,y:f}})(e,n)):Fo(t)?Pi((function(o,s){const i=Hi(o,true,s==="fixed"),r=i.top+o.clientTop,a=i.left+o.clientLeft,l=Zn(o)?qs(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)):Pi((function(o){const s=No(o),i=ll(o),r=o.ownerDocument.body,a=Ii(s.scrollWidth,s.clientWidth,r.scrollWidth,r.clientWidth),l=Ii(s.scrollHeight,s.clientHeight,r.scrollHeight,r.clientHeight);let c=-i.scrollLeft+ew(o);const u=-i.scrollTop;return Xn(r).direction==="rtl"&&(c+=Ii(s.clientWidth,r.clientWidth)-a),{width:a,height:l,x:c,y:u}})(No(e)))}function zf(e){return Zn(e)&&Xn(e).position!=="fixed"?e.offsetParent:null}function Hf(e){const t=Sn(e);let n=zf(e);for(;n&&n2(n)&&Xn(n).position==="static";)n=zf(n);return n&&(Vo(n)==="html"||Vo(n)==="body"&&Xn(n).position==="static"&&!Ou(n))?t:n||(function(o){let s=Vi(o);for(;Zn(s)&&!dd(s);){if(Ou(s))return s;s=Vi(s);}return null})(e)||t}function o2(e,t,n){const o=Zn(t),s=No(t),i=Hi(e,true,n==="fixed",t);let r={scrollLeft:0,scrollTop:0};const a={x:0,y:0};if(o||!o&&n!=="fixed")if((Vo(t)!=="body"||al(s))&&(r=ll(t)),Zn(t)){const l=Hi(t,true);a.x=l.x+t.clientLeft,a.y=l.y+t.clientTop;}else s&&(a.x=ew(s));return {x:i.left+r.scrollLeft-a.x,y:i.top+r.scrollTop-a.y,width:i.width,height:i.height}}const s2={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:o,strategy:s}=e;const i=n==="clippingAncestors"?(function(c,u){const f=u.get(c);if(f)return f;let p=xa(c).filter((v=>Fo(v)&&Vo(v)!=="body")),w=null;const g=Xn(c).position==="fixed";let b=g?Vi(c):c;for(;Fo(b)&&!dd(b);){const v=Xn(b),S=Ou(b);(g?S||w:S||v.position!=="static"||!w||!["absolute","fixed"].includes(w.position))?w=v:p=p.filter((I=>I!==b)),b=Vi(b);}return u.set(c,p),p})(t,this._c):[].concat(n),r=[...i,o],a=r[0],l=r.reduce(((c,u)=>{const f=jf(t,u,s);return c.top=Ii(f.top,c.top),c.right=Nf(f.right,c.right),c.bottom=Nf(f.bottom,c.bottom),c.left=Ii(f.left,c.left),c}),jf(t,a,s));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 s=Zn(n),i=No(n);if(n===i)return t;let r={scrollLeft:0,scrollTop:0},a={x:1,y:1};const l={x:0,y:0};if((s||!s&&o!=="fixed")&&((Vo(n)!=="body"||al(i))&&(r=ll(n)),Zn(n))){const c=Hi(n);a=qs(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:Fo,getDimensions:function(e){return Zn(e)?Gg(e):e.getBoundingClientRect()},getOffsetParent:Hf,getDocumentElement:No,getScale:qs,async getElementRects(e){let{reference:t,floating:n,strategy:o}=e;const s=this.getOffsetParent||Hf,i=this.getDimensions;return {reference:o2(t,await s(n),o),floating:{x:0,y:0,...await i(n)}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>Xn(e).direction==="rtl"},i2=(e,t,n)=>{const o=new Map,s={platform:s2,...n},i={...s.platform,_c:o};return Wk(e,t,{...s,platform:i})},ls={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 qi(e,t){let n=ls.themes[e]||{},o;do o=n[t],typeof o>"u"?n.$extend?n=ls.themes[n.$extend]||{}:(n=null,o=ls[t]):n=null;while(n);return o}function r2(e){const t=[e];let n=ls.themes[e]||{};do n.$extend&&!n.$resetCss?(t.push(n.$extend),n=ls.themes[n.$extend]||{}):n=null;while(n);return t.map(o=>`v-popper--theme-${o}`)}function Vf(e){const t=[e];let n=ls.themes[e]||{};do n.$extend?(t.push(n.$extend),n=ls.themes[n.$extend]||{}):n=null;while(n);return t}let Wi=false;if(typeof window<"u"){Wi=false;try{const e=Object.defineProperty({},"passive",{get(){Wi=!0;}});window.addEventListener("test",null,e);}catch{}}let nw=false;typeof window<"u"&&typeof navigator<"u"&&(nw=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);const ow=["auto","top","bottom","left","right"].reduce((e,t)=>e.concat([t,`${t}-start`,`${t}-end`]),[]),qf={hover:"mouseenter",focus:"focus",click:"click",touch:"touchstart",pointer:"pointerdown"},Wf={hover:"mouseleave",focus:"blur",click:"click",touch:"touchend",pointer:"pointerup"};function Kf(e,t){const n=e.indexOf(t);n!==-1&&e.splice(n,1);}function Kl(){return new Promise(e=>requestAnimationFrame(()=>{requestAnimationFrame(e);}))}const Ln=[];let Zo=null;const Gf={};function Jf(e){let t=Gf[e];return t||(t=Gf[e]=[]),t}let Bu=function(){};typeof window<"u"&&(Bu=window.Element);function qe(e){return function(t){return qi(t.theme,e)}}const Gl="__floating-vue__popper",sw=()=>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=>ow.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,s;(o=this.parentPopper)!=null&&o.lockedChild&&this.parentPopper.lockedChild!==this||(this.pendingHide=false,(n||!this.disabled)&&(((s=this.parentPopper)==null?void 0:s.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:s,middlewareData:i})=>{let r;const{centerOffset:a}=i.arrow;return o.startsWith("top")||o.startsWith("bottom")?r=Math.abs(a)>s.reference.width/2:r=Math.abs(a)>s.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:s,placement:i,middlewareData:r})=>{var a;if((a=r.autoSize)!=null&&a.skip)return {};let l,c;return i.startsWith("top")||i.startsWith("bottom")?l=s.reference.width:c=s.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:s})=>{this.$_innerNode.style.maxWidth=o!=null?`${o}px`:null,this.$_innerNode.style.maxHeight=s!=null?`${s}px`:null;}})));const n=await i2(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([...xa(this.$_referenceNode),...xa(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(),s=t.x+t.width/2-(o.left+n.offsetLeft),i=t.y+t.height/2-(o.top+n.offsetTop);this.result.transformOrigin=`${s}px ${i}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<Ln.length;n++)t=Ln[n],t.showGroup!==e&&(t.hide(),t.$emit("close-group"));}Ln.push(this),document.body.classList.add("v-popper--some-open");for(const t of Vf(this.theme))Jf(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,Kf(Ln,this),Ln.length===0&&document.body.classList.remove("v-popper--some-open");for(const n of Vf(this.theme)){const o=Jf(n);Kf(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,qf,this.triggers,this.showTriggers,e),this.$_registerTriggerListeners([this.$_popperNode],qf,this.popperTriggers,this.popperShowTriggers,e);const t=n=>{n.usedByTooltip||this.hide({event:n});};this.$_registerTriggerListeners(this.$_targetNodes,Wf,this.triggers,this.hideTriggers,t),this.$_registerTriggerListeners([this.$_popperNode],Wf,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,Wi?{passive:true}:void 0));},$_registerTriggerListeners(e,t,n,o,s){let i=n;o!=null&&(i=typeof o=="function"?o(i):o),i.forEach(r=>{const a=t[r];a&&this.$_registerEventListeners(e,a,s);});},$_removeEventListeners(e){const t=[];this.$_events.forEach(n=>{const{targetNodes:o,eventType:s,handler:i}=n;!e||e===s?o.forEach(r=>r.removeEventListener(s,i)):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(Di>=e.left&&Di<=e.right&&Ti>=e.top&&Ti<=e.bottom){const t=this.$_popperNode.getBoundingClientRect(),n=Di-Eo,o=Ti-Ao,s=t.left+t.width/2-Eo+(t.top+t.height/2)-Ao+t.width+t.height,i=Eo+n*s,r=Ao+o*s;return Mr(Eo,Ao,i,r,t.left,t.top,t.left,t.bottom)||Mr(Eo,Ao,i,r,t.left,t.top,t.right,t.top)||Mr(Eo,Ao,i,r,t.right,t.top,t.right,t.bottom)||Mr(Eo,Ao,i,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(nw){const e=Wi?{passive:true,capture:true}:true;document.addEventListener("touchstart",t=>Yf(t),e),document.addEventListener("touchend",t=>Qf(t,true),e);}else window.addEventListener("mousedown",e=>Yf(e),true),window.addEventListener("click",e=>Qf(e,false),true);window.addEventListener("resize",u2);}function Yf(e,t){for(let n=0;n<Ln.length;n++){const o=Ln[n];try{o.mouseDownContains=o.popperNode().contains(e.target);}catch{}}}function Qf(e,t){a2(e,t);}function a2(e,t){const n={};for(let o=Ln.length-1;o>=0;o--){const s=Ln[o];try{const i=s.containsGlobalTarget=s.mouseDownContains||s.popperNode().contains(e.target);s.pendingHide=!1,requestAnimationFrame(()=>{if(s.pendingHide=!1,!n[s.randomId]&&Xf(s,i,e)){if(s.$_handleGlobalClose(e,t),!e.closeAllPopover&&e.closePopover&&i){let a=s.parentPopper;for(;a;)n[a.randomId]=!0,a=a.parentPopper;return}let r=s.parentPopper;for(;r&&Xf(r,r.containsGlobalTarget,e);)r.$_handleGlobalClose(e,t),r=r.parentPopper;}});}catch{}}}function Xf(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<Ln.length;e++)Ln[e].$_computePosition();}let Eo=0,Ao=0,Di=0,Ti=0;typeof window<"u"&&window.addEventListener("mousemove",e=>{Eo=Di,Ao=Ti,Di=e.clientX,Ti=e.clientY;},Wi?{passive:true}:void 0);function Mr(e,t,n,o,s,i,r,a){const l=((r-s)*(t-i)-(a-i)*(e-s))/((a-i)*(n-e)-(r-s)*(o-t)),c=((n-e)*(t-i)-(o-t)*(e-s))/((a-i)*(n-e)-(r-s)*(o-t));return l>=0&&l<=1&&c>=0&&c<=1}const c2={extends:sw()},ul=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n};function d2(e,t,n,o,s,i){return _(),A("div",{ref:"reference",class:Te(["v-popper",{"v-popper--shown":e.slotData.isShown}])},[Ge(e.$slots,"default",Dx($g(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 s=e.indexOf("Edge/");return s>0?parseInt(e.substring(s+5,e.indexOf(".",s)),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(),ms(()=>{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,s,i)=>(_(),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,s,i){const r=_o("ResizeObserver");return _(),A("div",{id:e.popperId,ref:"popover",class:Te(["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]=Mg(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?(_(),A(Se,{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 rw=ul(w2,[["render",C2]]),aw={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:rw},mixins:[aw,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 $2(e,t,n,o,s,i){const r=_o("PopperContent"),a=_o("Popper");return _(),tt(a,sd({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:g,handleResize:b,onResize:v,classes:S,result:I})=>[Ge(e.$slots,"default",{shown:c,show:w,hide:g}),se(r,{ref:"popperContent","popper-id":l,theme:e.finalTheme,shown:c,mounted:u,"skip-transition":f,"auto-hide":p,"handle-resize":b,classes:S,result:I,onHide:g,onResize:v},{default:ge(()=>[Ge(e.$slots,"popper",{shown:c,hide:g})]),_: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 fd=ul(k2,[["render",$2]]),S2={...fd,name:"VDropdown",vPopperTheme:"dropdown"};({...fd});({...fd});const E2=xe({name:"VTooltipDirective",components:{Popper:sw(),PopperContent:rw},mixins:[aw],inheritAttrs:false,props:{theme:{type:String,default:"tooltip"},html:{type:Boolean,default:e=>qi(e.theme,"html")},content:{type:[String,Number,Function],default:null},loadingContent:{type:String,default:e=>qi(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,s,i){const r=_o("PopperContent"),a=_o("Popper");return _(),tt(a,sd({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:g,onResize:b,classes:v,result:S})=>[se(r,{ref:"popperContent",class:Te({"v-popper--tooltip-loading":e.loading}),"popper-id":l,theme:e.theme,shown:c,mounted:u,"skip-transition":f,"auto-hide":p,"handle-resize":g,classes:v,result:S,onHide:w,onResize:b},{default:ge(()=>[e.html?(_(),A("div",{key:0,innerHTML:e.finalContent},null,8,A2)):(_(),A("div",{key:1,textContent:F(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]]),lw="v-popper--has-tooltip";function T2(e,t){let n=e.placement;if(!n&&t)for(const o of ow)t[o]&&(n=o);return n||(n=qi(e.theme||"tooltip","placement")),n}function uw(e,t,n){let o;const s=typeof t;return s==="string"?o={content:t}:t&&s==="object"?o=t:o={content:false},o.placement=T2(o,n),o.targetNodes=()=>[e],o.referenceNode=()=>e,o}let Jl,Ki,L2=0;function M2(){if(Jl)return;Ki=W([]),Jl=ao({name:"VTooltipDirectiveApp",setup(){return {directives:Ki}},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=W(uw(e,t,n)),s=W(false),i={id:L2++,options:o,shown:s};return Ki.value.push(i),e.classList&&e.classList.add(lw),e.$_popper={options:o,item:i,show(){s.value=true;},hide(){s.value=false;}}}function cw(e){if(e.$_popper){const t=Ki.value.indexOf(e.$_popper.item);t!==-1&&Ki.value.splice(t,1),delete e.$_popper,delete e.$_popperOldShown,delete e.$_popperMountTarget;}e.classList&&e.classList.remove(lw);}function Zf(e,{value:t,modifiers:n}){const o=uw(e,t,n);if(!o.content||qi(o.theme||"tooltip","disabled"))cw(e);else {let s;e.$_popper?(s=e.$_popper,s.options.value=o):s=O2(e,t,n),typeof t.shown<"u"&&t.shown!==e.$_popperOldShown&&(e.$_popperOldShown=t.shown,t.shown?s.show():s.hide());}}const B2={beforeMount:Zf,updated:Zf,beforeUnmount(e){cw(e);}},pd=B2,Es=S2,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=W(sx),n=W(false);Ht(async()=>{window.addEventListener("message",s=>{const{event:i}=s.data;i==="customUrlHelp"&&(n.value=true);},false);});async function o(s){ft(s.key),Q({text:"已复制到剪贴板",icon:"success",timer:1e3});}return (s,i)=>n.value?(_(),A("div",R2,[d("div",F2,[d("h1",null,[i[1]||(i[1]=T(" 自定义菜单变量说明 ",-1)),d("a",{href:"javascript:void(0)",onClick:i[0]||(i[0]=r=>n.value=false)},"关闭")]),i[3]||(i[3]=d("hr",null,null,-1)),(_(true),A(Se,null,je(t.value,(r,a)=>(_(),A("div",{key:a},[d("h2",null,F(r.label),1),r.memo?(_(),A("p",N2,F(r.memo),1)):fe("",true),d("table",U2,[i[2]||(i[2]=d("thead",null,[d("tr",null,[d("th",{width:"50%"},"变量"),d("th",{width:"50%"},"说明")])],-1)),d("tbody",null,[(_(true),A(Se,null,je(r.items,(l,c)=>(_(),A("tr",{key:c},[d("td",null,[d("span",{class:"ce-variable",onClick:u=>o(l)},F(l.key),9,j2)]),d("td",null,F(l.label),1)]))),128))])])]))),128))])])):fe("",true)}}),Pe=(e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;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:"file_edit"},{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:"file_edit"},{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"}]},dw=gt.hiddenOfficialMenuKeys;async function fw(){return await Xe.get(dw,[])}async function J2(e,t=false){await Xe.set(dw,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 pw(){const e=[W2,K2,G2,q2],t=await fw();return e.forEach(n=>{n.items.forEach(o=>{const s=`${n.key}_${o.key}`;t.includes(s)?o.hidden=true:o.hidden=false;});}),e}async function Q2(){const e=await pw(),t=[];return e.forEach(n=>{n.hiddenStyles.forEach(o=>{const s=[];n.items.forEach(i=>{i.hidden&&s.push(o.selector.replace("{key}",i.key));}),s.length&&t.push(s.join(`,
`)+" { "+o.css+" }");});}),t.join(`
`)}async function ep(){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 hw=gt.list;var mw=(e=>(e.view="view",e.list="list",e.default="_",e))(mw||{});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,enhanceRenameInput:false,dragToQuickEntry:false,quickEntryAvoidCovered:false,hideSelectionMenuOnDrag:false,makeMoreImageViewable:false,...e}}async function li(){const e=X2(),t=await Xe.get(hw,e);return {...e,...t}}async function Z2(e){await Xe.set(hw,e);}var On=(e=>(e[e.asc=0]="asc",e[e.desc=1]="desc",e))(On||{});const gw=`
== 基础操作 ==

快捷键         功能            说明
----------    ----------     -----------------------------------
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 e$(){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 t$(e){if(!e.showOnlyFileFilter&&!e.fileFilterExtensions)return;const t=vn(),n=$o();!t&&!n||(n$(e,t),o$(e,t,n));}async function n$(e,t,n){if(!e.showOnlyFileFilter)return;const o=$n.file,s=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(s,r);}async function o$(e,t,n){const o=e.fileFilterExtensions.split(/\s*[,,]+\s*/).map(f=>f.trim().toLowerCase()).filter(f=>f!=="");if(!o.length)return;const s=await Kn("#js_filter_box, #js_search_filter_popup"),i=$('<div class="ce-filter-ext-wrap"></div>');let r,a;const l=f=>{r=new Promise(p=>{a=p;}).then(()=>{s.find(".selected")?.removeClass("selected"),i.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 gm(yo({show_dir:Bo.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)?s.find(".selected[menu]").length&&i.find(".selected")?.removeClass("selected"):a();}});for(const f of o){const p=u(f);i.append(p);}t?s.append(i):n&&s.find(".list-filter").append(i);}async function s$(e){if(window!==window.top||!e.fixShortcut)return;const t="js-main_mode";await ac('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 i=Ue("div.dialog-box.window-current > div.dialog-header > h3");if(i&&i.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>${gw.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);}),i.appendChild(c),r.classList.add("ce-sid","ce-sid-active"),r.replaceChildren(l);}}});}async function i$(e){if(window!==window.top||!e.followHistoryState)return;const t=async n=>{const o=Zi("cid"),s=await jt(false);o!==s&&kt().wangpan.Main.Action.Handlers.GotoDir({cid:o});};window.addEventListener("popstate",t);}async function r$(e){Ue("div#js_data_list")?.addEventListener("mousedown",n=>{n.target.classList.contains("ce-inj")&&n.stopPropagation();});}async function a$(e){vn()&&e.dragToQuickEntry&&(tp(),sb("#js_file_category_box",lt(tp,200),{childList:true,subtree:true}),l$(e));}async function tp(){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 l$(e){const t=kt().wangpan?.Main;if(!t)return;const n="ce-show-quick-entry";if(e.hideSelectionMenuOnDrag||document.body.addEventListener("keydown",s=>{s.ctrlKey&&Ue("#js_operate_box")?.classList.toggle(n);}),e.hideSelectionMenuOnDrag){let s=0;const i=500;document.body.addEventListener("mousemove",r=>{const a=Date.now();if(a-s<i)return;s=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=s=>{o(s),Ue("#js_operate_box")?.classList.remove(n);};}async function u$(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 c$(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 d$(e){if(vn()){const t="ce-list-page";document.body.classList.add(t),parent.document.body.classList.add(t);}}function f$(e,t=""){return `${t}code=${e.code} ${e.message}`}async function p$(e){hd(e.fileSelectorDefaultView);}function h$(){return unsafeWindow.localStorage.getItem("FS_view")||"_"}function hd(e){let t=h$();console.log(`[performSetSelectorView] 当前视图: ${t},目标视图: ${e}`);const n=()=>{hd(t),console.warn(`[performSetSelectorView] 回滚到之前的视图: ${t}`);};return unsafeWindow.localStorage.setItem("FS_view",e),n}async function m$(e){if(!e.enhanceRenameInput)return;const t=$("div.dialog-box.window-current");t.addClass("ce-rename-dlg");const n=t.find('input[rel="file_name"]');if(!n.length){console.warn('[enhanceRename] [rel="file_name"] not found');return}let o=t.find('textarea[rel="ce_file_name"]');o.length||(o=$('<textarea rel="ce_file_name" rows="3"></textarea>'),n.after(o));const s=t.find('a[rel="clear_name"]');let i=t.find(".ce-btn-clear");i.length||(i=$('<a href="javascript:;" class="btn-clear ce-btn-clear"><s>清空</s></a>'),s.after(i));const r=n.val();o.val(r),n.hide(),s.hide(),$.data(i,"events")||i.on("click",c=>(c.preventDefault(),c.stopPropagation(),o.val(""),o.trigger("input"),o.focus(),false));const a=c=>{let u=o.val();u=u.trim(),u=u.replace(/[\r\n]+/g," "),n.val(u),n.trigger(c);};$.data(o,"events")||(o.on("input",a),o.on("keydown",c=>{n.trigger(c);}),o.removeClass("ce-inited"));const l=$('[rel="show_old_name"]');(l.length===0||!l.is(":visible"))&&o.select();}async function g$(e){if(window!==window.top)return;const{noUpdateDirAfterRename:t,enhanceRenameInput:n}=e;if(!t&&!n)return;let o=t,s="",i=false;const r=kt(),a=Core.FileReNameDG.Show;r.Core.FileReNameDG.__Show=a;const l=r.Core.Dir.Rename;r.Core.Dir.__Rename=l;const c=r.Core.FileConfig.DataAPI.UpdateDir;r.Core.Dir.__UpdateDir=c,r.Core.FileReNameDG.Show=async(...u)=>{s=u[0],i=true,a(...u);},r.Core.Dir.Rename=async(...u)=>{s=u[1],i=false,l(...u);},r.Core.FileConfig.DataAPI.UpdateDir=async u=>{if(o){const f=si();let p=`li[file_id="${s}"]`;const w=await jt(),g=u&&u.cid&&w===u.cid;i||(p=`li[cate_id="${s}"]`);const b=async()=>{console.warn("[list handleNoUpdateDirAfterRename] $file is ce-temp-cur-dir"),Q({icon:"warning",text:"重命名的是当前目录,忽略「重命名后不刷新列表」选项"}),pm().attr("titletext",u.dir_name).find("span").text(u.dir_name);};if(g){await b();return}const v=f.find(p);if(v.length){if(v.hasClass("ce-temp-cur-dir")){await b();return}if(Q({icon:"info",text:"启用了「重命名后不刷新列表」选项,不会刷新文件列表"}),v.find(".file-modified span").text("刚刚"),!i){v.attr("cate_name",u.dir_name),v.attr("title",u.dir_name);const S=v.find(".file-name a.name");S.length?(S.attr("title",u.dir_name).text(u.dir_name),S.text(u.dir_name)):console.warn("[list handleNoUpdateDirAfterRename] $name not found");}}else console.warn("[list handleNoUpdateDirAfterRename] $file not found");}else c(u);},window.addEventListener("message",async u=>{if(u.data.event!==ot.topDomChanged)return;const p=Ue("div.dialog-box.window-current > div.dialog-header > h3"),w=p?.textContent.trim()||"";if(!p||!w.includes("重命名"))return;w==="重命名文件"&&m$(e);const g=Ue("div.dialog-box.window-current .file-rename");if(!g){console.warn("[list handleNoUpdateDirAfterRename] .file-rename not found");return}let b=Ue("#cbNoUpdateDir");if(b)return;const v=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>`);g.insertAdjacentElement("afterend",v),b=Ue("#cbNoUpdateDir"),b&&(b.checked=o,b.addEventListener("change",()=>{o=b.checked;}));});}async function w$(e){if(!e.noReloadAfterMove||window!==window.top)return;let t=true,n=[];const o=kt(),s=o.Core.FileMenu.DoEvent,i=o.Core.FileConfig.DataAPI.Reload;o.Core.FileConfig.DataAPI.Reload=async(...r)=>{if(t){Q({icon:"info",text:"启用了「移动后不刷新文件列表」选项,不会刷新文件列表"});for(let a=0;a<n.length;a++)Yp(n[a][0]);await Mt(500),o.wangpan.Main.List.RecheckFiles([]),o.wangpan.Main.List.updateDataListDom("");}else i(...r);},o.Core.FileMenu.DoEvent=async(...r)=>{n=r[0],s(...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 y$(e){if(window!==window.top)return;let t=e.claimSelectedAfterCreateDir,n=e.noGotoAfterCreateDir;const o=kt(),s=o.Core.Dir.Create;o.Core.Dir.Create=async(a,l,c)=>{const u=await ro(true);u.length,r(u);const f=async p=>{const w=ds().toString(),g={file_name:p.file_name,utime:w,size:"",pick_code:"",file_category:rm.folder,paths:[{file_id:l,file_name:""}]},b=await dm(p.cid,g,cm()),v=Tc(true);if(v.length===0){const S=Cs();S.is("ul")?S.append(b):S.find("ul").append(b);}else for(let S=0;S<v.length;S++)S?v.eq(S).remove():v.eq(S).replaceWith(b);await Mt(500),await i(b,p);};s(a,l,async p=>{if(t&&u.length){const w=u.map(g=>g.id);try{const g=await im(p.cid,w);console.log("[list handleCreateDir] moveFiles result:",g),g.state?Q({icon:"success",text:"移动选中的文件到新文件夹成功"}):Y.fire({icon:"error",html:`移动选中的文件到新文件夹失败: ${f$(g)}`});}catch(g){console.error("[list handleCreateDir] moveFiles error:",g),Y.fire({icon:"error",html:`移动选中文件到新文件夹时出错: ${g.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 i=async(a,l)=>{kt().wangpan?.postMessage({event:ot.renderMenus,body:{type:Ie.listItemHover}});const u={id:l.cid,name:l.cname,isDir:true};await ww(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 g=document.createElement("div"),b=`
        <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: #2164d0;">
              <input id="${f}" type="checkbox" /> 不跳转到新文件夹
            </label>
          </div>
        </div>`;g.innerHTML=b,c.insertAdjacentElement("beforebegin",g),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 b$(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),s="ce-url-done",i=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(s))return;let l=i(a);l&&(a.attr("href",Bn(l)),a.addClass(s),n.removeAttrs&&n.removeAttrs.map(c=>{a.removeAttr(c);}));};o.on("mouseover",n.link,a=>{const l=$(a.currentTarget);r(l);}),o.on("click",`.${s}`,a=>{const c=$(a.currentTarget).attr("href");if(!c)return  true;if(a.preventDefault(),a.stopPropagation(),a.ctrlKey||a.metaKey)Gr(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 v$(e,t,n){if(!e.showSha1||!n.hash)return;t.addClass("ce-show-sha1");const o=t.find(".file-name"),s="文件SHA1,点击复制"+(e.clickSha1WithCtrlToFindRepeat?" (Ctrl+点击 查找重复文件)":""),i=ze(`
    <span class="ce-file-sha1 ce-inj" title="${s}">${n.hash}</span>
  `),r=()=>{ft(n.hash),Q({title:"复制SHA1",text:"已复制文件SHA1",icon:"success",timer:1500});};i.addEventListener("click",async a=>{a.preventDefault(),a.stopPropagation(),e.clickSha1WithCtrlToFindRepeat&&(a.metaKey||a.ctrlKey)?ad(n):r();}),o.append(i);}async function ww(e,t,n){const o=[],s=await x$(e,t,n);s&&o.push(s);const i=await _$(e,t,n);if(i&&o.push(i),o.length){const r=t.find(".file-size");if(!r.length){console.warn("[injectToSizeCell] 未找到文件大小元素,跳过:",n,t);return}r.append(...o);}}async function x$(e,t,n){if(!e.showFolderSizeButton||!n.isDir)return null;const o=t.find(".file-size"),s=(e.hoverShowFolderSize?"点击或鼠标悬浮":"点击")+"获取该文件夹大小",i=ze(`
    <span class="ce-btn-folder-size ce-inj" title="${s}">大小</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"),Q({title:"获取大小",text:"已获取文件夹大小",icon:"success",timer:1500});}catch(c){console.error(c),Q({title:"获取大小失败",text:c.toString(),icon:"error"});return}};return i.addEventListener("click",async l=>{r&&clearTimeout(r),await a(l);}),e.hoverShowFolderSize&&(i.addEventListener("mouseenter",async l=>{r&&clearTimeout(r),r=setTimeout(async()=>{await a(l);},200);}),i.addEventListener("mouseleave",()=>{r&&clearTimeout(r);})),i}let Li;async function np(e,t,n,o){Li&&clearTimeout(Li),o.preventDefault(),o.stopPropagation();const s=hd(mw.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=>{s();},{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){Q({icon:"error",text:`未找到"新页面打开"按钮!${c.toString()}`});}}async function _$(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",s=>{np(e,t,n,s);}),e.hoverShowQuickView&&(o.addEventListener("mouseenter",async s=>{Li=setTimeout(async()=>{await np(e,t,n,s);},300);}),o.addEventListener("mouseleave",()=>{Li&&clearTimeout(Li);})),o}async function C$(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 s=o,i=ze(`
    <a class="btn-sort ce-size-sort" title="显示当前目录下已加载的子文件夹的大小">
      <span>大小</span>
    </a>
  `);i.addEventListener("click",async r=>{if(r.preventDefault(),r.stopPropagation(),!i.classList.contains(n))try{i.classList.add(n),await md(!1,!1,!1);}catch(a){console.error(a),Q({title:"获取子文件夹大小失败",text:a.toString(),icon:"error"});}finally{i.classList.remove(n);}}),s.appendChild(i),s.classList.add(t);}async function k$(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 s=o,i=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>
  `);i.addEventListener("click",async r=>{if(r.preventDefault(),r.stopPropagation(),i.classList.contains("el-size-sort-ing"))return;const a="by-desc",l="by-asc";try{i.classList.add(n);let c=On.desc;i.classList.contains(a)?c=On.asc:c=On.desc;const u=await jt(!1);await _a(u,c,!1,!1),c===On.asc?(i.classList.remove(a),i.classList.add(l)):(i.classList.remove(l),i.classList.add(a));}catch(c){console.error(c),Q({title:"排序失败",text:c.toString(),icon:"error"});}finally{i.classList.remove(n);}}),s.appendChild(i),s.classList.add(t);}async function md(e,t,n=false){await li();const o=await jt(false),s=Cs(),i=await ro(false);console.log("[items]",i),Q({html:"正在获取子文件夹大小...",icon:"info",position:"top-end",timer:0}),Y.showLoading();for(let r=0;r<i.length;r++){const a=i[r];if(!a.isDir)continue;const l=s.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);Y.update({html:`[${r+1} / ${i.length}] 正在获取子文件夹大小:${a.name}`}),u.text(f.size);const{folder_count:p=0,count:w=0}=f;let g=p>0?`目录${p}`:"";if(g+=w>0?(g!==""?",":"")+`文件${w}`:"",g!==""){let b=c.find(".ce-s-d");b.length||(b=$('<div class="ce-s-d"></div>'),c.append(b)),b.text(g);}l.addClass("ce-size-got");}return Y.hideLoading(),e?await $$(o):Q({html:"已获取子文件夹大小",icon:"success",timer:1500,position:"top-end"}),o}async function _a(e,t,n,o){const s=Cs();s.find('li[file_type="0"]:not(.ce-size-got)').length>0&&await md(n,o,false);const r=s.is("ul")?s:s.find("ul"),a=r.children("li").toArray();a.sort(function(c,u){const f=$(c),p=$(u),w=Pd(f.find(".file-size span:eq(0)").text()),g=Pd(p.find(".file-size span:eq(0)").text());return t===On.asc?w-g:g-w});const l=$("<ul></ul>");$.each(a,function(c,u){l.append(u);}),r.replaceWith(l),n?Y.update({title:"排序完成",html:`已完成排序: ${t===On.asc?"小 > 大":"大 > 小"}`,icon:"success"}):Q({html:`已完成排序: ${t===On.asc?"小 > 大":"大 > 小"}`,icon:"success",timer:1500,position:"top-end"});}async function $$(e){Y.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"),_a(e,On.desc,true,true),false),preDeny:async()=>(console.log("preDeny"),_a(e,On.asc,true,true),false)});}async function S$(){const e=await li();e.sizeSorter&&e.showBatchFolderSizeButton&&Wy(".list-header .header-size { min-width: 142px !important;}"),await Nu();const t=await et("#js_data_list");E$(),new MutationObserver(async([o])=>{o.type==="childList"&&(window.postMessage({event:ot.listRendered}),await Nu());}).observe(t,{childList:true});}async function E$(){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 s=false;if((o.getAttribute("menu")==="load_all_file"||o.closest('[menu="load_all_file"]'))&&(s=true),!s)return;console.log("[list.handleLoadAll] 点击了「加载全部」按钮"),await qo(t,500,3e5);const i=Ue("#js_data_list .list-contents > ul");i?.removeAttribute("ce-done2");const r=Ue("#js_data_list");r&&r.querySelectorAll(".list-contents > ul:not([ce-done2]) > li").length&&(i?.setAttribute("ce-done2",""),await Nu());});}async function Nu(){const e=await li();k$(e),C$(e),c$(e),P$(e),$o();const t=Tc(false);for(let n=0;n<t.length;n++){const o=t.eq(n),s=mn(o);await A$(e,o,s);}}async function A$(e,t,n,o){await v$(e,t,n),await ww(e,t,n);}async function P$(e){if(!e.showOpenDirContextMenu||await jt(false)===""||$o())return;const n=Ue(".header-name");if(!n||n.classList.contains("ce-injected"))return;const o=n,s=document.createElement("a");s.classList.add("ce-open-dir-context-menu"),s.title="打开当前目录的功能菜单",s.innerHTML="<span>目录功能菜单</span>";let i;const r=async a=>{i&&clearTimeout(i),a.preventDefault(),a.stopPropagation();try{const l=kt(),c=await jt(!1),u=s.getBoundingClientRect();l.Core.FileMenu.FileRight("1",c,!1,u.x,u.y+8,void 0,!1);}catch(l){console.error(l);}};s.addEventListener("click",r),e.hoverShowDirContextMenu&&(s.addEventListener("mouseenter",async a=>{i=setTimeout(async()=>{await r(a);},300);}),s.addEventListener("mouseleave",()=>{i&&clearTimeout(i);})),o.appendChild(s),o.classList.add("ce-injected");}let I$=[];async function yw(e,t,n){n.stopPropagation(),n.preventDefault();try{const o=await Wo(!1,1e3);if(!o)return;const s=mn(o),i=await Qt(),r=await Oi(s,e,i);if(e.key==="p_builtin_115plus"){const a=n.metaKey||n.ctrlKey;ma(void 0,s.id,a);return}if(Lc(r)){const l=(await ro(!1)).find(c=>c.playDuration&&c.playDuration>0);Fg(s.id,l);return}if(console.log("[play url]",r),!r)throw new Error("无法获取有效的播放链接!");window.open(r,"_blank","noopener noreferrer");}catch(o){console.error(o),Q({title:"播放失败",text:o.toString(),icon:"error"});}}async function D$(e,t){const n=[];for(const o of t){const s=Ta(e,{key:`_ce_p_${o.key}`,label:o.label,icon:o.icon,title:"播放当前目录"+(o.memo?` - ${o.memo}`:""),onClick:async(i,r)=>{yw(o,i,r);}});n.push(s);}return n}async function T$(){const e=await ut(),t=await rd(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,s)=>{await o.closeMenu(),!t.noRealDefault&&yw(t.defaultPlayer,o,s);},subItems:[...await D$(lc,t.customUrlItems)]})}async function L$(){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 s=pm().attr("titletext")?.trim();if(!s){Q({icon:"error",text:"无法获取当前目录名称"});return}unsafeWindow.Core.Dir.Rename("1",n,s);}})}async function M$(){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 ga({id:"0",name:"根目录",isDir:true});return}const o=await Wo(false,1e3);if(!o)return;const s=mn(o);await ga(s);}})}async function O$(){return new Jt({key:"_move_dir",label:"移动文件夹",icon:"icon-operate ifo-move",title:"移动当前文件夹到其他位置",onClick:gd("move")})}async function B$(){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=si();unsafeWindow.Core.FileAPI.DeleteFile([n],s=>{n.remove(),o.find("#js_top_header_file_path_box .top-file-path > .file-path").children(":last").prev()[0].click();},true);}})}function gd(e,t){return async(n,o)=>{await n.closeMenu();const s=await Wo();s&&await j0(s,e);}}async function R$(){return new Jt({key:"_copy_dir",label:"复制文件夹",icon:"icon-operate ifo-copy",title:"复制当前文件夹",onClick:gd("set_copy")})}async function F$(){return new Jt({key:"_copy_dir_to",label:"复制文件夹到",icon:"icon-operate ifo-copyto",title:"复制当前文件夹到其他位置",onClick:gd("copy_list")})}async function N$(e){const{namePathConfig:t}=e,n=[{b:t.copyFullName,v:()=>Yl("完整名称",mt.full)},{b:t.copyId,v:()=>Yl("ID",mt.id)},{b:t.copyPickCode,v:()=>Yl("PickCode",mt.pickCode)},{b:t.copyUnixPath,v:()=>op("路径(Unix)",Mn.unixPath)},{b:t.copyWinPath,v:()=>op("路径(Windows)",Mn.winPath)},{b:t.viewInCloudDrive,v:()=>M$()}],o=await Promise.all(n.filter(s=>s.b).map(s=>s.v()));return new Jt({key:"_dir_copy_names",label:"名称路径",icon:"icon-operate ifo-copy",title:"获取当前目录的名称、路径等信息",subItems:o})}async function U$(e,t){const n=[...(await ur()).filter(i=>i.enabled),...I$.filter(i=>i.enabled),...(await ks(no.search)).filter(i=>i.enabled)];let o=n.find(i=>i.key===t.defaultSearch);o||(o=n.find(i=>i.key===cr));const s=async i=>{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(i,r)=>{r.stopPropagation(),r.preventDefault(),await i.closeMenu(),o&&await mr(i,o,r,t,s,Ie.dirContextSub);},subItems:[...await ol(lc,n,s,Ie.dirContextSub)]})}async function j$(){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,s,i){O0().CACHE.FileMain.List.ResetPlayLongText(o,s,i);}},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 s=await Wo(false,1e3);if(!s)return;const i=mn(s),r=await ut(),a=await Qt(),c=gr([i],t,u=>r.cloudDriveFormalization?un(a,u):u);ft(c.join(`
`)),Q({title:`复制${e}`,text:`已复制当前目录的${e}`,icon:"success"});}})}async function op(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 s=await Wo(false,1e3);if(!s)return;const i=mn(s),r=await ut(),a=await Qt(),c=await Ug([i],t,u=>r.cloudDriveFormalization?un(a,u):u);ft(c.join(`
`)),Q({title:`复制${e}`,text:`已复制当前目录的${e}`,icon:"success"});}})}async function z$(){return new Jt({key:"show_sub_folder_size",label:"子文件夹大小",title:"显示当前目录下已加载的所有子文件夹的大小",icon:"icon-operate ifo-prop",onClick:async(e,t)=>{await e.closeMenu(),await md(false,false,false);}})}async function H$(){return new Jt({key:"show_sub_folder_size_sort",label:"子文件夹大小+排序",title:"显示当前目录下已加载的所有子文件夹的大小,并进行排序",icon:"icon-operate ifo-prop",onClick:async(e,t)=>{await e.closeMenu(),await _a("",On.desc,true,true);}})}async function V$(e){const{[Ie.dirContext]:t}=e;if(!t.enabled)return;const n=[...t.topLevelMenus,"play","copyNames","search"],o=[],s=[],i=new Map;t.rename&&i.set("rename",await L$()),t.delete&&i.set("delete",await B$()),t.play&&i.set("play",await T$()),t.copyNames&&i.set("copyNames",await N$(t)),t.search&&i.set("search",await U$(t,e)),t.move&&i.set("move",await O$()),t.viewProp&&i.set("viewProp",await j$()),t.showSubFolderSize&&i.set("showSubFolderSize",await z$()),t.showSubFolderSizeAndSort&&i.set("showSubFolderSizeAndSort",await H$()),t.copy&&i.set("copy",await R$()),t.copyTo&&i.set("copyTo",await F$());const r=i.keys();for(const l of r){const c=i.get(l);c&&(n.includes(l)?o.push(c):s.push(c));}s.length>1?o.push(new Jt({key:"_dir_more",label:"更多",icon:"icon-operate ifo-open",subItems:s})):s.length===1&&o.push(s[0]),await new gb({items:o,siblingSelector:'[val="upload"]',position:bo.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 q$(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Is("完整名称",mt.full)),t.copyPureName&&n.push(await Is("不含后缀名称",mt.pure)),t.copyFullName&&n.push(await Is("完整名称(去重)",mt.fullUnique)),t.copyPureName&&n.push(await Is("不含后缀名称(去重)",mt.pureUnique)),t.copyId&&n.push(await Is("ID",mt.id)),t.copyPickCode&&n.push(await Is("PickCode",mt.pickCode)),t.copySha1&&n.push(await ip(false)),t.copySha1WithName&&n.push(await ip(true)),t.copyUnixPath&&n.push(await sp("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await sp("路径(Windows)",Mn.winPath)),t.viewInCloudDrive&&n.push(await W$()),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?(Q({text:"无法获取当前文件信息",timer:1200}),null):_s(e)}async function Is(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 s=dl();if(!s)return;const i=await ut(),r=await Qt(),l=gr([s],t,c=>i.cloudDriveFormalization?un(r,c):c);ft(l.join(`
`)),Q({title:`复制${e}`,text:`已复制${e},CloudDrive文件名规范: ${i.cloudDriveFormalization?"是":"否"}`,icon:"success"});}})}async function sp(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 s=dl();if(!s)return;const i=await ut(),r=await Qt();let a=await qa(s);i.cloudDriveFormalization&&(a=a.map(u=>un(r,u,true)),s.name=un(r,s.name,true));let l=a.join("/");const c=await sl(s,l,t);ft(c),Q({title:"复制路径",text:`已复制文件路径,CloudDrive文件名规范: ${i.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){Q({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const s=o.hash+(e?`//${o.name}`:"");ft(s),Q({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function W$(){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 ga(n);}})}async function K$(e){const{[Ie.listItemContext]:t}=e;if(!t.enabled)return;const n=[];t.copyNames&&n.push(await q$(t)),new yb({items:n,position:bo.after,siblingSelector:'[val="refresh"]',useObserver:true,observeTarget:document.body,disposeObserverAfterInjection:false}).inject();}async function G$(e){const{[Ie.listItemHover]:t}=e;if(!t.enabled)return;const n=[];t.openInNewTab&&n.push(await Sk()),t.search&&n.push(await Ck(e)),t.play&&n.push(await _k()),t.copyNames&&n.push(await $k(t)),t.findRepeat&&n.push(await Ek()),new Pk({items:n,position:bo.after,siblingSelector:'[menu="move"], [menu="delete"]'}).inject();}let J$=[];async function Y$(e){const t=[];return !$o()&&e.moveToSelfNameDir&&t.push(await Q$()),e.openInNewTab&&t.push(await X$()),e.openParent&&t.push(await Z$()),t.length?new il({key:"_s_batch",label:"批量操作",icon:"icon-operate ifo-batch",title:"对选中的文件进行批量操作",subItems:t}):null}async function Q$(){return new Co({key:"_s_smart_mkdir",label:"同名目录",icon:"icon-operate ifo-move",title:"将选中的文件移动到同名目录",onClick:await fk()})}async function X$(){return new Co({key:"_s_open_in_new_tab",label:"打开目录",icon:"icon-operate ifo-opendir",title:"批量打开选中的目录",onClick:async(e,t)=>{const n=(await ro(true)).filter(s=>s.isDir);if(!n.length){Q({title:"请选择目录",icon:"error"});return}const o=n.map(s=>Bn(s.id));await hr(o,true);}})}async function Z$(){return new Co({key:"_s_open_parent",label:"打开所在目录",icon:"icon-operate ifo-opendir",title:"批量打开选中文件的所在目录",onClick:async(e,t)=>{const n=await ro(true);if(!n.length){Q({title:"请选择文件",icon:"error"});return}const o=new Set;for(const i of n)i.parentId&&o.add(i.parentId);const s=Array.from(o).map(i=>Bn(i));await hr(s,true);}})}async function eS(e){const{namePathConfig:t}=e,n=[];return t.copyFullName&&n.push(await Ds("完整名称",mt.full)),t.copyPureName&&n.push(await Ds("不含后缀名称",mt.pure)),t.copyFullName&&n.push(await Ds("完整名称(去重)",mt.fullUnique)),t.copyPureName&&n.push(await Ds("不含后缀名称(去重)",mt.pureUnique)),t.copyId&&n.push(await Ds("ID",mt.id)),t.copyPickCode&&n.push(await Ds("PickCode",mt.pickCode)),t.copySha1&&(n.push(await rp(false)),n.push(await rp(true))),t.copyUnixPath&&n.push(await ap("路径(Unix)",Mn.unixPath)),t.copyWinPath&&n.push(await ap("路径(Windows)",Mn.winPath)),new il({key:"_s_copy_names_paths",label:"名称路径",icon:"icon-operate ifo-copy",showIcon:false,title:"复制选中文件的名称路径",onClick:async(o,s)=>{},subItems:n})}async function rp(e,t){return new Co({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 s=await ro(true),i=new Set,r=[];for(const a of s)a.hash&&(e&&i.has(a.hash)||(i.add(a.hash),r.push(a.hash+`//${a.name}`)));ft(r.join(`
`)),Q({title:"复制文件sha1",text:`已复制选中文件sha1。数量:${r.length}`,icon:"success",timer:1e3});}})}async function Ds(e,t){return new Co({key:`_s_copy_info_${t}`,label:`📋 ${e}`,icon:"icon-operate ifo-copy",showIcon:false,title:`复制${e}`,onClick:async(n,o)=>{const s=await ro(true);if(!s.length)return;const i=await ut(),r=await Qt(),l=gr(s,t,c=>i.cloudDriveFormalization?un(r,c):c);ft(l.join(`
`)),Q({title:`复制${e}`,text:`已复制选中文件信息。数量:${l.length},复制类型:${e},CloudDrive文件名规范: ${i.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function ap(e,t){return new Co({key:`_s_copy_path_${t}`,label:`📂 ${e}`,icon:"icon-operate ifo-copy",showIcon:false,title:e,onClick:async(n,o)=>{const s=await ro(true);if(!s.length)return;let i=[];Q({text:"正在获取已选文件路径...",timer:0}),Y.showLoading();const r=await ut();try{const a=await Qt(),l=r.cloudDriveFormalization?c=>un(a,c):c=>c;i=await Ug(s,t,l),Y.close();}catch(a){console.error(a),Q({text:`获取已选文件路径失败: ${a}`,timer:6e4,icon:"error"});return}finally{Y.hideLoading();}ft(i.join(`
`)),Q({title:"复制路径",text:`已复制选中文件的路径。数量:${i.length},复制类型:${e},CloudDrive文件名规范: ${r.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function tS(e,t=Ha.vod){if(e=e.filter(i=>i.transcoded),!e.length){Q({title:"没有可播放的视频",icon:"error"});return}const n=Date.now().toString(),o=unsafeWindow.open(mm("xxx",t),n);await Mt(1e3);let s=10;for(;s>0;)o?.postMessage({event:"play",body:{id:n,files:e}},`https://${t}`),await Mt(1e3),s--;}async function nS(){const e=await ut(),t=await rd(e);return new il({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&&bw(t.defaultPlayer,n,o);},subItems:[...await sS(Co,t.customUrlItems),new Tk({}),new Co({label:"关于选中播放",onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault(),Q({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 oS(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 bw(e,t,n){n.stopPropagation(),n.preventDefault();const o=await ut();try{let s=await ro(!0);if(t.key==="_ce_p_p_builtin_online"||e.key==="p_builtin_online"){await tS(s);return}if(e.key==="p_builtin_115plus")return ma(s);if(s=s.filter(p=>p.isDir||p.isVideo),s.length===0){Q({title:"播放失败",text:"没有可以播放的目录或媒体文件!",icon:"error",timer:2e3});return}const i=await Qt();if(s.length===1){const p=await Oi(s[0],e,i);window.open(p,"_blank","noopener noreferrer");return}const r=await oS(o.m3u8TempDir),a=await G0(s,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],Oo.unix);Q({title:"检查m3u8文件",text:"正在检查m3u8文件是否已准备就绪...",icon:"info",timer:0}),Y.showLoading(),await y0(i,u,!0,1e3,6e4),Q({icon:"success",text:"m3u8文件已准备就绪,即将开始播放..."});const f=await Oi(c,e,i);window.open(f,"_blank","noopener noreferrer");}catch(s){console.error(s),Q({title:"播放失败",text:s.toString(),icon:"error",timer:6e4,showConfirmButton:true});}finally{Y.hideLoading();}}async function sS(e,t){const n=[];for(const o of t){const s=Ta(e,{key:`_ce_p_${o.key}`,label:o.label,icon:o.icon,title:o.memo,onClick:async(i,r)=>{bw(o,i,r);}});n.push(s);}return n}async function iS(e,t){const n=[...(await ur()).filter(i=>i.enabled),...J$.filter(i=>i.enabled),...(await ks(no.search)).filter(i=>i.enabled)];let o=n.find(i=>i.key===t.defaultSearch);o||(o=n.find(i=>i.key===cr));let s;return e.searchOpenType!==Lu.undefined&&(s=e.searchOpenType===Lu.background),new il({key:"_s_search_d",label:"搜索",icon:o?.icon||"",title:"批量搜索"+(o?.memo?" - "+o.memo:""),onClick:async(i,r)=>{r.stopPropagation(),r.preventDefault(),o&&await mr(i,o,r,t,void 0,Ie.selection,s);},subItems:[...await ol(Co,n,void 0,Ie.selectionSub,s)]})}async function rS(e){if(!e.hideSelectionMenuLabel)return;const t=await et("#js_operate_box");new MutationObserver(async([o])=>{if(o.type==="childList"){const s=t.querySelectorAll("li[menu]");for(let i=0;i<s.length;i++){const r=s[i],a=r.textContent;r.setAttribute("title",a||"");}}}).observe(t,{childList:true}),t.classList.add("only-icon");}async function aS(e){const{[Ie.selection]:t}=e;if(!t.enabled)return;const n=[],o=await Y$(t);o&&n.push(o),t.copyNames&&n.push(await eS(t)),t.play&&n.push(await nS()),t.search&&n.push(await iS(t,e)),new Lk({items:n,position:bo.before,siblingSelector:"ul li"}).inject();}async function lS(e,t){if(t||(t=await ut()),!t||!t[Ie.shareListItemHover]?.enabled)return;const s=(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=ib(`#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+=s):(u=ze(`<div class="file-opr ${r}" rel="menu"></div>`),u.innerHTML=s,c.appendChild(u));}})();}async function vw(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 s=!!t&&!/px$/.test(t);uS(s);}function xw(){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 lp=lt(xw,200);let Or=false;function uS(e){setTimeout(xw,500),e&&!Or?(window.addEventListener("resize",lp),Or=true):!e&&Or&&(window.removeEventListener("resize",lp),Or=false);}async function cS(e){if(!e.autoConfirmPassword)return;let t=Zi("password");if(!t||(t=t.replace(/(\?.*)?$/,""),(await et(".form-decode .form-item input")).value!==t))return;(await et(".form-decode .submit a.button")).click(),Q({icon:"success",text:"自动确定访问码",timer:1e3,position:"top-right"});}async function dS(e){const t=await et("#js-list"),n=await ut(),o=i=>{Ql(e),lS(e,n);};new MutationObserver(o).observe(t,{childList:true}),t.addEventListener("mousedown",lt(i=>{Ql(e);},200));try{(await et('[btn="check_all"]')).addEventListener("mousedown",lt(r=>{Ql(e);},200));}catch(i){console.error(i);}}function Gi(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 fS(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"),s=Array.from(o).map(Gi),i=fS(s),r=t.querySelector(".header-name"),a=[];i.num&&a.push(`共${i.num}项`),i.filesNum&&a.push(`${i.filesNum}个文件,合计${Ws(i.filesSize)}`),i.foldersNum&&a.push(`${i.foldersNum}个目录`);const l=[];i.selectedNum&&(i.selectedFilesNum&&l.push(`${i.selectedFilesNum}个文件,合计${Ws(i.selectedFilesSize)}`),i.selectedFoldersNum&&l.push(`${i.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 _w(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 pS(){window.addEventListener("message",async e=>{const t=e.data.event,n=e.data.body;t===ot.shareConfigChange&&(vw(n),_w(n));});}let hS=[];async function mS(e,t){const n=[...(await ur()).filter(s=>s.enabled),...hS.filter(s=>s.enabled),...(await ks(no.search)).filter(s=>s.enabled)];let o=n.find(s=>s.key===t.defaultSearch);return o||(o=n.find(s=>s.key===cr)),new Hg({key:"_s_search_with_name_d",label:"搜索",icon:o?.icon||"",title:o?.memo||"搜索",onClick:async(s,i)=>{i.stopPropagation(),i.preventDefault(),o&&await mr(s,o,i,t,Gi,Ie.shareListItemHover);},subItems:[...await ol(ld,n,Gi)]})}async function Br(e,t){return new ld({key:`_s_lh_copy_info_${t}`,label:e,icon:"icon-operate ifo-copy",title:`复制${e}`,onClick:async(n,o)=>{o.stopPropagation(),o.preventDefault();const s=$(o.target).closest("li"),i=Gi(s[0]),r=await ut(),a=await Qt(),c=gr([i],t,u=>r.cloudDriveFormalization?un(a,u):u);ft(c.join(`
`)),Q({title:`复制${e}`,text:`已复制${e},CloudDrive文件名规范: ${r.cloudDriveFormalization?"是":"否"}`,icon:"success",timer:1e3});}})}async function up(e){return new ld({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"),s=Gi(o[0]);if(s.isDir){Q({text:"该功能仅对文件有效",icon:"warning",timer:2e3});return}const i=s.hash+(e?`//${s.name}`:"");ft(i),Q({title:"复制文件sha1",text:"已复制文件sha1",icon:"success",timer:1e3});}})}async function gS(e){const t=zg().namePathConfig,{namePathConfig:n=t}=e,o=[];return n.copyFullName&&o.push(await Br("完整名称",mt.full)),n.copyPureName&&o.push(await Br("不含后缀名称",mt.pure)),n.copyId&&o.push(await Br("ID",mt.id)),n.copyPickCode&&o.push(await Br("PickCode",mt.pickCode)),n.copySha1&&o.push(await up(false)),n.copySha1WithName&&o.push(await up(true)),new Hg({key:"_s_lh_copy_name_path",label:"名称",title:"复制文件名称",subItems:o})}async function wS(e){const{[Ie.shareListItemHover]:t}=e;if(!t.enabled)return;const n=[];t.search&&n.push(await mS(t,e)),t.copyNames&&n.push(await gS(t)),new Mk({items:n,position:bo.after,siblingSelector:'[menu="_s_null_"], [btn="prosecute"]'}).inject();}async function yS(){const{host:e}=location;if(!e.includes("115.com")&&!mu())return;console.log("[Cloud115 Enhancer - menu] running..."),bS(),document.addEventListener(wn.EVENT_CLOSE_MENU,n=>{$("#"+n.detail.menu.key).closest(".context-menu").hide();});const t=await ut();t.enabled&&(vS(t),await jg(t),window.top===window.self&&V$(t),K$(t),(vn()||$o())&&(G$(t),aS(t),rS(t)),mu()&&wS(t));}async function bS(){const e="ceCustomUrlHelp",t=document.createElement("div");t.id=e,document.body.appendChild(t);const n=ao(H2);n.component("VDropdown",Es),n.mount(`#${e}`);}async function vS(e){e.manageOfficialMenus&&(ep(),window.addEventListener("message",async t=>{t.data.event===ot.officialMenuStyleChange&&(console.log("[Cloud115 Enhancer - menu] officialMenuStyleChange",location.href),await Mt(1e3),console.log(await fw()),ep());}));}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 xS={[-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 Cw=gt.offline;var Vr=(e=>(e.name="name",e.nameRegex="nameRegex",e.infoHash="infoHash",e.url="url",e))(Vr||{});const _S={name:"名称",nameRegex:"名称正则",infoHash:"哈希",url:"链接"};var ys=(e=>(e.selection="ce-offline-selection",e.configChanged="ce-offline-config-changed",e.searchPageChanged="ce-offline-search-page-changed",e))(ys||{});function CS(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,batchDeleteHttpFtp:false,...e}}async function eo(){const e=CS(),t=await Xe.get(Cw,e);return {...e,...t}}async function kw(e){await Xe.set(Cw,e),window.postMessage({event:"ce-offline-config-changed",body:JSON.parse(JSON.stringify(e))},"*");}async function Uu(e,t,n){const o=new URLSearchParams({page:e.toString(),uid:n.toString(),sign:t,time:ds().toString()});return (await Ot().post("https://115.com/web/lixian/?ct=lixian&ac=task_lists",o,{withCredentials:true,timeout:6e4})).data}async function $w(){return (await Ot().get(`https://115.com/?ct=offline&ac=space&_=${Date.now()}`,{timeout:3e4,withCredentials:true})).data}async function ju(e,t,n,o){const s={uid:o.toString(),sign:t.sign,time:ds().toString()};n&&(s.flag="1");const i=E0(s);return e.forEach((a,l)=>{i.append(`hash[${l}]`,a);}),(await Ot().post("https://115.com/web/lixian/?ct=lixian&ac=task_del",i,{timeout:12e4,withCredentials:true})).data}var kS={name:"115不大助手"};async function $S(e){const t=await et("#js-warp"),n=t.querySelectorAll("li[complete]");if(n.length>0)for(const s of Array.from(n))await cp(s,e);PS(e),new MutationObserver(async([s])=>{if(s.type==="childList"){s.addedNodes.forEach(async a=>{await cp(a,e);});const i=document.querySelector(".ce-checkbox-all input"),r=await fl();if(!r.length)i.checked=false,i.indeterminate=false;else {const a=t.querySelectorAll("li[complete]");i.checked=r.length===a.length,i.indeterminate=!i.checked;}await pl(r);}}).observe(t,{childList:true});}async function SS(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 cp(e,t){const n=e,o=await SS(e);IS(n,t,o),ES(n,t,o),AS(n,t,o);}async function ES(e,t,n){if(!t.showInfoHash||e.querySelector(".info-hash"))return;const o=e.querySelector(".file-name"),s=ze(`
    <div class="info-hash" title="点击复制${n.hash}">${n.hash}</div>
  `);o.after(s),s.addEventListener("click",()=>{ft(n.hash),Q({text:"已复制",icon:"success",timer:800});});const i=e.querySelector(".desc-tips");i&&i.style.display!=="none"&&e.classList.add("ce-task-trouble");}async function AS(e,t,n){const o=e.querySelector(".file-operate");if(o.querySelector(".ce-buttons"))return;const s=ze('<span class="ce-buttons"></span>'),i=ze(`
    <a target="_blank" class="pure-button button-mini button-info">打开</a>
  `);i.href=Bn(n.cate_id),i.title="在新标签页打开目录",s.append(i),o.prepend(s);}async function PS(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(i=>{const r=i.querySelector("input");r.checked=o,i.classList.toggle("ce-selected",o);}),fl().then(i=>{pl(i);});});}async function IS(e,t,n){if(!t.enableListManagement||e.querySelector(".ce-checkbox"))return;const o=e.querySelector(".file-name-wrap"),s=ze(`
    <div class="ce-checkbox">
      <input type="checkbox" data-id="${n.hash}" />
    </div>
  `);o.prepend(s),e.classList.add("ce-show-checkbox"),s.addEventListener("click",async i=>{i.shiftKey?await TS(i,e):await DS(i,e);});}async function DS(e,t){t.classList.toggle("ce-selected");const n=document.querySelector(".ce-checkbox-all input"),o=await Ew();let s=0;for(const r of o)r.classList.contains("ce-selected")&&s++;const i=s===o.length;n.checked=i,n.indeterminate=!i&&s>0,fl().then(r=>{pl(r);});}async function TS(e,t){const n=await Ew(),o=n.indexOf(t);let s=-1;for(let u=0;u<o;u++)if(n[u].classList.contains("ce-selected")){s=u;break}if(s===-1){for(let u=n.length-1;u>o;u--)if(n[u].classList.contains("ce-selected")){s=u;break}}s=s===-1?o:s;const i=Math.min(s,o),r=Math.max(s,o);let a=0;for(let u=0;u<n.length;u++){const f=n[u],p=f.querySelector(".ce-checkbox input"),w=u>=i&&u<=r;p.checked=w,w&&a++,f.classList.toggle("ce-selected",w);}const l=i===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 Sw(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 s=o;n.push(s);}),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 s=await Sw(o);t.push(s);}}),t}async function pl(e){window.postMessage({event:ys.selection,body:e},"*");}async function zu(e){document.querySelectorAll("#js-warp li").forEach(async n=>{const o=n,s=o.getAttribute("hash");e.includes(s)&&Yp(o);});}async function LS(e,t,n,o){const s=[],i=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<=i&&!(p>-1&&w>p);w++){window.postMessage({event:ys.searchPageChanged,body:w},"*");const g=await Uu(w,e,t);p===-1&&(p=g.page_count);const b=g.tasks;for(const v of b){const S=n.caseSensitive?v.name:v.name.toLowerCase(),I=n.caseSensitive?v.info_hash:v.info_hash.toLowerCase(),E=n.caseSensitive?v.url:v.url?.toLowerCase(),P=r&&n.fuzzyName?S.includes(r):false,M=a?a.test(S):false,z=l&&I===l,U=c&&E===c;if((u?u===v.status.toString():true)&&(P||M||z||U)&&(s.push(v),f))break}if(f&&s.length)break}return s}async function MS(){if(!(await eo()).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=`这是 ${kS.name} 替换的输入框,如果想恢复原有的输入框,请在「离线设置」中关闭「修复输入页码跳转」选项`,l.addEventListener("keydown",n),a.insertAdjacentElement("beforebegin",l),a.remove(),r&&l.focus();},s=lt(async r=>{o(true);},50),i=new MutationObserver(async([r])=>{r.type==="childList"&&s(r);});o(false),i.observe(t,{childList:true});}async function OS(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 BS={class:"ce-config ce-offline-config"},RS={class:"pure-form pure-form-aligned offline-exporter-config-form"},FS={class:"pure-control-group"},NS={class:"pure-control-group"},US={class:"pure-control-group"},jS={class:"pure-control-group"},zS={class:"pure-control-group"},HS={class:"pure-control-group"},VS={class:"pure-control-group"},qS={class:"pure-control-group"},WS=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>eo()),t=await t,n(),t));return $t(async()=>{}),He(o,lt(async s=>{await kw(s),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),(s,i)=>(_(),A("div",BS,[d("form",RS,[d("fieldset",null,[d("div",FS,[i[8]||(i[8]=d("label",{for:"noGotoTaskPage"},"添加任务后不跳转",-1)),K(d("input",{id:"noGotoTaskPage",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=r=>o.value.noGotoTaskPage=r)},null,512),[[ye,o.value.noGotoTaskPage]]),i[9]||(i[9]=d("div",{class:"pure-form-message text-success"}," 官方的添加离线任务在添加任务后可能会跳转到任务列表页,开启此选项可以避免跳转。 ",-1))]),d("div",NS,[i[10]||(i[10]=d("label",{for:"enableListManagement"},"启用批量管理",-1)),K(d("input",{id:"enableListManagement",type:"checkbox","onUpdate:modelValue":i[1]||(i[1]=r=>o.value.enableListManagement=r)},null,512),[[ye,o.value.enableListManagement]]),i[11]||(i[11]=d("div",{class:"pure-form-message text-success"}," 可以选中多个任务进行操作,支持shift多选。 ",-1))]),d("div",US,[i[12]||(i[12]=d("label",{for:"showInfoHash"},"显示链接哈希",-1)),K(d("input",{id:"showInfoHash",type:"checkbox","onUpdate:modelValue":i[2]||(i[2]=r=>o.value.showInfoHash=r)},null,512),[[ye,o.value.showInfoHash]]),i[13]||(i[13]=d("div",{class:"pure-form-message text-success"}," 显示离线任务的哈希文本,点击可以复制。 ",-1))]),d("div",jS,[i[14]||(i[14]=d("label",{for:"fixGotoPage"},"修复输入页码跳转",-1)),K(d("input",{id:"fixGotoPage",type:"checkbox","onUpdate:modelValue":i[3]||(i[3]=r=>o.value.fixGotoPage=r)},null,512),[[ye,o.value.fixGotoPage]]),i[15]||(i[15]=d("div",{class:"pure-form-message text-success"}," 如果官方的输入页码跳转功能异常,可开启此选项。 ",-1))]),d("div",zS,[i[16]||(i[16]=d("label",{for:"batchDeleteHttpFtp"},"批量删除http(s)/ftp任务",-1)),K(d("input",{id:"batchDeleteHttpFtp",type:"checkbox","onUpdate:modelValue":i[4]||(i[4]=r=>o.value.batchDeleteHttpFtp=r)},null,512),[[ye,o.value.batchDeleteHttpFtp]]),i[17]||(i[17]=d("div",{class:"pure-form-message text-success"},[T(' "根据链接删除"功能支持http,https,ftp链接。'),d("b",{class:"text-danger"},"请注意,需要先查找到对应的任务才能删除"),T("。 ")],-1))]),i[24]||(i[24]=d("div",{class:"ce-tips"},"以下是导出链接相关选项",-1)),d("div",HS,[i[18]||(i[18]=d("label",{for:"onlyMagnetEd2k"},"只取磁力和ED2K链接",-1)),K(d("input",{id:"onlyMagnetEd2k",type:"checkbox","onUpdate:modelValue":i[5]||(i[5]=r=>o.value.onlyMagnetEd2k=r)},null,512),[[ye,o.value.onlyMagnetEd2k]]),i[19]||(i[19]=d("div",{class:"pure-form-message text-success"}," 导出链接时,只取磁力和ED2K链接,其他比如http链接会被略过。 ",-1))]),d("div",VS,[i[20]||(i[20]=d("label",{for:"enableOptimization"},"启用导出优化",-1)),K(d("input",{id:"enableOptimization",type:"checkbox","onUpdate:modelValue":i[6]||(i[6]=r=>o.value.enableOptimization=r)},null,512),[[ye,o.value.enableOptimization]]),i[21]||(i[21]=d("div",{class:"pure-form-message text-success"}," 据观察,离线记录列表是将未完成的记录放在最前面的。如果只需导出未完成链接, 当获取到一个已完成的记录时,便可以停止继续获取后面的记录,节省时间。 ",-1))]),d("div",qS,[i[22]||(i[22]=d("label",{for:"maxPage"},"最多导出页数",-1)),K(d("input",{id:"maxPage",type:"number","onUpdate:modelValue":i[7]||(i[7]=r=>o.value.maxPage=r),min:0},null,512),[[Ve,o.value.maxPage]]),i[23]||(i[23]=d("div",{class:"pure-form-message text-success"}," 0表示不限制,否则表示最多导出的页数。 ",-1))])])])]))}}),Aw=Pe(WS,[["__file","Config.vue"]]);function dp(e){return /^magnet:\?xt=urn:btih/.test(e)}function fp(e){return /^ed2k:\/\/\|file\|/.test(e)}function KS(e){return /^https?:\/\//.test(e)}function GS(e){return /^ftp:\/\//.test(e)}function pp(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 JS(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 YS={class:"ce-offline-exporter"},QS={key:0},mi=`\r
`,XS=xe({__name:"OflineExporter",setup(e){let t,n;const o=W([]);let s={};Ht(async()=>{s=await eo(),t=await Iw(),console.log("[profile]",t),n=await $w(),console.log("[space]",n),i(),await $S(s);});async function i(){window.addEventListener("message",v=>{const{event:S,body:I}=v.data;switch(S){case ys.selection:o.value=I;break;case ys.configChanged:s=I;break}},false);}async function r(v=false,S=""){const I=await eo(),{isConfirmed:E,value:P}=await Y.fire({title:"根据链接删除离线任务",html:`
      <div>每行一个链接,支持磁力链接和ED2K链接</div>
      <div>
        <label class="swal2-checkbox">
          <input type="checkbox" id="swalDeleteFile">
          <span class="swal2-label text-danger">同时删除文件</span>
        </label>
      </div>
      <div>
        <label class="swal2-checkbox">
          <input type="checkbox" id="swalBatchDeleteHttpFtp" ${I.batchDeleteHttpFtp?"checked":""}>
          <span class="swal2-label">支持http(s)/ftp链接(<span class="text-danger">需逐个查找后删除!</span>)</span>
        </label>
      </div>
      <div>
        <textarea id="swalUrls" aria-label="每行一个链接" class="swal2-textarea" placeholder="每行一个链接" style="width:80%;"></textarea>
      </div>
    `,focusConfirm:false,didOpen:()=>{const O=document.getElementById("swalDeleteFile");O.checked=v;const B=document.getElementById("swalUrls");B.value=S,B.focus();},preConfirm:()=>{const O=document.getElementById("swalUrls");if(!(O?O.value.trim():""))return Y.showValidationMessage("请输入链接!"),O.select(),false;const q=document.getElementById("swalDeleteFile"),le=document.getElementById("swalBatchDeleteHttpFtp");return {deleteFile:q?q.checked:false,batchDeleteHttpFtp:le?le.checked:false,urls:O?O.value.trim():""}},width:620,inputPlaceholder:"每行一个",inputAttributes:{"aria-label":"每行一个"},showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消",customClass:{popup:"ce-swal-text-left"}});if(!E)return;if(!P||!P.urls){Q({icon:"error",title:"请输入链接!"});return}console.log("[value]",P);const M=new Set,z=new Set,U=P.urls.trim().split(`
`);for(let O=0;O<U.length;O++){const B=U[O].trim();if(dp(B)||fp(B)){const q=Pw(B);q&&z.add(q.toLowerCase());}(KS(B)||GS(B))&&M.add(B);}const ie=[`共有 ${U.length} 行链接,`];let pe=0;if(z.size&&(pe+=z.size,ie.push(`其中 ${z.size} 个是 magnet/ed2k 链接,`)),M.size&&(pe+=M.size,ie.push(`其中 ${M.size} 个是 http(s)/ftp 链接,`)),!pe){Q({icon:"error",title:"没有有效链接"});return}if(z.size){const O=await a(Array.from(z),P.deleteFile);O&&ie.push(`删除 magnet/ed2k 任务结果: ${O}`);}let ne={};if(M.size&&P.batchDeleteHttpFtp){const{issue:O,missingUrls:B=[]}=await l(Array.from(M),P.deleteFile,true);O&&ie.push(`删除 http(s)/ftp 任务结果: ${O}`),B.length&&(ie.push(`有 ${B.length} 个 http(s)/ftp 链接未找到对应任务,具体请点击"复制未找到链接"按钮查看。`),ne={showDenyButton:true,denyButtonText:"复制未找到链接",preDeny:async()=>(ft(B.join(mi)),Q({icon:"success",title:"已复制到剪贴板",timer:800,position:"top-end"}),false)});}Y.fire({title:"操作完成",icon:"info",html:ie.join("<br>"),customClass:{popup:"ce-swal-text-left"},...ne});}async function a(v,S){if(!v.length)return null;Y.fire({html:`正在删除 ${v.length} 个任务...`}),Y.showLoading();try{await ju(v,n,S,t.user_id);}catch(I){console.error(I);const E=I.message||I.toString();return Y.fire({title:"删除失败",icon:"error",html:E}),E}try{await zu(v);}catch(I){console.error(I);}return `成功删除 ${v.length} 个任务`}async function l(v,S,I=false){if(!v.length)return {issue:null};const E=await eo();if(!I&&!E.batchDeleteHttpFtp)return {issue:null};v=Array.from(new Set(v));let P=0;Y.fire({html:`开始查找 ${v.length} 个 http(s)/ftp 任务...`}),Y.showLoading();const M=()=>{const B=P?`,已找到 ${P} 个`:"";Y.update({html:`正在查找 ${v.length} 个 http(s)/ftp 任务...${B}`});},z=new Map;let U=1;const ie=E.maxPage>0?E.maxPage:9999;for(;;){M();const B=await Uu(U,n.sign,t.user_id);if(!B.tasks||!B.tasks.length)break;for(const q of B.tasks)!q.url||!q.info_hash||v.includes(q.url)&&!z.has(q.url)&&(z.set(q.url,q.info_hash),P++,M());if(U>=ie||U>=B.page_count)break;U++;}if(!z.size)return {issue:"未找到符合条件的 http(s)/ftp 任务"};const pe=v.filter(B=>!z.has(B)),ne=Array.from(z.values()),O=await a(ne,S);return O?{issue:O,missingUrls:pe}:{issue:null,missingUrls:pe}}async function c(){const v=o.value.map(P=>P.info_hash);if(!v.length)return;const{isConfirmed:S,value:I}=await Y.fire({title:"批量删除",icon:"warning",html:`确定要删除选中的 ${v.length} 个离线记录吗?`,input:"checkbox",inputValue:0,inputPlaceholder:"同时删除文件",showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消"});if(!S)return;const E=!!I;Y.showLoading(),Y.update({html:"正在删除..."}),await ju(v,n,E,t.user_id),Q({icon:"success",title:"删除成功",timer:800,position:"top-end"}),await zu(v),o.value=[];}async function u(v){const S=[v];s.onlyMagnetEd2k&&S.push(en.magnetEd2k),console.log("[filters]",S),await b(n.sign,t.user_id,S);}function f(v,S){if(!S.length||S.length===1&&S[0]==="all")return v;const I={[on.failed]:en.failed,[on.illegal]:en.failed,[on.ing]:en.failed,[on.success]:en.success};return v=v.filter(E=>{if(!E.url&&!E.info_hash)return  false;const P=I[E.status];return S.includes(en.all)||P&&S.includes(P)?!(S.includes(en.magnetEd2k)&&(!JS(E.info_hash)||E.url&&!dp(E.url)&&!fp(E.url))):false}),v}async function p(v,S,I){let E=[],P=1,M=0;for(;;){Y.update({html:`正在导出... 进度:第 ${P} 页`+(M?` / ${M}`:""),allowOutsideClick:false});const z=await Uu(P,v,S);if(!z.tasks||!z.tasks.length)break;if(M===0&&s.maxPage>0?M=Math.min(z.page_count,s.maxPage):M=z.page_count,E=[...E,...f(z.tasks,I)],s.enableOptimization&&I.includes(en.failed)&&w(z.tasks)){console.warn("由于开启了导出优化,且检测到已获取的记录中至少有一个「已完成」的记录,将不再获取剩下的记录");break}if(P>=M)break;P++;}return E}function w(v){for(const S of v)if(S.status===on.success)return  true;return  false}async function g(){const v=[en.all];s.onlyMagnetEd2k&&v.push(en.magnetEd2k),console.log("[filters]",v);const S=o.value;if(!S.length)return;const I=[];S.forEach(E=>{!E.url&&E.info_hash&&(E.url=pp(E.info_hash)),I.push(E.url);}),I.length&&(ft(I.join(mi)),console.log("[links]",I),await Y.fire({title:"导出成功",icon:"success",html:`成功导出 ${I.length} 个链接,请粘贴到文本文件。`,showDenyButton:true,denyButtonText:"保存到txt",allowEscapeKey:false,allowOutsideClick:false,preDeny:async()=>(console.log("[saveAs]"),Jr(I.join(mi),`115离线链接_数量${I.length}_${ds()}.txt`),false)}));}async function b(v,S,I){Y.fire({title:"导出离线链接",html:"正在导出...",didOpen:()=>{Y.showLoading();}});const E=await p(v,S,I);if(Y.hideLoading(),!E.length){await Y.fire({title:"导出失败",icon:"error",html:"查询不到符合条件的离线记录!"});return}const P=[];if(E.forEach(M=>{!M.url&&M.info_hash&&(M.url=pp(M.info_hash)),P.push(M.url);}),!P.length){await Y.fire({title:"导出失败",icon:"error",html:"未完成的离线记录中没有磁力或HTTP链接!"});return}ft(P.join(mi)),console.log("[links]",P),await Y.fire({title:"导出成功",icon:"success",html:`成功导出 ${P.length} 个链接,请粘贴到文本文件。`,showDenyButton:true,denyButtonText:"保存到txt",allowEscapeKey:false,allowOutsideClick:false,preDeny:async()=>(console.log("[saveAs]"),Jr(P.join(mi),`115离线链接_数量${P.length}_${ds()}.txt`),false)});}return (v,S)=>{const I=_o("VDropdown");return _(),A("span",YS,[o.value.length?(_(),A("span",QS,[d("button",{type:"button",class:"pure-button button-small button-error",onClick:c},[S[4]||(S[4]=T("删除(",-1)),d("span",null,F(o.value.length),1),S[5]||(S[5]=T(")",-1))]),S[6]||(S[6]=T("      ",-1))])):fe("",true),d("button",{type:"button",class:"pure-button button-mini button-error",onClick:S[0]||(S[0]=E=>r(false,"")),title:"填写链接以删除对应的离线任务"},"根据链接删除"),S[9]||(S[9]=T("   ",-1)),o.value.length?(_(),A("button",{key:1,type:"button",class:"pure-button button-mini button-warning",onClick:g,title:"导出选中任务的链接"},[S[7]||(S[7]=T("导出已选",-1)),d("span",null,"("+F(o.value.length)+")",1)])):fe("",true),d("button",{type:"button",class:"pure-button button-mini button-error",onClick:S[1]||(S[1]=E=>u(te(en).failed)),title:"导出未完成链接"},"导出未完成"),d("button",{type:"button",class:"pure-button button-mini button-success",onClick:S[2]||(S[2]=E=>u(te(en).success)),title:"导出已完成链接"},"导出已完成"),d("button",{type:"button",class:"pure-button button-mini button-warning",onClick:S[3]||(S[3]=E=>u(te(en).all)),title:"导出全部链接"},"导出全部"),S[10]||(S[10]=T("   ",-1)),se(I,{distance:5,"arrow-padding":10},{popper:ge(()=>[(_(),tt(vg,null,{default:ge(()=>[se(Aw)]),_:1}))]),default:ge(()=>[S[8]||(S[8]=d("button",{type:"button",class:"pure-button button-mini"},"设置",-1))]),_:1,__:[8]})])}}}),ZS=Pe(XS,[["__file","OflineExporter.vue"]]),eE=["cate_id","delete_id","status","hash"],tE={class:"file-name-wrap"},nE={class:"file-name"},oE={task_popup:"goto",href:"javascript:;",class:"name"},sE={rel:"name"},iE={class:"desc-tips",rel:"file_down_violations"},rE={class:"txt-red",rel:"file_down_tips"},aE=["filename"],lE={class:"file-size"},uE={class:"file-process"},cE={rel:"progress"},dE={class:"file-operate",rel:"opt"},fE=["cp_href"],pE=xe({__name:"OfflineItem",props:{item:{},space:{},profile:{}},setup(e){const t=Ke(()=>i.item.percentDone?parseInt(i.item.percentDone.toString()):0),n=Ke(()=>{const{name:r,del_path:a}=i.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}=i.item;return r?M0[r]:""}),s=Ke(()=>i.item.can_appeal===1),i=e;return (r,a)=>(_(),A("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",tE,[d("i",{class:Te(["file-type",`tp-${n.value}`])},null,2),d("div",nE,[d("em",null,[d("a",oE,[d("span",sE,F(r.item.name),1)])])]),K(d("div",iE,[d("span",rE,F(o.value),1),K(d("a",{href:"javascript:;",class:"btn-link",filename:r.item.name,rel:"violations_down_btn"},"去申诉",8,aE),[[Wt,s.value]])],512),[[Wt,o.value]])]),d("div",lE,[d("span",null,F(te(Ws)(r.item.size)),1)]),d("div",uE,[r.item.status===te(on).failed?(_(),A(Se,{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===te(on).success?(_(),A(Se,{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===te(on).ing?(_(),A(Se,{key:2},[a[4]||(a[4]=d("i",{class:"icon-file-status ifst-downing"},null,-1)),d("span",cE,F(t.value)+"%",1)],64)):r.item.status===te(on).illegal?(_(),A(Se,{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)):(_(),A(Se,{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",dE,[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,fE),a[11]||(a[11]=d("a",{href:"javascript:;",class:"btn-delete-offline"},[d("i",{class:"icon-operate ifo-remove"}),d("s",null,"删除")],-1))])],8,eE))}}),hE=Pe(pE,[["__file","OfflineItem.vue"]]),mE={class:"ce-offline-list"},gE=xe({__name:"OfflineList",props:{items:{},space:{},profile:{}},setup(e){return (t,n)=>(_(),A("div",mE,[d("ul",null,[(_(true),A(Se,null,je(t.items,(o,s)=>(_(),tt(hE,{Key:s,item:o,space:t.space,profile:t.profile},null,8,["Key","item","space","profile"]))),256))])]))}}),wE=Pe(gE,[["__file","OfflineList.vue"]]),yE={inline:"",class:"pure-form search-form",size:"small"},bE={class:"form-item",label:"关键词"},vE=["value"],xE={class:"form-item"},_E={class:"form-item",label:"状态"},CE=["value"],kE=["value"],$E={class:"form-item",label:"页数"},SE={class:"form-item"},EE={key:0,title:"根据「名称/名称正则」查找时,是否在找到一个结果时停止继续查找"},AE={key:0,class:"search-tips"},PE={class:"tips-body"},IE={key:0},DE=xe({__name:"OfflineSearcher",setup(e){let t,n;const o=W(),s=W({KeywordType:Vr.name,keyword:"",status:on.any,maxPage:5,stopOnFound:false});let i={...s.value};const r=W(null),a=W(false),l=W([]),c=W(null),u=W({content:"",subContent:"",visible:false});Ht(async()=>{t=await Iw(),n=await $w(),o.value=await eo(),s.value.KeywordType=o.value.searchKeywordType,s.value.status=o.value.searchStatus,s.value.maxPage=o.value.searchMaxPage,s.value.stopOnFound=o.value.searchStopOnFound,i={...s.value},document.body.addEventListener("click",z=>{P(z);}),f();}),He(s,lt(async z=>{console.log("[searchParams changed]",Sc(z)),w();},200),{deep:true});async function f(){window.addEventListener("message",z=>{const{event:U,body:ie}=z.data;switch(U){case ys.searchPageChanged:p(ie);break;case ys.configChanged:o.value={...ie};break}},false);}async function p(z){console.log("[handleSearchPageChanged]",z),await M({subContent:`正在搜索第 ${z} 页...`,visible:true});}async function w(){const z=await eo();let U=0;i.KeywordType!==s.value.KeywordType&&(z.searchKeywordType=s.value.KeywordType,U++),i.status!==s.value.status&&(z.searchStatus=s.value.status,U++),i.maxPage!==s.value.maxPage&&(z.searchMaxPage=s.value.maxPage,U++),i.stopOnFound!==s.value.stopOnFound&&(z.searchStopOnFound=s.value.stopOnFound,U++),U&&(await kw(z),console.log("[handleSearchParamsChange]",z),o.value={...z}),i={...s.value};}async function g(z){r.value?.select();}async function b(z){s.value.keyword="",r.value?.focus();}async function v(){l.value=[],s.value.keyword="",i={...s.value},await M({visible:false}),await I(false);try{parent.window.Core.OFFL5Plug.ChangePage(1);}catch(z){console.error(z);}}async function S(){l.value=[];let{keyword:z}=s.value;if(z=z.trim(),z===""){await ms(),r.value?.select(),Os.fire({icon:"warning",title:"关键词不能为空!"});return}a.value=true,await M({content:"正在搜索...",subContent:"",visible:true});try{const U={status:s.value.status,maxPage:s.value.maxPage,fuzzyName:!0,caseSensitive:!1,stopOnFound:s.value.stopOnFound};U[s.value.KeywordType]=s.value.keyword,U.infoHash&&(U.infoHash=Pw(U.infoHash)),console.log("[search filter]",U);const ie=await LS(n.sign,t.user_id,U,o.value);l.value=ie,console.log("[search result]",ie),ie.length>0?await M({visible:!1}):await M({content:"没有符合条件的离线任务",subContent:"",visible:!0}),await I(!0);}catch(U){console.warn("[search error]",U),Os.fire({icon:"error",title:U.toString()}),await M({content:"搜索失败!",subContent:U.toString(),visible:true});}finally{a.value=false;}}async function I(z=true){!l.value.length&&z&&Os.fire({icon:"warning",html:"没有符合条件的离线任务"}),await ms();const U=c.value?.querySelector("ul");if(!U)return;const ie=document.querySelector("ul#js-warp");ie&&(ie.innerHTML=U.innerHTML),await E(),r.value?.focus();}async function E(){const z=l.value.length,U=document.querySelector("#js-page");if(!U)return;const ie=U.querySelector(".left-bvf span");ie.textContent=`共搜索到 ${z} 个结果`;const pe=U.querySelector(".pagination .con");pe.style.display="none";}async function P(z){let U=z.target;if(U.classList.contains("ifo-remove")&&(U=U.closest("a")),!U.classList.contains("btn-delete-offline"))return;const ie=U.closest("li"),pe=await Sw(ie),ne=[pe.info_hash];let O={title:"删除离线记录",icon:"warning",html:`确定要删除「${pe.name}」吗?`,showCancelButton:true,confirmButtonText:"确定",cancelButtonText:"取消"};pe.delete_file_id&&(O={...O,input:"checkbox",inputValue:0,inputPlaceholder:"同时删除文件"});const{isConfirmed:B,value:q}=await Y.fire(O);if(!B)return;const le=!!q;Y.showLoading(),Y.update({html:"正在删除..."}),await ju(ne,n,le,t.user_id),Q({icon:"success",title:"删除成功",timer:800,position:"top-end"}),await zu(ne);}async function M(z){u.value={...u.value,...z};}return (z,U)=>(_(),A("div",{class:Te(["ce-offline-searcher",{loading:a.value}])},[d("form",yE,[d("fieldset",null,[d("div",bE,[K(d("select",{"onUpdate:modelValue":U[0]||(U[0]=ie=>s.value.KeywordType=ie),size:"small",onChange:g},[(_(true),A(Se,null,je(te(_S),(ie,pe)=>(_(),A("option",{key:pe,value:pe},F(ie),9,vE))),128))],544),[[gn,s.value.KeywordType]])]),d("div",xE,[d("div",{class:Te(["clearable-wrap",{"is-empty":s.value.keyword===""}])},[K(d("input",{ref_key:"refKeyword",ref:r,"onUpdate:modelValue":U[1]||(U[1]=ie=>s.value.keyword=ie),placeholder:"请输入关键词",clearable:"",onKeyup:Mg(S,["enter"])},null,544),[[Ve,s.value.keyword]]),d("button",{type:"button",class:"pure-button pure-button-default button-xsmall btn-clear",onClick:b},"×")],2)]),d("div",_E,[K(d("select",{"onUpdate:modelValue":U[2]||(U[2]=ie=>s.value.status=ie),placeholder:"请选择",clearable:"",style:{width:"90px"}},[d("option",{value:te(on).any},"-状态-",8,CE),(_(true),A(Se,null,je(te(xS),(ie,pe)=>(_(),A("option",{key:pe,value:pe},F(ie),9,kE))),128))],512),[[gn,s.value.status]])]),d("div",$E,[K(d("input",{type:"number","onUpdate:modelValue":U[3]||(U[3]=ie=>s.value.maxPage=ie),min:1,max:1e5,title:"最多查找页数"},null,512),[[Ve,s.value.maxPage]]),U[5]||(U[5]=d("small",null,"页",-1))]),d("div",SE,[[te(Vr).name,te(Vr).nameRegex].includes(s.value.KeywordType)?(_(),A("label",EE,[K(d("input",{type:"checkbox","onUpdate:modelValue":U[4]||(U[4]=ie=>s.value.stopOnFound=ie),class:"stop-on-found"},null,512),[[ye,s.value.stopOnFound]]),U[6]||(U[6]=T(" 找到即停 ",-1))])):fe("",true),d("button",{type:"button",class:"pure-button pure-button-primary button-small",onClick:S},"查找"),U[7]||(U[7]=T("    ",-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"},[se(wE,{items:l.value,space:te(n),profile:te(t)},null,8,["items","space","profile"])],512),u.value.visible?(_(),A("div",AE,[d("div",PE,[d("h2",null,F(u.value.content),1),u.value.subContent?(_(),A("p",IE,F(u.value.subContent),1)):fe("",true)])])):fe("",true)],2))}}),TE=Pe(DE,[["__file","OfflineSearcher.vue"]]),LE='@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(LE);async function ME(){const e=await eo(),{host:t,search:n}=location;t==="115.com"&&OS(e),!(t!=="115.com"||!n.includes("offline=1"))&&(n.includes("file_dialog_iframe")&&document.body.classList.add("ce-offline-in-dialog"),await OE(),await BE(),MS());}async function OE(){console.log("[Cloud115 Enhancer] Injecting offline exporter...");const e="cloud115OfflineExporter",t=await eo();document.body.classList.add("cloud115-page-offline"),t.enableListManagement&&document.body.classList.add("ce-list-m"),$("body").append(`<div id="${e}"/>`);const n=ao(ZS);n.component("VDropdown",Es),n.mount(`#${e}`);}async function BE(){console.log("[Cloud115 Enhancer] Injecting offline searcher...");const e="cloud115OfflineSearcher",t=await eo();document.body.classList.add("cloud115-page-offline"),t.enableSearcher&&document.body.classList.add("ce-list-s"),$("body").append(`<div id="${e}"/>`);const n=ao(TE);n.component("VDropdown",Es),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 RE={class:"cloud115-eh-cleaner-trigger"},FE=xe({__name:"Trigger",setup(e){W(false);const t=W(true);async function n(a){switch(a.data.type){case Kt.INVOKE_FILTER:await gm(a.data.payload);break;case Kt.CLEANER_OPENED:await r(a.data.payload);break}}Ht(async()=>{console.log("[CleanerTrigger onMounted]"),window.addEventListener("message",n);}),$s(()=>{console.log("[CleanerTrigger onUnmounted]"),window.removeEventListener("message",n);});async function o(){await i(),cs({type:Kt.OPEN_CLEANER},window.parent);}let s;async function i(){const a=Zi("cid");!a||a==="0"||(clearTimeout(s),s=setTimeout(async()=>{Q({icon:"error",text:"打开清理工具失败!"});},1e3));}async function r(a){console.log("成功打开Cleaner"),clearTimeout(s);}return (a,l)=>K((_(),A("span",RE,[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]])}}),NE=Pe(FE,[["__file","Trigger.vue"]]);function wd(e={}){return {initialized:false,suffixGroup:"",keywordGroup:"",showEntryOnPathBar:true,pageSize:1150,reqInterval:100,deleteSize:1150,keywordDefaultCategory:"all",keywordDefaultResult:"all",cleanWithoutConfirm:false,...e}}async function yr(){const e=wd(),t=await Xe.get(gt.cleanerConfig,e);return {...e,...t,pageSize:1150,reqInterval:100,deleteSize:1150}}async function UE(e){return await Xe.set(gt.cleanerConfig,e)}async function yd(e){const t=await yr();return await UE({...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||{}),mo=(e=>(e.all="all",e.file="file",e.dir="dir",e))(mo||{});const jE={all:"全部",file:"文件",dir:"目录"};var Uo=(e=>(e.all="all",e.matched="matched",e.notMatched="unmatched",e))(Uo||{});const zE={all:"全部",matched:"有匹配",unmatched:"无匹配"};var St=(e=>(e.none="",e.prepare="查询文件...",e.prepared="查询文件完成",e.prepareFailed="查询失败",e.deleting="删除文件中...",e.success="清理完成",e.failed="清理失败",e))(St||{});const HE=new Map([[$n.all,nn.all],[$n.video,nn.video],[$n.audio,nn.audio],[$n.image,nn.image],[$n.doc,nn.doc],[$n.app,nn.app],[$n.archive,nn.archive]]),Hu=$0(HE),VE=[["文件名关键词","广告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/备注内容"]],qE="##",bd="#",WE="=",KE="==",GE="s",JE="r",Tw="#",YE=[{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:["#视频","#音频","#图片","#文档","#应用","#压缩包"]}],QE=["#論壇文宣","#宣傳文本","最新地址","最新网址","论坛地址","永久地址","地址发布","扫码 安装","扫码 下载","免費 掃碼","澳门 赌场","皇冠 赌场","免费18禁手游","免费黄游手游","在线影城","秀场 小视频","裸秀 主播 免费看","第一会所 宣传","SIS 影视联盟",'"最 新 位 址 獲 取"','"社 區 最 新 情 報"','"聚 合 全 網 H 直 播"'],XE=["#論壇文宣","美女 裸聊","秀场 视频","澳门 赌场","皇冠 赌场","影视 联盟","2048 社区","1024 社区","会所 宣传","扫码 安装","社区 关注","免費 掃碼","找回家","防屏蔽","封殺00","秀场 小视频","裸秀 主播 免费看",'"Free Adult Movie"',"奔驰宝马","最新网址","最新免費","免费试用","美女荷官","凤凰娛樂","观看指南","女神在线","更多无水印","免费在线","国产精品","免費原版","獨家資源","成人光碟","最新AV","FDZone","发布器","QR-1024","在這等你","激情祼聊","看妹不用等","真人祼聊","zz.jpg","X8B9.COM.gif","第一会所 宣传","SIS 影视联盟","淘精網","激情咖啡","手機影城","免费手机看片","U視娛樂","加微信","我愛看片手機版","平台正式上線"],ZE=[{type:Fe.keyword,queryOnly:false,label:"默认",memo:"请谨慎使用!",size:100,values:QE},{type:Fe.keyword,queryOnly:false,label:"⚠️大杀器⚠️",memo:"请谨慎使用!",size:100,values:XE},{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 os(e={}){return {id:Date.now().toString(),type:Fe.keyword,queryOnly:false,label:"",values:"",memo:"",size:0,sort:0,createdAt:0,updatedAt:0}}function eA(e,t){if(e=e.trim(),t===Fe.keyword)return rA(e);if(t!==Fe.suffix)return null;const n=nA(e);return {type:nt.filter,value:e,maxSize:-1,forDir:false,isFilter:n,pattern:n?oA(e).toString():e,num:-1,fileIds:[],size:-1,status:St.none}}function tA(e){return [St.prepare,St.deleting].includes(e.status)}function hp(e,t){const n=[];return tA(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-${Uo.matched}`),e.num===0&&n.push(`item-${Uo.notMatched}`),n}function nA(e){return new RegExp(`^${Tw}[\\S]{2,}`).test(e)}function oA(e){const t=new RegExp(`^${Tw}`);let n=e.replace(t,"");const o=Hu.get(n);if(!o)throw new Error(`"${e}"不是有效的筛选!`);return o}async function ns(e,t){let n;typeof e=="string"?n=e.split(/[\r\n]+/):n=e;const o=new Set;for(let i=0;i<n.length;i++){const r=n[i].trim();r.length>1&&o.add(r);}const s=[];return o.forEach(i=>{const r=eA(i,t);r&&s.push(r);}),s}function sA(e){return /(^'.+'$)|(^".+"$)/.test(e)}function mp(e,t){return e===""||!t.patternRegexp?false:(t.pattern,t.patternRegexp.test(e))}function gp(e,t,n){const o=Lw(e);o.num=0,o.size=0,o.fileIds=[];const s=new Set;let i=0;n.maxSize&&(i=n.maxSize*1024*1024),e.maxSize>=0&&(i=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);i&&a&&c>i||e.type===nt.fileKeyword&&!mp(t[r].n,e)||e.type===nt.dirKeyword&&!mp(t[r].n,e)||e.type===nt.fileHash&&t[r].sha!==e.pattern.toUpperCase()||s.has(l)||(s.add(l),o.size+=c);}return o.fileIds=Array.from(s),o.num=o.fileIds.length,o}function Lw(e={}){return {type:nt.fileKeyword,value:"",pattern:"",patternRegexp:null,maxSize:-1,size:-1,fullMatch:false,caseSensitive:false,isRegexp:false,impartible:false,memo:"",...e}}function iA(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 s=0;s<o.length;s++)o[s]=o[s].trim(),o[s]!==""&&(/^\d+$/.test(o[s])&&(t.maxSize=parseInt(o[s])),o[s]===WE&&(t.fullMatch=true),o[s]===KE&&(t.fullMatch=true,t.caseSensitive=true,n=true),o[s]===GE&&(t.caseSensitive=true,n=true),o[s]===JE&&(t.isRegexp=true));return t.isRegexp&&(t.caseSensitive=n?t.caseSensitive:false,t.fullMatch=false),t}function rA(e){const t=Lw();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 s=iA(o[3]);s&&(t.caseSensitive=s.caseSensitive,t.fullMatch=s.fullMatch,t.maxSize=s.maxSize,t.isRegexp=s.isRegexp);}if(t.value=e,t.pattern=o[2].trim(),o[1]===qE)return t.type=nt.filter,null;o[1]===bd?t.type=nt.dirKeyword:t.type=nt.fileKeyword,o[4]&&(t.memo=o[4].substring(1).trim());}return t.impartible=sA(t.pattern),t.impartible&&(t.pattern=t.pattern.replace(/^['"]|['"]$/g,"")),t.type===nt.dirKeyword&&(t.maxSize=-1),t.patternRegexp=aA(t),t}function aA(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 lA(e){const{type:t,pattern:n,isRegexp:o}=e;return t===nt.filter?Hu.has(n)?{type:Hu.get(n)}:/^\d$/.test(n)?{type:parseInt(n)}:{suffix:n}:o?{search_value:n.replace(/^\^/,"").replace(/\$$/,"")}:{search_value:n}}function gi(e,t,n){if(n){const o=ic(e,{});ru(e,{...o,...t});}else ru(e,t);}function uA(e={}){return Ec({okStatus:[200],useFileReader:false,fileReader:{encoding:"utf-8",checkBlank:true}},e)}async function Mw(e,t={}){return new Promise((n,o)=>{const s=t.useFileReader?"blob":"text";Da({method:"GET",url:e,responseType:s,nocache:!t.cache,onload:async i=>{if(t.okStatus&&!t.okStatus.includes(i.status)&&o(new Error(`请求失败!status=${i.status},statusText=${i.statusText}`)),t.useFileReader){let r=i.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(i.response);},onerror:i=>{console.error("[load] onerror",i),o(`请求失败!status=${i?.status},statusText=${i?.statusText}`);}});})}async function cA(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=ds();}const Ow=function(){return document.ontouchstart!==null?"click":"touchstart"},Ca="__vue_click_away__",Bw=function(e,t,n){Rw(e);let o=n.context,s=t.value,i=false;setTimeout(function(){i=true;},0),e[Ca]=function(r){if((!e||!e.contains(r.target))&&s&&i&&typeof s=="function")return s.call(o,r)},document.addEventListener(Ow(),e[Ca],false);},Rw=function(e){document.removeEventListener(Ow(),e[Ca],false),delete e[Ca];},dA=function(e,t,n){t.value!==t.oldValue&&Bw(e,t,n);},fA={mounted:Bw,updated:dA,unmounted:Rw},pA=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=W(false),s=W(false),i=l=>{const c=document.querySelector("body");c.style.overflow=l?"hidden":"";},r=l=>{l.target.classList.contains("ce-drawer__overlay")&&(s.value||a("close"));},a=t;return Ht(()=>{o.value=n.isOpen;}),He(()=>n.isOpen,l=>{s.value=true,l?(i(true),o.value=true):(i(false),setTimeout(()=>o.value=false,n.speed)),setTimeout(()=>s.value=false,n.speed);}),(l,c)=>(_(),A("div",null,[d("div",{class:Te(["ce-drawer",{"is-open":l.isOpen,"is-visible":o.value}])},[d("div",{class:"ce-drawer__overlay",style:Qn({transitionDuration:`${l.speed}ms`})},null,4),K((_(),A("div",{class:"ce-drawer__content",style:Qn({maxWidth:l.maxWidth,transitionDuration:`${l.speed}ms`,backgroundColor:l.bgColor})},[Ge(l.$slots,"default")],4)),[[te(fA),r]])],2)]))}}),Ji=Pe(pA,[["__file","Drawer.vue"]]),hA={class:"k-p-e"},mA={class:"ce-tag-plain"},gA={class:"text-primary"},wA={class:"text-success"},yA={key:0,class:"ce-hr"},bA=xe({__name:"KeywordPatternExamples",setup(e){return (t,n)=>(_(),A("div",hA,[n[2]||(n[2]=d("h4",{style:{"margin-bottom":"6px"}},"关键词说明(前4种类型已满足大部分需求场景)",-1)),(_(true),A(Se,null,je(te(VE),(o,s)=>(_(),A("div",{key:s},[d("div",null,[d("span",mA,F(o[0]),1),n[0]||(n[0]=T("  ",-1)),d("span",gA,F(o[1]),1),n[1]||(n[1]=T("  ",-1)),d("span",wA,F(o[2]),1)]),s===3?(_(),A("hr",yA)):fe("",true)]))),128))]))}}),Fw=Pe(bA,[["__file","KeywordPatternExamples.vue"]]),vA={class:"group-manager"},xA={key:0,class:"label-readonly",title:"当前分组只可用于查询"},_A={key:1,class:"label-readonly",title:"当前分组特征为远程文本"},CA=["title"],kA={class:"groups-list"},$A={key:0,class:"text-danger"},SA={class:"pure-table pure-table-bordered"},EA={align:"center"},AA=["onClick"],PA={class:"group-confirm-delete"},IA=["onClick"],DA=["onClick"],TA={class:"pure-form pure-form-stacked group-form"},LA={class:"pure-control-group"},MA={class:"pure-control-group"},OA={key:0,class:"pure-control-group"},BA={class:"pure-form-message"},RA={class:"pure-control-group"},FA={class:"pure-form-message"},NA={key:0,class:"text-info"},UA={key:1,class:"text-info"},jA=["onClick"],zA={class:"values"},HA={class:"v-input"},VA={class:"v-help"},qA={class:"pure-control-group"},WA={class:"pure-control-group"},KA=xe({__name:"GroupManager",props:{type:{},storageKey:{},config:{}},emits:["change"],setup(e,{emit:t}){const n=e,o=t,s=W(false),i=W(os({type:n.type})),r=W([]),a=W(false),l=W(os({type:n.type})),c=W(false),u=W(null),f=[nn.video,nn.audio,nn.image,nn.doc,nn.app,nn.archive];He(r,async ne=>{console.log("[groups change]",ne),gi(n.storageKey,ne,false),ne.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:ne,keywordGroup:O}=n.config;if(r.value.length){const B=r.value.find(q=>q.id===(n.type===Fe.suffix?ne:O));console.log("[group last choosen]",B),i.value=B||r.value[0],o("change",i.value);}else n.type===Fe.suffix&&!ne&&(await P(),gi(gt.cleanerConfig,{suffixGroup:i.value.id},true)),n.type===Fe.keyword&&!O&&(await P(),gi(gt.cleanerConfig,{keywordGroup:i.value.id},true));}}),$s(async()=>{});async function w(ne){const O=`#${ne}`;l.value.values.includes(O)||(l.value.values+=(`
`+O).trim()+`
`);}async function g(){s.value=false;}async function b(){c.value=false;}async function v(){c.value=true,a.value=false;}async function S(){u.value.show();}async function I(){u.value.hide();}async function E(){l.value.createdAt&&(l.value=os({type:n.type})),l.value.size=5,n.type===Fe.keyword&&(l.value.size=100),s.value=true;}async function P(){let ne=[];n.type===Fe.suffix?ne=YE:ne=ZE;for(let O=0;O<ne.length;O++){const B={...os({type:ne[O].type}),...ne[O]};l.value=B,l.value.type=B.type,l.value.queryOnly=B.queryOnly,l.value.size=B.size,l.value.label=B.label,l.value.memo=B.memo,l.value.createdAt=0,l.value.updatedAt=0,Array.isArray(B.values)?l.value.values=B.values.join(`
`):l.value.values=B.values,await U(),await I();}r.value.length&&await ie(r.value[0]);}async function M(ne,O=false){if(!O){const{isConfirmed:q}=await Y.fire({html:`确定删除"${i.value.label}"?`,icon:"question"});if(!q)return}let B=-1;for(let q=0;q<r.value.length;q++)if(r.value[q].id===i.value.id){B=q;break}r.value.splice(B,1),r.value.length?i.value=r.value[0]:i.value=os({type:n.type}),o("change",i.value),await Q({icon:"success",title:"删除成功!",timer:1500});}async function z(ne){l.value=ne,s.value=true;}async function U(){let ne=[];try{ne=await ns(l.value.values,l.value.type);}catch(ve){await Y.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 Q({icon:"warning",text:"请输入标题!"});return}let O=-1;for(let ve=0;ve<r.value.length;ve++)if(r.value[ve].id===l.value.id&&l.value.id){O=ve;break}const B=ds();l.value.updatedAt=B,l.value.createdAt||(l.value.createdAt=B);let q=[];for(let ve=0;ve<ne.length;ve++)q.push(ne[ve].value);l.value.values=q.join(`
`).trim(),console.log("[saveGroup]",l.value,O),O===-1?(r.value.push(l.value),Q({icon:"success",text:"添加成功"})):(r.value[O]=l.value,Q({icon:"success",text:"更新成功"}));const le=!i.value.createdAt;le&&(i.value=l.value),(l.value.id===i.value.id||le)&&o("change",l.value),await g();}async function ie(ne){i.value=ne;const{id:O}=i.value;n.type===Fe.suffix&&(n.config.suffixGroup=O,gi(gt.cleanerConfig,{suffixGroup:O},true)),n.type===Fe.keyword&&(n.config.keywordGroup=O,gi(gt.cleanerConfig,{keywordGroup:O},true)),o("change",ne);}async function pe(ne,O=false){try{await cA(ne);}catch(B){console.error(B),Q({icon:"error",text:B.message});return}O?(l.value=ne,await U()):Q({icon:"success",text:"读取成功"});}return (ne,O)=>{const B=_o("VDropdown");return _(),A("div",vA,[i.value.queryOnly?(_(),A("span",xA," 🔍 只查询 ")):fe("",true),i.value.url?(_(),A("span",_A," 🔗 远程 ")):fe("",true),i.value.createdAt?(_(),A("span",{key:2,class:"group-label",title:`当前使用的分组: ${i.value.label}`},[d("span",null,[O[11]||(O[11]=d("small",null,"分组:",-1)),T(" "+F(i.value.label),1)])],8,CA)):fe("",true),i.value.url?(_(),A("a",{key:3,href:"javascript:void(0)",class:"pure-button button-success",onClick:O[0]||(O[0]=q=>pe(i.value,true))}," ↓ 同步关键词")):fe("",true),d("a",{href:"javascript:void(0)",class:"pure-button",onClick:O[1]||(O[1]=q=>z(i.value))}," ✎ 编辑 "),O[36]||(O[36]=T("    ",-1)),d("a",{href:"javascript:void(0)",class:"pure-button button-small",onClick:E},"+ 新增分组"),se(B,{ref_key:"list",ref:u,onHide:b,onShow:v,distance:5},{popper:ge(()=>[d("div",kA,[r.value.length?fe("",!0):(_(),A("h3",$A,[O[12]||(O[12]=T(" 还没有添加任何分组。你可以: ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:E},"添加"),O[13]||(O[13]=T("   ",-1)),O[14]||(O[14]=d("span",{class:"text-info"},"或",-1)),O[15]||(O[15]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:P},"使用脚本内置"),O[16]||(O[16]=d("br",null,null,-1)),O[17]||(O[17]=d("br",null,null,-1))])),d("table",SA,[O[21]||(O[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"},[T("大小"),d("small",null,"MB")]),d("th",{width:"220"},"操作")])],-1)),d("tbody",null,[(_(!0),A(Se,null,je(r.value,(q,le)=>(_(),A("tr",{key:le},[d("td",null,F(le+1),1),d("td",EA,F(q.queryOnly?"是":"否"),1),d("td",null,F(q.label),1),d("td",null,F(q.memo),1),d("td",null,F(q.size),1),d("td",null,[d("button",{type:"button",class:"pure-button button-xsmall text-primary",onClick:ve=>ie(q)},"载入",8,AA),O[19]||(O[19]=T("   ",-1)),se(B,null,{popper:ge(()=>[d("div",PA,[d("button",{type:"button",class:"pure-button button-error",onClick:ve=>M(q,!0)},"确定",8,IA)])]),default:ge(()=>[O[18]||(O[18]=d("button",{type:"button",class:"pure-button button-xsmall text-danger"},"删除",-1))]),_:2,__:[18]},1024),O[20]||(O[20]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:ve=>z(q)},"编辑",8,DA)])]))),128))])])])]),default:ge(()=>[d("a",{href:"javascript:void(0)",class:"pure-button button-small",onClick:S},"≡ 分组列表")]),_:1},512),se(Ji,{"is-open":s.value,onClose:O[10]||(O[10]=q=>s.value=false),"max-width":"1030px",speed:100,"bg-color":"#fff"},{default:ge(()=>[d("form",TA,[d("fieldset",null,[d("div",LA,[O[22]||(O[22]=d("label",{for:"groupLabel",class:"text-primary"},"* 标题",-1)),K(d("input",{type:"text","onUpdate:modelValue":O[2]||(O[2]=q=>l.value.label=q),id:"groupLabel",class:"pure-input-1-2",placeholder:"分组标题"},null,512),[[Ve,l.value.label]]),O[23]||(O[23]=T("    ",-1)),l.value.queryOnly?(_(),A("button",{key:0,type:"button",class:"pure-button button-small button-warning",onClick:O[3]||(O[3]=q=>l.value.queryOnly=!1)},"已设置为仅用于查询 | 点击取消设置")):fe("",!0),l.value.queryOnly?fe("",!0):(_(),A("button",{key:1,type:"button",class:"pure-button button-small pure-button-primary",onClick:O[4]||(O[4]=q=>l.value.queryOnly=!0)},"设置为仅用于查询"))]),d("div",MA,[O[24]||(O[24]=d("label",{for:"groupMemo",class:"text-primary"},"备注",-1)),K(d("input",{type:"text","onUpdate:modelValue":O[5]||(O[5]=q=>l.value.memo=q),id:"groupMemo",placeholder:"分组备注"},null,512),[[Ve,l.value.memo]])]),n.type===te(Fe).keyword?(_(),A("div",OA,[O[27]||(O[27]=d("label",{for:"groupUrl",class:"text-primary"},"远程链接",-1)),d("div",BA,[O[25]||(O[25]=d("span",null,"纯文本, utf-8编码",-1)),O[26]||(O[26]=T("    ",-1)),l.value.url?(_(),A("button",{key:0,type:"button",class:"pure-button button-small button-success",onClick:O[6]||(O[6]=q=>pe(l.value,!1))}," 读取 ")):fe("",!0)]),K(d("input",{type:"text","onUpdate:modelValue":O[7]||(O[7]=q=>l.value.url=q),id:"groupUrl",placeholder:"远程链接"},null,512),[[Ve,l.value.url]])])):fe("",!0),d("div",RA,[O[32]||(O[32]=d("label",{for:"groupValues",class:"text-primary"},"* 特征列表",-1)),d("div",FA,[n.type===te(Fe).keyword?(_(),A("span",NA,[O[28]||(O[28]=T(" 默认只匹配文件名。前面带",-1)),d("b",null,F(te(bd)),1),O[29]||(O[29]=T("则只匹配目录名。 ",-1))])):fe("",!0),n.type===te(Fe).suffix?(_(),A("span",UA,[O[30]||(O[30]=T(" 支持115自带筛选: ",-1)),(_(),A(Se,null,je(f,(q,le)=>d("span",{class:"filter-label text-success",key:le,onClick:ve=>w(q)}," #"+F(q),9,jA)),64)),O[31]||(O[31]=d("small",{class:"text-primary"},"(点击添加)",-1))])):fe("",!0)]),d("div",zA,[d("div",HA,[K(d("textarea",{id:"groupValues","onUpdate:modelValue":O[8]||(O[8]=q=>l.value.values=q),rows:"14",placeholder:"每行一个"},null,512),[[Ve,l.value.values]])]),d("div",VA,[se(Fw)])])]),d("div",qA,[O[33]||(O[33]=d("label",{for:"groupMemo",class:"text-primary"},"* 文件大小",-1)),O[34]||(O[34]=d("div",{class:"pure-form-message"},[T("只清理小于该大小的文件,单位"),d("b",null,"MB")],-1)),K(d("input",{type:"number","onUpdate:modelValue":O[9]||(O[9]=q=>l.value.size=q),class:"pure-input-1-4",placeholder:"文件大小小于该数值才清理"},null,512),[[Ve,l.value.size]])]),d("div",WA,[d("button",{type:"button",class:"pure-button pure-button-primary",onClick:U},F(l.value.createdAt?"更新":"添加"),1),O[35]||(O[35]=T("      ",-1)),d("button",{type:"button",class:"pure-button",onClick:g},"取消")])])])]),_:1},8,["is-open"])])}}}),wp=Pe(KA,[["__file","GroupManager.vue"]]),GA={class:"cloud115-eh-cleaner-help"},JA=xe({__name:"Help",setup(e){return (t,n)=>(_(),A("div",GA,[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"},[T("目录名关键词使用"),d("b",null,"搜索"),T("接口查找匹配,只能逐个关键词进行处理,请尽量使用简单的关键词,否则可能会匹配不到。")],-1)),n[1]||(n[1]=d("p",{class:"text-danger"},[T("文件名关键词使用"),d("b",null,"列表"),T("接口查找匹配,速度较快,且支持更灵活的关键词。")],-1)),n[2]||(n[2]=d("br",null,null,-1)),se(Fw)])])]))}}),YA=Pe(JA,[["__file","Help.vue"]]),QA={key:0},XA={key:1},ZA={key:2},eP={key:3},tP={key:4},nP={key:5},oP={key:6},sP={key:7},iP={key:8},rP={key:9},aP=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"),s=t,i=E=>{E!==o.value&&(E>l.value||E<1||n.disablePagination||(s("update:modelValue",E),s("click",E)));},r=E=>E,a=E=>n.type!=="link"?"":n.linkUrl.replace("[page]",E.toString()),l=Ke(()=>Math.ceil(n.totalItems/n.itemsPerPage)),c=Ke(()=>{let E,P;if(l.value<=n.maxPagesShown)E=1,P=l.value;else {let z=Math.floor(n.maxPagesShown/2),U=Math.ceil(n.maxPagesShown/2)-1;o.value<=z?(E=1,P=n.maxPagesShown):o.value+U>=l.value?(E=l.value-n.maxPagesShown+1,P=l.value):(E=o.value-z,P=o.value+U);}let M=Array.from(Array(P+1-E).keys()).map(z=>E+z);return n.dir==="rtl"&&(M=M.reverse()),{totalItems:n.totalItems,currentPage:o.value,itemsPerPage:n.itemsPerPage,totalPages:l,startPage:E,endPage:P,pages:M}}),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),g=Ke(()=>u.value?c.value.pages[c.value.pages.length-1]>=3:c.value.pages[c.value.pages.length-1]<l.value-1),b=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),S=Ke(()=>o.value!==1),I=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 (E,P)=>(_(),A("ul",{id:"componentContainer",class:Te(e.paginationContainerClass)},[e.showEndingButtons&&S.value?(_(),A("li",QA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?l.value:1),onClick:P[0]||(P[0]=kn(M=>i(u.value?l.value:1),["prevent"])),class:Te([e.firstPageButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"first-page-button",{},()=>[T(F(e.firstPageContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showJumpButtons&&w.value?(_(),A("li",XA,[(_(),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:P[1]||(P[1]=kn(M=>i(u.value?o.value+Math.ceil(e.maxPagesShown/2):o.value-Math.ceil(e.maxPagesShown/2)),["prevent"])),class:Te([e.backwardJumpButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledBackwardJumpButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"backward-jump-button",{},()=>[T(F(e.backwardJumpButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),!e.hidePrevNext&&f.value?(_(),A("li",ZA,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value+1:o.value-1),onClick:P[2]||(P[2]=kn(M=>i(u.value?o.value+1:o.value-1),["prevent"])),class:Te([e.backButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledBackButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"prev-button",{},()=>[T(F(e.prevButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showBreakpointButtons&&b.value?(_(),A("li",eP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?l.value:1),onClick:P[3]||(P[3]=kn(M=>i(u.value?l.value:1),["prevent"])),class:Te([e.firstButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledFirstButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[T(F(u.value?r(l.value):r(1)),1)]),_:1},8,["href","class","disabled"]))])):fe("",true),e.showBreakpointButtons&&w.value?(_(),A("li",tP,[(_(),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:P[4]||(P[4]=kn(M=>i(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:Te([e.startingBreakpointButtonClass,e.paginateButtonsClass,e.disableBreakpointButtons||e.disablePagination?`${e.disabledPaginateButtonsClass} ${e.disabledBreakPointButtonClass}`:""])},{default:ge(()=>[Ge(E.$slots,"starting-breakpoint-button",{},()=>[T(F(e.startingBreakpointContent),1)])]),_:3},8,["href","disabled","class"]))])):fe("",true),(_(true),A(Se,null,je(c.value.pages,(M,z)=>(_(),A("li",{key:z},[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(M),onClick:kn(()=>i(M),["prevent"]),class:Te([e.paginateButtonsClass,e.numberButtonsClass,M===o.value?e.activePageClass:"",e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[T(F(r(M)),1)]),_:2},1032,["href","onClick","class","disabled"]))]))),128)),e.showBreakpointButtons&&g.value?(_(),A("li",nP,[(_(),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:P[5]||(P[5]=kn(M=>i(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:Te([e.endingBreakPointButtonClass,e.paginateButtonsClass,e.disableBreakpointButtons||e.disablePagination?`${e.disabledPaginateButtonsClass} ${e.disabledBreakPointButtonClass}`:""])},{default:ge(()=>[Ge(E.$slots,"ending-breakpoint-button",{},()=>[T(F(e.endingBreakpointButtonContent),1)])]),_:3},8,["href","disabled","class"]))])):fe("",true),e.showBreakpointButtons&&v.value?(_(),A("li",oP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?1:l.value),onClick:P[6]||(P[6]=kn(M=>i(u.value?1:l.value),["prevent"])),class:Te([e.lastButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledLastButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[T(F(u.value?r(1):r(l.value)),1)]),_:1},8,["href","class","disabled"]))])):fe("",true),!e.hidePrevNext&&p.value?(_(),A("li",sP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?o.value-1:o.value+1),onClick:P[7]||(P[7]=kn(M=>i(u.value?o.value-1:o.value+1),["prevent"])),class:Te([e.paginateButtonsClass,e.nextButtonClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledNextButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"next-button",{},()=>[T(F(e.nextButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showJumpButtons&&g.value?(_(),A("li",iP,[(_(),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:P[8]||(P[8]=kn(M=>i(u.value?o.value-Math.ceil(e.maxPagesShown/2):o.value+Math.ceil(e.maxPagesShown/2)),["prevent"])),class:Te([e.forwardJumpButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:"",e.disablePagination?e.disabledForwardJumpButtonClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"forward-jump-button",{},()=>[T(F(e.forwardJumpButtonContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true),e.showEndingButtons&&I.value?(_(),A("li",rP,[(_(),tt(Dn(e.type==="button"?"button":"a"),{href:a(u.value?1:l.value),onClick:P[9]||(P[9]=kn(M=>i(u.value?1:l.value),["prevent"])),class:Te([e.lastPageButtonClass,e.paginateButtonsClass,e.disablePagination?e.disabledPaginateButtonsClass:""]),disabled:e.disablePagination},{default:ge(()=>[Ge(E.$slots,"last-page-button",{},()=>[T(F(e.lastPageContent),1)])]),_:3},8,["href","class","disabled"]))])):fe("",true)],2))}}),yp=Pe(aP,[["__file","Pager.vue"]]),lP=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,s=`${t.paddingY}px`;return {marginTop:s,height:s,borderTop:`1px solid ${o}`}});return (o,s)=>(_(),A("div",{class:"ce-divider",style:Qn(n.value)},[Ge(o.$slots,"default")],4))}}),bp=Pe(lP,[["__file","Divider.vue"]]),uP={class:"ce-file-list"},cP={class:"text-small text-info"},dP={class:"text-primary"},fP={class:"text-danger"},pP={class:"item-meta"},hP={key:0,class:"ce-label"},mP={key:1,class:"ce-label"},gP={key:2,class:"ce-label"},wP={key:3,class:"ce-label"},yP={key:4,class:"ce-label"},bP={key:5,class:"ce-label ce-label-danger"},vP={key:6,class:"ce-label ce-label-danger"},xP={key:7,class:"text-info"},_P={class:"text-success"},CP={class:"pure-table pure-table-bordered"},kP={class:"text-small"},$P={class:"text-success"},SP=xe({__name:"FileList",props:{group:{},pattern:{},files:{}},setup(e){const t=e,n=W([]),o=W(0),s=W(15),i=W(5),r=W(1);$t(async()=>{o.value=t.pattern.fileIds?.length||0,a();});function a(c=1){const u=[],{fileIds:f=[]}=t.pattern,p=s.value*(c-1),w=f.slice(p,p+s.value);for(const g of w){const b=t.files.get(g);if(b){const v=_s(b);u.push(v);}}n.value=u;}function l(c){a(c);}return (c,u)=>(_(),A("div",uP,[d("div",null,[d("div",cP,[u[2]||(u[2]=d("small",null,"原始:",-1)),u[3]||(u[3]=T()),d("span",dP,F(c.pattern.value),1),u[4]||(u[4]=T(", ",-1)),u[5]||(u[5]=d("small",null,"类型:",-1)),u[6]||(u[6]=T()),d("span",fP,F(te(Dw)[c.pattern.type]),1),d("div",null," fullMatch: "+F(c.pattern.fullMatch)+", caseSensitive: "+F(c.pattern.caseSensitive)+", impartible: "+F(c.pattern.impartible)+", isRegexp: "+F(c.pattern.isRegexp)+", maxSize: "+F(c.pattern.maxSize)+", patternRegexp: "+F(c.pattern.patternRegexp),1)]),u[8]||(u[8]=d("hr",null,null,-1)),d("div",pP,[c.pattern.fullMatch?(_(),A("span",hP,"全等")):fe("",true),c.pattern.caseSensitive?(_(),A("span",mP,"区分大小写")):fe("",true),c.pattern.impartible?(_(),A("span",gP,"匹配空格")):fe("",true),c.pattern.isRegexp?(_(),A("span",wP,"正则")):fe("",true),c.pattern.type===te(nt).fileHash?(_(),A("span",yP,"sha1")):fe("",true),c.pattern.maxSize===0?(_(),A("span",bP,"任意大小")):fe("",true),c.pattern.maxSize>0?(_(),A("span",vP,"不大于"+F(c.pattern.maxSize)+"MB",1)):fe("",true),c.pattern.memo?(_(),A("div",xP,[u[7]||(u[7]=d("small",null,"备注:",-1)),T(" "+F(c.pattern.memo),1)])):fe("",true)])]),u[10]||(u[10]=d("br",null,null,-1)),d("div",null,[o.value>s.value?(_(),tt(yp,{key:0,"total-items":o.value,"items-per-page":s.value,"max-pages-shown":i.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",_P,"数量: "+F(o.value),1),se(bp,{transparent:"","padding-y":5}),d("table",CP,[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),A(Se,null,je(n.value,(f,p)=>(_(),A("tr",{key:p},[d("td",null,F(s.value*(r.value-1)+p+1),1),d("td",null,F(f.isDir?"目录":"文件"),1),d("td",null,F(f.id),1),d("td",null,F(f.name),1),d("td",null,F(f.sizeDesc),1),d("td",kP,F(f.hash),1)]))),128))])]),se(bp,{transparent:"","padding-y":5}),o.value>s.value?(_(),tt(yp,{key:1,"total-items":o.value,"items-per-page":s.value,"max-pages-shown":i.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",$P,"数量: "+F(o.value),1)])]))}}),EP=Pe(SP,[["__scopeId","data-v-a2b2b54c"],["__file","FileList.vue"]]);function AP(e,t){return Object.entries(e).map(([n,o])=>({label:o,value:n,checked:t?t(n):false}))}const PP={class:"ce-button-group"},IP=["onClick"],DP=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,s=Ke(()=>{let a=[];const l=c=>n.multiple?n.modelValue.includes(c):n.modelValue===c;return n.mapping?a=AP(n.mapping,l):n.options&&(a=Sc(n.options).map(c=>({...c,checked:l(c.value)}))),a}),i=W(n.modelValue);function r(a){n.multiple?(a.checked=!a.checked,i.value=s.value.filter(l=>l.checked).map(l=>l.value)):(s.value.forEach(l=>{l.checked=l.value===a.value;}),i.value=a.value),o("update:modelValue",i.value);}return (a,l)=>(_(),A("span",PP,[(_(true),A(Se,null,je(s.value,c=>(_(),A("button",{key:c.value?.toString(),type:"button",class:Te(["pure-button",{"pure-button-primary":c.checked}]),onClick:u=>r(c)},F(c.label),11,IP))),128))]))}}),ka=Pe(DP,[["__file","index.vue"]]),TP={class:"ce-config ce-cleaner-config"},LP={class:"pure-form pure-form-aligned"},MP={class:"pure-control-group"},OP={class:"pure-control-group"},BP={class:"pure-control-group"},RP={class:"pure-control-group"},FP=xe({__name:"Config",setup(e){const t={[mo.all]:"全部",[mo.file]:"文件",[mo.dir]:"目录"},n={[Uo.all]:"全部",[Uo.matched]:"有匹配",[Uo.notMatched]:"无匹配"},o=W(wd());let s=false;return $t(async()=>{o.value=await yr(),s=true,He(o,lt(async i=>{s&&(await yd({showEntryOnPathBar:i.showEntryOnPathBar,keywordDefaultCategory:i.keywordDefaultCategory,keywordDefaultResult:i.keywordDefaultResult,cleanWithoutConfirm:i.cleanWithoutConfirm}),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}));},500),{deep:true});}),(i,r)=>(_(),A("div",TP,[r[11]||(r[11]=d("h2",null,"文件清理工具设置",-1)),d("form",LP,[d("fieldset",null,[r[5]||(r[5]=d("legend",null,"基础设置",-1)),d("div",MP,[r[4]||(r[4]=d("label",{for:"showEntryOnPathBar"},'在路径栏显示"清理文件"入口按钮',-1)),K(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",OP,[r[6]||(r[6]=d("label",{for:"defaultKeywordCategory"},'默认"关键词类别"',-1)),se(ka,{modelValue:o.value.keywordDefaultCategory,"onUpdate:modelValue":r[1]||(r[1]=a=>o.value.keywordDefaultCategory=a),mapping:t},null,8,["modelValue"])]),d("div",BP,[r[7]||(r[7]=d("label",{for:"defaultResultFilter"},'默认"结果筛选"',-1)),se(ka,{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",RP,[r[9]||(r[9]=d("label",{for:"cleanWithoutConfirm"},'点击"一键清理"时不需确认',-1)),K(d("input",{id:"cleanWithoutConfirm",type:"checkbox","onUpdate:modelValue":r[3]||(r[3]=a=>o.value.cleanWithoutConfirm=a)},null,512),[[ye,o.value.cleanWithoutConfirm]])])])])]))}}),NP=Pe(FP,[["__file","Config.vue"]]),UP=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,s)=>Ge(o.$slots,"default",{},()=>[d("button",{type:"button",class:"pure-button button-small",onClick:n},F(o.label),1)])}}),Nw=Pe(UP,[["__file","GoTop.vue"]]),jP=".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(jP);const zP='@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(zP);const HP={type:"button",class:"pure-button button-success"},VP=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 s(){unsafeWindow.parent.Core.FileSelectDG.Open(async(i,r)=>{console.log("[Core.FileSelectDG.Open]",i,r),o("select",{items:i,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 (i,r)=>(_(),A("span",{onClick:s},[Ge(i.$slots,"default",{},()=>[d("button",HP,F(i.label),1)])]))}}),Yi=Pe(VP,[["__file","DirSelector.vue"]]);function qP(e){return {offset:0,limit:1150,aid:1,cid:"",format:"json",o:Va.userPtime,asc:Bo.false,search_value:"",...e}}async function WP(e){const t=za(e),n=await Ot().get("https://webapi.115.com/files/search?"+t,{timeout:12e4,withCredentials:true});if(n.data==="")throw new lm;const o=n.data;if(o.state)return o;throw new Pc(o.error)}async function KP(e,t=200,n=false){let o=[],s=0,i=e.limit;const r=1e4,a=115,l=r-r%i;let c=i;for(;;){if(n){if(s>=l&&s<r){const f=r-l;c=Math.min(f,c);}s>=r&&(c=a);}e.offset=s,e.limit=c;const u=await WP(e);if(!u.data||!u.data.length||(o=[...o,...u.data],s+=c,s>=u.count))break;await Mt(t);}return o}const GP={class:"cloud115-eh-cleaner ce-cleaner-x"},JP={class:"header actions-bar"},YP={class:"close"},QP={class:"ce-path ce-label ce-label-primary-plain"},XP=["href"],ZP={class:"by-box by-suffix"},eI={class:"by-header"},tI={class:"pure-button-group",role:"group"},nI=["disabled"],oI={class:"pure-table pure-table-bordered"},sI=["onClick"],iI=["onClick"],rI=["onClick"],aI=["onClick"],lI={class:"by-header"},uI={class:"pure-button-group",role:"group"},cI=["disabled"],dI={class:"item-index"},fI={class:"item-val"},pI=["href"],hI={class:"file-type tp-folder"},mI={class:"item-meta"},gI={key:0,class:"ce-label"},wI={key:1,class:"ce-label"},yI={key:2,class:"ce-label"},bI={key:3,class:"ce-label"},vI={key:4,class:"ce-label"},xI={key:5,class:"ce-label ce-label-danger"},_I={key:6,class:"ce-label ce-label-danger"},CI={key:7,class:"text-info"},kI={key:0,class:"text-small text-info"},$I={class:"text-primary"},SI={class:"text-danger"},EI={class:"item-num"},AI={class:"item-size"},PI={class:"item-actions"},II=["onClick"],DI=["onClick"],TI=["onClick"],LI={class:"item-status"},MI={class:"footer actions-bar"},OI={class:"ce-path ce-label ce-label-primary-plain"},BI=["href"],RI=xe({__name:"Cleaner",setup(e){const t=W(false),n=W(true),o=W(os({type:Fe.suffix})),s=W(os({type:Fe.keyword})),i=W({maxSize:5,matchName:false}),r=W({maxSize:100,matchName:true,keywordCategory:mo.all,resultCategory:Uo.all}),a=W([]),l=W([]),c=W(false),u=W(wd()),f=W(false),p=W(""),w=W([]),g=W(null),b=W(false),v=Ke(()=>p.value?Bn(p.value):"");async function S(){b.value=!b.value;}const I=W(false),E=new Map,P=W({});async function M(ee){for(const m of ee){const x=m.fid||m.cid;x&&!E.has(x)&&E.set(x,m);}}async function z(ee,m){P.value.files=E,P.value.group=ee,P.value.pattern=m,I.value=true;}async function U(ee){ee.data.type===Kt.OPEN_CLEANER&&(pe(ee.data.payload),cs({type:Kt.CLEANER_OPENED},ee.source));}$t(async()=>{u.value=await yr(),f.value=true,await ie();}),Ht(async()=>{u.value.initialized||(u.value.initialized=true,await yd({initialized:true})),window.addEventListener("message",U);}),$s(()=>{window.removeEventListener("message",U);});async function ie(){const{keywordDefaultCategory:ee,keywordDefaultResult:m}=u.value;r.value.keywordCategory=ee||mo.all,r.value.resultCategory=m||Uo.all;}async function pe(ee){t.value=true;const m=await jt();if(m==="0"||m===""){await ne(),await Y.fire({icon:"warning",html:"<h2>不允许在根目录使用该工具!</h2>"});return}p.value&&p.value!==m&&console.warn("目录变化,重置"),g.value=await Nt(m),w.value=[...g.value.paths.slice(1).map(x=>x.file_name),g.value.file_name],p.value=m;}async function ne(){t.value=false;}async function O(ee){console.log("[onSelectDir]",ee);const{items:m}=ee,x=m[m.length-1];await le(It.reset),await ve(It.reset),p.value=x.cid,g.value=await Nt(x.cid),w.value=[...g.value.paths.slice(1).map(k=>k.file_name),g.value.file_name];}async function B(ee){const m={};ee.isFilter?m.type=ee.pattern:m.suffix=ee.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}cs({type:Kt.INVOKE_FILTER,payload:m},x),await ne(),Q({icon:"info",text:`已调用115筛选: ${ee.value}`,timer:2500});}async function q(ee,m){const{value:x}=await Y.fire({input:"textarea",title:ee,html:"每行一个,最短两个字符。"+(m===Fe.keyword?`<br>默认只匹配文件名,不匹配目录名。<br>使用 "<b>${bd}目录名关键词</b>" 格式指定只匹配目录名的关键词。`:""),width:620,inputPlaceholder:"每行一个,最短两个字符",inputAttributes:{"aria-label":"每行一个,最短两个字符"},showCancelButton:true});return x!==void 0?x.trim():""}async function le(ee,m){let x="",k=[];switch(ee){case It.assign:x=m.trim(),x.trim()===""?a.value=[]:(k=await ns(x,Fe.suffix),a.value=k);break;case It.append:x=await q("添加后缀",Fe.suffix),k=await ns(x,Fe.suffix);const Z=[];a.value.forEach(j=>Z.push(j.value.toLowerCase())),k.forEach(j=>{Z.includes(j.value.toLowerCase())||a.value.push(j);});break;case It.cover:x=await q("覆盖后缀",Fe.suffix),x.trim()!==""&&(k=await ns(x,Fe.suffix),a.value=k);break;case It.clear:a.value=[];break;case It.reset:a.value.forEach(j=>{j.num=-1,j.fileIds=[],j.status=St.none,j.size=-1;});break}}async function ve(ee,m){let x="",k=[];switch(ee){case It.assign:x=m.trim(),x.trim()===""?l.value=[]:(k=await ns(x,Fe.keyword),l.value=k);break;case It.append:x=await q("添加关键词",Fe.keyword),k=await ns(x,Fe.keyword);const Z=[];l.value.forEach(j=>Z.push(j.value.toLowerCase())),k.forEach(j=>{Z.includes(j.value.toLowerCase())||l.value.push(j);});break;case It.cover:x=await q("覆盖关键词",Fe.keyword),x.trim()!==""&&(k=await ns(x,Fe.keyword),l.value=k);break;case It.clear:l.value=[];break;case It.reset:l.value.forEach(j=>{j.num=-1,j.fileIds=[],j.status=St.none,j.size=-1;});break}}async function ke(ee){if(console.log("[cleanBySuffix]",ee),await le(It.reset),!a.value.length){await Y.fire({icon:"warning",text:"请先设置后缀!"});return}if(L=[],!ee){const{isConfirmed:m}=await Y.fire({icon:"warning",html:'请在清理前确认"后缀和大小限制的设置"是否符合预期!',confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!m)return}c.value=true;try{for(let m=0;m<a.value.length;m++){const x=a.value[m];await _e(x,ee,!1,!0,!1);}ee||(c.value=!0,await pt(Fe.suffix));}catch(m){console.error(m),Y.fire({title:"按后缀名清理 - 发生错误",html:m.toString()});}finally{c.value=false,ee||Y.fire({title:"按后缀名清理 - 完成"});}}async function _e(ee,m,x,k,Z){if(console.log("[cleanBySuffixSingle]",ee,m),!m&&!k){const{isConfirmed:j}=await Y.fire({icon:"warning",html:`确认执行条件 "后缀: <b class="text-primary">${ee.pattern}</b>, 不大于: <b>${i.value.maxSize}</b> MB" 的清理?`,confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!j)return}try{if(!x){c.value=!0,ee.fileIds=[],ee.size=-1,ee.num=-1,ee.status=St.prepare;const j=await cn(ee);await M(j),ee.status=St.prepared;const{fileIds:J=[],size:de}=gp(ee,j,i.value);ee.fileIds=J,ee.size=de,ee.num=J.length,c.value=!1;}if(!m)if(ee.num&&ee.num>0){ee.status=St.deleting,c.value=!0;const j=ee.fileIds?.length||0;Z?await El(p.value,ee.fileIds||[],u.value.deleteSize,1e3):st(Fe.suffix,ee.fileIds||[],!1),c.value=!1,j>0?ee.status=St.success+` / 数量 <= ${j}`:ee.status=St.failed;}else ee.status=St.success+" / 无";}catch(j){console.error(j),c.value=false,await Y.fire({title:"cleanBySuffixSingle - 发生错误",html:j.toString()});}}async function $e(){const ee=[nt.fileKeyword,nt.fileHash];return l.value.some(m=>ee.includes(m.type))}async function Ne(ee,m){if(console.log("[cleanByKeyword]",ee,m),await ve(It.reset),!l.value.length){await Y.fire({icon:"warning",text:"请先设置关键词!"});return}if(he=[],!ee&&!u.value.cleanWithoutConfirm){const x={icon:"warning",html:'请在清理前确认"关键词和大小限制的设置"是否符合预期!',confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"},{isConfirmed:k,value:Z}=await Y.fire(x);if(!k)return}c.value=true,console.time("cleanByKeyword");try{let x;await $e()&&(x=await dt(),await M(x));const k=m||r.value.keywordCategory;for(let Z=0;Z<l.value.length;Z++){const j=l.value[Z];if(k!==mo.all){const J=j.type===nt.dirKeyword;if(k===mo.dir&&!J||k===mo.file&&J)continue}await we(j,ee,!1,!0,x,!1);}ee||(c.value=!0,await pt(Fe.keyword));}catch(x){console.error(x),Y.fire({title:"按关键词清理 - 发生错误",html:x.toString()});}finally{console.timeEnd("cleanByKeyword"),ee||Y.fire({title:"按关键词清理 - 完成"});}c.value=false;}async function dt(){const ee=p.value,m=yo({cid:ee,limit:1150,type:$n.file,record_open_time:0});return await Vs(m)}async function we(ee,m,x,k,Z,j){if(console.log("[cleanByKeywordSingle]",ee,m),!m&&!k){const{isConfirmed:J}=await Y.fire({icon:"warning",html:`确认执行条件 "关键词: <b class="text-primary">${ee.pattern}</b>, 不大于: <b class="text-primary">${r.value.maxSize}</b> MB" 的清理?`,confirmButtonText:"没问题,开始清理",showDenyButton:true,denyButtonText:"等会"});if(!J)return}try{if(!x){c.value=!0,ee.fileIds=[],ee.size=-1,ee.num=-1,ee.status=St.prepare;let J=[];ee.type!==nt.dirKeyword&&Z!==void 0?J=Z:(J=await Xt(ee),await M(J)),ee.status=St.prepared;const{fileIds:de,size:ce,num:ue}=gp(ee,J,r.value);ee.fileIds=de,ee.size=ce,ee.num=ue,c.value=!1;}if(!m)if(ee.num&&ee.num>0){ee.status=St.deleting,c.value=!0;const J=ee.fileIds?.length||0;j?await El(p.value,ee.fileIds||[],u.value.deleteSize,1e3):st(Fe.keyword,ee.fileIds||[],!1),c.value=!1,J>0?ee.status=St.success+` / 数量 <= ${J}`:ee.status=St.failed;}else ee.status=St.success+" / 无";}catch(J){console.error(J),c.value=false;let de=true;const ce={title:"cleanByKeywordSingle - 发生错误",html:J.toString()};J instanceof Pc&&(ee.status=St.prepareFailed+` / ${J.message}`,J instanceof lm&&(ce.timer=2e3,de=false)),de?await Y.fire(ce):Y.fire(ce);}}let L=[],he=[];function st(ee,m,x){ee===Fe.suffix?L=[...L,...m]:he=[...he,...m];}async function pt(ee){const m=ee===Fe.suffix?L:he;if(!m.length)return;const x=Array.from(new Set(m));console.log("[deleteFiles] num=",x.length),await El(p.value,x,1150,1e3);}async function cn(ee){const m=p.value,x=yo({cid:m,limit:u.value.pageSize});ee.isFilter?x.type=ee.pattern:x.suffix=ee.value;const k=await Vs(x);return console.log("[files]",k),k}async function Xt(ee){const m=p.value,x=qP({search_value:ee.pattern,cid:m,limit:u.value.pageSize}),k=await KP(x,u.value.reqInterval,true);return console.log("[files]",k),k}function lo(ee){return hm({...lA(ee),cid:p.value},w.value[w.value.length-1])}async function As(ee){console.log("[onSuffixGroupChange]",ee),o.value=ee,i.value.maxSize=ee.size,await le(It.assign,ee.values);}async function xn(ee){console.log("[onKeywordGroupChange]",ee),s.value=ee,r.value.maxSize=ee.size,await ve(It.assign,ee.values);}return (ee,m)=>{const x=_o("VDropdown");return K((_(),A("span",GP,[Ge(ee.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:pe},m[10]||(m[10]=[d("span",null,"清理文件",-1)]))]),se(Ji,{"is-open":t.value,speed:300,"max-width":"calc(100vw - 72px)",onClose:m[9]||(m[9]=k=>t.value=false)},{default:ge(()=>[K(d("div",{class:Te(["cloud115-eh-cleaner-drawer",{loading:c.value}])},[se(YA),d("div",JP,[m[15]||(m[15]=d("span",{class:"title"},"文件清理工具",-1)),d("span",YP,[d("button",{type:"button",class:"pure-button button-error",onClick:ne},"关闭"),m[12]||(m[12]=T("      ",-1)),se(Yi,{purpose:"清理文件",onSelect:O}),m[13]||(m[13]=T("      ",-1)),se(x,{triggers:["click"],distance:5},{popper:ge(()=>[se(NP)]),default:ge(()=>[m[11]||(m[11]=d("button",{type:"button",class:"pure-button"},"⚙ 设置",-1))]),_:1,__:[11]})]),d("div",QP,[d("a",{target:"_blank",href:v.value,title:"打开目录"},[m[14]||(m[14]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),T(" "+F(w.value.join(" / ")),1)],8,XP)])]),d("div",ZP,[d("div",eI,[m[16]||(m[16]=d("span",{class:"title"},[T("按"),d("b",null,"后缀名"),T("清理")],-1)),m[17]||(m[17]=T("      ",-1)),d("div",tI,[d("button",{type:"button",class:"pure-button",onClick:m[0]||(m[0]=k=>ke(!0))},"只查询"),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:m[1]||(m[1]=k=>ke(!1)),disabled:o.value.queryOnly}," 一键清理 ",8,nI)]),m[18]||(m[18]=T("   ",-1)),m[19]||(m[19]=d("span",{class:"ce-label"},"不大于",-1)),m[20]||(m[20]=T("  ",-1)),K(d("input",{type:"number","onUpdate:modelValue":m[2]||(m[2]=k=>i.value.maxSize=k),class:"filter-size"},null,512),[[Ve,i.value.maxSize]]),m[21]||(m[21]=T(" MB ",-1)),m[22]||(m[22]=d("small",null,"(0表示不限制)",-1)),f.value?(_(),tt(wp,{key:0,type:te(Fe).suffix,"storage-key":"suffixGroups",onChange:As,config:u.value},null,8,["type","config"])):fe("",!0)]),d("table",oI,[m[25]||(m[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),A(Se,null,je(a.value,(k,Z)=>(_(),A("tr",{key:Z,class:Te(te(hp)(k))},[d("td",null,F(Z+1),1),d("td",null,[d("a",{href:"javascript:void(0)",class:"pattern",onClick:j=>B(k),title:"筛选"},F(k.value),9,sI)]),d("td",null,F(k.num&&k.num>=0?k.num:""),1),d("td",null,F(k.size>0?te(Ws)(k.size):""),1),d("td",null,[d("button",{type:"button",class:"pure-button button-xsmall",onClick:j=>_e(k,!0,!1,!0)},"查询",8,iI),m[23]||(m[23]=T("   ",-1)),k.num&&k.num>0&&!o.value.queryOnly?(_(),A("button",{key:0,type:"button",class:"pure-button button-warning button-xsmall",onClick:j=>_e(k,!1,!0,!1,!0)},"清理",8,rI)):fe("",!0),m[24]||(m[24]=T("   ",-1)),k.num&&k.num>0?(_(),A("button",{key:1,type:"button",class:"pure-button button-warning button-xsmall",onClick:j=>z(o.value,k)},"≡ 详情",8,aI)):fe("",!0)]),d("td",null,F(k.status),1)],2))),128))])])]),m[55]||(m[55]=d("br",null,null,-1)),se(Ji,{"is-open":I.value,onClose:m[3]||(m[3]=k=>I.value=!1),"max-width":"1030px",speed:100,"bg-color":"#fff"},{default:ge(()=>[I.value?(_(),tt(EP,{key:0,files:P.value.files,group:P.value.group,pattern:P.value.pattern},null,8,["files","group","pattern"])):fe("",!0)]),_:1},8,["is-open"]),d("div",{class:Te(["by-box by-keyword",[`kw-cate-${r.value.keywordCategory}`]])},[d("div",lI,[m[26]||(m[26]=d("span",{class:"title"},[T("按"),d("b",null,"关键词"),T("清理")],-1)),m[27]||(m[27]=T("      ",-1)),d("div",uI,[d("button",{type:"button",class:"pure-button",onClick:m[4]||(m[4]=k=>Ne(!0))},"只查询"),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:m[5]||(m[5]=k=>Ne(!1)),disabled:s.value.queryOnly}," 一键清理 ",8,cI)]),m[28]||(m[28]=T("   ",-1)),m[29]||(m[29]=d("span",{class:"ce-label"},"不大于",-1)),m[30]||(m[30]=T("  ",-1)),K(d("input",{type:"number","onUpdate:modelValue":m[6]||(m[6]=k=>r.value.maxSize=k),class:"filter-size"},null,512),[[Ve,r.value.maxSize]]),m[31]||(m[31]=T(" MB ",-1)),m[32]||(m[32]=d("small",null,"(0表示不限制)",-1)),m[33]||(m[33]=T("    ",-1)),m[34]||(m[34]=d("span",{class:"ce-label"},"关键词类别",-1)),m[35]||(m[35]=T("  ",-1)),se(ka,{modelValue:r.value.keywordCategory,"onUpdate:modelValue":m[7]||(m[7]=k=>r.value.keywordCategory=k),mapping:te(jE)},null,8,["modelValue","mapping"]),m[36]||(m[36]=T("    ",-1)),m[37]||(m[37]=d("span",{class:"ce-label"},"结果筛选",-1)),m[38]||(m[38]=T("  ",-1)),se(ka,{modelValue:r.value.resultCategory,"onUpdate:modelValue":m[8]||(m[8]=k=>r.value.resultCategory=k),mapping:te(zE)},null,8,["modelValue","mapping"]),f.value?(_(),tt(wp,{key:0,type:te(Fe).keyword,"storage-key":"keywordGroups",onChange:xn,config:u.value},null,8,["type","config"])):fe("",!0)]),d("table",{class:Te(["pure-table pure-table-bordered fixed-header-table",[`table-${r.value.resultCategory}`]])},[d("thead",null,[d("tr",null,[m[40]||(m[40]=d("th",{width:"25"},"#",-1)),d("th",{width:"280"},[m[39]||(m[39]=T(" 关键词 ",-1)),d("small",{class:"text-info",onClick:S},"显示调试信息")]),m[41]||(m[41]=d("th",{width:"95"},"文件/目录数量",-1)),m[42]||(m[42]=d("th",{width:"80"},"合计大小",-1)),m[43]||(m[43]=d("th",{width:"150"},"操作",-1)),m[44]||(m[44]=d("th",{width:"200"},"状态",-1))])]),d("tbody",null,[(_(!0),A(Se,null,je(l.value,(k,Z)=>(_(),A("tr",{key:Z,class:Te(te(hp)(k,r.value))},[d("td",dI,F(Z+1),1),d("td",fI,[d("a",{href:lo(k),target:"_blank",class:"pattern",title:"搜索"},[K(d("i",hI,null,512),[[Wt,k.type===te(nt).dirKeyword]]),T(" "+F(k.pattern),1)],8,pI),d("span",mI,[k.fullMatch?(_(),A("span",gI,"全等")):fe("",!0),k.caseSensitive?(_(),A("span",wI,"区分大小写")):fe("",!0),k.impartible?(_(),A("span",yI,"匹配空格")):fe("",!0),k.isRegexp?(_(),A("span",bI,"正则")):fe("",!0),k.type===te(nt).fileHash?(_(),A("span",vI,"sha1")):fe("",!0),k.maxSize===0?(_(),A("span",xI,"任意大小")):fe("",!0),k.maxSize>0?(_(),A("span",_I,"不大于"+F(k.maxSize)+"MB",1)):fe("",!0),k.memo?(_(),A("div",CI,[m[45]||(m[45]=d("small",null,"备注:",-1)),T(" "+F(k.memo),1)])):fe("",!0)]),b.value?(_(),A("div",kI,[m[46]||(m[46]=d("small",null,"raw:",-1)),m[47]||(m[47]=T()),d("span",$I,F(k.value),1),m[48]||(m[48]=T(", ",-1)),m[49]||(m[49]=d("small",null,"type:",-1)),m[50]||(m[50]=T()),d("span",SI,F(te(Dw)[k.type]),1),d("div",null," fullMatch: "+F(k.fullMatch)+", caseSensitive: "+F(k.caseSensitive)+", impartible: "+F(k.impartible)+", isRegexp: "+F(k.isRegexp)+", maxSize: "+F(k.maxSize)+", patternRegexp: "+F(k.patternRegexp?.toString()),1)])):fe("",!0)]),d("td",EI,F(k.num&&k.num>=0?k.num:""),1),d("td",AI,F(k.size>0?te(Ws)(k.size):""),1),d("td",PI,[k.type!==te(nt).fileKeyword?(_(),A("button",{key:0,type:"button",class:"pure-button button-xsmall",onClick:j=>we(k,!0,!1,!0)},"查询",8,II)):fe("",!0),k.type!==te(nt).fileKeyword&&k.num&&k.num>0&&!s.value.queryOnly?(_(),A("button",{key:1,type:"button",class:"pure-button button-warning button-xsmall",onClick:j=>we(k,!1,!0,!1,void 0,!0)},"清理",8,DI)):fe("",!0),k.num&&k.num>0?(_(),A("button",{key:2,type:"button",class:"pure-button button-xsmall",onClick:j=>z(s.value,k)},"≡ 详情",8,TI)):fe("",!0)]),d("td",LI,F(k.status),1)],2))),128))])],2)],2),m[56]||(m[56]=d("br",null,null,-1)),d("div",MI,[m[52]||(m[52]=d("span",{class:"title"},"文件清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:ne},"关闭")]),m[53]||(m[53]=T("      ",-1)),se(Yi,{purpose:"清理文件",onSelect:O}),m[54]||(m[54]=T("      ",-1)),se(Nw,{container:".cloud115-eh-cleaner-drawer"}),d("div",OI,[d("a",{target:"_blank",href:v.value,title:"打开目录"},[m[51]||(m[51]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),T(" "+F(w.value.join(" / ")),1)],8,BI)])])],2),[[Wt,t.value]])]),_:1},8,["is-open"])],512)),[[Wt,n.value]])}}}),FI=Pe(RI,[["__file","Cleaner.vue"]]),NI={class:"ce-empty-cleaner-trigger"},UI=xe({__name:"Trigger",setup(e){W(false);const t=W(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);}),$s(()=>{window.removeEventListener("message",n);});async function o(){await i(),cs({type:Kt.OPEN_EMPTY_CLEANER},window.parent);}let s;async function i(){const a=Zi("cid");!a||a==="0"||(clearTimeout(s),s=setTimeout(async()=>{Q({icon:"error",text:"打开清理空文件夹工具失败!"+location.href});},1e3));}async function r(a){console.log("成功打开EmptyCleaner"),clearTimeout(s);}return (a,l)=>K((_(),A("span",NI,[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]])}}),jI=Pe(UI,[["__file","Trigger.vue"]]);async function zI(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 HI(e,t=1e3,n=12e4){const o=new URLSearchParams({export_id:e.toString()}),s=async()=>(await Ot().get("https://webapi.115.com/files/export_dir?"+o.toString(),{timeout:12e4,withCredentials:true})).data;async function i(r){const a=await s();a.data&&a.data.pick_code&&r(a);}try{return await qo(i,t,n)}catch(r){throw new Error(`导出目录树结果获取失败:${r.message}`)}}const VI=/^(?:\| )+\|-/;async function*qI(e){const t=["/"],n=e.trim().split(`
`);let o=0;for(const s of n){const i=VI.exec(s);if(i===null)continue;const a=i[0].length,l=a/2-1,c=s.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:Qh(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 WI=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 zI(this._dirId);console.log("exportTree",n),this.log("已发起导出处理,等待导出完成...");const o=await HI(n.data.export_id,2e3);console.log("exportTree",o),this.log(`导出目录树成功,PickCode为${o.data.pick_code}`);const s=await yk(o.data.pick_code);console.log("downloadItem",s),this.log("正在读取目录树文件内容...");let i=true;try{this._treeText=await this._readFile(s),this.log("目录树文件内容读取完成");}catch(a){this.log(`读取目录树文件内容失败,${a.toString()}`),i=false;}if(this._keepTree)this.onTreeFileGenerated(s),this.log(`目录树文件保留,不会被删除。文件: ${s.file_name}`);else {const a=await Ac(this._dirId,[s.file_id]);console.log("deleteResult",a),this.log("目录树文件已删除");}const r=((Date.now()-t)/1e3).toFixed(2);i?this.log(`导出目录树完成,耗时 ${r} 秒`):this.log(`导出目录树失败,耗时 ${r} 秒`),this.log("=".repeat(60));}async _readFile(t){const n=uA({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=[],s=this._dirPath.split("/").slice(0,-1).join("/");console.log("[parseTree] parentPath:",s);for await(const r of qI(this._treeText)){const a=s+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=Zh(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 i=((Date.now()-t)/1e3).toFixed(2);this.log(`解析目录树完成,耗时 ${i} 秒`),this.log("=".repeat(60)),this._tailData=n;}async queryFiles(){const t=Date.now(),n=this._tailData;this.log("获取文件列表...");const o=yo({type:$n.file,limit:1150,cid:this._dirId});try{const i=Date.now(),r=await Vs(o),a=((Date.now()-i)/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(_s(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(i){console.error("[queryFiles] getFiles error! error:",i),this.log(`获取文件列表失败!错误: ${i.toString()}`);}const s=((Date.now()-t)/1e3).toFixed(2);this.log(`获取文件列表完成。耗时 ${s} 秒`),this.log("=".repeat(60));}async handleMaybeDirs(){const t=Date.now(),n=this._tailData;this.log("========根据上级路径排除无后缀文件========");const o=this._tailData.violationFiles.length>0,s=Object.keys(n.maybeDirs).length;let i=0;for(const[a,l]of Object.entries(n.maybeDirs)){let c="";try{c=await Bs(a,!1);}catch(f){console.error(`[handleMaybeDirs] getDirIdByPath error! path: ${a}, error:`,f),this.log(`[${i+1} / ${s}] 根据上级路径(cid=${a}) 获取目录ID失败!错误: ${f.toString()}`);continue}const u=yo({limit:1150,cid:c});try{const f=Date.now();this.log(`[${i+1} / ${s}] 正在获取上级路径 "${a}" 的文件列表...`);const p=await Vs(u),w=((Date.now()-f)/1e3).toFixed(2);this.log(`[${i+1} / ${s}] 获取上级路径 "${a}" 的文件列表成功,文件数量:${p.length}。耗时 ${w} 秒`);for(const g of p)if(l.has(g.n)){if(g.fid)this.log(`[${i+1} / ${s}] 上级路径 "${a}" 下的 "${g.n}" 是一个文件`),n.treeNameCounter[g.n]&&n.treeNameCounter[g.n]--;else if(!n.filesNameCounter[g.n]&&!o){const b=a+"/"+g.n;this.log(`[${i+1} / ${s}] 路径 "${b}" 是一个目录,该目录名称无对应的文件,且由于无违规文件,因此可确认为空目录`);const v=Xl({id:g.cid,name:g.n,path:b,url:Bn(g.cid),ensured:!0});await this.addEmptyItem(v);}}}catch(f){console.error(`[handleMaybeDirs] getFiles error! cid: ${c}, error:`,f),this.log(`[${i+1} / ${s}] 获取上级路径(cid=${c}) "${a}" 的文件列表失败!错误: ${f.toString()}`);}i++;}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 s=0,i=Object.keys(n.treeNameCounter).length;for(const[a,l]of Object.entries(n.treeNameCounter)){if(!l){s++;continue}const c=n.treeNameToPaths[a];this.log(`[${s+1} / ${i}] 名称 "${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(`[${s+1} / ${i}] 正在检测名称 "${a}" 第 ${u+1}/${l} 个路径: ${f}`);try{const p=await Bs(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 Ic?this.log(`路径 "${f}" 不是一个目录`):(console.error(`[detectEmpty] getDirIdByPath failed! path: ${f}, error:`,p),this.log(`获取路径 "${f}" 的ID失败!错误: ${p.toString()}`));}}s++;}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,"..",Oo.unix);console.log("[checkDirContainsRepeated] parentPath:",o);let s="";try{if(s=await Bs(o,!1),!s){this.log(`❌ 根据路径"${o}"获取目录ID失败: 目录不存在!`);return}}catch(r){console.error(`[checkDirContainsRepeated] getDirIdByPath error! path: ${o}, error:`,r),this.log(`获取路径 "${o}" 的ID失败!错误: ${r.toString()}`);return}const i=yo({limit:1150,cid:s});try{const r=Date.now();this.log(`正在获取目录(id=${s})的文件列表...`);const a=await Vs(i),l=((Date.now()-r)/1e3).toFixed(2);this.log(`获取目录(id=${s})的文件列表成功,文件数量:${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=${s})的子目录(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=${s})的子目录(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: ${s}, error:`,r),this.log(`获取目录(id=${s})的文件列表失败!错误: ${r.toString()}`);}}async checkRealEmpty(){const t=Date.now();this.log("========确认是否真的为空目录========");for(const o of this._emptyItems.values())if(!o.ensured)try{const s=await Nt(o.id);o.ensured=!0,o.attr=s,s.count===0&&s.folder_count===0?this.log(`目录(id=${o.id}) "${o.path}" 确认为空`):(o.disabled=!0,o.memo="目录不为空,请手动检查和处理",this.log(`目录(id=${o.id}) "${o.path}" 确认不为空,请手动检查和处理`));}catch(s){console.error(`[checkRealEmpty] getAttr error! cid: ${o.id}, error:`,s),this.log(`获取目录(id=${o.id}) "${o.path}" 属性失败!异常: ${s.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 KI={},GI={class:"ce-empty-cleaner-help"};function JI(e,t){return _(),A("div",GI,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 YI=Pe(KI,[["render",JI],["__scopeId","data-v-ce900ab5"],["__file","Help.vue"]]);async function QI(){return (await Ot().get("https://115.com/?ct=tool&ac=clear_empty_folder",{timeout:12e4,withCredentials:true})).data}async function $a(){const e=t=>{Y.update({html:`清理失败!${t}`,showConfirmButton:true,allowOutsideClick:false});};try{const{isConfirmed:t,value:n}=await Y.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;Y.fire({html:"正在清理,请稍候..."}),Y.showLoading();const o=await QI();o.state?Y.update({html:o.msg}):e(`清理失败!${o.msg}`);}catch(t){console.error(t),e(`清理失败!${t.toString()}`);}finally{Y.hideLoading();}}const XI={class:"ce-empty-cleaner ce-cleaner-x"},ZI={class:"header actions-bar"},eD={class:"ce-path ce-label ce-label-primary-plain"},tD=["href"],nD={class:"top-actions"},oD=["disabled"],sD={class:"pure-form pure-form-aligned"},iD={class:"pure-control-group"},rD={key:0},aD={class:"text-primary"},lD={key:1},uD={class:"text-primary"},cD={key:0},dD=["href"],fD={key:0},pD={key:0},hD={class:"text-primary"},mD={class:"ec-items"},gD={class:"pure-table pure-table-bordered"},wD={width:"30"},yD=["disabled"],bD=["onUpdate:modelValue","onChange","disabled"],vD={key:0},xD={class:"ce-label ce-label-danger"},_D={key:0},CD={key:1},kD=["onClick","disabled"],$D=["onClick"],SD=["href"],ED={key:0},AD={class:"footer actions-bar"},PD={class:"ce-path ce-label ce-label-primary-plain"},ID=["href"],DD=xe({__name:"EmptyCleaner",setup(e){const t=W(false),n=W(true),o=W(false),s=W(""),i=W([]),r=W(null),a=W([]),l=W(false),c=W(null),u=W([]),f=W([]),p=W(null),w=W(null),g=Ke(()=>w.value?z0(w.value.pick_code):""),b=Ke(()=>s.value?Bn(s.value):"");let v;const S=W({keepTree:false});async function I(we){we.data.type===Kt.OPEN_EMPTY_CLEANER&&(E(we.data.payload),cs({type:Kt.EMPTY_CLEANER_OPENED},we.source));}Ht(async()=>{window.addEventListener("message",I),v=new WI(s.value),v.addLogSubscriber(ve),v.addEmptyItemSubscriber(ke),v.addTreeFileSubscriber(le);}),$s(()=>{window.removeEventListener("message",I);});async function E(we){t.value=true;const L=await jt();if(L==="0"||L===""){await dt(),await Y.fire({icon:"warning",html:"<h2>不允许在根目录使用该工具!</h2>"});return}s.value&&s.value!==L&&console.warn("目录变化,重置"),r.value=await Nt(L),i.value=[...r.value.paths.slice(1).map(he=>he.file_name),r.value.file_name],s.value=L;}async function P(){l.value=false,u.value=[],f.value=[],a.value=[],w.value=null;}async function M(){try{o.value=!0,await P(),await v.reset(),await v.setKeepTree(S.value.keepTree),await v.setDirId(s.value),await v.run(),Y.fire({title:"空文件夹检测已完成"});}catch(we){console.error(we),Y.fire({title:"空文件夹检测失败",text:we.toString()});}finally{o.value=false;}}async function z(we){const L=f.value.join(`
`);if(we==="copy")ft(L),Q({text:"已复制清理空文件夹日志",timer:1200});else if(we==="download"){let he=`清理空文件夹日志-${s.value}.txt`;Jr(L,he);}}async function U(we,L,he="path"){const st=L==="all"?a.value:u.value;let pt="";he==="path"?pt=st.map(Xt=>Xt.path).join(`
`):he==="full"&&(pt=JSON.stringify(st,null,2));const cn=he==="path"?"路径":"数据";if(we==="copy")ft(pt),Q({text:`已复制${cn}到剪贴板`,timer:1200});else if(we==="download"){let Xt=`空文件夹${cn}-${s.value}-数量${st.length}`;Jr(pt,`${Xt}.${he==="path"?"txt":"json"}`);}}async function ie(we){const he=u.value.map(st=>st.url);await hr(he,true);}async function pe(we){console.log("[onSelectDir]",we);const{items:L}=we,he=L[L.length-1];await P(),s.value=he.cid,r.value=await Nt(he.cid),i.value=[...r.value.paths.slice(1).map(st=>st.file_name),r.value.file_name];}async function ne(we,L){if(we.deleted){Q({text:"该目录已删除,不能再次删除!",showConfirmButton:true});return}o.value=true,await B([we.id])&&(we.deleted=true),o.value=false;}async function O(){if(!u.value.length)return;const we=u.value.filter(L=>!L.deleted).map(L=>L.id);if(!we.length){Q({text:"没有可删除的目录!",showConfirmButton:true});return}if(o.value=true,await B(we))for(const L of u.value)L.deleted=true;o.value=false;}async function B(we){try{const L=await Ac(s.value,we);if(L.state)return !0;Q({text:`删除失败: ${L.errno} - ${L.error}`});}catch(L){console.error(L),Q({text:`删除失败!${L.toString()}`});}return  false}async function q(we){o.value=true;try{const L=await Nt(we.id),he=pt=>new Date(Number(pt)*1e3).toLocaleString(),{isConfirmed:st}=await Y.fire({title:"目录属性",html:`<div class="ce-ec-detail">
        <p><span>类型:</span> 文件夹</p>
        <p><span>大小:</span> ${L.size}</p>
        <p><span>创建时间:</span> ${he(L.ptime)}</p>
        <p><span>修改时间:</span> ${he(L.utime)}</p>
        <p><span>位置:</span> ${we.path}</p>
      </div>
      `,showDenyButton:!0,denyButtonText:"关闭",showConfirmButton:!0,confirmButtonText:"查看目录"});st&&window.open(we.url);}catch(L){Q({text:`获取目录属性失败!${L.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 ms(),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 $e(we,L){console.log("[onCheckChange]",we,L),l.value=a.value.every(he=>he.checked),c.value.indeterminate=!l.value&&a.value.some(he=>he.checked),await Ne();}async function Ne(){u.value=a.value.filter(we=>we.checked);}async function dt(){t.value=false;}return (we,L)=>K((_(),A("span",XI,[Ge(we.$slots,"default",{},()=>[d("span",{class:"btn-open pure-button pure-button-primary",onClick:E},L[15]||(L[15]=[d("span",null,"清理空文件夹",-1)]))]),se(Ji,{"is-open":t.value,speed:300,"max-width":"calc(100vw - 72px)",onClose:L[14]||(L[14]=he=>t.value=false)},{default:ge(()=>[K(d("div",{class:Te(["ce-empty-cleaner-drawer",{loading:o.value}])},[se(YI),d("div",ZI,[L[17]||(L[17]=d("span",{class:"title"},"空文件夹清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:dt},"关闭")]),L[18]||(L[18]=T("     ",-1)),se(Yi,{purpose:"清理空文件夹",onSelect:pe}),d("button",{type:"button",class:"pure-button btn-global-clear",onClick:L[0]||(L[0]=(...he)=>te($a)&&te($a)(...he)),title:"不用怕误点击,点开后还需要确认呢"}," 一键全局清理空文件夹 "),d("div",eD,[d("a",{target:"_blank",href:b.value,title:"打开目录"},[L[16]||(L[16]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),T(" "+F(i.value.join(" / ")),1)],8,tD)])]),d("div",null,[d("div",nD,[d("div",null,[d("button",{type:"button",class:"pure-button pure-button-primary",onClick:M,disabled:o.value},"检测空文件夹",8,oD)]),d("div",null,[d("form",sD,[d("fieldset",null,[d("div",iD,[r.value?(_(),A("label",rD,[L[19]||(L[19]=d("span",null,"文件夹数量:",-1)),L[20]||(L[20]=T("  ",-1)),d("b",aD,F(r.value?.folder_count),1)])):fe("",!0),r.value?(_(),A("label",lD,[L[21]||(L[21]=d("span",null,"文件数量:",-1)),L[22]||(L[22]=T("  ",-1)),d("b",uD,F(r.value?.count),1)])):fe("",!0),d("label",null,[K(d("input",{type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":L[1]||(L[1]=he=>S.value.keepTree=he)},null,512),[[ye,S.value.keepTree]]),L[24]||(L[24]=T("  ",-1)),L[25]||(L[25]=d("span",{title:"不会删除目录树文件"},"保留目录树文件",-1)),w.value?(_(),A("span",cD,[L[23]||(L[23]=T("    ",-1)),d("a",{href:g.value,class:"text-primary",target:"_blank"},"查看目录树文件",8,dD)])):fe("",!0)])])])])])]),d("h3",null,[L[28]||(L[28]=T(" 日志 ",-1)),f.value.length?(_(),A("span",fD,[L[26]||(L[26]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[2]||(L[2]=he=>z("copy"))},"复制日志"),L[27]||(L[27]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[3]||(L[3]=he=>z("download"))},"保存日志")])):fe("",!0)]),d("div",{ref_key:"refLogs",ref:p,class:"ec-logs"},[(_(!0),A(Se,null,je(f.value,(he,st)=>(_(),A("div",{key:st},F(he),1))),128))],512),d("h3",null,[L[33]||(L[33]=T(" 空文件夹 ",-1)),a.value.length?(_(),A("span",pD,[d("span",hD," ( "+F(a.value.length)+" )",1),L[29]||(L[29]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[4]||(L[4]=he=>U("copy","all","path"))},"复制路径"),L[30]||(L[30]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[5]||(L[5]=he=>U("copy","all","full"))},"复制数据"),L[31]||(L[31]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[6]||(L[6]=he=>U("download","all","path"))},"保存路径"),L[32]||(L[32]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[7]||(L[7]=he=>U("download","all","full"))},"保存数据")])):fe("",!0)]),d("div",mD,[d("table",gD,[d("thead",null,[d("tr",null,[L[34]||(L[34]=d("th",{width:"25"},"#",-1)),d("th",wD,[K(d("input",{ref_key:"refAllChecked",ref:c,type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":L[8]||(L[8]=he=>l.value=he),onChange:_e,disabled:!a.value.length},null,40,yD),[[ye,l.value]])]),L[35]||(L[35]=d("th",{width:"140"},"ID",-1)),L[36]||(L[36]=d("th",null,"路径",-1)),L[37]||(L[37]=d("th",{width:"150"},"操作",-1))])]),d("tbody",null,[(_(!0),A(Se,null,je(a.value,(he,st)=>(_(),A("tr",{key:st,class:Te({"tr-deleted":he.deleted})},[d("td",null,F(st+1),1),d("td",null,[K(d("input",{type:"checkbox",class:"ce-checkbox","onUpdate:modelValue":pt=>he.checked=pt,onChange:pt=>$e(he,st),disabled:he.disabled},null,40,bD),[[ye,he.checked]])]),d("td",null,F(he.id),1),d("td",null,[d("div",null,F(he.path),1),he.memo?(_(),A("div",vD,[d("span",xD,F(he.memo),1)])):fe("",!0)]),d("td",null,[he.deleted?(_(),A("div",_D,L[38]||(L[38]=[d("span",{class:"label-danger"},"已删除",-1)]))):(_(),A("div",CD,[d("button",{type:"button",class:"pure-button button-xsmall button-error",onClick:pt=>ne(he,st),disabled:he.disabled},"删除",8,kD),L[39]||(L[39]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:pt=>q(he)},"详情",8,$D),L[40]||(L[40]=T("   ",-1)),d("a",{class:"pure-button button-xsmall",href:he.url,target:"_blank"},"打开",8,SD)]))])],2))),128))])]),u.value.length?(_(),A("div",ED,[L[41]||(L[41]=d("br",null,null,-1)),d("button",{type:"button",class:"pure-button button-error",onClick:O},"删除选中 ("+F(u.value.length)+")",1),L[42]||(L[42]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[9]||(L[9]=he=>U("copy","checked","path"))},"复制已选路径"),L[43]||(L[43]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[10]||(L[10]=he=>U("copy","checked","full"))},"复制已选数据"),L[44]||(L[44]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[11]||(L[11]=he=>U("download","checked","path"))},"保存已选路径"),L[45]||(L[45]=T("   ",-1)),d("button",{type:"button",class:"pure-button button-xsmall",onClick:L[12]||(L[12]=he=>U("download","checked","full"))},"保存已选数据"),L[46]||(L[46]=T("     ",-1)),d("button",{type:"button",class:"pure-button button-success button-xsmall",onClick:L[13]||(L[13]=he=>ie("checked"))},"打开已选")])):fe("",!0)])]),d("div",AD,[L[48]||(L[48]=d("span",{class:"title"},"空文件夹清理工具",-1)),d("span",{class:"close"},[d("button",{type:"button",class:"pure-button button-error",onClick:dt},"关闭")]),L[49]||(L[49]=T("      ",-1)),se(Yi,{purpose:"清理空文件夹",onSelect:pe}),L[50]||(L[50]=T("      ",-1)),se(Nw,{container:".ce-empty-cleaner-drawer"}),d("div",PD,[d("a",{target:"_blank",href:b.value,title:"打开目录"},[L[47]||(L[47]=d("i",{class:"file-type tp-folder",style:{}},null,-1)),T(" "+F(i.value.join(" / ")),1)],8,ID)])])],2),[[Wt,t.value]])]),_:1},8,["is-open"])],512)),[[Wt,n.value]])}}),TD=Pe(DD,[["__file","EmptyCleaner.vue"]]),LD=".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(LD);function MD(){return {showEntryOnPathBar:true}}async function Uw(){const e=MD(),t=await Xe.get(gt.emptyCleanerConfig,e);return {...e,...t}}async function OD(e){return await Xe.set(gt.emptyCleanerConfig,e)}async function BD(){const{host:e}=location,t=await yr(),n=await Uw();e==="115.com"&&(console.log("[Cleaner] running..."),vn()?(await RD(t),await FD(n)):(await ND(),await UD()));}async function RD(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 s=ao(NE);s.component("VDropdown",Es),s.directive("tooltip",pd),s.mount(`#${t}`);}async function FD(e){if(!e.showEntryOnPathBar)return;const t="cloud115EmptyCleaner",n=await et("#js_path_add_dir"),o=ze(`<span id="${t}"/>`);n.insertAdjacentElement("afterend",o),ao(jI).mount(`#${t}`);}async function ND(e){const t="cloud115Cleaner",n=ze(`<div id="${t}"/>`);document.body.appendChild(n);const o=ao(FI);o.component("VDropdown",Es),o.directive("tooltip",pd),o.mount(`#${t}`),xi("清理文件",async()=>{cs({type:Kt.OPEN_CLEANER},window.parent);});}async function UD(e){const t="cloud115EmptyCleaner",n=ze(`<div id="${t}"/>`);document.body.appendChild(n);const o=ao(TD);o.component("VDropdown",Es),o.mount(`#${t}`),xi("清理空目录",async()=>{cs({type:Kt.OPEN_EMPTY_CLEANER},window.parent);});}function jw(e,t){return function(){return e.apply(t,arguments)}}const{toString:jD}=Object.prototype,{getPrototypeOf:vd}=Object,{iterator:hl,toStringTag:zw}=Symbol,ml=(e=>t=>{const n=jD.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:ui}=Array,Qi=gl("undefined");function br(e){return e!==null&&!Qi(e)&&e.constructor!==null&&!Qi(e.constructor)&&an(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Hw=jn("ArrayBuffer");function zD(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Hw(e.buffer),t}const HD=gl("string"),an=gl("function"),Vw=gl("number"),vr=e=>e!==null&&typeof e=="object",VD=e=>e===true||e===false,qr=e=>{if(ml(e)!=="object")return  false;const t=vd(e);return (t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(zw in e)&&!(hl in e)},qD=e=>{if(!vr(e)||br(e))return  false;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return  false}},WD=jn("Date"),KD=jn("File"),GD=jn("Blob"),JD=jn("FileList"),YD=e=>vr(e)&&an(e.pipe),QD=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]"))},XD=jn("URLSearchParams"),[ZD,e5,t5,n5]=["ReadableStream","Request","Response","Headers"].map(jn),o5=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function xr(e,t,{allOwnKeys:n=false}={}){if(e===null||typeof e>"u")return;let o,s;if(typeof e!="object"&&(e=[e]),ui(e))for(o=0,s=e.length;o<s;o++)t.call(null,e[o],o,e);else {if(br(e))return;const i=n?Object.getOwnPropertyNames(e):Object.keys(e),r=i.length;let a;for(o=0;o<r;o++)a=i[o],t.call(null,e[a],a,e);}}function qw(e,t){if(br(e))return null;t=t.toLowerCase();const n=Object.keys(e);let o=n.length,s;for(;o-- >0;)if(s=n[o],t===s.toLowerCase())return s;return null}const is=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ww=e=>!Qi(e)&&e!==is;function Vu(){const{caseless:e}=Ww(this)&&this||{},t={},n=(o,s)=>{const i=e&&qw(t,s)||s;qr(t[i])&&qr(o)?t[i]=Vu(t[i],o):qr(o)?t[i]=Vu({},o):ui(o)?t[i]=o.slice():t[i]=o;};for(let o=0,s=arguments.length;o<s;o++)arguments[o]&&xr(arguments[o],n);return t}const s5=(e,t,n,{allOwnKeys:o}={})=>(xr(t,(s,i)=>{n&&an(s)?e[i]=jw(s,n):e[i]=s;},{allOwnKeys:o}),e),i5=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),r5=(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);},a5=(e,t,n,o)=>{let s,i,r;const a={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)r=s[i],(!o||o(r,e,t))&&!a[r]&&(t[r]=e[r],a[r]=true);e=n!==false&&vd(e);}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},l5=(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},u5=e=>{if(!e)return null;if(ui(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},c5=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&vd(Uint8Array)),d5=(e,t)=>{const o=(e&&e[hl]).call(e);let s;for(;(s=o.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1]);}},f5=(e,t)=>{let n;const o=[];for(;(n=e.exec(t))!==null;)o.push(n);return o},p5=jn("HTMLFormElement"),h5=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,s){return o.toUpperCase()+s}),vp=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),m5=jn("RegExp"),Kw=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};xr(n,(s,i)=>{let r;(r=t(s,i,e))!==false&&(o[i]=r||s);}),Object.defineProperties(e,o);},g5=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+"'")});}});},w5=(e,t)=>{const n={},o=s=>{s.forEach(i=>{n[i]=true;});};return ui(e)?o(e):o(String(e).split(t)),n},y5=()=>{},b5=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function v5(e){return !!(e&&an(e.append)&&e[zw]==="FormData"&&e[hl])}const x5=e=>{const t=new Array(10),n=(o,s)=>{if(vr(o)){if(t.indexOf(o)>=0)return;if(br(o))return o;if(!("toJSON"in o)){t[s]=o;const i=ui(o)?[]:{};return xr(o,(r,a)=>{const l=n(r,s+1);!Qi(l)&&(i[a]=l);}),t[s]=void 0,i}}return o};return n(e,0)},_5=jn("AsyncFunction"),C5=e=>e&&(vr(e)||an(e))&&an(e.then)&&an(e.catch),Gw=((e,t)=>e?setImmediate:t?((n,o)=>(is.addEventListener("message",({source:s,data:i})=>{s===is&&i===n&&o.length&&o.shift()();},false),s=>{o.push(s),is.postMessage(n,"*");}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",an(is.postMessage)),k5=typeof queueMicrotask<"u"?queueMicrotask.bind(is):typeof process<"u"&&process.nextTick||Gw,$5=e=>e!=null&&an(e[hl]),H={isArray:ui,isArrayBuffer:Hw,isBuffer:br,isFormData:QD,isArrayBufferView:zD,isString:HD,isNumber:Vw,isBoolean:VD,isObject:vr,isPlainObject:qr,isEmptyObject:qD,isReadableStream:ZD,isRequest:e5,isResponse:t5,isHeaders:n5,isUndefined:Qi,isDate:WD,isFile:KD,isBlob:GD,isRegExp:m5,isFunction:an,isStream:YD,isURLSearchParams:XD,isTypedArray:c5,isFileList:JD,forEach:xr,merge:Vu,extend:s5,trim:o5,stripBOM:i5,inherits:r5,toFlatObject:a5,kindOf:ml,kindOfTest:jn,endsWith:l5,toArray:u5,forEachEntry:d5,matchAll:f5,isHTMLForm:p5,hasOwnProperty:vp,hasOwnProp:vp,reduceDescriptors:Kw,freezeMethods:g5,toObjectSet:w5,toCamelCase:h5,noop:y5,toFiniteNumber:b5,findKey:qw,global:is,isContextDefined:Ww,isSpecCompliantForm:v5,toJSONObject:x5,isAsyncFn:_5,isThenable:C5,setImmediate:Gw,asap:k5,isIterable:$5};function Re(e,t,n,o,s){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),s&&(this.response=s,this.status=s.status?s.status:null);}H.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:H.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,s,i)=>{const r=Object.create(Jw);return H.toFlatObject(e,r,function(l){return l!==Error.prototype},a=>a!=="isAxiosError"),Re.call(r,e.message,t,n,o,s),r.cause=e,r.name=e.name,i&&Object.assign(r,i),r};const S5=null;function qu(e){return H.isPlainObject(e)||H.isArray(e)}function Qw(e){return H.endsWith(e,"[]")?e.slice(0,-2):e}function xp(e,t,n){return e?e.concat(t).map(function(s,i){return s=Qw(s),!n&&i?"["+s+"]":s}).join(n?".":""):t}function E5(e){return H.isArray(e)&&!e.some(qu)}const A5=H.toFlatObject(H,{},null,function(t){return /^is[A-Z]/.test(t)});function wl(e,t,n){if(!H.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=H.toFlatObject(n,{metaTokens:true,dots:false,indexes:false},false,function(b,v){return !H.isUndefined(v[b])});const o=n.metaTokens,s=n.visitor||u,i=n.dots,r=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&H.isSpecCompliantForm(t);if(!H.isFunction(s))throw new TypeError("visitor must be a function");function c(g){if(g===null)return "";if(H.isDate(g))return g.toISOString();if(H.isBoolean(g))return g.toString();if(!l&&H.isBlob(g))throw new Re("Blob is not supported. Use a Buffer instead.");return H.isArrayBuffer(g)||H.isTypedArray(g)?l&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,b,v){let S=g;if(g&&!v&&typeof g=="object"){if(H.endsWith(b,"{}"))b=o?b:b.slice(0,-2),g=JSON.stringify(g);else if(H.isArray(g)&&E5(g)||(H.isFileList(g)||H.endsWith(b,"[]"))&&(S=H.toArray(g)))return b=Qw(b),S.forEach(function(E,P){!(H.isUndefined(E)||E===null)&&t.append(r===true?xp([b],P,i):r===null?b:b+"[]",c(E));}),false}return qu(g)?true:(t.append(xp(v,b,i),c(g)),false)}const f=[],p=Object.assign(A5,{defaultVisitor:u,convertValue:c,isVisitable:qu});function w(g,b){if(!H.isUndefined(g)){if(f.indexOf(g)!==-1)throw Error("Circular reference detected in "+b.join("."));f.push(g),H.forEach(g,function(S,I){(!(H.isUndefined(S)||S===null)&&s.call(t,S,H.isString(I)?I.trim():I,b,p))===true&&w(S,b?b.concat(I):[I]);}),f.pop();}}if(!H.isObject(e))throw new TypeError("data must be an object");return w(e),t}function _p(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(o){return t[o]})}function xd(e,t){this._pairs=[],e&&wl(e,this,t);}const Xw=xd.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,_p)}:_p;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function P5(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||P5;H.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let i;if(s?i=s(t,n):i=H.isURLSearchParams(t)?t.toString():new xd(t,n).toString(o),i){const r=e.indexOf("#");r!==-1&&(e=e.slice(0,r)),e+=(e.indexOf("?")===-1?"?":"&")+i;}return e}class Cp{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){H.forEach(this.handlers,function(o){o!==null&&t(o);});}}const ey={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false},I5=typeof URLSearchParams<"u"?URLSearchParams:xd,D5=typeof FormData<"u"?FormData:null,T5=typeof Blob<"u"?Blob:null,L5={isBrowser:true,classes:{URLSearchParams:I5,FormData:D5,Blob:T5},protocols:["http","https","file","blob","url","data"]},_d=typeof window<"u"&&typeof document<"u",Wu=typeof navigator=="object"&&navigator||void 0,M5=_d&&(!Wu||["ReactNative","NativeScript","NS"].indexOf(Wu.product)<0),O5=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",B5=_d&&window.location.href||"http://localhost",R5=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:_d,hasStandardBrowserEnv:M5,hasStandardBrowserWebWorkerEnv:O5,navigator:Wu,origin:B5},Symbol.toStringTag,{value:"Module"})),Ft={...R5,...L5};function F5(e,t){return wl(e,new Ft.classes.URLSearchParams,{visitor:function(n,o,s,i){return Ft.isNode&&H.isBuffer(n)?(this.append(o,n.toString("base64")),false):i.defaultVisitor.apply(this,arguments)},...t})}function N5(e){return H.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function U5(e){const t={},n=Object.keys(e);let o;const s=n.length;let i;for(o=0;o<s;o++)i=n[o],t[i]=e[i];return t}function ty(e){function t(n,o,s,i){let r=n[i++];if(r==="__proto__")return  true;const a=Number.isFinite(+r),l=i>=n.length;return r=!r&&H.isArray(s)?s.length:r,l?(H.hasOwnProp(s,r)?s[r]=[s[r],o]:s[r]=o,!a):((!s[r]||!H.isObject(s[r]))&&(s[r]=[]),t(n,o,s[r],i)&&H.isArray(s[r])&&(s[r]=U5(s[r])),!a)}if(H.isFormData(e)&&H.isFunction(e.entries)){const n={};return H.forEachEntry(e,(o,s)=>{t(N5(o),s,n,0);}),n}return null}function j5(e,t,n){if(H.isString(e))try{return (t||JSON.parse)(e),H.trim(e)}catch(o){if(o.name!=="SyntaxError")throw o}return (n||JSON.stringify)(e)}const _r={transitional:ey,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",s=o.indexOf("application/json")>-1,i=H.isObject(t);if(i&&H.isHTMLForm(t)&&(t=new FormData(t)),H.isFormData(t))return s?JSON.stringify(ty(t)):t;if(H.isArrayBuffer(t)||H.isBuffer(t)||H.isStream(t)||H.isFile(t)||H.isBlob(t)||H.isReadableStream(t))return t;if(H.isArrayBufferView(t))return t.buffer;if(H.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",false),t.toString();let a;if(i){if(o.indexOf("application/x-www-form-urlencoded")>-1)return F5(t,this.formSerializer).toString();if((a=H.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 i||s?(n.setContentType("application/json",false),j5(t)):t}],transformResponse:[function(t){const n=this.transitional||_r.transitional,o=n&&n.forcedJSONParsing,s=this.responseType==="json";if(H.isResponse(t)||H.isReadableStream(t))return t;if(t&&H.isString(t)&&(o&&!this.responseType||s)){const r=!(n&&n.silentJSONParsing)&&s;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}}};H.forEach(["delete","get","head","post","put","patch"],e=>{_r.headers[e]={};});const z5=H.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"]),H5=e=>{const t={};let n,o,s;return e&&e.split(`
`).forEach(function(r){s=r.indexOf(":"),n=r.substring(0,s).trim().toLowerCase(),o=r.substring(s+1).trim(),!(!n||t[n]&&z5[n])&&(n==="set-cookie"?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o);}),t},kp=Symbol("internals");function wi(e){return e&&String(e).trim().toLowerCase()}function Wr(e){return e===false||e==null?e:H.isArray(e)?e.map(Wr):String(e)}function V5(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 q5=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function eu(e,t,n,o,s){if(H.isFunction(o))return o.call(this,t,n);if(s&&(t=n),!!H.isString(t)){if(H.isString(o))return t.indexOf(o)!==-1;if(H.isRegExp(o))return o.test(t)}}function W5(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,o)=>n.toUpperCase()+o)}function K5(e,t){const n=H.toCamelCase(" "+t);["get","set","has"].forEach(o=>{Object.defineProperty(e,o+n,{value:function(s,i,r){return this[o].call(this,t,s,i,r)},configurable:true});});}let ln=class{constructor(t){t&&this.set(t);}set(t,n,o){const s=this;function i(a,l,c){const u=wi(l);if(!u)throw new Error("header name must be a non-empty string");const f=H.findKey(s,u);(!f||s[f]===void 0||c===true||c===void 0&&s[f]!==false)&&(s[f||l]=Wr(a));}const r=(a,l)=>H.forEach(a,(c,u)=>i(c,u,l));if(H.isPlainObject(t)||t instanceof this.constructor)r(t,n);else if(H.isString(t)&&(t=t.trim())&&!q5(t))r(H5(t),n);else if(H.isObject(t)&&H.isIterable(t)){let a={},l,c;for(const u of t){if(!H.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[c=u[0]]=(l=a[c])?H.isArray(l)?[...l,u[1]]:[l,u[1]]:u[1];}r(a,n);}else t!=null&&i(n,t,o);return this}get(t,n){if(t=wi(t),t){const o=H.findKey(this,t);if(o){const s=this[o];if(!n)return s;if(n===true)return V5(s);if(H.isFunction(n))return n.call(this,s,o);if(H.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=wi(t),t){const o=H.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 s=false;function i(r){if(r=wi(r),r){const a=H.findKey(o,r);a&&(!n||eu(o,o[a],a,n))&&(delete o[a],s=true);}}return H.isArray(t)?t.forEach(i):i(t),s}clear(t){const n=Object.keys(this);let o=n.length,s=false;for(;o--;){const i=n[o];(!t||eu(this,this[i],i,t,true))&&(delete this[i],s=true);}return s}normalize(t){const n=this,o={};return H.forEach(this,(s,i)=>{const r=H.findKey(o,i);if(r){n[r]=Wr(s),delete n[i];return}const a=t?W5(i):String(i).trim();a!==i&&delete n[i],n[a]=Wr(s),o[a]=true;}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return H.forEach(this,(o,s)=>{o!=null&&o!==false&&(n[s]=t&&H.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(s=>o.set(s)),o}static accessor(t){const o=(this[kp]=this[kp]={accessors:{}}).accessors,s=this.prototype;function i(r){const a=wi(r);o[a]||(K5(s,r),o[a]=true);}return H.isArray(t)?t.forEach(i):i(t),this}};ln.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);H.reduceDescriptors(ln.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return {get:()=>e,set(o){this[n]=o;}}});H.freezeMethods(ln);function tu(e,t){const n=this||_r,o=t||n,s=ln.from(o.headers);let i=o.data;return H.forEach(e,function(a){i=a.call(n,i,s.normalize(),t?t.status:void 0);}),s.normalize(),i}function ny(e){return !!(e&&e.__CANCEL__)}function ci(e,t,n){Re.call(this,e??"canceled",Re.ERR_CANCELED,t,n),this.name="CanceledError";}H.inherits(ci,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 G5(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function J5(e,t){e=e||10;const n=new Array(e),o=new Array(e);let s=0,i=0,r;return t=t!==void 0?t:1e3,function(l){const c=Date.now(),u=o[i];r||(r=c),n[s]=l,o[s]=c;let f=i,p=0;for(;f!==s;)p+=n[f++],f=f%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),c-r<t)return;const w=u&&c-u;return w?Math.round(p*1e3/w):void 0}}function Y5(e,t){let n=0,o=1e3/t,s,i;const r=(c,u=Date.now())=>{n=u,s=null,i&&(clearTimeout(i),i=null),e(...c);};return [(...c)=>{const u=Date.now(),f=u-n;f>=o?r(c,u):(s=c,i||(i=setTimeout(()=>{i=null,r(s);},o-f)));},()=>s&&r(s)]}const Sa=(e,t,n=3)=>{let o=0;const s=J5(50,250);return Y5(i=>{const r=i.loaded,a=i.lengthComputable?i.total:void 0,l=r-o,c=s(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:i,lengthComputable:a!=null,[t?"download":"upload"]:true};e(f);},n)},$p=(e,t)=>{const n=e!=null;return [o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},Sp=e=>(...t)=>H.asap(()=>e(...t)),Q5=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,X5=Ft.hasStandardBrowserEnv?{write(e,t,n,o,s,i){const r=[e+"="+encodeURIComponent(t)];H.isNumber(n)&&r.push("expires="+new Date(n).toGMTString()),H.isString(o)&&r.push("path="+o),H.isString(s)&&r.push("domain="+s),i===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 Z5(e){return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function eT(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function sy(e,t,n){let o=!Z5(t);return e&&(o||n==false)?eT(e,t):t}const Ep=e=>e instanceof ln?{...e}:e;function bs(e,t){t=t||{};const n={};function o(c,u,f,p){return H.isPlainObject(c)&&H.isPlainObject(u)?H.merge.call({caseless:p},c,u):H.isPlainObject(u)?H.merge({},u):H.isArray(u)?u.slice():u}function s(c,u,f,p){if(H.isUndefined(u)){if(!H.isUndefined(c))return o(void 0,c,f,p)}else return o(c,u,f,p)}function i(c,u){if(!H.isUndefined(u))return o(void 0,u)}function r(c,u){if(H.isUndefined(u)){if(!H.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:i,method:i,data:i,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)=>s(Ep(c),Ep(u),f,true)};return H.forEach(Object.keys({...e,...t}),function(u){const f=l[u]||s,p=f(e[u],t[u],u);H.isUndefined(p)&&f!==a||(n[u]=p);}),n}const iy=e=>{const t=bs({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:s,xsrfCookieName:i,headers:r,auth:a}=t;t.headers=r=ln.from(r),t.url=Zw(sy(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(H.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&&H.isFunction(o)&&(o=o(t)),o||o!==false&&Q5(t.url))){const c=s&&i&&X5.read(i);c&&r.set(s,c);}return t},tT=typeof XMLHttpRequest<"u",nT=tT&&function(e){return new Promise(function(n,o){const s=iy(e);let i=s.data;const r=ln.from(s.headers).normalize();let{responseType:a,onUploadProgress:l,onDownloadProgress:c}=s,u,f,p,w,g;function b(){w&&w(),g&&g(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u);}let v=new XMLHttpRequest;v.open(s.method.toUpperCase(),s.url,true),v.timeout=s.timeout;function S(){if(!v)return;const E=ln.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders()),M={data:!a||a==="text"||a==="json"?v.responseText:v.response,status:v.status,statusText:v.statusText,headers:E,config:e,request:v};oy(function(U){n(U),b();},function(U){o(U),b();},M),v=null;}"onloadend"in v?v.onloadend=S:v.onreadystatechange=function(){!v||v.readyState!==4||v.status===0&&!(v.responseURL&&v.responseURL.indexOf("file:")===0)||setTimeout(S);},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 P=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const M=s.transitional||ey;s.timeoutErrorMessage&&(P=s.timeoutErrorMessage),o(new Re(P,M.clarifyTimeoutError?Re.ETIMEDOUT:Re.ECONNABORTED,e,v)),v=null;},i===void 0&&r.setContentType(null),"setRequestHeader"in v&&H.forEach(r.toJSON(),function(P,M){v.setRequestHeader(M,P);}),H.isUndefined(s.withCredentials)||(v.withCredentials=!!s.withCredentials),a&&a!=="json"&&(v.responseType=s.responseType),c&&([p,g]=Sa(c,true),v.addEventListener("progress",p)),l&&v.upload&&([f,w]=Sa(l),v.upload.addEventListener("progress",f),v.upload.addEventListener("loadend",w)),(s.cancelToken||s.signal)&&(u=E=>{v&&(o(!E||E.type?new ci(null,e,v):E),v.abort(),v=null);},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const I=G5(s.url);if(I&&Ft.protocols.indexOf(I)===-1){o(new Re("Unsupported protocol "+I+":",Re.ERR_BAD_REQUEST,e));return}v.send(i||null);})},oT=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,s;const i=function(c){if(!s){s=true,a();const u=c instanceof Error?c:this.reason;o.abort(u instanceof Re?u:new ci(u instanceof Error?u.message:u));}};let r=t&&setTimeout(()=>{r=null,i(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(i):c.removeEventListener("abort",i);}),e=null);};e.forEach(c=>c.addEventListener("abort",i));const{signal:l}=o;return l.unsubscribe=()=>H.asap(a),l}},sT=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let o=0,s;for(;o<n;)s=o+t,yield e.slice(o,s),o=s;},iT=async function*(e,t){for await(const n of rT(e))yield*sT(n,t);},rT=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();}},Ap=(e,t,n,o)=>{const s=iT(e,t);let i=0,r,a=l=>{r||(r=true,o&&o(l));};return new ReadableStream({async pull(l){try{const{done:c,value:u}=await s.next();if(c){a(),l.close();return}let f=u.byteLength;if(n){let p=i+=f;n(p);}l.enqueue(new Uint8Array(u));}catch(c){throw a(c),c}},cancel(l){return a(l),s.return()}},{highWaterMark:2})},yl=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ry=yl&&typeof ReadableStream=="function",aT=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}},lT=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}),Pp=64*1024,Ku=ry&&ay(()=>H.isReadableStream(new Response("").body)),Ea={stream:Ku&&(e=>e.body)};yl&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!Ea[t]&&(Ea[t]=H.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 uT=async e=>{if(e==null)return 0;if(H.isBlob(e))return e.size;if(H.isSpecCompliantForm(e))return (await new Request(Ft.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(H.isArrayBufferView(e)||H.isArrayBuffer(e))return e.byteLength;if(H.isURLSearchParams(e)&&(e=e+""),H.isString(e))return (await aT(e)).byteLength},cT=async(e,t)=>{const n=H.toFiniteNumber(e.getContentLength());return n??uT(t)},dT=yl&&(async e=>{let{url:t,method:n,data:o,signal:s,cancelToken:i,timeout:r,onDownloadProgress:a,onUploadProgress:l,responseType:c,headers:u,withCredentials:f="same-origin",fetchOptions:p}=iy(e);c=c?(c+"").toLowerCase():"text";let w=oT([s,i&&i.toAbortSignal()],r),g;const b=w&&w.unsubscribe&&(()=>{w.unsubscribe();});let v;try{if(l&&lT&&n!=="get"&&n!=="head"&&(v=await cT(u,o))!==0){let M=new Request(t,{method:"POST",body:o,duplex:"half"}),z;if(H.isFormData(o)&&(z=M.headers.get("content-type"))&&u.setContentType(z),M.body){const[U,ie]=$p(v,Sa(Sp(l)));o=Ap(M.body,Pp,U,ie);}}H.isString(f)||(f=f?"include":"omit");const S="credentials"in Request.prototype;g=new Request(t,{...p,signal:w,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:o,duplex:"half",credentials:S?f:void 0});let I=await fetch(g,p);const E=Ku&&(c==="stream"||c==="response");if(Ku&&(a||E&&b)){const M={};["status","statusText","headers"].forEach(pe=>{M[pe]=I[pe];});const z=H.toFiniteNumber(I.headers.get("content-length")),[U,ie]=a&&$p(z,Sa(Sp(a),!0))||[];I=new Response(Ap(I.body,Pp,U,()=>{ie&&ie(),b&&b();}),M);}c=c||"text";let P=await Ea[H.findKey(Ea,c)||"text"](I,e);return !E&&b&&b(),await new Promise((M,z)=>{oy(M,z,{data:P,headers:ln.from(I.headers),status:I.status,statusText:I.statusText,config:e,request:g});})}catch(S){throw b&&b(),S&&S.name==="TypeError"&&/Load failed|fetch/i.test(S.message)?Object.assign(new Re("Network Error",Re.ERR_NETWORK,e,g),{cause:S.cause||S}):Re.from(S,S&&S.code,e,g)}}),Gu={http:S5,xhr:nT,fetch:dT};H.forEach(Gu,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t});}catch{}Object.defineProperty(e,"adapterName",{value:t});}});const Ip=e=>`- ${e}`,fT=e=>H.isFunction(e)||e===null||e===false,ly={getAdapter:e=>{e=H.isArray(e)?e:[e];const{length:t}=e;let n,o;const s={};for(let i=0;i<t;i++){n=e[i];let r;if(o=n,!fT(n)&&(o=Gu[(r=String(n)).toLowerCase()],o===void 0))throw new Re(`Unknown adapter '${r}'`);if(o)break;s[r||"#"+i]=o;}if(!o){const i=Object.entries(s).map(([a,l])=>`adapter ${a} `+(l===false?"is not supported by the environment":"is not available in the build"));let r=t?i.length>1?`since :
`+i.map(Ip).join(`
`):" "+Ip(i[0]):"as no adapter specified";throw new Re("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return o},adapters:Gu};function nu(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ci(null,e)}function Dp(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||_r.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 Tp={};bl.transitional=function(t,n,o){function s(i,r){return "[Axios v"+uy+"] Transitional option '"+i+"'"+r+(o?". "+o:"")}return (i,r,a)=>{if(t===false)throw new Re(s(r," has been removed"+(n?" in "+n:"")),Re.ERR_DEPRECATED);return n&&!Tp[r]&&(Tp[r]=true,console.warn(s(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,r,a):true}};bl.spelling=function(t){return (n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),true)};function pT(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 s=o.length;for(;s-- >0;){const i=o[s],r=t[i];if(r){const a=e[i],l=a===void 0||r(a,i,e);if(l!==true)throw new Re("option "+i+" must be "+l,Re.ERR_BAD_OPTION_VALUE);continue}if(n!==true)throw new Re("Unknown option "+i,Re.ERR_BAD_OPTION)}}const Kr={assertOptions:pT,validators:bl},Hn=Kr.validators;let us=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Cp,response:new Cp};}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{o.stack?i&&!String(o.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(o.stack+=`
`+i):o.stack=i;}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=bs(this.defaults,n);const{transitional:o,paramsSerializer:s,headers:i}=n;o!==void 0&&Kr.assertOptions(o,{silentJSONParsing:Hn.transitional(Hn.boolean),forcedJSONParsing:Hn.transitional(Hn.boolean),clarifyTimeoutError:Hn.transitional(Hn.boolean)},false),s!=null&&(H.isFunction(s)?n.paramsSerializer={serialize:s}:Kr.assertOptions(s,{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=i&&H.merge(i.common,i[n.method]);i&&H.forEach(["delete","get","head","post","put","patch","common"],g=>{delete i[g];}),n.headers=ln.concat(r,i);const a=[];let l=true;this.interceptors.request.forEach(function(b){typeof b.runWhen=="function"&&b.runWhen(n)===false||(l=l&&b.synchronous,a.unshift(b.fulfilled,b.rejected));});const c=[];this.interceptors.response.forEach(function(b){c.push(b.fulfilled,b.rejected);});let u,f=0,p;if(!l){const g=[Dp.bind(this),void 0];for(g.unshift(...a),g.push(...c),p=g.length,u=Promise.resolve(n);f<p;)u=u.then(g[f++],g[f++]);return u}p=a.length;let w=n;for(f=0;f<p;){const g=a[f++],b=a[f++];try{w=g(w);}catch(v){b.call(this,v);break}}try{u=Dp.call(this,w);}catch(g){return Promise.reject(g)}for(f=0,p=c.length;f<p;)u=u.then(c[f++],c[f++]);return u}getUri(t){t=bs(this.defaults,t);const n=sy(t.baseURL,t.url,t.allowAbsoluteUrls);return Zw(n,t.params,t.paramsSerializer)}};H.forEach(["delete","get","head","options"],function(t){us.prototype[t]=function(n,o){return this.request(bs(o||{},{method:t,url:n,data:(o||{}).data}))};});H.forEach(["post","put","patch"],function(t){function n(o){return function(i,r,a){return this.request(bs(a||{},{method:t,headers:o?{"Content-Type":"multipart/form-data"}:{},url:i,data:r}))}}us.prototype[t]=n(),us.prototype[t+"Form"]=n(true);});let hT=class cy{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i;});const o=this;this.promise.then(s=>{if(!o._listeners)return;let i=o._listeners.length;for(;i-- >0;)o._listeners[i](s);o._listeners=null;}),this.promise.then=s=>{let i;const r=new Promise(a=>{o.subscribe(a),i=a;}).then(s);return r.cancel=function(){o.unsubscribe(i);},r},t(function(i,r,a){o.reason||(o.reason=new ci(i,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(s){t=s;}),cancel:t}}};function mT(e){return function(n){return e.apply(null,n)}}function gT(e){return H.isObject(e)&&e.isAxiosError===true}const Ju={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(Ju).forEach(([e,t])=>{Ju[t]=e;});function dy(e){const t=new us(e),n=jw(us.prototype.request,t);return H.extend(n,us.prototype,t,{allOwnKeys:true}),H.extend(n,t,null,{allOwnKeys:true}),n.create=function(s){return dy(bs(e,s))},n}const vt=dy(_r);vt.Axios=us;vt.CanceledError=ci;vt.CancelToken=hT;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=mT;vt.isAxiosError=gT;vt.mergeConfig=bs;vt.AxiosHeaders=ln;vt.formToJSON=e=>ty(H.isHTMLForm(e)?new FormData(e):e);vt.getAdapter=ly.getAdapter;vt.HttpStatusCode=Ju;vt.default=vt;const{Axios:ZR,AxiosError:wT,CanceledError:eF,isCancel:tF,CancelToken:nF,VERSION:oF,all:sF,Cancel:iF,isAxiosError:rF,spread:aF,toFormData:lF,AxiosHeaders:uF,HttpStatusCode:cF,formToJSON:dF,getAdapter:fF,mergeConfig:pF}=vt;var ou,Lp;function yT(){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 bT=yT();const vT=km(bT),Cd="axios-retry";function fy(e){const t=["ERR_CANCELED","ECONNABORTED"];return e.response||!e.code||t.includes(e.code)?false:vT(e)}const py=["get","head","options"],xT=py.concat(["put","delete"]);function kd(e){return e.code!=="ECONNABORTED"&&(!e.response||e.response.status===429||e.response.status>=500&&e.response.status<=599)}function _T(e){return e.config?.method?kd(e)&&py.indexOf(e.config.method)!==-1:false}function hy(e){return e.config?.method?kd(e)&&xT.indexOf(e.config.method)!==-1:false}function my(e){return fy(e)||hy(e)}function $d(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 CT(e=0,t=void 0){return Math.max(0,$d(t))}function kT(e=0,t=void 0,n=100){const o=2**e*n,s=Math.max(o,$d(t)),i=s*.2*Math.random();return s+i}function $T(e=100){return (t=0,n=void 0)=>{const o=t*e;return Math.max(o,$d(n))}}const ST={retries:3,retryCondition:my,retryDelay:CT,shouldResetTimeout:false,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function ET(e,t){return {...ST,...t,...e[Cd]}}function Mp(e,t,n=false){const o=ET(e,t||{});return o.retryCount=o.retryCount||0,(!o.lastRequestTime||n)&&(o.lastRequestTime=Date.now()),e[Cd]=o,o}function AT(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 PT(e,t){const{retries:n,retryCondition:o}=e,s=(e.retryCount||0)<n&&o(t);if(typeof s=="object")try{return await s!==!1}catch{return  false}return s}async function IT(e,t,n,o){t.retryCount+=1;const{retryDelay:s,shouldResetTimeout:i,onRetry:r}=t,a=s(t.retryCount,n);if(AT(e,o),!i&&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 DT(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount);}const Go=(e,t)=>{const n=e.interceptors.request.use(s=>(Mp(s,t,true),s[Cd]?.validateResponse&&(s.validateStatus=()=>false),s)),o=e.interceptors.response.use(null,async s=>{const{config:i}=s;if(!i)return Promise.reject(s);const r=Mp(i,t);return s.response&&r.validateResponse?.(s.response)?s.response:await PT(r,s)?IT(e,r,s,i):(await DT(r,s),Promise.reject(s))});return {requestInterceptorId:n,responseInterceptorId:o}};Go.isNetworkError=fy;Go.isSafeRequestError=_T;Go.isIdempotentRequestError=hy;Go.isNetworkOrIdempotentRequestError=my;Go.exponentialDelay=kT;Go.linearDelay=$T;Go.isRetryableError=kd;const TT="pan115_api";var Aa=(e=>(e.evenly="evenly",e.asap="asap",e))(Aa||{});const gy={points:1,duration:1,execEvenly:true};function wy(e){return {clientId:TT,rateLimit:gy,msDelayAdjustment:30,...e}}function LT(e){const t=wy(e),n=vt.create({});Go(n,{retries:5,shouldResetTimeout:true,retryDelay:s=>(console.log(`[axios] Retry ${s}...`),s*1e3)});const o=new Bi.RateLimiterMemory(t.rateLimit);return n.interceptors.request.use(async s=>{try{const i=await o.consume(t.clientId);return s}catch(i){if(console.warn("[axios] RateLimiter:",i),i instanceof Bi.RateLimiterRes){const r=i.msBeforeNext+t.msDelayAdjustment;return console.log(`[axios] Delay ${r}ms for next request...`),await Mt(r),s}else throw new wT(i)}},s=>(console.warn("[axios] onRejected:",s),Promise.reject(s))),n}const yy=gt.basic;function MT(e){return {limiterDuration:1,limiterPoints:1,limitExecPolicy:Aa.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=MT(),t=await Xe.get(yy,e);return {...e,...t}}async function OT(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 BT(e){if(!e.offlineDialogEntry||!vn())return;console.log("[Cloud115 Enhancer] showOfflineDialogEntry");const t=await Kn("a#js_filter_btn"),n="background:#fffcea;",o="点击打开「云下载」页面",s=e.offlineDialogEntryLabel?`<span>${e.offlineDialogEntryLabel}</span>`:"",i=Sd('<i class="icon-operate ifo-linktask"></i>',e.offlineDialogEntryIconCustomized,e.offlineDialogEntryIcon),r=$(`<a href="javascript:;" class="button btn-line" title="${o}" style="${n}">
    ${i} ${s}
  </a>`);t.after(r),r.on("click",()=>{try{kt().Core.FileDialogApi.OpenTransferTabDialog("offline_task");}catch(a){console.warn("[showOfflineDialogEntry]",a),Q({title:"打开云下载窗口失败",text:a.message,icon:"error"});}});}async function RT(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;",s="点击跳转到「云下载」页面",i=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="${s}" tab_btn="wangpan" mode-tab="offline" style="${o}">
    ${r}
    ${i}
  </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 FT(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 s=await Kn("a#js_filter_btn"),i="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="${i}" title="${r}">
    ${l}${a}
  </a>`);s.after(c);}async function NT(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;",s="点击跳转到「星标」页面",i=e.favEntryLabel?`<span>${e.favEntryLabel}</span>`:"",r=$(`<a href="javascript:;" class="button btn-line" title="${s}" tab_btn="wangpan" mode-tab="{tab:'label',label_id:-1,show_label:1}" style="${o}">
    <i class="icon-operate ifo-fav"></i>
    ${i}
  </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 UT(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 jT(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 zT(e){window.top===window.self&&(await Mt(1e3),Yu(e),window.addEventListener("message",async t=>{const n=t.data.event,o=t.data.body;n===ot.basicConfigChange&&(console.log("[Cloud115 Enhancer] basicConfigChange"),Yu(o));}));}let Mi=null;async function HT(){Mi&&clearTimeout(Mi),Mi=setTimeout(async()=>{const e=await vl();Yu(e);},5e3);}async function Yu(e){Mi&&clearTimeout(Mi);const t=async(n,o)=>{const s=await Kn('[rel="user_id"]',100);s.data("origin")||s.data("origin",s.text()),o?s.text(s.data("origin")):s.text(n.fakeAccountId);const i=await Kn('[rel="user_name"]',100);i.data("origin")||i.data("origin",$(i[0]).text()),o?i.text(i.data("origin")):i.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&&HT();}}const VT='@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(VT);async function qT(){const e=await vl(),{host:t}=location;/115\.com$/.test(t)&&(jT(e),RT(e),BT(e),FT(e),NT(e),UT(e),zT(e));}const by=Symbol("addTab"),vy=Symbol("updateTab"),xy=Symbol("deleteTab"),_y=Symbol("tabsProvider");function Rr(e,t){const n=Ei(e,t);if(typeof n>"u")throw new Error(`Could not resolve ${e.description}`);return n}const WT=["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=W(false),s=Rr(_y),i=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(()=>s.activeTabHash,()=>{o.value=f.value===s.activeTabHash;}),He(()=>Object.assign({},n),()=>{r(c,{name:n.name,header:n.prefix+n.name+n.suffix,isDisabled:n.isDisabled,hash:f.value,index:s.tabs.length,computedId:c,paneId:u,navItemClass:n.navItemClass,navItemLinkClass:n.navItemLinkClass});}),$t(()=>{i({name:n.name,header:l,isDisabled:n.isDisabled,hash:f.value,index:s.tabs.length,computedId:c,paneId:u,navItemClass:n.navItemClass,navItemLinkClass:n.navItemLinkClass});}),eg(()=>{a(c);}),t({header:l,computedId:c,paneId:u,hash:f,isActive:o}),(p,w)=>K((_(),A("section",{ref:"tab",id:u,"data-tab-id":te(c),"aria-hidden":!o.value,class:Te(e.panelClass),role:"tabpanel",tabindex:"-1"},[Ge(p.$slots,"default")],10,WT)),[[Wt,o.value]])}});class KT{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 s=new Date().getTime(),i=new Date(s+o*6e4);localStorage.setItem(t,JSON.stringify({value:n,expires:i}));}}const Op=new KT,GT=["id"],JT=["aria-controls","aria-selected","href","onClick","innerHTML"],YT=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,s=Qa({activeTabHash:"",lastActiveTabHash:"",tabs:[]});vi(_y,s),vi(by,l=>{s.tabs.push(l);}),vi(vy,(l,c)=>{const u=s.tabs.findIndex(f=>f.computedId===l);c.isActive=s.tabs[u].isActive,s.tabs[u]=c;}),vi(xy,l=>{const c=s.tabs.findIndex(u=>u.computedId===l);s.tabs.splice(c,1);});const i=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(s.lastActiveTabHash===u.hash){n("clicked",{tab:u});return}s.tabs.forEach(f=>{f.isActive=f.hash===u.hash;}),n("changed",{tab:u}),s.lastActiveTabHash=s.activeTabHash=u.hash,!(o.cacheLifetime<=0)&&Op.set(i.value,u.hash,o.cacheLifetime);}},a=l=>s.tabs.find(c=>c.hash===l);return Ht(()=>{if(s.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=Op.get(i.value);if(l!==null&&a(l)){r(l);return}}if(o.options.defaultTabHash&&a("#"+o.options.defaultTabHash)){r("#"+o.options.defaultTabHash);return}r(s.tabs[0].hash);}}),t({...a_(s),selectTab:r,findTab:a}),(l,c)=>(_(),A("div",{class:Te(e.wrapperClass),id:e.id},[d("ul",{role:"tablist",class:Te(e.navClass)},[(_(true),A(Se,null,je(s.tabs,(u,f)=>{var p,w;return _(),A("li",{key:f,class:Te([(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:Te([(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:g=>r(u.hash,g),innerHTML:u.header,tabindex:"0"},null,10,JT)],2)}),128))],2),d("div",{class:Te(e.panelsWrapperClass)},[Ge(l.$slots,"default")],2)],10,GT))}});function Qu(e,t,n,o){return e<t||e>n?o:e}const QT={class:"pure-control-group"},XT=["for"],ZT=["id","checked"],eL={class:"pure-form-message text-success"},tL=["value"],nL=["for"],oL=["id","checked"],sL=["value"],iL=["innerHTML"],rL="支持HTTP链接、base64数据或SVG XML",aL=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(s,i){return !s||!i?"":i.startsWith("<svg")?`<span class="ce-func-btn-icon-svg">${i}</span>`:`<img src="${i}" class="ce-func-btn-icon" alt="自定义图标" />`}const o=Ke(()=>n(t.iconCustomized,t.icon));return console.log("ButtonConfigGroup props:",t),(s,i)=>(_(),A("div",QT,[d("label",{for:s.id},F(s.label),9,XT),d("input",{id:s.id,type:"checkbox",checked:t.enabled,onChange:i[0]||(i[0]=r=>s.$emit("update:enabled",r.target.checked))},null,40,ZT),d("div",eL,[T(F(s.description)+" 按钮文本为 ",1),d("input",{value:t.buttonLabel||"",onInput:i[1]||(i[1]=r=>s.$emit("update:buttonLabel",r.target.value)),class:"input-small",placeholder:"可以为空"},null,40,tL),i[4]||(i[4]=T("  , ",-1)),d("label",{for:`${s.id}_iconCustomized`,style:{width:"auto"}},"自定义图标",8,nL),d("input",{id:`${s.id}_iconCustomized`,type:"checkbox",checked:t.iconCustomized,onChange:i[2]||(i[2]=r=>s.$emit("update:iconCustomized",r.target.checked))},null,40,oL),i[5]||(i[5]=T("   ",-1)),t.iconCustomized?(_(),A("input",{key:0,value:t.icon||"",onInput:i[3]||(i[3]=r=>s.$emit("update:icon",r.target.value)),class:"pure-input",placeholder:"支持HTTP链接、base64数据或SVG XML",title:rL},null,40,sL)):fe("",true),i[6]||(i[6]=T("   ",-1)),t.iconCustomized&&t.icon?(_(),A("span",{key:1,innerHTML:o.value},null,8,iL)):fe("",true)])]))}}),su=Pe(aL,[["__scopeId","data-v-f3bc02fe"],["__file","ButtonConfigGroup.vue"]]),lL={class:"ce-config ce-basic-config"},uL={class:"pure-form pure-form-aligned"},cL={class:"pure-control-group"},dL=["value"],fL=["value"],pL={class:"pure-control-group"},hL={class:"pure-form-message text-success"},mL={class:"pure-control-group"},gL={class:"pure-control-group"},wL={class:"pure-control-group"},yL={class:"pure-control-group"},bL={class:"pure-control-group"},vL={class:"pure-control-group"},xL={class:"avatar-preview"},_L=["src"],CL={class:"pure-control-group"},kL=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>vl()),t=await t,n(),t)),s=true;$t(async()=>{});function i(c){const u=(f,p)=>Math.floor(Qu(f,1,p,1));return c.limiterDuration=u(c.limiterDuration,300),c.limiterPoints=u(c.limiterPoints,3e3),c}He(o,lt(async c=>{i(c),await OT(c),Q({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 Y.fire({title:c,text:u,icon:f,showCancelButton:true,confirmButtonText:"确认"});return p}async function a(){if(await r("导出配置","是否确认导出当前配置?"))try{await Zy(),Q({icon:"success",title:"导出成功"});}catch(c){Y.fire(c.toString());}}async function l(){if(await r("导入配置","导入后将覆盖当前配置,是否继续?"))try{const c=await eb();console.log(c),Os.fire({icon:"success",title:"导入成功,刷新页面后生效。将在5秒后自动刷新页面...",timer:5e3}),setTimeout(()=>{window.location.reload();},5e3);}catch(c){Y.fire({title:"导入失败",html:c.toString()+'<br/><p class="text-danger">必须有字段 "_schema": "pan115_enhancer_configs" 。</p>'});}}return (c,u)=>(_(),A("div",lL,[d("form",uL,[d("fieldset",null,[u[47]||(u[47]=d("legend",null,"API",-1)),d("div",cL,[u[25]||(u[25]=d("label",null,"全局请求频率控制",-1)),te(s)?fe("",true):(_(),A(Se,{key:0},[K(d("select",{"onUpdate:modelValue":u[0]||(u[0]=f=>o.value.limitExecPolicy=f)},[d("option",{value:te(Aa).asap},"尽快消耗",8,dL),d("option",{value:te(Aa).evenly},"尽量均匀",8,fL)],512),[[gn,o.value.limitExecPolicy]]),u[24]||(u[24]=T(" 地 ",-1))],64)),u[26]||(u[26]=T(" 在 ",-1)),K(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]=T(" 秒内最多请求 ",-1)),K(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]=T(" 次 ",-1)),u[29]||(u[29]=d("div",{class:"pure-form-message text-success"},[T(" 默认 1 秒内最多 1 次。"),d("span",{class:"text-warning"},"请填写整数数值。")],-1))]),u[48]||(u[48]=d("legend",null,"UI优化",-1)),se(su,{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"]),se(su,{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"]),se(su,{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",pL,[u[31]||(u[31]=d("label",{for:"basic_showFavEntry"},"显示星标入口按钮",-1)),K(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",hL,[u[30]||(u[30]=T(" 在「网盘」页面顶部工具栏显示「星标」入口按钮。 按钮文本为 ",-1)),K(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",mL,[u[32]||(u[32]=d("label",{for:"basic_hideMusicEntry"},'隐藏"我听"入口按钮',-1)),K(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]=T("      ",-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,"导入说明:"),T(" 如有导入部分配置的需求,可以自行编辑json配置文件,只保留需要的配置key(仅限第一级),但必须保留`_`开头的key。 ")],-1)),u[38]||(u[38]=d("br",null,null,-1))]),u[50]||(u[50]=d("legend",null,"隐私保护",-1)),d("div",gL,[u[39]||(u[39]=d("label",{for:"basic_hideWatermark"},"隐藏水印",-1)),K(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",wL,[u[41]||(u[41]=d("label",{for:"basic_fakeAccountEnabled"},"隐藏身份",-1)),K(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",yL,[u[43]||(u[43]=d("label",null,"账号ID",-1)),K(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",bL,[u[44]||(u[44]=d("label",null,"用户名",-1)),K(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",vL,[u[45]||(u[45]=d("label",null,"头像",-1)),K(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",xL,[o.value.fakeAccountAvatar?(_(),A("img",{key:0,src:o.value.fakeAccountAvatar,alt:"头像预览",width:"20",height:"20"},null,8,_L)):fe("",true)])]),d("div",CL,[u[46]||(u[46]=d("label",null,"VIP等级",-1)),K(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]])])])])]))}}),$L=Pe(kL,[["__file","Config.vue"]]),SL={class:"pure-form pure-form-aligned"},EL=["disabled"],AL={class:"pure-control-group"},PL={class:"pure-control-group"},IL={class:"pure-control-group"},DL=["value"],TL={style:{width:"auto"}},LL={class:"text-success text-ul"},ML={class:"pure-control-group"},OL=xe({__name:"ConfigItem",props:{config:{},deletable:{type:Boolean}},emits:["change","delete","activate"],setup(e,{emit:t}){const n=e,o=t,s={content:"如果是macOS版,建议平台选「macos」,可以避免播放链接可能无效的问题,「版本小于 0.8.16」选项同理。"};$t(async()=>{});async function i(){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=T_("tooltip");return _(),A("div",{class:Te(["ce-clouddrive-config-item",{active:a.config.active}])},[d("form",SL,[d("fieldset",null,[d("legend",null,[d("button",{type:"button",class:Te(["pure-button button-small",[a.config.active?"button-success":"pure-button-primary"]]),onClick:i,disabled:a.config.active},F(a.config.active?"当前使用该配置":"使用该配置"),11,EL),a.deletable?(_(),A("button",{key:0,type:"button",class:"pure-button button-error button-small",onClick:r}," 删除 ")):fe("",true)]),d("div",AL,[l[5]||(l[5]=d("label",null,[d("span",{class:"text-danger"},"*"),T(" 地址")],-1)),K(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",PL,[l[6]||(l[6]=d("label",null,[d("span",{class:"text-danger"},"*"),T(" 资源根路径")],-1)),K(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",IL,[l[9]||(l[9]=d("label",null,[d("span",{class:"text-danger"},"*"),T(" 平台")],-1)),K(d("select",{"onUpdate:modelValue":l[2]||(l[2]=u=>a.config.platform=u)},[(_(true),A(Se,null,je(te(Mo),u=>(_(),A("option",{key:u,value:u},F(u),9,DL))),128))],512),[[gn,a.config.platform]]),l[10]||(l[10]=T("   ",-1)),d("label",TL,[K(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]=T(" 版本小于 0.8.16 ",-1))]),l[11]||(l[11]=T("   ",-1)),K((_(),A("span",LL,l[8]||(l[8]=[T("说明",-1)]))),[[c,s]])]),d("div",ML,[l[12]||(l[12]=d("label",null,"备注",-1)),K(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)}}}),BL=Pe(OL,[["__file","ConfigItem.vue"]]),RL={class:"ce-config ce-clouddrive-config"},FL={class:"ce-list"},NL={class:"ce-actions"},UL=["disabled"],jL=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>Yh()),t=await t,n(),t));$t(async()=>{});async function s(){await jd(o.value),Q({icon:"success",title:"设置已保存。",timer:800,position:"top-end"});}async function i(){o.value.push(kc());}async function r(l,c){const{isConfirmed:u}=await Y.fire({icon:"warning",html:`确定要删除第 ${c+1} 个配置「${l.url}」吗?`});u&&(o.value.splice(c,1),await s(),Q({icon:"success",title:`「${l.url}」已删除!`}));}async function a(l,c){l.forEach((u,f)=>{u.active=f===c;}),await jd(l),Q({icon:"success",title:"设置已保存。",timer:800,position:"top-end"});}return (l,c)=>(_(),A("div",RL,[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"),T(" 是一个强大的多云盘管理工具,为用户提供包含云盘本地挂载的一站式的多云盘解决方案。 ")]),d("p",null,"本脚本主要是借助CloudDrive实现原码视频播放的功能(具体可以在「播放菜单」面板中查看)。")],-1)),d("div",FL,[(_(true),A(Se,null,je(o.value,(u,f)=>(_(),tt(BL,{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",NL,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:s,disabled:!o.value.length}," 保存全部配置 ",8,UL),c[0]||(c[0]=T("      ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:i}," + 添加配置 ")])]))}}),zL=Pe(jL,[["__file","Config.vue"]]),HL={class:"ce-config ce-list-config"},VL={class:"pure-form pure-form-aligned"},qL={class:"pure-control-group"},WL={class:"pure-control-group"},KL={class:"pure-control-group"},GL={class:"pure-control-group"},JL={class:"pure-control-group"},YL={class:"pure-control-group"},QL={class:"pure-control-group"},XL={class:"pure-control-group"},ZL={class:"pure-control-group"},eM={class:"pure-control-group"},tM={class:"pure-control-group"},nM={class:"pure-control-group"},oM={class:"pure-control-group"},sM={class:"pure-control-group"},iM={class:"pure-control-group"},rM={class:"pure-control-group"},aM={class:"pure-control-group"},lM={class:"pure-control-group"},uM={class:"pure-control-group"},cM={class:"pure-control-group"},dM={class:"pure-control-group"},fM={class:"pure-control-group"},pM={class:"pure-control-group"},hM={class:"pure-control-group"},Bp="按下 Command/Ctrl 键点击文件sha1时触发查找重复文件",Rp="鼠标悬浮触发",Fp="鼠标悬浮触发",mM=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>li()),t=await t,n(),t));$t(async()=>{}),He(o,lt(async i=>{await Z2(i),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.listConfigChange,body:JSON.parse(JSON.stringify(i))});},500),{deep:true});async function s(){Y.fire({title:"快捷键说明",html:`<pre style="font-size:12px;">${gw.replace(/==/g,"=".repeat(32))}</pre>`,showCloseButton:true,showConfirmButton:false,width:720,customClass:{popup:"ce-swal-text-left"}});}return (i,r)=>(_(),A("div",HL,[d("form",VL,[d("fieldset",null,[r[40]||(r[40]=d("legend",null,"文件大小相关",-1)),d("div",qL,[r[29]||(r[29]=d("label",{for:"sizeSorter"},"大小排序",-1)),K(d("input",{id:"sizeSorter",type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=a=>o.value.sizeSorter=a)},null,512),[[ye,o.value.sizeSorter]]),r[30]||(r[30]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「大小」列头部增加「排序」按钮,可以获取文件夹的大小,然后进行排序。"),d("div",null,"请注意该功能只会对当前加载的文件进行排序,如果有多页文件并需要对全部文件进行排序,请先点击「加载全部」后再使用该排序功能。")],-1))]),d("div",WL,[r[31]||(r[31]=d("label",{for:"showBatchFolderSizeButton"},"批量获取文件夹大小",-1)),K(d("input",{id:"showBatchFolderSizeButton",type:"checkbox","onUpdate:modelValue":r[1]||(r[1]=a=>o.value.showBatchFolderSizeButton=a)},null,512),[[ye,o.value.showBatchFolderSizeButton]]),r[32]||(r[32]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「大小」列头部增加「大小」按钮,可以获取文件夹的大小。"),d("div",null,"请注意该功能只会对当前加载的文件夹进行获取,如果有多页,请先点击「加载全部」后再使用该功能。")],-1))]),d("div",KL,[r[33]||(r[33]=d("label",{for:"showFolderSizeButton"},"显示文件夹获取大小按钮",-1)),K(d("input",{id:"showFolderSizeButton",type:"checkbox","onUpdate:modelValue":r[2]||(r[2]=a=>o.value.showFolderSizeButton=a)},null,512),[[ye,o.value.showFolderSizeButton]]),r[34]||(r[34]=T("    ",-1)),d("small",{onClick:r[3]||(r[3]=a=>o.value.hoverShowFolderSize=!o.value.hoverShowFolderSize),class:Te(["ce-label",{"ce-label-success":o.value.hoverShowFolderSize}])},F(o.value.hoverShowFolderSize?`✓ ${Rp}(已启用)`:`× ${Rp}(未启用)`),3),r[35]||(r[35]=d("div",{class:"pure-form-message text-success"}," 在官方的「大小」列增加「大小」按钮,点击按钮可以获取单个文件夹的大小。 ",-1))]),d("div",GL,[r[36]||(r[36]=d("label",{for:"showQuickViewButton"},[T(" 显示快速查看按钮 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),K(d("input",{id:"showQuickViewButton",type:"checkbox","onUpdate:modelValue":r[4]||(r[4]=a=>o.value.showQuickViewButton=a)},null,512),[[ye,o.value.showQuickViewButton]]),r[37]||(r[37]=T("    ",-1)),d("small",{onClick:r[5]||(r[5]=a=>o.value.hoverShowQuickView=!o.value.hoverShowQuickView),class:Te(["ce-label",{"ce-label-success":o.value.hoverShowQuickView}])},F(o.value.hoverShowQuickView?`✓ ${Fp}(已启用)`:`× ${Fp}(未启用)`),3),r[38]||(r[38]=d("div",{class:"pure-form-message text-success"}," 在官方的「大小」列增加「查看」按钮,点击按钮可以在当前页面小窗口快速查看目录文件列表。 ",-1))]),d("div",JL,[r[39]||(r[39]=d("label",{for:"showInfoOnQuickView"}," 快速查看里显示文件信息 ",-1)),K(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[57]||(r[57]=d("legend",null,"列表显示与操作",-1)),d("div",YL,[r[41]||(r[41]=d("label",{for:"showSha1"},"显示文件SHA1",-1)),K(d("input",{id:"showSha1",type:"checkbox","onUpdate:modelValue":r[7]||(r[7]=a=>o.value.showSha1=a)},null,512),[[ye,o.value.showSha1]]),r[42]||(r[42]=T("    ",-1)),d("small",{onClick:r[8]||(r[8]=a=>o.value.clickSha1WithCtrlToFindRepeat=!o.value.clickSha1WithCtrlToFindRepeat),class:Te(["ce-label",{"ce-label-success":o.value.clickSha1WithCtrlToFindRepeat}])},F(o.value.clickSha1WithCtrlToFindRepeat?`✓ ${Bp}(已启用)`:`× ${Bp}(未启用)`),3),r[43]||(r[43]=d("div",{class:"pure-form-message text-success"}," 在文件名下方显示文件SHA1,点击可以复制。 ",-1))]),d("div",QL,[r[44]||(r[44]=d("label",{for:"followHistoryState"}," 文件列表跟随页面前进后退 ",-1)),K(d("input",{id:"followHistoryState",type:"checkbox","onUpdate:modelValue":r[9]||(r[9]=a=>o.value.followHistoryState=a)},null,512),[[ye,o.value.followHistoryState]]),r[45]||(r[45]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-success"}," 默认情况下,点击浏览器的前进或后退,页面链接中的目录ID虽然会发生变化,但文件列表并没有随之更新。 这个功能尝试解决这个问题。 ")],-1))]),d("div",XL,[r[46]||(r[46]=d("label",{for:"showOnlyFileFilter"}," 显示「仅文件」筛选 ",-1)),K(d("input",{id:"showOnlyFileFilter",type:"checkbox","onUpdate:modelValue":r[10]||(r[10]=a=>o.value.showOnlyFileFilter=a)},null,512),[[ye,o.value.showOnlyFileFilter]]),r[47]||(r[47]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-success"}," 筛选当前目录下全部文件。 ")],-1))]),d("div",ZL,[r[48]||(r[48]=d("label",{for:"fileFilterExtensions"}," 自定义筛选扩展名 ",-1)),K(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[49]||(r[49]=d("div",{class:"pure-form-message text-success"}," 多个扩展名用英文逗号分隔,设置后在文件列表顶部筛选栏会显示对应的扩展名筛选按钮。 点击按钮可以筛选出当前目录下对应扩展名的文件。 ",-1))]),d("div",eM,[r[52]||(r[52]=d("label",{for:"fixShortcut"},[T(" 修复文件列表快捷键 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),K(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[50]||(r[50]=T(" 文件列表按下Ctrl+/显示了一些快捷键,但大部分并未生效,该功能尝试修复这些快捷键。 ",-1)),d("a",{href:"javascript:void(0)",onClick:s,class:"pure-button button-small"},"💡 更完整的快捷键说明"),r[51]||(r[51]=d("h3",{class:"text-danger"},"⚠️ 副作用: 不能使用Ctrl+C复制页面上的文本(不影响输入框里复制),如有此需求,请使用鼠标右键进行复制。",-1))])]),d("div",tM,[r[53]||(r[53]=d("label",{for:"enhanceLocationLinks"},' 优化"所在位置"链接 ',-1)),K(d("input",{id:"enhanceLocationLinks",type:"checkbox","onUpdate:modelValue":r[13]||(r[13]=a=>o.value.enhanceLocationLinks=a)},null,512),[[ye,o.value.enhanceLocationLinks]]),r[54]||(r[54]=d("div",{class:"pure-form-message text-success"},' 启用该选项后,可以复制链接,或通过"鼠标中键"或"Ctrl+单击"在新标签页中打开。 相关页面: 一键排重详情、SHA1查重结果页、搜索结果页、最近上传、最近接收和最近操作。 ',-1))]),d("div",nM,[r[55]||(r[55]=d("label",{for:"enhanceRenameInput"},[T(' 优化"重命名文件"输入框 '),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),K(d("input",{id:"enhanceRenameInput",type:"checkbox","onUpdate:modelValue":r[14]||(r[14]=a=>o.value.enhanceRenameInput=a)},null,512),[[ye,o.value.enhanceRenameInput]]),r[56]||(r[56]=d("div",{class:"pure-form-message text-success"}," 使用多行输入框替代单行输入框,方便查看和编辑长文件名。 ",-1))])]),d("fieldset",null,[r[66]||(r[66]=d("legend",null,"目录操作增强",-1)),d("div",oM,[r[58]||(r[58]=d("label",{for:"showOpenDirContextMenu"},'显示"目录功能菜单"按钮',-1)),K(d("input",{id:"showOpenDirContextMenu",type:"checkbox","onUpdate:modelValue":r[15]||(r[15]=a=>o.value.showOpenDirContextMenu=a)},null,512),[[ye,o.value.showOpenDirContextMenu]]),r[59]||(r[59]=T("    ",-1)),d("small",{onClick:r[16]||(r[16]=a=>o.value.hoverShowDirContextMenu=!o.value.hoverShowDirContextMenu),class:Te(["ce-label",{"ce-label-success":o.value.hoverShowDirContextMenu}]),title:"鼠标悬浮在按钮代替点击操作"},F(o.value.hoverShowDirContextMenu?"✓ 鼠标悬浮触发(已启用)":"× 鼠标悬浮触发(未启用)"),3),r[60]||(r[60]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「文件名」列头部增加「目录功能菜单」按钮,点击即可打开当前目录的右键菜单。")],-1))]),d("div",sM,[r[61]||(r[61]=d("label",{for:"showCreateDirButton"},'显示"新建文件夹"按钮',-1)),K(d("input",{id:"showCreateDirButton",type:"checkbox","onUpdate:modelValue":r[17]||(r[17]=a=>o.value.showCreateDirButton=a)},null,512),[[ye,o.value.showCreateDirButton]]),r[62]||(r[62]=T("    ",-1)),d("small",{onClick:r[18]||(r[18]=a=>o.value.hideTopCreateButton=!o.value.hideTopCreateButton),class:Te(["ce-label",{"ce-label-success":o.value.hideTopCreateButton}]),title:"隐藏顶部「新建」按钮"},F(o.value.hideTopCreateButton?"✓ 隐藏顶部「新建」按钮(已启用)":"× 隐藏顶部「新建」按钮(未启用)"),3),r[63]||(r[63]=d("div",{class:"pure-form-message text-success"},[d("div",null,"在官方的「文件名」列头部增加「新建文件夹」按钮。可以隐藏顶部「新建」按钮,页面左侧的「新建」中也有新建文档按钮。")],-1))]),d("div",iM,[r[64]||(r[64]=d("label",{for:"claimSelectedAfterCreateDir"}," 移动选中文件到新文件夹 ",-1)),K(d("input",{id:"claimSelectedAfterCreateDir",type:"checkbox","onUpdate:modelValue":r[19]||(r[19]=a=>o.value.claimSelectedAfterCreateDir=a)},null,512),[[ye,o.value.claimSelectedAfterCreateDir]]),r[65]||(r[65]=d("div",{class:"pure-form-message text-success text-linethrough"},[d("b",null,"启用后如果先选中文件,然后创建新文件夹,将会自动把选中文件移动到新文件夹。"),T(" 该选项可以在创建文件夹对话框里临时修改。 ")],-1))])]),d("fieldset",null,[r[71]||(r[71]=d("legend",null,"路径栏增强",-1)),d("div",rM,[r[67]||(r[67]=d("label",{for:"showCopyButtonOnPathBar"},"在路径栏显示复制按钮",-1)),K(d("input",{id:"showCopyButtonOnPathBar",type:"checkbox","onUpdate:modelValue":r[20]||(r[20]=a=>o.value.showCopyButtonOnPathBar=a)},null,512),[[ye,o.value.showCopyButtonOnPathBar]]),r[68]||(r[68]=d("div",{class:"pure-form-message text-success"}," 点击后,复制当前路径到剪贴板。 ",-1))]),d("div",aM,[r[69]||(r[69]=d("label",{for:"showGotoButtonOnPathBar"},[T(" 在路径栏显示前往按钮 "),d("small",{class:"ce-label"},"DEV")],-1)),K(d("input",{id:"showGotoButtonOnPathBar",type:"checkbox","onUpdate:modelValue":r[21]||(r[21]=a=>o.value.showGotoButtonOnPathBar=a)},null,512),[[ye,o.value.showGotoButtonOnPathBar]]),r[70]||(r[70]=d("div",{class:"pure-form-message text-success"}," 点击后,路径栏下方会显示路径输入框,输入路径后按回车即可前往该路径。 ",-1))])]),d("fieldset",null,[r[78]||(r[78]=d("legend",null,"刷新行为",-1)),d("div",lM,[r[72]||(r[72]=d("label",{for:"noUpdateDirAfterRename"}," 重命名后不刷新文件列表 ",-1)),K(d("input",{id:"noUpdateDirAfterRename",type:"checkbox","onUpdate:modelValue":r[22]||(r[22]=a=>o.value.noUpdateDirAfterRename=a)},null,512),[[ye,o.value.noUpdateDirAfterRename]]),r[73]||(r[73]=d("div",{class:"pure-form-message text-success"}," 仅支持单个文件或目录的重命名。在使用当前目录增强菜单项「重命名文件夹」时会忽略该选项。 ",-1))]),d("div",uM,[r[74]||(r[74]=d("label",{for:"noReloadAfterMove"}," 移动后不刷新文件列表 ",-1)),K(d("input",{id:"noReloadAfterMove",type:"checkbox","onUpdate:modelValue":r[23]||(r[23]=a=>o.value.noReloadAfterMove=a)},null,512),[[ye,o.value.noReloadAfterMove]]),r[75]||(r[75]=d("div",{class:"pure-form-message text-success"},[d("b",null,"启用后如果进行了移动操作,列表的全选会受影响,如已选数量不准确。"),d("br"),d("b",{class:"text-danger"},"该功能主要目的是持续高效地在进行移动操作,如果在移动后还需要其他操作,请记得手动刷新列表!")],-1))]),d("div",cM,[r[76]||(r[76]=d("label",{for:"noGotoAfterCreateDir"},[T(" 新建文件夹后不跳转 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),K(d("input",{type:"checkbox",id:"noGotoAfterCreateDir","onUpdate:modelValue":r[24]||(r[24]=a=>o.value.noGotoAfterCreateDir=a)},null,512),[[ye,o.value.noGotoAfterCreateDir]]),r[77]||(r[77]=d("div",{class:"pure-form-message text-success"},[d("div",null,[T("新建文件夹后,默认会跳转到新文件夹。开启此功能后,新文件夹会直接渲染在列表中。可搭配"),d("b",null,'"移动选中文件到新文件夹"'),T("使用。")])],-1))])]),d("fieldset",null,[r[85]||(r[85]=d("legend",null,"拖拽行为",-1)),d("div",dM,[r[79]||(r[79]=d("label",{for:"dragToQuickEntry"}," 支持拖动文件到快捷入口 ",-1)),K(d("input",{id:"dragToQuickEntry",type:"checkbox","onUpdate:modelValue":r[25]||(r[25]=a=>o.value.dragToQuickEntry=a)},null,512),[[ye,o.value.dragToQuickEntry]]),r[80]||(r[80]=d("div",{class:"pure-form-message text-success"},[T(" 可以从文件列表拖动文件到快捷入口,实现移动操作。 "),d("b",{class:"text-danger"},"选中文件时,顶部菜单可能会遮挡快捷入口,可按`Ctrl`键临时隐藏顶部菜单,或者开启「拖动文件时隐藏顶部菜单」选项。")],-1))]),d("div",fM,[r[81]||(r[81]=d("label",{for:"hideSelectionMenuOnDrag"},[T(" 拖动文件时隐藏顶部菜单 "),d("small",{class:"ce-label ce-label-warning"},"BETA")],-1)),K(d("input",{id:"hideSelectionMenuOnDrag",type:"checkbox","onUpdate:modelValue":r[26]||(r[26]=a=>o.value.hideSelectionMenuOnDrag=a)},null,512),[[ye,o.value.hideSelectionMenuOnDrag]]),r[82]||(r[82]=T("     ",-1)),r[83]||(r[83]=d("span",{class:"text-warning"},"该功能可能会影响页面性能,如发现该情况请先关闭并反馈🤝",-1)),r[84]||(r[84]=d("div",{class:"pure-form-message text-success"}," 选中文件时,顶部菜单可能会遮挡快捷入口等元素,开启此选项后,在拖动文件时会自动隐藏顶部菜单。 ",-1))])]),d("fieldset",null,[r[91]||(r[91]=d("legend",null,"其他功能",-1)),d("div",pM,[r[87]||(r[87]=d("label",{for:"fileSelectorDefaultView"},"文件选择器默认视图",-1)),K(d("select",{id:"fileSelectorDefaultView","onUpdate:modelValue":r[27]||(r[27]=a=>o.value.fileSelectorDefaultView=a)},r[86]||(r[86]=[d("option",{value:"view"},"大图标",-1),d("option",{value:"list"},"列表",-1),d("option",{value:"_"},"系统默认",-1)]),512),[[gn,o.value.fileSelectorDefaultView]]),r[88]||(r[88]=d("div",{class:"pure-form-message text-success"},[T(" 设置打开页面后初次使用的视图。 "),d("span",{class:"text-warning"},"如果在刷新页面前在选择器切换到了其他视图,该选项将不会生效,但刷新页面后会恢复。")],-1))]),d("div",hM,[r[89]||(r[89]=d("label",{for:"makeMoreImageViewable"}," 支持更多图片预览 ",-1)),K(d("input",{id:"makeMoreImageViewable",type:"checkbox","onUpdate:modelValue":r[28]||(r[28]=a=>o.value.makeMoreImageViewable=a)},null,512),[[ye,o.value.makeMoreImageViewable]]),r[90]||(r[90]=d("div",{class:"pure-form-message text-success"}," 支持一些官方有生成缩略图,但默认没有支持预览的图片格式,目前有webp,tiff。 ",-1))])])])]))}}),gM=Pe(mM,[["__file","Config.vue"]]),Cy=gt.search;function wM(e){return {showSelectTargetButtonOnPathBar:true,showSelectAllDir:false,resultWidth:"",...e}}async function ky(){const e=wM(),t=await Xe.get(Cy,e);return {...e,...t}}async function yM(e){await Xe.set(Cy,e);}const bM={class:"ce-config ce-search-config"},vM={class:"pure-form pure-form-aligned"},xM={class:"pure-control-group"},_M={class:"pure-control-group"},CM={class:"pure-control-group"},kM=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>ky()),t=await t,n(),t));return $t(async()=>{}),He(o,lt(async s=>{await yM(s),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.searchConfigChange,body:JSON.parse(JSON.stringify(s))});},500),{deep:true}),(s,i)=>(_(),A("div",bM,[d("form",vM,[d("fieldset",null,[d("div",xM,[i[3]||(i[3]=d("label",{for:"showSelectTargetButtonOnPathBar"},'显示"选择目录"按钮',-1)),K(d("input",{id:"showSelectTargetButtonOnPathBar",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=r=>o.value.showSelectTargetButtonOnPathBar=r)},null,512),[[ye,o.value.showSelectTargetButtonOnPathBar]]),i[4]||(i[4]=d("div",{class:"pure-form-message text-success"},' 在路径栏显示"选择目录"按钮。即可以在搜索结果页直接选择其他目录进行搜索,而不必返回列表页进入目录后再搜索。 ',-1))]),d("div",_M,[i[5]||(i[5]=d("label",{for:"showSelectAllDir"},'显示"选中全部文件夹"按钮',-1)),K(d("input",{id:"showSelectAllDir",type:"checkbox","onUpdate:modelValue":i[1]||(i[1]=r=>o.value.showSelectAllDir=r)},null,512),[[ye,o.value.showSelectAllDir]]),i[6]||(i[6]=d("div",{class:"pure-form-message text-success"},' 在搜索结果文件列表顶部显示"选中全部文件夹"按钮。 ',-1))]),d("div",CM,[i[7]||(i[7]=d("label",{for:"resultWidth"},"搜索结果宽度",-1)),K(d("input",{id:"resultWidth",class:"input-small","onUpdate:modelValue":i[2]||(i[2]=r=>o.value.resultWidth=r)},null,512),[[Ve,o.value.resultWidth]]),i[8]||(i[8]=d("div",{class:"pure-form-message text-success"},[T(" 默认为空。支持 1000px、100%、90vw 等有效的 "),d("a",{href:"https://developer.mozilla.org/zh-CN/docs/Web/CSS/width",target:"_blank",rel:"noreferrer noopener"},"css width数值 🔗"),T("。 ")],-1))])])])]))}}),$M=Pe(kM,[["__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 SM(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 EM={0:"等待扫码",1:"已扫码",2:"登录成功",[-1]:"已失效",[-2]:"已取消"};let Xu=new AbortController;async function AM(e){Xu.abort(e);}async function PM(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();Xu=new AbortController;const o=await fetch(n,{signal:Xu.signal});return xl(o,"getQrcodeStatus","获取扫码状态失败"),o.json()}function IM(e){return {domain:"",hostOnly:false,httpOnly:true,name:"",path:"",sameSite:"",secure:false,session:false,storeId:"0",value:"",id:0,...e}}async function DM(e){let t=`UID=${e.UID}; CID=${e.CID}; SEID=${e.SEID}`;return e.KID&&(t+=`; KID=${e.KID}`),t}async function TM(e,t=[]){const n=[],o=Object.keys(e);let s=["115.com",...t];s=[...new Set(s)];const i={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 s)c.push(IM({...i,name:l,value:e[l],domain:u,id:r++}));n.push(...c);}return n}function LM(e){const{errno:t,error:n}=e;return `错误码: ${t}, 错误信息: ${n}`}async function MM(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/`,s=await fetch(o,{method:"POST",body:n});return xl(s,"postQrcodeResult","获取二维码登录结果失败"),s.json()}async function OM(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 Ed=(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))(Ed||{});const BM={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 RM(e,t){return new Promise((n,o)=>{const s=new FileReader;s.onloadend=()=>{if(typeof s.result=="string"){if(t instanceof HTMLImageElement)t.src=s.result;else {const i=document.createElement("img");i.src=s.result,t.appendChild(i);}n();}else console.error("[renderQrcode]","reader.result is not string!"),o("reader.result is not string!");},s.onerror=i=>{console.error("[renderQrcode]",i),o(i);},s.readAsDataURL(e);})}async function FM(e){document.addEventListener("qrcodeStatusChange",t=>{const n=t.detail;e(n);});}async function NM(e){const t=new CustomEvent("qrcodeStatusChange",{detail:e});document.dispatchEvent(t);}async function UM(e,t,n=6e4){return new Promise(async(o,s)=>{console.log("[qrcodeLogin]",e,t,n);const i=await SM(e),r=await OM(e,i.data.uid);await RM(r,t);let a=true,l=setTimeout(()=>{a=false,s("[qrcode login] timeout!");},n),c="";for(;a;)try{const f=(await PM(i.data)).data.status;if(NM(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?s(c):o(MM(i.data.uid,e));})}const $y=gt.tools;function jM(e){return {scanApp:Ed.alipaymini,...e}}async function zM(){const e=jM(),t=await Xe.get($y,e);return {...e,...t}}async function HM(e){await Xe.set($y,e);}const VM={class:"ce-tools-item"},qM={class:"pure-form pure-form-aligned"},WM={class:"pure-control-group"},KM=["disabled"],GM=["value"],JM=["disabled"],YM={key:0,class:"text-warning text-bold"},QM={key:1},XM={class:"pure-control-group"},ZM=6e4,eO=xe({__name:"GetCookie",props:{app:{}},emits:["app-change"],setup(e,{emit:t}){const n=e,o=t,s=W(n.app),i=W(false),r=W(false),a=W(false),l=W(),c=W(),u=Ke(()=>c.value?EM[c.value]:""),f=Ke(()=>{const I=[Ed.harmony],E={};for(const[P,M]of Object.entries(BM))I.includes(P)||(E[P]=M);return E});He(s,I=>{o("app-change",I),w();}),$t(async()=>{}),Ht(async()=>{await FM(b);});async function p(){await w();try{const I=document.querySelector("#ceGetCookieQrcode"),E=await UM(s.value,I,ZM);let P="";if(E.data?l.value=E.data:P=LM(E)||"未知错误",P)throw new Error(P)}catch(I){if(console.error(I),I.name==="AbortError")return;Y.fire({icon:"error",title:"扫码失败",text:typeof I=="string"?I:I.toString()});}finally{i.value=false,r.value=false,c.value=void 0;}}async function w(){l.value=void 0,r.value=false,a.value=false,i.value=false,c.value=void 0,await S();}async function g(){r.value=true;}async function b(I){console.log("[handleStatusChange]",I),c.value=I;}async function v(I){const E=l.value?.cookie;if(!E)return;let P="";if(I==="text")P=await DM(E);else if(I==="json"){const M=await TM(E);P=JSON.stringify(M,null,2);}ft(P),Os.fire({icon:"success",title:"已复制到剪贴板",timer:1500});}async function S(){await AM();}return (I,E)=>(_(),A("div",VM,[d("form",qM,[d("fieldset",null,[E[7]||(E[7]=d("legend",null,"扫码获取Cookie",-1)),d("div",WM,[K(d("select",{"onUpdate:modelValue":E[0]||(E[0]=P=>s.value=P),disabled:i.value},[(_(true),A(Se,null,je(f.value,(P,M)=>(_(),A("option",{value:M,key:M},F(P),9,GM))),128))],8,KM),[[gn,s.value]]),E[5]||(E[5]=T("    ",-1)),d("button",{type:"button",class:"pure-button pure-button-primary",onClick:p,disabled:i.value}," 开始 ",8,JM),E[6]||(E[6]=T("    ",-1)),u.value?(_(),A("span",YM,F(u.value),1)):fe("",true),l.value?(_(),A("span",QM,[E[3]||(E[3]=T("      ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:E[1]||(E[1]=P=>v("text"))}," 复制文本格式Cookie "),E[4]||(E[4]=T("    ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:E[2]||(E[2]=P=>v("json"))}," 复制JSON格式Cookie ")])):fe("",true)]),E[8]||(E[8]=d("div",{class:"text-danger"},"扫码登录后,所选设备之前的登录将会失效,所以请尽量选不常用的。",-1)),E[9]||(E[9]=d("div",{class:"text-primary"},"请注意,扫码得到的Cookie会跟随发起扫码的设备,如果发起扫码的设备退出登录,扫码得到的Cookie也会随之失效。",-1)),E[10]||(E[10]=d("div",{class:"text-success"},"如要避免上述问题,可以考虑使用手机验证码登录小程序并获取其Cookie。",-1)),K(d("div",XM,[d("img",{id:"ceGetCookieQrcode",alt:"qrcode",onLoad:g},null,32)],512),[[Wt,r.value]])])])]))}}),tO=Pe(eO,[["__file","GetCookie.vue"]]),nO={class:"ce-tools-item"},oO={class:"pure-form pure-form-aligned"},sO={class:"pure-control-group"},iO={class:"pure-control-group"},rO={class:"pure-control-group"},aO={class:"pure-control-group"},lO=xe({__name:"Cleaner",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>yr()),t=await t,n(),t)),s=W(([t,n]=Lt(()=>Uw()),t=await t,n(),t));He(o,lt(async a=>{await yd({showEntryOnPathBar:a.showEntryOnPathBar}),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。"});},500),{deep:true}),He(s,lt(async a=>{await OD(a),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。"});},500),{deep:true});async function i(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){Y.fire({icon:"error",title:"打开文件夹失败",text:`请在文件列表页面中打开!不要在离线任务之类的页面打开。异常: ${w.toString()}`});}},{select:1,nf:1,show_record:0,show_copy:1,btn_txt:"打开清理工具",select_txt:"清理"});})}return (a,l)=>(_(),A("div",nO,[d("form",oO,[d("fieldset",null,[l[14]||(l[14]=d("legend",null,"文件清理",-1)),d("div",sO,[l[7]||(l[7]=d("label",{for:"cleanerConfig_showEntryOnPathBar"},'在路径栏显示"清理文件"入口按钮',-1)),K(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",iO,[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=>i(false,"FileCleaner"))}," 清理当前文件夹 "),l[9]||(l[9]=T("      ",-1)),d("button",{type:"button",class:"pure-button button-success",onClick:l[2]||(l[2]=c=>i(true,"FileCleaner"))}," 清理指定文件夹 ")]),l[15]||(l[15]=d("br",null,null,-1)),d("div",rO,[l[10]||(l[10]=d("label",{for:"emptyCleanConfig_emptyCleanConfig"},'在路径栏显示"空文件夹"入口按钮',-1)),K(d("input",{id:"emptyCleanConfig_emptyCleanConfig",type:"checkbox","onUpdate:modelValue":l[3]||(l[3]=c=>s.value.showEntryOnPathBar=c)},null,512),[[ye,s.value.showEntryOnPathBar]])]),d("div",aO,[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=>i(false,"EmptyCleaner"))}," 清理当前文件夹下的空文件夹 "),l[12]||(l[12]=T("      ",-1)),d("button",{type:"button",class:"pure-button button-warning",onClick:l[5]||(l[5]=c=>i(true,"EmptyCleaner"))}," 清理指定文件夹下的空文件夹 "),l[13]||(l[13]=T("      ",-1)),d("button",{type:"button",class:"pure-button btn-global-clear",onClick:l[6]||(l[6]=(...c)=>te($a)&&te($a)(...c)),title:"不用怕误点击,点开后还需要确认呢"}," 一键全局清理空文件夹 ")])])])]))}}),uO=Pe(lO,[["__file","Cleaner.vue"]]),cO={class:"ce-config ce-tools-config"},dO={class:"item"},fO=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>zM()),t=await t,n(),t));$t(async()=>{}),He(o,lt(async i=>{await HM(i),window.postMessage({event:ot.toolsConfigChange,body:JSON.parse(JSON.stringify(i))});},100),{deep:true});async function s(i){o.value.scanApp=i;}return (i,r)=>(_(),A("div",cO,[d("div",dO,[se(tO,{app:o.value.scanApp,onAppChange:s},null,8,["app"]),se(uO)])]))}}),pO=Pe(fO,[["__file","Config.vue"]]),hO={class:"menu-config-block menu-basic-config"},mO={class:"pure-form pure-form-stacked"},gO={class:"pure-control-group"},wO={class:"pure-control-group"},yO={class:"pure-control-group"},bO={class:"pure-control-group"},vO={class:"pure-control-group"},xO=["value"],_O={class:"pure-control-group"},CO={class:"pure-control-group"},kO={class:"pure-control-group"},$O=xe({__name:"BasicConfig",props:{config:{}},setup(e){const t=e;async function n(s){const r={keyToTriggerManual:"在按下该按键时点击菜单项(搜索/播放),会触发手动输入模式,此时会打开一个输入框,修改文本后,点击「确定」或按下Ctrl+Enter,即可继续完成菜单项的操作。",auxClickTriggerManual:"启用后,使用鼠标中键点击菜单项,会触发手动输入模式,此时会打开一个输入框,修改文本后,点击「确定」或按下Ctrl+Enter,即可继续完成菜单项的操作。",m3u8TempDir:"「M3U8临时目录」用于临时存放生成的m3u8文件。在选中多个视频文件后,在顶部菜单栏会有一个「播放」菜单项,点击后会生成对应的m3u8文件,然后调用播放器播放这个m3u8以实现播放多个视频的效果。",cloudDriveFormalization:'<h2>使用CloudDrive的文件名规范</h2><p>启用后,在使用脚本功能复制文件名或路径时,将会根据CloudDrive的规范对文件名进行处理,请确保当前使用的CloudDrive配置设置了正确的"平台"。</p>'}[s];r&&Y.fire({html:r,customClass:{popup:"ce-swal-text-left"}});}function o(s){console.log("[onSelectM3U8Dir]",s),t.config.m3u8TempDir=s.items[s.items.length-1].path.slice(1).map(i=>i.name).join("/");}return (s,i)=>(_(),A("div",hO,[d("form",mO,[d("fieldset",null,[i[21]||(i[21]=d("legend",null,"全局设置",-1)),d("div",gO,[i[12]||(i[12]=d("label",{for:"basic_enabled"},"启用",-1)),K(d("input",{id:"basic_enabled",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=r=>t.config.enabled=r)},null,512),[[ye,t.config.enabled]])]),d("div",wO,[i[13]||(i[13]=d("label",{for:"basic_hideSelectionMenuLabel"},"隐藏顶部菜单文本",-1)),K(d("input",{id:"basic_hideSelectionMenuLabel",type:"checkbox","onUpdate:modelValue":i[1]||(i[1]=r=>t.config.hideSelectionMenuLabel=r)},null,512),[[ye,t.config.hideSelectionMenuLabel]])]),d("div",yO,[i[14]||(i[14]=d("label",{for:"basic_enableInSearch"},"在搜索结果页中启用",-1)),K(d("input",{id:"basic_enableInSearch",type:"checkbox","onUpdate:modelValue":i[2]||(i[2]=r=>t.config.enableInSearch=r)},null,512),[[ye,t.config.enableInSearch]])]),d("div",bO,[i[15]||(i[15]=d("label",{for:"basic_manageOfficialMenus"},"控制官方菜单是否隐藏",-1)),K(d("input",{id:"basic_manageOfficialMenus",type:"checkbox","onUpdate:modelValue":i[3]||(i[3]=r=>t.config.manageOfficialMenus=r)},null,512),[[ye,t.config.manageOfficialMenus]])]),d("div",vO,[i[16]||(i[16]=d("label",{for:"basic_forceManualBeforeOpenOnKey"},"触发手动输入模式的辅助键",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:i[4]||(i[4]=r=>n("keyToTriggerManual"))},"说明"),K(d("select",{id:"basic_forceManualBeforeOpenOnKey","onUpdate:modelValue":i[5]||(i[5]=r=>t.config.keyToTriggerManual=r)},[(_(true),A(Se,null,je(te(Gn),(r,a)=>(_(),A("option",{key:a,value:a},F(r),9,xO))),128))],512),[[gn,t.config.keyToTriggerManual]])]),d("div",_O,[i[17]||(i[17]=d("label",{for:"basic_forceManualBeforeOpenOnKey"},"鼠标中键触发手动输入模式",-1)),K(d("input",{id:"basic_forceManualBeforeOpenOnKey",type:"checkbox","onUpdate:modelValue":i[6]||(i[6]=r=>t.config.auxClickTriggerManual=r)},null,512),[[ye,t.config.auxClickTriggerManual]]),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:i[7]||(i[7]=r=>n("auxClickTriggerManual"))},"说明")]),d("div",CO,[i[19]||(i[19]=d("label",{for:"basic_m3u8TempDirName"},"M3U8临时目录",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:i[8]||(i[8]=r=>n("m3u8TempDir"))},"说明"),K(d("input",{id:"basic_m3u8TempDirName","onUpdate:modelValue":i[9]||(i[9]=r=>t.config.m3u8TempDir=r)},null,512),[[Ve,t.config.m3u8TempDir]]),se(Yi,{purpose:"作为M3U8临时目录",onSelect:o},{default:ge(()=>i[18]||(i[18]=[d("a",{class:"text-primary",href:"javascript:void(0)"},"选择目录",-1)])),_:1,__:[18]})]),d("div",kO,[i[20]||(i[20]=d("label",{for:"basic_cloudDriveFormalization"},"CloudDrive文件名规范",-1)),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:i[10]||(i[10]=r=>n("cloudDriveFormalization"))},"说明"),K(d("input",{id:"basic_cloudDriveFormalization",type:"checkbox","onUpdate:modelValue":i[11]||(i[11]=r=>t.config.cloudDriveFormalization=r)},null,512),[[ye,t.config.cloudDriveFormalization]])])])])]))}}),SO=Pe($O,[["__file","BasicConfig.vue"]]),EO={class:"official-menu-config"},AO={class:"pure-form pure-form-stacked"},PO=["onClick"],IO={class:"menu-key"},DO=["onClick"],TO=xe({__name:"OfficialMenuConfig",setup(e){const t=W([]),n=W(false);$t(async()=>{t.value=await pw(),console.log("official menu groups",t.value,location.href);}),Ht(()=>{document.body.addEventListener("click",()=>{n.value||(n.value=true);});}),He(t,lt(async i=>{if(!n.value)return;const r=await Y2(i);await J2(r,true),Q({icon:"success",title:"官方菜单设置已保存,已生效。",timer:1e3,position:"top-end"});},500),{deep:true});async function o(i){i.hidden=!i.hidden;}async function s(i){const{isConfirmed:r}=await Y.fire({icon:"warning",html:`确认要重置分组「${i.label}」的隐藏状态吗?`,confirmButtonText:"确认",showDenyButton:true,denyButtonText:"关闭"});r&&i.items.forEach(a=>{a.hidden=false;});}return (i,r)=>(_(),A("div",EO,[r[0]||(r[0]=d("div",{class:"ce-tips"},[d("p",null,"开启「菜单设置 - 全局设置 - 控制官方菜单是否隐藏」后才会生效。"),d("p",{class:"text-primary"},"该功能作用为隐藏官方菜单。点击「隐藏」后刷新页面生效,如需取消请点击「取消隐藏」。")],-1)),(_(true),A(Se,null,je(t.value,(a,l)=>(_(),A("div",{key:l,class:"menu-config-block"},[d("form",AO,[d("fieldset",null,[d("legend",null,[T(F(a.label)+" ",1),d("span",{class:"ce-label ce-label-warning",title:"取消该分组下全部的隐藏设置",onClick:c=>s(a)}," 重置 ",8,PO)]),(_(true),A(Se,null,je(a.items,(c,u)=>(_(),A("div",{key:u,class:Te([{hidden:c.hidden},"menu-item"])},[d("label",null,[T(F(c.label)+" ",1),d("small",IO,F(c.key),1)]),d("span",{class:"ce-toggle",onClick:f=>o(c)},F(c.hidden?"取消隐藏":"隐藏"),9,DO)],2))),128))])])]))),128))]))}}),LO=Pe(TO,[["__file","OfficialMenuConfig.vue"]]);var ht=(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))(ht||{});function Cr(e,t={}){return e.map(n=>({...t,...n}))}const MO=["for"],OO={class:"ce-field-extra ce-field-prefix"},BO=["type","id","name","required","placeholder"],RO=["id","name","required","placeholder"],FO=["value"],NO={key:2},UO=["value","required"],jO=["id","name","required"],zO={key:3},HO=["value","required"],VO=["id","name","required"],qO={class:"ce-field-extra ce-field-suffix"},WO=xe({__name:"CeField",props:{field:{},modelValue:{},formConfig:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,o=e,s=W(o.modelValue),i=Ke(()=>(o.formConfig.idPrefix||"")+o.field.name);return He(s,(r,a)=>{console.log(`[CeField] mutValue changed from ${a} to ${r}`),n("update:modelValue",r);}),(r,a)=>(_(),A("div",{class:Te(["ce-field",r.field.customClass||""])},[Ge(r.$slots,"label",{},()=>[d("label",{for:i.value},F(r.field.label),9,MO)]),d("span",OO,[Ge(r.$slots,"prefix")]),!r.field.type||r.field.type===te(ht).input||r.field.type===te(ht).number?K((_(),A("input",{key:0,type:r.field.type,id:i.value,name:r.field.name,"onUpdate:modelValue":a[0]||(a[0]=l=>s.value=l),required:r.field.required,placeholder:r.field.placeholder},null,8,BO)),[[qC,s.value]]):r.field.type===te(ht).select?K((_(),A("select",{key:1,id:i.value,name:r.field.name,"onUpdate:modelValue":a[1]||(a[1]=l=>s.value=l),required:r.field.required,placeholder:r.field.placeholder},[(_(true),A(Se,null,je(r.field.options,(l,c)=>(_(),A("option",{key:c,value:l.value},F(l.label),9,FO))),128))],8,RO)),[[gn,s.value]]):r.field.type===te(ht).checkbox?(_(),A("span",NO,[r.field.options&&r.field.options.length>0?(_(true),A(Se,{key:0},je(r.field.options,(l,c)=>(_(),A("label",{key:c},[K(d("input",{type:"checkbox",value:l.value,"onUpdate:modelValue":a[2]||(a[2]=u=>s.value=u),required:r.field.required},null,8,UO),[[ye,s.value]]),T(" "+F(l.label),1)]))),128)):K((_(),A("input",{key:1,type:"checkbox",id:i.value,name:r.field.name,"onUpdate:modelValue":a[3]||(a[3]=l=>s.value=l),required:r.field.required},null,8,jO)),[[ye,s.value]])])):r.field.type===te(ht).radio?(_(),A("span",zO,[(_(true),A(Se,null,je(r.field.options,(l,c)=>(_(),A("label",{key:c},[K(d("input",{type:"radio",value:l.value,"onUpdate:modelValue":a[4]||(a[4]=u=>s.value=u),required:r.field.required},null,8,HO),[[Tg,s.value]]),T(" "+F(l.label),1)]))),128))])):r.field.type===te(ht).date?K((_(),A("input",{key:4,type:"date",id:i.value,name:r.field.name,"onUpdate:modelValue":a[5]||(a[5]=l=>s.value=l),required:r.field.required},null,8,VO)),[[Ve,s.value]]):fe("",true),d("span",qO,[Ge(r.$slots,"suffix")])],2))}}),KO=Pe(WO,[["__file","CeField.vue"]]),GO={class:"ce-form pure-form pure-form-stacked"},JO=xe({__name:"CeForm",props:{config:{},modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,o=e,s=(i,r)=>{console.log("[CeForm.handleFieldValueChange]",i,o.modelValue,r),n("update:modelValue",{...o.modelValue});};return (i,r)=>(_(),A("div",GO,[d("fieldset",null,[d("legend",null,[Ge(i.$slots,"header",{},()=>[T(F(i.config.label),1)])]),(_(true),A(Se,null,je(i.config.fields,a=>Ge(i.$slots,a.name,{key:a.name,data:a},()=>[se(KO,{field:a,modelValue:i.modelValue[a.name],"onUpdate:modelValue":l=>i.modelValue[a.name]=l,"form-config":i.config,onChange:l=>s(a.name,l)},{label:ge(()=>[Ge(i.$slots,`${a.name}_label`,{data:a})]),prefix:ge(()=>[Ge(i.$slots,`${a.name}_prefix`,{data:a})]),suffix:ge(()=>[Ge(i.$slots,`${a.name}_suffix`,{data:a})]),_:2},1032,["field","modelValue","onUpdate:modelValue","form-config","onChange"])])),128)),Ge(i.$slots,"footer")])]))}}),di=Pe(JO,[["__file","CeForm.vue"]]),YO={class:"menu-name-path-block menu-config-block"},QO=xe({__name:"NamePathConfig",props:{modelValue:{},include:{},exclude:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,s=W(n.modelValue);He(s,l=>{o("update:modelValue",l);});const i=W([{label:"完整名称",name:"copyFullName",type:ht.checkbox,disabled:true},{label:"不含后缀的名称",name:"copyPureName",type:ht.checkbox},{label:"文件SHA1",name:"copySha1",type:ht.checkbox},{label:"文件SHA1(带文件名)",name:"copySha1WithName",type:ht.checkbox},{label:"文件ID",name:"copyId",type:ht.checkbox},{label:"文件PickCode",name:"copyPickCode",type:ht.checkbox},{label:"Unix风格路径",name:"copyUnixPath",type:ht.checkbox},{label:"Windows风格路径",name:"copyWinPath",type:ht.checkbox},{label:"父目录Unix风格路径",name:"copyParentUnixPath",type:ht.checkbox},{label:"父目录Windows风格路径",name:"copyParentWinPath",type:ht.checkbox},{label:"在CloudDrive2 Web页面查看",name:"viewInCloudDrive",type:ht.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=W({label:"名称路径子菜单设置",fields:i.value.filter(l=>r(l.name)),idPrefix:"namePath_"});return (l,c)=>(_(),A("div",YO,[d("div",null,[se(di,{modelValue:s.value,"onUpdate:modelValue":c[0]||(c[0]=u=>s.value=u),config:a.value},null,8,["modelValue","config"])])]))}}),XO=Pe(QO,[["__file","NamePathConfig.vue"]]),ZO={class:"menu-name-path-config-button"},eB=xe({__name:"NamePathConfigButton",props:{modelValue:{},include:{},exclude:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,s=W(n.modelValue);return He(s,i=>{o("update:modelValue",i);}),(i,r)=>{const a=_o("VDropdown");return _(),A("span",ZO,[se(a,{distance:5,triggers:["click"],placement:"left"},{popper:ge(()=>[se(XO,{modelValue:s.value,"onUpdate:modelValue":r[0]||(r[0]=l=>s.value=l),include:n.include,exclude:n.exclude},null,8,["modelValue","include","exclude"])]),default:ge(()=>[Ge(i.$slots,"default",{},()=>[r[1]||(r[1]=d("span",{class:"text-bold text-info"},">>",-1))])]),_:3})])}}}),kr=Pe(eB,[["__file","NamePathConfigButton.vue"]]);var Xi={name:"115不大助手"};async function tB(){if(window!==window.parent)return;new MutationObserver(async([t])=>{t.type==="childList"&&window.postMessage({event:ot.topDomChanged});}).observe(document.body,{childList:true});}async function nB(){const e=document.querySelector(".bottom-side .navigation-ceiling ul");if(!e){rB();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=`打开「${Xi.name}」设置`,n.innerHTML='<i class="isn-setting"></i><span>不大助手</span>',t.appendChild(n),e.insertBefore(t,e.firstChild);}async function oB(){return !!document.querySelector("#js-login-box")}async function sB(){console.log("[handleLoginPage]"),await oB()&&(document.body.classList.add("ce-login-page"),iB());}async function iB(){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=`打开「${Xi.name}」设置`,t.innerHTML=`<i class="isn-setting"></i><span>${Xi.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 rB(){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=`打开「${Xi.name}」设置`,n.innerHTML=`<i class="isn-setting"></i><span>${Xi.name}</span>`,t.appendChild(n),e.insertBefore(t,e.firstChild);}async function io(e){window.postMessage({event:ot.openConfig,body:e});}const aB={class:"menu-config-block"},lB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},uB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=W(e.modelValue);He(o,l=>{s("update:modelValue",l);});const s=t,i=Cr([{label:"启用",name:"enabled"},{label:"新标签页打开",name:"openInNewTab"},{label:"搜索",name:"search"},{label:"播放",name:"play"},{label:"名称路径",name:"copyNames"},{label:"查找重复文件",name:"findRepeat"}],{type:ht.checkbox}),r=W(i),a=W({label:ws.listItemHover,fields:r.value,idPrefix:"listItemHover_"});return (l,c)=>(_(),A("div",aB,[d("div",null,[se(di,{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=>te(io)(te(yt).searchMenus))},F(u.label),1)]),play_label:ge(({data:u})=>[d("label",{class:"text-primary",onClick:c[1]||(c[1]=f=>te(io)(te(yt).playMenus))},F(u.label),1)]),copyNames_label:ge(({data:u})=>[se(kr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[2]||(c[2]=f=>o.value.namePathConfig=f)},{default:ge(()=>[d("label",lB,[T(F(u.label)+" ",1),c[4]||(c[4]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),cB=Pe(uB,[["__file","Config.vue"]]),dB={class:"menu-config-block"},fB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},pB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=W(e.modelValue),s=[];He(o,l=>{i("update:modelValue",l);});const i=t,r=W(Cr([{label:"启用",name:"enabled"},{label:"名称路径",name:"copyNames"}],{type:ht.checkbox})),a=W({label:ws.listItemContext,fields:r.value,idPrefix:"listItemContext_"});return (l,c)=>(_(),A("div",dB,[d("div",null,[se(di,{modelValue:o.value,"onUpdate:modelValue":c[1]||(c[1]=u=>o.value=u),config:a.value},{copyNames_label:ge(({data:u})=>[se(kr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[0]||(c[0]=f=>o.value.namePathConfig=f),exclude:s},{default:ge(()=>[d("label",fB,[T(F(u.label)+" ",1),c[2]||(c[2]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),hB=Pe(pB,[["__file","Config.vue"]]),mB={class:"menu-config-block"},gB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},wB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=["viewInCloudDrive"],s=W(n.modelValue);He(s,c=>{i("update:modelValue",c);});const i=t;function r(c){return Object.entries(c).map(([u,f])=>({value:u,label:f}))}const a=W(Cr([{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:ht.select,options:r(Ik),customClass:"ce-search-sub"}],{type:ht.checkbox})),l=W({label:ws.selection,fields:a.value,idPrefix:"selection_"});return (c,u)=>(_(),A("div",mB,[d("div",null,[se(di,{modelValue:s.value,"onUpdate:modelValue":u[3]||(u[3]=f=>s.value=f),config:l.value},{search_label:ge(({data:f})=>[d("label",{class:"text-primary",onClick:u[0]||(u[0]=p=>te(io)(te(yt).searchMenus))},F(f.label),1)]),play_label:ge(({data:f})=>[d("label",{class:"text-primary",onClick:u[1]||(u[1]=p=>te(io)(te(yt).playMenus))},F(f.label),1)]),copyNames_label:ge(({data:f})=>[se(kr,{modelValue:s.value.namePathConfig,"onUpdate:modelValue":u[2]||(u[2]=p=>s.value.namePathConfig=p),exclude:o},{default:ge(()=>[d("label",gB,[T(F(f.label)+" ",1),u[4]||(u[4]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),yB=Pe(wB,[["__file","Config.vue"]]),bB={class:"menu-config-block"},vB={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},xB=["onClick"],_B=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=W(e.modelValue),s=["copyPureName","copySha1","copySha1WithName"];He(o,w=>{i("update:modelValue",w);});const i=t,r=Cr([{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:ht.checkbox}),a=W(r),l=W({label:ws.dirContext,fields:a.value,idPrefix:"dirContext_"}),c=Ke(()=>{const w=["enabled","play","copyNames"];return Object.keys(o.value).filter(g=>!w.includes(g))}),u=Ke(()=>{const w=[];for(const g of Object.keys(o.value))w.push({name:g,prefix:`${g}_prefix`,suffix:`${g}_suffix`});return w}),f=w=>{o.value.topLevelMenus.includes(w.name)?o.value.topLevelMenus=o.value.topLevelMenus.filter(g=>g!==w.name):o.value.topLevelMenus.push(w.name);};async function p(){Y.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,g)=>(_(),A("div",bB,[d("div",null,[se(di,{modelValue:o.value,"onUpdate:modelValue":g[2]||(g[2]=b=>o.value=b),config:l.value},L_({header:ge(()=>[T(F(te(ws).dirContext)+" ",1),d("span",{class:"ce-label ce-label-success ce-config-help",onClick:p},"说明")]),play_label:ge(({data:b})=>[d("label",{class:"text-primary",onClick:g[0]||(g[0]=v=>te(io)(te(yt).playMenus))},F(b.label),1)]),copyNames_label:ge(({data:b})=>[se(kr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":g[1]||(g[1]=v=>o.value.namePathConfig=v),exclude:s},{default:ge(()=>[d("label",vB,[T(F(b.label)+" ",1),g[3]||(g[3]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:2},[je(u.value,b=>({name:b.suffix,fn:ge(({data:v})=>[c.value.includes(v.name)?(_(),A("span",{key:0,class:Te(["btn-toggle-top",{active:o.value.topLevelMenus.includes(v.name)}]),onClick:S=>f(v),title:"点亮表示显示为一级菜单,否则将显示在「更多」菜单中"},"👁",10,xB)):fe("",!0)])}))]),1032,["modelValue","config"])])]))}}),CB=Pe(_B,[["__file","Config.vue"]]),kB={class:"menu-config-block"},$B={class:"text-primary ce-label-open-cfg",title:"打开子菜单项设置"},SB=xe({__name:"Config",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=W(e.modelValue),s=["copyPickCode","copyUnixPath","copyWinPath","copyParentUnixPath","copyParentWinPath","viewInCloudDrive"];He(o,l=>{i("update:modelValue",l);});const i=t,r=W(Cr([{label:"启用",name:"enabled"},{label:"搜索",name:"search"},{label:"名称",name:"copyNames"}],{type:ht.checkbox})),a=W({label:ws.shareListItemHover,fields:r.value,idPrefix:"shareListItemHover_"});return (l,c)=>(_(),A("div",kB,[d("div",null,[se(di,{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=>te(io)(te(yt).searchMenus))},F(u.label),1)]),copyNames_label:ge(({data:u})=>[se(kr,{modelValue:o.value.namePathConfig,"onUpdate:modelValue":c[1]||(c[1]=f=>o.value.namePathConfig=f),exclude:s},{default:ge(()=>[d("label",$B,[T(F(u.label)+" ",1),c[3]||(c[3]=d("i",null,"⚙️",-1))])]),_:2},1032,["modelValue"])]),_:1},8,["modelValue","config"])])]))}}),EB=Pe(SB,[["__file","Config.vue"]]),AB={key:0,class:"ce-menu-config"},PB=xe({__name:"MenuConfig",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>ut()),t=await t,n(),t));return $t(async()=>{}),He(o,lt(async s=>{const i=await ut();s.defaultPlayer=i.defaultPlayer,s.defaultSearch=i.defaultSearch,await wa(s),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),(s,i)=>o.value.enabled!==void 0?(_(),A("div",AB,[i[6]||(i[6]=d("div",{class:"ce-tips"},[d("p",null,"「搜索」功能菜单支持自定义,可在「搜索菜单」设置面板中添加和管理。 「播放」功能菜单支持自定义,可在「播放菜单」设置面板中添加和管理。")],-1)),se(SO,{config:o.value},null,8,["config"]),se(cB,{modelValue:o.value.listItemHover,"onUpdate:modelValue":i[0]||(i[0]=r=>o.value.listItemHover=r)},null,8,["modelValue"]),se(hB,{modelValue:o.value.listItemContext,"onUpdate:modelValue":i[1]||(i[1]=r=>o.value.listItemContext=r)},null,8,["modelValue"]),se(yB,{modelValue:o.value.selection,"onUpdate:modelValue":i[2]||(i[2]=r=>o.value.selection=r)},null,8,["modelValue"]),se(CB,{modelValue:o.value.dirContext,"onUpdate:modelValue":i[3]||(i[3]=r=>o.value.dirContext=r)},null,8,["modelValue"]),se(EB,{modelValue:o.value.shareListItemHover,"onUpdate:modelValue":i[4]||(i[4]=r=>o.value.shareListItemHover=r)},null,8,["modelValue"]),i[7]||(i[7]=d("hr",{class:"ce-hr"},null,-1)),d("div",null,[i[5]||(i[5]=d("h1",null,"官方菜单设置",-1)),d("div",null,[se(LO)])])])):fe("",true)}}),IB=Pe(PB,[["__file","MenuConfig.vue"]]),DB={class:"ce-custom-url"},TB={class:"pure-form pure-form-aligned"},LB={class:"ce-custom-url-index"},MB={class:"pure-control-group"},OB={class:"pure-control-group"},BB={class:"pure-control-group"},RB={class:"pure-control-group"},FB={key:0,class:"item-icon"},NB=["src"],UB={class:"pure-control-group"},jB={class:"pure-control-group"},zB={class:"pure-control-group"},HB={key:0,class:"pure-control-group"},VB=xe({__name:"CustomUrl",props:{item:{},index:{}},emits:["delete"],setup(e,{emit:t}){const n=W(true),o=t;function s(){o("delete");}async function i(){n.value=!n.value,n.value&&Q({title:"已开启高级模式",text:"请谨慎修改,不正确的代码可能会导致脚本崩溃。",icon:"info",timer:2e3});}async function r(){window.postMessage({event:"customUrlHelp"},"*");}async function a(){await Y.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)=>(_(),A("div",DB,[d("form",TB,[d("fieldset",null,[d("legend",null,[d("span",LB,"# "+F(l.index+1),1),d("button",{type:"button",class:"pure-button button-error button-small",onClick:s}," 删除 ")]),d("div",MB,[c[8]||(c[8]=d("label",null,"启用",-1)),K(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",OB,[c[9]||(c[9]=d("label",null,"唯一标识",-1)),K(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",BB,[c[10]||(c[10]=d("label",null,"显示名称",-1)),K(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",RB,[c[11]||(c[11]=d("label",null,"图标",-1)),K(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]=T("   ",-1)),l.item.icon?(_(),A("span",FB,[d("img",{src:l.item.icon,referrerpolicy:"no-referrer",width:"25"},null,8,NB)])):fe("",true)]),d("div",UB,[d("label",{onDblclick:i}," 链接 ",32),K(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]=T("   ",-1)),d("a",{href:"javascript:void(0)",class:"text-primary",onClick:r},"查看变量")]),d("div",jB,[c[14]||(c[14]=d("label",null,"后台打开",-1)),K(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",zB,[c[15]||(c[15]=d("label",null,"备注",-1)),K(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?(_(),A("div",HB,[c[16]||(c[16]=d("label",null,"Mutation",-1)),K(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]=T("   ",-1)),d("a",{href:"javascript:void(0)",class:"text-primary",onClick:a},"查看说明")])):fe("",true)])])]))}}),Sy=Pe(VB,[["__file","CustomUrl.vue"]]),qB={class:"ce-config ce-search-urls ce-custom-urls"},WB={class:"pure-form"},KB=["value"],GB=["value"],JB={class:"ce-menu-urls-builtin"},YB={class:"pure-form pure-form-aligned"},QB={key:0,class:"item-icon"},XB=["src"],ZB=["for"],e3=["id","onUpdate:modelValue"],t3={class:"text-info item-memo"},n3=["onClick"],o3={class:"ce-custom-urls-list"},s3={class:"ce-custom-urls-actions"},i3=["disabled"],r3=xe({__name:"SearchUrls",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>ur()),t=await t,n(),t)),s=W(([t,n]=Lt(()=>ks(no.search)),t=await t,n(),t)),i=Ke(()=>[...o.value.filter(g=>g.enabled),...s.value.filter(g=>g.enabled)]),r=([t,n]=Lt(()=>ut()),t=await t,n(),t),a=W(r.defaultSearch||""),l=W(r.keyToTriggerSearchScope||Gn.none);$t(async()=>{}),He(o,lt(async g=>{const b=[];g.forEach(v=>{v.enabled&&b.push(v.key);}),await cx(b),Q({icon:"success",title:"预置搜索菜单设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),He(a,lt(async g=>{const b=await ut();b.defaultSearch=g,await wa(b),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250)),He(l,lt(async g=>{const b=await ut();b.keyToTriggerSearchScope=g,await wa(b),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250));async function c(){const g=[];for(const b of s.value){if(!await u(b,g.length))return;if(g.includes(b.key)){Q({icon:"error",title:`第 ${g.length+1} 个记录的「唯一标识: ${b.key}」重复!`});return}g.push(b.key);}await vm(no.search,s.value),Q({icon:"success",title:"保存成功!"});}async function u(g,b){const v=/^\w+$/;return g.key=g.key.trim(),v.test(g.key)?(g.label=g.label.trim(),g.label===""?(Q({icon:"error",title:`第 ${b+1} 个记录的「显示名称」不能为空!`}),false):(g.url=g.url.trim(),g.url===""?(Q({icon:"error",title:`第 ${b+1} 个记录的「链接」不能为空!`}),false):(g.icon=g.icon.trim(),g.memo=g.memo.trim(),true))):(Q({icon:"error",title:`第 ${b+1} 个记录的「唯一标识」错误!只能包含字母、数字、下划线。`}),false)}async function f(){s.value.push(Ct({key:Ua()}));}async function p(g,b){const{isConfirmed:v}=await Y.fire({icon:"warning",html:`确定要删除第 ${b+1} 个记录「${g.label}」吗?`});v&&(s.value.splice(b,1),await c(),Q({icon:"success",title:`「${g.label}」已删除!`}));}async function w(g){const b=JSON.stringify(g,null,2),v=`ce-url-item-denifition-${g.key}`,{isConfirmed:S}=await Y.fire({title:`「${g.label}」的定义`,html:`<h3>${g.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=b;}});S&&(navigator.clipboard.writeText(b),Q({icon:"success",title:"已复制到剪贴板!"}));}return (g,b)=>(_(),A("div",qB,[d("form",WB,[d("fieldset",null,[b[2]||(b[2]=d("label",{class:"ce-label ce-label-primary"},"默认搜索",-1)),b[3]||(b[3]=T("   ",-1)),K(d("select",{"onUpdate:modelValue":b[0]||(b[0]=v=>a.value=v)},[(_(true),A(Se,null,je(i.value,(v,S)=>(_(),A("option",{key:S,value:v.key},F(v.label),9,KB))),128))],512),[[gn,a.value]]),b[4]||(b[4]=T("      ",-1)),b[5]||(b[5]=d("label",{class:"ce-label ce-label-success"},"触发选择搜索目录的按键",-1)),b[6]||(b[6]=T("   ",-1)),K(d("select",{id:"basic_keyToTriggerSelectSearchScope","onUpdate:modelValue":b[1]||(b[1]=v=>l.value=v)},[(_(true),A(Se,null,je(te(Gn),(v,S)=>(_(),A("option",{key:S,value:S},F(v),9,GB))),128))],512),[[gn,l.value]])])]),d("h1",null,[b[7]||(b[7]=T("预置搜索菜单 ",-1)),K(d("small",null,"( "+F(o.value.length)+" )",513),[[Wt,o.value.length]])]),d("div",JB,[d("form",YB,[d("fieldset",null,[(_(true),A(Se,null,je(o.value,(v,S)=>(_(),A("div",{key:S,class:"pure-control-group"},[v.icon?(_(),A("span",QB,[d("img",{src:v.icon,referrerpolicy:"no-referrer",width:"25"},null,8,XB)])):fe("",true),d("label",{for:`builtin_${v.key}`},F(v.label),9,ZB),K(d("input",{id:`builtin_${v.key}`,type:"checkbox","onUpdate:modelValue":I=>v.enabled=I},null,8,e3),[[ye,v.enabled]]),b[8]||(b[8]=T("      ",-1)),d("span",t3,F(v.memo),1),b[9]||(b[9]=T("      ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:I=>w(v)},"查看定义",8,n3)]))),128))])])]),d("h1",null,[b[10]||(b[10]=T("自定义搜索菜单 ",-1)),K(d("small",null,"( "+F(s.value.length)+" )",513),[[Wt,s.value.length]])]),d("div",o3,[(_(true),A(Se,null,je(s.value,(v,S)=>(_(),tt(Sy,{key:S,item:v,index:S,onDelete:I=>p(v,S)},null,8,["item","index","onDelete"]))),128))]),d("div",s3,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:c,disabled:!s.value.length}," 保存自定义搜索菜单 ",8,i3),b[11]||(b[11]=T("      ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:f}," + 添加自定义搜索菜单 ")])]))}}),a3=Pe(r3,[["__file","SearchUrls.vue"]]),l3={class:"ce-config ce-play-urls ce-custom-urls"},u3={class:"pure-form pure-form-aligned"},c3=["value"],d3={class:"ce-menu-urls-builtin"},f3={class:"pure-form pure-form-aligned"},p3={key:0,class:"item-icon"},h3=["src"],m3=["for"],g3=["id","onUpdate:modelValue"],w3={class:"text-info item-memo"},y3=["onClick"],b3=["innerHTML"],v3={class:"ce-custom-urls-list"},x3={class:"ce-custom-urls-actions"},_3=["disabled"],C3=xe({__name:"PlayUrls",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>Cm()),t=await t,n(),t)),s=W(([t,n]=Lt(()=>ks(no.play)),t=await t,n(),t)),i=([t,n]=Lt(()=>ut()),t=await t,n(),t),r=W(i.defaultPlayer||""),a=Ke(()=>[...o.value.filter(w=>w.enabled),...s.value.filter(w=>w.enabled)]);$t(async()=>{}),He(o,lt(async w=>{const g=[];w.forEach(b=>{b.enabled&&g.push(b.key);}),await dx(g),Q({icon:"success",title:"预置搜索菜单设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},500),{deep:true}),He(r,lt(async w=>{const g=await ut();g.defaultPlayer=w,await wa(g),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"});},250));async function l(){const w=[];for(const g of s.value){if(!await c(g,w.length))return;if(w.includes(g.key)){Q({icon:"error",title:`第 ${w.length+1} 个记录的「唯一标识: ${g.key}」重复!`});return}w.push(g.key);}await vm(no.play,s.value),Q({icon:"success",title:"保存成功!"});}async function c(w,g){const b=/^\w+$/;return w.key=w.key.trim(),b.test(w.key)?(w.label=w.label.trim(),w.label===""?(Q({icon:"error",title:`第 ${g+1} 个记录的「显示名称」不能为空!`}),false):(w.url=w.url.trim(),w.url===""?(Q({icon:"error",title:`第 ${g+1} 个记录的「链接」不能为空!`}),false):(w.icon=w.icon.trim(),w.memo=w.memo.trim(),true))):(Q({icon:"error",title:`第 ${g+1} 个记录的「唯一标识」错误!只能包含字母、数字、下划线。`}),false)}async function u(){s.value.push(Ct({key:Ua()}));}async function f(w,g){const{isConfirmed:b}=await Y.fire({icon:"warning",html:`确定要删除第 ${g+1} 个记录「${w.label}」吗?`});b&&(s.value.splice(g,1),await l(),Q({icon:"success",title:`「${w.label}」已删除!`}));}async function p(w){const g=JSON.stringify(w,null,2),b=`ce-url-item-denifition-${w.key}`,{isConfirmed:v}=await Y.fire({title:`「${w.label}」的定义`,html:`<h3>${w.memo}</h3>
      <pre id="${b}" style="text-align:left;font-size:12px;"></pre>`,confirmButtonText:"复制",showCancelButton:true,position:"top-left",heightAuto:true,didOpen:()=>{document.getElementById(b).innerText=g;}});v&&(navigator.clipboard.writeText(g),Q({icon:"success",title:"已复制到剪贴板!"}));}return (w,g)=>(_(),A("div",l3,[d("form",u3,[d("fieldset",null,[g[1]||(g[1]=d("span",{class:"ce-label ce-label-primary"},"默认播放菜单: ",-1)),g[2]||(g[2]=T("   ",-1)),K(d("select",{"onUpdate:modelValue":g[0]||(g[0]=b=>r.value=b)},[(_(true),A(Se,null,je(a.value,(b,v)=>(_(),A("option",{key:v,value:b.key},F(b.label),9,c3))),128))],512),[[gn,r.value]])])]),d("h1",null,[g[3]||(g[3]=T("预置播放菜单 ",-1)),K(d("small",null,"( "+F(o.value.length)+" )",513),[[Wt,o.value.length]])]),g[8]||(g[8]=d("div",{class:"ce-tips"},[d("p",null,[T("支持常见的视频、音频和图片格式,也支持目录播放。预置播放菜单使用的链接变量是 "),d("b",null,"{clouddrive_stream_url}"),T(" , 会根据文件或目录自动使用相应的链接。")]),d("p",null,"调用本地播放器播放功能依赖CloudDrive,请先在「CloudDrive」设置面板中进行配置。")],-1)),d("div",d3,[d("form",f3,[d("fieldset",null,[(_(true),A(Se,null,je(o.value,(b,v)=>(_(),A("div",{key:v,class:"pure-control-group"},[b.icon?(_(),A("span",p3,[d("img",{src:b.icon,referrerpolicy:"no-referrer",width:"25"},null,8,h3)])):fe("",true),d("label",{for:`builtin_${b.key}`},F(b.label),9,m3),K(d("input",{id:`builtin_${b.key}`,type:"checkbox","onUpdate:modelValue":S=>b.enabled=S},null,8,g3),[[ye,b.enabled]]),g[4]||(g[4]=T("      ",-1)),d("span",w3,F(b.memo),1),g[5]||(g[5]=T("      ",-1)),d("button",{type:"button",class:"pure-button button-small",onClick:S=>p(b)},"查看定义",8,y3),b.extraMemo?(_(),A("span",{key:1,innerHTML:b.extraMemo,class:"extra-memo"},null,8,b3)):fe("",true)]))),128))])])]),d("h1",null,[g[6]||(g[6]=T("自定义播放菜单 ",-1)),K(d("small",null,"( "+F(s.value.length)+" )",513),[[Wt,s.value.length]])]),d("div",v3,[(_(true),A(Se,null,je(s.value,(b,v)=>(_(),tt(Sy,{key:v,item:b,index:v,onDelete:S=>f(b,v)},null,8,["item","index","onDelete"]))),128))]),g[9]||(g[9]=d("div",{class:"ce-tips"}," 编辑后,请记得点击「保存自定义播放菜单」。 ",-1)),d("div",x3,[d("button",{type:"button",class:"pure-button pure-button-primary button-large",onClick:l,disabled:!s.value.length}," 保存自定义播放菜单 ",8,_3),g[7]||(g[7]=T("      ",-1)),d("button",{type:"button",class:"pure-button pure-button-success button-large",onClick:u}," + 添加自定义播放菜单 ")])]))}}),k3=Pe(C3,[["__file","PlayUrls.vue"]]),$3={class:"ce-config ce-anxia-config"},S3={class:"pure-form pure-form-aligned"},E3={class:"pure-control-group"},A3={class:"pure-control-group"},P3={class:"pure-control-group"},I3=["value"],D3=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>nm()),t=await t,n(),t));return $t(async()=>{}),He(o,lt(async s=>{await P0(s),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.listConfigChange,body:JSON.parse(JSON.stringify(s))});},500),{deep:true}),(s,i)=>(_(),A("div",$3,[d("form",S3,[d("fieldset",null,[d("div",E3,[i[3]||(i[3]=d("label",{for:"defaultWebFull"},"自动网页全屏",-1)),K(d("input",{id:"defaultWebFull",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=r=>o.value.defaultWebFull=r)},null,512),[[ye,o.value.defaultWebFull]]),i[4]||(i[4]=d("div",{class:"pure-form-message text-success"},[d("div",null,"进入播放页后自动使播放器网页全屏。")],-1))]),d("div",A3,[i[5]||(i[5]=d("label",{for:"defaultOpenPlayList"},"自动展开播放列表",-1)),K(d("input",{id:"defaultOpenPlayList",type:"checkbox","onUpdate:modelValue":i[1]||(i[1]=r=>o.value.defaultOpenPlayList=r)},null,512),[[ye,o.value.defaultOpenPlayList]]),i[6]||(i[6]=d("div",{class:"pure-form-message text-success"},[d("div",null,"进入播放页后自动展开播放列表。")],-1))]),d("div",P3,[i[8]||(i[8]=d("label",{for:"defaultDefinition"},"默认清晰度",-1)),K(d("select",{id:"defaultDefinition","onUpdate:modelValue":i[2]||(i[2]=r=>o.value.defaultDefinition=r)},[i[7]||(i[7]=d("option",{value:""},"官方默认",-1)),(_(true),A(Se,null,je(te(tm),(r,a)=>(_(),A("option",{key:a,value:a},F(r),9,I3))),128))],512),[[gn,o.value.defaultDefinition]]),i[9]||(i[9]=d("div",{class:"pure-form-message text-success"},[d("div",{class:"text-warning"},"如果没有该清晰度,则会使用官方默认。")],-1))])])])]))}}),T3=Pe(D3,[["__file","Config.vue"]]),Ey=gt.share;function L3(e){return {autoConfirmPassword:true,pageWidth:"",showListSummary:true,freshMode:false,...e}}async function Ay(){const e=L3(),t=await Xe.get(Ey,e);return {...e,...t}}async function M3(e){await Xe.set(Ey,e);}function Py(e={}){return {share_code:"",offset:0,limit:1150,receive_code:"",cid:"",...e}}function O3(e,t=true,n=false){const o=Py();let s=e.match(/((115|115cdn|anxia)\.com(\/s)?\/)?([a-z\d]{6,})(\?password=(\w{4,}))?/);if(!s)throw new Error("无法解析分享链接");const i=!!s[1];if(!i&&!n)throw new Error("无法解析分享链接: 缺少有效的域名或访问码");if(o.share_code=s[4],s[5])return o.receive_code=s[6],o;if(s=e.match(/(\?|&)password=(\w{4,})/),s&&(o.receive_code=s[2]),!o.receive_code&&t&&(s=e.match(/访问码(:|:)\s*(\w{4,})/),s&&(o.receive_code=s[2])),!i&&!o.receive_code)throw new Error("分享链接缺少访问码");return o}function B3(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 R3(e,t=true,n=false){try{return O3(e,t,n)}catch{}try{return B3(e)}catch{}throw new Error("无法解析分享链接或口令")}function F3(e,t=true,n=false){e=e.replace(/[,,]\s*(https:\/\/)/g,`
$1`);const o=[],s=e.split(`
`).map(r=>r.trim()).filter(r=>r);for(const r of s)try{const a=R3(r,t,n);o.push(a);}catch{}const i={};for(const r of o)r.share_code&&!i[r.share_code]&&(i[r.share_code]=r);return Object.values(i)}function N3(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 U3={class:"ce-tools-item ce-share-tool"},j3={class:"pure-form pure-form-aligned"},z3={class:"pure-control-group"},H3={key:0,style:{padding:"4px 0"}},V3={style:{width:"auto"}},q3={key:0,style:{padding:"6px","max-height":"300px","overflow-y":"auto",border:"1px solid #ccc"}},W3=xe({__name:"ShareTool",setup(e){const n=W(false),o=W(""),s=W(null),i=W([]);return $t(async()=>{}),Ht(async()=>{}),He(o,lt(r=>{if(i.value=[],r=r.trim(),!!r)try{if(i.value=F3(r,!0,!0),console.log("[parseBatch]",i.value),!i.value.length)throw new Error("未找到有效的分享链接或口令");n.value;const a=[];for(const l of i.value){const c=N3(l);a.push(c);}hr(a,!0),o.value="";}catch(a){console.error(a),Os.fire({icon:"error",title:`解析分享内容失败:${a instanceof Error?a.message:String(a)}`}),s.value&&s.value.select();}},300),{immediate:true}),(r,a)=>(_(),A("div",U3,[d("form",j3,[d("fieldset",null,[a[5]||(a[5]=d("legend",null,"分享工具",-1)),d("div",z3,[a[4]||(a[4]=d("div",null,[d("b",null,"打开分享详情"),T(" - 粘贴分享内容,自动打开分享详情页面,支持链接和口令,支持多个")],-1)),K(d("textarea",{ref_key:"refShareText",ref:s,rows:"2","onUpdate:modelValue":a[0]||(a[0]=l=>o.value=l),placeholder:"请粘贴分享内容",style:{width:"80%"},onclick:"this.select()"},null,512),[[Ve,o.value]]),te(true)?fe("",true):(_(),A("div",H3,[d("label",V3,[K(d("input",{type:"checkbox","onUpdate:modelValue":a[1]||(a[1]=l=>n.value=l)},null,512),[[ye,n.value]]),a[3]||(a[3]=T(" 调试模式",-1))]),d("button",{type:"button",onClick:a[2]||(a[2]=l=>o.value="")},"清空"),i.value&&i.value.length?(_(),A("div",q3,[d("pre",null,F(i.value),1)])):fe("",true)]))])])])]))}}),K3=Pe(W3,[["__file","ShareTool.vue"]]),G3={class:"ce-config ce-share-config"},J3={class:"pure-form pure-form-aligned"},Y3={class:"pure-control-group"},Q3={class:"pure-control-group"},X3={class:"pure-control-group"},Z3={class:"pure-control-group"},e4=xe({__name:"Config",async setup(e){let t,n;const o=W(([t,n]=Lt(()=>Ay()),t=await t,n(),t));return $t(async()=>{}),He(o,lt(async s=>{await M3(s),Q({icon:"success",title:"设置已保存,刷新页面以使全部更改生效。",timer:1e3,position:"top-end"}),window.postMessage({event:ot.shareConfigChange,body:JSON.parse(JSON.stringify(s))});},500),{deep:true}),(s,i)=>(_(),A("div",G3,[se(K3),d("form",J3,[d("fieldset",null,[i[12]||(i[12]=d("legend",null,"分享设置",-1)),d("div",Y3,[i[4]||(i[4]=d("label",{for:"autoAccess"},"自动确定访问码",-1)),K(d("input",{id:"autoAccess",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=r=>o.value.autoConfirmPassword=r)},null,512),[[ye,o.value.autoConfirmPassword]]),i[5]||(i[5]=d("div",{class:"pure-form-message text-success"}," 如果打开页面时已有访问码,则自动确定进入分享详情。 ",-1))]),d("div",Q3,[i[6]||(i[6]=d("label",{for:"pageWidth"},"页面宽度",-1)),K(d("input",{id:"pageWidth",class:"input-small","onUpdate:modelValue":i[1]||(i[1]=r=>o.value.pageWidth=r)},null,512),[[Ve,o.value.pageWidth]]),i[7]||(i[7]=d("div",{class:"pure-form-message text-success"},[T(" 默认为空。支持 1000px、100%、90vw 等有效的 "),d("a",{href:"https://developer.mozilla.org/zh-CN/docs/Web/CSS/width",target:"_blank",rel:"noreferrer noopener"},"css width数值 🔗"),T("。 ")],-1))]),d("div",X3,[i[8]||(i[8]=d("label",{for:"showListSummary"},"显示列表概要",-1)),K(d("input",{id:"showListSummary",type:"checkbox","onUpdate:modelValue":i[2]||(i[2]=r=>o.value.showListSummary=r)},null,512),[[ye,o.value.showListSummary]]),i[9]||(i[9]=d("div",{class:"pure-form-message text-success"}," 在列表`名称`列头部显示当前列表的概要信息,如文件数量、文件合计大小、目录数量等。 ",-1))]),d("div",Z3,[i[10]||(i[10]=d("label",{for:"freshMode"},"清爽模式",-1)),K(d("input",{id:"freshMode",type:"checkbox","onUpdate:modelValue":i[3]||(i[3]=r=>o.value.freshMode=r)},null,512),[[ye,o.value.freshMode]]),i[11]||(i[11]=d("div",{class:"pure-form-message text-success"},[T(" 隐藏顶部广告和底部警告。"),d("span",{class:"text-warning"},"请注意,这些区域的内容可能会发生变化,隐藏后可能会使你错过相关信息,比如新活动等。")],-1))])])])]))}}),t4=Pe(e4,[["__file","Config.vue"]]);var n4={name:"115不大助手",version:"0.8.9"};const o4=xe({__name:"FeedbackButton",setup(e){const t=n4,n=Gy;function o(){let i=`脚本: ${t.name} - v${t.version}
`;return i+=`TM: ${n.version}
`,i+=`UA: ${navigator.userAgent}
`,i+=`我在使用脚本的 xxxxxx 功能时,出现了问题,希望你能帮我解决。
`,i+=`复现步骤: xxxxxx
`,i+=`问题截图: 
`,i}function s(){let i=o();ft(i),Q({icon:"success",text:"已复制反馈模版,请添加详细的描述以便排查和解决问题。"});}return (i,r)=>(_(),A("button",{type:"button",class:"pure-button pure-button-success",onClick:s}," 复制反馈模版 "))}}),s4=Pe(o4,[["__file","FeedbackButton.vue"]]);var i4={name:"115不大助手",version:"0.8.9",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-about"},a4=["href"],l4=xe({__name:"About",setup(e){const t=i4;return (n,o)=>(_(),A("div",r4,[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,[se(s4)]),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:te(t).greasyforkUrl,class:"text-bold text-primary",target:"_blank",rel:"noreferrer noopener",title:"到Greasyfork查看"},[T(F(te(t).name)+" ",1),d("small",null,"v"+F(te(t).version),1)],8,a4),o[0]||(o[0]=T("  ",-1)),d("small",null,"by "+F(te(t).author.name),1)])]))}}),u4=Pe(l4,[["__file","About.vue"]]);var c4={name:"115不大助手",version:"0.8.9",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 d4={class:"ce-config-main"},f4={class:"ce-config-main-header"},p4={class:"ce-intro"},h4=["href"],m4={class:"ce-config-main-body"},g4=xe({__name:"Config",setup(e){const t=c4,n=W(false),o=W(false),s=W();Ht(async()=>{window.addEventListener("message",c=>{const{event:u,body:f}=c.data;u===ot.openConfig&&(n.value||(n.value=true),i(f)),u===ot.closeConfig&&r();},false);});async function i(c){o.value=true,console.log("[openDrawer]",c),c&&(await ms(),s.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(vg,null,{default:ge(()=>[d("div",d4,[se(Ji,{"is-open":o.value,onClose:r,"max-width":"1225px",speed:500},{default:ge(()=>[d("div",f4,[u[1]||(u[1]=d("h1",null,"设置",-1)),d("span",p4,[d("a",{href:te(t).greasyforkUrl,class:"text-bold text-primary",target:"_blank",rel:"noreferrer noopener",title:"到Greasyfork查看"},[T(F(te(t).name)+" ",1),d("small",null,"v"+F(te(t).version),1)],8,h4),u[0]||(u[0]=T("  ",-1)),d("small",null,"by "+F(te(t).author.name),1)]),d("div",{class:"ce-config-main-close",onClick:r},"关闭")]),d("div",m4,[se(te(YT),{ref_key:"refTabs",ref:s,options:{useUrlFragment:!1},onClicked:a,onChanged:l},{default:ge(()=>[se(te(Cn),{id:te(yt).basic,name:te(_n).basic},{default:ge(()=>[se($L)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).clouddrive,name:te(_n).clouddrive},{default:ge(()=>[se(zL)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).list,name:te(_n).list},{default:ge(()=>[se(gM)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).search,name:te(_n).search},{default:ge(()=>[se($M)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).menus,name:te(_n).menus},{default:ge(()=>[se(IB)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).searchMenus,name:te(_n).searchMenus},{default:ge(()=>[se(a3)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).playMenus,name:te(_n).playMenus},{default:ge(()=>[se(k3)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).offline,name:te(_n).offline},{default:ge(()=>[se(Aw)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).tools,name:te(_n).tools},{default:ge(()=>[se(pO)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).anxia,name:te(_n).anxia},{default:ge(()=>[se(T3)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).share,name:te(_n).share},{default:ge(()=>[se(t4)]),_:1},8,["id","name"]),se(te(Cn),{id:te(yt).about,name:te(_n).about},{default:ge(()=>[se(u4)]),_:1},8,["id","name"])]),_:1},512)])]),_:1},8,["is-open"])])]),_:1}))}}),w4=Pe(g4,[["__file","Config.vue"]]),y4=".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(y4);async function b4(){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}`),v4(),nB(),tB());}async function v4(){console.log("[Cloud115 Enhancer - main] injectUI");const e="cloud115ConfigMain",t=document.createElement("div");t.id=e,document.body.appendChild(t);const n=ao(w4);n.component("VDropdown",Es),n.directive("tooltip",pd),n.mount(`#${e}`),xi("设置",async()=>{window.postMessage({event:ot.openConfig});}),xi("扫码获取Cookie",async()=>{window.postMessage({event:ot.openConfig,body:yt.tools});}),xi("解析分享文本",async()=>{window.postMessage({event:ot.openConfig,body:yt.share});}),sB();}const x4='@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}.ce-rename-dlg .file-rename ul li:nth-child(1){border:none}.ce-rename-dlg .rename-ext{padding-top:10px}.ce-rename-dlg .rename-ext textarea[rel]{visibility:visible;overflow:auto;width:100%;resize:vertical!important}.ce-rename-dlg .rename-ext .btn-clear[rel]{display:none!important}.ce-rename-dlg .rename-ext .ce-btn-clear{margin-left:0}.ce-rename-dlg .rename-ext input[rel]{display:none!important}.ce-rename-dlg .rename-ext .ext-name{position:absolute;top:-18px;line-height:24px;height:24px;border-radius:4px}';Et(x4);function ko(e){return Array.isArray?Array.isArray(e):Ty(e)==="[object Array]"}function _4(e){if(typeof e=="string")return e;let t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function C4(e){return e==null?"":_4(e)}function Jn(e){return typeof e=="string"}function Iy(e){return typeof e=="number"}function k4(e){return e===true||e===false||$4(e)&&Ty(e)=="[object Boolean]"}function Dy(e){return typeof e=="object"}function $4(e){return Dy(e)&&e!==null}function pn(e){return e!=null}function iu(e){return !e.trim().length}function Ty(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const S4="Incorrect 'index' type",E4=e=>`Invalid value for key ${e}`,A4=e=>`Pattern length exceeds max of ${e}.`,P4=e=>`Missing ${e} property in key`,I4=e=>`Property 'weight' in key '${e}' must be a positive integer`,Np=Object.prototype.hasOwnProperty;class D4{constructor(t){this._keys=[],this._keyMap={};let n=0;t.forEach(o=>{let s=Ly(o);this._keys.push(s),this._keyMap[s.id]=s,n+=s.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 Ly(e){let t=null,n=null,o=null,s=1,i=null;if(Jn(e)||ko(e))o=e,t=Up(e),n=Zu(e);else {if(!Np.call(e,"name"))throw new Error(P4("name"));const r=e.name;if(o=r,Np.call(e,"weight")&&(s=e.weight,s<=0))throw new Error(I4(r));t=Up(r),n=Zu(r),i=e.getFn;}return {path:t,id:n,weight:s,src:o,getFn:i}}function Up(e){return ko(e)?e:e.split(".")}function Zu(e){return ko(e)?e.join("."):e}function T4(e,t){let n=[],o=false;const s=(i,r,a)=>{if(pn(i))if(!r[a])n.push(i);else {let l=r[a];const c=i[l];if(!pn(c))return;if(a===r.length-1&&(Jn(c)||Iy(c)||k4(c)))n.push(C4(c));else if(ko(c)){o=true;for(let u=0,f=c.length;u<f;u+=1)s(c[u],r,a+1);}else r.length&&s(c,r,a+1);}};return s(e,Jn(t)?t.split("."):t,0),o?n:n[0]}const L4={includeMatches:false,findAllMatches:false,minMatchCharLength:1},M4={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},O4={location:0,threshold:.6,distance:100},B4={useExtendedSearch:false,getFn:T4,ignoreLocation:false,ignoreFieldNorm:false,fieldNormWeight:1};var Le={...M4,...L4,...O4,...B4};const R4=/[^ ]+/g;function F4(e=1,t=3){const n=new Map,o=Math.pow(10,t);return {get(s){const i=s.match(R4).length;if(n.has(i))return n.get(i);const r=1/Math.pow(i,.5*e),a=parseFloat(Math.round(r*o)/o);return n.set(i,a),a},clear(){n.clear();}}}class Ad{constructor({getFn:t=Le.getFn,fieldNormWeight:n=Le.fieldNormWeight}={}){this.norm=F4(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)||iu(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((s,i)=>{let r=s.getFn?s.getFn(t):this.getFn(t,s.path);if(pn(r)){if(ko(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)&&!iu(u)){let f={v:u,i:c,n:this.norm.get(u)};a.push(f);}else ko(u)&&u.forEach((f,p)=>{l.push({nestedArrIndex:p,value:f});});}o.$[i]=a;}else if(Jn(r)&&!iu(r)){let a={v:r,n:this.norm.get(r)};o.$[i]=a;}}}),this.records.push(o);}toJSON(){return {keys:this.keys,records:this.records}}}function My(e,t,{getFn:n=Le.getFn,fieldNormWeight:o=Le.fieldNormWeight}={}){const s=new Ad({getFn:n,fieldNormWeight:o});return s.setKeys(e.map(Ly)),s.setSources(t),s.create(),s}function N4(e,{getFn:t=Le.getFn,fieldNormWeight:n=Le.fieldNormWeight}={}){const{keys:o,records:s}=e,i=new Ad({getFn:t,fieldNormWeight:n});return i.setKeys(o),i.setIndexRecords(s),i}function Fr(e,{errors:t=0,currentLocation:n=0,expectedLocation:o=0,distance:s=Le.distance,ignoreLocation:i=Le.ignoreLocation}={}){const r=t/e.length;if(i)return r;const a=Math.abs(o-n);return s?r+a/s:a?1:r}function U4(e=[],t=Le.minMatchCharLength){let n=[],o=-1,s=-1,i=0;for(let r=e.length;i<r;i+=1){let a=e[i];a&&o===-1?o=i:!a&&o!==-1&&(s=i-1,s-o+1>=t&&n.push([o,s]),o=-1);}return e[i-1]&&i-o>=t&&n.push([o,i-1]),n}const ss=32;function j4(e,t,n,{location:o=Le.location,distance:s=Le.distance,threshold:i=Le.threshold,findAllMatches:r=Le.findAllMatches,minMatchCharLength:a=Le.minMatchCharLength,includeMatches:l=Le.includeMatches,ignoreLocation:c=Le.ignoreLocation}={}){if(t.length>ss)throw new Error(A4(ss));const u=t.length,f=e.length,p=Math.max(0,Math.min(o,f));let w=i,g=p;const b=a>1||l,v=b?Array(f):[];let S;for(;(S=e.indexOf(t,g))>-1;){let U=Fr(t,{currentLocation:S,expectedLocation:p,distance:s,ignoreLocation:c});if(w=Math.min(U,w),g=S+u,b){let ie=0;for(;ie<u;)v[S+ie]=1,ie+=1;}}g=-1;let I=[],E=1,P=u+f;const M=1<<u-1;for(let U=0;U<u;U+=1){let ie=0,pe=P;for(;ie<pe;)Fr(t,{errors:U,currentLocation:p+pe,expectedLocation:p,distance:s,ignoreLocation:c})<=w?ie=pe:P=pe,pe=Math.floor((P-ie)/2+ie);P=pe;let ne=Math.max(1,p-pe+1),O=r?f:Math.min(p+pe,f)+u,B=Array(O+2);B[O+1]=(1<<U)-1;for(let le=O;le>=ne;le-=1){let ve=le-1,ke=n[e.charAt(ve)];if(b&&(v[ve]=+!!ke),B[le]=(B[le+1]<<1|1)&ke,U&&(B[le]|=(I[le+1]|I[le])<<1|1|I[le+1]),B[le]&M&&(E=Fr(t,{errors:U,currentLocation:ve,expectedLocation:p,distance:s,ignoreLocation:c}),E<=w)){if(w=E,g=ve,g<=p)break;ne=Math.max(1,2*p-g);}}if(Fr(t,{errors:U+1,currentLocation:p,expectedLocation:p,distance:s,ignoreLocation:c})>w)break;I=B;}const z={isMatch:g>=0,score:Math.max(.001,E)};if(b){const U=U4(v,a);U.length?l&&(z.indices=U):z.isMatch=false;}return z}function z4(e){let t={};for(let n=0,o=e.length;n<o;n+=1){const s=e.charAt(n);t[s]=(t[s]||0)|1<<o-n-1;}return t}const Pa=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=Le.location,threshold:o=Le.threshold,distance:s=Le.distance,includeMatches:i=Le.includeMatches,findAllMatches:r=Le.findAllMatches,minMatchCharLength:a=Le.minMatchCharLength,isCaseSensitive:l=Le.isCaseSensitive,ignoreDiacritics:c=Le.ignoreDiacritics,ignoreLocation:u=Le.ignoreLocation}={}){if(this.options={location:n,threshold:o,distance:s,includeMatches:i,findAllMatches:r,minMatchCharLength:a,isCaseSensitive:l,ignoreDiacritics:c,ignoreLocation:u},t=l?t:t.toLowerCase(),t=c?Pa(t):t,this.pattern=t,this.chunks=[],!this.pattern.length)return;const f=(w,g)=>{this.chunks.push({pattern:w,alphabet:z4(w),startIndex:g});},p=this.pattern.length;if(p>ss){let w=0;const g=p%ss,b=p-g;for(;w<b;)f(this.pattern.substr(w,ss),w),w+=ss;if(g){const v=p-ss;f(this.pattern.substr(v),v);}}else f(this.pattern,0);}searchIn(t){const{isCaseSensitive:n,ignoreDiacritics:o,includeMatches:s}=this.options;if(t=n?t:t.toLowerCase(),t=o?Pa(t):t,this.pattern===t){let b={isMatch:true,score:0};return s&&(b.indices=[[0,t.length-1]]),b}const{location:i,distance:r,threshold:a,findAllMatches:l,minMatchCharLength:c,ignoreLocation:u}=this.options;let f=[],p=0,w=false;this.chunks.forEach(({pattern:b,alphabet:v,startIndex:S})=>{const{isMatch:I,score:E,indices:P}=j4(t,b,v,{location:i+S,distance:r,threshold:a,findAllMatches:l,minMatchCharLength:c,includeMatches:s,ignoreLocation:u});I&&(w=true),p+=E,I&&P&&(f=[...f,...P]);});let g={isMatch:w,score:w?p/this.chunks.length:1};return w&&s&&(g.indices=f),g}}class Jo{constructor(t){this.pattern=t;}static isMultiMatch(t){return jp(t,this.multiRegex)}static isSingleMatch(t){return jp(t,this.singleRegex)}search(){}}function jp(e,t){const n=e.match(t);return n?n[1]:null}class H4 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 V4 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 q4 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 W4 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 K4 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 G4 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=Le.location,threshold:o=Le.threshold,distance:s=Le.distance,includeMatches:i=Le.includeMatches,findAllMatches:r=Le.findAllMatches,minMatchCharLength:a=Le.minMatchCharLength,isCaseSensitive:l=Le.isCaseSensitive,ignoreDiacritics:c=Le.ignoreDiacritics,ignoreLocation:u=Le.ignoreLocation}={}){super(t),this._bitapSearch=new Oy(t,{location:n,threshold:o,distance:s,includeMatches:i,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 s=[],i=this.pattern.length;for(;(o=t.indexOf(this.pattern,n))>-1;)n=o+i,s.push([o,n-1]);const r=!!s.length;return {isMatch:r,score:r?0:1,indices:s}}}const ec=[H4,Ry,q4,W4,G4,K4,V4,By],zp=ec.length,J4=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,Y4="|";function Q4(e,t={}){return e.split(Y4).map(n=>{let o=n.trim().split(J4).filter(i=>i&&!!i.trim()),s=[];for(let i=0,r=o.length;i<r;i+=1){const a=o[i];let l=false,c=-1;for(;!l&&++c<zp;){const u=ec[c];let f=u.isMultiMatch(a);f&&(s.push(new u(f,t)),l=true);}if(!l)for(c=-1;++c<zp;){const u=ec[c];let f=u.isSingleMatch(a);if(f){s.push(new u(f,t));break}}}return s})}const X4=new Set([By.type,Ry.type]);class Z4{constructor(t,{isCaseSensitive:n=Le.isCaseSensitive,ignoreDiacritics:o=Le.ignoreDiacritics,includeMatches:s=Le.includeMatches,minMatchCharLength:i=Le.minMatchCharLength,ignoreLocation:r=Le.ignoreLocation,findAllMatches:a=Le.findAllMatches,location:l=Le.location,threshold:c=Le.threshold,distance:u=Le.distance}={}){this.query=null,this.options={isCaseSensitive:n,ignoreDiacritics:o,includeMatches:s,minMatchCharLength:i,findAllMatches:a,ignoreLocation:r,location:l,threshold:c,distance:u},t=n?t:t.toLowerCase(),t=o?Pa(t):t,this.pattern=t,this.query=Q4(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:s,ignoreDiacritics:i}=this.options;t=s?t:t.toLowerCase(),t=i?Pa(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 g=f[p],{isMatch:b,indices:v,score:S}=g.search(t);if(b){if(r+=1,l+=S,o){const I=g.constructor.type;X4.has(I)?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 tc=[];function eR(...e){tc.push(...e);}function nc(e,t){for(let n=0,o=tc.length;n<o;n+=1){let s=tc[n];if(s.condition(e,t))return new s(e,t)}return new Oy(e,t)}const Ia={AND:"$and",OR:"$or"},oc={PATH:"$path",PATTERN:"$val"},sc=e=>!!(e[Ia.AND]||e[Ia.OR]),tR=e=>!!e[oc.PATH],nR=e=>!ko(e)&&Dy(e)&&!sc(e),Hp=e=>({[Ia.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function Fy(e,t,{auto:n=true}={}){const o=s=>{let i=Object.keys(s);const r=tR(s);if(!r&&i.length>1&&!sc(s))return o(Hp(s));if(nR(s)){const l=r?s[oc.PATH]:i[0],c=r?s[oc.PATTERN]:s[l];if(!Jn(c))throw new Error(E4(l));const u={keyId:Zu(l),pattern:c};return n&&(u.searcher=nc(c,t)),u}let a={children:[],operator:i[0]};return i.forEach(l=>{const c=s[l];ko(c)&&c.forEach(u=>{a.children.push(o(u));});}),a};return sc(e)||(e=Hp(e)),o(e)}function oR(e,{ignoreFieldNorm:t=Le.ignoreFieldNorm}){e.forEach(n=>{let o=1;n.matches.forEach(({key:s,norm:i,score:r})=>{const a=s?s.weight:null;o*=Math.pow(r===0&&a?Number.EPSILON:r,(a||1)*(t?1:i));}),n.score=o;});}function sR(e,t){const n=e.matches;t.matches=[],pn(n)&&n.forEach(o=>{if(!pn(o.indices)||!o.indices.length)return;const{indices:s,value:i}=o;let r={indices:s,value:i};o.key&&(r.key=o.key.src),o.idx>-1&&(r.refIndex=o.idx),t.matches.push(r);});}function iR(e,t){t.score=e.score;}function rR(e,t,{includeMatches:n=Le.includeMatches,includeScore:o=Le.includeScore}={}){const s=[];return n&&s.push(sR),o&&s.push(iR),e.map(i=>{const{idx:r}=i,a={item:t[r],refIndex:r};return s.length&&s.forEach(l=>{l(i,a);}),a})}class fi{constructor(t,n={},o){this.options={...Le,...n},this.options.useExtendedSearch,this._keyStore=new D4(this.options.keys),this.setCollection(t,o);}setCollection(t,n){if(this._docs=t,n&&!(n instanceof Ad))throw new Error(S4);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,s=this._docs.length;o<s;o+=1){const i=this._docs[o];t(i,o)&&(this.removeAt(o),o-=1,s-=1,n.push(i));}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:s,shouldSort:i,sortFn:r,ignoreFieldNorm:a}=this.options;let l=Jn(t)?Jn(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return oR(l,{ignoreFieldNorm:a}),i&&l.sort(r),Iy(n)&&n>-1&&(l=l.slice(0,n)),rR(l,this._docs,{includeMatches:o,includeScore:s})}_searchStringList(t){const n=nc(t,this.options),{records:o}=this._myIndex,s=[];return o.forEach(({v:i,i:r,n:a})=>{if(!pn(i))return;const{isMatch:l,score:c,indices:u}=n.searchIn(i);l&&s.push({item:i,idx:r,matches:[{score:c,value:i,norm:a,indices:u}]});}),s}_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],g=o(w,l,c);if(g.length)u.push(...g);else if(a.operator===Ia.AND)return []}return u},s=this._myIndex.records,i={},r=[];return s.forEach(({$:a,i:l})=>{if(pn(a)){let c=o(n,a,l);c.length&&(i[l]||(i[l]={idx:l,item:a,matches:[]},r.push(i[l])),c.forEach(({matches:u})=>{i[l].matches.push(...u);}));}}),r}_searchObjectList(t){const n=nc(t,this.options),{keys:o,records:s}=this._myIndex,i=[];return s.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&&i.push({idx:a,item:r,matches:l});}),i}_findMatches({key:t,value:n,searcher:o}){if(!pn(n))return [];let s=[];if(ko(n))n.forEach(({v:i,i:r,n:a})=>{if(!pn(i))return;const{isMatch:l,score:c,indices:u}=o.searchIn(i);l&&s.push({score:c,key:t,value:i,idx:r,norm:a,indices:u});});else {const{v:i,n:r}=n,{isMatch:a,score:l,indices:c}=o.searchIn(i);a&&s.push({score:l,key:t,value:i,norm:r,indices:c});}return s}}fi.version="7.1.0";fi.createIndex=My;fi.parseIndex=N4;fi.config=Le;fi.parseQuery=Fy;eR(Z4);const aR={class:"ce-goto-input-wrap"},lR=["disabled"],uR=["disabled"],cR={class:"ce-goto-sug"},dR=["onMousedown","sid"],fR={class:"ce-goto-sug-index"},pR={class:"ce-goto-sug-prefix"},hR={class:"ce-goto-sug-name"},mR=xe({__name:"GotoPath",setup(e){const t=W(false),n=W(false),o=W(null),s=W(null),i=W(""),r=W([]),a=W(false),l=Ke(()=>i.value.trim().length>0);let c="";Ht(async()=>{t.value=true,s.value?.focus(),window.addEventListener("message",async B=>{if(B.data.event===ot.listRendered){const le=await jt(false);le!==c&&(r.value=[],await U(false)),c=le;}});});async function u(B){if(console.log("[handleKeydown]",B.key),Gp(B),B.key==="Enter"){P.value>-1?pe():await ne(i.value);return}if(B.key==="Escape"){await O();return}["ArrowUp","ArrowDown"].includes(B.key)?M(B):f(B);}const f=lt(async B=>{p();},200);async function p(){try{r.value=[],await U(!1);const B={keyword:"",parentId:await jt(!1),parentPath:hu(),isSubOfCurrent:!0};console.log("[getSug] searchData:",B);const q=await I(B,!1);if(console.log("[searchData] items:",q),!q.length){Q({icon:"warning",text:"没有匹配的建议",timer:1500,position:"top-right"});return}const le=await w(q,B);console.log("[searchData] sugs:",le),r.value=le,P.value=-1,await U(le.length>0);}catch(B){console.warn(B),await U(false),Q({icon:"error",text:B.toString(),timer:2e3,position:"top-right"});}}async function w(B,q){const le=[];for(let $e=0;$e<B.length;$e++){const Ne=B[$e];le.push({id:Ne.id,prefix:q.parentPath==="/"?"":q.parentPath,name:Ne.name,active:false});}const ve=i.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 $e=new fi(le,{keys:["name"],threshold:.6,includeScore:true});let Ne=ve;if(_e===q.parentPath){const L=ve.split(/[\\/]/).filter(Boolean);Ne=L[L.length-1];}const dt=$e.search(Ne);console.log("[toSug] fuse res:",dt);let we=false;return dt.forEach(L=>{L.score===void 0?(console.warn("[toSug] r.score is undefined:",L),we=true,L.score=0):L.score!==void 0&&isNaN(L.score)&&(console.warn("[toSug] r.score is NaN:",L),we=true,L.score=0);}),we&&dt.sort((L,he)=>L.score-he.score),dt.map(L=>L.item)}return le}const g=new Map,b=new Map;async function v(B){return g.get(B)||false}async function S(B,q){g.set(B,q);}async function I(B,q){const le=b.get(B.parentPath);if(le)return console.log(`[getSubDirs] path "${B.parentPath}" is cached`),le.items;if(await v(B.parentPath))return console.warn(`[getSubDirs] path "${B.parentPath}" is loading`),[];await S(B.parentPath,true);try{const ve=yo({cid:B.parentId,limit:1150,show_dir:Bo.true}),ke=await id(ve);if(!ke.count)return [];const _e=[];for(let $e=0;$e<ke.data.length;$e++){const Ne=_s(ke.data[$e]);Ne.isDir&&_e.push(Ne);}return b.set(B.parentPath,{count:_e.length,dirPath:B.parentPath,dirId:B.parentId,items:_e}),_e}catch(ve){console.warn(ve);}finally{await S(B.parentPath,false);}return []}async function E(B,q){console.log("[handleSugClick]",B,q);const le=ia([B.prefix,B.name]);console.log("[handleSugClick] path:",le),await ne(le);}const P=W(-1);async function M(B){console.log("[navigateSug]",B.key),B.preventDefault(),B.stopPropagation();let q=P.value;if(B.key==="ArrowUp")q--;else if(B.key==="ArrowDown")q++;else if(B.key==="Enter"){const ke=r.value[P.value];ke&&await E(ke,B);return}else return;q<0?q=0:q>=r.value.length&&(q=r.value.length-1),P.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 z(){i.value="",s.value?.focus(),await p();}async function U(B){a.value=B,B&&s.value?.focus();}async function ie(B){if(_0(B))return "0";const q=hu();return B=ja(B,Oo.unix),B=fu(q,B,Oo.unix),await Bs(B,true)}async function pe(){const B=r.value[P.value];if(!B)return;const q=ia([B.prefix,B.name],Oo.unix);console.log("[gotoByCurrentSug] path:",q),await ne(q);}async function ne(B){if(!n.value){B=B.trim(),Q({text:"正在获取路径信息...",timer:0,position:"top-right"}),Y.showLoading(),n.value=true;try{const q=await ie(B);unsafeWindow.Main.GotoDir(1,q,0,""),Q({icon:"success",text:"获取路径信息成功,现在打开...",timer:1e3,position:"top-right"}),s.value?.focus(),r.value=[],P.value=-1;}catch(q){Y.fire({icon:"error",title:"跳转失败",text:q.message});}finally{Y.hideLoading(),n.value=false;}}}async function O(){P.value>-1?(r.value.forEach(B=>B.active=false),P.value=-1,await U(false)):(document.querySelector("#ceGotoPathApp")?.style.setProperty("display","none"),document.querySelector(".ce-goto-path-active")?.classList.remove("ce-goto-path-active"),t.value=false);}return (B,q)=>(_(),A("div",{ref_key:"refMain",ref:o,class:Te(["ce-goto-main",{"ce-goto-sug-shown":a.value}])},[d("div",aR,[K(d("input",{ref_key:"refInput",ref:s,"onUpdate:modelValue":q[0]||(q[0]=le=>i.value=le),class:"ce-goto-input",placeholder:"回车确认跳转 | Esc关闭 | 可搜索当前目录的子目录显示下拉列表,上下方向键选择",onKeydown:u},null,544),[[Ve,i.value]]),d("button",{type:"button",class:"ce-goto-input-btn","data-cmd":"clear",onClick:z,title:"清空输入框",disabled:!l.value},"清空",8,lR),d("button",{type:"button",class:"ce-goto-input-btn","data-cmd":"toggle",onClick:q[1]||(q[1]=le=>U(false)),title:"收起建议列表",disabled:!a.value},"收起",8,uR)]),d("div",cR,[(_(true),A(Se,null,je(r.value,(le,ve)=>(_(),A("div",{key:ve,class:Te(["ce-goto-sug-item",{active:le.active}]),onMousedown:kn(ke=>E(le,ke),["left","stop","prevent"]),sid:le.id},[d("span",fR,F(ve+1),1),d("span",pR,F(le.prefix),1),q[2]||(q[2]=d("span",{class:"ce-goto-sep"},"/",-1)),d("span",hR,F(le.name),1)],42,dR))),128))])],2))}}),gR=Pe(mR,[["__file","GotoPath.vue"]]);async function wR(e){if(!vn())return;const t=await et("#js_top_header_file_path_box");e.showGotoButtonOnPathBar&&bR(e,t),e.showCopyButtonOnPathBar&&yR(e,t);}async function yR(e,t){const n="ceCopyPath";let o=t.querySelector(`#${n}`);const s=async()=>{const r=hu();ft(r),Q({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",s),r})(),t.prepend(o));}async function bR(e,t){const n=t.querySelector(".top-file-path"),o="ceGotoPath";let s=t.querySelector(`#${o}`);const i=ao(gR),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):i.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%"/>`);s||(s=await u(),t.prepend(s));}async function vR(){if(!xR())return;const e=await li();if($("body").addClass("ce-selector-page"),!e.showInfoOnQuickView)return;const t=await et("#js_file_list_ul");await Vp(e),new MutationObserver(async([o])=>{o.type==="childList"&&await Vp(e);}).observe(t,{childList:true});}function xR(e=location.href){return e.includes("ac=userfile")&&e.includes("ajax=1")}async function Vp(e){const t=CR();for(let n=0;n<t.length;n++){const o=t.eq(n),s=mn(o);s.isDir||await kR(e,o,s);}}function _R(){return $("#js_file_list_ul")}function CR(e){return _R().find("li:not(.ce-decorated)")}async function kR(e,t,n){const o=$('<div class="ce-file-inj-container"></div>');t.append(o),await $R(e,t,o,n),await SR(e,t,o,n),t.addClass("ce-decorated");}async function $R(e,t,n,o){if(!e.showSha1||!o.hash)return;t.addClass("ce-show-sha1"),t.find(".file-name");const s="文件SHA1,点击复制"+(e.clickSha1WithCtrlToFindRepeat?" (Ctrl+点击 查找重复文件)":""),i=ze(`
    <span class="ce-file-sha1 ce-inj" title="${s}">${o.hash}</span>
  `),r=()=>{ft(o.hash),Q({title:"复制SHA1",text:"已复制文件SHA1",icon:"success",timer:1500});};i.addEventListener("click",async a=>{a.preventDefault(),a.stopPropagation(),e.clickSha1WithCtrlToFindRepeat&&(a.metaKey||a.ctrlKey)?ad(o):r();}),n.append(i);}async function SR(e,t,n,o){const s=ze(`
    <span class="ce-file-size ce-inj">${o.sizeDesc}</span>
  `);n.append(s);}async function ER(){const e=await li(),{host:t}=location;/115\.com$/.test(t)&&(console.log("[List] running...",e),(vn()||$o())&&S$(),vR(),wR(e),p$(e),setTimeout(async()=>{e$().then(()=>{g$(e),w$(e),y$(e);}).catch(n=>{console.error("awaitDataAPI error:",n);});},2e3),t$(e),s$(e),i$(e),r$(),a$(e),u$(e),b$(e),d$());}const AR='@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(AR);async function PR(e){const t=await et(".top-file-path");IR(e,t),DR(e,t);}async function IR(e,t){if(!e.showSelectTargetButtonOnPathBar)return;const n="ce-btn-select";let o=t.querySelector(`.${n}`);const s=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",s),r})(),t.append(o));}async function DR(e,t){if(!e.showSelectAllDir)return;const n="ce-btn-select-dir";let o=t.querySelector(`.${n}`);const s=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",s),a})(),t.append(o));}async function TR(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 LR(e){document.body.classList.add("ce-search-page"),parent.document.body.classList.add("ce-search-page");}async function MR(){const e=await ky();TR(e),$o()&&(console.log("[Search] running...",e),LR(),PR(e));}const OR="";Et(OR);async function BR(){console.log("[Tools] running...");}const RR="";Et(RR);async function FR(e){const t=async o=>{const s=ze(`<li pickcode="${o.pickCode}" style="padding:0px;"></li>`),i=ze(`
      <a style="height:auto;text-decoration:none;padding:5px 0 5px 5px;">
        <span style="word-break:break-all">${o.name}</span>
      </a>
    `);return i.href="/?hls=1&pickcode="+o.pickCode,i.setAttribute("title",o.name),s.appendChild(i),s};let n="";window.addEventListener("message",async o=>{if(o.data.event==="play"){const s=await et("ul#js-video_list"),i=o.data.body.id;if(n&&n===i)if(s.childElementCount){console.log(`[playSelected] same id: ${i} 但是播放列表已经渲染过了,忽略`);return}else console.warn(`[playSelected] same id: ${i} 但是播放列表为空,将会进行渲染`);n=i;const r=o.data.body.files;console.log(`[playSelected] id: ${i}, files: `,r);const a=await Promise.all(r.map(t));s?.append(...a);const l=document.querySelector(".video-playlist .vpl-container");l&&(l.style.display="block"),s?.querySelector("a")?.click();const u=document.querySelector("#js-video_container");u&&u.classList.remove("video-container-nolist");}});}async function NR(e){if(!e.defaultWebFull)return;const t=await et('[rel="web_fullscreen"]');t.querySelector('[rel="tooltips"]').innerText==="网页全屏"&&t.click();}async function UR(e){if(!e.defaultOpenPlayList)return;const t=await et("a#js_pl_control_expand");t.querySelector('[rel="tooltips"]').innerText==="展开播放列表"&&t.click();}async function jR(e){if(!e.defaultDefinition)return;const t=tm[e.defaultDefinition],n=unsafeWindow.__HLS,o=n.setCurrentLevel;(async()=>{const i=await et('div[rel="level_menu"]'),r=await ac('a[btn="level"]',100,12e4,i);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=i=>{const r=n.hls();if(!r||!r.levels){o(i);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=i;for(let c=0;c<a.length;c++)if(a[c].name===e.defaultDefinition){l=c;break}l!==i&&console.warn(`[level changed] ${i} -> ${l}`),o(l);};}async function zR(){const{host:e}=location;if(!Lc(e))return;console.log("[anxia] run");const t=await nm();NR(t),UR(t),FR(),jR(t);}const HR='@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(HR);async function VR(){const e=await Ay();mu()&&(console.log("[Share] running...",e),vw(e),cS(e),dS(e),_w(e),pS());}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=Qu(e.limiterDuration,1,3e3,1),n=Qu(e.limiterPoints,1,300,1),o=t*500/n,s=wy({rateLimit:{...gy,duration:t,points:n,execEvenly:true,execEvenlyMinDelayMs:o}}),i=LT(s);I0(i),yS(),ME(),BD(),qT(),ER(),MR(),BR(),zR(),VR(),b4();})();

})();