// ==UserScript==
// @name V2Next
// @namespace http://tampermonkey.net/
// @version 8.1.4
// @author zyronon
// @description V2Next - 一个好用的V2EX脚本! 已适配移动端
// @license GPL License
// @icon https://v2next.netlify.app/favicon.ico
// @homepage https://github.com/zyronon/web-scripts
// @homepageURL https://github.com/zyronon/web-scripts
// @supportURL https://update.gf.qytechs.cn/scripts/458024/V2Next.user.js
// @match https://v2ex.com/
// @match https://v2ex.com/?tab=*
// @match https://v2ex.com/t/*
// @match https://v2ex.com/recent*
// @match https://v2ex.com/go/*
// @match https://v2ex.com/member/*
// @match https://v2ex.com/changes*
// @match https://*.v2ex.com/
// @match https://*.v2ex.com/?tab=*
// @match https://*.v2ex.com/t/*
// @match https://*.v2ex.com/recent*
// @match https://*.v2ex.com/go/*
// @match https://*.v2ex.com/member/*
// @match https://*.v2ex.com/changes*
// @require https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js
// @require https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.global.prod.js
// @grant GM_addStyle
// @grant GM_notification
// @grant GM_openInTab
// @grant GM_registerMenuCommand
// ==/UserScript==
(o=>{if(typeof GM_addStyle=="function"){GM_addStyle(o);return}const r=document.createElement("style");r.textContent=o,document.head.append(r)})(' .tip[data-v-ee672411]{position:fixed;font-size:1.6rem;z-index:9999;max-width:10rem;border-radius:.5rem;padding:1rem;color:var(--color-font-8);background:var(--color-tooltip-bg);box-shadow:0 0 6px 1px var(--color-tooltip-shadow)}.v-enter-active[data-v-e7c0fbef],.v-leave-active[data-v-e7c0fbef]{transition:opacity .3s ease}.v-enter-from[data-v-e7c0fbef],.v-leave-to[data-v-e7c0fbef]{opacity:0}.username[data-v-e7c0fbef]{font-weight:700;font-size:1.4rem;margin-right:1rem}.link-num[data-v-e7c0fbef]{font-size:1.2rem;font-weight:700;color:#e02a2a}.owner[data-v-e7c0fbef]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;margin-right:1rem;transform:scale(.8)}.mod[data-v-e7c0fbef]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;transform:scale(.8);background:#1484cd;color:#fff;margin-right:1rem}.my-tag[data-v-e7c0fbef]{font-size:1.4rem;color:red;margin-left:1rem}.my-tag:hover .remove[data-v-e7c0fbef]{display:inline}.my-tag .remove[data-v-e7c0fbef]{cursor:pointer;margin-left:.5rem;display:none}.add-tag[data-v-e7c0fbef]{font-size:2.4rem;transform:translateY(.2rem);line-height:1rem;display:inline-block;margin-left:1rem;cursor:pointer;position:absolute;display:none}.floor[data-v-e7c0fbef]{margin-left:.5rem;font-size:1.1rem;line-height:1rem;border-radius:.5rem;display:inline-block;background-color:var(--color-floor);color:var(--color-floor-font);padding:3px 9px;cursor:default}[data-v-e7c0fbef]:root{--color-main-bg: #e2e2e2;--color-second-bg: white;--color-third-bg: #e2e2e2;--color-item-bg: white;--color-swtich-bg: #dcdfe6;--color-active: #409eff;--color-font: #999;--color-font-8: rgba(0, 0, 0, .8);--color-font-3: rgba(0, 0, 0, .3);--color-font-pure: black;--color-input-bg: white;--color-input-border: #e2e2e2;--color-input-border-hover: #a3a6ad;--color-radio-border: #e2e2e2;--color-tooltip-bg: white;--color-tooltip-shadow: #bbbbbb;--color-scrollbar: #93ade3;--color-line: #e2e2e2;--color-loading-1: #00000033;--color-loading-2: #000;--color-floor: #f0f0f0;--color-floor-font: #bdbdbd;--color-editor-toolbar: #f6f7f8;--color-sp-btn-bg: #f1f1f1;--color-call-list-bg: white}html.dark[data-v-e7c0fbef]{--color-main-bg: #22303f;--color-second-bg: #18222d;--color-third-bg: #31475e;--color-item-bg: #18222d;--color-swtich-bg: #4c4d4f;--color-active: #409eff;--color-font: rgba(255, 255, 255, .5);--color-font-8: rgba(255, 255, 255, .8);--color-font-3: rgba(255, 255, 255, .3);--color-font-pure: white;--color-input-bg: #333333;--color-input-border: #6c6e72;--color-input-border-hover: #a3a6ad;--color-radio-border: #454847;--color-tooltip-bg: #31475e;--color-tooltip-shadow: #3b3b3b;--color-scrollbar: #5c5d5e;--color-line: var(--box-border-color);--color-loading-1: rgba(178, 177, 177, .2);--color-loading-2: #ffffff;--color-floor: #293b4d;--color-floor-font: rgba(255, 255, 255, .3);--color-editor-toolbar: var(--box-background-hover-color);--color-sp-btn-bg: #31475e;--color-call-list-bg: #31475e}html[data-v-e7c0fbef],body[data-v-e7c0fbef]{font-size:62.5%}[data-v-e7c0fbef]::-webkit-scrollbar{width:1rem;height:1rem}[data-v-e7c0fbef]::-webkit-scrollbar-track{background:transparent;border-radius:.2rem}[data-v-e7c0fbef]::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:1rem}.flex[data-v-e7c0fbef]{display:flex;align-items:center;justify-content:space-between}.flex-end[data-v-e7c0fbef]{justify-content:flex-end}.flex-center[data-v-e7c0fbef]{justify-content:center}.p1[data-v-e7c0fbef]{padding:1rem}.p2[data-v-e7c0fbef]{padding:2rem}.p0[data-v-e7c0fbef]{padding:0!important}body :is(.topic_content,.reply_content) a[href^=http][data-v-e7c0fbef]{text-underline-offset:.7ex;text-decoration:underline 1px}a[data-v-e7c0fbef]{text-decoration:none;cursor:pointer}a[data-v-e7c0fbef]:hover{text-decoration:underline}.tool[data-v-e7c0fbef]{position:relative;display:flex;align-items:center;border-radius:.3rem;cursor:pointer;height:2.6rem;padding:0 .5rem;gap:.2rem}.tool>svg[data-v-e7c0fbef]{width:1.6rem!important;height:1.6rem!important}.tool[data-v-e7c0fbef]:hover{background:var(--color-third-bg)}.tool.no-hover[data-v-e7c0fbef]{cursor:default}.tool.no-hover[data-v-e7c0fbef]:hover{background:unset!important}.tool.disabled[data-v-e7c0fbef]{cursor:not-allowed}.tool.disabled[data-v-e7c0fbef]:hover{background:unset!important}.my-node[data-v-e7c0fbef]{border-radius:.2rem;padding:.4rem;font-size:1rem;color:#999;background:#f5f5f5;cursor:pointer}.my-node[data-v-e7c0fbef]:hover{text-decoration:none;background:#e2e2e2}.msgs[data-v-e7c0fbef]{position:fixed;margin-left:calc(50% - 25rem);width:50rem;z-index:9999;bottom:0;left:0;right:0}.my-box[data-v-e7c0fbef]{box-shadow:0 2px 3px #0000001a;box-shadow:#00000014 0 4px 12px;border-radius:var(--box-border-radius);background:var(--box-background-color);margin-bottom:2rem;width:100%;box-sizing:border-box;transition:background-color .3s}.my-cell[data-v-e7c0fbef]{color:var(--color-font);padding:.8rem 1rem;font-size:1.4rem;line-height:150%;text-align:left;border-bottom:1px solid var(--color-line)}.modal[data-v-e7c0fbef]{position:fixed;z-index:1001;width:100vw;height:100vh;left:0;top:0;display:flex;justify-content:center;align-items:center}.modal .title[data-v-e7c0fbef]{font-size:2.4rem;margin-bottom:1rem;text-align:center}.modal .option[data-v-e7c0fbef]{display:flex;align-items:center;padding:.6rem 0}.modal .option>span[data-v-e7c0fbef]{position:relative}.modal .mask[data-v-e7c0fbef]{position:fixed;width:100vw;height:100vh;left:0;top:0;background-color:#1d1c1c47}.radio-group2[data-v-e7c0fbef]{display:inline-flex;border-radius:.5rem;overflow:hidden;border:1px solid var(--color-radio-border);background:var(--box-background-alt-color)}.radio-group2 .radio[data-v-e7c0fbef]{cursor:pointer;background:transparent;padding:.5rem 1.2rem;border-left:1px solid var(--color-radio-border);font-size:1.3rem;color:var(--color-gray)}.radio-group2 .radio[data-v-e7c0fbef]:first-child{border-left:none}.radio-group2 .active[data-v-e7c0fbef]{background:var(--color-third-bg);color:var(--color-font)}.pop-confirm[data-v-e7c0fbef]{position:relative;display:inline-flex;justify-content:center}input[data-v-e7c0fbef]{height:3rem;outline:unset;border:1px solid var(--color-input-border);padding:0 .5rem;border-radius:5px;box-sizing:border-box;transition:all .3s;background:var(--color-input-bg);color:var(--color-font)}input[data-v-e7c0fbef]:hover{border:1px solid var(--color-input-border-hover)}input[data-v-e7c0fbef]:focus{border:1px solid var(--color-active)}.danger[data-v-e7c0fbef]{color:red!important}.switch[data-v-e7c0fbef]{width:4.5rem;height:2.2rem;border-radius:2rem;position:relative;display:flex;align-items:center;background:var(--color-swtich-bg);transition:all .3s}.switch.active[data-v-e7c0fbef]{background:var(--color-active)}.switch.active[data-v-e7c0fbef]:before{right:.2rem}.switch[data-v-e7c0fbef]:before{position:absolute;content:" ";transition:all .3s;right:calc(100% - 2rem);width:1.8rem;height:1.8rem;background:white;border-radius:50%}.display-type[data-v-e4f684be]{height:3rem;padding:0 .3rem;background:var(--color-sp-btn-bg);border-radius:1rem;display:flex;font-size:1.4rem;align-items:center;color:#a9a9a9}.display-type .type[data-v-e4f684be]{border-radius:.8rem;padding:0 1.3rem;height:2.8rem;align-items:center;display:flex;position:relative;cursor:pointer}.display-type .type.active[data-v-e4f684be]{background:var(--color-second-bg);color:var(--color-font-pure);box-shadow:0 0 6px 0 var(--color-tooltip-shadow)}.display-type .type-list[data-v-e4f684be]{position:absolute;background:var(--color-sp-btn-bg);right:0;top:3rem;font-size:1.4rem;box-shadow:0 0 6px 0 var(--color-tooltip-shadow);border-radius:.6rem;z-index:9;color:var(--color-font)}.display-type .type-list .item[data-v-e4f684be]{word-break:keep-all;padding:.8rem 1rem;cursor:pointer}.display-type .type-list .item.active[data-v-e4f684be],.display-type .type-list .item[data-v-e4f684be]:hover{color:var(--color-font-pure)}.display-type svg[data-v-e4f684be]{width:1.5rem}.loading[data-v-2697baa2]{border:2px solid;border-color:var(--color-loading-2) var(--color-loading-1) var(--color-loading-1) var(--color-loading-1);border-radius:100%;animation:circle-2697baa2 infinite 1s linear;width:2rem;height:2rem}.loading.small[data-v-2697baa2]{width:1.2rem;height:1.2rem}.loading.large[data-v-2697baa2]{width:3rem;height:3rem}@keyframes circle-2697baa2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.base-button[data-v-5a7d79ba]{cursor:pointer;border-radius:.6rem;padding:0 1.5rem;display:inline-flex;align-items:center;justify-content:center;transition:all .3s;height:3.6rem;line-height:1;position:relative}.base-button .loading[data-v-5a7d79ba]{position:absolute}.base-button.disabled[data-v-5a7d79ba]{opacity:.6;cursor:not-allowed;-webkit-user-select:none;user-select:none}.base-button.small[data-v-5a7d79ba]{height:3rem}.base-button.small>span[data-v-5a7d79ba]{font-size:1.3rem}.base-button.large[data-v-5a7d79ba]{height:5rem;font-size:1.8rem;padding:0 2.2rem}.base-button.large>span[data-v-5a7d79ba]{font-size:1.8rem}.base-button[data-v-5a7d79ba]:hover:not(.link){opacity:.7}.base-button.primary[data-v-5a7d79ba]{background:var(--color-active)}.base-button.primary>span[data-v-5a7d79ba]{color:#fff}.base-button.gary[data-v-5a7d79ba]{background:#4b5563}.base-button.link[data-v-5a7d79ba]{border-radius:0;border-bottom:2px solid transparent}.base-button.link>span[data-v-5a7d79ba]{color:var(--color-font-8)}.base-button.link[data-v-5a7d79ba]:hover{border-bottom:2px solid var(--color-font-8)}.base-button.active[data-v-5a7d79ba]{opacity:.4}.key-notice[data-v-5a7d79ba]{margin-left:1rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#fff}.key-notice .key[data-v-5a7d79ba]{transform:scale(.8)}.pop-confirm-content[data-v-7d29b3cc]{position:fixed;background:var(--color-tooltip-bg);box-shadow:0 0 6px 1px var(--color-tooltip-shadow);color:var(--color-font-8);padding:1.5rem;border-radius:.8rem;transform:translate(-50%,calc(-100% - 1rem));z-index:1001}.pop-confirm-content .text[data-v-7d29b3cc]{text-align:start;font-size:1.6rem;width:15rem;min-width:15rem}.pop-confirm-content .options[data-v-7d29b3cc]{margin-top:1.5rem;display:flex;justify-content:flex-end;align-items:center;gap:1rem}.setting-modal .modal-root[data-v-cb13d533]{z-index:9;background:var(--color-main-bg);border-radius:1.6rem;font-size:1.4rem;overflow:hidden;color:var(--color-font-pure)}.setting-modal .modal-root .modal-header[data-v-cb13d533]{padding:1.4rem;display:flex;justify-content:center;position:relative}.setting-modal .modal-root .modal-header .title[data-v-cb13d533]{font-size:2.2rem;text-align:left;margin-bottom:0}.setting-modal .modal-root .modal-header svg[data-v-cb13d533]{position:absolute;right:1rem;cursor:pointer;font-size:2.6rem}.setting-modal .modal-root .body[data-v-cb13d533]{width:60rem}.setting-modal .modal-root .body .modal-content[data-v-cb13d533]{background:var(--color-second-bg);flex:1;height:100%;box-sizing:border-box;padding:1rem 1rem 1rem 2rem;font-size:1.6rem;text-align:left;line-height:1.6}.setting-modal .modal-root .body .btns[data-v-cb13d533]{margin:1.5rem;display:flex;justify-content:flex-end;align-items:center;gap:1.5rem;font-size:1.4rem}.setting-modal .modal-root[data-v-97cd84bd]{z-index:9;background:var(--color-main-bg);border-radius:1.6rem;font-size:1.4rem;overflow:hidden;color:var(--color-font-pure)}.setting-modal .modal-root .modal-header[data-v-97cd84bd]{padding:2.4rem;display:flex;justify-content:space-between}.setting-modal .modal-root .modal-header .title[data-v-97cd84bd]{font-size:2.6rem;font-weight:700;text-align:left;margin-bottom:0}.setting-modal .modal-root .modal-header svg[data-v-97cd84bd]{cursor:pointer;font-size:2.6rem}.setting-modal .modal-root .body[data-v-97cd84bd]{width:45vw;height:70vh;display:flex}.setting-modal .modal-root .body .left[data-v-97cd84bd]{display:flex;flex-direction:column;justify-content:space-between;align-items:center;font-size:1.8rem}.setting-modal .modal-root .body .left .tabs[data-v-97cd84bd]{padding:1rem 2rem;display:flex;flex-direction:column;gap:1rem}.setting-modal .modal-root .body .left .tabs .tab[data-v-97cd84bd]{cursor:pointer;padding:1rem 1.5rem;border-radius:.8rem;display:flex;align-items:center;gap:1rem}.setting-modal .modal-root .body .left .tabs .tab.active[data-v-97cd84bd]{background:var(--color-item-bg)}.setting-modal .modal-root .body .left .icons[data-v-97cd84bd]{display:flex;gap:1rem;margin-bottom:2rem;font-size:2.4rem}.setting-modal .modal-root .body .modal-content[data-v-97cd84bd]{background:var(--color-second-bg);flex:1;height:100%;box-sizing:border-box;padding:1rem 1rem 1rem 2rem;border-radius:1.6rem;display:flex}.setting-modal .modal-root .body .modal-content .scroll[data-v-97cd84bd]{flex:1;padding-right:1rem;overflow:auto}.setting-modal .modal-root .body .modal-content .scroll .row[data-v-97cd84bd]{min-height:5rem;display:flex;justify-content:space-between;align-items:center}.setting-modal .modal-root .body .modal-content .scroll .row .wrapper[data-v-97cd84bd]{height:3rem;flex:1;display:flex;justify-content:flex-end;align-items:center;gap:var(--space)}.setting-modal .modal-root .body .modal-content .scroll .row .wrapper span[data-v-97cd84bd]{text-align:right;font-size:1.4rem;color:gray}.setting-modal .modal-root .body .modal-content .scroll .row .wrapper .set-key[data-v-97cd84bd]{align-items:center}.setting-modal .modal-root .body .modal-content .scroll .row .wrapper .set-key input[data-v-97cd84bd]{width:15rem;box-sizing:border-box;margin-right:1rem;height:2.8rem;outline:none;font-size:1.6rem;border:1px solid gray;border-radius:.3rem;padding:0 .5rem;background:var(--color-second-bg);color:var(--color-font-1)}.setting-modal .modal-root .body .modal-content .scroll .row .main-title[data-v-97cd84bd]{font-size:2.2rem;font-weight:700;color:var(--color-font-8)}.setting-modal .modal-root .body .modal-content .scroll .row .item-title[data-v-97cd84bd]{font-size:1.8rem}.setting-modal .modal-root .body .modal-content .scroll .desc[data-v-97cd84bd]{margin-bottom:1rem;font-size:1.4rem;text-align:left;color:var(--color-font)}.setting-modal .modal-root .body .modal-content .scroll .project-desc[data-v-97cd84bd]{text-align:start;font-size:1.6rem;padding-bottom:10rem}.setting-modal .modal-root .body .modal-content .scroll .line[data-v-97cd84bd]{border-bottom:1px solid #c4c3c3}.Author[data-v-43506a15]{display:flex;align-items:center;justify-content:space-between;font-size:1.2rem;position:relative}.Author.expand[data-v-43506a15]{margin-bottom:0}.Author .Author-left[data-v-43506a15]{display:flex;align-items:center;max-width:65%;word-break:break-all}.Author .Author-left .username[data-v-43506a15]{font-size:1.4rem;margin-right:.6rem}.Author .Author-left .expand-icon[data-v-43506a15]{cursor:pointer;margin-right:.6rem;width:2rem;height:2rem;transform:rotate(90deg)}.Author .Author-left .avatar[data-v-43506a15]{margin-right:.8rem;display:flex}.Author .Author-left .avatar img[data-v-43506a15]{width:2.8rem;height:2.8rem;border-radius:.4rem}.Author .Author-left .texts[data-v-43506a15]{flex:1}.Author .Author-left .owner[data-v-43506a15]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;margin-right:.6rem;transform:scale(.8)}.Author .Author-left .dup[data-v-43506a15]{display:inline-block;background-color:transparent;color:red;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid red;font-size:1.2rem;font-weight:700;margin-right:.6rem;transform:scale(.8)}.Author .Author-left .mod[data-v-43506a15]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;transform:scale(.8);background:#1484cd;color:#fff;margin-right:.6rem}.Author:hover .add-tag[data-v-43506a15]{display:inline-block}.Author .Author-right[data-v-43506a15]{position:absolute;right:0;display:flex;align-items:center}.Author .Author-right .toolbar[data-v-43506a15]{display:flex;align-items:center;color:var(--color-gray);opacity:0;gap:.2rem}.Author .Author-right .toolbar[data-v-43506a15]:hover{opacity:1}.post-editor-wrapper[data-v-4522f98e]{width:100%;box-sizing:border-box;position:relative;overflow:hidden;transition:all .3s;color:var(--color-font)}.post-editor-wrapper.reply-post .post-editor[data-v-4522f98e]{border:1px solid var(--color-line)}.post-editor-wrapper.reply-post.isFocus .post-editor[data-v-4522f98e]{border:1px solid var(--color-active)}.post-editor-wrapper.reply-comment[data-v-4522f98e]{border-radius:var(--box-border-radius);overflow:hidden;border:1px solid var(--color-line)}.post-editor-wrapper.reply-comment.isFocus[data-v-4522f98e]{border:1px solid var(--color-active)}.post-editor-wrapper.reply-comment .toolbar[data-v-4522f98e]{background:var(--color-editor-toolbar)}.post-editor-wrapper .post-editor[data-v-4522f98e]{border-radius:var(--box-border-radius);transition:border .3s;width:100%;max-width:100%;padding:.6rem 1.4rem;box-sizing:border-box;outline:none;font-family:Avenir,Helvetica,Arial,sans-serif;font-size:1.4rem;min-height:13rem;resize:none;background:var(--box-background-color);color:var(--color-font-pure);border:1px solid transparent}.post-editor-wrapper .toolbar[data-v-4522f98e]{box-sizing:border-box;padding:.5rem 1rem;width:100%;position:relative;display:flex;justify-content:space-between;align-items:center}.post-editor-wrapper .toolbar .left[data-v-4522f98e]{display:flex;align-items:center;gap:1rem;font-size:2.6rem}.post-editor-wrapper .toolbar .left svg[data-v-4522f98e]{cursor:pointer}.post-editor-wrapper .toolbar .left .upload[data-v-4522f98e]{width:2.6rem;height:2.6rem;overflow:hidden;display:flex;justify-content:center;align-items:center}.post-editor-wrapper .toolbar .left .upload input[data-v-4522f98e]{width:2.6rem;height:2.6rem;cursor:pointer;position:absolute;opacity:0}.post-editor-wrapper .toolbar span[data-v-4522f98e]{color:gray;font-size:1.3rem}.post-editor-wrapper .get-cursor[data-v-4522f98e]{border-radius:var(--box-border-radius);transition:border .3s;width:100%;max-width:100%;padding:.6rem 1.4rem;box-sizing:border-box;outline:none;font-family:Avenir,Helvetica,Arial,sans-serif;font-size:1.4rem;min-height:13rem;resize:none;background:var(--box-background-color);color:var(--color-font-pure);border:1px solid transparent;position:absolute;top:0;z-index:-100}.post-editor-wrapper .emoticon-pack[data-v-4522f98e]{z-index:999999999;border-radius:1rem;padding:1rem;width:31rem;max-width:31rem;height:30rem;max-height:30rem;overflow:auto;background:var(--color-third-bg);border:1px solid var(--color-font-3);box-shadow:0 9px 24px -3px #0000000f,0 4px 8px -1px #0000001f;position:fixed;bottom:11rem;left:14rem}.post-editor-wrapper .emoticon-pack svg[data-v-4522f98e]{cursor:pointer;position:absolute;right:.8rem;font-size:2.4rem}.post-editor-wrapper .emoticon-pack .list[data-v-4522f98e]{margin:1rem 0}.post-editor-wrapper .emoticon-pack img[data-v-4522f98e]{cursor:pointer;width:3rem;height:3rem;padding:.5rem}.post-editor-wrapper .emoticon-pack span[data-v-4522f98e]{display:inline-block;cursor:pointer;font-size:2.3rem;padding:.5rem}.v-enter-active[data-v-2c9a538c],.v-leave-active[data-v-2c9a538c]{transition:opacity .3s ease}.v-enter-from[data-v-2c9a538c],.v-leave-to[data-v-2c9a538c]{opacity:0}.username[data-v-2c9a538c]{font-weight:700;font-size:1.4rem;margin-right:1rem}.link-num[data-v-2c9a538c]{font-size:1.2rem;font-weight:700;color:#e02a2a}.owner[data-v-2c9a538c]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;margin-right:1rem;transform:scale(.8)}.mod[data-v-2c9a538c]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;transform:scale(.8);background:#1484cd;color:#fff;margin-right:1rem}.my-tag[data-v-2c9a538c]{font-size:1.4rem;color:red;margin-left:1rem}.my-tag:hover .remove[data-v-2c9a538c]{display:inline}.my-tag .remove[data-v-2c9a538c]{cursor:pointer;margin-left:.5rem;display:none}.add-tag[data-v-2c9a538c]{font-size:2.4rem;transform:translateY(.2rem);line-height:1rem;display:inline-block;margin-left:1rem;cursor:pointer;position:absolute;display:none}.floor[data-v-2c9a538c]{margin-left:.5rem;font-size:1.1rem;line-height:1rem;border-radius:.5rem;display:inline-block;background-color:var(--color-floor);color:var(--color-floor-font);padding:3px 9px;cursor:default}[data-v-2c9a538c]:root{--color-main-bg: #e2e2e2;--color-second-bg: white;--color-third-bg: #e2e2e2;--color-item-bg: white;--color-swtich-bg: #dcdfe6;--color-active: #409eff;--color-font: #999;--color-font-8: rgba(0, 0, 0, .8);--color-font-3: rgba(0, 0, 0, .3);--color-font-pure: black;--color-input-bg: white;--color-input-border: #e2e2e2;--color-input-border-hover: #a3a6ad;--color-radio-border: #e2e2e2;--color-tooltip-bg: white;--color-tooltip-shadow: #bbbbbb;--color-scrollbar: #93ade3;--color-line: #e2e2e2;--color-loading-1: #00000033;--color-loading-2: #000;--color-floor: #f0f0f0;--color-floor-font: #bdbdbd;--color-editor-toolbar: #f6f7f8;--color-sp-btn-bg: #f1f1f1;--color-call-list-bg: white}html.dark[data-v-2c9a538c]{--color-main-bg: #22303f;--color-second-bg: #18222d;--color-third-bg: #31475e;--color-item-bg: #18222d;--color-swtich-bg: #4c4d4f;--color-active: #409eff;--color-font: rgba(255, 255, 255, .5);--color-font-8: rgba(255, 255, 255, .8);--color-font-3: rgba(255, 255, 255, .3);--color-font-pure: white;--color-input-bg: #333333;--color-input-border: #6c6e72;--color-input-border-hover: #a3a6ad;--color-radio-border: #454847;--color-tooltip-bg: #31475e;--color-tooltip-shadow: #3b3b3b;--color-scrollbar: #5c5d5e;--color-line: var(--box-border-color);--color-loading-1: rgba(178, 177, 177, .2);--color-loading-2: #ffffff;--color-floor: #293b4d;--color-floor-font: rgba(255, 255, 255, .3);--color-editor-toolbar: var(--box-background-hover-color);--color-sp-btn-bg: #31475e;--color-call-list-bg: #31475e}html[data-v-2c9a538c],body[data-v-2c9a538c]{font-size:62.5%}[data-v-2c9a538c]::-webkit-scrollbar{width:1rem;height:1rem}[data-v-2c9a538c]::-webkit-scrollbar-track{background:transparent;border-radius:.2rem}[data-v-2c9a538c]::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:1rem}.flex[data-v-2c9a538c]{display:flex;align-items:center;justify-content:space-between}.flex-end[data-v-2c9a538c]{justify-content:flex-end}.flex-center[data-v-2c9a538c]{justify-content:center}.p1[data-v-2c9a538c]{padding:1rem}.p2[data-v-2c9a538c]{padding:2rem}.p0[data-v-2c9a538c]{padding:0!important}body :is(.topic_content,.reply_content) a[href^=http][data-v-2c9a538c]{text-underline-offset:.7ex;text-decoration:underline 1px}a[data-v-2c9a538c]{text-decoration:none;cursor:pointer}a[data-v-2c9a538c]:hover{text-decoration:underline}.tool[data-v-2c9a538c]{position:relative;display:flex;align-items:center;border-radius:.3rem;cursor:pointer;height:2.6rem;padding:0 .5rem;gap:.2rem}.tool>svg[data-v-2c9a538c]{width:1.6rem!important;height:1.6rem!important}.tool[data-v-2c9a538c]:hover{background:var(--color-third-bg)}.tool.no-hover[data-v-2c9a538c]{cursor:default}.tool.no-hover[data-v-2c9a538c]:hover{background:unset!important}.tool.disabled[data-v-2c9a538c]{cursor:not-allowed}.tool.disabled[data-v-2c9a538c]:hover{background:unset!important}.my-node[data-v-2c9a538c]{border-radius:.2rem;padding:.4rem;font-size:1rem;color:#999;background:#f5f5f5;cursor:pointer}.my-node[data-v-2c9a538c]:hover{text-decoration:none;background:#e2e2e2}.msgs[data-v-2c9a538c]{position:fixed;margin-left:calc(50% - 25rem);width:50rem;z-index:9999;bottom:0;left:0;right:0}.my-box[data-v-2c9a538c]{box-shadow:0 2px 3px #0000001a;box-shadow:#00000014 0 4px 12px;border-radius:var(--box-border-radius);background:var(--box-background-color);margin-bottom:2rem;width:100%;box-sizing:border-box;transition:background-color .3s}.my-cell[data-v-2c9a538c]{color:var(--color-font);padding:.8rem 1rem;font-size:1.4rem;line-height:150%;text-align:left;border-bottom:1px solid var(--color-line)}.modal[data-v-2c9a538c]{position:fixed;z-index:1001;width:100vw;height:100vh;left:0;top:0;display:flex;justify-content:center;align-items:center}.modal .title[data-v-2c9a538c]{font-size:2.4rem;margin-bottom:1rem;text-align:center}.modal .option[data-v-2c9a538c]{display:flex;align-items:center;padding:.6rem 0}.modal .option>span[data-v-2c9a538c]{position:relative}.modal .mask[data-v-2c9a538c]{position:fixed;width:100vw;height:100vh;left:0;top:0;background-color:#1d1c1c47}.radio-group2[data-v-2c9a538c]{display:inline-flex;border-radius:.5rem;overflow:hidden;border:1px solid var(--color-radio-border);background:var(--box-background-alt-color)}.radio-group2 .radio[data-v-2c9a538c]{cursor:pointer;background:transparent;padding:.5rem 1.2rem;border-left:1px solid var(--color-radio-border);font-size:1.3rem;color:var(--color-gray)}.radio-group2 .radio[data-v-2c9a538c]:first-child{border-left:none}.radio-group2 .active[data-v-2c9a538c]{background:var(--color-third-bg);color:var(--color-font)}.pop-confirm[data-v-2c9a538c]{position:relative;display:inline-flex;justify-content:center}input[data-v-2c9a538c]{height:3rem;outline:unset;border:1px solid var(--color-input-border);padding:0 .5rem;border-radius:5px;box-sizing:border-box;transition:all .3s;background:var(--color-input-bg);color:var(--color-font)}input[data-v-2c9a538c]:hover{border:1px solid var(--color-input-border-hover)}input[data-v-2c9a538c]:focus{border:1px solid var(--color-active)}.danger[data-v-2c9a538c]{color:red!important}.html-wrapper[data-v-2c9a538c]{position:relative}.html-wrapper .mask[data-v-2c9a538c]{max-height:90rem;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent)}.html-wrapper .expand[data-v-2c9a538c]{position:absolute;z-index:1;bottom:2rem;padding:.2rem 1.5rem;border-radius:2rem;border:1px solid gray;background:white;color:gray;left:50%;transform:translate(-50%);cursor:pointer}.comment[data-v-d8fc1c55]{width:100%;box-sizing:border-box;margin-top:.6rem}.comment.isLevelOne[data-v-d8fc1c55]{border-bottom:1px solid var(--color-line);padding:.8rem 1rem;margin-top:0}.comment.ding[data-v-d8fc1c55]{background:rgba(255,255,0,.3)!important}.comment.isSimple .avatar[data-v-d8fc1c55],.comment.isSimple .expand-line[data-v-d8fc1c55]{display:none}.comment.isSimple .simple-wrapper[data-v-d8fc1c55]{padding-left:2.8rem}.comment.isSimple .w[data-v-d8fc1c55]{padding-left:0!important;padding-top:.5rem}.comment .comment-content-w .more[data-v-d8fc1c55]{text-align:center;margin:2rem 0}.comment .comment-content[data-v-d8fc1c55]{display:flex;position:relative}.comment .comment-content .expand-line[data-v-d8fc1c55]{cursor:pointer;margin-top:.6rem;width:2rem;min-width:2rem;position:relative}.comment .comment-content .expand-line[data-v-d8fc1c55]:after{position:absolute;left:50%;content:" ";height:100%;width:0;border-right:1px solid var(--color-line)}.comment .comment-content .expand-line[data-v-d8fc1c55]:hover:after{border-right:2px solid var(--color-active)}.comment .comment-content .right[data-v-d8fc1c55]{flex:1;width:calc(100% - 3rem)}.comment .comment-content .right .w[data-v-d8fc1c55]{padding-left:1rem}.comment .comment-content .right .w .post-editor-wrapper[data-v-d8fc1c55]{margin-top:1rem}.wrong-wrapper[data-v-d8fc1c55]{font-size:1.4rem;margin-bottom:1rem}.wrong-wrapper span[data-v-d8fc1c55]{cursor:pointer}.wrong-wrapper .del-line[data-v-d8fc1c55]{text-decoration:line-through}.wrong-wrapper .wrong-icon[data-v-d8fc1c55]{margin-left:.5rem}.wrong-wrapper .warning[data-v-d8fc1c55]{border-top:1px solid #e1e1e1;border-bottom:1px solid #e1e1e1;padding:1rem 0;margin-top:1rem;font-size:1.2rem;color:red}.toolbar[data-v-e3df61b2]{border-top:1px solid var(--color-line);height:3.8rem;padding-left:.6rem;display:flex;align-items:center;color:var(--color-gray);font-size:1.2rem;gap:.5rem}.comment[data-v-87050bc7]{width:100%;box-sizing:border-box;display:flex;gap:1rem;padding:1rem;border-bottom:1px solid var(--color-line)}.comment.isSimple .avatar[data-v-87050bc7]{display:none}.comment.isSimple .reply_content[data-v-87050bc7]{margin-top:.5rem!important}.comment .avatar[data-v-87050bc7]{display:flex}.comment .avatar img[data-v-87050bc7]{width:3.8rem;height:3.8rem;border-radius:.3rem}.comment .comment-body[data-v-87050bc7]{flex:1;display:flex;flex-direction:column}.comment .comment-body .texts[data-v-87050bc7]{display:flex;align-items:center}.comment .comment-body .reply_content[data-v-87050bc7]{margin-top:1rem;max-width:calc(100% - 5rem)}.comment .isRight[data-v-87050bc7]{align-items:flex-end}.comment .isRight .owner[data-v-87050bc7],.comment .isRight .mod[data-v-87050bc7],.comment .isRight .username[data-v-87050bc7]{margin:0 0 0 1rem}.comment .Author-right[data-v-87050bc7]{display:flex;flex-direction:column;align-items:center}.comment .Author-right .floor[data-v-87050bc7]{margin-left:0}.comment .Author-right .jump[data-v-87050bc7]{color:#929596;margin-top:.4rem;font-size:1.4rem}.comment .point[data-v-87050bc7]{margin:0 .5rem;font-size:1.6rem;display:flex;gap:.5rem;align-items:center;font-weight:700;color:#000}.sticky{position:sticky;bottom:-2px;z-index:2;background:var(--box-background-hover-color)!important}.sticky[stuck]{box-shadow:0 2px 20px #00000059!important}.v-enter-active[data-v-cd896901],.v-leave-active[data-v-cd896901]{transition:opacity .3s ease}.v-enter-from[data-v-cd896901],.v-leave-to[data-v-cd896901]{opacity:0}.username[data-v-cd896901]{font-weight:700;font-size:1.4rem;margin-right:1rem}.link-num[data-v-cd896901]{font-size:1.2rem;font-weight:700;color:#e02a2a}.owner[data-v-cd896901]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;margin-right:1rem;transform:scale(.8)}.mod[data-v-cd896901]{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;transform:scale(.8);background:#1484cd;color:#fff;margin-right:1rem}.my-tag[data-v-cd896901]{font-size:1.4rem;color:red;margin-left:1rem}.my-tag:hover .remove[data-v-cd896901]{display:inline}.my-tag .remove[data-v-cd896901]{cursor:pointer;margin-left:.5rem;display:none}.add-tag[data-v-cd896901]{font-size:2.4rem;transform:translateY(.2rem);line-height:1rem;display:inline-block;margin-left:1rem;cursor:pointer;position:absolute;display:none}.floor[data-v-cd896901]{margin-left:.5rem;font-size:1.1rem;line-height:1rem;border-radius:.5rem;display:inline-block;background-color:var(--color-floor);color:var(--color-floor-font);padding:3px 9px;cursor:default}[data-v-cd896901]:root{--color-main-bg: #e2e2e2;--color-second-bg: white;--color-third-bg: #e2e2e2;--color-item-bg: white;--color-swtich-bg: #dcdfe6;--color-active: #409eff;--color-font: #999;--color-font-8: rgba(0, 0, 0, .8);--color-font-3: rgba(0, 0, 0, .3);--color-font-pure: black;--color-input-bg: white;--color-input-border: #e2e2e2;--color-input-border-hover: #a3a6ad;--color-radio-border: #e2e2e2;--color-tooltip-bg: white;--color-tooltip-shadow: #bbbbbb;--color-scrollbar: #93ade3;--color-line: #e2e2e2;--color-loading-1: #00000033;--color-loading-2: #000;--color-floor: #f0f0f0;--color-floor-font: #bdbdbd;--color-editor-toolbar: #f6f7f8;--color-sp-btn-bg: #f1f1f1;--color-call-list-bg: white}html.dark[data-v-cd896901]{--color-main-bg: #22303f;--color-second-bg: #18222d;--color-third-bg: #31475e;--color-item-bg: #18222d;--color-swtich-bg: #4c4d4f;--color-active: #409eff;--color-font: rgba(255, 255, 255, .5);--color-font-8: rgba(255, 255, 255, .8);--color-font-3: rgba(255, 255, 255, .3);--color-font-pure: white;--color-input-bg: #333333;--color-input-border: #6c6e72;--color-input-border-hover: #a3a6ad;--color-radio-border: #454847;--color-tooltip-bg: #31475e;--color-tooltip-shadow: #3b3b3b;--color-scrollbar: #5c5d5e;--color-line: var(--box-border-color);--color-loading-1: rgba(178, 177, 177, .2);--color-loading-2: #ffffff;--color-floor: #293b4d;--color-floor-font: rgba(255, 255, 255, .3);--color-editor-toolbar: var(--box-background-hover-color);--color-sp-btn-bg: #31475e;--color-call-list-bg: #31475e}html[data-v-cd896901],body[data-v-cd896901]{font-size:62.5%}[data-v-cd896901]::-webkit-scrollbar{width:1rem;height:1rem}[data-v-cd896901]::-webkit-scrollbar-track{background:transparent;border-radius:.2rem}[data-v-cd896901]::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:1rem}.flex[data-v-cd896901]{display:flex;align-items:center;justify-content:space-between}.flex-end[data-v-cd896901]{justify-content:flex-end}.flex-center[data-v-cd896901]{justify-content:center}.p1[data-v-cd896901]{padding:1rem}.p2[data-v-cd896901]{padding:2rem}.p0[data-v-cd896901]{padding:0!important}body :is(.topic_content,.reply_content) a[href^=http][data-v-cd896901]{text-underline-offset:.7ex;text-decoration:underline 1px}a[data-v-cd896901]{text-decoration:none;cursor:pointer}a[data-v-cd896901]:hover{text-decoration:underline}.tool[data-v-cd896901]{position:relative;display:flex;align-items:center;border-radius:.3rem;cursor:pointer;height:2.6rem;padding:0 .5rem;gap:.2rem}.tool>svg[data-v-cd896901]{width:1.6rem!important;height:1.6rem!important}.tool[data-v-cd896901]:hover{background:var(--color-third-bg)}.tool.no-hover[data-v-cd896901]{cursor:default}.tool.no-hover[data-v-cd896901]:hover{background:unset!important}.tool.disabled[data-v-cd896901]{cursor:not-allowed}.tool.disabled[data-v-cd896901]:hover{background:unset!important}.my-node[data-v-cd896901]{border-radius:.2rem;padding:.4rem;font-size:1rem;color:#999;background:#f5f5f5;cursor:pointer}.my-node[data-v-cd896901]:hover{text-decoration:none;background:#e2e2e2}.msgs[data-v-cd896901]{position:fixed;margin-left:calc(50% - 25rem);width:50rem;z-index:9999;bottom:0;left:0;right:0}.my-box[data-v-cd896901]{box-shadow:0 2px 3px #0000001a;box-shadow:#00000014 0 4px 12px;border-radius:var(--box-border-radius);background:var(--box-background-color);margin-bottom:2rem;width:100%;box-sizing:border-box;transition:background-color .3s}.my-cell[data-v-cd896901]{color:var(--color-font);padding:.8rem 1rem;font-size:1.4rem;line-height:150%;text-align:left;border-bottom:1px solid var(--color-line)}.modal[data-v-cd896901]{position:fixed;z-index:1001;width:100vw;height:100vh;left:0;top:0;display:flex;justify-content:center;align-items:center}.modal .title[data-v-cd896901]{font-size:2.4rem;margin-bottom:1rem;text-align:center}.modal .option[data-v-cd896901]{display:flex;align-items:center;padding:.6rem 0}.modal .option>span[data-v-cd896901]{position:relative}.modal .mask[data-v-cd896901]{position:fixed;width:100vw;height:100vh;left:0;top:0;background-color:#1d1c1c47}.radio-group2[data-v-cd896901]{display:inline-flex;border-radius:.5rem;overflow:hidden;border:1px solid var(--color-radio-border);background:var(--box-background-alt-color)}.radio-group2 .radio[data-v-cd896901]{cursor:pointer;background:transparent;padding:.5rem 1.2rem;border-left:1px solid var(--color-radio-border);font-size:1.3rem;color:var(--color-gray)}.radio-group2 .radio[data-v-cd896901]:first-child{border-left:none}.radio-group2 .active[data-v-cd896901]{background:var(--color-third-bg);color:var(--color-font)}.pop-confirm[data-v-cd896901]{position:relative;display:inline-flex;justify-content:center}input[data-v-cd896901]{height:3rem;outline:unset;border:1px solid var(--color-input-border);padding:0 .5rem;border-radius:5px;box-sizing:border-box;transition:all .3s;background:var(--color-input-bg);color:var(--color-font)}input[data-v-cd896901]:hover{border:1px solid var(--color-input-border-hover)}input[data-v-cd896901]:focus{border:1px solid var(--color-active)}.danger[data-v-cd896901]{color:red!important}.Post[data-v-cd896901]{position:unset!important;background:transparent!important;overflow:unset!important}.Post .main[data-v-cd896901]{background:transparent!important;padding:unset!important;width:100%!important}.Post .close-btn[data-v-cd896901]{display:none}.post-detail[data-v-cd896901]{text-align:start;position:fixed;z-index:1000;left:0;right:0;bottom:0;top:0;background:rgba(46,47,48,.8);overflow:auto;font-size:1.4rem;display:flex;justify-content:center;flex-wrap:wrap}.post-detail[data-v-cd896901] .subtle{background-color:#ecfdf5e6;border-left:4px solid #a7f3d0}.post-detail.isNight[data-v-cd896901] .subtle{background-color:#1a3332;border-left:4px solid #047857}.post-detail .main[data-v-cd896901]{display:flex;justify-content:flex-end;padding:3rem 8rem 15rem;background:var(--color-main-bg);position:relative;outline:none}.post-detail .main .main-wrapper[data-v-cd896901]{width:77rem;padding-bottom:2rem;display:flex;flex-direction:column;align-items:center;position:relative}.post-detail .main .main-wrapper .post-wrapper .header:hover .add-tag[data-v-cd896901]{display:inline-block}.post-detail .main .main-wrapper .loading-wrapper[data-v-cd896901]{height:20rem;display:flex;justify-content:center;align-items:center}.post-detail .main .main-wrapper #no-comments-yet[data-v-cd896901]{color:#a9a9a9;font-weight:700;text-align:center;width:100%;margin-bottom:2rem;box-sizing:border-box}.post-detail .main .relationReply[data-v-cd896901]{position:fixed;width:25vw;top:6.5rem;bottom:15rem;z-index:100;transform:translate(calc(100% + 2rem));font-size:2rem;overflow:hidden}.post-detail .main .relationReply .my-cell[data-v-cd896901]{background:var(--color-second-bg);border-radius:var(--box-border-radius) var(--box-border-radius) 0 0}.post-detail .main .relationReply .comments[data-v-cd896901]{max-height:calc(100% - 4.2rem);overflow:auto;background:var(--color-second-bg);border-radius:0 0 var(--box-border-radius) var(--box-border-radius)}.post-detail .main .call-list[data-v-cd896901]{z-index:9;position:absolute;top:12rem;border:1px solid var(--color-main-bg);background:var(--color-call-list-bg);box-shadow:0 5px 15px #0000001a;overflow:auto;max-height:30rem;border-radius:var(--box-border-radius);min-width:8rem;box-sizing:content-box}.post-detail .main .call-list .call-item[data-v-cd896901]{border-top:1px solid var(--color-main-bg);height:3rem;display:flex;padding:0 1rem;align-items:center;cursor:pointer;font-size:14px;box-sizing:border-box}.post-detail .main .call-list .call-item .select[data-v-cd896901],.post-detail .main .call-list .call-item[data-v-cd896901]:hover,.post-detail .main .call-list .call-item.select[data-v-cd896901]{background:var(--color-main-bg);text-decoration:none}.post-detail .main .call-list .call-item[data-v-cd896901]:nth-child(1){border-top:1px solid transparent}@media screen and (max-width: 1500px){.post-detail .main-wrapper[data-v-cd896901]{width:65vw!important}}@media screen and (max-width: 1280px){.post-detail .main-wrapper[data-v-cd896901]{width:75vw!important}}@media screen and (max-width: 960px){.post-detail .main-wrapper[data-v-cd896901]{width:100vw!important}}.post-detail .scroll-top[data-v-cd896901]{cursor:pointer;position:fixed;border-radius:.6rem;display:flex;align-items:center;justify-content:center;bottom:10rem;z-index:99;padding:.8rem 0;gap:1rem;width:4.2rem;transform:translate(6rem);font-size:2rem;background:var(--color-sp-btn-bg);color:var(--color-font-3)}.post-detail .scroll-top svg[data-v-cd896901]{font-size:2.4rem}.post-detail .refresh[data-v-cd896901]{cursor:pointer;position:fixed;border-radius:.6rem;display:flex;align-items:center;justify-content:center;bottom:10rem;z-index:99;padding:.8rem 0;gap:1rem;width:4.2rem;transform:translate(6rem);font-size:2rem;background:var(--color-sp-btn-bg);color:var(--color-font-3);bottom:23.5rem}.post-detail .refresh svg[data-v-cd896901]{font-size:2.4rem}.post-detail .scroll-to[data-v-cd896901]{cursor:pointer;position:fixed;border-radius:.6rem;align-items:center;justify-content:center;bottom:10rem;z-index:99;padding:.8rem 0;gap:1rem;width:4.2rem;transform:translate(6rem);font-size:2rem;background:var(--color-sp-btn-bg);color:var(--color-font-3);bottom:15rem;display:flex;flex-direction:column}.post-detail .scroll-to svg[data-v-cd896901]{font-size:2.4rem}.post-detail .scroll-to input[data-v-cd896901]{height:2.6rem;width:3.6rem;font-size:1.4rem;text-align:center;color:gray}.post-detail .close-btn[data-v-cd896901]{color:var(--color-font-3);cursor:pointer;position:fixed;top:3rem;transform:translate(4rem);font-size:1.6rem}.post-detail .top-reply[data-v-cd896901]{color:var(--color-font-3);cursor:pointer;font-size:2rem;display:flex}.base64_tooltip[data-v-c50fb66c]{box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d;background:var(--color-third-bg);min-height:2.2rem;max-width:20rem;padding:1rem;position:fixed;z-index:9998;display:flex;align-items:center;border-radius:.5rem;cursor:pointer;line-break:anywhere;font-size:1.4rem;color:var(--color-font-8)}.base64_tooltip svg[data-v-c50fb66c]{margin-left:1rem;font-size:3rem;color:var(--color-gray)}.base64_tooltip[data-v-c50fb66c] .base-button{margin-left:1rem;margin-top:1rem}.msg[data-v-8bf692ea]{cursor:default;margin-bottom:2rem;display:flex;font-size:1.4rem;box-sizing:border-box;border-radius:var(--box-border-radius);color:var(--color-font-8);background:var(--color-tooltip-bg);box-shadow:0 0 6px 1px var(--color-tooltip-shadow)}.msg.success .left[data-v-8bf692ea]{background:var(--color-active)}.msg.warning .left[data-v-8bf692ea]{background:#c8c002}.msg.error .left[data-v-8bf692ea]{background:red}.msg .left[data-v-8bf692ea]{border-radius:var(--box-border-radius) 0 0 var(--box-border-radius);display:flex;align-items:center;background:var(--color-active);color:#fff;width:3.6rem;font-size:2.4rem;justify-content:center}.msg .left svg[data-v-8bf692ea]{cursor:pointer}.msg .right[data-v-8bf692ea]{flex:1;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.tag-modal .wrapper[data-v-341122ff]{z-index:9;background:var(--color-main-bg);color:var(--color-font-8);border-radius:1.6rem;font-size:1.4rem;padding:2rem 4rem;width:25rem}.tag-modal .wrapper .title[data-v-341122ff]{font-weight:700}.tag-modal .wrapper .btns[data-v-341122ff]{margin-top:1.5rem;display:flex;justify-content:flex-end;align-items:center;gap:1.5rem;font-size:1.4rem}.msgs[data-v-b73f4332]{position:fixed;margin-left:calc(50% - 25rem);width:50rem;z-index:9999;bottom:0;left:0;right:0}.tag-modal .modal-root[data-v-882b932b]{z-index:9;background:var(--color-second-bg);color:var(--color-font-8);border-radius:1.6rem;font-size:1.4rem;width:50vw;height:70vh;display:flex;flex-direction:column}.tag-modal .modal-root .modal-header[data-v-882b932b]{padding:2.4rem;display:flex;justify-content:space-between}.tag-modal .modal-root .modal-header .title[data-v-882b932b]{font-size:2.6rem;font-weight:700;text-align:left;margin-bottom:0}.tag-modal .modal-root .modal-header i[data-v-882b932b]{cursor:pointer;font-size:2.2rem}.tag-modal .modal-root .modal-body[data-v-882b932b]{padding:2rem;padding-top:0;flex:1;overflow:auto}.tag-modal .modal-root .modal-body[data-v-882b932b] .cell{padding:2rem}.v-enter-active,.v-leave-active{transition:opacity .3s ease}.v-enter-from,.v-leave-to{opacity:0}.username{font-weight:700;font-size:1.4rem;margin-right:1rem}.link-num{font-size:1.2rem;font-weight:700;color:#e02a2a}.owner{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;margin-right:1rem;transform:scale(.8)}.mod{display:inline-block;background-color:transparent;color:#1484cd;border-radius:.3rem;padding:0 .3rem;cursor:default;border:2px solid #1484cd;font-size:1.2rem;font-weight:700;transform:scale(.8);background:#1484cd;color:#fff;margin-right:1rem}.my-tag{font-size:1.4rem;color:red;margin-left:1rem}.my-tag:hover .remove{display:inline}.my-tag .remove{cursor:pointer;margin-left:.5rem;display:none}.add-tag{font-size:2.4rem;transform:translateY(.2rem);line-height:1rem;display:inline-block;margin-left:1rem;cursor:pointer;position:absolute;display:none}.floor{margin-left:.5rem;font-size:1.1rem;line-height:1rem;border-radius:.5rem;display:inline-block;background-color:var(--color-floor);color:var(--color-floor-font);padding:3px 9px;cursor:default}:root{--color-main-bg: #e2e2e2;--color-second-bg: white;--color-third-bg: #e2e2e2;--color-item-bg: white;--color-swtich-bg: #dcdfe6;--color-active: #409eff;--color-font: #999;--color-font-8: rgba(0, 0, 0, .8);--color-font-3: rgba(0, 0, 0, .3);--color-font-pure: black;--color-input-bg: white;--color-input-border: #e2e2e2;--color-input-border-hover: #a3a6ad;--color-radio-border: #e2e2e2;--color-tooltip-bg: white;--color-tooltip-shadow: #bbbbbb;--color-scrollbar: #93ade3;--color-line: #e2e2e2;--color-loading-1: #00000033;--color-loading-2: #000;--color-floor: #f0f0f0;--color-floor-font: #bdbdbd;--color-editor-toolbar: #f6f7f8;--color-sp-btn-bg: #f1f1f1;--color-call-list-bg: white}html.dark{--color-main-bg: #22303f;--color-second-bg: #18222d;--color-third-bg: #31475e;--color-item-bg: #18222d;--color-swtich-bg: #4c4d4f;--color-active: #409eff;--color-font: rgba(255, 255, 255, .5);--color-font-8: rgba(255, 255, 255, .8);--color-font-3: rgba(255, 255, 255, .3);--color-font-pure: white;--color-input-bg: #333333;--color-input-border: #6c6e72;--color-input-border-hover: #a3a6ad;--color-radio-border: #454847;--color-tooltip-bg: #31475e;--color-tooltip-shadow: #3b3b3b;--color-scrollbar: #5c5d5e;--color-line: var(--box-border-color);--color-loading-1: rgba(178, 177, 177, .2);--color-loading-2: #ffffff;--color-floor: #293b4d;--color-floor-font: rgba(255, 255, 255, .3);--color-editor-toolbar: var(--box-background-hover-color);--color-sp-btn-bg: #31475e;--color-call-list-bg: #31475e}html,body{font-size:62.5%}::-webkit-scrollbar{width:1rem;height:1rem}::-webkit-scrollbar-track{background:transparent;border-radius:.2rem}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:1rem}.flex{display:flex;align-items:center;justify-content:space-between}.flex-end{justify-content:flex-end}.flex-center{justify-content:center}.p1{padding:1rem}.p2{padding:2rem}.p0{padding:0!important}body :is(.topic_content,.reply_content) a[href^=http]{text-underline-offset:.7ex;text-decoration:underline 1px}a{text-decoration:none;cursor:pointer}a:hover{text-decoration:underline}.tool{position:relative;display:flex;align-items:center;border-radius:.3rem;cursor:pointer;height:2.6rem;padding:0 .5rem;gap:.2rem}.tool>svg{width:1.6rem!important;height:1.6rem!important}.tool:hover{background:var(--color-third-bg)}.tool.no-hover{cursor:default}.tool.no-hover:hover{background:unset!important}.tool.disabled{cursor:not-allowed}.tool.disabled:hover{background:unset!important}.my-node{border-radius:.2rem;padding:.4rem;font-size:1rem;color:#999;background:#f5f5f5;cursor:pointer}.my-node:hover{text-decoration:none;background:#e2e2e2}.msgs{position:fixed;margin-left:calc(50% - 25rem);width:50rem;z-index:9999;bottom:0;left:0;right:0}.my-box{box-shadow:0 2px 3px #0000001a;box-shadow:#00000014 0 4px 12px;border-radius:var(--box-border-radius);background:var(--box-background-color);margin-bottom:2rem;width:100%;box-sizing:border-box;transition:background-color .3s}.my-cell{color:var(--color-font);padding:.8rem 1rem;font-size:1.4rem;line-height:150%;text-align:left;border-bottom:1px solid var(--color-line)}.modal{position:fixed;z-index:1001;width:100vw;height:100vh;left:0;top:0;display:flex;justify-content:center;align-items:center}.modal .title{font-size:2.4rem;margin-bottom:1rem;text-align:center}.modal .option{display:flex;align-items:center;padding:.6rem 0}.modal .option>span{position:relative}.modal .mask{position:fixed;width:100vw;height:100vh;left:0;top:0;background-color:#1d1c1c47}.radio-group2{display:inline-flex;border-radius:.5rem;overflow:hidden;border:1px solid var(--color-radio-border);background:var(--box-background-alt-color)}.radio-group2 .radio{cursor:pointer;background:transparent;padding:.5rem 1.2rem;border-left:1px solid var(--color-radio-border);font-size:1.3rem;color:var(--color-gray)}.radio-group2 .radio:first-child{border-left:none}.radio-group2 .active{background:var(--color-third-bg);color:var(--color-font)}.pop-confirm{position:relative;display:inline-flex;justify-content:center}input{height:3rem;outline:unset;border:1px solid var(--color-input-border);padding:0 .5rem;border-radius:5px;box-sizing:border-box;transition:all .3s;background:var(--color-input-bg);color:var(--color-font)}input:hover{border:1px solid var(--color-input-border-hover)}input:focus{border:1px solid var(--color-active)}.danger{color:red!important}.target-user-tags[data-v-d41b820d]{background:var(--color-second-bg);color:var(--color-font);word-break:break-all;text-align:start;font-size:1.4rem;box-shadow:0 2px 3px #0000001a;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.target-user-tags .add-tag[data-v-d41b820d]{display:inline-block}.loaded[data-v-d41b820d]{font-size:1.4rem;display:flex;align-items:center;gap:1rem;color:var(--color-font-pure)} ');
(function (vue) {
'use strict';
var q=(e=>(e.Home="Home",e.Node="Node",e.Post="Post",e.Member="Member",e.Changes="Changes",e))(q||{}),O=(e=>(e[e.FloorInFloor=0]="FloorInFloor",e[e.FloorInFloorNoCallUser=4]="FloorInFloorNoCallUser",e[e.FloorInFloorNested=5]="FloorInFloorNested",e[e.Like=1]="Like",e[e.V2exOrigin=2]="V2exOrigin",e[e.OnlyOp=3]="OnlyOp",e[e.New=6]="New",e))(O||{});const zt=400,Cn={name:"Tooltip",props:{title:{type:String,default(){return ""}},disabled:{type:Boolean,default(){return !1}}},data(){return {show:!1}},methods:{showPop(e){if(this.disabled||!this.title)return;e.stopPropagation();let t=e.target.getBoundingClientRect();this.show=!0,vue.nextTick(()=>{var s,a;let n=(a=(s=this.$refs)==null?void 0:s.tip)==null?void 0:a.getBoundingClientRect();if(!n)return;t.top<50?this.$refs.tip.style.top=t.top+t.height+10+"px":this.$refs.tip.style.top=t.top-n.height-10+"px";let o=n.width,i=t.width;this.$refs.tip.style.left=t.left-(o-i)/2+"px";});}},render(){let e=this.$slots.default()[0];return vue.createVNode(vue.Fragment,null,[this.show&&this.title&&vue.createVNode(vue.Teleport,{to:"body"},{default:()=>[vue.createVNode(vue.Transition,{name:"fade"},{default:()=>[vue.createVNode("div",{ref:"tip",className:"tip"},[this.title])]})]}),vue.createVNode(e,{onClick:()=>this.show=!1,onmouseenter:t=>this.showPop(t),onmouseleave:()=>this.show=!1},null)])}};const K=(e,t)=>{const n=e.__vccOpts||e;for(const[o,i]of t)n[o]=i;return n},Ue=K(Cn,[["__scopeId","data-v-ee672411"]]),Sn=vue.defineComponent({__name:"BaseSwitch",props:{modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){return (n,o)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["switch",{active:n.modelValue}]),onClick:o[0]||(o[0]=i=>n.$emit("update:modelValue",!n.modelValue))},null,2))}});const ht=K(Sn,[["__scopeId","data-v-e7c0fbef"]]);var In=(()=>typeof GM_notification<"u"?GM_notification:void 0)(),Ln=(()=>typeof GM_openInTab<"u"?GM_openInTab:void 0)(),Ce=(()=>typeof GM_registerMenuCommand<"u"?GM_registerMenuCommand:void 0)();const I={getAllReply(e=[]){return e.sort((t,n)=>t.i-n.i).reduce((t,n)=>(t=t.concat(n.replyList),t),[])},findChildren(e,t,n){var u;const o=(c,d,r)=>{c.level=r.level+1;let m=n.findIndex(v=>v.floor===c.floor);m>-1&&(n[m].isUse=!0),r.children.push(this.findChildren(c,d,n));};e.children=[];let i=[];for(let c=0;c<t.length;c++){let d=t[c];d.isUse||d.replyFloor===e.floor&&(d.replyUsers.length===1&&d.replyUsers[0]===e.username?(d.isUse=!0,i.push({endList:t.slice(c+1),currentItem:d})):d.isWrong=!0);}i.reverse().map(({currentItem:c,endList:d})=>{o(c,d,e);});let s=t.findIndex(c=>{var d;return c.username===e.username&&((d=c.replyUsers)==null?void 0:d[0])!==e.username}),a=s>-1?t.slice(0,s):t;for(let c=0;c<a.length;c++){let d=a[c];if(!d.isUse){if(d.replyUsers.length===1){if(d.replyFloor!==-1&&((u=n[d.replyFloor-1])==null?void 0:u.username)===d.replyUsers[0])continue;let r=t.slice(c+1);if(d.username===e.username){d.replyUsers[0]===e.username&&o(d,r,e);break}else d.replyUsers[0]===e.username&&o(d,r,e);}else if(d.username===e.username)break}}return e.children=e.children.sort((c,d)=>c.floor-d.floor),e},createNestedList(e=[]){if(!e.length)return [];let t=window.clone(e),n=[];return t.map((o,i)=>{let s=t.slice(0,i),a=Array.from(new Set(s.map(c=>c.username))),u=t.slice(i+1);if(i===0)n.push(this.findChildren(o,u,t));else if(!o.isUse){let c=!1;o.replyUsers.length?o.replyUsers.length>1?c=!0:c=!a.find(d=>d===o.replyUsers[0]):c=!0,c&&(o.level=0,n.push(this.findChildren(o,u,t)));}}),n},createNestedRedundantList(e=[]){if(!e.length)return [];let t=window.clone(e),n=[];return t.map((o,i)=>{let s=t.slice(0,i),a=Array.from(new Set(s.map(c=>c.username))),u=t.slice(i+1);if(i===0)n.push(this.findChildren(o,u,t));else if(o.isUse){let c=window.clone(o);c.children=[],c.level=0,c.isDup=!0,n.push(c);}else {let c=!1;o.replyUsers.length?o.replyUsers.length>1?c=!0:c=!a.find(d=>d===o.replyUsers[0]):c=!0,c&&(o.level=0,n.push(this.findChildren(o,u,t)));}}),n},parseA(e){let t=e.href,n;return t.includes("/t/")&&(n=e.pathname.substring(3)),{href:t,id:n,title:e.innerText}},checkPhotoLink2Img(e){if(e){try{[/<a((?!<a).)*href="https?:\/\/((?!<a).)*imgur.com((?!<a).)*>(((?!<a).)*)<\/a>/g,/<a((?!<a).)*href="https?:\/\/((?!<a).)*\.(gif|png|jpg|jpeg|GIF|PNG|JPG|JPEG) ((?!<a).)*>(((?!<a).)*)<\/a>/g].map((n,o)=>{[...e.matchAll(n)].map(a=>{let u=o===0?a[4]:a[5];if(u){let c=u.toLowerCase(),d=u;c.includes(".png")||c.includes(".jpg")||c.includes(".jpeg")||c.includes(".gif")||(d=u+".png"),e=e.replace(a[0],`<img src="${d}" data-originUrl="${u}" data-notice="此img标签由v2ex-超级增强脚本解析" style="max-width: 100%">`);}});});}catch{console.log("正则解析html里面的a标签的图片链接出错了");}return e}},async checkPostReplies(e,t=!0){return new Promise(async n=>{let o=await I.getPostDetailByApi(e);if((o==null?void 0:o.replies)>zt)return t&&I.openNewTab(`https://${location.origin}/t/${e}?p=1&script=1`),n(!0);n(!1);})},async sleep(e){return new Promise(t=>{setTimeout(t,e);})},openNewTab(e,t=!1){Ln(e,{active:t});},async cbChecker(e,t=0){if(window.cb)window.cb(e);else {for(;!window.cb&&t<30;)await I.sleep(500),t++;window.cb&&window.cb(e);}},initMonkeyMenu(){try{Ce("脚本设置",()=>{I.cbChecker({type:"openSetting"});}),Ce("仓库地址",()=>{I.openNewTab(window.const.git);}),Ce("反馈 & 建议",I.feedback);}catch{console.error("无法使用Tampermonkey");}},clone(e){return JSON.parse(JSON.stringify(e))},feedback(){I.openNewTab(ge.issue);},checkPageType(e){let t=e||window.location,n={pageType:null,pageData:{id:"",pageNo:null}};if(t.pathname==="/")n.pageType=q.Home;else if(t.pathname==="/changes")n.pageType=q.Changes;else if(t.pathname==="/recent")n.pageType=q.Changes;else if(t.href.match(/.com\/?tab=/))n.pageType=q.Home;else if(t.href.match(/.com\/go\//))t.href.includes("/links")||(n.pageType=q.Node);else if(t.href.match(/.com\/member/))n.pageType=q.Member;else {let o=t.href.match(/.com\/t\/([\d]+)/);if(o&&!t.pathname.includes("review")&&!t.pathname.includes("info")&&(n.pageType=q.Post,n.pageData.id=o[1],t.search)){let i=t.href.match(/\?p=([\d]+)/);i&&(n.pageData.pageNo=Number(i[1]));}}return n},getPostDetailByApi(e){return new Promise(t=>{fetch(`${location.origin}/api/topics/show.json?id=${e}`).then(async n=>{if(n.status===200){let o=await n.json();if(o){let i=o[0];t(i);}}});})},appendPostContent(e,t){let n=document.createElement("a");n.href=e.href,n.classList.add("post-content");let o=document.createElement("div");o.innerHTML=e.content_rendered,n.append(o),t.append(n),(()=>{var s;if(o.clientHeight<300)n.classList.add("show-all");else {let a=document.createElement("div");a.classList.add("show-more"),a.innerHTML="显示更多/收起",a.onclick=function(u){u.stopPropagation(),n.classList.toggle("show-all");},(s=n.parentNode)==null||s.append(a);}})();},initConfig(){return new Promise(e=>{let t=localStorage.getItem("v2ex-config");if(t){let n=JSON.parse(t);n=n[window.user.username??"default"],n&&(window.config=Object.assign(window.config,n));}e(window.config);})}},Jt={allReplyUsers:[],content_rendered:"",createDate:"",createDateAgo:"",lastReplyDate:"",fr:"",replyList:[],nestedReplies:[],nestedRedundReplies:[],username:"",url:"",href:"",member:{},node:{title:"",url:""},headerTemplate:"",title:"",id:"",type:"post",once:"",replyCount:0,clickCount:0,thankCount:0,collectCount:0,lastReadFloor:0,isFavorite:!1,isIgnore:!1,isThanked:!1,isReport:!1,inList:!1},Me=(e={})=>Object.assign(I.clone(Jt),e),Rn={tagPrefix:"--用户标签--",tags:{},tagsId:"",username:"",avatar:"",readPrefix:"--已读楼层--",readNoteItemId:"",readList:{},imgurPrefix:"--imgur图片删除hash--",imgurList:{},imgurNoteId:"",configPrefix:"--config--",configNoteId:""},ge={pageType:void 0,pageData:{pageNo:1},targetUserName:"",currentVersion:1,isNight:!1,cb:null,stopMe:null,postList:[],git:"https://github.com/zyronon/web-scripts",shortGit:"zyronon/web-scripts",issue:"https://github.com/zyronon/web-scripts/issues",pcLog:"https://gf.qytechs.cn/zh-CN/scripts/458024/versions",pcScript:"https://gf.qytechs.cn/zh-CN/scripts/458024",mobileScript:"https://gf.qytechs.cn/zh-CN/scripts/485356",homeUrl:"https://v2next.netlify.app/"},Mn={showToolbar:!0,autoOpenDetail:!0,openTag:!1,clickPostItemOpenDetail:!0,closePostDetailBySpace:!0,contentAutoCollapse:!0,viewType:"table",commentDisplayType:O.FloorInFloorNoCallUser,newTabOpen:!1,newTabOpenActive:!1,base64:!0,sov2ex:!1,postWidth:"",showTopReply:!0,topReplyLoveMinCount:3,topReplyCount:3,autoJumpLastReadFloor:!1,rememberLastReadFloor:!1,autoSignin:!0,customBgColor:"",version:ge.currentVersion,collectBrowserNotice:!1,fontSizeType:"normal"},Ne=/^[a-z0-9]+(-[a-z0-9]+)*$/,Ke=(e,t,n,o="")=>{const i=e.split(":");if(e.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;o=i.shift().slice(1);}if(i.length>3||!i.length)return null;if(i.length>1){const u=i.pop(),c=i.pop(),d={provider:i.length>0?i[0]:o,prefix:c,name:u};return t&&!je(d)?null:d}const s=i[0],a=s.split("-");if(a.length>1){const u={provider:o,prefix:a.shift(),name:a.join("-")};return t&&!je(u)?null:u}if(n&&o===""){const u={provider:o,prefix:"",name:s};return t&&!je(u,n)?null:u}return null},je=(e,t)=>e?!!((e.provider===""||e.provider.match(Ne))&&(t&&e.prefix===""||e.prefix.match(Ne))&&e.name.match(Ne)):!1,Kt=Object.freeze({left:0,top:0,width:16,height:16}),ze=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Xe=Object.freeze({...Kt,...ze}),st=Object.freeze({...Xe,body:"",hidden:!1});function Nn(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const o=((e.rotate||0)+(t.rotate||0))%4;return o&&(n.rotate=o),n}function Mt(e,t){const n=Nn(e,t);for(const o in st)o in ze?o in e&&!(o in n)&&(n[o]=ze[o]):o in t?n[o]=t[o]:o in e&&(n[o]=e[o]);return n}function On(e,t){const n=e.icons,o=e.aliases||Object.create(null),i=Object.create(null);function s(a){if(n[a])return i[a]=[];if(!(a in i)){i[a]=null;const u=o[a]&&o[a].parent,c=u&&s(u);c&&(i[a]=[u].concat(c));}return i[a]}return (t||Object.keys(n).concat(Object.keys(o))).forEach(s),i}function Pn(e,t,n){const o=e.icons,i=e.aliases||Object.create(null);let s={};function a(u){s=Mt(o[u]||i[u],s);}return a(t),n.forEach(a),Mt(e,s)}function Xt(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(i=>{t(i,null),n.push(i);});const o=On(e);for(const i in o){const s=o[i];s&&(t(i,Pn(e,i,s)),n.push(i));}return n}const En={provider:"",aliases:{},not_found:{},...Kt};function et(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return !1;return !0}function Yt(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!et(e,En))return null;const n=t.icons;for(const i in n){const s=n[i];if(!i.match(Ne)||typeof s.body!="string"||!et(s,st))return null}const o=t.aliases||Object.create(null);for(const i in o){const s=o[i],a=s.parent;if(!i.match(Ne)||typeof a!="string"||!n[a]&&!o[a]||!et(s,st))return null}return t}const Nt=Object.create(null);function An(e,t){return {provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function be(e,t){const n=Nt[e]||(Nt[e]=Object.create(null));return n[t]||(n[t]=An(e,t))}function ft(e,t){return Yt(t)?Xt(t,(n,o)=>{o?e.icons[n]=o:e.missing.add(n);}):[]}function Dn(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return !1}let Ee=!1;function Qt(e){return typeof e=="boolean"&&(Ee=e),Ee}function Vn(e){const t=typeof e=="string"?Ke(e,!0,Ee):e;if(t){const n=be(t.provider,t.prefix),o=t.name;return n.icons[o]||(n.missing.has(o)?null:void 0)}}function Un(e,t){const n=Ke(e,!0,Ee);if(!n)return !1;const o=be(n.provider,n.prefix);return Dn(o,n.name,t)}function $n(e,t){if(typeof e!="object")return !1;if(typeof t!="string"&&(t=e.provider||""),Ee&&!t&&!e.prefix){let i=!1;return Yt(e)&&(e.prefix="",Xt(e,(s,a)=>{a&&Un(s,a)&&(i=!0);})),i}const n=e.prefix;if(!je({provider:t,prefix:n,name:"a"}))return !1;const o=be(t,n);return !!ft(o,e)}const Zt=Object.freeze({width:null,height:null}),en=Object.freeze({...Zt,...ze}),Hn=/(-?[0-9.]*[0-9]+[0-9.]*)/g,Fn=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Ot(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const o=e.split(Hn);if(o===null||!o.length)return e;const i=[];let s=o.shift(),a=Fn.test(s);for(;;){if(a){const u=parseFloat(s);isNaN(u)?i.push(s):i.push(Math.ceil(u*t*n)/n);}else i.push(s);if(s=o.shift(),s===void 0)return i.join("");a=!a;}}const Bn=e=>e==="unset"||e==="undefined"||e==="none";function Gn(e,t){const n={...Xe,...e},o={...en,...t},i={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,o].forEach(f=>{const y=[],p=f.hFlip,k=f.vFlip;let T=f.rotate;p?k?T+=2:(y.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),y.push("scale(-1 1)"),i.top=i.left=0):k&&(y.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),y.push("scale(1 -1)"),i.top=i.left=0);let S;switch(T<0&&(T-=Math.floor(T/4)*4),T=T%4,T){case 1:S=i.height/2+i.top,y.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:y.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:S=i.width/2+i.left,y.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}T%2===1&&(i.left!==i.top&&(S=i.left,i.left=i.top,i.top=S),i.width!==i.height&&(S=i.width,i.width=i.height,i.height=S)),y.length&&(s='<g transform="'+y.join(" ")+'">'+s+"</g>");});const a=o.width,u=o.height,c=i.width,d=i.height;let r,m;a===null?(m=u===null?"1em":u==="auto"?d:u,r=Ot(m,c/d)):(r=a==="auto"?c:a,m=u===null?Ot(r,d/c):u==="auto"?d:u);const v={},b=(f,y)=>{Bn(y)||(v[f]=y.toString());};return b("width",r),b("height",m),v.viewBox=i.left.toString()+" "+i.top.toString()+" "+c.toString()+" "+d.toString(),{attributes:v,body:s}}const jn=/\sid="(\S+)"/g,Wn="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let qn=0;function zn(e,t=Wn){const n=[];let o;for(;o=jn.exec(e);)n.push(o[1]);if(!n.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const a=typeof t=="function"?t(s):t+(qn++).toString(),u=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+u+')([")]|\\.[a-z])',"g"),"$1"+a+i+"$3");}),e=e.replace(new RegExp(i,"g"),""),e}const ot=Object.create(null);function Jn(e,t){ot[e]=t;}function lt(e){return ot[e]||ot[""]}function mt(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return {resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const gt=Object.create(null),Re=["https://api.simplesvg.com","https://api.unisvg.com"],We=[];for(;Re.length>0;)Re.length===1||Math.random()>.5?We.push(Re.shift()):We.push(Re.pop());gt[""]=mt({resources:["https://api.iconify.design"].concat(We)});function Kn(e,t){const n=mt(t);return n===null?!1:(gt[e]=n,!0)}function yt(e){return gt[e]}const Xn=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Pt=Xn();function Yn(e,t){const n=yt(e);if(!n)return 0;let o;if(!n.maxURL)o=0;else {let i=0;n.resources.forEach(a=>{i=Math.max(i,a.length);});const s=t+".json?icons=";o=n.maxURL-i-n.path.length-s.length;}return o}function Qn(e){return e===404}const Zn=(e,t,n)=>{const o=[],i=Yn(e,t),s="icons";let a={type:s,provider:e,prefix:t,icons:[]},u=0;return n.forEach((c,d)=>{u+=c.length+1,u>=i&&d>0&&(o.push(a),a={type:s,provider:e,prefix:t,icons:[]},u=c.length),a.icons.push(c);}),o.push(a),o};function ei(e){if(typeof e=="string"){const t=yt(e);if(t)return t.path}return "/"}const ti=(e,t,n)=>{if(!Pt){n("abort",424);return}let o=ei(t.provider);switch(t.type){case"icons":{const s=t.prefix,u=t.icons.join(","),c=new URLSearchParams({icons:u});o+=s+".json?"+c.toString();break}case"custom":{const s=t.uri;o+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let i=503;Pt(e+o).then(s=>{const a=s.status;if(a!==200){setTimeout(()=>{n(Qn(a)?"abort":"next",a);});return}return i=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",i);});return}setTimeout(()=>{n("success",s);});}).catch(()=>{n("next",i);});},ni={prepare:Zn,send:ti};function ii(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((i,s)=>i.provider!==s.provider?i.provider.localeCompare(s.provider):i.prefix!==s.prefix?i.prefix.localeCompare(s.prefix):i.name.localeCompare(s.name));let o={provider:"",prefix:"",name:""};return e.forEach(i=>{if(o.name===i.name&&o.prefix===i.prefix&&o.provider===i.provider)return;o=i;const s=i.provider,a=i.prefix,u=i.name,c=n[s]||(n[s]=Object.create(null)),d=c[a]||(c[a]=be(s,a));let r;u in d.icons?r=t.loaded:a===""||d.missing.has(u)?r=t.missing:r=t.pending;const m={provider:s,prefix:a,name:u};r.push(m);}),t}function tn(e,t){e.forEach(n=>{const o=n.loaderCallbacks;o&&(n.loaderCallbacks=o.filter(i=>i.id!==t));});}function si(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const o=e.provider,i=e.prefix;t.forEach(s=>{const a=s.icons,u=a.pending.length;a.pending=a.pending.filter(c=>{if(c.prefix!==i)return !0;const d=c.name;if(e.icons[d])a.loaded.push({provider:o,prefix:i,name:d});else if(e.missing.has(d))a.missing.push({provider:o,prefix:i,name:d});else return n=!0,!0;return !1}),a.pending.length!==u&&(n||tn([e],s.id),s.callback(a.loaded.slice(0),a.missing.slice(0),a.pending.slice(0),s.abort));});}));}let oi=0;function li(e,t,n){const o=oi++,i=tn.bind(null,n,o);if(!t.pending.length)return i;const s={id:o,icons:t,callback:e,abort:i};return n.forEach(a=>{(a.loaderCallbacks||(a.loaderCallbacks=[])).push(s);}),i}function ri(e,t=!0,n=!1){const o=[];return e.forEach(i=>{const s=typeof i=="string"?Ke(i,t,n):i;s&&o.push(s);}),o}var ai={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function ci(e,t,n,o){const i=e.resources.length,s=e.random?Math.floor(Math.random()*i):e.index;let a;if(e.random){let M=e.resources.slice(0);for(a=[];M.length>1;){const B=Math.floor(Math.random()*M.length);a.push(M[B]),M=M.slice(0,B).concat(M.slice(B+1));}a=a.concat(M);}else a=e.resources.slice(s).concat(e.resources.slice(0,s));const u=Date.now();let c="pending",d=0,r,m=null,v=[],b=[];typeof o=="function"&&b.push(o);function f(){m&&(clearTimeout(m),m=null);}function y(){c==="pending"&&(c="aborted"),f(),v.forEach(M=>{M.status==="pending"&&(M.status="aborted");}),v=[];}function p(M,B){B&&(b=[]),typeof M=="function"&&b.push(M);}function k(){return {startTime:u,payload:t,status:c,queriesSent:d,queriesPending:v.length,subscribe:p,abort:y}}function T(){c="failed",b.forEach(M=>{M(void 0,r);});}function S(){v.forEach(M=>{M.status==="pending"&&(M.status="aborted");}),v=[];}function z(M,B,V){const ae=B!=="success";switch(v=v.filter(Q=>Q!==M),c){case"pending":break;case"failed":if(ae||!e.dataAfterTimeout)return;break;default:return}if(B==="abort"){r=V,T();return}if(ae){r=V,v.length||(a.length?W():T());return}if(f(),S(),!e.random){const Q=e.resources.indexOf(M.resource);Q!==-1&&Q!==e.index&&(e.index=Q);}c="completed",b.forEach(Q=>{Q(V);});}function W(){if(c!=="pending")return;f();const M=a.shift();if(M===void 0){if(v.length){m=setTimeout(()=>{f(),c==="pending"&&(S(),T());},e.timeout);return}T();return}const B={status:"pending",resource:M,callback:(V,ae)=>{z(B,V,ae);}};v.push(B),d++,m=setTimeout(W,e.rotate),n(M,t,B.callback);}return setTimeout(W),k}function nn(e){const t={...ai,...e};let n=[];function o(){n=n.filter(u=>u().status==="pending");}function i(u,c,d){const r=ci(t,u,c,(m,v)=>{o(),d&&d(m,v);});return n.push(r),r}function s(u){return n.find(c=>u(c))||null}return {query:i,find:s,setIndex:u=>{t.index=u;},getIndex:()=>t.index,cleanup:o}}function Et(){}const tt=Object.create(null);function di(e){if(!tt[e]){const t=yt(e);if(!t)return;const n=nn(t),o={config:t,redundancy:n};tt[e]=o;}return tt[e]}function ui(e,t,n){let o,i;if(typeof e=="string"){const s=lt(e);if(!s)return n(void 0,424),Et;i=s.send;const a=di(e);a&&(o=a.redundancy);}else {const s=mt(e);if(s){o=nn(s);const a=e.resources?e.resources[0]:"",u=lt(a);u&&(i=u.send);}}return !o||!i?(n(void 0,424),Et):o.query(t,i,n)().abort}const At="iconify2",Ae="iconify",sn=Ae+"-count",Dt=Ae+"-version",on=36e5,pi=168;function rt(e,t){try{return e.getItem(t)}catch{}}function wt(e,t,n){try{return e.setItem(t,n),!0}catch{}}function Vt(e,t){try{e.removeItem(t);}catch{}}function at(e,t){return wt(e,sn,t.toString())}function ct(e){return parseInt(rt(e,sn))||0}const Ye={local:!0,session:!0},ln={local:new Set,session:new Set};let _t=!1;function hi(e){_t=e;}let Ge=typeof window>"u"?{}:window;function rn(e){const t=e+"Storage";try{if(Ge&&Ge[t]&&typeof Ge[t].length=="number")return Ge[t]}catch{}Ye[e]=!1;}function an(e,t){const n=rn(e);if(!n)return;const o=rt(n,Dt);if(o!==At){if(o){const u=ct(n);for(let c=0;c<u;c++)Vt(n,Ae+c.toString());}wt(n,Dt,At),at(n,0);return}const i=Math.floor(Date.now()/on)-pi,s=u=>{const c=Ae+u.toString(),d=rt(n,c);if(typeof d=="string"){try{const r=JSON.parse(d);if(typeof r=="object"&&typeof r.cached=="number"&&r.cached>i&&typeof r.provider=="string"&&typeof r.data=="object"&&typeof r.data.prefix=="string"&&t(r,u))return !0}catch{}Vt(n,c);}};let a=ct(n);for(let u=a-1;u>=0;u--)s(u)||(u===a-1?(a--,at(n,a)):ln[e].add(u));}function cn(){if(!_t){hi(!0);for(const e in Ye)an(e,t=>{const n=t.data,o=t.provider,i=n.prefix,s=be(o,i);if(!ft(s,n).length)return !1;const a=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,a):a,!0});}}function fi(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const o in Ye)an(o,i=>{const s=i.data;return i.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return !0}function mi(e,t){_t||cn();function n(o){let i;if(!Ye[o]||!(i=rn(o)))return;const s=ln[o];let a;if(s.size)s.delete(a=Array.from(s).shift());else if(a=ct(i),!at(i,a+1))return;const u={cached:Math.floor(Date.now()/on),provider:e.provider,data:t};return wt(i,Ae+a.toString(),JSON.stringify(u))}t.lastModified&&!fi(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"));}function Ut(){}function gi(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,si(e);}));}function yi(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:o}=e,i=e.iconsToLoad;delete e.iconsToLoad;let s;if(!i||!(s=lt(n)))return;s.prepare(n,o,i).forEach(u=>{ui(n,u,c=>{if(typeof c!="object")u.icons.forEach(d=>{e.missing.add(d);});else try{const d=ft(e,c);if(!d.length)return;const r=e.pendingIcons;r&&d.forEach(m=>{r.delete(m);}),mi(e,c);}catch(d){console.error(d);}gi(e);});});}));}const wi=(e,t)=>{const n=ri(e,!0,Qt()),o=ii(n);if(!o.pending.length){let c=!0;return t&&setTimeout(()=>{c&&t(o.loaded,o.missing,o.pending,Ut);}),()=>{c=!1;}}const i=Object.create(null),s=[];let a,u;return o.pending.forEach(c=>{const{provider:d,prefix:r}=c;if(r===u&&d===a)return;a=d,u=r,s.push(be(d,r));const m=i[d]||(i[d]=Object.create(null));m[r]||(m[r]=[]);}),o.pending.forEach(c=>{const{provider:d,prefix:r,name:m}=c,v=be(d,r),b=v.pendingIcons||(v.pendingIcons=new Set);b.has(m)||(b.add(m),i[d][r].push(m));}),s.forEach(c=>{const{provider:d,prefix:r}=c;i[d][r].length&&yi(c,i[d][r]);}),t?li(t,o,s):Ut};function _i(e,t){const n={...e};for(const o in t){const i=t[o],s=typeof i;o in Zt?(i===null||i&&(s==="string"||s==="number"))&&(n[o]=i):s===typeof n[o]&&(n[o]=o==="rotate"?i%4:i);}return n}const vi=/[\s,]+/;function bi(e,t){t.split(vi).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}});}function ki(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function o(i){for(;i<0;)i+=4;return i%4}if(n===""){const i=parseInt(e);return isNaN(i)?0:o(i)}else if(n!==e){let i=0;switch(n){case"%":i=25;break;case"deg":i=90;}if(i){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/i,s%1===0?o(s):0)}}return t}function Ti(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const o in t)n+=" "+o+'="'+t[o]+'"';return '<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}function xi(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function Ci(e){return "data:image/svg+xml,"+xi(e)}function Si(e){return 'url("'+Ci(e)+'")'}const $t={...en,inline:!1},Ii={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},Li={display:"inline-block"},dt={backgroundColor:"currentColor"},dn={backgroundColor:"transparent"},Ht={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},Ft={webkitMask:dt,mask:dt,background:dn};for(const e in Ft){const t=Ft[e];for(const n in Ht)t[e+n]=Ht[n];}const qe={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";qe[e+"-flip"]=t,qe[e.slice(0,1)+"-flip"]=t,qe[e+"Flip"]=t;});function Bt(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const Gt=(e,t)=>{const n=_i($t,t),o={...Ii},i=t.mode||"svg",s={},a=t.style,u=typeof a=="object"&&!(a instanceof Array)?a:{};for(let y in t){const p=t[y];if(p!==void 0)switch(y){case"icon":case"style":case"onLoad":case"mode":break;case"inline":case"hFlip":case"vFlip":n[y]=p===!0||p==="true"||p===1;break;case"flip":typeof p=="string"&&bi(n,p);break;case"color":s.color=p;break;case"rotate":typeof p=="string"?n[y]=ki(p):typeof p=="number"&&(n[y]=p);break;case"ariaHidden":case"aria-hidden":p!==!0&&p!=="true"&&delete o["aria-hidden"];break;default:{const k=qe[y];k?(p===!0||p==="true"||p===1)&&(n[k]=!0):$t[y]===void 0&&(o[y]=p);}}}const c=Gn(e,n),d=c.attributes;if(n.inline&&(s.verticalAlign="-0.125em"),i==="svg"){o.style={...s,...u},Object.assign(o,d);let y=0,p=t.id;return typeof p=="string"&&(p=p.replace(/-/g,"_")),o.innerHTML=zn(c.body,p?()=>p+"ID"+y++:"iconifyVue"),vue.h("svg",o)}const{body:r,width:m,height:v}=e,b=i==="mask"||(i==="bg"?!1:r.indexOf("currentColor")!==-1),f=Ti(r,{...d,width:m+"",height:v+""});return o.style={...s,"--svg":Si(f),width:Bt(d.width),height:Bt(d.height),...Li,...b?dt:dn,...u},vue.h("span",o)};Qt(!0);Jn("",ni);if(typeof document<"u"&&typeof window<"u"){cn();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(o=>{try{(typeof o!="object"||o===null||o instanceof Array||typeof o.icons!="object"||typeof o.prefix!="string"||!$n(o))&&console.error(n);}catch{console.error(n);}});}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const o="IconifyProviders["+n+"] is invalid.";try{const i=t[n];if(typeof i!="object"||!i||i.resources===void 0)continue;Kn(n,i)||console.error(o);}catch{console.error(o);}}}}const Ri={...Xe,body:""},ne=vue.defineComponent({inheritAttrs:!1,data(){return {iconMounted:!1,counter:0}},mounted(){this._name="",this._loadingIcon=null,this.iconMounted=!0;},unmounted(){this.abortLoading();},methods:{abortLoading(){this._loadingIcon&&(this._loadingIcon.abort(),this._loadingIcon=null);},getIcon(e,t){if(typeof e=="object"&&e!==null&&typeof e.body=="string")return this._name="",this.abortLoading(),{data:e};let n;if(typeof e!="string"||(n=Ke(e,!1,!0))===null)return this.abortLoading(),null;const o=Vn(n);if(!o)return (!this._loadingIcon||this._loadingIcon.name!==e)&&(this.abortLoading(),this._name="",o!==null&&(this._loadingIcon={name:e,abort:wi([n],()=>{this.counter++;})})),null;this.abortLoading(),this._name!==e&&(this._name=e,t&&t(e));const i=["iconify"];return n.prefix!==""&&i.push("iconify--"+n.prefix),n.provider!==""&&i.push("iconify--"+n.provider),{data:o,classes:i}}},render(){this.counter;const e=this.$attrs,t=this.iconMounted?this.getIcon(e.icon,e.onLoad):null;if(!t)return Gt(Ri,e);let n=e;return t.classes&&(n={...e,class:(typeof e.class=="string"?e.class+" ":"")+t.classes.join(" ")}),Gt({...Xe,...t.data},n)}}),Mi={class:"display-type"},Ni={style:{position:"relative"}},Oi={key:0,class:"type-list"},Pi=vue.defineComponent({__name:"BaseSelect",props:{displayType:{}},emits:["update:displayType"],setup(e,{emit:t}){const n=e,o=t;let i=vue.reactive({showChangeDisplayType:!1,lastDisplayType:null});function s(c){[O.New,O.Like].includes(n.displayType)||(i.lastDisplayType=n.displayType),o("update:displayType",c),i.showChangeDisplayType=!1;}function a(){if([O.New,O.Like].includes(n.displayType))return s(i.lastDisplayType??O.FloorInFloorNoCallUser);i.showChangeDisplayType=!i.showChangeDisplayType;}const u=vue.computed(()=>{let c=n.displayType;switch([O.New,O.Like].includes(n.displayType)&&(c=i.lastDisplayType),c){case O.FloorInFloorNoCallUser:return "楼中楼";case O.FloorInFloor:return "楼中楼(@)";case O.FloorInFloorNested:return "冗余楼中楼";case O.V2exOrigin:return "V2原版";case O.OnlyOp:return "只看楼主";default:return "楼中楼"}});return (c,d)=>(vue.openBlock(),vue.createElementBlock("div",Mi,[vue.createElementVNode("div",{class:vue.normalizeClass(["type",c.displayType===vue.unref(O).New&&"active"]),onClick:d[0]||(d[0]=r=>s(vue.unref(O).New))},"最新 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["type",c.displayType===vue.unref(O).Like&&"active"]),onClick:d[1]||(d[1]=r=>s(vue.unref(O).Like))},"最热 ",2),vue.createElementVNode("div",Ni,[vue.createElementVNode("div",{class:vue.normalizeClass(["type",![vue.unref(O).New,vue.unref(O).Like].includes(c.displayType)&&"active"]),onClick:a},[vue.createElementVNode("span",null,vue.toDisplayString(u.value),1),vue.createVNode(vue.unref(ne),{icon:"mingcute:down-line"})],2),vue.unref(i).showChangeDisplayType?(vue.openBlock(),vue.createElementBlock("div",Oi,[vue.createElementVNode("div",{class:vue.normalizeClass(["item",c.displayType===vue.unref(O).FloorInFloorNoCallUser&&"active"]),onClick:d[2]||(d[2]=vue.withModifiers(r=>s(vue.unref(O).FloorInFloorNoCallUser),["stop"]))},"楼中楼 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["item",c.displayType===vue.unref(O).FloorInFloor&&"active"]),onClick:d[3]||(d[3]=vue.withModifiers(r=>s(vue.unref(O).FloorInFloor),["stop"]))},"楼中楼(@) ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["item",c.displayType===vue.unref(O).FloorInFloorNested&&"active"]),onClick:d[4]||(d[4]=vue.withModifiers(r=>s(vue.unref(O).FloorInFloorNested),["stop"]))},"冗余楼中楼 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["item",c.displayType===vue.unref(O).OnlyOp&&"active"]),onClick:d[5]||(d[5]=vue.withModifiers(r=>s(vue.unref(O).OnlyOp),["stop"]))},"只看楼主 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["item",c.displayType===vue.unref(O).V2exOrigin&&"active"]),onClick:d[6]||(d[6]=vue.withModifiers(r=>s(vue.unref(O).V2exOrigin),["stop"]))},"V2原版 ",2)])):vue.createCommentVNode("",!0)])]))}});const vt=K(Pi,[["__scopeId","data-v-e4f684be"]]),Ei=vue.defineComponent({__name:"BaseLoading",props:{size:{default:"normal"}},setup(e){return (t,n)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["loading",[t.size]])},null,2))}});const Qe=K(Ei,[["__scopeId","data-v-2697baa2"]]),Ai={key:1,class:"key-notice"},Di={class:"key"},Vi=vue.defineComponent({__name:"BaseButton",props:{keyboard:{},active:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},size:{default:"normal"},type:{default:"primary"}},emits:["click"],setup(e){return (t,n)=>(vue.openBlock(),vue.createBlock(Ue,{disabled:!t.keyboard,title:`快捷键: ${t.keyboard}`},{default:vue.withCtx(()=>[vue.createElementVNode("div",vue.mergeProps({class:"base-button"},t.$attrs,{onClick:n[0]||(n[0]=o=>!t.disabled&&!t.loading&&t.$emit("click",o)),class:[t.active&&"active",t.size,t.type,(t.disabled||t.loading)&&"disabled",!t.disabled&&"hvr-grow"]}),[vue.createElementVNode("span",{style:vue.normalizeStyle({opacity:t.loading?0:1})},[vue.renderSlot(t.$slots,"default",{},void 0,!0)],4),t.loading?(vue.openBlock(),vue.createBlock(Qe,{key:0,size:"small"})):vue.createCommentVNode("",!0),t.keyboard?(vue.openBlock(),vue.createElementBlock("div",Ai,[vue.createElementVNode("span",Di,vue.toDisplayString(t.keyboard),1)])):vue.createCommentVNode("",!0)],16)]),_:3},8,["disabled","title"]))}});const ye=K(Vi,[["__scopeId","data-v-5a7d79ba"]]);const Ui={name:"PopConfirm",components:{BaseButton:ye},props:{title:{type:String,default(){return ""}},disabled:{type:Boolean,default(){return !1}}},data(){return {show:!1}},methods:{showPop(e){if(this.disabled)return;let t=e.target.getBoundingClientRect();this.show=!0,vue.nextTick(()=>{this.$refs.tip.style.top=t.top+"px",this.$refs.tip.style.left=t.left+t.width/2-50+"px";});},confirm(){this.show=!1,this.$emit("confirm");},cancel(){this.show=!1,this.$emit("cancel");}}},$i={class:"pop-confirm"},Hi={key:0,ref:"tip",class:"pop-confirm-content"},Fi={class:"text"},Bi={class:"options"};function Gi(e,t,n,o,i,s){const a=vue.resolveComponent("BaseButton");return vue.openBlock(),vue.createElementBlock("div",$i,[(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.createVNode(vue.Transition,null,{default:vue.withCtx(()=>[i.show?(vue.openBlock(),vue.createElementBlock("div",Hi,[vue.createElementVNode("div",Fi,vue.toDisplayString(n.title),1),vue.createElementVNode("div",Bi,[vue.createVNode(a,{type:"link",size:"small",onClick:s.cancel},{default:vue.withCtx(()=>[vue.createTextVNode("取消")]),_:1},8,["onClick"]),vue.createVNode(a,{size:"small",onClick:s.confirm},{default:vue.withCtx(()=>[vue.createTextVNode("确认")]),_:1},8,["onClick"])])],512)):vue.createCommentVNode("",!0)]),_:1})])),vue.createElementVNode("span",{onClick:t[0]||(t[0]=(...u)=>s.showPop&&s.showPop(...u))},[vue.renderSlot(e.$slots,"default",{},void 0,!0)])])}const $e=K(Ui,[["render",Gi],["__scopeId","data-v-7d29b3cc"]]);const ji={name:"Setting",components:{BaseButton:ye,PopConfirm:$e,Icon:ne,BaseSelect:vt,BaseSwitch:ht,Tooltip:Ue},inject:["isNight"],props:{show:{type:Boolean,default(){return !1}}},data(){return {tabIndex:0}},methods:{confirm(){this.close(),this.$emit("confirm");},close(){this.$emit("update:show",!1);}}},un=e=>(vue.pushScopeId("data-v-cb13d533"),e=e(),vue.popScopeId(),e),Wi={key:0,class:"setting-modal modal"},qi={class:"modal-root"},zi={class:"modal-header"},Ji=un(()=>vue.createElementVNode("div",{class:"title"}," 使用需知 ",-1)),Ki={class:"body"},Xi=un(()=>vue.createElementVNode("div",{class:"modal-content"},[vue.createElementVNode("div",null,"开启此功能会带来以下影响"),vue.createElementVNode("div",null,"缺点"),vue.createElementVNode("div",{style:{color:"red"}},[vue.createElementVNode("div",null,"1、你的IP可能会被封禁"),vue.createElementVNode("div",null,"2、消耗更多流量,给服务器带来更大的负担"),vue.createElementVNode("div",null,"3、你的V站浏览进度条会变快")]),vue.createElementVNode("div",null,"优点"),vue.createElementVNode("div",null,"1、卡片模式,无需打开主题即可查看内容"),vue.createElementVNode("div",null,"2、打开主题时提前预览正文内容,无需等待加载"),vue.createElementVNode("div",null,"原理"),vue.createElementVNode("div",null,"1、解析列表所有主题ID,批量调用show.json接口,获取对应主题的正文"),vue.createElementVNode("div",null,"2、请求的主题数据会缓存到本地,不会重复请求,超过3天的数据会删除"),vue.createElementVNode("div",null,"3、前面4条会并发请求,4条以后的一秒请求一条")],-1)),Yi={class:"btns"};function Qi(e,t,n,o,i,s){const a=vue.resolveComponent("Icon"),u=vue.resolveComponent("BaseButton");return vue.openBlock(),vue.createBlock(vue.Transition,null,{default:vue.withCtx(()=>[n.show?(vue.openBlock(),vue.createElementBlock("div",Wi,[vue.createElementVNode("div",{class:"mask",onClick:t[0]||(t[0]=(...c)=>s.close&&s.close(...c))}),vue.createElementVNode("div",qi,[vue.createElementVNode("div",zi,[Ji,vue.createVNode(a,{icon:"ic:round-close",onClick:s.close},null,8,["onClick"])]),vue.createElementVNode("div",Ki,[Xi,vue.createElementVNode("div",Yi,[vue.createVNode(u,{type:"link",onClick:s.close},{default:vue.withCtx(()=>[vue.createTextVNode("不同意")]),_:1},8,["onClick"]),vue.createVNode(u,{onClick:s.confirm},{default:vue.withCtx(()=>[vue.createTextVNode("同意")]),_:1},8,["onClick"])])])])])):vue.createCommentVNode("",!0)]),_:1})}const Zi=K(ji,[["render",Qi],["__scopeId","data-v-cb13d533"]]);const es={name:"Setting",components:{NoticeModal:Zi,PopConfirm:$e,Icon:ne,BaseSelect:vt,BaseSwitch:ht,Tooltip:Ue},inject:["isNight"],props:{modelValue:{type:Object,default(){return {}}},show:{type:Boolean,default(){return !1}}},data(){return {tabIndex:0,config:window.clone(this.modelValue),showNotice:!1}},computed:{DefaultVal(){return ge},CommentDisplayType(){return O},isNew(){return this.config.version<ge.currentVersion}},watch:{config:{handler(e){e.topReplyLoveMinCount=Math.trunc(e.topReplyLoveMinCount),e.topReplyLoveMinCount<0&&(e.topReplyLoveMinCount=1),this.$emit("update:modelValue",e);},deep:!0}},methods:{close(){this.config.version<ge.currentVersion&&(this.config.version=ge.currentVersion),this.$emit("update:show",!1);}}},E=e=>(vue.pushScopeId("data-v-97cd84bd"),e=e(),vue.popScopeId(),e),ts={key:0,class:"setting-modal modal"},ns={class:"modal-root"},is={class:"modal-header"},ss={class:"title"},os={class:"small"},ls=["href"],rs={class:"body"},as={class:"left"},cs={class:"tabs"},ds=E(()=>vue.createElementVNode("span",null,"列表设置",-1)),us=[ds],ps=E(()=>vue.createElementVNode("span",null,"主题设置",-1)),hs=[ps],fs=E(()=>vue.createElementVNode("span",null,"其他设置",-1)),ms=[fs],gs=E(()=>vue.createElementVNode("span",null,"关于脚本",-1)),ys=[gs],ws={class:"icons"},_s=["href"],vs=["href"],bs={class:"modal-content"},ks={class:"scroll"},Ts={key:0},xs={class:"row"},Cs=E(()=>vue.createElementVNode("label",{class:"item-title"},"列表展示方式",-1)),Ss={class:"wrapper"},Is={class:"radio-group2"},Ls=E(()=>vue.createElementVNode("div",{class:"desc danger"}," 提示:此项需要刷新页面才能生效 ",-1)),Rs={class:"row"},Ms=E(()=>vue.createElementVNode("label",{class:"item-title"},"主题弹框显示",-1)),Ns={class:"wrapper"},Os=E(()=>vue.createElementVNode("div",{class:"desc"},[vue.createTextVNode(" 开启此选项后,主题会"),vue.createElementVNode("span",{class:"danger"},"始终"),vue.createTextVNode("以弹框的方式显示。优先级大于“新标签页打开链接” ")],-1)),Ps={class:"row"},Es=E(()=>vue.createElementVNode("label",{class:"item-title"},"新标签页打开链接",-1)),As={class:"wrapper"},Ds=E(()=>vue.createElementVNode("div",{class:"desc"}," 网页上所有链接通过新标签页打开 ",-1)),Vs={class:"row"},Us=E(()=>vue.createElementVNode("label",{class:"item-title"},"打开新标签页时立即切换过去",-1)),$s={class:"wrapper"},Hs={key:1},Fs={class:"row"},Bs=E(()=>vue.createElementVNode("label",{class:"item-title"},"显示回复展示方式",-1)),Gs={class:"wrapper"},js={class:"row"},Ws=E(()=>vue.createElementVNode("label",{class:"item-title"},"回复展示方式",-1)),qs={class:"wrapper"},zs={class:"row"},Js=E(()=>vue.createElementVNode("label",{class:"item-title"},"单独打开主题时默认显示楼中楼",-1)),Ks={class:"wrapper"},Xs=E(()=>vue.createElementVNode("div",{class:"desc"}," 单独打开这种地址 https://v2ex.com/t/xxxx 时,是否默认显示楼中楼 ",-1)),Ys={class:"row"},Qs=E(()=>vue.createElementVNode("label",{class:"item-title"},"点击左右两侧透明处关闭主题详情弹框",-1)),Zs={class:"wrapper"},eo={class:"row"},to=E(()=>vue.createElementVNode("label",{class:"item-title"},"正文超长自动折叠",-1)),no={class:"wrapper"},io={class:"row"},so=E(()=>vue.createElementVNode("label",{class:"item-title"},"主题宽度",-1)),oo={class:"wrapper"},lo=E(()=>vue.createElementVNode("div",{class:"desc"},[vue.createTextVNode(" 未设定此值时,则默认宽度为77rem。接受合法的width值: "),vue.createElementVNode("a",{href:"https://vue3js.cn/interview/css/em_px_rem_vh_vw.html#%E4%BA%8C%E3%80%81%E5%8D%95%E4%BD%8D",target:"_blank"},"rem、px、vw、vh(点此查看)"),vue.createTextVNode("。 vw代表屏幕百分比,如想要屏幕的66%,请填写66vw ")],-1)),ro=E(()=>vue.createElementVNode("div",{class:"desc"}," 提示:此项设置以后,单独打开详情页时会出现主题突然变宽(窄)的问题,暂时无解 ",-1)),ao=E(()=>vue.createElementVNode("div",{class:"desc danger"}," 提示:此项需要刷新页面才能生效 ",-1)),co=E(()=>vue.createElementVNode("div",{class:"row"},[vue.createElementVNode("label",{class:"main-title"},"高赞回复")],-1)),uo={class:"row"},po=E(()=>vue.createElementVNode("label",{class:"item-title"},"显示高赞回复",-1)),ho={class:"wrapper"},fo={class:"row"},mo=E(()=>vue.createElementVNode("label",{class:"item-title"},"最多显示多少个高赞回复",-1)),go={class:"wrapper"},yo={class:"row"},wo=E(()=>vue.createElementVNode("label",{class:"item-title"},"最少需要多少赞才能被判定为高赞",-1)),_o={class:"wrapper"},vo={key:2},bo={class:"row"},ko=E(()=>vue.createElementVNode("label",{class:"item-title"},"用户打标签(跨平台,数据保存在自己的记事本):",-1)),To={class:"wrapper"},xo=E(()=>vue.createElementVNode("div",{class:"desc danger"}," 2024-01-27提示:此功能暂时无法使用 ",-1)),Co={class:"row"},So=E(()=>vue.createElementVNode("label",{class:"item-title"},"划词显示Base64解码框",-1)),Io={class:"wrapper"},Lo={class:"row"},Ro=E(()=>vue.createElementVNode("label",{class:"item-title"},"自动签到",-1)),Mo={class:"wrapper"},No={class:"row"},Oo=E(()=>vue.createElementVNode("label",{class:"item-title"},"自定义背景",-1)),Po={class:"wrapper"},Eo=E(()=>vue.createElementVNode("div",{class:"desc"},[vue.createTextVNode(" 未设定此值时,则背景颜色默认为 #e2e2e2。接受一个合法的css color值:例如"),vue.createElementVNode("a",{href:"https://developer.mozilla.org/zh-CN/docs/Web/CSS/color_value",target:"_blank"},"red、#ffffff、rgb(222,222,22)(点此查看)"),vue.createTextVNode("等等。 ")],-1)),Ao=E(()=>vue.createElementVNode("div",{class:"desc danger"}," 提示:此项需要刷新页面才能生效 ",-1)),Do={class:"row"},Vo=E(()=>vue.createElementVNode("label",{class:"item-title"},"收藏时提醒添加到书签",-1)),Uo={class:"wrapper"},$o=E(()=>vue.createElementVNode("div",{class:"desc"}," V站帐号一旦被封禁,则无法登录(不可用),无法查看账号收藏了 ",-1)),Ho={key:3},Fo=E(()=>vue.createElementVNode("h1",null,"V2EX Next",-1)),Bo={class:"project-desc"},Go=E(()=>vue.createElementVNode("div",null,[vue.createTextVNode(" 本项目完全开源,已支持移动端!"),vue.createElementVNode("b",null,"好用请大家多多点Star!")],-1)),jo=E(()=>vue.createElementVNode("br",null,null,-1)),Wo={style:{"line-height":"2"}},qo=["href"],zo=["href"],Jo=["href"],Ko=["href"],Xo=["href"],Yo=["href"];function Qo(e,t,n,o,i,s){const a=vue.resolveComponent("Icon"),u=vue.resolveComponent("BaseSwitch"),c=vue.resolveComponent("BaseSelect"),d=vue.resolveComponent("NoticeModal");return vue.openBlock(),vue.createBlock(vue.Transition,null,{default:vue.withCtx(()=>[n.show?(vue.openBlock(),vue.createElementBlock("div",ts,[vue.createElementVNode("div",{class:"mask",onClick:t[0]||(t[0]=(...r)=>s.close&&s.close(...r))}),vue.createElementVNode("div",ns,[vue.createElementVNode("div",is,[vue.createElementVNode("div",ss,[vue.createTextVNode(" 脚本设置 "),vue.createElementVNode("div",os,[vue.createElementVNode("a",{href:s.DefaultVal.mobileScript,target:"_blank"},"(脚本现已支持移动端!)",8,ls)])]),vue.createVNode(a,{icon:"ic:round-close",onClick:s.close},null,8,["onClick"])]),vue.createElementVNode("div",rs,[vue.createElementVNode("div",as,[vue.createElementVNode("div",cs,[vue.createElementVNode("div",{class:vue.normalizeClass(["tab",i.tabIndex===0&&"active"]),onClick:t[1]||(t[1]=r=>i.tabIndex=0)},us,2),vue.createElementVNode("div",{class:vue.normalizeClass(["tab",i.tabIndex===1&&"active"]),onClick:t[2]||(t[2]=r=>i.tabIndex=1)},hs,2),vue.createElementVNode("div",{class:vue.normalizeClass(["tab",i.tabIndex===2&&"active"]),onClick:t[3]||(t[3]=r=>i.tabIndex=2)},ms,2),vue.createElementVNode("div",{class:vue.normalizeClass(["tab",i.tabIndex===3&&"active"]),onClick:t[4]||(t[4]=r=>i.tabIndex=3)},ys,2)]),vue.createElementVNode("div",ws,[vue.createElementVNode("a",{href:s.DefaultVal.git,target:"_blank"},[vue.createVNode(a,{icon:"mdi:github"})],8,_s),vue.createElementVNode("a",{href:s.DefaultVal.homeUrl,target:"_blank"},[vue.createVNode(a,{icon:"iconamoon:home-light"})],8,vs)])]),vue.createElementVNode("div",bs,[vue.createElementVNode("div",ks,[i.tabIndex===0?(vue.openBlock(),vue.createElementBlock("div",Ts,[vue.createElementVNode("div",xs,[Cs,vue.createElementVNode("div",Ss,[vue.createElementVNode("div",Is,[vue.createElementVNode("div",{class:vue.normalizeClass(["radio",i.config.viewType==="simple"?"active":""]),onClick:t[5]||(t[5]=r=>i.config.viewType="simple")},"简洁 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["radio",i.config.viewType==="table"?"active":""]),onClick:t[6]||(t[6]=r=>i.config.viewType="table")},"表格 ",2),vue.createElementVNode("div",{class:vue.normalizeClass(["radio",i.config.viewType==="card"?"active":""]),onClick:t[7]||(t[7]=r=>i.showNotice=!0)},"卡片 ",2)])])]),Ls,vue.createElementVNode("div",Rs,[Ms,vue.createElementVNode("div",Ns,[vue.createVNode(u,{modelValue:i.config.clickPostItemOpenDetail,"onUpdate:modelValue":t[8]||(t[8]=r=>i.config.clickPostItemOpenDetail=r)},null,8,["modelValue"])])]),Os,vue.createElementVNode("div",Ps,[Es,vue.createElementVNode("div",As,[vue.createVNode(u,{modelValue:i.config.newTabOpen,"onUpdate:modelValue":t[9]||(t[9]=r=>i.config.newTabOpen=r)},null,8,["modelValue"])])]),Ds,vue.createElementVNode("div",Vs,[Us,vue.createElementVNode("div",$s,[vue.createVNode(u,{modelValue:i.config.newTabOpenActive,"onUpdate:modelValue":t[10]||(t[10]=r=>i.config.newTabOpenActive=r)},null,8,["modelValue"])])])])):vue.createCommentVNode("",!0),i.tabIndex===1?(vue.openBlock(),vue.createElementBlock("div",Hs,[vue.createElementVNode("div",Fs,[Bs,vue.createElementVNode("div",Gs,[vue.createVNode(u,{modelValue:i.config.showToolbar,"onUpdate:modelValue":t[11]||(t[11]=r=>i.config.showToolbar=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",js,[Ws,vue.createElementVNode("div",qs,[vue.createVNode(c,{"display-type":i.config.commentDisplayType,"onUpdate:displayType":t[12]||(t[12]=r=>i.config.commentDisplayType=r)},null,8,["display-type"])])]),vue.createElementVNode("div",zs,[Js,vue.createElementVNode("div",Ks,[vue.createVNode(u,{modelValue:i.config.autoOpenDetail,"onUpdate:modelValue":t[13]||(t[13]=r=>i.config.autoOpenDetail=r)},null,8,["modelValue"])])]),Xs,vue.createElementVNode("div",Ys,[Qs,vue.createElementVNode("div",Zs,[vue.createVNode(u,{modelValue:i.config.closePostDetailBySpace,"onUpdate:modelValue":t[14]||(t[14]=r=>i.config.closePostDetailBySpace=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",eo,[to,vue.createElementVNode("div",no,[vue.createVNode(u,{modelValue:i.config.contentAutoCollapse,"onUpdate:modelValue":t[15]||(t[15]=r=>i.config.contentAutoCollapse=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",io,[so,vue.createElementVNode("div",oo,[vue.withDirectives(vue.createElementVNode("input",{type:"text","onUpdate:modelValue":t[16]||(t[16]=r=>i.config.postWidth=r)},null,512),[[vue.vModelText,i.config.postWidth]])])]),lo,ro,ao,co,vue.createElementVNode("div",uo,[po,vue.createElementVNode("div",ho,[vue.createVNode(u,{modelValue:i.config.showTopReply,"onUpdate:modelValue":t[17]||(t[17]=r=>i.config.showTopReply=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",fo,[mo,vue.createElementVNode("div",go,[vue.withDirectives(vue.createElementVNode("input",{type:"number",min:"1","onUpdate:modelValue":t[18]||(t[18]=r=>i.config.topReplyCount=r)},null,512),[[vue.vModelText,i.config.topReplyCount]])])]),vue.createElementVNode("div",yo,[wo,vue.createElementVNode("div",_o,[vue.withDirectives(vue.createElementVNode("input",{type:"number",min:"1","onUpdate:modelValue":t[19]||(t[19]=r=>i.config.topReplyLoveMinCount=r)},null,512),[[vue.vModelText,i.config.topReplyLoveMinCount]])])])])):vue.createCommentVNode("",!0),i.tabIndex===2?(vue.openBlock(),vue.createElementBlock("div",vo,[vue.createElementVNode("div",bo,[ko,vue.createElementVNode("div",To,[vue.createVNode(u,{modelValue:i.config.openTag,"onUpdate:modelValue":t[20]||(t[20]=r=>i.config.openTag=r)},null,8,["modelValue"])])]),xo,vue.createElementVNode("div",Co,[So,vue.createElementVNode("div",Io,[vue.createVNode(u,{modelValue:i.config.base64,"onUpdate:modelValue":t[21]||(t[21]=r=>i.config.base64=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",Lo,[Ro,vue.createElementVNode("div",Mo,[vue.createVNode(u,{modelValue:i.config.autoSignin,"onUpdate:modelValue":t[22]||(t[22]=r=>i.config.autoSignin=r)},null,8,["modelValue"])])]),vue.createElementVNode("div",No,[Oo,vue.createElementVNode("div",Po,[vue.withDirectives(vue.createElementVNode("input",{type:"text","onUpdate:modelValue":t[23]||(t[23]=r=>i.config.customBgColor=r)},null,512),[[vue.vModelText,i.config.customBgColor]])])]),Eo,Ao,vue.createElementVNode("div",Do,[Vo,vue.createElementVNode("div",Uo,[vue.createVNode(u,{modelValue:i.config.collectBrowserNotice,"onUpdate:modelValue":t[24]||(t[24]=r=>i.config.collectBrowserNotice=r)},null,8,["modelValue"])])]),$o])):vue.createCommentVNode("",!0),i.tabIndex===3?(vue.openBlock(),vue.createElementBlock("div",Ho,[Fo,vue.createElementVNode("div",Bo,[Go,jo,vue.createElementVNode("div",Wo,[vue.createElementVNode("div",null,[vue.createTextVNode("官网:"),vue.createElementVNode("a",{href:s.DefaultVal.homeUrl,target:"_blank"},vue.toDisplayString(s.DefaultVal.homeUrl),9,qo)]),vue.createElementVNode("div",null,[vue.createTextVNode("GitHub地址:"),vue.createElementVNode("a",{href:s.DefaultVal.git,target:"_blank"},vue.toDisplayString(s.DefaultVal.git),9,zo)]),vue.createElementVNode("div",null,[vue.createTextVNode("PC脚本地址:"),vue.createElementVNode("a",{href:s.DefaultVal.pcScript,target:"_blank"},vue.toDisplayString(s.DefaultVal.pcScript),9,Jo)]),vue.createElementVNode("div",null,[vue.createTextVNode("移动端脚本地址:"),vue.createElementVNode("a",{href:s.DefaultVal.mobileScript,target:"_blank"},vue.toDisplayString(s.DefaultVal.mobileScript),9,Ko)]),vue.createElementVNode("div",null,[vue.createTextVNode("反馈: "),vue.createElementVNode("a",{href:s.DefaultVal.issue,target:"_blank"},vue.toDisplayString(s.DefaultVal.issue),9,Xo)]),vue.createElementVNode("div",null,[vue.createTextVNode("更新日志:"),vue.createElementVNode("a",{href:s.DefaultVal.pcLog,target:"_blank"},vue.toDisplayString(s.DefaultVal.pcLog),9,Yo)])])])])):vue.createCommentVNode("",!0)])])])]),vue.createVNode(d,{show:i.showNotice,"onUpdate:show":t[25]||(t[25]=r=>i.showNotice=r),onConfirm:t[26]||(t[26]=r=>i.config.viewType="card")},null,8,["show"])])):vue.createCommentVNode("",!0)]),_:1})}const Zo=K(es,[["render",Qo],["__scopeId","data-v-97cd84bd"]]),w={eventMap:new Map,on(e,t){let n=this.eventMap.get(e);n?n.push(t):n=[t],this.eventMap.set(e,n);},emit(e,t){let n=this.eventMap.get(e);n&&n.map(o=>o(t));},off(e){this.eventMap.has(e)&&this.eventMap.delete(e);},clear(){this.eventMap=new Map;}},_={SHOW_TOOLTIP:"SHOW_TOOLTIP",SHOW_MSG:"SHOW_MSG",SET_CALL:"SET_CALL",SHOW_CALL:"SHOW_CALL",REFRESH_ONCE:"REFRESH_ONCE",ADD_REPLY:"ADD_REPLY",IGNORE:"IGNORE",MERGE:"MERGE",REMOVE:"REMOVE",CHANGE_COMMENT_THANK:"CHANGE_COMMENT_THANK",CHANGE_POST_THANK:"CHANGE_POST_THANK",ADD_TAG:"ADD_TAG",REMOVE_TAG:"REMOVE_TAG",RELATION_REPLY:"RELATION_REPLY",JUMP:"JUMP",REFRESH_POST:"REFRESH_POST"},el={name:"Point",components:{PopConfirm:$e,Icon:ne},inject:["post","isLogin"],props:{item:{type:Object,default(){return {}}},apiUrl:""},computed:{disabled(){return this.item.username===window.user.username||this.item.isThanked||!this.isLogin}},methods:{thankError(){if(!this.isLogin)return w.emit(_.SHOW_MSG,{type:"warning",text:"请先登录(不可用)!"});if(this.item.username===window.user.username)return w.emit(_.SHOW_MSG,{type:"warning",text:"不能感谢自己"});if(this.item.isThanked)return w.emit(_.SHOW_MSG,{type:"warning",text:"已经感谢过了"})},async thank(){this.$emit("addThank");let e=`${window.baseUrl}/thank/${this.apiUrl}?once=${this.post.once}`;$.post(e).then(t=>{t.success||(this.$emit("recallThank"),w.emit(_.SHOW_MSG,{type:"error",text:t.message})),w.emit(_.REFRESH_ONCE,t.once);},t=>{this.$emit("recallThank"),w.emit(_.SHOW_MSG,{type:"error",text:"感谢失败"}),w.emit(_.REFRESH_ONCE);});}}},tl={key:2,class:"link-num"},nl={key:3};function il(e,t,n,o,i,s){const a=vue.resolveComponent("Icon"),u=vue.resolveComponent("PopConfirm");return vue.openBlock(),vue.createBlock(u,{disabled:s.disabled,title:`确认花费 10 个铜币向 @${n.item.username} 的这条回复发送感谢?`,onConfirm:s.thank},{default:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["tool",[s.disabled&&"disabled"]]),onClick:t[0]||(t[0]=(...c)=>s.thankError&&s.thankError(...c))},[n.item.isThanked?(vue.openBlock(),vue.createBlock(a,{key:0,color:"rgb(224,42,42)",icon:"icon-park-solid:like"})):(vue.openBlock(),vue.createBlock(a,{key:1,color:n.item.thankCount?"rgb(224,42,42)":null,icon:"icon-park-outline:like"},null,8,["color"])),n.item.thankCount?(vue.openBlock(),vue.createElementBlock("span",tl,vue.toDisplayString(n.item.thankCount),1)):(vue.openBlock(),vue.createElementBlock("span",nl,"感谢"))],2)]),_:1},8,["disabled","title","onConfirm"])}const bt=K(el,[["render",il]]);const sl={name:"Author",components:{PopConfirm:$e,Point:bt,Icon:ne},inject:["isLogin","tags","config","isNight"],props:{modelValue:!1,comment:{type:Object,default(){return {}}},type:{type:String,default(){return "list"}}},computed:{isDev(){return !1},pointInfo(){return {isThanked:this.comment.isThanked,thankCount:this.comment.thankCount,username:this.comment.username}},myTags(){return this.tags[this.comment.username]??[]},context(){return this.comment.replyUsers.length}},methods:{jump(){w.emit(_.JUMP,this.comment.floor);},showRelationReply(){if(!this.comment.replyUsers.length){w.emit(_.SHOW_MSG,{type:"warning",text:"该回复无上下文"});return}w.emit(_.RELATION_REPLY,{left:this.comment.replyUsers,right:this.comment.username,rightFloor:this.comment.floor});},addTag(){w.emit(_.ADD_TAG,this.comment.username);},removeTag(e){w.emit(_.REMOVE_TAG,{username:this.comment.username,tag:e});},checkIsLogin(e=""){return this.isLogin?(this.$emit(e),!0):(w.emit(_.SHOW_MSG,{type:"warning",text:"请先登录(不可用)!"}),!1)},addThank(){w.emit(_.CHANGE_COMMENT_THANK,{id:this.comment.id,type:"add"});},recallThank(){w.emit(_.CHANGE_COMMENT_THANK,{id:this.comment.id,type:"recall"});}}},He=e=>(vue.pushScopeId("data-v-43506a15"),e=e(),vue.popScopeId(),e),ol={class:"Author-left"},ll=["href"],rl=["src"],al={class:"texts"},cl=["href"],dl={key:0,class:"owner"},ul={key:1,class:"dup"},pl={key:2,class:"mod"},hl={class:"ago"},fl={class:"my-tag"},ml=He(()=>vue.createElementVNode("i",{class:"fa fa-tag"},null,-1)),gl=["onClick"],yl={class:"Author-right"},wl={key:0,class:"toolbar"},_l={class:"tool"},vl=He(()=>vue.createElementVNode("span",null,"隐藏",-1)),bl=He(()=>vue.createElementVNode("span",null,"上下文",-1)),kl=He(()=>vue.createElementVNode("span",null,"跳转",-1)),Tl=He(()=>vue.createElementVNode("span",null,"回复",-1));function xl(e,t,n,o,i,s){const a=vue.resolveComponent("Icon"),u=vue.resolveComponent("PopConfirm"),c=vue.resolveComponent("Point");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["Author",{expand:!n.modelValue}])},[vue.createElementVNode("div",ol,[n.modelValue?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(a,{key:0,onClick:t[0]||(t[0]=d=>e.$emit("update:modelValue",!0)),color:"#177EC9",class:"expand-icon",icon:"gravity-ui:chevrons-expand-up-right"})),s.config.viewType!=="simple"?(vue.openBlock(),vue.createElementBlock("a",{key:1,class:"avatar",href:`/member/${n.comment.username}`},[vue.createElementVNode("img",{src:n.comment.avatar,alt:""},null,8,rl)],8,ll)):vue.createCommentVNode("",!0),vue.createElementVNode("span",al,[vue.createElementVNode("strong",null,[vue.createElementVNode("a",{href:`/member/${n.comment.username}`,class:vue.normalizeClass(["username",{dark:s.isNight}])},vue.toDisplayString(n.comment.username),11,cl)]),n.comment.isOp?(vue.openBlock(),vue.createElementBlock("div",dl,"OP")):vue.createCommentVNode("",!0),n.comment.isDup?(vue.openBlock(),vue.createElementBlock("div",ul,"DUP")):vue.createCommentVNode("",!0),n.comment.isMod?(vue.openBlock(),vue.createElementBlock("div",pl,"MOD")):vue.createCommentVNode("",!0),vue.createElementVNode("span",hl,vue.toDisplayString(n.comment.date),1),s.isLogin&&s.config.openTag?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:3},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.myTags,d=>(vue.openBlock(),vue.createElementBlock("span",fl,[ml,vue.createElementVNode("span",null,vue.toDisplayString(d),1),vue.createElementVNode("i",{class:"fa fa-trash-o remove",onClick:r=>s.removeTag(d)},null,8,gl)]))),256)),vue.createElementVNode("span",{class:"add-tag ago",onClick:t[1]||(t[1]=(...d)=>s.addTag&&s.addTag(...d)),title:"添加标签"},"+")],64)):vue.createCommentVNode("",!0)])]),vue.createElementVNode("div",yl,[s.isLogin?(vue.openBlock(),vue.createElementBlock("div",wl,[vue.createVNode(u,{title:"确认隐藏这条回复?",onConfirm:t[2]||(t[2]=d=>e.$emit("hide"))},{default:vue.withCtx(()=>[vue.createElementVNode("div",_l,[vue.createVNode(a,{icon:"fluent:eye-hide-24-regular"}),vl])]),_:1}),s.context?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"tool",onClick:t[3]||(t[3]=(...d)=>s.showRelationReply&&s.showRelationReply(...d))},[vue.createVNode(a,{icon:"iconoir:page-search"}),bl])):vue.createCommentVNode("",!0),n.type==="top"?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"tool",onClick:t[4]||(t[4]=(...d)=>s.jump&&s.jump(...d))},[vue.createVNode(a,{icon:"icon-park-outline:to-bottom"}),kl])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:"tool",onClick:t[5]||(t[5]=d=>s.checkIsLogin("reply"))},[vue.createVNode(a,{icon:"mynaui:message"}),Tl]),vue.withDirectives(vue.createVNode(c,{item:s.pointInfo,onAddThank:s.addThank,onRecallThank:s.recallThank,"api-url":"reply/"+n.comment.id},null,8,["item","onAddThank","onRecallThank","api-url"]),[[vue.vShow,!n.comment.thankCount]])])):vue.createCommentVNode("",!0),vue.withDirectives(vue.createVNode(c,{item:s.pointInfo,onAddThank:s.addThank,onRecallThank:s.recallThank,"api-url":"reply/"+n.comment.id},null,8,["item","onAddThank","onRecallThank","api-url"]),[[vue.vShow,n.comment.thankCount]]),vue.createElementVNode("div",{class:vue.normalizeClass(["floor",{isDev:s.isDev}])},vue.toDisplayString(n.comment.floor),3)])],2)}const Cl=K(sl,[["render",xl],["__scopeId","data-v-43506a15"]]);const Sl=e=>(vue.pushScopeId("data-v-4522f98e"),e=e(),vue.popScopeId(),e),Il={class:"get-cursor"},Ll=["innerHTML"],Rl={class:"toolbar"},Ml={class:"left"},Nl={class:"upload"},Ol={key:0,style:{color:"black","font-size":"1.4rem"}},Pl={class:"right"},El=Sl(()=>vue.createElementVNode("div",{class:"title"},"经典表情",-1)),Al={class:"list"},Dl=["src","onClick"],Vl={class:"emoji"},Ul={class:"title"},$l={class:"list"},Hl=["onClick"],Fl={__name:"PostEditor",props:{replyUser:null,replyFloor:null,useType:{type:String,default(){return "reply-comment"}}},emits:["close"],setup(e,{expose:t,emit:n}){const o=e,{replyUser:i,replyFloor:s,useType:a}=o,u=i?`@${i} #${s} `:"",c=n,d=vue.inject("post"),r=vue.inject("show"),m=vue.inject("isNight");vue.inject("pageType");const v=vue.inject("allReplyUsers");let b=vue.ref(!1);const f=vue.ref(!1),y=vue.ref(!1),p=vue.ref(!1),k=vue.ref("editorId_"+Date.now()),T=vue.ref(u),S=vue.ref(null),z=vue.ref(null),W=vue.ref(null),M=vue.ref('<span style="white-space:pre-wrap;"> </span>'),B=[{title:"小黄脸",list:["😀","😁","😂","🤣","😅","😊","😋","😘","🥰","😗","🤩","🤔","🤨","😐","😑","🙄","😏","😪","😫","🥱","😜","😒","😔","😨","😰","😱","🥵","😡","🥳","🥺","🤭","🧐","😎","🤓","😭","🤑","🤮"]},{title:"手势",list:["🙋","🙎","🙅","🙇","🤷","🤏","👉","✌️","🤘","🤙","👌","🤌","👍","👎","👋","🤝","🙏","👏"]},{title:"庆祝",list:["✨","🎉","🎊"]},{title:"其他",list:["👻","🤡","🐔","👀","💩","🐴","🦄","🐧","🐶","🐒","🙈","🙉","🙊","🐵"]}],V=[{name:"[狗头]",low:"https://i.imgur.com/io2SM1h.png",high:"https://i.imgur.com/0icl60r.png"},{name:"[马]",low:"https://i.imgur.com/8EKZv7I.png",high:"https://i.imgur.com/ANFUX52.png"},{name:"[不高兴]",low:"https://i.imgur.com/huX6coX.png",high:"https://i.imgur.com/N7JEuvc.png"},{name:"[呵呵]",low:"https://i.imgur.com/RvoLAbX.png",high:"https://i.imgur.com/xSzIqrK.png"},{name:"[真棒]",low:"https://i.imgur.com/xr1UOz1.png",high:"https://i.imgur.com/w8YEw9Q.png"},{name:"[鄙视]",low:"https://i.imgur.com/u6jlqVq.png",high:"https://i.imgur.com/8JFNANq.png"},{name:"[疑问]",low:"https://i.imgur.com/F29pmQ6.png",high:"https://i.imgur.com/EbbTQAR.png"},{name:"[吐舌]",low:"https://i.imgur.com/InmIzl9.png",high:"https://i.imgur.com/Ovj56Cd.png"},{name:"[笑眼]",low:"https://i.imgur.com/ZveiiGy.png",high:"https://i.imgur.com/PI1CfEr.png"},{name:"[狂汗]",low:"https://i.imgur.com/veWihk6.png",high:"https://i.imgur.com/3LtHdQv.png"},{name:"[大哭]",low:"https://i.imgur.com/hu4oR6C.png",high:"https://i.imgur.com/b4X9XLE.png"},{name:"[喷]",low:"https://i.imgur.com/bkw3VRr.png",high:"https://i.imgur.com/wnZL13L.png"},{name:"[苦笑]",low:"https://i.imgur.com/VUWFktU.png",high:"https://i.imgur.com/NAfspZ1.png"},{name:"[喝酒]",low:"https://i.imgur.com/2ZZSapE.png",high:"https://i.imgur.com/rVbSVak.png"},{name:"[吃瓜]",low:"https://i.imgur.com/ee8Lq7H.png",high:"https://i.imgur.com/0L26og9.png"},{name:"[捂脸]",low:"https://i.imgur.com/krir4IG.png",high:"https://i.imgur.com/qqBqgVm.png"},{name:"[呕]",low:"https://i.imgur.com/6CUiUxv.png",high:"https://i.imgur.com/kgdxRsG.png"},{name:"[阴险]",low:"https://i.imgur.com/MA8YqTP.png",high:"https://i.imgur.com/e94jbaT.png"},{name:"[怒]",low:"https://i.imgur.com/n4kWfGB.png",high:"https://i.imgur.com/iMXxNxh.png"},{name:"[衰]",low:"https://i.imgur.com/voHFDyQ.png",high:"https://i.imgur.com/XffE6gu.png"},{name:"[合十]",low:"https://i.imgur.com/I8x3ang.png",high:"https://i.imgur.com/T4rJVee.png"},{name:"[赞]",low:"https://i.imgur.com/lG44yUl.png",high:"https://i.imgur.com/AoF5PLp.png"},{name:"[踩]",low:"https://i.imgur.com/cJp0uKZ.png",high:"https://i.imgur.com/1XYGfXj.png"},{name:"[爱心]",low:"https://i.imgur.com/sLENaF5.png",high:"https://i.imgur.com/dND56oX.png"},{name:"[心碎]",low:"https://i.imgur.com/AZxJzve.png",high:"https://i.imgur.com/RiUsPci.png"}],ae=["3107b9ef8b316f3","442b04f26eefc8a","59cfebe717c09e4","60605aad4a62882","6c65ab1d3f5452a","83e123737849aa9","9311f6be1c10160","c4a4a563f698595","81be04b9e4a08ce"];t({content:T,isFocus:()=>b.value});const Q=vue.computed(()=>[a,b.value?"isFocus":"",m.value?"isNight":""]),ee=vue.computed(()=>{var N;if(!S.value||!T.value)return "";let F=((N=S.value)==null?void 0:N.selectionStart)||0;return T.value.substring(0,F).replace(/</g,"<").replace(/>/g,">").replace(/\n/g,"<br/>").replace(/\s/g,M.value)}),fe=vue.computed(()=>T.value?T.value===u:!0);function pe(F){F.preventDefault(),he(F.dataTransfer.files[0]);}async function he(F){if(!F||y.value)return;y.value=!0;const N=new FormData;N.append("image",F);const U=Math.floor(Math.random()*ae.length),J=ae[U],X=await fetch("https://api.imgur.com/3/upload",{method:"POST",headers:{Authorization:`Client-ID ${J}`},body:N});if(y.value=!1,X.ok){const G=await X.json();if(G.success)return Ze(" "+G.data.link+" ")}w.emit(_.SHOW_MSG,{type:"error",text:"上传失败"});}async function Te(){if(fe.value||f.value)return;f.value=!0;let F=T.value.replace(/\[((?!\[).)+\]/g,function(G){let te=V.find(we=>we.name===G);return te?te.low+" ":G}),N=T.value.replace(/https?:\/\/(i\.)?imgur\.com\/((?!http).)+\.(gif|png|jpg|jpeg|GIF|PNG|JPG|JPEG)/g,function(G){return `<img src="${G}" data-originUrl="${G}" data-notice="这个img标签由v2ex-超级增强脚本解析" style="max-width: 100%">`});N=N.replace(/\[((?!\[).)+\]/g,function(G){let te=V.find(we=>we.name===G);return te?`<a target="_blank" href="${te.low}" rel="nofollow noopener"><img src="${te.low}" class="embedded_image" rel="noreferrer"></a> `:G});let U=N.match(/@([\w]+?[\s])/g);U&&U.map(G=>{let te=G.replace("@","").replace(" ","");N=N.replace(te,`<a href="/member/${te}">${te}</a>`);}),N=N.replaceAll(`
`,"<br/>");let J={thankCount:0,isThanked:!1,isOp:d.value.username===window.user.username,isDup:!1,id:Date.now(),username:window.user.username,avatar:window.user.avatar,date:"几秒前",floor:d.value.replyCount+1,reply_content:N??"",children:[],replyUsers:i?[i]:[],replyFloor:s||-1,level:a==="reply-comment"?1:0};J.hideCallUserReplyContent=J.reply_content,J.replyUsers.length===1&&(J.hideCallUserReplyContent=J.reply_content.replace(/@<a href="\/member\/[\s\S]+?<\/a>(\s#[\d]+)?\s(<br>)?/,()=>"")),console.log("回复",J);let X=`${window.baseUrl}/t/${d.value.id}`;$.post(X,{content:F,once:d.value.once}).then(G=>{f.value=!1;let te=G.search("你上一条回复的内容和这条相同");if(te>-1)return w.emit(_.SHOW_MSG,{type:"error",text:"你上一条回复的内容和这条相同"});if(te=G.search("请不要在每一个回复中都包括外链,这看起来像是在 spamming"),te>-1)return w.emit(_.SHOW_MSG,{type:"error",text:"请不要在每一个回复中都包括外链,这看起来像是在 spamming"});if(G.search("创建新回复")>-1){w.emit(_.REFRESH_ONCE,G),w.emit(_.SHOW_MSG,{type:"error",text:"回复出现了问题,请使用原版进行回复"});let Fe=window.document.body.clientWidth,Be=1200,_n=Fe/2-Be/2,Lt=window.open("创建新回复","",`width=${Be},height=600,left=${_n},top=100`);Lt.document.write(G);let vn=setInterval(function(){Lt.closed&&(clearInterval(vn),w.emit(_.REFRESH_POST));},1e3);return}T.value=u,c("close"),w.emit(_.REFRESH_ONCE,G),w.emit(_.SHOW_MSG,{type:"success",text:"回复成功"}),w.emit(_.ADD_REPLY,J);},G=>{console.log("err",G),f.value=!1,w.emit(_.SHOW_MSG,{type:"error",text:"回复失败"});}).catch(G=>{console.log("catch",G);});}function Ie(F){if(p.value)return p.value=!1;let N=F.currentTarget.getBoundingClientRect();W.value.style.left=N.left+30+"px",W.value.style.bottom=window.innerHeight-N.top-20+"px",p.value=!0;}function le(){w.emit(_.SHOW_CALL,{show:!1}),w.off(_.SET_CALL);}function Ct(){S.value.style.height=0,S.value.style.height=S.value.scrollHeight+"px";}function Ze(F){let N=S.value.selectionStart,U=T.value.slice(0,N),J=T.value.slice(N,T.value.length);T.value=U+F+J;let X=U.length+F.length;setTimeout(()=>{S.value.focus(),S.value.setSelectionRange(X,X),Ct();});}function Le(F){let N=z.value.getBoundingClientRect();w.emit(_.SHOW_CALL,{show:!0,top:N.top,left:N.left,text:F}),w.off(_.SET_CALL),w.on(_.SET_CALL,U=>{let J=S.value.selectionStart,X=T.value.slice(0,J),G=T.value.slice(J,T.value.length),te=X.lastIndexOf("@");X=T.value.slice(0,te+1),U==="管理员"&&(U="Livid @Kai @Olivia @GordianZ @sparanoid"),U==="所有人"&&(U=v.value.map((Fe,Be)=>Be?"@"+Fe:Fe).join(" ")),T.value=X+U+" "+G;let we=X.length+U.length+1;setTimeout(()=>{S.value.setSelectionRange(we,we),Ct();}),w.off(_.SET_CALL);});}function gn(F){switch(F.keyCode){case 8:T.value==="@"&&le();break;case 37:case 38:case 39:case 40:setTimeout(()=>St({data:""}),100);break;case 27:return F.preventDefault(),F.stopPropagation(),F.stopImmediatePropagation(),!1;case 13:F.ctrlKey&&Te(),F.metaKey&&Te();break}}function St(F){let N=S.value.selectionStart;if(T.value){if(F.data===" ")return le();if(F.data==="@"){if(T.value.length!==1){if(T.value[N-2]===" "||T.value[N-2]===`
`)return Le("")}else return Le("");le();}else {let U=T.value.slice(0,N),J=U.lastIndexOf("@");if(J===-1)return le();let X=U.slice(J,N);if(X.includes(" "))le();else {if(J===0)return Le(X.replace("@",""));if(T.value.length!==1){if(T.value[J-1]===" "||T.value[J-1]===`
`)return Le(X.replace("@",""))}else return Le(X.replace("@",""));le();}}}}function It(F){const N=F.clipboardData.items,U=[].slice.call(N).filter(function(G){return G.type.indexOf("image")!==-1});if(U.length===0)return;const X=U[0].getAsFile();he(X);}function yn(){document.removeEventListener("paste",It),b.value=!1;}function wn(){document.addEventListener("paste",It);}return vue.watch(()=>r,F=>{F.value&&(p.value=!1);},{deep:!0}),vue.onMounted(()=>{$(`.${k.value}`).each(function(){this.setAttribute("style","height:"+this.scrollHeight+"px;overflow-y:hidden;");}).on("input",function(){this.style.height=0,this.style.height=this.scrollHeight+"px";}),a==="reply-comment"&&S.value&&S.value.focus();}),vue.onBeforeUnmount(()=>{$(`.${k.value}`).off();}),(F,N)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["post-editor-wrapper",Q.value])},[vue.withDirectives(vue.createElementVNode("textarea",{class:vue.normalizeClass(["post-editor",k.value]),ref_key:"txtRef",ref:S,onFocus:N[0]||(N[0]=U=>vue.isRef(b)?b.value=!0:b=!0),onBlur:yn,onFocusin:wn,placeholder:"请尽量让自己的回复能够对别人有帮助",onInput:St,onKeydown:gn,onDrop:pe,"onUpdate:modelValue":N[1]||(N[1]=U=>T.value=U)},null,34),[[vue.vModelText,T.value]]),vue.createElementVNode("div",Il,[vue.createElementVNode("span",{innerHTML:ee.value},null,8,Ll),vue.createElementVNode("span",{class:"cursor",ref_key:"cursorRef",ref:z},"|",512)]),vue.createElementVNode("div",Rl,[vue.createElementVNode("div",Ml,[vue.createVNode(vue.unref(ne),{onClick:Ie,icon:"streamline:smiley-happy"}),vue.createElementVNode("div",Nl,[vue.createElementVNode("input",{type:"file",accept:"image/*",onChange:N[2]||(N[2]=U=>he(U.currentTarget.files[0]))},null,32),vue.createVNode(vue.unref(ne),{icon:"lets-icons:img-load-box-fill"})]),y.value?(vue.openBlock(),vue.createElementBlock("span",Ol,"上传中.....")):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",Pl,[vue.unref(a)==="reply-comment"?(vue.openBlock(),vue.createBlock(ye,{key:0,type:"link",size:"small",style:{"margin-right":"1rem",cursor:"pointer"},onClick:N[3]||(N[3]=U=>c("close"))},{default:vue.withCtx(()=>[vue.createTextVNode(" 关闭 ")]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(ye,{size:"small",disabled:fe.value,loading:f.value,onClick:Te},{default:vue.withCtx(()=>[vue.createTextVNode("回复 ")]),_:1},8,["disabled","loading"])])]),vue.withDirectives(vue.createElementVNode("div",{class:"emoticon-pack",ref_key:"emoticonsRef",ref:W},[vue.createVNode(vue.unref(ne),{icon:"ic:round-close",onClick:N[4]||(N[4]=U=>p.value=!1)}),El,vue.createElementVNode("div",Al,[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(V,U=>vue.createElementVNode("img",{src:U.high,onClick:J=>{Ze(U.name),p.value=!1;}},null,8,Dl)),64))]),vue.createElementVNode("div",Vl,[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(B,U=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("div",Ul,vue.toDisplayString(U.title),1),vue.createElementVNode("div",$l,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(U.list,J=>(vue.openBlock(),vue.createElementBlock("span",{onClick:X=>{Ze(J),p.value=!1;}},vue.toDisplayString(J),9,Hl))),256))])],64))),64))])],512),[[vue.vShow,p.value]])],2))}},pn=K(Fl,[["__scopeId","data-v-4522f98e"]]);const Bl={key:0,class:"html-wrapper"},Gl=["innerHTML"],jl=900,Wl={__name:"BaseHtmlRender",props:["html"],setup(e){const t=vue.inject("config"),n=e,o=vue.ref(null),i=vue.ref(!1),s=vue.ref(!1);function a(c){if(!t.value.base64)return;let d=window.win().getSelection().toString();if(d){let r=d.match(/([A-Za-z0-9+/=]+)/g);if(r){if(r[0].length<4)return;w.emit(_.SHOW_TOOLTIP,{text:r[0],e:c});}}}vue.watch(t.value,c=>{c.contentAutoCollapse||(i.value=!1);}),vue.watch([()=>o.value,()=>n.html],()=>{!o.value||!n.html||t.value.contentAutoCollapse&&(o.value.querySelectorAll("img").forEach(c=>{c.removeEventListener("load",u),c.addEventListener("load",u);}),u());},{immediate:!0,flush:"post"});function u(){if(s.value)return;let c=o.value.getBoundingClientRect();i.value=c.height>=jl;}return (c,d)=>n.html?(vue.openBlock(),vue.createElementBlock("div",Bl,[vue.createElementVNode("div",{class:vue.normalizeClass({mask:i.value})},[vue.createElementVNode("div",{ref_key:"contentRef",ref:o,innerHTML:n.html,onMouseup:a},null,40,Gl)],2),i.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"expand",onClick:d[0]||(d[0]=r=>{i.value=!1,s.value=!0;})},"展开")):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)}},kt=K(Wl,[["__scopeId","data-v-2c9a538c"]]);const ql={name:"Comment",components:{BaseHtmlRender:kt,Author:Cl,PostEditor:pn,Point:bt},inject:["post","postDetailWidth","show","isNight","config"],props:{modelValue:{reply_content:""},type:{type:String,default(){return "list"}}},data(){return {edit:!1,ding:!1,expand:!0,expandWrong:!1,replyInfo:`@${this.modelValue.username} #${this.modelValue.floor} `,cssStyle:null,floor:this.modelValue.floor}},watch:{show(e){e&&(this.edit=!1);},postDetailWidth(e,t){this.checkIsTooLong(e);}},computed:{CommentDisplayType(){return O},myClass(){return {isOp:this.modelValue.isOp,isSimple:this.config.viewType==="simple",ding:this.ding,isLevelOne:this.modelValue.level===0,["c_"+this.floor]:this.type!=="top"}}},mounted(){this.checkIsTooLong(this.postDetailWidth);},methods:{checkIsTooLong(e){if(e!==0){let t=this.$refs.comment.getBoundingClientRect(),n=e*.6;if(n<t.width&&t.width<n+25&&this.modelValue.children.length){this.expand=!1;let o=2;this.cssStyle={padding:"1rem 0",width:`calc(${e}px - ${o}rem)`,transform:`translateX(calc(${t.width-e}px + ${o}rem))`,background:this.isNight?"#18222d":"white"};}}},showDing(){this.ding=!0,setTimeout(()=>{this.ding=!1;},2e3);},hide(){let e=`${window.baseUrl}/ignore/reply/${this.modelValue.id}?once=${this.post.once}`;w.emit(_.REMOVE,this.modelValue.floor),$.post(e).then(t=>{w.emit(_.REFRESH_ONCE),w.emit(_.SHOW_MSG,{type:"success",text:"隐藏成功"});},t=>{w.emit(_.SHOW_MSG,{type:"warning",text:"隐藏成功,仅本次有效(接口调用失败!)"});});},toggle(){this.expand=!this.expand;}}},ke=e=>(vue.pushScopeId("data-v-d8fc1c55"),e=e(),vue.popScopeId(),e),zl=["data-floor"],Jl={class:"comment-content"},Kl={class:"right"},Xl={class:"w"},Yl={key:0,class:"wrong-wrapper"},Ql=["href"],Zl={class:"del-line"},er=ke(()=>vue.createElementVNode("i",{class:"fa fa-question-circle-o wrong-icon","aria-hidden":"true"},null,-1)),tr={key:0,class:"warning"},nr=ke(()=>vue.createElementVNode("br",null,null,-1)),ir=ke(()=>vue.createElementVNode("br",null,null,-1)),sr=ke(()=>vue.createElementVNode("br",null,null,-1)),or=ke(()=>vue.createElementVNode("br",null,null,-1)),lr=ke(()=>vue.createElementVNode("br",null,null,-1)),rr=ke(()=>vue.createElementVNode("a",{href:"https://github.com/zyronon/web-scripts/issues",target:"_blank"},"这里",-1)),ar={class:"simple-wrapper"};function cr(e,t,n,o,i,s){const a=vue.resolveComponent("Author"),u=vue.resolveComponent("BaseHtmlRender"),c=vue.resolveComponent("PostEditor"),d=vue.resolveComponent("Comment",!0);return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["comment",s.myClass]),ref:"comment","data-floor":i.floor},[vue.createVNode(a,{modelValue:i.expand,"onUpdate:modelValue":t[0]||(t[0]=r=>i.expand=r),comment:n.modelValue,onReply:t[1]||(t[1]=r=>i.edit=!i.edit),type:n.type,onHide:s.hide},null,8,["modelValue","comment","type","onHide"]),i.cssStyle&&!i.expand?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"more ago",onClick:t[2]||(t[2]=r=>i.expand=!i.expand)}," 由于嵌套回复层级太深,自动将后续回复隐藏 ")):vue.createCommentVNode("",!0),i.expand?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"comment-content-w",style:vue.normalizeStyle(i.cssStyle)},[i.cssStyle?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"more ago",onClick:t[3]||(t[3]=r=>i.expand=!i.expand)}," 由于嵌套回复层级太深,自动将以下回复移至可见范围 ")):vue.createCommentVNode("",!0),vue.createElementVNode("div",Jl,[vue.createElementVNode("div",{class:"left expand-line",onClick:t[4]||(t[4]=(...r)=>s.toggle&&s.toggle(...r))}),vue.createElementVNode("div",Kl,[vue.createElementVNode("div",Xl,[n.modelValue.isWrong?(vue.openBlock(),vue.createElementBlock("div",Yl,[vue.createElementVNode("span",{onClick:t[5]||(t[5]=r=>i.expandWrong=!i.expandWrong),title:"点击楼层号查看提示"},[vue.createElementVNode("a",{href:"/member/"+n.modelValue.replyUsers[0]},"@"+vue.toDisplayString(n.modelValue.replyUsers[0])+" ",9,Ql),vue.createElementVNode("span",Zl,"#"+vue.toDisplayString(n.modelValue.replyFloor),1),er]),i.expandWrong?(vue.openBlock(),vue.createElementBlock("div",tr,[vue.createTextVNode(" 这条回复似乎有点问题,指定的楼层号与@的人对应不上 "),nr,vue.createTextVNode(" 原因可能有下面几种: "),ir,vue.createTextVNode(" 一、屏蔽用户导致楼层塌陷:你屏蔽了A,自A以后的回复的楼层号都会减1 "),sr,vue.createTextVNode(" 二、忽略回复导致楼层塌陷:原理同上 "),or,vue.createTextVNode(" 三、层主回复时指定错了楼层号(同一,层主屏蔽了别人,导致楼层塌陷) "),lr,vue.createTextVNode(" 四、脚本解析错误,请在 "),rr,vue.createTextVNode("反馈 ")])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0),s.config.commentDisplayType===s.CommentDisplayType.FloorInFloorNoCallUser&&this.type!=="top"?(vue.openBlock(),vue.createBlock(u,{key:1,class:"reply_content",html:n.modelValue.hideCallUserReplyContent},null,8,["html"])):(vue.openBlock(),vue.createBlock(u,{key:2,class:"reply_content",html:n.modelValue.reply_content},null,8,["html"])),i.edit?(vue.openBlock(),vue.createBlock(c,{key:3,onClose:t[6]||(t[6]=r=>i.edit=!1),replyInfo:i.replyInfo,replyUser:n.modelValue.username,replyFloor:n.modelValue.floor},null,8,["replyInfo","replyUser","replyFloor"])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",ar,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(n.modelValue.children,(r,m)=>(vue.openBlock(),vue.createBlock(d,{modelValue:n.modelValue.children[m],"onUpdate:modelValue":v=>n.modelValue.children[m]=v,key:m},null,8,["modelValue","onUpdate:modelValue"]))),128))])])]),i.cssStyle?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"more ago",onClick:t[7]||(t[7]=r=>i.expand=!i.expand)}," 由于嵌套回复层级太深,自动将以上回复移至可见范围 ")):vue.createCommentVNode("",!0)],4)):vue.createCommentVNode("",!0)],10,zl)}const dr=K(ql,[["render",cr],["__scopeId","data-v-d8fc1c55"]]);const ur={name:"Toolbar",components:{Icon:ne,BaseLoading:Qe},inject:["isLogin","post","pageType"],data(){return {timer:null,loading:!1,loading2:!1,loading3:!1}},methods:{checkIsLogin(e=""){return this.isLogin?(this.$emit(e),!0):(w.emit(_.SHOW_MSG,{type:"warning",text:"请先登录(不可用)!"}),!1)},tweet(){var n;let e=((n=window.user)==null?void 0:n.username)??"",t=`https://twitter.com/intent/tweet?url=${location.origin}/t/${this.post.id}?r=${e}&related=v2ex&text=${this.post.title}`;window.open(t,"_blank","width=550,height=370");},async report(){if(!this.checkIsLogin()||this.loading3)return;let e=this.post.isReport;if(e){w.emit(_.SHOW_MSG,{type:"success",text:"你已对本主题进行了报告"});return}let t=`${location.origin}/report/topic/${this.post.id}?once=${this.post.once}`;this.loading3=!0;let n=await fetch(t);if(this.loading3=!1,n.redirected){let o=await n.text();if(o.search("你已对本主题进行了报告")){w.emit(_.SHOW_MSG,{type:"success",text:"你已对本主题进行了报告"}),w.emit(_.REFRESH_ONCE,o),w.emit(_.MERGE,{isReport:!e});return}}w.emit(_.REFRESH_ONCE),w.emit(_.SHOW_MSG,{type:"error",text:"操作失败,请重试"});},async toggleIgnore(){if(!this.checkIsLogin())return;let e=`${window.baseUrl}/${this.post.isIgnore?"unignore":"ignore"}/topic/${this.post.id}?once=${this.post.once}`;this.pageType===q.Post?(this.loading2=!0,(await window.win().fetch(e)).redirected?(this.post.isIgnore||(window.win().location=window.baseUrl),w.emit(_.SHOW_MSG,{type:"success",text:this.post.isIgnore?"取消成功":"忽略成功"}),w.emit(_.MERGE,{isIgnore:!this.post.isIgnore})):w.emit(_.SHOW_MSG,{type:"warning",text:"忽略失败"}),this.loading2=!1):(this.post.isIgnore?this.loading2=!0:w.emit(_.IGNORE),(await window.win().fetch(e)).redirected?(this.post.isIgnore&&w.emit(_.REFRESH_ONCE),w.emit(_.SHOW_MSG,{type:"success",text:this.post.isIgnore?"取消成功":"忽略成功"}),w.emit(_.MERGE,{isIgnore:!this.post.isIgnore})):w.emit(_.SHOW_MSG,{type:"warning",text:"忽略成功,仅本次有效(接口调用失败!)"}),this.loading2=!1);},async toggleFavorite(){if(!this.checkIsLogin()||this.loading)return;let e=this.post.isFavorite;!e&&config.collectBrowserNotice&&w.emit(_.SHOW_MSG,{type:"success",text:"别忘记按Command/Cmd/CTRL + D添加到书签哦"});let t=`${location.origin}/${e?"unfavorite":"favorite"}/topic/${this.post.id}?once=${this.post.once}`;this.loading=!0;let n=await fetch(t);if(this.loading=!1,n.redirected){let o=await n.text();if(o.search(e?"加入收藏":"取消收藏")){w.emit(_.SHOW_MSG,{type:"success",text:e?"取消成功":"收藏成功"}),w.emit(_.MERGE,{collectCount:e?this.post.collectCount-1:this.post.collectCount+1}),w.emit(_.REFRESH_ONCE,o),w.emit(_.MERGE,{isFavorite:!e});return}}w.emit(_.REFRESH_ONCE),w.emit(_.SHOW_MSG,{type:"error",text:"操作失败"});}}},hn=e=>(vue.pushScopeId("data-v-e3df61b2"),e=e(),vue.popScopeId(),e),pr={class:"toolbar"},hr=hn(()=>vue.createElementVNode("span",null,"回复",-1)),fr={key:0,class:"tool no-hover"},mr=hn(()=>vue.createElementVNode("span",null,"Tweet",-1));function gr(e,t,n,o,i,s){const a=vue.resolveComponent("Icon"),u=vue.resolveComponent("BaseLoading");return vue.openBlock(),vue.createElementBlock("div",pr,[vue.renderSlot(e.$slots,"default",{},void 0,!0),vue.createElementVNode("div",{class:"tool",onClick:t[0]||(t[0]=c=>s.checkIsLogin("reply"))},[vue.createVNode(a,{icon:"mynaui:message"}),hr]),vue.createElementVNode("div",{class:vue.normalizeClass(["tool",{disabled:i.loading}]),onClick:t[1]||(t[1]=(...c)=>s.toggleFavorite&&s.toggleFavorite(...c))},[i.loading?(vue.openBlock(),vue.createBlock(u,{key:0,size:"small"})):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[s.post.isFavorite?(vue.openBlock(),vue.createBlock(a,{key:0,color:"rgb(224,42,42)",icon:"iconoir:star-solid"})):(vue.openBlock(),vue.createBlock(a,{key:1,icon:"iconoir:star"}))],64)),vue.createElementVNode("span",null,vue.toDisplayString(s.post.isFavorite?"取消":"")+"收藏",1)],2),s.post.collectCount!==0?(vue.openBlock(),vue.createElementBlock("div",fr,[vue.createElementVNode("span",null,vue.toDisplayString(s.post.collectCount+"人收藏"),1)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:"tool",onClick:t[2]||(t[2]=(...c)=>s.tweet&&s.tweet(...c))},[vue.createVNode(a,{icon:"uil:share"}),mr]),vue.createElementVNode("div",{class:vue.normalizeClass(["tool",{disabled:i.loading2}]),onClick:t[3]||(t[3]=(...c)=>s.toggleIgnore&&s.toggleIgnore(...c))},[i.loading2?(vue.openBlock(),vue.createBlock(u,{key:0,size:"small"})):(vue.openBlock(),vue.createBlock(a,{key:1,icon:"fluent:eye-hide-24-regular"})),vue.createElementVNode("span",null,vue.toDisplayString(s.post.isIgnore?"取消忽略":"忽略"),1)],2),vue.createElementVNode("div",{class:vue.normalizeClass(["tool",{disabled:i.loading3}]),onClick:t[4]||(t[4]=(...c)=>s.report&&s.report(...c))},[i.loading3?(vue.openBlock(),vue.createBlock(u,{key:0,size:"small"})):(vue.openBlock(),vue.createBlock(a,{key:1,class:"black",icon:"solar:danger-triangle-outline"})),vue.createElementVNode("span",null,vue.toDisplayString(s.post.isReport?"你已对本主题进行了报告":"报告"),1)],2)])}const yr=K(ur,[["render",gr],["__scopeId","data-v-e3df61b2"]]);const Tt=e=>(vue.pushScopeId("data-v-87050bc7"),e=e(),vue.popScopeId(),e),wr=["href"],_r=["src"],vr={class:"texts"},br={key:0,class:"point"},kr={class:"link-num"},Tr={class:"my-tag"},xr=Tt(()=>vue.createElementVNode("i",{class:"fa fa-tag"},null,-1)),Cr={key:2,class:"ago"},Sr={key:3,class:"mod"},Ir={key:4,class:"owner"},Lr=["href"],Rr={key:5,class:"owner"},Mr={key:6,class:"mod"},Nr={key:7,class:"ago"},Or={class:"my-tag"},Pr=Tt(()=>vue.createElementVNode("i",{class:"fa fa-tag"},null,-1)),Er={key:9,class:"point"},Ar={class:"link-num"},Dr=["href"],Vr=["src"],Ur={class:"Author-right"},$r={class:"floor"},Hr=Tt(()=>vue.createElementVNode("span",null,"跳转",-1)),Fr=[Hr],Br={__name:"SingleComment",props:{comment:{reply_content:""},isRight:{type:Boolean,default(){return !1}}},setup(e){const t=vue.inject("config"),n=vue.inject("isLogin"),o=vue.inject("tags"),i=e,s=vue.computed(()=>o[i.comment.username]??[]);function a(){w.emit(_.JUMP,i.comment.floor);}return (u,c)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["comment",{isSimple:vue.unref(t).viewType==="simple"}]),ref:"comment"},[e.isRight?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("a",{key:0,class:"avatar",href:`/member/${e.comment.username}`},[vue.createElementVNode("img",{src:e.comment.avatar,alt:""},null,8,_r)],8,wr)),vue.createElementVNode("div",{class:vue.normalizeClass(["comment-body",{isRight:e.isRight}])},[vue.createElementVNode("div",vr,[e.comment.thankCount&&e.isRight?(vue.openBlock(),vue.createElementBlock("div",br,[e.comment.isThanked?(vue.openBlock(),vue.createBlock(vue.unref(ne),{key:0,color:"rgb(224,42,42)",icon:"icon-park-solid:like"})):(vue.openBlock(),vue.createBlock(vue.unref(ne),{key:1,color:e.comment.thankCount?"rgb(224,42,42)":null,icon:"icon-park-outline:like"},null,8,["color"])),vue.createElementVNode("div",kr,vue.toDisplayString(e.comment.thankCount),1)])):vue.createCommentVNode("",!0),vue.unref(n)&&vue.unref(t).openTag&&e.isRight?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(s.value,d=>(vue.openBlock(),vue.createElementBlock("span",Tr,[xr,vue.createElementVNode("span",null,vue.toDisplayString(d),1)]))),256)):vue.createCommentVNode("",!0),e.isRight?(vue.openBlock(),vue.createElementBlock("span",Cr,vue.toDisplayString(e.comment.date),1)):vue.createCommentVNode("",!0),e.comment.isMod&&e.isRight?(vue.openBlock(),vue.createElementBlock("div",Sr,"MOD")):vue.createCommentVNode("",!0),e.comment.isOp&&e.isRight?(vue.openBlock(),vue.createElementBlock("div",Ir,"OP")):vue.createCommentVNode("",!0),vue.createElementVNode("a",{href:`/member/${e.comment.username}`,class:"username"},vue.toDisplayString(e.comment.username),9,Lr),e.comment.isOp&&!e.isRight?(vue.openBlock(),vue.createElementBlock("div",Rr,"OP")):vue.createCommentVNode("",!0),e.comment.isMod&&!e.isRight?(vue.openBlock(),vue.createElementBlock("div",Mr,"MOD")):vue.createCommentVNode("",!0),e.isRight?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("span",Nr,vue.toDisplayString(e.comment.date),1)),vue.unref(n)&&vue.unref(t).openTag&&!e.isRight?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:8},vue.renderList(s.value,d=>(vue.openBlock(),vue.createElementBlock("span",Or,[Pr,vue.createElementVNode("span",null,vue.toDisplayString(d),1)]))),256)):vue.createCommentVNode("",!0),e.comment.thankCount&&!e.isRight?(vue.openBlock(),vue.createElementBlock("div",Er,[e.comment.isThanked?(vue.openBlock(),vue.createBlock(vue.unref(ne),{key:0,color:"rgb(224,42,42)",icon:"icon-park-solid:like"})):(vue.openBlock(),vue.createBlock(vue.unref(ne),{key:1,color:e.comment.thankCount?"rgb(224,42,42)":null,icon:"icon-park-outline:like"},null,8,["color"])),vue.createElementVNode("div",Ar,vue.toDisplayString(e.comment.thankCount),1)])):vue.createCommentVNode("",!0)]),vue.createVNode(kt,{class:"reply_content",html:e.comment.reply_content},null,8,["html"])],2),e.isRight?(vue.openBlock(),vue.createElementBlock("a",{key:1,class:"avatar",href:`/member/${e.comment.username}`},[vue.createElementVNode("img",{src:e.comment.avatar,alt:""},null,8,Vr)],8,Dr)):vue.createCommentVNode("",!0),vue.createElementVNode("div",Ur,[vue.createElementVNode("div",$r,vue.toDisplayString(e.comment.floor),1),vue.createElementVNode("div",{class:"tool jump",onClick:a},Fr)])],2))}},Gr=K(Br,[["__scopeId","data-v-87050bc7"]]);const jr={name:"detail",components:{BaseSelect:vt,BaseButton:ye,SingleComment:Gr,PopConfirm:$e,Comment:dr,PostEditor:pn,Point:bt,Toolbar:yr,BaseHtmlRender:kt,Tooltip:Ue,BaseLoading:Qe,Icon:ne},inject:["allReplyUsers","post","tags","isLogin","config","pageType","isNight"],provide(){return {postDetailWidth:vue.computed(()=>this.postDetailWidth)}},props:{modelValue:{type:Boolean,default(){return !1}},loading:{type:Boolean,default(){return !1}},refreshLoading:{type:Boolean,default(){return !1}},displayType:O.FloorInFloorNoCallUser},data(){return {isSticky:!1,selectCallIndex:0,postDetailWidth:0,showCallList:!1,showRelationReply:!1,replyText:"",callStyle:{top:0,left:0},targetUser:{left:[],right:"",rightFloor:-1},currentFloor:"",showOpTag:!1}},computed:{canAppend(){if(this.isMy){let e=new Date(this.post.createDate);return Date.now()-e.valueOf()>1e3*60*30}return !1},canEditMove(){if(this.isMy){let e=new Date(this.post.createDate);return Date.now()-e.valueOf()<1e3*60*10}return !1},isMy(){return this.post.member.username===window.user.username},myTags(){return this.tags[this.post.member.username]??[]},CommentDisplayType(){return O},isPost(){return this.pageType===q.Post},filterCallList(){if(this.showCallList){let e=["管理员","所有人"].concat(this.allReplyUsers);return this.replyText?e.filter(t=>t.search(this.replyText)>-1):e}return []},topReply(){return this.post.replyList.filter(e=>e.thankCount>=this.config.topReplyLoveMinCount).sort((e,t)=>t.thankCount-e.thankCount).slice(0,this.config.topReplyCount)},replyList(){return [O.FloorInFloor,O.FloorInFloorNoCallUser].includes(this.displayType)?this.post.nestedReplies:this.displayType===O.Like?window.clone(this.post.nestedReplies).sort((e,t)=>t.thankCount-e.thankCount):this.displayType===O.New?window.clone(this.post.replyList).reverse():this.displayType===O.V2exOrigin?this.post.replyList:this.displayType===O.FloorInFloorNested?this.post.nestedRedundReplies:this.displayType===O.OnlyOp?this.post.replyList.filter(e=>{var t;return e.username===((t=this.post.member)==null?void 0:t.username)}):[]},relationReply(){return this.targetUser.left.length&&this.targetUser.right?this.post.replyList.filter(e=>{if(this.targetUser.left.includes(e.username))if(e.floor>this.targetUser.rightFloor){if(e.replyUsers.includes(this.targetUser.right))return !0}else return !0;if(e.username===this.targetUser.right){for(let t=0;t<this.targetUser.left.length;t++)if(e.replyUsers.includes(this.targetUser.left[t]))return !0}}):[]}},watch:{"post.id"(e,t){this.$refs["post-editor"]&&(this.$refs["post-editor"].content="",vue.nextTick(()=>{var n,o;(o=(n=this.$refs)==null?void 0:n.detail)==null||o.scrollTo({top:0});}));},"post.headerTemplate"(e,t){document.querySelector(".main-wrapper .post-wrapper .html-wrapper .header")&&(this.showOpTag=!0);},modelValue:{handler(e){this.isPost||(e?(document.body.style.overflow="hidden",window.history.state||window.history.pushState({},0,this.post.href),this.currentFloor="",vue.nextTick(()=>{var t,n;window.document.title=this.post.title??"V2EX",(n=(t=this.$refs)==null?void 0:t.main)==null||n.focus();})):(document.body.style.overflow="unset",window.document.title="V2EX",this.isSticky=!1,this.showRelationReply=!1,window.history.state&&window.history.back()));}}},mounted(){vue.nextTick(()=>{setTimeout(()=>{var e;this.postDetailWidth=((e=this.$refs.mainWrapper)==null?void 0:e.getBoundingClientRect().width)||0;},500);}),this.isLogin&&(new IntersectionObserver(([t])=>t.target.toggleAttribute("stuck",t.intersectionRatio<1),{threshold:[1]}).observe(this.$refs.replyBox),window.addEventListener("keydown",this.onKeyDown)),w.on(_.SHOW_CALL,e=>{e.show?(this.showCallList=!0,this.replyText=e.text,this.isPost?this.callStyle.top=e.top+$(window.win()).scrollTop()+-40+"px":this.callStyle.top=e.top+$(".post-detail").scrollTop()+15+"px",this.callStyle.left=e.left-$(".main")[0].getBoundingClientRect().left+10+"px",this.selectCallIndex>=this.filterCallList.length&&(this.selectCallIndex=0)):(this.replyText="",this.showCallList=!1,this.selectCallIndex=0);}),w.on(_.RELATION_REPLY,e=>{this.targetUser=e,this.showRelationReply=!0;}),w.on(_.JUMP,this.jump),this.isPost&&window.addEventListener("scroll",this.debounceScroll);},beforeUnmount(){window.removeEventListener("keydown",this.onKeyDown),w.off(_.SHOW_CALL);},methods:{addTag(){w.emit(_.ADD_TAG,this.post.member.username);},removeTag(e){w.emit(_.REMOVE_TAG,{username:this.post.member.username,tag:e});},stop(e){},jump(e){let t=this.replyList[this.replyList.length-1];if(e==="")e=t.floor;else {try{e=Number(e);}catch{e=t.floor;}e===0&&(e=1),e>t.floor&&(e=t.floor);}if(!this.post.replyList.length){w.emit(_.SHOW_MSG,{type:"warning",text:"没有回复可跳转!"});return}if(e>this.post.replyList.length){w.emit(_.SHOW_MSG,{type:"error",text:"没有找到对应回复!"});return}let n=$(`.c_${e}`);if(!n.length){w.emit(_.SHOW_MSG,{type:"error",text:"没有找到对应回复!"});return}n[0].scrollIntoView({behavior:"smooth",block:"center",inline:"center"}),n.addClass("ding"),this.currentFloor=e+1,setTimeout(()=>{n.removeClass("ding");},2e3);},collapseTopReplyList(){$(this.$refs.topReply).slideToggle("fast");},goBottom(){this.isSticky=!1,setTimeout(()=>{if(this.isPost){let e=$("body , html"),t=e.prop("scrollHeight");e.animate({scrollTop:t-850},300);}else this.$refs.detail.scrollTo({top:this.$refs.detail.scrollHeight,behavior:"smooth"});});},close(e){this.isPost||(e==="space"?this.config.closePostDetailBySpace&&this.$emit("update:modelValue",!1):this.$emit("update:modelValue",!1));},setCall(e){w.emit(_.SET_CALL,e),this.showCallList=!1;},onKeyDown(e){if(!this.modelValue||!this.showCallList)return;let t=this.filterCallList.slice(0,10).length;e.keyCode===13&&(this.setCall(this.filterCallList[this.selectCallIndex]),e.preventDefault()),e.keyCode===38&&(this.selectCallIndex--,this.selectCallIndex<0&&(this.selectCallIndex=t-1),e.preventDefault()),e.keyCode===40&&(this.selectCallIndex++,this.selectCallIndex>t-1&&(this.selectCallIndex=0),e.preventDefault());},changeOption(e){this.$emit("update:displayType",e);},addThank(){w.emit(_.CHANGE_POST_THANK,{id:this.post.id,type:"add"});},recallThank(){w.emit(_.CHANGE_POST_THANK,{id:this.post.id,type:"recall"});},scrollTop(){this.isPost?$("body , html").animate({scrollTop:0},300):this.$refs.detail.scrollTo({top:0,behavior:"smooth"});}}},ue=e=>(vue.pushScopeId("data-v-cd896901"),e=e(),vue.popScopeId(),e),Wr={class:"my-box post-wrapper"},qr={class:"header"},zr={class:"fr"},Jr=["href"],Kr=["src","alt"],Xr=ue(()=>vue.createElementVNode("a",{href:"/"},"V2EX",-1)),Yr=ue(()=>vue.createElementVNode("span",{class:"chevron"}," › ",-1)),Qr=["href"],Zr=ue(()=>vue.createElementVNode("div",{class:"sep10"},null,-1)),ea=["id"],ta=["onclick"],na=ue(()=>vue.createElementVNode("li",{class:"fa fa-chevron-up"},null,-1)),ia=["onclick"],sa=ue(()=>vue.createElementVNode("li",{class:"fa fa-chevron-down"},null,-1)),oa=[sa],la={class:"gray"},ra=["href"],aa=["title"],ca=["href"],da=ue(()=>vue.createElementVNode("li",{class:"fa fa-info-circle"},null,-1)),ua=[da],pa=["href"],ha=["href"],fa=["href"],ma={class:"my-tag"},ga=ue(()=>vue.createElementVNode("i",{class:"fa fa-tag"},null,-1)),ya=["onClick"],wa={key:0,class:"my-box"},_a=ue(()=>vue.createElementVNode("span",null,"高赞回复",-1)),va={class:"top-reply"},ba={class:"tool"},ka={ref:"topReply"},Ta={class:"my-box comment-wrapper"},xa={key:0,class:"my-cell flex"},Ca={key:0},Sa=ue(()=>vue.createElementVNode("strong",{class:"snow"},"•",-1)),Ia=["innerHTML"],La={key:0,class:"loading-wrapper"},Ra={key:1,class:"comments"},Ma={key:1,id:"no-comments-yet"},Na={class:"my-cell flex"},Oa=ue(()=>vue.createElementVNode("span",null,"添加一条新回复",-1)),Pa={class:"notice-right gray"},Ea={class:"p1"},Aa=ue(()=>vue.createElementVNode("span",{class:"gray"},"上下文",-1)),Da={class:"top-reply"},Va=["onClick"];function Ua(e,t,n,o,i,s){const a=vue.resolveComponent("BaseHtmlRender"),u=vue.resolveComponent("Point"),c=vue.resolveComponent("Toolbar"),d=vue.resolveComponent("Icon"),r=vue.resolveComponent("Tooltip"),m=vue.resolveComponent("Comment"),v=vue.resolveComponent("BaseSelect"),b=vue.resolveComponent("BaseLoading"),f=vue.resolveComponent("PostEditor"),y=vue.resolveComponent("SingleComment");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["post-detail",[s.isNight?"isNight":"",s.pageType]]),ref:"detail",onKeydown:t[19]||(t[19]=vue.withKeys(p=>s.close(),["esc"])),onScroll:t[20]||(t[20]=(...p)=>e.debounceScroll&&e.debounceScroll(...p)),onClick:t[21]||(t[21]=p=>s.close("space"))},[vue.createElementVNode("div",{ref:"main",class:"main",tabindex:"1",onClick:t[18]||(t[18]=vue.withModifiers((...p)=>s.stop&&s.stop(...p),["stop"]))},[vue.createElementVNode("div",{class:"main-wrapper",ref:"mainWrapper",style:vue.normalizeStyle({width:s.config.postWidth})},[vue.createElementVNode("div",Wr,[vue.createElementVNode("div",qr,[vue.createElementVNode("div",zr,[vue.createElementVNode("a",{href:`/member/${s.post.member.username}`,style:{width:"73px",height:"73px",display:"inline-block"}},[s.post.member.avatar_large?(vue.openBlock(),vue.createElementBlock("img",{key:0,src:s.post.member.avatar_large,class:"avatar",style:{width:"73px",height:"73px"},border:"0",align:"default",alt:s.post.member.username},null,8,Kr)):vue.createCommentVNode("",!0)],8,Jr)]),Xr,Yr,vue.createElementVNode("a",{href:s.post.node.url},vue.toDisplayString(s.post.node.title),9,Qr),Zr,vue.createElementVNode("h1",null,vue.toDisplayString(s.post.title),1),vue.createElementVNode("div",{id:`topic_${s.post.id}_votes`,class:"votes"},[vue.createElementVNode("a",{href:"javascript:",onclick:`upVoteTopic(${s.post.id});`,class:"vote"},[na,vue.createTextVNode(" ")],8,ta),vue.createTextVNode(" "),vue.createElementVNode("a",{href:"javascript:",onclick:`downVoteTopic(${s.post.id});`,class:"vote"},oa,8,ia)],8,ea),vue.createTextVNode(" "),vue.createElementVNode("small",la,[vue.createElementVNode("a",{href:`/member/${s.post.member.username}`},vue.toDisplayString(s.post.member.username),9,ra),vue.createTextVNode(" · "),s.post.member.createDate?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createElementVNode("span",{class:vue.normalizeClass(s.post.member.isNew&&"danger")},vue.toDisplayString(s.post.member.createDate),3),vue.createTextVNode(" · ")],64)):vue.createCommentVNode("",!0),s.post.createDateAgo?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("span",{title:s.post.createDate},vue.toDisplayString(s.post.createDateAgo),9,aa),vue.createTextVNode(" · ")],64)):vue.createCommentVNode("",!0),vue.createTextVNode(" "+vue.toDisplayString(s.post.clickCount)+" 次点击 ",1),s.isMy?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:2},[vue.createTextVNode(" "),vue.createElementVNode("a",{href:`/t/${s.post.id}/info`},ua,8,ca),vue.createTextVNode(" "),s.canAppend?(vue.openBlock(),vue.createElementBlock("a",{key:0,href:`/append/topic/${s.post.id}`,class:"op"},"APPEND",8,pa)):vue.createCommentVNode("",!0),s.canEditMove?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("a",{href:`/move/topic/${s.post.id}`,class:"op"},"MOVE",8,ha),vue.createTextVNode(" "),vue.createElementVNode("a",{href:`/edit/topic/${s.post.id}`,class:"op"},"EDIT",8,fa)],64)):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0)]),s.isLogin&&s.config.openTag?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.myTags,p=>(vue.openBlock(),vue.createElementBlock("span",ma,[ga,vue.createElementVNode("span",null,vue.toDisplayString(p),1),vue.createElementVNode("i",{class:"fa fa-trash-o remove",onClick:k=>s.removeTag(p)},null,8,ya)]))),256)),vue.createElementVNode("span",{class:"add-tag ago",onClick:t[0]||(t[0]=(...p)=>s.addTag&&s.addTag(...p)),title:"添加标签"},"+")],64)):vue.createCommentVNode("",!0)]),s.post.headerTemplate?(vue.openBlock(),vue.createBlock(a,{key:0,html:s.post.headerTemplate},null,8,["html"])):(vue.openBlock(),vue.createBlock(a,{key:1,html:s.post.jsonContent},null,8,["html"])),vue.createVNode(c,{onReply:t[1]||(t[1]=p=>i.isSticky=!i.isSticky)},{default:vue.withCtx(()=>[vue.createVNode(u,{onAddThank:s.addThank,onRecallThank:s.recallThank,item:{isThanked:s.post.isThanked,thankCount:s.post.thankCount,username:s.post.username},"api-url":"topic/"+s.post.id},null,8,["onAddThank","onRecallThank","item","api-url"])]),_:1})]),s.topReply.length&&s.config.showTopReply?(vue.openBlock(),vue.createElementBlock("div",wa,[vue.createElementVNode("div",{class:"my-cell flex",onClick:t[2]||(t[2]=(...p)=>s.collapseTopReplyList&&s.collapseTopReplyList(...p))},[_a,vue.createElementVNode("div",va,[vue.createVNode(r,{title:"收起高赞回复"},{default:vue.withCtx(()=>[vue.createElementVNode("div",ba,[vue.createVNode(d,{icon:"gravity-ui:chevrons-collapse-vertical"})])]),_:1})])]),vue.createElementVNode("div",ka,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.topReply,(p,k)=>(vue.openBlock(),vue.createBlock(m,{key:p.floor,type:"top",modelValue:s.topReply[k],"onUpdate:modelValue":T=>s.topReply[k]=T},null,8,["modelValue","onUpdate:modelValue"]))),128))],512)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",Ta,[s.post.replyList.length||n.loading?(vue.openBlock(),vue.createElementBlock("div",xa,[vue.createElementVNode("div",null,[vue.createTextVNode(vue.toDisplayString(s.post.replyCount)+" 条回复 ",1),s.post.lastReplyDate?(vue.openBlock(),vue.createElementBlock("span",Ca,[vue.createTextVNode(" "),Sa,vue.createTextVNode(" "+vue.toDisplayString(s.post.lastReplyDate),1)])):vue.createCommentVNode("",!0)]),s.config.showToolbar?(vue.openBlock(),vue.createBlock(v,{key:0,"display-type":n.displayType,"onUpdate:displayType":t[3]||(t[3]=p=>e.$emit("update:displayType",p))},null,8,["display-type"])):(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"fr",innerHTML:s.post.fr},null,8,Ia))])):vue.createCommentVNode("",!0),s.replyList.length||n.loading?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[n.loading?(vue.openBlock(),vue.createElementBlock("div",La,[vue.createVNode(b,{size:"large"})])):(vue.openBlock(),vue.createElementBlock("div",Ra,[n.modelValue?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(s.replyList,(p,k)=>(vue.openBlock(),vue.createBlock(m,{key:p.floor,modelValue:s.replyList[k],"onUpdate:modelValue":T=>s.replyList[k]=T},null,8,["modelValue","onUpdate:modelValue"]))),128)):vue.createCommentVNode("",!0)]))],64)):vue.createCommentVNode("",!0)]),s.replyList.length||n.loading?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",Ma,"目前尚无回复")),s.isLogin?(vue.openBlock(),vue.createElementBlock("div",{key:2,class:vue.normalizeClass(["my-box",{sticky:i.isSticky}]),ref:"replyBox"},[vue.createElementVNode("div",Na,[Oa,vue.createElementVNode("div",Pa,[i.isSticky?(vue.openBlock(),vue.createElementBlock("a",{key:0,style:{"margin-right":"2rem"},onClick:t[4]||(t[4]=p=>i.isSticky=!1)},"取消回复框停靠")):vue.createCommentVNode("",!0),vue.createElementVNode("a",{onClick:t[5]||(t[5]=(...p)=>s.scrollTop&&s.scrollTop(...p))},"回到顶部")])]),vue.createElementVNode("div",Ea,[vue.createVNode(f,{onClose:s.goBottom,ref:"post-editor",useType:"reply-post",onClick:t[6]||(t[6]=p=>i.isSticky=!0)},null,8,["onClose"])])],2)):vue.createCommentVNode("",!0)],4),i.showRelationReply?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"relationReply",onClick:t[10]||(t[10]=p=>s.close("space"))},[vue.createElementVNode("div",{class:"my-cell flex",onClick:t[8]||(t[8]=vue.withModifiers((...p)=>s.stop&&s.stop(...p),["stop"]))},[Aa,vue.createElementVNode("div",Da,[vue.createVNode(d,{icon:"ic:round-close",onClick:t[7]||(t[7]=p=>i.showRelationReply=!1)})])]),vue.createElementVNode("div",{class:"comments",onClick:t[9]||(t[9]=vue.withModifiers((...p)=>s.stop&&s.stop(...p),["stop"]))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.relationReply,(p,k)=>(vue.openBlock(),vue.createBlock(y,{"is-right":p.username===i.targetUser.right,key:p.floor,comment:p},null,8,["is-right","comment"]))),128))])])):vue.createCommentVNode("",!0),i.showCallList&&s.filterCallList.length?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:"call-list",style:vue.normalizeStyle(i.callStyle)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.filterCallList,(p,k)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["call-item",{select:k===i.selectCallIndex}]),onClick:T=>s.setCall(p)},[vue.createElementVNode("a",null,vue.toDisplayString(p),1)],10,Va))),256))],4)):vue.createCommentVNode("",!0),vue.createElementVNode("div",{class:"close-btn",onClick:t[11]||(t[11]=p=>s.close("btn"))},[vue.createVNode(d,{icon:"fontisto:close-a"})]),vue.createElementVNode("div",{class:"scroll-top gray",onClick:t[12]||(t[12]=vue.withModifiers((...p)=>s.scrollTop&&s.scrollTop(...p),["stop"]))},[vue.createVNode(d,{icon:"lucide:move-up"})]),vue.createElementVNode("div",{class:"refresh gray",onClick:t[13]||(t[13]=vue.withModifiers(p=>e.$emit("refresh"),["stop"]))},[n.refreshLoading?(vue.openBlock(),vue.createBlock(b,{key:0})):(vue.openBlock(),vue.createBlock(d,{key:1,icon:"material-symbols:refresh"}))]),vue.createElementVNode("div",{class:"scroll-to gray",onClick:t[17]||(t[17]=vue.withModifiers(p=>s.jump(i.currentFloor),["stop"]))},[vue.createVNode(d,{icon:"lucide:move-down"}),vue.withDirectives(vue.createElementVNode("input",{type:"text","onUpdate:modelValue":t[14]||(t[14]=p=>i.currentFloor=p),onClick:t[15]||(t[15]=vue.withModifiers((...p)=>s.stop&&s.stop(...p),["stop"])),onKeydown:t[16]||(t[16]=vue.withKeys(p=>s.jump(i.currentFloor),["enter"]))},null,544),[[vue.vModelText,i.currentFloor]])])],512)],34)),[[vue.vShow,n.modelValue]])}const $a=K(jr,[["render",Ua],["__scopeId","data-v-cd896901"]]);const Ha={key:1},Fa={__name:"Base64Tooltip",setup(e){const t=vue.ref(null),n=vue.ref(!1),o=vue.ref(""),i=vue.ref(""),s=vue.reactive({left:"-100vw",top:"-100vh"});vue.onMounted(()=>{w.on(_.SHOW_TOOLTIP,({text:r,e:m})=>{setTimeout(()=>n.value=!0),o.value=r,i.value="",s.left=m.clientX+"px",s.top=m.clientY+20+"px";}),window.addEventListener("click",r=>{t.value&&!t.value.contains(r.target)&&n.value&&(n.value=!1);},{capture:!0});const d=()=>n.value&&(n.value=!1);$(".post-detail",window.win().doc).on("scroll",d);});function a(){window.win().navigator.clipboard?(window.win().navigator.clipboard.writeText(i.value),w.emit(_.SHOW_MSG,{type:"success",text:"复制成功"})):w.emit(_.SHOW_MSG,{type:"error",text:"复制失败!浏览器不支持!"});}function u(d){let r=window.atob(d),m=r.length,v=new Uint8Array(m);for(let b=0;b<m;b++)v[b]=r.charCodeAt(b);return v.buffer}function c(){try{new Blob([u(o.value)]).text().then(d=>{i.value=d;});}catch{w.emit(_.SHOW_MSG,{type:"error",text:"Base64解码失败!不是标准数据!"});}}return (d,r)=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{class:"base64_tooltip",style:vue.normalizeStyle(s),onClick:c,ref_key:"tooltip",ref:t},[i.value?(vue.openBlock(),vue.createElementBlock("div",Ha,[vue.createElementVNode("span",null,vue.toDisplayString(i.value),1),vue.createVNode(ye,{class:"btn",size:"small",onClick:a},{default:vue.withCtx(()=>[vue.createTextVNode("点击复制")]),_:1})])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(" Base64解码:"+vue.toDisplayString(o.value)+" ",1),vue.createVNode(vue.unref(ne),{icon:"system-uicons:translate"})],64))],4)),[[vue.vShow,n.value]])}},Ba=K(Fa,[["__scopeId","data-v-c50fb66c"]]);const Ga={name:"Msg",components:{Icon:ne},props:{type:"",text:""},created(){setTimeout(()=>{this.$emit("close");},3e3);}},ja={class:"right"};function Wa(e,t,n,o,i,s){const a=vue.resolveComponent("Icon");return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["msg",n.type])},[vue.createElementVNode("div",{class:"left",onClick:t[0]||(t[0]=u=>e.$emit("close"))},[vue.createVNode(a,{icon:"ic:round-close"})]),vue.createElementVNode("div",ja,vue.toDisplayString(n.text),1)],2)}const fn=K(Ga,[["render",Wa],["__scopeId","data-v-8bf692ea"]]);const mn=e=>(vue.pushScopeId("data-v-341122ff"),e=e(),vue.popScopeId(),e),qa={key:0,class:"tag-modal modal"},za={class:"wrapper"},Ja=mn(()=>vue.createElementVNode("div",{class:"title"}," 添加标签 ",-1)),Ka={class:"option"},Xa=mn(()=>vue.createElementVNode("span",null,"用户:",-1)),Ya={class:"btns"},Qa={__name:"TagModal",props:["tags"],emits:["update:tags"],setup(e,{emit:t}){const n=vue.reactive({show:!1,currentUsername:"",tag:""}),o=e,i=t,s=vue.ref();vue.onMounted(()=>{w.on(_.ADD_TAG,u=>{n.currentUsername=u,n.show=!0,vue.nextTick(()=>{s.value.focus();});});});async function a(){if(!n.tag){w.emit(_.SHOW_MSG,{type:"warning",text:"请输入标签"});return}let u=window.clone(o.tags),c=window.clone(o.tags),d=c[n.currentUsername]??[];if(d.findIndex(v=>v===n.tag)>-1){w.emit(_.SHOW_MSG,{type:"warning",text:"标签已存在!"});return}else d.push(n.tag);c[n.currentUsername]=d,i("update:tags",c),n.tag="",n.show=!1,await window.parse.saveTags(c)||(w.emit(_.SHOW_MSG,{type:"error",text:"标签添加失败!"}),i("update:tags",u));}return (u,c)=>(vue.openBlock(),vue.createBlock(vue.Transition,null,{default:vue.withCtx(()=>[n.show?(vue.openBlock(),vue.createElementBlock("div",qa,[vue.createElementVNode("div",{class:"mask",onClick:c[0]||(c[0]=vue.withModifiers(d=>n.show=!1,["stop"]))}),vue.createElementVNode("div",za,[Ja,vue.createElementVNode("div",Ka,[Xa,vue.createElementVNode("div",null,[vue.createElementVNode("b",null,vue.toDisplayString(n.currentUsername),1)])]),vue.withDirectives(vue.createElementVNode("input",{type:"text",ref_key:"inputRef",ref:s,style:{width:"100%"},"onUpdate:modelValue":c[1]||(c[1]=d=>n.tag=d),onKeydown:vue.withKeys(a,["enter"])},null,544),[[vue.vModelText,n.tag]]),vue.createElementVNode("div",Ya,[vue.createVNode(ye,{type:"link",onClick:c[2]||(c[2]=d=>{n.show=!1,n.tag="";})},{default:vue.withCtx(()=>[vue.createTextVNode("取消")]),_:1}),vue.createVNode(ye,{onClick:a},{default:vue.withCtx(()=>[vue.createTextVNode("确定")]),_:1})])])])):vue.createCommentVNode("",!0)]),_:1}))}},Za=K(Qa,[["__scopeId","data-v-341122ff"]]);const ec={class:"msgs"},tc={__name:"MsgModal",setup(e){const t=vue.reactive([]);vue.onMounted(()=>{w.on(_.SHOW_MSG,o=>{t.push({...o,id:Date.now()});});});function n(o){let i=t.findIndex(s=>s.id===o);i>-1&&t.splice(i,1);}return (o,i)=>(vue.openBlock(),vue.createElementBlock("div",ec,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(t,s=>(vue.openBlock(),vue.createBlock(fn,{key:s.id,type:s.type,text:s.text,onClose:a=>n(s.id)},null,8,["type","text","onClose"]))),128))]))}},nc=K(tc,[["__scopeId","data-v-b73f4332"]]);let ic=".__cf_email__",sc="data-cfemail",jt=document.createElement("div");function ut(e){console.error(e);}function Wt(e,t){let n=e.substr(t,2);return parseInt(n,16)}function oc(e,t){let n="",o=Wt(e,t);for(let i=t+2;i<e.length;i+=2){let s=Wt(e,i)^o;n+=String.fromCharCode(s);}try{n=decodeURIComponent(escape(n));}catch(i){ut(i);}return jt.innerHTML='<a href="'+n.replace(/"/g,""")+'"></a>',jt.childNodes[0].getAttribute("href")||""}function lc(e){try{e.find(ic).each(function(){try{let n=this,o=n.parentNode,i=n.getAttribute(sc);if(i){let s=oc(i,0),a=document.createTextNode(s);o.replaceChild(a,n);}}catch(n){ut(n);}});}catch(t){ut(t);}}const rc=e=>(vue.pushScopeId("data-v-882b932b"),e=e(),vue.popScopeId(),e),ac={key:0,class:"tag-modal modal"},cc={class:"modal-root"},dc=rc(()=>vue.createElementVNode("div",{class:"title"}," 提醒系统 ",-1)),uc=["innerHTML"],pc={__name:"NotificationModal",props:["modelValue","h"],emits:["update:modelValue"],setup(e,{emit:t}){const n=t;vue.onMounted(()=>{});function o(){n("update:modelValue",!1);}return (i,s)=>(vue.openBlock(),vue.createBlock(vue.Transition,null,{default:vue.withCtx(()=>[e.modelValue?(vue.openBlock(),vue.createElementBlock("div",ac,[vue.createElementVNode("div",{class:"mask",onClick:vue.withModifiers(o,["stop"])}),vue.createElementVNode("div",cc,[vue.createElementVNode("div",{class:"modal-header"},[dc,vue.createElementVNode("i",{class:"fa fa-times",onClick:o})]),vue.createElementVNode("div",{innerHTML:e.h,class:"modal-body"},null,8,uc)])])):vue.createCommentVNode("",!0)]),_:1}))}},hc=K(pc,[["__scopeId","data-v-882b932b"]]);const fc={components:{BaseButton:ye,NotificationModal:hc,BaseLoading:Qe,BaseSwitch:ht,MsgModal:nc,TagModal:Za,Tooltip:Ue,Setting:Zo,PostDetail:$a,Base64Tooltip:Ba,Msg:fn},provide(){return {isLogin:vue.computed(()=>this.isLogin),isNight:vue.computed(()=>this.isNight),pageType:vue.computed(()=>this.pageType),tags:vue.computed(()=>this.tags),show:vue.computed(()=>this.show),post:vue.computed(()=>this.current),config:vue.computed(()=>this.config),allReplyUsers:vue.computed(()=>{var e,t,n;return (e=this.current)!=null&&e.replyList?Array.from(new Set(((n=(t=this.current)==null?void 0:t.replyList)==null?void 0:n.map(o=>o.username))??[])):[]}),showConfig:this.showConfig}},data(){return {loading:window.pageType===q.Post,refreshLoading:!1,loadMore:!1,isLogin:!!window.user.username,pageType:window.pageType,isNight:window.isNight,stopMe:window.stopMe,show:!1,current:window.clone(window.initPost),list:[],config:window.clone(window.config),tags:window.user.tags,configModal:{show:!1},notificationModal:{show:!1,h:""}}},computed:{targetUserTags(){return this.tags[window.targetUserName]??[]},isList(){return [q.Home,q.Node].includes(this.pageType)},isPost(){return this.pageType===q.Post},isMember(){return this.pageType===q.Member}},watch:{config:{handler(e){let t={[window.user.username??"default"]:e};localStorage.setItem("v2ex-config",JSON.stringify(t)),window.config=e,window.initConfig&&window.parse.editNoteItem(window.user.configPrefix+JSON.stringify(window.config),window.user.configNoteId);},deep:!0},tags(e){window.user.tags=e;},"config.viewType"(e){e&&(e==="card"?$(".post-item").each(function(){$(this).addClass("preview");}):$(".post-item").each(function(){$(this).removeClass("preview");}));}},created(){let e=this;this.initEvent(),window.cb=this.winCb,window.canParseV2exPage&&($(document).on("click","a",this.clickA),$(document).on("click",".post-item",function(t){if(!t.currentTarget.getAttribute("script")){if(e.stopMe)return !0;if(this.classList.contains("preview")&&t.target.tagName!=="A"&&t.target.tagName!=="IMG"&&!t.target.classList.contains("toggle")){console.log("点空白处",this);let n=this.dataset.id,o=this.dataset.href;n?e.clickPost(t,n,o):o&&(location.href=o);}}}),$(document).on("click",".toggle",t=>{if(this.stopMe)return !0;let n=t.target.dataset.id,o=document.querySelector(`.id_${n}`);o.classList.contains("preview")?(t.target.innerText="预览",o.classList.remove("preview")):this.config.viewType!=="card"?this.list.findIndex(s=>s.id==n)>-1?(t.target.innerText="收起",o.classList.add("preview")):(t.target.innerText="加载中",I.getPostDetailByApi(n).then(s=>{s.content_rendered?(s.href=o.dataset.href,this.list.push(Me(s)),o.classList.add("preview"),t.target.innerText="收起",I.appendPostContent(s,o)):(t.target.innerText="预览",w.emit(_.SHOW_MSG,{type:"warning",text:"主题暂无正文!"}));})):(t.target.innerText="收起",o.classList.add("preview"));}),window.onpopstate=t=>{t.state?this.show||(this.show=!0):this.show&&(this.show=!1);},window.deleteNotification=(t,n)=>{console.log("deleteNotification",t,n);let o=$("#n_"+t);o.slideUp("fast"),$.post({url:"/delete/notification/"+t+"?once="+n,success(){$.get({url:"/notifications/below/"+window.notificationBottom,success(i,s,a){o.remove(),$("#notifications").append(i),window.notificationBottom=a.getResponseHeader("X-V2EX-New-Notification-Bottom");},error(){o.slideDown("fast");}});},error(){o.slideDown("fast");}});});},beforeUnmount(){w.clear(),$(document).off("click","a",this.clickA);},methods:{async getUnreadMessagesCount(){var i,s;const t=await(await fetch(`${location.origin}/mission`)).text(),o=$(t).find('#Rightbar a[href^="/notifications"]').text();if(o.includes("未读提醒")){if((i=o.match(/\d+/))==null?void 0:i.at(0))return Number((s=o.match(/\d+/))==null?void 0:s.at(0))}else return 0;throw new Error("无法获取未读消息数量")},clickA(e){let t=this;if(e.currentTarget.getAttribute("script"))return;if(t.stopMe)return !0;let{pageType:n}=I.checkPageType(e.currentTarget);switch(n){case q.Post:let{href:o,id:i,title:s}=I.parseA(e.currentTarget);i&&t.clickPost(e,i,o,s);break;case q.Node:case q.Home:case q.Changes:return;default:if(e.currentTarget.href.includes("/settings/night/toggle")||e.currentTarget.href===location.origin+"/#;")return;e.currentTarget.href.includes("/notifications"),t.config.newTabOpen&&(t.stopEvent(e),I.openNewTab(e.currentTarget.href,t.config.newTabOpenActive));return}},stopEvent(e){e.preventDefault(),e.stopPropagation();},async clickPost(e,t,n,o=""){if(t){if(this.config.clickPostItemOpenDetail){this.stopEvent(e);let i=Me(),s=this.list.findIndex(a=>a.id==t);s>-1&&(i=this.list[s]),i.title||(i.title=o??"加载中"),i.id=t,i.href=n,this.getPostDetail(i);return}this.config.newTabOpen&&(this.stopEvent(e),I.openNewTab(`https://www.v2ex.com/t/${t}?p=1`,this.config.newTabOpenActive));}},showPost(){this.show=!0,$("#Wrapper #Main .box:lt(3)").each(function(){$(this).hide();});},showConfig(){this.configModal.show=!0;},async winCb({type:e,value:t}){e==="openSetting"&&this.showConfig(),e==="syncData"&&(this.list=Object.assign(this.list,window.postList),this.config=window.config,this.stopMe=window.stopMe,this.tags=window.user.tags),e==="warningNotice"&&w.emit(_.SHOW_MSG,{type:"warning",text:t}),!this.stopMe&&(e==="restorePost"&&(this.show=!1,this.loading=!1,w.emit(_.SHOW_MSG,{type:"warning",text:"脚本无法查看此页面!"}),$("#Wrapper #Main .box:lt(3)").each(function(){$(this).show();})),e==="postContent"&&(this.current=Object.assign(this.current,t),this.current.inList=!0,this.config.autoOpenDetail&&this.showPost()),e==="postReplies"&&(this.current=Object.assign(this.current,t),this.list.push(this.clone(this.current)),this.loading=!1));},clone(e){return window.clone(e)},regenerateReplyList(){if(this.current.replyList.length){this.current.replyCount=this.current.replyList.length;let e=I.createNestedList(this.current.replyList);e&&(this.current.nestedReplies=e);let t=I.createNestedRedundantList(this.current.replyList);t&&(this.current.nestedRedundReplies=t);}else this.current.replyCount=0,this.current.nestedReplies=[],this.current.nestedRedundReplies=[];if(this.list.length){let e=this.list.findIndex(t=>t.id===this.current.id);e>-1&&(this.list[e]=this.clone(this.current));}},initEvent(){w.on(_.CHANGE_COMMENT_THANK,e=>{console.log("CHANGE_COMMENT_THANK",e);const{id:t,type:n}=e;let o=this.current.replyList.findIndex(i=>i.id===t);o>-1&&(this.current.replyList[o].isThanked=n==="add",n==="add"?this.current.replyList[o].thankCount++:this.current.replyList[o].thankCount--,this.regenerateReplyList());}),w.on(_.CHANGE_POST_THANK,e=>{const{id:t,type:n}=e;this.current.isThanked=n==="add",n==="add"?this.current.thankCount++:this.current.thankCount--;let o=this.list.findIndex(i=>i.id===t);o>-1&&(this.list[o].isThanked=n==="add",n==="add"?this.list[o].thankCount++:this.list[o].thankCount++);}),w.on(_.REMOVE,e=>{let t=this.current.replyList.findIndex(n=>n.floor===e);t>-1&&this.current.replyList.splice(t,1),this.regenerateReplyList();}),w.on(_.IGNORE,()=>{this.show=!1;let e=this.list.findIndex(t=>t.id===this.current.id);e>-1&&this.list.splice(e,1),this.current=this.clone(window.initPost);}),w.on(_.MERGE,e=>{this.current=Object.assign(this.current,e);let t=this.list.findIndex(n=>n.id===this.current.id);t>-1&&(this.list[t]=this.clone(this.current));}),w.on(_.ADD_REPLY,e=>{this.current.replyList.push(e),this.regenerateReplyList();}),w.on(_.REFRESH_ONCE,async e=>{if(e){if(typeof e=="string"){let t=e.match(/var once = "([\d]+)";/);if(t&&t[1]){this.current.once=Number(t[1]);return}}if(typeof e=="number"){this.current.once=e;return}}window.fetchOnce().then(t=>{this.current.once=t;});}),w.on(_.REMOVE_TAG,async({username:e,tag:t})=>{let n=this.clone(this.tags),o=this.tags[e]??[],i=o.findIndex(a=>a===t);i>-1&&o.splice(i,1),this.tags[e]=o,await window.parse.saveTags(this.tags)||(w.emit(_.SHOW_MSG,{type:"error",text:"标签删除失败!"}),this.tags=n);}),w.on(_.REFRESH_POST,()=>this.getPostDetail(this.current));},async getPostDetail(e){this.current=e,this.show=!0;let t=window.baseUrl+"/t/"+this.current.id;this.current.url=t,this.current.replyList.length?this.refreshLoading=!0:(this.loading=!0,I.getPostDetailByApi(this.current.id).then(d=>{if(d.replyCount=d.replies,this.current=Object.assign(this.current,d),this.current.replyCount>zt){I.openNewTab(`${location.origin}/t/${this.current.id}?p=1&script=1`,!0),w.emit(_.SHOW_MSG,{type:"warning",text:"由于回复数量较多,已为您单独打开此主题"}),this.loading=this.show=!1;return}else this.current.jsonContent=`
<div class="cell">
<div class="topic_content">
<div class="markdown_body">
${(d==null?void 0:d.content_rendered)??""}
</div>
</div>
</div>`;}));let o=await window.fetch(t+"?p=1");if(o.status===404)return w.emit(_.SHOW_MSG,{type:"error",text:"主题未找到"}),this.refreshLoading=this.loading=!1;if(o.status===403){this.refreshLoading=this.show=this.loading=!1,I.openNewTab(`${location.origin}/t/${e.id}?p=1&script=0`,!0);return}if(o.redirected)return w.emit(_.SHOW_MSG,{type:"error",text:"没有权限"}),this.refreshLoading=this.loading=!1;let i=await o.text();if(i.search("你要查看的页面需要先登录(不可用)")>-1)return w.emit(_.SHOW_MSG,{type:"error",text:"你要查看的页面需要先登录(不可用)"}),this.refreshLoading=this.loading=!1;let a=i.match(/<body[^>]*>([\s\S]+?)<\/body>/g),u=$(a[0]);lc(u),await window.parse.getPostDetail(this.current,u,i);let c=this.list.findIndex(d=>d.id==this.current.id);c>-1?this.list[c]=this.clone(this.current):this.list.push(this.clone(this.current)),this.refreshLoading=this.loading=!1,await window.parse.parseOp(this.current);},addTargetUserTag(){w.emit(_.ADD_TAG,window.targetUserName);},removeTargetUserTag(e){w.emit(_.REMOVE_TAG,{username:window.targetUserName,tag:e});}}},xt=e=>(vue.pushScopeId("data-v-d41b820d"),e=e(),vue.popScopeId(),e),mc={key:0,class:"target-user-tags p1"},gc=xt(()=>vue.createElementVNode("span",null,"标签:",-1)),yc={class:"my-tag"},wc=xt(()=>vue.createElementVNode("i",{class:"fa fa-tag"},null,-1)),_c=["onClick"],vc={key:1,class:"my-box p2",style:{"margin-top":"2rem","margin-bottom":"0"}},bc={key:0,class:"flex flex-center"},kc={key:1,class:"loaded"},Tc=xt(()=>vue.createElementVNode("span",null,"楼中楼解析完成",-1));function xc(e,t,n,o,i,s){const a=vue.resolveComponent("Setting"),u=vue.resolveComponent("TagModal"),c=vue.resolveComponent("PostDetail"),d=vue.resolveComponent("Base64Tooltip"),r=vue.resolveComponent("MsgModal"),m=vue.resolveComponent("NotificationModal"),v=vue.resolveComponent("BaseLoading"),b=vue.resolveComponent("BaseButton");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(a,{modelValue:i.config,"onUpdate:modelValue":t[0]||(t[0]=f=>i.config=f),show:i.configModal.show,"onUpdate:show":t[1]||(t[1]=f=>i.configModal.show=f)},null,8,["modelValue","show"]),vue.createVNode(u,{tags:i.tags,"onUpdate:tags":t[2]||(t[2]=f=>i.tags=f)},null,8,["tags"]),vue.createVNode(c,{modelValue:i.show,"onUpdate:modelValue":t[3]||(t[3]=f=>i.show=f),ref:"postDetail",displayType:i.config.commentDisplayType,"onUpdate:displayType":t[4]||(t[4]=f=>i.config.commentDisplayType=f),onRefresh:t[5]||(t[5]=f=>s.getPostDetail(i.current)),loading:i.loading,refreshLoading:i.refreshLoading},null,8,["modelValue","displayType","loading","refreshLoading"]),vue.createVNode(d),vue.createVNode(r),vue.createVNode(m,{modelValue:i.notificationModal.show,"onUpdate:modelValue":t[6]||(t[6]=f=>i.notificationModal.show=f),h:i.notificationModal.h},null,8,["modelValue","h"]),i.stopMe?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[s.isMember&&i.isLogin&&i.config.openTag?(vue.openBlock(),vue.createElementBlock("div",mc,[gc,(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.targetUserTags,f=>(vue.openBlock(),vue.createElementBlock("span",yc,[wc,vue.createElementVNode("span",null,vue.toDisplayString(f),1),vue.createElementVNode("i",{class:"fa fa-trash-o remove",onClick:y=>s.removeTargetUserTag(f)},null,8,_c)]))),256)),vue.createElementVNode("span",{class:"add-tag ago",onClick:t[7]||(t[7]=(...f)=>s.addTargetUserTag&&s.addTargetUserTag(...f)),title:"添加标签"},"+")])):vue.createCommentVNode("",!0),s.isPost&&!i.show?(vue.openBlock(),vue.createElementBlock("div",vc,[i.loading?(vue.openBlock(),vue.createElementBlock("div",bc,[vue.createVNode(v)])):(vue.openBlock(),vue.createElementBlock("div",kc,[Tc,vue.createVNode(b,{size:"small",onClick:s.showPost},{default:vue.withCtx(()=>[vue.createTextVNode("点击显示")]),_:1},8,["onClick"])]))])):vue.createCommentVNode("",!0)],64))],64)}const Cc=K(fc,[["render",xc],["__scopeId","data-v-d41b820d"]]);let Sc=!document.querySelector("#Rightbar"),_e=document.createElement("section");_e.id="app";function Ic(){window.baseUrl=location.origin,window.initPost=Jt,window.win=function(){return window},window.win().doc=window.win().document,window.win().query=r=>window.win().document.querySelector(r),window.query=r=>window.win().document.querySelector(r),window.clone=r=>JSON.parse(JSON.stringify(r)),window.user=Rn,window.targetUserName="",window.pageType=void 0,window.pageData={pageNo:1},window.config=Mn,window.isNight=$(".Night").length===1,window.cb=null,window.stopMe=!1,window.postList=[],window.parse={async parsePostContent(r,m,v){let b=v.match(/var once = "([\d]+)";/);b&&b[1]&&(r.once=b[1]),r.isReport=v.includes("你已对本主题进行了报告");let f=m.find("#Main");if(!r.title||!r.content_rendered){let B=f.find("h1");B&&(r.title=B[0].innerText);}let y=f.find(".header > a");y.length&&(r.node.title=y[1].innerText,r.node.url=y[1].href);let p=f.find(".header small.gray a:nth-child(1)");p.length&&(r.member.username=p[0].innerText);let k=f.find(".header small.gray span");k.length&&(r.createDateAgo=k[0].innerText,r.createDate=k[0].title);let T=f.find(".header .avatar");T.length&&(r.member.avatar_large=T[0].src);let S=m.find(".topic_buttons");if(S.length){let B=S.find(".tb:first");B.length&&(r.isFavorite=B[0].innerText==="取消收藏");let V=S.find(".tb:nth-child(3)");V.length&&(r.isIgnore=V[0].innerText==="取消忽略"),S.find("#topic_thank .tb").length||(r.isThanked=!0);let Q=S.find(".topic_stats");if(Q.length){let ee=Q[0].innerText,fe=ee.matchAll(/([\d]+)[\s]*人收藏/g),pe=[...fe];pe.length&&(r.collectCount=Number(pe[0][1])),fe=ee.matchAll(/([\d]+)[\s]*likes/g),pe=[...fe],pe.length&&(r.collectCount=Number(pe[0][1]));let Te=[...ee.matchAll(/([\d]+)[\s]*人感谢/g)];Te.length&&(r.thankCount=Number(Te[0][1]));let Ie=ee.matchAll(/([\d]+)[\s]*次点击/g),le=[...Ie];le.length&&(r.clickCount=Number(le[0][1])),Ie=ee.matchAll(/([\d]+)[\s]*views/g),le=[...Ie],le.length&&(r.clickCount=Number(le[0][1]));}}let W=m.find("#Main .box").first().clone();W.find(".topic_buttons").remove(),W.find(".inner").remove(),W.find(".header").remove();let M=W.html();return M=I.checkPhotoLink2Img(M),r.headerTemplate=M,r},async parseOp(r){if(!r.member.id){let m=await fetch(window.baseUrl+"/api/members/show.json?username="+r.member.username);m.status===200&&(r.member=await m.json());}if(r.member.id){let m=new Date(r.member.created*1e3),v=`${m.getFullYear()}-${m.getMonth()+1}-${m.getDate()}`;m.setHours(0),m.setMinutes(0),m.setSeconds(0),m.setMilliseconds(0);let b=new Date;b.setHours(0),b.setMinutes(0),b.setSeconds(0),b.setMilliseconds(0);let y=b.getTime()-m.getTime()<=1e3*60*60*24*7;r.member.createDate=v+" 注册(不可用)",r.member.isNew=y;}else r.member.createDate="用户已被注销/封禁",r.member.isNew=!0;return r},async getPostAllReplies(r,m,v,b=1){var k,T;if(m.find("#no-comments-yet").length)return r;let p=m.find("#Main .box")[1].querySelectorAll(".cell");if(p&&p.length){r.fr=p[0].querySelector(".cell .fr").innerHTML,p=Array.from(p);let S=p[0].querySelector(".snow");r.lastReplyDate=((T=(k=S==null?void 0:S.nextSibling)==null?void 0:k.nodeValue)==null?void 0:T.trim())||"";let z=[];if(p[1].id){z.push({i:b,replyList:this.parsePageReplies(p.slice(1))});let W=I.getAllReply(z);r.replyList=W,r.replyCount=W.length,r.allReplyUsers=Array.from(new Set(W.map(V=>V.username)));let M=I.createNestedList(W),B=I.createNestedRedundantList(W);return M&&(r.nestedReplies=M),B&&(r.nestedRedundReplies=B),r}else {let W=[];return new Promise((M,B)=>{z.push({i:b,replyList:this.parsePageReplies(p.slice(2,p.length-1))});let V=p[1].querySelectorAll("a.page_normal");V=Array.from(V);let ae=window.baseUrl+"/t/"+r.id;for(let Q=0;Q<V.length;Q++){let ee=Number(V[Q].innerText);W.push(this.fetchPostOtherPageReplies(ae+"?p="+ee,ee));}Promise.allSettled(W).then(Q=>{Q.filter(he=>he.status==="fulfilled").map(he=>z.push(he.value));let ee=I.getAllReply(z);r.replyList=ee,r.replyCount=ee.length,r.allReplyUsers=Array.from(new Set(ee.map(he=>he.username)));let fe=I.createNestedList(ee),pe=I.createNestedRedundantList(ee);fe&&(r.nestedReplies=fe),pe&&(r.nestedRedundReplies=pe),M(r);});})}}},fetchPostOtherPageReplies(r,m){return new Promise(v=>{$.get(r).then(b=>{let f=b.match(/<body[^>]*>([\s\S]+?)<\/body>/g),p=$(f[0]).find("#Main .box")[1].querySelectorAll(".cell");p=Array.from(p),v({i:m,replyList:this.parsePageReplies(p.slice(2,p.length-1))});}).catch(b=>{b.status===403&&I.cbChecker({type:"restorePost",value:null});});})},parsePageReplies(r){let m=[];return r.forEach((v,b)=>{if(!v.id)return;let f={level:0,thankCount:0,isThanked:!1,isOp:!1,isDup:!1,id:v.id.replace("r_","")},y=v.querySelector(".reply_content");f.reply_content=I.checkPhotoLink2Img(y.innerHTML),f.reply_text=y.textContent;let{users:p,floor:k}=this.parseReplyContent(f.reply_content);f.hideCallUserReplyContent=f.reply_content,p.length===1&&(f.hideCallUserReplyContent=f.reply_content.replace(/@<a href="\/member\/[\s\S]+?<\/a>(\s#[\d]+)?\s(<br>)?/,()=>"")),f.replyUsers=p,f.replyFloor=k;let T=v.querySelector(".ago");f.date=T.textContent;let S=v.querySelector("strong a");f.username=S.textContent;let z=v.querySelector("td img");f.avatar=z.src;let W=v.querySelector(".no");f.floor=Number(W.textContent);let M=v.querySelector(".thank_area");M&&(f.isThanked=M.classList.contains("thanked"));let B=v.querySelector(".small");B&&(f.thankCount=Number(B.textContent)),v.querySelector(".op")&&(f.isOp=!0),v.querySelector(".mod")&&(f.isMod=!0),m.push(f);}),m},parseReplyContent(r){if(!r)return;let m=[],v=k=>{let T=k.indexOf('">');if(T>-1){let S=k.substring(0,T);m.find(z=>z===S)||m.push(S);}},b=/@<a href="\/member\/([\s\S]+?)<\/a>/g,y=[...r.matchAll(b)];y.length>1&&y.map(k=>{v(k[1]);}),y.length===1&&v(y[0][1]);let p=-1;if(m.length===1){let k=/@<a href="\/member\/[\s\S]+?<\/a>[\s]+#([\d]+)/g,S=[...r.matchAll(k)];S.length&&(p=Number(S[0][1]));}return {users:m,floor:p}},async getPostDetail(r,m,v,b=1){return r=await this.parsePostContent(r,m,v),await this.getPostAllReplies(r,m,v,b)},parsePagePostList(r,m){r.forEach(b=>{let f=b.querySelector(".item_title");if(!f)return;let y=Me();b.classList.add("post-item");let p;window.config.version>1?p=f.lastChild:p=f.querySelector("a");try{let{href:k,id:T}=I.parseA(p);y.id=String(Number(T)),p.href=y.href=k,y.url=location.origin+"/api/topics/show.json?id="+y.id,b.classList.add(`id_${T}`),b.dataset.href=k;let S=b.querySelector("td:nth-child(4)");S||(S=b.querySelector("td:nth-child(2)")),S.style.position="relative";let z=document.createElement("div");z.dataset.id=y.id,z.classList.add("toggle"),z.innerText="预览",S.append(z),window.config.viewType==="card"&&window.postList.push(y);}catch{window.stopMe=!0;}}),window.stopMe?localStorage.setItem("d","1"):localStorage.setItem("d","");const v=b=>{let f=window.postList.findIndex(p=>p.id===b.id);f>-1&&(window.postList[f]=Object.assign(window.postList[f],b),I.cbChecker({type:"syncData"}));let y=m.querySelector(`.id_${b.id}`);y.classList.add("preview"),b.content_rendered&&I.appendPostContent(b,y);};if(window.config.viewType==="card"&&!window.stopMe){let b=localStorage.getItem("cacheData"),f=[];if(b){f=JSON.parse(b);let p=Date.now();f=f.filter(k=>k.created>p/1e3-60*60*24*3);}let y=0;for(let p=0;p<window.postList.length;p++){let k=window.postList[p],T=f.find(S=>S.id===k.id);T?(T.href=k.href,v(T)):(y++,setTimeout(()=>{$.get(k.url).then(S=>{if(S&&S.length){let z=Me(S[0]);z.href=k.href,f.push(z),localStorage.setItem("cacheData",JSON.stringify(f)),v(z);}});},y<4?0:(y-4)*1e3));}}},async createNoteItem(r){return new Promise(async m=>{let v=new FormData;v.append("content",r),v.append("parent_id",0),v.append("syntax",0);let b=await fetch(`${location.origin}/notes/new`,{method:"post",body:v});if(b.redirected&&b.status===200){m(b.url.substr(-5));return}m(null);})},async editNoteItem(r,m){if(!m)return;let v=new FormData;v.append("content",r),v.append("syntax",0);let b=await fetch(`${location.origin}/notes/edit/${m}`,{method:"post",body:v});return b.redirected&&b.status===200},async saveTags(r){for(const[m,v]of Object.entries(r))v.length||delete r[m];return await this.editNoteItem(window.user.tagPrefix+JSON.stringify(r),window.user.tagsId)},async saveReadList(r){},async saveImgurList(r){}};function e(){try{Ce("脚本设置",()=>{I.cbChecker({type:"openSetting"});}),Ce("仓库地址",()=>{I.openNewTab(ge.git,!0);}),Ce("反馈 & 建议",I.feedback);}catch{console.error("无法使用Tampermonkey");}}function t(){let r=`
html, body {
font-size: 62.5%;
}
:root{
--box-border-radius:8px;
}
.box{
box-shadow:rgba(0, 0, 0, 0.08) 0px 4px 12px;
}
#Tabs{
border-top-left-radius: var(--box-border-radius) !important;
border-top-right-radius: var(--box-border-radius) !important;
}
#Main .cell .count_livid {
font-size: 14px;
font-weight: bold;
padding: 3px 10px;
border-radius: 5px;
}
#Wrapper {
height: unset !important;
width: unset !important;
}
#Wrapper > .content {
height: unset !important;
width: unset !important;
max-width:1100px !important;
}
.post-item {
background: white;
}
.post-item > .post-content {
height: 0;
margin-top: 0;
}
.post-item:hover .toggle {
display: flex;
}
.toggle {
position: absolute;
right: ${window.config.viewType==="simple"?"5rem":0};
top: ${window.config.viewType==="simple"?0:"0.5rem"};
width: 5rem;
height: 100%;
display: flex;
justify-content: flex-end;
align-items: flex-end;
cursor: pointer;
font-size: 1.2rem;
color: var(--link-color);
display: none;
padding-right: 1rem;
}
.preview {
margin: 1rem 0;
border: 1px solid transparent;
border-radius: var(--box-border-radius);
cursor: pointer;
}
.preview:hover {
border: 1px solid #c8c8c8;
}
.preview > .post-content {
height: unset !important;
margin-top: 0.5rem !important;
}
.preview > .post-content.show-all {
max-height: unset;
-webkit-mask-image:none;
}
.preview .topic-link:link {
color: black !important;
}
.post-content {
margin-top: 0.5rem;
display: block;
max-height: 30rem;
overflow: hidden;
text-decoration: unset !important;
line-break: anywhere;
-webkit-mask-image: linear-gradient(180deg,#000 60%,transparent);
}
.show-more {
display: none;
}
.preview > .show-more {
font-size: 1.3rem;
text-align: right;
height: 3rem;
display: flex;
align-items: center;
justify-content: center;
position: relative;
z-index: 9;
}
.post-content:visited {
color: #afb9c1 !important;
}
.post-content:link {
color: #494949;
}
.Night .post-item {
background: #18222d !important;
}
.Night .preview {
border: 1px solid #3b536e;
}
.Night .preview > .post-content:link {
color: #d1d5d9;
}
.Night .preview > .post-content:visited {
color: #393f4e !important;
}
.Night .preview .topic-link:link {
color: #c0dbff !important;
}
${window.config.viewType==="simple"?`
${window.pageType!==q.Member?`
.item table tr td:first-child{display:none;}
#Rightbar .cell table:first-child tr td:first-child{display:none;}
.item table tr td .sep5{display:none;}
.item table tr td .topic_info{display:none;}
.item {border-bottom:none;}
.avatar,#avatar{display:none;}
`:""}
#Logo {background-image:url('https://i.imgur.com/i9VgUtM.png');}
.bigger a, .top:nth-last-child(5){color: transparent!important;text-shadow: #b0b0b0 0 0 6px;user-select: none;}
// .bigger a:before,.top:nth-last-child(5):before{content:'Mona Lisa';position: absolute;background: white;}
#Rightbar .cell table:first-child tr td:first-child{display:none;}
`:""}
${window.config.customBgColor?`#Wrapper {
background-color: ${window.config.customBgColor} !important;
background-image: unset !important;
}`:""}
.top{
position:relative;
}
.new:before{
content:'new';
position: absolute;
background: red;
font-size: 10px;
border-radius: 4px;
padding: 0px 2px;
color: white;
right: -9px;
top: -3px;
}
}
`,m=document.createElement("style");m.rel="stylesheet",m.type="text/css",m.innerHTML=r,window.document.head.append(m);}function n(){let r=new Date().getUTCFullYear()+"/"+(new Date().getUTCMonth()+1)+"/"+new Date().getUTCDate();if(window.pageType===q.Home){let m=window.query('.box .inner a[href="/mission/daily"]');m?o(m,r):window.win().doc.getElementById("gift_v2excellent")&&(window.win().doc.getElementById("gift_v2excellent").click(),localStorage.setItem("menu_clockInTime",r));}else {let m=localStorage.getItem("menu_clockInTime");(!m||m!=r)&&i(r);}}function o(r,m){let v=window.baseUrl+"/mission/daily/redeem?"+RegExp("once\\=(\\d+)").exec(document.querySelector("div#Top .tools, #menu-body").innerHTML)[0];console.log("url",v),$.get(v).then(b=>{let f=b.match(/<body[^>]*>([\s\S]+?)<\/body>/g),y=$(f[0]);y.find("li.fa.fa-ok-sign").length?(y=y.find("#Main").text().match(/已连续登录(不可用) (\d+?) 天/)[0],localStorage.setItem("menu_clockInTime",m),console.info("[V2EX - 超级增强] 自动签到完成!"),r&&(r.textContent=`自动签到完成!${y}`,r.href="javascript:void(0);")):(In({text:`自动签到失败!请关闭其他插件或脚本。
如果连续几天都签到失败,请联系作者解决!`,timeout:4e3,onclick(){I.feedback();}}),console.warn("[V2EX 增强] 自动签到失败!请关闭其他插件或脚本。如果连续几天都签到失败,请联系作者解决!"),r&&(r.textContent="自动签到失败!请尝试手动签到!"));});}function i(r){$.get(window.baseUrl+"/mission/daily").then(m=>{let v=m.match(/<body[^>]*>([\s\S]+?)<\/body>/g);$(v[0]).find('input[value^="领取"]').length?o(null,r):(console.info("[V2EX 增强] 已经签过到了。"),localStorage.setItem("menu_clockInTime",r));});}function s(r,m){return new Promise((v,b)=>{$.get(location.origin+"/notes/edit/"+r).then(f=>{let y=f.match(/<body[^>]*>([\s\S]+?)<\/body>/g),k=$(y[0]).find(".note_editor").text();if(k===m)v({});else {let T=k.substring(m.length);try{v(JSON.parse(T));}catch{console.log("tage",T),v({});}}});})}function a(r,m){fetch(`/notes/${r}`).then(v=>{v.text().then(b=>{let f=b.match(/\?once=([\d]+)/);f&&f[1]&&(console.log("接口返回了once-str",Number(f[1])),fetch(`/notes/delete/${r}?once=${Number(f[1])}`).then(y=>{console.log("r",y,y.url===location.origin+"/"),y.status===200?y.redirected&&y.url===location.origin+"/"&&m():m();}));});});}async function u(){$.get(location.origin+"/notes").then(async r=>{let m=r.match(/<body[^>]*>([\s\S]+?)<\/body>/g),b=$(m[0]).find("#Main .box .note_item_title a");if(window.config.openTag){let y=Array.from(b).filter(p=>p.innerText.includes(window.user.tagPrefix));if(y.length){if(y.length>1){let p=!0;for(let k=1;k<y.length-1;k++)setTimeout(()=>{if(!p)return;let T=y[k].href.substr(-5);a(T,()=>p=!1);},60*1e3*k);}window.user.tagsId=y[0].href.substr(-5),window.user.tags=await s(window.user.tagsId,window.user.tagPrefix);}else {let p=await window.parse.createNoteItem(window.user.tagPrefix);p&&(window.user.tagsId=p);}}let f=Array.from(b).filter(y=>y.innerText.includes(window.user.configPrefix));if(f.length){if(f.length>1){let p=!0;for(let k=1;k<f.length-1;k++)setTimeout(()=>{if(!p)return;let T=f[k].href.substr(-5);a(T,()=>p=!1);},60*1e3*k);}window.user.configNoteId=f[0].href.substr(-5);let y=await s(window.user.configNoteId,window.user.configPrefix);window.config=Object.assign(window.config,y);}else {let y=await window.parse.createNoteItem(window.user.configPrefix);y&&(window.user.configNoteId=y);}window.config.version<ge.currentVersion&&(window.config.version=ge.currentVersion),localStorage.setItem("v2ex-config",JSON.stringify(window.config)),window.parse.editNoteItem(window.user.configPrefix+JSON.stringify(window.config),window.user.configNoteId),await I.cbChecker({type:"syncData"}),setTimeout(()=>[window.initConfig=!0]);});}function c(){let r=$('<a href="/" class="top">脚本设置</a>');r.on("click",function(m){m.stopPropagation(),m.preventDefault(),this.classList.remove("new"),I.cbChecker({type:"openSetting"});}),$(".tools").prepend(r);}async function d(){window.addEventListener("error",b=>{let f=b.target,y=f.getAttribute("data-originurl");if(y){let p=document.createElement("a");p.href=y,p.setAttribute("notice","此标签由v2ex超级增强脚本转换图片失败后恢复"),p.innerText=y,f.parentNode.replaceChild(p,f);}},!0),window.isNight&&document.documentElement.classList.add("dark");let{pageData:r,pageType:m}=I.checkPageType();window.pageType=m,window.pageData=r,e();let v=document.querySelector(".tools .top:nth-child(2)");v&&v.textContent!=="注册(不可用)"&&(window.user.username=v.textContent,window.user.avatar=$("#Rightbar .box .avatar").attr("src")),I.initConfig().then(async b=>{c(),t();try{window.config.autoSignin&&window.user.username&&n();}catch{console.log("签到失败");}window.user.username&&u();let f,y,p,k;switch(window.pageType){case q.Node:f=document.querySelectorAll("#Wrapper #Main .box");try{k=$('<div class="post-item"></div>'),window.config.viewType==="card"&&k[0].classList.add("preview"),$(f[1]).prepend(k),$(f[1]).children().slice(1,3).each(function(){this.classList.contains("cell")&&k.append(this);}),k=$('<div class="post-item"></div>'),window.config.viewType==="card"&&k[0].classList.add("preview"),$(f[1]).append(k),$(f[1]).children().slice(2).each(function(){this.classList.contains("cell")&&k.append(this);}),f[1].style.boxShadow="unset",f[1].style.background="unset",f[1].style.overflow="hidden";}catch(V){console.log("PageType-Node解析报错了",V);}y=f[1].querySelector("#TopicsNode").querySelectorAll(".cell"),y[0].before(_e),window.parse.parsePagePostList(y,f[1]);break;case q.Changes:case q.Home:f=document.querySelector("#Wrapper #Main .box");try{k=$('<div class="post-item"></div>'),window.config.viewType==="card"&&k[0].classList.add("preview"),$(f).prepend(k),$(f).children().slice(1,3).each(function(){this.classList.contains("item")||k.append(this);}),p=$(f).children().last(),p.addClass("cell post-item"),window.config.viewType==="card"&&p[0].classList.add("preview"),f.style.boxShadow="unset",f.style.background="unset",f.style.overflow="hidden";}catch(V){console.log("PageType-Home解析报错了",V);}y=f.querySelectorAll(".item"),y[0].before(_e),window.parse.parsePagePostList(y,f);break;case q.Post:if(localStorage.getItem("d")){window.stopMe=!0,I.cbChecker({type:"syncData"});return}if(f=document.querySelector("#Wrapper #Main .box"),f.after(_e),await I.checkPostReplies(window.pageData.id,!1)){window.stopMe=!0,I.cbChecker({type:"syncData"}),I.cbChecker({type:"warningNotice",value:"由于回复数量较多,脚本已停止解析楼中楼"});return}if(window.config.postWidth){let V=$("#Main");V.css({width:window.config.postWidth,margin:"unset"}),$("#Wrapper > .content").css({"max-width":"unset",display:"flex","justify-content":"center",gap:"20px"}),V.after($("#Rightbar"));}let W=Me({id:window.pageData.id}),M=$(document.body),B=document.documentElement.outerHTML;window.parse.parsePostContent(W,M,B).then(async V=>{await I.cbChecker({type:"postContent",value:V}),await window.parse.parseOp(V);}),window.parse.getPostAllReplies(W,M,B,window.pageData.pageNo).then(async V=>{await I.cbChecker({type:"postReplies",value:V});});break;case q.Member:f=document.querySelectorAll("#Wrapper #Main .box"),window.targetUserName=f[0].querySelector("h1").textContent,window.config.openTag&&(f[0].style.borderBottom="none",f[0].style["border-bottom-left-radius"]="0",f[0].style["border-bottom-right-radius"]="0");try{k=$('<div class="post-item"></div>'),window.config.viewType==="card"&&k[0].classList.add("preview"),$(f[1]).prepend(k),$(f[1]).children().slice(1,2).each(function(){this.classList.contains("item")||k.append(this);}),p=$(f[1]).children().last(),p.addClass("cell post-item"),window.config.viewType==="card"&&p[0].classList.add("preview"),f[1].style.boxShadow="unset",f[1].style.background="unset",f[1].style.overflow="hidden";}catch(V){console.log("PageType-Member解析报错了",V);}y=f[1].querySelectorAll(".cell"),f[0].after(_e),window.parse.parsePagePostList(y,f[1]);break;default:window.stopMe=!0,I.cbChecker({type:"syncData"}),console.error("未知页面");break}});}window.canParseV2exPage=!window.location.search.includes("script"),window.canParseV2exPage?d():(document.querySelector("#Wrapper #Main .box").after(_e),window.stopMe=!0,I.cbChecker({type:"syncData"}),window.location.search.includes("script=0")&&I.cbChecker({type:"warningNotice",value:"脚本无法查看此主题,已为您单独打开此主题"}),window.location.search.includes("script=1")&&I.cbChecker({type:"warningNotice",value:"由于回复数量较多,已为您单独打开此主题并停止解析楼中楼"}));}if(!Sc){Ic();let e=vue.createApp(Cc);e.config.unwrapInjectedRef=!0,e.mount(_e);}
})(Vue);