♻️ refactor: Refactor server management API endpoints and typings

This commit is contained in:
web
2025-08-26 09:37:15 -07:00
parent 217ddce60c
commit 4f7cc807af
141 changed files with 5665 additions and 10338 deletions
+18 -9
View File
@@ -1,27 +1,36 @@
{
"ADS Config": "ADS設定",
"Announcement Management": "お知らせ管理",
"Application Management": "アプリケーション管理",
"Auth Control": "認証管理",
"Balance": "残高",
"Commerce": "商取引",
"Commission": "手数料",
"Coupon Management": "クーポン管理",
"Dashboard": "ダッシュボード",
"Document Management": "ドキュメント管理",
"Finance": "財務",
"Email": "メール",
"Gift": "ギフト",
"Login": "ログイン",
"Logs & Analytics": "ログと分析",
"Maintenance": "メンテナンス",
"Marketing Management": "マーケティングマネジメント",
"Node Management": "ノード管理",
"Order Management": "注文管理",
"Payment Config": "支払い設定",
"Product Management": "プロダクトマネジメント",
"Protocol Management": "プロトコル管理",
"Rule Management": "ルール管理",
"Server": "サーバー",
"Register": "登録",
"Reset Subscribe": "購読のリセット",
"SMS": "SMS",
"Server Management": "サーバー管理",
"Settings": "設定",
"Server Traffic": "サーバートラフィック",
"Subscribe": "購読",
"Subscribe Config": "サブスクリプション設定",
"Subscribe Traffic": "購読トラフィック",
"System": "システム",
"System Config": "システム構成",
"System Management": "システム管理",
"System Tool": "システムツール",
"Ticket Management": "チケット管理",
"User": "ユーザー",
"User Detail": "ユーザー詳細",
"User Management": "ユーザー管理"
"User Management": "ユーザー管理",
"Users & Support": "ユーザーとサポート"
}
+37
View File
@@ -0,0 +1,37 @@
{
"address": "アドレス",
"cancel": "キャンセル",
"confirm": "確認",
"confirmDeleteDesc": "この操作は元に戻せません。",
"confirmDeleteTitle": "このノードを削除しますか?",
"copied": "コピーしました",
"copy": "コピー",
"create": "作成",
"created": "作成されました",
"delete": "削除",
"deleted": "削除されました",
"drawerCreateTitle": "ノードを作成",
"drawerEditTitle": "ノードを編集",
"edit": "編集",
"enabled": "有効",
"enabled_off": "無効",
"enabled_on": "有効",
"errors": {
"nameRequired": "名前を入力してください",
"portRange": "ポートは1から65535の間でなければなりません",
"protocolRequired": "プロトコルを選択してください",
"serverAddrRequired": "エントリーアドレスを入力してください",
"serverRequired": "サーバーを選択してください"
},
"name": "名前",
"pageTitle": "ノード",
"port": "ポート",
"protocol": "プロトコル",
"select_protocol": "プロトコルを選択…",
"select_server": "サーバーを選択…",
"server": "サーバー",
"tags": "タグ",
"tags_description": "権限グループ化タグ(プランバインディングおよび配信ポリシーを含む)。",
"tags_placeholder": "複数のタグを追加するにはEnterまたはカンマ(,)を使用してください",
"updated": "更新されました"
}
+3 -58
View File
@@ -1,59 +1,6 @@
{
"actions": "アクション",
"app": {
"appDownloadURL": "アプリダウンロードURL",
"appIcon": "アプリアイコン",
"appList": "アプリリスト",
"appName": "アプリ名",
"backupDomains": "バックアップドメインリスト",
"backupDomainsDescription": "ドメイン解決のためのバックアップドメインリスト、1行に1つのドメイン",
"batchDelete": "一括削除",
"cancel": "キャンセル",
"communicationKey": "通信キー",
"communicationKeyDescription": "クライアント通信に使用されるキー",
"config": "設定",
"configApp": "アプリ設定",
"confirm": "確認",
"confirmDelete": "削除を確認",
"create": "作成",
"createApp": "アプリ作成",
"createSuccess": "作成に成功しました",
"defaultVersion": "デフォルト",
"delete": "削除",
"deleteWarning": "この操作は元に戻せません",
"describeDescription": "アプリケーションを説明するために使用され、アプリリストに表示されます",
"description": "説明",
"downloadLink": "ダウンロードリンク",
"edit": "編集",
"editApp": "アプリ編集",
"encryption": "暗号化方式",
"encryptionDescription": "クライアント通信の暗号化方式を選択してください。選択された場合、クライアントはこの方式を使用してサーバーと通信します",
"nameDescription": "アプリケーション名、アプリリストに表示されます",
"platform": "プラットフォーム",
"selectApp": "アプリを選択",
"selectAppDescription": "設定するアプリを選択してください。すべての設定は選択したアプリに適用されます",
"startupPicture": "スタートアップ画像",
"startupPictureDescription": "スタートアップ画像、ネットワークおよびローカル画像をサポートします。ネットワーク画像の場合は、完全な画像URLを入力してください",
"startupPicturePreview": "スタートアップ画像プレビュー",
"startupPictureSkip": "スタートアップ画像スキップ時間",
"startupPictureSkipDescription": "スタートアップ画像の表示時間(秒)、表示しない場合は0を入力",
"subscriptionProtocol": "サブスクリプションプロトコル",
"updateSuccess": "更新に成功しました",
"version": "バージョン"
},
"cancel": "キャンセル",
"config": {
"singleSubscriptionMode": "シングルサブスクリプションモード",
"subscriptionDomain": "サブスクリプションドメイン",
"subscriptionDomainDescription": "サブスクリプションに使用します。サイトドメインを使用する場合は空白のままにしてください",
"subscriptionDomainPlaceholder": "サブスクリプションドメインを入力してください。1行に1つずつ",
"subscriptionPath": "サブスクリプションパス",
"subscriptionPathDescription": "サブスクリプションに使用します。最適なパフォーマンスのために、変更後は必ずシステムを再起動してください",
"subscriptionPathPlaceholder": "入力してください",
"updateSuccess": "更新が成功しました",
"wildcardResolution": "ワイルドカード解決",
"wildcardResolutionDescription": "サブスクリプションに使用します"
},
"confirm": "確認",
"confirmDelete": "削除してもよろしいですか?",
"copy": "コピー",
@@ -94,6 +41,9 @@
"name": "名称",
"noLimit": "無制限",
"noReset": "リセットなし",
"node": "ノード",
"nodeGroup": "ノードグループ",
"nodes": "ノード",
"pricing": "価格設定",
"purchaseWithDiscount": "控除を許可",
"purchaseWithDiscountDescription": "購読解除機能を有効または無効にします。有効化後、システムは設定されたルールと割合に従って控除処理を行い、残りの金額を残高に返金します。",
@@ -106,9 +56,6 @@
"selectResetCycle": "リセットサイクルを選択してください",
"selectSubscribeGroup": "サブスクリプショングループを選択してください",
"selectUnitTime": "単位時間を選択してください",
"server": "サーバー",
"serverGroup": "サーバーグループ",
"servers": "サーバー",
"speedLimit": "速度制限",
"traffic": "トラフィック",
"unitPrice": "単価",
@@ -150,8 +97,6 @@
"subscribeGroup": "グループを購読する",
"tabs": {
"subscribe": "購読",
"subscribeApp": "アプリ設定",
"subscribeConfig": "サブスクリプション設定",
"subscribeGroup": "購読グループ"
},
"traffic": "トラフィック",
-183
View File
@@ -1,183 +0,0 @@
{
"config": {
"addTimeSlot": "時間枠を追加",
"communicationKey": "通信キー",
"communicationKeyDescription": "データの安全性を確保するためのノード通信キー",
"delete": "削除",
"dynamicMultiplier": "動的乗数",
"dynamicMultiplierDescription": "動的乗数は、異なるノードが異なる時間帯に異なる乗数でプッシュされたデータを処理することを指します。",
"endTime": "終了時間",
"inputPlaceholder": "入力してください",
"multiplier": "乗数",
"nodePullInterval": "ノードプル間隔",
"nodePullIntervalDescription": "ノードがパネルからデータを取得する頻度(秒単位)",
"nodePushInterval": "ノードプッシュ間隔",
"nodePushIntervalDescription": "ノードがデータをパネルにプッシュする頻度",
"reset": "リセット",
"save": "保存",
"saveSuccess": "保存に成功しました",
"startTime": "開始時間",
"timeSlot": "時間枠"
},
"group": {
"actions": "操作",
"cancel": "キャンセル",
"confirm": "確認",
"confirmDelete": "削除してもよろしいですか?",
"create": "作成",
"createNodeGroup": "ノードグループを作成",
"createdSuccessfully": "作成に成功しました",
"delete": "削除",
"deleteWarning": "削除後、データは復元できませんので、慎重に操作してください。",
"deletedSuccessfully": "削除に成功しました",
"description": "説明",
"edit": "編集",
"editNodeGroup": "ノードグループを編集",
"name": "名前",
"title": "ノードグループ一覧",
"updatedAt": "更新日時"
},
"groupForm": {
"cancel": "キャンセル",
"confirm": "確認",
"description": "説明",
"name": "名前"
},
"node": {
"abnormal": "異常",
"actions": "操作",
"address": "住所",
"all": "すべて",
"basicInfo": "基本情報",
"cancel": "キャンセル",
"confirm": "確認",
"confirmDelete": "削除してもよろしいですか?",
"copy": "コピー",
"copySuccess": "コピーしました",
"create": "作成",
"createNode": "ノードを作成",
"createSuccess": "作成成功",
"delete": "削除",
"deleteSuccess": "削除成功",
"deleteWarning": "削除後、データは復元できません。慎重に操作してください。",
"detail": "詳細",
"disabled": "無効",
"disk": "ディスク",
"edit": "編集",
"editNode": "ノードを編集",
"enable": "有効化",
"enabled": "有効",
"expireTime": "有効期限",
"hide": "非表示",
"id": "ID",
"ipAddresses": "IPアドレス",
"lastUpdated": "最終更新",
"location": "場所",
"memory": "メモリ",
"name": "名前",
"noData": "--",
"node": "ノード",
"nodeDetail": "ノードの詳細",
"nodeGroup": "ノードグループ",
"nodeStatus": "ノードの状態",
"normal": "正常",
"onlineCount": "オンライン人数",
"onlineUsers": "オンラインユーザー",
"protocol": "プロトコル",
"rate": "レート",
"relay": "リレー",
"serverAddr": "サーバーアドレス",
"speedLimit": "速度制限",
"status": "ステータス",
"subscribeId": "サブスクライブID",
"subscribeName": "サブスクライブ名",
"subscription": "サブスクリプション",
"tags": "タグ",
"trafficRatio": "トラフィックレート",
"trafficUsage": "トラフィック使用量",
"type": "タイプ",
"updateSuccess": "更新成功",
"updatedAt": "更新時間",
"user": "ユーザー",
"userDetail": "ユーザーの詳細",
"userId": "ユーザーID"
},
"nodeForm": {
"allowInsecure": "不正な接続を許可",
"cancel": "キャンセル",
"city": "市",
"confirm": "確認",
"congestionController": "混雑制御",
"country": "国",
"disableSni": "SNIを無効にする",
"edit": "編集",
"editSecurity": "セキュリティ設定の編集",
"enableTLS": "TLSを有効にする",
"encryptionMethod": "暗号化方式",
"fingerprint": "フィンガープリント",
"flow": "フロー制御アルゴリズム",
"groupId": "ノードグループ",
"hopInterval": "ホップ間隔",
"hopPorts": "ホップポート",
"hopPortsPlaceholder": "複数のポートをカンマで区切って入力",
"name": "名前",
"obfsPassword": "難読化パスワード",
"obfsPasswordPlaceholder": "難読化しない場合は空白のままにしてください",
"path": "パス",
"pleaseSelect": "選択してください",
"port": "サーバーポート",
"protocol": "プロトコル",
"reduceRtt": "RTTを削減",
"relayHost": "リレーホスト",
"relayMode": "リレーモード",
"relayPort": "リレーポート",
"relayPrefix": "リレープレフィックス",
"remarks": "備考",
"security": "セキュリティ",
"securityConfig": "セキュリティ設定",
"selectEncryptionMethod": "暗号化方式を選択",
"selectNodeGroup": "ノードグループを選択",
"selectProtocol": "プロトコルを選択",
"selectRelayMode": "リレーモードを選択",
"serverAddr": "サーバーアドレス",
"serverKey": "サーバーキー",
"serverName": "サービス名",
"speedLimit": "速度制限",
"speedLimitPlaceholder": "無制限",
"tags": "タグ",
"tagsPlaceholder": "複数のタグを入力するにはEnterまたはカンマ(,)を使用",
"trafficRatio": "トラフィック比率",
"transport": "トランスポートプロトコル設定",
"transportConfig": "トランスポートプロトコル設定",
"transportHost": "トランスポートサーバーアドレス",
"transportPath": "トランスポートパス",
"transportServerName": "トランスポートサーバー名",
"udpRelayMode": "UDPリレーモード"
},
"relayModeOptions": {
"all": "すべて",
"none": "なし",
"random": "ランダム"
},
"securityConfig": {
"fingerprint": "フィンガープリント",
"privateKey": "秘密鍵",
"privateKeyPlaceholder": "自動生成する場合は空白のままにしてください",
"publicKey": "公開鍵",
"publicKeyPlaceholder": "自動生成する場合は空白のままにしてください",
"serverAddress": "サーバーアドレス",
"serverAddressPlaceholder": "REALITYターゲットアドレス、デフォルトはSNIを使用",
"serverName": "サーバー名 (SNI)",
"serverNamePlaceholder": "REALITY必須、バックエンドと一致",
"serverPort": "サーバーポート",
"serverPortPlaceholder": "REALITYターゲットポート、デフォルトは443",
"shortId": "ショートID",
"shortIdPlaceholder": "自動生成する場合は空白のままにしてください",
"sni": "サーバー名表示 (SNI)"
},
"tabs": {
"node": "ノード",
"nodeConfig": "ノード構成",
"nodeGroup": "ノードグループ"
}
}
+101
View File
@@ -0,0 +1,101 @@
{
"address": "アドレス",
"address_placeholder": "サーバーアドレス",
"cancel": "キャンセル",
"city": "都市",
"config": {
"actions": {
"cancel": "キャンセル",
"save": "保存"
},
"communicationKey": "通信キー",
"communicationKeyDescription": "ノード認証に使用されます。",
"description": "ノードの通信キー、プル/プッシュ間隔、動的倍率を管理します。",
"dynamicMultiplier": "動的倍率",
"dynamicMultiplierDescription": "トラフィック計算を調整するための時間スロットと倍率を定義します。",
"endTime": "終了時間",
"inputPlaceholder": "入力してください",
"multiplier": "倍率",
"nodePullInterval": "ノードプル間隔",
"nodePullIntervalDescription": "ノードが設定をプルする頻度(秒)。",
"nodePushInterval": "ノードプッシュ間隔",
"nodePushIntervalDescription": "ノードが統計をプッシュする頻度(秒)。",
"reset": "リセット",
"save": "保存",
"saveSuccess": "保存に成功しました",
"startTime": "開始時間",
"timeSlot": "時間スロット",
"title": "ノード設定"
},
"confirm": "確認",
"confirmDeleteDesc": "この操作は元に戻せません。",
"confirmDeleteTitle": "このサーバーを削除しますか?",
"congestion_controller": "混雑制御",
"copied": "コピーしました",
"copy": "コピー",
"country": "国",
"cpu": "CPU",
"create": "作成",
"created": "作成に成功しました",
"delete": "削除",
"deleted": "削除に成功しました",
"disable_sni": "SNIを無効にする",
"disk": "ディスク",
"drawerCreateTitle": "サーバーを作成",
"drawerEditTitle": "サーバーを編集",
"edit": "編集",
"enabled": "有効",
"encryption_method": "暗号化方式",
"expireTime": "有効期限",
"expired": "期限切れ",
"flow": "フロー",
"hop_interval": "ホップ間隔",
"hop_ports": "ホップポート",
"hop_ports_placeholder": "例: 1-65535",
"host": "ホスト",
"id": "ID",
"ipAddresses": "IPアドレス",
"memory": "メモリ",
"name": "名前",
"noData": "データなし",
"notAvailable": "利用不可",
"obfs_password": "難読化パスワード",
"obfs_password_placeholder": "難読化パスワードを入力してください",
"offline": "オフライン",
"online": "オンライン",
"onlineUsers": "オンラインユーザー",
"pageTitle": "サーバー",
"path": "パス",
"please_select": "選択してください",
"port": "ポート",
"protocols": "プロトコル",
"reduce_rtt": "RTTを減少させる",
"security_allow_insecure": "不安全を許可",
"security_fingerprint": "フィンガープリント",
"security_private_key": "リアリティプライベートキー",
"security_private_key_placeholder": "プライベートキーを入力してください",
"security_public_key": "リアリティパブリックキー",
"security_public_key_placeholder": "パブリックキーを入力してください",
"security_server_address": "リアリティサーバーアドレス",
"security_server_address_placeholder": "例: 1.2.3.4 または ドメイン",
"security_server_port": "リアリティサーバーポート",
"security_short_id": "リアリティショートID",
"security_short_id_placeholder": "16文字以内の16進数文字列",
"security_sni": "SNI",
"security_title": "セキュリティ",
"select_encryption_method": "暗号化方式を選択",
"server_key": "サーバーキー",
"service_name": "サービス名",
"status": "ステータス",
"subscribeId": "サブスクリプションID",
"subscription": "サブスクリプション",
"traffic": "トラフィック",
"traffic_ratio": "倍率",
"transport_title": "トランスポート",
"udp_relay_mode": "UDPリレーモード",
"unitSecondsShort": "秒",
"unlimited": "無制限",
"updated": "更新に成功しました",
"user": "ユーザー",
"validation_failed": "検証に失敗しました。フォームを確認してください。"
}