{
  "encrypted": "",
  "settings": [
    {
      "key": "version",
      "value": "v4.1.1 (Commit: 08c5283) - Frontend: v4.1.1 - Build at: 2025-08-18 07:20:03 +0000",
      "help": "",
      "type": "string",
      "options": "",
      "group": 1,
      "flag": 2,
      "index": 0
    },
    {
      "key": "site_title",
      "value": "星染储存库",
      "help": "",
      "type": "string",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 1
    },
    {
      "key": "announcement",
      "value": "### 欢迎回来\n#### 2025年02月8日\n国内优化[地址](https://alistplus.xrsite.online/)",
      "help": "",
      "type": "text",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 2
    },
    {
      "key": "pagination_type",
      "value": "all",
      "help": "",
      "type": "select",
      "options": "all,pagination,load_more,auto_load_more",
      "group": 1,
      "flag": 0,
      "index": 3
    },
    {
      "key": "default_page_size",
      "value": "30",
      "help": "",
      "type": "number",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 4
    },
    {
      "key": "allow_indexed",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 5
    },
    {
      "key": "allow_mounted",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 6
    },
    {
      "key": "robots_txt",
      "value": "User-agent: *\nAllow: /",
      "help": "",
      "type": "text",
      "options": "",
      "group": 1,
      "flag": 0,
      "index": 7
    },
    {
      "key": "logo",
      "value": "https://cdn.jsdelivr.net/gh/jhxxr/cdn/img/%E6%98%9F%E6%9F%93%E5%82%A8%E5%AD%98%E5%BA%93.png",
      "help": "",
      "type": "text",
      "options": "",
      "group": 2,
      "flag": 0,
      "index": 8
    },
    {
      "key": "favicon",
      "value": "https://res.oplist.org/logo/logo.svg",
      "help": "",
      "type": "string",
      "options": "",
      "group": 2,
      "flag": 0,
      "index": 9
    },
    {
      "key": "main_color",
      "value": "rgba(255, 52, 143, 0.518)",
      "help": "",
      "type": "string",
      "options": "",
      "group": 2,
      "flag": 0,
      "index": 10
    },
    {
      "key": "home_icon",
      "value": "🏠",
      "help": "",
      "type": "string",
      "options": "",
      "group": 2,
      "flag": 0,
      "index": 11
    },
    {
      "key": "home_container",
      "value": "max_980px",
      "help": "",
      "type": "select",
      "options": "max_980px,hope_container",
      "group": 2,
      "flag": 0,
      "index": 12
    },
    {
      "key": "settings_layout",
      "value": "list",
      "help": "",
      "type": "select",
      "options": "list,responsive",
      "group": 2,
      "flag": 0,
      "index": 13
    },
    {
      "key": "text_types",
      "value": "txt,htm,html,xml,java,properties,sql,js,md,json,conf,ini,vue,php,py,bat,gitignore,yml,go,sh,c,cpp,h,hpp,tsx,vtt,srt,ass,rs,lrc,strm",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 14
    },
    {
      "key": "audio_types",
      "value": "mp3,flac,ogg,m4a,wav,opus,wma",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 15
    },
    {
      "key": "video_types",
      "value": "mp4,mkv,avi,mov,rmvb,webm,flv,m3u8",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 16
    },
    {
      "key": "image_types",
      "value": "jpg,tiff,jpeg,png,gif,bmp,svg,ico,swf,webp,avif",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 17
    },
    {
      "key": "proxy_types",
      "value": "m3u8,url",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 18
    },
    {
      "key": "proxy_ignore_headers",
      "value": "authorization,referer",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 1,
      "index": 19
    },
    {
      "key": "external_previews",
      "value": "{}",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 20
    },
    {
      "key": "iframe_previews",
      "value": "{\n\t\"doc,docx,xls,xlsx,ppt,pptx\": {\n\t\t\"Microsoft\":\"https://view.officeapps.live.com/op/view.aspx?src=$e_url\",\n\t\t\"Google\":\"https://docs.google.com/gview?url=$e_url&embedded=true\"\n\t},\n\t\"pdf\": {\n\t\t\"PDF.js\":\"https://res.oplist.org/pdf.js/web/viewer.html?file=$e_url\"\n\t},\n\t\"epub\": {\n\t\t\"EPUB.js\":\"https://res.oplist.org/epub.js/viewer.html?url=$e_url\"\n\t}\n}",
      "help": "",
      "type": "text",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 21
    },
    {
      "key": "audio_cover",
      "value": "https://res.oplist.org/logo/logo.svg",
      "help": "",
      "type": "string",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 22
    },
    {
      "key": "audio_autoplay",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 23
    },
    {
      "key": "video_autoplay",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 24
    },
    {
      "key": "preview_archives_by_default",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 25
    },
    {
      "key": "readme_autorender",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 26
    },
    {
      "key": "filter_readme_scripts",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 3,
      "flag": 0,
      "index": 27
    },
    {
      "key": "hide_files",
      "value": "/\\/README.md/i",
      "help": "",
      "type": "text",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 28
    },
    {
      "key": "package_download",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 29
    },
    {
      "key": "customize_head",
      "value": "<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>花有重开日</title>\n    \n    <!-- \n        Polyfill脚本：提供String.prototype.replaceAll的兼容性支持\n        确保在旧版浏览器中也能正常使用replaceAll方法\n      -->\n    <script src=\"https://polyfill.alicdn.com/v3/polyfill.min.js?features=String.prototype.replaceAll\"></script>\n\n    <style>\n        /*\n         * 全局背景设置：\n         * 白天/黑夜模式下均使用自适应背景图片\n         * 图片铺满整个屏幕并固定在视口上\n         */\n        .hope-ui-dark, .hope-ui-light {\n            background-image: url('https://imginfini.jhxjhx.top/lankong/vip/1/24/11/33b33dd247a8ca22bdae37bd14f5aa6a/6736205aec964.png') !important;\n            background-size: cover;\n            background-attachment: fixed;\n            background-position: center;\n        }\n        \n        /* 隐藏底部区域 */\n        .footer {\n            display: none !important;\n        }\n        \n        /*\n         * 移动端视频播放器样式优化：\n         * 调整控制按钮的最小宽度，优化小屏设备体验\n         */\n        .art-video-player .art-bottom .art-controls .art-control {\n            min-width: 0px !important;\n        }\n\n        /* 隐藏网页全屏按钮 - 减少界面干扰元素 */\n        .art-icon-fullscreenWebOn.art-icon,\n        .hint--top.hint--rounded.art-control-fullscreenWeb.art-control {\n            display: none !important;\n        }\n    \n        /*\n         * 主列表白天/夜间模式透明效果：\n         * 为卡片元素添加半透明背景和毛玻璃效果\n         * 包含适当的阴影增强视觉层次\n         */\n        /* 主列表白天模式透明 */\n        .obj-box.hope-stack.hope-c-dhzjXW.hope-c-PJLV.hope-c-PJLV-igScBhH-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(225, 225, 225, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n        \n        /* 主列表夜间模式透明 */\n        .obj-box.hope-stack.hope-c-dhzjXW.hope-c-PJLV.hope-c-PJLV-iigjoxS-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n        \n        /* Readme区域白天模式透明 */\n        .hope-c-PJLV.hope-c-PJLV-ikSuVsl-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(225, 225, 225, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n        \n        /* Readme区域夜间模式透明 */\n        .hope-c-PJLV.hope-c-PJLV-iiuDLME-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n\n        /*\n         * 顶部区域优化：\n         * 透明背景配合无阴影设计，移除所有视觉效果\n         */\n        #root > .header {\n            backdrop-filter: blur(0px);\n            -webkit-backdrop-filter: blur(0px);\n            background: rgba(225, 225, 225, 0);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n\n        /*\n         * 导航条白天/夜间模式设置：\n         * 透明背景配合无阴影设计\n         */\n        /* 白天模式导航条 */\n        .hope-ui-light .body > .nav {\n            backdrop-filter: blur(0px);\n            background-color: rgba(225, 225, 225, 0);\n            border-radius: var(--hope-radii-xl);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n        \n        /* 夜间模式导航条 */\n        .hope-ui-dark .body > .nav {\n            backdrop-filter: blur(0px);\n            background-color: rgba(0, 0, 0, 0);\n            border-radius: var(--hope-radii-xl);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n   \n        /* 隐藏导航条的遮罩层 */\n        .body > .nav::after {\n            display: none;\n        }\n\n        /*\n         * 右上角视图切换菜单：\n         * 保留半透明毛玻璃效果\n         */\n        /* 白天模式视图切换菜单 */\n        .hope-ui-light .hope-c-PJLV-iSMXDf-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background: rgba(225, 225, 225, 0.3);\n            border-radius: var(--hope-radii-xl);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n        \n        /* 夜间模式视图切换菜单 */\n        .hope-ui-dark .hope-c-PJLV-iSMXDf-css {\n            backdrop-filter: blur(1px);\n            -webkit-backdrop-filter: blur(1px);\n            background: rgba(0, 0，0，0.3);\n            border-radius: var(--hope-radii-xl);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n        }\n\n        /*\n         * 右下角侧边栏按钮透明度设置：\n         * 白天/夜间模式使用不同的透明度\n         */\n        /* 白天模式侧边栏按钮 */\n        .hope-ui-light .hope-c-PJLV-ijgzmFG-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(225, 225, 225, 0.3) !important;\n        }\n        \n        /* 夜间模式侧边栏按钮 */\n        .hope-ui-dark .hope-c-PJLV-ijgzmFG-css {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n        }\n        \n        /*\n         * 代码块透明处理：\n         * 为pre元素添加半透明背景\n         */\n        /* 白天模式代码块 */\n        .hope-ui-light pre {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(225, 225, 225, 0.3) !important;\n        }\n        \n        /* 夜间模式代码块 */\n        .hope-ui-dark pre {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n        }\n        /* 夜间模式侧边栏 */\n        .hope-ui-dark .glass-panel {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n        /* 夜间模式侧边栏内文字 */\n        .hope-ui-dark .glass-panel .vertical-links a {\n            color: rgba(255, 255, 255, 1) !important;\n            text-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n                /* 夜间模式侧箭头 */\n        .hope-ui-dark .glass-panel .tab {\n            backdrop-filter: blur(3px);\n            -webkit-backdrop-filter: blur(3px);\n            background-color: rgba(0, 0, 0, 0.3) !important;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0);\n        }\n\n    \n        /*\n         * 搜索框相关样式：\n         * 半透明背景和模糊效果\n         */\n        /* 白天模式搜索主体 */\n        .hope-ui-light .hope-c-PJLV-iiBaxsN-css{\n            background-color: rgba(255,255,255,0.3)!important;\n            backdrop-filter: blur(5px)!important;\n        }\n\n        /* 白天模式搜索输入框 */\n        .hope-ui-light .hope-c-kvTTWD-hYRNAb-variant-filled{\n            background-color: rgba(255,255,255,0)!important;\n            backdrop-filter: blur(5px)!important;\n        }\n\n        /* 白天模式搜索按钮 */\n        .hope-ui-light .hope-c-PJLV-ikEIIxw-css{\n            background-color: rgba(255,255,255,0.3)!important;\n            backdrop-filter: blur(5px)!important;\n            padding: var(--hope-space-1)!important;\n        }\n\n        /* 夜间模式搜索主体 */\n        .hope-ui-dark .hope-c-PJLV-iiBaxsN-css{\n            background-color: rgb(0, 0, 0, 0.3)!important;\n            backdrop-filter: blur(5px)!important;\n        }\n\n        /* 夜间模式搜索输入框 */\n        .hope-ui-dark .hope-c-kvTTWD-hYRNAb-variant-filled{\n            background-color: rgb(0, 0, 0, 0.3)!important;\n            backdrop-filter: blur(5px)!important;\n        }\n\n        /* 夜间模式搜索按钮 */\n        .hope-ui-dark .hope-c-PJLV-ikEIIxw-css{\n            background-color: rgb(0, 0, 0, 0.3)!important;\n            backdrop-filter: blur(5px)!important;\n            padding: var(--hope-space-1)!important;\n        }\n\n        /*\n         * 底部布局设置：\n         * 确保页面底部有足够的空白区域\n         */\n        dibu {\n            border-top: 0px;\n            position: absolute;\n            bottom: 0;\n            width: 100%;\n            margin: 0px;\n            padding: 0px;\n        }\n        \n        .App {\n            min-height: 85vh;\n        }\n        \n        .table {\n            margin: auto;\n        }\n    </style>\n\n    <!-- \n        * 计时器和箴言区域的样式 *\n        此部分样式为底部计时器和随机箴言显示提供专用样式\n     -->\n    <style>\n        /* 计时器容器定位 - 固定在底部中间 */\n        .container {\n            position: fixed;\n            bottom: 20px;\n            left: 0;\n            right: 0;\n            text-align: center;\n            font-family: Arial, sans-serif;\n        }\n\n        /* 箴言文字样式 */\n        #hitokoto-text {\n            color: #000000;  /* 粉紫色主题 */\n            margin: 10px auto;\n            max-width: 80%;  /* 限制最大宽度 */\n        }\n        \n        /* 计时器数字样式 */\n        .timer {\n            color: #000000;  /* 粉紫色主题 */\n            margin: 0 15px;  /* 水平间距 */\n        }\n        \n        /* 移动设备响应式设置 */\n        @media (max-width: 768px) {\n            /* 小屏幕设备减小字号 */\n            #hitokoto-text { font-size: 18px; }\n            .timer { font-size: 13px; }\n        }\n        \n        /* 桌面设备响应式设置 */\n        @media (min-width: 769px) {\n            /* 大屏幕设备使用正常字号 */\n            #hitokoto-text { font-size: 20px; }\n            .timer { font-size: 15px; }\n        }\n        \n        /* \n         * 箴言切换动画：\n         * 弥散消失效果 - 文字模糊后逐渐透明\n         */\n        @keyframes disperse {\n            0% { opacity: 1; filter: blur(0); }\n            100% { opacity: 0; filter: blur(20px); }\n        }\n        \n        /* \n         * 箴言出现动画：\n         * 从下方淡入上浮效果\n         */\n        @keyframes appear {\n            0% { opacity: 0; transform: translateY(10px); }\n            100% { opacity: 1; transform: none; }\n        }\n        \n        /* 应用消失动画的类 */\n        .dispersed { animation: disperse 0.8s ease-out; }\n        \n        /* 应用出现动画的类 */\n        .appeared { animation: appear 0.6s ease-out; }\n    </style>\n</head>\n<body>\n    <!-- \n        计时器和箴言显示容器：\n        固定在页面底部，包含两个计时器和一个箴言文本区域\n     -->\n    <div class=\"container\">\n        <div>\n            <!-- 停留时间计时器 -->\n            <span id=\"stay-timer\" class=\"timer\">停留：0分0秒</span>\n            \n            <!-- 运行时间计时器 -->\n            <span id=\"runtime-timer\" class=\"timer\">运行：0天00:00:00</span>\n        </div>\n        \n        <!-- 箴言显示区域，初始显示加载状态 -->\n        <div id=\"hitokoto-text\">正在加载智慧箴言...</div>\n    </div>\n\n    <!-- \n        计时器和箴言系统脚本：\n        实现动态计时和随机箴言功能\n     -->\n    <script>\n        // 固定起始时间：2025年05月21日 05:21:00 (UTC+8)\n        const START_TIME = new Date(Date.UTC(2022, 4, 21, 05, 21, 0)).getTime();\n        \n        // 使用上海时区的时间API\n        const TIME_API = 'https://worldtimeapi.org/api/timezone/Asia/Shanghai';\n        \n        // 时间格式化函数：将秒数转换为天、小时、分钟、秒\n        function formatDuration(seconds) {\n            const days = Math.floor(seconds / 86400);\n            const hours = Math.floor((seconds % 86400) / 3600);\n            const minutes = Math.floor((seconds % 3600) / 60);\n            const secs = seconds % 60;\n            \n            // 返回格式化后的时间对象（自动补零）\n            return {\n                days: days.toString().padStart(2, '0'),\n                hours: hours.toString().padStart(2, '0'),\n                minutes: minutes.toString().padStart(2, '0'),\n                seconds: secs.toString().padStart(2, '0')\n            }\n        }\n        \n        // 网络时间系统类：负责同步网络时间\n        class NetworkTimer {\n            constructor() {\n                this.timeOffset = 0;  // 本地时间与网络时间的偏移量\n                this.syncTime();      // 初始同步时间\n                \n                // 每分钟同步一次网络时间\n                setInterval(() => this.syncTime(), 60000);\n            }\n            \n            // 同步网络时间方法\n            async syncTime() {\n                try {\n                    // 从世界时间API获取上海时间\n                    const response = await fetch(TIME_API);\n                    const { unixtime } = await response.json();\n                    \n                    // 计算本地时间与网络时间的偏移\n                    this.timeOffset = Date.now() - unixtime * 1000;\n                } catch {\n                    // 出错时使用本地时间\n                    console.log('使用本地时间计算');\n                }\n            }\n\n            // 获取当前网络时间（基于同步偏移）\n            get currentTime() {\n                return Date.now() - this.timeOffset;\n            }\n\n            // 计算运行时间（从固定起始时间起）\n            get runtime() {\n                return Math.floor((this.currentTime - START_TIME) / 1000);\n            }\n        }\n\n        // 计时系统类：管理停留时间和运行时间显示\n        class TimerSystem {\n            constructor() {\n                // 创建网络时间同步器\n                this.networkTimer = new NetworkTimer();\n                \n                // 停留时间计数（秒）\n                this.staySeconds = 0;\n                \n                // 每秒更新停留时间\n                setInterval(() => {\n                    this.staySeconds++;\n                    this.updateStayTimer();\n                }, 1000);\n\n                // 每秒更新运行时间\n                setInterval(() => this.updateRuntimeTimer(), 1000);\n                \n                // 初始立即更新时间显示\n                this.updateRuntimeTimer();\n            }\n\n            // 更新停留时间显示\n            updateStayTimer() {\n                const t = formatDuration(this.staySeconds);\n                document.getElementById('stay-timer').textContent = \n                    `停留：${t.minutes}分${t.seconds}秒`;\n            }\n\n            // 更新运行时间显示\n            updateRuntimeTimer() {\n                const t = formatDuration(this.networkTimer.runtime);\n                document.getElementById('runtime-timer').textContent = \n                    `运行：${t.days}天${t.hours}:${t.minutes}:${t.seconds}`;\n            }\n        }\n\n        // 箴言管理系统类：获取并显示随机箴言\n        class HitokotoManager {\n            constructor() {\n                // 获取箴言文本显示元素\n                this.element = document.getElementById('hitokoto-text');\n                \n                // 初始更新箴言\n                this.update();\n                \n                // 每5分钟更新一次箴言\n                setInterval(() => this.update(), 300000);\n            }\n\n            // 更新箴言方法\n            async update() {\n                try {\n                    // 触发动画效果\n                    this.triggerAnimation();\n                    \n                    // 从Hitokoto API获取随机箴言\n                    const response = await fetch('https://v1.hitokoto.cn');\n                    const data = await response.json();\n                    \n                    // 显示获取到的箴言\n                    this.displayText(data.hitokoto);\n                } catch {\n                    // 出错时显示默认信息\n                    this.displayText('内容加载失败');\n                }\n            }\n\n            // 触发箴言切换动画效果\n            triggerAnimation() {\n                // 添加消失动画类\n                this.element.classList.add('dispersed');\n                \n                // 动画结束后切换为出现动画\n                setTimeout(() => {\n                    this.element.classList.remove('dispersed');\n                    this.element.classList.add('appeared');\n                }, 800);\n            }\n\n            // 显示箴言文本\n            displayText(text) {\n                // 延迟显示新箴言，确保动画效果完成\n                setTimeout(() => {\n                    // 添加引号装饰并显示文本\n                    this.element.textContent = `「${text}」`;\n                    \n                    // 移除出现动画类\n                    this.element.classList.remove('appeared');\n                }, 1200);\n            }\n        }\n\n        // 页面加载完成后初始化计时和箴言系统\n        window.addEventListener('DOMContentLoaded', () => {\n            new TimerSystem();\n            new HitokotoManager();\n        });\n    </script>\n\n<!-- \n    右侧悬浮操作面板HTML结构：\n    提供快速访问的登录和管理功能入口\n -->\n<div class=\"glass-panel\">\n    <!-- 面板开关标签 -->\n    <div class=\"tab\"></div>\n    \n    <!-- 垂直排列的功能链接 -->\n    <div class=\"vertical-links\">\n        <!-- 登录功能入口 -->\n        <a href=\"/@login\">登录</a>\n        <!-- 分割线 -->\n        <div class=\"separator\"> </div>\n        <!-- 管理功能入口 -->\n        <a href=\"/@manage\">管理</a>\n    </div>\n</div>\n\n<!-- \n    右侧悬浮操作面板相关样式：\n    实现毛玻璃视觉效果和切换动画\n -->\n<style>\n    /* 面板容器基础样式 - 毛玻璃效果 */\n    .glass-panel {\n        position: fixed;     /* 固定在屏幕上 */\n        right: 0;            /* 右侧定位 */\n        top: 50%;            /* 垂直居中 */\n        transform: translateY(-50%);\n        z-index: 1000;       /* 确保在最上层 */\n        background: rgba(255, 255, 255, 0.3); /* 半透明背景 */\n        backdrop-filter: blur(3px); /* 毛玻璃模糊效果 */\n        -webkit-backdrop-filter: blur(3px); /* Safari兼容 */\n        border-radius: 10px 0 0 10px; /* 左圆角 */\n        padding: 8px 4px;    \n        box-shadow: 0 4px 20px rgba(0, 0, 0, 0); /* 阴影效果 */\n        border: 0px solid rgba(255, 255, 255, 0.3);\n        transition: all 0.3s ease; /* 平滑过渡效果 */\n        \n        /* 初始状态隐藏在右侧 */\n        transform: translate(calc(100% - 10px), -50%);\n    }\n\n    /* 面板展开状态样式 */\n    .glass-panel.visible {\n        transform: translate(0, -50%); /* 完全显示 */\n    }\n\n    /* 面板标签样式（用于展开/收起面板） */\n    .glass-panel .tab {\n        position: absolute;  /* 相对面板绝对定位 */\n        left: -20px;        /* 定位到面板左侧 */\n        top: 50%;           \n        transform: translateY(-50%);\n        width: 20px;\n        height: 50px;\n        background: rgba(255, 255, 255, 0.3); /* 透明背景 */\n        backdrop-filter: blur(3px);\n        -webkit-backdrop-filter: blur(3px);\n        border-radius: 10px 0 0 10px; /* 左圆角 */\n        cursor: pointer;    /* 鼠标指针样式 */\n        display: flex;\n        align-items: center;\n        justify-content: center;\n    }\n\n    /* 标签箭头图标（使用CSS三角形实现） */\n    .glass-panel .tab::after {\n        content: \"\";        /* 清空字符内容 */\n        width: 0;\n        height: 0;\n        border-style: solid;\n        border-width: 12px 12px 12px 0; /* 右箭头尺寸 */\n        border-color: transparent transparent transparent #F8CEDC; /* 只显示左边框颜色 */\n        transition: all 0.5s ease;\n    }\n\n    /* 面板展开时的标签箭头图标（右箭头） */\n    .glass-panel.visible .tab::after {\n        border-width: 12px 0 12px 12px; /* 左箭头尺寸 */\n        border-color: transparent #F8CEDC transparent transparent; /* 只显示右边框颜色 */\n    }\n\n    /* 垂直排列的链接容器 */\n    .vertical-links {\n        display: flex;\n        flex-direction: column; /* 垂直布局 */\n        gap: 7px;           /* 链接间距 */\n    }\n\n    /* 垂直方向链接样式 */\n    .vertical-links a {\n        writing-mode: vertical-rl; /* 垂直排列文字 */\n        text-orientation: upright; /* 文字正立 */\n        color: #000;\n        text-decoration: none;\n        font-size: 16px;\n        padding: 1px 1px;\n        border-radius: 1px;\n        transition: all 0.3s ease; /* 悬停动画 */\n        position: relative;\n    }\n\n    /* 链接悬停效果 */\n    .vertical-links a:hover {\n        background: rgba(255, 255, 255, 0.3);\n        transform: translateX(-0.5px); /* 向左移动效果 */\n    }\n</style>\n\n<!-- \n    右侧悬浮操作面板的交互逻辑：\n    实现面板的智能显示/隐藏和切换\n -->\n<script>\n    // 页面加载完成后初始化面板交互\n    document.addEventListener('DOMContentLoaded', function() {\n        // 获取面板和标签元素\n        const panel = document.querySelector('.glass-panel');\n        const tab = document.querySelector('.tab');\n        \n        // 隐藏面板的计时器引用\n        let hideTimer;\n        \n        // 用户当前是否在交互状态\n        let userInteracting = false;\n        \n        // 显示面板函数\n        function showPanel() {\n            // 添加可见类，触发CSS动画\n            panel.classList.add('visible');\n            \n            // 重置自动隐藏计时器\n            resetHideTimer();\n        }\n        \n        // 隐藏面板函数\n        function hidePanel() {\n            // 只在用户没有交互时才隐藏\n            if (!userInteracting) {\n                panel.classList.remove('visible');\n            }\n        }\n        \n        // 重置隐藏计时器函数\n        function resetHideTimer() {\n            // 清除现有计时器\n            clearTimeout(hideTimer);\n            \n            // 设置新的4秒后隐藏计时器\n            hideTimer = setTimeout(hidePanel, 4000);\n        }\n        \n        // 页面加载后3秒自动显示面板\n        setTimeout(showPanel, 3000);\n        \n        // 标签点击事件：切换面板状态\n        tab.addEventListener('click', function(e) {\n            // 阻止事件冒泡\n            e.stopPropagation();\n            \n            // 当前为展开状态则收起，收起状态则展开\n            if (panel.classList.contains('visible')) {\n                hidePanel();\n            } else {\n                showPanel();\n            }\n        });\n        \n        // 鼠标进入面板区域时清除隐藏计时器\n        panel.addEventListener('mouseenter', function() {\n            // 重置交互状态\n            userInteracting = false;\n            \n            // 清除隐藏计时器\n            clearTimeout(hideTimer);\n        });\n        \n        // 鼠标离开面板时重置隐藏计时器\n        panel.addEventListener('mouseleave', function() {\n            // 重置交互状态\n            userInteracting = false;\n            \n            // 重新启动5秒隐藏计时\n            resetHideTimer();\n        });\n        \n        // 面板内部点击事件处理\n        panel.addEventListener('click', function(e) {\n            // 如果点击的是链接\n            if (e.target.tagName === 'A') {\n                // 重置交互状态\n                userInteracting = false;\n                \n                // 链接点击后不清除面板\n                clearTimeout(hideTimer);\n            }\n        });\n    });\n</script>\n\n\n    <!-- \n        额外功能脚本：\n        1. 调整左侧工具栏位置\n        2. 引入VideoTogether同步观看插件\n     -->\n    <script>\n        // 页面加载完成后执行的额外初始化\n        document.addEventListener(\"DOMContentLoaded\", () => {\n            // 创建样式元素并设置左侧工具栏位置\n            const seAList = document.createElement(\"style\");\n            seAList.innerHTML = `\n                .left-toolbar-box {\n                    left: var(--hope-space-5);\n                    right: auto;   \n                }`;\n                \n            // 将样式添加到文档中\n            document.body.appendChild(seAList);\n        });\n    </script>\n<script>\n  window.addEventListener('load', () => {\n    setTimeout(() => {\n      const script = document.createElement('script');\n      script.src = 'https://fastly.jsdelivr.net/gh/VideoTogether/VideoTogether@latest/release/extension.website.user.js';\n      script.onerror = () => console.error('VideoTogether脚本加载失败');\n      document.head.appendChild(script);\n    }, 1000);\n  });\n</script>\n\n",
      "help": "",
      "type": "text",
      "options": "",
      "group": 4,
      "flag": 1,
      "index": 30
    },
    {
      "key": "customize_body",
      "value": "<head>\n    <meta charset=\"UTF-8\">\n    <title>樱花特效背景</title>\n    <style>\n        /* 基础样式重置 */\n        body {\n            margin: 0;   /* 清除默认外边距 */\n        }\n        \n        /* 樱花容器样式 */\n        #sakura-container {\n            position: fixed;   /* 固定定位，脱离文档流 */\n            top: 0;\n            left: 0;\n            width: 100%;       /* 全屏宽度 */\n            height: 100%;      /* 全屏高度 */\n            z-index: -1;       /* 置于底层作为背景 */\n        }\n        \n        /* 加载遮罩层整体样式 */\n        #loading-overlay {\n            position: fixed;   /* 固定定位，覆盖整个视窗 */\n            top: 0;\n            left: 0;\n            width: 100%;       /* 全屏宽度 */\n            height: 100%;      /* 全屏高度 */\n            z-index: 9999;     /* 最高层级确保覆盖所有内容 */\n            display: flex;     /* 使用flex布局管理内部元素 */\n            flex-direction: column; /* 改为垂直排列 */\n            pointer-events: none; /* 允许鼠标事件穿透，避免阻止用户交互 */\n        }\n        \n        /* 遮罩两半部分的通用样式 */\n        .mask-half {\n            width: 100%;        /* 改为全宽 */\n            height: 50%;        /* 各占一半高度 */\n            background-color: #F8CEDC; /* 樱花粉色背景 */\n            transform-origin: center;  /* 变换中心点为元素中心 */\n            /* 添加平滑的变换效果，使用自定义缓动曲线，持续0.5秒 */\n            transition: transform 1s cubic-bezier(0.65, 0, 0.35, 1);\n        }\n        \n        /* 当加载完成时的上半部分效果 */\n        #loading-overlay.loaded .mask-top {\n            transform: translateY(-100%); /* 向上平移100%高度 */\n        }\n        \n        /* 当加载完成时的下半部分效果 */\n        #loading-overlay.loaded .mask-bottom {\n            transform: translateY(100%);  /* 向下平移100%高度 */\n        }\n        \n        /* 文字提示样式 */\n        #sakura-text {\n            position: absolute; /* 绝对定位 */\n            top: 50%;           /* 垂直居中起始位置 */\n            left: 50%;          /* 水平居中起始位置 */\n            transform: translate(-50%, -50%); /* 精确居中定位 */\n            font-size: 1.5rem;  /* 中等字体大小 */\n            color: #fff;        /* 白色文字 */\n            text-align: center; /* 文字居中对齐 */\n            text-shadow: 0 2px 4px rgba(0,0,0,0.3); /* 文字阴影增加可读性 */\n            z-index: 10000;     /* 高于遮罩层确保可见 */\n            opacity: 1;         /* 初始完全可见 */\n            /* 透明度变化的过渡效果，持续2秒 */\n            transition: opacity 4s ease;\n            pointer-events: none; /* 允许鼠标事件穿透 */\n        }\n        \n        /* 单个文字样式 */\n        #sakura-text span {\n            display: inline-block; /* 行内块元素可应用transform */\n            /* 浮动动画，无限循环，有来回交替效果 */\n            animation: float 0.6s ease-in-out infinite alternate;\n        }\n        \n        /* 浮动动画关键帧定义 */\n        @keyframes float {\n            0% { transform: translateY(0); }      /* 初始位置 */\n            100% { transform: translateY(-20px); } /* 上浮20像素 */\n        }\n        \n        /* 加载完成后文字提示的淡出效果 */\n        #loading-overlay.loaded #sakura-text {\n            opacity: 0; /* 完全透明 */\n        }\n    </style>\n</head>\n<body>\n    <!-- 樱花容器 - 由外部JS脚本填充动态樱花效果 -->\n    <div id=\"sakura-container\"></div>\n    \n    <!-- 加载遮罩层结构 -->\n    <div id=\"loading-overlay\">\n        <!-- 上下两部分遮罩 -->\n        <div class=\"mask-half mask-top\"></div>\n        <div class=\"mask-half mask-bottom\"></div>\n        \n        <!-- 文字提示：\"人无再少年！\"，每个字符单独控制 -->\n        <div id=\"sakura-text\">\n            <span>人</span>\n            <span>无</span>\n            <span>再</span>\n            <span>少</span>\n            <span>年</span>\n            <span>！</span>\n        </div>\n    </div>\n    \n    <!-- 外部樱花特效脚本 -->\n    <script src=\"https://files.cnblogs.com/files/quaint/sakuraPlus.js\"></script>\n    \n    <script>\n        // 页面加载完成后的初始化\n        window.addEventListener('load', function() {\n            // 获取遮罩层DOM元素\n            const overlay = document.getElementById('loading-overlay');\n            \n            // 获取所有文字元素，设置动画延迟\n            const textSpans = document.querySelectorAll('#sakura-text span');\n            // 为每个文字设置不同的动画延迟时间，创建波浪式动画效果\n            textSpans.forEach((span, index) => {\n                // 每增加一个字符，延迟增加0.2秒\n                span.style.animationDelay = `${index *0.2}s`;\n            });\n            \n            // 页面加载完成后等待10ms开始遮罩动画\n            setTimeout(function() {\n                // 添加loaded类触发遮罩分离动画和文字淡出\n                overlay.classList.add('loaded');\n                \n                // 动画执行完成后移除遮罩层\n                setTimeout(function() {\n                    // 隐藏遮罩层\n                    overlay.style.display = 'none';\n                }, 2000); // 等待800ms确保动画完成\n            }, 10); // 初始延迟10ms\n        });\n    </script>\n</body>\n",
      "help": "",
      "type": "text",
      "options": "",
      "group": 4,
      "flag": 1,
      "index": 31
    },
    {
      "key": "link_expiration",
      "value": "0",
      "help": "",
      "type": "number",
      "options": "",
      "group": 4,
      "flag": 1,
      "index": 32
    },
    {
      "key": "sign_all",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 4,
      "flag": 1,
      "index": 33
    },
    {
      "key": "privacy_regs",
      "value": "(?:(?:\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.){3}(?:\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\n([[:xdigit:]]{1,4}(?::[[:xdigit:]]{1,4}){7}|::|:(?::[[:xdigit:]]{1,4}){1,6}|[[:xdigit:]]{1,4}:(?::[[:xdigit:]]{1,4}){1,5}|(?:[[:xdigit:]]{1,4}:){2}(?::[[:xdigit:]]{1,4}){1,4}|(?:[[:xdigit:]]{1,4}:){3}(?::[[:xdigit:]]{1,4}){1,3}|(?:[[:xdigit:]]{1,4}:){4}(?::[[:xdigit:]]{1,4}){1,2}|(?:[[:xdigit:]]{1,4}:){5}:[[:xdigit:]]{1,4}|(?:[[:xdigit:]]{1,4}:){1,6}:)\n(?U)access_token=(.*)&",
      "help": "",
      "type": "text",
      "options": "",
      "group": 4,
      "flag": 1,
      "index": 34
    },
    {
      "key": "ocr_api",
      "value": "https://openlistteam-ocr-api-server.hf.space/ocr/file/json",
      "help": "",
      "type": "string",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 35
    },
    {
      "key": "filename_char_mapping",
      "value": "{\"/\": \"|\"}",
      "help": "",
      "type": "text",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 36
    },
    {
      "key": "forward_direct_link_params",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 37
    },
    {
      "key": "ignore_direct_link_params",
      "value": "sign,openlist_ts",
      "help": "",
      "type": "string",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 38
    },
    {
      "key": "webauthn_login_enabled",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 4,
      "flag": 0,
      "index": 39
    },
    {
      "key": "token",
      "value": "alist-f88be95d-2b3a-4c80-9979-dc4e90e30884gM2C1hPw6WYIDKx5BgtJDVVVruIE2iVjwFWEQoMuXPSMFQFRJQThUdM8TkOYBeJ2",
      "help": "",
      "type": "string",
      "options": "",
      "group": 0,
      "flag": 1,
      "index": 40
    },
    {
      "key": "search_index",
      "value": "database",
      "help": "",
      "type": "select",
      "options": "database,database_non_full_text,bleve,meilisearch,none",
      "group": 6,
      "flag": 0,
      "index": 41
    },
    {
      "key": "auto_update_index",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 6,
      "flag": 0,
      "index": 42
    },
    {
      "key": "ignore_paths",
      "value": "/PikPak",
      "help": "one path per line",
      "type": "text",
      "options": "",
      "group": 6,
      "flag": 1,
      "index": 43
    },
    {
      "key": "max_index_depth",
      "value": "20",
      "help": "max depth of index",
      "type": "number",
      "options": "",
      "group": 6,
      "flag": 1,
      "index": 44
    },
    {
      "key": "index_progress",
      "value": "{\"obj_count\":32040,\"is_done\":true,\"last_done_time\":\"2025-08-28T16:38:46.337819Z\",\"error\":\"\"}",
      "help": "",
      "type": "text",
      "options": "",
      "group": 0,
      "flag": 1,
      "index": 45
    },
    {
      "key": "sso_login_enabled",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 7,
      "flag": 0,
      "index": 46
    },
    {
      "key": "sso_login_platform",
      "value": "Casdoor",
      "help": "",
      "type": "select",
      "options": "Casdoor,Github,Microsoft,Google,Dingtalk,OIDC",
      "group": 7,
      "flag": 0,
      "index": 47
    },
    {
      "key": "sso_client_id",
      "value": "384a2eabff8a6441c84e",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 48
    },
    {
      "key": "sso_client_secret",
      "value": "c644d261c0fcc1a1dc404caae9311d40da049a61",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 49
    },
    {
      "key": "sso_oidc_username_key",
      "value": "Alist-login",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 50
    },
    {
      "key": "sso_organization_name",
      "value": "xrpublic",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 51
    },
    {
      "key": "sso_application_name",
      "value": "alist-app",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 52
    },
    {
      "key": "sso_endpoint_name",
      "value": "https://sso.jhxjhx.top/",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 53
    },
    {
      "key": "sso_jwt_public_key",
      "value": "-----BEGIN CERTIFICATE----- MIIE2TCCAsGgAwIBAgIDAeJAMA0GCSqGSIb3DQEBCwUAMCYxDjAMBgNVBAoTBWFk bWluMRQwEgYDVQQDDAtjZXJ0X2lyOTQ4ZjAeFw0yNTAxMDkwOTU3MDBaFw00NTAx MDkwOTU3MDBaMCYxDjAMBgNVBAoTBWFkbWluMRQwEgYDVQQDDAtjZXJ0X2lyOTQ4 ZjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKfSC144FzcBFE3sxbuA 1Dh/aQgr0bsGzkiF+8KnQXNZl5UBXYjfq0zw716uwrh3VRB6uMeXjPjEw/wWpTqn /xcSJrGsXvm8eVFCgrlklQ1IJwcuXt2CeThy+aDFExDKkfYSU15mHxXmWrU5vmRJ gEKS3hhshRgC5alV0MLJhB4Wibxa0dIbjSf/WcFZdpmpSPmcxYG5TiYfJBdY07wb UEK1VoxZZrQkM13gMjZr8zztMcrimlnV9uUtLEBfU66LLU+3ypH/Td43NX4G9N3x rDTJMwE2VgkszzswxejHq7IP1bnSIwY0QscEktXMWsLnfm/sbibSQBPgtrbqCWrt 5ns9UD5vm9zsIG6ZBa0csHlEiaRaOSTk3u9kunq9+Qs4GHyMz24ORJLwpRfs2P8+ LMGftSUxvTUbt27Ho2qc/DYRhNOx1QJfJf/F70sIqpUztMEN2pQRk33tQIRPpegv bxTO8r/GEH/J2WBcATt0J8ud0WLDdCzVv1zD3A46CuxHTWLTJQ2cs6+Ze/1D96Me LklcPEI0bX8zlOb5A1OmYaFcQl0SBI68jbvxt+iY5c0bvWKM5gUPg3WVk4SsO+Pz j/4+4mbJflYScVve/VVoQsSCXNP/U0a0n/iut0ZqmVeEQ19nlI2/TEQdRKl1BOWn 1jHG6pckKX75QALSFwapdBuTAgMBAAGjEDAOMAwGA1UdEwEB/wQCMAAwDQYJKoZI hvcNAQELBQADggIBAIRqC5nbUHMUe6mmUNoVXe3D7nBzmdX0EtDEwSPsT8BsnM29 Wk5m/s9pRqoDjEXF5Bxp+P3ffRt1PARne5wf5l1MD+uaOu2Bq23wqboDF0DkmWy2 jOVnfJDhwNm25PJiLzXWGhHQha/4E/AVeTQEge6Pk1hO1tTAbRryugbDP5vYHg83 HNP/51E2b77+cNJ8DK2jBrWGl8g4osOPENl2xXnkwZ7Ud/tZI38AFlV4EPE36BZz QjBb/x2FgH3Z1DmUAu+HRFQPXGz9PFTZOBJCGWj08kph82l0m+Pv5+smVkRxKu4S E2svISP8K9tmdCfq0E0b0b0b2Hbhj9q88q+mL7PTL2rEVFVb4JVktvVzplDxF/5D YmymUdZrKfowv2W2UJVHU8rnge3Li0M1VxVQPAIKJRb89suRsX/RgMMMwikPaCTh WDB/eIZflu0aocu/7euqNVeIBzwELZJwae6RaZ9mamCj4qlc7ji5eZDI9Q8EOJ3N h/Wh1TK3UF9lAxNnJlmOP4WueYoWppN8PmUdHcEkFsJsqzJnhxtjxIPu8zjyQtZR oC5v7Nya47ziWUwvijjf6JreCuDEzDHZulYxD9lJrd/8ZVn+WDJuUeV6XrfT+tj5 0ertp+bc6U018UeuE9/d+nN8zWvn1SF8PjxjCxWwvZSBnMH2EvEaBEFyVUQ2 -----END CERTIFICATE-----",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 54
    },
    {
      "key": "sso_extra_scopes",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 55
    },
    {
      "key": "sso_auto_register",
      "value": "true",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 56
    },
    {
      "key": "sso_default_dir",
      "value": "/OPEN",
      "help": "",
      "type": "string",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 57
    },
    {
      "key": "sso_default_permission",
      "value": "0",
      "help": "",
      "type": "number",
      "options": "",
      "group": 7,
      "flag": 1,
      "index": 58
    },
    {
      "key": "sso_compatibility_mode",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 7,
      "flag": 0,
      "index": 59
    },
    {
      "key": "ldap_login_enabled",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 8,
      "flag": 0,
      "index": 60
    },
    {
      "key": "ldap_server",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 61
    },
    {
      "key": "ldap_manager_dn",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 62
    },
    {
      "key": "ldap_manager_password",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 63
    },
    {
      "key": "ldap_user_search_base",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 64
    },
    {
      "key": "ldap_user_search_filter",
      "value": "(uid=%s)",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 65
    },
    {
      "key": "ldap_default_dir",
      "value": "/",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 66
    },
    {
      "key": "ldap_default_permission",
      "value": "0",
      "help": "",
      "type": "number",
      "options": "",
      "group": 8,
      "flag": 1,
      "index": 67
    },
    {
      "key": "ldap_login_tips",
      "value": "login with ldap",
      "help": "",
      "type": "string",
      "options": "",
      "group": 8,
      "flag": 0,
      "index": 68
    },
    {
      "key": "s3_access_key_id",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 9,
      "flag": 1,
      "index": 69
    },
    {
      "key": "s3_secret_access_key",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 9,
      "flag": 1,
      "index": 70
    },
    {
      "key": "s3_buckets",
      "value": "[]",
      "help": "",
      "type": "string",
      "options": "",
      "group": 9,
      "flag": 1,
      "index": 71
    },
    {
      "key": "ftp_public_host",
      "value": "127.0.0.1",
      "help": "",
      "type": "string",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 72
    },
    {
      "key": "ftp_pasv_port_map",
      "value": "",
      "help": "",
      "type": "text",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 73
    },
    {
      "key": "ftp_proxy_user_agent",
      "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",
      "help": "",
      "type": "string",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 74
    },
    {
      "key": "ftp_mandatory_tls",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 75
    },
    {
      "key": "ftp_implicit_tls",
      "value": "false",
      "help": "",
      "type": "bool",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 76
    },
    {
      "key": "ftp_tls_private_key_path",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 77
    },
    {
      "key": "ftp_tls_public_cert_path",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 10,
      "flag": 1,
      "index": 78
    },
    {
      "key": "offline_download_task_threads_num",
      "value": "5",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 79
    },
    {
      "key": "offline_download_transfer_task_threads_num",
      "value": "5",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 80
    },
    {
      "key": "upload_task_threads_num",
      "value": "5",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 81
    },
    {
      "key": "copy_task_threads_num",
      "value": "10",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 82
    },
    {
      "key": "decompress_download_task_threads_num",
      "value": "5",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 83
    },
    {
      "key": "decompress_upload_task_threads_num",
      "value": "5",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 84
    },
    {
      "key": "max_client_download_speed",
      "value": "-1",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 85
    },
    {
      "key": "max_client_upload_speed",
      "value": "-1",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 86
    },
    {
      "key": "max_server_download_speed",
      "value": "-1",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 87
    },
    {
      "key": "max_server_upload_speed",
      "value": "-1",
      "help": "",
      "type": "number",
      "options": "",
      "group": 11,
      "flag": 1,
      "index": 88
    },
    {
      "key": "transmission_uri",
      "value": "http://localhost:9091/transmission/rpc",
      "help": "",
      "type": "string",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 94
    },
    {
      "key": "transmission_seedtime",
      "value": "0",
      "help": "",
      "type": "number",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 93
    },
    {
      "key": "aria2_uri",
      "value": "http://localhost:6800/jsonrpc",
      "help": "",
      "type": "string",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 90
    },
    {
      "key": "aria2_secret",
      "value": "9d1b9ef2200a4014085f",
      "help": "",
      "type": "string",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 89
    },
    {
      "key": "qbittorrent_url",
      "value": "http://jhxxr:jhx666666@172.17.0.1:8181/",
      "help": "",
      "type": "string",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 92
    },
    {
      "key": "qbittorrent_seedtime",
      "value": "0",
      "help": "",
      "type": "number",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 91
    },
    {
      "key": "115_temp_dir",
      "value": "",
      "help": "",
      "type": "string",
      "options": "",
      "group": 5,
      "flag": 1,
      "index": 0
    }
  ],
  "users": [
    {
      "id": 1,
      "username": "jhxxr",
      "password": "",
      "base_path": "/",
      "role": 2,
      "disabled": false,
      "permission": 16383,
      "sso_id": ""
    },
    {
      "id": 2,
      "username": "guest",
      "password": "",
      "base_path": "/OPEN",
      "role": 1,
      "disabled": false,
      "permission": 0,
      "sso_id": ""
    },
    {
      "id": 4,
      "username": "sub",
      "password": "",
      "base_path": "/InfiniCLOUD/surfboard",
      "role": 0,
      "disabled": false,
      "permission": 780,
      "sso_id": ""
    },
    {
      "id": 5,
      "username": "webdavvideo",
      "password": "",
      "base_path": "/OPEN",
      "role": 0,
      "disabled": false,
      "permission": 256,
      "sso_id": ""
    },
    {
      "id": 6,
      "username": "upload",
      "password": "",
      "base_path": "/OPEN",
      "role": 0,
      "disabled": false,
      "permission": 16380,
      "sso_id": ""
    }
  ],
  "storages": [
    {
      "id": 3,
      "mount_path": "/OPEN/阿里云Open",
      "order": 1,
      "driver": "AliyundriveOpen",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"drive_type\":\"backup\",\"root_folder_id\":\"6361c10544e042fbf946449d8df2e6e74f155000\",\"refresh_token\":\"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJmYjZjM2Q2ZjExNDQ0ZjkwOGFiZDY4YjU2ZTE0ZDE4ZCIsImF1ZCI6ImM3ODA3OWI3MWY0MjQyN2I4Yzg5OWY4MWZiZTM2OTYxIiwiZXhwIjoxNzY0ODM0ODI2LCJpYXQiOjE3NTcwNTg4MjYsImp0aSI6ImU0YWNjOGEyNzAzZTRiYzNhMTMxOTIxZTkwMDliNTVjIn0.n0l33CrMF18HPUnxpfGvdS2TmmkMs3UAam5VVFrMrvCPRAzV82qXORrE5qQQSkyJrxnClIQJgT_RpNqMrQ3bIA\",\"order_by\":\"\",\"order_direction\":\"\",\"use_online_api\":true,\"alipan_type\":\"\",\"api_url_address\":\"https://api.oplist.org/alicloud/renewapi\",\"client_id\":\"\",\"client_secret\":\"\",\"remove_way\":\"delete\",\"rapid_upload\":false,\"internal_upload\":false,\"livp_download_format\":\"jpeg\",\"AccessToken\":\"eyJraWQiOiJLcU8iLCJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJmYjZjM2Q2ZjExNDQ0ZjkwOGFiZDY4YjU2ZTE0ZDE4ZCIsImF1ZCI6ImM3ODA3OWI3MWY0MjQyN2I4Yzg5OWY4MWZiZTM2OTYxIiwicyI6ImNkYSIsImQiOiI2MzI3ODY4NzIsODQ4MDA2MjIiLCJpc3MiOiJhbGlwYW4iLCJleHAiOjE3NTcwNjYwMjksImlhdCI6MTc1NzA1ODgyNiwianRpIjoiYjgzZTc2MDFkZjdkNDU3NTg3YTU5YTMzMGJlZTYwMDkifQ.vwnZg7DNYDxhTb0CoeoPOBdi-B8xxzmVbGz3JE6Dum8\"}",
      "remark": "",
      "modified": "2025-09-05T07:19:28.65884248Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 19,
      "mount_path": "/OPEN/联通云盘",
      "order": 2,
      "driver": "WoPan",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_id\":\"0\",\"refresh_token\":\"b4834a1d-e314-4030-b55a-a171ef1ad330\",\"family_id\":\"\",\"sort_rule\":\"name_asc\",\"access_token\":\"423a243e-fb72-4e23-a72f-33de564a6388\"}",
      "remark": "",
      "modified": "2025-09-05T08:06:06.95950516Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "front",
      "web_proxy": false,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 21,
      "mount_path": "/OPEN/移动云盘",
      "order": 4,
      "driver": "139Yun",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"authorization\":\"cGM6MTk4NTAyMzYyNTU6RjE0cFJocW18MXxSQ1N8MTc1OTY0ODM0MTcxNXxqMWRsdVBNR1hIdnZPRlh6MGpzWDJmZ3pUVEVLblguTnFtcGRiM1BlQ19rSXJDWDhXYkNnQ3NnT29qQzkyLmtqOHE3b09UUTJzS3B0bXVYOUVkbTNXeG1VMDNTbzR6STJLNURZZ2ZJVF9Zd016UHVmdHM2VW5MZmM4ellwMExwUU1WNlFDc29ydHQuejBWNFloeU81M3hCd2l5Wmd2ZmlYN3dpSl92UGphYm8t\",\"root_folder_id\":\"FqXT_YbYpwWIbIZdTR8xC7Lw5Q2RhqdDi\",\"type\":\"personal_new\",\"cloud_id\":\"\",\"custom_upload_part_size\":20971520,\"report_real_size\":true,\"use_large_thumbnail\":false}",
      "remark": "",
      "modified": "2025-09-05T07:23:37.45815668Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "302_redirect",
      "proxy_range": true,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 14,
      "mount_path": "/OPEN/夸克",
      "order": 5,
      "driver": "Quark",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"cookie\":\"b-user-id=e01905c2-5b9c-72b7-6a3a-1bb07b701e9c;_UP_A4A_11_=wb9661037bb640aea95721c202bfd35f;b-user-id=e01905c2-5b9c-72b7-6a3a-1bb07b701e9c;CwsSessionId=c9f4e034-2b26-403f-9ea0-de6a1be3d6eb;__wpkreporterwid_=3338f5e5-a132-4e15-a3d8-50b70419afee;__itrace_wid=ebeabd37-f989-41df-a244-ac8a058dcb4f;__sdid=AASLdKsFl66cFb+Fsoju0g2eLNPBsOfItRAPWfj+gmPwnNL4a9pFvqSm89GwbDaYW4w=;xlly_s=1;ctoken=urSlS8KMzuiA2M8c6Dttva54;web-grey-id=9250f02d-ed14-3301-55e6-41a9e60e36c3;web-grey-id.sig=d2Wkh_p1enPQcjBQLE54B-iZVcCQjj49KuBMmdW4lik;grey-id=c568a64a-c449-7fc1-9cbc-072e0378c601;grey-id.sig=BKSWfP0gUvEMY3fWXBPr8dUf5jniqlx4sUvVTvRziCw;isQuark=true;isQuark.sig=hUgqObykqFom5Y09bll94T1sS9abT1X-4Df_lzgl8nM;isg=BPr6FJrvSZMDj8TzfgLt-K4VSyAcq36Fe8hqzgTzgA1Y95ox7DrrlcBEQ4Mr5_Yd;tfstk=g2WiFlsOC1R1ewQ-WwJ_wf3JJaVKCc9XRZHvkKL4Te8BklsA0KkVkip9gPsA-E8eqc5TlKlDLZ7YfoT4SwqcWiMv7FBvnI7JQI19kFLDni_uvze8eGs6hpz8y8dsntqehEyv3WpUWtNrKze8eGPwfKIUyOEW-GL60K-wgKJUxnxM3xRVueRe433w3K74xB-k0A-wgnuFY3TeuKJVuMrHcvEx3UXVd9zEhXP7oT1PKhAMzMVS3xbteCYPteD4z9xiuUSw-xk258A8bMjTSYspCM7k2NeEIaj5dwxFz-4Hhw1VunbUFqp1wN6WtMNrLMpM8Q-PLokykOfd4evo0RSHIFAPBCy04aSh0_dhpuyWId8NMdsxqPIhINI1KinqTdvOtQXMU8gwk6IlnnXblJblV9_HYay07goqTbuLvxtUD9ljGC-BxUK-iGMwLCr2bkqnN5OwAhU8xkcjGC-BxUE3xbg6_HtTy;_UP_F7E_8D_=NHgG5W%2BoBaayFttEsrehSwkjxQVHZKJArtOFmrP%2F5Q50XQzuJBCvaVLDDVA7JqQdKWRvQZKRMx2pcUe9jZI%2Bxpr1WkQL6QwPm1P4sD4fnHqwPMpd0%2B7BZarlx5I0Wl5nDsG05Cf8pRZwZDzB3oYCMu%2B2E5KUgwPX6RoHEkf8wVft05k05ngkGyHsIakZbjBMQlwW1OikDv7WphBva3lQbskaRCzveWa6F2D5ShDp5xaYh2rmsI6eQl8IaiP9jBN5rPsU17bDenKj%2Bhm3mVYTBSQI4DlGUbtPZ%2FGA1kMkAh0jtD9ufGqk79Uxi0xHOqsZoAg3J36dS9adhc5VTnv%2BjWSpj%2B0v9aqQoAg3J36dS9ZU25CTU1P0WsIDEnp%2BzT9l6QFa%2Funqf%2BpNktF%2FskRKCJPGNxq9uNZW;_UP_D_=pc;__pus=e3564e13b0d1a8edad20f06f46e1bc0aAATWKAw7etRAzGRseaQjLi3a3VjtNJcaXbwTPwk1uNi498dA9VtHTwHcniBcaPCWnHv5DptK8O/pZBXsMTYPxscI;__kp=b87bdbd0-0b8b-11f0-a88b-8f2d5771d333;__kps=AASIFFQeWlSbV6tb/ZZXHNOg;__ktd=mWEOIDNJ93Ju3rBd7/4qsA==;__uid=AASIFFQeWlSbV6tb/ZZXHNOg;__puus=b68217dca40fbc3b3cfc9ba6f9f80a24AASZ+M/v+ggxnH4Q3PCgtghFX2QSSF35mViYKCYXb15nyiGjuuMt6ViTbB6BDc8dPVaIwk06nNmA9YrCjTiIH1p9FUF8FbD37qwntgx8Qj3KNcxmrNECE9nif4BXOS6vVk83R5Z7SSZlYnS8Hr8yubyOItKxp9rNPmIms95IJpPT5L7+Cpe3ifTjqjnFXyQ1jjBv3yS+OHhzsajaVwiBu0xG\",\"root_folder_id\":\"3f234de066a540abab74cd2234fb9010\",\"order_by\":\"none\",\"order_direction\":\"asc\",\"use_transcoding_address\":false,\"only_list_video_file\":false,\"AdditionVersion\":2}",
      "remark": "",
      "modified": "2025-09-05T07:22:04.8768308Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 10,
      "mount_path": "/Mega",
      "order": 6,
      "driver": "Mega_nz",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"email\":\"jhx2471717907@gmail.com\",\"password\":\"2x!bmTyyCxCHmMY\",\"two_fa_code\":\"\",\"two_fa_secret\":\"\"}",
      "remark": "",
      "modified": "2025-08-28T14:41:32.83908528Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 18,
      "mount_path": "/OPEN/115CLOUD",
      "order": 6,
      "driver": "115 Open",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_id\":\"3051741702973816593\",\"order_by\":\"\",\"order_direction\":\"\",\"limit_rate\":0,\"access_token\":\"brbzp.081362c3c72ffbac17db08b8bfb023d2.ca4f082fe258d97ed1f97eea69b677cd15fde824155080891ecc02295613bc93\",\"refresh_token\":\"brbzp.b6f32ee691f689c25834b02d98f494f6b23f56160d45d23b2bd92c1c8577d7b3.676dbb9575e764b473ec45ae465b066244efbf453f01a8b8e337076fe295d716\"}",
      "remark": "",
      "modified": "2025-09-05T07:21:56.4156358Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 11,
      "mount_path": "/Google",
      "order": 7,
      "driver": "GoogleDrive",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_id\":\"root\",\"refresh_token\":\"1//0e8fpzIFm2Tu5CgYIARAAGA4SNwF-L9Ir2saFCwtuT9k7hiFNUa9GcYcFLL1IICVs03JHHpEnfOkgg9S1Th7QWElIBAuI3k_W_6A\",\"order_by\":\"\",\"order_direction\":\"\",\"use_online_api\":false,\"api_url_address\":\"\",\"client_id\":\"202264815644.apps.googleusercontent.com\",\"client_secret\":\"X4Z3ca8xfWDb1Voo-F9a7ZxJ\",\"chunk_size\":5}",
      "remark": "",
      "modified": "2025-07-11T09:15:41.14577768Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 5,
      "mount_path": "/OPEN/百度",
      "order": 8,
      "driver": "BaiduNetdisk",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_path\":\"/OPEN\",\"order_by\":\"name\",\"order_direction\":\"asc\",\"download_api\":\"official\",\"use_online_api\":false,\"api_url_address\":\"\",\"client_id\":\"iYCeC9g08h5vuP9UqvPHKKSVrKFXGa1v\",\"client_secret\":\"jXiFMOPVPCWlO2M5CwWQzffpNPaGTRBG\",\"custom_crack_ua\":\"pan.baidu.com\",\"AccessToken\":\"121.508552d88b59301a04c777bcdff83954.YHP_qEK7Dd55TIa0hG_chlmoFsss2pHRaueTD6e.lDEAOA\",\"refresh_token\":\"122.36828eebd1cdf66d560c6e21e2df059c.YllG5oJAloBCISjXeWbDSWa3tyYoPMuXitBKQIe.mq2Vlw\",\"upload_thread\":\"3\",\"upload_api\":\"https://d.pcs.baidu.com\",\"custom_upload_part_size\":0,\"low_bandwith_upload_mode\":false,\"only_list_video_file\":false}",
      "remark": "",
      "modified": "2025-09-05T07:20:54.68837928Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 12,
      "mount_path": "/OPEN/Backblaze",
      "order": 8,
      "driver": "S3",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_path\":\"/OPEN\",\"bucket\":\"xrjhxxr\",\"endpoint\":\"https://s3.us-east-005.backblazeb2.com/\",\"region\":\"s3.us-east-005.backblazeb2.com\",\"access_key_id\":\"00547708a0629e90000000001\",\"secret_access_key\":\"K005rbd4/brPbq3SQcbwSjwdxr85DA8\",\"session_token\":\"\",\"custom_host\":\"\",\"enable_custom_host_presign\":false,\"sign_url_expire\":4,\"placeholder\":\"\",\"force_path_style\":false,\"list_object_version\":\"v1\",\"remove_bucket\":false,\"add_filename_to_disposition\":false}",
      "remark": "",
      "modified": "2025-07-11T09:15:42.05099028Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 13,
      "mount_path": "/InfiniCLOUD",
      "order": 8,
      "driver": "WebDav",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"vendor\":\"other\",\"address\":\"https://toi.teracloud.jp/dav/\",\"username\":\"jhxxr\",\"password\":\"fkb2jDdMwVHPXB3G\",\"root_folder_path\":\"/\",\"tls_insecure_skip_verify\":false}",
      "remark": "",
      "modified": "2025-07-11T09:15:42.32000696Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": true,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": false,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 6,
      "mount_path": "/OPEN/Terabox",
      "order": 9,
      "driver": "Terabox",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_path\":\"/OPEN\",\"cookie\":\"csrfToken=KhP5TrD8yknE-8rCg1tugor2; browserid=7DjzXkRq3Zv4MjLsbkH5pi_LRitCKb8uzDhRhqUOFh26SwptZDJyORZMy_k=; lang=en; __bid_n=1866347a624f0889804207; _ga=GA1.1.768852029.1676702888; G_ENABLED_IDPS=google; G_AUTHUSER_H=0; ndus=YT7_SCxteHuifVybfSRETv4YIHDfdZW9eP0Qo7tT; ndut_fmt=A118E8879BB2FFF8A478AA7A810FDBF7AE8C1FBB32A91EA1175C648758AC8EB7; _ga_06ZNKL8C2E=GS1.1.1676702887.1.1.1676703004.3.0.0; ab_sr=1.0.1_NmFmYTMxZThkYTkwN2JlYjA4NGJiYWMyZWI3ZTYxNGI2ZGViYzAxNTMyNTdlYjVjODM1NmQwYzY2ZjU0NzU2N2IzOTg4NjdkYmM5OTIyYmEyZGNlYzEwYzRlMjQ2NWY0MWIyMDYxNjQ4ODM3Y2MyZDU0Njg5MzI4MGViOWNiYTIwMmQ2OWIzMDk5YWMwYzk2NTExZDExMmE5MWMzODBiMg==\",\"download_api\":\"crack\",\"order_by\":\"name\",\"order_direction\":\"asc\"}",
      "remark": "",
      "modified": "2025-09-05T07:21:38.2213394Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 9,
      "mount_path": "/Terabox",
      "order": 9,
      "driver": "Terabox",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_path\":\"/\",\"cookie\":\"csrfToken=KhP5TrD8yknE-8rCg1tugor2; browserid=7DjzXkRq3Zv4MjLsbkH5pi_LRitCKb8uzDhRhqUOFh26SwptZDJyORZMy_k=; lang=en; __bid_n=1866347a624f0889804207; _ga=GA1.1.768852029.1676702888; G_ENABLED_IDPS=google; G_AUTHUSER_H=0; ndus=YT7_SCxteHuifVybfSRETv4YIHDfdZW9eP0Qo7tT; ndut_fmt=A118E8879BB2FFF8A478AA7A810FDBF7AE8C1FBB32A91EA1175C648758AC8EB7; _ga_06ZNKL8C2E=GS1.1.1676702887.1.1.1676703004.3.0.0; ab_sr=1.0.1_NmFmYTMxZThkYTkwN2JlYjA4NGJiYWMyZWI3ZTYxNGI2ZGViYzAxNTMyNTdlYjVjODM1NmQwYzY2ZjU0NzU2N2IzOTg4NjdkYmM5OTIyYmEyZGNlYzEwYzRlMjQ2NWY0MWIyMDYxNjQ4ODM3Y2MyZDU0Njg5MzI4MGViOWNiYTIwMmQ2OWIzMDk5YWMwYzk2NTExZDExMmE5MWMzODBiMg==\",\"download_api\":\"crack\",\"order_by\":\"name\",\"order_direction\":\"asc\"}",
      "remark": "",
      "modified": "2025-09-05T07:20:41.8818534Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 15,
      "mount_path": "/OPEN/直链下载",
      "order": 100,
      "driver": "UrlTree",
      "cache_expiration": 0,
      "status": "work",
      "addition": "{\"url_structure\":\"\\n软件:\\n  Windows:\\n    Clash_for_windows:https://github.com/Fndroid/clash_for_windows_pkg/releases/download/0.20.37/Clash.for.Windows.Setup.0.20.37.exe\\n  安卓:\\n    电报:https://d.apkpure.com/b/APK/org.telegram.plus?version=latest\\n图片:\",\"head_size\":false,\"writable\":false}",
      "remark": "",
      "modified": "2025-09-05T07:20:12.65228912Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": true,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 4,
      "mount_path": "/PikPak",
      "order": 101,
      "driver": "PikPak",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_id\":\"\",\"username\":\"jhx2471717907@gmail.com\",\"password\":\"jhx666666\",\"platform\":\"android\",\"refresh_token\":\"os.zSxobCDBJmi6j-wFjNg3ZbWBL1VejnK7rTNPQa9bXq5otVor3YiL0GBmWzsF\",\"captcha_token\":\"\",\"device_id\":\"87eb44ba83d6dbcdd481a0bf9c508e3c\",\"disable_media_link\":false}",
      "remark": "",
      "modified": "2025-09-05T07:23:01.9741216Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": true,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 2,
      "mount_path": "/backblaze-blinko",
      "order": 102,
      "driver": "S3",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_path\":\"/\",\"bucket\":\"xr-blinko\",\"endpoint\":\"https://s3.us-east-005.backblazeb2.com/\",\"region\":\"alist\",\"access_key_id\":\"00547708a0629e90000000002\",\"secret_access_key\":\"K005bZQ5kumSSfL/7/gnxpWQLggXzdY\",\"session_token\":\"\",\"custom_host\":\"\",\"enable_custom_host_presign\":false,\"sign_url_expire\":4,\"placeholder\":\"\",\"force_path_style\":false,\"list_object_version\":\"v1\",\"remove_bucket\":false,\"add_filename_to_disposition\":false}",
      "remark": "",
      "modified": "2025-09-05T07:23:15.24250436Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "native_proxy",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    },
    {
      "id": 20,
      "mount_path": "/OPEN/GitHub加速下载",
      "order": 999,
      "driver": "GitHub Releases",
      "cache_expiration": 30,
      "status": "work",
      "addition": "{\"root_folder_id\":\"\",\"repo_structure\":\"OpenListTeam/OpenList\\n\",\"show_readme\":false,\"token\":\"\",\"show_all_version\":false,\"gh_proxy\":\"\"}",
      "remark": "",
      "modified": "2025-08-28T14:52:54.94298944Z",
      "disabled": false,
      "disable_index": false,
      "enable_sign": false,
      "order_by": "",
      "order_direction": "",
      "extract_folder": "",
      "web_proxy": true,
      "webdav_policy": "302_redirect",
      "proxy_range": false,
      "down_proxy_url": "",
      "disable_proxy_sign": false
    }
  ],
  "metas": [
    {
      "id": 1,
      "path": "/OPEN",
      "password": "",
      "p_sub": false,
      "write": false,
      "w_sub": false,
      "hide": "",
      "h_sub": false,
      "readme": "# `提醒`\n国内优化[地址](https://alistplus.xrsite.online/)\n\n全速拉满，重新部署于大带宽服务器，可流畅下载与播放。\n\n[服务器监控](https://vps.jhxjhx.top/)\n\n# 星染储存库\n\n本服务部署于`美国圣何塞`。已优选IP最佳的服务器部署服务\n\n# 注意事项\n\n## 文件夹指引\n\n| 文件夹名称 |          描述          |\n| :--------: | :--------------------: |\n|  阿里OPEN  | 我的阿里云盘，部分资源 |\n|    百度    |   百度云盘，部分资源   |\n|  联通云盘  | 最新不限速网盘，主更 |\n|  115网盘  |  限速，仅备份 |\n\n# 链接\n\n[站点导航](https://link.jhxjhx.top/)        [博客](https://blog.jhxjhx.top/)",
      "r_sub": false,
      "header": "星染网盘",
      "header_sub": false
    },
    {
      "id": 2,
      "path": "/PikPak",
      "password": "jhx",
      "p_sub": false,
      "write": false,
      "w_sub": false,
      "hide": "",
      "h_sub": false,
      "readme": "",
      "r_sub": false,
      "header": "",
      "header_sub": false
    },
    {
      "id": 3,
      "path": "/OPEN/123云",
      "password": "",
      "p_sub": false,
      "write": false,
      "w_sub": false,
      "hide": "",
      "h_sub": false,
      "readme": "# 123云盘\n提供上传权限，在OPEN文件夹中\n注意：123云盘资源只能下载，无法预览",
      "r_sub": false,
      "header": "",
      "header_sub": false
    },
    {
      "id": 4,
      "path": "/OPEN/123云/OPEN",
      "password": "",
      "p_sub": false,
      "write": true,
      "w_sub": false,
      "hide": "",
      "h_sub": false,
      "readme": "# 开放上传权限\n注意随时会筛查，违规文件将删除",
      "r_sub": false,
      "header": "",
      "header_sub": false
    },
    {
      "id": 5,
      "path": "/OPEN/Backblaze",
      "password": "",
      "p_sub": false,
      "write": false,
      "w_sub": false,
      "hide": "/[bzEmpty]/g",
      "h_sub": false,
      "readme": "",
      "r_sub": false,
      "header": "",
      "header_sub": false
    }
  ]
}