import { getFuLocaleMessage } from '@/lang/fu';

const message = {
    commons: {
        true: '是',
        false: '否',
        example: '例：',
        fit2cloud: '飛致雲',
        lingxia: 'LXware',
        colon: '：',
        button: {
            run: '執行',
            prev: '上一步',
            next: '下一步',
            create: '建立',
            add: '新增',
            select: '選擇',
            save: '儲存',
            set: '設定',
            sync: '同步',
            delete: '刪除',
            edit: '編輯',
            enable: '啟用',
            disable: '停用',
            confirm: '確認',
            cancel: '取消',
            reset: '重設',
            setDefault: '復原預設',
            restart: '重新啟動',
            conn: '連接',
            disConn: '斷開',
            clean: '清除',
            cleanAll: '清空所有',
            selectAll: '全選',
            login: '登入',
            close: '關閉',
            stop: '停止',
            start: '啟動',
            view: '查看',
            watch: '追蹤',
            handle: '執行',
            clone: '複製',
            expand: '展開',
            collapse: '收起',
            log: '日誌',
            back: '返回',
            backup: '備份',
            recover: '復原',
            retry: '重試',
            upload: '上傳',
            download: '下載',
            init: '初始化',
            verify: '驗證',
            saveAndEnable: '儲存並啟用',
            import: '匯入',
            importAll: '全部匯入',
            export: '匯出',
            power: '提交',
            search: '搜尋',
            refresh: '重新整理',
            reconnect: '重新連線',
            get: '取得',
            upgrade: '升級',
            update: '更新',
            ignore: '忽略升級',
            copy: '複製',
            random: '產生',
            install: '安裝',
            uninstall: '移除',
            fullscreen: '網頁全螢幕',
            quitFullscreen: '退出全螢幕',
            showAll: '顯示所有',
            hideSome: '隱藏部分',
            agree: '同意',
            notAgree: '不同意',
            preview: '預覽',
            open: '開啟',
            notSave: '不儲存',
            createNewFolder: '建立資料夾',
            createNewFile: '建立檔案',
            helpDoc: '說明文件',
            bind: '綁定',
            unbind: '解綁',
            cover: '覆蓋',
            skip: '跳過',
            fix: '修復',
            down: '停止',
            up: '啟動',
            sure: '確定',
            show: '顯示',
            hide: '隱藏',
            visit: '開啟',
            migrate: '遷移',
            tip: '提示',
        },
        operate: {
            start: '啟動',
            stop: '停止',
            restart: '重新啟動',
            reload: '重新載入',
            rebuild: '重建',
            sync: '同步',
            up: '啟動',
            down: '停止',
            delete: '刪除',
        },
        search: {
            timeStart: '開始時間',
            timeEnd: '結束時間',
            timeRange: '至',
            dateStart: '開始日期',
            dateEnd: '結束日期',
            date: '日期',
        },
        table: {
            all: '所有',
            total: '共 {0} 條',
            name: '名稱',
            type: '類型',
            card: '卡片',
            table: '表格',
            status: '狀態',
            statusSuccess: '成功',
            statusFailed: '失敗',
            statusWaiting: '等待中...',
            records: '任務輸出',
            group: '分組',
            default: '預設',
            createdAt: '建立時間',
            publishedAt: '發布時間',
            date: '時間',
            updatedAt: '更新時間',
            operate: '操作',
            message: '資訊',
            description: '描述',
            interval: '耗時',
            user: '使用者',
            title: '標題',
            port: '埠',
            forward: '轉發',
            protocol: '協議',
            tableSetting: '列表設定',
            refreshRate: '重新整理頻率',
            noRefresh: '不重新整理',
            selectColumn: '選擇列',
            local: '本機',
            serialNumber: '序號',
            manageGroup: '管理群組',
            backToList: '返回列表',
            keepEdit: '繼續編輯',
            pin: '置頂',
            unpin: '取消置頂',
            creator: '建立者',
            updater: '更新者',
        },
        loadingText: {
            Upgrading: '系統升級中，請稍候',
            Restarting: '系統重新啟動中，請稍候',
            Recovering: '快照復原中，請稍候',
            Rollbacking: '快照回滾中，請稍候',
        },
        msg: {
            noneData: '暫無資料',
            delete: '刪除 操作不可回滾，是否繼續？',
            clean: '清空 操作不可回滾，是否繼續？',
            closeDrawerHelper: '系統可能不會儲存您所做的變更，是否繼續？',
            deleteSuccess: '刪除成功',
            loginSuccess: '登入成功',
            operationSuccess: '操作成功',
            operationFailed: '操作失敗',
            copySuccess: '複製成功',
            notSupportOperation: '不支援此操作',
            requestTimeout: '請求逾時，請稍後重試',
            infoTitle: '提示',
            notRecords: '當前任務無執行記錄',
            sureLogOut: '確認登出？',
            createSuccess: '建立成功',
            updateSuccess: '更新成功',
            uploadSuccess: '上傳成功',
            operateConfirm: '確認操作請輸入 ',
            inputOrSelect: '請選擇或輸入',
            selectOne: '請選擇一個{0}',
            copyFailed: '複製失敗',
            operatorHelper: '將對以下{0}進行{1}操作，是否繼續？',
            backupSuccess: '備份成功',
            restoreSuccess: '復原成功',
            notFound: '抱歉，頁面不存在',
            unSupportType: '不支援目前檔案類型',
            unSupportSize: '上傳檔案超過 {0}M，請確認',
            fileExist: '資料夾已有同名檔案，不支援重複上傳',
            fileNameErr: '僅支援英文/中文/數字/.-_，長度 1-256 的檔名',
            confirmNoNull: '請確認 {0} 值不為空',
            errPort: '錯誤的埠資訊，請確認',
            remove: '移出',
            backupHelper: '目前操作將對 {0} 進行備份，是否繼續？',
            recoverHelper: '將從 {0} 檔案復原，此操作不可回滾，是否繼續？',
            refreshSuccess: '重新整理成功',
            rootInfoErr: '已經是根目錄了',
            resetSuccess: '重設成功',
            creatingInfo: '正在建立，無需此操作',
            installSuccess: '安裝成功',
            uninstallSuccess: '移除成功',
            offlineTips: '離線版本不支援此操作',
            errImportFormat: '匯入資料或格式異常，請檢查後重試',
            importHelper: '匯入衝突或重複資料時，將以匯入內容為標準，更新原資料庫資料。',
            errImport: '檔案內容異常：',
        },
        login: {
            username: '使用者名稱',
            password: '密碼',
            passkey: '通行金鑰登入',
            otherLoginMethods: '其他方式登入',
            welcome: '歡迎回來，請輸入帳號密碼',
            errorAuthInfo: '您輸入的使用者名稱或密碼不正確，請重新輸入',
            errorMfaInfo: '錯誤的驗證資訊，請重試',
            captchaHelper: '驗證碼',
            errorCaptcha: '驗證碼錯誤',
            codeInput: '請輸入 MFA 驗證器的 6 位驗證碼',
            mfaTitle: 'MFA 認證',
            mfaCode: 'MFA 驗證碼',
            title: 'Linux 伺服器維運面板',
            licenseHelper: '《飛致雲社區軟體許可協議》',
            errorAgree: '請點選同意社區軟體許可協議',
            agreeTitle: '服務協議及隱私保護',
            agreeContent:
                '為了更好的保障您的合法權益，請您閱讀並同意以下協議 &laquo; <a href="https://www.fit2cloud.com/legal/licenses.html" target="_blank"> 飛致雲社區軟體許可協議 </a> &raquo;',
            logout: '登出',
            passkeyFailed: '通行金鑰登入失敗，請重試',
            passkeyNotSupported: '目前瀏覽器或環境不支援通行金鑰',
            passkeyToPassword: '無法使用通行金鑰？改用帳密登入',
        },
        rule: {
            username: '請輸入使用者名稱',
            password: '請輸入密碼',
            rePassword: '密碼不一致，請檢查後重新輸入',
            requiredInput: '請填寫必填項',
            requiredSelect: '請選擇必選項',
            illegalChar: '暫不支援注入字元 & ; $ \' ` ( ) " > < ｜',
            illegalInput: '輸入框中存在不合法字元',
            commonName: '支援非特殊字元開頭,英文、中文、數字、.-和_,長度1-128',
            userName: '支援非特殊字元開頭、英文、中文、數字和_,長度3-30',
            simpleName: '支援非底線開頭，英文、數字、_,長度3-30',
            simplePassword: '支援非底線開頭，英文、數字、_,長度1-30',
            dbName: '支援非特殊字元開頭，英文、中文、數字、.-_，長度1-64',
            composeName: '支援非特殊字元開頭，小寫英文、數字、-和_，長度1-256',
            imageName: '支援非特殊字元開頭、英文、數字、:@/.-_,長度1-256',
            volumeName: '支援英文、數字、.-和_,長度2-30',
            supervisorName: '支援非特殊字元開頭,英文、數字、-和_,長度1-128',
            complexityPassword: '支援長度為 8-30 位，並包含字母、數字、特殊字元中至少兩項的密碼組合',
            commonPassword: '請輸入 6 位以上長度密碼',
            linuxName: '長度1-128，名稱不能含有{0}等符號',
            email: '請輸入正確的信箱',
            number: '請輸入正確的數字',
            integer: '請輸入正確的正整數',
            ip: '請輸入正確的 IP 位址',
            host: '請輸入正確的 IP 或域名',
            hostHelper: '支援輸入 ip 或域名',
            port: '請輸入正確的埠,1-65535',
            domain: '網域格式錯誤',
            databaseName: '支援英文、數字、_,長度1-30',
            numberRange: '數字範圍: {0} - {1}',
            paramName: '支援英文、數字、.-和_,長度2-64',
            paramComplexity: '支援英文、數字、{0},長度6-128，特殊字元不能在首尾',
            paramUrlAndPort: '格式為 http(s)://(域名/ip):(埠)',
            nginxDoc: '僅支援英文大小寫，數字，和.',
            appName: '支援英文、數字、-和_,長度2-30,並且不能以-_開頭和結尾',
            containerName: '支援字母、數字、_-和.,不能以-_或.開頭,長度2-128',
            mirror: '支援以 http(s):// 開頭，英文大小寫，數字，. / 和 - 的映像加速地址，且不能有空行',
            disableFunction: '僅支援字母、下劃線和,',
            leechExts: '僅支援字母數字和,',
            paramSimple: '支援小寫字母和數字,長度 1-128',
            filePermission: '權限錯誤',
            formatErr: '格式錯誤，檢查後重試',
            phpExtension: '僅支援 , _ 小寫英文和數字',
            paramHttp: '必須以 http:// 或 https:// 開頭',
            phone: '手機號碼格式不正確',
            authBasicPassword: '支援字母、數字以及常見特殊字元，長度1-72',
            length128Err: '長度不能超過128位',
            maxLength: '長度不能超過 {0} 位',
            alias: '支援英文、數字、-和_,長度1-128,並且不能以-、_開頭或結尾',
            vmName: '支援英文字母、數字、「.」、「-」和「_」；長度為 1-64；必須以字母或數字開頭。',
            vmNetwork: '支援英文字母、數字、「.」、「:」、「-」和「_」；長度為 1-64；必須以字母或數字開頭。',
            duplicate: '不能重複',
            selectHelper: '請選擇正確的 {0} 檔案',
            ipErr: '請輸入正確的 IP 位址',
        },
        res: {
            paramError: '請求失敗,請稍後重試!',
            forbidden: '目前使用者無權限',
            serverError: '服務異常',
            notFound: '資源不存在',
            commonError: '請求失敗',
        },
        service: {
            serviceNotStarted: '尚未啟動 {0} 服務',
        },
        status: {
            running: '已啟動',
            done: '已完成',
            scanFailed: '未完成',
            success: '成功',
            waiting: '請等待',
            waitForUpgrade: '等待升級',
            failed: '失敗',
            stopped: '已停止',
            error: '失敗',
            created: '已建立',
            restarting: '重新啟動中',
            uploading: '上傳中',
            unhealthy: '異常',
            removing: '移除中',
            paused: '已暫停',
            exited: '已停止',
            partial: '部分啟動',
            dead: '已結束',
            installing: '安裝中',
            enabled: '已啟用',
            disabled: '已停止',
            normal: '正常',
            building: '製作映像中',
            upgrading: '升級中',
            pending: '待編輯',
            rebuilding: '重建中',
            deny: '已封鎖',
            accept: '已放行',
            used: '已使用',
            unused: '未使用',
            starting: '啟動中',
            recreating: '重建中',
            creating: '建立中',
            init: '等待申請',
            ready: '正常',
            applying: '申請中',
            uninstalling: '移除中',
            lost: '已失聯',
            bound: '已綁定',
            unbind: '未綁定',
            exceptional: '異常',
            free: '空閒',
            enable: '已啟用',
            disable: '已停止',
            deleted: '已刪除',
            notfound: '不存在',
            inactive: '未啟動',
            degraded: '降級',
            inaccessible: '無法存取',
            unknown: '未知',
            downloading: '下載中',
            packing: '打包中',
            sending: '下發中',
            healthy: '正常',
            executing: '執行中',
            installerr: '安裝失敗',
            applyerror: '申請失敗',
            systemrestart: '中斷',
            starterr: '啟動失敗',
            uperr: '啟動失敗',
            new: '新',
            conflict: '衝突',
            duplicate: '重複',
            unexecuted: '未執行',
            canceled: '已取消',
        },
        units: {
            second: '秒',
            minute: '分鐘',
            hour: '小時',
            day: '天',
            week: '周',
            month: '月',
            year: '年',
            time: '次',
            core: '核',
            secondUnit: '秒',
            minuteUnit: '分鐘',
            hourUnit: '小時',
            dayUnit: '天',
            millisecond: '毫秒',
            semicolon: '；',
        },
        log: {
            noLog: '暫無日誌',
        },
    },
    menu: {
        home: '概覽',
        apps: '應用商店',
        website: '網站',
        project: '項目',
        config: '設定',
        ssh: 'SSH 設定',
        firewall: '防火牆',
        ssl: '憑證',
        security: '安全',
        database: '資料庫',
        aiTools: 'AI',
        mcp: 'MCP',
        container: '容器',
        cronjob: '計劃任務',
        system: '系統',
        files: '檔案',
        monitor: '監控',
        terminal: '終端',
        settings: '面板設定',
        toolbox: '工具箱',
        logs: '日誌審計',
        runtime: '執行環境',
        processManage: '行程管理',
        process: '行程',
        network: '網路',
        supervisor: '行程守護',
        tamper: '防篡改',
        app: '應用',
        msgCenter: '任務中心',
        disk: '磁碟管理',
        template: '模板',
        filter: '篩選器',
    },
    home: {
        recommend: '推薦',
        dir: '目錄',
        alias: '別名',
        quickDir: '快捷目錄',
        minQuickJump: '請至少設定一個快速跳轉入口',
        maxQuickJump: '最多可設定四個快速跳轉入口',
        database: '資料庫 - 全部',
        restart_1panel: '重新啟動面板',
        restart_system: '重新啟動伺服器',
        operationSuccess: '操作成功，正在重新啟動，請稍後手動重新整理瀏覽器',
        entranceHelper: '設定安全入口有利於提高系統的安全性，如有需要，前往 面板設定-安全 中，啟用安全入口',
        appInstalled: '已安裝應用',
        systemInfo: '系統資訊',
        hostname: '主機名稱',
        platformVersion: '發行版本',
        kernelVersion: '核心版本',
        kernelArch: '系統類型',
        network: '流量',
        io: '磁碟 IO',
        ip: '主機位址',
        proxy: '系統代理',
        baseInfo: '基本資訊',
        totalSend: '總發送',
        totalRecv: '總接收',
        rwPerSecond: '讀寫次數',
        ioDelay: '讀寫延遲',
        uptime: '啟動時間',
        runningTime: '執行時間',
        mem: '系統記憶體',
        swapMem: 'Swap 分區',
        runSmoothly: '執行流暢',
        runNormal: '執行正常',
        runSlowly: '執行緩慢',
        runJam: '執行堵塞',
        core: '物理核心',
        logicCore: '邏輯核心',
        corePercent: '核心使用率',
        cpuFrequency: 'CPU 頻率',
        cpuDetailedPercent: 'CPU 佔用',
        cpuUser: '使用者態',
        cpuSystem: '內核態',
        cpuIdle: '空閒',
        cpuIrq: '硬中斷',
        cpuSoftirq: '軟中斷',
        cpuSteal: '被VM搶佔',
        cpuTop: 'CPU 佔用率 Top5 的行程資訊',
        memTop: '記憶體佔用率 Top5 的行程資訊',
        loadAverage: '最近 {0} 分鐘平均負載',
        load: '負載',
        mount: '掛載點',
        fileSystem: '檔案系統',
        total: '總計',
        used: '已用',
        cache: '快取',
        free: '空閒',
        shard: '分片',
        available: '可用',
        percent: '使用率',
        goInstall: '去安裝',
        networkCard: '網卡',
        disk: '磁碟',
        memo: '備忘錄',
        memoPlaceholder: '點選編輯按鈕啟用編輯',
        carouselSetting: '輪播設定',
        tooltipSensitiveInfo: '顯示/隱藏敏感資訊',
    },
    tabs: {
        more: '更多',
        hide: '收起',
        closeLeft: '關閉左側',
        closeRight: '關閉右側',
        closeCurrent: '關閉目前',
        closeOther: '關閉其它',
        closeAll: '關閉所有',
    },
    header: {
        logout: '登出',
    },
    database: {
        manage: '管理',
        deleteBackupHelper: '同時刪除資料庫備份',
        delete: '刪除操作無法回滾，請輸入 "',
        deleteHelper: '" 刪除此資料庫',
        deleteUserHelper: '" 刪除此使用者',
        userBoundDatabases: '使用者已取得以下資料庫的存取授權：',
        noMysql: '資料庫服務 (MySQL 或 MariaDB)',
        noPostgresql: '資料庫服務 PostgreSQL',
        goUpgrade: '去應用列表升級',
        goInstall: '去應用商店安裝',
        isDelete: '已刪除',
        permission: '權限',
        format: '字元集',
        collation: '排序規則',
        collationHelper: '為空則使用 {0} 字元集的預設排序規則',
        permissionForIP: '指定 IP',
        permissionAll: '所有人(%)',
        localhostHelper: '將容器部署的資料庫權限設定為"localhost"會導致容器外部無法存取，請謹慎選擇',
        databaseConnInfo: '連接資訊',
        rootPassword: 'root 密碼',
        serviceName: '服務名稱',
        serviceNameHelper: '用於同一 network 下的容器間存取',
        backupList: '備份列表',
        loadBackup: '匯入備份',
        localUpload: '本機上傳',
        hostSelect: '伺服器選擇',
        selectHelper: '是否確認匯入備份檔案 {0}？',
        remoteAccess: '遠端存取',
        remoteHelper: '多個 ip 以逗號分隔，例：172.16.10.111,172.16.10.112',
        remoteConnHelper: 'root 帳號遠端連接 MySQL 有安全風險，開啟需謹慎',
        changePassword: '改密',
        changeConnHelper: '此操作將修改目前資料庫 {0}，是否繼續？',
        changePasswordHelper: '目前資料庫已經關聯應用，修改密碼將同步修改應用中資料庫密碼，修改後重新啟動生效。',
        recoverTimeoutHelper: '-1 表示不限制逾時時間',
        portHelper: '該埠為容器對外暴露埠，修改需要單獨儲存並且重新啟動容器',
        confChange: '設定修改',
        confNotFound: '未能找到該應用設定檔，請在應用商店升級該應用至最新版本後重試',
        loadFromRemote: '從伺服器同步',
        userBind: '綁定使用者',
        userAuthorization: '使用者授權',
        noUserAuthorization: '不授權',
        authorizedDatabaseCount: '已授權 {0} 個資料庫',
        authorizationManagement: '授權管理',
        authorizedUsers: '已授權使用者',
        authorizedUserCount: '{0} 個使用者',
        addUserAuthorization: '新增使用者授權',
        revokeAuthorization: '撤銷授權',
        revokeAuthorizationHelper: '確定撤銷使用者 {0} 對資料庫 {1} 的存取授權嗎？',
        supplementPassword: '補充密碼',
        supplementPasswordHelper: '僅將現有密碼儲存到 1Panel，不會修改 MySQL 使用者密碼。',
        noUserBind: '未綁定',
        pgBindHelper: '此操作用於建立新使用者並將其綁定到目標資料庫，暫不支援選擇已存在於資料庫中的使用者。',
        pgSuperUser: '超級使用者',
        loadFromRemoteHelper: '此操作將同步伺服器上的資料庫、使用者及授權資訊到 1Panel，是否繼續？',
        passwordHelper: '無法取得，可點選修改',
        remote: '遠端',
        remoteDB: '遠端伺服器',
        createRemoteDB: '新增遠端伺服器',
        unBindRemoteDB: '解綁遠端伺服器',
        unBindForce: '強制解綁',
        unBindForceHelper: '忽略解綁過程中的所有錯誤，確保最終操作成功',
        unBindRemoteHelper: '解綁遠端資料庫只會刪除綁定關係，不會直接刪除遠端資料庫',
        editRemoteDB: '編輯遠端伺服器',
        localDB: '本機資料庫',
        address: '資料庫位址',
        version: '資料庫版本',
        userHelper: 'root 使用者或擁有 root 權限的資料庫使用者',
        mongodbPermissionDbOwner: '資料庫擁有者',
        mongodbPermissionRead: '讀取資料',
        mongodbPermissionReadWrite: '讀取和寫入資料',
        mongodbPermissionUserAdmin: '使用者管理員',
        pgUserHelper: '具有超級管理員權限的資料庫使用者',
        ssl: '使用 SSL',
        clientKey: '用戶端私鑰',
        clientCert: '用戶端憑證',
        hasCA: '擁有 CA 憑證',
        caCert: 'CA 憑證',
        skipVerify: '忽略校驗憑證可用性偵測',
        initialDB: '初始資料庫',
        formatHelper: '目前資料庫字元集為 {0}，字元集不一致可能導致復原失敗',
        dropHelper: '將上傳檔案拖曳到此處，或',
        clickHelper: '點選上傳',
        supportUpType:
            '僅支援 sql、sql.gz、tar.gz、.zip 檔案格式，匯入的壓縮檔案必須保證只有一個 .sql 檔案或包含 test.sql',
        currentStatus: '當前狀態',
        baseParam: '基礎參數',
        performanceParam: '效能參數',
        runTime: '啟動時間',
        connections: '總連接數',
        bytesSent: '發送',
        bytesReceived: '接收',
        queryPerSecond: '每秒查詢',
        txPerSecond: '每秒事務',
        connInfo: '活動/峰值連接數',
        connInfoHelper: '若值過大，增加 max_connections',
        threadCacheHit: '執行緒快取命中率',
        threadCacheHitHelper: '若過低,增加 thread_cache_size',
        indexHit: '索引命中率',
        indexHitHelper: '若過低,增加 key_buffer_size',
        innodbIndexHit: 'Innodb 索引命中率',
        innodbIndexHitHelper: '若過低,增加 innodb_buffer_pool_size',
        cacheHit: '查詢快取命中率',
        cacheHitHelper: '若過低,增加 query_cache_size',
        tmpTableToDB: '建立臨時表到磁碟',
        tmpTableToDBHelper: '若過大,嘗試增加 tmp_table_size',
        openTables: '已開啟的表',
        openTablesHelper: 'table_open_cache 設定值應大於等於此值',
        selectFullJoin: '沒有使用索引的量',
        selectFullJoinHelper: '若不為0，請檢查資料表的索引是否合理',
        selectRangeCheck: '沒有索引的 JOIN 量',
        selectRangeCheckHelper: '若不為0，請檢查資料表的索引是否合理',
        sortMergePasses: '排序後的合併次數',
        sortMergePassesHelper: '若值過大，增加sort_buffer_size',
        tableLocksWaited: '鎖表次數',
        tableLocksWaitedHelper: '若值過大，請考慮增加您的資料庫效能',
        performanceTuning: '效能調整',
        optimizationScheme: '最佳化方案',
        keyBufferSizeHelper: '用於索引的緩衝區大小',
        queryCacheSizeHelper: '查詢快取，不開啟請設為0',
        tmpTableSizeHelper: '臨時表快取大小',
        innodbBufferPoolSizeHelper: 'Innodb 緩衝區大小',
        innodbLogBufferSizeHelper: 'Innodb 日誌緩衝區大小',
        sortBufferSizeHelper: '* 連接數, 每個執行緒排序的緩衝大小',
        readBufferSizeHelper: '* 連接數, 讀入緩衝區大小',
        readRndBufferSizeHelper: '* 連接數, 隨機讀取緩衝區大小',
        joinBufferSizeHelper: '* 連接數, 關聯表快取大小',
        threadStackelper: '* 連接數, 每個執行緒的堆疊大小',
        binlogCacheSizeHelper: '* 連接數, 二進制日誌快取大小(4096的倍數)',
        threadCacheSizeHelper: '執行緒池大小',
        tableOpenCacheHelper: '表快取',
        maxConnectionsHelper: '最大連接數',
        restart: '重新啟動資料庫',
        slowLog: '慢日誌',
        noData: '暫無慢日誌...',
        isOn: '開啟',
        longQueryTime: '閾值(秒)',
        thresholdRangeHelper: '請輸入正確的閾值(1 - 600)',
        timeout: '逾時時間(秒)',
        timeoutHelper: '空閒連接逾時時間，0表示不斷開',
        maxclients: '最大連接數',
        requirepassHelper: '留空代表沒有設定密碼，修改需要單獨儲存並且重新啟動容器',
        databases: '資料庫數量',
        maxmemory: '最大記憶體使用',
        maxmemoryHelper: '0 表示不做限制',
        tcpPort: '目前監聽埠',
        uptimeInDays: '已執行天數',
        connectedClients: '連接的用戶端數量',
        usedMemory: '目前 Redis 使用的記憶體大小',
        usedMemoryRss: '向作業系統申請的記憶體大小',
        usedMemoryPeak: 'Redis 的記憶體消耗峰值',
        memFragmentationRatio: '記憶體碎片比率',
        totalConnectionsReceived: '執行以來連接過的用戶端的總數量',
        totalCommandsProcessed: '執行以來執行過的指令的總數量',
        instantaneousOpsPerSec: '伺服器每秒鐘執行的指令數量',
        keyspaceHits: '尋找資料庫鍵成功的次數',
        keyspaceMisses: '尋找資料庫鍵失敗的次數',
        hit: '尋找資料庫鍵命中率',
        latestForkUsec: '最近一次 fork() 操作耗費的微秒數',
        redisCliHelper: '未偵測到 redis-cli 服務，請先啟用服務',
        redisQuickCmd: 'Redis 快速指令',
        recoverHelper: '即將使用 [{0}] 對資料進行覆蓋，是否繼續？',
        mongodbRecoverDropAllCollections: '復原前清空目前資料庫',
        mongodbRecoverDropAllCollectionsHelper:
            '預設僅覆蓋既有集合，保留新增集合；啟用後將清空目前資料庫，並依備份內容復原。',
        submitIt: '覆蓋資料',
        baseConf: '基本設定',
        allConf: '全部設定',
        restartNow: '立即重新啟動',
        restartNowHelper1: '修改設定後需要重新啟動生效，若您的資料需要持久化請先執行 save 操作。',
        restartNowHelper: '修改設定後需要重新啟動生效。',
        persistence: '持久化',
        rdbHelper1: '秒內,插入',
        rdbHelper2: '條資料',
        rdbHelper3: '符合任意一個條件將會觸發RDB持久化',
        rdbInfo: '請確認規則列表中值在 1-100000 之間',
        containerConn: '容器連接',
        copyConnURL: '複製連接 URL',
        connAddress: '地址',
        containerConnHelper: 'PHP 執行環境/容器安裝的應用程式使用此連接地址',
        remoteConn: '外部連接',
        remoteConnHelper2: '非容器環境或外部連接需使用此地址。',
        remoteConnHelper3: '預設存取地址為主機IP，修改請前往面板設定頁面的「預設存取地址」設定項目。',
        localIP: '本機 IP',
    },
    aiTools: {
        agents: {
            agent: '智能體',
            account: '模型帳號',
            batchOperation: '批量操作',
            operationType: '操作類型',
            batchAction: '批量{0}',
            installSkillAction: '下發 Skill',
            batchAgentTask: '批量{0}智能體',
            dispatchAgentTask: '下發智能體{0}任務',
            dispatchTask: '下發{0}任務',
            taskSubmitted: '{0}任務已下發',
            allNodes: '所有節點',
            targetVersion: '目標版本',
            skillSource: 'Skill 來源',
            skillKeyword: 'Skill 關鍵詞',
            clawHubSkillPlaceholder: '請先搜尋並選擇 Skill',
            noAccountHint: '選擇已有模型帳號，或直接建立',
            accountCount: '模型帳號 {0} 個',
            syncAgents: '同步關聯智能體',
            syncAgentsHelper: '更新使用該模型帳號的智能體 openclaw.json',
            appVersion: '應用版本',
            webuiPort: 'WebUI 埠',
            tokenOrAuth: 'Token/Auth',
            allowedOrigins: '訪問地址',
            allowedOriginsRequired: '請至少填寫一個訪問地址',
            allowedOriginsInvalid: '訪問地址格式錯誤，請輸入 http(s)://網域或IP[:埠]',
            provider: '模型供應商',
            accountModelsHelper: '配置該帳號可提供給 OpenClaw 使用與切換的模型列表',
            accountModelsRequired: '請至少配置一個模型',
            verifyModel: '驗證模型',
            verifyModelHelper: '請選擇該帳號有權存取的模型，儲存時將使用它發送最小請求以驗證連線。',
            verifyModelRequired: '請選擇驗證模型',
            discoverModels: '取得模型',
            automaticModelDiscovery: '自動取得',
            manualModelConfiguration: '手動配置',
            discoverModelsHelper: '從供應商的 /v1/models 介面取得模型，取得後將全部加入模型池',
            discoverModelsFailedFallback: '取得模型失敗，請手動配置模型',
            discoverModelsFailedUseDefaults: '取得模型失敗，已使用預設模型',
            accountModelsDuplicate: '模型池中存在重複模型，請檢查後重試',
            modelPool: '模型池',
            fallbackModels: '備用模型',
            addFallbackModel: '新增備用模型',
            fallbackModelsEmpty: '尚未配置備用模型',
            modelInputTypes: '輸入類型',
            reasoning: '推理模型',
            verified: '驗證狀態',
            verifySkipped: '不驗證',
            skillsTab: '技能',
            pluginsTab: '外掛程式',
            pluginsInstalled: '已安裝',
            pluginsMarket: '外掛程式市集',
            pluginsMarketHint: '請輸入關鍵字搜尋外掛程式',
            pluginSearchPlaceholder: '搜尋外掛程式...',
            pluginOrigin: '來源',
            pluginOriginAll: '全部來源',
            pluginOriginBundled: '內建',
            pluginOriginExternal: '外部',
            pluginStatusAll: '全部狀態',
            pluginEnabled: '已啟用',
            pluginDisabled: '已停用',
            pluginCategory: '分類',
            pluginVerification: '驗證',
            pluginOfficial: '官方',
            pluginCommunity: '社群',
            pluginDownloads: '下載量',
            pluginEnable: '啟用',
            pluginDisable: '停用',
            pluginListEmpty: '暫無外掛程式',
            pluginSearchEmpty: '找不到相關外掛程式',
            pluginInstallConfirm: '確認安裝外掛程式 {0}？',
            pluginDisableConfirm: '確認停用外掛程式 {0}？',
            pluginUninstallConfirm: '確認解除安裝外掛程式 {0}？',
            securityTab: '安全',
            otherTab: '其他',
            timeZone: '時區',
            browserEnabled: '瀏覽器開關',
            npmRegistry: 'NPM 源',
            npmRegistryHelper: '用於 OpenClaw 外掛安裝時的 npm registry，可選擇預設來源或手動輸入自訂來源',
            npmRegistryInvalid: '請輸入正確的 NPM 源地址，需以 http:// 或 https:// 開頭',
            pluginInstallNPMRegistryHelper: '可前往 設定 -> 其他 設定 NPM 源，以加速外掛安裝',
            skillsSearchPlaceholder: '搜尋技能...',
            skillsEmpty: '暫無技能',
            skillsMarket: '技能市場',
            skillsMarketHint: '請選擇來源並搜尋技能',
            skillsMarketEmpty: '未找到相關技能',
            skillsMarketSourceClawhubGlobal: 'ClawHub（全球）',
            skillsMarketSourceClawhubChina: 'ClawHub（中國）',
            skillsMarketSourceSkillhub: 'SkillHub（騰訊）',
            skillsMarketSourceLocalHub: '本地 Skill 商店',
            skillsScore: '評分',
            skillsMarketSourceOfficial: '官方',
            versionUnsupportedTitle: '當前版本暫不支援該功能',
            versionUnsupportedHelper: '請升級 OpenClaw 到 {0} 或以上版本後使用。',
            skillsGroupBuiltIn: '內置',
            skillsGroupExternal: '外部',
            skillsGroupWorkspace: '工作區',
            switchModelSuccess: '模型切換成功',
            channelsTab: '頻道',
            agentRoleTab: '角色',
            agentRoleUnsupported: '目前僅 OpenClaw 支援角色管理。',
            workspace: '工作區目錄',
            agentDir: 'Agent 目錄',
            roleMarkdownDescriptions: {
                'AGENTS.md': [
                    'Agent 的操作說明，以及如何使用記憶。',
                    '每次會話開始時都會載入。',
                    '適合放規則、優先級和行為方式等內容。',
                ],
                'SOUL.md': ['人格、語氣和邊界。', '每次會話都會載入。'],
                'USER.md': ['使用者是誰，以及應該如何稱呼和回應使用者。', '每次會話都會載入。'],
                'IDENTITY.md': ['Agent 的名字、氣質和 emoji。', '會在 bootstrap 儀式中建立或更新。'],
                'TOOLS.md': ['關於本地工具和約定的說明。', '不會控制工具可用性，僅作為使用指引。'],
                'HEARTBEAT.md': ['可選的心跳執行檢查清單。', '盡量保持簡短，避免消耗過多 token。'],
                'BOOT.md': [
                    '可選的啟動檢查清單，會在 gateway 重啟且啟用內部 hooks 時執行。',
                    '盡量保持簡短；如需對外發送訊息，請使用 message 工具。',
                ],
                'BOOTSTRAP.md': ['一次性的首次執行儀式。', '只會在全新的 workspace 中建立。', '儀式完成後請刪除它。'],
            },
            duplicateBinding: '頻道和帳號 ID 不能重複',
            accountIdOptional: '帳號 ID（可選）',
            saveAllMd: '保存全部',
            roleMarkdownRestartHelper: '保存當前全部 MD 檔案後，需要重新啟動容器才能生效。請選擇立即重啟或稍後重啟。',
            configFileRestartHelper: '保存配置檔後需要立即重新啟動容器才能生效。',
            overviewSnapshot: '狀態概覽',
            primaryModel: '主模型',
            defaultModel: '預設模型',
            channelCount: '已配置頻道數量',
            skillCount: '技能數量',
            jobCount: '定時任務數量',
            sessionCount: '會話數量',
            hermesChatAction: '對話',
            hermesChatTitle: 'Hermes 對話',
            hermesChatDialogTitle: 'Hermes 對話 - {0}',
            hermesChatNewChat: '新對話',
            hermesChatNoSessions: '暫無會話',
            hermesChatMessageCount: '{0} 條',
            hermesChatEmptyHint: '選擇左側會話或點擊新對話',
            hermesChatTitlePlaceholder: '請輸入會話標題',
            hermesChatRenameSuccess: '會話標題已更新',
            hermesChatDeleteConfirm: '確認刪除會話 {0}？',
            hermesChatDeleteSuccess: '會話已刪除',
            weixin: '微信',
            wecom: '企業微信',
            dingtalk: '釘釘',
            feishu: '飛書',
            pluginNotInstalled: '插件未安裝，請先安裝插件',
            dmPolicy: '私聊策略',
            threadSession: '執行緒會話',
            replyMode: '回覆模式',
            requireMention: "群聊需 {'@'} 機器人",
            requireMentionTrue: "需要 {'@'}",
            requireMentionFalse: "無需 {'@'}",
            requireMentionOpen: '依群組設定',
            groupPolicy: '群組策略',
            policyAllowlist: '白名單',
            policyOpen: '開放',
            policyDisabled: '禁用',
            bots: 'Bot 列表',
            addBot: '新增 Bot',
            accountId: '帳戶 ID',
            accountIdPlaceholder: '用於區分不同 Bot 的唯一標識，儲存後用於配置和路由識別',
            setDefaultBot: '設為預設 Bot',
            botDuplicateField: '{field} 不能重複',
            botRequired: '請至少新增一個 Bot',
            botId: 'Bot ID',
            allowFrom: '私聊白名單',
            allowFromPlaceholder: '一行一個發送方識別碼',
            allowlistPolicyHelper: '{0}，僅在{1}為白名單時生效',
            systemPrompt: '系統提示詞',
            groupAllowFrom: '群組白名單',
            groupAllowFromPlaceholder: '一行一個群組識別碼',
            separateSessionByConversation: '按會話隔離',
            groupSessionScope: '群會話範圍',
            groupSessionScopeGroup: '整群共享',
            groupSessionScopeGroupSender: '群內按人隔離',
            sharedMemoryAcrossConversations: '跨會話共享記憶',
            asyncMode: '非同步模式',
            ackText: '確認訊息',
            ackTextDefault: '任務已接收，處理中...',
            streaming: '即時串流',
            streamingOff: '關閉',
            streamingPartial: '部分輸出',
            streamingBlock: '阻塞輸出',
            streamingProgress: '進度輸出',
            allowFromRequired: '請至少填寫一個白名單項',
            pairingCode: '配對碼',
            pairingCodePlaceholder: '請輸入配對碼',
            approvePairing: '批准配對',
            saveSuccess: '保存成功',
            successAndRestart: '{0}，容器正在自動重新啟動。',
            pairingApproveSuccess: '配對成功',
            scanConnect: '掃碼對接',
            scanConnectHelper: '點擊後將在任務日誌中顯示 QR Code，掃碼確認成功後將自動重新啟動容器。',
            channelAutoRestartHelper: '保存後將自動重新啟動容器以使設定生效。',
            dashboardAuthAutoRebuildHelper: '保存使用者名稱或密碼後將自動重建容器以使設定生效。',
            dashboardAuthImmediateHelper: '保存後將立即更新 QwenPaw 登入憑據，無需重新啟動容器。',
            channelDeleteConfirm: '確認刪除 {0} 頻道設定？',
            apiTypeBaseURLHelper: '目前類型最終請求 {0}，Base URL 建議填寫 {1}',
            customImageURLHelper: 'Custom 圖片帳號請填寫完整的圖片產生介面 URL，系統不會自動補全路徑，例如：{0}',
            apiTypeBaseURLMismatch: '目前 Base URL 看起來是 {0} 路徑，和已選擇的 {1} 不一致，建議改為 {2}',
            validateAvailability: '驗證帳號可用性',
            validateAvailabilityHelper: '儲存前傳送最小訊息驗證介面可用性',
            validateImageAvailabilityHelper: '儲存前會實際產生一張最小圖片，可能產生費用',
        },
        model: {
            model: '模型',
            localModel: '本地模型',
            create_helper: '拉取 "{0}"',
            ollama_doc: '您可以瀏覽 Ollama 官方網站，搜尋並尋找更多模型。',
            container_conn_helper: '容器間瀏覽或連接使用此地址',
            ollama_sync: '同步 Ollama 模型發現下列模型不存在，是否刪除？',
            from_remote: '該模型並非透過 1Panel 下載，無相關拉取日誌。',
            no_logs: '該模型的拉取日誌已被刪除，無法檢視相關日誌。',
            vllmVersionHelper: 'FusionXpark GB 10 伺服器請選擇 -cu130 版本',
            vllmCommandPortHelper: '啟動命令必須使用 {0} 連接埠，否則服務將無法存取。',
            syncModelAccount: '同步到模型帳號',
            modelAccountAddressHelper:
                '容器地址適合智能體容器呼叫；127.0.0.1、本機 IP 或自訂地址適合 AI 閘道或外部服務呼叫。',
            containerAddress: '容器地址',
            customAddress: '自訂地址',
            downloader: '下載器',
            modelDir: '模型目錄',
            manualDownload: '手動下載',
            modelSource: '模型來源',
            repoID: '倉庫 ID',
            endpointLabel: '{0} 地址',
            acceleratedEndpointLabel: '{0} 加速地址',
            tokenOptionalLabel: '{0} Token（可選）',
            searchSource: '搜尋 {0}',
            hfEndpointHelper: '國內存取 HuggingFace 不穩定時可設定加速地址，搜尋、詳情和下載都會使用該地址。',
            sortTrending: '熱門趨勢',
            sortLikes: '按讚最多',
            sortDownloads: '下載最多',
            sortUpdated: '最近更新',
            sortCreated: '最新建立',
            downloadsCount: '下載量',
            likes: '點讚',
            taskQueue: '下載佇列',
            progress: '進度',
            localDownloaded: '已下載',
            modelInfo: '模型詳情',
            downloading: '下載中',
            canceled: '已取消',
            downloadQueued: '已加入下載佇列',
            cancelTaskConfirm: '確認取消該下載任務？',
            deleteLocalModelConfirm: '確認刪除本地模型 {0}？',
        },
        proxy: {
            proxy: 'AI 閘道增強',
            proxyHelper1: '綁定域名並啟用 HTTPS，提高傳輸安全性',
            proxyHelper2: '限制 IP 瀏覽，防止在網路上暴露',
            proxyHelper3: '啟用即時串流',
            proxyHelper4: '建立後，您可以在網站列表中檢視並管理',
            proxyHelper5: '啟用後，您可以在應用商店 - 已安裝 - Ollama - 參數中取消埠外部瀏覽以提高安全性',
            proxyHelper6: '如需關閉代理設定，可以在網站列表中刪除',
            whiteListHelper: '限制僅白名單中的 IP 可瀏覽',
        },
        aiProxy: {
            title: 'AI 閘道',
            apiReference: '介面說明',
            notInstalled: '未安裝',
            usage: '用量統計',
            accountPool: '帳號池',
            importModelAccount: '匯入模型帳號',
            editModelAccount: '編輯模型帳號',
            selectModelAccount: '選擇已有模型帳號',
            upstreamApiAddress: '上游 API 地址',
            priority: '優先級',
            healthStatus: '健康狀態',
            failureCount: '失敗次數',
            lastError: '最近錯誤',
            modelMap: '模型映射',
            qpsLimit: 'QPS 限制',
            tokenLimit: 'Token 限制',
            tokenUsed: '已用 Token',
            tokenRemaining: '剩餘 Token',
            resetToken: '重設 Token',
            resetTokenConfirm: '確認重設 {0} 的 Token 用量？',
            unlimited: '不限',
            unlimitedWithAuto: '不限，包含 auto',
            lastUsedAt: '最近使用時間',
            validityPeriod: '有效期',
            keepCurrentValidity: '保留目前有效期',
            neverExpires: '永不過期',
            validForDays: '有效 {0} 天',
            customDays: '自訂天數',
            enterValidityDays: '請輸入有效天數',
            currentExpiresAt: '目前到期時間：{0}',
            currentNeverExpires: '目前為永不過期',
            expiresAt: '到期時間',
            expired: '已過期',
            reactivate: '重新啟用',
            settingTitle: 'AI 閘道設定',
            basicSetting: '基礎設定',
            performanceSetting: '效能設定',
            logSetting: '日誌設定',
            lbPolicy: '負載策略',
            protocolConversion: '協議轉換',
            protocolConversionDesc:
                '啟用後，文字請求可在 Chat Completions、Responses 和 Anthropic Messages 的支援協議間直接轉換，原生協議始終優先。',
            protocolConversionRisk:
                '協議轉換無法保證無損，協議專屬欄位、工具呼叫、思考內容或多模態內容可能被降級或遺失，請權衡後使用。',
            visionEnhancement: '視覺增強',
            visionEnhancementRisk: '視覺增強可能會將圖片傳送給獨立的視覺模型供應商。',
            visionModelGroup: '視覺模型組',
            visionModelGroupDesc: '從此文字生成模型組選擇支援圖片理解的模型，同一請求中的圖片共用該模型。',
            visionTargetModelGroup: '目標模型組',
            visionTargetModelGroupDesc: '僅此文字生成模型組中的請求模型啟用視覺增強，不會改變最終請求模型。',
            visionEnhancementDesc:
                '圖片會先轉換為文字證據，可能遺失細節，並增加延遲與模型費用。網關不會偵測目標模型是否原生支援圖片；儲存後會重新啟動網關，請權衡後使用。',
            visionPreprocess: '視覺預處理',
            cacheHit: '快取命中',
            apiType: 'API 類型',
            lbPolicyRoundRobin: '輪詢',
            lbPolicyRoundRobinDesc: '按順序依次選擇可用模型帳號，適合後端能力接近的場景。',
            lbPolicyWeightedRoundRobin: '加權輪詢',
            lbPolicyWeightedRoundRobinDesc:
                '根據模型帳號權重分配請求，權重越高承擔的請求越多，適合後端性能不同的場景。',
            lbPolicyFailover: '故障轉移',
            lbPolicyFailoverDesc: '優先使用優先級最高的模型帳號，失敗或冷卻後再切換到下一個可用帳號。',
            maxConcurrency: '最大併發',
            queueSize: '等待佇列大小',
            queueTimeoutSeconds: '佇列等待逾時（秒）',
            requestTimeoutSeconds: '非串流請求逾時（秒）',
            streamIdleTimeoutSeconds: '串流空閒逾時（秒）',
            maxBodyMb: '最大請求體（MB）',
            runtimeRefreshSeconds: 'Runtime 刷新間隔（秒）',
            logRetentionDays: 'AI 閘道日誌保留天數',
            clearLogs: '清空日誌',
            clearLogsConfirm: '將清空 AI 閘道用量統計、內容合規審計、智慧路由決策、請求體日誌和服務日誌，是否繼續？',
            usageRetentionDays: '用量統計保留天數',
            contentAuditRetentionDays: '內容合規審計日誌保留天數',
            logCleanupIntervalHours: '日誌清理間隔（小時）',
            requestBodyLog: '請求體日誌',
            requestBodyLogDesc: '用於將 AI 閘道請求與回應內容寫入 Elasticsearch，便於檢索、審計和問題排查。',
            requestBodyLogIndexPrefix: '索引前綴',
            requestBodyLogRetentionDays: '請求體日誌保留天數',
            requestBodyLogMaxBodyKb: '單請求體最大保存大小（KB）',
            requestBody: '請求體',
            requestBodySize: '請求體大小',
            requestBodyTruncated: '是否截斷',
            responseBody: '響應體',
            responseBodySize: '響應體大小',
            responseBodyTruncated: '響應體是否截斷',
            readableContent: '可讀內容',
            rawResponse: '原始響應',
            replyContent: '回覆內容',
            reasoningContent: '思考內容',
            statusTitle: 'AI 閘道狀態',
            serviceEnabled: '服務自啟',
            proxyEnabled: '閘道啟用',
            statusMessage: '狀態資訊',
            esLogDropped: 'ES 日誌丟棄數',
            esLogLastSuccessAt: 'ES 最近寫入時間',
            esLogCircuitOpen: '熔斷中',
            esLogCircuitUntil: 'ES 熔斷結束時間',
            serviceOperateConfirm: '確認{0} AI 閘道服務？',
            deleteTargetConfirm: '確認刪除{0} {1}？',
            deleteBackendTitle: '刪除模型帳號',
            userFallback: '已刪除使用者 (ID: {0})',
            requestModel: '請求模型',
            upstreamModel: '上游模型',
            upstreamDuration: '上游耗時',
            requestModelPlaceholder: '如 qwen2.5-coder',
            upstreamModelPlaceholder: '如 Qwen/Qwen2.5-Coder-32B-Instruct',
            addMapping: '新增映射',
            overview: '概覽',
            distribution: '分佈',
            usageTrend: '使用趨勢',
            distributionBy: '按{0}分佈',
            unmatched: '未匹配',
            modelAccount: '模型帳號',
            serviceProvider: '服務商',
            tokenUsage: 'Token 用量',
            percent: '佔比',
            ranking: '排行榜',
            rank: '排名',
            promptToken: '輸入 Token',
            completionToken: '輸出 Token',
            totalToken: '總 Token',
            cachedToken: '快取 Token',
            cacheHitRate: '快取命中率',
            activeUsers: '活躍使用者',
            activeModels: '活躍模型',
            failedRequests: '失敗請求',
            averageTokenPerRequest: '平均 Token/請求',
            callLogs: '呼叫日誌',
            usageKeywordPlaceholder: '搜尋 Request ID / 模型 / 上游模型 / 錯誤資訊',
            attemptChain: '呼叫鏈路',
            attemptIndex: '調用順序',
            clientProtocol: '用戶端 API',
            upstreamProtocol: '上游 API',
            conversionPath: '轉換路徑',
            noAttemptDetails: '暫無呼叫鏈路記錄',
            input: '輸入',
            output: '輸出',
            total: '總計',
            healthHealthy: '健康',
            healthCooldown: '冷卻',
            healthUnhealthy: '異常',
            healthDeleted: '已刪除',
            healthUnknown: '未知',
            validationModelMapEmpty: '模型映射的模型名稱不能為空',
            validationModelMapDuplicate: '請求模型 {0} 重複',
            modelGroup: '模型組',
            modelCapability: '模型能力',
            textGeneration: '文字生成',
            imageGeneration: '圖片生成',
            textModels: '文字模型',
            textToImageModels: '文生圖模型',
            unauthorized: '未授權',
            imageCount: '圖片數量',
            availableModels: '可用模型',
            modelGroupModels: '請求模型',
            modelGroupModelsPlaceholder: '請選擇或輸入請求模型名稱',
            modelGroupModelsHelper:
                '填寫用戶端請求 AI 網關時使用的請求模型名稱；智慧路由會按順序優先選擇靠前模型，不做模型間負載均衡。',
            modelGroupGuide:
                '模型組配置用戶端請求 AI 網關時使用的請求模型名稱；上游模型在帳號池的模型映射中配置。auto 是虛擬模型名稱，不需要放進模型組。',
            modelGroupModelCount: '{0} 個模型',
            contentCompliance: '內容合規',
            contentAction: '處理動作',
            actionBlock: '阻斷',
            actionAuditOnly: '僅記錄',
            actionDropHistory: '刪除歷史',
            severity: '風險等級',
            severityHigh: '高',
            severityMedium: '中',
            severityLow: '低',
            sensitiveWord: '敏感詞',
            sensitiveGroup: '敏感詞分組',
            sensitiveWordCount: '詞數',
            normalizedWord: '歸一化詞',
            matchedWords: '命中詞',
            matchedGroups: '命中分組',
            importResult: '匯入成功 {0} 條，重複 {1} 條，無效 {2} 條',
            auditLogs: '審計日誌',
            smartRoute: '智慧路由',
            smartRouteGuideTitle: '用戶端使用 model=auto 進入智慧路由',
            smartRouteGuideReady:
                'model=auto 會依請求複雜度在簡單模型組和複雜模型組中選擇模型；model 不是 auto 時仍按普通 AI 網關轉發。',
            smartRouteGuideNotReady:
                '請先在設定中開啟智慧路由並配置簡單/複雜模型組；配置完成後用戶端使用 model=auto 進入智慧路由。',
            copyAutoModel: '複製 auto',
            goSmartRouteSetting: '去設定',
            smartRoutePolicy: '路由策略',
            routeConfig: '路由配置',
            embeddingConfig: 'Embedding 設定',
            embeddingConfigDesc:
                '用於智慧路由和內容合規語義樣本匹配。建議使用 llama.cpp + Qwen3-Embedding-0.6B，配置後可重建樣本向量。',
            decisionConfig: '判定參數',
            simpleModelGroup: '簡單模型組',
            complexModelGroup: '複雜模型組',
            embeddingEndpoint: '位址',
            embeddingModel: '模型',
            embeddingApiKey: 'API Key',
            routeThreshold: '路由閾值',
            routeThresholdHelper: '用於智慧路由：請求與簡單/複雜樣本相似度達到該值後，才採用樣本匹配結果。',
            auditThreshold: '審核閾值',
            auditThresholdHelper: '用於內容合規：請求與審核樣本相似度達到該值後，才認為命中審核樣本。',
            topK: 'TopK',
            topKHelper: '每次取最相似的樣本數量。',
            members: '成員',
            samples: '樣本',
            routeSamplesGuide:
                '樣本是簡單/複雜問題的示例，用於 Embedding 相似度匹配；文字盡量寫真實使用者請求，新增後可生成或重建向量。',
            rebuildVectors: '重建向量',
            rebuildVectorsConfirm: '重建向量會重新請求 Embedding 服務處理智慧路由和內容合規樣本，是否繼續？',
            createVectorOnImport: '匯入後建立向量',
            createVectorOnImportHelper: '預設選中。已配置 Embedding 時會建立背景任務生成向量，未配置時僅建立樣本。',
            route: '路由',
            audit: '審核',
            auditSamples: '審核樣本',
            sampleText: '文字',
            sampleLabel: '標籤',
            vectorModel: '向量模型',
            vectorDim: '維度',
            threshold: '閾值',
            preview: '預覽',
            previewGuide: '預覽用於測試一段請求會判為簡單還是複雜，不會真實呼叫上游模型；來源為樣本匹配或規則判斷。',
            previewPlaceholder: '輸入請求文字',
            confidence: '置信度',
            bestSampleSimilarity: '最高樣本相似度',
            source: '來源',
            sourceHeuristic: '規則判斷',
            sourceEmbedding: '樣本匹配',
            sourceContext: '上下文繼承',
            latency: '耗時',
            decisionLogs: '決策日誌',
            requestID: '請求 ID',
            simple: '簡單',
            complex: '複雜',
            sampleLabelSafe: '安全',
            sampleLabelReview: '複核',
            sampleLabelBlock: '阻斷',
            latencyMs: '耗時(ms)',
            smartRouteSettingGuide:
                '開啟後只有 model=auto 的請求才觸發智慧路由；簡單模型組用於低成本任務，複雜模型組用於程式碼分析、架構設計、故障排查等任務。',
            sampleLabelPlaceholder: 'simple / complex / high',
            sampleImportPlaceholder: '每行一個樣本',
            apiKeyCount: '數量',
        },
        skillsHub: {
            title: 'Skills Hub',
            upload: '上傳 Skill',
            importSkill: '匯入 Skill',
            repositoryAddress: '倉庫地址',
            repositoryGithubOnly: '僅支援 GitHub 倉庫地址',
            repositoryRef: '分支或 Tag',
            repositoryRefPlaceholder: '預設為 main，失敗後將嘗試 master',
            repositoryDownloadPreview: '目標下載地址：',
            packageURL: '壓縮包 URL',
            packageURLPlaceholder: '請輸入 .zip 壓縮包地址',
            importSuccess: 'Skill 匯入成功，已進入待審核狀態。',
            source: '來源',
            applicableAgent: '適用智能體',
            overview: '概覽',
            versionHistory: '版本歷史',
            publishedAt: '上架時間',
            versionMarker: '標記',
            currentVersion: '目前查看',
            latestVersion: '最新版本',
            latestPublished: '最新發布',
            riskLevel: '風險等級',
            riskReferenceHint:
                '風險等級由系統根據 Skill 包內容自動檢測生成，僅作為審核參考，不代表絕對安全。\n低：未發現明顯風險\n中：包含腳本、依賴、外部 URL 或環境變數\n高：包含遠端執行、敏感資訊或高危命令',
            riskCheckResult: '安全檢查結果',
            noRiskFound: '暫未發現明顯風險。',
            riskFilePath: '檔案路徑',
            riskKeyword: '命中的關鍵字或規則',
            riskDescription: '風險說明',
            publishHighRiskConfirm: '該 Skill 存在高風險項，可能包含腳本執行、外部下載或敏感資訊存取。確認仍要上架嗎？',
            approve: '審核通過',
            reject: '審核駁回',
            publish: '上架',
            disable: '下架',
            customTarget: '自訂智能體',
            addCustomTarget: '添加智能體',
            installToTarget: '安裝到自訂智能體',
            hostSkillDir: 'Skill 目錄',
            hostSkillDirHelper: '請填寫節點 Skill 目錄路徑。',
            installMethod: '安裝方式',
            copy: '複製',
            extract: '解壓',
            postInstallCommand: '安裝後命令',
            localSource: '本地上傳',
            uploadDragTitle: '拖拽 Skill 包到此處，或點擊上傳',
            uploadFormatLabel: '支援格式：',
            uploadFormatValue: '.zip、.7z、.tar、.tar.gz',
            uploadSizeLabel: '檔案大小：',
            uploadSizeValue: '單個檔案不超過 5 MB',
            uploadRequirementLabel: '包內要求：',
            uploadRequirementPrefix: 'Skill 包內必須包含',
            onlySupportedArchive: '僅支援上傳 .zip、.7z、.tar、.tar.gz 格式的 Skill 包',
            uploadSizeExceeded: '單個 Skill 包不能超過 5 MB',
            uploadSuccess: 'Skill 上傳成功，已進入待審核狀態。',
            versionAutoFillPlaceholder: '可從檔案名稱自動識別，請確認或手動填寫',
            metadataOverwriteConfirm: 'Skill 包內的版本號與目前填寫內容不一致，是否以目前填寫內容為準？',
            metadataOverwriteConfirmWithVersions:
                'Skill 包內的版本號與目前填寫內容不一致，包內版本：{packageVersion}，填寫版本：{inputVersion}，是否以目前填寫內容為準？',
            offlineNotice: '當前為離線環境，僅支援從本地 Skill 商店安裝技能。',
            publishConfirm: '確認上架該 Skill？上架後可在智能體中從本地 Skill 商店安裝。',
            disableConfirm: '確認下架該 Skill？已安裝到智能體中的 Skill 不受影響。',
            deleteConfirm: '確認刪除該 Skill？刪除後不可恢復，已安裝到智能體中的 Skill 不受影響。',
            rejectConfirm: '確認駁回該 Skill 的審核？駁回後 Skill 將進入「審核未通過」狀態。',
            downloadPublishedOnly: '僅支援下載已上架的 Skill 包。',
            deleteTargetConfirm: '確認刪除該自訂智能體？刪除後使用者不能繼續選擇該安裝目標。',
            noInstallTarget: '暫無可用的自訂智能體，請先設定安裝目標。',
            postInstallConfirm: '該目標設定了安裝後命令，執行前請確認該命令可信。',
            status: {
                pending: '待審核',
                approved: '已審核',
                published: '已上架',
                disabled: '已下架',
                rejected: '審核未通過',
                deleted: '已刪除',
            },
            agent: {
                common: '通用',
            },
            risk: {
                low: '低',
                medium: '中',
                high: '高',
            },
            riskType: {
                script_file: '腳本檔案',
                dependency_manifest: '依賴聲明',
                external_url: '外部 URL',
                environment_variable: '環境變數',
                dockerfile: 'Dockerfile',
                command_execution: '命令執行',
                remote_script_execution: '遠端腳本執行',
                eval_execution: '動態執行',
                base64_execution: 'Base64 解碼執行',
                privileged_command: '提權命令',
                dangerous_delete: '危險刪除',
                world_writable_permission: '高危權限',
                credential: '疑似密鑰',
                sensitive_path: '敏感路徑',
                suspicious_download_execute: '可疑下載執行',
                binary_content: '二進位內容',
                scan_truncated: '掃描內容截斷',
            },
            riskDescriptionText: {
                script_file: '包含腳本檔案，可能執行本地命令。',
                dependency_manifest: '包含依賴聲明檔案，安裝時可能拉取外部依賴。',
                external_url: '包含外部 URL，請確認外聯地址可信。',
                environment_variable: '聲明了環境變數，請確認用途和預設值。',
                dockerfile: '包含 Dockerfile，可能定義映像構建或執行邏輯。',
                command_execution: '包含命令執行相關呼叫，請確認執行邏輯可信。',
                remote_script_execution: '包含遠端腳本下載後直接執行邏輯。',
                eval_execution: '包含 eval 動態執行邏輯。',
                base64_execution: '包含 Base64 解碼後執行邏輯。',
                privileged_command: '包含 sudo 提權命令。',
                dangerous_delete: '包含危險刪除命令。',
                world_writable_permission: '包含 chmod 777 權限放開命令。',
                credential: '包含疑似 API Key、Token、Secret 或 Password。',
                sensitive_path: '包含存取敏感目錄或敏感檔案的行為。',
                suspicious_download_execute: '包含可疑外聯下載或下載後執行邏輯。',
                binary_content: '檔案中包含 NUL 位元組，可能隱藏可執行內容或二進位內容。',
                scan_truncated: '檔案內容超過掃描上限，未掃描部分仍需人工確認。',
            },
        },
        benchmark: {
            title: '基準測試',
            launchCommand: '啟動命令',
            retest: '重新測試',
            statusRunning: '執行中',
            statusWaiting: '等待中',
            base: '基礎資訊',
            backend: '後端',
            baseUrl: '服務地址',
            endpoint: '介面路徑',
            tokenizer: '分詞器',
            tokenizerPlaceholder: '請選擇或輸入本機分詞器目錄，例如 /opt/1panel/tokenizers/DeepSeek-V3',
            runConfig: '執行設定',
            rawResult: '原始結果',
            resultMetrics: '結果指標',
            contextTokens: '上下文長度',
            contextTokensHelper: '本次測試的輸入 Token 與輸出 Token 上限之和。',
            outputThroughput: '輸出吞吐',
            outputThroughputHelper: '模型每秒產生的輸出 Token 數，越高表示生成速度越快。',
            totalThroughput: '總吞吐',
            totalThroughputHelper: '每秒處理的輸入與輸出 Token 總數，用於衡量整體處理能力。',
            firstTokenLatency: '首 Token 延遲',
            firstTokenLatencyHelper: '從請求送出到收到第一個 Token 的時間，越低表示回應越快。',
            tokenValueHelper: '請輸入正整數或 k 單位，例如 512、1k、32k',
            numPrompts: '請求數量',
            concurrency: '併發數',
            mean: '平均值',
            median: '中位數',
            requestRate: '請求速率',
            requestRateUnlimited: '不限速（最大吞吐）',
            requestRateCustom: '自訂 QPS',
            requestRateCustomPlaceholder: '請輸入每秒請求數，如 2.5',
            successfulRequests: '成功請求',
            requestThroughput: '請求吞吐',
            timeout: '逾時時間（秒）',
            image: 'vLLM 映像',
            ignoreEos: '忽略 EOS',
            extraHeaders: '額外請求標頭',
        },
        gpu: {
            gpu: 'GPU 監控',
            gpuHelper: '目前系統未偵測到 NVIDIA-SMI 或 XPU-SMI 指令，請檢查後重試',
            process: '行程資訊',
            type: '類型',
            typeG: '圖形',
            typeC: '計算',
            typeCG: '計算+圖形',
            processName: '行程名稱',
            shr: '共享顯存',
            temperatureHelper: 'GPU 溫度過高會導致 GPU 頻率下降',
            gpuUtil: 'GPU 使用率',
            temperature: '溫度',
            performanceState: '效能狀態',
            powerUsage: '功耗',
            memoryUsage: '顯存使用率',
            fanSpeed: '風扇轉速',
            power: '功率',
            powerCurrent: '目前功率',
            powerLimit: '功率上限',
            memory: '顯存',
            memoryUsed: '顯存使用',
            memoryTotal: '顯存總計',
            percent: '使用率',
            base: '基礎資訊',
            driverVersion: '驅動程式版本',
            cudaVersion: 'CUDA 版本',
            processMemoryUsage: '顯存使用',
            performanceStateHelper: '從 P0 (最大效能) 到 P12 (最小效能)',
            busID: '匯流排位址',
            persistenceMode: '持續模式',
            enabled: '開啟',
            disabled: '關閉',
            persistenceModeHelper: '持續模式能更加快速地響應任務，但相應待機功耗也會增加',
            displayActive: '顯示卡初始化',
            displayActiveT: '是',
            displayActiveF: '否',
            ecc: '是否開啟錯誤檢查和糾正技術',
            computeMode: '計算模式',
            default: '預設',
            exclusiveProcess: '行程排他',
            exclusiveThread: '執行緒排他',
            prohibited: '禁止',
            defaultHelper: '預設: 行程可以並發執行',
            exclusiveProcessHelper: '行程排他: 只有一個 CUDA 上下文可以使用 GPU，但可以由多個執行緒共享',
            exclusiveThreadHelper: '執行緒排他: 只有一個執行緒在 CUDA 上下文中可以使用 GPU',
            prohibitedHelper: '禁止: 不允許行程同時執行',
            migModeHelper: '用於建立 MIG 實例，在使用者層實現 GPU 的物理隔離。',
            migModeNA: '不支援',
            current: '即時監控',
            history: '歷史記錄',
            notSupport: '當前版本或驅動不支援顯示該參數。',
            processCount: '行程數',
        },
        mcp: {
            server: 'MCP Server',
            baseUrl: '外部存取路徑',
            baseUrlHelper: '例：http://192.168.1.1:8000',
            ssePath: 'SSE 路徑',
            ssePathHelper: '例：/sse,注意不要與其他 Server 重複',
            environment: '環境變數',
            envKey: '變數名',
            envValue: '變數值',
            externalUrl: '外部連接地址',
            operatorHelper: '將對 {0} 進行 {1} 操作，是否繼續？',
            domain: '預設存取地址',
            domainHelper: '例：192.168.1.1 或 example.com',
            bindDomain: '綁定網站',
            commandPlaceHolder: '僅支援 npx 和 二進制啟動的指令',
            importMcpJson: '匯入 MCP Server 設定',
            importMcpJsonError: 'mcpServers 結構不正確',
            bindDomainHelper: '綁定網站之後會修改所有已安裝 MCP Server 的存取地址，並關閉埠的外部存取',
            outputTransport: '輸出類型',
            streamableHttpPath: '流式傳輸路徑',
            streamableHttpPathHelper: '例：/mcp, 注意不要與其他 Server 重複',
            npxHelper: '適合 npx 或 二進制啟動的 mcp',
            uvxHelper: '適合 uvx 啟動的 mcp',
            protocolVersion: '協議版本',
            protocolVersionHelper: '僅用於無狀態 Streamable HTTP 自動初始化下游 stdio MCP Server',
            gatewayArgsHelper:
                '參數將附加到 supergateway 啟動命令，不支援修改由 1Panel 管理的傳輸、連接埠、路徑和協議參數',
            testConnection: '測試連線',
            connectionSuccess: '連線成功',
            connectionFailed: '連線失敗',
        },
        tensorRT: {
            llm: 'TensorRT LLM',
            modelDir: '模型目錄',
            commandHelper: '若需外部存取，請將命令中的埠設置為與應用埠相同',
            imageAlert: '由於映像較大，建議先手動將映像下載到伺服器後再進行安裝',
            modelSpeedup: '啟用模型加速',
            modelType: '模型類型',
        },
    },
    container: {
        createByCommand: '指令建立',
        importContainerBackupTip: '匯入容器備份檔案，僅支援 .tar.gz 格式',
        importComposeBackupTip: '匯入編排備份檔案，僅支援 .tar.gz 格式',
        stopContainerBeforeBackup: '備份前停止容器',
        stopComposeBeforeBackup: '備份前停止編排',
        stopBeforeBackupHelper: '啟用後備份前將停止容器或編排服務，完成後自動恢復，以確保資料一致性',
        commandInput: '指令輸入',
        commandRule: '請輸入正確的 docker run 容器建立指令',
        commandHelper: '將在伺服器上執行該條指令以建立容器，是否繼續？',
        updateHelper1: '偵測到該容器來源於應用商店，請注意以下兩點：',
        updateHelper2: '1. 目前修改內容不會同步到應用商店的已安裝應用。',
        updateHelper3: '2. 如果在已安裝頁面修改應用，目前編輯的部分內容將失效。',
        updateHelper4: '編輯容器需要重建，任何未持久化的資料將遺失，是否繼續？',
        containerList: '容器列表',
        operatorHelper: '將對以下容器進行 {0} 操作，是否繼續？',
        operatorAppHelper:
            '將對以下容器進行 {0} 操作，\n其中部分來源於應用商店，該操作可能會影響到該服務的正常使用。\n是否確認？',
        containerDeleteHelper:
            '偵測到容器來源於應用商店，刪除容器不會將其從 1Panel 中完全移除。如需徹底刪除，請前往應用商店-『已安裝』或『運行環境』等選單中操作。是否繼續？',
        start: '啟動',
        stop: '停止',
        restart: '重新啟動',
        kill: '強制停止',
        pause: '暫停',
        unpause: '復原',
        rename: '重新命名',
        remove: '刪除',
        removeAll: '刪除所有',
        containerPrune: '清理容器',
        containerPruneHelper1: '清理容器 將刪除所有處於停止狀態的容器。',
        containerPruneHelper2:
            '若容器來自於應用商店，在執行清理操作後，您需要前往 [應用商店] 的 [已安裝] 列表，點選 [重建] 按鈕進行重新安裝。',
        containerPruneHelper3: '該操作無法回滾，是否繼續？',
        imagePrune: '清理映像',
        imagePruneSome: '未標籤映像',
        imagePruneSomeEmpty: '暫無待清理的未使用 none 標籤映像',
        imagePruneSomeHelper: '清理下列標籤為 none 且未被任何容器使用的映像',
        imagePruneAll: '未使用映像',
        imagePruneAllEmpty: '暫無待清理的未使用映像',
        imagePruneAllHelper: '清理下列未被任何容器使用的映像',
        networkPrune: '清理網路',
        networkPruneHelper: '清理網路 將刪除所有未被使用的網路，該操作無法回滾，是否繼續？',
        volumePrune: '清理磁碟區',
        volumePruneHelper: '清理磁碟區 將刪除所有未被使用的本機磁碟區，該操作無法回滾，是否繼續？',
        cleanSuccess: '操作成功，本次清理數量: {0} 個',
        cleanSuccessWithSpace: '操作成功，本次清理數量: {0} 個，釋放磁碟空間: {1}',
        unExposedPort: '目前埠映射地址為 127.0.0.1，無法實現外部存取',
        upTime: '執行時長',
        fetch: '過濾',
        lines: '條數',
        linesHelper: '請輸入正確的日誌取得條數',
        downloadLinesHelper: '選擇或輸入日誌下載行數',
        lastDay: '最近一天',
        last4Hour: '最近 4 小時',
        lastHour: '最近 1 小時',
        last10Min: '最近 10 分鐘',
        cleanLog: '清空日誌',
        cleanLogscope: '清理類型',
        downLogHelper1: '即將下載 {0} 容器所有日誌，是否繼續？',
        downLogHelper2: '即將下載 {0} 容器最近 {1} 條日誌，是否繼續？',
        cleanLogHelper: '清空日誌需要重新啟動容器，該操作無法回滾，是否繼續？',
        newName: '新名稱',
        workingDir: '工作目錄',
        composeFileMissing: '未檢測到編排檔案',
        source: '資源使用率',
        cpuUsage: 'CPU 使用',
        cpuTotal: 'CPU 總計',
        core: '核心數',
        memUsage: '記憶體使用',
        memTotal: '記憶體限額',
        memCache: '快取使用',
        loadSize: '取得容器大小',
        ip: 'IP 位址',
        cpuShare: 'CPU 權重',
        cpuShareHelper: '容器預設份額為 1024 個 CPU，增大可使目前容器獲得更多的 CPU 時間',
        inputIpv4: '請輸入 IPv4 位址',
        inputIpv6: '請輸入 IPv6 位址',
        diskUsage: '磁碟佔用',
        localVolume: '本機儲存卷',
        buildCache: '建置快取',
        usage: '已佔用：{0}, 可釋放：{1}',
        clean: '釋放',
        imageClean: '清理映像將刪除所有未被使用的映像，該操作無法復原，是否繼續？',
        containerClean: '清理容器將刪除所有處於停止中狀態的容器（包括應用商店停止應用），該操作無法復原，是否繼續？',
        sizeRw: '容器層大小',
        sizeRwHelper: '容器獨有的可寫層大小',
        sizeRootFs: '虛擬大小',
        sizeRootFsHelper: '容器依賴的所有映像層 + 容器層的總大小',
        containerFromAppHelper: '偵測到該容器來源於應用商店，應用操作可能會導致目前編輯失效',
        containerFromAppHelper1: '在已安裝應用程式列表點選 [參數] 按鈕，進入編輯頁面即可修改容器名稱。',
        command: '指令',
        console: '控制臺互動',
        tty: '偽終端 ( -t )',
        openStdin: '標準輸入 ( -i )',
        custom: '自訂',
        emptyUser: '為空時，將使用容器預設的使用者登入',
        privileged: '特權模式',
        privilegedHelper: '允許容器在主機上執行某些特權操作，可能會增加容器風險，請謹慎開啟',
        upgradeHelper: '倉庫名稱/映像名稱:映像版本',
        upgradeWarning2: '升級操作需要重建容器，任何未持久化的資料將會遺失，是否繼續？',
        oldImage: '目前映像',
        sameImageContainer: '同映像容器',
        sameImageHelper: '同映像容器可勾選後批次升級',
        targetImage: '目標映像',
        imageLoadErr: '未偵測到容器的映像名稱',
        imageUpdateTagEmpty: '未偵測到可更新的映像標籤',
        appHelper: '該容器來源於應用商店，升級可能導致該服務不可用',
        resource: '資源',
        input: '手動輸入',
        forcePull: '強制拉取映像',
        forcePullHelper: '忽略伺服器已存在的映像，重新拉取一次',
        imageUpdateHelper: '將檢查映像倉庫中的同名標籤，若有更新則拉取並更新本地映像。',
        server: '伺服器',
        serverExample: '80, 80-88, ip:80 或 ip:80-88',
        containerExample: '80 或 80-88',
        exposePort: '暴露埠',
        exposeAll: '暴露所有',
        cmdHelper: '例： nginx -g "daemon off;"',
        entrypointHelper: '例： docker-entrypoint.sh',
        autoRemove: '容器退出後自動刪除容器',
        cpuQuota: 'CPU 限制',
        memoryLimit: '記憶體限制',
        limitHelper: '限制為 0 則關閉限制，最大可用為 {0}',
        macAddr: 'MAC 地址',
        mount: '掛載',
        volumeOption: '掛載卷',
        hostOption: '本機目錄',
        serverPath: '伺服器目錄',
        containerDir: '容器目錄',
        volumeHelper: '請確認磁碟區內容輸入正確',
        networkEmptyHelper: '請確認容器網路選擇正確',
        modeRW: '讀寫',
        modeR: '唯讀',
        sharedLabel: '傳播模式',
        private: '私有',
        privateHelper: '容器裡的掛載變化和主機互不干擾',
        rprivate: '遞迴私有',
        rprivateHelper: '容器裡所有掛載都和主機完全隔離',
        shared: '共享',
        sharedHelper: '主機和容器裡的掛載變化互相可見',
        rshared: '遞迴共享',
        rsharedHelper: '主機和容器裡所有掛載變化都互相可見',
        slave: '從屬',
        slaveHelper: '容器能看見主機的掛載變化，但自己的變化不影響主機',
        rslave: '遞迴從屬',
        rslaveHelper: '容器裡所有掛載都能看見主機變化，但不影響主機',
        mode: '權限',
        env: '環境變數',
        restartPolicy: '重新啟動規則',
        always: '一直重新啟動',
        unlessStopped: '未手動停止則重新啟動',
        onFailure: '失敗後重新啟動（預設重新啟動 5 次）',
        no: '不重新啟動',
        refreshTime: '重新整理間隔',
        cache: '快取',
        image: '映像',
        imagePull: '拉取映像',
        imagePullHelper: '支援選擇拉取多個映像，輸入一組映像後Enter繼續',
        imagePush: '推送映像',
        imagePushHelper: '偵測到該映像存在多個標籤，請確認推送時使用的映像名稱為：{0}',
        imageDelete: '刪除映像',
        repoName: '倉庫名',
        imageName: '映像名',
        httpRepo: 'http 倉庫新增授信需要重新啟動 docker 服務',
        delInsecure: '刪除授信',
        delInsecureHelper: '刪除授信需要重新啟動 docker 服務，是否刪除？',
        pull: '拉取',
        path: '路徑',
        importImage: '匯入映像',
        imageBuild: '構建映像',
        buildArgs: '構建參數',
        pathSelect: '路徑選擇',
        label: '標籤',
        imageTag: '映像標籤',
        imageTagHelper: '支援設定多個映像標籤，輸入一個標籤後Enter繼續',
        push: '推送',
        fileName: '檔案名',
        export: '匯出',
        exportImage: '匯出映像',
        size: '大小',
        tag: '標籤',
        tagHelper: '一行一個，例： \nkey1=value1\nkey2=value2',
        imageNameHelper: '映像名稱及 Tag，例：nginx:latest',
        cleanBuildCache: '清理建置快取',
        delBuildCacheHelper: '清理建置快取將刪除所有建置所產生的快取，此操作無法回復。是否繼續？',
        urlWarning: '路徑前綴不需要新增 http:// 或 https://，請修改',
        network: '網路',
        networkHelper: '刪除 1panel-network 容器網路將影響部分應用和執行環境的正常使用，是否繼續？',
        networkName: '網路名',
        driver: '模式',
        option: '參數',
        attachable: '可用',
        parentNetworkCard: '父網卡',
        subnet: '子網',
        scope: 'IP 範圍',
        gateway: '閘道器',
        auxAddress: '排除 IP',
        volume: '磁碟區',
        volumeDir: '磁碟區目錄',
        nfsEnable: '啟用 NFS 儲存',
        nfsAddress: '地址',
        mountpoint: '掛載點',
        mountpointNFSHelper: '例：/nfs, /nfs-share',
        options: '可選參數',
        repo: '倉庫',
        httpRepoHelper: '操作 HTTP 類型倉庫需要重新啟動 Docker 服務。',
        downloadUrl: '下載網址',
        imageRepo: '映像倉庫',
        repoHelper: '是否包含映像倉庫/組織/項目?',
        auth: '認證',
        mirrorHelper:
            '當存在多個加速器時，需要換行顯示，例： \nhttp://xxxxxx.m.daocloud.io \nhttps://xxxxxx.mirror.aliyuncs.com',
        registrieHelper: '當存在多個私有倉庫時，需要換行顯示，例：\n172.16.10.111:8081 \n172.16.10.112:8081',
        compose: '編排',
        composeFile: '編排檔案',
        fromChangeHelper: '切換來源將清空當前已編輯內容，是否繼續？',
        composePathHelper:
            '編排檔案儲存路徑：{0}；若 Docker Compose 中指定了專案名稱，則優先使用該名稱，否則使用 {1}。',
        composeNamePriorityHelper:
            '專案名稱優先順序：Docker Compose 設定中指定的名稱 > 檔案父目錄名稱 > 此處填寫的名稱。',
        composeHelper: '通過 1Panel 編輯或範本建立的編排，將儲存在 {0}/docker/compose 路徑下',
        deleteFile: '刪除檔案',
        deleteComposeHelper: '刪除容器編排的所有檔案，包括設定檔和持久化檔案，請謹慎操作',
        deleteCompose: '" 刪除此編排',
        composeDirectory: '編排目錄',
        template: '範本',
        composeTemplate: '編排範本',
        content: '內容',
        contentEmpty: '編排內容不能為空，請輸入後重試',
        containerNumber: '容器數量',
        containerStatus: '容器狀態',
        exited: '已停止',
        running: '執行中 ( {0} / {1} )',
        composeDetailHelper: '該 compose 為 1Panel 編排外部建立。暫不支援啟停操作。',
        composeOperatorHelper: '將對 {0} 進行 {1} 操作，是否繼續？',
        composeDownHelper: '將停止並刪除 {0} 編排下所有容器及網路，是否繼續？',
        composeEnvHelper2: '該編排為 1Panel 應用商店建立，請在已安裝應用中修改環境變數。',
        composeContentPlaceholder: '在此寫入或貼上 docker-compose 檔案內容',
        setting: '設定',
        goSetting: '去修改',
        restartHelper: '修改設定後需要重新啟動 Docker 服務才能生效',
        operatorStatusHelper: '此操作將{0}Docker 服務，是否繼續？',
        dockerStatus: 'Docker 服務',
        daemonJsonPathHelper: '請保證設定路徑與 docker.service 中指定的設定路徑保持一致。',
        mirrors: '映像加速',
        mirrorsHelper: '優先使用加速 URL 執行操作，設定為空則取消映像加速。',
        mirrorsHelper2: '設定請參考官方文件',
        registries: '私有倉庫',
        ipv6Helper: '開啟 IPv6 後，需要增加 IPv6 的容器網路，設定請參考官方文件',
        ipv6CidrHelper: '容器的 IPv6 位址池範圍',
        ipv6TablesHelper: 'Docker IPv6 對 iptables 規則的自動設定',
        experimentalHelper: '開啟 ip6tables 必須開啟此設定，否則 ip6tables 會被忽略',
        cutLog: '日誌切割',
        cutLogHelper1: '目前設定只會影響新建立的容器；',
        cutLogHelper2: '已經建立的容器需要重新建立使設定生效；',
        cutLogHelper3:
            '注意，重新建立容器可能會導致資料遺失。如果你的容器中有重要資料，確保在執行重建操作之前進行備份。',
        maxSize: '檔案大小',
        maxFile: '保留份數',
        liveHelper: '允許在 Docker 守護行程發生意外停機或崩潰時保留正在執行的容器狀態',
        liveWithSwarmHelper: 'live-restore 守護行程設定與 Swarm 模式不相容',
        iptablesDisable: '關閉 iptables',
        iptablesHelper1: 'Docker 對 iptables 規則的自動設定',
        iptablesHelper2: '關閉 iptables 會導致容器無法與外部網路通訊。',
        daemonJsonPath: '設定路徑',
        serviceUnavailable: '尚未啟動 Docker 服務，請在',
        startIn: '中開啟',
        sockPath: 'Socket 路徑',
        sockPathHelper: 'Docker 守護行程（Docker Daemon）與用戶端之間的通訊通道',
        sockPathHelper1: '預設路徑：/var/run/docker.sock',
        sockPathMsg: '儲存設定 Socket 路徑可能導致 Docker 服務不可用，是否繼續？',
        sockPathErr: '請選擇或輸入正確的 Docker sock 檔案路徑',
        related: '相關資源',
        includeAppstore: '顯示應用商店容器',
        excludeAppstore: '隱藏應用商店容器',
        cleanDockerDiskZone: '清理 Docker 使用的磁碟空間',
        cleanImagesHelper: '( 清理所有未被任何容器使用的映像 )',
        cleanContainersHelper: '( 清理所有處於停止狀態的容器 )',
        cleanVolumesHelper: '( 清理所有未被使用的本機磁碟區 )',
        makeImage: '製作映像',
        newImageName: '新映像名稱',
        commitMessage: '提交資訊',
        author: '作者',
        ifPause: '製作過程中是否暫停容器',
        ifMakeImageWithContainer: '是否根據此容器製作新映像？',
        finishTime: '上一次停止時間',
        exportHelper: '將選取的映像匯出為一個 tar 檔案。',
    },
    cronjob: {
        importHelper:
            '匯入時將自動跳過重名計劃任務。任務預設設定為【停用】狀態，資料關聯異常時，設定為【待編輯】狀態。',
        changeStatus: '狀態修改',
        disableMsg: '停止計劃任務會導致該任務不再自動執行。是否繼續？',
        enableMsg: '啟用計劃任務會讓該任務定期自動執行。是否繼續？',
        taskType: '任務類型',
        nextTime: '近 5 次執行',
        record: '報告',
        viewRecords: '檢視報告',
        shell: 'Shell 腳本',
        stop: '手動結束',
        stopHelper: '該操作將強制停止該次任務執行，是否繼續？',
        log: '備份日誌',
        logHelper: '備份系統日誌',
        logHelper1: '1. 1Panel 系統日誌',
        logHelper2: '2. 伺服器的 SSH 登入日誌',
        logHelper3: '3. 所有網站日誌',
        containerCheckBox: '在容器中執行（無需再輸入進入容器指令）',
        containerName: '容器名稱',
        ntp: '同步伺服器時間',
        ntp_helper: '您可以在工具箱的快速設定頁面設定 NTP 伺服器',
        app: '備份應用',
        website: '備份網站',
        rulesHelper: '支援多個排除規則，使用英文逗號 , 分隔，例：*.log,*.sql',
        lastRecordTime: '上次執行情況',
        all: '全部',
        failedRecord: '失敗記錄',
        successRecord: '成功記錄',
        database: '備份資料庫',
        backupArgs: '備份參數',
        backupArgsHelper: '未列出的備份參數可手動輸入並選擇，例：輸入 --no-data 後選擇下拉列表中的第一個選項',
        singleTransaction: '使用單一事務備份 InnoDB 表，適用於大資料量的備份',
        quick: '逐行讀取資料，而不是將整個表載入到記憶體中，適用於大資料量和低記憶體機器的備份',
        skipLockTables: '不鎖定所有表進行備份，適用於高併發的資料庫',
        setGtidPurgedOff: '備份時不匯出 GTID 資訊，適用於群組複寫環境中的資料庫還原',
        missBackupAccount: '未能找到備份帳號',
        syncDate: '同步時間 ',
        clean: '快取清理',
        curl: '存取 URL',
        taskName: '任務名稱',
        cronSpec: '執行週期',
        cronSpecDoc: '自訂執行週期僅支援【分 時 日 月 週】格式，例如 0 0 * * *，詳細參考官方文件。',
        cronSpecHelper: '請輸入正確的執行週期',
        cleanHelper: '該操作將清理所有任務執行記錄、備份檔案和日誌檔案，是否繼續？',
        backupContent: '備份內容',
        directory: '備份目錄 / 檔案',
        sourceDir: '備份目錄',
        snapshot: '系統快照',
        allOptionHelper: '目前計劃任務為備份所有【{0}】，暫不支援直接下載，可在【{0}】備份列表中檢視',
        exclusionRules: '排除規則',
        exclusionRulesHelper: '選擇或輸入排除規則，輸入完一組後Enter繼續，排除規則將對此次備份的所有壓縮操作生效',
        default_download_path: '預設下載網址',
        saveLocal: '同時保留本機備份（和雲端儲存保留份數一致）',
        url: 'URL 位址',
        urlHelper: '請輸入正確的 URL 位址',
        targetHelper: '備份帳號可在面板設定中維護',
        ignoreApp: '排除應用',
        withImage: '備份應用映像',
        retainCopies: '保留份數',
        retryTimes: '失敗重試次數',
        timeout: '逾時時間',
        ignoreErr: '忽略錯誤',
        ignoreErrHelper: '忽略備份過程中出現的錯誤，保證所有備份任務執行',
        retryTimesHelper: '為 0 表示失敗後不重試',
        retainCopiesHelper: '執行記錄及日誌保留份數',
        retainCopiesHelper1: '備份檔案保留份數',
        retainCopiesUnit: ' 份 (檢視)',
        cronSpecRule: '第 {0} 行中執行週期格式錯誤，請檢查後重試',
        cronSpecRule2: '執行週期格式錯誤，請檢查後重試',
        perMonthHelper: '每月 {0} 日 {1}:{2} 執行',
        perWeekHelper: '每週 {0} {1}:{2} 執行',
        perDayHelper: '每日 {0}:{1} 執行',
        perHourHelper: '每小時 {0}分 執行',
        perNDayHelper: '每 {0} 日 {1}:{2} 執行',
        perNHourHelper: '每 {0}小時 {1}分 執行',
        perNMinuteHelper: '每 {0}分 執行',
        perNSecondHelper: '每 {0}秒 執行',
        perMonth: '每月',
        perWeek: '每週',
        perHour: '每小時',
        perNDay: '每 N 日',
        perDay: '每天',
        perNHour: '每 N 時',
        perNMinute: '每 N 分鐘',
        perNSecond: '每 N 秒',
        day: '日',
        monday: '週一',
        tuesday: '週二',
        wednesday: '週三',
        thursday: '週四',
        friday: '週五',
        saturday: '週六',
        sunday: '週日',
        shellContent: '腳本內容',
        executor: '解釋器',
        errRecord: '錯誤的日誌記錄',
        errHandle: '任務執行失敗',
        noRecord: '目前計劃任務暫未產生記錄',
        cleanData: '刪除備份檔案',
        cleanRemoteData: '刪除遠端備份檔案',
        cleanDataHelper: '刪除該任務執行過程中產生的備份檔案',
        noLogs: '暫無任務輸出...',
        errPath: '備份路徑 [{0}] 錯誤，無法下載',
        cutWebsiteLog: '切割網站日誌',
        cutWebsiteLogHelper: '切割的日誌檔案會備份到 1Panel 的 backup 目錄下',
        syncIpGroup: '同步 WAF IP 組',
        syncIpGroupHelper: '同步 WAF 黑白名單中的遠端 IP 組',
        requestExpirationTime: '上傳請求過期時間（小時）',
        unitHours: '單位：小時',
        alertTitle: '計劃任務-{0}「{1}」任務失敗告警',
        library: {
            script: '腳本',
            syncNow: '立即同步',
            turnOnSync: '開啟自動同步',
            turnOnSyncHelper: '開啟自動同步將在每天凌晨時段進行自動同步',
            turnOffSync: '關閉自動同步',
            turnOffSyncHelper: '關閉自動同步可能導致腳本同步不及時，是否確認？',
            isInteractive: '互動式',
            interactive: '互動式腳本',
            interactiveHelper: '在腳本執行過程中需要使用者輸入參數或做出選擇，且無法用於計劃任務中。',
            library: '腳本庫',
            remoteLibrary: '遠端腳本庫',
            create: '新增腳本',
            edit: '修改腳本',
            groupHelper: '根據腳本特徵設定不同的分組，可以更快地對腳本進行篩選操作。',
            handleHelper: '將在 {0} 上執行 {1} 腳本，是否繼續？',
            noSuchApp: '未偵測到 {0} 服務，請前往腳本庫頁面手動安裝',
            syncHelper: '即將同步系統腳本庫，該操作僅針對系統腳本，是否繼續？',
        },
        withImageHelper: '備份應用商店映像，但會增加快照檔案體積。',
        cleanLog: '清理日誌',
        cleanLogscope: '清理類型',
    },
    monitor: {
        globalFilter: '全域過濾',
        enableMonitor: '監控狀態',
        storeDays: '保存天數',
        defaultNetwork: '預設網卡',
        defaultNetworkHelper: '預設監控和概覽介面顯示的網卡選項',
        defaultIO: '預設磁碟',
        defaultIOHelper: '預設監控和概覽介面顯示的磁碟選項',
        cleanMonitor: '清空監控記錄',
        cleanHelper: '該操作將清空包括 GPU 在內的所有監控記錄，是否繼續？',
        avgLoad: '平均負載',
        loadDetail: '負載詳情',
        resourceUsage: '資源使用率',
        networkCard: '網卡',
        read: '讀取',
        write: '寫入',
        readWriteCount: '讀寫次數',
        readWriteTime: '讀寫延遲',
        today: '今天',
        yesterday: '昨天',
        lastNDay: '近 {0} 天',
        lastNMonth: '近 {0} 月',
        lastHalfYear: '近半年',
        memory: '記憶體',
        percent: '佔比',
        cache: '快取',
        disk: '磁碟',
        network: '網路',
        up: '上行',
        down: '下行',
        interval: '採集間隔',
        intervalHelper: '請輸入合適的監控採集時間間隔（10秒 - 12小時）',
        runtimeDiagnostics: '執行階段診斷',
        runtimeRSS: '程序記憶體 (RSS)',
        runtimeHeapAlloc: '堆積記憶體',
        runtimeHeapObjects: '堆積物件',
        runtimeGoroutines: 'Goroutine 數量',
        goroutineSnapshot: 'Goroutine 快照',
        goroutineSummary: '共 {0} 個 Goroutine，彙總為 {1} 組呼叫堆疊',
        goroutineTruncated: '快照內容過大，目前僅顯示部分呼叫堆疊。',
        captureSnapshot: '重新整理快照',
        count: '數量',
        topFunction: '頂層函式',
        manualCapture: '手動擷取',
        startCapture: '開始擷取',
        capturing: '正在擷取',
        captureSuccess: '診斷檔案已產生，已開始下載',
        profileCPU: 'CPU',
        profileHeap: '堆積記憶體',
        profileGoroutine: 'Goroutine',
        profileMutex: '互斥鎖',
        profileBlock: '阻塞',
        runtimeRSSDesc: '程序目前佔用的實體記憶體，包括 Go 堆積、執行緒堆疊及原生記憶體。',
        runtimeHeapAllocDesc: 'Go 堆積中已配置且尚未釋放的記憶體，持續增長可能表示物件未釋放。',
        runtimeHeapObjectsDesc: 'Go 堆積中目前存活的物件數量，持續增長可能表示物件未釋放。',
        runtimeGoroutineDesc: '目前輕量級並行工作數量，持續增長通常需要檢查 Goroutine 洩漏。',
        profileCPUDesc: '在指定時間內取樣 CPU 呼叫堆疊，用於定位實際消耗 CPU 的熱點函式。',
        profileHeapDesc: '記錄目前仍在使用的 Go 堆積物件及其配置呼叫堆疊，用於排查記憶體持續增長。',
        profileGoroutineDesc: '儲存所有 Goroutine 的狀態和呼叫堆疊，並依相同呼叫鏈彙總。',
        profileMutexDesc: '統計互斥鎖競爭造成的等待時間，用於定位鎖競爭熱點。',
        profileBlockDesc: '統計 Channel、Select 和同步原語的阻塞等待，用於定位長時間阻塞。',
    },
    terminal: {
        local: '本機',
        defaultConn: '預設連接',
        defaultConnHelper: '該操作將【{0}】開啟終端後自動連線到所在節點終端，是否繼續？',
        withReset: '重置連線資訊',
        localConnJump: '預設連線資訊在【終端 - 設定】中維護，連線失敗可前往編輯',
        nodeAdminLocalOnly: '節點管理員僅支援本地終端',
        localHelper: 'local 名稱僅用於系統本機標識',
        connLocalErr: '無法自動認證，請填寫本機伺服器的登入資訊',
        testConn: '連接測試',
        saveAndConn: '儲存並連接',
        connTestOk: '連接資訊可用',
        connTestFailed: '連接不可用，請檢查連接資訊',
        host: '主機',
        createConn: '建立連接',
        noHost: '暫無主機',
        groupChange: '切換分組',
        expand: '全部展開',
        fold: '全部收縮',
        batchInput: '批次輸入',
        quickCommand: '快速指令',
        quickCmd: '快速指令',
        noSuchCommand: '匯入的CSV檔案中未能發現快速指令資料，請檢查後重試',
        quickCommandHelper: '常用命令列表，用於在終端介面底部快速選擇',
        groupDeleteHelper: '移除組後，組內所有連接將遷移到 default 組內，是否繼續？',
        quickCommandBatchHelper: '每行一條快速指令，以 名稱---命令 格式，例如：查看磁碟---df -h',
        command: '指令',
        addHost: '新增主機',
        localhost: '本機伺服器',
        ip: '主機位址',
        authMode: '認證方式',
        passwordMode: '密碼認證',
        rememberPassword: '記住認證資訊',
        keyMode: '私鑰認證',
        key: '私鑰',
        keyPassword: '私鑰密碼',
        emptyTerminal: '暫無終端連接',
        lineHeight: '字體行高',
        letterSpacing: '字體間距',
        fontSize: '字體大小',
        fontFamily: '字體集',
        fontFamilySupportHelper:
            '可選擇或輸入字體，是否生效取決於瀏覽器所在系統是否已安裝該字體，未安裝會自動回退；為空則使用預設字體',
        backgroundColor: '背景色',
        foregroundColor: '前景色',
        cursorBlink: '游標閃爍',
        cursorStyle: '游標樣式',
        cursorUnderline: '下劃線',
        cursorBlock: '塊狀',
        cursorBar: '條形',
        scrollback: '滾動行數',
        scrollSensitivity: '滾動速度',
        aiAssistant: 'AI 助手',
        aiAccountHelper: '使用所選模型帳號生成並回填命令。Ollama、vLLM 本地模型請使用自訂模型帳號。',
        aiPrefix: '觸發前綴',
        aiPrefixHelper: '輸入「前綴 + 空格」並按下 Enter 時，將觸發 AI 指令生成，例如：{0} 幫我查詢磁碟資訊。',
        aiRiskCommands: '風險命令攔截',
        aiRiskCommandsHelper: '配置需攔截的風險命令（每行一條），命中後將阻止生成並以註解回填。',
        aiSummary: '以 {0} 前綴開頭並按下 Enter 時，會觸發 AI 命令生成',
        aiPrefixAsciiVisible: '僅支援 ASCII 可見字元，不支援空格、中文或全形符號',
        saveHelper: '是否確認儲存目前終端設定？',
    },
    toolbox: {
        common: {
            toolboxHelper: '部分安裝和使用問題，可參考',
        },
        swap: {
            swap: 'Swap',
            swapHelper1: 'Swap 的大小應該是物理記憶體的 1 到 2 倍，可根據詳細情況進行調整；',
            swapHelper2: '在建立 Swap 檔案之前，請確保系統硬碟有足夠的可用空間，Swap 檔案的大小將佔用相應的磁碟空間；',
            swapHelper3:
                'Swap 可以幫助紓解記憶體壓力，但僅是一個備選項，過多依賴可能導致系統效能下降，建議優先考慮增加記憶體或最佳化應用程式記憶體使用；',
            swapHelper4: '建議定期監控 Swap 的使用情況，以確保系統正常執行。',
            swapDeleteHelper: '此操作將移除 Swap 分區 {0}，出於系統安全考慮，不會自動刪除該檔案，如需刪除請手動操作',
            saveHelper: '請先儲存目前設定',
            saveSwap: '儲存目前設定將調整 Swap 分區 {0} 大小到 {1}，是否繼續？',
            swapMin: '分區大小最小值為 40 KB，請修改後重試',
            swapMax: '分區大小最大值為 {0}，請修改後重試',
            swapOff: '分區大小最小值為 40 KB，設定為 0 則關閉 Swap 分區。',
        },
        device: {
            dnsHelper: '伺服器地址域名解析',
            dnsAlert: '請注意修改 /etc/resolv.conf 檔案的設定時，重新啟動系統後會將檔案復原為預設值',
            dnsHelper1: '當存在多個DNS時，需換行顯示，例：\n114.114.114.114\n8.8.8.8',
            hostsHelper: '主機名稱解析',
            hosts: '域名',
            hostAlert: '隱藏了已註釋的紀錄，請點選 全部設定 按鈕以檢視或設定',
            toolbox: '快速設定',
            hostname: '主機名稱',
            passwd: '系統密碼',
            passwdHelper: '輸入的字元不能包含 $ 和 &',
            timeZone: '系統時區',
            localTime: '伺服器時間',
            timeZoneChangeHelper: '修改系統時區需要重新啟動服務，是否繼續？',
            timeZoneHelper: '時區修改依賴於 timedatectl 指令，如未安裝可能導致修改失敗',
            timeZoneCN: '北京',
            timeZoneAM: '洛杉磯',
            timeZoneNY: '紐約',
            ntpALi: '阿里',
            ntpGoogle: 'Google',
            syncSite: 'NTP 伺服器',
            syncSiteHelper: '該操作將使用 {0} 作為源進行系統時間同步，是否繼續？',
            hostnameHelper: '主機名稱修改依賴於 hostnamectl 指令，如未安裝可能導致修改失敗',
            userHelper: '使用者名稱依賴於 whoami 指令取得，如未安裝可能導致取得失敗。',
            passwordHelper: '密碼修改依賴於 chpasswd 指令，如未安裝可能導致修改失敗',
            hostHelper: '填寫的內容中存在空值，請檢查修改後重試',
            dnsCheck: '測試可用性',
            dnsOK: 'DNS 設定資訊可用',
            dnsTestFailed: 'DNS 設定資訊不可用，請修改後重試',
        },
        fail2ban: {
            sshPort: '監聽 SSH 埠',
            sshPortHelper: '目前 Fail2ban 監聽主機 SSH 連接埠',
            unActive: '尚未啟用 Fail2ban 服務，請先啟用',
            operation: '對 Fail2ban 服務進行 [{0}] 操作，是否繼續？',
            fail2banChange: 'Fail2ban 設定修改',
            ignoreHelper: '白名單中的 IP 列表將被忽略封鎖，是否繼續？',
            bannedHelper: '黑名單中的 IP 列表將被伺服器封鎖，是否繼續？',
            maxRetry: '最大重試次數',
            banTime: '停用時間',
            banTimeHelper: '預設停用時間為 10 分鐘，停用時間為 -1 則表示永久停用',
            banTimeRule: '請輸入正確的停用時間或 -1',
            banAllTime: '永久停用',
            findTime: '發現週期',
            banAction: '停用方式',
            banActionOption: '通過 {0} 來停用指定的 IP 位址',
            allPorts: ' (所有埠)',
            ignoreIP: 'IP 白名單',
            bannedIP: 'IP 黑名單',
            logPath: '日誌路徑',
            logPathHelper: '預設為 /var/log/secure 或 /var/log/auth.log',
        },
        ftp: {
            ftp: 'FTP 帳戶',
            notStart: '尚未啟用 FTP 服務，請先啟用',
            initHelper: 'FTP 使用者身分尚未初始化，請先點選頂部狀態列的初始化按鈕！',
            operation: '對 FTP 服務進行 [{0}] 操作，是否繼續？',
            noPasswdMsg: '無法取得目前 FTP 帳號密碼，請先設定密碼後重試',
            enableHelper: '啟用選取的 FTP 帳號後，該 FTP 帳號將復原存取權限，是否繼續？',
            disableHelper: '停用選取的 FTP 帳號後，該 FTP 帳號將失去存取權限，是否繼續？',
            syncHelper: '同步伺服器與資料庫中的 FTP 帳戶資料，是否繼續？',
            dirSystem: '該目錄為系統保留目錄，修改可能導致系統崩潰，請修改後重試',
            dirHelper: '開啟 FTP 需要修改目錄權限，請謹慎選擇',
            dirMsg: '開啟 FTP 將修改整個 {0} 目錄權限，是否繼續？',
        },
        clam: {
            clam: '病毒掃描',
            cron: '定時掃描',
            cronHelper: '商業版支援定時掃描功能',
            specErr: '執行週期格式錯誤，請檢查後重試',
            disableMsg: '停止定時執行會導致該掃描任務不再自動執行。是否繼續？',
            enableMsg: '啟用定時執行會讓該掃描任務定期自動執行。是否繼續？',
            showFresh: '顯示病毒庫服務',
            hideFresh: '隱藏病毒庫服務',
            clamHelper: 'ClamAV 建議最低設定：3 GiB 以上記憶體、單核 2.0 GHz 以上 CPU，以及至少 5 GiB 可用硬碟空間。',
            notStart: '尚未啟用 ClamAV 服務，請先啟用',
            removeRecord: '刪除報告檔案',
            noRecords: '點選「執行」按鈕開始掃描，掃描結果將會記錄在這裡。',
            removeInfected: '刪除病毒檔案',
            removeInfectedHelper: '刪除任務偵測到的病毒檔案，以確保伺服器的安全和正常執行。',
            clamCreate: '建立掃描規則',
            infectedStrategy: '感染檔案策略',
            removeHelper: '刪除病毒檔案，請謹慎選擇',
            move: '移動',
            moveHelper: '將病毒檔案移動到指定目錄下',
            copyHelper: '將病毒檔案複製到指定目錄下',
            none: '不操作',
            noneHelper: '不對病毒檔案採取任何操作',
            scanDir: '掃描目錄',
            infectedDir: '隔離目錄',
            scanDate: '掃描時間',
            scanResult: '掃描報告條數',
            tail: '日誌顯示行數',
            infectedFiles: '感染檔案數',
            log: '詳情',
            clamConf: '掃描設定',
            clamLog: '掃描日誌',
            freshClam: '病毒庫重新整理設定',
            freshClamLog: '病毒庫重新整理日誌',
            alertHelper: '商業版支援定時掃描和簡訊告警功能',
            alertTitle: '病毒掃描「{0}」任務偵測到感染檔案告警',
        },
    },
    logs: {
        core: '面板服務',
        agent: '節點監控',
        panelLog: '面板日誌',
        operation: '操作日誌',
        login: '存取日誌',
        loginIP: '登入 IP',
        loginAddress: '登入地址',
        loginAgent: '使用者代理',
        loginStatus: '登入狀態',
        system: '系統日誌',
        hostSystem: '主機日誌',
        previousPage: '上一頁',
        nextPage: '下一頁',
        filter: '訊息篩選',
        service: '服務',
        priority: '優先級',
        priorityEmergency: '緊急 Emergency',
        priorityAlert: '警報 Alert',
        priorityCritical: '嚴重 Critical',
        priorityError: '錯誤 Error',
        priorityWarning: '警告 Warning',
        priorityNotice: '通知 Notice',
        priorityInfo: '資訊 Info',
        priorityDebug: '除錯 Debug',
        message: '訊息',
        deleteLogs: '清空日誌',
        resource: '資源',
        detail: {
            dashboard: '概覽',
            ai: 'AI',
            skills_hub: 'Skills Hub',
            ai_proxy: 'AI 網關',
            ai_benchmark: '基準測試',
            groups: '分組',
            hosts: '主機',
            apps: '應用',
            openresty: 'OpenResty',
            websites: '網站',
            monitor: '網站監控',
            containers: '容器',
            files: '檔案管理',
            runtimes: '執行環境',
            process: '行程管理',
            toolbox: '工具箱',
            backups: '備份 / 還原',
            tampers: '防篡改',
            xsetting: '介面設定',
            logs: '日誌審計',
            settings: '面板設定',
            cronjobs: '計劃任務',
            databases: '資料庫',
            waf: 'WAF',
            licenses: '許可證',
            nodes: '節點',
            commands: '快速指令',
            opsReport: '運維報表',
            ops_report: '運維報表',
            users: '使用者管理',
            roles: '角色',
            auth: '登入認證',
            auth_sources: '認證設定',
            alert: '告警通知',
            sync: '資源同步',
            exchange: '資源同步',
            xapp: 'APP',
            vms: '虛擬機管理',
        },
        websiteLog: '網站日誌',
        runLog: '執行日誌',
        errLog: '錯誤日誌',
        task: '任務日誌',
        taskName: '任務名稱',
        taskRunning: '執行中',
    },
    file: {
        name: '名稱',
        fileDirNum: '共 {0} 個目錄，{1} 個檔案，',
        currentDir: '當前目錄',
        dir: '資料夾',
        fileName: '檔案名',
        search: '在當前目錄下尋找',
        mode: '權限',
        editPermissions: '編輯權限',
        owner: '所有者',
        file: '檔案',
        remoteFile: '遠端下載',
        share: '分享',
        sync: '資料同步',
        size: '大小',
        updateTime: '修改時間',
        rename: '重新命名',
        role: '權限',
        info: '屬性',
        linkFile: '軟連結檔案',
        shareList: '分享列表',
        fileTools: '檔案工具',
        aiSearchHitLines: '命中行',
        aiSearch: 'AI 搜尋',
        aiSearchTitle: 'AI 搜尋',
        aiSearchHint:
            '按檔案內容逐行比對；比對方式見搜尋列右側按鈕與下方「進階條件」。啟用並儲存 AI 帳號後，還可產生 Markdown 摘要。',
        aiSearchAccountTitle: 'AI 帳號',
        aiSearchAccountIntro: '選擇用於產生摘要的大模型帳號，修改後請點選儲存。',
        aiSearchAccountEnable: '啟用檔案 AI 搜尋',
        aiSearchSaveAccount: '儲存帳號設定',
        aiSearchSectionQuery: '搜尋',
        aiSearchSectionConditions: '檢索條件',
        aiSearchResultsSection: '分析結果',
        aiSearchContentLabel: '搜尋內容',
        aiSearchDirLabel: '目錄',
        aiSearchExtLabel: '檔案副檔名',
        aiSearchModifiedPreset: '修改時間',
        aiSearchSizePresetLabel: '檔案大小',
        aiSearchTimeAny: '不限時間',
        aiSearchTime3h: '最近 3 小時',
        aiSearchTime1d: '最近 1 天',
        aiSearchTime7d: '最近 7 天',
        aiSearchTime30d: '最近 30 天',
        aiSearchTimeCustom: '自訂',
        aiSearchSizeAny: '不限大小',
        aiSearchSize0_10mb: '0 ~ 10 MB',
        aiSearchSize10_100mb: '10 MB ~ 100 MB',
        aiSearchSize100_1gb: '100 MB ~ 1 GB',
        aiSearchSizeGte1gb: '≥ 1 GB',
        aiSearchSizeCustom: '自訂（位元組）',
        aiSearchPlaceholder: '請輸入搜尋內容',
        aiSearchContainSub: '含子目錄',
        aiSearchMaxItems: '參與檢索的路徑／檔案條數上限（目錄列舉，1–2000）',
        aiSearchRun: '開始分析',
        aiSearchTruncated: '目錄項過多，僅納入部分清單，結果可能不完整。',
        aiSearchPreFiltered: '已依關鍵字對相對路徑做預篩選，以縮小送給模型的條目範圍。',
        aiSearchMeta: '供分析條目：{0} | 耗時 {1} | Token {2}',
        aiSearchQueryRequired: '請輸入搜尋描述或關鍵字',
        aiSearchContentHits: '內容命中',
        aiSearchContentScanMeta: '內容掃描：已讀取 {0} 個文字檔案（依目前檢索條件；受大小與數量限制）。',
        aiSearchNoLineHits: '在已掃描的文字檔案中，沒有任何一行符合目前檢索條件；上方摘要仍可能基於檔名與中繼資料。',
        aiSearchHitsTruncated: '部分檔案未掃描或命中清單因上限被截斷。',
        aiSearchHitFiles: '有命中的檔案',
        aiSearchOpenFile: '在編輯器中開啟',
        aiSearchOpenAtLine: '開啟並定位到此行',
        aiSearchGrepOnlyHint:
            '目前未啟用檔案 AI：只做確定性的內容檢索，不會呼叫大模型。啟用並儲存 AI 帳號後可獲得摘要。搜尋列與下方選項均生效。',
        aiSearchMatchCase: '區分大小寫',
        aiSearchWholeWord: '全詞比對（英文詞邊界 \\b）',
        aiSearchUseRegex: '正則表達式（Go RE2 語法）',
        aiSearchExtensions: '檔案副檔名（逗號分隔，如 go,ts,md）',
        aiSearchMinSize: '最小檔案大小（位元組，0 表示不限制）',
        aiSearchMaxSize: '最大檔案大小（位元組，0 表示不限制）',
        aiSearchSectionAdvanced: '進階條件',
        aiSearchLimitMaxItems: '檢索總檔案數',
        aiSearchLimitMaxScan: '內容掃描檔案數',
        aiSearchLimitMaxBytes: '單檔內容讀取上限',
        aiSearchLimitHitsPerFile: '單檔命中行',
        aiSearchLimitTotalHits: '命中行總數',
        aiSearchLimitUnitEntries: '條',
        aiSearchLimitUnitFiles: '個檔案',
        aiSearchLimitUnitBytes: 'B',
        aiSearchLimitUnitLines: '行',
        aiSearchMaxScanFiles: '內容掃描最多檔案數',
        aiSearchMaxFileBytes:
            '內容掃描時每個檔案最多讀取的位元組數。與上方「檔案大小」不同：那是依磁碟上的檔案大小決定是否進入清單；此項限制開啟檔案後用於比對的實際讀取量。',
        aiSearchMaxHitsPerFile: '單檔最多命中行',
        aiSearchMaxTotalHits: '命中行總數上限',
        aiSearchGrepMetaContent:
            '內容掃描：搜尋總條目 {0}，已讀取 {1} 個文字檔案（依目前檢索條件；受大小與數量限制）。耗時 {2}',
        aiSearchAdvancedResetDefaults: '恢復預設上限',
        zip: '壓縮',
        group: '使用者群組',
        path: '路徑',
        public: '公共',
        setRole: '設定權限',
        link: '是否連結',
        rRole: '讀取',
        wRole: '寫入',
        xRole: '可執行',
        compress: '壓縮',
        deCompress: '解壓',
        compressType: '壓縮格式',
        compressDst: '壓縮路徑',
        replace: '覆蓋已存在的檔案',
        compressSuccess: '壓縮成功',
        deCompressSuccess: '解壓成功',
        deCompressDst: '解壓路徑',
        linkType: '連結類型',
        softLink: '軟連結',
        hardLink: '硬連結',
        linkPath: '連結路徑',
        selectFile: '選擇檔案',
        downloadSuccess: '下載成功',
        downloadUrl: '下載網址',
        downloadStart: '下載開始!',
        wgetUrlInvalid: '請輸入有效的 http(s) 下載網址',
        moveSuccess: '移動成功',
        copySuccess: '複製成功',
        pasteMsg: '請在目標目錄點選右上角【貼上】按鈕',
        move: '移動',
        calculate: '計算',
        remark: '備註',
        setRemark: '設定備註',
        remarkPrompt: '請輸入備註內容',
        remarkPlaceholder: '備註內容',
        remarkToggle: '備註',
        remarkToggleTip: '載入檔案備註',
        canNotDeCompress: '無法解壓此檔案',
        uploadSuccess: '上傳成功!',
        downloadProcess: '下載進度',
        downloading: '正在下載...',
        infoDetail: '檔案屬性',
        stopWgetConfirm: '確認停止該下載任務？',
        root: '根目錄',
        list: '檔案列表',
        sub: '子目錄',
        theme: '主題',
        language: '語言',
        eol: '行尾符',
        history: '歷史版本',
        historyTitle: '歷史版本',
        historyHint: '記錄檔案變更前的版本，可查看檔案內容的修改歷史，回退內容修改版本。',
        historySettingTitle: '版本策略',
        historyEnable: '啟用版本記錄',
        historyMaxPerPath: '單檔保留條數',
        historyDiskQuota: '全域磁碟配額 (MB)',
        historyCurrentScope: '目前檔案',
        historyAllScope: '所有檔案',
        historyDeleteConfirm: '確定刪除所選的修改記錄？',
        historyNeedFile: '請先開啟一個檔案',
        historyRestore: '還原此版本',
        historyOperationOnlyHint: '目前選中的是檔案操作，不支援版本還原。',
        historyCurrentFile: '目前檔案',
        historyLatestVersion: '左側顯示歷史版本內容，右側顯示所選檔案的最新版本內容',
        historyCompareTarget: '對比目標',
        historyCompareTargetPath: '對比路徑',
        historyRestoreConfirm: '確定將此版本還原到目前檔案嗎？',
        historyRestoreDirtyConfirm: '目前檔案還有未儲存的修改，還原後會覆蓋這些內容。是否繼續？',
        historyRestoreSuccess: '版本還原成功',
        historyDirtyHint: '目前編輯器存在未儲存修改，還原版本會覆蓋這些內容。',
        historyDiffHintCurrent: '左側顯示歷史版本內容，右側顯示目前檔案內容',
        historyDiffHintAll: '左側顯示歷史版本內容，右側顯示所選檔案的最新版本內容',
        copyDir: '複製路徑',
        shareFile: '分享檔案',
        shareExpire: '有效期限',
        shareExpire1h: '1 小時',
        shareExpire6h: '6 小時',
        shareExpire24h: '24 小時',
        shareExpire3d: '3 天',
        shareExpire7d: '7 天',
        sharePassword: '存取密碼',
        sharePasswordPlaceholder: '不填則連結無需密碼',
        shareMaxDownloads: '最大下載次數',
        shareMaxDownloadsHint: '0 表示不限制',
        shareGenerate: '產生連結',
        shareRegenerate: '再次分享',
        shareClose: '關閉',
        shareCancel: '取消分享',
        shareCancelConfirm: '確定取消該檔案的分享？',
        shareDetail: '詳情',
        shareCopyLink: '複製連結',
        shareLinkLabel: '分享連結',
        shareQrCode: '二維碼',
        shareQrDialogTitle: '分享連結二維碼圖片',
        shareQrDialogHelper: '手機打開微信、QQ 掃一掃',
        shareSaveImage: '保存圖片',
        shareOpenImage: '打開圖片',
        shareExtractFile: '提取檔案',
        shareDownloadingHint: '檔案準備中，正在開始下載…',
        shareInvalid: '分享連結無效或已失效',
        shareDownloadFailed: '下載失敗，請稍後重試',
        sharePasswordRequired: '存取密碼',
        sharePasswordRequiredInput: '請輸入存取密碼',
        sharePasswordLengthHint: '存取密碼長度需為 4-256 個字元',
        shareDownloadPasswordTip: '連結設定了存取密碼，請輸入後再下載',
        shareRiskAlert: '外鏈分享連結存在一定安全風險，建議僅分享給可信任人員，注意保護敏感資訊不被洩露。',
        sharePasswordSeparate:
            '已設定存取密碼，請以安全方式告知對方；開啟連結時需在網址後加上參數 &password=密碼，或使用可填寫密碼的下載工具。',
        shareExpiresAt: '過期時間',
        paste: '貼上',
        changeOwner: '修改使用者和使用者群組',
        containSub: '同時修改子檔案屬性',
        ownerHelper: 'PHP 執行環境預設使用者:使用者群組為 1000:1000, 容器內外使用者顯示不一致為正常現象',
        searchHelper: '支援 * 等萬用字元',
        uploadFailed: '【{0}】 檔案上傳失敗',
        fileUploadStart: '正在上傳【{0}】...',
        uploadOverallProgress: '總進度',
        uploadCurrentFileProgress: '目前檔案',
        currentSelect: '當前選中: ',
        unsupportedType: '不支援的檔案類型',
        deleteHelper: '確定刪除所選檔案？ 預設刪除之後將進入回收站？',
        fileHelper: '注意：1. 搜尋結果不支援排序功能 2. 資料夾無法依大小排序。',
        forceDeleteHelper: '永久刪除檔案（不進入回收站，直接刪除）',
        recycleBin: '回收站',
        sourcePath: '原路徑',
        deleteTime: '刪除時間',
        reduce: '還原',
        confirmReduce: '確定還原以下檔案？',
        reduceSuccess: '還原成功',
        reduceHelper: '如果原路徑存在同名檔案或目錄，將會被覆蓋，是否繼續？',
        clearRecycleBin: '清空回收站',
        clearRecycleBinHelper: '是否清空回收站？',
        favorite: '收藏夾',
        removeFavorite: '是否從收藏夾移出？',
        addFavorite: '新增/移出收藏夾',
        addFavoriteAction: '新增收藏夾',
        removeFavoriteAction: '移出收藏夾',
        clearList: '清空列表',
        deleteRecycleHelper: '確定永久刪除以下檔案？',
        typeErrOrEmpty: '【{0}】 檔案類型錯誤或為空資料夾',
        dropHelper: '將需要上傳的檔案拖曳到此處',
        fileRecycleBin: '檔案回收站',
        fileRecycleBinMsg: '已{0}回收站',
        wordWrap: '自動換行',
        deleteHelper2: '確定刪除所選檔案？ 刪除操作不可回滾',
        ignoreCertificate: '忽略不可信憑證',
        ignoreCertificateHelper:
            '下載時忽略不可信憑證可能導致資料洩露或篡改。請謹慎使用此選項，僅在信任下載源的情況下啟用',
        useProxy: '使用代理下載',
        useProxyHelper: '使用面板設定中的代理伺服器存取遠端下載網址',
        uploadOverLimit: '檔案數量超過 1000請壓縮後上傳',
        clashDidNotSupport: '檔名禁止包含 .1panel_clash',
        clashDeleteAlert: '回收站資料夾不能刪除',
        clashOpenAlert: '回收站目錄請點選【回收站】按鈕開啟',
        right: '前進',
        back: '後退',
        top: '返回上一層',
        up: '上一層',
        openWithVscode: 'VS Code 開啟',
        vscodeHelper: '請確認認證方式、主機、埠和使用者名稱。私鑰認證需先在執行 VS Code 的本地電腦完成 SSH 設定。',
        vscodeCopyConfig: '複製腳本',
        vscodeKeyHelper: '私鑰下載檔名將根據填寫的路徑產生。請將檔案儲存至該路徑，設定腳本會校驗檔案並設定存取權限。',
        vscodeKeyPath: 'SSH 私鑰路徑',
        vscodeKeyPathPlaceholder: '例如：~/.ssh/id_ed25519',
        vscodeSelectKey: 'SSH 私鑰',
        vscodeScriptPreview: 'SSH 設定腳本',
        vscodePasswordHelper: '密碼認證不會寫入本地 SSH 設定，連線遠端主機時需在 VS Code 中輸入密碼。',
        vscodePasswordHint: '密碼認證將使用填寫的主機、埠和使用者名稱發起連線，無需設定腳本或私鑰檔案。',
        vscodeScriptPreviewHint:
            '在執行 VS Code 的本地電腦執行設定腳本後，將寫入用於遠端連線的 SSH 別名。主機、埠、使用者名稱、私鑰或私鑰路徑變更後，請重新執行腳本。',
        vscodePasswordModeTitle: '密碼認證',
        vscodePasswordModeHint: '密碼認證將使用填寫的主機、埠和使用者名稱發起連線，無需設定腳本或私鑰檔案。',
        vscodePasswordStep1: '確認主機、埠和使用者名稱。',
        vscodePasswordStep2: '開啟 VS Code，連線時輸入密碼。',
        vscodePasswordStep3: '不需要下載私鑰。',
        saveContentAndClose: '檔案已被修改，是否儲存並關閉？',
        saveAndOpenNewFile: '檔案已被修改，是否儲存並開啟新檔案？',
        noEdit: '檔案未修改，無需此操作',
        noNameFolder: '未命名資料夾',
        noNameFile: '未命名檔案',
        minimap: '縮圖',
        fileCanNotRead: '此檔案不支援預覽',
        previewTruncated: '檔案過大，僅顯示末尾內容',
        previewEmpty: '檔案內容為空或不是文字檔案',
        previewLargeFile: '預覽',
        panelInstallDir: '1Panel 安裝目錄不能刪除',
        wgetTask: '下載任務',
        existFileTitle: '同名檔案提示',
        existFileHelper: '上傳的檔案存在同名檔案，是否覆蓋？',
        existFileSize: '檔案大小（新->舊）',
        existFileDirHelper: '選擇的檔案/資料夾存在同名，請謹慎操作',
        coverDirHelper: '選取要覆蓋的資料夾，將複製到目標路徑',
        noSuchFile: '找不到該檔案或目錄，請檢查後重試。',
        setting: '設定',
        showHide: '顯示隱藏檔案',
        noShowHide: '不顯示隱藏檔案',
        cancelUpload: '取消上傳',
        cancelUploadHelper: '是否取消上傳，取消後將清空上傳列表',
        keepOneTab: '至少保留一個分頁',
        notCanTab: '無法新增更多分頁',
        convert: '檔案格式轉換',
        converting: '轉換為',
        fileCanNotConvert: '此檔案不支援轉換格式',
        formatType: '格式類型',
        sourceFormat: '來源格式',
        sourceFile: '來源檔案',
        saveDir: '儲存目錄',
        deleteSourceFile: '是否刪除來源檔案',
        convertHelper: '將選中的檔案轉換為其他格式',
        convertHelper1: '請選擇需要轉換格式的檔案',
        execConvert: '開始轉換，可在任務中心檢視轉換日誌',
        convertLogs: '轉換日誌',
        formatConvert: '格式轉換',
    },
    ssh: {
        autoStart: '開機自啟',
        enable: '設定開機自啟',
        disable: '關閉開機自啟',
        sshAlert: '列表資料根據登入時間排序，但請注意，切換時區或其他操作可能導致登入日誌的時間出現偏差。',
        sshAlert2: '您可以透過工具箱中的 Fail2ban 封鎖嘗試暴力破解的 IP 位址，從而提高主機的安全性。',
        sshOperate: '對 SSH 服務進行 [{0}] 操作，是否繼續？',
        sshChange: 'SSH 設定修改',
        sshChangeHelper: '此操作將 {0} 修改為 [{1}] ，是否繼續？',
        sshFileChangeHelper: '直接修改設定檔可能會導致服務不可用，請謹慎操作，是否繼續？',
        port: '連接埠',
        portHelper: '指定 SSH 服務監聽的埠號，預設為 22。',
        listenAddress: '監聽地址',
        allV4V6: '0.0.0.0:{0}(IPv4)和 :::{0}(IPv6)',
        listenHelper: '同時取消 IPv4 和 IPv6 設定，將會同時監聽 0.0.0.0:{0}(IPv4) 和 :::{0}(IPv6)',
        addressHelper: '指定 SSH 服務監聽的 IP 位址',
        permitRootLogin: 'root 使用者',
        rootSettingHelper: 'root 使用者 SSH 登入方式，預設所有 SSH 登入。',
        rootHelper1: '允許 SSH 登入',
        rootHelper2: '禁止 SSH 登入',
        rootHelper3: '僅允許金鑰登入',
        rootHelper4: '僅允許執行預先定義的指令，不能進行其他操作',
        passwordAuthentication: '密碼認證',
        pwdAuthHelper: '是否啟用密碼認證，預設啟用。',
        pubkeyAuthentication: '金鑰認證',
        privateKey: '私鑰',
        publicKey: '公鑰',
        password: '密碼',
        createMode: '建立方式',
        generate: '自動生成',
        unSyncPass: '金鑰密碼無法同步',
        syncHelper: '同步操作將清理失效金鑰並同步新增的完整金鑰對，是否繼續？',
        input: '手動輸入',
        import: '檔案上傳',
        authKeys: '授權金鑰',
        authKeysHelper: '是否儲存目前公鑰資訊？',
        pubkey: '金鑰資訊',
        pubKeyHelper: '目前金鑰資訊僅對使用者 {0} 生效',
        encryptionMode: '加密方式',
        passwordHelper: '支援大小寫英文、數字,長度6-10',
        reGenerate: '重新生成金鑰',
        keyAuthHelper: '是否啟用金鑰認證，預設啟用。',
        useDNS: '反向解析',
        dnsHelper: '控制 SSH 伺服器是否啟用 DNS 解析功能，從而驗證連接方的身份。',
        confFileOrderHelper: '下拉切換配置檔案並編輯儲存；按載入順序生效，先載入優先生效，後載入不覆蓋前值。',
        confFileOrderLabel: '{0}（載入順序 #{1}）',
        analysis: '統計資訊',
        denyHelper: '將對下列地址進行【封鎖】操作，設定後該 IP 將禁止存取伺服器，是否繼續？',
        acceptHelper: '將對下列地址進行【放行】操作，設定後該 IP 將復原正常存取，是否繼續？',
        noAddrWarning: '目前未選中任何可【{0}】地址，請檢查後重試',
        loginLogs: 'SSH 日誌',
        loginMode: '登入方式',
        authenticating: '金鑰',
        publickey: '金鑰',
        belong: '歸屬地',
        local: '內網',
        remote: '外網',
        session: '工作階段',
        loginTime: '登入時間',
        loginIP: '登入IP',
        stopSSHWarn: '是否斷開此SSH連接',
    },
    setting: {
        panel: '面板',
        user: '面板使用者',
        userChange: '修改面板使用者',
        userChangeHelper: '修改面板使用者將登出，是否繼續？',
        passwd: '面板密碼',
        emailHelper: '用於密碼找回',
        watermark: '浮水印設定',
        watermarkContent: '浮水印內容',
        contentHelper: '{0} 表示節點名稱，{1} 表示節點地址，既可以使用變數，也可以填寫自訂名稱。',
        watermarkColor: '浮水印顏色',
        watermarkFont: '浮水印字型大小',
        watermarkHeight: '浮水印高度',
        watermarkWidth: '浮水印寬度',
        watermarkRotate: '旋轉角度',
        watermarkGap: '間距',
        watermarkCloseHelper: '是否確認關閉系統浮水印設定？',
        watermarkOpenHelper: '是否確認儲存目前系統浮水印設定？',
        title: '面板別名',
        titleHelper: '支援長度 3 至 30 的英文字母、中文、數字、空格和常見的特殊符號。',
        panelPort: '面板埠',
        portHelper: '建議埠範圍8888 - 65535，注意：有安全組的伺服器請提前在安全組放行新埠',
        portChange: '埠修改',
        portChangeHelper: '服務埠修改需要重新啟動服務，是否繼續？',
        theme: '主題顏色',
        menuTabs: '選單分頁',
        menuAccordion: '選單多項展開',
        menuAccordionHelper: '啟用後，側邊欄可同時展開多個選單分組。',
        componentSize: '元件大小',
        dark: '暗色',
        darkGold: '黑金',
        light: '亮色',
        auto: '跟隨系統',
        language: '系統語言',
        runtimeEnv: '運行環境',
        docSource: '文件來源',
        withByRegion: '跟隨運行區域（預設）',
        withByLang: '跟隨系統語言',
        region: '運行區域',
        cn: '中國大陸',
        intl: '全球',
        regionHelper: '變更運行區域後，將調整以下資源來源：',
        regionHelper1: '系統安裝套件',
        regionHelper2: '應用商店與腳本庫',
        regionHelper3: '使用手冊及相關文件',
        regionHelper4: '此操作可能影響後續資源下載與存取，請謹慎操作。',
        regionTip: '運行區域影響系統更新源以及安裝包下載地址。',
        docSourceTip: '文件來源決定文件與更新日誌的跳轉語言。',
        languageHelper: '預設跟隨瀏覽器語言，設定後只對目前瀏覽器生效，更換瀏覽器後需要重新設定',
        sessionTimeout: '面板逾時時間',
        sessionTimeoutError: '最小逾時時間為 300 秒',
        sessionTimeoutHelper: '如果使用者超過 {0} 秒未操作面板，面板將自動登出',
        systemIP: '預設存取地址',
        systemIPHelper: '應用跳轉、容器存取等功能將使用此地址進行路由。每個節點可設定不同地址。',
        proxy: '代理伺服器',
        proxyHelper: '設定代理伺服器後，將在以下場景中生效：',
        proxyHelper1: '應用商店的安裝包下載和同步（商業版功能）',
        proxyHelper2: '系統版本升級及取得更新說明（商業版功能）',
        proxyHelper3: '系統許可證的驗證和同步',
        proxyHelper4: 'Docker 拉取映像等網路請求將透過代理伺服器存取（商業版功能）',
        proxyHelper5: '系統類型腳本庫的統一下載與同步（商業版功能）',
        proxyHelper6: '申請憑證（商業版功能）',
        proxyType: '代理類型',
        proxyUrl: '代理地址',
        proxyPort: '代理埠',
        proxyPasswdKeep: '記住密碼',
        proxyDocker: 'Docker 代理',
        proxyDockerHelper: '將代理伺服器設定同步至 Docker，支援離線伺服器拉取映像等操作',
        syncToNode: '同步至子節點',
        syncToNodeHelper: '同步設定至其他節點',
        nodes: '節點',
        selectNode: '選擇節點',
        selectNodeError: '請選擇節點',
        apiInterface: 'API 介面',
        apiInterfaceClose: '關閉後將不能使用 API 介面進行存取，是否繼續？',
        apiInterfaceHelper: '提供面板支援 API 介面存取',
        apiInterfaceAlert1: '請不要在生產環境開啟，這可能新增伺服器安全風險',
        apiInterfaceAlert2: '請不要使用協力廠商應用呼叫面板 API，以防止潛在的安全威脅。',
        apiInterfaceAlert3: 'API 文件',
        apiInterfaceAlert4: '使用說明',
        apiKey: '介面金鑰',
        apiKeyHelper: '介面金鑰用於外部應用存取 API 介面',
        ipWhiteList: 'IP白名單',
        ipWhiteListEgs: '當存在多個 IP 時，需要換行顯示，例：\n172.16.10.111 \n172.16.10.0/24',
        ipWhiteListHelper:
            '必需在 IP 白名單清單中的 IP 才能存取面板 API 介面，0.0.0.0/0（所有 IPv4），::/0（所有 IPv6）',
        apiTrustedProxies: 'API 可信代理',
        apiTrustedProxiesEgs: '每行填寫一個代理伺服器 IP 或 CIDR，例如：\n172.16.10.111\n172.16.10.0/24',
        apiTrustedProxiesHelper:
            '使用反向代理時，請填寫代理伺服器的 IP 或網段，以便正確取得用戶端 IP；不使用時請留空。不支援 0.0.0.0/0 和 ::/0。',
        apiKeyValidityTime: '介面金鑰有效期',
        apiKeyValidityTimeEgs: '介面金鑰有效期（組織分）',
        apiKeyValidityTimeHelper: '介面時間戳記到請求時的目前時間戳之間有效（組織分），設定為0時，不做時間戳記校驗',
        apiKeyReset: '介面金鑰重設',
        apiKeyResetHelper: '重設金鑰後，已關聯金鑰服務將失效，請重新新增新金鑰至服務。',
        confDockerProxy: '設定 Docker 代理',
        restartNowHelper: '設定 Docker 代理需要重新啟動 Docker 服務。',
        restartNow: '立即重新啟動',
        restartLater: '稍後手動重新啟動',
        systemIPWarning: '當前節點尚未設定預設存取地址，請前往面板設定進行設定',
        systemIPWarning1: '當前伺服器地址為 {0}，無法快速跳轉',
        syncTime: '伺服器時間',
        timeZone: '時區',
        timeZoneChangeHelper: '修改時區需要重新啟動服務，是否繼續？',
        timeZoneHelper: '時區修改依賴系統 timedatectl 服務，重新啟動 1Panel 服務後生效。',
        timeZoneCN: '北京',
        timeZoneAM: '洛杉磯',
        timeZoneNY: '紐約',
        ntpALi: '阿里雲',
        ntpGoogle: 'Google',
        syncSite: 'NTP 伺服器',
        syncSiteHelper: '該操作將使用 {0} 作為來源同步系統時間，是否繼續？',
        changePassword: '密碼修改',
        oldPassword: '原密碼',
        newPassword: '新密碼',
        retryPassword: '確認密碼',
        passwordEmptyTip: '密碼留空則不修改目前密碼',
        noSpace: '輸入資訊不能包括空格符號',
        duplicatePassword: '新密碼不能與原始密碼一致，請重新輸入',
        diskClean: '快取清理',
        developerMode: '預覽體驗計劃',
        developerModeHelper: '取得 1Panel 的預覽版本，以分享有關新功能和更新的回饋',
        thirdParty: '第三方帳號',
        scope: '使用範圍',
        public: '公有',
        publicHelper: '公有類型的備份帳號會同步到各個子節點，子節點可以一起使用',
        private: '私有',
        privateHelper: '私有類型的備份帳號只建立在目前節點上，僅供目前節點使用',
        noTypeForCreate: '目前無可建立備份類型',
        LOCAL: '伺服器磁碟',
        OSS: '阿里雲 OSS',
        S3: '亞馬遜 S3 雲端儲存',
        mode: '模式',
        MINIO: 'MINIO',
        SFTP: 'SFTP',
        WebDAV: 'WebDAV',
        WebDAVAlist: 'WebDAV 連接 Alist 參考官方文件',
        UPYUN: '又拍雲',
        ALIYUN: '阿里雲端硬碟',
        ALIYUNHelper: '目前阿里雲端硬碟非用戶端下載最大限制為 100 MB，超過限制需要透過用戶端下載',
        ALIYUNRecover:
            '目前阿里雲端硬碟非用戶端下載最大限制為 100 MB，超過限制需要透過用戶端下載到本機後，同步快照進行復原',
        GoogleDrive: 'Google雲端硬碟',
        analysis: '解析',
        analysisHelper: '貼上整個 token 內容，自動解析所需部分，詳細操作參考官方文件',
        serviceName: '服務名稱',
        operator: '操作員',
        OneDrive: '微軟 OneDrive',
        isCN: '世紀互聯',
        isNotCN: '國際版',
        client_id: '用戶端 ID',
        client_secret: '用戶端金鑰',
        redirect_uri: '重定向 URL',
        onedrive_helper: '自訂設定請參考官方文件',
        clickToRefresh: '單擊可手動重新整理',
        refreshTime: '令牌重新整理時間',
        refreshStatus: '令牌重新整理狀態',
        codeWarning: '目前授權碼格式錯誤，請重新確認',
        backupDir: '備份目錄',
        code: '授權碼',
        codeHelper:
            '請點選取得按鈕，然後登入 {0} 複製跳轉連結中 code 後面的內容，貼到該輸入框中，詳細操作參考官方文件。',
        googleHelper: '請先建立Google應用並取得用戶端資訊，填寫表單後點選取得按鈕，詳細操作參考官方文件。',
        loadCode: '取得',
        COS: '騰訊雲 COS',
        ap_beijing_1: '北京一區',
        ap_beijing: '北京',
        ap_nanjing: '南京',
        ap_shanghai: '上海',
        ap_guangzhou: '廣州',
        ap_chengdu: '成都',
        ap_chongqing: '重慶',
        ap_shenzhen_fsi: '深圳金融',
        ap_shanghai_fsi: '上海金融',
        ap_beijing_fsi: '北京金融',
        ap_hongkong: '中國香港',
        ap_singapore: '新加坡',
        ap_mumbai: '孟買',
        ap_jakarta: '雅加達',
        ap_seoul: '首爾',
        ap_bangkok: '曼谷',
        ap_tokyo: '東京',
        na_siliconvalley: '矽谷（美西）',
        na_ashburn: '維吉尼亞（美東）',
        na_toronto: '多倫多',
        sa_saopaulo: '聖保羅',
        eu_frankfurt: '法蘭克福',
        KODO: '七牛雲 Kodo',
        scType: '儲存類型',
        typeStandard: '標準儲存',
        typeStandard_IA: '低頻儲存',
        typeArchive: '歸檔儲存',
        typeDeep_Archive: '深度歸檔儲存',
        scLighthouse: '預設，輕量物件儲存僅支援該儲存類型',
        scStandard: '標準儲存，適用於即時存取的大量熱點檔案、頻繁的資料互動等業務場景。',
        scStandard_IA: '低頻儲存，適用於較低存取頻率（例如平均每月存取頻率1到2次）的業務場景，最少儲存30天。',
        scArchive: '歸檔儲存，適用於極低存取頻率（例如半年存取1次）的業務場景。',
        scDeep_Archive: '深度歸檔儲存，適用於極低存取頻率（例如1年存取1~2次）的業務場景。',
        archiveHelper: '歸檔儲存的檔案無法直接下載，需要先在對應的雲服務商網站進行復原操作，請謹慎使用',
        backupAlert: '理論上只要雲廠商相容 S3 協議，就可以用現有的亞馬遜 S3 雲端儲存來備份，詳細設定請參考 ',
        domain: '加速域名',
        backupAccount: '備份帳號',
        loadBucket: '取得桶',
        accountName: '帳戶名稱',
        accountKey: '帳戶金鑰',
        address: '地址',
        path: '路徑',
        backupJump: '未在目前備份列表中的備份檔案，請嘗試從檔案目錄中下載後匯入備份。',
        snapshot: '快照',
        noAppData: '暫無可選擇系統應用',
        noBackupData: '暫無可選擇備份資料',
        stepBaseData: '基礎資料',
        stepAppData: '系統應用',
        stepPanelData: '系統資料',
        stepBackupData: '備份資料',
        stepOtherData: '其他資料',
        operationLog: '保留操作日誌',
        loginLog: '保留存取日誌',
        systemLog: '保留系統日誌',
        taskLog: '保留任務日誌',
        monitorData: '保留監控資料',
        dockerConf: '保留 Docker 設定',
        selectAllImage: '備份所有應用映像',
        logLabel: '日誌',
        agentLabel: '節點設定',
        appDataLabel: '應用資料',
        appImage: '應用映像',
        appBackup: '應用備份',
        backupLabel: '備份目錄',
        confLabel: '設定檔',
        dockerLabel: '容器',
        taskLabel: '計劃任務',
        resourceLabel: '應用資源目錄',
        runtimeLabel: '執行環境',
        appLabel: '應用',
        databaseLabel: '資料庫',
        snapshotLabel: '快照檔案',
        websiteLabel: '網站',
        directoryLabel: '目錄',
        appStoreLabel: '應用商店',
        shellLabel: '腳本',
        tmpLabel: '暫存資料夾',
        sslLabel: '憑證目錄',
        reCreate: '建立快照失敗',
        reRollback: '回滾快照失敗',
        deleteHelper: '將刪除該快照的所有備份檔案，包括第三方備份帳號中的檔案。',
        ignoreRule: '排除規則',
        editIgnoreRule: '@:commons.button.edit@:setting.ignoreRule',
        ignoreHelper: '快照時將使用該規則對 1Panel 資料目錄進行壓縮備份，請謹慎修改。',
        ignoreHelper1: '一行一個，例： \n*.log\n/opt/1panel/cache',
        status: '快照狀態',
        panelInfo: '寫入 1Panel 基礎資訊',
        panelBin: '備份 1Panel 系統檔案',
        daemonJson: '備份 Docker 設定檔',
        appData: '備份 1Panel 已安裝應用',
        panelData: '備份 1Panel 資料目錄',
        backupData: '備份 1Panel 本機備份目錄',
        compress: '製作快照檔案',
        upload: '上傳快照檔案',
        recoverDetail: '復原詳情',
        recoverFailed: '快照復原失敗',
        importHelper: '快照檔案目錄：',
        lastRecoverAt: '上次復原時間',
        lastRollbackAt: '上次回滾時間',
        reDownload: '重新下載備份檔案',
        recoverErrArch: '不支援在不同伺服器架構之間進行快照復原操作!',
        recoverErrSize: '偵測到目前磁碟空間不足，請檢查或清理後重試!',
        recoverHelper: '即將從快照 {0} 開始復原，復原前請確認以下資訊：',
        recoverHelper1: '復原需要重新啟動 Docker 以及 1Panel 服務',
        recoverHelper2: '請確保伺服器磁碟空間充足 ( 快照檔案大小: {0}, 可用空間: {1} )',
        recoverHelper3: '請確保伺服器架構與建立快照伺服器架構資訊保持一致 (目前伺服器架構: {0} )',
        recoverHelper4: '此操作僅會回滾主節點，如存在已升級的子節點，請先回滾子節點後再執行此操作',
        rollback: '回滾',
        rollbackHelper:
            '即將回滾本次復原，回滾將取代所有本次復原的檔案，過程中可能需要重新啟動 Docker 以及 1Panel 服務，是否繼續？',
        upgradeRecord: '升級記錄',
        upgrading: '正在升級中，請稍候',
        upgradeHelper: '升級操作需要重新啟動 1Panel 服務，是否繼續？',
        noUpgrade: '已是最新版本',
        versionHelper: '1Panel 版本號命名規則為： [大版本].[功能版本].[Bug 修復版本]，例：',
        rollbackLocalHelper: '主節點暫不支援直接回滾，請手動執行「1pctl restore」指令回滾',
        upgradeCheck: '檢查更新',
        upgradeNotes: '更新內容',
        upgradeNow: '立即更新',
        source: '下載源',
        versionNotSame: '節點版本與主節點不一致，請在節點管理中升級後重試。',
        versionCompare: '偵測到節點 {0} 版本已是目前可升級最新版本，請檢查主節點版本後重試',
        safe: '安全',
        passkey: '通行金鑰',
        passkeyManage: '管理',
        passkeyKeyManagement: '密鑰管理',
        passkeyHelper: '用於快速登入，最多可綁定 5 個通行金鑰',
        passkeyRequireSSL: '需設定網域綁定並透過 HTTPS 存取後才能使用通行金鑰',
        passkeyTrustedProxies: '可信代理',
        passkeyTrustedProxiesHelper:
            '僅當請求來源命中以下 IP/CIDR 時，才會信任 Forwarded 與 X-Forwarded-Proto 判斷 HTTPS',
        passkeyNotSupported: '目前瀏覽器或環境不支援通行金鑰，請確認網域與 HTTPS',
        passkeyPrereqTitle: '使用通行金鑰需滿足以下前置條件',
        passkeyPrereqBindDomain: '已設定 1Panel 網域綁定',
        passkeyPrereqHttps: '已透過 HTTPS 安全存取',
        passkeyPrereqBrowser: '目前環境支援 Passkey（WebAuthn + 平台驗證器）',
        passkeyPrereqBrowserDetailWebAuthnUnavailable: '請使用系統瀏覽器存取，並確認已綁定網域且透過 HTTPS 開啟面板',
        passkeyPrereqBrowserDetailPlatformCapabilityUnavailable:
            '目前環境無法使用裝置認證，請改用系統瀏覽器並確認系統版本較新',
        passkeyPrereqBrowserDetailNoPlatformAuthenticator:
            '請先在系統中啟用螢幕鎖定/指紋/臉部辨識/Windows Hello 後重試',
        passkeyPrereqBrowserDetailDetectFailed: '環境檢測失敗，請重新整理後重試，或改用系統瀏覽器存取',
        passkeyPrereqGoSetup: '去設定',
        passkeyCount: '已綁定 {0}/{1}',
        passkeyName: '名稱',
        passkeyNameHelper: '請輸入用於區分裝置的名稱',
        passkeyAdd: '新增通行金鑰',
        passkeyCreatedAt: '建立時間',
        passkeyLastUsedAt: '最近使用',
        passkeyDeleteConfirm: '刪除後將無法使用此通行金鑰登入，是否繼續？',
        passkeyLimit: '最多可綁定 5 個通行金鑰',
        passkeyFailed: '通行金鑰註冊失敗，請確認面板SSL憑證是否為可信憑證',
        bindInfo: '監聽地址',
        bindAll: '監聽所有',
        bindInfoHelper: '修改服務監聽地址或協議可能導致服務不可用，是否繼續？',
        ipv6: '監聽 IPv6',
        bindAddress: '監聽地址',
        entrance: '安全入口',
        showEntrance: '啟用概覽頁未開啟提醒',
        entranceHelper: '開啟安全入口後只能透過指定安全入口登入面板',
        entranceError: '請輸入 5-116 位安全登入入口，僅支援輸入數字或字母',
        entranceInputHelper: '安全入口設定為空時，則取消安全入口',
        randomGenerate: '隨機生成',
        expirationTime: '密碼過期時間',
        unSetting: '未設定',
        noneSetting: '為面板密碼設定過期時間，過期後需要重新設定密碼',
        expirationHelper: '密碼過期時間為 0 天時，則關閉密碼過期功能',
        days: '密碼過期天數',
        expiredHelper: '目前密碼已過期，請重新修改密碼：',
        timeoutHelper: '{0} 天後面板密碼即將過期，過期後需要重新設定密碼',
        complexity: '密碼複雜度驗證',
        complexityHelper: '開啟後密碼必須滿足長度為 8-30 位，並包含字母、數字、特殊字元中至少兩項',
        bindDomain: '網域綁定',
        unBindDomain: '域名解綁',
        panelSSL: '面板 SSL',
        unBindDomainHelper: '解除網域綁定可能造成系統不安全，是否繼續？',
        bindDomainHelper: '設定網域綁定後，僅能透過設定中域名存取 1Panel 服務',
        bindDomainHelper1: '綁定域名為空時，則取消網域綁定',
        bindDomainWarning: '設定網域綁定後，將退出目前登入，且僅能透過設定中域名存取 1Panel 服務，是否繼續？',
        allowIPs: '授權 IP',
        unAllowIPs: '取消授權',
        unAllowIPsWarning: '授權 IP 為空將允許所有 IP 存取系統，可能造成系統不安全，是否繼續？',
        allowIPsHelper: '設定授權 IP 後，僅有設定中的 IP 可以存取 1Panel 服務',
        allowIPsWarning: '設定授權 IP 後，僅有設定中的 IP 可以存取 1Panel 服務，是否繼續？',
        allowIPsHelper1: '授權 IP 為空時，則取消授權 IP',
        allowIPEgs: '當存在多個授權 IP 時，需要換行顯示，例： \n172.16.10.111 \n172.16.10.0/24',
        mfa: '兩步驗證',
        mfaClose: '關閉兩步驗證將導致服務安全性降低，是否繼續？',
        secret: '金鑰',
        mfaAlert: '兩步驗證密碼是基於目前時間生成，請確保伺服器時間已同步',
        mfaHelper: '開啟後會驗證手機應用驗證碼',
        mfaHelper1: '下載兩步驗證手機應用 如:',
        mfaHelper2: '使用手機應用掃描以下二維碼，取得 6 位驗證碼',
        mfaHelper3: '輸入手機應用上的 6 位數字',
        mfaCode: '驗證碼',
        mfaInterval: '重新整理時間（秒）',
        mfaTitleHelper: '用於區分不同 1Panel 主機，修改後請重新掃描或手動新增金鑰資訊',
        mfaIntervalHelper:
            '修改重新整理時間後，請重新掃描或手動新增金鑰資訊。\n部分驗證器僅支援 30 秒重新整理時間（如 Google/Microsoft Authenticator），請確認相容性。',
        sslChangeHelper: 'https 設定修改需要重新啟動服務，是否繼續？',
        sslDisable: '停用',
        sslDisableHelper: '停用 https 服務，需要重新啟動面板才能生效，是否繼續？',
        noAuthSetting: '未認證設定',
        noAuthSettingHelper: '當使用者未登入且未正確輸入安全入口、授權 IP 或綁定域名時，此回應可以隱藏面板特徵。',
        responseSetting: '響應設定',
        help200: '幫助頁面',
        error400: '錯誤請求',
        error401: '未授權',
        error403: '禁止存取',
        error404: '未找到',
        error408: '請求逾時',
        error416: '無效請求',
        error444: '連線已關閉',
        error500: '內部伺服器錯誤',
        https: '為面板設置 HTTPS 可提升存取安全性',
        strictHelper: '非 HTTPS 流量無法連接面板',
        muxHelper: '面板將同時監聽 HTTP 和 HTTPS 協議，並將 HTTP 重定向到 HTTPS，此模式下可能會降低面板安全性',
        certType: '憑證類型',
        selfSigned: '自簽名',
        selfSignedHelper: '自簽憑證，不被瀏覽器信任，顯示不安全是正常現象',
        select: '選擇已有',
        domainOrIP: '域名或 IP：',
        timeOut: '過期時間：',
        rootCrtDownload: '根憑證下載',
        primaryKey: '金鑰',
        certificate: '憑證',
        about: '關於',
        versionItem: '當前版本',
        backupCopies: '備份份數',
        backupCopiesHelper: '設定用於版本回滾的升級備份保留份數。0 表示保留所有。',
        backupCopiesRule: '請至少儲存 3 份升級備份記錄',
        release: '版本更新日誌',
        releaseHelper: '目前環境更新日誌取得異常，可手動前往官方文件檢視',
        project: '項目地址',
        issue: '問題回饋',
        doc: '官方文件',
        star: '點亮 Star',
        description: 'Linux 伺服器維運面板',
        forum: '論壇求助',
        doc2: '使用手冊',
        currentVersion: '當前執行版本：',
        license: '許可證',
        bindNode: '綁定節點',
        menuSetting: '選單設定',
        menuHide: '選單隱藏',
        menuSettingHelper: '當只存在 1 個子選單時，選單列將僅展示該子選單',
        showAll: '全部顯示',
        hideALL: '全部隱藏',
        ifShow: '是否顯示',
        menu: '選單',
        confirmMessage: '即將重新整理頁面更新進階功能選單列表，是否繼續？',
        recoverMessage: '即將重新整理頁面，並復原選單列表至初始狀態。是否繼續？',
        compressPassword: '壓縮密碼',
        backupRecoverMessage: '請輸入壓縮或解壓縮密碼（留空則不設定）',
    },
    license: {
        offLine: '離線版',
        community: '社區版',
        oss: '社區版',
        ee: '企業版',
        pro: '專業版：',
        trial: '試用',
        add: '新增社區版',
        licenseBindHelper: '僅當授權已綁定節點時，才能使用其免費節點額度',
        licenseAlert: '僅當許可證正常綁定到節點時，該許可證才能新增社區版節點，只有正常綁定到許可證的節點支援切換。',
        licenseUnbindHelper: '偵測到該許可證存在社區版節點，請解除綁定後重試',
        subscription: '訂閱',
        perpetual: '永久授權',
        product: '產品',
        versionConstraint: '{0} 版本買斷',
        forceUnbind: '強制解除綁定',
        forceUnbindHelper: '強制解除綁定將忽略解除過程中產生的錯誤，最終解除許可證綁定。',
        updateForce: '強制更新（忽略解除綁定過程中的所有錯誤，確保最終操作成功）',
        trialInfo: '版本',
        authorizationId: '訂閱授權 ID',
        authorizedUser: '被授權方',
        lostHelper: '許可證已達到最大重試次數，請手動點選同步按鈕，以確保商業版功能正常使用，詳情：',
        exceptionalHelper: '許可證同步驗證異常，請手動點選同步按鈕，以確保商業版功能正常使用，詳情：',
        quickUpdate: '快速更新',
        import: '匯入',
        power: '授權',
        unbindHelper: '解除綁定後將清除該節點所有商業版相關設定，是否繼續？',
        importLicense: '匯入許可證',
        securityWarningTitle: '請勿使用破解版或來源不明的許可證！',
        securityWarningContent:
            '1Panel 需要以具備系統管理權限的使用者執行，非官方許可證或被竄改版本可能導致伺服器失控、資料外洩等嚴重安全風險。請透過飛致雲官方管道取得許可證和安裝包。',
        importHelper: '請點選或拖動許可檔案到此處',
        licenseRequiredTip: '目前尚未匯入許可證，複製裝置 ID 後取得許可證並匯入後才能登入使用。',
        licenseRequiredShortTip: '請先複製裝置 ID 取得許可證，匯入許可證後即可登入。',
        licenseRequiredUserTip: '企業版許可證未綁定，請聯絡超級管理員匯入許可證。',
        restoreCommunity: '恢復社群版',
        restoreCommunityOnline: '線上恢復',
        restoreCommunityOffline: '離線恢復',
        restoreCommunityPackageFound: '已偵測到可用的社群版離線安裝包，可以執行離線恢復。',
        restoreCommunityPackageMissing: '未偵測到可用的社群版離線安裝包，暫時無法執行離線恢復。',
        restoreCommunityOnlineHelper: '切換後將自動下載目前版本的社群版安裝包，並清理企業版專屬資料。',
        restoreCommunityOfflineHelper:
            '請先將版本不低於目前企業版的官方安裝包放入 {path}，偵測到可用安裝包後即可執行切換。',
        restoreCommunityConfirm:
            '版本切換後，可以使用目前企業版超級管理員帳號登入社群版。切換過程中將清除企業版專屬資料，請謹慎操作。',
        restoreCommunityStarting: '正在準備社群版，完成後面板將自動重新啟動。',
        levelUpPro: '升級商業版',
        licenseSync: '許可證同步',
        knowMorePro: '了解更多',
        closeAlert: '此頁可在面板設定中關閉顯示',
        introduce: '功能介紹',
        deviceID: '裝置 ID',
        corporation: '授權公司',
        expired: '過期時間',
        edition: '版本',
        standard: '標準版',
        enterprise: '企業版',
        count: '授權數量',
        serialNo: '序號',
        remark: '備註',
        waf: '升級商業版可以獲得攔截地圖、日誌、封鎖記錄、地理位置封禁、自訂規則、自訂攔截頁面等功能。',
        tamper: '升級商業版可以保護網站免受未經授權的修改或篡改。',
        tamperHelper: '操作失敗，該檔案或資料夾已經開啟防篡改，請檢查後重試',
        setting: '升級商業版可以自訂面板 Logo、歡迎簡介等資訊。',
        monitor: '升級商業版可以檢視網站的即時狀態、訪客趨勢、訪客來源、請求日誌等資訊。',
        alert: '升級商業版可透過簡訊接收告警資訊，並檢視告警日誌，全面掌控各類關鍵事件，確保系統執行無憂。',
        node: '升級商業版可以使用 1Panel 管理多台 Linux 伺服器。',
        nodeApp: '升級商業版可以統一升級多節點應用版本，無需手動切換節點。',
        nodeDashboard: '升級商業版可以集中管理多節點應用、網站、資料庫和計劃任務。',
        fileExchange: '升級商業版可以在多台伺服器之間快速傳輸檔案。',
        app: '升級商業版可透過手機APP，檢視服務資訊、異常監控等。',
        cluster: '升級商業版可以管理 MySQL/Postgres/Redis 主從叢集。',
        vllm: '升級商業版可將 vLLM 服務統一納入 1Panel 管理，集中完成部署、設定調整、狀態維運與任務追蹤，降低本地模型服務維護成本。',
        'model-downloader':
            '升級商業版可從 HuggingFace、ModelScope 或相容鏡像站搜尋、下載並管理本機模型檔案，統一維護本機模型目錄與下載任務。',
    },
    clean: {
        scan: '開始掃描',
        scanHelper: '輕鬆梳理 1Panel 執行期間積累的垃圾檔案',
        clean: '立即清理',
        reScan: '重新掃描',
        cleanHelper: '已勾選檔案及目錄清理後無法回滾，是否繼續？',
        statusSuggest: '( 建議清理 )',
        statusClean: '( 很乾淨 )',
        statusEmpty: '非常乾淨，無需清理',
        statusWarning: '( 謹慎操作 )',
        lastCleanTime: '上次清理時間: {0}',
        lastCleanHelper: '清理檔案及目錄：{0} 個， 總計清理：{1}',
        cleanSuccessful: '清理成功',
        currentCleanHelper: '本次清理檔案及目錄：{0} 個， 總計清理：{1}',
        suggest: '( 建議清理 )',
        totalScan: '待清理垃圾檔案共計： ',
        selectScan: '已選中垃圾檔案共計： ',
        system: '系統垃圾',
        systemHelper: '快照、升級等過程中產生的臨時檔案',
        panelOriginal: '系統快照恢復前備份檔案',
        upgrade: '系統升級備份檔案',
        agentPackages: '歷史版本子節點升級/安裝套件',
        upgradeHelper: '( 建議保留最新的升級備份用於系統回滾 )',
        snapshot: '系統快照暫存檔',
        rollback: '復原前備份目錄',
        backup: '系統備份',
        backupHelper: '本地備份帳號中未關聯的備份檔案',
        unknownBackup: '系統備份',
        tmpBackup: '臨時備份',
        unknownApp: '未關聯應用備份',
        unknownDatabase: '未關聯資料庫備份',
        unknownWebsite: '未關聯網站備份',
        unknownSnapshot: '未關聯快照備份',
        upload: '臨時上傳檔案',
        uploadHelper: '系統上傳備份列表中上傳的暫存檔',
        download: '臨時下載檔案',
        downloadHelper: '系統從第三方備份帳號下載的暫存檔',
        directory: '資料夾',
        systemLog: '日誌檔案',
        systemLogHelper: '系統日誌、任務日誌、網站日誌檔案',
        dockerLog: '容器操作日誌檔案',
        taskLog: '計劃任務執行日誌檔案',
        shell: 'Shell 腳本計劃任務',
        containerShell: '容器內執行 Shell 腳本計劃任務',
        curl: 'CURL 計劃任務',
        docker: '容器垃圾',
        dockerHelper: '容器、映像、儲存卷、建置快取等檔案',
        volumes: '磁碟區',
        buildCache: '容器建置快取',
        appTmpDownload: '應用程式暫存下載檔案',
        unknownWebsiteLog: '未關聯網站日誌備份檔案',
    },
    app: {
        app: '應用',
        installName: '安裝名稱',
        installed: '已安裝',
        all: '全部',
        version: '版本',
        detail: '詳情',
        params: '參數',
        author: '作者',
        source: '來源',
        appName: '應用名稱',
        deleteWarn: '刪除操作會把所有資料和備份一併刪除，此操作不可回滾，是否繼續？',
        syncSuccess: '同步成功',
        canUpgrade: '可升級',
        backupName: '檔案名稱',
        backupPath: '檔案路徑',
        backupdate: '備份時間',
        versionSelect: '請選擇版本',
        operatorHelper: '將對選中應用進行 {0} 操作，是否繼續？',
        startOperatorHelper: '即將啟動應用，是否繼續？',
        stopOperatorHelper: '即將停止應用，是否繼續？',
        restartOperatorHelper: '即將重新啟動應用，是否繼續？',
        reloadOperatorHelper: '即將重新載入應用，是否繼續？',
        checkInstalledWarn: '未偵測到 {0} ,請進入應用商店點選安裝',
        limitHelper: '該應用已安裝，不支援重複安裝',
        deleteHelper: '{0}已經關聯以下資源，請檢查後重試',
        checkTitle: '提示',
        defaultConfig: '預設設定',
        defaultConfigHelper: '已復原為預設設定，儲存後生效',
        forceDelete: '強制刪除',
        forceDeleteHelper: '強制刪除，會忽略刪除過程中產生的錯誤並最終刪除中繼資料',
        deleteBackup: '刪除備份',
        deleteBackupHelper: '同時刪除應用備份',
        deleteDB: '刪除資料庫',
        deleteDBHelper: '同時刪除與應用關聯的資料庫',
        noService: '無{0}',
        toInstall: '去安裝',
        param: '參數設定',
        syncAppList: '更新應用列表',
        alreadyRun: '已安裝',
        less1Minute: '小於1分鐘',
        appOfficeWebsite: '官方網站',
        github: 'GitHub',
        document: '說明文件',
        updatePrompt: '目前應用均為最新版本',
        installPrompt: '尚未安裝任何應用',
        updateHelper: '更新參數可能導致應用無法啟動，請提前備份並謹慎操作',
        updateWarn: '更新參數需要重建應用，是否繼續？',
        busPort: '服務埠',
        syncStart: '開始同步請稍後重新整理應用商店',
        advanced: '進階設定',
        cpuCore: '核心數',
        containerName: '容器名稱',
        containerNameHelper: '可以為空，為空自動生成',
        allowPort: '埠外部存取',
        allowPortHelper: '允許埠外部存取會放開防火牆埠',
        appInstallWarn: '應用埠預設不允許外部存取，可以在下方進階設定中選擇放開',
        upgradeStart: '開始升級請稍後重新整理頁面',
        toFolder: '進入安裝目錄',
        editCompose: '編輯 compose 檔案',
        editComposeHelper: '編輯 compose 檔案可能導致軟體安裝失敗',
        composeNullErr: 'compose 不能為空',
        takeDown: '已廢棄',
        allReadyInstalled: '已安裝',
        installHelper: '設定映像加速可以解決映像拉取失敗的問題',
        sortMode: '排序',
        installWarn: '目前未勾選埠外部存取，將無法透過外網IP:埠存取，是否繼續？ ',
        showIgnore: '檢視忽略應用',
        cancelIgnore: '取消忽略',
        ignoreList: '忽略列表',
        appHelper: '部分應用的安裝使用說明請在應用詳情頁檢視',
        backupApp: '升級前備份應用',
        backupAppHelper: '升級失敗會使用備份自動回滾,請在日誌審計-系統日誌中檢視失敗原因',
        openrestyDeleteHelper: '強制刪除 OpenResty 會刪除所有的網站，請確認風險後操作',
        downloadLogHelper1: '即將下載 {0} 套用所有日誌，是否繼續？ ',
        downloadLogHelper2: '即將下載 {0} 應用最近 {1} 條日誌，是否繼續？ ',
        syncAllAppHelper: '即將同步所有應用，是否繼續？ ',
        hostModeHelper: '目前應用網路模式為 host 模式，如需放開埠，請在防火牆頁面手動放開',
        showLocal: '顯示本機應用程式',
        reload: '重載',
        upgradeWarn: '升級應用程式會取代 docker-compose.yml 檔案，如有更改，可以點選檢視檔案對比',
        openclawHttpsUpgradeNoticeTitle:
            '注意：以下說明僅適用於 OpenClaw 從 2026.3.13 ~ 2026.3.22 版本升級到 2026.3.23 及以上版本的使用者：',
        openclawHttpsUpgradeNoticeItem1:
            '升級完成後，智慧體訪問協議將恢復為 HTTP，請進入 配置 → 設定 → 安全 檢查訪問地址。',
        openclawHttpsUpgradeNoticeItem2: '如果之前透過反向代理網站存取，請將代理目標地址修改為 http://IP:Port。',
        newVersion: '新版本',
        oldVersion: '當前版本',
        composeDiff: '檔案對比',
        showDiff: '看對比',
        useNew: '使用自訂版本',
        useDefault: '使用預設版本',
        useCustom: '自訂 docker-compose.yml',
        useCustomHelper: '使用自訂 docker-compose.yml 檔案，可能會導致應用程式升級失敗，如無必要，請勿勾選',
        diffHelper: '左側為舊版本，右側為新版，編輯之後點選使用自訂版本儲存',
        pullImage: '拉取映像',
        pullImageHelper: '在應用啟動之前執行 docker pull 來拉取映像',
        deleteImage: '刪除映像',
        deleteImageHelper: '刪除應用相關映像，刪除失敗任務不會終止',
        requireMemory: '最低記憶體',
        supportedArchitectures: '支援架構',
        link: '連結',
        showCurrentArch: '目前伺服器架構應用',
        syncLocalApp: '同步本機應用',
        memoryRequiredHelper: '目前應用記憶體需求 {0}',
        gpuConfig: '開啟 GPU 支援',
        gpuConfigHelper: '請確保機器有 NVIDIA GPU 並且安裝 NVIDIA 驅動 和 NVIDIA docker Container Toolkit',
        webUI: 'Web 存取地址',
        webUIPlaceholder: '例：example.com:8080/login',
        defaultWebDomain: '預設存取地址',
        defaultWebDomainHepler: '預設存取用於應用埠跳轉，例如應用埠為 8080 則跳轉地址為 http(s)://預設存取地址:8080',
        webUIConfig: '當前節點尚未設定預設存取地址，請在應用參數或前往面板設定進行設定',
        toLink: '連結',
        customAppHelper: '在安裝自訂應用商店包之前，請確保沒有任何已安裝的應用。',
        forceUninstall: '強制移除',
        syncCustomApp: '同步自訂應用',
        ignoreAll: '忽略後續所有版本',
        ignoreVersion: '忽略指定版本',
        specifyIP: '綁定主機 IP',
        specifyIPHelper: '設定埠綁定的主機位址/網卡（如果你不清楚這個的作用，請不要填寫）',
        uninstallDeleteBackup: '移除應用-刪除備份',
        uninstallDeleteImage: '移除應用-刪除映像',
        upgradeBackup: '應用升級前備份應用',
        upgradeDeleteImage: '升級應用-刪除舊映像',
        installAllowPort: '安裝應用預設開啟埠外部存取',
        noAppHelper: '未偵測到應用程式，請前往任務中心檢視應用商店同步日誌',
        isEdirWarn: '偵測到 docker-compose.yml 檔案被修改，請檢視對比',
    },
    website: {
        primaryDomain: '主域名',
        otherDomains: '其他域名',
        static: '靜態網站',
        deployment: '一鍵部署',
        supportUpType: '僅支援 .tar.gz 檔案格式，且壓縮檔內必須包含 {0}.json 檔案',
        proxy: '反向代理',
        alias: '代號',
        ftpUser: 'FTP 帳號',
        ftpPassword: 'FTP 密碼',
        ftpHelper: '建立站點的同時，為站點建立一個對應 FTP 帳戶，並且 FTP 目錄指向站點所在目錄。',
        remark: '備註',
        groupSetting: '分組管理',
        createGroup: '建立分組',
        appNew: '新裝應用',
        appInstalled: '已裝應用',
        delete: '刪除網站',
        deleteApp: '刪除應用',
        deleteBackup: '刪除備份',
        domain: '域名',
        domainHelper: '一行一個域名,支援*和IP位址,支援域名:埠',
        addDomain: '新增域名',
        domainConfig: '域名設定',
        defaultDoc: '預設文件',
        perserver: '並發限制',
        perserverHelper: '限制目前站點最大並發數',
        perip: '單 IP 限制',
        peripHelper: '限制單個 IP 存取最大並發數',
        rate: '流量限制',
        rateLimit: '單請求限速',
        rateHelper: '限制每個請求的流量上限(單位:KB)',
        rateLimitHelper: '限制每個請求的每秒傳輸速率（單位：KB/s）',
        limitHelper: '啟用流量控制',
        other: '其他',
        currentSSL: '目前憑證',
        dnsAccount: 'DNS 帳號',
        applySSL: '憑證申請',
        SSLList: '憑證列表',
        createDnsAccount: 'DNS 帳戶',
        aliyun: '阿里雲 DNS',
        aliEsa: '阿里雲 ESA',
        awsRoute53: 'Amazon Route 53（亞馬遜）',
        manual: '手動解析',
        key: '金鑰',
        check: '檢視',
        acmeAccountManage: 'Acme 帳戶',
        email: '信箱',
        acmeAccount: 'Acme 帳戶',
        provider: '驗證方式',
        dnsManual: '手動解析',
        expireDate: '過期時間',
        brand: '組織',
        deploySSL: '部署',
        deploySSLHelper: '確定部署憑證？',
        ssl: '憑證',
        dnsAccountManage: 'DNS 帳戶',
        renewSSL: '續簽',
        renewHelper: '確定續簽憑證？',
        renewSuccess: '續簽憑證',
        enableHTTPS: '啟用 HTTPS',
        aliasHelper: '代號是網站目錄的資料夾名稱',
        lastBackupAt: '上次備份時間',
        null: '無',
        nginxConfig: 'Nginx 設定',
        websiteConfig: '網站設定',
        proxySettings: '代理設定',
        advancedSettings: '進階設定',
        cacheSettings: '快取設定',
        sniSettings: 'SNI 設定',
        basic: '基本',
        source: '設定檔',
        security: '安全',
        nginxPer: '效能調整',
        neverExpire: '永不過期',
        setDefault: '設為預設',
        deleteHelper: '相關應用狀態不正常，請檢查',
        toApp: '去已安裝列表',
        cycle: '週期',
        frequency: '頻率',
        ccHelper: '{0} 秒內累計請求同一URL超過 {1} 次,觸發CC防禦,封鎖此IP',
        mustSave: '修改之後需要儲存才能生效',
        fileExt: '檔案副檔名',
        fileExtBlock: '檔案副檔名黑名單',
        value: '值',
        enable: '開啟',
        proxyAddress: '代理地址',
        proxyHelper: '例: 127.0.0.1:8080',
        forceDelete: '強制刪除',
        forceDeleteHelper: '強制刪除，會忽略刪除過程中產生的錯誤並最終刪除中繼資料',
        deleteAppHelper: '同時刪除關聯應用、資料庫以及應用備份',
        deleteBackupHelper: '同時刪除網站備份',
        deleteDatabaseHelper: '同時刪除網站關聯資料庫',
        deleteConfirmHelper: '刪除操作無法回滾，請輸入 <span style="color:red"> "{0}" </span> 刪除',
        staticPath: '對應主目錄:',
        limit: '限制方案',
        blog: '論壇/部落格',
        imageSite: '圖片站',
        downloadSite: '下載站',
        shopSite: '商城',
        doorSite: '門戶',
        qiteSite: '企業',
        videoSite: '影片',
        errLog: '錯誤日誌',
        stopHelper: '停止站點後將無法正常存取，使用者瀏覽會顯示目前站點停止頁面，是否繼續？',
        startHelper: '啟用站點後，使用者可以正常瀏覽網站內容，是否繼續？',
        sitePath: '網站目錄',
        siteAlias: '網站代號',
        primaryPath: 'root 目錄',
        folderTitle: '網站主要包含以下資料夾',
        wafFolder: '防火牆規則',
        indexFolder: '網站root目錄',
        sslFolder: '網站憑證',
        enableOrNot: '是否啟用',
        oldSSL: '選擇已有憑證',
        manualSSL: '手動匯入憑證',
        select: '選擇',
        selectSSL: '選擇憑證',
        privateKey: '私鑰(KEY)',
        certificate: '憑證(PEM格式)',
        HTTPConfig: 'HTTP 選項',
        HTTPSOnly: '禁止 HTTP',
        HTTPToHTTPS: '存取HTTP自動跳轉到HTTPS',
        HTTPAlso: 'HTTP可直接存取',
        sslConfig: 'SSL 選項',
        disableHTTPS: '停用 HTTPS',
        disableHTTPSHelper: '停用 HTTPS會刪除憑證相關設定，是否繼續？',
        SSLHelper: '注意：請勿將SSL憑證用於非法網站 \n 如開啟後無法使用HTTPS存取，請檢查安全組是否正確放行443埠',
        SSLConfig: '憑證設定',
        SSLProConfig: 'SSL 協議設定',
        supportProtocol: '支援的協議版本',
        encryptionAlgorithm: '加密演算法',
        notSecurity: '（不安全）',
        encryptHelper:
            "Let's Encrypt 簽發憑證有頻率限制，但足以滿足正常需求，過於頻繁操作會導致簽發失敗。詳細限制請看 <a target=「_blank」 href='https://letsencrypt.org/zh-cn/docs/rate-limits/'>官方文件</a> ",
        ipValue: '值',
        ext: '檔案副檔名',
        wafInputHelper: '按行輸入資料，一行一個',
        data: '資料',
        ever: '永久',
        nextYear: '一年後',
        noLog: '暫無日誌',
        defaultServer: '預設站點',
        noDefaultServer: '未設定',
        defaultServerHelper:
            '設定預設站點後,所有未綁定的域名和IP都被定向到預設站點\n可有效防止惡意解析\n但同時會導致 WAF 未授權域名攔截失敗',
        websiteDeploymentHelper: '使用從 1Panel 部署的應用建立網站',
        websiteStatictHelper: '在主機上建立網站目錄',
        websiteProxyHelper: '代理已有服務,例如本機已安裝使用 8080 埠的 halo 服務，那麼代理地址為 http://127.0.0.1:8080',
        restoreHelper: '確認使用此備份復原？',
        wafValueHelper: '值',
        runtimeProxyHelper: '使用從 1Panel 建立的執行環境',
        runtime: '執行環境',
        deleteRuntimeHelper: '執行環境應用需要跟網站一併刪除，請謹慎處理',
        proxyType: '監聽網路類型',
        unix: 'Unix 網路',
        tcp: 'TCP/IP 網路',
        phpFPM: 'FPM 設定檔',
        phpConfig: 'PHP 設定檔',
        updateConfig: '設定修改',
        isOn: '開啟',
        isOff: '關閉',
        rewrite: '偽靜態',
        rewriteMode: '方案',
        current: '目前',
        rewriteHelper: '若設定偽靜態後，網站無法正常存取，請嘗試設定回default',
        runDir: '執行目錄',
        runUserHelper:
            '透過 PHP 容器執行環境部署的網站，需要將 index 和子目錄下的所有檔案、資料夾擁有者和使用者群組設定為 1000，本機 PHP 環境需要參考本機 PHP-FPM 使用者和使用者群組設定',
        userGroup: '執行使用者/組',
        uGroup: '使用者群組',
        proxyPath: '前端請求路徑',
        proxyPass: '後端代理地址',
        cache: '快取',
        cacheTime: '快取時間',
        enableCache: '開啟快取',
        proxyHost: '後端域名',
        disabled: '已停止',
        startProxy: '開啟反向代理',
        stopProxy: '關閉反向代理',
        sourceFile: '源文',
        proxyHelper1: '存取這個目錄時將會把目標URL的內容返回並顯示',
        proxyPassHelper: '代理的站點，必須為可正常存取的URL',
        proxyHostHelper: '將域名新增到請求頭傳遞到代理伺服器',
        modifier: '匹配規則',
        modifierHelper: '例：= 精確匹配，~ 正則匹配，^~ 匹配路徑開頭 等',
        replace: '文字取代',
        replaceHelper:
            'nginx文字取代功能可以在反向代理時對響應內容進行字串取代。常用於修改代理後端返回的HTML、CSS、JavaScript等檔案中的連結地址、API介面地址等。支援正規表示式匹配，可實現複雜的內容取代需求。',
        addReplace: '新增文字取代',
        replaced: '搜尋字串（不能為空）',
        replaceText: '取代為字串',
        replacedErr: '搜尋字串不能為空',
        replacedErr2: '搜尋字串不能重複',
        replacedListEmpty: '無文字取代規則',
        proxySslName: '代理 SNI 名稱',
        basicAuth: '密碼存取',
        editBasicAuthHelper: '密碼為非對稱加密，無法回顯，編輯需要重新設定密碼',
        antiLeech: '防盜鏈',
        extends: '副檔名',
        browserCache: '瀏覽器快取',
        noModify: '不修改',
        serverCache: '伺服器快取',
        leechLog: '記錄防盜鏈日誌',
        accessDomain: '允許的域名',
        leechReturn: '響應資源',
        noneRef: '允許來源為空',
        disable: '未啟用',
        disableLeechHelper: '是否停用防盜鏈',
        disableLeech: '停用防盜鏈',
        ipv6: '監聽 IPV6',
        leechReturnError: '請填寫 HTTP 狀態碼',
        blockedRef: '允許非標準 Referer',
        accessControl: '防盜鏈控制',
        leechcacheControl: '快取控制',
        logEnableControl: '記錄靜態資源請求日誌',
        leechSpecialValidHelper:
            '啟用「允許 Referer 為空」時，不會阻止無 Referer 的請求（直接存取等）；啟用「允許非標準 Referer」時，會放行任何不以 http/https 開頭的 Referer 請求（用戶端請求等）',
        leechInvalidReturnHelper: '攔截盜鏈請求後返回的 HTTP 狀態碼',
        leechlogControlHelper: '記錄靜態資源的請求，生產環境通常可關閉以避免過多無意義的日誌',
        selectAcme: '選擇 Acme 帳號',
        imported: '手動建立',
        importType: '匯入方式',
        pasteSSL: '貼上程式碼',
        localSSL: '選擇伺服器檔案',
        privateKeyPath: '私鑰檔案',
        certificatePath: '憑證檔案',
        ipWhiteListHelper: 'IP白名單的作用：所有規則對IP白名單無效',
        redirect: '重定向',
        sourceDomain: '源域名/路徑',
        targetURL: '目標URL地址',
        keepPath: '保留URI參數',
        path: '路徑',
        redirectType: '重定向類型',
        redirectWay: '方式',
        keep: '保留',
        notKeep: '不保留',
        redirectRoot: '重定向到首頁',
        redirectHelper: '301永久重定向，302臨時重定向',
        changePHPVersionWarn: '此動作不可回滾，是否繼續',
        changeVersion: '切換版本',
        retainConfig: '是否保留 php-fpm.conf 和 php.ini 檔案',
        runDirHelper2: '請確保二級執行目錄位於 index 目錄下',
        openrestyHelper: 'OpenResty 預設 HTTP 埠：{0} HTTPS 埠：{1}，可能影響網站域名存取和 HTTPS 強制跳轉',
        primaryDomainHelper: '支援網域:port',
        acmeAccountType: '帳號類型',
        keyType: '金鑰演算法',
        tencentCloud: '騰訊雲',
        containWarn: '其他域名中包含主域名，請重新輸入',
        rewriteHelper2: '從應用程式商店安裝的 WordPress 等應用，預設已經設定好偽靜態，重複設定可能會報錯',
        websiteBackupWarn: '僅支援匯入本機備份，匯入其他機器備份可能會復原失敗',
        ipWebsiteWarn: 'IP 為網域名稱的網站，需要設定為預設網站才能正常存取',
        hstsHelper: '開啟 HSTS 可以增加網站安全性',
        includeSubDomains: '子域',
        hstsIncludeSubDomainsHelper: '啟用後，HSTS策略將應用於目前域名的所有子域名',
        defaultHtml: '預設頁面',
        website404: '網站 404 錯誤頁',
        domain404: '網站不存在頁面',
        indexHtml: '靜態網站預設頁',
        stopHtml: '網站停用頁',
        indexPHP: 'PHP 網站預設頁',
        sslExpireDate: '憑證過期時間',
        website404Helper: '網站 404 錯誤頁僅支援 PHP 執行環境網站和靜態網站',
        sni: '回源 SNI',
        sniHelper: '反代後端為 https 的時候可能需要設定回源 SNI，詳細需要看 CDN 服務商檔案',
        proxySslVerify: '校驗後端 SSL 憑證',
        proxySslVerifyHelper: '開啟後，反向代理 HTTPS 後端時將嚴格校驗伺服器憑證（預設不校驗）',
        huaweicloud: '華為雲',
        createDb: '建立資料庫',
        enableSSLHelper: '開啟失敗不會影響網站建立',
        batchAdd: '批次新增域名',
        batchInput: '批次輸入',
        domainNotFQDN: '此域名可能無法在公網存取',
        domainInvalid: '網域格式不正確',
        domainBatchHelper: '一行一個域名，格式：域名:埠@ssl\n範例：example.com:443@ssl 或 example.com',
        generateDomain: '生成',
        global: '全域',
        subsite: '子網站',
        subsiteHelper: '子網站可以選擇已存在的 PHP 和靜態網站的目錄作為主目錄。',
        parentWbeiste: '父級網站',
        deleteSubsite: '刪除目前網站需要先刪除子網站 {0}',
        loadBalance: '負載均衡',
        server: '節點',
        algorithm: '演算法',
        ipHash: 'IP 雜湊',
        ipHashHelper: '基於用戶端 IP 位址將請求分配到特定伺服器，可以確保特定用戶端總是被路由到同一伺服器。',
        leastConn: '最少連接',
        leastConnHelper: '將請求發送到目前活動連接數最少的伺服器。',
        leastTime: '最少時間',
        leastTimeHelper: '將請求發送到目前活動連接時間最短的伺服器。',
        defaultHelper:
            '預設方法，請求被均勻分配到每個伺服器。如果伺服器有權重設定，則根據指定的權重分配請求，權重越高的伺服器接收更多請求。',
        weight: '權重',
        maxFails: '最大失敗次數',
        maxConns: '最大連接數',
        strategy: '策略',
        strategyDown: '停用',
        strategyBackup: '備用',
        ipHashBackupErr: 'IP 雜湊不支援備用節點',
        failTimeout: '故障逾時',
        failTimeoutHelper:
            '伺服器健康檢查的時間視窗長度。在該時間段內累計失敗次數達到閾值時，伺服器將被暫時移除，並在經過相同時長後重新嘗試。預設 10 秒',
        staticChangePHPHelper: '目前為靜態網站，可切換為 PHP 網站',
        proxyCache: '反向代理快取',
        cacheLimit: '快取空間限制',
        shareCache: '快取計數記憶體大小',
        cacheExpire: '快取過期時間',
        shareCacheHelper: '每1M記憶體可以儲存約8000個快取物件',
        cacheLimitHelper: '超過限制會自動刪除舊的快取',
        cacheExpireJHelper: '超出時間快取未命中將會被刪除',
        realIP: '真實 IP',
        ipFrom: 'IP 來源',
        ipFromHelper:
            '透過設定可信 IP 來源，OpenResty 會分析 HTTP Header 中的 IP 資訊，準確識別並記錄訪客的真實 IP 位址，包括在存取日誌中',
        ipFromExample1: '如果前端是 Frp 等工具，可以填寫 Frp 的 IP 位址，類似 127.0.0.1',
        ipFromExample2: '如果前端是 CDN，可以填寫 CDN 的 IP 位址段',
        ipFromExample3: '如果不確定，可以填 0.0.0.0/0（ipv4） ::/0（ipv6） [注意：允許任意來源 IP 不安全]',
        http3Helper:
            'HTTP/3 是 HTTP/2 的升級版本，提供更快的連線速度和更好的效能，但並非所有瀏覽器都支援 HTTP/3，啟用後可能會導致部分瀏覽器無法存取',
        cors: '跨域存取(CORS)',
        enableCors: '開啟跨域',
        allowOrigins: '允許存取的網域名稱',
        allowMethods: '允許的請求方法',
        allowHeaders: '允許的請求標頭',
        allowCredentials: '允許攜帶Cookie',
        preflight: '預檢請求快速回應',
        preflightHleper:
            '開啟後，當瀏覽器發送跨域預檢請求（OPTIONS 請求）時，系統會自動返回 204 狀態碼並設定必要的跨域回應標頭',
        changeDatabase: '切換資料庫',
        changeDatabaseHelper1: '資料庫關聯用於備份復原網站。',
        changeDatabaseHelper2: '切換其他資料庫會導致以前的備份無法復原。',
        saveCustom: '另存為範本',
        rainyun: '雨雲',
        volcengine: 'Volcengine',
        runtimePortHelper: '目前執行環境存在多個埠，請選擇一個代理埠。',
        runtimePortWarn: '目前執行環境沒有埠，無法代理',
        cacheWarn: '請先關閉反代中的快取開關',
        loadBalanceHelper: '建立負載均衡後，請前往『反向代理』，新增代理並將後端地址設定為：http://<負載均衡名稱>',
        useProxy: '使用代理',
        useProxyHelper: '使用面板設定中的代理伺服器地址',
        westCN: '西部數碼',
        openBaseDir: '防跨站攻擊',
        openBaseDirHelper: 'open_basedir 用於限制 PHP 檔案存取路徑，有助於防止跨站存取和提升安全性',
        serverCacheTime: '伺服器快取時間',
        serverCacheTimeHelper: '請求在伺服器端快取的時間，到期前相同請求會直接返回快取結果，不再請求源站。',
        browserCacheTime: '瀏覽器快取時間',
        browserCacheTimeHelper:
            '靜態資源在瀏覽器本機快取的時間，減少重複請求。到期前使用者重新整理頁面會直接使用本機快取。',
        donotLinkeDB: '不關聯資料庫',
        toWebsiteDir: '進入網站目錄',
        execParameters: '執行參數',
        extCommand: '補充指令',
        mirror: '映像源',
        execUser: '執行使用者',
        execDir: '執行目錄',
        packagist: '中國全量映像',
        batchOperate: '批次操作',
        batchOperateHelper: '批次{0}網站，是否繼續？',
        stream: 'TCP/UDP 代理',
        streamPorts: '監聽埠',
        streamPortsHelper: '設定對外監聽的埠號，客戶端將透過此埠存取服務，按逗號分割，例：5222,5223',
        streamHelper: 'TCP/UDP 埠轉發與負載均衡',
        udp: '啟用 UDP',
        syncHtmlHelper: '同步到 PHP 和靜態網站',
    },
    php: {
        short_open_tag: '短標籤支援',
        max_execution_time: '最大腳本執行時間',
        max_input_time: '最大輸入時間',
        memory_limit: ' 腳本記憶體限制',
        post_max_size: 'POST資料最大尺寸',
        file_uploads: '是否允許上傳檔案',
        upload_max_filesize: '允許上傳檔案的最大尺寸',
        max_file_uploads: '允許同時上傳檔案的最大數量',
        default_socket_timeout: 'Socket 逾時時間',
        error_reporting: '錯誤級別',
        display_errors: '是否輸出詳細錯誤資訊',
        cgi_fix_pathinfo: '是否開啟pathinfo',
        date_timezone: '時區',
        disableFunction: '停用函式',
        disableFunctionHelper: '輸入要停用的函式，例如exec，多個請用,分割',
        uploadMaxSize: '上傳限制',
        indexHelper: '為保障PHP網站正常執行，請將程式碼放置於 index 目錄，並避免重新命名',
        extensions: '擴充範本',
        extension: '擴充',
        extensionHelper: '多個擴充功能,分割',
        toExtensionsList: '檢視擴充清單',
        containerConfig: '容器設定',
        containerConfigHelper: '環境變數等資訊可以在建立完成之後在設定-容器設定中修改',
        dateTimezoneHelper: '範例：TZ=Asia/Shanghai（請根據需要自行新增）',
        extensionsHelper: '多個擴展請用 , 分隔',
    },
    nginx: {
        serverNamesHashBucketSizeHelper: '伺服器名字的hash表大小',
        clientHeaderBufferSizeHelper: '用戶端請求的Header Buffer 大小',
        clientMaxBodySizeHelper: '最大上傳檔案',
        keepaliveTimeoutHelper: '連接逾時時間',
        gzipMinLengthHelper: '最小壓縮檔案',
        gzipCompLevelHelper: '壓縮率',
        gzipHelper: '是否開啟壓縮傳輸',
        connections: '活動連接(Active connections)',
        accepts: '總連接次數(accepts)',
        handled: '總握手次數(handled)',
        requests: '總請求數(requests)',
        reading: '請求數(Reading)',
        writing: '響應數(Writing)',
        waiting: '駐留行程(Waiting)',
        status: '當前狀態',
        configResource: '設定修改',
        saveAndReload: '儲存並重載',
        clearProxyCache: '清除反代快取',
        clearProxyCacheWarn: '此操作將刪除快取目錄下的所有檔案，是否繼續？',
        create: '新增模組',
        update: '編輯模組',
        params: '參數',
        packages: '軟體包',
        script: '腳本',
        module: '模組',
        build: '建構',
        buildWarn: '本地建構模組需要佔用一定的 CPU 和記憶體，靜態模組還會重建並重啟 OpenResty，是否繼續？',
        buildPurposeHint: '動態模組構建後熱載入生效（容器不重新啟動）；包含靜態模組時將全量重建映像檔並重建容器',
        buildMode: '構建方式',
        buildModeDynamic: '動態模組',
        buildModeStatic: '靜態模組',
        buildStatus: '構建狀態',
        loadOrder: '載入順序',
        modulesToBuild: '動態模組（構建後熱載入，容器不重新啟動）',
        staticModules: '靜態模組',
        staticModulesHelper: '構建時將全量重建並重新啟動 OpenResty',
        forceBuild: '忽略快取重新構建',
        buildFailed: '上次構建失敗',
        pending: '待構建',
        ready: '已構建',
        failed: '構建失敗',
        dynamicUnsupported: '目前 OpenResty 版本不支援動態構建',
        moduleDynamicUnsupported: '此模組參數不支援動態構建',
        mirrorUrl: '軟體源',
        paramsHelper: '例：--add-module=/tmp/ngx_brotli，動態模式會自動轉換參數',
        packagesHelper: '例：git,curl 以逗號分割',
        scriptHelper: '編譯之前執行的腳本，通常用於下載模組原始碼，安裝依賴等',
        buildHelper: '動態模組建構後透過設定載入，靜態模組仍會重建 OpenResty。',
        defaultHttps: 'HTTPS 防竄站',
        defaultHttpsHelper1: '開啟後可以解決 HTTPS 竄站問題',
        sslRejectHandshake: '拒絕預設 SSL 握手',
        sslRejectHandshakeHelper: '開啟之後可以避免憑證洩露，設置預設網站會讓此設置失效',
    },
    ssl: {
        create: '申請憑證',
        provider: '類型',
        manualCreate: '手動建立',
        acmeAccount: 'Acme 帳號',
        resolveDomain: '解析域名',
        err: '錯誤',
        value: '記錄值',
        dnsResolveHelper: '請到DNS解析服務商處新增以下解析記錄：',
        detail: '詳情',
        msg: '憑證資訊',
        ssl: '憑證',
        key: '私鑰',
        startDate: '生效時間',
        organization: '簽發機構',
        renewConfirm: '是否確定給網域名稱 {0} 申請憑證？ ',
        autoRenew: '自動續簽',
        autoRenewHelper: '距離到期時間30天自動續約',
        renewSuccess: '續簽成功',
        renewWebsite: '該憑證已經和以下網站關聯，申請會同步應用到這些網站',
        createAcme: '建立帳戶',
        acmeHelper: 'Acme 帳戶用於申請免費憑證',
        upload: '上傳憑證',
        applyType: '申請方式',
        apply: '申請',
        applyStart: '憑證申請開始',
        getDnsResolve: '正在取得 DNS 解析值,請稍後 ...',
        selfSigned: '自簽憑證',
        ca: '憑證頒發機構',
        commonName: '憑證主體名稱(CN)',
        caName: '機構名稱',
        company: '公司/組織',
        department: '部門',
        city: '城市',
        province: '省份',
        country: '國家代號',
        commonNameHelper: '例如:',
        selfSign: '簽發憑證',
        days: '有效期限',
        domainHelper: '一行一個網域名稱,支援*和IP位址',
        pushDir: '推送憑證到本機目錄',
        dir: '目錄',
        pushDirHelper: '會在此目錄下產生兩個檔案，憑證檔案：fullchain.pem 金鑰檔案：privkey.pem',
        organizationDetail: '機構詳情',
        fromWebsite: '從網站取得',
        dnsMauanlHelper: '手動解析模式需要在建立完之後點選申請按鈕取得 DNS 解析值',
        httpHelper: '使用 HTTP 模式需安裝 OpenResty，且不支援申請泛域名憑證。',
        buypassHelper: 'Buypass 大陸地區無法存取',
        googleHelper: '如何取得EAB HmacKey 和EAB kid',
        googleCloudHelper: 'Google Cloud API 大陸大部分地區無法存取',
        skipDNSCheck: '跳過 DNS 校驗',
        skipDNSCheckHelper: '如果出現申請逾時問題，請勾選此處，其他情況請勿勾選',
        cfHelper: '請勿使用 Global API Key',
        deprecated: '即將廢棄',
        deprecatedHelper: '已經停止維護，可能會在以後的某個版本廢棄，請使用騰訊雲方式解析',
        dnsPodRemoved: '已移除',
        dnsPodRemovedTip: 'DnsPod 已被 lego v5 移除，當前帳號無法用於證書申請/續簽，請改用騰訊雲 DNS 帳號',
        dnsPodRemovedSSLTip: '此證書綁定的 DnsPod 帳號在 lego v5 已不可用，自動續簽將失敗，請將 DNS 帳號切換到騰訊雲',
        disableCNAME: '停用 CNAME',
        disableCNAMEHelper: '有 CNAME 設定的域名，如果申請失敗，可以勾選此處',
        nameserver: 'DNS 伺服器',
        nameserverHelper: '使用自訂的 DNS 伺服器來校驗網域名稱',
        edit: '編輯憑證',
        execShell: '申請憑證之後執行腳本',
        shell: '腳本內容',
        shellHelper:
            '腳本預設執行目錄為 1Panel 安裝目錄，如果有推送憑證，那麼執行目錄為憑證推送目錄。預設逾時時間 30 分鐘',
        customAcme: '自訂 ACME 服務',
        customAcmeURL: 'ACME 服務 URL',
        baiduCloud: '百度雲',
        pushNode: '同步到其他節點',
        pushNodeHelper: '申請/續期之後推送到選擇的節點',
        fromMaster: '主節點推送',
        hostedZoneID: '託管區域 ID',
        isIP: 'IP 憑證',
        useEAB: '使用 EAB 認證',
    },
    firewall: {
        create: '建立規則',
        edit: '編輯規則',
        ccDeny: 'CC 防護',
        ipWhiteList: 'IP 白名單',
        ipBlockList: 'IP 黑名單',
        fileExtBlockList: '檔案副檔名黑名單',
        urlWhiteList: 'URL 白名單',
        urlBlockList: 'URL 黑名單',
        argsCheck: 'GET 參數校驗',
        postCheck: 'POST 參數校驗',
        cookieBlockList: 'Cookie 黑名單',
        dockerHelper: '目前防火牆無法停用容器埠映射，已安裝應用可前往【已安裝】頁面編輯應用參數，設定埠放行規則。',
        iptablesHelper: '偵測到系統正在使用 {0} 防火牆，如需切換至 iptables，請先手動解除安裝',
        quickJump: '快速跳轉',
        used: '已使用',
        unUsed: '未使用',
        dockerRestart: '防火牆操作需要重新啟動 Docker 服務',
        firewallHelper: '{0}系統防火牆',
        firewallNotStart: '尚未啟用系統防火牆，請先啟用',
        restartFirewallHelper: '該操作將對目前防火牆進行重新啟動操作，是否繼續？',
        stopFirewallHelper: '系統防火牆關閉後，伺服器將失去安全防護，是否繼續？',
        startFirewallHelper: '系統防火牆開啟後，可以更好的防護伺服器安全，是否繼續？',
        noPing: '禁 ping',
        enableBanPing: '禁 Ping',
        disableBanPing: '解除禁 Ping',
        noPingTitle: '是否禁 ping',
        noPingHelper: '禁 ping 後將無法 ping 通伺服器，是否繼續？',
        onPingHelper: '解除禁 ping 後您的伺服器可能會被駭客發現，是否繼續？',
        changeStrategy: '修改{0}策略',
        changeStrategyIPHelper1: 'IP 策略修改為【封鎖】，設定後該 IP 將禁止存取伺服器，是否繼續？',
        changeStrategyIPHelper2: 'IP 策略修改為【放行】，設定後該 IP 將復原正常存取，是否繼續？',
        changeStrategyPortHelper1: '埠策略修改為【拒絕】，設定後埠將拒絕外部存取，是否繼續？',
        changeStrategyPortHelper2: '埠策略修改為【允許】，設定後埠將復原正常存取，是否繼續？',
        stop: '禁止',
        portFormatError: '請輸入正確的埠資訊',
        portHelper1: '多個埠，如：8080,8081',
        portHelper2: '範圍埠，如：8080-8089',
        changeStrategyHelper: '即將把 [{1}] 的 {0} 策略修改為 [{2}]，設定後 {0} 將依 [{2}] 策略對外存取，是否繼續？',
        strategy: '策略',
        accept: '允許',
        drop: '拒絕',
        anyWhere: '所有 IP',
        address: '指定 IP',
        addressHelper: '支援輸入 IP 或 IP 段',
        allow: '放行',
        deny: '封鎖',
        addressFormatError: '請輸入合法的 ip 地址',
        addressHelper1: '支援輸入 IP 或 IP 段：172.16.10.11 或 172.16.0.0/24',
        addressHelper2: '多個 IP 或 IP 段 請用 "," 隔開：172.16.10.11,172.16.0.0/24',
        allIP: '所有 IP',
        portRule: '埠規則',
        forwardRule: '埠轉發',
        ipRule: 'IP 規則',
        userAgent: 'User-Agent 過濾',
        sourcePort: '來源埠',
        targetIP: '目標 IP',
        targetPort: '目標埠',
        forwardHelper1: '如果是本機埠轉發，目標 IP 為：127.0.0.1',
        forwardHelper2: '如果目標 IP 不填寫，預設為本機埠轉發',
        forwardPortHelper: '支援埠範圍，如：8080-8089',
        forwardInboundInterface: '轉發入站網路介面',
        exportHelper: '即將匯出 {0} 條防火牆規則，是否繼續？',
        importSuccess: '成功匯入 {0} 條規則',
        importPartialSuccess: '匯入完成：成功 {0} 條，失敗 {1} 條',
        ipv4Limit: '目前操作暫僅支援 IPv4 地址',
        basicStatus: '目前未綁定鏈 {0} ，請先綁定',
        baseIptables: 'iptables 服務',
        forwardIptables: 'iptables 埠轉發服務',
        advanceIptables: 'iptables 進階設定服務',
        initMsg: '即將初始化 {0}, 是否繼續？',
        initHelper: '偵測到 {0} 未初始化，請點選頂部狀態列的初始化按鈕進行設定',
        bindHelper: '綁定 僅當狀態為綁定時，防火牆規則才能生效，是否確認？',
        unbindHelper: '解除綁定 解除綁定時，已新增的所有防火牆規則將失效，請謹慎操作，是否確認？',
        whiteList: '白名單',
        portWhiteList: '埠白名單',
        portWhiteListAlter: '防火牆初始化或啟動時，將自動放行白名單埠',
        portWhiteListHelper: '支援指定協定（如 80/tcp、443/udp），未指定時預設使用 tcp。',
        defaultStrategy: '目前鏈 {0} 的預設策略為 {1}',
        defaultStrategy2: '目前鏈 {0} 的預設策略為 {1}，當前狀態為未綁定，已新增的防火牆規則需要綁定後生效',
        filterRule: 'Filter 規則',
        filterHelper: 'Filter 規則允許您在 INPUT/OUTPUT 層級控制網路流量。請謹慎設定，避免鎖定系統。',
        chain: '鏈',
        targetChain: '目標鏈',
        sourceIP: '來源 IP',
        destIP: '目標 IP',
        inboundDirection: '入站方向',
        outboundDirection: '出站方向',
        destPort: '目標埠',
        action: '動作',
        reject: '拒絕',
        sourceIPHelper: 'CIDR 格式，如 192.168.1.0/24，留空表示所有地址',
        destIPHelper: 'CIDR 格式，如 10.0.0.0/8，留空表示所有地址',
        portHelper: '0 表示任意埠',
        allPorts: '所有埠',
        deleteRuleConfirm: '將刪除 {0} 條規則，是否繼續？',
        advancedControl: '進階控制',
        advancedControlNotAvailable: '目前使用 {0} 防火牆，進階規則僅支援 iptables',
        destination: '目的地',
    },
    runtime: {
        runtime: '執行環境',
        default: '預設',
        workDir: '工作目錄',
        localHelper: '本機環境安裝及離線環境使用相關問題，可參考 ',
        versionHelper: 'PHP的版本,例 v8.0',
        buildHelper: '擴展越多，製作映像檔時占用的 CPU 越高，可在建立環境後再安裝擴展。',
        openrestyWarn: 'PHP 需要升級 OpenResty 至 1.21.4.1 版本以上才能使用',
        toupgrade: '去升級',
        edit: '編輯執行環境',
        extendHelper: '列表中不存在的擴展，可以手動輸入之後選擇，例:輸入 sockets ，然後在下拉選單中選擇第一個',
        rebuildHelper: '編輯擴展後需要【重建】PHP 應用之後才能生效',
        rebuild: '重建 PHP 應用',
        source: 'PHP 擴展源',
        ustc: '中國科學技術大學',
        netease: '網易',
        aliyun: '阿里雲',
        tsinghua: '清華大學',
        xtomhk: 'XTOM 映像站（香港）',
        xtom: 'XTOM 映像站（全球）',
        phpsourceHelper: '根據你的網路環境選擇合適的源',
        appPort: '應用埠',
        externalPort: '外部映射埠',
        packageManager: '包管理器',
        codeDir: '原始碼目錄',
        appPortHelper: '應用埠是指容器內部執行的埠',
        externalPortHelper: '外部映射埠是指將容器內部埠映射到外部的埠',
        runScript: '啟動指令',
        runScriptHelper: '啟動指令是指容器啟動後執行的指令',
        open: '開啟',
        operatorHelper: '將對選取的執行環境進行 {0} 操作，是否繼續？ ',
        taobao: '淘寶',
        tencent: '騰訊',
        imageSource: '映像源',
        moduleManager: '模組管理',
        module: '模組',
        nodeOperatorHelper: '是否{0} {1} 模組？ 操作可能導致運轉環境異常，請確認後操作',
        customScript: '自訂啟動指令',
        customScriptHelper: '請填寫完整的啟動指令，例：npm run start，pm2 啟動指令請換為 pm2-runtime，否則會啟動失敗',
        portError: '不能填寫相同連接埠',
        systemRestartHelper: '狀態說明：中斷-系統重新啟動導致狀態取得失敗',
        javaScriptHelper: '請填寫完整啟動指令，例：java -jar halo.jar -Xmx1024M -Xms256M',
        javaDirHelper: '目錄中要包含 jar 包，子目錄中包含也可',
        goHelper: '請填寫完整啟動指令，例：go run main.go 或 ./main',
        goDirHelper: '目錄中要包含 go 檔案或二進制檔案，子目錄中包含也可',
        extension: '擴充',
        installExtension: '是否確認安裝擴充功能 {0}',
        loadedExtension: '已載入擴充功能',
        popularExtension: '常用擴充',
        uninstallExtension: '是否確認移除擴充功能 {0}',
        phpConfigHelper: '修改設定需要重新啟動執行環境，是否繼續',
        operateMode: '執行模式',
        dynamic: '動態',
        static: '靜態',
        ondemand: '按需',
        dynamicHelper: '動態調整行程數，彈性高，適合流量波動較大或低記憶體的網站',
        staticHelper: '固定行程數，適合高併發穩定流量的網站，資源消耗較高',
        ondemandHelper: '行程按需啟動和銷毀，資源利用最優，但初始回應可能較慢',
        max_children: '允許建立的最大行程數',
        start_servers: '啟動時所建立的行程數',
        min_spare_servers: '最小空閒行程數',
        max_spare_servers: '最大空閒行程數',
        envKey: '名稱',
        envValue: '值',
        environment: '環境變數',
        pythonHelper:
            '請填寫完整啟動指令，例：pip install -r requirements.txt && python manage.py runserver 0.0.0.0:5000',
        dotnetHelper: '請填寫完整的啟動指令，例如 dotnet MyWebApp.dll',
        dirHelper: '說明：請填寫容器內的目錄路徑',
        concurrency: '並發方案',
        loadStatus: '負載狀態',
        extraHosts: '主機映射',
    },
    process: {
        pid: '行程ID',
        ppid: '父行程ID',
        numThreads: '執行緒',
        memory: '記憶體',
        diskRead: '磁碟讀',
        diskWrite: '磁碟寫',
        netSent: '上行',
        netRecv: '下行',
        numConnections: '連接',
        startTime: '啟動時間',
        running: '執行中',
        sleep: '睡眠',
        stop: '停止',
        idle: '空閒',
        zombie: '僵屍行程',
        wait: '等待',
        lock: '鎖定',
        blocked: '阻塞',
        cmdLine: '啟動指令',
        basic: '基本資訊',
        mem: '記憶體資訊',
        openFiles: '檔案開啟',
        env: '環境變數',
        noenv: '無',
        net: '網路連接',
        laddr: '本機地址/埠',
        raddr: '遠端地址/埠',
        stopProcess: '結束',
        viewDetails: '檢視詳情',
        stopProcessWarn: '是否確定結束此行程 (PID:{0})？',
        kill: '結束行程',
        killNow: '立即結束',
        killHelper: '結束行程 {0} 可能導致部分程式無法正常運作，是否繼續？',
        processName: '行程名稱',
    },
    tool: {
        supervisor: {
            loadStatusErr: '取得行程狀態失敗，請檢查 supervisor 服務狀態',
            notSupport: '未偵測到 Supervisor 服務，請前往腳本庫頁面手動安裝',
            list: '守護行程',
            config: 'Supervisor 設定',
            primaryConfig: '主設定檔案位置',
            notSupportCtl: '未偵測到 supervisorctl，請前往腳本庫頁面手動安裝',
            user: '啟動使用者',
            command: '啟動指令',
            dir: '執行目錄',
            numprocs: '行程數量',
            initWarn:
                '初始化操作需要修改設定檔的 [include] files 參數，修改後的服務設定檔所在目錄: 1panel安裝目錄/1panel/tools/supervisord/supervisor.d/',
            operatorHelper: '將對 {0} 進行 {1} 操作，是否繼續？ ',
            uptime: '執行時長',
            notStartWarn: 'Supervisor 未啟動，請先啟動',
            serviceName: '服務名稱',
            initHelper: '偵測到 Supervisor 服務尚未初始化，請點選上方狀態列的初始化按鈕進行設定。',
            serviceNameHelper: 'systemctl 管理的 Supervisor 服務名稱，一般為 supervisor 或 supervisord',
            restartHelper: '初始化會重新啟動服務，導致原有的守護行程全部關閉',
            RUNNING: '執行中',
            STOPPED: '已停止',
            STOPPING: '停止中',
            STARTING: '啟動中',
            FATAL: '啟動失敗',
            BACKOFF: '啟動異常',
            ERROR: '錯誤',
            statusCode: '狀態碼',
            manage: '管理',
            autoRestart: '自動重新啟動',
            EXITED: '已退出',
            autoRestartHelper: '程式異常退出後是否自動重新啟動',
            autoStart: '自動啟動',
            autoStartHelper: 'Supervisor 啟動後是否自動啟動服務',
        },
    },
    disk: {
        management: '磁碟管理',
        partition: '分區',
        unmount: '取消掛載',
        unmountHelper: '是否取消掛載分區 {0}？',
        mount: '掛載',
        partitionAlert: '進行磁碟分區時需要格式化磁碟，原有資料將被刪除，請提前儲存或快照資料',
        mountPoint: '掛載目錄',
        systemDisk: '系統磁碟',
        unpartitionedDisk: '未分區磁碟',
        handlePartition: '立即分區',
        filesystem: '檔案系統',
        unmounted: '未掛載',
        cannotOperate: '無法操作',
        systemDiskHelper: '提示：目前磁碟為系統盤，無法進行操作',
        autoMount: '自動掛載',
        model: '裝置型號',
        diskType: '磁碟類型',
        serial: '序號',
        noFail: '掛載失敗不影響系統啟動',
    },
    xpack: {
        ldap: {
            source: '來源',
            directoryMissing: 'LDAP 中不存在',
            localCredentialsManaged: '此使用者的使用者名稱和密碼由 LDAP 管理，無法在本機修改。',
            sources: {
                local: '本機',
                ldap: 'LDAP',
            },
            importUsers: '匯入 AD/LDAP 使用者',
            searchUsersPlaceholder: '搜尋使用者名稱',
            readFromLDAP: '從 LDAP 讀取',
            selectedUsers: '已選擇 {0} 項',
            queriedAt: '讀取時間',
            cachedResult: '快取結果',
            roleForNewUsers: '新使用者角色',
            selectRole: '請選擇角色',
            roleOnlyForNewUsers: '僅在本次處理包含新使用者時需要選擇角色。',
            roleRequiredForNewUsers: '請為新的 LDAP 使用者選擇角色。',
            changedFields: '變更欄位',
            importSelected: '匯入/更新所選',
            importAll: '匯入/更新全部',
            importPreview: 'AD/LDAP 匯入預覽',
            importCompleted: 'AD/LDAP 使用者處理完成',
            incompletePreview: 'LDAP 目錄未完整讀取，請重新從 LDAP 讀取。',
            missingUsersWarning: '嚴格同步將停用 LDAP 中不存在的使用者。',
            missingUsersWarningDetail: '{0} 個本機 LDAP 使用者將無法繼續登入。',
            action: '處理結果',
            reason: '原因',
            noImportChanges: '沒有需要處理的變更',
            confirmImport: '確認匯入',
            created: '新增',
            updated: '更新',
            reactivated: '恢復',
            unchanged: '無變更',
            conflicts: '衝突',
            missing: '將停用',
            missingUsersConfirm: 'LDAP 中不存在的 {0} 個使用者將被停用並登出，是否繼續？',
            strictSyncConfirm: '確認嚴格同步',
            status: { importable: '可匯入', update_available: '待更新', up_to_date: '已是最新', conflict: '同名衝突' },
            fields: { name: '使用者名稱', externalDN: '目錄 DN', externalID: '外部識別', authSourceStatus: '認證狀態' },
            actions: {
                created: '新增',
                updated: '更新',
                reactivated: '恢復',
                unchanged: '無變更',
                skipped: '略過',
                conflicts: '衝突',
                conflict: '衝突',
                missing: '停用',
                errors: '錯誤',
                error: '錯誤',
            },
        },
        expiresEnterpriseAlert: '溫馨提醒：您的企業版許可證將在 {0} 天後到期，屆時所有企業版功能將無法繼續使用。',
        expiresProAlert: '溫馨提醒：您的專業版許可證將在 {0} 天後到期，屆時所有專業版功能將無法繼續使用。',
        menu: '進階功能',
        upage: 'AI 建站',
        proAlert: '升級商業版以使用此功能',
        opsReport: {
            name: '運維報表',
            overview: '概覽',
            system: '主機運行',
            login: '登入與安全配置',
            website: '網站防護',
            resource: '運行資源',
            cronjob: '計劃任務',
            alert: '告警通知',
            history: '匯出歷史',
            setting: '設置',
            page: {
                enterprise: '企業版',
                reportNode: '報表節點',
                selectReportNode: '選擇報表節點',
                currentNode: '當前節點',
                scoreMeta: '扣分 {0} 分 · 風險 {1} 項',
                hostAddress: '主機地址',
                panelVersion: '面板版本',
                cpuCores: '實體核心',
                coreUnit: '{0} 核',
                memoryTotal: '記憶體總量',
                reportDate: '報表日期',
                serverSecurityOverview: '伺服器安全運營概覽',
                securityScore: '安全評分',
                overviewSummary: '當前安全等級為 {0}，合計扣分 {1} 分，識別到 {2} 個風險項，覆蓋 {3} 個檢查對象。',
                riskDistribution: '風險分佈',
                totalDeducted: '合計扣分',
                noRiskDeducted: '未觸發扣分',
                scoreTrend: '評分趨勢',
                scoreLevelSafe: '安全',
                scoreLevelAttention: '需關注',
                scoreLevelMediumRisk: '中風險',
                scoreLevelHighRisk: '高風險',
                scoreCategoryHost: '主機資源',
                scoreCategoryLogin: '登入安全',
                scoreCategoryWebsite: '網站與憑證',
                scoreCategoryCronjob: '計劃任務',
                scoreCategoryResource: '執行資源',
                scoreDiskHigh: '磁碟 {0} 使用率 {1}%',
                scoreDiskMedium: '磁碟 {0} 使用率 {1}%',
                scoreResourceHigh: '{0} 當前使用率 {1}%',
                scoreResourceMedium: '{0} 當前使用率 {1}%',
                scoreLoadMedium: '負載當前值 {0}',
                scoreMonitorDisabled: '主機監控未開啟',
                scorePanelLoginFailedHigh: '面板登入失敗 {0} 次',
                scorePanelLoginFailedMedium: '面板登入失敗 {0} 次',
                scoreSSHLoginFailedHigh: 'SSH 登入失敗 {0} 次',
                scoreSSHLoginFailedMedium: 'SSH 登入失敗 {0} 次',
                scoreMFADisabled: 'MFA 未開啟',
                scoreAllowIPsOpen: '授權 IP 與綁定域名均未配置或未限制訪問',
                scorePanelHTTPSDisabled: '面板 HTTPS 未啟用',
                scoreSSHRootLogin: 'SSH 允許 Root 登入',
                scoreSSHPasswordAuth: 'SSH 開啟密碼認證且未啟用金鑰認證',
                scoreSSLExpired: '{0} 憑證已到期',
                scoreSSLHigh: '{0} 憑證剩餘 {1} 天',
                scoreSSLMedium: '{0} 憑證剩餘 {1} 天',
                scoreWebsiteExpired: '{0} 網站已到期',
                scoreWebsiteExpire: '{0} 網站剩餘 {1} 天到期',
                scoreWebsiteHTTP: '{0} 未啟用 HTTPS',
                scoreWebsiteStopped: '{0} 狀態異常',
                scoreWebsiteMonitorUnavailable: '網站監控偵測到不可用站點',
                scoreWebsiteMonitorAvailability: '網站監控請求可用率 {0}% 低於閾值',
                scoreWebsiteMonitorStatusAbnormal: '網站監控已啟用，但狀態異常',
                scoreWafDisabled: 'WAF 未開啟，網站未納入防護',
                scoreWafHighRiskHit: 'WAF 統計週期內命中 {0} 條風險規則',
                scoreCronjobFailed: '近 7 天存在 {0} 條計劃任務失敗記錄',
                scoreAppFailed: '{0} 應用執行異常',
                scoreAppStopped: '{0} 應用已停止',
                scoreContainerHigh: '{0} 容器狀態異常',
                scoreContainerExited: '{0} 容器已停止',
                scoreContainerResource: '{0} 容器資源使用率過高',
                scoreContainerPublicPort: '{0} 容器存在公網暴露端口',
                attentionItems: '待關注項',
                attentionAssets: '待關注資產',
                riskItems: '風險項',
                object: '對象',
                description: '說明',
                itemUnit: '項',
                recordUnit: '條',
                certUnit: '張',
                containerUnit: '個',
                loginFailed: '登入失敗',
                sslExpire: '憑證到期',
                abnormalContainer: '異常容器',
                statAttentionDesc: '當前合計扣分 {0} 分',
                statLoginDesc: '面板 {0} 條 · SSH {1} 條',
                statSslDesc: '共檢查 {0} 張憑證',
                statContainerDesc: '共檢查 {0} 個容器',
                assetHostDesc: '磁碟最高使用率 {0}%',
                assetWebsiteDesc: '{0} 張憑證即將到期，{1} 個網站狀態異常',
                assetResourceDesc: '{0} 個應用異常，{1} 個容器異常',
                assetCronjobDesc: '近 7 天 {0} 條失敗記錄，{1} 個任務未啟用',
                app: '應用',
                website: '網站',
                websiteSsl: '網站 / 憑證',
                cronjob: '計劃任務',
                container: '容器',
                sslCertificate: 'SSL 憑證',
                loginSecurity: '登入安全',
                panelLogin: '面板登入',
                sshLogin: 'SSH 登入',
                failedRecord: '失敗記錄',
                expired: '已到期',
                expiredDays: '已過期 {0} 天',
                remainingDays: '{0} · 剩餘 {1} 天',
                enabled: '已開啟',
                disabled: '未開啟',
                exportRecordFailed: '儲存匯出記錄失敗',
                hostInfo: '主機資訊',
                hostname: '主機名',
                osVersion: '系統版本',
                kernelVersion: '核心版本',
                arch: '架構',
                uptime: '執行時間',
                diskUsage: '磁碟使用',
                mountPoint: '掛載點',
                device: '裝置',
                capacity: '容量',
                used: '已用',
                usageRate: '使用率',
                memory: '記憶體',
                load: '負載',
                maxDiskUsage: '磁碟最高使用率',
                panelLoginSecurity: '面板登入安全配置',
                sshSecurity: 'Linux 伺服器 SSH 安全配置',
                panelFailedRecords: '面板登入失敗記錄',
                sshFailedRecords: 'SSH 登入失敗記錄',
                location: '歸屬地',
                configItem: '配置項',
                currentValue: '當前值',
                securityEntrance: '安全入口',
                configured: '已配置',
                notConfigured: '未配置',
                normal: '正常',
                needAttention: '需關注',
                allowIPs: '授權 IP',
                restricted: '已限制',
                unrestricted: '未限制',
                bindDomain: '綁定網域',
                accessRestriction: '訪問限制',
                panelHTTPS: '面板 HTTPS',
                passwordComplexity: '密碼複雜度',
                sshService: 'SSH 服務',
                running: '執行中',
                notRunning: '未執行',
                listenPort: '監聽埠',
                read: '已讀取',
                rootLogin: 'Root 登入',
                passwordAuth: '密碼認證',
                keyAuth: '金鑰認證',
                panelLoginFailed: '面板登入失敗',
                sshLoginFailed: 'SSH 登入失敗',
                panelSecurityItems: '面板安全項',
                sshSecurityItems: 'SSH 安全項',
                loginSecurityHealthStatus: '登入安全健康狀態',
                adjustSSHSecurity: '調整 SSH 安全',
                viewLoginLogs: '查看登入日誌',
                riskLevel: '風險等級',
                goConfig: '去配置',
                viewMore: '查看更多',
                involvedIPs: '涉及 {0} 個 IP',
                sessionTimeout: '會話逾時時間',
                countUnit: '次',
                recent24Hours: '近 24 小時',
                currentService: '當前服務',
                riskItemsExist: '存在 {0} 項風險',
                loginHealthRiskDesc: '存在 {0} 項風險配置，建議立即加固登入安全配置，降低被入侵風險。',
                loginHealthNormalDesc: '目前登入與 SSH 安全配置處於正常狀態',
                loginHealthNormalReason: '登入安全配置正常',
                securityEntranceConfiguredDesc: '已配置安全入口，降低預設入口暴露風險',
                securityEntranceRiskDesc: '未開啟安全入口，建議隱藏預設登入入口',
                allowIPsRestrictedDesc: '已限制允許訪問面板的 IP',
                allowIPsRiskDesc: '未限制訪問 IP，公網環境建議配置授權 IP',
                bindDomainRestrictedDesc: '已綁定訪問域名',
                bindDomainRiskDesc: '未綁定訪問域名，建議限制固定域名訪問',
                accessRestrictionValue: '授權 IP：{0} / 綁定域名：{1}',
                accessRestrictionNormalDesc: '已配置授權 IP 或綁定域名，面板訪問來源受限',
                accessRestrictionRiskDesc: '授權 IP 與綁定域名均未配置或未限制訪問，建議至少配置一項',
                panelHTTPSNormalDesc: '面板已啟用 HTTPS',
                panelHTTPSRiskDesc: '面板未啟用 HTTPS，登入鏈路存在明文風險',
                passwordComplexityNormalDesc: '已開啟密碼複雜度校驗',
                passwordComplexityRiskDesc: '未開啟密碼複雜度校驗，弱密碼風險較高',
                mfa: 'MFA 認證',
                mfaNormalDesc: '已開啟 MFA 認證，登入安全性更高',
                mfaRiskDesc: '未開啟 MFA 認證，建議啟用多因素認證',
                sessionTimeoutNormalDesc: '會話逾時時間處於較安全範圍',
                sessionTimeoutRiskDesc: '會話逾時時間較長，建議控制空閒會話有效期',
                sshServiceNormalDesc: 'SSH 服務運行正常',
                sshServiceRiskDesc: 'SSH 服務未運行或狀態異常',
                sshPortNormalDesc: 'SSH 端口已調整為非預設端口',
                sshPortRiskDesc: '仍使用預設 22 端口，建議按需調整',
                rootLoginNormalDesc: 'Root 用戶不可直接登入',
                rootLoginRiskDesc: 'Root 用戶可以直接登入，建議禁用',
                passwordAuthNormalDesc: '已禁用 SSH 密碼登入',
                passwordAuthRiskDesc: '允許使用密碼登入，暴力破解風險較高',
                keyAuthNormalDesc: '已啟用 SSH 密鑰認證',
                keyAuthRiskDesc: '未啟用密鑰認證，建議使用密鑰登入',
                websiteOverview: '網站概覽',
                primaryDomain: '主網域',
                expireTime: '到期時間',
                domain: '網域',
                issuer: '頒發機構',
                autoRenew: '自動續簽',
                websiteCount: '網站數量',
                httpsWebsite: 'HTTPS 網站',
                certCount: '憑證數量',
                websiteExpire: '網站到期',
                database: '資料庫',
                remoteDatabase: '遠端資料庫',
                address: '地址',
                containerResourceUsage: '容器資源佔用',
                spaceUsage: '佔用空間',
                reclaimable: '可回收空間',
                containerReclaimable: '容器可回收',
                image: '映像',
                volume: '資料卷',
                buildCache: '建構快取',
                alert: '告警',
                alertConfigured: '已配置告警',
                alertOperations: '告警通知',
                alertTaskCount: '告警任務',
                enabledAlertTask: '啟用任務',
                disabledAlertTask: '停用任務',
                alertChannels: '通知通道',
                alertLogCount: '告警日誌',
                alertSuccessRate: '告警成功率',
                alertFailedLogs: '失敗告警日誌',
                alertPendingLogs: '待同步日誌',
                alertPending: '待同步',
                alertTaskStats: '告警任務統計',
                alertTaskType: '告警類型',
                alertLogStatusStats: '告警執行狀態',
                alertHealthNormal: '正常',
                alertHealthAttention: '需關注',
                alertHealthRisk: '高風險',
                alertHealthSummary: '告警健康狀態',
                alertHealthNormalReason: '告警任務、通知通道和執行日誌均處於正常狀態',
                alertNoChannelReason: '未啟用通知通道',
                alertFailedLogReason: '存在 {0} 條失敗日誌',
                alertPendingReason: '存在 {0} 條待同步日誌',
                alertDisabledTaskReason: '{0} 個告警任務已停用',
                alertNoTaskReason: '未配置告警任務',
                goAlertConfig: '告警配置',
                goAlertLogs: '告警日誌',
                configureAlertChannel: '配置通知通道',
                createAlertTask: '建立告警任務',
                viewAlertTasks: '查看告警任務',
                viewFailedAlertLogs: '查看失敗日誌',
                viewAlertLogs: '查看告警日誌',
                alertChannelSummary: '已啟用 {0} / {1} 個通道',
                alertTaskEnabledDesc: '已啟用 {0} 個任務',
                alertTaskSummary: '啟用 {0} 個，停用 {1} 個',
                alertLogSummary: '成功 {0} 條，失敗 {1} 條',
                alertPendingDesc: '{0} 條日誌等待同步',
                alertLogSuccessDesc: '已完成通知',
                alertLogFailedDesc: '需檢查通道配置或發送鏈路',
                alertLogPendingDesc: '離線或同步鏈路待處理',
                failedAlertLogs: '失敗告警日誌',
                disabledAlertTasks: '停用告警任務',
                alertTableDisplayDesc: '目前顯示 {0} 條，共 {1} 條',
                alertMsg: '告警內容',
                alertMethod: '告警方式',
                alertRule: '告警規則',
                noAlertTask: '暫無告警任務',
                noFailedAlertLog: '暫無失敗告警日誌',
                noDisabledAlertTask: '暫無停用告警任務',
                alertCronjobType: '計劃任務：{0}',
                alertAllTargets: '全部對象',
                alertAllDisks: '全部磁碟',
                alertAllCertificates: '全部證書',
                alertAllWebsites: '全部網站',
                alertDiskRuleShort: '{0} 超過 {1}{2}，每天 {3} 次',
                alertAverageRuleShort: '{0} 分鐘均值超過 {1}%，每天 {2} 次',
                alertTimeRuleShort: '剩餘 {0} 天內觸發，發送 {1} 次',
                alertSendCountRuleShort: '每天發送 {0} 次',
                alertConfigInvalid: '配置異常',
                scoreCategoryAlert: '告警通知',
                scoreAlertNoTask: '未配置告警任務',
                scoreAlertNoEnabledTask: '告警任務均未啟用',
                scoreAlertDisabledTask: '存在 {0} 個停用告警任務',
                scoreAlertNoChannel: '未啟用告警通知通道',
                scoreAlertFailedHigh: '存在 {0} 條告警失敗日誌',
                scoreAlertFailedMedium: '存在 {0} 條告警失敗日誌',
                scoreAlertPending: '存在 {0} 條告警待同步日誌',
                statAlertDesc: '啟用任務 {0} 個 · 通道 {1} 個',
                assetAlertDesc: '{0} 條失敗日誌，{1} 條待同步日誌',
                failedExecutionRecords: '失敗執行記錄',
                taskID: '任務 ID',
                executeTime: '執行時間',
                backupTasks: '備份類任務',
                systemMetrics: '執行指標',
                cpu: 'CPU',
                thresholdPercent: '閾值 {0}%',
                recent24HourPeakPercent: '近 24 小時峰值 {0}',
                loadAverage: '1 / 5 / 15 分鐘負載：{0} / {1} / {2}',
                sourceMount: '掛載點 {0}',
                storageUsage: '空間佔用',
                localDisk: '本機磁碟',
                highUsagePeriods: '高負載時段',
                timeRange: '時間範圍',
                threshold: '閾值',
                duration: '持續時間',
                peak: '峰值',
                scoring: '計分',
                counted: '計入',
                notCounted: '未計入',
                dataSource: '資料來源',
                noHighUsagePeriod: '暫無高負載時段',
                monitorDisabledOrNoData: '主機監控未啟用或暫無監控資料',
                systemHealthStatus: '近 24 小時主機運行風險狀態',
                mainReasons: '主要原因',
                viewHostMonitor: '查看主機監控',
                systemHealthAttentionDesc: '近 24 小時偵測到 {0} 個風險項，建議優先關注資源峰值和磁碟使用率',
                systemHealthNormalDesc: '近 24 小時主機運行指標處於正常狀態',
                monitorEnabled: '監控已啟用',
                cpuCoreUsage: '{0} / {1} 核',
                load1Minute: '1 分鐘負載',
                diskSpaceUsage: '磁碟空間佔用',
                usedCapacity: '已使用 / 總容量',
                fileSystem: '檔案系統',
                resourceTrendSummary: '資源趨勢摘要',
                last24Hours: '近 24 小時',
                granularityHour: '粒度：1 小時',
                current: '目前',
                average: '平均',
                totalItems: '共 {0} 項',
                to: '至',
                hoursShort: '{0} 小時',
                minutesShort: '{0} 分鐘',
                websiteStatus: '網站狀態',
                websiteHealthStatus: '網站防護健康狀態',
                websiteHealthNormalReason: '網站、憑證、WAF 與網站監控均處於正常狀態',
                websiteHealthAttentionDesc: '偵測到 {0} 個風險項，建議儘快處理以保障網站安全與可用性',
                websiteHealthNormalDesc: '目前網站防護指標處於正常狀態',
                handleSslRisk: '處理憑證風險',
                viewWaf: '查看 WAF',
                priority: '優先級',
                riskDescription: '風險描述',
                deductScore: '影響分值',
                remaining: '剩餘',
                wafSourceIpTop: 'WAF 攔截來源 IP TOP5',
                wafAffectedSiteTop: '受影響站點 TOP5',
                sslRisk: '憑證風險',
                sslExpiring: '憑證臨期',
                includedInReport: '已納入報表',
                needRenewal: '建議續簽',
                fromExpireInfo: '來自到期資訊',
                runningWebsite: '執行中網站',
                fromWebsiteStatus: '來自網站列表狀態',
                stoppedWebsite: '已停止網站',
                confirmStoppedWebsite: '確認是否符合預期',
                expiringWebsite: '快要過期網站',
                expiringSoon: '即將到期',
                none: '暫無',
                noSslRisk: '暫無需處理憑證',
                websiteProtection: 'WAF 與網站監控',
                websiteMonitor: '網站監控',
                waf: 'WAF',
                siteAvailability: '請求可用率',
                monitoredSites: '監控站點',
                requestCount: '請求數',
                abnormalSites: '異常站點',
                count5xxSource: '按 5xx 請求統計',
                wafIntercept: 'WAF 攔截',
                websiteMonitorDisabledOrNoData: '網站監控未啟用或暫無監控資料',
                wafDisabledOrNoData: 'WAF 未啟用或暫無攔截資料',
                serviceEnabledButAbnormal: '已啟用，但狀態異常',
                noWafData: '暫無 WAF 攔截資料',
                sourceIP: '來源 IP',
                hitCount: '命中次數',
                level: '等級',
                attackType: '攻擊類型',
                requestRatio: '請求佔比',
                installed: '已安裝',
                normalRunning: '正常執行',
                failedStart: '啟動失敗',
                manualStopped: '手動停止',
                failed: '失敗',
                success: '成功',
                canUpdate: '可升級',
                listSeparator: '、',
                containerCount: '容器數量',
                stopped: '停止',
                abnormal: '異常',
                abnormalContainers: '異常容器',
                resourceUsage: '資源使用',
                exposedContainerPorts: '暴露埠',
                portMapping: '埠映射',
                risk: '風險',
                noAbnormalContainer: '暫無異常容器',
                noExposedContainer: '未檢測到暴露埠',
                publicExpose: '公網暴露',
                privateExpose: '內網映射',
                resourceHealth: '運行資源健康狀態',
                checkTime: '檢測時間',
                resourceHealthNormalDesc: '目前應用、資料庫和容器資源處於正常狀態',
                resourceHealthAttentionDesc: '檢測到 {0} 個需關注項，建議優先處理停止資源和公網暴露端口',
                resourceHealthRiskDesc: '檢測到 {0} 個高風險項，請優先處理異常容器或啟動失敗應用',
                resourceThresholdContainers: 'CPU / 記憶體超閾值容器',
                noThresholdExceededContainer: '暫無超閾值容器',
                triggerMetric: '觸發項',
                resourceReasonAppFailed: '{0} 個應用啟動失敗',
                resourceReasonAppStopped: '{0} 個應用已停止',
                resourceReasonContainerAbnormal: '{0} 個容器狀態異常',
                resourceReasonContainerStopped: '{0} 個容器已停止',
                resourceReasonPublicPorts: '公網暴露端口 {0} 項',
                resourceReasonNormal: '應用、資料庫和容器狀態正常',
                viewAbnormalContainers: '查看異常容器',
                viewExposedPorts: '查看暴露端口',
                viewAppResources: '查看應用資源',
                viewRuntimeResources: '查看運行資源',
                viewContainerResources: '查看容器資源',
                configuredServices: '已配置服務',
                publicPrivatePorts: '公網暴露 {0} 項 / 內網映射 {1} 項',
                currentDisplayTotal: '目前展示 {0} 條，共 {1} 條',
                reclaimableSpace: '可回收空間',
                estimatedReclaimable: '預計可回收',
                unusedImageSpace: '未使用映像空間',
                stoppedContainerSpace: '停止容器空間',
                unusedVolumeSpace: '未使用儲存卷空間',
                buildCacheSpace: 'Docker 構建快取空間',
                executionRecords: '執行記錄',
                successRate: '成功率',
                failedJobs: '失敗任務',
                recentRecoveryPoint: '最近恢復點',
                disabledCronjobTasks: '未啟用計劃任務',
                remoteCoverage: '遠端覆蓋',
                recent7Days: '近 7 天',
                taskTypeStats: '任務類型統計',
                total: '總計',
                taskTypeDesc: '已啟用 {0} 個，未啟用 {1} 個',
                failedOrAttentionTasks: '失敗或需關注任務',
                execution: '執行情況',
                latestExecution: '最近執行',
                remoteBackup: '遠端備份',
                localOnly: '僅本機',
                covered: '已覆蓋',
                noAttentionCronjob: '暫無失敗或需關注的計劃任務',
                cronjobHealth: '計劃任務健康狀態',
                cronjobHealthNormalDesc: '目前計劃任務執行與備份配置處於正常狀態',
                cronjobHealthAttentionDesc: '存在 {0} 個需關注項，建議優先處理未啟用任務和失敗記錄',
                cronjobHealthRiskDesc: '存在 {0} 個風險項，建議優先處理失敗任務和未啟用任務',
                cronjobReasonFailed: '失敗記錄 {0} 條',
                cronjobReasonDisabled: '{0} 個任務未啟用',
                cronjobReasonLocalOnlyBackup: '備份僅本地 {0} 個',
                cronjobReasonNormal: '計劃任務執行與備份覆蓋正常',
                riskLow: '低風險',
                viewFailedRecords: '查看失敗任務',
                viewCronjobTasks: '查看計劃任務',
                checkBackupTasks: '檢查備份任務',
                generationRule: '生成規則',
                scheduleDaily: '每天',
                scheduleDailyDesc: '每天 09:00 生成近 24 小時報表',
                scheduleWeekly: '每週',
                scheduleWeeklyDesc: '每週一 09:00 生成近 7 天報表',
                scheduleMonthly: '每月',
                scheduleMonthlyDesc: '每月 1 日 09:00 生成上月報表',
                scheduleCurrentDaily: '每天 09:00 生成近 24 小時報表 · 下次 {0}',
                scheduleCurrentWeekly: '每週一 09:00 生成近 7 天報表 · 下次 {0}',
                scheduleCurrentMonthly: '每月 1 日 09:00 生成上月報表 · 下次 {0}',
                notificationMethod: '通知方式',
                channel: '通道',
                receiver: '接收對象',
                systemThreshold: '系統閾值',
                metric: '指標',
                currentRule: '當前規則',
                hostMonitor: '主機監控',
                monitorInterval: '監控間隔',
                exportSettings: '匯出設定',
                lastExportReport: '最近生成結果',
                noLastExportReport: '暫無匯出報表記錄',
                lastExportStatus: '最後匯出狀態',
                exportFile: '匯出文件',
                generateTime: '生成時間',
                fileSize: '文件大小',
                viewExportHistory: '查看匯出歷史',
                defaultFormat: '預設格式',
                savePath: '儲存目錄',
                savePathRequired: '請設定報表儲存目錄',
                autoExport: '啟用自動匯出',
                autoExportDesc: '開啟後將每天 09:00 自動生成運維報表',
                autoExportEnabled: '已啟用自動匯出',
                autoExportDisabled: '未啟用自動匯出',
                readOnlyPermissionTip: '目前帳號僅可查看運維報表設定，如需修改請聯絡管理員授權。',
                refreshing: '重新整理中',
                exporting: '匯出中',
                exportFailed: '匯出報表失敗',
                generating: '生成中',
                saved: '已儲存',
                saveFailed: '儲存設定失敗',
                generateNow: '立即生成',
                generateSuccess: '已生成報表檔案：{0}',
                generateFailed: '生成報表失敗',
                enabledStatus: '已啟用',
                disabledStatus: '已停用',
                thresholdRule: '閾值 {0}，連續 {1} 次觸發',
                hours: '{0} 小時',
                minutes: '{0} 分鐘',
                seconds: '{0} 秒',
                totalExports: '匯出總數',
                successExports: '成功匯出',
                failedExports: '失敗匯出',
                reportName: '報表名稱',
                exportFormat: '匯出格式',
                operator: '操作人',
                triggerType: '觸發方式',
                filePath: '檔案路徑',
                manualExport: '手動',
                scheduledExport: '定時',
                exportResult: '匯出結果',
                exportDetail: '匯出說明',
            },
        },
        user: {
            user: '使用者',
            userInfo: '使用者資訊',
            userManage: '使用者管理',
            superAdmin: '超級管理員',
            superAdminDesc: '擁有系統全部管理權限，可管理所有資源和設定。',
            nodeAdmin: '節點管理員',
            nodeAdminDesc: '擁有指定節點的管理權限，可管理節點內資源和設定。',
            readOnly: '唯讀使用者',
            readOnlyDesc: '擁有系統全部唯讀權限，可查看所有資源和設定。',
            bindNode: '綁定節點',
            boundUsers: '綁定使用者',
            role: '角色',
            roleName: '名稱',
            permission: '權限',
            permissionDuplicate: '每個節點只能新增一種角色',
            nodeAdminMasterConfirm: '主節點節點管理員權限較高，請結合實際管理需要謹慎分配。',
            permissionLinkageTip: '存在依賴時將自動勾選關聯權限，手動取消後部分功能可能提示「目前使用者無權限」。',
            allViewPermissionHelper: '擁有 AI 閘道的所有檢視權限。',
            apiKeyViewPermissionHelper: '僅能檢視 AI 閘道 API Key。',
            masterOnlyPermission: '主節點權限',
            masterOnlyPermissionHelper: '該權限僅在主節點生效。',
            view: '檢視',
            manage: '管理',
            authManage: '認證管理',
            auth: {
                providerNavigation: '認證類型',
                defaultNode: '預設節點',
                defaultNodePlaceholder: '請選擇節點',
                defaultNodeHelper: '僅用於新使用者。',
                defaultNodeRequired: '請選擇有效的預設節點。',
                nodesLoadFailed: '節點清單載入失敗，請重試後再選擇預設節點。',
                nodeHandling: '節點處理',
                assignDefaultNode: '分配預設節點：{node}',
                keepExistingNode: '保留已有節點權限',
                providers: {
                    ldap: 'AD/LDAP',
                    passkey: 'Passkey',
                    radius: 'Radius',
                    oidc: 'OIDC',
                    saml2: 'SAML2',
                    cas: 'CAS',
                    oauth2: 'OAuth2',
                    dingtalk: '釘釘',
                    feishu: '飛書',
                    wecom: '企業微信',
                },
                providerDescriptions: {
                    ldap: '相容 Active Directory、OpenLDAP 等 LDAP 服務',
                    passkey: '使用裝置憑證進行無密碼安全登入',
                    radius: '透過 Radius 服務完成網路存取認證',
                    oidc: '使用 OpenID Connect 接入企業單一登入',
                    saml2: '透過 SAML2 完成企業身分聯合登入',
                    cas: '接入集中式認證服務實現單一登入',
                    oauth2: '接入相容 OAuth2 的第三方身分服務',
                    dingtalk: '使用釘釘組織身分和掃碼登入',
                    feishu: '使用飛書組織身分和帳號同步',
                    wecom: '使用企業微信成員身分認證',
                },
                planned: '待接入',
                plannedTitle: '{0} 認證設定',
                plannedDesc: '該認證方式正在規劃中，暫不可用。',
                oidc: {
                    accessMode: '存取方式',
                    accessModeDesc: '身分提供者支援 Discovery 時優先使用標準模式。',
                    actionCreate: '建立使用者',
                    actionKeepName: '保留目前名稱',
                    actionPending: '等待結果',
                    actionReject: '拒絕登入',
                    actionUpdate: '更新身分資訊',
                    advanced: '進階設定',
                    advancedDesc: '預設值適用於標準 Provider；只有不相容時才調整。',
                    assignDefaultRole: '指派預設角色：{role}',
                    authorizationEndpoint: '授權端點',
                    authorizationEndpointInvalid: '請輸入有效的授權端點位址。',
                    authorizationFlow: '授權流程',
                    automatic: '自動',
                    automaticPolicy: '自動處理策略',
                    automaticPolicyDesc: '以下規則由後端固定執行，不作為管理員開關。',
                    basic: '基礎設定',
                    basicDesc: '先選擇 Provider 模式，再設定客戶端和回呼位址。',
                    browserTest: '瀏覽器測試登入',
                    browserTestConflict: '身分驗證成功，但使用者名稱衝突',
                    browserTestConflictHelper: '對映名稱屬於其他身分，不會自動認領。',
                    browserTestExpired: '瀏覽器測試已過期',
                    browserTestExpiredHelper: '請重新開始測試，並在有效期限內完成授權。',
                    browserTestFailed: '瀏覽器測試失敗',
                    browserTestFailedHelper: '無法完成身分預覽，請檢視後端傳回的在地化錯誤。',
                    browserTestIsolation: '執行真實授權往返，但不會建立或更新使用者、指派角色或產生正式 Session。',
                    browserTestPopupBlocked: '請允許目前站點開啟彈跳窗，然後重新測試。',
                    browserTestPopupClosed: '授權視窗在測試完成前被關閉。',
                    browserTestSuccess: 'Provider 驗證成功',
                    browserTestSuccessHelper: '已完成身分對映預覽，沒有修改使用者或 Session。',
                    browserTestTitle: 'OIDC 瀏覽器測試登入',
                    browserTestWaiting: '等待 Provider 授權',
                    browserTestWaitingHelper: '請在新視窗完成登入，本頁面會自動更新。',
                    callbackCopied: 'OIDC 回呼位址已複製。',
                    callbackURL: '回呼位址',
                    callbackURLHelper: '請將此位址加入身分提供方客戶端的允許回呼清單。',
                    cancelClearSecret: '取消清除',
                    clearSecret: '清除金鑰',
                    clearSecretConfirm: '客戶端金鑰只會在儲存後刪除，是否繼續？',
                    clientAuthMethod: '客戶端認證方式',
                    clientAuthMethodHelper: '請選擇身分提供方為該客戶端設定的認證方式。',
                    clientAuthMethodRequired: '請選擇客戶端認證方式。',
                    clientID: '客戶端 ID',
                    clientIDRequired: '請輸入客戶端 ID。',
                    clientSecret: '客戶端金鑰',
                    clockSkew: '權杖時間偏差',
                    clockSkewHelper: '允許身分提供者與面板存在少量時間偏差，建議保持 60 秒。',
                    clockSkewRequired: '請輸入權杖時間偏差。',
                    compatibilityMode: '相容模式',
                    compatibilityModeHelper: '僅用於 Discovery 不完整或端點被改寫的 Provider，核心 OIDC 驗證不會關閉。',
                    configurationFailedHelper: '測試失敗，頁面只顯示後端在地化錯誤。',
                    configurationFailedTag: '測試失敗',
                    configurationHighRiskPassed: '設定測試通過，但包含高風險相容項。',
                    configurationHighRiskTag: '高風險設定通過',
                    configurationNotTested: '目前設定尚未測試。',
                    configurationNotTestedTag: '尚未測試',
                    configurationPassed: '目前設定已通過安全性和能力檢查。',
                    configurationPassedTag: '測試通過',
                    configurationStaleHelper: '設定已修改，請重新測試後儲存。',
                    configurationStaleTag: '結果已過期',
                    configurationTestMeta: '測試時間 {time}，耗時 {duration} ms；不儲存 Provider 原始回應。',
                    configurationTestResult: '設定測試結果',
                    configurationTestResultDesc:
                        '此處只檢查自動發現結果與身分提供方能力，不交換授權碼，也無法證明客戶端金鑰正確；請使用「瀏覽器測試登入」完成端對端驗證。',
                    configurationTestSuccess: 'OIDC 設定測試成功。',
                    configurationTesting: '正在測試目前 OIDC 設定…',
                    configurationTestingTag: '正在測試',
                    configureSecret: '設定金鑰',
                    conflictExistingRename: '已有 subject 回傳的新 name 已被佔用',
                    conflictExistingRenameResult: '保留原 User.Name，並允許已繫結使用者繼續登入',
                    conflictLDAP: 'LDAP 使用者',
                    conflictLocal: '本機使用者',
                    conflictNewAvailable: '新 subject，對映後的 name 未佔用',
                    conflictNewAvailableResult: '建立本機企業使用者並指派預設角色',
                    conflictNone: '無衝突',
                    conflictOIDC: '其他 OIDC 身分',
                    conflictOccupied: '對映 name 已被本機、LDAP 或其他 OIDC 身分佔用',
                    conflictOccupiedResult: '拒絕新身分，不自動繫結或合併',
                    conflictType: '衝突型別',
                    connectionSecurity: '連線安全',
                    connectionSecurityDesc: '預設驗證憑證，私有 IdP 位址由系統自動識別。',
                    connectionTest: '連線與設定測試',
                    connectionTestCompatibilityDesc: '驗證自訂端點和協定安全性策略。',
                    connectionTestStandardDesc: '根據簽發者位址自動發現端點和能力。',
                    connectionTestTab: '連線測試',
                    customCA: '自訂 CA',
                    customCAHelper: '僅作用於目前認證來源，且不會寫入日誌。',
                    customCARequired: '請提供自訂 CA 憑證。',
                    defaultRole: '預設角色',
                    defaultRoleHelper: '僅首次建立使用者時指派，後續登入不修改角色。',
                    defaultRolePlaceholder: '請選擇角色',
                    defaultRoleRequired: '請選擇有效的預設角色。',
                    disableAfterSave: '儲存後將停用 OIDC。',
                    disableConfirm: '停用 OIDC 會立即使該認證來源使用者的存取失效，是否繼續？',
                    disableDiscardConfirm:
                        '停用 OIDC 屬於故障兜底操作：只關閉登入入口，並立即使此認證來源使用者的存取失效。本頁其他未儲存修改（包括客戶端金鑰修改）將被丟棄。是否繼續？',
                    disableTitle: '停用 OIDC',
                    disabled: '未啟用',
                    discoveryAllowlist: 'Discovery ∩ 安全白名單',
                    enable: '是否啟用',
                    enableAfterSave: '儲存成功後啟用 OIDC。',
                    enabled: '已啟用',
                    endSessionEndpoint: '會話登出端點',
                    endSessionEndpointHelper: '首期只儲存，不執行身分提供方發起的單點登出。',
                    endSessionEndpointInvalid: '請輸入有效的會話登出端點位址。',
                    endpointDiscoveryPlaceholder: '測試連線後顯示',
                    firstLogin: '首次登入',
                    firstLoginPolicy: '建立本機企業使用者，並指派設定的預設角色。',
                    fixedAuthorizationCode: 'Authorization Code Flow',
                    fixedNoTokenPersistence: '不持久化 Token、Claims 和 verifier',
                    fixedSecurityPolicy: '系統固定執行，無需設定',
                    fixedStateNonce: '一次性 state 與 nonce',
                    fixedTokenValidation: 'ID Token 簽章與 Claims 驗證',
                    highRiskSaveConfirm: '目前啟用設定包含高風險相容項，請確認隔離環境確實需要這些設定。',
                    highRiskTitle: '高風險 OIDC 設定',
                    hs256Compatibility: 'HS256（相容模式）',
                    hs256KeyHelper: 'HS256 固定使用目前認證來源的客戶端金鑰，不接受另一份簽章金鑰。',
                    hs256Warning: 'HS256 使用共享對稱金鑰驗證 ID Token；僅在 Provider 無法使用非對稱演算法時啟用。',
                    identityBindingPolicy: '身分主鍵固定為 AuthSourceID + issuer + subject，同名不會認領其他帳號。',
                    identityMissing: '身分已失效',
                    issuer: '簽發者位址',
                    issuerHelper: '用於 OIDC 自動發現，回傳的 issuer 必須與該位址一致。',
                    issuerInvalid: '請輸入不含查詢參數和片段的有效 HTTP 或 HTTPS 簽發者位址。',
                    issuerRequired: '請輸入簽發者位址。',
                    jwksRotation: 'JWKS 自動輪替',
                    jwksURI: 'JWKS 位址',
                    jwksURIHelper: '使用非對稱簽章且金鑰來源為 JWKS 時必填。',
                    jwksURIInvalid: '請為目前簽章金鑰來源填寫有效的 JWKS 位址。',
                    keepExistingRole: '保留已有角色和本機權限',
                    localSecurityData: '本機安全資料',
                    localSecurityDataPolicy: '不覆寫角色、MFA、API Key、Passkey 和本機權限。',
                    localCredentialsManaged:
                        '使用者名稱和本機密碼由 OIDC 身分管理，無法在此修改；角色、權限、MFA、API Key 與 Passkey 仍由本機管理。',
                    localUserFields: '本機使用者欄位',
                    localUserFieldsDesc: '首期只對映 User.Name，不使用 JSON 對映表示式。',
                    loginWith: '使用 {provider} 登入',
                    manualEndpoints: '自訂端點',
                    manualEndpointsDesc: '僅用於自動發現不完整或上游閘道改寫端點的身分提供方。',
                    mappingResult: '對映結果',
                    mode: '接入模式',
                    modeRequired: '請選擇接入模式。',
                    nameClaim: '使用者名稱 Claim',
                    nameClaimHelper: '填寫身分提供方傳回使用者名稱的欄位，如 preferred_username。',
                    nameClaimRequired: '請輸入使用者名稱 Claim。',
                    nameConflict: '同名衝突策略',
                    panelURL: '面板對外位址',
                    panelURLHTTPWarning: 'HTTP 不保護授權回應，僅用於 Provider 接受的隔離私有環境。',
                    panelURLHelper: '填寫使用者實際存取面板的位址，用於產生回呼位址。',
                    panelURLInvalid: '請輸入只包含協定、主機和選用連線埠的對外位址。',
                    panelURLRequired: '請輸入面板對外位址。',
                    pkceDisabled: '不使用 PKCE（僅相容模式）',
                    pkceDisabledWarning: '關閉 PKCE 會降低授權碼流程的抗截獲能力。',
                    pkceHelper: '優先使用 S256，永不提供 plain。',
                    pkceS256: 'S256（建議）',
                    plannedHandling: '預計處理',
                    privateNetworkIdP: '私有網路 IdP',
                    privateNetworkIdPHelper:
                        '明確允許私有位址；元資料、迴路、連結本機、異常重新導向和 DNS 重新繫結仍會阻止。',
                    privateNetworkWarning: '目前認證來源已允許存取私有網路。',
                    protocolCompatibility: '協定相容',
                    protocolCompatibilityDesc: 'ID Token 簽章驗證始終無法關閉。',
                    providerAndClient: '身分提供方與客戶端',
                    providerAndClientDesc: '客戶端金鑰只允許替換或清除，頁面不會回顯。',
                    providerCapabilities: 'Provider 能力',
                    recentTestSuccess: '最近測試成功：{0}',
                    recommended: '推薦',
                    rejectPlain: '拒絕 plain',
                    replaceSecret: '更換金鑰',
                    requestAndClaims: '請求與屬性',
                    requestAndClaimsDesc: '設定授權範圍、使用者資訊補充和請求參數。',
                    requestTimeout: '請求逾時',
                    requestTimeoutRequired: '請輸入請求逾時時間。',
                    restore: '還原',
                    restored: '已還原到上次儲存的 OIDC 設定。',
                    result: '處理結果',
                    rolesLoadFailed: '角色清單載入失敗，請重試後再選擇預設角色。',
                    roleHandling: '角色處理',
                    scenario: '場景',
                    scopes: '授權範圍',
                    scopesHelper: '必須包含 openid，多個範圍請使用空格分隔。',
                    scopesRequired: 'Scopes 必須包含 openid。',
                    seconds: '秒',
                    secretClearHelper: '清除後，重新啟用 OIDC 前必須設定新的客戶端金鑰。',
                    secretConfigured: '已設定',
                    secretNotConfigured: '未設定',
                    secretPlaceholder: '輸入新的客戶端金鑰',
                    secretReplaceHelper: '新金鑰會在儲存時取代原值，請同步更新身分提供方中的客戶端金鑰。',
                    secretRequiredHelper: '啟用 OIDC 前需要設定客戶端金鑰。',
                    secretRequiredToEnable: '請先設定客戶端金鑰，再啟用 OIDC。',
                    secretSavedHelper: '已加密儲存，留空則繼續使用目前金鑰。',
                    secretWaiting: '等待輸入',
                    secretWillClear: '儲存後清除',
                    secretWillReplace: '待替換',
                    signingAlgorithm: 'ID Token 簽章演算法',
                    signingAlgorithmHelper: '只能選擇後端安全白名單中的演算法。',
                    signingKey: '簽章金鑰',
                    signingKeyClientSecret: '客戶端金鑰（僅 HS256）',
                    signingKeyJWKS: 'JWKS URI 自動取得與輪替',
                    signingKeySource: '簽章金鑰來源',
                    signingKeySourceHelper: '優先使用 JWKS；靜態公鑰無法自動輪替。',
                    signingKeyStatic: '靜態 JWK 或 PEM 公鑰',
                    standardDiscovery: '標準模式（自動發現）',
                    standardDiscoveryDesc: '面板自動發現端點和能力，不儲存自動發現原文。',
                    standardMode: '標準模式',
                    standardModeHelper: '根據 Issuer 自動發現端點、簽章能力和 PKCE 支援。',
                    standardProtocolPolicy: '標準協定策略',
                    standardProtocolPolicyDesc: '自動協商簽章能力，不需要填寫簽章演算法和金鑰。',
                    staticSigningKey: '靜態簽章公鑰',
                    staticSigningKeyHelper: '只接受公鑰材料；Provider 換 Key 後需要手動更新。',
                    staticSigningKeyPlaceholder: '貼上 JWK、JWKS JSON 或 PEM 公鑰',
                    staticSigningKeyRequired: '請提供靜態簽章公鑰。',
                    staticSigningKeyWarning: '靜態簽章公鑰無法自動輪替；Provider 換 Key 前必須手動更新。',
                    settingLoadFailed: 'OIDC 設定載入失敗',
                    settingLoadFailedHelper: '為避免以空白預設值覆寫已有設定，目前表單已鎖定。請在連線恢復後重試。',
                    subsequentLogin: '後續登入',
                    subsequentLoginPolicy: '按 subject 找到繫結，僅在新名稱可用時更新 User.Name。',
                    testBeforeBrowserTest: '請先測試目前設定，再進行瀏覽器測試登入。',
                    testBeforeEnable: '儲存設定變更前，請先測試目前設定。',
                    testConfiguration: '測試設定',
                    testDiscovery: '測試連線',
                    tlsCustomCA: 'HTTPS · 自訂 CA 憑證',
                    tlsPrivateHTTP: 'HTTP · 僅私人網路（危險）',
                    tlsPrivateHTTPWarning: 'HTTP 不提供傳輸加密，只允許明確放行的私有目標。',
                    tlsSkipVerify: '略過 TLS 憑證驗證',
                    tlsSystem: 'HTTPS · 系統憑證驗證（建議）',
                    tokenEndpoint: '權杖端點',
                    tokenEndpointInvalid: '請輸入有效的權杖端點位址。',
                    transportSecurity: '傳輸安全',
                    transportSecurityHelper: '優先使用 HTTPS；私有 HTTP 還需要明確允許私有網路。',
                    unsavedChanges: 'OIDC 設定有尚未儲存的變更。',
                    usedClaim: '使用 Claim',
                    userInfoEndpoint: '使用者資訊端點',
                    userInfoEndpointHelper: '使用者名稱欄位缺少時，系統將從此端點補充；留空則不補充。',
                    userInfoEndpointInvalid: '請輸入有效的使用者資訊端點位址。',
                    userMapping: '使用者設定',
                    userMappingDesc: '設定 OIDC 使用者名稱映射，以及首次登入建立使用者時使用的預設節點和角色。',
                },
                saml2: {
                    actionCreate: '建立使用者',
                    actionPending: '等待結果',
                    actionReject: '拒絕登入',
                    actionReuse: '使用已綁定使用者',
                    assignDefaultRole: '分配新使用者角色：{role}',
                    basic: '基礎設定',
                    basicDesc: '設定大多數標準 SAML2 身分提供者所需的常用選項。',
                    browserTest: '測試登入',
                    browserTestConflict: '身分驗證成功，但使用者名稱衝突',
                    browserTestConflictHelper: '映射後的使用者名稱屬於其他身分，不會自動關聯。',
                    browserTestExpired: '瀏覽器測試已過期',
                    browserTestExpiredHelper: '請重新開始測試，並在有效期內完成登入。',
                    browserTestFailed: '瀏覽器測試失敗',
                    browserTestFailedHelper: '無法完成身分預覽，請查看後端傳回的本地化錯誤。',
                    browserTestIsolation: '執行真實 SAML2 往返，但不會建立使用者、分配角色或產生正式工作階段。',
                    browserTestPopupBlocked: '請允許目前網站開啟彈出視窗，然後重新測試。',
                    browserTestPopupClosed: '登入視窗在測試完成前已關閉。',
                    browserTestSuccess: 'SAML2 身分驗證成功',
                    browserTestSuccessHelper: '身分映射預覽已完成，沒有修改使用者或工作階段。',
                    browserTestTitle: 'SAML2 測試登入',
                    browserTestWaiting: '等待 IdP 登入',
                    browserTestWaitingHelper: '請在新視窗完成登入，本頁會自動更新。',
                    certificateFileInvalid: '請選擇有效的 PEM、CRT 或 CER 憑證檔案。',
                    configured: '已設定',
                    configurationFailedHelper: '測試失敗，頁面只顯示後端本地化錯誤。',
                    configurationNotTested: '目前設定尚未測試。',
                    configurationPassed: '目前設定已通過驗證。',
                    configurationStaleHelper: '影響驗證的設定已修改，請重新測試目前草稿。',
                    configurationTestSuccess: 'SAML2 設定測試成功。',
                    configurationTesting: '正在測試目前 SAML2 設定…',
                    conflictLDAP: 'LDAP 使用者',
                    conflictLocal: '本機使用者',
                    conflictNone: '無衝突',
                    conflictOIDC: 'OIDC 身分',
                    conflictSAML2: '其他 SAML2 身分',
                    conflictType: '衝突類型',
                    credentialFileReadFailed: '無法讀取憑證檔案。',
                    credentialFileTooLarge: '憑證檔案不能超過 256 KiB。',
                    credentialsRequired: '請同時設定 SP 私鑰和 SP 憑證。',
                    defaultRole: '新使用者角色',
                    defaultRoleHelper: '僅在首次建立時設定；後續登入保留本機角色、MFA 和權限。',
                    defaultRolePlaceholder: '請選擇角色',
                    defaultRoleRequired: '請選擇有效的新使用者角色。',
                    disableConfirm: '停用 SAML2 會立即拒絕新登入並使其使用者工作階段失效，是否繼續？',
                    disableDiscardConfirm:
                        '停用 SAML2 會捨棄本頁其他未儲存修改，並立即使其使用者工作階段失效，是否繼續？',
                    disableTitle: '停用 SAML2',
                    disabled: '未啟用',
                    enable: '是否啟用',
                    enabled: '已啟用',
                    idpMetadata: 'IdP 元資料',
                    idpMetadataDesc: '填寫 URL 或貼上 XML，擇一即可；同時填寫時優先讀取 URL。',
                    keepExistingRole: '保留現有角色和本機權限',
                    loginWith: '使用 {provider} 登入',
                    mappingResult: '映射結果',
                    metadataRequired: '請填寫 IdP 元資料 URL 或 XML。',
                    metadataURLHelper: '測試和儲存時由後端讀取並驗證元資料。',
                    metadataURLInvalid: '請輸入不含憑證和片段的有效 HTTPS 元資料 URL。',
                    metadataURLRecommended: '元資料 URL（建議）',
                    metadataXML: '元資料 XML',
                    metadataXMLHelper: '適用於身分提供者（IdP）沒有可存取的元資料 URL 的情況。',
                    metadataXMLInvalid: '請輸入包含有效 EntityDescriptor 的元資料 XML。',
                    metadataXMLPlaceholder: '貼上 <EntityDescriptor>...</EntityDescriptor>',
                    nameAttribute: '使用者名稱屬性',
                    nameAttributeHelper: '從已驗證的 SAML 斷言中讀取該屬性，並映射為面板使用者名稱。',
                    nameAttributePlaceholder: '例如 uid、username 或 account',
                    nameAttributeRequired: '請填寫使用者名稱屬性。',
                    notConfigured: '未設定',
                    or: '或',
                    pageDesc: '透過 IdP 元資料接入企業單一登入，常用設定可在一頁完成。',
                    plannedHandling: '預計處理',
                    privateKeyFileInvalid: '請選擇有效的 PEM 私鑰檔案。',
                    recentTestSuccess: '最近測試成功：{0}',
                    restore: '還原',
                    restored: '已還原至上次儲存的 SAML2 設定。',
                    roleHandling: '角色處理',
                    rolesLoadFailed: '角色清單載入失敗，請重試後再選擇新使用者角色。',
                    selectFile: '選擇檔案',
                    serviceStatus: '服務狀態',
                    serviceStatusDesc: '首次啟用前需要先通過目前設定測試。',
                    settingLoadFailed: 'SAML2 設定載入失敗',
                    settingLoadFailedHelper: '為避免以空白預設值覆寫現有設定，目前表單已鎖定。請在連線恢復後重試。',
                    spCertificate: 'SP 憑證',
                    spCertificateHelper: '透過 SP 元資料提供給身分提供者（IdP），用於驗證登入和登出請求。',
                    spCredentials: 'SP 私鑰與憑證',
                    spCredentialsDesc: '用於簽署登入和登出訊息；簽署與安全驗證策略由後端固定處理。',
                    spEntityID: 'SP 實體 ID',
                    spEntityIDHelper:
                        'SP 唯一識別碼，需與身分提供者中設定的實體 ID 或受眾識別碼一致，同時也是 SP 中繼資料位址。',
                    acsURL: 'ACS 位址',
                    sloURL: 'SLO 位址',
                    spPrivateKey: 'SP 私鑰',
                    spPrivateKeyHelper: '用於簽署 SAML 登入請求和登出訊息，加密儲存且不會回顯。',
                    syncLogout: '同步登出',
                    syncLogoutHelper: '從面板或身分提供者任一方登出時，也會同步登出另一方。',
                    testBeforeBrowserTest: '請先測試目前設定，再執行瀏覽器測試登入。',
                    testBeforeEnable: '啟用 SAML2 或儲存驗證敏感變更前，請先測試目前設定。',
                    testConfiguration: '測試設定',
                    unsavedChanges: 'SAML2 設定有未儲存的變更。',
                    usedAttribute: '使用者名稱映射',
                    usersAndRoles: '使用者與角色',
                    usersAndRolesDesc: '設定面板使用者名稱映射，以及首次登入建立使用者時使用的預設節點和角色。',
                },
                ldap: {
                    basic: '基礎設定',
                    loginTitle: 'LDAP 登入',
                    loginWith: '使用 LDAP 登入',
                    backToLocalLogin: '返回面板登入',
                    enable: '是否啟用',
                    enabled: '已啟用',
                    disabled: '未啟用',
                    connection: '基礎連線',
                    connectionDesc: '設定目錄服務和用於搜尋使用者的綁定帳號。',
                    serverURL: '伺服器位址',
                    serverURLHelper: '支援 ldap:// 和 ldaps:// 位址。',
                    userBaseDN: '使用者 Base DN',
                    userBaseDNHelper: 'LDAP 使用者搜尋的起始 DN，可使用 OU、CN 或網域根 DN。',
                    bindDN: '綁定 DN',
                    bindPassword: '密碼',
                    passwordSaved: '留空則保留已儲存的密碼',
                    userSearch: '使用者搜尋',
                    userSearchDesc: '設定使用者搜尋基準與過濾器，並映射到面板使用者名稱欄位。',
                    userFilter: '使用者篩選器',
                    userFilterTooltip: '按使用者名稱查詢時替換 %(user)s，全量讀取時替換為 *。',
                    userFilterHelper: '搜尋和認證時會對使用者名稱執行 LDAP filter escaping。',
                    attributeMap: '映射屬性',
                    attributeMapTooltip: '面板使用者名稱欄位（name）到 LDAP 屬性的 JSON 映射。',
                    attributeMapHelper: '填寫映射到面板使用者名稱欄位（name）的 LDAP 屬性。',
                    advanced: '進階設定',
                    advancedDesc: '設定 TLS 和 LDAP 查詢分頁。',
                    strictSync: '嚴格同步',
                    strictSyncTooltip:
                        '完整全量處理後，LDAP 中不存在的同源使用者，其驗證狀態將標記為「LDAP 中不存在」，但不會刪除。',
                    strictSyncHelper: '僅作用於完整成功的全量處理；匯入選中使用者時不會變更其他使用者的驗證狀態。',
                    skipTLSVerify: '略過 TLS 憑證驗證',
                    skipTLSVerifyTooltip: '連線 LDAPS 時不驗證伺服器端憑證。',
                    connectTimeout: '連線逾時（秒）',
                    searchPageSize: 'LDAP 查詢分頁大小',
                    restore: '還原',
                    testConnection: '測試連線',
                    testLogin: '測試登入',
                    userImport: '使用者匯入',
                    saveBeforeImport: '請先儲存目前 AD/LDAP 設定，再匯入使用者。',
                    format: '格式化',
                    restoreExample: '還原範例',
                    mappingValid: 'JSON 格式正確，name 已設定。',
                    mappingInvalid: '請輸入有效的 JSON。',
                    mappingObject: '映射屬性必須是 JSON 物件。',
                    mappingOnlyName: '僅支援 name 映射。',
                    mappingStringValues: '每個映射屬性都必須是字串。',
                    mappingNameRequired: 'name 必須是非空字串。',
                    restored: '已還原為上次儲存的設定。',
                    connectionTestSuccess: 'LDAP 連線測試成功。',
                    recentTestSuccess: '最近測試成功：{0}',
                    recentTestFailed: '最近測試失敗：{0}',
                    serverURLRequired: '請輸入 LDAP 伺服器位址。',
                    serverURLInvalid: '請輸入有效的 ldap:// 或 ldaps:// 位址。',
                    userBaseDNRequired: '請輸入使用者 Base DN。',
                    bindDNRequired: '請輸入綁定 DN。',
                    passwordRequired: '請輸入密碼。',
                    userFilterRequired: '請輸入使用者篩選器。',
                    connectTimeoutRequired: '請輸入連線逾時時間。',
                    searchPageSizeRequired: '請輸入 LDAP 查詢分頁大小。',
                    sync: {
                        title: '定時同步',
                        description: '定期讀取 LDAP 全量使用者，並維護面板中的 LDAP 使用者。',
                        enable: '是否啟用',
                        enableHelper: '關閉後不再自動執行，仍可手動立即同步。',
                        schedule: '執行週期',
                        daily: '每天',
                        weekly: '每週',
                        customCron: '自訂 Cron',
                        preview: '預覽',
                        previewTitle: '未來 5 次執行',
                        previewEmpty: '暫無可用執行時間',
                        cronHelper: '使用「分 時 日 月 週」五段式 Cron 運算式。',
                        autoImport: '自動匯入新使用者',
                        autoImportHelper: '關閉後，僅維護已匯入 LDAP 使用者的目錄識別與狀態，不會自動建立新使用者。',
                        defaultRole: '新使用者角色',
                        defaultRolePlaceholder: '請選擇角色',
                        defaultRoleHelper: '僅用於定時同步中新建立的使用者，後續可在使用者管理中調整。',
                        defaultRoleRequired: '請選擇新 LDAP 使用者的角色。',
                        strictSyncHelper:
                            '全量同步成功後，將 LDAP 中缺失的使用者標記為「LDAP 中不存在」並清理工作階段，不會刪除使用者、角色或權限。',
                        runNow: '立即同步',
                        lastRunSuccess: '最近同步成功：{0}',
                        lastRunFailed: '最近同步失敗：{0}',
                        lastRunRunning: '同步開始時間：{0}',
                        sourceDisabled: '請先啟用並儲存 AD/LDAP，再執行同步。',
                        cronRequired: '請輸入 Cron 運算式。',
                        saveBeforeRun: '請先儲存同步設定，再執行同步。',
                        runConfirmTitle: '執行嚴格同步',
                        runConfirmDescription:
                            '完整全量查詢中缺失的 LDAP 使用者，其驗證狀態將標記為「LDAP 中不存在」並清理活動工作階段，是否繼續？',
                        runSuccess: 'LDAP 同步完成。',
                        weekdays: {
                            0: '週日',
                            1: '週一',
                            2: '週二',
                            3: '週三',
                            4: '週四',
                            5: '週五',
                            6: '週六',
                        },
                    },
                    syncLogs: {
                        title: '同步記錄',
                        description: '查看定時和手動 LDAP 同步的執行結果。',
                        startedAt: '開始時間',
                        trigger: '觸發方式',
                        manual: '手動執行',
                        scheduled: '定時執行',
                        success: '成功',
                        failed: '失敗',
                        running: '執行中',
                        result: '執行結果',
                        resultSummary: '新增 {0}，更新 {1}，缺失 {2}',
                        duration: '耗時',
                        action: '處理動作',
                    },
                    testLoginTitle: '測試 AD/LDAP 登入',
                    testLoginDesc: '使用 AD/LDAP 使用者憑證執行 bind 驗證，僅測試認證能力，不建立面板登入工作階段。',
                    ldapUsername: 'LDAP 使用者名稱',
                    usernameRequired: '請輸入 LDAP 使用者名稱。',
                    startTest: '開始測試',
                    testLoginSuccess: '認證成功。',
                    testLoginSuccessWithDN: '認證成功，使用者 DN：{0}',
                    import: {
                        title: '匯入 AD/LDAP 使用者',
                        source: '資料來源：AD/LDAP 目錄',
                        lastRead: '最近讀取：{0}',
                        cacheHit: '使用快取結果',
                        keywordPlaceholder: '搜尋使用者名稱',
                        search: '搜尋',
                        refresh: '從 LDAP 讀取',
                        refreshTip: '忽略短期快取並重新讀取 LDAP 目錄。',
                        loadFailed: 'LDAP 目錄讀取失敗。',
                        retry: '重試',
                        noData: '未找到目錄使用者。',
                        username: '使用者名稱',
                        status: '狀態',
                        changes: '變更欄位',
                        noChanges: '無變化',
                        importable: '可匯入',
                        updateAvailable: '待更新',
                        upToDate: '已是最新',
                        conflict: '同名衝突',
                        selectedCount: '已選擇 {0} 項',
                        totalCount: '共 {0} 個使用者',
                        newUserRole: '新使用者角色',
                        newUserRoleRequired: '請選擇新使用者角色。',
                        noNewUsers: '本次無新使用者。',
                        roleOnlyForNewUsers: '所選角色僅套用於本次新建使用者。',
                        strictOff: '嚴格同步未啟用，全量處理不會停用使用者。',
                        importSelected: '匯入/更新選中（{0}）',
                        importAll: '匯入/更新全部（{0}）',
                        previewTitle: '確認全量處理',
                        previewDesc: '已完整讀取 LDAP 目錄，目前搜尋關鍵字不會縮小本次處理範圍。',
                        created: '新建',
                        updated: '更新',
                        unchanged: '無變化',
                        conflicts: '衝突',
                        missing: '將停用',
                        reactivated: '恢復',
                        strictWarning:
                            '嚴格同步已啟用。LDAP 中不存在的同源使用者將無法繼續登入，但不會刪除使用者、角色和本機權限。',
                        missingUsers: 'LDAP 中不存在的使用者',
                        missingScope: '僅處理目前 LDAP 認證來源。',
                        willDisable: '將停用',
                        confirmAll: '確認匯入',
                        confirmAllWithMissing: '確認匯入並停用 {0} 個使用者',
                        executeSuccess: 'LDAP 使用者處理成功。',
                        queryExpired: '目錄查詢結果已過期，請重新從 LDAP 讀取。',
                        planIncomplete: 'LDAP 目錄未完整讀取，無法執行全量處理。',
                    },
                },
            },
        },
        logExport: {
            title: '匯出日誌',
            records: '匯出記錄',
            retentionDays: '匯出記錄保留天數',
            timeRange: '時間範圍',
            timeRequired: '請選擇匯出時間範圍',
            websiteRequired: '請選擇網站',
            blackStatus: '黑名單狀態',
            black: '已封鎖',
            notBlack: '未封鎖',
            fuzzy: '模糊比對',
            regex: '正則表示式',
            invalidRegex: '請輸入有效的 RE2 正則表示式，最長 256 個字元',
            created: '匯出任務已建立',
            fileName: '檔案名稱',
            fileSize: '檔案大小',
            expiresAt: '過期時間',
            cancelConfirm: '確認取消此匯出任務？',
            deleteConfirm: '確認刪除此匯出記錄及檔案？',
        },
        waf: {
            WAF: 'WAF',
            name: 'WAF',
            blackWhite: '黑白名單',
            globalSetting: '全域設定',
            websiteSetting: '網站設定',
            blockRecords: '封鎖紀錄',
            world: '世界',
            china: '中國',
            intercept: '攔截',
            request: '請求',
            count4xx: '4xx 數量',
            count5xx: '5xx 數量',
            todayStatus: '今日狀態',
            reqMap: '攔截地圖（30日）',
            resource: '來源',
            count: '數量',
            hight: '高',
            low: '低',
            reqCount: '請求數',
            interceptCount: '攔截數',
            requestTrends: '請求趨勢（7天）',
            interceptTrends: '攔截趨勢（7天）',
            whiteList: '白名單',
            blackList: '黑名單',
            ipBlackListHelper: '黑名單中的 IP 無法存取網站',
            ipWhiteListHelper: '白名單中的 IP 不受任何規則限制',
            uaBlackListHelper: '攜帶黑名單中的 User-Agent 的請求將被攔截',
            uaWhiteListHelper: '攜帶白名單中的 User-Agent 的請求不受任何規則限制',
            urlBlackListHelper: '請求黑名單中的 URL 將被攔截',
            urlWhiteListHelper: '請求白名單中的 URL 請求不受任何規則限制',
            ccHelper: '{0} 秒內累積請求任意網站超過 {1} 次，封鎖此 IP {2}',
            blockTime: '封鎖時間',
            attackHelper: '{0} 秒內累計攔截超過 {1} 次，封鎖此 IP {2}',
            notFoundHelper: '{0} 秒內累計請求回傳 404 超過 {1} 次，封鎖此 IP {2}',
            frequencyLimit: '頻率限制',
            regionLimit: '地區限制',
            defaultRule: '預設規則',
            accessFrequencyLimit: '存取頻率限制',
            attackLimit: '攻擊頻率限制',
            notFoundLimit: '404 頻率限制',
            urlLimit: 'URL 頻率限制',
            urlLimitHelper: '為單一 URL 設定存取頻率',
            sqliDefense: 'SQL 注入防禦',
            sqliHelper: '辨識請求中的 SQL 注入並攔截',
            xssHelper: '辨識請求中的 XSS 並攔截',
            xssDefense: 'XSS 防禦',
            uaDefense: '惡意 User-Agent 規則',
            uaHelper: '包含常見的惡意爬蟲規則',
            argsDefense: '惡意參數規則',
            argsHelper: '在禁止請求中攜帶惡意參數',
            cookieDefense: '惡意 Cookie 規則',
            cookieHelper: '禁止請求中攜帶惡意 Cookie',
            headerDefense: '惡意 Header 規則',
            headerHelper: '禁止請求中攜帶惡意 Header',
            httpRule: 'HTTP 請求方法規則',
            httpHelper:
                '設定允許存取的方法類型，如果想限制某些類型瀏覽，請關閉這個類型的按鈕，例：僅允許 GET 類型瀏覽，那麼需要關閉除了 GET 之外的其他類型按鈕',
            geoRule: '地區存取限制',
            geoHelper: '使用一個開關組合地區與省份策略，先執行地區規則，再由省份規則進一步限制中國省級區域',
            regionPolicy: '地區策略',
            provincePolicy: '省份策略',
            provinceRuleLabel: '省份',
            openRestyFeatureVersionAlert: 'OpenResty 版本需高於 1.31.1.1-0，{0}才會生效。',
            ipLocation: 'IP 歸屬地',
            ipLocationSearchHelper: '請輸入 IP 歸屬地，支援模糊搜尋',
            action: '動作',
            ruleType: '攻擊類型',
            ipHelper: '請輸入 IP',
            attackLog: '攻擊日誌',
            rule: '規則',
            ipArr: 'IPV4 範圍',
            ipStart: '起始 IP',
            ipEnd: '結束 IP',
            ipv4: 'IPV4',
            ipv6: 'IPV6',
            urlDefense: 'URL 規則',
            urlHelper: '禁止存取的 URL',
            dirFilter: '目錄過濾',
            sqlInject: 'SQL 注入',
            xss: 'XSS',
            webshell: 'WebShell',
            phpExec: 'PHP 腳本執行',
            oneWordTrojan: '一句話木馬',
            appFilter: '套用危險目錄過濾',
            webShell: 'Webshell',
            args: '惡意參數',
            protocolFilter: '協議過濾',
            javaFilter: 'Java 危險檔案過濾',
            scannerFilter: '掃描器過濾',
            escapeFilter: '轉義過濾',
            customRule: '自訂規則',
            httpMethod: 'HTTP 方法過濾',
            fileExt: '檔案上傳限制',
            fileExtHelper: '禁止上傳的檔案副檔名',
            deny: '禁止',
            allow: '允許',
            allowOnly: '僅放行',
            field: '匹配物件',
            pattern: '符合條件',
            ruleContent: '符合內容',
            contain: '包含',
            equal: '等於',
            regex: '正規表示式',
            notEqual: '不等於',
            customRuleHelper: '根據條件匹配執行對應動作',
            actionAllow: '允許',
            blockIP: '封鎖 IP',
            code: '返回狀態碼',
            noRes: '斷開連線 (444)',
            badReq: '參數錯誤 (400)',
            forbidden: '禁止瀏覽 (403)',
            serverErr: '伺服器錯誤 (500)',
            resHtml: '回應頁面',
            allowHelper: '允許瀏覽會跳過後續的 WAF 規則，請謹慎使用',
            captcha: '人機驗證',
            fiveSeconds: '5 秒驗證',
            location: '地區',
            redisConfig: 'Redis 設定',
            redisHelper: '開啟 Redis 可以將暫時封鎖的 IP 持久化',
            wafHelper: '關閉之後所有網站將失去防護',
            websiteWafHelper: '關閉之後此網站將失去防護',
            attackIP: '攻擊 IP',
            attackParam: '攻擊訊息',
            execRule: '命中規則',
            acl: 'ACL',
            sql: 'SQL 注入',
            cc: '瀏覽頻率限制',
            isBlocking: '封鎖中',
            isFree: '已解封',
            unLock: '解封',
            unLockHelper: '是否解封 IP:{0}?',
            saveDefault: '儲存預設',
            saveToWebsite: '應用在網站',
            saveToWebsiteHelper: '是否將目前設定套用到所有網站？ ',
            websiteHelper: '此處為建立網站的預設設定，修改之後需要應用到網站才能生效',
            websiteHelper2: '此處為建立網站的預設設定，詳細設定請在網站處修改',
            ipGroup: 'IP 組',
            ipGroupHelper: '一行一個 IP 或 IP 段，支援 IPv4 和 IPv6， 例：192.168.1.1 或 192.168.1.0/24',
            ipBlack: 'IP 黑名單',
            openRestyAlert: 'OpenResty 版本需要高於 {0}',
            initAlert: '首次使用需要初始化，會修改網站設定檔案，原有的 WAF 設定會遺失，請一定提前備份 OpenResty',
            initHelper: '初始化操作將清除現有的 WAF 設定，您確定要進行初始化嗎？ ',
            mainSwitch: '總開關',
            websiteSwitch: '開關',
            websiteAlert: '請先建立網站',
            defaultUrlBlack: 'URL 規則',
            htmlRes: '攔截頁面',
            urlSearchHelper: '請輸入 URL，支援模糊搜尋',
            hostSearchHelper: '請輸入 Host，支援模糊搜尋',
            toCreate: '去建立',
            closeWaf: '關閉 WAF',
            closeWafHelper: '關閉 WAF 會使網站失去防護，是否繼續',
            addblack: '封鎖',
            addwhite: '加白',
            addblackHelper: '是否把 IP:{0} 加到預設黑名單?',
            addwhiteHelper: '是否把 IP:{0} 加到預設白名單?',
            defaultUaBlack: 'User-Agent 規則',
            defaultIpBlack: '惡意 IP 群組',
            cookie: 'Cookie 規則',
            urlBlack: 'URL 黑名單',
            uaBlack: 'User-Agent 黑名單',
            attackCount: '攻擊頻率限制',
            fileExtCheck: '檔案上傳限制',
            geoRestrict: '地區存取限制',
            originProtect: 'CDN 來源站保護',
            attacklog: '攔截紀錄',
            unknownWebsite: '未授權網域存取',
            geoRuleEmpty: '地區或省份至少選擇一項',
            unknown: '網站不存在',
            geo: '地區限制',
            revertHtml: '是否還原{0}為預設頁面？',
            five_seconds: '5 秒驗證',
            header: 'Header 規則',
            methodWhite: 'HTTP 規則',
            expiryDate: '有效期限',
            expiryDateHelper: '驗證通過後有效期內不再驗證',
            defaultIpBlackHelper: '從網路收集的一些惡意 IP，阻止其存取',
            notFoundCount: '404 頻率限制',
            matchValue: '匹配值',
            headerName: '支援非特殊字元開頭、英文、數字、-，長度3-30',
            cdnHelper: '使用 CDN 的網站可以開啟此處來取得正確來源 IP',
            clearLogWarn: '清空日誌將無法復原，是否繼續？',
            commonRuleHelper: '規則為模糊匹配',
            blockIPHelper: '封鎖 IP 暫時儲存在 OpenResty 中，重新啟動 OpenResty 會解封，可以透過封鎖功能永久封鎖',
            addWhiteUrlHelper: '是否把 URL {0} 加到白名單?',
            dashHelper: '社群版也可使用全域設定和網站設定中的功能',
            wafStatusHelper: '目前防火牆未開啟，網站安全防護已暫停，建議盡快啟用。',
            enableProtection: '開啟防護',
            ccMode: '模式',
            global: '全域模式',
            uriMode: 'URL 模式',
            globalHelper: '全域模式：當單位時間內任意URL的請求總數超過閾值時觸發',
            uriModeHelper: 'URL模式：單位時間內對單一URL的請求數量超過閾值時觸發',
            ip: 'IP 黑名單',
            globalSettingHelper: '有【網站】標籤的設定，需要在【網站設定】生效，全域設定僅為建立網站的預設設定',
            globalSettingHelper2: '設定生效需要【全域設定】和【網站設定】的開關同時開啟',
            urlCCHelper: '{0} 秒內累計請求此 URL 超過 {1} 次，封鎖此 IP {2}',
            urlCCHelper2: 'URL 不能帶參數',
            notContain: '不包含',
            urlcc: 'URL 頻率限制',
            method: '請求類型',
            addIpsToBlock: '批次封鎖 IP',
            addIpSegmentToBlock: '封鎖 IP 段',
            addIpSegmentsToBlock: '批次封鎖 IP 段',
            addUrlsToWhite: '批次加白 URL',
            noBlackIp: 'IP 已封鎖，無需再次封鎖',
            noWhiteUrl: 'URL 已加白，無需再次加白',
            spiderIpHelper: '啟用後僅放行已選取的蜘蛛，停用後會攔截所有蜘蛛存取',
            spiderIp: '蜘蛛 IP 池',
            spider: '蜘蛛',
            spiderAllowlist: '蜘蛛放行範圍',
            spiderAllowlistEmpty: '未選取任何蜘蛛，儲存後將攔截所有蜘蛛存取',
            geoIp: 'IP 位址庫',
            geoIpHelper: '用來確認 IP 的地理位置',
            stat: '攻擊報表',
            statTitle: '報表',
            attackIp: '攻擊 IP',
            attackCountNum: '攻擊次數',
            percent: '佔比',
            addblackUrlHelper: '是否把 URL:{0} 新增到預設黑名單？',
            rce: '遠端程式碼執行',
            software: '軟體',
            cveHelper: '包含常見軟體、框架的漏洞',
            vulnCheck: '補充規則',
            ssrf: 'SSRF 漏洞',
            afr: '任意檔案讀取',
            ua: '未授權存取',
            id: '資訊洩露',
            aa: '認證繞過',
            dr: '目錄遍歷',
            xxe: 'XXE 漏洞',
            suid: '序列化漏洞',
            dos: '拒絕服務漏洞',
            afd: '任意檔案下載',
            sqlInjection: 'SQL 注入',
            afw: '任意檔案寫入',
            il: '資訊洩露',
            clearAllLog: '清空所有日誌',
            exportLog: '匯出日誌',
            appRule: '應用規則',
            appRuleHelper: '常見應用的規則，開啟之後可以減少誤報，一個網站只能使用一個規則',
            logExternal: '排除記錄類型',
            ipWhite: 'IP 白名單',
            urlWhite: 'URL 白名單',
            uaWhite: 'User-Agent 白名單',
            logExternalHelper:
                '排除記錄類型不會被記錄到日誌中，黑白名單、地區存取限制、自訂規則會產生大量日誌，建議排除',
            ssti: 'SSTI 攻擊',
            crlf: 'CRLF 注入',
            strict: '嚴格模式',
            strictHelper: '使用更嚴格的規則來校驗請求',
            executionStrategy: '執行策略',
            detectionStrength: '檢測強度',
            protectionMode: '防護模式',
            observationMode: '觀察模式',
            standardMode: '標準模式',
            observationModeHelper: '僅檢測並記錄日誌，不會攔截請求',
            observationModeConfirm: '開啟觀察模式後，所有 WAF 命中都只記錄日誌，不會攔截請求，是否繼續？',
            globalStrictRequired: '需要先在全域設定中開啟嚴格模式',
            websiteSearchHelper: '請輸入網站網域、別名或備註',
            configReadFailed: '設定讀取失敗',
            detailSetting: '詳細設定',
            observe: '觀察',
            saveLog: '儲存日誌',
            remoteURLHelper: '遠端 URL 需要保證每行一個 IP 並且沒有其他字元',
            notFound: 'Not Found (404)',
            serviceUnavailable: '服務不可用 (503)',
            gatewayTimeout: '閘道器逾時 (504)',
            belongToIpGroup: '屬於 IP 組',
            notBelongToIpGroup: '不屬於 IP 組',
            unknownWebsiteKey: '未知域名',
            special: '指定',
            fileToLarge: '檔案超過 1MB 無法上傳',
            uploadOverLimit: '上傳檔案超過數量限制，最大1個',
            importRuleHelper: '一行一個規則',
        },
        monitor: {
            '360': '360 搜尋',
            name: '網站監控',
            pv: '瀏覽量',
            uv: '訪客數',
            flow: '流量',
            ip: '獨立 IP',
            spider: '蜘蛛',
            visitors: '訪客趨勢',
            today: '今天',
            last7days: '最近 7 天',
            last30days: '最近 30 天',
            uvMap: '訪客地圖 (30日)',
            qps: '即時請求數（1分鐘）',
            flowSec: '即時流量（1分鐘）',
            excludeCode: '排除狀態碼',
            excludeUrl: '排除 URL',
            excludeExt: '排除副檔名',
            cdnHelper: '透過 CDN 設定的 Header 來取得真實 IP',
            reqRank: '瀏覽排行',
            refererDomain: '來源網域',
            os: '作業系統',
            browser: '瀏覽器/用戶端',
            device: '裝置',
            showMore: '看更多',
            unknown: '其他',
            pc: '電腦',
            mobile: '行動端',
            wechat: '微信',
            machine: '機器',
            tencent: '騰訊瀏覽器',
            ucweb: 'UC 瀏覽器',
            '2345explorer': '2345 瀏覽器',
            huaweibrowser: '華為瀏覽器',
            log: '請求日誌',
            statusCode: '狀態碼',
            requestTime: '回應時間',
            flowRes: '回應流量',
            method: '請求類型',
            statusCodeHelper: '可在上方輸入狀態碼',
            statusCodeError: '狀態碼型別錯誤',
            methodHelper: '可在上方輸入請求類型',
            all: '所有',
            baidu: '百度',
            google: 'Google',
            bing: '必應',
            bytes: '今日頭條',
            sogou: '搜狗',
            failed: '錯誤',
            ipCount: 'IP 數',
            spiderCount: '蜘蛛請求',
            averageReqTime: '平均回應時間',
            totalFlow: '總流量',
            logSize: '日誌檔案大小',
            realIPType: '真實IP取得方式',
            realIPRecognition: '真實 IP 識別',
            fromHeader: '從 HTTP Header 取得',
            fromHeaders: '從 Header 清單中取得',
            header: 'HTTP Header',
            cdnConfig: 'CDN 適配',
            xff1: '取得 X-Forwarded-For 的上一級代理程式',
            xff2: '取得 X-Forwarded-For 的上上一級代理程式',
            xff3: '取得 X-Forwarded-For 的上上上一級代理程式',
            xffHelper:
                '例：X-Forwarded-For: <client>,<proxy1>,<proxy2>,<proxy3> 上一階代理程式會取最後一個 IP <proxy3>',
            headersHelper: '從下列常用的 CDN 攜帶真實 IP 的 HTTP Header 中取得，取第一個能取得到的值',
            monitorCDNHelper: '修改網站監控的 CDN 設定會同步更新 WAF 的 CDN 設定',
            wafCDNHelper: '修改 WAF 的 CDN 設定會同步更新網站監控的 CDN 設定',
            originProtection: '來源站保護',
            originProtectionHelper: '只允許所選 IP 群組中的 CDN 節點連線來源站，訪客真實 IP 識別使用獨立開關',
            originProtectionIPGroups: 'CDN 回源 IP 群組',
            originProtectionIPGroupsPlaceholder: '請選擇可信任的 CDN 回源 IP 群組',
            originProtectionWarning: '設定錯誤可能導致網站無法存取，請先確認 IP 群組包含所有 CDN 回源位址',
            originProtectionEnableConfirm: '開啟後，非所選 IP 群組的連線將視為直接連線來源站並遭到阻擋，是否繼續？',
            statusErr: '狀態碼格式錯誤',
            shenma: '神馬搜尋',
            duckduckgo: 'DuckDuckGo',
            yandex: 'Yandex',
            gptbot: 'GPTBot',
            top100Helper: '顯示 Top 100 的資料',
            logSaveDay: '日誌儲存天數',
            cros: 'Chrome OS',
            theworld: '世界之窗瀏覽器',
            edge: 'Edge',
            maxthon: '遨遊瀏覽器',
            monitorStatusHelper: '目前網站監控未開啟，立即開啟',
            excludeIp: '排除 IP',
            excludeUa: '排除 User-Agent',
            remotePort: '遠端埠',
            unknown_browser: '未知',
            unknown_os: '未知',
            unknown_device: '未知',
            logSaveSize: '最大日誌儲存大小',
            logSaveSizeHelper: '此處為單個網站的日誌儲存大小',
            '360se': '360 安全瀏覽器',
            websites: '網站列表',
            trend: '趨勢統計',
            reqCount: '請求數',
            uriHelper: '可以使用 /test/* 或 /*/index.php 來排除 Uri',
            excludeUri: '排除 Uri',
        },
        tamper: {
            tamper: '網站防篡改',
            tamperCreateHint: '目前目錄可能受防篡改或檔案屬性限制影響，導致建立失敗。',
            ignoreTemplate: '排除範本',
            protectTemplate: '保護範本',
            ignoreTemplateHelper:
                '請輸入排除內容，Enter或空格分隔。（詳細目錄 ./log 或目錄名 tmp，排除檔案需要輸入詳細檔案 ./data/test.html）',
            protectTemplateHelper:
                '請輸入保護內容，Enter或空格分隔。（詳細檔案 ./index.html、檔案後綴 .html、檔案類型 js，保護目錄需要輸入詳細目錄 ./log）',
            templateContent: '範本內容',
            template: '範本',
            saveTemplate: '儲存為範本',
            tamperHelper1:
                '一鍵部署類型的網站，建議啟用應用目錄防篡改功能；如出現網站無法正常使用或備份、復原失敗的情況，請先關閉防篡改功能；',
            tamperHelper2: '將限制非排除目錄下受保護檔案的讀寫、刪除、權限和所有者修改操作',
            tamperPath: '防護目錄',
            tamperPathEdit: '修改路徑',
            log: '攔截日誌',
            totalProtect: '總防護',
            todayProtect: '今日防護',
            templateRule: '長度1-512，名稱不能含有{0}等符號',
            ignore: '排除',
            ignoreHelper:
                '請選擇或輸入排除內容，Enter或空格分隔。（詳細目錄 ./log 或目錄名 tmp，排除檔案需要輸入或選擇詳細檔案 ./data/test.html）',
            protect: '保護',
            protectHelper:
                '請選擇或輸入保護內容，Enter或空格分隔。（詳細檔案 ./index.html、檔案後綴 .html、檔案類型 js，保護目錄需要輸入或選擇詳細目錄 ./log）',
            tamperHelper00: '排除和保護僅支援輸入相對路徑；',
            tamperHelper01: '開啟防篡改後，系統將限制非排除目錄下保護檔案的建立、編輯和刪除操作等操作；',
            tamperHelper02: '優先度：詳細路徑保護 > 詳細路徑排除 > 保護 > 排除',
            tamperHelper03: '監聽操作只針對於非排除目錄，監聽該目錄下非保護檔案的建立操作。',
            disableHelper: '即將關閉下列網站的防篡改功能，是否繼續？',
            appendOnly: '僅追加',
            appendOnlyHelper: '將限制該目錄下檔案的刪除操作，僅允許新增排除目錄或非保護檔案',
            immutable: '不可變',
            immutableHelper: '將限制該檔案的編輯、刪除、權限和所有者修改操作',
            onWatch: '監聽',
            onWatchHelper: '監聽該目錄下保護檔案或非排除目錄的建立攔截',
            forceStop: '強制關閉',
            forceStopHelper: '即將強制停用該網站目錄的防篡改功能，是否繼續？',
        },
        setting: {
            setting: '介面設定',
            title: '面板描述',
            titleHelper: '將會顯示在使用者登入頁面 (例: Linux 伺服器維運面板，建議 8-15 位)',
            logo: 'Logo (不帶文字)',
            logoHelper: '將會顯示在選單收縮時管理頁面左上方 (建議圖片大小為: 82px*82px)',
            logoWithText: 'Logo (帶文字)',
            logoWithTextHelper: '將會顯示在選單展開時管理頁面左上方 (建議圖片大小為: 185px*55px)',
            favicon: '網站圖示',
            faviconHelper: '網站圖示 (建議圖片大小為: 16px*16px)',
            setDefault: '復原預設',
            setHelper: '即將儲存目前介面設定內容，是否繼續？',
            setDefaultHelper: '即將復原所有介面設定到初始狀態，是否繼續？',
            logoGroup: 'Logo',
            imageGroup: '圖片',
            loginImage: '圖片',
            loginImageHelper: '將會顯示在登入頁面（建議圖片大小為：500*416px）',
            loginBgType: '背景類型',
            loginBgImage: '背景圖片',
            loginBgImageHelper: '將會顯示在登入頁面背景圖片（建議圖片大小為：1920*1080px）',
            loginBgColor: '背景顏色',
            loginBgColorHelper: '將會顯示在登入頁面背景顏色',
            image: '圖片',
            bgColor: '背景色',
            loginGroup: '登入頁面',
            loginBtnLinkColor: '按鈕顏色',
            loginBtnLinkColorHelper: '將顯示為登入頁面上的按鈕顏色',
        },
        helper: {
            wafTitle1: '攔截地圖',
            wafContent1: '統計並顯示 30 天內的攔截地理位置分佈',
            wafTitle2: '地區瀏覽限制',
            wafContent2: '依地理位置限制網站的存取來源',
            wafTitle3: '自訂攔截頁面',
            wafContent3: '自訂請求被攔截之後的顯示頁面',
            wafTitle4: '自訂規則（ACL）',
            wafContent4: '根據自訂的規則攔截請求',
            tamperTitle1: '檔案完整性監控',
            tamperContent1: '監控網站檔案的完整性，包括核心檔案、腳本檔案和設定檔案等。',
            tamperTitle2: '即時掃描和偵測',
            tamperContent2: '透過即時掃描網站檔案系統，偵測是否存在異常或被篡改的檔案。',
            tamperTitle3: '安全權限設定',
            tamperContent3:
                '透過合理的權限設定和瀏覽控制策略，網站防篡改功能可以限制對網站檔案的瀏覽權限，減少潛在的攻擊面。',
            tamperTitle4: '日誌紀錄與分析',
            tamperContent4: '紀錄檔案瀏覽和操作日誌，以便管理員進行後續的審計和分析，以及發現潛在的安全威脅。',
            settingTitle1: '自訂歡迎語',
            settingContent1: '在 1Panel 登入頁上設定自訂的歡迎語。',
            settingTitle2: '自訂 Logo',
            settingContent2: '允許上傳包含品牌名稱或其他文字的 Logo 圖像。',
            settingTitle3: '自訂網站圖示',
            settingContent3: '允許上傳自訂的圖示，以替代預設的瀏覽器圖示，提升使用者體驗。',
            monitorTitle1: '訪客趨勢',
            monitorContent1: '統計並顯示網站的訪客趨勢',
            monitorTitle2: '訪客地圖',
            monitorContent2: '統計並顯示網站的訪客地理位置分佈',
            monitorTitle3: '瀏覽統計',
            monitorContent3: '統計網站的請求資訊，包括蜘蛛，瀏覽裝置，請求狀態等',
            monitorTitle4: '即時監控',
            monitorContent4: '即時監控網站的請求訊息，包括請求數，流量等',
            alertTitle1: '簡訊告警',
            alertContent1:
                '當伺服器資源使用異常、網站及憑證過期、新版本更新、密碼過期等情況發生時，透過簡訊告警通知使用者，確保及時處理。',
            alertTitle2: '告警日誌',
            alertContent2: '為使用者提供檢視告警日誌的功能，方便追跡和分析歷史告警事件。',
            alertTitle3: '告警設定',
            alertContent3:
                '為使用者提供自訂手機號碼、每日推送次數、每日推送時間的設定，方便使用者的設定來更加合理的進行推送告警。',
            nodeDashTitle1: '應用管理',
            nodeDashContent1: '統一管理多節點應用，支援狀態監控、快速起停、終端連線及備份',
            nodeDashTitle2: '網站管理',
            nodeDashContent2: '統一管理多節點網站，即時監控狀態，支援批次起停與快速備份',
            nodeDashTitle3: '資料庫管理',
            nodeDashContent3: '統一管理多節點資料庫，關鍵狀態一目了然，支援一鍵備份',
            nodeDashTitle4: '計劃任務管理',
            nodeDashContent4: '統一管理多節點計劃任務，支援狀態監控、快速啟停與手動觸發執行',
            nodeTitle1: '一鍵新增節點',
            nodeContent1: '快速接入多台伺服器節點',
            nodeTitle2: '批次升級',
            nodeContent2: '一次操作同步升級所有節點',
            nodeTitle3: '節點狀態監控',
            nodeContent3: '即時掌握各節點執行狀態',
            nodeTitle4: '快速遠端連接',
            nodeContent4: '一鍵直連節點遠端終端',
            fileExchangeTitle1: '金鑰認證傳輸',
            fileExchangeContent1: '通過 SSH 金鑰進行身份驗證，確保傳輸的安全性。',
            fileExchangeTitle2: '高效檔案同步',
            fileExchangeContent2: '僅同步變化內容，大幅提高傳輸速度與穩定性。',
            fileExchangeTitle3: '支援多節點互傳',
            fileExchangeContent3: '可在不同節點間便捷傳送項目檔案，靈活管理多台伺服器。',
            nodeAppTitle1: '應用升級管理',
            nodeAppContent1: '統一監控多節點應用更新情況，支援一鍵升級',
            appTitle1: '靈活管理面板',
            appContent1: '隨時隨地輕鬆管理你的 1Panel 伺服器。',
            appTitle2: '全面服務資訊',
            appContent2: '在行動端進行應用、網站、Docker、資料庫等基礎管理，支援快速建立應用與網站。',
            appTitle3: '即時異常監控',
            appContent3: '行動端即時檢視伺服器狀態、WAF 安全監控、網站存取統計與行程健康狀況。',
            clusterTitle1: '主從部署',
            clusterContent1: '支援在不同節點建立 MySQL/Postgres/Redis 主從實例，自動完成主從關聯與初始化',
            clusterTitle2: '主從管理',
            clusterContent2: '統一頁面集中管理多個主從節點，檢視其角色、執行狀態等資訊',
            clusterTitle3: '複製狀態',
            clusterContent3: '展示主從複製狀態與延遲資訊，輔助排查同步異常問題',
            vllmTitle1: '統一納管',
            vllmContent1: '將分散的 vLLM 服務統一接入 1Panel，集中檢視實例、版本、狀態與執行目錄。',
            vllmTitle2: '快速部署',
            vllmContent2: '透過視覺化表單完成版本選擇、模型目錄掛載與啟動參數設定，減少手動編排成本。',
            vllmTitle3: '維運便捷',
            vllmContent3: '在同一頁面完成建立、編輯、啟停、重啟、刪除與任務追蹤，提升本地模型服務維護效率。',
            vllmTitle4: '設定可控',
            vllmContent4: '結合進階設定統一管理連接埠、容器、啟動命令與 Compose 設定，便於標準化交付與後續調整。',
            modelDownloaderTitle1: '模型發現',
            modelDownloaderContent1: '直接搜尋 HuggingFace 模型倉庫，檢視下載量、點讚數、模型詳情與檔案列表。',
            modelDownloaderTitle2: '加速下載',
            modelDownloaderContent2: '支援設定 HuggingFace 加速地址與 HF Token，適配官方站、鏡像站和私有模型存取。',
            modelDownloaderTitle3: '任務追蹤',
            modelDownloaderContent3: '統一檢視下載佇列、任務狀態、進度、錯誤資訊，並支援取消、重試和記錄清理。',
            modelDownloaderTitle4: '本地管理',
            modelDownloaderContent4: '集中維護本地模型目錄，檢視模型路徑、大小和時間，支援刪除不再需要的模型檔案。',
        },
        node: {
            master: '主節點',
            masterBackup: '主節點備份',
            backupNode: '備份節點',
            backupFrequency: '備份頻率（小時）',
            backupCopies: '備份份數',
            noBackupNode: '目前備份節點為空，請選擇備份節點儲存後重試',
            masterBackupAlert:
                '目前未設定主節點備份，為保障資料安全，請盡快設定備份節點，便於主節點故障時可人工切換新主節點。',
            node: '節點',
            addr: '地址',
            nodeUpgrade: '更新設定',
            nodeUpgradeHelper: '選中的節點將在主節點升級完成後自動開始升級，無需手動操作。',
            nodeUpgradePackageManage: '安裝包管理',
            nodeUpgradePackageClean: '清理',
            nodeUpgradePackageFormatHelper: '僅支援 `1panel-agent_v*_*` 或 `1panel-v*-linux-*` 安裝包',
            nodeUpgradePackageHostConfirm: '即將選擇伺服器檔案：{0}，是否繼續？',
            nodeUpgradePackageCleanHelper: '即將清理所有低版本升級包，是否繼續？',
            nodeUpgradeOfflinePackageHelper: '離線環境中，異構節點需先上傳對應更新包後再更新。',
            healthCheck: '健康檢查',
            healthCheckFrequency: '自動檢查頻率',
            healthCheckFrequencyHelper: '依設定的頻率自動檢查節點健康狀態。輸入 0 可停用自動檢查。',
            healthCheckFrequencyLimit: '檢查頻率不能超過一天，且必須為非負整數。',
            autoCheckFailedNodes: '自動檢查失敗節點',
            autoCheckFailedNodesHelper: '自動檢查時，同時檢查狀態為失敗或異常的節點。僅在檢查頻率不為 0 時生效。',
            loadFailedNodeResources: '重新整理失敗節點資源',
            loadFailedNodeResourcesHelper: '重新整理節點列表時，同時查詢狀態為失敗或異常的節點資源資訊。',
            nodeUnhealthy: '節點狀態異常',
            deletedNode: '已刪除節點 {0} 暫不支援升級操作',
            nodeUnhealthyHelper: '偵測到該節點狀態異常，請在 [節點管理] 中檢查後重試',
            nodeUnbind: '節點未綁定許可證',
            nodeUnbindHelper: '偵測到該節點未綁定許可證，請在 [面板設定 - 許可證] 選單中綁定後重試',
            memTotal: '記憶體總計',
            nodeManagement: '多機管理',
            multiOverview: '多機概覽',
            commonNodes: '常用節點',
            searchNodePlaceholder: '搜尋節點名稱、群組或地址',
            nodeItem: '節點管理',
            panelItem: '面板管理',
            addPanel: '添加面板',
            addPanelHelper: '面板新增成功後，您可在 [ 概覽 - 面板 ] 中快速存取目標面板。',
            panel: '1Panel 面板',
            others: '其他面板',
            addNode: '新增節點',
            connInfo: '連接資訊',
            nodeInfo: '節點資訊',
            withProxy: '開啟代理存取',
            withoutProxy: '關閉代理存取',
            withProxyHelper: '將使用面板設定中維護的系統代理 {0} 存取子節點，是否繼續？',
            withoutProxyHelper: '將停止使用面板設定中維護的系統代理存取子節點，是否繼續？',
            syncInfo: '資料同步,',
            syncHelper: '當主節點資料發生變化時，即時同步到該子節點,',
            syncBackupAccount: '備份帳號設定',
            syncWithMaster: '升級為商業版後，將預設同步所有資料，可在節點管理中手動調整同步策略。',
            syncProxy: '系統代理設定',
            syncProxyHelper: '同步系統代理設定需要重新啟動 Docker',
            syncProxyHelper1: '重新啟動 Docker 可能會影響目前正在執行的容器服務。',
            syncProxyHelper2: '可前往 容器 - 設定 頁面手動重新啟動。',
            syncProxyHelper3: '同步系統代理設定需要重新啟動 Docker，重新啟動可能會影響目前正在執行的容器服務',
            syncProxyHelper4: '同步系統代理設定需要重新啟動 Docker，可稍後前往 容器 - 設定 頁面手動重新啟動。',
            syncCustomApp: '同步自訂應用倉庫',
            syncAlertSetting: '系統告警設定',
            syncNodeInfo: '節點基礎資料,',
            nodeSyncHelper: '節點資訊同步將同步以下資訊：',
            nodeSyncHelper1: '1. 公用的備份帳號資訊',
            nodeSyncHelper2: '2. 主節點與子節點的連接資訊',
            nodeCheck: '可用性檢查',
            checkSSH: '檢查節點 SSH 連接',
            checkUserPermission: '檢查節點使用者權限',
            isNotRoot: '偵測到該節點不支援免密 sudo，且目前為非 root 使用者',
            checkLicense: '檢查節點許可證狀態',
            checkService: '檢查節點已存在服務資訊',
            checkPort: '檢查節點埠可達',
            panelExist: '檢查到該節點正在執行 1Panel V1 服務，請先透過遷移腳本升級至 V2 後再進行新增。',
            coreExist:
                '目前節點已作為主節點啟用，無法直接作為從節點新增。請先將其降級為從節點後再新增，詳細可參考檔案。',
            agentExist: '檢查到該節點已安裝 1panel-agent，繼續新增將保留現有資料，僅取代 1panel-agent 服務。',
            agentNotExist: '偵測到該節點未安裝 1panel-agent，無法直接編輯該節點資訊，請先刪除後重新新增。',
            oldDataExist: '檢查到該節點存在 1Panel V2 歷史資料，將使用以下資訊覆蓋目前設定',
            errLicense: '檢查到該節點綁定的許可證不可用，請檢查後重試',
            errNodePort: '檢查到節點埠 [ {0} ] 無法存取，請檢查防火牆或安全組是否已放行該埠。',
            reinstallHelper: '重新安裝節點 {0}，是否繼續？',
            unhealthyCheck: '異常檢查',
            fixOperation: '修復方案',
            checkName: '檢查項目',
            checkSSHConn: '檢查 SSH 連接可用性',
            fixSSHConn: '手動編輯節點，確認連接資訊',
            checkConnInfo: '檢查 Agent 連接資訊',
            checkStatus: '檢查節點服務可用性',
            fixStatus: '執行 "systemctl status 1panel-agent.service" 以檢查服務是否已啟動。',
            checkAPI: '檢查節點 API 可用性',
            fixAPI: '檢查節點日誌，確認防火牆埠是否正常放行。',
            forceDelete: '強制刪除',
            operateHelper: '將對以下節點執行 {0} 操作，是否繼續？',
            operatePanelHelper: '將對以下面板進行 {0} 操作，是否繼續？',
            uninstall: '刪除節點資料',
            uninstallHelper: '此操作將刪除與節點相關的所有 1Panel 資料，請謹慎選擇',
            forceDeleteHelper: '強制刪除將忽略節點刪除錯誤並刪除資料庫中繼資料',
            baseDir: '安裝目錄',
            baseDirHelper: '安裝目錄為空時，預設安裝於 /opt 目錄下',
            nodePort: '節點埠',
            offline: '離線模式',
            freeCount: '免費額度 [{0}]',
            offlineHelper: '當節點處於離線環境時使用',
            appUpgrade: '應用程式升級',
            appUpgradeHelper: '有 {0} 個應用程式需要升級',
            dashboardSetting: '概覽設定',
            keepOneDashboardComponent: '至少保留一個概覽區塊',
        },
        customApp: {
            name: '自訂應用倉庫',
            appStoreType: '應用商店包來源',
            appStoreUrl: '倉庫地址',
            local: '本機路徑',
            remote: '遠端連結',
            imagePrefix: '映像前綴',
            imagePrefixHelper:
                '作用：自訂映像前綴，修改 compose 檔案中的映像欄位，例：當映像前綴設定為 1panel/custom 時，MaxKB 的映像欄位將變更為 1panel/custom/maxkb:v1.10.0',
            closeHelper: '是否取消使用自訂應用倉庫',
            appStoreUrlHelper: '僅支援 .tar.gz 格式',
            postNode: '同步至子節點',
            postNodeHelper: '把自訂商店包同步至子節點的安裝目錄下的 tmp/customApp/apps.tar.gz 中',
            nodes: '節點',
            selectNode: '選擇節點',
            selectNodeError: '請選擇節點',
            licenseHelper: '商業版支援自訂應用倉庫功能',
            databaseHelper: '應用關聯資料庫，請選擇目標節點資料庫',
            nodeHelper: '不能選擇當前節點',
            migrateHelper: '僅支援遷移單體應用和只關聯 MySQL、MariaDB、PostgreSQL 資料庫的應用',
            opensslHelper: '如果使用加密備份，兩個節點之間的 OpenSSL 版本必須保持一致，否則可能導致遷移失敗。',
            installApp: '批量安裝',
            installAppHelper: '批量安裝應用到選擇的節點中',
        },
        alert: {
            isAlert: '是否告警',
            alertCount: '告警次數',
            clamHelper: '掃描到感染檔案時觸發告警',
            cronJobHelper: '定時任務執行失敗時將觸發告警',
            licenseHelper: '商業版支援更多告警功能',
            alertCountHelper: '每日最大告警次數',
            alert: '簡訊告警',
            logs: '告警日誌',
            list: '告警清單',
            addTask: '建立簡訊告警',
            editTask: '編輯簡訊告警',
            alertMethod: '告警方式',
            alertMsg: '告警內容',
            alertRule: '告警規則',
            titleSearchHelper: '請輸入告警標題，支援模糊搜尋',
            taskType: '告警類型',
            ssl: '網站憑證到期',
            siteEndTime: '網站到期',
            panelPwdEndTime: '面板密碼到期',
            panelUpdate: '面板新版本提醒',
            cpu: '面板伺服器 CPU 佔用過高告警',
            memory: '面板伺服器記憶體佔用過高告警',
            load: '面板伺服器負載佔用過高告警',
            disk: '面板伺服器磁碟佔用過高告警',
            website: '網站',
            certificate: '憑證',
            remainingDays: '剩餘天數',
            sendCount: '告警次數',
            recipientPlaceholder: '請輸入電子郵件地址',
            addRecipient: '新增收件人',
            webhookItem: 'Webhook 連結',
            addWebhook: '新增 Webhook',
            selectAlertType: '選擇告警類型',
            configDetail: '設定詳情',
            webhookCount: 'Webhook 數量',
            sms: '簡訊通知',
            wechat: '微信公眾號',
            dingTalk: '釘釘通知',
            feiShu: '飛書通知',
            mail: '信箱通知',
            email: '郵件通知',
            weCom: '企業微信',
            bark: 'Bark',
            sendCountRulesHelper: '到期前發送告警的總數（每日僅發送一次）',
            panelUpdateRulesHelper: '新版本發送告警總數（每日僅發送一次）',
            oneDaySendCountRulesHelper: '每日發送告警的總數',
            siteEndTimeRulesHelper: '永不過期的網站，不觸發告警',
            autoRenewRulesHelper: '憑證開啟自動續期，剩餘天數小於31天，不觸發告警',
            panelPwdEndTimeRulesHelper: '面板未設定密碼到期時長，不能使用密碼到期告警',
            sslRulesHelper: '所有ssl憑證',
            diskInfo: '磁碟資訊',
            monitoringType: '監測類型',
            autoRenew: '自動續簽',
            useDisk: '佔用磁碟',
            usePercentage: '佔用百分比',
            changeStatus: '狀態修改',
            disableMsg: '停止告警任務會導致該任務不再發送告警消息。 是否繼續？',
            enableMsg: '啟用告警任務會讓該任務發送告警消息。 是否繼續？',
            useExceed: '使用超過',
            useExceedRulesHelper: '使用超過指定值觸發告警',
            cpuUseExceedAvg: 'CPU 平均使用率超過指定值',
            memoryUseExceedAvg: '記憶體平均使用率超過指定值',
            loadUseExceedAvg: '負載平均使用率超過指定值',
            cpuUseExceedAvgHelper: '指定時間內 CPU 平均使用率超過指定值',
            memoryUseExceedAvgHelper: '指定時間內記憶體平均使用率超過指定值',
            loadUseExceedAvgHelper: '指定時間內負載平均使用率超過指定值',
            resourceAlertRulesHelper: '注意：30分鐘內持續告警只發送一次',
            specifiedTime: '指定時間',
            deleteTitle: '刪除告警',
            deleteMsg: '是否確認刪除告警任務？',
            allSslTitle: '所有網站憑證到期告警',
            sslTitle: '網站「{0}」憑證到期告警',
            allSiteEndTimeTitle: '所有網站到期告警',
            siteEndTimeTitle: '網站「{0}」到期告警',
            panelPwdEndTimeTitle: '面板密碼到期告警',
            panelUpdateTitle: '面板新版本提醒',
            cpuTitle: 'CPU 佔用過高告警',
            memoryTitle: '記憶體佔用過高告警',
            loadTitle: '負載佔用過高告警',
            diskTitle: '掛載目錄「{0}」的磁碟佔用過高告警',
            allDiskTitle: '磁碟佔用過高告警',
            timeRule: '剩餘時間小於{0}天（如未處理，次日會重新發送）',
            panelUpdateRule: '偵測到面板有新版本時發送一次（如未處理，次日會重新發送）',
            avgRule: '{0}分鐘內平均{1}佔用超過{2}%觸發，每天發送{3}次',
            diskRule: '掛載目錄「{0}」的磁碟佔用超過{1}{2}觸發，每天發送{3}次',
            allDiskRule: '磁碟佔用超過{0}{1}觸發，每天發送{2}次',
            cpuName: ' CPU ',
            memoryName: '記憶體',
            loadName: '負載',
            diskName: '磁碟',
            syncAlertInfo: '同步告警資訊',
            syncAlertInfoMsg: '是否同步告警資訊內容狀態？',
            pushError: '推送失敗',
            pushSuccess: '推送成功',
            syncError: '同步失敗',
            success: '告警成功',
            pushing: '推送中...',
            error: '告警失敗',
            cleanLog: '清空日誌',
            cleanAlertLogs: '清空告警日誌',
            daily: '當日第 {0} 次告警',
            cumulative: '累計第 {0} 次告警',
            clams: '病毒掃描告警',
            taskName: '任務名稱',
            cronJobType: '任務類型',
            clamPath: '掃描目錄',
            cronjob: '計劃任務執行{0}異常',
            app: '備份應用',
            web: '備份網站',
            database: '備份資料庫',
            directory: '備份目錄',
            log: '備份日誌',
            snapshot: '系統快照',
            clamsRulesHelper: '需要開啟告警的病毒掃描任務',
            cronJobRulesHelper: '需要設定此類型的計劃任務',
            clamsTitle: '病毒掃描「{0}」任務偵測到感染檔案告警',
            cronJobAppTitle: '計劃任務-備份應用「{0}」任務失敗告警',
            cronJobWebsiteTitle: '計劃任務-備份網站「{0}」任務失敗告警',
            cronJobDatabaseTitle: '計劃任務-備份資料庫「{0}」任務失敗告警',
            cronJobDirectoryTitle: '計劃任務-備份目錄「{0}」任務失敗告警',
            cronJobLogTitle: '計劃任務-備份日誌「{0}」任務失敗告警',
            cronJobSnapshotTitle: '計劃任務-系統快照「{0}」任務失敗告警',
            cronJobShellTitle: '計劃任務-Shell 腳本「 {0} 」任務失敗告警',
            cronJobCurlTitle: '計劃任務-瀏覽 URL「 {0} 」任務失敗告警',
            cronJobCutWebsiteLogTitle: '計劃任務-切割網站日誌「 {0} 」任務失敗告警',
            cronJobCleanTitle: '計劃任務-快取清理「 {0} 」任務失敗告警',
            cronJobNtpTitle: '計劃任務-同步伺服器時間「 {0} 」任務失敗告警',
            clamsRule: '病毒掃描任務偵測到感染檔案告警，每天發送{0}次',
            cronJobAppRule: '備份應用任務失敗告警，每天發送{0}次',
            cronJobWebsiteRule: '備份網站任務失敗告警，每天發送{0}次',
            cronJobDatabaseRule: '備份資料庫任務失敗告警，每天發送{0}次',
            cronJobDirectoryRule: '備份目錄任務失敗告警，每天發送{0}次',
            cronJobLogRule: '備份日誌任務失敗告警，每天發送{0}次',
            cronJobSnapshotRule: '系統快照任務失敗告警，每天發送{0}次',
            cronJobShellRule: 'Shell 腳本任務失敗告警，每天發送{0}次',
            cronJobCurlRule: '瀏覽 URL 任務失敗告警，每天發送{0}次',
            cronJobCutWebsiteLogRule: '切割網站日誌任務失敗告警，每天發送{0}次',
            cronJobCleanRule: '快取清理任務失敗告警，每天發送{0}次',
            cronJobNtpRule: '同步伺服器時間任務失敗告警，每天發送{0}次',
            alertSmsHelper: '簡訊額度：總量{0}條，已使用{1}條',
            goBuy: '去購買',
            phone: '手機號碼',
            phoneHelper: '請填寫真實的手機號碼，以免不能正常接收告警資訊',
            dailyAlertNum: '每日告警次數',
            dailyAlertNumHelper: '每日告警通知的總次數，最多通知 100 次',
            timeRange: '時間範圍',
            sendTimeRange: '可發送時間範圍',
            sendTimeRangeHelper: '可推送{0}時間範圍',
            to: '至',
            startTime: '開始時間',
            endTime: '結束時間',
            defaultPhone: '預設使用與許可證綁定的帳戶手機號碼',
            noticeAlert: '通知告警',
            resourceAlert: '資源告警',
            agentOfflineAlertHelper: '當節點啟用離線告警時，主節點將每半小時掃描並執行一次告警任務。',
            offline: '離線告警',
            offlineHelper: '設為離線告警時，主節點將每半小時掃描並執行一次告警任務。',
            offlineOff: '開啟離線告警',
            offlineOffHelper: '開啟離線告警後，主節點將每半小時掃描並執行一次告警任務。',
            offlineClose: '關閉離線告警',
            offlineCloseHelper: '關閉離線告警後，需由子節點自行告警，請確保子節點網路通暢，以免告警失敗。',
            alertNotice: '警報通知',
            methodConfig: '發送方式設定',
            createMethod: '建立發送方式',
            methodInvalid: '失效設定 {0}',
            commonConfig: '全域設定',
            smsConfig: '簡訊',
            smsConfigHelper: '設定簡訊通知號碼',
            emailConfig: '郵件',
            emailConfigHelper: '設定 SMTP 郵件發送服務',
            deleteConfigTitle: '刪除警報設定',
            deleteConfigMsg: '是否確定刪除此警報設定？',
            test: '測試',
            alertTestOk: '測試通知成功',
            alertTestFailed: '測試通知失敗',
            displayName: '顯示名稱',
            sender: '寄件地址',
            password: '密碼',
            host: 'SMTP 伺服器',
            port: '連接埠',
            encryption: '加密方式',
            recipient: '收件者',
            licenseTime: '授權到期提醒',
            licenseTimeTitle: '授權到期提醒',
            displayNameHelper: '郵件的寄件人顯示名稱',
            senderHelper: '用於發送郵件的電子信箱地址',
            passwordHelper: '郵件服務的授權碼',
            hostHelper: 'SMTP 伺服器地址，例：smtp.qq.com',
            portHelper: 'SSL 通常為 465，TLS 通常為 587',
            sslHelper: '若 SMTP 連接埠為 465，通常需要啟用 SSL',
            tlsHelper: '若 SMTP 連接埠為 587，通常需要啟用 TLS',
            triggerCondition: '觸發條件',
            loginFail: '內，登入失敗',
            nodeException: '節點異常告警',
            licenseException: '許可證異常告警',
            panelLogin: '面板登入異常告警',
            sshLogin: 'SSH 登入異常告警',
            panelIpLogin: '面板登入 IP 異常告警',
            sshIpLogin: 'SSH 登入 IP 異常告警',
            ipWhiteListHelper: '在白名單中的 IP 不受規則限制，成功登入時也不會產生警報',
            nodeExceptionRule: '節點異常告警，每天發送 {0} 次',
            licenseExceptionRule: '許可證異常告警，每天發送 {0} 次',
            panelLoginRule: '面板登入告警，每天發送 {0} 次',
            sshLoginRule: 'SSH 登入告警，每天發送 {0} 次',
            userNameHelper: '使用者名稱為空時，將預設使用寄件者地址',
            alertConfigHelper: '設定告警通知通道，用於接收面板訊息推送',
            weComConfigHelper: '企業微信告警通知設定',
            wechatConfigHelper: '微信公眾號告警通知設定',
            dingTalkConfigHelper: '釘釘告警通知設定',
            feiShuConfigHelper: '飛書告警通知設定',
            barkConfigHelper: 'Bark 告警通知設定',
            webhookName: '機器人名稱',
            webhookUrl: 'Webhook 位址',
            alertConfigProHelper: '商業版額外支援企業微信、釘釘、飛書及簡訊告警。',
        },
        theme: {
            lingXiaGold: 'LXware Gold',
            classicBlue: '經典藍',
            freshGreen: '清新綠',
            customColor: '自訂主題色',
            setDefault: '復原預設',
            setDefaultHelper: '即將復原主題配色到初始狀態，是否繼續？',
            setHelper: '即將儲存目前選定的主題配色，是否繼續？',
        },
        app: {
            app: 'APP',
            title: '面板別名',
            titleHelper: '面板別名用於 APP 端的顯示（預設面板別名）',
            qrCode: '二維碼',
            apiStatusHelper: '面板 APP 需要開啟 API 介面功能',
            apiInterfaceHelper: '支援面板 API 介面存取功能（面板 APP 需要開啟該功能）',
            apiInterfaceHelper1:
                '面板 APP 存取需將使用者新增至白名單，非固定 IP 建議新增 0.0.0.0/0（所有 IPv4），::/0（所有 IPv6）',
            qrCodeExpired: '重新整理時間',
            apiLeakageHelper: '請勿洩露二維碼，確保僅在受信任的環境中使用',
        },
        sync: {
            menu: '資源同步',
            file: '檔案對傳',
            fileSyncConfirm: '是否將 {0} 節點檔案/資料夾 {1} 傳輸到 {2} 節點 {3} 目錄？',

            image: '映像對傳',
            imageBatchDesc: '先選擇來源節點和來源映像，再批次選擇目標節點進行轉發。',
            imageBatchConfirmPrefix: '即將把 {0} 張映像轉發到 {1} 個節點，共 {2} 個任務。',

            ssl: '證書同步',
            sslBatchDesc: '選擇來源節點後，可將指定證書同步到目前面板環境。',
            sslBatchConfirmPrefix: '即將把 {0} 張證書同步到 {1} 個節點，共 {2} 個任務。',

            app: '應用對傳',
            appBatchDesc: '選擇來源節點、單個應用和目標節點後，確認資源依賴並執行應用對傳任務。',
            appSelectedApp: '已選應用：',
            appPreviewTitle: '對傳預覽',
            appPreviewDesc: '確認目標節點和依賴資源後執行應用對傳。',
            appDatabaseDependency: '資料庫依賴',
            appResourceRequired: '請先選擇所有必需的關聯資源。',
            appUnsupportedMultipleResources: '目前僅支援遷移最多關聯一個資源的應用。',
            appUnsupportedResourceType: '目前僅支援遷移無資源依賴或僅依賴 MySQL、MariaDB、PostgreSQL 的應用。',

            targetTitle: '目標節點',
            targetDesc: '來源節點會自動排除，可選擇一個或多個目標節點。',
            targetSearchPlaceholder: '搜尋節點名稱或位址',
            noTargetNodes: '沒有可選目標節點',
            noSourceNode: '請先選擇來源節點',
            reviewTargets: '目標節點',
            reviewEmpty: '請先選擇資源和目標節點',
            selectSourceFirst: '請先選擇來源節點。',
            selectResourceFirst: '請先選擇要同步的資源。',
            selectTargetFirst: '請先選擇至少一個目標節點。',
            submitSuccess: '同步任務已提交。',
        },
        vm: {
            vm: '虛擬機',
            title: '虛擬機管理',
            healthCheck: '健康檢查',
            healthCheckResult: {
                pass: '正常',
                info: '資訊',
                warn: '警告',
                fail: '失敗',
                normal: '正常',
                fixCommand: '修復命令',
                technicalDetail: '技術詳情',
                check: {
                    vmName: '虛擬機名稱',
                    libvirtConnection: 'Libvirt 連線',
                    vmDefinition: '虛擬機定義',
                    domainXML: '虛擬機 XML',
                    architecture: '架構',
                    virtualizationType: '虛擬化類型',
                    machineType: '機器類型',
                    efiCapability: 'EFI 能力',
                    qemuEmulator: 'QEMU 模擬器',
                    bootOrder: '啟動順序',
                    arm64Firmware: 'ARM64 韌體',
                    arm64Features: 'ARM64 特性',
                    arm64Video: 'ARM64 顯示裝置',
                    arm64FirmwareFile: 'ARM64 韌體檔案',
                    arm64CDROM: 'ARM64 光碟機',
                    blockDevice: '區塊裝置',
                    isoArchitecture: 'ISO 架構',
                    network: '網路',
                    qemuLog: 'QEMU 日誌',
                    arm64RuntimeFirmware: 'ARM64 韌體執行參數',
                },
                reason: {
                    invalidName: '虛擬機名稱無效。',
                    connectionFailed: '無法連線 {uri}。',
                    vmNotFound: '找不到虛擬機 {name}。',
                    xmlReadFailed: '讀取虛擬機 XML 失敗。',
                    liveXMLFallback: '無法讀取持久化設定，已改用目前執行設定。',
                    xmlParseFailed: '解析虛擬機 XML 失敗。',
                    stateReadFailed: '無法確認虛擬機執行狀態，將略過執行態韌體檢查。',
                    guestArchMissing: 'XML 中缺少客體架構。',
                    archMismatch: '主機架構為 {hostArch}，客體架構為 {guestArch}，不支援跨架構執行。',
                    nonKVMType: '虛擬化類型為 {type}，不是預設的 KVM。',
                    archOrMachineMissing: 'XML 中缺少架構或機器類型。',
                    machineUnsupported: '主機不支援 {arch}/{machine}。',
                    emulatorNotSpecified: 'XML 未明確指定模擬器，將由 Libvirt 選擇。',
                    fileNotFound: '檔案不存在：{path}',
                    fileNotExecutable: '檔案不可執行：{path}',
                    bootDeviceMissing: 'XML 中沒有啟動裝置。',
                    diskNotFirst: '硬碟不是第一啟動項目，目前順序：{order}',
                    cdromNotInBootOrder: '已掛載 CD-ROM，但啟動順序中沒有光碟機。',
                    firmwareNotConfigured: '未設定 EFI 或 Loader，客體可能無法初始化顯示或開機。',
                    acpiCustom: '偵測到 ACPI，請確認這是客體明確需要的自訂設定。',
                    acpiRequiresUEFI: '偵測到 ACPI 但沒有 UEFI，會觸發 ACPI requires UEFI。',
                    apicUnsupported: '偵測到 x86 APIC，ARM64 設定不應包含此項。',
                    gicNotDeclared: '持久化 XML 未顯示 GIC，Libvirt 可能在執行態自動補充。',
                    videoNotConfigured: 'XML 中沒有設定顯示裝置。',
                    videoNotVirtio: '顯示裝置類型為 {type}，建議使用 Virtio。',
                    firmwareFileMissing: '韌體檔案不存在或不是一般檔案：{path}',
                    firmwareNotAvailable: 'Libvirt 未回報 EFI 能力，且未找到 ARM64 UEFI 韌體。',
                    cdromBusNotSCSI: 'CD-ROM 使用 {bus} 匯流排，ARM64 應使用 SCSI。',
                    cdromNotOnVirtioSCSI: 'CD-ROM 未連接至 Virtio SCSI 控制器。',
                    diskSourceMissing: '{device} {target} 沒有來源檔案。',
                    sourceNotFound: '{device} {target} 的來源檔案不存在：{path}',
                    sourceIsDirectory: '{device} {target} 的來源路徑是目錄：{path}',
                    systemDiskNotFound: '未偵測到系統磁碟。',
                    isoArchMismatch: '{guestArch} 客體掛載了疑似 {imageArch} 的映像檔：{path}',
                    networkReadFailed: '無法讀取網路 {name}。',
                    networkStateReadFailed: '無法讀取網路 {name} 的狀態。',
                    networkInactive: '網路 {name} 存在但未啟動。',
                    logUnavailable: '目前沒有可分析的啟動日誌。',
                    logErrorsFound: '最近一次啟動記錄中發現常見錯誤。',
                    vmNotRunning: '虛擬機目前未執行，已略過 QEMU 執行參數檢查。',
                    runtimeFirmwareMissing: 'QEMU 日誌中未發現 pflash、AAVMF 或 QEMU_EFI。',
                },
            },
            dependencies: '依賴',
            dependencyPurpose: '作用',
            dependencyPurposeMap: {
                libvirt: '提供虛擬機管理服務，負責虛擬機生命週期和資源調度。',
                storage: '提供預設儲存目錄或儲存池，用於保存虛擬機磁碟檔案。',
            },
            dependencyNotReady: '虛擬機依賴檢測未通過，請處理依賴後再使用虛擬機功能。',
            helperUnavailable: '虛擬機能力初始化失敗，請檢查 Core 日誌或重新升級後再使用虛擬機功能。',
            cpu: 'CPU',
            memory: '記憶體',
            disk: '磁碟',
            overview: '概覽',
            kvmUnavailable: '未偵測到可用的 KVM 硬體虛擬化能力。',
            kvmCheckCpu: '確認主機 CPU 支援 Intel VT-x 或 AMD-V 虛擬化能力。',
            kvmCheckBios: '進入 BIOS/UEFI 開啟虛擬化相關選項。',
            kvmCheckModule: '確認核心模組 kvm、kvm_intel 或 kvm_amd 已正確載入。',
            kvmCheckDevice: '確認 /dev/kvm 存在，且目前執行環境不是不支援 KVM 的容器或雲端主機。',
            abnormal: '異常',
            resourceOverview: '資源概況',
            cpuAllocated: 'CPU 配置',
            memoryAllocated: '記憶體配置',
            storageUsed: '儲存使用',
            riskReminder: '風險提醒',
            noRisk: '暫無風險',
            runtimeHealth: '執行環境',
            runtimeAbnormal: '虛擬機執行環境異常',
            noDependency: '暫無依賴檢測資料',
            storageOverview: '儲存池概況',
            totalAllocated: '依虛擬機設定總量統計',
            runningAllocated: '執行中佔用：{0}',
            storageAvailable: '剩餘可用：{0}',
            inProgress: '任務進行中',
            needAttention: '需要關注',
            normal: '正常',
            environmentRisk: '虛擬機執行環境未就緒，請處理依賴或虛擬化服務。',
            storageRisk: '儲存池 {0} 使用率已達 {1}%。',
            abnormalRisk: '目前有 {0} 台虛擬機處於異常狀態。',
            pausedRisk: '目前有 {0} 台虛擬機處於暫停狀態。',
            memoryRisk: '虛擬機記憶體配置率已達 {0}%。',
            cpuLimitHelper: '目前可用 CPU：{0} 核',
            cpuLimitExceeded: 'CPU 超出限制，目前最大可用：{0} 核',
            memoryLimitHelper: '目前可分配記憶體：{0}（主機需要預留 {1} 記憶體）',
            memoryLimitExceeded: '記憶體超出限制，目前最大可分配：{0}',
            storageLimitHelper: '目標儲存池目前可用空間：{0}',
            storageLimitExceeded: '磁碟容量超出限制，目前最大可用：{0}',
            iso: '鏡像',
            createFromTemplate: '從範本啟動',
            template: '範本',
            templateName: '範本名稱',
            convertToTemplate: '轉為範本',
            sourceVM: '來源虛擬機',
            templateSize: '範本大小',
            deleteTemplateConfirm: '刪除範本 {0}，該操作不可回滾，是否繼續？',
            orphanClean: '孤立資料清理',
            orphanScan: '重新掃描',
            orphanCleanHelper:
                '僅顯示未被虛擬機、快照或已登記範本引用的候選檔案。請確認檔案不再使用後再清理，清理操作不可復原。',
            orphanSelected: '已選擇 {0} 個檔案，共 {1}',
            orphanSize: '檔案大小',
            orphanCleanConfirm: '確認清理已選擇的 {0} 個檔案（{1}）嗎？該操作不可復原。',
            orphanCleanSuccess: '已清理 {0} 個檔案，釋放 {1}。',
            orphanType: {
                orphan_domain_disk: '孤立磁碟',
                orphan_snapshot: '孤立快照',
                partial_file: '未完成檔案',
            },
            diskSize: '磁碟容量',
            diskPath: '磁碟路徑',
            isoPath: '鏡像路徑',
            storagePool: '儲存池',
            network: '網路',
            bridgeName: '橋接名稱',
            natNetworkHelper: '虛擬機可透過主機存取網路，外部裝置通常無法直接存取虛擬機。',
            bridgeNetworkHelper:
                '讓虛擬機接入主機既有的網橋（如 br0）。如主機有未使用的額外網卡，也可為其建立網橋後使用。',
            bridgeNameHelper:
                '請選擇主機上已存在的 Linux bridge，例如 br0。實體網卡不是 bridge，docker/libvirt 管理的 bridge 不能在此選擇。',
            natCIDRHelper: 'CIDR、閘道和 DHCP 位址範圍將用於新建的 NAT 虛擬網路。',
            networkCIDR: '網路 CIDR',
            gateway: '閘道',
            dhcpStart: 'DHCP 起始位址',
            dhcpEnd: 'DHCP 結束位址',
            bootOrder: '啟動項',
            bootDiskFirst: '磁碟優先（HD → CD-ROM）',
            bootIsoFirst: '鏡像優先（CD-ROM → HD）',
            bootOrderConfirm: '確定將啟動順序修改為 {0} 嗎？虛擬機下次啟動時，將按此順序嘗試目前已掛載且可啟動的裝置。',
            startAfterCreate: '建立後啟動',
            autoStart: '開機自啟',
            resourceAutoStart: '開機自啟',
            capacity: '容量',
            available: '可用',
            vmCount: '關聯虛擬機',
            usedIPs: '已用 IP',
            monitor: '監控',
            monitorNotReady: '虛擬機未執行，無法取得監控資料。',
            monitorLoadFailed: '取得虛擬機監控資料失敗。',
            monitorLoadFailedWithReason: '取得虛擬機監控資料失敗：{0}',
            rename: '重新命名',
            newName: '新名稱',
            renameHelper: '請輸入新的虛擬機名稱，重新命名需要虛擬機處於關機狀態。',
            renameConfirm: '確認將虛擬機 [{0}] 重新命名為 [{1}]？',
            renameRunningHelper: '請先關閉虛擬機後再重新命名。',
            cpuUsage: 'CPU 使用率',
            memoryUsage: '記憶體使用率',
            diskIO: '磁碟 IO',
            networkIO: '網路 IO',
            diskReadWrite: '磁碟讀 / 寫',
            networkRxTx: '網路收 / 發',
            rx: '接收',
            tx: '傳送',
            console: '控制台',
            consoleNotReady: 'VNC 控制台不可用，請啟動虛擬機並檢查 VNC 圖形設定。',
            consoleDisconnected: 'VNC 控制台已中斷連線。',
            consoleConnectFailed: 'VNC 控制台連線失敗，請檢查控制台代理服務。',
            consoleCredentialsRequired: 'VNC 控制台需要認證資訊，請檢查後端代理設定。',
            snapshot: '快照',
            createSnapshot: '建立快照',
            recoverSnapshot: '恢復快照',
            snapshotSize: '佔用',
            currentSnapshot: '目前',
            snapshotEmpty: '暫無快照',
            snapshotHelper:
                '快照會將虛擬機目前狀態儲存為還原點，後續資料變更會記錄在差異檔案中，不會影響原始磁碟。還原快照時，虛擬機會回到該時間點狀態。',
            snapshotOperationHelper: '目前快照無法刪除；僅能在虛擬機關機時還原快照。',
            snapshotRecoverConfirm: '確認將虛擬機 [{1}] 恢復到快照 [{0}]？恢復後虛擬機磁碟會回到該快照狀態。',
            interface: '網路介面',
            device: '裝置',
            path: '路徑',
            start: '啟動',
            shutdown: '關機',
            reboot: '重新啟動',
            destroy: '強制停止',
            suspend: '暫停',
            resume: '恢復',
            operateConfirm: '確認 {0} 虛擬機 [{1}]？',
            forceDelete: '強制刪除',
            forceDeleteHelper: '強制刪除將會忽略虛擬機刪除錯誤，刪除面板中繼資料並釋放資源佔用。',
            deleteNameHelper: '" 刪除此虛擬機',
            isoSource: '鏡像來源',
            downloadFromServer: '遠端下載',
            isoTargetDir: '鏡像目標路徑',
            isoTargetDirHelper: '本機上傳或從伺服器下載的鏡像會儲存到該目錄。',
            addingIsoRecord: '正在新增 ISO 記錄',
            transferInProgress: 'ISO 傳輸中，請勿關閉目前抽屜或頁面。',
            isoSize: '鏡像大小',
            deleteIsoConfirm: '刪除操作不可回滾，是否繼續？',
            deleteSourceFile: '刪除源檔案',
            deleteSourceFileHelper: '勾選後會同時刪除該鏡像記錄引用的源檔案，檔案刪除後無法恢復。',
            dir: '本機目錄',
        },
        cluster: {
            cluster: '應用高可用',
            name: '叢集名稱',
            addCluster: '新增叢集',
            installNode: '安裝節點',
            master: '主節點',
            slave: '從節點',
            replicaStatus: '主從狀態',
            unhealthyDeleteError: '安裝節點狀態異常，請在節點列表檢查後重試',
            replicaStatusError: '狀態取得異常，請檢查主節點。',
            masterHostError: '主節點 IP 不能為 127.0.0.1',
        },
    },
    template: {
        create: '建立模板',
        edit: '編輯模板',
        name: '模板名稱',
        type: '模板類型',
        single: '單檔案',
        multi: '多檔案(zip)',
        content: '模板內容',
        variables: '變數定義',
        remark: '備註',
        filePath: '檔案路徑',
        upload: '上傳 zip',
        preview: '預覽',
        previewEmpty: '選擇模板後可即時預覽',
        generate: '生成產物',
        outputName: '產物名稱',
        outputList: '產物列表',
        outputCreate: '生成產物',
        confirmDelete: '確定刪除此模板嗎？關聯的產物也將被刪除',
        confirmDeleteOutput: '確定刪除此產物嗎？',
        variableKey: '變數名',
        variableLabel: '標籤',
        variableType: '類型',
        variableDefault: '預設值',
        variableOptions: '選項(逗號分隔)',
        variableRequired: '必填',
        varTypeText: '單行文字',
        varTypeTextHelper: '普通文字輸入框',
        varTypeTextarea: '多行文字',
        varTypeTextareaHelper: '適用於段落、長文字',
        varTypeNumber: '數字',
        varTypeNumberHelper: '僅允許輸入數字',
        varTypeSelect: '下拉選擇',
        varTypeSelectHelper: '從預設選項中選擇,需填寫選項',
        varTypeColor: '顏色',
        varTypeColorHelper: '顏色選擇器',
        autoDetectHelper: '自動識別內容中雙花括號包裹的變數並加入變數定義表格',
        selectTemplate: '選擇模板',
        fillVariables: '填寫變數',
        noVariables: '此模板沒有定義變數',
        outputSuccess: '產物生成成功',
        importButton: '從模板匯入',
    },
};
export default {
    ...getFuLocaleMessage('zh-Hant'),
    ...message,
};
